@oracle/oraclejet-preact 20.0.3 → 20.0.4

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 (182) hide show
  1. package/amd/{BarChart-f429b382.js → BarChart-994cb8f0.js} +2 -2
  2. package/amd/{BarChart-f429b382.js.map → BarChart-994cb8f0.js.map} +1 -1
  3. package/amd/BaseCardView-16fda4c3.js +2 -0
  4. package/amd/{BaseCardView-b8119561.js.map → BaseCardView-16fda4c3.js.map} +1 -1
  5. package/amd/CardFlexView-d3eb7373.js +2 -0
  6. package/amd/{CardFlexView-aa2f3de8.js.map → CardFlexView-d3eb7373.js.map} +1 -1
  7. package/amd/CardGridView-842f70cd.js +2 -0
  8. package/amd/{CardGridView-85f90c75.js.map → CardGridView-842f70cd.js.map} +1 -1
  9. package/amd/{Chart-57965de4.js → Chart-d9eafc7a.js} +2 -2
  10. package/amd/{Chart-57965de4.js.map → Chart-d9eafc7a.js.map} +1 -1
  11. package/amd/CheckboxSetContext-2e486ea8.js +2 -0
  12. package/amd/CheckboxSetContext-2e486ea8.js.map +1 -0
  13. package/amd/{ComboChart-c42ed049.js → ComboChart-5a6f6c8a.js} +2 -2
  14. package/amd/{ComboChart-c42ed049.js.map → ComboChart-5a6f6c8a.js.map} +1 -1
  15. package/amd/{LineAreaChart-48efb7f7.js → LineAreaChart-47fc17d2.js} +2 -2
  16. package/amd/{LineAreaChart-48efb7f7.js.map → LineAreaChart-47fc17d2.js.map} +1 -1
  17. package/amd/ListView-02a92d18.js +2 -0
  18. package/amd/{ListView-2678b2af.js.map → ListView-02a92d18.js.map} +1 -1
  19. package/amd/NavigationListItem-9df5446c.js +2 -0
  20. package/amd/NavigationListItem-9df5446c.js.map +1 -0
  21. package/amd/NavigationListLinkItem-161049bb.js +2 -0
  22. package/amd/NavigationListLinkItem-161049bb.js.map +1 -0
  23. package/amd/{OverflowTabBar-f8bf9356.js → OverflowTabBar-5ff68da7.js} +2 -2
  24. package/amd/{OverflowTabBar-f8bf9356.js.map → OverflowTabBar-5ff68da7.js.map} +1 -1
  25. package/amd/OverflowTabBarItem-926b0c8a.js +2 -0
  26. package/amd/{OverflowTabBarItem-0aa39512.js.map → OverflowTabBarItem-926b0c8a.js.map} +1 -1
  27. package/amd/PRIVATE_BaseCardView.js +1 -1
  28. package/amd/PRIVATE_Chart.js +1 -1
  29. package/amd/PRIVATE_TableList.js +1 -1
  30. package/amd/RemovableNavigationListItem-e298c5de.js +2 -0
  31. package/amd/{RemovableNavigationListItem-60593d4c.js.map → RemovableNavigationListItem-e298c5de.js.map} +1 -1
  32. package/amd/ReorderableTabBar-0c69bfd4.js +2 -0
  33. package/amd/{ReorderableTabBar-19a503c7.js.map → ReorderableTabBar-0c69bfd4.js.map} +1 -1
  34. package/amd/{ScatterChart-6427e7ec.js → ScatterChart-7bd0f601.js} +2 -2
  35. package/amd/{ScatterChart-6427e7ec.js.map → ScatterChart-7bd0f601.js.map} +1 -1
  36. package/amd/TabBar-de723fbc.js +2 -0
  37. package/amd/{TabBar-92bac52f.js.map → TabBar-de723fbc.js.map} +1 -1
  38. package/amd/TabBarMixed-cfd346bf.js +2 -0
  39. package/amd/{TabBarMixed-5b5a5047.js.map → TabBarMixed-cfd346bf.js.map} +1 -1
  40. package/amd/TextArea-4a3b8b56.js +2 -0
  41. package/amd/TextArea-4a3b8b56.js.map +1 -0
  42. package/amd/TextAreaAutosize-3a13ebb2.js +2 -0
  43. package/amd/{TextAreaAutosize-01dfd98e.js.map → TextAreaAutosize-3a13ebb2.js.map} +1 -1
  44. package/amd/Theme-redwood/theme.css +181 -181
  45. package/amd/Theme-stable/theme.css +182 -182
  46. package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
  47. package/amd/UNSAFE_BarChart.js +1 -1
  48. package/amd/UNSAFE_CardFlexView.js +1 -1
  49. package/amd/UNSAFE_CardGridView.js +1 -1
  50. package/amd/UNSAFE_CheckboxItem.js +1 -1
  51. package/amd/UNSAFE_CheckboxItem.js.map +1 -1
  52. package/amd/UNSAFE_CheckboxSet.js +1 -1
  53. package/amd/UNSAFE_CheckboxSet.js.map +1 -1
  54. package/amd/UNSAFE_ComboChart.js +1 -1
  55. package/amd/UNSAFE_LineAreaChart.js +1 -1
  56. package/amd/UNSAFE_ListView.js +1 -1
  57. package/amd/UNSAFE_NavigationList.js +1 -1
  58. package/amd/UNSAFE_NavigationListCommon.js +1 -1
  59. package/amd/UNSAFE_OverflowTabBar.js +1 -1
  60. package/amd/UNSAFE_ReorderableTabBar.js +1 -1
  61. package/amd/UNSAFE_RichCheckboxSet.js +1 -1
  62. package/amd/UNSAFE_RichCheckboxSet.js.map +1 -1
  63. package/amd/UNSAFE_RichSelectionItem.js +1 -1
  64. package/amd/UNSAFE_RichSelectionItem.js.map +1 -1
  65. package/amd/UNSAFE_ScatterChart.js +1 -1
  66. package/amd/UNSAFE_TabBar.js +1 -1
  67. package/amd/UNSAFE_TabBarCommon.js +1 -1
  68. package/amd/UNSAFE_TabBarMixed.js +1 -1
  69. package/amd/UNSAFE_TextArea.js +1 -1
  70. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  71. package/amd/useTextAreaAltEnter-32272da6.js +2 -0
  72. package/amd/useTextAreaAltEnter-32272da6.js.map +1 -0
  73. package/cjs/{NavigationList-d0d74565.js → NavigationListItem-3b9eb0fb.js} +8 -21
  74. package/cjs/NavigationListItem-3b9eb0fb.js.map +1 -0
  75. package/cjs/{NavigationListLinkItem-317a5200.js → NavigationListLinkItem-62c3912e.js} +99 -8
  76. package/cjs/NavigationListLinkItem-62c3912e.js.map +1 -0
  77. package/cjs/{OverflowTabBarItem-19ad4971.js → OverflowTabBarItem-abcd2327.js} +4 -6
  78. package/cjs/{OverflowTabBarItem-19ad4971.js.map → OverflowTabBarItem-abcd2327.js.map} +1 -1
  79. package/cjs/{TabBar-d84e222e.js → TabBar-4bc753a9.js} +1 -7
  80. package/{es/TabBar-67ca442c.js.map → cjs/TabBar-4bc753a9.js.map} +1 -1
  81. package/cjs/{TabBarLinkItem-e924f83b.js → TabBarLinkItem-b0c4b100.js} +2 -2
  82. package/cjs/{TabBarLinkItem-e924f83b.js.map → TabBarLinkItem-b0c4b100.js.map} +1 -1
  83. package/cjs/Theme-redwood/theme.css +130 -130
  84. package/cjs/Theme-stable/theme.css +220 -220
  85. package/cjs/UNSAFE_NavigationList.js +15 -17
  86. package/cjs/UNSAFE_NavigationList.js.map +1 -1
  87. package/cjs/UNSAFE_NavigationListCommon.js +13 -14
  88. package/cjs/UNSAFE_NavigationListCommon.js.map +1 -1
  89. package/cjs/UNSAFE_OverflowTabBar.js +59 -62
  90. package/cjs/UNSAFE_OverflowTabBar.js.map +1 -1
  91. package/cjs/UNSAFE_ReorderableTabBar.js +19 -32
  92. package/cjs/UNSAFE_ReorderableTabBar.js.map +1 -1
  93. package/cjs/UNSAFE_TabBar.js +60 -63
  94. package/cjs/UNSAFE_TabBar.js.map +1 -1
  95. package/cjs/UNSAFE_TabBarCommon.js +75 -78
  96. package/cjs/UNSAFE_TabBarCommon.js.map +1 -1
  97. package/cjs/UNSAFE_TabBarMixed.js +33 -36
  98. package/cjs/UNSAFE_TabBarMixed.js.map +1 -1
  99. package/es/{BaseCardView-b3d8bae0.js → BaseCardView-85b9a71e.js} +1 -4
  100. package/es/{BaseCardView-b3d8bae0.js.map → BaseCardView-85b9a71e.js.map} +1 -1
  101. package/es/ButtonLayoutVariants.styles.css +2 -2
  102. package/es/ButtonLayoutVariants.styles2.css +2 -2
  103. package/es/CheckboxSetContext-1be56556.js +9 -0
  104. package/es/CheckboxSetContext-1be56556.js.map +1 -0
  105. package/es/{ColorPicker-ae648c4c.js → ColorPicker-fa103067.js} +2 -2
  106. package/es/{ColorPicker-ae648c4c.js.map → ColorPicker-fa103067.js.map} +1 -1
  107. package/es/PRIVATE_BaseCardView.js +1 -1
  108. package/es/PRIVATE_CollapsibleNavigationList.js +25 -25
  109. package/es/PRIVATE_TableList.js +4 -4
  110. package/es/SegmentStyles.styles.css +12 -9
  111. package/es/SegmentStyles.styles2.css +9 -12
  112. package/es/{TabBar-67ca442c.js → TabBar-10488830.js} +1 -3
  113. package/{cjs/TabBar-d84e222e.js.map → es/TabBar-10488830.js.map} +1 -1
  114. package/es/Theme-redwood/theme.css +401 -401
  115. package/es/Theme-stable/theme.css +451 -451
  116. package/es/UNSAFE_ButtonLayout/themes/redwood/ButtonLayoutTheme.js +1 -1
  117. package/es/UNSAFE_ButtonLayout/themes/redwood/ButtonLayoutVariants.css.js +1 -1
  118. package/es/UNSAFE_ButtonLayout/themes/stable/ButtonLayoutTheme.js +1 -1
  119. package/es/UNSAFE_ButtonLayout/themes/stable/ButtonLayoutVariants.css.js +1 -1
  120. package/es/UNSAFE_ButtonLayout.js +1 -1
  121. package/es/UNSAFE_CardFlexView.js +1 -1
  122. package/es/UNSAFE_CardGridView.js +1 -1
  123. package/es/UNSAFE_CheckboxItem.js +61 -122
  124. package/es/UNSAFE_CheckboxItem.js.map +1 -1
  125. package/es/UNSAFE_CheckboxSet.js +49 -15
  126. package/es/UNSAFE_CheckboxSet.js.map +1 -1
  127. package/es/UNSAFE_ColorPicker.js +25 -25
  128. package/es/UNSAFE_FlatTreeView.js +14 -14
  129. package/es/UNSAFE_InputColor.js +2 -2
  130. package/es/UNSAFE_InputDateMask/themes/SegmentStyles.css.js +1 -1
  131. package/es/UNSAFE_InputDateMask.js +1 -1
  132. package/es/UNSAFE_InputDatePicker.js +1 -1
  133. package/es/UNSAFE_InputTimeMask/themes/SegmentStyles.css.js +1 -1
  134. package/es/UNSAFE_InputTimeMask.js +1 -1
  135. package/es/UNSAFE_ListView.js +53 -53
  136. package/es/UNSAFE_OverflowTabBar.js +10 -10
  137. package/es/UNSAFE_ReorderableTabBar.js +12 -12
  138. package/es/UNSAFE_RichCheckboxSet.js +42 -46
  139. package/es/UNSAFE_RichCheckboxSet.js.map +1 -1
  140. package/es/UNSAFE_RichSelectionItem.js +89 -152
  141. package/es/UNSAFE_RichSelectionItem.js.map +1 -1
  142. package/es/UNSAFE_TabBar.js +10 -10
  143. package/es/UNSAFE_TabBarMixed.js +8 -8
  144. package/es/UNSAFE_TextArea.js +226 -106
  145. package/es/UNSAFE_TextArea.js.map +1 -1
  146. package/es/UNSAFE_TextAreaAutosize.js +1 -1
  147. package/es/UNSAFE_Toolbar.js +1 -1
  148. package/es/useTextAreaAltEnter-ac460f4c.js +61 -0
  149. package/es/useTextAreaAltEnter-ac460f4c.js.map +1 -0
  150. package/package.json +2 -2
  151. package/amd/BaseCardView-b8119561.js +0 -2
  152. package/amd/CardFlexView-aa2f3de8.js +0 -2
  153. package/amd/CardGridView-85f90c75.js +0 -2
  154. package/amd/CheckboxSet-f000e5c2.js +0 -2
  155. package/amd/CheckboxSet-f000e5c2.js.map +0 -1
  156. package/amd/ListView-2678b2af.js +0 -2
  157. package/amd/NavigationList-a6bb123d.js +0 -2
  158. package/amd/NavigationList-a6bb123d.js.map +0 -1
  159. package/amd/NavigationListItem-10bf6656.js +0 -2
  160. package/amd/NavigationListItem-10bf6656.js.map +0 -1
  161. package/amd/NavigationListLinkItem-df1826e6.js +0 -2
  162. package/amd/NavigationListLinkItem-df1826e6.js.map +0 -1
  163. package/amd/OverflowTabBarItem-0aa39512.js +0 -2
  164. package/amd/RemovableNavigationListItem-60593d4c.js +0 -2
  165. package/amd/ReorderableTabBar-19a503c7.js +0 -2
  166. package/amd/TabBar-92bac52f.js +0 -2
  167. package/amd/TabBarMixed-5b5a5047.js +0 -2
  168. package/amd/TextArea-345f89d4.js +0 -2
  169. package/amd/TextArea-345f89d4.js.map +0 -1
  170. package/amd/TextAreaAutosize-01dfd98e.js +0 -2
  171. package/amd/useNavigationListItem-582f5564.js +0 -2
  172. package/amd/useNavigationListItem-582f5564.js.map +0 -1
  173. package/cjs/NavigationList-d0d74565.js.map +0 -1
  174. package/cjs/NavigationListItem-b0b03089.js +0 -12
  175. package/cjs/NavigationListItem-b0b03089.js.map +0 -1
  176. package/cjs/NavigationListLinkItem-317a5200.js.map +0 -1
  177. package/cjs/useNavigationListItem-b97e76d5.js +0 -104
  178. package/cjs/useNavigationListItem-b97e76d5.js.map +0 -1
  179. package/es/CheckboxSet-3aab5935.js +0 -51
  180. package/es/CheckboxSet-3aab5935.js.map +0 -1
  181. package/es/TextArea-93ce78a7.js +0 -225
  182. package/es/TextArea-93ce78a7.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavigationListItem-9df5446c.js","sources":["../../src/UNSAFE_NavigationList/useNavigationList.ts","../../src/UNSAFE_NavigationList/NavigationList.tsx","../../src/UNSAFE_NavigationList/NavigationListItem.tsx"],"sourcesContent":["import { ComponentChildren, ComponentProps } from 'preact';\nimport { useState, useCallback, MutableRef, useRef, useEffect, useId } from 'preact/hooks';\nimport {\n keyExtractor,\n getFirstVisibleKey,\n getKey,\n getPrevNextKeyUsingRef,\n findElementByKey\n} from '../utils/PRIVATE_collectionUtils';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { MenuProps } from '../hooks/PRIVATE_useVisContextMenu/util';\nimport { useContextMenuGesture } from '../hooks/UNSAFE_useContextMenuGesture';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport { Menu } from '../UNSAFE_Menu';\nimport { getDefaultContextMenu } from '../UNSAFE_TabBar/TabBarContextMenu';\nimport { TabBarContextMenuConfig, TabBarItemContextMenuContext } from '../UNSAFE_TabBarCommon';\nimport { NavigationListContextProps } from '../UNSAFE_NavigationListCommon';\n\nconst ITEM_SELECTOR = '[role=\"tab\"]';\nexport const REMOVE_ICON_SELECTOR = '[data-oj-navigationlist-item-remove-icon]';\nconst TOUCH_OFFSET_VALUE = 40;\nconst menuPropGestureStates: Record<\n 'mouse' | 'keyboard' | 'touch',\n Omit<Required<MenuProps>, 'anchorRef' | 'isOpen'>\n> = {\n mouse: {\n initialFocus: 'menu',\n placement: 'bottom-start',\n offsetValue: 0\n },\n keyboard: {\n initialFocus: 'firstItem',\n placement: 'bottom-start',\n offsetValue: 0\n },\n touch: {\n initialFocus: 'menu',\n placement: 'end',\n offsetValue: TOUCH_OFFSET_VALUE\n }\n};\n\n/**\n * type for payload of current key change event handler\n */\ntype CurrentKeyDetail<K> = {\n value: K;\n};\n/**\n * type for payload of selection change event handler\n */\ntype SelectionDetail<K> = {\n value: K;\n reason: 'pointer' | 'keyboard';\n};\n/**\n * type for payload of remove event handler\n */\ntype RemoveDetail<K> = {\n value: K;\n};\n\nconst initialMenuProps: MenuProps = {\n isOpen: false,\n initialFocus: 'menu',\n placement: 'bottom-start',\n offsetValue: 0,\n anchorRef: { current: null }\n};\n\n/*TODO: JET-58534. Create a hook to share some logic between navlist and tabbar. Hook will be used inside this one. */\nexport function useNavigationList<K extends string | number>({\n containerRef,\n selection,\n onRemove,\n onSelectionChange,\n children,\n contextMenuConfig\n}: {\n containerRef: MutableRef<HTMLDivElement>;\n selection?: K;\n onRemove?: <K extends string | number>(detail: RemoveDetail<K>) => void;\n onSelectionChange?: <K extends string | number>(detail: SelectionDetail<K>) => void;\n children: ComponentChildren;\n contextMenuConfig?: TabBarContextMenuConfig<K>;\n}) {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const [currentKey, setCurrentKey] = useState<K | undefined>(selection);\n\n const onCurrentKeyChange = useCallback((detail: CurrentKeyDetail<K | undefined>) => {\n setCurrentKey(detail.value);\n }, []) as NavigationListContextProps<K>['onCurrentKeyChange'];\n\n const { currentKeyProps } = useCurrentKey(\n (element) =>\n onRemove\n ? (extractOnlyItemKey(element, ITEM_SELECTOR, REMOVE_ICON_SELECTOR) as K)\n : keyExtractor(element, ITEM_SELECTOR),\n false,\n false,\n getPrevNextKeyUsingRef(containerRef, currentKey, true, ITEM_SELECTOR),\n getPrevNextKeyUsingRef(containerRef, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(containerRef, [\n 'Home',\n 'End',\n 'ArrowUp',\n 'ArrowDown'\n ]);\n\n const onFocus = useCallback(() => {\n if (containerRef.current && currentKey === undefined) {\n const key = getFirstVisibleKey(containerRef.current, ITEM_SELECTOR);\n if (key) {\n setCurrentKey(key as K);\n }\n }\n }, [currentKey, containerRef]);\n\n const onFocusProps = { onFocus };\n const prevNavItems = useRef<K[]>();\n\n useEffect(() => {\n if (containerRef.current) {\n const navListItemKeys = Array.from(\n containerRef.current.querySelectorAll(ITEM_SELECTOR),\n (elem) => getKey(elem as HTMLElement) as K\n );\n if (currentKey != null && navListItemKeys.indexOf(currentKey) !== -1) {\n const navListItem = findElementByKey(\n containerRef.current,\n currentKey,\n ITEM_SELECTOR\n ) as any;\n if (navListItem.scrollIntoViewIfNeeded) {\n // for some browsers, we'll need the non-standard scrollIntoViewIfNeeded\n navListItem.scrollIntoViewIfNeeded();\n } else {\n navListItem.scrollIntoView({ block: 'nearest' });\n }\n } else {\n if (currentKey && navListItemKeys.indexOf(currentKey) === -1) {\n prevNavItems.current\n ? setCurrentKey(findNextCurrentKey(currentKey, navListItemKeys, prevNavItems.current))\n : setCurrentKey(navListItemKeys[0] as K);\n }\n prevNavItems.current = navListItemKeys;\n }\n }\n }, [children, currentKey, containerRef]);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if ((event.key === 'Home' || event.key === 'End') && containerRef.current && currentKey) {\n const navListItemKey = Array.from(\n containerRef.current.querySelectorAll(ITEM_SELECTOR),\n (elem) => getKey(elem as HTMLElement) as K\n );\n onCurrentKeyChange?.({\n value: navListItemKey[event.key === 'Home' ? 0 : navListItemKey.length - 1] as K\n });\n }\n if (currentKey && (event.key === 'Enter' || event.key === ' ')) {\n // Prevent default to avoid page scrolling on Space (and native actions on Enter)\n event.preventDefault();\n onSelectionChange?.({\n value: currentKey as K,\n reason: 'keyboard'\n });\n }\n if (currentKey && event.key === 'Delete') {\n onRemove?.({ value: currentKey as K });\n }\n },\n [currentKey, onSelectionChange, onRemove, onCurrentKeyChange, containerRef]\n );\n\n const [contextMenuContext, setContextMenuContext] = useState<TabBarItemContextMenuContext<K>>();\n\n const [menuProps, setMenuProps] = useState<MenuProps>(initialMenuProps);\n const [accStatusInfo, setAccStatusInfo] = useState<string>();\n\n const { triggerProps } = useContextMenuGesture(\n ({ gesture, anchor, target }) => {\n let anchorBasedOnGesture = anchor;\n let itemKey = currentKey as K;\n if (gesture === 'keyboard') {\n //We find the element where the position of the menu is going to be based of\n const elem = findElementByKey(\n containerRef.current as HTMLElement,\n currentKey as K,\n ITEM_SELECTOR\n );\n //We set the correct anchor\n anchorBasedOnGesture = elem ? elem : anchor;\n } else {\n //We search for the key using the target of the event\n const key = keyExtractor(target as HTMLElement, ITEM_SELECTOR);\n\n //On touch devices, the keyExtractor returns null because target of touch event is the entire tabbar. Hence we make use of currentkey since the context menu is always launched from selected item and its key is currentKey\n itemKey = key != null ? (key as K) : (currentKey as K);\n }\n let isRemovable = false;\n if (containerRef.current) {\n isRemovable = getItemAttribute(itemKey, containerRef.current, REMOVE_ICON_SELECTOR) != null;\n }\n const defaultContext = getDefaultContextMenu<K>({\n // For default menu items the existence of REMOVE_ICON_SELECTOR is the indicator that it is removable because we render the default menu in touch devices not the application.\n // Furthermore in corepack due to delegations onRemove is always defined as it is a even handler hence not a good check for isRemovable.\n isRemovable: isRemovable,\n handleRemove: onRemove,\n handleReorder: undefined,\n itemKey: itemKey,\n tabKeys: undefined,\n // As direction is only needed for reorder to switch the labels\n direction: undefined,\n itemLabels: {\n labelRemove: isRemovable ? translations.tabbar_labelRemove() : undefined\n },\n handleAccStatus: (detail) => {\n const removeItemLabel = getItemLabel(detail.removedKey!, containerRef.current!) as string;\n const removeStatus =\n isRemovable && detail.removedKey ? ` Removed ${removeItemLabel}` : '';\n\n setAccStatusInfo(removeStatus);\n }\n });\n setContextMenuContext(defaultContext);\n\n setMenuProps({\n ...menuPropGestureStates[gesture],\n anchorRef: { current: anchorBasedOnGesture },\n // This is set so that when no contextMenuConfig and when items is not removable we need not open it.\n isOpen: contextMenuConfig != null\n });\n },\n {\n isDisabled: !contextMenuConfig //If there is no a context menu renderer we disable the hook\n }\n );\n\n const handleCloseContextMenu = useCallback<Required<ComponentProps<typeof Menu>>['onClose']>(\n (detail) => {\n //Focus has to be set on the current target that was obtained\n //during context menu gesture when menu is dismissed or item is \"selected\"\n if (detail.reason === 'dismissed' || detail.reason === 'itemAction') {\n setCurrentKey(contextMenuContext?.itemKey);\n containerRef.current?.focus();\n }\n // We close the menu.The only prop that matters here is isOpen\n setMenuProps({ ...initialMenuProps });\n },\n [containerRef, contextMenuContext?.itemKey]\n );\n\n const contextMenuDescriptionId = 'contextMenu_' + useId();\n const contextMenuDescription = translations.tabbar_labelContextMenu();\n\n return {\n showFocusRing,\n currentKey,\n onCurrentKeyChange,\n onKeyDown,\n menuProps: { ...menuProps, onClose: handleCloseContextMenu },\n contextMenuContext,\n contextMenuDescription,\n contextMenuDescriptionId,\n accStatusInfo,\n containerHandlers: mergeProps(focusRingProps, currentKeyProps, onFocusProps, triggerProps)\n };\n}\n// Utility that returns the value for a attribute related to the role=\"tab\" item.\nexport const getItemAttribute = <K extends string | number>(\n itemKey: K,\n root: HTMLElement,\n attribute: string\n) => {\n const navItem = findElementByKey(root, itemKey as K, ITEM_SELECTOR) as HTMLElement;\n if (navItem) {\n const tabBarItemAttribute = navItem.querySelector(attribute);\n return tabBarItemAttribute;\n }\n return;\n};\n\n// Utility that returns the visible inner text inside the role=\"tab\" item.\nconst getItemLabel = <K extends string | number>(itemKey: K, root: HTMLElement) => {\n const tabBarItem = findElementByKey(root, itemKey as K, ITEM_SELECTOR) as HTMLElement;\n if (tabBarItem) {\n return tabBarItem.innerText;\n }\n return;\n};\n\nconst extractOnlyItemKey = (element: HTMLElement, itemSelector: string, itemEliminator: string) => {\n const navigationListItem = element.closest(itemSelector);\n const removeButton = element.closest(itemEliminator);\n return navigationListItem?.contains(removeButton) ? null : keyExtractor(element, itemSelector);\n};\n\nconst findNextCurrentKey = <K>(currentKey: K, currNavs: K[], prevNavs: K[]) => {\n const index = prevNavs.indexOf(currentKey);\n if (index > 0) {\n const nextIndex = index === prevNavs.length - 1 ? index - 1 : index + 1;\n const nextKey = prevNavs[nextIndex];\n if (currNavs.indexOf(nextKey) !== -1) {\n return nextKey;\n }\n }\n // update current key to be the first one if we can't find a suitable next key\n return currNavs[0];\n};\n","import { Ref } from 'preact';\nimport { MutableRef, useMemo, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { isMobile } from '#utils/UNSAFE_clientUtils';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { navigationListStyles } from './themes/NavigationListStyles.css';\nimport { getItemAttribute, REMOVE_ICON_SELECTOR, useNavigationList } from './useNavigationList';\nimport { forwardRef, useImperativeHandle } from 'preact/compat';\nimport { useTestId, TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { LiveRegion } from '../UNSAFE_LiveRegion';\nimport { NavigationListProps, NavigationListContext } from '../UNSAFE_NavigationListCommon';\nimport { TabBarContextMenu } from '../UNSAFE_TabBar/TabBarContextMenu';\nimport type { TabBarContextMenuConfig as NavigationListContextMenuConfig } from '../UNSAFE_TabBarCommon';\nexport {\n RemovableNavigationListItem,\n NavigationListLinkItem\n} from '../UNSAFE_NavigationListCommon';\n\nexport type FocusableHandle = {\n focus: () => void;\n blur: () => void;\n};\n\nexport const NavigationList = forwardRef(\n <K extends string | number>(\n {\n children,\n selection,\n edge = 'start',\n onSelectionChange,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelLedBy,\n testId,\n display = 'standard'\n }: NavigationListProps<K> & TestIdProps,\n ref?: Ref<FocusableHandle>\n ) => {\n const containerRef = useRef<HTMLDivElement>(null);\n\n const isMobileDevice = isMobile();\n const defaultContextMenuConfig = useMemo<\n NavigationListContextMenuConfig<string | number> | undefined\n >(() => {\n return isMobileDevice\n ? {\n itemsRenderer: (context) => {\n //Only if context is available, it is a mobile device and it is removable item, we will return remove context menu item\n if (context) {\n const isRemovableItem =\n getItemAttribute(context.itemKey, containerRef.current!, REMOVE_ICON_SELECTOR) !=\n null;\n if (isRemovableItem) {\n const defaultItems = context.defaultMenuItems;\n return <>{defaultItems}</>;\n }\n }\n return null;\n }\n }\n : undefined;\n }, [isMobileDevice]);\n\n const {\n showFocusRing,\n currentKey,\n onCurrentKeyChange,\n containerHandlers,\n onKeyDown,\n contextMenuContext,\n menuProps,\n contextMenuDescription,\n contextMenuDescriptionId,\n accStatusInfo\n } = useNavigationList({\n containerRef: containerRef as MutableRef<HTMLDivElement>,\n selection,\n onRemove,\n onSelectionChange,\n children,\n contextMenuConfig: defaultContextMenuConfig\n });\n\n const eventProps = { onKeyDown };\n const navigationListClass = classNames([navigationListStyles.uListStyle]);\n const navigationListItemPrefix = useId() + '_';\n const testIdProps = useTestId(testId);\n\n //Allows to call focus on rootRef without having to expose it\n useImperativeHandle(ref!, () => ({\n focus: () => {\n if (containerRef.current) {\n containerRef.current.focus();\n }\n },\n blur: () => {\n if (containerRef.current) {\n containerRef.current.focus();\n }\n }\n }));\n\n return (\n <>\n <div\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelLedBy}\n role=\"tablist\"\n ref={containerRef}\n aria-orientation={'vertical'}\n tabIndex={0}\n aria-activedescendant={currentKey ? navigationListItemPrefix + currentKey : ''}\n {...mergeProps(eventProps, containerHandlers)}\n {...testIdProps}\n class={navigationListClass}>\n <NavigationListContext.Provider\n value={{\n selection,\n display,\n onSelectionChange,\n onCurrentKeyChange,\n currentKey,\n showFocusRing,\n navigationListItemPrefix,\n onRemove,\n edge\n }}>\n {children}\n </NavigationListContext.Provider>\n </div>\n {defaultContextMenuConfig && contextMenuDescriptionId && contextMenuDescription && (\n <span id={contextMenuDescriptionId}>\n <HiddenAccessible>{contextMenuDescription}</HiddenAccessible>\n </span>\n )}\n {defaultContextMenuConfig && accStatusInfo && <LiveRegion>{accStatusInfo}</LiveRegion>}\n {defaultContextMenuConfig && (\n <TabBarContextMenu\n {...menuProps}\n contextMenuConfig={defaultContextMenuConfig}\n contextMenuContext={contextMenuContext!}\n />\n )}\n </>\n );\n }\n);\n","import {\n BaseNavigationListItem,\n BaseNavigationListItemProps\n} from '../UNSAFE_NavigationListCommon/BaseNavigationListItem';\n\nexport type NavigationListItemProps<K extends string | number> = Omit<\n BaseNavigationListItemProps<K>,\n 'removeIcon'\n>;\n\nexport function NavigationListItem<K extends string | number>({\n itemKey,\n label,\n badge,\n metadata,\n severity,\n icon\n}: NavigationListItemProps<K>) {\n return (\n <BaseNavigationListItem\n itemKey={itemKey}\n label={label}\n badge={badge}\n metadata={metadata}\n severity={severity}\n icon={icon}\n />\n );\n}\n"],"names":["ITEM_SELECTOR","REMOVE_ICON_SELECTOR","menuPropGestureStates","mouse","initialFocus","placement","offsetValue","keyboard","touch","initialMenuProps","isOpen","anchorRef","current","getItemAttribute","itemKey","root","attribute","navItem","findElementByKey","querySelector","getItemLabel","tabBarItem","innerText","extractOnlyItemKey","element","itemSelector","itemEliminator","navigationListItem","closest","removeButton","contains","keyExtractor","findNextCurrentKey","currentKey","currNavs","prevNavs","index","indexOf","nextKey","length","NavigationList","forwardRef","children","selection","edge","onSelectionChange","onRemove","ariaLabel","ariaLabelLedBy","testId","display","ref","containerRef","useRef","isMobileDevice","isMobile","defaultContextMenuConfig","useMemo","itemsRenderer","context","defaultItems","defaultMenuItems","_jsx","jsx","_Fragment","Fragment","undefined","showFocusRing","onCurrentKeyChange","containerHandlers","onKeyDown","contextMenuContext","menuProps","contextMenuDescription","contextMenuDescriptionId","accStatusInfo","contextMenuConfig","translations","useTranslationBundle","setCurrentKey","useState","useCallback","detail","value","currentKeyProps","useCurrentKey","getPrevNextKeyUsingRef","focusRingProps","useCollectionFocusRing","onFocusProps","onFocus","key","getFirstVisibleKey","prevNavItems","useEffect","navListItemKeys","Array","from","querySelectorAll","elem","getKey","navListItem","scrollIntoViewIfNeeded","scrollIntoView","block","event","navListItemKey","preventDefault","reason","setContextMenuContext","setMenuProps","setAccStatusInfo","triggerProps","useContextMenuGesture","gesture","anchor","target","anchorBasedOnGesture","isRemovable","defaultContext","getDefaultContextMenu","handleRemove","handleReorder","tabKeys","direction","itemLabels","labelRemove","tabbar_labelRemove","handleAccStatus","removeItemLabel","removedKey","removeStatus","isDisabled","handleCloseContextMenu","focus","useId","tabbar_labelContextMenu","onClose","mergeProps","useNavigationList","eventProps","navigationListClass","classNames","navigationListStyles","uListStyle","navigationListItemPrefix","testIdProps","useTestId","useImperativeHandle","blur","_jsxs","role","tabIndex","class","NavigationListContext","Provider","id","HiddenAccessible","LiveRegion","TabBarContextMenu","label","badge","metadata","severity","icon","BaseNavigationListItem"],"mappings":"g2CAqBA,MAAMA,EAAgB,eACTC,EAAuB,4CAE9BC,EAGF,CACFC,MAAO,CACLC,aAAc,OACdC,UAAW,eACXC,YAAa,GAEfC,SAAU,CACRH,aAAc,YACdC,UAAW,eACXC,YAAa,GAEfE,MAAO,CACLJ,aAAc,OACdC,UAAW,MACXC,YAlBuB,KA0CrBG,EAA8B,CAClCC,QAAQ,EACRN,aAAc,OACdC,UAAW,eACXC,YAAa,EACbK,UAAW,CAAEC,QAAS,OAkNjB,MAAMC,EAAmB,CAC9BC,EACAC,EACAC,KAEA,MAAMC,EAAUC,EAAgBA,iBAACH,EAAMD,EAAcd,GACrD,GAAIiB,EAAS,CAEX,OAD4BA,EAAQE,cAAcH,EAEnD,CACM,EAIHI,EAAe,CAA4BN,EAAYC,KAC3D,MAAMM,EAAaH,EAAgBA,iBAACH,EAAMD,EAAcd,GACxD,GAAIqB,EACF,OAAOA,EAAWC,SAEb,EAGHC,EAAqB,CAACC,EAAsBC,EAAsBC,KACtE,MAAMC,EAAqBH,EAAQI,QAAQH,GACrCI,EAAeL,EAAQI,QAAQF,GACrC,OAAOC,GAAoBG,SAASD,GAAgB,KAAOE,eAAaP,EAASC,EAAa,EAG1FO,EAAqB,CAAIC,EAAeC,EAAeC,KAC3D,MAAMC,EAAQD,EAASE,QAAQJ,GAC/B,GAAIG,EAAQ,EAAG,CACb,MACME,EAAUH,EADEC,IAAUD,EAASI,OAAS,EAAIH,EAAQ,EAAIA,EAAQ,GAEtE,IAAmC,IAA/BF,EAASG,QAAQC,GACnB,OAAOA,CAEV,CAED,OAAOJ,EAAS,EAAE,ECrSPM,EAAiBC,EAAUA,YACtC,EAEIC,WACAC,YACAC,OAAO,QACPC,oBACAC,WACA,aAAcC,EACd,kBAAmBC,EACnBC,SACAC,UAAU,YAEZC,KAEA,MAAMC,EAAeC,SAAuB,MAEtCC,EAAiBC,EAAAA,WACjBC,EAA2BC,EAAAA,SAE/B,IACOH,EACH,CACEI,cAAgBC,IAEd,GAAIA,EAAS,CAIX,GADE,MADA9C,EAAiB8C,EAAQ7C,QAASsC,EAAaxC,QAAUX,GAEtC,CACnB,MAAM2D,EAAeD,EAAQE,iBAC7B,OAAOC,EAAAC,IAAAC,EAAAC,SAAA,CAAAvB,SAAGkB,GACX,CACF,CACD,OAAO,IAAI,QAGfM,GACH,CAACZ,KAEEa,cACJA,EAAalC,WACbA,EAAUmC,mBACVA,EAAkBC,kBAClBA,EAAiBC,UACjBA,EAASC,mBACTA,EAAkBC,UAClBA,EAASC,uBACTA,EAAsBC,yBACtBA,EAAwBC,cACxBA,GDDU,UAA6CvB,aAC3DA,EAAYT,UACZA,EAASG,SACTA,EAAQD,kBACRA,EAAiBH,SACjBA,EAAQkC,kBACRA,IASA,MAAMC,EAAeC,uBAAiC,6BAC/C7C,EAAY8C,GAAiBC,EAAQA,SAAgBrC,GAEtDyB,EAAqBa,eAAaC,IACtCH,EAAcG,EAAOC,MAAM,GAC1B,KAEGC,gBAAEA,GAAoBC,iBACzB7D,GACCsB,EACKvB,EAAmBC,EAASxB,EAAeC,GAC5C8B,eAAaP,EAASxB,KAC5B,GACA,EACAsF,yBAAuBlC,EAAcnB,GAAY,EAAMjC,GACvDsF,yBAAuBlC,EAAcnB,GAAY,EAAOjC,QACxDkE,OACAA,EACAjC,EACAmC,IAGKD,EAAeoB,GAAkBC,EAAAA,uBAAuBpC,EAAc,CAC3E,OACA,MACA,UACA,cAYIqC,EAAe,CAAEC,QATPT,EAAAA,aAAY,KAC1B,GAAI7B,EAAaxC,cAA0BsD,IAAfjC,EAA0B,CACpD,MAAM0D,EAAMC,EAAkBA,mBAACxC,EAAaxC,QAASZ,GACjD2F,GACFZ,EAAcY,EAEjB,IACA,CAAC1D,EAAYmB,KAGVyC,EAAexC,EAAAA,SAErByC,EAAAA,WAAU,KACR,GAAI1C,EAAaxC,QAAS,CACxB,MAAMmF,EAAkBC,MAAMC,KAC5B7C,EAAaxC,QAAQsF,iBAAiBlG,IACrCmG,GAASC,SAAOD,KAEnB,GAAkB,MAAdlE,IAA+D,IAAzC8D,EAAgB1D,QAAQJ,GAAoB,CACpE,MAAMoE,EAAcnF,EAAAA,iBAClBkC,EAAaxC,QACbqB,EACAjC,GAEEqG,EAAYC,uBAEdD,EAAYC,yBAEZD,EAAYE,eAAe,CAAEC,MAAO,WAEvC,MACKvE,IAAuD,IAAzC8D,EAAgB1D,QAAQJ,KACxC4D,EAAajF,QACTmE,EAAc/C,EAAmBC,EAAY8D,EAAiBF,EAAajF,UAC3EmE,EAAcgB,EAAgB,KAEpCF,EAAajF,QAAUmF,CAE1B,IACA,CAACrD,EAAUT,EAAYmB,IAE1B,MAAMkB,EAAYW,eACfwB,IACC,IAAmB,SAAdA,EAAMd,KAAgC,QAAdc,EAAMd,MAAkBvC,EAAaxC,SAAWqB,EAAY,CACvF,MAAMyE,EAAiBV,MAAMC,KAC3B7C,EAAaxC,QAAQsF,iBAAiBlG,IACrCmG,GAASC,SAAOD,KAEnB/B,IAAqB,CACnBe,MAAOuB,EAA6B,SAAdD,EAAMd,IAAiB,EAAIe,EAAenE,OAAS,IAE5E,EACGN,GAA6B,UAAdwE,EAAMd,KAAiC,MAAdc,EAAMd,MAEhDc,EAAME,iBACN9D,IAAoB,CAClBsC,MAAOlD,EACP2E,OAAQ,cAGR3E,GAA4B,WAAdwE,EAAMd,KACtB7C,IAAW,CAAEqC,MAAOlD,GACrB,GAEH,CAACA,EAAYY,EAAmBC,EAAUsB,EAAoBhB,KAGzDmB,EAAoBsC,GAAyB7B,EAAQA,YAErDR,EAAWsC,GAAgB9B,EAAQA,SAAYvE,IAC/CkE,EAAeoC,GAAoB/B,EAAQA,YAE5CgC,aAAEA,GAAiBC,EAAqBA,uBAC5C,EAAGC,UAASC,SAAQC,aAClB,IAAIC,EAAuBF,EACvBrG,EAAUmB,EACd,GAAgB,aAAZiF,EAAwB,CAQ1BG,EANanG,EAAAA,iBACXkC,EAAaxC,QACbqB,EACAjC,IAGmCmH,CACtC,KAAM,CAEL,MAAMxB,EAAM5D,EAAAA,aAAaqF,EAAuBpH,GAGhDc,EAAiB,MAAP6E,EAAeA,EAAa1D,CACvC,CACD,IAAIqF,GAAc,EACdlE,EAAaxC,UACf0G,EAAuF,MAAzEzG,EAAiBC,EAASsC,EAAaxC,QAASX,IAEhE,MAAMsH,EAAiBC,EAAAA,sBAAyB,CAG9CF,YAAaA,EACbG,aAAc3E,EACd4E,mBAAexD,EACfpD,QAASA,EACT6G,aAASzD,EAET0D,eAAW1D,EACX2D,WAAY,CACVC,YAAaR,EAAczC,EAAakD,0BAAuB7D,GAEjE8D,gBAAkB9C,IAChB,MAAM+C,EAAkB7G,EAAa8D,EAAOgD,WAAa9E,EAAaxC,SAChEuH,EACJb,GAAepC,EAAOgD,WAAa,YAAYD,IAAoB,GAErElB,EAAiBoB,EAAa,IAGlCtB,EAAsBU,GAEtBT,EAAa,IACR5G,EAAsBgH,GACzBvG,UAAW,CAAEC,QAASyG,GAEtB3G,OAA6B,MAArBkE,GACR,GAEJ,CACEwD,YAAaxD,IAIXyD,EAAyBpD,eAC5BC,IAGuB,cAAlBA,EAAO0B,QAA4C,eAAlB1B,EAAO0B,SAC1C7B,EAAcR,GAAoBzD,SAClCsC,EAAaxC,SAAS0H,SAGxBxB,EAAa,IAAKrG,GAAmB,GAEvC,CAAC2C,EAAcmB,GAAoBzD,UAG/B4D,EAA2B,eAAiB6D,EAAAA,QAC5C9D,EAAyBI,EAAa2D,0BAE5C,MAAO,CACLrE,gBACAlC,aACAmC,qBACAE,YACAE,UAAW,IAAKA,EAAWiE,QAASJ,GACpC9D,qBACAE,yBACAC,2BACAC,gBACAN,kBAAmBqE,EAAAA,WAAWnD,EAAgBH,EAAiBK,EAAcuB,GAEjF,CC1MQ2B,CAAkB,CACpBvF,aAAcA,EACdT,YACAG,WACAD,oBACAH,WACAkC,kBAAmBpB,IAGfoF,EAAa,CAAEtE,aACfuE,EAAsBC,EAAUA,WAAC,CAACC,EAAAA,qBAAqBC,aACvDC,EAA2BV,UAAU,IACrCW,EAAcC,YAAUlG,GAgB9B,OAbAmG,EAAmBA,oBAACjG,GAAM,KAAO,CAC/BmF,MAAO,KACDlF,EAAaxC,SACfwC,EAAaxC,QAAQ0H,OACtB,EAEHe,KAAM,KACAjG,EAAaxC,SACfwC,EAAaxC,QAAQ0H,OACtB,MAKHgB,EAAAA,KACEtF,EAAAA,SAAA,CAAAtB,SAAA,CAAAoB,MAAA,MAAA,CAAA,aACcf,EAAS,kBACJC,EACjBuG,KAAK,UACLpG,IAAKC,EAAY,mBACC,WAClBoG,SAAU,EACa,wBAAAvH,EAAagH,EAA2BhH,EAAa,MACxEyG,EAAAA,WAAWE,EAAYvE,MACvB6E,EACJO,MAAOZ,EACPnG,SAAAoB,EAAAC,IAAC2F,wBAAsBC,SACrB,CAAAxE,MAAO,CACLxC,YACAO,UACAL,oBACAuB,qBACAnC,aACAkC,gBACA8E,2BACAnG,WACAF,QAEDF,SAAAA,MAGJc,GAA4BkB,GAA4BD,GACvDX,MAAA,OAAA,CAAM8F,GAAIlF,EACRhC,SAAAoB,EAAAC,IAAC8F,EAAgBA,iBAAA,CAAAnH,SAAE+B,MAGtBjB,GAA4BmB,GAAiBb,EAAAC,IAAC+F,aAAU,CAAApH,SAAEiC,IAC1DnB,GACCM,EAAAC,IAACgG,EAAiBA,kBAAA,IACZvF,EACJI,kBAAmBpB,EACnBe,mBAAoBA,MAI1B,4CCxIU,UAA8CzD,QAC5DA,EAAOkJ,MACPA,EAAKC,MACLA,EAAKC,SACLA,EAAQC,SACRA,EAAQC,KACRA,IAEA,OACEtG,EAAAA,IAACuG,EAAAA,uBAAsB,CACrBvJ,QAASA,EACTkJ,MAAOA,EACPC,MAAOA,EACPC,SAAUA,EACVC,SAAUA,EACVC,KAAMA,GAGZ"}
@@ -0,0 +1,2 @@
1
+ define(['exports', 'preact/jsx-runtime', 'preact/hooks', './Text-31cabc49', './usePress-949a0d03', './mergeProps-bcfa6a92', './classNames-08d99695', './useInteractionStyle-15a2bdd0', './useComponentTheme-5aa41a8f', 'preact', './mergeInterpolations-9ede4cf7', './flexitem-5db48325', './UNSAFE_NavigationListCommon/themes/redwood/NavigationListItemTheme', './useUser-08901aba', './Flex-4b81b412', './Badge-b28ef084', './WarningS-98a81abe', './ErrorS-d91c3db2', './InformationS-53490112', './SuccessS-eb8fd915', './useTabBarItemTooltip-a81da662'], (function(e,s,n,t,a,i,r,o,l,c,d,u,m,g,h,x,v,p,y,j,b){"use strict";const f=c.createContext(null);function C(){return n.useContext(f)}const S=d.mergeInterpolations([...Object.values(u.flexitemInterpolations)]),{class:I,...N}=S({alignSelf:"center"});const L=e=>{e.preventDefault()};function T({itemKey:e,label:c,badge:d,metadata:u,severity:f="none",removeIcon:S,icon:T,href:F,"aria-controls":P}){const R=n.useRef(null),{itemId:H,itemHandlers:k,itemClasses:w,isSelected:E,labelContainerClasses:B,labelContainerStyle:O,isIconOnly:K,isEdgeEnd:z,stackedBadgeClasses:A,iconOnlyClasses:U,isCurrent:W,showFocusRing:D}=function({itemKey:e}){const{onSelectionChange:s,selection:t,currentKey:c,showFocusRing:d,navigationListItemPrefix:u,edge:h,display:x}=C(),v=c===e,p=t===e,y="icons"===x,j="end"===h,{interactionProps:b,applyPseudoHoverStyle:f,applyHoverStyle:S,applyActiveStyle:L}=o.useInteractionStyle(),{direction:T}=g.useUser(),F="rtl"===T,{classes:P,styles:{labelContainerClasses:R,navigationItemStackedBadge:H,navigationItemStackedBadgeRtl:k,startIconStacked:w}}=l.useComponentTheme(m.NavigationListItemRedwoodTheme,{focusRing:d?"isFocusRing":"notFocusRing",current:v?"isCurrent":"notCurrtent",selected:p?"isSelected":"notSelected",direction:F?"isRtl":"notRtl",hybridHover:S?"isHybridHover":"notHybridHover",pseudoHover:f?"isPseudoHover":"notPseudoHover",active:L?"isActive":"notActive",edgeEnd:"end"===h?"isEnd":"notEnd",iconOnly:y?"isIconOnly":"notIconOnly"}),E=r.classNames([w]),B=r.classNames([H,"rtl"===T&&k]),O=n.useCallback((()=>{s?.({value:e,reason:"pointer"})}),[e,s]),{pressProps:K}=a.usePress(O);return{itemId:u+e,itemHandlers:i.mergeProps(b,K),itemClasses:r.classNames([P]),isSelected:p,labelContainerClasses:r.classNames([R,I]),labelContainerStyle:N,isIconOnly:y,isEdgeEnd:j,stackedBadgeClasses:r.classNames([B]),iconOnlyClasses:r.classNames([E]),isCurrent:v,showFocusRing:d}}({itemKey:e}),M=!("none"===f||void 0===f),_=e=>{switch(e){case"error":return s.jsx(p.SvgErrorS,{color:"danger"});case"warning":return s.jsx(v.SvgWarningS,{color:"warning"});case"info":return s.jsx(y.SvgInformationS,{color:"info"});case"confirmation":return s.jsx(j.SvgSuccessS,{color:"success"});default:return null}},{styles:{iconLabelContainer:q,iconContainer:G,startIconPadding:J,endContentPadding:Q,removeIconPaddingWithEndContent:V,navigationItemMetadata:X,navigationListItemLink:Y}}=l.useComponentTheme(m.NavigationListItemRedwoodTheme),Z=r.classNames([X,Q]),$=r.classNames([Y]),ee=r.classNames([q,G,Q]),se=r.classNames([!K&&q,G,!K&&J,K&&U]),{styles:{navigationlistRemoveIcon:ne}}=l.useComponentTheme(m.NavigationListItemRedwoodTheme),te=u||M||d,ae=r.classNames([ne,te&&V,!te&&Q]),ie=null!=F,re=c&&!(" "===c&&void 0===c),oe=T&&null!=T&&K,le=oe,{tooltipContent:ce,tooltipEventHandlerProps:de,onLogicalFocus:ue,onLogicalBlur:me}=b.useTabBarItemTooltip({label:c,isDisabled:!le,position:z?"start":"end"});le&&(W&&D||E?ue(R.current):W&&D||me());const ge=()=>s.jsxs(s.Fragment,{children:[T&&s.jsx(h.Flex,{justify:"start",children:s.jsx("span",{class:se,children:T})}),!K&&re&&s.jsx(h.Flex,{align:"center",justify:"start",flex:"1 1 auto",children:s.jsx("span",{class:B,style:O,children:s.jsx(t.Text,{size:"inherit",weight:"inherit",variant:"inherit",children:c})})}),S&&!ie&&s.jsx("span",{class:ae,children:S})]}),he=()=>s.jsxs(s.Fragment,{children:[oe&&s.jsxs("div",{class:se,children:[T,s.jsx("span",{class:A,children:d?s.jsx(x.Badge,{size:"xs",variant:"neutral",children:d}):null})]}),!K&&T&&s.jsx(h.Flex,{justify:"start",children:s.jsx("span",{class:se,children:T})}),(!K||K&&!oe)&&re&&s.jsx(h.Flex,{align:"center",justify:"start",flex:"1 1 auto",children:s.jsx("span",{class:B,style:O,children:s.jsx(t.Text,{size:"inherit",weight:"inherit",variant:"inherit",children:c})})}),(u||M||d||S)&&s.jsxs(h.Flex,{align:"center",justify:"end",children:[" ",(!K||K&&!oe)&&d&&s.jsx("span",{class:ee,children:s.jsx(x.Badge,{size:"md",variant:"neutralSubtle",children:d})}),u&&s.jsx("span",{class:Z,children:s.jsx(t.Text,{children:"( "+u+" )"})}),M&&s.jsx("span",{class:ee,children:_(f)}),S&&!ie&&s.jsx("span",{class:ae,children:S})]})]});return ie?s.jsx("div",{...k,class:w,children:s.jsx("a",{tabindex:-1,role:"tab","data-oj-key":e,id:H,class:$,"aria-selected":E,"aria-controls":P,href:F,onClick:L,children:te?he():ge()})}):s.jsxs("div",{role:"tab",...i.mergeProps(de,k),"data-oj-key":e,id:H,class:w,"aria-selected":E,ref:R,"aria-controls":P,children:[te?he():ge(),K&&ce]})}e.BaseNavigationListItem=T,e.NavigationListContext=f,e.NavigationListLinkItem=function({itemKey:e,badge:n,metadata:t,severity:a,href:i,label:r,"aria-controls":o}){return s.jsx(T,{"aria-controls":o,itemKey:e,label:r,badge:n,metadata:t,severity:a,href:i})},e.useNavigationListContext=C}));
2
+ //# sourceMappingURL=NavigationListLinkItem-161049bb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavigationListLinkItem-161049bb.js","sources":["../../src/UNSAFE_NavigationListCommon/NavigationListContext.ts","../../src/UNSAFE_NavigationListCommon/useNavigationListContext.ts","../../src/UNSAFE_NavigationListCommon/useNavigationListItem.ts","../../src/UNSAFE_NavigationListCommon/BaseNavigationListItem.tsx","../../src/UNSAFE_NavigationListCommon/NavigationListLinkItem.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { createContext } from 'preact';\nimport { NavigationListProps } from './NavigationListProps';\n\ntype CurrentKeyDetail<K> = {\n value: K;\n};\n\nexport type NavigationListContextProps<K extends string | number> = Pick<\n NavigationListProps<K>,\n 'selection' | 'onSelectionChange' | 'onRemove' | 'edge' | 'display'\n> & {\n currentKey?: K;\n showFocusRing: boolean;\n onCurrentKeyChange:\n | (<K extends string | number>(detail: CurrentKeyDetail<K>) => void)\n | undefined;\n navigationListItemPrefix: string;\n};\n\n/**\n * Context used to pass navlist information without having to pass it to navlist children props.\n * We want to communicate information down to any interested navlist item children.\n */\n\nconst NavigationListContext = createContext<NavigationListContextProps<string | number>>(null!);\n\nexport { NavigationListContext };\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useContext } from 'preact/hooks';\nimport { NavigationListContext } from './NavigationListContext';\n\n/**\n * Utility hook for consuming the NavigationListContext\n *\n * @returns The value of NavigationListContext provider\n */\nfunction useNavigationListContext() {\n return useContext(NavigationListContext);\n}\n\nexport { useNavigationListContext };\n","import { useCallback } from 'preact/hooks';\n\nimport { usePress } from '../hooks/UNSAFE_usePress';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { useInteractionStyle } from '../hooks/UNSAFE_useInteractionStyle';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { useNavigationListContext } from './useNavigationListContext';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport {\n NavigationListItemStyles,\n NavigationListItemVariantOptions\n} from '../UNSAFE_NavigationList/themes/NavigationListItemStyles.css';\nimport { NavigationListItemRedwoodTheme } from './themes/redwood/NavigationListItemTheme';\nimport { useUser } from '../hooks/UNSAFE_useUser';\n\nconst flexItemStyleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n]);\nconst { class: labelContainerFlexItemClasses, ...labelContainerFlexItemStyle } =\n flexItemStyleInterpolations({\n alignSelf: 'center'\n });\n\nexport function useNavigationListItem<K extends string | number>({ itemKey }: { itemKey: K }) {\n const {\n onSelectionChange,\n selection,\n currentKey,\n showFocusRing,\n navigationListItemPrefix,\n edge,\n display\n } = useNavigationListContext();\n\n //Selection and focus state\n const isCurrent = currentKey === itemKey;\n\n const isSelected = selection === itemKey;\n\n const isIconOnly = display === 'icons' ? true : false;\n const isEdgeEnd = edge === 'end' ? true : false;\n\n //Styling\n const { interactionProps, applyPseudoHoverStyle, applyHoverStyle, applyActiveStyle } =\n useInteractionStyle();\n\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n\n const {\n classes: listItemClasses,\n styles: {\n labelContainerClasses,\n navigationItemStackedBadge,\n navigationItemStackedBadgeRtl,\n startIconStacked\n }\n } = useComponentTheme<NavigationListItemVariantOptions, NavigationListItemStyles>(\n NavigationListItemRedwoodTheme,\n {\n focusRing: showFocusRing ? 'isFocusRing' : 'notFocusRing',\n current: isCurrent ? 'isCurrent' : 'notCurrtent',\n selected: isSelected ? 'isSelected' : 'notSelected',\n direction: isRtl ? 'isRtl' : 'notRtl',\n hybridHover: applyHoverStyle ? 'isHybridHover' : 'notHybridHover',\n pseudoHover: applyPseudoHoverStyle ? 'isPseudoHover' : 'notPseudoHover',\n active: applyActiveStyle ? 'isActive' : 'notActive',\n edgeEnd: edge === 'end' ? 'isEnd' : 'notEnd',\n iconOnly: isIconOnly ? 'isIconOnly' : 'notIconOnly'\n }\n );\n\n const navigationItemIconOnlyClasses = classNames([startIconStacked]);\n\n const navigationItemStackedBadgeClasses = classNames([\n navigationItemStackedBadge,\n direction === 'rtl' && navigationItemStackedBadgeRtl\n ]);\n\n //Item handlers\n const handlePress = useCallback(() => {\n onSelectionChange?.({ value: itemKey as K, reason: 'pointer' });\n }, [itemKey, onSelectionChange]);\n\n //Legacy navlist makes selection on keyDown, but since preact tabbar made selection after keyUp, will do the same\n //for preact navlist\n const { pressProps } = usePress(handlePress);\n\n return {\n itemId: navigationListItemPrefix + itemKey,\n itemHandlers: mergeProps(interactionProps, pressProps /*,onFocusProps*/),\n itemClasses: classNames([listItemClasses]),\n isSelected,\n labelContainerClasses: classNames([labelContainerClasses, labelContainerFlexItemClasses]),\n labelContainerStyle: labelContainerFlexItemStyle,\n isIconOnly,\n isEdgeEnd,\n stackedBadgeClasses: classNames([navigationItemStackedBadgeClasses]),\n iconOnlyClasses: classNames([navigationItemIconOnlyClasses]),\n isCurrent,\n showFocusRing\n };\n}\n","import { useRef } from 'preact/hooks';\n\nimport { Text } from '../UNSAFE_Text';\n\nimport { useNavigationListItem } from './useNavigationListItem';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Badge } from '../UNSAFE_Badge';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { WarningS } from '../UNSAFE_RedwoodIcons/WarningS';\nimport { ErrorS } from '../UNSAFE_RedwoodIcons/ErrorS';\nimport { InformationS } from '../UNSAFE_RedwoodIcons/InformationS';\nimport { SuccessS } from '../UNSAFE_RedwoodIcons/SuccessS';\nimport {\n NavigationListItemStyles,\n NavigationListItemVariantOptions\n} from '../UNSAFE_NavigationList/themes/NavigationListItemStyles.css';\nimport { NavigationListItemRedwoodTheme } from './themes/redwood/NavigationListItemTheme';\nimport { ComponentChild, ComponentChildren } from 'preact';\nimport { useTabBarItemTooltip } from '#UNSAFE_TabBarCommon/useTabBarItemTooltip';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\n\ntype Severity = 'warning' | 'info' | 'none' | 'error' | 'confirmation';\ntype AriaProps = {\n /**\n * Accepts the panel element's ID associated with the item\n **/\n 'aria-controls'?: string;\n};\n\nexport type BaseNavigationListItemProps<K extends string | number> = {\n /**\n * Key of the NavigationListItem.\n */\n itemKey: K;\n /**\n * Label of the NavigationListItem.\n */\n label: string;\n /**\n * The content to be rendered inside the Badge component.\n */\n badge?: string;\n /**\n * The content to be rendered inside the Text component as a metadata.\n */\n metadata?: string;\n /**\n * The status icon to be rendered after the label.\n */\n severity?: Severity;\n /**\n * The content to be rendered for remove icon\n */\n removeIcon?: ComponentChildren;\n /**\n * The icon before the label or the stand alone icon\n */\n icon?: ComponentChild;\n /**\n * Sets the URL that the hyperlink points to. If there is no valid URL use \"#\" for href value to navigate to the top of the page.\n */\n href?: string;\n} & AriaProps;\n\nconst onClickLink = (event: MouseEvent) => {\n event.preventDefault();\n};\n/*TODO: JET-58535. Add ripple effect when touching navigationListItem. */\nexport function BaseNavigationListItem<K extends string | number>({\n itemKey,\n label,\n badge,\n metadata,\n severity = 'none',\n removeIcon,\n icon,\n href,\n 'aria-controls': ariaControls\n}: BaseNavigationListItemProps<K>) {\n const itemRef = useRef<HTMLDivElement | null>(null);\n\n //Logic of the component handled here\n const {\n itemId,\n itemHandlers,\n itemClasses,\n isSelected,\n labelContainerClasses,\n labelContainerStyle,\n isIconOnly,\n isEdgeEnd,\n stackedBadgeClasses,\n iconOnlyClasses,\n isCurrent,\n showFocusRing\n } = useNavigationListItem({\n itemKey\n });\n\n const severityRequirement = !(severity === 'none' || severity === undefined);\n\n const IconComponent = (severityValue: Severity) => {\n switch (severityValue) {\n case 'error':\n return <ErrorS color=\"danger\" />;\n case 'warning':\n return <WarningS color=\"warning\" />;\n case 'info':\n return <InformationS color=\"info\" />;\n case 'confirmation':\n return <SuccessS color=\"success\" />;\n default:\n return null;\n }\n };\n\n const {\n styles: {\n iconLabelContainer,\n iconContainer,\n startIconPadding,\n endContentPadding,\n removeIconPaddingWithEndContent,\n navigationItemMetadata,\n navigationListItemLink\n }\n } = useComponentTheme<NavigationListItemVariantOptions, NavigationListItemStyles>(\n NavigationListItemRedwoodTheme\n );\n\n const navigationItemMatadata = classNames([navigationItemMetadata, endContentPadding]);\n const navigationItemLinkClass = classNames([navigationListItemLink]);\n\n const endIconContainerClasses = classNames([\n iconLabelContainer,\n iconContainer,\n endContentPadding\n ]);\n const startIconContainerClasses = classNames([\n !isIconOnly && iconLabelContainer,\n iconContainer,\n //For icon only icon to label padding is not required.\n !isIconOnly && startIconPadding,\n isIconOnly && iconOnlyClasses\n ]);\n const {\n styles: { navigationlistRemoveIcon }\n } = useComponentTheme<NavigationListItemVariantOptions, NavigationListItemStyles>(\n NavigationListItemRedwoodTheme\n );\n\n const isComplexItem = metadata || severityRequirement || badge;\n const removeClass = classNames([\n navigationlistRemoveIcon,\n isComplexItem && removeIconPaddingWithEndContent,\n !isComplexItem && endContentPadding\n ]);\n\n const isLinkItem = href != null;\n const labelRequirement = label && !(label === ' ' && label === undefined);\n const iconOnlyRequirement = icon && icon != null && isIconOnly;\n const showTooltip = iconOnlyRequirement;\n\n const { tooltipContent, tooltipEventHandlerProps, onLogicalFocus, onLogicalBlur } =\n useTabBarItemTooltip({\n label,\n isDisabled: !showTooltip,\n // For edge end the tooltip will appear after icon in the order tooltip, icon, selection when navlist is placed at end of page.\n position: !isEdgeEnd ? 'end' : 'start'\n });\n if (showTooltip) {\n if ((isCurrent && showFocusRing) || isSelected) {\n onLogicalFocus(itemRef.current as HTMLElement);\n } else if (!isCurrent || !showFocusRing) {\n onLogicalBlur();\n }\n }\n\n const labelRenderer = () => {\n return (\n <>\n {icon && (\n <Flex justify=\"start\">\n <span class={startIconContainerClasses}>{icon}</span>\n </Flex>\n )}\n {!isIconOnly && labelRequirement && (\n <Flex align=\"center\" justify=\"start\" flex=\"1 1 auto\">\n <span class={labelContainerClasses} style={labelContainerStyle}>\n <Text size=\"inherit\" weight=\"inherit\" variant=\"inherit\">\n {label}\n </Text>\n </span>\n </Flex>\n )}\n {removeIcon && !isLinkItem && <span class={removeClass}>{removeIcon}</span>}\n </>\n );\n };\n\n const complexItemRenderer = () => {\n return (\n <>\n {iconOnlyRequirement && (\n <div class={startIconContainerClasses}>\n {icon}\n <span class={stackedBadgeClasses}>\n {badge ? (\n <Badge size=\"xs\" variant=\"neutral\">\n {badge}\n </Badge>\n ) : null}\n </span>\n </div>\n )}\n {!isIconOnly && icon && (\n <Flex justify=\"start\">\n <span class={startIconContainerClasses}>{icon}</span>\n </Flex>\n )}\n {(!isIconOnly || /* This covers invalid cases*/ (isIconOnly && !iconOnlyRequirement)) &&\n labelRequirement && (\n <Flex align=\"center\" justify=\"start\" flex=\"1 1 auto\">\n <span class={labelContainerClasses} style={labelContainerStyle}>\n <Text size=\"inherit\" weight=\"inherit\" variant=\"inherit\">\n {label}\n </Text>\n </span>\n </Flex>\n )}\n {(metadata || severityRequirement || badge || removeIcon) && (\n <Flex align=\"center\" justify=\"end\">\n {' '}\n {(!isIconOnly || /* This covers invalid cases*/ (isIconOnly && !iconOnlyRequirement)) &&\n badge && (\n <span class={endIconContainerClasses}>\n <Badge size=\"md\" variant=\"neutralSubtle\">\n {badge}\n </Badge>\n </span>\n )}\n {metadata && (\n <span class={navigationItemMatadata}>\n <Text>{'( ' + metadata + ' )'}</Text>\n </span>\n )}\n {severityRequirement && (\n <span class={endIconContainerClasses}>{IconComponent(severity)}</span>\n )}\n {removeIcon && !isLinkItem && <span class={removeClass}>{removeIcon}</span>}\n </Flex>\n )}\n </>\n );\n };\n const navlistItemRenderer = () => {\n return (\n <div\n role=\"tab\"\n {...mergeProps(tooltipEventHandlerProps, itemHandlers)}\n data-oj-key={itemKey}\n id={itemId}\n class={itemClasses}\n aria-selected={isSelected}\n ref={itemRef}\n aria-controls={ariaControls}>\n {isComplexItem ? complexItemRenderer() : labelRenderer()}\n {isIconOnly && tooltipContent}\n </div>\n );\n };\n const navlistLinkItemRenderer = () => {\n return (\n <div {...itemHandlers} class={itemClasses}>\n <a\n tabindex={-1}\n role=\"tab\"\n data-oj-key={itemKey}\n id={itemId}\n class={navigationItemLinkClass}\n aria-selected={isSelected}\n aria-controls={ariaControls}\n href={href}\n onClick={onClickLink}>\n {isComplexItem ? complexItemRenderer() : labelRenderer()}\n </a>\n </div>\n );\n };\n return isLinkItem ? navlistLinkItemRenderer() : navlistItemRenderer();\n}\n","import { BaseNavigationListItem, BaseNavigationListItemProps } from './BaseNavigationListItem';\n\ntype Link = {\n /**\n * Sets the URL that the hyperlink points to. If there is no valid URL do not use NavigationListLinkItem, use other types of NavigationListItem instead.\n */\n href: string;\n};\nexport type NavigationListLinkItemProps<K extends string | number> = Link &\n Pick<\n BaseNavigationListItemProps<K>,\n 'label' | 'itemKey' | 'badge' | 'metadata' | 'severity' | 'aria-controls'\n >;\n/**\n * NavigationListLinkItem is used to render links in a NavigationList. It allows to view the browser's built in link context menu to open the link in new browser tab.\n */\nexport function NavigationListLinkItem<K extends string | number>({\n itemKey,\n badge,\n metadata,\n severity,\n href,\n label,\n 'aria-controls': ariaControls\n}: NavigationListLinkItemProps<K>) {\n return (\n <BaseNavigationListItem\n aria-controls={ariaControls}\n itemKey={itemKey}\n label={label}\n badge={badge}\n metadata={metadata}\n severity={severity}\n href={href}></BaseNavigationListItem>\n );\n}\n"],"names":["NavigationListContext","createContext","useNavigationListContext","useContext","flexItemStyleInterpolations","mergeInterpolations","Object","values","flexitemInterpolations","class","labelContainerFlexItemClasses","labelContainerFlexItemStyle","alignSelf","onClickLink","event","preventDefault","BaseNavigationListItem","itemKey","label","badge","metadata","severity","removeIcon","icon","href","ariaControls","itemRef","useRef","itemId","itemHandlers","itemClasses","isSelected","labelContainerClasses","labelContainerStyle","isIconOnly","isEdgeEnd","stackedBadgeClasses","iconOnlyClasses","isCurrent","showFocusRing","onSelectionChange","selection","currentKey","navigationListItemPrefix","edge","display","interactionProps","applyPseudoHoverStyle","applyHoverStyle","applyActiveStyle","useInteractionStyle","direction","useUser","isRtl","classes","listItemClasses","styles","navigationItemStackedBadge","navigationItemStackedBadgeRtl","startIconStacked","useComponentTheme","NavigationListItemRedwoodTheme","focusRing","current","selected","hybridHover","pseudoHover","active","edgeEnd","iconOnly","navigationItemIconOnlyClasses","classNames","navigationItemStackedBadgeClasses","handlePress","useCallback","value","reason","pressProps","usePress","mergeProps","useNavigationListItem","severityRequirement","undefined","IconComponent","severityValue","_jsx","ErrorS","SvgErrorS","color","WarningS","SvgWarningS","InformationS","SvgInformationS","SuccessS","SvgSuccessS","iconLabelContainer","iconContainer","startIconPadding","endContentPadding","removeIconPaddingWithEndContent","navigationItemMetadata","navigationListItemLink","navigationItemMatadata","navigationItemLinkClass","endIconContainerClasses","startIconContainerClasses","navigationlistRemoveIcon","isComplexItem","removeClass","isLinkItem","labelRequirement","iconOnlyRequirement","showTooltip","tooltipContent","tooltipEventHandlerProps","onLogicalFocus","onLogicalBlur","useTabBarItemTooltip","isDisabled","position","labelRenderer","_jsxs","_Fragment","children","Flex","justify","jsx","align","flex","style","Text","size","weight","variant","complexItemRenderer","Badge","jsxs","tabindex","role","id","onClick","ref"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- define(['exports', 'preact/jsx-runtime', 'preact', 'preact/hooks', './classNames-08d99695', './TabBar-92bac52f', './UNSAFE_OverflowTabBar/themes/OverflowTabBarStyles.css', './useDetectHorizontalOverflow-5882ed4b', './TabBarLinkItem-944b1e8d', './RemovableTabBarItem-9ae273fe', './TabBarItem-a39c5de3', './OverflowTabBarItem-0aa39512'], (function(e,a,t,l,r,s,i,o,n,m,c,d){"use strict";e.OverflowTabBar=function({items:e,layout:b="stretch",display:u="standard",size:y="md",edge:f="top",selection:v,truncation:I,onSelect:g,onRemove:B,"aria-label":K,"aria-labelledby":T,contextMenuConfig:h,testId:x}){const p="stacked"===u?{display:u}:{display:u,size:y},w=l.useRef(null),R=t.createRef(),[O,j]=l.useState(!1),M=l.useRef(!1),k=l.useCallback((e=>{"more"===e.value?M.current?j(!1):j(!0):g?.(e),M.current=!1}),[g]),S=l.useMemo((()=>e.map((e=>e.itemKey))),[e]),{visibleItemKeys:z,overflowItemKeys:C,maxWidths:W}=o.useDetectHorizontalOverflow({rootRef:R,keysArray:S,isTruncationDisabled:!(I&&"progressive"===I)}),A=r.classNames([i.styles.overflowTabBarBase]);return a.jsx("div",{ref:w,class:A,children:a.jsxs(s.TabBar,{ref:R,selection:v,onSelect:k,...p,layout:b,edge:f,onRemove:B,"aria-label":K,"aria-labelledby":T,testId:x,contextMenuConfig:h,children:[null!=z&&z.length>0&&e.filter((e=>z?.includes(e.itemKey))).map((e=>null!=e.href?a.jsx(n.TabBarLinkItem,{href:e.href,itemKey:e.itemKey,label:e.label,icon:e.icon,badge:e.badge,metadata:e.metadata,severity:e.severity,"aria-controls":e.tabPanelId,labelMaxWidth:W?.get(e.itemKey)}):e.isRemovable?a.jsx(m.RemovableTabBarItem,{itemKey:e.itemKey,label:e.label,icon:e.icon,badge:e.badge,metadata:e.metadata,severity:e.severity,"aria-controls":e.tabPanelId,labelMaxWidth:W?.get(e.itemKey)}):a.jsx(c.TabBarItem,{itemKey:e.itemKey,label:e.label,icon:e.icon,badge:e.badge,metadata:e.metadata,severity:e.severity,"aria-controls":e.tabPanelId,labelMaxWidth:W?.get(e.itemKey)}))),null!=C&&C.length>0&&a.jsx(d.OverflowTabBarItem,{isOpen:O,onClose:e=>{R.current&&["itemAction","dismissed"].includes(e.reason)&&R?.current?.focus(),"outsideMousedown"===e.reason&&(M.current=!0),j(!1)},overflowItemKey:"more",overflowItems:e.filter((e=>C?.includes(e.itemKey)))})]})})}}));
2
- //# sourceMappingURL=OverflowTabBar-f8bf9356.js.map
1
+ define(['exports', 'preact/jsx-runtime', 'preact', 'preact/hooks', './classNames-08d99695', './TabBar-de723fbc', './UNSAFE_OverflowTabBar/themes/OverflowTabBarStyles.css', './useDetectHorizontalOverflow-5882ed4b', './TabBarLinkItem-944b1e8d', './RemovableTabBarItem-9ae273fe', './TabBarItem-a39c5de3', './OverflowTabBarItem-926b0c8a'], (function(e,a,t,l,r,s,i,o,n,c,d,m){"use strict";e.OverflowTabBar=function({items:e,layout:b="stretch",display:u="standard",size:y="md",edge:f="top",selection:v,truncation:I,onSelect:g,onRemove:B,"aria-label":K,"aria-labelledby":T,contextMenuConfig:h,testId:x}){const p="stacked"===u?{display:u}:{display:u,size:y},w=l.useRef(null),R=t.createRef(),[O,j]=l.useState(!1),M=l.useRef(!1),k=l.useCallback((e=>{"more"===e.value?M.current?j(!1):j(!0):g?.(e),M.current=!1}),[g]),S=l.useMemo((()=>e.map((e=>e.itemKey))),[e]),{visibleItemKeys:z,overflowItemKeys:C,maxWidths:W}=o.useDetectHorizontalOverflow({rootRef:R,keysArray:S,isTruncationDisabled:!(I&&"progressive"===I)}),A=r.classNames([i.styles.overflowTabBarBase]);return a.jsx("div",{ref:w,class:A,children:a.jsxs(s.TabBar,{ref:R,selection:v,onSelect:k,...p,layout:b,edge:f,onRemove:B,"aria-label":K,"aria-labelledby":T,testId:x,contextMenuConfig:h,children:[null!=z&&z.length>0&&e.filter((e=>z?.includes(e.itemKey))).map((e=>null!=e.href?a.jsx(n.TabBarLinkItem,{href:e.href,itemKey:e.itemKey,label:e.label,icon:e.icon,badge:e.badge,metadata:e.metadata,severity:e.severity,"aria-controls":e.tabPanelId,labelMaxWidth:W?.get(e.itemKey)}):e.isRemovable?a.jsx(c.RemovableTabBarItem,{itemKey:e.itemKey,label:e.label,icon:e.icon,badge:e.badge,metadata:e.metadata,severity:e.severity,"aria-controls":e.tabPanelId,labelMaxWidth:W?.get(e.itemKey)}):a.jsx(d.TabBarItem,{itemKey:e.itemKey,label:e.label,icon:e.icon,badge:e.badge,metadata:e.metadata,severity:e.severity,"aria-controls":e.tabPanelId,labelMaxWidth:W?.get(e.itemKey)}))),null!=C&&C.length>0&&a.jsx(m.OverflowTabBarItem,{isOpen:O,onClose:e=>{R.current&&["itemAction","dismissed"].includes(e.reason)&&R?.current?.focus(),"outsideMousedown"===e.reason&&(M.current=!0),j(!1)},overflowItemKey:"more",overflowItems:e.filter((e=>C?.includes(e.itemKey)))})]})})}}));
2
+ //# sourceMappingURL=OverflowTabBar-5ff68da7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowTabBar-f8bf9356.js","sources":["../../src/UNSAFE_OverflowTabBar/OverflowTabBar.tsx"],"sourcesContent":["import { ComponentProps, createRef } from 'preact';\nimport { useCallback, useMemo, useRef, useState } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport {\n OverflowTabBarItem,\n RemovableTabBarItem,\n TabBar,\n TabBarItem,\n TabBarLinkItem\n} from '../UNSAFE_TabBar';\nimport { CloseDetail, Item } from '../UNSAFE_TabBarCommon';\nimport { styles } from './themes/OverflowTabBarStyles.css';\nimport { useDetectHorizontalOverflow } from '../hooks/PRIVATE_useDetectHorizontalOverflow';\n\ntype OverflowTabBarProps<K extends string | number> = {\n /**\n * An array of data to render individual tabs\n */\n items: Item<K>[];\n /**\n * The truncation configuration for tab labels.\n * 'progressive' will restrict the width of each tab label to allow all tabs to fit if enough space is not available to display all of the tabs.\n * Labels that are truncated are displayed with ellipses. However the width of each tab label will not be truncated below a specific threshold.\n * 'none' tabs always take up the space needed by the labels even if enough space is not available to display all of the tabs.\n */\n truncation?: 'none' | 'progressive';\n} & Omit<ComponentProps<typeof TabBar>, 'children' | 'aria-describedby' | 'ref'>;\n\n/**\n * OverflowTabBar handles the rendering of overflowing tab items.\n */\nexport function OverflowTabBar<K extends string | number>({\n items,\n layout = 'stretch',\n display = 'standard',\n size = 'md',\n edge = 'top',\n selection,\n truncation,\n onSelect,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n contextMenuConfig,\n testId\n}: OverflowTabBarProps<K> & TestIdProps) {\n const displayStackProps = {\n display: display\n };\n const displayNonStackProps = {\n display: display,\n size: size\n };\n\n const displayProps = display === 'stacked' ? displayStackProps : displayNonStackProps;\n const rootRef = useRef<HTMLDivElement>(null);\n const tabBarRef = createRef<HTMLDivElement>();\n\n const [isDropDownOpen, setIsDropDownOpen] = useState<boolean>(false);\n\n const isOutsideMouseDown = useRef<boolean>(false);\n\n const handleClose = (e: CloseDetail) => {\n if (tabBarRef.current && ['itemAction', 'dismissed'].includes(e.reason)) {\n tabBarRef?.current?.focus();\n }\n if (e.reason === 'outsideMousedown') {\n isOutsideMouseDown.current = true;\n }\n setIsDropDownOpen(false);\n };\n\n const handleSelect = useCallback<Required<ComponentProps<typeof TabBar>>['onSelect']>(\n (e: { value: string | number }) => {\n if (e.value === 'more') {\n //If overflow item is clicked after dropdown is open, the reason is outsideMouseDown and it needs to be closed\n if (isOutsideMouseDown.current) {\n setIsDropDownOpen(false);\n } else {\n setIsDropDownOpen(true);\n }\n } else {\n onSelect?.(e);\n }\n isOutsideMouseDown.current = false;\n },\n [onSelect]\n );\n\n const overflowItemKey = 'more' as K;\n\n const keysArray = useMemo(() => items.map((item) => item.itemKey) as K[], [items]);\n\n const { visibleItemKeys, overflowItemKeys, maxWidths } = useDetectHorizontalOverflow({\n rootRef: tabBarRef,\n keysArray,\n isTruncationDisabled: !(truncation && truncation === 'progressive')\n });\n\n const overflowTabBarClass = classNames([styles.overflowTabBarBase]);\n\n return (\n <div ref={rootRef} class={overflowTabBarClass}>\n <TabBar\n ref={tabBarRef}\n selection={selection}\n onSelect={handleSelect}\n {...displayProps}\n layout={layout}\n edge={edge}\n onRemove={onRemove}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n testId={testId}\n contextMenuConfig={contextMenuConfig}>\n {visibleItemKeys != null &&\n visibleItemKeys.length > 0 &&\n items\n .filter((item) => visibleItemKeys?.includes(item.itemKey))\n .map((item: Item<K>) =>\n item.href != null ? (\n <TabBarLinkItem\n href={item.href}\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n ) : item.isRemovable ? (\n <RemovableTabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n ) : (\n <TabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n )\n )}\n {overflowItemKeys != null && overflowItemKeys.length > 0 && (\n <OverflowTabBarItem\n isOpen={isDropDownOpen}\n onClose={handleClose}\n overflowItemKey={overflowItemKey}\n overflowItems={items.filter((item) => overflowItemKeys?.includes(item.itemKey))}\n />\n )}\n </TabBar>\n </div>\n );\n}\n"],"names":["items","layout","display","size","edge","selection","truncation","onSelect","onRemove","ariaLabel","ariaLabelledby","contextMenuConfig","testId","displayProps","rootRef","useRef","tabBarRef","createRef","isDropDownOpen","setIsDropDownOpen","useState","isOutsideMouseDown","handleSelect","useCallback","e","value","current","keysArray","useMemo","map","item","itemKey","visibleItemKeys","overflowItemKeys","maxWidths","useDetectHorizontalOverflow","isTruncationDisabled","overflowTabBarClass","classNames","styles","overflowTabBarBase","_jsx","ref","class","children","_jsxs","jsxs","TabBar","length","filter","includes","href","TabBarLinkItem","label","icon","badge","metadata","severity","tabPanelId","labelMaxWidth","get","isRemovable","jsx","RemovableTabBarItem","TabBarItem","OverflowTabBarItem","isOpen","onClose","reason","focus","overflowItemKey","overflowItems"],"mappings":"+YAgC0DA,MACxDA,EAAKC,OACLA,EAAS,UAASC,QAClBA,EAAU,WAAUC,KACpBA,EAAO,KAAIC,KACXA,EAAO,MAAKC,UACZA,EAASC,WACTA,EAAUC,SACVA,EAAQC,SACRA,EACA,aAAcC,EACd,kBAAmBC,EAAcC,kBACjCA,EAAiBC,OACjBA,IAEA,MAQMC,EAA2B,YAAZX,EARK,CACxBA,QAASA,GAEkB,CAC3BA,QAASA,EACTC,KAAMA,GAIFW,EAAUC,SAAuB,MACjCC,EAAYC,EAAAA,aAEXC,EAAgBC,GAAqBC,EAAQA,UAAU,GAExDC,EAAqBN,UAAgB,GAYrCO,EAAeC,eAClBC,IACiB,SAAZA,EAAEC,MAEAJ,EAAmBK,QACrBP,GAAkB,GAElBA,GAAkB,GAGpBZ,IAAWiB,GAEbH,EAAmBK,SAAU,CAAK,GAEpC,CAACnB,IAKGoB,EAAYC,EAAAA,SAAQ,IAAM5B,EAAM6B,KAAKC,GAASA,EAAKC,WAAiB,CAAC/B,KAErEgC,gBAAEA,EAAeC,iBAAEA,EAAgBC,UAAEA,GAAcC,EAAAA,4BAA4B,CACnFrB,QAASE,EACTW,YACAS,uBAAwB9B,GAA6B,gBAAfA,KAGlC+B,EAAsBC,EAAUA,WAAC,CAACC,EAAAA,OAAOC,qBAE/C,OACEC,EAAAA,IAAK,MAAA,CAAAC,IAAK5B,EAAS6B,MAAON,EAAmBO,SAC3CC,EAACC,KAAAC,EAAMA,QACLL,IAAK1B,EACLX,UAAWA,EACXE,SAAUe,KACNT,EACJZ,OAAQA,EACRG,KAAMA,EACNI,SAAUA,EACE,aAAAC,oBACKC,EACjBE,OAAQA,EACRD,kBAAmBA,EAAiBiC,SAAA,CAChB,MAAnBZ,GACCA,EAAgBgB,OAAS,GACzBhD,EACGiD,QAAQnB,GAASE,GAAiBkB,SAASpB,EAAKC,WAChDF,KAAKC,GACS,MAAbA,EAAKqB,KACHV,EAAAA,IAACW,EAAAA,eAAc,CACbD,KAAMrB,EAAKqB,KACXpB,QAASD,EAAKC,QACdsB,MAAOvB,EAAKuB,MACZC,KAAMxB,EAAKwB,KACXC,MAAOzB,EAAKyB,MACZC,SAAU1B,EAAK0B,SACfC,SAAU3B,EAAK2B,SAAQ,gBACR3B,EAAK4B,WACpBC,cAAezB,GAAW0B,IAAI9B,EAAKC,WAEnCD,EAAK+B,YACPpB,EAACqB,IAAAC,EAAmBA,oBAClB,CAAAhC,QAASD,EAAKC,QACdsB,MAAOvB,EAAKuB,MACZC,KAAMxB,EAAKwB,KACXC,MAAOzB,EAAKyB,MACZC,SAAU1B,EAAK0B,SACfC,SAAU3B,EAAK2B,SACA,gBAAA3B,EAAK4B,WACpBC,cAAezB,GAAW0B,IAAI9B,EAAKC,WAGrCU,EAAAA,IAACuB,EAAAA,WAAU,CACTjC,QAASD,EAAKC,QACdsB,MAAOvB,EAAKuB,MACZC,KAAMxB,EAAKwB,KACXC,MAAOzB,EAAKyB,MACZC,SAAU1B,EAAK0B,SACfC,SAAU3B,EAAK2B,SAAQ,gBACR3B,EAAK4B,WACpBC,cAAezB,GAAW0B,IAAI9B,EAAKC,aAIxB,MAApBE,GAA4BA,EAAiBe,OAAS,GACrDP,EAAAqB,IAACG,EAAkBA,mBAAA,CACjBC,OAAQhD,EACRiD,QAjGW3C,IACfR,EAAUU,SAAW,CAAC,aAAc,aAAawB,SAAS1B,EAAE4C,SAC9DpD,GAAWU,SAAS2C,QAEL,qBAAb7C,EAAE4C,SACJ/C,EAAmBK,SAAU,GAE/BP,GAAkB,EAAM,EA2FhBmD,gBAvEc,OAwEdC,cAAevE,EAAMiD,QAAQnB,GAASG,GAAkBiB,SAASpB,EAAKC,iBAMlF"}
1
+ {"version":3,"file":"OverflowTabBar-5ff68da7.js","sources":["../../src/UNSAFE_OverflowTabBar/OverflowTabBar.tsx"],"sourcesContent":["import { ComponentProps, createRef } from 'preact';\nimport { useCallback, useMemo, useRef, useState } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport {\n OverflowTabBarItem,\n RemovableTabBarItem,\n TabBar,\n TabBarItem,\n TabBarLinkItem\n} from '../UNSAFE_TabBar';\nimport { CloseDetail, Item } from '../UNSAFE_TabBarCommon';\nimport { styles } from './themes/OverflowTabBarStyles.css';\nimport { useDetectHorizontalOverflow } from '../hooks/PRIVATE_useDetectHorizontalOverflow';\n\ntype OverflowTabBarProps<K extends string | number> = {\n /**\n * An array of data to render individual tabs\n */\n items: Item<K>[];\n /**\n * The truncation configuration for tab labels.\n * 'progressive' will restrict the width of each tab label to allow all tabs to fit if enough space is not available to display all of the tabs.\n * Labels that are truncated are displayed with ellipses. However the width of each tab label will not be truncated below a specific threshold.\n * 'none' tabs always take up the space needed by the labels even if enough space is not available to display all of the tabs.\n */\n truncation?: 'none' | 'progressive';\n} & Omit<ComponentProps<typeof TabBar>, 'children' | 'aria-describedby' | 'ref'>;\n\n/**\n * OverflowTabBar handles the rendering of overflowing tab items.\n */\nexport function OverflowTabBar<K extends string | number>({\n items,\n layout = 'stretch',\n display = 'standard',\n size = 'md',\n edge = 'top',\n selection,\n truncation,\n onSelect,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n contextMenuConfig,\n testId\n}: OverflowTabBarProps<K> & TestIdProps) {\n const displayStackProps = {\n display: display\n };\n const displayNonStackProps = {\n display: display,\n size: size\n };\n\n const displayProps = display === 'stacked' ? displayStackProps : displayNonStackProps;\n const rootRef = useRef<HTMLDivElement>(null);\n const tabBarRef = createRef<HTMLDivElement>();\n\n const [isDropDownOpen, setIsDropDownOpen] = useState<boolean>(false);\n\n const isOutsideMouseDown = useRef<boolean>(false);\n\n const handleClose = (e: CloseDetail) => {\n if (tabBarRef.current && ['itemAction', 'dismissed'].includes(e.reason)) {\n tabBarRef?.current?.focus();\n }\n if (e.reason === 'outsideMousedown') {\n isOutsideMouseDown.current = true;\n }\n setIsDropDownOpen(false);\n };\n\n const handleSelect = useCallback<Required<ComponentProps<typeof TabBar>>['onSelect']>(\n (e: { value: string | number }) => {\n if (e.value === 'more') {\n //If overflow item is clicked after dropdown is open, the reason is outsideMouseDown and it needs to be closed\n if (isOutsideMouseDown.current) {\n setIsDropDownOpen(false);\n } else {\n setIsDropDownOpen(true);\n }\n } else {\n onSelect?.(e);\n }\n isOutsideMouseDown.current = false;\n },\n [onSelect]\n );\n\n const overflowItemKey = 'more' as K;\n\n const keysArray = useMemo(() => items.map((item) => item.itemKey) as K[], [items]);\n\n const { visibleItemKeys, overflowItemKeys, maxWidths } = useDetectHorizontalOverflow({\n rootRef: tabBarRef,\n keysArray,\n isTruncationDisabled: !(truncation && truncation === 'progressive')\n });\n\n const overflowTabBarClass = classNames([styles.overflowTabBarBase]);\n\n return (\n <div ref={rootRef} class={overflowTabBarClass}>\n <TabBar\n ref={tabBarRef}\n selection={selection}\n onSelect={handleSelect}\n {...displayProps}\n layout={layout}\n edge={edge}\n onRemove={onRemove}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n testId={testId}\n contextMenuConfig={contextMenuConfig}>\n {visibleItemKeys != null &&\n visibleItemKeys.length > 0 &&\n items\n .filter((item) => visibleItemKeys?.includes(item.itemKey))\n .map((item: Item<K>) =>\n item.href != null ? (\n <TabBarLinkItem\n href={item.href}\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n ) : item.isRemovable ? (\n <RemovableTabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n ) : (\n <TabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n )\n )}\n {overflowItemKeys != null && overflowItemKeys.length > 0 && (\n <OverflowTabBarItem\n isOpen={isDropDownOpen}\n onClose={handleClose}\n overflowItemKey={overflowItemKey}\n overflowItems={items.filter((item) => overflowItemKeys?.includes(item.itemKey))}\n />\n )}\n </TabBar>\n </div>\n );\n}\n"],"names":["items","layout","display","size","edge","selection","truncation","onSelect","onRemove","ariaLabel","ariaLabelledby","contextMenuConfig","testId","displayProps","rootRef","useRef","tabBarRef","createRef","isDropDownOpen","setIsDropDownOpen","useState","isOutsideMouseDown","handleSelect","useCallback","e","value","current","keysArray","useMemo","map","item","itemKey","visibleItemKeys","overflowItemKeys","maxWidths","useDetectHorizontalOverflow","isTruncationDisabled","overflowTabBarClass","classNames","styles","overflowTabBarBase","_jsx","ref","class","children","_jsxs","jsxs","TabBar","length","filter","includes","href","TabBarLinkItem","label","icon","badge","metadata","severity","tabPanelId","labelMaxWidth","get","isRemovable","jsx","RemovableTabBarItem","TabBarItem","OverflowTabBarItem","isOpen","onClose","reason","focus","overflowItemKey","overflowItems"],"mappings":"+YAgC0DA,MACxDA,EAAKC,OACLA,EAAS,UAASC,QAClBA,EAAU,WAAUC,KACpBA,EAAO,KAAIC,KACXA,EAAO,MAAKC,UACZA,EAASC,WACTA,EAAUC,SACVA,EAAQC,SACRA,EACA,aAAcC,EACd,kBAAmBC,EAAcC,kBACjCA,EAAiBC,OACjBA,IAEA,MAQMC,EAA2B,YAAZX,EARK,CACxBA,QAASA,GAEkB,CAC3BA,QAASA,EACTC,KAAMA,GAIFW,EAAUC,SAAuB,MACjCC,EAAYC,EAAAA,aAEXC,EAAgBC,GAAqBC,EAAQA,UAAU,GAExDC,EAAqBN,UAAgB,GAYrCO,EAAeC,eAClBC,IACiB,SAAZA,EAAEC,MAEAJ,EAAmBK,QACrBP,GAAkB,GAElBA,GAAkB,GAGpBZ,IAAWiB,GAEbH,EAAmBK,SAAU,CAAK,GAEpC,CAACnB,IAKGoB,EAAYC,EAAAA,SAAQ,IAAM5B,EAAM6B,KAAKC,GAASA,EAAKC,WAAiB,CAAC/B,KAErEgC,gBAAEA,EAAeC,iBAAEA,EAAgBC,UAAEA,GAAcC,EAAAA,4BAA4B,CACnFrB,QAASE,EACTW,YACAS,uBAAwB9B,GAA6B,gBAAfA,KAGlC+B,EAAsBC,EAAUA,WAAC,CAACC,EAAAA,OAAOC,qBAE/C,OACEC,EAAAA,IAAK,MAAA,CAAAC,IAAK5B,EAAS6B,MAAON,EAAmBO,SAC3CC,EAACC,KAAAC,EAAMA,QACLL,IAAK1B,EACLX,UAAWA,EACXE,SAAUe,KACNT,EACJZ,OAAQA,EACRG,KAAMA,EACNI,SAAUA,EACE,aAAAC,oBACKC,EACjBE,OAAQA,EACRD,kBAAmBA,EAAiBiC,SAAA,CAChB,MAAnBZ,GACCA,EAAgBgB,OAAS,GACzBhD,EACGiD,QAAQnB,GAASE,GAAiBkB,SAASpB,EAAKC,WAChDF,KAAKC,GACS,MAAbA,EAAKqB,KACHV,EAAAA,IAACW,EAAAA,eAAc,CACbD,KAAMrB,EAAKqB,KACXpB,QAASD,EAAKC,QACdsB,MAAOvB,EAAKuB,MACZC,KAAMxB,EAAKwB,KACXC,MAAOzB,EAAKyB,MACZC,SAAU1B,EAAK0B,SACfC,SAAU3B,EAAK2B,SAAQ,gBACR3B,EAAK4B,WACpBC,cAAezB,GAAW0B,IAAI9B,EAAKC,WAEnCD,EAAK+B,YACPpB,EAACqB,IAAAC,EAAmBA,oBAClB,CAAAhC,QAASD,EAAKC,QACdsB,MAAOvB,EAAKuB,MACZC,KAAMxB,EAAKwB,KACXC,MAAOzB,EAAKyB,MACZC,SAAU1B,EAAK0B,SACfC,SAAU3B,EAAK2B,SACA,gBAAA3B,EAAK4B,WACpBC,cAAezB,GAAW0B,IAAI9B,EAAKC,WAGrCU,EAAAA,IAACuB,EAAAA,WAAU,CACTjC,QAASD,EAAKC,QACdsB,MAAOvB,EAAKuB,MACZC,KAAMxB,EAAKwB,KACXC,MAAOzB,EAAKyB,MACZC,SAAU1B,EAAK0B,SACfC,SAAU3B,EAAK2B,SAAQ,gBACR3B,EAAK4B,WACpBC,cAAezB,GAAW0B,IAAI9B,EAAKC,aAIxB,MAApBE,GAA4BA,EAAiBe,OAAS,GACrDP,EAAAqB,IAACG,EAAkBA,mBAAA,CACjBC,OAAQhD,EACRiD,QAjGW3C,IACfR,EAAUU,SAAW,CAAC,aAAc,aAAawB,SAAS1B,EAAE4C,SAC9DpD,GAAWU,SAAS2C,QAEL,qBAAb7C,EAAE4C,SACJ/C,EAAmBK,SAAU,GAE/BP,GAAkB,EAAM,EA2FhBmD,gBAvEc,OAwEdC,cAAevE,EAAMiD,QAAQnB,GAASG,GAAkBiB,SAASpB,EAAKC,iBAMlF"}
@@ -0,0 +1,2 @@
1
+ define(['exports', 'preact/jsx-runtime', 'preact', 'preact/hooks', './useTranslationBundle-e4dd341e', './clientHints-6d361eaa', './mergeInterpolations-9ede4cf7', './flexitem-5db48325', './classNames-08d99695', './Icon-234f9eb8', './useTabBarContext-15a23bb6', './Dropdown-7eca9554', './Sheet-1d02491d', './BaseTabBarItem-d7c2922b', './UNSAFE_TabBarCommon/themes/OverflowTabBarItemStyles.css', './NavigationListItem-9df5446c', './NavigationListLinkItem-161049bb', './RemovableNavigationListItem-e298c5de'], (function(e,a,t,n,s,o,i,l,r,c,d,m,u,b,v,f,g,h){"use strict";const p=e=>a.jsx(c.Icon,{viewBox:"0 0 24 24",...e,children:a.jsx("g",{fill:"none",children:a.jsx("path",{d:"M6 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z",fill:"currentcolor"})})});const x=()=>{const{deviceRenderMode:e}=o.getClientHints();return"phone"===e};e.OverflowTabBarItem=function({overflowItemKey:e,icon:o,badge:c,overflowItems:y,isOpen:I,onClose:j}){const{selection:B,showFocusRing:C,isEdgeBottom:w,onSelect:R,onRemove:K,layout:L}=d.useTabBarContext(),N=n.useRef(!1);n.useEffect((()=>{I||(N.current=!1)}),[I]);const k=n.useRef(null),O=t.createRef(),T=n.useCallback((e=>{"pointer"===e.reason&&(N.current=!0),R?.({value:e.value}),j?.({reason:"itemAction"})}),[R,j]),F=n.useCallback((e=>{j?.({reason:e.reason})}),[j]),S=n.useCallback((()=>{j?.({reason:"dismissed"})}),[j]),D=C&&!N.current&&!x(),z=y?.find((e=>e.itemKey===B))?.tabPanelId,A=s.useTranslationBundle("@oracle/oraclejet-preact"),E=void 0!==B&&(H=B,null!=y?.find((e=>e.itemKey===H)));var H;const M=i.mergeInterpolations([...Object.values(l.flexitemInterpolations)])({flex:"stretch"===L?"1 0 auto":"0 0 auto"}),P=r.classNames([v.styles.navContainerBase]),U=n.useRef(null),_=n.useCallback((e=>{"ArrowDown"===e.key&&(e.preventDefault(),O.current?.focus())}),[O]),q=n.useCallback((()=>a.jsx("div",{onKeyDown:_,tabIndex:0,ref:U,class:P,children:a.jsx(f.NavigationList,{ref:O,selection:B,onSelectionChange:T,onRemove:K,children:y?.map((e=>null!=e.href?a.jsx(g.NavigationListLinkItem,{href:e.href,itemKey:e.itemKey,label:e.label,badge:e.badge,metadata:e.metadata,severity:e.severity}):e.isRemovable?a.jsx(h.RemovableNavigationListItem,{itemKey:e.itemKey,label:e.label,badge:e.badge,metadata:e.metadata,severity:e.severity}):a.jsx(f.NavigationListItem,{itemKey:e.itemKey,label:e.label,badge:e.badge,metadata:e.metadata,severity:e.severity})))})})),[_,P,O,B,T,K,y]);return a.jsxs(a.Fragment,{children:[y&&y.length>0&&a.jsx("div",{ref:k,style:M,children:a.jsx(b.BaseTabBarItem,{"aria-controls":z,itemKey:e,label:A.overflowItemLabel(),icon:o||a.jsx(p,{}),badge:c,showFocusRingOverride:D,selectionOverride:E,displayOverride:"icons","aria-haspopup":!0})}),x()?a.jsx(u.Sheet,{isOpen:I,onClose:S,initialFocus:"firstFocusable",children:q()}):a.jsx(m.Dropdown,{initialFocus:"firstFocusable",isOpen:I,onClose:F,placement:w?"top-end":"bottom-end",anchorRef:k,children:q()})]})}}));
2
+ //# sourceMappingURL=OverflowTabBarItem-926b0c8a.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowTabBarItem-0aa39512.js","sources":["../../src/UNSAFE_RedwoodIcons/OverflowH/OverflowH.tsx","../../src/UNSAFE_TabBarCommon/OverflowTabBarItem.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates. All rights reserved.\n * https://www.oracle.com/contracts/docs/cloud_csa_online_v062223_us_eng.pdf?download=false&er=221886\n * @ignore\n */\n// DO NOT MODIFY THIS FILE MANUALLY!\n// This file is automatically generated based on the corresponding SVG image in\n// the packages/oraclejet-preact/resources/icons folder.\nimport { ComponentProps } from 'preact';\nimport { Icon } from '../../UNSAFE_Icon';\ntype Props = Omit<ComponentProps<typeof Icon>, 'viewBox' | 'children'>;\nconst SvgOverflowH = (props: Props) => (\n <Icon viewBox=\"0 0 24 24\" {...props}>\n <g fill=\"none\">\n <path\n d=\"M6 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"\n fill=\"currentcolor\"\n />\n </g>\n </Icon>\n);\nexport { SvgOverflowH as OverflowH };\n","import { ComponentChild, ComponentProps, createRef } from 'preact';\nimport { useCallback, useRef, useEffect } from 'preact/hooks';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport {\n NavigationListItem,\n NavigationList,\n RemovableNavigationListItem,\n FocusableHandle,\n NavigationListLinkItem\n} from '../UNSAFE_NavigationList';\nimport { OverflowH } from '../UNSAFE_RedwoodIcons/OverflowH';\nimport { useTabBarContext } from './useTabBarContext';\nimport { Dropdown } from '../UNSAFE_Dropdown';\nimport { Sheet } from '../UNSAFE_Sheet';\nimport { BaseTabBarItem } from './BaseTabBarItem';\nimport { styles } from './themes/OverflowTabBarItemStyles.css';\nimport { TabBarItem } from './TabBarItem';\n\nexport type OverflowSelectionDetail<K> = {\n value: K;\n};\n\nexport type CloseDetail = {\n /**\n * dismissed represents dismissing the DropDown\n */\n reason: 'dismissed' | 'itemAction' | 'outsideMousedown';\n};\n\nexport type Item<K extends string | number> = Omit<\n ComponentProps<typeof TabBarItem<K>>,\n 'testId' | 'aria-controls'\n> & {\n isRemovable?: boolean;\n /**\n * Accepts the tabpanel element's ID associated with the tab item\n **/\n tabPanelId?: string;\n /**\n * Sets the URL that the hyperlink points to.\n */\n href?: string;\n};\n\nexport type OverflowTabBarItemProps<K extends string | number> = {\n /**\n * Key of the TabBarItem\n */\n overflowItemKey: K;\n /**\n * Whether to open the popup\n */\n isOpen: boolean;\n /**\n * Property that triggers a callback when DropDown is supposed to be closed.\n */\n onClose?: (detail: CloseDetail) => void;\n /**\n * The icon of the OverflowTabBarItem\n */\n icon?: ComponentChild;\n /**\n * The content to be rendered inside the Badge component.\n */\n badge?: string;\n /**\n * An array of data used by NavigationList to render individual overflow items.\n */\n overflowItems?: Item<K>[];\n};\n\n/**\n * An OverflowTabBarItem renders TabBarItems in a device appropriate popup. OverflowTabBarItem is used internally in an OverflowTabBar.\n */\n\nexport function OverflowTabBarItem<K extends string | number>({\n overflowItemKey,\n icon,\n badge,\n overflowItems,\n isOpen,\n onClose\n}: OverflowTabBarItemProps<K>) {\n const { selection, showFocusRing, isEdgeBottom, onSelect, onRemove, layout } = useTabBarContext();\n\n const isPointerSelection = useRef<boolean>(false);\n\n // Reset pointer selection flag when the popup closes so keyboard navigation\n // restores focus-visible on the overflow trigger.\n useEffect(() => {\n if (!isOpen) {\n isPointerSelection.current = false;\n }\n }, [isOpen]);\n\n const overflowTabBarItemRef = useRef<HTMLDivElement>(null);\n const navigationListRef = createRef<FocusableHandle>();\n\n const handleSelectionChange = useCallback<\n Required<ComponentProps<typeof NavigationList>>['onSelectionChange']\n >(\n (detail: { value: string | number; reason?: 'pointer' | 'keyboard' }) => {\n if (detail.reason === 'pointer') {\n isPointerSelection.current = true;\n }\n onSelect?.({ value: detail.value });\n onClose?.({ reason: 'itemAction' });\n },\n [onSelect, onClose]\n );\n\n const handleDropdownClose = useCallback(\n (e: CloseDetail) => {\n onClose?.({ reason: e.reason });\n },\n [onClose]\n );\n\n const handleSheetClose = useCallback(() => {\n onClose?.({ reason: 'dismissed' });\n }, [onClose]);\n\n //When NavigationList steals focus the app resets it. Not always would it be reset to\n //parent of OverflowTabBarItem. Though currentKey would be correct, but focusRing would would not be visible\n //Hence we check for isPointerSelection.current\n\n const focusRingRequirement = showFocusRing && !isPointerSelection.current && !getIsMobile();\n\n const overflowContainsKey = (searchKey: K) => {\n return overflowItems?.find((item) => item.itemKey === searchKey) != null;\n };\n\n const currentPanelId = overflowItems?.find((item) => item.itemKey === selection)?.tabPanelId;\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const isSelected = selection !== undefined && overflowContainsKey(selection as K);\n\n //instead of specifying flex: '1 0 auto' in cssProps var\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const flexDimensions = styleInterpolations({\n flex: layout === 'stretch' ? '1 0 auto' : '0 0 auto'\n });\n\n const navContainerClasses = classNames([styles.navContainerBase]);\n\n const navContainerRef = useRef<HTMLDivElement>(null);\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n navigationListRef.current?.focus();\n }\n },\n [navigationListRef]\n );\n const getNavigationList = useCallback(() => {\n return (\n <div onKeyDown={handleKeyDown} tabIndex={0} ref={navContainerRef} class={navContainerClasses}>\n <NavigationList\n ref={navigationListRef}\n selection={selection}\n onSelectionChange={handleSelectionChange}\n onRemove={onRemove}>\n {overflowItems?.map((item) =>\n item.href != null ? (\n <NavigationListLinkItem\n href={item.href}\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n ) : item.isRemovable ? (\n <RemovableNavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n ) : (\n <NavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n )\n )}\n </NavigationList>\n </div>\n );\n }, [\n handleKeyDown,\n navContainerClasses,\n navigationListRef,\n selection,\n handleSelectionChange,\n onRemove,\n overflowItems\n ]);\n\n return (\n <>\n {overflowItems && overflowItems.length > 0 && (\n <div ref={overflowTabBarItemRef} style={flexDimensions}>\n <BaseTabBarItem\n aria-controls={currentPanelId}\n itemKey={overflowItemKey}\n label={translations.overflowItemLabel()}\n icon={icon ? icon : <OverflowH />}\n badge={badge}\n showFocusRingOverride={focusRingRequirement}\n selectionOverride={isSelected}\n displayOverride={'icons'}\n aria-haspopup={true}\n />\n </div>\n )}\n {getIsMobile() ? (\n <Sheet isOpen={isOpen} onClose={handleSheetClose} initialFocus=\"firstFocusable\">\n {getNavigationList()}\n </Sheet>\n ) : (\n <Dropdown\n initialFocus=\"firstFocusable\"\n isOpen={isOpen}\n onClose={handleDropdownClose}\n placement={isEdgeBottom ? 'top-end' : 'bottom-end'}\n anchorRef={overflowTabBarItemRef}>\n {getNavigationList()}\n </Dropdown>\n )}\n </>\n );\n}\n\nconst getIsMobile = () => {\n const { deviceRenderMode } = getClientHints();\n return deviceRenderMode === 'phone';\n};\n"],"names":["SvgOverflowH","props","_jsx","jsx","Icon","viewBox","children","fill","d","getIsMobile","deviceRenderMode","getClientHints","overflowItemKey","icon","badge","overflowItems","isOpen","onClose","selection","showFocusRing","isEdgeBottom","onSelect","onRemove","layout","useTabBarContext","isPointerSelection","useRef","useEffect","current","overflowTabBarItemRef","navigationListRef","createRef","handleSelectionChange","useCallback","detail","reason","value","handleDropdownClose","e","handleSheetClose","focusRingRequirement","currentPanelId","find","item","itemKey","tabPanelId","translations","useTranslationBundle","isSelected","undefined","searchKey","flexDimensions","mergeInterpolations","Object","values","flexitemInterpolations","styleInterpolations","flex","navContainerClasses","classNames","styles","navContainerBase","navContainerRef","handleKeyDown","event","key","preventDefault","focus","getNavigationList","onKeyDown","tabIndex","ref","class","NavigationList","onSelectionChange","map","href","NavigationListLinkItem","label","metadata","severity","isRemovable","RemovableNavigationListItem","NavigationListItem","_jsxs","jsxs","_Fragment","Fragment","length","style","BaseTabBarItem","overflowItemLabel","OverflowH","showFocusRingOverride","selectionOverride","displayOverride","Sheet","initialFocus","Dropdown","placement","anchorRef"],"mappings":"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"}
1
+ {"version":3,"file":"OverflowTabBarItem-926b0c8a.js","sources":["../../src/UNSAFE_RedwoodIcons/OverflowH/OverflowH.tsx","../../src/UNSAFE_TabBarCommon/OverflowTabBarItem.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates. All rights reserved.\n * https://www.oracle.com/contracts/docs/cloud_csa_online_v062223_us_eng.pdf?download=false&er=221886\n * @ignore\n */\n// DO NOT MODIFY THIS FILE MANUALLY!\n// This file is automatically generated based on the corresponding SVG image in\n// the packages/oraclejet-preact/resources/icons folder.\nimport { ComponentProps } from 'preact';\nimport { Icon } from '../../UNSAFE_Icon';\ntype Props = Omit<ComponentProps<typeof Icon>, 'viewBox' | 'children'>;\nconst SvgOverflowH = (props: Props) => (\n <Icon viewBox=\"0 0 24 24\" {...props}>\n <g fill=\"none\">\n <path\n d=\"M6 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"\n fill=\"currentcolor\"\n />\n </g>\n </Icon>\n);\nexport { SvgOverflowH as OverflowH };\n","import { ComponentChild, ComponentProps, createRef } from 'preact';\nimport { useCallback, useRef, useEffect } from 'preact/hooks';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport {\n NavigationListItem,\n NavigationList,\n RemovableNavigationListItem,\n FocusableHandle,\n NavigationListLinkItem\n} from '../UNSAFE_NavigationList';\nimport { OverflowH } from '../UNSAFE_RedwoodIcons/OverflowH';\nimport { useTabBarContext } from './useTabBarContext';\nimport { Dropdown } from '../UNSAFE_Dropdown';\nimport { Sheet } from '../UNSAFE_Sheet';\nimport { BaseTabBarItem } from './BaseTabBarItem';\nimport { styles } from './themes/OverflowTabBarItemStyles.css';\nimport { TabBarItem } from './TabBarItem';\n\nexport type OverflowSelectionDetail<K> = {\n value: K;\n};\n\nexport type CloseDetail = {\n /**\n * dismissed represents dismissing the DropDown\n */\n reason: 'dismissed' | 'itemAction' | 'outsideMousedown';\n};\n\nexport type Item<K extends string | number> = Omit<\n ComponentProps<typeof TabBarItem<K>>,\n 'testId' | 'aria-controls'\n> & {\n isRemovable?: boolean;\n /**\n * Accepts the tabpanel element's ID associated with the tab item\n **/\n tabPanelId?: string;\n /**\n * Sets the URL that the hyperlink points to.\n */\n href?: string;\n};\n\nexport type OverflowTabBarItemProps<K extends string | number> = {\n /**\n * Key of the TabBarItem\n */\n overflowItemKey: K;\n /**\n * Whether to open the popup\n */\n isOpen: boolean;\n /**\n * Property that triggers a callback when DropDown is supposed to be closed.\n */\n onClose?: (detail: CloseDetail) => void;\n /**\n * The icon of the OverflowTabBarItem\n */\n icon?: ComponentChild;\n /**\n * The content to be rendered inside the Badge component.\n */\n badge?: string;\n /**\n * An array of data used by NavigationList to render individual overflow items.\n */\n overflowItems?: Item<K>[];\n};\n\n/**\n * An OverflowTabBarItem renders TabBarItems in a device appropriate popup. OverflowTabBarItem is used internally in an OverflowTabBar.\n */\n\nexport function OverflowTabBarItem<K extends string | number>({\n overflowItemKey,\n icon,\n badge,\n overflowItems,\n isOpen,\n onClose\n}: OverflowTabBarItemProps<K>) {\n const { selection, showFocusRing, isEdgeBottom, onSelect, onRemove, layout } = useTabBarContext();\n\n const isPointerSelection = useRef<boolean>(false);\n\n // Reset pointer selection flag when the popup closes so keyboard navigation\n // restores focus-visible on the overflow trigger.\n useEffect(() => {\n if (!isOpen) {\n isPointerSelection.current = false;\n }\n }, [isOpen]);\n\n const overflowTabBarItemRef = useRef<HTMLDivElement>(null);\n const navigationListRef = createRef<FocusableHandle>();\n\n const handleSelectionChange = useCallback<\n Required<ComponentProps<typeof NavigationList>>['onSelectionChange']\n >(\n (detail: { value: string | number; reason?: 'pointer' | 'keyboard' }) => {\n if (detail.reason === 'pointer') {\n isPointerSelection.current = true;\n }\n onSelect?.({ value: detail.value });\n onClose?.({ reason: 'itemAction' });\n },\n [onSelect, onClose]\n );\n\n const handleDropdownClose = useCallback(\n (e: CloseDetail) => {\n onClose?.({ reason: e.reason });\n },\n [onClose]\n );\n\n const handleSheetClose = useCallback(() => {\n onClose?.({ reason: 'dismissed' });\n }, [onClose]);\n\n //When NavigationList steals focus the app resets it. Not always would it be reset to\n //parent of OverflowTabBarItem. Though currentKey would be correct, but focusRing would would not be visible\n //Hence we check for isPointerSelection.current\n\n const focusRingRequirement = showFocusRing && !isPointerSelection.current && !getIsMobile();\n\n const overflowContainsKey = (searchKey: K) => {\n return overflowItems?.find((item) => item.itemKey === searchKey) != null;\n };\n\n const currentPanelId = overflowItems?.find((item) => item.itemKey === selection)?.tabPanelId;\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const isSelected = selection !== undefined && overflowContainsKey(selection as K);\n\n //instead of specifying flex: '1 0 auto' in cssProps var\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const flexDimensions = styleInterpolations({\n flex: layout === 'stretch' ? '1 0 auto' : '0 0 auto'\n });\n\n const navContainerClasses = classNames([styles.navContainerBase]);\n\n const navContainerRef = useRef<HTMLDivElement>(null);\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n navigationListRef.current?.focus();\n }\n },\n [navigationListRef]\n );\n const getNavigationList = useCallback(() => {\n return (\n <div onKeyDown={handleKeyDown} tabIndex={0} ref={navContainerRef} class={navContainerClasses}>\n <NavigationList\n ref={navigationListRef}\n selection={selection}\n onSelectionChange={handleSelectionChange}\n onRemove={onRemove}>\n {overflowItems?.map((item) =>\n item.href != null ? (\n <NavigationListLinkItem\n href={item.href}\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n ) : item.isRemovable ? (\n <RemovableNavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n ) : (\n <NavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n )\n )}\n </NavigationList>\n </div>\n );\n }, [\n handleKeyDown,\n navContainerClasses,\n navigationListRef,\n selection,\n handleSelectionChange,\n onRemove,\n overflowItems\n ]);\n\n return (\n <>\n {overflowItems && overflowItems.length > 0 && (\n <div ref={overflowTabBarItemRef} style={flexDimensions}>\n <BaseTabBarItem\n aria-controls={currentPanelId}\n itemKey={overflowItemKey}\n label={translations.overflowItemLabel()}\n icon={icon ? icon : <OverflowH />}\n badge={badge}\n showFocusRingOverride={focusRingRequirement}\n selectionOverride={isSelected}\n displayOverride={'icons'}\n aria-haspopup={true}\n />\n </div>\n )}\n {getIsMobile() ? (\n <Sheet isOpen={isOpen} onClose={handleSheetClose} initialFocus=\"firstFocusable\">\n {getNavigationList()}\n </Sheet>\n ) : (\n <Dropdown\n initialFocus=\"firstFocusable\"\n isOpen={isOpen}\n onClose={handleDropdownClose}\n placement={isEdgeBottom ? 'top-end' : 'bottom-end'}\n anchorRef={overflowTabBarItemRef}>\n {getNavigationList()}\n </Dropdown>\n )}\n </>\n );\n}\n\nconst getIsMobile = () => {\n const { deviceRenderMode } = getClientHints();\n return deviceRenderMode === 'phone';\n};\n"],"names":["SvgOverflowH","props","_jsx","jsx","Icon","viewBox","children","fill","d","getIsMobile","deviceRenderMode","getClientHints","overflowItemKey","icon","badge","overflowItems","isOpen","onClose","selection","showFocusRing","isEdgeBottom","onSelect","onRemove","layout","useTabBarContext","isPointerSelection","useRef","useEffect","current","overflowTabBarItemRef","navigationListRef","createRef","handleSelectionChange","useCallback","detail","reason","value","handleDropdownClose","e","handleSheetClose","focusRingRequirement","currentPanelId","find","item","itemKey","tabPanelId","translations","useTranslationBundle","isSelected","undefined","searchKey","flexDimensions","mergeInterpolations","Object","values","flexitemInterpolations","styleInterpolations","flex","navContainerClasses","classNames","styles","navContainerBase","navContainerRef","handleKeyDown","event","key","preventDefault","focus","getNavigationList","onKeyDown","tabIndex","ref","class","NavigationList","onSelectionChange","map","href","NavigationListLinkItem","label","metadata","severity","isRemovable","RemovableNavigationListItem","NavigationListItem","_jsxs","jsxs","_Fragment","Fragment","length","style","BaseTabBarItem","overflowItemLabel","OverflowH","showFocusRingOverride","selectionOverride","displayOverride","Sheet","initialFocus","Dropdown","placement","anchorRef"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- define(['exports', './BaseCardView-b8119561', 'preact/jsx-runtime', 'preact', 'preact/compat', 'preact/hooks', './mergeProps-bcfa6a92', './collectionUtils-77dc5fa1', './keys-4755c121', './clientHints-6d361eaa', './Selector-b38f6c0c', './BaseSelector-8252d4fc', './useActive-bb5dc069', './useToggle-a29f97af', './useFocus-4194fc59', './useTestId-f4240cbd', './LayerHost-0b288129', './index-055933ab', './UNSAFE_Layer/themes/LayerHostStyles.css', 'css!./LayerHostStyles.styles.css', './useHover-8b8a1496', './StyledCheckbox-368fed68', './Check-40a9a3e6', './Icon-234f9eb8', './size-114c63df', './utils-9a3f9606', './themeContract.css-b6ec3943', './colorUtils-b9dc1bd1', './_curry1-df649359', './useTooltip-3a2fd217', './useTooltipControlled-6449a7e9', './useId-c9578d26', './useTouch-37489bb5', './useAnimation-d90c433f', './useComponentTheme-5aa41a8f', './logger-0f873e29', './useThemeInterpolations-cc05b0f0', './useColorScheme-097c31ff', './useScale-04a448c3', './theme-a8f3d819', './Theme-d945adae', './mergeInterpolations-9ede4cf7', './classNames-08d99695', './mergeDeepWithKey-aaab9019', './_curry3-83878f86', './_curry2-86c52b86', './_isObject-42bafc94', './useDensity-8a10fc70', './unsafeDomAccess-602c5dde', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentTheme', './hooks/UNSAFE_useTooltip/themes/TooltipContentStyles.css', 'css!./TooltipContentStyles.styles.css', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentBaseTheme.css', 'module', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentVariants.css', 'css!./TooltipContentVariants.styles.css', './vanilla-extract-recipes-createRuntimeFn.esm-d881c69a', './tooltipUtils-2bb62284', './EnvironmentProvider-403bf554', './LayerManager-426c669d', './Floating-c3558e44', './useFloating-5cb85d2b', './useUser-08901aba', './positionUtils-6e4daa31', './refUtils-77e97004', './useOutsideClick-e53a4b5a', './arrayUtils-6ee96a35', './Layer-1971eddb', './UNSAFE_Layer/themes/LayerStyles.css', 'css!./LayerStyles.styles.css', './useModal-536cb7ff', './UNSAFE_Floating/themes/redwood/FloatingTheme', './UNSAFE_Floating/themes/FloatingStyles.css', 'css!./FloatingStyles.styles.css', './UNSAFE_Floating/themes/redwood/FloatingBaseTheme.css', 'module', './UNSAFE_Floating/themes/redwood/FloatingVariants.css', './vanilla-extract-dynamic.esm-6065bbd7', './UNSAFE_Floating/themes/FloatingContract.css', './useUnsafeDomElementRef-75afb461', './UNSAFE_Icon/themes/IconStyle.css', 'css!./IconStyle.styles.css', './CheckboxOff-bf2be8d3', './CheckboxOn-0f83ba3d', './CheckboxMixed-7729bb05', './HiddenAccessible-037ef42d', 'css!./HiddenAccessibleStyles.styles.css', './UNSAFE_Checkbox/themes/CheckboxIconContract.css', './UNSAFE_Checkbox/themes/redwood/CheckboxIconTheme', './UNSAFE_Checkbox/themes/CheckboxIconStyles.css', 'css!./CheckboxIconStyles.styles.css', './UNSAFE_Checkbox/themes/redwood/CheckboxIconBaseTheme.css', 'module', './UNSAFE_Checkbox/themes/redwood/CheckboxIconVariants.css', 'css!./CheckboxIconVariants.styles.css', './TabbableModeContext-a9c97640', './useTabbableMode-0a9ef009', 'css!./StyledCheckbox.styles.css', './PRIVATE_BaseSelector/themes/SelectorStyles.css', 'css!./SelectorStyles.styles.css', './CollectionInteractionContext-0b4ed98b', './useCollectionInteractionContext-f345e8f7', './ReorderableContext-6d10a1b7', './useNavigation-4d87e7e6', './useCurrentKey-5749e7fb', './useReorderableContext-a5453bd7', './useCollectionFocusRing-ae19cd81', './useTabbableModeSet-7cea851f', './useSelection-aecb6b23', './textSelectionUtils-3022f002', 'css!./DragAndDropStyles.styles.css', 'css!./ReorderableItemStyles.styles.css', './LoadMoreCollection-895f1ed5', './Collection-121694cb', './useViewportIntersect-dbf8f6f0', './PRIVATE_BaseCardView/themes/BaseCardViewStyles.css', 'css!./BaseCardViewStyles.styles.css', './tabbableUtils-f95361a6', './head-9cb1a3da', './_arity-5a5f5f71', './_isArray-32602db6', './_isString-d0ada3cb', './useResizeObserver-25032462', './useAddBusyState-8ed5cc58', './BusyStateContext-ab2c549a', './useBusyStateContext-26bb2acb', './FocusTrap-038b32c3', './FocusTracker-90de4e7f', './PRIVATE_FocusTracker/themes/FocusTrackerStyles.css', 'css!./FocusTrackerStyles.styles.css', './useReorderableItem-7b4b2c3d', './useTranslationBundle-e4dd341e', './dndUtils-9d9ccdc5', './hooks/PRIVATE_useReorderable/themes/ReorderableItemStyles.css', './Grid-caac1c86', './grid-767b4587', './boxalignment-8d80de7e', 'css!./boxalignment.styles.css', './vanilla-extract-sprinkles-createRuntimeSprinkles.esm-84d30764', 'css!./GridStyles.styles.css', './Flex-4b81b412', './dimensions-95c0c920', './flexbox-8521f6aa', 'css!./flexbox.styles.css', './flexitem-5db48325', 'css!./flexitem.styles.css', 'css!./FlexStyles.styles.css', './PRIVATE_BaseCardView/themes/BaseCardViewContract.css', './Skeleton-3e52c94a', './borders-e15a6927', './UNSAFE_Skeleton/themes/redwood/SkeletonTheme', './UNSAFE_Skeleton/themes/SkeletonStyles.css', 'css!./SkeletonStyles.styles.css', './UNSAFE_Skeleton/themes/redwood/SkeletonBaseTheme.css', 'module', './UNSAFE_Skeleton/themes/redwood/SkeletonVariants.css', 'module'], (function(e,s,t,o,c,a,l,n,r,d,i,b,S,h,y,m,u,C,f,F,T,k,x,_,A,U,g,p,E,w,I,N,B,V,R,P,v,L,M,H,D,O,z,j,G,K,X,W,q,J,Q,Y,Z,$,ee,se,te,oe,ce,ae,le,ne,re,de,ie,be,Se,he,ye,me,ue,Ce,fe,Fe,Te,ke,xe,_e,Ae,Ue,ge,pe,Ee,we,Ie,Ne,Be,Ve,Re,Pe,ve,Le,Me,He,De,Oe,ze,je,Ge,Ke,Xe,We,qe,Je,Qe,Ye,Ze,$e,es,ss,ts,os,cs,as,ls,ns,rs,ds,is,bs,Ss,hs,ys,ms,us,Cs,fs,Fs,Ts,ks,xs,_s,As,Us,gs,ps,Es,ws,Is,Ns,Bs,Vs,Rs,Ps,vs,Ls,Ms,Hs,Ds,Os,zs,js,Gs,Ks,Xs,Ws,qs){"use strict";e.BaseCardView=s.BaseCardView,e.getColCount=s.getColCount,e.gutterSizeToPX=s.gutterSizeToPX,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ define(['exports', './BaseCardView-16fda4c3', 'preact/jsx-runtime', 'preact', 'preact/compat', 'preact/hooks', './mergeProps-bcfa6a92', './collectionUtils-77dc5fa1', './keys-4755c121', './clientHints-6d361eaa', './Selector-b38f6c0c', './BaseSelector-8252d4fc', './useActive-bb5dc069', './useToggle-a29f97af', './useFocus-4194fc59', './useTestId-f4240cbd', './LayerHost-0b288129', './index-055933ab', './UNSAFE_Layer/themes/LayerHostStyles.css', 'css!./LayerHostStyles.styles.css', './useHover-8b8a1496', './StyledCheckbox-368fed68', './Check-40a9a3e6', './Icon-234f9eb8', './size-114c63df', './utils-9a3f9606', './themeContract.css-b6ec3943', './colorUtils-b9dc1bd1', './_curry1-df649359', './useTooltip-3a2fd217', './useTooltipControlled-6449a7e9', './useId-c9578d26', './useTouch-37489bb5', './useAnimation-d90c433f', './useComponentTheme-5aa41a8f', './logger-0f873e29', './useThemeInterpolations-cc05b0f0', './useColorScheme-097c31ff', './useScale-04a448c3', './theme-a8f3d819', './Theme-d945adae', './mergeInterpolations-9ede4cf7', './classNames-08d99695', './mergeDeepWithKey-aaab9019', './_curry3-83878f86', './_curry2-86c52b86', './_isObject-42bafc94', './useDensity-8a10fc70', './unsafeDomAccess-602c5dde', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentTheme', './hooks/UNSAFE_useTooltip/themes/TooltipContentStyles.css', 'css!./TooltipContentStyles.styles.css', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentBaseTheme.css', 'module', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentVariants.css', 'css!./TooltipContentVariants.styles.css', './vanilla-extract-recipes-createRuntimeFn.esm-d881c69a', './tooltipUtils-2bb62284', './EnvironmentProvider-403bf554', './LayerManager-426c669d', './Floating-c3558e44', './useFloating-5cb85d2b', './useUser-08901aba', './positionUtils-6e4daa31', './refUtils-77e97004', './useOutsideClick-e53a4b5a', './arrayUtils-6ee96a35', './Layer-1971eddb', './UNSAFE_Layer/themes/LayerStyles.css', 'css!./LayerStyles.styles.css', './useModal-536cb7ff', './UNSAFE_Floating/themes/redwood/FloatingTheme', './UNSAFE_Floating/themes/FloatingStyles.css', 'css!./FloatingStyles.styles.css', './UNSAFE_Floating/themes/redwood/FloatingBaseTheme.css', 'module', './UNSAFE_Floating/themes/redwood/FloatingVariants.css', './vanilla-extract-dynamic.esm-6065bbd7', './UNSAFE_Floating/themes/FloatingContract.css', './useUnsafeDomElementRef-75afb461', './UNSAFE_Icon/themes/IconStyle.css', 'css!./IconStyle.styles.css', './CheckboxOff-bf2be8d3', './CheckboxOn-0f83ba3d', './CheckboxMixed-7729bb05', './HiddenAccessible-037ef42d', 'css!./HiddenAccessibleStyles.styles.css', './UNSAFE_Checkbox/themes/CheckboxIconContract.css', './UNSAFE_Checkbox/themes/redwood/CheckboxIconTheme', './UNSAFE_Checkbox/themes/CheckboxIconStyles.css', 'css!./CheckboxIconStyles.styles.css', './UNSAFE_Checkbox/themes/redwood/CheckboxIconBaseTheme.css', 'module', './UNSAFE_Checkbox/themes/redwood/CheckboxIconVariants.css', 'css!./CheckboxIconVariants.styles.css', './TabbableModeContext-a9c97640', './useTabbableMode-0a9ef009', 'css!./StyledCheckbox.styles.css', './PRIVATE_BaseSelector/themes/SelectorStyles.css', 'css!./SelectorStyles.styles.css', './CollectionInteractionContext-0b4ed98b', './useCollectionInteractionContext-f345e8f7', './ReorderableContext-6d10a1b7', './useNavigation-4d87e7e6', './useCurrentKey-5749e7fb', './useReorderableContext-a5453bd7', './useCollectionFocusRing-ae19cd81', './useTabbableModeSet-7cea851f', './useSelection-aecb6b23', './textSelectionUtils-3022f002', 'css!./DragAndDropStyles.styles.css', 'css!./ReorderableItemStyles.styles.css', './LoadMoreCollection-895f1ed5', './Collection-121694cb', './useViewportIntersect-dbf8f6f0', './PRIVATE_BaseCardView/themes/BaseCardViewStyles.css', 'css!./BaseCardViewStyles.styles.css', './tabbableUtils-f95361a6', './head-9cb1a3da', './_arity-5a5f5f71', './_isArray-32602db6', './_isString-d0ada3cb', './useResizeObserver-25032462', './useAddBusyState-8ed5cc58', './BusyStateContext-ab2c549a', './useBusyStateContext-26bb2acb', './FocusTrap-038b32c3', './FocusTracker-90de4e7f', './PRIVATE_FocusTracker/themes/FocusTrackerStyles.css', 'css!./FocusTrackerStyles.styles.css', './useReorderableItem-7b4b2c3d', './useTranslationBundle-e4dd341e', './dndUtils-9d9ccdc5', './hooks/PRIVATE_useReorderable/themes/ReorderableItemStyles.css', './Grid-caac1c86', './grid-767b4587', './boxalignment-8d80de7e', 'css!./boxalignment.styles.css', './vanilla-extract-sprinkles-createRuntimeSprinkles.esm-84d30764', 'css!./GridStyles.styles.css', './Flex-4b81b412', './dimensions-95c0c920', './flexbox-8521f6aa', 'css!./flexbox.styles.css', './flexitem-5db48325', 'css!./flexitem.styles.css', 'css!./FlexStyles.styles.css', './PRIVATE_BaseCardView/themes/BaseCardViewContract.css', './Skeleton-3e52c94a', './borders-e15a6927', './UNSAFE_Skeleton/themes/redwood/SkeletonTheme', './UNSAFE_Skeleton/themes/SkeletonStyles.css', 'css!./SkeletonStyles.styles.css', './UNSAFE_Skeleton/themes/redwood/SkeletonBaseTheme.css', 'module', './UNSAFE_Skeleton/themes/redwood/SkeletonVariants.css', 'module'], (function(e,s,t,o,c,a,l,n,d,r,i,b,S,h,y,m,u,C,f,F,T,k,x,_,A,U,g,p,E,w,I,N,B,V,R,P,v,L,M,H,D,O,z,j,G,K,X,W,q,J,Q,Y,Z,$,ee,se,te,oe,ce,ae,le,ne,de,re,ie,be,Se,he,ye,me,ue,Ce,fe,Fe,Te,ke,xe,_e,Ae,Ue,ge,pe,Ee,we,Ie,Ne,Be,Ve,Re,Pe,ve,Le,Me,He,De,Oe,ze,je,Ge,Ke,Xe,We,qe,Je,Qe,Ye,Ze,$e,es,ss,ts,os,cs,as,ls,ns,ds,rs,is,bs,Ss,hs,ys,ms,us,Cs,fs,Fs,Ts,ks,xs,_s,As,Us,gs,ps,Es,ws,Is,Ns,Bs,Vs,Rs,Ps,vs,Ls,Ms,Hs,Ds,Os,zs,js,Gs,Ks,Xs,Ws,qs){"use strict";e.BaseCardView=s.BaseCardView,e.getColCount=s.getColCount,e.gutterSizeToPX=s.gutterSizeToPX,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=PRIVATE_BaseCardView.js.map
@@ -1,2 +1,2 @@
1
- define(['exports', './Chart-57965de4', 'preact/jsx-runtime', './PRIVATE_Chart/themes/ChartStyles.css', 'css!./ChartStyles.styles.css', './TrackResizeContainer-d8fa612c', 'preact/hooks', './useSize-165f7da4', './useResizeObserver-25032462', './useAddBusyState-8ed5cc58', './BusyStateContext-ab2c549a', 'preact', './useBusyStateContext-26bb2acb', './unsafeDomAccess-602c5dde', './size-114c63df', './utils-9a3f9606', './themeContract.css-b6ec3943', './colorUtils-b9dc1bd1', './_curry1-df649359', './UNSAFE_visErrors', './useTextDimensions-f254e8f5', './clientHints-6d361eaa', './useCssVars-3194b2f6', './useUser-08901aba', './LayerHost-0b288129', './index-055933ab', 'preact/compat', './UNSAFE_Layer/themes/LayerHostStyles.css', 'css!./LayerHostStyles.styles.css', './useTheme-da27e1d1', './useColorScheme-097c31ff', './useScale-04a448c3', './ReferenceLineArea-450530dd', './PRIVATE_PlotArea/themes/PlotAreaStyles.css', 'css!./PlotAreaStyles.styles.css', './hooks/PRIVATE_useVisDnd/themes/VisDndStyles.css', 'css!./VisDndStyles.styles.css', './classNames-08d99695', './utils-8bf50f08', './getLocale-ae79e654', './stringUtils-4ffd9d59', './labelUtils-c05e2f28', './textUtils-ae0a246c', './accUtils-7e057eef', './utils-cd60c9d4', './datatipUtils-6846028e', './clientUtils-df9caee0', './dimensionUtils-61978138', './scale-2f3251e1', './lineUtils-3b56374d', './useId-c9578d26', './Axis-ea0bc4f9', './PRIVATE_Axis/themes/AxisStyles.css', 'css!./AxisStyles.styles.css', './MultilineText-a4fcc3cb', './PRIVATE_Axis/themes/redwood/AxisTheme', './PRIVATE_Axis/themes/redwood/AxisBaseTheme.css', 'module', './PRIVATE_Axis/themes/redwood/AxisVariants.css', './vanilla-extract-recipes-createRuntimeFn.esm-d881c69a', './useComponentTheme-5aa41a8f', './logger-0f873e29', './useChartViewport-ef746160', './eventsUtils-1f5dc91a', './usePinch-fc8ed928', './usePointerGesture-1c1dd806', './mergeProps-bcfa6a92', './useChartNav-0cd4f614', './layoutUtils-517a546d', './useVisHover-28319fef', './useSelectDrill-441c90a9', './useChartDataCursor-670b8448', './hooks/PRIVATE_useChartDataCursor/themes/DataCursorStyles.css', 'css!./DataCursorStyles.styles.css', './Marker-cf672e83', 'css!./SvgShapesStyles.styles.css', './useChartDatatip-73405a48', './useDatatip-40f28485', './Layer-1971eddb', './UNSAFE_Layer/themes/LayerStyles.css', 'css!./LayerStyles.styles.css', './useThemeInterpolations-cc05b0f0', './theme-a8f3d819', './Theme-d945adae', './mergeInterpolations-9ede4cf7', './mergeDeepWithKey-aaab9019', './_curry3-83878f86', './_curry2-86c52b86', './_isObject-42bafc94', './useDensity-8a10fc70', './Floating-c3558e44', './useFloating-5cb85d2b', './positionUtils-6e4daa31', './refUtils-77e97004', './useOutsideClick-e53a4b5a', './arrayUtils-6ee96a35', './useModal-536cb7ff', './UNSAFE_Floating/themes/redwood/FloatingTheme', './UNSAFE_Floating/themes/FloatingStyles.css', 'css!./FloatingStyles.styles.css', './UNSAFE_Floating/themes/redwood/FloatingBaseTheme.css', 'module', './UNSAFE_Floating/themes/redwood/FloatingVariants.css', './vanilla-extract-dynamic.esm-6065bbd7', './UNSAFE_Floating/themes/FloatingContract.css', './useUnsafeDomElementRef-75afb461', './hooks/PRIVATE_useDatatip/themes/useDatatip.css', 'css!./useDatatip.styles.css', './VisTabularDatatip-93d56ae8', './PRIVATE_VisTabularDatatip/themes/VisTabularDatatipStyles.css', 'css!./VisTabularDatatipStyles.styles.css', './colorUtils-1c8d0c00', './useChartDrill-d320dd10', './useVisDrill-7dce7e9a', './useDoubleTap-b6bf5458', './clientUtils-f1eea2db', './useSelection-a8ec14e8', './BaseButton-5a0ad529', './useHover-8b8a1496', './useToggle-a29f97af', './useActive-bb5dc069', './dimensions-95c0c920', './UNSAFE_BaseButton/themes/redwood/BaseButtonTheme', './UNSAFE_BaseButton/themes/BaseButtonStyles.css', 'css!./BaseButtonStyles.styles.css', './UNSAFE_BaseButton/themes/redwood/BaseButtonVariants.css', 'module', './BareButton-d02b4870', './useBareButton-0afa84c2', './usePress-949a0d03', './usePressClick-b5bf4243', './TabbableModeContext-a9c97640', './useTabbableMode-0a9ef009', './buttonUtils-cbbb0130', './id-c70ab33c', './useTestId-f4240cbd', './Text-31cabc49', './UNSAFE_Text/themes/TextStyles.css', 'css!./TextStyles.styles.css', './useTranslationBundle-e4dd341e', './hooks/PRIVATE_useVisSelection/themes/ClearSelection.css', 'css!./ClearSelection.styles.css', './cssUtils-af3bf5fd', './useChartContextMenu-abadeabc', './useContextMenu-67972d45', './Menu-1b8fefc5', './Sheet-1d02491d', './Modal-95bf034f', './UNSAFE_Modal/themes/ModalStyles.css', 'css!./ModalStyles.styles.css', './tabbableUtils-f95361a6', './head-9cb1a3da', './_arity-5a5f5f71', './_isArray-32602db6', './_isString-d0ada3cb', './popupUtils-d42db8bf', './WindowOverlay-11d88211', './UNSAFE_WindowOverlay/themes/WindowOverlayStyles.css', 'css!./WindowOverlayStyles.styles.css', './UNSAFE_WindowOverlay/themes/WindowOverlayContract.css', './UNSAFE_WindowOverlay/themes/redwood/WindowOverlayTheme', './UNSAFE_WindowOverlay/themes/redwood/WindowOverlayBaseTheme.css', 'module', './UNSAFE_WindowOverlay/themes/redwood/WindowOverlayVariants.css', './UNSAFE_Sheet/themes/SheetStyles.css', 'css!./SheetStyles.styles.css', './useAnimationStatus-0cae3dff', './useAnimation-d90c433f', './animationUtils-716a9aa6', './Dropdown-7eca9554', './keyboardUtils-fb6219eb', './usePopupAnimation-dc282b02', './popupAnimationUtils-49b93365', './CollectionInteractionContext-0b4ed98b', './UNSAFE_Dropdown/themes/dropdownStyles.css', 'css!./dropdownStyles.styles.css', './useOutsideMousedown-cb88da60', './useEffectEvent-6aa4d559', './menuUtils-8e42385f', './MenuItem-85e4ffdc', './flexitem-5db48325', 'css!./flexitem.styles.css', './vanilla-extract-sprinkles-createRuntimeSprinkles.esm-84d30764', './useInteractionStyle-15a2bdd0', './UNSAFE_Menu/themes/redwood/MenuItemTheme', './UNSAFE_Menu/themes/MenuItemStyles.css', 'css!./MenuItemStyles.styles.css', './UNSAFE_Menu/themes/redwood/MenuItemBaseTheme.css', 'module', './UNSAFE_Menu/themes/redwood/MenuItemVariants.css', 'css!./MenuItemVariants.styles.css', './UNSAFE_Menu/themes/MenuStyles.css', 'css!./MenuStyles.styles.css', './UNSAFE_Menu/themes/DropdownMenuStyles.css', 'css!./DropdownMenuStyles.styles.css', './Flex-4b81b412', './boxalignment-8d80de7e', 'css!./boxalignment.styles.css', './flexbox-8521f6aa', 'css!./flexbox.styles.css', 'css!./FlexStyles.styles.css', './Skeleton-3e52c94a', './borders-e15a6927', './UNSAFE_Skeleton/themes/redwood/SkeletonTheme', './UNSAFE_Skeleton/themes/SkeletonStyles.css', 'css!./SkeletonStyles.styles.css', './UNSAFE_Skeleton/themes/redwood/SkeletonBaseTheme.css', 'module', './UNSAFE_Skeleton/themes/redwood/SkeletonVariants.css', './UNSAFE_Menu/themes/MenuSkeletonStyles.css', 'css!./MenuSkeletonStyles.styles.css', './LiveRegion-dbefb95b', 'css!./LiveRegionStyles.styles.css', 'css!./TooltipContentStyles.styles.css', 'module', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentVariants.css', 'css!./TooltipContentVariants.styles.css', './tooltipUtils-2bb62284', './EnvironmentProvider-403bf554', './LayerManager-426c669d', 'css!./IconStyle.styles.css', './SelectMenuGroupContext-67f24a8f', './UNSAFE_Separator/themes/SeparatorStyles.css', 'css!./SeparatorStyles.styles.css', 'css!./MenuSeparatorStyles.styles.css', 'module', './UNSAFE_Menu/themes/redwood/MenuSeparatorVariants.css', './useContextMenuGesture-750ef2c6', './textSelectionUtils-3022f002', './useChartDnd-cee046fb', './utils-bd8f2a3c', './useDnd-33ec1cdf', './useTooltip-3a2fd217', './useTooltipControlled-6449a7e9', './useFocus-4194fc59', './useTouch-37489bb5', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentTheme', './hooks/UNSAFE_useTooltip/themes/TooltipContentStyles.css', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentBaseTheme.css', './useChartMarquee-3865426f', './useVisDragModeControls-5f059d09', './Button-1187534f', './Icon-234f9eb8', './UNSAFE_Icon/themes/IconStyle.css', './Move-4c330593', './hooks/PRIVATE_useVisDragModeControls/themes/useVisDragModeControls.css', 'css!./useVisDragModeControls.styles.css', './ZoomAlt-ce20682b', './ButtonSetSingle-bf1b8c68', './useButtonSetContext-dffdaea3', './ButtonSet-9f26cc51', './UNSAFE_ButtonSet/themes/ButtonSetStyles.css', 'css!./ButtonSetStyles.styles.css', './ButtonSetPositionContext-fd98cc11', './toggleButtonUtils-0ebe4c56', './useRovingTabIndexContainer-9aa2fbcf', './ButtonSetItem-4b29107a', './ButtonSetButton-fa0256aa', './ToggleButtonLabel-87364773', './ButtonLabelLayout-6464870c', './useButtonLabelLayoutTheme-a30f5d8a', './UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutTheme', './UNSAFE_ButtonLabelLayout/themes/ButtonLabelLayoutStyles.css', 'css!./ButtonLabelLayoutStyles.styles.css', './UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutBaseTheme.css', 'module', './UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutVariants.css', 'css!./ButtonLabelLayoutVariants.styles.css', './HiddenAccessible-037ef42d', 'css!./HiddenAccessibleStyles.styles.css', './ButtonSetIconButton-9010f20c', './useButtonSetPositionContext-b8534679', './IconToggleButton-0ab34b44', './useToggleAction-59741954', './hooks/PRIVATE_useChartMarquee/themes/useChartMarquee.css', 'css!./useChartMarquee.styles.css', './useVisTouchResponse-88a7bb09', './useOverviewContext-dd00c487', './OverviewSlidingWindow-c5db4da0', './PRIVATE_VisOverview/themes/VisOverview.css', 'css!./VisOverview.styles.css', './DragH-e64a0fa2', './ScrollBar-fae26188', './PRIVATE_ChartScrollBar/themes/ScrollBarStyles.css', 'css!./ScrollBarStyles.styles.css'], (function(e,s,t,o,a,l,n,c,i,r,d,u,S,y,h,m,b,f,A,T,U,B,_,E,F,p,w,C,M,N,x,V,g,v,L,I,D,k,P,R,O,W,H,q,z,j,G,K,Z,J,Q,X,Y,$,ee,se,te,oe,ae,le,ne,ce,ie,re,de,ue,Se,ye,he,me,be,fe,Ae,Te,Ue,Be,_e,Ee,Fe,pe,we,Ce,Me,Ne,xe,Ve,ge,ve,Le,Ie,De,ke,Pe,Re,Oe,We,He,qe,ze,je,Ge,Ke,Ze,Je,Qe,Xe,Ye,$e,es,ss,ts,os,as,ls,ns,cs,is,rs,ds,us,Ss,ys,hs,ms,bs,fs,As,Ts,Us,Bs,_s,Es,Fs,ps,ws,Cs,Ms,Ns,xs,Vs,gs,vs,Ls,Is,Ds,ks,Ps,Rs,Os,Ws,Hs,qs,zs,js,Gs,Ks,Zs,Js,Qs,Xs,Ys,$s,et,st,tt,ot,at,lt,nt,ct,it,rt,dt,ut,St,yt,ht,mt,bt,ft,At,Tt,Ut,Bt,_t,Et,Ft,pt,wt,Ct,Mt,Nt,xt,Vt,gt,vt,Lt,It,Dt,kt,Pt,Rt,Ot,Wt,Ht,qt,zt,jt,Gt,Kt,Zt,Jt,Qt,Xt,Yt,$t,eo,so,to,oo,ao,lo,no,co,io,ro,uo,So,yo,ho,mo,bo,fo,Ao,To,Uo,Bo,_o,Eo,Fo,po,wo,Co,Mo,No,xo,Vo,go,vo,Lo,Io,Do,ko,Po,Ro,Oo,Wo,Ho,qo,zo,jo,Go,Ko,Zo,Jo,Qo,Xo,Yo,$o,ea,sa,ta,oa,aa,la,na,ca,ia,ra,da,ua,Sa,ya,ha,ma){"use strict";e.Chart=s.Chart,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ define(['exports', './Chart-d9eafc7a', 'preact/jsx-runtime', './PRIVATE_Chart/themes/ChartStyles.css', 'css!./ChartStyles.styles.css', './TrackResizeContainer-d8fa612c', 'preact/hooks', './useSize-165f7da4', './useResizeObserver-25032462', './useAddBusyState-8ed5cc58', './BusyStateContext-ab2c549a', 'preact', './useBusyStateContext-26bb2acb', './unsafeDomAccess-602c5dde', './size-114c63df', './utils-9a3f9606', './themeContract.css-b6ec3943', './colorUtils-b9dc1bd1', './_curry1-df649359', './UNSAFE_visErrors', './useTextDimensions-f254e8f5', './clientHints-6d361eaa', './useCssVars-3194b2f6', './useUser-08901aba', './LayerHost-0b288129', './index-055933ab', 'preact/compat', './UNSAFE_Layer/themes/LayerHostStyles.css', 'css!./LayerHostStyles.styles.css', './useTheme-da27e1d1', './useColorScheme-097c31ff', './useScale-04a448c3', './ReferenceLineArea-450530dd', './PRIVATE_PlotArea/themes/PlotAreaStyles.css', 'css!./PlotAreaStyles.styles.css', './hooks/PRIVATE_useVisDnd/themes/VisDndStyles.css', 'css!./VisDndStyles.styles.css', './classNames-08d99695', './utils-8bf50f08', './getLocale-ae79e654', './stringUtils-4ffd9d59', './labelUtils-c05e2f28', './textUtils-ae0a246c', './accUtils-7e057eef', './utils-cd60c9d4', './datatipUtils-6846028e', './clientUtils-df9caee0', './dimensionUtils-61978138', './scale-2f3251e1', './lineUtils-3b56374d', './useId-c9578d26', './Axis-ea0bc4f9', './PRIVATE_Axis/themes/AxisStyles.css', 'css!./AxisStyles.styles.css', './MultilineText-a4fcc3cb', './PRIVATE_Axis/themes/redwood/AxisTheme', './PRIVATE_Axis/themes/redwood/AxisBaseTheme.css', 'module', './PRIVATE_Axis/themes/redwood/AxisVariants.css', './vanilla-extract-recipes-createRuntimeFn.esm-d881c69a', './useComponentTheme-5aa41a8f', './logger-0f873e29', './useChartViewport-ef746160', './eventsUtils-1f5dc91a', './usePinch-fc8ed928', './usePointerGesture-1c1dd806', './mergeProps-bcfa6a92', './useChartNav-0cd4f614', './layoutUtils-517a546d', './useVisHover-28319fef', './ScrollBar-fae26188', './PRIVATE_ChartScrollBar/themes/ScrollBarStyles.css', 'css!./ScrollBarStyles.styles.css', './useSelectDrill-441c90a9', './useChartDataCursor-670b8448', './hooks/PRIVATE_useChartDataCursor/themes/DataCursorStyles.css', 'css!./DataCursorStyles.styles.css', './Marker-cf672e83', 'css!./SvgShapesStyles.styles.css', './useChartDatatip-73405a48', './useDatatip-40f28485', './Layer-1971eddb', './UNSAFE_Layer/themes/LayerStyles.css', 'css!./LayerStyles.styles.css', './useThemeInterpolations-cc05b0f0', './theme-a8f3d819', './Theme-d945adae', './mergeInterpolations-9ede4cf7', './mergeDeepWithKey-aaab9019', './_curry3-83878f86', './_curry2-86c52b86', './_isObject-42bafc94', './useDensity-8a10fc70', './Floating-c3558e44', './useFloating-5cb85d2b', './positionUtils-6e4daa31', './refUtils-77e97004', './useOutsideClick-e53a4b5a', './arrayUtils-6ee96a35', './useModal-536cb7ff', './UNSAFE_Floating/themes/redwood/FloatingTheme', './UNSAFE_Floating/themes/FloatingStyles.css', 'css!./FloatingStyles.styles.css', './UNSAFE_Floating/themes/redwood/FloatingBaseTheme.css', 'module', './UNSAFE_Floating/themes/redwood/FloatingVariants.css', './vanilla-extract-dynamic.esm-6065bbd7', './UNSAFE_Floating/themes/FloatingContract.css', './useUnsafeDomElementRef-75afb461', './hooks/PRIVATE_useDatatip/themes/useDatatip.css', 'css!./useDatatip.styles.css', './VisTabularDatatip-93d56ae8', './PRIVATE_VisTabularDatatip/themes/VisTabularDatatipStyles.css', 'css!./VisTabularDatatipStyles.styles.css', './colorUtils-1c8d0c00', './useChartDrill-d320dd10', './useVisDrill-7dce7e9a', './useDoubleTap-b6bf5458', './clientUtils-f1eea2db', './useSelection-a8ec14e8', './BaseButton-5a0ad529', './useHover-8b8a1496', './useToggle-a29f97af', './useActive-bb5dc069', './dimensions-95c0c920', './UNSAFE_BaseButton/themes/redwood/BaseButtonTheme', './UNSAFE_BaseButton/themes/BaseButtonStyles.css', 'css!./BaseButtonStyles.styles.css', './UNSAFE_BaseButton/themes/redwood/BaseButtonVariants.css', 'module', './BareButton-d02b4870', './useBareButton-0afa84c2', './usePress-949a0d03', './usePressClick-b5bf4243', './TabbableModeContext-a9c97640', './useTabbableMode-0a9ef009', './buttonUtils-cbbb0130', './id-c70ab33c', './useTestId-f4240cbd', './Text-31cabc49', './UNSAFE_Text/themes/TextStyles.css', 'css!./TextStyles.styles.css', './useTranslationBundle-e4dd341e', './hooks/PRIVATE_useVisSelection/themes/ClearSelection.css', 'css!./ClearSelection.styles.css', './cssUtils-af3bf5fd', './useChartContextMenu-abadeabc', './useContextMenu-67972d45', './Menu-1b8fefc5', './Sheet-1d02491d', './Modal-95bf034f', './UNSAFE_Modal/themes/ModalStyles.css', 'css!./ModalStyles.styles.css', './tabbableUtils-f95361a6', './head-9cb1a3da', './_arity-5a5f5f71', './_isArray-32602db6', './_isString-d0ada3cb', './popupUtils-d42db8bf', './WindowOverlay-11d88211', './UNSAFE_WindowOverlay/themes/WindowOverlayStyles.css', 'css!./WindowOverlayStyles.styles.css', './UNSAFE_WindowOverlay/themes/WindowOverlayContract.css', './UNSAFE_WindowOverlay/themes/redwood/WindowOverlayTheme', './UNSAFE_WindowOverlay/themes/redwood/WindowOverlayBaseTheme.css', 'module', './UNSAFE_WindowOverlay/themes/redwood/WindowOverlayVariants.css', './UNSAFE_Sheet/themes/SheetStyles.css', 'css!./SheetStyles.styles.css', './useAnimationStatus-0cae3dff', './useAnimation-d90c433f', './animationUtils-716a9aa6', './Dropdown-7eca9554', './keyboardUtils-fb6219eb', './usePopupAnimation-dc282b02', './popupAnimationUtils-49b93365', './CollectionInteractionContext-0b4ed98b', './UNSAFE_Dropdown/themes/dropdownStyles.css', 'css!./dropdownStyles.styles.css', './useOutsideMousedown-cb88da60', './useEffectEvent-6aa4d559', './menuUtils-8e42385f', './MenuItem-85e4ffdc', './flexitem-5db48325', 'css!./flexitem.styles.css', './vanilla-extract-sprinkles-createRuntimeSprinkles.esm-84d30764', './useInteractionStyle-15a2bdd0', './UNSAFE_Menu/themes/redwood/MenuItemTheme', './UNSAFE_Menu/themes/MenuItemStyles.css', 'css!./MenuItemStyles.styles.css', './UNSAFE_Menu/themes/redwood/MenuItemBaseTheme.css', 'module', './UNSAFE_Menu/themes/redwood/MenuItemVariants.css', 'css!./MenuItemVariants.styles.css', './UNSAFE_Menu/themes/MenuStyles.css', 'css!./MenuStyles.styles.css', './UNSAFE_Menu/themes/DropdownMenuStyles.css', 'css!./DropdownMenuStyles.styles.css', './Flex-4b81b412', './boxalignment-8d80de7e', 'css!./boxalignment.styles.css', './flexbox-8521f6aa', 'css!./flexbox.styles.css', 'css!./FlexStyles.styles.css', './Skeleton-3e52c94a', './borders-e15a6927', './UNSAFE_Skeleton/themes/redwood/SkeletonTheme', './UNSAFE_Skeleton/themes/SkeletonStyles.css', 'css!./SkeletonStyles.styles.css', './UNSAFE_Skeleton/themes/redwood/SkeletonBaseTheme.css', 'module', './UNSAFE_Skeleton/themes/redwood/SkeletonVariants.css', './UNSAFE_Menu/themes/MenuSkeletonStyles.css', 'css!./MenuSkeletonStyles.styles.css', './LiveRegion-dbefb95b', 'css!./LiveRegionStyles.styles.css', 'css!./TooltipContentStyles.styles.css', 'module', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentVariants.css', 'css!./TooltipContentVariants.styles.css', './tooltipUtils-2bb62284', './EnvironmentProvider-403bf554', './LayerManager-426c669d', 'css!./IconStyle.styles.css', './SelectMenuGroupContext-67f24a8f', './UNSAFE_Separator/themes/SeparatorStyles.css', 'css!./SeparatorStyles.styles.css', 'css!./MenuSeparatorStyles.styles.css', 'module', './UNSAFE_Menu/themes/redwood/MenuSeparatorVariants.css', './useContextMenuGesture-750ef2c6', './textSelectionUtils-3022f002', './useChartDnd-cee046fb', './utils-bd8f2a3c', './useDnd-33ec1cdf', './useTooltip-3a2fd217', './useTooltipControlled-6449a7e9', './useFocus-4194fc59', './useTouch-37489bb5', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentTheme', './hooks/UNSAFE_useTooltip/themes/TooltipContentStyles.css', './hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentBaseTheme.css', './useChartMarquee-3865426f', './useVisDragModeControls-5f059d09', './Button-1187534f', './Icon-234f9eb8', './UNSAFE_Icon/themes/IconStyle.css', './Move-4c330593', './hooks/PRIVATE_useVisDragModeControls/themes/useVisDragModeControls.css', 'css!./useVisDragModeControls.styles.css', './ZoomAlt-ce20682b', './ButtonSetSingle-bf1b8c68', './useButtonSetContext-dffdaea3', './ButtonSet-9f26cc51', './UNSAFE_ButtonSet/themes/ButtonSetStyles.css', 'css!./ButtonSetStyles.styles.css', './ButtonSetPositionContext-fd98cc11', './toggleButtonUtils-0ebe4c56', './useRovingTabIndexContainer-9aa2fbcf', './ButtonSetItem-4b29107a', './ButtonSetButton-fa0256aa', './ToggleButtonLabel-87364773', './ButtonLabelLayout-6464870c', './useButtonLabelLayoutTheme-a30f5d8a', './UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutTheme', './UNSAFE_ButtonLabelLayout/themes/ButtonLabelLayoutStyles.css', 'css!./ButtonLabelLayoutStyles.styles.css', './UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutBaseTheme.css', 'module', './UNSAFE_ButtonLabelLayout/themes/redwood/ButtonLabelLayoutVariants.css', 'css!./ButtonLabelLayoutVariants.styles.css', './HiddenAccessible-037ef42d', 'css!./HiddenAccessibleStyles.styles.css', './ButtonSetIconButton-9010f20c', './useButtonSetPositionContext-b8534679', './IconToggleButton-0ab34b44', './useToggleAction-59741954', './hooks/PRIVATE_useChartMarquee/themes/useChartMarquee.css', 'css!./useChartMarquee.styles.css', './useVisTouchResponse-88a7bb09', './useOverviewContext-dd00c487', './OverviewSlidingWindow-c5db4da0', './PRIVATE_VisOverview/themes/VisOverview.css', 'css!./VisOverview.styles.css', './DragH-e64a0fa2'], (function(e,s,t,o,a,l,n,c,i,r,d,u,S,y,h,m,b,f,A,T,U,B,_,E,F,p,w,C,M,N,x,V,g,v,L,I,D,k,P,R,O,W,H,q,z,j,G,K,Z,J,Q,X,Y,$,ee,se,te,oe,ae,le,ne,ce,ie,re,de,ue,Se,ye,he,me,be,fe,Ae,Te,Ue,Be,_e,Ee,Fe,pe,we,Ce,Me,Ne,xe,Ve,ge,ve,Le,Ie,De,ke,Pe,Re,Oe,We,He,qe,ze,je,Ge,Ke,Ze,Je,Qe,Xe,Ye,$e,es,ss,ts,os,as,ls,ns,cs,is,rs,ds,us,Ss,ys,hs,ms,bs,fs,As,Ts,Us,Bs,_s,Es,Fs,ps,ws,Cs,Ms,Ns,xs,Vs,gs,vs,Ls,Is,Ds,ks,Ps,Rs,Os,Ws,Hs,qs,zs,js,Gs,Ks,Zs,Js,Qs,Xs,Ys,$s,et,st,tt,ot,at,lt,nt,ct,it,rt,dt,ut,St,yt,ht,mt,bt,ft,At,Tt,Ut,Bt,_t,Et,Ft,pt,wt,Ct,Mt,Nt,xt,Vt,gt,vt,Lt,It,Dt,kt,Pt,Rt,Ot,Wt,Ht,qt,zt,jt,Gt,Kt,Zt,Jt,Qt,Xt,Yt,$t,eo,so,to,oo,ao,lo,no,co,io,ro,uo,So,yo,ho,mo,bo,fo,Ao,To,Uo,Bo,_o,Eo,Fo,po,wo,Co,Mo,No,xo,Vo,go,vo,Lo,Io,Do,ko,Po,Ro,Oo,Wo,Ho,qo,zo,jo,Go,Ko,Zo,Jo,Qo,Xo,Yo,$o,ea,sa,ta,oa,aa,la,na,ca,ia,ra,da,ua,Sa,ya,ha,ma){"use strict";e.Chart=s.Chart,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=PRIVATE_Chart.js.map