@servicetitan/anvil2 1.3.1 → 1.3.3

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 (222) hide show
  1. package/AnvilProvider.cjs +1 -1
  2. package/AnvilProvider.js +1 -1
  3. package/Avatar.cjs +1 -1
  4. package/Avatar.js +1 -1
  5. package/Button.cjs +1 -1
  6. package/Button.cjs.map +1 -1
  7. package/Button.js +15 -23
  8. package/Button.js.map +1 -1
  9. package/ButtonCompound.cjs +1 -1
  10. package/ButtonCompound.cjs.map +1 -1
  11. package/ButtonCompound.js +15 -23
  12. package/ButtonCompound.js.map +1 -1
  13. package/ButtonLink.cjs +1 -1
  14. package/ButtonLink.cjs.map +1 -1
  15. package/ButtonLink.js +15 -23
  16. package/ButtonLink.js.map +1 -1
  17. package/ButtonToggle.cjs +1 -1
  18. package/ButtonToggle.cjs.map +1 -1
  19. package/ButtonToggle.js +15 -23
  20. package/ButtonToggle.js.map +1 -1
  21. package/Checkbox.cjs +1 -1
  22. package/Checkbox.cjs.map +1 -1
  23. package/Checkbox.js +49 -22
  24. package/Checkbox.js.map +1 -1
  25. package/{Chip-de78e3f6.cjs → Chip-5b63e48c.cjs} +2 -2
  26. package/{Chip-de78e3f6.cjs.map → Chip-5b63e48c.cjs.map} +1 -1
  27. package/{Chip-6dbdbc2e.js → Chip-6dde28bc.js} +3 -3
  28. package/{Chip-6dbdbc2e.js.map → Chip-6dde28bc.js.map} +1 -1
  29. package/Chip.cjs +1 -1
  30. package/Chip.js +1 -1
  31. package/Combobox.cjs +1 -1
  32. package/Combobox.cjs.map +1 -1
  33. package/Combobox.js +27 -35
  34. package/Combobox.js.map +1 -1
  35. package/Details.cjs +1 -1
  36. package/Details.cjs.map +1 -1
  37. package/Details.js +18 -26
  38. package/Details.js.map +1 -1
  39. package/Dialog.cjs +1 -1
  40. package/Dialog.cjs.map +1 -1
  41. package/Dialog.js +26 -34
  42. package/Dialog.js.map +1 -1
  43. package/Drawer.cjs +1 -1
  44. package/Drawer.cjs.map +1 -1
  45. package/Drawer.js +63 -36
  46. package/Drawer.js.map +1 -1
  47. package/Link.cjs +1 -1
  48. package/Link.cjs.map +1 -1
  49. package/Link.js +20 -28
  50. package/Link.js.map +1 -1
  51. package/ListView-3b1adecb.js +557 -0
  52. package/ListView-3b1adecb.js.map +1 -0
  53. package/ListView-88e49b19.cjs +2 -0
  54. package/ListView-88e49b19.cjs.map +1 -0
  55. package/ListView.cjs +1 -1
  56. package/ListView.css +1 -1
  57. package/ListView.js +1 -1
  58. package/{Listbox-030b2993.js → Listbox-60fbdaa1.js} +2 -2
  59. package/{Listbox-030b2993.js.map → Listbox-60fbdaa1.js.map} +1 -1
  60. package/Listbox.js +1 -1
  61. package/Menu.cjs +1 -1
  62. package/Menu.cjs.map +1 -1
  63. package/Menu.js +52 -25
  64. package/Menu.js.map +1 -1
  65. package/Overflow.cjs +1 -1
  66. package/Overflow.cjs.map +1 -1
  67. package/Overflow.js +22 -30
  68. package/Overflow.js.map +1 -1
  69. package/Page.cjs +1 -1
  70. package/Page.js +2 -2
  71. package/Popover.cjs +1 -1
  72. package/Popover.cjs.map +1 -1
  73. package/Popover.js +30 -38
  74. package/Popover.js.map +1 -1
  75. package/ProgressBar-c1b5c7c3.js +516 -0
  76. package/ProgressBar-c1b5c7c3.js.map +1 -0
  77. package/ProgressBar-fa511478.cjs +2 -0
  78. package/ProgressBar-fa511478.cjs.map +1 -0
  79. package/ProgressBar.cjs +1 -1
  80. package/ProgressBar.css +1 -1
  81. package/ProgressBar.js +1 -1
  82. package/Radio.cjs +1 -1
  83. package/Radio.cjs.map +1 -1
  84. package/Radio.js +48 -21
  85. package/Radio.js.map +1 -1
  86. package/SegmentedControl.cjs +1 -1
  87. package/SegmentedControl.cjs.map +1 -1
  88. package/SegmentedControl.d.ts +9 -5
  89. package/SegmentedControl.js +72 -12
  90. package/SegmentedControl.js.map +1 -1
  91. package/{SideNav-80e5ce2f.js → SideNav-33a404ec.js} +2 -2
  92. package/{SideNav-80e5ce2f.js.map → SideNav-33a404ec.js.map} +1 -1
  93. package/SideNav.js +1 -1
  94. package/{Stepper-42ecb7db.js → Stepper-7e3a130c.js} +2 -2
  95. package/{Stepper-42ecb7db.js.map → Stepper-7e3a130c.js.map} +1 -1
  96. package/Stepper.js +1 -1
  97. package/Switch.cjs +1 -1
  98. package/Switch.cjs.map +1 -1
  99. package/Switch.js +44 -17
  100. package/Switch.js.map +1 -1
  101. package/{Tab-68267c78.js → Tab-1fce1d41.js} +28 -28
  102. package/{Tab-68267c78.js.map → Tab-1fce1d41.js.map} +1 -1
  103. package/{Tab-9d3d7922.cjs → Tab-f843e740.cjs} +3 -3
  104. package/{Tab-9d3d7922.cjs.map → Tab-f843e740.cjs.map} +1 -1
  105. package/Tab.cjs +1 -1
  106. package/Tab.js +1 -1
  107. package/TextField.cjs +1 -1
  108. package/TextField.cjs.map +1 -1
  109. package/TextField.js +19 -27
  110. package/TextField.js.map +1 -1
  111. package/Textarea.cjs +1 -1
  112. package/Textarea.cjs.map +1 -1
  113. package/Textarea.js +19 -27
  114. package/Textarea.js.map +1 -1
  115. package/ThemeProvider.cjs +1 -1
  116. package/ThemeProvider.js +1 -1
  117. package/{Toast-596af2d7.js → Toast-6cd7d2e1.js} +2 -2
  118. package/{Toast-596af2d7.js.map → Toast-6cd7d2e1.js.map} +1 -1
  119. package/Toast.js +1 -1
  120. package/Tooltip.cjs +1 -1
  121. package/Tooltip.cjs.map +1 -1
  122. package/Tooltip.js +15 -23
  123. package/Tooltip.js.map +1 -1
  124. package/anvil2.cjs +1 -1
  125. package/anvil2.d.ts +5 -5
  126. package/anvil2.js +167 -175
  127. package/anvil2.js.map +1 -1
  128. package/{floating-ui.react-8d61182d.js → floating-ui.react-51a3fa68.js} +26 -26
  129. package/{floating-ui.react-8d61182d.js.map → floating-ui.react-51a3fa68.js.map} +1 -1
  130. package/{index-439b5871.js → index-3f218083.js} +9 -9
  131. package/{index-439b5871.js.map → index-3f218083.js.map} +1 -1
  132. package/{index-f6c22572.cjs → index-63e13299.cjs} +2 -2
  133. package/{index-f6c22572.cjs.map → index-63e13299.cjs.map} +1 -1
  134. package/index-9948e3af.cjs +23 -0
  135. package/index-9948e3af.cjs.map +1 -0
  136. package/index-d46fa8de-c02f7a12.cjs +2 -0
  137. package/index-d46fa8de-c02f7a12.cjs.map +1 -0
  138. package/index-d46fa8de-f8bf17b6.js +540 -0
  139. package/index-d46fa8de-f8bf17b6.js.map +1 -0
  140. package/{index-f7658447-d8b2b888.js → index-f7658447-1cfbda8f.js} +8 -9
  141. package/{index-f7658447-d8b2b888.js.map → index-f7658447-1cfbda8f.js.map} +1 -1
  142. package/index-f7658447-f447ade8.cjs +2 -0
  143. package/{index-f7658447-d9ca2747.cjs.map → index-f7658447-f447ade8.cjs.map} +1 -1
  144. package/index-ff5fea63.js +5015 -0
  145. package/index-ff5fea63.js.map +1 -0
  146. package/index3.css +1 -1
  147. package/package.json +3 -3
  148. package/useAccessibleColor.cjs +1 -1
  149. package/useAccessibleColor.js +15 -23
  150. package/useAccessibleColor.js.map +1 -1
  151. package/useLinkStyles.cjs +1 -1
  152. package/useLinkStyles.js +14 -22
  153. package/useLinkStyles.js.map +1 -1
  154. package/useMergeRefs.cjs +1 -1
  155. package/useMergeRefs.js +15 -23
  156. package/useMergeRefs.js.map +1 -1
  157. package/usePrefersColorScheme.cjs +1 -1
  158. package/usePrefersColorScheme.js +15 -23
  159. package/usePrefersColorScheme.js.map +1 -1
  160. package/useSwipe.cjs +1 -1
  161. package/useSwipe.js +15 -23
  162. package/useSwipe.js.map +1 -1
  163. package/Checkbox-28412a96.cjs +0 -2
  164. package/Checkbox-28412a96.cjs.map +0 -1
  165. package/Checkbox-54ecbd70.js +0 -163
  166. package/Checkbox-54ecbd70.js.map +0 -1
  167. package/Checkbox.css +0 -1
  168. package/Dialog-90efe88c.js +0 -214
  169. package/Dialog-90efe88c.js.map +0 -1
  170. package/Dialog-c83d0c0f.cjs +0 -2
  171. package/Dialog-c83d0c0f.cjs.map +0 -1
  172. package/Dialog.css +0 -1
  173. package/Drawer-4567c00e.js +0 -209
  174. package/Drawer-4567c00e.js.map +0 -1
  175. package/Drawer-96b74d51.cjs +0 -2
  176. package/Drawer-96b74d51.cjs.map +0 -1
  177. package/Drawer.css +0 -1
  178. package/ListView-ad64a337.js +0 -403
  179. package/ListView-ad64a337.js.map +0 -1
  180. package/ListView-fcd88dd1.cjs +0 -2
  181. package/ListView-fcd88dd1.cjs.map +0 -1
  182. package/ProgressBar-3ebc4be2.cjs +0 -2
  183. package/ProgressBar-3ebc4be2.cjs.map +0 -1
  184. package/ProgressBar-f0102cb6.js +0 -303
  185. package/ProgressBar-f0102cb6.js.map +0 -1
  186. package/Radio-845d1fe6.cjs +0 -2
  187. package/Radio-845d1fe6.cjs.map +0 -1
  188. package/Radio-8f8e771e.js +0 -124
  189. package/Radio-8f8e771e.js.map +0 -1
  190. package/Radio.css +0 -1
  191. package/SegmentedControl-d223643c.js +0 -108
  192. package/SegmentedControl-d223643c.js.map +0 -1
  193. package/SegmentedControl-e5e48c23.cjs +0 -2
  194. package/SegmentedControl-e5e48c23.cjs.map +0 -1
  195. package/SegmentedControl.css +0 -1
  196. package/Switch-7bfb6be6.cjs +0 -2
  197. package/Switch-7bfb6be6.cjs.map +0 -1
  198. package/Switch-917c699a.js +0 -54
  199. package/Switch-917c699a.js.map +0 -1
  200. package/Switch.css +0 -1
  201. package/getKeyboardFocusableElements-ea0e208d-58a00025.js +0 -14
  202. package/getKeyboardFocusableElements-ea0e208d-58a00025.js.map +0 -1
  203. package/getKeyboardFocusableElements-ea0e208d-aba1bd01.cjs +0 -2
  204. package/getKeyboardFocusableElements-ea0e208d-aba1bd01.cjs.map +0 -1
  205. package/index-06c0bdf0.js +0 -480
  206. package/index-06c0bdf0.js.map +0 -1
  207. package/index-54458227.cjs +0 -23
  208. package/index-54458227.cjs.map +0 -1
  209. package/index-a53df036.cjs +0 -2
  210. package/index-a53df036.cjs.map +0 -1
  211. package/index-d46fa8de-08092573.cjs +0 -2
  212. package/index-d46fa8de-08092573.cjs.map +0 -1
  213. package/index-d46fa8de-8695742b.js +0 -62
  214. package/index-d46fa8de-8695742b.js.map +0 -1
  215. package/index-d661e4bf-ed0b2ea3.js +0 -318
  216. package/index-d661e4bf-ed0b2ea3.js.map +0 -1
  217. package/index-d661e4bf-f77d0503.cjs +0 -2
  218. package/index-d661e4bf-f77d0503.cjs.map +0 -1
  219. package/index-d661e4bf.css +0 -1
  220. package/index-dc8d970c.js +0 -4228
  221. package/index-dc8d970c.js.map +0 -1
  222. package/index-f7658447-d9ca2747.cjs +0 -2
@@ -0,0 +1,557 @@
1
+ import "./ListView.css";
2
+ import { f as o } from "./jsx-runtime-944c88e2-e73fa629.js";
3
+ import * as K from "react";
4
+ import { forwardRef as H, useState as q, useEffect as I, useRef as J, useId as ae, createContext as re, useContext as ce } from "react";
5
+ import { c as R } from "./index-e0f6271a.js";
6
+ import { J as W } from "./useLayoutPropsUtil-e307abc7-cbe2fb6d.js";
7
+ import { u as Q } from "./floating-ui.react-51a3fa68.js";
8
+ import { C as F } from "./Icon-b94f924c.js";
9
+ import "./Helper-74a1f07f-092263c4.js";
10
+ /* empty css */const se = (i) => /* @__PURE__ */ K.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...i }, /* @__PURE__ */ K.createElement("path", { d: "M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h12c.55 0 1 .45 1 1v12c0 .55-.45 1-1 1zm1-16H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z" })), oe = (i) => /* @__PURE__ */ K.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...i }, /* @__PURE__ */ K.createElement("path", { d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-8.29 13.29a.996.996 0 0 1-1.41 0L5.71 12.7a.996.996 0 1 1 1.41-1.41L10 14.17l6.88-6.88a.996.996 0 1 1 1.41 1.41l-7.58 7.59z" })), ne = (i) => /* @__PURE__ */ K.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...i }, /* @__PURE__ */ K.createElement("path", { d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-3 10H8c-.55 0-1-.45-1-1s.45-1 1-1h8c.55 0 1 .45 1 1s-.45 1-1 1z" })), de = "_checkbox_zrp47_4", ue = "_error_zrp47_77", be = "_legend_zrp47_193", he = "_children_zrp47_205", me = "_label_zrp47_211", x = {
11
+ checkbox: de,
12
+ "required-asterisk": "_required-asterisk_zrp47_28",
13
+ "icon-wrapper": "_icon-wrapper_zrp47_32",
14
+ "icon-indeterminate": "_icon-indeterminate_zrp47_67",
15
+ "icon-unchecked": "_icon-unchecked_zrp47_68",
16
+ "icon-checked": "_icon-checked_zrp47_69",
17
+ error: ue,
18
+ "checkbox-group": "_checkbox-group_zrp47_173",
19
+ legend: be,
20
+ children: he,
21
+ label: me
22
+ }, T = H((i, l) => {
23
+ const { layoutStyles: e, componentProps: d } = W(i), { className: c, children: n, legend: a, required: k, style: A, ...N } = d, _ = R(x["checkbox-group"], c), y = {
24
+ ...A,
25
+ ...e
26
+ };
27
+ return /* @__PURE__ */ o.jsxs(
28
+ "fieldset",
29
+ {
30
+ role: "group",
31
+ "data-anv": "checkbox-group",
32
+ className: _,
33
+ ref: l,
34
+ style: y,
35
+ ...N,
36
+ children: [
37
+ /* @__PURE__ */ o.jsxs("legend", { className: x.legend, children: [
38
+ a,
39
+ k && ", required"
40
+ ] }),
41
+ /* @__PURE__ */ o.jsxs("label", { className: x.label, "aria-hidden": !0, children: [
42
+ a,
43
+ k && /* @__PURE__ */ o.jsx("span", { className: x["required-asterisk"], children: "*" })
44
+ ] }),
45
+ /* @__PURE__ */ o.jsx(
46
+ "div",
47
+ {
48
+ className: x.children,
49
+ style: {
50
+ flexDirection: e == null ? void 0 : e.flexDirection,
51
+ gap: e == null ? void 0 : e.gap
52
+ },
53
+ children: n
54
+ }
55
+ )
56
+ ]
57
+ }
58
+ );
59
+ });
60
+ T.displayName = "CheckboxGroup";
61
+ const X = H(
62
+ (i, l) => {
63
+ const { layoutStyles: e, componentProps: d } = W(i), {
64
+ indeterminate: c,
65
+ onChange: n,
66
+ onClick: a,
67
+ value: k,
68
+ className: A,
69
+ disabled: N,
70
+ error: _,
71
+ icons: y,
72
+ checked: r,
73
+ defaultChecked: C,
74
+ label: s,
75
+ style: P,
76
+ required: S,
77
+ ...V
78
+ } = d, {
79
+ checked: p = oe,
80
+ indeterminate: w = ne,
81
+ unchecked: h = se
82
+ } = { ...y }, [g, z] = q(r);
83
+ I(() => {
84
+ typeof r > "u" || z((t) => t === r ? t : (n == null || n(void 0, { value: k, checked: r }), r));
85
+ }, [r, n, k]);
86
+ const j = (t) => {
87
+ r || n == null || n(t, { value: k, checked: g ?? t.target.checked });
88
+ }, O = (t) => {
89
+ a == null || a(t, {
90
+ value: k,
91
+ checked: g ?? t.target.checked
92
+ });
93
+ }, D = R([x.checkbox], A, {
94
+ [x.error]: _
95
+ }), E = {
96
+ ...P,
97
+ ...e
98
+ };
99
+ return /* @__PURE__ */ o.jsxs(
100
+ "label",
101
+ {
102
+ className: D,
103
+ style: E,
104
+ "data-anv": "checkbox",
105
+ children: [
106
+ /* @__PURE__ */ o.jsx(
107
+ "input",
108
+ {
109
+ type: "checkbox",
110
+ disabled: N,
111
+ value: k,
112
+ onChange: j,
113
+ onClick: O,
114
+ "aria-checked": c ? "mixed" : g ?? C,
115
+ checked: g,
116
+ defaultChecked: C,
117
+ "aria-invalid": _,
118
+ ref: l,
119
+ ...V
120
+ }
121
+ ),
122
+ /* @__PURE__ */ o.jsxs("span", { className: x["icon-wrapper"], "aria-hidden": !0, children: [
123
+ /* @__PURE__ */ o.jsx(
124
+ F,
125
+ {
126
+ size: "large",
127
+ svg: w,
128
+ className: x["icon-indeterminate"]
129
+ }
130
+ ),
131
+ /* @__PURE__ */ o.jsx(
132
+ F,
133
+ {
134
+ size: "large",
135
+ svg: p,
136
+ className: x["icon-checked"]
137
+ }
138
+ ),
139
+ /* @__PURE__ */ o.jsx(
140
+ F,
141
+ {
142
+ size: "large",
143
+ svg: h,
144
+ className: x["icon-unchecked"]
145
+ }
146
+ )
147
+ ] }),
148
+ /* @__PURE__ */ o.jsxs("span", { children: [
149
+ s,
150
+ S && /* @__PURE__ */ o.jsx("span", { "aria-hidden": !0, className: x["required-asterisk"], children: "*" })
151
+ ] })
152
+ ]
153
+ }
154
+ );
155
+ }
156
+ );
157
+ X.displayName = "Checkbox";
158
+ const Y = Object.assign(X, {
159
+ Group: T
160
+ });
161
+ const fe = "_listview_19l88_4", ve = "_cell_19l88_61", M = {
162
+ listview: fe,
163
+ "listview-option": "_listview-option_19l88_17",
164
+ cell: ve,
165
+ "cell-children": "_cell-children_19l88_92"
166
+ };
167
+ function Z(i, l, e) {
168
+ return i.sort(function(d, c) {
169
+ const n = d[e], a = c[e];
170
+ return l.indexOf(n) > l.indexOf(a) ? 1 : -1;
171
+ }), i;
172
+ }
173
+ const pe = (i, l, e, d, c, n) => {
174
+ if (l)
175
+ switch (i.code) {
176
+ case "Enter":
177
+ case "Space":
178
+ l[e.row].focusables[e.col].click(), document.activeElement.click(), i.preventDefault();
179
+ break;
180
+ case "ArrowDown":
181
+ if (c == null || c.focus(), l[e.row].focusables[e.col].removeAttribute(
182
+ "data-interactive"
183
+ ), e.row === l.length - 1) {
184
+ l[0].focusables[e.col].setAttribute(
185
+ "data-interactive",
186
+ "focus-visible"
187
+ ), n(l[0].focusables[e.col].id), d((a) => ({ ...a, row: 0 }));
188
+ break;
189
+ }
190
+ l[e.row + 1].focusables[e.col].setAttribute(
191
+ "data-interactive",
192
+ "focus-visible"
193
+ ), n(
194
+ l[e.row + 1].focusables[e.col].id
195
+ ), d((a) => ({ ...a, row: e.row + 1 }));
196
+ break;
197
+ case "ArrowUp":
198
+ if (c == null || c.focus(), l[e.row].focusables[e.col].removeAttribute(
199
+ "data-interactive"
200
+ ), e.row === 0) {
201
+ l[l.length - 1].focusables[e.col].setAttribute(
202
+ "data-interactive",
203
+ "focus-visible"
204
+ ), n(
205
+ l[l.length - 1].focusables[e.col].id
206
+ ), d((a) => ({ ...a, row: l.length - 1 }));
207
+ break;
208
+ }
209
+ l[e.row - 1].focusables[e.col].setAttribute(
210
+ "data-interactive",
211
+ "focus-visible"
212
+ ), n(
213
+ l[e.row - 1].focusables[e.col].id
214
+ ), d((a) => ({ ...a, row: e.row - 1 }));
215
+ break;
216
+ case "ArrowRight":
217
+ if (c == null || c.focus(), l[e.row].focusables[e.col].removeAttribute(
218
+ "data-interactive"
219
+ ), e.col === l[e.row].focusables.length - 1) {
220
+ l[e.row].focusables[0].setAttribute(
221
+ "data-interactive",
222
+ "focus-visible"
223
+ ), n(l[e.row].focusables[0].id), d((a) => ({
224
+ ...a,
225
+ col: 0
226
+ }));
227
+ break;
228
+ }
229
+ l[e.row].focusables[e.col + 1].setAttribute(
230
+ "data-interactive",
231
+ "focus-visible"
232
+ ), n(
233
+ l[e.row].focusables[e.col + 1].id
234
+ ), d((a) => ({ ...a, col: e.col + 1 }));
235
+ break;
236
+ case "ArrowLeft":
237
+ if (c == null || c.focus(), l[e.row].focusables[e.col].removeAttribute(
238
+ "data-interactive"
239
+ ), e.col === 0) {
240
+ l[e.row].focusables[l[e.row].focusables.length - 1].setAttribute("data-interactive", "focus-visible"), n(
241
+ l[e.row].focusables[l[e.row].focusables.length - 1].id
242
+ ), d((a) => ({
243
+ ...a,
244
+ col: l[e.row].focusables.length - 1
245
+ }));
246
+ break;
247
+ }
248
+ l[e.row].focusables[e.col - 1].setAttribute(
249
+ "data-interactive",
250
+ "focus-visible"
251
+ ), n(
252
+ l[e.row].focusables[e.col - 1].id
253
+ ), d((a) => ({ ...a, col: e.col - 1 }));
254
+ break;
255
+ }
256
+ }, ee = H(
257
+ (i, l) => {
258
+ const {
259
+ className: e,
260
+ children: d,
261
+ onClick: c,
262
+ onKeyDown: n,
263
+ onKeyUp: a,
264
+ onBlur: k,
265
+ onChange: A,
266
+ style: N,
267
+ disabled: _,
268
+ id: y,
269
+ ...r
270
+ } = i, C = J(null), s = Q([l, C]), P = J(), S = J(null), V = ae(), [p, w] = q(!1), { selectedItems: h, setSelectedItems: g, controlled: z } = ge(), j = "item" in r ? _ || r.item.disabled : _;
271
+ I(() => {
272
+ var t;
273
+ const f = (t = C.current) == null ? void 0 : t.querySelectorAll(
274
+ "button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])"
275
+ );
276
+ f == null || f.forEach((B, $) => {
277
+ B.setAttribute("tabindex", "-1"), !B.hasAttribute("id") && B.setAttribute("id", `${V}-${$}`);
278
+ });
279
+ }, [V]), I(() => {
280
+ if ("item" in r) {
281
+ const t = h.some((f) => f.label === r.item.label);
282
+ w(t);
283
+ } else {
284
+ const t = h.includes(
285
+ r.label
286
+ );
287
+ w(t);
288
+ }
289
+ }, [z, r, h]);
290
+ const O = (t) => {
291
+ A == null || A(t, { checked: p });
292
+ }, D = () => {
293
+ z || E();
294
+ };
295
+ function E() {
296
+ "item" in r ? h.some((t) => t.label === r.item.label) ? (g(
297
+ (t) => t.filter(
298
+ (f) => (f == null ? void 0 : f.label) !== r.item.label
299
+ )
300
+ ), w(!1)) : (g((t) => [...t, r.item]), w(!0)) : h.some((t) => t === r.label) ? (g(
301
+ (t) => t.filter((f) => f !== r.label)
302
+ ), w(!1)) : (g((t) => [...t, r.label]), w(!0));
303
+ }
304
+ if ("item" in r) {
305
+ P.current = r.item;
306
+ const { item: t, ...f } = r;
307
+ return /* @__PURE__ */ o.jsxs(
308
+ "div",
309
+ {
310
+ className: R([M["listview-option"]], e),
311
+ "data-anv": "listview-option",
312
+ style: N,
313
+ ref: s,
314
+ "aria-disabled": j,
315
+ "aria-selected": p,
316
+ "aria-label": t.label,
317
+ role: "row",
318
+ ...f,
319
+ children: [
320
+ /* @__PURE__ */ o.jsx("div", { className: M.cell, ref: S, role: "gridcell", children: /* @__PURE__ */ o.jsx(
321
+ Y,
322
+ {
323
+ disabled: j,
324
+ checked: p,
325
+ "aria-label": t.label,
326
+ onChange: O,
327
+ onClick: D
328
+ }
329
+ ) }),
330
+ d
331
+ ]
332
+ }
333
+ );
334
+ }
335
+ return /* @__PURE__ */ o.jsxs(
336
+ "div",
337
+ {
338
+ className: R([M["listview-option"]], e),
339
+ "data-anv": "listview-option",
340
+ style: N,
341
+ ref: s,
342
+ "aria-disabled": j,
343
+ "aria-selected": p,
344
+ "aria-label": "label" in i ? i.label : "Select",
345
+ role: "row",
346
+ ...r,
347
+ children: [
348
+ /* @__PURE__ */ o.jsx("div", { className: M.cell, ref: S, role: "gridcell", children: /* @__PURE__ */ o.jsx(
349
+ Y,
350
+ {
351
+ disabled: j,
352
+ checked: p,
353
+ "aria-label": "label" in i ? i.label : "Select",
354
+ onChange: O,
355
+ onClick: D
356
+ }
357
+ ) }),
358
+ d
359
+ ]
360
+ }
361
+ );
362
+ }
363
+ );
364
+ ee.displayName = "ListViewOption";
365
+ const le = H((i, l) => {
366
+ const { ...e } = i;
367
+ return /* @__PURE__ */ o.jsx("div", { role: "gridcell", "data-anv": "listview-option-cell", ...e, ref: l });
368
+ });
369
+ le.displayName = "ListViewOptionCell";
370
+ const U = re(null), we = (i) => i.querySelectorAll(
371
+ "button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])"
372
+ ), te = function(i, l) {
373
+ const { layoutStyles: e, componentProps: d } = W(i), {
374
+ onSelectionChange: c,
375
+ className: n,
376
+ selected: a,
377
+ defaultSelected: k,
378
+ style: A,
379
+ onKeyDown: N,
380
+ ..._
381
+ } = d, y = J(null), r = J(!0), C = Q([l, y]), [s, P] = q(), [S, V] = q(), [p, w] = q(
382
+ a ?? k ?? []
383
+ ), [h, g] = q({
384
+ row: 0,
385
+ col: 0
386
+ }), z = {
387
+ ...A,
388
+ ...e
389
+ }, j = (u) => {
390
+ r.current && s && s[h.row].focusables[h.col].setAttribute(
391
+ "data-interactive",
392
+ "focus-visible"
393
+ );
394
+ }, O = () => {
395
+ var u;
396
+ s && ((u = s[h.row].focusables[h.col]) == null || u.removeAttribute(
397
+ "data-interactive"
398
+ ));
399
+ }, D = (u) => {
400
+ N == null || N(u), s && (r.current = !0, pe(
401
+ u,
402
+ s,
403
+ h,
404
+ g,
405
+ y.current,
406
+ (m) => V(m)
407
+ ));
408
+ }, E = (u) => {
409
+ var m;
410
+ if (r.current = !1, s && y.current) {
411
+ (m = s[h.row].focusables[h.col]) == null || m.removeAttribute(
412
+ "data-interactive"
413
+ );
414
+ const b = u.target.closest(
415
+ "button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [data-anv='checkbox']"
416
+ ), v = u.target.closest(
417
+ '[data-anv="listview-option"]'
418
+ );
419
+ if (!v || v.ariaDisabled)
420
+ return;
421
+ const L = s.findIndex((ie) => ie.node === v);
422
+ if (!b) {
423
+ s[L].focusables[0].click();
424
+ return;
425
+ }
426
+ const G = Array.prototype.indexOf.call(
427
+ s[L].focusables,
428
+ (b == null ? void 0 : b.getAttribute("data-anv")) === "checkbox" ? b.children[0] : b
429
+ );
430
+ g({ row: L, col: G });
431
+ }
432
+ };
433
+ I(() => {
434
+ if (!y.current)
435
+ return;
436
+ const u = y.current.querySelectorAll(
437
+ "div[data-anv='listview-option']:not([aria-disabled='true'])"
438
+ ), m = Array.from(u).map((b) => {
439
+ const v = we(b);
440
+ return {
441
+ node: b,
442
+ focusables: v
443
+ };
444
+ });
445
+ P(m);
446
+ }, [i.children]);
447
+ const t = J();
448
+ I(() => {
449
+ if (!s)
450
+ return;
451
+ const u = s.map((b) => b.node.ariaLabel), m = Z(p, u, "label");
452
+ JSON.stringify(t.current) !== JSON.stringify(m) && (c == null || c(m), t.current = m);
453
+ }, [c, s, p]), I(() => {
454
+ if (!a)
455
+ return;
456
+ const u = a.reduce(
457
+ (v, L) => v.find((G) => G.label === L.label) ? v : v.concat([L]),
458
+ []
459
+ );
460
+ if (!s)
461
+ return;
462
+ const m = s.map((v) => v.node.ariaLabel), b = Z(u, m, "label");
463
+ JSON.stringify(t.current) !== JSON.stringify(b) && (c == null || c(b), w(b), t.current = b);
464
+ }, [c, s, a]);
465
+ const f = R([M.listview], n);
466
+ if ("items" in _) {
467
+ const { children: u, items: m, ...b } = _;
468
+ return /* @__PURE__ */ o.jsx(
469
+ U.Provider,
470
+ {
471
+ value: {
472
+ options: s,
473
+ onSelectionChange: c,
474
+ selectedItems: p,
475
+ setSelectedItems: w,
476
+ items: m,
477
+ controlled: !!a
478
+ },
479
+ children: /* @__PURE__ */ o.jsx(
480
+ "div",
481
+ {
482
+ ref: C,
483
+ className: f,
484
+ style: z,
485
+ "data-anv": "listview",
486
+ role: "grid",
487
+ "aria-multiselectable": "true",
488
+ onFocus: j,
489
+ onBlur: O,
490
+ onKeyDown: D,
491
+ onMouseDown: E,
492
+ "aria-activedescendant": S,
493
+ tabIndex: 0,
494
+ ...b,
495
+ children: u == null ? void 0 : u({
496
+ items: m.map((v) => v)
497
+ })
498
+ }
499
+ )
500
+ }
501
+ );
502
+ }
503
+ const { children: B, ...$ } = _;
504
+ return /* @__PURE__ */ o.jsx(
505
+ U.Provider,
506
+ {
507
+ value: {
508
+ options: s,
509
+ onSelectionChange: c,
510
+ selectedItems: p,
511
+ setSelectedItems: w,
512
+ controlled: !!a
513
+ },
514
+ children: /* @__PURE__ */ o.jsx(
515
+ "div",
516
+ {
517
+ ref: C,
518
+ className: f,
519
+ style: z,
520
+ "data-anv": "listview",
521
+ role: "grid",
522
+ onFocus: j,
523
+ onBlur: O,
524
+ onKeyDown: D,
525
+ onMouseDown: E,
526
+ "aria-activedescendant": S,
527
+ tabIndex: 0,
528
+ ...$,
529
+ children: B
530
+ }
531
+ )
532
+ }
533
+ );
534
+ };
535
+ function ge() {
536
+ const i = ce(U);
537
+ if (i == null)
538
+ throw new Error("useListView must be wrapped in <ListView />");
539
+ return i;
540
+ }
541
+ te.displayName = "ListView";
542
+ const ze = Object.assign(
543
+ H(te),
544
+ {
545
+ Option: ee,
546
+ OptionCell: le
547
+ }
548
+ );
549
+ export {
550
+ ze as A,
551
+ ee as Y,
552
+ le as Z,
553
+ T as f,
554
+ Y as r,
555
+ M as t
556
+ };
557
+ //# sourceMappingURL=ListView-3b1adecb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListView-3b1adecb.js","sources":["../node_modules/@servicetitan/hammer-react/dist/Checkbox.js","../node_modules/@servicetitan/hammer-react/dist/ListView.module-854f2491.js","../node_modules/@servicetitan/hammer-react/dist/ListView.js"],"sourcesContent":["import \"./index8.css\";\nimport { j as e } from \"./jsx-runtime-944c88e2.js\";\nimport * as d from \"react\";\nimport { forwardRef as v, useState as M, useEffect as R } from \"react\";\nimport w from \"classnames\";\nimport { Icon as _ } from \"./Icon.js\";\nimport \"tinycolor2\";\nimport \"@servicetitan/hammer-token\";\nimport { a as z } from \"./useLayoutPropsUtil-e307abc7.js\";\nimport \"@floating-ui/react\";\nconst D = (r) => /* @__PURE__ */ d.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...r }, /* @__PURE__ */ d.createElement(\"path\", { d: \"M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h12c.55 0 1 .45 1 1v12c0 .55-.45 1-1 1zm1-16H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z\" })), O = (r) => /* @__PURE__ */ d.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...r }, /* @__PURE__ */ d.createElement(\"path\", { d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-8.29 13.29a.996.996 0 0 1-1.41 0L5.71 12.7a.996.996 0 1 1 1.41-1.41L10 14.17l6.88-6.88a.996.996 0 1 1 1.41 1.41l-7.58 7.59z\" })), S = (r) => /* @__PURE__ */ d.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...r }, /* @__PURE__ */ d.createElement(\"path\", { d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-3 10H8c-.55 0-1-.45-1-1s.45-1 1-1h8c.55 0 1 .45 1 1s-.45 1-1 1z\" })), U = \"_checkbox_zrp47_4\", A = \"_error_zrp47_77\", F = \"_legend_zrp47_193\", J = \"_children_zrp47_205\", K = \"_label_zrp47_211\", c = {\n checkbox: U,\n \"required-asterisk\": \"_required-asterisk_zrp47_28\",\n \"icon-wrapper\": \"_icon-wrapper_zrp47_32\",\n \"icon-indeterminate\": \"_icon-indeterminate_zrp47_67\",\n \"icon-unchecked\": \"_icon-unchecked_zrp47_68\",\n \"icon-checked\": \"_icon-checked_zrp47_69\",\n error: A,\n \"checkbox-group\": \"_checkbox-group_zrp47_173\",\n legend: F,\n children: J,\n label: K\n}, f = v((r, m) => {\n const { layoutStyles: s, componentProps: p } = z(r), { className: k, children: t, legend: i, required: n, style: x, ...u } = p, l = w(c[\"checkbox-group\"], k), g = {\n ...x,\n ...s\n };\n return /* @__PURE__ */ e.jsxs(\n \"fieldset\",\n {\n role: \"group\",\n \"data-anv\": \"checkbox-group\",\n className: l,\n ref: m,\n style: g,\n ...u,\n children: [\n /* @__PURE__ */ e.jsxs(\"legend\", { className: c.legend, children: [\n i,\n n && \", required\"\n ] }),\n /* @__PURE__ */ e.jsxs(\"label\", { className: c.label, \"aria-hidden\": !0, children: [\n i,\n n && /* @__PURE__ */ e.jsx(\"span\", { className: c[\"required-asterisk\"], children: \"*\" })\n ] }),\n /* @__PURE__ */ e.jsx(\n \"div\",\n {\n className: c.children,\n style: {\n flexDirection: s == null ? void 0 : s.flexDirection,\n gap: s == null ? void 0 : s.gap\n },\n children: t\n }\n )\n ]\n }\n );\n});\nf.displayName = \"CheckboxGroup\";\nconst N = v(\n (r, m) => {\n const { layoutStyles: s, componentProps: p } = z(r), {\n indeterminate: k,\n onChange: t,\n onClick: i,\n value: n,\n className: x,\n disabled: u,\n error: l,\n icons: g,\n checked: a,\n defaultChecked: b,\n label: j,\n style: C,\n required: y,\n ...E\n } = p, {\n checked: q = O,\n indeterminate: B = S,\n unchecked: H = D\n } = { ...g }, [h, I] = M(a);\n R(() => {\n typeof a > \"u\" || I((o) => o === a ? o : (t == null || t(void 0, { value: n, checked: a }), a));\n }, [a, t, n]);\n const G = (o) => {\n a || t == null || t(o, { value: n, checked: h ?? o.target.checked });\n }, P = (o) => {\n i == null || i(o, {\n value: n,\n checked: h ?? o.target.checked\n });\n }, V = w([c.checkbox], x, {\n [c.error]: l\n }), L = {\n ...C,\n ...s\n };\n return /* @__PURE__ */ e.jsxs(\n \"label\",\n {\n className: V,\n style: L,\n \"data-anv\": \"checkbox\",\n children: [\n /* @__PURE__ */ e.jsx(\n \"input\",\n {\n type: \"checkbox\",\n disabled: u,\n value: n,\n onChange: G,\n onClick: P,\n \"aria-checked\": k ? \"mixed\" : h ?? b,\n checked: h,\n defaultChecked: b,\n \"aria-invalid\": l,\n ref: m,\n ...E\n }\n ),\n /* @__PURE__ */ e.jsxs(\"span\", { className: c[\"icon-wrapper\"], \"aria-hidden\": !0, children: [\n /* @__PURE__ */ e.jsx(\n _,\n {\n size: \"large\",\n svg: B,\n className: c[\"icon-indeterminate\"]\n }\n ),\n /* @__PURE__ */ e.jsx(\n _,\n {\n size: \"large\",\n svg: q,\n className: c[\"icon-checked\"]\n }\n ),\n /* @__PURE__ */ e.jsx(\n _,\n {\n size: \"large\",\n svg: H,\n className: c[\"icon-unchecked\"]\n }\n )\n ] }),\n /* @__PURE__ */ e.jsxs(\"span\", { children: [\n j,\n y && /* @__PURE__ */ e.jsx(\"span\", { \"aria-hidden\": !0, className: c[\"required-asterisk\"], children: \"*\" })\n ] })\n ]\n }\n );\n }\n);\nN.displayName = \"Checkbox\";\nconst re = Object.assign(N, {\n Group: f\n});\nexport {\n re as Checkbox,\n f as CheckboxGroup\n};\n//# sourceMappingURL=Checkbox.js.map\n","import \"./ListView.css\";\nconst l = \"_listview_19l88_4\", i = \"_cell_19l88_61\", t = {\n listview: l,\n \"listview-option\": \"_listview-option_19l88_17\",\n cell: i,\n \"cell-children\": \"_cell-children_19l88_92\"\n};\nexport {\n t as s\n};\n//# sourceMappingURL=ListView.module-854f2491.js.map\n","import { j as m } from \"./jsx-runtime-944c88e2.js\";\nimport { forwardRef as T, useRef as N, useId as F, useState as E, useEffect as B, createContext as I, useContext as ee } from \"react\";\nimport U from \"classnames\";\nimport \"tinycolor2\";\nimport \"@servicetitan/hammer-token\";\nimport { a as te } from \"./useLayoutPropsUtil-e307abc7.js\";\nimport { useMergeRefs as X } from \"@floating-ui/react\";\nimport { s as H } from \"./ListView.module-854f2491.js\";\nimport { Checkbox as Q } from \"./Checkbox.js\";\nimport \"./Helper-74a1f07f.js\";\nimport \"./Spinner.module-618b582c.js\";\nfunction W(a, t, e) {\n return a.sort(function(d, r) {\n const f = d[e], i = r[e];\n return t.indexOf(f) > t.indexOf(i) ? 1 : -1;\n }), a;\n}\nconst re = (a, t, e, d, r, f) => {\n if (t)\n switch (a.code) {\n case \"Enter\":\n case \"Space\":\n t[e.row].focusables[e.col].click(), document.activeElement.click(), a.preventDefault();\n break;\n case \"ArrowDown\":\n if (r == null || r.focus(), t[e.row].focusables[e.col].removeAttribute(\n \"data-interactive\"\n ), e.row === t.length - 1) {\n t[0].focusables[e.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(t[0].focusables[e.col].id), d((i) => ({ ...i, row: 0 }));\n break;\n }\n t[e.row + 1].focusables[e.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(\n t[e.row + 1].focusables[e.col].id\n ), d((i) => ({ ...i, row: e.row + 1 }));\n break;\n case \"ArrowUp\":\n if (r == null || r.focus(), t[e.row].focusables[e.col].removeAttribute(\n \"data-interactive\"\n ), e.row === 0) {\n t[t.length - 1].focusables[e.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(\n t[t.length - 1].focusables[e.col].id\n ), d((i) => ({ ...i, row: t.length - 1 }));\n break;\n }\n t[e.row - 1].focusables[e.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(\n t[e.row - 1].focusables[e.col].id\n ), d((i) => ({ ...i, row: e.row - 1 }));\n break;\n case \"ArrowRight\":\n if (r == null || r.focus(), t[e.row].focusables[e.col].removeAttribute(\n \"data-interactive\"\n ), e.col === t[e.row].focusables.length - 1) {\n t[e.row].focusables[0].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(t[e.row].focusables[0].id), d((i) => ({\n ...i,\n col: 0\n }));\n break;\n }\n t[e.row].focusables[e.col + 1].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(\n t[e.row].focusables[e.col + 1].id\n ), d((i) => ({ ...i, col: e.col + 1 }));\n break;\n case \"ArrowLeft\":\n if (r == null || r.focus(), t[e.row].focusables[e.col].removeAttribute(\n \"data-interactive\"\n ), e.col === 0) {\n t[e.row].focusables[t[e.row].focusables.length - 1].setAttribute(\"data-interactive\", \"focus-visible\"), f(\n t[e.row].focusables[t[e.row].focusables.length - 1].id\n ), d((i) => ({\n ...i,\n col: t[e.row].focusables.length - 1\n }));\n break;\n }\n t[e.row].focusables[e.col - 1].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n ), f(\n t[e.row].focusables[e.col - 1].id\n ), d((i) => ({ ...i, col: e.col - 1 }));\n break;\n }\n}, Y = T(\n (a, t) => {\n const {\n className: e,\n children: d,\n onClick: r,\n onKeyDown: f,\n onKeyUp: i,\n onBlur: z,\n onChange: V,\n style: S,\n disabled: k,\n id: O,\n ...s\n } = a, j = N(null), l = X([t, j]), J = N(), C = N(null), K = F(), [x, h] = E(!1), { selectedItems: w, setSelectedItems: g, controlled: P } = le(), y = \"item\" in s ? k || s.item.disabled : k;\n B(() => {\n var n;\n const o = (n = j.current) == null ? void 0 : n.querySelectorAll(\n \"button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])\"\n );\n o == null || o.forEach((A, M) => {\n A.setAttribute(\"tabindex\", \"-1\"), !A.hasAttribute(\"id\") && A.setAttribute(\"id\", `${K}-${M}`);\n });\n }, [K]), B(() => {\n if (\"item\" in s) {\n const o = w.some((n) => n.label === s.item.label);\n h(o);\n } else {\n const o = w.includes(\n s.label\n );\n h(o);\n }\n }, [P, s, w]);\n const D = (o) => {\n V == null || V(o, { checked: x });\n }, R = () => {\n P || p();\n };\n function p() {\n \"item\" in s ? w.some((n) => n.label === s.item.label) ? (g(\n (n) => n.filter(\n (A) => (A == null ? void 0 : A.label) !== s.item.label\n )\n ), h(!1)) : (g((n) => [...n, s.item]), h(!0)) : w.some((n) => n === s.label) ? (g(\n (n) => n.filter((A) => A !== s.label)\n ), h(!1)) : (g((n) => [...n, s.label]), h(!0));\n }\n if (\"item\" in s) {\n J.current = s.item;\n const { item: o, ...n } = s;\n return /* @__PURE__ */ m.jsxs(\n \"div\",\n {\n className: U([H[\"listview-option\"]], e),\n \"data-anv\": \"listview-option\",\n style: S,\n ref: l,\n \"aria-disabled\": y,\n \"aria-selected\": x,\n \"aria-label\": o.label,\n role: \"row\",\n ...n,\n children: [\n /* @__PURE__ */ m.jsx(\"div\", { className: H.cell, ref: C, role: \"gridcell\", children: /* @__PURE__ */ m.jsx(\n Q,\n {\n disabled: y,\n checked: x,\n \"aria-label\": o.label,\n onChange: D,\n onClick: R\n }\n ) }),\n d\n ]\n }\n );\n }\n return /* @__PURE__ */ m.jsxs(\n \"div\",\n {\n className: U([H[\"listview-option\"]], e),\n \"data-anv\": \"listview-option\",\n style: S,\n ref: l,\n \"aria-disabled\": y,\n \"aria-selected\": x,\n \"aria-label\": \"label\" in a ? a.label : \"Select\",\n role: \"row\",\n ...s,\n children: [\n /* @__PURE__ */ m.jsx(\"div\", { className: H.cell, ref: C, role: \"gridcell\", children: /* @__PURE__ */ m.jsx(\n Q,\n {\n disabled: y,\n checked: x,\n \"aria-label\": \"label\" in a ? a.label : \"Select\",\n onChange: D,\n onClick: R\n }\n ) }),\n d\n ]\n }\n );\n }\n);\nY.displayName = \"ListViewOption\";\nconst Z = T((a, t) => {\n const { ...e } = a;\n return /* @__PURE__ */ m.jsx(\"div\", { role: \"gridcell\", \"data-anv\": \"listview-option-cell\", ...e, ref: t });\n});\nZ.displayName = \"ListViewOptionCell\";\nconst $ = I(null), ie = (a) => a.querySelectorAll(\n \"button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])\"\n), _ = function(a, t) {\n const { layoutStyles: e, componentProps: d } = te(a), {\n onSelectionChange: r,\n className: f,\n selected: i,\n defaultSelected: z,\n style: V,\n onKeyDown: S,\n ...k\n } = d, O = N(null), s = N(!0), j = X([t, O]), [l, J] = E(), [C, K] = E(), [x, h] = E(\n i ?? z ?? []\n ), [w, g] = E({\n row: 0,\n col: 0\n }), P = {\n ...V,\n ...e\n }, y = (c) => {\n s.current && l && l[w.row].focusables[w.col].setAttribute(\n \"data-interactive\",\n \"focus-visible\"\n );\n }, D = () => {\n var c;\n l && ((c = l[w.row].focusables[w.col]) == null || c.removeAttribute(\n \"data-interactive\"\n ));\n }, R = (c) => {\n S == null || S(c), l && (s.current = !0, re(\n c,\n l,\n w,\n g,\n O.current,\n (u) => K(u)\n ));\n }, p = (c) => {\n var u;\n if (s.current = !1, l && O.current) {\n (u = l[w.row].focusables[w.col]) == null || u.removeAttribute(\n \"data-interactive\"\n );\n const b = c.target.closest(\n \"button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [data-anv='checkbox']\"\n ), v = c.target.closest(\n '[data-anv=\"listview-option\"]'\n );\n if (!v || v.ariaDisabled)\n return;\n const L = l.findIndex((q) => q.node === v);\n if (!b) {\n l[L].focusables[0].click();\n return;\n }\n const G = Array.prototype.indexOf.call(\n l[L].focusables,\n (b == null ? void 0 : b.getAttribute(\"data-anv\")) === \"checkbox\" ? b.children[0] : b\n );\n g({ row: L, col: G });\n }\n };\n B(() => {\n if (!O.current)\n return;\n const c = O.current.querySelectorAll(\n \"div[data-anv='listview-option']:not([aria-disabled='true'])\"\n ), u = Array.from(c).map((b) => {\n const v = ie(b);\n return {\n node: b,\n focusables: v\n };\n });\n J(u);\n }, [a.children]);\n const o = N();\n B(() => {\n if (!l)\n return;\n const c = l.map((b) => b.node.ariaLabel), u = W(x, c, \"label\");\n JSON.stringify(o.current) !== JSON.stringify(u) && (r == null || r(u), o.current = u);\n }, [r, l, x]), B(() => {\n if (!i)\n return;\n const c = i.reduce(\n (v, L) => v.find((q) => q.label === L.label) ? v : v.concat([L]),\n []\n );\n if (!l)\n return;\n const u = l.map((v) => v.node.ariaLabel), b = W(c, u, \"label\");\n JSON.stringify(o.current) !== JSON.stringify(b) && (r == null || r(b), h(b), o.current = b);\n }, [r, l, i]);\n const n = U([H.listview], f);\n if (\"items\" in k) {\n const { children: c, items: u, ...b } = k;\n return /* @__PURE__ */ m.jsx(\n $.Provider,\n {\n value: {\n options: l,\n onSelectionChange: r,\n selectedItems: x,\n setSelectedItems: h,\n items: u,\n controlled: !!i\n },\n children: /* @__PURE__ */ m.jsx(\n \"div\",\n {\n ref: j,\n className: n,\n style: P,\n \"data-anv\": \"listview\",\n role: \"grid\",\n \"aria-multiselectable\": \"true\",\n onFocus: y,\n onBlur: D,\n onKeyDown: R,\n onMouseDown: p,\n \"aria-activedescendant\": C,\n tabIndex: 0,\n ...b,\n children: c == null ? void 0 : c({\n items: u.map((v) => v)\n })\n }\n )\n }\n );\n }\n const { children: A, ...M } = k;\n return /* @__PURE__ */ m.jsx(\n $.Provider,\n {\n value: {\n options: l,\n onSelectionChange: r,\n selectedItems: x,\n setSelectedItems: h,\n controlled: !!i\n },\n children: /* @__PURE__ */ m.jsx(\n \"div\",\n {\n ref: j,\n className: n,\n style: P,\n \"data-anv\": \"listview\",\n role: \"grid\",\n onFocus: y,\n onBlur: D,\n onKeyDown: R,\n onMouseDown: p,\n \"aria-activedescendant\": C,\n tabIndex: 0,\n ...M,\n children: A\n }\n )\n }\n );\n};\nfunction le() {\n const a = ee($);\n if (a == null)\n throw new Error(\"useListView must be wrapped in <ListView />\");\n return a;\n}\n_.displayName = \"ListView\";\nconst Ae = Object.assign(\n T(_),\n {\n Option: Y,\n OptionCell: Z\n }\n);\nexport {\n Ae as ListView,\n Y as ListViewOption,\n Z as ListViewOptionCell\n};\n//# sourceMappingURL=ListView.js.map\n"],"names":["D","r","React","O","S","U","A","F","J","K","c","f","forwardRef","m","s","p","J$1","k","t","i","n","x","u","l","cx","g","fr","N","a","b","j","C$1","y","E","q","B","H","h","I","useState","useEffect","o","G","P","V","L","C","re$1","W","re","Y","t$1","z","useRef","useMergeRefs","useId","w","le","M","R","Z","$","createContext","ie","_","useContext","Ae"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -0,0 +1,2 @@
1
+ var we=require("./ListView.css");const n=require("./jsx-runtime-944c88e2-2b81c205.cjs"),s=require("react"),M=require("./index-67d20edb.cjs"),$=require("./useLayoutPropsUtil-e307abc7-3826ee09.cjs"),W=require("./floating-ui.react-5347095a.cjs"),H=require("./Icon-57c31c9b.cjs");require("./Helper-74a1f07f-61317df2.cjs");/* empty css */function te(l){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(l){for(const e in l)if(e!=="default"){const d=Object.getOwnPropertyDescriptor(l,e);Object.defineProperty(t,e,d.get?d:{enumerable:!0,get:()=>l[e]})}}return t.default=l,Object.freeze(t)}const I=te(s);const le=l=>I.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",...l},I.createElement("path",{d:"M18 19H6c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h12c.55 0 1 .45 1 1v12c0 .55-.45 1-1 1zm1-16H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"})),re=l=>I.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",...l},I.createElement("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-8.29 13.29a.996.996 0 0 1-1.41 0L5.71 12.7a.996.996 0 1 1 1.41-1.41L10 14.17l6.88-6.88a.996.996 0 1 1 1.41 1.41l-7.58 7.59z"})),ie=l=>I.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",...l},I.createElement("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-3 10H8c-.55 0-1-.45-1-1s.45-1 1-1h8c.55 0 1 .45 1 1s-.45 1-1 1z"})),ce="_checkbox_zrp47_4",se="_error_zrp47_77",ae="_legend_zrp47_193",oe="_children_zrp47_205",ne="_label_zrp47_211",k={checkbox:ce,"required-asterisk":"_required-asterisk_zrp47_28","icon-wrapper":"_icon-wrapper_zrp47_32","icon-indeterminate":"_icon-indeterminate_zrp47_67","icon-unchecked":"_icon-unchecked_zrp47_68","icon-checked":"_icon-checked_zrp47_69",error:se,"checkbox-group":"_checkbox-group_zrp47_173",legend:ae,children:oe,label:ne},F=s.forwardRef((l,t)=>{const{layoutStyles:e,componentProps:d}=$.J(l),{className:a,children:u,legend:i,required:_,style:A,...N}=d,y=M.cx(k["checkbox-group"],a),j={...A,...e};return n.fr.jsxs("fieldset",{role:"group","data-anv":"checkbox-group",className:y,ref:t,style:j,...N,children:[n.fr.jsxs("legend",{className:k.legend,children:[i,_&&", required"]}),n.fr.jsxs("label",{className:k.label,"aria-hidden":!0,children:[i,_&&n.fr.jsx("span",{className:k["required-asterisk"],children:"*"})]}),n.fr.jsx("div",{className:k.children,style:{flexDirection:e==null?void 0:e.flexDirection,gap:e==null?void 0:e.gap},children:u})]})});F.displayName="CheckboxGroup";const Q=s.forwardRef((l,t)=>{const{layoutStyles:e,componentProps:d}=$.J(l),{indeterminate:a,onChange:u,onClick:i,value:_,className:A,disabled:N,error:y,icons:j,checked:c,defaultChecked:C,label:o,style:P,required:z,...E}=d,{checked:p=re,indeterminate:g=ie,unchecked:h=le}={...j},[x,O]=s.useState(c);s.useEffect(()=>{typeof c>"u"||O(r=>r===c?r:(u==null||u(void 0,{value:_,checked:c}),c))},[c,u,_]);const S=r=>{c||u==null||u(r,{value:_,checked:x??r.target.checked})},q=r=>{i==null||i(r,{value:_,checked:x??r.target.checked})},R=M.cx([k.checkbox],A,{[k.error]:y}),D={...P,...e};return n.fr.jsxs("label",{className:R,style:D,"data-anv":"checkbox",children:[n.fr.jsx("input",{type:"checkbox",disabled:N,value:_,onChange:S,onClick:q,"aria-checked":a?"mixed":x??C,checked:x,defaultChecked:C,"aria-invalid":y,ref:t,...E}),n.fr.jsxs("span",{className:k["icon-wrapper"],"aria-hidden":!0,children:[n.fr.jsx(H.C,{size:"large",svg:g,className:k["icon-indeterminate"]}),n.fr.jsx(H.C,{size:"large",svg:p,className:k["icon-checked"]}),n.fr.jsx(H.C,{size:"large",svg:h,className:k["icon-unchecked"]})]}),n.fr.jsxs("span",{children:[o,z&&n.fr.jsx("span",{"aria-hidden":!0,className:k["required-asterisk"],children:"*"})]})]})});Q.displayName="Checkbox";const U=Object.assign(Q,{Group:F});const de="_listview_19l88_4",ue="_cell_19l88_61",V={listview:de,"listview-option":"_listview-option_19l88_17",cell:ue,"cell-children":"_cell-children_19l88_92"};function T(l,t,e){return l.sort(function(d,a){const u=d[e],i=a[e];return t.indexOf(u)>t.indexOf(i)?1:-1}),l}const be=(l,t,e,d,a,u)=>{if(t)switch(l.code){case"Enter":case"Space":t[e.row].focusables[e.col].click(),document.activeElement.click(),l.preventDefault();break;case"ArrowDown":if(a==null||a.focus(),t[e.row].focusables[e.col].removeAttribute("data-interactive"),e.row===t.length-1){t[0].focusables[e.col].setAttribute("data-interactive","focus-visible"),u(t[0].focusables[e.col].id),d(i=>({...i,row:0}));break}t[e.row+1].focusables[e.col].setAttribute("data-interactive","focus-visible"),u(t[e.row+1].focusables[e.col].id),d(i=>({...i,row:e.row+1}));break;case"ArrowUp":if(a==null||a.focus(),t[e.row].focusables[e.col].removeAttribute("data-interactive"),e.row===0){t[t.length-1].focusables[e.col].setAttribute("data-interactive","focus-visible"),u(t[t.length-1].focusables[e.col].id),d(i=>({...i,row:t.length-1}));break}t[e.row-1].focusables[e.col].setAttribute("data-interactive","focus-visible"),u(t[e.row-1].focusables[e.col].id),d(i=>({...i,row:e.row-1}));break;case"ArrowRight":if(a==null||a.focus(),t[e.row].focusables[e.col].removeAttribute("data-interactive"),e.col===t[e.row].focusables.length-1){t[e.row].focusables[0].setAttribute("data-interactive","focus-visible"),u(t[e.row].focusables[0].id),d(i=>({...i,col:0}));break}t[e.row].focusables[e.col+1].setAttribute("data-interactive","focus-visible"),u(t[e.row].focusables[e.col+1].id),d(i=>({...i,col:e.col+1}));break;case"ArrowLeft":if(a==null||a.focus(),t[e.row].focusables[e.col].removeAttribute("data-interactive"),e.col===0){t[e.row].focusables[t[e.row].focusables.length-1].setAttribute("data-interactive","focus-visible"),u(t[e.row].focusables[t[e.row].focusables.length-1].id),d(i=>({...i,col:t[e.row].focusables.length-1}));break}t[e.row].focusables[e.col-1].setAttribute("data-interactive","focus-visible"),u(t[e.row].focusables[e.col-1].id),d(i=>({...i,col:e.col-1}));break}},Y=s.forwardRef((l,t)=>{const{className:e,children:d,onClick:a,onKeyDown:u,onKeyUp:i,onBlur:_,onChange:A,style:N,disabled:y,id:j,...c}=l,C=s.useRef(null),o=W.useMergeRefs([t,C]),P=s.useRef(),z=s.useRef(null),E=s.useId(),[p,g]=s.useState(!1),{selectedItems:h,setSelectedItems:x,controlled:O}=he(),S="item"in c?y||c.item.disabled:y;s.useEffect(()=>{var r;const w=(r=C.current)==null?void 0:r.querySelectorAll("button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])");w==null||w.forEach((J,K)=>{J.setAttribute("tabindex","-1"),!J.hasAttribute("id")&&J.setAttribute("id",`${E}-${K}`)})},[E]),s.useEffect(()=>{if("item"in c){const r=h.some(w=>w.label===c.item.label);g(r)}else{const r=h.includes(c.label);g(r)}},[O,c,h]);const q=r=>{A==null||A(r,{checked:p})},R=()=>{O||D()};function D(){"item"in c?h.some(r=>r.label===c.item.label)?(x(r=>r.filter(w=>(w==null?void 0:w.label)!==c.item.label)),g(!1)):(x(r=>[...r,c.item]),g(!0)):h.some(r=>r===c.label)?(x(r=>r.filter(w=>w!==c.label)),g(!1)):(x(r=>[...r,c.label]),g(!0))}if("item"in c){P.current=c.item;const{item:r,...w}=c;return n.fr.jsxs("div",{className:M.cx([V["listview-option"]],e),"data-anv":"listview-option",style:N,ref:o,"aria-disabled":S,"aria-selected":p,"aria-label":r.label,role:"row",...w,children:[n.fr.jsx("div",{className:V.cell,ref:z,role:"gridcell",children:n.fr.jsx(U,{disabled:S,checked:p,"aria-label":r.label,onChange:q,onClick:R})}),d]})}return n.fr.jsxs("div",{className:M.cx([V["listview-option"]],e),"data-anv":"listview-option",style:N,ref:o,"aria-disabled":S,"aria-selected":p,"aria-label":"label"in l?l.label:"Select",role:"row",...c,children:[n.fr.jsx("div",{className:V.cell,ref:z,role:"gridcell",children:n.fr.jsx(U,{disabled:S,checked:p,"aria-label":"label"in l?l.label:"Select",onChange:q,onClick:R})}),d]})});Y.displayName="ListViewOption";const Z=s.forwardRef((l,t)=>{const{...e}=l;return n.fr.jsx("div",{role:"gridcell","data-anv":"listview-option-cell",...e,ref:t})});Z.displayName="ListViewOptionCell";const G=s.createContext(null),fe=l=>l.querySelectorAll("button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [tabindex='0']:not(:disabled):not([aria-disabled='true'])"),X=function(l,t){const{layoutStyles:e,componentProps:d}=$.J(l),{onSelectionChange:a,className:u,selected:i,defaultSelected:_,style:A,onKeyDown:N,...y}=d,j=s.useRef(null),c=s.useRef(!0),C=W.useMergeRefs([t,j]),[o,P]=s.useState(),[z,E]=s.useState(),[p,g]=s.useState(i??_??[]),[h,x]=s.useState({row:0,col:0}),O={...A,...e},S=b=>{c.current&&o&&o[h.row].focusables[h.col].setAttribute("data-interactive","focus-visible")},q=()=>{var b;o&&((b=o[h.row].focusables[h.col])==null||b.removeAttribute("data-interactive"))},R=b=>{N==null||N(b),o&&(c.current=!0,be(b,o,h,x,j.current,v=>E(v)))},D=b=>{var v;if(c.current=!1,o&&j.current){(v=o[h.row].focusables[h.col])==null||v.removeAttribute("data-interactive");const f=b.target.closest("button:not(:disabled):not([aria-disabled='true']), input:not(:disabled):not([aria-disabled='true']), [data-anv='checkbox']"),m=b.target.closest('[data-anv="listview-option"]');if(!m||m.ariaDisabled)return;const L=o.findIndex(ee=>ee.node===m);if(!f){o[L].focusables[0].click();return}const B=Array.prototype.indexOf.call(o[L].focusables,(f==null?void 0:f.getAttribute("data-anv"))==="checkbox"?f.children[0]:f);x({row:L,col:B})}};s.useEffect(()=>{if(!j.current)return;const b=j.current.querySelectorAll("div[data-anv='listview-option']:not([aria-disabled='true'])"),v=Array.from(b).map(f=>{const m=fe(f);return{node:f,focusables:m}});P(v)},[l.children]);const r=s.useRef();s.useEffect(()=>{if(!o)return;const b=o.map(f=>f.node.ariaLabel),v=T(p,b,"label");JSON.stringify(r.current)!==JSON.stringify(v)&&(a==null||a(v),r.current=v)},[a,o,p]),s.useEffect(()=>{if(!i)return;const b=i.reduce((m,L)=>m.find(B=>B.label===L.label)?m:m.concat([L]),[]);if(!o)return;const v=o.map(m=>m.node.ariaLabel),f=T(b,v,"label");JSON.stringify(r.current)!==JSON.stringify(f)&&(a==null||a(f),g(f),r.current=f)},[a,o,i]);const w=M.cx([V.listview],u);if("items"in y){const{children:b,items:v,...f}=y;return n.fr.jsx(G.Provider,{value:{options:o,onSelectionChange:a,selectedItems:p,setSelectedItems:g,items:v,controlled:!!i},children:n.fr.jsx("div",{ref:C,className:w,style:O,"data-anv":"listview",role:"grid","aria-multiselectable":"true",onFocus:S,onBlur:q,onKeyDown:R,onMouseDown:D,"aria-activedescendant":z,tabIndex:0,...f,children:b==null?void 0:b({items:v.map(m=>m)})})})}const{children:J,...K}=y;return n.fr.jsx(G.Provider,{value:{options:o,onSelectionChange:a,selectedItems:p,setSelectedItems:g,controlled:!!i},children:n.fr.jsx("div",{ref:C,className:w,style:O,"data-anv":"listview",role:"grid",onFocus:S,onBlur:q,onKeyDown:R,onMouseDown:D,"aria-activedescendant":z,tabIndex:0,...K,children:J})})};function he(){const l=s.useContext(G);if(l==null)throw new Error("useListView must be wrapped in <ListView />");return l}X.displayName="ListView";const ve=Object.assign(s.forwardRef(X),{Option:Y,OptionCell:Z});exports.Ae=ve;exports.Y=Y;exports.Z=Z;exports.f=F;exports.re=U;exports.t=V;
2
+ //# sourceMappingURL=ListView-88e49b19.cjs.map