@servicetitan/anvil2 2.6.1 → 2.7.1

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 (249) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/{Avatar-CCnbKkCm.js → Avatar-BckUfs1N.js} +48 -46
  3. package/dist/{Avatar-CCnbKkCm.js.map → Avatar-BckUfs1N.js.map} +1 -1
  4. package/dist/Avatar-ChybzixS.js +35 -0
  5. package/dist/Avatar-ChybzixS.js.map +1 -0
  6. package/dist/Avatar.js +2 -2
  7. package/dist/Breadcrumbs-C_WK9Yul.js +107 -0
  8. package/dist/Breadcrumbs-C_WK9Yul.js.map +1 -0
  9. package/dist/Breadcrumbs.js +1 -1
  10. package/dist/{Calendar-B5d2SUrH.js → Calendar-BTStJPV1.js} +2 -2
  11. package/dist/{Calendar-B5d2SUrH.js.map → Calendar-BTStJPV1.js.map} +1 -1
  12. package/dist/{Calendar-B0u3EgCY.js → Calendar-Frpv5rRY.js} +129 -118
  13. package/dist/Calendar-Frpv5rRY.js.map +1 -0
  14. package/dist/Calendar.css +51 -51
  15. package/dist/Calendar.js +2 -2
  16. package/dist/Checkbox-CTZdZym4.js +52 -0
  17. package/dist/Checkbox-CTZdZym4.js.map +1 -0
  18. package/dist/{Checkbox-BwULIo4D.js → Checkbox-Drgai_lS.js} +16 -7
  19. package/dist/Checkbox-Drgai_lS.js.map +1 -0
  20. package/dist/Checkbox.js +1 -1
  21. package/dist/{Chip-DjTAR0va.js → Chip-CVyEctAz.js} +2 -2
  22. package/dist/{Chip-DjTAR0va.js.map → Chip-CVyEctAz.js.map} +1 -1
  23. package/dist/Chip.js +1 -1
  24. package/dist/{Combobox-Clymsgli.js → Combobox-BRtfrYyZ.js} +185 -182
  25. package/dist/{Combobox-Clymsgli.js.map → Combobox-BRtfrYyZ.js.map} +1 -1
  26. package/dist/Combobox.js +1 -1
  27. package/dist/{DataTable-qoseu_e2.js → DataTable-BmVPjMMg.js} +680 -628
  28. package/dist/DataTable-BmVPjMMg.js.map +1 -0
  29. package/dist/{DateFieldRange-rks7jQor.js → DateFieldRange-D9DtlkSQ.js} +18 -4
  30. package/dist/DateFieldRange-D9DtlkSQ.js.map +1 -0
  31. package/dist/DateFieldRange.js +1 -1
  32. package/dist/{DateFieldSingle-C0WXU7H1.js → DateFieldSingle-CkdeCUJv.js} +6 -6
  33. package/dist/{DateFieldSingle-C0WXU7H1.js.map → DateFieldSingle-CkdeCUJv.js.map} +1 -1
  34. package/dist/DateFieldSingle.js +1 -1
  35. package/dist/{DateFieldYearless-2p3a7Xgo.js → DateFieldYearless-b81ZcYdp.js} +3 -3
  36. package/dist/{DateFieldYearless-2p3a7Xgo.js.map → DateFieldYearless-b81ZcYdp.js.map} +1 -1
  37. package/dist/DateFieldYearless.js +1 -1
  38. package/dist/{DateFieldYearlessRange-DLmhPug8.js → DateFieldYearlessRange-ClAFzIDD.js} +3 -3
  39. package/dist/{DateFieldYearlessRange-DLmhPug8.js.map → DateFieldYearlessRange-ClAFzIDD.js.map} +1 -1
  40. package/dist/DateFieldYearlessRange.js +1 -1
  41. package/dist/{DaysOfTheWeek-BR32AA32.js → DaysOfTheWeek-2Zeh79oR.js} +3 -3
  42. package/dist/{DaysOfTheWeek-BR32AA32.js.map → DaysOfTheWeek-2Zeh79oR.js.map} +1 -1
  43. package/dist/DaysOfTheWeek.js +1 -1
  44. package/dist/{Details-Dxq_v3Qg.js → Details-CZOIpNP_.js} +8 -8
  45. package/dist/Details-CZOIpNP_.js.map +1 -0
  46. package/dist/Details.js +1 -1
  47. package/dist/{Dialog-CMhypnCD.js → Dialog-CloZWa1Q.js} +70 -70
  48. package/dist/Dialog-CloZWa1Q.js.map +1 -0
  49. package/dist/Dialog.js +1 -1
  50. package/dist/DndSort.js +3 -5
  51. package/dist/DndSort.js.map +1 -1
  52. package/dist/{Drawer-CSelPi8t.js → Drawer-CfkoH081.js} +83 -83
  53. package/dist/Drawer-CfkoH081.js.map +1 -0
  54. package/dist/Drawer.js +1 -1
  55. package/dist/DrillDown.js +1 -1
  56. package/dist/{FieldLabel-DbMosKtd.js → FieldLabel-CQ5QGTVq.js} +2 -2
  57. package/dist/{FieldLabel-DbMosKtd.js.map → FieldLabel-CQ5QGTVq.js.map} +1 -1
  58. package/dist/FieldLabel.js +1 -1
  59. package/dist/Grid-DeYIx5k4.js +149 -0
  60. package/dist/Grid-DeYIx5k4.js.map +1 -0
  61. package/dist/Grid.js +1 -1
  62. package/dist/{InputMask-BKs-x6ds.js → InputMask-CI4Q5UwG.js} +2 -2
  63. package/dist/{InputMask-BKs-x6ds.js.map → InputMask-CI4Q5UwG.js.map} +1 -1
  64. package/dist/InputMask.js +1 -1
  65. package/dist/{Layout-VfhlilMG.js → Layout-CISAxILX.js} +34 -33
  66. package/dist/Layout-CISAxILX.js.map +1 -0
  67. package/dist/Layout.js +1 -1
  68. package/dist/List--KhCpjZn.js +103 -0
  69. package/dist/List--KhCpjZn.js.map +1 -0
  70. package/dist/List.js +1 -1
  71. package/dist/{ListView-CeGwrRbt.js → ListView-DAbBuss4.js} +6 -6
  72. package/dist/ListView-DAbBuss4.js.map +1 -0
  73. package/dist/ListView.js +1 -1
  74. package/dist/{Listbox-BtAgBDRS.js → Listbox-D_T55BFX.js} +5 -4
  75. package/dist/Listbox-D_T55BFX.js.map +1 -0
  76. package/dist/Listbox.js +1 -1
  77. package/dist/{Menu-BXsmCP20.js → Menu-CRoJYJ53.js} +366 -365
  78. package/dist/Menu-CRoJYJ53.js.map +1 -0
  79. package/dist/Menu.js +1 -1
  80. package/dist/MultiSelectField.js +1 -1
  81. package/dist/{MultiSelectFieldSync-EELhdoD6.js → MultiSelectFieldSync-CSOitvtu.js} +5 -5
  82. package/dist/{MultiSelectFieldSync-EELhdoD6.js.map → MultiSelectFieldSync-CSOitvtu.js.map} +1 -1
  83. package/dist/MultiSelectMenu.js +1 -1
  84. package/dist/{MultiSelectMenuSync-CAPhhkK1.js → MultiSelectMenuSync-62OeGmkz.js} +29 -9
  85. package/dist/MultiSelectMenuSync-62OeGmkz.js.map +1 -0
  86. package/dist/{NumberField-svhZp1kB.js → NumberField-CHBXBMSj.js} +2 -2
  87. package/dist/{NumberField-svhZp1kB.js.map → NumberField-CHBXBMSj.js.map} +1 -1
  88. package/dist/NumberField.js +1 -1
  89. package/dist/Overflow.css +27 -26
  90. package/dist/Overflow.js +11 -11
  91. package/dist/{Page-BpV1yHkm.js → Page-DtSjnBJL.js} +277 -224
  92. package/dist/Page-DtSjnBJL.js.map +1 -0
  93. package/dist/Page.css +87 -73
  94. package/dist/Page.js +1 -1
  95. package/dist/{Pagination-BAwqfl_2.js → Pagination-CbBte3GQ.js} +17 -15
  96. package/dist/Pagination-CbBte3GQ.js.map +1 -0
  97. package/dist/Pagination.js +1 -1
  98. package/dist/Popover-CQhLSNYR.js +537 -0
  99. package/dist/Popover-CQhLSNYR.js.map +1 -0
  100. package/dist/{Popover-Br6qPgKe.js → Popover-Rha0q-Pv.js} +353 -353
  101. package/dist/Popover-Rha0q-Pv.js.map +1 -0
  102. package/dist/Popover.js +1 -1
  103. package/dist/{ProgressBar-JpRDW5vG.js → ProgressBar-DEaMqbM-.js} +2 -2
  104. package/dist/{ProgressBar-JpRDW5vG.js.map → ProgressBar-DEaMqbM-.js.map} +1 -1
  105. package/dist/ProgressBar.js +1 -1
  106. package/dist/{Radio-8DmfWHYq.js → Radio-Bw2LDl9G.js} +13 -4
  107. package/dist/{Radio-8DmfWHYq.js.map → Radio-Bw2LDl9G.js.map} +1 -1
  108. package/dist/Radio-CCvu8mbI.js +60 -0
  109. package/dist/Radio-CCvu8mbI.js.map +1 -0
  110. package/dist/Radio.js +1 -1
  111. package/dist/{SegmentedControl-7fDLhgvh.js → SegmentedControl-BAi4pnFe.js} +79 -75
  112. package/dist/{SegmentedControl-7fDLhgvh.js.map → SegmentedControl-BAi4pnFe.js.map} +1 -1
  113. package/dist/SegmentedControl.js +1 -1
  114. package/dist/SelectCard-ZaAD0wR1.js +325 -0
  115. package/dist/SelectCard-ZaAD0wR1.js.map +1 -0
  116. package/dist/SelectCard.css +23 -18
  117. package/dist/SelectCard.js +1 -1
  118. package/dist/SelectField.js +1 -1
  119. package/dist/{SelectFieldLabel-Dr8HeW3N.js → SelectFieldLabel-EJCXA02B.js} +2 -2
  120. package/dist/{SelectFieldLabel-Dr8HeW3N.js.map → SelectFieldLabel-EJCXA02B.js.map} +1 -1
  121. package/dist/{SelectFieldSync-BPopU0om.js → SelectFieldSync-DA54WXOk.js} +4 -4
  122. package/dist/{SelectFieldSync-BPopU0om.js.map → SelectFieldSync-DA54WXOk.js.map} +1 -1
  123. package/dist/SelectMenu.js +1 -1
  124. package/dist/{SelectMenuSync-DeMYO1m_.js → SelectMenuSync-BQaSTcaN.js} +29 -9
  125. package/dist/SelectMenuSync-BQaSTcaN.js.map +1 -0
  126. package/dist/{SelectOptions-DBe5ZN_-.js → SelectOptions-D-DzWmKE.js} +2 -2
  127. package/dist/{SelectOptions-DBe5ZN_-.js.map → SelectOptions-D-DzWmKE.js.map} +1 -1
  128. package/dist/{SelectTrigger-ObsnAKNp.js → SelectTrigger-DWyRndmY.js} +3 -3
  129. package/dist/{SelectTrigger-ObsnAKNp.js.map → SelectTrigger-DWyRndmY.js.map} +1 -1
  130. package/dist/SelectTrigger.js +1 -1
  131. package/dist/{SelectTriggerBase-DKfOL2RJ.js → SelectTriggerBase-B6aZd2a6.js} +3 -3
  132. package/dist/{SelectTriggerBase-DKfOL2RJ.js.map → SelectTriggerBase-B6aZd2a6.js.map} +1 -1
  133. package/dist/{SideNav-KksbSQn7.js → SideNav-CxHemV3H.js} +127 -125
  134. package/dist/{SideNav-KksbSQn7.js.map → SideNav-CxHemV3H.js.map} +1 -1
  135. package/dist/SideNav.js +1 -1
  136. package/dist/{Stepper-Dt8_ImvJ.js → Stepper-CQUXV6P4.js} +156 -156
  137. package/dist/{Stepper-Dt8_ImvJ.js.map → Stepper-CQUXV6P4.js.map} +1 -1
  138. package/dist/Stepper.js +1 -1
  139. package/dist/{Tab-DO7LaUbw.js → Tab-BGGNcz9S.js} +225 -221
  140. package/dist/Tab-BGGNcz9S.js.map +1 -0
  141. package/dist/Tab.js +1 -1
  142. package/dist/Table.js +1 -1
  143. package/dist/{TextField--co7QJ4r.js → TextField-CMv9CpBq.js} +2 -2
  144. package/dist/{TextField--co7QJ4r.js.map → TextField-CMv9CpBq.js.map} +1 -1
  145. package/dist/{TextField-Cax4UeNl.js → TextField-o8zvVFDk.js} +8 -3
  146. package/dist/TextField-o8zvVFDk.js.map +1 -0
  147. package/dist/TextField.js +1 -1
  148. package/dist/{Textarea-DyqdMTvQ.js → Textarea-B4bBvO8c.js} +2 -2
  149. package/dist/{Textarea-DyqdMTvQ.js.map → Textarea-B4bBvO8c.js.map} +1 -1
  150. package/dist/Textarea.js +1 -1
  151. package/dist/{TimeField-BfcLCWMG.js → TimeField-BEgnjk4R.js} +4 -5
  152. package/dist/{TimeField-BfcLCWMG.js.map → TimeField-BEgnjk4R.js.map} +1 -1
  153. package/dist/TimeField.js +1 -1
  154. package/dist/Toast.js +2 -2
  155. package/dist/{Toaster-b0-Ub3yt.js → Toaster-6_LVKok2.js} +2 -2
  156. package/dist/{Toaster-b0-Ub3yt.js.map → Toaster-6_LVKok2.js.map} +1 -1
  157. package/dist/{Toaster-DikGo_hR.js → Toaster-B38WlKC7.js} +2 -2
  158. package/dist/{Toaster-DikGo_hR.js.map → Toaster-B38WlKC7.js.map} +1 -1
  159. package/dist/{Toolbar-DqYMc_w8.js → Toolbar-0EKhrvZN.js} +147 -146
  160. package/dist/{Toolbar-DqYMc_w8.js.map → Toolbar-0EKhrvZN.js.map} +1 -1
  161. package/dist/Toolbar.js +1 -1
  162. package/dist/{Tooltip-Bupqao9B.js → Tooltip-BHwSTwsv.js} +224 -226
  163. package/dist/Tooltip-BHwSTwsv.js.map +1 -0
  164. package/dist/Tooltip.js +1 -1
  165. package/dist/{YearlessDateInputWithPicker-aq99rKJU.js → YearlessDateInputWithPicker-BC4lRuny.js} +2 -3
  166. package/dist/YearlessDateInputWithPicker-BC4lRuny.js.map +1 -0
  167. package/dist/beta/components/MultiSelectMenu/types.d.ts +15 -0
  168. package/dist/beta/components/SelectMenu/internal/useMenuInteraction.d.ts +3 -1
  169. package/dist/beta/components/SelectMenu/types.d.ts +15 -0
  170. package/dist/beta/components/Table/DataTable/DataTable.d.ts +9 -16
  171. package/dist/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableMultiselectAsyncCell.d.ts +35 -0
  172. package/dist/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableMultiselectCell.d.ts +4 -3
  173. package/dist/beta/components/Table/DataTable/internal/editable-cells/DataTableEditableSelectAsyncCell.d.ts +7 -0
  174. package/dist/beta/components/Table/DataTable/internal/editable-cells/useEditableMenuCell.d.ts +34 -0
  175. package/dist/beta/components/Table/DataTable/internal/util/getTanStackColumnDef.d.ts +9 -5
  176. package/dist/beta/components/Table/DataTable/types.d.ts +18 -1
  177. package/dist/beta/components/Table/createColumnHelper.d.ts +29 -68
  178. package/dist/beta/components/Table/types.d.ts +222 -40
  179. package/dist/beta/components/Toolbar/Toolbar.d.ts +168 -41
  180. package/dist/beta.js +9 -9
  181. package/dist/components/Announcement/Announcement.figma.d.ts +1 -0
  182. package/dist/components/Avatar/Avatar.d.ts +14 -0
  183. package/dist/components/Calendar/Calendar.d.ts +84 -26
  184. package/dist/components/Checkbox/internal/Checkbox.d.ts +8 -0
  185. package/dist/components/Combobox/Combobox.d.ts +172 -1
  186. package/dist/components/Dialog/Dialog.d.ts +96 -28
  187. package/dist/components/DndSort/internal/test-utils.d.ts +15 -8
  188. package/dist/components/DrillDown/DrillDown.d.ts +7 -1
  189. package/dist/components/FieldMessage/FieldMessage.figma.d.ts +1 -0
  190. package/dist/components/Layout/Layout.d.ts +52 -44
  191. package/dist/components/ListView/ListView.d.ts +5 -5
  192. package/dist/components/Listbox/Listbox.d.ts +5 -23
  193. package/dist/components/Menu/Menu.d.ts +1 -4
  194. package/dist/components/Page/Page.d.ts +1 -1
  195. package/dist/components/Page/PageContent.d.ts +5 -5
  196. package/dist/components/Page/PageContext.d.ts +2 -0
  197. package/dist/components/Page/PageFooter.d.ts +1 -0
  198. package/dist/components/Radio/internal/Radio.d.ts +8 -0
  199. package/dist/components/Toolbar/Toolbar.d.ts +3 -1
  200. package/dist/index.js +126 -126
  201. package/dist/index.js.map +1 -1
  202. package/dist/internal/components/Popover/Popover.d.ts +2 -2
  203. package/dist/internal/components/Popover/internal/PopoverContext.d.ts +2 -2
  204. package/dist/{syncFilterUtils-BRKjFwxk.js → syncFilterUtils-B03Pc941.js} +190 -190
  205. package/dist/{syncFilterUtils-BRKjFwxk.js.map → syncFilterUtils-B03Pc941.js.map} +1 -1
  206. package/dist/{useDrilldown-CqBBB_r1.js → useDrilldown-BW2XkUcK.js} +40 -38
  207. package/dist/{useDrilldown-CqBBB_r1.js.map → useDrilldown-BW2XkUcK.js.map} +1 -1
  208. package/dist/{useMenuInteraction-zR_78KQC.js → useMenuInteraction-BwZ2ORo9.js} +8 -3
  209. package/dist/useMenuInteraction-BwZ2ORo9.js.map +1 -0
  210. package/dist/{useToggleSelection-JD62Jzqu.js → useToggleSelection-Dip0eimQ.js} +2 -2
  211. package/dist/{useToggleSelection-JD62Jzqu.js.map → useToggleSelection-Dip0eimQ.js.map} +1 -1
  212. package/package.json +10 -9
  213. package/dist/Avatar--CnTAnfD.js +0 -35
  214. package/dist/Avatar--CnTAnfD.js.map +0 -1
  215. package/dist/Breadcrumbs-3Y7jnj-F.js +0 -105
  216. package/dist/Breadcrumbs-3Y7jnj-F.js.map +0 -1
  217. package/dist/Calendar-B0u3EgCY.js.map +0 -1
  218. package/dist/Checkbox-BwULIo4D.js.map +0 -1
  219. package/dist/Checkbox-CIj37_vY.js +0 -50
  220. package/dist/Checkbox-CIj37_vY.js.map +0 -1
  221. package/dist/DataTable-qoseu_e2.js.map +0 -1
  222. package/dist/DateFieldRange-rks7jQor.js.map +0 -1
  223. package/dist/Details-Dxq_v3Qg.js.map +0 -1
  224. package/dist/Dialog-CMhypnCD.js.map +0 -1
  225. package/dist/Drawer-CSelPi8t.js.map +0 -1
  226. package/dist/Grid-ONcUpb__.js +0 -147
  227. package/dist/Grid-ONcUpb__.js.map +0 -1
  228. package/dist/Layout-VfhlilMG.js.map +0 -1
  229. package/dist/List-CJZjElAQ.js +0 -101
  230. package/dist/List-CJZjElAQ.js.map +0 -1
  231. package/dist/ListView-CeGwrRbt.js.map +0 -1
  232. package/dist/Listbox-BtAgBDRS.js.map +0 -1
  233. package/dist/Menu-BXsmCP20.js.map +0 -1
  234. package/dist/MultiSelectMenuSync-CAPhhkK1.js.map +0 -1
  235. package/dist/Page-BpV1yHkm.js.map +0 -1
  236. package/dist/Pagination-BAwqfl_2.js.map +0 -1
  237. package/dist/Popover-Br6qPgKe.js.map +0 -1
  238. package/dist/Popover-Dkw_8dZx.js +0 -535
  239. package/dist/Popover-Dkw_8dZx.js.map +0 -1
  240. package/dist/Radio-M7lc0BsU.js +0 -60
  241. package/dist/Radio-M7lc0BsU.js.map +0 -1
  242. package/dist/SelectCard-D5dcOIuf.js +0 -311
  243. package/dist/SelectCard-D5dcOIuf.js.map +0 -1
  244. package/dist/SelectMenuSync-DeMYO1m_.js.map +0 -1
  245. package/dist/Tab-DO7LaUbw.js.map +0 -1
  246. package/dist/TextField-Cax4UeNl.js.map +0 -1
  247. package/dist/Tooltip-Bupqao9B.js.map +0 -1
  248. package/dist/YearlessDateInputWithPicker-aq99rKJU.js.map +0 -1
  249. package/dist/useMenuInteraction-zR_78KQC.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Page-DtSjnBJL.js","sources":["../../hammer-icon/mdi/round/segment.svg","../../hammer-icon/mdi/round/chevron_left.svg","../src/components/Page/PageSidebarContext.ts","../src/components/Page/PageContext.ts","../src/components/Page/PageSidebar.tsx","../src/components/Page/PageSidebarHeader.tsx","../../hammer-icon/mdi/round/settings.svg","../src/components/Page/PageHeader.tsx","../src/components/Page/PageContent.tsx","../src/components/Page/PagePanel.tsx","../src/components/Page/PageFooter.tsx","../src/components/Page/Page.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgSegment = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M10 18h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1zM3 7c0 .55.45 1 1 1h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1zm7 6h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1z\" }));\nexport default SvgSegment;\n","import * as React from \"react\";\nconst SvgChevronLeft = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M14.71 6.71a.996.996 0 0 0-1.41 0L8.71 11.3a.996.996 0 0 0 0 1.41l4.59 4.59a.996.996 0 1 0 1.41-1.41L10.83 12l3.88-3.88c.39-.39.38-1.03 0-1.41z\" }));\nexport default SvgChevronLeft;\n","import { createContext } from \"react\";\n\ntype PageSideBarContextProps = {\n collapsed: boolean;\n};\n\nexport const PageSideBarContext = createContext<PageSideBarContextProps | null>(\n null,\n);\n","import { createContext } from \"react\";\n\nexport const PageContext = createContext<PageContextProps>({});\n\nexport type PageContextProps = {\n pageWidth?: number;\n contentWrapper?: HTMLElement | null;\n footerSlot?: HTMLElement | null;\n};\n","import { Popover, Button, Icon, Flex, Tooltip } from \"../\";\nimport { core } from \"@servicetitan/hammer-token\";\nimport {\n ComponentPropsWithoutRef,\n forwardRef,\n Ref,\n useContext,\n useState,\n useLayoutEffect,\n} from \"react\";\nimport { useTrackingId } from \"../../hooks\";\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport SegmentSVG from \"@servicetitan/hammer-icon/mdi/round/segment.svg\";\nimport RespOpen from \"@servicetitan/hammer-icon/mdi/round/keyboard_arrow_down.svg\";\nimport RespClose from \"@servicetitan/hammer-icon/mdi/round/keyboard_arrow_up.svg\";\nimport OpenSVG from \"@servicetitan/hammer-icon/mdi/round/chevron_right.svg\";\nimport CloseSVG from \"@servicetitan/hammer-icon/mdi/round/chevron_left.svg\";\nimport { PageSideBarContext } from \"./PageSidebarContext\";\nimport { PageContext, PageContextProps } from \"./PageContext\";\n\n/**\n * Props for the PageSidebar component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PageSidebarProps = ComponentPropsWithoutRef<\"div\"> & {\n /**\n * Key for storing sidebar collapsed state in localStorage\n * @default \"sidebar-collapsed\"\n */\n localStorageKey?: string;\n /**\n * Custom tracking ID for analytics\n */\n [\"data-tracking-id\"]?: string;\n /**\n * Title to display in the adaptive trigger button\n */\n currentPageTitle?: string;\n};\n\n/**\n * PageSidebar component for creating collapsible navigation sidebars.\n *\n * Features:\n * - Collapsible sidebar with localStorage persistence\n * - Responsive design with adaptive popover on mobile\n * - Automatic tracking ID generation for analytics\n * - Keyboard navigation and accessibility support\n * - Toggle button with tooltip\n * - Context provider for sidebar state\n * - Mobile-friendly popover navigation\n *\n * @example\n * <Page.Sidebar currentPageTitle=\"Navigation\">\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\">Sidebar Title</Text>\n * </Page.SidebarHeader>\n * <SideNav>\n * <SideNavLink pathname=\"/\">Home</SideNavLink>\n * </SideNav>\n * </Page.Sidebar>\n */\nexport const PageSidebar = forwardRef(\n (props: PageSidebarProps, ref: Ref<HTMLDivElement>) => {\n const {\n children,\n className,\n currentPageTitle,\n localStorageKey = \"sidebar-collapsed\",\n ...rest\n } = props;\n\n const data = {\n localStorageKey,\n };\n\n const { pageWidth } = useContext<PageContextProps>(PageContext);\n const [isMobile, setIsMobile] = useState<boolean>();\n\n useLayoutEffect(() => {\n const breakpointWidth = +(\n core.primitive?.BreakpointLg?.value.replace(\"px\", \"\") ?? 0\n );\n const innerWidth = pageWidth ?? 0;\n setIsMobile(innerWidth < breakpointWidth);\n }, [pageWidth]);\n\n const trackingId = useTrackingId({\n name: \"PageSidebarButton\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const [collapsed, setCollapsed] = useState<boolean>(() => {\n // getting stored value\n const sidebarState = localStorage.getItem(localStorageKey);\n return sidebarState ? JSON.parse(sidebarState) : false;\n });\n const classNames = cx([styles[\"sidebar\"]], className, {\n [styles[\"collapsed\"]]: collapsed,\n });\n const onToggleButtonClick = () => {\n setCollapsed((prev) => {\n localStorage.setItem(localStorageKey, JSON.stringify(!prev));\n return !prev;\n });\n };\n\n if (typeof isMobile !== \"undefined\" && isMobile) {\n return (\n <Popover fillAvailableHeight matchReferenceWidth noPadding disableCaret>\n <Popover.Trigger>\n {(props) => {\n if (typeof document !== \"undefined\") {\n if (props[\"aria-expanded\"]) {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"auto\";\n }\n }\n return (\n <div className={styles[\"sidebar-adaptive-trigger-container\"]}>\n <Button\n className={styles[\"sidebar-adaptive-trigger\"]}\n icon={SegmentSVG}\n appearance=\"ghost\"\n {...props}\n >\n {!currentPageTitle ? \"Menu\" : currentPageTitle}\n <Icon\n className={styles[\"sidebar-adaptive-trigger-icon\"]}\n justifyContent=\"end\"\n svg={props[\"aria-expanded\"] ? RespClose : RespOpen}\n />\n </Button>\n </div>\n );\n }}\n </Popover.Trigger>\n <Popover.Content className={styles[\"sidebar-adaptive-container\"]}>\n <Flex\n direction=\"column\"\n className={styles[\"sidebar-adaptive\"]}\n ref={ref}\n >\n {children}\n </Flex>\n </Popover.Content>\n </Popover>\n );\n }\n\n return (\n <PageSideBarContext.Provider value={{ collapsed }}>\n <div className={classNames} ref={ref} {...rest}>\n <div className={styles[\"sidebar-inner\"]} aria-hidden={collapsed}>\n <div>{children}</div>\n </div>\n <div className={styles[\"toggle-button-wrapper\"]}>\n <Tooltip placement=\"right\">\n <Tooltip.Trigger className={styles[\"toggle-button-tooltip\"]}>\n <Button\n size=\"small\"\n onClick={onToggleButtonClick}\n className={styles[\"toggle-button\"]}\n aria-label={collapsed ? \"Open Sidebar\" : \"Close Sidebar\"}\n data-tracking-id={trackingId}\n icon={collapsed ? OpenSVG : CloseSVG}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {collapsed ? \"Open Sidebar\" : \"Close Sidebar\"}\n </Tooltip.Content>\n </Tooltip>\n </div>\n </div>\n </PageSideBarContext.Provider>\n );\n },\n);\n\nPageSidebar.displayName = \"Page.Sidebar\";\n","import { ComponentPropsWithoutRef, forwardRef, Ref, useContext } from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport { PageSideBarContext } from \"./PageSidebarContext\";\n\n/**\n * Props for the PageSidebarHeader component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PageSidebarHeaderProps = ComponentPropsWithoutRef<\"div\">;\n\n/**\n * PageSidebarHeader component for creating header sections within sidebars.\n *\n * Features:\n * - Container for sidebar header content\n * - Automatic visibility handling based on sidebar collapsed state\n * - Supports all standard div props\n * - Context-aware styling\n *\n * @example\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\" size=\"medium\">\n * Sidebar Title\n * </Text>\n * </Page.SidebarHeader>\n */\nexport const PageSidebarHeader = forwardRef(\n (props: PageSidebarHeaderProps, ref: Ref<HTMLDivElement>) => {\n const { children, className, ...rest } = props;\n const context = useContext(PageSideBarContext);\n const classNames = cx([styles[\"sidebar-header\"]], className);\n\n return (\n <div className={classNames} ref={ref} {...rest}>\n <div\n className={styles[\"header-content\"]}\n aria-hidden={context?.collapsed}\n >\n {children}\n </div>\n </div>\n );\n },\n);\n\nPageSidebarHeader.displayName = \"Page.SidebarHeader\";\n","import * as React from \"react\";\nconst SvgSettings = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M19.5 12c0-.23-.01-.45-.03-.68l1.86-1.41c.4-.3.51-.86.26-1.3l-1.87-3.23a.987.987 0 0 0-1.25-.42l-2.15.91c-.37-.26-.76-.49-1.17-.68l-.29-2.31c-.06-.5-.49-.88-.99-.88h-3.73c-.51 0-.94.38-1 .88l-.29 2.31c-.41.19-.8.42-1.17.68l-2.15-.91c-.46-.2-1-.02-1.25.42L2.41 8.62c-.25.44-.14.99.26 1.3l1.86 1.41a7.343 7.343 0 0 0 0 1.35l-1.86 1.41c-.4.3-.51.86-.26 1.3l1.87 3.23c.25.44.79.62 1.25.42l2.15-.91c.37.26.76.49 1.17.68l.29 2.31c.06.5.49.88.99.88h3.73c.5 0 .93-.38.99-.88l.29-2.31c.41-.19.8-.42 1.17-.68l2.15.91c.46.2 1 .02 1.25-.42l1.87-3.23c.25-.44.14-.99-.26-1.3l-1.86-1.41c.03-.23.04-.45.04-.68zm-7.46 3.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z\" }));\nexport default SvgSettings;\n","import {\n ButtonProps,\n ButtonLinkProps,\n BreadcrumbsLinkProps,\n ChipProps,\n Tooltip,\n ButtonLink,\n Button,\n Flex,\n Menu,\n Breadcrumbs,\n Chip,\n Text,\n TextField,\n} from \"../\";\nimport {\n ComponentPropsWithoutRef,\n ReactNode,\n forwardRef,\n Ref,\n RefObject,\n useState,\n useRef,\n useEffect,\n KeyboardEvent,\n} from \"react\";\nimport Layout, { LayoutProps } from \"../Layout\";\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport LocalSettings from \"@servicetitan/hammer-icon/mdi/round/settings.svg\";\nimport MoreVert from \"@servicetitan/hammer-icon/mdi/round/more_vert.svg\";\nimport Edit from \"@servicetitan/hammer-icon/mdi/round/edit.svg\";\nimport Check from \"@servicetitan/hammer-icon/mdi/round/check.svg\";\nimport Close from \"@servicetitan/hammer-icon/mdi/round/close.svg\";\n\n/**\n * Props for page header action buttons\n */\ntype PageHeaderActionProps = Omit<ButtonProps, \"appearance\"> & {\n /**\n * Label text for the action button\n */\n label: string;\n};\n\n/**\n * Props for page header actions configuration\n */\ntype PageHeaderActionsProps = {\n /**\n * Primary action button\n */\n primary?: PageHeaderActionProps;\n /**\n * Array of secondary action buttons\n */\n secondary?: PageHeaderActionProps[];\n};\n\n/**\n * Base props for preference actions\n */\ntype BasePreferenceProps = {\n /**\n * Accessible label for the preference action\n */\n \"aria-label\": string;\n};\n\n/**\n * Props for preference button actions\n */\ntype PreferenceButtonProps = Omit<\n ButtonProps,\n \"aria-label\" | \"icon\" | \"appearance\" | \"size\" | \"className\"\n> &\n BasePreferenceProps;\n\n/**\n * Props for preference link actions\n */\ntype PreferenceLinkProps = Omit<\n ButtonLinkProps,\n \"aria-label\" | \"icon\" | \"appearance\" | \"size\" | \"className\"\n> &\n BasePreferenceProps;\n\ntype PageHeaderTitleConfig = {\n text: string;\n onChange?: (title: string) => void | boolean;\n editButtonLabel?: string;\n editFieldLabel?: string;\n confirmButtonLabel?: string;\n cancelButtonLabel?: string;\n};\n\ntype PageHeaderTitle = PageHeaderTitleConfig[\"text\"] | PageHeaderTitleConfig;\n\n/**\n * Props for the PageHeader component\n * @extends ComponentPropsWithoutRef<\"header\">\n */\nexport type PageHeaderProps = Omit<\n ComponentPropsWithoutRef<\"header\">,\n \"title\"\n> & {\n /**\n * Main title of the page\n */\n title: PageHeaderTitle;\n /**\n * Breadcrumb navigation links\n */\n breadcrumbs?: BreadcrumbsLinkProps[];\n /**\n * Status chips to display\n */\n chips?: ChipProps[];\n /**\n * Description text or content below the title\n */\n description?: ReactNode;\n /**\n * Primary and secondary action buttons\n */\n actions?: PageHeaderActionsProps;\n /**\n * Preference action button or link\n */\n preferenceAction?: PreferenceButtonProps | PreferenceLinkProps;\n /**\n * Layout configuration for the header\n */\n layout?: LayoutProps;\n};\n\n/**\n * PageHeader component for creating page headers with navigation and actions.\n *\n * Features:\n * - Page title with semantic heading\n * - Breadcrumb navigation support\n * - Status chips display\n * - Primary and secondary action buttons\n * - Preference action button/link\n * - Responsive layout with fluid grid\n * - Accessibility support with proper ARIA labels\n * - Flexible layout configuration\n * - Description content support\n *\n * @example\n * <Page.Header\n * title=\"Page Title\"\n * breadcrumbs={[\n * { href: \"/\", children: \"Home\" },\n * { children: \"Current Page\" }\n * ]}\n * chips={[{ label: \"Status\" }]}\n * actions={{\n * primary: { label: \"Save\", onClick: handleSave },\n * secondary: [{ label: \"Cancel\", onClick: handleCancel }]\n * }}\n * />\n */\nexport const PageHeader = forwardRef(\n (props: PageHeaderProps, ref: Ref<HTMLHeadElement>) => {\n const {\n title: titleProp,\n breadcrumbs,\n chips,\n description,\n actions,\n preferenceAction,\n layout,\n className,\n ...rest\n } = props;\n\n const title: PageHeaderTitleConfig =\n typeof titleProp === \"string\" ? { text: titleProp } : titleProp;\n\n const [editing, setEditing] = useState(false);\n const [editingTitle, setEditingTitle] = useState<\n PageHeaderTitleConfig[\"text\"]\n >(title.text);\n const editFieldRef = useRef<HTMLInputElement>(null);\n const editButtonRef = useRef<HTMLButtonElement>(null);\n const firstRenderRef = useRef(true);\n\n useEffect(() => {\n if (firstRenderRef.current) {\n firstRenderRef.current = false;\n return;\n }\n\n if (editing === true && editFieldRef.current) {\n editFieldRef.current.focus();\n }\n\n if (editing === false && editButtonRef.current) {\n editButtonRef.current.focus();\n }\n }, [editing]);\n\n const { fluid, variant } = layout || {};\n\n const preferenceItem =\n preferenceAction &&\n (\"href\" in preferenceAction ? (\n <Tooltip>\n <Tooltip.Trigger>\n <ButtonLink\n appearance=\"ghost\"\n icon={LocalSettings}\n size=\"small\"\n className={styles[\"preference-action\"]}\n {...(preferenceAction as PreferenceLinkProps)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>{preferenceAction[\"aria-label\"]}</Tooltip.Content>\n </Tooltip>\n ) : (\n <Tooltip>\n <Tooltip.Trigger>\n <Button\n appearance=\"ghost\"\n icon={LocalSettings}\n size=\"small\"\n className={styles[\"preference-action\"]}\n {...(preferenceAction as PreferenceButtonProps)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>{preferenceAction[\"aria-label\"]}</Tooltip.Content>\n </Tooltip>\n ));\n\n const actionItems = actions && (\n <Flex justifyContent=\"flex-end\" className={styles.actions}>\n {/* Only primary action */}\n {actions.primary &&\n (!actions.secondary || actions.secondary.length === 0) && (\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n )}\n\n {/* Only secondary actions (1-2 buttons) */}\n {!!actions.secondary?.length &&\n actions.secondary.length < 3 &&\n !actions.primary &&\n actions.secondary.map((action, index) => (\n <Button key={index} appearance=\"secondary\" {...action}>\n {action.label}\n </Button>\n ))}\n\n {/* 1 secondary action + primary action */}\n {actions.primary &&\n !!actions.secondary?.length &&\n actions.secondary.length === 1 && (\n <>\n <Button appearance=\"secondary\" {...actions.secondary[0]}>\n {actions.secondary[0].label}\n </Button>\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n </>\n )}\n\n {/* Multiple secondary actions (3+) with optional primary */}\n {!!actions.secondary?.length &&\n (actions.secondary.length >= 3 ||\n (actions.secondary.length >= 2 && actions.primary)) && (\n <>\n <Menu\n trigger={({ ref, ...rest }) => (\n <Tooltip>\n <Tooltip.Trigger\n ref={ref as unknown as RefObject<HTMLDivElement>}\n >\n <Button\n appearance=\"secondary\"\n icon={MoreVert}\n aria-label=\"More actions\"\n {...rest}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>More actions</Tooltip.Content>\n </Tooltip>\n )}\n >\n {actions.secondary.map((action, index) => (\n <Menu.Item\n key={index}\n label={action.label}\n onClick={action.onClick}\n disabled={action.disabled}\n />\n ))}\n </Menu>\n {actions.primary && (\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n )}\n </>\n )}\n </Flex>\n );\n\n const headerClassName = cx(styles.content, styles.header, className);\n\n const headerContentClassName = cx(\n styles[\"content-inner\"],\n styles[\"content-header-inner\"],\n );\n\n return (\n <header ref={ref} className={headerClassName} {...rest}>\n <div className={headerContentClassName}>\n <Layout fluid={fluid} variant={variant} className={styles[\"layout\"]}>\n {breadcrumbs && (\n <Layout.Item>\n <Breadcrumbs>\n {breadcrumbs.map((breadcrumb, index) => (\n <Breadcrumbs.Link key={index} {...breadcrumb} />\n ))}\n </Breadcrumbs>\n </Layout.Item>\n )}\n\n <Layout.Item md={actionItems || editing ? 6 : 12}>\n <div className={styles[\"title-wrapper\"]}>\n {title.onChange && editing ? (\n <form\n onSubmit={(e) => {\n e.preventDefault();\n if (title.onChange?.(editingTitle) !== false) {\n setEditing(false);\n }\n }}\n style={{ display: \"flex\" }}\n >\n <Flex alignItems=\"center\" grow={1} gap={2}>\n <TextField\n aria-label={title.editFieldLabel ?? \"Page title\"}\n defaultValue={title.text}\n flexGrow={1}\n ref={editFieldRef}\n onChange={(event) =>\n setEditingTitle(event.target.value)\n }\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n if (e.code === \"Escape\") {\n setEditing(false);\n setEditingTitle(title.text);\n }\n }}\n />\n\n <Flex alignItems=\"center\" gap={1}>\n <Tooltip>\n <Tooltip.Trigger>\n <Button\n icon={Check}\n aria-label={\n title.confirmButtonLabel ?? \"Update title\"\n }\n size=\"small\"\n appearance=\"primary\"\n onClick={() => {\n if (title.onChange?.(editingTitle) !== false) {\n setEditing(false);\n }\n }}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {title.confirmButtonLabel ?? \"Update title\"}\n </Tooltip.Content>\n </Tooltip>\n\n <Tooltip>\n <Tooltip.Trigger>\n <Button\n icon={Close}\n aria-label={title.cancelButtonLabel ?? \"Cancel\"}\n size=\"small\"\n onClick={() => {\n setEditing(false);\n setEditingTitle(title.text);\n }}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {title.cancelButtonLabel ?? \"Cancel\"}\n </Tooltip.Content>\n </Tooltip>\n </Flex>\n </Flex>\n </form>\n ) : (\n <>\n <Text\n variant=\"headline\"\n size=\"large\"\n el=\"h1\"\n className={styles.title}\n >\n {title.text}\n </Text>\n\n {title.onChange != null ? (\n <>\n {\" \"}\n <Tooltip>\n <Tooltip.Trigger>\n <Button\n icon={Edit}\n aria-label={title.editButtonLabel ?? \"Edit title\"}\n size=\"small\"\n appearance=\"ghost\"\n ref={editButtonRef}\n onClick={() => setEditing(true)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {title.editButtonLabel ?? \"Edit title\"}\n </Tooltip.Content>\n </Tooltip>\n </>\n ) : null}\n </>\n )}\n\n {preferenceItem}\n </div>\n\n {chips && (\n <Flex className={styles.chips}>\n {chips.map((chip, index) => (\n <Chip key={index} {...chip} />\n ))}\n </Flex>\n )}\n </Layout.Item>\n\n {actions && <Layout.Item md={6}>{actionItems}</Layout.Item>}\n\n {description && (\n <Layout.Item md={12} className={styles.description}>\n {description}\n </Layout.Item>\n )}\n </Layout>\n </div>\n </header>\n );\n },\n);\n\nPageHeader.displayName = \"Page.Header\";\n","import {\n ComponentPropsWithoutRef,\n forwardRef,\n Ref,\n useContext,\n useEffect,\n useRef,\n useState,\n UIEvent,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport { PageContext } from \"./PageContext\";\nimport { useMergeRefs } from \"../../hooks\";\n\n/**\n * Props for the PageContent component\n * @extends ComponentPropsWithoutRef<\"section\">\n */\nexport type PageContentProps = ComponentPropsWithoutRef<\"section\">;\n\n/**\n * PageContent component for the main content area of a page.\n *\n * Features:\n * - Renders as a section element inside Page's main landmark\n * - Virtual scrolling support for long content\n * - Automatic scroll synchronization\n * - Responsive design\n * - Portals into Page's content wrapper via context\n * - Scroll position management\n *\n * @example\n * <Page.Content>\n * <Text>Main page content goes here</Text>\n * <Button>Action Button</Button>\n * </Page.Content>\n */\nexport const PageContent = forwardRef(\n (props: PageContentProps, ref: Ref<HTMLElement>) => {\n const { children, className, ...rest } = props;\n const classNames = cx([styles[\"content\"]], className);\n const sectionRef = useRef<HTMLElement>(null);\n const virtualScrollRef = useRef<HTMLDivElement>(null);\n const blocker = useRef(true);\n const [leftOffset, setLeftOffset] = useState(\n (sectionRef.current?.offsetLeft ?? 0) +\n (sectionRef.current?.offsetWidth ?? 0) -\n 9,\n );\n const [contentHeight, setContentHeight] = useState(\n sectionRef.current?.offsetHeight,\n );\n\n const { contentWrapper } = useContext(PageContext);\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n if (!blocker.current) return;\n function updatePosition() {\n const newValue = window.scrollY;\n\n virtualScrollRef.current?.scrollTo(0, newValue ?? 0);\n }\n window?.addEventListener(\"scroll\", updatePosition, { passive: true });\n\n return () => {\n window?.removeEventListener(\"scroll\", updatePosition);\n };\n }, []);\n\n useEffect(() => {\n if (sectionRef.current) {\n const wrapperParent = sectionRef.current.parentElement;\n const isWrapped =\n wrapperParent?.classList.contains(styles[\"content-wrapper\"]) ?? false;\n const heightTarget = isWrapped ? wrapperParent! : sectionRef.current;\n\n const observer = new ResizeObserver(() => {\n if (!sectionRef.current) return;\n setLeftOffset(\n sectionRef.current.offsetLeft + sectionRef.current.offsetWidth - 9,\n );\n const offsetStr = getComputedStyle(sectionRef.current)\n .getPropertyValue(\"--offset\")\n .trim();\n const offset = parseFloat(offsetStr) || 0;\n const rawHeight = document.documentElement.scrollHeight - offset;\n const safeHeight = Number.isFinite(rawHeight)\n ? Math.max(0, rawHeight)\n : 0;\n setContentHeight(safeHeight);\n });\n\n observer.observe(sectionRef.current);\n if (isWrapped) {\n observer.observe(heightTarget);\n }\n\n return () => {\n observer.disconnect();\n };\n }\n }, [contentWrapper]);\n\n function scrollBody(e: UIEvent<HTMLElement>) {\n if (typeof window === \"undefined\") return;\n if (blocker.current) return;\n window.scrollTo(0, (e.target as HTMLDivElement).scrollTop);\n }\n\n const section = (\n <section\n className={classNames}\n ref={useMergeRefs([sectionRef, ref])}\n {...rest}\n >\n <div className={styles[\"content-inner\"]}>{children}</div>\n <div\n className={styles[\"virtual-scroll-container\"]}\n ref={virtualScrollRef}\n style={{\n left: leftOffset,\n }}\n onScrollCapture={scrollBody}\n onMouseEnter={() => {\n blocker.current = false;\n }}\n onMouseLeave={() => {\n blocker.current = true;\n }}\n >\n <div style={{ width: 1, height: contentHeight }} />\n </div>\n </section>\n );\n\n if (contentWrapper) {\n return createPortal(section, contentWrapper);\n }\n\n if (contentWrapper === undefined) {\n return section;\n }\n\n return null;\n },\n);\n\nPageContent.displayName = \"PageContent\";\n","import {\n ComponentPropsWithoutRef,\n forwardRef,\n Ref,\n useContext,\n useLayoutEffect,\n useState,\n useMemo,\n CSSProperties,\n} from \"react\";\nimport { core } from \"@servicetitan/hammer-token\";\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport Dialog from \"../Dialog\";\nimport { PageContext, PageContextProps } from \"./PageContext\";\nimport {\n DrillDownContext,\n DrillDownContextProps,\n} from \"../DrillDown/internal/DrillDownContext\";\nimport { useDrillDownContextState } from \"../DrillDown/internal/useDrillDownContextState\";\nimport drillDownStyles from \"../DrillDown/DrillDown.module.scss\";\nimport { useDrillDownContext } from \"../DrillDown/internal/useDrillDownContext\";\n\n/**\n * Props for the PagePanel component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PagePanelProps = ComponentPropsWithoutRef<\"div\"> & {\n /**\n * Whether the panel is open\n * @default true\n */\n open?: boolean;\n /**\n * Size of the panel\n * @default \"medium\"\n */\n size?: \"small\" | \"medium\" | \"large\";\n /**\n * Whether to remove default padding from the panel\n * @default false\n */\n noPadding?: boolean;\n /**\n * Sets the default DrillDown index when used in an uncontrolled way\n */\n defaultDrillDownIndex?: DrillDownContextProps[\"index\"];\n /**\n * Callback to pass context to useDrillDown hook\n */\n onDrillDownContextChange?: (context: DrillDownContextProps) => void;\n};\n\nconst PagePanelInner = ({\n style,\n open,\n children,\n}: {\n style?: CSSProperties;\n open?: boolean;\n children?: React.ReactNode;\n}) => {\n const { index } = useDrillDownContext();\n\n const classNames = cx([styles[\"panel-inner\"]], {\n [styles[\"drilldown-open\"]]: index !== undefined,\n });\n\n return (\n <>\n <div\n className={classNames}\n /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */\n tabIndex={typeof open !== \"undefined\" && open ? 0 : -1}\n style={{ ...style, overflowY: index === undefined ? \"auto\" : \"hidden\" }}\n >\n <div>{children}</div>\n </div>\n </>\n );\n};\n\n/**\n * PagePanel component for creating slide-out panels or dialogs.\n *\n * Features:\n * - Responsive design with dialog fallback on mobile\n * - Multiple size variants (small, medium, large)\n * - Optional padding control\n * - Persistent or controlled open state\n * - Automatic mobile dialog conversion\n * - Keyboard navigation and accessibility support\n * - Smooth animations and transitions\n *\n * @example\n * <Page.Panel open={isOpen} size=\"medium\">\n * <Text variant=\"headline\" el=\"h3\">Panel Content</Text>\n * <Button onClick={() => setIsOpen(false)}>Close</Button>\n * </Page.Panel>\n */\nexport const PagePanel = forwardRef(\n (props: PagePanelProps, ref: Ref<HTMLDivElement>) => {\n const {\n children,\n open,\n size = \"medium\",\n noPadding,\n style,\n className,\n defaultDrillDownIndex,\n onDrillDownContextChange,\n ...rest\n } = props;\n const [isMobile, setIsMobile] = useState<boolean>(false);\n\n const classNames = cx(\n [styles.panel, drillDownStyles.panel],\n [styles[size]],\n className,\n {\n [styles[\"open\"]]: typeof open === \"undefined\" ? true : open,\n [styles[\"persistent\"]]: typeof open === \"undefined\",\n [styles[\"noPadding\"]]: noPadding,\n },\n );\n\n const drillDownContextValue = useDrillDownContextState({\n defaultDrillDownIndex,\n });\n\n useMemo(() => {\n onDrillDownContextChange?.(drillDownContextValue);\n }, [drillDownContextValue]); // eslint-disable-line react-hooks/exhaustive-deps\n\n const { pageWidth } = useContext<PageContextProps>(PageContext);\n\n useLayoutEffect(() => {\n const breakpointWidth = +(\n core.primitive?.BreakpointLg?.value.replace(\"px\", \"\") ?? 0\n );\n const innerWidth = pageWidth ?? 0;\n setIsMobile(innerWidth < breakpointWidth);\n }, [pageWidth]);\n\n if (typeof open !== \"undefined\" && isMobile) {\n return (\n <Dialog\n open={open}\n defaultDrillDownIndex={defaultDrillDownIndex}\n onDrillDownContextChange={onDrillDownContextChange}\n >\n <Dialog.Content>\n <div\n className={classNames}\n aria-hidden={!open}\n aria-disabled={!open}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n </Dialog.Content>\n </Dialog>\n );\n }\n return (\n <DrillDownContext.Provider value={drillDownContextValue}>\n <div\n className={classNames}\n aria-hidden={!open}\n aria-disabled={!open}\n ref={ref}\n {...rest}\n >\n <PagePanelInner style={style} open={open}>\n {children}\n </PagePanelInner>\n </div>\n </DrillDownContext.Provider>\n );\n },\n);\n\nPagePanel.displayName = \"PagePanel\";\n","import { ComponentPropsWithoutRef, forwardRef, Ref, useContext } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { LayoutUtilProps } from \"../../types\";\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport { PageContext } from \"./PageContext\";\n\n/**\n * Props for the PageFooter component\n * @extends ComponentPropsWithoutRef<\"div\">\n * @extends LayoutUtilProps\n */\nexport type PageFooterProps = ComponentPropsWithoutRef<\"div\"> & LayoutUtilProps;\n\n/**\n * PageFooter component for creating page footers with layout utilities.\n *\n * Features:\n * - Semantic footer element\n * - Layout utility props support\n * - Responsive design\n * - Accessibility support with proper footer landmark\n * - Flexible content positioning\n * - Portals into Page's footer slot via context\n *\n * @example\n * <Page.Footer>\n * <Text>Footer content with layout utilities</Text>\n * </Page.Footer>\n */\nexport const PageFooter = forwardRef(\n (props: PageFooterProps, ref: Ref<HTMLDivElement>) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { children, className, style, ...rest } = componentProps;\n const { footerSlot } = useContext(PageContext);\n\n const classNames = cx([styles[\"content-footer\"]], className);\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n const footer = (\n <footer className={classNames} ref={ref} style={styleCombined} {...rest}>\n {children}\n </footer>\n );\n\n if (footerSlot) {\n return createPortal(footer, footerSlot);\n }\n\n if (footerSlot === undefined) {\n return footer;\n }\n\n return null;\n },\n);\nPageFooter.displayName = \"PageFooter\";\n","import {\n ComponentPropsWithoutRef,\n forwardRef,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\nimport { PageSidebar } from \"./PageSidebar\";\nimport { PageSidebarHeader } from \"./PageSidebarHeader\";\nimport { PageHeader } from \"./PageHeader\";\nimport { PageContent } from \"./PageContent\";\nimport { PagePanel } from \"./PagePanel\";\nimport { PageFooter } from \"./PageFooter\";\nimport { PageContext } from \"./PageContext\";\nimport { useMergeRefs } from \"../../hooks\";\n\n//--- Start Page Element ---//\n/**\n * Props for the Page component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PageProps = ComponentPropsWithoutRef<\"div\">;\n\n/**\n * Page component for creating full-page layouts with navigation and content areas.\n *\n * Features:\n * - Container for complete page layouts\n * - Supports sidebar navigation with collapsible state\n * - Header with breadcrumbs, chips, and action buttons\n * - Main content area with virtual scrolling\n * - Optional slide-out panels with responsive dialog fallback\n * - Footer with layout utilities\n * - Responsive design with mobile adaptations\n * - Accessibility support with proper landmarks\n * - Automatic tracking ID generation for analytics\n * - Local storage persistence for sidebar state\n *\n * @example\n * <Page>\n * <Page.Sidebar currentPageTitle=\"Navigation\">\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\">Navigation</Text>\n * </Page.SidebarHeader>\n * <SideNav>\n * <SideNavLink pathname=\"/\">Home</SideNavLink>\n * </SideNav>\n * </Page.Sidebar>\n * <Page.Header\n * title=\"Page Title\"\n * breadcrumbs={[{ href: \"/\", children: \"Home\" }]}\n * actions={{ primary: { label: \"Save\", onClick: handleSave } }}\n * />\n * <Page.Content>\n * <Text>Main content</Text>\n * </Page.Content>\n * <Page.Panel open={isPanelOpen} size=\"medium\">\n * <Text>Panel content</Text>\n * </Page.Panel>\n * <Page.Footer>\n * <Text>Footer content</Text>\n * </Page.Footer>\n * </Page>\n */\nexport const Page = Object.assign(\n forwardRef<HTMLDivElement, PageProps>(function PageInner(props, ref) {\n const { children, className, ...rest } = props;\n const classNames = cx(styles[\"page\"], className);\n const elRef = useRef<HTMLDivElement>(null);\n const combinedRef = useMergeRefs([elRef, ref]);\n\n const [pageWidth, setPageWidth] = useState<number>(0);\n const [contentWrapper, setContentWrapper] = useState<HTMLElement | null>(\n null,\n );\n const [footerSlot, setFooterSlot] = useState<HTMLElement | null>(null);\n\n useLayoutEffect(() => {\n const element = elRef.current;\n const resizeObserver = new ResizeObserver((entries) => {\n const entry = entries[0];\n if (entry) {\n setPageWidth(entry.contentRect.width);\n }\n });\n if (element) {\n resizeObserver.observe(element);\n }\n return () => {\n if (element) {\n resizeObserver.unobserve(element);\n resizeObserver.disconnect();\n }\n };\n }, [elRef]);\n\n return (\n <PageContext.Provider value={{ pageWidth, contentWrapper, footerSlot }}>\n <div className={classNames} data-anv=\"Page\" ref={combinedRef} {...rest}>\n <div className={styles[\"container\"]}>\n {children}\n <main\n className={styles[\"content-wrapper\"]}\n ref={setContentWrapper}\n />\n <div className={styles[\"footer-slot\"]} ref={setFooterSlot} />\n </div>\n </div>\n </PageContext.Provider>\n );\n }),\n {\n /**\n * PageSidebar component for creating collapsible navigation sidebars.\n *\n * Features:\n * - Collapsible sidebar with localStorage persistence\n * - Responsive design with adaptive popover on mobile\n * - Automatic tracking ID generation for analytics\n * - Keyboard navigation and accessibility support\n * - Toggle button with tooltip\n * - Context provider for sidebar state\n * - Mobile-friendly popover navigation\n *\n * @example\n * <Page.Sidebar currentPageTitle=\"Navigation\">\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\">Sidebar Title</Text>\n * </Page.SidebarHeader>\n * <SideNav>\n * <SideNavLink pathname=\"/\">Home</SideNavLink>\n * </SideNav>\n * </Page.Sidebar>\n */\n Sidebar: PageSidebar,\n /**\n * PageSidebarHeader component for creating header sections within sidebars.\n *\n * Features:\n * - Container for sidebar header content\n * - Automatic visibility handling based on sidebar collapsed state\n * - Supports all standard div props\n * - Context-aware styling\n *\n * @example\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\" size=\"medium\">\n * Sidebar Title\n * </Text>\n * </Page.SidebarHeader>\n */\n SidebarHeader: PageSidebarHeader,\n /**\n * PageHeader component for creating page headers with navigation and actions.\n *\n * Features:\n * - Page title with semantic heading\n * - Breadcrumb navigation support\n * - Status chips display\n * - Primary and secondary action buttons\n * - Preference action button/link\n * - Responsive layout with fluid grid\n * - Accessibility support with proper ARIA labels\n * - Flexible layout configuration\n * - Description content support\n *\n * @example\n * <Page.Header\n * title=\"Page Title\"\n * breadcrumbs={[\n * { href: \"/\", children: \"Home\" },\n * { children: \"Current Page\" }\n * ]}\n * chips={[{ label: \"Status\" }]}\n * actions={{\n * primary: { label: \"Save\", onClick: handleSave },\n * secondary: [{ label: \"Cancel\", onClick: handleCancel }]\n * }}\n * />\n */\n Header: PageHeader,\n /**\n * PageContent component for the main content area of a page.\n *\n * Features:\n * - Semantic main element for page content\n * - Virtual scrolling support for long content\n * - Automatic scroll synchronization\n * - Responsive design\n * - Accessibility support with proper main landmark\n * - Scroll position management\n *\n * @example\n * <Page.Content>\n * <Text>Main page content goes here</Text>\n * <Button>Action Button</Button>\n * </Page.Content>\n */\n Content: PageContent,\n /**\n * PagePanel component for creating slide-out panels or dialogs.\n *\n * Features:\n * - Responsive design with dialog fallback on mobile\n * - Multiple size variants (small, medium, large)\n * - Optional padding control\n * - Persistent or controlled open state\n * - Automatic mobile dialog conversion\n * - Keyboard navigation and accessibility support\n * - Smooth animations and transitions\n *\n * @example\n * <Page.Panel open={isOpen} size=\"medium\">\n * <Text variant=\"headline\" el=\"h3\">Panel Content</Text>\n * <Button onClick={() => setIsOpen(false)}>Close</Button>\n * </Page.Panel>\n */\n Panel: PagePanel,\n /**\n * PageFooter component for creating page footers with layout utilities.\n *\n * Features:\n * - Semantic footer element\n * - Layout utility props support\n * - Responsive design\n * - Accessibility support with proper footer landmark\n * - Flexible content positioning\n *\n * @example\n * <Page.Footer>\n * <Text>Footer content with layout utilities</Text>\n * </Page.Footer>\n */\n Footer: PageFooter,\n },\n);\nPage.displayName = \"Page\";\n"],"names":["core.primitive?.BreakpointLg","props","SegmentSVG","RespClose","RespOpen","OpenSVG","CloseSVG","LocalSettings","ref","rest","MoreVert","Check","Close","Edit"],"mappings":"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"}
package/dist/Page.css CHANGED
@@ -1,15 +1,17 @@
1
1
  @layer starter, reset, base, state, application;
2
-
3
- html:has(._page_1s3vu_1)::-webkit-scrollbar {
2
+ html:has(._page_89lif_1) {
3
+ scrollbar-width: none;
4
+ }
5
+ html:has(._page_89lif_1)::-webkit-scrollbar {
4
6
  display: none;
5
7
  }
6
8
 
7
- ._content-footer_1s3vu_5 {
9
+ ._content-footer_89lif_8 {
8
10
  all: revert-layer;
9
11
  }
10
12
 
11
13
  @layer base {
12
- ._page_1s3vu_1 {
14
+ ._page_89lif_1 {
13
15
  margin: 0;
14
16
  padding: 0;
15
17
  border-style: none;
@@ -22,7 +24,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
22
24
  display: flex;
23
25
  flex-direction: column;
24
26
  }
25
- ._page_1s3vu_1 ._container_1s3vu_23 {
27
+ ._page_89lif_1 ._container_89lif_26 {
26
28
  display: grid;
27
29
  flex-grow: 1;
28
30
  grid-template-areas: "sidebar" "header" "content" "panel" "footer";
@@ -40,21 +42,30 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
40
42
  overflow-x: clip;
41
43
  transition: 300ms cubic-bezier(0.4, 0, 0.6, 1);
42
44
  }
43
- ._content_1s3vu_5 {
45
+ ._content-wrapper_89lif_44 {
46
+ grid-area: content;
47
+ display: flex;
48
+ flex-direction: column;
49
+ container: content/inline-size;
50
+ }
51
+ ._footer-slot_89lif_50 {
52
+ display: contents;
53
+ }
54
+ ._content_89lif_8 {
44
55
  grid-area: content;
45
56
  container: content/inline-size;
46
57
  display: flex;
47
58
  }
48
- ._content_1s3vu_5 ._content-inner_1s3vu_46 {
59
+ ._content_89lif_8 ._content-inner_89lif_58 {
49
60
  padding-block: 1.5rem;
50
61
  padding-inline: 1rem;
51
62
  flex-basis: 100%;
52
63
  }
53
- ._content_1s3vu_5 ._content-header-inner_1s3vu_51 {
64
+ ._content_89lif_8 ._content-header-inner_89lif_63 {
54
65
  padding-block-start: 2rem;
55
66
  padding-block-end: 0.5rem;
56
67
  }
57
- ._content-footer_1s3vu_5 {
68
+ ._content-footer_89lif_8 {
58
69
  grid-area: footer;
59
70
  position: sticky;
60
71
  display: flex;
@@ -67,7 +78,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
67
78
  padding-inline: 1rem;
68
79
  box-shadow: var(--shadow-color, rgba(20, 20, 20, 0.0784313725)) 0rem 0.125rem 0.5rem;
69
80
  }
70
- ._sidebar_1s3vu_68 {
81
+ ._sidebar_89lif_80 {
71
82
  grid-area: sidebar;
72
83
  display: flex;
73
84
  flex-direction: row;
@@ -78,7 +89,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
78
89
  position: relative;
79
90
  background-color: var(--background-color, #ffffff);
80
91
  }
81
- ._sidebar_1s3vu_68 ._sidebar-inner_1s3vu_79 {
92
+ ._sidebar_89lif_80 ._sidebar-inner_89lif_91 {
82
93
  position: sticky;
83
94
  top: var(--offset, 0px);
84
95
  width: 100%;
@@ -91,7 +102,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
91
102
  transition-behavior: allow-discrete;
92
103
  overflow-x: clip;
93
104
  }
94
- ._sidebar_1s3vu_68 ._sidebar-inner_1s3vu_79 > div {
105
+ ._sidebar_89lif_80 ._sidebar-inner_89lif_91 > div {
95
106
  background-color: inherit;
96
107
  flex-direction: column;
97
108
  display: flex;
@@ -105,7 +116,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
105
116
  bottom: 0;
106
117
  right: 0;
107
118
  }
108
- ._sidebar_1s3vu_68 ._toggle-button-wrapper_1s3vu_106 {
119
+ ._sidebar_89lif_80 ._toggle-button-wrapper_89lif_118 {
109
120
  position: absolute;
110
121
  width: 0px;
111
122
  overflow: visible;
@@ -113,7 +124,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
113
124
  right: 0;
114
125
  height: 100%;
115
126
  }
116
- ._sidebar_1s3vu_68 ._toggle-button-wrapper_1s3vu_106 ._toggle-button-tooltip_1s3vu_114 {
127
+ ._sidebar_89lif_80 ._toggle-button-wrapper_89lif_118 ._toggle-button-tooltip_89lif_126 {
117
128
  position: sticky;
118
129
  top: calc(1.5rem + var(--offset, 0px));
119
130
  margin-left: -1rem;
@@ -121,7 +132,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
121
132
  width: -moz-fit-content;
122
133
  width: fit-content;
123
134
  }
124
- ._sidebar_1s3vu_68 ._toggle-button-wrapper_1s3vu_106 ._toggle-button_1s3vu_106 {
135
+ ._sidebar_89lif_80 ._toggle-button-wrapper_89lif_118 ._toggle-button_89lif_118 {
125
136
  padding: 0.5rem;
126
137
  min-width: 2rem;
127
138
  width: 2rem;
@@ -129,16 +140,16 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
129
140
  border-radius: 100%;
130
141
  border-color: var(--border-color-subdued, #dfe0e1);
131
142
  }
132
- ._sidebar_1s3vu_68 ._toggle-button-wrapper_1s3vu_106 ._toggle-button_1s3vu_106::before {
143
+ ._sidebar_89lif_80 ._toggle-button-wrapper_89lif_118 ._toggle-button_89lif_118::before {
133
144
  border-radius: inherit;
134
145
  }
135
- ._sidebar-header_1s3vu_132 {
146
+ ._sidebar-header_89lif_144 {
136
147
  display: flex;
137
148
  align-items: center;
138
149
  justify-content: space-between;
139
150
  padding: 1rem;
140
151
  }
141
- ._sidebar-adaptive-trigger-container_1s3vu_138 {
152
+ ._sidebar-adaptive-trigger-container_89lif_150 {
142
153
  padding: 0.5rem;
143
154
  background-color: var(--background-color, #ffffff);
144
155
  width: auto;
@@ -147,13 +158,13 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
147
158
  z-index: 1;
148
159
  box-shadow: var(--shadow-color, rgba(20, 20, 20, 0.0784313725)) 0rem 0.125rem 0.5rem;
149
160
  }
150
- ._sidebar-adaptive-container_1s3vu_147 {
161
+ ._sidebar-adaptive-container_89lif_159 {
151
162
  overflow: auto;
152
163
  }
153
- ._sidebar-adaptive-container_1s3vu_147 ._sidebar-adaptive_1s3vu_138 {
164
+ ._sidebar-adaptive-container_89lif_159 ._sidebar-adaptive_89lif_150 {
154
165
  padding: 0.5rem;
155
166
  }
156
- ._panel_1s3vu_153 {
167
+ ._panel_89lif_165 {
157
168
  grid-area: panel;
158
169
  display: flex;
159
170
  flex-direction: column;
@@ -164,7 +175,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
164
175
  width: stretch;
165
176
  position: relative;
166
177
  }
167
- ._panel_1s3vu_153 ._panel-inner_1s3vu_162 {
178
+ ._panel_89lif_165 ._panel-inner_89lif_174 {
168
179
  padding: 1rem;
169
180
  outline: none;
170
181
  width: 100%;
@@ -175,7 +186,7 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
175
186
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
176
187
  transition-behavior: allow-discrete;
177
188
  }
178
- ._virtual-scroll-container_1s3vu_173 {
189
+ ._virtual-scroll-container_89lif_185 {
179
190
  display: none;
180
191
  position: fixed;
181
192
  top: var(--offset, 0px);
@@ -184,44 +195,44 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
184
195
  height: calc(100dvh - var(--offset, 0px));
185
196
  z-index: 1;
186
197
  }
187
- ._header_1s3vu_182 {
198
+ ._header_89lif_194 {
188
199
  grid-area: header;
189
200
  flex: 0 0 auto;
190
201
  }
191
- ._header_1s3vu_182 ._title-wrapper_1s3vu_186,
192
- ._header_1s3vu_182 ._title_1s3vu_186 {
202
+ ._header_89lif_194 ._title-wrapper_89lif_198,
203
+ ._header_89lif_194 ._title_89lif_198 {
193
204
  display: inline;
194
205
  }
195
- ._header_1s3vu_182 ._title_1s3vu_186 {
206
+ ._header_89lif_194 ._title_89lif_198 {
196
207
  margin-block-end: 0;
197
208
  }
198
- ._header_1s3vu_182 ._preference-action_1s3vu_193 {
209
+ ._header_89lif_194 ._preference-action_89lif_205 {
199
210
  margin-inline-start: 0.5rem;
200
211
  }
201
- ._header_1s3vu_182 ._chips_1s3vu_196 {
212
+ ._header_89lif_194 ._chips_89lif_208 {
202
213
  gap: 0.5rem;
203
214
  margin-block-start: 0.75rem;
204
215
  }
205
- ._header_1s3vu_182 ._actions_1s3vu_200 {
216
+ ._header_89lif_194 ._actions_89lif_212 {
206
217
  flex-wrap: wrap;
207
218
  gap: 0.75rem;
208
219
  }
209
220
  @container content (max-width: 768px) {
210
- ._header_1s3vu_182 ._actions_1s3vu_200 > * {
221
+ ._header_89lif_194 ._actions_89lif_212 > * {
211
222
  flex: 1 1 calc(50% - 0.75rem);
212
223
  min-width: min(100%, 200px);
213
224
  }
214
- ._header_1s3vu_182 ._actions_1s3vu_200:has(button[class*=primary]) button[class*=primary] {
225
+ ._header_89lif_194 ._actions_89lif_212:has(button[class*=primary]) button[class*=primary] {
215
226
  order: -1;
216
227
  }
217
228
  }
218
- ._header_1s3vu_182 ._description_1s3vu_213 {
229
+ ._header_89lif_194 ._description_89lif_225 {
219
230
  max-width: 80ch;
220
231
  }
221
232
  }
222
233
  @layer state {
223
234
  @container page (min-width: 1024px) {
224
- ._page_1s3vu_1 ._container_1s3vu_23 {
235
+ ._page_89lif_1 ._container_89lif_26 {
225
236
  grid-template-areas: "sidebar header panel" "sidebar content panel" "sidebar footer panel";
226
237
  grid-template-rows: auto 1fr auto;
227
238
  grid-template-columns: var(--first-col) var(--second-col) var(--third-col);
@@ -229,41 +240,44 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
229
240
  --second-col: 1fr;
230
241
  --third-col: 0px;
231
242
  }
232
- ._page_1s3vu_1 ._container_1s3vu_23:has(._panel_1s3vu_153._open_1s3vu_227._small_1s3vu_227) {
243
+ ._page_89lif_1 ._container_89lif_26:has(._panel_89lif_165._open_89lif_239._small_89lif_239) {
233
244
  --third-col: 16rem;
234
245
  }
235
- ._page_1s3vu_1 ._container_1s3vu_23:has(._panel_1s3vu_153._open_1s3vu_227._medium_1s3vu_230) {
246
+ ._page_89lif_1 ._container_89lif_26:has(._panel_89lif_165._open_89lif_239._medium_89lif_242) {
236
247
  --third-col: 24rem;
237
248
  }
238
- ._page_1s3vu_1 ._container_1s3vu_23:has(._panel_1s3vu_153._open_1s3vu_227._large_1s3vu_233) {
249
+ ._page_89lif_1 ._container_89lif_26:has(._panel_89lif_165._open_89lif_239._large_89lif_245) {
239
250
  --third-col: 30rem;
240
251
  }
241
- ._page_1s3vu_1 ._container_1s3vu_23:has(._sidebar_1s3vu_68._collapsed_1s3vu_236) {
252
+ ._page_89lif_1 ._container_89lif_26:has(._sidebar_89lif_80._collapsed_89lif_248) {
242
253
  --first-col: 1.5rem;
243
254
  }
244
- ._page_1s3vu_1 ._container_1s3vu_23:not(:has(._sidebar_1s3vu_68)) {
255
+ ._page_89lif_1 ._container_89lif_26:not(:has(._sidebar_89lif_80)) {
245
256
  grid-template-areas: "header panel" "content panel" "footer panel";
246
257
  grid-template-columns: 1fr var(--third-col);
247
258
  --first-col: 0px;
248
259
  }
249
- ._page_1s3vu_1 ._container_1s3vu_23:not(:has(._sidebar_1s3vu_68)) > ._content_1s3vu_5, ._page_1s3vu_1 ._container_1s3vu_23:not(:has(._sidebar_1s3vu_68)) > div:not(._panel_1s3vu_153, ._content-footer_1s3vu_5) {
260
+ ._page_89lif_1 ._container_89lif_26:not(:has(._sidebar_89lif_80)) > ._content_89lif_8, ._page_89lif_1 ._container_89lif_26:not(:has(._sidebar_89lif_80)) > ._content-wrapper_89lif_44, ._page_89lif_1 ._container_89lif_26:not(:has(._sidebar_89lif_80)) > div:not(._panel_89lif_165, ._content-footer_89lif_8) {
250
261
  grid-column: 1;
251
262
  width: 100%;
252
263
  }
253
- ._page_1s3vu_1 ._container_1s3vu_23:not(:has(._sidebar_1s3vu_68)) > ._panel_1s3vu_153 {
264
+ ._page_89lif_1 ._container_89lif_26:not(:has(._sidebar_89lif_80)) > ._panel_89lif_165 {
254
265
  grid-column: 2;
255
266
  }
256
- ._page_1s3vu_1 ._content_1s3vu_5 ._virtual-scroll-container_1s3vu_173 {
267
+ ._page_89lif_1 ._content_89lif_8 ._virtual-scroll-container_89lif_185 {
257
268
  display: block;
258
269
  }
259
- ._page_1s3vu_1 ._sidebar_1s3vu_68 {
270
+ ._page_89lif_1 ._content-wrapper_89lif_44 > ._content_89lif_8 ~ ._content_89lif_8 ._virtual-scroll-container_89lif_185 {
271
+ display: none;
272
+ }
273
+ ._page_89lif_1 ._sidebar_89lif_80 {
260
274
  grid-area: sidebar;
261
275
  padding: 0;
262
276
  background-color: var(--background-color, #ffffff);
263
277
  border-inline-end: 0.0625rem solid var(--border-color-subdued, #dfe0e1);
264
278
  box-shadow: var(--shadow-color, rgba(20, 20, 20, 0.0784313725)) 0rem 0.125rem 0.5rem;
265
279
  }
266
- ._page_1s3vu_1 ._sidebar_1s3vu_68 ._sidebar-header_1s3vu_132 {
280
+ ._page_89lif_1 ._sidebar_89lif_80 ._sidebar-header_89lif_144 {
267
281
  background-color: var(--background-color, #ffffff);
268
282
  position: sticky;
269
283
  padding-block-start: 1.5rem;
@@ -275,62 +289,62 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
275
289
  margin-block-end: 0.25rem;
276
290
  z-index: 1;
277
291
  }
278
- ._page_1s3vu_1 ._sidebar_1s3vu_68 ._sidebar-inner_1s3vu_79 > div {
292
+ ._page_89lif_1 ._sidebar_89lif_80 ._sidebar-inner_89lif_91 > div {
279
293
  scrollbar-gutter: stable;
280
294
  left: 0;
281
295
  }
282
- ._page_1s3vu_1 ._content-footer_1s3vu_5 {
296
+ ._page_89lif_1 ._content-footer_89lif_8 {
283
297
  padding-inline: 2rem;
284
298
  }
285
299
  }
286
300
  @container page (min-width: 1024px) {
287
- ._page_1s3vu_1 ._content-footer_1s3vu_5 {
301
+ ._page_89lif_1 ._content-footer_89lif_8 {
288
302
  padding-inline: 2.5rem;
289
303
  }
290
304
  }
291
305
  @container page (min-width: 1280px) {
292
- ._page_1s3vu_1 ._content-footer_1s3vu_5 {
306
+ ._page_89lif_1 ._content-footer_89lif_8 {
293
307
  padding-inline: 3rem;
294
308
  }
295
309
  }
296
- ._sidebar_1s3vu_68._collapsed_1s3vu_236 ._sidebar-inner_1s3vu_79 {
310
+ ._sidebar_89lif_80._collapsed_89lif_248 ._sidebar-inner_89lif_91 {
297
311
  opacity: 0;
298
312
  display: none;
299
313
  }
300
314
  @container content (min-width: 768px) {
301
- ._content_1s3vu_5 ._content-inner_1s3vu_46 {
315
+ ._content_89lif_8 ._content-inner_89lif_58 {
302
316
  padding-inline: 2rem;
303
317
  }
304
318
  }
305
319
  @container content (min-width: 1024px) {
306
- ._content_1s3vu_5 ._content-inner_1s3vu_46 {
320
+ ._content_89lif_8 ._content-inner_89lif_58 {
307
321
  padding-inline: 2.5rem;
308
322
  }
309
323
  }
310
324
  @container content (min-width: 1280px) {
311
- ._content_1s3vu_5 ._content-inner_1s3vu_46 {
325
+ ._content_89lif_8 ._content-inner_89lif_58 {
312
326
  padding-inline: 3rem;
313
327
  }
314
328
  }
315
329
  @container content (min-width: 768px) {
316
- ._content_1s3vu_5 ~ ._panel_1s3vu_153 ._panel-inner_1s3vu_162 {
330
+ ._content_89lif_8 ~ ._panel_89lif_165 ._panel-inner_89lif_174 {
317
331
  padding-inline: 2rem;
318
332
  }
319
333
  }
320
334
  @container page (min-width: 768px) {
321
- ._panel_1s3vu_153 {
335
+ ._panel_89lif_165 {
322
336
  grid-area: panel;
323
337
  }
324
- ._panel_1s3vu_153 ._panel-inner_1s3vu_162 {
338
+ ._panel_89lif_165 ._panel-inner_89lif_174 {
325
339
  padding-inline: 2rem;
326
340
  }
327
341
  }
328
342
  @container page (min-width: 1024px) {
329
- ._panel_1s3vu_153 {
343
+ ._panel_89lif_165 {
330
344
  flex-direction: row;
331
345
  border-inline-start: 0.0625rem solid var(--border-color-subdued, #dfe0e1);
332
346
  }
333
- ._panel_1s3vu_153 ._panel-inner_1s3vu_162 {
347
+ ._panel_89lif_165 ._panel-inner_89lif_174 {
334
348
  position: sticky;
335
349
  top: var(--offset, 0px);
336
350
  height: calc(100dvh - var(--offset, 0px));
@@ -339,54 +353,54 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
339
353
  scrollbar-gutter: stable;
340
354
  padding-right: 1.5rem;
341
355
  }
342
- ._panel_1s3vu_153 ._panel-inner_1s3vu_162 ._drilldown-open_1s3vu_337 {
356
+ ._panel_89lif_165 ._panel-inner_89lif_174 ._drilldown-open_89lif_352 {
343
357
  overflow-y: hidden;
344
358
  }
345
- ._panel_1s3vu_153._small_1s3vu_227 ._panel-inner_1s3vu_162 {
359
+ ._panel_89lif_165._small_89lif_239 ._panel-inner_89lif_174 {
346
360
  min-width: 16rem;
347
361
  }
348
- ._panel_1s3vu_153._medium_1s3vu_230 ._panel-inner_1s3vu_162 {
362
+ ._panel_89lif_165._medium_89lif_242 ._panel-inner_89lif_174 {
349
363
  min-width: 24rem;
350
364
  }
351
- ._panel_1s3vu_153._large_1s3vu_233 ._panel-inner_1s3vu_162 {
365
+ ._panel_89lif_165._large_89lif_245 ._panel-inner_89lif_174 {
352
366
  min-width: 30rem;
353
367
  }
354
368
  }
355
- ._panel_1s3vu_153._noPadding_1s3vu_350 ._panel-inner_1s3vu_162 {
369
+ ._panel_89lif_165._noPadding_89lif_365 ._panel-inner_89lif_174 {
356
370
  padding: 0;
357
371
  }
358
- ._panel_1s3vu_153:not(._open_1s3vu_227) ._panel-inner_1s3vu_162 {
372
+ ._panel_89lif_165:not(._open_89lif_239) ._panel-inner_89lif_174 {
359
373
  overflow: clip;
360
374
  display: none;
361
375
  opacity: 0;
362
376
  }
363
377
  @starting-style {
364
- ._sidebar_1s3vu_68._collapsed_1s3vu_236 ._sidebar-inner_1s3vu_79 {
378
+ ._sidebar_89lif_80._collapsed_89lif_248 ._sidebar-inner_89lif_91 {
365
379
  opacity: 0;
366
380
  display: none;
367
381
  }
368
- ._panel_1s3vu_153:not(._open_1s3vu_227) ._panel-inner_1s3vu_162 {
382
+ ._panel_89lif_165:not(._open_89lif_239) ._panel-inner_89lif_174 {
369
383
  opacity: 0;
370
384
  display: none;
371
385
  }
372
386
  }
373
387
  }
374
388
  @layer application {
375
- ._sidebar-adaptive-trigger_1s3vu_138 {
389
+ ._sidebar-adaptive-trigger_89lif_150 {
376
390
  color: var(--foreground-color, #141414);
377
391
  background-color: var(--background-color-stronger, #eeeeee);
378
392
  justify-content: start;
379
393
  width: 100%;
380
394
  }
381
- ._sidebar-adaptive-trigger_1s3vu_138 ._sidebar-adaptive-trigger-icon_1s3vu_376 {
395
+ ._sidebar-adaptive-trigger_89lif_150 ._sidebar-adaptive-trigger-icon_89lif_391 {
382
396
  flex-grow: 1;
383
397
  }
384
- ._sidebar-adaptive-container_1s3vu_147 > div {
398
+ ._sidebar-adaptive-container_89lif_159 > div {
385
399
  height: -webkit-fill-available;
386
400
  height: -moz-available;
387
401
  height: stretch;
388
402
  }
389
- ._toggle-button-wrapper_1s3vu_106 ._toggle-button_1s3vu_106 {
403
+ ._toggle-button-wrapper_89lif_118 ._toggle-button_89lif_118 {
390
404
  padding: 0.5rem;
391
405
  min-width: 2rem;
392
406
  width: 2rem;
@@ -395,19 +409,19 @@ html:has(._page_1s3vu_1)::-webkit-scrollbar {
395
409
  border-color: var(--border-color-subdued, #dfe0e1);
396
410
  --button-background-color: var(--background-color, #ffffff);
397
411
  }
398
- ._toggle-button-wrapper_1s3vu_106 ._toggle-button_1s3vu_106::before {
412
+ ._toggle-button-wrapper_89lif_118 ._toggle-button_89lif_118::before {
399
413
  content: "";
400
414
  position: absolute;
401
415
  inset: 0;
402
416
  border-radius: inherit;
403
417
  }
404
- ._toggle-button-wrapper_1s3vu_106 ._toggle-button_1s3vu_106:hover::before {
418
+ ._toggle-button-wrapper_89lif_118 ._toggle-button_89lif_118:hover::before {
405
419
  background-color: var(--overlay-color-hover, rgba(20, 20, 20, 0.0784313725));
406
420
  }
407
- ._toggle-button-wrapper_1s3vu_106 ._toggle-button_1s3vu_106:active::before {
421
+ ._toggle-button-wrapper_89lif_118 ._toggle-button_89lif_118:active::before {
408
422
  background-color: var(--overlay-color-active, rgba(20, 20, 20, 0.1607843137));
409
423
  }
410
- ._header_1s3vu_182 ._layout_1s3vu_403 {
424
+ ._header_89lif_194 ._layout_89lif_418 {
411
425
  gap: 1rem;
412
426
  }
413
427
  }
package/dist/Page.js CHANGED
@@ -1,2 +1,2 @@
1
- export { P as Page, P as default } from './Page-BpV1yHkm.js';
1
+ export { P as Page, P as default } from './Page-DtSjnBJL.js';
2
2
  //# sourceMappingURL=Page.js.map