@deepfuture/dui-components 0.0.21 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -65
- package/_install.js +11 -0
- package/accordion/accordion-item.d.ts +3 -20
- package/accordion/accordion-item.js +92 -292
- package/accordion/accordion.d.ts +3 -18
- package/accordion/accordion.js +9 -247
- package/accordion/index.d.ts +6 -6
- package/accordion/index.js +5 -5
- package/alert-dialog/alert-dialog-close.d.ts +3 -14
- package/alert-dialog/alert-dialog-close.js +4 -34
- package/alert-dialog/alert-dialog-popup.d.ts +3 -32
- package/alert-dialog/alert-dialog-popup.js +68 -317
- package/alert-dialog/alert-dialog-trigger.d.ts +3 -14
- package/alert-dialog/alert-dialog-trigger.js +4 -51
- package/alert-dialog/alert-dialog.d.ts +3 -30
- package/alert-dialog/alert-dialog.js +8 -158
- package/alert-dialog/index.d.ts +11 -11
- package/alert-dialog/index.js +9 -9
- package/all.d.ts +159 -123
- package/all.js +134 -231
- package/avatar/avatar.d.ts +3 -39
- package/avatar/avatar.js +18 -238
- package/avatar/index.d.ts +4 -4
- package/avatar/index.js +3 -3
- package/badge/badge.d.ts +3 -10
- package/badge/badge.js +87 -22
- package/badge/index.d.ts +2 -3
- package/badge/index.js +2 -3
- package/breadcrumb/breadcrumb-ellipsis.d.ts +3 -12
- package/breadcrumb/breadcrumb-ellipsis.js +8 -34
- package/breadcrumb/breadcrumb-item.d.ts +3 -11
- package/breadcrumb/breadcrumb-item.js +7 -26
- package/breadcrumb/breadcrumb-link.d.ts +3 -12
- package/breadcrumb/breadcrumb-link.js +16 -26
- package/breadcrumb/breadcrumb-page.d.ts +3 -11
- package/breadcrumb/breadcrumb-page.js +8 -31
- package/breadcrumb/breadcrumb-separator.d.ts +3 -12
- package/breadcrumb/breadcrumb-separator.js +8 -31
- package/breadcrumb/breadcrumb.d.ts +3 -12
- package/breadcrumb/breadcrumb.js +10 -33
- package/breadcrumb/index.d.ts +12 -13
- package/breadcrumb/index.js +12 -13
- package/button/button.d.ts +3 -32
- package/button/button.js +220 -165
- package/button/index.d.ts +3 -3
- package/button/index.js +3 -3
- package/calendar/calendar.d.ts +3 -31
- package/calendar/calendar.js +71 -481
- package/calendar/index.d.ts +3 -3
- package/calendar/index.js +3 -3
- package/card/card.d.ts +3 -27
- package/card/card.js +80 -163
- package/card/index.d.ts +2 -3
- package/card/index.js +2 -3
- package/card-grid/card-grid.d.ts +3 -15
- package/card-grid/card-grid.js +8 -106
- package/card-grid/index.d.ts +2 -3
- package/card-grid/index.js +2 -3
- package/checkbox/checkbox-group.d.ts +3 -34
- package/checkbox/checkbox-group.js +11 -188
- package/checkbox/checkbox.d.ts +3 -47
- package/checkbox/checkbox.js +43 -341
- package/checkbox/index.d.ts +6 -6
- package/checkbox/index.js +5 -5
- package/collapsible/collapsible.d.ts +3 -20
- package/collapsible/collapsible.js +82 -277
- package/collapsible/index.d.ts +3 -3
- package/collapsible/index.js +3 -3
- package/combobox/combobox.d.ts +3 -47
- package/combobox/combobox.js +136 -538
- package/combobox/index.d.ts +4 -4
- package/combobox/index.js +3 -3
- package/command/command-empty.d.ts +3 -8
- package/command/command-empty.js +10 -88
- package/command/command-group.d.ts +3 -13
- package/command/command-group.js +14 -114
- package/command/command-input.d.ts +3 -11
- package/command/command-input.js +20 -136
- package/command/command-item.d.ts +3 -18
- package/command/command-item.js +23 -212
- package/command/command-list.d.ts +3 -7
- package/command/command-list.js +11 -79
- package/command/command-separator.d.ts +3 -5
- package/command/command-separator.js +10 -11
- package/command/command-shortcut.d.ts +3 -5
- package/command/command-shortcut.js +9 -12
- package/command/command.d.ts +3 -23
- package/command/command.js +10 -339
- package/command/index.d.ts +17 -19
- package/command/index.js +16 -18
- package/data-table/data-table.d.ts +3 -57
- package/data-table/data-table.js +85 -449
- package/data-table/index.d.ts +3 -4
- package/data-table/index.js +2 -3
- package/dialog/dialog-close.d.ts +3 -14
- package/dialog/dialog-close.js +4 -34
- package/dialog/dialog-popup.d.ts +3 -34
- package/dialog/dialog-popup.js +70 -336
- package/dialog/dialog-trigger.d.ts +3 -14
- package/dialog/dialog-trigger.js +4 -51
- package/dialog/dialog.d.ts +3 -30
- package/dialog/dialog.js +8 -158
- package/dialog/index.d.ts +11 -11
- package/dialog/index.js +9 -9
- package/dropzone/dropzone.d.ts +3 -72
- package/dropzone/dropzone.js +29 -407
- package/dropzone/index.d.ts +4 -4
- package/dropzone/index.js +3 -3
- package/field/field.d.ts +3 -30
- package/field/field.js +34 -353
- package/field/index.d.ts +1 -0
- package/field/index.js +1 -0
- package/fieldset/fieldset.d.ts +3 -18
- package/fieldset/fieldset.js +21 -110
- package/fieldset/index.d.ts +1 -0
- package/fieldset/index.js +1 -0
- package/icon/icon.d.ts +3 -15
- package/icon/icon.js +4 -33
- package/icon/index.d.ts +2 -3
- package/icon/index.js +2 -3
- package/input/index.d.ts +3 -3
- package/input/index.js +3 -3
- package/input/input.d.ts +3 -49
- package/input/input.js +57 -238
- package/menu/index.d.ts +4 -5
- package/menu/index.js +4 -5
- package/menu/menu-item.d.ts +3 -13
- package/menu/menu-item.js +40 -91
- package/menu/menu.d.ts +3 -15
- package/menu/menu.js +27 -277
- package/menubar/index.d.ts +3 -4
- package/menubar/index.js +2 -3
- package/menubar/menubar.d.ts +3 -19
- package/menubar/menubar.js +12 -183
- package/number-field/index.d.ts +3 -3
- package/number-field/index.js +3 -3
- package/number-field/number-field.d.ts +3 -55
- package/number-field/number-field.js +205 -698
- package/package.json +125 -113
- package/popover/index.d.ts +11 -11
- package/popover/index.js +9 -9
- package/popover/popover-close.d.ts +3 -12
- package/popover/popover-close.js +4 -32
- package/popover/popover-popup.d.ts +3 -18
- package/popover/popover-popup.js +28 -205
- package/popover/popover-trigger.d.ts +3 -13
- package/popover/popover-trigger.js +4 -73
- package/popover/popover.d.ts +3 -29
- package/popover/popover.js +8 -207
- package/portal/index.d.ts +3 -4
- package/portal/index.js +2 -3
- package/portal/portal.d.ts +3 -27
- package/portal/portal.js +8 -157
- package/preview-card/index.d.ts +9 -9
- package/preview-card/index.js +7 -7
- package/preview-card/preview-card-popup.d.ts +3 -14
- package/preview-card/preview-card-popup.js +29 -194
- package/preview-card/preview-card-trigger.d.ts +3 -12
- package/preview-card/preview-card-trigger.js +4 -74
- package/preview-card/preview-card.d.ts +3 -33
- package/preview-card/preview-card.js +8 -239
- package/progress/index.d.ts +2 -3
- package/progress/index.js +2 -3
- package/progress/progress.d.ts +3 -17
- package/progress/progress.js +28 -130
- package/radio/index.d.ts +6 -6
- package/radio/index.js +5 -5
- package/radio/radio-group.d.ts +3 -37
- package/radio/radio-group.js +8 -200
- package/radio/radio.d.ts +3 -28
- package/radio/radio.js +38 -213
- package/scroll-area/index.d.ts +2 -3
- package/scroll-area/index.js +2 -3
- package/scroll-area/scroll-area.d.ts +3 -36
- package/scroll-area/scroll-area.js +25 -535
- package/select/index.d.ts +3 -4
- package/select/index.js +2 -3
- package/select/select.d.ts +3 -39
- package/select/select.js +115 -425
- package/separator/index.d.ts +2 -3
- package/separator/index.js +2 -3
- package/separator/separator.d.ts +3 -10
- package/separator/separator.js +23 -85
- package/sidebar/index.d.ts +29 -29
- package/sidebar/index.js +27 -32
- package/sidebar/sidebar-content.d.ts +3 -12
- package/sidebar/sidebar-content.js +7 -29
- package/sidebar/sidebar-footer.d.ts +3 -10
- package/sidebar/sidebar-footer.js +7 -20
- package/sidebar/sidebar-group-label.d.ts +3 -15
- package/sidebar/sidebar-group-label.js +16 -41
- package/sidebar/sidebar-group.d.ts +3 -13
- package/sidebar/sidebar-group.js +7 -24
- package/sidebar/sidebar-header.d.ts +3 -10
- package/sidebar/sidebar-header.js +7 -16
- package/sidebar/sidebar-inset.d.ts +3 -13
- package/sidebar/sidebar-inset.js +7 -28
- package/sidebar/sidebar-menu-button.d.ts +3 -26
- package/sidebar/sidebar-menu-button.js +59 -217
- package/sidebar/sidebar-menu-item.d.ts +3 -10
- package/sidebar/sidebar-menu-item.js +7 -19
- package/sidebar/sidebar-menu.d.ts +3 -12
- package/sidebar/sidebar-menu.js +7 -25
- package/sidebar/sidebar-provider.d.ts +3 -34
- package/sidebar/sidebar-provider.js +22 -232
- package/sidebar/sidebar-separator.d.ts +3 -10
- package/sidebar/sidebar-separator.js +9 -19
- package/sidebar/sidebar-trigger.d.ts +3 -14
- package/sidebar/sidebar-trigger.js +10 -46
- package/sidebar/sidebar.d.ts +3 -19
- package/sidebar/sidebar.js +65 -262
- package/slider/index.d.ts +3 -3
- package/slider/index.js +3 -3
- package/slider/slider.d.ts +3 -45
- package/slider/slider.js +97 -382
- package/spinner/index.d.ts +2 -3
- package/spinner/index.js +2 -3
- package/spinner/spinner.d.ts +3 -11
- package/spinner/spinner.js +20 -163
- package/split-button/index.d.ts +3 -1
- package/split-button/index.js +3 -1
- package/split-button/split-button.d.ts +3 -33
- package/split-button/split-button.js +306 -394
- package/stepper/index.d.ts +3 -3
- package/stepper/index.js +3 -3
- package/stepper/stepper.d.ts +3 -41
- package/stepper/stepper.js +57 -381
- package/switch/index.d.ts +3 -3
- package/switch/index.js +3 -3
- package/switch/switch.d.ts +3 -30
- package/switch/switch.js +63 -228
- package/tabs/index.d.ts +12 -12
- package/tabs/index.js +11 -11
- package/tabs/tab.d.ts +3 -14
- package/tabs/tab.js +32 -131
- package/tabs/tabs-indicator.d.ts +3 -9
- package/tabs/tabs-indicator.js +17 -22
- package/tabs/tabs-list.d.ts +3 -15
- package/tabs/tabs-list.js +14 -113
- package/tabs/tabs-panel.d.ts +3 -16
- package/tabs/tabs-panel.js +32 -114
- package/tabs/tabs.d.ts +3 -22
- package/tabs/tabs.js +8 -170
- package/textarea/index.d.ts +4 -4
- package/textarea/index.js +3 -3
- package/textarea/textarea.d.ts +3 -36
- package/textarea/textarea.js +63 -220
- package/toggle/index.d.ts +6 -6
- package/toggle/index.js +5 -5
- package/toggle/toggle-group.d.ts +3 -27
- package/toggle/toggle-group.js +9 -224
- package/toggle/toggle.d.ts +3 -26
- package/toggle/toggle.js +93 -178
- package/tokens/properties.css +361 -0
- package/tokens/prose.css +250 -0
- package/tokens/prose.d.ts +2 -0
- package/tokens/prose.js +4 -0
- package/tokens/tokens-raw.d.ts +2 -0
- package/tokens/tokens-raw.js +2 -0
- package/tokens/tokens.css +409 -0
- package/tokens/tokens.d.ts +2 -0
- package/tokens/tokens.js +5 -0
- package/toolbar/index.d.ts +2 -3
- package/toolbar/index.js +2 -3
- package/toolbar/toolbar.d.ts +3 -11
- package/toolbar/toolbar.js +25 -116
- package/tooltip/index.d.ts +9 -9
- package/tooltip/index.js +7 -7
- package/tooltip/tooltip-popup.d.ts +3 -14
- package/tooltip/tooltip-popup.js +31 -185
- package/tooltip/tooltip-trigger.d.ts +3 -14
- package/tooltip/tooltip-trigger.js +5 -148
- package/tooltip/tooltip.d.ts +3 -35
- package/tooltip/tooltip.js +8 -253
- package/trunc/index.d.ts +2 -3
- package/trunc/index.js +2 -3
- package/trunc/trunc.d.ts +3 -17
- package/trunc/trunc.js +10 -108
- package/_deprecated/center/center.d.ts +0 -14
- package/_deprecated/center/center.js +0 -37
- package/_deprecated/center/index.d.ts +0 -3
- package/_deprecated/center/index.js +0 -3
- package/_deprecated/center/register.js +0 -4
- package/_deprecated/hstack/hstack.d.ts +0 -25
- package/_deprecated/hstack/hstack.js +0 -187
- package/_deprecated/hstack/index.d.ts +0 -4
- package/_deprecated/hstack/index.js +0 -3
- package/_deprecated/hstack/register.d.ts +0 -1
- package/_deprecated/hstack/register.js +0 -4
- package/_deprecated/page-inset/index.d.ts +0 -3
- package/_deprecated/page-inset/index.js +0 -3
- package/_deprecated/page-inset/page-inset.d.ts +0 -28
- package/_deprecated/page-inset/page-inset.js +0 -151
- package/_deprecated/page-inset/register.d.ts +0 -1
- package/_deprecated/page-inset/register.js +0 -4
- package/_deprecated/vstack/index.d.ts +0 -3
- package/_deprecated/vstack/index.js +0 -3
- package/_deprecated/vstack/register.d.ts +0 -1
- package/_deprecated/vstack/register.js +0 -4
- package/_deprecated/vstack/vstack.d.ts +0 -17
- package/_deprecated/vstack/vstack.js +0 -125
- package/accordion/accordion-context.d.ts +0 -15
- package/accordion/accordion-context.js +0 -3
- package/alert-dialog/alert-dialog-context.d.ts +0 -13
- package/alert-dialog/alert-dialog-context.js +0 -3
- package/checkbox/checkbox-group-context.d.ts +0 -11
- package/checkbox/checkbox-group-context.js +0 -3
- package/command/command-context.d.ts +0 -30
- package/command/command-context.js +0 -3
- package/command/command-score.d.ts +0 -6
- package/command/command-score.js +0 -31
- package/dialog/dialog-context.d.ts +0 -13
- package/dialog/dialog-context.js +0 -3
- package/global.d.ts +0 -179
- package/menubar/menubar-context.d.ts +0 -9
- package/menubar/menubar-context.js +0 -2
- package/popover/popover-context.d.ts +0 -17
- package/popover/popover-context.js +0 -3
- package/preview-card/preview-card-context.d.ts +0 -16
- package/preview-card/preview-card-context.js +0 -3
- package/radio/radio-group-context.d.ts +0 -11
- package/radio/radio-group-context.js +0 -2
- package/sidebar/sidebar-context.d.ts +0 -15
- package/sidebar/sidebar-context.js +0 -3
- package/split-button/register.d.ts +0 -1
- package/split-button/register.js +0 -4
- package/tabs/tabs-context.d.ts +0 -8
- package/tabs/tabs-context.js +0 -2
- package/toggle/toggle-group-context.d.ts +0 -9
- package/toggle/toggle-group-context.js +0 -2
- package/tooltip/tooltip-context.d.ts +0 -17
- package/tooltip/tooltip-context.js +0 -3
- /package/{_deprecated/center/register.d.ts → _install.d.ts} +0 -0
|
@@ -1,236 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
5
|
-
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
6
|
-
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
7
|
-
var _, done = false;
|
|
8
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
9
|
-
var context = {};
|
|
10
|
-
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
11
|
-
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
12
|
-
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
13
|
-
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
14
|
-
if (kind === "accessor") {
|
|
15
|
-
if (result === void 0) continue;
|
|
16
|
-
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
17
|
-
if (_ = accept(result.get)) descriptor.get = _;
|
|
18
|
-
if (_ = accept(result.set)) descriptor.set = _;
|
|
19
|
-
if (_ = accept(result.init)) initializers.unshift(_);
|
|
20
|
-
}
|
|
21
|
-
else if (_ = accept(result)) {
|
|
22
|
-
if (kind === "field") initializers.unshift(_);
|
|
23
|
-
else descriptor[key] = _;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
27
|
-
done = true;
|
|
28
|
-
};
|
|
29
|
-
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
30
|
-
var useValue = arguments.length > 2;
|
|
31
|
-
for (var i = 0; i < initializers.length; i++) {
|
|
32
|
-
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
33
|
-
}
|
|
34
|
-
return useValue ? value : void 0;
|
|
35
|
-
};
|
|
36
|
-
var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
|
|
37
|
-
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
|
|
38
|
-
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
|
|
39
|
-
};
|
|
40
|
-
import { css, html, LitElement } from "lit";
|
|
41
|
-
import { property, state } from "lit/decorators.js";
|
|
42
|
-
import { provide } from "@lit/context";
|
|
43
|
-
import { base } from "@deepfuture/dui-core/base";
|
|
44
|
-
import { customEvent } from "@deepfuture/dui-core/event";
|
|
45
|
-
import { sidebarContext } from "./sidebar-context.js";
|
|
46
|
-
export const openChangeEvent = customEvent("open-change", { bubbles: true, composed: true });
|
|
1
|
+
import { css } from "lit";
|
|
2
|
+
import { DuiSidebarProviderPrimitive } from "@deepfuture/dui-primitives/sidebar";
|
|
3
|
+
import "../_install.js";
|
|
47
4
|
const styles = css `
|
|
48
5
|
:host {
|
|
49
|
-
|
|
50
|
-
width:
|
|
51
|
-
|
|
6
|
+
--sidebar-width: var(--space-64);
|
|
7
|
+
--sidebar-width-mobile: var(--space-72);
|
|
8
|
+
--sidebar-width-icon: var(--space-12);
|
|
9
|
+
--sidebar-group-padding-y: var(--space-4);
|
|
10
|
+
--sidebar-group-label-inset: var(--space-6);
|
|
11
|
+
--sidebar-button-inset: var(--space-4);
|
|
12
|
+
--sidebar-header-content-gap: var(--space-4);
|
|
13
|
+
--sidebar-bg: var(--surface-1);
|
|
14
|
+
--sidebar-fg: var(--text-1);
|
|
15
|
+
--sidebar-separator: var(--border);
|
|
16
|
+
--sidebar-border: var(--border);
|
|
17
|
+
--sidebar-button-bg: oklch(0 0 0 / 0);
|
|
18
|
+
--sidebar-button-fg: var(--text-1);
|
|
19
|
+
--sidebar-muted-fg: var(--text-2);
|
|
20
|
+
--sidebar-ring: var(--accent);
|
|
52
21
|
}
|
|
53
22
|
`;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
* sidebar sub-components. Wraps the entire layout (sidebar + main content).
|
|
59
|
-
*
|
|
60
|
-
* @slot - Default slot for sidebar and content areas.
|
|
61
|
-
* @fires open-change - Fired when the sidebar opens or closes. Detail: { open: boolean }
|
|
62
|
-
*/
|
|
63
|
-
let DuiSidebarProvider = (() => {
|
|
64
|
-
let _classSuper = LitElement;
|
|
65
|
-
let _open_decorators;
|
|
66
|
-
let _open_initializers = [];
|
|
67
|
-
let _open_extraInitializers = [];
|
|
68
|
-
let _defaultOpen_decorators;
|
|
69
|
-
let _defaultOpen_initializers = [];
|
|
70
|
-
let _defaultOpen_extraInitializers = [];
|
|
71
|
-
let _side_decorators;
|
|
72
|
-
let _side_initializers = [];
|
|
73
|
-
let _side_extraInitializers = [];
|
|
74
|
-
let _variant_decorators;
|
|
75
|
-
let _variant_initializers = [];
|
|
76
|
-
let _variant_extraInitializers = [];
|
|
77
|
-
let _collapsible_decorators;
|
|
78
|
-
let _collapsible_initializers = [];
|
|
79
|
-
let _collapsible_extraInitializers = [];
|
|
80
|
-
let _private_internalOpen_decorators;
|
|
81
|
-
let _private_internalOpen_initializers = [];
|
|
82
|
-
let _private_internalOpen_extraInitializers = [];
|
|
83
|
-
let _private_internalOpen_descriptor;
|
|
84
|
-
let _private_openMobile_decorators;
|
|
85
|
-
let _private_openMobile_initializers = [];
|
|
86
|
-
let _private_openMobile_extraInitializers = [];
|
|
87
|
-
let _private_openMobile_descriptor;
|
|
88
|
-
let _private_isMobile_decorators;
|
|
89
|
-
let _private_isMobile_initializers = [];
|
|
90
|
-
let _private_isMobile_extraInitializers = [];
|
|
91
|
-
let _private_isMobile_descriptor;
|
|
92
|
-
let __ctx_decorators;
|
|
93
|
-
let __ctx_initializers = [];
|
|
94
|
-
let __ctx_extraInitializers = [];
|
|
95
|
-
return class DuiSidebarProvider extends _classSuper {
|
|
96
|
-
static {
|
|
97
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
98
|
-
_open_decorators = [property({ type: Boolean })];
|
|
99
|
-
_defaultOpen_decorators = [property({ type: Boolean, attribute: "default-open" })];
|
|
100
|
-
_side_decorators = [property({ reflect: true })];
|
|
101
|
-
_variant_decorators = [property({ reflect: true })];
|
|
102
|
-
_collapsible_decorators = [property({ reflect: true })];
|
|
103
|
-
_private_internalOpen_decorators = [state()];
|
|
104
|
-
_private_openMobile_decorators = [state()];
|
|
105
|
-
_private_isMobile_decorators = [state()];
|
|
106
|
-
__ctx_decorators = [provide({ context: sidebarContext }), state()];
|
|
107
|
-
__esDecorate(this, null, _open_decorators, { kind: "accessor", name: "open", static: false, private: false, access: { has: obj => "open" in obj, get: obj => obj.open, set: (obj, value) => { obj.open = value; } }, metadata: _metadata }, _open_initializers, _open_extraInitializers);
|
|
108
|
-
__esDecorate(this, null, _defaultOpen_decorators, { kind: "accessor", name: "defaultOpen", static: false, private: false, access: { has: obj => "defaultOpen" in obj, get: obj => obj.defaultOpen, set: (obj, value) => { obj.defaultOpen = value; } }, metadata: _metadata }, _defaultOpen_initializers, _defaultOpen_extraInitializers);
|
|
109
|
-
__esDecorate(this, null, _side_decorators, { kind: "accessor", name: "side", static: false, private: false, access: { has: obj => "side" in obj, get: obj => obj.side, set: (obj, value) => { obj.side = value; } }, metadata: _metadata }, _side_initializers, _side_extraInitializers);
|
|
110
|
-
__esDecorate(this, null, _variant_decorators, { kind: "accessor", name: "variant", static: false, private: false, access: { has: obj => "variant" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);
|
|
111
|
-
__esDecorate(this, null, _collapsible_decorators, { kind: "accessor", name: "collapsible", static: false, private: false, access: { has: obj => "collapsible" in obj, get: obj => obj.collapsible, set: (obj, value) => { obj.collapsible = value; } }, metadata: _metadata }, _collapsible_initializers, _collapsible_extraInitializers);
|
|
112
|
-
__esDecorate(this, _private_internalOpen_descriptor = { get: __setFunctionName(function () { return this.#internalOpen_accessor_storage; }, "#internalOpen", "get"), set: __setFunctionName(function (value) { this.#internalOpen_accessor_storage = value; }, "#internalOpen", "set") }, _private_internalOpen_decorators, { kind: "accessor", name: "#internalOpen", static: false, private: true, access: { has: obj => #internalOpen in obj, get: obj => obj.#internalOpen, set: (obj, value) => { obj.#internalOpen = value; } }, metadata: _metadata }, _private_internalOpen_initializers, _private_internalOpen_extraInitializers);
|
|
113
|
-
__esDecorate(this, _private_openMobile_descriptor = { get: __setFunctionName(function () { return this.#openMobile_accessor_storage; }, "#openMobile", "get"), set: __setFunctionName(function (value) { this.#openMobile_accessor_storage = value; }, "#openMobile", "set") }, _private_openMobile_decorators, { kind: "accessor", name: "#openMobile", static: false, private: true, access: { has: obj => #openMobile in obj, get: obj => obj.#openMobile, set: (obj, value) => { obj.#openMobile = value; } }, metadata: _metadata }, _private_openMobile_initializers, _private_openMobile_extraInitializers);
|
|
114
|
-
__esDecorate(this, _private_isMobile_descriptor = { get: __setFunctionName(function () { return this.#isMobile_accessor_storage; }, "#isMobile", "get"), set: __setFunctionName(function (value) { this.#isMobile_accessor_storage = value; }, "#isMobile", "set") }, _private_isMobile_decorators, { kind: "accessor", name: "#isMobile", static: false, private: true, access: { has: obj => #isMobile in obj, get: obj => obj.#isMobile, set: (obj, value) => { obj.#isMobile = value; } }, metadata: _metadata }, _private_isMobile_initializers, _private_isMobile_extraInitializers);
|
|
115
|
-
__esDecorate(this, null, __ctx_decorators, { kind: "accessor", name: "_ctx", static: false, private: false, access: { has: obj => "_ctx" in obj, get: obj => obj._ctx, set: (obj, value) => { obj._ctx = value; } }, metadata: _metadata }, __ctx_initializers, __ctx_extraInitializers);
|
|
116
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
117
|
-
}
|
|
118
|
-
static tagName = "dui-sidebar-provider";
|
|
119
|
-
static styles = [base, styles];
|
|
120
|
-
#open_accessor_storage = __runInitializers(this, _open_initializers, undefined);
|
|
121
|
-
/** Controls the sidebar open state (controlled mode). */
|
|
122
|
-
get open() { return this.#open_accessor_storage; }
|
|
123
|
-
set open(value) { this.#open_accessor_storage = value; }
|
|
124
|
-
#defaultOpen_accessor_storage = (__runInitializers(this, _open_extraInitializers), __runInitializers(this, _defaultOpen_initializers, true));
|
|
125
|
-
/** Initial open state for uncontrolled mode. Defaults to true. */
|
|
126
|
-
get defaultOpen() { return this.#defaultOpen_accessor_storage; }
|
|
127
|
-
set defaultOpen(value) { this.#defaultOpen_accessor_storage = value; }
|
|
128
|
-
#side_accessor_storage = (__runInitializers(this, _defaultOpen_extraInitializers), __runInitializers(this, _side_initializers, "left"));
|
|
129
|
-
/** Which side the sidebar appears on. */
|
|
130
|
-
get side() { return this.#side_accessor_storage; }
|
|
131
|
-
set side(value) { this.#side_accessor_storage = value; }
|
|
132
|
-
#variant_accessor_storage = (__runInitializers(this, _side_extraInitializers), __runInitializers(this, _variant_initializers, ""));
|
|
133
|
-
/** Visual variant of the sidebar. */
|
|
134
|
-
get variant() { return this.#variant_accessor_storage; }
|
|
135
|
-
set variant(value) { this.#variant_accessor_storage = value; }
|
|
136
|
-
#collapsible_accessor_storage = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _collapsible_initializers, "offcanvas"));
|
|
137
|
-
/** How the sidebar collapses. */
|
|
138
|
-
get collapsible() { return this.#collapsible_accessor_storage; }
|
|
139
|
-
set collapsible(value) { this.#collapsible_accessor_storage = value; }
|
|
140
|
-
#internalOpen_accessor_storage = (__runInitializers(this, _collapsible_extraInitializers), __runInitializers(this, _private_internalOpen_initializers, true));
|
|
141
|
-
get #internalOpen() { return _private_internalOpen_descriptor.get.call(this); }
|
|
142
|
-
set #internalOpen(value) { return _private_internalOpen_descriptor.set.call(this, value); }
|
|
143
|
-
#openMobile_accessor_storage = (__runInitializers(this, _private_internalOpen_extraInitializers), __runInitializers(this, _private_openMobile_initializers, false));
|
|
144
|
-
get #openMobile() { return _private_openMobile_descriptor.get.call(this); }
|
|
145
|
-
set #openMobile(value) { return _private_openMobile_descriptor.set.call(this, value); }
|
|
146
|
-
#isMobile_accessor_storage = (__runInitializers(this, _private_openMobile_extraInitializers), __runInitializers(this, _private_isMobile_initializers, false));
|
|
147
|
-
get #isMobile() { return _private_isMobile_descriptor.get.call(this); }
|
|
148
|
-
set #isMobile(value) { return _private_isMobile_descriptor.set.call(this, value); }
|
|
149
|
-
#mediaQuery = __runInitializers(this, _private_isMobile_extraInitializers);
|
|
150
|
-
#boundOnMediaChange;
|
|
151
|
-
#boundOnKeyDown;
|
|
152
|
-
get #isOpen() {
|
|
153
|
-
return this.open ?? this.#internalOpen;
|
|
154
|
-
}
|
|
155
|
-
#setOpen = (value) => {
|
|
156
|
-
if (this.#isMobile) {
|
|
157
|
-
this.#openMobile = value;
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
if (this.open === undefined) {
|
|
161
|
-
this.#internalOpen = value;
|
|
162
|
-
}
|
|
163
|
-
this.dispatchEvent(openChangeEvent({ open: value }));
|
|
164
|
-
}
|
|
165
|
-
};
|
|
166
|
-
#toggleSidebar = () => {
|
|
167
|
-
if (this.#isMobile) {
|
|
168
|
-
this.#openMobile = !this.#openMobile;
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
this.#setOpen(!this.#isOpen);
|
|
172
|
-
}
|
|
173
|
-
};
|
|
174
|
-
#onMediaChange = (e) => {
|
|
175
|
-
this.#isMobile = !e.matches;
|
|
176
|
-
if (!this.#isMobile) {
|
|
177
|
-
this.#openMobile = false;
|
|
178
|
-
}
|
|
179
|
-
};
|
|
180
|
-
#onKeyDown = (e) => {
|
|
181
|
-
if (e.key === "b" && (e.metaKey || e.ctrlKey)) {
|
|
182
|
-
e.preventDefault();
|
|
183
|
-
this.#toggleSidebar();
|
|
184
|
-
}
|
|
185
|
-
};
|
|
186
|
-
#_ctx_accessor_storage = __runInitializers(this, __ctx_initializers, this.#buildContext());
|
|
187
|
-
get _ctx() { return this.#_ctx_accessor_storage; }
|
|
188
|
-
set _ctx(value) { this.#_ctx_accessor_storage = value; }
|
|
189
|
-
#buildContext() {
|
|
190
|
-
return {
|
|
191
|
-
state: this.#isOpen ? "expanded" : "collapsed",
|
|
192
|
-
open: this.#isOpen,
|
|
193
|
-
openMobile: this.#openMobile,
|
|
194
|
-
isMobile: this.#isMobile,
|
|
195
|
-
side: this.side,
|
|
196
|
-
variant: this.variant,
|
|
197
|
-
collapsible: this.collapsible,
|
|
198
|
-
setOpen: this.#setOpen,
|
|
199
|
-
toggleSidebar: this.#toggleSidebar,
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
connectedCallback() {
|
|
203
|
-
super.connectedCallback();
|
|
204
|
-
if (this.open === undefined) {
|
|
205
|
-
this.#internalOpen = this.defaultOpen;
|
|
206
|
-
}
|
|
207
|
-
this.#mediaQuery = matchMedia("(min-width: 768px)");
|
|
208
|
-
this.#isMobile = !this.#mediaQuery.matches;
|
|
209
|
-
this.#boundOnMediaChange = this.#onMediaChange.bind(this);
|
|
210
|
-
this.#mediaQuery.addEventListener("change", this.#boundOnMediaChange);
|
|
211
|
-
this.#boundOnKeyDown = this.#onKeyDown.bind(this);
|
|
212
|
-
document.addEventListener("keydown", this.#boundOnKeyDown);
|
|
213
|
-
this._ctx = this.#buildContext();
|
|
214
|
-
}
|
|
215
|
-
disconnectedCallback() {
|
|
216
|
-
super.disconnectedCallback();
|
|
217
|
-
if (this.#mediaQuery && this.#boundOnMediaChange) {
|
|
218
|
-
this.#mediaQuery.removeEventListener("change", this.#boundOnMediaChange);
|
|
219
|
-
}
|
|
220
|
-
if (this.#boundOnKeyDown) {
|
|
221
|
-
document.removeEventListener("keydown", this.#boundOnKeyDown);
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
willUpdate() {
|
|
225
|
-
this._ctx = this.#buildContext();
|
|
226
|
-
}
|
|
227
|
-
render() {
|
|
228
|
-
return html `<slot></slot>`;
|
|
229
|
-
}
|
|
230
|
-
constructor() {
|
|
231
|
-
super(...arguments);
|
|
232
|
-
__runInitializers(this, __ctx_extraInitializers);
|
|
233
|
-
}
|
|
234
|
-
};
|
|
235
|
-
})();
|
|
236
|
-
export { DuiSidebarProvider };
|
|
23
|
+
export class DuiSidebarProvider extends DuiSidebarProviderPrimitive {
|
|
24
|
+
static styles = [...DuiSidebarProviderPrimitive.styles, styles];
|
|
25
|
+
}
|
|
26
|
+
customElements.define(DuiSidebarProvider.tagName, DuiSidebarProvider);
|
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
* `<dui-sidebar-separator>` — Visual divider within the sidebar.
|
|
5
|
-
*
|
|
6
|
-
* Renders a horizontal rule with `role="separator"`.
|
|
7
|
-
*/
|
|
8
|
-
export declare class DuiSidebarSeparator extends LitElement {
|
|
9
|
-
static tagName: "dui-sidebar-separator";
|
|
1
|
+
import { DuiSidebarSeparatorPrimitive } from "@deepfuture/dui-primitives/sidebar";
|
|
2
|
+
import "../_install.js";
|
|
3
|
+
export declare class DuiSidebarSeparator extends DuiSidebarSeparatorPrimitive {
|
|
10
4
|
static styles: import("lit").CSSResult[];
|
|
11
|
-
render(): TemplateResult;
|
|
12
5
|
}
|
|
@@ -1,24 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import { css } from "lit";
|
|
2
|
+
import { DuiSidebarSeparatorPrimitive } from "@deepfuture/dui-primitives/sidebar";
|
|
3
|
+
import "../_install.js";
|
|
4
4
|
const styles = css `
|
|
5
|
-
:host {
|
|
6
|
-
display: block;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
5
|
.Separator {
|
|
10
|
-
|
|
6
|
+
height: var(--border-width-thin);
|
|
7
|
+
margin: var(--space-2) var(--space-2);
|
|
8
|
+
background: var(--sidebar-separator);
|
|
11
9
|
}
|
|
12
10
|
`;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
*
|
|
16
|
-
* Renders a horizontal rule with `role="separator"`.
|
|
17
|
-
*/
|
|
18
|
-
export class DuiSidebarSeparator extends LitElement {
|
|
19
|
-
static tagName = "dui-sidebar-separator";
|
|
20
|
-
static styles = [base, styles];
|
|
21
|
-
render() {
|
|
22
|
-
return html `<div class="Separator" role="separator"></div>`;
|
|
23
|
-
}
|
|
11
|
+
export class DuiSidebarSeparator extends DuiSidebarSeparatorPrimitive {
|
|
12
|
+
static styles = [...DuiSidebarSeparatorPrimitive.styles, styles];
|
|
24
13
|
}
|
|
14
|
+
customElements.define(DuiSidebarSeparator.tagName, DuiSidebarSeparator);
|
|
@@ -1,16 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
* `<dui-sidebar-trigger>` — Toggle button for the sidebar.
|
|
5
|
-
*
|
|
6
|
-
* Consumes sidebar context and calls `toggleSidebar()` on click.
|
|
7
|
-
* Renders a ghost button with a default panel icon.
|
|
8
|
-
*
|
|
9
|
-
* @slot - Override the default icon.
|
|
10
|
-
*/
|
|
11
|
-
export declare class DuiSidebarTrigger extends LitElement {
|
|
12
|
-
#private;
|
|
13
|
-
static tagName: "dui-sidebar-trigger";
|
|
1
|
+
import { DuiSidebarTriggerPrimitive } from "@deepfuture/dui-primitives/sidebar";
|
|
2
|
+
import "../_install.js";
|
|
3
|
+
export declare class DuiSidebarTrigger extends DuiSidebarTriggerPrimitive {
|
|
14
4
|
static styles: import("lit").CSSResult[];
|
|
15
|
-
render(): TemplateResult;
|
|
16
5
|
}
|
|
@@ -1,50 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import { base } from "@deepfuture/dui-core/base";
|
|
5
|
-
import { sidebarContext } from "./sidebar-context.js";
|
|
1
|
+
import { css } from "lit";
|
|
2
|
+
import { DuiSidebarTriggerPrimitive } from "@deepfuture/dui-primitives/sidebar";
|
|
3
|
+
import "../_install.js";
|
|
6
4
|
const styles = css `
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
dui-button {
|
|
6
|
+
--button-width: var(--button-height);
|
|
7
|
+
--button-padding-x: 0;
|
|
8
|
+
--button-gap: 0;
|
|
9
9
|
}
|
|
10
10
|
`;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
viewBox="0 0 24 24"
|
|
14
|
-
fill="none"
|
|
15
|
-
stroke="currentColor"
|
|
16
|
-
stroke-width="2"
|
|
17
|
-
stroke-linecap="round"
|
|
18
|
-
stroke-linejoin="round"
|
|
19
|
-
>
|
|
20
|
-
<rect width="18" height="18" x="3" y="3" rx="2" />
|
|
21
|
-
<path d="M9 3v18" />
|
|
22
|
-
</svg>`;
|
|
23
|
-
/**
|
|
24
|
-
* `<dui-sidebar-trigger>` — Toggle button for the sidebar.
|
|
25
|
-
*
|
|
26
|
-
* Consumes sidebar context and calls `toggleSidebar()` on click.
|
|
27
|
-
* Renders a ghost button with a default panel icon.
|
|
28
|
-
*
|
|
29
|
-
* @slot - Override the default icon.
|
|
30
|
-
*/
|
|
31
|
-
export class DuiSidebarTrigger extends LitElement {
|
|
32
|
-
static tagName = "dui-sidebar-trigger";
|
|
33
|
-
static styles = [base, styles];
|
|
34
|
-
#ctx = new ContextConsumer(this, {
|
|
35
|
-
context: sidebarContext,
|
|
36
|
-
subscribe: true,
|
|
37
|
-
});
|
|
38
|
-
#onClick = () => {
|
|
39
|
-
this.#ctx.value?.toggleSidebar();
|
|
40
|
-
};
|
|
41
|
-
render() {
|
|
42
|
-
return html `
|
|
43
|
-
<dui-button appearance="ghost" size="sm" @click=${this.#onClick}>
|
|
44
|
-
<slot>
|
|
45
|
-
<dui-icon>${panelLeftSvg}</dui-icon>
|
|
46
|
-
</slot>
|
|
47
|
-
</dui-button>
|
|
48
|
-
`;
|
|
49
|
-
}
|
|
11
|
+
export class DuiSidebarTrigger extends DuiSidebarTriggerPrimitive {
|
|
12
|
+
static styles = [...DuiSidebarTriggerPrimitive.styles, styles];
|
|
50
13
|
}
|
|
14
|
+
customElements.define(DuiSidebarTrigger.tagName, DuiSidebarTrigger);
|
package/sidebar/sidebar.d.ts
CHANGED
|
@@ -1,21 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
* `<dui-sidebar>` — Main sidebar container.
|
|
5
|
-
*
|
|
6
|
-
* Consumes sidebar context and renders the appropriate desktop or mobile layout.
|
|
7
|
-
* Desktop uses a width-transitioning wrapper; mobile uses a backdrop + sliding panel.
|
|
8
|
-
*
|
|
9
|
-
* @slot - Default slot for sidebar content (header, content, footer, etc.).
|
|
10
|
-
* @csspart desktop-outer - The outer desktop wrapper that transitions width.
|
|
11
|
-
* @csspart desktop-inner - The inner desktop container with content.
|
|
12
|
-
* @csspart backdrop - The mobile backdrop overlay.
|
|
13
|
-
* @csspart mobile-panel - The sliding mobile panel.
|
|
14
|
-
*/
|
|
15
|
-
export declare class DuiSidebar extends LitElement {
|
|
16
|
-
#private;
|
|
17
|
-
static tagName: "dui-sidebar";
|
|
1
|
+
import { DuiSidebarPrimitive } from "@deepfuture/dui-primitives/sidebar";
|
|
2
|
+
import "../_install.js";
|
|
3
|
+
export declare class DuiSidebar extends DuiSidebarPrimitive {
|
|
18
4
|
static styles: import("lit").CSSResult[];
|
|
19
|
-
willUpdate(): void;
|
|
20
|
-
render(): TemplateResult;
|
|
21
5
|
}
|