@deepfuture/dui-components 0.0.11 → 0.0.13

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 (250) hide show
  1. package/README.md +191 -0
  2. package/_deprecated/center/center.js +2 -2
  3. package/_deprecated/center/index.d.ts +3 -1
  4. package/_deprecated/center/index.js +3 -1
  5. package/_deprecated/hstack/hstack.js +79 -33
  6. package/_deprecated/hstack/index.d.ts +3 -1
  7. package/_deprecated/hstack/index.js +3 -1
  8. package/_deprecated/page-inset/index.d.ts +3 -1
  9. package/_deprecated/page-inset/index.js +3 -1
  10. package/_deprecated/page-inset/page-inset.js +104 -56
  11. package/_deprecated/vstack/index.d.ts +3 -1
  12. package/_deprecated/vstack/index.js +3 -1
  13. package/_deprecated/vstack/vstack.js +61 -19
  14. package/accordion/accordion-item.js +217 -147
  15. package/accordion/accordion.js +214 -149
  16. package/accordion/index.d.ts +5 -2
  17. package/accordion/index.js +5 -2
  18. package/alert-dialog/alert-dialog-close.js +2 -2
  19. package/alert-dialog/alert-dialog-popup.js +230 -166
  20. package/alert-dialog/alert-dialog-trigger.js +2 -2
  21. package/alert-dialog/alert-dialog.js +128 -73
  22. package/alert-dialog/index.d.ts +9 -4
  23. package/alert-dialog/index.js +9 -4
  24. package/avatar/avatar.js +175 -115
  25. package/avatar/index.d.ts +3 -1
  26. package/avatar/index.js +3 -1
  27. package/badge/badge.js +2 -2
  28. package/badge/index.d.ts +3 -1
  29. package/badge/index.js +3 -1
  30. package/breadcrumb/breadcrumb-ellipsis.js +2 -2
  31. package/breadcrumb/breadcrumb-item.js +2 -2
  32. package/breadcrumb/breadcrumb-link.js +2 -2
  33. package/breadcrumb/breadcrumb-page.js +2 -2
  34. package/breadcrumb/breadcrumb-separator.js +2 -2
  35. package/breadcrumb/breadcrumb.js +2 -2
  36. package/breadcrumb/index.d.ts +13 -6
  37. package/breadcrumb/index.js +13 -6
  38. package/button/button.js +109 -65
  39. package/button/index.d.ts +3 -1
  40. package/button/index.js +3 -1
  41. package/calendar/calendar.js +368 -290
  42. package/calendar/index.d.ts +3 -1
  43. package/calendar/index.js +3 -1
  44. package/checkbox/checkbox-group.js +146 -87
  45. package/checkbox/checkbox.js +232 -167
  46. package/checkbox/index.d.ts +5 -2
  47. package/checkbox/index.js +5 -2
  48. package/collapsible/collapsible.js +210 -132
  49. package/collapsible/index.d.ts +3 -1
  50. package/collapsible/index.js +3 -1
  51. package/combobox/combobox.js +318 -252
  52. package/combobox/index.d.ts +3 -1
  53. package/combobox/index.js +3 -1
  54. package/command/command-empty.js +67 -25
  55. package/command/command-group.js +87 -47
  56. package/command/command-input.js +84 -44
  57. package/command/command-item.js +168 -124
  58. package/command/command-list.js +60 -18
  59. package/command/command-separator.js +2 -2
  60. package/command/command-shortcut.js +2 -2
  61. package/command/command.js +297 -232
  62. package/command/index.d.ts +17 -8
  63. package/command/index.js +17 -8
  64. package/data-table/data-table.js +225 -153
  65. package/data-table/index.d.ts +3 -1
  66. package/data-table/index.js +3 -1
  67. package/dialog/dialog-close.js +2 -2
  68. package/dialog/dialog-popup.js +247 -181
  69. package/dialog/dialog-trigger.js +2 -2
  70. package/dialog/dialog.js +128 -73
  71. package/dialog/index.d.ts +9 -4
  72. package/dialog/index.js +9 -4
  73. package/dropzone/dropzone.js +310 -249
  74. package/dropzone/index.d.ts +3 -1
  75. package/dropzone/index.js +3 -1
  76. package/icon/icon.js +2 -2
  77. package/icon/index.d.ts +3 -1
  78. package/icon/index.js +3 -1
  79. package/input/index.d.ts +3 -1
  80. package/input/index.js +3 -1
  81. package/input/input.js +204 -143
  82. package/link/index.d.ts +3 -1
  83. package/link/index.js +3 -1
  84. package/link/link.js +62 -24
  85. package/menu/index.d.ts +5 -2
  86. package/menu/index.js +5 -2
  87. package/menu/menu-item.js +66 -24
  88. package/menu/menu.js +189 -136
  89. package/menubar/index.d.ts +3 -1
  90. package/menubar/index.js +3 -1
  91. package/menubar/menubar.js +142 -91
  92. package/number-field/index.d.ts +3 -1
  93. package/number-field/index.js +3 -1
  94. package/number-field/number-field.js +277 -204
  95. package/package.json +5 -4
  96. package/popover/index.d.ts +9 -4
  97. package/popover/index.js +9 -4
  98. package/popover/popover-close.js +2 -2
  99. package/popover/popover-popup.js +126 -76
  100. package/popover/popover-trigger.js +2 -2
  101. package/popover/popover.js +181 -120
  102. package/portal/index.d.ts +3 -1
  103. package/portal/index.js +3 -1
  104. package/portal/portal.js +128 -86
  105. package/preview-card/index.d.ts +7 -3
  106. package/preview-card/index.js +7 -3
  107. package/preview-card/preview-card-popup.js +114 -66
  108. package/preview-card/preview-card-trigger.js +2 -2
  109. package/preview-card/preview-card.js +211 -142
  110. package/progress/index.d.ts +3 -1
  111. package/progress/index.js +3 -1
  112. package/progress/progress.js +91 -45
  113. package/radio/index.d.ts +5 -2
  114. package/radio/index.js +5 -2
  115. package/radio/radio-group.js +153 -90
  116. package/radio/radio.js +137 -94
  117. package/scroll-area/index.d.ts +3 -1
  118. package/scroll-area/index.js +3 -1
  119. package/scroll-area/scroll-area.js +382 -276
  120. package/select/index.d.ts +3 -1
  121. package/select/index.js +3 -1
  122. package/select/select.js +260 -203
  123. package/separator/index.d.ts +3 -1
  124. package/separator/index.js +3 -1
  125. package/separator/separator.js +60 -18
  126. package/sidebar/index.d.ts +27 -13
  127. package/sidebar/index.js +32 -13
  128. package/sidebar/sidebar-content.js +2 -2
  129. package/sidebar/sidebar-footer.js +2 -2
  130. package/sidebar/sidebar-group-label.js +2 -2
  131. package/sidebar/sidebar-group.js +2 -2
  132. package/sidebar/sidebar-header.js +2 -2
  133. package/sidebar/sidebar-inset.js +2 -2
  134. package/sidebar/sidebar-menu-button.js +118 -74
  135. package/sidebar/sidebar-menu-item.js +2 -2
  136. package/sidebar/sidebar-menu.js +2 -2
  137. package/sidebar/sidebar-provider.js +202 -129
  138. package/sidebar/sidebar-separator.js +2 -2
  139. package/sidebar/sidebar-trigger.js +2 -2
  140. package/sidebar/sidebar.js +150 -85
  141. package/slider/index.d.ts +3 -1
  142. package/slider/index.js +3 -1
  143. package/slider/slider.js +217 -159
  144. package/spinner/index.d.ts +3 -1
  145. package/spinner/index.js +3 -1
  146. package/spinner/spinner.js +70 -28
  147. package/switch/index.d.ts +3 -1
  148. package/switch/index.js +3 -1
  149. package/switch/switch.js +174 -111
  150. package/tabs/index.d.ts +11 -5
  151. package/tabs/index.js +11 -5
  152. package/tabs/tab.js +89 -47
  153. package/tabs/tabs-indicator.js +2 -2
  154. package/tabs/tabs-list.js +92 -54
  155. package/tabs/tabs-panel.js +90 -44
  156. package/tabs/tabs.js +130 -71
  157. package/textarea/index.d.ts +3 -1
  158. package/textarea/index.js +3 -1
  159. package/textarea/textarea.js +153 -95
  160. package/toggle/index.d.ts +5 -2
  161. package/toggle/index.js +5 -2
  162. package/toggle/toggle-group.js +184 -125
  163. package/toggle/toggle.js +131 -76
  164. package/toolbar/index.d.ts +3 -1
  165. package/toolbar/index.js +3 -1
  166. package/toolbar/toolbar.js +79 -33
  167. package/tooltip/index.d.ts +7 -3
  168. package/tooltip/index.js +7 -3
  169. package/tooltip/tooltip-popup.js +108 -60
  170. package/tooltip/tooltip-trigger.js +93 -55
  171. package/tooltip/tooltip.js +225 -154
  172. package/trunc/index.d.ts +3 -1
  173. package/trunc/index.js +3 -1
  174. package/trunc/trunc.js +78 -34
  175. package/accordion/register.d.ts +0 -1
  176. package/accordion/register.js +0 -8
  177. package/alert-dialog/register.d.ts +0 -1
  178. package/alert-dialog/register.js +0 -16
  179. package/avatar/register.d.ts +0 -1
  180. package/avatar/register.js +0 -4
  181. package/badge/register.d.ts +0 -1
  182. package/badge/register.js +0 -4
  183. package/breadcrumb/register.d.ts +0 -1
  184. package/breadcrumb/register.js +0 -14
  185. package/button/register.d.ts +0 -1
  186. package/button/register.js +0 -4
  187. package/calendar/register.d.ts +0 -1
  188. package/calendar/register.js +0 -4
  189. package/checkbox/register.d.ts +0 -1
  190. package/checkbox/register.js +0 -8
  191. package/collapsible/register.d.ts +0 -1
  192. package/collapsible/register.js +0 -4
  193. package/combobox/register.d.ts +0 -1
  194. package/combobox/register.js +0 -4
  195. package/command/register.d.ts +0 -1
  196. package/command/register.js +0 -22
  197. package/data-table/register.d.ts +0 -1
  198. package/data-table/register.js +0 -4
  199. package/dialog/register.d.ts +0 -1
  200. package/dialog/register.js +0 -16
  201. package/dropzone/register.d.ts +0 -1
  202. package/dropzone/register.js +0 -4
  203. package/icon/register.d.ts +0 -1
  204. package/icon/register.js +0 -4
  205. package/input/register.d.ts +0 -1
  206. package/input/register.js +0 -4
  207. package/link/register.d.ts +0 -1
  208. package/link/register.js +0 -4
  209. package/menu/register.d.ts +0 -1
  210. package/menu/register.js +0 -8
  211. package/menubar/register.d.ts +0 -1
  212. package/menubar/register.js +0 -4
  213. package/number-field/register.d.ts +0 -1
  214. package/number-field/register.js +0 -4
  215. package/popover/register.d.ts +0 -1
  216. package/popover/register.js +0 -16
  217. package/portal/register.d.ts +0 -1
  218. package/portal/register.js +0 -4
  219. package/preview-card/register.d.ts +0 -1
  220. package/preview-card/register.js +0 -12
  221. package/progress/register.d.ts +0 -1
  222. package/progress/register.js +0 -4
  223. package/radio/register.d.ts +0 -1
  224. package/radio/register.js +0 -8
  225. package/scroll-area/register.d.ts +0 -1
  226. package/scroll-area/register.js +0 -4
  227. package/select/register.d.ts +0 -1
  228. package/select/register.js +0 -4
  229. package/separator/register.d.ts +0 -1
  230. package/separator/register.js +0 -4
  231. package/sidebar/register.d.ts +0 -1
  232. package/sidebar/register.js +0 -52
  233. package/slider/register.d.ts +0 -1
  234. package/slider/register.js +0 -4
  235. package/spinner/register.d.ts +0 -1
  236. package/spinner/register.js +0 -4
  237. package/switch/register.d.ts +0 -1
  238. package/switch/register.js +0 -4
  239. package/tabs/register.d.ts +0 -1
  240. package/tabs/register.js +0 -10
  241. package/textarea/register.d.ts +0 -1
  242. package/textarea/register.js +0 -4
  243. package/toggle/register.d.ts +0 -1
  244. package/toggle/register.js +0 -8
  245. package/toolbar/register.d.ts +0 -1
  246. package/toolbar/register.js +0 -4
  247. package/tooltip/register.d.ts +0 -1
  248. package/tooltip/register.js +0 -12
  249. package/trunc/register.d.ts +0 -1
  250. package/trunc/register.js +0 -4
@@ -1,9 +1,37 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/command */
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
2
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
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;
7
35
  };
8
36
  import { css, html, LitElement } from "lit";
9
37
  import { property } from "lit/decorators.js";
@@ -30,121 +58,147 @@ const styles = css `
30
58
  outline: none;
31
59
  }
32
60
  `;
33
- export class DuiCommandItem extends LitElement {
34
- static { this.tagName = "dui-command-item"; }
35
- static { this.styles = [base, styles]; }
36
- #value_accessor_storage = "";
37
- /** The value this item represents. */
38
- get value() { return this.#value_accessor_storage; }
39
- set value(value) { this.#value_accessor_storage = value; }
40
- #keywords_accessor_storage = [];
41
- /** Additional search keywords. */
42
- get keywords() { return this.#keywords_accessor_storage; }
43
- set keywords(value) { this.#keywords_accessor_storage = value; }
44
- #disabled_accessor_storage = false;
45
- /** Whether this item is disabled. */
46
- get disabled() { return this.#disabled_accessor_storage; }
47
- set disabled(value) { this.#disabled_accessor_storage = value; }
48
- #_ctx_accessor_storage;
49
- get _ctx() { return this.#_ctx_accessor_storage; }
50
- set _ctx(value) { this.#_ctx_accessor_storage = value; }
51
- #id = nextItemId();
52
- // Track previous own-property values to avoid infinite update loops
53
- #prevValue = undefined;
54
- #prevKeywords = undefined;
55
- #prevDisabled = undefined;
56
- #registered = false;
57
- get #isSelected() {
58
- return this._ctx?.selectedItemId === this.#id;
59
- }
60
- get #isVisible() {
61
- if (!this._ctx)
62
- return true;
63
- return this._ctx.getScore(this.#id) > 0;
64
- }
65
- #getGroupId() {
66
- const groupHost = this.closest("[data-group-id]");
67
- return groupHost?.getAttribute("data-group-id") ?? undefined;
68
- }
69
- #buildEntry() {
70
- return {
71
- id: this.#id,
72
- value: this.value,
73
- keywords: this.keywords,
74
- textContent: this.textContent?.trim() ?? "",
75
- disabled: this.disabled,
76
- groupId: this.#getGroupId(),
77
- };
78
- }
79
- connectedCallback() {
80
- super.connectedCallback();
81
- // Defer registration to next frame so context is available
82
- requestAnimationFrame(() => {
83
- if (!this.isConnected)
84
- return;
85
- this._ctx?.registerItem(this.#buildEntry());
86
- this.#registered = true;
87
- this.#prevValue = this.value;
88
- this.#prevKeywords = this.keywords;
89
- this.#prevDisabled = this.disabled;
90
- });
91
- }
92
- disconnectedCallback() {
93
- super.disconnectedCallback();
94
- this._ctx?.unregisterItem(this.#id);
95
- this.#registered = false;
96
- }
97
- willUpdate() {
98
- // Only call updateItem when own properties change, not on every context update
99
- if (this.#registered) {
100
- const valueChanged = this.#prevValue !== this.value;
101
- const keywordsChanged = this.#prevKeywords !== this.keywords;
102
- const disabledChanged = this.#prevDisabled !== this.disabled;
103
- if (valueChanged || keywordsChanged || disabledChanged) {
104
- this._ctx?.updateItem(this.#buildEntry());
61
+ let DuiCommandItem = (() => {
62
+ let _classSuper = LitElement;
63
+ let _value_decorators;
64
+ let _value_initializers = [];
65
+ let _value_extraInitializers = [];
66
+ let _keywords_decorators;
67
+ let _keywords_initializers = [];
68
+ let _keywords_extraInitializers = [];
69
+ let _disabled_decorators;
70
+ let _disabled_initializers = [];
71
+ let _disabled_extraInitializers = [];
72
+ let __ctx_decorators;
73
+ let __ctx_initializers = [];
74
+ let __ctx_extraInitializers = [];
75
+ return class DuiCommandItem extends _classSuper {
76
+ static {
77
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
78
+ _value_decorators = [property({ type: String })];
79
+ _keywords_decorators = [property({ type: Array, attribute: false })];
80
+ _disabled_decorators = [property({ type: Boolean })];
81
+ __ctx_decorators = [consume({ context: commandContext, subscribe: true })];
82
+ __esDecorate(this, null, _value_decorators, { kind: "accessor", name: "value", static: false, private: false, access: { has: obj => "value" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);
83
+ __esDecorate(this, null, _keywords_decorators, { kind: "accessor", name: "keywords", static: false, private: false, access: { has: obj => "keywords" in obj, get: obj => obj.keywords, set: (obj, value) => { obj.keywords = value; } }, metadata: _metadata }, _keywords_initializers, _keywords_extraInitializers);
84
+ __esDecorate(this, null, _disabled_decorators, { kind: "accessor", name: "disabled", static: false, private: false, access: { has: obj => "disabled" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);
85
+ __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);
86
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
87
+ }
88
+ static tagName = "dui-command-item";
89
+ static styles = [base, styles];
90
+ #value_accessor_storage = __runInitializers(this, _value_initializers, "");
91
+ /** The value this item represents. */
92
+ get value() { return this.#value_accessor_storage; }
93
+ set value(value) { this.#value_accessor_storage = value; }
94
+ #keywords_accessor_storage = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _keywords_initializers, []));
95
+ /** Additional search keywords. */
96
+ get keywords() { return this.#keywords_accessor_storage; }
97
+ set keywords(value) { this.#keywords_accessor_storage = value; }
98
+ #disabled_accessor_storage = (__runInitializers(this, _keywords_extraInitializers), __runInitializers(this, _disabled_initializers, false));
99
+ /** Whether this item is disabled. */
100
+ get disabled() { return this.#disabled_accessor_storage; }
101
+ set disabled(value) { this.#disabled_accessor_storage = value; }
102
+ #_ctx_accessor_storage = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, __ctx_initializers, void 0));
103
+ get _ctx() { return this.#_ctx_accessor_storage; }
104
+ set _ctx(value) { this.#_ctx_accessor_storage = value; }
105
+ #id = (__runInitializers(this, __ctx_extraInitializers), nextItemId());
106
+ // Track previous own-property values to avoid infinite update loops
107
+ #prevValue = undefined;
108
+ #prevKeywords = undefined;
109
+ #prevDisabled = undefined;
110
+ #registered = false;
111
+ get #isSelected() {
112
+ return this._ctx?.selectedItemId === this.#id;
113
+ }
114
+ get #isVisible() {
115
+ if (!this._ctx)
116
+ return true;
117
+ return this._ctx.getScore(this.#id) > 0;
118
+ }
119
+ #getGroupId() {
120
+ const groupHost = this.closest("[data-group-id]");
121
+ return groupHost?.getAttribute("data-group-id") ?? undefined;
122
+ }
123
+ #buildEntry() {
124
+ return {
125
+ id: this.#id,
126
+ value: this.value,
127
+ keywords: this.keywords,
128
+ textContent: this.textContent?.trim() ?? "",
129
+ disabled: this.disabled,
130
+ groupId: this.#getGroupId(),
131
+ };
132
+ }
133
+ connectedCallback() {
134
+ super.connectedCallback();
135
+ // Defer registration to next frame so context is available
136
+ requestAnimationFrame(() => {
137
+ if (!this.isConnected)
138
+ return;
139
+ this._ctx?.registerItem(this.#buildEntry());
140
+ this.#registered = true;
105
141
  this.#prevValue = this.value;
106
142
  this.#prevKeywords = this.keywords;
107
143
  this.#prevDisabled = this.disabled;
108
- }
144
+ });
109
145
  }
110
- // Toggle data-hidden attribute
111
- if (this._ctx?.shouldFilter) {
112
- if (!this.#isVisible) {
113
- this.setAttribute("data-hidden", "");
146
+ disconnectedCallback() {
147
+ super.disconnectedCallback();
148
+ this._ctx?.unregisterItem(this.#id);
149
+ this.#registered = false;
150
+ }
151
+ willUpdate() {
152
+ // Only call updateItem when own properties change, not on every context update
153
+ if (this.#registered) {
154
+ const valueChanged = this.#prevValue !== this.value;
155
+ const keywordsChanged = this.#prevKeywords !== this.keywords;
156
+ const disabledChanged = this.#prevDisabled !== this.disabled;
157
+ if (valueChanged || keywordsChanged || disabledChanged) {
158
+ this._ctx?.updateItem(this.#buildEntry());
159
+ this.#prevValue = this.value;
160
+ this.#prevKeywords = this.keywords;
161
+ this.#prevDisabled = this.disabled;
162
+ }
163
+ }
164
+ // Toggle data-hidden attribute
165
+ if (this._ctx?.shouldFilter) {
166
+ if (!this.#isVisible) {
167
+ this.setAttribute("data-hidden", "");
168
+ }
169
+ else {
170
+ this.removeAttribute("data-hidden");
171
+ }
114
172
  }
115
173
  else {
116
174
  this.removeAttribute("data-hidden");
117
175
  }
176
+ // Update selected attribute
177
+ if (this.#isSelected) {
178
+ this.setAttribute("data-selected", "");
179
+ }
180
+ else {
181
+ this.removeAttribute("data-selected");
182
+ }
118
183
  }
119
- else {
120
- this.removeAttribute("data-hidden");
121
- }
122
- // Update selected attribute
123
- if (this.#isSelected) {
124
- this.setAttribute("data-selected", "");
125
- }
126
- else {
127
- this.removeAttribute("data-selected");
128
- }
129
- }
130
- updated() {
131
- // Scroll into view when selected
132
- if (this.#isSelected) {
133
- this.scrollIntoView({ block: "nearest" });
134
- }
135
- }
136
- #handleMouseMove = () => {
137
- if (!this.disabled && this._ctx?.selectedItemId !== this.#id) {
138
- this._ctx?.selectItem(this.#id);
139
- }
140
- };
141
- #handleClick = () => {
142
- if (!this.disabled) {
143
- this._ctx?.handleItemSelect(this.value);
184
+ updated() {
185
+ // Scroll into view when selected
186
+ if (this.#isSelected) {
187
+ this.scrollIntoView({ block: "nearest" });
188
+ }
144
189
  }
145
- };
146
- render() {
147
- return html `
190
+ #handleMouseMove = () => {
191
+ if (!this.disabled && this._ctx?.selectedItemId !== this.#id) {
192
+ this._ctx?.selectItem(this.#id);
193
+ }
194
+ };
195
+ #handleClick = () => {
196
+ if (!this.disabled) {
197
+ this._ctx?.handleItemSelect(this.value);
198
+ }
199
+ };
200
+ render() {
201
+ return html `
148
202
  <div
149
203
  class="Item"
150
204
  role="option"
@@ -159,17 +213,7 @@ export class DuiCommandItem extends LitElement {
159
213
  <slot></slot>
160
214
  </div>
161
215
  `;
162
- }
163
- }
164
- __decorate([
165
- property({ type: String })
166
- ], DuiCommandItem.prototype, "value", null);
167
- __decorate([
168
- property({ type: Array, attribute: false })
169
- ], DuiCommandItem.prototype, "keywords", null);
170
- __decorate([
171
- property({ type: Boolean })
172
- ], DuiCommandItem.prototype, "disabled", null);
173
- __decorate([
174
- consume({ context: commandContext, subscribe: true })
175
- ], DuiCommandItem.prototype, "_ctx", null);
216
+ }
217
+ };
218
+ })();
219
+ export { DuiCommandItem };
@@ -1,9 +1,37 @@
1
1
  /** Ported from original DUI: deep-future-app/app/client/components/dui/command */
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
2
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
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;
7
35
  };
8
36
  import { css, html, LitElement } from "lit";
9
37
  import { consume } from "@lit/context";
@@ -18,14 +46,25 @@ const styles = css `
18
46
  overflow: hidden;
19
47
  }
20
48
  `;
21
- export class DuiCommandList extends LitElement {
22
- static { this.tagName = "dui-command-list"; }
23
- static { this.styles = [base, styles]; }
24
- #_ctx_accessor_storage;
25
- get _ctx() { return this.#_ctx_accessor_storage; }
26
- set _ctx(value) { this.#_ctx_accessor_storage = value; }
27
- render() {
28
- return html `
49
+ let DuiCommandList = (() => {
50
+ let _classSuper = LitElement;
51
+ let __ctx_decorators;
52
+ let __ctx_initializers = [];
53
+ let __ctx_extraInitializers = [];
54
+ return class DuiCommandList extends _classSuper {
55
+ static {
56
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
57
+ __ctx_decorators = [consume({ context: commandContext, subscribe: true })];
58
+ __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);
59
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
60
+ }
61
+ static tagName = "dui-command-list";
62
+ static styles = [base, styles];
63
+ #_ctx_accessor_storage = __runInitializers(this, __ctx_initializers, void 0);
64
+ get _ctx() { return this.#_ctx_accessor_storage; }
65
+ set _ctx(value) { this.#_ctx_accessor_storage = value; }
66
+ render() {
67
+ return html `
29
68
  <dui-scroll-area>
30
69
  <div
31
70
  class="List"
@@ -36,8 +75,11 @@ export class DuiCommandList extends LitElement {
36
75
  </div>
37
76
  </dui-scroll-area>
38
77
  `;
39
- }
40
- }
41
- __decorate([
42
- consume({ context: commandContext, subscribe: true })
43
- ], DuiCommandList.prototype, "_ctx", null);
78
+ }
79
+ constructor() {
80
+ super(...arguments);
81
+ __runInitializers(this, __ctx_extraInitializers);
82
+ }
83
+ };
84
+ })();
85
+ export { DuiCommandList };
@@ -7,8 +7,8 @@ const styles = css `
7
7
  }
8
8
  `;
9
9
  export class DuiCommandSeparator extends LitElement {
10
- static { this.tagName = "dui-command-separator"; }
11
- static { this.styles = [base, styles]; }
10
+ static tagName = "dui-command-separator";
11
+ static styles = [base, styles];
12
12
  render() {
13
13
  return html `<div class="Separator" role="separator"></div>`;
14
14
  }
@@ -8,8 +8,8 @@ const styles = css `
8
8
  }
9
9
  `;
10
10
  export class DuiCommandShortcut extends LitElement {
11
- static { this.tagName = "dui-command-shortcut"; }
12
- static { this.styles = [base, styles]; }
11
+ static tagName = "dui-command-shortcut";
12
+ static styles = [base, styles];
13
13
  render() {
14
14
  return html `<span class="Shortcut"><slot></slot></span>`;
15
15
  }