@hitachivantara/uikit-react-core 5.18.0 → 5.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/cjs/components/Accordion/Accordion.cjs +1 -1
  2. package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -1
  3. package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs +2 -5
  4. package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs.map +1 -1
  5. package/dist/cjs/components/BaseInput/BaseInput.cjs +1 -1
  6. package/dist/cjs/components/BaseInput/BaseInput.cjs.map +1 -1
  7. package/dist/cjs/components/Box/Box.cjs +2 -2
  8. package/dist/cjs/components/Box/Box.cjs.map +1 -1
  9. package/dist/cjs/components/Carousel/Carousel.cjs +8 -8
  10. package/dist/cjs/components/Carousel/Carousel.cjs.map +1 -1
  11. package/dist/cjs/components/ColorPicker/Fields/Fields.cjs +8 -8
  12. package/dist/cjs/components/ColorPicker/Fields/Fields.cjs.map +1 -1
  13. package/dist/cjs/components/ColorPicker/Picker/Picker.cjs +2 -2
  14. package/dist/cjs/components/ColorPicker/Picker/Picker.cjs.map +1 -1
  15. package/dist/cjs/components/DatePicker/DatePicker.cjs +2 -2
  16. package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
  17. package/dist/cjs/components/Dialog/Dialog.cjs +1 -1
  18. package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -1
  19. package/dist/cjs/components/Dropdown/List/List.cjs +1 -1
  20. package/dist/cjs/components/Dropdown/List/List.cjs.map +1 -1
  21. package/dist/cjs/components/FilterGroup/RightPanel/RightPanel.cjs +1 -1
  22. package/dist/cjs/components/FilterGroup/RightPanel/RightPanel.cjs.map +1 -1
  23. package/dist/cjs/components/Forms/Suggestions/Suggestions.cjs +16 -13
  24. package/dist/cjs/components/Forms/Suggestions/Suggestions.cjs.map +1 -1
  25. package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs +26 -15
  26. package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs.map +1 -1
  27. package/dist/cjs/components/Input/Input.cjs +83 -75
  28. package/dist/cjs/components/Input/Input.cjs.map +1 -1
  29. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs +2 -2
  30. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs.map +1 -1
  31. package/dist/cjs/components/MultiButton/MultiButton.styles.cjs +10 -10
  32. package/dist/cjs/components/MultiButton/MultiButton.styles.cjs.map +1 -1
  33. package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
  34. package/dist/cjs/components/Pagination/Pagination.styles.cjs +1 -3
  35. package/dist/cjs/components/Pagination/Pagination.styles.cjs.map +1 -1
  36. package/dist/cjs/components/ScrollTo/useScrollTo.cjs.map +1 -1
  37. package/dist/cjs/components/Slider/Slider.cjs +1 -1
  38. package/dist/cjs/components/Slider/Slider.cjs.map +1 -1
  39. package/dist/cjs/components/Snackbar/Snackbar.cjs +9 -14
  40. package/dist/cjs/components/Snackbar/Snackbar.cjs.map +1 -1
  41. package/dist/cjs/components/Snackbar/Snackbar.styles.cjs +38 -29
  42. package/dist/cjs/components/Snackbar/Snackbar.styles.cjs.map +1 -1
  43. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs +22 -18
  44. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs.map +1 -1
  45. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.cjs +37 -89
  46. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.cjs.map +1 -1
  47. package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.cjs +34 -64
  48. package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.cjs.map +1 -1
  49. package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.styles.cjs +28 -0
  50. package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.styles.cjs.map +1 -0
  51. package/dist/cjs/components/Table/TableCell/TableCell.cjs +6 -3
  52. package/dist/cjs/components/Table/TableCell/TableCell.cjs.map +1 -1
  53. package/dist/cjs/components/Table/TableRow/TableRow.cjs +9 -6
  54. package/dist/cjs/components/Table/TableRow/TableRow.cjs.map +1 -1
  55. package/dist/cjs/components/TagsInput/TagsInput.cjs +1 -1
  56. package/dist/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
  57. package/dist/cjs/components/TextArea/TextArea.cjs +45 -43
  58. package/dist/cjs/components/TextArea/TextArea.cjs.map +1 -1
  59. package/dist/cjs/components/VerticalNavigation/Header/Header.cjs +1 -1
  60. package/dist/cjs/components/VerticalNavigation/Header/Header.cjs.map +1 -1
  61. package/dist/cjs/components/VerticalNavigation/Navigation/Navigation.cjs +7 -7
  62. package/dist/cjs/components/VerticalNavigation/Navigation/Navigation.cjs.map +1 -1
  63. package/dist/cjs/components/VerticalNavigation/TreeView/TreeViewItem.cjs +5 -5
  64. package/dist/cjs/components/VerticalNavigation/TreeView/TreeViewItem.cjs.map +1 -1
  65. package/dist/cjs/components/VerticalNavigation/TreeView/descendants.cjs +1 -4
  66. package/dist/cjs/components/VerticalNavigation/TreeView/descendants.cjs.map +1 -1
  67. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.cjs +5 -5
  68. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.cjs.map +1 -1
  69. package/dist/cjs/hooks/useWidth.cjs.map +1 -1
  70. package/dist/cjs/index.cjs +8 -6
  71. package/dist/cjs/index.cjs.map +1 -1
  72. package/dist/cjs/providers/ThemeProvider.cjs +20 -18
  73. package/dist/cjs/providers/ThemeProvider.cjs.map +1 -1
  74. package/dist/esm/components/Accordion/Accordion.js +1 -1
  75. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  76. package/dist/esm/components/AppSwitcher/AppSwitcher.js +2 -5
  77. package/dist/esm/components/AppSwitcher/AppSwitcher.js.map +1 -1
  78. package/dist/esm/components/BaseInput/BaseInput.js +1 -1
  79. package/dist/esm/components/BaseInput/BaseInput.js.map +1 -1
  80. package/dist/esm/components/Box/Box.js +2 -2
  81. package/dist/esm/components/Box/Box.js.map +1 -1
  82. package/dist/esm/components/Carousel/Carousel.js +9 -9
  83. package/dist/esm/components/Carousel/Carousel.js.map +1 -1
  84. package/dist/esm/components/ColorPicker/Fields/Fields.js +8 -8
  85. package/dist/esm/components/ColorPicker/Fields/Fields.js.map +1 -1
  86. package/dist/esm/components/ColorPicker/Picker/Picker.js +2 -2
  87. package/dist/esm/components/ColorPicker/Picker/Picker.js.map +1 -1
  88. package/dist/esm/components/DatePicker/DatePicker.js +2 -2
  89. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  90. package/dist/esm/components/Dialog/Dialog.js +1 -1
  91. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  92. package/dist/esm/components/Dropdown/List/List.js +1 -1
  93. package/dist/esm/components/Dropdown/List/List.js.map +1 -1
  94. package/dist/esm/components/FilterGroup/RightPanel/RightPanel.js +1 -1
  95. package/dist/esm/components/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  96. package/dist/esm/components/Forms/Suggestions/Suggestions.js +17 -14
  97. package/dist/esm/components/Forms/Suggestions/Suggestions.js.map +1 -1
  98. package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js +26 -15
  99. package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js.map +1 -1
  100. package/dist/esm/components/Input/Input.js +84 -76
  101. package/dist/esm/components/Input/Input.js.map +1 -1
  102. package/dist/esm/components/ListContainer/ListItem/ListItem.js +2 -2
  103. package/dist/esm/components/ListContainer/ListItem/ListItem.js.map +1 -1
  104. package/dist/esm/components/MultiButton/MultiButton.styles.js +10 -10
  105. package/dist/esm/components/MultiButton/MultiButton.styles.js.map +1 -1
  106. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  107. package/dist/esm/components/Pagination/Pagination.styles.js +1 -3
  108. package/dist/esm/components/Pagination/Pagination.styles.js.map +1 -1
  109. package/dist/esm/components/ScrollTo/useScrollTo.js.map +1 -1
  110. package/dist/esm/components/Slider/Slider.js +2 -2
  111. package/dist/esm/components/Slider/Slider.js.map +1 -1
  112. package/dist/esm/components/Snackbar/Snackbar.js +12 -16
  113. package/dist/esm/components/Snackbar/Snackbar.js.map +1 -1
  114. package/dist/esm/components/Snackbar/Snackbar.styles.js +38 -26
  115. package/dist/esm/components/Snackbar/Snackbar.styles.js.map +1 -1
  116. package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js +21 -18
  117. package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js.map +1 -1
  118. package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.js +37 -86
  119. package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.styles.js.map +1 -1
  120. package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.js +35 -62
  121. package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.js.map +1 -1
  122. package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.styles.js +28 -0
  123. package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.styles.js.map +1 -0
  124. package/dist/esm/components/Table/TableCell/TableCell.js +6 -3
  125. package/dist/esm/components/Table/TableCell/TableCell.js.map +1 -1
  126. package/dist/esm/components/Table/TableRow/TableRow.js +9 -6
  127. package/dist/esm/components/Table/TableRow/TableRow.js.map +1 -1
  128. package/dist/esm/components/TagsInput/TagsInput.js +1 -1
  129. package/dist/esm/components/TagsInput/TagsInput.js.map +1 -1
  130. package/dist/esm/components/TextArea/TextArea.js +46 -44
  131. package/dist/esm/components/TextArea/TextArea.js.map +1 -1
  132. package/dist/esm/components/VerticalNavigation/Header/Header.js +1 -1
  133. package/dist/esm/components/VerticalNavigation/Header/Header.js.map +1 -1
  134. package/dist/esm/components/VerticalNavigation/Navigation/Navigation.js +7 -7
  135. package/dist/esm/components/VerticalNavigation/Navigation/Navigation.js.map +1 -1
  136. package/dist/esm/components/VerticalNavigation/TreeView/TreeViewItem.js +5 -5
  137. package/dist/esm/components/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  138. package/dist/esm/components/VerticalNavigation/TreeView/descendants.js +1 -4
  139. package/dist/esm/components/VerticalNavigation/TreeView/descendants.js.map +1 -1
  140. package/dist/esm/components/VerticalNavigation/VerticalNavigation.js +6 -6
  141. package/dist/esm/components/VerticalNavigation/VerticalNavigation.js.map +1 -1
  142. package/dist/esm/hooks/useWidth.js.map +1 -1
  143. package/dist/esm/index.js +128 -126
  144. package/dist/esm/index.js.map +1 -1
  145. package/dist/esm/providers/ThemeProvider.js +21 -19
  146. package/dist/esm/providers/ThemeProvider.js.map +1 -1
  147. package/dist/types/index.d.ts +156 -120
  148. package/package.json +3 -3
  149. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/snackbarContentWrapperClasses.cjs +0 -8
  150. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/snackbarContentWrapperClasses.cjs.map +0 -1
  151. package/dist/cjs/components/Snackbar/snackbarClasses.cjs +0 -8
  152. package/dist/cjs/components/Snackbar/snackbarClasses.cjs.map +0 -1
  153. package/dist/esm/components/Snackbar/SnackbarContentWrapper/snackbarContentWrapperClasses.js +0 -8
  154. package/dist/esm/components/Snackbar/SnackbarContentWrapper/snackbarContentWrapperClasses.js.map +0 -1
  155. package/dist/esm/components/Snackbar/snackbarClasses.js +0 -8
  156. package/dist/esm/components/Snackbar/snackbarClasses.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.js","sources":["../../../../../src/components/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport React, { useCallback, useContext, useMemo } from \"react\";\nimport { HvBaseProps } from \"@core/types\";\nimport HvListContext from \"../ListContext\";\nimport { StyledListItem, StyledFocus } from \"./ListItem.styles\";\nimport listItemClasses, { HvListItemClasses } from \"./listItemClasses\";\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /**\n * Overrides the implicit list item role.\n * It defaults to \"option\" if unspecified and the container list role is \"listbox\".\n */\n role?: string;\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element,\n selected,\n disabled,\n onClick,\n className,\n externalClassname\n) => {\n if (element != null) {\n return React.cloneElement(element, {\n className: clsx(className, externalClassname, element?.props?.className),\n checked: !!selected,\n disabled,\n onChange: (evt) => onClick?.(evt),\n });\n }\n\n return null;\n};\n\nconst applyClassNameToElement = (element, className, externalClassname) => {\n if (element != null) {\n return React.cloneElement(element, {\n className: clsx(className, externalClassname, element?.props?.className),\n });\n }\n\n return null;\n};\n\n/**\n * ListItem description/documentation paragraph\n */\nexport const HvListItem = ({\n id,\n classes,\n className,\n role,\n value,\n selected,\n disabled,\n interactive: interactiveProp,\n condensed: condensedProp,\n disableGutters: disableGuttersProp,\n startAdornment,\n endAdornment,\n onClick,\n children,\n tabIndex,\n ...others\n}: HvListItemProps) => {\n const {\n topContainerRef,\n condensed: condensedContext,\n disableGutters: disableGuttersContext,\n interactive: interactiveContext,\n } = useContext<any>(HvListContext);\n\n const condensed = condensedProp != null ? condensedProp : condensedContext;\n const disableGutters =\n disableGuttersProp != null ? disableGuttersProp : disableGuttersContext;\n const interactive =\n interactiveProp != null ? interactiveProp : interactiveContext;\n\n const handleOnClick = useCallback(\n (evt) => {\n if (!disabled) {\n onClick?.(evt);\n }\n },\n [disabled, onClick]\n );\n\n const clonedStartAdornment = useMemo(\n () =>\n applyClassNameAndStateToElement(\n startAdornment,\n selected,\n disabled,\n handleOnClick,\n clsx(\n listItemClasses.startAdornment,\n disabled && listItemClasses.disabled\n ),\n clsx(classes?.startAdornment, disabled && classes?.disabled)\n ),\n [classes?.startAdornment, disabled, handleOnClick, selected, startAdornment]\n );\n const clonedEndAdornment = useMemo(\n () =>\n applyClassNameToElement(\n endAdornment,\n clsx(\n listItemClasses.endAdornment,\n disabled && listItemClasses.disabled\n ),\n clsx(classes?.endAdornment, disabled && classes?.disabled)\n ),\n [classes?.endAdornment, endAdornment]\n );\n\n const roleOptionAriaProps =\n role === \"option\" || role === \"menuitem\"\n ? {\n \"aria-disabled\": disabled || undefined,\n \"aria-selected\": selected,\n }\n : {};\n\n const listItem = (\n <StyledListItem\n id={id}\n role={role}\n value={value}\n onClick={handleOnClick}\n onKeyDown={() => {}}\n className={clsx(\n className,\n listItemClasses.root,\n classes?.root,\n !disableGutters && clsx(listItemClasses.gutters, classes?.gutters),\n condensed && clsx(listItemClasses.condensed, classes?.condensed),\n interactive && clsx(listItemClasses.interactive, classes?.interactive),\n selected && clsx(listItemClasses.selected, classes?.selected),\n disabled && clsx(listItemClasses.disabled, classes?.disabled),\n startAdornment != null &&\n clsx(listItemClasses.withStartAdornment, classes?.withStartAdornment),\n endAdornment != null &&\n clsx(listItemClasses.withEndAdornment, classes?.withEndAdornment)\n )}\n $gutters={!disableGutters}\n $interactive={interactive}\n $disabled={disabled || false}\n $selected={selected || false}\n $startAdornment={startAdornment != null}\n $endAdornment={endAdornment != null}\n {...roleOptionAriaProps}\n {...others}\n >\n {clonedStartAdornment}\n {children}\n {clonedEndAdornment}\n </StyledListItem>\n );\n\n return interactiveProp ? (\n <StyledFocus\n rootRef={topContainerRef}\n selected={selected}\n disabledClass={disabled || undefined}\n strategy={role === \"option\" ? \"listbox\" : \"menu\"}\n classes={{ focus: clsx(classes?.focus, listItemClasses.focus) }}\n configuration={{\n tabIndex,\n }}\n >\n {listItem}\n </StyledFocus>\n ) : (\n listItem\n );\n};\n"],"names":["applyClassNameAndStateToElement","element","selected","disabled","onClick","className","externalClassname","React","cloneElement","clsx","props","checked","onChange","evt","applyClassNameToElement","HvListItem","id","classes","role","value","interactive","interactiveProp","condensed","condensedProp","disableGutters","disableGuttersProp","startAdornment","endAdornment","children","tabIndex","others","topContainerRef","condensedContext","disableGuttersContext","interactiveContext","useContext","HvListContext","handleOnClick","useCallback","clonedStartAdornment","useMemo","listItemClasses","clonedEndAdornment","roleOptionAriaProps","undefined","listItem","StyledListItem","onKeyDown","root","gutters","withStartAdornment","withEndAdornment","$gutters","$interactive","$disabled","$selected","$startAdornment","$endAdornment","StyledFocus","rootRef","disabledClass","strategy","focus","configuration"],"mappings":"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"}
1
+ {"version":3,"file":"ListItem.js","sources":["../../../../../src/components/ListContainer/ListItem/ListItem.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport React, { useCallback, useContext, useMemo } from \"react\";\nimport { HvBaseProps } from \"@core/types\";\nimport HvListContext from \"../ListContext\";\nimport { StyledListItem, StyledFocus } from \"./ListItem.styles\";\nimport listItemClasses, { HvListItemClasses } from \"./listItemClasses\";\n\nexport interface HvListItemProps extends HvBaseProps<HTMLLIElement> {\n /**\n * Overrides the implicit list item role.\n * It defaults to \"option\" if unspecified and the container list role is \"listbox\".\n */\n role?: string;\n /** Indicates if the list item is selected. */\n selected?: boolean;\n /** If true, the list item will be disabled. */\n disabled?: boolean;\n /**\n * If the list item is focusable and reacts to mouse over events.\n * Defaults to true if the container list is interactive, false otherwise.\n */\n interactive?: boolean;\n /**\n * If `true` compacts the vertical spacing intended to separate the list items.\n * Defaults to the value set in container list.\n */\n condensed?: boolean;\n /**\n * If `true`, the left and right padding is removed.\n * Defaults to the value set in container list.\n */\n disableGutters?: boolean;\n /**\n * Element placed before the children.\n * Also removes the left padding (gutter).\n *\n * Some modifications are applied, assuming that it is either an icon (changing the color when the item is disabled)\n * or a selector (preventing the double focus ring, propagating the checked and disabled states and wiring the onChange event).\n * If unwanted, the element should be placed directly as a child.\n */\n startAdornment?: React.ReactNode;\n /**\n * Element placed after the children and aligned next to the margin.\n * Also removes the right padding (gutter).\n *\n * Some modifications are applied, assuming that it is an icon (changing the color when the item is disabled).\n * If unwanted, the element should be placed directly as a child.\n */\n endAdornment?: React.ReactNode;\n /** The value to be set on the 'li' element */\n value?: any;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvListItemClasses;\n}\n\nconst applyClassNameAndStateToElement = (\n element,\n selected,\n disabled,\n onClick,\n className,\n externalClassname\n) => {\n if (element != null) {\n return React.cloneElement(element, {\n className: clsx(className, externalClassname, element?.props?.className),\n checked: !!selected,\n disabled,\n onChange: (evt) => onClick?.(evt),\n });\n }\n\n return null;\n};\n\nconst applyClassNameToElement = (element, className, externalClassname) => {\n if (element != null) {\n return React.cloneElement(element, {\n className: clsx(className, externalClassname, element?.props?.className),\n });\n }\n\n return null;\n};\n\n/**\n * ListItem description/documentation paragraph\n */\nexport const HvListItem = ({\n id,\n classes,\n className,\n role,\n value,\n selected,\n disabled,\n interactive: interactiveProp,\n condensed: condensedProp,\n disableGutters: disableGuttersProp,\n startAdornment,\n endAdornment,\n onClick,\n children,\n tabIndex,\n ...others\n}: HvListItemProps) => {\n const {\n topContainerRef,\n condensed: condensedContext,\n disableGutters: disableGuttersContext,\n interactive: interactiveContext,\n } = useContext<any>(HvListContext);\n\n const condensed = condensedProp != null ? condensedProp : condensedContext;\n const disableGutters =\n disableGuttersProp != null ? disableGuttersProp : disableGuttersContext;\n const interactive =\n interactiveProp != null ? interactiveProp : interactiveContext;\n\n const handleOnClick = useCallback(\n (evt) => {\n if (!disabled) {\n onClick?.(evt);\n }\n },\n [disabled, onClick]\n );\n\n const clonedStartAdornment = useMemo(\n () =>\n applyClassNameAndStateToElement(\n startAdornment,\n selected,\n disabled,\n handleOnClick,\n clsx(\n listItemClasses.startAdornment,\n disabled && listItemClasses.disabled\n ),\n clsx(classes?.startAdornment, disabled && classes?.disabled)\n ),\n [\n classes?.startAdornment,\n classes?.disabled,\n disabled,\n handleOnClick,\n selected,\n startAdornment,\n ]\n );\n const clonedEndAdornment = useMemo(\n () =>\n applyClassNameToElement(\n endAdornment,\n clsx(\n listItemClasses.endAdornment,\n disabled && listItemClasses.disabled\n ),\n clsx(classes?.endAdornment, disabled && classes?.disabled)\n ),\n [classes?.endAdornment, classes?.disabled, disabled, endAdornment]\n );\n\n const roleOptionAriaProps =\n role === \"option\" || role === \"menuitem\"\n ? {\n \"aria-disabled\": disabled || undefined,\n \"aria-selected\": selected,\n }\n : {};\n\n const listItem = (\n <StyledListItem\n id={id}\n role={role}\n value={value}\n onClick={handleOnClick}\n onKeyDown={() => {}}\n className={clsx(\n className,\n listItemClasses.root,\n classes?.root,\n !disableGutters && clsx(listItemClasses.gutters, classes?.gutters),\n condensed && clsx(listItemClasses.condensed, classes?.condensed),\n interactive && clsx(listItemClasses.interactive, classes?.interactive),\n selected && clsx(listItemClasses.selected, classes?.selected),\n disabled && clsx(listItemClasses.disabled, classes?.disabled),\n startAdornment != null &&\n clsx(listItemClasses.withStartAdornment, classes?.withStartAdornment),\n endAdornment != null &&\n clsx(listItemClasses.withEndAdornment, classes?.withEndAdornment)\n )}\n $gutters={!disableGutters}\n $interactive={interactive}\n $disabled={disabled || false}\n $selected={selected || false}\n $startAdornment={startAdornment != null}\n $endAdornment={endAdornment != null}\n {...roleOptionAriaProps}\n {...others}\n >\n {clonedStartAdornment}\n {children}\n {clonedEndAdornment}\n </StyledListItem>\n );\n\n return interactiveProp ? (\n <StyledFocus\n rootRef={topContainerRef}\n selected={selected}\n disabledClass={disabled || undefined}\n strategy={role === \"option\" ? \"listbox\" : \"menu\"}\n classes={{ focus: clsx(classes?.focus, listItemClasses.focus) }}\n configuration={{\n tabIndex,\n }}\n >\n {listItem}\n </StyledFocus>\n ) : (\n listItem\n );\n};\n"],"names":["applyClassNameAndStateToElement","element","selected","disabled","onClick","className","externalClassname","React","cloneElement","clsx","props","checked","onChange","evt","applyClassNameToElement","HvListItem","id","classes","role","value","interactive","interactiveProp","condensed","condensedProp","disableGutters","disableGuttersProp","startAdornment","endAdornment","children","tabIndex","others","topContainerRef","condensedContext","disableGuttersContext","interactiveContext","useContext","HvListContext","handleOnClick","useCallback","clonedStartAdornment","useMemo","listItemClasses","clonedEndAdornment","roleOptionAriaProps","undefined","listItem","StyledListItem","onKeyDown","root","gutters","withStartAdornment","withEndAdornment","$gutters","$interactive","$disabled","$selected","$startAdornment","$endAdornment","StyledFocus","rootRef","disabledClass","strategy","focus","configuration"],"mappings":"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"}
@@ -101,16 +101,16 @@ const StyledRoot = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "prod
101
101
  }
102
102
  }
103
103
  }
104
- }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvTXVsdGlCdXR0b24vTXVsdGlCdXR0b24uc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNMEIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9NdWx0aUJ1dHRvbi9NdWx0aUJ1dHRvbi5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xzeCB9IGZyb20gXCJjbHN4XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1zdHlsZXNcIjtcbmltcG9ydCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwiQGNvcmUvdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUm9vdCA9IHN0eWxlZChcbiAgXCJkaXZcIixcbiAgdHJhbnNpZW50T3B0aW9uc1xuKSgoeyAkdmVydGljYWwgfTogeyAkdmVydGljYWw6IGJvb2xlYW4gfSkgPT4gKHtcbiAgZGlzcGxheTogXCJmbGV4XCIsXG4gIGhlaWdodDogMzIsXG4gIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gIHRyYW5zaXRpb246IFwibm9uZVwiLFxuICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzIsXG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMCxcblxuICAvLyBwcmV2ZW50IHRoZSBmb2N1cyByaW5nIHRvIGJlIGhpZGRlbiBieSBzaWJsaW5nIGhvdmVyIGJhY2tncm91bmRcbiAgXCImPi5IdklzRm9jdXNWaXNpYmxlXCI6IHtcbiAgICB6SW5kZXg6IDUsXG4gIH0sXG5cbiAgLi4uKCR2ZXJ0aWNhbCAmJiB7XG4gICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICBoZWlnaHQ6IFwiYXV0b1wiLFxuICAgIGJ0blNlY29uZGFyeToge1xuICAgICAgZmxleDogXCIxIDEgMjBweFwiLFxuICAgIH0sXG4gICAgXCImIGJ1dHRvbi5idXR0b25cIjoge1xuICAgICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgICAgYm9yZGVyTGVmdDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyUmlnaHQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIGJvcmRlckJvdHRvbTogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICBib3JkZXJMZWZ0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgYm9yZGVyQm90dG9tOiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgICBib3JkZXJSaWdodDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgICBib3JkZXJCb3R0b206IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmZpcnN0LW9mLXR5cGVcIjoge1xuICAgICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyVG9wTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyVG9wOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmxhc3QtY2hpbGRcIjoge1xuICAgICAgICBib3JkZXJCb3R0b206IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOm5vdCg6Zmlyc3Qtb2YtdHlwZSlcIjoge1xuICAgICAgICBtYXJnaW5MZWZ0OiAwLFxuICAgICAgICBtYXJnaW5Ub3A6IC0xLFxuICAgICAgfSxcbiAgICAgIFwiJi5zZWxlY3RlZFwiOiB7XG4gICAgICAgIGhlaWdodDogMzIsXG4gICAgICAgIHdpZHRoOiBgY2FsYygxMDAlICsgMnB4KSAhaW1wb3J0YW50YCxcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgICAuLi4odGhlbWUudHlwb2dyYXBoeS5sYWJlbCBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICAgIHpJbmRleDogMixcbiAgICAgICAgXCImOmhvdmVyLCAmOmZvY3VzXCI6IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzMsXG4gICAgICAgIH0sXG4gICAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgICAgekluZGV4OiAxLFxuICAgICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hdG1vMSxcbiAgICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSksXG59KSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSAoRWxlbWVudCkgPT5cbiAgc3R5bGVkKCh7IGNsYXNzTmFtZSB9KSA9PiAoXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wYXNjYWwtY2FzZVxuICAgIDxFbGVtZW50LnR5cGVcbiAgICAgIHsuLi5FbGVtZW50LnByb3BzfVxuICAgICAgY2xhc3NOYW1lPXtjbHN4KFxuICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICBFbGVtZW50LnByb3BzLnNlbGVjdGVkICYmIFwic2VsZWN0ZWRcIixcbiAgICAgICAgY2xhc3NOYW1lXG4gICAgICApfVxuICAgIC8+XG4gICkpKHtcbiAgICBoZWlnaHQ6IDMyLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBtaW5XaWR0aDogMzIsXG4gICAgbWF4V2lkdGg6IDIwMCxcbiAgICB0cmFuc2l0aW9uOiBcIm5vbmVcIixcbiAgICBmbGV4OiBcIjEgMCAwcHhcIixcbiAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICBib3JkZXJCb3R0b206IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICBib3JkZXJMZWZ0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgIGJvcmRlclJpZ2h0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgIGJvcmRlclJhZGl1czogMCxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmNvbG9ycy5hdG1vMixcbiAgICBcIjpkaXNhYmxlZFwiOiB7IGJhY2tncm91bmRDb2xvcjogdGhlbWUubXVsdGlCdXR0b24uZGlzYWJsZWRCYWNrZ3JvdW5kQ29sb3IgfSxcbiAgICBcIjpob3ZlclwiOiB7XG4gICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyTGVmdDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIGJvcmRlclJpZ2h0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgIH0sXG4gICAgLi4uKHRoZW1lLnR5cG9ncmFwaHkuYm9keSBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgICBcIiY6YWN0aXZlXCI6IHtcbiAgICAgIGJhY2tncm91bmRDb2xvcjogYCR7dGhlbWUuY29sb3JzLmF0bW8zfWAsXG4gICAgfSxcbiAgICBcIiY6ZGlzYWJsZWRcIjoge1xuICAgICAgY29sb3I6IHRoZW1lLmNvbG9ycy5zZWNvbmRhcnlfNjAsXG4gICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgXCImOmhvdmVyXCI6IHtcbiAgICAgICAgYm9yZGVyVG9wOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICBib3JkZXJMZWZ0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgICBib3JkZXJSaWdodDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgICBcIiY6Zmlyc3Qtb2YtdHlwZVwiOiB7XG4gICAgICBib3JkZXJMZWZ0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBib3JkZXJUb3BMZWZ0UmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogdGhlbWUucmFkaWkuYmFzZSxcbiAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBcIiY6bGFzdC1jaGlsZFwiOiB7XG4gICAgICBib3JkZXJSaWdodDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6IHRoZW1lLnJhZGlpLmJhc2UsXG4gICAgICBib3JkZXJCb3R0b21SaWdodFJhZGl1czogdGhlbWUucmFkaWkuYmFzZSxcbiAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICB9LFxuICAgIH0sXG4gICAgXCImOm5vdCg6Zmlyc3Qtb2YtdHlwZSlcIjoge1xuICAgICAgbWFyZ2luTGVmdDogXCItMXB4XCIsXG4gICAgfSxcbiAgICBcIiYuc2VsZWN0ZWRcIjoge1xuICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgaGVpZ2h0OiAzNCxcbiAgICAgIC4uLih0aGVtZS50eXBvZ3JhcGh5LmxhYmVsIGFzIENTU1Byb3BlcnRpZXMpLFxuICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLnNlY29uZGFyeX1gLFxuICAgICAgekluZGV4OiAyLFxuICAgICAgXCImOmhvdmVyXCI6IHtcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8zLFxuICAgICAgICBcIiY6bm90KDpkaXNhYmxlZClcIjoge1xuICAgICAgICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5zZWNvbmRhcnl9YCxcbiAgICAgICAgfSxcbiAgICAgICAgXCImOmRpc2FibGVkXCI6IHtcbiAgICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBcIiY6Zmlyc3Qtb2YtdHlwZSwgJjpsYXN0LWNoaWxkXCI6IHtcbiAgICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLnNlY29uZGFyeX1gLFxuICAgICAgfSxcblxuICAgICAgLy8gcHJldmVudCB0aGUgZm9jdXMgcmluZyB0byBiZSBoaWRkZW4gYnkgc2libGluZyBob3ZlciBiYWNrZ3JvdW5kXG4gICAgICAvLyBldmVuIHdoZW4gc2VsZWN0ZWRcbiAgICAgIFwiJi5IdklzRm9jdXNWaXNpYmxlXCI6IHtcbiAgICAgICAgekluZGV4OiA1LFxuICAgICAgfSxcbiAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgIHpJbmRleDogMSxcbiAgICAgICAgY29sb3I6IHRoZW1lLmNvbG9ycy5zZWNvbmRhcnlfNjAsXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hdG1vMSxcbiAgICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuIl19 */");
105
- const StyledButton = (Element) => /* @__PURE__ */ _styled(({
104
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvTXVsdGlCdXR0b24vTXVsdGlCdXR0b24uc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNMEIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9NdWx0aUJ1dHRvbi9NdWx0aUJ1dHRvbi5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xzeCB9IGZyb20gXCJjbHN4XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1zdHlsZXNcIjtcbmltcG9ydCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwiQGNvcmUvdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUm9vdCA9IHN0eWxlZChcbiAgXCJkaXZcIixcbiAgdHJhbnNpZW50T3B0aW9uc1xuKSgoeyAkdmVydGljYWwgfTogeyAkdmVydGljYWw6IGJvb2xlYW4gfSkgPT4gKHtcbiAgZGlzcGxheTogXCJmbGV4XCIsXG4gIGhlaWdodDogMzIsXG4gIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gIHRyYW5zaXRpb246IFwibm9uZVwiLFxuICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzIsXG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMCxcblxuICAvLyBwcmV2ZW50IHRoZSBmb2N1cyByaW5nIHRvIGJlIGhpZGRlbiBieSBzaWJsaW5nIGhvdmVyIGJhY2tncm91bmRcbiAgXCImPi5IdklzRm9jdXNWaXNpYmxlXCI6IHtcbiAgICB6SW5kZXg6IDUsXG4gIH0sXG5cbiAgLi4uKCR2ZXJ0aWNhbCAmJiB7XG4gICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICBoZWlnaHQ6IFwiYXV0b1wiLFxuICAgIGJ0blNlY29uZGFyeToge1xuICAgICAgZmxleDogXCIxIDEgMjBweFwiLFxuICAgIH0sXG4gICAgXCImIGJ1dHRvbi5idXR0b25cIjoge1xuICAgICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgICAgYm9yZGVyTGVmdDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyUmlnaHQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIGJvcmRlckJvdHRvbTogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICBib3JkZXJMZWZ0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgYm9yZGVyQm90dG9tOiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgICBib3JkZXJSaWdodDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgICBib3JkZXJCb3R0b206IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmZpcnN0LW9mLXR5cGVcIjoge1xuICAgICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyVG9wTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyVG9wOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmxhc3QtY2hpbGRcIjoge1xuICAgICAgICBib3JkZXJCb3R0b206IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOm5vdCg6Zmlyc3Qtb2YtdHlwZSlcIjoge1xuICAgICAgICBtYXJnaW5MZWZ0OiAwLFxuICAgICAgICBtYXJnaW5Ub3A6IC0xLFxuICAgICAgfSxcbiAgICAgIFwiJi5zZWxlY3RlZFwiOiB7XG4gICAgICAgIGhlaWdodDogMzIsXG4gICAgICAgIHdpZHRoOiBgY2FsYygxMDAlICsgMnB4KSAhaW1wb3J0YW50YCxcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgICAuLi4odGhlbWUudHlwb2dyYXBoeS5sYWJlbCBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICAgIHpJbmRleDogMixcbiAgICAgICAgXCImOmhvdmVyLCAmOmZvY3VzXCI6IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzMsXG4gICAgICAgIH0sXG4gICAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgICAgekluZGV4OiAxLFxuICAgICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hdG1vMSxcbiAgICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSksXG59KSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSAoeyB0eXBlOiBDb21wb25lbnQsIHByb3BzIH0pID0+XG4gIHN0eWxlZCgoeyBjbGFzc05hbWUgfSkgPT4gKFxuICAgIDxDb21wb25lbnRcbiAgICAgIHsuLi5wcm9wc31cbiAgICAgIGNsYXNzTmFtZT17Y2xzeChcImJ1dHRvblwiLCBwcm9wcy5zZWxlY3RlZCAmJiBcInNlbGVjdGVkXCIsIGNsYXNzTmFtZSl9XG4gICAgLz5cbiAgKSkoe1xuICAgIGhlaWdodDogMzIsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIG1pbldpZHRoOiAzMixcbiAgICBtYXhXaWR0aDogMjAwLFxuICAgIHRyYW5zaXRpb246IFwibm9uZVwiLFxuICAgIGZsZXg6IFwiMSAwIDBweFwiLFxuICAgIGJvcmRlclRvcDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgIGJvcmRlckxlZnQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgYm9yZGVyUmlnaHQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgYm9yZGVyUmFkaXVzOiAwLFxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUuY29sb3JzLmF0bW8yLFxuICAgIFwiOmRpc2FibGVkXCI6IHsgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5tdWx0aUJ1dHRvbi5kaXNhYmxlZEJhY2tncm91bmRDb2xvciB9LFxuICAgIFwiOmhvdmVyXCI6IHtcbiAgICAgIGJvcmRlclRvcDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBib3JkZXJMZWZ0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgYm9yZGVyUmlnaHQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgfSxcbiAgICAuLi4odGhlbWUudHlwb2dyYXBoeS5ib2R5IGFzIENTU1Byb3BlcnRpZXMpLFxuICAgIFwiJjphY3RpdmVcIjoge1xuICAgICAgYmFja2dyb3VuZENvbG9yOiBgJHt0aGVtZS5jb2xvcnMuYXRtbzN9YCxcbiAgICB9LFxuICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICBjb2xvcjogdGhlbWUuY29sb3JzLnNlY29uZGFyeV82MCxcbiAgICAgIGJvcmRlclRvcDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlckxlZnQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgICAgIGJvcmRlclJpZ2h0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIFwiJjpmaXJzdC1vZi10eXBlXCI6IHtcbiAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlclRvcExlZnRSYWRpdXM6IHRoZW1lLnJhZGlpLmJhc2UsXG4gICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgXCImOmRpc2FibGVkOmhvdmVyXCI6IHtcbiAgICAgICAgYm9yZGVyTGVmdDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgfSxcbiAgICB9LFxuICAgIFwiJjpsYXN0LWNoaWxkXCI6IHtcbiAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBib3JkZXJUb3BSaWdodFJhZGl1czogdGhlbWUucmFkaWkuYmFzZSxcbiAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgXCImOmRpc2FibGVkOmhvdmVyXCI6IHtcbiAgICAgICAgYm9yZGVyUmlnaHQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBcIiY6bm90KDpmaXJzdC1vZi10eXBlKVwiOiB7XG4gICAgICBtYXJnaW5MZWZ0OiBcIi0xcHhcIixcbiAgICB9LFxuICAgIFwiJi5zZWxlY3RlZFwiOiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzEsXG4gICAgICBoZWlnaHQ6IDM0LFxuICAgICAgLi4uKHRoZW1lLnR5cG9ncmFwaHkubGFiZWwgYXMgQ1NTUHJvcGVydGllcyksXG4gICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICB6SW5kZXg6IDIsXG4gICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzMsXG4gICAgICAgIFwiJjpub3QoOmRpc2FibGVkKVwiOiB7XG4gICAgICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLnNlY29uZGFyeX1gLFxuICAgICAgICB9LFxuICAgICAgICBcIiY6ZGlzYWJsZWRcIjoge1xuICAgICAgICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIFwiJjpmaXJzdC1vZi10eXBlLCAmOmxhc3QtY2hpbGRcIjoge1xuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICB9LFxuXG4gICAgICAvLyBwcmV2ZW50IHRoZSBmb2N1cyByaW5nIHRvIGJlIGhpZGRlbiBieSBzaWJsaW5nIGhvdmVyIGJhY2tncm91bmRcbiAgICAgIC8vIGV2ZW4gd2hlbiBzZWxlY3RlZFxuICAgICAgXCImLkh2SXNGb2N1c1Zpc2libGVcIjoge1xuICAgICAgICB6SW5kZXg6IDUsXG4gICAgICB9LFxuICAgICAgXCImOmRpc2FibGVkXCI6IHtcbiAgICAgICAgekluZGV4OiAxLFxuICAgICAgICBjb2xvcjogdGhlbWUuY29sb3JzLnNlY29uZGFyeV82MCxcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4iXX0= */");
105
+ const StyledButton = ({
106
+ type: Component,
107
+ props
108
+ }) => /* @__PURE__ */ _styled(({
106
109
  className
107
- }) => (
108
- // eslint-disable-next-line react/jsx-pascal-case
109
- /* @__PURE__ */ jsx(Element.type, {
110
- ...Element.props,
111
- className: clsx("button", Element.props.selected && "selected", className)
112
- })
113
- ), process.env.NODE_ENV === "production" ? {
110
+ }) => /* @__PURE__ */ jsx(Component, {
111
+ ...props,
112
+ className: clsx("button", props.selected && "selected", className)
113
+ }), process.env.NODE_ENV === "production" ? {
114
114
  target: "e17vrbb40"
115
115
  } : {
116
116
  target: "e17vrbb40",
@@ -201,7 +201,7 @@ const StyledButton = (Element) => /* @__PURE__ */ _styled(({
201
201
  border: `solid 1px ${theme.colors.atmo4}`
202
202
  }
203
203
  }
204
- }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvTXVsdGlCdXR0b24vTXVsdGlCdXR0b24uc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyRkUiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9NdWx0aUJ1dHRvbi9NdWx0aUJ1dHRvbi5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xzeCB9IGZyb20gXCJjbHN4XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1zdHlsZXNcIjtcbmltcG9ydCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwiQGNvcmUvdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUm9vdCA9IHN0eWxlZChcbiAgXCJkaXZcIixcbiAgdHJhbnNpZW50T3B0aW9uc1xuKSgoeyAkdmVydGljYWwgfTogeyAkdmVydGljYWw6IGJvb2xlYW4gfSkgPT4gKHtcbiAgZGlzcGxheTogXCJmbGV4XCIsXG4gIGhlaWdodDogMzIsXG4gIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gIHRyYW5zaXRpb246IFwibm9uZVwiLFxuICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzIsXG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMCxcblxuICAvLyBwcmV2ZW50IHRoZSBmb2N1cyByaW5nIHRvIGJlIGhpZGRlbiBieSBzaWJsaW5nIGhvdmVyIGJhY2tncm91bmRcbiAgXCImPi5IdklzRm9jdXNWaXNpYmxlXCI6IHtcbiAgICB6SW5kZXg6IDUsXG4gIH0sXG5cbiAgLi4uKCR2ZXJ0aWNhbCAmJiB7XG4gICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICBoZWlnaHQ6IFwiYXV0b1wiLFxuICAgIGJ0blNlY29uZGFyeToge1xuICAgICAgZmxleDogXCIxIDEgMjBweFwiLFxuICAgIH0sXG4gICAgXCImIGJ1dHRvbi5idXR0b25cIjoge1xuICAgICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgICAgYm9yZGVyTGVmdDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyUmlnaHQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIGJvcmRlckJvdHRvbTogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICBib3JkZXJMZWZ0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgYm9yZGVyQm90dG9tOiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgICBib3JkZXJSaWdodDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgICBib3JkZXJCb3R0b206IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmZpcnN0LW9mLXR5cGVcIjoge1xuICAgICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyVG9wTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyVG9wOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmxhc3QtY2hpbGRcIjoge1xuICAgICAgICBib3JkZXJCb3R0b206IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOm5vdCg6Zmlyc3Qtb2YtdHlwZSlcIjoge1xuICAgICAgICBtYXJnaW5MZWZ0OiAwLFxuICAgICAgICBtYXJnaW5Ub3A6IC0xLFxuICAgICAgfSxcbiAgICAgIFwiJi5zZWxlY3RlZFwiOiB7XG4gICAgICAgIGhlaWdodDogMzIsXG4gICAgICAgIHdpZHRoOiBgY2FsYygxMDAlICsgMnB4KSAhaW1wb3J0YW50YCxcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgICAuLi4odGhlbWUudHlwb2dyYXBoeS5sYWJlbCBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICAgIHpJbmRleDogMixcbiAgICAgICAgXCImOmhvdmVyLCAmOmZvY3VzXCI6IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzMsXG4gICAgICAgIH0sXG4gICAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgICAgekluZGV4OiAxLFxuICAgICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hdG1vMSxcbiAgICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSksXG59KSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSAoRWxlbWVudCkgPT5cbiAgc3R5bGVkKCh7IGNsYXNzTmFtZSB9KSA9PiAoXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wYXNjYWwtY2FzZVxuICAgIDxFbGVtZW50LnR5cGVcbiAgICAgIHsuLi5FbGVtZW50LnByb3BzfVxuICAgICAgY2xhc3NOYW1lPXtjbHN4KFxuICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICBFbGVtZW50LnByb3BzLnNlbGVjdGVkICYmIFwic2VsZWN0ZWRcIixcbiAgICAgICAgY2xhc3NOYW1lXG4gICAgICApfVxuICAgIC8+XG4gICkpKHtcbiAgICBoZWlnaHQ6IDMyLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBtaW5XaWR0aDogMzIsXG4gICAgbWF4V2lkdGg6IDIwMCxcbiAgICB0cmFuc2l0aW9uOiBcIm5vbmVcIixcbiAgICBmbGV4OiBcIjEgMCAwcHhcIixcbiAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICBib3JkZXJCb3R0b206IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICBib3JkZXJMZWZ0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgIGJvcmRlclJpZ2h0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgIGJvcmRlclJhZGl1czogMCxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmNvbG9ycy5hdG1vMixcbiAgICBcIjpkaXNhYmxlZFwiOiB7IGJhY2tncm91bmRDb2xvcjogdGhlbWUubXVsdGlCdXR0b24uZGlzYWJsZWRCYWNrZ3JvdW5kQ29sb3IgfSxcbiAgICBcIjpob3ZlclwiOiB7XG4gICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyTGVmdDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIGJvcmRlclJpZ2h0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgIH0sXG4gICAgLi4uKHRoZW1lLnR5cG9ncmFwaHkuYm9keSBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgICBcIiY6YWN0aXZlXCI6IHtcbiAgICAgIGJhY2tncm91bmRDb2xvcjogYCR7dGhlbWUuY29sb3JzLmF0bW8zfWAsXG4gICAgfSxcbiAgICBcIiY6ZGlzYWJsZWRcIjoge1xuICAgICAgY29sb3I6IHRoZW1lLmNvbG9ycy5zZWNvbmRhcnlfNjAsXG4gICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgXCImOmhvdmVyXCI6IHtcbiAgICAgICAgYm9yZGVyVG9wOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICBib3JkZXJMZWZ0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgICBib3JkZXJSaWdodDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgICBcIiY6Zmlyc3Qtb2YtdHlwZVwiOiB7XG4gICAgICBib3JkZXJMZWZ0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBib3JkZXJUb3BMZWZ0UmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogdGhlbWUucmFkaWkuYmFzZSxcbiAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBcIiY6bGFzdC1jaGlsZFwiOiB7XG4gICAgICBib3JkZXJSaWdodDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6IHRoZW1lLnJhZGlpLmJhc2UsXG4gICAgICBib3JkZXJCb3R0b21SaWdodFJhZGl1czogdGhlbWUucmFkaWkuYmFzZSxcbiAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICB9LFxuICAgIH0sXG4gICAgXCImOm5vdCg6Zmlyc3Qtb2YtdHlwZSlcIjoge1xuICAgICAgbWFyZ2luTGVmdDogXCItMXB4XCIsXG4gICAgfSxcbiAgICBcIiYuc2VsZWN0ZWRcIjoge1xuICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgaGVpZ2h0OiAzNCxcbiAgICAgIC4uLih0aGVtZS50eXBvZ3JhcGh5LmxhYmVsIGFzIENTU1Byb3BlcnRpZXMpLFxuICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLnNlY29uZGFyeX1gLFxuICAgICAgekluZGV4OiAyLFxuICAgICAgXCImOmhvdmVyXCI6IHtcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8zLFxuICAgICAgICBcIiY6bm90KDpkaXNhYmxlZClcIjoge1xuICAgICAgICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5zZWNvbmRhcnl9YCxcbiAgICAgICAgfSxcbiAgICAgICAgXCImOmRpc2FibGVkXCI6IHtcbiAgICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBcIiY6Zmlyc3Qtb2YtdHlwZSwgJjpsYXN0LWNoaWxkXCI6IHtcbiAgICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLnNlY29uZGFyeX1gLFxuICAgICAgfSxcblxuICAgICAgLy8gcHJldmVudCB0aGUgZm9jdXMgcmluZyB0byBiZSBoaWRkZW4gYnkgc2libGluZyBob3ZlciBiYWNrZ3JvdW5kXG4gICAgICAvLyBldmVuIHdoZW4gc2VsZWN0ZWRcbiAgICAgIFwiJi5IdklzRm9jdXNWaXNpYmxlXCI6IHtcbiAgICAgICAgekluZGV4OiA1LFxuICAgICAgfSxcbiAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgIHpJbmRleDogMSxcbiAgICAgICAgY29sb3I6IHRoZW1lLmNvbG9ycy5zZWNvbmRhcnlfNjAsXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hdG1vMSxcbiAgICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xuIl19 */");
204
+ }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvTXVsdGlCdXR0b24vTXVsdGlCdXR0b24uc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyRkUiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9NdWx0aUJ1dHRvbi9NdWx0aUJ1dHRvbi5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xzeCB9IGZyb20gXCJjbHN4XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1zdHlsZXNcIjtcbmltcG9ydCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwiQGNvcmUvdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUm9vdCA9IHN0eWxlZChcbiAgXCJkaXZcIixcbiAgdHJhbnNpZW50T3B0aW9uc1xuKSgoeyAkdmVydGljYWwgfTogeyAkdmVydGljYWw6IGJvb2xlYW4gfSkgPT4gKHtcbiAgZGlzcGxheTogXCJmbGV4XCIsXG4gIGhlaWdodDogMzIsXG4gIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gIHRyYW5zaXRpb246IFwibm9uZVwiLFxuICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzIsXG4gIHBvc2l0aW9uOiBcInJlbGF0aXZlXCIsXG4gIHpJbmRleDogMCxcblxuICAvLyBwcmV2ZW50IHRoZSBmb2N1cyByaW5nIHRvIGJlIGhpZGRlbiBieSBzaWJsaW5nIGhvdmVyIGJhY2tncm91bmRcbiAgXCImPi5IdklzRm9jdXNWaXNpYmxlXCI6IHtcbiAgICB6SW5kZXg6IDUsXG4gIH0sXG5cbiAgLi4uKCR2ZXJ0aWNhbCAmJiB7XG4gICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICBoZWlnaHQ6IFwiYXV0b1wiLFxuICAgIGJ0blNlY29uZGFyeToge1xuICAgICAgZmxleDogXCIxIDEgMjBweFwiLFxuICAgIH0sXG4gICAgXCImIGJ1dHRvbi5idXR0b25cIjoge1xuICAgICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgICAgYm9yZGVyTGVmdDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyUmlnaHQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIGJvcmRlckJvdHRvbTogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICBib3JkZXJMZWZ0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgYm9yZGVyQm90dG9tOiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgICBib3JkZXJSaWdodDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICAgIGJvcmRlclRvcDogXCJzb2xpZCAxcHggdHJhbnNwYXJlbnRcIixcbiAgICAgICAgICBib3JkZXJCb3R0b206IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmZpcnN0LW9mLXR5cGVcIjoge1xuICAgICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyVG9wTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyVG9wOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOmxhc3QtY2hpbGRcIjoge1xuICAgICAgICBib3JkZXJCb3R0b206IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogXCIycHhcIixcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IFwiMnB4XCIsXG4gICAgICAgIFwiJjpkaXNhYmxlZDpob3ZlclwiOiB7XG4gICAgICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgXCImOm5vdCg6Zmlyc3Qtb2YtdHlwZSlcIjoge1xuICAgICAgICBtYXJnaW5MZWZ0OiAwLFxuICAgICAgICBtYXJnaW5Ub3A6IC0xLFxuICAgICAgfSxcbiAgICAgIFwiJi5zZWxlY3RlZFwiOiB7XG4gICAgICAgIGhlaWdodDogMzIsXG4gICAgICAgIHdpZHRoOiBgY2FsYygxMDAlICsgMnB4KSAhaW1wb3J0YW50YCxcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgICAuLi4odGhlbWUudHlwb2dyYXBoeS5sYWJlbCBhcyBDU1NQcm9wZXJ0aWVzKSxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICAgIHpJbmRleDogMixcbiAgICAgICAgXCImOmhvdmVyLCAmOmZvY3VzXCI6IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzMsXG4gICAgICAgIH0sXG4gICAgICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICAgICAgekluZGV4OiAxLFxuICAgICAgICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5XzYwLFxuICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hdG1vMSxcbiAgICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSksXG59KSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSAoeyB0eXBlOiBDb21wb25lbnQsIHByb3BzIH0pID0+XG4gIHN0eWxlZCgoeyBjbGFzc05hbWUgfSkgPT4gKFxuICAgIDxDb21wb25lbnRcbiAgICAgIHsuLi5wcm9wc31cbiAgICAgIGNsYXNzTmFtZT17Y2xzeChcImJ1dHRvblwiLCBwcm9wcy5zZWxlY3RlZCAmJiBcInNlbGVjdGVkXCIsIGNsYXNzTmFtZSl9XG4gICAgLz5cbiAgKSkoe1xuICAgIGhlaWdodDogMzIsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIG1pbldpZHRoOiAzMixcbiAgICBtYXhXaWR0aDogMjAwLFxuICAgIHRyYW5zaXRpb246IFwibm9uZVwiLFxuICAgIGZsZXg6IFwiMSAwIDBweFwiLFxuICAgIGJvcmRlclRvcDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgIGJvcmRlckJvdHRvbTogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgIGJvcmRlckxlZnQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgYm9yZGVyUmlnaHQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgYm9yZGVyUmFkaXVzOiAwLFxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUuY29sb3JzLmF0bW8yLFxuICAgIFwiOmRpc2FibGVkXCI6IHsgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5tdWx0aUJ1dHRvbi5kaXNhYmxlZEJhY2tncm91bmRDb2xvciB9LFxuICAgIFwiOmhvdmVyXCI6IHtcbiAgICAgIGJvcmRlclRvcDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBib3JkZXJMZWZ0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgYm9yZGVyUmlnaHQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgfSxcbiAgICAuLi4odGhlbWUudHlwb2dyYXBoeS5ib2R5IGFzIENTU1Byb3BlcnRpZXMpLFxuICAgIFwiJjphY3RpdmVcIjoge1xuICAgICAgYmFja2dyb3VuZENvbG9yOiBgJHt0aGVtZS5jb2xvcnMuYXRtbzN9YCxcbiAgICB9LFxuICAgIFwiJjpkaXNhYmxlZFwiOiB7XG4gICAgICBjb2xvcjogdGhlbWUuY29sb3JzLnNlY29uZGFyeV82MCxcbiAgICAgIGJvcmRlclRvcDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICBib3JkZXJUb3A6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICAgIGJvcmRlckxlZnQ6IFwic29saWQgMXB4IHRyYW5zcGFyZW50XCIsXG4gICAgICAgIGJvcmRlclJpZ2h0OiBcInNvbGlkIDFweCB0cmFuc3BhcmVudFwiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIFwiJjpmaXJzdC1vZi10eXBlXCI6IHtcbiAgICAgIGJvcmRlckxlZnQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIGJvcmRlclRvcExlZnRSYWRpdXM6IHRoZW1lLnJhZGlpLmJhc2UsXG4gICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgXCImOmRpc2FibGVkOmhvdmVyXCI6IHtcbiAgICAgICAgYm9yZGVyTGVmdDogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgfSxcbiAgICB9LFxuICAgIFwiJjpsYXN0LWNoaWxkXCI6IHtcbiAgICAgIGJvcmRlclJpZ2h0OiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLmF0bW80fWAsXG4gICAgICBib3JkZXJUb3BSaWdodFJhZGl1czogdGhlbWUucmFkaWkuYmFzZSxcbiAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiB0aGVtZS5yYWRpaS5iYXNlLFxuICAgICAgXCImOmRpc2FibGVkOmhvdmVyXCI6IHtcbiAgICAgICAgYm9yZGVyUmlnaHQ6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBcIiY6bm90KDpmaXJzdC1vZi10eXBlKVwiOiB7XG4gICAgICBtYXJnaW5MZWZ0OiBcIi0xcHhcIixcbiAgICB9LFxuICAgIFwiJi5zZWxlY3RlZFwiOiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzEsXG4gICAgICBoZWlnaHQ6IDM0LFxuICAgICAgLi4uKHRoZW1lLnR5cG9ncmFwaHkubGFiZWwgYXMgQ1NTUHJvcGVydGllcyksXG4gICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICB6SW5kZXg6IDIsXG4gICAgICBcIiY6aG92ZXJcIjoge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYXRtbzMsXG4gICAgICAgIFwiJjpub3QoOmRpc2FibGVkKVwiOiB7XG4gICAgICAgICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUuY29sb3JzLnNlY29uZGFyeX1gLFxuICAgICAgICB9LFxuICAgICAgICBcIiY6ZGlzYWJsZWRcIjoge1xuICAgICAgICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLmNvbG9ycy5hdG1vNH1gLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIFwiJjpmaXJzdC1vZi10eXBlLCAmOmxhc3QtY2hpbGRcIjoge1xuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuc2Vjb25kYXJ5fWAsXG4gICAgICB9LFxuXG4gICAgICAvLyBwcmV2ZW50IHRoZSBmb2N1cyByaW5nIHRvIGJlIGhpZGRlbiBieSBzaWJsaW5nIGhvdmVyIGJhY2tncm91bmRcbiAgICAgIC8vIGV2ZW4gd2hlbiBzZWxlY3RlZFxuICAgICAgXCImLkh2SXNGb2N1c1Zpc2libGVcIjoge1xuICAgICAgICB6SW5kZXg6IDUsXG4gICAgICB9LFxuICAgICAgXCImOmRpc2FibGVkXCI6IHtcbiAgICAgICAgekluZGV4OiAxLFxuICAgICAgICBjb2xvcjogdGhlbWUuY29sb3JzLnNlY29uZGFyeV82MCxcbiAgICAgICAgYmFja2dyb3VuZDogdGhlbWUuY29sb3JzLmF0bW8xLFxuICAgICAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5jb2xvcnMuYXRtbzR9YCxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSk7XG4iXX0= */");
205
205
  export {
206
206
  StyledButton,
207
207
  StyledRoot
@@ -1 +1 @@
1
- {"version":3,"file":"MultiButton.styles.js","sources":["../../../../src/components/MultiButton/MultiButton.styles.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport styled from \"@emotion/styled\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { CSSProperties } from \"react\";\nimport { transientOptions } from \"@core/utils/transientOptions\";\n\nexport const StyledRoot = styled(\n \"div\",\n transientOptions\n)(({ $vertical }: { $vertical: boolean }) => ({\n display: \"flex\",\n height: 32,\n alignItems: \"center\",\n transition: \"none\",\n background: theme.colors.atmo2,\n position: \"relative\",\n zIndex: 0,\n\n // prevent the focus ring to be hidden by sibling hover background\n \"&>.HvIsFocusVisible\": {\n zIndex: 5,\n },\n\n ...($vertical && {\n flexDirection: \"column\",\n height: \"auto\",\n btnSecondary: {\n flex: \"1 1 20px\",\n },\n \"& button.button\": {\n width: \"100%\",\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n \"&:hover\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n },\n },\n \"&:first-of-type\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderTopLeftRadius: \"2px\",\n borderTopRightRadius: \"2px\",\n \"&:disabled:hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:last-child\": {\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderBottomLeftRadius: \"2px\",\n borderBottomRightRadius: \"2px\",\n \"&:disabled:hover\": {\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:not(:first-of-type)\": {\n marginLeft: 0,\n marginTop: -1,\n },\n \"&.selected\": {\n height: 32,\n width: `calc(100% + 2px) !important`,\n background: theme.colors.atmo1,\n ...(theme.typography.label as CSSProperties),\n borderRadius: theme.radii.base,\n border: `solid 1px ${theme.colors.secondary}`,\n zIndex: 2,\n \"&:hover, &:focus\": {\n background: theme.colors.atmo3,\n },\n \"&:disabled\": {\n zIndex: 1,\n color: theme.colors.secondary_60,\n background: theme.colors.atmo1,\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n },\n }),\n}));\n\nexport const StyledButton = (Element) =>\n styled(({ className }) => (\n // eslint-disable-next-line react/jsx-pascal-case\n <Element.type\n {...Element.props}\n className={clsx(\n \"button\",\n Element.props.selected && \"selected\",\n className\n )}\n />\n ))({\n height: 32,\n width: \"100%\",\n minWidth: 32,\n maxWidth: 200,\n transition: \"none\",\n flex: \"1 0 0px\",\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n borderRadius: 0,\n backgroundColor: theme.colors.atmo2,\n \":disabled\": { backgroundColor: theme.multiButton.disabledBackgroundColor },\n \":hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n },\n ...(theme.typography.body as CSSProperties),\n \"&:active\": {\n backgroundColor: `${theme.colors.atmo3}`,\n },\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n \"&:hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n },\n },\n \"&:first-of-type\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderTopLeftRadius: theme.radii.base,\n borderBottomLeftRadius: theme.radii.base,\n \"&:disabled:hover\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:last-child\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTopRightRadius: theme.radii.base,\n borderBottomRightRadius: theme.radii.base,\n \"&:disabled:hover\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:not(:first-of-type)\": {\n marginLeft: \"-1px\",\n },\n \"&.selected\": {\n background: theme.colors.atmo1,\n height: 34,\n ...(theme.typography.label as CSSProperties),\n border: `solid 1px ${theme.colors.secondary}`,\n zIndex: 2,\n \"&:hover\": {\n background: theme.colors.atmo3,\n \"&:not(:disabled)\": {\n border: `solid 1px ${theme.colors.secondary}`,\n },\n \"&:disabled\": {\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:first-of-type, &:last-child\": {\n border: `solid 1px ${theme.colors.secondary}`,\n },\n\n // prevent the focus ring to be hidden by sibling hover background\n // even when selected\n \"&.HvIsFocusVisible\": {\n zIndex: 5,\n },\n \"&:disabled\": {\n zIndex: 1,\n color: theme.colors.secondary_60,\n background: theme.colors.atmo1,\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n });\n"],"names":["StyledRoot","process","env","NODE_ENV","_extends","target","transientOptions","label","$vertical","display","height","alignItems","transition","background","theme","colors","atmo2","position","zIndex","flexDirection","btnSecondary","flex","width","borderLeft","atmo4","borderRight","borderTop","borderBottom","color","secondary_60","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","marginLeft","marginTop","atmo1","typography","borderRadius","radii","base","border","secondary","atmo3","StyledButton","Element","_styled","className","_jsx","type","props","clsx","selected","minWidth","maxWidth","backgroundColor","multiButton","disabledBackgroundColor","body"],"mappings":"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"}
1
+ {"version":3,"file":"MultiButton.styles.js","sources":["../../../../src/components/MultiButton/MultiButton.styles.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport styled from \"@emotion/styled\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { CSSProperties } from \"react\";\nimport { transientOptions } from \"@core/utils/transientOptions\";\n\nexport const StyledRoot = styled(\n \"div\",\n transientOptions\n)(({ $vertical }: { $vertical: boolean }) => ({\n display: \"flex\",\n height: 32,\n alignItems: \"center\",\n transition: \"none\",\n background: theme.colors.atmo2,\n position: \"relative\",\n zIndex: 0,\n\n // prevent the focus ring to be hidden by sibling hover background\n \"&>.HvIsFocusVisible\": {\n zIndex: 5,\n },\n\n ...($vertical && {\n flexDirection: \"column\",\n height: \"auto\",\n btnSecondary: {\n flex: \"1 1 20px\",\n },\n \"& button.button\": {\n width: \"100%\",\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n \"&:hover\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTop: \"solid 1px transparent\",\n borderBottom: \"solid 1px transparent\",\n },\n },\n \"&:first-of-type\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderTopLeftRadius: \"2px\",\n borderTopRightRadius: \"2px\",\n \"&:disabled:hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:last-child\": {\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderBottomLeftRadius: \"2px\",\n borderBottomRightRadius: \"2px\",\n \"&:disabled:hover\": {\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:not(:first-of-type)\": {\n marginLeft: 0,\n marginTop: -1,\n },\n \"&.selected\": {\n height: 32,\n width: `calc(100% + 2px) !important`,\n background: theme.colors.atmo1,\n ...(theme.typography.label as CSSProperties),\n borderRadius: theme.radii.base,\n border: `solid 1px ${theme.colors.secondary}`,\n zIndex: 2,\n \"&:hover, &:focus\": {\n background: theme.colors.atmo3,\n },\n \"&:disabled\": {\n zIndex: 1,\n color: theme.colors.secondary_60,\n background: theme.colors.atmo1,\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n },\n }),\n}));\n\nexport const StyledButton = ({ type: Component, props }) =>\n styled(({ className }) => (\n <Component\n {...props}\n className={clsx(\"button\", props.selected && \"selected\", className)}\n />\n ))({\n height: 32,\n width: \"100%\",\n minWidth: 32,\n maxWidth: 200,\n transition: \"none\",\n flex: \"1 0 0px\",\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n borderRadius: 0,\n backgroundColor: theme.colors.atmo2,\n \":disabled\": { backgroundColor: theme.multiButton.disabledBackgroundColor },\n \":hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n },\n ...(theme.typography.body as CSSProperties),\n \"&:active\": {\n backgroundColor: `${theme.colors.atmo3}`,\n },\n \"&:disabled\": {\n color: theme.colors.secondary_60,\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n \"&:hover\": {\n borderTop: `solid 1px ${theme.colors.atmo4}`,\n borderBottom: `solid 1px ${theme.colors.atmo4}`,\n borderLeft: \"solid 1px transparent\",\n borderRight: \"solid 1px transparent\",\n },\n },\n \"&:first-of-type\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n borderTopLeftRadius: theme.radii.base,\n borderBottomLeftRadius: theme.radii.base,\n \"&:disabled:hover\": {\n borderLeft: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:last-child\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n borderTopRightRadius: theme.radii.base,\n borderBottomRightRadius: theme.radii.base,\n \"&:disabled:hover\": {\n borderRight: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:not(:first-of-type)\": {\n marginLeft: \"-1px\",\n },\n \"&.selected\": {\n background: theme.colors.atmo1,\n height: 34,\n ...(theme.typography.label as CSSProperties),\n border: `solid 1px ${theme.colors.secondary}`,\n zIndex: 2,\n \"&:hover\": {\n background: theme.colors.atmo3,\n \"&:not(:disabled)\": {\n border: `solid 1px ${theme.colors.secondary}`,\n },\n \"&:disabled\": {\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n \"&:first-of-type, &:last-child\": {\n border: `solid 1px ${theme.colors.secondary}`,\n },\n\n // prevent the focus ring to be hidden by sibling hover background\n // even when selected\n \"&.HvIsFocusVisible\": {\n zIndex: 5,\n },\n \"&:disabled\": {\n zIndex: 1,\n color: theme.colors.secondary_60,\n background: theme.colors.atmo1,\n border: `solid 1px ${theme.colors.atmo4}`,\n },\n },\n });\n"],"names":["StyledRoot","process","env","NODE_ENV","_extends","target","transientOptions","label","$vertical","display","height","alignItems","transition","background","theme","colors","atmo2","position","zIndex","flexDirection","btnSecondary","flex","width","borderLeft","atmo4","borderRight","borderTop","borderBottom","color","secondary_60","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","marginLeft","marginTop","atmo1","typography","borderRadius","radii","base","border","secondary","atmo3","StyledButton","type","Component","props","className","clsx","selected","minWidth","maxWidth","backgroundColor","multiButton","disabledBackgroundColor","body"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","sources":["../../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import { HTMLAttributes, useCallback, useEffect } from \"react\";\nimport { Hidden } from \"@mui/material\";\nimport { HvInput, HvInputProps, HvTypography } from \"@core/components\";\nimport {\n Start,\n End,\n Backwards,\n Forwards,\n} from \"@hitachivantara/uikit-react-icons\";\nimport { HvBaseProps } from \"@core/types\";\nimport { ExtractNames, isKeypress, keyboardCodes, setId } from \"@core/utils\";\nimport { useLabels } from \"@core/hooks\";\nimport HvSelect, { Option } from \"./Select\";\nimport { staticClasses, useClasses } from \"./Pagination.styles\";\nimport { usePageInput, getSafePage, setColor } from \"./utils\";\nimport ButtonIconTooltip from \"./ButtonIconTooltip\";\n\nexport { staticClasses as paginationClasses };\n\nexport type HvPaginationClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPaginationLabels {\n /** The show label. */\n pageSizePrev?: string;\n /** Indicate the units of the page size selection. */\n pageSizeEntryName?: string;\n /** Used for the aria-label of the selection of number of unit.s */\n pageSizeSelectorDescription?: string;\n /** Separator of current page and total pages. */\n pagesSeparator?: string;\n /** Title of button `firstPage`. */\n paginationFirstPageTitle?: string;\n /** Title of button `previousPage`. */\n paginationPreviousPageTitle?: string;\n /** Title of button `nextPage`. */\n paginationNextPageTitle?: string;\n /** Title of button `lastPage`. */\n paginationLastPageTitle?: string;\n /** Aria-label passed to the page input. */\n paginationInputLabel?: string;\n /** Aria-label of the first page button */\n firstPage?: string;\n /** Aria-label of the previous page button */\n previousPage?: string;\n /** Aria-label of the next page button */\n nextPage?: string;\n /** Aria-label of the last page button */\n lastPage?: string;\n}\n\nexport interface HvPaginationProps extends HvBaseProps {\n /** The number of pages the component has. */\n pages?: number;\n /** The currently selected page (0-indexed). */\n page?: number;\n /** Controls whether the left page size mechanism should be visible. */\n showPageSizeOptions?: boolean;\n /** The array of possible page sizes for the dropdown. */\n pageSizeOptions?: number[];\n /** The currently selected page size. */\n pageSize?: number;\n /** Controls whether the central page changing mechanism should be visible. */\n showPageJump?: boolean;\n /** Controls whether the previous/first page buttons are enabled. */\n canPrevious?: boolean;\n /** Controls whether the next/last page buttons are enabled. */\n canNext?: boolean;\n /** Function called when the page changes. */\n onPageChange?: (page: number) => void;\n /** Function called when the page size changes. */\n onPageSizeChange?: (pageSize: number) => void;\n /** An object containing all the labels for the component. */\n labels?: HvPaginationLabels;\n /** Other props to show page component. */\n showPageProps?: HTMLAttributes<HTMLDivElement>;\n /** Other props to pagination component. */\n navigationProps?: HTMLAttributes<HTMLDivElement>;\n /** Extra properties passed to the input component representing the current pages. */\n currentPageInputProps?: HvInputProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: Partial<HvPaginationClasses>;\n}\n\nconst DEFAULT_LABELS = {\n pageSizePrev: \"Show\",\n pageSizeEntryName: \"rows\",\n pageSizeSelectorDescription: \"Select how many to display\",\n pagesSeparator: \"/\",\n paginationFirstPageTitle: \"First page\",\n paginationPreviousPageTitle: \"Previous page\",\n paginationNextPageTitle: \"Next page\",\n paginationLastPageTitle: \"Last page\",\n paginationInputLabel: \"Current page\",\n firstPage: \"First Page\",\n previousPage: \"Previous Page\",\n nextPage: \"Next Page\",\n lastPage: \"Last Page\",\n};\n\nconst { Enter } = keyboardCodes;\n\nconst defaultPageSizeOptions = [5, 10, 20, 25, 50, 100];\n\n/**\n * Pagination is the process of dividing a document into discrete pages. It relates to how users interact\n * with structured content on a website or application.\n */\nexport const HvPagination = ({\n classes: classesProp = {},\n className,\n id,\n pages = 1,\n page = 0,\n showPageSizeOptions = true,\n pageSizeOptions = defaultPageSizeOptions,\n pageSize = defaultPageSizeOptions[1],\n showPageJump = true,\n canPrevious = false,\n canNext = false,\n onPageChange,\n onPageSizeChange,\n labels: labelsProp,\n showPageProps,\n navigationProps,\n currentPageInputProps,\n ...others\n}: HvPaginationProps) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n const [pageInput, handleInputChange] = usePageInput(page);\n const { classes, cx } = useClasses(classesProp);\n\n const changePage = useCallback(\n (newPage: number) => {\n const safePage: number = getSafePage(newPage, page, pages);\n\n onPageChange?.(safePage);\n handleInputChange(null, safePage + 1);\n },\n [page, pages, onPageChange, handleInputChange]\n );\n\n useEffect(() => {\n if (page >= pages && pages > 0) {\n changePage(page);\n }\n }, [changePage, page, pages]);\n\n useEffect(() => {\n if (pageInput !== page + 1) {\n handleInputChange(null, page + 1);\n }\n\n // we only want to \"fix\" the input's display value when `page` property changed\n // (either externally or when internally committed - onBlur or Enter),\n // not while editing the input.\n // breaking a rule of hooks isn't ideal and it's just a hack for fixing\n // a bug preventing properly controlling of the `page` property.\n // fixing it some other way would potentially introduce a breaking change.\n }, [handleInputChange, page]);\n\n const renderPageJump = () => (\n <div className={classes.pageJump}>\n <HvInput\n id={setId(id, \"currentPage\")}\n labels={labels}\n inputProps={{\n \"aria-label\": labels?.paginationInputLabel,\n // We really want the native number input\n type: \"number\",\n }}\n classes={{\n root: classes?.pageSizeInputContainer,\n input: classes?.pageSizeInput,\n inputRoot: classes?.pageSizeInputRoot,\n }}\n onChange={(event, value) => handleInputChange(event, Number(value))}\n value={String(pageInput)}\n onBlur={(evt, value) => changePage(Number(value) - 1)}\n onKeyDown={(evt, value) =>\n isKeypress(evt, Enter) && changePage(Number(value) - 1)\n }\n disabled={pageSize === 0}\n disableClear\n {...currentPageInputProps}\n />\n </div>\n );\n\n return (\n <div id={id} className={cx(classes.root, className)} {...others}>\n <div className={classes.pageSizeOptions} {...showPageProps}>\n {showPageSizeOptions && (\n <>\n <Hidden xsDown>\n <HvTypography\n component=\"span\"\n className={classes?.pageSizeTextContainer}\n >\n {labels?.pageSizePrev}\n </HvTypography>\n </Hidden>\n <HvSelect\n id={setId(id, \"pageSize\")}\n disabled={pageSize === 0}\n className={classes.pageSizeOptionsSelect}\n aria-label={labels?.pageSizeSelectorDescription}\n onChange={(_, val: number) => onPageSizeChange?.(val)}\n value={pageSize}\n >\n {pageSizeOptions.map((option) => (\n <Option key={option} value={option}>\n {option}\n </Option>\n ))}\n </HvSelect>\n <Hidden xsDown>\n <HvTypography\n component=\"span\"\n className={classes.pageSizeTextContainer}\n >\n {labels?.pageSizeEntryName}\n </HvTypography>\n </Hidden>\n </>\n )}\n </div>\n <div className={classes.pageNavigator} {...navigationProps}>\n <ButtonIconTooltip\n id={setId(id, \"firstPage-button\")}\n aria-label={labels?.firstPage}\n className={classes.iconContainer}\n disabled={!canPrevious}\n onClick={() => changePage(0)}\n tooltip={labels?.paginationFirstPageTitle}\n >\n <Start className={classes.icon} color={setColor(!canPrevious)} />\n </ButtonIconTooltip>\n <ButtonIconTooltip\n id={setId(id, \"previousPage-button\")}\n aria-label={labels?.previousPage}\n className={classes.iconContainer}\n disabled={!canPrevious}\n onClick={() => changePage(page - 1)}\n tooltip={labels?.paginationPreviousPageTitle}\n >\n <Backwards className={classes.icon} color={setColor(!canPrevious)} />\n </ButtonIconTooltip>\n <div className={classes.pageInfo}>\n {showPageJump ? (\n renderPageJump()\n ) : (\n <HvTypography component=\"span\">{`${page + 1}`}</HvTypography>\n )}\n <HvTypography component=\"span\">{`${labels?.pagesSeparator} `}</HvTypography>\n <HvTypography component=\"span\" id={setId(id, \"totalPages\")}>\n {pages}\n </HvTypography>\n </div>\n <ButtonIconTooltip\n id={setId(id, \"nextPage-button\")}\n aria-label={labels?.nextPage}\n className={classes.iconContainer}\n disabled={!canNext}\n onClick={() => changePage(page + 1)}\n tooltip={labels?.paginationNextPageTitle}\n >\n <Forwards className={classes.icon} color={setColor(!canNext)} />\n </ButtonIconTooltip>\n <ButtonIconTooltip\n id={setId(id, \"lastPage-button\")}\n aria-label={labels?.lastPage}\n className={classes.iconContainer}\n disabled={!canNext}\n onClick={() => changePage(pages - 1)}\n tooltip={labels?.paginationLastPageTitle}\n >\n <End className={classes.icon} color={setColor(!canNext)} />\n </ButtonIconTooltip>\n </div>\n </div>\n );\n};\n"],"names":["DEFAULT_LABELS","pageSizePrev","pageSizeEntryName","pageSizeSelectorDescription","pagesSeparator","paginationFirstPageTitle","paginationPreviousPageTitle","paginationNextPageTitle","paginationLastPageTitle","paginationInputLabel","firstPage","previousPage","nextPage","lastPage","Enter","keyboardCodes","defaultPageSizeOptions","HvPagination","classes","classesProp","className","id","pages","page","showPageSizeOptions","pageSizeOptions","pageSize","showPageJump","canPrevious","canNext","onPageChange","onPageSizeChange","labels","labelsProp","showPageProps","navigationProps","currentPageInputProps","others","useLabels","pageInput","handleInputChange","usePageInput","cx","useClasses","changePage","useCallback","newPage","safePage","getSafePage","useEffect","renderPageJump","_jsx","pageJump","children","HvInput","setId","inputProps","type","root","pageSizeInputContainer","input","pageSizeInput","inputRoot","pageSizeInputRoot","onChange","event","value","Number","String","onBlur","evt","onKeyDown","isKeypress","disabled","disableClear","_jsxs","_Fragment","Hidden","xsDown","HvTypography","component","pageSizeTextContainer","HvSelect","pageSizeOptionsSelect","_","val","map","option","Option","pageNavigator","ButtonIconTooltip","iconContainer","onClick","tooltip","Start","icon","color","setColor","Backwards","pageInfo","Forwards","End"],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.js","sources":["../../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import { HTMLAttributes, useCallback, useEffect } from \"react\";\nimport { Hidden } from \"@mui/material\";\nimport { HvInput, HvInputProps, HvTypography } from \"@core/components\";\nimport {\n Start,\n End,\n Backwards,\n Forwards,\n} from \"@hitachivantara/uikit-react-icons\";\nimport { HvBaseProps } from \"@core/types\";\nimport { ExtractNames, isKeypress, keyboardCodes, setId } from \"@core/utils\";\nimport { useLabels } from \"@core/hooks\";\nimport HvSelect, { Option } from \"./Select\";\nimport { staticClasses, useClasses } from \"./Pagination.styles\";\nimport { usePageInput, getSafePage, setColor } from \"./utils\";\nimport ButtonIconTooltip from \"./ButtonIconTooltip\";\n\nexport { staticClasses as paginationClasses };\n\nexport type HvPaginationClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvPaginationLabels {\n /** The show label. */\n pageSizePrev?: string;\n /** Indicate the units of the page size selection. */\n pageSizeEntryName?: string;\n /** Used for the aria-label of the selection of number of unit.s */\n pageSizeSelectorDescription?: string;\n /** Separator of current page and total pages. */\n pagesSeparator?: string;\n /** Title of button `firstPage`. */\n paginationFirstPageTitle?: string;\n /** Title of button `previousPage`. */\n paginationPreviousPageTitle?: string;\n /** Title of button `nextPage`. */\n paginationNextPageTitle?: string;\n /** Title of button `lastPage`. */\n paginationLastPageTitle?: string;\n /** Aria-label passed to the page input. */\n paginationInputLabel?: string;\n /** Aria-label of the first page button */\n firstPage?: string;\n /** Aria-label of the previous page button */\n previousPage?: string;\n /** Aria-label of the next page button */\n nextPage?: string;\n /** Aria-label of the last page button */\n lastPage?: string;\n}\n\nexport interface HvPaginationProps extends HvBaseProps {\n /** The number of pages the component has. */\n pages?: number;\n /** The currently selected page (0-indexed). */\n page?: number;\n /** Controls whether the left page size mechanism should be visible. */\n showPageSizeOptions?: boolean;\n /** The array of possible page sizes for the dropdown. */\n pageSizeOptions?: number[];\n /** The currently selected page size. */\n pageSize?: number;\n /** Controls whether the central page changing mechanism should be visible. */\n showPageJump?: boolean;\n /** Controls whether the previous/first page buttons are enabled. */\n canPrevious?: boolean;\n /** Controls whether the next/last page buttons are enabled. */\n canNext?: boolean;\n /** Function called when the page changes. */\n onPageChange?: (page: number) => void;\n /** Function called when the page size changes. */\n onPageSizeChange?: (pageSize: number) => void;\n /** An object containing all the labels for the component. */\n labels?: HvPaginationLabels;\n /** Other props to show page component. */\n showPageProps?: HTMLAttributes<HTMLDivElement>;\n /** Other props to pagination component. */\n navigationProps?: HTMLAttributes<HTMLDivElement>;\n /** Extra properties passed to the input component representing the current pages. */\n currentPageInputProps?: HvInputProps;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: Partial<HvPaginationClasses>;\n}\n\nconst DEFAULT_LABELS = {\n pageSizePrev: \"Show\",\n pageSizeEntryName: \"rows\",\n pageSizeSelectorDescription: \"Select how many to display\",\n pagesSeparator: \"/\",\n paginationFirstPageTitle: \"First page\",\n paginationPreviousPageTitle: \"Previous page\",\n paginationNextPageTitle: \"Next page\",\n paginationLastPageTitle: \"Last page\",\n paginationInputLabel: \"Current page\",\n firstPage: \"First Page\",\n previousPage: \"Previous Page\",\n nextPage: \"Next Page\",\n lastPage: \"Last Page\",\n};\n\nconst { Enter } = keyboardCodes;\n\nconst defaultPageSizeOptions = [5, 10, 20, 25, 50, 100];\n\n/**\n * Pagination is the process of dividing a document into discrete pages. It relates to how users interact\n * with structured content on a website or application.\n */\nexport const HvPagination = ({\n classes: classesProp = {},\n className,\n id,\n pages = 1,\n page = 0,\n showPageSizeOptions = true,\n pageSizeOptions = defaultPageSizeOptions,\n pageSize = defaultPageSizeOptions[1],\n showPageJump = true,\n canPrevious = false,\n canNext = false,\n onPageChange,\n onPageSizeChange,\n labels: labelsProp,\n showPageProps,\n navigationProps,\n currentPageInputProps,\n ...others\n}: HvPaginationProps) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n const [pageInput, handleInputChange] = usePageInput(page);\n const { classes, cx } = useClasses(classesProp);\n\n const changePage = useCallback(\n (newPage: number) => {\n const safePage: number = getSafePage(newPage, page, pages);\n\n onPageChange?.(safePage);\n handleInputChange(null, safePage + 1);\n },\n [page, pages, onPageChange, handleInputChange]\n );\n\n useEffect(() => {\n if (page >= pages && pages > 0) {\n changePage(page);\n }\n }, [changePage, page, pages]);\n\n useEffect(() => {\n if (pageInput !== page + 1) {\n handleInputChange(null, page + 1);\n }\n\n // we only want to \"fix\" the input's display value when `page` property changed\n // (either externally or when internally committed - onBlur or Enter),\n // not while editing the input.\n // breaking a rule of hooks isn't ideal and it's just a hack for fixing\n // a bug preventing properly controlling of the `page` property.\n // fixing it some other way would potentially introduce a breaking change.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [handleInputChange, page]);\n\n const renderPageJump = () => (\n <div className={classes.pageJump}>\n <HvInput\n id={setId(id, \"currentPage\")}\n labels={labels}\n inputProps={{\n \"aria-label\": labels?.paginationInputLabel,\n // We really want the native number input\n type: \"number\",\n }}\n classes={{\n root: classes?.pageSizeInputContainer,\n input: classes?.pageSizeInput,\n inputRoot: classes?.pageSizeInputRoot,\n }}\n onChange={(event, value) => handleInputChange(event, Number(value))}\n value={String(pageInput)}\n onBlur={(evt, value) => changePage(Number(value) - 1)}\n onKeyDown={(evt, value) =>\n isKeypress(evt, Enter) && changePage(Number(value) - 1)\n }\n disabled={pageSize === 0}\n disableClear\n {...currentPageInputProps}\n />\n </div>\n );\n\n return (\n <div id={id} className={cx(classes.root, className)} {...others}>\n <div className={classes.pageSizeOptions} {...showPageProps}>\n {showPageSizeOptions && (\n <>\n <Hidden xsDown>\n <HvTypography\n component=\"span\"\n className={classes?.pageSizeTextContainer}\n >\n {labels?.pageSizePrev}\n </HvTypography>\n </Hidden>\n <HvSelect\n id={setId(id, \"pageSize\")}\n disabled={pageSize === 0}\n className={classes.pageSizeOptionsSelect}\n aria-label={labels?.pageSizeSelectorDescription}\n onChange={(_, val: number) => onPageSizeChange?.(val)}\n value={pageSize}\n >\n {pageSizeOptions.map((option) => (\n <Option key={option} value={option}>\n {option}\n </Option>\n ))}\n </HvSelect>\n <Hidden xsDown>\n <HvTypography\n component=\"span\"\n className={classes.pageSizeTextContainer}\n >\n {labels?.pageSizeEntryName}\n </HvTypography>\n </Hidden>\n </>\n )}\n </div>\n <div className={classes.pageNavigator} {...navigationProps}>\n <ButtonIconTooltip\n id={setId(id, \"firstPage-button\")}\n aria-label={labels?.firstPage}\n className={classes.iconContainer}\n disabled={!canPrevious}\n onClick={() => changePage(0)}\n tooltip={labels?.paginationFirstPageTitle}\n >\n <Start className={classes.icon} color={setColor(!canPrevious)} />\n </ButtonIconTooltip>\n <ButtonIconTooltip\n id={setId(id, \"previousPage-button\")}\n aria-label={labels?.previousPage}\n className={classes.iconContainer}\n disabled={!canPrevious}\n onClick={() => changePage(page - 1)}\n tooltip={labels?.paginationPreviousPageTitle}\n >\n <Backwards className={classes.icon} color={setColor(!canPrevious)} />\n </ButtonIconTooltip>\n <div className={classes.pageInfo}>\n {showPageJump ? (\n renderPageJump()\n ) : (\n <HvTypography component=\"span\">{`${page + 1}`}</HvTypography>\n )}\n <HvTypography component=\"span\">{`${labels?.pagesSeparator} `}</HvTypography>\n <HvTypography component=\"span\" id={setId(id, \"totalPages\")}>\n {pages}\n </HvTypography>\n </div>\n <ButtonIconTooltip\n id={setId(id, \"nextPage-button\")}\n aria-label={labels?.nextPage}\n className={classes.iconContainer}\n disabled={!canNext}\n onClick={() => changePage(page + 1)}\n tooltip={labels?.paginationNextPageTitle}\n >\n <Forwards className={classes.icon} color={setColor(!canNext)} />\n </ButtonIconTooltip>\n <ButtonIconTooltip\n id={setId(id, \"lastPage-button\")}\n aria-label={labels?.lastPage}\n className={classes.iconContainer}\n disabled={!canNext}\n onClick={() => changePage(pages - 1)}\n tooltip={labels?.paginationLastPageTitle}\n >\n <End className={classes.icon} color={setColor(!canNext)} />\n </ButtonIconTooltip>\n </div>\n </div>\n );\n};\n"],"names":["DEFAULT_LABELS","pageSizePrev","pageSizeEntryName","pageSizeSelectorDescription","pagesSeparator","paginationFirstPageTitle","paginationPreviousPageTitle","paginationNextPageTitle","paginationLastPageTitle","paginationInputLabel","firstPage","previousPage","nextPage","lastPage","Enter","keyboardCodes","defaultPageSizeOptions","HvPagination","classes","classesProp","className","id","pages","page","showPageSizeOptions","pageSizeOptions","pageSize","showPageJump","canPrevious","canNext","onPageChange","onPageSizeChange","labels","labelsProp","showPageProps","navigationProps","currentPageInputProps","others","useLabels","pageInput","handleInputChange","usePageInput","cx","useClasses","changePage","useCallback","newPage","safePage","getSafePage","useEffect","renderPageJump","_jsx","pageJump","children","HvInput","setId","inputProps","type","root","pageSizeInputContainer","input","pageSizeInput","inputRoot","pageSizeInputRoot","onChange","event","value","Number","String","onBlur","evt","onKeyDown","isKeypress","disabled","disableClear","_jsxs","_Fragment","Hidden","xsDown","HvTypography","component","pageSizeTextContainer","HvSelect","pageSizeOptionsSelect","_","val","map","option","Option","pageNavigator","ButtonIconTooltip","iconContainer","onClick","tooltip","Start","icon","color","setColor","Backwards","pageInfo","Forwards","End"],"mappings":"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"}
@@ -1,8 +1,6 @@
1
1
  import { theme } from "@hitachivantara/uikit-styles";
2
2
  import { staticClasses as staticClasses$1 } from "../Input/Input.styles.js";
3
- import "react";
4
- import "@hitachivantara/uikit-react-icons";
5
- import "@emotion/react/jsx-runtime";
3
+ import "../Input/Input.js";
6
4
  import { createClasses } from "../../utils/classes.js";
7
5
  const hoverColor = theme.colors.atmo3;
8
6
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.styles.js","sources":["../../../../src/components/Pagination/Pagination.styles.tsx"],"sourcesContent":["import { CSSProperties } from \"react\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { inputClasses } from \"@core/components\";\nimport { createClasses } from \"@core/utils\";\n\nconst hoverColor = theme.colors.atmo3;\n\nexport const { staticClasses, useClasses } = createClasses(\"HvPagination\", {\n /** Styles applied to the component root class. */\n root: {\n position: \"relative\",\n zIndex: 1,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"stretch\",\n flexWrap: \"wrap\",\n marginTop: theme.space.sm,\n [`& $pageSizeInput`]: {\n ...(theme.typography.label as CSSProperties),\n },\n [`& $pageSizeInputContainer`]: {\n width: 40,\n minWidth: 40,\n maxWidth: theme.spacing(8),\n },\n [`&& $pageSizeInputRoot`]: {\n backgroundColor: \"transparent\",\n \"&:focus, &:focus-within, &:hover\": {\n backgroundColor: hoverColor,\n },\n },\n },\n /** Styles applied to the page size selector container. */\n pageSizeOptions: {\n display: \"flex\",\n position: \"absolute\",\n height: 32,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n left: \"0\",\n },\n /** Styles applied to the element that holds the labels for the page size selector */\n pageSizeTextContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: \"32px\",\n padding: \"8px 0\",\n },\n /** Styles applied to the page size selector dropdown element. */\n pageSizeOptionsSelect: {\n display: \"inline-block\",\n margin: `0px ${theme.space.xs}`,\n width: \"auto\",\n },\n /** Styles applied to the page navigation container. */\n pageNavigator: {\n display: \"flex\",\n alignItems: \"stretch\",\n height: \"32px\",\n gap: 8,\n },\n /** Styles applied to each navigation `HvButton` icon container. */\n iconContainer: {\n padding: 0,\n },\n /** Styles applied to each navigation icon. */\n icon: {},\n /** Styles applied to the central page information container. */\n pageInfo: {\n display: \"inline-block\",\n whiteSpace: \"nowrap\",\n height: \"32px\",\n lineHeight: \"32px\",\n },\n /** Styles applied to the page selector input container. */\n pageJump: {\n display: \"inline-block\",\n marginRight: `4px`,\n [`& .${inputClasses.inputRoot}`]: {\n [`& $pageSizeInput`]: {\n paddingLeft: `4px`,\n paddingRight: `4px`,\n margin: 0,\n textAlign: \"center\",\n borderRadius: theme.radii.base,\n MozAppearance: \"textfield\",\n \"&:focus\": {\n backgroundColor: hoverColor,\n },\n \"&:hover\": {\n cursor: \"pointer\",\n },\n },\n },\n },\n /** Styles passed down to the page selector Input component as `input`. */\n pageSizeInput: {},\n /** Styles passed down to the page selector Input root. */\n pageSizeInputRoot: {},\n /** Styles passed down to the page selector Input component as `container`. */\n pageSizeInputContainer: {},\n});\n"],"names":["hoverColor","theme","colors","atmo3","staticClasses","useClasses","createClasses","root","position","zIndex","display","justifyContent","alignItems","flexWrap","marginTop","space","sm","typography","label","width","minWidth","maxWidth","spacing","backgroundColor","pageSizeOptions","height","top","transform","left","pageSizeTextContainer","padding","pageSizeOptionsSelect","margin","xs","pageNavigator","gap","iconContainer","icon","pageInfo","whiteSpace","lineHeight","pageJump","marginRight","inputClasses","inputRoot","paddingLeft","paddingRight","textAlign","borderRadius","radii","base","MozAppearance","cursor","pageSizeInput","pageSizeInputRoot","pageSizeInputContainer"],"mappings":";;;;;;AAKA,MAAMA,aAAaC,MAAMC,OAAOC;AAEnB,MAAA;AAAA,EAAEC;AAAAA,EAAeC;AAAW,IAAIC,cAAc,gBAAgB;AAAA;AAAA,EAEzEC,MAAM;AAAA,IACJC,UAAU;AAAA,IACVC,QAAQ;AAAA,IACRC,SAAS;AAAA,IACTC,gBAAgB;AAAA,IAChBC,YAAY;AAAA,IACZC,UAAU;AAAA,IACVC,WAAWb,MAAMc,MAAMC;AAAAA,IACvB,CAAE,kBAAiB,GAAG;AAAA,MACpB,GAAIf,MAAMgB,WAAWC;AAAAA,IACvB;AAAA,IACA,CAAE,2BAA0B,GAAG;AAAA,MAC7BC,OAAO;AAAA,MACPC,UAAU;AAAA,MACVC,UAAUpB,MAAMqB,QAAQ,CAAC;AAAA,IAC3B;AAAA,IACA,CAAE,uBAAsB,GAAG;AAAA,MACzBC,iBAAiB;AAAA,MACjB,oCAAoC;AAAA,QAClCA,iBAAiBvB;AAAAA,MACnB;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAEAwB,iBAAiB;AAAA,IACfd,SAAS;AAAA,IACTF,UAAU;AAAA,IACViB,QAAQ;AAAA,IACRC,KAAK;AAAA,IACLC,WAAW;AAAA,IACXC,MAAM;AAAA,EACR;AAAA;AAAA,EAEAC,uBAAuB;AAAA,IACrBnB,SAAS;AAAA,IACTE,YAAY;AAAA,IACZD,gBAAgB;AAAA,IAChBc,QAAQ;AAAA,IACRK,SAAS;AAAA,EACX;AAAA;AAAA,EAEAC,uBAAuB;AAAA,IACrBrB,SAAS;AAAA,IACTsB,QAAS,OAAM/B,MAAMc,MAAMkB;AAAAA,IAC3Bd,OAAO;AAAA,EACT;AAAA;AAAA,EAEAe,eAAe;AAAA,IACbxB,SAAS;AAAA,IACTE,YAAY;AAAA,IACZa,QAAQ;AAAA,IACRU,KAAK;AAAA,EACP;AAAA;AAAA,EAEAC,eAAe;AAAA,IACbN,SAAS;AAAA,EACX;AAAA;AAAA,EAEAO,MAAM,CAAC;AAAA;AAAA,EAEPC,UAAU;AAAA,IACR5B,SAAS;AAAA,IACT6B,YAAY;AAAA,IACZd,QAAQ;AAAA,IACRe,YAAY;AAAA,EACd;AAAA;AAAA,EAEAC,UAAU;AAAA,IACR/B,SAAS;AAAA,IACTgC,aAAc;AAAA,IACd,CAAE,MAAKC,gBAAaC,WAAW,GAAG;AAAA,MAChC,CAAE,kBAAiB,GAAG;AAAA,QACpBC,aAAc;AAAA,QACdC,cAAe;AAAA,QACfd,QAAQ;AAAA,QACRe,WAAW;AAAA,QACXC,cAAc/C,MAAMgD,MAAMC;AAAAA,QAC1BC,eAAe;AAAA,QACf,WAAW;AAAA,UACT5B,iBAAiBvB;AAAAA,QACnB;AAAA,QACA,WAAW;AAAA,UACToD,QAAQ;AAAA,QACV;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAEAC,eAAe,CAAC;AAAA;AAAA,EAEhBC,mBAAmB,CAAC;AAAA;AAAA,EAEpBC,wBAAwB,CAAC;AAC3B,CAAC;"}
1
+ {"version":3,"file":"Pagination.styles.js","sources":["../../../../src/components/Pagination/Pagination.styles.tsx"],"sourcesContent":["import { CSSProperties } from \"react\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { inputClasses } from \"@core/components\";\nimport { createClasses } from \"@core/utils\";\n\nconst hoverColor = theme.colors.atmo3;\n\nexport const { staticClasses, useClasses } = createClasses(\"HvPagination\", {\n /** Styles applied to the component root class. */\n root: {\n position: \"relative\",\n zIndex: 1,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"stretch\",\n flexWrap: \"wrap\",\n marginTop: theme.space.sm,\n [`& $pageSizeInput`]: {\n ...(theme.typography.label as CSSProperties),\n },\n [`& $pageSizeInputContainer`]: {\n width: 40,\n minWidth: 40,\n maxWidth: theme.spacing(8),\n },\n [`&& $pageSizeInputRoot`]: {\n backgroundColor: \"transparent\",\n \"&:focus, &:focus-within, &:hover\": {\n backgroundColor: hoverColor,\n },\n },\n },\n /** Styles applied to the page size selector container. */\n pageSizeOptions: {\n display: \"flex\",\n position: \"absolute\",\n height: 32,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n left: \"0\",\n },\n /** Styles applied to the element that holds the labels for the page size selector */\n pageSizeTextContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: \"32px\",\n padding: \"8px 0\",\n },\n /** Styles applied to the page size selector dropdown element. */\n pageSizeOptionsSelect: {\n display: \"inline-block\",\n margin: `0px ${theme.space.xs}`,\n width: \"auto\",\n },\n /** Styles applied to the page navigation container. */\n pageNavigator: {\n display: \"flex\",\n alignItems: \"stretch\",\n height: \"32px\",\n gap: 8,\n },\n /** Styles applied to each navigation `HvButton` icon container. */\n iconContainer: {\n padding: 0,\n },\n /** Styles applied to each navigation icon. */\n icon: {},\n /** Styles applied to the central page information container. */\n pageInfo: {\n display: \"inline-block\",\n whiteSpace: \"nowrap\",\n height: \"32px\",\n lineHeight: \"32px\",\n },\n /** Styles applied to the page selector input container. */\n pageJump: {\n display: \"inline-block\",\n marginRight: `4px`,\n [`& .${inputClasses.inputRoot}`]: {\n [`& $pageSizeInput`]: {\n paddingLeft: `4px`,\n paddingRight: `4px`,\n margin: 0,\n textAlign: \"center\",\n borderRadius: theme.radii.base,\n MozAppearance: \"textfield\",\n \"&:focus\": {\n backgroundColor: hoverColor,\n },\n \"&:hover\": {\n cursor: \"pointer\",\n },\n },\n },\n },\n /** Styles passed down to the page selector Input component as `input`. */\n pageSizeInput: {},\n /** Styles passed down to the page selector Input root. */\n pageSizeInputRoot: {},\n /** Styles passed down to the page selector Input component as `container`. */\n pageSizeInputContainer: {},\n});\n"],"names":["hoverColor","theme","colors","atmo3","staticClasses","useClasses","createClasses","root","position","zIndex","display","justifyContent","alignItems","flexWrap","marginTop","space","sm","typography","label","width","minWidth","maxWidth","spacing","backgroundColor","pageSizeOptions","height","top","transform","left","pageSizeTextContainer","padding","pageSizeOptionsSelect","margin","xs","pageNavigator","gap","iconContainer","icon","pageInfo","whiteSpace","lineHeight","pageJump","marginRight","inputClasses","inputRoot","paddingLeft","paddingRight","textAlign","borderRadius","radii","base","MozAppearance","cursor","pageSizeInput","pageSizeInputRoot","pageSizeInputContainer"],"mappings":";;;;AAKA,MAAMA,aAAaC,MAAMC,OAAOC;AAEnB,MAAA;AAAA,EAAEC;AAAAA,EAAeC;AAAW,IAAIC,cAAc,gBAAgB;AAAA;AAAA,EAEzEC,MAAM;AAAA,IACJC,UAAU;AAAA,IACVC,QAAQ;AAAA,IACRC,SAAS;AAAA,IACTC,gBAAgB;AAAA,IAChBC,YAAY;AAAA,IACZC,UAAU;AAAA,IACVC,WAAWb,MAAMc,MAAMC;AAAAA,IACvB,CAAE,kBAAiB,GAAG;AAAA,MACpB,GAAIf,MAAMgB,WAAWC;AAAAA,IACvB;AAAA,IACA,CAAE,2BAA0B,GAAG;AAAA,MAC7BC,OAAO;AAAA,MACPC,UAAU;AAAA,MACVC,UAAUpB,MAAMqB,QAAQ,CAAC;AAAA,IAC3B;AAAA,IACA,CAAE,uBAAsB,GAAG;AAAA,MACzBC,iBAAiB;AAAA,MACjB,oCAAoC;AAAA,QAClCA,iBAAiBvB;AAAAA,MACnB;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAEAwB,iBAAiB;AAAA,IACfd,SAAS;AAAA,IACTF,UAAU;AAAA,IACViB,QAAQ;AAAA,IACRC,KAAK;AAAA,IACLC,WAAW;AAAA,IACXC,MAAM;AAAA,EACR;AAAA;AAAA,EAEAC,uBAAuB;AAAA,IACrBnB,SAAS;AAAA,IACTE,YAAY;AAAA,IACZD,gBAAgB;AAAA,IAChBc,QAAQ;AAAA,IACRK,SAAS;AAAA,EACX;AAAA;AAAA,EAEAC,uBAAuB;AAAA,IACrBrB,SAAS;AAAA,IACTsB,QAAS,OAAM/B,MAAMc,MAAMkB;AAAAA,IAC3Bd,OAAO;AAAA,EACT;AAAA;AAAA,EAEAe,eAAe;AAAA,IACbxB,SAAS;AAAA,IACTE,YAAY;AAAA,IACZa,QAAQ;AAAA,IACRU,KAAK;AAAA,EACP;AAAA;AAAA,EAEAC,eAAe;AAAA,IACbN,SAAS;AAAA,EACX;AAAA;AAAA,EAEAO,MAAM,CAAC;AAAA;AAAA,EAEPC,UAAU;AAAA,IACR5B,SAAS;AAAA,IACT6B,YAAY;AAAA,IACZd,QAAQ;AAAA,IACRe,YAAY;AAAA,EACd;AAAA;AAAA,EAEAC,UAAU;AAAA,IACR/B,SAAS;AAAA,IACTgC,aAAc;AAAA,IACd,CAAE,MAAKC,gBAAaC,WAAW,GAAG;AAAA,MAChC,CAAE,kBAAiB,GAAG;AAAA,QACpBC,aAAc;AAAA,QACdC,cAAe;AAAA,QACfd,QAAQ;AAAA,QACRe,WAAW;AAAA,QACXC,cAAc/C,MAAMgD,MAAMC;AAAAA,QAC1BC,eAAe;AAAA,QACf,WAAW;AAAA,UACT5B,iBAAiBvB;AAAAA,QACnB;AAAA,QACA,WAAW;AAAA,UACToD,QAAQ;AAAA,QACV;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAEAC,eAAe,CAAC;AAAA;AAAA,EAEhBC,mBAAmB,CAAC;AAAA;AAAA,EAEpBC,wBAAwB,CAAC;AAC3B,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useScrollTo.js","sources":["../../../../src/components/ScrollTo/useScrollTo.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from \"react\";\nimport {\n findFirstVisibleElement,\n getScrollTop,\n isScrolledToTheBottom,\n scrollElement,\n verticalScrollOffset,\n} from \"./utils\";\nimport { HvScrollToVerticalOption } from \"./Vertical\";\n\nexport const useScrollTo = (\n selectedIndexProp: number = 0,\n scrollElementId: string | undefined = undefined,\n href: boolean = false,\n offset: number = 0,\n options: HvScrollToVerticalOption[] = [],\n onChange:\n | ((\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => void)\n | undefined = undefined,\n direction: \"column\" | \"row\" = \"column\"\n): [\n number,\n (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n id: string,\n index: number,\n wrappedOnChange?: (index: number) => void\n ) => void\n] => {\n const RETRY_MAX: number = 5;\n const [selectedIndex, setSelectedIndex] = useState<number>(selectedIndexProp);\n\n const scrollEle = useRef<HTMLElement | (Window & typeof globalThis)>(window);\n const requestedAnimationFrame = useRef(0);\n const lastContainerScrollTop = useRef<number>(0);\n\n // Ref to use a often-changing value in useCallback, as recommended in\n // https://reactjs.org/docs/hooks-faq.html#how-to-read-an-often-changing-value-from-usecallback\n const selectedIndexRef = useRef(selectedIndex);\n\n useEffect(() => {\n selectedIndexRef.current = selectedIndex;\n }, [selectedIndex]);\n\n useEffect(() => {\n scrollEle.current =\n (scrollElementId && document.getElementById(scrollElementId)) || window;\n\n lastContainerScrollTop.current = verticalScrollOffset(scrollEle.current);\n }, [scrollElementId]);\n\n const checkScroll = useCallback(\n (\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>\n ) => {\n if (\n requestedAnimationFrame.current === 0 &&\n window?.requestAnimationFrame\n ) {\n requestedAnimationFrame.current = window.requestAnimationFrame(() => {\n requestedAnimationFrame.current = 0;\n\n const firstVisibleElementIndex = findFirstVisibleElement(\n scrollEle.current,\n options,\n offset\n );\n\n let newSelectedIndex = firstVisibleElementIndex;\n\n // select the first element when all elements are bellow the container's top\n if (firstVisibleElementIndex < 0) {\n newSelectedIndex = 0;\n }\n\n // if the user has reached the bottom of the container, select the first nav item still visible\n // (usually this selects the last nav item, when it can't reach the top the container)\n // in theory only needed when scrolling down, but no... because of the Safari bouncing behaviour\n if (\n newSelectedIndex < options.length - 1 &&\n isScrolledToTheBottom(scrollEle.current)\n ) {\n newSelectedIndex += 1;\n }\n\n const containerScrollTop = getScrollTop(scrollEle.current);\n const isScrollingDown =\n containerScrollTop > lastContainerScrollTop.current;\n lastContainerScrollTop.current = containerScrollTop;\n\n // only update the selected item if the scroll direction is moving away from it\n if (isScrollingDown) {\n if (newSelectedIndex < selectedIndexRef.current) {\n newSelectedIndex = selectedIndexRef.current;\n }\n } else if (newSelectedIndex > selectedIndexRef.current) {\n newSelectedIndex = selectedIndexRef.current;\n }\n\n setSelectedIndex(newSelectedIndex);\n onChange?.(event, newSelectedIndex);\n });\n }\n },\n [offset, options, onChange]\n );\n\n // Registers and unregisters the scroll listener\n useEffect(() => {\n if (scrollEle.current) {\n scrollEle.current.addEventListener(\"scroll\", checkScroll, false);\n }\n\n return () => {\n if (scrollEle.current) {\n scrollEle.current.removeEventListener(\"scroll\", checkScroll);\n }\n\n if (requestedAnimationFrame.current !== 0) {\n window.cancelAnimationFrame(requestedAnimationFrame.current);\n requestedAnimationFrame.current = 0;\n }\n };\n }, [checkScroll]);\n\n // Waits for the elements to be rendered and scrolls to the one referenced in the URL hash, if any\n useEffect(() => {\n let checkRenderedInterval;\n\n if (href) {\n const hashValue = document.location.hash.split(\"#\")[1] || \"\";\n\n const option = options.find((o) => o.value === hashValue);\n\n if (option) {\n let retry = 0;\n checkRenderedInterval = setInterval(() => {\n const ele = document.getElementById(option.value);\n\n if (ele) {\n scrollElement(ele, scrollEle.current, option.offset || offset);\n clearInterval(checkRenderedInterval);\n } else {\n retry += 1;\n if (retry === RETRY_MAX) {\n clearInterval(checkRenderedInterval);\n }\n }\n }, 1000);\n }\n }\n\n return () => {\n clearInterval(checkRenderedInterval);\n };\n\n // We really want to run this just in the first load\n // in fact this doesn't even belong here, the logic should be external\n }, []);\n\n const setScrollTo = (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n id: string,\n index: number,\n wrappedOnChange?: (index: number) => void\n ) => {\n const option = options.find((o) => o.value === id);\n\n if (option) {\n const ele = document.getElementById(id);\n if (ele) {\n scrollElement(\n ele,\n scrollEle.current,\n option.offset || offset,\n direction\n );\n }\n\n if (href) {\n window.history.pushState({}, \"\", `#${options[index].value}`);\n }\n\n setSelectedIndex(index);\n wrappedOnChange?.(index);\n\n // Safari scrolls immediately (no smooth scroll support),\n // so this ref value must be updated asap\n selectedIndexRef.current = index;\n }\n };\n\n return [selectedIndex, setScrollTo];\n};\n"],"names":["useScrollTo","selectedIndexProp","scrollElementId","undefined","href","offset","options","onChange","direction","RETRY_MAX","selectedIndex","setSelectedIndex","useState","scrollEle","useRef","window","requestedAnimationFrame","lastContainerScrollTop","selectedIndexRef","useEffect","current","document","getElementById","verticalScrollOffset","checkScroll","useCallback","event","requestAnimationFrame","firstVisibleElementIndex","findFirstVisibleElement","newSelectedIndex","length","isScrolledToTheBottom","containerScrollTop","getScrollTop","isScrollingDown","addEventListener","removeEventListener","cancelAnimationFrame","checkRenderedInterval","hashValue","location","hash","split","option","find","o","value","retry","setInterval","ele","scrollElement","clearInterval","setScrollTo","id","index","wrappedOnChange","history","pushState"],"mappings":"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"}
1
+ {"version":3,"file":"useScrollTo.js","sources":["../../../../src/components/ScrollTo/useScrollTo.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from \"react\";\nimport {\n findFirstVisibleElement,\n getScrollTop,\n isScrolledToTheBottom,\n scrollElement,\n verticalScrollOffset,\n} from \"./utils\";\nimport { HvScrollToVerticalOption } from \"./Vertical\";\n\nexport const useScrollTo = (\n selectedIndexProp: number = 0,\n scrollElementId: string | undefined = undefined,\n href: boolean = false,\n offset: number = 0,\n options: HvScrollToVerticalOption[] = [],\n onChange:\n | ((\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n index: number\n ) => void)\n | undefined = undefined,\n direction: \"column\" | \"row\" = \"column\"\n): [\n number,\n (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n id: string,\n index: number,\n wrappedOnChange?: (index: number) => void\n ) => void\n] => {\n const RETRY_MAX: number = 5;\n const [selectedIndex, setSelectedIndex] = useState<number>(selectedIndexProp);\n\n const scrollEle = useRef<HTMLElement | (Window & typeof globalThis)>(window);\n const requestedAnimationFrame = useRef(0);\n const lastContainerScrollTop = useRef<number>(0);\n\n // Ref to use a often-changing value in useCallback, as recommended in\n // https://reactjs.org/docs/hooks-faq.html#how-to-read-an-often-changing-value-from-usecallback\n const selectedIndexRef = useRef(selectedIndex);\n\n useEffect(() => {\n selectedIndexRef.current = selectedIndex;\n }, [selectedIndex]);\n\n useEffect(() => {\n scrollEle.current =\n (scrollElementId && document.getElementById(scrollElementId)) || window;\n\n lastContainerScrollTop.current = verticalScrollOffset(scrollEle.current);\n }, [scrollElementId]);\n\n const checkScroll = useCallback(\n (\n event:\n | Event\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>\n ) => {\n if (\n requestedAnimationFrame.current === 0 &&\n window?.requestAnimationFrame\n ) {\n requestedAnimationFrame.current = window.requestAnimationFrame(() => {\n requestedAnimationFrame.current = 0;\n\n const firstVisibleElementIndex = findFirstVisibleElement(\n scrollEle.current,\n options,\n offset\n );\n\n let newSelectedIndex = firstVisibleElementIndex;\n\n // select the first element when all elements are bellow the container's top\n if (firstVisibleElementIndex < 0) {\n newSelectedIndex = 0;\n }\n\n // if the user has reached the bottom of the container, select the first nav item still visible\n // (usually this selects the last nav item, when it can't reach the top the container)\n // in theory only needed when scrolling down, but no... because of the Safari bouncing behaviour\n if (\n newSelectedIndex < options.length - 1 &&\n isScrolledToTheBottom(scrollEle.current)\n ) {\n newSelectedIndex += 1;\n }\n\n const containerScrollTop = getScrollTop(scrollEle.current);\n const isScrollingDown =\n containerScrollTop > lastContainerScrollTop.current;\n lastContainerScrollTop.current = containerScrollTop;\n\n // only update the selected item if the scroll direction is moving away from it\n if (isScrollingDown) {\n if (newSelectedIndex < selectedIndexRef.current) {\n newSelectedIndex = selectedIndexRef.current;\n }\n } else if (newSelectedIndex > selectedIndexRef.current) {\n newSelectedIndex = selectedIndexRef.current;\n }\n\n setSelectedIndex(newSelectedIndex);\n onChange?.(event, newSelectedIndex);\n });\n }\n },\n [offset, options, onChange]\n );\n\n // Registers and unregisters the scroll listener\n useEffect(() => {\n if (scrollEle.current) {\n scrollEle.current.addEventListener(\"scroll\", checkScroll, false);\n }\n\n return () => {\n if (scrollEle.current) {\n scrollEle.current.removeEventListener(\"scroll\", checkScroll);\n }\n\n if (requestedAnimationFrame.current !== 0) {\n window.cancelAnimationFrame(requestedAnimationFrame.current);\n requestedAnimationFrame.current = 0;\n }\n };\n }, [checkScroll]);\n\n // Waits for the elements to be rendered and scrolls to the one referenced in the URL hash, if any\n useEffect(() => {\n let checkRenderedInterval;\n\n if (href) {\n const hashValue = document.location.hash.split(\"#\")[1] || \"\";\n\n const option = options.find((o) => o.value === hashValue);\n\n if (option) {\n let retry = 0;\n checkRenderedInterval = setInterval(() => {\n const ele = document.getElementById(option.value);\n\n if (ele) {\n scrollElement(ele, scrollEle.current, option.offset || offset);\n clearInterval(checkRenderedInterval);\n } else {\n retry += 1;\n if (retry === RETRY_MAX) {\n clearInterval(checkRenderedInterval);\n }\n }\n }, 1000);\n }\n }\n\n return () => {\n clearInterval(checkRenderedInterval);\n };\n\n // We really want to run this just in the first load\n // in fact this doesn't even belong here, the logic should be external\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const setScrollTo = (\n event:\n | React.MouseEvent<HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n id: string,\n index: number,\n wrappedOnChange?: (index: number) => void\n ) => {\n const option = options.find((o) => o.value === id);\n\n if (option) {\n const ele = document.getElementById(id);\n if (ele) {\n scrollElement(\n ele,\n scrollEle.current,\n option.offset || offset,\n direction\n );\n }\n\n if (href) {\n window.history.pushState({}, \"\", `#${options[index].value}`);\n }\n\n setSelectedIndex(index);\n wrappedOnChange?.(index);\n\n // Safari scrolls immediately (no smooth scroll support),\n // so this ref value must be updated asap\n selectedIndexRef.current = index;\n }\n };\n\n return [selectedIndex, setScrollTo];\n};\n"],"names":["useScrollTo","selectedIndexProp","scrollElementId","undefined","href","offset","options","onChange","direction","RETRY_MAX","selectedIndex","setSelectedIndex","useState","scrollEle","useRef","window","requestedAnimationFrame","lastContainerScrollTop","selectedIndexRef","useEffect","current","document","getElementById","verticalScrollOffset","checkScroll","useCallback","event","requestAnimationFrame","firstVisibleElementIndex","findFirstVisibleElement","newSelectedIndex","length","isScrolledToTheBottom","containerScrollTop","getScrollTop","isScrollingDown","addEventListener","removeEventListener","cancelAnimationFrame","checkRenderedInterval","hashValue","location","hash","split","option","find","o","value","retry","setInterval","ele","scrollElement","clearInterval","setScrollTo","id","index","wrappedOnChange","history","pushState"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { clsx } from "clsx";
2
2
  import { useRef, useMemo, useState, useCallback, useEffect } from "react";
3
3
  import validationState from "../Forms/FormElement/validationStates.js";
4
4
  import sliderClasses from "./sliderClasses.js";
5
- import { sliderStyles, StyledFormElement, StyledLabelContainer, StyledSliderContainer, StyledSlider, StyledWarning, StyledTooltipContainer, StyledTooltip } from "./Slider.styles.js";
5
+ import { StyledFormElement, StyledLabelContainer, StyledSliderContainer, StyledSlider, sliderStyles, StyledWarning, StyledTooltipContainer, StyledTooltip } from "./Slider.styles.js";
6
6
  import { calculateStepValue, createMark, isSingleSlider, knobsValuesToKnobsPositions, convertStatusToArray, generateDefaultKnobProperties, createTrackStyles, createKnobStyles, statusArrayToFormStatus, knobsPositionsToKnobsValues, scaledValueToKnobsPositionValue, ensureValuesConsistency, knobsPositionToScaledValue } from "./utils.js";
7
7
  import { HvSliderInput } from "./SliderInput/SliderInput.js";
8
8
  import { jsxs, jsx } from "@emotion/react/jsx-runtime";
@@ -51,7 +51,7 @@ const HvSlider = ({
51
51
  const sliderInputId = setId(elementId, "input");
52
52
  const stepValue = useMemo(() => calculateStepValue(maxPointValue, minPointValue, divisionQuantity), [divisionQuantity, maxPointValue, minPointValue]);
53
53
  const inverseStepValue = 1 / stepValue;
54
- const marks = useMemo(() => createMark(markProperties, markStep, divisionQuantity, minPointValue, stepValue, markDigits, !!disabled, sliderStyles, formatMark), [disabled, divisionQuantity, formatMark, markDigits, markProperties, markStep, minPointValue, stepValue, sliderStyles]);
54
+ const marks = useMemo(() => createMark(markProperties, markStep, divisionQuantity, minPointValue, stepValue, markDigits, !!disabled, sliderStyles, formatMark), [disabled, divisionQuantity, formatMark, markDigits, markProperties, markStep, minPointValue, stepValue]);
55
55
  const canShowError = ariaErrorMessage == null && (status !== void 0 && statusMessage !== void 0 || status === void 0 && required);
56
56
  const isSingle = useMemo(() => isSingleSlider(valuesProp, defaultValues), [defaultValues, valuesProp]);
57
57
  const value = useMemo(() => (valuesProp == null ? void 0 : valuesProp.length) > 0 ? knobsValuesToKnobsPositions(valuesProp, inverseStepValue, minPointValue) : void 0, [inverseStepValue, minPointValue, valuesProp]);