@editora/ui-core 0.1.19 → 0.1.21

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 (313) hide show
  1. package/dist/{ElementBase-1b301e7f.js → ElementBase-EV6mVBUV.js} +1 -1
  2. package/dist/{ElementBase-909688f3.mjs → ElementBase-YlTLMsGk.mjs} +3 -3
  3. package/dist/accordion.cjs.js +3 -3
  4. package/dist/accordion.esm.js +39 -62
  5. package/dist/alert-dialog.cjs.js +19 -19
  6. package/dist/alert-dialog.esm.js +69 -87
  7. package/dist/alert.cjs.js +1 -1
  8. package/dist/alert.esm.js +4 -7
  9. package/dist/anchor.cjs.js +2 -2
  10. package/dist/anchor.esm.js +3 -3
  11. package/dist/animated-beam.cjs.js +83 -83
  12. package/dist/animated-beam.esm.js +250 -277
  13. package/dist/animated-list.cjs.js +4 -4
  14. package/dist/animated-list.esm.js +47 -61
  15. package/dist/animated-text.cjs.js +2 -2
  16. package/dist/animated-text.esm.js +13 -24
  17. package/dist/app-header.cjs.js +3 -3
  18. package/dist/app-header.esm.js +11 -13
  19. package/dist/aspect-ratio.cjs.js +1 -1
  20. package/dist/aspect-ratio.esm.js +4 -7
  21. package/dist/avatar.cjs.js +1 -1
  22. package/dist/avatar.esm.js +7 -13
  23. package/dist/badge.cjs.js +1 -1
  24. package/dist/badge.esm.js +4 -7
  25. package/dist/block-controls.cjs.js +2 -2
  26. package/dist/block-controls.esm.js +19 -35
  27. package/dist/box.cjs.js +1 -1
  28. package/dist/box.esm.js +8 -15
  29. package/dist/breadcrumb.cjs.js +2 -2
  30. package/dist/breadcrumb.esm.js +20 -37
  31. package/dist/button.cjs.js +1 -521
  32. package/dist/button.esm.js +2 -671
  33. package/dist/{calendar-2c11b824.mjs → calendar-DLY4acgn.mjs} +293 -342
  34. package/dist/{calendar-a8735e40.js → calendar-Dkof-FTK.js} +25 -25
  35. package/dist/calendar.cjs.js +1 -1
  36. package/dist/calendar.esm.js +8 -9
  37. package/dist/card.cjs.js +4 -4
  38. package/dist/card.esm.js +13 -19
  39. package/dist/chart.cjs.js +64 -64
  40. package/dist/chart.esm.js +223 -254
  41. package/dist/checkbox.cjs.js +1 -1
  42. package/dist/checkbox.esm.js +2 -3
  43. package/dist/collapsible.cjs.js +1 -1
  44. package/dist/collapsible.esm.js +5 -9
  45. package/dist/{collection-a1aac0c6.mjs → collection-C7URGjEI.mjs} +8 -14
  46. package/dist/collection.cjs.js +1 -1
  47. package/dist/collection.esm.js +30 -29
  48. package/dist/color-picker.cjs.js +10 -10
  49. package/dist/color-picker.esm.js +190 -253
  50. package/dist/combobox.cjs.js +13 -13
  51. package/dist/combobox.esm.js +93 -126
  52. package/dist/command-palette.cjs.js +3 -3
  53. package/dist/command-palette.esm.js +19 -30
  54. package/dist/command.cjs.js +4 -4
  55. package/dist/command.esm.js +41 -53
  56. package/dist/components/ui-collection.d.ts.map +1 -1
  57. package/dist/components/ui-multi-select.d.ts.map +1 -1
  58. package/dist/components/ui-orbiter.d.ts.map +1 -1
  59. package/dist/components/ui-portal.d.ts.map +1 -1
  60. package/dist/components/ui-positioner.d.ts.map +1 -1
  61. package/dist/components/ui-skeleton.d.ts.map +1 -1
  62. package/dist/components/ui-sortable.d.ts +8 -0
  63. package/dist/components/ui-sortable.d.ts.map +1 -1
  64. package/dist/components/ui-split-button.d.ts +1 -0
  65. package/dist/components/ui-split-button.d.ts.map +1 -1
  66. package/dist/components/ui-tabs.d.ts.map +1 -1
  67. package/dist/components/ui-textarea.d.ts.map +1 -1
  68. package/dist/components/ui-time-picker.d.ts.map +1 -1
  69. package/dist/container.cjs.js +2 -2
  70. package/dist/container.esm.js +2 -3
  71. package/dist/context-menu.cjs.js +8 -8
  72. package/dist/context-menu.esm.js +157 -219
  73. package/dist/control-group.cjs.js +1 -1
  74. package/dist/control-group.esm.js +2 -3
  75. package/dist/data-table.cjs.js +4 -4
  76. package/dist/data-table.esm.js +299 -381
  77. package/dist/date-field.cjs.js +3 -3
  78. package/dist/date-field.esm.js +68 -80
  79. package/dist/date-picker.cjs.js +9 -9
  80. package/dist/date-picker.esm.js +69 -97
  81. package/dist/date-range-picker.cjs.js +3 -3
  82. package/dist/date-range-picker.esm.js +32 -56
  83. package/dist/date-range-time-picker.cjs.js +9 -9
  84. package/dist/date-range-time-picker.esm.js +111 -140
  85. package/dist/date-time-picker.cjs.js +7 -7
  86. package/dist/date-time-picker.esm.js +115 -147
  87. package/dist/date-time-utils-Dmost5Ee.js +1 -0
  88. package/dist/date-time-utils-y1N2gvG2.mjs +268 -0
  89. package/dist/description.cjs.js +1 -1
  90. package/dist/description.esm.js +3 -5
  91. package/dist/dialog.cjs.js +12 -12
  92. package/dist/dialog.esm.js +44 -63
  93. package/dist/direction-provider.cjs.js +1 -1
  94. package/dist/direction-provider.esm.js +2 -3
  95. package/dist/{dismissable-layer-9c7e6b58.mjs → dismissable-layer-BmPIoK80.mjs} +29 -33
  96. package/dist/dismissable-layer-DNfrKA20.js +1 -0
  97. package/dist/dismissable-layer.cjs.js +2 -2
  98. package/dist/dismissable-layer.esm.js +4 -6
  99. package/dist/dock.cjs.js +5 -5
  100. package/dist/dock.esm.js +134 -155
  101. package/dist/drawer.cjs.js +2 -2
  102. package/dist/drawer.esm.js +18 -35
  103. package/dist/dropdown.cjs.js +2 -2
  104. package/dist/dropdown.esm.js +119 -149
  105. package/dist/dropzone.cjs.js +1 -1
  106. package/dist/dropzone.esm.js +0 -1
  107. package/dist/empty-state.cjs.js +1 -1
  108. package/dist/empty-state.esm.js +1 -1
  109. package/dist/field-error.cjs.js +1 -1
  110. package/dist/field-error.esm.js +3 -5
  111. package/dist/field.cjs.js +5 -5
  112. package/dist/field.esm.js +27 -34
  113. package/dist/fieldset.cjs.js +4 -4
  114. package/dist/fieldset.esm.js +19 -24
  115. package/dist/file-upload.cjs.js +4 -4
  116. package/dist/file-upload.esm.js +69 -93
  117. package/dist/flex.cjs.js +1 -1
  118. package/dist/flex.esm.js +5 -9
  119. package/dist/floating-toolbar.cjs.js +4 -4
  120. package/dist/floating-toolbar.esm.js +60 -85
  121. package/dist/focus-scope-Bwug2gDv.js +1 -0
  122. package/dist/{focus-scope-103833ee.mjs → focus-scope-CmEsG5UZ.mjs} +39 -48
  123. package/dist/focus-scope.cjs.js +2 -2
  124. package/dist/focus-scope.esm.js +15 -20
  125. package/dist/form.cjs.js +2 -2
  126. package/dist/form.esm.js +26 -53
  127. package/dist/gantt.cjs.js +43 -43
  128. package/dist/gantt.esm.js +295 -322
  129. package/dist/grid.cjs.js +1 -1
  130. package/dist/grid.esm.js +5 -9
  131. package/dist/hover-card.cjs.js +4 -4
  132. package/dist/hover-card.esm.js +22 -28
  133. package/dist/icon-cloud.cjs.js +7 -7
  134. package/dist/icon-cloud.esm.js +48 -62
  135. package/dist/icon.cjs.js +1 -1
  136. package/dist/icon.esm.js +2 -4
  137. package/dist/index.cjs.js +1 -1
  138. package/dist/index.esm.js +378 -390
  139. package/dist/inline-edit.cjs.js +11 -11
  140. package/dist/inline-edit.esm.js +32 -36
  141. package/dist/input.cjs.js +17 -17
  142. package/dist/input.esm.js +50 -63
  143. package/dist/label.cjs.js +2 -2
  144. package/dist/label.esm.js +8 -17
  145. package/dist/layout.cjs.js +2 -2
  146. package/dist/layout.esm.js +20 -26
  147. package/dist/listbox-B6QgECax.js +46 -0
  148. package/dist/listbox-DJamVeFj.mjs +200 -0
  149. package/dist/listbox.cjs.js +1 -1
  150. package/dist/listbox.esm.js +2 -4
  151. package/dist/marquee.cjs.js +5 -5
  152. package/dist/marquee.esm.js +33 -50
  153. package/dist/masonry-grid.cjs.js +1 -1
  154. package/dist/masonry-grid.esm.js +5 -9
  155. package/dist/menu.cjs.js +3 -3
  156. package/dist/menu.esm.js +106 -126
  157. package/dist/menubar.cjs.js +5 -5
  158. package/dist/menubar.esm.js +118 -164
  159. package/dist/meter.cjs.js +2 -2
  160. package/dist/meter.esm.js +4 -4
  161. package/dist/multi-select.cjs.js +5 -5
  162. package/dist/multi-select.esm.js +125 -137
  163. package/dist/navigation-menu.cjs.js +4 -4
  164. package/dist/navigation-menu.esm.js +44 -55
  165. package/dist/number-field.cjs.js +2 -2
  166. package/dist/number-field.esm.js +73 -98
  167. package/dist/number-ticker.cjs.js +3 -3
  168. package/dist/number-ticker.esm.js +22 -43
  169. package/dist/odometer.cjs.js +1 -1
  170. package/dist/odometer.esm.js +5 -9
  171. package/dist/orbiter.cjs.js +13 -13
  172. package/dist/orbiter.esm.js +79 -90
  173. package/dist/{overlayManager-5bbd4dc3.mjs → overlayManager-BJjU1VA8.mjs} +4 -5
  174. package/dist/{overlayManager-0eda4e08.js → overlayManager-CSy3fJmJ.js} +1 -1
  175. package/dist/pagination.cjs.js +2 -2
  176. package/dist/pagination.esm.js +14 -18
  177. package/dist/{panel-group-a376cc5e.mjs → panel-group-8sVNnGxg.mjs} +24 -46
  178. package/dist/panel-group-CaD0_KQf.js +36 -0
  179. package/dist/panel-group.cjs.js +1 -1
  180. package/dist/panel-group.esm.js +2 -5
  181. package/dist/panel.cjs.js +4 -4
  182. package/dist/panel.esm.js +8 -10
  183. package/dist/password-field.cjs.js +9 -9
  184. package/dist/password-field.esm.js +62 -82
  185. package/dist/pin-input.cjs.js +3 -3
  186. package/dist/pin-input.esm.js +33 -39
  187. package/dist/placement-grid.cjs.js +4 -4
  188. package/dist/placement-grid.esm.js +108 -131
  189. package/dist/plugin-panel.cjs.js +7 -7
  190. package/dist/plugin-panel.esm.js +13 -15
  191. package/dist/popover.cjs.js +2 -2
  192. package/dist/popover.esm.js +21 -31
  193. package/dist/portal-DgpQ3Jo1.js +1 -0
  194. package/dist/{portal-fe73e5cc.mjs → portal-bR42gHvG.mjs} +43 -48
  195. package/dist/portal.cjs.js +3 -3
  196. package/dist/portal.esm.js +20 -28
  197. package/dist/{positioner-e9770c66.mjs → positioner-D0VGxtYU.mjs} +189 -209
  198. package/dist/positioner-D_fqyx_j.js +1 -0
  199. package/dist/positioner.cjs.js +2 -2
  200. package/dist/positioner.esm.js +22 -28
  201. package/dist/presence.cjs.js +1 -1
  202. package/dist/presence.esm.js +7 -13
  203. package/dist/primitives/auto-scroll.d.ts +9 -0
  204. package/dist/primitives/auto-scroll.d.ts.map +1 -0
  205. package/dist/primitives/selector.d.ts +4 -0
  206. package/dist/primitives/selector.d.ts.map +1 -0
  207. package/dist/progress.cjs.js +1 -1
  208. package/dist/progress.esm.js +5 -9
  209. package/dist/quick-actions.cjs.js +6 -6
  210. package/dist/quick-actions.esm.js +52 -62
  211. package/dist/radio-group.cjs.js +13 -13
  212. package/dist/radio-group.esm.js +39 -51
  213. package/dist/radio.cjs.js +1 -1
  214. package/dist/radio.esm.js +5 -9
  215. package/dist/rating.cjs.js +1 -1
  216. package/dist/rating.esm.js +12 -23
  217. package/dist/{roving-focus-group-4350c9a7.mjs → roving-focus-group-Dbm1Jko_.mjs} +3 -6
  218. package/dist/roving-focus-group.cjs.js +1 -1
  219. package/dist/roving-focus-group.esm.js +3 -5
  220. package/dist/runtime-CTaOSmBj.js +1 -0
  221. package/dist/{runtime-161f68a2.mjs → runtime-D1gFh1fS.mjs} +338 -366
  222. package/dist/runtime.cjs.js +1 -1
  223. package/dist/runtime.esm.js +6 -6
  224. package/dist/scroll-area.cjs.js +3 -3
  225. package/dist/scroll-area.esm.js +38 -46
  226. package/dist/{scroll-lock-31da444f.mjs → scroll-lock-LfqXXqsu.mjs} +5 -9
  227. package/dist/section.cjs.js +1 -1
  228. package/dist/section.esm.js +1 -1
  229. package/dist/select.cjs.js +7 -7
  230. package/dist/select.esm.js +67 -97
  231. package/dist/selection-popup.cjs.js +1 -1
  232. package/dist/selection-popup.esm.js +8 -15
  233. package/dist/selector-BvAh35ve.js +1 -0
  234. package/dist/selector-WI8pD7YO.mjs +18 -0
  235. package/dist/separator.cjs.js +1 -1
  236. package/dist/separator.esm.js +1 -1
  237. package/dist/sidebar.cjs.js +18 -18
  238. package/dist/sidebar.esm.js +117 -139
  239. package/dist/skeleton.cjs.js +11 -11
  240. package/dist/skeleton.esm.js +27 -24
  241. package/dist/slider.cjs.js +1 -1
  242. package/dist/slider.esm.js +6 -11
  243. package/dist/slot.cjs.js +4 -4
  244. package/dist/slot.esm.js +16 -19
  245. package/dist/sortable.cjs.js +79 -65
  246. package/dist/sortable.esm.js +714 -734
  247. package/dist/spinning-text.cjs.js +12 -12
  248. package/dist/spinning-text.esm.js +80 -92
  249. package/dist/split-button.cjs.js +4 -4
  250. package/dist/split-button.esm.js +77 -62
  251. package/dist/splitter.cjs.js +1 -1
  252. package/dist/splitter.esm.js +1 -1
  253. package/dist/stepper.cjs.js +8 -8
  254. package/dist/stepper.esm.js +32 -52
  255. package/dist/switch.cjs.js +7 -7
  256. package/dist/switch.esm.js +23 -31
  257. package/dist/table.cjs.js +2 -2
  258. package/dist/table.esm.js +46 -56
  259. package/dist/tabs.cjs.js +8 -8
  260. package/dist/tabs.esm.js +89 -109
  261. package/dist/tags-input.cjs.js +4 -4
  262. package/dist/tags-input.esm.js +45 -62
  263. package/dist/textarea.cjs.js +10 -10
  264. package/dist/textarea.esm.js +49 -52
  265. package/dist/time-field.cjs.js +4 -4
  266. package/dist/time-field.esm.js +70 -84
  267. package/dist/time-picker.cjs.js +22 -22
  268. package/dist/time-picker.esm.js +88 -110
  269. package/dist/timeline.cjs.js +1 -1
  270. package/dist/timeline.esm.js +3 -5
  271. package/dist/toast.cjs.js +2 -2
  272. package/dist/toast.esm.js +33 -47
  273. package/dist/toggle-group.cjs.js +6 -6
  274. package/dist/toggle-group.esm.js +85 -105
  275. package/dist/toggle.cjs.js +1 -1
  276. package/dist/toggle.esm.js +3 -5
  277. package/dist/toolbar.cjs.js +1 -1
  278. package/dist/toolbar.esm.js +13 -24
  279. package/dist/tooltip.cjs.js +2 -2
  280. package/dist/tooltip.esm.js +31 -42
  281. package/dist/transfer-list.cjs.js +31 -31
  282. package/dist/transfer-list.esm.js +114 -127
  283. package/dist/{tree-dcd74a4a.mjs → tree-B3kE8ESs.mjs} +55 -62
  284. package/dist/tree-Dx_kv_ih.js +39 -0
  285. package/dist/tree-item.cjs.js +2 -2
  286. package/dist/tree-item.esm.js +2 -3
  287. package/dist/tree.cjs.js +1 -1
  288. package/dist/tree.esm.js +2 -5
  289. package/dist/ui-button-Q0GNNWKC.mjs +665 -0
  290. package/dist/ui-button-rXQOS9QJ.js +521 -0
  291. package/dist/{icon-9e9da03b.js → ui-icon-BzVNC_lr.js} +4 -4
  292. package/dist/{icon-e2a85cc1.mjs → ui-icon-YI6lyuqU.mjs} +58 -65
  293. package/dist/visually-hidden.cjs.js +1 -1
  294. package/dist/visually-hidden.esm.js +1 -1
  295. package/dist/wizard.cjs.js +14 -14
  296. package/dist/wizard.esm.js +85 -105
  297. package/package.json +2 -2
  298. package/dist/date-time-utils-66480de4.js +0 -1
  299. package/dist/date-time-utils-a2c7af25.mjs +0 -307
  300. package/dist/dismissable-layer-193e3bed.js +0 -1
  301. package/dist/focus-scope-2b12b4e7.js +0 -1
  302. package/dist/listbox-308789a0.mjs +0 -210
  303. package/dist/listbox-ef2f708e.js +0 -46
  304. package/dist/panel-group-40254cdd.js +0 -36
  305. package/dist/portal-c69756c0.js +0 -1
  306. package/dist/positioner-33529bb8.js +0 -1
  307. package/dist/runtime-3f13807b.js +0 -1
  308. package/dist/tree-0a7a8d05.js +0 -39
  309. /package/dist/{collection-a2969ad2.js → collection-qv8A8rq4.js} +0 -0
  310. /package/dist/{menu-item-styles-27fdbac4.mjs → menu-item-styles-CZiPwPwl.mjs} +0 -0
  311. /package/dist/{menu-item-styles-83ad1e22.js → menu-item-styles-CbNUEwP2.js} +0 -0
  312. /package/dist/{roving-focus-group-5c059bf9.js → roving-focus-group-BdJ_4Njm.js} +0 -0
  313. /package/dist/{scroll-lock-d7b0df21.js → scroll-lock-BX6e3Ced.js} +0 -0
@@ -1,9 +1,7 @@
1
- import { E as tt } from "./ElementBase-909688f3.mjs";
2
- import { c as et } from "./dismissable-layer-9c7e6b58.mjs";
3
- import { r as it, c as N } from "./calendar-2c11b824.mjs";
4
- import { r as rt, e as nt, i as m, s as st, b as at, p as K, f as Z, a as j, l as W, c as ot, d as w, g as lt, h as dt, n as L } from "./date-time-utils-a2c7af25.mjs";
5
- import "./scroll-lock-31da444f.mjs";
6
- import "./positioner-e9770c66.mjs";
1
+ import { E as tt } from "./ElementBase-YlTLMsGk.mjs";
2
+ import { c as et } from "./dismissable-layer-BmPIoK80.mjs";
3
+ import { r as it, c as N } from "./calendar-DLY4acgn.mjs";
4
+ import { r as rt, e as nt, i as m, s as st, b as at, p as K, f as Z, a as j, l as W, c as ot, d as w, g as lt, h as dt, n as L } from "./date-time-utils-y1N2gvG2.mjs";
7
5
  let ut = 0;
8
6
  const ct = `
9
7
  <svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
@@ -423,10 +421,9 @@ const ct = `
423
421
  }
424
422
  `;
425
423
  function Y(c) {
426
- if (!c)
427
- return { start: null, end: null };
424
+ if (!c) return { start: null, end: null };
428
425
  try {
429
- const t = JSON.parse(c), e = L((t == null ? void 0 : t.start) || null), i = L((t == null ? void 0 : t.end) || null);
426
+ const t = JSON.parse(c), e = L(t?.start || null), i = L(t?.end || null);
430
427
  return { start: e, end: i };
431
428
  } catch {
432
429
  return { start: null, end: null };
@@ -443,8 +440,7 @@ function _(c) {
443
440
  }
444
441
  function bt(c, t) {
445
442
  const e = c.trim();
446
- if (!e)
447
- return { start: null, end: null };
443
+ if (!e) return { start: null, end: null };
448
444
  const i = e.split(/\s(?:—|–|to)\s/i).map((n) => n.trim()).filter(Boolean);
449
445
  if (i.length > 1) {
450
446
  const n = w(i[0] || "", t), d = w(i[1] || "", t);
@@ -633,8 +629,7 @@ class yt extends tt {
633
629
  return !t.start && !t.end ? !0 : !(!this._allowPartial() && (!t.start || !t.end) || t.start && t.end && !this._allowSameDay() && t.start === t.end);
634
630
  }
635
631
  _commit(t, e) {
636
- if (this._isInteractionBlocked() || this._isReadonly())
637
- return;
632
+ if (this._isInteractionBlocked() || this._isReadonly()) return;
638
633
  const i = this._normalizePending(t);
639
634
  if (!this._canCommit(i)) {
640
635
  this._inlineError = this.getAttribute("error") || this._translations().invalidRange, this._emitInvalid(JSON.stringify(t), "range"), this._updateHostState();
@@ -663,25 +658,20 @@ class yt extends tt {
663
658
  }
664
659
  }
665
660
  _ensureOverlay() {
666
- if (this._overlay || typeof document > "u")
667
- return;
661
+ if (this._overlay || typeof document > "u") return;
668
662
  const t = document.createElement("div");
669
663
  t.className = "ui-date-range-picker-overlay-host", t.style.position = "fixed", t.style.left = "0", t.style.top = "0", t.style.pointerEvents = "none", t.addEventListener("click", this._onOverlayClickBound), t.addEventListener("select", this._onOverlayCalendarBound), t.addEventListener("change", this._onOverlayCalendarBound), document.body.appendChild(t), this._overlay = t, this._syncOverlayHostZIndex(), document.addEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.addEventListener("keydown", this._onDocumentKeyDownBound), window.addEventListener("resize", this._onWindowResizeBound), window.addEventListener("scroll", this._onWindowScrollBound, { passive: !0, capture: !0 }), this._isMobileSheet() && (this._releaseScrollLock = W());
670
664
  }
671
665
  _syncOverlayHostZIndex() {
672
- if (!this._overlay || typeof window > "u")
673
- return;
666
+ if (!this._overlay || typeof window > "u") return;
674
667
  const t = window.getComputedStyle(this).getPropertyValue("--ui-dp-z").trim();
675
668
  this._overlay.style.zIndex = t || "1600";
676
669
  }
677
670
  _destroyOverlay() {
678
- var t;
679
- (t = this._dismissableLayer) == null || t.destroy(), this._dismissableLayer = null, this._overlay && (this._schedulePosition.cancel(), document.removeEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.removeEventListener("keydown", this._onDocumentKeyDownBound), window.removeEventListener("resize", this._onWindowResizeBound), window.removeEventListener("scroll", this._onWindowScrollBound, !0), this._overlay.removeEventListener("click", this._onOverlayClickBound), this._overlay.removeEventListener("select", this._onOverlayCalendarBound), this._overlay.removeEventListener("change", this._onOverlayCalendarBound), this._overlay.parentElement && this._overlay.parentElement.removeChild(this._overlay), this._overlay = null, this._overlayMode = null, this._releaseScrollLock && (this._releaseScrollLock(), this._releaseScrollLock = null));
671
+ this._dismissableLayer?.destroy(), this._dismissableLayer = null, this._overlay && (this._schedulePosition.cancel(), document.removeEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.removeEventListener("keydown", this._onDocumentKeyDownBound), window.removeEventListener("resize", this._onWindowResizeBound), window.removeEventListener("scroll", this._onWindowScrollBound, !0), this._overlay.removeEventListener("click", this._onOverlayClickBound), this._overlay.removeEventListener("select", this._onOverlayCalendarBound), this._overlay.removeEventListener("change", this._onOverlayCalendarBound), this._overlay.parentElement && this._overlay.parentElement.removeChild(this._overlay), this._overlay = null, this._overlayMode = null, this._releaseScrollLock && (this._releaseScrollLock(), this._releaseScrollLock = null));
680
672
  }
681
673
  _syncDismissableLayer() {
682
- var i;
683
- if ((i = this._dismissableLayer) == null || i.destroy(), this._dismissableLayer = null, !this._open || !this._overlay)
684
- return;
674
+ if (this._dismissableLayer?.destroy(), this._dismissableLayer = null, !this._open || !this._overlay) return;
685
675
  const t = this._overlay.querySelector(".panel, .sheet"), e = this.root.querySelector(".fields");
686
676
  t && (this._dismissableLayer = et({
687
677
  node: t,
@@ -689,15 +679,13 @@ class yt extends tt {
689
679
  closeOnEscape: !0,
690
680
  closeOnPointerOutside: !0,
691
681
  closeOnFocusOutside: !1,
692
- onBeforeDismiss: (r) => r === "escape-key" ? (this._setOpen(!1, "escape"), !1) : (r === "outside-pointer" && this._setOpen(!1, "outside"), !1)
682
+ onBeforeDismiss: (i) => i === "escape-key" ? (this._setOpen(!1, "escape"), !1) : (i === "outside-pointer" && this._setOpen(!1, "outside"), !1)
693
683
  }));
694
684
  }
695
685
  _positionOverlay() {
696
- if (!this._overlay || !this._open || this._isMobileSheet())
697
- return;
686
+ if (!this._overlay || !this._open || this._isMobileSheet()) return;
698
687
  const t = this.root.querySelector(".fields"), e = this._overlay.querySelector(".panel");
699
- if (!t || !e)
700
- return;
688
+ if (!t || !e) return;
701
689
  const i = t.getBoundingClientRect();
702
690
  e.style.setProperty("--ui-drp-panel-width", `${Math.round(i.width)}px`);
703
691
  const r = e.getBoundingClientRect(), n = e.getAttribute("data-placement"), d = ot(
@@ -748,14 +736,12 @@ class yt extends tt {
748
736
  l === "lg" ? (t.style.setProperty("--ui-calendar-day-height", "1.95em"), t.style.setProperty("--ui-calendar-day-padding-block", "0.2em"), t.style.setProperty("--ui-calendar-day-padding-inline", "0.26em"), t.style.setProperty("--ui-calendar-gap", "0.42em"), t.style.setProperty("--ui-calendar-day-font-size", "0.78em"), t.style.setProperty("--ui-calendar-weekday-font-size", "0.7em"), t.style.setProperty("--ui-calendar-title-font-size", "0.88em")) : (t.style.setProperty("--ui-calendar-day-height", "2.4em"), t.style.setProperty("--ui-calendar-day-padding-block", "0.14em"), t.style.setProperty("--ui-calendar-day-padding-inline", "0.22em"), t.style.setProperty("--ui-calendar-gap", "0.34em"), t.style.setProperty("--ui-calendar-day-font-size", "0.72em"), t.style.setProperty("--ui-calendar-weekday-font-size", "0.64em"), t.style.setProperty("--ui-calendar-title-font-size", "0.8em")), p ? (t.style.setProperty("--ui-calendar-day-height", l === "lg" ? "2.1em" : "1.92em"), t.style.setProperty("--ui-calendar-day-padding-block", "0.08em"), t.style.setProperty("--ui-calendar-day-padding-inline", "0.14em"), t.style.setProperty("--ui-calendar-frame-padding", "0.28em"), t.style.setProperty("--ui-calendar-week-gap", "0.16em"), t.style.setProperty("--ui-calendar-control-height", "1.64em"), t.style.setProperty("--ui-calendar-gap", "0.2em"), t.style.setProperty("--ui-calendar-day-font-size", l === "lg" ? "0.76em" : "0.68em"), t.style.setProperty("--ui-calendar-weekday-font-size", l === "lg" ? "0.66em" : "0.58em"), t.style.setProperty("--ui-calendar-title-font-size", l === "lg" ? "0.84em" : "0.76em")) : (t.style.removeProperty("--ui-calendar-frame-padding"), t.style.removeProperty("--ui-calendar-week-gap"), t.style.removeProperty("--ui-calendar-control-height")), this._isReadonly() ? e("readonly", "") : e("readonly", null), this._isInteractionBlocked() ? e("disabled", "") : e("disabled", null), this._isBare() ? e("bare", "") : e("bare", null), e("tabindex", "-1"), e("aria-label", this.getAttribute("label") || this._translations().selectDateRange);
749
737
  }
750
738
  _ensureOverlayContent(t) {
751
- if (!this._overlay)
752
- return;
739
+ if (!this._overlay) return;
753
740
  const e = t ? "sheet" : "popover";
754
741
  this._overlayMode === e && this._overlay.querySelector(".drp-calendar") || (this._overlayMode = e, this._overlay.innerHTML = t ? `<div class="sheet-wrap">${this._renderPanelInner(!0)}</div>` : `<div class="overlay">${this._renderPanelInner(!1)}</div>`);
755
742
  }
756
743
  _syncOverlayState() {
757
- if (!this._overlay)
758
- return;
744
+ if (!this._overlay) return;
759
745
  this._syncOverlayHostZIndex();
760
746
  const t = this._isMobileSheet();
761
747
  t && !this._releaseScrollLock ? this._releaseScrollLock = W() : !t && this._releaseScrollLock && (this._releaseScrollLock(), this._releaseScrollLock = null), this._ensureOverlayContent(t);
@@ -813,16 +799,15 @@ class yt extends tt {
813
799
  }));
814
800
  }
815
801
  _updateHostState() {
816
- if (!this._hasView)
817
- return;
818
- const t = this.getAttribute("label") || "", e = this.getAttribute("hint") || "", i = this.getAttribute("error") || "", r = this._inlineError || i, n = this._translations(), d = r ? "error" : this._state(), l = this._rangeVariant(), p = this._isInlineMode(), h = !!(this._value.start || this._value.end || this._pending.start || this._pending.end), u = this._isInteractionBlocked(), b = this.root.querySelector(".label"), A = this.root.querySelector(".label-text"), I = this.root.querySelector(".required"), f = this.root.querySelector(".fields"), a = this.root.querySelector(".single"), o = this.root.querySelector(".start"), s = this.root.querySelector(".end"), y = this.root.querySelector(".sep"), k = this.root.querySelector('.btn[data-action="clear"]'), v = this.root.querySelector('.btn[data-action="toggle"]'), x = this.root.querySelector(".hint"), C = this.root.querySelector(".error"), g = this.root.querySelector(".inline-panel"), q = this.root.querySelector(".inline-panel .presets"), R = this.root.querySelector(".inline-panel .footer"), O = this.root.querySelector(".hidden-range"), z = this.root.querySelector(".hidden-start"), P = this.root.querySelector(".hidden-end"), G = this.root.querySelectorAll(".inline-panel .action");
802
+ if (!this._hasView) return;
803
+ const t = this.getAttribute("label") || "", e = this.getAttribute("hint") || "", i = this.getAttribute("error") || "", r = this._inlineError || i, n = this._translations(), d = r ? "error" : this._state(), l = this._rangeVariant(), p = this._isInlineMode(), h = !!(this._value.start || this._value.end || this._pending.start || this._pending.end), u = this._isInteractionBlocked(), b = this.root.querySelector(".label"), A = this.root.querySelector(".label-text"), I = this.root.querySelector(".required"), f = this.root.querySelector(".fields"), a = this.root.querySelector(".single"), o = this.root.querySelector(".start"), s = this.root.querySelector(".end"), y = this.root.querySelector(".sep"), k = this.root.querySelector('.btn[data-action="clear"]'), v = this.root.querySelector('.btn[data-action="toggle"]'), x = this.root.querySelector(".hint"), C = this.root.querySelector(".error"), g = this.root.querySelector(".inline-panel"), E = this.root.querySelector(".inline-panel .presets"), q = this.root.querySelector(".inline-panel .footer"), O = this.root.querySelector(".hidden-range"), z = this.root.querySelector(".hidden-start"), P = this.root.querySelector(".hidden-end"), G = this.root.querySelectorAll(".inline-panel .action");
819
804
  b && (b.hidden = !t, b.id = this._labelId, b.setAttribute("for", l === "single-field" ? this._singleId : this._startId)), A && (A.textContent = t), I && (I.hidden = !this.hasAttribute("required")), f && (f.dataset.single = l === "single-field" ? "true" : "false", f.dataset.invalid = r ? "true" : "false", f.dataset.open = this._open && !p ? "true" : "false", f.dataset.state = d, f.setAttribute("aria-disabled", u ? "true" : "false")), a && (a.value !== this._draftSingle && (a.value = this._draftSingle), a.id = this._singleId, a.hidden = l !== "single-field", a.readOnly = this._isReadonly() || u, a.disabled = u, a.required = this.hasAttribute("required"), a.placeholder = n.startEnd, a.autocomplete = "off", a.setAttribute("role", "combobox"), a.setAttribute("aria-haspopup", "dialog"), a.setAttribute("aria-controls", this._panelId), a.setAttribute("aria-expanded", p ? "false" : String(this._open)), a.setAttribute("aria-invalid", r ? "true" : "false"), t ? a.setAttribute("aria-labelledby", this._labelId) : a.removeAttribute("aria-labelledby")), o && (o.value !== this._draftStart && (o.value = this._draftStart), o.id = this._startId, o.hidden = l === "single-field", o.readOnly = this._isReadonly() || u, o.disabled = u, o.required = this.hasAttribute("required"), o.placeholder = n.startDate, o.autocomplete = "off", o.setAttribute("role", "combobox"), o.setAttribute("aria-haspopup", "dialog"), o.setAttribute("aria-controls", this._panelId), o.setAttribute("aria-expanded", p ? "false" : String(this._open)), o.setAttribute("aria-invalid", r ? "true" : "false"), t ? o.setAttribute("aria-labelledby", this._labelId) : o.removeAttribute("aria-labelledby")), s && (s.value !== this._draftEnd && (s.value = this._draftEnd), s.id = this._endId, s.hidden = l === "single-field", s.readOnly = this._isReadonly() || u, s.disabled = u, s.required = this.hasAttribute("required"), s.placeholder = n.endDate, s.autocomplete = "off", s.setAttribute("role", "combobox"), s.setAttribute("aria-haspopup", "dialog"), s.setAttribute("aria-controls", this._panelId), s.setAttribute("aria-expanded", p ? "false" : String(this._open)), s.setAttribute("aria-invalid", r ? "true" : "false"), t ? s.setAttribute("aria-labelledby", this._labelId) : s.removeAttribute("aria-labelledby")), y && (y.hidden = l === "single-field"), k && (k.hidden = !(this._clearable() && h), k.disabled = u, k.setAttribute("aria-label", n.clearDateRange)), v && (v.hidden = p, v.disabled = u, v.setAttribute("aria-expanded", p ? "false" : String(this._open)), v.setAttribute("aria-controls", this._panelId), v.setAttribute("aria-label", n.toggleCalendar)), x && (x.id = this._hintId, x.hidden = !e, x.textContent = e), C && (C.id = this._errorId, C.hidden = !r, C.textContent = r);
820
805
  const D = [];
821
806
  e && x && !x.hidden && D.push(this._hintId), r && D.push(this._errorId);
822
807
  const S = D.join(" ");
823
808
  a && (S ? a.setAttribute("aria-describedby", S) : a.removeAttribute("aria-describedby")), o && (S ? o.setAttribute("aria-describedby", S) : o.removeAttribute("aria-describedby")), s && (S ? s.setAttribute("aria-describedby", S) : s.removeAttribute("aria-describedby")), g && (g.hidden = !p, g.id = this._panelId, g.dataset.bare = this._isBare() ? "true" : "false", g.setAttribute("role", "dialog"), g.setAttribute("aria-modal", "false"), g.setAttribute("aria-label", t || n.selectDateRange));
824
- const E = this._showFooter();
825
- q && (q.hidden = !E), R && (R.hidden = !E), G.forEach((X) => {
809
+ const R = this._showFooter();
810
+ E && (E.hidden = !R), q && (q.hidden = !R), G.forEach((X) => {
826
811
  X.disabled = u || this._isReadonly();
827
812
  });
828
813
  const $ = this.root.querySelector('.inline-panel [data-action="preset-today"]');
@@ -844,9 +829,8 @@ class yt extends tt {
844
829
  }
845
830
  _onRootClick(t) {
846
831
  const e = t.target;
847
- if (!e)
848
- return;
849
- const i = e.closest("[data-action]"), r = i == null ? void 0 : i.getAttribute("data-action");
832
+ if (!e) return;
833
+ const i = e.closest("[data-action]"), r = i?.getAttribute("data-action");
850
834
  if (r && !this._isInteractionBlocked()) {
851
835
  if (r === "toggle") {
852
836
  this._restoreFocusEl = i, this._setOpen(!this._open, "toggle");
@@ -865,8 +849,7 @@ class yt extends tt {
865
849
  }
866
850
  _onRootInput(t) {
867
851
  const e = t.target;
868
- if (!(e instanceof HTMLInputElement) || this._isInteractionBlocked() || this._isReadonly())
869
- return;
852
+ if (!(e instanceof HTMLInputElement) || this._isInteractionBlocked() || this._isReadonly()) return;
870
853
  if (this._rangeVariant() === "single-field" && e.classList.contains("single")) {
871
854
  this._draftSingle = e.value, this._inlineError = "";
872
855
  return;
@@ -885,14 +868,11 @@ class yt extends tt {
885
868
  return this._draftStart && !i || this._draftEnd && !r ? (this._inlineError = this.getAttribute("error") || this._translations().invalidRange, this._emitInvalid(`${this._draftStart} ${this._draftEnd}`.trim(), "parse"), this._updateHostState(), !1) : (this._pending = this._normalizePending({ start: i, end: r }), this._commit(this._pending, t), !0);
886
869
  }
887
870
  _onRootBlur(t) {
888
- var n;
889
- if (this._isInteractionBlocked() || this._isReadonly())
890
- return;
871
+ if (this._isInteractionBlocked() || this._isReadonly()) return;
891
872
  const e = t, i = e.target;
892
- if (!(i instanceof HTMLInputElement))
893
- return;
873
+ if (!(i instanceof HTMLInputElement)) return;
894
874
  const r = e.relatedTarget;
895
- r && ((n = this._overlay) != null && n.contains(r)) || this._open && !this._isInlineMode() || (i.classList.contains("single") || i.classList.contains("start") || i.classList.contains("end")) && (i.classList.contains("single") && (this._draftSingle = i.value), i.classList.contains("start") && (this._draftStart = i.value), i.classList.contains("end") && (this._draftEnd = i.value), this._commitFromDraft("blur"));
875
+ r && this._overlay?.contains(r) || this._open && !this._isInlineMode() || (i.classList.contains("single") || i.classList.contains("start") || i.classList.contains("end")) && (i.classList.contains("single") && (this._draftSingle = i.value), i.classList.contains("start") && (this._draftStart = i.value), i.classList.contains("end") && (this._draftEnd = i.value), this._commitFromDraft("blur"));
896
876
  }
897
877
  _onRootKeyDown(t) {
898
878
  const e = t;
@@ -912,8 +892,7 @@ class yt extends tt {
912
892
  }
913
893
  }
914
894
  _onDocumentPointerDown(t) {
915
- if (!this._open || !this._overlay)
916
- return;
895
+ if (!this._open || !this._overlay) return;
917
896
  const e = t.composedPath();
918
897
  e.includes(this) || e.includes(this._overlay) || this._setOpen(!1, "outside");
919
898
  }
@@ -922,9 +901,8 @@ class yt extends tt {
922
901
  }
923
902
  _onOverlayClick(t) {
924
903
  const e = t.target;
925
- if (!e)
926
- return;
927
- const i = e.closest("[data-action]"), r = i == null ? void 0 : i.getAttribute("data-action");
904
+ if (!e) return;
905
+ const r = e.closest("[data-action]")?.getAttribute("data-action");
928
906
  if (r && !(this._isInteractionBlocked() || this._isReadonly())) {
929
907
  if (r === "backdrop") {
930
908
  this._setOpen(!1, "outside");
@@ -959,11 +937,9 @@ class yt extends tt {
959
937
  }
960
938
  }
961
939
  _onOverlayCalendarChange(t) {
962
- if (this._isInteractionBlocked() || this._isReadonly())
963
- return;
940
+ if (this._isInteractionBlocked() || this._isReadonly()) return;
964
941
  const e = t.target;
965
- if (!e || e.tagName.toLowerCase() !== "ui-calendar")
966
- return;
942
+ if (!e || e.tagName.toLowerCase() !== "ui-calendar") return;
967
943
  const i = t.detail;
968
944
  if (!(!i || i.mode !== "range")) {
969
945
  if (this._pending = this._normalizePending({
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const Y=require("./ElementBase-1b301e7f.js"),G=require("./dismissable-layer-193e3bed.js"),Q=require("./calendar-a8735e40.js"),s=require("./date-time-utils-66480de4.js");require("./scroll-lock-d7b0df21.js");require("./positioner-33529bb8.js");let X=0;const tt=`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const Y=require("./ElementBase-EV6mVBUV.js"),G=require("./dismissable-layer-DNfrKA20.js"),Q=require("./calendar-Dkof-FTK.js"),s=require("./date-time-utils-Dmost5Ee.js");let X=0;const tt=`
2
2
  <svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
3
3
  <path d="M6 2a1 1 0 0 1 1 1v1h6V3a1 1 0 1 1 2 0v1h.5A2.5 2.5 0 0 1 18 6.5v9A2.5 2.5 0 0 1 15.5 18h-11A2.5 2.5 0 0 1 2 15.5v-9A2.5 2.5 0 0 1 4.5 4H5V3a1 1 0 0 1 1-1Zm10 7H4v6.5c0 .276.224.5.5.5h11a.5.5 0 0 0 .5-.5V9ZM4.5 6a.5.5 0 0 0-.5.5V7h12v-.5a.5.5 0 0 0-.5-.5h-11Z" fill="currentColor"/>
4
4
  </svg>
@@ -518,7 +518,7 @@
518
518
  from { opacity: 0; transform: translateY(6px) scale(0.985); }
519
519
  to { opacity: 1; transform: translateY(0) scale(1); }
520
520
  }
521
- `;function j(m){if(!m)return{start:null,end:null};try{const t=JSON.parse(m),e=typeof(t==null?void 0:t.start)=="string"?t.start:null,i=typeof(t==null?void 0:t.end)=="string"?t.end:null;return{start:e,end:i}}catch{return{start:null,end:null}}}function W(m){return!m.start&&!m.end?null:JSON.stringify({...m.start?{start:m.start}:{},...m.end?{end:m.end}:{}})}function S(m){return String(m).padStart(2,"0")}function p(m){return m.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function D(m){var a,n;const t=new Date,e=`${S(t.getHours())}:${S(t.getMinutes())}`,i=`${S((t.getHours()+1)%24)}:${S(t.getMinutes())}`,r=s.splitDateTime(m.start||null),l=s.splitDateTime(m.end||null);return{startDate:(r==null?void 0:r.date)||null,endDate:(l==null?void 0:l.date)||null,startTime:((a=r==null?void 0:r.time)==null?void 0:a.slice(0,5))||e,endTime:((n=l==null?void 0:l.time)==null?void 0:n.slice(0,5))||i}}class J extends Y.ElementBase{constructor(){super(...arguments),this._value={start:null,end:null},this._pending=D({start:null,end:null}),this._display="",this._inlineError="",this._open=!1,this._syncing=!1,this._overlay=null,this._dismissableLayer=null,this._releaseScrollLock=null,this._isInitialized=!1,this._hasView=!1,this._restoreFocusEl=null,this._overlayKey=null,this._uid=`ui-drtp-${++X}`,this._inputId=`${this._uid}-input`,this._labelId=`${this._uid}-label`,this._hintId=`${this._uid}-hint`,this._errorId=`${this._uid}-error`,this._panelId=`${this._uid}-panel`,this._schedulePosition=s.rafThrottle(()=>this._positionOverlay()),this._onRootClickBound=t=>this._onRootClick(t),this._onRootChangeBound=t=>this._onRootChange(t),this._onRootKeyDownBound=t=>this._onRootKeyDown(t),this._onOverlayClickBound=t=>this._onOverlayClick(t),this._onOverlayChangeBound=t=>this._onOverlayChange(t),this._onOverlayCalendarBound=t=>this._onOverlayCalendar(t),this._onDocumentPointerDownBound=t=>this._onDocumentPointerDown(t),this._onDocumentKeyDownBound=t=>this._onDocumentKeyDown(t),this._onWindowResizeBound=()=>this._schedulePosition.run(),this._onWindowScrollBound=t=>{s.eventOriginatesWithin(t,[this._overlay])||this._schedulePosition.run()}}static get observedAttributes(){return["open","default-open","value","default-value","min","max","locale","translations","week-start","size","shape","bare","variant","state","step","auto-normalize","allow-partial","disabled","readonly","required","name","close-on-select","clearable","mode","label","hint","error","show-footer"]}connectedCallback(){if(super.connectedCallback(),this.root.addEventListener("click",this._onRootClickBound),this.root.addEventListener("change",this._onRootChangeBound),this.root.addEventListener("keydown",this._onRootKeyDownBound),!this._isInitialized){const t=j(this.getAttribute("value")||this.getAttribute("default-value"));this._value=t,this._pending=D(t),this._display=this._formatDisplay(),this._open=this.hasAttribute("open")||s.isTruthyAttr(this.getAttribute("default-open")),this._isInitialized=!0}this._open&&!this._isInlineMode()&&this._ensureOverlay()}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClickBound),this.root.removeEventListener("change",this._onRootChangeBound),this.root.removeEventListener("keydown",this._onRootKeyDownBound),this._destroyOverlay(),super.disconnectedCallback()}attributeChangedCallback(t,e,i){if(e!==i&&(t==="value"&&!this._syncing&&(this._value=j(i),this._pending=D(this._value),this._display=this._formatDisplay(),this._inlineError=""),t==="open"&&!this._syncing&&(this._open=this.hasAttribute("open"),this._syncOverlay("attribute")),t==="mode"&&this._syncOverlay("attribute"),t==="disabled"&&this.hasAttribute("disabled")&&this._setOpen(!1,"outside"),t==="state"&&this._state()==="loading"&&this._setOpen(!1,"outside"),!!this.isConnected)){if(!this._hasView){this.requestRender();return}this._updateHostState()}}_isInlineMode(){return(this.getAttribute("mode")||"popover")==="inline"}_isMobileSheet(){return s.shouldUseMobileSheet(this.getAttribute("mode"))}_isDisabled(){return this.hasAttribute("disabled")}_state(){const t=(this.getAttribute("state")||"").trim().toLowerCase();return t==="loading"||t==="error"||t==="success"?t:"idle"}_isInteractionBlocked(){return this._isDisabled()||this._state()==="loading"}_locale(){return s.normalizeLocale(this.getAttribute("locale"))}_isReadonly(){return this.hasAttribute("readonly")}_clearable(){return s.isTruthyAttr(this.getAttribute("clearable"),!0)}_showFooter(){return s.isTruthyAttr(this.getAttribute("show-footer"),!0)}_shouldAutoCommit(){return s.isTruthyAttr(this.getAttribute("close-on-select"),!1)||!this._showFooter()}_isBare(){return s.isTruthyAttr(this.getAttribute("bare"),!1)}_allowPartial(){return s.isTruthyAttr(this.getAttribute("allow-partial"),!0)}_autoNormalize(){return s.isTruthyAttr(this.getAttribute("auto-normalize"),!0)}_step(){const t=Number(this.getAttribute("step")||5);return!Number.isFinite(t)||t<1?5:Math.min(60,Math.trunc(t))}_translations(){return Q.resolveDateTimeTranslations(this.getAttribute("locale"),this.getAttribute("translations"))}_syncOpenAttribute(t){this._syncing=!0;try{t?this.hasAttribute("open")||this.setAttribute("open",""):this.hasAttribute("open")&&this.removeAttribute("open")}finally{this._syncing=!1}}_syncValueAttribute(t){const e=W(t);this._syncing=!0;try{e?this.getAttribute("value")!==e&&this.setAttribute("value",e):this.hasAttribute("value")&&this.removeAttribute("value")}finally{this._syncing=!1}}_emitInput(t){const e=this._valueFromPending(),i={mode:"datetimerange",start:e.start,end:e.end,value:e.start&&e.end?{start:e.start,end:e.end}:null,source:t};this.dispatchEvent(new CustomEvent("input",{detail:i,bubbles:!0,composed:!0}))}_emitChange(t){const e={mode:"datetimerange",start:this._value.start,end:this._value.end,value:this._value.start&&this._value.end?{start:this._value.start,end:this._value.end}:null,source:t};this.dispatchEvent(new CustomEvent("change",{detail:e,bubbles:!0,composed:!0}))}_emitInvalid(t,e){this.dispatchEvent(new CustomEvent("invalid",{detail:{raw:t,reason:e},bubbles:!0,composed:!0}))}_valueFromPending(){return{start:s.combineDateTime(this._pending.startDate,this._pending.startTime),end:s.combineDateTime(this._pending.endDate,this._pending.endTime)}}_formatDateTimeDisplay(t){const e=s.splitDateTime(t);return e?`${s.formatDateForDisplay(e.date,this._locale(),"locale",null)} ${e.time}`:t||""}_formatDisplay(){const t=this._value.start,e=this._value.end;return!t&&!e?"":t&&e?`${this._formatDateTimeDisplay(t)} — ${this._formatDateTimeDisplay(e)}`:this._formatDateTimeDisplay(t||e)}_normalizePendingState(t){var h,b;let e=s.combineDateTime(t.startDate,t.startTime),i=s.combineDateTime(t.endDate,t.endTime);if(e&&i&&s.compareDateTimes(e,i)>0&&this._autoNormalize()){const g=e;e=i,i=g}const r=s.parseConstraintDateTime(this.getAttribute("min")),l=s.parseConstraintDateTime(this.getAttribute("max"));let a=r?`${r.date}T${r.time}`:null,n=l?`${l.date}T${l.time}`:null;if(a&&n&&s.compareDateTimes(a,n)>0){const g=a;a=n,n=g}e&&a&&s.compareDateTimes(e,a)<0&&(e=a),e&&n&&s.compareDateTimes(e,n)>0&&(e=n),i&&a&&s.compareDateTimes(i,a)<0&&(i=a),i&&n&&s.compareDateTimes(i,n)>0&&(i=n);const o=s.splitDateTime(e||""),d=s.splitDateTime(i||"");return{startDate:(o==null?void 0:o.date)||null,endDate:(d==null?void 0:d.date)||null,startTime:((h=o==null?void 0:o.time)==null?void 0:h.slice(0,5))||t.startTime,endTime:((b=d==null?void 0:d.time)==null?void 0:b.slice(0,5))||t.endTime}}_commit(t,e){if(this._isInteractionBlocked()||this._isReadonly())return;const i=this._normalizePendingState(t),r={start:s.combineDateTime(i.startDate,i.startTime),end:s.combineDateTime(i.endDate,i.endTime)};if(!this._allowPartial()&&(!r.start||!r.end)){this._inlineError=this.getAttribute("error")||this._translations().rangeIncomplete,this._emitInvalid(JSON.stringify(r),"partial"),this._updateHostState();return}if(r.start&&r.end&&s.compareDateTimes(r.start,r.end)>0){this._inlineError=this.getAttribute("error")||this._translations().invalidRangeOrder,this._emitInvalid(JSON.stringify(r),"order"),this._updateHostState();return}this._value=r,this._pending=i,this._display=this._formatDisplay(),this._inlineError="",this._syncValueAttribute(r),this._emitInput(e),this._emitChange(e),this._updateHostState()}_setOpen(t,e){t&&this._isInteractionBlocked()||this._open!==t&&(this._open=t,this._syncOpenAttribute(t),this._syncOverlay(e),this._updateHostState(),this.dispatchEvent(new CustomEvent(t?"open":"close",{bubbles:!0,composed:!0})))}_syncOverlay(t){if(this._isInlineMode()){this._destroyOverlay();return}if(this._open){this._ensureOverlay(),this._syncOverlayState();return}this._destroyOverlay();const e=this._restoreFocusEl;if(this._restoreFocusEl=null,e&&e.isConnected)try{e.focus()}catch{}}_ensureOverlay(){if(this._overlay||typeof document>"u")return;const t=document.createElement("div");t.className="ui-date-range-time-picker-overlay-host",t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.pointerEvents="none",t.addEventListener("click",this._onOverlayClickBound),t.addEventListener("change",this._onOverlayChangeBound),t.addEventListener("change",this._onOverlayCalendarBound),document.body.appendChild(t),this._overlay=t,this._syncOverlayHostZIndex(),document.addEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.addEventListener("keydown",this._onDocumentKeyDownBound),window.addEventListener("resize",this._onWindowResizeBound),window.addEventListener("scroll",this._onWindowScrollBound,{passive:!0,capture:!0}),this._isMobileSheet()&&(this._releaseScrollLock=s.lockBodyScroll())}_syncOverlayHostZIndex(){if(!this._overlay||typeof window>"u")return;const t=window.getComputedStyle(this).getPropertyValue("--ui-drtp-z").trim();this._overlay.style.zIndex=t||"1600"}_destroyOverlay(){var t;(t=this._dismissableLayer)==null||t.destroy(),this._dismissableLayer=null,this._overlay&&(this._schedulePosition.cancel(),document.removeEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.removeEventListener("keydown",this._onDocumentKeyDownBound),window.removeEventListener("resize",this._onWindowResizeBound),window.removeEventListener("scroll",this._onWindowScrollBound,!0),this._overlay.removeEventListener("click",this._onOverlayClickBound),this._overlay.removeEventListener("change",this._onOverlayChangeBound),this._overlay.removeEventListener("change",this._onOverlayCalendarBound),this._overlay.parentElement&&this._overlay.parentElement.removeChild(this._overlay),this._overlay=null,this._overlayKey=null,this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null))}_syncDismissableLayer(){var i;if((i=this._dismissableLayer)==null||i.destroy(),this._dismissableLayer=null,!this._open||!this._overlay)return;const t=this._overlay.querySelector(".panel, .sheet"),e=this.root.querySelector(".field");t&&(this._dismissableLayer=G.createDismissableLayer({node:t,trigger:e,closeOnEscape:!0,closeOnPointerOutside:!0,closeOnFocusOutside:!1,onBeforeDismiss:r=>r==="escape-key"?(this._setOpen(!1,"escape"),!1):(r==="outside-pointer"&&this._setOpen(!1,"outside"),!1)}))}_positionOverlay(){if(!this._overlay||!this._open||this._isMobileSheet())return;const t=this.root.querySelector(".field"),e=this._overlay.querySelector(".panel");if(!t||!e)return;const i=e.getAttribute("data-placement"),r=s.computePopoverPosition(t.getBoundingClientRect(),e.getBoundingClientRect(),8,8,i==="top"?"top":i==="bottom"?"bottom":null);e.style.position="absolute",e.style.top=`${Math.round(r.top)}px`,e.style.left=`${Math.round(r.left)}px`,e.setAttribute("data-placement",r.placement)}_timeOptions(t){const e=s.parseTimeInput(t,!0)||{hours:0,minutes:0,seconds:0},i=this._step(),r=Array.from({length:24},(a,n)=>`<option value="${n}" ${n===e.hours?"selected":""}>${S(n)}</option>`).join(""),l=Array.from({length:Math.ceil(60/i)},(a,n)=>{const o=Math.min(59,n*i);return`<option value="${o}" ${o===e.minutes?"selected":""}>${S(o)}</option>`}).join("");return{hours:r,minutes:l}}_renderSurfaceInner(t,e=!1){const i=this._translations(),r=this._timeOptions(this._pending.startTime),l=this._timeOptions(this._pending.endTime),a=(this.getAttribute("label")||"").trim(),n=p(a),o=p(a||i.selectDateRange),d=this._valueFromPending(),h=d.start&&d.end?`${this._formatDateTimeDisplay(d.start)} — ${this._formatDateTimeDisplay(d.end)}`:i.selectDateRange,b=p(`${i.startTime} ${i.hour}`),g=p(`${i.startTime} ${i.minute}`),x=p(`${i.endTime} ${i.hour}`),u=p(`${i.endTime} ${i.minute}`),_=`
521
+ `;function j(m){if(!m)return{start:null,end:null};try{const t=JSON.parse(m),e=typeof t?.start=="string"?t.start:null,i=typeof t?.end=="string"?t.end:null;return{start:e,end:i}}catch{return{start:null,end:null}}}function W(m){return!m.start&&!m.end?null:JSON.stringify({...m.start?{start:m.start}:{},...m.end?{end:m.end}:{}})}function D(m){return String(m).padStart(2,"0")}function p(m){return m.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function w(m){const t=new Date,e=`${D(t.getHours())}:${D(t.getMinutes())}`,i=`${D((t.getHours()+1)%24)}:${D(t.getMinutes())}`,r=s.splitDateTime(m.start||null),d=s.splitDateTime(m.end||null);return{startDate:r?.date||null,endDate:d?.date||null,startTime:r?.time?.slice(0,5)||e,endTime:d?.time?.slice(0,5)||i}}class J extends Y.ElementBase{constructor(){super(...arguments),this._value={start:null,end:null},this._pending=w({start:null,end:null}),this._display="",this._inlineError="",this._open=!1,this._syncing=!1,this._overlay=null,this._dismissableLayer=null,this._releaseScrollLock=null,this._isInitialized=!1,this._hasView=!1,this._restoreFocusEl=null,this._overlayKey=null,this._uid=`ui-drtp-${++X}`,this._inputId=`${this._uid}-input`,this._labelId=`${this._uid}-label`,this._hintId=`${this._uid}-hint`,this._errorId=`${this._uid}-error`,this._panelId=`${this._uid}-panel`,this._schedulePosition=s.rafThrottle(()=>this._positionOverlay()),this._onRootClickBound=t=>this._onRootClick(t),this._onRootChangeBound=t=>this._onRootChange(t),this._onRootKeyDownBound=t=>this._onRootKeyDown(t),this._onOverlayClickBound=t=>this._onOverlayClick(t),this._onOverlayChangeBound=t=>this._onOverlayChange(t),this._onOverlayCalendarBound=t=>this._onOverlayCalendar(t),this._onDocumentPointerDownBound=t=>this._onDocumentPointerDown(t),this._onDocumentKeyDownBound=t=>this._onDocumentKeyDown(t),this._onWindowResizeBound=()=>this._schedulePosition.run(),this._onWindowScrollBound=t=>{s.eventOriginatesWithin(t,[this._overlay])||this._schedulePosition.run()}}static get observedAttributes(){return["open","default-open","value","default-value","min","max","locale","translations","week-start","size","shape","bare","variant","state","step","auto-normalize","allow-partial","disabled","readonly","required","name","close-on-select","clearable","mode","label","hint","error","show-footer"]}connectedCallback(){if(super.connectedCallback(),this.root.addEventListener("click",this._onRootClickBound),this.root.addEventListener("change",this._onRootChangeBound),this.root.addEventListener("keydown",this._onRootKeyDownBound),!this._isInitialized){const t=j(this.getAttribute("value")||this.getAttribute("default-value"));this._value=t,this._pending=w(t),this._display=this._formatDisplay(),this._open=this.hasAttribute("open")||s.isTruthyAttr(this.getAttribute("default-open")),this._isInitialized=!0}this._open&&!this._isInlineMode()&&this._ensureOverlay()}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClickBound),this.root.removeEventListener("change",this._onRootChangeBound),this.root.removeEventListener("keydown",this._onRootKeyDownBound),this._destroyOverlay(),super.disconnectedCallback()}attributeChangedCallback(t,e,i){if(e!==i&&(t==="value"&&!this._syncing&&(this._value=j(i),this._pending=w(this._value),this._display=this._formatDisplay(),this._inlineError=""),t==="open"&&!this._syncing&&(this._open=this.hasAttribute("open"),this._syncOverlay("attribute")),t==="mode"&&this._syncOverlay("attribute"),t==="disabled"&&this.hasAttribute("disabled")&&this._setOpen(!1,"outside"),t==="state"&&this._state()==="loading"&&this._setOpen(!1,"outside"),!!this.isConnected)){if(!this._hasView){this.requestRender();return}this._updateHostState()}}_isInlineMode(){return(this.getAttribute("mode")||"popover")==="inline"}_isMobileSheet(){return s.shouldUseMobileSheet(this.getAttribute("mode"))}_isDisabled(){return this.hasAttribute("disabled")}_state(){const t=(this.getAttribute("state")||"").trim().toLowerCase();return t==="loading"||t==="error"||t==="success"?t:"idle"}_isInteractionBlocked(){return this._isDisabled()||this._state()==="loading"}_locale(){return s.normalizeLocale(this.getAttribute("locale"))}_isReadonly(){return this.hasAttribute("readonly")}_clearable(){return s.isTruthyAttr(this.getAttribute("clearable"),!0)}_showFooter(){return s.isTruthyAttr(this.getAttribute("show-footer"),!0)}_shouldAutoCommit(){return s.isTruthyAttr(this.getAttribute("close-on-select"),!1)||!this._showFooter()}_isBare(){return s.isTruthyAttr(this.getAttribute("bare"),!1)}_allowPartial(){return s.isTruthyAttr(this.getAttribute("allow-partial"),!0)}_autoNormalize(){return s.isTruthyAttr(this.getAttribute("auto-normalize"),!0)}_step(){const t=Number(this.getAttribute("step")||5);return!Number.isFinite(t)||t<1?5:Math.min(60,Math.trunc(t))}_translations(){return Q.resolveDateTimeTranslations(this.getAttribute("locale"),this.getAttribute("translations"))}_syncOpenAttribute(t){this._syncing=!0;try{t?this.hasAttribute("open")||this.setAttribute("open",""):this.hasAttribute("open")&&this.removeAttribute("open")}finally{this._syncing=!1}}_syncValueAttribute(t){const e=W(t);this._syncing=!0;try{e?this.getAttribute("value")!==e&&this.setAttribute("value",e):this.hasAttribute("value")&&this.removeAttribute("value")}finally{this._syncing=!1}}_emitInput(t){const e=this._valueFromPending(),i={mode:"datetimerange",start:e.start,end:e.end,value:e.start&&e.end?{start:e.start,end:e.end}:null,source:t};this.dispatchEvent(new CustomEvent("input",{detail:i,bubbles:!0,composed:!0}))}_emitChange(t){const e={mode:"datetimerange",start:this._value.start,end:this._value.end,value:this._value.start&&this._value.end?{start:this._value.start,end:this._value.end}:null,source:t};this.dispatchEvent(new CustomEvent("change",{detail:e,bubbles:!0,composed:!0}))}_emitInvalid(t,e){this.dispatchEvent(new CustomEvent("invalid",{detail:{raw:t,reason:e},bubbles:!0,composed:!0}))}_valueFromPending(){return{start:s.combineDateTime(this._pending.startDate,this._pending.startTime),end:s.combineDateTime(this._pending.endDate,this._pending.endTime)}}_formatDateTimeDisplay(t){const e=s.splitDateTime(t);return e?`${s.formatDateForDisplay(e.date,this._locale(),"locale",null)} ${e.time}`:t||""}_formatDisplay(){const t=this._value.start,e=this._value.end;return!t&&!e?"":t&&e?`${this._formatDateTimeDisplay(t)} — ${this._formatDateTimeDisplay(e)}`:this._formatDateTimeDisplay(t||e)}_normalizePendingState(t){let e=s.combineDateTime(t.startDate,t.startTime),i=s.combineDateTime(t.endDate,t.endTime);if(e&&i&&s.compareDateTimes(e,i)>0&&this._autoNormalize()){const h=e;e=i,i=h}const r=s.parseConstraintDateTime(this.getAttribute("min")),d=s.parseConstraintDateTime(this.getAttribute("max"));let a=r?`${r.date}T${r.time}`:null,n=d?`${d.date}T${d.time}`:null;if(a&&n&&s.compareDateTimes(a,n)>0){const h=a;a=n,n=h}e&&a&&s.compareDateTimes(e,a)<0&&(e=a),e&&n&&s.compareDateTimes(e,n)>0&&(e=n),i&&a&&s.compareDateTimes(i,a)<0&&(i=a),i&&n&&s.compareDateTimes(i,n)>0&&(i=n);const o=s.splitDateTime(e||""),c=s.splitDateTime(i||"");return{startDate:o?.date||null,endDate:c?.date||null,startTime:o?.time?.slice(0,5)||t.startTime,endTime:c?.time?.slice(0,5)||t.endTime}}_commit(t,e){if(this._isInteractionBlocked()||this._isReadonly())return;const i=this._normalizePendingState(t),r={start:s.combineDateTime(i.startDate,i.startTime),end:s.combineDateTime(i.endDate,i.endTime)};if(!this._allowPartial()&&(!r.start||!r.end)){this._inlineError=this.getAttribute("error")||this._translations().rangeIncomplete,this._emitInvalid(JSON.stringify(r),"partial"),this._updateHostState();return}if(r.start&&r.end&&s.compareDateTimes(r.start,r.end)>0){this._inlineError=this.getAttribute("error")||this._translations().invalidRangeOrder,this._emitInvalid(JSON.stringify(r),"order"),this._updateHostState();return}this._value=r,this._pending=i,this._display=this._formatDisplay(),this._inlineError="",this._syncValueAttribute(r),this._emitInput(e),this._emitChange(e),this._updateHostState()}_setOpen(t,e){t&&this._isInteractionBlocked()||this._open!==t&&(this._open=t,this._syncOpenAttribute(t),this._syncOverlay(e),this._updateHostState(),this.dispatchEvent(new CustomEvent(t?"open":"close",{bubbles:!0,composed:!0})))}_syncOverlay(t){if(this._isInlineMode()){this._destroyOverlay();return}if(this._open){this._ensureOverlay(),this._syncOverlayState();return}this._destroyOverlay();const e=this._restoreFocusEl;if(this._restoreFocusEl=null,e&&e.isConnected)try{e.focus()}catch{}}_ensureOverlay(){if(this._overlay||typeof document>"u")return;const t=document.createElement("div");t.className="ui-date-range-time-picker-overlay-host",t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.pointerEvents="none",t.addEventListener("click",this._onOverlayClickBound),t.addEventListener("change",this._onOverlayChangeBound),t.addEventListener("change",this._onOverlayCalendarBound),document.body.appendChild(t),this._overlay=t,this._syncOverlayHostZIndex(),document.addEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.addEventListener("keydown",this._onDocumentKeyDownBound),window.addEventListener("resize",this._onWindowResizeBound),window.addEventListener("scroll",this._onWindowScrollBound,{passive:!0,capture:!0}),this._isMobileSheet()&&(this._releaseScrollLock=s.lockBodyScroll())}_syncOverlayHostZIndex(){if(!this._overlay||typeof window>"u")return;const t=window.getComputedStyle(this).getPropertyValue("--ui-drtp-z").trim();this._overlay.style.zIndex=t||"1600"}_destroyOverlay(){this._dismissableLayer?.destroy(),this._dismissableLayer=null,this._overlay&&(this._schedulePosition.cancel(),document.removeEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.removeEventListener("keydown",this._onDocumentKeyDownBound),window.removeEventListener("resize",this._onWindowResizeBound),window.removeEventListener("scroll",this._onWindowScrollBound,!0),this._overlay.removeEventListener("click",this._onOverlayClickBound),this._overlay.removeEventListener("change",this._onOverlayChangeBound),this._overlay.removeEventListener("change",this._onOverlayCalendarBound),this._overlay.parentElement&&this._overlay.parentElement.removeChild(this._overlay),this._overlay=null,this._overlayKey=null,this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null))}_syncDismissableLayer(){if(this._dismissableLayer?.destroy(),this._dismissableLayer=null,!this._open||!this._overlay)return;const t=this._overlay.querySelector(".panel, .sheet"),e=this.root.querySelector(".field");t&&(this._dismissableLayer=G.createDismissableLayer({node:t,trigger:e,closeOnEscape:!0,closeOnPointerOutside:!0,closeOnFocusOutside:!1,onBeforeDismiss:i=>i==="escape-key"?(this._setOpen(!1,"escape"),!1):(i==="outside-pointer"&&this._setOpen(!1,"outside"),!1)}))}_positionOverlay(){if(!this._overlay||!this._open||this._isMobileSheet())return;const t=this.root.querySelector(".field"),e=this._overlay.querySelector(".panel");if(!t||!e)return;const i=e.getAttribute("data-placement"),r=s.computePopoverPosition(t.getBoundingClientRect(),e.getBoundingClientRect(),8,8,i==="top"?"top":i==="bottom"?"bottom":null);e.style.position="absolute",e.style.top=`${Math.round(r.top)}px`,e.style.left=`${Math.round(r.left)}px`,e.setAttribute("data-placement",r.placement)}_timeOptions(t){const e=s.parseTimeInput(t)||{hours:0,minutes:0},i=this._step(),r=Array.from({length:24},(a,n)=>`<option value="${n}" ${n===e.hours?"selected":""}>${D(n)}</option>`).join(""),d=Array.from({length:Math.ceil(60/i)},(a,n)=>{const o=Math.min(59,n*i);return`<option value="${o}" ${o===e.minutes?"selected":""}>${D(o)}</option>`}).join("");return{hours:r,minutes:d}}_renderSurfaceInner(t,e=!1){const i=this._translations(),r=this._timeOptions(this._pending.startTime),d=this._timeOptions(this._pending.endTime),a=(this.getAttribute("label")||"").trim(),n=p(a),o=p(a||i.selectDateRange),c=this._valueFromPending(),h=c.start&&c.end?`${this._formatDateTimeDisplay(c.start)} — ${this._formatDateTimeDisplay(c.end)}`:i.selectDateRange,_=p(`${i.startTime} ${i.hour}`),S=p(`${i.startTime} ${i.minute}`),v=p(`${i.endTime} ${i.hour}`),l=p(`${i.endTime} ${i.minute}`),f=`
522
522
  <header class="head">
523
523
  <div>
524
524
  <p class="head-title" ${a?"":"hidden"}>${n}</p>
@@ -538,13 +538,13 @@
538
538
  </div>
539
539
  <div class="time-row">
540
540
  <p class="time-row-label"><span class="icon-inline">${T}</span>${p(i.startTime)}</p>
541
- <select data-time="start" data-segment="hours" aria-label="${b}">${r.hours}</select>
542
- <select data-time="start" data-segment="minutes" aria-label="${g}">${r.minutes}</select>
541
+ <select data-time="start" data-segment="hours" aria-label="${_}">${r.hours}</select>
542
+ <select data-time="start" data-segment="minutes" aria-label="${S}">${r.minutes}</select>
543
543
  </div>
544
544
  <div class="time-row">
545
545
  <p class="time-row-label"><span class="icon-inline">${T}</span>${p(i.endTime)}</p>
546
- <select data-time="end" data-segment="hours" aria-label="${x}">${l.hours}</select>
547
- <select data-time="end" data-segment="minutes" aria-label="${u}">${l.minutes}</select>
546
+ <select data-time="end" data-segment="hours" aria-label="${v}">${d.hours}</select>
547
+ <select data-time="end" data-segment="minutes" aria-label="${l}">${d.minutes}</select>
548
548
  </div>
549
549
  </div>
550
550
  </div>
@@ -560,11 +560,11 @@
560
560
  ${e?"":`<button type="button" class="action" data-action="cancel">${p(i.cancel)}</button>`}
561
561
  <button type="button" class="action" data-action="apply" data-tone="primary">${p(i.apply)}</button>
562
562
  </footer>
563
- `;return e?_:`
563
+ `;return e?f:`
564
564
  <style>${st}</style>
565
565
  ${t?'<div class="sheet-backdrop" data-action="backdrop"></div>':""}
566
- <section class="${t?"sheet":"panel"}" id="${this._panelId}" role="dialog" aria-modal="${t?"true":"false"}" aria-label="${o}" part="${t?"sheet":"popover"}">${_}</section>
567
- `}_syncCalendar(t){const e=(d,h)=>{if(h==null||h===""){t.hasAttribute(d)&&t.removeAttribute(d);return}t.getAttribute(d)!==h&&t.setAttribute(d,h)},i=(d,h)=>{h?e(d,""):e(d,null)};e("selection","range"),e("value",JSON.stringify({...this._pending.startDate?{start:this._pending.startDate}:{},...this._pending.endDate?{end:this._pending.endDate}:{}}));const r=s.parseConstraintDateTime(this.getAttribute("min")),l=s.parseConstraintDateTime(this.getAttribute("max"));e("min",(r==null?void 0:r.date)||null),e("max",(l==null?void 0:l.date)||null),e("locale",this.getAttribute("locale")),e("translations",this.getAttribute("translations")),e("week-start",this.getAttribute("week-start"));const n=this.getAttribute("size")||"sm",o=t.classList.contains("drtp-calendar-inline");e("size",n==="lg"?"md":"sm"),e("variant",this.getAttribute("variant")),i("readonly",this._isReadonly()),i("disabled",this._isInteractionBlocked()),i("bare",this._isBare()),e("tabindex","-1"),n==="lg"?(t.style.setProperty("--ui-calendar-day-height","1.95em"),t.style.setProperty("--ui-calendar-day-padding-block","0.2em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.26em"),t.style.setProperty("--ui-calendar-gap","0.42em"),t.style.setProperty("--ui-calendar-day-font-size","0.78em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.7em"),t.style.setProperty("--ui-calendar-title-font-size","0.88em")):(t.style.setProperty("--ui-calendar-day-height","2.4em"),t.style.setProperty("--ui-calendar-day-padding-block","0.14em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.22em"),t.style.setProperty("--ui-calendar-gap","0.34em"),t.style.setProperty("--ui-calendar-day-font-size","0.72em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.64em"),t.style.setProperty("--ui-calendar-title-font-size","0.8em")),o?(t.style.setProperty("--ui-calendar-frame-padding","0.32em"),t.style.setProperty("--ui-calendar-week-gap","0.18em"),t.style.setProperty("--ui-calendar-control-height","1.72em"),t.style.setProperty("--ui-calendar-gap","0.24em")):(t.style.removeProperty("--ui-calendar-frame-padding"),t.style.removeProperty("--ui-calendar-week-gap"),t.style.removeProperty("--ui-calendar-control-height")),e("aria-label",this.getAttribute("label")||this._translations().selectDateRange)}_overlaySignature(t){return[t?"sheet":"popover",this._step(),this.getAttribute("locale")||"",this.getAttribute("label")||"",this.getAttribute("translations")||""].join(":")}_ensureOverlayContent(t){if(!this._overlay)return;const e=this._overlaySignature(t);this._overlayKey===e&&this._overlay.querySelector(".drtp-calendar")||(this._overlayKey=e,this._overlay.innerHTML=t?`<div class="sheet-wrap">${this._renderSurfaceInner(!0)}</div>`:`<div class="overlay">${this._renderSurfaceInner(!1)}</div>`)}_setClosestOptionValue(t,e){const i=Array.from(t.options).map(a=>Number(a.value)).filter(a=>Number.isFinite(a));if(!i.length)return;let r=i[0],l=Math.abs(r-e);for(let a=1;a<i.length;a+=1){const n=i[a],o=Math.abs(n-e);o<l&&(r=n,l=o)}t.value=String(r)}_syncOverlayState(){if(!this._overlay)return;this._syncOverlayHostZIndex();const t=this._isMobileSheet();this._ensureOverlayContent(t),this._syncDismissableLayer();const e=this._translations(),i=this._overlay.querySelector(".panel, .sheet"),r=this._overlay.querySelector(".presets"),l=this._overlay.querySelector(".footer");i&&(i.dataset.bare=this._isBare()?"true":"false");const a=this._showFooter();r&&(r.hidden=!a),l&&(l.hidden=!a);const n=this._overlay.querySelector(".head-title");if(n){const f=(this.getAttribute("label")||"").trim();n.textContent=f,n.hidden=!f}const o=this._overlay.querySelector(".head-meta"),d=this._valueFromPending();o&&(o.textContent=d.start&&d.end?`${this._formatDateTimeDisplay(d.start)} — ${this._formatDateTimeDisplay(d.end)}`:e.selectDateRange);const h=this._overlay.querySelector(".drtp-calendar");h&&this._syncCalendar(h);const b=s.parseTimeInput(this._pending.startTime,!0)||{hours:0,minutes:0,seconds:0},g=s.parseTimeInput(this._pending.endTime,!0)||{hours:0,minutes:0,seconds:0},x=this._overlay.querySelector('select[data-time="start"][data-segment="hours"]'),u=this._overlay.querySelector('select[data-time="start"][data-segment="minutes"]'),_=this._overlay.querySelector('select[data-time="end"][data-segment="hours"]'),y=this._overlay.querySelector('select[data-time="end"][data-segment="minutes"]');x&&this._setClosestOptionValue(x,b.hours),u&&this._setClosestOptionValue(u,b.minutes),_&&this._setClosestOptionValue(_,g.hours),y&&this._setClosestOptionValue(y,g.minutes);const v=this._isInteractionBlocked()||this._isReadonly();[x,u,_,y].forEach(f=>{f&&(f.disabled=v)}),this._overlay.querySelectorAll(".action, .preset").forEach(f=>{f.disabled=v}),t||this._schedulePosition.run()}_renderOverlay(){this._syncOverlayState()}_applyTimeFromOverlay(t){var o,d;const e=t.getAttribute("data-time"),i=(o=this._overlay)==null?void 0:o.querySelector(`select[data-time="${e}"][data-segment="hours"]`),r=(d=this._overlay)==null?void 0:d.querySelector(`select[data-time="${e}"][data-segment="minutes"]`);if(!e||!i||!r)return;const l=Number(i.value),a=Number(r.value);if(!Number.isFinite(l)||!Number.isFinite(a))return;const n=`${S(l)}:${S(a)}`;e==="start"&&(this._pending.startTime=n),e==="end"&&(this._pending.endTime=n),this._pending=this._normalizePendingState(this._pending),this._emitInput("time")}_todayIso(){const t=new Date,e=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0");return`${t.getFullYear()}-${e}-${i}`}_applyPreset(t){const e=this._todayIso();if(t==="preset-today"){this._pending.startDate=e,this._pending.endDate=e,this._pending=this._normalizePendingState(this._pending),this._emitInput("preset-today");return}if(t==="preset-last7"){const r=s.computeLastDaysRange(e,7);this._pending.startDate=r.start,this._pending.endDate=r.end,this._pending=this._normalizePendingState(this._pending),this._emitInput("preset-last7");return}const i=s.computeMonthRange(e);this._pending.startDate=i.start,this._pending.endDate=i.end,this._pending=this._normalizePendingState(this._pending),this._emitInput("preset-month")}_onRootClick(t){var r;const e=t.target;if(!e)return;const i=(r=e.closest("[data-action]"))==null?void 0:r.getAttribute("data-action");if(i&&!this._isInteractionBlocked()&&!(this._isReadonly()&&i!=="toggle")){if(i==="toggle"){this._restoreFocusEl=e,this._setOpen(!this._open,"toggle");return}if(i==="clear"){this._isInlineMode()?(this._pending=D({start:null,end:null}),this._emitInput("clear"),this._updateHostState()):(this._pending=D({start:null,end:null}),this._commit(this._pending,"clear"));return}if(this._isInlineMode()&&(i==="preset-today"||i==="preset-last7"||i==="preset-month")){this._applyPreset(i),this._updateHostState();return}if(this._isInlineMode()&&i==="cancel"){this._pending=D(this._value),this._updateHostState();return}this._isInlineMode()&&i==="apply"&&this._commit(this._pending,"apply")}}_onRootChange(t){if(!this._isInlineMode())return;const e=t.target;if(e){if(e.tagName.toLowerCase()==="ui-calendar"){this._onOverlayCalendar(t);return}if(e instanceof HTMLSelectElement&&e.closest(".inline-panel")){if(!e.matches("select[data-time][data-segment]")||this._isInteractionBlocked()||this._isReadonly())return;if(this._applyTimeFromOverlay(e),this._shouldAutoCommit()){const i=this._valueFromPending();if(i.start&&i.end){this._commit(this._pending,"time");return}}this._updateHostState()}}}_onRootKeyDown(t){const e=t;if(!this._isInteractionBlocked()){if(e.key==="Escape"&&this._open&&!this._isInlineMode()){e.preventDefault(),this._setOpen(!1,"escape");return}e.key==="ArrowDown"&&!this._open&&!this._isInlineMode()&&(e.preventDefault(),this._setOpen(!0,"keyboard"))}}_onOverlayClick(t){var r;const e=t.target;if(!e)return;const i=(r=e.closest("[data-action]"))==null?void 0:r.getAttribute("data-action");if(i&&!(this._isInteractionBlocked()||this._isReadonly())){if(i==="backdrop"){this._setOpen(!1,"outside");return}if(i==="cancel"){this._pending=D(this._value),this._setOpen(!1,"cancel");return}if(i==="clear"){this._pending=D({start:null,end:null}),this._emitInput("clear"),this._renderOverlay();return}if(i==="preset-today"||i==="preset-last7"||i==="preset-month"){this._applyPreset(i),this._renderOverlay();return}i==="apply"&&(this._commit(this._pending,"apply"),this._setOpen(!1,"apply"))}}_onOverlayChange(t){const e=t.target;if(e instanceof HTMLSelectElement&&e.matches("select[data-time][data-segment]")&&!(this._isInteractionBlocked()||this._isReadonly())&&(this._applyTimeFromOverlay(e),this._shouldAutoCommit())){const i=this._valueFromPending();i.start&&i.end&&(this._commit(this._pending,"time"),this._setOpen(!1,"time"))}}_onOverlayCalendar(t){if(this._isInteractionBlocked()||this._isReadonly())return;const e=t.target;if(!e||e.tagName.toLowerCase()!=="ui-calendar")return;const i=t.detail;if(!(!i||i.mode!=="range")){if(this._pending.startDate=i.start||null,this._pending.endDate=i.end||null,this._pending=this._normalizePendingState(this._pending),this._emitInput("calendar"),this._shouldAutoCommit()&&this._pending.startDate&&this._pending.endDate){this._commit(this._pending,"calendar"),this._setOpen(!1,"calendar");return}this._isInlineMode()?this._updateHostState():this._renderOverlay()}}_onDocumentPointerDown(t){if(!this._open||!this._overlay)return;const e=t.composedPath();e.includes(this)||e.includes(this._overlay)||this._setOpen(!1,"outside")}_onDocumentKeyDown(t){this._open&&t.key==="Escape"&&(t.preventDefault(),this._setOpen(!1,"escape"))}_updateHostState(){if(!this._hasView)return;const t=this.getAttribute("label")||"",e=this.getAttribute("hint")||"",i=this.getAttribute("error")||"",r=this._inlineError||i,l=!!(this._value.start||this._value.end),a=this.getAttribute("name")||"",n=this._isInlineMode(),o=this._translations(),d=r?"error":this._state(),h=this._formatDisplay();this._display=h,this._state()==="loading"?this.setAttribute("aria-busy","true"):this.removeAttribute("aria-busy");const b=this.root.querySelector(".label"),g=this.root.querySelector(".label-text"),x=this.root.querySelector(".required"),u=this.root.querySelector(".input"),_=this.root.querySelector('.btn[data-action="clear"]'),y=this.root.querySelector('.btn[data-action="toggle"]'),v=this.root.querySelector(".hint"),f=this.root.querySelector(".error"),C=this.root.querySelector(".hidden-input");if(b&&(b.hidden=!t,b.id=this._labelId,b.setAttribute("for",this._inputId)),g&&(g.textContent=t),x&&(x.hidden=!this.hasAttribute("required")),u&&(u.value!==h&&(u.value=h),u.id=this._inputId,u.placeholder=o.dateRangeTimePlaceholder,u.readOnly=!0,u.disabled=this._isInteractionBlocked(),u.required=this.hasAttribute("required"),u.autocomplete="off",u.setAttribute("role","combobox"),u.setAttribute("aria-haspopup","dialog"),u.setAttribute("aria-expanded",n?"false":String(this._open)),u.setAttribute("aria-controls",this._panelId),u.setAttribute("aria-invalid",r?"true":"false"),t?u.setAttribute("aria-labelledby",this._labelId):u.removeAttribute("aria-labelledby")),_&&(_.hidden=!(this._clearable()&&l),_.setAttribute("aria-label",o.clearDateRange),_.disabled=this._isInteractionBlocked()),y&&(y.hidden=n,y.setAttribute("aria-label",o.toggleCalendar),y.setAttribute("aria-expanded",n?"false":String(this._open)),y.setAttribute("aria-controls",this._panelId),y.disabled=this._isInteractionBlocked()),v&&(v.id=this._hintId,v.hidden=!e,v.textContent=e),f&&(f.id=this._errorId,f.hidden=!r,f.textContent=r),u){const w=[];e&&v&&!v.hidden&&w.push(this._hintId),r&&w.push(this._errorId),w.length?u.setAttribute("aria-describedby",w.join(" ")):u.removeAttribute("aria-describedby")}C&&(C.disabled=!a,C.name=a,C.value=W(this._value)||"");const I=this.root.querySelector(".field");I&&(I.dataset.open=this._open&&!n?"true":"false",I.dataset.invalid=r?"true":"false",I.dataset.state=d);const c=this.root.querySelector(".inline-panel");if(c){c.hidden=!n,c.id=this._panelId,c.dataset.bare=this._isBare()?"true":"false",c.setAttribute("role","dialog"),c.setAttribute("aria-modal","false"),c.setAttribute("aria-label",t||o.selectDateRange);const w=c.querySelector(".panel-title");w&&(w.textContent=t,w.hidden=!t);const $=c.querySelector(".head-title");$&&($.textContent=t,$.hidden=!t);const q=c.querySelector(".head-meta"),A=this._valueFromPending();q&&(q.textContent=A.start&&A.end?`${this._formatDateTimeDisplay(A.start)} — ${this._formatDateTimeDisplay(A.end)}`:o.selectDateRange);const R=c.querySelector(".drtp-calendar-inline");R&&this._syncCalendar(R);const O=c.querySelector('select[data-time="start"][data-segment="hours"]'),z=c.querySelector('select[data-time="start"][data-segment="minutes"]'),P=c.querySelector('select[data-time="end"][data-segment="hours"]'),B=c.querySelector('select[data-time="end"][data-segment="minutes"]'),L=s.parseTimeInput(this._pending.startTime,!0)||{hours:0,minutes:0,seconds:0},M=s.parseTimeInput(this._pending.endTime,!0)||{hours:0,minutes:0,seconds:0};O&&this._setClosestOptionValue(O,L.hours),z&&this._setClosestOptionValue(z,L.minutes),P&&this._setClosestOptionValue(P,M.hours),B&&this._setClosestOptionValue(B,M.minutes),[O,z,P,B].forEach(k=>{k&&(k.disabled=this._isInteractionBlocked()||this._isReadonly())});const E=c.querySelector('[data-action="preset-today"]');E&&(E.textContent=o.today);const H=c.querySelector('[data-action="preset-last7"]');H&&(H.textContent=o.last7Days);const V=c.querySelector('[data-action="preset-month"]');V&&(V.textContent=o.thisMonth);const F=c.querySelector('[data-action="clear"]');F&&(F.textContent=o.clear);const N=c.querySelector('[data-action="apply"]');N&&(N.textContent=o.apply);const K=c.querySelector(".presets"),U=c.querySelector(".footer"),Z=this._showFooter();K&&(K.hidden=!Z),U&&(U.hidden=!Z),c.querySelectorAll(".action, .preset").forEach(k=>{k.disabled=this._isInteractionBlocked()||this._isReadonly()})}!n&&this._open&&this._syncOverlayState(),n&&this._destroyOverlay()}render(){if(!this._hasView){const t=this._translations();this.setContent(`
566
+ <section class="${t?"sheet":"panel"}" id="${this._panelId}" role="dialog" aria-modal="${t?"true":"false"}" aria-label="${o}" part="${t?"sheet":"popover"}">${f}</section>
567
+ `}_syncCalendar(t){const e=(c,h)=>{if(h==null||h===""){t.hasAttribute(c)&&t.removeAttribute(c);return}t.getAttribute(c)!==h&&t.setAttribute(c,h)},i=(c,h)=>{h?e(c,""):e(c,null)};e("selection","range"),e("value",JSON.stringify({...this._pending.startDate?{start:this._pending.startDate}:{},...this._pending.endDate?{end:this._pending.endDate}:{}}));const r=s.parseConstraintDateTime(this.getAttribute("min")),d=s.parseConstraintDateTime(this.getAttribute("max"));e("min",r?.date||null),e("max",d?.date||null),e("locale",this.getAttribute("locale")),e("translations",this.getAttribute("translations")),e("week-start",this.getAttribute("week-start"));const n=this.getAttribute("size")||"sm",o=t.classList.contains("drtp-calendar-inline");e("size",n==="lg"?"md":"sm"),e("variant",this.getAttribute("variant")),i("readonly",this._isReadonly()),i("disabled",this._isInteractionBlocked()),i("bare",this._isBare()),e("tabindex","-1"),n==="lg"?(t.style.setProperty("--ui-calendar-day-height","1.95em"),t.style.setProperty("--ui-calendar-day-padding-block","0.2em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.26em"),t.style.setProperty("--ui-calendar-gap","0.42em"),t.style.setProperty("--ui-calendar-day-font-size","0.78em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.7em"),t.style.setProperty("--ui-calendar-title-font-size","0.88em")):(t.style.setProperty("--ui-calendar-day-height","2.4em"),t.style.setProperty("--ui-calendar-day-padding-block","0.14em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.22em"),t.style.setProperty("--ui-calendar-gap","0.34em"),t.style.setProperty("--ui-calendar-day-font-size","0.72em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.64em"),t.style.setProperty("--ui-calendar-title-font-size","0.8em")),o?(t.style.setProperty("--ui-calendar-frame-padding","0.32em"),t.style.setProperty("--ui-calendar-week-gap","0.18em"),t.style.setProperty("--ui-calendar-control-height","1.72em"),t.style.setProperty("--ui-calendar-gap","0.24em")):(t.style.removeProperty("--ui-calendar-frame-padding"),t.style.removeProperty("--ui-calendar-week-gap"),t.style.removeProperty("--ui-calendar-control-height")),e("aria-label",this.getAttribute("label")||this._translations().selectDateRange)}_overlaySignature(t){return[t?"sheet":"popover",this._step(),this.getAttribute("locale")||"",this.getAttribute("label")||"",this.getAttribute("translations")||""].join(":")}_ensureOverlayContent(t){if(!this._overlay)return;const e=this._overlaySignature(t);this._overlayKey===e&&this._overlay.querySelector(".drtp-calendar")||(this._overlayKey=e,this._overlay.innerHTML=t?`<div class="sheet-wrap">${this._renderSurfaceInner(!0)}</div>`:`<div class="overlay">${this._renderSurfaceInner(!1)}</div>`)}_setClosestOptionValue(t,e){const i=Array.from(t.options).map(a=>Number(a.value)).filter(a=>Number.isFinite(a));if(!i.length)return;let r=i[0],d=Math.abs(r-e);for(let a=1;a<i.length;a+=1){const n=i[a],o=Math.abs(n-e);o<d&&(r=n,d=o)}t.value=String(r)}_syncOverlayState(){if(!this._overlay)return;this._syncOverlayHostZIndex();const t=this._isMobileSheet();this._ensureOverlayContent(t),this._syncDismissableLayer();const e=this._translations(),i=this._overlay.querySelector(".panel, .sheet"),r=this._overlay.querySelector(".presets"),d=this._overlay.querySelector(".footer");i&&(i.dataset.bare=this._isBare()?"true":"false");const a=this._showFooter();r&&(r.hidden=!a),d&&(d.hidden=!a);const n=this._overlay.querySelector(".head-title");if(n){const b=(this.getAttribute("label")||"").trim();n.textContent=b,n.hidden=!b}const o=this._overlay.querySelector(".head-meta"),c=this._valueFromPending();o&&(o.textContent=c.start&&c.end?`${this._formatDateTimeDisplay(c.start)} — ${this._formatDateTimeDisplay(c.end)}`:e.selectDateRange);const h=this._overlay.querySelector(".drtp-calendar");h&&this._syncCalendar(h);const _=s.parseTimeInput(this._pending.startTime)||{hours:0,minutes:0},S=s.parseTimeInput(this._pending.endTime)||{hours:0,minutes:0},v=this._overlay.querySelector('select[data-time="start"][data-segment="hours"]'),l=this._overlay.querySelector('select[data-time="start"][data-segment="minutes"]'),f=this._overlay.querySelector('select[data-time="end"][data-segment="hours"]'),g=this._overlay.querySelector('select[data-time="end"][data-segment="minutes"]');v&&this._setClosestOptionValue(v,_.hours),l&&this._setClosestOptionValue(l,_.minutes),f&&this._setClosestOptionValue(f,S.hours),g&&this._setClosestOptionValue(g,S.minutes);const y=this._isInteractionBlocked()||this._isReadonly();[v,l,f,g].forEach(b=>{b&&(b.disabled=y)}),this._overlay.querySelectorAll(".action, .preset").forEach(b=>{b.disabled=y}),t||this._schedulePosition.run()}_renderOverlay(){this._syncOverlayState()}_applyTimeFromOverlay(t){const e=t.getAttribute("data-time"),i=this._overlay?.querySelector(`select[data-time="${e}"][data-segment="hours"]`),r=this._overlay?.querySelector(`select[data-time="${e}"][data-segment="minutes"]`);if(!e||!i||!r)return;const d=Number(i.value),a=Number(r.value);if(!Number.isFinite(d)||!Number.isFinite(a))return;const n=`${D(d)}:${D(a)}`;e==="start"&&(this._pending.startTime=n),e==="end"&&(this._pending.endTime=n),this._pending=this._normalizePendingState(this._pending),this._emitInput("time")}_todayIso(){const t=new Date,e=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0");return`${t.getFullYear()}-${e}-${i}`}_applyPreset(t){const e=this._todayIso();if(t==="preset-today"){this._pending.startDate=e,this._pending.endDate=e,this._pending=this._normalizePendingState(this._pending),this._emitInput("preset-today");return}if(t==="preset-last7"){const r=s.computeLastDaysRange(e,7);this._pending.startDate=r.start,this._pending.endDate=r.end,this._pending=this._normalizePendingState(this._pending),this._emitInput("preset-last7");return}const i=s.computeMonthRange(e);this._pending.startDate=i.start,this._pending.endDate=i.end,this._pending=this._normalizePendingState(this._pending),this._emitInput("preset-month")}_onRootClick(t){const e=t.target;if(!e)return;const i=e.closest("[data-action]")?.getAttribute("data-action");if(i&&!this._isInteractionBlocked()&&!(this._isReadonly()&&i!=="toggle")){if(i==="toggle"){this._restoreFocusEl=e,this._setOpen(!this._open,"toggle");return}if(i==="clear"){this._isInlineMode()?(this._pending=w({start:null,end:null}),this._emitInput("clear"),this._updateHostState()):(this._pending=w({start:null,end:null}),this._commit(this._pending,"clear"));return}if(this._isInlineMode()&&(i==="preset-today"||i==="preset-last7"||i==="preset-month")){this._applyPreset(i),this._updateHostState();return}if(this._isInlineMode()&&i==="cancel"){this._pending=w(this._value),this._updateHostState();return}this._isInlineMode()&&i==="apply"&&this._commit(this._pending,"apply")}}_onRootChange(t){if(!this._isInlineMode())return;const e=t.target;if(e){if(e.tagName.toLowerCase()==="ui-calendar"){this._onOverlayCalendar(t);return}if(e instanceof HTMLSelectElement&&e.closest(".inline-panel")){if(!e.matches("select[data-time][data-segment]")||this._isInteractionBlocked()||this._isReadonly())return;if(this._applyTimeFromOverlay(e),this._shouldAutoCommit()){const i=this._valueFromPending();if(i.start&&i.end){this._commit(this._pending,"time");return}}this._updateHostState()}}}_onRootKeyDown(t){const e=t;if(!this._isInteractionBlocked()){if(e.key==="Escape"&&this._open&&!this._isInlineMode()){e.preventDefault(),this._setOpen(!1,"escape");return}e.key==="ArrowDown"&&!this._open&&!this._isInlineMode()&&(e.preventDefault(),this._setOpen(!0,"keyboard"))}}_onOverlayClick(t){const e=t.target;if(!e)return;const i=e.closest("[data-action]")?.getAttribute("data-action");if(i&&!(this._isInteractionBlocked()||this._isReadonly())){if(i==="backdrop"){this._setOpen(!1,"outside");return}if(i==="cancel"){this._pending=w(this._value),this._setOpen(!1,"cancel");return}if(i==="clear"){this._pending=w({start:null,end:null}),this._emitInput("clear"),this._renderOverlay();return}if(i==="preset-today"||i==="preset-last7"||i==="preset-month"){this._applyPreset(i),this._renderOverlay();return}i==="apply"&&(this._commit(this._pending,"apply"),this._setOpen(!1,"apply"))}}_onOverlayChange(t){const e=t.target;if(e instanceof HTMLSelectElement&&e.matches("select[data-time][data-segment]")&&!(this._isInteractionBlocked()||this._isReadonly())&&(this._applyTimeFromOverlay(e),this._shouldAutoCommit())){const i=this._valueFromPending();i.start&&i.end&&(this._commit(this._pending,"time"),this._setOpen(!1,"time"))}}_onOverlayCalendar(t){if(this._isInteractionBlocked()||this._isReadonly())return;const e=t.target;if(!e||e.tagName.toLowerCase()!=="ui-calendar")return;const i=t.detail;if(!(!i||i.mode!=="range")){if(this._pending.startDate=i.start||null,this._pending.endDate=i.end||null,this._pending=this._normalizePendingState(this._pending),this._emitInput("calendar"),this._shouldAutoCommit()&&this._pending.startDate&&this._pending.endDate){this._commit(this._pending,"calendar"),this._setOpen(!1,"calendar");return}this._isInlineMode()?this._updateHostState():this._renderOverlay()}}_onDocumentPointerDown(t){if(!this._open||!this._overlay)return;const e=t.composedPath();e.includes(this)||e.includes(this._overlay)||this._setOpen(!1,"outside")}_onDocumentKeyDown(t){this._open&&t.key==="Escape"&&(t.preventDefault(),this._setOpen(!1,"escape"))}_updateHostState(){if(!this._hasView)return;const t=this.getAttribute("label")||"",e=this.getAttribute("hint")||"",i=this.getAttribute("error")||"",r=this._inlineError||i,d=!!(this._value.start||this._value.end),a=this.getAttribute("name")||"",n=this._isInlineMode(),o=this._translations(),c=r?"error":this._state(),h=this._formatDisplay();this._display=h,this._state()==="loading"?this.setAttribute("aria-busy","true"):this.removeAttribute("aria-busy");const _=this.root.querySelector(".label"),S=this.root.querySelector(".label-text"),v=this.root.querySelector(".required"),l=this.root.querySelector(".input"),f=this.root.querySelector('.btn[data-action="clear"]'),g=this.root.querySelector('.btn[data-action="toggle"]'),y=this.root.querySelector(".hint"),b=this.root.querySelector(".error"),C=this.root.querySelector(".hidden-input");if(_&&(_.hidden=!t,_.id=this._labelId,_.setAttribute("for",this._inputId)),S&&(S.textContent=t),v&&(v.hidden=!this.hasAttribute("required")),l&&(l.value!==h&&(l.value=h),l.id=this._inputId,l.placeholder=o.dateRangeTimePlaceholder,l.readOnly=!0,l.disabled=this._isInteractionBlocked(),l.required=this.hasAttribute("required"),l.autocomplete="off",l.setAttribute("role","combobox"),l.setAttribute("aria-haspopup","dialog"),l.setAttribute("aria-expanded",n?"false":String(this._open)),l.setAttribute("aria-controls",this._panelId),l.setAttribute("aria-invalid",r?"true":"false"),t?l.setAttribute("aria-labelledby",this._labelId):l.removeAttribute("aria-labelledby")),f&&(f.hidden=!(this._clearable()&&d),f.setAttribute("aria-label",o.clearDateRange),f.disabled=this._isInteractionBlocked()),g&&(g.hidden=n,g.setAttribute("aria-label",o.toggleCalendar),g.setAttribute("aria-expanded",n?"false":String(this._open)),g.setAttribute("aria-controls",this._panelId),g.disabled=this._isInteractionBlocked()),y&&(y.id=this._hintId,y.hidden=!e,y.textContent=e),b&&(b.id=this._errorId,b.hidden=!r,b.textContent=r),l){const x=[];e&&y&&!y.hidden&&x.push(this._hintId),r&&x.push(this._errorId),x.length?l.setAttribute("aria-describedby",x.join(" ")):l.removeAttribute("aria-describedby")}C&&(C.disabled=!a,C.name=a,C.value=W(this._value)||"");const I=this.root.querySelector(".field");I&&(I.dataset.open=this._open&&!n?"true":"false",I.dataset.invalid=r?"true":"false",I.dataset.state=c);const u=this.root.querySelector(".inline-panel");if(u){u.hidden=!n,u.id=this._panelId,u.dataset.bare=this._isBare()?"true":"false",u.setAttribute("role","dialog"),u.setAttribute("aria-modal","false"),u.setAttribute("aria-label",t||o.selectDateRange);const x=u.querySelector(".panel-title");x&&(x.textContent=t,x.hidden=!t);const $=u.querySelector(".head-title");$&&($.textContent=t,$.hidden=!t);const R=u.querySelector(".head-meta"),A=this._valueFromPending();R&&(R.textContent=A.start&&A.end?`${this._formatDateTimeDisplay(A.start)} — ${this._formatDateTimeDisplay(A.end)}`:o.selectDateRange);const q=u.querySelector(".drtp-calendar-inline");q&&this._syncCalendar(q);const O=u.querySelector('select[data-time="start"][data-segment="hours"]'),z=u.querySelector('select[data-time="start"][data-segment="minutes"]'),P=u.querySelector('select[data-time="end"][data-segment="hours"]'),B=u.querySelector('select[data-time="end"][data-segment="minutes"]'),L=s.parseTimeInput(this._pending.startTime)||{hours:0,minutes:0},E=s.parseTimeInput(this._pending.endTime)||{hours:0,minutes:0};O&&this._setClosestOptionValue(O,L.hours),z&&this._setClosestOptionValue(z,L.minutes),P&&this._setClosestOptionValue(P,E.hours),B&&this._setClosestOptionValue(B,E.minutes),[O,z,P,B].forEach(k=>{k&&(k.disabled=this._isInteractionBlocked()||this._isReadonly())});const M=u.querySelector('[data-action="preset-today"]');M&&(M.textContent=o.today);const H=u.querySelector('[data-action="preset-last7"]');H&&(H.textContent=o.last7Days);const V=u.querySelector('[data-action="preset-month"]');V&&(V.textContent=o.thisMonth);const F=u.querySelector('[data-action="clear"]');F&&(F.textContent=o.clear);const N=u.querySelector('[data-action="apply"]');N&&(N.textContent=o.apply);const K=u.querySelector(".presets"),U=u.querySelector(".footer"),Z=this._showFooter();K&&(K.hidden=!Z),U&&(U.hidden=!Z),u.querySelectorAll(".action, .preset").forEach(k=>{k.disabled=this._isInteractionBlocked()||this._isReadonly()})}!n&&this._open&&this._syncOverlayState(),n&&this._destroyOverlay()}render(){if(!this._hasView){const t=this._translations();this.setContent(`
568
568
  <style>${rt}</style>
569
569
  <div class="root">
570
570
  <label class="label" part="label" id="${this._labelId}">