@telefonica/mistica 17.2.0 → 17.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/css/blau.css +30 -16
  2. package/css/community/cyber.css +1491 -0
  3. package/css/esimflag.css +41 -18
  4. package/css/mistica-common.css +6 -0
  5. package/css/mistica.css +1 -1
  6. package/css/movistar.css +35 -18
  7. package/css/o2.css +32 -18
  8. package/css/telefonica.css +44 -18
  9. package/css/vivo-evolution.css +72 -20
  10. package/css/vivo.css +32 -18
  11. package/dist/accordion.css-mistica.js +10 -10
  12. package/dist/align.css-mistica.js +1 -1
  13. package/dist/autocomplete.css-mistica.js +4 -4
  14. package/dist/avatar.css-mistica.js +1 -1
  15. package/dist/badge.css-mistica.js +1 -1
  16. package/dist/box.css-mistica.js +13 -13
  17. package/dist/boxed.css-mistica.js +24 -24
  18. package/dist/boxed.d.ts +9 -0
  19. package/dist/boxed.js +18 -15
  20. package/dist/button-group.css-mistica.js +1 -1
  21. package/dist/button-layout.css-mistica.js +19 -19
  22. package/dist/button.css-mistica.js +50 -50
  23. package/dist/callout.css-mistica.js +13 -13
  24. package/dist/card-internal.css-mistica.js +22 -22
  25. package/dist/carousel.css-mistica.js +30 -30
  26. package/dist/checkbox.css-mistica.js +15 -15
  27. package/dist/chip.css-mistica.js +18 -18
  28. package/dist/circle.css-mistica.js +2 -2
  29. package/dist/community/advanced-data-card.css-mistica.js +19 -19
  30. package/dist/community/ai-card.css-mistica.js +9 -9
  31. package/dist/community/blocks.css-mistica.js +3 -3
  32. package/dist/community/cyber/example-component.css-mistica.js +1 -1
  33. package/dist/community/example-component.css-mistica.js +1 -1
  34. package/dist/community/skins/cyber-skin.d.ts +5 -0
  35. package/dist/community/skins/cyber-skin.js +289 -256
  36. package/dist/counter.css-mistica.js +6 -6
  37. package/dist/cover-hero.css-mistica.js +7 -7
  38. package/dist/credit-card-number-field.css-mistica.js +3 -3
  39. package/dist/date-field.css-mistica.js +1 -1
  40. package/dist/date-time-picker.css-mistica.js +1 -1
  41. package/dist/dialog.css-mistica.js +10 -10
  42. package/dist/divider.css-mistica.js +5 -5
  43. package/dist/double-field.css-mistica.js +2 -2
  44. package/dist/drawer.css-mistica.js +4 -4
  45. package/dist/empty-state-card.css-mistica.js +1 -1
  46. package/dist/empty-state.css-mistica.js +8 -8
  47. package/dist/fade-in.css-mistica.js +1 -1
  48. package/dist/feedback.css-mistica.js +5 -5
  49. package/dist/file-upload.css-mistica.js +10 -10
  50. package/dist/fixed-footer-layout.css-mistica.js +6 -6
  51. package/dist/form.css-mistica.js +1 -1
  52. package/dist/generated/mistica-icons/icon-panel-collapse-regular.js +165 -0
  53. package/dist/generated/mistica-icons/icon-panel-expand-regular.js +159 -0
  54. package/dist/grid-layout.css-mistica.js +3 -3
  55. package/dist/grid.css-mistica.js +120 -120
  56. package/dist/header.css-mistica.js +1 -1
  57. package/dist/hero.css-mistica.js +4 -4
  58. package/dist/horizontal-scroll.css-mistica.js +1 -1
  59. package/dist/icon-button.css-mistica.js +53 -53
  60. package/dist/icons/icon-chevron.css-mistica.js +2 -2
  61. package/dist/icons/icon-error.css-mistica.js +1 -1
  62. package/dist/image.css-mistica.js +8 -8
  63. package/dist/index.d.ts +5 -0
  64. package/dist/index.js +10 -1
  65. package/dist/inline.css-mistica.js +11 -11
  66. package/dist/list.css-mistica.js +40 -28
  67. package/dist/list.css.d.ts +2 -0
  68. package/dist/list.d.ts +3 -1
  69. package/dist/list.js +176 -165
  70. package/dist/loading-bar.css-mistica.js +1 -1
  71. package/dist/loading-screen.css-mistica.js +12 -12
  72. package/dist/logo-movistar.js +1 -1
  73. package/dist/logo.css-mistica.js +5 -5
  74. package/dist/menu.css-mistica.js +13 -13
  75. package/dist/mobile-navigation-menu.d.ts +26 -0
  76. package/dist/mobile-navigation-menu.js +145 -0
  77. package/dist/mosaic.css-mistica.js +1 -1
  78. package/dist/navigation-bar.css-mistica.js +31 -97
  79. package/dist/navigation-bar.css.d.ts +0 -24
  80. package/dist/navigation-bar.d.ts +3 -38
  81. package/dist/navigation-bar.js +399 -586
  82. package/dist/navigation-breadcrumbs.css-mistica.js +1 -1
  83. package/dist/navigation-shared.css-mistica.js +79 -0
  84. package/dist/navigation-shared.css.d.ts +26 -0
  85. package/dist/navigation-shared.d.ts +66 -0
  86. package/dist/navigation-shared.js +264 -0
  87. package/dist/package-version.js +1 -1
  88. package/dist/pagination.css-mistica.js +22 -22
  89. package/dist/pin-field.css-mistica.js +4 -4
  90. package/dist/popover.css-mistica.js +1 -1
  91. package/dist/portal.d.ts +1 -1
  92. package/dist/progress-bar.css-mistica.js +7 -7
  93. package/dist/radio-button.css-mistica.js +27 -27
  94. package/dist/rating.css-mistica.js +4 -4
  95. package/dist/responsive-layout.css-mistica.js +6 -6
  96. package/dist/screen-reader-only.css-mistica.js +1 -1
  97. package/dist/select.css-mistica.js +21 -21
  98. package/dist/sheet-action-row.css-mistica.js +1 -1
  99. package/dist/sheet-common.css-mistica.js +7 -7
  100. package/dist/sheet-info.css-mistica.js +1 -1
  101. package/dist/sidenav-bar-context.d.ts +25 -0
  102. package/dist/sidenav-bar-context.js +72 -0
  103. package/dist/sidenav-bar-data.d.ts +15 -0
  104. package/dist/sidenav-bar-data.js +38 -0
  105. package/dist/sidenav-bar-first-level-item.d.ts +42 -0
  106. package/dist/sidenav-bar-first-level-item.js +174 -0
  107. package/dist/sidenav-bar-keyboard.d.ts +13 -0
  108. package/dist/sidenav-bar-keyboard.js +314 -0
  109. package/dist/sidenav-bar-layout.css-mistica.js +28 -0
  110. package/dist/sidenav-bar-layout.css.d.ts +5 -0
  111. package/dist/sidenav-bar-layout.d.ts +22 -0
  112. package/dist/sidenav-bar-layout.js +103 -0
  113. package/dist/sidenav-bar-mobile.d.ts +24 -0
  114. package/dist/sidenav-bar-mobile.js +332 -0
  115. package/dist/sidenav-bar-motion.d.ts +32 -0
  116. package/dist/sidenav-bar-motion.js +84 -0
  117. package/dist/sidenav-bar-panel.d.ts +31 -0
  118. package/dist/sidenav-bar-panel.js +208 -0
  119. package/dist/sidenav-bar-row.d.ts +82 -0
  120. package/dist/sidenav-bar-row.js +230 -0
  121. package/dist/sidenav-bar-second-level-item.d.ts +43 -0
  122. package/dist/sidenav-bar-second-level-item.js +89 -0
  123. package/dist/sidenav-bar-section.d.ts +23 -0
  124. package/dist/sidenav-bar-section.js +167 -0
  125. package/dist/sidenav-bar-types.d.ts +192 -0
  126. package/dist/sidenav-bar-types.js +11 -0
  127. package/dist/sidenav-bar.css-mistica.js +325 -0
  128. package/dist/sidenav-bar.css.d.ts +93 -0
  129. package/dist/sidenav-bar.d.ts +102 -0
  130. package/dist/sidenav-bar.js +492 -0
  131. package/dist/skeletons.css-mistica.js +8 -8
  132. package/dist/skins/blau.d.ts +5 -0
  133. package/dist/skins/blau.js +12 -8
  134. package/dist/skins/esimflag.d.ts +5 -0
  135. package/dist/skins/esimflag.js +13 -9
  136. package/dist/skins/movistar.d.ts +5 -0
  137. package/dist/skins/movistar.js +13 -9
  138. package/dist/skins/o2.d.ts +5 -0
  139. package/dist/skins/o2.js +13 -9
  140. package/dist/skins/skin-contract.css-mistica.js +735 -731
  141. package/dist/skins/skin-contract.css.d.ts +16 -12
  142. package/dist/skins/telefonica.d.ts +5 -0
  143. package/dist/skins/telefonica.js +13 -9
  144. package/dist/skins/types/colors.d.ts +13 -6
  145. package/dist/skins/vivo-evolution.d.ts +5 -0
  146. package/dist/skins/vivo-evolution.js +14 -10
  147. package/dist/skins/vivo.d.ts +5 -0
  148. package/dist/skins/vivo.js +13 -9
  149. package/dist/skip-link.css-mistica.js +2 -2
  150. package/dist/slider.css-mistica.js +24 -24
  151. package/dist/snackbar.css-mistica.js +14 -14
  152. package/dist/spinner.css-mistica.js +1 -1
  153. package/dist/square.css-mistica.js +1 -1
  154. package/dist/stack.css-mistica.js +5 -5
  155. package/dist/stacking-group.css-mistica.js +1 -1
  156. package/dist/stepper.css-mistica.js +9 -9
  157. package/dist/switch-component.css-mistica.js +48 -42
  158. package/dist/switch-component.css.d.ts +2 -0
  159. package/dist/switch-component.js +18 -18
  160. package/dist/table.css-mistica.js +9 -9
  161. package/dist/tabs.css-mistica.js +22 -22
  162. package/dist/tag.css-mistica.js +3 -3
  163. package/dist/text-field-base.css-mistica.js +19 -19
  164. package/dist/text-field-components.css-mistica.js +10 -10
  165. package/dist/text-link.css-mistica.js +6 -6
  166. package/dist/text-tokens.d.ts +6 -0
  167. package/dist/text-tokens.js +157 -133
  168. package/dist/text.css-mistica.js +6 -6
  169. package/dist/timeline.css-mistica.js +11 -11
  170. package/dist/timer.css-mistica.js +6 -6
  171. package/dist/tooltip.css-mistica.js +2 -2
  172. package/dist/touchable.css-mistica.js +4 -4
  173. package/dist/utils/aspect-ratio-support.css-mistica.js +2 -2
  174. package/dist/video.css-mistica.js +1 -1
  175. package/dist/vivinho-loading-animation/vivinho-loading-animation.css-mistica.js +1 -1
  176. package/dist-es/accordion.css-mistica.js +7 -7
  177. package/dist-es/align.css-mistica.js +1 -1
  178. package/dist-es/autocomplete.css-mistica.js +2 -2
  179. package/dist-es/avatar.css-mistica.js +1 -1
  180. package/dist-es/badge.css-mistica.js +1 -1
  181. package/dist-es/box.css-mistica.js +13 -13
  182. package/dist-es/boxed.css-mistica.js +23 -23
  183. package/dist-es/boxed.js +25 -25
  184. package/dist-es/button-group.css-mistica.js +1 -1
  185. package/dist-es/button-layout.css-mistica.js +16 -16
  186. package/dist-es/button.css-mistica.js +38 -38
  187. package/dist-es/callout.css-mistica.js +12 -12
  188. package/dist-es/card-internal.css-mistica.js +17 -17
  189. package/dist-es/carousel.css-mistica.js +10 -10
  190. package/dist-es/checkbox.css-mistica.js +13 -13
  191. package/dist-es/chip.css-mistica.js +17 -17
  192. package/dist-es/circle.css-mistica.js +2 -2
  193. package/dist-es/community/advanced-data-card.css-mistica.js +7 -7
  194. package/dist-es/community/ai-card.css-mistica.js +3 -3
  195. package/dist-es/community/blocks.css-mistica.js +2 -2
  196. package/dist-es/community/cyber/example-component.css-mistica.js +1 -1
  197. package/dist-es/community/example-component.css-mistica.js +1 -1
  198. package/dist-es/community/skins/cyber-skin.js +289 -256
  199. package/dist-es/counter.css-mistica.js +2 -2
  200. package/dist-es/cover-hero.css-mistica.js +4 -4
  201. package/dist-es/credit-card-number-field.css-mistica.js +3 -3
  202. package/dist-es/date-field.css-mistica.js +1 -1
  203. package/dist-es/date-time-picker.css-mistica.js +1 -1
  204. package/dist-es/dialog.css-mistica.js +5 -5
  205. package/dist-es/divider.css-mistica.js +5 -5
  206. package/dist-es/double-field.css-mistica.js +2 -2
  207. package/dist-es/drawer.css-mistica.js +2 -2
  208. package/dist-es/empty-state-card.css-mistica.js +1 -1
  209. package/dist-es/empty-state.css-mistica.js +7 -7
  210. package/dist-es/fade-in.css-mistica.js +1 -1
  211. package/dist-es/feedback.css-mistica.js +2 -2
  212. package/dist-es/file-upload.css-mistica.js +8 -8
  213. package/dist-es/fixed-footer-layout.css-mistica.js +3 -3
  214. package/dist-es/form.css-mistica.js +1 -1
  215. package/dist-es/generated/mistica-icons/icon-panel-collapse-regular.js +115 -0
  216. package/dist-es/generated/mistica-icons/icon-panel-expand-regular.js +109 -0
  217. package/dist-es/grid-layout.css-mistica.js +3 -3
  218. package/dist-es/grid.css-mistica.js +120 -120
  219. package/dist-es/header.css-mistica.js +1 -1
  220. package/dist-es/hero.css-mistica.js +3 -3
  221. package/dist-es/horizontal-scroll.css-mistica.js +1 -1
  222. package/dist-es/icon-button.css-mistica.js +53 -53
  223. package/dist-es/icons/icon-chevron.css-mistica.js +2 -2
  224. package/dist-es/icons/icon-error.css-mistica.js +1 -1
  225. package/dist-es/image.css-mistica.js +4 -4
  226. package/dist-es/index.js +2279 -2276
  227. package/dist-es/inline.css-mistica.js +11 -11
  228. package/dist-es/list.css-mistica.js +8 -2
  229. package/dist-es/list.js +275 -264
  230. package/dist-es/loading-bar.css-mistica.js +1 -1
  231. package/dist-es/loading-screen.css-mistica.js +5 -5
  232. package/dist-es/logo-movistar.js +1 -1
  233. package/dist-es/logo.css-mistica.js +5 -5
  234. package/dist-es/menu.css-mistica.js +13 -13
  235. package/dist-es/mobile-navigation-menu.js +90 -0
  236. package/dist-es/mosaic.css-mistica.js +1 -1
  237. package/dist-es/navigation-bar.css-mistica.js +11 -20
  238. package/dist-es/navigation-bar.js +469 -656
  239. package/dist-es/navigation-breadcrumbs.css-mistica.js +1 -1
  240. package/dist-es/navigation-shared.css-mistica.js +11 -0
  241. package/dist-es/navigation-shared.js +192 -0
  242. package/dist-es/package-version.js +1 -1
  243. package/dist-es/pagination.css-mistica.js +19 -19
  244. package/dist-es/pin-field.css-mistica.js +2 -2
  245. package/dist-es/popover.css-mistica.js +1 -1
  246. package/dist-es/progress-bar.css-mistica.js +7 -7
  247. package/dist-es/radio-button.css-mistica.js +22 -22
  248. package/dist-es/rating.css-mistica.js +3 -3
  249. package/dist-es/responsive-layout.css-mistica.js +6 -6
  250. package/dist-es/screen-reader-only.css-mistica.js +1 -1
  251. package/dist-es/select.css-mistica.js +18 -18
  252. package/dist-es/sheet-action-row.css-mistica.js +1 -1
  253. package/dist-es/sheet-common.css-mistica.js +2 -2
  254. package/dist-es/sheet-info.css-mistica.js +1 -1
  255. package/dist-es/sidenav-bar-context.js +14 -0
  256. package/dist-es/sidenav-bar-data.js +12 -0
  257. package/dist-es/sidenav-bar-first-level-item.js +124 -0
  258. package/dist-es/sidenav-bar-keyboard.js +253 -0
  259. package/dist-es/sidenav-bar-layout.css-mistica.js +2 -0
  260. package/dist-es/sidenav-bar-layout.js +86 -0
  261. package/dist-es/sidenav-bar-mobile.js +277 -0
  262. package/dist-es/sidenav-bar-motion.js +26 -0
  263. package/dist-es/sidenav-bar-panel.js +146 -0
  264. package/dist-es/sidenav-bar-row.js +208 -0
  265. package/dist-es/sidenav-bar-second-level-item.js +72 -0
  266. package/dist-es/sidenav-bar-section.js +112 -0
  267. package/dist-es/sidenav-bar-types.js +2 -0
  268. package/dist-es/sidenav-bar.css-mistica.js +74 -0
  269. package/dist-es/sidenav-bar.js +429 -0
  270. package/dist-es/skeletons.css-mistica.js +7 -7
  271. package/dist-es/skins/blau.js +12 -8
  272. package/dist-es/skins/esimflag.js +13 -9
  273. package/dist-es/skins/movistar.js +13 -9
  274. package/dist-es/skins/o2.js +13 -9
  275. package/dist-es/skins/skin-contract.css-mistica.js +735 -731
  276. package/dist-es/skins/telefonica.js +13 -9
  277. package/dist-es/skins/vivo-evolution.js +14 -10
  278. package/dist-es/skins/vivo.js +13 -9
  279. package/dist-es/skip-link.css-mistica.js +2 -2
  280. package/dist-es/slider.css-mistica.js +20 -20
  281. package/dist-es/snackbar.css-mistica.js +5 -5
  282. package/dist-es/spinner.css-mistica.js +1 -1
  283. package/dist-es/square.css-mistica.js +1 -1
  284. package/dist-es/stack.css-mistica.js +5 -5
  285. package/dist-es/stacking-group.css-mistica.js +1 -1
  286. package/dist-es/stepper.css-mistica.js +3 -3
  287. package/dist-es/style.css +1 -1
  288. package/dist-es/switch-component.css-mistica.js +37 -37
  289. package/dist-es/switch-component.js +26 -26
  290. package/dist-es/table.css-mistica.js +9 -9
  291. package/dist-es/tabs.css-mistica.js +19 -19
  292. package/dist-es/tag.css-mistica.js +2 -2
  293. package/dist-es/text-field-base.css-mistica.js +17 -17
  294. package/dist-es/text-field-components.css-mistica.js +4 -4
  295. package/dist-es/text-link.css-mistica.js +6 -6
  296. package/dist-es/text-tokens.js +82 -67
  297. package/dist-es/text.css-mistica.js +6 -6
  298. package/dist-es/timeline.css-mistica.js +10 -10
  299. package/dist-es/timer.css-mistica.js +6 -6
  300. package/dist-es/tooltip.css-mistica.js +2 -2
  301. package/dist-es/touchable.css-mistica.js +2 -2
  302. package/dist-es/utils/aspect-ratio-support.css-mistica.js +2 -2
  303. package/dist-es/video.css-mistica.js +1 -1
  304. package/dist-es/vivinho-loading-animation/vivinho-loading-animation.css-mistica.js +1 -1
  305. package/package.json +3 -2
  306. package/src/boxed.css.ts +1 -0
  307. package/src/boxed.tsx +18 -5
  308. package/src/callout.css.ts +4 -2
  309. package/src/community/skins/cyber-skin.tsx +127 -439
  310. package/src/index.tsx +14 -0
  311. package/src/list.css.ts +36 -1
  312. package/src/list.tsx +370 -344
  313. package/src/logo-movistar.tsx +1 -1
  314. package/src/mobile-navigation-menu.tsx +168 -0
  315. package/src/navigation-bar.css.ts +2 -267
  316. package/src/navigation-bar.tsx +77 -370
  317. package/src/navigation-shared.css.ts +289 -0
  318. package/src/navigation-shared.tsx +262 -0
  319. package/src/package-version.tsx +1 -1
  320. package/src/portal.tsx +1 -1
  321. package/src/sidenav-bar-context.tsx +41 -0
  322. package/src/sidenav-bar-data.ts +49 -0
  323. package/src/sidenav-bar-first-level-item.tsx +203 -0
  324. package/src/sidenav-bar-keyboard.tsx +393 -0
  325. package/src/sidenav-bar-layout.css.ts +89 -0
  326. package/src/sidenav-bar-layout.tsx +61 -0
  327. package/src/sidenav-bar-mobile.tsx +302 -0
  328. package/src/sidenav-bar-motion.tsx +70 -0
  329. package/src/sidenav-bar-panel.tsx +269 -0
  330. package/src/sidenav-bar-row.tsx +272 -0
  331. package/src/sidenav-bar-second-level-item.tsx +99 -0
  332. package/src/sidenav-bar-section.tsx +98 -0
  333. package/src/sidenav-bar-types.ts +224 -0
  334. package/src/sidenav-bar.css.ts +1018 -0
  335. package/src/sidenav-bar.tsx +821 -0
  336. package/src/skins/blau.tsx +18 -8
  337. package/src/skins/esimflag.tsx +19 -9
  338. package/src/skins/movistar.tsx +19 -9
  339. package/src/skins/o2.tsx +19 -9
  340. package/src/skins/skin-contract.css.ts +2 -0
  341. package/src/skins/telefonica.tsx +19 -9
  342. package/src/skins/types/colors.tsx +14 -6
  343. package/src/skins/vivo-evolution.tsx +20 -10
  344. package/src/skins/vivo.tsx +19 -9
  345. package/src/switch-component.css.ts +20 -0
  346. package/src/switch-component.tsx +9 -1
  347. package/src/text-tokens.tsx +24 -0
@@ -0,0 +1,13 @@
1
+ import * as React from 'react';
2
+ declare const getItemFocusables: (root: HTMLElement | null) => Array<HTMLElement>;
3
+ declare const useSidenavRailKeyboard: (containerRef: React.RefObject<HTMLElement | null>) => ((event: React.KeyboardEvent) => void);
4
+ type DialogPanelKeyboardArgs = {
5
+ panelElement: HTMLElement | null;
6
+ containerRef: React.RefObject<HTMLElement | null>;
7
+ itemId: string;
8
+ /** A hidden element takes no focus, so the panel must be positioned first. */
9
+ isPositioned: boolean;
10
+ onClose: () => void;
11
+ };
12
+ declare const useDialogPanelKeyboard: ({ panelElement, containerRef, itemId, isPositioned, onClose, }: DialogPanelKeyboardArgs) => void;
13
+ export { useSidenavRailKeyboard, useDialogPanelKeyboard, getItemFocusables };
@@ -0,0 +1,314 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get getItemFocusables () {
14
+ return f;
15
+ },
16
+ get useDialogPanelKeyboard () {
17
+ return F;
18
+ },
19
+ get useSidenavRailKeyboard () {
20
+ return k;
21
+ }
22
+ });
23
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
24
+ function _getRequireWildcardCache(nodeInterop) {
25
+ if (typeof WeakMap !== "function") return null;
26
+ var cacheBabelInterop = new WeakMap();
27
+ var cacheNodeInterop = new WeakMap();
28
+ return (_getRequireWildcardCache = function(nodeInterop) {
29
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
30
+ })(nodeInterop);
31
+ }
32
+ function _interop_require_wildcard(obj, nodeInterop) {
33
+ if (!nodeInterop && obj && obj.__esModule) {
34
+ return obj;
35
+ }
36
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
37
+ return {
38
+ default: obj
39
+ };
40
+ }
41
+ var cache = _getRequireWildcardCache(nodeInterop);
42
+ if (cache && cache.has(obj)) {
43
+ return cache.get(obj);
44
+ }
45
+ var newObj = {
46
+ __proto__: null
47
+ };
48
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
49
+ for(var key in obj){
50
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
51
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
52
+ if (desc && (desc.get || desc.set)) {
53
+ Object.defineProperty(newObj, key, desc);
54
+ } else {
55
+ newObj[key] = obj[key];
56
+ }
57
+ }
58
+ }
59
+ newObj.default = obj;
60
+ if (cache) {
61
+ cache.set(obj, newObj);
62
+ }
63
+ return newObj;
64
+ }
65
+ const m = 'a[href], button:not([disabled]), [tabindex]:not([tabindex="-1"])', g = (t)=>typeof CSS < "u" && CSS.escape ? CSS.escape(t) : t.replace(/"/g, '\\"'), A = (t)=>t.map((e)=>e.querySelector(m)).filter((e)=>e !== null), f = (t)=>t ? A(Array.from(t.querySelectorAll("[data-sidenav-item-id]"))) : [], v = (t)=>{
66
+ if (!t) return [];
67
+ const e = Array.from(t.querySelectorAll("[data-sidenav-item-id]")).filter((r)=>!r.closest("[data-sidenav-double-panel]"));
68
+ return A(e);
69
+ }, S = (t, e)=>{
70
+ var _e_querySelector;
71
+ var _e_querySelector_querySelector;
72
+ return (_e_querySelector_querySelector = (_e_querySelector = e.querySelector(`[data-sidenav-item-id="${g(t)}"]`)) === null || _e_querySelector === void 0 ? void 0 : _e_querySelector.querySelector(m)) !== null && _e_querySelector_querySelector !== void 0 ? _e_querySelector_querySelector : null;
73
+ }, h = (t, e)=>{
74
+ const r = S(t, e);
75
+ if (!r) return null;
76
+ const o = v(e);
77
+ var _o_;
78
+ return (_o_ = o[o.indexOf(r) + 1]) !== null && _o_ !== void 0 ? _o_ : null;
79
+ }, w = (t)=>{
80
+ var _t_closest;
81
+ if (t.getAttribute("aria-expanded") !== "true") return null;
82
+ const r = (_t_closest = t.closest("[data-sidenav-item-id]")) === null || _t_closest === void 0 ? void 0 : _t_closest.getAttribute("data-sidenav-item-id");
83
+ return r ? document.querySelector(`[data-sidenav-dialog-panel="${g(r)}"]`) : null;
84
+ }, y = (t, e)=>{
85
+ var _t_closest;
86
+ const r = (_t_closest = t.closest("[data-sidenav-item-id]")) === null || _t_closest === void 0 ? void 0 : _t_closest.getAttribute("data-sidenav-item-id");
87
+ return r ? e.querySelector(`[data-sidenav-double-panel="${g(r)}"]`) : null;
88
+ }, q = (t, e)=>{
89
+ var _t_closest;
90
+ const r = (_t_closest = t.closest("[data-sidenav-item-id]")) === null || _t_closest === void 0 ? void 0 : _t_closest.getAttribute("data-sidenav-item-id");
91
+ return r ? e.querySelector(`[data-sidenav-accordion-for="${g(r)}"]`) : null;
92
+ }, x = (t, e)=>{
93
+ var _t_closest, _e_querySelector;
94
+ const o = (_t_closest = t.closest("[data-sidenav-accordion-for]")) === null || _t_closest === void 0 ? void 0 : _t_closest.getAttribute("data-sidenav-accordion-for");
95
+ var _e_querySelector_querySelector;
96
+ return o ? (_e_querySelector_querySelector = (_e_querySelector = e.querySelector(`[data-sidenav-item-id="${g(o)}"]`)) === null || _e_querySelector === void 0 ? void 0 : _e_querySelector.querySelector(m)) !== null && _e_querySelector_querySelector !== void 0 ? _e_querySelector_querySelector : null : null;
97
+ }, k = (t)=>_react.useCallback((e)=>{
98
+ const r = t.current;
99
+ if (!r) return;
100
+ const o = document.activeElement;
101
+ if (!o) return;
102
+ const d = o.closest("[data-sidenav-double-panel]");
103
+ if (d) {
104
+ var _d_getAttribute;
105
+ const c = (_d_getAttribute = d.getAttribute("data-sidenav-double-panel")) !== null && _d_getAttribute !== void 0 ? _d_getAttribute : "", a = S(c, r), n = f(d), u = n.indexOf(o);
106
+ switch(e.key){
107
+ case "ArrowDown":
108
+ var _n_Math_min;
109
+ e.preventDefault(), (_n_Math_min = n[Math.min(u + 1, n.length - 1)]) === null || _n_Math_min === void 0 ? void 0 : _n_Math_min.focus();
110
+ return;
111
+ // The column is not a floating panel, so it stays open when the focus leaves it.
112
+ case "ArrowUp":
113
+ case "ArrowLeft":
114
+ if (e.preventDefault(), e.key === "ArrowUp" && u > 0) {
115
+ n[u - 1].focus();
116
+ return;
117
+ }
118
+ a === null || a === void 0 ? void 0 : a.focus();
119
+ return;
120
+ case "ArrowRight":
121
+ e.preventDefault();
122
+ return;
123
+ case "Home":
124
+ var _n_;
125
+ e.preventDefault(), (_n_ = n[0]) === null || _n_ === void 0 ? void 0 : _n_.focus();
126
+ return;
127
+ case "End":
128
+ var _n_1;
129
+ e.preventDefault(), (_n_1 = n[n.length - 1]) === null || _n_1 === void 0 ? void 0 : _n_1.focus();
130
+ return;
131
+ case "Tab":
132
+ {
133
+ var _this;
134
+ if (e.preventDefault(), e.shiftKey) {
135
+ var _this1;
136
+ (_this1 = u > 0 ? n[u - 1] : a) === null || _this1 === void 0 ? void 0 : _this1.focus();
137
+ return;
138
+ }
139
+ (_this = u < n.length - 1 ? n[u + 1] : h(c, r)) === null || _this === void 0 ? void 0 : _this.focus();
140
+ return;
141
+ }
142
+ default:
143
+ return;
144
+ }
145
+ }
146
+ if (!o.closest("[data-sidenav-item-id]")) return;
147
+ const s = v(r), i = s.indexOf(o);
148
+ switch(e.key){
149
+ case "ArrowDown":
150
+ {
151
+ e.preventDefault(), i >= 0 && i < s.length - 1 && s[i + 1].focus();
152
+ return;
153
+ }
154
+ case "ArrowUp":
155
+ {
156
+ e.preventDefault(), i > 0 && s[i - 1].focus();
157
+ return;
158
+ }
159
+ case "Home":
160
+ {
161
+ var _s_;
162
+ e.preventDefault(), (_s_ = s[0]) === null || _s_ === void 0 ? void 0 : _s_.focus();
163
+ return;
164
+ }
165
+ case "End":
166
+ {
167
+ var _s_1;
168
+ e.preventDefault(), (_s_1 = s[s.length - 1]) === null || _s_1 === void 0 ? void 0 : _s_1.focus();
169
+ return;
170
+ }
171
+ case "ArrowRight":
172
+ {
173
+ var _f_;
174
+ if (o.getAttribute("aria-expanded") === "false") {
175
+ e.preventDefault(), o.click();
176
+ return;
177
+ }
178
+ const c = w(o);
179
+ if (c) {
180
+ var _f_1;
181
+ e.preventDefault(), (_f_1 = f(c)[0]) === null || _f_1 === void 0 ? void 0 : _f_1.focus();
182
+ return;
183
+ }
184
+ const a = y(o, r);
185
+ if (a) {
186
+ var _f_2;
187
+ e.preventDefault(), (_f_2 = f(a)[0]) === null || _f_2 === void 0 ? void 0 : _f_2.focus();
188
+ return;
189
+ }
190
+ const n = q(o, r);
191
+ n && (e.preventDefault(), (_f_ = f(n)[0]) === null || _f_ === void 0 ? void 0 : _f_.focus());
192
+ return;
193
+ }
194
+ case "ArrowLeft":
195
+ {
196
+ if (o.getAttribute("aria-expanded") === "true") {
197
+ e.preventDefault(), o.click();
198
+ return;
199
+ }
200
+ const c = x(o, r);
201
+ c && (e.preventDefault(), c.focus());
202
+ return;
203
+ }
204
+ case "Tab":
205
+ {
206
+ if (!e.shiftKey) {
207
+ var _f_3;
208
+ var _w;
209
+ const u = (_w = w(o)) !== null && _w !== void 0 ? _w : y(o, r);
210
+ u && (e.preventDefault(), (_f_3 = f(u)[0]) === null || _f_3 === void 0 ? void 0 : _f_3.focus());
211
+ return;
212
+ }
213
+ const c = i > 0 ? s[i - 1] : null;
214
+ if (!c) return;
215
+ var _w1;
216
+ const a = (_w1 = w(c)) !== null && _w1 !== void 0 ? _w1 : y(c, r), n = f(a).pop();
217
+ n && (e.preventDefault(), n.focus());
218
+ return;
219
+ }
220
+ default:
221
+ return;
222
+ }
223
+ }, [
224
+ t
225
+ ]), F = (param)=>{
226
+ let { panelElement: t, containerRef: e, itemId: r, isPositioned: o, onClose: d } = param;
227
+ const s = _react.useRef(null), i = _react.useRef(d);
228
+ i.current = d, _react.useEffect(()=>{
229
+ var _e_current;
230
+ const a = (_e_current = e.current) === null || _e_current === void 0 ? void 0 : _e_current.querySelector(`[data-sidenav-item-id="${g(r)}"]`);
231
+ var _a_querySelector;
232
+ s.current = (_a_querySelector = a === null || a === void 0 ? void 0 : a.querySelector(m)) !== null && _a_querySelector !== void 0 ? _a_querySelector : null;
233
+ }, [
234
+ e,
235
+ r,
236
+ t
237
+ ]);
238
+ const c = _react.useCallback(()=>{
239
+ const a = e.current;
240
+ if (!a) return;
241
+ const n = ()=>{
242
+ var _a_querySelector_querySelector, _a_querySelector;
243
+ const u = document.activeElement;
244
+ if (u && u !== document.body) return;
245
+ (_a_querySelector = a.querySelector(`[data-sidenav-item-id="${g(r)}"]`)) === null || _a_querySelector === void 0 ? void 0 : (_a_querySelector_querySelector = _a_querySelector.querySelector(m)) === null || _a_querySelector_querySelector === void 0 ? void 0 : _a_querySelector_querySelector.focus();
246
+ };
247
+ typeof requestAnimationFrame == "function" ? requestAnimationFrame(n) : n();
248
+ }, [
249
+ e,
250
+ r
251
+ ]);
252
+ _react.useEffect(()=>{
253
+ var _f_;
254
+ !t || !o || ((_f_ = f(t)[0]) === null || _f_ === void 0 ? void 0 : _f_.focus());
255
+ }, [
256
+ t,
257
+ o
258
+ ]), _react.useEffect(()=>()=>c(), [
259
+ c
260
+ ]), _react.useEffect(()=>{
261
+ if (!t) return;
262
+ const a = (n)=>{
263
+ const u = f(t);
264
+ if (u.length === 0) return;
265
+ const b = document.activeElement, p = b ? u.indexOf(b) : -1;
266
+ switch(n.key){
267
+ case "ArrowDown":
268
+ var _u_Math_min;
269
+ n.preventDefault(), (_u_Math_min = u[Math.min(p + 1, u.length - 1)]) === null || _u_Math_min === void 0 ? void 0 : _u_Math_min.focus();
270
+ return;
271
+ // Closing the panel unmounts it, and the restore effect returns the focus to the trigger.
272
+ case "ArrowLeft":
273
+ n.preventDefault(), i.current();
274
+ return;
275
+ case "ArrowUp":
276
+ if (n.preventDefault(), p <= 0) {
277
+ i.current();
278
+ return;
279
+ }
280
+ u[p - 1].focus();
281
+ return;
282
+ case "Home":
283
+ n.preventDefault(), u[0].focus();
284
+ return;
285
+ case "End":
286
+ n.preventDefault(), u[u.length - 1].focus();
287
+ return;
288
+ case "Tab":
289
+ {
290
+ var _h;
291
+ if (n.preventDefault(), n.shiftKey) {
292
+ var _this;
293
+ (_this = p > 0 ? u[p - 1] : s.current) === null || _this === void 0 ? void 0 : _this.focus();
294
+ return;
295
+ }
296
+ if (p < u.length - 1) {
297
+ u[p + 1].focus();
298
+ return;
299
+ }
300
+ const D = e.current;
301
+ D && ((_h = h(r, D)) === null || _h === void 0 ? void 0 : _h.focus());
302
+ return;
303
+ }
304
+ default:
305
+ return;
306
+ }
307
+ };
308
+ return t.addEventListener("keydown", a), ()=>t.removeEventListener("keydown", a);
309
+ }, [
310
+ t,
311
+ e,
312
+ r
313
+ ]);
314
+ };
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get centeredResponsiveLayout () {
13
+ return a;
14
+ },
15
+ get container () {
16
+ return e;
17
+ },
18
+ get content () {
19
+ return n;
20
+ },
21
+ get sidenav () {
22
+ return r;
23
+ },
24
+ get topOffsetVar () {
25
+ return s;
26
+ }
27
+ });
28
+ /* empty css */ /* empty css */ var s = "var(--v17_4_16kses10)", e = "v17_4_16kses12 v17_4_16kses11 v17_4_1y2v1nfre", r = "v17_4_16kses14 v17_4_16kses13 v17_4_1y2v1nfre v17_4_1y2v1nfrk v17_4_1y2v1nfrr", n = "v17_4_16kses16 v17_4_16kses15 v17_4_1y2v1nfs0 v17_4_1y2v1nfsz", a = "v17_4_16kses17";
@@ -0,0 +1,5 @@
1
+ export declare const topOffsetVar: `var(--${string})`;
2
+ export declare const container: string;
3
+ export declare const sidenav: string;
4
+ export declare const content: string;
5
+ export declare const centeredResponsiveLayout: string;
@@ -0,0 +1,22 @@
1
+ import * as React from 'react';
2
+ import type { DataAttributes } from './utils/types';
3
+ type SidenavLayoutProps = {
4
+ /** Content of the sidenav column (typically SidenavBar). */
5
+ sidenav: React.ReactNode;
6
+ /** Content of the main area, which sits beside the sidenav. */
7
+ children: React.ReactNode;
8
+ /** Layout mode: 'whole-viewport' spans full width, 'centered' wraps in responsive container. @default 'whole-viewport' */
9
+ mode?: 'whole-viewport' | 'centered';
10
+ /**
11
+ * Height in px of a persistent band above the layout (a fixed or sticky top header). The sidenav
12
+ * sticks below it instead of taking the whole viewport. A header that scrolls away with the page
13
+ * needs no offset. @default 0
14
+ */
15
+ topOffset?: number;
16
+ /** Custom data attributes for testing and tracking. */
17
+ dataAttributes?: DataAttributes;
18
+ };
19
+ declare const SidenavLayout: ({ sidenav, children, mode, topOffset, dataAttributes, }: SidenavLayoutProps) => JSX.Element;
20
+ export default SidenavLayout;
21
+ export { SidenavLayout };
22
+ export type { SidenavLayoutProps };
@@ -0,0 +1,103 @@
1
+ 'use client';
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get SidenavLayout () {
14
+ return j;
15
+ },
16
+ get default () {
17
+ return j;
18
+ }
19
+ });
20
+ const _jsxruntime = require("react/jsx-runtime");
21
+ const _sidenavbarlayoutcssmistica = require("./sidenav-bar-layout.css-mistica.js");
22
+ const _responsivelayout = require("./responsive-layout.js");
23
+ const _dom = require("./utils/dom.js");
24
+ const _css = require("./utils/css.js");
25
+ function _define_property(obj, key, value) {
26
+ if (key in obj) {
27
+ Object.defineProperty(obj, key, {
28
+ value: value,
29
+ enumerable: true,
30
+ configurable: true,
31
+ writable: true
32
+ });
33
+ } else {
34
+ obj[key] = value;
35
+ }
36
+ return obj;
37
+ }
38
+ function _object_spread(target) {
39
+ for(var i = 1; i < arguments.length; i++){
40
+ var source = arguments[i] != null ? arguments[i] : {};
41
+ var ownKeys = Object.keys(source);
42
+ if (typeof Object.getOwnPropertySymbols === "function") {
43
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
44
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
45
+ }));
46
+ }
47
+ ownKeys.forEach(function(key) {
48
+ _define_property(target, key, source[key]);
49
+ });
50
+ }
51
+ return target;
52
+ }
53
+ function ownKeys(object, enumerableOnly) {
54
+ var keys = Object.keys(object);
55
+ if (Object.getOwnPropertySymbols) {
56
+ var symbols = Object.getOwnPropertySymbols(object);
57
+ if (enumerableOnly) {
58
+ symbols = symbols.filter(function(sym) {
59
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
60
+ });
61
+ }
62
+ keys.push.apply(keys, symbols);
63
+ }
64
+ return keys;
65
+ }
66
+ function _object_spread_props(target, source) {
67
+ source = source != null ? source : {};
68
+ if (Object.getOwnPropertyDescriptors) {
69
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
70
+ } else {
71
+ ownKeys(Object(source)).forEach(function(key) {
72
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
73
+ });
74
+ }
75
+ return target;
76
+ }
77
+ const j = (param)=>{
78
+ let { sidenav: s, children: a, mode: i = "whole-viewport", topOffset: t, dataAttributes: o } = param;
79
+ const r = /* @__PURE__ */ (0, _jsxruntime.jsxs)("div", _object_spread_props(_object_spread({
80
+ className: _sidenavbarlayoutcssmistica.container,
81
+ style: t ? (0, _css.applyCssVars)({
82
+ [_sidenavbarlayoutcssmistica.topOffsetVar]: `${t}px`
83
+ }) : void 0
84
+ }, (0, _dom.getPrefixedDataAttributes)(_object_spread({
85
+ testid: "SidenavLayout"
86
+ }, o))), {
87
+ children: [
88
+ /* @__PURE__ */ (0, _jsxruntime.jsx)("div", {
89
+ className: _sidenavbarlayoutcssmistica.sidenav,
90
+ children: s
91
+ }),
92
+ /* @__PURE__ */ (0, _jsxruntime.jsx)("div", {
93
+ className: _sidenavbarlayoutcssmistica.content,
94
+ children: a
95
+ })
96
+ ]
97
+ }));
98
+ return i === "centered" ? /* @__PURE__ */ (0, _jsxruntime.jsx)(_responsivelayout.InternalResponsiveLayout, {
99
+ innerDivClassName: _sidenavbarlayoutcssmistica.centeredResponsiveLayout,
100
+ shouldExpandWhenNested: !0,
101
+ children: r
102
+ }) : r;
103
+ };
@@ -0,0 +1,24 @@
1
+ import type { NonDeprecatedVariant } from './theme-variant-context';
2
+ import type { DataAttributes } from './utils/types';
3
+ import type { SidenavEntry, SidenavLogo, SidenavSlot } from './sidenav-bar-types';
4
+ type SidenavBarMobileProps = {
5
+ /** First-level entries of the panel. */
6
+ entries?: ReadonlyArray<SidenavEntry>;
7
+ /** Accessible name of the navigation landmark. */
8
+ 'aria-label': string;
9
+ /** Variant of the top bar. The panel always renders in the default variant. */
10
+ variant: NonDeprecatedVariant;
11
+ /** Logo of the top bar. */
12
+ logo?: SidenavLogo;
13
+ /** Content of the right side of the top bar. */
14
+ headerSlot?: SidenavSlot;
15
+ /** Content of the end of the panel. */
16
+ footerSlot?: SidenavSlot;
17
+ /** ID of the currently selected item. It marks the item for a screen reader, and paints nothing. */
18
+ selectedItemId: string | null;
19
+ /** Called when the user presses an item that navigates. */
20
+ onSelectedItemIdChange?: (id: string | null) => void;
21
+ dataAttributes?: DataAttributes;
22
+ };
23
+ declare const SidenavBarMobile: ({ entries, "aria-label": ariaLabel, variant, logo, headerSlot, footerSlot, selectedItemId, onSelectedItemIdChange, dataAttributes, }: SidenavBarMobileProps) => JSX.Element;
24
+ export { SidenavBarMobile };