@coveord/plasma-mantine 52.26.2 → 52.26.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +3 -3
- package/.turbo/turbo-test.log +33 -127
- package/dist/.tsbuildinfo +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmButton.d.ts.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmButton.js +2 -2
- package/dist/cjs/components/inline-confirm/InlineConfirmButton.js.map +1 -1
- package/dist/esm/components/action-icon/ActionIcon.js +29 -80
- package/dist/esm/components/action-icon/ActionIcon.js.map +1 -1
- package/dist/esm/components/action-icon/index.js +1 -1
- package/dist/esm/components/blank-slate/BlankSlate.js +3 -6
- package/dist/esm/components/blank-slate/BlankSlate.js.map +1 -1
- package/dist/esm/components/blank-slate/index.js +1 -1
- package/dist/esm/components/browser-preview/BrowserPreview.js +16 -28
- package/dist/esm/components/browser-preview/BrowserPreview.js.map +1 -1
- package/dist/esm/components/browser-preview/BrowserPreview.styles.js +6 -8
- package/dist/esm/components/browser-preview/BrowserPreview.styles.js.map +1 -1
- package/dist/esm/components/browser-preview/index.js +1 -1
- package/dist/esm/components/button/Button.js +29 -80
- package/dist/esm/components/button/Button.js.map +1 -1
- package/dist/esm/components/button/ButtonWithDisabledTooltip.js +16 -28
- package/dist/esm/components/button/ButtonWithDisabledTooltip.js.map +1 -1
- package/dist/esm/components/button/index.js +1 -1
- package/dist/esm/components/code-editor/CodeEditor.js +76 -144
- package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/esm/components/code-editor/index.js +1 -1
- package/dist/esm/components/code-editor/languages/xml.js +18 -32
- package/dist/esm/components/code-editor/languages/xml.js.map +1 -1
- package/dist/esm/components/code-editor/search/Search.js +6 -13
- package/dist/esm/components/code-editor/search/Search.js.map +1 -1
- package/dist/esm/components/code-editor/search/index.js +1 -1
- package/dist/esm/components/collection/Collection.js +57 -110
- package/dist/esm/components/collection/Collection.js.map +1 -1
- package/dist/esm/components/collection/Collection.styles.js +7 -9
- package/dist/esm/components/collection/Collection.styles.js.map +1 -1
- package/dist/esm/components/collection/CollectionItem.js +47 -54
- package/dist/esm/components/collection/CollectionItem.js.map +1 -1
- package/dist/esm/components/collection/index.js +1 -1
- package/dist/esm/components/copyToClipboard/CopyToClipboard.js +19 -29
- package/dist/esm/components/copyToClipboard/CopyToClipboard.js.map +1 -1
- package/dist/esm/components/copyToClipboard/index.js +1 -1
- package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js +29 -32
- package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
- package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js +22 -29
- package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
- package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js +19 -30
- package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
- package/dist/esm/components/date-range-picker/EditableDateRangePicker.js +21 -22
- package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
- package/dist/esm/components/date-range-picker/index.js +3 -3
- package/dist/esm/components/header/Header.js +28 -48
- package/dist/esm/components/header/Header.js.map +1 -1
- package/dist/esm/components/header/Header.styles.js +7 -10
- package/dist/esm/components/header/Header.styles.js.map +1 -1
- package/dist/esm/components/header/HeaderActions/HeaderActions.js +16 -25
- package/dist/esm/components/header/HeaderActions/HeaderActions.js.map +1 -1
- package/dist/esm/components/header/HeaderActions/HeaderActions.styles.js +3 -7
- package/dist/esm/components/header/HeaderActions/HeaderActions.styles.js.map +1 -1
- package/dist/esm/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.js +13 -22
- package/dist/esm/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
- package/dist/esm/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.styles.js +3 -7
- package/dist/esm/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.styles.js.map +1 -1
- package/dist/esm/components/header/HeaderDocAnchor/HeaderDocAnchor.js +17 -28
- package/dist/esm/components/header/HeaderDocAnchor/HeaderDocAnchor.js.map +1 -1
- package/dist/esm/components/header/HeaderDocAnchor/HeaderDocAnchor.styles.js +4 -8
- package/dist/esm/components/header/HeaderDocAnchor/HeaderDocAnchor.styles.js.map +1 -1
- package/dist/esm/components/header/index.js +1 -1
- package/dist/esm/components/index.js +15 -15
- package/dist/esm/components/inline-confirm/InlineConfirm.js +14 -20
- package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmButton.d.ts.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmButton.js +11 -17
- package/dist/esm/components/inline-confirm/InlineConfirmButton.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmContext.js +2 -2
- package/dist/esm/components/inline-confirm/InlineConfirmContext.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmMenuItem.js +11 -17
- package/dist/esm/components/inline-confirm/InlineConfirmMenuItem.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +8 -9
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
- package/dist/esm/components/inline-confirm/index.js +3 -3
- package/dist/esm/components/inline-confirm/useInlineConfirm.js +5 -5
- package/dist/esm/components/inline-confirm/useInlineConfirm.js.map +1 -1
- package/dist/esm/components/menu/Menu.js +13 -21
- package/dist/esm/components/menu/Menu.js.map +1 -1
- package/dist/esm/components/menu/index.js +1 -1
- package/dist/esm/components/modal-wizard/ModalWizard.js +57 -108
- package/dist/esm/components/modal-wizard/ModalWizard.js.map +1 -1
- package/dist/esm/components/modal-wizard/ModalWizardStep.js +1 -4
- package/dist/esm/components/modal-wizard/ModalWizardStep.js.map +1 -1
- package/dist/esm/components/modal-wizard/index.js +1 -1
- package/dist/esm/components/prompt/Prompt.js +29 -41
- package/dist/esm/components/prompt/Prompt.js.map +1 -1
- package/dist/esm/components/prompt/PromptFooter.js +4 -11
- package/dist/esm/components/prompt/PromptFooter.js.map +1 -1
- package/dist/esm/components/prompt/index.js +1 -1
- package/dist/esm/components/sticky-footer/StickyFooter.js +21 -35
- package/dist/esm/components/sticky-footer/StickyFooter.js.map +1 -1
- package/dist/esm/components/sticky-footer/index.js +1 -1
- package/dist/esm/components/table/Table.js +94 -123
- package/dist/esm/components/table/Table.js.map +1 -1
- package/dist/esm/components/table/Table.styles.js +11 -13
- package/dist/esm/components/table/Table.styles.js.map +1 -1
- package/dist/esm/components/table/TableContext.js +5 -5
- package/dist/esm/components/table/TableContext.js.map +1 -1
- package/dist/esm/components/table/index.js +3 -3
- package/dist/esm/components/table/layouts/RowLayout.js +59 -79
- package/dist/esm/components/table/layouts/RowLayout.js.map +1 -1
- package/dist/esm/components/table/layouts/RowLayout.styles.js +27 -28
- package/dist/esm/components/table/layouts/RowLayout.styles.js.map +1 -1
- package/dist/esm/components/table/layouts/TableLayoutControl.js +10 -13
- package/dist/esm/components/table/layouts/TableLayoutControl.js.map +1 -1
- package/dist/esm/components/table/layouts/TableLayouts.js +2 -2
- package/dist/esm/components/table/layouts/TableLayouts.js.map +1 -1
- package/dist/esm/components/table/table-actions/TableActions.js +17 -26
- package/dist/esm/components/table/table-actions/TableActions.js.map +1 -1
- package/dist/esm/components/table/table-actions/TableActions.styles.js +5 -7
- package/dist/esm/components/table/table-actions/TableActions.styles.js.map +1 -1
- package/dist/esm/components/table/table-column/TableCollapsibleColumn.js +19 -23
- package/dist/esm/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
- package/dist/esm/components/table/table-column/TableSelectableColumn.js +9 -13
- package/dist/esm/components/table/table-column/TableSelectableColumn.js.map +1 -1
- package/dist/esm/components/table/table-consumer/TableConsumer.js +1 -4
- package/dist/esm/components/table/table-consumer/TableConsumer.js.map +1 -1
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js +28 -43
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.styles.js +3 -5
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.styles.js.map +1 -1
- package/dist/esm/components/table/table-filter/TableFilter.js +30 -40
- package/dist/esm/components/table/table-filter/TableFilter.js.map +1 -1
- package/dist/esm/components/table/table-filter/TableFilter.styles.js +4 -6
- package/dist/esm/components/table/table-filter/TableFilter.styles.js.map +1 -1
- package/dist/esm/components/table/table-footer/TableFooter.js +5 -13
- package/dist/esm/components/table/table-footer/TableFooter.js.map +1 -1
- package/dist/esm/components/table/table-header/TableHeader.js +20 -29
- package/dist/esm/components/table/table-header/TableHeader.js.map +1 -1
- package/dist/esm/components/table/table-header/TableHeader.styles.js +8 -10
- package/dist/esm/components/table/table-header/TableHeader.styles.js.map +1 -1
- package/dist/esm/components/table/table-header/Th.js +27 -35
- package/dist/esm/components/table/table-header/Th.js.map +1 -1
- package/dist/esm/components/table/table-header/Th.styles.js +13 -16
- package/dist/esm/components/table/table-header/Th.styles.js.map +1 -1
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.js +24 -35
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.styles.js +4 -6
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.styles.js.map +1 -1
- package/dist/esm/components/table/table-loading/TableLoading.js +4 -7
- package/dist/esm/components/table/table-loading/TableLoading.js.map +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.js +21 -25
- package/dist/esm/components/table/table-pagination/TablePagination.js.map +1 -1
- package/dist/esm/components/table/table-per-page/TablePerPage.js +15 -24
- package/dist/esm/components/table/table-per-page/TablePerPage.js.map +1 -1
- package/dist/esm/components/table/table-predicate/TablePredicate.js +25 -35
- package/dist/esm/components/table/table-predicate/TablePredicate.js.map +1 -1
- package/dist/esm/components/table/table-predicate/TablePredicate.styles.js +3 -5
- package/dist/esm/components/table/table-predicate/TablePredicate.styles.js.map +1 -1
- package/dist/esm/form/FormProvider.js +9 -10
- package/dist/esm/form/FormProvider.js.map +1 -1
- package/dist/esm/form/index.js +2 -2
- package/dist/esm/form/useForm.js +18 -25
- package/dist/esm/form/useForm.js.map +1 -1
- package/dist/esm/hooks/index.js +2 -2
- package/dist/esm/hooks/useControlledList.js +24 -30
- package/dist/esm/hooks/useControlledList.js.map +1 -1
- package/dist/esm/hooks/useParentHeight.js +10 -11
- package/dist/esm/hooks/useParentHeight.js.map +1 -1
- package/dist/esm/hooks/useRowSelection.js +33 -44
- package/dist/esm/hooks/useRowSelection.js.map +1 -1
- package/dist/esm/index.js +11 -11
- package/dist/esm/theme/PlasmaColors.js +13 -15
- package/dist/esm/theme/PlasmaColors.js.map +1 -1
- package/dist/esm/theme/Plasmantine.js +3 -6
- package/dist/esm/theme/Plasmantine.js.map +1 -1
- package/dist/esm/theme/Theme.js +142 -171
- package/dist/esm/theme/Theme.js.map +1 -1
- package/dist/esm/theme/index.js +1 -1
- package/dist/esm/utils/createPolymorphicComponent.js +2 -2
- package/dist/esm/utils/createPolymorphicComponent.js.map +1 -1
- package/dist/esm/utils/index.js +2 -2
- package/dist/esm/utils/overrideComponent.js +2 -8
- package/dist/esm/utils/overrideComponent.js.map +1 -1
- package/package.json +4 -4
- package/src/components/inline-confirm/InlineConfirmButton.tsx +1 -2
- package/src/components/inline-confirm/__tests__/InlineConfirm.spec.tsx +20 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/prompt/Prompt.tsx"],"sourcesContent":["import {color} from '@coveord/plasma-tokens';\nimport {createStyles, Modal, ModalProps} from '@mantine/core';\nimport {Children, ReactElement, ReactNode} from 'react';\nimport {PromptFooter} from './PromptFooter';\n\nconst useStyles = createStyles((theme) => ({\n body: {\n padding: 0,\n },\n modalType: {overflow: 'hidden', width: 550},\n innerBody: {\n padding: `${theme.spacing.md} ${theme.spacing.xl} ${theme.spacing.lg}`,\n },\n header: {\n padding: `${theme.spacing.md} ${theme.spacing.xl}`,\n width: '100%',\n borderBottom: `1px solid ${theme.colors.gray[3]}`,\n fontSize: theme.headings.sizes.h3.fontSize,\n lineHeight: theme.headings.sizes.h3.lineHeight,\n overflowWrap: 'anywhere',\n },\n success: {backgroundColor: theme.colors.lime[6], color: color.primary.pureWhite},\n warning: {backgroundColor: theme.colors.yellow[5], color: color.primary.pureWhite},\n critical: {\n backgroundColor: theme.colors.red[6],\n color: color.primary.pureWhite,\n },\n info: {backgroundColor: theme.colors.navy[5], color: color.primary.pureWhite},\n whiteClose: {color: color.primary.pureWhite, '&:hover': {backgroundColor: 'transparent'}},\n title: {\n color: color.primary.pureWhite,\n },\n}));\n\nexport interface PromptProps extends ModalProps {\n /**\n * Controls prompt appearance\n *\n * @default \"info\"\n */\n variant?: 'success' | 'warning' | 'critical' | 'info';\n children: ReactNode;\n}\ninterface PromptType {\n (props: PromptProps): ReactElement;\n Footer: typeof PromptFooter;\n}\n\nexport const Prompt: PromptType = ({children, variant = 'info', ...otherProps}) => {\n const {classNames: classesProps, ...otherPropsWithoutClasses} = otherProps;\n const {classes, cx} = useStyles();\n const convertedChildren = Children.toArray(children) as ReactElement[];\n\n const otherChildren = convertedChildren.filter((child) => child.type !== PromptFooter);\n const footer = convertedChildren.find((child) => child.type === PromptFooter);\n\n const classNames = {\n header: cx(classes.header, classes[variant]),\n close: classes.whiteClose,\n body: classes.body,\n modal: classes.modalType,\n title: classes.title,\n };\n\n return (\n <Modal\n variant=\"prompt\"\n padding={0}\n classNames={{...classNames, ...classesProps}}\n size={'sm'}\n {...otherPropsWithoutClasses}\n >\n <div className={classes.innerBody}>{otherChildren}</div>\n {footer}\n </Modal>\n );\n};\n\nPrompt.Footer = PromptFooter;\n"],"names":["color","createStyles","Modal","Children","PromptFooter","useStyles","theme","body","padding","modalType","overflow","width","innerBody","spacing","md","xl","lg","header","borderBottom","colors","gray","fontSize","headings","sizes","h3","lineHeight","overflowWrap","success","backgroundColor","lime","primary","pureWhite","warning","yellow","critical","red","info","navy","whiteClose","title","Prompt","children","variant","otherProps","classNames","classesProps","otherPropsWithoutClasses","classes","cx","convertedChildren","toArray","otherChildren","filter","child","type","footer","find","close","modal","size","div","className","Footer"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/prompt/Prompt.tsx"],"sourcesContent":["import {color} from '@coveord/plasma-tokens';\nimport {createStyles, Modal, ModalProps} from '@mantine/core';\nimport {Children, ReactElement, ReactNode} from 'react';\nimport {PromptFooter} from './PromptFooter';\n\nconst useStyles = createStyles((theme) => ({\n body: {\n padding: 0,\n },\n modalType: {overflow: 'hidden', width: 550},\n innerBody: {\n padding: `${theme.spacing.md} ${theme.spacing.xl} ${theme.spacing.lg}`,\n },\n header: {\n padding: `${theme.spacing.md} ${theme.spacing.xl}`,\n width: '100%',\n borderBottom: `1px solid ${theme.colors.gray[3]}`,\n fontSize: theme.headings.sizes.h3.fontSize,\n lineHeight: theme.headings.sizes.h3.lineHeight,\n overflowWrap: 'anywhere',\n },\n success: {backgroundColor: theme.colors.lime[6], color: color.primary.pureWhite},\n warning: {backgroundColor: theme.colors.yellow[5], color: color.primary.pureWhite},\n critical: {\n backgroundColor: theme.colors.red[6],\n color: color.primary.pureWhite,\n },\n info: {backgroundColor: theme.colors.navy[5], color: color.primary.pureWhite},\n whiteClose: {color: color.primary.pureWhite, '&:hover': {backgroundColor: 'transparent'}},\n title: {\n color: color.primary.pureWhite,\n },\n}));\n\nexport interface PromptProps extends ModalProps {\n /**\n * Controls prompt appearance\n *\n * @default \"info\"\n */\n variant?: 'success' | 'warning' | 'critical' | 'info';\n children: ReactNode;\n}\ninterface PromptType {\n (props: PromptProps): ReactElement;\n Footer: typeof PromptFooter;\n}\n\nexport const Prompt: PromptType = ({children, variant = 'info', ...otherProps}) => {\n const {classNames: classesProps, ...otherPropsWithoutClasses} = otherProps;\n const {classes, cx} = useStyles();\n const convertedChildren = Children.toArray(children) as ReactElement[];\n\n const otherChildren = convertedChildren.filter((child) => child.type !== PromptFooter);\n const footer = convertedChildren.find((child) => child.type === PromptFooter);\n\n const classNames = {\n header: cx(classes.header, classes[variant]),\n close: classes.whiteClose,\n body: classes.body,\n modal: classes.modalType,\n title: classes.title,\n };\n\n return (\n <Modal\n variant=\"prompt\"\n padding={0}\n classNames={{...classNames, ...classesProps}}\n size={'sm'}\n {...otherPropsWithoutClasses}\n >\n <div className={classes.innerBody}>{otherChildren}</div>\n {footer}\n </Modal>\n );\n};\n\nPrompt.Footer = PromptFooter;\n"],"names":["color","createStyles","Modal","Children","PromptFooter","useStyles","theme","body","padding","modalType","overflow","width","innerBody","spacing","md","xl","lg","header","borderBottom","colors","gray","fontSize","headings","sizes","h3","lineHeight","overflowWrap","success","backgroundColor","lime","primary","pureWhite","warning","yellow","critical","red","info","navy","whiteClose","title","Prompt","children","variant","otherProps","classNames","classesProps","otherPropsWithoutClasses","classes","cx","convertedChildren","toArray","otherChildren","filter","child","type","footer","find","close","modal","size","div","className","Footer"],"mappings":";AAAA,SAAQA,KAAK,QAAO,yBAAyB;AAC7C,SAAQC,YAAY,EAAEC,KAAK,QAAmB,gBAAgB;AAC9D,SAAQC,QAAQ,QAAgC,QAAQ;AACxD,SAAQC,YAAY,QAAO,iBAAiB;AAE5C,MAAMC,YAAYJ,aAAa,CAACK,QAAW,CAAA;QACvCC,MAAM;YACFC,SAAS;QACb;QACAC,WAAW;YAACC,UAAU;YAAUC,OAAO;QAAG;QAC1CC,WAAW;YACPJ,SAAS,CAAC,EAAEF,MAAMO,OAAO,CAACC,EAAE,CAAC,CAAC,EAAER,MAAMO,OAAO,CAACE,EAAE,CAAC,CAAC,EAAET,MAAMO,OAAO,CAACG,EAAE,CAAC,CAAC;QAC1E;QACAC,QAAQ;YACJT,SAAS,CAAC,EAAEF,MAAMO,OAAO,CAACC,EAAE,CAAC,CAAC,EAAER,MAAMO,OAAO,CAACE,EAAE,CAAC,CAAC;YAClDJ,OAAO;YACPO,cAAc,CAAC,UAAU,EAAEZ,MAAMa,MAAM,CAACC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjDC,UAAUf,MAAMgB,QAAQ,CAACC,KAAK,CAACC,EAAE,CAACH,QAAQ;YAC1CI,YAAYnB,MAAMgB,QAAQ,CAACC,KAAK,CAACC,EAAE,CAACC,UAAU;YAC9CC,cAAc;QAClB;QACAC,SAAS;YAACC,iBAAiBtB,MAAMa,MAAM,CAACU,IAAI,CAAC,EAAE;YAAE7B,OAAOA,MAAM8B,OAAO,CAACC,SAAS;QAAA;QAC/EC,SAAS;YAACJ,iBAAiBtB,MAAMa,MAAM,CAACc,MAAM,CAAC,EAAE;YAAEjC,OAAOA,MAAM8B,OAAO,CAACC,SAAS;QAAA;QACjFG,UAAU;YACNN,iBAAiBtB,MAAMa,MAAM,CAACgB,GAAG,CAAC,EAAE;YACpCnC,OAAOA,MAAM8B,OAAO,CAACC,SAAS;QAClC;QACAK,MAAM;YAACR,iBAAiBtB,MAAMa,MAAM,CAACkB,IAAI,CAAC,EAAE;YAAErC,OAAOA,MAAM8B,OAAO,CAACC,SAAS;QAAA;QAC5EO,YAAY;YAACtC,OAAOA,MAAM8B,OAAO,CAACC,SAAS;YAAE,WAAW;gBAACH,iBAAiB;YAAa;QAAC;QACxFW,OAAO;YACHvC,OAAOA,MAAM8B,OAAO,CAACC,SAAS;QAClC;IACJ,CAAA;AAgBA,OAAO,MAAMS,SAAqB,CAAC,EAACC,QAAQ,EAAEC,UAAU,MAAM,EAAE,GAAGC,YAAW;IAC1E,MAAM,EAACC,YAAYC,YAAY,EAAE,GAAGC,0BAAyB,GAAGH;IAChE,MAAM,EAACI,OAAO,EAAEC,EAAE,EAAC,GAAG3C;IACtB,MAAM4C,oBAAoB9C,SAAS+C,OAAO,CAACT;IAE3C,MAAMU,gBAAgBF,kBAAkBG,MAAM,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAKlD;IACzE,MAAMmD,SAASN,kBAAkBO,IAAI,CAAC,CAACH,QAAUA,MAAMC,IAAI,KAAKlD;IAEhE,MAAMwC,aAAa;QACf3B,QAAQ+B,GAAGD,QAAQ9B,MAAM,EAAE8B,OAAO,CAACL,QAAQ;QAC3Ce,OAAOV,QAAQT,UAAU;QACzB/B,MAAMwC,QAAQxC,IAAI;QAClBmD,OAAOX,QAAQtC,SAAS;QACxB8B,OAAOQ,QAAQR,KAAK;IACxB;IAEA,qBACI,MAACrC;QACGwC,SAAQ;QACRlC,SAAS;QACToC,YAAY;YAAC,GAAGA,UAAU;YAAE,GAAGC,YAAY;QAAA;QAC3Cc,MAAM;QACL,GAAGb,wBAAwB;;0BAE5B,KAACc;gBAAIC,WAAWd,QAAQnC,SAAS;0BAAGuC;;YACnCI;;;AAGb,EAAE;AAEFf,OAAOsB,MAAM,GAAG1D"}
|
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
2
|
-
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
|
|
3
|
-
import { _ as _object_without_properties } from "@swc/helpers/_/_object_without_properties";
|
|
4
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
import { StickyFooter } from
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
"children"
|
|
9
|
-
]);
|
|
10
|
-
return _jsx(StickyFooter, _object_spread_props(_object_spread({}, otherProps), {
|
|
2
|
+
import { StickyFooter } from '../sticky-footer';
|
|
3
|
+
export const PromptFooter = ({ children, ...otherProps })=>/*#__PURE__*/ _jsx(StickyFooter, {
|
|
4
|
+
...otherProps,
|
|
11
5
|
children: children
|
|
12
|
-
})
|
|
13
|
-
};
|
|
6
|
+
});
|
|
14
7
|
|
|
15
8
|
//# sourceMappingURL=PromptFooter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/prompt/PromptFooter.tsx"],"sourcesContent":["import {FunctionComponent, PropsWithChildren} from 'react';\nimport {StickyFooter, StickyFooterProps} from '../sticky-footer';\n\nexport interface PromptFooterProps extends StickyFooterProps {}\n\nexport const PromptFooter: FunctionComponent<PropsWithChildren<PromptFooterProps>> = ({children, ...otherProps}) => (\n <StickyFooter {...otherProps}>{children}</StickyFooter>\n);\n"],"names":["StickyFooter","PromptFooter","children","otherProps"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/prompt/PromptFooter.tsx"],"sourcesContent":["import {FunctionComponent, PropsWithChildren} from 'react';\nimport {StickyFooter, StickyFooterProps} from '../sticky-footer';\n\nexport interface PromptFooterProps extends StickyFooterProps {}\n\nexport const PromptFooter: FunctionComponent<PropsWithChildren<PromptFooterProps>> = ({children, ...otherProps}) => (\n <StickyFooter {...otherProps}>{children}</StickyFooter>\n);\n"],"names":["StickyFooter","PromptFooter","children","otherProps"],"mappings":";AACA,SAAQA,YAAY,QAA0B,mBAAmB;AAIjE,OAAO,MAAMC,eAAwE,CAAC,EAACC,QAAQ,EAAE,GAAGC,YAAW,iBAC3G,KAACH;QAAc,GAAGG,UAAU;kBAAGD;OACjC"}
|
|
@@ -1,44 +1,30 @@
|
|
|
1
|
-
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
2
|
-
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
|
|
3
|
-
import { _ as _object_without_properties } from "@swc/helpers/_/_object_without_properties";
|
|
4
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { Box, createStyles, Divider, Group, useComponentDefaultProps } from
|
|
6
|
-
import { forwardRef } from
|
|
7
|
-
|
|
8
|
-
return {
|
|
2
|
+
import { Box, createStyles, Divider, Group, useComponentDefaultProps } from '@mantine/core';
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
const useStyles = createStyles((theme)=>({
|
|
9
5
|
root: {
|
|
10
|
-
position:
|
|
6
|
+
position: 'sticky',
|
|
11
7
|
bottom: 0,
|
|
12
8
|
zIndex: 10,
|
|
13
|
-
backgroundColor:
|
|
9
|
+
backgroundColor: 'white'
|
|
14
10
|
},
|
|
15
11
|
footer: {
|
|
16
12
|
padding: theme.spacing.lg
|
|
17
13
|
},
|
|
18
14
|
divider: {}
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
position: "right"
|
|
15
|
+
}));
|
|
16
|
+
const defaultProps = {
|
|
17
|
+
spacing: 'sm',
|
|
18
|
+
position: 'right'
|
|
24
19
|
};
|
|
25
|
-
export
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"styles",
|
|
34
|
-
"unstyled"
|
|
35
|
-
]);
|
|
36
|
-
var _useStyles = useStyles(null, {
|
|
37
|
-
name: "StickyFooter",
|
|
38
|
-
classNames: classNames,
|
|
39
|
-
styles: styles,
|
|
40
|
-
unstyled: unstyled
|
|
41
|
-
}), classes = _useStyles.classes, cx = _useStyles.cx;
|
|
20
|
+
export const StickyFooter = /*#__PURE__*/ forwardRef((props, ref)=>{
|
|
21
|
+
const { borderTop, spacing, position, children, className, classNames, styles, unstyled, ...others } = useComponentDefaultProps('StickyFooter', defaultProps, props);
|
|
22
|
+
const { classes, cx } = useStyles(null, {
|
|
23
|
+
name: 'StickyFooter',
|
|
24
|
+
classNames,
|
|
25
|
+
styles,
|
|
26
|
+
unstyled
|
|
27
|
+
});
|
|
42
28
|
return /*#__PURE__*/ _jsxs(Box, {
|
|
43
29
|
ref: ref,
|
|
44
30
|
className: cx(classes.root, className),
|
|
@@ -47,13 +33,13 @@ export var StickyFooter = /*#__PURE__*/ forwardRef(function(props, ref) {
|
|
|
47
33
|
size: "xs",
|
|
48
34
|
className: classes.divider
|
|
49
35
|
}) : null,
|
|
50
|
-
/*#__PURE__*/ _jsx(Group,
|
|
36
|
+
/*#__PURE__*/ _jsx(Group, {
|
|
51
37
|
position: position,
|
|
52
38
|
spacing: spacing,
|
|
53
|
-
className: classes.footer
|
|
54
|
-
|
|
39
|
+
className: classes.footer,
|
|
40
|
+
...others,
|
|
55
41
|
children: children
|
|
56
|
-
})
|
|
42
|
+
})
|
|
57
43
|
]
|
|
58
44
|
});
|
|
59
45
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/sticky-footer/StickyFooter.tsx"],"sourcesContent":["import {\n Box,\n createStyles,\n DefaultProps,\n Divider,\n Group,\n GroupPosition,\n MantineNumberSize,\n Selectors,\n useComponentDefaultProps,\n} from '@mantine/core';\nimport {forwardRef, ReactNode} from 'react';\n\nexport interface StickyFooterProps extends DefaultProps<Selectors<typeof useStyles>> {\n /**\n * Whether a border is render on top of the footer\n */\n borderTop?: boolean;\n /**\n * Position of the children within the footer\n *\n * @default 'right'\n */\n position?: GroupPosition;\n /**\n * Defines the spacing between footer children\n *\n * @default 'sm'\n */\n spacing?: MantineNumberSize;\n /**\n * Footer's children, usually buttons\n */\n children?: ReactNode;\n}\n\nconst useStyles = createStyles((theme) => ({\n root: {\n position: 'sticky',\n bottom: 0,\n zIndex: 10,\n backgroundColor: 'white',\n },\n footer: {\n padding: theme.spacing.lg,\n },\n divider: {},\n}));\n\nconst defaultProps: Partial<StickyFooterProps> = {\n spacing: 'sm',\n position: 'right',\n};\n\nexport const StickyFooter = forwardRef<HTMLDivElement, StickyFooterProps>((props, ref) => {\n const {borderTop, spacing, position, children, className, classNames, styles, unstyled, ...others} =\n useComponentDefaultProps('StickyFooter', defaultProps, props);\n const {classes, cx} = useStyles(null, {name: 'StickyFooter', classNames, styles, unstyled});\n\n return (\n <Box ref={ref} className={cx(classes.root, className)}>\n {borderTop ? <Divider size=\"xs\" className={classes.divider} /> : null}\n <Group position={position} spacing={spacing} className={classes.footer} {...others}>\n {children}\n </Group>\n </Box>\n );\n});\n"],"names":["Box","createStyles","Divider","Group","useComponentDefaultProps","forwardRef","useStyles","theme","root","position","bottom","zIndex","backgroundColor","footer","padding","spacing","lg","divider","defaultProps","StickyFooter","props","ref","borderTop","children","className","classNames","styles","unstyled","others","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/sticky-footer/StickyFooter.tsx"],"sourcesContent":["import {\n Box,\n createStyles,\n DefaultProps,\n Divider,\n Group,\n GroupPosition,\n MantineNumberSize,\n Selectors,\n useComponentDefaultProps,\n} from '@mantine/core';\nimport {forwardRef, ReactNode} from 'react';\n\nexport interface StickyFooterProps extends DefaultProps<Selectors<typeof useStyles>> {\n /**\n * Whether a border is render on top of the footer\n */\n borderTop?: boolean;\n /**\n * Position of the children within the footer\n *\n * @default 'right'\n */\n position?: GroupPosition;\n /**\n * Defines the spacing between footer children\n *\n * @default 'sm'\n */\n spacing?: MantineNumberSize;\n /**\n * Footer's children, usually buttons\n */\n children?: ReactNode;\n}\n\nconst useStyles = createStyles((theme) => ({\n root: {\n position: 'sticky',\n bottom: 0,\n zIndex: 10,\n backgroundColor: 'white',\n },\n footer: {\n padding: theme.spacing.lg,\n },\n divider: {},\n}));\n\nconst defaultProps: Partial<StickyFooterProps> = {\n spacing: 'sm',\n position: 'right',\n};\n\nexport const StickyFooter = forwardRef<HTMLDivElement, StickyFooterProps>((props, ref) => {\n const {borderTop, spacing, position, children, className, classNames, styles, unstyled, ...others} =\n useComponentDefaultProps('StickyFooter', defaultProps, props);\n const {classes, cx} = useStyles(null, {name: 'StickyFooter', classNames, styles, unstyled});\n\n return (\n <Box ref={ref} className={cx(classes.root, className)}>\n {borderTop ? <Divider size=\"xs\" className={classes.divider} /> : null}\n <Group position={position} spacing={spacing} className={classes.footer} {...others}>\n {children}\n </Group>\n </Box>\n );\n});\n"],"names":["Box","createStyles","Divider","Group","useComponentDefaultProps","forwardRef","useStyles","theme","root","position","bottom","zIndex","backgroundColor","footer","padding","spacing","lg","divider","defaultProps","StickyFooter","props","ref","borderTop","children","className","classNames","styles","unstyled","others","classes","cx","name","size"],"mappings":";AAAA,SACIA,GAAG,EACHC,YAAY,EAEZC,OAAO,EACPC,KAAK,EAILC,wBAAwB,QACrB,gBAAgB;AACvB,SAAQC,UAAU,QAAkB,QAAQ;AAyB5C,MAAMC,YAAYL,aAAa,CAACM,QAAW,CAAA;QACvCC,MAAM;YACFC,UAAU;YACVC,QAAQ;YACRC,QAAQ;YACRC,iBAAiB;QACrB;QACAC,QAAQ;YACJC,SAASP,MAAMQ,OAAO,CAACC,EAAE;QAC7B;QACAC,SAAS,CAAC;IACd,CAAA;AAEA,MAAMC,eAA2C;IAC7CH,SAAS;IACTN,UAAU;AACd;AAEA,OAAO,MAAMU,6BAAed,WAA8C,CAACe,OAAOC;IAC9E,MAAM,EAACC,SAAS,EAAEP,OAAO,EAAEN,QAAQ,EAAEc,QAAQ,EAAEC,SAAS,EAAEC,UAAU,EAAEC,MAAM,EAAEC,QAAQ,EAAE,GAAGC,QAAO,GAC9FxB,yBAAyB,gBAAgBc,cAAcE;IAC3D,MAAM,EAACS,OAAO,EAAEC,EAAE,EAAC,GAAGxB,UAAU,MAAM;QAACyB,MAAM;QAAgBN;QAAYC;QAAQC;IAAQ;IAEzF,qBACI,MAAC3B;QAAIqB,KAAKA;QAAKG,WAAWM,GAAGD,QAAQrB,IAAI,EAAEgB;;YACtCF,0BAAY,KAACpB;gBAAQ8B,MAAK;gBAAKR,WAAWK,QAAQZ,OAAO;iBAAO;0BACjE,KAACd;gBAAMM,UAAUA;gBAAUM,SAASA;gBAASS,WAAWK,QAAQhB,MAAM;gBAAG,GAAGe,MAAM;0BAC7EL;;;;AAIjB,GAAG"}
|
|
@@ -1,127 +1,103 @@
|
|
|
1
|
-
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
2
|
-
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
|
|
3
|
-
import { _ as _object_without_properties } from "@swc/helpers/_/_object_without_properties";
|
|
4
|
-
import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
|
|
5
|
-
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
|
|
6
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
7
|
-
import { Box, Center, Loader } from
|
|
8
|
-
import { useForm } from
|
|
9
|
-
import { useDidUpdate } from
|
|
10
|
-
import { defaultColumnSizing, getCoreRowModel, useReactTable } from
|
|
11
|
-
import debounce from
|
|
12
|
-
import defaultsDeep from
|
|
13
|
-
import { Children, cloneElement, useCallback, useEffect, useState } from
|
|
14
|
-
import { useRowSelection } from
|
|
15
|
-
import useStyles from
|
|
16
|
-
import { TableContext } from
|
|
17
|
-
import { TableLayouts } from
|
|
18
|
-
import { TableActions } from
|
|
19
|
-
import { TableAccordionColumn, TableCollapsibleColumn } from
|
|
20
|
-
import { TableSelectableColumn } from
|
|
21
|
-
import { TableConsumer } from
|
|
22
|
-
import { TableDateRangePicker } from
|
|
23
|
-
import { TableFilter } from
|
|
24
|
-
import { TableFooter } from
|
|
25
|
-
import { TableHeader } from
|
|
26
|
-
import { TableLastUpdated } from
|
|
27
|
-
import { TableLoading } from
|
|
28
|
-
import { TablePagination } from
|
|
29
|
-
import { TablePerPage } from
|
|
30
|
-
import { TablePredicate } from
|
|
31
|
-
export
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return child.type === TableFooter;
|
|
42
|
-
});
|
|
43
|
-
var consumer = convertedChildren.find(function(child) {
|
|
44
|
-
return child.type === TableConsumer;
|
|
45
|
-
});
|
|
46
|
-
var lastUpdated = convertedChildren.find(function(child) {
|
|
47
|
-
return child.type === TableLastUpdated;
|
|
48
|
-
});
|
|
49
|
-
var predicates = initialState.predicates, dateRange = initialState.dateRange, initialStateWithoutForm = _object_without_properties(initialState, [
|
|
50
|
-
"predicates",
|
|
51
|
-
"dateRange"
|
|
52
|
-
]);
|
|
53
|
-
var _initialState_predicates, _initialState_dateRange, _initialState_layout;
|
|
54
|
-
var form = useForm({
|
|
2
|
+
import { Box, Center, Loader } from '@mantine/core';
|
|
3
|
+
import { useForm } from '@mantine/form';
|
|
4
|
+
import { useDidUpdate } from '@mantine/hooks';
|
|
5
|
+
import { defaultColumnSizing, getCoreRowModel, useReactTable } from '@tanstack/react-table';
|
|
6
|
+
import debounce from 'lodash.debounce';
|
|
7
|
+
import defaultsDeep from 'lodash.defaultsdeep';
|
|
8
|
+
import { Children, cloneElement, useCallback, useEffect, useState } from 'react';
|
|
9
|
+
import { useRowSelection } from '../../hooks/useRowSelection';
|
|
10
|
+
import useStyles from './Table.styles';
|
|
11
|
+
import { TableContext } from './TableContext';
|
|
12
|
+
import { TableLayouts } from './layouts/TableLayouts';
|
|
13
|
+
import { TableActions } from './table-actions/TableActions';
|
|
14
|
+
import { TableAccordionColumn, TableCollapsibleColumn } from './table-column/TableCollapsibleColumn';
|
|
15
|
+
import { TableSelectableColumn } from './table-column/TableSelectableColumn';
|
|
16
|
+
import { TableConsumer } from './table-consumer/TableConsumer';
|
|
17
|
+
import { TableDateRangePicker } from './table-date-range-picker/TableDateRangePicker';
|
|
18
|
+
import { TableFilter } from './table-filter/TableFilter';
|
|
19
|
+
import { TableFooter } from './table-footer/TableFooter';
|
|
20
|
+
import { TableHeader } from './table-header/TableHeader';
|
|
21
|
+
import { TableLastUpdated } from './table-last-updated/TableLastUpdated';
|
|
22
|
+
import { TableLoading } from './table-loading/TableLoading';
|
|
23
|
+
import { TablePagination } from './table-pagination/TablePagination';
|
|
24
|
+
import { TablePerPage } from './table-per-page/TablePerPage';
|
|
25
|
+
import { TablePredicate } from './table-predicate/TablePredicate';
|
|
26
|
+
export const Table = ({ data, getRowId, noDataChildren, getExpandChildren, initialState = {}, columns, layouts = [
|
|
27
|
+
TableLayouts.Rows
|
|
28
|
+
], onMount, onChange, children, loading = false, doubleClickAction, multiRowSelectionEnabled, disableRowSelection, onRowSelectionChange, additionalRootNodes, classNames, styles, unstyled, options = {} })=>{
|
|
29
|
+
const convertedChildren = Children.toArray(children);
|
|
30
|
+
const header = convertedChildren.find((child)=>child.type === TableHeader);
|
|
31
|
+
const footer = convertedChildren.find((child)=>child.type === TableFooter);
|
|
32
|
+
const consumer = convertedChildren.find((child)=>child.type === TableConsumer);
|
|
33
|
+
const lastUpdated = convertedChildren.find((child)=>child.type === TableLastUpdated);
|
|
34
|
+
const { predicates, dateRange, ...initialStateWithoutForm } = initialState;
|
|
35
|
+
const form = useForm({
|
|
55
36
|
initialValues: {
|
|
56
|
-
predicates:
|
|
57
|
-
dateRange:
|
|
37
|
+
predicates: initialState?.predicates ?? {},
|
|
38
|
+
dateRange: initialState?.dateRange ?? [
|
|
58
39
|
null,
|
|
59
40
|
null
|
|
60
41
|
],
|
|
61
|
-
layout:
|
|
42
|
+
layout: initialState?.layout ?? layouts[0].name
|
|
62
43
|
}
|
|
63
44
|
});
|
|
64
|
-
|
|
65
|
-
name:
|
|
66
|
-
classNames
|
|
67
|
-
styles
|
|
68
|
-
unstyled
|
|
69
|
-
})
|
|
70
|
-
|
|
71
|
-
var table = useReactTable(_object_spread({
|
|
45
|
+
const { classes } = useStyles(null, {
|
|
46
|
+
name: 'PlasmaTable',
|
|
47
|
+
classNames,
|
|
48
|
+
styles,
|
|
49
|
+
unstyled
|
|
50
|
+
});
|
|
51
|
+
const table = useReactTable({
|
|
72
52
|
initialState: defaultsDeep(initialStateWithoutForm, {
|
|
73
53
|
pagination: {
|
|
74
54
|
pageSize: TablePerPage.DEFAULT_SIZE
|
|
75
55
|
},
|
|
76
|
-
globalFilter:
|
|
56
|
+
globalFilter: ''
|
|
77
57
|
}),
|
|
78
|
-
data
|
|
58
|
+
data,
|
|
79
59
|
columns: multiRowSelectionEnabled ? [
|
|
80
60
|
TableSelectableColumn
|
|
81
61
|
].concat(columns) : columns,
|
|
82
62
|
getCoreRowModel: getCoreRowModel(),
|
|
83
|
-
manualPagination:
|
|
63
|
+
manualPagination: options?.getPaginationRowModel === undefined,
|
|
84
64
|
enableMultiRowSelection: !!multiRowSelectionEnabled,
|
|
85
|
-
getRowId
|
|
86
|
-
getRowCanExpand:
|
|
87
|
-
var _getExpandChildren;
|
|
88
|
-
return (_ref = !!((_getExpandChildren = getExpandChildren) === null || _getExpandChildren === void 0 ? void 0 : _getExpandChildren(row.original))) !== null && _ref !== void 0 ? _ref : false;
|
|
89
|
-
},
|
|
65
|
+
getRowId,
|
|
66
|
+
getRowCanExpand: (row)=>!!getExpandChildren?.(row.original) ?? false,
|
|
90
67
|
enableRowSelection: !loading,
|
|
91
68
|
defaultColumn: {
|
|
92
69
|
size: undefined,
|
|
93
70
|
minSize: defaultColumnSizing.minSize,
|
|
94
71
|
maxSize: defaultColumnSizing.maxSize
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
table.
|
|
99
|
-
|
|
72
|
+
},
|
|
73
|
+
...options
|
|
74
|
+
});
|
|
75
|
+
const [state, setState] = useState(table.initialState);
|
|
76
|
+
table.setOptions((prev)=>({
|
|
77
|
+
...prev,
|
|
100
78
|
state: state,
|
|
101
79
|
onStateChange: setState
|
|
102
|
-
});
|
|
80
|
+
}));
|
|
81
|
+
const { clearSelection, getSelectedRow, getSelectedRows, outsideClickRef } = useRowSelection(table, {
|
|
82
|
+
multiRowSelectionEnabled,
|
|
83
|
+
onRowSelectionChange,
|
|
84
|
+
additionalRootNodes
|
|
103
85
|
});
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
return (_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange(_object_spread({}, state, form.values));
|
|
116
|
-
}, 500);
|
|
117
|
-
useEffect(function() {
|
|
118
|
-
var _onMount;
|
|
119
|
-
(_onMount = onMount) === null || _onMount === void 0 ? void 0 : _onMount(_object_spread({}, state, form.values));
|
|
120
|
-
return function() {
|
|
86
|
+
const isFiltered = !!state.globalFilter || Object.keys(form.values?.predicates ?? {}).some((predicate)=>!!form.values.predicates[predicate]) || !!form.values.dateRange?.[0] || !!form.values.dateRange?.[1];
|
|
87
|
+
const triggerChange = debounce(()=>onChange?.({
|
|
88
|
+
...state,
|
|
89
|
+
...form.values
|
|
90
|
+
}), 500);
|
|
91
|
+
useEffect(()=>{
|
|
92
|
+
onMount?.({
|
|
93
|
+
...state,
|
|
94
|
+
...form.values
|
|
95
|
+
});
|
|
96
|
+
return ()=>{
|
|
121
97
|
triggerChange.cancel();
|
|
122
98
|
};
|
|
123
99
|
}, []);
|
|
124
|
-
useDidUpdate(
|
|
100
|
+
useDidUpdate(()=>{
|
|
125
101
|
triggerChange();
|
|
126
102
|
if (!multiRowSelectionEnabled) {
|
|
127
103
|
clearSelection();
|
|
@@ -133,14 +109,12 @@ export var Table = function(param) {
|
|
|
133
109
|
JSON.stringify(form.values.dateRange),
|
|
134
110
|
JSON.stringify(form.values.predicates)
|
|
135
111
|
]);
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
});
|
|
143
|
-
});
|
|
112
|
+
const clearFilters = useCallback(()=>{
|
|
113
|
+
form.setFieldValue('predicates', initialState.predicates ?? {});
|
|
114
|
+
setState((prevState)=>({
|
|
115
|
+
...prevState,
|
|
116
|
+
globalFilter: ''
|
|
117
|
+
}));
|
|
144
118
|
}, []);
|
|
145
119
|
if (!data) {
|
|
146
120
|
return /*#__PURE__*/ _jsx(Center, {
|
|
@@ -150,30 +124,26 @@ export var Table = function(param) {
|
|
|
150
124
|
children: /*#__PURE__*/ _jsx(Loader, {})
|
|
151
125
|
});
|
|
152
126
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
return name === form.values.layout;
|
|
156
|
-
});
|
|
157
|
-
var hasRows = table.getRowModel().rows.length > 0;
|
|
158
|
-
var _lastUpdated_props_dependencies;
|
|
127
|
+
const Layout = layouts.find(({ name })=>name === form.values.layout);
|
|
128
|
+
const hasRows = table.getRowModel().rows.length > 0;
|
|
159
129
|
return /*#__PURE__*/ _jsx(Box, {
|
|
160
130
|
ref: outsideClickRef,
|
|
161
131
|
children: /*#__PURE__*/ _jsxs(TableContext.Provider, {
|
|
162
132
|
value: {
|
|
163
133
|
onChange: triggerChange,
|
|
164
|
-
state
|
|
165
|
-
isFiltered
|
|
166
|
-
setState
|
|
167
|
-
clearFilters
|
|
168
|
-
getSelectedRow
|
|
169
|
-
getSelectedRows
|
|
170
|
-
clearSelection
|
|
171
|
-
form
|
|
134
|
+
state,
|
|
135
|
+
isFiltered,
|
|
136
|
+
setState,
|
|
137
|
+
clearFilters,
|
|
138
|
+
getSelectedRow,
|
|
139
|
+
getSelectedRows,
|
|
140
|
+
clearSelection,
|
|
141
|
+
form,
|
|
172
142
|
containerRef: outsideClickRef,
|
|
173
|
-
multiRowSelectionEnabled
|
|
143
|
+
multiRowSelectionEnabled,
|
|
174
144
|
getPageCount: table.getPageCount,
|
|
175
|
-
disableRowSelection
|
|
176
|
-
layouts
|
|
145
|
+
disableRowSelection,
|
|
146
|
+
layouts
|
|
177
147
|
},
|
|
178
148
|
children: [
|
|
179
149
|
consumer,
|
|
@@ -226,8 +196,9 @@ export var Table = function(param) {
|
|
|
226
196
|
footer,
|
|
227
197
|
lastUpdated ? /*#__PURE__*/ cloneElement(lastUpdated, {
|
|
228
198
|
dependencies: [
|
|
229
|
-
data
|
|
230
|
-
|
|
199
|
+
data,
|
|
200
|
+
...lastUpdated.props.dependencies ?? []
|
|
201
|
+
]
|
|
231
202
|
}) : null
|
|
232
203
|
]
|
|
233
204
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Loader} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useDidUpdate} from '@mantine/hooks';\nimport {\n ColumnDef,\n Row,\n TableState as TanstackTableState,\n defaultColumnSizing,\n getCoreRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport debounce from 'lodash.debounce';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, Dispatch, ReactElement, cloneElement, useCallback, useEffect, useState} from 'react';\n\nimport {useRowSelection} from '../../hooks/useRowSelection';\nimport useStyles from './Table.styles';\nimport {TableFormType, TableProps, TableState, TableType} from './Table.types';\nimport {TableContext} from './TableContext';\nimport {TableLayouts} from './layouts/TableLayouts';\nimport {TableActions} from './table-actions/TableActions';\nimport {TableAccordionColumn, TableCollapsibleColumn} from './table-column/TableCollapsibleColumn';\nimport {TableSelectableColumn} from './table-column/TableSelectableColumn';\nimport {TableConsumer} from './table-consumer/TableConsumer';\nimport {TableDateRangePicker} from './table-date-range-picker/TableDateRangePicker';\nimport {TableFilter} from './table-filter/TableFilter';\nimport {TableFooter} from './table-footer/TableFooter';\nimport {TableHeader} from './table-header/TableHeader';\nimport {TableLastUpdated} from './table-last-updated/TableLastUpdated';\nimport {TableLoading} from './table-loading/TableLoading';\nimport {TablePagination} from './table-pagination/TablePagination';\nimport {TablePerPage} from './table-per-page/TablePerPage';\nimport {TablePredicate} from './table-predicate/TablePredicate';\n\nexport const Table: TableType = <T,>({\n data,\n getRowId,\n noDataChildren,\n getExpandChildren,\n initialState = {},\n columns,\n layouts = [TableLayouts.Rows],\n onMount,\n onChange,\n children,\n loading = false,\n doubleClickAction,\n multiRowSelectionEnabled,\n disableRowSelection,\n onRowSelectionChange,\n additionalRootNodes,\n classNames,\n styles,\n unstyled,\n options = {},\n}: TableProps<T>) => {\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 consumer = convertedChildren.find((child) => child.type === TableConsumer);\n const lastUpdated = convertedChildren.find((child) => child.type === TableLastUpdated);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {\n predicates: initialState?.predicates ?? {},\n dateRange: initialState?.dateRange ?? [null, null],\n layout: initialState?.layout ?? layouts[0].name,\n },\n });\n const {classes} = useStyles(null, {name: 'PlasmaTable', classNames, styles, unstyled});\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {\n pagination: {pageSize: TablePerPage.DEFAULT_SIZE},\n globalFilter: '',\n }),\n data,\n columns: multiRowSelectionEnabled ? [TableSelectableColumn as ColumnDef<T>].concat(columns) : columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: options?.getPaginationRowModel === undefined,\n enableMultiRowSelection: !!multiRowSelectionEnabled,\n getRowId,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n enableRowSelection: !loading,\n defaultColumn: {\n size: undefined,\n minSize: defaultColumnSizing.minSize,\n maxSize: defaultColumnSizing.maxSize,\n },\n ...options,\n });\n\n const [state, setState] = useState<TableState<T>>(table.initialState as TableState<T>);\n table.setOptions((prev) => ({\n ...prev,\n state: state as TanstackTableState,\n onStateChange: setState as Dispatch<React.SetStateAction<TanstackTableState>>,\n }));\n const {clearSelection, getSelectedRow, getSelectedRows, outsideClickRef} = useRowSelection(table, {\n multiRowSelectionEnabled,\n onRowSelectionChange,\n additionalRootNodes,\n });\n const isFiltered =\n !!state.globalFilter ||\n Object.keys(form.values?.predicates ?? {}).some((predicate) => !!form.values.predicates[predicate]) ||\n !!form.values.dateRange?.[0] ||\n !!form.values.dateRange?.[1];\n\n const triggerChange = debounce(() => onChange?.({...state, ...form.values}), 500);\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n return () => {\n triggerChange.cancel();\n };\n }, []);\n\n useDidUpdate(() => {\n triggerChange();\n if (!multiRowSelectionEnabled) {\n clearSelection();\n }\n }, [\n state.globalFilter,\n state.pagination,\n state.sorting,\n JSON.stringify(form.values.dateRange),\n JSON.stringify(form.values.predicates),\n ]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', initialState.predicates ?? {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n if (!data) {\n return (\n <Center sx={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const Layout = layouts.find(({name}) => name === form.values.layout);\n const hasRows = table.getRowModel().rows.length > 0;\n\n return (\n <Box ref={outsideClickRef}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n isFiltered,\n setState,\n clearFilters,\n getSelectedRow,\n getSelectedRows,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n multiRowSelectionEnabled,\n getPageCount: table.getPageCount,\n disableRowSelection,\n layouts,\n }}\n >\n {consumer}\n {!hasRows && !isFiltered && !loading ? (\n noDataChildren\n ) : (\n <>\n <Box component=\"table\" className={classes.table} pb=\"sm\">\n <thead className={classes.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 table={table}\n doubleClickAction={doubleClickAction}\n getExpandChildren={getExpandChildren}\n loading={loading}\n />\n </thead>\n <tbody className={classes.body}>\n {hasRows ? (\n <Layout.Body\n table={table}\n doubleClickAction={doubleClickAction}\n getExpandChildren={getExpandChildren}\n loading={loading}\n />\n ) : (\n <tr>\n <td colSpan={table.getAllColumns().length}>\n <TableLoading visible={loading}>{noDataChildren}</TableLoading>\n </td>\n </tr>\n )}\n </tbody>\n </Box>\n {footer}\n {lastUpdated\n ? cloneElement(lastUpdated, {\n dependencies: [data, ...(lastUpdated.props.dependencies ?? [])],\n })\n : null}\n </>\n )}\n </TableContext.Provider>\n </Box>\n );\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.LastUpdated = TableLastUpdated;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.AccordionColumn = TableAccordionColumn;\nTable.DateRangePicker = TableDateRangePicker;\nTable.Consumer = TableConsumer;\nTable.Loading = TableLoading;\nTable.Layouts = TableLayouts;\n"],"names":["Box","Center","Loader","useForm","useDidUpdate","defaultColumnSizing","getCoreRowModel","useReactTable","debounce","defaultsDeep","Children","cloneElement","useCallback","useEffect","useState","useRowSelection","useStyles","TableContext","TableLayouts","TableActions","TableAccordionColumn","TableCollapsibleColumn","TableSelectableColumn","TableConsumer","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TableLastUpdated","TableLoading","TablePagination","TablePerPage","TablePredicate","Table","data","getRowId","noDataChildren","getExpandChildren","initialState","columns","layouts","Rows","onMount","onChange","children","loading","doubleClickAction","multiRowSelectionEnabled","disableRowSelection","onRowSelectionChange","additionalRootNodes","classNames","styles","unstyled","options","form","convertedChildren","toArray","header","find","child","type","footer","consumer","lastUpdated","predicates","dateRange","initialStateWithoutForm","initialValues","layout","name","classes","table","pagination","pageSize","DEFAULT_SIZE","globalFilter","concat","manualPagination","getPaginationRowModel","undefined","enableMultiRowSelection","getRowCanExpand","row","original","enableRowSelection","defaultColumn","size","minSize","maxSize","state","setState","setOptions","prev","onStateChange","clearSelection","getSelectedRow","getSelectedRows","outsideClickRef","isFiltered","Object","keys","values","some","predicate","triggerChange","cancel","sorting","JSON","stringify","clearFilters","setFieldValue","prevState","sx","flexGrow","Layout","hasRows","getRowModel","rows","length","ref","Provider","value","containerRef","getPageCount","component","className","pb","thead","tr","th","style","padding","colSpan","getAllColumns","Header","tbody","body","Body","td","visible","dependencies","props","Actions","Filter","Footer","LastUpdated","Pagination","Predicate","PerPage","CollapsibleColumn","AccordionColumn","DateRangePicker","Consumer","Loading","Layouts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Loader} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useDidUpdate} from '@mantine/hooks';\nimport {\n ColumnDef,\n Row,\n TableState as TanstackTableState,\n defaultColumnSizing,\n getCoreRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport debounce from 'lodash.debounce';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, Dispatch, ReactElement, cloneElement, useCallback, useEffect, useState} from 'react';\n\nimport {useRowSelection} from '../../hooks/useRowSelection';\nimport useStyles from './Table.styles';\nimport {TableFormType, TableProps, TableState, TableType} from './Table.types';\nimport {TableContext} from './TableContext';\nimport {TableLayouts} from './layouts/TableLayouts';\nimport {TableActions} from './table-actions/TableActions';\nimport {TableAccordionColumn, TableCollapsibleColumn} from './table-column/TableCollapsibleColumn';\nimport {TableSelectableColumn} from './table-column/TableSelectableColumn';\nimport {TableConsumer} from './table-consumer/TableConsumer';\nimport {TableDateRangePicker} from './table-date-range-picker/TableDateRangePicker';\nimport {TableFilter} from './table-filter/TableFilter';\nimport {TableFooter} from './table-footer/TableFooter';\nimport {TableHeader} from './table-header/TableHeader';\nimport {TableLastUpdated} from './table-last-updated/TableLastUpdated';\nimport {TableLoading} from './table-loading/TableLoading';\nimport {TablePagination} from './table-pagination/TablePagination';\nimport {TablePerPage} from './table-per-page/TablePerPage';\nimport {TablePredicate} from './table-predicate/TablePredicate';\n\nexport const Table: TableType = <T,>({\n data,\n getRowId,\n noDataChildren,\n getExpandChildren,\n initialState = {},\n columns,\n layouts = [TableLayouts.Rows],\n onMount,\n onChange,\n children,\n loading = false,\n doubleClickAction,\n multiRowSelectionEnabled,\n disableRowSelection,\n onRowSelectionChange,\n additionalRootNodes,\n classNames,\n styles,\n unstyled,\n options = {},\n}: TableProps<T>) => {\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 consumer = convertedChildren.find((child) => child.type === TableConsumer);\n const lastUpdated = convertedChildren.find((child) => child.type === TableLastUpdated);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {\n predicates: initialState?.predicates ?? {},\n dateRange: initialState?.dateRange ?? [null, null],\n layout: initialState?.layout ?? layouts[0].name,\n },\n });\n const {classes} = useStyles(null, {name: 'PlasmaTable', classNames, styles, unstyled});\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {\n pagination: {pageSize: TablePerPage.DEFAULT_SIZE},\n globalFilter: '',\n }),\n data,\n columns: multiRowSelectionEnabled ? [TableSelectableColumn as ColumnDef<T>].concat(columns) : columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: options?.getPaginationRowModel === undefined,\n enableMultiRowSelection: !!multiRowSelectionEnabled,\n getRowId,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n enableRowSelection: !loading,\n defaultColumn: {\n size: undefined,\n minSize: defaultColumnSizing.minSize,\n maxSize: defaultColumnSizing.maxSize,\n },\n ...options,\n });\n\n const [state, setState] = useState<TableState<T>>(table.initialState as TableState<T>);\n table.setOptions((prev) => ({\n ...prev,\n state: state as TanstackTableState,\n onStateChange: setState as Dispatch<React.SetStateAction<TanstackTableState>>,\n }));\n const {clearSelection, getSelectedRow, getSelectedRows, outsideClickRef} = useRowSelection(table, {\n multiRowSelectionEnabled,\n onRowSelectionChange,\n additionalRootNodes,\n });\n const isFiltered =\n !!state.globalFilter ||\n Object.keys(form.values?.predicates ?? {}).some((predicate) => !!form.values.predicates[predicate]) ||\n !!form.values.dateRange?.[0] ||\n !!form.values.dateRange?.[1];\n\n const triggerChange = debounce(() => onChange?.({...state, ...form.values}), 500);\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n return () => {\n triggerChange.cancel();\n };\n }, []);\n\n useDidUpdate(() => {\n triggerChange();\n if (!multiRowSelectionEnabled) {\n clearSelection();\n }\n }, [\n state.globalFilter,\n state.pagination,\n state.sorting,\n JSON.stringify(form.values.dateRange),\n JSON.stringify(form.values.predicates),\n ]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', initialState.predicates ?? {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n if (!data) {\n return (\n <Center sx={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const Layout = layouts.find(({name}) => name === form.values.layout);\n const hasRows = table.getRowModel().rows.length > 0;\n\n return (\n <Box ref={outsideClickRef}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n isFiltered,\n setState,\n clearFilters,\n getSelectedRow,\n getSelectedRows,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n multiRowSelectionEnabled,\n getPageCount: table.getPageCount,\n disableRowSelection,\n layouts,\n }}\n >\n {consumer}\n {!hasRows && !isFiltered && !loading ? (\n noDataChildren\n ) : (\n <>\n <Box component=\"table\" className={classes.table} pb=\"sm\">\n <thead className={classes.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 table={table}\n doubleClickAction={doubleClickAction}\n getExpandChildren={getExpandChildren}\n loading={loading}\n />\n </thead>\n <tbody className={classes.body}>\n {hasRows ? (\n <Layout.Body\n table={table}\n doubleClickAction={doubleClickAction}\n getExpandChildren={getExpandChildren}\n loading={loading}\n />\n ) : (\n <tr>\n <td colSpan={table.getAllColumns().length}>\n <TableLoading visible={loading}>{noDataChildren}</TableLoading>\n </td>\n </tr>\n )}\n </tbody>\n </Box>\n {footer}\n {lastUpdated\n ? cloneElement(lastUpdated, {\n dependencies: [data, ...(lastUpdated.props.dependencies ?? [])],\n })\n : null}\n </>\n )}\n </TableContext.Provider>\n </Box>\n );\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.LastUpdated = TableLastUpdated;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.AccordionColumn = TableAccordionColumn;\nTable.DateRangePicker = TableDateRangePicker;\nTable.Consumer = TableConsumer;\nTable.Loading = TableLoading;\nTable.Layouts = TableLayouts;\n"],"names":["Box","Center","Loader","useForm","useDidUpdate","defaultColumnSizing","getCoreRowModel","useReactTable","debounce","defaultsDeep","Children","cloneElement","useCallback","useEffect","useState","useRowSelection","useStyles","TableContext","TableLayouts","TableActions","TableAccordionColumn","TableCollapsibleColumn","TableSelectableColumn","TableConsumer","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TableLastUpdated","TableLoading","TablePagination","TablePerPage","TablePredicate","Table","data","getRowId","noDataChildren","getExpandChildren","initialState","columns","layouts","Rows","onMount","onChange","children","loading","doubleClickAction","multiRowSelectionEnabled","disableRowSelection","onRowSelectionChange","additionalRootNodes","classNames","styles","unstyled","options","convertedChildren","toArray","header","find","child","type","footer","consumer","lastUpdated","predicates","dateRange","initialStateWithoutForm","form","initialValues","layout","name","classes","table","pagination","pageSize","DEFAULT_SIZE","globalFilter","concat","manualPagination","getPaginationRowModel","undefined","enableMultiRowSelection","getRowCanExpand","row","original","enableRowSelection","defaultColumn","size","minSize","maxSize","state","setState","setOptions","prev","onStateChange","clearSelection","getSelectedRow","getSelectedRows","outsideClickRef","isFiltered","Object","keys","values","some","predicate","triggerChange","cancel","sorting","JSON","stringify","clearFilters","setFieldValue","prevState","sx","flexGrow","Layout","hasRows","getRowModel","rows","length","ref","Provider","value","containerRef","getPageCount","component","className","pb","thead","tr","th","style","padding","colSpan","getAllColumns","Header","tbody","body","Body","td","visible","dependencies","props","Actions","Filter","Footer","LastUpdated","Pagination","Predicate","PerPage","CollapsibleColumn","AccordionColumn","DateRangePicker","Consumer","Loading","Layouts"],"mappings":"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"}
|
|
@@ -1,28 +1,26 @@
|
|
|
1
|
-
import { createStyles } from
|
|
2
|
-
|
|
3
|
-
return {
|
|
1
|
+
import { createStyles } from '@mantine/core';
|
|
2
|
+
const useStyles = createStyles((theme)=>({
|
|
4
3
|
table: {
|
|
5
|
-
width:
|
|
4
|
+
width: '100%'
|
|
6
5
|
},
|
|
7
6
|
header: {
|
|
8
|
-
position:
|
|
7
|
+
position: 'sticky',
|
|
9
8
|
top: 0,
|
|
10
|
-
backgroundColor: theme.colorScheme ===
|
|
11
|
-
transition:
|
|
9
|
+
backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,
|
|
10
|
+
transition: 'box-shadow 150ms ease',
|
|
12
11
|
zIndex: 1,
|
|
13
|
-
|
|
12
|
+
'&::after': {
|
|
14
13
|
content: '""',
|
|
15
|
-
position:
|
|
14
|
+
position: 'absolute',
|
|
16
15
|
left: 0,
|
|
17
16
|
right: 0,
|
|
18
17
|
bottom: 0,
|
|
19
|
-
borderBottom:
|
|
18
|
+
borderBottom: `1px solid ${theme.colors.gray[3]}`
|
|
20
19
|
}
|
|
21
20
|
},
|
|
22
21
|
body: {}
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export var TableComponentsOrder = {
|
|
22
|
+
}));
|
|
23
|
+
export const TableComponentsOrder = {
|
|
26
24
|
MultiSelectInfo: 6,
|
|
27
25
|
Actions: 5,
|
|
28
26
|
Predicate: 4,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/table/Table.styles.ts"],"sourcesContent":["import {createStyles} from '@mantine/core';\n\nconst useStyles = createStyles<string>((theme) => ({\n table: {\n width: '100%',\n },\n\n header: {\n position: 'sticky',\n top: 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,\n transition: 'box-shadow 150ms ease',\n zIndex: 1,\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n borderBottom: `1px solid ${theme.colors.gray[3]}`,\n },\n },\n\n body: {},\n}));\n\nexport const TableComponentsOrder = {\n MultiSelectInfo: 6,\n Actions: 5,\n Predicate: 4,\n Filter: 3,\n DateRangePicker: 2,\n LayoutControl: 1,\n};\n\nexport default useStyles;\n"],"names":["createStyles","useStyles","theme","table","width","header","position","top","backgroundColor","colorScheme","black","white","transition","zIndex","content","left","right","bottom","borderBottom","colors","gray","body","TableComponentsOrder","MultiSelectInfo","Actions","Predicate","Filter","DateRangePicker","LayoutControl"],"mappings":"AAAA,SAAQA,YAAY,QAAO,gBAAgB;AAE3C,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/table/Table.styles.ts"],"sourcesContent":["import {createStyles} from '@mantine/core';\n\nconst useStyles = createStyles<string>((theme) => ({\n table: {\n width: '100%',\n },\n\n header: {\n position: 'sticky',\n top: 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,\n transition: 'box-shadow 150ms ease',\n zIndex: 1,\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n borderBottom: `1px solid ${theme.colors.gray[3]}`,\n },\n },\n\n body: {},\n}));\n\nexport const TableComponentsOrder = {\n MultiSelectInfo: 6,\n Actions: 5,\n Predicate: 4,\n Filter: 3,\n DateRangePicker: 2,\n LayoutControl: 1,\n};\n\nexport default useStyles;\n"],"names":["createStyles","useStyles","theme","table","width","header","position","top","backgroundColor","colorScheme","black","white","transition","zIndex","content","left","right","bottom","borderBottom","colors","gray","body","TableComponentsOrder","MultiSelectInfo","Actions","Predicate","Filter","DateRangePicker","LayoutControl"],"mappings":"AAAA,SAAQA,YAAY,QAAO,gBAAgB;AAE3C,MAAMC,YAAYD,aAAqB,CAACE,QAAW,CAAA;QAC/CC,OAAO;YACHC,OAAO;QACX;QAEAC,QAAQ;YACJC,UAAU;YACVC,KAAK;YACLC,iBAAiBN,MAAMO,WAAW,KAAK,SAASP,MAAMQ,KAAK,GAAGR,MAAMS,KAAK;YACzEC,YAAY;YACZC,QAAQ;YAER,YAAY;gBACRC,SAAS;gBACTR,UAAU;gBACVS,MAAM;gBACNC,OAAO;gBACPC,QAAQ;gBACRC,cAAc,CAAC,UAAU,EAAEhB,MAAMiB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrD;QACJ;QAEAC,MAAM,CAAC;IACX,CAAA;AAEA,OAAO,MAAMC,uBAAuB;IAChCC,iBAAiB;IACjBC,SAAS;IACTC,WAAW;IACXC,QAAQ;IACRC,iBAAiB;IACjBC,eAAe;AACnB,EAAE;AAEF,eAAe3B,UAAU"}
|