Skip to content

Commit 3ce0836

Browse files
committed
Updated hidden property
1 parent ed37156 commit 3ce0836

File tree

6 files changed

+53
-33
lines changed

6 files changed

+53
-33
lines changed

src/app/CanvasElement.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,12 @@ export class CanvasElement extends LitElement {
8787
/* Flex containers stretch */
8888
::slotted(wc-canvas-section[flex]) {
8989
flex: 999 0;
90-
overflow: auto;
90+
overflow: auto;
91+
}
92+
93+
/* Hidden navbars are hidden */
94+
::slotted(wc-canvas-navbar[hidden]) {
95+
display: none;
9196
}
9297
9398
/* Light theme setting colours and border widths */

src/app/CanvasNavbarElement.js

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,7 @@ export class CanvasNavbarElement extends CanvasSectionElement {
3333
}
3434

3535
static get styles() {
36-
return css`
37-
.hidden {
38-
display: none;
39-
}
40-
`;
36+
return css``;
4137
}
4238

4339
render() {

src/form/FormControlElement.js

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -58,31 +58,36 @@ export class FormControlElement extends LitElement {
5858
:host {
5959
display: inline-block;
6060
flex-shrink: 0;
61-
padding-left: var(--form-switch-padding-x);
62-
padding-right: var(--form-switch-padding-x);
61+
padding: var(--form-control-padding-y) var(--form-control-padding-x);
6362
}
64-
input {
65-
width: var(--form-switch-width);
66-
height: var(--form-switch-height);
67-
border-radius: var(--form-switch-border-radius);
68-
vertical-align: middle;
69-
appearance: none;
70-
transition: background-position .15s ease-in-out;
71-
background-image: var(--form-switch-background-image);
72-
background-color: var(--form-switch-background-color);
73-
background-repeat: no-repeat;
74-
background-position: left center;
75-
background-size: contain;
63+
label {
64+
cursor: pointer;
65+
user-select: none;
7666
}
77-
input:checked {
78-
background-position: right center;
67+
label.switch {
68+
& input {
69+
width: var(--form-switch-width);
70+
height: var(--form-switch-height);
71+
border-radius: var(--form-switch-border-radius);
72+
vertical-align: middle;
73+
appearance: none;
74+
transition: background-position var(--form-switch-transition) ease-in-out;
75+
background-image: var(--form-switch-background-image);
76+
background-color: var(--form-switch-background-color);
77+
background-repeat: no-repeat;
78+
background-position: left center;
79+
background-size: contain;
80+
}
81+
& input:checked {
82+
background-position: right center;
83+
}
7984
}
8085
`;
8186
}
8287

8388
render() {
8489
return html`
85-
<label class=${this.className || nothing}>
90+
<label class=${this.classes.join(' ') || nothing}>
8691
<input
8792
name=${this.name || nothing}
8893
value=${this.value || nothing}
@@ -106,11 +111,6 @@ export class FormControlElement extends LitElement {
106111
return classes;
107112
}
108113

109-
// Return class name for the classes
110-
get className() {
111-
return this.classes.join(' ');
112-
}
113-
114114
// Form control properties
115115
get form() { return this.internals ? this.internals.form : null; }
116116

src/form/FormSwitchElement.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ export class FormSwitchElement extends FormControlElement {
1414
return 'wc-form-switch';
1515
}
1616

17-
1817
constructor() {
1918
super();
2019

@@ -46,6 +45,14 @@ export class FormSwitchElement extends FormControlElement {
4645
`;
4746
}
4847

48+
// Return classes for the switch control
49+
get classes() {
50+
const classes = super.classes;
51+
classes.push('switch');
52+
return classes;
53+
}
54+
55+
// Change the selected state when the input is changed
4956
onInput(event) {
5057
if (!this.disabled) {
5158
this.selected = event.target.checked;

src/form/form.css

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
11
/* Theme variables go here */
22
:root {
3-
--form-switch-padding-x: 0.5em;
3+
/* General controls */
4+
--form-control-padding-x: 0.5em;
5+
--form-control-padding-y: 0.1em;
6+
7+
/* Switches */
48
--form-switch-width: 2.5em;
59
--form-switch-height: 1.5em;
6-
--form-switch-color: var(--primary-color);
10+
--form-switch-color: var(--primary-color); /* TODO: Does not work with the SVG yet */
711
--form-switch-background-color: var(--control-color);
812
--form-switch-border-radius: var(--form-switch-width);
9-
--form-switch-background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8' fill='currentColor'><circle r='3'/></svg>")
13+
--form-switch-background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8' fill='currentColor'><circle r='3'/></svg>");
14+
--form-switch-transition: 300ms;
1015
}

src/index.html

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@
3737
document.querySelector('wc-nav-group').removeAttribute('vertical');
3838
}
3939
});
40+
document.querySelector('wc-form-switch#end').addEventListener('change', (e) => {
41+
if (e.target.selected) {
42+
document.querySelector('wc-canvas-navbar#end').setAttribute('hidden',true);
43+
} else {
44+
document.querySelector('wc-canvas-navbar#end').removeAttribute('hidden');
45+
}
46+
});
4047
</script>
4148
</wc-canvas-navbar>
4249
<wc-canvas-section flex>
@@ -110,7 +117,7 @@ <h1>Code</h1>
110117
console.log('hello');
111118
</wc-code>
112119
</wc-canvas-section>
113-
<wc-canvas-navbar>END</wc-canvas-navbar>
120+
<wc-canvas-navbar id="end">END</wc-canvas-navbar>
114121
</wc-canvas>
115122
</body>
116123

0 commit comments

Comments
 (0)