snice 3.1.0 → 3.2.0
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 +90 -41
- package/dist/components/accordion/snice-accordion-item.js +1 -1
- package/dist/components/accordion/snice-accordion-item.js.map +1 -1
- package/dist/components/accordion/snice-accordion.js +1 -1
- package/dist/components/accordion/snice-accordion.js.map +1 -1
- package/dist/components/alert/snice-alert.js +1 -1
- package/dist/components/alert/snice-alert.js.map +1 -1
- package/dist/components/avatar/snice-avatar.js +1 -1
- package/dist/components/avatar/snice-avatar.js.map +1 -1
- package/dist/components/badge/snice-badge.js +1 -1
- package/dist/components/badge/snice-badge.js.map +1 -1
- package/dist/components/banner/snice-banner.d.ts +22 -0
- package/dist/components/banner/snice-banner.js +180 -0
- package/dist/components/banner/snice-banner.js.map +1 -0
- package/dist/components/banner/snice-banner.types.d.ts +14 -0
- package/dist/components/breadcrumbs/snice-breadcrumbs.js +1 -1
- package/dist/components/breadcrumbs/snice-breadcrumbs.js.map +1 -1
- package/dist/components/button/snice-button.js +1 -1
- package/dist/components/button/snice-button.js.map +1 -1
- package/dist/components/card/snice-card.js +1 -1
- package/dist/components/card/snice-card.js.map +1 -1
- package/dist/components/checkbox/snice-checkbox.js +1 -1
- package/dist/components/checkbox/snice-checkbox.js.map +1 -1
- package/dist/components/chip/snice-chip.js +1 -1
- package/dist/components/chip/snice-chip.js.map +1 -1
- package/dist/components/color-display/snice-color-display.d.ts +14 -0
- package/dist/components/color-display/snice-color-display.js +151 -0
- package/dist/components/color-display/snice-color-display.js.map +1 -0
- package/dist/components/color-display/snice-color-display.types.d.ts +10 -0
- package/dist/components/color-picker/snice-color-picker.d.ts +50 -0
- package/dist/components/color-picker/snice-color-picker.js +489 -0
- package/dist/components/color-picker/snice-color-picker.js.map +1 -0
- package/dist/components/color-picker/snice-color-picker.types.d.ts +19 -0
- package/dist/components/date-picker/snice-date-picker.js +1 -1
- package/dist/components/date-picker/snice-date-picker.js.map +1 -1
- package/dist/components/divider/snice-divider.js +1 -1
- package/dist/components/divider/snice-divider.js.map +1 -1
- package/dist/components/drawer/snice-drawer.js +1 -1
- package/dist/components/drawer/snice-drawer.js.map +1 -1
- package/dist/components/empty-state/snice-empty-state.d.ts +13 -0
- package/dist/components/empty-state/snice-empty-state.js +121 -0
- package/dist/components/empty-state/snice-empty-state.js.map +1 -0
- package/dist/components/empty-state/snice-empty-state.types.d.ts +9 -0
- package/dist/components/file-upload/snice-file-upload.d.ts +45 -0
- package/dist/components/file-upload/snice-file-upload.js +394 -0
- package/dist/components/file-upload/snice-file-upload.js.map +1 -0
- package/dist/components/file-upload/snice-file-upload.types.d.ts +22 -0
- package/dist/components/image/snice-image.d.ts +22 -0
- package/dist/components/image/snice-image.js +201 -0
- package/dist/components/image/snice-image.js.map +1 -0
- package/dist/components/image/snice-image.types.d.ts +17 -0
- package/dist/components/input/snice-input.js +1 -1
- package/dist/components/input/snice-input.js.map +1 -1
- package/dist/components/kpi/snice-kpi.d.ts +16 -0
- package/dist/components/kpi/snice-kpi.js +162 -0
- package/dist/components/kpi/snice-kpi.js.map +1 -0
- package/dist/components/kpi/snice-kpi.types.d.ts +12 -0
- package/dist/components/layout/snice-layout-blog.js +1 -1
- package/dist/components/layout/snice-layout-blog.js.map +1 -1
- package/dist/components/layout/snice-layout-card.js +1 -1
- package/dist/components/layout/snice-layout-card.js.map +1 -1
- package/dist/components/layout/snice-layout-centered.js +1 -1
- package/dist/components/layout/snice-layout-centered.js.map +1 -1
- package/dist/components/layout/snice-layout-dashboard.js +1 -1
- package/dist/components/layout/snice-layout-dashboard.js.map +1 -1
- package/dist/components/layout/snice-layout-fullscreen.js +1 -1
- package/dist/components/layout/snice-layout-fullscreen.js.map +1 -1
- package/dist/components/layout/snice-layout-landing.js +1 -1
- package/dist/components/layout/snice-layout-landing.js.map +1 -1
- package/dist/components/layout/snice-layout-minimal.js +1 -1
- package/dist/components/layout/snice-layout-minimal.js.map +1 -1
- package/dist/components/layout/snice-layout-sidebar.js +1 -1
- package/dist/components/layout/snice-layout-sidebar.js.map +1 -1
- package/dist/components/layout/snice-layout-split.js +1 -1
- package/dist/components/layout/snice-layout-split.js.map +1 -1
- package/dist/components/layout/snice-layout.js +1 -1
- package/dist/components/layout/snice-layout.js.map +1 -1
- package/dist/components/link/snice-link.d.ts +13 -0
- package/dist/components/link/snice-link.js +137 -0
- package/dist/components/link/snice-link.js.map +1 -0
- package/dist/components/link/snice-link.types.d.ts +11 -0
- package/dist/components/login/snice-login.js +1 -1
- package/dist/components/login/snice-login.js.map +1 -1
- package/dist/components/modal/snice-modal.js +1 -1
- package/dist/components/modal/snice-modal.js.map +1 -1
- package/dist/components/nav/snice-nav.js +1 -1
- package/dist/components/nav/snice-nav.js.map +1 -1
- package/dist/components/progress/snice-progress.js +1 -1
- package/dist/components/progress/snice-progress.js.map +1 -1
- package/dist/components/radio/snice-radio.js +1 -1
- package/dist/components/radio/snice-radio.js.map +1 -1
- package/dist/components/select/snice-select.js +1 -1
- package/dist/components/select/snice-select.js.map +1 -1
- package/dist/components/skeleton/snice-skeleton.js +1 -1
- package/dist/components/skeleton/snice-skeleton.js.map +1 -1
- package/dist/components/slider/snice-slider.d.ts +53 -0
- package/dist/components/slider/snice-slider.js +479 -0
- package/dist/components/slider/snice-slider.js.map +1 -0
- package/dist/components/slider/snice-slider.types.d.ts +26 -0
- package/dist/components/snice-cell-C0slgOpe.js +4 -0
- package/dist/components/snice-cell-C0slgOpe.js.map +1 -0
- package/dist/components/sparkline/snice-sparkline.d.ts +21 -0
- package/dist/components/sparkline/snice-sparkline.js +228 -0
- package/dist/components/sparkline/snice-sparkline.js.map +1 -0
- package/dist/components/sparkline/snice-sparkline.types.d.ts +16 -0
- package/dist/components/spinner/snice-spinner.d.ts +10 -0
- package/dist/components/spinner/snice-spinner.js +109 -0
- package/dist/components/spinner/snice-spinner.js.map +1 -0
- package/dist/components/spinner/snice-spinner.types.d.ts +8 -0
- package/dist/components/stepper/snice-stepper-panel.d.ts +8 -0
- package/dist/components/stepper/snice-stepper-panel.js +70 -0
- package/dist/components/stepper/snice-stepper-panel.js.map +1 -0
- package/dist/components/stepper/snice-stepper-panel.types.d.ts +4 -0
- package/dist/components/stepper/snice-stepper.d.ts +15 -0
- package/dist/components/stepper/snice-stepper.js +163 -0
- package/dist/components/stepper/snice-stepper.js.map +1 -0
- package/dist/components/stepper/snice-stepper.types.d.ts +13 -0
- package/dist/components/switch/snice-switch.js +1 -1
- package/dist/components/switch/snice-switch.js.map +1 -1
- package/dist/components/table/snice-cell-actions.js +1 -1
- package/dist/components/table/snice-cell-actions.js.map +1 -1
- package/dist/components/table/snice-cell-boolean.js +1 -1
- package/dist/components/table/snice-cell-color.js +1 -1
- package/dist/components/table/snice-cell-color.js.map +1 -1
- package/dist/components/table/snice-cell-currency.js +1 -1
- package/dist/components/table/snice-cell-date.js +1 -1
- package/dist/components/table/snice-cell-duration.js +1 -1
- package/dist/components/table/snice-cell-email.js +1 -1
- package/dist/components/table/snice-cell-email.js.map +1 -1
- package/dist/components/table/snice-cell-filesize.js +1 -1
- package/dist/components/table/snice-cell-image.js +1 -1
- package/dist/components/table/snice-cell-image.js.map +1 -1
- package/dist/components/table/snice-cell-json.js +1 -1
- package/dist/components/table/snice-cell-json.js.map +1 -1
- package/dist/components/table/snice-cell-link.js +1 -1
- package/dist/components/table/snice-cell-link.js.map +1 -1
- package/dist/components/table/snice-cell-location.js +1 -1
- package/dist/components/table/snice-cell-location.js.map +1 -1
- package/dist/components/table/snice-cell-number.js +1 -1
- package/dist/components/table/snice-cell-percentage.js +1 -1
- package/dist/components/table/snice-cell-percentage.js.map +1 -1
- package/dist/components/table/snice-cell-phone.js +1 -1
- package/dist/components/table/snice-cell-phone.js.map +1 -1
- package/dist/components/table/snice-cell-progress.js +1 -1
- package/dist/components/table/snice-cell-rating.js +1 -1
- package/dist/components/table/snice-cell-sparkline.js +1 -1
- package/dist/components/table/snice-cell-status.js +1 -1
- package/dist/components/table/snice-cell-status.js.map +1 -1
- package/dist/components/table/snice-cell-tag.js +1 -1
- package/dist/components/table/snice-cell-tag.js.map +1 -1
- package/dist/components/table/snice-cell-text.js +1 -1
- package/dist/components/table/snice-cell.js +1 -1
- package/dist/components/table/snice-header.js +1 -1
- package/dist/components/table/snice-header.js.map +1 -1
- package/dist/components/table/snice-row.js +2 -2
- package/dist/components/table/snice-row.js.map +1 -1
- package/dist/components/table/snice-table.js +1 -1
- package/dist/components/tabs/snice-tab-panel.js +1 -1
- package/dist/components/tabs/snice-tab-panel.js.map +1 -1
- package/dist/components/tabs/snice-tab.js +1 -1
- package/dist/components/tabs/snice-tab.js.map +1 -1
- package/dist/components/tabs/snice-tabs.js +1 -1
- package/dist/components/tabs/snice-tabs.js.map +1 -1
- package/dist/components/textarea/snice-textarea.d.ts +52 -0
- package/dist/components/textarea/snice-textarea.js +407 -0
- package/dist/components/textarea/snice-textarea.js.map +1 -0
- package/dist/components/textarea/snice-textarea.types.d.ts +30 -0
- package/dist/components/timeline/snice-timeline.d.ts +11 -0
- package/dist/components/timeline/snice-timeline.js +112 -0
- package/dist/components/timeline/snice-timeline.js.map +1 -0
- package/dist/components/timeline/snice-timeline.types.d.ts +16 -0
- package/dist/components/tooltip/snice-tooltip.js +2 -2
- package/dist/components/tooltip/snice-tooltip.js.map +1 -1
- package/dist/index.cjs +125 -158
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +125 -158
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +125 -158
- package/dist/index.iife.js.map +1 -1
- package/dist/parts.d.ts +13 -16
- package/dist/symbols.cjs +1 -1
- package/dist/symbols.esm.js +1 -1
- package/dist/template.d.ts +0 -1
- package/dist/transitions.cjs +1 -1
- package/dist/transitions.esm.js +1 -1
- package/docs/ai/README.md +10 -1
- package/docs/ai/components/banner.md +84 -0
- package/docs/ai/components/color-display.md +48 -0
- package/docs/ai/components/color-picker.md +75 -0
- package/docs/ai/components/empty-state.md +72 -0
- package/docs/ai/components/file-upload.md +93 -0
- package/docs/ai/components/image.md +60 -0
- package/docs/ai/components/kpi.md +158 -0
- package/docs/ai/components/link.md +77 -0
- package/docs/ai/components/slider.md +87 -0
- package/docs/ai/components/sparkline.md +168 -0
- package/docs/ai/components/spinner.md +47 -0
- package/docs/ai/components/stepper.md +216 -0
- package/docs/ai/components/textarea.md +87 -0
- package/docs/ai/components/timeline.md +77 -0
- package/docs/components/banner.md +106 -0
- package/docs/components/color-display.md +96 -0
- package/docs/components/color-picker.md +81 -0
- package/docs/components/empty-state.md +79 -0
- package/docs/components/file-upload.md +263 -0
- package/docs/components/image.md +110 -0
- package/docs/components/kpi.md +251 -0
- package/docs/components/link.md +229 -0
- package/docs/components/slider.md +297 -0
- package/docs/components/sparkline.md +293 -0
- package/docs/components/spinner.md +63 -0
- package/docs/components/stepper.md +410 -0
- package/docs/components/textarea.md +235 -0
- package/docs/components/timeline.md +192 -0
- package/package.json +2 -1
- package/dist/components/snice-cell-BLFVdxPp.js +0 -4
- package/dist/components/snice-cell-BLFVdxPp.js.map +0 -1
|
@@ -0,0 +1,489 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from 'tslib';
|
|
2
|
+
import { element, property, query, render, styles, ready, watch, dispatch, html, css } from 'snice';
|
|
3
|
+
|
|
4
|
+
var cssContent = ":host{display:block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);contain:layout style paint}.color-picker-wrapper{display:flex;flex-direction:column;gap:var(--snice-spacing-xs,.5rem)}.label{font-size:var(--snice-font-size-sm, .875rem);font-weight:var(--snice-font-weight-medium,500);color:var(--snice-color-text,rgb(23 23 23));margin-bottom:var(--snice-spacing-2xs,.25rem)}.label--required::after{content:' *';color:var(--snice-color-danger,rgb(220 38 38))}.picker-container{display:flex;align-items:center;gap:var(--snice-spacing-sm,.75rem)}.color-swatch{position:relative;width:40px;height:40px;border-radius:var(--snice-border-radius-md,.375rem);border:2px solid var(--snice-color-border,rgb(226 226 226));cursor:pointer;transition:all var(--snice-transition-fast, 150ms);overflow:hidden}.color-swatch:hover:not(.color-swatch--disabled){border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:var(--snice-shadow-sm,0 1px 2px 0 rgb(0 0 0 / .05))}.color-swatch--small{width:32px;height:32px}.color-swatch--medium{width:40px;height:40px}.color-swatch--large{width:48px;height:48px}.color-swatch--disabled{opacity:.5;cursor:not-allowed}.color-swatch--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.swatch-inner{width:100%;height:100%}.color-input-wrapper{flex:1;position:relative}.color-input{width:100%;padding:var(--snice-spacing-xs,.5rem) var(--snice-spacing-sm,.75rem);font-size:var(--snice-font-size-sm, .875rem);font-family:monospace;color:var(--snice-color-text,rgb(23 23 23));background:var(--snice-color-background,rgb(255 255 255));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.375rem);transition:all var(--snice-transition-fast, 150ms);outline:0}.color-input--small{padding:var(--snice-spacing-2xs,.375rem) var(--snice-spacing-sm,.625rem);font-size:var(--snice-font-size-xs, .75rem)}.color-input--large{padding:var(--snice-spacing-sm,.625rem) var(--snice-spacing-md,.875rem);font-size:var(--snice-font-size-md, 1rem)}.color-input:hover:not(:disabled){border-color:var(--snice-color-border-hover,rgb(156 163 175))}.color-input:focus{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-focus-ring-color,rgb(59 130 246 / .5))}.color-input:disabled{opacity:.5;cursor:not-allowed;background:var(--snice-color-background-disabled,rgb(243 244 246))}.color-input--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.color-input--invalid:focus{border-color:var(--snice-color-danger,rgb(220 38 38));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-color-danger-alpha,rgb(239 68 68 / .2))}.native-input{position:absolute;opacity:0;pointer-events:none}.presets{display:flex;gap:var(--snice-spacing-xs,.5rem);flex-wrap:wrap;margin-top:var(--snice-spacing-xs,.5rem)}.preset{width:32px;height:32px;border-radius:var(--snice-border-radius-md,.375rem);border:2px solid var(--snice-color-border,rgb(226 226 226));cursor:pointer;transition:all var(--snice-transition-fast, 150ms)}.preset:hover{border-color:var(--snice-color-primary,rgb(37 99 235));transform:scale(1.1)}.preset--selected{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 2px var(--snice-color-primary-alpha,rgb(59 130 246 / .2))}.error-text,.helper-text{font-size:var(--snice-font-size-xs, .75rem);margin-top:var(--snice-spacing-2xs,.25rem)}.helper-text{color:var(--snice-color-text-secondary,rgb(82 82 82))}.error-text{color:var(--snice-color-danger,rgb(220 38 38))}";
|
|
5
|
+
|
|
6
|
+
let SniceColorPicker = (() => {
|
|
7
|
+
let _classDecorators = [element('snice-color-picker', { formAssociated: true })];
|
|
8
|
+
let _classDescriptor;
|
|
9
|
+
let _classExtraInitializers = [];
|
|
10
|
+
let _classThis;
|
|
11
|
+
let _classSuper = HTMLElement;
|
|
12
|
+
let _instanceExtraInitializers = [];
|
|
13
|
+
let _size_decorators;
|
|
14
|
+
let _size_initializers = [];
|
|
15
|
+
let _size_extraInitializers = [];
|
|
16
|
+
let _value_decorators;
|
|
17
|
+
let _value_initializers = [];
|
|
18
|
+
let _value_extraInitializers = [];
|
|
19
|
+
let _format_decorators;
|
|
20
|
+
let _format_initializers = [];
|
|
21
|
+
let _format_extraInitializers = [];
|
|
22
|
+
let _label_decorators;
|
|
23
|
+
let _label_initializers = [];
|
|
24
|
+
let _label_extraInitializers = [];
|
|
25
|
+
let _helperText_decorators;
|
|
26
|
+
let _helperText_initializers = [];
|
|
27
|
+
let _helperText_extraInitializers = [];
|
|
28
|
+
let _errorText_decorators;
|
|
29
|
+
let _errorText_initializers = [];
|
|
30
|
+
let _errorText_extraInitializers = [];
|
|
31
|
+
let _disabled_decorators;
|
|
32
|
+
let _disabled_initializers = [];
|
|
33
|
+
let _disabled_extraInitializers = [];
|
|
34
|
+
let _required_decorators;
|
|
35
|
+
let _required_initializers = [];
|
|
36
|
+
let _required_extraInitializers = [];
|
|
37
|
+
let _invalid_decorators;
|
|
38
|
+
let _invalid_initializers = [];
|
|
39
|
+
let _invalid_extraInitializers = [];
|
|
40
|
+
let _name_decorators;
|
|
41
|
+
let _name_initializers = [];
|
|
42
|
+
let _name_extraInitializers = [];
|
|
43
|
+
let _showInput_decorators;
|
|
44
|
+
let _showInput_initializers = [];
|
|
45
|
+
let _showInput_extraInitializers = [];
|
|
46
|
+
let _showPresets_decorators;
|
|
47
|
+
let _showPresets_initializers = [];
|
|
48
|
+
let _showPresets_extraInitializers = [];
|
|
49
|
+
let _presets_decorators;
|
|
50
|
+
let _presets_initializers = [];
|
|
51
|
+
let _presets_extraInitializers = [];
|
|
52
|
+
let _input_decorators;
|
|
53
|
+
let _input_initializers = [];
|
|
54
|
+
let _input_extraInitializers = [];
|
|
55
|
+
let _nativeInput_decorators;
|
|
56
|
+
let _nativeInput_initializers = [];
|
|
57
|
+
let _nativeInput_extraInitializers = [];
|
|
58
|
+
let _swatch_decorators;
|
|
59
|
+
let _swatch_initializers = [];
|
|
60
|
+
let _swatch_extraInitializers = [];
|
|
61
|
+
let _renderContent_decorators;
|
|
62
|
+
let _componentStyles_decorators;
|
|
63
|
+
let _init_decorators;
|
|
64
|
+
let _handleValueChange_decorators;
|
|
65
|
+
let _handleFormatChange_decorators;
|
|
66
|
+
let _handleDisabledChange_decorators;
|
|
67
|
+
let _dispatchInputEvent_decorators;
|
|
68
|
+
let _dispatchChangeEvent_decorators;
|
|
69
|
+
let _dispatchFocusEvent_decorators;
|
|
70
|
+
let _dispatchBlurEvent_decorators;
|
|
71
|
+
(class extends _classSuper {
|
|
72
|
+
static { _classThis = this; }
|
|
73
|
+
static {
|
|
74
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
75
|
+
_size_decorators = [property({})];
|
|
76
|
+
_value_decorators = [property({})];
|
|
77
|
+
_format_decorators = [property({})];
|
|
78
|
+
_label_decorators = [property({})];
|
|
79
|
+
_helperText_decorators = [property({ attribute: 'helper-text', })];
|
|
80
|
+
_errorText_decorators = [property({ attribute: 'error-text', })];
|
|
81
|
+
_disabled_decorators = [property({ type: Boolean, })];
|
|
82
|
+
_required_decorators = [property({ type: Boolean, })];
|
|
83
|
+
_invalid_decorators = [property({ type: Boolean, })];
|
|
84
|
+
_name_decorators = [property({})];
|
|
85
|
+
_showInput_decorators = [property({ type: Boolean, attribute: 'show-input', })];
|
|
86
|
+
_showPresets_decorators = [property({ type: Boolean, attribute: 'show-presets', })];
|
|
87
|
+
_presets_decorators = [property({ type: Array, })];
|
|
88
|
+
_input_decorators = [query('.color-input')];
|
|
89
|
+
_nativeInput_decorators = [query('.native-input')];
|
|
90
|
+
_swatch_decorators = [query('.color-swatch')];
|
|
91
|
+
_renderContent_decorators = [render()];
|
|
92
|
+
_componentStyles_decorators = [styles()];
|
|
93
|
+
_init_decorators = [ready()];
|
|
94
|
+
_handleValueChange_decorators = [watch('value')];
|
|
95
|
+
_handleFormatChange_decorators = [watch('format')];
|
|
96
|
+
_handleDisabledChange_decorators = [watch('disabled')];
|
|
97
|
+
_dispatchInputEvent_decorators = [dispatch('@snice/color-picker-input', { bubbles: true, composed: true })];
|
|
98
|
+
_dispatchChangeEvent_decorators = [dispatch('@snice/color-picker-change', { bubbles: true, composed: true })];
|
|
99
|
+
_dispatchFocusEvent_decorators = [dispatch('@snice/color-picker-focus', { bubbles: true, composed: true })];
|
|
100
|
+
_dispatchBlurEvent_decorators = [dispatch('@snice/color-picker-blur', { bubbles: true, composed: true })];
|
|
101
|
+
__esDecorate(this, null, _renderContent_decorators, { kind: "method", name: "renderContent", static: false, private: false, access: { has: obj => "renderContent" in obj, get: obj => obj.renderContent }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
102
|
+
__esDecorate(this, null, _componentStyles_decorators, { kind: "method", name: "componentStyles", static: false, private: false, access: { has: obj => "componentStyles" in obj, get: obj => obj.componentStyles }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
103
|
+
__esDecorate(this, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: obj => "init" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
104
|
+
__esDecorate(this, null, _handleValueChange_decorators, { kind: "method", name: "handleValueChange", static: false, private: false, access: { has: obj => "handleValueChange" in obj, get: obj => obj.handleValueChange }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
105
|
+
__esDecorate(this, null, _handleFormatChange_decorators, { kind: "method", name: "handleFormatChange", static: false, private: false, access: { has: obj => "handleFormatChange" in obj, get: obj => obj.handleFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
106
|
+
__esDecorate(this, null, _handleDisabledChange_decorators, { kind: "method", name: "handleDisabledChange", static: false, private: false, access: { has: obj => "handleDisabledChange" in obj, get: obj => obj.handleDisabledChange }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
107
|
+
__esDecorate(this, null, _dispatchInputEvent_decorators, { kind: "method", name: "dispatchInputEvent", static: false, private: false, access: { has: obj => "dispatchInputEvent" in obj, get: obj => obj.dispatchInputEvent }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
108
|
+
__esDecorate(this, null, _dispatchChangeEvent_decorators, { kind: "method", name: "dispatchChangeEvent", static: false, private: false, access: { has: obj => "dispatchChangeEvent" in obj, get: obj => obj.dispatchChangeEvent }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
109
|
+
__esDecorate(this, null, _dispatchFocusEvent_decorators, { kind: "method", name: "dispatchFocusEvent", static: false, private: false, access: { has: obj => "dispatchFocusEvent" in obj, get: obj => obj.dispatchFocusEvent }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
110
|
+
__esDecorate(this, null, _dispatchBlurEvent_decorators, { kind: "method", name: "dispatchBlurEvent", static: false, private: false, access: { has: obj => "dispatchBlurEvent" in obj, get: obj => obj.dispatchBlurEvent }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
111
|
+
__esDecorate(null, null, _size_decorators, { kind: "field", name: "size", static: false, private: false, access: { has: obj => "size" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);
|
|
112
|
+
__esDecorate(null, null, _value_decorators, { kind: "field", name: "value", static: false, private: false, access: { has: obj => "value" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);
|
|
113
|
+
__esDecorate(null, null, _format_decorators, { kind: "field", name: "format", static: false, private: false, access: { has: obj => "format" in obj, get: obj => obj.format, set: (obj, value) => { obj.format = value; } }, metadata: _metadata }, _format_initializers, _format_extraInitializers);
|
|
114
|
+
__esDecorate(null, null, _label_decorators, { kind: "field", name: "label", static: false, private: false, access: { has: obj => "label" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);
|
|
115
|
+
__esDecorate(null, null, _helperText_decorators, { kind: "field", name: "helperText", static: false, private: false, access: { has: obj => "helperText" in obj, get: obj => obj.helperText, set: (obj, value) => { obj.helperText = value; } }, metadata: _metadata }, _helperText_initializers, _helperText_extraInitializers);
|
|
116
|
+
__esDecorate(null, null, _errorText_decorators, { kind: "field", name: "errorText", static: false, private: false, access: { has: obj => "errorText" in obj, get: obj => obj.errorText, set: (obj, value) => { obj.errorText = value; } }, metadata: _metadata }, _errorText_initializers, _errorText_extraInitializers);
|
|
117
|
+
__esDecorate(null, null, _disabled_decorators, { kind: "field", name: "disabled", static: false, private: false, access: { has: obj => "disabled" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);
|
|
118
|
+
__esDecorate(null, null, _required_decorators, { kind: "field", name: "required", static: false, private: false, access: { has: obj => "required" in obj, get: obj => obj.required, set: (obj, value) => { obj.required = value; } }, metadata: _metadata }, _required_initializers, _required_extraInitializers);
|
|
119
|
+
__esDecorate(null, null, _invalid_decorators, { kind: "field", name: "invalid", static: false, private: false, access: { has: obj => "invalid" in obj, get: obj => obj.invalid, set: (obj, value) => { obj.invalid = value; } }, metadata: _metadata }, _invalid_initializers, _invalid_extraInitializers);
|
|
120
|
+
__esDecorate(null, null, _name_decorators, { kind: "field", name: "name", static: false, private: false, access: { has: obj => "name" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);
|
|
121
|
+
__esDecorate(null, null, _showInput_decorators, { kind: "field", name: "showInput", static: false, private: false, access: { has: obj => "showInput" in obj, get: obj => obj.showInput, set: (obj, value) => { obj.showInput = value; } }, metadata: _metadata }, _showInput_initializers, _showInput_extraInitializers);
|
|
122
|
+
__esDecorate(null, null, _showPresets_decorators, { kind: "field", name: "showPresets", static: false, private: false, access: { has: obj => "showPresets" in obj, get: obj => obj.showPresets, set: (obj, value) => { obj.showPresets = value; } }, metadata: _metadata }, _showPresets_initializers, _showPresets_extraInitializers);
|
|
123
|
+
__esDecorate(null, null, _presets_decorators, { kind: "field", name: "presets", static: false, private: false, access: { has: obj => "presets" in obj, get: obj => obj.presets, set: (obj, value) => { obj.presets = value; } }, metadata: _metadata }, _presets_initializers, _presets_extraInitializers);
|
|
124
|
+
__esDecorate(null, null, _input_decorators, { kind: "field", name: "input", static: false, private: false, access: { has: obj => "input" in obj, get: obj => obj.input, set: (obj, value) => { obj.input = value; } }, metadata: _metadata }, _input_initializers, _input_extraInitializers);
|
|
125
|
+
__esDecorate(null, null, _nativeInput_decorators, { kind: "field", name: "nativeInput", static: false, private: false, access: { has: obj => "nativeInput" in obj, get: obj => obj.nativeInput, set: (obj, value) => { obj.nativeInput = value; } }, metadata: _metadata }, _nativeInput_initializers, _nativeInput_extraInitializers);
|
|
126
|
+
__esDecorate(null, null, _swatch_decorators, { kind: "field", name: "swatch", static: false, private: false, access: { has: obj => "swatch" in obj, get: obj => obj.swatch, set: (obj, value) => { obj.swatch = value; } }, metadata: _metadata }, _swatch_initializers, _swatch_extraInitializers);
|
|
127
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
128
|
+
_classThis = _classDescriptor.value;
|
|
129
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
130
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
131
|
+
}
|
|
132
|
+
constructor() {
|
|
133
|
+
super();
|
|
134
|
+
this.internals = __runInitializers(this, _instanceExtraInitializers);
|
|
135
|
+
this.size = __runInitializers(this, _size_initializers, 'medium');
|
|
136
|
+
this.value = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _value_initializers, '#000000'));
|
|
137
|
+
this.format = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _format_initializers, 'hex'));
|
|
138
|
+
this.label = (__runInitializers(this, _format_extraInitializers), __runInitializers(this, _label_initializers, ''));
|
|
139
|
+
this.helperText = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _helperText_initializers, ''));
|
|
140
|
+
this.errorText = (__runInitializers(this, _helperText_extraInitializers), __runInitializers(this, _errorText_initializers, ''));
|
|
141
|
+
this.disabled = (__runInitializers(this, _errorText_extraInitializers), __runInitializers(this, _disabled_initializers, false));
|
|
142
|
+
this.required = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _required_initializers, false));
|
|
143
|
+
this.invalid = (__runInitializers(this, _required_extraInitializers), __runInitializers(this, _invalid_initializers, false));
|
|
144
|
+
this.name = (__runInitializers(this, _invalid_extraInitializers), __runInitializers(this, _name_initializers, ''));
|
|
145
|
+
this.showInput = (__runInitializers(this, _name_extraInitializers), __runInitializers(this, _showInput_initializers, true));
|
|
146
|
+
this.showPresets = (__runInitializers(this, _showInput_extraInitializers), __runInitializers(this, _showPresets_initializers, false));
|
|
147
|
+
this.presets = (__runInitializers(this, _showPresets_extraInitializers), __runInitializers(this, _presets_initializers, [
|
|
148
|
+
'#000000', '#ffffff', '#f87171', '#fb923c', '#fbbf24',
|
|
149
|
+
'#a3e635', '#34d399', '#22d3ee', '#60a5fa', '#a78bfa',
|
|
150
|
+
'#f472b6', '#fb7185'
|
|
151
|
+
]));
|
|
152
|
+
this.input = (__runInitializers(this, _presets_extraInitializers), __runInitializers(this, _input_initializers, void 0));
|
|
153
|
+
this.nativeInput = (__runInitializers(this, _input_extraInitializers), __runInitializers(this, _nativeInput_initializers, void 0));
|
|
154
|
+
this.swatch = (__runInitializers(this, _nativeInput_extraInitializers), __runInitializers(this, _swatch_initializers, void 0));
|
|
155
|
+
__runInitializers(this, _swatch_extraInitializers);
|
|
156
|
+
if (typeof this.attachInternals == 'function') {
|
|
157
|
+
this.internals = this.attachInternals();
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
renderContent() {
|
|
161
|
+
const wrapperClasses = ['color-picker-wrapper'].filter(Boolean).join(' ');
|
|
162
|
+
const swatchClasses = [
|
|
163
|
+
'color-swatch',
|
|
164
|
+
`color-swatch--${this.size}`,
|
|
165
|
+
this.disabled ? 'color-swatch--disabled' : '',
|
|
166
|
+
this.invalid ? 'color-swatch--invalid' : ''
|
|
167
|
+
].filter(Boolean).join(' ');
|
|
168
|
+
const inputClasses = [
|
|
169
|
+
'color-input',
|
|
170
|
+
`color-input--${this.size}`,
|
|
171
|
+
this.invalid ? 'color-input--invalid' : ''
|
|
172
|
+
].filter(Boolean).join(' ');
|
|
173
|
+
const labelClasses = ['label', this.required ? 'label--required' : ''].filter(Boolean).join(' ');
|
|
174
|
+
const displayValue = this.formatColor(this.value, this.format);
|
|
175
|
+
return html /*html*/ `
|
|
176
|
+
<div class="${wrapperClasses}">
|
|
177
|
+
<if ${this.label}>
|
|
178
|
+
<label class="${labelClasses}">
|
|
179
|
+
${this.label}
|
|
180
|
+
</label>
|
|
181
|
+
</if>
|
|
182
|
+
|
|
183
|
+
<div class="picker-container">
|
|
184
|
+
<div
|
|
185
|
+
class="${swatchClasses}"
|
|
186
|
+
@click=${this.handleSwatchClick}
|
|
187
|
+
tabindex="${this.disabled ? -1 : 0}"
|
|
188
|
+
role="button"
|
|
189
|
+
aria-label="Choose color"
|
|
190
|
+
@keydown=${this.handleSwatchKeyDown}
|
|
191
|
+
>
|
|
192
|
+
<div class="swatch-inner" style="background-color: ${this.value}"></div>
|
|
193
|
+
</div>
|
|
194
|
+
|
|
195
|
+
<if ${this.showInput}>
|
|
196
|
+
<div class="color-input-wrapper">
|
|
197
|
+
<input
|
|
198
|
+
class="${inputClasses}"
|
|
199
|
+
type="text"
|
|
200
|
+
.value="${displayValue}"
|
|
201
|
+
?disabled="${this.disabled}"
|
|
202
|
+
?required="${this.required}"
|
|
203
|
+
placeholder="${this.format === 'hex' ? '#000000' : this.format === 'rgb' ? 'rgb(0,0,0)' : 'hsl(0,0%,0%)'}"
|
|
204
|
+
@input=${this.handleInputChange}
|
|
205
|
+
@change=${this.handleInputChange}
|
|
206
|
+
@focus=${this.handleFocus}
|
|
207
|
+
@blur=${this.handleBlur}
|
|
208
|
+
/>
|
|
209
|
+
</div>
|
|
210
|
+
</if>
|
|
211
|
+
|
|
212
|
+
<input
|
|
213
|
+
class="native-input"
|
|
214
|
+
type="color"
|
|
215
|
+
.value="${this.toHex(this.value)}"
|
|
216
|
+
?disabled="${this.disabled}"
|
|
217
|
+
name="${this.name || ''}"
|
|
218
|
+
@input=${this.handleNativeChange}
|
|
219
|
+
@change=${this.handleNativeChange}
|
|
220
|
+
aria-hidden="true"
|
|
221
|
+
tabindex="-1"
|
|
222
|
+
/>
|
|
223
|
+
</div>
|
|
224
|
+
|
|
225
|
+
<if ${this.showPresets}>
|
|
226
|
+
<div class="presets">
|
|
227
|
+
${this.presets.map(preset => this.renderPreset(preset))}
|
|
228
|
+
</div>
|
|
229
|
+
</if>
|
|
230
|
+
|
|
231
|
+
<case ${this.errorText ? 'error' : this.helperText ? 'helper' : 'empty'}>
|
|
232
|
+
<when value="error">
|
|
233
|
+
<span class="error-text" part="error-text">${this.errorText}</span>
|
|
234
|
+
</when>
|
|
235
|
+
<when value="helper">
|
|
236
|
+
<span class="helper-text" part="helper-text">${this.helperText}</span>
|
|
237
|
+
</when>
|
|
238
|
+
<default>
|
|
239
|
+
<span class="helper-text" part="helper-text"> </span>
|
|
240
|
+
</default>
|
|
241
|
+
</case>
|
|
242
|
+
</div>
|
|
243
|
+
`;
|
|
244
|
+
}
|
|
245
|
+
renderPreset(color) {
|
|
246
|
+
const isSelected = this.toHex(this.value).toLowerCase() === this.toHex(color).toLowerCase();
|
|
247
|
+
const classes = ['preset', isSelected ? 'preset--selected' : ''].filter(Boolean).join(' ');
|
|
248
|
+
return html /*html*/ `
|
|
249
|
+
<div
|
|
250
|
+
class="${classes}"
|
|
251
|
+
style="background-color: ${color}"
|
|
252
|
+
@click=${() => this.handlePresetClick(color)}
|
|
253
|
+
tabindex="0"
|
|
254
|
+
role="button"
|
|
255
|
+
aria-label="Select ${color}"
|
|
256
|
+
@keydown=${(e) => this.handlePresetKeyDown(e, color)}
|
|
257
|
+
></div>
|
|
258
|
+
`;
|
|
259
|
+
}
|
|
260
|
+
componentStyles() {
|
|
261
|
+
return css /*css*/ `${cssContent}`;
|
|
262
|
+
}
|
|
263
|
+
init() {
|
|
264
|
+
if (this.internals) {
|
|
265
|
+
this.internals.setFormValue(this.value);
|
|
266
|
+
}
|
|
267
|
+
this.normalizeValue();
|
|
268
|
+
}
|
|
269
|
+
handleSwatchClick() {
|
|
270
|
+
if (!this.disabled) {
|
|
271
|
+
this.nativeInput?.click();
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
handleSwatchKeyDown(e) {
|
|
275
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
276
|
+
e.preventDefault();
|
|
277
|
+
this.handleSwatchClick();
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
handleNativeChange(e) {
|
|
281
|
+
const input = e.target;
|
|
282
|
+
this.value = input.value;
|
|
283
|
+
this.dispatchInputEvent();
|
|
284
|
+
this.dispatchChangeEvent();
|
|
285
|
+
}
|
|
286
|
+
handleInputChange(e) {
|
|
287
|
+
const input = e.target;
|
|
288
|
+
const color = this.parseColor(input.value);
|
|
289
|
+
if (color) {
|
|
290
|
+
this.value = color;
|
|
291
|
+
this.dispatchInputEvent();
|
|
292
|
+
this.dispatchChangeEvent();
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
handlePresetClick(color) {
|
|
296
|
+
if (!this.disabled) {
|
|
297
|
+
this.value = color;
|
|
298
|
+
this.dispatchInputEvent();
|
|
299
|
+
this.dispatchChangeEvent();
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
handlePresetKeyDown(e, color) {
|
|
303
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
304
|
+
e.preventDefault();
|
|
305
|
+
this.handlePresetClick(color);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
handleFocus() {
|
|
309
|
+
this.dispatchFocusEvent();
|
|
310
|
+
}
|
|
311
|
+
handleBlur() {
|
|
312
|
+
this.dispatchBlurEvent();
|
|
313
|
+
}
|
|
314
|
+
normalizeValue() {
|
|
315
|
+
// Ensure value is a valid hex color
|
|
316
|
+
if (!this.value.startsWith('#')) {
|
|
317
|
+
this.value = '#000000';
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
toHex(color) {
|
|
321
|
+
if (color.startsWith('#')) {
|
|
322
|
+
return color;
|
|
323
|
+
}
|
|
324
|
+
if (color.startsWith('rgb')) {
|
|
325
|
+
return this.rgbToHex(color);
|
|
326
|
+
}
|
|
327
|
+
if (color.startsWith('hsl')) {
|
|
328
|
+
return this.hslToHex(color);
|
|
329
|
+
}
|
|
330
|
+
return color;
|
|
331
|
+
}
|
|
332
|
+
formatColor(color, format) {
|
|
333
|
+
const hex = this.toHex(color);
|
|
334
|
+
switch (format) {
|
|
335
|
+
case 'hex':
|
|
336
|
+
return hex;
|
|
337
|
+
case 'rgb':
|
|
338
|
+
return this.hexToRgb(hex);
|
|
339
|
+
case 'hsl':
|
|
340
|
+
return this.hexToHsl(hex);
|
|
341
|
+
default:
|
|
342
|
+
return hex;
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
parseColor(value) {
|
|
346
|
+
value = value.trim();
|
|
347
|
+
// Hex color
|
|
348
|
+
if (value.startsWith('#')) {
|
|
349
|
+
if (/^#[0-9A-F]{6}$/i.test(value)) {
|
|
350
|
+
return value;
|
|
351
|
+
}
|
|
352
|
+
return null;
|
|
353
|
+
}
|
|
354
|
+
// RGB color
|
|
355
|
+
if (value.startsWith('rgb')) {
|
|
356
|
+
return this.rgbToHex(value);
|
|
357
|
+
}
|
|
358
|
+
// HSL color
|
|
359
|
+
if (value.startsWith('hsl')) {
|
|
360
|
+
return this.hslToHex(value);
|
|
361
|
+
}
|
|
362
|
+
return null;
|
|
363
|
+
}
|
|
364
|
+
hexToRgb(hex) {
|
|
365
|
+
const r = parseInt(hex.slice(1, 3), 16);
|
|
366
|
+
const g = parseInt(hex.slice(3, 5), 16);
|
|
367
|
+
const b = parseInt(hex.slice(5, 7), 16);
|
|
368
|
+
return `rgb(${r}, ${g}, ${b})`;
|
|
369
|
+
}
|
|
370
|
+
rgbToHex(rgb) {
|
|
371
|
+
const match = rgb.match(/\d+/g);
|
|
372
|
+
if (!match || match.length < 3)
|
|
373
|
+
return '#000000';
|
|
374
|
+
const r = parseInt(match[0]).toString(16).padStart(2, '0');
|
|
375
|
+
const g = parseInt(match[1]).toString(16).padStart(2, '0');
|
|
376
|
+
const b = parseInt(match[2]).toString(16).padStart(2, '0');
|
|
377
|
+
return `#${r}${g}${b}`;
|
|
378
|
+
}
|
|
379
|
+
hexToHsl(hex) {
|
|
380
|
+
const r = parseInt(hex.slice(1, 3), 16) / 255;
|
|
381
|
+
const g = parseInt(hex.slice(3, 5), 16) / 255;
|
|
382
|
+
const b = parseInt(hex.slice(5, 7), 16) / 255;
|
|
383
|
+
const max = Math.max(r, g, b);
|
|
384
|
+
const min = Math.min(r, g, b);
|
|
385
|
+
let h = 0;
|
|
386
|
+
let s = 0;
|
|
387
|
+
const l = (max + min) / 2;
|
|
388
|
+
if (max !== min) {
|
|
389
|
+
const d = max - min;
|
|
390
|
+
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
|
|
391
|
+
switch (max) {
|
|
392
|
+
case r:
|
|
393
|
+
h = ((g - b) / d + (g < b ? 6 : 0)) / 6;
|
|
394
|
+
break;
|
|
395
|
+
case g:
|
|
396
|
+
h = ((b - r) / d + 2) / 6;
|
|
397
|
+
break;
|
|
398
|
+
case b:
|
|
399
|
+
h = ((r - g) / d + 4) / 6;
|
|
400
|
+
break;
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
return `hsl(${Math.round(h * 360)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`;
|
|
404
|
+
}
|
|
405
|
+
hslToHex(hsl) {
|
|
406
|
+
const match = hsl.match(/\d+/g);
|
|
407
|
+
if (!match || match.length < 3)
|
|
408
|
+
return '#000000';
|
|
409
|
+
const h = parseInt(match[0]) / 360;
|
|
410
|
+
const s = parseInt(match[1]) / 100;
|
|
411
|
+
const l = parseInt(match[2]) / 100;
|
|
412
|
+
let r, g, b;
|
|
413
|
+
if (s === 0) {
|
|
414
|
+
r = g = b = l;
|
|
415
|
+
}
|
|
416
|
+
else {
|
|
417
|
+
const hue2rgb = (p, q, t) => {
|
|
418
|
+
if (t < 0)
|
|
419
|
+
t += 1;
|
|
420
|
+
if (t > 1)
|
|
421
|
+
t -= 1;
|
|
422
|
+
if (t < 1 / 6)
|
|
423
|
+
return p + (q - p) * 6 * t;
|
|
424
|
+
if (t < 1 / 2)
|
|
425
|
+
return q;
|
|
426
|
+
if (t < 2 / 3)
|
|
427
|
+
return p + (q - p) * (2 / 3 - t) * 6;
|
|
428
|
+
return p;
|
|
429
|
+
};
|
|
430
|
+
const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
|
|
431
|
+
const p = 2 * l - q;
|
|
432
|
+
r = hue2rgb(p, q, h + 1 / 3);
|
|
433
|
+
g = hue2rgb(p, q, h);
|
|
434
|
+
b = hue2rgb(p, q, h - 1 / 3);
|
|
435
|
+
}
|
|
436
|
+
const toHex = (x) => Math.round(x * 255).toString(16).padStart(2, '0');
|
|
437
|
+
return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
|
|
438
|
+
}
|
|
439
|
+
handleValueChange() {
|
|
440
|
+
this.normalizeValue();
|
|
441
|
+
if (this.input) {
|
|
442
|
+
this.input.value = this.formatColor(this.value, this.format);
|
|
443
|
+
}
|
|
444
|
+
if (this.nativeInput) {
|
|
445
|
+
this.nativeInput.value = this.toHex(this.value);
|
|
446
|
+
}
|
|
447
|
+
if (this.internals) {
|
|
448
|
+
this.internals.setFormValue(this.value);
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
handleFormatChange() {
|
|
452
|
+
if (this.input) {
|
|
453
|
+
this.input.value = this.formatColor(this.value, this.format);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
handleDisabledChange() {
|
|
457
|
+
if (this.input) {
|
|
458
|
+
this.input.disabled = this.disabled;
|
|
459
|
+
}
|
|
460
|
+
if (this.nativeInput) {
|
|
461
|
+
this.nativeInput.disabled = this.disabled;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
dispatchInputEvent() {
|
|
465
|
+
return { value: this.value, colorPicker: this };
|
|
466
|
+
}
|
|
467
|
+
dispatchChangeEvent() {
|
|
468
|
+
return { value: this.value, colorPicker: this };
|
|
469
|
+
}
|
|
470
|
+
dispatchFocusEvent() {
|
|
471
|
+
return { colorPicker: this };
|
|
472
|
+
}
|
|
473
|
+
dispatchBlurEvent() {
|
|
474
|
+
return { colorPicker: this };
|
|
475
|
+
}
|
|
476
|
+
// Public API
|
|
477
|
+
focus() {
|
|
478
|
+
this.input?.focus() || this.swatch?.focus();
|
|
479
|
+
}
|
|
480
|
+
blur() {
|
|
481
|
+
this.input?.blur();
|
|
482
|
+
this.swatch?.blur();
|
|
483
|
+
}
|
|
484
|
+
});
|
|
485
|
+
return _classThis;
|
|
486
|
+
})();
|
|
487
|
+
|
|
488
|
+
export { SniceColorPicker };
|
|
489
|
+
//# sourceMappingURL=snice-color-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snice-color-picker.js","sources":["../../../components/color-picker/snice-color-picker.css?inline","../../../../components/color-picker/snice-color-picker.ts"],"sourcesContent":["export default \":host{display:block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);contain:layout style paint}.color-picker-wrapper{display:flex;flex-direction:column;gap:var(--snice-spacing-xs,.5rem)}.label{font-size:var(--snice-font-size-sm, .875rem);font-weight:var(--snice-font-weight-medium,500);color:var(--snice-color-text,rgb(23 23 23));margin-bottom:var(--snice-spacing-2xs,.25rem)}.label--required::after{content:' *';color:var(--snice-color-danger,rgb(220 38 38))}.picker-container{display:flex;align-items:center;gap:var(--snice-spacing-sm,.75rem)}.color-swatch{position:relative;width:40px;height:40px;border-radius:var(--snice-border-radius-md,.375rem);border:2px solid var(--snice-color-border,rgb(226 226 226));cursor:pointer;transition:all var(--snice-transition-fast, 150ms);overflow:hidden}.color-swatch:hover:not(.color-swatch--disabled){border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:var(--snice-shadow-sm,0 1px 2px 0 rgb(0 0 0 / .05))}.color-swatch--small{width:32px;height:32px}.color-swatch--medium{width:40px;height:40px}.color-swatch--large{width:48px;height:48px}.color-swatch--disabled{opacity:.5;cursor:not-allowed}.color-swatch--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.swatch-inner{width:100%;height:100%}.color-input-wrapper{flex:1;position:relative}.color-input{width:100%;padding:var(--snice-spacing-xs,.5rem) var(--snice-spacing-sm,.75rem);font-size:var(--snice-font-size-sm, .875rem);font-family:monospace;color:var(--snice-color-text,rgb(23 23 23));background:var(--snice-color-background,rgb(255 255 255));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.375rem);transition:all var(--snice-transition-fast, 150ms);outline:0}.color-input--small{padding:var(--snice-spacing-2xs,.375rem) var(--snice-spacing-sm,.625rem);font-size:var(--snice-font-size-xs, .75rem)}.color-input--large{padding:var(--snice-spacing-sm,.625rem) var(--snice-spacing-md,.875rem);font-size:var(--snice-font-size-md, 1rem)}.color-input:hover:not(:disabled){border-color:var(--snice-color-border-hover,rgb(156 163 175))}.color-input:focus{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-focus-ring-color,rgb(59 130 246 / .5))}.color-input:disabled{opacity:.5;cursor:not-allowed;background:var(--snice-color-background-disabled,rgb(243 244 246))}.color-input--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.color-input--invalid:focus{border-color:var(--snice-color-danger,rgb(220 38 38));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-color-danger-alpha,rgb(239 68 68 / .2))}.native-input{position:absolute;opacity:0;pointer-events:none}.presets{display:flex;gap:var(--snice-spacing-xs,.5rem);flex-wrap:wrap;margin-top:var(--snice-spacing-xs,.5rem)}.preset{width:32px;height:32px;border-radius:var(--snice-border-radius-md,.375rem);border:2px solid var(--snice-color-border,rgb(226 226 226));cursor:pointer;transition:all var(--snice-transition-fast, 150ms)}.preset:hover{border-color:var(--snice-color-primary,rgb(37 99 235));transform:scale(1.1)}.preset--selected{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 2px var(--snice-color-primary-alpha,rgb(59 130 246 / .2))}.error-text,.helper-text{font-size:var(--snice-font-size-xs, .75rem);margin-top:var(--snice-spacing-2xs,.25rem)}.helper-text{color:var(--snice-color-text-secondary,rgb(82 82 82))}.error-text{color:var(--snice-color-danger,rgb(220 38 38))}\";",null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type ColorPickerSize = 'small' | 'medium' | 'large';
|
|
2
|
+
export type ColorPickerFormat = 'hex' | 'rgb' | 'hsl';
|
|
3
|
+
export interface SniceColorPickerElement extends HTMLElement {
|
|
4
|
+
size: ColorPickerSize;
|
|
5
|
+
value: string;
|
|
6
|
+
format: ColorPickerFormat;
|
|
7
|
+
label: string;
|
|
8
|
+
helperText: string;
|
|
9
|
+
errorText: string;
|
|
10
|
+
disabled: boolean;
|
|
11
|
+
required: boolean;
|
|
12
|
+
invalid: boolean;
|
|
13
|
+
name: string;
|
|
14
|
+
showInput: boolean;
|
|
15
|
+
showPresets: boolean;
|
|
16
|
+
presets: string[];
|
|
17
|
+
focus(): void;
|
|
18
|
+
blur(): void;
|
|
19
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __runInitializers, __esDecorate } from 'tslib';
|
|
2
2
|
import { element, property, query, styles, render, ready, watch, dispatch, css, html } from 'snice';
|
|
3
3
|
|
|
4
|
-
var cssContent = "
|
|
4
|
+
var cssContent = ":host{display:block;position:relative;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);font-size:var(--snice-font-size-sm, 14px);line-height:var(--snice-line-height-normal, 1.4);min-height:40px}.date-picker-wrapper{display:flex;flex-direction:column;gap:.5rem}.label{font-weight:var(--snice-font-weight-medium,500);color:var(--snice-color-text,#374151);margin-bottom:var(--snice-spacing-2xs,.25rem)}.label--required::after{content:'*';color:var(--snice-color-danger,#ef4444);margin-left:var(--snice-spacing-2xs,.25rem)}.input-container{position:relative;display:flex;align-items:center}.input{width:100%;border:1px solid var(--snice-color-border,#d1d5db);border-radius:var(--snice-border-radius-lg,6px);padding:var(--snice-spacing-xs,.5rem) 3rem var(--snice-spacing-xs,.5rem) var(--snice-spacing-sm,.75rem);font-size:inherit;line-height:var(--snice-line-height-normal, 1.5);background:var(--snice-color-background,#fff);color:var(--snice-color-text,#374151);transition:border-color var(--snice-transition-fast, .15s) ease,box-shadow var(--snice-transition-fast, .15s) ease}.input:focus{outline:0;border-color:var(--snice-color-border-focus,#2563eb);box-shadow:0 0 0 var(--snice-focus-ring-width,3px) var(--snice-focus-ring-color,rgba(37,99,235,.1))}.input--small{padding:.375rem 2.75rem .375rem .625rem;font-size:.875rem}.input--large{padding:.75rem 3.5rem .75rem 1rem;font-size:1rem}.input--filled{background:var(--snice-color-background-secondary,#f9fafb);border:1px solid transparent}.input--underlined{border:none;border-bottom:1px solid #d1d5db;border-radius:0;background:0 0;padding-left:0}.input--invalid{border-color:#ef4444}.input--invalid:focus{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.input:disabled{background:var(--snice-color-background-secondary,#f9fafb);color:var(--snice-color-text-tertiary,#9ca3af);cursor:not-allowed}.input:not(:disabled):not([readonly]){cursor:pointer}.calendar-toggle,.clear-button{position:absolute;padding:.25rem;border:none;background:0 0;color:#6b7280;cursor:pointer;border-radius:4px;transition:color .15s,background-color .15s}.calendar-toggle{right:.5rem}.clear-button{right:2.5rem}.calendar-toggle:hover,.clear-button:hover{color:#374151;background:#f3f4f6}.calendar-toggle:disabled,.clear-button:disabled{opacity:.5;cursor:not-allowed}.calendar{position:absolute;top:100%;left:0;right:0;z-index:var(--snice-z-index-dropdown,1000);background:var(--snice-color-background-element,#fcfbf9);border:1px solid var(--snice-color-border,#d1d5db);border-radius:var(--snice-border-radius-lg,8px);box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05));margin-top:var(--snice-spacing-3xs,.125rem);padding:var(--snice-spacing-md,1rem);min-width:280px}.calendar[hidden]{display:none}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.calendar-title{flex:1;text-align:center}.month-button{background:0 0;border:none;font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600);color:var(--snice-color-text,#374151);cursor:pointer;padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,4px);transition:background-color var(--snice-transition-fast, .15s) ease}.month-button:hover{background:var(--snice-color-background-tertiary,#f3f4f6)}.nav-button{background:0 0;border:none;padding:.5rem;cursor:pointer;color:#6b7280;border-radius:4px;transition:color .15s,background-color .15s}.nav-button:hover{color:#374151;background:#f3f4f6}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;margin-bottom:.5rem}.weekday{text-align:center;font-size:.75rem;font-weight:600;color:#6b7280;padding:.5rem .25rem}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.day{width:32px;height:32px;border:none;background:0 0;cursor:pointer;border-radius:var(--snice-border-radius-md,4px);font-size:var(--snice-font-size-sm, .875rem);color:var(--snice-color-text,#374151);transition:background-color var(--snice-transition-fast, .15s) ease,color var(--snice-transition-fast, .15s) ease;display:flex;align-items:center;justify-content:center}.day:hover:not(.day--disabled){background:var(--snice-color-background-tertiary,#f3f4f6)}.day--today{background:var(--snice-color-primary-light,#dbeafe);color:var(--snice-color-primary,#2563eb);font-weight:var(--snice-font-weight-semibold,600)}.day--selected{background:var(--snice-color-primary,#2563eb);color:var(--snice-color-text-inverse,#fff);font-weight:var(--snice-font-weight-semibold,600)}.day--disabled{color:#d1d5db;cursor:not-allowed}.day--empty{cursor:default}.calendar-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #f3f4f6;display:flex;justify-content:center}.error-text,.helper-text{font-size:var(--snice-font-size-sm, .875rem);margin-top:var(--snice-spacing-2xs,.25rem)}.helper-text{color:var(--snice-color-text-secondary,#6b7280)}.error-text{color:var(--snice-color-danger,#ef4444)}:host([size=small]) .calendar{min-width:240px;padding:.75rem}:host([size=small]) .day{width:28px;height:28px;font-size:.8125rem}:host([size=large]) .calendar{min-width:320px;padding:1.25rem}:host([size=large]) .day{width:36px;height:36px;font-size:.9375rem}@media (max-width:640px){.calendar{left:50%;right:auto;transform:translateX(-50%);min-width:280px}}";
|
|
5
5
|
|
|
6
6
|
let SniceDatePicker = (() => {
|
|
7
7
|
let _classDecorators = [element('snice-date-picker')];
|