@servicetitan/anvil2 1.47.1 → 1.48.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 (222) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/{Alert-BoJUAPue.js → Alert-Cz_w_cw0.js} +4 -4
  3. package/dist/{Alert-BoJUAPue.js.map → Alert-Cz_w_cw0.js.map} +1 -1
  4. package/dist/Alert.js +1 -1
  5. package/dist/{Announcement-DtMAQ0Xc.js → Announcement-C1xSJkl0.js} +4 -4
  6. package/dist/{Announcement-DtMAQ0Xc.js.map → Announcement-C1xSJkl0.js.map} +1 -1
  7. package/dist/Announcement.js +1 -1
  8. package/dist/{AnvilProvider-BhQklhtR.js → AnvilProvider-DDo8ZcIA.js} +4 -4
  9. package/dist/{AnvilProvider-BhQklhtR.js.map → AnvilProvider-DDo8ZcIA.js.map} +1 -1
  10. package/dist/AnvilProvider.js +1 -1
  11. package/dist/{Avatar-C0FuFDK4.js → Avatar-Bbwk2MCy.js} +2 -2
  12. package/dist/{Avatar-C0FuFDK4.js.map → Avatar-Bbwk2MCy.js.map} +1 -1
  13. package/dist/{Avatar-BWw31pcL.js → Avatar-VQrimv28.js} +2 -2
  14. package/dist/{Avatar-BWw31pcL.js.map → Avatar-VQrimv28.js.map} +1 -1
  15. package/dist/Avatar.js +2 -2
  16. package/dist/{Badge-DniZR2GC.js → Badge-DOnID5l5.js} +2 -2
  17. package/dist/{Badge-DniZR2GC.js.map → Badge-DOnID5l5.js.map} +1 -1
  18. package/dist/Badge.js +1 -1
  19. package/dist/{Breadcrumbs-0Yx3iLZ8.js → Breadcrumbs-DKqd8VRz.js} +5 -5
  20. package/dist/{Breadcrumbs-0Yx3iLZ8.js.map → Breadcrumbs-DKqd8VRz.js.map} +1 -1
  21. package/dist/Breadcrumbs.js +1 -1
  22. package/dist/{Button-Bm-YMdkp.js → Button-DzcOa6iJ.js} +3 -3
  23. package/dist/{Button-Bm-YMdkp.js.map → Button-DzcOa6iJ.js.map} +1 -1
  24. package/dist/Button.js +1 -1
  25. package/dist/{ButtonCompound-BA95JQGP.js → ButtonCompound-Dvr3Fres.js} +2 -2
  26. package/dist/{ButtonCompound-BA95JQGP.js.map → ButtonCompound-Dvr3Fres.js.map} +1 -1
  27. package/dist/ButtonCompound.js +1 -1
  28. package/dist/{ButtonLink-BiFzqDml.js → ButtonLink-DGIRpyK6.js} +3 -3
  29. package/dist/{ButtonLink-BiFzqDml.js.map → ButtonLink-DGIRpyK6.js.map} +1 -1
  30. package/dist/ButtonLink.js +1 -1
  31. package/dist/{ButtonToggle-BO9HLpIW.js → ButtonToggle-Dv6VAm4W.js} +3 -3
  32. package/dist/{ButtonToggle-BO9HLpIW.js.map → ButtonToggle-Dv6VAm4W.js.map} +1 -1
  33. package/dist/ButtonToggle.js +1 -1
  34. package/dist/{Calendar-BE9JCFwy.js → Calendar-BWETPlKE.js} +5 -5
  35. package/dist/{Calendar-BE9JCFwy.js.map → Calendar-BWETPlKE.js.map} +1 -1
  36. package/dist/{Calendar-B3YJQo6Y.js → Calendar-Bv7N3SoB.js} +2 -2
  37. package/dist/{Calendar-B3YJQo6Y.js.map → Calendar-Bv7N3SoB.js.map} +1 -1
  38. package/dist/Calendar.js +2 -2
  39. package/dist/{Card-TyKjI6d8.js → Card-Cyoz-LaD.js} +2 -2
  40. package/dist/{Card-TyKjI6d8.js.map → Card-Cyoz-LaD.js.map} +1 -1
  41. package/dist/Card.js +1 -1
  42. package/dist/{Checkbox-DdDtsKg7.js → Checkbox-BJnt8TFk.js} +2 -2
  43. package/dist/{Checkbox-DdDtsKg7.js.map → Checkbox-BJnt8TFk.js.map} +1 -1
  44. package/dist/{Checkbox-Bib3kQcl.js → Checkbox-Bsa1FgoI.js} +5 -5
  45. package/dist/{Checkbox-Bib3kQcl.js.map → Checkbox-Bsa1FgoI.js.map} +1 -1
  46. package/dist/Checkbox.js +2 -2
  47. package/dist/{Chip-DRw9cu1_.js → Chip-BGa1Inb8.js} +4 -4
  48. package/dist/{Chip-DRw9cu1_.js.map → Chip-BGa1Inb8.js.map} +1 -1
  49. package/dist/Chip.js +1 -1
  50. package/dist/{Combobox-BWGxdcGI.js → Combobox-BfqKpX1v.js} +13 -13
  51. package/dist/{Combobox-BWGxdcGI.js.map → Combobox-BfqKpX1v.js.map} +1 -1
  52. package/dist/Combobox.js +1 -1
  53. package/dist/{DataTable-ApkEFfCX.js → DataTable-BHI2ONJ-.js} +11 -11
  54. package/dist/{DataTable-ApkEFfCX.js.map → DataTable-BHI2ONJ-.js.map} +1 -1
  55. package/dist/{DateField-ynB9Nkku.js → DateField-HeK2wOzu.js} +6 -6
  56. package/dist/{DateField-ynB9Nkku.js.map → DateField-HeK2wOzu.js.map} +1 -1
  57. package/dist/DateField.js +1 -1
  58. package/dist/{DateFieldRange-DwUXExjQ.js → DateFieldRange-GNPGcfcD.js} +6 -6
  59. package/dist/{DateFieldRange-DwUXExjQ.js.map → DateFieldRange-GNPGcfcD.js.map} +1 -1
  60. package/dist/DateFieldRange.js +1 -1
  61. package/dist/{DateFieldSingle-ipxhv1fi.js → DateFieldSingle-CvKdVIqR.js} +6 -6
  62. package/dist/{DateFieldSingle-ipxhv1fi.js.map → DateFieldSingle-CvKdVIqR.js.map} +1 -1
  63. package/dist/DateFieldSingle.js +1 -1
  64. package/dist/{DateFieldYearless-BH3Kdx-c.js → DateFieldYearless-B801SnxH.js} +2 -2
  65. package/dist/{DateFieldYearless-BH3Kdx-c.js.map → DateFieldYearless-B801SnxH.js.map} +1 -1
  66. package/dist/DateFieldYearless.js +1 -1
  67. package/dist/{DaysOfTheWeek-GHPO3u2J.js → DaysOfTheWeek-BJErLzD2.js} +6 -6
  68. package/dist/{DaysOfTheWeek-GHPO3u2J.js.map → DaysOfTheWeek-BJErLzD2.js.map} +1 -1
  69. package/dist/DaysOfTheWeek.js +1 -1
  70. package/dist/{Details-clBN4oi5.js → Details-Bg7QzlOm.js} +3 -3
  71. package/dist/{Details-clBN4oi5.js.map → Details-Bg7QzlOm.js.map} +1 -1
  72. package/dist/Details.js +1 -1
  73. package/dist/{Dialog-Drw33nrV.js → Dialog-fJClGTI6.js} +4 -4
  74. package/dist/{Dialog-Drw33nrV.js.map → Dialog-fJClGTI6.js.map} +1 -1
  75. package/dist/Dialog.js +1 -1
  76. package/dist/{Divider-Dx2AV2jM.js → Divider-DYZFKug1.js} +2 -2
  77. package/dist/{Divider-Dx2AV2jM.js.map → Divider-DYZFKug1.js.map} +1 -1
  78. package/dist/Divider.js +1 -1
  79. package/dist/Dnd.js +1 -1
  80. package/dist/DndSort.js +5 -5
  81. package/dist/{Drawer-BDShECnc.js → Drawer-DyHDRTR-.js} +4 -4
  82. package/dist/{Drawer-BDShECnc.js.map → Drawer-DyHDRTR-.js.map} +1 -1
  83. package/dist/Drawer.js +1 -1
  84. package/dist/{EditCard-1KcrWvsY.js → EditCard-LdyduHqX.js} +6 -6
  85. package/dist/{EditCard-1KcrWvsY.js.map → EditCard-LdyduHqX.js.map} +1 -1
  86. package/dist/EditCard.js +1 -1
  87. package/dist/{FieldLabel-NOjvQkOa.js → FieldLabel-DIlzcPIQ.js} +3 -3
  88. package/dist/{FieldLabel-NOjvQkOa.js.map → FieldLabel-DIlzcPIQ.js.map} +1 -1
  89. package/dist/FieldLabel.js +1 -1
  90. package/dist/{FieldMessage-D0Z4yMMm.js → FieldMessage-BbARBii0.js} +2 -2
  91. package/dist/{FieldMessage-D0Z4yMMm.js.map → FieldMessage-BbARBii0.js.map} +1 -1
  92. package/dist/FieldMessage.js +1 -1
  93. package/dist/{Flex-DdOpCJf2.js → Flex-GLF5XRJg.js} +2 -2
  94. package/dist/{Flex-DdOpCJf2.js.map → Flex-GLF5XRJg.js.map} +1 -1
  95. package/dist/Flex.js +1 -1
  96. package/dist/{Grid-M1Gq9b-a.js → Grid-BpAt2zA7.js} +2 -2
  97. package/dist/{Grid-M1Gq9b-a.js.map → Grid-BpAt2zA7.js.map} +1 -1
  98. package/dist/Grid.js +1 -1
  99. package/dist/{Helper-BTXu4PCQ.js → Helper-DHoKHqxV.js} +2 -2
  100. package/dist/{Helper-BTXu4PCQ.js.map → Helper-DHoKHqxV.js.map} +1 -1
  101. package/dist/{Icon-CB-34pME.js → Icon-TcJbUdTz.js} +2 -2
  102. package/dist/{Icon-CB-34pME.js.map → Icon-TcJbUdTz.js.map} +1 -1
  103. package/dist/Icon.js +1 -1
  104. package/dist/{InputMask-D1Uushxa.js → InputMask-BOkWmhsv.js} +2 -2
  105. package/dist/{InputMask-D1Uushxa.js.map → InputMask-BOkWmhsv.js.map} +1 -1
  106. package/dist/InputMask.js +1 -1
  107. package/dist/{Link-BYvAKMcm.js → Link-Br_AJ7Af.js} +3 -3
  108. package/dist/{Link-BYvAKMcm.js.map → Link-Br_AJ7Af.js.map} +1 -1
  109. package/dist/Link.js +1 -1
  110. package/dist/{LinkButton-DFJqMz7w.js → LinkButton-CwiVzaro.js} +2 -2
  111. package/dist/{LinkButton-DFJqMz7w.js.map → LinkButton-CwiVzaro.js.map} +1 -1
  112. package/dist/LinkButton.js +1 -1
  113. package/dist/{ListView-DG9YJ3DU.js → ListView-kfwvU4Z-.js} +3 -3
  114. package/dist/{ListView-DG9YJ3DU.js.map → ListView-kfwvU4Z-.js.map} +1 -1
  115. package/dist/ListView.js +1 -1
  116. package/dist/{Listbox-CMg3B6Nd.js → Listbox-gtZ2Ao_I.js} +5 -5
  117. package/dist/{Listbox-CMg3B6Nd.js.map → Listbox-gtZ2Ao_I.js.map} +1 -1
  118. package/dist/Listbox.js +1 -1
  119. package/dist/{LocalizationProvider-Dgx0sOZg.js → LocalizationProvider-Cqattc3O.js} +2 -2
  120. package/dist/{LocalizationProvider-Dgx0sOZg.js.map → LocalizationProvider-Cqattc3O.js.map} +1 -1
  121. package/dist/LocalizationProvider.js +1 -1
  122. package/dist/{Menu-WuNO2Rbu.js → Menu-CBbUK_sX.js} +4 -4
  123. package/dist/{Menu-WuNO2Rbu.js.map → Menu-CBbUK_sX.js.map} +1 -1
  124. package/dist/Menu.js +1 -1
  125. package/dist/{NumberField-BUo30AOa.js → NumberField-CjvsSokL.js} +6 -6
  126. package/dist/{NumberField-BUo30AOa.js.map → NumberField-CjvsSokL.js.map} +1 -1
  127. package/dist/NumberField.js +1 -1
  128. package/dist/Overflow.js +6 -4
  129. package/dist/Overflow.js.map +1 -1
  130. package/dist/{Page-BtkspWJj.js → Page-4VdFrCjy.js} +13 -13
  131. package/dist/{Page-BtkspWJj.js.map → Page-4VdFrCjy.js.map} +1 -1
  132. package/dist/Page.js +1 -1
  133. package/dist/{Pagination-D6y_imDK.js → Pagination-p734If5z.js} +6 -6
  134. package/dist/{Pagination-D6y_imDK.js.map → Pagination-p734If5z.js.map} +1 -1
  135. package/dist/Pagination.js +1 -1
  136. package/dist/{Popover-CSj2mv66.js → Popover--c9PXAVi.js} +3 -3
  137. package/dist/{Popover-CSj2mv66.js.map → Popover--c9PXAVi.js.map} +1 -1
  138. package/dist/Popover.js +1 -1
  139. package/dist/{ProgressBar-BPIta_9F.js → ProgressBar-CXMuhBQV.js} +6 -6
  140. package/dist/{ProgressBar-BPIta_9F.js.map → ProgressBar-CXMuhBQV.js.map} +1 -1
  141. package/dist/ProgressBar.js +1 -1
  142. package/dist/{Radio-0WGmwHGs.js → Radio-CLaDEpuU.js} +2 -2
  143. package/dist/{Radio-0WGmwHGs.js.map → Radio-CLaDEpuU.js.map} +1 -1
  144. package/dist/Radio.js +2 -2
  145. package/dist/{RadioGroup-BARdP9VP.js → RadioGroup-DMJqrF4q.js} +5 -5
  146. package/dist/{RadioGroup-BARdP9VP.js.map → RadioGroup-DMJqrF4q.js.map} +1 -1
  147. package/dist/{SearchField-DTdrOWbb.js → SearchField-DLqva3o3.js} +3 -3
  148. package/dist/{SearchField-DTdrOWbb.js.map → SearchField-DLqva3o3.js.map} +1 -1
  149. package/dist/SearchField.js +1 -1
  150. package/dist/{SegmentedControl-DVSlMI3w.js → SegmentedControl-1OzOQmCp.js} +2 -2
  151. package/dist/{SegmentedControl-DVSlMI3w.js.map → SegmentedControl-1OzOQmCp.js.map} +1 -1
  152. package/dist/SegmentedControl.js +1 -1
  153. package/dist/{SelectCard-Db-CNnMe.js → SelectCard-BORQF-zC.js} +4 -4
  154. package/dist/{SelectCard-Db-CNnMe.js.map → SelectCard-BORQF-zC.js.map} +1 -1
  155. package/dist/SelectCard.js +1 -1
  156. package/dist/{SelectTrigger-CcCiccEp.js → SelectTrigger-BQNqyG3M.js} +5 -5
  157. package/dist/{SelectTrigger-CcCiccEp.js.map → SelectTrigger-BQNqyG3M.js.map} +1 -1
  158. package/dist/SelectTrigger.js +1 -1
  159. package/dist/{SelectTriggerBase-DtLWrsm7.js → SelectTriggerBase-B-fxog4U.js} +6 -6
  160. package/dist/{SelectTriggerBase-DtLWrsm7.js.map → SelectTriggerBase-B-fxog4U.js.map} +1 -1
  161. package/dist/{SideNav-B-rd3esD.js → SideNav-COiPAIph.js} +3 -3
  162. package/dist/{SideNav-B-rd3esD.js.map → SideNav-COiPAIph.js.map} +1 -1
  163. package/dist/SideNav.js +1 -1
  164. package/dist/Skeleton.js +1 -1
  165. package/dist/{Stepper-CrqRl7BV.js → Stepper-xcgOQzru.js} +4 -4
  166. package/dist/{Stepper-CrqRl7BV.js.map → Stepper-xcgOQzru.js.map} +1 -1
  167. package/dist/Stepper.js +1 -1
  168. package/dist/{Switch-Dt8kun__.js → Switch-mhyHJeex.js} +5 -5
  169. package/dist/{Switch-Dt8kun__.js.map → Switch-mhyHJeex.js.map} +1 -1
  170. package/dist/Switch.js +1 -1
  171. package/dist/{Tab-D8fMPPzs.js → Tab-BISlFW_i.js} +3 -3
  172. package/dist/{Tab-D8fMPPzs.js.map → Tab-BISlFW_i.js.map} +1 -1
  173. package/dist/Tab.js +1 -1
  174. package/dist/Table.js +1 -1
  175. package/dist/{Text-Bbi-LKog.js → Text-CDzLZl1O.js} +2 -2
  176. package/dist/{Text-Bbi-LKog.js.map → Text-CDzLZl1O.js.map} +1 -1
  177. package/dist/Text.js +1 -1
  178. package/dist/{TextField-BNIVbKWT.js → TextField-3szrbqNi.js} +2 -2
  179. package/dist/{TextField-BNIVbKWT.js.map → TextField-3szrbqNi.js.map} +1 -1
  180. package/dist/{TextField-gFol8RuR.js → TextField-DmddoTnj.js} +4 -4
  181. package/dist/{TextField-gFol8RuR.js.map → TextField-DmddoTnj.js.map} +1 -1
  182. package/dist/TextField.js +1 -1
  183. package/dist/{Textarea-Ddnqj2Qt.js → Textarea-CJG9i528.js} +4 -4
  184. package/dist/{Textarea-Ddnqj2Qt.js.map → Textarea-CJG9i528.js.map} +1 -1
  185. package/dist/Textarea.js +1 -1
  186. package/dist/{ThemeProvider-Bo2JRqGq.js → ThemeProvider-CUiXHn4p.js} +2 -2
  187. package/dist/{ThemeProvider-Bo2JRqGq.js.map → ThemeProvider-CUiXHn4p.js.map} +1 -1
  188. package/dist/ThemeProvider.js +1 -1
  189. package/dist/{TimeField-Dc0CfW4e.js → TimeField-BfxAImzQ.js} +6 -6
  190. package/dist/{TimeField-Dc0CfW4e.js.map → TimeField-BfxAImzQ.js.map} +1 -1
  191. package/dist/TimeField.js +1 -1
  192. package/dist/Toast.js +2 -2
  193. package/dist/{Toaster-BGqW3sq1.js → Toaster-C6iB4h0P.js} +2 -2
  194. package/dist/{Toaster-BGqW3sq1.js.map → Toaster-C6iB4h0P.js.map} +1 -1
  195. package/dist/{Toaster-DEV2FFN2.js → Toaster-D72xHdfH.js} +26 -27
  196. package/dist/Toaster-D72xHdfH.js.map +1 -0
  197. package/dist/Toaster.css +56 -59
  198. package/dist/{Toolbar-DsBKx1eB.js → Toolbar-hhk9ZQ9l.js} +20 -20
  199. package/dist/{Toolbar-DsBKx1eB.js.map → Toolbar-hhk9ZQ9l.js.map} +1 -1
  200. package/dist/Toolbar.js +1 -1
  201. package/dist/{Tooltip-CmsYVHVU.js → Tooltip-BOfdwyTv.js} +2 -2
  202. package/dist/{Tooltip-CmsYVHVU.js.map → Tooltip-BOfdwyTv.js.map} +1 -1
  203. package/dist/Tooltip.js +1 -1
  204. package/dist/beta/components/Toolbar/Toolbar.d.ts +2 -2
  205. package/dist/beta/components/Toolbar/index.d.ts +1 -0
  206. package/dist/beta.js +4 -4
  207. package/dist/components/DateFieldRange/internal/useDateFieldRangeConversion.d.ts +1 -1
  208. package/dist/hooks/useBreakpoint/useBreakpoint.d.ts +32 -0
  209. package/dist/{index-CVqRZ_4L.js → index-CUVkL0hr.js} +3 -3
  210. package/dist/{index-CVqRZ_4L.js.map → index-CUVkL0hr.js.map} +1 -1
  211. package/dist/index.js +68 -68
  212. package/dist/{useBreakpoint-6KK6MJ9g.js → useBreakpoint-BGCsBhQ7.js} +15 -2
  213. package/dist/useBreakpoint-BGCsBhQ7.js.map +1 -0
  214. package/dist/useBreakpoint.js +1 -1
  215. package/dist/{useLayoutPropsUtil-DLrhehwU.js → useLayoutPropsUtil-C7FVYB8F.js} +5 -46
  216. package/dist/useLayoutPropsUtil-C7FVYB8F.js.map +1 -0
  217. package/dist/{utils-wis6GReX.js → utils-ComsNTho.js} +2 -2
  218. package/dist/{utils-wis6GReX.js.map → utils-ComsNTho.js.map} +1 -1
  219. package/package.json +3 -3
  220. package/dist/Toaster-DEV2FFN2.js.map +0 -1
  221. package/dist/useBreakpoint-6KK6MJ9g.js.map +0 -1
  222. package/dist/useLayoutPropsUtil-DLrhehwU.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"useBreakpoint-6KK6MJ9g.js","sources":["../src/hooks/useBreakpoint/useBreakpoint.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { core } from \"@servicetitan/hammer-token\";\n\nconst breakpoints = {\n sm: parseInt(core.primitive?.BreakpointSm.value),\n md: parseInt(core.primitive?.BreakpointMd.value),\n lg: parseInt(core.primitive?.BreakpointLg.value),\n xl: parseInt(core.primitive?.BreakpointXl.value),\n xxl: parseInt(core.primitive?.BreakpointXxl.value),\n};\n\nconst areBreakpointsDefined = Object.values(breakpoints).every(\n (breakpoint) => breakpoint,\n);\n\n/**\n * Return type for the useBreakpoint hook\n */\nexport type BreakpointReturnProps = {\n /**\n * The breakpoint name\n */\n name: \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"xxl\";\n /**\n * Minimum width for this breakpoint\n */\n min: number | undefined;\n /**\n * Maximum width for this breakpoint\n */\n max: number | undefined;\n /**\n * Current device orientation\n */\n orientation: \"portrait\" | \"landscape\";\n /**\n * Current viewport width\n */\n innerWidth: number;\n /**\n * Current viewport height\n */\n innerHeight: number;\n};\n\n/**\n * Determines if the current viewport matches a specific breakpoint\n * @param name - The breakpoint name\n * @param min - Minimum width for this breakpoint\n * @param max - Maximum width for this breakpoint\n * @returns Breakpoint information if matched, undefined otherwise\n */\nfunction breakpoint(\n name: BreakpointReturnProps[\"name\"],\n min?: number,\n max?: number,\n): BreakpointReturnProps | undefined {\n if (globalThis.visualViewport == null) {\n return undefined;\n }\n\n const { width: viewportWidth, height: viewportHeight } =\n globalThis.visualViewport;\n\n if (\n (min == null || viewportWidth >= min) &&\n (max == null || viewportWidth < max)\n ) {\n return {\n name,\n min,\n max,\n orientation: viewportHeight > viewportWidth ? \"portrait\" : \"landscape\",\n innerWidth: viewportWidth,\n innerHeight: viewportHeight,\n } as const;\n }\n\n return undefined;\n}\n\n/**\n * Determines the current breakpoint based on viewport width and hammer-token breakpoint values.\n *\n * Features:\n * - Validates that all required hammer-token breakpoint values are available\n * - Uses cascade logic to determine the appropriate breakpoint\n * - Returns the first matching breakpoint in order of preference\n * - Handles edge cases where breakpoint values are missing\n * - Uses visualViewport API for accurate viewport measurements\n * - Supports all standard breakpoints (xs, sm, md, lg, xl, xxl)\n *\n * @returns Current breakpoint information or undefined if breakpoint values are unavailable\n */\nconst onResize = () => {\n if (!areBreakpointsDefined) {\n return;\n }\n\n const { sm, md, lg, xl, xxl } = breakpoints;\n\n return (\n breakpoint(\"xs\", undefined, sm) ??\n breakpoint(\"sm\", sm, md) ??\n breakpoint(\"md\", md, lg) ??\n breakpoint(\"lg\", lg, xl) ??\n breakpoint(\"xl\", xl, xxl) ??\n breakpoint(\"xxl\", xxl, undefined)\n );\n};\n\n/**\n * Custom hook for detecting current breakpoint and viewport information.\n *\n * Features:\n * - Detects current breakpoint based on viewport width\n * - Supports all standard breakpoints (xs, sm, md, lg, xl, xxl)\n * - Provides device orientation information\n * - Returns current viewport dimensions\n * - Uses hammer-token breakpoint values for consistency\n * - Listens for window resize events\n * - Supports optional disable functionality\n * - Uses visualViewport API for accurate measurements\n *\n * @param props - Optional configuration object\n * @param props.disable - Whether to disable the hook\n * @returns Current breakpoint information or undefined if disabled\n */\nexport const useBreakpoint = (props?: { disable?: boolean }) => {\n const [size, setSize] = useState(onResize);\n\n useEffect(() => {\n if (!areBreakpointsDefined || props?.disable) return;\n\n const updateSize = () => {\n setSize(onResize());\n };\n\n globalThis.addEventListener(\"resize\", updateSize);\n\n return () => {\n globalThis.removeEventListener(\"resize\", updateSize);\n };\n }, [props?.disable]);\n\n if (props?.disable) return;\n\n return size;\n};\n"],"names":["core.primitive?.BreakpointSm","core.primitive?.BreakpointMd","core.primitive?.BreakpointLg","core.primitive?.BreakpointXl","core.primitive?.BreakpointXxl","breakpoint"],"mappings":";;;AAGA,MAAM,WAAA,GAAc;AAAA,EAClB,EAAA,EAAI,QAAA,CAASA,aAA6B,KAAK,CAAA;AAAA,EAC/C,EAAA,EAAI,QAAA,CAASC,aAA6B,KAAK,CAAA;AAAA,EAC/C,EAAA,EAAI,QAAA,CAASC,aAA6B,KAAK,CAAA;AAAA,EAC/C,EAAA,EAAI,QAAA,CAASC,aAA6B,KAAK,CAAA;AAAA,EAC/C,GAAA,EAAK,QAAA,CAASC,cAA8B,KAAK;AACnD,CAAA;AAEA,MAAM,qBAAA,GAAwB,MAAA,CAAO,MAAA,CAAO,WAAW,CAAA,CAAE,KAAA;AAAA,EACvD,CAACC,WAAAA,KAAeA;AAClB,CAAA;AAuCA,SAAS,UAAA,CACP,IAAA,EACA,GAAA,EACA,GAAA,EACmC;AACnC,EAAA,IAAI,UAAA,CAAW,kBAAkB,IAAA,EAAM;AACrC,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAM,EAAE,KAAA,EAAO,aAAA,EAAe,MAAA,EAAQ,cAAA,KACpC,UAAA,CAAW,cAAA;AAEb,EAAA,IAAA,CACG,OAAO,IAAA,IAAQ,aAAA,IAAiB,SAChC,GAAA,IAAO,IAAA,IAAQ,gBAAgB,GAAA,CAAA,EAChC;AACA,IAAA,OAAO;AAAA,MACL,IAAA;AAAA,MACA,GAAA;AAAA,MACA,GAAA;AAAA,MACA,WAAA,EAAa,cAAA,GAAiB,aAAA,GAAgB,UAAA,GAAa,WAAA;AAAA,MAC3D,UAAA,EAAY,aAAA;AAAA,MACZ,WAAA,EAAa;AAAA,KACf;AAAA,EACF;AAEA,EAAA,OAAO,MAAA;AACT;AAeA,MAAM,WAAW,MAAM;AACrB,EAAA,IAAI,CAAC,qBAAA,EAAuB;AAC1B,IAAA;AAAA,EACF;AAEA,EAAA,MAAM,EAAE,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,KAAI,GAAI,WAAA;AAEhC,EAAA,OACE,UAAA,CAAW,IAAA,EAAM,MAAA,EAAW,EAAE,CAAA,IAC9B,UAAA,CAAW,IAAA,EAAM,EAAA,EAAI,EAAE,CAAA,IACvB,UAAA,CAAW,IAAA,EAAM,EAAA,EAAI,EAAE,CAAA,IACvB,UAAA,CAAW,IAAA,EAAM,EAAA,EAAI,EAAE,CAAA,IACvB,UAAA,CAAW,IAAA,EAAM,EAAA,EAAI,GAAG,CAAA,IACxB,UAAA,CAAW,KAAA,EAAO,GAAA,EAAK,MAAS,CAAA;AAEpC,CAAA;AAmBO,MAAM,aAAA,GAAgB,CAAC,KAAA,KAAkC;AAC9D,EAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAI,SAAS,QAAQ,CAAA;AAEzC,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,CAAC,qBAAA,IAAyB,KAAA,EAAO,OAAA,EAAS;AAE9C,IAAA,MAAM,aAAa,MAAM;AACvB,MAAA,OAAA,CAAQ,UAAU,CAAA;AAAA,IACpB,CAAA;AAEA,IAAA,UAAA,CAAW,gBAAA,CAAiB,UAAU,UAAU,CAAA;AAEhD,IAAA,OAAO,MAAM;AACX,MAAA,UAAA,CAAW,mBAAA,CAAoB,UAAU,UAAU,CAAA;AAAA,IACrD,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,KAAA,EAAO,OAAO,CAAC,CAAA;AAEnB,EAAA,IAAI,OAAO,OAAA,EAAS;AAEpB,EAAA,OAAO,IAAA;AACT;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useLayoutPropsUtil-DLrhehwU.js","sources":["../src/internal/functions/sizeToToken.ts","../src/internal/hooks/useLayoutPropsUtil/useLayoutPropsUtil.ts"],"sourcesContent":["import { core } from \"@servicetitan/hammer-token\";\nimport { GapSize } from \"../../types\";\n\ntype PrimitiveSizes =\n | \"Size0\"\n | \"SizeHalf\"\n | \"Size1\"\n | \"Size2\"\n | \"Size3\"\n | \"Size4\"\n | \"Size5\"\n | \"Size6\"\n | \"Size7\"\n | \"Size8\"\n | \"Size9\"\n | \"Size10\"\n | \"Size11\"\n | \"Size12\"\n | \"Size13\"\n | \"Size14\";\n\nexport const sizeToToken = (value?: GapSize) => {\n if (typeof value === \"undefined\") return undefined;\n let gap = value;\n const stringifiedValue = String(value);\n if (stringifiedValue === \"half\") {\n gap =\n `${stringifiedValue[0].toUpperCase()}${stringifiedValue.slice(1)}` as GapSize;\n }\n\n return core.primitive?.[`Size${gap}` as PrimitiveSizes]?.value;\n};\n","import { CSSProperties, useMemo } from \"react\";\nimport { GapSize, LayoutUtilProps } from \"../../../types\";\nimport { useBreakpoint } from \"../../../hooks/useBreakpoint\";\nimport { sizeToToken } from \"../../functions/sizeToToken\";\n\nconst LAYOUT_PROP_ARR = [\n \"gridTemplateColumns\",\n \"gridTemplateRows\",\n \"gridTemplateAreas\",\n \"gridAutoColumns\",\n \"gridAutoRows\",\n \"gridArea\",\n \"gridColumn\",\n \"gridRow\",\n \"gridColumnStart\",\n \"gridColumnEnd\",\n \"gridRowStart\",\n \"gridRowEnd\",\n \"flex\",\n \"flexDirection\",\n \"flexGrow\",\n \"flexShrink\",\n \"flexBasis\",\n \"flexWrap\",\n \"order\",\n \"justifySelf\",\n \"justifyItems\",\n \"justifyContent\",\n \"alignSelf\",\n \"alignItems\",\n \"alignContent\",\n \"placeItems\",\n \"placeContent\",\n \"placeSelf\",\n \"wrap\",\n \"gap\",\n \"rowGap\",\n \"columnGap\",\n];\n\nconst RESPONSIVE_SIZES_ARR = [\"xs\", \"sm\", \"md\", \"lg\", \"xl\", \"xxl\"];\n\n/**\n * Layout CSS variables type excluding responsive properties\n */\ntype LayoutCSSVariables = Omit<LayoutUtilProps, keyof ResponsiveLayout>;\n\n/**\n * Responsive layout configuration type\n */\ntype ResponsiveLayout = {\n /**\n * Base layout properties\n */\n base?: LayoutUtilProps;\n /**\n * Extra small breakpoint layout properties\n */\n xs?: LayoutUtilProps;\n /**\n * Small breakpoint layout properties\n */\n sm?: LayoutUtilProps;\n /**\n * Medium breakpoint layout properties\n */\n md?: LayoutUtilProps;\n /**\n * Large breakpoint layout properties\n */\n lg?: LayoutUtilProps;\n /**\n * Extra large breakpoint layout properties\n */\n xl?: LayoutUtilProps;\n /**\n * Extra extra large breakpoint layout properties\n */\n xxl?: LayoutUtilProps;\n};\n\n/**\n * Custom hook for managing responsive layout properties and CSS styles.\n *\n * Features:\n * - Separates layout properties from component properties\n * - Provides responsive breakpoint support for all layout properties\n * - Automatically converts gap sizes to CSS tokens\n * - Uses breakpoint cascade for responsive values\n * - Optimized with useMemo for performance\n * - Supports all CSS Grid and Flexbox properties\n * - Handles responsive size inheritance (larger breakpoints inherit from smaller ones)\n * - Returns both layout styles and filtered component props\n *\n * @param props - Object containing layout and component properties\n * @returns Object containing layout styles and filtered component props\n */\nexport function useLayoutPropsUtil<T extends ResponsiveLayout>(\n props: T,\n): { layoutStyles?: CSSProperties; componentProps: T } {\n const baseSizeProps = Object.fromEntries(\n Object.entries(props).filter(([key, _val]) =>\n LAYOUT_PROP_ARR.includes(key),\n ),\n );\n\n const responsiveSizeProps = Object.fromEntries(\n Object.entries(props).filter(([key, _val]) =>\n RESPONSIVE_SIZES_ARR.includes(key),\n ),\n );\n\n const sizeProps: ResponsiveLayout = useMemo(\n () => ({\n ...responsiveSizeProps,\n base: baseSizeProps,\n }),\n [baseSizeProps, responsiveSizeProps],\n );\n\n const componentProps = Object.fromEntries(\n Object.entries(props).filter(\n ([key, _val]) =>\n !RESPONSIVE_SIZES_ARR.includes(key) && !LAYOUT_PROP_ARR.includes(key),\n ),\n );\n\n const breakpoint = useBreakpoint();\n\n const getValue = (style: keyof LayoutCSSVariables) => {\n if (breakpoint?.name === \"xxl\") {\n const xxlValue =\n sizeProps.xxl?.[style] ??\n sizeProps.xl?.[style] ??\n sizeProps.lg?.[style] ??\n sizeProps.md?.[style] ??\n sizeProps.sm?.[style] ??\n sizeProps.xs?.[style] ??\n sizeProps.base?.[style];\n\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(xxlValue as GapSize);\n }\n return xxlValue;\n }\n if (breakpoint?.name === \"xl\") {\n const xlValue =\n sizeProps.xl?.[style] ??\n sizeProps.lg?.[style] ??\n sizeProps.md?.[style] ??\n sizeProps.sm?.[style] ??\n sizeProps.xs?.[style] ??\n sizeProps.base?.[style];\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(xlValue as GapSize);\n }\n return xlValue;\n }\n if (breakpoint?.name === \"lg\") {\n const lgValue =\n sizeProps.lg?.[style] ??\n sizeProps.md?.[style] ??\n sizeProps.sm?.[style] ??\n sizeProps.xs?.[style] ??\n sizeProps.base?.[style];\n\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(lgValue as GapSize);\n }\n return lgValue;\n }\n if (breakpoint?.name === \"md\") {\n const mdValue =\n sizeProps.md?.[style] ??\n sizeProps.sm?.[style] ??\n sizeProps.xs?.[style] ??\n sizeProps.base?.[style];\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(mdValue as GapSize);\n }\n return mdValue;\n }\n if (breakpoint?.name === \"sm\") {\n const smValue =\n sizeProps.sm?.[style] ??\n sizeProps.xs?.[style] ??\n sizeProps.base?.[style];\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(smValue as GapSize);\n }\n return smValue;\n }\n if (breakpoint?.name === \"xs\") {\n const xsValue = sizeProps.xs?.[style] ?? sizeProps.base?.[style];\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(xsValue as GapSize);\n }\n return xsValue;\n }\n\n if (style.toLowerCase().endsWith(\"gap\")) {\n return sizeToToken(sizeProps.base?.[style] as GapSize);\n }\n return sizeProps.base?.[style];\n };\n\n const layoutStyleObject = LAYOUT_PROP_ARR.reduce((o, key) => {\n const value = getValue(key as keyof LayoutCSSVariables);\n\n if (typeof value === \"undefined\") return o;\n return { ...o, [key]: value };\n }, {});\n\n return {\n layoutStyles: layoutStyleObject,\n componentProps: componentProps as T,\n };\n}\n"],"names":["core.primitive"],"mappings":"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"}