@deepfuture/dui-components 0.0.2 → 0.0.4

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 (210) hide show
  1. package/README.md +9 -1
  2. package/accordion/accordion-item.js +0 -2
  3. package/accordion/index.d.ts +5 -2
  4. package/accordion/index.js +5 -2
  5. package/alert-dialog/index.d.ts +9 -4
  6. package/alert-dialog/index.js +9 -4
  7. package/all.d.ts +60 -19
  8. package/all.js +140 -140
  9. package/avatar/index.d.ts +3 -1
  10. package/avatar/index.js +3 -1
  11. package/badge/badge.d.ts +0 -2
  12. package/badge/badge.js +0 -13
  13. package/badge/index.d.ts +3 -2
  14. package/badge/index.js +3 -1
  15. package/breadcrumb/index.d.ts +13 -6
  16. package/breadcrumb/index.js +13 -6
  17. package/button/button.d.ts +1 -5
  18. package/button/button.js +1 -14
  19. package/button/index.d.ts +3 -2
  20. package/button/index.js +3 -1
  21. package/calendar/index.d.ts +3 -1
  22. package/calendar/index.js +3 -1
  23. package/center/index.d.ts +3 -1
  24. package/center/index.js +3 -1
  25. package/checkbox/checkbox.js +0 -1
  26. package/checkbox/index.d.ts +5 -2
  27. package/checkbox/index.js +5 -2
  28. package/collapsible/collapsible.js +0 -2
  29. package/collapsible/index.d.ts +3 -1
  30. package/collapsible/index.js +3 -1
  31. package/combobox/combobox.js +2 -37
  32. package/combobox/index.d.ts +3 -1
  33. package/combobox/index.js +3 -1
  34. package/command/index.d.ts +17 -8
  35. package/command/index.js +17 -8
  36. package/data-table/data-table.js +0 -4
  37. package/data-table/index.d.ts +3 -1
  38. package/data-table/index.js +3 -1
  39. package/dialog/index.d.ts +9 -4
  40. package/dialog/index.js +9 -4
  41. package/dropzone/dropzone.js +0 -1
  42. package/dropzone/index.d.ts +3 -1
  43. package/dropzone/index.js +3 -1
  44. package/hstack/index.d.ts +3 -1
  45. package/hstack/index.js +3 -1
  46. package/icon/index.d.ts +3 -1
  47. package/icon/index.js +3 -1
  48. package/input/index.d.ts +3 -1
  49. package/input/index.js +3 -1
  50. package/input/input.js +0 -1
  51. package/link/index.d.ts +3 -1
  52. package/link/index.js +3 -1
  53. package/menu/index.d.ts +5 -2
  54. package/menu/index.js +5 -2
  55. package/menu/menu-item.d.ts +0 -2
  56. package/menu/menu-item.js +0 -8
  57. package/menu/menu.js +1 -12
  58. package/menubar/index.d.ts +3 -1
  59. package/menubar/index.js +3 -1
  60. package/number-field/index.d.ts +3 -1
  61. package/number-field/index.js +3 -1
  62. package/package.json +2 -2
  63. package/page-inset/index.d.ts +3 -1
  64. package/page-inset/index.js +3 -1
  65. package/popover/index.d.ts +9 -4
  66. package/popover/index.js +9 -4
  67. package/popover/popover-popup.js +1 -22
  68. package/portal/index.d.ts +3 -1
  69. package/portal/index.js +3 -1
  70. package/preview-card/index.d.ts +7 -3
  71. package/preview-card/index.js +7 -3
  72. package/preview-card/preview-card-popup.js +1 -23
  73. package/progress/index.d.ts +3 -1
  74. package/progress/index.js +3 -1
  75. package/radio/index.d.ts +5 -2
  76. package/radio/index.js +5 -2
  77. package/radio/radio.js +0 -1
  78. package/scroll-area/index.d.ts +3 -1
  79. package/scroll-area/index.js +3 -1
  80. package/scroll-area/scroll-area.js +7 -0
  81. package/select/index.d.ts +3 -1
  82. package/select/index.js +3 -1
  83. package/select/select.js +1 -35
  84. package/separator/index.d.ts +3 -1
  85. package/separator/index.js +3 -1
  86. package/sidebar/index.d.ts +27 -14
  87. package/sidebar/index.js +32 -13
  88. package/sidebar/sidebar-context.d.ts +1 -1
  89. package/sidebar/sidebar-menu-button.d.ts +0 -3
  90. package/sidebar/sidebar-menu-button.js +0 -7
  91. package/sidebar/sidebar-provider.d.ts +1 -1
  92. package/sidebar/sidebar-provider.js +1 -1
  93. package/sidebar/sidebar-trigger.js +1 -1
  94. package/slider/index.d.ts +3 -1
  95. package/slider/index.js +3 -1
  96. package/slider/slider.js +0 -1
  97. package/spinner/index.d.ts +3 -1
  98. package/spinner/index.js +3 -1
  99. package/spinner/spinner.d.ts +1 -6
  100. package/spinner/spinner.js +1 -8
  101. package/switch/index.d.ts +3 -1
  102. package/switch/index.js +3 -1
  103. package/switch/switch.js +0 -2
  104. package/tabs/index.d.ts +11 -5
  105. package/tabs/index.js +11 -5
  106. package/tabs/tab.js +0 -1
  107. package/tabs/tabs-panel.js +0 -1
  108. package/textarea/index.d.ts +4 -2
  109. package/textarea/index.js +3 -1
  110. package/textarea/textarea.d.ts +0 -3
  111. package/textarea/textarea.js +0 -8
  112. package/toggle/index.d.ts +5 -2
  113. package/toggle/index.js +5 -2
  114. package/toggle/toggle.d.ts +1 -0
  115. package/toggle/toggle.js +3 -0
  116. package/toolbar/index.d.ts +3 -1
  117. package/toolbar/index.js +3 -1
  118. package/toolbar/toolbar.d.ts +0 -2
  119. package/toolbar/toolbar.js +0 -7
  120. package/tooltip/index.d.ts +7 -3
  121. package/tooltip/index.js +7 -3
  122. package/tooltip/tooltip-popup.js +1 -26
  123. package/trunc/index.d.ts +3 -1
  124. package/trunc/index.js +3 -1
  125. package/vstack/index.d.ts +3 -1
  126. package/vstack/index.js +3 -1
  127. package/accordion/register.d.ts +0 -1
  128. package/accordion/register.js +0 -8
  129. package/alert-dialog/register.d.ts +0 -1
  130. package/alert-dialog/register.js +0 -16
  131. package/avatar/register.d.ts +0 -1
  132. package/avatar/register.js +0 -4
  133. package/badge/register.d.ts +0 -1
  134. package/badge/register.js +0 -4
  135. package/breadcrumb/register.d.ts +0 -1
  136. package/breadcrumb/register.js +0 -14
  137. package/button/register.d.ts +0 -1
  138. package/button/register.js +0 -4
  139. package/calendar/register.d.ts +0 -1
  140. package/calendar/register.js +0 -4
  141. package/center/register.d.ts +0 -1
  142. package/center/register.js +0 -4
  143. package/checkbox/register.d.ts +0 -1
  144. package/checkbox/register.js +0 -8
  145. package/collapsible/register.d.ts +0 -1
  146. package/collapsible/register.js +0 -4
  147. package/combobox/register.d.ts +0 -1
  148. package/combobox/register.js +0 -4
  149. package/command/register.d.ts +0 -1
  150. package/command/register.js +0 -22
  151. package/data-table/register.d.ts +0 -1
  152. package/data-table/register.js +0 -4
  153. package/dialog/register.d.ts +0 -1
  154. package/dialog/register.js +0 -16
  155. package/dropzone/register.d.ts +0 -1
  156. package/dropzone/register.js +0 -4
  157. package/hstack/register.d.ts +0 -1
  158. package/hstack/register.js +0 -4
  159. package/icon/register.d.ts +0 -1
  160. package/icon/register.js +0 -4
  161. package/input/register.d.ts +0 -1
  162. package/input/register.js +0 -4
  163. package/link/register.d.ts +0 -1
  164. package/link/register.js +0 -4
  165. package/menu/register.d.ts +0 -1
  166. package/menu/register.js +0 -8
  167. package/menubar/register.d.ts +0 -1
  168. package/menubar/register.js +0 -4
  169. package/number-field/register.d.ts +0 -1
  170. package/number-field/register.js +0 -4
  171. package/page-inset/register.d.ts +0 -1
  172. package/page-inset/register.js +0 -4
  173. package/popover/register.d.ts +0 -1
  174. package/popover/register.js +0 -16
  175. package/portal/register.d.ts +0 -1
  176. package/portal/register.js +0 -4
  177. package/preview-card/register.d.ts +0 -1
  178. package/preview-card/register.js +0 -12
  179. package/progress/register.d.ts +0 -1
  180. package/progress/register.js +0 -4
  181. package/radio/register.d.ts +0 -1
  182. package/radio/register.js +0 -8
  183. package/scroll-area/register.d.ts +0 -1
  184. package/scroll-area/register.js +0 -4
  185. package/select/register.d.ts +0 -1
  186. package/select/register.js +0 -4
  187. package/separator/register.d.ts +0 -1
  188. package/separator/register.js +0 -4
  189. package/sidebar/register.d.ts +0 -1
  190. package/sidebar/register.js +0 -52
  191. package/slider/register.d.ts +0 -1
  192. package/slider/register.js +0 -4
  193. package/spinner/register.d.ts +0 -1
  194. package/spinner/register.js +0 -4
  195. package/switch/register.d.ts +0 -1
  196. package/switch/register.js +0 -4
  197. package/tabs/register.d.ts +0 -1
  198. package/tabs/register.js +0 -10
  199. package/textarea/register.d.ts +0 -1
  200. package/textarea/register.js +0 -4
  201. package/toggle/register.d.ts +0 -1
  202. package/toggle/register.js +0 -8
  203. package/toolbar/register.d.ts +0 -1
  204. package/toolbar/register.js +0 -4
  205. package/tooltip/register.d.ts +0 -1
  206. package/tooltip/register.js +0 -12
  207. package/trunc/register.d.ts +0 -1
  208. package/trunc/register.js +0 -4
  209. package/vstack/register.d.ts +0 -1
  210. package/vstack/register.js +0 -4
@@ -1 +1,3 @@
1
- export { DuiPageInset } from "./page-inset.js";
1
+ import { DuiPageInset } from "./page-inset.js";
2
+ export { DuiPageInset };
3
+ export const pageInsetFamily = [DuiPageInset];
@@ -1,6 +1,11 @@
1
- export { DuiPopover, openChangeEvent } from "./popover.js";
1
+ import { DuiPopover, openChangeEvent } from "./popover.js";
2
+ export { DuiPopover, openChangeEvent };
2
3
  export type { PopoverOpenChangeDetail } from "./popover.js";
3
- export { DuiPopoverTrigger } from "./popover-trigger.js";
4
- export { DuiPopoverPopup } from "./popover-popup.js";
5
- export { DuiPopoverClose } from "./popover-close.js";
4
+ import { DuiPopoverTrigger } from "./popover-trigger.js";
5
+ export { DuiPopoverTrigger };
6
+ import { DuiPopoverPopup } from "./popover-popup.js";
7
+ export { DuiPopoverPopup };
8
+ import { DuiPopoverClose } from "./popover-close.js";
9
+ export { DuiPopoverClose };
6
10
  export type { PopoverContext, PopoverSide } from "./popover-context.js";
11
+ export declare const popoverFamily: (typeof DuiPopover | typeof DuiPopoverTrigger | typeof DuiPopoverPopup | typeof DuiPopoverClose)[];
package/popover/index.js CHANGED
@@ -1,4 +1,9 @@
1
- export { DuiPopover, openChangeEvent } from "./popover.js";
2
- export { DuiPopoverTrigger } from "./popover-trigger.js";
3
- export { DuiPopoverPopup } from "./popover-popup.js";
4
- export { DuiPopoverClose } from "./popover-close.js";
1
+ import { DuiPopover, openChangeEvent } from "./popover.js";
2
+ export { DuiPopover, openChangeEvent };
3
+ import { DuiPopoverTrigger } from "./popover-trigger.js";
4
+ export { DuiPopoverTrigger };
5
+ import { DuiPopoverPopup } from "./popover-popup.js";
6
+ export { DuiPopoverPopup };
7
+ import { DuiPopoverClose } from "./popover-close.js";
8
+ export { DuiPopoverClose };
9
+ export const popoverFamily = [DuiPopover, DuiPopoverTrigger, DuiPopoverPopup, DuiPopoverClose];
@@ -17,27 +17,16 @@ const hostStyles = css `
17
17
  display: none;
18
18
  }
19
19
  `;
20
- /** Styles injected into the portal positioner. */
20
+ /** Structural styles injected into the portal positioner. */
21
21
  const portalPopupStyles = [
22
22
  css `
23
23
  .Popup {
24
24
  box-sizing: border-box;
25
- padding: var(--space-1);
26
- border-radius: var(--radius-md);
27
- background: var(--popover);
28
- color: var(--popover-foreground);
29
- font-family: var(--font-sans);
30
- font-size: var(--font-size-sm);
31
- line-height: var(--line-height-normal);
32
- box-shadow: var(--shadow-md);
33
- border: var(--border-width-thin) solid var(--border);
34
25
  pointer-events: auto;
35
26
  transform-origin: var(--transform-origin, center);
36
27
  opacity: 1;
37
28
  transform: scale(1);
38
29
  transition-property: opacity, transform;
39
- transition-duration: var(--duration-fast);
40
- transition-timing-function: var(--ease-out-3);
41
30
  }
42
31
 
43
32
  .Popup[data-starting-style],
@@ -71,16 +60,6 @@ const portalPopupStyles = [
71
60
  left: 50%;
72
61
  transform: translateX(-50%) rotate(180deg);
73
62
  }
74
-
75
- .Arrow .arrow-fill {
76
- fill: var(--popover);
77
- }
78
-
79
- .Arrow .arrow-stroke {
80
- fill: none;
81
- stroke: var(--border);
82
- stroke-width: 1px;
83
- }
84
63
  `,
85
64
  ];
86
65
  /**
package/portal/index.d.ts CHANGED
@@ -1,2 +1,4 @@
1
- export { DuiPortal } from "./portal.js";
1
+ import { DuiPortal } from "./portal.js";
2
+ export { DuiPortal };
2
3
  export type { QueryRoot } from "./portal.js";
4
+ export declare const portalFamily: (typeof DuiPortal)[];
package/portal/index.js CHANGED
@@ -1 +1,3 @@
1
- export { DuiPortal } from "./portal.js";
1
+ import { DuiPortal } from "./portal.js";
2
+ export { DuiPortal };
3
+ export const portalFamily = [DuiPortal];
@@ -1,5 +1,9 @@
1
- export { DuiPreviewCard, openChangeEvent } from "./preview-card.js";
1
+ import { DuiPreviewCard, openChangeEvent } from "./preview-card.js";
2
+ export { DuiPreviewCard, openChangeEvent };
2
3
  export type { PreviewCardOpenChangeDetail } from "./preview-card.js";
3
- export { DuiPreviewCardTrigger } from "./preview-card-trigger.js";
4
- export { DuiPreviewCardPopup } from "./preview-card-popup.js";
4
+ import { DuiPreviewCardTrigger } from "./preview-card-trigger.js";
5
+ export { DuiPreviewCardTrigger };
6
+ import { DuiPreviewCardPopup } from "./preview-card-popup.js";
7
+ export { DuiPreviewCardPopup };
5
8
  export type { PreviewCardContext, PreviewCardSide } from "./preview-card-context.js";
9
+ export declare const previewCardFamily: (typeof DuiPreviewCard | typeof DuiPreviewCardTrigger | typeof DuiPreviewCardPopup)[];
@@ -1,3 +1,7 @@
1
- export { DuiPreviewCard, openChangeEvent } from "./preview-card.js";
2
- export { DuiPreviewCardTrigger } from "./preview-card-trigger.js";
3
- export { DuiPreviewCardPopup } from "./preview-card-popup.js";
1
+ import { DuiPreviewCard, openChangeEvent } from "./preview-card.js";
2
+ export { DuiPreviewCard, openChangeEvent };
3
+ import { DuiPreviewCardTrigger } from "./preview-card-trigger.js";
4
+ export { DuiPreviewCardTrigger };
5
+ import { DuiPreviewCardPopup } from "./preview-card-popup.js";
6
+ export { DuiPreviewCardPopup };
7
+ export const previewCardFamily = [DuiPreviewCard, DuiPreviewCardTrigger, DuiPreviewCardPopup];
@@ -17,28 +17,16 @@ const hostStyles = css `
17
17
  display: none;
18
18
  }
19
19
  `;
20
- /** Styles injected into the portal positioner. */
20
+ /** Structural styles injected into the portal positioner. */
21
21
  const portalPopupStyles = [
22
22
  css `
23
23
  .Popup {
24
24
  box-sizing: border-box;
25
- padding: var(--space-4);
26
- border-radius: var(--radius-md);
27
- background: var(--popover);
28
- color: var(--popover-foreground);
29
- font-family: var(--font-sans);
30
- font-size: var(--font-size-sm);
31
- line-height: var(--line-height-normal);
32
- box-shadow: var(--shadow-lg);
33
- border: var(--border-width-thin) solid var(--border);
34
- max-width: var(--max-width, var(--space-80));
35
25
  pointer-events: auto;
36
26
  transform-origin: var(--transform-origin, center);
37
27
  opacity: 1;
38
28
  transform: scale(1);
39
29
  transition-property: opacity, transform;
40
- transition-duration: var(--duration-fast);
41
- transition-timing-function: var(--ease-out-3);
42
30
  }
43
31
 
44
32
  .Popup[data-starting-style],
@@ -72,16 +60,6 @@ const portalPopupStyles = [
72
60
  left: 50%;
73
61
  transform: translateX(-50%) rotate(180deg);
74
62
  }
75
-
76
- .Arrow .arrow-fill {
77
- fill: var(--popover);
78
- }
79
-
80
- .Arrow .arrow-stroke {
81
- fill: none;
82
- stroke: var(--border);
83
- stroke-width: 1px;
84
- }
85
63
  `,
86
64
  ];
87
65
  /**
@@ -1 +1,3 @@
1
- export { DuiProgress } from "./progress.js";
1
+ import { DuiProgress } from "./progress.js";
2
+ export { DuiProgress };
3
+ export declare const progressFamily: (typeof DuiProgress)[];
package/progress/index.js CHANGED
@@ -1 +1,3 @@
1
- export { DuiProgress } from "./progress.js";
1
+ import { DuiProgress } from "./progress.js";
2
+ export { DuiProgress };
3
+ export const progressFamily = [DuiProgress];
package/radio/index.d.ts CHANGED
@@ -1,3 +1,6 @@
1
- export { DuiRadio } from "./radio.js";
2
- export { DuiRadioGroup, valueChangeEvent } from "./radio-group.js";
1
+ import { DuiRadio } from "./radio.js";
2
+ export { DuiRadio };
3
+ import { DuiRadioGroup, valueChangeEvent } from "./radio-group.js";
4
+ export { DuiRadioGroup, valueChangeEvent };
3
5
  export type { RadioGroupContext } from "./radio-group-context.js";
6
+ export declare const radioFamily: (typeof DuiRadio | typeof DuiRadioGroup)[];
package/radio/index.js CHANGED
@@ -1,2 +1,5 @@
1
- export { DuiRadio } from "./radio.js";
2
- export { DuiRadioGroup, valueChangeEvent } from "./radio-group.js";
1
+ import { DuiRadio } from "./radio.js";
2
+ export { DuiRadio };
3
+ import { DuiRadioGroup, valueChangeEvent } from "./radio-group.js";
4
+ export { DuiRadioGroup, valueChangeEvent };
5
+ export const radioFamily = [DuiRadio, DuiRadioGroup];
package/radio/radio.js CHANGED
@@ -32,7 +32,6 @@ const styles = css `
32
32
  padding: 0;
33
33
  margin: 0;
34
34
  border: none;
35
- transition-property: background, border-color, box-shadow, filter, transform;
36
35
  }
37
36
 
38
37
  [part="root"][data-disabled] {
@@ -1 +1,3 @@
1
- export { DuiScrollArea } from "./scroll-area.js";
1
+ import { DuiScrollArea } from "./scroll-area.js";
2
+ export { DuiScrollArea };
3
+ export declare const scrollAreaFamily: (typeof DuiScrollArea)[];
@@ -1 +1,3 @@
1
- export { DuiScrollArea } from "./scroll-area.js";
1
+ import { DuiScrollArea } from "./scroll-area.js";
2
+ export { DuiScrollArea };
3
+ export const scrollAreaFamily = [DuiScrollArea];
@@ -198,9 +198,16 @@ export class DuiScrollArea extends LitElement {
198
198
  this.#resizeObserver.observe(viewport);
199
199
  const slot = viewport.querySelector("slot");
200
200
  if (slot) {
201
+ const observe = () => {
202
+ for (const node of slot.assignedElements()) {
203
+ this.#resizeObserver.observe(node);
204
+ }
205
+ };
201
206
  slot.addEventListener("slotchange", () => {
207
+ observe();
202
208
  requestAnimationFrame(() => this.#measure());
203
209
  });
210
+ observe();
204
211
  }
205
212
  this.#measure();
206
213
  }
package/select/index.d.ts CHANGED
@@ -1,2 +1,4 @@
1
- export { DuiSelect } from "./select.js";
1
+ import { DuiSelect } from "./select.js";
2
+ export { DuiSelect };
2
3
  export type { SelectOption } from "./select.js";
4
+ export declare const selectFamily: (typeof DuiSelect)[];
package/select/index.js CHANGED
@@ -1 +1,3 @@
1
- export { DuiSelect } from "./select.js";
1
+ import { DuiSelect } from "./select.js";
2
+ export { DuiSelect };
3
+ export const selectFamily = [DuiSelect];
package/select/select.js CHANGED
@@ -27,7 +27,6 @@ const componentStyles = css `
27
27
  cursor: pointer;
28
28
  user-select: none;
29
29
  box-sizing: border-box;
30
- transition-property: border-color, box-shadow, background, filter, transform;
31
30
  }
32
31
 
33
32
  .Trigger[data-disabled] {
@@ -45,74 +44,41 @@ const componentStyles = css `
45
44
  flex-shrink: 0;
46
45
  }
47
46
  `;
48
- /** Styles injected into the portal positioner. */
47
+ /** Structural styles injected into the portal positioner. */
49
48
  const portalPopupStyles = [
50
49
  css `
51
50
  .Popup {
52
- background: var(--popover);
53
- border: var(--border-width-thin) solid var(--border);
54
- border-radius: var(--radius-md);
55
- box-shadow: var(--shadow-md);
56
51
  max-height: 240px;
57
52
  overflow-y: auto;
58
53
  overscroll-behavior: contain;
59
54
  opacity: 1;
60
55
  transform: translateY(0);
61
56
  transition-property: opacity, transform;
62
- transition-duration: var(--duration-fast);
63
- transition-timing-function: var(--ease-out-3);
64
57
  pointer-events: auto;
65
58
  }
66
59
 
67
60
  .Popup[data-starting-style],
68
61
  .Popup[data-ending-style] {
69
62
  opacity: 0;
70
- transform: translateY(calc(var(--space-1) * -1));
71
- }
72
-
73
- .Listbox {
74
- padding: var(--space-1);
75
63
  }
76
64
 
77
65
  .Item {
78
66
  display: flex;
79
67
  align-items: center;
80
- gap: var(--space-2);
81
- padding: var(--space-1_5) var(--space-2);
82
- border-radius: var(--radius-sm);
83
- font-size: var(--font-size-sm);
84
- font-family: var(--font-sans);
85
- color: var(--popover-foreground);
86
68
  cursor: pointer;
87
69
  }
88
70
 
89
- .Item:hover,
90
- .Item[data-highlighted] {
91
- background: var(--secondary);
92
- color: var(--foreground);
93
- }
94
-
95
- .Item[data-selected] {
96
- font-weight: var(--font-weight-medium);
97
- }
98
-
99
71
  .Item[data-disabled] {
100
- opacity: 0.5;
101
72
  cursor: not-allowed;
102
73
  }
103
74
 
104
75
  .ItemIndicator {
105
76
  flex-shrink: 0;
106
- width: var(--space-3_5);
107
77
  display: flex;
108
78
  align-items: center;
109
79
  justify-content: center;
110
80
  }
111
81
 
112
- .ItemIndicator dui-icon {
113
- --icon-size: var(--space-3_5);
114
- }
115
-
116
82
  .ItemText {
117
83
  flex: 1;
118
84
  }
@@ -1 +1,3 @@
1
- export { DuiSeparator } from "./separator.js";
1
+ import { DuiSeparator } from "./separator.js";
2
+ export { DuiSeparator };
3
+ export declare const separatorFamily: (typeof DuiSeparator)[];
@@ -1 +1,3 @@
1
- export { DuiSeparator } from "./separator.js";
1
+ import { DuiSeparator } from "./separator.js";
2
+ export { DuiSeparator };
3
+ export const separatorFamily = [DuiSeparator];
@@ -1,16 +1,29 @@
1
- export { DuiSidebarProvider, openChangeEvent } from "./sidebar-provider.js";
1
+ import { DuiSidebarProvider, openChangeEvent } from "./sidebar-provider.js";
2
+ export { DuiSidebarProvider, openChangeEvent };
2
3
  export type { SidebarOpenChangeDetail } from "./sidebar-provider.js";
3
- export { DuiSidebar } from "./sidebar.js";
4
- export { DuiSidebarTrigger } from "./sidebar-trigger.js";
5
- export { DuiSidebarContent } from "./sidebar-content.js";
6
- export { DuiSidebarHeader } from "./sidebar-header.js";
7
- export { DuiSidebarFooter } from "./sidebar-footer.js";
8
- export { DuiSidebarGroup } from "./sidebar-group.js";
9
- export { DuiSidebarGroupLabel } from "./sidebar-group-label.js";
10
- export { DuiSidebarMenu } from "./sidebar-menu.js";
11
- export { DuiSidebarMenuItem } from "./sidebar-menu-item.js";
12
- export { DuiSidebarMenuButton } from "./sidebar-menu-button.js";
13
- export type { SidebarMenuButtonSize } from "./sidebar-menu-button.js";
14
- export { DuiSidebarSeparator } from "./sidebar-separator.js";
15
- export { DuiSidebarInset } from "./sidebar-inset.js";
4
+ import { DuiSidebar } from "./sidebar.js";
5
+ export { DuiSidebar };
6
+ import { DuiSidebarTrigger } from "./sidebar-trigger.js";
7
+ export { DuiSidebarTrigger };
8
+ import { DuiSidebarContent } from "./sidebar-content.js";
9
+ export { DuiSidebarContent };
10
+ import { DuiSidebarHeader } from "./sidebar-header.js";
11
+ export { DuiSidebarHeader };
12
+ import { DuiSidebarFooter } from "./sidebar-footer.js";
13
+ export { DuiSidebarFooter };
14
+ import { DuiSidebarGroup } from "./sidebar-group.js";
15
+ export { DuiSidebarGroup };
16
+ import { DuiSidebarGroupLabel } from "./sidebar-group-label.js";
17
+ export { DuiSidebarGroupLabel };
18
+ import { DuiSidebarMenu } from "./sidebar-menu.js";
19
+ export { DuiSidebarMenu };
20
+ import { DuiSidebarMenuItem } from "./sidebar-menu-item.js";
21
+ export { DuiSidebarMenuItem };
22
+ import { DuiSidebarMenuButton } from "./sidebar-menu-button.js";
23
+ export { DuiSidebarMenuButton };
24
+ import { DuiSidebarSeparator } from "./sidebar-separator.js";
25
+ export { DuiSidebarSeparator };
26
+ import { DuiSidebarInset } from "./sidebar-inset.js";
27
+ export { DuiSidebarInset };
16
28
  export type { SidebarContext } from "./sidebar-context.js";
29
+ export declare const sidebarFamily: (typeof DuiSidebarProvider | typeof DuiSidebar | typeof DuiSidebarTrigger | typeof DuiSidebarContent | typeof DuiSidebarHeader | typeof DuiSidebarFooter | typeof DuiSidebarGroup | typeof DuiSidebarGroupLabel | typeof DuiSidebarMenu | typeof DuiSidebarMenuItem | typeof DuiSidebarMenuButton | typeof DuiSidebarSeparator | typeof DuiSidebarInset)[];
package/sidebar/index.js CHANGED
@@ -1,13 +1,32 @@
1
- export { DuiSidebarProvider, openChangeEvent } from "./sidebar-provider.js";
2
- export { DuiSidebar } from "./sidebar.js";
3
- export { DuiSidebarTrigger } from "./sidebar-trigger.js";
4
- export { DuiSidebarContent } from "./sidebar-content.js";
5
- export { DuiSidebarHeader } from "./sidebar-header.js";
6
- export { DuiSidebarFooter } from "./sidebar-footer.js";
7
- export { DuiSidebarGroup } from "./sidebar-group.js";
8
- export { DuiSidebarGroupLabel } from "./sidebar-group-label.js";
9
- export { DuiSidebarMenu } from "./sidebar-menu.js";
10
- export { DuiSidebarMenuItem } from "./sidebar-menu-item.js";
11
- export { DuiSidebarMenuButton } from "./sidebar-menu-button.js";
12
- export { DuiSidebarSeparator } from "./sidebar-separator.js";
13
- export { DuiSidebarInset } from "./sidebar-inset.js";
1
+ import { DuiSidebarProvider, openChangeEvent } from "./sidebar-provider.js";
2
+ export { DuiSidebarProvider, openChangeEvent };
3
+ import { DuiSidebar } from "./sidebar.js";
4
+ export { DuiSidebar };
5
+ import { DuiSidebarTrigger } from "./sidebar-trigger.js";
6
+ export { DuiSidebarTrigger };
7
+ import { DuiSidebarContent } from "./sidebar-content.js";
8
+ export { DuiSidebarContent };
9
+ import { DuiSidebarHeader } from "./sidebar-header.js";
10
+ export { DuiSidebarHeader };
11
+ import { DuiSidebarFooter } from "./sidebar-footer.js";
12
+ export { DuiSidebarFooter };
13
+ import { DuiSidebarGroup } from "./sidebar-group.js";
14
+ export { DuiSidebarGroup };
15
+ import { DuiSidebarGroupLabel } from "./sidebar-group-label.js";
16
+ export { DuiSidebarGroupLabel };
17
+ import { DuiSidebarMenu } from "./sidebar-menu.js";
18
+ export { DuiSidebarMenu };
19
+ import { DuiSidebarMenuItem } from "./sidebar-menu-item.js";
20
+ export { DuiSidebarMenuItem };
21
+ import { DuiSidebarMenuButton } from "./sidebar-menu-button.js";
22
+ export { DuiSidebarMenuButton };
23
+ import { DuiSidebarSeparator } from "./sidebar-separator.js";
24
+ export { DuiSidebarSeparator };
25
+ import { DuiSidebarInset } from "./sidebar-inset.js";
26
+ export { DuiSidebarInset };
27
+ export const sidebarFamily = [
28
+ DuiSidebarProvider, DuiSidebar, DuiSidebarTrigger, DuiSidebarContent,
29
+ DuiSidebarHeader, DuiSidebarFooter, DuiSidebarGroup, DuiSidebarGroupLabel,
30
+ DuiSidebarMenu, DuiSidebarMenuItem, DuiSidebarMenuButton,
31
+ DuiSidebarSeparator, DuiSidebarInset,
32
+ ];
@@ -5,7 +5,7 @@ export type SidebarContext = {
5
5
  readonly openMobile: boolean;
6
6
  readonly isMobile: boolean;
7
7
  readonly side: "left" | "right";
8
- readonly variant: "sidebar" | "floating" | "inset";
8
+ readonly variant: string;
9
9
  readonly collapsible: "offcanvas" | "icon" | "none";
10
10
  readonly setOpen: (open: boolean) => void;
11
11
  readonly toggleSidebar: () => void;
@@ -1,6 +1,5 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
2
  import { LitElement, type TemplateResult } from "lit";
3
- export type SidebarMenuButtonSize = "default" | "sm" | "lg";
4
3
  /**
5
4
  * `<dui-sidebar-menu-button>` — Interactive button or link within a sidebar menu.
6
5
  *
@@ -17,8 +16,6 @@ export declare class DuiSidebarMenuButton extends LitElement {
17
16
  #private;
18
17
  static tagName: "dui-sidebar-menu-button";
19
18
  static styles: import("lit").CSSResult[];
20
- /** Size variant for the button. */
21
- accessor size: SidebarMenuButtonSize;
22
19
  /** Whether the button is in active/selected state. */
23
20
  accessor active: boolean;
24
21
  /** Whether the button is disabled. */
@@ -84,10 +84,6 @@ const styles = css `
84
84
  export class DuiSidebarMenuButton extends LitElement {
85
85
  static { this.tagName = "dui-sidebar-menu-button"; }
86
86
  static { this.styles = [base, styles]; }
87
- #size_accessor_storage = "default";
88
- /** Size variant for the button. */
89
- get size() { return this.#size_accessor_storage; }
90
- set size(value) { this.#size_accessor_storage = value; }
91
87
  #active_accessor_storage = false;
92
88
  /** Whether the button is in active/selected state. */
93
89
  get active() { return this.#active_accessor_storage; }
@@ -184,9 +180,6 @@ export class DuiSidebarMenuButton extends LitElement {
184
180
  return this.#renderContent();
185
181
  }
186
182
  }
187
- __decorate([
188
- property({ reflect: true })
189
- ], DuiSidebarMenuButton.prototype, "size", null);
190
183
  __decorate([
191
184
  property({ type: Boolean, reflect: true })
192
185
  ], DuiSidebarMenuButton.prototype, "active", null);
@@ -24,7 +24,7 @@ export declare class DuiSidebarProvider extends LitElement {
24
24
  /** Which side the sidebar appears on. */
25
25
  accessor side: "left" | "right";
26
26
  /** Visual variant of the sidebar. */
27
- accessor variant: "sidebar" | "floating" | "inset";
27
+ accessor variant: string;
28
28
  /** How the sidebar collapses. */
29
29
  accessor collapsible: "offcanvas" | "icon" | "none";
30
30
  connectedCallback(): void;
@@ -41,7 +41,7 @@ export class DuiSidebarProvider extends LitElement {
41
41
  /** Which side the sidebar appears on. */
42
42
  get side() { return this.#side_accessor_storage; }
43
43
  set side(value) { this.#side_accessor_storage = value; }
44
- #variant_accessor_storage = "sidebar";
44
+ #variant_accessor_storage = "";
45
45
  /** Visual variant of the sidebar. */
46
46
  get variant() { return this.#variant_accessor_storage; }
47
47
  set variant(value) { this.#variant_accessor_storage = value; }
@@ -40,7 +40,7 @@ export class DuiSidebarTrigger extends LitElement {
40
40
  };
41
41
  render() {
42
42
  return html `
43
- <dui-button variant="ghost" size="sm" @click=${this.#onClick}>
43
+ <dui-button appearance="ghost" size="sm" @click=${this.#onClick}>
44
44
  <slot>
45
45
  <dui-icon>${panelLeftSvg}</dui-icon>
46
46
  </slot>
package/slider/index.d.ts CHANGED
@@ -1 +1,3 @@
1
- export { DuiSlider, valueChangeEvent, valueCommittedEvent } from "./slider.js";
1
+ import { DuiSlider, valueChangeEvent, valueCommittedEvent } from "./slider.js";
2
+ export { DuiSlider, valueChangeEvent, valueCommittedEvent };
3
+ export declare const sliderFamily: (typeof DuiSlider)[];
package/slider/index.js CHANGED
@@ -1 +1,3 @@
1
- export { DuiSlider, valueChangeEvent, valueCommittedEvent } from "./slider.js";
1
+ import { DuiSlider, valueChangeEvent, valueCommittedEvent } from "./slider.js";
2
+ export { DuiSlider, valueChangeEvent, valueCommittedEvent };
3
+ export const sliderFamily = [DuiSlider];
package/slider/slider.js CHANGED
@@ -49,7 +49,6 @@ const styles = css `
49
49
  transform: translateX(-50%);
50
50
  cursor: grab;
51
51
  outline: none;
52
- transition-property: left, box-shadow;
53
52
  }
54
53
 
55
54
  [part="root"][data-dragging] [part="thumb"] {
@@ -1 +1,3 @@
1
- export { DuiSpinner } from "./spinner.js";
1
+ import { DuiSpinner } from "./spinner.js";
2
+ export { DuiSpinner };
3
+ export declare const spinnerFamily: (typeof DuiSpinner)[];
package/spinner/index.js CHANGED
@@ -1 +1,3 @@
1
- export { DuiSpinner } from "./spinner.js";
1
+ import { DuiSpinner } from "./spinner.js";
2
+ export { DuiSpinner };
3
+ export const spinnerFamily = [DuiSpinner];
@@ -1,7 +1,5 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/spinner */
2
2
  import { LitElement, type TemplateResult } from "lit";
3
- type SpinnerSize = "sm" | "md" | "lg";
4
- type SpinnerVariant = "pulse" | "lucide-loader" | "lucide-loader-circle";
5
3
  /**
6
4
  * A loading indicator with multiple animation variants and sizes.
7
5
  */
@@ -9,10 +7,7 @@ export declare class DuiSpinner extends LitElement {
9
7
  #private;
10
8
  static tagName: "dui-spinner";
11
9
  static styles: import("lit").CSSResult[];
12
- /** Size variant: "sm" (24px), "md" (32px), "lg" (44px). */
13
- accessor size: SpinnerSize;
14
10
  /** Animation variant. */
15
- accessor variant: SpinnerVariant;
11
+ accessor variant: string;
16
12
  render(): TemplateResult;
17
13
  }
18
- export {};
@@ -108,11 +108,7 @@ const styles = css `
108
108
  export class DuiSpinner extends LitElement {
109
109
  static { this.tagName = "dui-spinner"; }
110
110
  static { this.styles = [base, styles]; }
111
- #size_accessor_storage = "sm";
112
- /** Size variant: "sm" (24px), "md" (32px), "lg" (44px). */
113
- get size() { return this.#size_accessor_storage; }
114
- set size(value) { this.#size_accessor_storage = value; }
115
- #variant_accessor_storage = "pulse";
111
+ #variant_accessor_storage = "";
116
112
  /** Animation variant. */
117
113
  get variant() { return this.#variant_accessor_storage; }
118
114
  set variant(value) { this.#variant_accessor_storage = value; }
@@ -130,9 +126,6 @@ export class DuiSpinner extends LitElement {
130
126
  return html `${this.#getSvg()}`;
131
127
  }
132
128
  }
133
- __decorate([
134
- property({ reflect: true })
135
- ], DuiSpinner.prototype, "size", null);
136
129
  __decorate([
137
130
  property({ reflect: true })
138
131
  ], DuiSpinner.prototype, "variant", null);
package/switch/index.d.ts CHANGED
@@ -1 +1,3 @@
1
- export { DuiSwitch, checkedChangeEvent } from "./switch.js";
1
+ import { DuiSwitch, checkedChangeEvent } from "./switch.js";
2
+ export { DuiSwitch, checkedChangeEvent };
3
+ export declare const switchFamily: (typeof DuiSwitch)[];
package/switch/index.js CHANGED
@@ -1 +1,3 @@
1
- export { DuiSwitch, checkedChangeEvent } from "./switch.js";
1
+ import { DuiSwitch, checkedChangeEvent } from "./switch.js";
2
+ export { DuiSwitch, checkedChangeEvent };
3
+ export const switchFamily = [DuiSwitch];
package/switch/switch.js CHANGED
@@ -32,13 +32,11 @@ const styles = css `
32
32
  margin-inline: 0;
33
33
  border: none;
34
34
  cursor: pointer;
35
- transition-property: background, outline-color, box-shadow, filter, transform;
36
35
  }
37
36
 
38
37
  [part="thumb"] {
39
38
  position: absolute;
40
39
  left: var(--switch-thumb-offset, 0.125rem);
41
- transition-property: transform, outline-color;
42
40
  }
43
41
 
44
42
  [part="root"][data-checked] [part="thumb"] {