@servicetitan/anvil2 3.11.0 → 3.12.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 (200) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/{AiMark-BqRDRySA.js → AiMark-Bf0x9FF3.js} +2 -2
  3. package/dist/{AiMark-BqRDRySA.js.map → AiMark-Bf0x9FF3.js.map} +1 -1
  4. package/dist/AiMark.js +1 -1
  5. package/dist/{Alert-CWwBGGP3.js → Alert-S4D2DGx7.js} +2 -2
  6. package/dist/{Alert-CWwBGGP3.js.map → Alert-S4D2DGx7.js.map} +1 -1
  7. package/dist/Alert.js +1 -1
  8. package/dist/{Breadcrumbs-FZO4lrPG.js → Breadcrumbs-CR1od1rZ.js} +2 -2
  9. package/dist/{Breadcrumbs-FZO4lrPG.js.map → Breadcrumbs-CR1od1rZ.js.map} +1 -1
  10. package/dist/Breadcrumbs.js +1 -1
  11. package/dist/{Calendar-D-e2O90P.js → Calendar-B-K7eGua.js} +2 -2
  12. package/dist/{Calendar-D-e2O90P.js.map → Calendar-B-K7eGua.js.map} +1 -1
  13. package/dist/{Calendar-CdCKAwuu.js → Calendar-DZnnO3m_.js} +2 -2
  14. package/dist/{Calendar-CdCKAwuu.js.map → Calendar-DZnnO3m_.js.map} +1 -1
  15. package/dist/Calendar.js +2 -2
  16. package/dist/{Checkbox-B3bw3xS2.js → Checkbox-CXfrIo6I.js} +3 -3
  17. package/dist/{Checkbox-B3bw3xS2.js.map → Checkbox-CXfrIo6I.js.map} +1 -1
  18. package/dist/{Checkbox-f7XfiGAL.js → Checkbox-D5-HJC6_.js} +2 -2
  19. package/dist/{Checkbox-f7XfiGAL.js.map → Checkbox-D5-HJC6_.js.map} +1 -1
  20. package/dist/Checkbox.js +1 -1
  21. package/dist/{Chip-ZXGLaddL.js → Chip-DLK31FkK.js} +2 -2
  22. package/dist/{Chip-ZXGLaddL.js.map → Chip-DLK31FkK.js.map} +1 -1
  23. package/dist/Chip.js +1 -1
  24. package/dist/Combobox.js +1 -1
  25. package/dist/{DataTable-BH0A9Sgs.js → DataTable-C_O7nJDd.js} +7 -7
  26. package/dist/{DataTable-BH0A9Sgs.js.map → DataTable-C_O7nJDd.js.map} +1 -1
  27. package/dist/{DateFieldRange-Clz3-KS2.js → DateFieldRange-8JO-rJm-.js} +4 -4
  28. package/dist/{DateFieldRange-Clz3-KS2.js.map → DateFieldRange-8JO-rJm-.js.map} +1 -1
  29. package/dist/DateFieldRange.js +1 -1
  30. package/dist/{DateFieldSingle-C3v2ykj7.js → DateFieldSingle-CrTMTL9v.js} +4 -4
  31. package/dist/{DateFieldSingle-C3v2ykj7.js.map → DateFieldSingle-CrTMTL9v.js.map} +1 -1
  32. package/dist/DateFieldSingle.js +1 -1
  33. package/dist/{DateFieldYearless-CmwuxrLX.js → DateFieldYearless-Bo1V-4K2.js} +4 -4
  34. package/dist/{DateFieldYearless-CmwuxrLX.js.map → DateFieldYearless-Bo1V-4K2.js.map} +1 -1
  35. package/dist/DateFieldYearless.js +1 -1
  36. package/dist/{DateFieldYearlessRange-jjjP4bZ2.js → DateFieldYearlessRange-rj36AQhR.js} +3 -3
  37. package/dist/{DateFieldYearlessRange-jjjP4bZ2.js.map → DateFieldYearlessRange-rj36AQhR.js.map} +1 -1
  38. package/dist/DateFieldYearlessRange.js +1 -1
  39. package/dist/{DaysOfTheWeek-YynjbZa9.js → DaysOfTheWeek-B39FZ-TR.js} +2 -2
  40. package/dist/{DaysOfTheWeek-YynjbZa9.js.map → DaysOfTheWeek-B39FZ-TR.js.map} +1 -1
  41. package/dist/DaysOfTheWeek.js +1 -1
  42. package/dist/{Dialog-BekbulnQ.js → Dialog-C3wxqB-V.js} +4 -4
  43. package/dist/{Dialog-BekbulnQ.js.map → Dialog-C3wxqB-V.js.map} +1 -1
  44. package/dist/Dialog.js +1 -1
  45. package/dist/{Drawer-Cd3KFWSB.js → Drawer-BO_G3ujC.js} +5 -5
  46. package/dist/{Drawer-Cd3KFWSB.js.map → Drawer-BO_G3ujC.js.map} +1 -1
  47. package/dist/Drawer.js +1 -1
  48. package/dist/DrillDown.js +1 -1
  49. package/dist/{EditCard-DF2As9n2.js → EditCard-CtWVEAsA.js} +2 -2
  50. package/dist/{EditCard-DF2As9n2.js.map → EditCard-CtWVEAsA.js.map} +1 -1
  51. package/dist/EditCard.js +1 -1
  52. package/dist/{FieldLabel-C-XG9Dvv.js → FieldLabel-BFJdJP_W.js} +2 -2
  53. package/dist/{FieldLabel-C-XG9Dvv.js.map → FieldLabel-BFJdJP_W.js.map} +1 -1
  54. package/dist/FieldLabel.js +1 -1
  55. package/dist/{FilterBar-xLBpABXu.js → FilterBar-D8jLOWpw.js} +4 -4
  56. package/dist/{FilterBar-xLBpABXu.js.map → FilterBar-D8jLOWpw.js.map} +1 -1
  57. package/dist/FilterBar.js +1 -1
  58. package/dist/{InputMask-ronTKYSD.js → InputMask-DJTXKPmK.js} +3 -3
  59. package/dist/{InputMask-ronTKYSD.js.map → InputMask-DJTXKPmK.js.map} +1 -1
  60. package/dist/InputMask.js +1 -1
  61. package/dist/{ListView-7Zzupb12.js → ListView-CPDHEpD-.js} +2 -2
  62. package/dist/{ListView-7Zzupb12.js.map → ListView-CPDHEpD-.js.map} +1 -1
  63. package/dist/ListView.js +1 -1
  64. package/dist/{Listbox-pFRaZRqy.js → Listbox-Of-WaRWI.js} +2 -2
  65. package/dist/{Listbox-pFRaZRqy.js.map → Listbox-Of-WaRWI.js.map} +1 -1
  66. package/dist/Listbox.js +1 -1
  67. package/dist/{Menu-DNOOmDQC.js → Menu-BMn1CSr1.js} +17 -9
  68. package/dist/Menu-BMn1CSr1.js.map +1 -0
  69. package/dist/Menu.js +1 -1
  70. package/dist/MultiSelectField.js +1 -1
  71. package/dist/{MultiSelectFieldSync-BwMqc4QP.js → MultiSelectFieldSync-D1GrPsmK.js} +6 -6
  72. package/dist/{MultiSelectFieldSync-BwMqc4QP.js.map → MultiSelectFieldSync-D1GrPsmK.js.map} +1 -1
  73. package/dist/MultiSelectMenu.js +1 -1
  74. package/dist/{MultiSelectMenuSync-CraTnzEH.js → MultiSelectMenuSync-DXaQJaFb.js} +4 -4
  75. package/dist/{MultiSelectMenuSync-CraTnzEH.js.map → MultiSelectMenuSync-DXaQJaFb.js.map} +1 -1
  76. package/dist/{NumberField-DbX29dqE.js → NumberField-ASyiQu5l.js} +3 -3
  77. package/dist/{NumberField-DbX29dqE.js.map → NumberField-ASyiQu5l.js.map} +1 -1
  78. package/dist/NumberField.js +1 -1
  79. package/dist/{Page-DQZPAebS.js → Page-Dvdx-9vo.js} +9 -9
  80. package/dist/{Page-DQZPAebS.js.map → Page-Dvdx-9vo.js.map} +1 -1
  81. package/dist/Page.js +1 -1
  82. package/dist/{Pagination-DfQNks5S.js → Pagination-BcW9WJ2b.js} +3 -3
  83. package/dist/{Pagination-DfQNks5S.js.map → Pagination-BcW9WJ2b.js.map} +1 -1
  84. package/dist/Pagination.js +1 -1
  85. package/dist/{Popover-BgqqGh5y.js → Popover-CjsE5FG0.js} +2 -2
  86. package/dist/{Popover-BgqqGh5y.js.map → Popover-CjsE5FG0.js.map} +1 -1
  87. package/dist/Popover.js +1 -1
  88. package/dist/{ProgressBar-BKEDAa-f.js → ProgressBar-C_HXy_Hx.js} +2 -2
  89. package/dist/{ProgressBar-BKEDAa-f.js.map → ProgressBar-C_HXy_Hx.js.map} +1 -1
  90. package/dist/ProgressBar.js +1 -1
  91. package/dist/{Radio-D6YiAttx.js → Radio-B5KxT85j.js} +3 -3
  92. package/dist/{Radio-D6YiAttx.js.map → Radio-B5KxT85j.js.map} +1 -1
  93. package/dist/{Radio-DJhh0wxb.js → Radio-CBQpuxLP.js} +2 -2
  94. package/dist/{Radio-DJhh0wxb.js.map → Radio-CBQpuxLP.js.map} +1 -1
  95. package/dist/Radio.js +1 -1
  96. package/dist/{RichTextEditor-BXPBSBUb.js → RichTextEditor-C8V3BajN.js} +9 -9
  97. package/dist/{RichTextEditor-BXPBSBUb.js.map → RichTextEditor-C8V3BajN.js.map} +1 -1
  98. package/dist/RichTextEditor.js +1 -1
  99. package/dist/{SavedFiltersButton-CIrXkFKk.js → SavedFiltersButton-BKdyw-84.js} +9 -9
  100. package/dist/{SavedFiltersButton-CIrXkFKk.js.map → SavedFiltersButton-BKdyw-84.js.map} +1 -1
  101. package/dist/SavedFiltersButton.js +1 -1
  102. package/dist/{SelectCard-M6FsTBA4.js → SelectCard-DbWOdnuI.js} +3 -3
  103. package/dist/{SelectCard-M6FsTBA4.js.map → SelectCard-DbWOdnuI.js.map} +1 -1
  104. package/dist/SelectCard.js +1 -1
  105. package/dist/SelectField.js +1 -1
  106. package/dist/{SelectFieldLabel-CgtazsA_.js → SelectFieldLabel-CujwhWLB.js} +2 -2
  107. package/dist/{SelectFieldLabel-CgtazsA_.js.map → SelectFieldLabel-CujwhWLB.js.map} +1 -1
  108. package/dist/{SelectFieldSync-3RX9nnSN.js → SelectFieldSync-CXJ_vM_r.js} +5 -5
  109. package/dist/{SelectFieldSync-3RX9nnSN.js.map → SelectFieldSync-CXJ_vM_r.js.map} +1 -1
  110. package/dist/SelectMenu.js +1 -1
  111. package/dist/{SelectMenuSync-BS7u10Oq.js → SelectMenuSync-fgPfAK2H.js} +4 -4
  112. package/dist/{SelectMenuSync-BS7u10Oq.js.map → SelectMenuSync-fgPfAK2H.js.map} +1 -1
  113. package/dist/{SelectOptions-CVkf5lLa.js → SelectOptions-DnCivsmF.js} +2 -2
  114. package/dist/{SelectOptions-CVkf5lLa.js.map → SelectOptions-DnCivsmF.js.map} +1 -1
  115. package/dist/{SelectTrigger-1dUFQ1dW.js → SelectTrigger-QkI2I04A.js} +2 -2
  116. package/dist/{SelectTrigger-1dUFQ1dW.js.map → SelectTrigger-QkI2I04A.js.map} +1 -1
  117. package/dist/SelectTrigger.js +1 -1
  118. package/dist/{SelectTriggerBase-D_Os9knB.js → SelectTriggerBase-C5C6JmDF.js} +3 -3
  119. package/dist/{SelectTriggerBase-D_Os9knB.js.map → SelectTriggerBase-C5C6JmDF.js.map} +1 -1
  120. package/dist/{Stepper-z1y9AfaJ.js → Stepper-CCKHWlUr.js} +497 -121
  121. package/dist/Stepper-CCKHWlUr.js.map +1 -0
  122. package/dist/Stepper.css +19 -16
  123. package/dist/Stepper.js +1 -1
  124. package/dist/{Switch-DnhE6CHy.js → Switch-MfbL3JVk.js} +2 -2
  125. package/dist/{Switch-DnhE6CHy.js.map → Switch-MfbL3JVk.js.map} +1 -1
  126. package/dist/Switch.js +1 -1
  127. package/dist/Table.js +1 -1
  128. package/dist/{Text-BT1MnQrn.js → Text-CEJHoh0p.js} +2 -2
  129. package/dist/{Text-BT1MnQrn.js.map → Text-CEJHoh0p.js.map} +1 -1
  130. package/dist/Text.js +1 -1
  131. package/dist/{TextField-1RXT8l7y.js → TextField-DTbZOxwI.js} +3 -3
  132. package/dist/{TextField-1RXT8l7y.js.map → TextField-DTbZOxwI.js.map} +1 -1
  133. package/dist/{TextField-ClFi79P0.js → TextField-DWbDQfHY.js} +2 -2
  134. package/dist/{TextField-ClFi79P0.js.map → TextField-DWbDQfHY.js.map} +1 -1
  135. package/dist/TextField.js +1 -1
  136. package/dist/{Textarea-CuR8d8LC.js → Textarea-CSXwaDf6.js} +3 -3
  137. package/dist/{Textarea-CuR8d8LC.js.map → Textarea-CSXwaDf6.js.map} +1 -1
  138. package/dist/Textarea.js +1 -1
  139. package/dist/{TimeField-CAPMDE4E.js → TimeField-BY_hasgp.js} +4 -4
  140. package/dist/{TimeField-CAPMDE4E.js.map → TimeField-BY_hasgp.js.map} +1 -1
  141. package/dist/TimeField.js +1 -1
  142. package/dist/Toast.js +2 -2
  143. package/dist/{Toaster-tJvMxWQq.js → Toaster-CEJo8hNY.js} +2 -2
  144. package/dist/{Toaster-tJvMxWQq.js.map → Toaster-CEJo8hNY.js.map} +1 -1
  145. package/dist/{Toaster-Ci4s1BZB.js → Toaster-CJW-ZD3D.js} +3 -3
  146. package/dist/{Toaster-Ci4s1BZB.js.map → Toaster-CJW-ZD3D.js.map} +1 -1
  147. package/dist/{Toolbar-B2kSQ2dc.js → Toolbar-BDjgSnCU.js} +3 -3
  148. package/dist/{Toolbar-B2kSQ2dc.js.map → Toolbar-BDjgSnCU.js.map} +1 -1
  149. package/dist/{Toolbar-BnXIEZcV.js → Toolbar-neulke7h.js} +3 -3
  150. package/dist/{Toolbar-BnXIEZcV.js.map → Toolbar-neulke7h.js.map} +1 -1
  151. package/dist/Toolbar.js +1 -1
  152. package/dist/TreeSelectField.js +1 -1
  153. package/dist/{TreeSelectFieldSync-hA3wCFMS.js → TreeSelectFieldSync-KV1A8ixs.js} +5 -5
  154. package/dist/{TreeSelectFieldSync-hA3wCFMS.js.map → TreeSelectFieldSync-KV1A8ixs.js.map} +1 -1
  155. package/dist/TreeSelectMenu.js +1 -1
  156. package/dist/{TreeSelectMenuSync-CV92JUPb.js → TreeSelectMenuSync-sn_p39Sm.js} +3 -3
  157. package/dist/{TreeSelectMenuSync-CV92JUPb.js.map → TreeSelectMenuSync-sn_p39Sm.js.map} +1 -1
  158. package/dist/{TypeaheadTextField-C1Mxy1l6.js → TypeaheadTextField-CEWM_N-N.js} +3 -3
  159. package/dist/{TypeaheadTextField-C1Mxy1l6.js.map → TypeaheadTextField-CEWM_N-N.js.map} +1 -1
  160. package/dist/TypeaheadTextField.js +1 -1
  161. package/dist/{YearlessDateInputWithPicker-Dq_UMQEP.js → YearlessDateInputWithPicker-D6N_mYDe.js} +2 -2
  162. package/dist/{YearlessDateInputWithPicker-Dq_UMQEP.js.map → YearlessDateInputWithPicker-D6N_mYDe.js.map} +1 -1
  163. package/dist/beta.js +15 -15
  164. package/dist/{bulkActionTypes-CdorQGKt.js → bulkActionTypes-KRa7Hs6l.js} +2 -2
  165. package/dist/{bulkActionTypes-CdorQGKt.js.map → bulkActionTypes-KRa7Hs6l.js.map} +1 -1
  166. package/dist/{filter-state-CsRd-cja.js → filter-state-DY4aB2Yl.js} +18 -18
  167. package/dist/{filter-state-CsRd-cja.js.map → filter-state-DY4aB2Yl.js.map} +1 -1
  168. package/dist/{index-DkEGGc6F.js → index-BY2uMI6I.js} +2 -2
  169. package/dist/{index-DkEGGc6F.js.map → index-BY2uMI6I.js.map} +1 -1
  170. package/dist/index.js +42 -42
  171. package/dist/src/components/Stepper/base/StepperBase.d.ts +114 -0
  172. package/dist/src/components/Stepper/base/StepperBaseList.d.ts +21 -0
  173. package/dist/src/components/Stepper/base/StepperBasePanel.d.ts +40 -0
  174. package/dist/src/components/Stepper/base/StepperBaseStep.d.ts +66 -0
  175. package/dist/src/components/Stepper/base/index.d.ts +5 -0
  176. package/dist/src/components/Stepper/base/internal/StepperBaseContext.d.ts +39 -0
  177. package/dist/src/components/Stepper/base/internal/StepperStepIndexScope.d.ts +4 -0
  178. package/dist/src/components/Stepper/index.d.ts +1 -0
  179. package/dist/src/components/Stepper/internal/StepperContext.d.ts +0 -1
  180. package/dist/src/components/Stepper/internal/StepperWizardBootstrap.d.ts +3 -0
  181. package/dist/src/components/Stepper/internal/countRegisteredSteps.d.ts +2 -0
  182. package/dist/{stripInlineMarkdown-BVD5dm2G.js → stripInlineMarkdown-BGdIj-cj.js} +2 -2
  183. package/dist/{stripInlineMarkdown-BVD5dm2G.js.map → stripInlineMarkdown-BGdIj-cj.js.map} +1 -1
  184. package/dist/{syncFilterUtils-BJSyhkTT.js → syncFilterUtils-B6bmn3bo.js} +3 -3
  185. package/dist/{syncFilterUtils-BJSyhkTT.js.map → syncFilterUtils-B6bmn3bo.js.map} +1 -1
  186. package/dist/{treeSync-CDHaWosp.js → treeSync-iLxsTFYf.js} +3 -3
  187. package/dist/{treeSync-CDHaWosp.js.map → treeSync-iLxsTFYf.js.map} +1 -1
  188. package/dist/{useAdaptiveView-BVvKVT5q.js → useAdaptiveView-Q30aklTE.js} +4 -4
  189. package/dist/{useAdaptiveView-BVvKVT5q.js.map → useAdaptiveView-Q30aklTE.js.map} +1 -1
  190. package/dist/{useDrilldown-CXFqySME.js → useDrilldown-D5iDWSx7.js} +3 -3
  191. package/dist/{useDrilldown-CXFqySME.js.map → useDrilldown-D5iDWSx7.js.map} +1 -1
  192. package/dist/{useInfiniteCombobox-lT_gZZjN.js → useInfiniteCombobox-DRd_Fp1w.js} +4 -4
  193. package/dist/{useInfiniteCombobox-lT_gZZjN.js.map → useInfiniteCombobox-DRd_Fp1w.js.map} +1 -1
  194. package/dist/{useInitialFocus-BIvXK1Rp.js → useInitialFocus-BUxEDMEG.js} +2 -2
  195. package/dist/{useInitialFocus-BIvXK1Rp.js.map → useInitialFocus-BUxEDMEG.js.map} +1 -1
  196. package/dist/{usePopoverTransitionStates-B1opfxxn.js → usePopoverTransitionStates-CDXCdyKa.js} +2 -1
  197. package/dist/{usePopoverTransitionStates-B1opfxxn.js.map → usePopoverTransitionStates-CDXCdyKa.js.map} +1 -1
  198. package/package.json +1 -1
  199. package/dist/Menu-DNOOmDQC.js.map +0 -1
  200. package/dist/Stepper-z1y9AfaJ.js.map +0 -1
package/dist/AiMark.js CHANGED
@@ -1,2 +1,2 @@
1
- export { A as AiMark } from './AiMark-BqRDRySA.js';
1
+ export { A as AiMark } from './AiMark-Bf0x9FF3.js';
2
2
  //# sourceMappingURL=AiMark.js.map
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { forwardRef } from 'react';
3
3
  import { S as SvgClose } from './close-DZj38AEh.js';
4
4
  import { B as Button } from './Button-Dwh_Nd4l.js';
5
- import { T as Text } from './Text-BT1MnQrn.js';
5
+ import { T as Text } from './Text-CEJHoh0p.js';
6
6
  import { c as cx } from './index-De1g9FRV.js';
7
7
  import { S as StatusIcon } from './StatusIcon-BwULopyH.js';
8
8
  import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DjqeAJZ9.js';
@@ -113,4 +113,4 @@ const Alert = forwardRef(
113
113
  Alert.displayName = "Alert";
114
114
 
115
115
  export { Alert as A };
116
- //# sourceMappingURL=Alert-CWwBGGP3.js.map
116
+ //# sourceMappingURL=Alert-S4D2DGx7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Alert-CWwBGGP3.js","sources":["../src/components/Alert/Alert.tsx"],"sourcesContent":["import {\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type Ref,\n forwardRef,\n} from \"react\";\nimport { useTrackingId } from \"../../hooks\";\nimport type {\n DataTrackingId,\n LayoutUtilProps,\n OnCloseProps,\n Status,\n} from \"../../types\";\nimport Close from \"@servicetitan/hammer-icon/mdi/round/close.svg\";\nimport Button from \"../Button\";\nimport { Text } from \"../Text\";\nimport type { AiMarkWithTooltipOrPopoverConfig } from \"../../types/ai-marks\";\n\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport cx from \"classnames\";\nimport styles from \"./Alert.module.scss\";\nimport {\n StatusIcon,\n type StatusIconVariant,\n} from \"../../internal/components/StatusIcon/StatusIcon\";\n\n/**\n * Props for the Alert component\n * @extends ComponentPropsWithoutRef<\"div\">\n * @extends LayoutUtilProps\n * @extends OnCloseProps\n */\nexport type AlertProps = ComponentPropsWithoutRef<\"div\"> &\n LayoutUtilProps &\n OnCloseProps & {\n /**\n * The visual style of an alert.\n * @default info\n */\n status?: Status;\n /**\n * The title text displayed in the alert.\n */\n title: string;\n /**\n * When set, displays the AI mark inline after the title.\n * Use `true` for the sparkle only, or pass tooltip/popover configuration.\n */\n aiMark?: boolean | AiMarkWithTooltipOrPopoverConfig;\n } /**\n * Data tracking id\n */ & DataTrackingId;\n\n/**\n * Alert component for displaying an inline banner message that communicates status to users — errors, warnings, success, or important information within page content.\n *\n * Features:\n * - Supports different visual styles (info, success, warning, danger)\n * - Optional close button for dismissible alerts\n * - Optional AI mark inline after the title\n * - Customizable title and content\n * - Accessible with proper ARIA roles\n * - Includes status-specific icons\n * - Supports layout utilities for positioning and spacing\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Alert\n * title=\"System Update\"\n * onClose={() => console.log('Alert closed')}\n * >\n * The system will be updated tonight.\n * </Alert>\n *\n * @example\n * <Alert\n * status=\"success\"\n * title=\"Operation Complete\"\n * >\n * Your changes have been saved successfully.\n * </Alert>\n */\nexport const Alert = forwardRef(\n (props: AlertProps, ref: Ref<HTMLDivElement>) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n children,\n className,\n title,\n status = \"info\",\n style,\n onClose,\n aiMark,\n ...rest\n } = componentProps;\n\n const data = {\n title,\n status,\n };\n\n const trackingId = useTrackingId({\n name: \"Alert\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const alertCx = cx(styles[\"alert\"], className, {\n [styles[\"success\"]]: status === \"success\",\n [styles[\"warning\"]]: status === \"warning\",\n [styles[\"danger\"]]: status === \"danger\",\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <div\n data-tracking-id={trackingId}\n data-anv=\"alert\"\n role=\"status\"\n className={alertCx}\n style={styleCombined}\n {...rest}\n ref={ref}\n >\n <div className={styles[\"top\"]}>\n <span className={styles[\"title-container\"]}>\n <StatusIcon\n className={styles[\"status-icon\"]}\n size=\"small\"\n variant={\n status === \"danger\" ? \"error\" : (status as StatusIconVariant)\n }\n />\n <Text\n variant=\"headline\"\n el=\"h6\"\n size=\"small\"\n className={styles[\"title\"]}\n aiMark={aiMark || undefined}\n >\n {title}\n </Text>\n </span>\n {!!onClose && (\n <span className={styles[\"close-container\"]}>\n <Button\n icon={Close}\n size=\"small\"\n appearance=\"ghost\"\n className={styles[\"close-button\"]}\n onClick={(e: MouseEvent<HTMLButtonElement>) => onClose(e)}\n aria-label={`Dismiss ${status} alert`}\n />\n </span>\n )}\n </div>\n {children && <div className={styles[\"content\"]}>{children}</div>}\n </div>\n );\n },\n);\n\nAlert.displayName = \"Alert\";\n"],"names":["Close"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmFO,MAAM,KAAA,GAAQ,UAAA;AAAA,EACnB,CAAC,OAAmB,GAAA,KAA6B;AAC/C,IAAA,MAAM,EAAE,YAAA,EAAc,cAAA,EAAe,GAAI,mBAAmB,KAAK,CAAA;AACjE,IAAA,MAAM;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,KAAA;AAAA,MACA,MAAA,GAAS,MAAA;AAAA,MACT,KAAA;AAAA,MACA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,GAAG;AAAA,KACL,GAAI,cAAA;AAEJ,IAAA,MAAM,IAAA,GAAO;AAAA,MACX,KAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,MAAM,aAAa,aAAA,CAAc;AAAA,MAC/B,IAAA,EAAM,OAAA;AAAA,MACN,IAAA;AAAA,MACA,WAAA,EAAa,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,KACxC,CAAA;AAED,IAAA,MAAM,OAAA,GAAU,EAAA,CAAG,MAAA,CAAO,OAAO,GAAG,SAAA,EAAW;AAAA,MAC7C,CAAC,MAAA,CAAO,SAAS,CAAC,GAAG,MAAA,KAAW,SAAA;AAAA,MAChC,CAAC,MAAA,CAAO,SAAS,CAAC,GAAG,MAAA,KAAW,SAAA;AAAA,MAChC,CAAC,MAAA,CAAO,QAAQ,CAAC,GAAG,MAAA,KAAW;AAAA,KAChC,CAAA;AAED,IAAA,MAAM,aAAA,GAAgB;AAAA,MACpB,GAAG,KAAA;AAAA,MACH,GAAG;AAAA,KACL;AAEA,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,kBAAA,EAAkB,UAAA;AAAA,QAClB,UAAA,EAAS,OAAA;AAAA,QACT,IAAA,EAAK,QAAA;AAAA,QACL,SAAA,EAAW,OAAA;AAAA,QACX,KAAA,EAAO,aAAA;AAAA,QACN,GAAG,IAAA;AAAA,QACJ,GAAA;AAAA,QAEA,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,KAAK,CAAA,EAC1B,QAAA,EAAA;AAAA,4BAAA,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,MAAA,CAAO,iBAAiB,CAAA,EACvC,QAAA,EAAA;AAAA,8BAAA,GAAA;AAAA,gBAAC,UAAA;AAAA,gBAAA;AAAA,kBACC,SAAA,EAAW,OAAO,aAAa,CAAA;AAAA,kBAC/B,IAAA,EAAK,OAAA;AAAA,kBACL,OAAA,EACE,MAAA,KAAW,QAAA,GAAW,OAAA,GAAW;AAAA;AAAA,eAErC;AAAA,8BACA,GAAA;AAAA,gBAAC,IAAA;AAAA,gBAAA;AAAA,kBACC,OAAA,EAAQ,UAAA;AAAA,kBACR,EAAA,EAAG,IAAA;AAAA,kBACH,IAAA,EAAK,OAAA;AAAA,kBACL,SAAA,EAAW,OAAO,OAAO,CAAA;AAAA,kBACzB,QAAQ,MAAA,IAAU,MAAA;AAAA,kBAEjB,QAAA,EAAA;AAAA;AAAA;AACH,aAAA,EACF,CAAA;AAAA,YACC,CAAC,CAAC,OAAA,oBACD,GAAA,CAAC,UAAK,SAAA,EAAW,MAAA,CAAO,iBAAiB,CAAA,EACvC,QAAA,kBAAA,GAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBACC,IAAA,EAAMA,QAAA;AAAA,gBACN,IAAA,EAAK,OAAA;AAAA,gBACL,UAAA,EAAW,OAAA;AAAA,gBACX,SAAA,EAAW,OAAO,cAAc,CAAA;AAAA,gBAChC,OAAA,EAAS,CAAC,CAAA,KAAqC,OAAA,CAAQ,CAAC,CAAA;AAAA,gBACxD,YAAA,EAAY,WAAW,MAAM,CAAA,MAAA;AAAA;AAAA,aAC/B,EACF;AAAA,WAAA,EAEJ,CAAA;AAAA,UACC,4BAAY,GAAA,CAAC,KAAA,EAAA,EAAI,WAAW,MAAA,CAAO,SAAS,GAAI,QAAA,EAAS;AAAA;AAAA;AAAA,KAC5D;AAAA,EAEJ;AACF;AAEA,KAAA,CAAM,WAAA,GAAc,OAAA;;;;"}
1
+ {"version":3,"file":"Alert-S4D2DGx7.js","sources":["../src/components/Alert/Alert.tsx"],"sourcesContent":["import {\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type Ref,\n forwardRef,\n} from \"react\";\nimport { useTrackingId } from \"../../hooks\";\nimport type {\n DataTrackingId,\n LayoutUtilProps,\n OnCloseProps,\n Status,\n} from \"../../types\";\nimport Close from \"@servicetitan/hammer-icon/mdi/round/close.svg\";\nimport Button from \"../Button\";\nimport { Text } from \"../Text\";\nimport type { AiMarkWithTooltipOrPopoverConfig } from \"../../types/ai-marks\";\n\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport cx from \"classnames\";\nimport styles from \"./Alert.module.scss\";\nimport {\n StatusIcon,\n type StatusIconVariant,\n} from \"../../internal/components/StatusIcon/StatusIcon\";\n\n/**\n * Props for the Alert component\n * @extends ComponentPropsWithoutRef<\"div\">\n * @extends LayoutUtilProps\n * @extends OnCloseProps\n */\nexport type AlertProps = ComponentPropsWithoutRef<\"div\"> &\n LayoutUtilProps &\n OnCloseProps & {\n /**\n * The visual style of an alert.\n * @default info\n */\n status?: Status;\n /**\n * The title text displayed in the alert.\n */\n title: string;\n /**\n * When set, displays the AI mark inline after the title.\n * Use `true` for the sparkle only, or pass tooltip/popover configuration.\n */\n aiMark?: boolean | AiMarkWithTooltipOrPopoverConfig;\n } /**\n * Data tracking id\n */ & DataTrackingId;\n\n/**\n * Alert component for displaying an inline banner message that communicates status to users — errors, warnings, success, or important information within page content.\n *\n * Features:\n * - Supports different visual styles (info, success, warning, danger)\n * - Optional close button for dismissible alerts\n * - Optional AI mark inline after the title\n * - Customizable title and content\n * - Accessible with proper ARIA roles\n * - Includes status-specific icons\n * - Supports layout utilities for positioning and spacing\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Alert\n * title=\"System Update\"\n * onClose={() => console.log('Alert closed')}\n * >\n * The system will be updated tonight.\n * </Alert>\n *\n * @example\n * <Alert\n * status=\"success\"\n * title=\"Operation Complete\"\n * >\n * Your changes have been saved successfully.\n * </Alert>\n */\nexport const Alert = forwardRef(\n (props: AlertProps, ref: Ref<HTMLDivElement>) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n children,\n className,\n title,\n status = \"info\",\n style,\n onClose,\n aiMark,\n ...rest\n } = componentProps;\n\n const data = {\n title,\n status,\n };\n\n const trackingId = useTrackingId({\n name: \"Alert\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const alertCx = cx(styles[\"alert\"], className, {\n [styles[\"success\"]]: status === \"success\",\n [styles[\"warning\"]]: status === \"warning\",\n [styles[\"danger\"]]: status === \"danger\",\n });\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <div\n data-tracking-id={trackingId}\n data-anv=\"alert\"\n role=\"status\"\n className={alertCx}\n style={styleCombined}\n {...rest}\n ref={ref}\n >\n <div className={styles[\"top\"]}>\n <span className={styles[\"title-container\"]}>\n <StatusIcon\n className={styles[\"status-icon\"]}\n size=\"small\"\n variant={\n status === \"danger\" ? \"error\" : (status as StatusIconVariant)\n }\n />\n <Text\n variant=\"headline\"\n el=\"h6\"\n size=\"small\"\n className={styles[\"title\"]}\n aiMark={aiMark || undefined}\n >\n {title}\n </Text>\n </span>\n {!!onClose && (\n <span className={styles[\"close-container\"]}>\n <Button\n icon={Close}\n size=\"small\"\n appearance=\"ghost\"\n className={styles[\"close-button\"]}\n onClick={(e: MouseEvent<HTMLButtonElement>) => onClose(e)}\n aria-label={`Dismiss ${status} alert`}\n />\n </span>\n )}\n </div>\n {children && <div className={styles[\"content\"]}>{children}</div>}\n </div>\n );\n },\n);\n\nAlert.displayName = \"Alert\";\n"],"names":["Close"],"mappings":"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"}
package/dist/Alert.js CHANGED
@@ -1,2 +1,2 @@
1
- export { A as Alert, A as default } from './Alert-CWwBGGP3.js';
1
+ export { A as Alert, A as default } from './Alert-S4D2DGx7.js';
2
2
  //# sourceMappingURL=Alert.js.map
@@ -4,7 +4,7 @@ import { forwardRef, Children, cloneElement } from 'react';
4
4
  import { c as cx } from './index-De1g9FRV.js';
5
5
  import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DjqeAJZ9.js';
6
6
  import { L as Link } from './Link-D7ycmfQ_.js';
7
- import { T as Text } from './Text-BT1MnQrn.js';
7
+ import { T as Text } from './Text-CEJHoh0p.js';
8
8
  import { I as Icon } from './Icon-B5zwN7GD.js';
9
9
 
10
10
  import './Breadcrumbs.css';const SvgChevronRight = (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 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z" }));
@@ -96,4 +96,4 @@ const Breadcrumbs = Object.assign(
96
96
  Breadcrumbs.displayName = "Breadcrumbs";
97
97
 
98
98
  export { Breadcrumbs as B };
99
- //# sourceMappingURL=Breadcrumbs-FZO4lrPG.js.map
99
+ //# sourceMappingURL=Breadcrumbs-CR1od1rZ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumbs-FZO4lrPG.js","sources":["../../hammer-icon/mdi/filled/chevron_right.svg","../src/components/Breadcrumbs/BreadcrumbsLink.tsx","../src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgChevronRight = (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 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z\" }));\nexport default SvgChevronRight;\n","import { type ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport cx from \"classnames\";\n\nimport type { LayoutUtilProps } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { Link, Text } from \"../\";\n\nimport styles from \"./Breadcrumbs.module.scss\";\n\n/**\n * Props for the BreadcrumbsLink component\n * @extends ComponentPropsWithoutRef<\"a\">\n * @extends LayoutUtilProps\n */\nexport type BreadcrumbsLinkProps = ComponentPropsWithoutRef<\"a\"> &\n LayoutUtilProps;\n\n/**\n * BreadcrumbsLink component for individual breadcrumb navigation items.\n *\n * Features:\n * - Renders as a clickable link with secondary appearance\n * - Supports all standard anchor element props\n * - Includes layout utilities for positioning and spacing\n * - Uses small text size for consistent styling\n * - Fully accessible with proper focus management\n * - Automatically applies secondary link styling\n *\n * @example\n * <BreadcrumbsLink href=\"/dashboard\">Dashboard</BreadcrumbsLink>\n */\nexport const BreadcrumbsLink = forwardRef<\n HTMLAnchorElement,\n BreadcrumbsLinkProps\n>((props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { children, className, style, ...rest } = componentProps;\n\n const classes = cx([styles[\"breadcrumbs-link\"]], className, {});\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <Link\n tabIndex={0}\n data-anv=\"breadcrumbs-link\"\n style={styleCombined}\n appearance=\"secondary\"\n className={classes}\n {...rest}\n ref={ref}\n >\n <Text size=\"small\" inline>\n {children}\n </Text>\n </Link>\n );\n});\n\nBreadcrumbsLink.displayName = \"BreadcrumbsLink\";\n","import {\n Children,\n type ComponentPropsWithoutRef,\n type ReactElement,\n cloneElement,\n forwardRef,\n} from \"react\";\nimport cx from \"classnames\";\nimport ChevronRight from \"@servicetitan/hammer-icon/mdi/filled/chevron_right.svg\";\n\nimport type { LayoutUtilProps } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { Icon, Text } from \"../\";\n\nimport styles from \"./Breadcrumbs.module.scss\";\nimport { BreadcrumbsLink, type BreadcrumbsLinkProps } from \"./BreadcrumbsLink\";\n\n/**\n * Props for the Breadcrumbs component\n * @extends ComponentPropsWithoutRef<\"nav\">\n * @extends LayoutUtilProps\n */\nexport type BreadcrumbsProps = ComponentPropsWithoutRef<\"nav\"> &\n LayoutUtilProps & {\n /**\n * Breadcrumb links to display. The last child will be rendered as non-clickable text.\n */\n children:\n | ReactElement<BreadcrumbsLinkProps>\n | ReactElement<BreadcrumbsLinkProps>[];\n };\n\n/**\n * Breadcrumbs component for displaying navigation hierarchy.\n *\n * Features:\n * - Displays a series of navigation links with chevron separators\n * - Automatically renders the last item as non-clickable text\n * - Includes proper ARIA labeling for accessibility\n * - Supports layout utilities for positioning and spacing\n * - Uses chevron icons as visual separators between links\n * - Responsive design with flexbox layout\n *\n * @example\n * <Breadcrumbs>\n * <Breadcrumbs.Link href=\"/home\">Home</Breadcrumbs.Link>\n * <Breadcrumbs.Link href=\"/products\">Products</Breadcrumbs.Link>\n * <Breadcrumbs.Link href=\"/electronics\">Electronics</Breadcrumbs.Link>\n * </Breadcrumbs>\n */\nexport const Breadcrumbs = Object.assign(\n forwardRef<HTMLElement, BreadcrumbsProps>(\n function BreadcrumbsInner(props, ref) {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { children, className, style, ...rest } = componentProps;\n\n const classes = cx([styles[\"breadcrumbs\"]], className, {});\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n const linkCount = Children.count(children);\n\n return (\n <nav\n data-anv=\"breadcrumbs\"\n style={styleCombined}\n className={classes}\n aria-label=\"Breadcrumb\"\n {...rest}\n ref={ref}\n >\n {Children.map(children, (link, i) => {\n if (i + 1 === linkCount) {\n return (\n <Text inline size=\"small\" className={styles[\"current\"]}>\n {link.props.children}\n </Text>\n );\n } else {\n return (\n <>\n {cloneElement(link as ReactElement)}\n <Icon svg={ChevronRight} aria-hidden=\"true\" />\n </>\n );\n }\n })}\n </nav>\n );\n },\n ),\n {\n /**\n * BreadcrumbsLink component for individual breadcrumb navigation items.\n *\n * Features:\n * - Renders as a clickable link with secondary appearance\n * - Supports all standard anchor element props\n * - Includes layout utilities for positioning and spacing\n * - Uses small text size for consistent styling\n * - Fully accessible with proper focus management\n * - Automatically applies secondary link styling\n *\n * @example\n * <Breadcrumbs.Link href=\"/dashboard\">Dashboard</Breadcrumbs.Link>\n */\n Link: BreadcrumbsLink,\n },\n);\nBreadcrumbs.displayName = \"Breadcrumbs\";\n"],"names":["ChevronRight"],"mappings":"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"}
1
+ {"version":3,"file":"Breadcrumbs-CR1od1rZ.js","sources":["../../hammer-icon/mdi/filled/chevron_right.svg","../src/components/Breadcrumbs/BreadcrumbsLink.tsx","../src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgChevronRight = (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 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z\" }));\nexport default SvgChevronRight;\n","import { type ComponentPropsWithoutRef, forwardRef } from \"react\";\nimport cx from \"classnames\";\n\nimport type { LayoutUtilProps } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { Link, Text } from \"../\";\n\nimport styles from \"./Breadcrumbs.module.scss\";\n\n/**\n * Props for the BreadcrumbsLink component\n * @extends ComponentPropsWithoutRef<\"a\">\n * @extends LayoutUtilProps\n */\nexport type BreadcrumbsLinkProps = ComponentPropsWithoutRef<\"a\"> &\n LayoutUtilProps;\n\n/**\n * BreadcrumbsLink component for individual breadcrumb navigation items.\n *\n * Features:\n * - Renders as a clickable link with secondary appearance\n * - Supports all standard anchor element props\n * - Includes layout utilities for positioning and spacing\n * - Uses small text size for consistent styling\n * - Fully accessible with proper focus management\n * - Automatically applies secondary link styling\n *\n * @example\n * <BreadcrumbsLink href=\"/dashboard\">Dashboard</BreadcrumbsLink>\n */\nexport const BreadcrumbsLink = forwardRef<\n HTMLAnchorElement,\n BreadcrumbsLinkProps\n>((props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { children, className, style, ...rest } = componentProps;\n\n const classes = cx([styles[\"breadcrumbs-link\"]], className, {});\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n return (\n <Link\n tabIndex={0}\n data-anv=\"breadcrumbs-link\"\n style={styleCombined}\n appearance=\"secondary\"\n className={classes}\n {...rest}\n ref={ref}\n >\n <Text size=\"small\" inline>\n {children}\n </Text>\n </Link>\n );\n});\n\nBreadcrumbsLink.displayName = \"BreadcrumbsLink\";\n","import {\n Children,\n type ComponentPropsWithoutRef,\n type ReactElement,\n cloneElement,\n forwardRef,\n} from \"react\";\nimport cx from \"classnames\";\nimport ChevronRight from \"@servicetitan/hammer-icon/mdi/filled/chevron_right.svg\";\n\nimport type { LayoutUtilProps } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { Icon, Text } from \"../\";\n\nimport styles from \"./Breadcrumbs.module.scss\";\nimport { BreadcrumbsLink, type BreadcrumbsLinkProps } from \"./BreadcrumbsLink\";\n\n/**\n * Props for the Breadcrumbs component\n * @extends ComponentPropsWithoutRef<\"nav\">\n * @extends LayoutUtilProps\n */\nexport type BreadcrumbsProps = ComponentPropsWithoutRef<\"nav\"> &\n LayoutUtilProps & {\n /**\n * Breadcrumb links to display. The last child will be rendered as non-clickable text.\n */\n children:\n | ReactElement<BreadcrumbsLinkProps>\n | ReactElement<BreadcrumbsLinkProps>[];\n };\n\n/**\n * Breadcrumbs component for displaying navigation hierarchy.\n *\n * Features:\n * - Displays a series of navigation links with chevron separators\n * - Automatically renders the last item as non-clickable text\n * - Includes proper ARIA labeling for accessibility\n * - Supports layout utilities for positioning and spacing\n * - Uses chevron icons as visual separators between links\n * - Responsive design with flexbox layout\n *\n * @example\n * <Breadcrumbs>\n * <Breadcrumbs.Link href=\"/home\">Home</Breadcrumbs.Link>\n * <Breadcrumbs.Link href=\"/products\">Products</Breadcrumbs.Link>\n * <Breadcrumbs.Link href=\"/electronics\">Electronics</Breadcrumbs.Link>\n * </Breadcrumbs>\n */\nexport const Breadcrumbs = Object.assign(\n forwardRef<HTMLElement, BreadcrumbsProps>(\n function BreadcrumbsInner(props, ref) {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { children, className, style, ...rest } = componentProps;\n\n const classes = cx([styles[\"breadcrumbs\"]], className, {});\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n const linkCount = Children.count(children);\n\n return (\n <nav\n data-anv=\"breadcrumbs\"\n style={styleCombined}\n className={classes}\n aria-label=\"Breadcrumb\"\n {...rest}\n ref={ref}\n >\n {Children.map(children, (link, i) => {\n if (i + 1 === linkCount) {\n return (\n <Text inline size=\"small\" className={styles[\"current\"]}>\n {link.props.children}\n </Text>\n );\n } else {\n return (\n <>\n {cloneElement(link as ReactElement)}\n <Icon svg={ChevronRight} aria-hidden=\"true\" />\n </>\n );\n }\n })}\n </nav>\n );\n },\n ),\n {\n /**\n * BreadcrumbsLink component for individual breadcrumb navigation items.\n *\n * Features:\n * - Renders as a clickable link with secondary appearance\n * - Supports all standard anchor element props\n * - Includes layout utilities for positioning and spacing\n * - Uses small text size for consistent styling\n * - Fully accessible with proper focus management\n * - Automatically applies secondary link styling\n *\n * @example\n * <Breadcrumbs.Link href=\"/dashboard\">Dashboard</Breadcrumbs.Link>\n */\n Link: BreadcrumbsLink,\n },\n);\nBreadcrumbs.displayName = \"Breadcrumbs\";\n"],"names":["ChevronRight"],"mappings":";;;;;;;;;AACA,MAAM,eAAe,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,gDAAgD,EAAE,CAAC,CAAC;;;;;;;;;;AC8BlR,MAAM,eAAA,GAAkB,UAAA,CAG7B,CAAC,KAAA,EAAO,GAAA,KAAQ;AAChB,EAAA,MAAM,EAAE,YAAA,EAAc,cAAA,EAAe,GAAI,mBAAmB,KAAK,CAAA;AACjE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,KAAA,EAAO,GAAG,MAAK,GAAI,cAAA;AAEhD,EAAA,MAAM,OAAA,GAAU,GAAG,CAAC,MAAA,CAAO,kBAAkB,CAAC,CAAA,EAAG,SAAA,EAAW,EAAE,CAAA;AAE9D,EAAA,MAAM,aAAA,GAAgB;AAAA,IACpB,GAAG,KAAA;AAAA,IACH,GAAG;AAAA,GACL;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,QAAA,EAAU,CAAA;AAAA,MACV,UAAA,EAAS,kBAAA;AAAA,MACT,KAAA,EAAO,aAAA;AAAA,MACP,UAAA,EAAW,WAAA;AAAA,MACX,SAAA,EAAW,OAAA;AAAA,MACV,GAAG,IAAA;AAAA,MACJ,GAAA;AAAA,MAEA,8BAAC,IAAA,EAAA,EAAK,IAAA,EAAK,OAAA,EAAQ,MAAA,EAAM,MACtB,QAAA,EACH;AAAA;AAAA,GACF;AAEJ,CAAC,CAAA;AAED,eAAA,CAAgB,WAAA,GAAc,iBAAA;;ACZvB,MAAM,cAAc,MAAA,CAAO,MAAA;AAAA,EAChC,UAAA;AAAA,IACE,SAAS,gBAAA,CAAiB,KAAA,EAAO,GAAA,EAAK;AACpC,MAAA,MAAM,EAAE,YAAA,EAAc,cAAA,EAAe,GAAI,mBAAmB,KAAK,CAAA;AACjE,MAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,KAAA,EAAO,GAAG,MAAK,GAAI,cAAA;AAEhD,MAAA,MAAM,OAAA,GAAU,GAAG,CAAC,MAAA,CAAO,aAAa,CAAC,CAAA,EAAG,SAAA,EAAW,EAAE,CAAA;AAEzD,MAAA,MAAM,aAAA,GAAgB;AAAA,QACpB,GAAG,KAAA;AAAA,QACH,GAAG;AAAA,OACL;AAEA,MAAA,MAAM,SAAA,GAAY,QAAA,CAAS,KAAA,CAAM,QAAQ,CAAA;AAEzC,MAAA,uBACE,GAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,UAAA,EAAS,aAAA;AAAA,UACT,KAAA,EAAO,aAAA;AAAA,UACP,SAAA,EAAW,OAAA;AAAA,UACX,YAAA,EAAW,YAAA;AAAA,UACV,GAAG,IAAA;AAAA,UACJ,GAAA;AAAA,UAEC,QAAA,EAAA,QAAA,CAAS,GAAA,CAAI,QAAA,EAAU,CAAC,MAAM,CAAA,KAAM;AACnC,YAAA,IAAI,CAAA,GAAI,MAAM,SAAA,EAAW;AACvB,cAAA,uBACE,GAAA,CAAC,IAAA,EAAA,EAAK,MAAA,EAAM,IAAA,EAAC,IAAA,EAAK,OAAA,EAAQ,SAAA,EAAW,MAAA,CAAO,SAAS,CAAA,EAClD,QAAA,EAAA,IAAA,CAAK,KAAA,CAAM,QAAA,EACd,CAAA;AAAA,YAEJ,CAAA,MAAO;AACL,cAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,gBAAA,YAAA,CAAa,IAAoB,CAAA;AAAA,gCAClC,GAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAKA,eAAA,EAAc,eAAY,MAAA,EAAO;AAAA,eAAA,EAC9C,CAAA;AAAA,YAEJ;AAAA,UACF,CAAC;AAAA;AAAA,OACH;AAAA,IAEJ;AAAA,GACF;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAeE,IAAA,EAAM;AAAA;AAEV;AACA,WAAA,CAAY,WAAA,GAAc,aAAA;;;;"}
@@ -1,2 +1,2 @@
1
- export { B as Breadcrumbs, B as default } from './Breadcrumbs-FZO4lrPG.js';
1
+ export { B as Breadcrumbs, B as default } from './Breadcrumbs-CR1od1rZ.js';
2
2
  //# sourceMappingURL=Breadcrumbs.js.map
@@ -10,7 +10,7 @@ import { S as SvgKeyboardArrowRight } from './keyboard_arrow_right-DMloHg_F.js';
10
10
  import { S as SrOnly } from './SrOnly-pnf8ajnh.js';
11
11
  import { u as useSwipe } from './useSwipe-Cp-CJxLU.js';
12
12
  import { G as Grid } from './Grid-CvGQrIhE.js';
13
- import { S as SelectCard } from './SelectCard-M6FsTBA4.js';
13
+ import { S as SelectCard } from './SelectCard-DbWOdnuI.js';
14
14
  import { u as useMergeRefs } from './useMergeRefs-Dfmtq9cI.js';
15
15
  import { w as warnOnce } from './warnOnce-Y9PRHcU4.js';
16
16
  import { u as useVirtualizer } from './index-DXeGMe23.js';
@@ -1834,4 +1834,4 @@ const Calendar = Object.assign(
1834
1834
  Calendar.displayName = "Calendar";
1835
1835
 
1836
1836
  export { CalendarBetaPropsContext as C, Calendar as a, CalendarNow as b, CalendarYearButton as c, CalendarPrev as d, CalendarNext as e, CalendarMonthButton as f, CalendarMonth as g, useCalendarBetaProps as u };
1837
- //# sourceMappingURL=Calendar-D-e2O90P.js.map
1837
+ //# sourceMappingURL=Calendar-B-K7eGua.js.map