@arc-ui/components 12.0.0-beta.21 → 12.0.0-beta.23

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 (208) hide show
  1. package/lib/Alert/Alert.cjs +41 -14
  2. package/lib/Alert/Alert.mjs +42 -15
  3. package/lib/Alert/styles.css +1 -1
  4. package/lib/Align/styles.css +1 -1
  5. package/lib/AppButton/styles.css +1 -1
  6. package/lib/Avatar/styles.css +1 -1
  7. package/lib/AvatarGroup/styles.css +1 -1
  8. package/lib/Badge/styles.css +1 -1
  9. package/lib/Banner/Banner.cjs +1 -1
  10. package/lib/Banner/Banner.mjs +1 -1
  11. package/lib/Box/styles.css +1 -1
  12. package/lib/BrandLogo/styles.css +1 -1
  13. package/lib/Breadcrumbs/Breadcrumbs.cjs +12 -3
  14. package/lib/Breadcrumbs/Breadcrumbs.mjs +12 -3
  15. package/lib/Breadcrumbs/styles.css +1 -1
  16. package/lib/Button/styles.css +1 -1
  17. package/lib/ButtonGroup/styles.css +1 -1
  18. package/lib/ButtonV2/styles.css +1 -1
  19. package/lib/Calendar/Calendar.cjs +2 -2
  20. package/lib/Calendar/Calendar.mjs +2 -2
  21. package/lib/Calendar/styles.css +1 -1
  22. package/lib/CardFooter/styles.css +1 -1
  23. package/lib/CardHeading/styles.css +1 -1
  24. package/lib/Carousel/Carousel.cjs +11 -5
  25. package/lib/Carousel/Carousel.mjs +8 -2
  26. package/lib/Carousel/styles.css +1 -1
  27. package/lib/Checkbox/Checkbox.cjs +85 -11
  28. package/lib/Checkbox/Checkbox.mjs +87 -9
  29. package/lib/Checkbox/styles.css +1 -1
  30. package/lib/Columns/styles.css +1 -1
  31. package/lib/ComboBox/ComboBox.cjs +276 -11
  32. package/lib/ComboBox/ComboBox.mjs +279 -10
  33. package/lib/ComboBox/styles.css +1 -1
  34. package/lib/ContentSwitcher/ContentSwitcher.cjs +5 -6
  35. package/lib/ContentSwitcher/ContentSwitcher.mjs +5 -6
  36. package/lib/ContentSwitcher/styles.css +1 -1
  37. package/lib/ContentSwitcherDropdown/styles.css +1 -1
  38. package/lib/DatePicker/DatePicker.cjs +351 -38
  39. package/lib/DatePicker/DatePicker.mjs +329 -17
  40. package/lib/DatePicker/styles.css +1 -1
  41. package/lib/Disclosure/styles.css +1 -1
  42. package/lib/DisclosureMini/styles.css +1 -1
  43. package/lib/Download/styles.css +1 -1
  44. package/lib/Drawer/Drawer.cjs +58 -10
  45. package/lib/Drawer/Drawer.mjs +55 -7
  46. package/lib/Drawer/styles.css +1 -1
  47. package/lib/Elevation/styles.css +1 -1
  48. package/lib/Filter/styles.css +1 -1
  49. package/lib/FormControl/styles.css +1 -1
  50. package/lib/GhostedHeroBanner/styles.css +1 -1
  51. package/lib/GradientPageBackground/GradientPageBackground.cjs +55 -43
  52. package/lib/GradientPageBackground/GradientPageBackground.mjs +55 -43
  53. package/lib/GradientPageBackground/styles.css +1 -1
  54. package/lib/Grid/styles.css +1 -1
  55. package/lib/Group/styles.css +1 -1
  56. package/lib/Heading/styles.css +1 -1
  57. package/lib/HeroBanner/HeroBanner.cjs +1 -1
  58. package/lib/HeroBanner/HeroBanner.mjs +1 -1
  59. package/lib/HeroBanner/styles.css +1 -1
  60. package/lib/HeroButton/HeroButton.cjs +77 -9
  61. package/lib/HeroButton/HeroButton.mjs +80 -8
  62. package/lib/HeroButton/styles.css +1 -1
  63. package/lib/Hidden/styles.css +1 -1
  64. package/lib/HorizontalCard/styles.css +1 -1
  65. package/lib/Icon/styles.css +1 -1
  66. package/lib/Image/styles.css +1 -1
  67. package/lib/ImpactCard/ImpactCard.cjs +3 -3
  68. package/lib/ImpactCard/ImpactCard.mjs +3 -3
  69. package/lib/ImpactCard/styles.css +1 -1
  70. package/lib/InformationCard/InformationCard.cjs +6 -6
  71. package/lib/InformationCard/InformationCard.mjs +6 -6
  72. package/lib/InformationCard/styles.css +1 -1
  73. package/lib/Link/Link.cjs +8 -51
  74. package/lib/Link/Link.mjs +7 -54
  75. package/lib/Link/styles.css +1 -1
  76. package/lib/Markup/styles.css +1 -1
  77. package/lib/MediaCard/MediaCard.cjs +53 -14
  78. package/lib/MediaCard/MediaCard.mjs +55 -12
  79. package/lib/MediaCard/styles.css +1 -1
  80. package/lib/Menu/Menu.cjs +1327 -25
  81. package/lib/Menu/Menu.mjs +1293 -10
  82. package/lib/Menu/styles.css +1 -1
  83. package/lib/Modal/styles.css +1 -1
  84. package/lib/NavigationHeader/NavigationHeader.cjs +854 -62
  85. package/lib/NavigationHeader/NavigationHeader.mjs +842 -50
  86. package/lib/NavigationHeader/styles.css +1 -1
  87. package/lib/Pagination/styles.css +1 -1
  88. package/lib/PaginationSimple/styles.css +1 -1
  89. package/lib/Popover/styles.css +1 -1
  90. package/lib/Poster/styles.css +1 -1
  91. package/lib/ProgressBar/styles.css +1 -1
  92. package/lib/ProgressStepper/styles.css +1 -1
  93. package/lib/ProgressStepperOverflow/ProgressStepperOverflow.cjs +138 -7
  94. package/lib/ProgressStepperOverflow/ProgressStepperOverflow.mjs +140 -5
  95. package/lib/ProgressStepperOverflow/styles.css +1 -1
  96. package/lib/RadioCardGroup/RadioCardGroup.cjs +48 -7
  97. package/lib/RadioCardGroup/RadioCardGroup.mjs +48 -8
  98. package/lib/RadioCardGroup/styles.css +1 -1
  99. package/lib/RadioGroup/RadioGroup.cjs +50 -8
  100. package/lib/RadioGroup/RadioGroup.mjs +49 -8
  101. package/lib/RadioGroup/styles.css +1 -1
  102. package/lib/Rule/styles.css +1 -1
  103. package/lib/ScrollToTop/styles.css +1 -1
  104. package/lib/Section/Section.cjs +1 -1
  105. package/lib/Section/Section.mjs +1 -1
  106. package/lib/Section/styles.css +1 -1
  107. package/lib/Select/styles.css +1 -1
  108. package/lib/SiteFooter/SiteFooter.cjs +2 -2
  109. package/lib/SiteFooter/SiteFooter.mjs +2 -2
  110. package/lib/SiteFooter/styles.css +1 -1
  111. package/lib/SiteFooterV2/SiteFooterV2.cjs +7 -6
  112. package/lib/SiteFooterV2/SiteFooterV2.mjs +7 -6
  113. package/lib/SiteFooterV2/styles.css +1 -1
  114. package/lib/SiteHeaderV2/SiteHeaderV2.cjs +440 -15
  115. package/lib/SiteHeaderV2/SiteHeaderV2.mjs +435 -11
  116. package/lib/SiteHeaderV2/styles.css +1 -1
  117. package/lib/Skeleton/styles.css +1 -1
  118. package/lib/SkipLink/styles.css +1 -1
  119. package/lib/Spinner/styles.css +1 -1
  120. package/lib/Surface/styles.css +1 -1
  121. package/lib/Switch/styles.css +1 -1
  122. package/lib/TabbedBanner/TabbedBanner.cjs +22 -35
  123. package/lib/TabbedBanner/TabbedBanner.mjs +25 -38
  124. package/lib/TabbedBanner/styles.css +1 -1
  125. package/lib/Tabs/Tabs.cjs +2 -2
  126. package/lib/Tabs/Tabs.mjs +3 -3
  127. package/lib/Tabs/styles.css +1 -1
  128. package/lib/Tag/Tag.cjs +9 -9
  129. package/lib/Tag/Tag.mjs +9 -9
  130. package/lib/Tag/styles.css +1 -1
  131. package/lib/TemplateBanner/TemplateBanner.cjs +1 -1
  132. package/lib/TemplateBanner/TemplateBanner.mjs +1 -1
  133. package/lib/TemplateBanner/styles.css +1 -1
  134. package/lib/Text/styles.css +1 -1
  135. package/lib/TextArea/TextArea.cjs +2 -53
  136. package/lib/TextArea/TextArea.mjs +2 -53
  137. package/lib/TextArea/styles.css +1 -1
  138. package/lib/TextInput/styles.css +1 -1
  139. package/lib/Theme/Theme.cjs +1 -1
  140. package/lib/Theme/Theme.mjs +1 -1
  141. package/lib/Theme/styles.css +1 -1
  142. package/lib/ThemeIcon/styles.css +1 -1
  143. package/lib/ThumbnailSignpost/styles.css +1 -1
  144. package/lib/Toast/styles.css +1 -1
  145. package/lib/Tooltip/styles.css +1 -1
  146. package/lib/Truncate/styles.css +1 -1
  147. package/lib/TypographyCard/TypographyCard.cjs +3 -3
  148. package/lib/TypographyCard/TypographyCard.mjs +3 -3
  149. package/lib/TypographyCard/styles.css +1 -1
  150. package/lib/UniversalHeader/styles.css +1 -1
  151. package/lib/VerticalSpace/styles.css +1 -1
  152. package/lib/VideoPlayer/styles.css +1 -1
  153. package/lib/Visible/styles.css +1 -1
  154. package/lib/VisuallyHidden/styles.css +1 -1
  155. package/lib/_shared/cjs/{Calendar-BcNtpbeY.cjs → Calendar-Bfdgf5q1.cjs} +1 -1
  156. package/lib/_shared/cjs/{ContentSwitcherList-NJN4H2Z-.cjs → ContentSwitcherList-pcYtuT6L.cjs} +10 -2
  157. package/lib/_shared/cjs/Link-C3OSQIIk.cjs +50 -0
  158. package/lib/_shared/cjs/{Section-wUVdzmGA.cjs → Section-Bz2fwj8Z.cjs} +2 -2
  159. package/lib/_shared/cjs/{TemplateBanner-D2y2XmR2.cjs → TemplateBanner-COymAI91.cjs} +14 -3
  160. package/lib/_shared/cjs/{arc-breakpoints--lzoExiR.cjs → arc-breakpoints-CS8JVk5T.cjs} +1 -1
  161. package/lib/_shared/cjs/{index.es-Th2hutNO.cjs → index.es-fkulh7qu.cjs} +1 -1
  162. package/lib/_shared/esm/{Calendar-ugZV8KxD.mjs → Calendar-Drh_NJ9I.mjs} +1 -1
  163. package/lib/_shared/esm/{ContentSwitcherList-BN2jzXel.mjs → ContentSwitcherList-DwHfU3no.mjs} +12 -5
  164. package/lib/_shared/esm/Link-DxjGH_7f.mjs +48 -0
  165. package/lib/_shared/esm/{Section-DDygQ5Az.mjs → Section-7InCvzfh.mjs} +2 -2
  166. package/lib/_shared/esm/{TemplateBanner-C_mDNU5j.mjs → TemplateBanner-Dkgzu3A5.mjs} +14 -3
  167. package/lib/_shared/esm/{arc-breakpoints-DnWZ2-TX.mjs → arc-breakpoints-D7Ie4kBt.mjs} +1 -1
  168. package/lib/_shared/esm/{index-BDWwJ5x2.mjs → index-BWkI4Dwz.mjs} +1 -1
  169. package/lib/_shared/esm/{index.es-Bo660IGW.mjs → index.es-CtRkzfKP.mjs} +1 -1
  170. package/lib/index.cjs +374 -272
  171. package/lib/index.cjs.map +1 -1
  172. package/lib/index.d.cts +223 -128
  173. package/lib/index.d.mts +223 -128
  174. package/lib/index.js.map +1 -1
  175. package/lib/index.mjs +375 -273
  176. package/lib/index.mjs.map +1 -1
  177. package/lib/styles.css +12 -8
  178. package/package.json +8 -8
  179. package/lib/_shared/cjs/BreadcrumbsLink-CDmk3Y3m.cjs +0 -18
  180. package/lib/_shared/cjs/Checkbox-DfZMjO1Y.cjs +0 -88
  181. package/lib/_shared/cjs/ComboBox-BGUhlqx1.cjs +0 -281
  182. package/lib/_shared/cjs/ContentSwitcherTab-B387Qs3I.cjs +0 -14
  183. package/lib/_shared/cjs/DatePicker-Bdw9VFZ4.cjs +0 -334
  184. package/lib/_shared/cjs/DrawerContent-DifTc6g9.cjs +0 -62
  185. package/lib/_shared/cjs/HeroButton-CrzkTUwP.cjs +0 -82
  186. package/lib/_shared/cjs/MediaCard-BEZFbiYO.cjs +0 -57
  187. package/lib/_shared/cjs/MenuItemMultiLevelContent-vLr6hSBm.cjs +0 -1328
  188. package/lib/_shared/cjs/ProgressStepperOverflow-BAGZNC26.cjs +0 -142
  189. package/lib/_shared/cjs/RadioCardGroupInput-CeUM3yPS.cjs +0 -53
  190. package/lib/_shared/cjs/RadioGroupInput-w2qkfsnG.cjs +0 -54
  191. package/lib/_shared/cjs/SiteHeaderV2NavItemWithSubNav-Cd0f-Yof.cjs +0 -445
  192. package/lib/_shared/cjs/kebabCase-CThj4IzG.cjs +0 -735
  193. package/lib/_shared/cjs/keynames-Cx13-hWr.cjs +0 -8
  194. package/lib/_shared/esm/BreadcrumbsLink-BxTurGNa.mjs +0 -16
  195. package/lib/_shared/esm/Checkbox-CwOHzlQF.mjs +0 -86
  196. package/lib/_shared/esm/ComboBox-CRlJjeev.mjs +0 -279
  197. package/lib/_shared/esm/ContentSwitcherTab-CfC3PGeZ.mjs +0 -12
  198. package/lib/_shared/esm/DatePicker-CCctia-s.mjs +0 -324
  199. package/lib/_shared/esm/DrawerContent-D6bAU8EQ.mjs +0 -58
  200. package/lib/_shared/esm/HeroButton-jdjjV_Gf.mjs +0 -80
  201. package/lib/_shared/esm/MediaCard-DqMaNWsE.mjs +0 -55
  202. package/lib/_shared/esm/MenuItemMultiLevelContent-JTOHqpzg.mjs +0 -1296
  203. package/lib/_shared/esm/ProgressStepperOverflow-fPkLltVO.mjs +0 -140
  204. package/lib/_shared/esm/RadioCardGroupInput-D7W28geB.mjs +0 -50
  205. package/lib/_shared/esm/RadioGroupInput-zAWSV29m.mjs +0 -50
  206. package/lib/_shared/esm/SiteHeaderV2NavItemWithSubNav-XbvJNiSo.mjs +0 -439
  207. package/lib/_shared/esm/kebabCase-CHRdSZ4y.mjs +0 -730
  208. package/lib/_shared/esm/keynames-B5whqsjh.mjs +0 -8
@@ -7,30 +7,27 @@ var Visible = require('../_shared/cjs/Visible-vchtZSfm.cjs');
7
7
  var index = require('../_shared/cjs/index-CTlXMLug.cjs');
8
8
  var suffixModifier = require('../_shared/cjs/suffix-modifier-DLUGR-yG.cjs');
9
9
  var Surface = require('../_shared/cjs/Surface-BFx1yNsq.cjs');
10
- var Rule = require('../_shared/cjs/Rule-DMQsi2L6.cjs');
11
- var DrawerContent = require('../_shared/cjs/DrawerContent-DifTc6g9.cjs');
12
- var VerticalSpace = require('../_shared/cjs/VerticalSpace-BJvST6WP.cjs');
10
+ var index$2 = require('../_shared/cjs/index-DAr_oO4-.cjs');
11
+ var index$1 = require('../_shared/cjs/index-DXNM3D1d.cjs');
13
12
  var Tooltip = require('../_shared/cjs/Tooltip-BPHL0ELI.cjs');
14
13
  var ThemeIcon = require('../_shared/cjs/ThemeIcon-BoxbjTaQ.cjs');
15
14
  var VisuallyHidden = require('../_shared/cjs/VisuallyHidden-B4XCvPYP.cjs');
16
- var kebabCase = require('../_shared/cjs/kebabCase-CThj4IzG.cjs');
15
+ var Icon = require('../_shared/cjs/Icon-CzhyKqMd.cjs');
17
16
  var Text = require('../_shared/cjs/Text-Cr5nmYmx.cjs');
18
- var arcBreakpoints = require('../_shared/cjs/arc-breakpoints--lzoExiR.cjs');
17
+ var ConditionalWrapper = require('../_shared/cjs/ConditionalWrapper-C09Kw6EG.cjs');
18
+ var arcBreakpoints = require('../_shared/cjs/arc-breakpoints-CS8JVk5T.cjs');
19
19
  var Popover = require('../_shared/cjs/Popover-C5mmMkYU.cjs');
20
- var index$1 = require('../_shared/cjs/index-DAr_oO4-.cjs');
21
- var Icon = require('../_shared/cjs/Icon-CzhyKqMd.cjs');
20
+ var isSymbol = require('../_shared/cjs/isSymbol-BGrHFUbV.cjs');
22
21
  var Hidden = require('../_shared/cjs/Hidden-Vsv1-xWO.cjs');
23
22
  require('../_shared/cjs/index-DR8Rkav9.cjs');
24
- require('../_shared/cjs/index-DXNM3D1d.cjs');
23
+ require('../_shared/cjs/Combination-B-rSVLfT.cjs');
25
24
  require('react/jsx-runtime');
26
25
  require('react-dom');
26
+ require('../_shared/cjs/index-Dv1xvB_E.cjs');
27
27
  require('../_shared/cjs/index-B11wQrRa.cjs');
28
- require('../_shared/cjs/isSymbol-BGrHFUbV.cjs');
29
- require('../_shared/cjs/index.es-Th2hutNO.cjs');
28
+ require('../_shared/cjs/index.es-fkulh7qu.cjs');
30
29
  require('../_shared/cjs/index-CaO6cOF0.cjs');
31
- require('../_shared/cjs/Combination-B-rSVLfT.cjs');
32
30
  require('../_shared/cjs/index-Bt7hfZBc.cjs');
33
- require('../_shared/cjs/index-Dv1xvB_E.cjs');
34
31
 
35
32
  /**
36
33
  * Detect interaction mode
@@ -93,7 +90,8 @@ var BtRedcareLogo = function () { return (React.createElement("svg", { xmlns: "h
93
90
  React.createElement("path", { d: "M25 0C11.285 0 0 11.285 0 25s11.285 25 25 25 25-11.285 25-25C49.995 11.287 38.713.005 25 0Zm0 46.92h-.005c-12.028 0-21.925-9.897-21.925-21.925S12.967 3.07 24.995 3.07 46.92 12.967 46.92 24.995V25C46.911 37.022 37.022 46.911 25 46.92Zm95.636-16.632-2.683-2.44-.153.19a5.93 5.93 0 0 1-1.965 1.626 5.484 5.484 0 0 1-2.415.508 4.314 4.314 0 0 1-2.323-.65 4.609 4.609 0 0 1-1.653-1.828 6.386 6.386 0 0 1 0-5.456 4.627 4.627 0 0 1 1.642-1.824 4.267 4.267 0 0 1 2.31-.65 5.014 5.014 0 0 1 2.317.521c.746.411 1.4.97 1.923 1.642l.153.187 2.686-2.436-.142-.176a9.26 9.26 0 0 0-3.09-2.47 8.886 8.886 0 0 0-3.84-.802 9.082 9.082 0 0 0-3.428.644 8.536 8.536 0 0 0-2.798 1.824 8.35 8.35 0 0 0-1.871 2.785 9.462 9.462 0 0 0 0 6.978 8.36 8.36 0 0 0 4.672 4.6 9.204 9.204 0 0 0 3.44.642 9.37 9.37 0 0 0 3.909-.788 9.195 9.195 0 0 0 3.16-2.457l.15-.17h-.001ZM22.8 24.626a4.224 4.224 0 0 0 1.625-3.4c0-3.075-2.224-4.751-5.5-4.751h-6.77v17h7.248c3.25 0 5.526-1.774 5.526-5-.003-1.875-.979-3.175-2.129-3.849Zm3.425-4.501H30.4v13.35h4.1v-13.35h4.175v-3.65h-12.45v3.65Zm126.251 4.57a5.193 5.193 0 0 0 .866-2.976 5.303 5.303 0 0 0-.68-2.7 4.818 4.818 0 0 0-1.98-1.861c-.857-.448-1.915-.676-3.143-.676h-8.354v16.992h4.097v-6.336h2.984l3.235 6.329h4.586l-3.86-7.028a4.777 4.777 0 0 0 2.25-1.744h-.001Zm-75.218 1.947h6.115V23.16h-6.115v-3.2h8.714v-3.484H73.16v16.992h13.048v-3.484h-8.95v-3.342Zm-6.888-1.947a5.193 5.193 0 0 0 .866-2.976 5.306 5.306 0 0 0-.68-2.707 4.825 4.825 0 0 0-1.98-1.861c-.86-.448-1.916-.676-3.135-.676H57.08v16.992h4.095v-6.33h2.983l3.235 6.33h4.586l-3.86-7.028a4.787 4.787 0 0 0 2.252-1.744h-.001Zm28.995-7.144c-1.436-.706-3.175-1.076-5.193-1.076h-6.228v16.992h6.228c2.01 0 3.757-.353 5.193-1.074a7.914 7.914 0 0 0 3.33-3 8.457 8.457 0 0 0 1.154-4.409 8.44 8.44 0 0 0-1.154-4.41 7.894 7.894 0 0 0-3.33-3.023Zm32.205-1.076h-4.279l-6.816 16.992h4.234l1.41-3.683h6.527l1.411 3.683h4.358l-6.786-16.847-.06-.145h.001Zm27.747 13.508v-3.34h6.117v-3.485h-6.117v-3.2h8.715v-3.483h-12.81v16.992h13.047v-3.484h-8.952Zm-140.367.042v.008-.001H16.2v-3.557h2.75c1.15 0 1.825.725 1.825 1.8 0 1.025-.666 1.75-1.825 1.75Zm80.711-5.054c0 1.534-.469 2.765-1.395 3.66-.926.897-2.309 1.356-4.094 1.356h-2.13V19.959h2.13c1.787 0 3.163.458 4.09 1.363.928.905 1.4 2.138 1.4 3.65l-.001-.001Zm27.694 1.588 2.029-5.335 2.05 5.335h-4.079Zm-60.312-4.744a2.02 2.02 0 0 1-.494 1.437c-.323.353-.834.53-1.519.53h-3.856v-3.919h3.856c.706 0 1.216.177 1.53.53.337.392.51.898.483 1.414v.008Zm82.108 0a2.024 2.024 0 0 1-.494 1.437c-.322.353-.833.53-1.52.53h-3.855v-3.919h3.855c.705 0 1.215.177 1.53.53.337.391.51.898.484 1.414v.008ZM16.2 19.932h2.526c.973 0 1.548.625 1.548 1.526 0 .949-.575 1.575-1.548 1.575H16.2v-3.101Z", fill: "currentColor" }))); };
94
91
 
95
92
  var NavigationHeaderLogo = function (_a) {
96
- var _b = _a.brand, brand = _b === void 0 ? "bt" : _b, _c = _a.href, href = _c === void 0 ? "/" : _c, _d = _a.ariaLabel, ariaLabel = _d === void 0 ? "Home" : _d, svg = _a.svg, onClick = _a.onClick;
93
+ var _b;
94
+ var _c = _a.brand, brand = _c === void 0 ? "bt" : _c, _d = _a.href, href = _d === void 0 ? "/" : _d, _e = _a.ariaLabel, ariaLabel = _e === void 0 ? "Home" : _e, _f = _a.isSurfaceSensitive, isSurfaceSensitive = _f === void 0 ? true : _f, svg = _a.svg, onClick = _a.onClick;
97
95
  var surface = React.useContext(Surface.Context).surface;
98
96
  var logos = {
99
97
  bt: BtLogo,
@@ -104,7 +102,11 @@ var NavigationHeaderLogo = function (_a) {
104
102
  btWholesale: BtWholesaleLogo,
105
103
  };
106
104
  var icon = svg || React.createElement(logos[brand]);
107
- return (React.createElement("a", { className: index.classNames("arc-NavigationHeaderLogo", suffixModifier.suffixModifier("arc-NavigationHeaderLogo--on", surface)), "aria-label": ariaLabel, onClick: onClick, href: href }, icon));
105
+ return (React.createElement("a", { className: index.classNames("arc-NavigationHeaderLogo", (_b = {
106
+ "arc-NavigationHeaderLogo--staticColor": !isSurfaceSensitive
107
+ },
108
+ _b[suffixModifier.suffixModifier("arc-NavigationHeaderLogo--on", surface)] = isSurfaceSensitive,
109
+ _b)), "aria-label": ariaLabel, onClick: onClick, href: href }, icon));
108
110
  };
109
111
 
110
112
  // src/check-element-visibility/check-element-visibility.ts
@@ -117,18 +119,83 @@ var checkElementVisibility = (element) => {
117
119
  }
118
120
  };
119
121
 
120
- var NavigationHeaderNavLink = function (_a) {
121
- var text = _a.text, onClick = _a.onClick, href = _a.href, _b = _a.borderRadiusSize, borderRadiusSize = _b === void 0 ? "s" : _b;
122
+ var NavigationHeaderInlineAction = function (_a) {
123
+ var icon = _a.icon, text = _a.text, href = _a.href, onClick = _a.onClick;
124
+ return (React.createElement(ConditionalWrapper.ConditionalWrapper, { condition: Boolean(href), wrapper: function (children) { return (React.createElement("a", { "aria-label": text, className: index.classNames("arc-NavigationHeaderInlineAction", "arc-NavigationHeaderInlineAction-link"), href: href, onClick: onClick }, children)); }, fallback: function (children) { return (React.createElement("button", { "aria-label": text, className: index.classNames("arc-NavigationHeaderInlineAction", "arc-NavigationHeaderInlineAction-button"), onClick: onClick }, children)); } },
125
+ React.createElement("div", { className: "arc-NavigationHeaderInlineAction-content" },
126
+ React.createElement(Icon.Icon, { "aria-hidden": true, icon: icon, size: 28 }),
127
+ React.createElement(Text.Text, { size: "l" }, text))));
128
+ };
129
+
130
+ var NavigationHeaderButton = React.forwardRef(function (_a, ref) {
131
+ var isActive = _a.isActive, children = _a.children, onClick = _a.onClick, _b = _a.isPadded, isPadded = _b === void 0 ? true : _b, props = filterAttrs.__rest(_a, ["isActive", "children", "onClick", "isPadded"]);
122
132
  var surface = React.useContext(Surface.Context).surface;
123
- return (React.createElement("a", { href: href, onClick: onClick, className: index.classNames("arc-NavigationHeaderNavLink", suffixModifier.suffixModifier("arc-NavigationHeaderNavLink--borderRadiusSize", borderRadiusSize), suffixModifier.suffixModifier("arc-NavigationHeaderNavLink--on", surface)) },
124
- React.createElement(Text.Text, null, text)));
133
+ return (React.createElement("button", filterAttrs.__assign({}, props, { ref: ref, onClick: onClick, className: index.classNames("arc-NavigationHeaderButton", suffixModifier.suffixModifier("arc-NavigationHeaderButton--on", surface), {
134
+ "arc-NavigationHeaderButton--active": isActive,
135
+ "arc-NavigationHeaderButton--padded": isPadded,
136
+ }) }), children));
137
+ });
138
+
139
+ var NavigationHeaderDisclosure = function (_a) {
140
+ var heading = _a.heading, children = _a.children;
141
+ var _b = React.useState(false), isOpen = _b[0], setIsOpen = _b[1];
142
+ var containerRef = React.useRef(null);
143
+ var handleOnClick = function (e) {
144
+ e.preventDefault();
145
+ setIsOpen(function (isOpen) { return !isOpen; });
146
+ };
147
+ React.useEffect(function () {
148
+ if (containerRef.current && containerRef.current.firstChild && isOpen) {
149
+ containerRef.current.firstChild.focus();
150
+ }
151
+ }, [isOpen, containerRef.current]);
152
+ return (React.createElement("details", { className: "arc-NavigationHeaderDisclosure", open: isOpen },
153
+ React.createElement("summary", { "aria-expanded": isOpen, onClick: handleOnClick, className: "arc-NavigationHeaderDisclosure-summary" },
154
+ React.createElement("span", { className: "arc-NavigationHeaderDisclosure-heading" }, heading),
155
+ React.createElement("span", { className: "arc-NavigationHeaderDisclosure-icon" },
156
+ React.createElement(ThemeIcon.ThemeIcon, { size: 28, icon: "navigationHeaderDisclosure" }))),
157
+ React.createElement("div", { ref: containerRef, className: "arc-NavigationHeaderDisclosure-details" }, children)));
125
158
  };
126
159
 
160
+ var NavigationHeaderMenuLink = function (_a) {
161
+ var href = _a.href, onClick = _a.onClick, text = _a.text, _b = _a.size, size = _b === void 0 ? "l" : _b;
162
+ var icons = {
163
+ s: {
164
+ icon: "navigationHeaderMenuLinkSmall",
165
+ size: 24,
166
+ },
167
+ l: {
168
+ icon: "navigationHeaderMenuLinkLarge",
169
+ size: 28,
170
+ },
171
+ };
172
+ return (React.createElement("a", { "aria-label": text, href: href, onClick: onClick, className: index.classNames("arc-NavigationHeaderMenuLink", suffixModifier.suffixModifier("arc-NavigationHeaderMenuLink--size", size)) },
173
+ React.createElement("div", { className: "arc-NavigationHeaderMenuLink-text" }, text),
174
+ React.createElement("span", { className: "arc-NavigationHeaderMenuLink-icon" },
175
+ React.createElement(ThemeIcon.ThemeIcon, filterAttrs.__assign({}, icons[size])))));
176
+ };
177
+
178
+ var NavigationHeaderCloseButton = React.forwardRef(function (_a, ref) {
179
+ var onClick = _a.onClick, props = filterAttrs.__rest(_a, ["onClick"]);
180
+ return (React.createElement("button", filterAttrs.__assign({}, props, { ref: ref, "aria-label": "close", onClick: onClick, className: "arc-NavigationHeaderCloseButton" }),
181
+ React.createElement(ThemeIcon.ThemeIcon, { size: 32, icon: "navigationHeaderClose" })));
182
+ });
183
+
127
184
  var NavigationHeaderBurgerMenu = function (_a) {
128
- var navItems = _a.navItems, topContent = _a.topContent, bottomContent = _a.bottomContent;
185
+ var navItems = _a.navItems, actions = _a.actions, header = _a.header, footer = _a.footer, logo = _a.logo;
129
186
  var id = React.useId();
130
187
  var _b = React.useState(false), isOpen = _b[0], setIsOpen = _b[1];
131
188
  var triggerRef = React.useRef(null);
189
+ var interactionMode = useInteractionMode().interactionMode;
190
+ var _c = index$1.useThemeElement(), themeElement = _c[0], setThemeElement = _c[1];
191
+ var closeMenu = function () {
192
+ setIsOpen(false);
193
+ };
194
+ var focusTriggerElement = function () {
195
+ if (triggerRef.current && interactionMode === "keyboard") {
196
+ triggerRef.current.focus();
197
+ }
198
+ };
132
199
  // Close the menu if the nav or trigger is hidden
133
200
  React.useEffect(function () {
134
201
  var resizeObserver = new ResizeObserver(function (entries) {
@@ -148,35 +215,47 @@ var NavigationHeaderBurgerMenu = function (_a) {
148
215
  }, [isOpen, setIsOpen, triggerRef.current]);
149
216
  return (React.createElement(React.Fragment, null,
150
217
  React.createElement(Tooltip.Tooltip, { asChild: true, delayDuration: 0, title: "Menu", side: "bottom" },
151
- React.createElement(kebabCase.NavigationHeaderButton, { ref: triggerRef, isPadded: false, "aria-expanded": isOpen, "aria-label": isOpen ? "close menu" : "open menu", onClick: function () { return setIsOpen(!isOpen); } },
152
- React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-buttonContent" },
218
+ React.createElement(NavigationHeaderButton, { ref: triggerRef, isPadded: false, "aria-expanded": isOpen, "aria-label": isOpen ? "close menu" : "open menu", onClick: function () { return setIsOpen(!isOpen); } },
219
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-trigger" },
153
220
  React.createElement(ThemeIcon.ThemeIcon, { icon: "siteHeaderBurger", size: 24 })),
154
221
  React.createElement(VisuallyHidden.VisuallyHidden, null, isOpen ? "close menu" : "open menu"))),
155
- React.createElement(DrawerContent.Drawer, { isOpen: isOpen, "aria-describedby": undefined, onRequestClose: function () { return setIsOpen(false); } },
156
- React.createElement(Surface.Surface, { isTransparent: true, background: "light-white" },
157
- React.createElement(DrawerContent.DrawerHeader, { title: "Menu" }),
158
- React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-content" },
159
- topContent && (React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-topContent" },
160
- React.createElement(VerticalSpace.VerticalSpace, null),
161
- React.createElement(Rule.Rule, null),
162
- React.createElement(VerticalSpace.VerticalSpace, null),
163
- topContent,
164
- React.createElement(VerticalSpace.VerticalSpace, null))),
165
- navItems && (React.createElement(DrawerContent.DrawerContent, null,
166
- React.createElement("ul", { className: "arc-NavigationHeaderBurgerMenu-list" }, navItems.map(function (navItem, navItemIndex) { return (React.createElement(React.Fragment, { key: "".concat(id, "-burger-nav-item-").concat(navItemIndex) },
167
- React.createElement("li", null,
168
- (navItem.type === "link" ||
169
- navItem.type === "meatball") && (React.createElement(NavigationHeaderNavLink, filterAttrs.__assign({}, navItem))),
170
- (navItem.type === "subnav" ||
171
- navItem.type === "dropdown") &&
172
- navItem.items.map(function (subNavItem, subNavItemIndex) { return (React.createElement(NavigationHeaderNavLink, filterAttrs.__assign({ key: "".concat(id, "-").concat(navItemIndex, "-burger-sub-nav-item-").concat(subNavItemIndex) }, subNavItem))); })))); })))),
173
- bottomContent && (React.createElement(React.Fragment, null,
174
- React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-bottomContent" },
175
- React.createElement(VerticalSpace.VerticalSpace, null),
176
- React.createElement(Rule.Rule, null),
177
- React.createElement(VerticalSpace.VerticalSpace, null),
178
- bottomContent,
179
- React.createElement(VerticalSpace.VerticalSpace, null)))))))));
222
+ React.createElement("div", { ref: setThemeElement },
223
+ React.createElement(index$2.Root, { open: isOpen },
224
+ React.createElement(index$2.Portal, { container: themeElement },
225
+ React.createElement(index$2.Overlay, { className: "arc-NavigationHeaderBurgerMenu-overlay" },
226
+ React.createElement(index$2.Content, { "aria-describedby": undefined, className: "arc-NavigationHeaderBurgerMenu-slider", onCloseAutoFocus: focusTriggerElement, onEscapeKeyDown: closeMenu, onInteractOutside: closeMenu, "aria-modal": "true" },
227
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-container" },
228
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-mainContent" },
229
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-header" },
230
+ React.createElement(index$2.Title, null,
231
+ React.createElement(VisuallyHidden.VisuallyHidden, null, "Menu")),
232
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-logoContainer" },
233
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-logoWrapper" },
234
+ React.createElement(NavigationHeaderLogo, filterAttrs.__assign({}, logo, { isSurfaceSensitive: false })))),
235
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-closeButtonContainer" },
236
+ React.createElement(Tooltip.Tooltip, { asChild: true, delayDuration: 0, title: "Close menu", side: "left" },
237
+ React.createElement(NavigationHeaderCloseButton, { onClick: closeMenu })))),
238
+ header && (React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-topContent" }, header)),
239
+ (navItems || actions) && (React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-navigationContent" },
240
+ navItems && (React.createElement("ul", { className: "arc-NavigationHeaderBurgerMenu-list" }, navItems.map(function (navItem, navItemIndex) { return (React.createElement(React.Fragment, { key: "".concat(id, "-burger-nav-item-").concat(navItemIndex) },
241
+ React.createElement("li", { className: "arc-NavigationHeaderBurgerMenu-listItem" },
242
+ React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-listItemContent" },
243
+ (navItem.type === "link" ||
244
+ navItem.type === "meatball") && (React.createElement(NavigationHeaderMenuLink, { href: navItem.href, onClick: navItem.onClick, text: navItem.text })),
245
+ (navItem.type === "subnav" ||
246
+ navItem.type === "dropdown") && (React.createElement(NavigationHeaderDisclosure, { heading: navItem.text }, navItem.items.map(function (subNavItem, subNavItemIndex) { return (React.createElement(NavigationHeaderMenuLink, { size: "s", key: "".concat(id, "-").concat(navItemIndex, "-burger-sub-nav-item-").concat(subNavItemIndex), href: subNavItem.href, onClick: subNavItem.onClick, text: subNavItem.text })); }))))))); }))),
247
+ actions && (React.createElement("div", { className: index.classNames("arc-NavigationHeaderBurgerMenu-actionsContainer", {
248
+ "arc-NavigationHeaderBurgerMenu-actionsContainer--seperator": navItems && actions,
249
+ }) }, actions.map(function (props, i) { return (React.createElement(NavigationHeaderInlineAction, filterAttrs.__assign({ key: "".concat(id, "-action-{").concat(i, "}") }, props))); })))))),
250
+ footer && (React.createElement("div", { className: "arc-NavigationHeaderBurgerMenu-footer" },
251
+ React.createElement(Surface.Surface, { isTransparent: true, background: "dark-black" }, footer)))))))))));
252
+ };
253
+
254
+ var NavigationHeaderNavLink = function (_a) {
255
+ var text = _a.text, onClick = _a.onClick, href = _a.href, _b = _a.borderRadiusSize, borderRadiusSize = _b === void 0 ? "s" : _b;
256
+ var surface = React.useContext(Surface.Context).surface;
257
+ return (React.createElement("a", { href: href, onClick: onClick, className: index.classNames("arc-NavigationHeaderNavLink", suffixModifier.suffixModifier("arc-NavigationHeaderNavLink--borderRadiusSize", borderRadiusSize), suffixModifier.suffixModifier("arc-NavigationHeaderNavLink--on", surface)) },
258
+ React.createElement(Text.Text, null, text)));
180
259
  };
181
260
 
182
261
  // src/get-focusable-elements/get-focusable-elements.ts
@@ -198,6 +277,8 @@ var getFocusableElements = (rootElement) => {
198
277
  return nodes;
199
278
  };
200
279
 
280
+ var NavigationHeaderContext = React.createContext(null);
281
+
201
282
  var NavigationHeaderDropdown = function (_a) {
202
283
  var children = _a.children, trigger = _a.trigger, ariaLabel = _a.ariaLabel, tooltip = _a.tooltip;
203
284
  var _b = React.useState(false), isOpen = _b[0], setIsOpen = _b[1];
@@ -205,7 +286,7 @@ var NavigationHeaderDropdown = function (_a) {
205
286
  var containerRef = React.useRef(null);
206
287
  var _c = React.useState(false), isTooltipOpen = _c[0], setIsTooltipOpen = _c[1];
207
288
  var interactionMode = useInteractionMode().interactionMode;
208
- var navigationHeaderContext = React.useContext(kebabCase.NavigationHeaderContext);
289
+ var navigationHeaderContext = React.useContext(NavigationHeaderContext);
209
290
  // Close the dropdown if the nav or trigger is hidden
210
291
  React.useEffect(function () {
211
292
  var resizeObserver = new ResizeObserver(function (entries) {
@@ -251,7 +332,7 @@ var NavigationHeaderDropdown = function (_a) {
251
332
  var toggleVisibility = function () { return setIsOpen(function (isOpen) { return !isOpen; }); };
252
333
  return (React.createElement(Popover.Popover, { useBespokeTrigger: true, align: "center", background: "light", arrow: true, sideOffset: 12, alignOffset: 0, open: isOpen, onCloseAutoFocus: onCloseAutoFocus, onOpenAutoFocus: focusOnFirstElement, onEscapeKeyDown: handleOutSideInteraction, onFocusOutside: handleOutSideInteraction, onInteractOutside: handleOutSideInteraction, onPointerDownOutside: handleOutSideInteraction, content: React.createElement("div", { ref: containerRef },
253
334
  React.createElement("ul", { className: "arc-NavigationHeaderDropdown-navList" }, children)) }, tooltip ? (React.createElement(Tooltip.Tooltip, { asChild: true, title: tooltip, open: isTooltipOpen, delayDuration: 0, alignContent: "center", side: "bottom" },
254
- React.createElement(kebabCase.NavigationHeaderButton, { ref: triggerRef, "aria-label": ariaLabel, "aria-expanded": isOpen, "aria-haspopup": "dialog", "aria-describedby": undefined, isActive: isOpen, onClick: toggleVisibility, onMouseEnter: function () { return setIsTooltipOpen(!isOpen); }, onMouseLeave: function () { return setIsTooltipOpen(false); }, onFocus: function () { return setIsTooltipOpen(true); }, onBlur: function () { return setIsTooltipOpen(false); } }, trigger))) : (React.createElement(kebabCase.NavigationHeaderButton, { ref: triggerRef, "aria-label": ariaLabel, "aria-expanded": isOpen, "aria-haspopup": "dialog", isActive: isOpen, onClick: toggleVisibility }, trigger))));
335
+ React.createElement(NavigationHeaderButton, { ref: triggerRef, "aria-label": ariaLabel, "aria-expanded": isOpen, "aria-haspopup": "dialog", "aria-describedby": undefined, isActive: isOpen, onClick: toggleVisibility, onMouseEnter: function () { return setIsTooltipOpen(!isOpen); }, onMouseLeave: function () { return setIsTooltipOpen(false); }, onFocus: function () { return setIsTooltipOpen(true); }, onBlur: function () { return setIsTooltipOpen(false); } }, trigger))) : (React.createElement(NavigationHeaderButton, { ref: triggerRef, "aria-label": ariaLabel, "aria-expanded": isOpen, "aria-haspopup": "dialog", isActive: isOpen, onClick: toggleVisibility }, trigger))));
255
336
  };
256
337
 
257
338
  var NavigationHeaderContainer = function (_a) {
@@ -304,7 +385,7 @@ var NavigationHeaderSubnav = function (_a) {
304
385
  var _b;
305
386
  var trigger = _a.trigger, ariaLabel = _a.ariaLabel, children = _a.children;
306
387
  var _c = React.useState(false), isOpen = _c[0], setIsOpen = _c[1];
307
- var navigationHeaderContext = React.useContext(kebabCase.NavigationHeaderContext);
388
+ var navigationHeaderContext = React.useContext(NavigationHeaderContext);
308
389
  var containerRef = React.useRef(null);
309
390
  var dialogRef = React.useRef(null);
310
391
  var listRef = React.useRef(null);
@@ -386,16 +467,16 @@ var NavigationHeaderSubnav = function (_a) {
386
467
  triggerRef.current,
387
468
  ]);
388
469
  return (React.createElement("div", { ref: containerRef },
389
- React.createElement(kebabCase.NavigationHeaderButton, { "data-sub-nav-item": true, ref: triggerRef, isActive: isOpen, "aria-label": ariaLabel, onClick: onTriggerClick }, trigger),
390
- React.createElement(index$1.Root, { open: isOpen, modal: false },
391
- React.createElement(index$1.Portal, { container: (_b = navigationHeaderContext === null || navigationHeaderContext === void 0 ? void 0 : navigationHeaderContext.navBarPortalRef) === null || _b === void 0 ? void 0 : _b.current },
470
+ React.createElement(NavigationHeaderButton, { "data-sub-nav-item": true, ref: triggerRef, isActive: isOpen, "aria-label": ariaLabel, onClick: onTriggerClick }, trigger),
471
+ React.createElement(index$2.Root, { open: isOpen, modal: false },
472
+ React.createElement(index$2.Portal, { container: (_b = navigationHeaderContext === null || navigationHeaderContext === void 0 ? void 0 : navigationHeaderContext.navBarPortalRef) === null || _b === void 0 ? void 0 : _b.current },
392
473
  React.createElement("div", { className: "arc-NavigationHeaderSubnav" },
393
474
  React.createElement("div", { className: "arc-NavigationHeaderSubnav-container" },
394
475
  React.createElement(NavigationHeaderContainer, { isExtended: navigationHeaderContext === null || navigationHeaderContext === void 0 ? void 0 : navigationHeaderContext.isExtended, isFluid: navigationHeaderContext === null || navigationHeaderContext === void 0 ? void 0 : navigationHeaderContext.isFluid, isPill: navigationHeaderContext === null || navigationHeaderContext === void 0 ? void 0 : navigationHeaderContext.isPill, background: "neutral" },
395
- React.createElement(index$1.Content, { ref: dialogRef, "aria-describedby": undefined, onEscapeKeyDown: onEscapeKeyDown, onCloseAutoFocus: onCloseAutoFocus, onOpenAutoFocus: onOpenAutoFocus },
476
+ React.createElement(index$2.Content, { ref: dialogRef, "aria-describedby": undefined, onEscapeKeyDown: onEscapeKeyDown, onCloseAutoFocus: onCloseAutoFocus, onOpenAutoFocus: onOpenAutoFocus },
396
477
  React.createElement("div", { className: "arc-NavigationHeaderSubnav-content" },
397
478
  React.createElement(VisuallyHidden.VisuallyHidden, null,
398
- React.createElement(index$1.Title, null,
479
+ React.createElement(index$2.Title, null,
399
480
  trigger,
400
481
  " sub menu")),
401
482
  React.createElement("ul", { ref: listRef, className: "arc-NavigationHeaderSubnav-navList" }, children))))))))));
@@ -418,6 +499,717 @@ var MeatBall = function () { return (React.createElement("svg", { width: 18, "ar
418
499
  React.createElement("path", { d: "M8.5 3.0598e-07C9.32843 2.69769e-07 10 0.671573 10 1.5C10 2.32843 9.32843 3 8.5 3C7.67157 3 7 2.32843 7 1.5C7 0.671573 7.67157 3.42192e-07 8.5 3.0598e-07Z", fill: "currentColor" }),
419
500
  React.createElement("path", { d: "M15.5 0C16.3284 -3.62112e-08 17 0.671573 17 1.5C17 2.32843 16.3284 3 15.5 3C14.6716 3 14 2.32843 14 1.5C14 0.671573 14.6716 3.62122e-08 15.5 0Z", fill: "currentColor" })))); };
420
501
 
502
+ /*! https://mths.be/cssesc v3.0.0 by @mathias */
503
+
504
+ var cssesc_1;
505
+ var hasRequiredCssesc;
506
+
507
+ function requireCssesc () {
508
+ if (hasRequiredCssesc) return cssesc_1;
509
+ hasRequiredCssesc = 1;
510
+
511
+ var object = {};
512
+ var hasOwnProperty = object.hasOwnProperty;
513
+ var merge = function merge(options, defaults) {
514
+ if (!options) {
515
+ return defaults;
516
+ }
517
+ var result = {};
518
+ for (var key in defaults) {
519
+ // `if (defaults.hasOwnProperty(key) { … }` is not needed here, since
520
+ // only recognized option names are used.
521
+ result[key] = hasOwnProperty.call(options, key) ? options[key] : defaults[key];
522
+ }
523
+ return result;
524
+ };
525
+
526
+ var regexAnySingleEscape = /[ -,\.\/:-@\[-\^`\{-~]/;
527
+ var regexSingleEscape = /[ -,\.\/:-@\[\]\^`\{-~]/;
528
+ var regexExcessiveSpaces = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g;
529
+
530
+ // https://mathiasbynens.be/notes/css-escapes#css
531
+ var cssesc = function cssesc(string, options) {
532
+ options = merge(options, cssesc.options);
533
+ if (options.quotes != 'single' && options.quotes != 'double') {
534
+ options.quotes = 'single';
535
+ }
536
+ var quote = options.quotes == 'double' ? '"' : '\'';
537
+ var isIdentifier = options.isIdentifier;
538
+
539
+ var firstChar = string.charAt(0);
540
+ var output = '';
541
+ var counter = 0;
542
+ var length = string.length;
543
+ while (counter < length) {
544
+ var character = string.charAt(counter++);
545
+ var codePoint = character.charCodeAt();
546
+ var value = void 0;
547
+ // If it’s not a printable ASCII character…
548
+ if (codePoint < 0x20 || codePoint > 0x7E) {
549
+ if (codePoint >= 0xD800 && codePoint <= 0xDBFF && counter < length) {
550
+ // It’s a high surrogate, and there is a next character.
551
+ var extra = string.charCodeAt(counter++);
552
+ if ((extra & 0xFC00) == 0xDC00) {
553
+ // next character is low surrogate
554
+ codePoint = ((codePoint & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000;
555
+ } else {
556
+ // It’s an unmatched surrogate; only append this code unit, in case
557
+ // the next code unit is the high surrogate of a surrogate pair.
558
+ counter--;
559
+ }
560
+ }
561
+ value = '\\' + codePoint.toString(16).toUpperCase() + ' ';
562
+ } else {
563
+ if (options.escapeEverything) {
564
+ if (regexAnySingleEscape.test(character)) {
565
+ value = '\\' + character;
566
+ } else {
567
+ value = '\\' + codePoint.toString(16).toUpperCase() + ' ';
568
+ }
569
+ } else if (/[\t\n\f\r\x0B]/.test(character)) {
570
+ value = '\\' + codePoint.toString(16).toUpperCase() + ' ';
571
+ } else if (character == '\\' || !isIdentifier && (character == '"' && quote == character || character == '\'' && quote == character) || isIdentifier && regexSingleEscape.test(character)) {
572
+ value = '\\' + character;
573
+ } else {
574
+ value = character;
575
+ }
576
+ }
577
+ output += value;
578
+ }
579
+
580
+ if (isIdentifier) {
581
+ if (/^-[-\d]/.test(output)) {
582
+ output = '\\-' + output.slice(1);
583
+ } else if (/\d/.test(firstChar)) {
584
+ output = '\\3' + firstChar + ' ' + output.slice(1);
585
+ }
586
+ }
587
+
588
+ // Remove spaces after `\HEX` escapes that are not followed by a hex digit,
589
+ // since they’re redundant. Note that this is only possible if the escape
590
+ // sequence isn’t preceded by an odd number of backslashes.
591
+ output = output.replace(regexExcessiveSpaces, function ($0, $1, $2) {
592
+ if ($1 && $1.length % 2) {
593
+ // It’s not safe to remove the space, so don’t.
594
+ return $0;
595
+ }
596
+ // Strip the space.
597
+ return ($1 || '') + $2;
598
+ });
599
+
600
+ if (!isIdentifier && options.wrap) {
601
+ return quote + output + quote;
602
+ }
603
+ return output;
604
+ };
605
+
606
+ // Expose default options (so they can be overridden globally).
607
+ cssesc.options = {
608
+ 'escapeEverything': false,
609
+ 'isIdentifier': false,
610
+ 'quotes': 'single',
611
+ 'wrap': false
612
+ };
613
+
614
+ cssesc.version = '3.0.0';
615
+
616
+ cssesc_1 = cssesc;
617
+ return cssesc_1;
618
+ }
619
+
620
+ var cssescExports = requireCssesc();
621
+ var cssEscape = /*@__PURE__*/index.getDefaultExportFromCjs(cssescExports);
622
+
623
+ /**
624
+ * A specialized version of `_.reduce` for arrays without support for
625
+ * iteratee shorthands.
626
+ *
627
+ * @private
628
+ * @param {Array} [array] The array to iterate over.
629
+ * @param {Function} iteratee The function invoked per iteration.
630
+ * @param {*} [accumulator] The initial value.
631
+ * @param {boolean} [initAccum] Specify using the first element of `array` as
632
+ * the initial value.
633
+ * @returns {*} Returns the accumulated value.
634
+ */
635
+
636
+ var _arrayReduce;
637
+ var hasRequired_arrayReduce;
638
+
639
+ function require_arrayReduce () {
640
+ if (hasRequired_arrayReduce) return _arrayReduce;
641
+ hasRequired_arrayReduce = 1;
642
+ function arrayReduce(array, iteratee, accumulator, initAccum) {
643
+ var index = -1,
644
+ length = array == null ? 0 : array.length;
645
+
646
+ if (initAccum && length) {
647
+ accumulator = array[++index];
648
+ }
649
+ while (++index < length) {
650
+ accumulator = iteratee(accumulator, array[index], index, array);
651
+ }
652
+ return accumulator;
653
+ }
654
+
655
+ _arrayReduce = arrayReduce;
656
+ return _arrayReduce;
657
+ }
658
+
659
+ /**
660
+ * The base implementation of `_.propertyOf` without support for deep paths.
661
+ *
662
+ * @private
663
+ * @param {Object} object The object to query.
664
+ * @returns {Function} Returns the new accessor function.
665
+ */
666
+
667
+ var _basePropertyOf;
668
+ var hasRequired_basePropertyOf;
669
+
670
+ function require_basePropertyOf () {
671
+ if (hasRequired_basePropertyOf) return _basePropertyOf;
672
+ hasRequired_basePropertyOf = 1;
673
+ function basePropertyOf(object) {
674
+ return function(key) {
675
+ return object == null ? undefined : object[key];
676
+ };
677
+ }
678
+
679
+ _basePropertyOf = basePropertyOf;
680
+ return _basePropertyOf;
681
+ }
682
+
683
+ var _deburrLetter;
684
+ var hasRequired_deburrLetter;
685
+
686
+ function require_deburrLetter () {
687
+ if (hasRequired_deburrLetter) return _deburrLetter;
688
+ hasRequired_deburrLetter = 1;
689
+ var basePropertyOf = require_basePropertyOf();
690
+
691
+ /** Used to map Latin Unicode letters to basic Latin letters. */
692
+ var deburredLetters = {
693
+ // Latin-1 Supplement block.
694
+ '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
695
+ '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
696
+ '\xc7': 'C', '\xe7': 'c',
697
+ '\xd0': 'D', '\xf0': 'd',
698
+ '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
699
+ '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
700
+ '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
701
+ '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
702
+ '\xd1': 'N', '\xf1': 'n',
703
+ '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
704
+ '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
705
+ '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
706
+ '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
707
+ '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
708
+ '\xc6': 'Ae', '\xe6': 'ae',
709
+ '\xde': 'Th', '\xfe': 'th',
710
+ '\xdf': 'ss',
711
+ // Latin Extended-A block.
712
+ '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
713
+ '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
714
+ '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
715
+ '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
716
+ '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
717
+ '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
718
+ '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
719
+ '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
720
+ '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
721
+ '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
722
+ '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
723
+ '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
724
+ '\u0134': 'J', '\u0135': 'j',
725
+ '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
726
+ '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
727
+ '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
728
+ '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
729
+ '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
730
+ '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
731
+ '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
732
+ '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
733
+ '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
734
+ '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
735
+ '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
736
+ '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
737
+ '\u0163': 't', '\u0165': 't', '\u0167': 't',
738
+ '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
739
+ '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
740
+ '\u0174': 'W', '\u0175': 'w',
741
+ '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
742
+ '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
743
+ '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
744
+ '\u0132': 'IJ', '\u0133': 'ij',
745
+ '\u0152': 'Oe', '\u0153': 'oe',
746
+ '\u0149': "'n", '\u017f': 's'
747
+ };
748
+
749
+ /**
750
+ * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
751
+ * letters to basic Latin letters.
752
+ *
753
+ * @private
754
+ * @param {string} letter The matched letter to deburr.
755
+ * @returns {string} Returns the deburred letter.
756
+ */
757
+ var deburrLetter = basePropertyOf(deburredLetters);
758
+
759
+ _deburrLetter = deburrLetter;
760
+ return _deburrLetter;
761
+ }
762
+
763
+ /**
764
+ * A specialized version of `_.map` for arrays without support for iteratee
765
+ * shorthands.
766
+ *
767
+ * @private
768
+ * @param {Array} [array] The array to iterate over.
769
+ * @param {Function} iteratee The function invoked per iteration.
770
+ * @returns {Array} Returns the new mapped array.
771
+ */
772
+
773
+ var _arrayMap;
774
+ var hasRequired_arrayMap;
775
+
776
+ function require_arrayMap () {
777
+ if (hasRequired_arrayMap) return _arrayMap;
778
+ hasRequired_arrayMap = 1;
779
+ function arrayMap(array, iteratee) {
780
+ var index = -1,
781
+ length = array == null ? 0 : array.length,
782
+ result = Array(length);
783
+
784
+ while (++index < length) {
785
+ result[index] = iteratee(array[index], index, array);
786
+ }
787
+ return result;
788
+ }
789
+
790
+ _arrayMap = arrayMap;
791
+ return _arrayMap;
792
+ }
793
+
794
+ /**
795
+ * Checks if `value` is classified as an `Array` object.
796
+ *
797
+ * @static
798
+ * @memberOf _
799
+ * @since 0.1.0
800
+ * @category Lang
801
+ * @param {*} value The value to check.
802
+ * @returns {boolean} Returns `true` if `value` is an array, else `false`.
803
+ * @example
804
+ *
805
+ * _.isArray([1, 2, 3]);
806
+ * // => true
807
+ *
808
+ * _.isArray(document.body.children);
809
+ * // => false
810
+ *
811
+ * _.isArray('abc');
812
+ * // => false
813
+ *
814
+ * _.isArray(_.noop);
815
+ * // => false
816
+ */
817
+
818
+ var isArray_1;
819
+ var hasRequiredIsArray;
820
+
821
+ function requireIsArray () {
822
+ if (hasRequiredIsArray) return isArray_1;
823
+ hasRequiredIsArray = 1;
824
+ var isArray = Array.isArray;
825
+
826
+ isArray_1 = isArray;
827
+ return isArray_1;
828
+ }
829
+
830
+ var _baseToString;
831
+ var hasRequired_baseToString;
832
+
833
+ function require_baseToString () {
834
+ if (hasRequired_baseToString) return _baseToString;
835
+ hasRequired_baseToString = 1;
836
+ var Symbol = isSymbol.require_Symbol(),
837
+ arrayMap = require_arrayMap(),
838
+ isArray = requireIsArray(),
839
+ isSymbol$1 = isSymbol.requireIsSymbol();
840
+
841
+ /** Used as references for various `Number` constants. */
842
+ var INFINITY = 1 / 0;
843
+
844
+ /** Used to convert symbols to primitives and strings. */
845
+ var symbolProto = Symbol ? Symbol.prototype : undefined,
846
+ symbolToString = symbolProto ? symbolProto.toString : undefined;
847
+
848
+ /**
849
+ * The base implementation of `_.toString` which doesn't convert nullish
850
+ * values to empty strings.
851
+ *
852
+ * @private
853
+ * @param {*} value The value to process.
854
+ * @returns {string} Returns the string.
855
+ */
856
+ function baseToString(value) {
857
+ // Exit early for strings to avoid a performance hit in some environments.
858
+ if (typeof value == 'string') {
859
+ return value;
860
+ }
861
+ if (isArray(value)) {
862
+ // Recursively convert values (susceptible to call stack limits).
863
+ return arrayMap(value, baseToString) + '';
864
+ }
865
+ if (isSymbol$1(value)) {
866
+ return symbolToString ? symbolToString.call(value) : '';
867
+ }
868
+ var result = (value + '');
869
+ return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
870
+ }
871
+
872
+ _baseToString = baseToString;
873
+ return _baseToString;
874
+ }
875
+
876
+ var toString_1;
877
+ var hasRequiredToString;
878
+
879
+ function requireToString () {
880
+ if (hasRequiredToString) return toString_1;
881
+ hasRequiredToString = 1;
882
+ var baseToString = require_baseToString();
883
+
884
+ /**
885
+ * Converts `value` to a string. An empty string is returned for `null`
886
+ * and `undefined` values. The sign of `-0` is preserved.
887
+ *
888
+ * @static
889
+ * @memberOf _
890
+ * @since 4.0.0
891
+ * @category Lang
892
+ * @param {*} value The value to convert.
893
+ * @returns {string} Returns the converted string.
894
+ * @example
895
+ *
896
+ * _.toString(null);
897
+ * // => ''
898
+ *
899
+ * _.toString(-0);
900
+ * // => '-0'
901
+ *
902
+ * _.toString([1, 2, 3]);
903
+ * // => '1,2,3'
904
+ */
905
+ function toString(value) {
906
+ return value == null ? '' : baseToString(value);
907
+ }
908
+
909
+ toString_1 = toString;
910
+ return toString_1;
911
+ }
912
+
913
+ var deburr_1;
914
+ var hasRequiredDeburr;
915
+
916
+ function requireDeburr () {
917
+ if (hasRequiredDeburr) return deburr_1;
918
+ hasRequiredDeburr = 1;
919
+ var deburrLetter = require_deburrLetter(),
920
+ toString = requireToString();
921
+
922
+ /** Used to match Latin Unicode letters (excluding mathematical operators). */
923
+ var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
924
+
925
+ /** Used to compose unicode character classes. */
926
+ var rsComboMarksRange = '\\u0300-\\u036f',
927
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
928
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
929
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;
930
+
931
+ /** Used to compose unicode capture groups. */
932
+ var rsCombo = '[' + rsComboRange + ']';
933
+
934
+ /**
935
+ * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
936
+ * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
937
+ */
938
+ var reComboMark = RegExp(rsCombo, 'g');
939
+
940
+ /**
941
+ * Deburrs `string` by converting
942
+ * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
943
+ * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
944
+ * letters to basic Latin letters and removing
945
+ * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
946
+ *
947
+ * @static
948
+ * @memberOf _
949
+ * @since 3.0.0
950
+ * @category String
951
+ * @param {string} [string=''] The string to deburr.
952
+ * @returns {string} Returns the deburred string.
953
+ * @example
954
+ *
955
+ * _.deburr('déjà vu');
956
+ * // => 'deja vu'
957
+ */
958
+ function deburr(string) {
959
+ string = toString(string);
960
+ return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');
961
+ }
962
+
963
+ deburr_1 = deburr;
964
+ return deburr_1;
965
+ }
966
+
967
+ /** Used to match words composed of alphanumeric characters. */
968
+
969
+ var _asciiWords;
970
+ var hasRequired_asciiWords;
971
+
972
+ function require_asciiWords () {
973
+ if (hasRequired_asciiWords) return _asciiWords;
974
+ hasRequired_asciiWords = 1;
975
+ var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
976
+
977
+ /**
978
+ * Splits an ASCII `string` into an array of its words.
979
+ *
980
+ * @private
981
+ * @param {string} The string to inspect.
982
+ * @returns {Array} Returns the words of `string`.
983
+ */
984
+ function asciiWords(string) {
985
+ return string.match(reAsciiWord) || [];
986
+ }
987
+
988
+ _asciiWords = asciiWords;
989
+ return _asciiWords;
990
+ }
991
+
992
+ /** Used to detect strings that need a more robust regexp to match words. */
993
+
994
+ var _hasUnicodeWord;
995
+ var hasRequired_hasUnicodeWord;
996
+
997
+ function require_hasUnicodeWord () {
998
+ if (hasRequired_hasUnicodeWord) return _hasUnicodeWord;
999
+ hasRequired_hasUnicodeWord = 1;
1000
+ var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
1001
+
1002
+ /**
1003
+ * Checks if `string` contains a word composed of Unicode symbols.
1004
+ *
1005
+ * @private
1006
+ * @param {string} string The string to inspect.
1007
+ * @returns {boolean} Returns `true` if a word is found, else `false`.
1008
+ */
1009
+ function hasUnicodeWord(string) {
1010
+ return reHasUnicodeWord.test(string);
1011
+ }
1012
+
1013
+ _hasUnicodeWord = hasUnicodeWord;
1014
+ return _hasUnicodeWord;
1015
+ }
1016
+
1017
+ /** Used to compose unicode character classes. */
1018
+
1019
+ var _unicodeWords;
1020
+ var hasRequired_unicodeWords;
1021
+
1022
+ function require_unicodeWords () {
1023
+ if (hasRequired_unicodeWords) return _unicodeWords;
1024
+ hasRequired_unicodeWords = 1;
1025
+ var rsAstralRange = '\\ud800-\\udfff',
1026
+ rsComboMarksRange = '\\u0300-\\u036f',
1027
+ reComboHalfMarksRange = '\\ufe20-\\ufe2f',
1028
+ rsComboSymbolsRange = '\\u20d0-\\u20ff',
1029
+ rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
1030
+ rsDingbatRange = '\\u2700-\\u27bf',
1031
+ rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
1032
+ rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
1033
+ rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
1034
+ rsPunctuationRange = '\\u2000-\\u206f',
1035
+ rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000',
1036
+ rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
1037
+ rsVarRange = '\\ufe0e\\ufe0f',
1038
+ rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
1039
+
1040
+ /** Used to compose unicode capture groups. */
1041
+ var rsApos = "['\u2019]",
1042
+ rsBreak = '[' + rsBreakRange + ']',
1043
+ rsCombo = '[' + rsComboRange + ']',
1044
+ rsDigits = '\\d+',
1045
+ rsDingbat = '[' + rsDingbatRange + ']',
1046
+ rsLower = '[' + rsLowerRange + ']',
1047
+ rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
1048
+ rsFitz = '\\ud83c[\\udffb-\\udfff]',
1049
+ rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
1050
+ rsNonAstral = '[^' + rsAstralRange + ']',
1051
+ rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
1052
+ rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
1053
+ rsUpper = '[' + rsUpperRange + ']',
1054
+ rsZWJ = '\\u200d';
1055
+
1056
+ /** Used to compose unicode regexes. */
1057
+ var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
1058
+ rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
1059
+ rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',
1060
+ rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',
1061
+ reOptMod = rsModifier + '?',
1062
+ rsOptVar = '[' + rsVarRange + ']?',
1063
+ rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
1064
+ rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
1065
+ rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
1066
+ rsSeq = rsOptVar + reOptMod + rsOptJoin,
1067
+ rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
1068
+
1069
+ /** Used to match complex or compound words. */
1070
+ var reUnicodeWord = RegExp([
1071
+ rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
1072
+ rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
1073
+ rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
1074
+ rsUpper + '+' + rsOptContrUpper,
1075
+ rsOrdUpper,
1076
+ rsOrdLower,
1077
+ rsDigits,
1078
+ rsEmoji
1079
+ ].join('|'), 'g');
1080
+
1081
+ /**
1082
+ * Splits a Unicode `string` into an array of its words.
1083
+ *
1084
+ * @private
1085
+ * @param {string} The string to inspect.
1086
+ * @returns {Array} Returns the words of `string`.
1087
+ */
1088
+ function unicodeWords(string) {
1089
+ return string.match(reUnicodeWord) || [];
1090
+ }
1091
+
1092
+ _unicodeWords = unicodeWords;
1093
+ return _unicodeWords;
1094
+ }
1095
+
1096
+ var words_1;
1097
+ var hasRequiredWords;
1098
+
1099
+ function requireWords () {
1100
+ if (hasRequiredWords) return words_1;
1101
+ hasRequiredWords = 1;
1102
+ var asciiWords = require_asciiWords(),
1103
+ hasUnicodeWord = require_hasUnicodeWord(),
1104
+ toString = requireToString(),
1105
+ unicodeWords = require_unicodeWords();
1106
+
1107
+ /**
1108
+ * Splits `string` into an array of its words.
1109
+ *
1110
+ * @static
1111
+ * @memberOf _
1112
+ * @since 3.0.0
1113
+ * @category String
1114
+ * @param {string} [string=''] The string to inspect.
1115
+ * @param {RegExp|string} [pattern] The pattern to match words.
1116
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
1117
+ * @returns {Array} Returns the words of `string`.
1118
+ * @example
1119
+ *
1120
+ * _.words('fred, barney, & pebbles');
1121
+ * // => ['fred', 'barney', 'pebbles']
1122
+ *
1123
+ * _.words('fred, barney, & pebbles', /[^, ]+/g);
1124
+ * // => ['fred', 'barney', '&', 'pebbles']
1125
+ */
1126
+ function words(string, pattern, guard) {
1127
+ string = toString(string);
1128
+ pattern = guard ? undefined : pattern;
1129
+
1130
+ if (pattern === undefined) {
1131
+ return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);
1132
+ }
1133
+ return string.match(pattern) || [];
1134
+ }
1135
+
1136
+ words_1 = words;
1137
+ return words_1;
1138
+ }
1139
+
1140
+ var _createCompounder;
1141
+ var hasRequired_createCompounder;
1142
+
1143
+ function require_createCompounder () {
1144
+ if (hasRequired_createCompounder) return _createCompounder;
1145
+ hasRequired_createCompounder = 1;
1146
+ var arrayReduce = require_arrayReduce(),
1147
+ deburr = requireDeburr(),
1148
+ words = requireWords();
1149
+
1150
+ /** Used to compose unicode capture groups. */
1151
+ var rsApos = "['\u2019]";
1152
+
1153
+ /** Used to match apostrophes. */
1154
+ var reApos = RegExp(rsApos, 'g');
1155
+
1156
+ /**
1157
+ * Creates a function like `_.camelCase`.
1158
+ *
1159
+ * @private
1160
+ * @param {Function} callback The function to combine each word.
1161
+ * @returns {Function} Returns the new compounder function.
1162
+ */
1163
+ function createCompounder(callback) {
1164
+ return function(string) {
1165
+ return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
1166
+ };
1167
+ }
1168
+
1169
+ _createCompounder = createCompounder;
1170
+ return _createCompounder;
1171
+ }
1172
+
1173
+ var kebabCase_1;
1174
+ var hasRequiredKebabCase;
1175
+
1176
+ function requireKebabCase () {
1177
+ if (hasRequiredKebabCase) return kebabCase_1;
1178
+ hasRequiredKebabCase = 1;
1179
+ var createCompounder = require_createCompounder();
1180
+
1181
+ /**
1182
+ * Converts `string` to
1183
+ * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
1184
+ *
1185
+ * @static
1186
+ * @memberOf _
1187
+ * @since 3.0.0
1188
+ * @category String
1189
+ * @param {string} [string=''] The string to convert.
1190
+ * @returns {string} Returns the kebab cased string.
1191
+ * @example
1192
+ *
1193
+ * _.kebabCase('Foo Bar');
1194
+ * // => 'foo-bar'
1195
+ *
1196
+ * _.kebabCase('fooBar');
1197
+ * // => 'foo-bar'
1198
+ *
1199
+ * _.kebabCase('__FOO_BAR__');
1200
+ * // => 'foo-bar'
1201
+ */
1202
+ var kebabCase = createCompounder(function(result, word, index) {
1203
+ return result + (index ? '-' : '') + word.toLowerCase();
1204
+ });
1205
+
1206
+ kebabCase_1 = kebabCase;
1207
+ return kebabCase_1;
1208
+ }
1209
+
1210
+ var kebabCaseExports = requireKebabCase();
1211
+ var kebabCase = /*@__PURE__*/index.getDefaultExportFromCjs(kebabCaseExports);
1212
+
421
1213
  var getQuery = function (_a) {
422
1214
  var breakpoint = _a.breakpoint, type = _a.type, _b = _a.isMatchMedia, isMatchMedia = _b === void 0 ? false : _b;
423
1215
  var breakpointValue = typeof breakpoint === "number" ? breakpoint : arcBreakpoints.ArcBreakpoints[breakpoint];
@@ -435,13 +1227,13 @@ var NavigationHeaderStyleElement = function (_a) {
435
1227
  var generateCssStyles = function (declarations) {
436
1228
  return Object.entries(declarations).reduce(function (acc, _a) {
437
1229
  var property = _a[0], value = _a[1];
438
- return "".concat(acc).concat(kebabCase.kebabCase(property), ":").concat(value, ";");
1230
+ return "".concat(acc).concat(kebabCase(property), ":").concat(value, ";");
439
1231
  }, "");
440
1232
  };
441
1233
  var styleStrings = css.map(function (_a) {
442
1234
  var declarations = _a.declarations, className = _a.className, mediaQuery = _a.mediaQuery;
443
- var escapedClassName = kebabCase.cssEscape(className, { isIdentifier: true });
444
- var escapedStyles = kebabCase.cssEscape(generateCssStyles(declarations));
1235
+ var escapedClassName = cssEscape(className, { isIdentifier: true });
1236
+ var escapedStyles = cssEscape(generateCssStyles(declarations));
445
1237
  var cssDeclarations = ".".concat(escapedClassName, " { ").concat(escapedStyles, " }");
446
1238
  return mediaQuery
447
1239
  ? "".concat(getQuery(mediaQuery), " { ").concat(cssDeclarations, " }")
@@ -529,7 +1321,7 @@ var NavigationHeaderNavList = function (_a) {
529
1321
  };
530
1322
 
531
1323
  var NavigationHeaderNav = function (props) {
532
- var navigationHeaderContext = React.useContext(kebabCase.NavigationHeaderContext);
1324
+ var navigationHeaderContext = React.useContext(NavigationHeaderContext);
533
1325
  return (React.createElement("nav", { "aria-label": "primary" },
534
1326
  React.createElement("div", { ref: navigationHeaderContext === null || navigationHeaderContext === void 0 ? void 0 : navigationHeaderContext.navBarPortalRef }),
535
1327
  React.createElement(NavigationHeaderContainer, filterAttrs.__assign({}, props))));
@@ -555,13 +1347,13 @@ var defaultHeaderVisibility = {
555
1347
  };
556
1348
 
557
1349
  var NavigationHeader = function (_a) {
558
- var leftSlot = _a.leftSlot, middleSlot = _a.middleSlot, rightSlot = _a.rightSlot, isPill = _a.isPill, isExtended = _a.isExtended, isFluid = _a.isFluid, logo = _a.logo, navItems = _a.navItems, background = _a.background, meatballMenuTooltip = _a.meatballMenuTooltip, burgerMenuBottomContent = _a.burgerMenuBottomContent, burgerMenuTopContent = _a.burgerMenuTopContent, burgerMenuVisibility = _a.burgerMenuVisibility, navMenuVisibility = _a.navMenuVisibility;
1350
+ var leftSlot = _a.leftSlot, middleSlot = _a.middleSlot, rightSlot = _a.rightSlot, isPill = _a.isPill, isExtended = _a.isExtended, isFluid = _a.isFluid, logo = _a.logo, navItems = _a.navItems, background = _a.background, meatballMenuTooltip = _a.meatballMenuTooltip, burgerMenuActions = _a.burgerMenuActions, burgerMenuFooter = _a.burgerMenuFooter, burgerMenuHeader = _a.burgerMenuHeader, burgerMenuVisibility = _a.burgerMenuVisibility, navMenuVisibility = _a.navMenuVisibility;
559
1351
  var navBarPortalRef = React.useRef(null);
560
1352
  var _b = React.useState(false), isSubMenuItemActive = _b[0], setIsSubMenuItemActive = _b[1];
561
1353
  var navBarBackground = isSubMenuItemActive ? "lightElevated" : background;
562
1354
  var burgerMenuVisibilityProps = filterAttrs.__assign(filterAttrs.__assign({}, defaultHeaderVisibility.burgerMenu), burgerMenuVisibility);
563
1355
  var navMenuVisibilityProps = filterAttrs.__assign(filterAttrs.__assign({}, defaultHeaderVisibility.navItems), navMenuVisibility);
564
- return (React.createElement(kebabCase.NavigationHeaderContext.Provider, { value: {
1356
+ return (React.createElement(NavigationHeaderContext.Provider, { value: {
565
1357
  navBarPortalRef: navBarPortalRef,
566
1358
  isPill: isPill,
567
1359
  isExtended: isExtended,
@@ -580,7 +1372,7 @@ var NavigationHeader = function (_a) {
580
1372
  rightSlot && (React.createElement("div", { className: "arc-NavigationHeader-rightSlot" }, rightSlot)),
581
1373
  React.createElement(Visible.Visible, filterAttrs.__assign({}, burgerMenuVisibilityProps),
582
1374
  React.createElement("div", { className: "arc-NavigationHeader-burgerMenuSlot" },
583
- React.createElement(NavigationHeaderBurgerMenu, { navItems: navItems, topContent: burgerMenuTopContent, bottomContent: burgerMenuBottomContent })))))));
1375
+ React.createElement(NavigationHeaderBurgerMenu, { logo: logo, navItems: navItems, actions: burgerMenuActions, header: burgerMenuHeader, footer: burgerMenuFooter })))))));
584
1376
  };
585
1377
 
586
1378
  var NavigationHeaderAction = function (_a) {
@@ -589,7 +1381,7 @@ var NavigationHeaderAction = function (_a) {
589
1381
  "arc-NavigationHeaderAction--attention": isAttention,
590
1382
  }) },
591
1383
  React.createElement(Tooltip.Tooltip, { asChild: true, delayDuration: 0, title: title, alignContent: "center", supportingCopy: supportingCopy, side: "bottom" },
592
- React.createElement(kebabCase.NavigationHeaderButton, { isPadded: false, onClick: onClick },
1384
+ React.createElement(NavigationHeaderButton, { isPadded: false, onClick: onClick },
593
1385
  React.createElement("div", { className: "arc-NavigationHeaderAction-content" },
594
1386
  React.createElement(Icon.Icon, { "aria-hidden": true, icon: icon, size: 24 }),
595
1387
  React.createElement(VisuallyHidden.VisuallyHidden, null, ariaLabel))))));