@warp-ds/elements 2.3.0-next.1 → 2.3.0-next.3
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/custom-elements.json +3295 -403
- package/dist/index.d.ts +484 -0
- package/dist/packages/combobox/combobox.react.stories.d.ts +28 -0
- package/dist/packages/combobox/combobox.react.stories.js +90 -0
- package/dist/packages/combobox/combobox.stories.d.ts +18 -0
- package/dist/packages/combobox/combobox.stories.js +117 -0
- package/dist/packages/combobox/index.d.ts +85 -0
- package/dist/packages/combobox/index.js +2492 -0
- package/dist/packages/combobox/index.js.map +7 -0
- package/dist/packages/combobox/locales/da/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/da/messages.mjs +1 -0
- package/dist/packages/combobox/locales/en/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/en/messages.mjs +1 -0
- package/dist/packages/combobox/locales/fi/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/fi/messages.mjs +1 -0
- package/dist/packages/combobox/locales/nb/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/nb/messages.mjs +1 -0
- package/dist/packages/combobox/locales/sv/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/sv/messages.mjs +1 -0
- package/dist/packages/combobox/react.d.ts +7 -0
- package/dist/packages/combobox/react.js +17 -0
- package/dist/packages/combobox/styles.d.ts +1 -0
- package/dist/packages/combobox/styles.js +2 -0
- package/dist/packages/datepicker/DatePicker.test.d.ts +2 -0
- package/dist/packages/datepicker/DatePicker.test.js +69 -0
- package/dist/packages/datepicker/datepicker.d.ts +102 -0
- package/dist/packages/datepicker/datepicker.js +2785 -0
- package/dist/packages/datepicker/datepicker.js.map +7 -0
- package/dist/packages/datepicker/datepicker.react.stories.d.ts +18 -0
- package/dist/packages/datepicker/datepicker.react.stories.js +26 -0
- package/dist/packages/datepicker/datepicker.stories.d.ts +12 -0
- package/dist/packages/datepicker/datepicker.stories.js +51 -0
- package/dist/packages/datepicker/datepicker.test.d.ts +2 -0
- package/dist/packages/datepicker/datepicker.test.js +62 -0
- package/dist/packages/datepicker/index.d.ts +1 -0
- package/dist/packages/datepicker/index.js +1 -0
- package/dist/packages/datepicker/locales/da/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/da/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/en/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/en/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/fi/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/fi/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/nb/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/nb/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/sv/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/sv/messages.mjs +1 -0
- package/dist/packages/datepicker/react.d.ts +5 -0
- package/dist/packages/datepicker/react.js +15 -0
- package/dist/packages/datepicker/styles/w-datepicker-calendar.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker-calendar.styles.js +15 -0
- package/dist/packages/datepicker/styles/w-datepicker-day.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker-day.styles.js +64 -0
- package/dist/packages/datepicker/styles/w-datepicker-month.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker-month.styles.js +72 -0
- package/dist/packages/datepicker/styles/w-datepicker.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker.styles.js +101 -0
- package/dist/packages/datepicker/utils.d.ts +13 -0
- package/dist/packages/datepicker/utils.js +28 -0
- package/dist/packages/dead-toggle/dead-toggle.react.stories.d.ts +15 -0
- package/dist/packages/dead-toggle/dead-toggle.react.stories.js +34 -0
- package/dist/packages/dead-toggle/dead-toggle.stories.d.ts +14 -0
- package/dist/packages/dead-toggle/dead-toggle.stories.js +45 -0
- package/dist/packages/dead-toggle/dead-toggle.test.d.ts +1 -0
- package/dist/packages/dead-toggle/dead-toggle.test.js +9 -0
- package/dist/packages/dead-toggle/index.d.ts +17 -0
- package/dist/packages/dead-toggle/index.js +2548 -0
- package/dist/packages/dead-toggle/index.js.map +7 -0
- package/dist/packages/dead-toggle/react.d.ts +2 -0
- package/dist/packages/dead-toggle/react.js +11 -0
- package/dist/packages/link/index.js +2640 -93
- package/dist/packages/link/index.js.map +7 -0
- package/dist/packages/link/link.react.stories.d.ts +21 -0
- package/dist/packages/link/link.react.stories.js +96 -0
- package/dist/packages/link/link.stories.d.ts +20 -0
- package/dist/packages/link/link.stories.js +110 -0
- package/dist/packages/link/link.test.d.ts +1 -0
- package/dist/packages/link/link.test.js +9 -0
- package/dist/packages/link/react.d.ts +2 -0
- package/dist/packages/link/react.js +11 -0
- package/dist/packages/pageindicator/index.d.ts +10 -0
- package/dist/packages/pageindicator/index.js +32 -0
- package/dist/packages/pageindicator/index.js.map +7 -0
- package/dist/packages/pageindicator/pageindicator.react.stories.d.ts +19 -0
- package/dist/packages/pageindicator/pageindicator.react.stories.js +20 -0
- package/dist/packages/pageindicator/pageindicator.stories.d.ts +32 -0
- package/dist/packages/pageindicator/pageindicator.stories.js +71 -0
- package/dist/packages/pageindicator/react.d.ts +2 -0
- package/dist/packages/pageindicator/react.js +11 -0
- package/dist/packages/pageindicator/style.d.ts +1 -0
- package/dist/packages/pageindicator/style.js +26 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.d.ts +66 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.js +2592 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.js.map +7 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.stories.d.ts +8 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.stories.js +11 -0
- package/dist/packages/rip-and-tear-checkbox/index.d.ts +1 -0
- package/dist/packages/rip-and-tear-checkbox/index.js +4 -0
- package/dist/packages/rip-and-tear-checkbox/react.d.ts +5 -0
- package/dist/packages/rip-and-tear-checkbox/react.js +15 -0
- package/dist/packages/rip-and-tear-checkbox/rip-and-tear-checkbox.react.stories.d.ts +12 -0
- package/dist/packages/rip-and-tear-checkbox/rip-and-tear-checkbox.react.stories.js +10 -0
- package/dist/packages/rip-and-tear-checkbox/styles.d.ts +0 -0
- package/dist/packages/rip-and-tear-checkbox/styles.js +0 -0
- package/dist/packages/rip-and-tear-radio/base-element.d.ts +46 -0
- package/dist/packages/rip-and-tear-radio/base-element.js +100 -0
- package/dist/packages/rip-and-tear-radio/custom-error-validator.d.ts +6 -0
- package/dist/packages/rip-and-tear-radio/custom-error-validator.js +22 -0
- package/dist/packages/rip-and-tear-radio/form-associated-element.d.ts +103 -0
- package/dist/packages/rip-and-tear-radio/form-associated-element.js +282 -0
- package/dist/packages/rip-and-tear-radio/host-styles.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/host-styles.js +12 -0
- package/dist/packages/rip-and-tear-radio/index.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/index.js +6 -0
- package/dist/packages/rip-and-tear-radio/invalid.d.ts +8 -0
- package/dist/packages/rip-and-tear-radio/invalid.js +5 -0
- package/dist/packages/rip-and-tear-radio/math.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/math.js +4 -0
- package/dist/packages/rip-and-tear-radio/radio-group-styles.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/radio-group-styles.js +59 -0
- package/dist/packages/rip-and-tear-radio/radio-group-styles.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio-group.d.ts +72 -0
- package/dist/packages/rip-and-tear-radio/radio-group.js +2649 -0
- package/dist/packages/rip-and-tear-radio/radio-group.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio-styles.d.ts +0 -0
- package/dist/packages/rip-and-tear-radio/radio-styles.js +1 -0
- package/dist/packages/rip-and-tear-radio/radio-styles.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio.d.ts +38 -0
- package/dist/packages/rip-and-tear-radio/radio.js +2563 -0
- package/dist/packages/rip-and-tear-radio/radio.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio.stories.d.ts +8 -0
- package/dist/packages/rip-and-tear-radio/radio.stories.js +2654 -0
- package/dist/packages/rip-and-tear-radio/radio.stories.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/react.d.ts +9 -0
- package/dist/packages/rip-and-tear-radio/react.js +22 -0
- package/dist/packages/rip-and-tear-radio/required-validator.d.ts +11 -0
- package/dist/packages/rip-and-tear-radio/required-validator.js +34 -0
- package/dist/packages/rip-and-tear-radio/rip-and-tear-radio.react.stories.d.ts +9 -0
- package/dist/packages/rip-and-tear-radio/rip-and-tear-radio.react.stories.js +10 -0
- package/dist/packages/rip-and-tear-radio/slot.d.ts +20 -0
- package/dist/packages/rip-and-tear-radio/slot.js +71 -0
- package/dist/packages/rip-and-tear-radio/watch.d.ts +26 -0
- package/dist/packages/rip-and-tear-radio/watch.js +39 -0
- package/dist/packages/steps/index.d.ts +36 -0
- package/dist/packages/steps/index.js +2465 -0
- package/dist/packages/steps/index.js.map +7 -0
- package/dist/packages/steps/locales/da/messages.d.mts +1 -0
- package/dist/packages/steps/locales/da/messages.mjs +1 -0
- package/dist/packages/steps/locales/en/messages.d.mts +1 -0
- package/dist/packages/steps/locales/en/messages.mjs +1 -0
- package/dist/packages/steps/locales/fi/messages.d.mts +1 -0
- package/dist/packages/steps/locales/fi/messages.mjs +1 -0
- package/dist/packages/steps/locales/nb/messages.d.mts +1 -0
- package/dist/packages/steps/locales/nb/messages.mjs +1 -0
- package/dist/packages/steps/locales/sv/messages.d.mts +1 -0
- package/dist/packages/steps/locales/sv/messages.mjs +1 -0
- package/dist/packages/steps/react.d.ts +3 -0
- package/dist/packages/steps/react.js +16 -0
- package/dist/packages/steps/steps.react.stories.d.ts +15 -0
- package/dist/packages/steps/steps.react.stories.js +112 -0
- package/dist/packages/steps/steps.stories.d.ts +12 -0
- package/dist/packages/steps/steps.stories.js +172 -0
- package/dist/packages/steps/styles.d.ts +1 -0
- package/dist/packages/steps/styles.js +2 -0
- package/dist/packages/switch/index.d.ts +15 -0
- package/dist/packages/switch/index.js +2455 -0
- package/dist/packages/switch/index.js.map +7 -0
- package/dist/packages/switch/react.d.ts +5 -0
- package/dist/packages/switch/react.js +15 -0
- package/dist/packages/switch/styles.d.ts +1 -0
- package/dist/packages/switch/styles.js +2 -0
- package/dist/packages/switch/switch.react.stories.d.ts +15 -0
- package/dist/packages/switch/switch.react.stories.js +29 -0
- package/dist/packages/switch/switch.stories.d.ts +9 -0
- package/dist/packages/switch/switch.stories.js +34 -0
- package/dist/packages/tabs/index.d.ts +4 -0
- package/dist/packages/tabs/index.js +3 -0
- package/dist/packages/tabs/react.d.ts +12 -0
- package/dist/packages/tabs/react.js +31 -0
- package/dist/packages/tabs/styles.d.ts +1 -0
- package/dist/packages/tabs/styles.js +2 -0
- package/dist/packages/tabs/tab-panel.d.ts +20 -0
- package/dist/packages/tabs/tab-panel.js +51 -0
- package/dist/packages/tabs/tab.d.ts +18 -0
- package/dist/packages/tabs/tab.js +2463 -0
- package/dist/packages/tabs/tab.js.map +7 -0
- package/dist/packages/tabs/tabs.d.ts +40 -0
- package/dist/packages/tabs/tabs.js +2448 -0
- package/dist/packages/tabs/tabs.js.map +7 -0
- package/dist/packages/tabs/tabs.react.stories.d.ts +15 -0
- package/dist/packages/tabs/tabs.react.stories.js +51 -0
- package/dist/packages/tabs/tabs.stories.d.ts +8 -0
- package/dist/packages/tabs/tabs.stories.js +84 -0
- package/dist/packages/toggle-styles.d.ts +1 -0
- package/dist/packages/toggle-styles.js +109 -0
- package/dist/web-types.json +496 -1
- package/package.json +184 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import type { WarpAffix } from "./packages/affix/index.ts";
|
|
3
3
|
import type { WarpAlert } from "./packages/alert/index.ts";
|
|
4
|
+
import type { WarpLink } from "./packages/link/index.ts";
|
|
4
5
|
import type { WarpButton } from "./packages/button/index.ts";
|
|
5
6
|
import type { WarpAttention } from "./packages/attention/index.ts";
|
|
6
7
|
import type { WarpBadge } from "./packages/badge/index.ts";
|
|
@@ -15,9 +16,17 @@ import type { ModalFooter } from "./packages/modal/modal-footer.ts";
|
|
|
15
16
|
import type { ModalHeader } from "./packages/modal/modal-header.ts";
|
|
16
17
|
import type { ModalMain } from "./packages/modal/modal-main.ts";
|
|
17
18
|
import type { WarpToastContainer } from "./packages/toast/toast-container.ts";
|
|
19
|
+
import type { WarpCombobox } from "./packages/combobox/index.ts";
|
|
20
|
+
import type { WarpDatepicker } from "./packages/datepicker/datepicker.ts";
|
|
21
|
+
import type { WarpDeadToggle } from "./packages/dead-toggle/index.ts";
|
|
22
|
+
import type { WarpPageIndicator } from "./packages/pageindicator/index.ts";
|
|
18
23
|
import type { WarpPagination } from "./packages/pagination/index.ts";
|
|
19
24
|
import type { WarpSliderThumb } from "./packages/slider/slider-thumb.ts";
|
|
20
25
|
import type { WarpSlider } from "./packages/slider/slider.ts";
|
|
26
|
+
import type { WarpSteps, WarpStep } from "./packages/steps/index.ts";
|
|
27
|
+
import type { WarpSwitch } from "./packages/switch/index.ts";
|
|
28
|
+
import type { WarpTab } from "./packages/tabs/tab.ts";
|
|
29
|
+
import type { WarpTabs } from "./packages/tabs/tabs.ts";
|
|
21
30
|
|
|
22
31
|
/**
|
|
23
32
|
* This type can be used to create scoped tags for your components.
|
|
@@ -130,6 +139,40 @@ export type WarpAlertProps = {
|
|
|
130
139
|
}
|
|
131
140
|
|
|
132
141
|
|
|
142
|
+
export type WarpLinkProps = {
|
|
143
|
+
/** */
|
|
144
|
+
"autofocus"?: WarpLink['autofocus'];
|
|
145
|
+
/** */
|
|
146
|
+
"variant"?: WarpLink['variant'];
|
|
147
|
+
/** */
|
|
148
|
+
"quiet"?: WarpLink['quiet'];
|
|
149
|
+
/** */
|
|
150
|
+
"small"?: WarpLink['small'];
|
|
151
|
+
/** */
|
|
152
|
+
"href"?: WarpLink['href'];
|
|
153
|
+
/** */
|
|
154
|
+
"disabled"?: WarpLink['disabled'];
|
|
155
|
+
/** */
|
|
156
|
+
"target"?: WarpLink['target'];
|
|
157
|
+
/** */
|
|
158
|
+
"rel"?: WarpLink['rel'];
|
|
159
|
+
/** */
|
|
160
|
+
"full-width"?: WarpLink['fullWidth'];
|
|
161
|
+
/** */
|
|
162
|
+
"fullWidth"?: WarpLink['fullWidth'];
|
|
163
|
+
/** */
|
|
164
|
+
"button-class"?: WarpLink['buttonClass'];
|
|
165
|
+
/** */
|
|
166
|
+
"buttonClass"?: WarpLink['buttonClass'];
|
|
167
|
+
/** */
|
|
168
|
+
"name"?: WarpLink['name'];
|
|
169
|
+
/** */
|
|
170
|
+
"classes"?: WarpLink['classes'];
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
|
|
133
176
|
export type WarpButtonProps = {
|
|
134
177
|
/** */
|
|
135
178
|
"type"?: WarpButton['type'];
|
|
@@ -473,6 +516,152 @@ export type WarpToastContainerProps = {
|
|
|
473
516
|
}
|
|
474
517
|
|
|
475
518
|
|
|
519
|
+
export type WarpComboboxProps = {
|
|
520
|
+
/** The available options to select from */
|
|
521
|
+
"options"?: WarpCombobox['options'];
|
|
522
|
+
/** Label above input */
|
|
523
|
+
"label"?: WarpCombobox['label'];
|
|
524
|
+
/** Input placeholder */
|
|
525
|
+
"placeholder"?: WarpCombobox['placeholder'];
|
|
526
|
+
/** The input value */
|
|
527
|
+
"value"?: WarpCombobox['value'];
|
|
528
|
+
/** Whether the popover opens when focus is on the text field */
|
|
529
|
+
"open-on-focus"?: WarpCombobox['openOnFocus'];
|
|
530
|
+
/** Whether the popover opens when focus is on the text field */
|
|
531
|
+
"openOnFocus"?: WarpCombobox['openOnFocus'];
|
|
532
|
+
/** Select active option on blur */
|
|
533
|
+
"select-on-blur"?: WarpCombobox['selectOnBlur'];
|
|
534
|
+
/** Select active option on blur */
|
|
535
|
+
"selectOnBlur"?: WarpCombobox['selectOnBlur'];
|
|
536
|
+
/** Whether the matching text segments in the options should be highlighted */
|
|
537
|
+
"match-text-segments"?: WarpCombobox['matchTextSegments'];
|
|
538
|
+
/** Whether the matching text segments in the options should be highlighted */
|
|
539
|
+
"matchTextSegments"?: WarpCombobox['matchTextSegments'];
|
|
540
|
+
/** Disable client-side static filtering */
|
|
541
|
+
"disable-static-filtering"?: WarpCombobox['disableStaticFiltering'];
|
|
542
|
+
/** Disable client-side static filtering */
|
|
543
|
+
"disableStaticFiltering"?: WarpCombobox['disableStaticFiltering'];
|
|
544
|
+
/** Renders the input field in an invalid state */
|
|
545
|
+
"invalid"?: WarpCombobox['invalid'];
|
|
546
|
+
/** The content to display as the help text */
|
|
547
|
+
"help-text"?: WarpCombobox['helpText'];
|
|
548
|
+
/** The content to display as the help text */
|
|
549
|
+
"helpText"?: WarpCombobox['helpText'];
|
|
550
|
+
/** Whether the element is disabled */
|
|
551
|
+
"disabled"?: WarpCombobox['disabled'];
|
|
552
|
+
/** Whether the element is required */
|
|
553
|
+
"required"?: WarpCombobox['required'];
|
|
554
|
+
/** Whether to show optional text */
|
|
555
|
+
"optional"?: WarpCombobox['optional'];
|
|
556
|
+
/** Additional container styling */
|
|
557
|
+
"class-name"?: WarpCombobox['containerClassName'];
|
|
558
|
+
/** Additional container styling */
|
|
559
|
+
"containerClassName"?: WarpCombobox['containerClassName'];
|
|
560
|
+
/** Additional list styling */
|
|
561
|
+
"list-class-name"?: WarpCombobox['listClassName'];
|
|
562
|
+
/** Additional list styling */
|
|
563
|
+
"listClassName"?: WarpCombobox['listClassName'];
|
|
564
|
+
/** Name attribute for form submission */
|
|
565
|
+
"name"?: WarpCombobox['name'];
|
|
566
|
+
|
|
567
|
+
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
|
|
571
|
+
export type WarpDatepickerProps = {
|
|
572
|
+
/** */
|
|
573
|
+
"label"?: WarpDatepicker['label'];
|
|
574
|
+
/** Takes precedence over the `<html>` lang attribute. */
|
|
575
|
+
"lang"?: WarpDatepicker['lang'];
|
|
576
|
+
/** */
|
|
577
|
+
"name"?: WarpDatepicker['name'];
|
|
578
|
+
/** */
|
|
579
|
+
"value"?: WarpDatepicker['value'];
|
|
580
|
+
/** Decides the format of the date as shown in the calendar header.
|
|
581
|
+
|
|
582
|
+
The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format). */
|
|
583
|
+
"header-format"?: WarpDatepicker['headerFormat'];
|
|
584
|
+
/** Decides the format of the date as shown in the calendar header.
|
|
585
|
+
|
|
586
|
+
The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format). */
|
|
587
|
+
"headerFormat"?: WarpDatepicker['headerFormat'];
|
|
588
|
+
/** Decides the format of the weekday as shown above the grid of dates in the calendar.
|
|
589
|
+
|
|
590
|
+
The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format). */
|
|
591
|
+
"weekday-format"?: WarpDatepicker['weekdayFormat'];
|
|
592
|
+
/** Decides the format of the weekday as shown above the grid of dates in the calendar.
|
|
593
|
+
|
|
594
|
+
The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format). */
|
|
595
|
+
"weekdayFormat"?: WarpDatepicker['weekdayFormat'];
|
|
596
|
+
/** Decides the format of the day in the calendar as read to screen readers.
|
|
597
|
+
|
|
598
|
+
The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format). */
|
|
599
|
+
"day-format"?: WarpDatepicker['dayFormat'];
|
|
600
|
+
/** Decides the format of the day in the calendar as read to screen readers.
|
|
601
|
+
|
|
602
|
+
The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format). */
|
|
603
|
+
"dayFormat"?: WarpDatepicker['dayFormat'];
|
|
604
|
+
/** Lets you control if a date in the calendar should be disabled.
|
|
605
|
+
|
|
606
|
+
This needs to be set on the element instance in JavaScript, not as an HTML attribute. */
|
|
607
|
+
"isDayDisabled"?: WarpDatepicker['isDayDisabled'];
|
|
608
|
+
/** */
|
|
609
|
+
"isCalendarOpen"?: WarpDatepicker['isCalendarOpen'];
|
|
610
|
+
/** */
|
|
611
|
+
"navigationDate"?: WarpDatepicker['navigationDate'];
|
|
612
|
+
/** */
|
|
613
|
+
"calendar"?: WarpDatepicker['calendar'];
|
|
614
|
+
/** */
|
|
615
|
+
"input"?: WarpDatepicker['input'];
|
|
616
|
+
/** */
|
|
617
|
+
"toggleButton"?: WarpDatepicker['toggleButton'];
|
|
618
|
+
/** */
|
|
619
|
+
"wrapper"?: WarpDatepicker['wrapper'];
|
|
620
|
+
/** This is the first focusable element, needed for the modal focus trap.
|
|
621
|
+
|
|
622
|
+
Don't cache this and other `@query` fields from inside the calendar modal.
|
|
623
|
+
They work the first time, but once the calendar is closed and reopened
|
|
624
|
+
the query will point to an element that doesn't exist anymore. */
|
|
625
|
+
"previousMonthButton"?: WarpDatepicker['previousMonthButton'];
|
|
626
|
+
/** */
|
|
627
|
+
"todayCell"?: WarpDatepicker['todayCell'];
|
|
628
|
+
/** */
|
|
629
|
+
"selectedCell"?: WarpDatepicker['selectedCell'];
|
|
630
|
+
|
|
631
|
+
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
|
|
635
|
+
export type WarpDeadToggleProps = {
|
|
636
|
+
/** */
|
|
637
|
+
"type"?: WarpDeadToggle['type'];
|
|
638
|
+
/** */
|
|
639
|
+
"checked"?: WarpDeadToggle['checked'];
|
|
640
|
+
/** */
|
|
641
|
+
"indeterminate"?: WarpDeadToggle['indeterminate'];
|
|
642
|
+
/** */
|
|
643
|
+
"invalid"?: WarpDeadToggle['invalid'];
|
|
644
|
+
/** */
|
|
645
|
+
"disabled"?: WarpDeadToggle['disabled'];
|
|
646
|
+
|
|
647
|
+
|
|
648
|
+
}
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
export type WarpPageIndicatorProps = {
|
|
652
|
+
/** Currently selected page (1-based index) */
|
|
653
|
+
"selected-page"?: WarpPageIndicator['selectedPage'];
|
|
654
|
+
/** Currently selected page (1-based index) */
|
|
655
|
+
"selectedPage"?: WarpPageIndicator['selectedPage'];
|
|
656
|
+
/** Total number of pages */
|
|
657
|
+
"page-count"?: WarpPageIndicator['pageCount'];
|
|
658
|
+
/** Total number of pages */
|
|
659
|
+
"pageCount"?: WarpPageIndicator['pageCount'];
|
|
660
|
+
|
|
661
|
+
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
|
|
476
665
|
export type WarpPaginationProps = {
|
|
477
666
|
/** */
|
|
478
667
|
"base-url"?: WarpPagination['baseUrl'];
|
|
@@ -560,6 +749,68 @@ If you need to display HTML, use the `label` slot instead. */
|
|
|
560
749
|
"formatter"?: WarpSlider['formatter'];
|
|
561
750
|
|
|
562
751
|
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
|
|
755
|
+
export type WarpStepsProps = {
|
|
756
|
+
/** */
|
|
757
|
+
"horizontal"?: WarpSteps['horizontal'];
|
|
758
|
+
/** */
|
|
759
|
+
"right"?: WarpSteps['right'];
|
|
760
|
+
|
|
761
|
+
|
|
762
|
+
}
|
|
763
|
+
|
|
764
|
+
|
|
765
|
+
export type WarpStepProps = {
|
|
766
|
+
/** */
|
|
767
|
+
"active"?: WarpStep['active'];
|
|
768
|
+
/** */
|
|
769
|
+
"completed"?: WarpStep['completed'];
|
|
770
|
+
|
|
771
|
+
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
|
|
775
|
+
export type WarpSwitchProps = {
|
|
776
|
+
/** */
|
|
777
|
+
"value"?: WarpSwitch['value'];
|
|
778
|
+
/** */
|
|
779
|
+
"disabled"?: WarpSwitch['disabled'];
|
|
780
|
+
|
|
781
|
+
/** */
|
|
782
|
+
"onchange"?: (e: CustomEvent<CustomEvent>) => void;
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
|
|
786
|
+
export type WarpTabProps = {
|
|
787
|
+
/** */
|
|
788
|
+
"name"?: WarpTab['name'];
|
|
789
|
+
/** */
|
|
790
|
+
"label"?: WarpTab['label'];
|
|
791
|
+
/** */
|
|
792
|
+
"active"?: WarpTab['active'];
|
|
793
|
+
/** */
|
|
794
|
+
"over"?: WarpTab['over'];
|
|
795
|
+
/** */
|
|
796
|
+
"tab-class"?: WarpTab['tabClass'];
|
|
797
|
+
/** */
|
|
798
|
+
"tabClass"?: WarpTab['tabClass'];
|
|
799
|
+
|
|
800
|
+
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
|
|
804
|
+
export type WarpTabsProps = {
|
|
805
|
+
/** */
|
|
806
|
+
"active"?: WarpTabs['active'];
|
|
807
|
+
/** */
|
|
808
|
+
"tab-class"?: WarpTabs['tabClass'];
|
|
809
|
+
/** */
|
|
810
|
+
"tabClass"?: WarpTabs['tabClass'];
|
|
811
|
+
|
|
812
|
+
/** */
|
|
813
|
+
"onchange"?: (e: CustomEvent<CustomEvent>) => void;
|
|
563
814
|
}
|
|
564
815
|
|
|
565
816
|
export type CustomElements = {
|
|
@@ -604,6 +855,31 @@ If you need to display HTML, use the `label` slot instead. */
|
|
|
604
855
|
"w-alert": Partial<WarpAlertProps & BaseProps<WarpAlert> & BaseEvents>;
|
|
605
856
|
|
|
606
857
|
|
|
858
|
+
/**
|
|
859
|
+
* Buttons are used to perform actions, with different visuals for different needs.
|
|
860
|
+
*
|
|
861
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/buttons-link--docs)
|
|
862
|
+
*
|
|
863
|
+
* ## Attributes & Properties
|
|
864
|
+
*
|
|
865
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
866
|
+
*
|
|
867
|
+
* - `autofocus`: undefined
|
|
868
|
+
* - `variant`: undefined
|
|
869
|
+
* - `quiet`: undefined
|
|
870
|
+
* - `small`: undefined
|
|
871
|
+
* - `href`: undefined
|
|
872
|
+
* - `disabled`: undefined
|
|
873
|
+
* - `target`: undefined
|
|
874
|
+
* - `rel`: undefined
|
|
875
|
+
* - `full-width`/`fullWidth`: undefined
|
|
876
|
+
* - `button-class`/`buttonClass`: undefined
|
|
877
|
+
* - `name`: undefined
|
|
878
|
+
* - `classes`: undefined (property only)
|
|
879
|
+
*/
|
|
880
|
+
"w-link": Partial<WarpLinkProps & BaseProps<WarpLink> & BaseEvents>;
|
|
881
|
+
|
|
882
|
+
|
|
607
883
|
/**
|
|
608
884
|
* Buttons are used to perform actions, widh different visuals for different needs.
|
|
609
885
|
*
|
|
@@ -980,6 +1256,113 @@ If you need to display HTML, use the `label` slot instead. */
|
|
|
980
1256
|
"w-toast-container": Partial<WarpToastContainerProps & BaseProps<WarpToastContainer> & BaseEvents>;
|
|
981
1257
|
|
|
982
1258
|
|
|
1259
|
+
/**
|
|
1260
|
+
* A combobox element for text input with selectable options.
|
|
1261
|
+
*
|
|
1262
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/forms-combobox--docs)
|
|
1263
|
+
*
|
|
1264
|
+
* ## Attributes & Properties
|
|
1265
|
+
*
|
|
1266
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1267
|
+
*
|
|
1268
|
+
* - `options`: The available options to select from
|
|
1269
|
+
* - `label`: Label above input
|
|
1270
|
+
* - `placeholder`: Input placeholder
|
|
1271
|
+
* - `value`: The input value
|
|
1272
|
+
* - `open-on-focus`/`openOnFocus`: Whether the popover opens when focus is on the text field
|
|
1273
|
+
* - `select-on-blur`/`selectOnBlur`: Select active option on blur
|
|
1274
|
+
* - `match-text-segments`/`matchTextSegments`: Whether the matching text segments in the options should be highlighted
|
|
1275
|
+
* - `disable-static-filtering`/`disableStaticFiltering`: Disable client-side static filtering
|
|
1276
|
+
* - `invalid`: Renders the input field in an invalid state
|
|
1277
|
+
* - `help-text`/`helpText`: The content to display as the help text
|
|
1278
|
+
* - `disabled`: Whether the element is disabled
|
|
1279
|
+
* - `required`: Whether the element is required
|
|
1280
|
+
* - `optional`: Whether to show optional text
|
|
1281
|
+
* - `class-name`/`containerClassName`: Additional container styling
|
|
1282
|
+
* - `list-class-name`/`listClassName`: Additional list styling
|
|
1283
|
+
* - `name`: Name attribute for form submission
|
|
1284
|
+
*/
|
|
1285
|
+
"w-combobox": Partial<WarpComboboxProps & BaseProps<WarpCombobox> & BaseEvents>;
|
|
1286
|
+
|
|
1287
|
+
|
|
1288
|
+
/**
|
|
1289
|
+
* An input for dates.
|
|
1290
|
+
*
|
|
1291
|
+
* Uses the `lang` attribute on either the element or on `<html>` to determine the locale options.
|
|
1292
|
+
*
|
|
1293
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/forms-datepicker--docs)
|
|
1294
|
+
*
|
|
1295
|
+
* ## Attributes & Properties
|
|
1296
|
+
*
|
|
1297
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1298
|
+
*
|
|
1299
|
+
* - `label`: undefined
|
|
1300
|
+
* - `lang`: Takes precedence over the `<html>` lang attribute.
|
|
1301
|
+
* - `name`: undefined
|
|
1302
|
+
* - `value`: undefined
|
|
1303
|
+
* - `header-format`/`headerFormat`: Decides the format of the date as shown in the calendar header.
|
|
1304
|
+
*
|
|
1305
|
+
* The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format).
|
|
1306
|
+
* - `weekday-format`/`weekdayFormat`: Decides the format of the weekday as shown above the grid of dates in the calendar.
|
|
1307
|
+
*
|
|
1308
|
+
* The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format).
|
|
1309
|
+
* - `day-format`/`dayFormat`: Decides the format of the day in the calendar as read to screen readers.
|
|
1310
|
+
*
|
|
1311
|
+
* The syntax is defined by [date-fns/format](https://date-fns.org/v4.1.0/docs/format).
|
|
1312
|
+
* - `isDayDisabled`: Lets you control if a date in the calendar should be disabled.
|
|
1313
|
+
*
|
|
1314
|
+
* This needs to be set on the element instance in JavaScript, not as an HTML attribute. (property only)
|
|
1315
|
+
* - `isCalendarOpen`: undefined (property only)
|
|
1316
|
+
* - `navigationDate`: undefined (property only)
|
|
1317
|
+
* - `selectedDate`: undefined (property only) (readonly)
|
|
1318
|
+
* - `month`: undefined (property only) (readonly)
|
|
1319
|
+
* - `weeks`: undefined (property only) (readonly)
|
|
1320
|
+
* - `calendar`: undefined (property only)
|
|
1321
|
+
* - `input`: undefined (property only)
|
|
1322
|
+
* - `toggleButton`: undefined (property only)
|
|
1323
|
+
* - `wrapper`: undefined (property only)
|
|
1324
|
+
* - `previousMonthButton`: This is the first focusable element, needed for the modal focus trap.
|
|
1325
|
+
*
|
|
1326
|
+
* Don't cache this and other `@query` fields from inside the calendar modal.
|
|
1327
|
+
* They work the first time, but once the calendar is closed and reopened
|
|
1328
|
+
* the query will point to an element that doesn't exist anymore. (property only)
|
|
1329
|
+
* - `todayCell`: undefined (property only)
|
|
1330
|
+
* - `selectedCell`: undefined (property only)
|
|
1331
|
+
*/
|
|
1332
|
+
"w-datepicker": Partial<WarpDatepickerProps & BaseProps<WarpDatepicker> & BaseEvents>;
|
|
1333
|
+
|
|
1334
|
+
|
|
1335
|
+
/**
|
|
1336
|
+
* Dead toggle can be used where the appearance of a checkbox or radio is needed - but for accessibility purposes an actual input element should not be present.
|
|
1337
|
+
*
|
|
1338
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/forms-dead-toggle--docs)
|
|
1339
|
+
*
|
|
1340
|
+
* ## Attributes & Properties
|
|
1341
|
+
*
|
|
1342
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1343
|
+
*
|
|
1344
|
+
* - `type`: undefined
|
|
1345
|
+
* - `checked`: undefined
|
|
1346
|
+
* - `indeterminate`: undefined
|
|
1347
|
+
* - `invalid`: undefined
|
|
1348
|
+
* - `disabled`: undefined
|
|
1349
|
+
*/
|
|
1350
|
+
"w-dead-toggle": Partial<WarpDeadToggleProps & BaseProps<WarpDeadToggle> & BaseEvents>;
|
|
1351
|
+
|
|
1352
|
+
|
|
1353
|
+
/**
|
|
1354
|
+
*
|
|
1355
|
+
*
|
|
1356
|
+
* ## Attributes & Properties
|
|
1357
|
+
*
|
|
1358
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1359
|
+
*
|
|
1360
|
+
* - `selected-page`/`selectedPage`: Currently selected page (1-based index)
|
|
1361
|
+
* - `page-count`/`pageCount`: Total number of pages
|
|
1362
|
+
*/
|
|
1363
|
+
"w-pageindicator": Partial<WarpPageIndicatorProps & BaseProps<WarpPageIndicator> & BaseEvents>;
|
|
1364
|
+
|
|
1365
|
+
|
|
983
1366
|
/**
|
|
984
1367
|
* Pagination allows users to navigate through multiple pages of content by providing navigation controls with page numbers and directional arrows.
|
|
985
1368
|
*
|
|
@@ -1070,6 +1453,107 @@ If you need to display HTML, use the `label` slot instead. */
|
|
|
1070
1453
|
* - `to`: Range sliders need to place a `<w-slider-thumb>` in the from and to slots.
|
|
1071
1454
|
*/
|
|
1072
1455
|
"w-slider": Partial<WarpSliderProps & BaseProps<WarpSlider> & BaseEvents>;
|
|
1456
|
+
|
|
1457
|
+
|
|
1458
|
+
/**
|
|
1459
|
+
* Steps are used to show progress through a process or to guide users through a multi-step task.
|
|
1460
|
+
*
|
|
1461
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/components-steps--docs)
|
|
1462
|
+
*
|
|
1463
|
+
* ## Attributes & Properties
|
|
1464
|
+
*
|
|
1465
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1466
|
+
*
|
|
1467
|
+
* - `horizontal`: undefined
|
|
1468
|
+
* - `right`: undefined
|
|
1469
|
+
*
|
|
1470
|
+
* ## Methods
|
|
1471
|
+
*
|
|
1472
|
+
* Methods that can be called to access component functionality.
|
|
1473
|
+
*
|
|
1474
|
+
* - `updateStepsContext() => void`: undefined
|
|
1475
|
+
*/
|
|
1476
|
+
"w-steps": Partial<WarpStepsProps & BaseProps<WarpSteps> & BaseEvents>;
|
|
1477
|
+
|
|
1478
|
+
|
|
1479
|
+
/**
|
|
1480
|
+
* Individual step component that shows a single step in a process
|
|
1481
|
+
*
|
|
1482
|
+
* ## Attributes & Properties
|
|
1483
|
+
*
|
|
1484
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1485
|
+
*
|
|
1486
|
+
* - `active`: undefined
|
|
1487
|
+
* - `completed`: undefined
|
|
1488
|
+
*
|
|
1489
|
+
* ## Methods
|
|
1490
|
+
*
|
|
1491
|
+
* Methods that can be called to access component functionality.
|
|
1492
|
+
*
|
|
1493
|
+
* - `setContext(context: StepsContext) => void`: undefined
|
|
1494
|
+
* - `getAriaLabel() => void`: undefined
|
|
1495
|
+
*/
|
|
1496
|
+
"w-step": Partial<WarpStepProps & BaseProps<WarpStep> & BaseEvents>;
|
|
1497
|
+
|
|
1498
|
+
|
|
1499
|
+
/**
|
|
1500
|
+
*
|
|
1501
|
+
*
|
|
1502
|
+
* ## Attributes & Properties
|
|
1503
|
+
*
|
|
1504
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1505
|
+
*
|
|
1506
|
+
* - `value`: undefined
|
|
1507
|
+
* - `disabled`: undefined
|
|
1508
|
+
*
|
|
1509
|
+
* ## Events
|
|
1510
|
+
*
|
|
1511
|
+
* Events that will be emitted by the component.
|
|
1512
|
+
*
|
|
1513
|
+
* - `change`: undefined
|
|
1514
|
+
*/
|
|
1515
|
+
"w-switch": Partial<WarpSwitchProps & BaseProps<WarpSwitch> & BaseEvents>;
|
|
1516
|
+
|
|
1517
|
+
|
|
1518
|
+
/**
|
|
1519
|
+
* Individual tab component used within w-tabs container.
|
|
1520
|
+
*
|
|
1521
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/tabs--docs)
|
|
1522
|
+
*
|
|
1523
|
+
* ## Attributes & Properties
|
|
1524
|
+
*
|
|
1525
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1526
|
+
*
|
|
1527
|
+
* - `name`: undefined
|
|
1528
|
+
* - `label`: undefined
|
|
1529
|
+
* - `active`: undefined
|
|
1530
|
+
* - `over`: undefined
|
|
1531
|
+
* - `tab-class`/`tabClass`: undefined
|
|
1532
|
+
*/
|
|
1533
|
+
"w-tab": Partial<WarpTabProps & BaseProps<WarpTab> & BaseEvents>;
|
|
1534
|
+
|
|
1535
|
+
|
|
1536
|
+
/**
|
|
1537
|
+
* Tabs are used to organize content by grouping similar information on the same page.
|
|
1538
|
+
*
|
|
1539
|
+
* [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/tabs--docs)
|
|
1540
|
+
*
|
|
1541
|
+
* ## Attributes & Properties
|
|
1542
|
+
*
|
|
1543
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
1544
|
+
*
|
|
1545
|
+
* - `active`: undefined
|
|
1546
|
+
* - `tab-class`/`tabClass`: undefined
|
|
1547
|
+
* - `tabs`: undefined (property only) (readonly)
|
|
1548
|
+
* - `activeTab`: undefined (property only) (readonly)
|
|
1549
|
+
*
|
|
1550
|
+
* ## Events
|
|
1551
|
+
*
|
|
1552
|
+
* Events that will be emitted by the component.
|
|
1553
|
+
*
|
|
1554
|
+
* - `change`: undefined
|
|
1555
|
+
*/
|
|
1556
|
+
"w-tabs": Partial<WarpTabsProps & BaseProps<WarpTabs> & BaseEvents>;
|
|
1073
1557
|
}
|
|
1074
1558
|
|
|
1075
1559
|
export type CustomCssProperties = {
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StoryObj } from '@storybook/react';
|
|
3
|
+
import { Combobox } from './react';
|
|
4
|
+
declare const _default: {
|
|
5
|
+
title: string;
|
|
6
|
+
component: import("@lit/react").ReactWebComponent<import(".").WarpCombobox, {
|
|
7
|
+
onSelect: string;
|
|
8
|
+
onselect: string;
|
|
9
|
+
onChange: string;
|
|
10
|
+
onchange: string;
|
|
11
|
+
}>;
|
|
12
|
+
render(args: Omit<React.HTMLAttributes<import(".").WarpCombobox>, "label" | "onchange" | "onselect" | "onChange" | "onSelect" | "render" | "renderOptions" | "connectedCallback" | "disconnectedCallback" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "disabled" | "name" | "value" | "invalid" | "optional" | "helpText" | "placeholder" | "required" | "options" | "openOnFocus" | "selectOnBlur" | "matchTextSegments" | "disableStaticFiltering" | "containerClassName" | "listClassName"> & {
|
|
13
|
+
onSelect?: (e: Event) => void;
|
|
14
|
+
onselect?: (e: Event) => void;
|
|
15
|
+
onChange?: (e: Event) => void;
|
|
16
|
+
onchange?: (e: Event) => void;
|
|
17
|
+
} & Partial<Omit<import(".").WarpCombobox, keyof HTMLElement>> & React.RefAttributes<import(".").WarpCombobox>): React.JSX.Element;
|
|
18
|
+
};
|
|
19
|
+
export default _default;
|
|
20
|
+
export type Story = StoryObj<typeof Combobox>;
|
|
21
|
+
export declare const Default: Story;
|
|
22
|
+
export declare const WithValue: Story;
|
|
23
|
+
export declare const OpenOnFocus: Story;
|
|
24
|
+
export declare const WithTextMatching: Story;
|
|
25
|
+
export declare const Invalid: Story;
|
|
26
|
+
export declare const Disabled: Story;
|
|
27
|
+
export declare const Optional: Story;
|
|
28
|
+
export declare const DisableStaticFiltering: Story;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Combobox } from './react';
|
|
3
|
+
export default {
|
|
4
|
+
title: 'Forms/Combobox',
|
|
5
|
+
component: Combobox,
|
|
6
|
+
render(args) {
|
|
7
|
+
return React.createElement(Combobox, { ...args, options: sampleOptions });
|
|
8
|
+
},
|
|
9
|
+
};
|
|
10
|
+
const sampleOptions = [
|
|
11
|
+
{ value: 'Apple', label: 'Apple' },
|
|
12
|
+
{ value: 'Banana', label: 'Banana' },
|
|
13
|
+
{ value: 'Orange', label: 'Orange' },
|
|
14
|
+
{ value: 'Grape', label: 'Grape' },
|
|
15
|
+
{ value: 'Strawberry', label: 'Strawberry' },
|
|
16
|
+
{ value: 'Pineapple', label: 'Pineapple' },
|
|
17
|
+
{ value: 'Mango', label: 'Mango' },
|
|
18
|
+
];
|
|
19
|
+
export const Default = {
|
|
20
|
+
args: {
|
|
21
|
+
options: sampleOptions,
|
|
22
|
+
label: 'Select a fruit',
|
|
23
|
+
placeholder: 'Type to search...',
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
export const WithValue = {
|
|
27
|
+
args: {
|
|
28
|
+
options: sampleOptions,
|
|
29
|
+
label: 'Select a fruit',
|
|
30
|
+
placeholder: 'Type to search...',
|
|
31
|
+
value: 'Apple',
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
export const OpenOnFocus = {
|
|
35
|
+
args: {
|
|
36
|
+
options: sampleOptions,
|
|
37
|
+
label: 'Select a fruit',
|
|
38
|
+
placeholder: 'Type to search...',
|
|
39
|
+
openOnFocus: true,
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
export const WithTextMatching = {
|
|
43
|
+
args: {
|
|
44
|
+
options: sampleOptions,
|
|
45
|
+
label: 'Select a fruit',
|
|
46
|
+
placeholder: 'Type to search...',
|
|
47
|
+
matchTextSegments: true,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
export const Invalid = {
|
|
51
|
+
args: {
|
|
52
|
+
options: sampleOptions,
|
|
53
|
+
label: 'Select a fruit',
|
|
54
|
+
placeholder: 'Type to search...',
|
|
55
|
+
value: 'Invalid fruit',
|
|
56
|
+
helpText: 'Please select a valid fruit from the list',
|
|
57
|
+
invalid: true,
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
export const Disabled = {
|
|
61
|
+
args: {
|
|
62
|
+
options: sampleOptions,
|
|
63
|
+
label: 'Select a fruit',
|
|
64
|
+
placeholder: 'Type to search...',
|
|
65
|
+
value: 'Apple',
|
|
66
|
+
disabled: true,
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
export const Optional = {
|
|
70
|
+
args: {
|
|
71
|
+
options: sampleOptions,
|
|
72
|
+
label: 'Select a fruit',
|
|
73
|
+
placeholder: 'Type to search...',
|
|
74
|
+
optional: true,
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
export const DisableStaticFiltering = {
|
|
78
|
+
render: () => {
|
|
79
|
+
const [options, setOptions] = React.useState(sampleOptions);
|
|
80
|
+
const [val, setVal] = React.useState('');
|
|
81
|
+
return (React.createElement(Combobox, { id: "combobox-dynamic", label: "Select a fruit (dynamic)", placeholder: "Type to search...", disableStaticFiltering: true, value: val, options: options, onChange: (e) => {
|
|
82
|
+
setVal(e.detail.value);
|
|
83
|
+
// Simulate dynamic filtering
|
|
84
|
+
const filteredOptions = sampleOptions.filter((option) => option.value.toLowerCase().includes(e.detail.value.toLowerCase()));
|
|
85
|
+
setOptions(filteredOptions);
|
|
86
|
+
}, onSelect: (e) => {
|
|
87
|
+
setVal(e.detail.value);
|
|
88
|
+
} }));
|
|
89
|
+
},
|
|
90
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components';
|
|
2
|
+
import './index.js';
|
|
3
|
+
import '../textfield/index.js';
|
|
4
|
+
import type { WarpCombobox } from './index.js';
|
|
5
|
+
declare const args: Partial<WarpCombobox> & {
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
};
|
|
8
|
+
declare const meta: Meta<typeof args>;
|
|
9
|
+
export default meta;
|
|
10
|
+
type Story = StoryObj<WarpCombobox>;
|
|
11
|
+
export declare const Default: Story;
|
|
12
|
+
export declare const WithValue: Story;
|
|
13
|
+
export declare const OpenOnFocus: Story;
|
|
14
|
+
export declare const WithTextMatching: Story;
|
|
15
|
+
export declare const Invalid: Story;
|
|
16
|
+
export declare const Disabled: Story;
|
|
17
|
+
export declare const Optional: Story;
|
|
18
|
+
export declare const DisableStaticFiltering: Story;
|