@nuraly/lumenui 0.1.0 → 0.2.1
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/dist/nuralyui.bundle.js +23024 -17355
- package/dist/nuralyui.bundle.js.gz +0 -0
- package/dist/src/components/alert/alert.component.d.ts +8 -5
- package/dist/src/components/alert/alert.component.js +24 -20
- package/dist/src/components/alert/alert.style.d.ts +0 -7
- package/dist/src/components/alert/alert.style.js +48 -90
- package/dist/src/components/alert/bundle.js +82 -108
- package/dist/src/components/alert/bundle.js.gz +0 -0
- package/dist/src/components/badge/badge.component.d.ts +9 -8
- package/dist/src/components/badge/badge.component.js +17 -14
- package/dist/src/components/badge/badge.style.d.ts +0 -7
- package/dist/src/components/badge/badge.style.js +49 -107
- package/dist/src/components/badge/bundle.js +81 -119
- package/dist/src/components/badge/bundle.js.gz +0 -0
- package/dist/src/components/breadcrumb/breadcrumb.component.d.ts +8 -10
- package/dist/src/components/breadcrumb/breadcrumb.component.js +16 -15
- package/dist/src/components/breadcrumb/breadcrumb.style.d.ts +0 -7
- package/dist/src/components/breadcrumb/breadcrumb.style.js +42 -60
- package/dist/src/components/breadcrumb/bundle.js +96 -93
- package/dist/src/components/breadcrumb/bundle.js.gz +0 -0
- package/dist/src/components/button/bundle.js +221 -470
- package/dist/src/components/button/bundle.js.gz +0 -0
- package/dist/src/components/button/button.component.d.ts +2 -1
- package/dist/src/components/button/button.component.js +6 -6
- package/dist/src/components/button/button.style.d.ts +0 -7
- package/dist/src/components/button/button.style.js +167 -433
- package/dist/src/components/canvas/base-canvas.component.d.ts +2 -1
- package/dist/src/components/canvas/base-canvas.component.js +1 -0
- package/dist/src/components/canvas/bundle.js +16919 -9595
- package/dist/src/components/canvas/bundle.js.gz +0 -0
- package/dist/src/components/canvas/canvas.constants.d.ts +1 -1
- package/dist/src/components/canvas/canvas.constants.js +1 -1
- package/dist/src/components/canvas/chatbot-panel.style.js +31 -31
- package/dist/src/components/canvas/index.d.ts +2 -0
- package/dist/src/components/canvas/index.js +3 -0
- package/dist/src/components/canvas/whiteboard-canvas.component.d.ts +3 -1
- package/dist/src/components/canvas/whiteboard-canvas.component.js +19 -1
- package/dist/src/components/canvas/whiteboard-canvas.style.js +159 -138
- package/dist/src/components/canvas/whiteboard-node.component.d.ts +2 -1
- package/dist/src/components/canvas/whiteboard-node.component.js +2 -1
- package/dist/src/components/canvas/whiteboard-node.style.js +44 -44
- package/dist/src/components/canvas/workflow-canvas-only.d.ts +4 -0
- package/dist/src/components/canvas/workflow-canvas-only.js +5 -0
- package/dist/src/components/canvas/workflow-canvas.component.d.ts +3 -1
- package/dist/src/components/canvas/workflow-canvas.component.js +24 -2
- package/dist/src/components/canvas/workflow-canvas.style.js +776 -648
- package/dist/src/components/canvas/workflow-canvas.types.d.ts +113 -4
- package/dist/src/components/canvas/workflow-canvas.types.js +646 -3
- package/dist/src/components/canvas/workflow-node.component.d.ts +3 -2
- package/dist/src/components/canvas/workflow-node.component.js +5 -5
- package/dist/src/components/canvas/workflow-node.style.js +183 -181
- package/dist/src/components/card/bundle.js +43 -35
- package/dist/src/components/card/bundle.js.gz +0 -0
- package/dist/src/components/card/card.component.d.ts +6 -1
- package/dist/src/components/card/card.component.js +8 -2
- package/dist/src/components/card/card.style.js +26 -30
- package/dist/src/components/carousel/bundle.js +8 -8
- package/dist/src/components/carousel/bundle.js.gz +0 -0
- package/dist/src/components/carousel/carousel.component.d.ts +12 -0
- package/dist/src/components/carousel/carousel.component.js +16 -4
- package/dist/src/components/chatbot/bundle.js +422 -406
- package/dist/src/components/chatbot/bundle.js.gz +0 -0
- package/dist/src/components/chatbot/chatbot.component.d.ts +2 -1
- package/dist/src/components/chatbot/chatbot.component.js +1 -0
- package/dist/src/components/chatbot/chatbot.style.js +277 -277
- package/dist/src/components/checkbox/bundle.js +86 -245
- package/dist/src/components/checkbox/bundle.js.gz +0 -0
- package/dist/src/components/checkbox/checkbox.component.d.ts +5 -2
- package/dist/src/components/checkbox/checkbox.component.js +11 -13
- package/dist/src/components/checkbox/checkbox.style.js +56 -231
- package/dist/src/components/code-editor/bundle.js +151 -25
- package/dist/src/components/code-editor/bundle.js.gz +0 -0
- package/dist/src/components/code-editor/code-editor.component.d.ts +18 -56
- package/dist/src/components/code-editor/code-editor.component.js +141 -394
- package/dist/src/components/code-editor/code-editor.style.js +139 -15
- package/dist/src/components/collapse/bundle.js +97 -84
- package/dist/src/components/collapse/bundle.js.gz +0 -0
- package/dist/src/components/collapse/collapse.component.d.ts +7 -1
- package/dist/src/components/collapse/collapse.component.js +11 -2
- package/dist/src/components/collapse/collapse.style.js +60 -60
- package/dist/src/components/colorpicker/bundle.js +85 -48
- package/dist/src/components/colorpicker/bundle.js.gz +0 -0
- package/dist/src/components/colorpicker/color-holder.component.d.ts +2 -4
- package/dist/src/components/colorpicker/color-holder.component.js +5 -6
- package/dist/src/components/colorpicker/color-holder.style.js +11 -11
- package/dist/src/components/colorpicker/color-picker.component.d.ts +2 -1
- package/dist/src/components/colorpicker/color-picker.component.js +1 -0
- package/dist/src/components/colorpicker/color-picker.style.js +12 -12
- package/dist/src/components/colorpicker/default-color-sets.component.d.ts +2 -2
- package/dist/src/components/colorpicker/default-color-sets.component.js +4 -3
- package/dist/src/components/colorpicker/default-color-sets.style.js +5 -5
- package/dist/src/components/container/bundle.js +24 -14
- package/dist/src/components/container/bundle.js.gz +0 -0
- package/dist/src/components/container/container.component.d.ts +4 -1
- package/dist/src/components/container/container.component.js +7 -5
- package/dist/src/components/container/container.style.js +9 -9
- package/dist/src/components/datepicker/bundle.js +193 -177
- package/dist/src/components/datepicker/bundle.js.gz +0 -0
- package/dist/src/components/datepicker/datepicker.component.d.ts +2 -1
- package/dist/src/components/datepicker/datepicker.component.js +1 -0
- package/dist/src/components/datepicker/datepicker.style.js +65 -65
- package/dist/src/components/datepicker/datepicker.style.variables.js +91 -91
- package/dist/src/components/db-connection-select/bundle.js +7 -6
- package/dist/src/components/db-connection-select/bundle.js.gz +0 -0
- package/dist/src/components/db-connection-select/db-connection-select.component.d.ts +3 -0
- package/dist/src/components/db-connection-select/db-connection-select.component.js +4 -0
- package/dist/src/components/divider/bundle.js +61 -35
- package/dist/src/components/divider/bundle.js.gz +0 -0
- package/dist/src/components/divider/divider.component.d.ts +4 -6
- package/dist/src/components/divider/divider.component.js +10 -14
- package/dist/src/components/divider/divider.style.js +41 -31
- package/dist/src/components/document/bundle.js +50 -48
- package/dist/src/components/document/bundle.js.gz +0 -0
- package/dist/src/components/document/document.component.d.ts +12 -1
- package/dist/src/components/document/document.component.js +18 -6
- package/dist/src/components/document/document.style.js +21 -36
- package/dist/src/components/dropdown/bundle.js +117 -101
- package/dist/src/components/dropdown/bundle.js.gz +0 -0
- package/dist/src/components/dropdown/dropdown.component.d.ts +2 -1
- package/dist/src/components/dropdown/dropdown.component.js +1 -0
- package/dist/src/components/dropdown/dropdown.style.js +68 -68
- package/dist/src/components/file-upload/bundle.js +82 -76
- package/dist/src/components/file-upload/bundle.js.gz +0 -0
- package/dist/src/components/file-upload/file-upload.component.d.ts +2 -1
- package/dist/src/components/file-upload/file-upload.component.js +1 -0
- package/dist/src/components/file-upload/styles.js +59 -59
- package/dist/src/components/flex/bundle.js +18 -8
- package/dist/src/components/flex/bundle.js.gz +0 -0
- package/dist/src/components/flex/flex.component.d.ts +4 -1
- package/dist/src/components/flex/flex.component.js +7 -4
- package/dist/src/components/flex/flex.style.js +2 -2
- package/dist/src/components/form/bundle.js +22 -10
- package/dist/src/components/form/bundle.js.gz +0 -0
- package/dist/src/components/form/form.component.d.ts +4 -1
- package/dist/src/components/form/form.component.js +5 -1
- package/dist/src/components/form/form.style.js +2 -2
- package/dist/src/components/grid/bundle.js +26 -14
- package/dist/src/components/grid/bundle.js.gz +0 -0
- package/dist/src/components/grid/col.component.d.ts +4 -1
- package/dist/src/components/grid/col.component.js +4 -1
- package/dist/src/components/grid/col.style.js +2 -2
- package/dist/src/components/grid/row.component.d.ts +4 -1
- package/dist/src/components/grid/row.component.js +4 -1
- package/dist/src/components/grid/row.style.js +2 -2
- package/dist/src/components/icon/bundle.js +78 -252
- package/dist/src/components/icon/bundle.js.gz +0 -0
- package/dist/src/components/icon/icon-paths.d.ts +2 -0
- package/dist/src/components/icon/icon-paths.js +141 -0
- package/dist/src/components/icon/icon.component.d.ts +10 -12
- package/dist/src/components/icon/icon.component.js +42 -93
- package/dist/src/components/icon/icon.style.js +42 -130
- package/dist/src/components/icon/icon.variables.js +9 -9
- package/dist/src/components/iconpicker/bundle.js +859 -1511
- package/dist/src/components/iconpicker/bundle.js.gz +0 -0
- package/dist/src/components/iconpicker/icon-picker.component.d.ts +2 -1
- package/dist/src/components/iconpicker/icon-picker.component.js +1 -0
- package/dist/src/components/iconpicker/icon-picker.style.js +13 -13
- package/dist/src/components/image/bundle.js +43 -33
- package/dist/src/components/image/bundle.js.gz +0 -0
- package/dist/src/components/image/image.component.d.ts +10 -1
- package/dist/src/components/image/image.component.js +13 -3
- package/dist/src/components/image/image.style.js +19 -26
- package/dist/src/components/input/bundle.js +420 -644
- package/dist/src/components/input/bundle.js.gz +0 -0
- package/dist/src/components/input/input.component.d.ts +16 -3
- package/dist/src/components/input/input.component.js +43 -27
- package/dist/src/components/input/input.style.d.ts +1 -1
- package/dist/src/components/input/input.style.js +331 -634
- package/dist/src/components/kv-secret-select/bundle.js +2 -1
- package/dist/src/components/kv-secret-select/bundle.js.gz +0 -0
- package/dist/src/components/kv-secret-select/kv-secret-select.component.d.ts +3 -0
- package/dist/src/components/kv-secret-select/kv-secret-select.component.js +4 -0
- package/dist/src/components/label/bundle.js +37 -60
- package/dist/src/components/label/bundle.js.gz +0 -0
- package/dist/src/components/label/label.component.d.ts +8 -4
- package/dist/src/components/label/label.component.js +9 -14
- package/dist/src/components/label/label.style.js +17 -25
- package/dist/src/components/label/label.style.variables.js +18 -18
- package/dist/src/components/layout/bundle.js +86 -70
- package/dist/src/components/layout/bundle.js.gz +0 -0
- package/dist/src/components/layout/content.component.d.ts +2 -1
- package/dist/src/components/layout/content.component.js +2 -1
- package/dist/src/components/layout/content.style.js +3 -3
- package/dist/src/components/layout/footer.component.d.ts +2 -1
- package/dist/src/components/layout/footer.component.js +3 -2
- package/dist/src/components/layout/footer.style.js +7 -7
- package/dist/src/components/layout/header.component.d.ts +2 -1
- package/dist/src/components/layout/header.component.js +3 -2
- package/dist/src/components/layout/header.style.js +7 -7
- package/dist/src/components/layout/layout.component.d.ts +4 -7
- package/dist/src/components/layout/layout.component.js +9 -22
- package/dist/src/components/layout/layout.style.js +1 -1
- package/dist/src/components/layout/sider.component.d.ts +3 -1
- package/dist/src/components/layout/sider.component.js +3 -1
- package/dist/src/components/layout/sider.style.js +29 -29
- package/dist/src/components/menu/bundle.js +135 -125
- package/dist/src/components/menu/bundle.js.gz +0 -0
- package/dist/src/components/menu/menu.component.d.ts +2 -1
- package/dist/src/components/menu/menu.component.js +1 -0
- package/dist/src/components/menu/menu.style.js +87 -87
- package/dist/src/components/modal/bundle.js +105 -96
- package/dist/src/components/modal/bundle.js.gz +0 -0
- package/dist/src/components/modal/modal.component.d.ts +2 -1
- package/dist/src/components/modal/modal.component.js +1 -0
- package/dist/src/components/modal/modal.style.js +69 -71
- package/dist/src/components/panel/bundle.js +190 -391
- package/dist/src/components/panel/bundle.js.gz +0 -0
- package/dist/src/components/panel/panel.component.d.ts +2 -1
- package/dist/src/components/panel/panel.component.js +1 -0
- package/dist/src/components/panel/panel.style.js +65 -65
- package/dist/src/components/popconfirm/bundle.js +107 -93
- package/dist/src/components/popconfirm/bundle.js.gz +0 -0
- package/dist/src/components/popconfirm/popconfirm-manager.component.d.ts +2 -1
- package/dist/src/components/popconfirm/popconfirm-manager.component.js +1 -0
- package/dist/src/components/popconfirm/popconfirm-manager.style.js +16 -16
- package/dist/src/components/popconfirm/popconfirm.component.d.ts +2 -1
- package/dist/src/components/popconfirm/popconfirm.component.js +9 -5
- package/dist/src/components/popconfirm/popconfirm.style.js +43 -43
- package/dist/src/components/radio/bundle.js +56 -86
- package/dist/src/components/radio/bundle.js.gz +0 -0
- package/dist/src/components/radio/radio.component.d.ts +8 -2
- package/dist/src/components/radio/radio.component.js +17 -9
- package/dist/src/components/radio/radio.style.js +30 -77
- package/dist/src/components/radio-group/bundle.js +125 -89
- package/dist/src/components/radio-group/bundle.js.gz +0 -0
- package/dist/src/components/radio-group/radio-group.component.d.ts +5 -1
- package/dist/src/components/radio-group/radio-group.component.js +18 -10
- package/dist/src/components/radio-group/radio-group.style.js +44 -44
- package/dist/src/components/select/bundle.js +260 -367
- package/dist/src/components/select/bundle.js.gz +0 -0
- package/dist/src/components/select/select.component.d.ts +12 -17
- package/dist/src/components/select/select.component.js +35 -35
- package/dist/src/components/select/select.style.js +184 -324
- package/dist/src/components/skeleton/bundle.js +82 -162
- package/dist/src/components/skeleton/bundle.js.gz +0 -0
- package/dist/src/components/skeleton/skeleton.component.d.ts +10 -5
- package/dist/src/components/skeleton/skeleton.component.js +20 -7
- package/dist/src/components/skeleton/skeleton.style.js +34 -133
- package/dist/src/components/slider-input/bundle.js +89 -88
- package/dist/src/components/slider-input/bundle.js.gz +0 -0
- package/dist/src/components/slider-input/slider-input.component.d.ts +11 -0
- package/dist/src/components/slider-input/slider-input.component.js +20 -8
- package/dist/src/components/slider-input/slider-input.style.js +47 -47
- package/dist/src/components/slider-input/slider-input.style.variables.js +32 -32
- package/dist/src/components/table/bundle.js +149 -128
- package/dist/src/components/table/bundle.js.gz +0 -0
- package/dist/src/components/table/table.component.d.ts +2 -1
- package/dist/src/components/table/table.component.js +1 -0
- package/dist/src/components/table/table.style.js +79 -79
- package/dist/src/components/tabs/bundle.js +462 -663
- package/dist/src/components/tabs/bundle.js.gz +0 -0
- package/dist/src/components/tabs/tabs.component.d.ts +6 -1
- package/dist/src/components/tabs/tabs.component.js +8 -1
- package/dist/src/components/tabs/tabs.style.js +200 -201
- package/dist/src/components/tag/bundle.js +44 -36
- package/dist/src/components/tag/bundle.js.gz +0 -0
- package/dist/src/components/tag/tag.component.d.ts +7 -6
- package/dist/src/components/tag/tag.component.js +10 -19
- package/dist/src/components/tag/tag.style.js +20 -24
- package/dist/src/components/textarea/bundle.js +131 -94
- package/dist/src/components/textarea/bundle.js.gz +0 -0
- package/dist/src/components/textarea/textarea.component.d.ts +7 -1
- package/dist/src/components/textarea/textarea.component.js +10 -3
- package/dist/src/components/textarea/textarea.style.d.ts +1 -13
- package/dist/src/components/textarea/textarea.style.js +79 -91
- package/dist/src/components/timeline/bundle.js +71 -134
- package/dist/src/components/timeline/bundle.js.gz +0 -0
- package/dist/src/components/timeline/timeline.component.d.ts +9 -6
- package/dist/src/components/timeline/timeline.component.js +16 -13
- package/dist/src/components/timeline/timeline.style.d.ts +0 -7
- package/dist/src/components/timeline/timeline.style.js +41 -122
- package/dist/src/components/timepicker/bundle.js +196 -166
- package/dist/src/components/timepicker/bundle.js.gz +0 -0
- package/dist/src/components/timepicker/timepicker.component.d.ts +2 -1
- package/dist/src/components/timepicker/timepicker.component.js +1 -0
- package/dist/src/components/timepicker/timepicker.style.js +42 -42
- package/dist/src/components/timepicker/timepicker.style.variables.js +91 -91
- package/dist/src/components/toast/bundle.js +97 -81
- package/dist/src/components/toast/bundle.js.gz +0 -0
- package/dist/src/components/toast/toast.component.d.ts +2 -1
- package/dist/src/components/toast/toast.component.js +1 -0
- package/dist/src/components/toast/toast.style.js +62 -62
- package/dist/src/components/tooltips/bundle.js +10 -10
- package/dist/src/components/tooltips/bundle.js.gz +0 -0
- package/dist/src/components/tooltips/tooltips.component.d.ts +8 -0
- package/dist/src/components/tooltips/tooltips.component.js +9 -1
- package/dist/src/components/tooltips/tooltips.style.js +6 -6
- package/dist/src/components/video/bundle.js +47 -36
- package/dist/src/components/video/bundle.js.gz +0 -0
- package/dist/src/components/video/video.component.d.ts +12 -1
- package/dist/src/components/video/video.component.js +18 -6
- package/dist/src/components/video/video.style.js +18 -24
- package/package.json +25 -12
- package/packages/common/dist/VERSIONS.md +2 -2
- package/packages/common/dist/shared/base-mixin.d.ts +21 -19
- package/packages/common/dist/shared/base-mixin.d.ts.map +1 -1
- package/packages/common/dist/shared/base-mixin.js +102 -18
- package/packages/common/dist/shared/base-mixin.js.map +1 -1
- package/packages/common/dist/shared/index.d.ts +1 -0
- package/packages/common/dist/shared/index.d.ts.map +1 -1
- package/packages/common/dist/shared/index.js +2 -0
- package/packages/common/dist/shared/index.js.map +1 -1
- package/packages/common/dist/shared/style-injector.d.ts +11 -0
- package/packages/common/dist/shared/style-injector.d.ts.map +1 -0
- package/packages/common/dist/shared/style-injector.js +53 -0
- package/packages/common/dist/shared/style-injector.js.map +1 -0
- package/packages/common/dist/shared/theme-mixin.d.ts +2 -24
- package/packages/common/dist/shared/theme-mixin.d.ts.map +1 -1
- package/packages/common/dist/shared/theme-mixin.js +5 -38
- package/packages/common/dist/shared/theme-mixin.js.map +1 -1
- package/packages/themes/dist/default.css +0 -10
- package/packages/themes/dist/package.json +1 -1
|
@@ -1,725 +1,479 @@
|
|
|
1
1
|
import { css } from 'lit';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
* - Base input styles with CSS custom properties for theming
|
|
7
|
-
* - Multiple input states (default, warning, error)
|
|
8
|
-
* - Size variations (small, medium, large)
|
|
9
|
-
* - Different input types (text, password, number, calendar)
|
|
10
|
-
* - Icon positioning and styling with comprehensive CSS variable overrides
|
|
11
|
-
* - Focus, disabled, and validation states
|
|
12
|
-
* - Dark theme support
|
|
13
|
-
*
|
|
14
|
-
* Icon Color Customization:
|
|
15
|
-
* The input component provides multiple levels of CSS variable overrides for icon colors:
|
|
16
|
-
*
|
|
17
|
-
* Global Level:
|
|
18
|
-
* - --nuraly-color-input-icon: Controls all icons in input components
|
|
19
|
-
* - --nuraly-size-input-icon: Controls size of all icons in input components
|
|
20
|
-
* - --nuraly-color-input-icon-hover: Hover state for all icons
|
|
21
|
-
* - --nuraly-color-input-icon-active: Active state for all icons
|
|
22
|
-
* - --nuraly-color-input-icon-disabled: Disabled state for all icons
|
|
23
|
-
*
|
|
24
|
-
* Specific Icon Types:
|
|
25
|
-
* - --nuraly-color-input-warning-icon: Warning state icons
|
|
26
|
-
* - --nuraly-color-input-error-icon: Error state icons
|
|
27
|
-
* - --nuraly-color-input-calendar-icon: Calendar input type icons
|
|
28
|
-
* - --nuraly-color-input-password-icon: Password toggle icons
|
|
29
|
-
* - --nuraly-color-input-copy-icon: Copy functionality icons
|
|
30
|
-
* - --nuraly-color-input-clear-icon: Clear functionality icons
|
|
31
|
-
* - --nuraly-color-input-number-icons: Number input increment/decrement icons
|
|
32
|
-
*
|
|
33
|
-
* Usage Examples:
|
|
34
|
-
* ```css
|
|
35
|
-
* :root {
|
|
36
|
-
* --nuraly-color-input-icon: #0066cc;
|
|
37
|
-
* --nuraly-color-input-error-icon: #cc0000;
|
|
38
|
-
* --nuraly-size-input-icon: 20px;
|
|
39
|
-
* }
|
|
40
|
-
*
|
|
41
|
-
* .custom-input {
|
|
42
|
-
* --nuraly-color-input-icon: #purple;
|
|
43
|
-
* }
|
|
44
|
-
* ```
|
|
45
|
-
*
|
|
46
|
-
* The styling system uses CSS custom properties with fallbacks to allow
|
|
47
|
-
* for both global and local customization of input appearance.
|
|
48
|
-
*/
|
|
49
|
-
const inputStyle = css `
|
|
50
|
-
/*
|
|
51
|
-
* Host element base styles
|
|
52
|
-
* Container for the input component with flexible layout
|
|
53
|
-
*/
|
|
2
|
+
export const styles = css `
|
|
3
|
+
/* ========================================
|
|
4
|
+
* HOST ELEMENT
|
|
5
|
+
* ======================================== */
|
|
54
6
|
:host {
|
|
55
7
|
display: flex;
|
|
56
8
|
flex-direction: column;
|
|
57
|
-
font-family:
|
|
9
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
|
|
10
|
+
font-size: 13px;
|
|
11
|
+
line-height: 1.4;
|
|
58
12
|
}
|
|
59
13
|
|
|
60
|
-
/*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
* Uses theme CSS custom properties for comprehensive theming support
|
|
64
|
-
*/
|
|
14
|
+
/* ========================================
|
|
15
|
+
* INPUT WRAPPER
|
|
16
|
+
* ======================================== */
|
|
65
17
|
.input-wrapper {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
#input-container > input {
|
|
71
|
-
background-color: transparent;
|
|
72
|
-
border: var(--nuraly-input-border, none);
|
|
73
|
-
outline: var(--nuraly-input-outline, none);
|
|
74
|
-
flex: 1;
|
|
75
|
-
min-width: 0;
|
|
18
|
+
display: flex;
|
|
19
|
+
align-items: stretch;
|
|
76
20
|
width: 100%;
|
|
77
|
-
|
|
78
|
-
/* Typography from theme */
|
|
79
|
-
font-family: var(--nuraly-font-family-input, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto);
|
|
80
|
-
font-size: var(--nuraly-font-size-input, 14px);
|
|
81
|
-
color: var(--nuraly-color-input-text, var(--nuraly-color-input-text-fallback, rgba(0, 0, 0, 0.88)));
|
|
82
|
-
|
|
83
|
-
/* Padding from theme */
|
|
84
|
-
padding: var(--nuraly-spacing-input-medium-vertical, 4px) var(--nuraly-spacing-input-medium-horizontal, 11px);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
/*
|
|
88
|
-
* Disabled state styles for wrapper and input
|
|
89
|
-
* Applied when input is disabled - removes interactivity and applies muted colors
|
|
90
|
-
*/
|
|
91
|
-
:host([disabled]) .input-wrapper {
|
|
92
|
-
background-color: var(--nuraly-color-input-disabled-background, var(--nuraly-color-input-disabled-background-fallback, #f4f4f4));
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
:host([disabled]) #input-container > input {
|
|
96
21
|
background-color: transparent;
|
|
97
|
-
cursor: var(--nuraly-cursor-disabled, not-allowed);
|
|
98
|
-
color: var(--nuraly-color-input-disabled-text, var(--nuraly-color-input-disabled-text-fallback, rgba(0, 0, 0, 0.25)));
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
/*
|
|
102
|
-
* Icon base styles
|
|
103
|
-
* Common styling for all icons within the input component
|
|
104
|
-
* Provides comprehensive CSS variable override system
|
|
105
|
-
*/
|
|
106
|
-
nr-icon {
|
|
107
|
-
display: flex;
|
|
108
|
-
align-items: center;
|
|
109
|
-
|
|
110
|
-
/* Global icon color override - applies to all icons in input */
|
|
111
|
-
--nuraly-color-icon: var(--nuraly-color-input-icon, var(--nuraly-color-icon, var(--nuraly-color-icon-fallback, #161616)));
|
|
112
|
-
|
|
113
|
-
/* Size override for input icons */
|
|
114
|
-
--nuraly-icon-size: var(--nuraly-size-input-icon, var(--nuraly-icon-size, var(--nuraly-icon-size-fallback, 18px)));
|
|
115
|
-
|
|
116
|
-
/* Interactive state overrides */
|
|
117
|
-
--nuraly-color-icon-hover: var(--nuraly-color-input-icon-hover, var(--nuraly-color-icon-hover, var(--nuraly-color-icon-hover-fallback, #0f62fe)));
|
|
118
|
-
--nuraly-color-icon-active: var(--nuraly-color-input-icon-active, var(--nuraly-color-icon-active, var(--nuraly-color-icon-active-fallback, #054ada)));
|
|
119
|
-
--nuraly-color-icon-disabled: var(--nuraly-color-input-icon-disabled, var(--nuraly-color-icon-disabled, var(--nuraly-color-icon-disabled-fallback, #c6c6c6)));
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
/*
|
|
123
|
-
* Placeholder styling
|
|
124
|
-
* Customizable placeholder text appearance
|
|
125
|
-
*/
|
|
126
|
-
::placeholder {
|
|
127
|
-
color: var(--nuraly-color-input-placeholder, var(--nuraly-color-input-placeholder-fallback, #a8a8a8));
|
|
128
|
-
font-size: var(--nuraly-font-size-input-placeholder, 14px);
|
|
129
|
-
font-family: var(--nuraly-font-family-input, 'IBM Plex Sans', ui-sans-serif, system-ui);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
/*
|
|
133
|
-
* Disabled placeholder styling
|
|
134
|
-
* Applied when input is disabled
|
|
135
|
-
*/
|
|
136
|
-
:host([disabled]) ::placeholder {
|
|
137
|
-
color: var(--nuraly-color-input-disabled-placeholder, var(--nuraly-color-input-disabled-placeholder-fallback, #c6c6c6));
|
|
138
22
|
}
|
|
139
23
|
|
|
140
24
|
/* ========================================
|
|
141
|
-
*
|
|
25
|
+
* INPUT CONTAINER
|
|
142
26
|
* ======================================== */
|
|
143
|
-
|
|
144
|
-
/* Warning state icon */
|
|
145
|
-
#warning-icon {
|
|
146
|
-
--nuraly-color-icon: var(--nuraly-color-input-warning-icon, #f1c21b);
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
/* Error state icon */
|
|
150
|
-
#error-icon {
|
|
151
|
-
--nuraly-color-icon: var(--nuraly-color-input-error-icon, #da1e28);
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
/* Calendar input type icon */
|
|
155
|
-
#calendar-icon {
|
|
156
|
-
--nuraly-color-icon: var(--nuraly-color-input-calendar-icon, #161616);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
/* Password toggle icon */
|
|
160
|
-
#password-icon {
|
|
161
|
-
padding-left: var(--nuraly-input-password-icon-padding-left, var(--nuraly-password-icon-padding-left, 8px));
|
|
162
|
-
padding-right: var(--nuraly-input-password-icon-padding-right, var(--nuraly-password-icon-padding-right, 8px));
|
|
163
|
-
cursor: var(--nuraly-cursor-interactive, pointer);
|
|
164
|
-
--nuraly-color-icon: var(--nuraly-color-input-password-icon, #161616);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
/* Copy functionality icon */
|
|
168
|
-
#copy-icon {
|
|
169
|
-
padding-right: var(--nuraly-input-copy-icon-padding-right, var(--nuraly-copy-icon-padding-right, 8px));
|
|
170
|
-
--nuraly-color-icon: var(--nuraly-color-input-copy-icon, #161616);
|
|
171
|
-
cursor: var(--nuraly-cursor-interactive, pointer);
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
/* Clear functionality icon */
|
|
175
|
-
#clear-icon {
|
|
176
|
-
padding-right: var(--nuraly-input-clear-icon-padding-right, var(--nuraly-clear-icon-padding-right, 8px));
|
|
177
|
-
--nuraly-color-icon: var(--nuraly-color-input-clear-icon, #161616);
|
|
178
|
-
cursor: var(--nuraly-cursor-interactive, pointer);
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
/*
|
|
182
|
-
* Number input increment/decrement icons container
|
|
183
|
-
* Positioned absolutely for overlay on input
|
|
184
|
-
*/
|
|
185
|
-
#number-icons {
|
|
27
|
+
#input-container {
|
|
186
28
|
display: flex;
|
|
187
|
-
justify-content: space-between;
|
|
188
29
|
align-items: center;
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
--nuraly-color-icon: var(--nuraly-color-input-number-icons, #161616);
|
|
201
|
-
padding-left: var(--nuraly-input-number-icons-padding-left, var(--nuraly-number-icons-padding-left, 4px));
|
|
202
|
-
padding-right: var(--nuraly-input-number-icons-padding-right, var(--nuraly-number-icons-padding-right, 4px));
|
|
203
|
-
width: var(--nuraly-input-number-icons-width, var(--nuraly-number-icons-width, 24px));
|
|
204
|
-
height: var(--nuraly-input-number-icons-height, var(--nuraly-number-icons-height, 24px));
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
/* Number icons separator styling */
|
|
208
|
-
#icons-separator {
|
|
209
|
-
color: var(--nuraly-input-number-icons-separator-color, var(--nuraly-number-icons-separator-color));
|
|
210
|
-
padding-bottom: var(--nuraly-input-number-icons-separator-padding-bottom, var(--nuraly-number-icons-separator-padding-bottom));
|
|
211
|
-
padding-left: var(--nuraly-input-number-icons-separator-padding-left, var(--nuraly-number-icons-separator-padding-left));
|
|
212
|
-
padding-right: var(--nuraly-input-number-icons-separator-padding-right, var(--nuraly-number-icons-separator-padding-right));
|
|
30
|
+
position: relative;
|
|
31
|
+
flex: 1;
|
|
32
|
+
min-width: 0;
|
|
33
|
+
border: 1px solid var(--nr-border, #d9d9d9);
|
|
34
|
+
border-radius: 8px;
|
|
35
|
+
background-color: var(--nr-bg, #ffffff);
|
|
36
|
+
color: var(--nr-text, rgba(0, 0, 0, 0.88));
|
|
37
|
+
font-family: inherit;
|
|
38
|
+
font-size: 13px;
|
|
39
|
+
overflow: hidden;
|
|
40
|
+
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
|
213
41
|
}
|
|
214
42
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
* Applied when input is disabled - reduces opacity and disables interaction
|
|
218
|
-
*/
|
|
219
|
-
:host([disabled]) #password-icon,
|
|
220
|
-
:host([disabled]) #error-icon,
|
|
221
|
-
:host([disabled]) #warning-icon,
|
|
222
|
-
:host([disabled]) #number-icons,
|
|
223
|
-
:host([disabled]) #calendar-icon,
|
|
224
|
-
:host([disabled]) #copy-icon,
|
|
225
|
-
:host([disabled]) #clear-icon {
|
|
226
|
-
opacity: var(--nuraly-input-disabled-icon-opacity, var(--nuraly-disabled-icon-opacity));
|
|
43
|
+
:host(:not([disabled])) #input-container:hover {
|
|
44
|
+
border-color: var(--nr-primary, #7c3aed);
|
|
227
45
|
}
|
|
228
46
|
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
:host([disabled]) #clear-icon {
|
|
234
|
-
cursor: not-allowed;
|
|
47
|
+
:host(:not([disabled])) #input-container:focus-within {
|
|
48
|
+
border-color: var(--nr-primary, #7c3aed);
|
|
49
|
+
box-shadow: 0 0 0 1px rgba(124, 58, 237, 0.15);
|
|
50
|
+
outline: none;
|
|
235
51
|
}
|
|
236
52
|
|
|
237
53
|
/* ========================================
|
|
238
|
-
* INPUT
|
|
54
|
+
* INPUT ELEMENT
|
|
239
55
|
* ======================================== */
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
56
|
+
#input-container > input {
|
|
57
|
+
background-color: transparent;
|
|
58
|
+
border: none;
|
|
59
|
+
border-radius: 0;
|
|
60
|
+
outline: none;
|
|
61
|
+
box-shadow: none;
|
|
62
|
+
-webkit-appearance: none;
|
|
63
|
+
appearance: none;
|
|
64
|
+
flex: 1;
|
|
65
|
+
min-width: 0;
|
|
248
66
|
width: 100%;
|
|
67
|
+
font-family: inherit;
|
|
68
|
+
font-size: 13px;
|
|
69
|
+
color: var(--nr-text, rgba(0, 0, 0, 0.88));
|
|
70
|
+
padding: 6px 10px;
|
|
249
71
|
}
|
|
250
72
|
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
.input-addon-before {
|
|
256
|
-
background-color: var(--nuraly-input-addon-background-color, var(--nuraly-addon-background-color));
|
|
257
|
-
border: var(--nuraly-input-border, var(--nuraly-border));
|
|
258
|
-
border-right: none;
|
|
259
|
-
border-top-left-radius: var(--nuraly-input-border-radius, var(--nuraly-border-radius));
|
|
260
|
-
border-bottom-left-radius: var(--nuraly-input-border-radius, var(--nuraly-border-radius));
|
|
261
|
-
padding: var(--nuraly-input-addon-padding, var(--nuraly-addon-padding));
|
|
262
|
-
display: flex;
|
|
263
|
-
align-items: center;
|
|
264
|
-
color: var(--nuraly-input-addon-color, var(--nuraly-addon-color));
|
|
265
|
-
font-size: var(--nuraly-input-font-size, var(--nuraly-font-size));
|
|
266
|
-
white-space: nowrap;
|
|
267
|
-
min-width: 0; /* Allow shrinking */
|
|
268
|
-
flex-shrink: 0; /* Prevent shrinking */
|
|
73
|
+
::placeholder {
|
|
74
|
+
color: var(--nr-placeholder, #a8a8a8);
|
|
75
|
+
font-size: 13px;
|
|
76
|
+
font-family: inherit;
|
|
269
77
|
}
|
|
270
78
|
|
|
271
|
-
/*
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
.input-addon-after {
|
|
276
|
-
background-color: var(--nuraly-input-addon-background-color, var(--nuraly-addon-background-color));
|
|
277
|
-
border: var(--nuraly-input-border, var(--nuraly-border));
|
|
278
|
-
border-left: none;
|
|
279
|
-
border-top-right-radius: var(--nuraly-input-border-radius, var(--nuraly-border-radius));
|
|
280
|
-
border-bottom-right-radius: var(--nuraly-input-border-radius, var(--nuraly-border-radius));
|
|
281
|
-
padding: var(--nuraly-input-addon-padding, var(--nuraly-addon-padding));
|
|
282
|
-
display: flex;
|
|
283
|
-
align-items: center;
|
|
284
|
-
color: var(--nuraly-input-addon-color, var(--nuraly-addon-color));
|
|
285
|
-
font-size: var(--nuraly-input-font-size, var(--nuraly-font-size));
|
|
286
|
-
white-space: nowrap;
|
|
287
|
-
min-width: 0; /* Allow shrinking */
|
|
288
|
-
flex-shrink: 0; /* Prevent shrinking */
|
|
79
|
+
/* Remove default number spinners */
|
|
80
|
+
input::-webkit-outer-spin-button,
|
|
81
|
+
input::-webkit-inner-spin-button {
|
|
82
|
+
-webkit-appearance: none;
|
|
289
83
|
}
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
* Input container border radius adjustments when addons are present
|
|
293
|
-
* Removes border radius on sides where addons are attached
|
|
294
|
-
*/
|
|
295
|
-
.input-wrapper:has(.input-addon-before) #input-container {
|
|
296
|
-
border-top-left-radius: 0;
|
|
297
|
-
border-bottom-left-radius: 0;
|
|
298
|
-
border-left: none;
|
|
84
|
+
input[type='number'] {
|
|
85
|
+
-moz-appearance: textfield;
|
|
299
86
|
}
|
|
300
87
|
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
border-right: none;
|
|
305
|
-
}
|
|
88
|
+
/* ========================================
|
|
89
|
+
* SIZE VARIATIONS
|
|
90
|
+
* ======================================== */
|
|
306
91
|
|
|
307
|
-
/*
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
border-radius: var(--nuraly-border-radius-input, 6px);
|
|
315
|
-
|
|
316
|
-
/* Background and text styling */
|
|
317
|
-
background-color: var(--nuraly-color-input-background, #ffffff);
|
|
318
|
-
color: var(--nuraly-color-input-text, rgba(0, 0, 0, 0.88));
|
|
319
|
-
font-family: var(--nuraly-font-family-input, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto);
|
|
320
|
-
font-size: var(--nuraly-font-size-input, 14px);
|
|
321
|
-
|
|
322
|
-
/* Layout */
|
|
323
|
-
display: flex;
|
|
324
|
-
position: relative;
|
|
325
|
-
flex: 1; /* Take available space in wrapper */
|
|
326
|
-
min-width: 0; /* Allow shrinking below content size */
|
|
327
|
-
|
|
328
|
-
/* Transitions for smooth theme changes */
|
|
329
|
-
transition: var(--nuraly-transition-input, border-color 0.2s, box-shadow 0.2s);
|
|
92
|
+
/* Small */
|
|
93
|
+
div[data-size='small'] {
|
|
94
|
+
min-height: 28px;
|
|
95
|
+
}
|
|
96
|
+
div[data-size='small'] > input {
|
|
97
|
+
padding: 4px 8px;
|
|
98
|
+
font-size: 12px;
|
|
330
99
|
}
|
|
331
100
|
|
|
332
|
-
/*
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
101
|
+
/* Medium (default) */
|
|
102
|
+
div[data-size='medium'] {
|
|
103
|
+
min-height: 32px;
|
|
104
|
+
}
|
|
105
|
+
div[data-size='medium'] > input {
|
|
106
|
+
padding: 6px 10px;
|
|
107
|
+
font-size: 13px;
|
|
337
108
|
}
|
|
338
109
|
|
|
339
|
-
/*
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
color: var(--nuraly-color-input-disabled-text, rgba(0, 0, 0, 0.25));
|
|
347
|
-
cursor: not-allowed;
|
|
110
|
+
/* Large */
|
|
111
|
+
div[data-size='large'] {
|
|
112
|
+
min-height: 38px;
|
|
113
|
+
}
|
|
114
|
+
div[data-size='large'] > input {
|
|
115
|
+
padding: 8px 12px;
|
|
116
|
+
font-size: 14px;
|
|
348
117
|
}
|
|
349
118
|
|
|
350
119
|
/* ========================================
|
|
351
|
-
*
|
|
120
|
+
* VARIANT STYLES
|
|
352
121
|
* ======================================== */
|
|
353
122
|
|
|
354
|
-
/*
|
|
355
|
-
* Outlined variant - full border around input
|
|
356
|
-
* Default: light border, focus: blue border
|
|
357
|
-
*/
|
|
123
|
+
/* Outlined (default) */
|
|
358
124
|
:host([variant='outlined']) #input-container {
|
|
359
|
-
border:
|
|
360
|
-
border-radius:
|
|
361
|
-
background-color:
|
|
125
|
+
border: 1px solid var(--nr-border, #d1d5db);
|
|
126
|
+
border-radius: 8px;
|
|
127
|
+
background-color: transparent;
|
|
362
128
|
}
|
|
363
|
-
|
|
364
129
|
:host([variant='outlined']) .input-wrapper {
|
|
365
130
|
background-color: transparent;
|
|
366
131
|
}
|
|
367
|
-
|
|
132
|
+
:host([variant='outlined']:not([state='error']):not([disabled])) #input-container:hover {
|
|
133
|
+
border-color: var(--nr-primary, #7c3aed);
|
|
134
|
+
}
|
|
368
135
|
:host([variant='outlined']:not([state='error'])) #input-container:focus-within {
|
|
369
|
-
border-color: var(--
|
|
370
|
-
box-shadow:
|
|
136
|
+
border-color: var(--nr-primary, #7c3aed);
|
|
137
|
+
box-shadow: 0 0 0 1px rgba(124, 58, 237, 0.15);
|
|
371
138
|
}
|
|
372
139
|
|
|
373
|
-
/*
|
|
374
|
-
* Filled variant - background with bottom border only
|
|
375
|
-
* Subtle background with bottom border indication
|
|
376
|
-
*/
|
|
140
|
+
/* Filled */
|
|
377
141
|
:host([variant='filled']) #input-container {
|
|
378
|
-
background-color: var(--
|
|
379
|
-
border-radius:
|
|
380
|
-
border-bottom: var(--
|
|
142
|
+
background-color: var(--nr-bg-subtle, #f5f5f5);
|
|
143
|
+
border-radius: 8px;
|
|
144
|
+
border-bottom: 1px solid var(--nr-border, #d9d9d9);
|
|
381
145
|
border-top: none;
|
|
382
146
|
border-left: none;
|
|
383
147
|
border-right: none;
|
|
384
148
|
}
|
|
385
|
-
|
|
386
149
|
:host([variant='filled']) .input-wrapper {
|
|
387
150
|
background-color: transparent;
|
|
388
151
|
}
|
|
389
|
-
|
|
390
152
|
:host([variant='filled']:not([state='error'])) #input-container:focus-within {
|
|
391
|
-
border-bottom: var(--
|
|
153
|
+
border-bottom-color: var(--nr-primary, #7c3aed);
|
|
392
154
|
border-top: none;
|
|
393
155
|
border-left: none;
|
|
394
156
|
border-right: none;
|
|
395
157
|
}
|
|
396
158
|
|
|
397
|
-
/*
|
|
398
|
-
* Borderless variant - no borders, focus with outline
|
|
399
|
-
* Clean appearance with focus indication via outline
|
|
400
|
-
*/
|
|
159
|
+
/* Borderless */
|
|
401
160
|
:host([variant='borderless']) #input-container {
|
|
402
|
-
background-color:
|
|
161
|
+
background-color: transparent;
|
|
403
162
|
border: none;
|
|
404
|
-
border-radius:
|
|
163
|
+
border-radius: 8px;
|
|
405
164
|
}
|
|
406
|
-
|
|
407
165
|
:host([variant='borderless']) .input-wrapper {
|
|
408
166
|
background-color: transparent;
|
|
409
167
|
}
|
|
410
|
-
|
|
411
168
|
:host([variant='borderless']:not([state='error'])) #input-container:focus-within {
|
|
412
|
-
outline: var(--
|
|
169
|
+
outline: 1px solid var(--nr-primary, #7c3aed);
|
|
413
170
|
border: none;
|
|
414
171
|
}
|
|
415
172
|
|
|
416
|
-
/*
|
|
417
|
-
* Underlined variant - bottom border only (default/current behavior)
|
|
418
|
-
* Maintains existing behavior as default
|
|
419
|
-
*/
|
|
173
|
+
/* Underlined */
|
|
420
174
|
:host([variant='underlined']) #input-container {
|
|
421
|
-
border-bottom: var(--
|
|
175
|
+
border-bottom: 1px solid var(--nr-border, #d9d9d9);
|
|
422
176
|
border-top: none;
|
|
423
177
|
border-left: none;
|
|
424
178
|
border-right: none;
|
|
425
|
-
border-radius:
|
|
179
|
+
border-radius: 0;
|
|
426
180
|
}
|
|
427
|
-
|
|
428
181
|
:host([variant='underlined']:not([state='error'])) #input-container:focus-within {
|
|
429
|
-
border-bottom: var(--
|
|
182
|
+
border-bottom-color: var(--nr-primary, #7c3aed);
|
|
430
183
|
border-top: none;
|
|
431
184
|
border-left: none;
|
|
432
185
|
border-right: none;
|
|
433
186
|
}
|
|
434
187
|
|
|
435
|
-
/* ========================================
|
|
436
|
-
* INPUT ELEMENT STYLES
|
|
437
|
-
* ======================================== */
|
|
438
|
-
|
|
439
|
-
/*
|
|
440
|
-
* Base input element styling
|
|
441
|
-
* Full width with no default borders, using container for styling
|
|
442
|
-
*/
|
|
443
|
-
input {
|
|
444
|
-
width: 100%;
|
|
445
|
-
border: none;
|
|
446
|
-
outline: none;
|
|
447
|
-
color: var(--nuraly-input-text-color, var(--nuraly-text-color));
|
|
448
|
-
font-family: var(--nuraly-input-font-family, var(--nuraly-font-family));
|
|
449
|
-
font-size: var(--nuraly-input-font-size, var(--nuraly-font-size));
|
|
450
|
-
}
|
|
451
|
-
|
|
452
|
-
/* Remove default number input spinners */
|
|
453
|
-
/* Chrome, Safari, Edge, Opera */
|
|
454
|
-
input::-webkit-outer-spin-button,
|
|
455
|
-
input::-webkit-inner-spin-button {
|
|
456
|
-
-webkit-appearance: none;
|
|
457
|
-
}
|
|
458
|
-
|
|
459
|
-
/* Firefox */
|
|
460
|
-
input[type='number'] {
|
|
461
|
-
-moz-appearance: textfield;
|
|
462
|
-
}
|
|
463
|
-
|
|
464
188
|
/* ========================================
|
|
465
189
|
* STATE STYLES
|
|
466
190
|
* ======================================== */
|
|
467
191
|
|
|
468
|
-
/*
|
|
469
|
-
* Error state styling - works with all variants
|
|
470
|
-
* Applied when state='error' and not disabled
|
|
471
|
-
*/
|
|
192
|
+
/* Error */
|
|
472
193
|
:host(:not([disabled])[state='error']) #input-container {
|
|
473
|
-
border: var(--
|
|
474
|
-
outline: none !important;
|
|
194
|
+
border-color: var(--nr-danger, #dc2626) !important;
|
|
475
195
|
}
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
border: var(--nuraly-input-error-border, var(--nuraly-error-border)) !important;
|
|
480
|
-
outline: none !important;
|
|
196
|
+
:host(:not([disabled])[state='error']) #input-container:focus-within {
|
|
197
|
+
border-color: var(--nr-danger, #dc2626) !important;
|
|
198
|
+
box-shadow: 0 0 0 1px rgba(220, 38, 38, 0.15) !important;
|
|
481
199
|
}
|
|
482
|
-
|
|
483
200
|
:host([variant='underlined'][state='error']) #input-container,
|
|
484
201
|
:host([variant='filled'][state='error']) #input-container {
|
|
485
202
|
border-top: none !important;
|
|
486
203
|
border-left: none !important;
|
|
487
204
|
border-right: none !important;
|
|
488
|
-
border-bottom: var(--
|
|
205
|
+
border-bottom-color: var(--nr-danger, #dc2626) !important;
|
|
206
|
+
}
|
|
207
|
+
:host([variant='borderless'][state='error']) #input-container {
|
|
208
|
+
border: 1px solid var(--nr-danger, #dc2626) !important;
|
|
489
209
|
}
|
|
490
210
|
|
|
491
|
-
/*
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
211
|
+
/* Warning */
|
|
212
|
+
:host(:not([disabled])[state='warning']) #input-container {
|
|
213
|
+
border-color: var(--nr-warning, #d97706) !important;
|
|
214
|
+
}
|
|
215
|
+
:host(:not([disabled])[state='warning']) #input-container:focus-within {
|
|
216
|
+
border-color: var(--nr-warning, #d97706) !important;
|
|
217
|
+
box-shadow: 0 0 0 1px rgba(217, 119, 6, 0.15) !important;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/* Success */
|
|
221
|
+
:host(:not([disabled])[state='success']) #input-container {
|
|
222
|
+
border-color: var(--nr-success, #16a34a) !important;
|
|
223
|
+
}
|
|
224
|
+
:host(:not([disabled])[state='success']) #input-container:focus-within {
|
|
225
|
+
border-color: var(--nr-success, #16a34a) !important;
|
|
226
|
+
box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.15) !important;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
/* Warning/error — number icon position */
|
|
495
230
|
:host([state='error']) input[type='number'] ~ #number-icons,
|
|
496
231
|
:host([state='warning']) input[type='number'] ~ #number-icons {
|
|
497
232
|
position: static;
|
|
498
|
-
padding-left:
|
|
233
|
+
padding-left: 4px;
|
|
499
234
|
}
|
|
500
235
|
|
|
501
236
|
/* ========================================
|
|
502
|
-
*
|
|
237
|
+
* DISABLED
|
|
503
238
|
* ======================================== */
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
* Applied to slotted label elements
|
|
508
|
-
*/
|
|
509
|
-
::slotted([slot='label']) {
|
|
510
|
-
color: var(--nuraly-input-label-color, var(--nuraly-label-color));
|
|
511
|
-
font-size: var(--nuraly-input-label-font-size, var(--nuraly-label-font-size));
|
|
512
|
-
padding-bottom: var(--nuraly-input-label-padding-bottom, var(--nuraly-label-padding-bottom));
|
|
239
|
+
:host([disabled]) {
|
|
240
|
+
opacity: 0.5;
|
|
241
|
+
pointer-events: none;
|
|
513
242
|
}
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
243
|
+
:host([disabled]) .input-wrapper {
|
|
244
|
+
background-color: #f4f4f4;
|
|
245
|
+
}
|
|
246
|
+
:host([disabled]) #input-container {
|
|
247
|
+
background-color: #f5f5f5;
|
|
248
|
+
border-color: var(--nr-border, #d9d9d9);
|
|
249
|
+
cursor: not-allowed;
|
|
250
|
+
}
|
|
251
|
+
:host([disabled]) #input-container > input {
|
|
252
|
+
background-color: transparent;
|
|
253
|
+
cursor: not-allowed;
|
|
254
|
+
color: var(--nr-disabled, rgba(0, 0, 0, 0.25));
|
|
255
|
+
}
|
|
256
|
+
:host([disabled]) ::placeholder {
|
|
257
|
+
color: var(--nr-disabled, #c6c6c6);
|
|
258
|
+
}
|
|
259
|
+
:host([disabled]) #password-icon,
|
|
260
|
+
:host([disabled]) #error-icon,
|
|
261
|
+
:host([disabled]) #warning-icon,
|
|
262
|
+
:host([disabled]) #number-icons,
|
|
263
|
+
:host([disabled]) #calendar-icon,
|
|
264
|
+
:host([disabled]) #copy-icon,
|
|
265
|
+
:host([disabled]) #clear-icon {
|
|
266
|
+
opacity: 0.5;
|
|
267
|
+
}
|
|
268
|
+
:host([disabled]) #password-icon,
|
|
269
|
+
:host([disabled]) #number-icons,
|
|
270
|
+
:host([disabled]) #copy-icon,
|
|
271
|
+
:host([disabled]) #clear-icon {
|
|
272
|
+
cursor: not-allowed;
|
|
535
273
|
}
|
|
536
274
|
|
|
537
|
-
/*
|
|
538
|
-
*
|
|
539
|
-
*
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
275
|
+
/* ========================================
|
|
276
|
+
* ICON STYLES
|
|
277
|
+
* ======================================== */
|
|
278
|
+
#input-container nr-icon {
|
|
279
|
+
display: flex;
|
|
280
|
+
align-items: center;
|
|
281
|
+
flex-shrink: 0;
|
|
282
|
+
height: 100%;
|
|
283
|
+
max-height: 100%;
|
|
543
284
|
}
|
|
544
285
|
|
|
545
|
-
|
|
546
|
-
color: var(--
|
|
286
|
+
#warning-icon {
|
|
287
|
+
--nuraly-color-icon: var(--nr-warning, #f1c21b);
|
|
547
288
|
}
|
|
289
|
+
#error-icon {
|
|
290
|
+
--nuraly-color-icon: var(--nr-danger, #da1e28);
|
|
291
|
+
}
|
|
292
|
+
#calendar-icon {
|
|
293
|
+
--nuraly-color-icon: var(--nr-text, #161616);
|
|
294
|
+
}
|
|
295
|
+
#password-icon {
|
|
296
|
+
padding-left: 8px;
|
|
297
|
+
padding-right: 8px;
|
|
298
|
+
cursor: pointer;
|
|
299
|
+
color: var(--nr-text-secondary, #6b7280);
|
|
300
|
+
transition: color 0.15s;
|
|
301
|
+
}
|
|
302
|
+
#password-icon:hover { color: var(--nr-primary, #7c3aed); }
|
|
548
303
|
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
color: var(--nuraly-input-disabled-helper-text-color, var(--nuraly-disabled-helper-text-color));
|
|
304
|
+
#copy-icon {
|
|
305
|
+
padding-right: 8px;
|
|
306
|
+
cursor: pointer;
|
|
307
|
+
color: var(--nr-text-secondary, #6b7280);
|
|
308
|
+
transition: color 0.15s;
|
|
555
309
|
}
|
|
310
|
+
#copy-icon:hover { color: var(--nr-primary, #7c3aed); }
|
|
556
311
|
|
|
557
|
-
|
|
558
|
-
|
|
312
|
+
#clear-icon {
|
|
313
|
+
padding-right: 8px;
|
|
314
|
+
cursor: pointer;
|
|
315
|
+
color: var(--nr-text-secondary, #6b7280);
|
|
316
|
+
transition: color 0.15s;
|
|
559
317
|
}
|
|
318
|
+
#clear-icon:hover { color: var(--nr-danger, #dc2626); }
|
|
560
319
|
|
|
561
|
-
/*
|
|
562
|
-
|
|
563
|
-
* Centers the prefix content vertically and horizontally
|
|
564
|
-
*/
|
|
565
|
-
.input-prefix {
|
|
320
|
+
/* Number icons */
|
|
321
|
+
#number-icons {
|
|
566
322
|
display: flex;
|
|
323
|
+
justify-content: space-between;
|
|
567
324
|
align-items: center;
|
|
568
|
-
|
|
325
|
+
cursor: pointer;
|
|
326
|
+
position: absolute;
|
|
327
|
+
right: 0;
|
|
328
|
+
top: 0;
|
|
329
|
+
height: 100%;
|
|
330
|
+
width: 50px;
|
|
331
|
+
padding-right: 8px;
|
|
332
|
+
}
|
|
333
|
+
#number-icons nr-icon {
|
|
334
|
+
color: var(--nr-text-secondary, #6b7280);
|
|
335
|
+
padding-left: 4px;
|
|
336
|
+
padding-right: 4px;
|
|
337
|
+
width: 24px;
|
|
338
|
+
height: 24px;
|
|
339
|
+
transition: color 0.15s;
|
|
340
|
+
}
|
|
341
|
+
#number-icons nr-icon:hover {
|
|
342
|
+
color: var(--nr-primary, #7c3aed);
|
|
343
|
+
}
|
|
344
|
+
#icons-separator {
|
|
345
|
+
color: var(--nr-border, #d9d9d9);
|
|
569
346
|
}
|
|
570
347
|
|
|
571
|
-
/*
|
|
572
|
-
*
|
|
573
|
-
*
|
|
574
|
-
|
|
575
|
-
|
|
348
|
+
/* ========================================
|
|
349
|
+
* ADDON STYLES
|
|
350
|
+
* ======================================== */
|
|
351
|
+
.input-addon-before {
|
|
352
|
+
background-color: var(--nr-bg-subtle, #fafafa);
|
|
353
|
+
border: 1px solid var(--nr-border, #d9d9d9);
|
|
354
|
+
border-right: none;
|
|
355
|
+
border-top-left-radius: 8px;
|
|
356
|
+
border-bottom-left-radius: 8px;
|
|
357
|
+
padding: 0 10px;
|
|
576
358
|
display: flex;
|
|
577
359
|
align-items: center;
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
360
|
+
color: var(--nr-text-secondary, #666);
|
|
361
|
+
font-size: 13px;
|
|
362
|
+
white-space: nowrap;
|
|
363
|
+
flex-shrink: 0;
|
|
364
|
+
}
|
|
365
|
+
.input-addon-after {
|
|
366
|
+
background-color: var(--nr-bg-subtle, #fafafa);
|
|
367
|
+
border: 1px solid var(--nr-border, #d9d9d9);
|
|
368
|
+
border-left: none;
|
|
369
|
+
border-top-right-radius: 8px;
|
|
370
|
+
border-bottom-right-radius: 8px;
|
|
371
|
+
padding: 0 10px;
|
|
372
|
+
display: flex;
|
|
373
|
+
align-items: center;
|
|
374
|
+
color: var(--nr-text-secondary, #666);
|
|
375
|
+
font-size: 13px;
|
|
376
|
+
white-space: nowrap;
|
|
581
377
|
flex-shrink: 0;
|
|
582
378
|
}
|
|
583
379
|
|
|
584
|
-
/*
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
380
|
+
/* Border radius adjustments when addons are present */
|
|
381
|
+
.input-wrapper:has(.input-addon-before) #input-container {
|
|
382
|
+
border-top-left-radius: 0;
|
|
383
|
+
border-bottom-left-radius: 0;
|
|
384
|
+
border-left: none;
|
|
385
|
+
}
|
|
386
|
+
.input-wrapper:has(.input-addon-after) #input-container {
|
|
387
|
+
border-top-right-radius: 0;
|
|
388
|
+
border-bottom-right-radius: 0;
|
|
389
|
+
border-right: none;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
/* ========================================
|
|
393
|
+
* PREFIX / SUFFIX
|
|
394
|
+
* ======================================== */
|
|
395
|
+
.input-prefix {
|
|
589
396
|
display: flex;
|
|
590
397
|
align-items: center;
|
|
591
398
|
justify-content: center;
|
|
592
399
|
}
|
|
593
|
-
|
|
594
|
-
/*
|
|
595
|
-
* Suffix slot styling
|
|
596
|
-
* Applied to slotted suffix content (icons, text, etc.)
|
|
597
|
-
*/
|
|
598
|
-
::slotted([slot='suffix']) {
|
|
400
|
+
.input-suffix {
|
|
599
401
|
display: flex;
|
|
600
402
|
align-items: center;
|
|
601
|
-
|
|
602
|
-
color: var(--nuraly-input-suffix-color, var(--nuraly-suffix-color));
|
|
603
|
-
font-size: var(--nuraly-input-suffix-font-size, var(--nuraly-suffix-font-size));
|
|
604
|
-
flex-shrink: 0;
|
|
403
|
+
justify-content: center;
|
|
605
404
|
}
|
|
606
405
|
|
|
607
|
-
/*
|
|
608
|
-
* Disabled state for prefix and suffix slots
|
|
609
|
-
* Applied when input is disabled
|
|
610
|
-
*/
|
|
611
|
-
:host([disabled]) ::slotted([slot='prefix']),
|
|
612
|
-
:host([disabled]) ::slotted([slot='suffix']) {
|
|
613
|
-
opacity: var(--nuraly-input-disabled-icon-opacity, var(--nuraly-disabled-icon-opacity));
|
|
614
|
-
color: var(--nuraly-input-disabled-prefix-suffix-color, var(--nuraly-disabled-prefix-suffix-color));
|
|
615
|
-
}
|
|
616
|
-
`;
|
|
617
|
-
/**
|
|
618
|
-
* Size variation styles for the input component
|
|
619
|
-
* Defines padding and spacing for different input sizes
|
|
620
|
-
*/
|
|
621
|
-
const sizeInputStyle = css `
|
|
622
406
|
/* ========================================
|
|
623
|
-
*
|
|
407
|
+
* LABEL STYLES
|
|
624
408
|
* ======================================== */
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
padding-
|
|
629
|
-
|
|
630
|
-
padding-left: var(--nuraly-input-large-padding-left, var(--nuraly-large-padding-left));
|
|
631
|
-
padding-right: var(--nuraly-input-large-padding-right, var(--nuraly-large-padding-right));
|
|
409
|
+
::slotted([slot='label']) {
|
|
410
|
+
color: var(--nr-text-secondary, #374151);
|
|
411
|
+
font-size: 13px;
|
|
412
|
+
padding-bottom: 4px;
|
|
413
|
+
font-weight: 500;
|
|
632
414
|
}
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
div[data-size='medium'] {
|
|
636
|
-
padding-top: var(--nuraly-input-medium-padding-top, var(--nuraly-medium-padding-top));
|
|
637
|
-
padding-bottom: var(--nuraly-input-medium-padding-bottom, var(--nuraly-medium-padding-bottom));
|
|
638
|
-
padding-left: var(--nuraly-input-medium-padding-left, var(--nuraly-medium-padding-left));
|
|
639
|
-
padding-right: var(--nuraly-input-medium-padding-right, var(--nuraly-medium-padding-right));
|
|
415
|
+
:host([disabled]) ::slotted([slot='label']) {
|
|
416
|
+
color: var(--nr-disabled, #9ca3af);
|
|
640
417
|
}
|
|
641
418
|
|
|
642
|
-
/*
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
419
|
+
/* ========================================
|
|
420
|
+
* HELPER TEXT STYLES
|
|
421
|
+
* ======================================== */
|
|
422
|
+
::slotted([slot='helper-text']) {
|
|
423
|
+
color: var(--nr-text-secondary, #6b7280);
|
|
424
|
+
font-size: 12px;
|
|
425
|
+
padding-top: 4px;
|
|
426
|
+
word-wrap: break-word;
|
|
427
|
+
overflow-wrap: break-word;
|
|
428
|
+
line-height: 1.4;
|
|
429
|
+
}
|
|
430
|
+
:host([state='error']) ::slotted([slot='helper-text']) {
|
|
431
|
+
color: var(--nr-danger, #dc2626);
|
|
432
|
+
}
|
|
433
|
+
:host([state='warning']) ::slotted([slot='helper-text']) {
|
|
434
|
+
color: var(--nr-warning, #d97706);
|
|
435
|
+
}
|
|
436
|
+
:host([disabled]) ::slotted([slot='helper-text']) {
|
|
437
|
+
color: var(--nr-disabled, #9ca3af);
|
|
648
438
|
}
|
|
649
439
|
|
|
650
|
-
/*
|
|
651
|
-
*
|
|
652
|
-
*
|
|
653
|
-
*/
|
|
440
|
+
/* ========================================
|
|
441
|
+
* CHARACTER COUNT
|
|
442
|
+
* ======================================== */
|
|
654
443
|
.character-count {
|
|
655
|
-
font-size:
|
|
656
|
-
color: var(--
|
|
444
|
+
font-size: 12px;
|
|
445
|
+
color: var(--nr-text-secondary, #6b7280);
|
|
657
446
|
text-align: right;
|
|
658
|
-
margin-top:
|
|
659
|
-
font-family:
|
|
447
|
+
margin-top: 4px;
|
|
448
|
+
font-family: inherit;
|
|
660
449
|
}
|
|
661
|
-
|
|
662
|
-
/* Character count over limit styling */
|
|
663
450
|
.character-count[data-over-limit] {
|
|
664
|
-
color: var(--
|
|
451
|
+
color: var(--nr-danger, #dc2626);
|
|
665
452
|
}
|
|
666
453
|
|
|
667
454
|
/* ========================================
|
|
668
455
|
* VALIDATION MESSAGE STYLES
|
|
669
456
|
* ======================================== */
|
|
670
|
-
|
|
671
|
-
/*
|
|
672
|
-
* Base validation message styling
|
|
673
|
-
* Common styles for error and warning messages
|
|
674
|
-
*/
|
|
675
457
|
.validation-message {
|
|
676
|
-
font-size:
|
|
677
|
-
font-family:
|
|
678
|
-
margin-top:
|
|
679
|
-
padding:
|
|
680
|
-
|
|
681
|
-
/* Prevent text overflow and ensure proper wrapping without affecting parent width */
|
|
458
|
+
font-size: 12px;
|
|
459
|
+
font-family: inherit;
|
|
460
|
+
margin-top: 4px;
|
|
461
|
+
padding: 0;
|
|
682
462
|
word-wrap: break-word;
|
|
683
|
-
word-break: break-word;
|
|
684
463
|
overflow-wrap: break-word;
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
max-width: 100%;
|
|
688
|
-
width: 0;
|
|
689
|
-
min-width: 100%;
|
|
690
|
-
box-sizing: border-box;
|
|
691
|
-
line-height: var(--nuraly-input-validation-message-line-height, var(--nuraly-validation-message-line-height, 1.4));
|
|
692
|
-
}
|
|
693
|
-
|
|
694
|
-
/*
|
|
695
|
-
* Error validation message styling
|
|
696
|
-
* Applied when validation message has error class
|
|
697
|
-
*/
|
|
464
|
+
line-height: 1.4;
|
|
465
|
+
}
|
|
698
466
|
.validation-message.error {
|
|
699
|
-
color: var(--
|
|
467
|
+
color: var(--nr-danger, #dc2626);
|
|
700
468
|
}
|
|
701
|
-
|
|
702
|
-
/*
|
|
703
|
-
* Warning validation message styling
|
|
704
|
-
* Applied when validation message has warning class
|
|
705
|
-
*/
|
|
706
469
|
.validation-message.warning {
|
|
707
|
-
color: var(--
|
|
470
|
+
color: var(--nr-warning, #d97706);
|
|
708
471
|
}
|
|
709
|
-
|
|
710
|
-
/*
|
|
711
|
-
* Disabled state for validation messages
|
|
712
|
-
* Applied when input is disabled
|
|
713
|
-
*/
|
|
714
472
|
:host([disabled]) .validation-message {
|
|
715
|
-
opacity:
|
|
716
|
-
color: var(--nuraly-input-disabled-validation-message-color, var(--nuraly-disabled-validation-message-color));
|
|
473
|
+
opacity: 0.6;
|
|
717
474
|
}
|
|
718
475
|
|
|
719
|
-
/*
|
|
720
|
-
* Validation icon styles
|
|
721
|
-
* Base styles for validation feedback icons
|
|
722
|
-
*/
|
|
476
|
+
/* Validation icon */
|
|
723
477
|
.validation-icon {
|
|
724
478
|
width: 16px;
|
|
725
479
|
height: 16px;
|
|
@@ -727,84 +481,27 @@ const sizeInputStyle = css `
|
|
|
727
481
|
align-items: center;
|
|
728
482
|
justify-content: center;
|
|
729
483
|
}
|
|
730
|
-
|
|
731
|
-
/*
|
|
732
|
-
* Loading validation icon with hourglass animation
|
|
733
|
-
* Applied when async validation is in progress
|
|
734
|
-
*/
|
|
735
484
|
.validation-icon.validation-loading {
|
|
736
|
-
color: var(--
|
|
737
|
-
animation:
|
|
485
|
+
color: var(--nr-primary, #7c3aed);
|
|
486
|
+
animation: nr-input-hourglass 2s ease-in-out infinite;
|
|
738
487
|
transform-origin: center;
|
|
739
488
|
}
|
|
740
|
-
|
|
741
|
-
/*
|
|
742
|
-
* Error validation icon styling
|
|
743
|
-
* Applied when validation fails
|
|
744
|
-
*/
|
|
745
489
|
.validation-icon.validation-error {
|
|
746
|
-
color: var(--
|
|
490
|
+
color: var(--nr-danger, #dc2626);
|
|
747
491
|
}
|
|
748
|
-
|
|
749
|
-
/*
|
|
750
|
-
* Warning validation icon styling
|
|
751
|
-
* Applied when validation has warnings
|
|
752
|
-
*/
|
|
753
492
|
.validation-icon.validation-warning {
|
|
754
|
-
color: var(--
|
|
493
|
+
color: var(--nr-warning, #d97706);
|
|
755
494
|
}
|
|
756
|
-
|
|
757
|
-
/*
|
|
758
|
-
* Success validation icon styling
|
|
759
|
-
* Applied when validation passes
|
|
760
|
-
*/
|
|
761
495
|
.validation-icon.validation-success {
|
|
762
|
-
color: var(--
|
|
763
|
-
}
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
transform: scale(1);
|
|
773
|
-
}
|
|
774
|
-
25% {
|
|
775
|
-
opacity: 1;
|
|
776
|
-
transform: scale(1.03);
|
|
777
|
-
}
|
|
778
|
-
50% {
|
|
779
|
-
opacity: 0.8;
|
|
780
|
-
transform: scale(1);
|
|
781
|
-
}
|
|
782
|
-
75% {
|
|
783
|
-
opacity: 1;
|
|
784
|
-
transform: scale(1.03);
|
|
785
|
-
}
|
|
786
|
-
100% {
|
|
787
|
-
opacity: 0.7;
|
|
788
|
-
transform: scale(1);
|
|
789
|
-
}
|
|
790
|
-
}
|
|
791
|
-
|
|
792
|
-
/*
|
|
793
|
-
* Alternative pulse animation option
|
|
794
|
-
* Uncomment this and change animation above to use pulse instead of hourglass
|
|
795
|
-
*/
|
|
796
|
-
/*
|
|
797
|
-
@keyframes validation-pulse {
|
|
798
|
-
0%, 100% {
|
|
799
|
-
opacity: 1;
|
|
800
|
-
transform: scale(1);
|
|
801
|
-
}
|
|
802
|
-
50% {
|
|
803
|
-
opacity: 0.7;
|
|
804
|
-
transform: scale(1.1);
|
|
805
|
-
}
|
|
806
|
-
}
|
|
807
|
-
*/
|
|
496
|
+
color: var(--nr-success, #16a34a);
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
@keyframes nr-input-hourglass {
|
|
500
|
+
0% { opacity: 0.7; transform: scale(1); }
|
|
501
|
+
25% { opacity: 1; transform: scale(1.03); }
|
|
502
|
+
50% { opacity: 0.8; transform: scale(1); }
|
|
503
|
+
75% { opacity: 1; transform: scale(1.03); }
|
|
504
|
+
100% { opacity: 0.7; transform: scale(1); }
|
|
505
|
+
}
|
|
808
506
|
`;
|
|
809
|
-
export const styles = [inputStyle, sizeInputStyle];
|
|
810
507
|
//# sourceMappingURL=input.style.js.map
|