@slotted/react 0.1.0-beta.4 → 0.1.0-beta.6

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 (185) hide show
  1. package/README.md +16 -1
  2. package/dist/{action-bar-OACchRZw.js → action-bar-ti3e6FK1.js} +1 -1
  3. package/dist/action-bar.js +1 -1
  4. package/dist/{app-shell-CmYvnu_7.js → app-shell-nnSP44OO.js} +271 -267
  5. package/dist/app-shell.js +1 -1
  6. package/dist/bin/slotted-agent-docs.mjs +297 -0
  7. package/dist/{cascader-D1AhTyBL.js → cascader-Cn2Acpcv.js} +227 -210
  8. package/dist/cascader.js +1 -1
  9. package/dist/chart-04i6NZQA.js +968 -0
  10. package/dist/chart.js +1 -1
  11. package/dist/{checkbox-DfxFHZaU.js → checkbox-B4Sb1eXj.js} +3 -3
  12. package/dist/{checkbox-group-9sDgrV5Z.js → checkbox-group-LpGMuq9w.js} +2 -2
  13. package/dist/checkbox-group.js +1 -1
  14. package/dist/checkbox.js +1 -1
  15. package/dist/{code-block-CFHf8uTm.js → code-block-CTNiyt0U.js} +1 -1
  16. package/dist/code-block.js +1 -1
  17. package/dist/{color-picker-CwbWzCKg.js → color-picker-BcRCeISx.js} +4 -4
  18. package/dist/color-picker.js +1 -1
  19. package/dist/{column-manager-CTtizVhm.js → column-manager-BtkYLs5G.js} +4 -4
  20. package/dist/column-manager.js +1 -1
  21. package/dist/{combobox-BVMI9lg8.js → combobox-C1D5doWM.js} +227 -198
  22. package/dist/combobox.js +1 -1
  23. package/dist/{context-menu-BuST6W94.js → context-menu-B00UIBVC.js} +1 -1
  24. package/dist/context-menu.js +1 -1
  25. package/dist/{currency-field-DD9A5U3D.js → currency-field-Dti9JFu0.js} +1 -1
  26. package/dist/currency-field.js +1 -1
  27. package/dist/{dashboard-grid-CBMP_-JV.js → dashboard-grid-CoLKLvYL.js} +1 -1
  28. package/dist/dashboard-grid.js +1 -1
  29. package/dist/{data-grid-Eb-a4jg3.js → data-grid-DX95Y7mY.js} +18 -18
  30. package/dist/data-grid.js +1 -1
  31. package/dist/{data-list-oICmxGkA.js → data-list-CWYTPNm-.js} +2 -2
  32. package/dist/data-list.js +1 -1
  33. package/dist/{date-field-Hr-OCU-H.js → date-field-BxEpqAPg.js} +1 -1
  34. package/dist/date-field.js +1 -1
  35. package/dist/date-picker-DRk9SZp1.js +308 -0
  36. package/dist/date-picker.js +1 -1
  37. package/dist/date-range-picker-6Yz7avTS.js +483 -0
  38. package/dist/date-range-picker.js +1 -1
  39. package/dist/{datetime-field-B8TrmsDK.js → datetime-field-D2f9u6im.js} +1 -1
  40. package/dist/datetime-field.js +1 -1
  41. package/dist/datetime-picker-STqSWMkH.js +645 -0
  42. package/dist/datetime-picker.js +1 -1
  43. package/dist/datetime-range-picker-DQNQwr3K.js +1000 -0
  44. package/dist/datetime-range-picker.js +1 -1
  45. package/dist/{detail-panel-CW53lUjp.js → detail-panel-z6WGleP4.js} +1 -1
  46. package/dist/detail-panel.js +1 -1
  47. package/dist/docs/AGENTS.snippet.md +2 -0
  48. package/dist/docs/app-shell.examples.md +1 -1
  49. package/dist/docs/app-shell.json +4 -4
  50. package/dist/docs/app-shell.md +2 -2
  51. package/dist/docs/guidelines/README.md +2 -2
  52. package/dist/docs/guidelines/index.md +1 -1
  53. package/dist/docs/guidelines/own-elements.md +1 -1
  54. package/dist/docs/page-header.json +1 -0
  55. package/dist/docs/page-header.md +1 -1
  56. package/dist/docs/segmented-control.json +7 -11
  57. package/dist/docs/segmented-control.md +1 -1
  58. package/dist/docs/skills/build-own-element/SKILL.md +6 -6
  59. package/dist/docs/skills/compose-screen/SKILL.md +6 -6
  60. package/dist/docs/skills/review-screen/SKILL.md +6 -6
  61. package/dist/docs/skills/theme-app/SKILL.md +1 -1
  62. package/dist/docs/skills/waiting-states/SKILL.md +2 -2
  63. package/dist/docs/tabs.json +16 -3
  64. package/dist/docs/tabs.md +3 -2
  65. package/dist/{entity-picker-Dn1T7JCq.js → entity-picker-BdySwW8F.js} +274 -256
  66. package/dist/entity-picker.js +1 -1
  67. package/dist/{event-calendar-CnF3iIZD.js → event-calendar-CiphPXdV.js} +4 -4
  68. package/dist/event-calendar.js +1 -1
  69. package/dist/{field-NJaCxl2h.js → field-BxQFpOXS.js} +1 -1
  70. package/dist/{field-group-hAzVa2O9.js → field-group-DcN_hiZN.js} +1 -1
  71. package/dist/field-group.js +1 -1
  72. package/dist/field.js +1 -1
  73. package/dist/{filter-bar-CHyy1o--.js → filter-bar-C_dXljI_.js} +10 -10
  74. package/dist/filter-bar.js +1 -1
  75. package/dist/{hover-card-BJE5dtaQ.js → hover-card-DpVzwvDJ.js} +1 -1
  76. package/dist/hover-card.js +1 -1
  77. package/dist/{import-export-center-jF37b909.js → import-export-center-BQnMJz4g.js} +3 -3
  78. package/dist/import-export-center.js +1 -1
  79. package/dist/index.js +63 -63
  80. package/dist/{listbox-Dv856z9I.js → listbox-D0MJcAMm.js} +1 -1
  81. package/dist/listbox.js +1 -1
  82. package/dist/{markdown-CeG8mUbI.js → markdown-IiVoh6yi.js} +2 -2
  83. package/dist/markdown.js +1 -1
  84. package/dist/menu-parts-D6v_mz6O.js +809 -0
  85. package/dist/menu.js +1 -1
  86. package/dist/{menubar-b2CruimJ.js → menubar-DApIg1eR.js} +1 -1
  87. package/dist/menubar.js +1 -1
  88. package/dist/{multi-select-DQ5ds0fX.js → multi-select-B8z6ApgW.js} +286 -257
  89. package/dist/multi-select.js +1 -1
  90. package/dist/{notification-center-C1iWWl5Y.js → notification-center-CGEEHcRA.js} +2 -2
  91. package/dist/notification-center.js +1 -1
  92. package/dist/{number-field-BFIAmv-z.js → number-field-DXk1TAXA.js} +1 -1
  93. package/dist/number-field.js +1 -1
  94. package/dist/{otp-input-BNQhuKaT.js → otp-input-CI-kdNgx.js} +1 -1
  95. package/dist/otp-input.js +1 -1
  96. package/dist/{popover-Be7JWbGJ.js → popover-DEp8Bf3e.js} +186 -166
  97. package/dist/popover.js +1 -1
  98. package/dist/{prompt-composer-BxpdkTpZ.js → prompt-composer-DdcU3S3L.js} +1 -1
  99. package/dist/prompt-composer.js +1 -1
  100. package/dist/{radio-group-BaVIP9UH.js → radio-group-D8csBZ8Z.js} +2 -2
  101. package/dist/radio-group.js +1 -1
  102. package/dist/{rating-DYBQBzwB.js → rating-rI3b5zII.js} +1 -1
  103. package/dist/rating.js +1 -1
  104. package/dist/{saved-views-DlE_--Z9.js → saved-views-B3brBTD9.js} +4 -4
  105. package/dist/saved-views.js +1 -1
  106. package/dist/scroll-area-DQ_ansLu.js +112 -0
  107. package/dist/scroll-area.js +1 -1
  108. package/dist/{segmented-control-DmuOGiu6.js → segmented-control-C-PzkTtg.js} +2 -2
  109. package/dist/segmented-control.js +1 -1
  110. package/dist/{select-M7Io4UL9.js → select-BUylPwpb.js} +241 -203
  111. package/dist/select.js +1 -1
  112. package/dist/{side-navigation-CBLtCzuJ.js → side-navigation-Bm-BZma1.js} +156 -140
  113. package/dist/side-navigation.js +1 -1
  114. package/dist/{slider-DTes4HLF.js → slider-fp7kyg-6.js} +1 -1
  115. package/dist/slider.js +1 -1
  116. package/dist/{split-button-CPgHiy9G.js → split-button-DKRm0j5c.js} +1 -1
  117. package/dist/split-button.js +1 -1
  118. package/dist/styles.css +1 -1
  119. package/dist/{switch-DQzuIhPX.js → switch-aVoc4C2F.js} +1 -1
  120. package/dist/switch.js +1 -1
  121. package/dist/{table-U9eJYCuB.js → table-BYEvFr4P.js} +276 -275
  122. package/dist/table.js +1 -1
  123. package/dist/{tabs-BtHmjlnM.js → tabs-HWmvOKM4.js} +109 -102
  124. package/dist/tabs.js +1 -1
  125. package/dist/{tags-input-CcOkm0AW.js → tags-input-pbv6x1Pi.js} +1 -1
  126. package/dist/tags-input.js +1 -1
  127. package/dist/{text-field-DLfIZ0fk.js → text-field-CbQ6UCAP.js} +1 -1
  128. package/dist/text-field.js +1 -1
  129. package/dist/{textarea-CBJBJBi6.js → textarea-DJSfhrXH.js} +1 -1
  130. package/dist/textarea.js +1 -1
  131. package/dist/{time-field-DrhiCtUl.js → time-field-BI9n607q.js} +1 -1
  132. package/dist/time-field.js +1 -1
  133. package/dist/time-picker-D6SlQWNF.js +402 -0
  134. package/dist/time-picker.js +1 -1
  135. package/dist/time-range-picker-CcV3_45h.js +751 -0
  136. package/dist/time-range-picker.js +1 -1
  137. package/dist/{toggle-group-7iBR9Rn1.js → toggle-group-i7JPO8BM.js} +1 -1
  138. package/dist/toggle-group.js +1 -1
  139. package/dist/{toolbar-DDZpEftQ.js → toolbar-B9knmgHA.js} +1 -1
  140. package/dist/toolbar.js +1 -1
  141. package/dist/tooltip-CgjIROUy.js +410 -0
  142. package/dist/tooltip.js +1 -1
  143. package/dist/{top-navigation-e-tWMGNr.js → top-navigation-DiG2PF5W.js} +2 -2
  144. package/dist/top-navigation.js +1 -1
  145. package/dist/{transfer-CqZOTLMP.js → transfer--UOQVeKE.js} +5 -5
  146. package/dist/transfer.js +1 -1
  147. package/dist/types/app-shell/app-shell-parts.d.ts +6 -4
  148. package/dist/types/app-shell/app-shell-parts.d.ts.map +1 -1
  149. package/dist/types/app-shell/app-shell.d.ts.map +1 -1
  150. package/dist/types/cascader/cascader.d.ts.map +1 -1
  151. package/dist/types/chart/chart.d.ts.map +1 -1
  152. package/dist/types/combobox/combobox-parts.d.ts.map +1 -1
  153. package/dist/types/date-picker/date-picker.d.ts.map +1 -1
  154. package/dist/types/date-range-picker/date-range-picker.d.ts.map +1 -1
  155. package/dist/types/datetime-picker/datetime-picker.d.ts.map +1 -1
  156. package/dist/types/datetime-range-picker/datetime-range-picker.d.ts.map +1 -1
  157. package/dist/types/entity-picker/entity-picker-popup.d.ts.map +1 -1
  158. package/dist/types/menu/menu-parts.d.ts.map +1 -1
  159. package/dist/types/multi-select/multi-select-parts.d.ts.map +1 -1
  160. package/dist/types/popover/popover-parts.d.ts.map +1 -1
  161. package/dist/types/scroll-area/scroll-area.d.ts.map +1 -1
  162. package/dist/types/select/select-parts.d.ts.map +1 -1
  163. package/dist/types/side-navigation/side-navigation-parts.d.ts.map +1 -1
  164. package/dist/types/stat-card/stat-card.types.d.ts +2 -2
  165. package/dist/types/stat-card/stat-card.types.d.ts.map +1 -1
  166. package/dist/types/table/table-content.d.ts.map +1 -1
  167. package/dist/types/tabs/tabs-parts.d.ts +2 -4
  168. package/dist/types/tabs/tabs-parts.d.ts.map +1 -1
  169. package/dist/types/tabs/tabs.d.ts.map +1 -1
  170. package/dist/types/time-picker/time-picker.d.ts.map +1 -1
  171. package/dist/types/time-range-picker/time-range-picker.d.ts.map +1 -1
  172. package/dist/types/tooltip/tooltip-parts.d.ts.map +1 -1
  173. package/dist/{upload-DjnlVR8y.js → upload-CLX5cURk.js} +1 -1
  174. package/dist/upload.js +1 -1
  175. package/package.json +10 -7
  176. package/dist/chart-O0ZhkzJe.js +0 -966
  177. package/dist/date-picker-D3-y2Jxw.js +0 -295
  178. package/dist/date-range-picker-y3b82Wmf.js +0 -471
  179. package/dist/datetime-picker-CIRHVLQp.js +0 -629
  180. package/dist/datetime-range-picker-DM-1m98z.js +0 -994
  181. package/dist/menu-parts-W58pVNUt.js +0 -786
  182. package/dist/scroll-area-BriwmvYY.js +0 -111
  183. package/dist/time-picker-CRQsMJbQ.js +0 -396
  184. package/dist/time-range-picker-DlZJsj1e.js +0 -745
  185. package/dist/tooltip-DbKTPe_i.js +0 -392
@@ -1,786 +0,0 @@
1
- import { n as e, t } from "./icon-T9Yt4tnm.js";
2
- /* empty css */
3
- import { r as n } from "./i18n-DpW8lqJ1.js";
4
- import { a as r } from "./kbd-defaults-CDgRhiep.js";
5
- import { createArrowNavigation as i, tabbables as a } from "@slotted/core/focus";
6
- import { createControllable as o } from "@slotted/core/state";
7
- import { createContext as s, useCallback as c, useContext as l, useEffect as u, useId as d, useImperativeHandle as f, useRef as p, useState as m } from "react";
8
- import { Fragment as ee, jsx as h, jsxs as g } from "react/jsx-runtime";
9
- import { createPresence as _ } from "@slotted/core/presence";
10
- import { createPortalRoot as v, setPortalContainer as y } from "@slotted/core/portal";
11
- import { createDismissableLayer as b } from "@slotted/core/dismissable-layer";
12
- import { createPointerIntent as x } from "@slotted/core/pointer-intent";
13
- import { createPositioner as S, submenuOffsets as C } from "@slotted/core/positioner";
14
- import { createTypeahead as w, isPrintable as T } from "@slotted/core/typeahead";
15
- import { createPortal as te } from "react-dom";
16
- import { keysMessages as E } from "@slotted/core/i18n";
17
- import { canonicalKey as D, parseShortcut as O, resolveShortcut as k } from "@slotted/core/keys";
18
- //#region src/menu/menu-defaults.tsx
19
- var A = {
20
- align: "start",
21
- alignOffset: 0,
22
- closeOnEscape: !0,
23
- closeOnOutsidePress: !0,
24
- closeOnSelect: !0,
25
- collisionPadding: 8,
26
- disabled: !1,
27
- flip: !0,
28
- hideWhenDetached: !0,
29
- loop: !0,
30
- mount: "active",
31
- openOnHover: !0,
32
- portal: !0,
33
- shift: !0,
34
- side: "bottom",
35
- sideOffset: 0,
36
- size: "md",
37
- strategy: "absolute",
38
- submenuCloseDelay: 300,
39
- submenuOpenDelay: 150,
40
- typeahead: !0,
41
- typeaheadTimeout: 500
42
- }, j = s(A);
43
- function ne() {
44
- return l(j);
45
- }
46
- function M({ children: e, container: t, ...n }) {
47
- let r = ne(), i = p(null);
48
- u(() => {
49
- if (t !== void 0) return i.current = t, y(t), () => y(null);
50
- }, [t]);
51
- let a = {
52
- align: n.align ?? r.align,
53
- alignOffset: n.alignOffset ?? r.alignOffset,
54
- closeOnEscape: n.closeOnEscape ?? r.closeOnEscape,
55
- closeOnOutsidePress: n.closeOnOutsidePress ?? r.closeOnOutsidePress,
56
- closeOnSelect: n.closeOnSelect ?? r.closeOnSelect,
57
- collisionPadding: n.collisionPadding ?? r.collisionPadding,
58
- disabled: n.disabled ?? r.disabled,
59
- flip: n.flip ?? r.flip,
60
- hideWhenDetached: n.hideWhenDetached ?? r.hideWhenDetached,
61
- loop: n.loop ?? r.loop,
62
- mount: n.mount ?? r.mount,
63
- openOnHover: n.openOnHover ?? r.openOnHover,
64
- portal: n.portal ?? r.portal,
65
- shift: n.shift ?? r.shift,
66
- side: n.side ?? r.side,
67
- sideOffset: n.sideOffset ?? r.sideOffset,
68
- size: n.size ?? r.size,
69
- strategy: n.strategy ?? r.strategy,
70
- submenuCloseDelay: n.submenuCloseDelay ?? r.submenuCloseDelay,
71
- submenuOpenDelay: n.submenuOpenDelay ?? r.submenuOpenDelay,
72
- typeahead: n.typeahead ?? r.typeahead,
73
- typeaheadTimeout: n.typeaheadTimeout ?? r.typeaheadTimeout
74
- };
75
- return /* @__PURE__ */ h(j.Provider, {
76
- value: a,
77
- children: e
78
- });
79
- }
80
- //#endregion
81
- //#region src/menu/menu.tsx
82
- var N = s(void 0), P = s(null), F = s(null), I = P.Provider, L = F.Provider;
83
- function R() {
84
- return l(P);
85
- }
86
- function re() {
87
- return l(F);
88
- }
89
- function z() {
90
- let e = l(N);
91
- if (e === void 0) throw Error("MenuTrigger, MenuContent and every item have to be inside a Menu.");
92
- return e;
93
- }
94
- function ie(e, t) {
95
- return e === void 0 ? null : typeof e == "string" ? t?.querySelector(e) ?? null : e instanceof Element ? e : e.current ?? null;
96
- }
97
- function B({ align: e, alignOffset: t, anchor: n, children: r, closeOnEscape: i, closeOnOutsidePress: a, closeOnSelect: s, collisionPadding: l, defaultOpen: u, disabled: ee, finalFocus: g, flip: _, hideWhenDetached: v, loop: y, mount: b, onOpenChange: x, open: S, openOnHover: C, portal: w, ref: T, shift: te, side: E, sideOffset: D, size: O, strategy: k, submenuCloseDelay: A, submenuOpenDelay: j, typeahead: M, typeaheadTimeout: P, value: F }) {
98
- let I = ne(), L = R(), z = re(), B = L === null && z !== null, V = d(), H = F ?? V, ae = `${V}menu`, oe = `${V}trigger`, [U, W] = m(u ?? !1), [G, K] = m(null), [q, J] = m(null), Y = ee ?? I.disabled, X = (B ? z?.value === H : S ?? U) && !Y, Z = p(X);
99
- X && (Z.current = !0);
100
- let se = p("first"), ce = p({
101
- contentNode: q,
102
- current: X,
103
- finalFocus: g,
104
- identity: H,
105
- menubar: z,
106
- onBar: B,
107
- onOpenChange: x,
108
- open: S,
109
- parent: L,
110
- triggerNode: G
111
- });
112
- ce.current = {
113
- contentNode: q,
114
- current: X,
115
- finalFocus: g,
116
- identity: H,
117
- menubar: z,
118
- onBar: B,
119
- onOpenChange: x,
120
- open: S,
121
- parent: L,
122
- triggerNode: G
123
- };
124
- let Q = c((e, t, n) => {
125
- let r = ce.current;
126
- if (e === r.current) return;
127
- let i = !1, a = o({
128
- controlled: r.onBar ? void 0 : r.open,
129
- initial: r.current,
130
- onRequest: (e) => {
131
- i = e.cancelled, r.onOpenChange?.(e.value, e);
132
- }
133
- }).request(e, t, n);
134
- i || (r.onBar && r.menubar !== null ? e ? r.menubar.open(r.identity, t, n) : r.menubar.close(t, n) : a && W(e), !e && t !== "outsidePress" && t !== "programmatic" && (ie(r.finalFocus, r.contentNode) ?? r.triggerNode)?.focus({ preventScroll: !0 }));
135
- }, []);
136
- f(T, () => ({
137
- close: () => Q(!1, "programmatic"),
138
- open: () => Q(!0, "programmatic"),
139
- focus: () => ce.current.triggerNode?.focus({ preventScroll: !0 })
140
- }), [Q]);
141
- let le = L === null ? B && z?.orientation === "vertical" ? "inline-end" : void 0 : "inline-end", ue = {
142
- align: e ?? (L === null ? I.align : "start"),
143
- alignOffset: t ?? I.alignOffset,
144
- anchor: n ?? null,
145
- closeOnEscape: i ?? I.closeOnEscape,
146
- closeOnOutsidePress: a ?? I.closeOnOutsidePress,
147
- closeOnSelect: s ?? I.closeOnSelect,
148
- collisionPadding: l ?? I.collisionPadding,
149
- contentId: ae,
150
- contentNode: q,
151
- disabled: Y || B && (z?.disabled ?? !1),
152
- entry: se,
153
- flip: _ ?? I.flip,
154
- hideWhenDetached: v ?? I.hideWhenDetached,
155
- identity: H,
156
- loop: y ?? I.loop,
157
- menubar: z,
158
- mount: b ?? I.mount,
159
- open: X,
160
- openOnHover: C ?? I.openOnHover,
161
- parent: L,
162
- portal: w ?? I.portal,
163
- seen: Z.current,
164
- setContentNode: J,
165
- setTriggerNode: K,
166
- shift: te ?? I.shift,
167
- side: E ?? le ?? I.side,
168
- sideOffset: D ?? I.sideOffset,
169
- onBar: B,
170
- size: O ?? (B ? z?.size : void 0) ?? I.size,
171
- strategy: k ?? I.strategy,
172
- submenuCloseDelay: A ?? I.submenuCloseDelay,
173
- submenuOpenDelay: j ?? I.submenuOpenDelay,
174
- toggle: Q,
175
- triggerId: oe,
176
- triggerNode: G,
177
- typeahead: M ?? I.typeahead,
178
- typeaheadTimeout: P ?? I.typeaheadTimeout
179
- };
180
- return /* @__PURE__ */ h(N.Provider, {
181
- value: ue,
182
- children: r
183
- });
184
- }
185
- //#endregion
186
- //#region src/menu/menu-items.tsx
187
- function V(e, t) {
188
- return (n) => {
189
- e?.(n), n.defaultPrevented || t(n);
190
- };
191
- }
192
- var H = {
193
- alt: "Alt",
194
- ctrl: "Control",
195
- meta: "Meta",
196
- shift: "Shift"
197
- };
198
- function ae(e, t) {
199
- let n = O(e);
200
- if (n.length === 1) return n[0]?.map((e) => {
201
- let n = D(e);
202
- if (n === "mod") return t === "mac" ? "Meta" : "Control";
203
- if (n !== void 0 && n in H) return H[n];
204
- let r = n ?? e;
205
- return r.length === 1 ? r.toUpperCase() : `${r[0]?.toUpperCase()}${r.slice(1)}`;
206
- }).join("+");
207
- }
208
- function oe(e, t, n) {
209
- let r = k(e, {
210
- platform: t,
211
- t: n
212
- });
213
- return r.steps.map((e) => e.map((e) => e.legend).join(r.separator)).join(` ${r.thenLabel} `);
214
- }
215
- function U({ children: e, ...t }) {
216
- return /* @__PURE__ */ h("span", {
217
- ...t,
218
- "data-part": "icon",
219
- children: e
220
- });
221
- }
222
- function W({ children: e, ...t }) {
223
- return /* @__PURE__ */ h("span", {
224
- ...t,
225
- "data-part": "label",
226
- children: e
227
- });
228
- }
229
- function G({ children: e, ...t }) {
230
- return /* @__PURE__ */ h("span", {
231
- ...t,
232
- "data-part": "description",
233
- children: e
234
- });
235
- }
236
- function K({ children: e, ...t }) {
237
- return /* @__PURE__ */ h("span", {
238
- ...t,
239
- "data-part": "meta",
240
- children: e
241
- });
242
- }
243
- function q({ children: e, keys: t, ...i }) {
244
- let a = r(void 0), o = n(E);
245
- return /* @__PURE__ */ h("span", {
246
- ...i,
247
- ...t === void 0 ? {} : { "aria-hidden": !0 },
248
- "data-part": "shortcut",
249
- children: t === void 0 ? e : oe(t, a, o)
250
- });
251
- }
252
- function J({ checked: e, children: t, closeOnSelect: n, closesByDefault: i, commit: a, description: o, disabled: s, icon: c, indicator: l, meta: u, onSelect: f, ref: p, render: m, role: _ = "menuitem", shortcut: v, textValue: y, tone: b, ...x }) {
253
- let S = z(), C = R(), w = r(void 0), T = `${d()}description`, te = (e, t) => {
254
- if (s === !0) return;
255
- a?.(e, t);
256
- let r = !1;
257
- f?.({
258
- reason: e,
259
- source: t,
260
- get defaultPrevented() {
261
- return r;
262
- },
263
- preventDefault: () => {
264
- r = !0;
265
- }
266
- }), !r && (n ?? i ?? S.closeOnSelect) && C?.closeAll("select", t);
267
- }, E = (e) => {
268
- te(e.detail === 0 ? "keyboard" : "pointer", e.nativeEvent);
269
- }, D = (e) => {
270
- if (e.key === " " && _ !== "menuitem") {
271
- if (e.preventDefault(), s === !0) return;
272
- a?.("keyboard", e.nativeEvent), f?.({
273
- reason: "keyboard",
274
- source: e.nativeEvent,
275
- defaultPrevented: !0,
276
- preventDefault: () => void 0
277
- });
278
- }
279
- }, O = (e) => {
280
- let t = e.currentTarget;
281
- t.ownerDocument.activeElement !== t && t.focus({ preventScroll: !0 });
282
- }, k = (e) => {
283
- let t = e.currentTarget;
284
- t.ownerDocument.activeElement === t && C?.openItem !== t && C?.node?.focus({ preventScroll: !0 });
285
- }, A = {
286
- ...x,
287
- children: /* @__PURE__ */ g(ee, { children: [
288
- l,
289
- c === void 0 ? null : /* @__PURE__ */ h(U, { children: c }),
290
- /* @__PURE__ */ h(W, { children: t }),
291
- o === void 0 ? null : /* @__PURE__ */ h(G, {
292
- id: T,
293
- children: o
294
- }),
295
- u === void 0 ? null : /* @__PURE__ */ h(K, { children: u }),
296
- v === void 0 ? null : /* @__PURE__ */ h(q, { keys: v })
297
- ] }),
298
- ...e === void 0 ? {} : { "aria-checked": e },
299
- ...o === void 0 ? {} : { "aria-describedby": T },
300
- ...e ? { "data-checked": "" } : {},
301
- ...s === !0 ? {
302
- "aria-disabled": !0,
303
- "data-disabled": ""
304
- } : {},
305
- ...v === void 0 ? {} : { "aria-keyshortcuts": ae(v, w) },
306
- ...y === void 0 ? {} : { "data-text-value": y },
307
- ...b === void 0 ? {} : { "data-tone": b },
308
- "data-part": "item",
309
- onClick: V(x.onClick, E),
310
- onKeyDown: V(x.onKeyDown, D),
311
- onPointerLeave: V(x.onPointerLeave, k),
312
- onPointerMove: V(x.onPointerMove, O),
313
- role: _,
314
- tabIndex: -1
315
- }, j = (e) => {
316
- typeof p == "function" ? p(e) : p != null && (p.current = e);
317
- };
318
- return m === void 0 ? /* @__PURE__ */ h("button", {
319
- type: "button",
320
- ...A,
321
- ref: p
322
- }) : m({
323
- ...A,
324
- ref: j
325
- });
326
- }
327
- function Y(e) {
328
- return /* @__PURE__ */ h(J, { ...e });
329
- }
330
- function X({ checked: e, defaultChecked: t, onCheckedChange: n, ...r }) {
331
- let [i, a] = m(t ?? !1), s = e ?? i, c = (t, r) => {
332
- o({
333
- controlled: e,
334
- initial: s,
335
- onRequest: (e) => n?.(e.value, e)
336
- }).request(!s, t, r) && a(!s);
337
- };
338
- return /* @__PURE__ */ h(J, {
339
- ...r,
340
- checked: s,
341
- closesByDefault: !1,
342
- commit: c,
343
- indicator: /* @__PURE__ */ h(Z, { glyph: "check" }),
344
- role: "menuitemcheckbox"
345
- });
346
- }
347
- function Z({ glyph: n }) {
348
- return /* @__PURE__ */ h("span", {
349
- "data-part": "indicator",
350
- children: /* @__PURE__ */ h(t, { children: /* @__PURE__ */ h(e, { name: n }) })
351
- });
352
- }
353
- var se = s(null);
354
- function ce({ children: e, defaultValue: t, onValueChange: n, value: r, ...i }) {
355
- let [a, s] = m(t), l = r ?? a, u = c((e, t, i) => {
356
- o({
357
- controlled: r,
358
- initial: l ?? "",
359
- onRequest: (e) => n?.(e.value, e)
360
- }).request(e, t, i) && s(e);
361
- }, [
362
- l,
363
- n,
364
- r
365
- ]);
366
- return /* @__PURE__ */ h("div", {
367
- ...i,
368
- "data-part": "group",
369
- role: "group",
370
- children: /* @__PURE__ */ h(se.Provider, {
371
- value: {
372
- select: u,
373
- value: l
374
- },
375
- children: e
376
- })
377
- });
378
- }
379
- function Q({ value: e, ...t }) {
380
- let n = l(se);
381
- if (n === null) throw Error("MenuRadioItem has to be inside a MenuRadioGroup.");
382
- return /* @__PURE__ */ h(J, {
383
- ...t,
384
- checked: n.value === e,
385
- closesByDefault: !1,
386
- commit: (t, r) => n.select(e, t, r),
387
- indicator: /* @__PURE__ */ h(Z, { glyph: "dot" }),
388
- role: "menuitemradio"
389
- });
390
- }
391
- function le({ children: e, label: t, ...n }) {
392
- let r = `${d()}group`;
393
- return /* @__PURE__ */ g("div", {
394
- ...n,
395
- ...t === void 0 ? {} : { "aria-labelledby": r },
396
- "data-part": "group",
397
- role: "group",
398
- children: [t === void 0 ? null : /* @__PURE__ */ h(ue, {
399
- id: r,
400
- children: t
401
- }), e]
402
- });
403
- }
404
- function ue({ children: e, ...t }) {
405
- return /* @__PURE__ */ h("div", {
406
- ...t,
407
- "data-part": "group-label",
408
- children: e
409
- });
410
- }
411
- function de({ children: e, id: t, ...n }) {
412
- let r = R(), i = `${d()}header`, a = t ?? i, o = r?.setHeaderId;
413
- return u(() => (o?.(a), () => o?.(null)), [a, o]), /* @__PURE__ */ h("div", {
414
- ...n,
415
- "data-part": "header",
416
- id: a,
417
- children: e
418
- });
419
- }
420
- function fe(e) {
421
- return /* @__PURE__ */ h("hr", {
422
- ...e,
423
- "aria-orientation": "horizontal",
424
- "data-part": "separator",
425
- role: "separator"
426
- });
427
- }
428
- function pe({ children: e, ...t }) {
429
- return /* @__PURE__ */ h("div", {
430
- ...t,
431
- "data-part": "empty",
432
- children: e
433
- });
434
- }
435
- //#endregion
436
- //#region src/menu/menu-parts.tsx
437
- function $(e, t) {
438
- return (n) => {
439
- e?.(n), n.defaultPrevented || t(n);
440
- };
441
- }
442
- function me(e, ...t) {
443
- for (let n of t) typeof n == "function" ? n(e) : n != null && (n.current = e);
444
- }
445
- var he = "[data-part='item']", ge = (e) => e === null ? [] : [...e.querySelectorAll(he)], _e = (e) => e.dataset.textValue ?? e.querySelector("[data-part='label']")?.textContent?.trim() ?? e.textContent?.trim() ?? "", ve = (e) => e.dataset.disabled === void 0;
446
- function ye(e) {
447
- e.focus({ preventScroll: !0 });
448
- let t = e.closest("[data-part='content']");
449
- if (t === null) return;
450
- let n = t.getBoundingClientRect(), r = e.getBoundingClientRect();
451
- r.top < n.top ? t.scrollTop -= n.top - r.top : r.bottom > n.bottom && (t.scrollTop += r.bottom - n.bottom);
452
- }
453
- function be(e, t) {
454
- let n = ge(e), r = n[t < 0 ? n.length + t : t];
455
- r !== void 0 && ye(r);
456
- }
457
- function xe(e, t) {
458
- let n = ge(e), r = t === "first" ? n : [...n].reverse(), i = r.find(ve) ?? r[0];
459
- i !== void 0 && ye(i);
460
- }
461
- var Se = (e) => e !== null && getComputedStyle(e).direction === "rtl" ? "rtl" : "ltr";
462
- function Ce(e, t) {
463
- if (e === null) return;
464
- let n = a(e.ownerDocument.body), r = n.indexOf(e);
465
- if (r === -1) return void e.focus({ preventScroll: !0 });
466
- (n[r + t] ?? e).focus({ preventScroll: !0 });
467
- }
468
- function we({ children: n, icon: r, meta: i, ref: a, render: o, ...s }) {
469
- let l = z(), d = l.parent, f = l.onBar, _ = l.menubar, [v, y] = m(null), b = p(void 0), S = p(null), C = p({
470
- menu: l,
471
- node: v
472
- });
473
- C.current = {
474
- menu: l,
475
- node: v
476
- };
477
- let w = c(() => {
478
- b.current !== void 0 && clearTimeout(b.current), b.current = void 0, S.current?.destroy(), S.current = null;
479
- }, []);
480
- u(() => w, [w]), u(() => {
481
- l.setTriggerNode(v);
482
- }, [l, v]), u(() => {
483
- if (f && _ !== null) return _.register(l.identity, v), () => _.register(l.identity, null);
484
- }, [
485
- _,
486
- l.identity,
487
- v,
488
- f
489
- ]);
490
- let T = (e, t, n) => {
491
- l.entry.current = t, l.toggle(!0, e, n);
492
- }, te = (e) => {
493
- l.disabled || l.open && d !== null || (l.entry.current = "first", l.toggle(!l.open, "pointer", e.nativeEvent));
494
- }, E = (e) => {
495
- if (l.disabled) return;
496
- let t = Se(v) === "rtl" ? "ArrowLeft" : "ArrowRight", n = _?.orientation === "vertical", r = d === null && (!f || !n) && e.key === "ArrowDown", i = d === null && (!f || !n) && e.key === "ArrowUp", a = e.key === t && (d !== null || f && n);
497
- if (r || a) {
498
- e.preventDefault(), e.stopPropagation(), T("keyboard", "first", e.nativeEvent);
499
- return;
500
- }
501
- if (i) {
502
- e.preventDefault(), T("keyboard", "last", e.nativeEvent);
503
- return;
504
- }
505
- d !== null && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.stopPropagation(), T("keyboard", "first", e.nativeEvent));
506
- }, D = (e) => {
507
- if (!l.disabled) {
508
- if (w(), d !== null) {
509
- if (d.setOpenItem(v), !l.openOnHover || l.open) return;
510
- b.current = setTimeout(() => T("pointer", "first", e.nativeEvent), l.submenuOpenDelay);
511
- return;
512
- }
513
- f && _ !== null && _.value !== void 0 && _.value !== l.contentId && (v?.focus({ preventScroll: !0 }), T("pointer", "first", e.nativeEvent));
514
- }
515
- }, O = (e) => {
516
- if (b.current !== void 0 && (clearTimeout(b.current), b.current = void 0), d === null || !l.open) return;
517
- let t = l.contentNode;
518
- t !== null && (S.current?.destroy(), S.current = x({
519
- target: () => t.getBoundingClientRect(),
520
- origin: () => v?.getBoundingClientRect() ?? null,
521
- timeout: l.submenuCloseDelay,
522
- onSettled: () => {
523
- let n = C.current;
524
- n.node?.matches(":hover") || t.matches(":hover") || n.menu.toggle(!1, "pointer", e.nativeEvent);
525
- }
526
- }));
527
- }, k = c((e) => {
528
- y(e), me(e, a);
529
- }, [a]), A = d === null ? n : /* @__PURE__ */ g(ee, { children: [
530
- r === void 0 ? null : /* @__PURE__ */ h(U, { children: r }),
531
- /* @__PURE__ */ h(W, { children: n }),
532
- i === void 0 ? null : /* @__PURE__ */ h(K, { children: i }),
533
- /* @__PURE__ */ h(t, {
534
- directional: !0,
535
- children: /* @__PURE__ */ h(e, { name: "chevron-right" })
536
- })
537
- ] }), j = {
538
- type: "button",
539
- ...s,
540
- children: A,
541
- "aria-controls": l.open ? l.contentId : void 0,
542
- "aria-expanded": l.open,
543
- "aria-haspopup": "menu",
544
- id: l.triggerId,
545
- ...l.disabled ? {
546
- "aria-disabled": !0,
547
- "data-disabled": ""
548
- } : {},
549
- ...l.open ? { "data-open": "" } : {},
550
- ...d === null ? f ? {
551
- role: "menuitem",
552
- "data-part": "trigger"
553
- } : {} : {
554
- role: "menuitem",
555
- "data-part": "item",
556
- tabIndex: -1
557
- },
558
- onClick: $(s.onClick, te),
559
- onKeyDown: $(s.onKeyDown, E),
560
- onPointerEnter: $(s.onPointerEnter, D),
561
- onPointerLeave: $(s.onPointerLeave, O)
562
- };
563
- return o === void 0 ? /* @__PURE__ */ h("button", {
564
- ...j,
565
- ref: k
566
- }) : o({
567
- ...j,
568
- ref: k
569
- });
570
- }
571
- function Te({ children: e, loading: t, ref: n, render: r, ...a }) {
572
- let o = z(), s = o.parent, [l, d] = m(null), [f, ee] = m(null), [g, y] = m(null), [x, E] = m("unmounted"), [D, O] = m(!1), [k, A] = m(null), [j, ne] = m(null), M = p(null), N = p(null), P = p({
573
- menu: o,
574
- surfaceNode: f
575
- });
576
- P.current = {
577
- menu: o,
578
- surfaceNode: f
579
- }, u(() => {
580
- let e = _({
581
- present: P.current.menu.open,
582
- onStatusChange: E
583
- });
584
- return M.current = e, E(e.status), () => {
585
- e.destroy(), M.current = null;
586
- };
587
- }, []), u(() => {
588
- M.current?.sync(o.open);
589
- }, [o.open]), u(() => {
590
- M.current?.setNode(l);
591
- }, [l]), u(() => {
592
- o.setContentNode(f);
593
- }, [o, f]);
594
- let F = o.mount === "eager" || o.mount === "lazy" && o.seen || x !== "unmounted";
595
- u(() => {
596
- if (!F) {
597
- y(null);
598
- return;
599
- }
600
- let e = v({
601
- origin: o.triggerNode,
602
- disabled: !o.portal
603
- });
604
- return y(e.container), () => e.release();
605
- }, [
606
- o.portal,
607
- o.triggerNode,
608
- F
609
- ]);
610
- let { align: L, alignOffset: R, collisionPadding: re, flip: ie, hideWhenDetached: B, shift: V, side: H, sideOffset: ae, strategy: oe } = o, U = o.anchor ?? o.triggerNode;
611
- u(() => {
612
- if (l === null || U === null) return;
613
- let e = !0, t = o.parent !== null && f !== null && o.triggerNode !== null ? C({
614
- parentSurface: o.parent.node,
615
- item: o.triggerNode,
616
- surface: f
617
- }) : {
618
- sideOffset: 0,
619
- alignOffset: 0
620
- }, n = S(U, l, {
621
- align: L,
622
- alignOffset: R + t.alignOffset,
623
- boundaryPadding: re,
624
- flip: ie,
625
- hideWhenDetached: B,
626
- shift: V,
627
- side: H,
628
- sideOffset: ae + t.sideOffset,
629
- strategy: oe
630
- });
631
- return n.update().then(() => {
632
- e && O(!0);
633
- }), () => {
634
- e = !1, n.destroy(), O(!1);
635
- };
636
- }, [
637
- L,
638
- R,
639
- U,
640
- re,
641
- ie,
642
- B,
643
- l,
644
- o.parent,
645
- o.triggerNode,
646
- V,
647
- H,
648
- ae,
649
- oe,
650
- f
651
- ]), u(() => {
652
- if (l === null || !o.open) return;
653
- let e = [o.triggerNode, s?.node ?? null].filter((e) => e !== null), t = b(l, {
654
- branches: e,
655
- escape: o.closeOnEscape,
656
- focusOutside: !1,
657
- modal: !1,
658
- outsidePress: o.closeOnOutsidePress,
659
- scrollLock: !1,
660
- onDismiss: (e) => {
661
- let t = e.reason === "escape" ? "escape" : "outsidePress";
662
- P.current.menu.toggle(!1, t, e.source), t === "outsidePress" && s?.closeAll("outsidePress", e.source);
663
- }
664
- });
665
- return () => t.destroy();
666
- }, [
667
- l,
668
- o.closeOnEscape,
669
- o.closeOnOutsidePress,
670
- o.open,
671
- o.triggerNode,
672
- s
673
- ]), u(() => {
674
- if (f === null) return;
675
- let e = i(f, {
676
- focus: ye,
677
- includeAriaDisabled: !0,
678
- itemSelector: he,
679
- loop: () => P.current.menu.loop,
680
- orientation: () => "vertical"
681
- });
682
- return () => e.destroy();
683
- }, [f]), u(() => {
684
- if (!o.typeahead) return;
685
- let e = w({ timeout: o.typeaheadTimeout });
686
- return N.current = e, () => {
687
- e.destroy(), N.current = null;
688
- };
689
- }, [o.typeahead, o.typeaheadTimeout]), u(() => {
690
- if (!o.open || f === null || !D) return;
691
- let e = o.onBar ? o.menubar : null, t = e === null ? o.entry.current : e.entry.current;
692
- o.entry.current = "first", e !== null && (e.entry.current = "first"), t !== "trigger" && xe(f, t);
693
- }, [
694
- o.entry,
695
- o.menubar,
696
- o.onBar,
697
- o.open,
698
- D,
699
- f
700
- ]), u(() => {
701
- o.open || (A(null), N.current?.reset());
702
- }, [o.open]);
703
- let W = c((e, t) => {
704
- P.current.menu.toggle(!1, e, t), s?.closeAll(e, t);
705
- }, [s]), G = {
706
- close: (e, t) => o.toggle(!1, e, t),
707
- closeAll: W,
708
- depth: (s?.depth ?? -1) + 1,
709
- focusItem: (e) => be(f, e),
710
- node: f,
711
- openItem: k,
712
- rootTrigger: s?.rootTrigger ?? o.triggerNode,
713
- setHeaderId: ne,
714
- setOpenItem: A
715
- }, K = [a["aria-describedby"], j].filter(Boolean).join(" ") || void 0, q = (e) => {
716
- let t = Se(f), n = t === "rtl" ? "ArrowRight" : "ArrowLeft", r = t === "rtl" ? "ArrowLeft" : "ArrowRight", i = o.menubar;
717
- if (e.key === "Tab") {
718
- e.preventDefault();
719
- let t = G.rootTrigger;
720
- W("dismiss", e.nativeEvent), i?.close("dismiss", e.nativeEvent), Ce(t, e.shiftKey ? -1 : 1);
721
- return;
722
- }
723
- if (e.key === n) {
724
- if (s !== null) {
725
- e.preventDefault(), o.toggle(!1, "keyboard", e.nativeEvent);
726
- return;
727
- }
728
- if (i !== null) {
729
- e.preventDefault(), i.step(-1, {
730
- open: !0,
731
- focus: !0
732
- });
733
- return;
734
- }
735
- }
736
- if (e.key === r && i !== null) {
737
- e.preventDefault(), W("keyboard", e.nativeEvent), i.step(1, {
738
- open: !0,
739
- focus: !0
740
- });
741
- return;
742
- }
743
- if (!o.typeahead || N.current === null || e.ctrlKey || e.metaKey || e.altKey || !T(e.key, N.current.query.length > 0)) return;
744
- e.preventDefault();
745
- let a = ge(f), c = a.findIndex((t) => t === e.target), l = N.current.match(e.key, a.map(_e), c);
746
- l !== -1 && be(f, l);
747
- }, J = c((e) => {
748
- d(e), me(e, n);
749
- }, [n]);
750
- if (!F) return null;
751
- let Y = {
752
- "data-align": L,
753
- ...o.open ? {} : { inert: !0 },
754
- ...o.open && D ? { "data-open": "" } : {},
755
- "data-part": "root",
756
- "data-size": o.size,
757
- "data-ui": "menu"
758
- }, X = /* @__PURE__ */ h("div", {
759
- ...Y,
760
- ref: J,
761
- children: /* @__PURE__ */ h("div", {
762
- ...a,
763
- "aria-busy": t === !0 || void 0,
764
- "aria-describedby": K,
765
- "aria-labelledby": a["aria-label"] === void 0 ? o.triggerId : void 0,
766
- "data-loading": t === !0 ? "" : void 0,
767
- "data-part": "content",
768
- id: o.contentId,
769
- onKeyDown: $(a.onKeyDown, q),
770
- ref: ee,
771
- role: "menu",
772
- tabIndex: -1,
773
- children: /* @__PURE__ */ h(I, {
774
- value: G,
775
- children: e
776
- })
777
- })
778
- }), Z = r === void 0 ? X : r({
779
- ...Y,
780
- children: e,
781
- ref: J
782
- });
783
- return g === null ? Z : te(Z, g);
784
- }
785
- //#endregion
786
- export { A as C, re as S, ne as T, B as _, le as a, z as b, Y as c, W as d, K as f, fe as g, Q as h, pe as i, G as l, ce as m, we as n, ue as o, q as p, X as r, de as s, Te as t, U as u, I as v, M as w, R as x, L as y };