@atlaskit/editor-common 69.2.1 → 69.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/analytics/package.json +8 -0
- package/core-utils/package.json +8 -0
- package/dist/cjs/__tests_external__/cases/fundamentals/collection.js +21 -0
- package/dist/cjs/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +25 -0
- package/dist/cjs/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +37 -0
- package/dist/cjs/__tests_external__/cases/media/test-cases/alt-text.js +45 -0
- package/dist/cjs/__tests_external__/cases/media/test-cases/caption.js +44 -0
- package/dist/cjs/__tests_external__/cases/media/test-cases/index.js +23 -0
- package/dist/cjs/__tests_external__/cases/media/test-cases/types.js +5 -0
- package/dist/cjs/__tests_external__/cases/media/test-cases/upload.js +38 -0
- package/dist/cjs/__tests_external__/cases/smart-links/index.js +37 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/delete.js +43 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/edit.js +77 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/index.js +23 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/insert.js +42 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/delete.js +43 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/edit.js +77 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/index.js +23 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/insert.js +42 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/delete.js +42 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/edit.js +75 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/index.js +25 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/insert.js +41 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +44 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/types.js +5 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/url/index.js +19 -0
- package/dist/cjs/__tests_external__/cases/smart-links/test-cases/url/insert.js +39 -0
- package/dist/cjs/__tests_external__/cases/types.js +5 -0
- package/dist/cjs/__tests_external__/index.js +55 -0
- package/dist/cjs/__tests_external__/page-objects/Editor.js +71 -0
- package/dist/cjs/__tests_external__/page-objects/EditorMedia.js +98 -0
- package/dist/cjs/__tests_external__/page-objects/EditorSmartLink.js +232 -0
- package/dist/cjs/__tests_external__/page-objects/Renderer.js +59 -0
- package/dist/cjs/analytics/api.js +5 -0
- package/dist/cjs/analytics/index.js +223 -0
- package/dist/cjs/analytics/types/avatar.js +5 -0
- package/dist/cjs/analytics/types/block.js +5 -0
- package/dist/cjs/analytics/types/config-panel-events.js +5 -0
- package/dist/cjs/analytics/types/cut-copy-events.js +5 -0
- package/dist/cjs/analytics/types/date-events.js +5 -0
- package/dist/cjs/analytics/types/dispatch-analytics-event.js +5 -0
- package/dist/cjs/analytics/types/element-browser-events.js +5 -0
- package/dist/cjs/analytics/types/enums.js +350 -0
- package/dist/cjs/analytics/types/events.js +5 -0
- package/dist/cjs/analytics/types/experimental-events.js +5 -0
- package/dist/cjs/analytics/types/extension-events.js +22 -0
- package/dist/cjs/analytics/types/find-replace-events.js +5 -0
- package/dist/cjs/analytics/types/format-events.js +24 -0
- package/dist/cjs/analytics/types/general-events.js +40 -0
- package/dist/cjs/analytics/types/index.js +249 -0
- package/dist/cjs/analytics/types/inline-comment-events.js +14 -0
- package/dist/cjs/analytics/types/insert-events.js +51 -0
- package/dist/cjs/analytics/types/link-tool-bar-events.js +5 -0
- package/dist/cjs/analytics/types/list-events.js +25 -0
- package/dist/cjs/analytics/types/media-events.js +5 -0
- package/dist/cjs/analytics/types/node-events.js +26 -0
- package/dist/cjs/analytics/types/paste-events.js +55 -0
- package/dist/cjs/analytics/types/performance-report.js +5 -0
- package/dist/cjs/analytics/types/selection-events.js +5 -0
- package/dist/cjs/analytics/types/smart-links.js +19 -0
- package/dist/cjs/analytics/types/substitute-events.js +24 -0
- package/dist/cjs/analytics/types/table-events.js +43 -0
- package/dist/cjs/analytics/types/toolbar-button.js +26 -0
- package/dist/cjs/analytics/types/type-ahead.js +5 -0
- package/dist/cjs/analytics/types/utils.js +28 -0
- package/dist/cjs/core-utils/index.js +13 -0
- package/dist/cjs/core-utils/inside.js +17 -0
- package/dist/cjs/event-dispatcher/index.js +88 -0
- package/dist/cjs/keymaps/consts.js +30 -0
- package/dist/cjs/keymaps/index.js +362 -0
- package/dist/cjs/messages/index.js +137 -1
- package/dist/cjs/messages/insert-block.js +177 -0
- package/dist/cjs/node-width/index.js +85 -0
- package/dist/cjs/react-node-view/index.js +252 -0
- package/dist/cjs/react-node-view/types.js +5 -0
- package/dist/cjs/selection/gap-cursor/selection.js +196 -0
- package/dist/cjs/selection/gap-cursor/utils/index.js +21 -0
- package/dist/cjs/selection/gap-cursor/utils/is-ignored.js +14 -0
- package/dist/cjs/selection/gap-cursor/utils/is-valid-target-node.js +14 -0
- package/dist/cjs/selection/index.js +67 -0
- package/dist/cjs/selection/types.js +15 -0
- package/dist/cjs/selection/utils.js +50 -0
- package/dist/cjs/styles/index.js +29 -1
- package/dist/cjs/styles/shared/extension.js +13 -0
- package/dist/cjs/styles/shared/layout.js +13 -0
- package/dist/cjs/styles/shared/table.js +3 -1
- package/dist/cjs/transforms/expand.js +52 -0
- package/dist/cjs/transforms/extension.js +34 -0
- package/dist/cjs/transforms/index.js +59 -0
- package/dist/cjs/transforms/layout.js +72 -0
- package/dist/cjs/types/command.js +5 -0
- package/dist/cjs/types/context-panel.js +5 -0
- package/dist/cjs/types/editor-actions.js +5 -0
- package/dist/cjs/types/editor-appearance.js +5 -0
- package/dist/cjs/types/editor-container-width.js +5 -0
- package/dist/cjs/types/editor-plugin.js +5 -0
- package/dist/cjs/types/editor-react-context.js +5 -0
- package/dist/cjs/types/empty-state-handler.js +5 -0
- package/dist/cjs/types/feature-flags.js +5 -0
- package/dist/cjs/types/floating-toolbar.js +5 -0
- package/dist/cjs/types/index.js +20 -0
- package/dist/cjs/types/plugin-factory.js +5 -0
- package/dist/cjs/types/prosemirror-config.js +5 -0
- package/dist/cjs/types/quick-insert.js +5 -0
- package/dist/cjs/types/supported-browsers.js +6 -0
- package/dist/cjs/types/toolbar.js +39 -0
- package/dist/cjs/types/ui-components.js +5 -0
- package/dist/cjs/ui/DropList/index.js +217 -0
- package/dist/cjs/ui/ErrorBoundary/index.js +100 -0
- package/dist/cjs/ui/Layer/index.js +245 -0
- package/dist/cjs/ui/Layer/internal/helpers.js +70 -0
- package/dist/cjs/ui/PortalProvider/PortalProviderThemesProvider.js +60 -0
- package/dist/cjs/ui/PortalProvider/index.js +294 -0
- package/dist/cjs/ui-color/ColorPalette/Color/index.js +115 -0
- package/dist/cjs/ui-color/ColorPalette/Color/styles.js +32 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/cellBackgroundColorPalette.js +30 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/common.js +37 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/getColorMessage.js +17 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/index.js +13 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/paletteMessages.js +123 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/panelBackgroundPalette.js +164 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/statusColorPalette.js +72 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/textColorPalette.js +41 -0
- package/dist/cjs/ui-color/ColorPalette/Palettes/type.js +5 -0
- package/dist/cjs/ui-color/ColorPalette/index.js +90 -0
- package/dist/cjs/ui-color/ColorPalette/styles.js +19 -0
- package/dist/cjs/ui-color/index.js +89 -0
- package/dist/cjs/ui-menu/Dropdown/index.js +127 -0
- package/dist/cjs/ui-menu/DropdownMenu/index.js +294 -0
- package/dist/cjs/ui-menu/DropdownMenu/types.js +5 -0
- package/dist/cjs/ui-menu/ToolbarButton/index.js +127 -0
- package/dist/cjs/ui-menu/ToolbarButton/styles.js +26 -0
- package/dist/cjs/ui-menu/index.js +43 -0
- package/dist/cjs/ui-react/ReactEditorViewContext.js +15 -0
- package/dist/cjs/ui-react/index.js +23 -0
- package/dist/cjs/ui-react/with-react-editor-view-outer-listeners.js +159 -0
- package/dist/cjs/utils/dom.js +138 -0
- package/dist/cjs/utils/editor-core-utils.js +108 -0
- package/dist/cjs/utils/index.js +222 -0
- package/dist/cjs/utils/is-text-input.js +31 -0
- package/dist/cjs/utils/nodes.js +134 -0
- package/dist/cjs/utils/plugin-state-factory.js +113 -0
- package/dist/cjs/utils/slice.js +77 -0
- package/dist/cjs/version.json +1 -1
- package/dist/cjs/with-plugin-state/index.js +316 -0
- package/dist/cjs/with-plugin-state/types.js +5 -0
- package/dist/es2019/__tests_external__/cases/fundamentals/collection.js +7 -0
- package/dist/es2019/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +12 -0
- package/dist/es2019/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +25 -0
- package/dist/es2019/__tests_external__/cases/media/test-cases/alt-text.js +29 -0
- package/dist/es2019/__tests_external__/cases/media/test-cases/caption.js +28 -0
- package/dist/es2019/__tests_external__/cases/media/test-cases/index.js +8 -0
- package/dist/es2019/__tests_external__/cases/media/test-cases/types.js +1 -0
- package/dist/es2019/__tests_external__/cases/media/test-cases/upload.js +23 -0
- package/dist/es2019/__tests_external__/cases/smart-links/index.js +4 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/delete.js +29 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/edit.js +59 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/index.js +8 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/insert.js +28 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/delete.js +29 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/edit.js +59 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/index.js +8 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/insert.js +28 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/delete.js +28 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/edit.js +57 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/index.js +9 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/insert.js +27 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +30 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/types.js +1 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/url/index.js +6 -0
- package/dist/es2019/__tests_external__/cases/smart-links/test-cases/url/insert.js +25 -0
- package/dist/es2019/__tests_external__/cases/types.js +1 -0
- package/dist/es2019/__tests_external__/index.js +4 -0
- package/dist/es2019/__tests_external__/page-objects/Editor.js +29 -0
- package/dist/es2019/__tests_external__/page-objects/EditorMedia.js +51 -0
- package/dist/es2019/__tests_external__/page-objects/EditorSmartLink.js +168 -0
- package/dist/es2019/__tests_external__/page-objects/Renderer.js +17 -0
- package/dist/es2019/analytics/api.js +1 -0
- package/dist/es2019/analytics/index.js +1 -0
- package/dist/es2019/analytics/types/avatar.js +1 -0
- package/dist/es2019/analytics/types/block.js +1 -0
- package/dist/es2019/analytics/types/config-panel-events.js +1 -0
- package/dist/es2019/analytics/types/cut-copy-events.js +1 -0
- package/dist/es2019/analytics/types/date-events.js +1 -0
- package/dist/es2019/analytics/types/dispatch-analytics-event.js +1 -0
- package/dist/es2019/analytics/types/element-browser-events.js +1 -0
- package/dist/es2019/analytics/types/enums.js +336 -0
- package/dist/es2019/analytics/types/events.js +1 -0
- package/dist/es2019/analytics/types/experimental-events.js +1 -0
- package/dist/es2019/analytics/types/extension-events.js +13 -0
- package/dist/es2019/analytics/types/find-replace-events.js +1 -0
- package/dist/es2019/analytics/types/format-events.js +16 -0
- package/dist/es2019/analytics/types/general-events.js +30 -0
- package/dist/es2019/analytics/types/index.js +14 -0
- package/dist/es2019/analytics/types/inline-comment-events.js +7 -0
- package/dist/es2019/analytics/types/insert-events.js +41 -0
- package/dist/es2019/analytics/types/link-tool-bar-events.js +1 -0
- package/dist/es2019/analytics/types/list-events.js +17 -0
- package/dist/es2019/analytics/types/media-events.js +1 -0
- package/dist/es2019/analytics/types/node-events.js +18 -0
- package/dist/es2019/analytics/types/paste-events.js +46 -0
- package/dist/es2019/analytics/types/performance-report.js +1 -0
- package/dist/es2019/analytics/types/selection-events.js +1 -0
- package/dist/es2019/analytics/types/smart-links.js +12 -0
- package/dist/es2019/analytics/types/substitute-events.js +16 -0
- package/dist/es2019/analytics/types/table-events.js +34 -0
- package/dist/es2019/analytics/types/toolbar-button.js +19 -0
- package/dist/es2019/analytics/types/type-ahead.js +1 -0
- package/dist/es2019/analytics/types/utils.js +20 -0
- package/dist/es2019/core-utils/index.js +1 -0
- package/dist/es2019/core-utils/inside.js +8 -0
- package/dist/es2019/event-dispatcher/index.js +60 -0
- package/dist/es2019/keymaps/consts.js +12 -0
- package/dist/es2019/keymaps/index.js +186 -0
- package/dist/es2019/messages/index.js +125 -1
- package/dist/es2019/messages/insert-block.js +168 -0
- package/dist/es2019/node-width/index.js +74 -0
- package/dist/es2019/react-node-view/index.js +199 -0
- package/dist/es2019/react-node-view/types.js +1 -0
- package/dist/es2019/selection/gap-cursor/selection.js +136 -0
- package/dist/es2019/selection/gap-cursor/utils/index.js +2 -0
- package/dist/es2019/selection/gap-cursor/utils/is-ignored.js +5 -0
- package/dist/es2019/selection/gap-cursor/utils/is-valid-target-node.js +4 -0
- package/dist/es2019/selection/index.js +4 -0
- package/dist/es2019/selection/types.js +8 -0
- package/dist/es2019/selection/utils.js +38 -0
- package/dist/es2019/styles/index.js +3 -1
- package/dist/es2019/styles/shared/extension.js +3 -0
- package/dist/es2019/styles/shared/layout.js +3 -0
- package/dist/es2019/styles/shared/table.js +3 -1
- package/dist/es2019/transforms/expand.js +36 -0
- package/dist/es2019/transforms/extension.js +26 -0
- package/dist/es2019/transforms/index.js +3 -0
- package/dist/es2019/transforms/layout.js +54 -0
- package/dist/es2019/types/command.js +1 -0
- package/dist/es2019/types/context-panel.js +1 -0
- package/dist/es2019/types/editor-actions.js +1 -0
- package/dist/es2019/types/editor-appearance.js +1 -0
- package/dist/es2019/types/editor-container-width.js +1 -0
- package/dist/es2019/types/editor-plugin.js +1 -0
- package/dist/es2019/types/editor-react-context.js +1 -0
- package/dist/es2019/types/empty-state-handler.js +1 -0
- package/dist/es2019/types/feature-flags.js +1 -0
- package/dist/es2019/types/floating-toolbar.js +1 -0
- package/dist/es2019/types/index.js +2 -1
- package/dist/es2019/types/plugin-factory.js +1 -0
- package/dist/es2019/types/prosemirror-config.js +1 -0
- package/dist/es2019/types/quick-insert.js +1 -0
- package/dist/es2019/types/supported-browsers.js +2 -0
- package/dist/es2019/types/toolbar.js +30 -0
- package/dist/es2019/types/ui-components.js +1 -0
- package/dist/es2019/ui/DropList/index.js +187 -0
- package/dist/es2019/ui/ErrorBoundary/index.js +52 -0
- package/dist/es2019/ui/Layer/index.js +195 -0
- package/dist/es2019/ui/Layer/internal/helpers.js +62 -0
- package/dist/es2019/ui/PortalProvider/PortalProviderThemesProvider.js +43 -0
- package/dist/es2019/ui/PortalProvider/index.js +193 -0
- package/dist/es2019/ui-color/ColorPalette/Color/index.js +72 -0
- package/dist/es2019/ui-color/ColorPalette/Color/styles.js +35 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/cellBackgroundColorPalette.js +15 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/common.js +25 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/getColorMessage.js +14 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/index.js +1 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/paletteMessages.js +113 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/panelBackgroundPalette.js +143 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/statusColorPalette.js +56 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/textColorPalette.js +25 -0
- package/dist/es2019/ui-color/ColorPalette/Palettes/type.js +1 -0
- package/dist/es2019/ui-color/ColorPalette/index.js +68 -0
- package/dist/es2019/ui-color/ColorPalette/styles.js +7 -0
- package/dist/es2019/ui-color/index.js +8 -0
- package/dist/es2019/ui-menu/Dropdown/index.js +83 -0
- package/dist/es2019/ui-menu/DropdownMenu/index.js +244 -0
- package/dist/es2019/ui-menu/DropdownMenu/types.js +1 -0
- package/dist/es2019/ui-menu/ToolbarButton/index.js +94 -0
- package/dist/es2019/ui-menu/ToolbarButton/styles.js +12 -0
- package/dist/es2019/ui-menu/index.js +3 -0
- package/dist/es2019/ui-react/ReactEditorViewContext.js +3 -0
- package/dist/es2019/ui-react/index.js +2 -0
- package/dist/es2019/ui-react/with-react-editor-view-outer-listeners.js +103 -0
- package/dist/es2019/utils/dom.js +113 -0
- package/dist/es2019/utils/editor-core-utils.js +72 -0
- package/dist/es2019/utils/index.js +6 -0
- package/dist/es2019/utils/is-text-input.js +19 -0
- package/dist/es2019/utils/nodes.js +88 -0
- package/dist/es2019/utils/plugin-state-factory.js +107 -0
- package/dist/es2019/utils/slice.js +56 -0
- package/dist/es2019/version.json +1 -1
- package/dist/es2019/with-plugin-state/index.js +263 -0
- package/dist/es2019/with-plugin-state/types.js +1 -0
- package/dist/esm/__tests_external__/cases/fundamentals/collection.js +9 -0
- package/dist/esm/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +14 -0
- package/dist/esm/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +25 -0
- package/dist/esm/__tests_external__/cases/media/test-cases/alt-text.js +32 -0
- package/dist/esm/__tests_external__/cases/media/test-cases/caption.js +31 -0
- package/dist/esm/__tests_external__/cases/media/test-cases/index.js +10 -0
- package/dist/esm/__tests_external__/cases/media/test-cases/types.js +1 -0
- package/dist/esm/__tests_external__/cases/media/test-cases/upload.js +26 -0
- package/dist/esm/__tests_external__/cases/smart-links/index.js +4 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/delete.js +30 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/edit.js +61 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/index.js +10 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/insert.js +29 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/delete.js +30 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/edit.js +61 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/index.js +10 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/insert.js +29 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/delete.js +29 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/edit.js +59 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/index.js +11 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/insert.js +28 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +31 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/types.js +1 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/url/index.js +8 -0
- package/dist/esm/__tests_external__/cases/smart-links/test-cases/url/insert.js +26 -0
- package/dist/esm/__tests_external__/cases/types.js +1 -0
- package/dist/esm/__tests_external__/index.js +4 -0
- package/dist/esm/__tests_external__/page-objects/Editor.js +56 -0
- package/dist/esm/__tests_external__/page-objects/EditorMedia.js +83 -0
- package/dist/esm/__tests_external__/page-objects/EditorSmartLink.js +218 -0
- package/dist/esm/__tests_external__/page-objects/Renderer.js +45 -0
- package/dist/esm/analytics/api.js +1 -0
- package/dist/esm/analytics/index.js +1 -0
- package/dist/esm/analytics/types/avatar.js +1 -0
- package/dist/esm/analytics/types/block.js +1 -0
- package/dist/esm/analytics/types/config-panel-events.js +1 -0
- package/dist/esm/analytics/types/cut-copy-events.js +1 -0
- package/dist/esm/analytics/types/date-events.js +1 -0
- package/dist/esm/analytics/types/dispatch-analytics-event.js +1 -0
- package/dist/esm/analytics/types/element-browser-events.js +1 -0
- package/dist/esm/analytics/types/enums.js +336 -0
- package/dist/esm/analytics/types/events.js +1 -0
- package/dist/esm/analytics/types/experimental-events.js +1 -0
- package/dist/esm/analytics/types/extension-events.js +13 -0
- package/dist/esm/analytics/types/find-replace-events.js +1 -0
- package/dist/esm/analytics/types/format-events.js +16 -0
- package/dist/esm/analytics/types/general-events.js +30 -0
- package/dist/esm/analytics/types/index.js +14 -0
- package/dist/esm/analytics/types/inline-comment-events.js +7 -0
- package/dist/esm/analytics/types/insert-events.js +41 -0
- package/dist/esm/analytics/types/link-tool-bar-events.js +1 -0
- package/dist/esm/analytics/types/list-events.js +17 -0
- package/dist/esm/analytics/types/media-events.js +1 -0
- package/dist/esm/analytics/types/node-events.js +18 -0
- package/dist/esm/analytics/types/paste-events.js +46 -0
- package/dist/esm/analytics/types/performance-report.js +1 -0
- package/dist/esm/analytics/types/selection-events.js +1 -0
- package/dist/esm/analytics/types/smart-links.js +12 -0
- package/dist/esm/analytics/types/substitute-events.js +16 -0
- package/dist/esm/analytics/types/table-events.js +34 -0
- package/dist/esm/analytics/types/toolbar-button.js +19 -0
- package/dist/esm/analytics/types/type-ahead.js +1 -0
- package/dist/esm/analytics/types/utils.js +20 -0
- package/dist/esm/core-utils/index.js +1 -0
- package/dist/esm/core-utils/inside.js +7 -0
- package/dist/esm/event-dispatcher/index.js +74 -0
- package/dist/esm/keymaps/consts.js +12 -0
- package/dist/esm/keymaps/index.js +184 -0
- package/dist/esm/messages/index.js +125 -1
- package/dist/esm/messages/insert-block.js +168 -0
- package/dist/esm/node-width/index.js +72 -0
- package/dist/esm/react-node-view/index.js +244 -0
- package/dist/esm/react-node-view/types.js +1 -0
- package/dist/esm/selection/gap-cursor/selection.js +176 -0
- package/dist/esm/selection/gap-cursor/utils/index.js +2 -0
- package/dist/esm/selection/gap-cursor/utils/is-ignored.js +5 -0
- package/dist/esm/selection/gap-cursor/utils/is-valid-target-node.js +4 -0
- package/dist/esm/selection/index.js +4 -0
- package/dist/esm/selection/types.js +8 -0
- package/dist/esm/selection/utils.js +38 -0
- package/dist/esm/styles/index.js +3 -1
- package/dist/esm/styles/shared/extension.js +3 -0
- package/dist/esm/styles/shared/layout.js +3 -0
- package/dist/esm/styles/shared/table.js +3 -1
- package/dist/esm/transforms/expand.js +34 -0
- package/dist/esm/transforms/extension.js +24 -0
- package/dist/esm/transforms/index.js +3 -0
- package/dist/esm/transforms/layout.js +58 -0
- package/dist/esm/types/command.js +1 -0
- package/dist/esm/types/context-panel.js +1 -0
- package/dist/esm/types/editor-actions.js +1 -0
- package/dist/esm/types/editor-appearance.js +1 -0
- package/dist/esm/types/editor-container-width.js +1 -0
- package/dist/esm/types/editor-plugin.js +1 -0
- package/dist/esm/types/editor-react-context.js +1 -0
- package/dist/esm/types/empty-state-handler.js +1 -0
- package/dist/esm/types/feature-flags.js +1 -0
- package/dist/esm/types/floating-toolbar.js +1 -0
- package/dist/esm/types/index.js +2 -1
- package/dist/esm/types/plugin-factory.js +1 -0
- package/dist/esm/types/prosemirror-config.js +1 -0
- package/dist/esm/types/quick-insert.js +1 -0
- package/dist/esm/types/supported-browsers.js +2 -0
- package/dist/esm/types/toolbar.js +30 -0
- package/dist/esm/types/ui-components.js +1 -0
- package/dist/esm/ui/DropList/index.js +205 -0
- package/dist/esm/ui/ErrorBoundary/index.js +84 -0
- package/dist/esm/ui/Layer/index.js +228 -0
- package/dist/esm/ui/Layer/internal/helpers.js +62 -0
- package/dist/esm/ui/PortalProvider/PortalProviderThemesProvider.js +43 -0
- package/dist/esm/ui/PortalProvider/index.js +275 -0
- package/dist/esm/ui-color/ColorPalette/Color/index.js +93 -0
- package/dist/esm/ui-color/ColorPalette/Color/styles.js +19 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/cellBackgroundColorPalette.js +15 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/common.js +24 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/getColorMessage.js +10 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/index.js +1 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/paletteMessages.js +113 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/panelBackgroundPalette.js +153 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/statusColorPalette.js +56 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/textColorPalette.js +25 -0
- package/dist/esm/ui-color/ColorPalette/Palettes/type.js +1 -0
- package/dist/esm/ui-color/ColorPalette/index.js +70 -0
- package/dist/esm/ui-color/ColorPalette/styles.js +7 -0
- package/dist/esm/ui-color/index.js +8 -0
- package/dist/esm/ui-menu/Dropdown/index.js +105 -0
- package/dist/esm/ui-menu/DropdownMenu/index.js +265 -0
- package/dist/esm/ui-menu/DropdownMenu/types.js +1 -0
- package/dist/esm/ui-menu/ToolbarButton/index.js +102 -0
- package/dist/esm/ui-menu/ToolbarButton/styles.js +12 -0
- package/dist/esm/ui-menu/index.js +3 -0
- package/dist/esm/ui-react/ReactEditorViewContext.js +3 -0
- package/dist/esm/ui-react/index.js +2 -0
- package/dist/esm/ui-react/with-react-editor-view-outer-listeners.js +138 -0
- package/dist/esm/utils/dom.js +113 -0
- package/dist/esm/utils/editor-core-utils.js +72 -0
- package/dist/esm/utils/index.js +6 -0
- package/dist/esm/utils/is-text-input.js +18 -0
- package/dist/esm/utils/nodes.js +100 -0
- package/dist/esm/utils/plugin-state-factory.js +106 -0
- package/dist/esm/utils/slice.js +59 -0
- package/dist/esm/version.json +1 -1
- package/dist/esm/with-plugin-state/index.js +311 -0
- package/dist/esm/with-plugin-state/types.js +1 -0
- package/dist/types/analytics/api.d.ts +5 -0
- package/dist/types/analytics/index.d.ts +3 -0
- package/dist/types/analytics/types/avatar.d.ts +5 -0
- package/dist/types/analytics/types/block.d.ts +3 -0
- package/dist/types/analytics/types/config-panel-events.d.ts +17 -0
- package/dist/types/analytics/types/cut-copy-events.d.ts +12 -0
- package/dist/types/analytics/types/date-events.d.ts +17 -0
- package/dist/types/analytics/types/dispatch-analytics-event.d.ts +2 -0
- package/dist/types/analytics/types/element-browser-events.d.ts +11 -0
- package/dist/types/analytics/types/enums.d.ts +313 -0
- package/dist/types/analytics/types/events.d.ts +125 -0
- package/dist/types/analytics/types/experimental-events.d.ts +17 -0
- package/dist/types/analytics/types/extension-events.d.ts +37 -0
- package/dist/types/analytics/types/find-replace-events.d.ts +23 -0
- package/dist/types/analytics/types/format-events.d.ts +49 -0
- package/dist/types/analytics/types/general-events.d.ts +179 -0
- package/dist/types/analytics/types/index.d.ts +34 -0
- package/dist/types/analytics/types/inline-comment-events.d.ts +17 -0
- package/dist/types/analytics/types/insert-events.d.ts +128 -0
- package/dist/types/analytics/types/link-tool-bar-events.d.ts +76 -0
- package/dist/types/analytics/types/list-events.d.ts +52 -0
- package/dist/types/analytics/types/media-events.d.ts +16 -0
- package/dist/types/analytics/types/node-events.d.ts +56 -0
- package/dist/types/analytics/types/paste-events.d.ts +39 -0
- package/dist/types/analytics/types/performance-report.d.ts +24 -0
- package/dist/types/analytics/types/selection-events.d.ts +18 -0
- package/dist/types/analytics/types/smart-links.d.ts +13 -0
- package/dist/types/analytics/types/substitute-events.d.ts +26 -0
- package/dist/types/analytics/types/table-events.d.ts +94 -0
- package/dist/types/analytics/types/toolbar-button.d.ts +22 -0
- package/dist/types/analytics/types/type-ahead.d.ts +27 -0
- package/dist/types/analytics/types/utils.d.ts +46 -0
- package/dist/types/core-utils/index.d.ts +1 -0
- package/dist/types/core-utils/inside.d.ts +2 -0
- package/dist/types/event-dispatcher/index.d.ts +19 -0
- package/dist/types/keymaps/consts.d.ts +12 -0
- package/dist/types/keymaps/index.d.ts +89 -0
- package/dist/types/messages/index.d.ts +124 -0
- package/dist/types/messages/insert-block.d.ts +167 -0
- package/dist/types/node-width/index.d.ts +7 -0
- package/dist/types/react-node-view/index.d.ts +52 -0
- package/dist/types/react-node-view/types.d.ts +12 -0
- package/dist/types/selection/gap-cursor/selection.d.ts +40 -0
- package/dist/types/selection/gap-cursor/utils/index.d.ts +2 -0
- package/dist/types/selection/gap-cursor/utils/is-ignored.d.ts +2 -0
- package/dist/types/selection/gap-cursor/utils/is-valid-target-node.d.ts +2 -0
- package/dist/types/selection/index.d.ts +5 -0
- package/dist/types/selection/types.d.ts +26 -0
- package/dist/types/selection/utils.d.ts +4 -0
- package/dist/types/styles/index.d.ts +2 -0
- package/dist/types/styles/shared/extension.d.ts +2 -0
- package/dist/types/styles/shared/layout.d.ts +2 -0
- package/dist/types/styles/shared/table.d.ts +2 -0
- package/dist/types/transforms/expand.d.ts +5 -0
- package/dist/types/transforms/extension.d.ts +6 -0
- package/dist/types/transforms/index.d.ts +3 -0
- package/dist/types/transforms/layout.d.ts +15 -0
- package/dist/types/types/command.d.ts +5 -0
- package/dist/types/types/context-panel.d.ts +3 -0
- package/dist/types/types/editor-actions.d.ts +19 -0
- package/dist/types/types/editor-appearance.d.ts +1 -0
- package/dist/types/types/editor-container-width.d.ts +6 -0
- package/dist/types/types/editor-plugin.d.ts +61 -0
- package/dist/types/types/editor-react-context.d.ts +6 -0
- package/dist/types/types/empty-state-handler.d.ts +7 -0
- package/dist/types/types/feature-flags.d.ts +344 -0
- package/dist/types/types/floating-toolbar.d.ts +183 -0
- package/dist/types/types/index.d.ts +17 -1
- package/dist/types/types/plugin-factory.d.ts +27 -0
- package/dist/types/types/prosemirror-config.d.ts +14 -0
- package/dist/types/types/quick-insert.d.ts +26 -0
- package/dist/types/types/supported-browsers.d.ts +10 -0
- package/dist/types/types/toolbar.d.ts +30 -0
- package/dist/types/types/type-ahead.d.ts +50 -1
- package/dist/types/types/ui-components.d.ts +22 -0
- package/dist/types/ui/DropList/index.d.ts +19 -0
- package/dist/types/ui/ErrorBoundary/index.d.ts +24 -0
- package/dist/types/ui/Layer/index.d.ts +47 -0
- package/dist/types/ui/Layer/internal/helpers.d.ts +5 -0
- package/dist/types/ui/PortalProvider/PortalProviderThemesProvider.d.ts +6 -0
- package/dist/types/ui/PortalProvider/index.d.ts +50 -0
- package/dist/types/ui-color/ColorPalette/Color/index.d.ts +19 -0
- package/dist/types/ui-color/ColorPalette/Color/styles.d.ts +4 -0
- package/dist/types/ui-color/ColorPalette/Palettes/cellBackgroundColorPalette.d.ts +3 -0
- package/dist/types/ui-color/ColorPalette/Palettes/common.d.ts +2 -0
- package/dist/types/ui-color/ColorPalette/Palettes/getColorMessage.d.ts +2 -0
- package/dist/types/ui-color/ColorPalette/Palettes/index.d.ts +2 -0
- package/dist/types/ui-color/ColorPalette/Palettes/paletteMessages.d.ts +113 -0
- package/dist/types/ui-color/ColorPalette/Palettes/panelBackgroundPalette.d.ts +4 -0
- package/dist/types/ui-color/ColorPalette/Palettes/statusColorPalette.d.ts +4 -0
- package/dist/types/ui-color/ColorPalette/Palettes/textColorPalette.d.ts +3 -0
- package/dist/types/ui-color/ColorPalette/Palettes/type.d.ts +8 -0
- package/dist/types/ui-color/ColorPalette/index.d.ts +15 -0
- package/dist/types/ui-color/ColorPalette/styles.d.ts +1 -0
- package/dist/types/ui-color/index.d.ts +9 -0
- package/dist/types/ui-menu/Dropdown/index.d.ts +32 -0
- package/dist/types/ui-menu/DropdownMenu/index.d.ts +19 -0
- package/dist/types/ui-menu/DropdownMenu/types.d.ts +43 -0
- package/dist/types/ui-menu/ToolbarButton/index.d.ts +53 -0
- package/dist/types/ui-menu/ToolbarButton/styles.d.ts +4 -0
- package/dist/types/ui-menu/index.d.ts +5 -0
- package/dist/types/ui-react/ReactEditorViewContext.d.ts +8 -0
- package/dist/types/ui-react/index.d.ts +2 -0
- package/dist/types/ui-react/with-react-editor-view-outer-listeners.d.ts +9 -0
- package/dist/types/utils/dom.d.ts +26 -0
- package/dist/types/utils/editor-core-utils.d.ts +23 -0
- package/dist/types/utils/getModeFromTheme.d.ts +1 -1
- package/dist/types/utils/index.d.ts +9 -0
- package/dist/types/utils/is-text-input.d.ts +2 -0
- package/dist/types/utils/nodes.d.ts +35 -0
- package/dist/types/utils/plugin-state-factory.d.ts +16 -0
- package/dist/types/utils/slice.d.ts +11 -0
- package/dist/types/with-plugin-state/index.d.ts +86 -0
- package/dist/types/with-plugin-state/types.d.ts +10 -0
- package/error-boundary/package.json +8 -0
- package/event-dispatcher/package.json +8 -0
- package/keymaps/package.json +8 -0
- package/node-width/package.json +8 -0
- package/package.json +28 -7
- package/portal-provider/package.json +8 -0
- package/react-node-view/package.json +8 -0
- package/selection/package.json +8 -0
- package/transforms/package.json +8 -0
- package/ui-color/package.json +8 -0
- package/ui-menu/package.json +8 -0
- package/ui-react/package.json +8 -0
- package/with-plugin-state/package.json +8 -0
|
@@ -6,4 +6,5 @@ export let SortOrder;
|
|
|
6
6
|
SortOrder["NO_ORDER"] = "no_order";
|
|
7
7
|
})(SortOrder || (SortOrder = {}));
|
|
8
8
|
|
|
9
|
-
export { AnnotationUpdateEmitter, AnnotationUpdateEvent } from './annotation';
|
|
9
|
+
export { AnnotationUpdateEmitter, AnnotationUpdateEvent } from './annotation';
|
|
10
|
+
export { ToolbarSize, ToolbarWidths, ToolbarWidthsFullPage } from './toolbar';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export let ToolbarSize;
|
|
2
|
+
|
|
3
|
+
(function (ToolbarSize) {
|
|
4
|
+
ToolbarSize[ToolbarSize["XXL"] = 6] = "XXL";
|
|
5
|
+
ToolbarSize[ToolbarSize["XL"] = 5] = "XL";
|
|
6
|
+
ToolbarSize[ToolbarSize["L"] = 4] = "L";
|
|
7
|
+
ToolbarSize[ToolbarSize["M"] = 3] = "M";
|
|
8
|
+
ToolbarSize[ToolbarSize["S"] = 2] = "S";
|
|
9
|
+
ToolbarSize[ToolbarSize["XXXS"] = 1] = "XXXS";
|
|
10
|
+
})(ToolbarSize || (ToolbarSize = {}));
|
|
11
|
+
|
|
12
|
+
export let ToolbarWidths;
|
|
13
|
+
|
|
14
|
+
(function (ToolbarWidths) {
|
|
15
|
+
ToolbarWidths[ToolbarWidths["XXL"] = 610] = "XXL";
|
|
16
|
+
ToolbarWidths[ToolbarWidths["XL"] = 540] = "XL";
|
|
17
|
+
ToolbarWidths[ToolbarWidths["L"] = 460] = "L";
|
|
18
|
+
ToolbarWidths[ToolbarWidths["M"] = 450] = "M";
|
|
19
|
+
ToolbarWidths[ToolbarWidths["S"] = 370] = "S";
|
|
20
|
+
})(ToolbarWidths || (ToolbarWidths = {}));
|
|
21
|
+
|
|
22
|
+
export let ToolbarWidthsFullPage;
|
|
23
|
+
|
|
24
|
+
(function (ToolbarWidthsFullPage) {
|
|
25
|
+
ToolbarWidthsFullPage[ToolbarWidthsFullPage["XXL"] = 650] = "XXL";
|
|
26
|
+
ToolbarWidthsFullPage[ToolbarWidthsFullPage["XL"] = 580] = "XL";
|
|
27
|
+
ToolbarWidthsFullPage[ToolbarWidthsFullPage["L"] = 540] = "L";
|
|
28
|
+
ToolbarWidthsFullPage[ToolbarWidthsFullPage["M"] = 490] = "M";
|
|
29
|
+
ToolbarWidthsFullPage[ToolbarWidthsFullPage["S"] = 410] = "S";
|
|
30
|
+
})(ToolbarWidthsFullPage || (ToolbarWidthsFullPage = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
|
|
3
|
+
/** @jsx jsx */
|
|
4
|
+
import { Component } from 'react';
|
|
5
|
+
import { css, jsx } from '@emotion/react';
|
|
6
|
+
import { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
7
|
+
import { DN50, DN600, N0, N50A, N60A, N900 } from '@atlaskit/theme/colors';
|
|
8
|
+
import { themed } from '@atlaskit/theme/components';
|
|
9
|
+
import { borderRadius, gridSize } from '@atlaskit/theme/constants';
|
|
10
|
+
import { token } from '@atlaskit/tokens';
|
|
11
|
+
import Layer from '../Layer';
|
|
12
|
+
const packageName = "@atlaskit/editor-common";
|
|
13
|
+
const packageVersion = "69.3.0";
|
|
14
|
+
const halfFocusRing = 1;
|
|
15
|
+
const dropOffset = `0, ${gridSize()}px`;
|
|
16
|
+
|
|
17
|
+
class DropList extends Component {
|
|
18
|
+
constructor(...args) {
|
|
19
|
+
super(...args);
|
|
20
|
+
|
|
21
|
+
_defineProperty(this, "wrapperStyles", css`
|
|
22
|
+
${this.props.shouldFitContainer ? 'display: block; flex: 1 1 auto;' : 'display: inline-flex;'}
|
|
23
|
+
transition-duration: 0.2s;
|
|
24
|
+
transition: box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38);
|
|
25
|
+
`);
|
|
26
|
+
|
|
27
|
+
_defineProperty(this, "triggerStyles", css`
|
|
28
|
+
transition-duration: 0.2s;
|
|
29
|
+
transition: box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38);
|
|
30
|
+
${this.props.shouldFitContainer ? 'display: block; box-sizing: border-box;' : 'display: inline-flex;'}
|
|
31
|
+
`);
|
|
32
|
+
|
|
33
|
+
_defineProperty(this, "menuWrapper", theme => {
|
|
34
|
+
return css`
|
|
35
|
+
color: ${themed({
|
|
36
|
+
light: token('color.text', N900),
|
|
37
|
+
dark: token('color.text', DN600)
|
|
38
|
+
})(theme)};
|
|
39
|
+
background-color: ${themed({
|
|
40
|
+
light: token('elevation.surface.overlay', N0),
|
|
41
|
+
dark: token('elevation.surface.overlay', DN50)
|
|
42
|
+
})(theme)};
|
|
43
|
+
border-radius: ${borderRadius()}px;
|
|
44
|
+
box-shadow: 0 ${gridSize() / 2}px ${gridSize()}px -${gridSize() / 4}px ${N50A},
|
|
45
|
+
0 0 1px ${N60A};
|
|
46
|
+
box-sizing: border-box;
|
|
47
|
+
overflow: auto;
|
|
48
|
+
padding: ${gridSize() / 2}px 0;
|
|
49
|
+
max-height: 90vh;
|
|
50
|
+
`;
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
_defineProperty(this, "componentDidMount", () => {
|
|
54
|
+
this.setContentWidth(); // We use a captured event here to avoid a radio or checkbox dropdown item firing its
|
|
55
|
+
// click event first, which would cause a re-render of the element and prevent DropList
|
|
56
|
+
// from detecting the actual source of this original click event.
|
|
57
|
+
|
|
58
|
+
document.addEventListener('click', this.handleClickOutside, true);
|
|
59
|
+
document.addEventListener('keydown', this.handleEsc);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
_defineProperty(this, "componentDidUpdate", () => {
|
|
63
|
+
if (this.props.isOpen) {
|
|
64
|
+
this.setContentWidth();
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
_defineProperty(this, "componentWillUnmount", () => {
|
|
69
|
+
document.removeEventListener('click', this.handleClickOutside, true);
|
|
70
|
+
document.removeEventListener('keydown', this.handleEsc);
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
_defineProperty(this, "setContentWidth", () => {
|
|
74
|
+
const {
|
|
75
|
+
dropContentRef,
|
|
76
|
+
triggerRef
|
|
77
|
+
} = this;
|
|
78
|
+
const {
|
|
79
|
+
shouldFitContainer
|
|
80
|
+
} = this.props; // We need to manually set the content width to match the trigger width
|
|
81
|
+
|
|
82
|
+
if (shouldFitContainer && dropContentRef && triggerRef) {
|
|
83
|
+
dropContentRef.style.width = `${triggerRef.offsetWidth - halfFocusRing * 2}px`;
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
_defineProperty(this, "handleEsc", event => {
|
|
88
|
+
if ((event.key === 'Escape' || event.key === 'Esc') && this.props.isOpen) {
|
|
89
|
+
this.close(event);
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
_defineProperty(this, "handleClickOutside", event => {
|
|
94
|
+
if (this.props.isOpen) {
|
|
95
|
+
if (event.target instanceof Node) {
|
|
96
|
+
// Rather than check for the target within the entire DropList, we specify the trigger/content.
|
|
97
|
+
// This aids with future effort in scroll-locking DropList when isMenuFixed is enabled; the scroll
|
|
98
|
+
// blanket which stretches to the viewport should not stop 'close' from being triggered.
|
|
99
|
+
const withinTrigger = this.triggerRef && this.triggerRef.contains(event.target);
|
|
100
|
+
const withinContent = this.dropContentRef && this.dropContentRef.contains(event.target);
|
|
101
|
+
|
|
102
|
+
if (!withinTrigger && !withinContent) {
|
|
103
|
+
this.close(event);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
_defineProperty(this, "close", event => {
|
|
110
|
+
if (this.props.onOpenChange) {
|
|
111
|
+
this.props.onOpenChange({
|
|
112
|
+
isOpen: false,
|
|
113
|
+
event
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
_defineProperty(this, "handleContentRef", ref => {
|
|
119
|
+
this.dropContentRef = ref; // If the dropdown has just been opened, we focus on the containing element so the
|
|
120
|
+
// user can tab to the first dropdown item. We will only receive this ref if isOpen
|
|
121
|
+
// is true or null, so no need to check for truthiness here.
|
|
122
|
+
|
|
123
|
+
if (ref) {
|
|
124
|
+
ref.focus();
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
_defineProperty(this, "handleTriggerRef", ref => {
|
|
129
|
+
this.triggerRef = ref;
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
|
|
134
|
+
getChildContext() {
|
|
135
|
+
return {
|
|
136
|
+
shouldAllowMultilineItems: false
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
render() {
|
|
141
|
+
const {
|
|
142
|
+
children,
|
|
143
|
+
isOpen,
|
|
144
|
+
position,
|
|
145
|
+
trigger,
|
|
146
|
+
onPositioned,
|
|
147
|
+
testId
|
|
148
|
+
} = this.props;
|
|
149
|
+
let layerContent = isOpen ? jsx("div", {
|
|
150
|
+
css: theme => this.menuWrapper({
|
|
151
|
+
theme: theme
|
|
152
|
+
}),
|
|
153
|
+
"data-role": "droplistContent",
|
|
154
|
+
"data-testid": testId && `${testId}--content`,
|
|
155
|
+
ref: this.handleContentRef
|
|
156
|
+
}, children) : null;
|
|
157
|
+
return jsx("div", {
|
|
158
|
+
css: this.wrapperStyles
|
|
159
|
+
}, jsx(Layer, {
|
|
160
|
+
content: layerContent,
|
|
161
|
+
offset: dropOffset,
|
|
162
|
+
position: position,
|
|
163
|
+
onPositioned: onPositioned
|
|
164
|
+
}, jsx("div", {
|
|
165
|
+
css: this.triggerStyles,
|
|
166
|
+
ref: this.handleTriggerRef
|
|
167
|
+
}, trigger)));
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
const createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');
|
|
173
|
+
export default withAnalyticsContext({
|
|
174
|
+
componentName: 'droplist',
|
|
175
|
+
packageName,
|
|
176
|
+
packageVersion
|
|
177
|
+
})(withAnalyticsEvents({
|
|
178
|
+
onOpenChange: createAndFireEventOnAtlaskit({
|
|
179
|
+
action: 'toggled',
|
|
180
|
+
actionSubject: 'droplist',
|
|
181
|
+
attributes: {
|
|
182
|
+
componentName: 'droplist',
|
|
183
|
+
packageName,
|
|
184
|
+
packageVersion
|
|
185
|
+
}
|
|
186
|
+
})
|
|
187
|
+
})(DropList));
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { ACTION, EVENT_TYPE } from '../../analytics';
|
|
4
|
+
export class ErrorBoundary extends React.Component {
|
|
5
|
+
constructor(...args) {
|
|
6
|
+
super(...args);
|
|
7
|
+
|
|
8
|
+
_defineProperty(this, "state", {
|
|
9
|
+
errorCaptured: false
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
hasFallback() {
|
|
14
|
+
return typeof this.props.fallbackComponent !== 'undefined';
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
shouldRecover() {
|
|
18
|
+
return this.hasFallback() && this.state.errorCaptured;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
componentDidCatch(error, errorInfo) {
|
|
22
|
+
if (this.props.dispatchAnalyticsEvent) {
|
|
23
|
+
this.props.dispatchAnalyticsEvent({
|
|
24
|
+
action: ACTION.EDITOR_CRASHED,
|
|
25
|
+
actionSubject: this.props.component,
|
|
26
|
+
actionSubjectId: this.props.componentId,
|
|
27
|
+
eventType: EVENT_TYPE.OPERATIONAL,
|
|
28
|
+
attributes: {
|
|
29
|
+
error,
|
|
30
|
+
errorInfo,
|
|
31
|
+
// @ts-expect-error
|
|
32
|
+
errorRethrown: !this.hasFallback()
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
if (this.hasFallback()) {
|
|
38
|
+
this.setState({
|
|
39
|
+
errorCaptured: true
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
render() {
|
|
45
|
+
if (this.shouldRecover()) {
|
|
46
|
+
return this.props.fallbackComponent;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return this.props.children;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
import React, { Component } from 'react';
|
|
3
|
+
import Popper from 'popper.js'; // eslint-disable-line import/extensions
|
|
4
|
+
|
|
5
|
+
import rafSchedule from 'raf-schd';
|
|
6
|
+
import { positionPropToPopperPosition } from './internal/helpers';
|
|
7
|
+
const defaultState = {
|
|
8
|
+
hasExtractedStyles: false,
|
|
9
|
+
// We set these default offsets to prevent a flash of popper content in the wrong position
|
|
10
|
+
// which can cause incorrect height calculations. Popper will calculate these values
|
|
11
|
+
offsets: {
|
|
12
|
+
popper: {
|
|
13
|
+
left: -9999,
|
|
14
|
+
top: -9999,
|
|
15
|
+
position: null
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
// fix Safari parent width: https://product-fabric.atlassian.net/browse/ED-1784
|
|
19
|
+
cssPosition: 'absolute',
|
|
20
|
+
originalHeight: null,
|
|
21
|
+
maxHeight: null
|
|
22
|
+
};
|
|
23
|
+
export default class Layer extends Component {
|
|
24
|
+
// working with extract-react-types
|
|
25
|
+
constructor(props) {
|
|
26
|
+
super(props);
|
|
27
|
+
|
|
28
|
+
_defineProperty(this, "targetRef", /*#__PURE__*/React.createRef());
|
|
29
|
+
|
|
30
|
+
_defineProperty(this, "contentRef", /*#__PURE__*/React.createRef());
|
|
31
|
+
|
|
32
|
+
_defineProperty(this, "extractStyles", state => {
|
|
33
|
+
if (state) {
|
|
34
|
+
const popperHeight = state.offsets.popper.height;
|
|
35
|
+
const left = Math.round(state.offsets.popper.left);
|
|
36
|
+
const top = Math.round(state.offsets.popper.top);
|
|
37
|
+
const cssPosition = 'absolute';
|
|
38
|
+
const originalHeight = this.state.originalHeight || popperHeight;
|
|
39
|
+
const maxHeight = this.calculateMaxHeight(originalHeight, popperHeight, top, cssPosition);
|
|
40
|
+
this.setState({
|
|
41
|
+
// position: fixed or absolute
|
|
42
|
+
cssPosition,
|
|
43
|
+
hasExtractedStyles: true,
|
|
44
|
+
transform: `translate3d(${left}px, ${top}px, 0px)`,
|
|
45
|
+
originalHeight,
|
|
46
|
+
maxHeight
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
this.state = defaultState;
|
|
52
|
+
this.extractStyles = rafSchedule(this.extractStyles.bind(this));
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
componentDidMount() {
|
|
56
|
+
this.applyPopper(this.props);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
UNSAFE_componentWillReceiveProps(nextProps) {
|
|
60
|
+
this.applyPopper(nextProps);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
componentDidUpdate(prevProps, prevState) {
|
|
64
|
+
const {
|
|
65
|
+
onPositioned
|
|
66
|
+
} = this.props;
|
|
67
|
+
const {
|
|
68
|
+
hasExtractedStyles
|
|
69
|
+
} = this.state; // This flag is set the first time the position is calculated from Popper and applied to the content
|
|
70
|
+
|
|
71
|
+
if (!prevState.hasExtractedStyles && hasExtractedStyles && onPositioned) {
|
|
72
|
+
onPositioned();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
componentWillUnmount() {
|
|
77
|
+
// this.extractStyles.cancel();
|
|
78
|
+
if (this.popper) {
|
|
79
|
+
this.popper.destroy();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/* Calculate the max height of the popper if it's height is greater than the viewport to prevent
|
|
83
|
+
* the bottom of the popper not being viewable.
|
|
84
|
+
* Only works if the popper uses viewport as the boundary and has a fixed position ancestor.
|
|
85
|
+
*/
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
calculateMaxHeight(originalHeight, currentHeight, positionTop, cssPosition) {
|
|
89
|
+
let DocumentElementClientHeight = 0;
|
|
90
|
+
|
|
91
|
+
if (document.documentElement) {
|
|
92
|
+
DocumentElementClientHeight = document.documentElement.clientHeight;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
if (cssPosition !== 'fixed') {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
const viewportHeight = Math.max(DocumentElementClientHeight, window.innerHeight || 0);
|
|
100
|
+
return viewportHeight < originalHeight && currentHeight + positionTop >= viewportHeight - 50 ? // allow some spacing either side of viewport height
|
|
101
|
+
viewportHeight - 12 : null;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
applyPopper(props) {
|
|
105
|
+
if (!this.targetRef.current || !this.contentRef.current) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
if (this.popper) {
|
|
110
|
+
this.popper.destroy();
|
|
111
|
+
} // "new Popper(...)" operation is very expensive when called on virtual DOM.
|
|
112
|
+
// This condition reduces the number of calls so we can run our tests faster
|
|
113
|
+
// (time was reduced from 100s to 13s).
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
if (!props.content) {
|
|
117
|
+
return;
|
|
118
|
+
} // we wrap our target in a div so that we can safely get a reference to it, but we pass the
|
|
119
|
+
// actual target to popper
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
const isAlwaysFixed = false;
|
|
123
|
+
const actualTarget = this.targetRef.current.children[0];
|
|
124
|
+
const popperOpts = {
|
|
125
|
+
placement: positionPropToPopperPosition(props.position),
|
|
126
|
+
onCreate: this.extractStyles,
|
|
127
|
+
onUpdate: this.extractStyles,
|
|
128
|
+
modifiers: {
|
|
129
|
+
applyStyle: {
|
|
130
|
+
enabled: false
|
|
131
|
+
},
|
|
132
|
+
hide: {
|
|
133
|
+
enabled: false
|
|
134
|
+
},
|
|
135
|
+
offset: {
|
|
136
|
+
enabled: true,
|
|
137
|
+
offset: this.props.offset
|
|
138
|
+
},
|
|
139
|
+
flip: {
|
|
140
|
+
enabled: false,
|
|
141
|
+
flipVariations: true,
|
|
142
|
+
boundariesElement: 'viewport',
|
|
143
|
+
padding: 0 // leave 0 pixels between popper and the boundariesElement
|
|
144
|
+
|
|
145
|
+
},
|
|
146
|
+
preventOverflow: {
|
|
147
|
+
enabled: false,
|
|
148
|
+
escapeWithReference: true
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
positionFixed: isAlwaysFixed
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
if (actualTarget) {
|
|
155
|
+
this.popper = new Popper(actualTarget, this.contentRef.current, popperOpts);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
render() {
|
|
160
|
+
const {
|
|
161
|
+
transform,
|
|
162
|
+
hasExtractedStyles,
|
|
163
|
+
maxHeight
|
|
164
|
+
} = this.state;
|
|
165
|
+
const opacity = hasExtractedStyles ? {} : {
|
|
166
|
+
opacity: 0
|
|
167
|
+
};
|
|
168
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
169
|
+
ref: this.targetRef
|
|
170
|
+
}, this.props.children), /*#__PURE__*/React.createElement("div", {
|
|
171
|
+
ref: this.contentRef,
|
|
172
|
+
style: {
|
|
173
|
+
top: 0,
|
|
174
|
+
left: 0,
|
|
175
|
+
position: 'absolute',
|
|
176
|
+
transform,
|
|
177
|
+
maxHeight: maxHeight ? maxHeight : 'auto',
|
|
178
|
+
...opacity
|
|
179
|
+
}
|
|
180
|
+
}, this.props.content));
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
_defineProperty(Layer, "defaultProps", {
|
|
186
|
+
boundariesElement: 'viewport',
|
|
187
|
+
children: null,
|
|
188
|
+
content: null,
|
|
189
|
+
offset: '0, 0',
|
|
190
|
+
position: 'right middle',
|
|
191
|
+
zIndex: 400,
|
|
192
|
+
lockScroll: false,
|
|
193
|
+
isAlwaysFixed: false,
|
|
194
|
+
onPositioned: () => {}
|
|
195
|
+
});
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
const positionMap = {
|
|
2
|
+
'top left': {
|
|
3
|
+
position: 'top-start',
|
|
4
|
+
animation: 'top'
|
|
5
|
+
},
|
|
6
|
+
'top center': {
|
|
7
|
+
position: 'top',
|
|
8
|
+
animation: 'top'
|
|
9
|
+
},
|
|
10
|
+
'top right': {
|
|
11
|
+
position: 'top-end',
|
|
12
|
+
animation: 'top'
|
|
13
|
+
},
|
|
14
|
+
'right top': {
|
|
15
|
+
position: 'right-start',
|
|
16
|
+
animation: 'right'
|
|
17
|
+
},
|
|
18
|
+
'right middle': {
|
|
19
|
+
position: 'right',
|
|
20
|
+
animation: 'right'
|
|
21
|
+
},
|
|
22
|
+
'right bottom': {
|
|
23
|
+
position: 'right-end',
|
|
24
|
+
animation: 'right'
|
|
25
|
+
},
|
|
26
|
+
'bottom left': {
|
|
27
|
+
position: 'bottom-start',
|
|
28
|
+
animation: 'bottom'
|
|
29
|
+
},
|
|
30
|
+
'bottom center': {
|
|
31
|
+
position: 'bottom',
|
|
32
|
+
animation: 'bottom'
|
|
33
|
+
},
|
|
34
|
+
'bottom right': {
|
|
35
|
+
position: 'bottom-end',
|
|
36
|
+
animation: 'bottom'
|
|
37
|
+
},
|
|
38
|
+
'left top': {
|
|
39
|
+
position: 'left-start',
|
|
40
|
+
animation: 'left'
|
|
41
|
+
},
|
|
42
|
+
'left middle': {
|
|
43
|
+
position: 'left',
|
|
44
|
+
animation: 'left'
|
|
45
|
+
},
|
|
46
|
+
'left bottom': {
|
|
47
|
+
position: 'left-end',
|
|
48
|
+
animation: 'left'
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
export const POSITION_ATTRIBUTE_ENUM = {
|
|
52
|
+
values: ['top left', 'top center', 'top right', 'right top', 'right middle', 'right bottom', 'bottom left', 'bottom center', 'bottom right', 'left top', 'left middle', 'left bottom'],
|
|
53
|
+
default: 'right middle'
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
function positionToPopper(position) {
|
|
57
|
+
return position && positionMap[position] ? positionMap[position].position : null;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export function positionPropToPopperPosition(position) {
|
|
61
|
+
return positionToPopper(position) || positionMap[POSITION_ATTRIBUTE_ENUM.default].position;
|
|
62
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ThemeProvider } from '@emotion/react';
|
|
3
|
+
import AtlaskitTheme from '@atlaskit/theme/components';
|
|
4
|
+
import { CHANNEL } from '@atlaskit/theme/constants';
|
|
5
|
+
export function PortalProviderThemeProviders(props) {
|
|
6
|
+
const {
|
|
7
|
+
children,
|
|
8
|
+
mode
|
|
9
|
+
} = props;
|
|
10
|
+
const styledComponentsAndEmotionTheme = React.useMemo( // This return value should only be one of the following
|
|
11
|
+
// - { [CHANNEL]: { mode },
|
|
12
|
+
// - { theme: { [CHANNEL]: { mode } }
|
|
13
|
+
// However, it appears that consumers have inconsistent expectations
|
|
14
|
+
// regarding the shape.
|
|
15
|
+
// This can be revisited in future work, and for the purposes of
|
|
16
|
+
// fixing https://product-fabric.atlassian.net/browse/ED-14956
|
|
17
|
+
// we are merging the two shapes consumers expect.
|
|
18
|
+
() => ({
|
|
19
|
+
[CHANNEL]: {
|
|
20
|
+
mode
|
|
21
|
+
},
|
|
22
|
+
theme: {
|
|
23
|
+
[CHANNEL]: {
|
|
24
|
+
mode
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}), [mode]);
|
|
28
|
+
const atlaskitTheme = React.useCallback(() => ({
|
|
29
|
+
mode
|
|
30
|
+
}), [mode]);
|
|
31
|
+
return (
|
|
32
|
+
/*#__PURE__*/
|
|
33
|
+
// TODO: ED-15585
|
|
34
|
+
// import { ThemeProvider as DeprectateStyledComponentsProvider } from 'styled-components';
|
|
35
|
+
// <DeprectateStyledComponentsProvider theme={styledComponentsAndEmotionTheme}>
|
|
36
|
+
// </DeprectateStyledComponentsProvider>
|
|
37
|
+
React.createElement(ThemeProvider, {
|
|
38
|
+
theme: styledComponentsAndEmotionTheme
|
|
39
|
+
}, /*#__PURE__*/React.createElement(AtlaskitTheme.Provider, {
|
|
40
|
+
value: atlaskitTheme
|
|
41
|
+
}, children))
|
|
42
|
+
);
|
|
43
|
+
}
|