@servicetitan/anvil2 2.2.0 → 2.4.0

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 (243) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/{Alert-DXoEusod.js → Alert-D9mBPs6z.js} +2 -2
  3. package/dist/{Alert-DXoEusod.js.map → Alert-D9mBPs6z.js.map} +1 -1
  4. package/dist/Alert.js +1 -1
  5. package/dist/{Announcement-SAypScAu.js → Announcement-B34cD6BC.js} +2 -2
  6. package/dist/{Announcement-SAypScAu.js.map → Announcement-B34cD6BC.js.map} +1 -1
  7. package/dist/Announcement.js +1 -1
  8. package/dist/{Button-l7pTJdPc.js → Button-DrNDkO2f.js} +2 -2
  9. package/dist/{Button-l7pTJdPc.js.map → Button-DrNDkO2f.js.map} +1 -1
  10. package/dist/Button.css +50 -50
  11. package/dist/Button.js +1 -1
  12. package/dist/Button.module-DwCq9XU0.js +26 -0
  13. package/dist/Button.module-DwCq9XU0.js.map +1 -0
  14. package/dist/{ButtonCompound-CX2kHgWe.js → ButtonCompound-D9VTKcL4.js} +2 -2
  15. package/dist/{ButtonCompound-CX2kHgWe.js.map → ButtonCompound-D9VTKcL4.js.map} +1 -1
  16. package/dist/ButtonCompound.js +1 -1
  17. package/dist/{ButtonLink-CRlyK750.js → ButtonLink-DDtrmbVM.js} +3 -2
  18. package/dist/ButtonLink-DDtrmbVM.js.map +1 -0
  19. package/dist/ButtonLink.js +1 -1
  20. package/dist/{ButtonToggle-BOVP_jEN.js → ButtonToggle-DrFewgOG.js} +3 -3
  21. package/dist/{ButtonToggle-BOVP_jEN.js.map → ButtonToggle-DrFewgOG.js.map} +1 -1
  22. package/dist/ButtonToggle.js +1 -1
  23. package/dist/{Calendar-oNlBgZKB.js → Calendar-CkgpKD7Q.js} +2 -2
  24. package/dist/{Calendar-oNlBgZKB.js.map → Calendar-CkgpKD7Q.js.map} +1 -1
  25. package/dist/{Calendar-D0CczOpQ.js → Calendar-CtkL4zYU.js} +3 -3
  26. package/dist/{Calendar-D0CczOpQ.js.map → Calendar-CtkL4zYU.js.map} +1 -1
  27. package/dist/Calendar.js +2 -2
  28. package/dist/{Checkbox-DuzAqrE7.js → Checkbox-CFgjreAl.js} +2 -2
  29. package/dist/{Checkbox-DuzAqrE7.js.map → Checkbox-CFgjreAl.js.map} +1 -1
  30. package/dist/{Checkbox-DIY-6agd.js → Checkbox-CxjZpzPp.js} +3 -3
  31. package/dist/{Checkbox-DIY-6agd.js.map → Checkbox-CxjZpzPp.js.map} +1 -1
  32. package/dist/Checkbox.js +1 -1
  33. package/dist/{Combobox-CSGn20KQ.js → Combobox-Drqb3GVU.js} +4 -4
  34. package/dist/{Combobox-CSGn20KQ.js.map → Combobox-Drqb3GVU.js.map} +1 -1
  35. package/dist/Combobox.js +1 -1
  36. package/dist/{DataTable-D30sE1Xt.js → DataTable-BLuJ4FtH.js} +311 -51
  37. package/dist/DataTable-BLuJ4FtH.js.map +1 -0
  38. package/dist/DataTable.css +9 -5
  39. package/dist/{DateFieldRange-DBOiqaML.js → DateFieldRange-CvlOeE4v.js} +4 -4
  40. package/dist/{DateFieldRange-DBOiqaML.js.map → DateFieldRange-CvlOeE4v.js.map} +1 -1
  41. package/dist/DateFieldRange.js +1 -1
  42. package/dist/{DateFieldSingle-C4hU55MP.js → DateFieldSingle-9UHxIxIA.js} +4 -4
  43. package/dist/{DateFieldSingle-C4hU55MP.js.map → DateFieldSingle-9UHxIxIA.js.map} +1 -1
  44. package/dist/DateFieldSingle.js +1 -1
  45. package/dist/{DateFieldYearless-BXkUiHIR.js → DateFieldYearless-HNydELvO.js} +4 -4
  46. package/dist/{DateFieldYearless-BXkUiHIR.js.map → DateFieldYearless-HNydELvO.js.map} +1 -1
  47. package/dist/DateFieldYearless.js +1 -1
  48. package/dist/{DateFieldYearlessRange-CGffFnVT.js → DateFieldYearlessRange-COb8v2CG.js} +4 -4
  49. package/dist/{DateFieldYearlessRange-CGffFnVT.js.map → DateFieldYearlessRange-COb8v2CG.js.map} +1 -1
  50. package/dist/DateFieldYearlessRange.js +1 -1
  51. package/dist/{DaysOfTheWeek-DJEDopC9.js → DaysOfTheWeek-D-WPj18i.js} +3 -3
  52. package/dist/{DaysOfTheWeek-DJEDopC9.js.map → DaysOfTheWeek-D-WPj18i.js.map} +1 -1
  53. package/dist/DaysOfTheWeek.js +1 -1
  54. package/dist/{Dialog-BbsZMnCA.js → Dialog-DEAR058v.js} +3 -3
  55. package/dist/{Dialog-BbsZMnCA.js.map → Dialog-DEAR058v.js.map} +1 -1
  56. package/dist/Dialog.js +1 -1
  57. package/dist/{DialogCancelButton-GuN5lgR-.js → DialogCancelButton-BfI9K4a4.js} +2 -2
  58. package/dist/{DialogCancelButton-GuN5lgR-.js.map → DialogCancelButton-BfI9K4a4.js.map} +1 -1
  59. package/dist/Dnd.js +1 -1
  60. package/dist/DndSort.js +2 -2
  61. package/dist/{Drawer-Dhq76ot3.js → Drawer-CnMskBQl.js} +3 -3
  62. package/dist/{Drawer-Dhq76ot3.js.map → Drawer-CnMskBQl.js.map} +1 -1
  63. package/dist/Drawer.js +1 -1
  64. package/dist/DrillDown.js +1 -1
  65. package/dist/{EditCard-DAiE-Hsc.js → EditCard-CH-JE4ba.js} +2 -2
  66. package/dist/{EditCard-DAiE-Hsc.js.map → EditCard-CH-JE4ba.js.map} +1 -1
  67. package/dist/EditCard.js +1 -1
  68. package/dist/{FieldDialog-CAuhkCZY.js → FieldDialog-C5mwMjrr.js} +120 -35
  69. package/dist/FieldDialog-C5mwMjrr.js.map +1 -0
  70. package/dist/FieldMessage-OeP_xSUE.js +132 -0
  71. package/dist/FieldMessage-OeP_xSUE.js.map +1 -0
  72. package/dist/FieldMessage.js +1 -1
  73. package/dist/{Helper-PNGm_U2X.js → Helper-B2UrgJvr.js} +2 -2
  74. package/dist/{Helper-PNGm_U2X.js.map → Helper-B2UrgJvr.js.map} +1 -1
  75. package/dist/{InputMask-Ds0W2fKy.js → InputMask-B7ZnJoR5.js} +2 -2
  76. package/dist/{InputMask-Ds0W2fKy.js.map → InputMask-B7ZnJoR5.js.map} +1 -1
  77. package/dist/InputMask.js +1 -1
  78. package/dist/{ListView-MMmJDM--.js → ListView-CN8zu-cq.js} +2 -2
  79. package/dist/{ListView-MMmJDM--.js.map → ListView-CN8zu-cq.js.map} +1 -1
  80. package/dist/ListView.js +1 -1
  81. package/dist/{Menu-3LIfRdTk.js → Menu-CpRnsr0v.js} +2 -2
  82. package/dist/{Menu-3LIfRdTk.js.map → Menu-CpRnsr0v.js.map} +1 -1
  83. package/dist/Menu.js +1 -1
  84. package/dist/MultiSelectField.js +1 -1
  85. package/dist/{MultiSelectFieldSync-Bey99LzJ.js → MultiSelectFieldSync-BnPzYM72.js} +876 -255
  86. package/dist/MultiSelectFieldSync-BnPzYM72.js.map +1 -0
  87. package/dist/{NumberField-CDkEUfXW.js → NumberField-ecubQsaf.js} +4 -4
  88. package/dist/{NumberField-CDkEUfXW.js.map → NumberField-ecubQsaf.js.map} +1 -1
  89. package/dist/NumberField.js +1 -1
  90. package/dist/{Page-BVxybI-j.js → Page-qOkG6psI.js} +7 -7
  91. package/dist/{Page-BVxybI-j.js.map → Page-qOkG6psI.js.map} +1 -1
  92. package/dist/Page.js +1 -1
  93. package/dist/{Pagination-DIatYUXX.js → Pagination-BuiyhZlJ.js} +14 -7
  94. package/dist/Pagination-BuiyhZlJ.js.map +1 -0
  95. package/dist/Pagination.js +1 -1
  96. package/dist/{Popover-4C5IVk8T.js → Popover-CYWYCj7l.js} +2 -2
  97. package/dist/{Popover-4C5IVk8T.js.map → Popover-CYWYCj7l.js.map} +1 -1
  98. package/dist/Popover.js +1 -1
  99. package/dist/{ProgressBar-BGwp-qnf.js → ProgressBar-CBhVZIzK.js} +2 -2
  100. package/dist/{ProgressBar-BGwp-qnf.js.map → ProgressBar-CBhVZIzK.js.map} +1 -1
  101. package/dist/ProgressBar.js +1 -1
  102. package/dist/{Radio-D7hNws2b.js → Radio-BMFwnzyz.js} +2 -2
  103. package/dist/{Radio-D7hNws2b.js.map → Radio-BMFwnzyz.js.map} +1 -1
  104. package/dist/{Radio-BRcpSu-d.js → Radio-DtYoRq3m.js} +3 -3
  105. package/dist/{Radio-BRcpSu-d.js.map → Radio-DtYoRq3m.js.map} +1 -1
  106. package/dist/Radio.js +1 -1
  107. package/dist/{SearchField-CoeaOip5.js → SearchField-CtdtcrVV.js} +12 -4
  108. package/dist/SearchField-CtdtcrVV.js.map +1 -0
  109. package/dist/SearchField.js +1 -1
  110. package/dist/{SelectCard-Bag44PmE.js → SelectCard-yWBNnm7t.js} +32 -8
  111. package/dist/SelectCard-yWBNnm7t.js.map +1 -0
  112. package/dist/SelectCard.js +1 -1
  113. package/dist/SelectField.js +1 -1
  114. package/dist/SelectFieldSync-DCrafdbx.js +1248 -0
  115. package/dist/SelectFieldSync-DCrafdbx.js.map +1 -0
  116. package/dist/{SelectTrigger-DgsvUfyl.js → SelectTrigger-Cs5CGc4D.js} +2 -2
  117. package/dist/{SelectTrigger-DgsvUfyl.js.map → SelectTrigger-Cs5CGc4D.js.map} +1 -1
  118. package/dist/SelectTrigger.js +1 -1
  119. package/dist/{SelectTriggerBase-OxfNqdIq.js → SelectTriggerBase-Cs827tDp.js} +3 -3
  120. package/dist/{SelectTriggerBase-OxfNqdIq.js.map → SelectTriggerBase-Cs827tDp.js.map} +1 -1
  121. package/dist/{Stepper-D8lkCP8Y.js → Stepper-CzVKDg-N.js} +2 -2
  122. package/dist/{Stepper-D8lkCP8Y.js.map → Stepper-CzVKDg-N.js.map} +1 -1
  123. package/dist/Stepper.js +1 -1
  124. package/dist/{Switch-D0zwZCg4.js → Switch-CEmjmSiL.js} +2 -2
  125. package/dist/{Switch-D0zwZCg4.js.map → Switch-CEmjmSiL.js.map} +1 -1
  126. package/dist/Switch.js +1 -1
  127. package/dist/{Tab-CeXt6A_D.js → Tab-DXivEqur.js} +47 -6
  128. package/dist/Tab-DXivEqur.js.map +1 -0
  129. package/dist/Tab.js +1 -1
  130. package/dist/Table.js +1 -1
  131. package/dist/{TextField-Dfzn2HeL.js → TextField-D9VWORek.js} +2 -2
  132. package/dist/{TextField-Dfzn2HeL.js.map → TextField-D9VWORek.js.map} +1 -1
  133. package/dist/{TextField-BycenT6H.js → TextField-atI4M79b.js} +3 -3
  134. package/dist/{TextField-BycenT6H.js.map → TextField-atI4M79b.js.map} +1 -1
  135. package/dist/TextField.css +29 -25
  136. package/dist/TextField.js +1 -1
  137. package/dist/TextField.module-BP-hDP5m.js +22 -0
  138. package/dist/TextField.module-BP-hDP5m.js.map +1 -0
  139. package/dist/{Textarea-BwbwJP6z.js → Textarea-D-kPIsIN.js} +2 -2
  140. package/dist/{Textarea-BwbwJP6z.js.map → Textarea-D-kPIsIN.js.map} +1 -1
  141. package/dist/Textarea.js +1 -1
  142. package/dist/{TimeField-B0WSzSfJ.js → TimeField-DREFzFkw.js} +3 -3
  143. package/dist/{TimeField-B0WSzSfJ.js.map → TimeField-DREFzFkw.js.map} +1 -1
  144. package/dist/TimeField.js +1 -1
  145. package/dist/Toast.js +2 -2
  146. package/dist/{Toaster-9Q_yaKGu.js → Toaster-B652KIzq.js} +4 -4
  147. package/dist/{Toaster-9Q_yaKGu.js.map → Toaster-B652KIzq.js.map} +1 -1
  148. package/dist/{Toaster-DHo8dnWH.js → Toaster-Bisc1mlh.js} +2 -2
  149. package/dist/{Toaster-DHo8dnWH.js.map → Toaster-Bisc1mlh.js.map} +1 -1
  150. package/dist/{Toolbar-CVOenuCF.js → Toolbar-jfZ-CupZ.js} +77 -63
  151. package/dist/Toolbar-jfZ-CupZ.js.map +1 -0
  152. package/dist/Toolbar.css +37 -55
  153. package/dist/Toolbar.js +1 -1
  154. package/dist/{YearlessDateInputWithPicker-ztozRk-X.js → YearlessDateInputWithPicker-mW5KykHZ.js} +3 -3
  155. package/dist/{YearlessDateInputWithPicker-ztozRk-X.js.map → YearlessDateInputWithPicker-mW5KykHZ.js.map} +1 -1
  156. package/dist/beta/components/MultiSelectField/MultiSelectField.d.ts +1 -10
  157. package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldComboboxMode.d.ts +5 -0
  158. package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldInput.d.ts +0 -2
  159. package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldList.d.ts +3 -7
  160. package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldSelectMode.d.ts +6 -0
  161. package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldTrigger.d.ts +30 -0
  162. package/dist/beta/components/MultiSelectField/internal/types.d.ts +67 -0
  163. package/dist/beta/components/MultiSelectField/internal/useChipLayout.d.ts +19 -0
  164. package/dist/beta/components/MultiSelectField/internal/useComboMultiple.d.ts +1 -2
  165. package/dist/beta/components/MultiSelectField/internal/useSelectModeMultiple.d.ts +40 -0
  166. package/dist/beta/components/MultiSelectField/internal/useToggleSelection.d.ts +21 -0
  167. package/dist/beta/components/MultiSelectField/types.d.ts +7 -0
  168. package/dist/beta/components/SelectField/internal/FieldDialog/FieldDialog.d.ts +1 -1
  169. package/dist/beta/components/SelectField/internal/FieldListBase.d.ts +3 -4
  170. package/dist/beta/components/SelectField/internal/SelectFieldComboboxMode.d.ts +6 -0
  171. package/dist/beta/components/SelectField/internal/SelectFieldInput.d.ts +0 -2
  172. package/dist/beta/components/SelectField/internal/SelectFieldLabel.d.ts +4 -3
  173. package/dist/beta/components/SelectField/internal/SelectFieldList.d.ts +3 -7
  174. package/dist/beta/components/SelectField/internal/SelectFieldListItem.d.ts +2 -4
  175. package/dist/beta/components/SelectField/internal/SelectFieldSelectMode.d.ts +6 -0
  176. package/dist/beta/components/SelectField/internal/SelectFieldTrigger.d.ts +27 -0
  177. package/dist/beta/components/SelectField/internal/buildDownshiftItems.d.ts +22 -0
  178. package/dist/beta/components/SelectField/internal/types.d.ts +57 -0
  179. package/dist/beta/components/SelectField/internal/useCombo.d.ts +1 -5
  180. package/dist/beta/components/SelectField/internal/useProcessedOptions.d.ts +19 -0
  181. package/dist/beta/components/SelectField/internal/useSelectMode.d.ts +34 -0
  182. package/dist/beta/components/SelectField/types.d.ts +7 -0
  183. package/dist/beta/components/Table/DataTable/DataTable.d.ts +21 -2
  184. package/dist/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableBooleanCell.d.ts +7 -0
  185. package/dist/beta/components/Table/DataTable/internal/util/getTanStackColumnDef.d.ts +4 -0
  186. package/dist/beta/components/Table/DataTable/types.d.ts +20 -0
  187. package/dist/beta/components/Table/createColumnHelper.d.ts +18 -7
  188. package/dist/beta/components/Table/types.d.ts +44 -3
  189. package/dist/beta/components/Toolbar/Toolbar.d.ts +17 -7
  190. package/dist/beta/components/Toolbar/ToolbarButton.d.ts +0 -1
  191. package/dist/beta/components/Toolbar/ToolbarButtonLink.d.ts +0 -1
  192. package/dist/beta/components/Toolbar/ToolbarButtonToggle.d.ts +0 -1
  193. package/dist/beta/components/Toolbar/ToolbarSearchField.d.ts +2 -3
  194. package/dist/beta/components/Toolbar/ToolbarSelect.d.ts +0 -1
  195. package/dist/beta/components/Toolbar/internal/{ToolbarOverflowContext.d.ts → ToolbarContext.d.ts} +14 -5
  196. package/dist/beta/components/Toolbar/internal/utils/test.d.ts +5 -3
  197. package/dist/beta/components/Toolbar/types.d.ts +5 -1
  198. package/dist/beta.js +7 -7
  199. package/dist/components/ButtonLink/ButtonLink.d.ts +3 -3
  200. package/dist/components/Pagination/Pagination.d.ts +3 -0
  201. package/dist/components/Pagination/internal/PaginationItemsPerPageMenu.d.ts +5 -0
  202. package/dist/components/SearchField/SearchField.d.ts +8 -26
  203. package/dist/components/SearchField/internal/SearchField.d.ts +73 -0
  204. package/dist/components/Tab/Tab.d.ts +41 -2
  205. package/dist/components/Tab/internal/TabContext.d.ts +1 -1
  206. package/dist/components/Toolbar/Toolbar.d.ts +11 -5
  207. package/dist/components/Toolbar/ToolbarButton.d.ts +0 -1
  208. package/dist/components/Toolbar/ToolbarButtonLink.d.ts +0 -1
  209. package/dist/components/Toolbar/ToolbarButtonToggle.d.ts +0 -1
  210. package/dist/components/Toolbar/ToolbarSelect.d.ts +0 -1
  211. package/dist/components/Toolbar/internal/{ToolbarOverflowContext.d.ts → ToolbarContext.d.ts} +14 -5
  212. package/dist/components/Toolbar/internal/utils/test.d.ts +5 -3
  213. package/dist/components/Toolbar/types.d.ts +5 -1
  214. package/dist/{index-DFvIVS57.js → index-ClUtwV8V.js} +2 -2
  215. package/dist/{index-DFvIVS57.js.map → index-ClUtwV8V.js.map} +1 -1
  216. package/dist/index.js +81 -70
  217. package/dist/index.js.map +1 -1
  218. package/dist/index2.css +17 -23
  219. package/dist/internal/components/ManualTestLayout/ManualTestLayout.d.ts +16 -0
  220. package/dist/internal/components/ManualTestLayout/index.d.ts +1 -0
  221. package/dist/internal/components/index.d.ts +1 -0
  222. package/dist/{match-sorter.esm-B3vwg1-X.js → match-sorter.esm-adzV1NDp.js} +2 -2
  223. package/dist/{match-sorter.esm-B3vwg1-X.js.map → match-sorter.esm-adzV1NDp.js.map} +1 -1
  224. package/dist/{useDrilldown-jbU4Cs5l.js → useDrilldown-hUxMOdnz.js} +2 -2
  225. package/dist/{useDrilldown-jbU4Cs5l.js.map → useDrilldown-hUxMOdnz.js.map} +1 -1
  226. package/package.json +5 -4
  227. package/dist/Button.module-Ck7VrMqw.js +0 -26
  228. package/dist/Button.module-Ck7VrMqw.js.map +0 -1
  229. package/dist/ButtonLink-CRlyK750.js.map +0 -1
  230. package/dist/DataTable-D30sE1Xt.js.map +0 -1
  231. package/dist/FieldDialog-CAuhkCZY.js.map +0 -1
  232. package/dist/FieldMessage-DS0COrjp.js +0 -132
  233. package/dist/FieldMessage-DS0COrjp.js.map +0 -1
  234. package/dist/MultiSelectFieldSync-Bey99LzJ.js.map +0 -1
  235. package/dist/Pagination-DIatYUXX.js.map +0 -1
  236. package/dist/SearchField-CoeaOip5.js.map +0 -1
  237. package/dist/SelectCard-Bag44PmE.js.map +0 -1
  238. package/dist/SelectFieldSync-CigqXq3T.js +0 -763
  239. package/dist/SelectFieldSync-CigqXq3T.js.map +0 -1
  240. package/dist/Tab-CeXt6A_D.js.map +0 -1
  241. package/dist/TextField.module-pD1felN8.js +0 -20
  242. package/dist/TextField.module-pD1felN8.js.map +0 -1
  243. package/dist/Toolbar-CVOenuCF.js.map +0 -1
package/dist/Combobox.js CHANGED
@@ -1,3 +1,3 @@
1
- export { C as Combobox, a as ComboboxElement, c as ComboboxList, b as ComboboxSelect, C as default } from './Combobox-CSGn20KQ.js';
1
+ export { C as Combobox, a as ComboboxElement, c as ComboboxList, b as ComboboxSelect, C as default } from './Combobox-Drqb3GVU.js';
2
2
  export { u as useInfiniteCombobox } from './useInfiniteCombobox-WcRgC9p6.js';
3
3
  //# sourceMappingURL=Combobox.js.map
@@ -6,26 +6,28 @@ import { useRef, useState, useLayoutEffect, createContext, useContext, useCallba
6
6
  import { c as cx } from './index-SvGbrGuT.js';
7
7
  import { D as DateTime } from './luxon-wpz4A-OQ.js';
8
8
  import { a as warnOnce } from './utils-pudAMGnO.js';
9
- import { C as Checkbox } from './Checkbox-DuzAqrE7.js';
10
- import { B as Button } from './Button-l7pTJdPc.js';
9
+ import { C as Checkbox } from './Checkbox-CFgjreAl.js';
10
+ import { B as Button } from './Button-DrNDkO2f.js';
11
11
  import { S as SvgChevronRight } from './chevron_right-BdpsxX7x.js';
12
12
  import { S as SvgEdit } from './edit-DQOiktcu.js';
13
13
  import { I as Icon } from './Icon-Bcil6aBo.js';
14
14
  import { S as SrOnly } from './SrOnly-CrdBTl6E.js';
15
15
  import { u as useNumberField } from './useNumberField-eMyk7MB8.js';
16
16
  import { u as useMergeRefs, m as mergeRefs } from './useMergeRefs-Dfmtq9cI.js';
17
- import { M as Menu } from './Menu-3LIfRdTk.js';
18
- import { P as Popover } from './Popover-4C5IVk8T.js';
19
- import { S as SearchField } from './SearchField-CoeaOip5.js';
20
- import { L as ListView } from './ListView-MMmJDM--.js';
17
+ import { M as Menu } from './Menu-CpRnsr0v.js';
18
+ import { P as Popover } from './Popover-CYWYCj7l.js';
19
+ import { S as SearchField } from './SearchField-CtdtcrVV.js';
20
+ import { L as ListView } from './ListView-CN8zu-cq.js';
21
21
  import { S as SvgError } from './error-DR_wWdYY.js';
22
22
  import { T as Tooltip } from './Tooltip-Bt62hC5J.js';
23
23
  import { flushSync } from 'react-dom';
24
24
  import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-loxbyklF.js';
25
25
  import './anvil-fonts.css';import './DataTable.css';/* empty css */
26
- import { P as Pagination } from './Pagination-DIatYUXX.js';
26
+ import { P as Pagination } from './Pagination-BuiyhZlJ.js';
27
+ import { T as ThemeProviderContext } from './ThemeProviderContext-l52GohYT.js';
27
28
  import { S as Spinner } from './Spinner-CpEm3Lud.js';
28
29
  import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
30
+ import { u as usePrefersColorScheme } from './usePrefersColorScheme-_hT7dK7_.js';
29
31
 
30
32
  const booleanFormatter = (value, { trueLabel = "True", falseLabel = "False" } = {}) => {
31
33
  if (value == null) {
@@ -4161,34 +4163,19 @@ function DataTableEditableTextCellInner(props, ref) {
4161
4163
  const columnId = getColumnId(cell);
4162
4164
  const cellValue = getCellValue(cell);
4163
4165
  const [initialValue, isValidValueType] = useMemo(() => {
4164
- let value;
4165
- let isValid = true;
4166
4166
  if (cellValue === void 0 || cellValue === null) {
4167
- value = "";
4168
- isValid = true;
4169
- return [value, isValid];
4170
- }
4171
- switch (typeof cellValue) {
4172
- case "string":
4173
- value = cellValue;
4174
- break;
4175
- case "boolean":
4176
- value = String(cellValue);
4177
- break;
4178
- default:
4179
- value = "";
4180
- isValid = false;
4181
- break;
4167
+ return ["", true];
4182
4168
  }
4183
- if (!isValid) {
4184
- logWarningForInvalidCellValueType({
4185
- columnId: String(columnId),
4186
- editMode: "text",
4187
- expectedType: "string",
4188
- receivedType: Array.isArray(cellValue) ? "array" : typeof cellValue
4189
- });
4169
+ if (typeof cellValue === "string") {
4170
+ return [cellValue, true];
4190
4171
  }
4191
- return [value, isValid];
4172
+ logWarningForInvalidCellValueType({
4173
+ columnId: String(columnId),
4174
+ editMode: "text",
4175
+ expectedType: "string",
4176
+ receivedType: Array.isArray(cellValue) ? "array" : typeof cellValue
4177
+ });
4178
+ return ["", false];
4192
4179
  }, [cellValue, columnId]);
4193
4180
  const [draftValue, setDraftValue] = useState(initialValue);
4194
4181
  const [tabIndex, setTabIndex] = useState(-1);
@@ -5020,6 +5007,231 @@ const DataTableEditableMultiselectCell = Object.assign(
5020
5007
  { displayName: "DataTableEditableMultiselectCell" }
5021
5008
  );
5022
5009
 
5010
+ function DataTableEditableBooleanCellInner(props, ref) {
5011
+ const { cell, cellProps, cellPosition, children } = props;
5012
+ const { onKeyDown: onCellKeyDown } = cellProps;
5013
+ const [isEditing, setIsEditing] = useState(false);
5014
+ const columnId = getColumnId(cell);
5015
+ const cellValue = getCellValue(cell);
5016
+ const [initialValue, isValidValueType] = useMemo(() => {
5017
+ let value;
5018
+ let isValid = true;
5019
+ if (cellValue === void 0 || cellValue === null) {
5020
+ value = null;
5021
+ isValid = true;
5022
+ return [value, isValid];
5023
+ }
5024
+ if (typeof cellValue === "boolean") {
5025
+ value = cellValue;
5026
+ } else {
5027
+ value = null;
5028
+ isValid = false;
5029
+ }
5030
+ if (!isValid) {
5031
+ logWarningForInvalidCellValueType({
5032
+ columnId: String(columnId),
5033
+ editMode: "boolean",
5034
+ expectedType: "boolean",
5035
+ receivedType: Array.isArray(cellValue) ? "array" : typeof cellValue
5036
+ });
5037
+ }
5038
+ return [value, isValid];
5039
+ }, [cellValue, columnId]);
5040
+ const options = useMemo(() => {
5041
+ const editConfig = cell.column.columnDef.meta?.editConfig;
5042
+ const config = editConfig?.mode === "boolean" ? editConfig : {
5043
+ trueLabel: void 0,
5044
+ falseLabel: void 0,
5045
+ allowNull: false,
5046
+ nullLabel: void 0
5047
+ };
5048
+ const typeConfig = cell.column.columnDef.meta?.columnDef?.type;
5049
+ const typeOptions = typeof typeConfig === "object" && typeConfig.type === "boolean" ? typeConfig.options : void 0;
5050
+ const items = [
5051
+ {
5052
+ value: true,
5053
+ label: config.trueLabel ?? typeOptions?.trueLabel ?? "True"
5054
+ },
5055
+ {
5056
+ value: false,
5057
+ label: config.falseLabel ?? typeOptions?.falseLabel ?? "False"
5058
+ }
5059
+ ];
5060
+ if (config.allowNull) {
5061
+ items.push({ value: null, label: config.nullLabel ?? "Unset" });
5062
+ }
5063
+ return items;
5064
+ }, [
5065
+ cell.column.columnDef.meta?.editConfig,
5066
+ cell.column.columnDef.meta?.columnDef?.type
5067
+ ]);
5068
+ const [tabIndex, setTabIndex] = useState(-1);
5069
+ const { moveFocusToCell } = useDTFocusDispatchContext();
5070
+ const cellRef = useRef(null);
5071
+ const rowId = cell.row.id;
5072
+ const menuElement = useRef(null);
5073
+ useImperativeHandle(ref, () => ({
5074
+ invoke: beginEditing,
5075
+ focus: () => {
5076
+ cellRef.current?.focus();
5077
+ setTabIndex(0);
5078
+ }
5079
+ }));
5080
+ const beginEditing = useCallback(() => {
5081
+ setIsEditing(true);
5082
+ }, [setIsEditing]);
5083
+ const stopEditing = useCallback(() => {
5084
+ setIsEditing(false);
5085
+ }, [setIsEditing]);
5086
+ const onChange = getCellOnChange(cell);
5087
+ const commitValue = useCallback(
5088
+ (value) => {
5089
+ if (value !== initialValue) {
5090
+ onChange?.(value, rowId);
5091
+ }
5092
+ stopEditing();
5093
+ },
5094
+ [rowId, onChange, initialValue, stopEditing]
5095
+ );
5096
+ const cellClasses = cx(
5097
+ styles$a["data-table-body-cell-editable"],
5098
+ cellProps.className,
5099
+ { [styles$9["data-table-body-cell-editing"]]: isEditing }
5100
+ );
5101
+ const handleCellKeyDown = useCallback(
5102
+ (event, handleMenuKeydown) => {
5103
+ if (isEditing) {
5104
+ if (event.key === "Escape" || event.key === "F2") {
5105
+ stopEditing();
5106
+ return;
5107
+ }
5108
+ handleMenuKeydown?.(event);
5109
+ return;
5110
+ }
5111
+ onCellKeyDown?.(event);
5112
+ },
5113
+ [onCellKeyDown, isEditing, stopEditing]
5114
+ );
5115
+ const handleOutsidePress = useCallback(() => {
5116
+ stopEditing();
5117
+ setTabIndex(-1);
5118
+ }, [stopEditing]);
5119
+ const handleCellMouseDown = useCallback(() => {
5120
+ if (isEditing) {
5121
+ stopEditing();
5122
+ return;
5123
+ }
5124
+ moveFocusToCell(cellPosition);
5125
+ beginEditing();
5126
+ }, [beginEditing, cellPosition, moveFocusToCell, isEditing, stopEditing]);
5127
+ const handleCellBlur = useCallback(
5128
+ (e) => {
5129
+ if (menuElement.current?.contains(e.relatedTarget)) {
5130
+ return;
5131
+ }
5132
+ setTabIndex(-1);
5133
+ stopEditing();
5134
+ },
5135
+ [setTabIndex, menuElement, stopEditing]
5136
+ );
5137
+ const handleCellFocus = useCallback(
5138
+ (event) => {
5139
+ if (event.target !== cellRef.current) {
5140
+ return;
5141
+ }
5142
+ event.preventDefault();
5143
+ setTabIndex(0);
5144
+ },
5145
+ [setTabIndex]
5146
+ );
5147
+ const handleMenuItemClick = useCallback(
5148
+ (value) => {
5149
+ commitValue(value);
5150
+ },
5151
+ [commitValue]
5152
+ );
5153
+ const handleMenuItemKeyDown = useCallback(
5154
+ (event) => {
5155
+ if (event.key === "Escape" || event.key === "F2") {
5156
+ cellRef.current?.focus();
5157
+ stopEditing();
5158
+ }
5159
+ },
5160
+ [stopEditing]
5161
+ );
5162
+ const cellFocusContextValue = useMemo(
5163
+ () => ({ isCellFocused: tabIndex === 0 && !isEditing }),
5164
+ [tabIndex, isEditing]
5165
+ );
5166
+ if (!isValidValueType) {
5167
+ const { cellProps: _cellProps, ...immutableCellProps } = props;
5168
+ return /* @__PURE__ */ jsx(DataTableBodyImmutableCell, { ...immutableCellProps });
5169
+ }
5170
+ return /* @__PURE__ */ jsx(
5171
+ Menu,
5172
+ {
5173
+ open: isEditing,
5174
+ onOutsidePress: handleOutsidePress,
5175
+ trigger: ({
5176
+ ref: triggerRef,
5177
+ onKeyDown: menuOnTriggerKeydown,
5178
+ ["aria-controls"]: triggerAriaControls,
5179
+ ["aria-expanded"]: triggerAriaExpanded,
5180
+ ["aria-haspopup"]: triggerAriaHaspopup,
5181
+ ["data-open"]: triggerDataOpen,
5182
+ ["data-state"]: triggerDataState
5183
+ }) => {
5184
+ menuElement.current = document.querySelector(`#${triggerAriaControls}`) || null;
5185
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
5186
+ TableBodyCell,
5187
+ {
5188
+ ref: mergeRefs([
5189
+ triggerRef,
5190
+ cellRef
5191
+ ]),
5192
+ tabIndex,
5193
+ type: "data-table",
5194
+ ...cellProps,
5195
+ className: cellClasses,
5196
+ onMouseDown: handleCellMouseDown,
5197
+ onBlur: handleCellBlur,
5198
+ onFocus: handleCellFocus,
5199
+ "data-cell-pos": formatCellPositionString(cellPosition),
5200
+ "aria-controls": triggerAriaControls,
5201
+ "aria-expanded": triggerAriaExpanded,
5202
+ "aria-haspopup": triggerAriaHaspopup,
5203
+ "data-open": triggerDataOpen,
5204
+ "data-state": triggerDataState,
5205
+ onKeyDown: (e) => handleCellKeyDown(e, menuOnTriggerKeydown),
5206
+ children: [
5207
+ /* @__PURE__ */ jsxs(CellFocusContext.Provider, { value: cellFocusContextValue, children: [
5208
+ children,
5209
+ !isEditing && /* @__PURE__ */ jsx(DataTableEditableCellEditIcon, {})
5210
+ ] }),
5211
+ /* @__PURE__ */ jsx(SrOnly, { children: isEditing ? "Press Enter or Space to select a cell value. Press Escape or F2 to cancel." : "Press Enter or F2 to edit cell value." })
5212
+ ]
5213
+ }
5214
+ ) });
5215
+ },
5216
+ children: isEditing && options.map((item) => {
5217
+ return /* @__PURE__ */ jsx(
5218
+ Menu.Item,
5219
+ {
5220
+ label: item.label,
5221
+ onClick: () => handleMenuItemClick(item.value),
5222
+ onKeyDown: handleMenuItemKeyDown
5223
+ },
5224
+ String(item.value)
5225
+ );
5226
+ })
5227
+ }
5228
+ );
5229
+ }
5230
+ const DataTableEditableBooleanCell = Object.assign(
5231
+ forwardRef(DataTableEditableBooleanCellInner),
5232
+ { displayName: "DataTableEditableBooleanCell" }
5233
+ );
5234
+
5023
5235
  function DataTableBodyMutableCell(props) {
5024
5236
  const { cell, cellPosition, children, isHovered, ...rest } = props;
5025
5237
  const editableCellRef = useRef(null);
@@ -5096,6 +5308,9 @@ function DataTableBodyMutableCell(props) {
5096
5308
  if (editMode === "multiselect") {
5097
5309
  return DataTableEditableMultiselectCell;
5098
5310
  }
5311
+ if (editMode === "boolean") {
5312
+ return DataTableEditableBooleanCell;
5313
+ }
5099
5314
  }, [editMode]);
5100
5315
  if (!EditableComponent) {
5101
5316
  return null;
@@ -5755,12 +5970,13 @@ function DataTableHeaderCellInner(props, forwardedRef) {
5755
5970
  }
5756
5971
  case " ":
5757
5972
  case "Enter": {
5758
- if (isSelectCell) {
5973
+ const isDisabled = header.column.columnDef.meta?.disableHeaderAction;
5974
+ if (isSelectCell && !isDisabled) {
5759
5975
  event.preventDefault();
5760
5976
  header.table.toggleAllRowsSelected();
5761
5977
  return;
5762
5978
  }
5763
- if (isExpandCell) {
5979
+ if (isExpandCell && !isDisabled) {
5764
5980
  event.preventDefault();
5765
5981
  header.table.toggleAllRowsExpanded();
5766
5982
  return;
@@ -6051,11 +6267,12 @@ const DataTablePagination = ({
6051
6267
  );
6052
6268
  };
6053
6269
 
6054
- const expanded = "_expanded_1r902_17";
6270
+ const expanded = "_expanded_1shcm_21";
6055
6271
  const styles = {
6056
- "container-with-pagination": "_container-with-pagination_1r902_2",
6057
- "footer-with-pagination": "_footer-with-pagination_1r902_5",
6058
- "expand-button": "_expand-button_1r902_8",
6272
+ "container-with-pagination": "_container-with-pagination_1shcm_2",
6273
+ "footer-with-pagination": "_footer-with-pagination_1shcm_5",
6274
+ "empty-state-container": "_empty-state-container_1shcm_8",
6275
+ "expand-button": "_expand-button_1shcm_12",
6059
6276
  expanded: expanded
6060
6277
  };
6061
6278
 
@@ -6371,6 +6588,8 @@ function DataTableInner(props, ref) {
6371
6588
  defaultExpandedRowIds,
6372
6589
  defaultSelectedRowIds,
6373
6590
  defaultSortedColumn,
6591
+ disableExpandAll,
6592
+ disableSelectAll,
6374
6593
  expandedRowIds,
6375
6594
  isSelectable,
6376
6595
  onSelectRow,
@@ -6379,6 +6598,7 @@ function DataTableInner(props, ref) {
6379
6598
  pagination,
6380
6599
  selectedRowIds,
6381
6600
  sortedColumn,
6601
+ emptyState,
6382
6602
  className,
6383
6603
  style,
6384
6604
  ...rest
@@ -6550,7 +6770,9 @@ function DataTableInner(props, ref) {
6550
6770
  size: 44,
6551
6771
  maxSize: 44,
6552
6772
  minSize: 44,
6773
+ meta: { disableHeaderAction: disableExpandAll },
6553
6774
  header: ({ table: table2 }) => {
6775
+ if (disableExpandAll) return null;
6554
6776
  return /* @__PURE__ */ jsx(Flex, { grow: 1, justifyContent: "center", children: /* @__PURE__ */ jsx(
6555
6777
  Button,
6556
6778
  {
@@ -6609,17 +6831,21 @@ function DataTableInner(props, ref) {
6609
6831
  size: 44,
6610
6832
  maxSize: 44,
6611
6833
  minSize: 44,
6612
- header: ({ table: table2 }) => /* @__PURE__ */ jsx(Flex, { grow: 1, justifyContent: "center", children: /* @__PURE__ */ jsx(
6613
- Checkbox,
6614
- {
6615
- tabIndex: -1,
6616
- "aria-label": table2.getIsAllRowsSelected() ? "Deselect all rows" : "Select all rows",
6617
- checked: table2.getIsAllRowsSelected(),
6618
- indeterminate: table2.getIsSomeRowsSelected(),
6619
- onChange: table2.getToggleAllRowsSelectedHandler(),
6620
- "data-cell-action": "select"
6621
- }
6622
- ) }),
6834
+ meta: { disableHeaderAction: disableSelectAll },
6835
+ header: ({ table: table2 }) => {
6836
+ if (disableSelectAll) return null;
6837
+ return /* @__PURE__ */ jsx(Flex, { grow: 1, justifyContent: "center", children: /* @__PURE__ */ jsx(
6838
+ Checkbox,
6839
+ {
6840
+ tabIndex: -1,
6841
+ "aria-label": table2.getIsAllRowsSelected() ? "Deselect all rows" : "Select all rows",
6842
+ checked: table2.getIsAllRowsSelected(),
6843
+ indeterminate: table2.getIsSomeRowsSelected(),
6844
+ onChange: table2.getToggleAllRowsSelectedHandler(),
6845
+ "data-cell-action": "select"
6846
+ }
6847
+ ) });
6848
+ },
6623
6849
  cell: ({ row }) => {
6624
6850
  if (row.getParentRow()?.getCanExpand() && isSelectable) {
6625
6851
  return null;
@@ -6640,7 +6866,15 @@ function DataTableInner(props, ref) {
6640
6866
  });
6641
6867
  }
6642
6868
  return tableColumns;
6643
- }, [columnsProp, hasRowErrors, hasSubComponent, isExpandable, isSelectable]);
6869
+ }, [
6870
+ columnsProp,
6871
+ disableExpandAll,
6872
+ disableSelectAll,
6873
+ hasRowErrors,
6874
+ hasSubComponent,
6875
+ isExpandable,
6876
+ isSelectable
6877
+ ]);
6644
6878
  const table = useReactTable({
6645
6879
  data: tableData ?? [],
6646
6880
  columns,
@@ -6708,6 +6942,16 @@ function DataTableInner(props, ref) {
6708
6942
  () => bodyRowCount + headerRowCount + footerLength,
6709
6943
  [bodyRowCount, headerRowCount, footerLength]
6710
6944
  );
6945
+ const isEmpty = !isLoading && (!tableData || tableData.length === 0);
6946
+ const { mode: themeMode } = useContext(ThemeProviderContext);
6947
+ const { mode: sysMode } = usePrefersColorScheme();
6948
+ const colorSchemeMode = themeMode ?? sysMode;
6949
+ const EmptyStateSvg = (() => {
6950
+ const svg = emptyState?.svg;
6951
+ if (!svg) return void 0;
6952
+ if (typeof svg === "function") return svg;
6953
+ return colorSchemeMode === "dark" ? svg.dark ?? svg.light : svg.light ?? svg.dark;
6954
+ })();
6711
6955
  const cssVars = useMemo(() => {
6712
6956
  const vars = {};
6713
6957
  const leafHeaders = headers.filter(
@@ -6770,6 +7014,22 @@ function DataTableInner(props, ref) {
6770
7014
  children: [
6771
7015
  /* @__PURE__ */ jsx(DataTableHeader, { table }),
6772
7016
  /* @__PURE__ */ jsx(DataTableBody, { table, hasSubRows }),
7017
+ isEmpty && emptyState && /* @__PURE__ */ jsxs(Fragment, { children: [
7018
+ /* @__PURE__ */ jsx(SrOnly, { children: "No data to display." }),
7019
+ /* @__PURE__ */ jsx("div", { className: styles["empty-state-container"], children: /* @__PURE__ */ jsxs(
7020
+ Flex,
7021
+ {
7022
+ justifyContent: "center",
7023
+ alignItems: "center",
7024
+ direction: "column",
7025
+ gap: 2,
7026
+ children: [
7027
+ EmptyStateSvg && /* @__PURE__ */ jsx(EmptyStateSvg, { "aria-hidden": "true" }),
7028
+ emptyState.content
7029
+ ]
7030
+ }
7031
+ ) })
7032
+ ] }),
6773
7033
  isLoading && /* @__PURE__ */ jsxs(Fragment, { children: [
6774
7034
  /* @__PURE__ */ jsx(SrOnly, { children: "Loading data. Please wait." }),
6775
7035
  /* @__PURE__ */ jsx(
@@ -6837,4 +7097,4 @@ function DataTableInner(props, ref) {
6837
7097
  const DataTable = forwardRef(DataTableInner);
6838
7098
 
6839
7099
  export { COLUMN_TYPE_DEFAULTS as C, DataTable as D, chipsFormatter as a, booleanFormatter as b, createColumnHelper$1 as c, currencyFormatter as d, dateFormatter as e, dateTimeFormatter as f, getColumnTypeDefaults as g, dateFormatPresets as h, timeFormatter as i, numberFormatter as n, percentFormatter as p, resolveColumnTypeConfig as r, timeFormatPresets as t, yearlessDateFormatter as y };
6840
- //# sourceMappingURL=DataTable-D30sE1Xt.js.map
7100
+ //# sourceMappingURL=DataTable-BLuJ4FtH.js.map