@aquera/nile-elements 1.5.5 → 1.5.6
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 +4 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +465 -238
- package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js.map +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.css.esm.js +13 -2
- package/dist/nile-button/nile-button.cjs.js +1 -1
- package/dist/nile-button/nile-button.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.css.cjs.js +1 -1
- package/dist/nile-button/nile-button.css.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.css.esm.js +89 -33
- package/dist/nile-button/nile-button.esm.js +2 -2
- package/dist/nile-calendar/nile-calendar.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
- 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 +59 -2
- package/dist/nile-calendar/nile-calendar.esm.js +16 -10
- 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 +4 -5
- package/dist/nile-chip/nile-chip.css.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.css.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.css.esm.js +37 -23
- package/dist/nile-code-editor/nile-code-editor.cjs.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
- package/dist/nile-code-editor/nile-code-editor.css.cjs.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.css.cjs.js.map +1 -1
- package/dist/nile-code-editor/nile-code-editor.css.esm.js +7 -6
- package/dist/nile-code-editor/nile-code-editor.esm.js +1 -1
- package/dist/nile-date-picker/nile-date-picker.cjs.js +1 -1
- package/dist/nile-date-picker/nile-date-picker.cjs.js.map +1 -1
- package/dist/nile-date-picker/nile-date-picker.esm.js +4 -4
- package/dist/nile-dropdown/nile-dropdown.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.cjs.js.map +1 -1
- package/dist/nile-dropdown/nile-dropdown.esm.js +1 -1
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js +2 -2
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
- package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.cjs.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.cjs.js.map +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.css.cjs.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.css.cjs.js.map +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.css.esm.js +24 -2
- package/dist/nile-filter-chip/nile-filter-chip.esm.js +2 -2
- package/dist/nile-inline-edit/nile-inline-edit.cjs.js +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.cjs.js.map +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.css.cjs.js +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.css.cjs.js.map +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.css.esm.js +15 -6
- package/dist/nile-inline-edit/nile-inline-edit.esm.js +2 -2
- package/dist/nile-input/nile-input.css.cjs.js +1 -1
- package/dist/nile-input/nile-input.css.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.css.esm.js +4 -4
- package/dist/nile-link/nile-link.cjs.js +1 -1
- package/dist/nile-link/nile-link.cjs.js.map +1 -1
- package/dist/nile-link/nile-link.css.cjs.js +1 -1
- package/dist/nile-link/nile-link.css.cjs.js.map +1 -1
- package/dist/nile-link/nile-link.css.esm.js +3 -4
- package/dist/nile-link/nile-link.esm.js +2 -2
- package/dist/nile-qr-code/index.cjs.js +2 -0
- package/dist/nile-qr-code/index.cjs.js.map +1 -0
- package/dist/nile-qr-code/index.esm.js +1 -0
- package/dist/nile-qr-code/nile-qr-code-utils.cjs.js +2 -0
- package/dist/nile-qr-code/nile-qr-code-utils.cjs.js.map +1 -0
- package/dist/nile-qr-code/nile-qr-code-utils.esm.js +1 -0
- package/dist/nile-qr-code/nile-qr-code.cjs.js +2 -0
- package/dist/nile-qr-code/nile-qr-code.cjs.js.map +1 -0
- package/dist/nile-qr-code/nile-qr-code.css.cjs.js +2 -0
- package/dist/nile-qr-code/nile-qr-code.css.cjs.js.map +1 -0
- package/dist/nile-qr-code/nile-qr-code.css.esm.js +12 -0
- package/dist/nile-qr-code/nile-qr-code.esm.js +9 -0
- package/dist/nile-radio/nile-radio.css.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.css.cjs.js.map +1 -1
- package/dist/nile-radio/nile-radio.css.esm.js +1 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +1 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +1 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +1 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +1 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +25 -6
- package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +1 -1
- package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +1 -1
- package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +1 -1
- package/dist/nile-rich-text-editor/nile-rte-select.esm.js +4 -3
- package/dist/nile-select/nile-select.css.cjs.js +1 -1
- package/dist/nile-select/nile-select.css.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.css.esm.js +7 -4
- package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js.map +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.css.esm.js +5 -1
- package/dist/nile-textarea/nile-textarea.css.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.css.cjs.js.map +1 -1
- package/dist/nile-textarea/nile-textarea.css.esm.js +10 -5
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +5 -3
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.css.js +11 -0
- package/dist/src/nile-auto-complete/nile-auto-complete.css.js.map +1 -1
- package/dist/src/nile-button/nile-button.css.js +89 -33
- package/dist/src/nile-button/nile-button.css.js.map +1 -1
- package/dist/src/nile-button/nile-button.js +5 -5
- package/dist/src/nile-button/nile-button.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.css.js +57 -0
- package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.d.ts +1 -0
- package/dist/src/nile-calendar/nile-calendar.js +24 -6
- package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.css.js +4 -5
- package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
- package/dist/src/nile-chip/nile-chip.css.js +35 -21
- package/dist/src/nile-chip/nile-chip.css.js.map +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.css.js +7 -6
- package/dist/src/nile-code-editor/nile-code-editor.css.js.map +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.d.ts +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.js +7 -1
- package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
- package/dist/src/nile-date-picker/nile-date-picker.d.ts +3 -0
- package/dist/src/nile-date-picker/nile-date-picker.js +22 -2
- package/dist/src/nile-date-picker/nile-date-picker.js.map +1 -1
- package/dist/src/nile-dropdown/nile-dropdown.d.ts +1 -0
- package/dist/src/nile-dropdown/nile-dropdown.js +11 -0
- package/dist/src/nile-dropdown/nile-dropdown.js.map +1 -1
- package/dist/src/nile-file-upload/utils/file-validation.util.js +11 -6
- package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
- package/dist/src/nile-filter-chip/nile-filter-chip.css.js +22 -0
- package/dist/src/nile-filter-chip/nile-filter-chip.css.js.map +1 -1
- package/dist/src/nile-filter-chip/nile-filter-chip.d.ts +1 -0
- package/dist/src/nile-filter-chip/nile-filter-chip.js +6 -0
- package/dist/src/nile-filter-chip/nile-filter-chip.js.map +1 -1
- package/dist/src/nile-inline-edit/nile-inline-edit.css.js +15 -6
- package/dist/src/nile-inline-edit/nile-inline-edit.css.js.map +1 -1
- package/dist/src/nile-inline-edit/nile-inline-edit.d.ts +2 -0
- package/dist/src/nile-inline-edit/nile-inline-edit.js +7 -0
- package/dist/src/nile-inline-edit/nile-inline-edit.js.map +1 -1
- package/dist/src/nile-input/nile-input.css.js +4 -4
- package/dist/src/nile-input/nile-input.css.js.map +1 -1
- package/dist/src/nile-link/nile-link.css.js +1 -2
- package/dist/src/nile-link/nile-link.css.js.map +1 -1
- package/dist/src/nile-link/nile-link.js +1 -0
- package/dist/src/nile-link/nile-link.js.map +1 -1
- package/dist/src/nile-qr-code/index.d.ts +1 -0
- package/dist/src/nile-qr-code/index.js +2 -0
- package/dist/src/nile-qr-code/index.js.map +1 -0
- package/dist/src/nile-qr-code/nile-qr-code-utils.d.ts +15 -0
- package/dist/src/nile-qr-code/nile-qr-code-utils.js +678 -0
- package/dist/src/nile-qr-code/nile-qr-code-utils.js.map +1 -0
- package/dist/src/nile-qr-code/nile-qr-code.css.d.ts +12 -0
- package/dist/src/nile-qr-code/nile-qr-code.css.js +24 -0
- package/dist/src/nile-qr-code/nile-qr-code.css.js.map +1 -0
- package/dist/src/nile-qr-code/nile-qr-code.d.ts +127 -0
- package/dist/src/nile-qr-code/nile-qr-code.js +381 -0
- package/dist/src/nile-qr-code/nile-qr-code.js.map +1 -0
- package/dist/src/nile-qr-code/nile-qr-code.test.d.ts +1 -0
- package/dist/src/nile-qr-code/nile-qr-code.test.js +719 -0
- package/dist/src/nile-qr-code/nile-qr-code.test.js.map +1 -0
- package/dist/src/nile-radio/nile-radio.css.js +1 -1
- package/dist/src/nile-radio/nile-radio.css.js.map +1 -1
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +25 -6
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +1 -1
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +1 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +17 -6
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +1 -1
- package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-select.js +7 -2
- package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +1 -1
- package/dist/src/nile-select/nile-select.css.js +7 -4
- package/dist/src/nile-select/nile-select.css.js.map +1 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js +5 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js.map +1 -1
- package/dist/src/nile-textarea/nile-textarea.css.js +10 -5
- package/dist/src/nile-textarea/nile-textarea.css.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.css.js +5 -3
- package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/src/index.ts +2 -1
- package/src/nile-auto-complete/nile-auto-complete.css.ts +11 -0
- package/src/nile-button/nile-button.css.ts +89 -33
- package/src/nile-button/nile-button.ts +6 -5
- package/src/nile-calendar/nile-calendar.css.ts +57 -0
- package/src/nile-calendar/nile-calendar.ts +17 -6
- package/src/nile-checkbox/nile-checkbox.css.ts +4 -5
- package/src/nile-chip/nile-chip.css.ts +35 -21
- package/src/nile-code-editor/nile-code-editor.css.ts +7 -6
- package/src/nile-code-editor/nile-code-editor.ts +7 -1
- package/src/nile-date-picker/nile-date-picker.ts +22 -2
- package/src/nile-dropdown/nile-dropdown.ts +11 -0
- package/src/nile-file-upload/utils/file-validation.util.ts +10 -5
- package/src/nile-filter-chip/nile-filter-chip.css.ts +22 -0
- package/src/nile-filter-chip/nile-filter-chip.ts +2 -0
- package/src/nile-inline-edit/nile-inline-edit.css.ts +15 -6
- package/src/nile-inline-edit/nile-inline-edit.ts +4 -0
- package/src/nile-input/nile-input.css.ts +4 -4
- package/src/nile-link/nile-link.css.ts +1 -2
- package/src/nile-link/nile-link.ts +1 -0
- package/src/nile-qr-code/index.ts +1 -0
- package/src/nile-qr-code/nile-qr-code-utils.ts +733 -0
- package/src/nile-qr-code/nile-qr-code.css.ts +26 -0
- package/src/nile-qr-code/nile-qr-code.test.ts +879 -0
- package/src/nile-qr-code/nile-qr-code.ts +431 -0
- package/src/nile-radio/nile-radio.css.ts +1 -1
- package/src/nile-rich-text-editor/nile-rich-text-editor.css.ts +25 -6
- package/src/nile-rich-text-editor/nile-rich-text-editor.ts +14 -6
- package/src/nile-rich-text-editor/nile-rte-select.ts +5 -2
- package/src/nile-select/nile-select.css.ts +7 -4
- package/src/nile-slide-toggle/nile-slide-toggle.css.ts +5 -1
- package/src/nile-textarea/nile-textarea.css.ts +10 -5
- package/src/nile-virtual-select/nile-virtual-select.css.ts +5 -3
- package/vscode-html-custom-data.json +108 -6
- package/web-test-runner.config.mjs +1 -1
|
@@ -62,7 +62,6 @@ export const styles = css `
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
.button--disabled {
|
|
65
|
-
opacity: 0.5;
|
|
66
65
|
cursor: not-allowed;
|
|
67
66
|
}
|
|
68
67
|
|
|
@@ -118,18 +117,17 @@ export const styles = css `
|
|
|
118
117
|
}
|
|
119
118
|
|
|
120
119
|
.button--standard.button--primary.button--disabled {
|
|
121
|
-
background-color: var(--nile-colors-
|
|
122
|
-
border-color: var(--nile-colors-
|
|
123
|
-
color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));
|
|
120
|
+
background-color: var(--nile-colors-primary-500, var(--ng-colors-bg-disabled));
|
|
121
|
+
border-color: var(--nile-colors-primary-500, var(--ng-colors-border-disabled-subtle));
|
|
124
122
|
cursor: not-allowed;
|
|
123
|
+
color: var(--nile-colors-white-base, var(--ng-colors-border-neutral));
|
|
125
124
|
box-shadow: none;
|
|
126
125
|
}
|
|
127
126
|
|
|
128
127
|
.button--standard.button--primary.button--disabled:hover,
|
|
129
128
|
.button--standard.button--primary.button--disabled:active {
|
|
130
|
-
background-color: var(--nile-colors-
|
|
131
|
-
border-color: var(--nile-colors-
|
|
132
|
-
color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));
|
|
129
|
+
background-color: var(--nile-colors-primary-500, var(--ng-colors-bg-disabled));
|
|
130
|
+
border-color: var(--nile-colors-primary-500, var(--ng-colors-border-disabled-subtle));
|
|
133
131
|
cursor: not-allowed;
|
|
134
132
|
}
|
|
135
133
|
|
|
@@ -165,7 +163,7 @@ export const styles = css `
|
|
|
165
163
|
.button--standard.button--secondary.button--disabled {
|
|
166
164
|
background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));
|
|
167
165
|
border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));
|
|
168
|
-
color: var(--nile-colors-
|
|
166
|
+
color: var(--nile-colors-neutral-700, var(--ng-colors-fg-disabled));
|
|
169
167
|
cursor: not-allowed;
|
|
170
168
|
}
|
|
171
169
|
|
|
@@ -173,7 +171,7 @@ export const styles = css `
|
|
|
173
171
|
.button--standard.button--secondary.button--disabled:active {
|
|
174
172
|
background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));
|
|
175
173
|
border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));
|
|
176
|
-
color: var(--nile-colors-
|
|
174
|
+
color: var(--nile-colors-neutral-700, var(--ng-colors-fg-disabled));
|
|
177
175
|
cursor: not-allowed;
|
|
178
176
|
}
|
|
179
177
|
|
|
@@ -207,7 +205,7 @@ export const styles = css `
|
|
|
207
205
|
.button--standard.button--tertiary.button--disabled:hover,
|
|
208
206
|
.button--standard.button--tertiary.button--disabled:active {
|
|
209
207
|
background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));
|
|
210
|
-
border-color: var(--nile-colors-neutral-
|
|
208
|
+
border-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));
|
|
211
209
|
color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));
|
|
212
210
|
cursor: not-allowed;
|
|
213
211
|
box-shadow: none;
|
|
@@ -253,31 +251,69 @@ export const styles = css `
|
|
|
253
251
|
|
|
254
252
|
/* caution */
|
|
255
253
|
.button--standard.button--caution {
|
|
256
|
-
background-color: var(--nile-colors-red-500);
|
|
254
|
+
background-color: var(--nile-colors-red-500,var(--ng-colors-bg-error-solid));
|
|
257
255
|
border-color: var(--nile-colors-red-500);
|
|
258
|
-
color: var(--nile-colors-white-base);
|
|
256
|
+
color: var(--nile-colors-white-base, var(--ng-colors-text-white));
|
|
257
|
+
border-width: var(--nile-border-width-1, var(--ng-border-width-0));
|
|
258
|
+
border-style: var(--nile-border-style-solid, var(--ng-border-style-none));
|
|
259
259
|
}
|
|
260
260
|
|
|
261
261
|
.button--standard.button--caution:hover:not(.button--disabled) {
|
|
262
|
-
background-color: var(--nile-colors-red-700);
|
|
262
|
+
background-color: var(--nile-colors-red-700,var( --ng-colors-bg-error-solid-hover));
|
|
263
263
|
border-color: var(--nile-colors-red-700);
|
|
264
|
-
color: var(--nile-colors-white-base);
|
|
264
|
+
color: var(--nile-colors-white-base, var(--ng-colors-text-white));
|
|
265
265
|
}
|
|
266
266
|
|
|
267
|
+
|
|
268
|
+
|
|
267
269
|
.button--standard.button--caution:active:not(.button--disabled) {
|
|
268
270
|
background-color: var(--nile-colors-red-700);
|
|
269
|
-
border-color: var(--nile-colors-red-700);
|
|
271
|
+
border-color: var(--nile-colors-red-700,var(--ng-border-style-none));
|
|
270
272
|
color: var(--nile-colors-white-base);
|
|
271
273
|
}
|
|
272
274
|
|
|
273
|
-
.button--standard.button--caution.button--disabled
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
border-color: var(--nile-colors-neutral-500);
|
|
278
|
-
color: var(--nile-colors-neutral-400);
|
|
275
|
+
.button--standard.button--caution:active:not(.button--disabled) {
|
|
276
|
+
background-color: var(--nile-colors-red-700, var(--ng-colors-bg-error-solid));
|
|
277
|
+
border-color: var(--nile-colors-dark-900, var(--ng-primary-standard));
|
|
278
|
+
color: var(--nile-colors-white-base, var(--ng-colors-text-white));
|
|
279
279
|
}
|
|
280
280
|
|
|
281
|
+
.button--standard.button--caution {
|
|
282
|
+
position: relative;
|
|
283
|
+
overflow: hidden;
|
|
284
|
+
box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-none));
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
.button--standard.button--caution::before {
|
|
288
|
+
content: "";
|
|
289
|
+
position: absolute;
|
|
290
|
+
inset: 0;
|
|
291
|
+
border-radius: inherit;
|
|
292
|
+
pointer-events: none;
|
|
293
|
+
background: var(--ng-skeuemorphic-gradient-border);
|
|
294
|
+
mask: var(--ng-mask-rim);
|
|
295
|
+
mask-composite: var(--ng-mask-composite-exclude);
|
|
296
|
+
padding: var(--ng-spacing-xxs);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.button--standard.button--caution::after {
|
|
300
|
+
content: "";
|
|
301
|
+
position: absolute;
|
|
302
|
+
inset: 0;
|
|
303
|
+
border-radius: inherit;
|
|
304
|
+
pointer-events: none;
|
|
305
|
+
box-shadow: var(--ng-shadow-xs-skeuomorphic);
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
.button.button--disabled {
|
|
309
|
+
box-shadow: none !important;
|
|
310
|
+
border-width: var(--nile-border-width-1, var(--ng-border-width-1)) !important;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.button.button--disabled::after {
|
|
314
|
+
box-shadow: none !important;
|
|
315
|
+
}
|
|
316
|
+
|
|
281
317
|
/* destructive */
|
|
282
318
|
.button--standard.button--destructive {
|
|
283
319
|
position: relative;
|
|
@@ -320,8 +356,8 @@ export const styles = css `
|
|
|
320
356
|
}
|
|
321
357
|
|
|
322
358
|
.button--standard.button--destructive:active:not(.button--disabled) {
|
|
323
|
-
background-color: var(--nile-colors-red-
|
|
324
|
-
border-color: var(--nile-colors-
|
|
359
|
+
background-color: var(--nile-colors-red-700, var(--ng-colors-bg-error-solid));
|
|
360
|
+
border-color: var(--nile-colors-dark-900, var(--ng-primary-standard));
|
|
325
361
|
color: var(--nile-colors-white-base, var(--ng-colors-text-white));
|
|
326
362
|
}
|
|
327
363
|
.button--standard.button--destructive:focus-visible:not(.button--disabled) {
|
|
@@ -333,7 +369,7 @@ export const styles = css `
|
|
|
333
369
|
|
|
334
370
|
.button--standard.button--destructive.button--disabled {
|
|
335
371
|
background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled));
|
|
336
|
-
border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));
|
|
372
|
+
border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-border-disabled-subtle));
|
|
337
373
|
color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));
|
|
338
374
|
cursor: not-allowed;
|
|
339
375
|
box-shadow: none;
|
|
@@ -346,12 +382,12 @@ export const styles = css `
|
|
|
346
382
|
cursor: not-allowed;
|
|
347
383
|
}
|
|
348
384
|
|
|
349
|
-
|
|
350
|
-
background-color: var(--nile-colors-
|
|
351
|
-
|
|
352
|
-
color: var(--nile-colors-
|
|
385
|
+
.button--standard.button--destructive.button--disabled:hover {
|
|
386
|
+
background-color: var(--nile-colors-red-400,var(--ng-colors-bg-disabled));
|
|
387
|
+
color: var(--nile-colors-white-base,var(--ng-colors-fg-disabled));
|
|
388
|
+
border-color: var(--nile-colors-red-400,var(--ng-colors-border-disabled-subtle));
|
|
353
389
|
cursor: not-allowed;
|
|
354
|
-
}
|
|
390
|
+
}
|
|
355
391
|
|
|
356
392
|
/* secondary-Grey */
|
|
357
393
|
.button--standard.button--secondary-grey {
|
|
@@ -440,7 +476,7 @@ export const styles = css `
|
|
|
440
476
|
--nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon-hover)) !important;
|
|
441
477
|
}
|
|
442
478
|
.button--standard.button--primary.button--disabled ::slotted(nile-icon:not([color])) {
|
|
443
|
-
--nile-svg-fill: var(--nile-colors-
|
|
479
|
+
--nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;
|
|
444
480
|
}
|
|
445
481
|
|
|
446
482
|
/* Secondary Variant */
|
|
@@ -468,7 +504,7 @@ export const styles = css `
|
|
|
468
504
|
--nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-hover)) !important;
|
|
469
505
|
}
|
|
470
506
|
.button--standard.button--tertiary.button--disabled ::slotted(nile-icon:not([color])) {
|
|
471
|
-
--nile-svg-fill: var(--nile-colors-neutral-500, var(--ng-colors-fg-
|
|
507
|
+
--nile-svg-fill: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle)) !important;
|
|
472
508
|
}
|
|
473
509
|
|
|
474
510
|
/* Ghost Variant */
|
|
@@ -493,11 +529,23 @@ export const styles = css `
|
|
|
493
529
|
::slotted(nile-icon:not([color])),
|
|
494
530
|
.button--standard.button--caution:active:not(.button--disabled)
|
|
495
531
|
::slotted(nile-icon:not([color])) {
|
|
496
|
-
--nile-svg-fill: var(--nile-colors-white-base) !important;
|
|
532
|
+
--nile-svg-fill: var(--nile-colors-white-base,var(--ng-componentcolors-components-button-destructive-primary-icon-hover)) !important;
|
|
533
|
+
}
|
|
534
|
+
.button--standard.button--caution.button--disabled{
|
|
535
|
+
background-color: var(--nile-colors-red-400,var(--ng-colors-bg-disabled));
|
|
536
|
+
color: var(--nile-colors-white-base,var(--ng-colors-fg-disabled));
|
|
537
|
+
border-color: var(--nile-colors-red-400,var(--ng-colors-border-disabled-subtle));
|
|
538
|
+
border-width: var(--ng-border-width-1, 1px);
|
|
539
|
+
border-style: var(--ng-border-style-solid, solid);
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
.button--standard.button--caution ::slotted(nile-icon:not([color])) {
|
|
543
|
+
--nile-svg-fill: var(--nile-colors-white-base,var(--ng-componentcolors-components-button-destructive-primary-icon)) !important;
|
|
497
544
|
}
|
|
498
545
|
.button--standard.button--caution.button--disabled ::slotted(nile-icon:not([color])) {
|
|
499
|
-
--nile-svg-fill: var(--nile-colors-
|
|
546
|
+
--nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;
|
|
500
547
|
}
|
|
548
|
+
|
|
501
549
|
|
|
502
550
|
/* destructive */
|
|
503
551
|
.button--standard.button--destructive ::slotted(nile-icon:not([color])) {
|
|
@@ -513,6 +561,14 @@ export const styles = css `
|
|
|
513
561
|
--nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;
|
|
514
562
|
}
|
|
515
563
|
|
|
564
|
+
.button--standard.button--destructive.button--disabled{
|
|
565
|
+
background-color: var(--nile-colors-red-400,var(--ng-colors-bg-disabled));
|
|
566
|
+
color: var(--nile-colors-white-base,var(--ng-colors-fg-disabled));
|
|
567
|
+
border-color: var(--nile-colors-red-400,var(--ng-colors-border-disabled-subtle));
|
|
568
|
+
border-width: var(--ng-border-width-1, 1px);
|
|
569
|
+
border-style: var(--ng-border-style-solid, solid);
|
|
570
|
+
}
|
|
571
|
+
|
|
516
572
|
/*
|
|
517
573
|
* Outline buttons
|
|
518
574
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nile-button.css.js","sourceRoot":"","sources":["../../../src/nile-button/nile-button.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8wBxB,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * Button CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n position: relative;\n width: auto;\n cursor: pointer;\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n .button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-style: solid;\n border-width: var(--nile-border-size-1, var(--ng-border-width-1));\n font-style: normal;\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n text-align: center;\n letter-spacing: 0.2px;\n text-decoration: none;\n user-select: none;\n white-space: nowrap;\n vertical-align: middle;\n transition: var(--nile-transition-duration-default, var(--ng-transition-duration-default)) background-color,\n var(--nile-transition-duration-default, var(--ng-transition-duration-default)) color,\n var(--nile-transition-duration-default, var(--ng-transition-duration-default)) border,\n var(--nile-transition-duration-default, var(--ng-transition-duration-default)) box-shadow;\n cursor: inherit;\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-semibold));\n border-radius: var(--nile-radius-base-standard, var(--ng-radius-md));\n padding: var(--nile-spacing-10px, var(--ng-spacing-md-alt)) var(--nile-spacing-14px, var(--ng-spacing-lg));\n gap: var(--nile-spacing-5px, var(--ng-spacing-xs));\n line-height: var(--nile-type-scale-6, var(--ng-spacing-5));\n box-sizing: border-box;\n height: var(--nile-height-40px, var(--ng-height-40px));\n }\n\n .button::-moz-focus-inner {\n border: 0;\n }\n\n .button:focus {\n outline: none;\n }\n\n .button:focus-visible {\n outline: var(--nile-outline-5px, --ng-outline-5px) auto var(--ng-colors-bg-brand-solid, -webkit-focus-ring-color);\n outline-offset: var(--ng-outline-2px, --ng-outline-4px);\n }\n\n .button--disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n .button--disabled * {\n pointer-events: none;\n }\n\n /* Primary */\n .button--standard.button--primary {\n position: relative;\n overflow: hidden; \n background-color: var(--nile-colors-primary-600, var(--ng-colors-bg-brand-solid));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n border-color: var(--nile-colors-primary-600);\n border-width: var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n box-shadow: var(--nile-textarea-standard-disabled-box-shadow, var(--ng-shadow-none));\n}\n\n.button--standard.button--primary::before {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: var(--ng-skeuemorphic-gradient-border);\n mask: var(--ng-mask-rim);\n mask-composite: var(--ng-mask-composite-exclude); \n padding: var(--ng-spacing-xxs); \n}\n\n \n.button--standard.button--primary::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n box-shadow: var(--ng-shadow-xs-skeuomorphic)\n}\n\n\n .button--standard.button--primary:hover:not(.button--disabled) {\n background-color: var(--nile-colors-primary-700, var(--ng-colors-bg-brand-solid-hover));\n border-color: var(--nile-colors-primary-700, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n\n .button--standard.button--primary:active:not(.button--disabled) {\n background-color: var(--nile-colors-primary-700, var(--ng-colors-bg-brand-solid));\n border-color: var(--nile-colors-primary-900, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n\n .button--standard.button--primary.button--disabled {\n background-color: var(--nile-colors-neutral-700, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-700, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n .button--standard.button--primary.button--disabled:hover,\n .button--standard.button--primary.button--disabled:active {\n background-color: var(--nile-colors-neutral-700, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-700, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--primary:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-primary-600, var(--ng-colors-bg-brand-solid));\n border-color: var(--nile-colors-primary-600, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n box-shadow: var(--nile-box-shadow-none,var(--ng-focus-ring-shadow-xs-skeumorphic));\n }\n\n /* Secondary */\n .button--standard.button--secondary {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-border-none));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n box-shadow: var(--nile-box-shadow-none,var(--ng-shadow-xs-skeuomorphic));\n border-width:var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n }\n\n .button--standard.button--secondary:hover:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary-hover));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-hover));\n }\n\n .button--standard.button--secondary:active:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-700, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n }\n\n .button--standard.button--secondary.button--disabled {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary.button--disabled:hover,\n .button--standard.button--secondary.button--disabled:active {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n box-shadow: var(--nile-box-shadow-none,var(--ng-focus-ring-shadow-xs-skeumorphic));\n }\n\n /* Tertiary */\n .button--standard.button--tertiary {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--tertiary:hover:not(.button--disabled) {\n background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-primary-hover));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-hover));\n }\n\n .button--standard.button--tertiary:active:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-700, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--tertiary.button--disabled,\n .button--standard.button--tertiary.button--disabled:hover,\n .button--standard.button--tertiary.button--disabled:active {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n .button--standard.button--tertiary:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n box-shadow: var(--nile-box-shadow-none,var(--ng-focus-ring));\n }\n\n /* ghost */\n .button--standard.button--ghost {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-border-color-transparent, var(--ng-colors-bg-primary)) ;\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--ghost:hover:not(.button--disabled) {\n background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-primary-hover));\n border-color: var(--nile-border-color-transparent, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-hover));\n }\n\n .button--standard.button--ghost:active:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-border-color-transparent, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--ghost.button--disabled,\n .button--standard.button--ghost.button--disabled:hover,\n .button--standard.button--ghost.button--disabled:active {\n border-color: var(--nile-border-color-transparent,var(--ng-colors-bg-primary));\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n color: var(--nile-colors-neutral-500,var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n \n\n /* caution */\n .button--standard.button--caution {\n background-color: var(--nile-colors-red-500);\n border-color: var(--nile-colors-red-500);\n color: var(--nile-colors-white-base);\n }\n\n .button--standard.button--caution:hover:not(.button--disabled) {\n background-color: var(--nile-colors-red-700);\n border-color: var(--nile-colors-red-700);\n color: var(--nile-colors-white-base);\n }\n\n .button--standard.button--caution:active:not(.button--disabled) {\n background-color: var(--nile-colors-red-700);\n border-color: var(--nile-colors-red-700);\n color: var(--nile-colors-white-base);\n }\n\n .button--standard.button--caution.button--disabled,\n .button--standard.button--caution.button--disabled:hover,\n .button--standard.button--caution.button--disabled:active {\n background-color: var(--nile-colors-neutral-500);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-neutral-400);\n }\n\n /* destructive */\n .button--standard.button--destructive {\n position: relative;\n overflow: hidden; \n background-color: var(--nile-colors-red-500, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-red-500);\n border-width: var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-none));\n }\n\n\n .button--standard.button--destructive::before {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: var(--ng-skeuemorphic-gradient-border);\n mask: var(--ng-mask-rim);\n mask-composite: var(--ng-mask-composite-exclude); \n padding: var(--ng-spacing-xxs); \n}\n\n \n.button--standard.button--destructive::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n box-shadow: var(--ng-shadow-xs-skeuomorphic)\n}\n\n .button--standard.button--destructive:hover:not(.button--disabled) {\n background-color: var(--nile-colors-red-700, var(--ng-colors-bg-error-solid-hover));\n border-color: var(--nile-colors-red-700, var(--ng-primary-standard));\n box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-xs-skeuomorphic));\n }\n\n .button--standard.button--destructive:active:not(.button--disabled) {\n background-color: var(--nile-colors-red-500, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-red-500, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n .button--standard.button--destructive:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-red-500, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-red-500, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n box-shadow: var(--nile-box-shadow-none, var(--ng-focus-ring-error-shadow-xs-skeumorphic))\n }\n\n .button--standard.button--destructive.button--disabled {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n .button--standard.button--destructive.button--disabled:active {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-400, var(--ng-primary-standard));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--destructive.button--disabled:hover {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n /* secondary-Grey */\n .button--standard.button--secondary-grey {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-primary-900);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-grey:hover:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-100);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-grey:active:not(.button--disabled) {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-primary-900);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),\n 0px 0px 0px 4px rgba(152, 162, 179, 0.14);\n }\n\n .button--standard.button--secondary-grey.button--disabled {\n background-color: var(--nile-colors-neutral-400);\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary-grey.button--disabled:hover,\n .button--standard.button--secondary-grey.button--disabled:active {\n background-color: var(--nile-colors-neutral-400);\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n /* secondary-blue */\n .button--standard.button--secondary-blue {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-primary-500);\n color: var(--nile-colors-primary-700);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-blue:hover:not(.button--disabled) {\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-primary-500);\n color: var(--nile-colors-primary-700);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-blue:active:not(.button--disabled) {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-primary-500);\n color: var(--nile-colors-primary-700);\n box-shadow: 0px 1px 2px 0px rgba(0, 82, 145, 0.1),\n 0px 0px 0px 4px rgba(0, 94, 166, 0.15);\n }\n\n .button--standard.button--secondary-blue.button--disabled {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-400);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary-blue.button--disabled:hover,\n .button--standard.button--secondary-blue.button--disabled:active {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-400);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n /* Primary Variant - Nile Icon Fill */\n .button--standard.button--primary ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon)) !important;\n }\n .button--standard.button--primary:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--primary:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon-hover)) !important;\n }\n .button--standard.button--primary.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n /* Secondary Variant */\n .button--standard.button--secondary ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400)) !important;\n }\n .button--standard.button--secondary:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--secondary:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-hover)) !important;\n }\n .button--standard.button--secondary.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n /* Tertiary Variant */\n .button--standard.button--tertiary ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400)) !important;\n }\n .button--standard.button--tertiary:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--tertiary:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-hover)) !important;\n }\n .button--standard.button--tertiary.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-neutral-500, var(--ng-colors-fg-quaternary-400)) !important;\n }\n\n /* Ghost Variant */\n .button--standard.button--ghost ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900) !important;\n }\n .button--standard.button--ghost:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--ghost:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900) !important;\n }\n .button--standard.button--ghost ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-neutral-500) !important;\n }\n\n /* Caution Variant */\n .button--standard.button--caution ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base) !important;\n }\n .button--standard.button--caution:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--caution:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base) !important;\n }\n .button--standard.button--caution.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-neutral-400) !important;\n }\n\n /* destructive */\n .button--standard.button--destructive ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon)) !important;\n }\n .button--standard.button--destructive:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--caution:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon-hover)) !important;\n }\n .button--standard.button--destructive.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n /*\n * Outline buttons\n */\n\n .button--outline {\n background: none;\n border: solid 2px;\n }\n\n /* Default */\n .button--outline.button--secondary {\n border-color: var(--nile-colors-neutral-300);\n color: var(--nile-colors-neutral-700);\n }\n\n .button--outline.button--secondary:hover:not(.button--disabled),\n .button--outline.button--secondary.button--checked:not(.button--disabled) {\n border-color: var(--nile-colors-primary-600);\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--secondary:active:not(.button--disabled) {\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Primary */\n .button--outline.button--primary {\n border-color: var(--nile-colors-primary-600);\n color: var(--nile-colors-primary-600);\n }\n\n .button--outline.button--primary:hover:not(.button--disabled),\n .button--outline.button--primary.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--primary:active:not(.button--disabled) {\n border-color: var(--nile-colors-primary-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Success */\n .button--outline.button--success {\n border-color: var(--nile-colors-green-600);\n color: var(--nile-colors-green-600);\n }\n\n .button--outline.button--success:hover:not(.button--disabled),\n .button--outline.button--success.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--success:active:not(.button--disabled) {\n border-color: var(--nile-colors-green-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Neutral */\n .button--outline.button--neutral {\n border-color: var(--nile-colors-neutral-600);\n color: var(--nile-colors-neutral-600);\n }\n\n .button--outline.button--neutral:hover:not(.button--disabled),\n .button--outline.button--neutral.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--neutral:active:not(.button--disabled) {\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Warning */\n .button--outline.button--warning {\n border-color: var(--nile-colors-orange-600);\n color: var(--nile-colors-orange-600);\n }\n\n .button--outline.button--warning:hover:not(.button--disabled),\n .button--outline.button--warning.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--warning:active:not(.button--disabled) {\n border-color: var(--nile-colors-orange-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Danger */\n .button--outline.button--danger {\n border-color: var(--nile-colors-red-600);\n color: var(--nile-colors-red-600);\n }\n\n .button--outline.button--danger:hover:not(.button--disabled),\n .button--outline.button--danger.button--checked:not(.button--disabled) {\n background-color: var(--nile-colors-red-600);\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--danger:active:not(.button--disabled) {\n border-color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-red-700);\n color: var(--nile-colors-white-base);\n }\n\n /* destructive */\n .button--outline.button--destructive {\n border-color: var(--nile-colors-red-400, var(--ng-colors-effects-focus-ring-error));\n color: var(--nile-colors-red-700);\n box-shadow: 0px;\n }\n\n .button--outline.button--destructive:hover:not(.button--disabled),\n .button--outline.button--destructive.button--checked:not(.button--disabled) {\n border-color: var(--nile-colors-red-400);\n color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-red-100);\n }\n\n .button--outline.button--destructive:active:not(.button--disabled) {\n border-color: var(--nile-colors-red-400);\n color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-white-base);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),\n 0px 0px 0px 4px rgba(240, 68, 56, 0.24);\n }\n\n /* destructive - focus-visible */\n .button--outline.button--destructive:focus-visible:not(.button--disabled) {\n border-color: var(--nile-colors-red-400, var(--ng-colors-effects-focus-ring-error));\n color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-white-base);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),\n 0px 0px 0px 4px rgba(240, 68, 56, 0.24);\n }\n\n /* secondary-grey */\n .button--outline.button--secondary-grey {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-grey:hover:not(.button--disabled),\n .button--outline.button--secondary-grey.button--checked:not(\n .button--disabled\n ) {\n color: var(--nile-colors-primary-900);\n background-color: var(--nile-colors-neutral-100);\n }\n\n .button--outline.button--secondary-grey:active:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-grey:focus-visible:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n /* secondary-blue */\n .button--outline.button--secondary-blue {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-blue:hover:not(.button--disabled),\n .button--outline.button--secondary-blue.button--checked:not(\n .button--disabled\n ) {\n color: var(--nile-colors-primary-700);\n background-color: var(--nile-colors-blue-100);\n }\n\n .button--outline.button--secondary-blue:active:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-blue:focus-visible:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n @media (forced-colors: active) {\n .button.button--outline.button--checked:not(.button--disabled) {\n outline: solid 2px transparent;\n }\n }\n\n /*\n * Pill modifier\n */\n\n .button--pill.button--small {\n border-radius: var(--nile-radius-2xl);\n }\n\n .button--pill.button--medium {\n border-radius: var(--nile-radius-2xl);\n }\n\n /*\n * Circle modifier\n */\n\n .button--circle {\n padding-left: var(--nile-spacing-none);\n padding-right: var(--nile-spacing-none);\n }\n\n .button--circle.button--small {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n }\n\n .button--circle.button--medium {\n width: 38px;\n height: 38px;\n border-radius: 50%;\n }\n\n .button--circle .button__prefix,\n .button--circle .button__suffix,\n .button--circle .button__caret {\n display: none;\n }\n\n /* Caret modifier */\n\n .button--caret .button__suffix {\n display: none;\n }\n\n .button--caret .button__caret {\n height: auto;\n }\n\n /*\n * Loading modifier\n */\n\n .button--loading {\n position: relative;\n cursor: wait;\n }\n\n .button--loading .button__prefix,\n .button--loading .button__label,\n .button--loading .button__suffix,\n .button--loading .button__caret {\n visibility: hidden;\n }\n\n .button--loading nile-spinner {\n --indicator-color: currentColor;\n position: absolute;\n font-size: var(--nile-type-scale-3);\n height: 1em;\n width: 1em;\n top: calc(50% - 0.5em);\n left: calc(50% - 0.5em);\n }\n /*\n * Badges\n */\n\n .button ::slotted(nile-badge) {\n position: absolute;\n top: 0;\n right: 0;\n translate: 50% -50%;\n pointer-events: none;\n }\n\n /* outline with no border */\n .button--outline.button--hideborder {\n border: 0px;\n }\n`;\n"]}
|
|
1
|
+
{"version":3,"file":"nile-button.css.js","sourceRoot":"","sources":["../../../src/nile-button/nile-button.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAs0BxB,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * Button CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n position: relative;\n width: auto;\n cursor: pointer;\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n .button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-style: solid;\n border-width: var(--nile-border-size-1, var(--ng-border-width-1));\n font-style: normal;\n font-family: var(--nile-font-family-serif, var(--ng-font-family-body));\n text-align: center;\n letter-spacing: 0.2px;\n text-decoration: none;\n user-select: none;\n white-space: nowrap;\n vertical-align: middle;\n transition: var(--nile-transition-duration-default, var(--ng-transition-duration-default)) background-color,\n var(--nile-transition-duration-default, var(--ng-transition-duration-default)) color,\n var(--nile-transition-duration-default, var(--ng-transition-duration-default)) border,\n var(--nile-transition-duration-default, var(--ng-transition-duration-default)) box-shadow;\n cursor: inherit;\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-semibold));\n border-radius: var(--nile-radius-base-standard, var(--ng-radius-md));\n padding: var(--nile-spacing-10px, var(--ng-spacing-md-alt)) var(--nile-spacing-14px, var(--ng-spacing-lg));\n gap: var(--nile-spacing-5px, var(--ng-spacing-xs));\n line-height: var(--nile-type-scale-6, var(--ng-spacing-5));\n box-sizing: border-box;\n height: var(--nile-height-40px, var(--ng-height-40px));\n }\n\n .button::-moz-focus-inner {\n border: 0;\n }\n\n .button:focus {\n outline: none;\n }\n\n .button:focus-visible {\n outline: var(--nile-outline-5px, --ng-outline-5px) auto var(--ng-colors-bg-brand-solid, -webkit-focus-ring-color);\n outline-offset: var(--ng-outline-2px, --ng-outline-4px);\n }\n\n .button--disabled {\n cursor: not-allowed;\n }\n\n .button--disabled * {\n pointer-events: none;\n }\n\n /* Primary */\n .button--standard.button--primary {\n position: relative;\n overflow: hidden; \n background-color: var(--nile-colors-primary-600, var(--ng-colors-bg-brand-solid));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n border-color: var(--nile-colors-primary-600);\n border-width: var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n box-shadow: var(--nile-textarea-standard-disabled-box-shadow, var(--ng-shadow-none));\n}\n\n.button--standard.button--primary::before {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: var(--ng-skeuemorphic-gradient-border);\n mask: var(--ng-mask-rim);\n mask-composite: var(--ng-mask-composite-exclude); \n padding: var(--ng-spacing-xxs); \n}\n\n \n.button--standard.button--primary::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n box-shadow: var(--ng-shadow-xs-skeuomorphic)\n}\n\n\n .button--standard.button--primary:hover:not(.button--disabled) {\n background-color: var(--nile-colors-primary-700, var(--ng-colors-bg-brand-solid-hover));\n border-color: var(--nile-colors-primary-700, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n\n .button--standard.button--primary:active:not(.button--disabled) {\n background-color: var(--nile-colors-primary-700, var(--ng-colors-bg-brand-solid));\n border-color: var(--nile-colors-primary-900, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n\n .button--standard.button--primary.button--disabled {\n background-color: var(--nile-colors-primary-500, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-primary-500, var(--ng-colors-border-disabled-subtle));\n cursor: not-allowed;\n color: var(--nile-colors-white-base, var(--ng-colors-border-neutral));\n box-shadow: none;\n }\n\n .button--standard.button--primary.button--disabled:hover,\n .button--standard.button--primary.button--disabled:active {\n background-color: var(--nile-colors-primary-500, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-primary-500, var(--ng-colors-border-disabled-subtle));\n cursor: not-allowed;\n }\n\n .button--standard.button--primary:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-primary-600, var(--ng-colors-bg-brand-solid));\n border-color: var(--nile-colors-primary-600, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n box-shadow: var(--nile-box-shadow-none,var(--ng-focus-ring-shadow-xs-skeumorphic));\n }\n\n /* Secondary */\n .button--standard.button--secondary {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-border-none));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n box-shadow: var(--nile-box-shadow-none,var(--ng-shadow-xs-skeuomorphic));\n border-width:var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n }\n\n .button--standard.button--secondary:hover:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary-hover));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-hover));\n }\n\n .button--standard.button--secondary:active:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-700, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n }\n\n .button--standard.button--secondary.button--disabled {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-neutral-700, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary.button--disabled:hover,\n .button--standard.button--secondary.button--disabled:active {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled-subtle));\n color: var(--nile-colors-neutral-700, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));\n box-shadow: var(--nile-box-shadow-none,var(--ng-focus-ring-shadow-xs-skeumorphic));\n }\n\n /* Tertiary */\n .button--standard.button--tertiary {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--tertiary:hover:not(.button--disabled) {\n background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-primary-hover));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-hover));\n }\n\n .button--standard.button--tertiary:active:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-700, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--tertiary.button--disabled,\n .button--standard.button--tertiary.button--disabled:hover,\n .button--standard.button--tertiary.button--disabled:active {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n .button--standard.button--tertiary:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-colors-neutral-500, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n box-shadow: var(--nile-box-shadow-none,var(--ng-focus-ring));\n }\n\n /* ghost */\n .button--standard.button--ghost {\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n border-color: var(--nile-border-color-transparent, var(--ng-colors-bg-primary)) ;\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--ghost:hover:not(.button--disabled) {\n background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-primary-hover));\n border-color: var(--nile-border-color-transparent, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-hover));\n }\n\n .button--standard.button--ghost:active:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-400, var(--ng-colors-bg-primary));\n border-color: var(--nile-border-color-transparent, var(--ng-colors-bg-primary));\n color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));\n }\n\n .button--standard.button--ghost.button--disabled,\n .button--standard.button--ghost.button--disabled:hover,\n .button--standard.button--ghost.button--disabled:active {\n border-color: var(--nile-border-color-transparent,var(--ng-colors-bg-primary));\n background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));\n color: var(--nile-colors-neutral-500,var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n \n\n /* caution */\n .button--standard.button--caution {\n background-color: var(--nile-colors-red-500,var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-red-500);\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n border-width: var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n }\n\n .button--standard.button--caution:hover:not(.button--disabled) {\n background-color: var(--nile-colors-red-700,var( --ng-colors-bg-error-solid-hover));\n border-color: var(--nile-colors-red-700);\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n\n\n\n .button--standard.button--caution:active:not(.button--disabled) {\n background-color: var(--nile-colors-red-700);\n border-color: var(--nile-colors-red-700,var(--ng-border-style-none));\n color: var(--nile-colors-white-base);\n }\n\n .button--standard.button--caution:active:not(.button--disabled) {\n background-color: var(--nile-colors-red-700, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-dark-900, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n\n .button--standard.button--caution {\n position: relative;\n overflow: hidden;\n box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-none));\n}\n\n.button--standard.button--caution::before {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: var(--ng-skeuemorphic-gradient-border);\n mask: var(--ng-mask-rim);\n mask-composite: var(--ng-mask-composite-exclude);\n padding: var(--ng-spacing-xxs);\n}\n\n.button--standard.button--caution::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n box-shadow: var(--ng-shadow-xs-skeuomorphic);\n}\n\n.button.button--disabled {\n box-shadow: none !important;\n border-width: var(--nile-border-width-1, var(--ng-border-width-1)) !important;\n}\n\n.button.button--disabled::after {\n box-shadow: none !important;\n}\n\n /* destructive */\n .button--standard.button--destructive {\n position: relative;\n overflow: hidden; \n background-color: var(--nile-colors-red-500, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-red-500);\n border-width: var(--nile-border-width-1, var(--ng-border-width-0));\n border-style: var(--nile-border-style-solid, var(--ng-border-style-none));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-none));\n }\n\n\n .button--standard.button--destructive::before {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n background: var(--ng-skeuemorphic-gradient-border);\n mask: var(--ng-mask-rim);\n mask-composite: var(--ng-mask-composite-exclude); \n padding: var(--ng-spacing-xxs); \n}\n\n \n.button--standard.button--destructive::after {\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n pointer-events: none;\n box-shadow: var(--ng-shadow-xs-skeuomorphic)\n}\n\n .button--standard.button--destructive:hover:not(.button--disabled) {\n background-color: var(--nile-colors-red-700, var(--ng-colors-bg-error-solid-hover));\n border-color: var(--nile-colors-red-700, var(--ng-primary-standard));\n box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-xs-skeuomorphic));\n }\n\n .button--standard.button--destructive:active:not(.button--disabled) {\n background-color: var(--nile-colors-red-700, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-dark-900, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n }\n .button--standard.button--destructive:focus-visible:not(.button--disabled) {\n background-color: var(--nile-colors-red-500, var(--ng-colors-bg-error-solid));\n border-color: var(--nile-colors-red-500, var(--ng-primary-standard));\n color: var(--nile-colors-white-base, var(--ng-colors-text-white));\n box-shadow: var(--nile-box-shadow-none, var(--ng-focus-ring-error-shadow-xs-skeumorphic))\n }\n\n .button--standard.button--destructive.button--disabled {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-border-disabled-subtle));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n box-shadow: none;\n }\n\n .button--standard.button--destructive.button--disabled:active {\n background-color: var(--nile-colors-neutral-100, var(--ng-colors-bg-disabled));\n border-color: var(--nile-colors-neutral-400, var(--ng-primary-standard));\n color: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled));\n cursor: not-allowed;\n }\n\n .button--standard.button--destructive.button--disabled:hover {\n background-color: var(--nile-colors-red-400,var(--ng-colors-bg-disabled));\n color: var(--nile-colors-white-base,var(--ng-colors-fg-disabled));\n border-color: var(--nile-colors-red-400,var(--ng-colors-border-disabled-subtle));\n cursor: not-allowed;\n } \n\n /* secondary-Grey */\n .button--standard.button--secondary-grey {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-primary-900);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-grey:hover:not(.button--disabled) {\n background-color: var(--nile-colors-neutral-100);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-grey:active:not(.button--disabled) {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-500);\n color: var(--nile-colors-primary-900);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),\n 0px 0px 0px 4px rgba(152, 162, 179, 0.14);\n }\n\n .button--standard.button--secondary-grey.button--disabled {\n background-color: var(--nile-colors-neutral-400);\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary-grey.button--disabled:hover,\n .button--standard.button--secondary-grey.button--disabled:active {\n background-color: var(--nile-colors-neutral-400);\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n /* secondary-blue */\n .button--standard.button--secondary-blue {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-primary-500);\n color: var(--nile-colors-primary-700);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-blue:hover:not(.button--disabled) {\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-primary-500);\n color: var(--nile-colors-primary-700);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\n }\n\n .button--standard.button--secondary-blue:active:not(.button--disabled) {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-primary-500);\n color: var(--nile-colors-primary-700);\n box-shadow: 0px 1px 2px 0px rgba(0, 82, 145, 0.1),\n 0px 0px 0px 4px rgba(0, 94, 166, 0.15);\n }\n\n .button--standard.button--secondary-blue.button--disabled {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-400);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n .button--standard.button--secondary-blue.button--disabled:hover,\n .button--standard.button--secondary-blue.button--disabled:active {\n background-color: var(--nile-colors-white-base);\n border-color: var(--nile-colors-neutral-400);\n color: var(--nile-colors-neutral-500);\n cursor: not-allowed;\n }\n\n /* Primary Variant - Nile Icon Fill */\n .button--standard.button--primary ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon)) !important;\n }\n .button--standard.button--primary:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--primary:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon-hover)) !important;\n }\n .button--standard.button--primary.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n /* Secondary Variant */\n .button--standard.button--secondary ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400)) !important;\n }\n .button--standard.button--secondary:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--secondary:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-hover)) !important;\n }\n .button--standard.button--secondary.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n /* Tertiary Variant */\n .button--standard.button--tertiary ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400)) !important;\n }\n .button--standard.button--tertiary:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--tertiary:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-hover)) !important;\n }\n .button--standard.button--tertiary.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n /* Ghost Variant */\n .button--standard.button--ghost ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900) !important;\n }\n .button--standard.button--ghost:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--ghost:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-dark-900) !important;\n }\n .button--standard.button--ghost ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-neutral-500) !important;\n }\n\n /* Caution Variant */\n .button--standard.button--caution ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base) !important;\n }\n .button--standard.button--caution:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--caution:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base,var(--ng-componentcolors-components-button-destructive-primary-icon-hover)) !important;\n }\n .button--standard.button--caution.button--disabled{\n background-color: var(--nile-colors-red-400,var(--ng-colors-bg-disabled));\n color: var(--nile-colors-white-base,var(--ng-colors-fg-disabled));\n border-color: var(--nile-colors-red-400,var(--ng-colors-border-disabled-subtle));\n border-width: var(--ng-border-width-1, 1px);\n border-style: var(--ng-border-style-solid, solid);\n }\n\n .button--standard.button--caution ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base,var(--ng-componentcolors-components-button-destructive-primary-icon)) !important;\n }\n .button--standard.button--caution.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n \n\n /* destructive */\n .button--standard.button--destructive ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon)) !important;\n }\n .button--standard.button--destructive:hover:not(.button--disabled)\n ::slotted(nile-icon:not([color])),\n .button--standard.button--caution:active:not(.button--disabled)\n ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon-hover)) !important;\n }\n .button--standard.button--destructive.button--disabled ::slotted(nile-icon:not([color])) {\n --nile-svg-fill: var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle)) !important;\n }\n\n .button--standard.button--destructive.button--disabled{\n background-color: var(--nile-colors-red-400,var(--ng-colors-bg-disabled));\n color: var(--nile-colors-white-base,var(--ng-colors-fg-disabled));\n border-color: var(--nile-colors-red-400,var(--ng-colors-border-disabled-subtle));\n border-width: var(--ng-border-width-1, 1px);\n border-style: var(--ng-border-style-solid, solid);\n }\n\n /*\n * Outline buttons\n */\n\n .button--outline {\n background: none;\n border: solid 2px;\n }\n\n /* Default */\n .button--outline.button--secondary {\n border-color: var(--nile-colors-neutral-300);\n color: var(--nile-colors-neutral-700);\n }\n\n .button--outline.button--secondary:hover:not(.button--disabled),\n .button--outline.button--secondary.button--checked:not(.button--disabled) {\n border-color: var(--nile-colors-primary-600);\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--secondary:active:not(.button--disabled) {\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Primary */\n .button--outline.button--primary {\n border-color: var(--nile-colors-primary-600);\n color: var(--nile-colors-primary-600);\n }\n\n .button--outline.button--primary:hover:not(.button--disabled),\n .button--outline.button--primary.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--primary:active:not(.button--disabled) {\n border-color: var(--nile-colors-primary-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Success */\n .button--outline.button--success {\n border-color: var(--nile-colors-green-600);\n color: var(--nile-colors-green-600);\n }\n\n .button--outline.button--success:hover:not(.button--disabled),\n .button--outline.button--success.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--success:active:not(.button--disabled) {\n border-color: var(--nile-colors-green-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Neutral */\n .button--outline.button--neutral {\n border-color: var(--nile-colors-neutral-600);\n color: var(--nile-colors-neutral-600);\n }\n\n .button--outline.button--neutral:hover:not(.button--disabled),\n .button--outline.button--neutral.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--neutral:active:not(.button--disabled) {\n border-color: var(--nile-colors-neutral-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Warning */\n .button--outline.button--warning {\n border-color: var(--nile-colors-orange-600);\n color: var(--nile-colors-orange-600);\n }\n\n .button--outline.button--warning:hover:not(.button--disabled),\n .button--outline.button--warning.button--checked:not(.button--disabled) {\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--warning:active:not(.button--disabled) {\n border-color: var(--nile-colors-orange-700);\n color: var(--nile-colors-white-base);\n }\n\n /* Danger */\n .button--outline.button--danger {\n border-color: var(--nile-colors-red-600);\n color: var(--nile-colors-red-600);\n }\n\n .button--outline.button--danger:hover:not(.button--disabled),\n .button--outline.button--danger.button--checked:not(.button--disabled) {\n background-color: var(--nile-colors-red-600);\n color: var(--nile-colors-white-base);\n }\n\n .button--outline.button--danger:active:not(.button--disabled) {\n border-color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-red-700);\n color: var(--nile-colors-white-base);\n }\n\n /* destructive */\n .button--outline.button--destructive {\n border-color: var(--nile-colors-red-400, var(--ng-colors-effects-focus-ring-error));\n color: var(--nile-colors-red-700);\n box-shadow: 0px;\n }\n\n .button--outline.button--destructive:hover:not(.button--disabled),\n .button--outline.button--destructive.button--checked:not(.button--disabled) {\n border-color: var(--nile-colors-red-400);\n color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-red-100);\n }\n\n .button--outline.button--destructive:active:not(.button--disabled) {\n border-color: var(--nile-colors-red-400);\n color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-white-base);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),\n 0px 0px 0px 4px rgba(240, 68, 56, 0.24);\n }\n\n /* destructive - focus-visible */\n .button--outline.button--destructive:focus-visible:not(.button--disabled) {\n border-color: var(--nile-colors-red-400, var(--ng-colors-effects-focus-ring-error));\n color: var(--nile-colors-red-700);\n background-color: var(--nile-colors-white-base);\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),\n 0px 0px 0px 4px rgba(240, 68, 56, 0.24);\n }\n\n /* secondary-grey */\n .button--outline.button--secondary-grey {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-grey:hover:not(.button--disabled),\n .button--outline.button--secondary-grey.button--checked:not(\n .button--disabled\n ) {\n color: var(--nile-colors-primary-900);\n background-color: var(--nile-colors-neutral-100);\n }\n\n .button--outline.button--secondary-grey:active:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-grey:focus-visible:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n /* secondary-blue */\n .button--outline.button--secondary-blue {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-blue:hover:not(.button--disabled),\n .button--outline.button--secondary-blue.button--checked:not(\n .button--disabled\n ) {\n color: var(--nile-colors-primary-700);\n background-color: var(--nile-colors-blue-100);\n }\n\n .button--outline.button--secondary-blue:active:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n .button--outline.button--secondary-blue:focus-visible:not(.button--disabled) {\n box-shadow: 0px;\n }\n\n @media (forced-colors: active) {\n .button.button--outline.button--checked:not(.button--disabled) {\n outline: solid 2px transparent;\n }\n }\n\n /*\n * Pill modifier\n */\n\n .button--pill.button--small {\n border-radius: var(--nile-radius-2xl);\n }\n\n .button--pill.button--medium {\n border-radius: var(--nile-radius-2xl);\n }\n\n /*\n * Circle modifier\n */\n\n .button--circle {\n padding-left: var(--nile-spacing-none);\n padding-right: var(--nile-spacing-none);\n }\n\n .button--circle.button--small {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n }\n\n .button--circle.button--medium {\n width: 38px;\n height: 38px;\n border-radius: 50%;\n }\n\n .button--circle .button__prefix,\n .button--circle .button__suffix,\n .button--circle .button__caret {\n display: none;\n }\n\n /* Caret modifier */\n\n .button--caret .button__suffix {\n display: none;\n }\n\n .button--caret .button__caret {\n height: auto;\n }\n\n /*\n * Loading modifier\n */\n\n .button--loading {\n position: relative;\n cursor: wait;\n }\n\n .button--loading .button__prefix,\n .button--loading .button__label,\n .button--loading .button__suffix,\n .button--loading .button__caret {\n visibility: hidden;\n }\n\n .button--loading nile-spinner {\n --indicator-color: currentColor;\n position: absolute;\n font-size: var(--nile-type-scale-3);\n height: 1em;\n width: 1em;\n top: calc(50% - 0.5em);\n left: calc(50% - 0.5em);\n }\n /*\n * Badges\n */\n\n .button ::slotted(nile-badge) {\n position: absolute;\n top: 0;\n right: 0;\n translate: 50% -50%;\n pointer-events: none;\n }\n\n /* outline with no border */\n .button--outline.button--hideborder {\n border: 0px;\n }\n`;\n"]}
|
|
@@ -209,10 +209,10 @@ let NileButton = class NileButton extends NileElement {
|
|
|
209
209
|
const tag = isLink ? literal `a` : literal `button`;
|
|
210
210
|
const variantCaretColors = {
|
|
211
211
|
primary: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon))',
|
|
212
|
-
secondary: this.disabled ? 'var(--nile-colors-dark-
|
|
213
|
-
tertiary: this.disabled ? 'var(--nile-colors-
|
|
214
|
-
caution: 'white',
|
|
215
|
-
ghost: '
|
|
212
|
+
secondary: this.disabled ? 'var(--nile-colors-dark-500, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',
|
|
213
|
+
tertiary: this.disabled ? 'var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',
|
|
214
|
+
caution: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base)',
|
|
215
|
+
ghost: this.disabled ? 'var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',
|
|
216
216
|
destructive: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon))',
|
|
217
217
|
'secondary-grey': 'black',
|
|
218
218
|
'secondary-blue': 'black',
|
|
@@ -324,7 +324,7 @@ let NileButton = class NileButton extends NileElement {
|
|
|
324
324
|
<nile-icon
|
|
325
325
|
part="caret"
|
|
326
326
|
class="button__caret"
|
|
327
|
-
color
|
|
327
|
+
color=${variantCaretColors[this.variant]}
|
|
328
328
|
name="var(--nile-icon-arrow-down, var(--ng-icon-chevron-down))"
|
|
329
329
|
method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
|
|
330
330
|
></nile-icon>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nile-button.js","sourceRoot":"","sources":["../../../src/nile-button/nile-button.ts"],"names":[],"mappings":"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","sourcesContent":["import '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { FormControlController, validValidityState } from '../internal/form';\nimport { HasSlotController } from '../internal/slot';\nimport { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { watch } from '../internal/watch';\nimport { styles } from './nile-button.css';\nimport type { CSSResultGroup, TemplateResult } from 'lit';\nimport type { NileFormControl } from '../internal/nile-element';\nimport NileElement from '../internal/nile-element';\nimport { literal } from 'lit/static-html.js';\n/**\n * @summary Buttons represent actions that are available to the user.\n * @status stable\n * @since 2.0\n *\n * @dependency nile-icon\n * @dependency nile-spinner\n *\n * @event nile-blur - Emitted when the button loses focus.\n * @event nile-focus - Emitted when the button gains focus.\n * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @slot - The button's label.\n * @slot prefix - A presentational prefix icon or similar element.\n * @slot suffix - A presentational suffix icon or similar element.\n *\n * @csspart base - The component's base wrapper.\n * @csspart prefix - The container that wraps the prefix.\n * @csspart label - The button's label.\n * @csspart suffix - The container that wraps the suffix.\n * @csspart caret - The button's caret icon, an `<nile-icon>` element.\n */\n\n@customElement('nile-button')\nexport class NileButton extends NileElement implements NileFormControl {\n static styles: CSSResultGroup = styles;\n\n private readonly formControlController = new FormControlController(this, {\n form: input => {\n // Buttons support a form attribute that points to an arbitrary form, so if this attribute is set we need to query\n // the form from the same root using its id\n if (input.hasAttribute('form')) {\n const doc = input.getRootNode() as Document | ShadowRoot;\n const formId = input.getAttribute('form')!;\n return doc.getElementById(formId) as HTMLFormElement;\n }\n\n // Fall back to the closest containing form\n return input.closest('form');\n },\n assumeInteractionOn: ['click'],\n });\n private readonly hasSlotController = new HasSlotController(\n this,\n '[default]',\n 'prefix',\n 'suffix'\n );\n\n @query('.button') button: HTMLButtonElement | HTMLLinkElement;\n\n @state() private hasFocus = false;\n @state() invalid = false;\n @property() title = ''; // make reactive to pass through\n\n /** The button's theme variant. */\n @property({ reflect: true }) variant:\n | 'primary'\n | 'secondary'\n | 'tertiary'\n | 'caution'\n | 'ghost'\n | 'destructive'\n | 'secondary-grey'\n | 'secondary-blue' = 'primary';\n\n /** The button's size. */\n @state() size = 'medium';\n\n /** Draws the button with a caret. Used to indicate that the button triggers a dropdown menu or similar behavior. */\n @property({ type: Boolean, reflect: true }) caret = false;\n\n /** Disables the button. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Draws the button in a loading state. */\n @property({ type: Boolean, reflect: true }) loading = false;\n\n /** Draws an outlined button. */\n @property({ type: Boolean, reflect: true }) outline = false;\n\n /** Draws a pill-style button with rounded edges. */\n @property({ type: Boolean, reflect: true }) pill = false;\n\n /**\n * Draws a circular icon button. When this attribute is present, the button expects a single `<nile-icon>` in the\n * default slot.\n */\n @property({ type: Boolean, reflect: true }) circle = false;\n\n /**\n * The type of button. Note that the default value is `button` instead of `submit`, which is opposite of how native\n * `<button>` elements behave. When the type is `submit`, the button will submit the surrounding form.\n */\n @property() type: 'button' | 'submit' | 'reset' = 'button';\n\n /**\n * The name of the button, submitted as a name/value pair with form data, but only when this button is the submitter.\n * This attribute is ignored when `href` is present.\n */\n @property() name = '';\n\n /**\n * The value of the button, submitted as a pair with the button's name as part of the form data, but only when this\n * button is the submitter. This attribute is ignored when `href` is present.\n */\n @property() value = '';\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @property() href = '';\n\n /** Tells the browser where to open the link. Only used when `href` is present. */\n @property() target: '_blank' | '_parent' | '_self' | '_top';\n\n /**\n * When using `href`, this attribute will map to the underlying link's `rel` attribute. Unlike regular links, the\n * default is `noreferrer noopener` to prevent security exploits. However, if you're using `target` to point to a\n * specific tab/window, this will prevent that from working correctly. You can remove or change the default value by\n * setting the attribute to an empty string or a value of your choice, respectively.\n */\n @property() rel = 'noreferrer noopener';\n\n /** Tells the browser to download the linked file as this filename. Only used when `href` is present. */\n @property() download?: string;\n\n /**\n * The \"form owner\" to associate the button with. If omitted, the closest containing form will be used instead. The\n * value of this attribute must be an id of a form in the same document or shadow root as the button.\n */\n @property() form: string;\n\n /** Used to override the form owner's `action` attribute. */\n @property({ attribute: 'formaction' }) formAction: string;\n\n /** Used to override the form owner's `enctype` attribute. */\n @property({ attribute: 'formenctype' })\n formEnctype:\n | 'application/x-www-form-urlencoded'\n | 'multipart/form-data'\n | 'text/plain';\n\n /** Used to override the form owner's `method` attribute. */\n @property({ attribute: 'formmethod' }) formMethod: 'post' | 'get';\n\n /** Used to override the form owner's `novalidate` attribute. */\n @property({ attribute: 'formnovalidate', type: Boolean })\n formNoValidate: boolean;\n\n /** Used to override the form owner's `target` attribute. */\n @property({ attribute: 'formtarget' }) formTarget:\n | '_self'\n | '_blank'\n | '_parent'\n | '_top'\n | string;\n\n @property({ type: Boolean, reflect: true, attribute: 'hide-border' })\n hideBorder = false;\n\n /** Gets the validity state object */\n get validity() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).validity;\n }\n\n return validValidityState;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).validationMessage;\n }\n\n return '';\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.handleHostClick = this.handleHostClick.bind(this);\n this.addEventListener('click', this.handleHostClick);\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('click', this.handleHostClick);\n this.emit('nile-destroy');\n }\n\n firstUpdated() {\n if (this.isButton()) {\n this.formControlController.updateValidity();\n }\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus');\n }\n\n private handleClick() {\n if (this.type === 'submit') {\n this.formControlController.submit(this);\n }\n\n if (this.type === 'reset') {\n this.formControlController.reset(this);\n }\n }\n\n private handleHostClick(event: MouseEvent) {\n // Prevent the click event from being emitted when the button is disabled or loading\n if (this.disabled || this.loading) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private isButton() {\n return this.href ? false : true;\n }\n\n private isLink() {\n return this.href ? true : false;\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n if (this.isButton()) {\n // Disabled form controls are always valid\n this.formControlController.setValidity(this.disabled);\n }\n }\n\n /** Simulates a click on the button. */\n click() {\n this.button.click();\n }\n\n /** Sets focus on the button. */\n focus(options?: FocusOptions) {\n this.button.focus(options);\n }\n\n /** Removes focus from the button. */\n blur() {\n this.button.blur();\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).checkValidity();\n }\n\n return true;\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).reportValidity();\n }\n\n return true;\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n if (this.isButton()) {\n (this.button as HTMLButtonElement).setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n }\n\n render(): TemplateResult {\n const isLink = this.isLink();\n const tag = isLink ? literal`a` : literal`button`;\n\n const variantCaretColors = {\n primary: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon))',\n secondary: this.disabled ? 'var(--nile-colors-dark-900, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',\n tertiary: this.disabled ? 'var(--nile-colors-dark-900, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',\n caution: 'white',\n ghost: 'black',\n destructive: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon))',\n 'secondary-grey': 'black',\n 'secondary-blue': 'black',\n 'tertiary-blue': 'black',\n };\n\n if(this.isLink()){\n return html`\n <a\n part=\"base\"\n class=${classMap({\n button: true,\n 'button--primary': this.variant === 'primary',\n 'button--secondary': this.variant === 'secondary',\n 'button--tertiary': this.variant === 'tertiary',\n 'button--caution': this.variant === 'caution',\n 'button--ghost': this.variant === 'ghost',\n 'button--destructive': this.variant === 'destructive',\n 'button--secondary-grey': this.variant === 'secondary-grey',\n 'button--secondary-blue': this.variant === 'secondary-blue',\n 'button--hideborder': this.hideBorder,\n 'button--medium': this.size === 'medium',\n 'button--caret': this.caret,\n 'button--circle': this.circle,\n 'button--disabled': this.disabled,\n 'button--focused': this.hasFocus,\n 'button--loading': this.loading,\n 'button--standard': !this.outline,\n 'button--outline': this.outline,\n 'button--pill': this.pill,\n 'button--has-label': this.hasSlotController.test('[default]'),\n 'button--has-prefix': this.hasSlotController.test('prefix'),\n 'button--has-suffix': this.hasSlotController.test('suffix'),\n })}\n href=${ifDefined(this.href)}\n target=${ifDefined(this.target)}\n download=${ifDefined(this.download)}\n rel=${ifDefined(this.rel)}\n title=${this.title}\n role=\"button\"\n aria-disabled=${this.disabled ? 'true' : 'false'}\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n >\n <slot name=\"prefix\" part=\"prefix\" class=\"button__prefix\"></slot>\n <slot part=\"label\" class=\"button__label\"></slot>\n <slot name=\"suffix\" part=\"suffix\" class=\"button__suffix\"></slot>\n ${this.caret\n ? html`\n <nile-icon\n part=\"caret\"\n class=\"button__caret\"\n color=\"${variantCaretColors[this.variant]}\"\n name=\"var(--nile-icon-arrow-down, var(--ng-icon-chevron-down))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n ></nile-icon>\n `\n : ''}\n ${this.loading ? html`<nile-spinner></nile-spinner>` : ''}\n </a>\n `;\n }\n else{\n return html`\n <button\n part=\"base\"\n class=${classMap({\n button: true,\n 'button--primary': this.variant === 'primary',\n 'button--secondary': this.variant === 'secondary',\n 'button--tertiary': this.variant === 'tertiary',\n 'button--caution': this.variant === 'caution',\n 'button--ghost': this.variant === 'ghost',\n 'button--destructive': this.variant === 'destructive',\n 'button--secondary-grey': this.variant === 'secondary-grey',\n 'button--secondary-blue': this.variant === 'secondary-blue',\n 'button--hideborder': this.hideBorder,\n 'button--medium': this.size === 'medium',\n 'button--caret': this.caret,\n 'button--circle': this.circle,\n 'button--disabled': this.disabled,\n 'button--focused': this.hasFocus,\n 'button--loading': this.loading,\n 'button--standard': !this.outline,\n 'button--outline': this.outline,\n 'button--pill': this.pill,\n 'button--has-label': this.hasSlotController.test('[default]'),\n 'button--has-prefix': this.hasSlotController.test('prefix'),\n 'button--has-suffix': this.hasSlotController.test('suffix'),\n })}\n ?disabled=${this.disabled}\n type=${this.type}\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n title=${this.title}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @invalid=${this.handleInvalid}\n @click=${this.handleClick}\n >\n <slot name=\"prefix\" part=\"prefix\" class=\"button__prefix\"></slot>\n <slot part=\"label\" class=\"button__label\"></slot>\n <slot name=\"suffix\" part=\"suffix\" class=\"button__suffix\"></slot>\n ${this.caret\n ? html`\n <nile-icon\n part=\"caret\"\n class=\"button__caret\"\n color=\"${variantCaretColors[this.variant]}\"\n name=\"var(--nile-icon-arrow-down, var(--ng-icon-chevron-down))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n ></nile-icon>\n `\n : ''}\n ${this.loading ? html`<nile-spinner></nile-spinner>` : ''}\n </button>\n `;\n }\n }\n}\n\nexport default NileButton;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-button': NileButton;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"nile-button.js","sourceRoot":"","sources":["../../../src/nile-button/nile-button.ts"],"names":[],"mappings":"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","sourcesContent":["import '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { FormControlController, validValidityState } from '../internal/form';\nimport { HasSlotController } from '../internal/slot';\nimport { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { watch } from '../internal/watch';\nimport { styles } from './nile-button.css';\nimport type { CSSResultGroup, TemplateResult } from 'lit';\nimport type { NileFormControl } from '../internal/nile-element';\nimport NileElement from '../internal/nile-element';\nimport { literal } from 'lit/static-html.js';\n/**\n * @summary Buttons represent actions that are available to the user.\n * @status stable\n * @since 2.0\n *\n * @dependency nile-icon\n * @dependency nile-spinner\n *\n * @event nile-blur - Emitted when the button loses focus.\n * @event nile-focus - Emitted when the button gains focus.\n * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @slot - The button's label.\n * @slot prefix - A presentational prefix icon or similar element.\n * @slot suffix - A presentational suffix icon or similar element.\n *\n * @csspart base - The component's base wrapper.\n * @csspart prefix - The container that wraps the prefix.\n * @csspart label - The button's label.\n * @csspart suffix - The container that wraps the suffix.\n * @csspart caret - The button's caret icon, an `<nile-icon>` element.\n */\n\n@customElement('nile-button')\nexport class NileButton extends NileElement implements NileFormControl {\n static styles: CSSResultGroup = styles;\n\n private readonly formControlController = new FormControlController(this, {\n form: input => {\n // Buttons support a form attribute that points to an arbitrary form, so if this attribute is set we need to query\n // the form from the same root using its id\n if (input.hasAttribute('form')) {\n const doc = input.getRootNode() as Document | ShadowRoot;\n const formId = input.getAttribute('form')!;\n return doc.getElementById(formId) as HTMLFormElement;\n }\n\n // Fall back to the closest containing form\n return input.closest('form');\n },\n assumeInteractionOn: ['click'],\n });\n private readonly hasSlotController = new HasSlotController(\n this,\n '[default]',\n 'prefix',\n 'suffix'\n );\n\n @query('.button') button: HTMLButtonElement | HTMLLinkElement;\n\n @state() private hasFocus = false;\n @state() invalid = false;\n @property() title = ''; // make reactive to pass through\n\n /** The button's theme variant. */\n @property({ reflect: true }) variant:\n | 'primary'\n | 'secondary'\n | 'tertiary'\n | 'caution'\n | 'ghost'\n | 'destructive'\n | 'secondary-grey'\n | 'secondary-blue' = 'primary';\n\n /** The button's size. */\n @state() size = 'medium';\n\n /** Draws the button with a caret. Used to indicate that the button triggers a dropdown menu or similar behavior. */\n @property({ type: Boolean, reflect: true }) caret = false;\n\n /** Disables the button. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Draws the button in a loading state. */\n @property({ type: Boolean, reflect: true }) loading = false;\n\n /** Draws an outlined button. */\n @property({ type: Boolean, reflect: true }) outline = false;\n\n /** Draws a pill-style button with rounded edges. */\n @property({ type: Boolean, reflect: true }) pill = false;\n\n /**\n * Draws a circular icon button. When this attribute is present, the button expects a single `<nile-icon>` in the\n * default slot.\n */\n @property({ type: Boolean, reflect: true }) circle = false;\n\n /**\n * The type of button. Note that the default value is `button` instead of `submit`, which is opposite of how native\n * `<button>` elements behave. When the type is `submit`, the button will submit the surrounding form.\n */\n @property() type: 'button' | 'submit' | 'reset' = 'button';\n\n /**\n * The name of the button, submitted as a name/value pair with form data, but only when this button is the submitter.\n * This attribute is ignored when `href` is present.\n */\n @property() name = '';\n\n /**\n * The value of the button, submitted as a pair with the button's name as part of the form data, but only when this\n * button is the submitter. This attribute is ignored when `href` is present.\n */\n @property() value = '';\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @property() href = '';\n\n /** Tells the browser where to open the link. Only used when `href` is present. */\n @property() target: '_blank' | '_parent' | '_self' | '_top';\n\n /**\n * When using `href`, this attribute will map to the underlying link's `rel` attribute. Unlike regular links, the\n * default is `noreferrer noopener` to prevent security exploits. However, if you're using `target` to point to a\n * specific tab/window, this will prevent that from working correctly. You can remove or change the default value by\n * setting the attribute to an empty string or a value of your choice, respectively.\n */\n @property() rel = 'noreferrer noopener';\n\n /** Tells the browser to download the linked file as this filename. Only used when `href` is present. */\n @property() download?: string;\n\n /**\n * The \"form owner\" to associate the button with. If omitted, the closest containing form will be used instead. The\n * value of this attribute must be an id of a form in the same document or shadow root as the button.\n */\n @property() form: string;\n\n /** Used to override the form owner's `action` attribute. */\n @property({ attribute: 'formaction' }) formAction: string;\n\n /** Used to override the form owner's `enctype` attribute. */\n @property({ attribute: 'formenctype' })\n formEnctype:\n | 'application/x-www-form-urlencoded'\n | 'multipart/form-data'\n | 'text/plain';\n\n /** Used to override the form owner's `method` attribute. */\n @property({ attribute: 'formmethod' }) formMethod: 'post' | 'get';\n\n /** Used to override the form owner's `novalidate` attribute. */\n @property({ attribute: 'formnovalidate', type: Boolean })\n formNoValidate: boolean;\n\n /** Used to override the form owner's `target` attribute. */\n @property({ attribute: 'formtarget' }) formTarget:\n | '_self'\n | '_blank'\n | '_parent'\n | '_top'\n | string;\n\n @property({ type: Boolean, reflect: true, attribute: 'hide-border' })\n hideBorder = false;\n\n /** Gets the validity state object */\n get validity() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).validity;\n }\n\n return validValidityState;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).validationMessage;\n }\n\n return '';\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.handleHostClick = this.handleHostClick.bind(this);\n this.addEventListener('click', this.handleHostClick);\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('click', this.handleHostClick);\n this.emit('nile-destroy');\n }\n\n firstUpdated() {\n if (this.isButton()) {\n this.formControlController.updateValidity();\n }\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus');\n }\n\n private handleClick() {\n if (this.type === 'submit') {\n this.formControlController.submit(this);\n }\n\n if (this.type === 'reset') {\n this.formControlController.reset(this);\n }\n }\n\n private handleHostClick(event: MouseEvent) {\n // Prevent the click event from being emitted when the button is disabled or loading\n if (this.disabled || this.loading) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private isButton() {\n return this.href ? false : true;\n }\n\n private isLink() {\n return this.href ? true : false;\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n if (this.isButton()) {\n // Disabled form controls are always valid\n this.formControlController.setValidity(this.disabled);\n }\n }\n\n /** Simulates a click on the button. */\n click() {\n this.button.click();\n }\n\n /** Sets focus on the button. */\n focus(options?: FocusOptions) {\n this.button.focus(options);\n }\n\n /** Removes focus from the button. */\n blur() {\n this.button.blur();\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).checkValidity();\n }\n\n return true;\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n if (this.isButton()) {\n return (this.button as HTMLButtonElement).reportValidity();\n }\n\n return true;\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n if (this.isButton()) {\n (this.button as HTMLButtonElement).setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n }\n\n render(): TemplateResult {\n const isLink = this.isLink();\n const tag = isLink ? literal`a` : literal`button`;\n\n const variantCaretColors = {\n primary: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base, var(--ng-componentcolors-components-button-primary-icon))',\n secondary: this.disabled ? 'var(--nile-colors-dark-500, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',\n tertiary: this.disabled ? 'var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',\n caution: this.disabled? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))': 'var(--nile-colors-white-base)',\n\n ghost: this.disabled ? 'var(--nile-colors-neutral-500, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-dark-900, var(--ng-colors-fg-quaternary-400))',\n destructive: this.disabled ? 'var(--nile-colors-white-base, var(--ng-colors-fg-disabled-subtle))' : 'var(--nile-colors-white-base, var(--ng-componentcolors-components-button-destructive-primary-icon))',\n 'secondary-grey': 'black',\n 'secondary-blue': 'black',\n 'tertiary-blue': 'black',\n };\n\n if(this.isLink()){\n return html`\n <a\n part=\"base\"\n class=${classMap({\n button: true,\n 'button--primary': this.variant === 'primary',\n 'button--secondary': this.variant === 'secondary',\n 'button--tertiary': this.variant === 'tertiary',\n 'button--caution': this.variant === 'caution',\n 'button--ghost': this.variant === 'ghost',\n 'button--destructive': this.variant === 'destructive',\n 'button--secondary-grey': this.variant === 'secondary-grey',\n 'button--secondary-blue': this.variant === 'secondary-blue',\n 'button--hideborder': this.hideBorder,\n 'button--medium': this.size === 'medium',\n 'button--caret': this.caret,\n 'button--circle': this.circle,\n 'button--disabled': this.disabled,\n 'button--focused': this.hasFocus,\n 'button--loading': this.loading,\n 'button--standard': !this.outline,\n 'button--outline': this.outline,\n 'button--pill': this.pill,\n 'button--has-label': this.hasSlotController.test('[default]'),\n 'button--has-prefix': this.hasSlotController.test('prefix'),\n 'button--has-suffix': this.hasSlotController.test('suffix'),\n })}\n href=${ifDefined(this.href)}\n target=${ifDefined(this.target)}\n download=${ifDefined(this.download)}\n rel=${ifDefined(this.rel)}\n title=${this.title}\n role=\"button\"\n aria-disabled=${this.disabled ? 'true' : 'false'}\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n >\n <slot name=\"prefix\" part=\"prefix\" class=\"button__prefix\"></slot>\n <slot part=\"label\" class=\"button__label\"></slot>\n <slot name=\"suffix\" part=\"suffix\" class=\"button__suffix\"></slot>\n ${this.caret\n ? html`\n <nile-icon\n part=\"caret\"\n class=\"button__caret\"\n color=\"${variantCaretColors[this.variant]}\"\n name=\"var(--nile-icon-arrow-down, var(--ng-icon-chevron-down))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n ></nile-icon>\n `\n : ''}\n ${this.loading ? html`<nile-spinner></nile-spinner>` : ''}\n </a>\n `;\n }\n else{\n return html`\n <button\n part=\"base\"\n class=${classMap({\n button: true,\n 'button--primary': this.variant === 'primary',\n 'button--secondary': this.variant === 'secondary',\n 'button--tertiary': this.variant === 'tertiary',\n 'button--caution': this.variant === 'caution',\n 'button--ghost': this.variant === 'ghost',\n 'button--destructive': this.variant === 'destructive',\n 'button--secondary-grey': this.variant === 'secondary-grey',\n 'button--secondary-blue': this.variant === 'secondary-blue',\n 'button--hideborder': this.hideBorder,\n 'button--medium': this.size === 'medium',\n 'button--caret': this.caret,\n 'button--circle': this.circle,\n 'button--disabled': this.disabled,\n 'button--focused': this.hasFocus,\n 'button--loading': this.loading,\n 'button--standard': !this.outline,\n 'button--outline': this.outline,\n 'button--pill': this.pill,\n 'button--has-label': this.hasSlotController.test('[default]'),\n 'button--has-prefix': this.hasSlotController.test('prefix'),\n 'button--has-suffix': this.hasSlotController.test('suffix'),\n })}\n ?disabled=${this.disabled}\n type=${this.type}\n name=${ifDefined(this.name)}\n value=${ifDefined(this.value)}\n title=${this.title}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @invalid=${this.handleInvalid}\n @click=${this.handleClick}\n >\n <slot name=\"prefix\" part=\"prefix\" class=\"button__prefix\"></slot>\n <slot part=\"label\" class=\"button__label\"></slot>\n <slot name=\"suffix\" part=\"suffix\" class=\"button__suffix\"></slot>\n ${this.caret\n ? html`\n <nile-icon\n part=\"caret\"\n class=\"button__caret\"\n color=${variantCaretColors[this.variant]}\n name=\"var(--nile-icon-arrow-down, var(--ng-icon-chevron-down))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n ></nile-icon>\n `\n : ''}\n ${this.loading ? html`<nile-spinner></nile-spinner>` : ''}\n </button>\n `;\n }\n }\n}\n\nexport default NileButton;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-button': NileButton;\n }\n}\n"]}
|
|
@@ -578,6 +578,63 @@ export const styles = css `
|
|
|
578
578
|
.month-dropdown, .year-dropdown {
|
|
579
579
|
cursor: pointer;
|
|
580
580
|
}
|
|
581
|
+
|
|
582
|
+
|
|
583
|
+
|
|
584
|
+
:host([disabled]) .calendar-header__month-navigation,
|
|
585
|
+
:host([disabled]) .calendar-header__trigger,
|
|
586
|
+
:host([disabled]) .day_date {
|
|
587
|
+
cursor: not-allowed;
|
|
588
|
+
color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
|
|
593
|
+
:host([disabled]) .base {
|
|
594
|
+
background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-disabled-subtle));
|
|
595
|
+
cursor: not-allowed;
|
|
596
|
+
color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
:host([disabled]) .calendar-container {
|
|
600
|
+
background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-disabled-subtle));
|
|
601
|
+
}
|
|
602
|
+
|
|
603
|
+
:host([disabled]) .day_name {
|
|
604
|
+
color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
:host([disabled]) nile-input::part(form-control-label) {
|
|
608
|
+
color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
609
|
+
}
|
|
610
|
+
:host([disabled]) nile-select::part(form-control-label) {
|
|
611
|
+
color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
|
|
615
|
+
|
|
616
|
+
:host([disabled]) .calendar-switcher {
|
|
617
|
+
pointer-events: none;
|
|
618
|
+
opacity:var(--nile-opacity-50, var(--ng-opacity-50));
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
|
|
622
|
+
:host([disabled]) .day_date{
|
|
623
|
+
pointer-events:none;
|
|
624
|
+
}
|
|
625
|
+
:host([disabled]) .day_date:not(.range-start, .selected-date, .range-end) .current__date__dot {
|
|
626
|
+
background-color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
:host([disabled]) .duration_unit{
|
|
630
|
+
background-color: var(--nile-colors-dark-200, var(--ng-colors-bg-disabled-subtle));
|
|
631
|
+
}
|
|
632
|
+
:host([disabled]) .duration__value {
|
|
633
|
+
cursor: not-allowed;
|
|
634
|
+
background: var(--nile-colors-dark-200, var(--ng-colors-bg-disabled-subtle));
|
|
635
|
+
color: var(--nile-colors-dark-500, var(--ng-colors-fg-disabled));
|
|
636
|
+
border-color: var(--nile-colors-neutral-400, var(--ng-colors-border-disabled));
|
|
637
|
+
}
|
|
581
638
|
`;
|
|
582
639
|
export default [styles];
|
|
583
640
|
//# sourceMappingURL=nile-calendar.css.js.map
|