@coveord/plasma-mantine 53.0.1 → 53.1.2
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 +34 -34
- package/dist/.tsbuildinfo +1 -1
- package/dist/cjs/components/action-icon/ActionIcon.js +1 -1
- package/dist/cjs/components/action-icon/ActionIcon.js.map +1 -1
- package/dist/cjs/components/action-icon/index.js.map +1 -1
- package/dist/cjs/components/blank-slate/BlankSlate.js +1 -1
- package/dist/cjs/components/blank-slate/BlankSlate.js.map +1 -1
- package/dist/cjs/components/blank-slate/index.js.map +1 -1
- package/dist/cjs/components/browser-preview/BrowserPreview.js.map +1 -1
- package/dist/cjs/components/browser-preview/index.js.map +1 -1
- package/dist/cjs/components/button/Button.js +3 -3
- package/dist/cjs/components/button/Button.js.map +1 -1
- package/dist/cjs/components/button/ButtonWithDisabledTooltip.js +3 -3
- package/dist/cjs/components/button/ButtonWithDisabledTooltip.js.map +1 -1
- package/dist/cjs/components/button/index.js.map +1 -1
- package/dist/cjs/components/code-editor/CodeEditor.js +14 -17
- package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/cjs/components/code-editor/index.js.map +1 -1
- package/dist/cjs/components/code-editor/languages/xml.js +5 -5
- package/dist/cjs/components/code-editor/languages/xml.js.map +1 -1
- package/dist/cjs/components/code-editor/search/Search.js +2 -2
- package/dist/cjs/components/code-editor/search/Search.js.map +1 -1
- package/dist/cjs/components/code-editor/search/index.js.map +1 -1
- package/dist/cjs/components/collection/Collection.js +16 -22
- package/dist/cjs/components/collection/Collection.js.map +1 -1
- package/dist/cjs/components/collection/CollectionContext.js +1 -1
- package/dist/cjs/components/collection/CollectionContext.js.map +1 -1
- package/dist/cjs/components/collection/CollectionItem.js +5 -5
- package/dist/cjs/components/collection/CollectionItem.js.map +1 -1
- package/dist/cjs/components/collection/enhanceWithCollectionProps.js.map +1 -1
- package/dist/cjs/components/collection/index.js.map +1 -1
- package/dist/cjs/components/copyToClipboard/CopyToClipboard.js +4 -5
- package/dist/cjs/components/copyToClipboard/CopyToClipboard.js.map +1 -1
- package/dist/cjs/components/copyToClipboard/index.js.map +1 -1
- package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js +2 -2
- package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
- package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js +2 -3
- package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
- package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js +1 -2
- package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
- package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js +10 -13
- package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
- package/dist/cjs/components/date-range-picker/index.js.map +1 -1
- package/dist/cjs/components/header/Header.context.js +1 -1
- package/dist/cjs/components/header/Header.context.js.map +1 -1
- package/dist/cjs/components/header/Header.js +11 -11
- package/dist/cjs/components/header/Header.js.map +1 -1
- package/dist/cjs/components/header/HeaderActions/HeaderActions.js +3 -3
- package/dist/cjs/components/header/HeaderActions/HeaderActions.js.map +1 -1
- package/dist/cjs/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.js +2 -2
- package/dist/cjs/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
- package/dist/cjs/components/header/HeaderDocAnchor/HeaderDocAnchor.js +4 -4
- package/dist/cjs/components/header/HeaderDocAnchor/HeaderDocAnchor.js.map +1 -1
- package/dist/cjs/components/header/index.js.map +1 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirm.js +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmContext.js +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmContext.js.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +9 -9
- package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmTarget.js +1 -2
- package/dist/cjs/components/inline-confirm/InlineConfirmTarget.js.map +1 -1
- package/dist/cjs/components/inline-confirm/index.js.map +1 -1
- package/dist/cjs/components/menu/Menu.js +3 -3
- package/dist/cjs/components/menu/Menu.js.map +1 -1
- package/dist/cjs/components/menu/index.js.map +1 -1
- package/dist/cjs/components/prompt/Prompt.js.map +1 -1
- package/dist/cjs/components/prompt/PromptFooter.js +2 -2
- package/dist/cjs/components/prompt/PromptFooter.js.map +1 -1
- package/dist/cjs/components/prompt/index.js.map +1 -1
- package/dist/cjs/components/sticky-footer/StickyFooter.d.ts +8 -1
- package/dist/cjs/components/sticky-footer/StickyFooter.d.ts.map +1 -1
- package/dist/cjs/components/sticky-footer/StickyFooter.js +5 -5
- package/dist/cjs/components/sticky-footer/StickyFooter.js.map +1 -1
- package/dist/cjs/components/sticky-footer/StickyFooter.module.css +9 -0
- package/dist/cjs/components/sticky-footer/index.js.map +1 -1
- package/dist/cjs/components/table/Table.js +18 -21
- package/dist/cjs/components/table/Table.js.map +1 -1
- package/dist/cjs/components/table/Table.types.js.map +1 -1
- package/dist/cjs/components/table/TableContext.js +5 -5
- package/dist/cjs/components/table/TableContext.js.map +1 -1
- package/dist/cjs/components/table/index.js.map +1 -1
- package/dist/cjs/components/table/layouts/TableLayoutControl.js +1 -1
- package/dist/cjs/components/table/layouts/TableLayoutControl.js.map +1 -1
- package/dist/cjs/components/table/layouts/TableLayouts.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayout.js +3 -3
- package/dist/cjs/components/table/layouts/row-layout/RowLayout.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.js +10 -12
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutContext.js +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutContext.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.js +2 -2
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.js +2 -2
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.js.map +1 -1
- package/dist/cjs/components/table/table-actions/TableActions.js +3 -3
- package/dist/cjs/components/table/table-actions/TableActions.js.map +1 -1
- package/dist/cjs/components/table/table-column/TableCollapsibleColumn.js +8 -9
- package/dist/cjs/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
- package/dist/cjs/components/table/table-column/TableSelectableColumn.js +4 -4
- package/dist/cjs/components/table/table-column/TableSelectableColumn.js.map +1 -1
- package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.js +10 -11
- package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.js.map +1 -1
- package/dist/cjs/components/table/table-consumer/TableConsumer.js.map +1 -1
- package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.js +5 -5
- package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
- package/dist/cjs/components/table/table-filter/TableFilter.js +6 -6
- package/dist/cjs/components/table/table-filter/TableFilter.js.map +1 -1
- package/dist/cjs/components/table/table-footer/TableFooter.js +2 -2
- package/dist/cjs/components/table/table-footer/TableFooter.js.map +1 -1
- package/dist/cjs/components/table/table-header/TableHeader.js +6 -6
- package/dist/cjs/components/table/table-header/TableHeader.js.map +1 -1
- package/dist/cjs/components/table/table-header/Th.js +7 -7
- package/dist/cjs/components/table/table-header/Th.js.map +1 -1
- package/dist/cjs/components/table/table-last-updated/TableLastUpdated.js +5 -5
- package/dist/cjs/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
- package/dist/cjs/components/table/table-loading/TableLoading.js.map +1 -1
- package/dist/cjs/components/table/table-pagination/TablePagination.js +9 -10
- package/dist/cjs/components/table/table-pagination/TablePagination.js.map +1 -1
- package/dist/cjs/components/table/table-pagination/TablePagination.types.js.map +1 -1
- package/dist/cjs/components/table/table-per-page/TablePerPage.js +3 -5
- package/dist/cjs/components/table/table-per-page/TablePerPage.js.map +1 -1
- package/dist/cjs/components/table/table-per-page/TablePerPage.types.js.map +1 -1
- package/dist/cjs/components/table/table-predicate/TablePredicate.js +6 -6
- package/dist/cjs/components/table/table-predicate/TablePredicate.js.map +1 -1
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/useClickWithLoading.js +2 -2
- package/dist/cjs/hooks/useClickWithLoading.js.map +1 -1
- package/dist/cjs/hooks/useControlledList.js +3 -6
- package/dist/cjs/hooks/useControlledList.js.map +1 -1
- package/dist/cjs/hooks/useParentHeight.js.map +1 -1
- package/dist/cjs/hooks/useRowSelection.js +5 -6
- package/dist/cjs/hooks/useRowSelection.js.map +1 -1
- package/dist/cjs/index.js +6 -6
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/theme/PlasmaColors.js.map +1 -1
- package/dist/cjs/theme/Plasmantine.js.map +1 -1
- package/dist/cjs/theme/Theme.js +48 -48
- package/dist/cjs/theme/Theme.js.map +1 -1
- package/dist/cjs/theme/index.js.map +1 -1
- package/dist/cjs/theme/mergeCSSVariablesResolvers.js.map +1 -1
- package/dist/cjs/theme/plasmaCSSVariablesResolver.js +2 -2
- package/dist/cjs/theme/plasmaCSSVariablesResolver.js.map +1 -1
- package/dist/cjs/types/css/index.d.js.map +1 -1
- package/dist/cjs/utils/createFactoryComponent.js.map +1 -1
- package/dist/cjs/utils/createPolymorphicComponent.js.map +1 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/overrideComponent.js.map +1 -1
- package/dist/cjs/vars/Notification.vars.js +3 -3
- package/dist/cjs/vars/Notification.vars.js.map +1 -1
- package/dist/cjs/vars/Text.vars.js +1 -1
- package/dist/cjs/vars/Text.vars.js.map +1 -1
- package/dist/esm/components/action-icon/ActionIcon.js.map +1 -1
- package/dist/esm/components/action-icon/index.js.map +1 -1
- package/dist/esm/components/blank-slate/BlankSlate.js.map +1 -1
- package/dist/esm/components/blank-slate/index.js.map +1 -1
- package/dist/esm/components/browser-preview/BrowserPreview.js.map +1 -1
- package/dist/esm/components/browser-preview/index.js.map +1 -1
- package/dist/esm/components/button/Button.js.map +1 -1
- package/dist/esm/components/button/ButtonWithDisabledTooltip.js.map +1 -1
- package/dist/esm/components/button/index.js.map +1 -1
- package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/esm/components/code-editor/index.js.map +1 -1
- package/dist/esm/components/code-editor/languages/xml.js.map +1 -1
- package/dist/esm/components/code-editor/search/Search.js.map +1 -1
- package/dist/esm/components/code-editor/search/index.js.map +1 -1
- package/dist/esm/components/collection/Collection.js.map +1 -1
- package/dist/esm/components/collection/CollectionContext.js.map +1 -1
- package/dist/esm/components/collection/CollectionItem.js.map +1 -1
- package/dist/esm/components/collection/enhanceWithCollectionProps.js.map +1 -1
- package/dist/esm/components/collection/index.js.map +1 -1
- package/dist/esm/components/copyToClipboard/CopyToClipboard.js.map +1 -1
- package/dist/esm/components/copyToClipboard/index.js.map +1 -1
- package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
- package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
- package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
- package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
- package/dist/esm/components/date-range-picker/index.js.map +1 -1
- package/dist/esm/components/header/Header.context.js.map +1 -1
- package/dist/esm/components/header/Header.js.map +1 -1
- package/dist/esm/components/header/HeaderActions/HeaderActions.js.map +1 -1
- package/dist/esm/components/header/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
- package/dist/esm/components/header/HeaderDocAnchor/HeaderDocAnchor.js.map +1 -1
- package/dist/esm/components/header/index.js.map +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmContext.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmTarget.js.map +1 -1
- package/dist/esm/components/inline-confirm/index.js.map +1 -1
- package/dist/esm/components/menu/Menu.js.map +1 -1
- package/dist/esm/components/menu/index.js.map +1 -1
- package/dist/esm/components/prompt/Prompt.js.map +1 -1
- package/dist/esm/components/prompt/PromptFooter.js.map +1 -1
- package/dist/esm/components/prompt/index.js.map +1 -1
- package/dist/esm/components/sticky-footer/StickyFooter.d.ts +8 -1
- package/dist/esm/components/sticky-footer/StickyFooter.d.ts.map +1 -1
- package/dist/esm/components/sticky-footer/StickyFooter.js.map +1 -1
- package/dist/esm/components/sticky-footer/StickyFooter.module.css +9 -0
- package/dist/esm/components/sticky-footer/index.js.map +1 -1
- package/dist/esm/components/table/Table.js.map +1 -1
- package/dist/esm/components/table/Table.types.js.map +1 -1
- package/dist/esm/components/table/TableContext.js.map +1 -1
- package/dist/esm/components/table/index.js.map +1 -1
- package/dist/esm/components/table/layouts/TableLayoutControl.js.map +1 -1
- package/dist/esm/components/table/layouts/TableLayouts.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayout.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutContext.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.js.map +1 -1
- package/dist/esm/components/table/table-actions/TableActions.js.map +1 -1
- package/dist/esm/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
- package/dist/esm/components/table/table-column/TableSelectableColumn.js.map +1 -1
- package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.js.map +1 -1
- package/dist/esm/components/table/table-consumer/TableConsumer.js.map +1 -1
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
- package/dist/esm/components/table/table-filter/TableFilter.js.map +1 -1
- package/dist/esm/components/table/table-footer/TableFooter.js.map +1 -1
- package/dist/esm/components/table/table-header/TableHeader.js.map +1 -1
- package/dist/esm/components/table/table-header/Th.js.map +1 -1
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
- package/dist/esm/components/table/table-loading/TableLoading.js.map +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.js +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.js.map +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.types.js.map +1 -1
- package/dist/esm/components/table/table-per-page/TablePerPage.js.map +1 -1
- package/dist/esm/components/table/table-per-page/TablePerPage.types.js.map +1 -1
- package/dist/esm/components/table/table-predicate/TablePredicate.js.map +1 -1
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/useClickWithLoading.js.map +1 -1
- package/dist/esm/hooks/useControlledList.js.map +1 -1
- package/dist/esm/hooks/useParentHeight.js.map +1 -1
- package/dist/esm/hooks/useRowSelection.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/theme/PlasmaColors.js.map +1 -1
- package/dist/esm/theme/Plasmantine.js.map +1 -1
- package/dist/esm/theme/Theme.js.map +1 -1
- package/dist/esm/theme/index.js.map +1 -1
- package/dist/esm/theme/mergeCSSVariablesResolvers.js.map +1 -1
- package/dist/esm/theme/plasmaCSSVariablesResolver.js.map +1 -1
- package/dist/esm/types/css/index.d.js.map +1 -1
- package/dist/esm/utils/createFactoryComponent.js.map +1 -1
- package/dist/esm/utils/createPolymorphicComponent.js.map +1 -1
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/overrideComponent.js.map +1 -1
- package/dist/esm/vars/Notification.vars.js.map +1 -1
- package/dist/esm/vars/Text.vars.js.map +1 -1
- package/package.json +29 -29
- package/src/__tests__/VitestSetup.ts +1 -1
- package/src/components/sticky-footer/StickyFooter.module.css +9 -0
- package/src/components/sticky-footer/StickyFooter.tsx +8 -1
- package/src/components/table/__tests__/TablePagination.spec.tsx +22 -0
- package/src/components/table/table-pagination/TablePagination.tsx +1 -1
|
@@ -30,7 +30,7 @@ var ActionIcon = (0, _core.polymorphicFactory)(function(_param, ref) {
|
|
|
30
30
|
fullWidth: others.fullWidth,
|
|
31
31
|
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.ActionIcon, _object_spread._({
|
|
32
32
|
loaderProps: {
|
|
33
|
-
type:
|
|
33
|
+
type: 'oval'
|
|
34
34
|
},
|
|
35
35
|
ref: ref,
|
|
36
36
|
loading: isLoading || loading,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/action-icon/ActionIcon.tsx"],"sourcesContent":["import {\n ActionIcon as MantineActionIcon,\n ActionIconCssVariables,\n ActionIconGroup,\n type ActionIconProps as MantineActionIconProps,\n ActionIconStylesNames,\n ActionIconVariant,\n Factory,\n polymorphicFactory,\n} from '@mantine/core';\nimport {MouseEventHandler} from 'react';\nimport {useClickWithLoading} from '../../hooks/useClickWithLoading';\nimport {ButtonWithDisabledTooltip, ButtonWithDisabledTooltipProps} from '../button/ButtonWithDisabledTooltip';\n\nexport interface ActionIconProps extends MantineActionIconProps, ButtonWithDisabledTooltipProps {\n /* Handler executed on click */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\n\ntype ActionIconOverloadFactory = Factory<{\n props: ActionIconProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ActionIconStylesNames;\n vars: ActionIconCssVariables;\n variant: ActionIconVariant;\n staticComponents: {\n Group: typeof ActionIconGroup;\n };\n}>;\n\nexport const ActionIcon = polymorphicFactory<ActionIconOverloadFactory>(\n ({disabledTooltip, disabled, disabledTooltipProps, loading, onClick, ...others}, ref) => {\n const {isLoading, handleClick} = useClickWithLoading(onClick);\n return (\n <ButtonWithDisabledTooltip\n disabled={disabled}\n disabledTooltip={disabledTooltip}\n disabledTooltipProps={disabledTooltipProps}\n fullWidth={others.fullWidth}\n >\n <MantineActionIcon\n loaderProps={{type: 'oval'}}\n ref={ref}\n loading={isLoading || loading}\n onClick={handleClick}\n disabled={disabled}\n {...others}\n />\n </ButtonWithDisabledTooltip>\n );\n },\n);\nActionIcon.Group = MantineActionIcon.Group;\n"],"names":["ActionIcon","polymorphicFactory","ref","disabledTooltip","disabled","disabledTooltipProps","loading","onClick","others","useClickWithLoading","isLoading","handleClick","ButtonWithDisabledTooltip","fullWidth","MantineActionIcon","loaderProps","type","Group"],"mappings":";;;;+BA+BaA;;;eAAAA;;;;;;oBAtBN;mCAE2B;yCACsC;AAmBjE,IAAMA,aAAaC,IAAAA,wBAAkB,EACxC,iBAAiFC;QAA/EC,yBAAAA,iBAAiBC,kBAAAA,UAAUC,8BAAAA,sBAAsBC,iBAAAA,SAASC,iBAAAA,SAAYC;QAAtEL;QAAiBC;QAAUC;QAAsBC;QAASC;;IACxD,IAAiCE,wBAAAA,IAAAA,wCAAmB,EAACF,UAA9CG,YAA0BD,sBAA1BC,WAAWC,cAAeF,sBAAfE;IAClB,qBACI,qBAACC,oDAAyB;QACtBR,UAAUA;QACVD,iBAAiBA;QACjBE,sBAAsBA;QACtBQ,WAAWL,OAAOK,SAAS;kBAE3B,cAAA,qBAACC,gBAAiB;YACdC,aAAa;gBAACC,MAAM;YAAM;YAC1Bd,KAAKA;YACLI,SAASI,aAAaJ;YACtBC,SAASI;YACTP,UAAUA;WACNI;;AAIpB;AAEJR,WAAWiB,KAAK,GAAGH,gBAAiB,CAACG,KAAK"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/action-icon/ActionIcon.tsx"],"sourcesContent":["import {\n ActionIcon as MantineActionIcon,\n ActionIconCssVariables,\n ActionIconGroup,\n type ActionIconProps as MantineActionIconProps,\n ActionIconStylesNames,\n ActionIconVariant,\n Factory,\n polymorphicFactory,\n} from '@mantine/core';\nimport {MouseEventHandler} from 'react';\nimport {useClickWithLoading} from '../../hooks/useClickWithLoading';\nimport {ButtonWithDisabledTooltip, ButtonWithDisabledTooltipProps} from '../button/ButtonWithDisabledTooltip';\n\nexport interface ActionIconProps extends MantineActionIconProps, ButtonWithDisabledTooltipProps {\n /* Handler executed on click */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\n\ntype ActionIconOverloadFactory = Factory<{\n props: ActionIconProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ActionIconStylesNames;\n vars: ActionIconCssVariables;\n variant: ActionIconVariant;\n staticComponents: {\n Group: typeof ActionIconGroup;\n };\n}>;\n\nexport const ActionIcon = polymorphicFactory<ActionIconOverloadFactory>(\n ({disabledTooltip, disabled, disabledTooltipProps, loading, onClick, ...others}, ref) => {\n const {isLoading, handleClick} = useClickWithLoading(onClick);\n return (\n <ButtonWithDisabledTooltip\n disabled={disabled}\n disabledTooltip={disabledTooltip}\n disabledTooltipProps={disabledTooltipProps}\n fullWidth={others.fullWidth}\n >\n <MantineActionIcon\n loaderProps={{type: 'oval'}}\n ref={ref}\n loading={isLoading || loading}\n onClick={handleClick}\n disabled={disabled}\n {...others}\n />\n </ButtonWithDisabledTooltip>\n );\n },\n);\nActionIcon.Group = MantineActionIcon.Group;\n"],"names":["ActionIcon","polymorphicFactory","ref","disabledTooltip","disabled","disabledTooltipProps","loading","onClick","others","useClickWithLoading","isLoading","handleClick","ButtonWithDisabledTooltip","fullWidth","MantineActionIcon","loaderProps","type","Group"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BA+BaA;;;eAAAA;;;;;;oBAtBN;mCAE2B;yCACsC;AAmBjE,IAAMA,aAAaC,IAAAA,wBAAkB,EACxC,iBAAiFC;QAA/EC,yBAAAA,iBAAiBC,kBAAAA,UAAUC,8BAAAA,sBAAsBC,iBAAAA,SAASC,iBAAAA,SAAYC;QAAtEL;QAAiBC;QAAUC;QAAsBC;QAASC;;IACxD,IAAiCE,wBAAAA,IAAAA,wCAAmB,EAACF,UAA9CG,YAA0BD,sBAA1BC,WAAWC,cAAeF,sBAAfE;IAClB,qBACI,qBAACC,oDAAyB;QACtBR,UAAUA;QACVD,iBAAiBA;QACjBE,sBAAsBA;QACtBQ,WAAWL,OAAOK,SAAS;kBAE3B,cAAA,qBAACC,gBAAiB;YACdC,aAAa;gBAACC,MAAM;YAAM;YAC1Bd,KAAKA;YACLI,SAASI,aAAaJ;YACtBC,SAASI;YACTP,UAAUA;WACNI;;AAIpB;AAEJR,WAAWiB,KAAK,GAAGH,gBAAiB,CAACG,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/action-icon/index.ts"],"sourcesContent":["export * from './ActionIcon';\n"],"names":[],"mappings":";;;;;uBAAc"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/action-icon/index.ts"],"sourcesContent":["export * from './ActionIcon';\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;uBAAc"}
|
|
@@ -13,7 +13,7 @@ var _core = require("@mantine/core");
|
|
|
13
13
|
var BlankSlate = function(param) {
|
|
14
14
|
var children = param.children, _param_withBorder = param.withBorder, withBorder = _param_withBorder === void 0 ? true : _param_withBorder;
|
|
15
15
|
return /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Paper, {
|
|
16
|
-
shadow: withBorder &&
|
|
16
|
+
shadow: withBorder && 'xs',
|
|
17
17
|
p: "xl",
|
|
18
18
|
withBorder: withBorder,
|
|
19
19
|
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Stack, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/blank-slate/BlankSlate.tsx"],"sourcesContent":["import {Paper, Stack} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\ninterface BlankSlateProps {\n /**\n * Whether the Blankslate render with a border\n *\n * @default true\n */\n withBorder?: boolean;\n}\n\nexport const BlankSlate: FunctionComponent<PropsWithChildren<BlankSlateProps>> = ({children, withBorder = true}) => (\n <Paper shadow={withBorder && 'xs'} p=\"xl\" withBorder={withBorder}>\n <Stack align=\"center\">{children}</Stack>\n </Paper>\n);\n"],"names":["BlankSlate","children","withBorder","Paper","shadow","p","Stack","align"],"mappings":";;;;+BAYaA;;;eAAAA;;;;oBAZc;AAYpB,IAAMA,aAAoE;QAAEC,iBAAAA,oCAAUC,YAAAA,4CAAa;yBACtG,qBAACC,WAAK;QAACC,QAAQF,cAAc;QAAMG,GAAE;QAAKH,YAAYA;kBAClD,cAAA,qBAACI,WAAK;YAACC,OAAM;sBAAUN"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/blank-slate/BlankSlate.tsx"],"sourcesContent":["import {Paper, Stack} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\ninterface BlankSlateProps {\n /**\n * Whether the Blankslate render with a border\n *\n * @default true\n */\n withBorder?: boolean;\n}\n\nexport const BlankSlate: FunctionComponent<PropsWithChildren<BlankSlateProps>> = ({children, withBorder = true}) => (\n <Paper shadow={withBorder && 'xs'} p=\"xl\" withBorder={withBorder}>\n <Stack align=\"center\">{children}</Stack>\n </Paper>\n);\n"],"names":["BlankSlate","children","withBorder","Paper","shadow","p","Stack","align"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAYaA;;;eAAAA;;;;oBAZc;AAYpB,IAAMA,aAAoE;QAAEC,iBAAAA,oCAAUC,YAAAA,4CAAa;yBACtG,qBAACC,WAAK;QAACC,QAAQF,cAAc;QAAMG,GAAE;QAAKH,YAAYA;kBAClD,cAAA,qBAACI,WAAK;YAACC,OAAM;sBAAUN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/blank-slate/index.ts"],"sourcesContent":["export * from './BlankSlate';\n"],"names":[],"mappings":";;;;;uBAAc"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/blank-slate/index.ts"],"sourcesContent":["export * from './BlankSlate';\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;uBAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/browser-preview/BrowserPreview.tsx"],"sourcesContent":["import {InfoSize16Px} from '@coveord/plasma-react-icons';\nimport {Box, ColorSwatch, Flex, Group, Stack, StackProps, Text, Title, Tooltip, useMantineTheme} from '@mantine/core';\nimport cx from 'clsx';\nimport {PropsWithChildren} from 'react';\nimport BrowserPreviewClasses from './BrowserPreview.module.css';\n\nexport interface BrowserPreviewProps extends StackProps {\n /**\n * Text to display in a tooltip in the header.\n *\n */\n headerTooltip?: string;\n /**\n * Custom title to be displayed at the center of the header.\n */\n title?: string;\n}\n\nexport const BrowserPreview = ({\n children,\n headerTooltip,\n title,\n className,\n ...others\n}: PropsWithChildren<BrowserPreviewProps>) => {\n const theme = useMantineTheme();\n return (\n <Stack className={cx(BrowserPreviewClasses.root, className)} gap={0} maw={544} mih={0} {...others}>\n <Box>\n <Group className={BrowserPreviewClasses.header} justify=\"space-between\" px=\"sm\" py=\"xs\" bg=\"gray.1\">\n <Group gap=\"xs\">\n <Title c=\"gray.6\" order={4}>\n Preview\n </Title>\n {!!headerTooltip && (\n <Tooltip label={headerTooltip} position=\"right\" maw={400}>\n <InfoSize16Px height={16} className={BrowserPreviewClasses.infoIcon} />\n </Tooltip>\n )}\n </Group>\n <Text lineClamp={1} color=\"gray.6\">\n {title}\n </Text>\n <Group gap=\"xs\">\n <ColorSwatch color={theme.colors.gray[3]} />\n <ColorSwatch color={theme.colors.gray[3]} />\n <ColorSwatch color={theme.colors.gray[3]} />\n </Group>\n </Group>\n </Box>\n <Flex className={BrowserPreviewClasses.content} p=\"xl\" direction=\"column\">\n {children}\n </Flex>\n </Stack>\n );\n};\n"],"names":["BrowserPreview","children","headerTooltip","title","className","others","theme","useMantineTheme","Stack","cx","BrowserPreviewClasses","root","gap","maw","mih","Box","Group","header","justify","px","py","bg","Title","c","order","Tooltip","label","position","InfoSize16Px","height","infoIcon","Text","lineClamp","color","ColorSwatch","colors","gray","Flex","content","p","direction"],"mappings":";;;;+BAkBaA;;;eAAAA;;;;;;;;gCAlBc;oBAC2E;6DACvF;gFAEmB;AAc3B,IAAMA,iBAAiB;QAC1BC,kBAAAA,UACAC,uBAAAA,eACAC,eAAAA,OACAC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAME,QAAQC,IAAAA,qBAAe;IAC7B,qBACI,sBAACC,WAAK;QAACJ,WAAWK,IAAAA,aAAE,EAACC,gCAAqB,CAACC,IAAI,EAAEP;QAAYQ,KAAK;QAAGC,KAAK;QAAKC,KAAK;OAAOT;;0BACvF,qBAACU,SAAG;0BACA,cAAA,sBAACC,WAAK;oBAACZ,WAAWM,gCAAqB,CAACO,MAAM;oBAAEC,SAAQ;oBAAgBC,IAAG;oBAAKC,IAAG;oBAAKC,IAAG;;sCACvF,sBAACL,WAAK;4BAACJ,KAAI;;8CACP,qBAACU,WAAK;oCAACC,GAAE;oCAASC,OAAO;8CAAG;;gCAG3B,CAAC,CAACtB,+BACC,qBAACuB,aAAO;oCAACC,OAAOxB;oCAAeyB,UAAS;oCAAQd,KAAK;8CACjD,cAAA,qBAACe,8BAAY;wCAACC,QAAQ;wCAAIzB,WAAWM,gCAAqB,CAACoB,QAAQ;;;;;sCAI/E,qBAACC,UAAI;4BAACC,WAAW;4BAAGC,OAAM;sCACrB9B;;sCAEL,sBAACa,WAAK;4BAACJ,KAAI;;8CACP,qBAACsB,iBAAW;oCAACD,OAAO3B,MAAM6B,MAAM,CAACC,IAAI,CAAC,EAAE;;8CACxC,qBAACF,iBAAW;oCAACD,OAAO3B,MAAM6B,MAAM,CAACC,IAAI,CAAC,EAAE;;8CACxC,qBAACF,iBAAW;oCAACD,OAAO3B,MAAM6B,MAAM,CAACC,IAAI,CAAC,EAAE;;;;;;;0BAIpD,qBAACC,UAAI;gBAACjC,WAAWM,gCAAqB,CAAC4B,OAAO;gBAAEC,GAAE;gBAAKC,WAAU;0BAC5DvC;;;;AAIjB"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/browser-preview/BrowserPreview.tsx"],"sourcesContent":["import {InfoSize16Px} from '@coveord/plasma-react-icons';\nimport {Box, ColorSwatch, Flex, Group, Stack, StackProps, Text, Title, Tooltip, useMantineTheme} from '@mantine/core';\nimport cx from 'clsx';\nimport {PropsWithChildren} from 'react';\nimport BrowserPreviewClasses from './BrowserPreview.module.css';\n\nexport interface BrowserPreviewProps extends StackProps {\n /**\n * Text to display in a tooltip in the header.\n *\n */\n headerTooltip?: string;\n /**\n * Custom title to be displayed at the center of the header.\n */\n title?: string;\n}\n\nexport const BrowserPreview = ({\n children,\n headerTooltip,\n title,\n className,\n ...others\n}: PropsWithChildren<BrowserPreviewProps>) => {\n const theme = useMantineTheme();\n return (\n <Stack className={cx(BrowserPreviewClasses.root, className)} gap={0} maw={544} mih={0} {...others}>\n <Box>\n <Group className={BrowserPreviewClasses.header} justify=\"space-between\" px=\"sm\" py=\"xs\" bg=\"gray.1\">\n <Group gap=\"xs\">\n <Title c=\"gray.6\" order={4}>\n Preview\n </Title>\n {!!headerTooltip && (\n <Tooltip label={headerTooltip} position=\"right\" maw={400}>\n <InfoSize16Px height={16} className={BrowserPreviewClasses.infoIcon} />\n </Tooltip>\n )}\n </Group>\n <Text lineClamp={1} color=\"gray.6\">\n {title}\n </Text>\n <Group gap=\"xs\">\n <ColorSwatch color={theme.colors.gray[3]} />\n <ColorSwatch color={theme.colors.gray[3]} />\n <ColorSwatch color={theme.colors.gray[3]} />\n </Group>\n </Group>\n </Box>\n <Flex className={BrowserPreviewClasses.content} p=\"xl\" direction=\"column\">\n {children}\n </Flex>\n </Stack>\n );\n};\n"],"names":["BrowserPreview","children","headerTooltip","title","className","others","theme","useMantineTheme","Stack","cx","BrowserPreviewClasses","root","gap","maw","mih","Box","Group","header","justify","px","py","bg","Title","c","order","Tooltip","label","position","InfoSize16Px","height","infoIcon","Text","lineClamp","color","ColorSwatch","colors","gray","Flex","content","p","direction"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAkBaA;;;eAAAA;;;;;;;;gCAlBc;oBAC2E;6DACvF;gFAEmB;AAc3B,IAAMA,iBAAiB;QAC1BC,kBAAAA,UACAC,uBAAAA,eACAC,eAAAA,OACAC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAME,QAAQC,IAAAA,qBAAe;IAC7B,qBACI,sBAACC,WAAK;QAACJ,WAAWK,IAAAA,aAAE,EAACC,gCAAqB,CAACC,IAAI,EAAEP;QAAYQ,KAAK;QAAGC,KAAK;QAAKC,KAAK;OAAOT;;0BACvF,qBAACU,SAAG;0BACA,cAAA,sBAACC,WAAK;oBAACZ,WAAWM,gCAAqB,CAACO,MAAM;oBAAEC,SAAQ;oBAAgBC,IAAG;oBAAKC,IAAG;oBAAKC,IAAG;;sCACvF,sBAACL,WAAK;4BAACJ,KAAI;;8CACP,qBAACU,WAAK;oCAACC,GAAE;oCAASC,OAAO;8CAAG;;gCAG3B,CAAC,CAACtB,+BACC,qBAACuB,aAAO;oCAACC,OAAOxB;oCAAeyB,UAAS;oCAAQd,KAAK;8CACjD,cAAA,qBAACe,8BAAY;wCAACC,QAAQ;wCAAIzB,WAAWM,gCAAqB,CAACoB,QAAQ;;;;;sCAI/E,qBAACC,UAAI;4BAACC,WAAW;4BAAGC,OAAM;sCACrB9B;;sCAEL,sBAACa,WAAK;4BAACJ,KAAI;;8CACP,qBAACsB,iBAAW;oCAACD,OAAO3B,MAAM6B,MAAM,CAACC,IAAI,CAAC,EAAE;;8CACxC,qBAACF,iBAAW;oCAACD,OAAO3B,MAAM6B,MAAM,CAACC,IAAI,CAAC,EAAE;;8CACxC,qBAACF,iBAAW;oCAACD,OAAO3B,MAAM6B,MAAM,CAACC,IAAI,CAAC,EAAE;;;;;;;0BAIpD,qBAACC,UAAI;gBAACjC,WAAWM,gCAAqB,CAAC4B,OAAO;gBAAEC,GAAE;gBAAKC,WAAU;0BAC5DvC;;;;AAIjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/browser-preview/index.ts"],"sourcesContent":["export * from './BrowserPreview';\n"],"names":[],"mappings":";;;;;uBAAc"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/browser-preview/index.ts"],"sourcesContent":["export * from './BrowserPreview';\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;uBAAc"}
|
|
@@ -15,13 +15,13 @@ var _core = require("@mantine/core");
|
|
|
15
15
|
var _useClickWithLoading = require("../../hooks/useClickWithLoading");
|
|
16
16
|
var _ButtonWithDisabledTooltip = require("./ButtonWithDisabledTooltip");
|
|
17
17
|
var Button = (0, _core.polymorphicFactory)(function(_param, ref) {
|
|
18
|
-
var disabledTooltip = _param.disabledTooltip, disabled = _param.disabled, disabledTooltipProps = _param.disabledTooltipProps, loading = _param.loading, onClick = _param.onClick, dataDisabled = _param[
|
|
18
|
+
var disabledTooltip = _param.disabledTooltip, disabled = _param.disabled, disabledTooltipProps = _param.disabledTooltipProps, loading = _param.loading, onClick = _param.onClick, dataDisabled = _param['data-disabled'], others = _object_without_properties._(_param, [
|
|
19
19
|
"disabledTooltip",
|
|
20
20
|
"disabled",
|
|
21
21
|
"disabledTooltipProps",
|
|
22
22
|
"loading",
|
|
23
23
|
"onClick",
|
|
24
|
-
|
|
24
|
+
'data-disabled'
|
|
25
25
|
]);
|
|
26
26
|
var _useClickWithLoading1 = (0, _useClickWithLoading.useClickWithLoading)(onClick), isLoading = _useClickWithLoading1.isLoading, handleClick = _useClickWithLoading1.handleClick;
|
|
27
27
|
return /*#__PURE__*/ (0, _jsxruntime.jsx)(_ButtonWithDisabledTooltip.ButtonWithDisabledTooltip, {
|
|
@@ -31,7 +31,7 @@ var Button = (0, _core.polymorphicFactory)(function(_param, ref) {
|
|
|
31
31
|
fullWidth: others.fullWidth,
|
|
32
32
|
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Button, _object_spread._({
|
|
33
33
|
loaderProps: {
|
|
34
|
-
variant:
|
|
34
|
+
variant: 'oval'
|
|
35
35
|
},
|
|
36
36
|
ref: ref,
|
|
37
37
|
loading: isLoading || loading,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import {\n ButtonGroup,\n Factory,\n Button as MantineButton,\n ButtonProps as MantineButtonProps,\n polymorphicFactory,\n} from '@mantine/core';\nimport {ButtonCssVariables, ButtonStylesNames, ButtonVariant} from '@mantine/core/lib/components/Button/Button';\nimport {MouseEventHandler} from 'react';\nimport {useClickWithLoading} from '../../hooks/useClickWithLoading';\nimport {ButtonWithDisabledTooltip, ButtonWithDisabledTooltipProps} from './ButtonWithDisabledTooltip';\n\nexport interface ButtonProps extends MantineButtonProps, ButtonWithDisabledTooltipProps {\n /* Handler executed on click */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\n\ntype ButtonOverloadFactory = Factory<{\n props: ButtonProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ButtonStylesNames;\n vars: ButtonCssVariables;\n variant: ButtonVariant;\n staticComponents: {\n Group: typeof ButtonGroup;\n };\n}>;\n\nexport const Button = polymorphicFactory<ButtonOverloadFactory>(\n (\n {disabledTooltip, disabled, disabledTooltipProps, loading, onClick, 'data-disabled': dataDisabled, ...others},\n ref,\n ) => {\n const {isLoading, handleClick} = useClickWithLoading(onClick);\n return (\n <ButtonWithDisabledTooltip\n disabled={disabled || dataDisabled}\n disabledTooltip={disabledTooltip}\n disabledTooltipProps={disabledTooltipProps}\n fullWidth={others.fullWidth}\n >\n <MantineButton\n loaderProps={{variant: 'oval'}}\n ref={ref}\n loading={isLoading || loading}\n onClick={dataDisabled ? (e) => e.preventDefault() : handleClick}\n disabled={disabled || dataDisabled}\n data-loading={isLoading || loading || undefined}\n {...others}\n />\n </ButtonWithDisabledTooltip>\n );\n },\n);\nButton.Group = MantineButton.Group;\n"],"names":["Button","polymorphicFactory","ref","disabledTooltip","disabled","disabledTooltipProps","loading","onClick","dataDisabled","others","useClickWithLoading","isLoading","handleClick","ButtonWithDisabledTooltip","fullWidth","MantineButton","loaderProps","variant","e","preventDefault","data-loading","undefined","Group"],"mappings":";;;;+BA6BaA;;;eAAAA;;;;;;oBAvBN;mCAG2B;yCACsC;AAmBjE,IAAMA,SAASC,IAAAA,wBAAkB,EACpC,iBAEIC;QADCC,yBAAAA,iBAAiBC,kBAAAA,UAAUC,8BAAAA,sBAAsBC,iBAAAA,SAASC,iBAAAA,SAAS,AAAiBC,sBAAjB,kBAAkCC;QAArGN;QAAiBC;QAAUC;QAAsBC;QAASC;QAAS;;IAGpE,IAAiCG,wBAAAA,IAAAA,wCAAmB,EAACH,UAA9CI,YAA0BD,sBAA1BC,WAAWC,cAAeF,sBAAfE;IAClB,qBACI,qBAACC,oDAAyB;QACtBT,UAAUA,YAAYI;QACtBL,iBAAiBA;QACjBE,sBAAsBA;QACtBS,WAAWL,OAAOK,SAAS;kBAE3B,cAAA,qBAACC,YAAa;YACVC,aAAa;gBAACC,SAAS;YAAM;YAC7Bf,KAAKA;YACLI,SAASK,aAAaL;YACtBC,SAASC,eAAe,SAACU;uBAAMA,EAAEC,cAAc;gBAAKP;YACpDR,UAAUA,YAAYI;YACtBY,gBAAcT,aAAaL,WAAWe;WAClCZ;;AAIpB;AAEJT,OAAOsB,KAAK,GAAGP,YAAa,CAACO,KAAK"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import {\n ButtonGroup,\n Factory,\n Button as MantineButton,\n ButtonProps as MantineButtonProps,\n polymorphicFactory,\n} from '@mantine/core';\nimport {ButtonCssVariables, ButtonStylesNames, ButtonVariant} from '@mantine/core/lib/components/Button/Button';\nimport {MouseEventHandler} from 'react';\nimport {useClickWithLoading} from '../../hooks/useClickWithLoading';\nimport {ButtonWithDisabledTooltip, ButtonWithDisabledTooltipProps} from './ButtonWithDisabledTooltip';\n\nexport interface ButtonProps extends MantineButtonProps, ButtonWithDisabledTooltipProps {\n /* Handler executed on click */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\n\ntype ButtonOverloadFactory = Factory<{\n props: ButtonProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ButtonStylesNames;\n vars: ButtonCssVariables;\n variant: ButtonVariant;\n staticComponents: {\n Group: typeof ButtonGroup;\n };\n}>;\n\nexport const Button = polymorphicFactory<ButtonOverloadFactory>(\n (\n {disabledTooltip, disabled, disabledTooltipProps, loading, onClick, 'data-disabled': dataDisabled, ...others},\n ref,\n ) => {\n const {isLoading, handleClick} = useClickWithLoading(onClick);\n return (\n <ButtonWithDisabledTooltip\n disabled={disabled || dataDisabled}\n disabledTooltip={disabledTooltip}\n disabledTooltipProps={disabledTooltipProps}\n fullWidth={others.fullWidth}\n >\n <MantineButton\n loaderProps={{variant: 'oval'}}\n ref={ref}\n loading={isLoading || loading}\n onClick={dataDisabled ? (e) => e.preventDefault() : handleClick}\n disabled={disabled || dataDisabled}\n data-loading={isLoading || loading || undefined}\n {...others}\n />\n </ButtonWithDisabledTooltip>\n );\n },\n);\nButton.Group = MantineButton.Group;\n"],"names":["Button","polymorphicFactory","ref","disabledTooltip","disabled","disabledTooltipProps","loading","onClick","dataDisabled","others","useClickWithLoading","isLoading","handleClick","ButtonWithDisabledTooltip","fullWidth","MantineButton","loaderProps","variant","e","preventDefault","data-loading","undefined","Group"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BA6BaA;;;eAAAA;;;;;;oBAvBN;mCAG2B;yCACsC;AAmBjE,IAAMA,SAASC,IAAAA,wBAAkB,EACpC,iBAEIC;QADCC,yBAAAA,iBAAiBC,kBAAAA,UAAUC,8BAAAA,sBAAsBC,iBAAAA,SAASC,iBAAAA,SAAS,AAAiBC,sBAAjB,kBAAkCC;QAArGN;QAAiBC;QAAUC;QAAsBC;QAASC;QAAS;;IAGpE,IAAiCG,wBAAAA,IAAAA,wCAAmB,EAACH,UAA9CI,YAA0BD,sBAA1BC,WAAWC,cAAeF,sBAAfE;IAClB,qBACI,qBAACC,oDAAyB;QACtBT,UAAUA,YAAYI;QACtBL,iBAAiBA;QACjBE,sBAAsBA;QACtBS,WAAWL,OAAOK,SAAS;kBAE3B,cAAA,qBAACC,YAAa;YACVC,aAAa;gBAACC,SAAS;YAAM;YAC7Bf,KAAKA;YACLI,SAASK,aAAaL;YACtBC,SAASC,eAAe,SAACU;uBAAMA,EAAEC,cAAc;gBAAKP;YACpDR,UAAUA,YAAYI;YACtBY,gBAAcT,aAAaL,WAAWe;WAClCZ;;AAIpB;AAEJT,OAAOsB,KAAK,GAAGP,YAAa,CAACO,KAAK"}
|
|
@@ -30,10 +30,10 @@ var _ButtonWithDisabledTooltip = /*#__PURE__*/ (0, _react.forwardRef)(function(_
|
|
|
30
30
|
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Box, _object_spread_props._(_object_spread._({
|
|
31
31
|
ref: ref,
|
|
32
32
|
style: {
|
|
33
|
-
|
|
34
|
-
cursor:
|
|
33
|
+
'&:hover': {
|
|
34
|
+
cursor: 'not-allowed'
|
|
35
35
|
},
|
|
36
|
-
width: fullWidth &&
|
|
36
|
+
width: fullWidth && '100%'
|
|
37
37
|
}
|
|
38
38
|
}, others), {
|
|
39
39
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/button/ButtonWithDisabledTooltip.tsx"],"sourcesContent":["import {Box, Tooltip, TooltipProps} from '@mantine/core';\nimport {ReactNode, forwardRef} from 'react';\n\nimport {createPolymorphicComponent} from '../../utils';\n\nexport interface ButtonWithDisabledTooltipProps {\n /**\n * The tooltip message to display when disabled\n */\n disabledTooltip?: string;\n /**\n * Whether the button underneath the tooltip is disabled\n */\n disabled?: boolean;\n children?: ReactNode;\n /**\n * Additional tooltip props to set on the disabled button tooltip\n */\n disabledTooltipProps?: Omit<TooltipProps, 'disabled' | 'label' | 'children'>;\n /**\n * Sets button width to 100% of parent element\n */\n fullWidth?: boolean;\n}\n\nconst _ButtonWithDisabledTooltip = forwardRef<HTMLDivElement, ButtonWithDisabledTooltipProps>(\n ({disabledTooltip, disabled, children, disabledTooltipProps, fullWidth, ...others}, ref) =>\n disabledTooltip ? (\n <Tooltip label={disabledTooltip} disabled={!disabled} {...disabledTooltipProps}>\n <Box ref={ref} style={{'&:hover': {cursor: 'not-allowed'}, width: fullWidth && '100%'}} {...others}>\n {children}\n </Box>\n </Tooltip>\n ) : (\n <>{children}</>\n ),\n);\n\nexport const ButtonWithDisabledTooltip = createPolymorphicComponent<'div', ButtonWithDisabledTooltipProps>(\n _ButtonWithDisabledTooltip,\n);\n"],"names":["ButtonWithDisabledTooltip","_ButtonWithDisabledTooltip","forwardRef","ref","disabledTooltip","disabled","children","disabledTooltipProps","fullWidth","others","Tooltip","label","Box","style","cursor","width","createPolymorphicComponent"],"mappings":";;;;+BAsCaA;;;eAAAA;;;;;;;oBAtC4B;qBACL;qBAEK;AAsBzC,IAAMC,2CAA6BC,IAAAA,iBAAU,EACzC,iBAAoFC;QAAlFC,yBAAAA,iBAAiBC,kBAAAA,UAAUC,kBAAAA,UAAUC,8BAAAA,sBAAsBC,mBAAAA,WAAcC;QAAzEL;QAAiBC;QAAUC;QAAUC;QAAsBC;;WACzDJ,gCACI,qBAACM,aAAO;QAACC,OAAOP;QAAiBC,UAAU,CAACA;OAAcE;kBACtD,cAAA,qBAACK,SAAG;YAACT,KAAKA;YAAKU,OAAO;gBAAC,WAAW;oBAACC,QAAQ;gBAAa;gBAAGC,OAAOP,aAAa;YAAM;WAAOC;sBACvFH;;wBAIT;kBAAGA
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/button/ButtonWithDisabledTooltip.tsx"],"sourcesContent":["import {Box, Tooltip, TooltipProps} from '@mantine/core';\nimport {ReactNode, forwardRef} from 'react';\n\nimport {createPolymorphicComponent} from '../../utils';\n\nexport interface ButtonWithDisabledTooltipProps {\n /**\n * The tooltip message to display when disabled\n */\n disabledTooltip?: string;\n /**\n * Whether the button underneath the tooltip is disabled\n */\n disabled?: boolean;\n children?: ReactNode;\n /**\n * Additional tooltip props to set on the disabled button tooltip\n */\n disabledTooltipProps?: Omit<TooltipProps, 'disabled' | 'label' | 'children'>;\n /**\n * Sets button width to 100% of parent element\n */\n fullWidth?: boolean;\n}\n\nconst _ButtonWithDisabledTooltip = forwardRef<HTMLDivElement, ButtonWithDisabledTooltipProps>(\n ({disabledTooltip, disabled, children, disabledTooltipProps, fullWidth, ...others}, ref) =>\n disabledTooltip ? (\n <Tooltip label={disabledTooltip} disabled={!disabled} {...disabledTooltipProps}>\n <Box ref={ref} style={{'&:hover': {cursor: 'not-allowed'}, width: fullWidth && '100%'}} {...others}>\n {children}\n </Box>\n </Tooltip>\n ) : (\n <>{children}</>\n ),\n);\n\nexport const ButtonWithDisabledTooltip = createPolymorphicComponent<'div', ButtonWithDisabledTooltipProps>(\n _ButtonWithDisabledTooltip,\n);\n"],"names":["ButtonWithDisabledTooltip","_ButtonWithDisabledTooltip","forwardRef","ref","disabledTooltip","disabled","children","disabledTooltipProps","fullWidth","others","Tooltip","label","Box","style","cursor","width","createPolymorphicComponent"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAsCaA;;;eAAAA;;;;;;;oBAtC4B;qBACL;qBAEK;AAsBzC,IAAMC,2CAA6BC,IAAAA,iBAAU,EACzC,iBAAoFC;QAAlFC,yBAAAA,iBAAiBC,kBAAAA,UAAUC,kBAAAA,UAAUC,8BAAAA,sBAAsBC,mBAAAA,WAAcC;QAAzEL;QAAiBC;QAAUC;QAAUC;QAAsBC;;WACzDJ,gCACI,qBAACM,aAAO;QAACC,OAAOP;QAAiBC,UAAU,CAACA;OAAcE;kBACtD,cAAA,qBAACK,SAAG;YAACT,KAAKA;YAAKU,OAAO;gBAAC,WAAW;oBAACC,QAAQ;gBAAa;gBAAGC,OAAOP,aAAa;YAAM;WAAOC;sBACvFH;;wBAIT;kBAAGA;;;AAIR,IAAMN,4BAA4BgB,IAAAA,iCAA0B,EAC/Df"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/button/index.ts"],"sourcesContent":["export * from './Button';\nexport {type ButtonWithDisabledTooltipProps} from './ButtonWithDisabledTooltip';\n"],"names":[],"mappings":";;;;;uBAAc"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/button/index.ts"],"sourcesContent":["export * from './Button';\nexport {type ButtonWithDisabledTooltipProps} from './ButtonWithDisabledTooltip';\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;uBAAc"}
|
|
@@ -29,13 +29,13 @@ var _CodeEditormodulecss = /*#__PURE__*/ _interop_require_default._(require("./C
|
|
|
29
29
|
var _xml = require("./languages/xml");
|
|
30
30
|
var _search = require("./search");
|
|
31
31
|
var defaultProps = {
|
|
32
|
-
language:
|
|
33
|
-
monacoLoader:
|
|
34
|
-
defaultValue:
|
|
32
|
+
language: 'plaintext',
|
|
33
|
+
monacoLoader: 'local',
|
|
34
|
+
defaultValue: '',
|
|
35
35
|
minHeight: 300
|
|
36
36
|
};
|
|
37
37
|
var CodeEditor = function(props) {
|
|
38
|
-
var _useProps = (0, _core.useProps)(
|
|
38
|
+
var _useProps = (0, _core.useProps)('CodeEditor', defaultProps, props), language = _useProps.language, defaultValue = _useProps.defaultValue, onChange = _useProps.onChange, onCopy = _useProps.onCopy, onSearch = _useProps.onSearch, onFocus = _useProps.onFocus, value = _useProps.value, label = _useProps.label, required = _useProps.required, labelProps = _useProps.labelProps, error = _useProps.error, errorProps = _useProps.errorProps, description = _useProps.description, descriptionProps = _useProps.descriptionProps, minHeight = _useProps.minHeight, maxHeight = _useProps.maxHeight, disabled = _useProps.disabled, monacoLoader = _useProps.monacoLoader, others = _object_without_properties._(_useProps, [
|
|
39
39
|
"language",
|
|
40
40
|
"defaultValue",
|
|
41
41
|
"onChange",
|
|
@@ -60,7 +60,7 @@ var CodeEditor = function(props) {
|
|
|
60
60
|
value: value,
|
|
61
61
|
defaultValue: defaultValue,
|
|
62
62
|
onChange: onChange,
|
|
63
|
-
finalValue:
|
|
63
|
+
finalValue: ''
|
|
64
64
|
}), 2), _value = _useUncontrolled[0], handleChange = _useUncontrolled[1];
|
|
65
65
|
var _useParentHeight = _sliced_to_array._((0, _hooks1.useParentHeight)(), 2), parentHeight = _useParentHeight[0], ref = _useParentHeight[1];
|
|
66
66
|
var editorRef = (0, _react1.useRef)(null);
|
|
@@ -93,16 +93,15 @@ var CodeEditor = function(props) {
|
|
|
93
93
|
};
|
|
94
94
|
}();
|
|
95
95
|
var registerLanguages = function(monaco) {
|
|
96
|
-
if (monaco && language ===
|
|
96
|
+
if (monaco && language === 'xml') {
|
|
97
97
|
_xml.XML.register(monaco);
|
|
98
98
|
}
|
|
99
99
|
};
|
|
100
100
|
var handleSearch = function() {
|
|
101
101
|
if (editorRef.current) {
|
|
102
|
-
var _onSearch;
|
|
103
102
|
editorRef.current.focus();
|
|
104
|
-
editorRef.current.trigger(
|
|
105
|
-
|
|
103
|
+
editorRef.current.trigger('editor', 'actions.find', '');
|
|
104
|
+
onSearch === null || onSearch === void 0 ? void 0 : onSearch();
|
|
106
105
|
}
|
|
107
106
|
};
|
|
108
107
|
var _useState1 = _sliced_to_array._((0, _react1.useState)(false), 2), hasMonacoError = _useState1[0], setHasMonacoError = _useState1[1];
|
|
@@ -110,7 +109,7 @@ var CodeEditor = function(props) {
|
|
|
110
109
|
var theme = (0, _core.useMantineTheme)();
|
|
111
110
|
var colorScheme = (0, _core.useMantineColorScheme)().colorScheme;
|
|
112
111
|
(0, _react1.useEffect)(function() {
|
|
113
|
-
if (monacoLoader ===
|
|
112
|
+
if (monacoLoader === 'local') {
|
|
114
113
|
loadLocalMonaco();
|
|
115
114
|
} else {
|
|
116
115
|
setLoaded(true);
|
|
@@ -152,8 +151,7 @@ var CodeEditor = function(props) {
|
|
|
152
151
|
/*#__PURE__*/ (0, _jsxruntime.jsx)(_copyToClipboard.CopyToClipboard, {
|
|
153
152
|
value: _value,
|
|
154
153
|
onCopy: function() {
|
|
155
|
-
|
|
156
|
-
return (_onCopy = onCopy) === null || _onCopy === void 0 ? void 0 : _onCopy();
|
|
154
|
+
return onCopy === null || onCopy === void 0 ? void 0 : onCopy();
|
|
157
155
|
}
|
|
158
156
|
})
|
|
159
157
|
]
|
|
@@ -166,12 +164,12 @@ var CodeEditor = function(props) {
|
|
|
166
164
|
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_react.default, {
|
|
167
165
|
onValidate: handleValidate,
|
|
168
166
|
defaultLanguage: language,
|
|
169
|
-
theme: colorScheme ===
|
|
167
|
+
theme: colorScheme === 'light' ? 'light' : 'vs-dark',
|
|
170
168
|
options: {
|
|
171
169
|
minimap: {
|
|
172
170
|
enabled: false
|
|
173
171
|
},
|
|
174
|
-
wordWrap:
|
|
172
|
+
wordWrap: 'on',
|
|
175
173
|
scrollBeyondLastLine: false,
|
|
176
174
|
formatOnPaste: true,
|
|
177
175
|
fontSize: (0, _core.px)(theme.fontSizes.xs),
|
|
@@ -184,8 +182,7 @@ var CodeEditor = function(props) {
|
|
|
184
182
|
editorRef.current = editor;
|
|
185
183
|
registerLanguages(monaco);
|
|
186
184
|
editor.onDidFocusEditorText(function() {
|
|
187
|
-
|
|
188
|
-
return (_onFocus = onFocus) === null || _onFocus === void 0 ? void 0 : _onFocus();
|
|
185
|
+
return onFocus === null || onFocus === void 0 ? void 0 : onFocus();
|
|
189
186
|
});
|
|
190
187
|
editor.onDidBlurEditorText(/*#__PURE__*/ _async_to_generator._(function() {
|
|
191
188
|
return _ts_generator._(this, function(_state) {
|
|
@@ -193,7 +190,7 @@ var CodeEditor = function(props) {
|
|
|
193
190
|
case 0:
|
|
194
191
|
return [
|
|
195
192
|
4,
|
|
196
|
-
editor.getAction(
|
|
193
|
+
editor.getAction('editor.action.formatDocument').run()
|
|
197
194
|
];
|
|
198
195
|
case 1:
|
|
199
196
|
_state.sent();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"sourcesContent":["import {\n Box,\n Center,\n Group,\n Input,\n InputWrapperProps,\n Loader,\n Space,\n Stack,\n StackProps,\n px,\n useMantineColorScheme,\n useMantineTheme,\n useProps,\n} from '@mantine/core';\nimport {useUncontrolled} from '@mantine/hooks';\nimport Editor, {Monaco, loader} from '@monaco-editor/react';\nimport {editor as monacoEditor} from 'monaco-editor';\nimport {FunctionComponent, useEffect, useRef, useState} from 'react';\n\nimport cx from 'clsx';\nimport {useParentHeight} from '../../hooks';\nimport {CopyToClipboard} from '../copyToClipboard';\nimport CodeEditorClasses from './CodeEditor.module.css';\nimport {XML} from './languages/xml';\nimport {Search} from './search';\ninterface CodeEditorProps\n extends Omit<\n InputWrapperProps,\n 'inputContainer' | 'inputWrapperOrder' | 'classNames' | 'styles' | 'vars' | 'onChange'\n >,\n Omit<StackProps, 'onChange'> {\n /**\n * The language syntax of the editor\n *\n * @default 'plaintext'\n */\n language?: 'plaintext' | 'json' | 'markdown' | 'python' | 'xml' | (string & unknown);\n /** Default value for uncontrolled input */\n defaultValue?: string;\n /** Value for controlled input */\n value?: string;\n /** onChange value for controlled input */\n onChange?(value: string): void;\n /** Called whenever the search icon is clicked */\n onSearch?(): void;\n /** Called whenever the copy icon is clicked */\n onCopy?(): void;\n /** Called whenever the code editor gets the focus */\n onFocus?(): void;\n /**\n * The minimal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height is too short, it will use this value as minimum.\n *\n * @default 300\n */\n minHeight?: number;\n /**\n * The maximal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height would be too high for your liking, you can use this prop to set a maximum.\n */\n maxHeight?: number;\n disabled?: boolean;\n /**\n * Defines how the monaco editor files will be loaded.\n * Note that using `'local'` requires [some additional configuration](https://github.com/suren-atoyan/monaco-react#use-monaco-editor-as-an-npm-package).\n *\n * @default 'local'\n */\n monacoLoader?: 'cdn' | 'local';\n}\n\nconst defaultProps: Partial<CodeEditorProps> = {\n language: 'plaintext',\n monacoLoader: 'local',\n defaultValue: '',\n minHeight: 300,\n};\n\nexport const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {\n const {\n language,\n defaultValue,\n onChange,\n onCopy,\n onSearch,\n onFocus,\n value,\n label,\n required,\n labelProps,\n error,\n errorProps,\n description,\n descriptionProps,\n minHeight,\n maxHeight,\n disabled,\n monacoLoader,\n ...others\n } = useProps('CodeEditor', defaultProps, props);\n const [loaded, setLoaded] = useState(false);\n const [_value, handleChange] = useUncontrolled<string>({\n value,\n defaultValue,\n onChange,\n finalValue: '',\n });\n const [parentHeight, ref] = useParentHeight();\n const editorRef = useRef(null);\n const loadLocalMonaco = async () => {\n const monacoInstance = await import('monaco-editor');\n loader.config({monaco: monacoInstance});\n setLoaded(true);\n };\n\n const registerLanguages = (monaco: Monaco) => {\n if (monaco && language === 'xml') {\n XML.register(monaco);\n }\n };\n\n const handleSearch = () => {\n if (editorRef.current) {\n editorRef.current.focus();\n editorRef.current.trigger('editor', 'actions.find', '');\n onSearch?.();\n }\n };\n\n const [hasMonacoError, setHasMonacoError] = useState(false);\n const renderErrorOutline = !!error || hasMonacoError;\n const theme = useMantineTheme();\n const {colorScheme} = useMantineColorScheme();\n\n useEffect(() => {\n if (monacoLoader === 'local') {\n loadLocalMonaco();\n } else {\n setLoaded(true);\n }\n }, []);\n\n const handleValidate = (markers: monacoEditor.IMarker[]) => {\n setHasMonacoError(\n markers.some((marker) => marker.severity === loader.__getMonacoInstance().MarkerSeverity.Error),\n );\n };\n\n const _label = label ? (\n <Input.Label required={required} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description {...descriptionProps}>{description}</Input.Description>\n ) : null;\n\n const _error = error ? (\n <Input.Error mt=\"xs\" {...errorProps}>\n {error}\n </Input.Error>\n ) : (\n <Space h=\"xs\" />\n );\n\n const _header =\n _label || _description ? (\n <Box>\n {_label}\n {_description}\n </Box>\n ) : null;\n\n const _buttons = (\n <Group justify=\"right\" gap={0}>\n <Search handleSearch={handleSearch} />\n <CopyToClipboard value={_value} onCopy={() => onCopy?.()} />\n </Group>\n );\n\n const _editor = loaded ? (\n <Box\n p=\"md\"\n pl=\"xs\"\n className={cx(\n CodeEditorClasses.editor,\n {[CodeEditorClasses.valid]: !renderErrorOutline},\n {[CodeEditorClasses.error]: renderErrorOutline},\n )}\n data-testid=\"editor-wrapper\"\n >\n <Editor\n onValidate={handleValidate}\n defaultLanguage={language}\n theme={colorScheme === 'light' ? 'light' : 'vs-dark'}\n options={{\n minimap: {enabled: false},\n wordWrap: 'on',\n scrollBeyondLastLine: false,\n formatOnPaste: true,\n fontSize: px(theme.fontSizes.xs) as number,\n readOnly: disabled,\n tabSize: 2,\n }}\n value={_value}\n onChange={handleChange}\n onMount={(editor, monaco) => {\n editorRef.current = editor;\n registerLanguages(monaco);\n editor.onDidFocusEditorText(() => onFocus?.());\n editor.onDidBlurEditorText(async () => {\n await editor.getAction('editor.action.formatDocument').run();\n });\n }}\n />\n </Box>\n ) : (\n <Center className={CodeEditorClasses.editor}>\n <Loader />\n </Center>\n );\n\n return (\n <Stack\n justify=\"flex-start\"\n gap={0}\n style={{height: Math.max(parentHeight, minHeight), maxHeight}}\n ref={ref}\n {...others}\n >\n {_header}\n {_buttons}\n {_editor}\n {_error}\n </Stack>\n );\n};\n"],"names":["CodeEditor","defaultProps","language","monacoLoader","defaultValue","minHeight","props","useProps","onChange","onCopy","onSearch","onFocus","value","label","required","labelProps","error","errorProps","description","descriptionProps","maxHeight","disabled","others","useState","loaded","setLoaded","useUncontrolled","finalValue","_value","handleChange","useParentHeight","parentHeight","ref","editorRef","useRef","loadLocalMonaco","monacoInstance","loader","config","monaco","registerLanguages","XML","register","handleSearch","current","focus","trigger","hasMonacoError","setHasMonacoError","renderErrorOutline","theme","useMantineTheme","colorScheme","useMantineColorScheme","useEffect","handleValidate","markers","some","marker","severity","__getMonacoInstance","MarkerSeverity","Error","_label","Input","Label","_description","Description","_error","mt","Space","h","_header","Box","_buttons","Group","justify","gap","Search","CopyToClipboard","_editor","p","pl","className","cx","CodeEditorClasses","editor","valid","data-testid","Editor","onValidate","defaultLanguage","options","minimap","enabled","wordWrap","scrollBeyondLastLine","formatOnPaste","fontSize","px","fontSizes","xs","readOnly","tabSize","onMount","onDidFocusEditorText","onDidBlurEditorText","getAction","run","Center","Loader","Stack","style","height","Math","max"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"sourcesContent":["import {\n Box,\n Center,\n Group,\n Input,\n InputWrapperProps,\n Loader,\n Space,\n Stack,\n StackProps,\n px,\n useMantineColorScheme,\n useMantineTheme,\n useProps,\n} from '@mantine/core';\nimport {useUncontrolled} from '@mantine/hooks';\nimport Editor, {Monaco, loader} from '@monaco-editor/react';\nimport {editor as monacoEditor} from 'monaco-editor';\nimport {FunctionComponent, useEffect, useRef, useState} from 'react';\n\nimport cx from 'clsx';\nimport {useParentHeight} from '../../hooks';\nimport {CopyToClipboard} from '../copyToClipboard';\nimport CodeEditorClasses from './CodeEditor.module.css';\nimport {XML} from './languages/xml';\nimport {Search} from './search';\ninterface CodeEditorProps\n extends Omit<\n InputWrapperProps,\n 'inputContainer' | 'inputWrapperOrder' | 'classNames' | 'styles' | 'vars' | 'onChange'\n >,\n Omit<StackProps, 'onChange'> {\n /**\n * The language syntax of the editor\n *\n * @default 'plaintext'\n */\n language?: 'plaintext' | 'json' | 'markdown' | 'python' | 'xml' | (string & unknown);\n /** Default value for uncontrolled input */\n defaultValue?: string;\n /** Value for controlled input */\n value?: string;\n /** onChange value for controlled input */\n onChange?(value: string): void;\n /** Called whenever the search icon is clicked */\n onSearch?(): void;\n /** Called whenever the copy icon is clicked */\n onCopy?(): void;\n /** Called whenever the code editor gets the focus */\n onFocus?(): void;\n /**\n * The minimal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height is too short, it will use this value as minimum.\n *\n * @default 300\n */\n minHeight?: number;\n /**\n * The maximal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height would be too high for your liking, you can use this prop to set a maximum.\n */\n maxHeight?: number;\n disabled?: boolean;\n /**\n * Defines how the monaco editor files will be loaded.\n * Note that using `'local'` requires [some additional configuration](https://github.com/suren-atoyan/monaco-react#use-monaco-editor-as-an-npm-package).\n *\n * @default 'local'\n */\n monacoLoader?: 'cdn' | 'local';\n}\n\nconst defaultProps: Partial<CodeEditorProps> = {\n language: 'plaintext',\n monacoLoader: 'local',\n defaultValue: '',\n minHeight: 300,\n};\n\nexport const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {\n const {\n language,\n defaultValue,\n onChange,\n onCopy,\n onSearch,\n onFocus,\n value,\n label,\n required,\n labelProps,\n error,\n errorProps,\n description,\n descriptionProps,\n minHeight,\n maxHeight,\n disabled,\n monacoLoader,\n ...others\n } = useProps('CodeEditor', defaultProps, props);\n const [loaded, setLoaded] = useState(false);\n const [_value, handleChange] = useUncontrolled<string>({\n value,\n defaultValue,\n onChange,\n finalValue: '',\n });\n const [parentHeight, ref] = useParentHeight();\n const editorRef = useRef(null);\n const loadLocalMonaco = async () => {\n const monacoInstance = await import('monaco-editor');\n loader.config({monaco: monacoInstance});\n setLoaded(true);\n };\n\n const registerLanguages = (monaco: Monaco) => {\n if (monaco && language === 'xml') {\n XML.register(monaco);\n }\n };\n\n const handleSearch = () => {\n if (editorRef.current) {\n editorRef.current.focus();\n editorRef.current.trigger('editor', 'actions.find', '');\n onSearch?.();\n }\n };\n\n const [hasMonacoError, setHasMonacoError] = useState(false);\n const renderErrorOutline = !!error || hasMonacoError;\n const theme = useMantineTheme();\n const {colorScheme} = useMantineColorScheme();\n\n useEffect(() => {\n if (monacoLoader === 'local') {\n loadLocalMonaco();\n } else {\n setLoaded(true);\n }\n }, []);\n\n const handleValidate = (markers: monacoEditor.IMarker[]) => {\n setHasMonacoError(\n markers.some((marker) => marker.severity === loader.__getMonacoInstance().MarkerSeverity.Error),\n );\n };\n\n const _label = label ? (\n <Input.Label required={required} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description {...descriptionProps}>{description}</Input.Description>\n ) : null;\n\n const _error = error ? (\n <Input.Error mt=\"xs\" {...errorProps}>\n {error}\n </Input.Error>\n ) : (\n <Space h=\"xs\" />\n );\n\n const _header =\n _label || _description ? (\n <Box>\n {_label}\n {_description}\n </Box>\n ) : null;\n\n const _buttons = (\n <Group justify=\"right\" gap={0}>\n <Search handleSearch={handleSearch} />\n <CopyToClipboard value={_value} onCopy={() => onCopy?.()} />\n </Group>\n );\n\n const _editor = loaded ? (\n <Box\n p=\"md\"\n pl=\"xs\"\n className={cx(\n CodeEditorClasses.editor,\n {[CodeEditorClasses.valid]: !renderErrorOutline},\n {[CodeEditorClasses.error]: renderErrorOutline},\n )}\n data-testid=\"editor-wrapper\"\n >\n <Editor\n onValidate={handleValidate}\n defaultLanguage={language}\n theme={colorScheme === 'light' ? 'light' : 'vs-dark'}\n options={{\n minimap: {enabled: false},\n wordWrap: 'on',\n scrollBeyondLastLine: false,\n formatOnPaste: true,\n fontSize: px(theme.fontSizes.xs) as number,\n readOnly: disabled,\n tabSize: 2,\n }}\n value={_value}\n onChange={handleChange}\n onMount={(editor, monaco) => {\n editorRef.current = editor;\n registerLanguages(monaco);\n editor.onDidFocusEditorText(() => onFocus?.());\n editor.onDidBlurEditorText(async () => {\n await editor.getAction('editor.action.formatDocument').run();\n });\n }}\n />\n </Box>\n ) : (\n <Center className={CodeEditorClasses.editor}>\n <Loader />\n </Center>\n );\n\n return (\n <Stack\n justify=\"flex-start\"\n gap={0}\n style={{height: Math.max(parentHeight, minHeight), maxHeight}}\n ref={ref}\n {...others}\n >\n {_header}\n {_buttons}\n {_editor}\n {_error}\n </Stack>\n );\n};\n"],"names":["CodeEditor","defaultProps","language","monacoLoader","defaultValue","minHeight","props","useProps","onChange","onCopy","onSearch","onFocus","value","label","required","labelProps","error","errorProps","description","descriptionProps","maxHeight","disabled","others","useState","loaded","setLoaded","useUncontrolled","finalValue","_value","handleChange","useParentHeight","parentHeight","ref","editorRef","useRef","loadLocalMonaco","monacoInstance","loader","config","monaco","registerLanguages","XML","register","handleSearch","current","focus","trigger","hasMonacoError","setHasMonacoError","renderErrorOutline","theme","useMantineTheme","colorScheme","useMantineColorScheme","useEffect","handleValidate","markers","some","marker","severity","__getMonacoInstance","MarkerSeverity","Error","_label","Input","Label","_description","Description","_error","mt","Space","h","_header","Box","_buttons","Group","justify","gap","Search","CopyToClipboard","_editor","p","pl","className","cx","CodeEditorClasses","editor","valid","data-testid","Editor","onValidate","defaultLanguage","options","minimap","enabled","wordWrap","scrollBeyondLastLine","formatOnPaste","fontSize","px","fontSizes","xs","readOnly","tabSize","onMount","onDidFocusEditorText","onDidBlurEditorText","getAction","run","Center","Loader","Stack","style","height","Math","max"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-editor/index.ts"],"sourcesContent":["export * from './CodeEditor';\n"],"names":[],"mappings":";;;;;uBAAc"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-editor/index.ts"],"sourcesContent":["export * from './CodeEditor';\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;uBAAc"}
|
|
@@ -12,11 +12,11 @@ var _async_to_generator = require("@swc/helpers/_/_async_to_generator");
|
|
|
12
12
|
var _ts_generator = require("@swc/helpers/_/_ts_generator");
|
|
13
13
|
var format = function(xml) {
|
|
14
14
|
// https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default
|
|
15
|
-
var PADDING =
|
|
15
|
+
var PADDING = ' '.repeat(2);
|
|
16
16
|
var reg = /(>)(<)(\/*)/g;
|
|
17
17
|
var pad = 0;
|
|
18
|
-
xml = xml.replace(reg,
|
|
19
|
-
return xml.split(
|
|
18
|
+
xml = xml.replace(reg, '$1\r\n$2$3');
|
|
19
|
+
return xml.split('\r\n').map(function(node) {
|
|
20
20
|
var indent = 0;
|
|
21
21
|
if (node.match(/.+<\/\w[^>]*>$/)) {
|
|
22
22
|
indent = 0;
|
|
@@ -29,10 +29,10 @@ var format = function(xml) {
|
|
|
29
29
|
}
|
|
30
30
|
pad += indent;
|
|
31
31
|
return PADDING.repeat(pad - indent) + node;
|
|
32
|
-
}).join(
|
|
32
|
+
}).join('\r\n');
|
|
33
33
|
};
|
|
34
34
|
var register = function(monaco) {
|
|
35
|
-
monaco.languages.registerDocumentFormattingEditProvider(
|
|
35
|
+
monaco.languages.registerDocumentFormattingEditProvider('xml', {
|
|
36
36
|
provideDocumentFormattingEdits: function() {
|
|
37
37
|
var _ref = _async_to_generator._(function(model) {
|
|
38
38
|
return _ts_generator._(this, function(_state) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/code-editor/languages/xml.ts"],"sourcesContent":["import {Monaco} from '@monaco-editor/react';\n\nconst format = (xml: string): string => {\n // https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default\n const PADDING = ' '.repeat(2);\n const reg = /(>)(<)(\\/*)/g;\n let pad = 0;\n\n xml = xml.replace(reg, '$1\\r\\n$2$3');\n\n return xml\n .split('\\r\\n')\n .map((node) => {\n let indent = 0;\n if (node.match(/.+<\\/\\w[^>]*>$/)) {\n indent = 0;\n } else if (node.match(/^<\\/\\w/) && pad > 0) {\n pad -= 1;\n } else if (node.match(/^<\\w[^>]*[^/]>.*$/)) {\n indent = 1;\n } else {\n indent = 0;\n }\n\n pad += indent;\n\n return PADDING.repeat(pad - indent) + node;\n })\n .join('\\r\\n');\n};\n\nconst register = (monaco: Monaco): void => {\n monaco.languages.registerDocumentFormattingEditProvider('xml', {\n provideDocumentFormattingEdits: async (model) => [\n {\n range: model.getFullModelRange(),\n text: format(model.getValue()),\n },\n ],\n });\n};\n\nexport const XML = {register};\n"],"names":["XML","format","xml","PADDING","repeat","reg","pad","replace","split","map","node","indent","match","join","register","monaco","languages","registerDocumentFormattingEditProvider","provideDocumentFormattingEdits","model","range","getFullModelRange","text","getValue"],"mappings":";;;;+BA0CaA;;;eAAAA;;;;;AAxCb,IAAMC,SAAS,SAACC;IACZ,oGAAoG;IACpG,IAAMC,UAAU,IAAIC,MAAM,CAAC;IAC3B,IAAMC,MAAM;IACZ,IAAIC,MAAM;IAEVJ,MAAMA,IAAIK,OAAO,CAACF,KAAK;IAEvB,OAAOH,IACFM,KAAK,CAAC,QACNC,GAAG,CAAC,SAACC;QACF,IAAIC,SAAS;QACb,IAAID,KAAKE,KAAK,CAAC,mBAAmB;YAC9BD,SAAS;QACb,OAAO,IAAID,KAAKE,KAAK,CAAC,aAAaN,MAAM,GAAG;YACxCA,OAAO;QACX,OAAO,IAAII,KAAKE,KAAK,CAAC,sBAAsB;YACxCD,SAAS;QACb,OAAO;YACHA,SAAS;QACb;QAEAL,OAAOK;QAEP,OAAOR,QAAQC,MAAM,CAACE,MAAMK,UAAUD;IAC1C,GACCG,IAAI,CAAC;AACd;AAEA,IAAMC,WAAW,SAACC;IACdA,OAAOC,SAAS,CAACC,sCAAsC,CAAC,OAAO;QAC3DC,8BAA8B;uBAAE,sBAAA,SAAOC;;oBAAU;;;4BAC7C;gCACIC,OAAOD,MAAME,iBAAiB;gCAC9BC,MAAMrB,OAAOkB,MAAMI,QAAQ;4BAC/B;;;;;4BAJmCJ;;;;IAM3C;AACJ;AAEO,IAAMnB,MAAM;IAACc,UAAAA;AAAQ"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/code-editor/languages/xml.ts"],"sourcesContent":["import {Monaco} from '@monaco-editor/react';\n\nconst format = (xml: string): string => {\n // https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default\n const PADDING = ' '.repeat(2);\n const reg = /(>)(<)(\\/*)/g;\n let pad = 0;\n\n xml = xml.replace(reg, '$1\\r\\n$2$3');\n\n return xml\n .split('\\r\\n')\n .map((node) => {\n let indent = 0;\n if (node.match(/.+<\\/\\w[^>]*>$/)) {\n indent = 0;\n } else if (node.match(/^<\\/\\w/) && pad > 0) {\n pad -= 1;\n } else if (node.match(/^<\\w[^>]*[^/]>.*$/)) {\n indent = 1;\n } else {\n indent = 0;\n }\n\n pad += indent;\n\n return PADDING.repeat(pad - indent) + node;\n })\n .join('\\r\\n');\n};\n\nconst register = (monaco: Monaco): void => {\n monaco.languages.registerDocumentFormattingEditProvider('xml', {\n provideDocumentFormattingEdits: async (model) => [\n {\n range: model.getFullModelRange(),\n text: format(model.getValue()),\n },\n ],\n });\n};\n\nexport const XML = {register};\n"],"names":["XML","format","xml","PADDING","repeat","reg","pad","replace","split","map","node","indent","match","join","register","monaco","languages","registerDocumentFormattingEditProvider","provideDocumentFormattingEdits","model","range","getFullModelRange","text","getValue"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BA0CaA;;;eAAAA;;;;;AAxCb,IAAMC,SAAS,SAACC;IACZ,oGAAoG;IACpG,IAAMC,UAAU,IAAIC,MAAM,CAAC;IAC3B,IAAMC,MAAM;IACZ,IAAIC,MAAM;IAEVJ,MAAMA,IAAIK,OAAO,CAACF,KAAK;IAEvB,OAAOH,IACFM,KAAK,CAAC,QACNC,GAAG,CAAC,SAACC;QACF,IAAIC,SAAS;QACb,IAAID,KAAKE,KAAK,CAAC,mBAAmB;YAC9BD,SAAS;QACb,OAAO,IAAID,KAAKE,KAAK,CAAC,aAAaN,MAAM,GAAG;YACxCA,OAAO;QACX,OAAO,IAAII,KAAKE,KAAK,CAAC,sBAAsB;YACxCD,SAAS;QACb,OAAO;YACHA,SAAS;QACb;QAEAL,OAAOK;QAEP,OAAOR,QAAQC,MAAM,CAACE,MAAMK,UAAUD;IAC1C,GACCG,IAAI,CAAC;AACd;AAEA,IAAMC,WAAW,SAACC;IACdA,OAAOC,SAAS,CAACC,sCAAsC,CAAC,OAAO;QAC3DC,8BAA8B;uBAAE,sBAAA,SAAOC;;oBAAU;;;4BAC7C;gCACIC,OAAOD,MAAME,iBAAiB;gCAC9BC,MAAMrB,OAAOkB,MAAMI,QAAQ;4BAC/B;;;;;4BAJmCJ;;;;IAM3C;AACJ;AAEO,IAAMnB,MAAM;IAACc,UAAAA;AAAQ"}
|
|
@@ -25,9 +25,9 @@ var SearchButton = function(param) {
|
|
|
25
25
|
})
|
|
26
26
|
});
|
|
27
27
|
};
|
|
28
|
-
var Search = function(_param)
|
|
28
|
+
var Search = function(_param) {
|
|
29
29
|
var params = _extends._({}, _object_destructuring_empty._(_param));
|
|
30
|
-
return (0, _jsxruntime.jsx)(SearchButton, _object_spread._({}, params));
|
|
30
|
+
return /*#__PURE__*/ (0, _jsxruntime.jsx)(SearchButton, _object_spread._({}, params));
|
|
31
31
|
};
|
|
32
32
|
|
|
33
33
|
//# sourceMappingURL=Search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/code-editor/search/Search.tsx"],"sourcesContent":["import {SearchSize16Px} from '@coveord/plasma-react-icons';\nimport {ActionIcon} from '@mantine/core';\n\nexport interface SearchProps {\n handleSearch: () => void;\n}\n\nconst SearchButton: React.FunctionComponent<SearchProps> = ({handleSearch}) => (\n <ActionIcon onClick={handleSearch} variant=\"subtle\" color=\"gray\">\n <SearchSize16Px height={16}></SearchSize16Px>\n </ActionIcon>\n);\n\nexport const Search: React.FunctionComponent<SearchProps> = ({...params}) => <SearchButton {...params} />;\n"],"names":["Search","SearchButton","handleSearch","ActionIcon","onClick","variant","color","SearchSize16Px","height","params"],"mappings":";;;;+BAaaA;;;eAAAA;;;;;;;gCAbgB;oBACJ;AAMzB,IAAMC,eAAqD;QAAEC,qBAAAA;yBACzD,qBAACC,gBAAU;QAACC,SAASF;QAAcG,SAAQ;QAASC,OAAM;kBACtD,cAAA,qBAACC,gCAAc;YAACC,QAAQ;;;;AAIzB,IAAMR,SAA+C;QAAKS;
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/code-editor/search/Search.tsx"],"sourcesContent":["import {SearchSize16Px} from '@coveord/plasma-react-icons';\nimport {ActionIcon} from '@mantine/core';\n\nexport interface SearchProps {\n handleSearch: () => void;\n}\n\nconst SearchButton: React.FunctionComponent<SearchProps> = ({handleSearch}) => (\n <ActionIcon onClick={handleSearch} variant=\"subtle\" color=\"gray\">\n <SearchSize16Px height={16}></SearchSize16Px>\n </ActionIcon>\n);\n\nexport const Search: React.FunctionComponent<SearchProps> = ({...params}) => <SearchButton {...params} />;\n"],"names":["Search","SearchButton","handleSearch","ActionIcon","onClick","variant","color","SearchSize16Px","height","params"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAaaA;;;eAAAA;;;;;;;gCAbgB;oBACJ;AAMzB,IAAMC,eAAqD;QAAEC,qBAAAA;yBACzD,qBAACC,gBAAU;QAACC,SAASF;QAAcG,SAAQ;QAASC,OAAM;kBACtD,cAAA,qBAACC,gCAAc;YAACC,QAAQ;;;;AAIzB,IAAMR,SAA+C;QAAKS;yBAAY,qBAACR,mCAAiBQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/code-editor/search/index.ts"],"sourcesContent":["export * from './Search';\n"],"names":[],"mappings":";;;;;uBAAc"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/code-editor/search/index.ts"],"sourcesContent":["export * from './Search';\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;uBAAc"}
|
|
@@ -26,10 +26,10 @@ var _CollectionContext = require("./CollectionContext");
|
|
|
26
26
|
var _CollectionItem = require("./CollectionItem");
|
|
27
27
|
var defaultProps = {
|
|
28
28
|
draggable: false,
|
|
29
|
-
addLabel:
|
|
30
|
-
addDisabledTooltip:
|
|
29
|
+
addLabel: 'Add item',
|
|
30
|
+
addDisabledTooltip: 'There is already an empty item',
|
|
31
31
|
disabled: false,
|
|
32
|
-
gap:
|
|
32
|
+
gap: 'xs',
|
|
33
33
|
required: false,
|
|
34
34
|
getItemId: function(param) {
|
|
35
35
|
var id = param.id;
|
|
@@ -37,8 +37,7 @@ var defaultProps = {
|
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
var Collection = function(props) {
|
|
40
|
-
var
|
|
41
|
-
var _useProps = (0, _core1.useProps)("Collection", defaultProps, props), value = _useProps.value, onChange = _useProps.onChange, onRemoveItem = _useProps.onRemoveItem, onReorderItem = _useProps.onReorderItem, onInsertItem = _useProps.onInsertItem, disabled = _useProps.disabled, draggable = _useProps.draggable, children = _useProps.children, gap = _useProps.gap, required = _useProps.required, newItem = _useProps.newItem, addLabel = _useProps.addLabel, addDisabledTooltip = _useProps.addDisabledTooltip, allowAdd = _useProps.allowAdd, label = _useProps.label, labelProps = _useProps.labelProps, withAsterisk = _useProps.withAsterisk, description = _useProps.description, descriptionProps = _useProps.descriptionProps, error = _useProps.error, errorProps = _useProps.errorProps, getItemId = _useProps.getItemId, ref = _useProps.ref, // Style props
|
|
40
|
+
var _useProps = (0, _core1.useProps)('Collection', defaultProps, props), value = _useProps.value, onChange = _useProps.onChange, onRemoveItem = _useProps.onRemoveItem, onReorderItem = _useProps.onReorderItem, onInsertItem = _useProps.onInsertItem, disabled = _useProps.disabled, draggable = _useProps.draggable, children = _useProps.children, gap = _useProps.gap, required = _useProps.required, newItem = _useProps.newItem, addLabel = _useProps.addLabel, addDisabledTooltip = _useProps.addDisabledTooltip, allowAdd = _useProps.allowAdd, label = _useProps.label, labelProps = _useProps.labelProps, withAsterisk = _useProps.withAsterisk, description = _useProps.description, descriptionProps = _useProps.descriptionProps, error = _useProps.error, errorProps = _useProps.errorProps, getItemId = _useProps.getItemId, ref = _useProps.ref, // Style props
|
|
42
41
|
style = _useProps.style, className = _useProps.className, classNames = _useProps.classNames, styles = _useProps.styles, unstyled = _useProps.unstyled, others = _object_without_properties._(_useProps, [
|
|
43
42
|
"value",
|
|
44
43
|
"onChange",
|
|
@@ -70,7 +69,7 @@ var Collection = function(props) {
|
|
|
70
69
|
"unstyled"
|
|
71
70
|
]);
|
|
72
71
|
var getStyles = (0, _core1.useStyles)({
|
|
73
|
-
name:
|
|
72
|
+
name: 'Collection',
|
|
74
73
|
classes: _Collectionmodulecss.default,
|
|
75
74
|
props: props,
|
|
76
75
|
className: className,
|
|
@@ -86,12 +85,11 @@ var Collection = function(props) {
|
|
|
86
85
|
/**
|
|
87
86
|
* Enforcing onChange when the value is modified will make sure the errors are carried through.
|
|
88
87
|
*/ (0, _hooks.useDidUpdate)(function() {
|
|
89
|
-
|
|
90
|
-
(_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange(value);
|
|
88
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
91
89
|
}, [
|
|
92
90
|
JSON.stringify(value)
|
|
93
91
|
]);
|
|
94
|
-
var isRequired = typeof withAsterisk ===
|
|
92
|
+
var isRequired = typeof withAsterisk === 'boolean' ? withAsterisk : required;
|
|
95
93
|
var _label = label ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_core1.Input.Label, _object_spread_props._(_object_spread._({
|
|
96
94
|
required: isRequired
|
|
97
95
|
}, labelProps), {
|
|
@@ -109,11 +107,10 @@ var Collection = function(props) {
|
|
|
109
107
|
_description
|
|
110
108
|
]
|
|
111
109
|
}) : null;
|
|
112
|
-
var _getItemId;
|
|
113
110
|
var standardizedItems = value.map(function(item, index) {
|
|
114
|
-
var
|
|
111
|
+
var _getItemId;
|
|
115
112
|
return {
|
|
116
|
-
id: (_getItemId =
|
|
113
|
+
id: (_getItemId = getItemId === null || getItemId === void 0 ? void 0 : getItemId(item)) !== null && _getItemId !== void 0 ? _getItemId : String(index),
|
|
117
114
|
data: item
|
|
118
115
|
};
|
|
119
116
|
});
|
|
@@ -123,16 +120,14 @@ var Collection = function(props) {
|
|
|
123
120
|
disabled: disabled,
|
|
124
121
|
draggable: draggable,
|
|
125
122
|
onRemove: function() {
|
|
126
|
-
|
|
127
|
-
return (_onRemoveItem = onRemoveItem) === null || _onRemoveItem === void 0 ? void 0 : _onRemoveItem(index);
|
|
123
|
+
return onRemoveItem === null || onRemoveItem === void 0 ? void 0 : onRemoveItem(index);
|
|
128
124
|
},
|
|
129
125
|
removable: !(required && hasOnlyOneItem),
|
|
130
126
|
children: children(item.data, index)
|
|
131
127
|
}, item.id);
|
|
132
128
|
});
|
|
133
|
-
var
|
|
134
|
-
var addAllowed = (
|
|
135
|
-
var _value_length;
|
|
129
|
+
var _allowAdd;
|
|
130
|
+
var addAllowed = (_allowAdd = allowAdd === null || allowAdd === void 0 ? void 0 : allowAdd(value)) !== null && _allowAdd !== void 0 ? _allowAdd : true;
|
|
136
131
|
var _addButton = disabled ? null : /*#__PURE__*/ (0, _jsxruntime.jsx)(_core1.Group, {
|
|
137
132
|
children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_core1.Tooltip, {
|
|
138
133
|
label: addDisabledTooltip,
|
|
@@ -144,8 +139,8 @@ var Collection = function(props) {
|
|
|
144
139
|
height: 16
|
|
145
140
|
}),
|
|
146
141
|
onClick: function() {
|
|
147
|
-
var
|
|
148
|
-
return onInsertItem(newItem, (_value_length =
|
|
142
|
+
var _value_length;
|
|
143
|
+
return onInsertItem(newItem, (_value_length = value === null || value === void 0 ? void 0 : value.length) !== null && _value_length !== void 0 ? _value_length : 0);
|
|
149
144
|
},
|
|
150
145
|
disabled: !addAllowed,
|
|
151
146
|
children: addLabel
|
|
@@ -164,8 +159,7 @@ var Collection = function(props) {
|
|
|
164
159
|
var activeIndex = getIndex(String(active.id));
|
|
165
160
|
var overIndex = getIndex(String(over.id));
|
|
166
161
|
if (activeIndex !== overIndex) {
|
|
167
|
-
|
|
168
|
-
(_onReorderItem = onReorderItem) === null || _onReorderItem === void 0 ? void 0 : _onReorderItem({
|
|
162
|
+
onReorderItem === null || onReorderItem === void 0 ? void 0 : onReorderItem({
|
|
169
163
|
from: activeIndex,
|
|
170
164
|
to: overIndex
|
|
171
165
|
});
|
|
@@ -188,7 +182,7 @@ var Collection = function(props) {
|
|
|
188
182
|
strategy: _sortable.verticalListSortingStrategy,
|
|
189
183
|
children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(_core1.Box, _object_spread_props._(_object_spread._({
|
|
190
184
|
ref: ref
|
|
191
|
-
}, others, getStyles(
|
|
185
|
+
}, others, getStyles('root')), {
|
|
192
186
|
children: [
|
|
193
187
|
_header,
|
|
194
188
|
/*#__PURE__*/ (0, _jsxruntime.jsxs)(_core1.Stack, {
|