@hitachivantara/uikit-react-core 5.87.3 → 5.89.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/dist/cjs/ActionsGeneric/ActionsGeneric.cjs +2 -3
  2. package/dist/cjs/AppSwitcher/Action/Action.styles.cjs +2 -2
  3. package/dist/cjs/Banner/Banner.cjs +5 -5
  4. package/dist/cjs/Banner/BannerContent/BannerContent.cjs +59 -97
  5. package/dist/cjs/Banner/BannerContent/BannerContent.styles.cjs +18 -46
  6. package/dist/cjs/BaseDropdown/BaseDropdown.styles.cjs +1 -2
  7. package/dist/cjs/BaseInput/BaseInput.styles.cjs +1 -1
  8. package/dist/cjs/BaseInput/validations.cjs +2 -1
  9. package/dist/cjs/Button/Button.cjs +1 -2
  10. package/dist/cjs/Button/Button.styles.cjs +0 -6
  11. package/dist/cjs/ColorPicker/ColorPicker.cjs +1 -1
  12. package/dist/cjs/DatePicker/DatePicker.cjs +12 -12
  13. package/dist/cjs/DotPagination/DotPagination.styles.cjs +3 -0
  14. package/dist/cjs/FilterGroup/FilterContent/FilterContent.cjs +1 -1
  15. package/dist/cjs/FormElement/Adornment/Adornment.cjs +15 -36
  16. package/dist/cjs/FormElement/Adornment/Adornment.styles.cjs +12 -21
  17. package/dist/cjs/IconContainer/IconContainer.cjs +81 -0
  18. package/dist/cjs/Input/Input.cjs +29 -51
  19. package/dist/cjs/Input/Input.styles.cjs +1 -0
  20. package/dist/cjs/List/List.cjs +1 -1
  21. package/dist/cjs/ListContainer/ListItem/ListItem.styles.cjs +0 -6
  22. package/dist/cjs/Loading/Loading.cjs +1 -2
  23. package/dist/cjs/Loading/Loading.styles.cjs +3 -1
  24. package/dist/cjs/Pagination/Pagination.styles.cjs +2 -2
  25. package/dist/cjs/Pagination/Select.cjs +1 -1
  26. package/dist/cjs/Snackbar/Snackbar.cjs +6 -5
  27. package/dist/cjs/Snackbar/SnackbarContent/SnackbarContent.cjs +20 -28
  28. package/dist/cjs/Snackbar/SnackbarContent/SnackbarContent.styles.cjs +26 -56
  29. package/dist/cjs/Table/TableBody/TableBody.cjs +16 -17
  30. package/dist/cjs/{TableSection → Table/TableSection}/TableSection.cjs +2 -2
  31. package/dist/cjs/{TableSection → Table/TableSection}/TableSection.styles.cjs +12 -12
  32. package/dist/cjs/Table/hooks/useHvRowExpand.cjs +3 -3
  33. package/dist/cjs/Tabs/Tab/Tab.styles.cjs +0 -3
  34. package/dist/cjs/Tag/Tag.cjs +1 -1
  35. package/dist/cjs/TagsInput/TagsInput.cjs +103 -169
  36. package/dist/cjs/TagsInput/TagsInput.styles.cjs +45 -106
  37. package/dist/cjs/TextArea/TextArea.cjs +1 -3
  38. package/dist/cjs/TimePicker/TimePicker.cjs +5 -4
  39. package/dist/cjs/Typography/Typography.styles.cjs +2 -1
  40. package/dist/cjs/VerticalNavigation/NavigationSlider/NavigationSlider.styles.cjs +0 -3
  41. package/dist/cjs/VerticalNavigation/TreeView/TreeViewItem.styles.cjs +0 -4
  42. package/dist/cjs/hooks/useFocus.cjs +38 -0
  43. package/dist/cjs/index.cjs +9 -4
  44. package/dist/cjs/utils/Callout.cjs +134 -0
  45. package/dist/cjs/utils/focusUtils.cjs +0 -4
  46. package/dist/esm/ActionsGeneric/ActionsGeneric.js +2 -3
  47. package/dist/esm/ActionsGeneric/ActionsGeneric.js.map +1 -1
  48. package/dist/esm/AppSwitcher/Action/Action.styles.js +2 -2
  49. package/dist/esm/AppSwitcher/Action/Action.styles.js.map +1 -1
  50. package/dist/esm/AvatarGroup/AvatarGroupContext.js +1 -1
  51. package/dist/esm/Banner/Banner.js +5 -5
  52. package/dist/esm/Banner/Banner.js.map +1 -1
  53. package/dist/esm/Banner/BannerContent/BannerContent.js +60 -96
  54. package/dist/esm/Banner/BannerContent/BannerContent.js.map +1 -1
  55. package/dist/esm/Banner/BannerContent/BannerContent.styles.js +18 -46
  56. package/dist/esm/Banner/BannerContent/BannerContent.styles.js.map +1 -1
  57. package/dist/esm/BaseCheckBox/BaseCheckBox.js +1 -1
  58. package/dist/esm/BaseDropdown/BaseDropdown.js +3 -3
  59. package/dist/esm/BaseDropdown/BaseDropdown.styles.js +1 -2
  60. package/dist/esm/BaseDropdown/BaseDropdown.styles.js.map +1 -1
  61. package/dist/esm/BaseInput/BaseInput.js.map +1 -1
  62. package/dist/esm/BaseInput/BaseInput.styles.js +1 -1
  63. package/dist/esm/BaseInput/BaseInput.styles.js.map +1 -1
  64. package/dist/esm/BaseInput/validations.js +2 -1
  65. package/dist/esm/BaseInput/validations.js.map +1 -1
  66. package/dist/esm/BaseRadio/BaseRadio.js +1 -1
  67. package/dist/esm/Button/Button.js +3 -4
  68. package/dist/esm/Button/Button.js.map +1 -1
  69. package/dist/esm/Button/Button.styles.js +0 -6
  70. package/dist/esm/Button/Button.styles.js.map +1 -1
  71. package/dist/esm/Calendar/CalendarHeader/CalendarHeader.js +1 -1
  72. package/dist/esm/CheckBoxGroup/CheckBoxGroup.js.map +1 -1
  73. package/dist/esm/ColorPicker/ColorPicker.js +1 -1
  74. package/dist/esm/ColorPicker/ColorPicker.js.map +1 -1
  75. package/dist/esm/ColorPicker/Fields/Fields.js.map +1 -1
  76. package/dist/esm/DatePicker/DatePicker.js.map +1 -1
  77. package/dist/esm/DatePicker/utils.js +1 -1
  78. package/dist/esm/Dialog/context.js +1 -1
  79. package/dist/esm/DotPagination/DotPagination.js +1 -1
  80. package/dist/esm/DotPagination/DotPagination.styles.js +3 -0
  81. package/dist/esm/DotPagination/DotPagination.styles.js.map +1 -1
  82. package/dist/esm/Dropdown/Dropdown.js.map +1 -1
  83. package/dist/esm/DropdownButton/DropdownButton.js.map +1 -1
  84. package/dist/esm/FilterGroup/FilterContent/FilterContent.js +1 -1
  85. package/dist/esm/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  86. package/dist/esm/FilterGroup/FilterGroupContext.js +1 -1
  87. package/dist/esm/Focus/Focus.js +1 -1
  88. package/dist/esm/FormElement/Adornment/Adornment.js +15 -36
  89. package/dist/esm/FormElement/Adornment/Adornment.js.map +1 -1
  90. package/dist/esm/FormElement/Adornment/Adornment.styles.js +12 -21
  91. package/dist/esm/FormElement/Adornment/Adornment.styles.js.map +1 -1
  92. package/dist/esm/Header/Navigation/useSelectionPath.js.map +1 -1
  93. package/dist/esm/IconContainer/IconContainer.js +81 -0
  94. package/dist/esm/IconContainer/IconContainer.js.map +1 -0
  95. package/dist/esm/Input/Input.js +30 -52
  96. package/dist/esm/Input/Input.js.map +1 -1
  97. package/dist/esm/Input/Input.styles.js +1 -0
  98. package/dist/esm/Input/Input.styles.js.map +1 -1
  99. package/dist/esm/List/List.js +1 -1
  100. package/dist/esm/ListContainer/ListItem/ListItem.styles.js +0 -6
  101. package/dist/esm/ListContainer/ListItem/ListItem.styles.js.map +1 -1
  102. package/dist/esm/Loading/Loading.js +1 -2
  103. package/dist/esm/Loading/Loading.js.map +1 -1
  104. package/dist/esm/Loading/Loading.styles.js +3 -1
  105. package/dist/esm/Loading/Loading.styles.js.map +1 -1
  106. package/dist/esm/Pagination/Pagination.styles.js +5 -5
  107. package/dist/esm/Pagination/Select.js +1 -1
  108. package/dist/esm/QueryBuilder/Context.js +1 -1
  109. package/dist/esm/QueryBuilder/QueryBuilder.js +1 -1
  110. package/dist/esm/QueryBuilder/utils/index.js +1 -1
  111. package/dist/esm/RadioGroup/RadioGroup.js.map +1 -1
  112. package/dist/esm/SelectionList/SelectionList.js.map +1 -1
  113. package/dist/esm/Slider/Slider.js +1 -1
  114. package/dist/esm/Slider/Slider.js.map +1 -1
  115. package/dist/esm/Snackbar/Snackbar.js +6 -5
  116. package/dist/esm/Snackbar/Snackbar.js.map +1 -1
  117. package/dist/esm/Snackbar/SnackbarContent/SnackbarContent.js +23 -29
  118. package/dist/esm/Snackbar/SnackbarContent/SnackbarContent.js.map +1 -1
  119. package/dist/esm/Snackbar/SnackbarContent/SnackbarContent.styles.js +26 -56
  120. package/dist/esm/Snackbar/SnackbarContent/SnackbarContent.styles.js.map +1 -1
  121. package/dist/esm/SnackbarProvider/SnackbarProvider.js +2 -2
  122. package/dist/esm/Table/Table.js.map +1 -1
  123. package/dist/esm/Table/TableBody/TableBody.js +16 -17
  124. package/dist/esm/Table/TableBody/TableBody.js.map +1 -1
  125. package/dist/esm/{TableSection → Table/TableSection}/TableSection.js +2 -2
  126. package/dist/esm/Table/TableSection/TableSection.js.map +1 -0
  127. package/dist/esm/{TableSection → Table/TableSection}/TableSection.styles.js +25 -25
  128. package/dist/esm/Table/TableSection/TableSection.styles.js.map +1 -0
  129. package/dist/esm/Table/hooks/useHvRowExpand.js +3 -3
  130. package/dist/esm/Table/hooks/useHvRowExpand.js.map +1 -1
  131. package/dist/esm/Tabs/Tab/Tab.styles.js +0 -3
  132. package/dist/esm/Tabs/Tab/Tab.styles.js.map +1 -1
  133. package/dist/esm/Tag/Tag.js +1 -1
  134. package/dist/esm/Tag/Tag.js.map +1 -1
  135. package/dist/esm/TagsInput/TagsInput.js +103 -169
  136. package/dist/esm/TagsInput/TagsInput.js.map +1 -1
  137. package/dist/esm/TagsInput/TagsInput.styles.js +45 -106
  138. package/dist/esm/TagsInput/TagsInput.styles.js.map +1 -1
  139. package/dist/esm/TextArea/TextArea.js +1 -3
  140. package/dist/esm/TextArea/TextArea.js.map +1 -1
  141. package/dist/esm/TimePicker/TimePicker.js +1 -0
  142. package/dist/esm/TimePicker/TimePicker.js.map +1 -1
  143. package/dist/esm/TreeView/internals/TreeViewProvider.js +1 -1
  144. package/dist/esm/TreeView/internals/hooks/plugins/useTreeViewKeyboardNavigation.js +1 -1
  145. package/dist/esm/Typography/Typography.styles.js +2 -1
  146. package/dist/esm/Typography/Typography.styles.js.map +1 -1
  147. package/dist/esm/VerticalNavigation/NavigationSlider/NavigationSlider.js.map +1 -1
  148. package/dist/esm/VerticalNavigation/NavigationSlider/NavigationSlider.styles.js +0 -3
  149. package/dist/esm/VerticalNavigation/NavigationSlider/NavigationSlider.styles.js.map +1 -1
  150. package/dist/esm/VerticalNavigation/TreeView/TreeViewItem.styles.js +0 -4
  151. package/dist/esm/VerticalNavigation/TreeView/TreeViewItem.styles.js.map +1 -1
  152. package/dist/esm/hooks/useFocus.js +38 -0
  153. package/dist/esm/hooks/useFocus.js.map +1 -0
  154. package/dist/esm/hooks/useScrollTo.js.map +1 -1
  155. package/dist/esm/index.js +56 -51
  156. package/dist/esm/index.js.map +1 -1
  157. package/dist/esm/utils/Callout.js +132 -0
  158. package/dist/esm/utils/Callout.js.map +1 -0
  159. package/dist/esm/utils/document.js.map +1 -1
  160. package/dist/esm/utils/focusUtils.js +0 -4
  161. package/dist/esm/utils/focusUtils.js.map +1 -1
  162. package/dist/types/index.d.ts +677 -670
  163. package/package.json +8 -8
  164. package/dist/esm/TableSection/TableSection.js.map +0 -1
  165. package/dist/esm/TableSection/TableSection.styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sources":["../../../src/Table/Table.tsx"],"sourcesContent":["import { forwardRef, useMemo, useRef } from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { staticClasses, useClasses } from \"./Table.styles\";\nimport TableContext from \"./TableContext\";\n\nexport { staticClasses as tableClasses };\n\nexport type HvTableClasses = ExtractNames<typeof useClasses>;\n\nexport type HvTableVariant = \"listrow\" | \"default\";\nexport type HvTableCellAlign =\n | \"center\"\n | \"inherit\"\n | \"justify\"\n | \"left\"\n | \"right\";\nexport type HvTableCellType = \"body\" | \"footer\" | \"head\";\nexport type HvTableCellVariant =\n | \"checkbox\"\n | \"expand\"\n | \"actions\"\n | \"default\"\n | \"none\";\n\nexport interface HvTableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n /**\n * The component used for the root node. Either a string to use a HTML element or a component.\n * Defaults to `table`.\n *\n * When using non-table elements, layout is up to the developer using the component.\n */\n component?: React.ElementType;\n /** Content to be rendered */\n children: React.ReactNode;\n /** Whether the `HvTable` has a sticky header row. */\n stickyHeader?: boolean;\n /** Whether the `HvTable` has sticky columns. */\n stickyColumns?: boolean;\n /** Whether the `HvTable` has the list row styles or the default. */\n variant?: HvTableVariant;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTableClasses;\n}\n\nconst defaultComponent = \"table\";\n\nconst computeTablePartComponents = (rootComponent: React.ElementType<any>) => {\n if (rootComponent === \"table\") {\n return {\n Table: \"table\",\n THead: \"thead\",\n TBody: \"tbody\",\n Tr: \"tr\",\n Th: \"th\",\n Td: \"td\",\n };\n }\n\n return {\n Table: rootComponent,\n THead: rootComponent,\n TBody: rootComponent,\n Tr: rootComponent,\n Th: rootComponent,\n Td: rootComponent,\n };\n};\n\n/**\n * A table gathers relational data. It displays values arranged to allow quick numerical analysis like comparison and sorting.\n *\n * The **HvTable** component offers a set of HTML-equivalent elements, **styled to Design System's specification**,\n * for building tables.\n * You can rely on these **elements** when your table doesn’t have many interactions or you need it to be very lightweight.\n *\n * For better data handling and **advanced features** we recommend the use of the utility hooks collection.\n * See the <a href=\"?id=guides-table-table-hooks--use-hv-hooks&viewMode=docs\" target=\"_self\">Table Hooks documentation</a> for more details.\n */\nexport const HvTable = forwardRef<\n // no-indent\n HTMLElement,\n HvTableProps\n>(function HvTable(props, ref) {\n const {\n classes: classesProp,\n className,\n component = defaultComponent,\n stickyHeader = false,\n stickyColumns = false,\n variant = \"default\",\n ...others\n } = useDefaultProps(\"HvTable\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const containerRef = useRef(ref);\n\n const components = useMemo(\n () => computeTablePartComponents(component),\n [component],\n );\n\n const tableContext = useMemo(\n () => ({ components, variant, containerRef }),\n [components, variant, containerRef],\n );\n\n const Table = useMemo(() => components.Table, [components]);\n\n return (\n <TableContext.Provider value={tableContext}>\n <Table\n ref={ref}\n role={component === defaultComponent ? null : \"table\"}\n className={cx(\n classes.root,\n {\n [classes.stickyHeader]: stickyHeader,\n [classes.stickyColumns]: stickyColumns,\n [classes.listRow]: variant === \"listrow\",\n },\n className,\n )}\n {...others}\n />\n </TableContext.Provider>\n );\n});\n"],"names":["HvTable"],"mappings":";;;;;;AAiDA,MAAM,mBAAmB;AAEzB,MAAM,6BAA6B,CAAC,kBAA0C;AAC5E,MAAI,kBAAkB,SAAS;AACtB,WAAA;AAAA,MACL,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACN;AAAA,EAAA;AAGK,SAAA;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EACN;AACF;AAYO,MAAM,UAAU,WAIrB,SAASA,SAAQ,OAAO,KAAK;AACvB,QAAA;AAAA,IACJ,SAAS;AAAA,IACT;AAAA,IACA,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,UAAU;AAAA,IACV,GAAG;AAAA,EAAA,IACD,gBAAgB,WAAW,KAAK;AACpC,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAExC,QAAA,eAAe,OAAO,GAAG;AAE/B,QAAM,aAAa;AAAA,IACjB,MAAM,2BAA2B,SAAS;AAAA,IAC1C,CAAC,SAAS;AAAA,EACZ;AAEA,QAAM,eAAe;AAAA,IACnB,OAAO,EAAE,YAAY,SAAS;IAC9B,CAAC,YAAY,SAAS,YAAY;AAAA,EACpC;AAEA,QAAM,QAAQ,QAAQ,MAAM,WAAW,OAAO,CAAC,UAAU,CAAC;AAE1D,SACG,oBAAA,aAAa,UAAb,EAAsB,OAAO,cAC5B,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,MAAM,cAAc,mBAAmB,OAAO;AAAA,MAC9C,WAAW;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,UACE,CAAC,QAAQ,YAAY,GAAG;AAAA,UACxB,CAAC,QAAQ,aAAa,GAAG;AAAA,UACzB,CAAC,QAAQ,OAAO,GAAG,YAAY;AAAA,QACjC;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ,CAAC;"}
1
+ {"version":3,"file":"Table.js","sources":["../../../src/Table/Table.tsx"],"sourcesContent":["import { forwardRef, useMemo, useRef } from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { staticClasses, useClasses } from \"./Table.styles\";\nimport TableContext from \"./TableContext\";\n\nexport { staticClasses as tableClasses };\n\nexport type HvTableClasses = ExtractNames<typeof useClasses>;\n\nexport type HvTableVariant = \"listrow\" | \"default\";\nexport type HvTableCellAlign =\n | \"center\"\n | \"inherit\"\n | \"justify\"\n | \"left\"\n | \"right\";\nexport type HvTableCellType = \"body\" | \"footer\" | \"head\";\nexport type HvTableCellVariant =\n | \"checkbox\"\n | \"expand\"\n | \"actions\"\n | \"default\"\n | \"none\";\n\nexport interface HvTableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n /**\n * The component used for the root node. Either a string to use a HTML element or a component.\n * Defaults to `table`.\n *\n * When using non-table elements, layout is up to the developer using the component.\n */\n component?: React.ElementType;\n /** Content to be rendered */\n children: React.ReactNode;\n /** Whether the `HvTable` has a sticky header row. */\n stickyHeader?: boolean;\n /** Whether the `HvTable` has sticky columns. */\n stickyColumns?: boolean;\n /** Whether the `HvTable` has the list row styles or the default. */\n variant?: HvTableVariant;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTableClasses;\n}\n\nconst defaultComponent = \"table\";\n\nconst computeTablePartComponents = (rootComponent: React.ElementType<any>) => {\n if (rootComponent === \"table\") {\n return {\n Table: \"table\",\n THead: \"thead\",\n TBody: \"tbody\",\n Tr: \"tr\",\n Th: \"th\",\n Td: \"td\",\n };\n }\n\n return {\n Table: rootComponent,\n THead: rootComponent,\n TBody: rootComponent,\n Tr: rootComponent,\n Th: rootComponent,\n Td: rootComponent,\n };\n};\n\n/**\n * A table gathers relational data. It displays values arranged to allow quick numerical analysis like comparison and sorting.\n *\n * The `HvTable` component offers a set of HTML-equivalent elements, **styled to Design System's specification**,\n * for building tables.\n * You can rely on these **elements** when your table doesn’t have many interactions or you need it to be very lightweight.\n *\n * For better data handling and **advanced features** we recommend the use of the utility hooks collection.\n * See the [Table Hooks documentation](https://lumada-design.github.io/uikit/master/?path=/docs/visualizations-table-table-hooks--docs) for more details.\n */\nexport const HvTable = forwardRef<\n // no-indent\n HTMLElement,\n HvTableProps\n>(function HvTable(props, ref) {\n const {\n classes: classesProp,\n className,\n component = defaultComponent,\n stickyHeader = false,\n stickyColumns = false,\n variant = \"default\",\n ...others\n } = useDefaultProps(\"HvTable\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const containerRef = useRef(ref);\n\n const components = useMemo(\n () => computeTablePartComponents(component),\n [component],\n );\n\n const tableContext = useMemo(\n () => ({ components, variant, containerRef }),\n [components, variant, containerRef],\n );\n\n const Table = useMemo(() => components.Table, [components]);\n\n return (\n <TableContext.Provider value={tableContext}>\n <Table\n ref={ref}\n role={component === defaultComponent ? null : \"table\"}\n className={cx(\n classes.root,\n {\n [classes.stickyHeader]: stickyHeader,\n [classes.stickyColumns]: stickyColumns,\n [classes.listRow]: variant === \"listrow\",\n },\n className,\n )}\n {...others}\n />\n </TableContext.Provider>\n );\n});\n"],"names":["HvTable"],"mappings":";;;;;;AAiDA,MAAM,mBAAmB;AAEzB,MAAM,6BAA6B,CAAC,kBAA0C;AAC5E,MAAI,kBAAkB,SAAS;AACtB,WAAA;AAAA,MACL,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACN;AAAA,EAAA;AAGK,SAAA;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,EACN;AACF;AAYO,MAAM,UAAU,WAIrB,SAASA,SAAQ,OAAO,KAAK;AACvB,QAAA;AAAA,IACJ,SAAS;AAAA,IACT;AAAA,IACA,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,UAAU;AAAA,IACV,GAAG;AAAA,EAAA,IACD,gBAAgB,WAAW,KAAK;AACpC,QAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAExC,QAAA,eAAe,OAAO,GAAG;AAE/B,QAAM,aAAa;AAAA,IACjB,MAAM,2BAA2B,SAAS;AAAA,IAC1C,CAAC,SAAS;AAAA,EACZ;AAEA,QAAM,eAAe;AAAA,IACnB,OAAO,EAAE,YAAY,SAAS;IAC9B,CAAC,YAAY,SAAS,YAAY;AAAA,EACpC;AAEA,QAAM,QAAQ,QAAQ,MAAM,WAAW,OAAO,CAAC,UAAU,CAAC;AAE1D,SACG,oBAAA,aAAa,UAAb,EAAsB,OAAO,cAC5B,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,MAAM,cAAc,mBAAmB,OAAO;AAAA,MAC9C,WAAW;AAAA,QACT,QAAQ;AAAA,QACR;AAAA,UACE,CAAC,QAAQ,YAAY,GAAG;AAAA,UACxB,CAAC,QAAQ,aAAa,GAAG;AAAA,UACzB,CAAC,QAAQ,OAAO,GAAG,YAAY;AAAA,QACjC;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ,CAAC;"}
@@ -9,7 +9,7 @@ import { staticClasses } from "./TableBody.styles.js";
9
9
  import { HvFocus } from "../../Focus/Focus.js";
10
10
  const tableSectionContext = {
11
11
  type: "body",
12
- filterClassName: "_grid"
12
+ filterClassName: "_trgrid"
13
13
  };
14
14
  const defaultComponent = "tbody";
15
15
  const HvTableBody = forwardRef(
@@ -35,22 +35,21 @@ const HvTableBody = forwardRef(
35
35
  role: Component === defaultComponent ? null : "rowgroup",
36
36
  ...others,
37
37
  children: withNavigation ? Children.map(children, (element) => {
38
- if (isValidElement(element)) {
39
- return /* @__PURE__ */ jsx(
40
- HvFocus,
41
- {
42
- id: `my-id-${element.key}`,
43
- rootRef: bodyRef,
44
- strategy: "grid",
45
- filterClass: tableSectionContext.filterClassName,
46
- navigationJump: 1,
47
- focusDisabled: false,
48
- selected: element.props.selected,
49
- children: element
50
- },
51
- `row-${element.key}`
52
- );
53
- }
38
+ if (!isValidElement(element)) return void 0;
39
+ return /* @__PURE__ */ jsx(
40
+ HvFocus,
41
+ {
42
+ id: `my-id-${element.key}`,
43
+ rootRef: bodyRef,
44
+ strategy: "grid",
45
+ filterClass: tableSectionContext.filterClassName,
46
+ navigationJump: 1,
47
+ focusDisabled: false,
48
+ selected: element.props.selected,
49
+ children: element
50
+ },
51
+ `row-${element.key}`
52
+ );
54
53
  }) : children
55
54
  }
56
55
  ) });
@@ -1 +1 @@
1
- {"version":3,"file":"TableBody.js","sources":["../../../../src/Table/TableBody/TableBody.tsx"],"sourcesContent":["import {\n Children,\n forwardRef,\n isValidElement,\n useContext,\n useRef,\n} from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvFocus } from \"../../Focus\";\nimport { useForkRef } from \"../../hooks/useForkRef\";\nimport { HvBaseProps } from \"../../types/generic\";\nimport TableContext from \"../TableContext\";\nimport {\n TableSectionContext,\n TableSectionContextValue,\n} from \"../TableSectionContext\";\nimport { staticClasses, useClasses } from \"./TableBody.styles\";\n\nexport { staticClasses as tableBodyClasses };\n\nexport type HvTableBodyClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTableBodyProps\n extends HvBaseProps<HTMLTableSectionElement, \"children\"> {\n /**\n * Content to be rendered\n */\n children: React.ReactNode;\n /**\n * The component used for the root node. Either a string to use a HTML element or a component.\n * Defaults to tbody.\n */\n component?: React.ElementType;\n /** Sets whether or not there should be arrow navigation between the table rows */\n withNavigation?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTableBodyClasses;\n}\n\nconst tableSectionContext = {\n type: \"body\",\n filterClassName: \"_grid\",\n} satisfies TableSectionContextValue;\n\nconst defaultComponent = \"tbody\";\n\n/**\n * HvTableBody acts as a `tbody` element.\n * `HvTableCell` and `HvTableRow` elements in it inherit body-specific styles\n */\nexport const HvTableBody = forwardRef<HTMLElement, HvTableBodyProps>(\n function HvTableBody(props, externalRef) {\n const {\n classes: classesProp,\n className,\n component,\n children,\n withNavigation = false,\n ...others\n } = useDefaultProps(\"HvTableBody\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const tableContext = useContext(TableContext);\n\n const bodyRef = useRef(null);\n\n const handleRef = useForkRef(externalRef, bodyRef);\n\n const Component =\n component || tableContext?.components?.TBody || defaultComponent;\n\n return (\n <TableSectionContext.Provider value={tableSectionContext}>\n <Component\n className={cx(classes.root, className)}\n ref={handleRef}\n role={Component === defaultComponent ? null : \"rowgroup\"}\n {...others}\n >\n {withNavigation\n ? Children.map(children, (element) => {\n if (isValidElement(element)) {\n return (\n <HvFocus\n id={`my-id-${element.key}`}\n rootRef={bodyRef}\n key={`row-${element.key}`}\n strategy=\"grid\"\n filterClass={tableSectionContext.filterClassName}\n navigationJump={1}\n focusDisabled={false}\n selected={element.props.selected}\n >\n {element}\n </HvFocus>\n );\n }\n })\n : children}\n </Component>\n </TableSectionContext.Provider>\n );\n },\n);\n"],"names":["HvTableBody"],"mappings":";;;;;;;;;AA2CA,MAAM,sBAAsB;AAAA,EAC1B,MAAM;AAAA,EACN,iBAAiB;AACnB;AAEA,MAAM,mBAAmB;AAMlB,MAAM,cAAc;AAAA,EACzB,SAASA,aAAY,OAAO,aAAa;AACjC,UAAA;AAAA,MACJ,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA,iBAAiB;AAAA,MACjB,GAAG;AAAA,IAAA,IACD,gBAAgB,eAAe,KAAK;AACxC,UAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAExC,UAAA,eAAe,WAAW,YAAY;AAEtC,UAAA,UAAU,OAAO,IAAI;AAErB,UAAA,YAAY,WAAW,aAAa,OAAO;AAEjD,UAAM,YACJ,aAAa,cAAc,YAAY,SAAS;AAElD,WACG,oBAAA,oBAAoB,UAApB,EAA6B,OAAO,qBACnC,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW,GAAG,QAAQ,MAAM,SAAS;AAAA,QACrC,KAAK;AAAA,QACL,MAAM,cAAc,mBAAmB,OAAO;AAAA,QAC7C,GAAG;AAAA,QAEH,UACG,iBAAA,SAAS,IAAI,UAAU,CAAC,YAAY;AAC9B,cAAA,eAAe,OAAO,GAAG;AAEzB,mBAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,IAAI,SAAS,QAAQ,GAAG;AAAA,gBACxB,SAAS;AAAA,gBAET,UAAS;AAAA,gBACT,aAAa,oBAAoB;AAAA,gBACjC,gBAAgB;AAAA,gBAChB,eAAe;AAAA,gBACf,UAAU,QAAQ,MAAM;AAAA,gBAEvB,UAAA;AAAA,cAAA;AAAA,cAPI,OAAO,QAAQ,GAAG;AAAA,YAQzB;AAAA,UAAA;AAAA,QAEJ,CACD,IACD;AAAA,MAAA;AAAA,IAAA,GAER;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"TableBody.js","sources":["../../../../src/Table/TableBody/TableBody.tsx"],"sourcesContent":["import {\n Children,\n forwardRef,\n isValidElement,\n useContext,\n useRef,\n} from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { HvFocus } from \"../../Focus\";\nimport { useForkRef } from \"../../hooks/useForkRef\";\nimport { HvBaseProps } from \"../../types/generic\";\nimport TableContext from \"../TableContext\";\nimport {\n TableSectionContext,\n TableSectionContextValue,\n} from \"../TableSectionContext\";\nimport { staticClasses, useClasses } from \"./TableBody.styles\";\n\nexport { staticClasses as tableBodyClasses };\n\nexport type HvTableBodyClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTableBodyProps\n extends HvBaseProps<HTMLTableSectionElement, \"children\"> {\n /**\n * Content to be rendered\n */\n children: React.ReactNode;\n /**\n * The component used for the root node. Either a string to use a HTML element or a component.\n * Defaults to tbody.\n */\n component?: React.ElementType;\n /** Sets whether or not there should be arrow navigation between the table rows */\n withNavigation?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTableBodyClasses;\n}\n\nconst tableSectionContext = {\n type: \"body\",\n filterClassName: \"_trgrid\",\n} satisfies TableSectionContextValue;\n\nconst defaultComponent = \"tbody\";\n\n/**\n * HvTableBody acts as a `tbody` element.\n * `HvTableCell` and `HvTableRow` elements in it inherit body-specific styles\n */\nexport const HvTableBody = forwardRef<HTMLElement, HvTableBodyProps>(\n function HvTableBody(props, externalRef) {\n const {\n classes: classesProp,\n className,\n component,\n children,\n withNavigation = false,\n ...others\n } = useDefaultProps(\"HvTableBody\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const tableContext = useContext(TableContext);\n\n const bodyRef = useRef(null);\n\n const handleRef = useForkRef(externalRef, bodyRef);\n\n const Component =\n component || tableContext?.components?.TBody || defaultComponent;\n\n return (\n <TableSectionContext.Provider value={tableSectionContext}>\n <Component\n className={cx(classes.root, className)}\n ref={handleRef}\n role={Component === defaultComponent ? null : \"rowgroup\"}\n {...others}\n >\n {withNavigation\n ? Children.map(children, (element) => {\n if (!isValidElement(element)) return undefined;\n return (\n <HvFocus\n id={`my-id-${element.key}`}\n rootRef={bodyRef}\n key={`row-${element.key}`}\n strategy=\"grid\"\n filterClass={tableSectionContext.filterClassName}\n navigationJump={1}\n focusDisabled={false}\n selected={element.props.selected}\n >\n {element}\n </HvFocus>\n );\n })\n : children}\n </Component>\n </TableSectionContext.Provider>\n );\n },\n);\n"],"names":["HvTableBody"],"mappings":";;;;;;;;;AA2CA,MAAM,sBAAsB;AAAA,EAC1B,MAAM;AAAA,EACN,iBAAiB;AACnB;AAEA,MAAM,mBAAmB;AAMlB,MAAM,cAAc;AAAA,EACzB,SAASA,aAAY,OAAO,aAAa;AACjC,UAAA;AAAA,MACJ,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA,iBAAiB;AAAA,MACjB,GAAG;AAAA,IAAA,IACD,gBAAgB,eAAe,KAAK;AACxC,UAAM,EAAE,SAAS,OAAO,WAAW,WAAW;AAExC,UAAA,eAAe,WAAW,YAAY;AAEtC,UAAA,UAAU,OAAO,IAAI;AAErB,UAAA,YAAY,WAAW,aAAa,OAAO;AAEjD,UAAM,YACJ,aAAa,cAAc,YAAY,SAAS;AAElD,WACG,oBAAA,oBAAoB,UAApB,EAA6B,OAAO,qBACnC,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW,GAAG,QAAQ,MAAM,SAAS;AAAA,QACrC,KAAK;AAAA,QACL,MAAM,cAAc,mBAAmB,OAAO;AAAA,QAC7C,GAAG;AAAA,QAEH,UACG,iBAAA,SAAS,IAAI,UAAU,CAAC,YAAY;AAClC,cAAI,CAAC,eAAe,OAAO,EAAU,QAAA;AAEnC,iBAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI,SAAS,QAAQ,GAAG;AAAA,cACxB,SAAS;AAAA,cAET,UAAS;AAAA,cACT,aAAa,oBAAoB;AAAA,cACjC,gBAAgB;AAAA,cAChB,eAAe;AAAA,cACf,UAAU,QAAQ,MAAM;AAAA,cAEvB,UAAA;AAAA,YAAA;AAAA,YAPI,OAAO,QAAQ,GAAG;AAAA,UAQzB;AAAA,QAAA,CAEH,IACD;AAAA,MAAA;AAAA,IAAA,GAER;AAAA,EAAA;AAGN;"}
@@ -1,10 +1,10 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { useDefaultProps } from "@hitachivantara/uikit-react-utils";
4
- import { useUniqueId } from "../hooks/useUniqueId.js";
4
+ import { useUniqueId } from "../../hooks/useUniqueId.js";
5
5
  import { useClasses } from "./TableSection.styles.js";
6
6
  import { staticClasses } from "./TableSection.styles.js";
7
- import { HvSection } from "../Section/Section.js";
7
+ import { HvSection } from "../../Section/Section.js";
8
8
  const HvTableSection = forwardRef(
9
9
  function HvTableSection2(props, ref) {
10
10
  const {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSection.js","sources":["../../../../src/Table/TableSection/TableSection.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport {\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\n\nimport { useUniqueId } from \"../../hooks/useUniqueId\";\nimport { HvSection, HvSectionProps } from \"../../Section\";\nimport { staticClasses, useClasses } from \"./TableSection.styles\";\n\nexport { staticClasses as tableSectionClasses };\n\nexport type HvTableSectionClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTableSectionProps extends HvSectionProps {}\n\n/**\n * The `TableSection` component is a wrapper for the `Section` component that applies\n * specific stylings for tables that follow the latest DS specifications.\n */\nexport const HvTableSection = forwardRef<HTMLDivElement, HvTableSectionProps>(\n function HvTableSection(props, ref) {\n const {\n id,\n classes: classesProp,\n children,\n ...others\n } = useDefaultProps(\"HvTableSection\", props);\n\n const { classes } = useClasses(classesProp);\n const elementId = useUniqueId(id);\n\n return (\n <HvSection id={elementId} ref={ref} classes={classes} {...others}>\n {children}\n </HvSection>\n );\n },\n);\n"],"names":["HvTableSection"],"mappings":";;;;;;;AAoBO,MAAM,iBAAiB;AAAA,EAC5B,SAASA,gBAAe,OAAO,KAAK;AAC5B,UAAA;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA,GAAG;AAAA,IAAA,IACD,gBAAgB,kBAAkB,KAAK;AAE3C,UAAM,EAAE,QAAA,IAAY,WAAW,WAAW;AACpC,UAAA,YAAY,YAAY,EAAE;AAG9B,WAAA,oBAAC,aAAU,IAAI,WAAW,KAAU,SAAmB,GAAG,QACvD,UACH;AAAA,EAAA;AAGN;"}
@@ -1,17 +1,17 @@
1
1
  import { createClasses } from "@hitachivantara/uikit-react-utils";
2
2
  import { theme } from "@hitachivantara/uikit-styles";
3
- import { staticClasses as staticClasses$1 } from "../Table/TableContainer/TableContainer.styles.js";
4
- import "../Table/TableContainer/TableContainer.js";
5
- import { staticClasses as staticClasses$2 } from "../Table/TableHeader/TableHeader.styles.js";
6
- import "../Table/TableHeader/TableHeader.js";
7
- import { staticClasses as staticClasses$3 } from "../Table/TableRow/TableRow.styles.js";
8
- import "../Table/TableRow/TableRow.js";
9
- import { staticClasses as staticClasses$4 } from "../Table/TableCell/TableCell.styles.js";
10
- import "../Table/TableCell/TableCell.js";
11
- import { staticClasses as staticClasses$5 } from "../BulkActions/BulkActions.styles.js";
12
- import "../BulkActions/BulkActions.js";
13
- import { staticClasses as staticClasses$6 } from "../Pagination/Pagination.styles.js";
14
- import "../Pagination/Pagination.js";
3
+ import { staticClasses as staticClasses$1 } from "../../Pagination/Pagination.styles.js";
4
+ import "../../Pagination/Pagination.js";
5
+ import { staticClasses as staticClasses$2 } from "../../BulkActions/BulkActions.styles.js";
6
+ import "../../BulkActions/BulkActions.js";
7
+ import { staticClasses as staticClasses$3 } from "../TableCell/TableCell.styles.js";
8
+ import "../TableCell/TableCell.js";
9
+ import { staticClasses as staticClasses$4 } from "../TableRow/TableRow.styles.js";
10
+ import "../TableRow/TableRow.js";
11
+ import { staticClasses as staticClasses$5 } from "../TableHeader/TableHeader.styles.js";
12
+ import "../TableHeader/TableHeader.js";
13
+ import { staticClasses as staticClasses$6 } from "../TableContainer/TableContainer.styles.js";
14
+ import "../TableContainer/TableContainer.js";
15
15
  const { staticClasses, useClasses } = createClasses("HvTableSection", {
16
16
  root: {},
17
17
  header: {
@@ -36,43 +36,43 @@ const { staticClasses, useClasses } = createClasses("HvTableSection", {
36
36
  borderBottomLeftRadius: "inherit",
37
37
  borderBottomRightRadius: "inherit"
38
38
  },
39
- [`& .${staticClasses$1.root}`]: {
39
+ [`& .${staticClasses$6.root}`]: {
40
40
  paddingBottom: 0,
41
41
  borderTopLeftRadius: "inherit",
42
42
  borderTopRightRadius: "inherit"
43
43
  },
44
- [`& .${staticClasses$2.head}`]: {
44
+ [`& .${staticClasses$5.head}`]: {
45
45
  backgroundColor: theme.colors.atmo2,
46
46
  borderBottomColor: theme.colors.atmo3,
47
- [`&.${staticClasses$2.variantCheckbox}`]: {
47
+ [`&.${staticClasses$5.variantCheckbox}`]: {
48
48
  borderRight: "none"
49
49
  },
50
- [`&.${staticClasses$2.variantActions}`]: {
50
+ [`&.${staticClasses$5.variantActions}`]: {
51
51
  borderLeft: "none"
52
52
  }
53
53
  },
54
54
  // Remove border for the last table row
55
- [`& .${staticClasses$3.root}`]: {
55
+ [`& .${staticClasses$4.root}`]: {
56
56
  "&:last-child": {
57
- [`& .${staticClasses$4.root}`]: { borderBottom: "none" }
57
+ [`& .${staticClasses$3.root}`]: { borderBottom: "none" }
58
58
  }
59
59
  },
60
- [`& .${staticClasses$4.root}`]: {
60
+ [`& .${staticClasses$3.root}`]: {
61
61
  borderBottomColor: theme.colors.atmo3
62
62
  },
63
- [`& .${staticClasses$4.variantCheckbox}`]: {
63
+ [`& .${staticClasses$3.variantCheckbox}`]: {
64
64
  borderRight: "none"
65
65
  },
66
- [`& .${staticClasses$4.variantActions}`]: {
66
+ [`& .${staticClasses$3.variantActions}`]: {
67
67
  borderLeft: "none"
68
68
  },
69
- [`& .${staticClasses$5.root}`]: {
69
+ [`& .${staticClasses$2.root}`]: {
70
70
  marginBottom: 0,
71
71
  border: "none",
72
72
  borderBottom: `1px solid ${theme.colors.atmo3}`,
73
73
  padding: theme.spacing("xs", "sm")
74
74
  },
75
- [`& .${staticClasses$6.root}`]: {
75
+ [`& .${staticClasses$1.root}`]: {
76
76
  margin: 0,
77
77
  backgroundColor: theme.colors.atmo2,
78
78
  padding: theme.space.xs,
@@ -80,10 +80,10 @@ const { staticClasses, useClasses } = createClasses("HvTableSection", {
80
80
  borderBottomLeftRadius: "inherit",
81
81
  borderBottomRightRadius: "inherit"
82
82
  },
83
- [`& .${staticClasses$6.pageSizeOptions}`]: {
83
+ [`& .${staticClasses$1.pageSizeOptions}`]: {
84
84
  left: theme.space.sm
85
85
  },
86
- [`& .${staticClasses$6.pageSizeHeader}`]: {
86
+ [`& .${staticClasses$1.pageSizeHeader}`]: {
87
87
  border: "none",
88
88
  "&:hover": {
89
89
  border: "none"
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSection.styles.js","sources":["../../../../src/Table/TableSection/TableSection.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { bulkActionsClasses } from \"../../BulkActions\";\nimport { paginationClasses } from \"../../Pagination\";\nimport { tableCellClasses } from \"../TableCell\";\nimport { tableContainerClasses } from \"../TableContainer\";\nimport { tableHeaderClasses } from \"../TableHeader\";\nimport { tableRowClasses } from \"../TableRow\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvTableSection\", {\n root: {},\n header: {\n // Only apply the border to divide the header and content when both are displayed\n \"+ div\": {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n },\n },\n actions: {},\n content: {\n marginTop: 0,\n padding: 0,\n\n // Apply border radius to the first child if there's not an header\n \"&:first-of-type\": {\n \"& > :first-of-type\": {\n borderTopLeftRadius: \"inherit\",\n borderTopRightRadius: \"inherit\",\n },\n },\n\n \"& > :last-child\": {\n borderBottomLeftRadius: \"inherit\",\n borderBottomRightRadius: \"inherit\",\n },\n\n [`& .${tableContainerClasses.root}`]: {\n paddingBottom: 0,\n borderTopLeftRadius: \"inherit\",\n borderTopRightRadius: \"inherit\",\n },\n\n [`& .${tableHeaderClasses.head}`]: {\n backgroundColor: theme.colors.atmo2,\n borderBottomColor: theme.colors.atmo3,\n [`&.${tableHeaderClasses.variantCheckbox}`]: {\n borderRight: \"none\",\n },\n [`&.${tableHeaderClasses.variantActions}`]: {\n borderLeft: \"none\",\n },\n },\n\n // Remove border for the last table row\n [`& .${tableRowClasses.root}`]: {\n \"&:last-child\": {\n [`& .${tableCellClasses.root}`]: { borderBottom: \"none\" },\n },\n },\n\n [`& .${tableCellClasses.root}`]: {\n borderBottomColor: theme.colors.atmo3,\n },\n\n [`& .${tableCellClasses.variantCheckbox}`]: {\n borderRight: \"none\",\n },\n\n [`& .${tableCellClasses.variantActions}`]: {\n borderLeft: \"none\",\n },\n\n [`& .${bulkActionsClasses.root}`]: {\n marginBottom: 0,\n border: \"none\",\n borderBottom: `1px solid ${theme.colors.atmo3}`,\n padding: theme.spacing(\"xs\", \"sm\"),\n },\n\n [`& .${paginationClasses.root}`]: {\n margin: 0,\n backgroundColor: theme.colors.atmo2,\n padding: theme.space.xs,\n borderTop: `1px solid ${theme.colors.atmo3}`,\n borderBottomLeftRadius: \"inherit\",\n borderBottomRightRadius: \"inherit\",\n },\n\n [`& .${paginationClasses.pageSizeOptions}`]: {\n left: theme.space.sm,\n },\n [`& .${paginationClasses.pageSizeHeader}`]: {\n border: \"none\",\n \"&:hover\": {\n border: \"none\",\n },\n },\n },\n hidden: {},\n raisedHeader: {\n \"& $content\": {\n paddingTop: 0,\n },\n },\n hasHeader: {},\n /** @deprecated use `hasHeader` instead */\n spaceTop: {},\n});\n"],"names":["tableContainerClasses","tableHeaderClasses","tableRowClasses","tableCellClasses","bulkActionsClasses","paginationClasses"],"mappings":";;;;;;;;;;;;;;AAUO,MAAM,EAAE,eAAe,eAAe,cAAc,kBAAkB;AAAA,EAC3E,MAAM,CAAC;AAAA,EACP,QAAQ;AAAA;AAAA,IAEN,SAAS;AAAA,MACP,qBAAqB;AAAA,MACrB,sBAAsB;AAAA,IAAA;AAAA,EAE1B;AAAA,EACA,SAAS,CAAC;AAAA,EACV,SAAS;AAAA,IACP,WAAW;AAAA,IACX,SAAS;AAAA;AAAA,IAGT,mBAAmB;AAAA,MACjB,sBAAsB;AAAA,QACpB,qBAAqB;AAAA,QACrB,sBAAsB;AAAA,MAAA;AAAA,IAE1B;AAAA,IAEA,mBAAmB;AAAA,MACjB,wBAAwB;AAAA,MACxB,yBAAyB;AAAA,IAC3B;AAAA,IAEA,CAAC,MAAMA,gBAAsB,IAAI,EAAE,GAAG;AAAA,MACpC,eAAe;AAAA,MACf,qBAAqB;AAAA,MACrB,sBAAsB;AAAA,IACxB;AAAA,IAEA,CAAC,MAAMC,gBAAmB,IAAI,EAAE,GAAG;AAAA,MACjC,iBAAiB,MAAM,OAAO;AAAA,MAC9B,mBAAmB,MAAM,OAAO;AAAA,MAChC,CAAC,KAAKA,gBAAmB,eAAe,EAAE,GAAG;AAAA,QAC3C,aAAa;AAAA,MACf;AAAA,MACA,CAAC,KAAKA,gBAAmB,cAAc,EAAE,GAAG;AAAA,QAC1C,YAAY;AAAA,MAAA;AAAA,IAEhB;AAAA;AAAA,IAGA,CAAC,MAAMC,gBAAgB,IAAI,EAAE,GAAG;AAAA,MAC9B,gBAAgB;AAAA,QACd,CAAC,MAAMC,gBAAiB,IAAI,EAAE,GAAG,EAAE,cAAc,OAAO;AAAA,MAAA;AAAA,IAE5D;AAAA,IAEA,CAAC,MAAMA,gBAAiB,IAAI,EAAE,GAAG;AAAA,MAC/B,mBAAmB,MAAM,OAAO;AAAA,IAClC;AAAA,IAEA,CAAC,MAAMA,gBAAiB,eAAe,EAAE,GAAG;AAAA,MAC1C,aAAa;AAAA,IACf;AAAA,IAEA,CAAC,MAAMA,gBAAiB,cAAc,EAAE,GAAG;AAAA,MACzC,YAAY;AAAA,IACd;AAAA,IAEA,CAAC,MAAMC,gBAAmB,IAAI,EAAE,GAAG;AAAA,MACjC,cAAc;AAAA,MACd,QAAQ;AAAA,MACR,cAAc,aAAa,MAAM,OAAO,KAAK;AAAA,MAC7C,SAAS,MAAM,QAAQ,MAAM,IAAI;AAAA,IACnC;AAAA,IAEA,CAAC,MAAMC,gBAAkB,IAAI,EAAE,GAAG;AAAA,MAChC,QAAQ;AAAA,MACR,iBAAiB,MAAM,OAAO;AAAA,MAC9B,SAAS,MAAM,MAAM;AAAA,MACrB,WAAW,aAAa,MAAM,OAAO,KAAK;AAAA,MAC1C,wBAAwB;AAAA,MACxB,yBAAyB;AAAA,IAC3B;AAAA,IAEA,CAAC,MAAMA,gBAAkB,eAAe,EAAE,GAAG;AAAA,MAC3C,MAAM,MAAM,MAAM;AAAA,IACpB;AAAA,IACA,CAAC,MAAMA,gBAAkB,cAAc,EAAE,GAAG;AAAA,MAC1C,QAAQ;AAAA,MACR,WAAW;AAAA,QACT,QAAQ;AAAA,MAAA;AAAA,IACV;AAAA,EAEJ;AAAA,EACA,QAAQ,CAAC;AAAA,EACT,cAAc;AAAA,IACZ,cAAc;AAAA,MACZ,YAAY;AAAA,IAAA;AAAA,EAEhB;AAAA,EACA,WAAW,CAAC;AAAA;AAAA,EAEZ,UAAU,CAAA;AACZ,CAAC;"}
@@ -1,7 +1,6 @@
1
1
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
2
  import { DropDownXS } from "@hitachivantara/uikit-react-icons";
3
3
  import { useLabels } from "../../hooks/useLabels.js";
4
- import { DefaultCell } from "../renderers/DefaultCell.js";
5
4
  import { HvButton } from "../../Button/Button.js";
6
5
  import { HvTypography } from "../../Typography/Typography.js";
7
6
  const DEFAULT_LABELS = {
@@ -34,11 +33,12 @@ const visibleColumnsHook = (columns, { instance }) => {
34
33
  return columns;
35
34
  }
36
35
  const firstDataColumnIndex = columns.findIndex(
37
- (c) => c.id?.indexOf("_hv_") !== 0
36
+ (c) => !c.id?.startsWith("_hv_")
38
37
  );
39
38
  if (firstDataColumnIndex !== -1) {
40
39
  const firstDataColumn = columns[firstDataColumnIndex];
41
- if (firstDataColumn.Cell == null || firstDataColumn.Cell !== DefaultCell) {
40
+ if (firstDataColumn.Cell === CellWithExpandButton) return columns;
41
+ if (firstDataColumn.Cell == null) {
42
42
  firstDataColumn.Cell = CellWithExpandButton;
43
43
  firstDataColumn.variant = "expand";
44
44
  return columns;
@@ -1 +1 @@
1
- {"version":3,"file":"useHvRowExpand.js","sources":["../../../../src/Table/hooks/useHvRowExpand.tsx"],"sourcesContent":["import {\n Hooks,\n TableExpandedToggleProps,\n UseExpandedRowProps,\n} from \"react-table\";\nimport { DropDownXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvButton } from \"../../Button\";\nimport { useLabels } from \"../../hooks/useLabels\";\nimport { HvTypography } from \"../../Typography\";\nimport { DefaultCell } from \"../renderers/DefaultCell\";\nimport type { HvCellProps } from \"./useHvTable\";\n\n// #region ##### TYPES #####\n\nexport interface UseHvRowExpandTableRowProps {\n expanded?: boolean;\n}\n\nexport type UseHvRowExpandTableOptions = {\n disableCreateExpandButton?: boolean;\n};\n\nexport interface UseHvRowExpandRowToggleProps extends TableExpandedToggleProps {\n onClick?: React.MouseEventHandler<unknown>;\n}\n\nexport interface UseHvRowExpandRowInstance<\n D extends object = Record<string, unknown>,\n> extends UseExpandedRowProps<D> {\n getToggleRowExpandedProps: (\n props?: Partial<TableExpandedToggleProps>,\n ) => UseHvRowExpandRowToggleProps;\n}\n\nexport type UseRowExpandProps = (<D extends object = Record<string, unknown>>(\n hooks: Hooks<D>,\n) => void) & { pluginName: string };\n\n// #endregion ##### TYPES #####\n\nconst DEFAULT_LABELS = {\n expandRowButtonAriaLabel: \"Expand this row\",\n collapseRowButtonAriaLabel: \"Collapse this row\",\n};\n\nexport const CellWithExpandButton = ({\n row,\n cell,\n labels: labelsProp,\n}: HvCellProps<any>) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n const rowProps = row.getToggleRowExpandedProps?.();\n\n return (\n <>\n <HvButton\n icon\n aria-label={\n row.isExpanded\n ? labels.collapseRowButtonAriaLabel\n : labels.expandRowButtonAriaLabel\n }\n aria-expanded={row.isExpanded}\n onClick={rowProps?.onClick}\n >\n <DropDownXS rotate={row.isExpanded} />\n </HvButton>\n {cell?.value && (\n <HvTypography variant=\"label\" component=\"span\">\n {cell.value}\n </HvTypography>\n )}\n </>\n );\n};\n\nconst visibleColumnsHook = (columns: any, { instance }: any) => {\n if (instance.disableCreateExpandButton) {\n return columns;\n }\n\n // add a button to first data column, unless it has a custom renderer\n // if so, add an extra column instead\n const firstDataColumnIndex = columns.findIndex(\n (c: any) => c.id?.indexOf(\"_hv_\") !== 0,\n );\n\n if (firstDataColumnIndex !== -1) {\n const firstDataColumn = columns[firstDataColumnIndex];\n\n if (firstDataColumn.Cell == null || firstDataColumn.Cell !== DefaultCell) {\n firstDataColumn.Cell = CellWithExpandButton;\n firstDataColumn.variant = \"expand\";\n\n return columns;\n }\n }\n\n const expandColumn = {\n id: \"_hv_expand\",\n variant: \"none\",\n\n width: 32,\n\n // this will only work when using useHvTableSticky\n // but ensures it stays left of any sticky column\n sticky: \"left\",\n\n Cell: CellWithExpandButton,\n };\n\n const columnsCopy = [...columns];\n columnsCopy.splice(\n firstDataColumnIndex !== -1 ? firstDataColumnIndex : 0,\n 0,\n expandColumn,\n );\n\n return columnsCopy;\n};\n\nconst getRowPropsHook = (props: any, { row }: any) => {\n const nextProps: UseHvRowExpandTableRowProps = {\n expanded: row.isExpanded,\n };\n\n return [props, nextProps];\n};\n\nexport const useHvRowExpand: UseRowExpandProps = (hooks) => {\n hooks.visibleColumns.push(visibleColumnsHook);\n hooks.getRowProps.push(getRowPropsHook);\n};\nuseHvRowExpand.pluginName = \"useHvRowExpand\";\n"],"names":[],"mappings":";;;;;;AAyCA,MAAM,iBAAiB;AAAA,EACrB,0BAA0B;AAAA,EAC1B,4BAA4B;AAC9B;AAEO,MAAM,uBAAuB,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA,QAAQ;AACV,MAAwB;AAChB,QAAA,SAAS,UAAU,gBAAgB,UAAU;AAC7C,QAAA,WAAW,IAAI,4BAA4B;AAEjD,SAEI,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAI;AAAA,QACJ,cACE,IAAI,aACA,OAAO,6BACP,OAAO;AAAA,QAEb,iBAAe,IAAI;AAAA,QACnB,SAAS,UAAU;AAAA,QAEnB,UAAC,oBAAA,YAAA,EAAW,QAAQ,IAAI,WAAY,CAAA;AAAA,MAAA;AAAA,IACtC;AAAA,IACC,MAAM,SACJ,oBAAA,cAAA,EAAa,SAAQ,SAAQ,WAAU,QACrC,UAAA,KAAK,MACR,CAAA;AAAA,EAAA,GAEJ;AAEJ;AAEA,MAAM,qBAAqB,CAAC,SAAc,EAAE,eAAoB;AAC9D,MAAI,SAAS,2BAA2B;AAC/B,WAAA;AAAA,EAAA;AAKT,QAAM,uBAAuB,QAAQ;AAAA,IACnC,CAAC,MAAW,EAAE,IAAI,QAAQ,MAAM,MAAM;AAAA,EACxC;AAEA,MAAI,yBAAyB,IAAI;AACzB,UAAA,kBAAkB,QAAQ,oBAAoB;AAEpD,QAAI,gBAAgB,QAAQ,QAAQ,gBAAgB,SAAS,aAAa;AACxE,sBAAgB,OAAO;AACvB,sBAAgB,UAAU;AAEnB,aAAA;AAAA,IAAA;AAAA,EACT;AAGF,QAAM,eAAe;AAAA,IACnB,IAAI;AAAA,IACJ,SAAS;AAAA,IAET,OAAO;AAAA;AAAA;AAAA,IAIP,QAAQ;AAAA,IAER,MAAM;AAAA,EACR;AAEM,QAAA,cAAc,CAAC,GAAG,OAAO;AACnB,cAAA;AAAA,IACV,yBAAyB,KAAK,uBAAuB;AAAA,IACrD;AAAA,IACA;AAAA,EACF;AAEO,SAAA;AACT;AAEA,MAAM,kBAAkB,CAAC,OAAY,EAAE,UAAe;AACpD,QAAM,YAAyC;AAAA,IAC7C,UAAU,IAAI;AAAA,EAChB;AAEO,SAAA,CAAC,OAAO,SAAS;AAC1B;AAEa,MAAA,iBAAoC,CAAC,UAAU;AACpD,QAAA,eAAe,KAAK,kBAAkB;AACtC,QAAA,YAAY,KAAK,eAAe;AACxC;AACA,eAAe,aAAa;"}
1
+ {"version":3,"file":"useHvRowExpand.js","sources":["../../../../src/Table/hooks/useHvRowExpand.tsx"],"sourcesContent":["import type {\n Hooks,\n TableExpandedToggleProps,\n UseExpandedRowProps,\n} from \"react-table\";\nimport { DropDownXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport { HvButton } from \"../../Button\";\nimport { useLabels } from \"../../hooks/useLabels\";\nimport { HvTypography } from \"../../Typography\";\nimport type { HvCellProps, HvColumnInstance } from \"./useHvTable\";\n\n// #region ##### TYPES #####\n\nexport interface UseHvRowExpandTableRowProps {\n expanded?: boolean;\n}\n\nexport type UseHvRowExpandTableOptions = {\n disableCreateExpandButton?: boolean;\n};\n\nexport interface UseHvRowExpandRowToggleProps extends TableExpandedToggleProps {\n onClick?: React.MouseEventHandler<unknown>;\n}\n\nexport interface UseHvRowExpandRowInstance<\n D extends object = Record<string, unknown>,\n> extends UseExpandedRowProps<D> {\n getToggleRowExpandedProps: (\n props?: Partial<TableExpandedToggleProps>,\n ) => UseHvRowExpandRowToggleProps;\n}\n\nexport type UseRowExpandProps = (<D extends object = Record<string, unknown>>(\n hooks: Hooks<D>,\n) => void) & { pluginName: string };\n\n// #endregion ##### TYPES #####\n\nconst DEFAULT_LABELS = {\n expandRowButtonAriaLabel: \"Expand this row\",\n collapseRowButtonAriaLabel: \"Collapse this row\",\n};\n\nexport const CellWithExpandButton = ({\n row,\n cell,\n labels: labelsProp,\n}: HvCellProps<any>) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n const rowProps = row.getToggleRowExpandedProps?.();\n\n return (\n <>\n <HvButton\n icon\n aria-label={\n row.isExpanded\n ? labels.collapseRowButtonAriaLabel\n : labels.expandRowButtonAriaLabel\n }\n aria-expanded={row.isExpanded}\n onClick={rowProps?.onClick}\n >\n <DropDownXS rotate={row.isExpanded} />\n </HvButton>\n {cell?.value && (\n <HvTypography variant=\"label\" component=\"span\">\n {cell.value}\n </HvTypography>\n )}\n </>\n );\n};\n\nconst visibleColumnsHook = (columns: any, { instance }: any) => {\n if (instance.disableCreateExpandButton) {\n return columns;\n }\n\n // add a button to first data column, or an extra column for non-default renderers\n const firstDataColumnIndex = (columns as HvColumnInstance<any>[]).findIndex(\n (c) => !c.id?.startsWith(\"_hv_\"),\n );\n\n if (firstDataColumnIndex !== -1) {\n const firstDataColumn = columns[firstDataColumnIndex];\n\n // keep columns if CellWithExpandButton has already been added\n if (firstDataColumn.Cell === CellWithExpandButton) return columns;\n\n if (firstDataColumn.Cell == null) {\n firstDataColumn.Cell = CellWithExpandButton;\n firstDataColumn.variant = \"expand\";\n\n return columns;\n }\n }\n\n const expandColumn = {\n id: \"_hv_expand\",\n variant: \"none\",\n\n width: 32,\n\n // this will only work when using useHvTableSticky\n // but ensures it stays left of any sticky column\n sticky: \"left\",\n\n Cell: CellWithExpandButton,\n };\n\n const columnsCopy = [...columns];\n columnsCopy.splice(\n firstDataColumnIndex !== -1 ? firstDataColumnIndex : 0,\n 0,\n expandColumn,\n );\n\n return columnsCopy;\n};\n\nconst getRowPropsHook = (props: any, { row }: any) => {\n const nextProps: UseHvRowExpandTableRowProps = {\n expanded: row.isExpanded,\n };\n\n return [props, nextProps];\n};\n\nexport const useHvRowExpand: UseRowExpandProps = (hooks) => {\n hooks.visibleColumns.push(visibleColumnsHook);\n hooks.getRowProps.push(getRowPropsHook);\n};\nuseHvRowExpand.pluginName = \"useHvRowExpand\";\n"],"names":[],"mappings":";;;;;AAwCA,MAAM,iBAAiB;AAAA,EACrB,0BAA0B;AAAA,EAC1B,4BAA4B;AAC9B;AAEO,MAAM,uBAAuB,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA,QAAQ;AACV,MAAwB;AAChB,QAAA,SAAS,UAAU,gBAAgB,UAAU;AAC7C,QAAA,WAAW,IAAI,4BAA4B;AAEjD,SAEI,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAI;AAAA,QACJ,cACE,IAAI,aACA,OAAO,6BACP,OAAO;AAAA,QAEb,iBAAe,IAAI;AAAA,QACnB,SAAS,UAAU;AAAA,QAEnB,UAAC,oBAAA,YAAA,EAAW,QAAQ,IAAI,WAAY,CAAA;AAAA,MAAA;AAAA,IACtC;AAAA,IACC,MAAM,SACJ,oBAAA,cAAA,EAAa,SAAQ,SAAQ,WAAU,QACrC,UAAA,KAAK,MACR,CAAA;AAAA,EAAA,GAEJ;AAEJ;AAEA,MAAM,qBAAqB,CAAC,SAAc,EAAE,eAAoB;AAC9D,MAAI,SAAS,2BAA2B;AAC/B,WAAA;AAAA,EAAA;AAIT,QAAM,uBAAwB,QAAoC;AAAA,IAChE,CAAC,MAAM,CAAC,EAAE,IAAI,WAAW,MAAM;AAAA,EACjC;AAEA,MAAI,yBAAyB,IAAI;AACzB,UAAA,kBAAkB,QAAQ,oBAAoB;AAGhD,QAAA,gBAAgB,SAAS,qBAA6B,QAAA;AAEtD,QAAA,gBAAgB,QAAQ,MAAM;AAChC,sBAAgB,OAAO;AACvB,sBAAgB,UAAU;AAEnB,aAAA;AAAA,IAAA;AAAA,EACT;AAGF,QAAM,eAAe;AAAA,IACnB,IAAI;AAAA,IACJ,SAAS;AAAA,IAET,OAAO;AAAA;AAAA;AAAA,IAIP,QAAQ;AAAA,IAER,MAAM;AAAA,EACR;AAEM,QAAA,cAAc,CAAC,GAAG,OAAO;AACnB,cAAA;AAAA,IACV,yBAAyB,KAAK,uBAAuB;AAAA,IACrD;AAAA,IACA;AAAA,EACF;AAEO,SAAA;AACT;AAEA,MAAM,kBAAkB,CAAC,OAAY,EAAE,UAAe;AACpD,QAAM,YAAyC;AAAA,IAC7C,UAAU,IAAI;AAAA,EAChB;AAEO,SAAA,CAAC,OAAO,SAAS;AAC1B;AAEa,MAAA,iBAAoC,CAAC,UAAU;AACpD,QAAA,eAAe,KAAK,kBAAkB;AACtC,QAAA,YAAY,KAAK,eAAe;AACxC;AACA,eAAe,aAAa;"}
@@ -42,9 +42,6 @@ const { staticClasses, useClasses } = createClasses("HvTab", {
42
42
  // Override Mui styling: https://mui.com/material-ui/api/tab/#css
43
43
  "& .MuiTab-iconWrapper": {
44
44
  margin: 0
45
- },
46
- "& svg .color0": {
47
- fill: "currentcolor"
48
45
  }
49
46
  },
50
47
  focusVisible: {
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.styles.js","sources":["../../../../src/Tabs/Tab/Tab.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { outlineStyles } from \"../../utils/focusUtils\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvTab\", {\n root: {\n marginTop: \"3px\",\n padding: theme.spacing(0, \"sm\"),\n minWidth: 70,\n minHeight: 32,\n textTransform: \"none\",\n ...theme.typography.body,\n borderRadius: `${theme.radii.base} ${theme.radii.base} 0 0`,\n \"&:hover\": {\n backgroundColor: theme.colors.containerBackgroundHover,\n \"&::after\": {\n height: \"1px\",\n backgroundColor: theme.colors.atmo4,\n },\n },\n \"&$selected\": {\n fontWeight: theme.typography.label.fontWeight,\n },\n \"&$disabled\": {\n color: theme.colors.secondary_60,\n cursor: \"not-allowed\",\n pointerEvents: \"all\",\n opacity: 1,\n \"&:hover\": {\n background: \"none\",\n },\n },\n opacity: 1,\n \"&::after\": {\n position: \"absolute\",\n left: 0,\n top: \"calc(100% - 1px)\",\n height: \"1px\",\n width: \"100%\",\n backgroundColor: theme.colors.atmo4,\n content: \"''\",\n },\n // Override Mui styling: https://mui.com/material-ui/api/tab/#css\n \"& .MuiTab-iconWrapper\": {\n margin: 0,\n },\n \"& svg .color0\": {\n fill: \"currentcolor\",\n },\n },\n focusVisible: {\n ...outlineStyles,\n },\n selected: {},\n disabled: {},\n});\n"],"names":[],"mappings":";;;AAKO,MAAM,EAAE,eAAe,eAAe,cAAc,SAAS;AAAA,EAClE,MAAM;AAAA,IACJ,WAAW;AAAA,IACX,SAAS,MAAM,QAAQ,GAAG,IAAI;AAAA,IAC9B,UAAU;AAAA,IACV,WAAW;AAAA,IACX,eAAe;AAAA,IACf,GAAG,MAAM,WAAW;AAAA,IACpB,cAAc,GAAG,MAAM,MAAM,IAAI,IAAI,MAAM,MAAM,IAAI;AAAA,IACrD,WAAW;AAAA,MACT,iBAAiB,MAAM,OAAO;AAAA,MAC9B,YAAY;AAAA,QACV,QAAQ;AAAA,QACR,iBAAiB,MAAM,OAAO;AAAA,MAAA;AAAA,IAElC;AAAA,IACA,cAAc;AAAA,MACZ,YAAY,MAAM,WAAW,MAAM;AAAA,IACrC;AAAA,IACA,cAAc;AAAA,MACZ,OAAO,MAAM,OAAO;AAAA,MACpB,QAAQ;AAAA,MACR,eAAe;AAAA,MACf,SAAS;AAAA,MACT,WAAW;AAAA,QACT,YAAY;AAAA,MAAA;AAAA,IAEhB;AAAA,IACA,SAAS;AAAA,IACT,YAAY;AAAA,MACV,UAAU;AAAA,MACV,MAAM;AAAA,MACN,KAAK;AAAA,MACL,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,iBAAiB,MAAM,OAAO;AAAA,MAC9B,SAAS;AAAA,IACX;AAAA;AAAA,IAEA,yBAAyB;AAAA,MACvB,QAAQ;AAAA,IACV;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IAAA;AAAA,EAEV;AAAA,EACA,cAAc;AAAA,IACZ,GAAG;AAAA,EACL;AAAA,EACA,UAAU,CAAC;AAAA,EACX,UAAU,CAAA;AACZ,CAAC;"}
1
+ {"version":3,"file":"Tab.styles.js","sources":["../../../../src/Tabs/Tab/Tab.styles.tsx"],"sourcesContent":["import { createClasses } from \"@hitachivantara/uikit-react-utils\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\n\nimport { outlineStyles } from \"../../utils/focusUtils\";\n\nexport const { staticClasses, useClasses } = createClasses(\"HvTab\", {\n root: {\n marginTop: \"3px\",\n padding: theme.spacing(0, \"sm\"),\n minWidth: 70,\n minHeight: 32,\n textTransform: \"none\",\n ...theme.typography.body,\n borderRadius: `${theme.radii.base} ${theme.radii.base} 0 0`,\n \"&:hover\": {\n backgroundColor: theme.colors.containerBackgroundHover,\n \"&::after\": {\n height: \"1px\",\n backgroundColor: theme.colors.atmo4,\n },\n },\n \"&$selected\": {\n fontWeight: theme.typography.label.fontWeight,\n },\n \"&$disabled\": {\n color: theme.colors.secondary_60,\n cursor: \"not-allowed\",\n pointerEvents: \"all\",\n opacity: 1,\n \"&:hover\": {\n background: \"none\",\n },\n },\n opacity: 1,\n \"&::after\": {\n position: \"absolute\",\n left: 0,\n top: \"calc(100% - 1px)\",\n height: \"1px\",\n width: \"100%\",\n backgroundColor: theme.colors.atmo4,\n content: \"''\",\n },\n // Override Mui styling: https://mui.com/material-ui/api/tab/#css\n \"& .MuiTab-iconWrapper\": {\n margin: 0,\n },\n },\n focusVisible: {\n ...outlineStyles,\n },\n selected: {},\n disabled: {},\n});\n"],"names":[],"mappings":";;;AAKO,MAAM,EAAE,eAAe,eAAe,cAAc,SAAS;AAAA,EAClE,MAAM;AAAA,IACJ,WAAW;AAAA,IACX,SAAS,MAAM,QAAQ,GAAG,IAAI;AAAA,IAC9B,UAAU;AAAA,IACV,WAAW;AAAA,IACX,eAAe;AAAA,IACf,GAAG,MAAM,WAAW;AAAA,IACpB,cAAc,GAAG,MAAM,MAAM,IAAI,IAAI,MAAM,MAAM,IAAI;AAAA,IACrD,WAAW;AAAA,MACT,iBAAiB,MAAM,OAAO;AAAA,MAC9B,YAAY;AAAA,QACV,QAAQ;AAAA,QACR,iBAAiB,MAAM,OAAO;AAAA,MAAA;AAAA,IAElC;AAAA,IACA,cAAc;AAAA,MACZ,YAAY,MAAM,WAAW,MAAM;AAAA,IACrC;AAAA,IACA,cAAc;AAAA,MACZ,OAAO,MAAM,OAAO;AAAA,MACpB,QAAQ;AAAA,MACR,eAAe;AAAA,MACf,SAAS;AAAA,MACT,WAAW;AAAA,QACT,YAAY;AAAA,MAAA;AAAA,IAEhB;AAAA,IACA,SAAS;AAAA,IACT,YAAY;AAAA,MACV,UAAU;AAAA,MACV,MAAM;AAAA,MACN,KAAK;AAAA,MACL,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,iBAAiB,MAAM,OAAO;AAAA,MAC9B,SAAS;AAAA,IACX;AAAA;AAAA,IAEA,yBAAyB;AAAA,MACvB,QAAQ;AAAA,IAAA;AAAA,EAEZ;AAAA,EACA,cAAc;AAAA,IACZ,GAAG;AAAA,EACL;AAAA,EACA,UAAU,CAAC;AAAA,EACX,UAAU,CAAA;AACZ,CAAC;"}
@@ -109,7 +109,7 @@ const HvTag = forwardRef(function HvTag2(props, ref) {
109
109
  children: label
110
110
  }
111
111
  ),
112
- onDelete && deleteIcon
112
+ onDelete && !disabled && deleteIcon
113
113
  ]
114
114
  }
115
115
  );
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../src/Tag/Tag.tsx"],"sourcesContent":["import { cloneElement, forwardRef, isValidElement } from \"react\";\nimport {\n Checkbox,\n CheckboxCheck,\n CloseXS,\n} from \"@hitachivantara/uikit-react-icons\";\nimport {\n mergeStyles,\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\nimport { getColor, HvColorAny, theme } from \"@hitachivantara/uikit-styles\";\n\nimport { HvButtonBase, HvButtonBaseProps } from \"../ButtonBase\";\nimport { useControlled } from \"../hooks/useControlled\";\nimport { HvTypography } from \"../Typography\";\nimport { isDeleteKey } from \"../utils/keyboardUtils\";\nimport { staticClasses, useClasses } from \"./Tag.styles\";\n\nexport { staticClasses as tagClasses };\n\nexport type HvTagClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTagProps\n extends Omit<\n HvButtonBaseProps,\n \"type\" | \"color\" | \"classes\" | \"onClick\" | \"onToggle\"\n > {\n /** The label of the tag element. */\n label?: React.ReactNode;\n /** Indicates that the form element is disabled. */\n disabled?: boolean;\n /** The type of the tag element. A tag can be of semantic or categoric type. */\n type?: \"semantic\" | \"categorical\";\n /** The color variant of the tag */\n color?: HvColorAny;\n /** Icon used to customize the delete icon */\n deleteIcon?: React.ReactElement;\n /**\n * The callback fired when the delete icon is pressed.\n * This function has to be provided to the component, in order to render the delete icon\n * */\n onDelete?: React.EventHandler<any>;\n /** Callback triggered when any item is clicked. */\n onClick?: (event: React.MouseEvent<HTMLElement>, selected?: boolean) => void;\n /** Aria properties to apply to delete button in tag\n * @deprecated no longer used\n */\n deleteButtonArialLabel?: string;\n /** Props to apply to delete icon */\n deleteButtonProps?: React.HTMLAttributes<HTMLDivElement>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTagClasses;\n /** Determines whether or not the tag is selectable. */\n selectable?: boolean;\n /** Defines if the tag is selected. When defined the tag state becomes controlled. */\n selected?: boolean;\n /** When uncontrolled, defines the initial selected state. */\n defaultSelected?: boolean;\n}\n\n/**\n * A Tag is one word that describes a specific aspect of an asset. A single asset can have\n * multiple tags.\n * Use tags to highlight an item's status for quick recognition and navigation\n * Use color to indicate meanings that users can learn and recognize across products\n *\n * It leverages the [MUI Chip](https://mui.com/material-ui/react-chip/) component\n */\nexport const HvTag = forwardRef<\n // no-indent\n HTMLElement,\n HvTagProps\n>(function HvTag(props, ref) {\n const {\n classes: classesProp,\n className,\n component,\n style,\n label,\n disabled,\n type = \"semantic\",\n selectable,\n selected,\n defaultSelected = false,\n color,\n deleteIcon: deleteIconProp,\n onDelete,\n onClick,\n onKeyDown,\n onKeyUp,\n // TODO: remove from API\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n deleteButtonArialLabel = \"Delete tag\",\n deleteButtonProps = {},\n ...others\n } = useDefaultProps(\"HvTag\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const [isSelected, setIsSelected] = useControlled(\n selected,\n Boolean(defaultSelected),\n );\n\n const handleDeleteClick = (event: React.MouseEvent) => {\n // Stop the event from bubbling up to the tag\n event.stopPropagation();\n onDelete?.(event);\n };\n\n const backgroundColor =\n (type === \"semantic\" && getColor(color, \"neutral_20\")) ||\n (type === \"categorical\" && theme.alpha(getColor(color, \"cat1\")!, 0.2)) ||\n undefined;\n\n const isClickable = !!(onClick || onDelete || selectable);\n\n const CheckboxIcon = isSelected ? CheckboxCheck : Checkbox;\n\n const deleteIcon =\n deleteIconProp && isValidElement(deleteIconProp) ? (\n cloneElement<any>(deleteIconProp, {\n className: cx(classes.deleteIcon, {\n [classes.disabledDeleteIcon]: disabled,\n }),\n onClick: handleDeleteClick,\n })\n ) : (\n <CloseXS\n size=\"XS\"\n onClick={handleDeleteClick}\n className={cx(classes.deleteIcon, classes.button, classes.tagButton)}\n {...deleteButtonProps}\n />\n );\n\n return (\n <HvButtonBase\n ref={ref as any}\n component={isClickable ? HvButtonBase : \"div\"}\n disabled={disabled}\n data-color={color}\n style={mergeStyles(style, {\n \"--bgColor\": backgroundColor,\n })}\n className={cx(classes.root, classes.chipRoot, className, {\n [classes.disabled]: disabled,\n [classes.selected]: isSelected,\n [classes.clickable]: isClickable && !disabled,\n [classes.categorical]: type === \"categorical\",\n [classes.categoricalFocus]: type === \"categorical\" && !disabled,\n [classes.categoricalDisabled]: type === \"categorical\" && disabled,\n })}\n onKeyUp={(event: React.KeyboardEvent<HTMLButtonElement>) => {\n // Ignore events from children.\n if (event.currentTarget === event.target && isDeleteKey(event)) {\n onDelete?.(event);\n }\n\n onKeyUp?.(event);\n }}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n if (disabled) return;\n if (selectable) setIsSelected(!isSelected);\n onClick?.(event, !isSelected);\n }}\n selected={isClickable && isSelected}\n {...others}\n >\n {selectable && type === \"semantic\" && (\n <CheckboxIcon\n className={classes.icon}\n color={(disabled && [\"atmo3\", \"secondary_60\"]) || undefined}\n size=\"XS\"\n />\n )}\n <HvTypography\n noWrap\n variant=\"caption2\"\n component=\"span\"\n className={classes.label}\n >\n {label}\n </HvTypography>\n {onDelete && deleteIcon}\n </HvButtonBase>\n );\n});\n"],"names":["HvTag"],"mappings":"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"}
1
+ {"version":3,"file":"Tag.js","sources":["../../../src/Tag/Tag.tsx"],"sourcesContent":["import { cloneElement, forwardRef, isValidElement } from \"react\";\nimport {\n Checkbox,\n CheckboxCheck,\n CloseXS,\n} from \"@hitachivantara/uikit-react-icons\";\nimport {\n mergeStyles,\n useDefaultProps,\n type ExtractNames,\n} from \"@hitachivantara/uikit-react-utils\";\nimport { getColor, HvColorAny, theme } from \"@hitachivantara/uikit-styles\";\n\nimport { HvButtonBase, HvButtonBaseProps } from \"../ButtonBase\";\nimport { useControlled } from \"../hooks/useControlled\";\nimport { HvTypography } from \"../Typography\";\nimport { isDeleteKey } from \"../utils/keyboardUtils\";\nimport { staticClasses, useClasses } from \"./Tag.styles\";\n\nexport { staticClasses as tagClasses };\n\nexport type HvTagClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvTagProps\n extends Omit<\n HvButtonBaseProps,\n \"type\" | \"color\" | \"classes\" | \"onClick\" | \"onToggle\"\n > {\n /** The label of the tag element. */\n label?: React.ReactNode;\n /** Indicates that the form element is disabled. */\n disabled?: boolean;\n /** The type of the tag element. A tag can be of semantic or categoric type. */\n type?: \"semantic\" | \"categorical\";\n /** The color variant of the tag */\n color?: HvColorAny;\n /** Icon used to customize the delete icon */\n deleteIcon?: React.ReactElement;\n /**\n * The callback fired when the delete icon is pressed.\n * This function has to be provided to the component, in order to render the delete icon\n * */\n onDelete?: React.EventHandler<any>;\n /** Callback triggered when any item is clicked. */\n onClick?: (event: React.MouseEvent<HTMLElement>, selected?: boolean) => void;\n /** Aria properties to apply to delete button in tag\n * @deprecated no longer used\n */\n deleteButtonArialLabel?: string;\n /** Props to apply to delete icon */\n deleteButtonProps?: React.HTMLAttributes<HTMLDivElement>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTagClasses;\n /** Determines whether or not the tag is selectable. */\n selectable?: boolean;\n /** Defines if the tag is selected. When defined the tag state becomes controlled. */\n selected?: boolean;\n /** When uncontrolled, defines the initial selected state. */\n defaultSelected?: boolean;\n}\n\n/**\n * A Tag is one word that describes a specific aspect of an asset. A single asset can have\n * multiple tags.\n * Use tags to highlight an item's status for quick recognition and navigation\n * Use color to indicate meanings that users can learn and recognize across products.\n */\nexport const HvTag = forwardRef<\n // no-indent\n HTMLElement,\n HvTagProps\n>(function HvTag(props, ref) {\n const {\n classes: classesProp,\n className,\n component,\n style,\n label,\n disabled,\n type = \"semantic\",\n selectable,\n selected,\n defaultSelected = false,\n color,\n deleteIcon: deleteIconProp,\n onDelete,\n onClick,\n onKeyDown,\n onKeyUp,\n // TODO: remove from API\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n deleteButtonArialLabel = \"Delete tag\",\n deleteButtonProps = {},\n ...others\n } = useDefaultProps(\"HvTag\", props);\n const { classes, cx } = useClasses(classesProp);\n\n const [isSelected, setIsSelected] = useControlled(\n selected,\n Boolean(defaultSelected),\n );\n\n const handleDeleteClick = (event: React.MouseEvent) => {\n // Stop the event from bubbling up to the tag\n event.stopPropagation();\n onDelete?.(event);\n };\n\n const backgroundColor =\n (type === \"semantic\" && getColor(color, \"neutral_20\")) ||\n (type === \"categorical\" && theme.alpha(getColor(color, \"cat1\")!, 0.2)) ||\n undefined;\n\n const isClickable = !!(onClick || onDelete || selectable);\n\n const CheckboxIcon = isSelected ? CheckboxCheck : Checkbox;\n\n const deleteIcon =\n deleteIconProp && isValidElement(deleteIconProp) ? (\n cloneElement<any>(deleteIconProp, {\n className: cx(classes.deleteIcon, {\n [classes.disabledDeleteIcon]: disabled,\n }),\n onClick: handleDeleteClick,\n })\n ) : (\n <CloseXS\n size=\"XS\"\n onClick={handleDeleteClick}\n className={cx(classes.deleteIcon, classes.button, classes.tagButton)}\n {...deleteButtonProps}\n />\n );\n\n return (\n <HvButtonBase\n ref={ref as any}\n component={isClickable ? HvButtonBase : \"div\"}\n disabled={disabled}\n data-color={color}\n style={mergeStyles(style, {\n \"--bgColor\": backgroundColor,\n })}\n className={cx(classes.root, classes.chipRoot, className, {\n [classes.disabled]: disabled,\n [classes.selected]: isSelected,\n [classes.clickable]: isClickable && !disabled,\n [classes.categorical]: type === \"categorical\",\n [classes.categoricalFocus]: type === \"categorical\" && !disabled,\n [classes.categoricalDisabled]: type === \"categorical\" && disabled,\n })}\n onKeyUp={(event: React.KeyboardEvent<HTMLButtonElement>) => {\n // Ignore events from children.\n if (event.currentTarget === event.target && isDeleteKey(event)) {\n onDelete?.(event);\n }\n\n onKeyUp?.(event);\n }}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n if (disabled) return;\n if (selectable) setIsSelected(!isSelected);\n onClick?.(event, !isSelected);\n }}\n selected={isClickable && isSelected}\n {...others}\n >\n {selectable && type === \"semantic\" && (\n <CheckboxIcon\n className={classes.icon}\n color={(disabled && [\"atmo3\", \"secondary_60\"]) || undefined}\n size=\"XS\"\n />\n )}\n <HvTypography\n noWrap\n variant=\"caption2\"\n component=\"span\"\n className={classes.label}\n >\n {label}\n </HvTypography>\n {onDelete && !disabled && deleteIcon}\n </HvButtonBase>\n );\n});\n"],"names":["HvTag"],"mappings":"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"}