@procore/core-react 12.25.2 → 12.26.1
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/.jest/ckeditorMock.js +67 -0
- package/.jest/esToolkitMock.js +23 -0
- package/.jest/example.test.js +5 -0
- package/.jest/fileMock.js +1 -0
- package/.jest/public/avatar.png +0 -0
- package/.jest/setupTests.js +31 -0
- package/.jest/snapshotResolver.js +47 -0
- package/.jest/styleMock.js +1 -0
- package/.jest/styledV6PropsMock.js +23 -0
- package/.jest/svgTransform.js +10 -0
- package/.jest/testShims.js +22 -0
- package/.jest/translationMock.js +3 -0
- package/.jest/videoMock.js +1 -0
- package/CHANGELOG.md +17 -0
- package/README.md +49 -3
- package/dist/AnchorNavigation/AnchorNavigation.styles.js +3 -3
- package/dist/Avatar/Avatar.styles.js +5 -5
- package/dist/AvatarStack/AvatarStack.styles.js +7 -7
- package/dist/AvatarStack/mocks/getAvatarMocks.d.ts +25 -0
- package/dist/AvatarStack/mocks/getAvatarMocks.js +305 -0
- package/dist/AvatarStack/mocks/getAvatarMocks.js.map +1 -0
- package/dist/AvatarStack/mocks/images.d.ts +2 -0
- package/dist/AvatarStack/mocks/images.js +13 -0
- package/dist/AvatarStack/mocks/images.js.map +1 -0
- package/dist/AvatarStack/mocks/img/1.png +0 -0
- package/dist/AvatarStack/mocks/img/2.png +0 -0
- package/dist/AvatarStack/mocks/img/3.png +0 -0
- package/dist/AvatarStack/mocks/img/4.png +0 -0
- package/dist/AvatarStack/mocks/img/5.png +0 -0
- package/dist/AvatarStack/mocks/logo/1.png +0 -0
- package/dist/AvatarStack/mocks/logo/2.png +0 -0
- package/dist/AvatarStack/mocks/logo/3.png +0 -0
- package/dist/AvatarStack/mocks/logo/4.png +0 -0
- package/dist/AvatarStack/mocks/logo/5.png +0 -0
- package/dist/Badge/Badge.styles.js +2 -2
- package/dist/BadgePill/BadgePill.styles.js +4 -4
- package/dist/Banner/Banner.styles.js +10 -10
- package/dist/Box/Box.styles.js +1 -1
- package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
- package/dist/Button/Button.styles.js +5 -5
- package/dist/Calendar/Calendar.styles.js +8 -8
- package/dist/Card/Card.styles.js +1 -1
- package/dist/Checkbox/Checkbox.styles.js +6 -6
- package/dist/Checkbox/CheckboxTooltip.js +1 -1
- package/dist/ContactItem/ContactItem.styles.js +5 -5
- package/dist/Content/Content.styles.js +2 -2
- package/dist/DateInput/DateInput.styles.js +6 -6
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.d.ts +19 -0
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.js +159 -0
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.js.map +1 -0
- package/dist/{TextEditor/TextEditor.styles.js → DeprecatedTextEditor/DeprecatedTextEditor.styles.js} +1 -1
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.styles.js.map +1 -0
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.types.d.ts +72 -0
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.types.js +2 -0
- package/dist/DeprecatedTextEditor/DeprecatedTextEditor.types.js.map +1 -0
- package/dist/DeprecatedTextEditor/index.d.ts +2 -0
- package/dist/DeprecatedTextEditor/index.js +3 -0
- package/dist/DeprecatedTextEditor/index.js.map +1 -0
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.d.ts +12 -0
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.js +45 -0
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.js.map +1 -0
- package/dist/{TextEditorOutput/TextEditorOutput.styles.js → DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.styles.js} +2 -2
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.styles.js.map +1 -0
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.types.d.ts +16 -0
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.types.js +2 -0
- package/dist/DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.types.js.map +1 -0
- package/dist/DeprecatedTextEditorOutput/index.d.ts +2 -0
- package/dist/DeprecatedTextEditorOutput/index.js +2 -0
- package/dist/DeprecatedTextEditorOutput/index.js.map +1 -0
- package/dist/DetailPage/DetailPage.styles.js +7 -7
- package/dist/Dropdown/Dropdown.styles.js +3 -3
- package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
- package/dist/Dropzone/Dropzone.js +1 -1
- package/dist/Dropzone/Dropzone.styles.js +9 -9
- package/dist/EmptyState/EmptyState.styles.js +6 -6
- package/dist/EmptyState/assets/default.stories.png +0 -0
- package/dist/Field/Field.styles.js +3 -3
- package/dist/FileList/FileList.styles.js +4 -4
- package/dist/FileList/storybook/fileListMockData.d.ts +5 -0
- package/dist/FileList/storybook/fileListMockData.js +34 -0
- package/dist/FileList/storybook/fileListMockData.js.map +1 -0
- package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
- package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
- package/dist/FileSelect/FileSelect.styles.js +2 -2
- package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
- package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
- package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
- package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
- package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
- package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
- package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
- package/dist/FileToken/FileToken.styles.js +4 -4
- package/dist/FilterToken/FilterToken.styles.js +5 -5
- package/dist/FlexList/FlexList.styles.js +1 -1
- package/dist/Form/Form.js +1 -30
- package/dist/Form/Form.js.map +1 -1
- package/dist/Form/Form.styles.js +14 -14
- package/dist/Form/StyledFormikForm.styles.js +2 -2
- package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
- package/dist/Grid/Grid.styles.js +2 -2
- package/dist/GroupSelect/GroupSelect.styles.js +1 -1
- package/dist/GroupSelect/mocks/groupSelectMockData.d.ts +18 -0
- package/dist/GroupSelect/mocks/groupSelectMockData.js +122 -0
- package/dist/GroupSelect/mocks/groupSelectMockData.js.map +1 -0
- package/dist/Input/Input.styles.js +1 -1
- package/dist/Link/Link.styles.js +1 -1
- package/dist/ListPage/ListPage.styles.js +8 -8
- package/dist/Loader/Loader.styles.js +2 -2
- package/dist/MenuImperative/MenuImperative.styles.js +10 -10
- package/dist/Modal/Modal.styles.js +15 -15
- package/dist/Modal/Modal.styles.js.map +1 -1
- package/dist/MultiSelect/MultiSelect.styles.js +6 -6
- package/dist/NextMenu/NextMenu.styles.js +3 -3
- package/dist/NextTextEditor/EditorError.d.ts +2 -0
- package/dist/NextTextEditor/EditorError.js +9 -0
- package/dist/NextTextEditor/EditorError.js.map +1 -0
- package/dist/NextTextEditor/NextTextEditor.d.ts +3 -0
- package/dist/NextTextEditor/NextTextEditor.js +156 -0
- package/dist/NextTextEditor/NextTextEditor.js.map +1 -0
- package/dist/NextTextEditor/NextTextEditor.styles.d.ts +5 -0
- package/dist/NextTextEditor/NextTextEditor.styles.js +22 -0
- package/dist/NextTextEditor/NextTextEditor.styles.js.map +1 -0
- package/dist/NextTextEditor/NextTextEditor.types.d.ts +111 -0
- package/dist/NextTextEditor/NextTextEditor.types.js +2 -0
- package/dist/NextTextEditor/NextTextEditor.types.js.map +1 -0
- package/dist/NextTextEditor/StickyToolbar/StickyToolbar.types.d.ts +5 -0
- package/dist/NextTextEditor/StickyToolbar/StickyToolbar.types.js +2 -0
- package/dist/NextTextEditor/StickyToolbar/StickyToolbar.types.js.map +1 -0
- package/dist/NextTextEditor/StickyToolbar/StickyToolbar.utils.d.ts +3 -0
- package/dist/NextTextEditor/StickyToolbar/StickyToolbar.utils.js +153 -0
- package/dist/NextTextEditor/StickyToolbar/StickyToolbar.utils.js.map +1 -0
- package/dist/NextTextEditor/StickyToolbar/index.d.ts +4 -0
- package/dist/NextTextEditor/StickyToolbar/index.js +3 -0
- package/dist/NextTextEditor/StickyToolbar/index.js.map +1 -0
- package/dist/NextTextEditor/StickyToolbar/useStickyToolbar.d.ts +2 -0
- package/dist/NextTextEditor/StickyToolbar/useStickyToolbar.js +49 -0
- package/dist/NextTextEditor/StickyToolbar/useStickyToolbar.js.map +1 -0
- package/dist/NextTextEditor/StickyToolbar/useStickyToolbar.types.d.ts +12 -0
- package/dist/NextTextEditor/StickyToolbar/useStickyToolbar.types.js +2 -0
- package/dist/NextTextEditor/StickyToolbar/useStickyToolbar.types.js.map +1 -0
- package/dist/NextTextEditor/index.d.ts +2 -0
- package/dist/NextTextEditor/index.js +3 -0
- package/dist/NextTextEditor/index.js.map +1 -0
- package/dist/NextTextEditor/license_key.d.ts +2 -0
- package/dist/NextTextEditor/license_key.js +3 -0
- package/dist/NextTextEditor/license_key.js.map +1 -0
- package/dist/NextTextEditor/plugins/CutPlugin/CutCommand.d.ts +5 -0
- package/dist/NextTextEditor/plugins/CutPlugin/CutCommand.js +99 -0
- package/dist/NextTextEditor/plugins/CutPlugin/CutCommand.js.map +1 -0
- package/dist/NextTextEditor/plugins/CutPlugin/CutPlugin.d.ts +5 -0
- package/dist/NextTextEditor/plugins/CutPlugin/CutPlugin.js +56 -0
- package/dist/NextTextEditor/plugins/CutPlugin/CutPlugin.js.map +1 -0
- package/dist/NextTextEditor/plugins/CutPlugin/index.d.ts +1 -0
- package/dist/NextTextEditor/plugins/CutPlugin/index.js +2 -0
- package/dist/NextTextEditor/plugins/CutPlugin/index.js.map +1 -0
- package/dist/NextTextEditor/plugins/IndentPaddingToMarginPlugin/IndentPaddingToMarginPlugin.d.ts +5 -0
- package/dist/NextTextEditor/plugins/IndentPaddingToMarginPlugin/IndentPaddingToMarginPlugin.js +40 -0
- package/dist/NextTextEditor/plugins/IndentPaddingToMarginPlugin/IndentPaddingToMarginPlugin.js.map +1 -0
- package/dist/NextTextEditor/plugins/IndentPaddingToMarginPlugin/index.d.ts +1 -0
- package/dist/NextTextEditor/plugins/IndentPaddingToMarginPlugin/index.js +2 -0
- package/dist/NextTextEditor/plugins/IndentPaddingToMarginPlugin/index.js.map +1 -0
- package/dist/NextTextEditor/plugins/LegacyPasteAdapter/index.d.ts +15 -0
- package/dist/NextTextEditor/plugins/LegacyPasteAdapter/index.js +65 -0
- package/dist/NextTextEditor/plugins/LegacyPasteAdapter/index.js.map +1 -0
- package/dist/NextTextEditor/plugins/LegacyPasteAdapter/legacyTinyMceAdapter.d.ts +13 -0
- package/dist/NextTextEditor/plugins/LegacyPasteAdapter/legacyTinyMceAdapter.js +80 -0
- package/dist/NextTextEditor/plugins/LegacyPasteAdapter/legacyTinyMceAdapter.js.map +1 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/PasteAsTextCommand.d.ts +5 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/PasteAsTextCommand.js +86 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/PasteAsTextCommand.js.map +1 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/PasteAsTextPlugin.d.ts +5 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/PasteAsTextPlugin.js +56 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/PasteAsTextPlugin.js.map +1 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/index.d.ts +1 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/index.js +2 -0
- package/dist/NextTextEditor/plugins/PasteAsTextPlugin/index.js.map +1 -0
- package/dist/NextTextEditor/plugins/PastePlugin/PasteCommand.d.ts +5 -0
- package/dist/NextTextEditor/plugins/PastePlugin/PasteCommand.js +149 -0
- package/dist/NextTextEditor/plugins/PastePlugin/PasteCommand.js.map +1 -0
- package/dist/NextTextEditor/plugins/PastePlugin/PastePlugin.d.ts +5 -0
- package/dist/NextTextEditor/plugins/PastePlugin/PastePlugin.js +56 -0
- package/dist/NextTextEditor/plugins/PastePlugin/PastePlugin.js.map +1 -0
- package/dist/NextTextEditor/plugins/PastePlugin/index.d.ts +1 -0
- package/dist/NextTextEditor/plugins/PastePlugin/index.js +2 -0
- package/dist/NextTextEditor/plugins/PastePlugin/index.js.map +1 -0
- package/dist/NextTextEditor/plugins/TabSpacesPlugin/TabSpacesPlugin.d.ts +6 -0
- package/dist/NextTextEditor/plugins/TabSpacesPlugin/TabSpacesPlugin.js +87 -0
- package/dist/NextTextEditor/plugins/TabSpacesPlugin/TabSpacesPlugin.js.map +1 -0
- package/dist/NextTextEditor/plugins/TabSpacesPlugin/index.d.ts +1 -0
- package/dist/NextTextEditor/plugins/TabSpacesPlugin/index.js +2 -0
- package/dist/NextTextEditor/plugins/TabSpacesPlugin/index.js.map +1 -0
- package/dist/NextTextEditor/textEditorTheming/icons.d.ts +23 -0
- package/dist/NextTextEditor/textEditorTheming/icons.js +24 -0
- package/dist/NextTextEditor/textEditorTheming/icons.js.map +1 -0
- package/dist/NextTextEditor/textEditorTheming/index.d.ts +1 -0
- package/dist/NextTextEditor/textEditorTheming/index.js +2 -0
- package/dist/NextTextEditor/textEditorTheming/index.js.map +1 -0
- package/dist/NextTextEditor/textEditorTheming/textEditorTheming.styles.d.ts +2 -0
- package/dist/NextTextEditor/textEditorTheming/textEditorTheming.styles.js +10 -0
- package/dist/NextTextEditor/textEditorTheming/textEditorTheming.styles.js.map +1 -0
- package/dist/NextTextEditor/useCKEditorCss.d.ts +3 -0
- package/dist/NextTextEditor/useCKEditorCss.js +36 -0
- package/dist/NextTextEditor/useCKEditorCss.js.map +1 -0
- package/dist/NextTextEditor/useTabAsNavigation.d.ts +11 -0
- package/dist/NextTextEditor/useTabAsNavigation.js +29 -0
- package/dist/NextTextEditor/useTabAsNavigation.js.map +1 -0
- package/dist/NextTextEditor/utils/config.d.ts +3 -0
- package/dist/NextTextEditor/utils/config.js +179 -0
- package/dist/NextTextEditor/utils/config.js.map +1 -0
- package/dist/NextTextEditor/utils/index.d.ts +2 -0
- package/dist/NextTextEditor/utils/index.js +3 -0
- package/dist/NextTextEditor/utils/index.js.map +1 -0
- package/dist/NextTextEditor/utils/locale.d.ts +3 -0
- package/dist/NextTextEditor/utils/locale.js +102 -0
- package/dist/NextTextEditor/utils/locale.js.map +1 -0
- package/dist/NextTextEditor/utils/plugins.d.ts +7 -0
- package/dist/NextTextEditor/utils/plugins.js +184 -0
- package/dist/NextTextEditor/utils/plugins.js.map +1 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.d.ts +9 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.js +29 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.js.map +1 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.styles.d.ts +2 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.styles.js +6 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.styles.js.map +1 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.types.d.ts +9 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.types.js +2 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.types.js.map +1 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.utils.d.ts +2 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.utils.js +59 -0
- package/dist/NextTextEditorOutput/NextTextEditorOutput.utils.js.map +1 -0
- package/dist/NextTextEditorOutput/index.d.ts +2 -0
- package/dist/NextTextEditorOutput/index.js +2 -0
- package/dist/NextTextEditorOutput/index.js.map +1 -0
- package/dist/Notation/Notation.js +1 -1
- package/dist/NumberInput/NumberInput.styles.js +7 -7
- package/dist/Overlay/OverlayArrow.styles.js +1 -1
- package/dist/PageLayout/PageLayout.styles.js +16 -16
- package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
- package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
- package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
- package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
- package/dist/Pagination/Pagination.styles.js +5 -5
- package/dist/Panel/Panel.styles.js +13 -13
- package/dist/Panel/Panel.styles.js.map +1 -1
- package/dist/Pill/Pill.styles.js +3 -3
- package/dist/PillSelect/PillSelect.styles.js +4 -4
- package/dist/Popover/Popover.styles.js +2 -2
- package/dist/Portal/Portal.styles.js +1 -1
- package/dist/ProgressBar/ProgressBar.styles.js +2 -2
- package/dist/RadioButton/RadioButton.styles.js +3 -3
- package/dist/Required/Required.styles.js +3 -3
- package/dist/Search/Search.styles.js +5 -5
- package/dist/Section/Section.styles.js +7 -7
- package/dist/SegmentedController/SegmentedController.styles.js +4 -4
- package/dist/Select/Select.styles.js +7 -7
- package/dist/Semantic/Semantic.styles.js +9 -9
- package/dist/Slider/Slider.styles.js +5 -5
- package/dist/Spinner/Spinner.js +5 -7
- package/dist/Spinner/Spinner.js.map +1 -1
- package/dist/Spinner/Spinner.styles.js +7 -7
- package/dist/SplitViewCard/SplitViewCard.styles.js +10 -10
- package/dist/SplitViewCard/SplitViewCard.styles.js.map +1 -1
- package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
- package/dist/SuperSelect/SuperSelect.styles.js +37 -37
- package/dist/Switch/Switch.styles.js +4 -4
- package/dist/Table/Table.styles.js +28 -28
- package/dist/TableShelf/TableShelf.styles.js +5 -5
- package/dist/Tabs/Tabs.styles.js +15 -15
- package/dist/Tearsheet/Tearsheet.styles.js +7 -7
- package/dist/Tearsheet/Tearsheet.styles.js.map +1 -1
- package/dist/Tearsheet/storybook/PageLayoutDemo.d.ts +4 -0
- package/dist/Tearsheet/storybook/PageLayoutDemo.js +164 -0
- package/dist/Tearsheet/storybook/PageLayoutDemo.js.map +1 -0
- package/dist/TextArea/TextArea.styles.js +1 -1
- package/dist/TextEditor/TextEditor.d.ts +2 -19
- package/dist/TextEditor/TextEditor.js +11 -169
- package/dist/TextEditor/TextEditor.js.map +1 -1
- package/dist/TextEditor/TextEditor.types.d.ts +19 -86
- package/dist/TextEditor/TextEditor.types.js.map +1 -1
- package/dist/TextEditor/TextEditorDocs.types.d.ts +65 -0
- package/dist/TextEditor/TextEditorDocs.types.js +2 -0
- package/dist/TextEditor/TextEditorDocs.types.js.map +1 -0
- package/dist/TextEditor/TextEditorProvider.d.ts +4 -0
- package/dist/TextEditor/TextEditorProvider.js +17 -0
- package/dist/TextEditor/TextEditorProvider.js.map +1 -0
- package/dist/TextEditor/TextEditorProvider.types.d.ts +14 -0
- package/dist/TextEditor/TextEditorProvider.types.js +2 -0
- package/dist/TextEditor/TextEditorProvider.types.js.map +1 -0
- package/dist/TextEditor/index.d.ts +4 -2
- package/dist/TextEditor/index.js +2 -1
- package/dist/TextEditor/index.js.map +1 -1
- package/dist/TextEditorOutput/TextEditorOutput.d.ts +6 -8
- package/dist/TextEditorOutput/TextEditorOutput.js +17 -34
- package/dist/TextEditorOutput/TextEditorOutput.js.map +1 -1
- package/dist/TextEditorOutput/TextEditorOutput.types.d.ts +16 -13
- package/dist/TextEditorOutput/TextEditorOutput.types.js.map +1 -1
- package/dist/TextEditorOutput/TextEditorOutputDocs.types.d.ts +21 -0
- package/dist/TextEditorOutput/TextEditorOutputDocs.types.js +2 -0
- package/dist/TextEditorOutput/TextEditorOutputDocs.types.js.map +1 -0
- package/dist/Thumbnail/Thumbnail.styles.js +17 -17
- package/dist/Thumbnail/mocks/images/thumb_104x104_1.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_104x104_2.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_104x104_3.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_104x104_4.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_40x40_1.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_40x40_2.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_40x40_3.png +0 -0
- package/dist/Thumbnail/mocks/images/thumb_40x40_4.png +0 -0
- package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
- package/dist/TieredSelect/TierSelectionTieredSelect.js +3 -1
- package/dist/TieredSelect/TierSelectionTieredSelect.js.map +1 -1
- package/dist/TieredSelect/TieredSelect.styles.js +9 -9
- package/dist/TieredSelect/TieredSelect.types.d.ts +4 -0
- package/dist/TieredSelect/TieredSelect.types.js.map +1 -1
- package/dist/Tile/Tile.styles.js +8 -8
- package/dist/Tile/mocks/dog.jpeg +0 -0
- package/dist/Tile/mocks/iframe.d.ts +5 -0
- package/dist/Tile/mocks/iframe.js +15 -0
- package/dist/Tile/mocks/iframe.js.map +1 -0
- package/dist/Tile/mocks/svg.d.ts +3 -0
- package/dist/Tile/mocks/svg.js +830 -0
- package/dist/Tile/mocks/svg.js.map +1 -0
- package/dist/Tile/mocks/video.mp4 +0 -0
- package/dist/Title/Title.styles.js +7 -7
- package/dist/Title/mocks/thumb_40x40_1.png +0 -0
- package/dist/Title/mocks/visual_placeholder_40x40.svg +9 -0
- package/dist/Toast/Toast.styles.js +3 -3
- package/dist/ToggleButton/ToggleButton.styles.js +1 -1
- package/dist/Token/Token.styles.js +3 -3
- package/dist/ToolHeader/ToolHeader.styles.js +6 -6
- package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
- package/dist/Tooltip/Tooltip.styles.js +2 -2
- package/dist/Tree/Tree.styles.js +9 -9
- package/dist/Tree/mocks/treeMockData.d.ts +8 -0
- package/dist/Tree/mocks/treeMockData.js +44 -0
- package/dist/Tree/mocks/treeMockData.js.map +1 -0
- package/dist/Typeahead/Typeahead.styles.js +3 -3
- package/dist/Typography/Typography.styles.js +1 -1
- package/dist/Typography/Typography.table.story.js +2 -2
- package/dist/_storyHelpers_/components/Deprecation.d.ts +3 -0
- package/dist/_storyHelpers_/components/Deprecation.js +10 -0
- package/dist/_storyHelpers_/components/Deprecation.js.map +1 -0
- package/dist/_storyHelpers_/components/Deprecation.styles.d.ts +4 -0
- package/dist/_storyHelpers_/components/Deprecation.styles.js +7 -0
- package/dist/_storyHelpers_/components/Deprecation.styles.js.map +1 -0
- package/dist/_storyHelpers_/components/Deprecation.types.d.ts +9 -0
- package/dist/_storyHelpers_/components/Deprecation.types.js +2 -0
- package/dist/_storyHelpers_/components/Deprecation.types.js.map +1 -0
- package/dist/_storyHelpers_/components/FullLayout.d.ts +6 -0
- package/dist/_storyHelpers_/components/FullLayout.js +15 -0
- package/dist/_storyHelpers_/components/FullLayout.js.map +1 -0
- package/dist/_storyHelpers_/components/StoryGrid.d.ts +7 -0
- package/dist/_storyHelpers_/components/StoryGrid.js +40 -0
- package/dist/_storyHelpers_/components/StoryGrid.js.map +1 -0
- package/dist/_storyHelpers_/components/WithNavigationLayout.d.ts +2 -0
- package/dist/_storyHelpers_/components/WithNavigationLayout.js +47 -0
- package/dist/_storyHelpers_/components/WithNavigationLayout.js.map +1 -0
- package/dist/_storyHelpers_/constants.d.ts +35 -0
- package/dist/_storyHelpers_/constants.js +168 -0
- package/dist/_storyHelpers_/constants.js.map +1 -0
- package/dist/_storyHelpers_/decorators/fullLayoutDecorator.d.ts +3 -0
- package/dist/_storyHelpers_/decorators/fullLayoutDecorator.js +8 -0
- package/dist/_storyHelpers_/decorators/fullLayoutDecorator.js.map +1 -0
- package/dist/_storyHelpers_/effects/useWaitForElement.d.ts +1 -0
- package/dist/_storyHelpers_/effects/useWaitForElement.js +24 -0
- package/dist/_storyHelpers_/effects/useWaitForElement.js.map +1 -0
- package/dist/_storyHelpers_/mocks/dropzoneMockData.d.ts +13 -0
- package/dist/_storyHelpers_/mocks/dropzoneMockData.js +39 -0
- package/dist/_storyHelpers_/mocks/dropzoneMockData.js.map +1 -0
- package/dist/_storyHelpers_/mocks/pillSelectMockData.d.ts +6 -0
- package/dist/_storyHelpers_/mocks/pillSelectMockData.js +22 -0
- package/dist/_storyHelpers_/mocks/pillSelectMockData.js.map +1 -0
- package/dist/_storyHelpers_/mocks/selectMockData.d.ts +11 -0
- package/dist/_storyHelpers_/mocks/selectMockData.js +36 -0
- package/dist/_storyHelpers_/mocks/selectMockData.js.map +1 -0
- package/dist/_storyHelpers_/mocks/tableMockData.d.ts +4 -0
- package/dist/_storyHelpers_/mocks/tableMockData.js +38 -0
- package/dist/_storyHelpers_/mocks/tableMockData.js.map +1 -0
- package/dist/_storyHelpers_/mocks/tieredSelect.d.ts +77 -0
- package/dist/_storyHelpers_/mocks/tieredSelect.js +277 -0
- package/dist/_storyHelpers_/mocks/tieredSelect.js.map +1 -0
- package/dist/_styles/mixins.d.ts +4 -0
- package/dist/_styles/mixins.js +7 -0
- package/dist/_styles/mixins.js.map +1 -1
- package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +3 -3
- package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
- package/dist/_typedoc/AvatarStack/AvatarStack.types.json +24 -24
- package/dist/_typedoc/Badge/Badge.types.json +6 -6
- package/dist/_typedoc/Banner/Banner.types.json +13 -13
- package/dist/_typedoc/Box/Box.types.json +68 -68
- package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
- package/dist/_typedoc/Button/Button.types.json +13 -13
- package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
- package/dist/_typedoc/Card/Card.types.json +6 -6
- package/dist/_typedoc/Checkbox/Checkbox.types.json +8 -8
- package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
- package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
- package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
- package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
- package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
- package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +30 -30
- package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
- package/dist/_typedoc/EmptyState/EmptyState.types.json +16 -16
- package/dist/_typedoc/FileList/FileList.types.json +9 -9
- package/dist/_typedoc/FileSelect/FileSelect.types.json +27 -27
- package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
- package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
- package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
- package/dist/_typedoc/Flex/Flex.types.json +27 -27
- package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
- package/dist/_typedoc/Form/Form.types.json +929 -773
- package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
- package/dist/_typedoc/Grid/Grid.types.json +8 -8
- package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
- package/dist/_typedoc/Input/Input.types.json +2 -2
- package/dist/_typedoc/Link/Link.types.json +1 -1
- package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
- package/dist/_typedoc/Menu/Menu.types.json +62 -62
- package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
- package/dist/_typedoc/Modal/Modal.types.json +46 -46
- package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
- package/dist/_typedoc/NextTile/NextTile.types.json +32 -32
- package/dist/_typedoc/Notation/Notation.types.json +4 -4
- package/dist/_typedoc/NumberInput/NumberInput.types.json +37 -37
- package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +32 -32
- package/dist/_typedoc/PageLayout/PageLayout.types.json +26 -26
- package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
- package/dist/_typedoc/Panel/Panel.types.json +30 -30
- package/dist/_typedoc/Pill/Pill.types.json +2 -2
- package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
- package/dist/_typedoc/Popover/Popover.types.json +15 -15
- package/dist/_typedoc/ProgressBar/ProgressBar.types.json +7 -7
- package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
- package/dist/_typedoc/Required/Required.types.json +5 -5
- package/dist/_typedoc/Search/Search.types.json +18 -18
- package/dist/_typedoc/Section/Section.types.json +15 -15
- package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
- package/dist/_typedoc/Select/Select.types.json +60 -60
- package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
- package/dist/_typedoc/Slider/Slider.types.json +6 -6
- package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
- package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +14 -14
- package/dist/_typedoc/Table/Table.types.json +101 -101
- package/dist/_typedoc/Tabs/Tabs.types.json +20 -20
- package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
- package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
- package/dist/_typedoc/TextEditor/TextEditor.types.json +1 -100
- package/dist/_typedoc/TextEditor/TextEditorDocs.types.json +98 -0
- package/dist/_typedoc/TextEditor/TextEditorProvider.types.json +28 -0
- package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +6 -42
- package/dist/_typedoc/TextEditorOutput/TextEditorOutputDocs.types.json +38 -0
- package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
- package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
- package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
- package/dist/_typedoc/Tile/Tile.types.json +8 -8
- package/dist/_typedoc/Title/Title.types.json +1 -1
- package/dist/_typedoc/Toast/Toast.types.json +4 -4
- package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
- package/dist/_typedoc/Token/Token.types.json +6 -6
- package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
- package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +7 -7
- package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
- package/dist/_typedoc/Tree/Tree.types.json +86 -86
- package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
- package/dist/_typedoc/Typography/Typography.types.json +9 -9
- package/dist/_typedoc/_utils/types.json +3 -3
- package/dist/_typedoc/deprecations.json +1 -1
- package/dist/_utils/propsTypedoc.d.ts +3 -0
- package/dist/_utils/propsTypedoc.js +3 -0
- package/dist/_utils/propsTypedoc.js.map +1 -1
- package/jestConfig.js +52 -0
- package/package.json +26 -11
- package/.eslintignore +0 -4
- package/.eslintrc.cjs +0 -54
- package/__mocks__/@react-aria/utils.js +0 -10
- package/babel.config.js +0 -40
- package/dist/TextEditor/TextEditor.styles.js.map +0 -1
- package/dist/TextEditorOutput/TextEditorOutput.styles.js.map +0 -1
- package/tsconfig.json +0 -24
- package/tsconfig.prod.json +0 -11
- package/tsconfig.test.json +0 -4
- /package/dist/{TextEditor/TextEditor.styles.d.ts → DeprecatedTextEditor/DeprecatedTextEditor.styles.d.ts} +0 -0
- /package/dist/{TextEditorOutput/TextEditorOutput.styles.d.ts → DeprecatedTextEditorOutput/DeprecatedTextEditorOutput.styles.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tearsheet.styles.js","names":["styled","css","keyframes","Card","StyledPageContainer","colors","getFocus","getShadow","spacing","isIE11","animationSpeed","disabled","tearsheet","scrim","closeButton","slideDistance","positioningProps","right","open","closed","concat","placement","shadow","top","bottom","left","getSlideInAnimation","$placement","getSlideOutAnimation","StyledTearsheetContent","div","withConfig","displayName","componentId","_ref","$open","_ref2","_ref3","$opening","_ref4","$closing","minScrimSize","xxl","StyledTearsheetBody","white","_ref5","$block","$stretch","size","includes","_ref6","zoomIn","zoomOut","StyledScrimContainer","_ref7","minSizeProp","StyledButtonContainer","_ref8","StyledButtonCard","xl","_ref9","_ref0","_ref1"],"sources":["../../src/Tearsheet/Tearsheet.styles.ts"],"sourcesContent":["import type { RuleSet } from 'styled-components'\nimport styled, { css, keyframes } from 'styled-components'\nimport { Card } from '../Card'\nimport { StyledPageContainer } from '../PageLayout/PageLayout.styles'\nimport { colors } from '../_styles/colors'\nimport { getFocus } from '../_styles/mixins'\nimport { getShadow } from '../_styles/shadows'\nimport { spacing } from '../_styles/spacing'\nimport { isIE11 } from '../_utils/isIE11'\nimport type { Placement } from './Tearsheet.types'\n\nexport const animationSpeed = {\n disabled: 0,\n tearsheet: 800,\n scrim: 300,\n closeButton: 150,\n}\n\nconst slideDistance = '100%'\n\nconst positioningProps: Record<\n Placement,\n Record<'open' | 'closed' | 'placement' | 'shadow', string | RuleSet<object>>\n> = {\n right: {\n open: `translateX(0);`,\n closed: `translateX(${slideDistance});`,\n placement: css`\n flex-direction: row;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'left'),\n },\n // @ts-ignore\n top: {\n open: `translateY(0);`,\n closed: `translateY(-${slideDistance});`,\n placement: css`\n flex-direction: column-reverse;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'bottom'),\n },\n bottom: {\n open: `translateY(0);`,\n closed: `translateY(${slideDistance});`,\n placement: css`\n flex-direction: column;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'top'),\n },\n left: {\n open: `translateX(0);`,\n closed: `translateX(-${slideDistance});`,\n placement: css`\n flex-direction: row-reverse;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'right'),\n },\n}\n\nconst getSlideInAnimation = ($placement: Placement) => keyframes`\n from {\n transform: ${positioningProps[$placement].closed};\n }\n to {\n transform: ${positioningProps[$placement].open};\n }\n`\n\nconst getSlideOutAnimation = ($placement: Placement) => keyframes`\n from {\n transform: ${positioningProps[$placement].open};\n }\n to {\n transform: ${positioningProps[$placement].closed};\n }\n`\n\nexport const StyledTearsheetContent = styled.div<{\n $placement: Placement\n $open: boolean\n $opening?: boolean\n $closing?: boolean\n}>`\n display: flex;\n z-index: 2;\n width: 100%;\n\n ${({ $open, $placement }) =>\n $open\n ? css`\n transform: ${positioningProps[$placement].open};\n `\n : css`\n transform: ${positioningProps[$placement].closed};\n `}\n\n ${({ $placement }) => positioningProps[$placement].placement}\n\n ${({ $opening, $placement }) =>\n $opening &&\n css`\n animation: ${getSlideInAnimation($placement)}\n ${animationSpeed.tearsheet}ms ease-out;\n transform: ${positioningProps[$placement].open};\n pointer-events: none;\n `}\n\n ${({ $closing, $placement }) =>\n $closing &&\n css`\n animation: ${getSlideOutAnimation($placement)}\n ${animationSpeed.tearsheet}ms ease-out;\n transform: ${positioningProps[$placement].closed};\n pointer-events: none;\n `}\n`\n\nexport const minScrimSize = spacing.xxl * 3\n\nexport const StyledTearsheetBody = styled.div<{\n $block: boolean\n $placement: Placement\n $stretch: boolean\n}>`\n display: flex;\n overflow-y: auto;\n flex-direction: column;\n background-color: ${colors.white};\n\n &:focus-visible {\n ${getFocus()}\n }\n\n ${({ $block, $placement, $stretch }) => {\n const size = ['top', 'bottom'].includes($placement) ? '100vh' : '100vw'\n\n return (\n ($stretch || $block) &&\n css`\n flex: 0 0 calc(${size} - ${minScrimSize}px);\n `\n )\n }}\n\n ${({ $placement }) => {\n if (!isIE11()) {\n return ''\n }\n\n if (['top', 'bottom'].includes($placement)) {\n return css`\n ${StyledPageContainer} {\n width: 100vw;\n }\n `\n }\n\n return css`\n ${StyledPageContainer} {\n width: 95vw;\n }\n `\n }}}\n`\n\nconst zoomIn = keyframes`\n from {\n transform: scale(0);\n }\n to {\n transform: scale(1);\n }\n`\n\nconst zoomOut = keyframes`\n from {\n transform: scale(1);\n }\n to {\n transform: scale(0);\n }\n`\n\nexport const StyledScrimContainer = styled.div<{ $placement: Placement }>`\n ${({ $placement }) => {\n const minSizeProp = ['top', 'bottom'].includes($placement)\n ? 'min-height'\n : 'min-width'\n\n return css`\n ${minSizeProp}: ${minScrimSize}px;\n flex-grow: 1;\n `\n }}\n`\n\nexport const StyledButtonContainer = styled.div<{ $placement: Placement }>`\n ${({ $placement }) => {\n switch ($placement) {\n case 'bottom':\n return css`\n display: flex;\n justify-content: flex-end;\n flex-direction: column;\n height: 100%;\n `\n case 'right':\n return css`\n display: flex;\n justify-content: flex-end;\n `\n case 'left':\n default:\n return\n }\n }}\n`\n\nexport const StyledButtonCard = styled(Card)<{\n $open: boolean\n $opening?: boolean\n $closing?: boolean\n}>`\n display: inline-flex;\n margin: ${spacing.xl}px;\n\n ${({ $open }) =>\n $open\n ? css`\n transform: scale(1);\n `\n : css`\n transform: scale(0);\n `}\n\n ${({ $opening }) =>\n $opening &&\n css`\n animation: ${zoomIn} ${animationSpeed.closeButton}ms;\n transform: scale(1);\n `}\n\n ${({ $closing }) =>\n $closing &&\n css`\n animation: ${zoomOut} ${animationSpeed.closeButton}ms;\n transform: scale(0);\n `}\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tearsheet.styles.js","names":["styled","css","keyframes","Card","StyledPageContainer","colors","getFocusInset","getShadow","spacing","isIE11","animationSpeed","disabled","tearsheet","scrim","closeButton","slideDistance","positioningProps","right","open","closed","concat","placement","shadow","top","bottom","left","getSlideInAnimation","$placement","getSlideOutAnimation","StyledTearsheetContent","div","withConfig","displayName","componentId","_ref","$open","_ref2","_ref3","$opening","_ref4","$closing","minScrimSize","xxl","StyledTearsheetBody","white","_ref5","$block","$stretch","size","includes","_ref6","zoomIn","zoomOut","StyledScrimContainer","_ref7","minSizeProp","StyledButtonContainer","_ref8","StyledButtonCard","xl","_ref9","_ref0","_ref1"],"sources":["../../src/Tearsheet/Tearsheet.styles.ts"],"sourcesContent":["import type { RuleSet } from 'styled-components'\nimport styled, { css, keyframes } from 'styled-components'\nimport { Card } from '../Card'\nimport { StyledPageContainer } from '../PageLayout/PageLayout.styles'\nimport { colors } from '../_styles/colors'\nimport { getFocusInset } from '../_styles/mixins'\nimport { getShadow } from '../_styles/shadows'\nimport { spacing } from '../_styles/spacing'\nimport { isIE11 } from '../_utils/isIE11'\nimport type { Placement } from './Tearsheet.types'\n\nexport const animationSpeed = {\n disabled: 0,\n tearsheet: 800,\n scrim: 300,\n closeButton: 150,\n}\n\nconst slideDistance = '100%'\n\nconst positioningProps: Record<\n Placement,\n Record<'open' | 'closed' | 'placement' | 'shadow', string | RuleSet<object>>\n> = {\n right: {\n open: `translateX(0);`,\n closed: `translateX(${slideDistance});`,\n placement: css`\n flex-direction: row;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'left'),\n },\n // @ts-ignore\n top: {\n open: `translateY(0);`,\n closed: `translateY(-${slideDistance});`,\n placement: css`\n flex-direction: column-reverse;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'bottom'),\n },\n bottom: {\n open: `translateY(0);`,\n closed: `translateY(${slideDistance});`,\n placement: css`\n flex-direction: column;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'top'),\n },\n left: {\n open: `translateX(0);`,\n closed: `translateX(-${slideDistance});`,\n placement: css`\n flex-direction: row-reverse;\n justify-content: flex-end;\n `,\n shadow: getShadow(4, 'right'),\n },\n}\n\nconst getSlideInAnimation = ($placement: Placement) => keyframes`\n from {\n transform: ${positioningProps[$placement].closed};\n }\n to {\n transform: ${positioningProps[$placement].open};\n }\n`\n\nconst getSlideOutAnimation = ($placement: Placement) => keyframes`\n from {\n transform: ${positioningProps[$placement].open};\n }\n to {\n transform: ${positioningProps[$placement].closed};\n }\n`\n\nexport const StyledTearsheetContent = styled.div<{\n $placement: Placement\n $open: boolean\n $opening?: boolean\n $closing?: boolean\n}>`\n display: flex;\n z-index: 2;\n width: 100%;\n\n ${({ $open, $placement }) =>\n $open\n ? css`\n transform: ${positioningProps[$placement].open};\n `\n : css`\n transform: ${positioningProps[$placement].closed};\n `}\n\n ${({ $placement }) => positioningProps[$placement].placement}\n\n ${({ $opening, $placement }) =>\n $opening &&\n css`\n animation: ${getSlideInAnimation($placement)}\n ${animationSpeed.tearsheet}ms ease-out;\n transform: ${positioningProps[$placement].open};\n pointer-events: none;\n `}\n\n ${({ $closing, $placement }) =>\n $closing &&\n css`\n animation: ${getSlideOutAnimation($placement)}\n ${animationSpeed.tearsheet}ms ease-out;\n transform: ${positioningProps[$placement].closed};\n pointer-events: none;\n `}\n`\n\nexport const minScrimSize = spacing.xxl * 3\n\nexport const StyledTearsheetBody = styled.div<{\n $block: boolean\n $placement: Placement\n $stretch: boolean\n}>`\n display: flex;\n overflow-y: auto;\n flex-direction: column;\n background-color: ${colors.white};\n\n &:focus-visible {\n ${getFocusInset()}\n }\n\n ${({ $block, $placement, $stretch }) => {\n const size = ['top', 'bottom'].includes($placement) ? '100vh' : '100vw'\n\n return (\n ($stretch || $block) &&\n css`\n flex: 0 0 calc(${size} - ${minScrimSize}px);\n `\n )\n }}\n\n ${({ $placement }) => {\n if (!isIE11()) {\n return ''\n }\n\n if (['top', 'bottom'].includes($placement)) {\n return css`\n ${StyledPageContainer} {\n width: 100vw;\n }\n `\n }\n\n return css`\n ${StyledPageContainer} {\n width: 95vw;\n }\n `\n }}}\n`\n\nconst zoomIn = keyframes`\n from {\n transform: scale(0);\n }\n to {\n transform: scale(1);\n }\n`\n\nconst zoomOut = keyframes`\n from {\n transform: scale(1);\n }\n to {\n transform: scale(0);\n }\n`\n\nexport const StyledScrimContainer = styled.div<{ $placement: Placement }>`\n ${({ $placement }) => {\n const minSizeProp = ['top', 'bottom'].includes($placement)\n ? 'min-height'\n : 'min-width'\n\n return css`\n ${minSizeProp}: ${minScrimSize}px;\n flex-grow: 1;\n `\n }}\n`\n\nexport const StyledButtonContainer = styled.div<{ $placement: Placement }>`\n ${({ $placement }) => {\n switch ($placement) {\n case 'bottom':\n return css`\n display: flex;\n justify-content: flex-end;\n flex-direction: column;\n height: 100%;\n `\n case 'right':\n return css`\n display: flex;\n justify-content: flex-end;\n `\n case 'left':\n default:\n return\n }\n }}\n`\n\nexport const StyledButtonCard = styled(Card)<{\n $open: boolean\n $opening?: boolean\n $closing?: boolean\n}>`\n display: inline-flex;\n margin: ${spacing.xl}px;\n\n ${({ $open }) =>\n $open\n ? css`\n transform: scale(1);\n `\n : css`\n transform: scale(0);\n `}\n\n ${({ $opening }) =>\n $opening &&\n css`\n animation: ${zoomIn} ${animationSpeed.closeButton}ms;\n transform: scale(1);\n `}\n\n ${({ $closing }) =>\n $closing &&\n css`\n animation: ${zoomOut} ${animationSpeed.closeButton}ms;\n transform: scale(0);\n `}\n`\n"],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
3
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
5
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
6
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
7
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
8
|
+
import React from 'react';
|
|
9
|
+
import { Box } from '../../Box';
|
|
10
|
+
import { Breadcrumbs } from '../../Breadcrumbs';
|
|
11
|
+
import { Button } from '../../Button';
|
|
12
|
+
import { Card } from '../../Card';
|
|
13
|
+
import { Flex } from '../../Flex';
|
|
14
|
+
import { FlexList } from '../../FlexList';
|
|
15
|
+
import { Input } from '../../Input';
|
|
16
|
+
import { Modal } from '../../Modal';
|
|
17
|
+
import { useLabelledPopup } from '../../OverlayTrigger/a11yPresets';
|
|
18
|
+
import { Page } from '../../PageLayout';
|
|
19
|
+
import { Panel } from '../../Panel';
|
|
20
|
+
import { Required } from '../../Required';
|
|
21
|
+
import { H1, Label } from '../../Semantic';
|
|
22
|
+
import { SuperSelect } from '../../SuperSelect/SuperSelect';
|
|
23
|
+
import { Tabs } from '../../Tabs';
|
|
24
|
+
import { Tab } from '../../Tabs/Tabs';
|
|
25
|
+
import { exampleText } from '../../_storyHelpers_/constants';
|
|
26
|
+
var longText = exampleText.longest_ipsum;
|
|
27
|
+
var shortText = exampleText.short_sentence;
|
|
28
|
+
var panelContent = /*#__PURE__*/React.createElement(Flex, {
|
|
29
|
+
direction: "column",
|
|
30
|
+
alignItems: "center",
|
|
31
|
+
paddingBottom: "lg",
|
|
32
|
+
style: {
|
|
33
|
+
width: '100%'
|
|
34
|
+
}
|
|
35
|
+
}, Array.from({
|
|
36
|
+
length: 10
|
|
37
|
+
}).map(function (_, i) {
|
|
38
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
39
|
+
key: "".concat(i, "-content-item"),
|
|
40
|
+
style: {
|
|
41
|
+
width: '80%',
|
|
42
|
+
height: '100px',
|
|
43
|
+
marginTop: '16px',
|
|
44
|
+
backgroundColor: 'white',
|
|
45
|
+
border: '1px solid lightgray',
|
|
46
|
+
borderRadius: '8px'
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}));
|
|
50
|
+
function PanelSample(_ref) {
|
|
51
|
+
var onClose = _ref.onClose,
|
|
52
|
+
footer = _ref.hasFooter;
|
|
53
|
+
return /*#__PURE__*/React.createElement(Panel, null, /*#__PURE__*/React.createElement(Panel.Header, {
|
|
54
|
+
onClose: onClose
|
|
55
|
+
}, /*#__PURE__*/React.createElement(Panel.Title, null, "Sample heading")), /*#__PURE__*/React.createElement(Panel.Body, null, panelContent), footer && /*#__PURE__*/React.createElement(Panel.Footer, null, /*#__PURE__*/React.createElement(Button, null, "Action 3"), /*#__PURE__*/React.createElement(FlexList, {
|
|
56
|
+
space: "sm",
|
|
57
|
+
marginLeft: "auto"
|
|
58
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
59
|
+
variant: "primary"
|
|
60
|
+
}, "Action 4"), /*#__PURE__*/React.createElement(Button, {
|
|
61
|
+
onClick: onClose,
|
|
62
|
+
variant: "secondary"
|
|
63
|
+
}, "Close"))));
|
|
64
|
+
}
|
|
65
|
+
export var PageLayoutDemo = /*#__PURE__*/React.forwardRef(function PageLayoutDemo(props, ref) {
|
|
66
|
+
var _props$asideVisible;
|
|
67
|
+
var _React$useState = React.useState((_props$asideVisible = props.asideVisible) !== null && _props$asideVisible !== void 0 ? _props$asideVisible : false),
|
|
68
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
69
|
+
isAsideVisible = _React$useState2[0],
|
|
70
|
+
setIsAsideVisible = _React$useState2[1];
|
|
71
|
+
var _React$useState3 = React.useState(false),
|
|
72
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
73
|
+
isModalVisible = _React$useState4[0],
|
|
74
|
+
setIsModalVisible = _React$useState4[1];
|
|
75
|
+
var _useLabelledPopup = useLabelledPopup({
|
|
76
|
+
isOpen: isModalVisible,
|
|
77
|
+
popupRole: 'dialog'
|
|
78
|
+
}),
|
|
79
|
+
triggerProps = _useLabelledPopup.triggerProps,
|
|
80
|
+
labelProps = _useLabelledPopup.labelProps,
|
|
81
|
+
popupProps = _useLabelledPopup.popupProps;
|
|
82
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Modal, _extends({
|
|
83
|
+
open: isModalVisible,
|
|
84
|
+
onClose: function onClose() {
|
|
85
|
+
return setIsModalVisible(false);
|
|
86
|
+
}
|
|
87
|
+
}, popupProps, {
|
|
88
|
+
role: "dialog",
|
|
89
|
+
howToClose: ['x']
|
|
90
|
+
}), /*#__PURE__*/React.createElement(Modal.Header, labelProps, shortText), /*#__PURE__*/React.createElement(Modal.Body, {
|
|
91
|
+
tabIndex: 0
|
|
92
|
+
}, longText)), /*#__PURE__*/React.createElement(Page, null, /*#__PURE__*/React.createElement(Page.Main, null, /*#__PURE__*/React.createElement(Page.Header, null, /*#__PURE__*/React.createElement(Page.Breadcrumbs, null, /*#__PURE__*/React.createElement(Breadcrumbs, null, /*#__PURE__*/React.createElement(Breadcrumbs.Crumb, {
|
|
93
|
+
active: true
|
|
94
|
+
}, "Tool Name"), /*#__PURE__*/React.createElement(Breadcrumbs.Crumb, null, "Item"))), /*#__PURE__*/React.createElement(Page.Title, null, /*#__PURE__*/React.createElement(H1, {
|
|
95
|
+
id: "page-title"
|
|
96
|
+
}, "Page Title")), /*#__PURE__*/React.createElement(Page.Tabs, null, /*#__PURE__*/React.createElement(Tabs, null, /*#__PURE__*/React.createElement(Tab, {
|
|
97
|
+
active: true
|
|
98
|
+
}, /*#__PURE__*/React.createElement(Tabs.Link, null, "Active")), /*#__PURE__*/React.createElement(Tab, null, /*#__PURE__*/React.createElement(Tabs.Link, null, "Second")), /*#__PURE__*/React.createElement(Tab, null, /*#__PURE__*/React.createElement(Tabs.Link, null, "Third")), /*#__PURE__*/React.createElement(Tab, null, /*#__PURE__*/React.createElement(Tabs.Link, null, "Fourth"))))), /*#__PURE__*/React.createElement(Page.Body, null, /*#__PURE__*/React.createElement(Card, null, /*#__PURE__*/React.createElement(Box, {
|
|
99
|
+
padding: "md"
|
|
100
|
+
}, /*#__PURE__*/React.createElement(SuperSelect, {
|
|
101
|
+
placeholder: "Select",
|
|
102
|
+
block: true,
|
|
103
|
+
multiple: true,
|
|
104
|
+
options: [{
|
|
105
|
+
value: '1',
|
|
106
|
+
label: 'some label one'
|
|
107
|
+
}, {
|
|
108
|
+
value: '2',
|
|
109
|
+
label: 'two 2'
|
|
110
|
+
}, {
|
|
111
|
+
value: '3',
|
|
112
|
+
label: 'three three three'
|
|
113
|
+
}],
|
|
114
|
+
onChange: console.log
|
|
115
|
+
})), /*#__PURE__*/React.createElement(Box, {
|
|
116
|
+
padding: "md"
|
|
117
|
+
}, /*#__PURE__*/React.createElement(Label, {
|
|
118
|
+
block: true,
|
|
119
|
+
style: {
|
|
120
|
+
marginBottom: '4px'
|
|
121
|
+
},
|
|
122
|
+
htmlFor: "example"
|
|
123
|
+
}, "Label Text", /*#__PURE__*/React.createElement(Required, null)), /*#__PURE__*/React.createElement(Input, {
|
|
124
|
+
id: "example",
|
|
125
|
+
placeholder: "Hello",
|
|
126
|
+
ref: ref
|
|
127
|
+
}))), /*#__PURE__*/React.createElement(Card, null, /*#__PURE__*/React.createElement(Box, {
|
|
128
|
+
padding: "md",
|
|
129
|
+
marginTop: "sm"
|
|
130
|
+
}, longText)), /*#__PURE__*/React.createElement(Card, null, /*#__PURE__*/React.createElement(Box, {
|
|
131
|
+
padding: "md",
|
|
132
|
+
marginTop: "sm"
|
|
133
|
+
}, longText)), /*#__PURE__*/React.createElement(Card, null, /*#__PURE__*/React.createElement(Box, {
|
|
134
|
+
padding: "md",
|
|
135
|
+
marginTop: "sm"
|
|
136
|
+
}, longText)), /*#__PURE__*/React.createElement(Card, null, /*#__PURE__*/React.createElement(Box, {
|
|
137
|
+
padding: "md",
|
|
138
|
+
marginTop: "sm"
|
|
139
|
+
}, longText))), /*#__PURE__*/React.createElement(Page.Footer, null, /*#__PURE__*/React.createElement(Box, {
|
|
140
|
+
padding: "16px",
|
|
141
|
+
display: "flex"
|
|
142
|
+
}, /*#__PURE__*/React.createElement(Button, _extends({}, triggerProps, {
|
|
143
|
+
variant: "secondary",
|
|
144
|
+
onClick: function onClick() {
|
|
145
|
+
return setIsModalVisible(true);
|
|
146
|
+
}
|
|
147
|
+
}), "Open Modal"), /*#__PURE__*/React.createElement(Button, {
|
|
148
|
+
variant: "secondary",
|
|
149
|
+
onClick: function onClick() {
|
|
150
|
+
return setIsAsideVisible(true);
|
|
151
|
+
},
|
|
152
|
+
style: {
|
|
153
|
+
marginLeft: 'auto'
|
|
154
|
+
}
|
|
155
|
+
}, "Open Panel")))), /*#__PURE__*/React.createElement(Page.Aside, {
|
|
156
|
+
open: isAsideVisible
|
|
157
|
+
}, /*#__PURE__*/React.createElement(PanelSample, {
|
|
158
|
+
hasFooter: true,
|
|
159
|
+
onClose: function onClose() {
|
|
160
|
+
return setIsAsideVisible(false);
|
|
161
|
+
}
|
|
162
|
+
}))));
|
|
163
|
+
});
|
|
164
|
+
//# sourceMappingURL=PageLayoutDemo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PageLayoutDemo.js","names":["React","Box","Breadcrumbs","Button","Card","Flex","FlexList","Input","Modal","useLabelledPopup","Page","Panel","Required","H1","Label","SuperSelect","Tabs","Tab","exampleText","longText","longest_ipsum","shortText","short_sentence","panelContent","createElement","direction","alignItems","paddingBottom","style","width","Array","from","length","map","_","i","key","concat","height","marginTop","backgroundColor","border","borderRadius","PanelSample","_ref","onClose","footer","hasFooter","Header","Title","Body","Footer","space","marginLeft","variant","onClick","PageLayoutDemo","forwardRef","props","ref","_props$asideVisible","_React$useState","useState","asideVisible","_React$useState2","_slicedToArray","isAsideVisible","setIsAsideVisible","_React$useState3","_React$useState4","isModalVisible","setIsModalVisible","_useLabelledPopup","isOpen","popupRole","triggerProps","labelProps","popupProps","Fragment","_extends","open","role","howToClose","tabIndex","Main","Crumb","active","id","Link","padding","placeholder","block","multiple","options","value","label","onChange","console","log","marginBottom","htmlFor","display","Aside"],"sources":["../../../src/Tearsheet/storybook/PageLayoutDemo.tsx"],"sourcesContent":["import React from 'react'\n\nimport { Box } from '../../Box'\nimport { Breadcrumbs } from '../../Breadcrumbs'\nimport { Button } from '../../Button'\nimport { Card } from '../../Card'\nimport { Flex } from '../../Flex'\nimport { FlexList } from '../../FlexList'\nimport { Input } from '../../Input'\nimport { Modal } from '../../Modal'\nimport { useLabelledPopup } from '../../OverlayTrigger/a11yPresets'\nimport { Page } from '../../PageLayout'\nimport { Panel } from '../../Panel'\nimport { Required } from '../../Required'\nimport { H1, Label } from '../../Semantic'\nimport { SuperSelect } from '../../SuperSelect/SuperSelect'\nimport { Tabs } from '../../Tabs'\nimport { Tab } from '../../Tabs/Tabs'\nimport { exampleText } from '../../_storyHelpers_/constants'\n\nconst longText = exampleText.longest_ipsum\nconst shortText = exampleText.short_sentence\n\nconst panelContent = (\n <Flex\n direction=\"column\"\n alignItems=\"center\"\n paddingBottom=\"lg\"\n style={{ width: '100%' }}\n >\n {Array.from({ length: 10 }).map((_, i) => (\n <div\n key={`${i}-content-item`}\n style={{\n width: '80%',\n height: '100px',\n marginTop: '16px',\n backgroundColor: 'white',\n border: '1px solid lightgray',\n borderRadius: '8px',\n }}\n />\n ))}\n </Flex>\n)\n\nfunction PanelSample({\n onClose,\n hasFooter: footer,\n}: {\n onClose: () => void\n hasFooter?: boolean\n}) {\n return (\n <Panel>\n <Panel.Header onClose={onClose}>\n <Panel.Title>Sample heading</Panel.Title>\n </Panel.Header>\n <Panel.Body>{panelContent}</Panel.Body>\n {footer && (\n <Panel.Footer>\n <Button>Action 3</Button>\n <FlexList space=\"sm\" marginLeft=\"auto\">\n <Button variant=\"primary\">Action 4</Button>\n <Button onClick={onClose} variant=\"secondary\">\n Close\n </Button>\n </FlexList>\n </Panel.Footer>\n )}\n </Panel>\n )\n}\n\nexport const PageLayoutDemo = React.forwardRef<\n HTMLInputElement,\n { asideVisible?: boolean }\n>(function PageLayoutDemo(props, ref) {\n const [isAsideVisible, setIsAsideVisible] = React.useState(\n props.asideVisible ?? false\n )\n const [isModalVisible, setIsModalVisible] = React.useState(false)\n\n const { triggerProps, labelProps, popupProps } = useLabelledPopup({\n isOpen: isModalVisible,\n popupRole: 'dialog',\n })\n\n return (\n <>\n <Modal\n open={isModalVisible}\n onClose={() => setIsModalVisible(false)}\n {...popupProps}\n role=\"dialog\"\n howToClose={['x']}\n >\n <Modal.Header {...labelProps}>{shortText}</Modal.Header>\n <Modal.Body tabIndex={0}>{longText}</Modal.Body>\n </Modal>\n <Page>\n <Page.Main>\n <Page.Header>\n <Page.Breadcrumbs>\n <Breadcrumbs>\n <Breadcrumbs.Crumb active>Tool Name</Breadcrumbs.Crumb>\n <Breadcrumbs.Crumb>Item</Breadcrumbs.Crumb>\n </Breadcrumbs>\n </Page.Breadcrumbs>\n <Page.Title>\n <H1 id=\"page-title\">Page Title</H1>\n </Page.Title>\n <Page.Tabs>\n <Tabs>\n <Tab active>\n <Tabs.Link>Active</Tabs.Link>\n </Tab>\n <Tab>\n <Tabs.Link>Second</Tabs.Link>\n </Tab>\n <Tab>\n <Tabs.Link>Third</Tabs.Link>\n </Tab>\n <Tab>\n <Tabs.Link>Fourth</Tabs.Link>\n </Tab>\n </Tabs>\n </Page.Tabs>\n </Page.Header>\n <Page.Body>\n <Card>\n <Box padding=\"md\">\n <SuperSelect\n placeholder=\"Select\"\n block\n multiple\n options={[\n { value: '1', label: 'some label one' },\n { value: '2', label: 'two 2' },\n { value: '3', label: 'three three three' },\n ]}\n onChange={console.log}\n />\n </Box>\n\n <Box padding=\"md\">\n <Label block style={{ marginBottom: '4px' }} htmlFor=\"example\">\n Label Text\n <Required />\n </Label>\n\n <Input id=\"example\" placeholder=\"Hello\" ref={ref} />\n </Box>\n </Card>\n <Card>\n <Box padding=\"md\" marginTop=\"sm\">\n {longText}\n </Box>\n </Card>\n <Card>\n <Box padding=\"md\" marginTop=\"sm\">\n {longText}\n </Box>\n </Card>\n <Card>\n <Box padding=\"md\" marginTop=\"sm\">\n {longText}\n </Box>\n </Card>\n <Card>\n <Box padding=\"md\" marginTop=\"sm\">\n {longText}\n </Box>\n </Card>\n </Page.Body>\n <Page.Footer>\n <Box padding=\"16px\" display=\"flex\">\n <Button\n {...triggerProps}\n variant=\"secondary\"\n onClick={() => setIsModalVisible(true)}\n >\n Open Modal\n </Button>\n <Button\n variant=\"secondary\"\n onClick={() => setIsAsideVisible(true)}\n style={{ marginLeft: 'auto' }}\n >\n Open Panel\n </Button>\n </Box>\n </Page.Footer>\n </Page.Main>\n <Page.Aside open={isAsideVisible}>\n <PanelSample hasFooter onClose={() => setIsAsideVisible(false)} />\n </Page.Aside>\n </Page>\n </>\n )\n})\n"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { getInputStyles } from '../Input/Input.styles';
|
|
|
3
3
|
import { spacing } from '../_styles/spacing';
|
|
4
4
|
export var StyledTextArea = /*#__PURE__*/styled.textarea.withConfig({
|
|
5
5
|
displayName: "StyledTextArea",
|
|
6
|
-
componentId: "core-
|
|
6
|
+
componentId: "core-12_26_1__sc-u5mow1-0"
|
|
7
7
|
})(["", ";height:auto;min-height:64px;padding:", "px ", "px;resize:", ";"], getInputStyles, spacing.sm, spacing.md, function (_ref) {
|
|
8
8
|
var _ref$$resize = _ref.$resize,
|
|
9
9
|
$resize = _ref$$resize === void 0 ? 'both' : _ref$$resize;
|
|
@@ -1,20 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { TextEditorProps
|
|
3
|
-
export declare
|
|
4
|
-
/**
|
|
5
|
-
|
|
6
|
-
We use text editors to allow users to enter multiple lines of formatted text.
|
|
7
|
-
|
|
8
|
-
If users need to add unformatted text, see Text Area.
|
|
9
|
-
|
|
10
|
-
@since 10.19.0
|
|
11
|
-
|
|
12
|
-
@see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-texteditor--demo)
|
|
13
|
-
|
|
14
|
-
@see [Design Guidelines](https://design.procore.com/text-editor)
|
|
15
|
-
|
|
16
|
-
*/
|
|
17
|
-
export declare function TextEditor({ error, init: initOverrides, locale, onChange, onInit: _onInit, plugins, ...props }: TextEditorProps): React.JSX.Element;
|
|
18
|
-
export declare namespace TextEditor {
|
|
19
|
-
var displayName: string;
|
|
20
|
-
}
|
|
2
|
+
import type { TextEditorProps } from './TextEditor.types';
|
|
3
|
+
export declare const TextEditor: (props: TextEditorProps) => React.JSX.Element;
|
|
@@ -1,173 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
var _excluded = ["error", "init", "locale", "onChange", "onInit", "plugins"];
|
|
3
|
-
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
4
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
-
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
7
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
8
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
9
|
-
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
10
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
12
|
-
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
1
|
+
var _excluded = ["tinyMCE"];
|
|
13
2
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
14
3
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
import { useOverridableFocusScope } from '../_hooks/FocusScopeOverride';
|
|
24
|
-
import { useI18nContext } from '../_hooks/I18n';
|
|
25
|
-
import { useZIndexContext } from '../_hooks/ZIndex';
|
|
26
|
-
import { defaultPlugins, generateExternalPlugins, generateLanguageUrl, getValidLookupLocale, tinyMCEConfig, tinyMCESource, tinyMCETabMarkup, tinyMCEVersion } from '../_utils/TinyMCE';
|
|
27
|
-
import { GlobalStyle } from './TextEditor.styles';
|
|
28
|
-
var errorRed = '#E61920';
|
|
29
|
-
function noop() {}
|
|
30
|
-
var TextEditorContext = /*#__PURE__*/React.createContext({
|
|
31
|
-
features: {
|
|
32
|
-
tabAsNavigation: undefined,
|
|
33
|
-
stickyToolbar: undefined
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import { DeprecatedTextEditor } from '../DeprecatedTextEditor';
|
|
6
|
+
import { NextTextEditor } from '../NextTextEditor';
|
|
7
|
+
export var TextEditor = function TextEditor(props) {
|
|
8
|
+
var tinyMCE = props.tinyMCE,
|
|
9
|
+
restProps = _objectWithoutProperties(props, _excluded);
|
|
10
|
+
if (tinyMCE) {
|
|
11
|
+
return /*#__PURE__*/React.createElement(DeprecatedTextEditor, restProps);
|
|
34
12
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
var children = _ref.children,
|
|
38
|
-
features = _ref.features;
|
|
39
|
-
return /*#__PURE__*/React.createElement(TextEditorContext.Provider, {
|
|
40
|
-
value: {
|
|
41
|
-
features: features
|
|
42
|
-
}
|
|
43
|
-
}, children);
|
|
44
|
-
}
|
|
45
|
-
function setupDefaultShortcuts(editor) {
|
|
46
|
-
editor.shortcuts.add('meta+shift+s', 'Strikethrough', 'Strikethrough');
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* editor.addShortcut does not notify on Tab key presses
|
|
51
|
-
*/
|
|
52
|
-
function setupShortcuts(editor) {
|
|
53
|
-
setupDefaultShortcuts(editor);
|
|
54
|
-
editor.on('keydown', function checkTabPress(event) {
|
|
55
|
-
if (event.altKey && event.key === 'Tab') {
|
|
56
|
-
editor.execCommand('mceInsertContent', false, tinyMCETabMarkup);
|
|
57
|
-
event.preventDefault();
|
|
58
|
-
event.stopPropagation();
|
|
59
|
-
return false;
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* The following plugins open a TinyMCE modal.
|
|
66
|
-
* When used with React Aria contained FocusScope,
|
|
67
|
-
* focus does not move into the TinyMCE modal.
|
|
68
|
-
* This patch gets critical functionality back at
|
|
69
|
-
* the cost of possibly failing accessbility.
|
|
70
|
-
*/
|
|
71
|
-
function useFocusScopePatch(plugins) {
|
|
72
|
-
var focusScope = useOverridableFocusScope();
|
|
73
|
-
React.useEffect(function () {
|
|
74
|
-
if ([].concat(_toConsumableArray(defaultPlugins), _toConsumableArray(plugins)).some(
|
|
75
|
-
// Add plugins that open a tinymce modal here
|
|
76
|
-
function (plugin) {
|
|
77
|
-
return plugin === 'link' || plugin === 'table' || plugin === 'image';
|
|
78
|
-
})) {
|
|
79
|
-
focusScope.setProps({
|
|
80
|
-
contain: false
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
}, [focusScope, plugins]);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
|
|
88
|
-
We use text editors to allow users to enter multiple lines of formatted text.
|
|
89
|
-
|
|
90
|
-
If users need to add unformatted text, see Text Area.
|
|
91
|
-
|
|
92
|
-
@since 10.19.0
|
|
93
|
-
|
|
94
|
-
@see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-texteditor--demo)
|
|
95
|
-
|
|
96
|
-
@see [Design Guidelines](https://design.procore.com/text-editor)
|
|
97
|
-
|
|
98
|
-
*/
|
|
99
|
-
export function TextEditor(_ref2) {
|
|
100
|
-
var _props$initialValue, _props$value;
|
|
101
|
-
var error = _ref2.error,
|
|
102
|
-
initOverrides = _ref2.init,
|
|
103
|
-
locale = _ref2.locale,
|
|
104
|
-
_ref2$onChange = _ref2.onChange,
|
|
105
|
-
onChange = _ref2$onChange === void 0 ? noop : _ref2$onChange,
|
|
106
|
-
_onInit = _ref2.onInit,
|
|
107
|
-
_ref2$plugins = _ref2.plugins,
|
|
108
|
-
plugins = _ref2$plugins === void 0 ? defaultPlugins : _ref2$plugins,
|
|
109
|
-
props = _objectWithoutProperties(_ref2, _excluded);
|
|
110
|
-
var _useI18nContext = useI18nContext(),
|
|
111
|
-
contextLocale = _useI18nContext.locale;
|
|
112
|
-
var _useZIndexContext = useZIndexContext(),
|
|
113
|
-
zIndex = _useZIndexContext.value;
|
|
114
|
-
var _React$useContext = React.useContext(TextEditorContext),
|
|
115
|
-
features = _React$useContext.features;
|
|
116
|
-
var stickyToolbar = features !== null && features !== void 0 && features.stickyToolbar ? {
|
|
117
|
-
toolbar_sticky: true
|
|
118
|
-
} : {};
|
|
119
|
-
var tabControls = features !== null && features !== void 0 && features.tabAsNavigation ? {
|
|
120
|
-
external_plugins: generateExternalPlugins(plugins, defaultPlugins.filter(function (p) {
|
|
121
|
-
return p !== 'nonbreaking';
|
|
122
|
-
})),
|
|
123
|
-
nonbreaking_force_tab: false,
|
|
124
|
-
setup: setupShortcuts
|
|
125
|
-
} : {
|
|
126
|
-
setup: setupDefaultShortcuts
|
|
127
|
-
};
|
|
128
|
-
var onEditorChange = function onEditorChange(_, editor) {
|
|
129
|
-
onChange(editor.getContent(), editor.isDirty());
|
|
130
|
-
};
|
|
131
|
-
var ref = React.useRef();
|
|
132
|
-
var updateError = function updateError() {
|
|
133
|
-
if (ref.current) {
|
|
134
|
-
if (error) {
|
|
135
|
-
ref.current.style.borderColor = errorRed;
|
|
136
|
-
} else {
|
|
137
|
-
ref.current.style.borderColor = '';
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
};
|
|
141
|
-
React.useEffect(function () {
|
|
142
|
-
updateError();
|
|
143
|
-
}, [error]);
|
|
144
|
-
useFocusScopePatch(plugins);
|
|
145
|
-
var onInit = function onInit(event, editor) {
|
|
146
|
-
ref.current = editor.editorContainer;
|
|
147
|
-
updateError();
|
|
148
|
-
_onInit && _onInit(event, editor);
|
|
149
|
-
};
|
|
150
|
-
var _useState = useState((_props$initialValue = props.initialValue) !== null && _props$initialValue !== void 0 ? _props$initialValue : props.value),
|
|
151
|
-
_useState2 = _slicedToArray(_useState, 1),
|
|
152
|
-
derivedInitial = _useState2[0];
|
|
153
|
-
|
|
154
|
-
// zIndex + 1 because on first render zIndex of Portal(Modal) is higher
|
|
155
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(GlobalStyle, {
|
|
156
|
-
$zIndex: zIndex + 1
|
|
157
|
-
}), /*#__PURE__*/React.createElement(Editor, _extends({
|
|
158
|
-
init: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, tinyMCEConfig), {}, {
|
|
159
|
-
external_plugins: generateExternalPlugins(plugins),
|
|
160
|
-
language_url: generateLanguageUrl(locale || contextLocale),
|
|
161
|
-
language: getValidLookupLocale(locale || contextLocale),
|
|
162
|
-
content_style: "p { margin: 0; }"
|
|
163
|
-
}, stickyToolbar), tabControls), initOverrides),
|
|
164
|
-
tinymceScriptSrc: "".concat(tinyMCESource, "/").concat(tinyMCEVersion, "/tinymce.min.js"),
|
|
165
|
-
onInit: onInit,
|
|
166
|
-
onEditorChange: onEditorChange
|
|
167
|
-
}, props, {
|
|
168
|
-
value: (_props$value = props.value) !== null && _props$value !== void 0 ? _props$value : props.initialValue,
|
|
169
|
-
initialValue: derivedInitial
|
|
170
|
-
})));
|
|
171
|
-
}
|
|
172
|
-
TextEditor.displayName = 'TextEditor';
|
|
13
|
+
return /*#__PURE__*/React.createElement(NextTextEditor, restProps);
|
|
14
|
+
};
|
|
173
15
|
//# sourceMappingURL=TextEditor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextEditor.js","names":["Editor","React","useState","useOverridableFocusScope","useI18nContext","useZIndexContext","defaultPlugins","generateExternalPlugins","generateLanguageUrl","getValidLookupLocale","tinyMCEConfig","tinyMCESource","tinyMCETabMarkup","tinyMCEVersion","GlobalStyle","errorRed","noop","TextEditorContext","createContext","features","tabAsNavigation","undefined","stickyToolbar","TextEditorProvider","_ref","children","createElement","Provider","value","setupDefaultShortcuts","editor","shortcuts","add","setupShortcuts","on","checkTabPress","event","altKey","key","execCommand","preventDefault","stopPropagation","useFocusScopePatch","plugins","focusScope","useEffect","concat","_toConsumableArray","some","plugin","setProps","contain","TextEditor","_ref2","_props$initialValue","_props$value","error","initOverrides","init","locale","_ref2$onChange","onChange","_onInit","onInit","_ref2$plugins","props","_objectWithoutProperties","_excluded","_useI18nContext","contextLocale","_useZIndexContext","zIndex","_React$useContext","useContext","toolbar_sticky","tabControls","external_plugins","filter","p","nonbreaking_force_tab","setup","onEditorChange","_","getContent","isDirty","ref","useRef","updateError","current","style","borderColor","editorContainer","_useState","initialValue","_useState2","_slicedToArray","derivedInitial","Fragment","$zIndex","_extends","_objectSpread","language_url","language","content_style","tinymceScriptSrc","displayName"],"sources":["../../src/TextEditor/TextEditor.tsx"],"sourcesContent":["import { Editor } from '@tinymce/tinymce-react'\nimport React, { useState } from 'react'\nimport { useOverridableFocusScope } from '../_hooks/FocusScopeOverride'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useZIndexContext } from '../_hooks/ZIndex'\nimport {\n defaultPlugins,\n generateExternalPlugins,\n generateLanguageUrl,\n getValidLookupLocale,\n tinyMCEConfig,\n tinyMCESource,\n tinyMCETabMarkup,\n tinyMCEVersion,\n} from '../_utils/TinyMCE'\nimport { GlobalStyle } from './TextEditor.styles'\nimport type {\n TextEditorProps,\n TextEditorProviderProps,\n} from './TextEditor.types'\n\nconst errorRed = '#E61920'\n\nfunction noop() {}\n\nconst TextEditorContext = React.createContext<\n Omit<TextEditorProviderProps, 'children'>\n>({\n features: {\n tabAsNavigation: undefined,\n stickyToolbar: undefined,\n },\n})\n\nexport function TextEditorProvider({\n children,\n features,\n}: TextEditorProviderProps) {\n return (\n <TextEditorContext.Provider value={{ features }}>\n {children}\n </TextEditorContext.Provider>\n )\n}\n\nfunction setupDefaultShortcuts(editor: any) {\n editor.shortcuts.add('meta+shift+s', 'Strikethrough', 'Strikethrough')\n}\n\n/**\n * editor.addShortcut does not notify on Tab key presses\n */\nfunction setupShortcuts(editor: any) {\n setupDefaultShortcuts(editor)\n editor.on('keydown', function checkTabPress(event: React.KeyboardEvent) {\n if (event.altKey && event.key === 'Tab') {\n editor.execCommand('mceInsertContent', false, tinyMCETabMarkup)\n event.preventDefault()\n event.stopPropagation()\n return false\n }\n })\n}\n\n/**\n * The following plugins open a TinyMCE modal.\n * When used with React Aria contained FocusScope,\n * focus does not move into the TinyMCE modal.\n * This patch gets critical functionality back at\n * the cost of possibly failing accessbility.\n */\nfunction useFocusScopePatch(plugins: string[]) {\n const focusScope = useOverridableFocusScope()\n React.useEffect(() => {\n if (\n [...defaultPlugins, ...plugins].some(\n // Add plugins that open a tinymce modal here\n (plugin) =>\n plugin === 'link' || plugin === 'table' || plugin === 'image'\n )\n ) {\n focusScope.setProps({ contain: false })\n }\n }, [focusScope, plugins])\n}\n\n/**\n\n We use text editors to allow users to enter multiple lines of formatted text.\n\n If users need to add unformatted text, see Text Area.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-texteditor--demo)\n\n @see [Design Guidelines](https://design.procore.com/text-editor)\n\n */\nexport function TextEditor({\n error,\n init: initOverrides,\n locale,\n onChange = noop,\n onInit: _onInit,\n plugins = defaultPlugins,\n ...props\n}: TextEditorProps) {\n const { locale: contextLocale } = useI18nContext()\n const { value: zIndex } = useZIndexContext()\n\n const { features } = React.useContext(TextEditorContext)\n const stickyToolbar = features?.stickyToolbar ? { toolbar_sticky: true } : {}\n const tabControls = features?.tabAsNavigation\n ? {\n external_plugins: generateExternalPlugins(\n plugins,\n defaultPlugins.filter((p) => p !== 'nonbreaking')\n ),\n nonbreaking_force_tab: false,\n setup: setupShortcuts,\n }\n : {\n setup: setupDefaultShortcuts,\n }\n\n const onEditorChange: React.ComponentProps<\n typeof Editor\n >['onEditorChange'] = (_: any, editor: any) => {\n onChange(editor.getContent(), editor.isDirty())\n }\n\n const ref = React.useRef<HTMLElement>()\n\n const updateError = () => {\n if (ref.current) {\n if (error) {\n ref.current.style.borderColor = errorRed\n } else {\n ref.current.style.borderColor = ''\n }\n }\n }\n\n React.useEffect(() => {\n updateError()\n }, [error])\n\n useFocusScopePatch(plugins)\n\n const onInit: React.ComponentProps<typeof Editor>['onInit'] = (\n event,\n editor\n ) => {\n ref.current = editor.editorContainer\n updateError()\n _onInit && _onInit(event, editor)\n }\n\n const [derivedInitial] = useState(props.initialValue ?? props.value)\n\n // zIndex + 1 because on first render zIndex of Portal(Modal) is higher\n return (\n <>\n <GlobalStyle $zIndex={zIndex + 1} />\n <Editor\n init={{\n ...tinyMCEConfig,\n external_plugins: generateExternalPlugins(plugins),\n language_url: generateLanguageUrl(locale || contextLocale),\n language: getValidLookupLocale(locale || contextLocale),\n content_style: `p { margin: 0; }`,\n ...stickyToolbar,\n ...tabControls,\n ...initOverrides,\n }}\n tinymceScriptSrc={`${tinyMCESource}/${tinyMCEVersion}/tinymce.min.js`}\n onInit={onInit}\n onEditorChange={onEditorChange}\n {...props}\n value={props.value ?? props.initialValue}\n initialValue={derivedInitial}\n />\n </>\n )\n}\n\nTextEditor.displayName = 'TextEditor'\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TextEditor.js","names":["React","DeprecatedTextEditor","NextTextEditor","TextEditor","props","tinyMCE","restProps","_objectWithoutProperties","_excluded","createElement"],"sources":["../../src/TextEditor/TextEditor.tsx"],"sourcesContent":["import React from 'react'\nimport { DeprecatedTextEditor } from '../DeprecatedTextEditor'\nimport { NextTextEditor } from '../NextTextEditor'\nimport type { TextEditorProps } from './TextEditor.types'\n\nexport const TextEditor = (props: TextEditorProps) => {\n const { tinyMCE, ...restProps } = props\n\n if (tinyMCE) {\n return <DeprecatedTextEditor {...restProps} />\n }\n\n return <NextTextEditor {...restProps} />\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,oBAAoB,QAAQ,yBAAyB;AAC9D,SAASC,cAAc,QAAQ,mBAAmB;AAGlD,OAAO,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;EACpD,IAAQC,OAAO,GAAmBD,KAAK,CAA/BC,OAAO;IAAKC,SAAS,GAAAC,wBAAA,CAAKH,KAAK,EAAAI,SAAA;EAEvC,IAAIH,OAAO,EAAE;IACX,oBAAOL,KAAA,CAAAS,aAAA,CAACR,oBAAoB,EAAKK,SAAY,CAAC;EAChD;EAEA,oBAAON,KAAA,CAAAS,aAAA,CAACP,cAAc,EAAKI,SAAY,CAAC;AAC1C,CAAC"}
|
|
@@ -1,89 +1,22 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type
|
|
3
|
-
|
|
4
|
-
declare type TextEditorFeatureToggle = {
|
|
5
|
-
stickyToolbar?: boolean;
|
|
6
|
-
tabAsNavigation?: boolean;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Expect context to change the `init` config of the below `TextEditor`s.
|
|
10
|
-
* **Changes after the editor has initialized are ignored.**
|
|
11
|
-
* @link [TinyMCE React Init](https://www.tiny.cloud/docs/integrations/react/#init)
|
|
12
|
-
* @link [TinyMCE React configure editor](https://www.tiny.cloud/docs/integrations/react/#configuringeditorsettings)
|
|
13
|
-
*/
|
|
14
|
-
export interface TextEditorProviderProps {
|
|
15
|
-
children: React.ReactNode;
|
|
16
|
-
/**
|
|
17
|
-
* - `stickyToolbar` - Have the editor toolbar stick to the top when content is longer than the page length.
|
|
18
|
-
* - `tabAsNavigation` - Have `Tab` key exit the editor. Support `Alt`/`Opt` + `Tab` as triple space indent.
|
|
19
|
-
*/
|
|
20
|
-
features?: TextEditorFeatureToggle;
|
|
21
|
-
}
|
|
22
|
-
export interface TextEditorProps extends Omit<React.ComponentProps<typeof Editor>, 'onChange' | 'onKeyUp'> {
|
|
23
|
-
/**
|
|
24
|
-
* @since 10.19.0
|
|
25
|
-
*/
|
|
26
|
-
disabled?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* @since 10.19.0
|
|
29
|
-
*/
|
|
30
|
-
error?: boolean;
|
|
31
|
-
/**
|
|
32
|
-
* Config for when the editor is initialized. **Changes after the editor has initialized are ignored.**
|
|
33
|
-
* @link [TinyMCE React Init](https://www.tiny.cloud/docs/integrations/react/#init)
|
|
34
|
-
* @unsupported Use at your own risk. DST makes no guarantees about this API,
|
|
35
|
-
* and is subject to removal at any point without warning or deprecation.
|
|
36
|
-
* @since 10.19.0
|
|
37
|
-
*/
|
|
38
|
-
init?: IAllProps['init'];
|
|
1
|
+
import type { DeprecatedTextEditorProps } from '../DeprecatedTextEditor';
|
|
2
|
+
import type { NextTextEditorProps } from '../NextTextEditor';
|
|
3
|
+
declare type TinyMCEEditorProps = DeprecatedTextEditorProps & {
|
|
39
4
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* Please use the `value` prop instead
|
|
43
|
-
*
|
|
44
|
-
* The first value passed into `value` prop will be the `TextEditor` initial
|
|
45
|
-
* value. Changing the value will update the text of the `TextEditor`.
|
|
46
|
-
* The editor should be controlled via the combination of `value`
|
|
47
|
-
* and `onChange` props.
|
|
48
|
-
*
|
|
49
|
-
* **Before**
|
|
50
|
-
*
|
|
51
|
-
* `<TextEditor initialValue="Hello World" />`
|
|
52
|
-
*
|
|
53
|
-
* **After**
|
|
54
|
-
*
|
|
55
|
-
* `<TextEditor value="Hello World" />`
|
|
56
|
-
*
|
|
57
|
-
* @deprecatedSince 10.20.0
|
|
58
|
-
* @since 10.19.0
|
|
5
|
+
* If you experience problems with the new editor implementation, you can use this to **temporarily** switch back to legacy version while you report the issue.
|
|
6
|
+
* @deprecated This property will be removed in the future.
|
|
59
7
|
*/
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
* @since 10.19.0
|
|
75
|
-
*/
|
|
76
|
-
onChange?: (content: string, isDirty?: boolean) => void;
|
|
77
|
-
/**
|
|
78
|
-
*
|
|
79
|
-
* Array of plugins to use with the editor in addition to the defaults.
|
|
80
|
-
* Can be any of:
|
|
81
|
-
*
|
|
82
|
-
* ```
|
|
83
|
-
* [{plugins.map((plugin) => `'${plugin}'`).join(', ')}]
|
|
84
|
-
* ```
|
|
85
|
-
* @since 10.19.0
|
|
86
|
-
*/
|
|
87
|
-
plugins?: Array<string>;
|
|
88
|
-
}
|
|
8
|
+
tinyMCE: true;
|
|
9
|
+
};
|
|
10
|
+
declare type CKEditorProps = NextTextEditorProps & {
|
|
11
|
+
tinyMCE?: false;
|
|
12
|
+
};
|
|
13
|
+
export declare type TextEditorProps = Omit<TinyMCEEditorProps | CKEditorProps, 'onFocus' | 'onBlur' | 'onInit' | 'onDirty' | 'onKeyDown' | 'onEditorChange' | 'onFocusOut'> & {
|
|
14
|
+
onFocus?: (...args: any[]) => void;
|
|
15
|
+
onBlur?: (...args: any[]) => void;
|
|
16
|
+
onInit?: (...args: any[]) => void;
|
|
17
|
+
onDirty?: (...args: any[]) => void;
|
|
18
|
+
onKeyDown?: (event: KeyboardEvent) => void;
|
|
19
|
+
onEditorChange?: (value: string) => void;
|
|
20
|
+
onFocusOut?: (...args: any[]) => void;
|
|
21
|
+
};
|
|
89
22
|
export {};
|