@deepfuture/dui-components 0.0.10 → 0.0.12

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 (62) hide show
  1. package/_deprecated/center/register.d.ts +1 -0
  2. package/_deprecated/center/register.js +4 -0
  3. package/_deprecated/hstack/register.d.ts +1 -0
  4. package/_deprecated/hstack/register.js +4 -0
  5. package/_deprecated/page-inset/register.d.ts +1 -0
  6. package/_deprecated/page-inset/register.js +4 -0
  7. package/_deprecated/vstack/register.d.ts +1 -0
  8. package/_deprecated/vstack/register.js +4 -0
  9. package/alert-dialog/alert-dialog.d.ts +2 -0
  10. package/alert-dialog/alert-dialog.js +12 -6
  11. package/all.d.ts +16 -64
  12. package/all.js +132 -144
  13. package/checkbox/checkbox-group.d.ts +2 -0
  14. package/checkbox/checkbox-group.js +12 -6
  15. package/checkbox/checkbox.d.ts +2 -0
  16. package/checkbox/checkbox.js +17 -11
  17. package/dialog/dialog.d.ts +2 -0
  18. package/dialog/dialog.js +12 -6
  19. package/global.d.ts +0 -8
  20. package/input/input.d.ts +2 -0
  21. package/input/input.js +24 -18
  22. package/menubar/menubar.d.ts +2 -0
  23. package/menubar/menubar.js +11 -5
  24. package/number-field/number-field.d.ts +2 -0
  25. package/number-field/number-field.js +18 -12
  26. package/package.json +2 -18
  27. package/popover/popover.d.ts +2 -1
  28. package/popover/popover.js +14 -8
  29. package/preview-card/preview-card.d.ts +2 -1
  30. package/preview-card/preview-card.js +14 -8
  31. package/radio/radio-group.d.ts +2 -0
  32. package/radio/radio-group.js +12 -6
  33. package/radio/radio.d.ts +2 -0
  34. package/radio/radio.js +15 -9
  35. package/select/select.d.ts +2 -0
  36. package/select/select.js +19 -13
  37. package/sidebar/sidebar-provider.d.ts +2 -0
  38. package/sidebar/sidebar-provider.js +12 -6
  39. package/switch/switch.d.ts +2 -0
  40. package/switch/switch.js +15 -9
  41. package/toggle/toggle-group.d.ts +2 -0
  42. package/toggle/toggle-group.js +12 -6
  43. package/toggle/toggle.d.ts +2 -0
  44. package/toggle/toggle.js +15 -9
  45. package/tooltip/tooltip.d.ts +2 -1
  46. package/tooltip/tooltip.js +14 -8
  47. /package/{center → _deprecated/center}/center.d.ts +0 -0
  48. /package/{center → _deprecated/center}/center.js +0 -0
  49. /package/{center → _deprecated/center}/index.d.ts +0 -0
  50. /package/{center → _deprecated/center}/index.js +0 -0
  51. /package/{hstack → _deprecated/hstack}/hstack.d.ts +0 -0
  52. /package/{hstack → _deprecated/hstack}/hstack.js +0 -0
  53. /package/{hstack → _deprecated/hstack}/index.d.ts +0 -0
  54. /package/{hstack → _deprecated/hstack}/index.js +0 -0
  55. /package/{page-inset → _deprecated/page-inset}/index.d.ts +0 -0
  56. /package/{page-inset → _deprecated/page-inset}/index.js +0 -0
  57. /package/{page-inset → _deprecated/page-inset}/page-inset.d.ts +0 -0
  58. /package/{page-inset → _deprecated/page-inset}/page-inset.js +0 -0
  59. /package/{vstack → _deprecated/vstack}/index.d.ts +0 -0
  60. /package/{vstack → _deprecated/vstack}/index.js +0 -0
  61. /package/{vstack → _deprecated/vstack}/vstack.d.ts +0 -0
  62. /package/{vstack → _deprecated/vstack}/vstack.js +0 -0
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import { DuiCenter } from "./index.js";
2
+ if (!customElements.get(DuiCenter.tagName)) {
3
+ customElements.define(DuiCenter.tagName, DuiCenter);
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import { DuiHstack } from "./index.js";
2
+ if (!customElements.get(DuiHstack.tagName)) {
3
+ customElements.define(DuiHstack.tagName, DuiHstack);
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import { DuiPageInset } from "./index.js";
2
+ if (!customElements.get(DuiPageInset.tagName)) {
3
+ customElements.define(DuiPageInset.tagName, DuiPageInset);
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import { DuiVstack } from "./index.js";
2
+ if (!customElements.get(DuiVstack.tagName)) {
3
+ customElements.define(DuiVstack.tagName, DuiVstack);
4
+ }
@@ -1,5 +1,6 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/alert-dialog */
2
2
  import { LitElement, type TemplateResult } from "lit";
3
+ import { type AlertDialogContext } from "./alert-dialog-context.js";
3
4
  export type AlertDialogOpenChangeDetail = {
4
5
  open: boolean;
5
6
  };
@@ -24,6 +25,7 @@ export declare class DuiAlertDialog extends LitElement {
24
25
  accessor open: boolean | undefined;
25
26
  /** Initial open state for uncontrolled mode. */
26
27
  accessor defaultOpen: boolean;
28
+ accessor _ctx: AlertDialogContext;
27
29
  connectedCallback(): void;
28
30
  willUpdate(): void;
29
31
  render(): TemplateResult;
@@ -6,9 +6,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
8
  import { css, html, LitElement } from "lit";
9
- import { property } from "lit/decorators.js";
9
+ import { property, state } from "lit/decorators.js";
10
+ import { provide } from "@lit/context";
10
11
  import { base } from "@deepfuture/dui-core/base";
11
12
  import { customEvent } from "@deepfuture/dui-core/event";
13
+ import { alertDialogContext, } from "./alert-dialog-context.js";
12
14
  export const openChangeEvent = customEvent("open-change", { bubbles: true, composed: true });
13
15
  const hostStyles = css `
14
16
  :host {
@@ -61,9 +63,9 @@ export class DuiAlertDialog extends LitElement {
61
63
  }
62
64
  this.dispatchEvent(openChangeEvent({ open: false }));
63
65
  };
64
- #ctx_accessor_storage = this.#buildContext();
65
- get #ctx() { return this.#ctx_accessor_storage; }
66
- set #ctx(value) { this.#ctx_accessor_storage = value; }
66
+ #_ctx_accessor_storage = this.#buildContext();
67
+ get _ctx() { return this.#_ctx_accessor_storage; }
68
+ set _ctx(value) { this.#_ctx_accessor_storage = value; }
67
69
  #buildContext() {
68
70
  return {
69
71
  open: this.#isOpen,
@@ -80,10 +82,10 @@ export class DuiAlertDialog extends LitElement {
80
82
  if (this.open === undefined && this.defaultOpen) {
81
83
  this.#internalOpen = true;
82
84
  }
83
- this.#ctx = this.#buildContext();
85
+ this._ctx = this.#buildContext();
84
86
  }
85
87
  willUpdate() {
86
- this.#ctx = this.#buildContext();
88
+ this._ctx = this.#buildContext();
87
89
  }
88
90
  render() {
89
91
  return html `<slot></slot>`;
@@ -95,3 +97,7 @@ __decorate([
95
97
  __decorate([
96
98
  property({ type: Boolean, attribute: "default-open" })
97
99
  ], DuiAlertDialog.prototype, "defaultOpen", null);
100
+ __decorate([
101
+ provide({ context: alertDialogContext }),
102
+ state()
103
+ ], DuiAlertDialog.prototype, "_ctx", null);
package/all.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * @example
6
6
  * ```ts
7
- * import { applyTheme } from "@deepfuture/dui-core/apply-theme";
7
+ * import { applyTheme } from "@deepfuture/dui-core";
8
8
  * import { defaultTheme } from "@deepfuture/dui-theme-default";
9
9
  * import { allComponents } from "@deepfuture/dui-components/all";
10
10
  *
@@ -12,75 +12,29 @@
12
12
  * ```
13
13
  */
14
14
  import type { LitElement } from "lit";
15
- import { accordionFamily } from "./accordion/index.js";
16
- import { alertDialogFamily } from "./alert-dialog/index.js";
17
- import { avatarFamily } from "./avatar/index.js";
18
- import { badgeFamily } from "./badge/index.js";
19
- import { breadcrumbFamily } from "./breadcrumb/index.js";
20
- import { buttonFamily } from "./button/index.js";
21
- import { calendarFamily } from "./calendar/index.js";
22
- import { centerFamily } from "./center/index.js";
23
- import { checkboxFamily } from "./checkbox/index.js";
24
- import { collapsibleFamily } from "./collapsible/index.js";
25
- import { comboboxFamily } from "./combobox/index.js";
26
- import { commandFamily } from "./command/index.js";
27
- import { dataTableFamily } from "./data-table/index.js";
28
- import { dialogFamily } from "./dialog/index.js";
29
- import { dropzoneFamily } from "./dropzone/index.js";
30
- import { hstackFamily } from "./hstack/index.js";
31
- import { iconFamily } from "./icon/index.js";
32
- import { inputFamily } from "./input/index.js";
33
- import { linkFamily } from "./link/index.js";
34
- import { menuFamily } from "./menu/index.js";
35
- import { menubarFamily } from "./menubar/index.js";
36
- import { numberFieldFamily } from "./number-field/index.js";
37
- import { pageInsetFamily } from "./page-inset/index.js";
38
- import { popoverFamily } from "./popover/index.js";
39
- import { portalFamily } from "./portal/index.js";
40
- import { previewCardFamily } from "./preview-card/index.js";
41
- import { progressFamily } from "./progress/index.js";
42
- import { radioFamily } from "./radio/index.js";
43
- import { scrollAreaFamily } from "./scroll-area/index.js";
44
- import { selectFamily } from "./select/index.js";
45
- import { separatorFamily } from "./separator/index.js";
46
- import { sidebarFamily } from "./sidebar/index.js";
47
- import { sliderFamily } from "./slider/index.js";
48
- import { spinnerFamily } from "./spinner/index.js";
49
- import { switchFamily } from "./switch/index.js";
50
- import { tabsFamily } from "./tabs/index.js";
51
- import { textareaFamily } from "./textarea/index.js";
52
- import { toggleFamily } from "./toggle/index.js";
53
- import { toolbarFamily } from "./toolbar/index.js";
54
- import { tooltipFamily } from "./tooltip/index.js";
55
- import { truncFamily } from "./trunc/index.js";
56
- import { vstackFamily } from "./vstack/index.js";
57
- export { accordionFamily, alertDialogFamily, avatarFamily, badgeFamily, breadcrumbFamily, buttonFamily, calendarFamily, centerFamily, checkboxFamily, collapsibleFamily, comboboxFamily, commandFamily, dataTableFamily, dialogFamily, dropzoneFamily, hstackFamily, iconFamily, inputFamily, linkFamily, menuFamily, menubarFamily, numberFieldFamily, pageInsetFamily, popoverFamily, portalFamily, previewCardFamily, progressFamily, radioFamily, scrollAreaFamily, selectFamily, separatorFamily, sidebarFamily, sliderFamily, spinnerFamily, switchFamily, tabsFamily, textareaFamily, toggleFamily, toolbarFamily, tooltipFamily, truncFamily, vstackFamily, };
58
15
  export { DuiAccordion, DuiAccordionItem } from "./accordion/index.js";
59
16
  export type { AccordionContext } from "./accordion/index.js";
60
- export { DuiAlertDialog, DuiAlertDialogTrigger, DuiAlertDialogPopup, DuiAlertDialogClose } from "./alert-dialog/index.js";
61
- export type { AlertDialogOpenChangeDetail, AlertDialogContext } from "./alert-dialog/index.js";
17
+ export { DuiAlertDialog, DuiAlertDialogTrigger, DuiAlertDialogPopup, DuiAlertDialogClose, } from "./alert-dialog/index.js";
18
+ export type { AlertDialogOpenChangeDetail, AlertDialogContext, } from "./alert-dialog/index.js";
62
19
  export { DuiAvatar } from "./avatar/index.js";
63
20
  export type { ImageStatus } from "./avatar/index.js";
64
21
  export { DuiBadge } from "./badge/index.js";
65
- export { DuiBreadcrumb, DuiBreadcrumbItem, DuiBreadcrumbLink, DuiBreadcrumbPage, DuiBreadcrumbSeparator, DuiBreadcrumbEllipsis } from "./breadcrumb/index.js";
22
+ export { DuiBreadcrumb, DuiBreadcrumbItem, DuiBreadcrumbLink, DuiBreadcrumbPage, DuiBreadcrumbSeparator, DuiBreadcrumbEllipsis, } from "./breadcrumb/index.js";
66
23
  export { DuiButton } from "./button/index.js";
67
24
  export { DuiCalendar } from "./calendar/index.js";
68
- export { DuiCenter } from "./center/index.js";
69
25
  export { DuiCheckbox, DuiCheckboxGroup } from "./checkbox/index.js";
70
26
  export type { CheckboxGroupContext } from "./checkbox/index.js";
71
27
  export { DuiCollapsible } from "./collapsible/index.js";
72
28
  export { DuiCombobox } from "./combobox/index.js";
73
- export type { SelectOption as ComboboxSelectOption, ComboboxValueChangeDetail, ComboboxValuesChangeDetail } from "./combobox/index.js";
74
- export { DuiCommand, DuiCommandInput, DuiCommandList, DuiCommandGroup, DuiCommandItem, DuiCommandEmpty, DuiCommandSeparator, DuiCommandShortcut } from "./command/index.js";
29
+ export type { SelectOption as ComboboxSelectOption, ComboboxValueChangeDetail, ComboboxValuesChangeDetail, } from "./combobox/index.js";
30
+ export { DuiCommand, DuiCommandInput, DuiCommandList, DuiCommandGroup, DuiCommandItem, DuiCommandEmpty, DuiCommandSeparator, DuiCommandShortcut, } from "./command/index.js";
75
31
  export type { CommandContext, CommandItemEntry } from "./command/index.js";
76
32
  export { DuiDataTable } from "./data-table/index.js";
77
- export type { ColumnDef, SortDirection, SortState, PageState } from "./data-table/index.js";
78
- export { DuiDialog, DuiDialogTrigger, DuiDialogPopup, DuiDialogClose } from "./dialog/index.js";
33
+ export type { ColumnDef, SortDirection, SortState, PageState, } from "./data-table/index.js";
34
+ export { DuiDialog, DuiDialogTrigger, DuiDialogPopup, DuiDialogClose, } from "./dialog/index.js";
79
35
  export type { DialogOpenChangeDetail, DialogContext } from "./dialog/index.js";
80
36
  export { DuiDropzone } from "./dropzone/index.js";
81
- export type { DropzoneErrorCode, DropzoneRejectionCode, FileRejectionError, RejectedFile, DropzoneDropDetail, DropzoneAcceptedDetail, DropzoneRejectedDetail, DropzoneErrorDetail } from "./dropzone/index.js";
82
- export { DuiHstack } from "./hstack/index.js";
83
- export type { HstackAlignment, HstackJustify } from "./hstack/index.js";
37
+ export type { DropzoneErrorCode, DropzoneRejectionCode, FileRejectionError, RejectedFile, DropzoneDropDetail, DropzoneAcceptedDetail, DropzoneRejectedDetail, DropzoneErrorDetail, } from "./dropzone/index.js";
84
38
  export { DuiIcon } from "./icon/index.js";
85
39
  export { DuiInput } from "./input/index.js";
86
40
  export { DuiLink } from "./link/index.js";
@@ -88,13 +42,12 @@ export { DuiMenu, DuiMenuItem } from "./menu/index.js";
88
42
  export { DuiMenubar } from "./menubar/index.js";
89
43
  export type { MenubarContext } from "./menubar/index.js";
90
44
  export { DuiNumberField } from "./number-field/index.js";
91
- export { DuiPageInset } from "./page-inset/index.js";
92
- export { DuiPopover, DuiPopoverTrigger, DuiPopoverPopup, DuiPopoverClose } from "./popover/index.js";
93
- export type { PopoverOpenChangeDetail, PopoverContext, PopoverSide } from "./popover/index.js";
45
+ export { DuiPopover, DuiPopoverTrigger, DuiPopoverPopup, DuiPopoverClose, } from "./popover/index.js";
46
+ export type { PopoverOpenChangeDetail, PopoverContext, PopoverSide, } from "./popover/index.js";
94
47
  export { DuiPortal } from "./portal/index.js";
95
48
  export type { QueryRoot } from "./portal/index.js";
96
- export { DuiPreviewCard, DuiPreviewCardTrigger, DuiPreviewCardPopup } from "./preview-card/index.js";
97
- export type { PreviewCardOpenChangeDetail, PreviewCardContext, PreviewCardSide } from "./preview-card/index.js";
49
+ export { DuiPreviewCard, DuiPreviewCardTrigger, DuiPreviewCardPopup, } from "./preview-card/index.js";
50
+ export type { PreviewCardOpenChangeDetail, PreviewCardContext, PreviewCardSide, } from "./preview-card/index.js";
98
51
  export { DuiProgress } from "./progress/index.js";
99
52
  export { DuiRadio, DuiRadioGroup } from "./radio/index.js";
100
53
  export type { RadioGroupContext } from "./radio/index.js";
@@ -102,22 +55,21 @@ export { DuiScrollArea } from "./scroll-area/index.js";
102
55
  export { DuiSelect } from "./select/index.js";
103
56
  export type { SelectOption } from "./select/index.js";
104
57
  export { DuiSeparator } from "./separator/index.js";
105
- export { DuiSidebarProvider, DuiSidebar, DuiSidebarTrigger, DuiSidebarContent, DuiSidebarHeader, DuiSidebarFooter, DuiSidebarGroup, DuiSidebarGroupLabel, DuiSidebarMenu, DuiSidebarMenuItem, DuiSidebarMenuButton, DuiSidebarSeparator, DuiSidebarInset } from "./sidebar/index.js";
58
+ export { DuiSidebarProvider, DuiSidebar, DuiSidebarTrigger, DuiSidebarContent, DuiSidebarHeader, DuiSidebarFooter, DuiSidebarGroup, DuiSidebarGroupLabel, DuiSidebarMenu, DuiSidebarMenuItem, DuiSidebarMenuButton, DuiSidebarSeparator, DuiSidebarInset, } from "./sidebar/index.js";
106
59
  export type { SidebarContext } from "./sidebar/index.js";
107
60
  export { DuiSlider } from "./slider/index.js";
108
61
  export { DuiSpinner } from "./spinner/index.js";
109
62
  export { DuiSwitch } from "./switch/index.js";
110
- export { DuiTabs, DuiTabsList, DuiTab, DuiTabsPanel, DuiTabsIndicator } from "./tabs/index.js";
63
+ export { DuiTabs, DuiTabsList, DuiTab, DuiTabsPanel, DuiTabsIndicator, } from "./tabs/index.js";
111
64
  export type { TabsContext } from "./tabs/index.js";
112
65
  export { DuiTextarea } from "./textarea/index.js";
113
66
  export type { TextareaResize } from "./textarea/index.js";
114
67
  export { DuiToggle, DuiToggleGroup } from "./toggle/index.js";
115
68
  export type { ToggleGroupContext } from "./toggle/index.js";
116
69
  export { DuiToolbar } from "./toolbar/index.js";
117
- export { DuiTooltip, DuiTooltipTrigger, DuiTooltipPopup } from "./tooltip/index.js";
70
+ export { DuiTooltip, DuiTooltipTrigger, DuiTooltipPopup, } from "./tooltip/index.js";
118
71
  export type { TooltipContext, TooltipSide } from "./tooltip/index.js";
119
72
  export { DuiTrunc } from "./trunc/index.js";
120
- export { DuiVstack } from "./vstack/index.js";
121
73
  /**
122
74
  * All DUI component classes, ready for `applyTheme()`.
123
75
  * Includes every component and sub-component.
package/all.js CHANGED
@@ -4,188 +4,176 @@
4
4
  *
5
5
  * @example
6
6
  * ```ts
7
- * import { applyTheme } from "@deepfuture/dui-core/apply-theme";
7
+ * import { applyTheme } from "@deepfuture/dui-core";
8
8
  * import { defaultTheme } from "@deepfuture/dui-theme-default";
9
9
  * import { allComponents } from "@deepfuture/dui-components/all";
10
10
  *
11
11
  * applyTheme({ theme: defaultTheme, components: allComponents });
12
12
  * ```
13
13
  */
14
- // --- Component families (used to build allComponents) ---
15
- import { accordionFamily } from "./accordion/index.js";
16
- import { alertDialogFamily } from "./alert-dialog/index.js";
17
- import { avatarFamily } from "./avatar/index.js";
18
- import { badgeFamily } from "./badge/index.js";
19
- import { breadcrumbFamily } from "./breadcrumb/index.js";
20
- import { buttonFamily } from "./button/index.js";
21
- import { calendarFamily } from "./calendar/index.js";
22
- import { centerFamily } from "./center/index.js";
23
- import { checkboxFamily } from "./checkbox/index.js";
24
- import { collapsibleFamily } from "./collapsible/index.js";
25
- import { comboboxFamily } from "./combobox/index.js";
26
- import { commandFamily } from "./command/index.js";
27
- import { dataTableFamily } from "./data-table/index.js";
28
- import { dialogFamily } from "./dialog/index.js";
29
- import { dropzoneFamily } from "./dropzone/index.js";
30
- import { hstackFamily } from "./hstack/index.js";
31
- import { iconFamily } from "./icon/index.js";
32
- import { inputFamily } from "./input/index.js";
33
- import { linkFamily } from "./link/index.js";
34
- import { menuFamily } from "./menu/index.js";
35
- import { menubarFamily } from "./menubar/index.js";
36
- import { numberFieldFamily } from "./number-field/index.js";
37
- import { pageInsetFamily } from "./page-inset/index.js";
38
- import { popoverFamily } from "./popover/index.js";
39
- import { portalFamily } from "./portal/index.js";
40
- import { previewCardFamily } from "./preview-card/index.js";
41
- import { progressFamily } from "./progress/index.js";
42
- import { radioFamily } from "./radio/index.js";
43
- import { scrollAreaFamily } from "./scroll-area/index.js";
44
- import { selectFamily } from "./select/index.js";
45
- import { separatorFamily } from "./separator/index.js";
46
- import { sidebarFamily } from "./sidebar/index.js";
47
- import { sliderFamily } from "./slider/index.js";
48
- import { spinnerFamily } from "./spinner/index.js";
49
- import { switchFamily } from "./switch/index.js";
50
- import { tabsFamily } from "./tabs/index.js";
51
- import { textareaFamily } from "./textarea/index.js";
52
- import { toggleFamily } from "./toggle/index.js";
53
- import { toolbarFamily } from "./toolbar/index.js";
54
- import { tooltipFamily } from "./tooltip/index.js";
55
- import { truncFamily } from "./trunc/index.js";
56
- import { vstackFamily } from "./vstack/index.js";
57
- // --- Re-export all families ---
58
- export { accordionFamily, alertDialogFamily, avatarFamily, badgeFamily, breadcrumbFamily, buttonFamily, calendarFamily, centerFamily, checkboxFamily, collapsibleFamily, comboboxFamily, commandFamily, dataTableFamily, dialogFamily, dropzoneFamily, hstackFamily, iconFamily, inputFamily, linkFamily, menuFamily, menubarFamily, numberFieldFamily, pageInsetFamily, popoverFamily, portalFamily, previewCardFamily, progressFamily, radioFamily, scrollAreaFamily, selectFamily, separatorFamily, sidebarFamily, sliderFamily, spinnerFamily, switchFamily, tabsFamily, textareaFamily, toggleFamily, toolbarFamily, tooltipFamily, truncFamily, vstackFamily, };
59
- // --- Re-export component classes and types (explicit to avoid name collisions) ---
60
- // Accordion
14
+ // --- Accordion ---
61
15
  export { DuiAccordion, DuiAccordionItem } from "./accordion/index.js";
62
- // Alert Dialog
63
- export { DuiAlertDialog, DuiAlertDialogTrigger, DuiAlertDialogPopup, DuiAlertDialogClose } from "./alert-dialog/index.js";
64
- // Avatar
16
+ // --- Alert Dialog ---
17
+ export { DuiAlertDialog, DuiAlertDialogTrigger, DuiAlertDialogPopup, DuiAlertDialogClose, } from "./alert-dialog/index.js";
18
+ // --- Avatar ---
65
19
  export { DuiAvatar } from "./avatar/index.js";
66
- // Badge
20
+ // --- Badge ---
67
21
  export { DuiBadge } from "./badge/index.js";
68
- // Breadcrumb
69
- export { DuiBreadcrumb, DuiBreadcrumbItem, DuiBreadcrumbLink, DuiBreadcrumbPage, DuiBreadcrumbSeparator, DuiBreadcrumbEllipsis } from "./breadcrumb/index.js";
70
- // Button
22
+ // --- Breadcrumb ---
23
+ export { DuiBreadcrumb, DuiBreadcrumbItem, DuiBreadcrumbLink, DuiBreadcrumbPage, DuiBreadcrumbSeparator, DuiBreadcrumbEllipsis, } from "./breadcrumb/index.js";
24
+ // --- Button ---
71
25
  export { DuiButton } from "./button/index.js";
72
- // Calendar
26
+ // --- Calendar ---
73
27
  export { DuiCalendar } from "./calendar/index.js";
74
- // Center
75
- export { DuiCenter } from "./center/index.js";
76
- // Checkbox
28
+ // --- Checkbox ---
77
29
  export { DuiCheckbox, DuiCheckboxGroup } from "./checkbox/index.js";
78
- // Collapsible
30
+ // --- Collapsible ---
79
31
  export { DuiCollapsible } from "./collapsible/index.js";
80
- // Combobox
32
+ // --- Combobox ---
81
33
  export { DuiCombobox } from "./combobox/index.js";
82
- // Command
83
- export { DuiCommand, DuiCommandInput, DuiCommandList, DuiCommandGroup, DuiCommandItem, DuiCommandEmpty, DuiCommandSeparator, DuiCommandShortcut } from "./command/index.js";
84
- // Data Table
34
+ // --- Command ---
35
+ export { DuiCommand, DuiCommandInput, DuiCommandList, DuiCommandGroup, DuiCommandItem, DuiCommandEmpty, DuiCommandSeparator, DuiCommandShortcut, } from "./command/index.js";
36
+ // --- Data Table ---
85
37
  export { DuiDataTable } from "./data-table/index.js";
86
- // Dialog
87
- export { DuiDialog, DuiDialogTrigger, DuiDialogPopup, DuiDialogClose } from "./dialog/index.js";
88
- // Dropzone
38
+ // --- Dialog ---
39
+ export { DuiDialog, DuiDialogTrigger, DuiDialogPopup, DuiDialogClose, } from "./dialog/index.js";
40
+ // --- Dropzone ---
89
41
  export { DuiDropzone } from "./dropzone/index.js";
90
- // HStack
91
- export { DuiHstack } from "./hstack/index.js";
92
- // Icon
42
+ // --- Icon ---
93
43
  export { DuiIcon } from "./icon/index.js";
94
- // Input
44
+ // --- Input ---
95
45
  export { DuiInput } from "./input/index.js";
96
- // Link
46
+ // --- Link ---
97
47
  export { DuiLink } from "./link/index.js";
98
- // Menu
48
+ // --- Menu ---
99
49
  export { DuiMenu, DuiMenuItem } from "./menu/index.js";
100
- // Menubar
50
+ // --- Menubar ---
101
51
  export { DuiMenubar } from "./menubar/index.js";
102
- // Number Field
52
+ // --- Number Field ---
103
53
  export { DuiNumberField } from "./number-field/index.js";
104
- // Page Inset
105
- export { DuiPageInset } from "./page-inset/index.js";
106
- // Popover
107
- export { DuiPopover, DuiPopoverTrigger, DuiPopoverPopup, DuiPopoverClose } from "./popover/index.js";
108
- // Portal
54
+ // --- Popover ---
55
+ export { DuiPopover, DuiPopoverTrigger, DuiPopoverPopup, DuiPopoverClose, } from "./popover/index.js";
56
+ // --- Portal ---
109
57
  export { DuiPortal } from "./portal/index.js";
110
- // Preview Card
111
- export { DuiPreviewCard, DuiPreviewCardTrigger, DuiPreviewCardPopup } from "./preview-card/index.js";
112
- // Progress
58
+ // --- Preview Card ---
59
+ export { DuiPreviewCard, DuiPreviewCardTrigger, DuiPreviewCardPopup, } from "./preview-card/index.js";
60
+ // --- Progress ---
113
61
  export { DuiProgress } from "./progress/index.js";
114
- // Radio
62
+ // --- Radio ---
115
63
  export { DuiRadio, DuiRadioGroup } from "./radio/index.js";
116
- // Scroll Area
64
+ // --- Scroll Area ---
117
65
  export { DuiScrollArea } from "./scroll-area/index.js";
118
- // Select
66
+ // --- Select ---
119
67
  export { DuiSelect } from "./select/index.js";
120
- // Separator
68
+ // --- Separator ---
121
69
  export { DuiSeparator } from "./separator/index.js";
122
- // Sidebar
123
- export { DuiSidebarProvider, DuiSidebar, DuiSidebarTrigger, DuiSidebarContent, DuiSidebarHeader, DuiSidebarFooter, DuiSidebarGroup, DuiSidebarGroupLabel, DuiSidebarMenu, DuiSidebarMenuItem, DuiSidebarMenuButton, DuiSidebarSeparator, DuiSidebarInset } from "./sidebar/index.js";
124
- // Slider
70
+ // --- Sidebar ---
71
+ export { DuiSidebarProvider, DuiSidebar, DuiSidebarTrigger, DuiSidebarContent, DuiSidebarHeader, DuiSidebarFooter, DuiSidebarGroup, DuiSidebarGroupLabel, DuiSidebarMenu, DuiSidebarMenuItem, DuiSidebarMenuButton, DuiSidebarSeparator, DuiSidebarInset, } from "./sidebar/index.js";
72
+ // --- Slider ---
125
73
  export { DuiSlider } from "./slider/index.js";
126
- // Spinner
74
+ // --- Spinner ---
127
75
  export { DuiSpinner } from "./spinner/index.js";
128
- // Switch
76
+ // --- Switch ---
129
77
  export { DuiSwitch } from "./switch/index.js";
130
- // Tabs
131
- export { DuiTabs, DuiTabsList, DuiTab, DuiTabsPanel, DuiTabsIndicator } from "./tabs/index.js";
132
- // Textarea
78
+ // --- Tabs ---
79
+ export { DuiTabs, DuiTabsList, DuiTab, DuiTabsPanel, DuiTabsIndicator, } from "./tabs/index.js";
80
+ // --- Textarea ---
133
81
  export { DuiTextarea } from "./textarea/index.js";
134
- // Toggle
82
+ // --- Toggle ---
135
83
  export { DuiToggle, DuiToggleGroup } from "./toggle/index.js";
136
- // Toolbar
84
+ // --- Toolbar ---
137
85
  export { DuiToolbar } from "./toolbar/index.js";
138
- // Tooltip
139
- export { DuiTooltip, DuiTooltipTrigger, DuiTooltipPopup } from "./tooltip/index.js";
140
- // Trunc
86
+ // --- Tooltip ---
87
+ export { DuiTooltip, DuiTooltipTrigger, DuiTooltipPopup, } from "./tooltip/index.js";
88
+ // --- Trunc ---
141
89
  export { DuiTrunc } from "./trunc/index.js";
142
- // VStack
143
- export { DuiVstack } from "./vstack/index.js";
144
90
  /**
145
91
  * All DUI component classes, ready for `applyTheme()`.
146
92
  * Includes every component and sub-component.
147
93
  */
148
94
  export const allComponents = [
149
- ...accordionFamily,
150
- ...alertDialogFamily,
151
- ...avatarFamily,
152
- ...badgeFamily,
153
- ...breadcrumbFamily,
154
- ...buttonFamily,
155
- ...calendarFamily,
156
- ...centerFamily,
157
- ...checkboxFamily,
158
- ...collapsibleFamily,
159
- ...comboboxFamily,
160
- ...commandFamily,
161
- ...dataTableFamily,
162
- ...dialogFamily,
163
- ...dropzoneFamily,
164
- ...hstackFamily,
165
- ...iconFamily,
166
- ...inputFamily,
167
- ...linkFamily,
168
- ...menuFamily,
169
- ...menubarFamily,
170
- ...numberFieldFamily,
171
- ...pageInsetFamily,
172
- ...popoverFamily,
173
- ...portalFamily,
174
- ...previewCardFamily,
175
- ...progressFamily,
176
- ...radioFamily,
177
- ...scrollAreaFamily,
178
- ...selectFamily,
179
- ...separatorFamily,
180
- ...sidebarFamily,
181
- ...sliderFamily,
182
- ...spinnerFamily,
183
- ...switchFamily,
184
- ...tabsFamily,
185
- ...textareaFamily,
186
- ...toggleFamily,
187
- ...toolbarFamily,
188
- ...tooltipFamily,
189
- ...truncFamily,
190
- ...vstackFamily,
95
+ DuiAccordion,
96
+ DuiAccordionItem,
97
+ DuiAlertDialog,
98
+ DuiAlertDialogTrigger,
99
+ DuiAlertDialogPopup,
100
+ DuiAlertDialogClose,
101
+ DuiAvatar,
102
+ DuiBadge,
103
+ DuiBreadcrumb,
104
+ DuiBreadcrumbItem,
105
+ DuiBreadcrumbLink,
106
+ DuiBreadcrumbPage,
107
+ DuiBreadcrumbSeparator,
108
+ DuiBreadcrumbEllipsis,
109
+ DuiButton,
110
+ DuiCalendar,
111
+ DuiCheckbox,
112
+ DuiCheckboxGroup,
113
+ DuiCollapsible,
114
+ DuiCombobox,
115
+ DuiCommand,
116
+ DuiCommandInput,
117
+ DuiCommandList,
118
+ DuiCommandGroup,
119
+ DuiCommandItem,
120
+ DuiCommandEmpty,
121
+ DuiCommandSeparator,
122
+ DuiCommandShortcut,
123
+ DuiDataTable,
124
+ DuiDialog,
125
+ DuiDialogTrigger,
126
+ DuiDialogPopup,
127
+ DuiDialogClose,
128
+ DuiDropzone,
129
+ DuiIcon,
130
+ DuiInput,
131
+ DuiLink,
132
+ DuiMenu,
133
+ DuiMenuItem,
134
+ DuiMenubar,
135
+ DuiNumberField,
136
+ DuiPopover,
137
+ DuiPopoverTrigger,
138
+ DuiPopoverPopup,
139
+ DuiPopoverClose,
140
+ DuiPortal,
141
+ DuiPreviewCard,
142
+ DuiPreviewCardTrigger,
143
+ DuiPreviewCardPopup,
144
+ DuiProgress,
145
+ DuiRadio,
146
+ DuiRadioGroup,
147
+ DuiScrollArea,
148
+ DuiSelect,
149
+ DuiSeparator,
150
+ DuiSidebarProvider,
151
+ DuiSidebar,
152
+ DuiSidebarTrigger,
153
+ DuiSidebarContent,
154
+ DuiSidebarHeader,
155
+ DuiSidebarFooter,
156
+ DuiSidebarGroup,
157
+ DuiSidebarGroupLabel,
158
+ DuiSidebarMenu,
159
+ DuiSidebarMenuItem,
160
+ DuiSidebarMenuButton,
161
+ DuiSidebarSeparator,
162
+ DuiSidebarInset,
163
+ DuiSlider,
164
+ DuiSpinner,
165
+ DuiSwitch,
166
+ DuiTabs,
167
+ DuiTabsList,
168
+ DuiTab,
169
+ DuiTabsPanel,
170
+ DuiTabsIndicator,
171
+ DuiTextarea,
172
+ DuiToggle,
173
+ DuiToggleGroup,
174
+ DuiToolbar,
175
+ DuiTooltip,
176
+ DuiTooltipTrigger,
177
+ DuiTooltipPopup,
178
+ DuiTrunc,
191
179
  ];
@@ -1,5 +1,6 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/checkbox */
2
2
  import { LitElement, type TemplateResult } from "lit";
3
+ import { type CheckboxGroupContext } from "./checkbox-group-context.js";
3
4
  export declare const valueChangeEvent: (detail: string[]) => CustomEvent<string[]>;
4
5
  /**
5
6
  * `<dui-checkbox-group>` — Groups multiple checkboxes with shared state.
@@ -28,6 +29,7 @@ export declare class DuiCheckboxGroup extends LitElement {
28
29
  accessor allValues: string[];
29
30
  /** Whether all checkboxes in the group are disabled. */
30
31
  accessor disabled: boolean;
32
+ accessor _ctx: CheckboxGroupContext;
31
33
  connectedCallback(): void;
32
34
  willUpdate(): void;
33
35
  render(): TemplateResult;
@@ -6,9 +6,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
8
  import { css, html, LitElement } from "lit";
9
- import { property } from "lit/decorators.js";
9
+ import { property, state } from "lit/decorators.js";
10
+ import { provide } from "@lit/context";
10
11
  import { base } from "@deepfuture/dui-core/base";
11
12
  import { customEvent } from "@deepfuture/dui-core/event";
13
+ import { checkboxGroupContext, } from "./checkbox-group-context.js";
12
14
  export const valueChangeEvent = customEvent("value-change", {
13
15
  bubbles: true,
14
16
  composed: true,
@@ -80,9 +82,9 @@ export class DuiCheckboxGroup extends LitElement {
80
82
  }
81
83
  this.dispatchEvent(valueChangeEvent(next));
82
84
  };
83
- #ctx_accessor_storage = this.#buildContext();
84
- get #ctx() { return this.#ctx_accessor_storage; }
85
- set #ctx(value) { this.#ctx_accessor_storage = value; }
85
+ #_ctx_accessor_storage = this.#buildContext();
86
+ get _ctx() { return this.#_ctx_accessor_storage; }
87
+ set _ctx(value) { this.#_ctx_accessor_storage = value; }
86
88
  #buildContext() {
87
89
  return {
88
90
  checkedValues: this.#getCheckedValues(),
@@ -97,10 +99,10 @@ export class DuiCheckboxGroup extends LitElement {
97
99
  if (this.value === undefined && this.defaultValue.length > 0) {
98
100
  this.#internalValues = [...this.defaultValue];
99
101
  }
100
- this.#ctx = this.#buildContext();
102
+ this._ctx = this.#buildContext();
101
103
  }
102
104
  willUpdate() {
103
- this.#ctx = this.#buildContext();
105
+ this._ctx = this.#buildContext();
104
106
  }
105
107
  render() {
106
108
  return html `
@@ -126,3 +128,7 @@ __decorate([
126
128
  __decorate([
127
129
  property({ type: Boolean, reflect: true })
128
130
  ], DuiCheckboxGroup.prototype, "disabled", null);
131
+ __decorate([
132
+ provide({ context: checkboxGroupContext }),
133
+ state()
134
+ ], DuiCheckboxGroup.prototype, "_ctx", null);
@@ -1,5 +1,6 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/checkbox */
2
2
  import { LitElement, type TemplateResult } from "lit";
3
+ import { type FieldContext } from "../field/field-context.js";
3
4
  export declare const checkedChangeEvent: (detail: {
4
5
  checked: boolean;
5
6
  indeterminate: boolean;
@@ -40,6 +41,7 @@ export declare class DuiCheckbox extends LitElement {
40
41
  accessor value: string | undefined;
41
42
  /** When true, acts as a parent (select-all) checkbox within a group. */
42
43
  accessor parent: boolean;
44
+ accessor _fieldCtx: FieldContext;
43
45
  connectedCallback(): void;
44
46
  disconnectedCallback(): void;
45
47
  render(): TemplateResult;