@coveord/plasma-mantine 56.20.1 → 57.0.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 (193) hide show
  1. package/.turbo/turbo-build.log +4 -4
  2. package/.turbo/turbo-test.log +104 -115
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cjs/components/ActionIcon/ActionIcon.js +9 -4
  5. package/dist/cjs/components/ActionIcon/ActionIcon.js.map +1 -1
  6. package/dist/cjs/components/Alert/Alert.js +4 -4
  7. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  8. package/dist/cjs/components/Badge/Badge.js +1 -1
  9. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  10. package/dist/cjs/components/BlankSlate/BlankSlate.js +1 -1
  11. package/dist/cjs/components/BrowserPreview/BrowserPreview.js +2 -2
  12. package/dist/cjs/components/BrowserPreview/BrowserPreview.js.map +1 -1
  13. package/dist/cjs/components/Button/Button.js +10 -5
  14. package/dist/cjs/components/Button/Button.js.map +1 -1
  15. package/dist/cjs/components/Button/ButtonWithDisabledTooltip.js +8 -3
  16. package/dist/cjs/components/Button/ButtonWithDisabledTooltip.js.map +1 -1
  17. package/dist/cjs/components/CheckboxIcon/CheckboxIcon.js +2 -2
  18. package/dist/cjs/components/CheckboxIcon/CheckboxIcon.js.map +1 -1
  19. package/dist/cjs/components/ChildForm/ChildForm.js.map +1 -1
  20. package/dist/cjs/components/Chip/Chip.js +8 -3
  21. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  22. package/dist/cjs/components/CircleLoader/CircleLoader.js +8 -3
  23. package/dist/cjs/components/CircleLoader/CircleLoader.js.map +1 -1
  24. package/dist/cjs/components/CodeEditor/CodeEditor.js +9 -9
  25. package/dist/cjs/components/CodeEditor/CodeEditor.js.map +1 -1
  26. package/dist/cjs/components/CodeEditor/languages/xml.js +3 -3
  27. package/dist/cjs/components/CodeEditor/languages/xml.js.map +1 -1
  28. package/dist/cjs/components/CodeEditor/search/Search.js +3 -3
  29. package/dist/cjs/components/CodeEditor/search/Search.js.map +1 -1
  30. package/dist/cjs/components/Collection/Collection.js +12 -12
  31. package/dist/cjs/components/Collection/Collection.js.map +1 -1
  32. package/dist/cjs/components/Collection/CollectionAddButton.js +1 -1
  33. package/dist/cjs/components/Collection/CollectionItem.js +5 -5
  34. package/dist/cjs/components/Collection/CollectionItem.js.map +1 -1
  35. package/dist/cjs/components/Collection/enhanceWithCollectionProps.js +4 -4
  36. package/dist/cjs/components/Collection/enhanceWithCollectionProps.js.map +1 -1
  37. package/dist/cjs/components/Collection/layouts/horizontal-layout/HorizontalLayout.js +1 -1
  38. package/dist/cjs/components/Collection/layouts/horizontal-layout/HorizontalLayoutBody.js +2 -2
  39. package/dist/cjs/components/Collection/layouts/horizontal-layout/HorizontalLayoutBody.js.map +1 -1
  40. package/dist/cjs/components/Collection/layouts/horizontal-layout/HorizontalLayoutHeader.js +1 -1
  41. package/dist/cjs/components/Collection/layouts/horizontal-layout/HorizontalLayoutHeader.js.map +1 -1
  42. package/dist/cjs/components/Collection/layouts/shared/DragHandle.js +1 -1
  43. package/dist/cjs/components/Collection/layouts/shared/RemoveButton.js +1 -1
  44. package/dist/cjs/components/Collection/layouts/shared/columnUtils.js +2 -2
  45. package/dist/cjs/components/Collection/layouts/shared/columnUtils.js.map +1 -1
  46. package/dist/cjs/components/Collection/layouts/shared/headerUtils.js +1 -1
  47. package/dist/cjs/components/Collection/layouts/shared/headerUtils.js.map +1 -1
  48. package/dist/cjs/components/Collection/layouts/shared/itemRenderer.js +7 -7
  49. package/dist/cjs/components/Collection/layouts/shared/itemRenderer.js.map +1 -1
  50. package/dist/cjs/components/Collection/layouts/vertical-layout/VerticalLayout.js +1 -1
  51. package/dist/cjs/components/Collection/layouts/vertical-layout/VerticalLayoutBody.js +4 -4
  52. package/dist/cjs/components/Collection/layouts/vertical-layout/VerticalLayoutBody.js.map +1 -1
  53. package/dist/cjs/components/Collection/layouts/vertical-layout/VerticalLayoutHeader.js +1 -1
  54. package/dist/cjs/components/Collection/layouts/vertical-layout/VerticalLayoutHeader.js.map +1 -1
  55. package/dist/cjs/components/CopyToClipboard/CopyToClipboard.js +6 -6
  56. package/dist/cjs/components/CopyToClipboard/CopyToClipboard.js.map +1 -1
  57. package/dist/cjs/components/DateRangePicker/DateRangePicker.js +7 -7
  58. package/dist/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  59. package/dist/cjs/components/DateRangePicker/DateRangePickerInlineCalendar.js +5 -5
  60. package/dist/cjs/components/DateRangePicker/DateRangePickerInlineCalendar.js.map +1 -1
  61. package/dist/cjs/components/DateRangePicker/DateRangePickerPopoverCalendar.js +3 -3
  62. package/dist/cjs/components/DateRangePicker/DateRangePickerPopoverCalendar.js.map +1 -1
  63. package/dist/cjs/components/DateRangePicker/DateRangePickerPresetSelect.js +3 -3
  64. package/dist/cjs/components/DateRangePicker/DateRangePickerPresetSelect.js.map +1 -1
  65. package/dist/cjs/components/DateRangePicker/EditableDateRangePicker.js +3 -3
  66. package/dist/cjs/components/DateRangePicker/EditableDateRangePicker.js.map +1 -1
  67. package/dist/cjs/components/DateTimeRangePicker/DateTimeRangePicker.js +1 -1
  68. package/dist/cjs/components/DateTimeRangePicker/EditableDateTimeRangePicker.js +3 -3
  69. package/dist/cjs/components/DateTimeRangePicker/EditableDateTimeRangePicker.js.map +1 -1
  70. package/dist/cjs/components/EllipsisText/EllipsisText.js +3 -3
  71. package/dist/cjs/components/EllipsisText/EllipsisText.js.map +1 -1
  72. package/dist/cjs/components/Facet/DefaultFacetItem.js +3 -3
  73. package/dist/cjs/components/Facet/DefaultFacetItem.js.map +1 -1
  74. package/dist/cjs/components/Facet/Facet.js +5 -5
  75. package/dist/cjs/components/Facet/Facet.js.map +1 -1
  76. package/dist/cjs/components/Facet/FacetScrollArea.js +8 -3
  77. package/dist/cjs/components/Facet/FacetScrollArea.js.map +1 -1
  78. package/dist/cjs/components/Header/Header.js +1 -1
  79. package/dist/cjs/components/Header/Header.js.map +1 -1
  80. package/dist/cjs/components/Header/HeaderBreadcrumbs/HeaderBreadcrumbAnchor.js.map +1 -1
  81. package/dist/cjs/components/Header/HeaderBreadcrumbs/HeaderBreadcrumbText.js.map +1 -1
  82. package/dist/cjs/components/Header/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  83. package/dist/cjs/components/Header/HeaderDocAnchor/HeaderDocAnchor.js.map +1 -1
  84. package/dist/cjs/components/Header/HeaderRight/HeaderRight.js.map +1 -1
  85. package/dist/cjs/components/InfoToken/InfoToken.js +3 -3
  86. package/dist/cjs/components/InfoToken/InfoToken.js.map +1 -1
  87. package/dist/cjs/components/InlineConfirm/InlineConfirm.js +2 -2
  88. package/dist/cjs/components/InlineConfirm/InlineConfirm.js.map +1 -1
  89. package/dist/cjs/components/InlineConfirm/InlineConfirmPrompt.js +2 -2
  90. package/dist/cjs/components/InlineConfirm/InlineConfirmPrompt.js.map +1 -1
  91. package/dist/cjs/components/InlineConfirm/InlineConfirmTarget.js +9 -4
  92. package/dist/cjs/components/InlineConfirm/InlineConfirmTarget.js.map +1 -1
  93. package/dist/cjs/components/LastUpdated/LastUpdated.js +1 -1
  94. package/dist/cjs/components/LastUpdated/LastUpdated.js.map +1 -1
  95. package/dist/cjs/components/Menu/Menu.js +8 -3
  96. package/dist/cjs/components/Menu/Menu.js.map +1 -1
  97. package/dist/cjs/components/Modal/Modal.js +8 -3
  98. package/dist/cjs/components/Modal/Modal.js.map +1 -1
  99. package/dist/cjs/components/Modal/ModalFooter.js +1 -1
  100. package/dist/cjs/components/Modal/ModalFooter.js.map +1 -1
  101. package/dist/cjs/components/Prompt/Prompt.js.map +1 -1
  102. package/dist/cjs/components/Prompt/PromptCancelButton.js.map +1 -1
  103. package/dist/cjs/components/Prompt/PromptConfirmButton.js.map +1 -1
  104. package/dist/cjs/components/Prompt/icons/CriticalIcon.js +1 -1
  105. package/dist/cjs/components/Prompt/icons/InfoIcon.js +1 -1
  106. package/dist/cjs/components/Prompt/icons/SuccessIcon.js +1 -1
  107. package/dist/cjs/components/Prompt/icons/WarningIcon.js +1 -1
  108. package/dist/cjs/components/RadioCard/RadioCard.d.ts +4 -0
  109. package/dist/cjs/components/RadioCard/RadioCard.d.ts.map +1 -1
  110. package/dist/cjs/components/RadioCard/RadioCard.js +48 -43
  111. package/dist/cjs/components/RadioCard/RadioCard.js.map +1 -1
  112. package/dist/cjs/components/ReadOnly/ReadOnlyInputStyles.js +1 -1
  113. package/dist/cjs/components/ReadOnly/ReadOnlyInputStyles.js.map +1 -1
  114. package/dist/cjs/components/StatusToken/StatusToken.js +3 -3
  115. package/dist/cjs/components/StatusToken/StatusToken.js.map +1 -1
  116. package/dist/cjs/components/StickyFooter/StickyFooter.js.map +1 -1
  117. package/dist/cjs/components/Table/Table.js +6 -6
  118. package/dist/cjs/components/Table/Table.js.map +1 -1
  119. package/dist/cjs/components/Table/layouts/TableLayoutControl.js +1 -1
  120. package/dist/cjs/components/Table/layouts/row-layout/RowLayout.js +1 -1
  121. package/dist/cjs/components/Table/layouts/row-layout/RowLayout.js.map +1 -1
  122. package/dist/cjs/components/Table/layouts/row-layout/RowLayoutBody.js +8 -9
  123. package/dist/cjs/components/Table/layouts/row-layout/RowLayoutBody.js.map +1 -1
  124. package/dist/cjs/components/Table/layouts/row-layout/RowLayoutHeader.js +1 -1
  125. package/dist/cjs/components/Table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
  126. package/dist/cjs/components/Table/table-actions/TableActionItem.js.map +1 -1
  127. package/dist/cjs/components/Table/table-actions/TableActionsList.js +4 -4
  128. package/dist/cjs/components/Table/table-actions/TableActionsList.js.map +1 -1
  129. package/dist/cjs/components/Table/table-actions/TableHeaderActions.js.map +1 -1
  130. package/dist/cjs/components/Table/table-column/TableActionsColumn.js +3 -3
  131. package/dist/cjs/components/Table/table-column/TableActionsColumn.js.map +1 -1
  132. package/dist/cjs/components/Table/table-column/TableCollapsibleColumn.js +4 -4
  133. package/dist/cjs/components/Table/table-column/TableCollapsibleColumn.js.map +1 -1
  134. package/dist/cjs/components/Table/table-column/TableSelectableColumn.js +3 -3
  135. package/dist/cjs/components/Table/table-column/TableSelectableColumn.js.map +1 -1
  136. package/dist/cjs/components/Table/table-columns-selector/TableColumnsSelector.js +3 -3
  137. package/dist/cjs/components/Table/table-columns-selector/TableColumnsSelector.js.map +1 -1
  138. package/dist/cjs/components/Table/table-date-range-picker/TableDateRangePicker.js +1 -1
  139. package/dist/cjs/components/Table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
  140. package/dist/cjs/components/Table/table-filter/TableFilter.js +2 -2
  141. package/dist/cjs/components/Table/table-filter/TableFilter.js.map +1 -1
  142. package/dist/cjs/components/Table/table-footer/TableFooter.js +2 -2
  143. package/dist/cjs/components/Table/table-footer/TableFooter.js.map +1 -1
  144. package/dist/cjs/components/Table/table-header/TableHeader.js +1 -1
  145. package/dist/cjs/components/Table/table-header/TableHeader.js.map +1 -1
  146. package/dist/cjs/components/Table/table-header/Th.js +1 -1
  147. package/dist/cjs/components/Table/table-header/Th.js.map +1 -1
  148. package/dist/cjs/components/Table/table-last-updated/TableLastUpdated.js.map +1 -1
  149. package/dist/cjs/components/Table/table-loading/TableLoading.js +1 -1
  150. package/dist/cjs/components/Table/table-loading/TableLoading.js.map +1 -1
  151. package/dist/cjs/components/Table/table-no-data/TableNoData.js +1 -1
  152. package/dist/cjs/components/Table/table-pagination/TablePagination.js +3 -3
  153. package/dist/cjs/components/Table/table-pagination/TablePagination.js.map +1 -1
  154. package/dist/cjs/components/Table/table-per-page/TablePerPage.js +3 -3
  155. package/dist/cjs/components/Table/table-per-page/TablePerPage.js.map +1 -1
  156. package/dist/cjs/components/Table/table-predicate/TablePredicate.js +1 -1
  157. package/dist/cjs/components/Table/table-predicate/TablePredicate.js.map +1 -1
  158. package/dist/cjs/components/Table/use-table.js +22 -23
  159. package/dist/cjs/components/Table/use-table.js.map +1 -1
  160. package/dist/cjs/hooks/use-url-synced-state.js +6 -6
  161. package/dist/cjs/hooks/use-url-synced-state.js.map +1 -1
  162. package/dist/cjs/hooks/useClickWithLoading.js +2 -2
  163. package/dist/cjs/hooks/useClickWithLoading.js.map +1 -1
  164. package/dist/cjs/hooks/useControlledList.js +4 -4
  165. package/dist/cjs/hooks/useControlledList.js.map +1 -1
  166. package/dist/cjs/hooks/useParentHeight.js +2 -2
  167. package/dist/cjs/hooks/useParentHeight.js.map +1 -1
  168. package/dist/cjs/styles/RadioCard.module.css +1 -1
  169. package/dist/cjs/theme/PlasmaColors.js +1 -1
  170. package/dist/cjs/theme/PlasmaColors.js.map +1 -1
  171. package/dist/cjs/theme/Plasmantine.js +2 -2
  172. package/dist/cjs/theme/Plasmantine.js.map +1 -1
  173. package/dist/cjs/theme/Theme.js +12 -12
  174. package/dist/cjs/theme/Theme.js.map +1 -1
  175. package/dist/cjs/theme/mergeCSSVariablesResolvers.js +1 -1
  176. package/dist/cjs/theme/plasmaCSSVariablesResolver.js +2 -2
  177. package/dist/cjs/theme/plasmaCSSVariablesResolver.js.map +1 -1
  178. package/dist/cjs/theme/plasmaVariantColorResolver.js +1 -1
  179. package/dist/cjs/theme/plasmaVariantColorResolver.js.map +1 -1
  180. package/dist/cjs/utils/createFactoryComponent.js +1 -1
  181. package/dist/cjs/utils/createFactoryComponent.js.map +1 -1
  182. package/dist/cjs/utils/groupOptions.js +1 -1
  183. package/dist/cjs/utils/overrideComponent.js +2 -2
  184. package/dist/cjs/utils/overrideComponent.js.map +1 -1
  185. package/dist/esm/components/RadioCard/RadioCard.d.ts +4 -0
  186. package/dist/esm/components/RadioCard/RadioCard.d.ts.map +1 -1
  187. package/dist/esm/components/RadioCard/RadioCard.js +47 -43
  188. package/dist/esm/components/RadioCard/RadioCard.js.map +1 -1
  189. package/dist/esm/styles/RadioCard.module.css +1 -1
  190. package/package.json +26 -26
  191. package/src/components/RadioCard/RadioCard.tsx +24 -20
  192. package/src/components/RadioCard/__tests__/RadioCard.component.spec.tsx +34 -1
  193. package/src/styles/RadioCard.module.css +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/StatusToken/StatusToken.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n Factory,\n getSize,\n MantineSize,\n MantineTheme,\n polymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\n\nimport Circle from './icons/circle.svg?raw';\nimport Ring from './icons/ring.svg?raw';\nimport Square from './icons/square.svg?raw';\nimport Triangle from './icons/triangle.svg?raw';\nimport Info from './icons/info.svg?raw';\nimport classes from './StatusToken.module.css';\n\nexport type StatusTokenFactory = Factory<{\n props: StatusTokenProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: StatusTokenComponentStylesNames;\n vars: StatusTokenCssVariables;\n variant: StatusTokenVariant;\n}>;\nexport type StatusTokenComponentStylesNames = 'root';\nexport type StatusTokenVariant = 'info' | 'success' | 'caution' | 'error' | 'disabled' | 'waiting' | 'edited' | 'new';\nexport type StatusTokenSize = Extract<MantineSize, 'sm' | 'lg'>;\nexport type StatusTokenCssVariables = {\n root: '--status-token-color' | '--status-token-size';\n};\n\nexport interface StatusTokenProps extends BoxProps, StylesApiProps<StatusTokenFactory> {\n /**\n * The size of the token.\n *\n * @default 'lg'\n */\n size?: StatusTokenSize;\n /**\n * The variant of the token.\n *\n * @default 'info'\n */\n variant?: StatusTokenVariant;\n}\n\nconst defaultProps: Partial<StatusTokenProps> = {size: 'lg', variant: 'info'};\n\nconst resolveThemeColorFromVariant = (variant: StatusTokenVariant, theme: MantineTheme): string => {\n switch (variant) {\n case 'success':\n return theme.colors.green[4];\n case 'caution':\n return theme.colors.yellow[4];\n case 'error':\n return theme.colors.red[5];\n case 'disabled':\n case 'waiting':\n return theme.colors.gray[5];\n case 'edited':\n case 'new':\n return 'var(--mantine-primary-color-filled)';\n case 'info':\n return theme.colors.gray[3];\n default:\n return theme.colors.navy[5];\n }\n};\nconst resolveSize = (size: StatusTokenSize): number => (size === 'sm' ? 8 : 12);\n\nconst resolveIconSrcFromVariant = (variant: StatusTokenVariant): string => {\n switch (variant) {\n case 'caution':\n return Triangle;\n case 'error':\n return Square;\n case 'disabled':\n return Ring;\n case 'info':\n return Info;\n case 'success':\n case 'waiting':\n case 'edited':\n case 'new':\n default:\n return Circle;\n }\n};\n\nconst varsResolver = createVarsResolver<StatusTokenFactory>((theme, {variant, size}) => {\n const color = resolveThemeColorFromVariant(variant, theme);\n return {\n root: {\n '--status-token-color': color,\n '--status-token-size': getSize(resolveSize(size), 'status-token-size'),\n },\n };\n});\n\nconst statusTokenLabels: Record<StatusTokenVariant, string> = {\n info: 'Info',\n success: 'Success',\n caution: 'Caution',\n error: 'Error',\n disabled: 'Disabled',\n waiting: 'Waiting',\n edited: 'Edited',\n new: 'New',\n};\n\nexport const StatusToken: ReturnType<typeof polymorphicFactory<StatusTokenFactory>> =\n polymorphicFactory<StatusTokenFactory>((props, ref) => {\n const {variant, vars, size, className, style, unstyled, styles, classNames, ...others} = useProps(\n 'StatusToken',\n defaultProps,\n props,\n );\n const getStyles = useStyles<StatusTokenFactory>({\n name: 'StatusToken',\n classes,\n className,\n props,\n style,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n return (\n <Box\n ref={ref}\n variant={variant}\n role=\"img\"\n aria-label={statusTokenLabels[variant]}\n {...getStyles('root', {\n className,\n style,\n styles,\n classNames,\n })}\n dangerouslySetInnerHTML={{__html: resolveIconSrcFromVariant(variant)}}\n {...others}\n />\n );\n });\n\nStatusToken.displayName = 'StatusToken';\n"],"names":["StatusToken","defaultProps","size","variant","resolveThemeColorFromVariant","theme","colors","green","yellow","red","gray","navy","resolveSize","resolveIconSrcFromVariant","Triangle","Square","Ring","Info","Circle","varsResolver","createVarsResolver","color","root","getSize","statusTokenLabels","info","success","caution","error","disabled","waiting","edited","new","polymorphicFactory","props","ref","useProps","vars","className","style","unstyled","styles","classNames","others","getStyles","useStyles","name","classes","Box","role","aria-label","dangerouslySetInnerHTML","__html","displayName"],"mappings":";;;;+BAmHaA;;;eAAAA;;;;;;;;oBAvGN;qEAEY;mEACF;qEACE;uEACE;mEACJ;6EACG;AAgCpB,IAAMC,eAA0C;IAACC,MAAM;IAAMC,SAAS;AAAM;AAE5E,IAAMC,+BAA+B,SAACD,SAA6BE;IAC/D,OAAQF;QACJ,KAAK;YACD,OAAOE,MAAMC,MAAM,CAACC,KAAK,CAAC,EAAE;QAChC,KAAK;YACD,OAAOF,MAAMC,MAAM,CAACE,MAAM,CAAC,EAAE;QACjC,KAAK;YACD,OAAOH,MAAMC,MAAM,CAACG,GAAG,CAAC,EAAE;QAC9B,KAAK;QACL,KAAK;YACD,OAAOJ,MAAMC,MAAM,CAACI,IAAI,CAAC,EAAE;QAC/B,KAAK;QACL,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAOL,MAAMC,MAAM,CAACI,IAAI,CAAC,EAAE;QAC/B;YACI,OAAOL,MAAMC,MAAM,CAACK,IAAI,CAAC,EAAE;IACnC;AACJ;AACA,IAAMC,cAAc,SAACV;WAAmCA,SAAS,OAAO,IAAI;;AAE5E,IAAMW,4BAA4B,SAACV;IAC/B,OAAQA;QACJ,KAAK;YACD,OAAOW,uBAAQ;QACnB,KAAK;YACD,OAAOC,qBAAM;QACjB,KAAK;YACD,OAAOC,mBAAI;QACf,KAAK;YACD,OAAOC,mBAAI;QACf,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL;YACI,OAAOC,qBAAM;IACrB;AACJ;AAEA,IAAMC,eAAeC,IAAAA,wBAAkB,EAAqB,SAACf;QAAQF,gBAAAA,SAASD,aAAAA;IAC1E,IAAMmB,QAAQjB,6BAA6BD,SAASE;IACpD,OAAO;QACHiB,MAAM;YACF,wBAAwBD;YACxB,uBAAuBE,IAAAA,aAAO,EAACX,YAAYV,OAAO;QACtD;IACJ;AACJ;AAEA,IAAMsB,oBAAwD;IAC1DC,MAAM;IACNC,SAAS;IACTC,SAAS;IACTC,OAAO;IACPC,UAAU;IACVC,SAAS;IACTC,QAAQ;IACRC,KAAK;AACT;AAEO,IAAMhC,cACTiC,IAAAA,wBAAkB,EAAqB,SAACC,OAAOC;IAC3C,IAAyFC,YAAAA,IAAAA,cAAQ,EAC7F,eACAnC,cACAiC,QAHG/B,UAAkFiC,UAAlFjC,SAASkC,OAAyED,UAAzEC,MAAMnC,OAAmEkC,UAAnElC,MAAMoC,YAA6DF,UAA7DE,WAAWC,QAAkDH,UAAlDG,OAAOC,WAA2CJ,UAA3CI,UAAUC,SAAiCL,UAAjCK,QAAQC,aAAyBN,UAAzBM,YAAeC,sCAAUP;QAAlFjC;QAASkC;QAAMnC;QAAMoC;QAAWC;QAAOC;QAAUC;QAAQC;;IAKhE,IAAME,YAAYC,IAAAA,eAAS,EAAqB;QAC5CC,MAAM;QACNC,SAAAA,6BAAO;QACPT,WAAAA;QACAJ,OAAAA;QACAK,OAAAA;QACAE,QAAAA;QACAD,UAAAA;QACAH,MAAAA;QACAlB,cAAAA;IACJ;IACA,qBACI,qBAAC6B,SAAG;QACAb,KAAKA;QACLhC,SAASA;QACT8C,MAAK;QACLC,cAAY1B,iBAAiB,CAACrB,QAAQ;OAClCyC,UAAU,QAAQ;QAClBN,WAAAA;QACAC,OAAAA;QACAE,QAAAA;QACAC,YAAAA;IACJ;QACAS,yBAAyB;YAACC,QAAQvC,0BAA0BV;QAAQ;QAChEwC;AAGhB;AAEJ3C,YAAYqD,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../src/components/StatusToken/StatusToken.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n Factory,\n getSize,\n MantineSize,\n MantineTheme,\n polymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\n\nimport Circle from './icons/circle.svg?raw';\nimport Ring from './icons/ring.svg?raw';\nimport Square from './icons/square.svg?raw';\nimport Triangle from './icons/triangle.svg?raw';\nimport Info from './icons/info.svg?raw';\nimport classes from './StatusToken.module.css';\n\nexport type StatusTokenFactory = Factory<{\n props: StatusTokenProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: StatusTokenComponentStylesNames;\n vars: StatusTokenCssVariables;\n variant: StatusTokenVariant;\n}>;\nexport type StatusTokenComponentStylesNames = 'root';\nexport type StatusTokenVariant = 'info' | 'success' | 'caution' | 'error' | 'disabled' | 'waiting' | 'edited' | 'new';\nexport type StatusTokenSize = Extract<MantineSize, 'sm' | 'lg'>;\nexport type StatusTokenCssVariables = {\n root: '--status-token-color' | '--status-token-size';\n};\n\nexport interface StatusTokenProps extends BoxProps, StylesApiProps<StatusTokenFactory> {\n /**\n * The size of the token.\n *\n * @default 'lg'\n */\n size?: StatusTokenSize;\n /**\n * The variant of the token.\n *\n * @default 'info'\n */\n variant?: StatusTokenVariant;\n}\n\nconst defaultProps: Partial<StatusTokenProps> = {size: 'lg', variant: 'info'};\n\nconst resolveThemeColorFromVariant = (variant: StatusTokenVariant, theme: MantineTheme): string => {\n switch (variant) {\n case 'success':\n return theme.colors.green[4];\n case 'caution':\n return theme.colors.yellow[4];\n case 'error':\n return theme.colors.red[5];\n case 'disabled':\n case 'waiting':\n return theme.colors.gray[5];\n case 'edited':\n case 'new':\n return 'var(--mantine-primary-color-filled)';\n case 'info':\n return theme.colors.gray[3];\n default:\n return theme.colors.navy[5];\n }\n};\nconst resolveSize = (size: StatusTokenSize): number => (size === 'sm' ? 8 : 12);\n\nconst resolveIconSrcFromVariant = (variant: StatusTokenVariant): string => {\n switch (variant) {\n case 'caution':\n return Triangle;\n case 'error':\n return Square;\n case 'disabled':\n return Ring;\n case 'info':\n return Info;\n case 'success':\n case 'waiting':\n case 'edited':\n case 'new':\n default:\n return Circle;\n }\n};\n\nconst varsResolver = createVarsResolver<StatusTokenFactory>((theme, {variant, size}) => {\n const color = resolveThemeColorFromVariant(variant, theme);\n return {\n root: {\n '--status-token-color': color,\n '--status-token-size': getSize(resolveSize(size), 'status-token-size'),\n },\n };\n});\n\nconst statusTokenLabels: Record<StatusTokenVariant, string> = {\n info: 'Info',\n success: 'Success',\n caution: 'Caution',\n error: 'Error',\n disabled: 'Disabled',\n waiting: 'Waiting',\n edited: 'Edited',\n new: 'New',\n};\n\nexport const StatusToken: ReturnType<typeof polymorphicFactory<StatusTokenFactory>> =\n polymorphicFactory<StatusTokenFactory>((props, ref) => {\n const {variant, vars, size, className, style, unstyled, styles, classNames, ...others} = useProps(\n 'StatusToken',\n defaultProps,\n props,\n );\n const getStyles = useStyles<StatusTokenFactory>({\n name: 'StatusToken',\n classes,\n className,\n props,\n style,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n return (\n <Box\n ref={ref}\n variant={variant}\n role=\"img\"\n aria-label={statusTokenLabels[variant]}\n {...getStyles('root', {\n className,\n style,\n styles,\n classNames,\n })}\n dangerouslySetInnerHTML={{__html: resolveIconSrcFromVariant(variant)}}\n {...others}\n />\n );\n });\n\nStatusToken.displayName = 'StatusToken';\n"],"names":["StatusToken","defaultProps","size","variant","resolveThemeColorFromVariant","theme","colors","green","yellow","red","gray","navy","resolveSize","resolveIconSrcFromVariant","Triangle","Square","Ring","Info","Circle","varsResolver","createVarsResolver","color","root","getSize","statusTokenLabels","info","success","caution","error","disabled","waiting","edited","new","polymorphicFactory","props","ref","useProps","vars","className","style","unstyled","styles","classNames","others","getStyles","useStyles","name","classes","Box","role","aria-label","dangerouslySetInnerHTML","__html","displayName"],"mappings":";;;;+BAmHaA;;;eAAAA;;;;;;;;oBAvGN;qEAEY;mEACF;qEACE;uEACE;mEACJ;6EACG;AAgCpB,IAAMC,eAA0C;IAACC,MAAM;IAAMC,SAAS;AAAM;AAE5E,IAAMC,+BAA+B,sCAACD,SAA6BE;IAC/D,OAAQF;QACJ,KAAK;YACD,OAAOE,MAAMC,MAAM,CAACC,KAAK,CAAC,EAAE;QAChC,KAAK;YACD,OAAOF,MAAMC,MAAM,CAACE,MAAM,CAAC,EAAE;QACjC,KAAK;YACD,OAAOH,MAAMC,MAAM,CAACG,GAAG,CAAC,EAAE;QAC9B,KAAK;QACL,KAAK;YACD,OAAOJ,MAAMC,MAAM,CAACI,IAAI,CAAC,EAAE;QAC/B,KAAK;QACL,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAOL,MAAMC,MAAM,CAACI,IAAI,CAAC,EAAE;QAC/B;YACI,OAAOL,MAAMC,MAAM,CAACK,IAAI,CAAC,EAAE;IACnC;AACJ;AACA,IAAMC,cAAc,qBAACV;WAAmCA,SAAS,OAAO,IAAI;;AAE5E,IAAMW,4BAA4B,mCAACV;IAC/B,OAAQA;QACJ,KAAK;YACD,OAAOW,uBAAQ;QACnB,KAAK;YACD,OAAOC,qBAAM;QACjB,KAAK;YACD,OAAOC,mBAAI;QACf,KAAK;YACD,OAAOC,mBAAI;QACf,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL;YACI,OAAOC,qBAAM;IACrB;AACJ;AAEA,IAAMC,eAAeC,IAAAA,wBAAkB,EAAqB,SAACf;QAAQF,gBAAAA,SAASD,aAAAA;IAC1E,IAAMmB,QAAQjB,6BAA6BD,SAASE;IACpD,OAAO;QACHiB,MAAM;YACF,wBAAwBD;YACxB,uBAAuBE,IAAAA,aAAO,EAACX,YAAYV,OAAO;QACtD;IACJ;AACJ;AAEA,IAAMsB,oBAAwD;IAC1DC,MAAM;IACNC,SAAS;IACTC,SAAS;IACTC,OAAO;IACPC,UAAU;IACVC,SAAS;IACTC,QAAQ;IACRC,KAAK;AACT;AAEO,IAAMhC,cACTiC,IAAAA,wBAAkB,EAAqB,SAACC,OAAOC;IAC3C,IAAyFC,YAAAA,IAAAA,cAAQ,EAC7F,eACAnC,cACAiC,QAHG/B,UAAkFiC,UAAlFjC,SAASkC,OAAyED,UAAzEC,MAAMnC,OAAmEkC,UAAnElC,MAAMoC,YAA6DF,UAA7DE,WAAWC,QAAkDH,UAAlDG,OAAOC,WAA2CJ,UAA3CI,UAAUC,SAAiCL,UAAjCK,QAAQC,aAAyBN,UAAzBM,YAAeC,sCAAUP;;;;;;;;;;IAKzF,IAAMQ,YAAYC,IAAAA,eAAS,EAAqB;QAC5CC,MAAM;QACNC,SAAAA,6BAAO;QACPT,WAAAA;QACAJ,OAAAA;QACAK,OAAAA;QACAE,QAAAA;QACAD,UAAAA;QACAH,MAAAA;QACAlB,cAAAA;IACJ;IACA,qBACI,qBAAC6B,SAAG;QACAb,KAAKA;QACLhC,SAASA;QACT8C,MAAK;QACLC,cAAY1B,iBAAiB,CAACrB,QAAQ;OAClCyC,UAAU,QAAQ;QAClBN,WAAAA;QACAC,OAAAA;QACAE,QAAAA;QACAC,YAAAA;IACJ;QACAS,yBAAyB;YAACC,QAAQvC,0BAA0BV;QAAQ;QAChEwC;AAGhB;AAEJ3C,YAAYqD,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/StickyFooter/StickyFooter.tsx"],"sourcesContent":["import {Factory, Group, GroupProps, StylesApiProps, factory, useProps, useStyles} from '@mantine/core';\nimport clsx from 'clsx';\nimport {ReactNode} from 'react';\nimport classes from './StickyFooter.module.css';\n\nexport interface StickyFooterProps\n extends Omit<GroupProps, 'classNames' | 'styles' | 'vars' | 'variant'>, StylesApiProps<StickyFooterFactory> {\n /**\n * Whether a border is render on top of the footer\n */\n borderTop?: boolean;\n /**\n * Footer's children, usually buttons\n */\n children?: ReactNode;\n /**\n * Use variant 'modal-footer' when rendering the `StickyFooter` inside `Modal`.\n *\n * The 'modal-footer' removes the modal's default padding so that the footer properly hugs the bottom of the modal.\n * It also adds a border on top of the footer.\n *\n * @deprecated Use Modal.Footer from @coveord/plasma-mantine/Modal for modal footers. For other cases, the 'default' variant should suffice.\n */\n variant?: 'default' | 'modal-footer';\n}\n\nexport type StickyFooterStylesNames = 'root';\n\nexport type StickyFooterFactory = Factory<{\n props: StickyFooterProps;\n ref: HTMLDivElement;\n stylesNames: StickyFooterStylesNames;\n}>;\n\nconst defaultProps: Partial<StickyFooterProps> = {\n gap: 'sm',\n justify: 'flex-end',\n};\n\nexport const StickyFooter = factory<StickyFooterFactory>((props, ref) => {\n const {borderTop, justify, gap, children, className, classNames, style, styles, unstyled, vars, ...others} =\n useProps('StickyFooter', defaultProps, props);\n const getStyles = useStyles<StickyFooterFactory>({\n name: 'StickyFooter',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const css = getStyles('root');\n\n return (\n <Group\n justify={justify}\n gap={gap}\n className={clsx(css.className, {[classes.border]: !!borderTop})}\n style={css.style}\n ref={ref}\n {...others}\n >\n {children}\n </Group>\n );\n});\n\nStickyFooter.displayName = 'StickyFooter';\n"],"names":["StickyFooter","defaultProps","gap","justify","factory","props","ref","useProps","borderTop","children","className","classNames","style","styles","unstyled","vars","others","getStyles","useStyles","name","classes","css","Group","clsx","border","displayName"],"mappings":";;;;+BAuCaA;;;eAAAA;;;;;;;;;oBAvC0E;6DACtE;8EAEG;AA+BpB,IAAMC,eAA2C;IAC7CC,KAAK;IACLC,SAAS;AACb;AAEO,IAAMH,eAAeI,IAAAA,aAAO,EAAsB,SAACC,OAAOC;IAC7D,IACIC,YAAAA,IAAAA,cAAQ,EAAC,gBAAgBN,cAAcI,QADpCG,YACHD,UADGC,WAAWL,UACdI,UADcJ,SAASD,MACvBK,UADuBL,KAAKO,WAC5BF,UAD4BE,UAAUC,YACtCH,UADsCG,WAAWC,aACjDJ,UADiDI,YAAYC,QAC7DL,UAD6DK,OAAOC,SACpEN,UADoEM,QAAQC,WAC5EP,UAD4EO,UAAUC,OACtFR,UADsFQ,MAASC,sCAC/FT;QADGC;QAAWL;QAASD;QAAKO;QAAUC;QAAWC;QAAYC;QAAOC;QAAQC;QAAUC;;IAE1F,IAAME,YAAYC,IAAAA,eAAS,EAAsB;QAC7CC,MAAM;QACNC,SAAAA,8BAAO;QACPf,OAAAA;QACAK,WAAAA;QACAE,OAAAA;QACAD,YAAAA;QACAE,QAAAA;QACAC,UAAAA;IACJ;IAEA,IAAMO,MAAMJ,UAAU;IAEtB,qBACI,qBAACK,WAAK;QACFnB,SAASA;QACTD,KAAKA;QACLQ,WAAWa,IAAAA,aAAI,EAACF,IAAIX,SAAS,EAAG,uBAACU,8BAAO,CAACI,MAAM,EAAG,CAAC,CAAChB;QACpDI,OAAOS,IAAIT,KAAK;QAChBN,KAAKA;OACDU;kBAEHP;;AAGb;AAEAT,aAAayB,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../src/components/StickyFooter/StickyFooter.tsx"],"sourcesContent":["import {Factory, Group, GroupProps, StylesApiProps, factory, useProps, useStyles} from '@mantine/core';\nimport clsx from 'clsx';\nimport {ReactNode} from 'react';\nimport classes from './StickyFooter.module.css';\n\nexport interface StickyFooterProps\n extends Omit<GroupProps, 'classNames' | 'styles' | 'vars' | 'variant'>, StylesApiProps<StickyFooterFactory> {\n /**\n * Whether a border is render on top of the footer\n */\n borderTop?: boolean;\n /**\n * Footer's children, usually buttons\n */\n children?: ReactNode;\n /**\n * Use variant 'modal-footer' when rendering the `StickyFooter` inside `Modal`.\n *\n * The 'modal-footer' removes the modal's default padding so that the footer properly hugs the bottom of the modal.\n * It also adds a border on top of the footer.\n *\n * @deprecated Use Modal.Footer from @coveord/plasma-mantine/Modal for modal footers. For other cases, the 'default' variant should suffice.\n */\n variant?: 'default' | 'modal-footer';\n}\n\nexport type StickyFooterStylesNames = 'root';\n\nexport type StickyFooterFactory = Factory<{\n props: StickyFooterProps;\n ref: HTMLDivElement;\n stylesNames: StickyFooterStylesNames;\n}>;\n\nconst defaultProps: Partial<StickyFooterProps> = {\n gap: 'sm',\n justify: 'flex-end',\n};\n\nexport const StickyFooter = factory<StickyFooterFactory>((props, ref) => {\n const {borderTop, justify, gap, children, className, classNames, style, styles, unstyled, vars, ...others} =\n useProps('StickyFooter', defaultProps, props);\n const getStyles = useStyles<StickyFooterFactory>({\n name: 'StickyFooter',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const css = getStyles('root');\n\n return (\n <Group\n justify={justify}\n gap={gap}\n className={clsx(css.className, {[classes.border]: !!borderTop})}\n style={css.style}\n ref={ref}\n {...others}\n >\n {children}\n </Group>\n );\n});\n\nStickyFooter.displayName = 'StickyFooter';\n"],"names":["StickyFooter","defaultProps","gap","justify","factory","props","ref","useProps","borderTop","children","className","classNames","style","styles","unstyled","vars","others","getStyles","useStyles","name","classes","css","Group","clsx","border","displayName"],"mappings":";;;;+BAuCaA;;;eAAAA;;;;;;;;;oBAvC0E;6DACtE;8EAEG;AA+BpB,IAAMC,eAA2C;IAC7CC,KAAK;IACLC,SAAS;AACb;AAEO,IAAMH,eAAeI,IAAAA,aAAO,EAAsB,SAACC,OAAOC;IAC7D,IACIC,YAAAA,IAAAA,cAAQ,EAAC,gBAAgBN,cAAcI,QADpCG,YACHD,UADGC,WAAWL,UACdI,UADcJ,SAASD,MACvBK,UADuBL,KAAKO,WAC5BF,UAD4BE,UAAUC,YACtCH,UADsCG,WAAWC,aACjDJ,UADiDI,YAAYC,QAC7DL,UAD6DK,OAAOC,SACpEN,UADoEM,QAAQC,WAC5EP,UAD4EO,UAAUC,OACtFR,UADsFQ,MAASC,sCAC/FT;;;;;;;;;;;;IACJ,IAAMU,YAAYC,IAAAA,eAAS,EAAsB;QAC7CC,MAAM;QACNC,SAAAA,8BAAO;QACPf,OAAAA;QACAK,WAAAA;QACAE,OAAAA;QACAD,YAAAA;QACAE,QAAAA;QACAC,UAAAA;IACJ;IAEA,IAAMO,MAAMJ,UAAU;IAEtB,qBACI,qBAACK,WAAK;QACFnB,SAASA;QACTD,KAAKA;QACLQ,WAAWa,IAAAA,aAAI,EAACF,IAAIX,SAAS,EAAG,uBAACU,8BAAO,CAACI,MAAM,EAAG,CAAC,CAAChB;QACpDI,OAAOS,IAAIT,KAAK;QAChBN,KAAKA;OACDU;kBAEHP;;AAGb;AAEAT,aAAayB,WAAW,GAAG"}
@@ -54,11 +54,11 @@ var defaultProps = {
54
54
  loading: false,
55
55
  additionalRootNodes: [],
56
56
  options: {},
57
- getRowActions: function() {
57
+ getRowActions: function getRowActions() {
58
58
  return [];
59
59
  }
60
60
  };
61
- var Table = function(props) {
61
+ var Table = function Table(props) {
62
62
  var _useProps = (0, _core.useProps)('PlasmaTable', defaultProps, props), store = _useProps.store, data = _useProps.data, getRowId = _useProps.getRowId, getRowAttributes = _useProps.getRowAttributes, getRowExpandedContent = _useProps.getRowExpandedContent, getRowActions = _useProps.getRowActions, columns = _useProps.columns, layouts = _useProps.layouts, layoutProps = _useProps.layoutProps, children = _useProps.children, loading = _useProps.loading, additionalRootNodes = _useProps.additionalRootNodes, options = _useProps.options, ref = _useProps.ref, // Style props
63
63
  style = _useProps.style, className = _useProps.className, classNames = _useProps.classNames, styles = _useProps.styles, unstyled = _useProps.unstyled, others = _object_without_properties._(_useProps, [
64
64
  "store",
@@ -125,7 +125,7 @@ var Table = function(props) {
125
125
  manualPagination: (options === null || options === void 0 ? void 0 : options.getPaginationRowModel) === undefined,
126
126
  enableMultiRowSelection: !!store.multiRowSelectionEnabled,
127
127
  getRowId: getRowId,
128
- getRowCanExpand: function(row) {
128
+ getRowCanExpand: function getRowCanExpand(row) {
129
129
  return !!(getRowExpandedContent === null || getRowExpandedContent === void 0 ? void 0 : getRowExpandedContent(row.original, row.index, row));
130
130
  },
131
131
  enableRowSelection: !loading,
@@ -141,7 +141,7 @@ var Table = function(props) {
141
141
  state: _object_spread_props._(_object_spread._({}, prev.state), {
142
142
  rowSelection: store.state.rowSelection
143
143
  }),
144
- onRowSelectionChange: function(rowSelectionUpdater) {
144
+ onRowSelectionChange: function onRowSelectionChange(rowSelectionUpdater) {
145
145
  store.setRowSelection(function(old) {
146
146
  var newRowSelection = _instanceof._(rowSelectionUpdater, Function) ? rowSelectionUpdater(old) : rowSelectionUpdater;
147
147
  if ((0, _fastdeepequal.default)(old, newRowSelection)) {
@@ -150,12 +150,12 @@ var Table = function(props) {
150
150
  var rows = table.getRowModel().rowsById;
151
151
  Object.keys(newRowSelection).forEach(function(rowId) {
152
152
  if (newRowSelection[rowId] === true) {
153
+ var _ref;
153
154
  var _rows_rowId;
154
155
  if (!rows[rowId]) {
155
156
  console.error('The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.');
156
157
  }
157
- var _rows_rowId_original;
158
- newRowSelection[rowId] = (_rows_rowId_original = (_rows_rowId = rows[rowId]) === null || _rows_rowId === void 0 ? void 0 : _rows_rowId.original) !== null && _rows_rowId_original !== void 0 ? _rows_rowId_original : true;
158
+ newRowSelection[rowId] = (_ref = (_rows_rowId = rows[rowId]) === null || _rows_rowId === void 0 ? void 0 : _rows_rowId.original) !== null && _ref !== void 0 ? _ref : true;
159
159
  }
160
160
  });
161
161
  return newRowSelection;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Table/Table.tsx"],"sourcesContent":["import {Box, Center, Factory, Loader, useProps, useStyles} from '@mantine/core';\nimport {useClickOutside, useMergedRef} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n getCoreRowModel,\n Row,\n RowSelectionState,\n useReactTable,\n} from '@tanstack/react-table';\nimport isEqual from 'fast-deep-equal';\nimport {Children, ForwardedRef, ReactElement, useEffect, useRef} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../utils/createFactoryComponent.js';\nimport classes from './Table.module.css';\nimport {TableLayout, TableProps} from './Table.types.js';\nimport {TableProvider} from './TableContext.js';\nimport {TableLayouts} from './layouts/TableLayouts.js';\nimport {TableActionItem, TableActionItemStylesNames} from './table-actions/TableActionItem.js';\nimport {TableActionsListStylesNames} from './table-actions/TableActionsList.js';\nimport {TableHeaderActionsStylesNames} from './table-actions/TableHeaderActions.js';\nimport {TableActionsColumn} from './table-column/TableActionsColumn.js';\nimport {\n TableAccordionColumn,\n TableCollapsibleColumn,\n TableCollapsibleColumnStylesNames,\n} from './table-column/TableCollapsibleColumn.js';\nimport {TableSelectableColumn} from './table-column/TableSelectableColumn.js';\nimport {TableDateRangePicker, TableDateRangePickerStylesNames} from './table-date-range-picker/TableDateRangePicker.js';\nimport {TableFilter, TableFilterStylesNames} from './table-filter/TableFilter.js';\nimport {TableFooter} from './table-footer/TableFooter.js';\nimport {TableHeader, TableHeaderStylesNames} from './table-header/TableHeader.js';\nimport {TableThStylesNames} from './table-header/Th.js';\nimport {TableLastUpdated, TableLastUpdatedStylesNames} from './table-last-updated/TableLastUpdated.js';\nimport {TableLoading} from './table-loading/TableLoading.js';\nimport {TableNoData} from './table-no-data/TableNoData.js';\nimport {TablePagination} from './table-pagination/TablePagination.js';\nimport {TablePerPage} from './table-per-page/TablePerPage.js';\nimport {TablePredicate, TablePredicateStylesNames} from './table-predicate/TablePredicate.js';\nimport {TableState} from './use-table.js';\n\ntype TableStylesNames =\n | 'root'\n | 'table'\n | 'header'\n | 'body'\n | TableHeaderActionsStylesNames\n | TableActionsListStylesNames\n | TableActionItemStylesNames\n | TableCollapsibleColumnStylesNames\n | TableDateRangePickerStylesNames\n | TableFilterStylesNames\n | TableHeaderStylesNames\n | TableThStylesNames\n | TableLastUpdatedStylesNames\n | TablePredicateStylesNames;\n\nexport type PlasmaTableFactory = Factory<{\n props: TableProps<unknown>;\n ref: HTMLDivElement;\n stylesNames: TableStylesNames;\n staticComponents: {\n AccordionColumn: typeof TableAccordionColumn;\n ActionsColumn: typeof TableActionsColumn;\n ActionItem: typeof TableActionItem;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n DateRangePicker: typeof TableDateRangePicker;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n LastUpdated: typeof TableLastUpdated;\n Layouts: typeof TableLayouts;\n Loading: typeof TableLoading;\n NoData: typeof TableNoData;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n };\n}>;\n\nconst defaultProps: Partial<TableProps<unknown>> = {\n layouts: [TableLayouts.Rows as TableLayout],\n layoutProps: {},\n loading: false,\n additionalRootNodes: [],\n options: {},\n getRowActions: () => [],\n};\n\nexport const Table = <T,>(props: TableProps<T> & {ref?: ForwardedRef<HTMLDivElement>}) => {\n const {\n store,\n data,\n getRowId,\n getRowAttributes,\n getRowExpandedContent,\n getRowActions,\n columns,\n layouts,\n layoutProps,\n children,\n loading,\n additionalRootNodes,\n options,\n ref,\n\n // Style props\n style,\n className,\n classNames,\n styles,\n unstyled,\n ...others\n } = useProps('PlasmaTable', defaultProps as TableProps<T>, props);\n\n const getStyles = useStyles<PlasmaTableFactory>({\n name: 'PlasmaTable',\n classes,\n props: props as TableProps<unknown>,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n const lastUpdated = convertedChildren.find((child) => child.type === TableLastUpdated);\n const noData = convertedChildren.find((child) => child.type === TableNoData);\n\n const table = useReactTable({\n data: data || [],\n state: {\n globalFilter: store.state.globalFilter,\n sorting: store.state.sorting,\n pagination: store.state.pagination,\n columnVisibility: store.state.columnVisibility,\n expanded: store.state.expanded,\n },\n onGlobalFilterChange: store.setGlobalFilter,\n onExpandedChange: store.setExpanded,\n onSortingChange: store.setSorting,\n onPaginationChange: store.setPagination,\n onColumnVisibilityChange: store.setColumnVisibility,\n columns: store.multiRowSelectionEnabled ? [TableSelectableColumn as ColumnDef<T>].concat(columns) : columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: options?.getPaginationRowModel === undefined,\n enableMultiRowSelection: !!store.multiRowSelectionEnabled,\n getRowId,\n getRowCanExpand: (row: Row<T>) => !!getRowExpandedContent?.(row.original, row.index, row),\n enableRowSelection: !loading,\n defaultColumn: {\n size: undefined,\n minSize: defaultColumnSizing.minSize,\n maxSize: defaultColumnSizing.maxSize,\n },\n rowCount: options?.getFilteredRowModel ? undefined : store.state.totalEntries,\n ...options,\n });\n\n table.setOptions((prev) => ({\n ...prev,\n state: {\n ...prev.state,\n rowSelection: store.state.rowSelection as RowSelectionState,\n },\n onRowSelectionChange: (rowSelectionUpdater) => {\n store.setRowSelection((old) => {\n const newRowSelection = (\n rowSelectionUpdater instanceof Function\n ? rowSelectionUpdater(old as RowSelectionState)\n : rowSelectionUpdater\n ) as TableState<T>['rowSelection'];\n\n if (isEqual(old, newRowSelection)) {\n return old;\n }\n\n const rows = table.getRowModel().rowsById;\n\n Object.keys(newRowSelection).forEach((rowId) => {\n if (newRowSelection[rowId] === true) {\n if (!rows[rowId]) {\n console.error(\n 'The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.',\n );\n }\n newRowSelection[rowId] = rows[rowId]?.original ?? (true as T);\n }\n });\n\n return newRowSelection;\n });\n },\n }));\n\n useEffect(() => {\n // Update the selected rows data when the data prop changes\n if (store.getSelectedRows().length > 0) {\n store.setRowSelection((old) => {\n const rowsById = table.getRowModel().rowsById;\n const newSelection = {...old};\n Object.keys(old).forEach((rowId) => {\n if (rowsById[rowId]) {\n newSelection[rowId] = rowsById[rowId].original;\n }\n });\n return isEqual(newSelection, old) ? old : newSelection;\n });\n }\n }, [data]);\n\n const containerRef = useRef<HTMLDivElement>(null);\n useClickOutside(\n () => {\n if (!store.multiRowSelectionEnabled && store.getSelectedRows().length > 0) {\n store.clearRowSelection();\n }\n },\n null,\n [containerRef.current, ...additionalRootNodes],\n );\n const mergedRef = useMergedRef(containerRef, ref);\n\n if (!data) {\n return (\n <Center style={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const Layout =\n store.state.layout === null ? layouts[0] : layouts.find(({displayName}) => displayName === store.state.layout);\n const hasRows = table.getRowModel().rows.length > 0;\n\n return (\n <Box ref={mergedRef} {...others} {...getStyles('root')}>\n <TableProvider<T> value={{getStyles, getRowActions, store, table, layouts, containerRef}}>\n <Layout>\n {store.isVacant && !store.isFiltered ? (\n noData\n ) : (\n <>\n <Box component=\"table\" {...getStyles('table')} mod={{loading}}>\n <thead {...getStyles('header')}>\n {header ? (\n <tr>\n <th style={{padding: 0}} colSpan={table.getAllColumns().length}>\n {header}\n </th>\n </tr>\n ) : null}\n <Layout.Header\n getRowExpandedContent={getRowExpandedContent}\n getRowAttributes={getRowAttributes}\n loading={loading}\n {...layoutProps}\n />\n </thead>\n <tbody {...getStyles('body')}>\n {hasRows ? (\n <Layout.Body\n getRowExpandedContent={getRowExpandedContent}\n getRowAttributes={getRowAttributes}\n loading={loading}\n {...layoutProps}\n />\n ) : (\n <tr>\n <td colSpan={table.getAllColumns().length}>\n <TableLoading visible={loading || !store.isFiltered}>\n {noData}\n </TableLoading>\n </td>\n </tr>\n )}\n </tbody>\n </Box>\n {footer}\n {lastUpdated}\n </>\n )}\n </Layout>\n </TableProvider>\n </Box>\n );\n};\n\nexport const TableComponentsOrder = {\n MultiSelectInfo: 7,\n Actions: 6,\n Predicate: 5,\n Filter: 4,\n DateRangePicker: 3,\n LayoutControl: 1,\n};\n\nTable.AccordionColumn = TableAccordionColumn;\nTable.ActionsColumn = TableActionsColumn;\nTable.ActionItem = TableActionItem;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.DateRangePicker = TableDateRangePicker;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.LastUpdated = TableLastUpdated;\nTable.Layouts = TableLayouts;\nTable.Loading = TableLoading;\nTable.NoData = TableNoData;\nTable.Pagination = TablePagination;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\n\nTable.extend = identity as CustomComponentThemeExtend<PlasmaTableFactory>;\n"],"names":["Table","TableComponentsOrder","defaultProps","layouts","TableLayouts","Rows","layoutProps","loading","additionalRootNodes","options","getRowActions","props","useProps","store","data","getRowId","getRowAttributes","getRowExpandedContent","columns","children","ref","style","className","classNames","styles","unstyled","others","getStyles","useStyles","name","classes","convertedChildren","Children","toArray","header","find","child","type","TableHeader","footer","TableFooter","lastUpdated","TableLastUpdated","noData","TableNoData","table","useReactTable","state","globalFilter","sorting","pagination","columnVisibility","expanded","onGlobalFilterChange","setGlobalFilter","onExpandedChange","setExpanded","onSortingChange","setSorting","onPaginationChange","setPagination","onColumnVisibilityChange","setColumnVisibility","multiRowSelectionEnabled","TableSelectableColumn","concat","getCoreRowModel","manualPagination","getPaginationRowModel","undefined","enableMultiRowSelection","getRowCanExpand","row","original","index","enableRowSelection","defaultColumn","size","minSize","defaultColumnSizing","maxSize","rowCount","getFilteredRowModel","totalEntries","setOptions","prev","rowSelection","onRowSelectionChange","rowSelectionUpdater","setRowSelection","old","newRowSelection","Function","isEqual","rows","getRowModel","rowsById","Object","keys","forEach","rowId","console","error","useEffect","getSelectedRows","length","newSelection","containerRef","useRef","useClickOutside","clearRowSelection","current","mergedRef","useMergedRef","Center","flexGrow","Loader","Layout","layout","displayName","hasRows","Box","TableProvider","value","isVacant","isFiltered","component","mod","thead","tr","th","padding","colSpan","getAllColumns","Header","tbody","Body","td","TableLoading","visible","MultiSelectInfo","Actions","Predicate","Filter","DateRangePicker","LayoutControl","AccordionColumn","TableAccordionColumn","ActionsColumn","TableActionsColumn","ActionItem","TableActionItem","CollapsibleColumn","TableCollapsibleColumn","TableDateRangePicker","TableFilter","Footer","LastUpdated","Layouts","Loading","NoData","Pagination","TablePagination","PerPage","TablePerPage","TablePredicate","extend","identity"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/Table/Table.tsx"],"sourcesContent":["import {Box, Center, Factory, Loader, useProps, useStyles} from '@mantine/core';\nimport {useClickOutside, useMergedRef} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n getCoreRowModel,\n Row,\n RowSelectionState,\n useReactTable,\n} from '@tanstack/react-table';\nimport isEqual from 'fast-deep-equal';\nimport {Children, ForwardedRef, ReactElement, useEffect, useRef} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../utils/createFactoryComponent.js';\nimport classes from './Table.module.css';\nimport {TableLayout, TableProps} from './Table.types.js';\nimport {TableProvider} from './TableContext.js';\nimport {TableLayouts} from './layouts/TableLayouts.js';\nimport {TableActionItem, TableActionItemStylesNames} from './table-actions/TableActionItem.js';\nimport {TableActionsListStylesNames} from './table-actions/TableActionsList.js';\nimport {TableHeaderActionsStylesNames} from './table-actions/TableHeaderActions.js';\nimport {TableActionsColumn} from './table-column/TableActionsColumn.js';\nimport {\n TableAccordionColumn,\n TableCollapsibleColumn,\n TableCollapsibleColumnStylesNames,\n} from './table-column/TableCollapsibleColumn.js';\nimport {TableSelectableColumn} from './table-column/TableSelectableColumn.js';\nimport {TableDateRangePicker, TableDateRangePickerStylesNames} from './table-date-range-picker/TableDateRangePicker.js';\nimport {TableFilter, TableFilterStylesNames} from './table-filter/TableFilter.js';\nimport {TableFooter} from './table-footer/TableFooter.js';\nimport {TableHeader, TableHeaderStylesNames} from './table-header/TableHeader.js';\nimport {TableThStylesNames} from './table-header/Th.js';\nimport {TableLastUpdated, TableLastUpdatedStylesNames} from './table-last-updated/TableLastUpdated.js';\nimport {TableLoading} from './table-loading/TableLoading.js';\nimport {TableNoData} from './table-no-data/TableNoData.js';\nimport {TablePagination} from './table-pagination/TablePagination.js';\nimport {TablePerPage} from './table-per-page/TablePerPage.js';\nimport {TablePredicate, TablePredicateStylesNames} from './table-predicate/TablePredicate.js';\nimport {TableState} from './use-table.js';\n\ntype TableStylesNames =\n | 'root'\n | 'table'\n | 'header'\n | 'body'\n | TableHeaderActionsStylesNames\n | TableActionsListStylesNames\n | TableActionItemStylesNames\n | TableCollapsibleColumnStylesNames\n | TableDateRangePickerStylesNames\n | TableFilterStylesNames\n | TableHeaderStylesNames\n | TableThStylesNames\n | TableLastUpdatedStylesNames\n | TablePredicateStylesNames;\n\nexport type PlasmaTableFactory = Factory<{\n props: TableProps<unknown>;\n ref: HTMLDivElement;\n stylesNames: TableStylesNames;\n staticComponents: {\n AccordionColumn: typeof TableAccordionColumn;\n ActionsColumn: typeof TableActionsColumn;\n ActionItem: typeof TableActionItem;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n DateRangePicker: typeof TableDateRangePicker;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n LastUpdated: typeof TableLastUpdated;\n Layouts: typeof TableLayouts;\n Loading: typeof TableLoading;\n NoData: typeof TableNoData;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n };\n}>;\n\nconst defaultProps: Partial<TableProps<unknown>> = {\n layouts: [TableLayouts.Rows as TableLayout],\n layoutProps: {},\n loading: false,\n additionalRootNodes: [],\n options: {},\n getRowActions: () => [],\n};\n\nexport const Table = <T,>(props: TableProps<T> & {ref?: ForwardedRef<HTMLDivElement>}) => {\n const {\n store,\n data,\n getRowId,\n getRowAttributes,\n getRowExpandedContent,\n getRowActions,\n columns,\n layouts,\n layoutProps,\n children,\n loading,\n additionalRootNodes,\n options,\n ref,\n\n // Style props\n style,\n className,\n classNames,\n styles,\n unstyled,\n ...others\n } = useProps('PlasmaTable', defaultProps as TableProps<T>, props);\n\n const getStyles = useStyles<PlasmaTableFactory>({\n name: 'PlasmaTable',\n classes,\n props: props as TableProps<unknown>,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n const lastUpdated = convertedChildren.find((child) => child.type === TableLastUpdated);\n const noData = convertedChildren.find((child) => child.type === TableNoData);\n\n const table = useReactTable({\n data: data || [],\n state: {\n globalFilter: store.state.globalFilter,\n sorting: store.state.sorting,\n pagination: store.state.pagination,\n columnVisibility: store.state.columnVisibility,\n expanded: store.state.expanded,\n },\n onGlobalFilterChange: store.setGlobalFilter,\n onExpandedChange: store.setExpanded,\n onSortingChange: store.setSorting,\n onPaginationChange: store.setPagination,\n onColumnVisibilityChange: store.setColumnVisibility,\n columns: store.multiRowSelectionEnabled ? [TableSelectableColumn as ColumnDef<T>].concat(columns) : columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: options?.getPaginationRowModel === undefined,\n enableMultiRowSelection: !!store.multiRowSelectionEnabled,\n getRowId,\n getRowCanExpand: (row: Row<T>) => !!getRowExpandedContent?.(row.original, row.index, row),\n enableRowSelection: !loading,\n defaultColumn: {\n size: undefined,\n minSize: defaultColumnSizing.minSize,\n maxSize: defaultColumnSizing.maxSize,\n },\n rowCount: options?.getFilteredRowModel ? undefined : store.state.totalEntries,\n ...options,\n });\n\n table.setOptions((prev) => ({\n ...prev,\n state: {\n ...prev.state,\n rowSelection: store.state.rowSelection as RowSelectionState,\n },\n onRowSelectionChange: (rowSelectionUpdater) => {\n store.setRowSelection((old) => {\n const newRowSelection = (\n rowSelectionUpdater instanceof Function\n ? rowSelectionUpdater(old as RowSelectionState)\n : rowSelectionUpdater\n ) as TableState<T>['rowSelection'];\n\n if (isEqual(old, newRowSelection)) {\n return old;\n }\n\n const rows = table.getRowModel().rowsById;\n\n Object.keys(newRowSelection).forEach((rowId) => {\n if (newRowSelection[rowId] === true) {\n if (!rows[rowId]) {\n console.error(\n 'The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.',\n );\n }\n newRowSelection[rowId] = rows[rowId]?.original ?? (true as T);\n }\n });\n\n return newRowSelection;\n });\n },\n }));\n\n useEffect(() => {\n // Update the selected rows data when the data prop changes\n if (store.getSelectedRows().length > 0) {\n store.setRowSelection((old) => {\n const rowsById = table.getRowModel().rowsById;\n const newSelection = {...old};\n Object.keys(old).forEach((rowId) => {\n if (rowsById[rowId]) {\n newSelection[rowId] = rowsById[rowId].original;\n }\n });\n return isEqual(newSelection, old) ? old : newSelection;\n });\n }\n }, [data]);\n\n const containerRef = useRef<HTMLDivElement>(null);\n useClickOutside(\n () => {\n if (!store.multiRowSelectionEnabled && store.getSelectedRows().length > 0) {\n store.clearRowSelection();\n }\n },\n null,\n [containerRef.current, ...additionalRootNodes],\n );\n const mergedRef = useMergedRef(containerRef, ref);\n\n if (!data) {\n return (\n <Center style={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const Layout =\n store.state.layout === null ? layouts[0] : layouts.find(({displayName}) => displayName === store.state.layout);\n const hasRows = table.getRowModel().rows.length > 0;\n\n return (\n <Box ref={mergedRef} {...others} {...getStyles('root')}>\n <TableProvider<T> value={{getStyles, getRowActions, store, table, layouts, containerRef}}>\n <Layout>\n {store.isVacant && !store.isFiltered ? (\n noData\n ) : (\n <>\n <Box component=\"table\" {...getStyles('table')} mod={{loading}}>\n <thead {...getStyles('header')}>\n {header ? (\n <tr>\n <th style={{padding: 0}} colSpan={table.getAllColumns().length}>\n {header}\n </th>\n </tr>\n ) : null}\n <Layout.Header\n getRowExpandedContent={getRowExpandedContent}\n getRowAttributes={getRowAttributes}\n loading={loading}\n {...layoutProps}\n />\n </thead>\n <tbody {...getStyles('body')}>\n {hasRows ? (\n <Layout.Body\n getRowExpandedContent={getRowExpandedContent}\n getRowAttributes={getRowAttributes}\n loading={loading}\n {...layoutProps}\n />\n ) : (\n <tr>\n <td colSpan={table.getAllColumns().length}>\n <TableLoading visible={loading || !store.isFiltered}>\n {noData}\n </TableLoading>\n </td>\n </tr>\n )}\n </tbody>\n </Box>\n {footer}\n {lastUpdated}\n </>\n )}\n </Layout>\n </TableProvider>\n </Box>\n );\n};\n\nexport const TableComponentsOrder = {\n MultiSelectInfo: 7,\n Actions: 6,\n Predicate: 5,\n Filter: 4,\n DateRangePicker: 3,\n LayoutControl: 1,\n};\n\nTable.AccordionColumn = TableAccordionColumn;\nTable.ActionsColumn = TableActionsColumn;\nTable.ActionItem = TableActionItem;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.DateRangePicker = TableDateRangePicker;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.LastUpdated = TableLastUpdated;\nTable.Layouts = TableLayouts;\nTable.Loading = TableLoading;\nTable.NoData = TableNoData;\nTable.Pagination = TablePagination;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\n\nTable.extend = identity as CustomComponentThemeExtend<PlasmaTableFactory>;\n"],"names":["Table","TableComponentsOrder","defaultProps","layouts","TableLayouts","Rows","layoutProps","loading","additionalRootNodes","options","getRowActions","props","useProps","store","data","getRowId","getRowAttributes","getRowExpandedContent","columns","children","ref","style","className","classNames","styles","unstyled","others","getStyles","useStyles","name","classes","convertedChildren","Children","toArray","header","find","child","type","TableHeader","footer","TableFooter","lastUpdated","TableLastUpdated","noData","TableNoData","table","useReactTable","state","globalFilter","sorting","pagination","columnVisibility","expanded","onGlobalFilterChange","setGlobalFilter","onExpandedChange","setExpanded","onSortingChange","setSorting","onPaginationChange","setPagination","onColumnVisibilityChange","setColumnVisibility","multiRowSelectionEnabled","TableSelectableColumn","concat","getCoreRowModel","manualPagination","getPaginationRowModel","undefined","enableMultiRowSelection","getRowCanExpand","row","original","index","enableRowSelection","defaultColumn","size","minSize","defaultColumnSizing","maxSize","rowCount","getFilteredRowModel","totalEntries","setOptions","prev","rowSelection","onRowSelectionChange","rowSelectionUpdater","setRowSelection","old","newRowSelection","Function","isEqual","rows","getRowModel","rowsById","Object","keys","forEach","rowId","console","error","useEffect","getSelectedRows","length","newSelection","containerRef","useRef","useClickOutside","clearRowSelection","current","mergedRef","useMergedRef","Center","flexGrow","Loader","Layout","layout","displayName","hasRows","Box","TableProvider","value","isVacant","isFiltered","component","mod","thead","tr","th","padding","colSpan","getAllColumns","Header","tbody","Body","td","TableLoading","visible","MultiSelectInfo","Actions","Predicate","Filter","DateRangePicker","LayoutControl","AccordionColumn","TableAccordionColumn","ActionsColumn","TableActionsColumn","ActionItem","TableActionItem","CollapsibleColumn","TableCollapsibleColumn","TableDateRangePicker","TableFilter","Footer","LastUpdated","Layouts","Loading","NoData","Pagination","TablePagination","PerPage","TablePerPage","TablePredicate","extend","identity"],"mappings":"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"}
@@ -12,7 +12,7 @@ var _jsxruntime = require("react/jsx-runtime");
12
12
  var _core = require("@mantine/core");
13
13
  var _Table = require("../Table.js");
14
14
  var _TableContext = require("../TableContext.js");
15
- var TableLayoutControl = function() {
15
+ var TableLayoutControl = function TableLayoutControl() {
16
16
  var _useTableContext = (0, _TableContext.useTableContext)(), layouts = _useTableContext.layouts, store = _useTableContext.store;
17
17
  return layouts.length > 1 ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Grid.Col, {
18
18
  order: _Table.TableComponentsOrder.LayoutControl,
@@ -18,7 +18,7 @@ var _RowLayoutBody = require("./RowLayoutBody.js");
18
18
  var _RowLayoutContext = require("./RowLayoutContext.js");
19
19
  var _RowLayoutHeader = require("./RowLayoutHeader.js");
20
20
  var defaultProps = {};
21
- var RowLayout = function(props) {
21
+ var RowLayout = function RowLayout(props) {
22
22
  var _useProps = (0, _core.useProps)('PlasmaRowLayout', defaultProps, props), children = _useProps.children, styles = _useProps.styles, classNames = _useProps.classNames, unstyled = _useProps.unstyled;
23
23
  var getStyles = (0, _core.useStyles)({
24
24
  name: 'PlasmaRowLayout',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/components/Table/layouts/row-layout/RowLayout.tsx"],"sourcesContent":["import {IconList} from '@coveord/plasma-react-icons';\nimport {Factory, MantineComponent, StylesApiProps, useProps, useStyles} from '@mantine/core';\nimport {ReactNode} from 'react';\nimport {identity} from '../../../../utils/createFactoryComponent.js';\nimport {TableLayout} from '../../Table.types.js';\nimport classes from './RowLayout.module.css';\nimport {RowLayoutBody, RowLayoutBodyStylesNames} from './RowLayoutBody.js';\nimport {RowLayoutProvider} from './RowLayoutContext.js';\nimport {RowLayoutHeader, RowLayoutHeaderStyleNames} from './RowLayoutHeader.js';\n\ntype RowLayoutStylesNames = RowLayoutHeaderStyleNames | RowLayoutBodyStylesNames;\nexport interface RowLayoutProps extends StylesApiProps<RowLayoutFactory> {\n children: ReactNode;\n}\n\nexport type RowLayoutFactory = Factory<{\n ref?: never;\n props: RowLayoutProps;\n stylesNames: RowLayoutStylesNames;\n staticComponents: TableLayout;\n}>;\nconst defaultProps: Partial<RowLayoutProps> = {};\n\nexport const RowLayout = ((props: RowLayoutProps) => {\n const {children, styles, classNames, unstyled} = useProps('PlasmaRowLayout', defaultProps, props);\n const getStyles = useStyles<RowLayoutFactory>({\n name: 'PlasmaRowLayout',\n classes,\n props,\n styles,\n classNames,\n unstyled,\n });\n\n return <RowLayoutProvider value={{getStyles}}>{children}</RowLayoutProvider>;\n}) as MantineComponent<RowLayoutFactory>;\n\nRowLayout.Body = RowLayoutBody;\nRowLayout.Header = RowLayoutHeader;\nRowLayout.Icon = IconList;\nRowLayout.displayName = 'Rows';\nRowLayout.extend = identity;\n"],"names":["RowLayout","defaultProps","props","useProps","children","styles","classNames","unstyled","getStyles","useStyles","name","classes","RowLayoutProvider","value","Body","RowLayoutBody","Header","RowLayoutHeader","Icon","IconList","displayName","extend","identity"],"mappings":";;;;+BAuBaA;;;eAAAA;;;;;gCAvBU;oBACsD;sCAEtD;2EAEH;6BACkC;gCACtB;+BACyB;AAazD,IAAMC,eAAwC,CAAC;AAExC,IAAMD,YAAa,SAACE;IACvB,IAAiDC,YAAAA,IAAAA,cAAQ,EAAC,mBAAmBF,cAAcC,QAApFE,WAA0CD,UAA1CC,UAAUC,SAAgCF,UAAhCE,QAAQC,aAAwBH,UAAxBG,YAAYC,WAAYJ,UAAZI;IACrC,IAAMC,YAAYC,IAAAA,eAAS,EAAmB;QAC1CC,MAAM;QACNC,SAAAA,2BAAO;QACPT,OAAAA;QACAG,QAAAA;QACAC,YAAAA;QACAC,UAAAA;IACJ;IAEA,qBAAO,qBAACK,mCAAiB;QAACC,OAAO;YAACL,WAAAA;QAAS;kBAAIJ;;AACnD;AAEAJ,UAAUc,IAAI,GAAGC,4BAAa;AAC9Bf,UAAUgB,MAAM,GAAGC,gCAAe;AAClCjB,UAAUkB,IAAI,GAAGC,0BAAQ;AACzBnB,UAAUoB,WAAW,GAAG;AACxBpB,UAAUqB,MAAM,GAAGC,gCAAQ"}
1
+ {"version":3,"sources":["../../../../../../src/components/Table/layouts/row-layout/RowLayout.tsx"],"sourcesContent":["import {IconList} from '@coveord/plasma-react-icons';\nimport {Factory, MantineComponent, StylesApiProps, useProps, useStyles} from '@mantine/core';\nimport {ReactNode} from 'react';\nimport {identity} from '../../../../utils/createFactoryComponent.js';\nimport {TableLayout} from '../../Table.types.js';\nimport classes from './RowLayout.module.css';\nimport {RowLayoutBody, RowLayoutBodyStylesNames} from './RowLayoutBody.js';\nimport {RowLayoutProvider} from './RowLayoutContext.js';\nimport {RowLayoutHeader, RowLayoutHeaderStyleNames} from './RowLayoutHeader.js';\n\ntype RowLayoutStylesNames = RowLayoutHeaderStyleNames | RowLayoutBodyStylesNames;\nexport interface RowLayoutProps extends StylesApiProps<RowLayoutFactory> {\n children: ReactNode;\n}\n\nexport type RowLayoutFactory = Factory<{\n ref?: never;\n props: RowLayoutProps;\n stylesNames: RowLayoutStylesNames;\n staticComponents: TableLayout;\n}>;\nconst defaultProps: Partial<RowLayoutProps> = {};\n\nexport const RowLayout = ((props: RowLayoutProps) => {\n const {children, styles, classNames, unstyled} = useProps('PlasmaRowLayout', defaultProps, props);\n const getStyles = useStyles<RowLayoutFactory>({\n name: 'PlasmaRowLayout',\n classes,\n props,\n styles,\n classNames,\n unstyled,\n });\n\n return <RowLayoutProvider value={{getStyles}}>{children}</RowLayoutProvider>;\n}) as MantineComponent<RowLayoutFactory>;\n\nRowLayout.Body = RowLayoutBody;\nRowLayout.Header = RowLayoutHeader;\nRowLayout.Icon = IconList;\nRowLayout.displayName = 'Rows';\nRowLayout.extend = identity;\n"],"names":["RowLayout","defaultProps","props","useProps","children","styles","classNames","unstyled","getStyles","useStyles","name","classes","RowLayoutProvider","value","Body","RowLayoutBody","Header","RowLayoutHeader","Icon","IconList","displayName","extend","identity"],"mappings":";;;;+BAuBaA;;;eAAAA;;;;;gCAvBU;oBACsD;sCAEtD;2EAEH;6BACkC;gCACtB;+BACyB;AAazD,IAAMC,eAAwC,CAAC;AAExC,IAAMD,YAAa,mBAACE;IACvB,IAAiDC,YAAAA,IAAAA,cAAQ,EAAC,mBAAmBF,cAAcC,QAApFE,WAA0CD,UAA1CC,UAAUC,SAAgCF,UAAhCE,QAAQC,aAAwBH,UAAxBG,YAAYC,WAAYJ,UAAZI;IACrC,IAAMC,YAAYC,IAAAA,eAAS,EAAmB;QAC1CC,MAAM;QACNC,SAAAA,2BAAO;QACPT,OAAAA;QACAG,QAAAA;QACAC,YAAAA;QACAC,UAAAA;IACJ;IAEA,qBAAO,qBAACK,mCAAiB;QAACC,OAAO;YAACL,WAAAA;QAAS;kBAAIJ;;AACnD;AAEAJ,UAAUc,IAAI,GAAGC,4BAAa;AAC9Bf,UAAUgB,MAAM,GAAGC,gCAAe;AAClCjB,UAAUkB,IAAI,GAAGC,0BAAQ;AACzBnB,UAAUoB,WAAW,GAAG;AACxBpB,UAAUqB,MAAM,GAAGC,gCAAQ"}
@@ -23,7 +23,7 @@ var _TableSelectableColumn = require("../../table-column/TableSelectableColumn.j
23
23
  var _TableLoading = require("../../table-loading/TableLoading.js");
24
24
  var _RowLayoutContext = require("./RowLayoutContext.js");
25
25
  var defaultProps = {};
26
- var RowLayoutBody = function(props) {
26
+ var RowLayoutBody = function RowLayoutBody(props) {
27
27
  var _table_getRowModel;
28
28
  var ctx = (0, _RowLayoutContext.useRowLayout)();
29
29
  var _useProps = (0, _core.useProps)('RowLayoutBody', defaultProps, props), getRowExpandedContent = _useProps.getRowExpandedContent, onRowDoubleClick = _useProps.onRowDoubleClick, loading = _useProps.loading, classNames = _useProps.classNames, className = _useProps.className, styles = _useProps.styles, style = _useProps.style, getRowAttributes = _useProps.getRowAttributes, others = _object_without_properties._(_useProps, [
@@ -37,16 +37,16 @@ var RowLayoutBody = function(props) {
37
37
  "getRowAttributes"
38
38
  ]);
39
39
  var _useTableContext = (0, _TableContext.useTableContext)(), table = _useTableContext.table, store = _useTableContext.store;
40
- var toggleCollapsible = function(el) {
40
+ var toggleCollapsible = function toggleCollapsible(el) {
41
41
  var cell = el.children[el.children.length - 1];
42
42
  cell.querySelector('button').click();
43
43
  };
44
44
  var rows = (_table_getRowModel = table.getRowModel()) === null || _table_getRowModel === void 0 ? void 0 : _table_getRowModel.rows.map(function(row) {
45
- var _getRowExpandedContent;
46
- var rowChildren = (_getRowExpandedContent = getRowExpandedContent === null || getRowExpandedContent === void 0 ? void 0 : getRowExpandedContent(row.original, row.index, row)) !== null && _getRowExpandedContent !== void 0 ? _getRowExpandedContent : null;
45
+ var _ref, _ref1;
46
+ var rowChildren = (_ref = getRowExpandedContent === null || getRowExpandedContent === void 0 ? void 0 : getRowExpandedContent(row.original, row.index, row)) !== null && _ref !== void 0 ? _ref : null;
47
47
  var isSelected = !!row.getIsSelected();
48
48
  var shouldKeepSelection = store.rowSelectionForced && isSelected;
49
- var onClick = function(event) {
49
+ var onClick = function onClick(event) {
50
50
  if (rowChildren) {
51
51
  toggleCollapsible(event.currentTarget);
52
52
  }
@@ -54,12 +54,11 @@ var RowLayoutBody = function(props) {
54
54
  row.toggleSelected();
55
55
  }
56
56
  };
57
- var _getRowAttributes;
58
57
  return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_react.Fragment, {
59
58
  children: [
60
59
  /*#__PURE__*/ (0, _jsxruntime.jsx)("tr", _object_spread_props._(_object_spread._({
61
60
  onClick: onClick,
62
- onDoubleClick: function() {
61
+ onDoubleClick: function onDoubleClick() {
63
62
  onRowDoubleClick === null || onRowDoubleClick === void 0 ? void 0 : onRowDoubleClick(row.original, row.index, row);
64
63
  },
65
64
  "data-selectable": store.rowSelectionEnabled,
@@ -72,14 +71,14 @@ var RowLayoutBody = function(props) {
72
71
  className: className,
73
72
  styles: styles,
74
73
  style: style
75
- }), (_getRowAttributes = getRowAttributes === null || getRowAttributes === void 0 ? void 0 : getRowAttributes(row.original, row.index, row)) !== null && _getRowAttributes !== void 0 ? _getRowAttributes : {}, others), {
74
+ }), (_ref1 = getRowAttributes === null || getRowAttributes === void 0 ? void 0 : getRowAttributes(row.original, row.index, row)) !== null && _ref1 !== void 0 ? _ref1 : {}, others), {
76
75
  children: row.getVisibleCells().map(function(cell) {
77
76
  var columnSizing = _object_spread_props._(_object_spread._({}, _tablecore.defaultColumnSizing), {
78
77
  size: cell.column.columnDef.size,
79
78
  minSize: cell.column.columnDef.minSize,
80
79
  maxSize: cell.column.columnDef.maxSize
81
80
  });
82
- var onCollapsibleCellClick = function(event) {
81
+ var onCollapsibleCellClick = function onCollapsibleCellClick(event) {
83
82
  if (cell.column.id === _TableSelectableColumn.TableSelectableColumn.id && store.rowSelectionEnabled) {
84
83
  event.stopPropagation();
85
84
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/components/Table/layouts/row-layout/RowLayoutBody.tsx"],"sourcesContent":["import {Box, BoxProps, Collapse, CompoundStylesApiProps, Factory, useProps} from '@mantine/core';\nimport {flexRender} from '@tanstack/react-table';\nimport {defaultColumnSizing} from '@tanstack/table-core';\nimport {ForwardedRef, Fragment, type MouseEvent} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../../../utils/createFactoryComponent.js';\nimport {TableLayoutProps} from '../../Table.types.js';\nimport {useTableContext} from '../../TableContext.js';\nimport {TableCollapsibleColumn} from '../../table-column/TableCollapsibleColumn.js';\nimport {TableSelectableColumn} from '../../table-column/TableSelectableColumn.js';\nimport {TableLoading} from '../../table-loading/TableLoading.js';\nimport {useRowLayout} from './RowLayoutContext.js';\n\nexport type RowLayoutBodyStylesNames = 'row' | 'cell' | 'collapsibleRow' | 'collapsibleWrapper';\n\nexport interface RowLayoutBodyProps<T>\n extends BoxProps,\n TableLayoutProps<T>,\n CompoundStylesApiProps<RowLayoutBodyFactory> {}\n\nexport type RowLayoutBodyFactory = Factory<{\n props: RowLayoutBodyProps<unknown>;\n ref: HTMLTableRowElement;\n stylesNames: RowLayoutBodyStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<RowLayoutBodyProps<unknown>> = {};\n\nexport const RowLayoutBody = <T,>(props: RowLayoutBodyProps<T> & {ref?: ForwardedRef<HTMLTableRowElement>}) => {\n const ctx = useRowLayout();\n const {\n getRowExpandedContent,\n onRowDoubleClick,\n loading,\n classNames,\n className,\n styles,\n style,\n getRowAttributes,\n ...others\n } = useProps('RowLayoutBody', defaultProps as RowLayoutBodyProps<T>, props);\n const {table, store} = useTableContext<T>();\n const toggleCollapsible = (el: HTMLTableRowElement) => {\n const cell = el.children[el.children.length - 1] as HTMLTableCellElement;\n cell.querySelector('button').click();\n };\n\n const rows = table.getRowModel()?.rows.map((row) => {\n const rowChildren = getRowExpandedContent?.(row.original, row.index, row) ?? null;\n const isSelected = !!row.getIsSelected();\n const shouldKeepSelection = store.rowSelectionForced && isSelected;\n const onClick = (event: MouseEvent<HTMLTableRowElement>) => {\n if (rowChildren) {\n toggleCollapsible(event.currentTarget);\n }\n if (store.rowSelectionEnabled && !store.multiRowSelectionEnabled && !shouldKeepSelection) {\n row.toggleSelected();\n }\n };\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={onClick}\n onDoubleClick={() => {\n onRowDoubleClick?.(row.original, row.index, row);\n }}\n data-selectable={store.rowSelectionEnabled}\n data-selected={isSelected}\n data-multi-selection={store.multiRowSelectionEnabled}\n aria-selected={isSelected}\n data-testid={row.id}\n {...ctx.getStyles('row', {classNames, className, styles, style})}\n {...(getRowAttributes?.(row.original, row.index, row) ?? {})}\n {...others}\n >\n {row.getVisibleCells().map((cell) => {\n const columnSizing = {\n ...defaultColumnSizing,\n size: cell.column.columnDef.size,\n minSize: cell.column.columnDef.minSize,\n maxSize: cell.column.columnDef.maxSize,\n };\n\n const onCollapsibleCellClick = (event: MouseEvent<HTMLTableCellElement>) => {\n if (cell.column.id === TableSelectableColumn.id && store.rowSelectionEnabled) {\n event.stopPropagation();\n }\n };\n\n return (\n <td\n key={cell.id}\n data-testid={cell.id}\n className={ctx.getStyles('cell', {classNames, styles}).className}\n style={{\n width: columnSizing.size ? `${columnSizing.size}px` : 'auto',\n minWidth: `${columnSizing.minSize}px`,\n maxWidth: `${columnSizing.maxSize}px`,\n ...ctx.getStyles('cell', {classNames, styles}).style,\n }}\n data-collapsible-cell={cell.column.id === TableCollapsibleColumn.id}\n onClick={onCollapsibleCellClick}\n >\n <TableLoading visible={loading}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableLoading>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr {...ctx.getStyles('collapsibleRow', {classNames, styles})}>\n <td\n colSpan={table.getAllColumns().length}\n style={{\n padding: 0,\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n <Box {...ctx.getStyles('collapsibleWrapper', {classNames, styles})} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Box>\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return <>{rows}</>;\n};\n\nRowLayoutBody.extend = identity as CustomComponentThemeExtend<RowLayoutBodyFactory>;\n"],"names":["RowLayoutBody","defaultProps","props","table","ctx","useRowLayout","useProps","getRowExpandedContent","onRowDoubleClick","loading","classNames","className","styles","style","getRowAttributes","others","useTableContext","store","toggleCollapsible","el","cell","children","length","querySelector","click","rows","getRowModel","map","row","rowChildren","original","index","isSelected","getIsSelected","shouldKeepSelection","rowSelectionForced","onClick","event","currentTarget","rowSelectionEnabled","multiRowSelectionEnabled","toggleSelected","Fragment","tr","onDoubleClick","data-selectable","data-selected","data-multi-selection","aria-selected","data-testid","id","getStyles","getVisibleCells","columnSizing","defaultColumnSizing","size","column","columnDef","minSize","maxSize","onCollapsibleCellClick","TableSelectableColumn","stopPropagation","td","width","minWidth","maxWidth","data-collapsible-cell","TableCollapsibleColumn","TableLoading","visible","flexRender","getContext","colSpan","getAllColumns","padding","Collapse","in","getIsExpanded","Box","px","py","extend","identity"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/components/Table/layouts/row-layout/RowLayoutBody.tsx"],"sourcesContent":["import {Box, BoxProps, Collapse, CompoundStylesApiProps, Factory, useProps} from '@mantine/core';\nimport {flexRender} from '@tanstack/react-table';\nimport {defaultColumnSizing} from '@tanstack/table-core';\nimport {ForwardedRef, Fragment, type MouseEvent} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../../../utils/createFactoryComponent.js';\nimport {TableLayoutProps} from '../../Table.types.js';\nimport {useTableContext} from '../../TableContext.js';\nimport {TableCollapsibleColumn} from '../../table-column/TableCollapsibleColumn.js';\nimport {TableSelectableColumn} from '../../table-column/TableSelectableColumn.js';\nimport {TableLoading} from '../../table-loading/TableLoading.js';\nimport {useRowLayout} from './RowLayoutContext.js';\n\nexport type RowLayoutBodyStylesNames = 'row' | 'cell' | 'collapsibleRow' | 'collapsibleWrapper';\n\nexport interface RowLayoutBodyProps<T>\n extends BoxProps,\n TableLayoutProps<T>,\n CompoundStylesApiProps<RowLayoutBodyFactory> {}\n\nexport type RowLayoutBodyFactory = Factory<{\n props: RowLayoutBodyProps<unknown>;\n ref: HTMLTableRowElement;\n stylesNames: RowLayoutBodyStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<RowLayoutBodyProps<unknown>> = {};\n\nexport const RowLayoutBody = <T,>(props: RowLayoutBodyProps<T> & {ref?: ForwardedRef<HTMLTableRowElement>}) => {\n const ctx = useRowLayout();\n const {\n getRowExpandedContent,\n onRowDoubleClick,\n loading,\n classNames,\n className,\n styles,\n style,\n getRowAttributes,\n ...others\n } = useProps('RowLayoutBody', defaultProps as RowLayoutBodyProps<T>, props);\n const {table, store} = useTableContext<T>();\n const toggleCollapsible = (el: HTMLTableRowElement) => {\n const cell = el.children[el.children.length - 1] as HTMLTableCellElement;\n cell.querySelector('button').click();\n };\n\n const rows = table.getRowModel()?.rows.map((row) => {\n const rowChildren = getRowExpandedContent?.(row.original, row.index, row) ?? null;\n const isSelected = !!row.getIsSelected();\n const shouldKeepSelection = store.rowSelectionForced && isSelected;\n const onClick = (event: MouseEvent<HTMLTableRowElement>) => {\n if (rowChildren) {\n toggleCollapsible(event.currentTarget);\n }\n if (store.rowSelectionEnabled && !store.multiRowSelectionEnabled && !shouldKeepSelection) {\n row.toggleSelected();\n }\n };\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={onClick}\n onDoubleClick={() => {\n onRowDoubleClick?.(row.original, row.index, row);\n }}\n data-selectable={store.rowSelectionEnabled}\n data-selected={isSelected}\n data-multi-selection={store.multiRowSelectionEnabled}\n aria-selected={isSelected}\n data-testid={row.id}\n {...ctx.getStyles('row', {classNames, className, styles, style})}\n {...(getRowAttributes?.(row.original, row.index, row) ?? {})}\n {...others}\n >\n {row.getVisibleCells().map((cell) => {\n const columnSizing = {\n ...defaultColumnSizing,\n size: cell.column.columnDef.size,\n minSize: cell.column.columnDef.minSize,\n maxSize: cell.column.columnDef.maxSize,\n };\n\n const onCollapsibleCellClick = (event: MouseEvent<HTMLTableCellElement>) => {\n if (cell.column.id === TableSelectableColumn.id && store.rowSelectionEnabled) {\n event.stopPropagation();\n }\n };\n\n return (\n <td\n key={cell.id}\n data-testid={cell.id}\n className={ctx.getStyles('cell', {classNames, styles}).className}\n style={{\n width: columnSizing.size ? `${columnSizing.size}px` : 'auto',\n minWidth: `${columnSizing.minSize}px`,\n maxWidth: `${columnSizing.maxSize}px`,\n ...ctx.getStyles('cell', {classNames, styles}).style,\n }}\n data-collapsible-cell={cell.column.id === TableCollapsibleColumn.id}\n onClick={onCollapsibleCellClick}\n >\n <TableLoading visible={loading}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableLoading>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr {...ctx.getStyles('collapsibleRow', {classNames, styles})}>\n <td\n colSpan={table.getAllColumns().length}\n style={{\n padding: 0,\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n <Box {...ctx.getStyles('collapsibleWrapper', {classNames, styles})} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Box>\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return <>{rows}</>;\n};\n\nRowLayoutBody.extend = identity as CustomComponentThemeExtend<RowLayoutBodyFactory>;\n"],"names":["RowLayoutBody","defaultProps","props","table","ctx","useRowLayout","useProps","getRowExpandedContent","onRowDoubleClick","loading","classNames","className","styles","style","getRowAttributes","others","useTableContext","store","toggleCollapsible","el","cell","children","length","querySelector","click","rows","getRowModel","map","row","rowChildren","original","index","isSelected","getIsSelected","shouldKeepSelection","rowSelectionForced","onClick","event","currentTarget","rowSelectionEnabled","multiRowSelectionEnabled","toggleSelected","Fragment","tr","onDoubleClick","data-selectable","data-selected","data-multi-selection","aria-selected","data-testid","id","getStyles","getVisibleCells","columnSizing","defaultColumnSizing","size","column","columnDef","minSize","maxSize","onCollapsibleCellClick","TableSelectableColumn","stopPropagation","td","width","minWidth","maxWidth","data-collapsible-cell","TableCollapsibleColumn","TableLoading","visible","flexRender","getContext","colSpan","getAllColumns","padding","Collapse","in","getIsExpanded","Box","px","py","extend","identity"],"mappings":"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"}
@@ -18,7 +18,7 @@ var _TableContext = require("../../TableContext.js");
18
18
  var _Th = require("../../table-header/Th.js");
19
19
  var _RowLayoutContext = require("./RowLayoutContext.js");
20
20
  var defaultProps = {};
21
- var RowLayoutHeader = function(props) {
21
+ var RowLayoutHeader = function RowLayoutHeader(props) {
22
22
  var ctx = (0, _RowLayoutContext.useRowLayout)();
23
23
  var _useProps = (0, _core.useProps)('RowLayoutHeader', defaultProps, props), _getRowExpandedContent = _useProps.getRowExpandedContent, _getRowActions = _useProps.getRowActions, _loading = _useProps.loading, _getRowAttributes = _useProps.getRowAttributes, _onRowDoubleClick = _useProps.onRowDoubleClick, className = _useProps.className, style = _useProps.style, classNames = _useProps.classNames, styles = _useProps.styles, others = _object_without_properties._(_useProps, [
24
24
  "getRowExpandedContent",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/components/Table/layouts/row-layout/RowLayoutHeader.tsx"],"sourcesContent":["import {BoxProps, CompoundStylesApiProps, Factory, useProps} from '@mantine/core';\nimport {ForwardedRef} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../../../utils/createFactoryComponent.js';\nimport {TableLayoutProps} from '../../Table.types.js';\nimport {useTableContext} from '../../TableContext.js';\nimport {Th} from '../../table-header/Th.js';\nimport {RowLayoutBodyFactory} from './RowLayoutBody.js';\nimport {useRowLayout} from './RowLayoutContext.js';\n\nexport type RowLayoutHeaderStyleNames = 'headerRow';\n\nexport interface RowLayoutHeaderProps<T>\n extends BoxProps,\n TableLayoutProps<T>,\n CompoundStylesApiProps<RowLayoutBodyFactory> {}\n\ntype RowLayoutHeaderFactory = Factory<{\n props: RowLayoutHeaderProps<unknown>;\n ref: HTMLTableRowElement;\n stylesNames: RowLayoutHeaderStyleNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<RowLayoutHeaderProps<unknown>> = {};\n\nexport const RowLayoutHeader = <T,>(props: RowLayoutHeaderProps<T> & {ref?: ForwardedRef<HTMLTableRowElement>}) => {\n const ctx = useRowLayout();\n const {\n getRowExpandedContent: _getRowExpandedContent,\n getRowActions: _getRowActions,\n loading: _loading,\n getRowAttributes: _getRowAttributes,\n onRowDoubleClick: _onRowDoubleClick,\n className,\n style,\n classNames,\n styles,\n ...others\n } = useProps('RowLayoutHeader', defaultProps as RowLayoutHeaderProps<T>, props);\n const {table, store} = useTableContext<T>();\n\n const headers = table.getHeaderGroups().map((headerGroup) => (\n <tr\n key={headerGroup.id}\n data-selectable={store.rowSelectionEnabled}\n data-multi-selection={store.multiRowSelectionEnabled}\n {...ctx.getStyles('headerRow', {className, classNames, styles, style})}\n {...others}\n >\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ));\n return <>{headers}</>;\n};\nRowLayoutHeader.extend = identity as CustomComponentThemeExtend<RowLayoutHeaderFactory>;\n"],"names":["RowLayoutHeader","defaultProps","props","ctx","useRowLayout","useProps","getRowExpandedContent","_getRowExpandedContent","getRowActions","_getRowActions","loading","_loading","getRowAttributes","_getRowAttributes","onRowDoubleClick","_onRowDoubleClick","className","style","classNames","styles","others","useTableContext","table","store","headers","getHeaderGroups","map","headerGroup","tr","data-selectable","rowSelectionEnabled","data-multi-selection","multiRowSelectionEnabled","getStyles","columnHeader","Th","header","id","extend","identity"],"mappings":";;;;+BAyBaA;;;eAAAA;;;;;;;oBAzBqD;sCAEf;4BAErB;kBACb;gCAEU;AAgB3B,IAAMC,eAAuD,CAAC;AAEvD,IAAMD,kBAAkB,SAAKE;IAChC,IAAMC,MAAMC,IAAAA,8BAAY;IACxB,IAWIC,YAAAA,IAAAA,cAAQ,EAAC,mBAAmBJ,cAAyCC,QAVrEI,AAAuBC,yBAUvBF,UAVAC,uBACAE,AAAeC,iBASfJ,UATAG,eACAE,AAASC,WAQTN,UARAK,SACAE,AAAkBC,oBAOlBR,UAPAO,kBACAE,AAAkBC,oBAMlBV,UANAS,kBACAE,YAKAX,UALAW,WACAC,QAIAZ,UAJAY,OACAC,aAGAb,UAHAa,YACAC,SAEAd,UAFAc,QACGC,sCACHf;QAVAC;QACAE;QACAE;QACAE;QACAE;QACAE;QACAC;QACAC;QACAC;;IAGJ,IAAuBE,mBAAAA,IAAAA,6BAAe,KAA/BC,QAAgBD,iBAAhBC,OAAOC,QAASF,iBAATE;IAEd,IAAMC,UAAUF,MAAMG,eAAe,GAAGC,GAAG,CAAC,SAACC;6BACzC,qBAACC;YAEGC,mBAAiBN,MAAMO,mBAAmB;YAC1CC,wBAAsBR,MAAMS,wBAAwB;WAChD7B,IAAI8B,SAAS,CAAC,aAAa;YAACjB,WAAAA;YAAWE,YAAAA;YAAYC,QAAAA;YAAQF,OAAAA;QAAK,IAChEG;sBAEHO,YAAYH,OAAO,CAACE,GAAG,CAAC,SAACQ;qCACtB,qBAACC,MAAE;oBAAuBC,QAAQF;mBAAzBA,aAAaG,EAAE;;YAPvBV,YAAYU,EAAE;;IAW3B,qBAAO;kBAAGb;;AACd;AACAxB,gBAAgBsC,MAAM,GAAGC,gCAAQ"}
1
+ {"version":3,"sources":["../../../../../../src/components/Table/layouts/row-layout/RowLayoutHeader.tsx"],"sourcesContent":["import {BoxProps, CompoundStylesApiProps, Factory, useProps} from '@mantine/core';\nimport {ForwardedRef} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../../../utils/createFactoryComponent.js';\nimport {TableLayoutProps} from '../../Table.types.js';\nimport {useTableContext} from '../../TableContext.js';\nimport {Th} from '../../table-header/Th.js';\nimport {RowLayoutBodyFactory} from './RowLayoutBody.js';\nimport {useRowLayout} from './RowLayoutContext.js';\n\nexport type RowLayoutHeaderStyleNames = 'headerRow';\n\nexport interface RowLayoutHeaderProps<T>\n extends BoxProps,\n TableLayoutProps<T>,\n CompoundStylesApiProps<RowLayoutBodyFactory> {}\n\ntype RowLayoutHeaderFactory = Factory<{\n props: RowLayoutHeaderProps<unknown>;\n ref: HTMLTableRowElement;\n stylesNames: RowLayoutHeaderStyleNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<RowLayoutHeaderProps<unknown>> = {};\n\nexport const RowLayoutHeader = <T,>(props: RowLayoutHeaderProps<T> & {ref?: ForwardedRef<HTMLTableRowElement>}) => {\n const ctx = useRowLayout();\n const {\n getRowExpandedContent: _getRowExpandedContent,\n getRowActions: _getRowActions,\n loading: _loading,\n getRowAttributes: _getRowAttributes,\n onRowDoubleClick: _onRowDoubleClick,\n className,\n style,\n classNames,\n styles,\n ...others\n } = useProps('RowLayoutHeader', defaultProps as RowLayoutHeaderProps<T>, props);\n const {table, store} = useTableContext<T>();\n\n const headers = table.getHeaderGroups().map((headerGroup) => (\n <tr\n key={headerGroup.id}\n data-selectable={store.rowSelectionEnabled}\n data-multi-selection={store.multiRowSelectionEnabled}\n {...ctx.getStyles('headerRow', {className, classNames, styles, style})}\n {...others}\n >\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ));\n return <>{headers}</>;\n};\nRowLayoutHeader.extend = identity as CustomComponentThemeExtend<RowLayoutHeaderFactory>;\n"],"names":["RowLayoutHeader","defaultProps","props","ctx","useRowLayout","useProps","getRowExpandedContent","_getRowExpandedContent","getRowActions","_getRowActions","loading","_loading","getRowAttributes","_getRowAttributes","onRowDoubleClick","_onRowDoubleClick","className","style","classNames","styles","others","useTableContext","table","store","headers","getHeaderGroups","map","headerGroup","tr","data-selectable","rowSelectionEnabled","data-multi-selection","multiRowSelectionEnabled","getStyles","columnHeader","Th","header","id","extend","identity"],"mappings":";;;;+BAyBaA;;;eAAAA;;;;;;;oBAzBqD;sCAEf;4BAErB;kBACb;gCAEU;AAgB3B,IAAMC,eAAuD,CAAC;AAEvD,IAAMD,kBAAkB,yBAAKE;IAChC,IAAMC,MAAMC,IAAAA,8BAAY;IACxB,IAWIC,YAAAA,IAAAA,cAAQ,EAAC,mBAAmBJ,cAAyCC,QAVrEI,AAAuBC,yBAUvBF,UAVAC,uBACAE,AAAeC,iBASfJ,UATAG,eACAE,AAASC,WAQTN,UARAK,SACAE,AAAkBC,oBAOlBR,UAPAO,kBACAE,AAAkBC,oBAMlBV,UANAS,kBACAE,YAKAX,UALAW,WACAC,QAIAZ,UAJAY,OACAC,aAGAb,UAHAa,YACAC,SAEAd,UAFAc,QACGC,sCACHf;;;;;;;;;;;IACJ,IAAuBgB,mBAAAA,IAAAA,6BAAe,KAA/BC,QAAgBD,iBAAhBC,OAAOC,QAASF,iBAATE;IAEd,IAAMC,UAAUF,MAAMG,eAAe,GAAGC,GAAG,CAAC,SAACC;6BACzC,qBAACC;YAEGC,mBAAiBN,MAAMO,mBAAmB;YAC1CC,wBAAsBR,MAAMS,wBAAwB;WAChD7B,IAAI8B,SAAS,CAAC,aAAa;YAACjB,WAAAA;YAAWE,YAAAA;YAAYC,QAAAA;YAAQF,OAAAA;QAAK,IAChEG;sBAEHO,YAAYH,OAAO,CAACE,GAAG,CAAC,SAACQ;qCACtB,qBAACC,MAAE;oBAAuBC,QAAQF;mBAAzBA,aAAaG,EAAE;;YAPvBV,YAAYU,EAAE;;IAW3B,qBAAO;kBAAGb;;AACd;AACAxB,gBAAgBsC,MAAM,GAAGC,gCAAQ"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Table/table-actions/TableActionItem.tsx"],"sourcesContent":["import {CompoundStylesApiProps, PolymorphicFactory, polymorphicFactory, useProps} from '@mantine/core';\nimport {ReactNode} from 'react';\nimport {Button, type ButtonProps} from '../../Button/Button.js';\nimport {useTableContext} from '../TableContext.js';\nimport {useTableActionContext} from './TableActionContext.js';\nimport {Menu, type MenuItemProps} from '../../Menu/Menu.js';\n\nexport type TableActionItemStylesNames = 'actionItemRoot';\n\nexport interface TableActionItemProps\n extends Omit<ButtonProps, 'classNames' | 'styles' | 'vars' | 'variant' | 'leftSection' | 'rightSection'>,\n Omit<MenuItemProps, 'classNames' | 'styles' | 'vars' | 'variant' | 'leftSection' | 'disabled'>,\n CompoundStylesApiProps<TableActionItemFactory> {\n /**\n * Action label\n */\n children: ReactNode;\n /**\n * Content to put on the left of the label\n */\n leftSection?: ReactNode;\n}\n\ntype TableActionItemFactory = PolymorphicFactory<{\n props: TableActionItemProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: TableActionItemStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableActionItemProps> = {};\n\nexport const TableActionItem = polymorphicFactory<TableActionItemFactory>(\n (props: TableActionItemProps & {component?: any}, ref) => {\n const {getStyles} = useTableContext();\n const {primary} = useTableActionContext();\n const {\n classNames,\n className,\n style,\n styles,\n vars: _vars,\n children,\n component,\n ...others\n } = useProps('PlasmaTableActionItem', defaultProps, props);\n\n if (primary) {\n return (\n <Button.Quaternary\n component={component}\n ref={ref}\n {...others}\n {...getStyles('actionItemRoot', {className, style, classNames, styles})}\n >\n {children}\n </Button.Quaternary>\n );\n }\n\n return (\n <Menu.Item\n component={component}\n ref={ref}\n {...others}\n {...getStyles('actionItemRoot', {className, style, classNames, styles})}\n >\n {children}\n </Menu.Item>\n );\n },\n);\n"],"names":["TableActionItem","defaultProps","polymorphicFactory","props","ref","getStyles","useTableContext","primary","useTableActionContext","useProps","classNames","className","style","styles","vars","_vars","children","component","others","Button","Quaternary","Menu","Item"],"mappings":";;;;+BAiCaA;;;eAAAA;;;;;;;oBAjC0E;sBAEhD;4BACT;kCACM;oBACG;AA0BvC,IAAMC,eAA8C,CAAC;AAE9C,IAAMD,kBAAkBE,IAAAA,wBAAkB,EAC7C,SAACC,OAAiDC;IAC9C,IAAM,AAACC,YAAaC,IAAAA,6BAAe,IAA5BD;IACP,IAAM,AAACE,UAAWC,IAAAA,yCAAqB,IAAhCD;IACP,IASIE,YAAAA,IAAAA,cAAQ,EAAC,yBAAyBR,cAAcE,QARhDO,aAQAD,UARAC,YACAC,YAOAF,UAPAE,WACAC,QAMAH,UANAG,OACAC,SAKAJ,UALAI,QACAC,AAAMC,QAINN,UAJAK,MACAE,WAGAP,UAHAO,UACAC,YAEAR,UAFAQ,WACGC,sCACHT;QARAC;QACAC;QACAC;QACAC;QACAC;QACAE;QACAC;;IAIJ,IAAIV,SAAS;QACT,qBACI,qBAACY,cAAM,CAACC,UAAU;YACdH,WAAWA;YACXb,KAAKA;WACDc,QACAb,UAAU,kBAAkB;YAACM,WAAAA;YAAWC,OAAAA;YAAOF,YAAAA;YAAYG,QAAAA;QAAM;sBAEpEG;;IAGb;IAEA,qBACI,qBAACK,UAAI,CAACC,IAAI;QACNL,WAAWA;QACXb,KAAKA;OACDc,QACAb,UAAU,kBAAkB;QAACM,WAAAA;QAAWC,OAAAA;QAAOF,YAAAA;QAAYG,QAAAA;IAAM;kBAEpEG;;AAGb"}
1
+ {"version":3,"sources":["../../../../../src/components/Table/table-actions/TableActionItem.tsx"],"sourcesContent":["import {CompoundStylesApiProps, PolymorphicFactory, polymorphicFactory, useProps} from '@mantine/core';\nimport {ReactNode} from 'react';\nimport {Button, type ButtonProps} from '../../Button/Button.js';\nimport {useTableContext} from '../TableContext.js';\nimport {useTableActionContext} from './TableActionContext.js';\nimport {Menu, type MenuItemProps} from '../../Menu/Menu.js';\n\nexport type TableActionItemStylesNames = 'actionItemRoot';\n\nexport interface TableActionItemProps\n extends Omit<ButtonProps, 'classNames' | 'styles' | 'vars' | 'variant' | 'leftSection' | 'rightSection'>,\n Omit<MenuItemProps, 'classNames' | 'styles' | 'vars' | 'variant' | 'leftSection' | 'disabled'>,\n CompoundStylesApiProps<TableActionItemFactory> {\n /**\n * Action label\n */\n children: ReactNode;\n /**\n * Content to put on the left of the label\n */\n leftSection?: ReactNode;\n}\n\ntype TableActionItemFactory = PolymorphicFactory<{\n props: TableActionItemProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: TableActionItemStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableActionItemProps> = {};\n\nexport const TableActionItem = polymorphicFactory<TableActionItemFactory>(\n (props: TableActionItemProps & {component?: any}, ref) => {\n const {getStyles} = useTableContext();\n const {primary} = useTableActionContext();\n const {\n classNames,\n className,\n style,\n styles,\n vars: _vars,\n children,\n component,\n ...others\n } = useProps('PlasmaTableActionItem', defaultProps, props);\n\n if (primary) {\n return (\n <Button.Quaternary\n component={component}\n ref={ref}\n {...others}\n {...getStyles('actionItemRoot', {className, style, classNames, styles})}\n >\n {children}\n </Button.Quaternary>\n );\n }\n\n return (\n <Menu.Item\n component={component}\n ref={ref}\n {...others}\n {...getStyles('actionItemRoot', {className, style, classNames, styles})}\n >\n {children}\n </Menu.Item>\n );\n },\n);\n"],"names":["TableActionItem","defaultProps","polymorphicFactory","props","ref","getStyles","useTableContext","primary","useTableActionContext","useProps","classNames","className","style","styles","vars","_vars","children","component","others","Button","Quaternary","Menu","Item"],"mappings":";;;;+BAiCaA;;;eAAAA;;;;;;;oBAjC0E;sBAEhD;4BACT;kCACM;oBACG;AA0BvC,IAAMC,eAA8C,CAAC;AAE9C,IAAMD,kBAAkBE,IAAAA,wBAAkB,EAC7C,SAACC,OAAiDC;IAC9C,IAAM,AAACC,YAAaC,IAAAA,6BAAe,IAA5BD;IACP,IAAM,AAACE,UAAWC,IAAAA,yCAAqB,IAAhCD;IACP,IASIE,YAAAA,IAAAA,cAAQ,EAAC,yBAAyBR,cAAcE,QARhDO,aAQAD,UARAC,YACAC,YAOAF,UAPAE,WACAC,QAMAH,UANAG,OACAC,SAKAJ,UALAI,QACAC,AAAMC,QAINN,UAJAK,MACAE,WAGAP,UAHAO,UACAC,YAEAR,UAFAQ,WACGC,sCACHT;;;;;;;;;IAEJ,IAAIF,SAAS;QACT,qBACI,qBAACY,cAAM,CAACC,UAAU;YACdH,WAAWA;YACXb,KAAKA;WACDc,QACAb,UAAU,kBAAkB;YAACM,WAAAA;YAAWC,OAAAA;YAAOF,YAAAA;YAAYG,QAAAA;QAAM;sBAEpEG;;IAGb;IAEA,qBACI,qBAACK,UAAI,CAACC,IAAI;QACNL,WAAWA;QACXb,KAAKA;OACDc,QACAb,UAAU,kBAAkB;QAACM,WAAAA;QAAWC,OAAAA;QAAOF,YAAAA;QAAYG,QAAAA;IAAM;kBAEpEG;;AAGb"}
@@ -29,7 +29,7 @@ var defaultProps = {
29
29
  height: 16
30
30
  })
31
31
  };
32
- var TableActionsList = function(props) {
32
+ var TableActionsList = function TableActionsList(props) {
33
33
  var getStyles = (0, _TableContext.useTableContext)().getStyles;
34
34
  var _useProps = (0, _core.useProps)('PlasmaTableActionsListColumn', defaultProps, props), actions = _useProps.actions, icon = _useProps.icon, label = _useProps.label, primaryGroupLabel = _useProps.primaryGroupLabel, classNames = _useProps.classNames, styles = _useProps.styles, _vars = _useProps.vars, variant = _useProps.variant, others = _object_without_properties._(_useProps, [
35
35
  "actions",
@@ -42,14 +42,14 @@ var TableActionsList = function(props) {
42
42
  "variant"
43
43
  ]);
44
44
  var _useState = _sliced_to_array._((0, _react.useState)(false), 2), opened = _useState[0], setOpened = _useState[1];
45
- var onClick = function(e) {
45
+ var onClick = function onClick(e) {
46
46
  e.preventDefault();
47
47
  e.stopPropagation();
48
48
  setOpened(function(prevState) {
49
49
  return !prevState;
50
50
  });
51
51
  };
52
- var onChange = function(newOpened) {
52
+ var onChange = function onChange(newOpened) {
53
53
  if (!newOpened) {
54
54
  setOpened(false);
55
55
  }
@@ -181,7 +181,7 @@ var TableActionsList = function(props) {
181
181
  ]
182
182
  });
183
183
  };
184
- var ActionsGroupsMenuItems = function(param) {
184
+ var ActionsGroupsMenuItems = function ActionsGroupsMenuItems(param) {
185
185
  var styles = param.styles, classNames = param.classNames, actionGroups = param.actionGroups;
186
186
  var getStyles = (0, _TableContext.useTableContext)().getStyles;
187
187
  return actionGroups.map(function(param, index) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Table/table-actions/TableActionsList.tsx"],"sourcesContent":["import {MoreSize16Px} from '@coveord/plasma-react-icons';\nimport {\n Box,\n CompoundStylesApiProps,\n CSSProperties,\n ExtendComponent,\n Factory,\n Menu,\n MenuProps,\n Tooltip,\n useProps,\n} from '@mantine/core';\nimport {MouseEventHandler, ReactNode, useState} from 'react';\nimport {ActionIcon} from '../../ActionIcon/ActionIcon.js';\nimport {Button} from '../../Button/Button.js';\nimport {InlineConfirm} from '../../InlineConfirm/InlineConfirm.js';\nimport {TableAction} from '../Table.types.js';\nimport {useTableContext} from '../TableContext.js';\nimport {TableActionProvider} from './TableActionContext.js';\n\nexport type TableActionsListStylesNames =\n | 'actionsTarget'\n | 'actionsDropdown'\n | 'actionsTooltip'\n | 'actionsGroup'\n | 'actionsGroupLabel'\n | 'actionsGroupDivider'\n | 'actionsGroupItems';\n\nexport interface TableActionsListProps\n extends Omit<MenuProps, 'classNames' | 'styles' | 'vars' | 'variant'>,\n CompoundStylesApiProps<TableActionsListFactory> {\n actions: TableAction[];\n /**\n * Label for the more menu\n * @default 'More' when variant is 'split', 'Actions' when variant is 'combined'\n */\n label?: string;\n /**\n * Label for the primary actions group when variant is 'combined'\n * @default ''\n */\n primaryGroupLabel?: string;\n icon?: ReactNode;\n}\n\ntype TableActionsListFactory = Factory<{\n props: TableActionsListProps;\n ref: HTMLDivElement;\n stylesNames: TableActionsListStylesNames;\n compound: true;\n variant: 'split' | 'combined';\n}>;\n\nconst defaultProps: Partial<TableActionsListProps> = {\n label: 'More',\n primaryGroupLabel: '',\n icon: <MoreSize16Px height={16} />,\n};\n\ninterface ActionsDict {\n $$primary: TableAction[];\n $$confirmPrompt: TableAction[];\n secondary: Record<string, Array<TableAction['component']>>;\n}\n\ninterface ActionGroup {\n name: string;\n actions: ReactNode[];\n}\n\nexport const TableActionsList = (props: TableActionsListProps) => {\n const {getStyles} = useTableContext();\n const {\n actions,\n icon,\n label,\n primaryGroupLabel,\n classNames,\n styles,\n vars: _vars,\n variant,\n ...others\n } = useProps('PlasmaTableActionsListColumn', defaultProps, props);\n const [opened, setOpened] = useState(false);\n\n const onClick: MouseEventHandler = (e) => {\n e.preventDefault();\n e.stopPropagation();\n setOpened((prevState) => !prevState);\n };\n const onChange = (newOpened: boolean) => {\n if (!newOpened) {\n setOpened(false);\n }\n };\n\n const actionsGroups: ActionsDict = actions.reduce<ActionsDict>(\n (acc, action) => {\n if (action.group === '$$primary') {\n acc.$$primary.push(action);\n } else if (action.group === '$$confirmPrompt') {\n acc.$$confirmPrompt.push(action);\n } else {\n if (acc.secondary[action.group]) {\n acc.secondary[action.group].push(action.component);\n } else {\n acc.secondary[action.group] = [action.component];\n }\n }\n return acc;\n },\n {$$primary: [], $$confirmPrompt: [], secondary: {}},\n );\n\n const primaryActions = actionsGroups.$$primary.map((action) => action.component);\n const confirmPrompts = actionsGroups.$$confirmPrompt.map((confirmPromptAction) => confirmPromptAction.component);\n const secondaryActionGroups = Object.entries(actionsGroups.secondary).map(\n ([group, groupActions]): ActionGroup => ({\n name: group,\n actions: groupActions,\n }),\n );\n\n if (variant === 'split') {\n return (\n <InlineConfirm>\n {confirmPrompts}\n <TableActionProvider value={{primary: true}}>{primaryActions}</TableActionProvider>\n {secondaryActionGroups.length > 0 ? (\n <TableActionProvider value={{primary: false}}>\n <Menu withinPortal={false} {...others} keepMounted>\n <Menu.Target>\n <Button.Quaternary\n {...getStyles('actionsTarget', {styles, classNames})}\n leftSection={icon}\n >\n {label}\n </Button.Quaternary>\n </Menu.Target>\n <Menu.Dropdown {...getStyles('actionsDropdown', {styles, classNames})}>\n <ActionsGroupsMenuItems\n classNames={classNames}\n styles={styles}\n actionGroups={secondaryActionGroups}\n />\n </Menu.Dropdown>\n </Menu>\n </TableActionProvider>\n ) : null}\n </InlineConfirm>\n );\n }\n return (\n <InlineConfirm>\n {confirmPrompts}\n <TableActionProvider value={{primary: false}}>\n <Menu opened={opened} onChange={onChange} {...others} keepMounted>\n <Menu.Target>\n <Tooltip label={label} {...getStyles('actionsTooltip', {styles, classNames})}>\n <ActionIcon.Quaternary\n {...getStyles('actionsTarget', {styles, classNames})}\n onClick={onClick}\n >\n {icon}\n </ActionIcon.Quaternary>\n </Tooltip>\n </Menu.Target>\n <Menu.Dropdown {...getStyles('actionsDropdown', {styles, classNames})}>\n <ActionsGroupsMenuItems\n classNames={classNames}\n styles={styles}\n actionGroups={\n primaryActions.length > 0\n ? [{name: primaryGroupLabel, actions: primaryActions}, ...secondaryActionGroups]\n : secondaryActionGroups\n }\n />\n </Menu.Dropdown>\n </Menu>\n </TableActionProvider>\n </InlineConfirm>\n );\n};\n\ninterface ActionsGroupsMenuItemsProps {\n styles: Partial<Record<TableActionsListStylesNames, CSSProperties>>;\n classNames: Partial<Record<TableActionsListStylesNames, string>>;\n actionGroups: ActionGroup[];\n}\n\nconst ActionsGroupsMenuItems = ({styles, classNames, actionGroups}: ActionsGroupsMenuItemsProps) => {\n const {getStyles} = useTableContext();\n return actionGroups.map(({name, actions}, index) => (\n <Box key={name} {...getStyles('actionsGroup', {styles, classNames})}>\n {actionGroups.length > 1 ? (\n <Menu.Label {...getStyles('actionsGroupLabel', {styles, classNames})}>{name}</Menu.Label>\n ) : null}\n <Box {...getStyles('actionsGroupItems', {styles, classNames})}>{actions}</Box>\n {index < actionGroups.length - 1 ? (\n <Menu.Divider {...getStyles('actionsGroupDivider', {styles, classNames})} />\n ) : null}\n </Box>\n ));\n};\n\nTableActionsList.extend = (input: ExtendComponent<TableActionsListFactory>) => input;\n"],"names":["TableActionsList","defaultProps","label","primaryGroupLabel","icon","MoreSize16Px","height","props","getStyles","useTableContext","useProps","actions","classNames","styles","vars","_vars","variant","others","useState","opened","setOpened","onClick","e","preventDefault","stopPropagation","prevState","onChange","newOpened","actionsGroups","reduce","acc","action","group","$$primary","push","$$confirmPrompt","secondary","component","primaryActions","map","confirmPrompts","confirmPromptAction","secondaryActionGroups","Object","entries","groupActions","name","InlineConfirm","TableActionProvider","value","primary","length","Menu","withinPortal","keepMounted","Target","Button","Quaternary","leftSection","Dropdown","ActionsGroupsMenuItems","actionGroups","Tooltip","ActionIcon","index","Box","Label","Divider","extend","input"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/components/Table/table-actions/TableActionsList.tsx"],"sourcesContent":["import {MoreSize16Px} from '@coveord/plasma-react-icons';\nimport {\n Box,\n CompoundStylesApiProps,\n CSSProperties,\n ExtendComponent,\n Factory,\n Menu,\n MenuProps,\n Tooltip,\n useProps,\n} from '@mantine/core';\nimport {MouseEventHandler, ReactNode, useState} from 'react';\nimport {ActionIcon} from '../../ActionIcon/ActionIcon.js';\nimport {Button} from '../../Button/Button.js';\nimport {InlineConfirm} from '../../InlineConfirm/InlineConfirm.js';\nimport {TableAction} from '../Table.types.js';\nimport {useTableContext} from '../TableContext.js';\nimport {TableActionProvider} from './TableActionContext.js';\n\nexport type TableActionsListStylesNames =\n | 'actionsTarget'\n | 'actionsDropdown'\n | 'actionsTooltip'\n | 'actionsGroup'\n | 'actionsGroupLabel'\n | 'actionsGroupDivider'\n | 'actionsGroupItems';\n\nexport interface TableActionsListProps\n extends Omit<MenuProps, 'classNames' | 'styles' | 'vars' | 'variant'>,\n CompoundStylesApiProps<TableActionsListFactory> {\n actions: TableAction[];\n /**\n * Label for the more menu\n * @default 'More' when variant is 'split', 'Actions' when variant is 'combined'\n */\n label?: string;\n /**\n * Label for the primary actions group when variant is 'combined'\n * @default ''\n */\n primaryGroupLabel?: string;\n icon?: ReactNode;\n}\n\ntype TableActionsListFactory = Factory<{\n props: TableActionsListProps;\n ref: HTMLDivElement;\n stylesNames: TableActionsListStylesNames;\n compound: true;\n variant: 'split' | 'combined';\n}>;\n\nconst defaultProps: Partial<TableActionsListProps> = {\n label: 'More',\n primaryGroupLabel: '',\n icon: <MoreSize16Px height={16} />,\n};\n\ninterface ActionsDict {\n $$primary: TableAction[];\n $$confirmPrompt: TableAction[];\n secondary: Record<string, Array<TableAction['component']>>;\n}\n\ninterface ActionGroup {\n name: string;\n actions: ReactNode[];\n}\n\nexport const TableActionsList = (props: TableActionsListProps) => {\n const {getStyles} = useTableContext();\n const {\n actions,\n icon,\n label,\n primaryGroupLabel,\n classNames,\n styles,\n vars: _vars,\n variant,\n ...others\n } = useProps('PlasmaTableActionsListColumn', defaultProps, props);\n const [opened, setOpened] = useState(false);\n\n const onClick: MouseEventHandler = (e) => {\n e.preventDefault();\n e.stopPropagation();\n setOpened((prevState) => !prevState);\n };\n const onChange = (newOpened: boolean) => {\n if (!newOpened) {\n setOpened(false);\n }\n };\n\n const actionsGroups: ActionsDict = actions.reduce<ActionsDict>(\n (acc, action) => {\n if (action.group === '$$primary') {\n acc.$$primary.push(action);\n } else if (action.group === '$$confirmPrompt') {\n acc.$$confirmPrompt.push(action);\n } else {\n if (acc.secondary[action.group]) {\n acc.secondary[action.group].push(action.component);\n } else {\n acc.secondary[action.group] = [action.component];\n }\n }\n return acc;\n },\n {$$primary: [], $$confirmPrompt: [], secondary: {}},\n );\n\n const primaryActions = actionsGroups.$$primary.map((action) => action.component);\n const confirmPrompts = actionsGroups.$$confirmPrompt.map((confirmPromptAction) => confirmPromptAction.component);\n const secondaryActionGroups = Object.entries(actionsGroups.secondary).map(\n ([group, groupActions]): ActionGroup => ({\n name: group,\n actions: groupActions,\n }),\n );\n\n if (variant === 'split') {\n return (\n <InlineConfirm>\n {confirmPrompts}\n <TableActionProvider value={{primary: true}}>{primaryActions}</TableActionProvider>\n {secondaryActionGroups.length > 0 ? (\n <TableActionProvider value={{primary: false}}>\n <Menu withinPortal={false} {...others} keepMounted>\n <Menu.Target>\n <Button.Quaternary\n {...getStyles('actionsTarget', {styles, classNames})}\n leftSection={icon}\n >\n {label}\n </Button.Quaternary>\n </Menu.Target>\n <Menu.Dropdown {...getStyles('actionsDropdown', {styles, classNames})}>\n <ActionsGroupsMenuItems\n classNames={classNames}\n styles={styles}\n actionGroups={secondaryActionGroups}\n />\n </Menu.Dropdown>\n </Menu>\n </TableActionProvider>\n ) : null}\n </InlineConfirm>\n );\n }\n return (\n <InlineConfirm>\n {confirmPrompts}\n <TableActionProvider value={{primary: false}}>\n <Menu opened={opened} onChange={onChange} {...others} keepMounted>\n <Menu.Target>\n <Tooltip label={label} {...getStyles('actionsTooltip', {styles, classNames})}>\n <ActionIcon.Quaternary\n {...getStyles('actionsTarget', {styles, classNames})}\n onClick={onClick}\n >\n {icon}\n </ActionIcon.Quaternary>\n </Tooltip>\n </Menu.Target>\n <Menu.Dropdown {...getStyles('actionsDropdown', {styles, classNames})}>\n <ActionsGroupsMenuItems\n classNames={classNames}\n styles={styles}\n actionGroups={\n primaryActions.length > 0\n ? [{name: primaryGroupLabel, actions: primaryActions}, ...secondaryActionGroups]\n : secondaryActionGroups\n }\n />\n </Menu.Dropdown>\n </Menu>\n </TableActionProvider>\n </InlineConfirm>\n );\n};\n\ninterface ActionsGroupsMenuItemsProps {\n styles: Partial<Record<TableActionsListStylesNames, CSSProperties>>;\n classNames: Partial<Record<TableActionsListStylesNames, string>>;\n actionGroups: ActionGroup[];\n}\n\nconst ActionsGroupsMenuItems = ({styles, classNames, actionGroups}: ActionsGroupsMenuItemsProps) => {\n const {getStyles} = useTableContext();\n return actionGroups.map(({name, actions}, index) => (\n <Box key={name} {...getStyles('actionsGroup', {styles, classNames})}>\n {actionGroups.length > 1 ? (\n <Menu.Label {...getStyles('actionsGroupLabel', {styles, classNames})}>{name}</Menu.Label>\n ) : null}\n <Box {...getStyles('actionsGroupItems', {styles, classNames})}>{actions}</Box>\n {index < actionGroups.length - 1 ? (\n <Menu.Divider {...getStyles('actionsGroupDivider', {styles, classNames})} />\n ) : null}\n </Box>\n ));\n};\n\nTableActionsList.extend = (input: ExtendComponent<TableActionsListFactory>) => input;\n"],"names":["TableActionsList","defaultProps","label","primaryGroupLabel","icon","MoreSize16Px","height","props","getStyles","useTableContext","useProps","actions","classNames","styles","vars","_vars","variant","others","useState","opened","setOpened","onClick","e","preventDefault","stopPropagation","prevState","onChange","newOpened","actionsGroups","reduce","acc","action","group","$$primary","push","$$confirmPrompt","secondary","component","primaryActions","map","confirmPrompts","confirmPromptAction","secondaryActionGroups","Object","entries","groupActions","name","InlineConfirm","TableActionProvider","value","primary","length","Menu","withinPortal","keepMounted","Target","Button","Quaternary","leftSection","Dropdown","ActionsGroupsMenuItems","actionGroups","Tooltip","ActionIcon","index","Box","Label","Divider","extend","input"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Table/table-actions/TableHeaderActions.tsx"],"sourcesContent":["import {Factory, factory, Grid, GridColProps, Group, useProps} from '@mantine/core';\nimport {ReactElement, useMemo} from 'react';\n\nimport {TableComponentsOrder} from '../Table.js';\nimport {useTableContext} from '../TableContext.js';\nimport {TableActionsList} from './TableActionsList.js';\n\nexport type TableHeaderActionsStylesNames = 'headerActionsRoot' | 'headerActionsGroup';\n\nexport interface TableHeaderActionsProps extends Omit<GridColProps, 'children'> {}\n\ntype TableHeaderActionsFactory = Factory<{\n props: TableHeaderActionsProps;\n ref: HTMLDivElement;\n stylesNames: TableHeaderActionsStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableHeaderActionsProps> = {};\n\nexport const TableHeaderActions = factory<TableHeaderActionsFactory>(\n (props: TableHeaderActionsProps, ref): ReactElement => {\n const {store, getStyles, getRowActions} = useTableContext();\n const {style, className, classNames, styles, ...others} = useProps(\n 'PlasmaTableHeaderActions',\n defaultProps,\n props,\n );\n\n const actions = useMemo(() => {\n const selectedRows = store.getSelectedRows();\n if (selectedRows.length === 0) {\n return [];\n }\n return getRowActions(selectedRows);\n }, [store.state.rowSelection]);\n\n if (actions.length === 0) {\n return null;\n }\n\n const stylesApiProps = {classNames, styles};\n\n return (\n <Grid.Col\n span=\"content\"\n order={TableComponentsOrder.Actions}\n ref={ref}\n {...getStyles('headerActionsRoot', {className, style, ...stylesApiProps})}\n {...others}\n >\n <Group gap=\"xs\" {...getStyles('headerActionsGroup', stylesApiProps)}>\n <TableActionsList actions={actions} variant=\"split\" />\n </Group>\n </Grid.Col>\n );\n },\n);\n"],"names":["TableHeaderActions","defaultProps","factory","props","ref","useTableContext","store","getStyles","getRowActions","useProps","style","className","classNames","styles","others","actions","useMemo","selectedRows","getSelectedRows","length","state","rowSelection","stylesApiProps","Grid","Col","span","order","TableComponentsOrder","Actions","Group","gap","TableActionsList","variant"],"mappings":";;;;+BAoBaA;;;eAAAA;;;;;;;oBApBuD;qBAChC;qBAED;4BACL;gCACC;AAa/B,IAAMC,eAAiD,CAAC;AAEjD,IAAMD,qBAAqBE,IAAAA,aAAO,EACrC,SAACC,OAAgCC;IAC7B,IAA0CC,mBAAAA,IAAAA,6BAAe,KAAlDC,QAAmCD,iBAAnCC,OAAOC,YAA4BF,iBAA5BE,WAAWC,gBAAiBH,iBAAjBG;IACzB,IAA0DC,YAAAA,IAAAA,cAAQ,EAC9D,4BACAR,cACAE,QAHGO,QAAmDD,UAAnDC,OAAOC,YAA4CF,UAA5CE,WAAWC,aAAiCH,UAAjCG,YAAYC,SAAqBJ,UAArBI,QAAWC,sCAAUL;QAAnDC;QAAOC;QAAWC;QAAYC;;IAMrC,IAAME,UAAUC,IAAAA,cAAO,EAAC;QACpB,IAAMC,eAAeX,MAAMY,eAAe;QAC1C,IAAID,aAAaE,MAAM,KAAK,GAAG;YAC3B,OAAO,EAAE;QACb;QACA,OAAOX,cAAcS;IACzB,GAAG;QAACX,MAAMc,KAAK,CAACC,YAAY;KAAC;IAE7B,IAAIN,QAAQI,MAAM,KAAK,GAAG;QACtB,OAAO;IACX;IAEA,IAAMG,iBAAiB;QAACV,YAAAA;QAAYC,QAAAA;IAAM;IAE1C,qBACI,qBAACU,UAAI,CAACC,GAAG;QACLC,MAAK;QACLC,OAAOC,2BAAoB,CAACC,OAAO;QACnCxB,KAAKA;OACDG,UAAU,qBAAqB;QAACI,WAAAA;QAAWD,OAAAA;OAAUY,kBACrDR;kBAEJ,cAAA,qBAACe,WAAK;YAACC,KAAI;WAASvB,UAAU,sBAAsBe;sBAChD,cAAA,qBAACS,kCAAgB;gBAAChB,SAASA;gBAASiB,SAAQ;;;;AAI5D"}
1
+ {"version":3,"sources":["../../../../../src/components/Table/table-actions/TableHeaderActions.tsx"],"sourcesContent":["import {Factory, factory, Grid, GridColProps, Group, useProps} from '@mantine/core';\nimport {ReactElement, useMemo} from 'react';\n\nimport {TableComponentsOrder} from '../Table.js';\nimport {useTableContext} from '../TableContext.js';\nimport {TableActionsList} from './TableActionsList.js';\n\nexport type TableHeaderActionsStylesNames = 'headerActionsRoot' | 'headerActionsGroup';\n\nexport interface TableHeaderActionsProps extends Omit<GridColProps, 'children'> {}\n\ntype TableHeaderActionsFactory = Factory<{\n props: TableHeaderActionsProps;\n ref: HTMLDivElement;\n stylesNames: TableHeaderActionsStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableHeaderActionsProps> = {};\n\nexport const TableHeaderActions = factory<TableHeaderActionsFactory>(\n (props: TableHeaderActionsProps, ref): ReactElement => {\n const {store, getStyles, getRowActions} = useTableContext();\n const {style, className, classNames, styles, ...others} = useProps(\n 'PlasmaTableHeaderActions',\n defaultProps,\n props,\n );\n\n const actions = useMemo(() => {\n const selectedRows = store.getSelectedRows();\n if (selectedRows.length === 0) {\n return [];\n }\n return getRowActions(selectedRows);\n }, [store.state.rowSelection]);\n\n if (actions.length === 0) {\n return null;\n }\n\n const stylesApiProps = {classNames, styles};\n\n return (\n <Grid.Col\n span=\"content\"\n order={TableComponentsOrder.Actions}\n ref={ref}\n {...getStyles('headerActionsRoot', {className, style, ...stylesApiProps})}\n {...others}\n >\n <Group gap=\"xs\" {...getStyles('headerActionsGroup', stylesApiProps)}>\n <TableActionsList actions={actions} variant=\"split\" />\n </Group>\n </Grid.Col>\n );\n },\n);\n"],"names":["TableHeaderActions","defaultProps","factory","props","ref","useTableContext","store","getStyles","getRowActions","useProps","style","className","classNames","styles","others","actions","useMemo","selectedRows","getSelectedRows","length","state","rowSelection","stylesApiProps","Grid","Col","span","order","TableComponentsOrder","Actions","Group","gap","TableActionsList","variant"],"mappings":";;;;+BAoBaA;;;eAAAA;;;;;;;oBApBuD;qBAChC;qBAED;4BACL;gCACC;AAa/B,IAAMC,eAAiD,CAAC;AAEjD,IAAMD,qBAAqBE,IAAAA,aAAO,EACrC,SAACC,OAAgCC;IAC7B,IAA0CC,mBAAAA,IAAAA,6BAAe,KAAlDC,QAAmCD,iBAAnCC,OAAOC,YAA4BF,iBAA5BE,WAAWC,gBAAiBH,iBAAjBG;IACzB,IAA0DC,YAAAA,IAAAA,cAAQ,EAC9D,4BACAR,cACAE,QAHGO,QAAmDD,UAAnDC,OAAOC,YAA4CF,UAA5CE,WAAWC,aAAiCH,UAAjCG,YAAYC,SAAqBJ,UAArBI,QAAWC,sCAAUL;;;;;;IAM1D,IAAMM,UAAUC,IAAAA,cAAO,EAAC;QACpB,IAAMC,eAAeX,MAAMY,eAAe;QAC1C,IAAID,aAAaE,MAAM,KAAK,GAAG;YAC3B,OAAO,EAAE;QACb;QACA,OAAOX,cAAcS;IACzB,GAAG;QAACX,MAAMc,KAAK,CAACC,YAAY;KAAC;IAE7B,IAAIN,QAAQI,MAAM,KAAK,GAAG;QACtB,OAAO;IACX;IAEA,IAAMG,iBAAiB;QAACV,YAAAA;QAAYC,QAAAA;IAAM;IAE1C,qBACI,qBAACU,UAAI,CAACC,GAAG;QACLC,MAAK;QACLC,OAAOC,2BAAoB,CAACC,OAAO;QACnCxB,KAAKA;OACDG,UAAU,qBAAqB;QAACI,WAAAA;QAAWD,OAAAA;OAAUY,kBACrDR;kBAEJ,cAAA,qBAACe,WAAK;YAACC,KAAI;WAASvB,UAAU,sBAAsBe;sBAChD,cAAA,qBAACS,kCAAgB;gBAAChB,SAASA;gBAASiB,SAAQ;;;;AAI5D"}
@@ -23,7 +23,7 @@ var TableActionsColumn = {
23
23
  meta: {
24
24
  controlColumn: true
25
25
  },
26
- header: function(param) {
26
+ header: function header(param) {
27
27
  var table = param.table;
28
28
  var _table_options_meta;
29
29
  var rowConfigurable = (_table_options_meta = table.options.meta) === null || _table_options_meta === void 0 ? void 0 : _table_options_meta.rowConfigurable;
@@ -37,7 +37,7 @@ var TableActionsColumn = {
37
37
  });
38
38
  },
39
39
  size: 84,
40
- cell: function(info) {
40
+ cell: function cell(info) {
41
41
  return /*#__PURE__*/ (0, _jsxruntime.jsx)(ActionsMenu, {
42
42
  info: info
43
43
  });
@@ -49,7 +49,7 @@ var defaultProps = {
49
49
  height: 16
50
50
  })
51
51
  };
52
- var ActionsMenu = function(props) {
52
+ var ActionsMenu = function ActionsMenu(props) {
53
53
  var getRowActions = (0, _TableContext.useTableContext)().getRowActions;
54
54
  var _useProps = (0, _core.useProps)('PlasmaTableActionsColumn', defaultProps, props), info = _useProps.info, others = _object_without_properties._(_useProps, [
55
55
  "info"