@waggylabs/yumekit 0.4.3-beta.37 → 0.4.3-beta.39

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.
Files changed (110) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/README.md +2 -1
  3. package/dist/components/y-appbar.d.ts +66 -0
  4. package/dist/components/y-avatar.d.ts +23 -0
  5. package/dist/components/y-badge.d.ts +25 -0
  6. package/dist/components/y-banner.d.ts +38 -0
  7. package/dist/components/y-button-group.d.ts +13 -0
  8. package/dist/components/y-button.d.ts +65 -0
  9. package/dist/components/y-card.d.ts +16 -0
  10. package/dist/components/y-checkbox.d.ts +32 -0
  11. package/dist/components/y-color.d.ts +46 -0
  12. package/dist/components/y-colorpicker.d.ts +73 -0
  13. package/dist/components/y-date.d.ts +180 -0
  14. package/dist/components/y-datepicker.d.ts +121 -0
  15. package/dist/components/y-dialog.d.ts +40 -0
  16. package/dist/components/y-gallery.d.ts +66 -0
  17. package/dist/components/y-icon.d.ts +26 -0
  18. package/dist/components/y-input.d.ts +43 -0
  19. package/dist/components/y-panel.d.ts +36 -0
  20. package/dist/components/y-panelbar.d.ts +3 -0
  21. package/dist/components/y-progress.d.ts +47 -0
  22. package/dist/components/y-radio.d.ts +32 -0
  23. package/dist/components/y-rating.d.ts +40 -0
  24. package/dist/components/y-select.d.ts +82 -0
  25. package/dist/components/y-slider.d.ts +45 -0
  26. package/dist/components/y-stack.d.ts +52 -0
  27. package/dist/components/y-stepper/y-stepper.d.ts +58 -0
  28. package/dist/components/y-stepper.d.ts +58 -0
  29. package/dist/components/y-stepper.js +921 -0
  30. package/dist/components/y-table.d.ts +29 -0
  31. package/dist/components/y-tabs.d.ts +28 -0
  32. package/dist/components/y-tag.d.ts +24 -0
  33. package/dist/components/y-textarea.d.ts +38 -0
  34. package/dist/components/y-theme.d.ts +31 -0
  35. package/dist/components/y-theme.js +1 -1
  36. package/dist/components/y-toast.d.ts +38 -0
  37. package/dist/components/y-tooltip.d.ts +32 -0
  38. package/dist/index.js +1 -1
  39. package/dist/react.d.ts +9 -0
  40. package/dist/styles/variables.css +18 -0
  41. package/dist/yumekit.min.js +1 -1
  42. package/llm.txt +50 -1
  43. package/package.json +2 -2
  44. package/dist/components/y-appbar/y-appbar.stories.d.ts +0 -90
  45. package/dist/components/y-avatar/y-avatar.stories.d.ts +0 -119
  46. package/dist/components/y-badge/y-badge.stories.d.ts +0 -107
  47. package/dist/components/y-banner/y-banner.stories.d.ts +0 -139
  48. package/dist/components/y-banner/y-banner.test.d.ts +0 -1
  49. package/dist/components/y-button/y-button.stories.d.ts +0 -136
  50. package/dist/components/y-button/y-button.test.d.ts +0 -1
  51. package/dist/components/y-button-group/y-button-group.stories.d.ts +0 -57
  52. package/dist/components/y-button-group/y-button-group.test.d.ts +0 -1
  53. package/dist/components/y-card/y-card.stories.d.ts +0 -61
  54. package/dist/components/y-card/y-card.test.d.ts +0 -1
  55. package/dist/components/y-checkbox/y-checkbox.stories.d.ts +0 -119
  56. package/dist/components/y-checkbox/y-checkbox.test.d.ts +0 -1
  57. package/dist/components/y-color/y-color.stories.d.ts +0 -157
  58. package/dist/components/y-color/y-color.test.d.ts +0 -1
  59. package/dist/components/y-colorpicker/y-colorpicker.stories.d.ts +0 -84
  60. package/dist/components/y-colorpicker/y-colorpicker.test.d.ts +0 -1
  61. package/dist/components/y-date/y-date.stories.d.ts +0 -334
  62. package/dist/components/y-date/y-date.test.d.ts +0 -1
  63. package/dist/components/y-datepicker/y-datepicker.stories.d.ts +0 -316
  64. package/dist/components/y-datepicker/y-datepicker.test.d.ts +0 -1
  65. package/dist/components/y-dialog/y-dialog.stories.d.ts +0 -118
  66. package/dist/components/y-dialog/y-dialog.test.d.ts +0 -1
  67. package/dist/components/y-drawer/y-drawer.stories.d.ts +0 -83
  68. package/dist/components/y-drawer/y-drawer.test.d.ts +0 -1
  69. package/dist/components/y-gallery/y-gallery.stories.d.ts +0 -151
  70. package/dist/components/y-gallery/y-gallery.test.d.ts +0 -1
  71. package/dist/components/y-icon/y-icon.stories.d.ts +0 -95
  72. package/dist/components/y-icon/y-icon.test.d.ts +0 -1
  73. package/dist/components/y-input/y-input.stories.d.ts +0 -158
  74. package/dist/components/y-input/y-input.test.d.ts +0 -1
  75. package/dist/components/y-menu/y-menu.stories.d.ts +0 -103
  76. package/dist/components/y-menu/y-menu.test.d.ts +0 -1
  77. package/dist/components/y-panel/y-panel.test.d.ts +0 -1
  78. package/dist/components/y-panelbar/y-panelbar.stories.d.ts +0 -44
  79. package/dist/components/y-progress/y-progress.stories.d.ts +0 -198
  80. package/dist/components/y-progress/y-progress.test.d.ts +0 -1
  81. package/dist/components/y-radio/y-radio.stories.d.ts +0 -62
  82. package/dist/components/y-radio/y-radio.test.d.ts +0 -1
  83. package/dist/components/y-rating/y-rating.stories.d.ts +0 -176
  84. package/dist/components/y-rating/y-rating.test.d.ts +0 -1
  85. package/dist/components/y-select/y-select.stories.d.ts +0 -216
  86. package/dist/components/y-select/y-select.test.d.ts +0 -1
  87. package/dist/components/y-slider/y-slider.stories.d.ts +0 -153
  88. package/dist/components/y-slider/y-slider.test.d.ts +0 -1
  89. package/dist/components/y-stack/y-stack.stories.d.ts +0 -195
  90. package/dist/components/y-stack/y-stack.test.d.ts +0 -1
  91. package/dist/components/y-switch/y-switch.stories.d.ts +0 -164
  92. package/dist/components/y-switch/y-switch.test.d.ts +0 -1
  93. package/dist/components/y-table/y-table.stories.d.ts +0 -84
  94. package/dist/components/y-table/y-table.test.d.ts +0 -1
  95. package/dist/components/y-tabs/y-tabs.stories.d.ts +0 -70
  96. package/dist/components/y-tabs/y-tabs.test.d.ts +0 -1
  97. package/dist/components/y-tag/y-tag.stories.d.ts +0 -133
  98. package/dist/components/y-tag/y-tag.test.d.ts +0 -1
  99. package/dist/components/y-textarea/y-textarea.stories.d.ts +0 -151
  100. package/dist/components/y-textarea/y-textarea.test.d.ts +0 -1
  101. package/dist/components/y-theme/y-theme.stories.d.ts +0 -184
  102. package/dist/components/y-theme/y-theme.test.d.ts +0 -1
  103. package/dist/components/y-toast/y-toast.stories.d.ts +0 -83
  104. package/dist/components/y-toast/y-toast.test.d.ts +0 -1
  105. package/dist/components/y-tooltip/y-tooltip.stories.d.ts +0 -82
  106. package/dist/components/y-tooltip/y-tooltip.test.d.ts +0 -1
  107. package/dist/modules/helpers.test.d.ts +0 -1
  108. /package/dist/components/{y-appbar/y-appbar.test.d.ts → y-drawer.d.ts} +0 -0
  109. /package/dist/components/{y-avatar/y-avatar.test.d.ts → y-menu.d.ts} +0 -0
  110. /package/dist/components/{y-badge/y-badge.test.d.ts → y-switch.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -35,6 +35,7 @@ Delete any empty sections before publishing.
35
35
 
36
36
  ### Added
37
37
 
38
+ - New `y-stepper` component — a multi-step wizard that guides users through a sequential flow. Step content is provided via named slots defined in the `items` JSON array (`{ label, slot, description?, icon?, status? }`). Supports `current` (zero-based active step index), `orientation` (`"horizontal"` | `"vertical"`), `position` (`"start"` | `"end"` — controls whether indicators appear before or after the content), `size` (`"small"` | `"medium"` | `"large"`), `linear` (restricts free navigation), and `editable` (allows returning to completed steps). Methods: `next()`, `previous()`, `goTo(index)`, `complete(index?)`, `reset()`. Events: cancelable `change`, `complete`, `finish`. Full ARIA support with `role="list"`, `aria-current="step"`, `aria-controls`/`aria-labelledby` linkage, and keyboard navigation.
38
39
  - New `y-gallery` component — a media gallery that accepts `<img>` or `<figure>` children and arranges them in `grid`, `row`, `column`, or `masonry` layouts. Supports `columns`, `gap` (`"small"` | `"medium"` | `"large"` or any CSS length), `aspect-ratio`, `expandable` (lightbox with prev/next navigation), `loop`, and `size` attributes. The expanded view uses `<y-icon>` for nav arrows and supports `data-src` for full-resolution images, `<figcaption>` captions, and image counter. Icon slots (`expand-prev-icon`, `expand-next-icon`, `expand-close-icon`) allow custom icons. Fires `expand`, `close`, and `navigate` events.
39
40
  - New `y-colorpicker` component — a standalone color picker widget with a 2D saturation/brightness canvas, hue slider, optional alpha slider, format selector, and channel inputs. Supports `value` (`#hex`, `rgb()`, `rgba()`, `hsl()`, `hsla()`, `hsv()`, `hsva()`), `format` (`"hex"` | `"rgb"` | `"hsl"` | `"hsv"`), `formats` (JSON array of available formats), `show-alpha` (alpha channel), and `size` attributes.
40
41
  - New `y-color` component — a form-associated color input with a trigger/popup pattern (like `<y-date>`). Renders a color swatch preview and value string in the trigger; opens a `<y-colorpicker>` popup on click. Supports `value`, `format`, `formats`, `show-alpha`, `placeholder`, `name`, `disabled`, `invalid`, `clearable`, `size`, and `label-position` attributes. Uses `ElementInternals` for `FormData` participation.
package/README.md CHANGED
@@ -17,7 +17,7 @@
17
17
 
18
18
  ## Overview
19
19
 
20
- YumeKit is a collection of 32 production-ready custom elements built with native Web Components. It works with any framework — or none at all — and ships with a comprehensive design token system, built-in theming, an icon registry, and full TypeScript support.
20
+ YumeKit is a collection of 33 production-ready custom elements built with native Web Components. It works with any framework — or none at all — and ships with a comprehensive design token system, built-in theming, an icon registry, and full TypeScript support.
21
21
 
22
22
  - **Zero dependencies** — built entirely on web standards
23
23
  - **Framework-agnostic** — works with React, Vue, Svelte, or plain HTML
@@ -98,6 +98,7 @@ Then use the `<y-theme>` component to apply a theme:
98
98
  | Select | `<y-select>` | Select / dropdown input |
99
99
  | Slider | `<y-slider>` | Range slider input |
100
100
  | Stack | `<y-stack>` | Layout container (row, column, grid, masonry) |
101
+ | Stepper | `<y-stepper>` | Multi-step wizard with sequential flow |
101
102
  | Switch | `<y-switch>` | Toggle switch |
102
103
  | Table | `<y-table>` | Sortable data table |
103
104
  | Textarea | `<y-textarea>` | Multi-line text input |
@@ -0,0 +1,66 @@
1
+ export class YumeAppbar extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ _onCollapseClick(): void;
4
+ _onMediaChange(e: any): void;
5
+ _idCounter: number;
6
+ _mql: MediaQueryList;
7
+ _isMobile: boolean;
8
+ connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ attributeChangedCallback(name: any, oldVal: any, newVal: any): void;
11
+ set collapsed(val: boolean);
12
+ /** Whether the sidebar is currently collapsed. */
13
+ get collapsed(): boolean;
14
+ set items(val: any);
15
+ /** Nav items array parsed from the "items" attribute. */
16
+ get items(): any;
17
+ set menuDirection(val: string);
18
+ /**
19
+ * Direction menus pop out from nav buttons:
20
+ * "right", "down", or unset (auto: vertical → right, horizontal → down).
21
+ */
22
+ get menuDirection(): string;
23
+ /** Whether the appbar is currently rendering in mobile mode. */
24
+ get mobile(): boolean;
25
+ set mobileBreakpoint(val: string);
26
+ /**
27
+ * Override the mobile breakpoint (in pixels) for this instance.
28
+ * Falls back to the CSS variable --component-appbar-mobile-breakpoint (default 768).
29
+ */
30
+ get mobileBreakpoint(): string;
31
+ set orientation(val: string);
32
+ /** Layout orientation: "vertical" | "horizontal" (default "vertical"). */
33
+ get orientation(): string;
34
+ set size(val: string);
35
+ /** Size variant: "small" | "medium" | "large" (default "medium"). */
36
+ get size(): string;
37
+ set history(val: string);
38
+ /**
39
+ * Navigation mode: omit for pushState (SPA-friendly), set to "false" for full-page navigation.
40
+ * Regardless of this setting, a cancelable "navigate" event is always dispatched first.
41
+ */
42
+ get history(): string;
43
+ set sticky(val: string | false);
44
+ /** Sticky position: "start" | "end" | false. */
45
+ get sticky(): string | false;
46
+ /** Toggles the collapsed state of the sidebar. */
47
+ toggle(): void;
48
+ render(): void;
49
+ _buildCollapseButton(cfg: any, isCollapsed: any): HTMLElement;
50
+ _buildHeader(): HTMLDivElement;
51
+ _buildNavItem(item: any, cfg: any, isVertical: any, isCollapsed: any, menuDir: any): HTMLDivElement;
52
+ _getBreakpointPx(): number;
53
+ _initRender(): void;
54
+ _isItemActive(item: any): boolean;
55
+ _makeSlot(name: any): HTMLSlotElement;
56
+ _renderDesktop(): void;
57
+ _renderMobile(): void;
58
+ _setupMediaQuery(): void;
59
+ _teardownMediaQuery(): void;
60
+ /**
61
+ * Convert appbar nav items to y-menu item format.
62
+ * Maps `href` → `url` and recursively converts children.
63
+ */
64
+ _toMenuItems(items: any): any;
65
+ _uid(prefix: any): string;
66
+ }
@@ -0,0 +1,23 @@
1
+ export class YumeAvatar extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ attributeChangedCallback(name: any, oldValue: any, newValue: any): void;
4
+ set alt(val: string);
5
+ /** Initials fallback text when no src is provided (default "AN"). */
6
+ get alt(): string;
7
+ set color(val: string);
8
+ /** Color theme for the initials avatar background. */
9
+ get color(): string;
10
+ set shape(val: string);
11
+ /** Shape of the avatar: "circle" | "square" | "rounded" (default "circle"). */
12
+ get shape(): string;
13
+ set size(val: string);
14
+ /** Avatar size: "small" | "medium" | "large" (default "medium"). */
15
+ get size(): string;
16
+ set src(val: string);
17
+ /** Image URL. When set, renders an <img> instead of initials. */
18
+ get src(): string;
19
+ render(): void;
20
+ _buildStyleSheet(dimensions: any, borderRadius: any, bgColor: any, textColor: any): CSSStyleSheet;
21
+ _getDimensions(size: any): any;
22
+ _getInitials(alt: any): any;
23
+ }
@@ -0,0 +1,25 @@
1
+ export class YumeBadge extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ connectedCallback(): void;
4
+ attributeChangedCallback(name: any, oldValue: any, newValue: any): void;
5
+ set alignment(val: string);
6
+ /** Horizontal alignment of the badge: "left" | "right" (default "right"). */
7
+ get alignment(): string;
8
+ set color(val: string);
9
+ /** Color theme: "primary" | "secondary" | "base" | "success" | "warning" | "error" | "help". */
10
+ get color(): string;
11
+ set position(val: string);
12
+ /** Vertical position of the badge: "top" | "bottom" (default "top"). */
13
+ get position(): string;
14
+ set size(val: string);
15
+ /** Badge size: "small" | "medium" | "large" (default "small"). */
16
+ get size(): string;
17
+ set value(val: string);
18
+ /** The text content displayed inside the badge. */
19
+ get value(): string;
20
+ render(): void;
21
+ _getBadgeColors(color: any): any;
22
+ _getBadgePosition(position: any, alignment: any): string;
23
+ _getSizeAttributes(size: any): any;
24
+ _hasTargetContent(): boolean;
25
+ }
@@ -0,0 +1,38 @@
1
+ export class YumeBanner extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ connectedCallback(): void;
4
+ attributeChangedCallback(name: any, oldValue: any, newValue: any): void;
5
+ set color(val: string);
6
+ /** Semantic color for the banner background. */
7
+ get color(): string;
8
+ set icon(val: string);
9
+ /** Icon name passed to an internal y-icon. */
10
+ get icon(): string;
11
+ set position(val: string);
12
+ /** Position mode: "push" (in-flow) or "overlap" (over content). */
13
+ get position(): string;
14
+ set sticky(val: boolean);
15
+ /** When true with position="overlap", fixes to viewport top on scroll. */
16
+ get sticky(): boolean;
17
+ set dismissable(val: boolean);
18
+ /** Whether the banner shows a close button. */
19
+ get dismissable(): boolean;
20
+ set dismissed(val: boolean);
21
+ /** Whether the banner is currently dismissed (hidden). */
22
+ get dismissed(): boolean;
23
+ set size(val: string);
24
+ /** Controls padding, icon size, and font size. */
25
+ get size(): string;
26
+ /** Hides the banner and fires the dismiss event. */
27
+ dismiss(): void;
28
+ /** Shows the banner if it is currently dismissed. */
29
+ show(): void;
30
+ render(): void;
31
+ _bindSlotListeners(): void;
32
+ _updateSlotVisibility(): void;
33
+ _applyDismissedState(): void;
34
+ _getAriaLabel(color: any): any;
35
+ _getIconSize(size: any): any;
36
+ _getColorVars(color: any): any;
37
+ _buildStyles(color: any, size: any): string;
38
+ }
@@ -0,0 +1,13 @@
1
+ export class YumeButtonGroup extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ connectedCallback(): void;
4
+ attributeChangedCallback(name: any, oldValue: any, newValue: any): void;
5
+ set orientation(val: string);
6
+ /** Layout direction: "horizontal" | "vertical" (default "horizontal"). */
7
+ get orientation(): string;
8
+ _applyStyles(): void;
9
+ _styleEl: HTMLStyleElement;
10
+ _getRadius(): string;
11
+ _render(): void;
12
+ _updateChildren(): void;
13
+ }
@@ -0,0 +1,65 @@
1
+ export class YumeButton extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ selectedValues: Set<any>;
4
+ connectedCallback(): void;
5
+ attributeChangedCallback(name: any, oldValue: any, newValue: any): void;
6
+ set href(val: string);
7
+ /** URL to navigate to. When set, the internal element renders as an <a> instead of <button>. */
8
+ get href(): string;
9
+ set target(val: string);
10
+ /** Anchor target (e.g. "_blank"). Only applies when href is set. */
11
+ get target(): string;
12
+ set rel(val: string);
13
+ /** Anchor rel attribute (e.g. "noopener noreferrer"). Only applies when href is set. */
14
+ get rel(): string;
15
+ set color(val: string);
16
+ /** Color theme for the button (default "base"). */
17
+ get color(): string;
18
+ set disabled(val: boolean);
19
+ /** Whether the button is disabled. */
20
+ get disabled(): boolean;
21
+ set name(val: string);
22
+ /** The form name of the button. */
23
+ get name(): string;
24
+ set size(val: string);
25
+ /** Size: "small" | "medium" | "large" (default "medium"). */
26
+ get size(): string;
27
+ set styleType(val: string);
28
+ /** Visual style: "filled" | "outlined" | "flat" (default "outlined"). */
29
+ get styleType(): string;
30
+ set type(val: string);
31
+ /** Button type: "button" | "submit" | "reset" (default "button"). */
32
+ get type(): string;
33
+ set value(newVal: any);
34
+ /** The current selected value(s), comma-separated when 'multiple' is set. */
35
+ get value(): any;
36
+ /**
37
+ * Sets the button options from an array of objects.
38
+ * @param {Array<Object>} options
39
+ */
40
+ setOptions(options: Array<any>): void;
41
+ _addEventListeners(): void;
42
+ _applyCustomColorStyles(color: any, styleType: any, size: any): void;
43
+ _applyFilledInteractionStyles(vars: any): void;
44
+ _applyInteractionStyles(vars: any, styleType: any): void;
45
+ _applySizeStyles(size: any): void;
46
+ _applyStyles(): void;
47
+ _applyUnfilledInteractionStyles(vars: any, styleType: any): void;
48
+ _getColorVarsMap(): {
49
+ primary: string[];
50
+ secondary: string[];
51
+ base: string[];
52
+ success: string[];
53
+ error: string[];
54
+ warning: string[];
55
+ help: string[];
56
+ };
57
+ _handleClick(): void;
58
+ _init(): void;
59
+ _manageSlotVisibility(slotName: any, selector: any): void;
60
+ _proxyNativeOnClick(): void;
61
+ _render(): void;
62
+ button: any;
63
+ _updateButtonAttributes(): void;
64
+ _updateStyles(): void;
65
+ }
@@ -0,0 +1,16 @@
1
+ export class YumeCard extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ connectedCallback(): void;
4
+ attributeChangedCallback(name: any, oldValue: any, newValue: any): void;
5
+ set color(val: string);
6
+ /** Color theme for the card surface. */
7
+ get color(): string;
8
+ set raised(val: boolean);
9
+ /** Whether the card uses a raised shadow instead of a border. */
10
+ get raised(): boolean;
11
+ render(): void;
12
+ _bindSlotListeners(slotsConfig: any): void;
13
+ _buildStyleSheet(): CSSStyleSheet;
14
+ _updateColorStyles(): void;
15
+ _updateElevationStyles(): void;
16
+ }
@@ -0,0 +1,32 @@
1
+ export class YumeCheckbox extends HTMLElement {
2
+ static formAssociated: boolean;
3
+ static get observedAttributes(): string[];
4
+ _internals: ElementInternals;
5
+ connectedCallback(): void;
6
+ attributeChangedCallback(name: any): void;
7
+ set checked(val: boolean);
8
+ /** @type {boolean} Whether the checkbox is checked. */
9
+ get checked(): boolean;
10
+ set disabled(val: boolean);
11
+ /** @type {boolean} Whether the checkbox is disabled. */
12
+ get disabled(): boolean;
13
+ set indeterminate(val: boolean);
14
+ /** @type {boolean} Whether the checkbox is in an indeterminate state. */
15
+ get indeterminate(): boolean;
16
+ set labelPosition(val: string);
17
+ /** @type {string} Label position: "top" | "bottom" | "left" | "right" (default "right"). */
18
+ get labelPosition(): string;
19
+ set name(val: string | null);
20
+ /** @type {string|null} The form name of the checkbox. */
21
+ get name(): string | null;
22
+ set value(val: string);
23
+ /** @type {string} The form value submitted when checked. Defaults to "on". */
24
+ get value(): string;
25
+ /** Toggles the checked state and dispatches a "change" event. */
26
+ toggle(): void;
27
+ render(): void;
28
+ _bindCheckboxListeners(): void;
29
+ _buildStyleSheet(): CSSStyleSheet;
30
+ _updateIcon(): void;
31
+ _updateState(): void;
32
+ }
@@ -0,0 +1,46 @@
1
+ export class YumeColor extends HTMLElement {
2
+ static formAssociated: boolean;
3
+ static get observedAttributes(): string[];
4
+ _internals: ElementInternals;
5
+ _onDocumentClick(): void;
6
+ _onPointerDown: () => void;
7
+ _clickInsidePopup: boolean;
8
+ connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ attributeChangedCallback(name: any, oldVal: any, newVal: any): void;
11
+ set clearable(v: boolean);
12
+ get clearable(): boolean;
13
+ set disabled(v: boolean);
14
+ get disabled(): boolean;
15
+ set format(v: string);
16
+ get format(): string;
17
+ set formats(v: any);
18
+ get formats(): any;
19
+ set invalid(v: boolean);
20
+ get invalid(): boolean;
21
+ set labelPosition(v: string);
22
+ get labelPosition(): string;
23
+ set name(v: string);
24
+ get name(): string;
25
+ set placeholder(v: string);
26
+ get placeholder(): string;
27
+ set showAlpha(v: boolean);
28
+ get showAlpha(): boolean;
29
+ set size(v: string);
30
+ get size(): string;
31
+ set value(v: string);
32
+ get value(): string;
33
+ clear(): void;
34
+ close(): void;
35
+ open(): void;
36
+ render(): void;
37
+ _bindListeners(): void;
38
+ _fromPicker: boolean;
39
+ _buildStyles(isDisabled: any): string;
40
+ _positionPopup(popup: any, trigger: any): void;
41
+ _setOpen(open: any): void;
42
+ _syncPickerValue(): void;
43
+ _updateClearBtn(): void;
44
+ _updateDisplay(): void;
45
+ _updateValidationState(): void;
46
+ }
@@ -0,0 +1,73 @@
1
+ export class YumeColorpicker extends HTMLElement {
2
+ static get observedAttributes(): string[];
3
+ _h: number;
4
+ _s: number;
5
+ _v: number;
6
+ _a: number;
7
+ _dragging: string;
8
+ _rendered: boolean;
9
+ _updatingValue: boolean;
10
+ _drawnHue: number;
11
+ _onPointerMove: (e: any) => void;
12
+ _onPointerUp: () => void;
13
+ connectedCallback(): void;
14
+ disconnectedCallback(): void;
15
+ attributeChangedCallback(name: any, oldVal: any, newVal: any): void;
16
+ set value(val: string);
17
+ get value(): string;
18
+ set format(val: string);
19
+ get format(): string;
20
+ set formats(val: any);
21
+ get formats(): any;
22
+ set showAlpha(val: boolean);
23
+ get showAlpha(): boolean;
24
+ set size(val: string);
25
+ get size(): string;
26
+ setColor(value: any): void;
27
+ render(): void;
28
+ _canvas: Element;
29
+ _canvasHandle: Element;
30
+ _hueSlider: Element;
31
+ _hueThumb: Element;
32
+ _alphaSlider: Element;
33
+ _alphaThumb: Element;
34
+ _formatSelect: Element;
35
+ _channelInputs: Element;
36
+ _swatchPreview: Element;
37
+ _parseAndApply(str: any): void;
38
+ _formatColor(fmt: any): string;
39
+ _getColorRepresentations(): {
40
+ hex: string;
41
+ rgb: string;
42
+ hsl: string;
43
+ hsv: string;
44
+ };
45
+ _drawCanvas(): void;
46
+ _getChannelFields(): any[];
47
+ _rebuildInputs(): void;
48
+ _updateAll(): void;
49
+ _updateAlphaThumb(): void;
50
+ _updateAriaValues(): void;
51
+ _updateCanvasHandle(): void;
52
+ _updateHueThumb(): void;
53
+ _updateInputValues(): void;
54
+ _updateSwatch(): void;
55
+ _bindEvents(): void;
56
+ _addGlobalListeners(): void;
57
+ _removeGlobalListeners(): void;
58
+ _onCanvasDown(e: any): void;
59
+ _updateCanvasFromPointer(e: any): void;
60
+ _onHueDown(e: any): void;
61
+ _updateHueFromPointer(e: any): void;
62
+ _onAlphaDown(e: any): void;
63
+ _updateAlphaFromPointer(e: any): void;
64
+ _onGlobalMove(e: any): void;
65
+ _onGlobalUp(): void;
66
+ _onCanvasKey(e: any): void;
67
+ _onHueKey(e: any): void;
68
+ _onAlphaKey(e: any): void;
69
+ _handleChannelInput(channel: any, rawValue: any, fieldDef: any): void;
70
+ _syncValueAttr(): void;
71
+ _emitChange(): void;
72
+ _buildStyles(): string;
73
+ }
@@ -0,0 +1,180 @@
1
+ export class YumeDate extends HTMLElement {
2
+ static formAssociated: boolean;
3
+ static get observedAttributes(): string[];
4
+ _internals: ElementInternals;
5
+ _onDocumentClick(e: any): void;
6
+ _suppressBlurApply: boolean;
7
+ _selectedParts: Set<any>;
8
+ _mql: MediaQueryList;
9
+ _isMobile: boolean;
10
+ _onMediaChange(e: any): void;
11
+ connectedCallback(): void;
12
+ disconnectedCallback(): void;
13
+ attributeChangedCallback(name: any, oldVal: any, newVal: any): void;
14
+ set clearable(v: boolean);
15
+ /** @type {boolean} Whether to show a clear button when a value is set. */
16
+ get clearable(): boolean;
17
+ set color(v: string);
18
+ /** @type {string} Color theme passed to the datepicker (default "primary"). */
19
+ get color(): string;
20
+ set disabled(v: boolean);
21
+ /** @type {boolean} Whether the field is disabled. */
22
+ get disabled(): boolean;
23
+ set format(v: string);
24
+ /** @type {string} Date display format string. Defaults to "MM/DD/YYYY", or
25
+ * a time-aware variant when show-hours / show-minutes / show-seconds are set. */
26
+ get format(): string;
27
+ set hourFormat(v: string);
28
+ /** @type {string} Hour display format: "12" (default) or "24" */
29
+ get hourFormat(): string;
30
+ set invalid(v: boolean);
31
+ /** @type {boolean} Whether the field is in an invalid state. */
32
+ get invalid(): boolean;
33
+ set labelPosition(v: string);
34
+ /** @type {string} Label position: "top" | "bottom" (default "top"). */
35
+ get labelPosition(): string;
36
+ set max(v: string);
37
+ /** @type {string} Maximum selectable date (ISO string). */
38
+ get max(): string;
39
+ set min(v: string);
40
+ /** @type {string} Minimum selectable date (ISO string). */
41
+ get min(): string;
42
+ set minuteInterval(v: number);
43
+ /** @type {number} Interval between minute options (default 5) */
44
+ get minuteInterval(): number;
45
+ /** @type {boolean} Whether the date input is currently rendering in mobile mode. */
46
+ get mobile(): boolean;
47
+ set nativeMobile(v: string);
48
+ /** @type {string} When true, renders native date inputs on mobile instead of the datepicker popup. */
49
+ get nativeMobile(): string;
50
+ set mobileBreakpoint(v: string);
51
+ /**
52
+ * Override the mobile breakpoint (in pixels) for this instance.
53
+ * Falls back to --component-datepicker-mobile-breakpoint (default 768).
54
+ * @type {string}
55
+ */
56
+ get mobileBreakpoint(): string;
57
+ set mode(v: string);
58
+ /** @type {string} "single" | "range" (default "single"). */
59
+ get mode(): string;
60
+ set name(v: string);
61
+ /** @type {string} Form field name. */
62
+ get name(): string;
63
+ set placeholder(v: string);
64
+ /** @type {string} Placeholder text. */
65
+ get placeholder(): string;
66
+ set secondInterval(v: number);
67
+ /** @type {number} Interval between second options (default 5) */
68
+ get secondInterval(): number;
69
+ set showDays(v: boolean);
70
+ /** @type {boolean} Show day grid in datepicker (default true). */
71
+ get showDays(): boolean;
72
+ set showHours(v: boolean);
73
+ /** @type {boolean} Show hour time picker. */
74
+ get showHours(): boolean;
75
+ set showMinutes(v: boolean);
76
+ /** @type {boolean} Show minutes column in time picker. */
77
+ get showMinutes(): boolean;
78
+ set showMonths(v: boolean);
79
+ /** @type {boolean} Show month select in datepicker header (default true). */
80
+ get showMonths(): boolean;
81
+ set showSeconds(v: boolean);
82
+ /** @type {boolean} Show seconds column in time picker. */
83
+ get showSeconds(): boolean;
84
+ set showYears(v: boolean);
85
+ /** @type {boolean} Show year select in datepicker header (default true). */
86
+ get showYears(): boolean;
87
+ set size(v: string);
88
+ /** @type {string} Input size: "small" | "medium" | "large" (default "medium"). */
89
+ get size(): string;
90
+ set value(v: string);
91
+ /** @type {string} The current value (ISO string, or "ISO,ISO" for range). */
92
+ get value(): string;
93
+ /** Clear the selected value. */
94
+ clear(): void;
95
+ /** Close the datepicker popup. */
96
+ close(): void;
97
+ /** Open the datepicker popup. */
98
+ open(): void;
99
+ render(): void;
100
+ _applyParsedDate(date: any): void;
101
+ /**
102
+ * Apply a range value (start and optional end) to the component.
103
+ * @param {Date} start
104
+ * @param {Date|null} end
105
+ */
106
+ _applyRangeValue(start: Date, end: Date | null): void;
107
+ _bindListeners(): void;
108
+ _bindMobileListeners(): void;
109
+ /**
110
+ * Build a presumed Date from partial input parts, filling in defaults.
111
+ * Returns null if the result is invalid.
112
+ * @param {{ month?: number, day?: number, year?: number, hour?: number, minute?: number, second?: number } | null} partial
113
+ * @returns {Date | null}
114
+ */
115
+ _buildPresumedDate(partial: {
116
+ month?: number;
117
+ day?: number;
118
+ year?: number;
119
+ hour?: number;
120
+ minute?: number;
121
+ second?: number;
122
+ } | null): Date | null;
123
+ _buildStyles(isDisabled: any): string;
124
+ _getBreakpointPx(): number;
125
+ _getFormattedDisplay(): string;
126
+ /**
127
+ * Handle type-ahead input for range mode.
128
+ * Parses partial range text and navigates/highlights in the picker.
129
+ * @param {string} text
130
+ * @param {HTMLElement} picker
131
+ */
132
+ _handleRangeTypeahead(text: string, picker: HTMLElement): void;
133
+ _positionPopup(popup: any, trigger: any): void;
134
+ /**
135
+ * Parse partial user input and return an object with whatever date parts
136
+ * could be extracted based on the format string. Returns null if nothing
137
+ * matches.
138
+ *
139
+ * For format "MM/DD/YYYY" and input "04" → { month: 4 }
140
+ * For format "MM/DD/YYYY" and input "04/15" → { month: 4, day: 15 }
141
+ * For format "MM/DD/YYYY" and input "04/15/2026" → { month: 4, day: 15, year: 2026 }
142
+ *
143
+ * @param {string} text
144
+ * @returns {{ month?: number, day?: number, year?: number, hour?: number, minute?: number, second?: number } | null}
145
+ */
146
+ _parsePartialInput(text: string): {
147
+ month?: number;
148
+ day?: number;
149
+ year?: number;
150
+ hour?: number;
151
+ minute?: number;
152
+ second?: number;
153
+ } | null;
154
+ /**
155
+ * Parse range input text in the form "start - end" or just "start".
156
+ * Each side can be a full or partial date string.
157
+ * Returns { start: Date, end: Date|null } or null if unparseable.
158
+ * @param {string} text
159
+ * @returns {{ start: Date, end: Date|null } | null}
160
+ */
161
+ _parseRangeInput(text: string): {
162
+ start: Date;
163
+ end: Date | null;
164
+ } | null;
165
+ /**
166
+ * Parse a user-typed string into a Date using this component's format.
167
+ * Returns null if the text doesn't match the format or produces an invalid date.
168
+ * @param {string} text
169
+ * @returns {Date|null}
170
+ */
171
+ _parseTypedDate(text: string): Date | null;
172
+ _renderMobile(): void;
173
+ _setOpen(open: any): void;
174
+ _setupMediaQuery(): void;
175
+ _syncPickerValue(): void;
176
+ _teardownMediaQuery(): void;
177
+ _updateClearBtn(): void;
178
+ _updateDisplay(): void;
179
+ _updateValidationState(): void;
180
+ }