@eccenca/gui-elements 24.0.0-rc.1 → 24.0.0-rc.3
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/CHANGELOG.md +71 -5
- package/README.md +5 -3
- package/dist/cjs/cmem/ActivityControl/ActivityControlWidget.js.map +1 -1
- package/dist/cjs/cmem/ActivityControl/SilkActivityControl.js.map +1 -1
- package/dist/cjs/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js +8 -4
- package/dist/cjs/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js.map +1 -1
- package/dist/cjs/cmem/DateTimeDisplay/ElapsedDateTimeDisplay.js +4 -8
- package/dist/cjs/cmem/DateTimeDisplay/ElapsedDateTimeDisplay.js.map +1 -1
- package/dist/cjs/cmem/markdown/Markdown.js.map +1 -1
- package/dist/cjs/cmem/markdown/highlightSearchWords.js +5 -8
- package/dist/cjs/cmem/markdown/highlightSearchWords.js.map +1 -1
- package/dist/cjs/cmem/react-flow/nodes/StickyNoteNode.js.map +1 -1
- package/dist/cjs/common/index.js +1 -3
- package/dist/cjs/common/index.js.map +1 -1
- package/dist/cjs/components/Accordion/Accordion.js +2 -7
- package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
- package/dist/cjs/components/Accordion/AccordionItem.js +1 -2
- package/dist/cjs/components/Accordion/AccordionItem.js.map +1 -1
- package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js +114 -63
- package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js.map +1 -1
- package/dist/cjs/components/AutoSuggestion/AutoSuggestionList.js.map +1 -1
- package/dist/cjs/components/AutoSuggestion/ExtendedCodeEditor.js +13 -51
- package/dist/cjs/components/AutoSuggestion/ExtendedCodeEditor.js.map +1 -1
- package/dist/cjs/components/AutoSuggestion/extensions/markText.js +55 -0
- package/dist/cjs/components/AutoSuggestion/extensions/markText.js.map +1 -0
- package/dist/cjs/components/AutoSuggestion/index.js +1 -3
- package/dist/cjs/components/AutoSuggestion/index.js.map +1 -1
- package/dist/cjs/components/AutocompleteField/AutoCompleteField.js +2 -6
- package/dist/cjs/components/AutocompleteField/AutoCompleteField.js.map +1 -1
- package/dist/cjs/components/AutocompleteField/index.js +1 -0
- package/dist/cjs/components/AutocompleteField/index.js.map +1 -1
- package/dist/cjs/components/Breadcrumb/BreadcrumbList.js +2 -2
- package/dist/cjs/components/Breadcrumb/BreadcrumbList.js.map +1 -1
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/Card/CardHeader.js +2 -2
- package/dist/cjs/components/Card/CardHeader.js.map +1 -1
- package/dist/cjs/components/CodeAutocompleteField/CodeAutocompleteField.js +3 -3
- package/dist/cjs/components/CodeAutocompleteField/CodeAutocompleteField.js.map +1 -1
- package/dist/cjs/components/Dialog/AlertDialog.js.map +1 -1
- package/dist/cjs/components/Dialog/Modal.js +2 -2
- package/dist/cjs/components/Dialog/Modal.js.map +1 -1
- package/dist/cjs/components/FlexibleLayout/FlexibleLayoutContainer.js +55 -0
- package/dist/cjs/components/FlexibleLayout/FlexibleLayoutContainer.js.map +1 -0
- package/dist/cjs/components/FlexibleLayout/FlexibleLayoutItem.js +57 -0
- package/dist/cjs/components/FlexibleLayout/FlexibleLayoutItem.js.map +1 -0
- package/dist/cjs/components/FlexibleLayout/index.js +19 -0
- package/dist/cjs/components/FlexibleLayout/index.js.map +1 -0
- package/dist/cjs/components/Grid/Grid.js.map +1 -1
- package/dist/cjs/components/Grid/GridColumn.js +1 -1
- package/dist/cjs/components/Grid/GridColumn.js.map +1 -1
- package/dist/cjs/components/Icon/Icon.js +3 -5
- package/dist/cjs/components/Icon/Icon.js.map +1 -1
- package/dist/cjs/components/Icon/canonicalIconNames.js +2 -2
- package/dist/cjs/components/Icon/canonicalIconNames.js.map +1 -1
- package/dist/cjs/components/Label/Label.js +2 -2
- package/dist/cjs/components/Label/Label.js.map +1 -1
- package/dist/cjs/components/MultiSelect/MultiSelect.js +6 -15
- package/dist/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/cjs/components/MultiSuggestField/MultiSuggestField.js +7 -2
- package/dist/cjs/components/MultiSuggestField/MultiSuggestField.js.map +1 -1
- package/dist/cjs/components/Notification/Notification.js +2 -5
- package/dist/cjs/components/Notification/Notification.js.map +1 -1
- package/dist/cjs/components/PropertyValuePair/PropertyValueList.js +12 -2
- package/dist/cjs/components/PropertyValuePair/PropertyValueList.js.map +1 -1
- package/dist/cjs/components/PropertyValuePair/PropertyValuePair.js +3 -2
- package/dist/cjs/components/PropertyValuePair/PropertyValuePair.js.map +1 -1
- package/dist/cjs/components/Select/Select.js +0 -6
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/SuggestField/SuggestField.js +2 -2
- package/dist/cjs/components/SuggestField/SuggestField.js.map +1 -1
- package/dist/cjs/components/Table/Table.js +0 -3
- package/dist/cjs/components/Table/Table.js.map +1 -1
- package/dist/cjs/components/Tag/Tag.js +1 -0
- package/dist/cjs/components/Tag/Tag.js.map +1 -1
- package/dist/cjs/components/TextField/TextArea.js +1 -19
- package/dist/cjs/components/TextField/TextArea.js.map +1 -1
- package/dist/cjs/components/TextField/TextField.js +6 -24
- package/dist/cjs/components/TextField/TextField.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/Typography/Highlighter.js +0 -6
- package/dist/cjs/components/Typography/Highlighter.js.map +1 -1
- package/dist/cjs/components/Typography/index.js +0 -8
- package/dist/cjs/components/Typography/index.js.map +1 -1
- package/dist/cjs/components/Workspace/WorkspaceContent.js +1 -1
- package/dist/cjs/components/Workspace/WorkspaceContent.js.map +1 -1
- package/dist/cjs/components/index.js +1 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/extensions/codemirror/CodeMirror.js +91 -86
- package/dist/cjs/extensions/codemirror/CodeMirror.js.map +1 -1
- package/dist/cjs/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js +43 -0
- package/dist/cjs/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js.map +1 -0
- package/dist/cjs/extensions/codemirror/tests/codemirrorTestHelper.js +49 -0
- package/dist/cjs/extensions/codemirror/tests/codemirrorTestHelper.js.map +1 -0
- package/dist/cjs/extensions/react-flow/edges/edgeTypes.js +1 -1
- package/dist/cjs/extensions/react-flow/edges/edgeTypes.js.map +1 -1
- package/dist/cjs/extensions/react-flow/index.js +3 -14
- package/dist/cjs/extensions/react-flow/index.js.map +1 -1
- package/dist/cjs/extensions/react-flow/minimap/utils.js +4 -7
- package/dist/cjs/extensions/react-flow/minimap/utils.js.map +1 -1
- package/dist/cjs/extensions/react-flow/nodes/NodeContent.js +2 -10
- package/dist/cjs/extensions/react-flow/nodes/NodeContent.js.map +1 -1
- package/dist/cjs/extensions/react-flow/nodes/NodeDefault.js.map +1 -1
- package/dist/cjs/extensions/react-flow/nodes/nodeTypes.js +1 -1
- package/dist/cjs/extensions/react-flow/nodes/nodeTypes.js.map +1 -1
- package/dist/cjs/index.js +1 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/legacy-replacements/Button/AffirmativeButton.js +1 -0
- package/dist/cjs/legacy-replacements/Button/AffirmativeButton.js.map +1 -1
- package/dist/cjs/legacy-replacements/Button/Button.js +2 -0
- package/dist/cjs/legacy-replacements/Button/Button.js.map +1 -1
- package/dist/cjs/legacy-replacements/Button/DismissiveButton.js +1 -0
- package/dist/cjs/legacy-replacements/Button/DismissiveButton.js.map +1 -1
- package/dist/cjs/legacy-replacements/Button/DisruptiveButton.js +1 -0
- package/dist/cjs/legacy-replacements/Button/DisruptiveButton.js.map +1 -1
- package/dist/cjs/legacy-replacements/Checkbox/Checkbox.js +2 -0
- package/dist/cjs/legacy-replacements/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/legacy-replacements/Radio/RadioButton.js +2 -0
- package/dist/cjs/legacy-replacements/Radio/RadioButton.js.map +1 -1
- package/dist/cjs/legacy-replacements/Tabs/Tabs.js +1 -0
- package/dist/cjs/legacy-replacements/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/legacy-replacements/TextField/TextField.js +2 -0
- package/dist/cjs/legacy-replacements/TextField/TextField.js.map +1 -1
- package/dist/esm/cmem/ActivityControl/ActivityControlWidget.js.map +1 -1
- package/dist/esm/cmem/ActivityControl/SilkActivityControl.js.map +1 -1
- package/dist/esm/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js +9 -4
- package/dist/esm/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.js.map +1 -1
- package/dist/esm/cmem/DateTimeDisplay/ElapsedDateTimeDisplay.js +2 -4
- package/dist/esm/cmem/DateTimeDisplay/ElapsedDateTimeDisplay.js.map +1 -1
- package/dist/esm/cmem/markdown/Markdown.js.map +1 -1
- package/dist/esm/cmem/markdown/highlightSearchWords.js +5 -8
- package/dist/esm/cmem/markdown/highlightSearchWords.js.map +1 -1
- package/dist/esm/cmem/react-flow/nodes/StickyNoteNode.js.map +1 -1
- package/dist/esm/common/index.js +0 -2
- package/dist/esm/common/index.js.map +1 -1
- package/dist/esm/components/Accordion/Accordion.js +2 -7
- package/dist/esm/components/Accordion/Accordion.js.map +1 -1
- package/dist/esm/components/Accordion/AccordionItem.js +1 -2
- package/dist/esm/components/Accordion/AccordionItem.js.map +1 -1
- package/dist/esm/components/AutoSuggestion/AutoSuggestion.js +133 -81
- package/dist/esm/components/AutoSuggestion/AutoSuggestion.js.map +1 -1
- package/dist/esm/components/AutoSuggestion/AutoSuggestionList.js.map +1 -1
- package/dist/esm/components/AutoSuggestion/ExtendedCodeEditor.js +36 -60
- package/dist/esm/components/AutoSuggestion/ExtendedCodeEditor.js.map +1 -1
- package/dist/esm/components/AutoSuggestion/extensions/markText.js +72 -0
- package/dist/esm/components/AutoSuggestion/extensions/markText.js.map +1 -0
- package/dist/esm/components/AutoSuggestion/index.js +1 -2
- package/dist/esm/components/AutoSuggestion/index.js.map +1 -1
- package/dist/esm/components/AutocompleteField/AutoCompleteField.js +3 -6
- package/dist/esm/components/AutocompleteField/AutoCompleteField.js.map +1 -1
- package/dist/esm/components/AutocompleteField/index.js +1 -0
- package/dist/esm/components/AutocompleteField/index.js.map +1 -1
- package/dist/esm/components/Breadcrumb/BreadcrumbList.js +2 -2
- package/dist/esm/components/Breadcrumb/BreadcrumbList.js.map +1 -1
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Card/CardHeader.js +2 -2
- package/dist/esm/components/Card/CardHeader.js.map +1 -1
- package/dist/esm/components/CodeAutocompleteField/CodeAutocompleteField.js +2 -2
- package/dist/esm/components/CodeAutocompleteField/CodeAutocompleteField.js.map +1 -1
- package/dist/esm/components/Dialog/AlertDialog.js.map +1 -1
- package/dist/esm/components/Dialog/Modal.js +3 -3
- package/dist/esm/components/Dialog/Modal.js.map +1 -1
- package/dist/esm/components/FlexibleLayout/FlexibleLayoutContainer.js +40 -0
- package/dist/esm/components/FlexibleLayout/FlexibleLayoutContainer.js.map +1 -0
- package/dist/esm/components/FlexibleLayout/FlexibleLayoutItem.js +42 -0
- package/dist/esm/components/FlexibleLayout/FlexibleLayoutItem.js.map +1 -0
- package/dist/esm/components/FlexibleLayout/index.js +3 -0
- package/dist/esm/components/FlexibleLayout/index.js.map +1 -0
- package/dist/esm/components/Grid/Grid.js.map +1 -1
- package/dist/esm/components/Grid/GridColumn.js +1 -1
- package/dist/esm/components/Grid/GridColumn.js.map +1 -1
- package/dist/esm/components/Icon/Icon.js +1 -2
- package/dist/esm/components/Icon/Icon.js.map +1 -1
- package/dist/esm/components/Icon/canonicalIconNames.js +2 -2
- package/dist/esm/components/Icon/canonicalIconNames.js.map +1 -1
- package/dist/esm/components/Label/Label.js +2 -2
- package/dist/esm/components/Label/Label.js.map +1 -1
- package/dist/esm/components/MultiSelect/MultiSelect.js +7 -15
- package/dist/esm/components/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/esm/components/MultiSuggestField/MultiSuggestField.js +6 -1
- package/dist/esm/components/MultiSuggestField/MultiSuggestField.js.map +1 -1
- package/dist/esm/components/Notification/Notification.js +2 -6
- package/dist/esm/components/Notification/Notification.js.map +1 -1
- package/dist/esm/components/PropertyValuePair/PropertyValueList.js +12 -2
- package/dist/esm/components/PropertyValuePair/PropertyValueList.js.map +1 -1
- package/dist/esm/components/PropertyValuePair/PropertyValuePair.js +3 -2
- package/dist/esm/components/PropertyValuePair/PropertyValuePair.js.map +1 -1
- package/dist/esm/components/Select/Select.js +0 -6
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Spinner/Spinner.js.map +1 -1
- package/dist/esm/components/SuggestField/SuggestField.js +1 -1
- package/dist/esm/components/SuggestField/SuggestField.js.map +1 -1
- package/dist/esm/components/Table/Table.js +0 -3
- package/dist/esm/components/Table/Table.js.map +1 -1
- package/dist/esm/components/Tag/Tag.js +1 -0
- package/dist/esm/components/Tag/Tag.js.map +1 -1
- package/dist/esm/components/TextField/TextArea.js +2 -20
- package/dist/esm/components/TextField/TextArea.js.map +1 -1
- package/dist/esm/components/TextField/TextField.js +6 -24
- package/dist/esm/components/TextField/TextField.js.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/Typography/Highlighter.js +3 -6
- package/dist/esm/components/Typography/Highlighter.js.map +1 -1
- package/dist/esm/components/Typography/index.js +0 -7
- package/dist/esm/components/Typography/index.js.map +1 -1
- package/dist/esm/components/Workspace/WorkspaceContent.js +1 -1
- package/dist/esm/components/Workspace/WorkspaceContent.js.map +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/extensions/codemirror/CodeMirror.js +132 -83
- package/dist/esm/extensions/codemirror/CodeMirror.js.map +1 -1
- package/dist/esm/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js +39 -0
- package/dist/esm/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js.map +1 -0
- package/dist/esm/extensions/codemirror/tests/codemirrorTestHelper.js +55 -0
- package/dist/esm/extensions/codemirror/tests/codemirrorTestHelper.js.map +1 -0
- package/dist/esm/extensions/react-flow/edges/edgeTypes.js +1 -1
- package/dist/esm/extensions/react-flow/edges/edgeTypes.js.map +1 -1
- package/dist/esm/extensions/react-flow/index.js +2 -12
- package/dist/esm/extensions/react-flow/index.js.map +1 -1
- package/dist/esm/extensions/react-flow/minimap/utils.js +4 -7
- package/dist/esm/extensions/react-flow/minimap/utils.js.map +1 -1
- package/dist/esm/extensions/react-flow/nodes/NodeContent.js +2 -10
- package/dist/esm/extensions/react-flow/nodes/NodeContent.js.map +1 -1
- package/dist/esm/extensions/react-flow/nodes/NodeDefault.js.map +1 -1
- package/dist/esm/extensions/react-flow/nodes/nodeTypes.js +1 -1
- package/dist/esm/extensions/react-flow/nodes/nodeTypes.js.map +1 -1
- package/dist/esm/index.js +1 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/legacy-replacements/Button/AffirmativeButton.js +1 -0
- package/dist/esm/legacy-replacements/Button/AffirmativeButton.js.map +1 -1
- package/dist/esm/legacy-replacements/Button/Button.js +2 -0
- package/dist/esm/legacy-replacements/Button/Button.js.map +1 -1
- package/dist/esm/legacy-replacements/Button/DismissiveButton.js +1 -0
- package/dist/esm/legacy-replacements/Button/DismissiveButton.js.map +1 -1
- package/dist/esm/legacy-replacements/Button/DisruptiveButton.js +1 -0
- package/dist/esm/legacy-replacements/Button/DisruptiveButton.js.map +1 -1
- package/dist/esm/legacy-replacements/Checkbox/Checkbox.js +2 -0
- package/dist/esm/legacy-replacements/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/legacy-replacements/Radio/RadioButton.js +2 -0
- package/dist/esm/legacy-replacements/Radio/RadioButton.js.map +1 -1
- package/dist/esm/legacy-replacements/Tabs/Tabs.js +1 -0
- package/dist/esm/legacy-replacements/Tabs/Tabs.js.map +1 -1
- package/dist/esm/legacy-replacements/TextField/TextField.js +2 -0
- package/dist/esm/legacy-replacements/TextField/TextField.js.map +1 -1
- package/dist/types/cmem/ActivityControl/ActivityControlTypes.d.ts +3 -5
- package/dist/types/cmem/ActivityControl/ActivityControlWidget.d.ts +0 -2
- package/dist/types/cmem/ActivityControl/SilkActivityControl.d.ts +7 -11
- package/dist/types/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.d.ts +7 -3
- package/dist/types/cmem/DateTimeDisplay/ElapsedDateTimeDisplay.d.ts +1 -12
- package/dist/types/cmem/markdown/Markdown.d.ts +0 -1
- package/dist/types/cmem/markdown/highlightSearchWords.d.ts +0 -6
- package/dist/types/cmem/react-flow/nodes/StickyNoteNode.d.ts +2 -2
- package/dist/types/common/index.d.ts +0 -24
- package/dist/types/components/Accordion/Accordion.d.ts +1 -6
- package/dist/types/components/Accordion/AccordionItem.d.ts +1 -6
- package/dist/types/components/AutoSuggestion/AutoSuggestion.d.ts +27 -17
- package/dist/types/components/AutoSuggestion/AutoSuggestionList.d.ts +0 -1
- package/dist/types/components/AutoSuggestion/ExtendedCodeEditor.d.ts +10 -11
- package/dist/types/components/AutoSuggestion/extensions/markText.d.ts +16 -0
- package/dist/types/components/AutoSuggestion/index.d.ts +2 -2
- package/dist/types/components/AutocompleteField/AutoCompleteField.d.ts +11 -15
- package/dist/types/components/AutocompleteField/index.d.ts +1 -0
- package/dist/types/components/AutocompleteField/interfaces.d.ts +4 -2
- package/dist/types/components/Breadcrumb/BreadcrumbList.d.ts +1 -6
- package/dist/types/components/Button/Button.d.ts +0 -2
- package/dist/types/components/Card/CardHeader.d.ts +1 -9
- package/dist/types/components/Dialog/AlertDialog.d.ts +0 -1
- package/dist/types/components/FlexibleLayout/FlexibleLayoutContainer.d.ts +31 -0
- package/dist/types/components/FlexibleLayout/FlexibleLayoutItem.d.ts +24 -0
- package/dist/types/components/FlexibleLayout/index.d.ts +2 -0
- package/dist/types/components/Grid/Grid.d.ts +0 -5
- package/dist/types/components/Grid/GridColumn.d.ts +1 -6
- package/dist/types/components/Icon/BaseIcon.d.ts +2 -2
- package/dist/types/components/Icon/Icon.d.ts +0 -5
- package/dist/types/components/Icon/canonicalIconNames.d.ts +2 -7
- package/dist/types/components/Label/Label.d.ts +5 -1
- package/dist/types/components/MultiSelect/MultiSelect.d.ts +6 -8
- package/dist/types/components/MultiSuggestField/MultiSuggestField.d.ts +11 -2
- package/dist/types/components/Notification/Notification.d.ts +1 -14
- package/dist/types/components/PropertyValuePair/PropertyValueList.d.ts +8 -2
- package/dist/types/components/PropertyValuePair/PropertyValuePair.d.ts +5 -1
- package/dist/types/components/Select/Select.d.ts +0 -3
- package/dist/types/components/Spinner/Spinner.d.ts +3 -3
- package/dist/types/components/SuggestField/SuggestField.d.ts +5 -0
- package/dist/types/components/SuggestField/index.d.ts +1 -1
- package/dist/types/components/Table/Table.d.ts +1 -4
- package/dist/types/components/Tag/Tag.d.ts +0 -5
- package/dist/types/components/TextField/TextArea.d.ts +1 -21
- package/dist/types/components/TextField/TextField.d.ts +3 -23
- package/dist/types/components/Tooltip/Tooltip.d.ts +2 -2
- package/dist/types/components/Typography/Highlighter.d.ts +3 -6
- package/dist/types/components/Typography/index.d.ts +0 -6
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/extensions/codemirror/CodeMirror.d.ts +54 -26
- package/dist/types/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.d.ts +23 -0
- package/dist/types/extensions/codemirror/tests/codemirrorTestHelper.d.ts +20 -0
- package/dist/types/extensions/react-flow/edges/edgeTypes.d.ts +1 -0
- package/dist/types/extensions/react-flow/index.d.ts +0 -14
- package/dist/types/extensions/react-flow/nodes/NodeContent.d.ts +6 -14
- package/dist/types/extensions/react-flow/nodes/NodeDefault.d.ts +0 -1
- package/dist/types/extensions/react-flow/nodes/nodeTypes.d.ts +1 -0
- package/dist/types/extensions/react-flow/nodes/sharedTypes.d.ts +0 -1
- package/dist/types/index.d.ts +1 -9
- package/dist/types/legacy-replacements/Button/AffirmativeButton.d.ts +1 -0
- package/dist/types/legacy-replacements/Button/Button.d.ts +1 -0
- package/dist/types/legacy-replacements/Button/DismissiveButton.d.ts +1 -0
- package/dist/types/legacy-replacements/Button/DisruptiveButton.d.ts +1 -0
- package/dist/types/legacy-replacements/Checkbox/Checkbox.d.ts +1 -0
- package/dist/types/legacy-replacements/Radio/RadioButton.d.ts +1 -0
- package/dist/types/legacy-replacements/Tabs/Tabs.d.ts +4 -2
- package/dist/types/legacy-replacements/TextField/TextField.d.ts +1 -0
- package/package.json +7 -4
- package/src/cmem/ActivityControl/ActivityControlTypes.ts +3 -7
- package/src/cmem/ActivityControl/ActivityControlWidget.tsx +0 -6
- package/src/cmem/ActivityControl/SilkActivityControl.tsx +8 -18
- package/src/cmem/ContentBlobToggler/StringPreviewContentBlobToggler.tsx +22 -9
- package/src/cmem/DateTimeDisplay/ElapsedDateTimeDisplay.tsx +11 -7
- package/src/cmem/DateTimeDisplay/tests/ElapsedDateTimeDisplay.test.tsx +9 -4
- package/src/cmem/markdown/Markdown.tsx +0 -2
- package/src/cmem/markdown/highlightSearchWords.test.ts +3 -2
- package/src/cmem/markdown/highlightSearchWords.ts +5 -10
- package/src/cmem/markdown/markdown.scss +6 -3
- package/src/cmem/markdown/markdown.utils.ts +18 -0
- package/src/cmem/markdown/markdownutils.test.ts +17 -0
- package/src/cmem/react-flow/StickyNoteModal/StickyNoteModal.tsx +1 -1
- package/src/cmem/react-flow/nodes/StickyNoteNode.tsx +2 -2
- package/src/common/index.ts +0 -3
- package/src/components/Accordion/Accordion.tsx +0 -13
- package/src/components/Accordion/AccordionItem.tsx +0 -7
- package/src/components/Accordion/accordion.scss +0 -5
- package/src/components/AutoSuggestion/AutoSuggestion.scss +20 -17
- package/src/components/AutoSuggestion/AutoSuggestion.tsx +171 -100
- package/src/components/AutoSuggestion/AutoSuggestionList.tsx +0 -3
- package/src/components/AutoSuggestion/ExtendedCodeEditor.tsx +47 -83
- package/src/components/AutoSuggestion/extensions/markText.ts +63 -0
- package/src/components/AutoSuggestion/index.ts +2 -2
- package/src/components/AutoSuggestion/tests/ExtendedCodeEditor.test.tsx +13 -11
- package/src/components/AutocompleteField/AutoCompleteField.tsx +17 -19
- package/src/components/AutocompleteField/index.ts +1 -0
- package/src/components/AutocompleteField/interfaces.ts +5 -2
- package/src/components/Breadcrumb/BreadcrumbList.tsx +0 -7
- package/src/components/Button/Button.tsx +0 -5
- package/src/components/Card/CardHeader.tsx +2 -10
- package/src/components/CodeAutocompleteField/CodeAutocompleteField.stories.tsx +9 -3
- package/src/components/CodeAutocompleteField/CodeAutocompleteField.tsx +2 -2
- package/src/components/Dialog/AlertDialog.tsx +0 -3
- package/src/components/Dialog/Modal.tsx +3 -3
- package/src/components/FlexibleLayout/FlexibleLayoutContainer.tsx +67 -0
- package/src/components/FlexibleLayout/FlexibleLayoutItem.tsx +59 -0
- package/src/components/FlexibleLayout/flexiblelayout.scss +48 -0
- package/src/components/FlexibleLayout/index.ts +2 -0
- package/src/components/FlexibleLayout/stories/FlexibleLayoutContainer.stories.tsx +31 -0
- package/src/components/FlexibleLayout/stories/FlexibleLayoutItem.stories.tsx +28 -0
- package/src/components/Grid/Grid.tsx +0 -5
- package/src/components/Grid/GridColumn.tsx +0 -6
- package/src/components/Icon/BaseIcon.tsx +2 -2
- package/src/components/Icon/Icon.tsx +1 -5
- package/src/components/Icon/canonicalIconNames.tsx +5 -11
- package/src/components/Label/Label.tsx +6 -1
- package/src/components/Label/label.scss +6 -0
- package/src/components/MultiSelect/MultiSelect.tsx +9 -19
- package/src/components/MultiSuggestField/MultiSuggestField.stories.tsx +2 -2
- package/src/components/MultiSuggestField/MultiSuggestField.tsx +16 -3
- package/src/components/MultiSuggestField/tests/MultiSuggestField.test.tsx +6 -6
- package/src/components/Notification/Notification.tsx +2 -17
- package/src/components/Notification/notification.scss +1 -2
- package/src/components/PropertyValuePair/PropertyValueList.tsx +26 -3
- package/src/components/PropertyValuePair/PropertyValuePair.tsx +7 -1
- package/src/components/PropertyValuePair/propertyvalue.scss +25 -13
- package/src/components/PropertyValuePair/stories/PropertyValueList.stories.tsx +1 -1
- package/src/components/PropertyValuePair/stories/PropertyValuePair.stories.tsx +1 -1
- package/src/components/Select/Select.tsx +0 -10
- package/src/components/Spinner/Spinner.tsx +3 -6
- package/src/components/SuggestField/SuggestField.tsx +6 -1
- package/src/components/Table/Table.tsx +2 -7
- package/src/components/Tag/Tag.tsx +1 -8
- package/src/components/TextField/TextArea.tsx +2 -45
- package/src/components/TextField/TextField.tsx +9 -51
- package/src/components/Tooltip/Tooltip.tsx +2 -2
- package/src/components/Typography/Highlighter.tsx +3 -6
- package/src/components/Typography/index.ts +0 -9
- package/src/components/Typography/typography.scss +51 -0
- package/src/components/Workspace/WorkspaceContent.tsx +1 -1
- package/src/components/index.scss +1 -0
- package/src/components/index.ts +1 -1
- package/src/configuration/_variables.scss +4 -0
- package/src/extensions/codemirror/CodeMirror.tsx +189 -106
- package/src/extensions/codemirror/_codemirror.scss +24 -41
- package/src/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.ts +44 -0
- package/src/extensions/codemirror/tests/codemirrorTestHelper.ts +57 -0
- package/src/extensions/react-flow/edges/edgeTypes.ts +1 -1
- package/src/extensions/react-flow/index.ts +2 -13
- package/src/extensions/react-flow/minimap/_minimap.scss +0 -22
- package/src/extensions/react-flow/minimap/utils.ts +2 -5
- package/src/extensions/react-flow/nodes/NodeContent.tsx +4 -27
- package/src/extensions/react-flow/nodes/NodeDefault.tsx +0 -3
- package/src/extensions/react-flow/nodes/_nodes.scss +0 -55
- package/src/extensions/react-flow/nodes/nodeTypes.ts +1 -1
- package/src/extensions/react-flow/nodes/sharedTypes.ts +0 -1
- package/src/index.ts +1 -3
- package/src/legacy-replacements/Button/AffirmativeButton.tsx +1 -0
- package/src/legacy-replacements/Button/Button.tsx +2 -0
- package/src/legacy-replacements/Button/DismissiveButton.tsx +1 -0
- package/src/legacy-replacements/Button/DisruptiveButton.tsx +1 -0
- package/src/legacy-replacements/Checkbox/Checkbox.tsx +2 -0
- package/src/legacy-replacements/Radio/RadioButton.tsx +2 -0
- package/src/legacy-replacements/Tabs/Tabs.tsx +5 -4
- package/src/legacy-replacements/TextField/TextField.tsx +2 -0
- package/dist/cjs/components/NumericInput/NumericInput.js +0 -9
- package/dist/cjs/components/NumericInput/NumericInput.js.map +0 -1
- package/dist/esm/components/NumericInput/NumericInput.js +0 -6
- package/dist/esm/components/NumericInput/NumericInput.js.map +0 -1
- package/dist/types/components/NumericInput/NumericInput.d.ts +0 -3
- package/src/components/AutoSuggestion/AutoSuggestion.stories.tsx +0 -14
- package/src/components/MultiSelect/MultiSelect.stories.tsx +0 -14
- package/src/components/NumericInput/NumericInput.tsx +0 -6
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import React, { forwardRef } from "react"; // @see https://github.com/storybookjs/storybook/issues/8881#issuecomment-831937051
|
|
2
|
+
|
|
3
|
+
import { CLASSPREFIX as eccgui } from "../../configuration/constants";
|
|
4
|
+
|
|
5
|
+
import { DividerProps } from "./../Separation/Divider";
|
|
6
|
+
|
|
7
|
+
export interface FlexibleLayoutContainerProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
8
|
+
/**
|
|
9
|
+
* Use the exact space defined by the parent element.
|
|
10
|
+
* This parent element must be displayed using a fixed, relative or absolute position.
|
|
11
|
+
*/
|
|
12
|
+
useAbsoluteSpace?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* If set then the container behaves similar to a column and displays its items on a vertical axis.
|
|
15
|
+
* Children could used as rows in this situation.
|
|
16
|
+
*/
|
|
17
|
+
vertical?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* If true the used amount of space for each item is related to the amout of its content compared to each other.
|
|
20
|
+
* Otherwise the items use equal amounts as long this is possible.
|
|
21
|
+
*/
|
|
22
|
+
noEqualItemSpace?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Quick way to add whitespace between container children.
|
|
25
|
+
* For more complex usecases like dividers you need to use extra `<FlexibleLayoutItem/>` components in combination with `<Divider/>` components.
|
|
26
|
+
*/
|
|
27
|
+
gapSize?: DividerProps["addSpacing"];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Simple layout helper to organize items into rows and columns that are not necessarily need to be aligned.
|
|
32
|
+
* A `FlexibleLayoutContainer` can contain `FlexibleLayoutItem`s.
|
|
33
|
+
* Do not misuse it as grid because it comes without any predefined ratios for widths and heights.
|
|
34
|
+
*/
|
|
35
|
+
export const FlexibleLayoutContainer = forwardRef<HTMLDivElement, FlexibleLayoutContainerProps>(
|
|
36
|
+
(
|
|
37
|
+
{
|
|
38
|
+
children,
|
|
39
|
+
className = "",
|
|
40
|
+
useAbsoluteSpace,
|
|
41
|
+
vertical,
|
|
42
|
+
noEqualItemSpace,
|
|
43
|
+
gapSize = "none",
|
|
44
|
+
...otherDivProps
|
|
45
|
+
}: FlexibleLayoutContainerProps,
|
|
46
|
+
ref
|
|
47
|
+
) => {
|
|
48
|
+
return (
|
|
49
|
+
<div
|
|
50
|
+
className={
|
|
51
|
+
`${eccgui}-flexible__container` +
|
|
52
|
+
(useAbsoluteSpace ? ` ${eccgui}-flexible__container--absolutespace` : "") +
|
|
53
|
+
(vertical ? ` ${eccgui}-flexible__container--vertical` : "") +
|
|
54
|
+
(noEqualItemSpace ? ` ${eccgui}-flexible__container--notequalitemspace` : "") +
|
|
55
|
+
(gapSize !== "none" ? ` ${eccgui}-flexible__container--gap-${gapSize}` : "") +
|
|
56
|
+
(className ? " " + className : "")
|
|
57
|
+
}
|
|
58
|
+
ref={ref}
|
|
59
|
+
{...otherDivProps}
|
|
60
|
+
>
|
|
61
|
+
{children}
|
|
62
|
+
</div>
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
export default FlexibleLayoutContainer;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import React, { forwardRef } from "react";
|
|
2
|
+
|
|
3
|
+
import { CLASSPREFIX as eccgui } from "../../configuration/constants";
|
|
4
|
+
|
|
5
|
+
export interface FlexibleLayoutItemProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
6
|
+
/**
|
|
7
|
+
* Defines the ability for the item to grow.
|
|
8
|
+
* The factor defines how much space the item would take up compared to the other items with a grow factor greater than zero.
|
|
9
|
+
* Must be equal or greater than zero.
|
|
10
|
+
* With a factor of `0` the item cannot grow.
|
|
11
|
+
*/
|
|
12
|
+
growFactor?: number;
|
|
13
|
+
/**
|
|
14
|
+
* Defines the ability for the item to shrink.
|
|
15
|
+
* The factor defines how strong the shrink effect has impact on the item compared to the other items with a shrink factor greater than zero.
|
|
16
|
+
* Must be equal or greater than zero.
|
|
17
|
+
* With a factor of `0` the item cannot shrink.
|
|
18
|
+
*/
|
|
19
|
+
shrinkFactor?: number;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Simple layout helper to organize items into rows and columns that are not necessarily need to be aligned.
|
|
24
|
+
* `FlexibleLayoutItem`s can contain `FlexibleLayoutContainer` for more partitions.
|
|
25
|
+
* `FlexibleLayoutItem` siblings will share all available space from the `FlexibleLayoutContainer` container.
|
|
26
|
+
*/
|
|
27
|
+
export const FlexibleLayoutItem = forwardRef<HTMLDivElement, FlexibleLayoutItemProps>(
|
|
28
|
+
(
|
|
29
|
+
{
|
|
30
|
+
children,
|
|
31
|
+
className = "",
|
|
32
|
+
growFactor = 1,
|
|
33
|
+
shrinkFactor = 1,
|
|
34
|
+
style,
|
|
35
|
+
...otherDivProps
|
|
36
|
+
}: FlexibleLayoutItemProps,
|
|
37
|
+
ref
|
|
38
|
+
) => {
|
|
39
|
+
const sizing = {} as any;
|
|
40
|
+
if (typeof growFactor !== "undefined" && growFactor >= 0 && growFactor !== 1) {
|
|
41
|
+
sizing[`--${eccgui}-flexible-item-grow`] = growFactor.toString(10);
|
|
42
|
+
}
|
|
43
|
+
if (typeof shrinkFactor !== "undefined" && shrinkFactor >= 0 && shrinkFactor !== 1) {
|
|
44
|
+
sizing[`--${eccgui}-flexible-item-shrink`] = shrinkFactor.toString(10);
|
|
45
|
+
}
|
|
46
|
+
return (
|
|
47
|
+
<div
|
|
48
|
+
className={`${eccgui}-flexible__item` + (className ? " " + className : "")}
|
|
49
|
+
style={{ ...(style ?? {}), ...sizing }}
|
|
50
|
+
ref={ref}
|
|
51
|
+
{...otherDivProps}
|
|
52
|
+
>
|
|
53
|
+
{children}
|
|
54
|
+
</div>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
export default FlexibleLayoutItem;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
.#{$eccgui}-flexible__container {
|
|
2
|
+
--#{$eccgui}-flexible-item-shrink: 1;
|
|
3
|
+
--#{$eccgui}-flexible-item-grow: 1;
|
|
4
|
+
--#{$eccgui}-flexible-container-gapsize: 0;
|
|
5
|
+
|
|
6
|
+
position: relative;
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-flow: row nowrap;
|
|
9
|
+
gap: var(--#{$eccgui}-flexible-container-gapsize);
|
|
10
|
+
place-content: stretch center;
|
|
11
|
+
align-items: stretch;
|
|
12
|
+
width: 100%;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.#{$eccgui}-flexible__container--absolutespace {
|
|
16
|
+
position: absolute;
|
|
17
|
+
inset: 0;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.#{$eccgui}-flexible__container--vertical {
|
|
21
|
+
flex-direction: column;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.#{$eccgui}-flexible__container--gap-tiny {
|
|
25
|
+
--#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 0.25};
|
|
26
|
+
}
|
|
27
|
+
.#{$eccgui}-flexible__container--gap-small {
|
|
28
|
+
--#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 0.5};
|
|
29
|
+
}
|
|
30
|
+
.#{$eccgui}-flexible__container--gap-medium {
|
|
31
|
+
--#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace};
|
|
32
|
+
}
|
|
33
|
+
.#{$eccgui}-flexible__container--gap-large {
|
|
34
|
+
--#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 1.5};
|
|
35
|
+
}
|
|
36
|
+
.#{$eccgui}-flexible__container--gap-xlarge {
|
|
37
|
+
--#{$eccgui}-flexible-container-gapsize: #{$eccgui-size-block-whitespace * 2};
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.#{$eccgui}-flexible__item {
|
|
41
|
+
position: relative;
|
|
42
|
+
flex: var(--#{$eccgui}-flexible-item-grow) var(--#{$eccgui}-flexible-item-shrink) 100%;
|
|
43
|
+
min-width: 0;
|
|
44
|
+
|
|
45
|
+
.#{$eccgui}-flexible__container--notequalitemspace > & {
|
|
46
|
+
flex-basis: auto;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { LoremIpsum } from "react-lorem-ipsum";
|
|
3
|
+
import { Meta, StoryFn } from "@storybook/react";
|
|
4
|
+
|
|
5
|
+
import { Divider, FlexibleLayoutContainer, FlexibleLayoutItem, HtmlContentBlock } from "../../../../index";
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: "Components/FlexibleLayout/Container",
|
|
9
|
+
component: FlexibleLayoutContainer,
|
|
10
|
+
} as Meta<typeof FlexibleLayoutContainer>;
|
|
11
|
+
|
|
12
|
+
const Template: StoryFn<typeof FlexibleLayoutContainer> = (args) => (
|
|
13
|
+
<div style={{ position: "relative", height: "400px" }}>
|
|
14
|
+
<FlexibleLayoutContainer {...args}>
|
|
15
|
+
<FlexibleLayoutItem>
|
|
16
|
+
<HtmlContentBlock>
|
|
17
|
+
<LoremIpsum p={1} avgSentencesPerParagraph={3} random={false} />
|
|
18
|
+
</HtmlContentBlock>
|
|
19
|
+
</FlexibleLayoutItem>
|
|
20
|
+
<FlexibleLayoutItem>
|
|
21
|
+
<Divider />
|
|
22
|
+
<HtmlContentBlock>
|
|
23
|
+
<LoremIpsum p={3} avgSentencesPerParagraph={2} random={false} />
|
|
24
|
+
</HtmlContentBlock>
|
|
25
|
+
</FlexibleLayoutItem>
|
|
26
|
+
</FlexibleLayoutContainer>
|
|
27
|
+
</div>
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
export const Default = Template.bind({});
|
|
31
|
+
Default.args = {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { LoremIpsum } from "react-lorem-ipsum";
|
|
3
|
+
import { Meta, StoryFn } from "@storybook/react";
|
|
4
|
+
|
|
5
|
+
import { FlexibleLayoutContainer, FlexibleLayoutItem, HtmlContentBlock } from "../../../../index";
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: "Components/FlexibleLayout/Item",
|
|
9
|
+
component: FlexibleLayoutItem,
|
|
10
|
+
} as Meta<typeof FlexibleLayoutItem>;
|
|
11
|
+
|
|
12
|
+
const Template: StoryFn<typeof FlexibleLayoutItem> = (args) => (
|
|
13
|
+
<FlexibleLayoutContainer horizontal>
|
|
14
|
+
<FlexibleLayoutItem {...args}>
|
|
15
|
+
<HtmlContentBlock>
|
|
16
|
+
<LoremIpsum p={1} avgSentencesPerParagraph={1} avgWordsPerSentence={3} random={false} />
|
|
17
|
+
</HtmlContentBlock>
|
|
18
|
+
</FlexibleLayoutItem>
|
|
19
|
+
<FlexibleLayoutItem>
|
|
20
|
+
<HtmlContentBlock>
|
|
21
|
+
<LoremIpsum p={2} avgSentencesPerParagraph={4} random={false} />
|
|
22
|
+
</HtmlContentBlock>
|
|
23
|
+
</FlexibleLayoutItem>
|
|
24
|
+
</FlexibleLayoutContainer>
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
export const Default = Template.bind({});
|
|
28
|
+
Default.args = {};
|
|
@@ -23,11 +23,6 @@ export interface GridColumnProps extends Omit<CarbonGridColumnProps<"div">, "max
|
|
|
23
23
|
* Overwrite column sizes by using the original size config of the Carbon grid column.
|
|
24
24
|
*/
|
|
25
25
|
carbonSizeConfig?: Pick<CarbonGridColumnProps<"div">, "max" | "xlg" | "lg" | "md" | "sm">;
|
|
26
|
-
/**
|
|
27
|
-
* @deprecated
|
|
28
|
-
* Grid column always uses full width if it is the only column and does not have any othe size config.
|
|
29
|
-
*/
|
|
30
|
-
full?: boolean;
|
|
31
26
|
}
|
|
32
27
|
|
|
33
28
|
/**
|
|
@@ -39,7 +34,6 @@ export const GridColumn = ({
|
|
|
39
34
|
className = "",
|
|
40
35
|
small = false,
|
|
41
36
|
medium = false,
|
|
42
|
-
full,
|
|
43
37
|
verticalAlign = "top",
|
|
44
38
|
carbonSizeConfig,
|
|
45
39
|
...otherProps
|
|
@@ -34,7 +34,7 @@ export interface BaseIconProps extends Omit<CarbonIconProps, "icon" | "descripti
|
|
|
34
34
|
className?: string;
|
|
35
35
|
/**
|
|
36
36
|
* Description for icon as accessibility fallback.
|
|
37
|
-
* @deprecated Use `title` as replacement.
|
|
37
|
+
* @deprecated (v25) Use `title` as replacement.
|
|
38
38
|
*/
|
|
39
39
|
description?: string;
|
|
40
40
|
/**
|
|
@@ -42,7 +42,7 @@ export interface BaseIconProps extends Omit<CarbonIconProps, "icon" | "descripti
|
|
|
42
42
|
*/
|
|
43
43
|
tooltipProps?: Partial<Omit<TooltipProps, "content" | "children">>;
|
|
44
44
|
/**
|
|
45
|
-
* @deprecated Use `title` as replacement.
|
|
45
|
+
* @deprecated (v25) Use `title` as replacement.
|
|
46
46
|
*/
|
|
47
47
|
iconTitle?: CarbonIconProps["title"];
|
|
48
48
|
}
|
|
@@ -25,12 +25,8 @@ const findExistingIcon = (
|
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
27
|
* Returns the first icon name that exists or the fallback icon name.
|
|
28
|
-
* @deprecated use `iconUtils.findExistingIconName`
|
|
29
28
|
*/
|
|
30
|
-
|
|
31
|
-
iconNames: string[],
|
|
32
|
-
fallbackIconName: ValidIconName = "undefined"
|
|
33
|
-
): ValidIconName => {
|
|
29
|
+
const findExistingIconName = (iconNames: string[], fallbackIconName: ValidIconName = "undefined"): ValidIconName => {
|
|
34
30
|
let foundIconName: string = fallbackIconName;
|
|
35
31
|
const iconNameStack = [...iconNames];
|
|
36
32
|
while (foundIconName === fallbackIconName && iconNameStack.length > 0) {
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import * as icons from "@carbon/react/icons";
|
|
2
2
|
import { CarbonIconType as IconType } from "@carbon/react/icons";
|
|
3
3
|
|
|
4
|
-
export type CarbonIconType = IconType;
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @deprecated
|
|
8
|
-
* use CarbonIconType instead
|
|
9
|
-
*/
|
|
10
|
-
export type IconSized = CarbonIconType;
|
|
11
|
-
|
|
12
4
|
const canonicalIcons = {
|
|
13
5
|
"application-activities": icons.Activity,
|
|
14
6
|
"application-dataintegration": icons.DataUnstructured,
|
|
@@ -66,9 +58,9 @@ const canonicalIcons = {
|
|
|
66
58
|
"entity-robot": icons.Bot,
|
|
67
59
|
|
|
68
60
|
"item-add-artefact": icons.AddAlt,
|
|
69
|
-
"item-clone": icons.
|
|
61
|
+
"item-clone": icons.Replicate,
|
|
70
62
|
"item-comment": icons.AddComment,
|
|
71
|
-
"item-copy": icons.
|
|
63
|
+
"item-copy": icons.Copy,
|
|
72
64
|
"item-download": icons.Download,
|
|
73
65
|
"item-draggable": icons.Draggable,
|
|
74
66
|
"item-edit": icons.Edit,
|
|
@@ -180,6 +172,8 @@ const canonicalIcons = {
|
|
|
180
172
|
undefined: icons.Undefined,
|
|
181
173
|
};
|
|
182
174
|
|
|
183
|
-
export type ValidIconName = keyof typeof canonicalIcons;
|
|
184
175
|
const canonicalIconNames: Record<ValidIconName, CarbonIconType> = canonicalIcons;
|
|
176
|
+
|
|
177
|
+
export type CarbonIconType = IconType;
|
|
178
|
+
export type ValidIconName = keyof typeof canonicalIcons;
|
|
185
179
|
export default canonicalIconNames;
|
|
@@ -30,6 +30,10 @@ export interface LabelProps extends React.LabelHTMLAttributes<HTMLLabelElement>
|
|
|
30
30
|
* If there is no `isLayoutForElement` set then a `span` is used.
|
|
31
31
|
*/
|
|
32
32
|
disabled?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* visual appearance of the label
|
|
35
|
+
*/
|
|
36
|
+
emphasis?: "strong" | "normal";
|
|
33
37
|
}
|
|
34
38
|
|
|
35
39
|
export const Label = ({
|
|
@@ -41,6 +45,7 @@ export const Label = ({
|
|
|
41
45
|
tooltip,
|
|
42
46
|
tooltipProps,
|
|
43
47
|
isLayoutForElement = "label",
|
|
48
|
+
emphasis = "normal",
|
|
44
49
|
...otherLabelProps
|
|
45
50
|
}: LabelProps) => {
|
|
46
51
|
let htmlElementstring = isLayoutForElement;
|
|
@@ -66,7 +71,7 @@ export const Label = ({
|
|
|
66
71
|
htmlElementstring,
|
|
67
72
|
{
|
|
68
73
|
className:
|
|
69
|
-
`${eccgui}-label` +
|
|
74
|
+
`${eccgui}-label ${eccgui}-label--${emphasis}` +
|
|
70
75
|
(className ? " " + className : "") +
|
|
71
76
|
(disabled ? ` ${eccgui}-label--disabled` : ""),
|
|
72
77
|
...otherLabelProps,
|
|
@@ -21,6 +21,12 @@ $eccgui-color-label-info: rgba($eccgui-color-workspace-text, $eccgui-opacity-mut
|
|
|
21
21
|
opacity: $eccgui-opacity-disabled;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
+
.#{$eccgui}-label--strong {
|
|
25
|
+
.#{$eccgui}-label__text {
|
|
26
|
+
font-weight: bolder;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
24
30
|
.#{$eccgui}-label__text {
|
|
25
31
|
.#{$eccgui}-typography__overflowtext--passdown > .#{$eccgui}-label > & {
|
|
26
32
|
display: block;
|
|
@@ -12,15 +12,13 @@ import { TestableComponent } from "../interfaces";
|
|
|
12
12
|
|
|
13
13
|
import { ContextOverlayProps, Highlighter, IconButton, MenuItem, OverflowText, Spinner } from "./../../index";
|
|
14
14
|
|
|
15
|
+
/** @deprecated (v25) use MultiSuggestFieldSelectionProps */
|
|
15
16
|
export interface MultiSelectSelectionProps<T> {
|
|
16
17
|
newlySelected?: T;
|
|
17
18
|
selectedItems: T[];
|
|
18
19
|
createdItems: Partial<T>[];
|
|
19
20
|
}
|
|
20
21
|
|
|
21
|
-
// @deprecated use `MultiSelectSelectionProps<T>`
|
|
22
|
-
export type SelectedParamsType<T> = MultiSelectSelectionProps<T>;
|
|
23
|
-
|
|
24
22
|
interface MultiSelectCommonProps<T>
|
|
25
23
|
extends TestableComponent,
|
|
26
24
|
Pick<BlueprintMultiSelectProps<T>, "items" | "placeholder" | "openOnKeyDown"> {
|
|
@@ -37,7 +35,6 @@ interface MultiSelectCommonProps<T>
|
|
|
37
35
|
* this would be used in the item selection list as well as the multi-select input
|
|
38
36
|
*/
|
|
39
37
|
itemLabel: (item: T) => string;
|
|
40
|
-
|
|
41
38
|
/**
|
|
42
39
|
* function handler that would be called anytime an item is selected/deselected or an item is created/removed
|
|
43
40
|
*/
|
|
@@ -124,6 +121,7 @@ interface MultiSelectCommonProps<T>
|
|
|
124
121
|
searchPredicate?: (item: T, query: string) => boolean;
|
|
125
122
|
}
|
|
126
123
|
|
|
124
|
+
/** @deprecated (v25) use MultiSuggestFieldProps */
|
|
127
125
|
export type MultiSelectProps<T> = MultiSelectCommonProps<T> &
|
|
128
126
|
(
|
|
129
127
|
| {
|
|
@@ -143,13 +141,10 @@ export type MultiSelectProps<T> = MultiSelectCommonProps<T> &
|
|
|
143
141
|
);
|
|
144
142
|
|
|
145
143
|
/**
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
* This component will be re-implemented later as a `Select` allowing multiple selections.
|
|
150
|
-
* @deprecated
|
|
144
|
+
* This component will be re-implemented as `Select` like element allowing multiple selections (or a `Select` option).
|
|
145
|
+
* New name for this component is `MultiSuggestField`.
|
|
151
146
|
*/
|
|
152
|
-
|
|
147
|
+
function MultiSelect<T>({
|
|
153
148
|
items,
|
|
154
149
|
selectedItems: externalSelectedItems,
|
|
155
150
|
prePopulateWithItems,
|
|
@@ -439,7 +434,7 @@ export function MultiSelect<T>({
|
|
|
439
434
|
<IconButton
|
|
440
435
|
disabled={disabled}
|
|
441
436
|
name="operation-clear"
|
|
442
|
-
data-test-id="clear-all-items" // @deprecated
|
|
437
|
+
data-test-id={dataTestId ? dataTestId + "_clearance" : "clear-all-items"} // @deprecated (v25) automatically set test id will be removed
|
|
443
438
|
onClick={handleClear}
|
|
444
439
|
/>
|
|
445
440
|
) : undefined;
|
|
@@ -537,15 +532,10 @@ export function MultiSelect<T>({
|
|
|
537
532
|
);
|
|
538
533
|
}
|
|
539
534
|
|
|
540
|
-
/** @deprecated */
|
|
541
|
-
/*
|
|
542
|
-
function ofType<U>() {
|
|
543
|
-
return (props: MultiSelectProps<U>) => <MultiSelect<U> {...props} />;
|
|
544
|
-
}
|
|
545
|
-
// */
|
|
546
|
-
|
|
547
535
|
// we still return the Blueprint element here because it was already used like that
|
|
548
|
-
|
|
536
|
+
/**
|
|
537
|
+
* @deprecated (v25) use directly <MultiSelect<TYPE>> (`ofType` also returns the original BlueprintJS element, not ours!)
|
|
538
|
+
*/
|
|
549
539
|
MultiSelect.ofType = BlueprintMultiSelect.ofType;
|
|
550
540
|
|
|
551
541
|
export default MultiSelect;
|
|
@@ -3,7 +3,7 @@ import { loremIpsum } from "react-lorem-ipsum";
|
|
|
3
3
|
import { Meta, StoryFn } from "@storybook/react";
|
|
4
4
|
import { fn } from "@storybook/test";
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import { MultiSuggestField, MultiSuggestFieldSelectionProps, SimpleDialog } from "./../../../index";
|
|
7
7
|
|
|
8
8
|
const testLabels = loremIpsum({
|
|
9
9
|
p: 1,
|
|
@@ -135,7 +135,7 @@ const CreationTemplate: StoryFn = () => {
|
|
|
135
135
|
|
|
136
136
|
const identity = useCallback((item: string): string => item, []);
|
|
137
137
|
|
|
138
|
-
const handleOnSelect = useCallback((params:
|
|
138
|
+
const handleOnSelect = useCallback((params: MultiSuggestFieldSelectionProps<string>) => {
|
|
139
139
|
const selected = params.selectedItems;
|
|
140
140
|
|
|
141
141
|
setSelectedValues(selected);
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
|
|
3
3
|
import { CLASSPREFIX as eccgui } from "../../configuration/constants";
|
|
4
|
-
import
|
|
4
|
+
import MultiSelect, { MultiSelectProps, MultiSelectSelectionProps } from "../MultiSelect/MultiSelect";
|
|
5
5
|
|
|
6
|
-
export type
|
|
6
|
+
export type MultiSuggestFieldSelectionProps<T> = MultiSelectSelectionProps<T>;
|
|
7
|
+
|
|
8
|
+
export interface MultiSuggestFieldProps<T> extends Omit<MultiSelectProps<T>, "onSelection"> {
|
|
9
|
+
/**
|
|
10
|
+
* function handler that would be called anytime an item is selected/deselected or an item is created/removed
|
|
11
|
+
*/
|
|
12
|
+
onSelection?: (params: MultiSuggestFieldSelectionProps<T>) => void;
|
|
13
|
+
}
|
|
7
14
|
|
|
8
15
|
/**
|
|
9
16
|
* Element behaves very similar to `SuggestField` but allows multiple selections.
|
|
@@ -16,7 +23,13 @@ export function MultiSuggestField<T>({ className, ...otherProps }: MultiSuggestF
|
|
|
16
23
|
return (
|
|
17
24
|
<MultiSelect<T>
|
|
18
25
|
className={`${eccgui}-multisuggestfield` + (className ? ` ${className}` : "")}
|
|
19
|
-
{...otherProps}
|
|
26
|
+
{...(otherProps as MultiSelectProps<T>)}
|
|
20
27
|
/>
|
|
21
28
|
);
|
|
22
29
|
}
|
|
30
|
+
|
|
31
|
+
// we still return the Blueprint element here because it was already used like that
|
|
32
|
+
/**
|
|
33
|
+
* @deprecated (v25) use directly <MultiSelect<TYPE>> (`ofType` also returns the original BlueprintJS element, not ours!)
|
|
34
|
+
*/
|
|
35
|
+
MultiSuggestField.ofType = MultiSelect.ofType;
|
|
@@ -3,7 +3,7 @@ import { fireEvent, render, screen, waitFor } from "@testing-library/react";
|
|
|
3
3
|
|
|
4
4
|
import "@testing-library/jest-dom";
|
|
5
5
|
|
|
6
|
-
import { MultiSuggestField } from "
|
|
6
|
+
import { MultiSuggestField } from "../../../../index";
|
|
7
7
|
import { CustomSearch, Default, dropdownOnFocus, predefinedNotControlledValues } from "../MultiSuggestField.stories";
|
|
8
8
|
|
|
9
9
|
const testLabels = ["label1", "label2", "label3", "label4", "label5"];
|
|
@@ -81,7 +81,7 @@ describe("MultiSuggestField", () => {
|
|
|
81
81
|
|
|
82
82
|
expect(container.querySelectorAll("[data-tag-index]").length).toBe(selectedLength);
|
|
83
83
|
|
|
84
|
-
const clearButton = container.querySelector('[data-test-id="
|
|
84
|
+
const clearButton = container.querySelector('[data-test-id="multi-suggest-field_clearance"');
|
|
85
85
|
|
|
86
86
|
expect(clearButton).toBeInTheDocument();
|
|
87
87
|
|
|
@@ -165,7 +165,7 @@ describe("MultiSuggestField", () => {
|
|
|
165
165
|
|
|
166
166
|
const { rerender, container } = render(<MultiSuggestField {...args} data-test-id="multi-suggest-field" />);
|
|
167
167
|
|
|
168
|
-
const clearButtonBefore = container.querySelector("[data-test-id='
|
|
168
|
+
const clearButtonBefore = container.querySelector("[data-test-id='multi-suggest-field_clearance'");
|
|
169
169
|
|
|
170
170
|
expect(clearButtonBefore).not.toBeInTheDocument();
|
|
171
171
|
|
|
@@ -186,7 +186,7 @@ describe("MultiSuggestField", () => {
|
|
|
186
186
|
});
|
|
187
187
|
|
|
188
188
|
await waitFor(() => {
|
|
189
|
-
const clearButtonAfter = container.querySelector("[data-test-id='
|
|
189
|
+
const clearButtonAfter = container.querySelector("[data-test-id='multi-suggest-field_clearance'");
|
|
190
190
|
|
|
191
191
|
expect(clearButtonAfter).toBeInTheDocument();
|
|
192
192
|
|
|
@@ -399,7 +399,7 @@ describe("MultiSuggestField", () => {
|
|
|
399
399
|
const [inputContainer] = container.getElementsByClassName("eccgui-multiselect");
|
|
400
400
|
const [input] = inputContainer.getElementsByTagName("input");
|
|
401
401
|
|
|
402
|
-
const clearButtonBefore = container.querySelector("[data-test-id='
|
|
402
|
+
const clearButtonBefore = container.querySelector("[data-test-id='multi-suggest-field_clearance'");
|
|
403
403
|
|
|
404
404
|
expect(clearButtonBefore).not.toBeInTheDocument();
|
|
405
405
|
|
|
@@ -451,7 +451,7 @@ describe("MultiSuggestField", () => {
|
|
|
451
451
|
});
|
|
452
452
|
|
|
453
453
|
await waitFor(() => {
|
|
454
|
-
const clearButtonAfter = container.querySelector("[data-test-id='
|
|
454
|
+
const clearButtonAfter = container.querySelector("[data-test-id='multi-suggest-field_clearance'");
|
|
455
455
|
|
|
456
456
|
expect(clearButtonAfter).toBeInTheDocument();
|
|
457
457
|
|
|
@@ -44,13 +44,6 @@ export interface NotificationProps
|
|
|
44
44
|
* This defines the colorization and the icon symbol.
|
|
45
45
|
*/
|
|
46
46
|
danger?: boolean;
|
|
47
|
-
/**
|
|
48
|
-
* @deprecated
|
|
49
|
-
* Notification uses the the given space more flexible.
|
|
50
|
-
* Deprecation notice: Property name will removed in future versions.
|
|
51
|
-
* Please use `flexWidth`.
|
|
52
|
-
*/
|
|
53
|
-
fullWidth?: boolean;
|
|
54
47
|
/**
|
|
55
48
|
* Notification uses the the given space more flexible.
|
|
56
49
|
* Default notification is displayed in min and max limits.
|
|
@@ -62,11 +55,6 @@ export interface NotificationProps
|
|
|
62
55
|
* Set it to false if you need to prevent automatically set icon regarding the notification type.
|
|
63
56
|
*/
|
|
64
57
|
icon?: false | React.ReactElement<IconProps> | React.ReactElement<TestIconProps>;
|
|
65
|
-
/**
|
|
66
|
-
* @deprecated
|
|
67
|
-
* Icon used as depiction that is displayed with the notification.
|
|
68
|
-
*/
|
|
69
|
-
iconName?: ValidIconName | null;
|
|
70
58
|
/**
|
|
71
59
|
* If set then a `div` element is used as wrapper.
|
|
72
60
|
* It uses the attributes given via this property.
|
|
@@ -87,9 +75,7 @@ export const Notification = ({
|
|
|
87
75
|
warning = false,
|
|
88
76
|
danger = false,
|
|
89
77
|
neutral = false,
|
|
90
|
-
fullWidth = false, // deprecated
|
|
91
78
|
flexWidth = false,
|
|
92
|
-
iconName = "state-info", // deprecated
|
|
93
79
|
icon,
|
|
94
80
|
timeout,
|
|
95
81
|
wrapperProps,
|
|
@@ -98,7 +84,7 @@ export const Notification = ({
|
|
|
98
84
|
...otherProps
|
|
99
85
|
}: NotificationProps) => {
|
|
100
86
|
let intentLevel: string = IntentClassNames.INFO;
|
|
101
|
-
let iconSymbol =
|
|
87
|
+
let iconSymbol = "state-info";
|
|
102
88
|
switch (true) {
|
|
103
89
|
case success:
|
|
104
90
|
intentLevel = IntentClassNames.SUCCESS;
|
|
@@ -119,7 +105,7 @@ export const Notification = ({
|
|
|
119
105
|
|
|
120
106
|
let notificationIcon = icon !== false ? icon : undefined;
|
|
121
107
|
if (icon !== false && !notificationIcon && !!iconSymbol) {
|
|
122
|
-
notificationIcon = <Icon name={iconSymbol} />;
|
|
108
|
+
notificationIcon = <Icon name={iconSymbol as ValidIconName} />;
|
|
123
109
|
}
|
|
124
110
|
|
|
125
111
|
const content = actions ? (
|
|
@@ -139,7 +125,6 @@ export const Notification = ({
|
|
|
139
125
|
`${eccgui}-notification ` +
|
|
140
126
|
intentLevel +
|
|
141
127
|
(className ? ` ${className}` : "") +
|
|
142
|
-
(fullWidth ? ` ${eccgui}-notification--fullwidth` : "") + // deprecated
|
|
143
128
|
(flexWidth ? ` ${eccgui}-notification--flexwidth` : "") +
|
|
144
129
|
(otherProps.onDismiss ? "" : ` ${eccgui}-notification--static`)
|
|
145
130
|
}
|