@mieweb/ui 0.7.1-dev.15 → 0.7.1-dev.17

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 (86) hide show
  1. package/dist/{chunk-XCVBCY7L.cjs → chunk-26DPQUSB.cjs} +4 -4
  2. package/dist/{chunk-XCVBCY7L.cjs.map → chunk-26DPQUSB.cjs.map} +1 -1
  3. package/dist/{chunk-477Z2DYN.js → chunk-3SRBIXQX.js} +4 -4
  4. package/dist/{chunk-477Z2DYN.js.map → chunk-3SRBIXQX.js.map} +1 -1
  5. package/dist/{chunk-UXBRRSJ6.js → chunk-5BDCQBYW.js} +3 -3
  6. package/dist/{chunk-UXBRRSJ6.js.map → chunk-5BDCQBYW.js.map} +1 -1
  7. package/dist/{chunk-C7I3ZGMQ.cjs → chunk-6J7UGYT5.cjs} +4 -4
  8. package/dist/{chunk-C7I3ZGMQ.cjs.map → chunk-6J7UGYT5.cjs.map} +1 -1
  9. package/dist/{chunk-JJNCQMR5.js → chunk-BMRQ4VME.js} +3 -3
  10. package/dist/{chunk-JJNCQMR5.js.map → chunk-BMRQ4VME.js.map} +1 -1
  11. package/dist/{chunk-QA6ZDHFP.js → chunk-BOOJDRJO.js} +35 -11
  12. package/dist/chunk-BOOJDRJO.js.map +1 -0
  13. package/dist/{chunk-34LGPMO4.js → chunk-DLBV42JD.js} +3 -3
  14. package/dist/{chunk-34LGPMO4.js.map → chunk-DLBV42JD.js.map} +1 -1
  15. package/dist/{chunk-4G3NJLQA.js → chunk-EGWWTIWS.js} +117 -73
  16. package/dist/chunk-EGWWTIWS.js.map +1 -0
  17. package/dist/{chunk-IXWRD4AP.js → chunk-EKRT7K2K.js} +3 -3
  18. package/dist/{chunk-IXWRD4AP.js.map → chunk-EKRT7K2K.js.map} +1 -1
  19. package/dist/{chunk-MHD5HZ4X.js → chunk-FDV7EQWH.js} +3 -3
  20. package/dist/{chunk-MHD5HZ4X.js.map → chunk-FDV7EQWH.js.map} +1 -1
  21. package/dist/{chunk-GDBPFHNX.js → chunk-HIDV32ZX.js} +3 -3
  22. package/dist/{chunk-GDBPFHNX.js.map → chunk-HIDV32ZX.js.map} +1 -1
  23. package/dist/{chunk-ZDEYV373.cjs → chunk-MYFZYUPR.cjs} +35 -11
  24. package/dist/chunk-MYFZYUPR.cjs.map +1 -0
  25. package/dist/{chunk-I2BKK3AQ.js → chunk-NGLI2MSM.js} +3 -3
  26. package/dist/{chunk-I2BKK3AQ.js.map → chunk-NGLI2MSM.js.map} +1 -1
  27. package/dist/{chunk-EDBGSGUK.cjs → chunk-OAHORW4N.cjs} +117 -73
  28. package/dist/chunk-OAHORW4N.cjs.map +1 -0
  29. package/dist/{chunk-IS5PNYR7.js → chunk-P6L74SKG.js} +3 -3
  30. package/dist/{chunk-IS5PNYR7.js.map → chunk-P6L74SKG.js.map} +1 -1
  31. package/dist/{chunk-GKWWFJDB.cjs → chunk-Q5VBO3I5.cjs} +5 -5
  32. package/dist/{chunk-GKWWFJDB.cjs.map → chunk-Q5VBO3I5.cjs.map} +1 -1
  33. package/dist/{chunk-UTCFBBOD.cjs → chunk-QI2SB6U3.cjs} +7 -7
  34. package/dist/{chunk-UTCFBBOD.cjs.map → chunk-QI2SB6U3.cjs.map} +1 -1
  35. package/dist/{chunk-U4HA2WHA.cjs → chunk-RBS3GHDZ.cjs} +4 -4
  36. package/dist/{chunk-U4HA2WHA.cjs.map → chunk-RBS3GHDZ.cjs.map} +1 -1
  37. package/dist/{chunk-YXHX2DAK.cjs → chunk-RYQ3S3KO.cjs} +5 -5
  38. package/dist/{chunk-YXHX2DAK.cjs.map → chunk-RYQ3S3KO.cjs.map} +1 -1
  39. package/dist/{chunk-C2NNNOSU.cjs → chunk-VVI32P7L.cjs} +4 -4
  40. package/dist/{chunk-C2NNNOSU.cjs.map → chunk-VVI32P7L.cjs.map} +1 -1
  41. package/dist/{chunk-BZMBCKW2.cjs → chunk-VWCMOWGH.cjs} +8 -8
  42. package/dist/{chunk-BZMBCKW2.cjs.map → chunk-VWCMOWGH.cjs.map} +1 -1
  43. package/dist/{chunk-OJEXXH5D.cjs → chunk-ZBI52NP2.cjs} +4 -4
  44. package/dist/{chunk-OJEXXH5D.cjs.map → chunk-ZBI52NP2.cjs.map} +1 -1
  45. package/dist/components/Autocomplete/index.cjs +3 -3
  46. package/dist/components/Autocomplete/index.js +2 -2
  47. package/dist/components/CountryCodeDropdown/index.cjs +5 -5
  48. package/dist/components/CountryCodeDropdown/index.js +2 -2
  49. package/dist/components/DateInput/index.cjs +3 -3
  50. package/dist/components/DateInput/index.d.cts +3 -1
  51. package/dist/components/DateInput/index.d.ts +3 -1
  52. package/dist/components/DateInput/index.js +2 -2
  53. package/dist/components/Dropdown/index.cjs +8 -8
  54. package/dist/components/Dropdown/index.d.cts +1 -1
  55. package/dist/components/Dropdown/index.d.ts +1 -1
  56. package/dist/components/Dropdown/index.js +2 -2
  57. package/dist/components/MediaEditor/index.cjs +8 -8
  58. package/dist/components/MediaEditor/index.js +3 -3
  59. package/dist/components/RichTextEditor/index.cjs +6 -6
  60. package/dist/components/RichTextEditor/index.js +3 -3
  61. package/dist/components/Select/index.cjs +4 -4
  62. package/dist/components/Select/index.js +2 -2
  63. package/dist/components/SuperChat/index.cjs +8 -8
  64. package/dist/components/SuperChat/index.js +3 -3
  65. package/dist/components/SuperChat/plugins/index.cjs +4 -4
  66. package/dist/components/SuperChat/plugins/index.js +3 -3
  67. package/dist/esheet.cjs +7 -7
  68. package/dist/esheet.js +4 -4
  69. package/dist/hooks/index.cjs +2 -2
  70. package/dist/hooks/index.d.cts +1 -1
  71. package/dist/hooks/index.d.ts +1 -1
  72. package/dist/hooks/index.js +1 -1
  73. package/dist/index.cjs +802 -161
  74. package/dist/index.cjs.map +1 -1
  75. package/dist/index.d.cts +53 -4
  76. package/dist/index.d.ts +53 -4
  77. package/dist/index.js +664 -24
  78. package/dist/index.js.map +1 -1
  79. package/dist/styles.css +1 -1
  80. package/dist/{useAnchoredPosition-nXdSFKHf.d.cts → useAnchoredPosition-C7PNglzD.d.cts} +6 -2
  81. package/dist/{useAnchoredPosition-nXdSFKHf.d.ts → useAnchoredPosition-C7PNglzD.d.ts} +6 -2
  82. package/package.json +1 -1
  83. package/dist/chunk-4G3NJLQA.js.map +0 -1
  84. package/dist/chunk-EDBGSGUK.cjs.map +0 -1
  85. package/dist/chunk-QA6ZDHFP.js.map +0 -1
  86. package/dist/chunk-ZDEYV373.cjs.map +0 -1
package/dist/index.cjs CHANGED
@@ -23,13 +23,13 @@ var chunkRS5VA6QU_cjs = require('./chunk-RS5VA6QU.cjs');
23
23
  var chunkYGA35Z2P_cjs = require('./chunk-YGA35Z2P.cjs');
24
24
  var chunkXXVUHLQN_cjs = require('./chunk-XXVUHLQN.cjs');
25
25
  var chunkXS35KPBZ_cjs = require('./chunk-XS35KPBZ.cjs');
26
- var chunkYXHX2DAK_cjs = require('./chunk-YXHX2DAK.cjs');
27
- var chunkXCVBCY7L_cjs = require('./chunk-XCVBCY7L.cjs');
26
+ var chunkRYQ3S3KO_cjs = require('./chunk-RYQ3S3KO.cjs');
27
+ var chunk26DPQUSB_cjs = require('./chunk-26DPQUSB.cjs');
28
28
  var chunkFKLUSYFP_cjs = require('./chunk-FKLUSYFP.cjs');
29
29
  var chunkVPIYTQCV_cjs = require('./chunk-VPIYTQCV.cjs');
30
30
  var chunkFF235PKY_cjs = require('./chunk-FF235PKY.cjs');
31
31
  var chunkJTSKPDPH_cjs = require('./chunk-JTSKPDPH.cjs');
32
- var chunkUTCFBBOD_cjs = require('./chunk-UTCFBBOD.cjs');
32
+ var chunkQI2SB6U3_cjs = require('./chunk-QI2SB6U3.cjs');
33
33
  var chunkYP5T6NZD_cjs = require('./chunk-YP5T6NZD.cjs');
34
34
  var chunk3SZQRMHM_cjs = require('./chunk-3SZQRMHM.cjs');
35
35
  var chunkOZOSWBSI_cjs = require('./chunk-OZOSWBSI.cjs');
@@ -40,7 +40,7 @@ var chunkABAOZASX_cjs = require('./chunk-ABAOZASX.cjs');
40
40
  var chunk7AMOKHTW_cjs = require('./chunk-7AMOKHTW.cjs');
41
41
  var chunk6QVI6DAO_cjs = require('./chunk-6QVI6DAO.cjs');
42
42
  var chunkRUEEDOE3_cjs = require('./chunk-RUEEDOE3.cjs');
43
- var chunkGKWWFJDB_cjs = require('./chunk-GKWWFJDB.cjs');
43
+ var chunkQ5VBO3I5_cjs = require('./chunk-Q5VBO3I5.cjs');
44
44
  var chunkYMHOF6WA_cjs = require('./chunk-YMHOF6WA.cjs');
45
45
  require('./chunk-GLXTVCHN.cjs');
46
46
  var chunkOGPJ3LRF_cjs = require('./chunk-OGPJ3LRF.cjs');
@@ -49,25 +49,25 @@ require('./chunk-RHNPILZQ.cjs');
49
49
  var chunkS3MKIDYG_cjs = require('./chunk-S3MKIDYG.cjs');
50
50
  var chunkX4LBUPJO_cjs = require('./chunk-X4LBUPJO.cjs');
51
51
  var chunkIUDY6S7I_cjs = require('./chunk-IUDY6S7I.cjs');
52
- var chunkC2NNNOSU_cjs = require('./chunk-C2NNNOSU.cjs');
53
- var chunkU4HA2WHA_cjs = require('./chunk-U4HA2WHA.cjs');
52
+ var chunkVVI32P7L_cjs = require('./chunk-VVI32P7L.cjs');
53
+ var chunkRBS3GHDZ_cjs = require('./chunk-RBS3GHDZ.cjs');
54
54
  var chunkEPQPUFS6_cjs = require('./chunk-EPQPUFS6.cjs');
55
55
  var chunkCKRRJO7T_cjs = require('./chunk-CKRRJO7T.cjs');
56
56
  var chunkZZJ4ZVYR_cjs = require('./chunk-ZZJ4ZVYR.cjs');
57
57
  var chunkW4Q4UEXA_cjs = require('./chunk-W4Q4UEXA.cjs');
58
- var chunkC7I3ZGMQ_cjs = require('./chunk-C7I3ZGMQ.cjs');
58
+ var chunk6J7UGYT5_cjs = require('./chunk-6J7UGYT5.cjs');
59
59
  var chunkU3JU6BI5_cjs = require('./chunk-U3JU6BI5.cjs');
60
60
  require('./chunk-VBWRH4UW.cjs');
61
61
  var chunkI2ECTLON_cjs = require('./chunk-I2ECTLON.cjs');
62
62
  var chunkRI56YPED_cjs = require('./chunk-RI56YPED.cjs');
63
- var chunkBZMBCKW2_cjs = require('./chunk-BZMBCKW2.cjs');
63
+ var chunkVWCMOWGH_cjs = require('./chunk-VWCMOWGH.cjs');
64
64
  var chunkWUNWHOLA_cjs = require('./chunk-WUNWHOLA.cjs');
65
65
  var chunkWWJIW2IH_cjs = require('./chunk-WWJIW2IH.cjs');
66
66
  var chunk5IDYOJHO_cjs = require('./chunk-5IDYOJHO.cjs');
67
67
  var chunkAIJAFPGJ_cjs = require('./chunk-AIJAFPGJ.cjs');
68
- var chunkOJEXXH5D_cjs = require('./chunk-OJEXXH5D.cjs');
68
+ var chunkZBI52NP2_cjs = require('./chunk-ZBI52NP2.cjs');
69
69
  var chunkMJWFNV3L_cjs = require('./chunk-MJWFNV3L.cjs');
70
- var chunkEDBGSGUK_cjs = require('./chunk-EDBGSGUK.cjs');
70
+ var chunkOAHORW4N_cjs = require('./chunk-OAHORW4N.cjs');
71
71
  var chunkP2VTQ5AR_cjs = require('./chunk-P2VTQ5AR.cjs');
72
72
  var chunk6ECKH4DJ_cjs = require('./chunk-6ECKH4DJ.cjs');
73
73
  var chunkPAM5UUBL_cjs = require('./chunk-PAM5UUBL.cjs');
@@ -83,7 +83,7 @@ var chunk6HFFWEM3_cjs = require('./chunk-6HFFWEM3.cjs');
83
83
  var chunkNNEFAUHV_cjs = require('./chunk-NNEFAUHV.cjs');
84
84
  var chunkFHY3K6PL_cjs = require('./chunk-FHY3K6PL.cjs');
85
85
  var chunkFSGEDDF2_cjs = require('./chunk-FSGEDDF2.cjs');
86
- var chunkZDEYV373_cjs = require('./chunk-ZDEYV373.cjs');
86
+ var chunkMYFZYUPR_cjs = require('./chunk-MYFZYUPR.cjs');
87
87
  require('./chunk-AT732HC6.cjs');
88
88
  var chunkL7YQBSEL_cjs = require('./chunk-L7YQBSEL.cjs');
89
89
  var chunkC7RVKV25_cjs = require('./chunk-C7RVKV25.cjs');
@@ -282,7 +282,7 @@ function AddContactModal({
282
282
  }
283
283
  ),
284
284
  /* @__PURE__ */ jsxRuntime.jsx(
285
- chunkOJEXXH5D_cjs.Select,
285
+ chunkZBI52NP2_cjs.Select,
286
286
  {
287
287
  id: "contact-sex",
288
288
  options: SEX_OPTIONS,
@@ -1396,7 +1396,7 @@ function AIEmptyState({
1396
1396
  /* @__PURE__ */ jsxRuntime.jsx(SuggestedActions, { actions: suggestions, onSelect: onSuggestionSelect })
1397
1397
  ] }) : void 0;
1398
1398
  return /* @__PURE__ */ jsxRuntime.jsx(
1399
- chunkYXHX2DAK_cjs.EmptyState,
1399
+ chunkRYQ3S3KO_cjs.EmptyState,
1400
1400
  {
1401
1401
  title,
1402
1402
  description,
@@ -1590,7 +1590,7 @@ function AIChat({
1590
1590
  }
1591
1591
  ) }),
1592
1592
  /* @__PURE__ */ jsxRuntime.jsx(
1593
- chunkXCVBCY7L_cjs.MessageComposer,
1593
+ chunk26DPQUSB_cjs.MessageComposer,
1594
1594
  {
1595
1595
  onSend: handleSend,
1596
1596
  placeholder: inputPlaceholder,
@@ -2085,7 +2085,7 @@ function OzwellSettingsMenu({
2085
2085
  fn?.();
2086
2086
  };
2087
2087
  return /* @__PURE__ */ jsxRuntime.jsxs(
2088
- chunkU4HA2WHA_cjs.Dropdown,
2088
+ chunkRBS3GHDZ_cjs.Dropdown,
2089
2089
  {
2090
2090
  trigger,
2091
2091
  open,
@@ -2102,8 +2102,8 @@ function OzwellSettingsMenu({
2102
2102
  onScroll: updateHasMore,
2103
2103
  className: "max-h-[392px] overflow-x-hidden overflow-y-auto",
2104
2104
  children: [
2105
- /* @__PURE__ */ jsxRuntime.jsx(chunkU4HA2WHA_cjs.DropdownHeader, { title: "\u2699 Ozwell settings" }),
2106
- onManageVoices && /* @__PURE__ */ jsxRuntime.jsx(chunkU4HA2WHA_cjs.DropdownItem, { onClick: act(onManageVoices), children: /* @__PURE__ */ jsxRuntime.jsx(
2105
+ /* @__PURE__ */ jsxRuntime.jsx(chunkRBS3GHDZ_cjs.DropdownHeader, { title: "\u2699 Ozwell settings" }),
2106
+ onManageVoices && /* @__PURE__ */ jsxRuntime.jsx(chunkRBS3GHDZ_cjs.DropdownItem, { onClick: act(onManageVoices), children: /* @__PURE__ */ jsxRuntime.jsx(
2107
2107
  ItemLabel,
2108
2108
  {
2109
2109
  label: "Your voice",
@@ -5562,6 +5562,329 @@ function VisitScribe({
5562
5562
  }
5563
5563
  );
5564
5564
  }
5565
+ var MENU_OFFSET_PX = 6;
5566
+ var MENU_MAX_HEIGHT_PX = 320;
5567
+ function optionKey(option) {
5568
+ return `${option.provider}\0${option.model}`;
5569
+ }
5570
+ function renderedOptionKey(option, index) {
5571
+ return `${option.id ?? optionKey(option)}\0${index}`;
5572
+ }
5573
+ function groupByProvider(models) {
5574
+ const groups = /* @__PURE__ */ new Map();
5575
+ for (const model of models) {
5576
+ const group = groups.get(model.provider);
5577
+ if (group) {
5578
+ group.push(model);
5579
+ } else {
5580
+ groups.set(model.provider, [model]);
5581
+ }
5582
+ }
5583
+ return Array.from(groups, ([provider, options]) => ({ provider, options }));
5584
+ }
5585
+ function getProviderLabel(models, provider) {
5586
+ return models.find((model) => model.provider === provider && model.providerLabel)?.providerLabel ?? provider;
5587
+ }
5588
+ function ComposerModelSelector({
5589
+ models,
5590
+ value,
5591
+ providerFilter,
5592
+ onProviderFilterChange,
5593
+ onChange,
5594
+ disabled = false,
5595
+ className,
5596
+ boundaryRef,
5597
+ placeholder = "Model",
5598
+ anyLabel = "Any",
5599
+ emptyLabel = "No models",
5600
+ ariaLabel = "Model"
5601
+ }) {
5602
+ const [open, setOpen] = React10__namespace.useState(false);
5603
+ const [internalProviderFilter, setInternalProviderFilter] = React10__namespace.useState(null);
5604
+ const [highlightedIndex, setHighlightedIndex] = React10__namespace.useState(0);
5605
+ const listRef = React10__namespace.useRef(null);
5606
+ const menuId = React10__namespace.useId();
5607
+ const {
5608
+ anchorRef: triggerRef,
5609
+ floatingRef: menuRef,
5610
+ style: menuStyle
5611
+ } = chunkMYFZYUPR_cjs.useAnchoredPosition({
5612
+ open,
5613
+ placement: "top-start",
5614
+ offset: MENU_OFFSET_PX,
5615
+ matchMinWidth: true,
5616
+ maxHeight: MENU_MAX_HEIGHT_PX,
5617
+ allowFlip: false,
5618
+ boundaryRef
5619
+ });
5620
+ const activeProviderFilter = providerFilter === void 0 ? internalProviderFilter : providerFilter;
5621
+ const selectedKey = value ? optionKey(value) : null;
5622
+ const selectedOption = models.find(
5623
+ (model) => optionKey(model) === selectedKey
5624
+ );
5625
+ const providers = React10__namespace.useMemo(
5626
+ () => Array.from(new Set(models.map((model) => model.provider))),
5627
+ [models]
5628
+ );
5629
+ const providerLabels = React10__namespace.useMemo(
5630
+ () => new Map(
5631
+ providers.map((provider) => [
5632
+ provider,
5633
+ getProviderLabel(models, provider)
5634
+ ])
5635
+ ),
5636
+ [models, providers]
5637
+ );
5638
+ const filteredModels = React10__namespace.useMemo(
5639
+ () => activeProviderFilter === null ? models : models.filter((model) => model.provider === activeProviderFilter),
5640
+ [activeProviderFilter, models]
5641
+ );
5642
+ const groupedModels = React10__namespace.useMemo(
5643
+ () => groupByProvider(filteredModels),
5644
+ [filteredModels]
5645
+ );
5646
+ const groupedRenderedModels = React10__namespace.useMemo(() => {
5647
+ let index = 0;
5648
+ return groupedModels.map((group) => ({
5649
+ provider: group.provider,
5650
+ options: group.options.map((option) => {
5651
+ const rendered = {
5652
+ option,
5653
+ index,
5654
+ key: renderedOptionKey(option, index)
5655
+ };
5656
+ index += 1;
5657
+ return rendered;
5658
+ })
5659
+ }));
5660
+ }, [groupedModels]);
5661
+ const renderedModels = React10__namespace.useMemo(
5662
+ () => groupedRenderedModels.flatMap((group) => group.options),
5663
+ [groupedRenderedModels]
5664
+ );
5665
+ const getOptionId = React10__namespace.useCallback(
5666
+ (index) => `${menuId}-option-${index}`,
5667
+ [menuId]
5668
+ );
5669
+ const activeOptionId = open && renderedModels[highlightedIndex] ? getOptionId(highlightedIndex) : void 0;
5670
+ const selectedRenderedIndex = React10__namespace.useMemo(
5671
+ () => selectedKey ? renderedModels.findIndex(
5672
+ (renderedModel) => optionKey(renderedModel.option) === selectedKey
5673
+ ) : -1,
5674
+ [renderedModels, selectedKey]
5675
+ );
5676
+ const setProvider = React10__namespace.useCallback(
5677
+ (provider) => {
5678
+ if (providerFilter === void 0) {
5679
+ setInternalProviderFilter(provider);
5680
+ }
5681
+ onProviderFilterChange?.(provider);
5682
+ },
5683
+ [onProviderFilterChange, providerFilter]
5684
+ );
5685
+ const close = React10__namespace.useCallback(
5686
+ (restoreFocus = true) => {
5687
+ setOpen(false);
5688
+ if (restoreFocus) {
5689
+ triggerRef.current?.focus({ preventScroll: true });
5690
+ }
5691
+ },
5692
+ [triggerRef]
5693
+ );
5694
+ const selectModel = React10__namespace.useCallback(
5695
+ (model) => {
5696
+ onChange({ provider: model.provider, model: model.model });
5697
+ close();
5698
+ },
5699
+ [close, onChange]
5700
+ );
5701
+ const outsideRefs = React10__namespace.useMemo(
5702
+ () => [triggerRef, menuRef],
5703
+ [triggerRef, menuRef]
5704
+ );
5705
+ chunkFSGEDDF2_cjs.useClickOutside(outsideRefs, () => close(false), open);
5706
+ chunkFHY3K6PL_cjs.useEscapeKey(close, open);
5707
+ React10__namespace.useEffect(() => {
5708
+ if (!open) return;
5709
+ setHighlightedIndex(selectedRenderedIndex >= 0 ? selectedRenderedIndex : 0);
5710
+ }, [activeProviderFilter, open, selectedRenderedIndex]);
5711
+ React10__namespace.useEffect(() => {
5712
+ if (!open) return;
5713
+ setHighlightedIndex(
5714
+ (current) => Math.min(current, Math.max(renderedModels.length - 1, 0))
5715
+ );
5716
+ }, [open, renderedModels.length]);
5717
+ React10__namespace.useEffect(() => {
5718
+ if (!open) return;
5719
+ requestAnimationFrame(
5720
+ () => listRef.current?.focus({ preventScroll: true })
5721
+ );
5722
+ }, [open]);
5723
+ const handleTriggerKeyDown = (event) => {
5724
+ if (event.key === "ArrowDown" || event.key === "ArrowUp") {
5725
+ event.preventDefault();
5726
+ setOpen(true);
5727
+ }
5728
+ };
5729
+ const handleMenuKeyDown = (event) => {
5730
+ if (renderedModels.length === 0) return;
5731
+ if (event.key === "ArrowDown") {
5732
+ event.preventDefault();
5733
+ setHighlightedIndex((current) => (current + 1) % renderedModels.length);
5734
+ }
5735
+ if (event.key === "ArrowUp") {
5736
+ event.preventDefault();
5737
+ setHighlightedIndex(
5738
+ (current) => (current - 1 + renderedModels.length) % renderedModels.length
5739
+ );
5740
+ }
5741
+ if (event.key === "Home") {
5742
+ event.preventDefault();
5743
+ setHighlightedIndex(0);
5744
+ }
5745
+ if (event.key === "End") {
5746
+ event.preventDefault();
5747
+ setHighlightedIndex(renderedModels.length - 1);
5748
+ }
5749
+ if (event.key === "Enter" || event.key === " ") {
5750
+ event.preventDefault();
5751
+ const highlightedModel = renderedModels[highlightedIndex]?.option;
5752
+ if (highlightedModel) {
5753
+ selectModel(highlightedModel);
5754
+ }
5755
+ }
5756
+ };
5757
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
5758
+ /* @__PURE__ */ jsxRuntime.jsxs(
5759
+ "button",
5760
+ {
5761
+ ref: triggerRef,
5762
+ type: "button",
5763
+ disabled,
5764
+ "aria-haspopup": "listbox",
5765
+ "aria-expanded": open,
5766
+ "aria-controls": open ? menuId : void 0,
5767
+ onClick: () => setOpen((current) => !current),
5768
+ onKeyDown: handleTriggerKeyDown,
5769
+ "data-slot": "composer-model-selector-trigger",
5770
+ className: chunkS5RVSXDV_cjs.cn(
5771
+ "inline-flex h-8 max-w-full items-center gap-1.5 rounded-full border px-2.5 text-sm font-medium",
5772
+ "border-border bg-background text-foreground shadow-sm",
5773
+ "hover:bg-muted/50",
5774
+ "focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
5775
+ "disabled:cursor-not-allowed disabled:opacity-50",
5776
+ className
5777
+ ),
5778
+ children: [
5779
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "min-w-0 truncate", children: selectedOption?.label ?? selectedOption?.model ?? placeholder }),
5780
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronUp, { "aria-hidden": "true", className: "h-3.5 w-3.5 shrink-0" })
5781
+ ]
5782
+ }
5783
+ ),
5784
+ open && ReactDOM.createPortal(
5785
+ /* @__PURE__ */ jsxRuntime.jsxs(
5786
+ "div",
5787
+ {
5788
+ ref: menuRef,
5789
+ style: menuStyle,
5790
+ "data-slot": "composer-model-selector-menu",
5791
+ className: chunkS5RVSXDV_cjs.cn(
5792
+ "border-border bg-card text-card-foreground flex w-80 max-w-full flex-col rounded-lg border shadow-lg",
5793
+ "animate-in fade-in overflow-hidden duration-100"
5794
+ ),
5795
+ children: [
5796
+ /* @__PURE__ */ jsxRuntime.jsx(
5797
+ "div",
5798
+ {
5799
+ "data-slot": "composer-model-selector-provider-filter",
5800
+ className: "border-border flex min-h-9 items-center gap-1 overflow-x-auto overflow-y-hidden border-b p-2",
5801
+ children: [null, ...providers].map((provider) => {
5802
+ const selected = activeProviderFilter === provider;
5803
+ return /* @__PURE__ */ jsxRuntime.jsx(
5804
+ "button",
5805
+ {
5806
+ type: "button",
5807
+ "aria-pressed": selected,
5808
+ onMouseDown: (event) => event.preventDefault(),
5809
+ onClick: () => setProvider(provider),
5810
+ className: chunkS5RVSXDV_cjs.cn(
5811
+ "inline-flex h-6 shrink-0 items-center justify-center rounded-full px-2.5 text-xs font-medium whitespace-nowrap transition-colors",
5812
+ "focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
5813
+ selected ? "bg-primary text-primary-foreground" : "text-muted-foreground hover:bg-muted hover:text-foreground"
5814
+ ),
5815
+ children: provider === null ? anyLabel : providerLabels.get(provider) ?? provider
5816
+ },
5817
+ provider ?? "all-providers"
5818
+ );
5819
+ })
5820
+ }
5821
+ ),
5822
+ /* @__PURE__ */ jsxRuntime.jsx(
5823
+ "div",
5824
+ {
5825
+ ref: listRef,
5826
+ id: menuId,
5827
+ role: "listbox",
5828
+ "aria-label": ariaLabel,
5829
+ "aria-activedescendant": activeOptionId,
5830
+ tabIndex: -1,
5831
+ onKeyDown: handleMenuKeyDown,
5832
+ className: "min-h-0 flex-1 overflow-y-auto p-1",
5833
+ children: groupedModels.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground px-3 py-4 text-center text-sm", children: emptyLabel }) : groupedRenderedModels.map((group) => /* @__PURE__ */ jsxRuntime.jsxs(
5834
+ "div",
5835
+ {
5836
+ role: "group",
5837
+ "aria-label": providerLabels.get(group.provider) ?? group.provider,
5838
+ children: [
5839
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground px-3 py-1.5 text-xs font-semibold uppercase", children: providerLabels.get(group.provider) ?? group.provider }),
5840
+ group.options.map((renderedModel) => {
5841
+ const { index, key, option: model } = renderedModel;
5842
+ const selected = optionKey(model) === selectedKey;
5843
+ const highlighted = index === highlightedIndex;
5844
+ return /* @__PURE__ */ jsxRuntime.jsxs(
5845
+ "button",
5846
+ {
5847
+ id: getOptionId(index),
5848
+ type: "button",
5849
+ role: "option",
5850
+ "aria-selected": selected,
5851
+ onMouseDown: (event) => event.preventDefault(),
5852
+ onClick: () => selectModel(model),
5853
+ onMouseEnter: () => setHighlightedIndex(index),
5854
+ className: chunkS5RVSXDV_cjs.cn(
5855
+ "flex w-full items-center gap-2 rounded-md px-3 py-2 text-start text-sm",
5856
+ "focus-visible:ring-ring transition-colors focus-visible:ring-2 focus-visible:outline-none",
5857
+ highlighted && "bg-muted",
5858
+ selected && "bg-primary/10 text-primary"
5859
+ ),
5860
+ children: [
5861
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "min-w-0 flex-1 truncate", children: model.label ?? model.model }),
5862
+ selected && /* @__PURE__ */ jsxRuntime.jsx(
5863
+ lucideReact.Check,
5864
+ {
5865
+ "aria-hidden": "true",
5866
+ className: "text-primary h-4 w-4 shrink-0"
5867
+ }
5868
+ )
5869
+ ]
5870
+ },
5871
+ key
5872
+ );
5873
+ })
5874
+ ]
5875
+ },
5876
+ group.provider
5877
+ ))
5878
+ }
5879
+ )
5880
+ ]
5881
+ }
5882
+ ),
5883
+ document.body
5884
+ )
5885
+ ] });
5886
+ }
5887
+ ComposerModelSelector.displayName = "ComposerModelSelector";
5565
5888
  function normalizeString(value) {
5566
5889
  return value.trim().replace(/\s+/g, " ").toLowerCase();
5567
5890
  }
@@ -6777,8 +7100,8 @@ function ConcernRow({
6777
7100
  ]
6778
7101
  }
6779
7102
  ),
6780
- !readOnly && /* @__PURE__ */ jsxRuntime.jsx(chunkBZMBCKW2_cjs.RowActionToolbar, { label: `Actions for ${current.text}`, align: "top", children: visibleActions.map((action) => /* @__PURE__ */ jsxRuntime.jsx(
6781
- chunkBZMBCKW2_cjs.RowIconButton,
7103
+ !readOnly && /* @__PURE__ */ jsxRuntime.jsx(chunkVWCMOWGH_cjs.RowActionToolbar, { label: `Actions for ${current.text}`, align: "top", children: visibleActions.map((action) => /* @__PURE__ */ jsxRuntime.jsx(
7104
+ chunkVWCMOWGH_cjs.RowIconButton,
6782
7105
  {
6783
7106
  label: ACTION_META[action].label,
6784
7107
  icon: ACTION_META[action].icon,
@@ -7207,13 +7530,13 @@ function OrderRow({
7207
7530
  ) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7208
7531
  /* @__PURE__ */ jsxRuntime.jsx(OrderContent, { order }),
7209
7532
  interactive && /* @__PURE__ */ jsxRuntime.jsxs(
7210
- chunkBZMBCKW2_cjs.RowActionToolbar,
7533
+ chunkVWCMOWGH_cjs.RowActionToolbar,
7211
7534
  {
7212
7535
  label: `Actions for ${order.display}`,
7213
7536
  group: "order",
7214
7537
  children: [
7215
7538
  canEdit && /* @__PURE__ */ jsxRuntime.jsx(
7216
- chunkBZMBCKW2_cjs.RowIconButton,
7539
+ chunkVWCMOWGH_cjs.RowIconButton,
7217
7540
  {
7218
7541
  label: "Edit",
7219
7542
  icon: chunkPAM5UUBL_cjs.Pencil,
@@ -7224,7 +7547,7 @@ function OrderRow({
7224
7547
  (controls?.moveWithin || controls?.moveToProblem && controls.targets.some(
7225
7548
  (t) => t.concernId !== order.concernId
7226
7549
  )) && /* @__PURE__ */ jsxRuntime.jsxs(
7227
- chunkU4HA2WHA_cjs.Dropdown,
7550
+ chunkRBS3GHDZ_cjs.Dropdown,
7228
7551
  {
7229
7552
  open: menuOpen,
7230
7553
  onOpenChange: setMenuOpen,
@@ -7242,7 +7565,7 @@ function OrderRow({
7242
7565
  children: [
7243
7566
  controls?.moveWithin && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7244
7567
  /* @__PURE__ */ jsxRuntime.jsx(
7245
- chunkU4HA2WHA_cjs.DropdownItem,
7568
+ chunkRBS3GHDZ_cjs.DropdownItem,
7246
7569
  {
7247
7570
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkPAM5UUBL_cjs.ChevronUp, { size: 14 }),
7248
7571
  onClick: pick(() => controls.moveWithin?.(order, -1)),
@@ -7250,7 +7573,7 @@ function OrderRow({
7250
7573
  }
7251
7574
  ),
7252
7575
  /* @__PURE__ */ jsxRuntime.jsx(
7253
- chunkU4HA2WHA_cjs.DropdownItem,
7576
+ chunkRBS3GHDZ_cjs.DropdownItem,
7254
7577
  {
7255
7578
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkPAM5UUBL_cjs.ChevronDown, { size: 14 }),
7256
7579
  onClick: pick(() => controls.moveWithin?.(order, 1)),
@@ -7261,9 +7584,9 @@ function OrderRow({
7261
7584
  controls?.moveToProblem && controls.targets.some(
7262
7585
  (t) => t.concernId !== order.concernId
7263
7586
  ) && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7264
- controls.moveWithin && /* @__PURE__ */ jsxRuntime.jsx(chunkU4HA2WHA_cjs.DropdownSeparator, {}),
7587
+ controls.moveWithin && /* @__PURE__ */ jsxRuntime.jsx(chunkRBS3GHDZ_cjs.DropdownSeparator, {}),
7265
7588
  controls.targets.filter((t) => t.concernId !== order.concernId).map((t) => /* @__PURE__ */ jsxRuntime.jsxs(
7266
- chunkU4HA2WHA_cjs.DropdownItem,
7589
+ chunkRBS3GHDZ_cjs.DropdownItem,
7267
7590
  {
7268
7591
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkPAM5UUBL_cjs.Link, { size: 14 }),
7269
7592
  onClick: pick(
@@ -7281,7 +7604,7 @@ function OrderRow({
7281
7604
  }
7282
7605
  ),
7283
7606
  controls?.remove && /* @__PURE__ */ jsxRuntime.jsx(
7284
- chunkBZMBCKW2_cjs.RowIconButton,
7607
+ chunkVWCMOWGH_cjs.RowIconButton,
7285
7608
  {
7286
7609
  label: "Remove",
7287
7610
  icon: chunkPAM5UUBL_cjs.Trash2,
@@ -7449,7 +7772,7 @@ var Assessment = React10__namespace.forwardRef(
7449
7772
  null
7450
7773
  );
7451
7774
  const [announcement, setAnnouncement] = chunkYVPC65ZJ_cjs.useLiveAnnouncement();
7452
- const ambientCodeLookup = chunkBZMBCKW2_cjs.useCodeLookupConfig();
7775
+ const ambientCodeLookup = chunkVWCMOWGH_cjs.useCodeLookupConfig();
7453
7776
  const effectiveRenderOrderSearch = renderOrderSearch === false ? void 0 : renderOrderSearch ?? (ambientCodeLookup ? contextOrderSearch(ambientCodeLookup) : void 0);
7454
7777
  const concernById = React10__namespace.useMemo(
7455
7778
  () => new Map(concerns.map((c) => [c.concernId, c])),
@@ -7704,7 +8027,7 @@ var Assessment = React10__namespace.forwardRef(
7704
8027
  assertion.verificationStatus !== "confirmed" && /* @__PURE__ */ jsxRuntime.jsx(chunkYVL3XATO_cjs.Badge, { variant: "warning", size: "sm", children: assertion.verificationStatus }),
7705
8028
  /* @__PURE__ */ jsxRuntime.jsx(CodingChips, { coding: assertion.coding }),
7706
8029
  !readOnly && /* @__PURE__ */ jsxRuntime.jsx(
7707
- chunkBZMBCKW2_cjs.RowActionToolbar,
8030
+ chunkVWCMOWGH_cjs.RowActionToolbar,
7708
8031
  {
7709
8032
  label: `Actions for ${assertion.text}`,
7710
8033
  align: "top",
@@ -7714,7 +8037,7 @@ var Assessment = React10__namespace.forwardRef(
7714
8037
  if (action === "add-order" && !onAddOrder && !onAction)
7715
8038
  return null;
7716
8039
  return /* @__PURE__ */ jsxRuntime.jsx(
7717
- chunkBZMBCKW2_cjs.RowIconButton,
8040
+ chunkVWCMOWGH_cjs.RowIconButton,
7718
8041
  {
7719
8042
  label: meta.label,
7720
8043
  icon: meta.icon,
@@ -8890,7 +9213,7 @@ function ServiceSelect({
8890
9213
  }) {
8891
9214
  const [isOpen, setIsOpen] = React10__namespace.useState(false);
8892
9215
  const dropdownRef = React10__namespace.useRef(null);
8893
- const { anchorRef, floatingRef, style } = chunkZDEYV373_cjs.useAnchoredPosition({ open: isOpen, matchWidth: true, maxHeight: 240 });
9216
+ const { anchorRef, floatingRef, style } = chunkMYFZYUPR_cjs.useAnchoredPosition({ open: isOpen, matchWidth: true, maxHeight: 240 });
8894
9217
  const outsideRefs = React10__namespace.useMemo(
8895
9218
  () => [dropdownRef, floatingRef],
8896
9219
  [floatingRef]
@@ -9672,6 +9995,50 @@ function LoadingSpinner({ className }) {
9672
9995
  }
9673
9996
  );
9674
9997
  }
9998
+
9999
+ // src/components/BusinessHoursEditor/scheduleRules.ts
10000
+ function generateId2() {
10001
+ return Math.random().toString(36).substring(2, 9);
10002
+ }
10003
+ function ruleSignature(slot) {
10004
+ return `${slot.start}\0${slot.end}\0${slot.description ?? ""}`;
10005
+ }
10006
+ function scheduleToRules(schedule) {
10007
+ const rulesBySignature = /* @__PURE__ */ new Map();
10008
+ const orderedRules = [];
10009
+ for (const day of schedule) {
10010
+ for (const slot of day.hours) {
10011
+ const signature = ruleSignature(slot);
10012
+ const candidates = rulesBySignature.get(signature) ?? [];
10013
+ let rule = candidates.find((r) => !r.days.includes(day.day));
10014
+ if (!rule) {
10015
+ rule = {
10016
+ id: `rule-${orderedRules.length}`,
10017
+ days: [],
10018
+ start: slot.start,
10019
+ end: slot.end,
10020
+ description: slot.description
10021
+ };
10022
+ candidates.push(rule);
10023
+ rulesBySignature.set(signature, candidates);
10024
+ orderedRules.push(rule);
10025
+ }
10026
+ rule.days.push(day.day);
10027
+ }
10028
+ }
10029
+ return orderedRules;
10030
+ }
10031
+ function rulesToSchedule(rules) {
10032
+ return Array.from({ length: 7 }, (_, day) => ({
10033
+ day,
10034
+ hours: rules.filter((rule) => rule.days.includes(day)).map((rule, index) => ({
10035
+ id: `slot-${day}-${index}`,
10036
+ start: rule.start,
10037
+ end: rule.end,
10038
+ ...rule.description ? { description: rule.description } : {}
10039
+ }))
10040
+ }));
10041
+ }
9675
10042
  var DAY_NAMES = {
9676
10043
  0: "Sunday",
9677
10044
  1: "Monday",
@@ -9939,6 +10306,63 @@ function DayScheduleRow({
9939
10306
  }
9940
10307
  );
9941
10308
  }
10309
+ function GroupedScheduleRows({
10310
+ officeHours,
10311
+ useShortDayNames = false,
10312
+ use24Hour = false
10313
+ }) {
10314
+ const normalized = officeHours.map((dayHours) => ({
10315
+ day: parseDayToNumber(dayHours.day),
10316
+ hours: (dayHours.hours ?? []).map((range) => ({
10317
+ start: range.start ?? "",
10318
+ end: range.end ?? "",
10319
+ ...range.description ? { description: range.description } : {}
10320
+ }))
10321
+ }));
10322
+ const rules = scheduleToRules(normalized);
10323
+ const closedDays = normalized.filter((dayHours) => dayHours.hours.length === 0).map((dayHours) => dayHours.day);
10324
+ const dayNames = useShortDayNames ? DAY_NAMES_SHORT : DAY_NAMES;
10325
+ const formatDays = (days) => days.map((day) => dayNames[day]).join(", ");
10326
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10327
+ rules.map((rule) => /* @__PURE__ */ jsxRuntime.jsxs(
10328
+ "div",
10329
+ {
10330
+ "data-slot": "business-hours-grouped-row",
10331
+ className: chunkS5RVSXDV_cjs.cn(dayRowVariants({ isToday: false })),
10332
+ children: [
10333
+ /* @__PURE__ */ jsxRuntime.jsx(
10334
+ "span",
10335
+ {
10336
+ "data-slot": "business-hours-day-name",
10337
+ className: "min-w-[80px] font-medium",
10338
+ children: formatDays(rule.days)
10339
+ }
10340
+ ),
10341
+ /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "business-hours-day-hours", className: "text-end", children: /* @__PURE__ */ jsxRuntime.jsx(TimeRangeDisplay, { range: rule, use24Hour }) })
10342
+ ]
10343
+ },
10344
+ rule.id
10345
+ )),
10346
+ closedDays.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
10347
+ "div",
10348
+ {
10349
+ "data-slot": "business-hours-grouped-row",
10350
+ className: chunkS5RVSXDV_cjs.cn(dayRowVariants({ isToday: false })),
10351
+ children: [
10352
+ /* @__PURE__ */ jsxRuntime.jsx(
10353
+ "span",
10354
+ {
10355
+ "data-slot": "business-hours-day-name",
10356
+ className: "min-w-[80px] font-medium",
10357
+ children: formatDays(closedDays)
10358
+ }
10359
+ ),
10360
+ /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "business-hours-day-hours", className: "text-end", children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: "Closed" }) })
10361
+ ]
10362
+ }
10363
+ )
10364
+ ] });
10365
+ }
9942
10366
  function BusinessHours({
9943
10367
  schedule,
9944
10368
  variant = "default",
@@ -9947,6 +10371,7 @@ function BusinessHours({
9947
10371
  highlightToday = true,
9948
10372
  useShortDayNames = false,
9949
10373
  use24Hour = false,
10374
+ groupDays = false,
9950
10375
  showHeader = true,
9951
10376
  headerText = "Hours",
9952
10377
  className
@@ -10082,7 +10507,14 @@ function BusinessHours({
10082
10507
  {
10083
10508
  "data-slot": "business-hours-schedule",
10084
10509
  className: "space-y-1 divide-y divide-neutral-100 dark:divide-neutral-800",
10085
- children: schedule.officeHours.map((dayHours, idx) => /* @__PURE__ */ jsxRuntime.jsx(
10510
+ children: groupDays ? /* @__PURE__ */ jsxRuntime.jsx(
10511
+ GroupedScheduleRows,
10512
+ {
10513
+ officeHours: schedule.officeHours,
10514
+ useShortDayNames,
10515
+ use24Hour
10516
+ }
10517
+ ) : schedule.officeHours.map((dayHours, idx) => /* @__PURE__ */ jsxRuntime.jsx(
10086
10518
  DayScheduleRow,
10087
10519
  {
10088
10520
  dayHours,
@@ -10219,9 +10651,6 @@ var DAY_NAMES2 = [
10219
10651
  "Saturday"
10220
10652
  ];
10221
10653
  var DAY_NAMES_SHORT2 = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
10222
- function generateId2() {
10223
- return Math.random().toString(36).substring(2, 9);
10224
- }
10225
10654
  function getOrderedDays(weekStartsOn) {
10226
10655
  if (weekStartsOn === 1) {
10227
10656
  return [1, 2, 3, 4, 5, 6, 0];
@@ -10237,6 +10666,15 @@ function ensureAllDays(schedule) {
10237
10666
  return result;
10238
10667
  }
10239
10668
  function BusinessHoursEditor({
10669
+ variant = "days",
10670
+ ...props
10671
+ }) {
10672
+ if (variant === "rules") {
10673
+ return /* @__PURE__ */ jsxRuntime.jsx(BusinessHoursRulesEditor, { ...props });
10674
+ }
10675
+ return /* @__PURE__ */ jsxRuntime.jsx(BusinessHoursDaysEditor, { ...props });
10676
+ }
10677
+ function BusinessHoursDaysEditor({
10240
10678
  value,
10241
10679
  onChange,
10242
10680
  disabled = false,
@@ -10355,7 +10793,7 @@ function BusinessHoursEditor({
10355
10793
  ),
10356
10794
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
10357
10795
  hours.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
10358
- chunkU4HA2WHA_cjs.Dropdown,
10796
+ chunkRBS3GHDZ_cjs.Dropdown,
10359
10797
  {
10360
10798
  placement: "bottom-end",
10361
10799
  trigger: /* @__PURE__ */ jsxRuntime.jsxs(
@@ -10374,7 +10812,7 @@ function BusinessHoursEditor({
10374
10812
  ),
10375
10813
  children: [
10376
10814
  /* @__PURE__ */ jsxRuntime.jsx(
10377
- chunkU4HA2WHA_cjs.DropdownItem,
10815
+ chunkRBS3GHDZ_cjs.DropdownItem,
10378
10816
  {
10379
10817
  onClick: () => handleCopyToAll(dayIndex),
10380
10818
  disabled,
@@ -10382,7 +10820,7 @@ function BusinessHoursEditor({
10382
10820
  }
10383
10821
  ),
10384
10822
  /* @__PURE__ */ jsxRuntime.jsx(
10385
- chunkU4HA2WHA_cjs.DropdownItem,
10823
+ chunkRBS3GHDZ_cjs.DropdownItem,
10386
10824
  {
10387
10825
  onClick: () => handleCopyToWeekdays(dayIndex),
10388
10826
  disabled,
@@ -10506,6 +10944,208 @@ function BusinessHoursEditor({
10506
10944
  }
10507
10945
  );
10508
10946
  }
10947
+ function normalizeSchedule(schedule) {
10948
+ return JSON.stringify(
10949
+ ensureAllDays(schedule).map((day) => ({
10950
+ day: day.day,
10951
+ hours: day.hours.map((slot) => ({
10952
+ start: slot.start,
10953
+ end: slot.end,
10954
+ description: slot.description ?? ""
10955
+ }))
10956
+ }))
10957
+ );
10958
+ }
10959
+ function BusinessHoursRulesEditor({
10960
+ value,
10961
+ onChange,
10962
+ disabled = false,
10963
+ showDescription = true,
10964
+ use24Hour = false,
10965
+ weekStartsOn = 0,
10966
+ className,
10967
+ addHoursLabel = "Add Hours"
10968
+ }) {
10969
+ const [rules, setRules] = React10__namespace.useState(
10970
+ () => scheduleToRules(value)
10971
+ );
10972
+ const timeFormat = use24Hour ? "24-hour" : "12-hour";
10973
+ const lastScheduleRef = React10__namespace.useRef(normalizeSchedule(value));
10974
+ React10__namespace.useEffect(() => {
10975
+ const incoming = normalizeSchedule(value);
10976
+ if (incoming !== lastScheduleRef.current) {
10977
+ lastScheduleRef.current = incoming;
10978
+ setRules(scheduleToRules(value));
10979
+ }
10980
+ }, [value]);
10981
+ const emit = React10.useCallback(
10982
+ (nextRules) => {
10983
+ setRules(nextRules);
10984
+ const schedule = rulesToSchedule(nextRules);
10985
+ const normalized = normalizeSchedule(schedule);
10986
+ if (normalized !== lastScheduleRef.current) {
10987
+ lastScheduleRef.current = normalized;
10988
+ onChange(schedule);
10989
+ }
10990
+ },
10991
+ [onChange]
10992
+ );
10993
+ const handleAddRule = React10.useCallback(() => {
10994
+ emit([
10995
+ ...rules,
10996
+ { id: generateId2(), days: [], start: "09:00", end: "17:00" }
10997
+ ]);
10998
+ }, [emit, rules]);
10999
+ const handleRemoveRule = React10.useCallback(
11000
+ (ruleId) => {
11001
+ emit(rules.filter((rule) => rule.id !== ruleId));
11002
+ },
11003
+ [emit, rules]
11004
+ );
11005
+ const handleToggleDay = React10.useCallback(
11006
+ (ruleId, day) => {
11007
+ emit(
11008
+ rules.map(
11009
+ (rule) => rule.id === ruleId ? {
11010
+ ...rule,
11011
+ days: rule.days.includes(day) ? rule.days.filter((d) => d !== day) : [...rule.days, day]
11012
+ } : rule
11013
+ )
11014
+ );
11015
+ },
11016
+ [emit, rules]
11017
+ );
11018
+ const handleRuleChange = React10.useCallback(
11019
+ (ruleId, field, value2) => {
11020
+ emit(
11021
+ rules.map(
11022
+ (rule) => rule.id === ruleId ? { ...rule, [field]: value2 } : rule
11023
+ )
11024
+ );
11025
+ },
11026
+ [emit, rules]
11027
+ );
11028
+ const orderedDays = getOrderedDays(weekStartsOn);
11029
+ return /* @__PURE__ */ jsxRuntime.jsxs(
11030
+ "div",
11031
+ {
11032
+ "data-slot": "business-hours-editor",
11033
+ className: chunkS5RVSXDV_cjs.cn("business-hours-editor space-y-3", className),
11034
+ children: [
11035
+ rules.map((rule) => /* @__PURE__ */ jsxRuntime.jsxs(
11036
+ "fieldset",
11037
+ {
11038
+ "data-slot": "business-hours-rule",
11039
+ className: "flex flex-wrap items-center gap-2 border-b border-gray-200 pb-3 last:border-0 dark:border-gray-700",
11040
+ children: [
11041
+ /* @__PURE__ */ jsxRuntime.jsx("legend", { className: "sr-only", children: "Availability rule" }),
11042
+ /* @__PURE__ */ jsxRuntime.jsx(
11043
+ "div",
11044
+ {
11045
+ "data-slot": "business-hours-rule-days",
11046
+ className: "flex shrink-0 gap-1",
11047
+ children: orderedDays.map((day) => {
11048
+ const selected = rule.days.includes(day);
11049
+ return /* @__PURE__ */ jsxRuntime.jsx(
11050
+ "button",
11051
+ {
11052
+ type: "button",
11053
+ "aria-pressed": selected,
11054
+ "aria-label": DAY_NAMES2[day],
11055
+ disabled,
11056
+ onClick: () => handleToggleDay(rule.id, day),
11057
+ className: chunkS5RVSXDV_cjs.cn(
11058
+ "inline-flex h-7 w-9 items-center justify-center rounded-full border text-xs font-medium transition-colors",
11059
+ "focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
11060
+ "disabled:cursor-not-allowed disabled:opacity-50",
11061
+ selected ? "border-primary-800 bg-primary-800 text-white" : "border-border text-muted-foreground hover:bg-muted hover:text-foreground"
11062
+ ),
11063
+ children: DAY_NAMES_SHORT2[day]
11064
+ },
11065
+ day
11066
+ );
11067
+ })
11068
+ }
11069
+ ),
11070
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-32 sm:w-36", children: /* @__PURE__ */ jsxRuntime.jsx(
11071
+ chunkOAHORW4N_cjs.DateInput,
11072
+ {
11073
+ inputType: "time",
11074
+ timeFormat,
11075
+ minuteStep: 15,
11076
+ value: rule.start,
11077
+ onChange: (time) => handleRuleChange(rule.id, "start", time),
11078
+ disabled,
11079
+ size: "sm",
11080
+ className: "text-sm",
11081
+ label: "Start time",
11082
+ hideLabel: true
11083
+ }
11084
+ ) }),
11085
+ /* @__PURE__ */ jsxRuntime.jsx("span", { "data-slot": "business-hours-separator", className: "text-gray-400", children: "\u2013" }),
11086
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-32 sm:w-36", children: /* @__PURE__ */ jsxRuntime.jsx(
11087
+ chunkOAHORW4N_cjs.DateInput,
11088
+ {
11089
+ inputType: "time",
11090
+ timeFormat,
11091
+ minuteStep: 15,
11092
+ value: rule.end,
11093
+ onChange: (time) => handleRuleChange(rule.id, "end", time),
11094
+ disabled,
11095
+ size: "sm",
11096
+ className: "text-sm",
11097
+ label: "End time",
11098
+ hideLabel: true
11099
+ }
11100
+ ) }),
11101
+ showDescription && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-[120px] flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(
11102
+ chunk6ECKH4DJ_cjs.Input,
11103
+ {
11104
+ type: "text",
11105
+ value: rule.description || "",
11106
+ onChange: (e) => handleRuleChange(rule.id, "description", e.target.value),
11107
+ placeholder: "Description (optional)",
11108
+ disabled,
11109
+ className: "text-sm",
11110
+ "aria-label": "Description"
11111
+ }
11112
+ ) }),
11113
+ /* @__PURE__ */ jsxRuntime.jsx(
11114
+ chunkM26KJKZG_cjs.Button,
11115
+ {
11116
+ type: "button",
11117
+ variant: "ghost",
11118
+ size: "sm",
11119
+ onClick: () => handleRemoveRule(rule.id),
11120
+ disabled,
11121
+ className: "text-red-500 hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20",
11122
+ "aria-label": "Remove availability rule",
11123
+ children: /* @__PURE__ */ jsxRuntime.jsx(XIcon, { className: "h-4 w-4" })
11124
+ }
11125
+ )
11126
+ ]
11127
+ },
11128
+ rule.id
11129
+ )),
11130
+ /* @__PURE__ */ jsxRuntime.jsxs(
11131
+ chunkM26KJKZG_cjs.Button,
11132
+ {
11133
+ type: "button",
11134
+ variant: "ghost",
11135
+ size: "sm",
11136
+ onClick: handleAddRule,
11137
+ disabled,
11138
+ className: "text-xs",
11139
+ children: [
11140
+ /* @__PURE__ */ jsxRuntime.jsx(PlusIcon2, { className: "me-1 h-3 w-3" }),
11141
+ addHoursLabel
11142
+ ]
11143
+ }
11144
+ )
11145
+ ]
11146
+ }
11147
+ );
11148
+ }
10509
11149
  function createDefaultSchedule() {
10510
11150
  return [
10511
11151
  { day: 0, hours: [] },
@@ -10711,7 +11351,7 @@ function ConditionEditor({
10711
11351
  "data-testid": dataTestId
10712
11352
  }) {
10713
11353
  const prior = concern ? currentAssertion(concern) : void 0;
10714
- const ambientCodeLookup = chunkBZMBCKW2_cjs.useCodeLookupConfig();
11354
+ const ambientCodeLookup = chunkVWCMOWGH_cjs.useCodeLookupConfig();
10715
11355
  const effectiveRenderCodeSearch = renderCodeSearch === false ? void 0 : renderCodeSearch ?? (ambientCodeLookup ? contextConditionCodeSearch(ambientCodeLookup) : void 0);
10716
11356
  const [text, setText] = React10__namespace.useState("");
10717
11357
  const [coding, setCoding] = React10__namespace.useState([]);
@@ -10843,7 +11483,7 @@ function ConditionEditor({
10843
11483
  ),
10844
11484
  mode === "relate" ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10845
11485
  /* @__PURE__ */ jsxRuntime.jsx(
10846
- chunkOJEXXH5D_cjs.Select,
11486
+ chunkZBI52NP2_cjs.Select,
10847
11487
  {
10848
11488
  label: "Relationship",
10849
11489
  options: RELATIONSHIP_OPTIONS,
@@ -10852,7 +11492,7 @@ function ConditionEditor({
10852
11492
  }
10853
11493
  ),
10854
11494
  /* @__PURE__ */ jsxRuntime.jsx(
10855
- chunkOJEXXH5D_cjs.Select,
11495
+ chunkZBI52NP2_cjs.Select,
10856
11496
  {
10857
11497
  label: "Related problem",
10858
11498
  placeholder: "Select a problem\u2026",
@@ -10954,7 +11594,7 @@ function ConditionEditor({
10954
11594
  coding.length === 0 && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-xs", children: "Optional \u2014 a name-only problem is valid. Codes can be added any time." }),
10955
11595
  coding.map((c, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-1.5", children: [
10956
11596
  /* @__PURE__ */ jsxRuntime.jsx(
10957
- chunkOJEXXH5D_cjs.Select,
11597
+ chunkZBI52NP2_cjs.Select,
10958
11598
  {
10959
11599
  "aria-label": `Coding system ${i + 1}`,
10960
11600
  options: CODING_SYSTEMS.map((s) => ({
@@ -11019,7 +11659,7 @@ function ConditionEditor({
11019
11659
  ] }, i))
11020
11660
  ] }),
11021
11661
  /* @__PURE__ */ jsxRuntime.jsx(
11022
- chunkOJEXXH5D_cjs.Select,
11662
+ chunkZBI52NP2_cjs.Select,
11023
11663
  {
11024
11664
  label: "Verification status",
11025
11665
  options: VERIFICATION_OPTIONS,
@@ -11704,7 +12344,7 @@ function CheckrIntegration({
11704
12344
  }
11705
12345
  ),
11706
12346
  /* @__PURE__ */ jsxRuntime.jsx(
11707
- chunkOJEXXH5D_cjs.Select,
12347
+ chunkZBI52NP2_cjs.Select,
11708
12348
  {
11709
12349
  label: packageLabel,
11710
12350
  options: packageOptions,
@@ -13006,7 +13646,7 @@ function ViewModalActions({
13006
13646
  anchorRef: shareAnchorRef,
13007
13647
  floatingRef: shareFloatingRef,
13008
13648
  style: shareStyle
13009
- } = chunkZDEYV373_cjs.useAnchoredPosition({
13649
+ } = chunkMYFZYUPR_cjs.useAnchoredPosition({
13010
13650
  open: shareOpen
13011
13651
  });
13012
13652
  const shareOutsideRefs = React10__namespace.useMemo(
@@ -13186,7 +13826,7 @@ var CountBadge = React10__namespace.forwardRef(
13186
13826
  anchorRef,
13187
13827
  floatingRef,
13188
13828
  style: menuStyle
13189
- } = chunkZDEYV373_cjs.useAnchoredPosition({
13829
+ } = chunkMYFZYUPR_cjs.useAnchoredPosition({
13190
13830
  open: Boolean(showMenu && open),
13191
13831
  placement: "bottom-end",
13192
13832
  offset: 8
@@ -14123,7 +14763,7 @@ function CSVColumnCard({
14123
14763
  hasError && !column.ignored && "ring-warning-700/50 dark:ring-warning-400/50 ring-2"
14124
14764
  ),
14125
14765
  children: /* @__PURE__ */ jsxRuntime.jsx(
14126
- chunkOJEXXH5D_cjs.Select,
14766
+ chunkZBI52NP2_cjs.Select,
14127
14767
  {
14128
14768
  id: formatHtmlId(column.name),
14129
14769
  label: `Map ${column.name} to field`,
@@ -14152,7 +14792,7 @@ function CSVColumnCard({
14152
14792
  }
14153
14793
  ),
14154
14794
  /* @__PURE__ */ jsxRuntime.jsx(
14155
- chunkOJEXXH5D_cjs.Select,
14795
+ chunkZBI52NP2_cjs.Select,
14156
14796
  {
14157
14797
  id: formatHtmlId(column.name, column.mappedTo),
14158
14798
  label: `${column.name} sub-field`,
@@ -14963,7 +15603,7 @@ function DateRangePicker({
14963
15603
  },
14964
15604
  isCalendarOpen
14965
15605
  );
14966
- const { anchorRef, floatingRef, style } = chunkZDEYV373_cjs.useAnchoredPosition({
15606
+ const { anchorRef, floatingRef, style } = chunkMYFZYUPR_cjs.useAnchoredPosition({
14967
15607
  open: !isMobileVariant && isCalendarOpen,
14968
15608
  placement: resolvedAlign === "end" ? "bottom-end" : "bottom-start"
14969
15609
  });
@@ -15503,7 +16143,7 @@ function DateRangeFilter({
15503
16143
  onChange(range, presetKey);
15504
16144
  };
15505
16145
  return /* @__PURE__ */ jsxRuntime.jsx(
15506
- chunkU4HA2WHA_cjs.Dropdown,
16146
+ chunkRBS3GHDZ_cjs.Dropdown,
15507
16147
  {
15508
16148
  trigger: /* @__PURE__ */ jsxRuntime.jsxs(chunkM26KJKZG_cjs.Button, { variant, size: "md", className, children: [
15509
16149
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Calendar, { className: "mr-2 h-4 w-4" }),
@@ -15513,7 +16153,7 @@ function DateRangeFilter({
15513
16153
  className: "w-56",
15514
16154
  "data-slot": "date-range-filter",
15515
16155
  children: finalPresets.map((preset) => /* @__PURE__ */ jsxRuntime.jsx(
15516
- chunkU4HA2WHA_cjs.DropdownItem,
16156
+ chunkRBS3GHDZ_cjs.DropdownItem,
15517
16157
  {
15518
16158
  onClick: () => handlePresetSelect(preset.key),
15519
16159
  className: chunkS5RVSXDV_cjs.cn(
@@ -17432,7 +18072,7 @@ function ClaimProviderForm({
17432
18072
  }
17433
18073
  ),
17434
18074
  /* @__PURE__ */ jsxRuntime.jsx(
17435
- chunkOJEXXH5D_cjs.Select,
18075
+ chunkZBI52NP2_cjs.Select,
17436
18076
  {
17437
18077
  label: "Role at this Organization",
17438
18078
  value: formData.role,
@@ -17462,7 +18102,7 @@ function ClaimProviderForm({
17462
18102
  "data-slot": "claim-form-section",
17463
18103
  className: "space-y-4 border-t border-gray-200 pt-4 dark:border-gray-700",
17464
18104
  children: /* @__PURE__ */ jsxRuntime.jsx(
17465
- chunkOJEXXH5D_cjs.Select,
18105
+ chunkZBI52NP2_cjs.Select,
17466
18106
  {
17467
18107
  label: "Preferred Language",
17468
18108
  value: formData.preferredLanguage || "en",
@@ -17707,7 +18347,7 @@ function CreateInvoiceModal({
17707
18347
  }
17708
18348
  ),
17709
18349
  /* @__PURE__ */ jsxRuntime.jsx(
17710
- chunkOJEXXH5D_cjs.Select,
18350
+ chunkZBI52NP2_cjs.Select,
17711
18351
  {
17712
18352
  label: "Employer",
17713
18353
  options: employerOptions,
@@ -18398,7 +19038,7 @@ function EditUserRoleModal({
18398
19038
  )
18399
19039
  ] }) }),
18400
19040
  /* @__PURE__ */ jsxRuntime.jsx(
18401
- chunkOJEXXH5D_cjs.Select,
19041
+ chunkZBI52NP2_cjs.Select,
18402
19042
  {
18403
19043
  label: "Role",
18404
19044
  value: selectedRoleId,
@@ -18665,7 +19305,7 @@ function EmployeeForm({
18665
19305
  }
18666
19306
  ),
18667
19307
  /* @__PURE__ */ jsxRuntime.jsx(
18668
- chunkOJEXXH5D_cjs.Select,
19308
+ chunkZBI52NP2_cjs.Select,
18669
19309
  {
18670
19310
  label: selectDepartments,
18671
19311
  value: selectedDepartments[0] ?? "",
@@ -18780,7 +19420,7 @@ function EmployeeForm({
18780
19420
  }
18781
19421
  ) }),
18782
19422
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-32", children: /* @__PURE__ */ jsxRuntime.jsx(
18783
- chunkOJEXXH5D_cjs.Select,
19423
+ chunkZBI52NP2_cjs.Select,
18784
19424
  {
18785
19425
  label: index === 0 ? "Type" : void 0,
18786
19426
  "aria-label": index > 0 ? "Phone type" : void 0,
@@ -22804,7 +23444,7 @@ function InviteUserModal({
22804
23444
  }
22805
23445
  ),
22806
23446
  /* @__PURE__ */ jsxRuntime.jsx(
22807
- chunkOJEXXH5D_cjs.Select,
23447
+ chunkZBI52NP2_cjs.Select,
22808
23448
  {
22809
23449
  label: "Role",
22810
23450
  value: roleId,
@@ -23998,7 +24638,7 @@ function LanguageSelector({
23998
24638
  }) {
23999
24639
  const [isOpen, setIsOpen] = React10__namespace.useState(false);
24000
24640
  const containerRef = React10__namespace.useRef(null);
24001
- const { anchorRef, floatingRef, style } = chunkZDEYV373_cjs.useAnchoredPosition({ open: isOpen, matchMinWidth: true, maxHeight: 240 });
24641
+ const { anchorRef, floatingRef, style } = chunkMYFZYUPR_cjs.useAnchoredPosition({ open: isOpen, matchMinWidth: true, maxHeight: 240 });
24002
24642
  const selectedLanguage = languages.find((l) => l.code === value);
24003
24643
  const outsideRefs = React10__namespace.useMemo(
24004
24644
  () => [containerRef, floatingRef],
@@ -26264,7 +26904,7 @@ var defaultOrderTabs = [
26264
26904
  { id: "rejected", label: "Rejected", statuses: ["rejected", "cancelled"] }
26265
26905
  ];
26266
26906
  function orderToMedication(order) {
26267
- const sig = order.detail ? chunkBZMBCKW2_cjs.parseSig(order.detail) : void 0;
26907
+ const sig = order.detail ? chunkVWCMOWGH_cjs.parseSig(order.detail) : void 0;
26268
26908
  return {
26269
26909
  id: order.orderId,
26270
26910
  name: order.display,
@@ -26272,7 +26912,7 @@ function orderToMedication(order) {
26272
26912
  status: "unreconciled",
26273
26913
  indication: order.indication,
26274
26914
  pharmacyNotes: order.notes,
26275
- ...chunkBZMBCKW2_cjs.labelToMedicationFields(order.display),
26915
+ ...chunkVWCMOWGH_cjs.labelToMedicationFields(order.display),
26276
26916
  ...sig && {
26277
26917
  route: sig.route,
26278
26918
  frequency: sig.frequency,
@@ -26343,7 +26983,7 @@ function BaseOrderEditor({
26343
26983
  onSave
26344
26984
  }) {
26345
26985
  const config = TYPE_CONFIG[type];
26346
- const ambientCodeLookup = chunkBZMBCKW2_cjs.useCodeLookupConfig();
26986
+ const ambientCodeLookup = chunkVWCMOWGH_cjs.useCodeLookupConfig();
26347
26987
  const effectiveCodeLookup = codeLookup === false ? void 0 : codeLookup ?? ambientCodeLookup ?? void 0;
26348
26988
  const [draft, setDraft] = React10__namespace.useState(
26349
26989
  () => order ?? {
@@ -26542,7 +27182,7 @@ function OrderEditor({
26542
27182
  display: ""
26543
27183
  };
26544
27184
  return /* @__PURE__ */ jsxRuntime.jsx(
26545
- chunkBZMBCKW2_cjs.MedicationEditor,
27185
+ chunkVWCMOWGH_cjs.MedicationEditor,
26546
27186
  {
26547
27187
  open,
26548
27188
  medication: order ? orderToMedication(order) : void 0,
@@ -27117,7 +27757,7 @@ function PatientOverflowMenu({
27117
27757
  }) {
27118
27758
  const [open, setOpen] = React10__namespace.useState(false);
27119
27759
  const menuRef = React10__namespace.useRef(null);
27120
- const { anchorRef, floatingRef, style } = chunkZDEYV373_cjs.useAnchoredPosition({ open, placement: "bottom-end" });
27760
+ const { anchorRef, floatingRef, style } = chunkMYFZYUPR_cjs.useAnchoredPosition({ open, placement: "bottom-end" });
27121
27761
  const outsideRefs = React10__namespace.useMemo(
27122
27762
  () => [menuRef, floatingRef],
27123
27763
  [floatingRef]
@@ -29195,7 +29835,7 @@ function RelevanceControl({
29195
29835
  {
29196
29836
  role: "toolbar",
29197
29837
  "aria-label": `Relevance for ${labelPrefix}`,
29198
- onKeyDown: chunkBZMBCKW2_cjs.toolbarKeyNav,
29838
+ onKeyDown: chunkVWCMOWGH_cjs.toolbarKeyNav,
29199
29839
  className: "border-border flex shrink-0 items-center overflow-hidden rounded-md border",
29200
29840
  children: RELEVANCE_ORDER.map((relevance) => {
29201
29841
  const active = value === relevance;
@@ -32052,7 +32692,7 @@ function ServiceMultiSelect({
32052
32692
  const containerRef = React10__namespace.useRef(null);
32053
32693
  const inputRef = React10__namespace.useRef(null);
32054
32694
  const listboxId = React10__namespace.useId();
32055
- const { anchorRef, floatingRef, style } = chunkZDEYV373_cjs.useAnchoredPosition({ open: isOpen, matchWidth: true, maxHeight: 240 });
32695
+ const { anchorRef, floatingRef, style } = chunkMYFZYUPR_cjs.useAnchoredPosition({ open: isOpen, matchWidth: true, maxHeight: 240 });
32056
32696
  const outsideRefs = React10__namespace.useMemo(
32057
32697
  () => [containerRef, floatingRef],
32058
32698
  [floatingRef]
@@ -32593,7 +33233,7 @@ function ProviderSelector({
32593
33233
  const [isOpen, setIsOpen] = React10__namespace.useState(false);
32594
33234
  const [searchQuery, setSearchQuery] = React10__namespace.useState("");
32595
33235
  const containerRef = React10__namespace.useRef(null);
32596
- const { anchorRef, floatingRef, style } = chunkZDEYV373_cjs.useAnchoredPosition({ open: isOpen, matchWidth: true });
33236
+ const { anchorRef, floatingRef, style } = chunkMYFZYUPR_cjs.useAnchoredPosition({ open: isOpen, matchWidth: true });
32597
33237
  const outsideRefs = React10__namespace.useMemo(
32598
33238
  () => [containerRef, floatingRef],
32599
33239
  [floatingRef]
@@ -33602,7 +34242,7 @@ function RowActionsMenu({
33602
34242
  const showRemove = onRemove && !isCurrentUser;
33603
34243
  const needsSeparator = (showResend || onEditRole) && showRemove;
33604
34244
  return /* @__PURE__ */ jsxRuntime.jsxs(
33605
- chunkU4HA2WHA_cjs.Dropdown,
34245
+ chunkRBS3GHDZ_cjs.Dropdown,
33606
34246
  {
33607
34247
  trigger: /* @__PURE__ */ jsxRuntime.jsx(
33608
34248
  chunkM26KJKZG_cjs.Button,
@@ -33618,7 +34258,7 @@ function RowActionsMenu({
33618
34258
  placement: "bottom-end",
33619
34259
  children: [
33620
34260
  showResend && /* @__PURE__ */ jsxRuntime.jsx(
33621
- chunkU4HA2WHA_cjs.DropdownItem,
34261
+ chunkRBS3GHDZ_cjs.DropdownItem,
33622
34262
  {
33623
34263
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkPAM5UUBL_cjs.Send, { size: 14 }),
33624
34264
  onClick: () => onResendInvite?.(user),
@@ -33626,16 +34266,16 @@ function RowActionsMenu({
33626
34266
  }
33627
34267
  ),
33628
34268
  onEditRole && /* @__PURE__ */ jsxRuntime.jsx(
33629
- chunkU4HA2WHA_cjs.DropdownItem,
34269
+ chunkRBS3GHDZ_cjs.DropdownItem,
33630
34270
  {
33631
34271
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkPAM5UUBL_cjs.Pencil, { size: 14 }),
33632
34272
  onClick: () => onEditRole(user),
33633
34273
  children: "Edit Role"
33634
34274
  }
33635
34275
  ),
33636
- needsSeparator && /* @__PURE__ */ jsxRuntime.jsx(chunkU4HA2WHA_cjs.DropdownSeparator, {}),
34276
+ needsSeparator && /* @__PURE__ */ jsxRuntime.jsx(chunkRBS3GHDZ_cjs.DropdownSeparator, {}),
33637
34277
  showRemove && /* @__PURE__ */ jsxRuntime.jsx(
33638
- chunkU4HA2WHA_cjs.DropdownItem,
34278
+ chunkRBS3GHDZ_cjs.DropdownItem,
33639
34279
  {
33640
34280
  variant: "danger",
33641
34281
  icon: /* @__PURE__ */ jsxRuntime.jsx(chunkPAM5UUBL_cjs.Trash2, { size: 14 }),
@@ -34658,7 +35298,7 @@ function ReportDashboard({
34658
35298
  ] }),
34659
35299
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
34660
35300
  /* @__PURE__ */ jsxRuntime.jsx(
34661
- chunkOJEXXH5D_cjs.Select,
35301
+ chunkZBI52NP2_cjs.Select,
34662
35302
  {
34663
35303
  "aria-label": "Date range",
34664
35304
  options: Array.isArray(dateRangeOptions) && dateRangeOptions.every(
@@ -37008,7 +37648,7 @@ function ServiceGeneralSettings({
37008
37648
  }
37009
37649
  ),
37010
37650
  categories.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
37011
- chunkOJEXXH5D_cjs.Select,
37651
+ chunkZBI52NP2_cjs.Select,
37012
37652
  {
37013
37653
  label: "Category",
37014
37654
  value: categoryId || "",
@@ -38163,7 +38803,7 @@ function ServiceShippingSettings({
38163
38803
  "data-slot": "shipping-settings-content",
38164
38804
  children: [
38165
38805
  shippingMethods.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
38166
- chunkOJEXXH5D_cjs.Select,
38806
+ chunkZBI52NP2_cjs.Select,
38167
38807
  {
38168
38808
  label: "Shipping Method",
38169
38809
  value: selectedMethodId || "",
@@ -38245,7 +38885,7 @@ function ServiceShippingSettings({
38245
38885
  }
38246
38886
  ) }),
38247
38887
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxRuntime.jsx(
38248
- chunkOJEXXH5D_cjs.Select,
38888
+ chunkZBI52NP2_cjs.Select,
38249
38889
  {
38250
38890
  label: "State",
38251
38891
  value: address.state,
@@ -38373,7 +39013,7 @@ function SetupServiceModal({
38373
39013
  }
38374
39014
  ),
38375
39015
  showServicePicker && availableServices.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
38376
- chunkOJEXXH5D_cjs.Select,
39016
+ chunkZBI52NP2_cjs.Select,
38377
39017
  {
38378
39018
  label: "Select Service",
38379
39019
  value: formData.serviceId || "",
@@ -38421,7 +39061,7 @@ function SetupServiceModal({
38421
39061
  )
38422
39062
  ] }),
38423
39063
  categories.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
38424
- chunkOJEXXH5D_cjs.Select,
39064
+ chunkZBI52NP2_cjs.Select,
38425
39065
  {
38426
39066
  label: "Category",
38427
39067
  value: formData.categoryId || "",
@@ -42316,7 +42956,7 @@ function WebChartReportViewer({
42316
42956
  ":"
42317
42957
  ] }),
42318
42958
  /* @__PURE__ */ jsxRuntime.jsx(
42319
- chunkEDBGSGUK_cjs.DateInput,
42959
+ chunkOAHORW4N_cjs.DateInput,
42320
42960
  {
42321
42961
  size: "sm",
42322
42962
  showCalendar: true,
@@ -42330,7 +42970,7 @@ function WebChartReportViewer({
42330
42970
  ":"
42331
42971
  ] }),
42332
42972
  /* @__PURE__ */ jsxRuntime.jsx(
42333
- chunkEDBGSGUK_cjs.DateInput,
42973
+ chunkOAHORW4N_cjs.DateInput,
42334
42974
  {
42335
42975
  size: "sm",
42336
42976
  showCalendar: true,
@@ -42464,7 +43104,7 @@ function ReportTimeRange({
42464
43104
  className: chunkS5RVSXDV_cjs.cn("flex flex-wrap items-center gap-3", className),
42465
43105
  children: [
42466
43106
  /* @__PURE__ */ jsxRuntime.jsx(
42467
- chunkOJEXXH5D_cjs.Select,
43107
+ chunkZBI52NP2_cjs.Select,
42468
43108
  {
42469
43109
  "aria-label": "Time range",
42470
43110
  value: preset,
@@ -42475,7 +43115,7 @@ function ReportTimeRange({
42475
43115
  ),
42476
43116
  preset === "custom" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
42477
43117
  /* @__PURE__ */ jsxRuntime.jsx(
42478
- chunkEDBGSGUK_cjs.DateInput,
43118
+ chunkOAHORW4N_cjs.DateInput,
42479
43119
  {
42480
43120
  size: "sm",
42481
43121
  showCalendar: true,
@@ -42486,7 +43126,7 @@ function ReportTimeRange({
42486
43126
  ),
42487
43127
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: "to" }),
42488
43128
  /* @__PURE__ */ jsxRuntime.jsx(
42489
- chunkEDBGSGUK_cjs.DateInput,
43129
+ chunkOAHORW4N_cjs.DateInput,
42490
43130
  {
42491
43131
  size: "sm",
42492
43132
  showCalendar: true,
@@ -43066,163 +43706,163 @@ Object.defineProperty(exports, "getToolIcon", {
43066
43706
  });
43067
43707
  Object.defineProperty(exports, "AttachmentPreview", {
43068
43708
  enumerable: true,
43069
- get: function () { return chunkYXHX2DAK_cjs.AttachmentPreview; }
43709
+ get: function () { return chunkRYQ3S3KO_cjs.AttachmentPreview; }
43070
43710
  });
43071
43711
  Object.defineProperty(exports, "ConversationHeader", {
43072
43712
  enumerable: true,
43073
- get: function () { return chunkYXHX2DAK_cjs.ConversationHeader; }
43713
+ get: function () { return chunkRYQ3S3KO_cjs.ConversationHeader; }
43074
43714
  });
43075
43715
  Object.defineProperty(exports, "ConversationListItem", {
43076
43716
  enumerable: true,
43077
- get: function () { return chunkYXHX2DAK_cjs.ConversationListItem; }
43717
+ get: function () { return chunkRYQ3S3KO_cjs.ConversationListItem; }
43078
43718
  });
43079
43719
  Object.defineProperty(exports, "ConversationListSkeleton", {
43080
43720
  enumerable: true,
43081
- get: function () { return chunkYXHX2DAK_cjs.ConversationListSkeleton; }
43721
+ get: function () { return chunkRYQ3S3KO_cjs.ConversationListSkeleton; }
43082
43722
  });
43083
43723
  Object.defineProperty(exports, "DateSeparator", {
43084
43724
  enumerable: true,
43085
- get: function () { return chunkYXHX2DAK_cjs.DateSeparator; }
43725
+ get: function () { return chunkRYQ3S3KO_cjs.DateSeparator; }
43086
43726
  });
43087
43727
  Object.defineProperty(exports, "EmptyState", {
43088
43728
  enumerable: true,
43089
- get: function () { return chunkYXHX2DAK_cjs.EmptyState; }
43729
+ get: function () { return chunkRYQ3S3KO_cjs.EmptyState; }
43090
43730
  });
43091
43731
  Object.defineProperty(exports, "LightboxModal", {
43092
43732
  enumerable: true,
43093
- get: function () { return chunkYXHX2DAK_cjs.LightboxModal; }
43733
+ get: function () { return chunkRYQ3S3KO_cjs.LightboxModal; }
43094
43734
  });
43095
43735
  Object.defineProperty(exports, "LoadMoreButton", {
43096
43736
  enumerable: true,
43097
- get: function () { return chunkYXHX2DAK_cjs.LoadMoreButton; }
43737
+ get: function () { return chunkRYQ3S3KO_cjs.LoadMoreButton; }
43098
43738
  });
43099
43739
  Object.defineProperty(exports, "MessageBubble", {
43100
43740
  enumerable: true,
43101
- get: function () { return chunkYXHX2DAK_cjs.MessageBubble; }
43741
+ get: function () { return chunkRYQ3S3KO_cjs.MessageBubble; }
43102
43742
  });
43103
43743
  Object.defineProperty(exports, "MessageList", {
43104
43744
  enumerable: true,
43105
- get: function () { return chunkYXHX2DAK_cjs.MessageList; }
43745
+ get: function () { return chunkRYQ3S3KO_cjs.MessageList; }
43106
43746
  });
43107
43747
  Object.defineProperty(exports, "MessageStatusIcon", {
43108
43748
  enumerable: true,
43109
- get: function () { return chunkYXHX2DAK_cjs.MessageStatusIcon; }
43749
+ get: function () { return chunkRYQ3S3KO_cjs.MessageStatusIcon; }
43110
43750
  });
43111
43751
  Object.defineProperty(exports, "MessageThread", {
43112
43752
  enumerable: true,
43113
- get: function () { return chunkYXHX2DAK_cjs.MessageThread; }
43753
+ get: function () { return chunkRYQ3S3KO_cjs.MessageThread; }
43114
43754
  });
43115
43755
  Object.defineProperty(exports, "MessagingSplitView", {
43116
43756
  enumerable: true,
43117
- get: function () { return chunkYXHX2DAK_cjs.MessagingSplitView; }
43757
+ get: function () { return chunkRYQ3S3KO_cjs.MessagingSplitView; }
43118
43758
  });
43119
43759
  Object.defineProperty(exports, "ReadReceiptIndicator", {
43120
43760
  enumerable: true,
43121
- get: function () { return chunkYXHX2DAK_cjs.ReadReceiptIndicator; }
43761
+ get: function () { return chunkRYQ3S3KO_cjs.ReadReceiptIndicator; }
43122
43762
  });
43123
43763
  Object.defineProperty(exports, "SkeletonMessage", {
43124
43764
  enumerable: true,
43125
- get: function () { return chunkYXHX2DAK_cjs.SkeletonMessage; }
43765
+ get: function () { return chunkRYQ3S3KO_cjs.SkeletonMessage; }
43126
43766
  });
43127
43767
  Object.defineProperty(exports, "TypingIndicator", {
43128
43768
  enumerable: true,
43129
- get: function () { return chunkYXHX2DAK_cjs.TypingIndicator; }
43769
+ get: function () { return chunkRYQ3S3KO_cjs.TypingIndicator; }
43130
43770
  });
43131
43771
  Object.defineProperty(exports, "bubbleVariants", {
43132
43772
  enumerable: true,
43133
- get: function () { return chunkYXHX2DAK_cjs.bubbleVariants; }
43773
+ get: function () { return chunkRYQ3S3KO_cjs.bubbleVariants; }
43134
43774
  });
43135
43775
  Object.defineProperty(exports, "formatDateLabel", {
43136
43776
  enumerable: true,
43137
- get: function () { return chunkYXHX2DAK_cjs.formatDateLabel; }
43777
+ get: function () { return chunkRYQ3S3KO_cjs.formatDateLabel; }
43138
43778
  });
43139
43779
  Object.defineProperty(exports, "formatFileSize", {
43140
43780
  enumerable: true,
43141
- get: function () { return chunkYXHX2DAK_cjs.formatFileSize; }
43781
+ get: function () { return chunkRYQ3S3KO_cjs.formatFileSize; }
43142
43782
  });
43143
43783
  Object.defineProperty(exports, "formatLastSeen", {
43144
43784
  enumerable: true,
43145
- get: function () { return chunkYXHX2DAK_cjs.formatLastSeen; }
43785
+ get: function () { return chunkRYQ3S3KO_cjs.formatLastSeen; }
43146
43786
  });
43147
43787
  Object.defineProperty(exports, "getConversationSubtitle", {
43148
43788
  enumerable: true,
43149
- get: function () { return chunkYXHX2DAK_cjs.getConversationSubtitle; }
43789
+ get: function () { return chunkRYQ3S3KO_cjs.getConversationSubtitle; }
43150
43790
  });
43151
43791
  Object.defineProperty(exports, "getConversationTitle", {
43152
43792
  enumerable: true,
43153
- get: function () { return chunkYXHX2DAK_cjs.getConversationTitle; }
43793
+ get: function () { return chunkRYQ3S3KO_cjs.getConversationTitle; }
43154
43794
  });
43155
43795
  Object.defineProperty(exports, "groupMessagesByDate", {
43156
43796
  enumerable: true,
43157
- get: function () { return chunkYXHX2DAK_cjs.groupMessagesByDate; }
43797
+ get: function () { return chunkRYQ3S3KO_cjs.groupMessagesByDate; }
43158
43798
  });
43159
43799
  Object.defineProperty(exports, "headerVariants", {
43160
43800
  enumerable: true,
43161
- get: function () { return chunkYXHX2DAK_cjs.headerVariants; }
43801
+ get: function () { return chunkRYQ3S3KO_cjs.headerVariants; }
43162
43802
  });
43163
43803
  Object.defineProperty(exports, "isSameSenderGroup", {
43164
43804
  enumerable: true,
43165
- get: function () { return chunkYXHX2DAK_cjs.isSameSenderGroup; }
43805
+ get: function () { return chunkRYQ3S3KO_cjs.isSameSenderGroup; }
43166
43806
  });
43167
43807
  Object.defineProperty(exports, "useMessageScroll", {
43168
43808
  enumerable: true,
43169
- get: function () { return chunkYXHX2DAK_cjs.useMessageScroll; }
43809
+ get: function () { return chunkRYQ3S3KO_cjs.useMessageScroll; }
43170
43810
  });
43171
43811
  Object.defineProperty(exports, "useMessages", {
43172
43812
  enumerable: true,
43173
- get: function () { return chunkYXHX2DAK_cjs.useMessages; }
43813
+ get: function () { return chunkRYQ3S3KO_cjs.useMessages; }
43174
43814
  });
43175
43815
  Object.defineProperty(exports, "useReadReceipts", {
43176
43816
  enumerable: true,
43177
- get: function () { return chunkYXHX2DAK_cjs.useReadReceipts; }
43817
+ get: function () { return chunkRYQ3S3KO_cjs.useReadReceipts; }
43178
43818
  });
43179
43819
  Object.defineProperty(exports, "useTypingIndicator", {
43180
43820
  enumerable: true,
43181
- get: function () { return chunkYXHX2DAK_cjs.useTypingIndicator; }
43821
+ get: function () { return chunkRYQ3S3KO_cjs.useTypingIndicator; }
43182
43822
  });
43183
43823
  Object.defineProperty(exports, "AttachmentPicker", {
43184
43824
  enumerable: true,
43185
- get: function () { return chunkXCVBCY7L_cjs.AttachmentPicker; }
43825
+ get: function () { return chunk26DPQUSB_cjs.AttachmentPicker; }
43186
43826
  });
43187
43827
  Object.defineProperty(exports, "AttachmentPreviewItem", {
43188
43828
  enumerable: true,
43189
- get: function () { return chunkXCVBCY7L_cjs.AttachmentPreviewItem; }
43829
+ get: function () { return chunk26DPQUSB_cjs.AttachmentPreviewItem; }
43190
43830
  });
43191
43831
  Object.defineProperty(exports, "CameraButton", {
43192
43832
  enumerable: true,
43193
- get: function () { return chunkXCVBCY7L_cjs.CameraButton; }
43833
+ get: function () { return chunk26DPQUSB_cjs.CameraButton; }
43194
43834
  });
43195
43835
  Object.defineProperty(exports, "CharacterCounter", {
43196
43836
  enumerable: true,
43197
- get: function () { return chunkXCVBCY7L_cjs.CharacterCounter; }
43837
+ get: function () { return chunk26DPQUSB_cjs.CharacterCounter; }
43198
43838
  });
43199
43839
  Object.defineProperty(exports, "DragDropZone", {
43200
43840
  enumerable: true,
43201
- get: function () { return chunkXCVBCY7L_cjs.DragDropZone; }
43841
+ get: function () { return chunk26DPQUSB_cjs.DragDropZone; }
43202
43842
  });
43203
43843
  Object.defineProperty(exports, "MessageComposer", {
43204
43844
  enumerable: true,
43205
- get: function () { return chunkXCVBCY7L_cjs.MessageComposer; }
43845
+ get: function () { return chunk26DPQUSB_cjs.MessageComposer; }
43206
43846
  });
43207
43847
  Object.defineProperty(exports, "SendButton", {
43208
43848
  enumerable: true,
43209
- get: function () { return chunkXCVBCY7L_cjs.SendButton; }
43849
+ get: function () { return chunk26DPQUSB_cjs.SendButton; }
43210
43850
  });
43211
43851
  Object.defineProperty(exports, "generateAttachmentId", {
43212
43852
  enumerable: true,
43213
- get: function () { return chunkXCVBCY7L_cjs.generateAttachmentId; }
43853
+ get: function () { return chunk26DPQUSB_cjs.generateAttachmentId; }
43214
43854
  });
43215
43855
  Object.defineProperty(exports, "getFileType", {
43216
43856
  enumerable: true,
43217
- get: function () { return chunkXCVBCY7L_cjs.getFileType; }
43857
+ get: function () { return chunk26DPQUSB_cjs.getFileType; }
43218
43858
  });
43219
43859
  Object.defineProperty(exports, "sendButtonVariants", {
43220
43860
  enumerable: true,
43221
- get: function () { return chunkXCVBCY7L_cjs.sendButtonVariants; }
43861
+ get: function () { return chunk26DPQUSB_cjs.sendButtonVariants; }
43222
43862
  });
43223
43863
  Object.defineProperty(exports, "validateFile", {
43224
43864
  enumerable: true,
43225
- get: function () { return chunkXCVBCY7L_cjs.validateFile; }
43865
+ get: function () { return chunk26DPQUSB_cjs.validateFile; }
43226
43866
  });
43227
43867
  Object.defineProperty(exports, "PhoneInput", {
43228
43868
  enumerable: true,
@@ -43286,15 +43926,15 @@ Object.defineProperty(exports, "recordButtonVariants", {
43286
43926
  });
43287
43927
  Object.defineProperty(exports, "RichTextEditor", {
43288
43928
  enumerable: true,
43289
- get: function () { return chunkUTCFBBOD_cjs.RichTextEditor; }
43929
+ get: function () { return chunkQI2SB6U3_cjs.RichTextEditor; }
43290
43930
  });
43291
43931
  Object.defineProperty(exports, "convertAngleBracketsToMustache", {
43292
43932
  enumerable: true,
43293
- get: function () { return chunkUTCFBBOD_cjs.convertAngleBracketsToMustache; }
43933
+ get: function () { return chunkQI2SB6U3_cjs.convertAngleBracketsToMustache; }
43294
43934
  });
43295
43935
  Object.defineProperty(exports, "processDictation", {
43296
43936
  enumerable: true,
43297
- get: function () { return chunkUTCFBBOD_cjs.processDictation; }
43937
+ get: function () { return chunkQI2SB6U3_cjs.processDictation; }
43298
43938
  });
43299
43939
  Object.defineProperty(exports, "Separator", {
43300
43940
  enumerable: true,
@@ -43394,23 +44034,23 @@ Object.defineProperty(exports, "FenceBlock", {
43394
44034
  });
43395
44035
  Object.defineProperty(exports, "FillerWordsModal", {
43396
44036
  enumerable: true,
43397
- get: function () { return chunkGKWWFJDB_cjs.FillerWordsModal; }
44037
+ get: function () { return chunkQ5VBO3I5_cjs.FillerWordsModal; }
43398
44038
  });
43399
44039
  Object.defineProperty(exports, "MediaEditor", {
43400
44040
  enumerable: true,
43401
- get: function () { return chunkGKWWFJDB_cjs.MediaEditor; }
44041
+ get: function () { return chunkQ5VBO3I5_cjs.MediaEditor; }
43402
44042
  });
43403
44043
  Object.defineProperty(exports, "SilenceSettingsModal", {
43404
44044
  enumerable: true,
43405
- get: function () { return chunkGKWWFJDB_cjs.SilenceSettingsModal; }
44045
+ get: function () { return chunkQ5VBO3I5_cjs.SilenceSettingsModal; }
43406
44046
  });
43407
44047
  Object.defineProperty(exports, "SpeedMarkerMenu", {
43408
44048
  enumerable: true,
43409
- get: function () { return chunkGKWWFJDB_cjs.SpeedMarkerMenu; }
44049
+ get: function () { return chunkQ5VBO3I5_cjs.SpeedMarkerMenu; }
43410
44050
  });
43411
44051
  Object.defineProperty(exports, "WordEditorModal", {
43412
44052
  enumerable: true,
43413
- get: function () { return chunkGKWWFJDB_cjs.WordEditorModal; }
44053
+ get: function () { return chunkQ5VBO3I5_cjs.WordEditorModal; }
43414
44054
  });
43415
44055
  Object.defineProperty(exports, "Slider", {
43416
44056
  enumerable: true,
@@ -43490,39 +44130,39 @@ Object.defineProperty(exports, "CollapsibleTrigger", {
43490
44130
  });
43491
44131
  Object.defineProperty(exports, "CountryCodeDropdown", {
43492
44132
  enumerable: true,
43493
- get: function () { return chunkC2NNNOSU_cjs.CountryCodeDropdown; }
44133
+ get: function () { return chunkVVI32P7L_cjs.CountryCodeDropdown; }
43494
44134
  });
43495
44135
  Object.defineProperty(exports, "formatE164", {
43496
44136
  enumerable: true,
43497
- get: function () { return chunkC2NNNOSU_cjs.formatE164; }
44137
+ get: function () { return chunkVVI32P7L_cjs.formatE164; }
43498
44138
  });
43499
44139
  Object.defineProperty(exports, "validatePhoneNumber", {
43500
44140
  enumerable: true,
43501
- get: function () { return chunkC2NNNOSU_cjs.validatePhoneNumber; }
44141
+ get: function () { return chunkVVI32P7L_cjs.validatePhoneNumber; }
43502
44142
  });
43503
44143
  Object.defineProperty(exports, "Dropdown", {
43504
44144
  enumerable: true,
43505
- get: function () { return chunkU4HA2WHA_cjs.Dropdown; }
44145
+ get: function () { return chunkRBS3GHDZ_cjs.Dropdown; }
43506
44146
  });
43507
44147
  Object.defineProperty(exports, "DropdownContent", {
43508
44148
  enumerable: true,
43509
- get: function () { return chunkU4HA2WHA_cjs.DropdownContent; }
44149
+ get: function () { return chunkRBS3GHDZ_cjs.DropdownContent; }
43510
44150
  });
43511
44151
  Object.defineProperty(exports, "DropdownHeader", {
43512
44152
  enumerable: true,
43513
- get: function () { return chunkU4HA2WHA_cjs.DropdownHeader; }
44153
+ get: function () { return chunkRBS3GHDZ_cjs.DropdownHeader; }
43514
44154
  });
43515
44155
  Object.defineProperty(exports, "DropdownItem", {
43516
44156
  enumerable: true,
43517
- get: function () { return chunkU4HA2WHA_cjs.DropdownItem; }
44157
+ get: function () { return chunkRBS3GHDZ_cjs.DropdownItem; }
43518
44158
  });
43519
44159
  Object.defineProperty(exports, "DropdownLabel", {
43520
44160
  enumerable: true,
43521
- get: function () { return chunkU4HA2WHA_cjs.DropdownLabel; }
44161
+ get: function () { return chunkRBS3GHDZ_cjs.DropdownLabel; }
43522
44162
  });
43523
44163
  Object.defineProperty(exports, "DropdownSeparator", {
43524
44164
  enumerable: true,
43525
- get: function () { return chunkU4HA2WHA_cjs.DropdownSeparator; }
44165
+ get: function () { return chunkRBS3GHDZ_cjs.DropdownSeparator; }
43526
44166
  });
43527
44167
  Object.defineProperty(exports, "Alert", {
43528
44168
  enumerable: true,
@@ -43586,7 +44226,7 @@ Object.defineProperty(exports, "waveformContainerVariants", {
43586
44226
  });
43587
44227
  Object.defineProperty(exports, "Autocomplete", {
43588
44228
  enumerable: true,
43589
- get: function () { return chunkC7I3ZGMQ_cjs.Autocomplete; }
44229
+ get: function () { return chunk6J7UGYT5_cjs.Autocomplete; }
43590
44230
  });
43591
44231
  Object.defineProperty(exports, "Avatar", {
43592
44232
  enumerable: true,
@@ -43638,67 +44278,67 @@ Object.defineProperty(exports, "isApplicable", {
43638
44278
  });
43639
44279
  Object.defineProperty(exports, "ALLERGY_TYPE_LABELS", {
43640
44280
  enumerable: true,
43641
- get: function () { return chunkBZMBCKW2_cjs.ALLERGY_TYPE_LABELS; }
44281
+ get: function () { return chunkVWCMOWGH_cjs.ALLERGY_TYPE_LABELS; }
43642
44282
  });
43643
44283
  Object.defineProperty(exports, "AllergyList", {
43644
44284
  enumerable: true,
43645
- get: function () { return chunkBZMBCKW2_cjs.AllergyList; }
44285
+ get: function () { return chunkVWCMOWGH_cjs.AllergyList; }
43646
44286
  });
43647
44287
  Object.defineProperty(exports, "AllergyManager", {
43648
44288
  enumerable: true,
43649
- get: function () { return chunkBZMBCKW2_cjs.AllergyManager; }
44289
+ get: function () { return chunkVWCMOWGH_cjs.AllergyManager; }
43650
44290
  });
43651
44291
  Object.defineProperty(exports, "CodeLookupProvider", {
43652
44292
  enumerable: true,
43653
- get: function () { return chunkBZMBCKW2_cjs.CodeLookupProvider; }
44293
+ get: function () { return chunkVWCMOWGH_cjs.CodeLookupProvider; }
43654
44294
  });
43655
44295
  Object.defineProperty(exports, "MEDICATION_STATUS_LABELS", {
43656
44296
  enumerable: true,
43657
- get: function () { return chunkBZMBCKW2_cjs.MEDICATION_STATUS_LABELS; }
44297
+ get: function () { return chunkVWCMOWGH_cjs.MEDICATION_STATUS_LABELS; }
43658
44298
  });
43659
44299
  Object.defineProperty(exports, "MedicationEditor", {
43660
44300
  enumerable: true,
43661
- get: function () { return chunkBZMBCKW2_cjs.MedicationEditor; }
44301
+ get: function () { return chunkVWCMOWGH_cjs.MedicationEditor; }
43662
44302
  });
43663
44303
  Object.defineProperty(exports, "MedicationList", {
43664
44304
  enumerable: true,
43665
- get: function () { return chunkBZMBCKW2_cjs.MedicationList; }
44305
+ get: function () { return chunkVWCMOWGH_cjs.MedicationList; }
43666
44306
  });
43667
44307
  Object.defineProperty(exports, "MedicationReconciliation", {
43668
44308
  enumerable: true,
43669
- get: function () { return chunkBZMBCKW2_cjs.MedicationReconciliation; }
44309
+ get: function () { return chunkVWCMOWGH_cjs.MedicationReconciliation; }
43670
44310
  });
43671
44311
  Object.defineProperty(exports, "RowActionToolbar", {
43672
44312
  enumerable: true,
43673
- get: function () { return chunkBZMBCKW2_cjs.RowActionToolbar; }
44313
+ get: function () { return chunkVWCMOWGH_cjs.RowActionToolbar; }
43674
44314
  });
43675
44315
  Object.defineProperty(exports, "RowIconButton", {
43676
44316
  enumerable: true,
43677
- get: function () { return chunkBZMBCKW2_cjs.RowIconButton; }
44317
+ get: function () { return chunkVWCMOWGH_cjs.RowIconButton; }
43678
44318
  });
43679
44319
  Object.defineProperty(exports, "labelToMedicationFields", {
43680
44320
  enumerable: true,
43681
- get: function () { return chunkBZMBCKW2_cjs.labelToMedicationFields; }
44321
+ get: function () { return chunkVWCMOWGH_cjs.labelToMedicationFields; }
43682
44322
  });
43683
44323
  Object.defineProperty(exports, "lookupToMedicationFields", {
43684
44324
  enumerable: true,
43685
- get: function () { return chunkBZMBCKW2_cjs.lookupToMedicationFields; }
44325
+ get: function () { return chunkVWCMOWGH_cjs.lookupToMedicationFields; }
43686
44326
  });
43687
44327
  Object.defineProperty(exports, "parseMedicationLabel", {
43688
44328
  enumerable: true,
43689
- get: function () { return chunkBZMBCKW2_cjs.parseMedicationLabel; }
44329
+ get: function () { return chunkVWCMOWGH_cjs.parseMedicationLabel; }
43690
44330
  });
43691
44331
  Object.defineProperty(exports, "parseSig", {
43692
44332
  enumerable: true,
43693
- get: function () { return chunkBZMBCKW2_cjs.parseSig; }
44333
+ get: function () { return chunkVWCMOWGH_cjs.parseSig; }
43694
44334
  });
43695
44335
  Object.defineProperty(exports, "toolbarKeyNav", {
43696
44336
  enumerable: true,
43697
- get: function () { return chunkBZMBCKW2_cjs.toolbarKeyNav; }
44337
+ get: function () { return chunkVWCMOWGH_cjs.toolbarKeyNav; }
43698
44338
  });
43699
44339
  Object.defineProperty(exports, "useCodeLookupConfig", {
43700
44340
  enumerable: true,
43701
- get: function () { return chunkBZMBCKW2_cjs.useCodeLookupConfig; }
44341
+ get: function () { return chunkVWCMOWGH_cjs.useCodeLookupConfig; }
43702
44342
  });
43703
44343
  Object.defineProperty(exports, "Textarea", {
43704
44344
  enumerable: true,
@@ -43734,11 +44374,11 @@ Object.defineProperty(exports, "labelVariants", {
43734
44374
  });
43735
44375
  Object.defineProperty(exports, "Select", {
43736
44376
  enumerable: true,
43737
- get: function () { return chunkOJEXXH5D_cjs.Select; }
44377
+ get: function () { return chunkZBI52NP2_cjs.Select; }
43738
44378
  });
43739
44379
  Object.defineProperty(exports, "selectTriggerVariants", {
43740
44380
  enumerable: true,
43741
- get: function () { return chunkOJEXXH5D_cjs.selectTriggerVariants; }
44381
+ get: function () { return chunkZBI52NP2_cjs.selectTriggerVariants; }
43742
44382
  });
43743
44383
  Object.defineProperty(exports, "Card", {
43744
44384
  enumerable: true,
@@ -43798,7 +44438,7 @@ Object.defineProperty(exports, "cardVariants", {
43798
44438
  });
43799
44439
  Object.defineProperty(exports, "DateInput", {
43800
44440
  enumerable: true,
43801
- get: function () { return chunkEDBGSGUK_cjs.DateInput; }
44441
+ get: function () { return chunkOAHORW4N_cjs.DateInput; }
43802
44442
  });
43803
44443
  Object.defineProperty(exports, "Modal", {
43804
44444
  enumerable: true,
@@ -44706,7 +45346,7 @@ Object.defineProperty(exports, "useClickOutside", {
44706
45346
  });
44707
45347
  Object.defineProperty(exports, "useAnchoredPosition", {
44708
45348
  enumerable: true,
44709
- get: function () { return chunkZDEYV373_cjs.useAnchoredPosition; }
45349
+ get: function () { return chunkMYFZYUPR_cjs.useAnchoredPosition; }
44710
45350
  });
44711
45351
  Object.defineProperty(exports, "formatPhoneNumber", {
44712
45352
  enumerable: true,
@@ -44842,6 +45482,7 @@ exports.CompactFilterBar = CompactFilterBar;
44842
45482
  exports.CompactHeader = CompactHeader;
44843
45483
  exports.CompactHours = CompactHours;
44844
45484
  exports.CompactProviderHeader = CompactProviderHeader;
45485
+ exports.ComposerModelSelector = ComposerModelSelector;
44845
45486
  exports.ConditionEditor = ConditionEditor;
44846
45487
  exports.ConnectionStatusBadge = ConnectionStatusBadge;
44847
45488
  exports.ConnectionStatusBar = ConnectionStatusBar;