@atlaskit/editor-common 69.2.2 → 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 +21 -0
- package/analytics/package.json +8 -0
- package/core-utils/package.json +8 -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/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/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 +27 -5
- 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
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { NodeSelection, TextSelection } from 'prosemirror-state';
|
|
2
|
+
import { ReplaceAroundStep, ReplaceStep } from 'prosemirror-transform';
|
|
3
|
+
import { closest } from './dom';
|
|
4
|
+
export var stepHasSlice = function stepHasSlice(step) {
|
|
5
|
+
return step && step.hasOwnProperty('slice');
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Checks whether a given step is adding nodes of given nodeTypes
|
|
9
|
+
*
|
|
10
|
+
* @param step Step to check
|
|
11
|
+
* @param nodeTypes NodeTypes being added
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
export function stepAddsOneOf(step, nodeTypes) {
|
|
15
|
+
var adds = false;
|
|
16
|
+
|
|
17
|
+
if (!stepHasSlice(step)) {
|
|
18
|
+
return adds;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
step.slice.content.descendants(function (node) {
|
|
22
|
+
if (nodeTypes.has(node.type)) {
|
|
23
|
+
adds = true;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return !adds;
|
|
27
|
+
});
|
|
28
|
+
return adds;
|
|
29
|
+
}
|
|
30
|
+
export var extractSliceFromStep = function extractSliceFromStep(step) {
|
|
31
|
+
if (!(step instanceof ReplaceStep) && !(step instanceof ReplaceAroundStep)) {
|
|
32
|
+
return null;
|
|
33
|
+
} // @ts-ignore This is by design. Slice is a private property, but accesible, from ReplaceStep.
|
|
34
|
+
// However, we need to read it to found if the step was adding a newline
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
var slice = step.slice;
|
|
38
|
+
return slice;
|
|
39
|
+
};
|
|
40
|
+
export var isTextSelection = function isTextSelection(selection) {
|
|
41
|
+
return selection instanceof TextSelection;
|
|
42
|
+
};
|
|
43
|
+
export var isElementInTableCell = function isElementInTableCell(element) {
|
|
44
|
+
return closest(element, 'td') || closest(element, 'th');
|
|
45
|
+
};
|
|
46
|
+
export var isLastItemMediaGroup = function isLastItemMediaGroup(node) {
|
|
47
|
+
var content = node.content;
|
|
48
|
+
return !!content.lastChild && content.lastChild.type.name === 'mediaGroup';
|
|
49
|
+
}; // TODO: pulled from `packages/editor/editor-core/src/utils/selection.ts`
|
|
50
|
+
|
|
51
|
+
export var setNodeSelection = function setNodeSelection(view, pos) {
|
|
52
|
+
var state = view.state,
|
|
53
|
+
dispatch = view.dispatch;
|
|
54
|
+
|
|
55
|
+
if (!isFinite(pos)) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
var tr = state.tr.setSelection(NodeSelection.create(state.doc, pos));
|
|
60
|
+
dispatch(tr);
|
|
61
|
+
};
|
|
62
|
+
export function nonNullable(value) {
|
|
63
|
+
return value !== null && value !== undefined;
|
|
64
|
+
} // checks if the given position is within the ProseMirror document
|
|
65
|
+
|
|
66
|
+
export var isValidPosition = function isValidPosition(pos, state) {
|
|
67
|
+
if (pos >= 0 && pos <= state.doc.resolve(0).end()) {
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return false;
|
|
72
|
+
};
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -3,8 +3,13 @@ export { getExtensionLozengeData } from './macro';
|
|
|
3
3
|
export { default as browser } from './browser';
|
|
4
4
|
export { default as ErrorReporter } from './error-reporter';
|
|
5
5
|
export { isPastDate, timestampToIsoFormat, timestampToString, timestampToTaskContext, timestampToUTCDate, todayTimestampInUTC } from './date';
|
|
6
|
+
export { isElementInTableCell, isTextSelection, isLastItemMediaGroup, setNodeSelection, nonNullable, stepAddsOneOf, stepHasSlice, extractSliceFromStep, isValidPosition } from './editor-core-utils';
|
|
6
7
|
export { withImageLoader } from './imageLoader';
|
|
7
8
|
export { absoluteBreakoutWidth, calcBreakoutWidth, calcWideWidth, breakoutConsts } from './breakout';
|
|
9
|
+
export { findChangedNodesFromTransaction, validNode, validateNodes, isType, isParagraph, isText, isLinkMark, SelectedState, isNodeSelectedOrInRange, isSupportedInParent } from './nodes';
|
|
10
|
+
export { pluginFactory } from './plugin-state-factory';
|
|
11
|
+
export { getFragmentBackingArray, mapFragment, mapSlice, flatmap, mapChildren } from './slice';
|
|
12
|
+
export { walkUpTreeUntil, unwrap, removeNestedEmptyEls, containsClassName, closest, closestElement, parsePx, mapElem, maphElem } from './dom';
|
|
8
13
|
export { default as ADFTraversor } from './traversor';
|
|
9
14
|
export { analyticsEventKey, getAnalyticsAppearance, getAnalyticsEventSeverity, SEVERITY, getUnsupportedContentLevelData, UNSUPPORTED_CONTENT_LEVEL_SEVERITY, UNSUPPORTED_CONTENT_LEVEL_SEVERITY_THRESHOLD_DEFAULTS } from './analytics';
|
|
10
15
|
export { findAndTrackUnsupportedContentNodes } from './track-unsupported-content';
|
|
@@ -17,6 +22,7 @@ export { getExtensionRenderer } from './extension-handler';
|
|
|
17
22
|
export { hasMergedCell, calcTableColumnWidths, convertProsemirrorTableNodeToArrayOfRows } from './table';
|
|
18
23
|
export { createCompareNodes } from './compareNodes';
|
|
19
24
|
export { compose } from './compose';
|
|
25
|
+
export { isTextInput } from './is-text-input';
|
|
20
26
|
export { ZERO_WIDTH_SPACE } from './whitespace';
|
|
21
27
|
export { shouldForceTracking } from './should-force-tracking';
|
|
22
28
|
export { getModeFromTheme } from './getModeFromTheme';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
+
// TODO: remove from editor-core utils, re-export from editor-common
|
|
3
|
+
import { ReplaceStep } from 'prosemirror-transform';
|
|
4
|
+
export var isTextInput = function isTextInput(tr) {
|
|
5
|
+
var _tr$steps = _slicedToArray(tr.steps, 1),
|
|
6
|
+
step = _tr$steps[0];
|
|
7
|
+
|
|
8
|
+
if (!step || !(step instanceof ReplaceStep)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
var _ref = step,
|
|
13
|
+
content = _ref.slice.content,
|
|
14
|
+
from = _ref.from,
|
|
15
|
+
to = _ref.to;
|
|
16
|
+
var char = content.firstChild;
|
|
17
|
+
return from === to && content.childCount === 1 && !!char && !!char.text && char.text.length === 1;
|
|
18
|
+
};
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Finds all top level nodes affected by the transaction
|
|
3
|
+
* Uses from/to positions in transaction's steps to work out which nodes will
|
|
4
|
+
* be changed by the transaction
|
|
5
|
+
*/
|
|
6
|
+
export var findChangedNodesFromTransaction = function findChangedNodesFromTransaction(tr) {
|
|
7
|
+
var nodes = [];
|
|
8
|
+
var steps = tr.steps || [];
|
|
9
|
+
steps.forEach(function (step) {
|
|
10
|
+
var to = step.to,
|
|
11
|
+
from = step.from,
|
|
12
|
+
slice = step.slice;
|
|
13
|
+
var size = slice && slice.content ? slice.content.size : 0;
|
|
14
|
+
|
|
15
|
+
for (var i = from; i <= to + size; i++) {
|
|
16
|
+
if (i <= tr.doc.content.size) {
|
|
17
|
+
(function () {
|
|
18
|
+
var topLevelNode = tr.doc.resolve(i).node(1);
|
|
19
|
+
|
|
20
|
+
if (topLevelNode && !nodes.find(function (n) {
|
|
21
|
+
return n === topLevelNode;
|
|
22
|
+
})) {
|
|
23
|
+
nodes.push(topLevelNode);
|
|
24
|
+
}
|
|
25
|
+
})();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return nodes;
|
|
30
|
+
};
|
|
31
|
+
export var validNode = function validNode(node) {
|
|
32
|
+
try {
|
|
33
|
+
node.check(); // this will throw an error if the node is invalid
|
|
34
|
+
} catch (error) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return true;
|
|
39
|
+
};
|
|
40
|
+
/** Validates prosemirror nodes, and returns true only if all nodes are valid */
|
|
41
|
+
|
|
42
|
+
export var validateNodes = function validateNodes(nodes) {
|
|
43
|
+
return nodes.every(validNode);
|
|
44
|
+
};
|
|
45
|
+
export var isType = function isType(node, type) {
|
|
46
|
+
return type && node && node.type === type;
|
|
47
|
+
};
|
|
48
|
+
export var isParagraph = function isParagraph(node, schema) {
|
|
49
|
+
return isType(node, schema.nodes.paragraph);
|
|
50
|
+
};
|
|
51
|
+
export var isText = function isText(node, schema) {
|
|
52
|
+
return isType(node, schema.nodes.text);
|
|
53
|
+
};
|
|
54
|
+
export var isLinkMark = function isLinkMark(node, schema) {
|
|
55
|
+
return isType(node, schema.marks.link);
|
|
56
|
+
};
|
|
57
|
+
export var SelectedState;
|
|
58
|
+
/**
|
|
59
|
+
* Returns if the current selection from achor-head is selecting the node.
|
|
60
|
+
* If the node is not selected then null is returned.
|
|
61
|
+
* If the node is selected then an enum is returned that describes weather the node
|
|
62
|
+
* is fully selected by a range or if the "inside" of the node has been selected or clicked.
|
|
63
|
+
*/
|
|
64
|
+
|
|
65
|
+
(function (SelectedState) {
|
|
66
|
+
SelectedState[SelectedState["selectedInRange"] = 0] = "selectedInRange";
|
|
67
|
+
SelectedState[SelectedState["selectedInside"] = 1] = "selectedInside";
|
|
68
|
+
})(SelectedState || (SelectedState = {}));
|
|
69
|
+
|
|
70
|
+
export var isNodeSelectedOrInRange = function isNodeSelectedOrInRange(anchorPosition, headPosition, nodePosition, nodeSize) {
|
|
71
|
+
var rangeStart = Math.min(anchorPosition, headPosition);
|
|
72
|
+
var rangeEnd = Math.max(anchorPosition, headPosition);
|
|
73
|
+
var nodeStart = nodePosition;
|
|
74
|
+
var nodeEnd = nodePosition + nodeSize;
|
|
75
|
+
|
|
76
|
+
if (anchorPosition === headPosition) {
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (rangeStart <= nodeStart && nodeEnd < rangeEnd || rangeStart < nodeStart && nodeEnd <= rangeEnd) {
|
|
81
|
+
return SelectedState.selectedInRange;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
if (nodeStart <= anchorPosition && headPosition <= nodeEnd) {
|
|
85
|
+
return SelectedState.selectedInside;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return null;
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Checks if a particular node fragment is supported in the parent
|
|
92
|
+
* @param state EditorState
|
|
93
|
+
* @param fragment The fragment to be checked for
|
|
94
|
+
*/
|
|
95
|
+
|
|
96
|
+
export var isSupportedInParent = function isSupportedInParent(state, fragment, currentAppearance) {
|
|
97
|
+
var depth = currentAppearance === 'embed' || currentAppearance === 'block' ? undefined : -1;
|
|
98
|
+
var parent = state.selection.$from.node(depth);
|
|
99
|
+
return parent && parent.type.validContent(fragment);
|
|
100
|
+
};
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a ProseMirror plugin's state and handles UI updates.
|
|
3
|
+
*
|
|
4
|
+
* Here's a few things to keep in mind:
|
|
5
|
+
* - plugin's state is stored as a single object
|
|
6
|
+
* - `Reducer` specifies how plugin's state changes in response to commands
|
|
7
|
+
* - `Command` describes only what happen, but not how state changes
|
|
8
|
+
* - `mapping` could be used to map ProseMirror positions stored in plugin's state
|
|
9
|
+
*
|
|
10
|
+
* Example:
|
|
11
|
+
* const { createPluginState, createCommand, getPluginState } = pluginFactory(
|
|
12
|
+
* reducer,
|
|
13
|
+
* pluginKey
|
|
14
|
+
* );
|
|
15
|
+
*
|
|
16
|
+
* export const createPlugin = (dispatch: Dispatch, initialState) =>
|
|
17
|
+
* new SafePlugin({
|
|
18
|
+
* state: createPluginState(dispatch, initialState),
|
|
19
|
+
* key: pluginKey
|
|
20
|
+
* });
|
|
21
|
+
*
|
|
22
|
+
* Example of a reducer:
|
|
23
|
+
*
|
|
24
|
+
* export const reducer = (
|
|
25
|
+
* state: TablePluginState,
|
|
26
|
+
* action: TableAction,
|
|
27
|
+
* ): TablePluginState => {
|
|
28
|
+
* switch (action.type) {
|
|
29
|
+
* case 'TOGGLE_CONTEXTUAL_MENU':
|
|
30
|
+
* return {
|
|
31
|
+
* ...state,
|
|
32
|
+
* isContextualMenuOpen: !state.isContextualMenuOpen,
|
|
33
|
+
* };
|
|
34
|
+
* default:
|
|
35
|
+
* return state;
|
|
36
|
+
* }
|
|
37
|
+
* };
|
|
38
|
+
*
|
|
39
|
+
*
|
|
40
|
+
* Example of a command:
|
|
41
|
+
*
|
|
42
|
+
* export const toggleContextualMenu = createCommand({
|
|
43
|
+
* type: 'TOGGLE_CONTEXTUAL_MENU',
|
|
44
|
+
* }, tr => tr.setMeta('addToHistory', false));
|
|
45
|
+
*
|
|
46
|
+
*/
|
|
47
|
+
function isFunction(x) {
|
|
48
|
+
return typeof x === 'function';
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function pluginFactory(pluginKey, reducer) {
|
|
52
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
53
|
+
var mapping = options.mapping,
|
|
54
|
+
onDocChanged = options.onDocChanged,
|
|
55
|
+
onSelectionChanged = options.onSelectionChanged;
|
|
56
|
+
return {
|
|
57
|
+
createPluginState: function createPluginState(dispatch, initialState) {
|
|
58
|
+
return {
|
|
59
|
+
init: function init(_, state) {
|
|
60
|
+
return isFunction(initialState) ? initialState(state) : initialState;
|
|
61
|
+
},
|
|
62
|
+
apply: function apply(tr, _pluginState) {
|
|
63
|
+
var oldState = mapping ? mapping(tr, _pluginState) : _pluginState;
|
|
64
|
+
var newState = oldState;
|
|
65
|
+
var meta = tr.getMeta(pluginKey);
|
|
66
|
+
|
|
67
|
+
if (meta) {
|
|
68
|
+
newState = reducer(oldState, meta);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
if (onDocChanged && tr.docChanged) {
|
|
72
|
+
newState = onDocChanged(tr, newState);
|
|
73
|
+
} else if (onSelectionChanged && tr.selectionSet) {
|
|
74
|
+
newState = onSelectionChanged(tr, newState);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
if (newState !== oldState) {
|
|
78
|
+
dispatch(pluginKey, newState);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
return newState;
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
},
|
|
85
|
+
createCommand: function createCommand(action, transform) {
|
|
86
|
+
return function (state, dispatch) {
|
|
87
|
+
if (dispatch) {
|
|
88
|
+
var _tr = transform ? transform(state.tr, state) : state.tr;
|
|
89
|
+
|
|
90
|
+
var resolvedAction = isFunction(action) ? action(state) : action;
|
|
91
|
+
|
|
92
|
+
if (_tr && resolvedAction) {
|
|
93
|
+
dispatch(_tr.setMeta(pluginKey, resolvedAction));
|
|
94
|
+
} else {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
return true;
|
|
100
|
+
};
|
|
101
|
+
},
|
|
102
|
+
getPluginState: function getPluginState(state) {
|
|
103
|
+
return pluginKey.getState(state);
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
+
import { Fragment, Slice } from 'prosemirror-model';
|
|
3
|
+
/**
|
|
4
|
+
* A helper to get the underlying array of a fragment.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export function getFragmentBackingArray(fragment) {
|
|
8
|
+
return fragment.content;
|
|
9
|
+
}
|
|
10
|
+
export function mapFragment(content, callback) {
|
|
11
|
+
var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
12
|
+
var children = [];
|
|
13
|
+
|
|
14
|
+
for (var i = 0, size = content.childCount; i < size; i++) {
|
|
15
|
+
var _node = content.child(i);
|
|
16
|
+
|
|
17
|
+
var transformed = _node.isLeaf ? callback(_node, parent, i) : callback(_node.copy(mapFragment(_node.content, callback, _node)), parent, i);
|
|
18
|
+
|
|
19
|
+
if (transformed) {
|
|
20
|
+
if (transformed instanceof Fragment) {
|
|
21
|
+
children.push.apply(children, _toConsumableArray(getFragmentBackingArray(transformed)));
|
|
22
|
+
} else if (Array.isArray(transformed)) {
|
|
23
|
+
children.push.apply(children, _toConsumableArray(transformed));
|
|
24
|
+
} else {
|
|
25
|
+
children.push(transformed);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return Fragment.fromArray(children);
|
|
31
|
+
}
|
|
32
|
+
export function mapSlice(slice, callback) {
|
|
33
|
+
var fragment = mapFragment(slice.content, callback);
|
|
34
|
+
return new Slice(fragment, slice.openStart, slice.openEnd);
|
|
35
|
+
}
|
|
36
|
+
export function flatmap(fragment, callback) {
|
|
37
|
+
var fragmentContent = [];
|
|
38
|
+
|
|
39
|
+
for (var i = 0; i < fragment.childCount; i++) {
|
|
40
|
+
var child = callback(fragment.child(i), i, fragment);
|
|
41
|
+
|
|
42
|
+
if (Array.isArray(child)) {
|
|
43
|
+
fragmentContent.push.apply(fragmentContent, _toConsumableArray(child));
|
|
44
|
+
} else {
|
|
45
|
+
fragmentContent.push(child);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return Fragment.fromArray(fragmentContent);
|
|
50
|
+
}
|
|
51
|
+
export function mapChildren(node, callback) {
|
|
52
|
+
var array = [];
|
|
53
|
+
|
|
54
|
+
for (var i = 0; i < node.childCount; i++) {
|
|
55
|
+
array.push(callback(node.child(i), i, node instanceof Fragment ? node : node.content));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return array;
|
|
59
|
+
}
|
package/dist/esm/version.json
CHANGED