@aquera/nile-elements 0.0.74 → 0.0.75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/index.iife.js +157 -206
- package/dist/nile-calendar/nile-calendar.css.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.css.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.css.esm.js +8 -0
- package/dist/nile-card/nile-card.css.cjs.js +1 -1
- package/dist/nile-card/nile-card.css.cjs.js.map +1 -1
- package/dist/nile-card/nile-card.css.esm.js +4 -4
- package/dist/nile-checkbox/nile-checkbox.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.esm.js +30 -47
- package/dist/nile-checkbox/nile-checkbox.esm.js +56 -54
- package/dist/nile-tag/nile-tag.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.css.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.css.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.css.esm.js +50 -91
- package/dist/nile-tag/nile-tag.esm.js +13 -14
- package/dist/src/nile-calendar/nile-calendar.css.js +8 -0
- package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
- package/dist/src/nile-card/nile-card.css.js +2 -2
- package/dist/src/nile-card/nile-card.css.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.css.js +30 -47
- package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.d.ts +2 -4
- package/dist/src/nile-checkbox/nile-checkbox.js +63 -67
- package/dist/src/nile-checkbox/nile-checkbox.js.map +1 -1
- package/dist/src/nile-tag/nile-tag.css.js +48 -89
- package/dist/src/nile-tag/nile-tag.css.js.map +1 -1
- package/dist/src/nile-tag/nile-tag.d.ts +2 -1
- package/dist/src/nile-tag/nile-tag.js +30 -13
- package/dist/src/nile-tag/nile-tag.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-calendar/nile-calendar.css.ts +8 -0
- package/src/nile-card/nile-card.css.ts +2 -2
- package/src/nile-checkbox/nile-checkbox.css.ts +34 -51
- package/src/nile-checkbox/nile-checkbox.ts +111 -108
- package/src/nile-tag/nile-tag.css.ts +48 -89
- package/src/nile-tag/nile-tag.ts +34 -15
package/package.json
CHANGED
@@ -67,6 +67,14 @@ export const styles = css`
|
|
67
67
|
align-items: center;
|
68
68
|
gap: 4px 7px;
|
69
69
|
}
|
70
|
+
|
71
|
+
@media not all and (min-resolution: .001dpcm) {
|
72
|
+
@supports (-webkit-appearance:none)
|
73
|
+
{ .day-names, .days {
|
74
|
+
column-gap: 6px;
|
75
|
+
}
|
76
|
+
}
|
77
|
+
}
|
70
78
|
|
71
79
|
.days {
|
72
80
|
height: auto;
|
@@ -38,7 +38,7 @@ export const styles = css`
|
|
38
38
|
flex-direction: column;
|
39
39
|
justify-items: strecth;
|
40
40
|
background-color: var(--nile-colors-white-base);
|
41
|
-
|
41
|
+
outline: solid var(--border-width) var(--border-color);
|
42
42
|
border-radius: var(--border-radius);
|
43
43
|
min-width: 273px;
|
44
44
|
max-width: 350px;
|
@@ -81,7 +81,7 @@ export const styles = css`
|
|
81
81
|
.card:hover {
|
82
82
|
box-shadow: 0px 4px 8px -2px rgba(16, 24, 40, 0.1),
|
83
83
|
0px 2px 4px -2px rgba(16, 24, 40, 0.06);
|
84
|
-
|
84
|
+
outline: solid 1px var(--border-color);
|
85
85
|
}
|
86
86
|
`;
|
87
87
|
|
@@ -4,9 +4,9 @@
|
|
4
4
|
* This source code is licensed under the BSD-3-Clause license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
-
|
7
|
+
|
8
8
|
import { css } from 'lit-element';
|
9
|
-
|
9
|
+
|
10
10
|
/**
|
11
11
|
* Checkbox CSS
|
12
12
|
*/
|
@@ -14,25 +14,26 @@ export const styles = css`
|
|
14
14
|
:host {
|
15
15
|
display: inline-block;
|
16
16
|
}
|
17
|
-
|
17
|
+
|
18
18
|
:host(.full-width) {
|
19
19
|
width: 100%;
|
20
20
|
}
|
21
|
-
|
21
|
+
|
22
22
|
.checkbox {
|
23
23
|
position: relative;
|
24
24
|
display: inline-flex;
|
25
|
-
align-items:
|
25
|
+
align-items: top;
|
26
26
|
font-weight: 400;
|
27
27
|
color: var(--nile-colors-dark-900);
|
28
28
|
vertical-align: middle;
|
29
29
|
cursor: pointer;
|
30
30
|
}
|
31
|
-
|
32
|
-
.checkbox--
|
33
|
-
|
31
|
+
|
32
|
+
.checkbox--medium {
|
33
|
+
--toggle-size: var(--nile-type-scale-3);
|
34
|
+
font-size: var(--nile-type-scale-3);
|
34
35
|
}
|
35
|
-
|
36
|
+
|
36
37
|
.checkbox__control {
|
37
38
|
flex: 0 0 auto;
|
38
39
|
position: relative;
|
@@ -43,13 +44,13 @@ export const styles = css`
|
|
43
44
|
height: var(--nile-type-scale-3);
|
44
45
|
border: solid 1px var(--nile-checkbox-color-border-standard);
|
45
46
|
background-color: var(--nile-checkbox-color-background-standard);
|
46
|
-
border-radius:
|
47
|
+
border-radius: 4px;
|
47
48
|
transition: var(--nile-transition-duration-default border-color),
|
48
49
|
var(--nile-transition-duration-default) background-color,
|
49
50
|
var(--nile-transition-duration-default) color,
|
50
51
|
var(--nile-transition-duration-default box-shadow);
|
51
52
|
}
|
52
|
-
|
53
|
+
|
53
54
|
.checkbox__input {
|
54
55
|
position: absolute;
|
55
56
|
opacity: 0;
|
@@ -57,11 +58,11 @@ export const styles = css`
|
|
57
58
|
margin: 0;
|
58
59
|
pointer-events: none;
|
59
60
|
}
|
60
|
-
|
61
|
+
|
61
62
|
/* svg {
|
62
63
|
display:none !important;
|
63
64
|
} */
|
64
|
-
|
65
|
+
|
65
66
|
/* Hover */
|
66
67
|
.checkbox:not(.checkbox--checked):not(.checkbox--disabled)
|
67
68
|
.checkbox__control:hover {
|
@@ -69,7 +70,7 @@ export const styles = css`
|
|
69
70
|
border: 1px solid var(--nile-checkbox-color-border-hover);
|
70
71
|
border-radius: 4px;
|
71
72
|
}
|
72
|
-
|
73
|
+
|
73
74
|
/* Focus */
|
74
75
|
.checkbox:not(.checkbox--checked):not(.checkbox--disabled)
|
75
76
|
.checkbox__input:focus-visible
|
@@ -77,14 +78,14 @@ export const styles = css`
|
|
77
78
|
outline: solid 3px hsl(198.6 88.7% 48.4% / 40%);
|
78
79
|
outline-offset: 1px;
|
79
80
|
}
|
80
|
-
|
81
|
+
|
81
82
|
/* Checked/indeterminate */
|
82
83
|
.checkbox--checked .checkbox__control,
|
83
84
|
.checkbox--indeterminate .checkbox__control {
|
84
85
|
border-color: var(--nile-checkbox-color-border-checked-standard);
|
85
86
|
background-color: var(--nile-checkbox-color-background-checked-standard);
|
86
87
|
}
|
87
|
-
|
88
|
+
|
88
89
|
/* Checked/indeterminate + hover */
|
89
90
|
.checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover,
|
90
91
|
.checkbox.checkbox--indeterminate:not(.checkbox--disabled)
|
@@ -92,7 +93,7 @@ export const styles = css`
|
|
92
93
|
background: var(--nile-checkbox-color-background-checked-hover);
|
93
94
|
border: 1px solid var(--nile-checkbox-color-border-checked-hover);
|
94
95
|
}
|
95
|
-
|
96
|
+
|
96
97
|
/* Checked/indeterminate + focus */
|
97
98
|
.checkbox.checkbox--checked:not(.checkbox--disabled)
|
98
99
|
.checkbox__input:focus-visible
|
@@ -103,64 +104,46 @@ export const styles = css`
|
|
103
104
|
outline: solid 3px var(--nile-checkbox-color-outline-standard);
|
104
105
|
outline-offset: 1px;
|
105
106
|
}
|
106
|
-
|
107
|
+
|
107
108
|
/* Disabled */
|
108
109
|
.checkbox--disabled {
|
109
110
|
opacity: 0.3;
|
110
111
|
cursor: not-allowed;
|
111
112
|
}
|
112
|
-
|
113
|
+
|
114
|
+
|
113
115
|
.checkbox__label {
|
114
|
-
display:
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
margin-left: 8px;
|
116
|
+
display: inline-block;
|
117
|
+
line-height: 14px;
|
118
|
+
font-size: 14px;
|
119
|
+
margin-inline-start: 0.5em;
|
119
120
|
user-select: none;
|
121
|
+
margin-top: 2px;
|
120
122
|
color: var(--nile-colors-dark-900);
|
123
|
+
font-family: Colfax-regular;
|
121
124
|
font-style: normal;
|
122
|
-
letter-spacing: 0.2px;
|
123
|
-
box-sizing: border-box;
|
124
|
-
}
|
125
|
-
|
126
|
-
.checkbox__icon__container{
|
127
|
-
display:flex;
|
128
|
-
align-items:center;
|
129
|
-
}
|
130
|
-
|
131
|
-
.checkbox__label__text {
|
132
|
-
display: block;
|
133
|
-
font-size: 14px;
|
134
|
-
font-weight: 500;
|
135
|
-
color: #344054;
|
136
|
-
}
|
137
|
-
|
138
|
-
.checkbox__sublabel__text {
|
139
|
-
display: block;
|
140
|
-
font-size: 14px;
|
141
125
|
font-weight: 400;
|
142
|
-
|
143
|
-
color: #475467;
|
126
|
+
letter-spacing: 0.2px;
|
144
127
|
}
|
145
|
-
|
128
|
+
|
146
129
|
:host([required]) .checkbox__label::after {
|
147
130
|
content: '*';
|
148
131
|
margin-inline-start: -2px;
|
149
132
|
}
|
150
|
-
|
133
|
+
|
151
134
|
.checkbox__checked-icon {
|
152
135
|
--nile-svg-stroke: white;
|
153
136
|
}
|
154
|
-
|
137
|
+
|
155
138
|
.checkbox__indeterminate-icon {
|
156
139
|
--nile-svg-stroke: white;
|
157
140
|
}
|
158
|
-
|
141
|
+
|
159
142
|
.checkbox__helptext-icon {
|
160
143
|
float: right;
|
161
144
|
cursor: pointer;
|
162
145
|
margin-right: 12px;
|
163
146
|
}
|
164
147
|
`;
|
165
|
-
|
166
|
-
export default [styles];
|
148
|
+
|
149
|
+
export default [styles];
|
@@ -4,18 +4,17 @@
|
|
4
4
|
* This source code is licensed under the BSD-3-Clause license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
-
|
7
|
+
|
8
8
|
import {
|
9
9
|
LitElement,
|
10
10
|
html,
|
11
11
|
property,
|
12
|
-
nothing,
|
13
12
|
CSSResultArray,
|
14
13
|
TemplateResult,
|
15
14
|
} from 'lit-element';
|
16
15
|
import { customElement } from 'lit/decorators.js';
|
17
16
|
import { styles } from './nile-checkbox.css';
|
18
|
-
|
17
|
+
|
19
18
|
import { classMap } from 'lit/directives/class-map.js';
|
20
19
|
import { query, state } from 'lit/decorators.js';
|
21
20
|
import { defaultValue } from '../internal/default-value';
|
@@ -24,7 +23,7 @@ import { live } from 'lit/directives/live.js';
|
|
24
23
|
import { watch } from '../internal/watch';
|
25
24
|
import NileElement from '../internal/nile-element';
|
26
25
|
import type { CSSResultGroup } from 'lit';
|
27
|
-
|
26
|
+
|
28
27
|
/**
|
29
28
|
* @summary Checkboxes allow the user to toggle an option on or off.
|
30
29
|
*
|
@@ -36,6 +35,7 @@ import type { CSSResultGroup } from 'lit';
|
|
36
35
|
* @event nile-change - Emitted when the checked state changes.
|
37
36
|
* @event nile-focus - Emitted when the checkbox gains focus.
|
38
37
|
* @event nile-input - Emitted when the checkbox receives input.
|
38
|
+
* @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
|
39
39
|
*
|
40
40
|
* @csspart base - The component's base wrapper.
|
41
41
|
* @csspart control - The square container that wraps the checkbox's checked state.
|
@@ -45,7 +45,7 @@ import type { CSSResultGroup } from 'lit';
|
|
45
45
|
* @csspart indeterminate-icon - The indeterminate icon, an `<nile-icon>` element.
|
46
46
|
* @csspart label - The container that wraps the checkbox's label.
|
47
47
|
*/
|
48
|
-
|
48
|
+
|
49
49
|
/**
|
50
50
|
* Nile icon component.
|
51
51
|
*
|
@@ -57,65 +57,63 @@ export class NileCheckbox extends NileElement {
|
|
57
57
|
constructor() {
|
58
58
|
super();
|
59
59
|
}
|
60
|
-
|
60
|
+
|
61
61
|
static styles: CSSResultGroup = styles;
|
62
|
-
|
62
|
+
|
63
63
|
@query('input[type="checkbox"]') input: HTMLInputElement;
|
64
|
-
|
64
|
+
|
65
65
|
@state() private hasFocus = false;
|
66
|
-
|
66
|
+
|
67
67
|
@property() title = ''; // make reactive to pass through
|
68
|
-
|
68
|
+
|
69
69
|
/** The name of the checkbox, submitted as a name/value pair with form data. */
|
70
70
|
@property() name = '';
|
71
|
-
|
71
|
+
|
72
72
|
/** The current value of the checkbox, submitted as a name/value pair with form data. */
|
73
73
|
@property() value: boolean;
|
74
|
-
|
74
|
+
|
75
75
|
/** The checkbox's size. */
|
76
76
|
@property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';
|
77
|
-
|
77
|
+
|
78
78
|
/** Disables the checkbox. */
|
79
79
|
@property({ type: Boolean, reflect: true }) disabled = false;
|
80
|
-
|
80
|
+
|
81
81
|
/** Draws the checkbox in a checked state. */
|
82
82
|
@property({ type: Boolean, reflect: true }) checked = false;
|
83
|
-
|
83
|
+
|
84
84
|
/** Label, declared this property for backward compatibility of old component */
|
85
85
|
@property({ type: String, reflect: true }) label = '';
|
86
|
-
|
87
|
-
/** Sublabel, declared this property for backward compatibility of old component */
|
88
|
-
@property({ type: String, reflect: true, attribute: 'sub-label' }) subLabel = '';
|
89
|
-
|
86
|
+
|
90
87
|
/**
|
91
88
|
* Draws the checkbox in an indeterminate state. This is usually applied to checkboxes that represents a "select
|
92
89
|
* all/none" behavior when associated checkboxes have a mix of checked and unchecked states.
|
93
90
|
*/
|
94
91
|
@property({ type: Boolean, reflect: true }) indeterminate = false;
|
95
|
-
|
92
|
+
|
96
93
|
/** The default value of the form control. Primarily used for resetting the form control. */
|
97
94
|
@defaultValue('checked') defaultChecked = false;
|
98
|
-
|
95
|
+
|
99
96
|
@property({ attribute: 'help-text', reflect: true }) helpText = '';
|
100
|
-
|
97
|
+
|
101
98
|
@property({ attribute: 'error-message', reflect: true }) errorMessage = '';
|
102
|
-
|
99
|
+
|
103
100
|
@property({ type: Boolean }) showHelpText = false;
|
104
|
-
|
101
|
+
|
102
|
+
|
105
103
|
/**
|
106
104
|
* By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
|
107
105
|
* to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
|
108
106
|
* the same document or shadow root for this to work.
|
109
107
|
*/
|
110
108
|
@property({ reflect: true }) form = '';
|
111
|
-
|
109
|
+
|
112
110
|
/** Makes the checkbox a required field. */
|
113
111
|
@property({ type: Boolean, reflect: true }) required = false;
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
112
|
+
|
113
|
+
private toggleHelpText() {
|
114
|
+
this.showHelpText = !this.showHelpText;
|
115
|
+
}
|
116
|
+
|
119
117
|
private handleClick() {
|
120
118
|
this.checked = !this.checked;
|
121
119
|
this.indeterminate = false;
|
@@ -129,61 +127,60 @@ export class NileCheckbox extends NileElement {
|
|
129
127
|
})
|
130
128
|
);
|
131
129
|
}
|
132
|
-
|
130
|
+
|
133
131
|
private handleBlur() {
|
134
132
|
this.hasFocus = false;
|
135
133
|
this.emit('blur');
|
136
134
|
}
|
137
|
-
|
135
|
+
|
138
136
|
private handleInput() {
|
139
137
|
this.emit('input');
|
140
138
|
}
|
141
|
-
|
139
|
+
|
142
140
|
private handleFocus() {
|
143
141
|
this.hasFocus = true;
|
144
142
|
this.emit('focus');
|
145
143
|
}
|
146
|
-
|
144
|
+
|
147
145
|
@watch(['checked', 'indeterminate'], { waitUntilFirstUpdate: true })
|
148
146
|
handleStateChange() {
|
149
147
|
this.input.checked = this.checked; // force a sync update
|
150
148
|
this.input.indeterminate = this.indeterminate; // force a sync update
|
151
149
|
}
|
152
|
-
|
150
|
+
|
153
151
|
/** Simulates a click on the checkbox. */
|
154
152
|
click() {
|
155
153
|
this.input.click();
|
156
154
|
}
|
157
|
-
|
155
|
+
|
158
156
|
/** Sets focus on the checkbox. */
|
159
157
|
focus(options?: FocusOptions) {
|
160
158
|
this.input.focus(options);
|
161
159
|
}
|
162
|
-
|
160
|
+
|
163
161
|
/** Removes focus from the checkbox. */
|
164
162
|
blur() {
|
165
163
|
this.input.blur();
|
166
164
|
}
|
167
|
-
|
165
|
+
|
168
166
|
connectedCallback() {
|
169
167
|
super.connectedCallback();
|
170
168
|
this.updateHostClass();
|
171
169
|
this.emit('nile-init');
|
172
170
|
}
|
173
|
-
|
171
|
+
|
174
172
|
disconnectedCallback() {
|
175
173
|
super.disconnectedCallback();
|
176
174
|
this.emit('nile-destroy');
|
177
175
|
}
|
178
|
-
|
176
|
+
|
179
177
|
updated(changedProperties: Map<string | number | symbol, unknown>) {
|
180
178
|
super.updated(changedProperties);
|
181
179
|
if (changedProperties.has('helpText')) {
|
182
180
|
this.updateHostClass();
|
183
181
|
}
|
184
|
-
this.checkboxIconContainer.style.height=this.labelContainer.scrollHeight+'px';
|
185
182
|
}
|
186
|
-
|
183
|
+
|
187
184
|
private updateHostClass() {
|
188
185
|
if (this.helpText) {
|
189
186
|
this.classList.add('full-width');
|
@@ -191,11 +188,11 @@ export class NileCheckbox extends NileElement {
|
|
191
188
|
this.classList.remove('full-width');
|
192
189
|
}
|
193
190
|
}
|
194
|
-
|
191
|
+
|
195
192
|
render() {
|
196
193
|
const hasHelpText = this.helpText ? true : false;
|
197
194
|
const hasErrorMessage = this.errorMessage ? true : false;
|
198
|
-
|
195
|
+
|
199
196
|
return html`
|
200
197
|
<label
|
201
198
|
part="base"
|
@@ -204,68 +201,69 @@ export class NileCheckbox extends NileElement {
|
|
204
201
|
'checkbox--checked': this.checked,
|
205
202
|
'checkbox--disabled': this.disabled,
|
206
203
|
'checkbox--focused': this.hasFocus,
|
207
|
-
'checkbox--indeterminate': this.indeterminate
|
208
|
-
|
204
|
+
'checkbox--indeterminate': this.indeterminate,
|
205
|
+
'checkbox--medium': this.size === 'medium',
|
206
|
+
})}
|
209
207
|
>
|
210
|
-
<
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
${this.
|
208
|
+
<input
|
209
|
+
class="checkbox__input"
|
210
|
+
type="checkbox"
|
211
|
+
title=${
|
212
|
+
this
|
213
|
+
.title /* An empty title prevents browser validation tooltips from appearing on hover */
|
214
|
+
}
|
215
|
+
name=${this.name}
|
216
|
+
value=${ifDefined(this.value)}
|
217
|
+
.indeterminate=${live(this.indeterminate)}
|
218
|
+
.checked=${live(this.checked)}
|
219
|
+
.disabled=${this.disabled}
|
220
|
+
.required=${this.required}
|
221
|
+
aria-checked=${this.checked ? 'true' : 'false'}
|
222
|
+
@click=${this.handleClick}
|
223
|
+
@input=${this.handleInput}
|
224
|
+
@blur=${this.handleBlur}
|
225
|
+
@focus=${this.handleFocus}
|
226
|
+
/>
|
227
|
+
|
228
|
+
<span
|
229
|
+
part="control${this.checked ? ' control--checked' : ''}${this
|
230
|
+
.indeterminate
|
231
|
+
? ' control--indeterminate'
|
232
|
+
: ''}"
|
233
|
+
class="checkbox__control"
|
234
|
+
>
|
235
|
+
${this.checked
|
236
|
+
? html`
|
237
|
+
<nile-icon
|
238
|
+
part="checked-icon"
|
239
|
+
class="checkbox__checked-icon"
|
240
|
+
color="white"
|
241
|
+
library="system"
|
242
|
+
name="tick"
|
243
|
+
size="12"
|
244
|
+
></nile-icon>
|
245
|
+
`
|
246
|
+
: ''}
|
247
|
+
${!this.checked && this.indeterminate
|
248
|
+
? html`
|
249
|
+
<nile-icon
|
250
|
+
part="indeterminate-icon"
|
251
|
+
class="checkbox__indeterminate-icon"
|
252
|
+
library="system"
|
253
|
+
color="white"
|
254
|
+
name="minus"
|
255
|
+
size="12"
|
256
|
+
></nile-icon>
|
257
|
+
`
|
258
|
+
: ''}
|
259
|
+
</span>
|
260
|
+
|
261
|
+
<div part="label" class="checkbox__label">
|
262
|
+
${typeof this.label === 'boolean' ? '' : this.label}
|
265
263
|
<slot></slot>
|
266
264
|
</div>
|
267
265
|
</label>
|
268
|
-
|
266
|
+
|
269
267
|
${hasHelpText
|
270
268
|
? html`
|
271
269
|
<nile-tooltip content="${this.helpText}" placement="bottom">
|
@@ -275,18 +273,23 @@ export class NileCheckbox extends NileElement {
|
|
275
273
|
></nile-icon>
|
276
274
|
</nile-tooltip>
|
277
275
|
`
|
278
|
-
:
|
276
|
+
: ``}
|
277
|
+
|
279
278
|
${hasErrorMessage
|
280
|
-
? html
|
281
|
-
|
279
|
+
? html`
|
280
|
+
<nile-form-error-message
|
281
|
+
>${this.errorMessage}</nile-form-error-message
|
282
|
+
>
|
283
|
+
`
|
284
|
+
: ``}
|
282
285
|
`;
|
283
286
|
}
|
284
287
|
}
|
285
|
-
|
288
|
+
|
286
289
|
export default NileCheckbox;
|
287
|
-
|
290
|
+
|
288
291
|
declare global {
|
289
292
|
interface HTMLElementTagNameMap {
|
290
293
|
'nile-checkbox': NileCheckbox;
|
291
294
|
}
|
292
|
-
}
|
295
|
+
}
|