@slotted/react 0.1.0-beta.3 → 0.1.0-beta.5

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 (245) hide show
  1. package/README.md +16 -1
  2. package/dist/{accordion-D-YuMJzk.js → accordion-lCqrmQ3w.js} +43 -43
  3. package/dist/accordion.js +1 -1
  4. package/dist/{action-bar-OACchRZw.js → action-bar-ti3e6FK1.js} +1 -1
  5. package/dist/action-bar.js +1 -1
  6. package/dist/{app-shell-CmYvnu_7.js → app-shell-nnSP44OO.js} +271 -267
  7. package/dist/app-shell.js +1 -1
  8. package/dist/bin/slotted-agent-docs.mjs +297 -0
  9. package/dist/calendar-BZ6PP7Ke.js +436 -0
  10. package/dist/calendar.js +1 -1
  11. package/dist/{cascader-D1AhTyBL.js → cascader-Cn2Acpcv.js} +227 -210
  12. package/dist/cascader.js +1 -1
  13. package/dist/chart-04i6NZQA.js +968 -0
  14. package/dist/chart.js +1 -1
  15. package/dist/{checkbox-DfxFHZaU.js → checkbox-B4Sb1eXj.js} +3 -3
  16. package/dist/{checkbox-group-9sDgrV5Z.js → checkbox-group-LpGMuq9w.js} +2 -2
  17. package/dist/checkbox-group.js +1 -1
  18. package/dist/checkbox.js +1 -1
  19. package/dist/{code-block-CFHf8uTm.js → code-block-CTNiyt0U.js} +1 -1
  20. package/dist/code-block.js +1 -1
  21. package/dist/{collapsible-CGo49NNW.js → collapsible-F-K36XbF.js} +17 -17
  22. package/dist/collapsible.js +1 -1
  23. package/dist/{color-picker-CwbWzCKg.js → color-picker-BcRCeISx.js} +4 -4
  24. package/dist/color-picker.js +1 -1
  25. package/dist/{column-manager-CTtizVhm.js → column-manager-BtkYLs5G.js} +4 -4
  26. package/dist/column-manager.js +1 -1
  27. package/dist/{combobox-BVMI9lg8.js → combobox-C1D5doWM.js} +227 -198
  28. package/dist/combobox.js +1 -1
  29. package/dist/{context-menu-BuST6W94.js → context-menu-B00UIBVC.js} +1 -1
  30. package/dist/context-menu.js +1 -1
  31. package/dist/{currency-field-DD9A5U3D.js → currency-field-Dti9JFu0.js} +1 -1
  32. package/dist/currency-field.js +1 -1
  33. package/dist/{dashboard-grid-CBMP_-JV.js → dashboard-grid-CoLKLvYL.js} +1 -1
  34. package/dist/dashboard-grid.js +1 -1
  35. package/dist/{data-grid-BKaGMqIm.js → data-grid-DX95Y7mY.js} +18 -18
  36. package/dist/data-grid.js +1 -1
  37. package/dist/{data-list-oICmxGkA.js → data-list-CWYTPNm-.js} +2 -2
  38. package/dist/data-list.js +1 -1
  39. package/dist/date-field-BxEpqAPg.js +290 -0
  40. package/dist/date-field.js +1 -1
  41. package/dist/date-picker-DRk9SZp1.js +308 -0
  42. package/dist/date-picker.js +1 -1
  43. package/dist/date-range-picker-6Yz7avTS.js +483 -0
  44. package/dist/date-range-picker.js +1 -1
  45. package/dist/{datetime-field-B8TrmsDK.js → datetime-field-D2f9u6im.js} +1 -1
  46. package/dist/datetime-field.js +1 -1
  47. package/dist/datetime-picker-STqSWMkH.js +645 -0
  48. package/dist/datetime-picker.js +1 -1
  49. package/dist/datetime-range-picker-DQNQwr3K.js +1000 -0
  50. package/dist/datetime-range-picker.js +1 -1
  51. package/dist/{detail-panel-qOJiNuzr.js → detail-panel-z6WGleP4.js} +3 -3
  52. package/dist/detail-panel.js +1 -1
  53. package/dist/docs/AGENTS.snippet.md +2 -0
  54. package/dist/docs/app-shell.examples.md +1 -1
  55. package/dist/docs/app-shell.json +4 -4
  56. package/dist/docs/app-shell.md +2 -2
  57. package/dist/docs/calendar.json +7 -0
  58. package/dist/docs/calendar.md +1 -0
  59. package/dist/docs/collapsible.json +1 -1
  60. package/dist/docs/collapsible.md +1 -1
  61. package/dist/docs/date-field.json +8 -1
  62. package/dist/docs/date-field.md +2 -1
  63. package/dist/docs/date-picker.examples.md +29 -0
  64. package/dist/docs/date-picker.json +16 -1
  65. package/dist/docs/date-picker.md +2 -1
  66. package/dist/docs/guidelines/README.md +2 -2
  67. package/dist/docs/guidelines/composition.md +10 -0
  68. package/dist/docs/guidelines/index.md +3 -1
  69. package/dist/docs/guidelines/list-pages.md +12 -1
  70. package/dist/docs/guidelines/own-elements.md +1 -1
  71. package/dist/docs/page-header.json +1 -0
  72. package/dist/docs/page-header.md +1 -1
  73. package/dist/docs/page.json +1 -0
  74. package/dist/docs/page.md +1 -0
  75. package/dist/docs/select.json +1 -1
  76. package/dist/docs/select.md +1 -1
  77. package/dist/docs/skills/build-own-element/SKILL.md +6 -6
  78. package/dist/docs/skills/compose-screen/SKILL.md +13 -6
  79. package/dist/docs/skills/review-screen/SKILL.md +6 -6
  80. package/dist/docs/skills/theme-app/SKILL.md +1 -1
  81. package/dist/docs/skills/waiting-states/SKILL.md +2 -2
  82. package/dist/docs/table.json +13 -0
  83. package/dist/docs/table.md +3 -1
  84. package/dist/docs/tabs.json +22 -4
  85. package/dist/docs/tabs.md +6 -3
  86. package/dist/docs/text-field.json +1 -1
  87. package/dist/docs/text-field.md +1 -1
  88. package/dist/{entity-picker-CPDd73JR.js → entity-picker-BdySwW8F.js} +274 -256
  89. package/dist/entity-picker.js +1 -1
  90. package/dist/{event-calendar-CnF3iIZD.js → event-calendar-CiphPXdV.js} +4 -4
  91. package/dist/event-calendar.js +1 -1
  92. package/dist/{field-NJaCxl2h.js → field-BxQFpOXS.js} +1 -1
  93. package/dist/{field-group-hAzVa2O9.js → field-group-DcN_hiZN.js} +1 -1
  94. package/dist/field-group.js +1 -1
  95. package/dist/field.js +1 -1
  96. package/dist/{filter-bar-D_xDcAp2.js → filter-bar-C_dXljI_.js} +10 -10
  97. package/dist/filter-bar.js +1 -1
  98. package/dist/{hover-card-BJE5dtaQ.js → hover-card-DpVzwvDJ.js} +1 -1
  99. package/dist/hover-card.js +1 -1
  100. package/dist/{import-export-center-DpY2DGBZ.js → import-export-center-BQnMJz4g.js} +3 -3
  101. package/dist/import-export-center.js +1 -1
  102. package/dist/index.js +68 -68
  103. package/dist/{listbox-Dv856z9I.js → listbox-D0MJcAMm.js} +1 -1
  104. package/dist/listbox.js +1 -1
  105. package/dist/{markdown-CeG8mUbI.js → markdown-IiVoh6yi.js} +2 -2
  106. package/dist/markdown.js +1 -1
  107. package/dist/menu-parts-D6v_mz6O.js +809 -0
  108. package/dist/menu.js +1 -1
  109. package/dist/{menubar-b2CruimJ.js → menubar-DApIg1eR.js} +1 -1
  110. package/dist/menubar.js +1 -1
  111. package/dist/{multi-select-DQ5ds0fX.js → multi-select-B8z6ApgW.js} +286 -257
  112. package/dist/multi-select.js +1 -1
  113. package/dist/{notification-center-Sz54IziY.js → notification-center-CGEEHcRA.js} +2 -2
  114. package/dist/notification-center.js +1 -1
  115. package/dist/{number-field-BFIAmv-z.js → number-field-DXk1TAXA.js} +1 -1
  116. package/dist/number-field.js +1 -1
  117. package/dist/{otp-input-BNQhuKaT.js → otp-input-CI-kdNgx.js} +1 -1
  118. package/dist/otp-input.js +1 -1
  119. package/dist/{page-kQgLctsA.js → page-IiYXk1sz.js} +32 -32
  120. package/dist/{page-header-CWEBfMGq.js → page-header-Bn4nIGfF.js} +1 -1
  121. package/dist/page-header.js +1 -1
  122. package/dist/page.js +1 -1
  123. package/dist/{popover-Be7JWbGJ.js → popover-DEp8Bf3e.js} +186 -166
  124. package/dist/popover.js +1 -1
  125. package/dist/{prompt-composer-BxpdkTpZ.js → prompt-composer-DdcU3S3L.js} +1 -1
  126. package/dist/prompt-composer.js +1 -1
  127. package/dist/{radio-group-BaVIP9UH.js → radio-group-D8csBZ8Z.js} +2 -2
  128. package/dist/radio-group.js +1 -1
  129. package/dist/{rating-DYBQBzwB.js → rating-rI3b5zII.js} +1 -1
  130. package/dist/rating.js +1 -1
  131. package/dist/{saved-views-DlE_--Z9.js → saved-views-B3brBTD9.js} +4 -4
  132. package/dist/saved-views.js +1 -1
  133. package/dist/scroll-area-DQ_ansLu.js +112 -0
  134. package/dist/scroll-area.js +1 -1
  135. package/dist/{segmented-control-DmuOGiu6.js → segmented-control-C-PzkTtg.js} +2 -2
  136. package/dist/segmented-control.js +1 -1
  137. package/dist/{select-DOFqPy26.js → select-BUylPwpb.js} +309 -258
  138. package/dist/select.js +1 -1
  139. package/dist/{side-navigation-CBLtCzuJ.js → side-navigation-Bm-BZma1.js} +156 -140
  140. package/dist/side-navigation.js +1 -1
  141. package/dist/{slider-DTes4HLF.js → slider-fp7kyg-6.js} +1 -1
  142. package/dist/slider.js +1 -1
  143. package/dist/{split-button-CPgHiy9G.js → split-button-DKRm0j5c.js} +1 -1
  144. package/dist/split-button.js +1 -1
  145. package/dist/styles.css +1 -1
  146. package/dist/{switch-DQzuIhPX.js → switch-aVoc4C2F.js} +1 -1
  147. package/dist/switch.js +1 -1
  148. package/dist/{table-Cipi2c5X.js → table-BYEvFr4P.js} +206 -203
  149. package/dist/table.js +1 -1
  150. package/dist/tabs-HWmvOKM4.js +355 -0
  151. package/dist/tabs.js +1 -1
  152. package/dist/{tags-input-CcOkm0AW.js → tags-input-pbv6x1Pi.js} +1 -1
  153. package/dist/tags-input.js +1 -1
  154. package/dist/{text-field-DLfIZ0fk.js → text-field-CbQ6UCAP.js} +1 -1
  155. package/dist/text-field.js +1 -1
  156. package/dist/{textarea-CBJBJBi6.js → textarea-DJSfhrXH.js} +1 -1
  157. package/dist/textarea.js +1 -1
  158. package/dist/{time-field-DrhiCtUl.js → time-field-BI9n607q.js} +1 -1
  159. package/dist/time-field.js +1 -1
  160. package/dist/time-picker-D6SlQWNF.js +402 -0
  161. package/dist/time-picker.js +1 -1
  162. package/dist/time-range-picker-CcV3_45h.js +751 -0
  163. package/dist/time-range-picker.js +1 -1
  164. package/dist/{toggle-group-7iBR9Rn1.js → toggle-group-i7JPO8BM.js} +1 -1
  165. package/dist/toggle-group.js +1 -1
  166. package/dist/{toolbar-DDZpEftQ.js → toolbar-B9knmgHA.js} +1 -1
  167. package/dist/toolbar.js +1 -1
  168. package/dist/tooltip-CgjIROUy.js +410 -0
  169. package/dist/tooltip.js +1 -1
  170. package/dist/{top-navigation-e-tWMGNr.js → top-navigation-DiG2PF5W.js} +2 -2
  171. package/dist/top-navigation.js +1 -1
  172. package/dist/{transfer-CqZOTLMP.js → transfer--UOQVeKE.js} +5 -5
  173. package/dist/transfer.js +1 -1
  174. package/dist/types/accordion/accordion.d.ts.map +1 -1
  175. package/dist/types/app-shell/app-shell-parts.d.ts +6 -4
  176. package/dist/types/app-shell/app-shell-parts.d.ts.map +1 -1
  177. package/dist/types/app-shell/app-shell.d.ts.map +1 -1
  178. package/dist/types/calendar/calendar.d.ts +1 -1
  179. package/dist/types/calendar/calendar.d.ts.map +1 -1
  180. package/dist/types/calendar/calendar.types.d.ts +9 -0
  181. package/dist/types/calendar/calendar.types.d.ts.map +1 -1
  182. package/dist/types/calendar/index.d.ts +1 -1
  183. package/dist/types/calendar/index.d.ts.map +1 -1
  184. package/dist/types/cascader/cascader.d.ts.map +1 -1
  185. package/dist/types/chart/chart.d.ts.map +1 -1
  186. package/dist/types/collapsible/collapsible-parts.d.ts.map +1 -1
  187. package/dist/types/combobox/combobox-parts.d.ts.map +1 -1
  188. package/dist/types/date-field/date-field.d.ts +1 -1
  189. package/dist/types/date-field/date-field.d.ts.map +1 -1
  190. package/dist/types/date-field/date-field.types.d.ts +7 -0
  191. package/dist/types/date-field/date-field.types.d.ts.map +1 -1
  192. package/dist/types/date-picker/date-picker.d.ts +5 -1
  193. package/dist/types/date-picker/date-picker.d.ts.map +1 -1
  194. package/dist/types/date-picker/date-picker.types.d.ts +20 -2
  195. package/dist/types/date-picker/date-picker.types.d.ts.map +1 -1
  196. package/dist/types/date-picker/index.d.ts +1 -1
  197. package/dist/types/date-picker/index.d.ts.map +1 -1
  198. package/dist/types/date-range-picker/date-range-picker.d.ts.map +1 -1
  199. package/dist/types/datetime-picker/datetime-picker.d.ts.map +1 -1
  200. package/dist/types/datetime-range-picker/datetime-range-picker.d.ts.map +1 -1
  201. package/dist/types/entity-picker/entity-picker-popup.d.ts.map +1 -1
  202. package/dist/types/menu/menu-parts.d.ts.map +1 -1
  203. package/dist/types/multi-select/multi-select-parts.d.ts.map +1 -1
  204. package/dist/types/page/page.d.ts.map +1 -1
  205. package/dist/types/popover/popover-parts.d.ts.map +1 -1
  206. package/dist/types/scroll-area/scroll-area.d.ts.map +1 -1
  207. package/dist/types/select/select-items.d.ts.map +1 -1
  208. package/dist/types/select/select-parts.d.ts.map +1 -1
  209. package/dist/types/select/select.d.ts.map +1 -1
  210. package/dist/types/side-navigation/side-navigation-parts.d.ts.map +1 -1
  211. package/dist/types/stat-card/stat-card.types.d.ts +2 -2
  212. package/dist/types/stat-card/stat-card.types.d.ts.map +1 -1
  213. package/dist/types/table/index.d.ts +1 -1
  214. package/dist/types/table/index.d.ts.map +1 -1
  215. package/dist/types/table/table-content.d.ts.map +1 -1
  216. package/dist/types/table/table-defaults.d.ts.map +1 -1
  217. package/dist/types/table/table.d.ts +1 -1
  218. package/dist/types/table/table.d.ts.map +1 -1
  219. package/dist/types/table/table.types.d.ts +15 -0
  220. package/dist/types/table/table.types.d.ts.map +1 -1
  221. package/dist/types/tabs/tabs-parts.d.ts +2 -4
  222. package/dist/types/tabs/tabs-parts.d.ts.map +1 -1
  223. package/dist/types/tabs/tabs.d.ts +1 -1
  224. package/dist/types/tabs/tabs.d.ts.map +1 -1
  225. package/dist/types/tabs/tabs.types.d.ts +18 -0
  226. package/dist/types/tabs/tabs.types.d.ts.map +1 -1
  227. package/dist/types/time-picker/time-picker.d.ts.map +1 -1
  228. package/dist/types/time-range-picker/time-range-picker.d.ts.map +1 -1
  229. package/dist/types/tooltip/tooltip-parts.d.ts.map +1 -1
  230. package/dist/{upload-DjnlVR8y.js → upload-CLX5cURk.js} +1 -1
  231. package/dist/upload.js +1 -1
  232. package/package.json +10 -7
  233. package/dist/calendar-B3mio8iQ.js +0 -387
  234. package/dist/chart-O0ZhkzJe.js +0 -966
  235. package/dist/date-field-CYcN6diW.js +0 -279
  236. package/dist/date-picker-4X-_2ltN.js +0 -264
  237. package/dist/date-range-picker-CNOAtHwU.js +0 -471
  238. package/dist/datetime-picker-HDVlUhzy.js +0 -629
  239. package/dist/datetime-range-picker-IqOFJtdW.js +0 -994
  240. package/dist/menu-parts-W58pVNUt.js +0 -786
  241. package/dist/scroll-area-BriwmvYY.js +0 -111
  242. package/dist/tabs-DQ36APY-.js +0 -343
  243. package/dist/time-picker-CRQsMJbQ.js +0 -396
  244. package/dist/time-range-picker-DlZJsj1e.js +0 -745
  245. package/dist/tooltip-DbKTPe_i.js +0 -392
@@ -1,279 +0,0 @@
1
- import { n as e, t } from "./icon-T9Yt4tnm.js";
2
- import { n, r } from "./i18n-DpW8lqJ1.js";
3
- import { b as i } from "./field-NJaCxl2h.js";
4
- import { createControllable as a } from "@slotted/core/state";
5
- import { createContext as o, useCallback as s, useContext as c, useEffect as l, useId as u, useImperativeHandle as d, useMemo as f, useRef as p, useState as m } from "react";
6
- import { Fragment as ee, jsx as h, jsxs as te } from "react/jsx-runtime";
7
- import { dateFieldMessages as ne } from "@slotted/core/i18n";
8
- import { EMPTY_SEGMENTS as re, boundSegment as ie, clearSegment as ae, commitTyping as oe, createDateFormat as se, dateOf as g, fieldRange as _, isDateInRange as ce, isSameDate as le, plainDate as ue, segmentsOf as v, stepSegment as y, toISODate as de, todayIn as fe, typeDigit as pe } from "@slotted/core/date";
9
- //#region src/date-field/date-field-defaults.tsx
10
- var b = 20, x = o({
11
- calendar: "gregory",
12
- firstDayOfWeek: void 0,
13
- size: "md",
14
- timeZone: void 0,
15
- variant: "outline",
16
- yearPivot: 20
17
- });
18
- function S() {
19
- return c(x);
20
- }
21
- function me({ children: e, ...t }) {
22
- let n = S();
23
- return /* @__PURE__ */ h(x.Provider, {
24
- value: {
25
- calendar: t.calendar ?? n.calendar,
26
- firstDayOfWeek: t.firstDayOfWeek ?? n.firstDayOfWeek,
27
- size: t.size ?? n.size,
28
- timeZone: t.timeZone ?? n.timeZone,
29
- variant: t.variant ?? n.variant,
30
- yearPivot: t.yearPivot ?? n.yearPivot
31
- },
32
- children: e
33
- });
34
- }
35
- //#endregion
36
- //#region src/date-field/date-field.tsx
37
- var he = {
38
- day: 5,
39
- month: 5,
40
- year: 10
41
- }, ge = ue(2e3, 1, 1);
42
- function _e({ "aria-describedby": o, "aria-label": c, "aria-labelledby": _, calendar: ue, className: b, clearable: x = !1, defaultValue: me, disabled: _e, end: C, firstDayOfWeek: ye, id: be, invalid: xe, isDateUnavailable: Se, locale: Ce, max: we, messages: Te, min: Ee, name: De, onKeyDown: Oe, onPaste: ke, onValueChange: w, readOnly: Ae, ref: je, render: T, required: Me, size: Ne, start: E, style: Pe, timeZone: Fe, value: D, variant: Ie, yearPivot: Le, ...Re }) {
43
- let O = i(), k = O?.registerControl;
44
- l(() => k?.(), [k]);
45
- let A = S(), ze = n(), Be = r(ne, Te), j = p(null), Ve = u(), M = Ce ?? ze, N = ye ?? A.firstDayOfWeek, P = Le ?? A.yearPivot, F = Fe ?? A.timeZone, He = ue ?? A.calendar, Ue = Ne ?? O?.size ?? A.size, We = Ie ?? A.variant, I = _e ?? O?.disabled, L = Ae ?? O?.readOnly, Ge = xe ?? O?.invalid, R = Me ?? O?.required, z = f(() => se({
46
- locale: M,
47
- firstDayOfWeek: N,
48
- yearPivot: P
49
- }), [
50
- N,
51
- M,
52
- P
53
- ]), [B, Ke] = m(() => ge);
54
- l(() => Ke(fe(F)), [F]);
55
- let [qe, Je] = m(() => v(D ?? me ?? null)), [V, H] = m(void 0), U = p(qe), W = () => U.current;
56
- l(() => {
57
- D !== void 0 && (le(g(U.current), D) || (U.current = v(D), Je(U.current)));
58
- }, [D]);
59
- let G = qe, K = g(G), q = f(() => z.pattern.filter((e) => e.type !== "literal").map((e) => e.type), [z]), J = s((e, t, n) => {
60
- let r = g(U.current);
61
- U.current = e, Je(e), e.typing === null && a({
62
- controlled: D,
63
- initial: r,
64
- equals: le,
65
- onRequest: (t) => {
66
- w?.(t.value, {
67
- ...t,
68
- segments: e
69
- });
70
- }
71
- }).request(g(e), t, n);
72
- }, [w, D]), Y = s((e) => {
73
- H(e), j.current?.querySelector(`[data-part="segment"][data-field="${e}"]`)?.focus();
74
- }, []), Ye = s(() => {
75
- let e = W(), t = q.find((t) => e[t] === null) ?? q[0];
76
- t !== void 0 && Y(t);
77
- }, [q, Y]), X = s((e, t) => {
78
- let n = q.indexOf(e) + t, r = q[n];
79
- r !== void 0 && Y(r);
80
- }, [q, Y]);
81
- d(je, () => ({
82
- focus: () => {
83
- let e = q[0];
84
- e !== void 0 && Y(e);
85
- },
86
- clear: () => J(re, "clear", void 0),
87
- get activeField() {
88
- return V;
89
- }
90
- }), [
91
- V,
92
- J,
93
- q,
94
- Y
95
- ]);
96
- let Z = I !== !0 && L !== !0, Q = (e) => {
97
- e.preventDefault(), e.stopPropagation();
98
- }, Xe = (e) => (t) => {
99
- if (Oe?.(t), t.defaultPrevented) return;
100
- let n = j.current !== null && getComputedStyle(j.current).direction === "rtl", r = n ? "ArrowLeft" : "ArrowRight", i = n ? "ArrowRight" : "ArrowLeft";
101
- if (t.key === r) {
102
- Q(t), X(e, 1);
103
- return;
104
- }
105
- if (t.key === i) {
106
- Q(t), X(e, -1);
107
- return;
108
- }
109
- if (Z && !t.altKey) {
110
- switch (t.key) {
111
- case "ArrowUp":
112
- Q(t), J(y(W(), e, 1, B), "keyboard", t);
113
- return;
114
- case "ArrowDown":
115
- Q(t), J(y(W(), e, -1, B), "keyboard", t);
116
- return;
117
- case "PageUp":
118
- Q(t), J(y(W(), e, he[e], B), "keyboard", t);
119
- return;
120
- case "PageDown":
121
- Q(t), J(y(W(), e, -he[e], B), "keyboard", t);
122
- return;
123
- case "Home":
124
- Q(t), J(ie(W(), e, "min", B), "keyboard", t);
125
- return;
126
- case "Backspace":
127
- case "Delete":
128
- Q(t), J(ae(W(), e), "clear", t);
129
- return;
130
- case "End":
131
- Q(t), J(ie(W(), e, "max", B), "keyboard", t);
132
- return;
133
- }
134
- if (/^\d$/.test(t.key)) {
135
- Q(t);
136
- let n = pe(W(), e, Number(t.key), z, B);
137
- J(n.segments, "keyboard", t), n.advance && X(e, 1);
138
- }
139
- }
140
- }, Ze = (e) => {
141
- if (ke?.(e), e.defaultPrevented || !Z) return;
142
- let t = z.parse(e.clipboardData.getData("text/plain"));
143
- t !== null && (e.preventDefault(), J(v(t), "keyboard", e));
144
- }, Qe = () => {
145
- H(void 0);
146
- let e = W();
147
- e.typing !== null && J(oe(e, z, B), "blur", void 0);
148
- }, $e = (e) => {
149
- e.target?.closest("[data-part=\"segment\"], button, a, input, select, textarea") ?? (e.preventDefault(), Ye());
150
- }, et = (e) => {
151
- J(re, "clear", e);
152
- let t = q[0];
153
- t !== void 0 && Y(t);
154
- }, tt = `${Ve}-value`, nt = K === null ? void 0 : z.describe(K), rt = K !== null && Se?.(K) === !0, it = K !== null && !ce(K, Ee, we), at = Ge === !0 || rt || it, ot = G.year === null && G.month === null && G.day === null, st = x && !ot && Z, ct = /* @__PURE__ */ te(ee, { children: [
155
- E === void 0 ? null : /* @__PURE__ */ h("span", {
156
- "data-part": "start",
157
- children: E
158
- }),
159
- /* @__PURE__ */ h("div", {
160
- "aria-describedby": [o, O?.describedBy].filter(Boolean).join(" ") || void 0,
161
- "aria-disabled": I === !0 || void 0,
162
- "aria-invalid": at ? !0 : void 0,
163
- "aria-label": c,
164
- "aria-labelledby": c === void 0 ? [_ ?? O?.ids.label, tt].filter(Boolean).join(" ") : void 0,
165
- "aria-readonly": L === !0 || void 0,
166
- "aria-required": R === !0 || void 0,
167
- "data-part": "segments",
168
- id: be ?? O?.ids.control,
169
- onPaste: Ze,
170
- role: "group",
171
- children: z.pattern.map((e, t) => {
172
- if (e.type === "literal") return /* @__PURE__ */ h("span", {
173
- "aria-hidden": "true",
174
- "data-part": "literal",
175
- children: e.value
176
- }, `literal-${String(t)}`);
177
- let n = e.type;
178
- return /* @__PURE__ */ h(ve, {
179
- disabled: I === !0,
180
- field: n,
181
- format: z,
182
- onBlur: Qe,
183
- onFocus: () => H(n),
184
- onKeyDown: Xe(n),
185
- placeholder: e.value,
186
- readOnly: L === !0,
187
- reference: B,
188
- segments: G,
189
- tabIndex: n === (V ?? q[0]) ? 0 : -1
190
- }, n);
191
- })
192
- }),
193
- /* @__PURE__ */ h("span", {
194
- "data-part": "value-text",
195
- hidden: !0,
196
- id: tt,
197
- children: nt
198
- }),
199
- st ? /* @__PURE__ */ h("button", {
200
- "aria-label": Be("clear"),
201
- "data-part": "clear",
202
- onClick: et,
203
- type: "button",
204
- children: /* @__PURE__ */ h(t, { children: /* @__PURE__ */ h(e, { name: "x" }) })
205
- }) : null,
206
- C === void 0 ? null : /* @__PURE__ */ h("span", {
207
- "data-part": "end",
208
- children: C
209
- }),
210
- /* @__PURE__ */ h("input", {
211
- "data-part": "hidden-input",
212
- name: De,
213
- readOnly: !0,
214
- type: "hidden",
215
- value: K === null ? "" : de(K)
216
- })
217
- ] }), $ = {
218
- ...Re,
219
- children: ct,
220
- className: b,
221
- style: Pe,
222
- ...I === !0 ? { "data-disabled": "" } : {},
223
- ...at ? { "data-invalid": "" } : {},
224
- ...L === !0 ? { "data-readonly": "" } : {},
225
- ...R === !0 ? { "data-required": "" } : {},
226
- "data-calendar": He,
227
- "data-part": "root",
228
- "data-size": Ue,
229
- "data-ui": "date-field",
230
- "data-variant": We,
231
- onMouseDown: $e,
232
- ref: j
233
- };
234
- return T === void 0 ? /* @__PURE__ */ h("div", { ...$ }) : T($);
235
- }
236
- function C({ field: e, format: t, reference: n, segments: r }) {
237
- let i = r[e];
238
- if (i === null) return t.pattern.find((t) => t.type === e)?.value ?? "";
239
- let a = r.typing;
240
- return a !== null && a.field === e ? String(i).padStart(a.digits, "0") : t.formatField({
241
- year: r.year ?? n.year,
242
- month: r.month ?? n.month,
243
- day: r.day ?? n.day
244
- }, e);
245
- }
246
- function ve({ disabled: e, field: t, format: n, onBlur: r, onFocus: i, onKeyDown: a, placeholder: o, readOnly: s, reference: c, segments: l, tabIndex: u }) {
247
- let d = l[t], f = _(t, {
248
- year: l.year ?? c.year,
249
- month: l.month ?? c.month
250
- }), p = d === null ? void 0 : t === "month" ? n.monthNames("long")[d - 1] ?? String(d) : String(d);
251
- return /* @__PURE__ */ h("div", {
252
- "aria-disabled": e ? !0 : void 0,
253
- "aria-label": o,
254
- "aria-readonly": s ? !0 : void 0,
255
- "aria-valuemax": f.max,
256
- "aria-valuemin": f.min,
257
- "aria-valuenow": d ?? void 0,
258
- "aria-valuetext": p,
259
- "data-field": t,
260
- "data-part": "segment",
261
- ...d === null ? { "data-placeholder": "" } : {},
262
- onBlur: r,
263
- onFocus: i,
264
- onKeyDown: a,
265
- onMouseDown: (e) => {
266
- e.preventDefault(), e.currentTarget.focus();
267
- },
268
- role: "spinbutton",
269
- tabIndex: e ? -1 : u,
270
- children: C({
271
- field: t,
272
- format: n,
273
- reference: c,
274
- segments: l
275
- })
276
- });
277
- }
278
- //#endregion
279
- export { S as i, b as n, me as r, _e as t };
@@ -1,264 +0,0 @@
1
- import { n as e, t } from "./icon-T9Yt4tnm.js";
2
- import { n, r } from "./i18n-DpW8lqJ1.js";
3
- import { n as i, r as ee, t as te } from "./calendar-B3mio8iQ.js";
4
- import { b as ne } from "./field-NJaCxl2h.js";
5
- import { t as re } from "./date-field-CYcN6diW.js";
6
- import { tabbables as ie } from "@slotted/core/focus";
7
- import { createControllable as a } from "@slotted/core/state";
8
- import { createContext as o, useCallback as s, useContext as c, useEffect as l, useId as ae, useImperativeHandle as oe, useMemo as se, useRef as u, useState as d } from "react";
9
- import { Fragment as f, jsx as p, jsxs as m } from "react/jsx-runtime";
10
- import { createPresence as ce } from "@slotted/core/presence";
11
- import { createPortalRoot as le } from "@slotted/core/portal";
12
- import { createDismissableLayer as ue } from "@slotted/core/dismissable-layer";
13
- import { createPositioner as de } from "@slotted/core/positioner";
14
- import { createPortal as fe } from "react-dom";
15
- import { datePickerMessages as pe } from "@slotted/core/i18n";
16
- import { createDateFormat as me, isDateInRange as he } from "@slotted/core/date";
17
- //#region src/date-picker/date-picker-defaults.tsx
18
- var h = o({
19
- calendar: "gregory",
20
- closeOnSelect: "auto",
21
- placement: "bottom-start",
22
- size: "md",
23
- timeZone: void 0,
24
- variant: "outline"
25
- });
26
- function g() {
27
- return c(h);
28
- }
29
- function _({ children: e, ...t }) {
30
- let n = g();
31
- return /* @__PURE__ */ p(h.Provider, {
32
- value: {
33
- calendar: t.calendar ?? n.calendar,
34
- closeOnSelect: t.closeOnSelect ?? n.closeOnSelect,
35
- placement: t.placement ?? n.placement,
36
- size: t.size ?? n.size,
37
- timeZone: t.timeZone ?? n.timeZone,
38
- variant: t.variant ?? n.variant
39
- },
40
- children: e
41
- });
42
- }
43
- //#endregion
44
- //#region src/date-picker/date-picker.tsx
45
- var ge = "(max-width: 480px) and (pointer: coarse)";
46
- function _e({ calendar: o, className: c, clearable: h = !1, closeOnSelect: _, defaultOpen: _e = !1, defaultValue: v, defaultView: ve, disabled: ye, firstDayOfWeek: y, fixedWeeks: be = !0, footer: xe, invalid: Se, isDateUnavailable: b, locale: Ce, max: x, messages: we, min: S, months: Te, name: Ee, onKeyDown: De, onOpenChange: C, onValueChange: Oe, open: w, placement: ke, presets: Ae, readOnly: je, ref: Me, render: Ne, required: Pe, selectionMode: Fe = "single", size: Ie, style: Le, timeZone: Re, value: T, variant: ze, weekNumbers: Be, yearPivot: E, ...Ve }) {
47
- let D = ne(), O = g(), He = n(), k = r(pe, we), A = u(null), j = u(null), M = u(null), N = ae(), [P, Ue] = d(null), [F, I] = d(null), [We, L] = d("unmounted"), [Ge, R] = d(!1), [z, Ke] = d(!1), [qe, Je] = d(_e), B = u(!1), V = w ?? qe, [H, Ye] = d(v ?? null), U = T ?? H, [W, G] = d(ve ?? "day"), K = Ce ?? He, Xe = Re ?? O.timeZone, Ze = o ?? O.calendar, Qe = Ie ?? D?.size ?? O.size, $e = ze ?? O.variant, et = ke ?? O.placement, tt = _ ?? O.closeOnSelect, q = ye ?? D?.disabled, J = je ?? D?.readOnly, nt = Se ?? (i(T ?? H).some((e) => !he(e, S, x) || b?.(e) === !0) ? !0 : D?.invalid), rt = Pe ?? D?.required, it = q !== !0 && J !== !0, at = se(() => me({ locale: K }), [K]), Y = s((e, t, n) => {
48
- a({
49
- controlled: w,
50
- initial: V,
51
- onRequest: (e) => {
52
- C?.(e.value, e), B.current = e.value && !e.cancelled;
53
- }
54
- }).request(e, t, n) && Je(e);
55
- }, [
56
- V,
57
- C,
58
- w
59
- ]), X = s((e, t) => {
60
- a({
61
- controlled: T,
62
- initial: U,
63
- equals: () => !1,
64
- onRequest: (e) => Oe?.(e.value, e)
65
- }).request(e, t.reason, t.source) && Ye(e);
66
- }, [
67
- U,
68
- Oe,
69
- T
70
- ]), [ot] = d(() => v ?? null);
71
- l(() => {
72
- let e = A.current?.closest("form");
73
- if (e == null) return;
74
- let t = (e) => X(ot, {
75
- reason: "programmatic",
76
- source: e
77
- });
78
- return e.addEventListener("reset", t), () => e.removeEventListener("reset", t);
79
- }, [ot, X]);
80
- let Z = u(null);
81
- l(() => {
82
- let e = ce({
83
- present: V,
84
- onStatusChange: L
85
- });
86
- return Z.current = e, L(e.status), () => {
87
- e.destroy(), Z.current = null;
88
- };
89
- }, []), l(() => Z.current?.sync(V), [V]), l(() => Z.current?.setNode(P), [P]);
90
- let Q = We !== "unmounted";
91
- l(() => {
92
- if (!Q) {
93
- I(null);
94
- return;
95
- }
96
- let e = le({
97
- origin: M.current,
98
- disabled: !1
99
- });
100
- return I(e.container), () => e.release();
101
- }, [Q]), l(() => {
102
- if (typeof window > "u" || typeof window.matchMedia != "function") return;
103
- let e = window.matchMedia(ge), t = () => Ke(e.matches);
104
- return t(), e.addEventListener("change", t), () => e.removeEventListener("change", t);
105
- }, []), l(() => {
106
- if (P === null || A.current === null || z) return;
107
- let e = !0, t = A.current.querySelector("[data-part=\"control\"]") ?? A.current, [n, r = "center"] = et.split("-"), i = de(t, P, {
108
- align: r === void 0 ? "center" : r,
109
- side: n
110
- });
111
- return i.update().then(() => {
112
- e && R(!0);
113
- }), () => {
114
- e = !1, i.destroy(), R(!1);
115
- };
116
- }, [
117
- P,
118
- et,
119
- z
120
- ]);
121
- let $ = u(W);
122
- $.current = W, l(() => {
123
- if (P === null || !V) return;
124
- let e = M.current === null ? [] : [M.current], t = ue(P, {
125
- branches: e,
126
- escape: !0,
127
- focusOutside: !1,
128
- modal: !1,
129
- outsidePress: !0,
130
- scrollLock: !1,
131
- onDismiss: (e) => {
132
- if (e.reason === "escape" && $.current !== "day") {
133
- G($.current === "year" ? "month" : "day");
134
- return;
135
- }
136
- Y(!1, e.reason === "escape" ? "escape" : "outsidePress", e.source), e.reason === "escape" && M.current?.focus({ preventScroll: !0 });
137
- }
138
- });
139
- return () => t.destroy();
140
- }, [
141
- V,
142
- P,
143
- Y
144
- ]), l(() => {
145
- P !== null && F !== null && V && B.current && F.contains(P) && (B.current = !1, P.querySelector("[data-part=\"day\"][tabindex=\"0\"]")?.focus({ preventScroll: !0 }));
146
- }, [
147
- F,
148
- V,
149
- P
150
- ]);
151
- let st = (e) => {
152
- if (e.key !== "Tab" || e.altKey || e.ctrlKey || e.metaKey) return;
153
- let t = ie(e.currentTarget), n = t[0], r = t[t.length - 1];
154
- if (n === void 0 || r === void 0) return;
155
- let i = e.currentTarget.ownerDocument.activeElement;
156
- e.shiftKey && i === n ? (e.preventDefault(), r.focus()) : !e.shiftKey && i === r && (e.preventDefault(), n.focus());
157
- };
158
- oe(Me, () => ({
159
- focus: () => j.current?.focus(),
160
- open: () => Y(!0, "keyboard", void 0),
161
- close: () => Y(!1, "keyboard", void 0)
162
- }), [Y]);
163
- let ct = i(U), lt = ct.length === 0 ? k("choose") : k("change", { date: ct.map((e) => at.describe(e)).join(" – ") }), ut = tt === "always" || tt === "auto" && Fe === "single", dt = (e) => {
164
- De?.(e), !e.defaultPrevented && it && e.altKey && e.key === "ArrowDown" && (e.preventDefault(), Y(!0, "keyboard", e));
165
- }, ft = ee(U) || Array.isArray(U) ? void 0 : U ?? null, pt = Q ? /* @__PURE__ */ p("div", {
166
- "data-part": "positioner",
167
- "data-presentation": z ? "sheet" : "popover",
168
- "data-ui": "date-picker",
169
- ref: Ue,
170
- ...V ? { "data-open": "" } : {},
171
- ...Ge ? { "data-positioned": "" } : {},
172
- children: /* @__PURE__ */ m("div", {
173
- "aria-label": lt,
174
- "data-part": "content",
175
- id: N,
176
- onKeyDown: st,
177
- role: "dialog",
178
- children: [
179
- Ae === void 0 ? null : /* @__PURE__ */ p("div", {
180
- "data-part": "presets",
181
- children: Ae
182
- }),
183
- /* @__PURE__ */ p(te, {
184
- fixedWeeks: be,
185
- isDateUnavailable: b,
186
- locale: K,
187
- max: x,
188
- min: S,
189
- months: Te,
190
- onValueChange: (e, t) => {
191
- X(e, t), ut && (Y(!1, "select", t.source), M.current?.focus({ preventScroll: !0 }));
192
- },
193
- onViewChange: G,
194
- readOnly: J,
195
- selectionMode: Fe,
196
- timeZone: Xe,
197
- value: U,
198
- view: W,
199
- weekNumbers: Be,
200
- ...y === void 0 ? {} : { firstDayOfWeek: y }
201
- }),
202
- xe === void 0 ? null : /* @__PURE__ */ p("div", {
203
- "data-part": "footer",
204
- children: xe
205
- })
206
- ]
207
- })
208
- }) : null, mt = /* @__PURE__ */ m(f, { children: [/* @__PURE__ */ p("div", {
209
- "data-part": "control",
210
- onKeyDown: dt,
211
- children: /* @__PURE__ */ p(re, {
212
- calendar: Ze,
213
- clearable: h,
214
- disabled: q,
215
- end: /* @__PURE__ */ p("button", {
216
- "aria-controls": V ? N : void 0,
217
- "aria-expanded": V,
218
- "aria-haspopup": "dialog",
219
- "aria-label": lt,
220
- "data-part": "trigger",
221
- disabled: !it,
222
- onClick: (e) => Y(!V, "pointer", e),
223
- ref: M,
224
- type: "button",
225
- children: /* @__PURE__ */ p(t, { children: /* @__PURE__ */ p(e, { name: "calendar" }) })
226
- }),
227
- invalid: nt,
228
- isDateUnavailable: b,
229
- locale: K,
230
- max: x,
231
- min: S,
232
- name: Ee,
233
- onValueChange: (e, t) => X(e, t),
234
- readOnly: J,
235
- ref: j,
236
- required: rt,
237
- size: Qe,
238
- timeZone: Xe,
239
- variant: $e,
240
- ...y === void 0 ? {} : { firstDayOfWeek: y },
241
- ...E === void 0 ? {} : { yearPivot: E },
242
- ...ft === void 0 ? {} : { value: ft }
243
- })
244
- }), F === null ? pt : null] }), ht = {
245
- ...Ve,
246
- children: mt,
247
- className: c,
248
- style: Le,
249
- ...q === !0 ? { "data-disabled": "" } : {},
250
- ...nt === !0 ? { "data-invalid": "" } : {},
251
- ...J === !0 ? { "data-readonly": "" } : {},
252
- ...rt === !0 ? { "data-required": "" } : {},
253
- ...V ? { "data-open": "" } : {},
254
- "data-calendar": Ze,
255
- "data-part": "root",
256
- "data-size": Qe,
257
- "data-ui": "date-picker",
258
- "data-variant": $e,
259
- ref: A
260
- };
261
- return /* @__PURE__ */ m(f, { children: [Ne === void 0 ? /* @__PURE__ */ p("div", { ...ht }) : Ne(ht), F === null ? null : fe(pt, F)] });
262
- }
263
- //#endregion
264
- export { _ as n, g as r, _e as t };