@deepfuture/dui-components 0.0.21 → 1.0.0

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 (333) hide show
  1. package/README.md +56 -65
  2. package/_install.js +11 -0
  3. package/accordion/accordion-item.d.ts +3 -20
  4. package/accordion/accordion-item.js +93 -292
  5. package/accordion/accordion.d.ts +3 -18
  6. package/accordion/accordion.js +9 -247
  7. package/accordion/index.d.ts +6 -6
  8. package/accordion/index.js +5 -5
  9. package/alert-dialog/alert-dialog-close.d.ts +3 -14
  10. package/alert-dialog/alert-dialog-close.js +4 -34
  11. package/alert-dialog/alert-dialog-popup.d.ts +3 -32
  12. package/alert-dialog/alert-dialog-popup.js +68 -317
  13. package/alert-dialog/alert-dialog-trigger.d.ts +3 -14
  14. package/alert-dialog/alert-dialog-trigger.js +4 -51
  15. package/alert-dialog/alert-dialog.d.ts +3 -30
  16. package/alert-dialog/alert-dialog.js +8 -158
  17. package/alert-dialog/index.d.ts +11 -11
  18. package/alert-dialog/index.js +9 -9
  19. package/all.d.ts +159 -123
  20. package/all.js +134 -231
  21. package/avatar/avatar.d.ts +3 -39
  22. package/avatar/avatar.js +18 -238
  23. package/avatar/index.d.ts +4 -4
  24. package/avatar/index.js +3 -3
  25. package/badge/badge.d.ts +3 -10
  26. package/badge/badge.js +88 -22
  27. package/badge/index.d.ts +2 -3
  28. package/badge/index.js +2 -3
  29. package/breadcrumb/breadcrumb-ellipsis.d.ts +3 -12
  30. package/breadcrumb/breadcrumb-ellipsis.js +8 -34
  31. package/breadcrumb/breadcrumb-item.d.ts +3 -11
  32. package/breadcrumb/breadcrumb-item.js +7 -26
  33. package/breadcrumb/breadcrumb-link.d.ts +3 -12
  34. package/breadcrumb/breadcrumb-link.js +16 -26
  35. package/breadcrumb/breadcrumb-page.d.ts +3 -11
  36. package/breadcrumb/breadcrumb-page.js +8 -31
  37. package/breadcrumb/breadcrumb-separator.d.ts +3 -12
  38. package/breadcrumb/breadcrumb-separator.js +8 -31
  39. package/breadcrumb/breadcrumb.d.ts +3 -12
  40. package/breadcrumb/breadcrumb.js +10 -33
  41. package/breadcrumb/index.d.ts +12 -13
  42. package/breadcrumb/index.js +12 -13
  43. package/button/button.d.ts +3 -32
  44. package/button/button.js +221 -165
  45. package/button/index.d.ts +3 -3
  46. package/button/index.js +3 -3
  47. package/calendar/calendar.d.ts +3 -31
  48. package/calendar/calendar.js +71 -481
  49. package/calendar/index.d.ts +3 -3
  50. package/calendar/index.js +3 -3
  51. package/card/card.d.ts +3 -27
  52. package/card/card.js +80 -163
  53. package/card/index.d.ts +2 -3
  54. package/card/index.js +2 -3
  55. package/card-grid/card-grid.d.ts +3 -15
  56. package/card-grid/card-grid.js +8 -106
  57. package/card-grid/index.d.ts +2 -3
  58. package/card-grid/index.js +2 -3
  59. package/checkbox/checkbox-group.d.ts +3 -34
  60. package/checkbox/checkbox-group.js +11 -188
  61. package/checkbox/checkbox.d.ts +3 -47
  62. package/checkbox/checkbox.js +43 -341
  63. package/checkbox/index.d.ts +6 -6
  64. package/checkbox/index.js +5 -5
  65. package/collapsible/collapsible.d.ts +3 -20
  66. package/collapsible/collapsible.js +83 -277
  67. package/collapsible/index.d.ts +3 -3
  68. package/collapsible/index.js +3 -3
  69. package/combobox/combobox.d.ts +3 -47
  70. package/combobox/combobox.js +136 -538
  71. package/combobox/index.d.ts +4 -4
  72. package/combobox/index.js +3 -3
  73. package/command/command-empty.d.ts +3 -8
  74. package/command/command-empty.js +10 -88
  75. package/command/command-group.d.ts +3 -13
  76. package/command/command-group.js +15 -114
  77. package/command/command-input.d.ts +3 -11
  78. package/command/command-input.js +20 -136
  79. package/command/command-item.d.ts +3 -18
  80. package/command/command-item.js +24 -212
  81. package/command/command-list.d.ts +3 -7
  82. package/command/command-list.js +11 -79
  83. package/command/command-separator.d.ts +3 -5
  84. package/command/command-separator.js +10 -11
  85. package/command/command-shortcut.d.ts +3 -5
  86. package/command/command-shortcut.js +9 -12
  87. package/command/command.d.ts +3 -23
  88. package/command/command.js +10 -339
  89. package/command/index.d.ts +17 -19
  90. package/command/index.js +16 -18
  91. package/data-table/data-table.d.ts +3 -57
  92. package/data-table/data-table.js +86 -449
  93. package/data-table/index.d.ts +3 -4
  94. package/data-table/index.js +2 -3
  95. package/dialog/dialog-close.d.ts +3 -14
  96. package/dialog/dialog-close.js +4 -34
  97. package/dialog/dialog-popup.d.ts +3 -34
  98. package/dialog/dialog-popup.js +70 -336
  99. package/dialog/dialog-trigger.d.ts +3 -14
  100. package/dialog/dialog-trigger.js +4 -51
  101. package/dialog/dialog.d.ts +3 -30
  102. package/dialog/dialog.js +8 -158
  103. package/dialog/index.d.ts +11 -11
  104. package/dialog/index.js +9 -9
  105. package/dropzone/dropzone.d.ts +3 -72
  106. package/dropzone/dropzone.js +29 -407
  107. package/dropzone/index.d.ts +4 -4
  108. package/dropzone/index.js +3 -3
  109. package/field/field.d.ts +3 -30
  110. package/field/field.js +34 -353
  111. package/field/index.d.ts +1 -0
  112. package/field/index.js +1 -0
  113. package/fieldset/fieldset.d.ts +3 -18
  114. package/fieldset/fieldset.js +21 -110
  115. package/fieldset/index.d.ts +1 -0
  116. package/fieldset/index.js +1 -0
  117. package/icon/icon.d.ts +3 -15
  118. package/icon/icon.js +4 -33
  119. package/icon/index.d.ts +2 -3
  120. package/icon/index.js +2 -3
  121. package/input/index.d.ts +3 -3
  122. package/input/index.js +3 -3
  123. package/input/input.d.ts +3 -49
  124. package/input/input.js +57 -238
  125. package/menu/index.d.ts +4 -5
  126. package/menu/index.js +4 -5
  127. package/menu/menu-item.d.ts +3 -13
  128. package/menu/menu-item.js +41 -91
  129. package/menu/menu.d.ts +3 -15
  130. package/menu/menu.js +27 -277
  131. package/menubar/index.d.ts +3 -4
  132. package/menubar/index.js +2 -3
  133. package/menubar/menubar.d.ts +3 -19
  134. package/menubar/menubar.js +12 -183
  135. package/number-field/index.d.ts +3 -3
  136. package/number-field/index.js +3 -3
  137. package/number-field/number-field.d.ts +3 -55
  138. package/number-field/number-field.js +205 -698
  139. package/package.json +126 -113
  140. package/popover/index.d.ts +11 -11
  141. package/popover/index.js +9 -9
  142. package/popover/popover-close.d.ts +3 -12
  143. package/popover/popover-close.js +4 -32
  144. package/popover/popover-popup.d.ts +3 -18
  145. package/popover/popover-popup.js +28 -205
  146. package/popover/popover-trigger.d.ts +3 -13
  147. package/popover/popover-trigger.js +4 -73
  148. package/popover/popover.d.ts +3 -29
  149. package/popover/popover.js +8 -207
  150. package/portal/index.d.ts +3 -4
  151. package/portal/index.js +2 -3
  152. package/portal/portal.d.ts +3 -27
  153. package/portal/portal.js +8 -157
  154. package/preview-card/index.d.ts +9 -9
  155. package/preview-card/index.js +7 -7
  156. package/preview-card/preview-card-popup.d.ts +3 -14
  157. package/preview-card/preview-card-popup.js +29 -194
  158. package/preview-card/preview-card-trigger.d.ts +3 -12
  159. package/preview-card/preview-card-trigger.js +4 -74
  160. package/preview-card/preview-card.d.ts +3 -33
  161. package/preview-card/preview-card.js +8 -239
  162. package/progress/index.d.ts +2 -3
  163. package/progress/index.js +2 -3
  164. package/progress/progress.d.ts +3 -17
  165. package/progress/progress.js +28 -130
  166. package/radio/index.d.ts +6 -6
  167. package/radio/index.js +5 -5
  168. package/radio/radio-group.d.ts +3 -37
  169. package/radio/radio-group.js +8 -200
  170. package/radio/radio.d.ts +3 -28
  171. package/radio/radio.js +38 -213
  172. package/scroll-area/index.d.ts +2 -3
  173. package/scroll-area/index.js +2 -3
  174. package/scroll-area/scroll-area.d.ts +3 -36
  175. package/scroll-area/scroll-area.js +25 -535
  176. package/select/index.d.ts +3 -4
  177. package/select/index.js +2 -3
  178. package/select/select.d.ts +3 -39
  179. package/select/select.js +115 -425
  180. package/separator/index.d.ts +2 -3
  181. package/separator/index.js +2 -3
  182. package/separator/separator.d.ts +3 -10
  183. package/separator/separator.js +23 -85
  184. package/sidebar/index.d.ts +29 -29
  185. package/sidebar/index.js +27 -32
  186. package/sidebar/sidebar-content.d.ts +3 -12
  187. package/sidebar/sidebar-content.js +7 -29
  188. package/sidebar/sidebar-footer.d.ts +3 -10
  189. package/sidebar/sidebar-footer.js +7 -20
  190. package/sidebar/sidebar-group-label.d.ts +3 -15
  191. package/sidebar/sidebar-group-label.js +17 -41
  192. package/sidebar/sidebar-group.d.ts +3 -13
  193. package/sidebar/sidebar-group.js +7 -24
  194. package/sidebar/sidebar-header.d.ts +3 -10
  195. package/sidebar/sidebar-header.js +7 -16
  196. package/sidebar/sidebar-inset.d.ts +3 -13
  197. package/sidebar/sidebar-inset.js +7 -28
  198. package/sidebar/sidebar-menu-button.d.ts +3 -26
  199. package/sidebar/sidebar-menu-button.js +60 -217
  200. package/sidebar/sidebar-menu-item.d.ts +3 -10
  201. package/sidebar/sidebar-menu-item.js +7 -19
  202. package/sidebar/sidebar-menu.d.ts +3 -12
  203. package/sidebar/sidebar-menu.js +7 -25
  204. package/sidebar/sidebar-provider.d.ts +3 -34
  205. package/sidebar/sidebar-provider.js +22 -232
  206. package/sidebar/sidebar-separator.d.ts +3 -10
  207. package/sidebar/sidebar-separator.js +9 -19
  208. package/sidebar/sidebar-trigger.d.ts +3 -14
  209. package/sidebar/sidebar-trigger.js +10 -46
  210. package/sidebar/sidebar.d.ts +3 -19
  211. package/sidebar/sidebar.js +65 -262
  212. package/slider/index.d.ts +3 -3
  213. package/slider/index.js +3 -3
  214. package/slider/slider.d.ts +3 -45
  215. package/slider/slider.js +97 -382
  216. package/spinner/index.d.ts +2 -3
  217. package/spinner/index.js +2 -3
  218. package/spinner/spinner.d.ts +3 -11
  219. package/spinner/spinner.js +20 -163
  220. package/split-button/index.d.ts +3 -1
  221. package/split-button/index.js +3 -1
  222. package/split-button/split-button.d.ts +3 -33
  223. package/split-button/split-button.js +307 -394
  224. package/stepper/index.d.ts +3 -3
  225. package/stepper/index.js +3 -3
  226. package/stepper/stepper.d.ts +3 -41
  227. package/stepper/stepper.js +57 -381
  228. package/switch/index.d.ts +3 -3
  229. package/switch/index.js +3 -3
  230. package/switch/switch.d.ts +3 -30
  231. package/switch/switch.js +63 -228
  232. package/tabs/index.d.ts +12 -12
  233. package/tabs/index.js +11 -11
  234. package/tabs/tab.d.ts +3 -14
  235. package/tabs/tab.js +33 -131
  236. package/tabs/tabs-indicator.d.ts +3 -9
  237. package/tabs/tabs-indicator.js +17 -22
  238. package/tabs/tabs-list.d.ts +3 -15
  239. package/tabs/tabs-list.js +14 -113
  240. package/tabs/tabs-panel.d.ts +3 -16
  241. package/tabs/tabs-panel.js +32 -114
  242. package/tabs/tabs.d.ts +3 -22
  243. package/tabs/tabs.js +8 -170
  244. package/textarea/index.d.ts +4 -4
  245. package/textarea/index.js +3 -3
  246. package/textarea/textarea.d.ts +3 -36
  247. package/textarea/textarea.js +63 -220
  248. package/toggle/index.d.ts +6 -6
  249. package/toggle/index.js +5 -5
  250. package/toggle/toggle-group.d.ts +3 -27
  251. package/toggle/toggle-group.js +9 -224
  252. package/toggle/toggle.d.ts +3 -26
  253. package/toggle/toggle.js +94 -178
  254. package/tokens/properties.css +361 -0
  255. package/tokens/prose.css +250 -0
  256. package/tokens/prose.d.ts +2 -0
  257. package/tokens/prose.js +4 -0
  258. package/tokens/tokens-raw.d.ts +2 -0
  259. package/tokens/tokens-raw.js +2 -0
  260. package/tokens/tokens.css +409 -0
  261. package/tokens/tokens.d.ts +2 -0
  262. package/tokens/tokens.js +5 -0
  263. package/toolbar/index.d.ts +2 -3
  264. package/toolbar/index.js +2 -3
  265. package/toolbar/toolbar.d.ts +3 -11
  266. package/toolbar/toolbar.js +25 -116
  267. package/tooltip/index.d.ts +9 -9
  268. package/tooltip/index.js +7 -7
  269. package/tooltip/tooltip-popup.d.ts +3 -14
  270. package/tooltip/tooltip-popup.js +32 -185
  271. package/tooltip/tooltip-trigger.d.ts +3 -14
  272. package/tooltip/tooltip-trigger.js +5 -148
  273. package/tooltip/tooltip.d.ts +3 -35
  274. package/tooltip/tooltip.js +8 -253
  275. package/trunc/index.d.ts +2 -3
  276. package/trunc/index.js +2 -3
  277. package/trunc/trunc.d.ts +3 -17
  278. package/trunc/trunc.js +10 -108
  279. package/_deprecated/center/center.d.ts +0 -14
  280. package/_deprecated/center/center.js +0 -37
  281. package/_deprecated/center/index.d.ts +0 -3
  282. package/_deprecated/center/index.js +0 -3
  283. package/_deprecated/center/register.js +0 -4
  284. package/_deprecated/hstack/hstack.d.ts +0 -25
  285. package/_deprecated/hstack/hstack.js +0 -187
  286. package/_deprecated/hstack/index.d.ts +0 -4
  287. package/_deprecated/hstack/index.js +0 -3
  288. package/_deprecated/hstack/register.d.ts +0 -1
  289. package/_deprecated/hstack/register.js +0 -4
  290. package/_deprecated/page-inset/index.d.ts +0 -3
  291. package/_deprecated/page-inset/index.js +0 -3
  292. package/_deprecated/page-inset/page-inset.d.ts +0 -28
  293. package/_deprecated/page-inset/page-inset.js +0 -151
  294. package/_deprecated/page-inset/register.d.ts +0 -1
  295. package/_deprecated/page-inset/register.js +0 -4
  296. package/_deprecated/vstack/index.d.ts +0 -3
  297. package/_deprecated/vstack/index.js +0 -3
  298. package/_deprecated/vstack/register.d.ts +0 -1
  299. package/_deprecated/vstack/register.js +0 -4
  300. package/_deprecated/vstack/vstack.d.ts +0 -17
  301. package/_deprecated/vstack/vstack.js +0 -125
  302. package/accordion/accordion-context.d.ts +0 -15
  303. package/accordion/accordion-context.js +0 -3
  304. package/alert-dialog/alert-dialog-context.d.ts +0 -13
  305. package/alert-dialog/alert-dialog-context.js +0 -3
  306. package/checkbox/checkbox-group-context.d.ts +0 -11
  307. package/checkbox/checkbox-group-context.js +0 -3
  308. package/command/command-context.d.ts +0 -30
  309. package/command/command-context.js +0 -3
  310. package/command/command-score.d.ts +0 -6
  311. package/command/command-score.js +0 -31
  312. package/dialog/dialog-context.d.ts +0 -13
  313. package/dialog/dialog-context.js +0 -3
  314. package/global.d.ts +0 -179
  315. package/menubar/menubar-context.d.ts +0 -9
  316. package/menubar/menubar-context.js +0 -2
  317. package/popover/popover-context.d.ts +0 -17
  318. package/popover/popover-context.js +0 -3
  319. package/preview-card/preview-card-context.d.ts +0 -16
  320. package/preview-card/preview-card-context.js +0 -3
  321. package/radio/radio-group-context.d.ts +0 -11
  322. package/radio/radio-group-context.js +0 -2
  323. package/sidebar/sidebar-context.d.ts +0 -15
  324. package/sidebar/sidebar-context.js +0 -3
  325. package/split-button/register.d.ts +0 -1
  326. package/split-button/register.js +0 -4
  327. package/tabs/tabs-context.d.ts +0 -8
  328. package/tabs/tabs-context.js +0 -2
  329. package/toggle/toggle-group-context.d.ts +0 -9
  330. package/toggle/toggle-group-context.js +0 -2
  331. package/tooltip/tooltip-context.d.ts +0 -17
  332. package/tooltip/tooltip-context.js +0 -3
  333. /package/{_deprecated/center/register.d.ts → _install.d.ts} +0 -0
@@ -1,93 +1,31 @@
1
- var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
2
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
3
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
4
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
5
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
6
- var _, done = false;
7
- for (var i = decorators.length - 1; i >= 0; i--) {
8
- var context = {};
9
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
10
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
11
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
12
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
13
- if (kind === "accessor") {
14
- if (result === void 0) continue;
15
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
16
- if (_ = accept(result.get)) descriptor.get = _;
17
- if (_ = accept(result.set)) descriptor.set = _;
18
- if (_ = accept(result.init)) initializers.unshift(_);
19
- }
20
- else if (_ = accept(result)) {
21
- if (kind === "field") initializers.unshift(_);
22
- else descriptor[key] = _;
23
- }
24
- }
25
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
26
- done = true;
27
- };
28
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
29
- var useValue = arguments.length > 2;
30
- for (var i = 0; i < initializers.length; i++) {
31
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
32
- }
33
- return useValue ? value : void 0;
34
- };
35
- import { css, html, LitElement } from "lit";
36
- import { property } from "lit/decorators.js";
37
- import { base } from "@deepfuture/dui-core/base";
38
- /** Structural styles only — layout CSS. */
1
+ import { css } from "lit";
2
+ import { DuiSeparatorPrimitive } from "@deepfuture/dui-primitives/separator";
3
+ import "../_install.js";
39
4
  const styles = css `
40
5
  :host {
41
- display: block;
42
- }
43
-
44
- :host([orientation="vertical"]) {
45
- display: inline-block;
46
- align-self: stretch;
47
- height: 100%;
6
+ --separator-margin: 0;
48
7
  }
49
8
 
50
9
  [part="root"] {
51
10
  border: none;
52
- margin: 0;
53
- padding: 0;
11
+ }
12
+
13
+ :host([orientation="horizontal"]) [part="root"] {
14
+ height: 0;
15
+ border-top: var(--border-width-thin) solid var(--border);
16
+ margin-top: var(--separator-margin);
17
+ margin-bottom: var(--separator-margin);
18
+ }
19
+
20
+ :host([orientation="vertical"]) [part="root"] {
21
+ width: 0;
22
+ height: 100%;
23
+ border-left: var(--border-width-thin) solid var(--border);
24
+ margin-left: var(--separator-margin);
25
+ margin-right: var(--separator-margin);
54
26
  }
55
27
  `;
56
- /**
57
- * `<dui-separator>` A visual divider between content sections.
58
- *
59
- * @csspart root - The separator element.
60
- */
61
- let DuiSeparator = (() => {
62
- let _classSuper = LitElement;
63
- let _orientation_decorators;
64
- let _orientation_initializers = [];
65
- let _orientation_extraInitializers = [];
66
- return class DuiSeparator extends _classSuper {
67
- static {
68
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
69
- _orientation_decorators = [property({ reflect: true })];
70
- __esDecorate(this, null, _orientation_decorators, { kind: "accessor", name: "orientation", static: false, private: false, access: { has: obj => "orientation" in obj, get: obj => obj.orientation, set: (obj, value) => { obj.orientation = value; } }, metadata: _metadata }, _orientation_initializers, _orientation_extraInitializers);
71
- if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
72
- }
73
- static tagName = "dui-separator";
74
- static styles = [base, styles];
75
- #orientation_accessor_storage = __runInitializers(this, _orientation_initializers, "horizontal");
76
- get orientation() { return this.#orientation_accessor_storage; }
77
- set orientation(value) { this.#orientation_accessor_storage = value; }
78
- render() {
79
- return html `
80
- <div
81
- part="root"
82
- role="separator"
83
- aria-orientation="${this.orientation}"
84
- ></div>
85
- `;
86
- }
87
- constructor() {
88
- super(...arguments);
89
- __runInitializers(this, _orientation_extraInitializers);
90
- }
91
- };
92
- })();
93
- export { DuiSeparator };
28
+ export class DuiSeparator extends DuiSeparatorPrimitive {
29
+ static styles = [...DuiSeparatorPrimitive.styles, styles];
30
+ }
31
+ customElements.define(DuiSeparator.tagName, DuiSeparator);
@@ -1,29 +1,29 @@
1
- import { DuiSidebarProvider, openChangeEvent } from "./sidebar-provider.js";
2
- export { DuiSidebarProvider, openChangeEvent };
3
- export type { SidebarOpenChangeDetail } from "./sidebar-provider.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 };
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)[];
1
+ import "./sidebar.js";
2
+ import "./sidebar-content.js";
3
+ import "./sidebar-footer.js";
4
+ import "./sidebar-group.js";
5
+ import "./sidebar-group-label.js";
6
+ import "./sidebar-header.js";
7
+ import "./sidebar-inset.js";
8
+ import "./sidebar-menu.js";
9
+ import "./sidebar-menu-button.js";
10
+ import "./sidebar-menu-item.js";
11
+ import "./sidebar-provider.js";
12
+ import "./sidebar-separator.js";
13
+ import "./sidebar-trigger.js";
14
+ export { DuiSidebar } from "./sidebar.js";
15
+ export { DuiSidebarContent } from "./sidebar-content.js";
16
+ export { DuiSidebarFooter } from "./sidebar-footer.js";
17
+ export { DuiSidebarGroup } from "./sidebar-group.js";
18
+ export { DuiSidebarGroupLabel } from "./sidebar-group-label.js";
19
+ export { DuiSidebarHeader } from "./sidebar-header.js";
20
+ export { DuiSidebarInset } from "./sidebar-inset.js";
21
+ export { DuiSidebarMenu } from "./sidebar-menu.js";
22
+ export { DuiSidebarMenuButton } from "./sidebar-menu-button.js";
23
+ export { DuiSidebarMenuItem } from "./sidebar-menu-item.js";
24
+ export { DuiSidebarProvider } from "./sidebar-provider.js";
25
+ export { DuiSidebarSeparator } from "./sidebar-separator.js";
26
+ export { DuiSidebarTrigger } from "./sidebar-trigger.js";
27
+ export type { SidebarOpenChangeDetail } from "@deepfuture/dui-primitives/sidebar";
28
+ export type { SidebarContext } from "@deepfuture/dui-primitives/sidebar";
29
+ export { openChangeEvent } from "@deepfuture/dui-primitives/sidebar";
package/sidebar/index.js CHANGED
@@ -1,32 +1,27 @@
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
- ];
1
+ import "./sidebar.js";
2
+ import "./sidebar-content.js";
3
+ import "./sidebar-footer.js";
4
+ import "./sidebar-group.js";
5
+ import "./sidebar-group-label.js";
6
+ import "./sidebar-header.js";
7
+ import "./sidebar-inset.js";
8
+ import "./sidebar-menu.js";
9
+ import "./sidebar-menu-button.js";
10
+ import "./sidebar-menu-item.js";
11
+ import "./sidebar-provider.js";
12
+ import "./sidebar-separator.js";
13
+ import "./sidebar-trigger.js";
14
+ export { DuiSidebar } from "./sidebar.js";
15
+ export { DuiSidebarContent } from "./sidebar-content.js";
16
+ export { DuiSidebarFooter } from "./sidebar-footer.js";
17
+ export { DuiSidebarGroup } from "./sidebar-group.js";
18
+ export { DuiSidebarGroupLabel } from "./sidebar-group-label.js";
19
+ export { DuiSidebarHeader } from "./sidebar-header.js";
20
+ export { DuiSidebarInset } from "./sidebar-inset.js";
21
+ export { DuiSidebarMenu } from "./sidebar-menu.js";
22
+ export { DuiSidebarMenuButton } from "./sidebar-menu-button.js";
23
+ export { DuiSidebarMenuItem } from "./sidebar-menu-item.js";
24
+ export { DuiSidebarProvider } from "./sidebar-provider.js";
25
+ export { DuiSidebarSeparator } from "./sidebar-separator.js";
26
+ export { DuiSidebarTrigger } from "./sidebar-trigger.js";
27
+ export { openChangeEvent } from "@deepfuture/dui-primitives/sidebar";
@@ -1,14 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-content>` — Scrollable content section of the sidebar.
5
- *
6
- * Wraps its slot in a scroll area to provide overflow scrolling.
7
- *
8
- * @slot - Default slot for sidebar groups, menus, etc.
9
- */
10
- export declare class DuiSidebarContent extends LitElement {
11
- static tagName: "dui-sidebar-content";
1
+ import { DuiSidebarContentPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarContent extends DuiSidebarContentPrimitive {
12
4
  static styles: import("lit").CSSResult[];
13
- render(): TemplateResult;
14
5
  }
@@ -1,30 +1,8 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { css, html, LitElement } from "lit";
3
- import { base } from "@deepfuture/dui-core/base";
4
- const styles = css `
5
- :host {
6
- display: flex;
7
- flex-direction: column;
8
- flex: 1;
9
- min-height: 0;
10
- overflow: hidden;
11
- }
12
- `;
13
- /**
14
- * `<dui-sidebar-content>` — Scrollable content section of the sidebar.
15
- *
16
- * Wraps its slot in a scroll area to provide overflow scrolling.
17
- *
18
- * @slot - Default slot for sidebar groups, menus, etc.
19
- */
20
- export class DuiSidebarContent extends LitElement {
21
- static tagName = "dui-sidebar-content";
22
- static styles = [base, styles];
23
- render() {
24
- return html `
25
- <dui-scroll-area>
26
- <slot></slot>
27
- </dui-scroll-area>
28
- `;
29
- }
1
+ import { css } from "lit";
2
+ import { DuiSidebarContentPrimitive } from "@deepfuture/dui-primitives/sidebar";
3
+ import "../_install.js";
4
+ const styles = css ``;
5
+ export class DuiSidebarContent extends DuiSidebarContentPrimitive {
6
+ static styles = [...DuiSidebarContentPrimitive.styles, styles];
30
7
  }
8
+ customElements.define(DuiSidebarContent.tagName, DuiSidebarContent);
@@ -1,12 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-footer>` — Bottom section of the sidebar.
5
- *
6
- * @slot - Default slot for footer content (user info, settings, etc.).
7
- */
8
- export declare class DuiSidebarFooter extends LitElement {
9
- static tagName: "dui-sidebar-footer";
1
+ import { DuiSidebarFooterPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarFooter extends DuiSidebarFooterPrimitive {
10
4
  static styles: import("lit").CSSResult[];
11
- render(): TemplateResult;
12
5
  }
@@ -1,21 +1,8 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { css, html, LitElement } from "lit";
3
- import { base } from "@deepfuture/dui-core/base";
4
- const styles = css `
5
- :host {
6
- display: flex;
7
- flex-direction: column;
8
- }
9
- `;
10
- /**
11
- * `<dui-sidebar-footer>` — Bottom section of the sidebar.
12
- *
13
- * @slot - Default slot for footer content (user info, settings, etc.).
14
- */
15
- export class DuiSidebarFooter extends LitElement {
16
- static tagName = "dui-sidebar-footer";
17
- static styles = [base, styles];
18
- render() {
19
- return html `<slot></slot>`;
20
- }
1
+ import { css } from "lit";
2
+ import { DuiSidebarFooterPrimitive } from "@deepfuture/dui-primitives/sidebar";
3
+ import "../_install.js";
4
+ const styles = css ``;
5
+ export class DuiSidebarFooter extends DuiSidebarFooterPrimitive {
6
+ static styles = [...DuiSidebarFooterPrimitive.styles, styles];
21
7
  }
8
+ customElements.define(DuiSidebarFooter.tagName, DuiSidebarFooter);
@@ -1,17 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-group-label>` — Heading for a sidebar group.
5
- *
6
- * Automatically hides (with opacity transition) when the sidebar is
7
- * in icon-collapsed mode.
8
- *
9
- * @slot - Label text.
10
- */
11
- export declare class DuiSidebarGroupLabel extends LitElement {
12
- #private;
13
- static tagName: "dui-sidebar-group-label";
1
+ import { DuiSidebarGroupLabelPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarGroupLabel extends DuiSidebarGroupLabelPrimitive {
14
4
  static styles: import("lit").CSSResult[];
15
- updated(): void;
16
- render(): TemplateResult;
17
5
  }
@@ -1,49 +1,25 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { css, html, LitElement } from "lit";
3
- import { ContextConsumer } from "@lit/context";
4
- import { base } from "@deepfuture/dui-core/base";
5
- import { sidebarContext } from "./sidebar-context.js";
1
+ import { css } from "lit";
2
+ import { DuiSidebarGroupLabelPrimitive } from "@deepfuture/dui-primitives/sidebar";
3
+ import "../_install.js";
6
4
  const styles = css `
7
5
  :host {
8
- display: flex;
9
- align-items: center;
10
- overflow: hidden;
11
- white-space: nowrap;
12
- text-overflow: ellipsis;
6
+ margin-left: var(--sidebar-group-label-inset);
7
+ height: var(--component-height-sm);
8
+ color: var(--sidebar-muted-fg);
9
+ font-family: var(--font-sans);
10
+ font-size: var(--text-xs); line-height: var(--text-xs--line-height);
11
+ text-box: trim-both cap alphabetic;
12
+ font-weight: var(--font-weight-medium);
13
13
  }
14
14
 
15
15
  :host([data-icon-collapsed]) {
16
- opacity: 0;
16
+ margin-top: calc(-1 * var(--component-height-sm));
17
+ transition-property: margin-top, opacity;
18
+ transition-duration: var(--duration-normal);
19
+ transition-timing-function: var(--ease-out-3);
17
20
  }
18
21
  `;
19
- /**
20
- * `<dui-sidebar-group-label>` Heading for a sidebar group.
21
- *
22
- * Automatically hides (with opacity transition) when the sidebar is
23
- * in icon-collapsed mode.
24
- *
25
- * @slot - Label text.
26
- */
27
- export class DuiSidebarGroupLabel extends LitElement {
28
- static tagName = "dui-sidebar-group-label";
29
- static styles = [base, styles];
30
- #ctx = new ContextConsumer(this, {
31
- context: sidebarContext,
32
- subscribe: true,
33
- });
34
- get #isIconCollapsed() {
35
- const ctx = this.#ctx.value;
36
- return ctx?.collapsible === "icon" && ctx?.state === "collapsed";
37
- }
38
- updated() {
39
- if (this.#isIconCollapsed) {
40
- this.setAttribute("data-icon-collapsed", "");
41
- }
42
- else {
43
- this.removeAttribute("data-icon-collapsed");
44
- }
45
- }
46
- render() {
47
- return html `<slot></slot>`;
48
- }
22
+ export class DuiSidebarGroupLabel extends DuiSidebarGroupLabelPrimitive {
23
+ static styles = [...DuiSidebarGroupLabelPrimitive.styles, styles];
49
24
  }
25
+ customElements.define(DuiSidebarGroupLabel.tagName, DuiSidebarGroupLabel);
@@ -1,15 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-group>` — Section container within the sidebar.
5
- *
6
- * Groups related menu items with an optional label.
7
- *
8
- * @slot label - Optional group label (use `<dui-sidebar-group-label>`).
9
- * @slot - Default slot for group content (menus, items, etc.).
10
- */
11
- export declare class DuiSidebarGroup extends LitElement {
12
- static tagName: "dui-sidebar-group";
1
+ import { DuiSidebarGroupPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarGroup extends DuiSidebarGroupPrimitive {
13
4
  static styles: import("lit").CSSResult[];
14
- render(): TemplateResult;
15
5
  }
@@ -1,29 +1,12 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { css, html, LitElement } from "lit";
3
- import { base } from "@deepfuture/dui-core/base";
1
+ import { css } from "lit";
2
+ import { DuiSidebarGroupPrimitive } from "@deepfuture/dui-primitives/sidebar";
3
+ import "../_install.js";
4
4
  const styles = css `
5
5
  :host {
6
- display: flex;
7
- flex-direction: column;
8
- position: relative;
9
- overflow: hidden;
6
+ padding: var(--sidebar-group-padding-y) 0;
10
7
  }
11
8
  `;
12
- /**
13
- * `<dui-sidebar-group>` Section container within the sidebar.
14
- *
15
- * Groups related menu items with an optional label.
16
- *
17
- * @slot label - Optional group label (use `<dui-sidebar-group-label>`).
18
- * @slot - Default slot for group content (menus, items, etc.).
19
- */
20
- export class DuiSidebarGroup extends LitElement {
21
- static tagName = "dui-sidebar-group";
22
- static styles = [base, styles];
23
- render() {
24
- return html `
25
- <slot name="label"></slot>
26
- <slot></slot>
27
- `;
28
- }
9
+ export class DuiSidebarGroup extends DuiSidebarGroupPrimitive {
10
+ static styles = [...DuiSidebarGroupPrimitive.styles, styles];
29
11
  }
12
+ customElements.define(DuiSidebarGroup.tagName, DuiSidebarGroup);
@@ -1,12 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-header>` — Top section of the sidebar.
5
- *
6
- * @slot - Default slot for header content (logo, title, etc.).
7
- */
8
- export declare class DuiSidebarHeader extends LitElement {
9
- static tagName: "dui-sidebar-header";
1
+ import { DuiSidebarHeaderPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarHeader extends DuiSidebarHeaderPrimitive {
10
4
  static styles: import("lit").CSSResult[];
11
- render(): TemplateResult;
12
5
  }
@@ -1,21 +1,12 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { css, html, LitElement } from "lit";
3
- import { base } from "@deepfuture/dui-core/base";
1
+ import { css } from "lit";
2
+ import { DuiSidebarHeaderPrimitive } from "@deepfuture/dui-primitives/sidebar";
3
+ import "../_install.js";
4
4
  const styles = css `
5
5
  :host {
6
- display: flex;
7
- flex-direction: column;
6
+ margin-bottom: var(--sidebar-header-content-gap);
8
7
  }
9
8
  `;
10
- /**
11
- * `<dui-sidebar-header>` Top section of the sidebar.
12
- *
13
- * @slot - Default slot for header content (logo, title, etc.).
14
- */
15
- export class DuiSidebarHeader extends LitElement {
16
- static tagName = "dui-sidebar-header";
17
- static styles = [base, styles];
18
- render() {
19
- return html `<slot></slot>`;
20
- }
9
+ export class DuiSidebarHeader extends DuiSidebarHeaderPrimitive {
10
+ static styles = [...DuiSidebarHeaderPrimitive.styles, styles];
21
11
  }
12
+ customElements.define(DuiSidebarHeader.tagName, DuiSidebarHeader);
@@ -1,15 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-inset>` — Content wrapper adjacent to the sidebar.
5
- *
6
- * Fills the remaining space next to the sidebar. Provides a container
7
- * query context for responsive content.
8
- *
9
- * @slot - Default slot for main page content.
10
- */
11
- export declare class DuiSidebarInset extends LitElement {
12
- static tagName: "dui-sidebar-inset";
1
+ import { DuiSidebarInsetPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarInset extends DuiSidebarInsetPrimitive {
13
4
  static styles: import("lit").CSSResult[];
14
- render(): TemplateResult;
15
5
  }
@@ -1,29 +1,8 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { css, html, LitElement } from "lit";
3
- import { base } from "@deepfuture/dui-core/base";
4
- const styles = css `
5
- :host {
6
- display: flex;
7
- flex-direction: column;
8
- flex: 1;
9
- min-width: 0;
10
- position: relative;
11
- overflow: hidden;
12
- container-type: size;
13
- }
14
- `;
15
- /**
16
- * `<dui-sidebar-inset>` — Content wrapper adjacent to the sidebar.
17
- *
18
- * Fills the remaining space next to the sidebar. Provides a container
19
- * query context for responsive content.
20
- *
21
- * @slot - Default slot for main page content.
22
- */
23
- export class DuiSidebarInset extends LitElement {
24
- static tagName = "dui-sidebar-inset";
25
- static styles = [base, styles];
26
- render() {
27
- return html `<slot></slot>`;
28
- }
1
+ import { css } from "lit";
2
+ import { DuiSidebarInsetPrimitive } from "@deepfuture/dui-primitives/sidebar";
3
+ import "../_install.js";
4
+ const styles = css ``;
5
+ export class DuiSidebarInset extends DuiSidebarInsetPrimitive {
6
+ static styles = [...DuiSidebarInsetPrimitive.styles, styles];
29
7
  }
8
+ customElements.define(DuiSidebarInset.tagName, DuiSidebarInset);
@@ -1,28 +1,5 @@
1
- /** Ported from original DUI: deep-future-app/app/client/components/dui/sidebar */
2
- import { LitElement, type TemplateResult } from "lit";
3
- /**
4
- * `<dui-sidebar-menu-button>` — Interactive button or link within a sidebar menu.
5
- *
6
- * Renders as a `<button>` by default, or an `<a>` when `href` is set.
7
- * Supports icon-collapsed mode where only the icon is visible, with an
8
- * optional tooltip.
9
- *
10
- * @slot icon - Icon slot, shown before the label.
11
- * @slot - Default slot for label text.
12
- * @slot suffix - Suffix slot, shown after the label.
13
- * @fires spa-navigate - Fired on normal link clicks. Detail: { href: string }
14
- */
15
- export declare class DuiSidebarMenuButton extends LitElement {
16
- #private;
17
- static tagName: "dui-sidebar-menu-button";
1
+ import { DuiSidebarMenuButtonPrimitive } from "@deepfuture/dui-primitives/sidebar";
2
+ import "../_install.js";
3
+ export declare class DuiSidebarMenuButton extends DuiSidebarMenuButtonPrimitive {
18
4
  static styles: import("lit").CSSResult[];
19
- /** Whether the button is in active/selected state. */
20
- accessor active: boolean;
21
- /** Whether the button is disabled. */
22
- accessor disabled: boolean;
23
- /** Tooltip text shown when sidebar is icon-collapsed. */
24
- accessor tooltip: string;
25
- /** When set, renders as an anchor tag instead of a button. */
26
- accessor href: string | undefined;
27
- render(): TemplateResult;
28
5
  }