@worktile/theia 18.0.16 → 19.0.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/constants/node-types.d.ts +1 -0
- package/core/toolbar-item/base-toolbar-item.d.ts +2 -2
- package/fesm2022/worktile-theia.mjs +262 -281
- package/fesm2022/worktile-theia.mjs.map +1 -1
- package/package.json +4 -6
- package/plugins/code/code.component.scss +1 -2
- package/plugins/image/image.component.d.ts +1 -1
- package/plugins/mention/suggestion.component.d.ts +1 -1
- package/esm2022/components/action/prevent-default.mjs +0 -21
- package/esm2022/components/column-resize/column-resize-notifier.mjs +0 -31
- package/esm2022/components/column-resize/column-resize.directive.mjs +0 -124
- package/esm2022/components/column-resize/event-dispatcher.mjs +0 -56
- package/esm2022/components/column-resize/overlay-handle.component.mjs +0 -144
- package/esm2022/components/column-resize/resize-ref.mjs +0 -26
- package/esm2022/components/column-resize/resizing.store.mjs +0 -92
- package/esm2022/components/column-resize/selectors.mjs +0 -4
- package/esm2022/components/contextmenu/contextmenu.component.mjs +0 -99
- package/esm2022/components/conversion-hint/conversion-hint.component.mjs +0 -56
- package/esm2022/components/element/element.component.mjs +0 -23
- package/esm2022/components/index.mjs +0 -24
- package/esm2022/components/inline-toolbar/inline-toolbar.component.mjs +0 -131
- package/esm2022/components/listbox/listbox.mjs +0 -380
- package/esm2022/components/listbox/listbox.type.mjs +0 -5
- package/esm2022/components/plugin-menu/plugin-menu.component.mjs +0 -272
- package/esm2022/components/table-select/table-select.component.mjs +0 -49
- package/esm2022/components/template/template.component.mjs +0 -62
- package/esm2022/components/text/text.component.mjs +0 -57
- package/esm2022/components/toolbar/toolbar.component.mjs +0 -262
- package/esm2022/components/toolbar-dropdown/toolbar-dropdown.component.mjs +0 -137
- package/esm2022/components/toolbar-group/toolbar-group.component.mjs +0 -125
- package/esm2022/components/toolbar-item/toolbar-item.component.mjs +0 -80
- package/esm2022/constants/auto-format-rules.mjs +0 -167
- package/esm2022/constants/code.mjs +0 -85
- package/esm2022/constants/color-select.mjs +0 -3
- package/esm2022/constants/default.mjs +0 -11
- package/esm2022/constants/error.mjs +0 -7
- package/esm2022/constants/index.mjs +0 -9
- package/esm2022/constants/node-types.mjs +0 -136
- package/esm2022/constants/plugin-menu.mjs +0 -311
- package/esm2022/constants/selector.mjs +0 -3
- package/esm2022/constants/toolbar.mjs +0 -53
- package/esm2022/core/create-plugin.mjs +0 -5
- package/esm2022/core/create-toolbar.mjs +0 -55
- package/esm2022/core/index.mjs +0 -6
- package/esm2022/core/toolbar-item/base-toolbar-item.mjs +0 -95
- package/esm2022/core/utils/combine-plugins.mjs +0 -10
- package/esm2022/core/utils/flatten-deep-plugins.mjs +0 -19
- package/esm2022/core/utils/get-plugin-options.mjs +0 -3
- package/esm2022/core/utils/get-plugin.mjs +0 -2
- package/esm2022/core/utils/get-plugins.mjs +0 -4
- package/esm2022/core/utils/index.mjs +0 -12
- package/esm2022/core/utils/merge-array.mjs +0 -18
- package/esm2022/core/utils/merge-deep-plugins.mjs +0 -14
- package/esm2022/core/utils/merge-options.mjs +0 -25
- package/esm2022/core/utils/nested-structure-by-key.mjs +0 -11
- package/esm2022/core/utils/plugin-menu.mjs +0 -63
- package/esm2022/core/utils/plugins-by-key.mjs +0 -10
- package/esm2022/core/with-theia.mjs +0 -25
- package/esm2022/custom-types.mjs +0 -2
- package/esm2022/editor.component.mjs +0 -488
- package/esm2022/editor.module.mjs +0 -18
- package/esm2022/i18n/i18n.mjs +0 -10
- package/esm2022/i18n/i18n.service.mjs +0 -46
- package/esm2022/i18n/i18n.token.mjs +0 -9
- package/esm2022/i18n/index.mjs +0 -10
- package/esm2022/i18n/locales/de-de.mjs +0 -102
- package/esm2022/i18n/locales/en-us.mjs +0 -102
- package/esm2022/i18n/locales/ja-jp.mjs +0 -102
- package/esm2022/i18n/locales/ru-ru.mjs +0 -102
- package/esm2022/i18n/locales/zh-hans.mjs +0 -102
- package/esm2022/i18n/locales/zh-hant.mjs +0 -102
- package/esm2022/interfaces/auto-format.mjs +0 -2
- package/esm2022/interfaces/editor.mjs +0 -26
- package/esm2022/interfaces/element.mjs +0 -2
- package/esm2022/interfaces/image.mjs +0 -3
- package/esm2022/interfaces/index.mjs +0 -11
- package/esm2022/interfaces/plugins/index.mjs +0 -6
- package/esm2022/interfaces/plugins/no-infer.mjs +0 -2
- package/esm2022/interfaces/plugins/plugin-key.mjs +0 -42
- package/esm2022/interfaces/plugins/plugin-menu.mjs +0 -19
- package/esm2022/interfaces/plugins/plugins.mjs +0 -2
- package/esm2022/interfaces/plugins/with-override.mjs +0 -2
- package/esm2022/interfaces/preset.mjs +0 -3
- package/esm2022/interfaces/reset-block-type-plugin-options.mjs +0 -2
- package/esm2022/interfaces/toolbar.mjs +0 -12
- package/esm2022/interfaces/upload.mjs +0 -2
- package/esm2022/interfaces/utility/index.mjs +0 -4
- package/esm2022/interfaces/utility/nested-structure-by-key.mjs +0 -2
- package/esm2022/interfaces/utility/override-by-key.mjs +0 -2
- package/esm2022/interfaces/utility/types.mjs +0 -2
- package/esm2022/interfaces/valid-children-types.mjs +0 -36
- package/esm2022/interfaces/view-base.mjs +0 -38
- package/esm2022/pipes.mjs +0 -61
- package/esm2022/plugins/align/align.editor.mjs +0 -41
- package/esm2022/plugins/align/align.plugin.mjs +0 -64
- package/esm2022/plugins/autoformat/autoformat.plugin.mjs +0 -109
- package/esm2022/plugins/autoformat/transforms/auto-format-block.mjs +0 -14
- package/esm2022/plugins/autoformat/transforms/auto-format-inline.mjs +0 -78
- package/esm2022/plugins/blockquote/blockquote.component.mjs +0 -16
- package/esm2022/plugins/blockquote/blockquote.editor.mjs +0 -20
- package/esm2022/plugins/blockquote/blockquote.plugin.mjs +0 -84
- package/esm2022/plugins/code/code.component.mjs +0 -255
- package/esm2022/plugins/code/code.editor.mjs +0 -59
- package/esm2022/plugins/code/code.plugin.mjs +0 -67
- package/esm2022/plugins/color/color.editor.mjs +0 -27
- package/esm2022/plugins/color/color.plugin.mjs +0 -32
- package/esm2022/plugins/color/toolbar-item.component.mjs +0 -99
- package/esm2022/plugins/common/block-card.plugin.mjs +0 -330
- package/esm2022/plugins/common/common.plugin.mjs +0 -49
- package/esm2022/plugins/common/get-fragment.plugin.mjs +0 -24
- package/esm2022/plugins/common/history.plugin.mjs +0 -31
- package/esm2022/plugins/common/insert-data-by-invalid-type.mjs +0 -23
- package/esm2022/plugins/common/move-selection.plugin.mjs +0 -105
- package/esm2022/plugins/common/remove-empty.plugin.mjs +0 -61
- package/esm2022/plugins/common/remove-void.plugin.mjs +0 -60
- package/esm2022/plugins/common/reset-type.plugin.mjs +0 -35
- package/esm2022/plugins/deserialize/deserialize-html.plugin.mjs +0 -61
- package/esm2022/plugins/deserialize/deserialize-md.plugin.mjs +0 -142
- package/esm2022/plugins/font-size/font-size.editor.mjs +0 -98
- package/esm2022/plugins/heading/heading.editor.mjs +0 -54
- package/esm2022/plugins/heading/heading.plugin.mjs +0 -136
- package/esm2022/plugins/hr/hr.component.mjs +0 -37
- package/esm2022/plugins/hr/hr.editor.mjs +0 -16
- package/esm2022/plugins/hr/hr.plugin.mjs +0 -56
- package/esm2022/plugins/image/image.component.mjs +0 -474
- package/esm2022/plugins/image/image.editor.mjs +0 -116
- package/esm2022/plugins/image/image.plugin.mjs +0 -90
- package/esm2022/plugins/indent/indent.editor.mjs +0 -78
- package/esm2022/plugins/indent/indent.plugin.mjs +0 -59
- package/esm2022/plugins/indent/on-keydown-indent.mjs +0 -59
- package/esm2022/plugins/index.mjs +0 -73
- package/esm2022/plugins/inline-code/inline-code.component.mjs +0 -28
- package/esm2022/plugins/inline-code/inline-code.editor.mjs +0 -49
- package/esm2022/plugins/inline-code/inline-code.plugin.mjs +0 -67
- package/esm2022/plugins/link/edit/link-edit.component.mjs +0 -104
- package/esm2022/plugins/link/hover/link-hover.component.mjs +0 -38
- package/esm2022/plugins/link/link.component.mjs +0 -170
- package/esm2022/plugins/link/link.editor.mjs +0 -87
- package/esm2022/plugins/link/link.plugin.mjs +0 -89
- package/esm2022/plugins/link/link.types.mjs +0 -12
- package/esm2022/plugins/list/components/bulleted-list.component.mjs +0 -28
- package/esm2022/plugins/list/components/list-item.component.mjs +0 -88
- package/esm2022/plugins/list/components/numbered-list.component.mjs +0 -37
- package/esm2022/plugins/list/list.editor.mjs +0 -128
- package/esm2022/plugins/list/list.plugin.mjs +0 -302
- package/esm2022/plugins/list/normalizers/get-list-normalizer.mjs +0 -39
- package/esm2022/plugins/list/normalizers/normalize-list-item.mjs +0 -18
- package/esm2022/plugins/list/normalizers/normalize-no.mjs +0 -43
- package/esm2022/plugins/list/on-key-down-list.mjs +0 -33
- package/esm2022/plugins/list/queries/get-list-item-entry.mjs +0 -28
- package/esm2022/plugins/list/queries/get-list-item-sublist.mjs +0 -12
- package/esm2022/plugins/list/queries/get-list-types.mjs +0 -5
- package/esm2022/plugins/list/queries/get-start-list-item.mjs +0 -27
- package/esm2022/plugins/list/queries/has-list-in-list-item.mjs +0 -27
- package/esm2022/plugins/list/queries/is-in-list.mjs +0 -6
- package/esm2022/plugins/list/queries/is-list-nested.mjs +0 -10
- package/esm2022/plugins/list/queries/is-list.mjs +0 -5
- package/esm2022/plugins/list/queries/is-node-type-list.mjs +0 -5
- package/esm2022/plugins/list/queries/is-selection-at-list-item-start.mjs +0 -13
- package/esm2022/plugins/list/queries/is-selection-in-same-list-item.mjs +0 -17
- package/esm2022/plugins/list/queries/is-single-list-item.mjs +0 -9
- package/esm2022/plugins/list/transforms/insert-list-data.mjs +0 -72
- package/esm2022/plugins/list/transforms/insert-list-item.mjs +0 -73
- package/esm2022/plugins/list/transforms/move-list-item-down.mjs +0 -41
- package/esm2022/plugins/list/transforms/move-list-item-sublist-items-to-list-item-sublist.mjs +0 -43
- package/esm2022/plugins/list/transforms/move-list-item-sublist-items-to-list.mjs +0 -30
- package/esm2022/plugins/list/transforms/move-list-item-up.mjs +0 -78
- package/esm2022/plugins/list/transforms/unwrap-list.mjs +0 -10
- package/esm2022/plugins/list/types.mjs +0 -2
- package/esm2022/plugins/mark/mark.editor.mjs +0 -28
- package/esm2022/plugins/mark/mark.plugin.mjs +0 -105
- package/esm2022/plugins/mention/index.mjs +0 -5
- package/esm2022/plugins/mention/mention.editor.mjs +0 -179
- package/esm2022/plugins/mention/mention.plugin.mjs +0 -92
- package/esm2022/plugins/mention/mention.type.mjs +0 -2
- package/esm2022/plugins/mention/suggestion.component.mjs +0 -22
- package/esm2022/plugins/node-id/node-id.plugin.mjs +0 -78
- package/esm2022/plugins/normalizers/insert-paragraph-nodes.mjs +0 -28
- package/esm2022/plugins/normalizers/remove-empty-nodes.mjs +0 -18
- package/esm2022/plugins/normalizers/trailing-node.plugin.mjs +0 -33
- package/esm2022/plugins/paint-format/paint-format.editor.mjs +0 -126
- package/esm2022/plugins/public-api.mjs +0 -20
- package/esm2022/plugins/quick-insert/components/quick-insert.component.mjs +0 -126
- package/esm2022/plugins/quick-insert/index.mjs +0 -4
- package/esm2022/plugins/quick-insert/quick-insert.editor.mjs +0 -70
- package/esm2022/plugins/quick-insert/quick-insert.plugin.mjs +0 -109
- package/esm2022/plugins/soft-break/soft-break.plugin.mjs +0 -36
- package/esm2022/plugins/soft-break/soft-break.types.mjs +0 -2
- package/esm2022/plugins/table/components/insert-mark/insert-mark.component.mjs +0 -132
- package/esm2022/plugins/table/components/row/row.component.mjs +0 -93
- package/esm2022/plugins/table/components/table.component.mjs +0 -887
- package/esm2022/plugins/table/components/td/td.component.mjs +0 -610
- package/esm2022/plugins/table/components/toolbar/table-options.component.mjs +0 -102
- package/esm2022/plugins/table/components/toolbar/table-toolbar.component.mjs +0 -179
- package/esm2022/plugins/table/table.editor.mjs +0 -301
- package/esm2022/plugins/table/table.pipe.mjs +0 -66
- package/esm2022/plugins/table/table.plugin.mjs +0 -556
- package/esm2022/plugins/table/table.service.mjs +0 -122
- package/esm2022/plugins/table/table.store.mjs +0 -417
- package/esm2022/plugins/table/table.types.mjs +0 -68
- package/esm2022/plugins/table/toolbar-item.component.mjs +0 -95
- package/esm2022/plugins/table/transforms/clear-cell.mjs +0 -14
- package/esm2022/plugins/table/transforms/clear-table-node.mjs +0 -27
- package/esm2022/plugins/table/transforms/index.mjs +0 -8
- package/esm2022/plugins/table/transforms/insert-column.mjs +0 -69
- package/esm2022/plugins/table/transforms/insert-row.mjs +0 -50
- package/esm2022/plugins/table/transforms/insert-table.mjs +0 -15
- package/esm2022/plugins/table/transforms/move-selection-from-cell.mjs +0 -91
- package/esm2022/plugins/table/transforms/remove-column.mjs +0 -51
- package/esm2022/plugins/table/transforms/remove-row.mjs +0 -48
- package/esm2022/plugins/table/transforms/remove-table.mjs +0 -49
- package/esm2022/plugins/table/utils/add-columns.mjs +0 -38
- package/esm2022/plugins/table/utils/calc-anchor-position.mjs +0 -26
- package/esm2022/plugins/table/utils/calc-span.mjs +0 -73
- package/esm2022/plugins/table/utils/calculate-table.mjs +0 -116
- package/esm2022/plugins/table/utils/cell-position.mjs +0 -57
- package/esm2022/plugins/table/utils/create-cell.mjs +0 -19
- package/esm2022/plugins/table/utils/create-row.mjs +0 -12
- package/esm2022/plugins/table/utils/create-table-position.mjs +0 -10
- package/esm2022/plugins/table/utils/create-table.mjs +0 -15
- package/esm2022/plugins/table/utils/get-grid-columns.mjs +0 -79
- package/esm2022/plugins/table/utils/get-min-max-cell-index.mjs +0 -69
- package/esm2022/plugins/table/utils/get-next-cell.mjs +0 -44
- package/esm2022/plugins/table/utils/get-select-cell-node.mjs +0 -16
- package/esm2022/plugins/table/utils/handle-cell.mjs +0 -25
- package/esm2022/plugins/table/utils/index.mjs +0 -16
- package/esm2022/plugins/table/utils/is-header-row.mjs +0 -15
- package/esm2022/plugins/table/utils/is-legal-table.mjs +0 -26
- package/esm2022/plugins/table/utils/is-range-in-table.mjs +0 -16
- package/esm2022/plugins/table/utils/is-selection-in-table.mjs +0 -51
- package/esm2022/plugins/table/utils/is-virtual-key.mjs +0 -13
- package/esm2022/plugins/table/utils/merge-cell.mjs +0 -110
- package/esm2022/plugins/table/utils/next-path.mjs +0 -5
- package/esm2022/plugins/table/utils/normalize-table.mjs +0 -31
- package/esm2022/plugins/table/utils/remove-columns.mjs +0 -23
- package/esm2022/plugins/table/utils/remove-row-column.mjs +0 -45
- package/esm2022/plugins/table/utils/set-menu-cell-invisibility.mjs +0 -45
- package/esm2022/plugins/table/utils/split-cell.mjs +0 -29
- package/esm2022/plugins/table/utils/table-entry.mjs +0 -21
- package/esm2022/plugins/table/utils/table-position.mjs +0 -251
- package/esm2022/plugins/table/utils/table-viewport.mjs +0 -41
- package/esm2022/plugins/todo-item/todo-item.component.mjs +0 -65
- package/esm2022/plugins/todo-item/todo-item.editor.mjs +0 -32
- package/esm2022/plugins/todo-item/todo-item.plugin.mjs +0 -93
- package/esm2022/plugins/vertical-align/toolbar-item.component.mjs +0 -95
- package/esm2022/plugins/vertical-align/vertical-align.editor.mjs +0 -59
- package/esm2022/public-api.mjs +0 -22
- package/esm2022/queries/anchor-block-entry.mjs +0 -13
- package/esm2022/queries/anchor-block.mjs +0 -6
- package/esm2022/queries/anchor-inline-entry.mjs +0 -10
- package/esm2022/queries/find-descendant.mjs +0 -47
- package/esm2022/queries/find-node.mjs +0 -45
- package/esm2022/queries/find-path.mjs +0 -28
- package/esm2022/queries/get-above-by-type.mjs +0 -14
- package/esm2022/queries/get-above.mjs +0 -9
- package/esm2022/queries/get-anchor-block-entry.mjs +0 -8
- package/esm2022/queries/get-block-above.mjs +0 -10
- package/esm2022/queries/get-block-card-above.mjs +0 -10
- package/esm2022/queries/get-block-card-cursor.mjs +0 -9
- package/esm2022/queries/get-container-blocks.mjs +0 -12
- package/esm2022/queries/get-directly-parent.mjs +0 -12
- package/esm2022/queries/get-insert-elements-path.mjs +0 -46
- package/esm2022/queries/get-last-child-path.mjs +0 -9
- package/esm2022/queries/get-last-node.mjs +0 -17
- package/esm2022/queries/get-next-sibling-nodes.mjs +0 -17
- package/esm2022/queries/get-node.mjs +0 -10
- package/esm2022/queries/get-nodes-by-type.mjs +0 -15
- package/esm2022/queries/get-nodes.mjs +0 -7
- package/esm2022/queries/get-parent.mjs +0 -12
- package/esm2022/queries/get-plain-text.mjs +0 -16
- package/esm2022/queries/get-plugin-by-toolbar.mjs +0 -13
- package/esm2022/queries/get-point-before.mjs +0 -62
- package/esm2022/queries/get-point-from-location.mjs +0 -15
- package/esm2022/queries/get-previous-path.mjs +0 -9
- package/esm2022/queries/get-rang-from-block-start.mjs +0 -16
- package/esm2022/queries/get-range-before.mjs +0 -17
- package/esm2022/queries/get-selection-marks.mjs +0 -18
- package/esm2022/queries/get-selection-nodes-by-type.mjs +0 -30
- package/esm2022/queries/get-text.mjs +0 -9
- package/esm2022/queries/get-toolbar-disabled.mjs +0 -13
- package/esm2022/queries/index.mjs +0 -62
- package/esm2022/queries/is-across-blocks.mjs +0 -7
- package/esm2022/queries/is-ancestor-empty.mjs +0 -6
- package/esm2022/queries/is-ancestor.mjs +0 -3
- package/esm2022/queries/is-block-above-empty.mjs +0 -11
- package/esm2022/queries/is-block-active.mjs +0 -8
- package/esm2022/queries/is-block-card-cursor.mjs +0 -16
- package/esm2022/queries/is-block-text-empty-after-selection.mjs +0 -31
- package/esm2022/queries/is-collapsed.mjs +0 -7
- package/esm2022/queries/is-contain-nested-type.mjs +0 -29
- package/esm2022/queries/is-container-type.mjs +0 -3
- package/esm2022/queries/is-descendant.mjs +0 -3
- package/esm2022/queries/is-empty-content-filter.mjs +0 -22
- package/esm2022/queries/is-empty-content.mjs +0 -15
- package/esm2022/queries/is-empty-paragraph-by-path.mjs +0 -7
- package/esm2022/queries/is-empty-paragraph.mjs +0 -28
- package/esm2022/queries/is-first-child.mjs +0 -5
- package/esm2022/queries/is-global-collapsed.mjs +0 -5
- package/esm2022/queries/is-include-types.mjs +0 -12
- package/esm2022/queries/is-node-type-in.mjs +0 -9
- package/esm2022/queries/is-node-type.mjs +0 -15
- package/esm2022/queries/is-paragraph.mjs +0 -9
- package/esm2022/queries/is-point-at-root.mjs +0 -2
- package/esm2022/queries/is-range-across-blocks.mjs +0 -22
- package/esm2022/queries/is-range-at-root.mjs +0 -3
- package/esm2022/queries/is-root-path.mjs +0 -2
- package/esm2022/queries/is-start.mjs +0 -6
- package/esm2022/queries/some-node.mjs +0 -9
- package/esm2022/services/context.service.mjs +0 -140
- package/esm2022/services/table-contextmenu.service.mjs +0 -288
- package/esm2022/services/toolbar.service.mjs +0 -47
- package/esm2022/shortcuts/index.mjs +0 -5
- package/esm2022/shortcuts/mark.mjs +0 -25
- package/esm2022/test/basic/basic.component.mjs +0 -61
- package/esm2022/test/faker/data-transfer-faker.mjs +0 -13
- package/esm2022/test/faker/tethys-icon-faker.mjs +0 -22
- package/esm2022/test/index.mjs +0 -7
- package/esm2022/test/utils/mock-plugins.mjs +0 -104
- package/esm2022/test/utils/preset-config.mjs +0 -17
- package/esm2022/test/utils/with-plugin.mjs +0 -11
- package/esm2022/transforms/apply-deep-to-nodes.mjs +0 -22
- package/esm2022/transforms/clear-marks.mjs +0 -23
- package/esm2022/transforms/delete-element.mjs +0 -12
- package/esm2022/transforms/delete-node-by-type.mjs +0 -10
- package/esm2022/transforms/handle-continual-delete-backward.mjs +0 -18
- package/esm2022/transforms/handle-continual-insert-break.mjs +0 -20
- package/esm2022/transforms/index.mjs +0 -19
- package/esm2022/transforms/insert-elements.mjs +0 -55
- package/esm2022/transforms/insert-paragraph.mjs +0 -6
- package/esm2022/transforms/merge-deep-to-nodes.mjs +0 -9
- package/esm2022/transforms/move-children.mjs +0 -22
- package/esm2022/transforms/on-keydown-reset-block-type.mjs +0 -23
- package/esm2022/transforms/set-end-selection.mjs +0 -10
- package/esm2022/transforms/set-marks.mjs +0 -9
- package/esm2022/transforms/set-node-by-type.mjs +0 -10
- package/esm2022/transforms/set-node.mjs +0 -6
- package/esm2022/transforms/un-hang-range.mjs +0 -11
- package/esm2022/transforms/un-wrap.mjs +0 -12
- package/esm2022/transforms/unwrap-nodes-by-type.mjs +0 -14
- package/esm2022/utils/auto-focus.mjs +0 -24
- package/esm2022/utils/blob.mjs +0 -16
- package/esm2022/utils/cast-array.mjs +0 -7
- package/esm2022/utils/color-picker.mjs +0 -15
- package/esm2022/utils/common.mjs +0 -11
- package/esm2022/utils/copy-node.mjs +0 -38
- package/esm2022/utils/create-empty-paragraph.mjs +0 -14
- package/esm2022/utils/data-transform.mjs +0 -48
- package/esm2022/utils/dom.mjs +0 -56
- package/esm2022/utils/editor-uuid.mjs +0 -8
- package/esm2022/utils/fragment.mjs +0 -82
- package/esm2022/utils/get-editable-element-height.mjs +0 -6
- package/esm2022/utils/get-mode.mjs +0 -14
- package/esm2022/utils/get-toolbar-class.mjs +0 -6
- package/esm2022/utils/id-creator.mjs +0 -11
- package/esm2022/utils/index.mjs +0 -23
- package/esm2022/utils/insert-data-by-invalid-type.mjs +0 -70
- package/esm2022/utils/is-clean-empty-paragraph.mjs +0 -37
- package/esm2022/utils/is-inline.mjs +0 -9
- package/esm2022/utils/lodash.mjs +0 -3
- package/esm2022/utils/match.mjs +0 -32
- package/esm2022/utils/merge-element-options.mjs +0 -19
- package/esm2022/utils/normalize.mjs +0 -61
- package/esm2022/utils/refocus.mjs +0 -47
- package/esm2022/utils/scrolling.mjs +0 -43
- package/esm2022/utils/update-popover-position.mjs +0 -26
- package/esm2022/utils/weak-maps.mjs +0 -9
- package/esm2022/worktile-theia.mjs +0 -5
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Editor } from 'slate';
|
|
2
|
-
import { FAKE_LEFT_BLOCK_CARD_OFFSET, FAKE_RIGHT_BLOCK_CARD_OFFSET } from 'slate-angular';
|
|
3
|
-
export const isBlockCardCursor = (editor, at) => {
|
|
4
|
-
if (at) {
|
|
5
|
-
const point = at && Editor.point(editor, at);
|
|
6
|
-
return point.offset < 0;
|
|
7
|
-
}
|
|
8
|
-
return editor.selection.anchor.offset < 0;
|
|
9
|
-
};
|
|
10
|
-
export const isBlockCardLeftCursor = (selection) => {
|
|
11
|
-
return selection?.anchor?.offset === FAKE_LEFT_BLOCK_CARD_OFFSET && selection?.focus?.offset === FAKE_LEFT_BLOCK_CARD_OFFSET;
|
|
12
|
-
};
|
|
13
|
-
export const isBlockCardRightCursor = (selection) => {
|
|
14
|
-
return selection?.anchor?.offset === FAKE_RIGHT_BLOCK_CARD_OFFSET && selection?.focus?.offset === FAKE_RIGHT_BLOCK_CARD_OFFSET;
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtYmxvY2stY2FyZC1jdXJzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1ibG9jay1jYXJkLWN1cnNvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFtQixNQUFNLE9BQU8sQ0FBQztBQUNoRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsRUFBYSxFQUFFLEVBQUU7SUFDL0QsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUNMLE1BQU0sS0FBSyxHQUFHLEVBQUUsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM3QyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxTQUFnQixFQUFFLEVBQUU7SUFDdEQsT0FBTyxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sS0FBSywyQkFBMkIsSUFBSSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sS0FBSywyQkFBMkIsQ0FBQztBQUNqSSxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLFNBQWdCLEVBQUUsRUFBRTtJQUN2RCxPQUFPLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxLQUFLLDRCQUE0QixJQUFJLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxLQUFLLDRCQUE0QixDQUFDO0FBQ25JLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgTG9jYXRpb24sIFJhbmdlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRkFLRV9MRUZUX0JMT0NLX0NBUkRfT0ZGU0VULCBGQUtFX1JJR0hUX0JMT0NLX0NBUkRfT0ZGU0VUIH0gZnJvbSAnc2xhdGUtYW5ndWxhcic7XG5cbmV4cG9ydCBjb25zdCBpc0Jsb2NrQ2FyZEN1cnNvciA9IChlZGl0b3I6IEVkaXRvciwgYXQ/OiBMb2NhdGlvbikgPT4ge1xuICAgIGlmIChhdCkge1xuICAgICAgICBjb25zdCBwb2ludCA9IGF0ICYmIEVkaXRvci5wb2ludChlZGl0b3IsIGF0KTtcbiAgICAgICAgcmV0dXJuIHBvaW50Lm9mZnNldCA8IDA7XG4gICAgfVxuICAgIHJldHVybiBlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5vZmZzZXQgPCAwO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzQmxvY2tDYXJkTGVmdEN1cnNvciA9IChzZWxlY3Rpb246IFJhbmdlKSA9PiB7XG4gICAgcmV0dXJuIHNlbGVjdGlvbj8uYW5jaG9yPy5vZmZzZXQgPT09IEZBS0VfTEVGVF9CTE9DS19DQVJEX09GRlNFVCAmJiBzZWxlY3Rpb24/LmZvY3VzPy5vZmZzZXQgPT09IEZBS0VfTEVGVF9CTE9DS19DQVJEX09GRlNFVDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0Jsb2NrQ2FyZFJpZ2h0Q3Vyc29yID0gKHNlbGVjdGlvbjogUmFuZ2UpID0+IHtcbiAgICByZXR1cm4gc2VsZWN0aW9uPy5hbmNob3I/Lm9mZnNldCA9PT0gRkFLRV9SSUdIVF9CTE9DS19DQVJEX09GRlNFVCAmJiBzZWxlY3Rpb24/LmZvY3VzPy5vZmZzZXQgPT09IEZBS0VfUklHSFRfQkxPQ0tfQ0FSRF9PRkZTRVQ7XG59O1xuIl19
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Editor } from 'slate';
|
|
2
|
-
import { getBlockAbove } from './get-block-above';
|
|
3
|
-
import { getNextSiblingNodes } from './get-next-sibling-nodes';
|
|
4
|
-
/**
|
|
5
|
-
* Is there empty text after the selection.
|
|
6
|
-
* If there is no leaf after the selected leaf, return {@link Editor.isEnd}.
|
|
7
|
-
* Else, check if the next leaves are empty.
|
|
8
|
-
*/
|
|
9
|
-
export const isBlockTextEmptyAfterSelection = (editor) => {
|
|
10
|
-
if (!editor.selection) {
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
13
|
-
const blockAbove = getBlockAbove(editor);
|
|
14
|
-
const cursor = editor.selection.focus;
|
|
15
|
-
if (!Editor.isEnd(editor, cursor, Editor.parent(editor, editor.selection)[1])) {
|
|
16
|
-
return false;
|
|
17
|
-
}
|
|
18
|
-
const siblingNodes = getNextSiblingNodes(blockAbove, cursor.path);
|
|
19
|
-
if (siblingNodes.length) {
|
|
20
|
-
for (const siblingNode of siblingNodes) {
|
|
21
|
-
if (siblingNode.text) {
|
|
22
|
-
return false;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
return Editor.isEnd(editor, cursor, blockAbove[1]);
|
|
28
|
-
}
|
|
29
|
-
return true;
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtYmxvY2stdGV4dC1lbXB0eS1hZnRlci1zZWxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1ibG9jay10ZXh0LWVtcHR5LWFmdGVyLXNlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFRLE1BQU0sT0FBTyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUvRDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsRUFBRTtJQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3BCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFekMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFFdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVFLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxNQUFNLFlBQVksR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWxFLElBQUksWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLEtBQUssTUFBTSxXQUFXLElBQUksWUFBWSxFQUFFLENBQUM7WUFDckMsSUFBSyxXQUFvQixDQUFDLElBQUksRUFBRSxDQUFDO2dCQUM3QixPQUFPLEtBQUssQ0FBQztZQUNqQixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgVGV4dCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IGdldEJsb2NrQWJvdmUgfSBmcm9tICcuL2dldC1ibG9jay1hYm92ZSc7XG5pbXBvcnQgeyBnZXROZXh0U2libGluZ05vZGVzIH0gZnJvbSAnLi9nZXQtbmV4dC1zaWJsaW5nLW5vZGVzJztcblxuLyoqXG4gKiBJcyB0aGVyZSBlbXB0eSB0ZXh0IGFmdGVyIHRoZSBzZWxlY3Rpb24uXG4gKiBJZiB0aGVyZSBpcyBubyBsZWFmIGFmdGVyIHRoZSBzZWxlY3RlZCBsZWFmLCByZXR1cm4ge0BsaW5rIEVkaXRvci5pc0VuZH0uXG4gKiBFbHNlLCBjaGVjayBpZiB0aGUgbmV4dCBsZWF2ZXMgYXJlIGVtcHR5LlxuICovXG5leHBvcnQgY29uc3QgaXNCbG9ja1RleHRFbXB0eUFmdGVyU2VsZWN0aW9uID0gKGVkaXRvcjogRWRpdG9yKSA9PiB7XG4gICAgaWYgKCFlZGl0b3Iuc2VsZWN0aW9uKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBibG9ja0Fib3ZlID0gZ2V0QmxvY2tBYm92ZShlZGl0b3IpO1xuXG4gICAgY29uc3QgY3Vyc29yID0gZWRpdG9yLnNlbGVjdGlvbi5mb2N1cztcblxuICAgIGlmICghRWRpdG9yLmlzRW5kKGVkaXRvciwgY3Vyc29yLCBFZGl0b3IucGFyZW50KGVkaXRvciwgZWRpdG9yLnNlbGVjdGlvbilbMV0pKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBzaWJsaW5nTm9kZXMgPSBnZXROZXh0U2libGluZ05vZGVzKGJsb2NrQWJvdmUsIGN1cnNvci5wYXRoKTtcblxuICAgIGlmIChzaWJsaW5nTm9kZXMubGVuZ3RoKSB7XG4gICAgICAgIGZvciAoY29uc3Qgc2libGluZ05vZGUgb2Ygc2libGluZ05vZGVzKSB7XG4gICAgICAgICAgICBpZiAoKHNpYmxpbmdOb2RlIGFzIFRleHQpLnRleHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gRWRpdG9yLmlzRW5kKGVkaXRvciwgY3Vyc29yLCBibG9ja0Fib3ZlWzFdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbn07XG4iXX0=
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Range } from 'slate';
|
|
2
|
-
/**
|
|
3
|
-
* See {@link Range.isCollapsed}.
|
|
4
|
-
* Return false if `range` is not defined.
|
|
5
|
-
*/
|
|
6
|
-
export const isCollapsed = (range) => !!range && Range.isCollapsed(range);
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29sbGFwc2VkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvaXMtY29sbGFwc2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFOUI7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsS0FBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmFuZ2UgfSBmcm9tICdzbGF0ZSc7XG5cbi8qKlxuICogU2VlIHtAbGluayBSYW5nZS5pc0NvbGxhcHNlZH0uXG4gKiBSZXR1cm4gZmFsc2UgaWYgYHJhbmdlYCBpcyBub3QgZGVmaW5lZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGlzQ29sbGFwc2VkID0gKHJhbmdlPzogUmFuZ2UgfCBudWxsKSA9PiAhIXJhbmdlICYmIFJhbmdlLmlzQ29sbGFwc2VkKHJhbmdlKTtcbiJdfQ==
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Editor, Element } from 'slate';
|
|
2
|
-
import { getBlockAbove } from './get-block-above';
|
|
3
|
-
export const isContainNestedType = (editor, types) => {
|
|
4
|
-
if (!Array.isArray(types)) {
|
|
5
|
-
types = [types];
|
|
6
|
-
}
|
|
7
|
-
const [, anchorPath] = getBlockAbove(editor);
|
|
8
|
-
if (!anchorPath)
|
|
9
|
-
return false;
|
|
10
|
-
const parentEntry = Editor.above(editor, { match: n => Element.isElement(n) && types.includes(n.type) });
|
|
11
|
-
if (!parentEntry)
|
|
12
|
-
return false;
|
|
13
|
-
const [, parentPath] = parentEntry;
|
|
14
|
-
const entry = Editor.above(editor, {
|
|
15
|
-
at: parentPath,
|
|
16
|
-
match: n => {
|
|
17
|
-
if (!Element.isElement(n))
|
|
18
|
-
return false;
|
|
19
|
-
const isNestedStructure = editor.nestedStructureByKey[n.type];
|
|
20
|
-
if (isNestedStructure)
|
|
21
|
-
return true;
|
|
22
|
-
return types.includes(n.type);
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
if (entry)
|
|
26
|
-
return true;
|
|
27
|
-
return false;
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29udGFpbi1uZXN0ZWQtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLWNvbnRhaW4tbmVzdGVkLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDeEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsTUFBYyxFQUFFLEtBQXdCLEVBQUUsRUFBRTtJQUM1RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hCLEtBQUssR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxNQUFNLENBQUMsRUFBRSxVQUFVLENBQUMsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsSUFBSSxDQUFDLFVBQVU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUU5QixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pHLElBQUksQ0FBQyxXQUFXO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFL0IsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsV0FBVyxDQUFDO0lBQ25DLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQy9CLEVBQUUsRUFBRSxVQUFVO1FBQ2QsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUFFLE9BQU8sS0FBSyxDQUFDO1lBQ3hDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5RCxJQUFJLGlCQUFpQjtnQkFBRSxPQUFPLElBQUksQ0FBQztZQUNuQyxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUM7S0FDSixDQUFDLENBQUM7SUFDSCxJQUFJLEtBQUs7UUFBRSxPQUFPLElBQUksQ0FBQztJQUV2QixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBnZXRCbG9ja0Fib3ZlIH0gZnJvbSAnLi9nZXQtYmxvY2stYWJvdmUnO1xuXG5leHBvcnQgY29uc3QgaXNDb250YWluTmVzdGVkVHlwZSA9IChlZGl0b3I6IEVkaXRvciwgdHlwZXM6IHN0cmluZ1tdIHwgc3RyaW5nKSA9PiB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHR5cGVzKSkge1xuICAgICAgICB0eXBlcyA9IFt0eXBlc107XG4gICAgfVxuICAgIGNvbnN0IFssIGFuY2hvclBhdGhdID0gZ2V0QmxvY2tBYm92ZShlZGl0b3IpO1xuICAgIGlmICghYW5jaG9yUGF0aCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgcGFyZW50RW50cnkgPSBFZGl0b3IuYWJvdmUoZWRpdG9yLCB7IG1hdGNoOiBuID0+IEVsZW1lbnQuaXNFbGVtZW50KG4pICYmIHR5cGVzLmluY2x1ZGVzKG4udHlwZSkgfSk7XG4gICAgaWYgKCFwYXJlbnRFbnRyeSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgWywgcGFyZW50UGF0aF0gPSBwYXJlbnRFbnRyeTtcbiAgICBjb25zdCBlbnRyeSA9IEVkaXRvci5hYm92ZShlZGl0b3IsIHtcbiAgICAgICAgYXQ6IHBhcmVudFBhdGgsXG4gICAgICAgIG1hdGNoOiBuID0+IHtcbiAgICAgICAgICAgIGlmICghRWxlbWVudC5pc0VsZW1lbnQobikpIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IGlzTmVzdGVkU3RydWN0dXJlID0gZWRpdG9yLm5lc3RlZFN0cnVjdHVyZUJ5S2V5W24udHlwZV07XG4gICAgICAgICAgICBpZiAoaXNOZXN0ZWRTdHJ1Y3R1cmUpIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIHR5cGVzLmluY2x1ZGVzKG4udHlwZSk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoZW50cnkpIHJldHVybiB0cnVlO1xuXG4gICAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { Element } from 'slate';
|
|
2
|
-
export const isContainer = (editor, value) => Element.isElement(value) && editor.isContainer && editor.isContainer(value);
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29udGFpbmVyLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1jb250YWluZXItdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFVLE1BQU0sT0FBTyxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQWMsRUFBRSxLQUFjLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudCwgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuXG5leHBvcnQgY29uc3QgaXNDb250YWluZXIgPSAoZWRpdG9yOiBFZGl0b3IsIHZhbHVlOiBFbGVtZW50KSA9PiBFbGVtZW50LmlzRWxlbWVudCh2YWx1ZSkgJiYgZWRpdG9yLmlzQ29udGFpbmVyICYmIGVkaXRvci5pc0NvbnRhaW5lcih2YWx1ZSk7XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { Element, Text } from 'slate';
|
|
2
|
-
export const isDescendant = (node) => Element.isElement(node) || Text.isText(node);
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZGVzY2VuZGFudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLWRlc2NlbmRhbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFbEQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBUyxFQUFzQixFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzY2VuZGFudCwgRWxlbWVudCwgVGV4dCB9IGZyb20gJ3NsYXRlJztcblxuZXhwb3J0IGNvbnN0IGlzRGVzY2VuZGFudCA9IChub2RlOiBhbnkpOiBub2RlIGlzIERlc2NlbmRhbnQgPT4gRWxlbWVudC5pc0VsZW1lbnQobm9kZSkgfHwgVGV4dC5pc1RleHQobm9kZSk7XG4iXX0=
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { Node } from 'slate';
|
|
2
|
-
import { ElementKinds } from '../constants';
|
|
3
|
-
export const isEmptyContentByFilter = (editor, rules) => {
|
|
4
|
-
if (!editor?.children || editor?.children.length < 1) {
|
|
5
|
-
return true;
|
|
6
|
-
}
|
|
7
|
-
const defaultTypes = [ElementKinds.code, ElementKinds.table, ElementKinds.image];
|
|
8
|
-
const containTypes = rules?.containTypes ? [...defaultTypes, ...rules.containTypes] : defaultTypes;
|
|
9
|
-
const textSpace = rules?.textSpace !== undefined ? rules.textSpace : true;
|
|
10
|
-
const filterNodes = Array.from(Node.elements(editor));
|
|
11
|
-
if (filterNodes.some(n => n[0]?.type && containTypes.includes(n[0].type))) {
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
|
-
const nodesEntry = Node.texts(editor);
|
|
15
|
-
const nodes = Array.from(nodesEntry);
|
|
16
|
-
const allText = nodes.reduce((total, text) => (total += text[0].text), '');
|
|
17
|
-
const filterText = textSpace ? allText.replace(/\s+/g, '') : allText;
|
|
18
|
-
const textLength = filterText?.length ?? 0;
|
|
19
|
-
const isEmptyText = textLength <= 0;
|
|
20
|
-
return isEmptyText;
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZW1wdHktY29udGVudC1maWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1lbXB0eS1jb250ZW50LWZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsSUFBSSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFTNUMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsS0FBa0IsRUFBRSxFQUFFO0lBQ3pFLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxJQUFJLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ25ELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLFlBQVksR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakYsTUFBTSxZQUFZLEdBQUcsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksRUFBRSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ25HLE1BQU0sU0FBUyxHQUFHLEtBQUssRUFBRSxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFdEQsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDeEUsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzNFLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNyRSxNQUFNLFVBQVUsR0FBRyxVQUFVLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztJQUMzQyxNQUFNLFdBQVcsR0FBRyxVQUFVLElBQUksQ0FBQyxDQUFDO0lBRXBDLE9BQU8sV0FBVyxDQUFDO0FBQ3ZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgTm9kZSB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEVsZW1lbnRLaW5kcyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyUnVsZSB7XG4gICAgLy8g566X5a6e6ZmF5YaF5a6555qE57G75Z6LXG4gICAgY29udGFpblR5cGVzPzogc3RyaW5nW107XG4gICAgLy8g5piv5ZCm5o6S6Zmk5paH5pys55qE56m65qC8XG4gICAgdGV4dFNwYWNlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IGlzRW1wdHlDb250ZW50QnlGaWx0ZXIgPSAoZWRpdG9yOiBFZGl0b3IsIHJ1bGVzPzogRmlsdGVyUnVsZSkgPT4ge1xuICAgIGlmICghZWRpdG9yPy5jaGlsZHJlbiB8fCBlZGl0b3I/LmNoaWxkcmVuLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNvbnN0IGRlZmF1bHRUeXBlcyA9IFtFbGVtZW50S2luZHMuY29kZSwgRWxlbWVudEtpbmRzLnRhYmxlLCBFbGVtZW50S2luZHMuaW1hZ2VdO1xuICAgIGNvbnN0IGNvbnRhaW5UeXBlcyA9IHJ1bGVzPy5jb250YWluVHlwZXMgPyBbLi4uZGVmYXVsdFR5cGVzLCAuLi5ydWxlcy5jb250YWluVHlwZXNdIDogZGVmYXVsdFR5cGVzO1xuICAgIGNvbnN0IHRleHRTcGFjZSA9IHJ1bGVzPy50ZXh0U3BhY2UgIT09IHVuZGVmaW5lZCA/IHJ1bGVzLnRleHRTcGFjZSA6IHRydWU7XG4gICAgY29uc3QgZmlsdGVyTm9kZXMgPSBBcnJheS5mcm9tKE5vZGUuZWxlbWVudHMoZWRpdG9yKSk7XG5cbiAgICBpZiAoZmlsdGVyTm9kZXMuc29tZShuID0+IG5bMF0/LnR5cGUgJiYgY29udGFpblR5cGVzLmluY2x1ZGVzKG5bMF0udHlwZSkpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBub2Rlc0VudHJ5ID0gTm9kZS50ZXh0cyhlZGl0b3IpO1xuICAgIGNvbnN0IG5vZGVzID0gQXJyYXkuZnJvbShub2Rlc0VudHJ5KTtcbiAgICBjb25zdCBhbGxUZXh0ID0gbm9kZXMucmVkdWNlKCh0b3RhbCwgdGV4dCkgPT4gKHRvdGFsICs9IHRleHRbMF0udGV4dCksICcnKTtcbiAgICBjb25zdCBmaWx0ZXJUZXh0ID0gdGV4dFNwYWNlID8gYWxsVGV4dC5yZXBsYWNlKC9cXHMrL2csICcnKSA6IGFsbFRleHQ7XG4gICAgY29uc3QgdGV4dExlbmd0aCA9IGZpbHRlclRleHQ/Lmxlbmd0aCA/PyAwO1xuICAgIGNvbnN0IGlzRW1wdHlUZXh0ID0gdGV4dExlbmd0aCA8PSAwO1xuXG4gICAgcmV0dXJuIGlzRW1wdHlUZXh0O1xufTtcbiJdfQ==
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Node } from 'slate';
|
|
2
|
-
import { ElementKinds } from '../constants/node-types';
|
|
3
|
-
export const isEmptyContent = (children) => {
|
|
4
|
-
if (!children || children.length < 1) {
|
|
5
|
-
return true;
|
|
6
|
-
}
|
|
7
|
-
if (children && children.length === 1) {
|
|
8
|
-
const firstNode = children[0];
|
|
9
|
-
if (firstNode.type === ElementKinds.default && firstNode.children.length === 1 && !Node.string(firstNode)) {
|
|
10
|
-
return true;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
return false;
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZW1wdHktY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLWVtcHR5LWNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLElBQUksRUFBVyxNQUFNLE9BQU8sQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsUUFBc0IsRUFBRSxFQUFFO0lBQ3JELElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFZLENBQUM7UUFDekMsSUFBSSxTQUFTLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3hHLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzY2VuZGFudCwgTm9kZSwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEVsZW1lbnRLaW5kcyB9IGZyb20gJy4uL2NvbnN0YW50cy9ub2RlLXR5cGVzJztcblxuZXhwb3J0IGNvbnN0IGlzRW1wdHlDb250ZW50ID0gKGNoaWxkcmVuOiBEZXNjZW5kYW50W10pID0+IHtcbiAgICBpZiAoIWNoaWxkcmVuIHx8IGNoaWxkcmVuLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChjaGlsZHJlbiAmJiBjaGlsZHJlbi5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgY29uc3QgZmlyc3ROb2RlID0gY2hpbGRyZW5bMF0gYXMgRWxlbWVudDtcbiAgICAgICAgaWYgKGZpcnN0Tm9kZS50eXBlID09PSBFbGVtZW50S2luZHMuZGVmYXVsdCAmJiBmaXJzdE5vZGUuY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmICFOb2RlLnN0cmluZyhmaXJzdE5vZGUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59O1xuIl19
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Editor, Node } from 'slate';
|
|
2
|
-
import { ElementKinds } from '../constants/node-types';
|
|
3
|
-
export const isEmptyParagraphByPath = (editor, at) => {
|
|
4
|
-
const block = Node.get(editor, at);
|
|
5
|
-
return Editor.isEmpty(editor, block) && block.type === ElementKinds.paragraph;
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZW1wdHktcGFyYWdyYXBoLWJ5LXBhdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1lbXB0eS1wYXJhZ3JhcGgtYnktcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBaUIsTUFBTSxPQUFPLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLENBQUMsTUFBYyxFQUFFLEVBQVEsRUFBRSxFQUFFO0lBQy9ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBWSxDQUFDO0lBQzlDLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxZQUFZLENBQUMsU0FBUyxDQUFDO0FBQ2xGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgTm9kZSwgUGF0aCwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEVsZW1lbnRLaW5kcyB9IGZyb20gJy4uL2NvbnN0YW50cy9ub2RlLXR5cGVzJztcblxuZXhwb3J0IGNvbnN0IGlzRW1wdHlQYXJhZ3JhcGhCeVBhdGggPSAoZWRpdG9yOiBFZGl0b3IsIGF0OiBQYXRoKSA9PiB7XG4gICAgY29uc3QgYmxvY2sgPSBOb2RlLmdldChlZGl0b3IsIGF0KSBhcyBFbGVtZW50O1xuICAgIHJldHVybiBFZGl0b3IuaXNFbXB0eShlZGl0b3IsIGJsb2NrKSAmJiBibG9jay50eXBlID09PSBFbGVtZW50S2luZHMucGFyYWdyYXBoO1xufTtcbiJdfQ==
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Editor, Node } from 'slate';
|
|
2
|
-
import { ElementKinds } from '../constants/node-types';
|
|
3
|
-
import { getAnchorBlockEntry } from './get-anchor-block-entry';
|
|
4
|
-
import { isAncestorEmpty } from './is-ancestor-empty';
|
|
5
|
-
export const isEmptyParagraph = (editor, at) => {
|
|
6
|
-
const entry = getAnchorBlockEntry(editor, at);
|
|
7
|
-
if (!entry) {
|
|
8
|
-
return false;
|
|
9
|
-
}
|
|
10
|
-
const [block] = entry;
|
|
11
|
-
return Editor.isEmpty(editor, block) && block.type === ElementKinds.paragraph;
|
|
12
|
-
};
|
|
13
|
-
export const isEmptyParagraphElement = (editor, element) => {
|
|
14
|
-
const isParagraph = element.type === ElementKinds.paragraph;
|
|
15
|
-
const isEmpty = isAncestorEmpty(editor, element);
|
|
16
|
-
return isParagraph && isEmpty;
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* 判断元素是否是空段落,仅仅包含空格或者\n算空段落
|
|
20
|
-
* @param editor
|
|
21
|
-
* @param element
|
|
22
|
-
* @returns
|
|
23
|
-
*/
|
|
24
|
-
export const isLogicEmptyParagraphElement = (editor, element) => {
|
|
25
|
-
const text = Node.string(element).replace(/(\s|\n)*$/g, '');
|
|
26
|
-
return text.length === 0 && !element.children.some(n => Editor.isInline(editor, n));
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZW1wdHktcGFyYWdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvaXMtZW1wdHktcGFyYWdyYXBoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQXdCLElBQUksRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsTUFBYyxFQUFFLEVBQWlCLEVBQUUsRUFBRTtJQUNsRSxNQUFNLEtBQUssR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDOUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDdEIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxTQUFTLENBQUM7QUFDbEYsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsT0FBZ0IsRUFBRSxFQUFFO0lBQ3hFLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLFNBQVMsQ0FBQztJQUM1RCxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELE9BQU8sV0FBVyxJQUFJLE9BQU8sQ0FBQztBQUNsQyxDQUFDLENBQUM7QUFFRjs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLENBQUMsTUFBYyxFQUFFLE9BQWdCLEVBQUUsRUFBRTtJQUM3RSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDNUQsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN4RixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIFBhdGgsIFBvaW50LCBFbGVtZW50LCBOb2RlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRWxlbWVudEtpbmRzIH0gZnJvbSAnLi4vY29uc3RhbnRzL25vZGUtdHlwZXMnO1xuaW1wb3J0IHsgZ2V0QW5jaG9yQmxvY2tFbnRyeSB9IGZyb20gJy4vZ2V0LWFuY2hvci1ibG9jay1lbnRyeSc7XG5pbXBvcnQgeyBpc0FuY2VzdG9yRW1wdHkgfSBmcm9tICcuL2lzLWFuY2VzdG9yLWVtcHR5JztcblxuZXhwb3J0IGNvbnN0IGlzRW1wdHlQYXJhZ3JhcGggPSAoZWRpdG9yOiBFZGl0b3IsIGF0PzogUGF0aCB8IFBvaW50KSA9PiB7XG4gICAgY29uc3QgZW50cnkgPSBnZXRBbmNob3JCbG9ja0VudHJ5KGVkaXRvciwgYXQpO1xuICAgIGlmICghZW50cnkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBjb25zdCBbYmxvY2tdID0gZW50cnk7XG4gICAgcmV0dXJuIEVkaXRvci5pc0VtcHR5KGVkaXRvciwgYmxvY2spICYmIGJsb2NrLnR5cGUgPT09IEVsZW1lbnRLaW5kcy5wYXJhZ3JhcGg7XG59O1xuXG5leHBvcnQgY29uc3QgaXNFbXB0eVBhcmFncmFwaEVsZW1lbnQgPSAoZWRpdG9yOiBFZGl0b3IsIGVsZW1lbnQ6IEVsZW1lbnQpID0+IHtcbiAgICBjb25zdCBpc1BhcmFncmFwaCA9IGVsZW1lbnQudHlwZSA9PT0gRWxlbWVudEtpbmRzLnBhcmFncmFwaDtcbiAgICBjb25zdCBpc0VtcHR5ID0gaXNBbmNlc3RvckVtcHR5KGVkaXRvciwgZWxlbWVudCk7XG4gICAgcmV0dXJuIGlzUGFyYWdyYXBoICYmIGlzRW1wdHk7XG59O1xuXG4vKipcbiAqIOWIpOaWreWFg+e0oOaYr+WQpuaYr+epuuauteiQve+8jOS7heS7heWMheWQq+epuuagvOaIluiAhVxcbueul+epuuauteiQvVxuICogQHBhcmFtIGVkaXRvclxuICogQHBhcmFtIGVsZW1lbnRcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBjb25zdCBpc0xvZ2ljRW1wdHlQYXJhZ3JhcGhFbGVtZW50ID0gKGVkaXRvcjogRWRpdG9yLCBlbGVtZW50OiBFbGVtZW50KSA9PiB7XG4gICAgY29uc3QgdGV4dCA9IE5vZGUuc3RyaW5nKGVsZW1lbnQpLnJlcGxhY2UoLyhcXHN8XFxuKSokL2csICcnKTtcbiAgICByZXR1cm4gdGV4dC5sZW5ndGggPT09IDAgJiYgIWVsZW1lbnQuY2hpbGRyZW4uc29tZShuID0+IEVkaXRvci5pc0lubGluZShlZGl0b3IsIG4pKTtcbn07XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Is it the first child of the parent
|
|
3
|
-
*/
|
|
4
|
-
export const isFirstChild = (path) => path[path.length - 1] === 0;
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZmlyc3QtY2hpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1maXJzdC1jaGlsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLElBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF0aCB9IGZyb20gJ3NsYXRlJztcblxuLyoqXG4gKiBJcyBpdCB0aGUgZmlyc3QgY2hpbGQgb2YgdGhlIHBhcmVudFxuICovXG5leHBvcnQgY29uc3QgaXNGaXJzdENoaWxkID0gKHBhdGg6IFBhdGgpID0+IHBhdGhbcGF0aC5sZW5ndGggLSAxXSA9PT0gMDtcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Range } from 'slate';
|
|
2
|
-
export const isGlobalCollapsed = (editor) => {
|
|
3
|
-
return editor && editor.selection && Range.isCollapsed(editor.selection);
|
|
4
|
-
};
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZ2xvYmFsLWNvbGxhcHNlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLWdsb2JhbC1jb2xsYXBzZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUV0QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE1BQWMsRUFBRSxFQUFFO0lBQ2hELE9BQU8sTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLElBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0UsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBSYW5nZSB9IGZyb20gJ3NsYXRlJztcblxuZXhwb3J0IGNvbnN0IGlzR2xvYmFsQ29sbGFwc2VkID0gKGVkaXRvcjogRWRpdG9yKSA9PiB7XG4gICAgcmV0dXJuIGVkaXRvciAmJiBlZGl0b3Iuc2VsZWN0aW9uICYmIFJhbmdlLmlzQ29sbGFwc2VkKGVkaXRvci5zZWxlY3Rpb24pO1xufTtcbiJdfQ==
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { getAboveByType } from './get-above-by-type';
|
|
2
|
-
export const isIncludeTypes = (editor, types) => {
|
|
3
|
-
const parentType = [];
|
|
4
|
-
types.map((item) => {
|
|
5
|
-
const entry = getAboveByType(editor, item);
|
|
6
|
-
if (entry) {
|
|
7
|
-
parentType.push(entry[0].type);
|
|
8
|
-
}
|
|
9
|
-
});
|
|
10
|
-
return parentType.length > 0;
|
|
11
|
-
};
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtaW5jbHVkZS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLWluY2x1ZGUtdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXJELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLE1BQWMsRUFBRSxLQUEyQixFQUFFLEVBQUU7SUFDMUUsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFZLEVBQUUsRUFBRTtRQUN2QixNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixVQUFVLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBQyxDQUFDLENBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBQ2pDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEN1c3RvbUVsZW1lbnRLaW5kcyB9IGZyb20gJy4uL2N1c3RvbS10eXBlcyc7XG5pbXBvcnQgeyBnZXRBYm92ZUJ5VHlwZSB9IGZyb20gJy4vZ2V0LWFib3ZlLWJ5LXR5cGUnO1xuXG5leHBvcnQgY29uc3QgaXNJbmNsdWRlVHlwZXMgPSAoZWRpdG9yOiBFZGl0b3IsIHR5cGVzOiBDdXN0b21FbGVtZW50S2luZHNbXSkgPT4ge1xuICAgIGNvbnN0IHBhcmVudFR5cGUgPSBbXTtcbiAgICB0eXBlcy5tYXAoKGl0ZW06IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBlbnRyeSA9IGdldEFib3ZlQnlUeXBlKGVkaXRvciwgaXRlbSk7XG4gICAgICAgIGlmIChlbnRyeSkge1xuICAgICAgICAgICAgcGFyZW50VHlwZS5wdXNoKChlbnRyeVswXSBhcyBFbGVtZW50KS50eXBlKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwYXJlbnRUeXBlLmxlbmd0aCA+IDA7XG59O1xuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { getNodesByType } from './get-nodes-by-type';
|
|
2
|
-
/**
|
|
3
|
-
* Is there a node with a type included in `types` at a location (default: selection).
|
|
4
|
-
*/
|
|
5
|
-
export const isNodeTypeIn = (editor, types, options = {}) => {
|
|
6
|
-
const [match] = getNodesByType(editor, types, options);
|
|
7
|
-
return !!match;
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbm9kZS10eXBlLWluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvaXMtbm9kZS10eXBlLWluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLE1BQWMsRUFBRSxLQUF3QixFQUFFLFVBQTZDLEVBQUUsRUFBRSxFQUFFO0lBQ3RILE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDbkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRWRpdG9yTm9kZXNPcHRpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBnZXROb2Rlc0J5VHlwZSB9IGZyb20gJy4vZ2V0LW5vZGVzLWJ5LXR5cGUnO1xuXG4vKipcbiAqIElzIHRoZXJlIGEgbm9kZSB3aXRoIGEgdHlwZSBpbmNsdWRlZCBpbiBgdHlwZXNgIGF0IGEgbG9jYXRpb24gKGRlZmF1bHQ6IHNlbGVjdGlvbikuXG4gKi9cbmV4cG9ydCBjb25zdCBpc05vZGVUeXBlSW4gPSAoZWRpdG9yOiBFZGl0b3IsIHR5cGVzOiBzdHJpbmdbXSB8IHN0cmluZywgb3B0aW9uczogT21pdDxFZGl0b3JOb2Rlc09wdGlvbnMsICdtYXRjaCc+ID0ge30pID0+IHtcbiAgICBjb25zdCBbbWF0Y2hdID0gZ2V0Tm9kZXNCeVR5cGUoZWRpdG9yLCB0eXBlcywgb3B0aW9ucyk7XG4gICAgcmV0dXJuICEhbWF0Y2g7XG59O1xuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Is the node entry filling a condition.
|
|
3
|
-
*/
|
|
4
|
-
export const isNodeType = (entry, { filter = () => true, allow = [], exclude = [] } = {}) => {
|
|
5
|
-
let filterAllow = () => true;
|
|
6
|
-
if (allow.length) {
|
|
7
|
-
filterAllow = ([n]) => allow.includes(n.type);
|
|
8
|
-
}
|
|
9
|
-
let filterExclude = () => true;
|
|
10
|
-
if (exclude.length) {
|
|
11
|
-
filterExclude = ([n]) => !exclude.includes(n.type);
|
|
12
|
-
}
|
|
13
|
-
return !!entry && filter(entry) && filterAllow(entry) && filterExclude(entry);
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbm9kZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvaXMtbm9kZS10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBdUIsRUFBRSxFQUFFLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxHQUFHLEVBQUUsRUFBRSxPQUFPLEdBQUcsRUFBRSxLQUFtQixFQUFFLEVBQUUsRUFBRTtJQUN4SCxJQUFJLFdBQVcsR0FBa0IsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0lBQzVDLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2YsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBRSxDQUFhLENBQUMsSUFBYyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELElBQUksYUFBYSxHQUFrQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDOUMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakIsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFFLENBQWEsQ0FBQyxJQUFjLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsT0FBTyxDQUFDLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ2xGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGUsIE5vZGVFbnRyeSwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFF1ZXJ5T3B0aW9ucyB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG4vKipcbiAqIElzIHRoZSBub2RlIGVudHJ5IGZpbGxpbmcgYSBjb25kaXRpb24uXG4gKi9cbmV4cG9ydCBjb25zdCBpc05vZGVUeXBlID0gKGVudHJ5PzogTm9kZUVudHJ5PE5vZGU+LCB7IGZpbHRlciA9ICgpID0+IHRydWUsIGFsbG93ID0gW10sIGV4Y2x1ZGUgPSBbXSB9OiBRdWVyeU9wdGlvbnMgPSB7fSkgPT4ge1xuICAgIGxldCBmaWx0ZXJBbGxvdzogdHlwZW9mIGZpbHRlciA9ICgpID0+IHRydWU7XG4gICAgaWYgKGFsbG93Lmxlbmd0aCkge1xuICAgICAgICBmaWx0ZXJBbGxvdyA9IChbbl0pID0+IGFsbG93LmluY2x1ZGVzKChuIGFzIEVsZW1lbnQpLnR5cGUgYXMgc3RyaW5nKTtcbiAgICB9XG5cbiAgICBsZXQgZmlsdGVyRXhjbHVkZTogdHlwZW9mIGZpbHRlciA9ICgpID0+IHRydWU7XG4gICAgaWYgKGV4Y2x1ZGUubGVuZ3RoKSB7XG4gICAgICAgIGZpbHRlckV4Y2x1ZGUgPSAoW25dKSA9PiAhZXhjbHVkZS5pbmNsdWRlcygobiBhcyBFbGVtZW50KS50eXBlIGFzIHN0cmluZyk7XG4gICAgfVxuXG4gICAgcmV0dXJuICEhZW50cnkgJiYgZmlsdGVyKGVudHJ5KSAmJiBmaWx0ZXJBbGxvdyhlbnRyeSkgJiYgZmlsdGVyRXhjbHVkZShlbnRyeSk7XG59O1xuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Editor, Element } from 'slate';
|
|
2
|
-
import { ElementKinds } from '../constants/node-types';
|
|
3
|
-
export const isParagraph = (editor) => {
|
|
4
|
-
const [match] = Editor.nodes(editor, {
|
|
5
|
-
match: n => Element.isElement(n) && n.type === ElementKinds.paragraph
|
|
6
|
-
});
|
|
7
|
-
return !!match;
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcGFyYWdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvaXMtcGFyYWdyYXBoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxNQUFjLEVBQUUsRUFBRTtJQUMxQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7UUFDakMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxTQUFTO0tBQ3hFLENBQUMsQ0FBQztJQUNILE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUNuQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIEVsZW1lbnQgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBFbGVtZW50S2luZHMgfSBmcm9tICcuLi9jb25zdGFudHMvbm9kZS10eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBpc1BhcmFncmFwaCA9IChlZGl0b3I6IEVkaXRvcikgPT4ge1xuICAgIGNvbnN0IFttYXRjaF0gPSBFZGl0b3Iubm9kZXMoZWRpdG9yLCB7XG4gICAgICAgIG1hdGNoOiBuID0+IEVsZW1lbnQuaXNFbGVtZW50KG4pICYmIG4udHlwZSA9PT0gRWxlbWVudEtpbmRzLnBhcmFncmFwaFxuICAgIH0pO1xuICAgIHJldHVybiAhIW1hdGNoO1xufTtcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export const isPointAtRoot = (point) => point.path.length === 2;
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcG9pbnQtYXQtcm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLXBvaW50LWF0LXJvb3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsS0FBWSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb2ludCB9IGZyb20gJ3NsYXRlJztcblxuZXhwb3J0IGNvbnN0IGlzUG9pbnRBdFJvb3QgPSAocG9pbnQ6IFBvaW50KSA9PiBwb2ludC5wYXRoLmxlbmd0aCA9PT0gMjtcbiJdfQ==
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { Editor, Path, Range } from 'slate';
|
|
2
|
-
import { getBlockAbove } from './get-block-above';
|
|
3
|
-
/**
|
|
4
|
-
* Is the range (default: selection) across blocks.
|
|
5
|
-
*/
|
|
6
|
-
export const isRangeAcrossBlocks = (editor, { at, ...options } = {}) => {
|
|
7
|
-
if (!at)
|
|
8
|
-
at = editor.selection;
|
|
9
|
-
if (!at)
|
|
10
|
-
return false;
|
|
11
|
-
const [start, end] = Range.edges(at);
|
|
12
|
-
const startBlock = getBlockAbove(editor, {
|
|
13
|
-
at: start,
|
|
14
|
-
...options
|
|
15
|
-
});
|
|
16
|
-
const endBlock = Editor.above(editor, {
|
|
17
|
-
at: end,
|
|
18
|
-
...options
|
|
19
|
-
});
|
|
20
|
-
return startBlock && endBlock && !Path.equals(startBlock[1], endBlock[1]);
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcmFuZ2UtYWNyb3NzLWJsb2Nrcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLXJhbmdlLWFjcm9zcy1ibG9ja3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRTVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQy9CLE1BQWMsRUFDZCxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sS0FBdUUsRUFBRSxFQUMzRixFQUFFO0lBQ0EsSUFBSSxDQUFDLEVBQUU7UUFBRSxFQUFFLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztJQUMvQixJQUFJLENBQUMsRUFBRTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRXRCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNyQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsTUFBTSxFQUFFO1FBQ3JDLEVBQUUsRUFBRSxLQUFLO1FBQ1QsR0FBRyxPQUFPO0tBQ2IsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7UUFDbEMsRUFBRSxFQUFFLEdBQUc7UUFDUCxHQUFHLE9BQU87S0FDYixDQUFDLENBQUM7SUFFSCxPQUFPLFVBQVUsSUFBSSxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM5RSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IsIFBhdGgsIFJhbmdlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRWRpdG9yQWJvdmVPcHRpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBnZXRCbG9ja0Fib3ZlIH0gZnJvbSAnLi9nZXQtYmxvY2stYWJvdmUnO1xuXG4vKipcbiAqIElzIHRoZSByYW5nZSAoZGVmYXVsdDogc2VsZWN0aW9uKSBhY3Jvc3MgYmxvY2tzLlxuICovXG5leHBvcnQgY29uc3QgaXNSYW5nZUFjcm9zc0Jsb2NrcyA9IChcbiAgICBlZGl0b3I6IEVkaXRvcixcbiAgICB7IGF0LCAuLi5vcHRpb25zIH06IE9taXQ8RWRpdG9yQWJvdmVPcHRpb25zLCAnYXQnIHwgJ21hdGNoJz4gJiB7IGF0PzogUmFuZ2UgfCBudWxsIH0gPSB7fVxuKSA9PiB7XG4gICAgaWYgKCFhdCkgYXQgPSBlZGl0b3Iuc2VsZWN0aW9uO1xuICAgIGlmICghYXQpIHJldHVybiBmYWxzZTtcblxuICAgIGNvbnN0IFtzdGFydCwgZW5kXSA9IFJhbmdlLmVkZ2VzKGF0KTtcbiAgICBjb25zdCBzdGFydEJsb2NrID0gZ2V0QmxvY2tBYm92ZShlZGl0b3IsIHtcbiAgICAgICAgYXQ6IHN0YXJ0LFxuICAgICAgICAuLi5vcHRpb25zXG4gICAgfSk7XG4gICAgY29uc3QgZW5kQmxvY2sgPSBFZGl0b3IuYWJvdmUoZWRpdG9yLCB7XG4gICAgICAgIGF0OiBlbmQsXG4gICAgICAgIC4uLm9wdGlvbnNcbiAgICB9KTtcblxuICAgIHJldHVybiBzdGFydEJsb2NrICYmIGVuZEJsb2NrICYmICFQYXRoLmVxdWFscyhzdGFydEJsb2NrWzFdLCBlbmRCbG9ja1sxXSk7XG59O1xuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { isPointAtRoot } from './is-point-at-root';
|
|
2
|
-
export const isRangeAtRoot = (range) => isPointAtRoot(range.anchor) || isPointAtRoot(range.focus);
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcmFuZ2UtYXQtcm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2lzLXJhbmdlLWF0LXJvb3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQVksRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmFuZ2UgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBpc1BvaW50QXRSb290IH0gZnJvbSAnLi9pcy1wb2ludC1hdC1yb290JztcblxuZXhwb3J0IGNvbnN0IGlzUmFuZ2VBdFJvb3QgPSAocmFuZ2U6IFJhbmdlKSA9PiBpc1BvaW50QXRSb290KHJhbmdlLmFuY2hvcikgfHwgaXNQb2ludEF0Um9vdChyYW5nZS5mb2N1cyk7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export const isRootPath = (path) => path.length === 1;
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcm9vdC1wYXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvaXMtcm9vdC1wYXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYXRoIH0gZnJvbSAnc2xhdGUnO1xuXG5leHBvcnQgY29uc3QgaXNSb290UGF0aCA9IChwYXRoOiBQYXRoKSA9PiBwYXRoLmxlbmd0aCA9PT0gMTtcbiJdfQ==
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Editor } from 'slate';
|
|
2
|
-
/**
|
|
3
|
-
* {@link Editor.isStart}. If point is null, return false.
|
|
4
|
-
*/
|
|
5
|
-
export const isStart = (editor, point, at) => !!point && Editor.isStart(editor, point, at);
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtc3RhcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcXVlcmllcy9pcy1zdGFydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFtQixNQUFNLE9BQU8sQ0FBQztBQUVoRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUFDLE1BQWMsRUFBRSxLQUErQixFQUFFLEVBQVksRUFBVyxFQUFFLENBQzlGLENBQUMsQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBMb2NhdGlvbiwgUG9pbnQgfSBmcm9tICdzbGF0ZSc7XG5cbi8qKlxuICoge0BsaW5rIEVkaXRvci5pc1N0YXJ0fS4gSWYgcG9pbnQgaXMgbnVsbCwgcmV0dXJuIGZhbHNlLlxuICovXG5leHBvcnQgY29uc3QgaXNTdGFydCA9IChlZGl0b3I6IEVkaXRvciwgcG9pbnQ6IFBvaW50IHwgbnVsbCB8IHVuZGVmaW5lZCwgYXQ6IExvY2F0aW9uKTogYm9vbGVhbiA9PlxuICAgICEhcG9pbnQgJiYgRWRpdG9yLmlzU3RhcnQoZWRpdG9yLCBwb2ludCwgYXQpO1xuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { findNode } from './find-node';
|
|
2
|
-
/**
|
|
3
|
-
* Iterate through all of the nodes in the editor and break early for the first truthy match. Otherwise
|
|
4
|
-
* returns false.
|
|
5
|
-
*/
|
|
6
|
-
export const someNode = (editor, options) => {
|
|
7
|
-
return !!findNode(editor, options);
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29tZS1ub2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3F1ZXJpZXMvc29tZS1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQW1CLE1BQU0sYUFBYSxDQUFDO0FBRXhEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUF3QixNQUFjLEVBQUUsT0FBMkIsRUFBRSxFQUFFO0lBQzNGLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBSSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDMUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yLCBOb2RlIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgZmluZE5vZGUsIEZpbmROb2RlT3B0aW9ucyB9IGZyb20gJy4vZmluZC1ub2RlJztcblxuLyoqXG4gKiBJdGVyYXRlIHRocm91Z2ggYWxsIG9mIHRoZSBub2RlcyBpbiB0aGUgZWRpdG9yIGFuZCBicmVhayBlYXJseSBmb3IgdGhlIGZpcnN0IHRydXRoeSBtYXRjaC4gT3RoZXJ3aXNlXG4gKiByZXR1cm5zIGZhbHNlLlxuICovXG5leHBvcnQgY29uc3Qgc29tZU5vZGUgPSA8VCBleHRlbmRzIE5vZGUgPSBOb2RlPihlZGl0b3I6IEVkaXRvciwgb3B0aW9uczogRmluZE5vZGVPcHRpb25zPFQ+KSA9PiB7XG4gICAgcmV0dXJuICEhZmluZE5vZGU8VD4oZWRpdG9yLCBvcHRpb25zKTtcbn07XG4iXX0=
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Subject, fromEvent } from 'rxjs';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import { FontSizes, ScrollDirection } from '../constants/node-types';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class TheContextService {
|
|
7
|
-
constructor(ngZone) {
|
|
8
|
-
this.ngZone = ngZone;
|
|
9
|
-
this.destroy$ = new Subject();
|
|
10
|
-
this.uploadingFiles = [];
|
|
11
|
-
this.paintFormatStatus = {
|
|
12
|
-
isActive: false,
|
|
13
|
-
marks: {}
|
|
14
|
-
};
|
|
15
|
-
this.containerScrolled$ = new Subject();
|
|
16
|
-
this.uploadingStatus$ = new Subject();
|
|
17
|
-
this.containerResized$ = new Subject();
|
|
18
|
-
this.theEditorResized$ = new Subject();
|
|
19
|
-
this.windowResized$ = new Subject();
|
|
20
|
-
this.ngZone.runOutsideAngular(() => {
|
|
21
|
-
this.onMouseUp$ = fromEvent(window, `mouseup`).pipe(takeUntil(this.destroy$));
|
|
22
|
-
this.onMouseMove$ = fromEvent(window, `mousemove`).pipe(takeUntil(this.destroy$));
|
|
23
|
-
this.onMouseDown$ = fromEvent(window, `mousedown`).pipe(takeUntil(this.destroy$));
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
initialize(options) {
|
|
27
|
-
this.options = options;
|
|
28
|
-
this.rebindContainerScroll();
|
|
29
|
-
this.bindContainerResize();
|
|
30
|
-
this.bindTheEditorResize();
|
|
31
|
-
this.bindWindowResize();
|
|
32
|
-
}
|
|
33
|
-
getScrollContainer() {
|
|
34
|
-
const { scrollContainer } = this.options.editor?.options;
|
|
35
|
-
return this.options.nativeElement.closest(scrollContainer) || this.options.nativeElement.querySelector(scrollContainer);
|
|
36
|
-
}
|
|
37
|
-
rebindContainerScroll() {
|
|
38
|
-
this.scrollSubscription?.unsubscribe();
|
|
39
|
-
const { scrollContainer } = this.options.editor?.options;
|
|
40
|
-
if (scrollContainer) {
|
|
41
|
-
const containerElement = this.getScrollContainer();
|
|
42
|
-
if (containerElement) {
|
|
43
|
-
this.ngZone.runOutsideAngular(() => {
|
|
44
|
-
let previousContainerScroll = { x: 0, y: 0 };
|
|
45
|
-
this.scrollSubscription = fromEvent(containerElement, 'scroll').subscribe(event => {
|
|
46
|
-
const entires = { event, direction: ScrollDirection.Y };
|
|
47
|
-
const target = event.target;
|
|
48
|
-
const [x, y] = [target.scrollLeft, target.scrollTop];
|
|
49
|
-
if (x !== previousContainerScroll.x) {
|
|
50
|
-
entires.direction = ScrollDirection.X;
|
|
51
|
-
}
|
|
52
|
-
if (y !== previousContainerScroll.y) {
|
|
53
|
-
entires.direction = ScrollDirection.Y;
|
|
54
|
-
}
|
|
55
|
-
previousContainerScroll = { x, y };
|
|
56
|
-
this.containerScrolled$.next(entires);
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
bindContainerResize() {
|
|
63
|
-
const containerElement = this.getScrollContainer();
|
|
64
|
-
if (containerElement) {
|
|
65
|
-
this.containerResizeObserver = this.elementResize(containerElement, this.containerResized$);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
bindTheEditorResize() {
|
|
69
|
-
this.theEditorResizeObserver = this.elementResize(this.options.nativeElement, this.theEditorResized$);
|
|
70
|
-
}
|
|
71
|
-
bindWindowResize() {
|
|
72
|
-
this.windowResizeObserver = this.elementResize(document.documentElement, this.windowResized$);
|
|
73
|
-
}
|
|
74
|
-
elementResize(element, subject) {
|
|
75
|
-
let previousRect = null;
|
|
76
|
-
const resizeObserver = new ResizeObserver((entires) => {
|
|
77
|
-
if (!previousRect) {
|
|
78
|
-
previousRect = entires[0].contentRect;
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
const currentRect = entires[0].contentRect;
|
|
82
|
-
const result = { entry: entires[0], widthChanged: false, heightChanged: false };
|
|
83
|
-
if (currentRect.width !== previousRect.width) {
|
|
84
|
-
result.widthChanged = true;
|
|
85
|
-
}
|
|
86
|
-
if (currentRect.height !== previousRect.height) {
|
|
87
|
-
result.heightChanged = true;
|
|
88
|
-
}
|
|
89
|
-
previousRect = currentRect;
|
|
90
|
-
subject.next(result);
|
|
91
|
-
});
|
|
92
|
-
resizeObserver.observe(element);
|
|
93
|
-
return resizeObserver;
|
|
94
|
-
}
|
|
95
|
-
getOptions() {
|
|
96
|
-
if (!this.options.width) {
|
|
97
|
-
const firstElementChild = this.getFirstElementChild();
|
|
98
|
-
this.options.width = firstElementChild.offsetWidth;
|
|
99
|
-
}
|
|
100
|
-
return this.options;
|
|
101
|
-
}
|
|
102
|
-
getDefaultFontSize() {
|
|
103
|
-
return this.options.editor?.options?.fontSize || FontSizes.fontSize14;
|
|
104
|
-
}
|
|
105
|
-
getEditableElement() {
|
|
106
|
-
return this.options.nativeElement.querySelector('.the-editor-typo');
|
|
107
|
-
}
|
|
108
|
-
getFirstElementChild() {
|
|
109
|
-
const editableElement = this.getEditableElement();
|
|
110
|
-
return editableElement?.firstElementChild;
|
|
111
|
-
}
|
|
112
|
-
addUploadingFiles(file) {
|
|
113
|
-
this.uploadingFiles.push(file);
|
|
114
|
-
}
|
|
115
|
-
removeUploadFile(file) {
|
|
116
|
-
if (!file) {
|
|
117
|
-
return;
|
|
118
|
-
}
|
|
119
|
-
this.uploadingFiles.splice(this.uploadingFiles.findIndex(item => item.url === file.url), 1);
|
|
120
|
-
}
|
|
121
|
-
ngOnDestroy() {
|
|
122
|
-
this.uploadingStatus$.complete();
|
|
123
|
-
this.containerScrolled$?.complete();
|
|
124
|
-
this.theEditorResized$?.complete();
|
|
125
|
-
this.containerResized$?.complete();
|
|
126
|
-
this.containerResizeObserver?.disconnect();
|
|
127
|
-
this.theEditorResizeObserver?.disconnect();
|
|
128
|
-
this.windowResized$?.complete();
|
|
129
|
-
this.windowResizeObserver?.disconnect();
|
|
130
|
-
this.scrollSubscription?.unsubscribe();
|
|
131
|
-
this.destroy$.next();
|
|
132
|
-
this.destroy$.complete();
|
|
133
|
-
}
|
|
134
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheContextService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
135
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheContextService }); }
|
|
136
|
-
}
|
|
137
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TheContextService, decorators: [{
|
|
138
|
-
type: Injectable
|
|
139
|
-
}], ctorParameters: () => [{ type: i0.NgZone }] });
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3NlcnZpY2VzL2NvbnRleHQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQWMsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQWEsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBZ0JoRixNQUFNLE9BQU8saUJBQWlCO0lBb0MxQixZQUFvQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQWpDMUIsYUFBUSxHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBSXpDLG1CQUFjLEdBQTJDLEVBQUUsQ0FBQztRQUU1RCxzQkFBaUIsR0FBc0I7WUFDMUMsUUFBUSxFQUFFLEtBQUs7WUFDZixLQUFLLEVBQUUsRUFBRTtTQUNaLENBQUM7UUFRSyx1QkFBa0IsR0FBRyxJQUFJLE9BQU8sRUFBZ0QsQ0FBQztRQUVqRixxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBRTFDLHNCQUFpQixHQUFHLElBQUksT0FBTyxFQUFpRixDQUFDO1FBRWpILHNCQUFpQixHQUFHLElBQUksT0FBTyxFQUFpRixDQUFDO1FBRWpILG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQWlGLENBQUM7UUFTakgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQWEsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDMUYsSUFB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LENBQ3RCLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQzVELENBQUMsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzdCLENBQUM7K0dBMUtRLGlCQUFpQjttSEFBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lLCBPbkRlc3Ryb3ksIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGb250U2l6ZXMsIE1hcmtUeXBlcywgU2Nyb2xsRGlyZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzL25vZGUtdHlwZXMnO1xuaW1wb3J0IHsgVGhlRWRpdG9yIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlQ29udGV4dE9wdGlvbnMge1xuICAgIGVkaXRvcjogVGhlRWRpdG9yO1xuICAgIG5hdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWY7XG4gICAgd2lkdGg/OiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBQYWludEZvcm1hdFN0YXR1cyB7XG4gICAgaXNBY3RpdmU6IGJvb2xlYW47XG4gICAgbWFya3M6IHsgW2tleSBpbiBNYXJrVHlwZXNdPzogYW55IH07XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUaGVDb250ZXh0U2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBzY3JvbGxTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICAgIHByaXZhdGUgb3B0aW9uczogVGhlQ29udGV4dE9wdGlvbnM7XG5cbiAgICBwdWJsaWMgdXBsb2FkaW5nRmlsZXM6IHsgdXJsOiBzdHJpbmc7IGZpbGU6IEZpbGUgfCBzdHJpbmcgfVtdID0gW107XG5cbiAgICBwdWJsaWMgcGFpbnRGb3JtYXRTdGF0dXM6IFBhaW50Rm9ybWF0U3RhdHVzID0ge1xuICAgICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICAgIG1hcmtzOiB7fVxuICAgIH07XG5cbiAgICBwdWJsaWMgb25Nb3VzZVVwJDogT2JzZXJ2YWJsZTxNb3VzZUV2ZW50PjtcblxuICAgIHB1YmxpYyBvbk1vdXNlTW92ZSQ6IE9ic2VydmFibGU8TW91c2VFdmVudD47XG5cbiAgICBwdWJsaWMgb25Nb3VzZURvd24kOiBPYnNlcnZhYmxlPE1vdXNlRXZlbnQ+O1xuXG4gICAgcHVibGljIGNvbnRhaW5lclNjcm9sbGVkJCA9IG5ldyBTdWJqZWN0PHsgZXZlbnQ6IEV2ZW50OyBkaXJlY3Rpb246IFNjcm9sbERpcmVjdGlvbiB9PigpO1xuXG4gICAgcHVibGljIHVwbG9hZGluZ1N0YXR1cyQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgcHVibGljIGNvbnRhaW5lclJlc2l6ZWQkID0gbmV3IFN1YmplY3Q8eyBlbnRyeTogUmVzaXplT2JzZXJ2ZXJFbnRyeTsgd2lkdGhDaGFuZ2VkOiBib29sZWFuOyBoZWlnaHRDaGFuZ2VkOiBib29sZWFuIH0+KCk7XG5cbiAgICBwdWJsaWMgdGhlRWRpdG9yUmVzaXplZCQgPSBuZXcgU3ViamVjdDx7IGVudHJ5OiBSZXNpemVPYnNlcnZlckVudHJ5OyB3aWR0aENoYW5nZWQ6IGJvb2xlYW47IGhlaWdodENoYW5nZWQ6IGJvb2xlYW4gfT4oKTtcblxuICAgIHB1YmxpYyB3aW5kb3dSZXNpemVkJCA9IG5ldyBTdWJqZWN0PHsgZW50cnk6IFJlc2l6ZU9ic2VydmVyRW50cnk7IHdpZHRoQ2hhbmdlZDogYm9vbGVhbjsgaGVpZ2h0Q2hhbmdlZDogYm9vbGVhbiB9PigpO1xuXG4gICAgcHJpdmF0ZSBjb250YWluZXJSZXNpemVPYnNlcnZlcjogUmVzaXplT2JzZXJ2ZXI7XG5cbiAgICBwcml2YXRlIHRoZUVkaXRvclJlc2l6ZU9ic2VydmVyOiBSZXNpemVPYnNlcnZlcjtcblxuICAgIHByaXZhdGUgd2luZG93UmVzaXplT2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uTW91c2VVcCQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4od2luZG93LCBgbW91c2V1cGApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZU1vdmUkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHdpbmRvdywgYG1vdXNlbW92ZWApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZURvd24kID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHdpbmRvdywgYG1vdXNlZG93bmApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGluaXRpYWxpemUob3B0aW9uczogVGhlQ29udGV4dE9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICAgICAgdGhpcy5yZWJpbmRDb250YWluZXJTY3JvbGwoKTtcbiAgICAgICAgdGhpcy5iaW5kQ29udGFpbmVyUmVzaXplKCk7XG4gICAgICAgIHRoaXMuYmluZFRoZUVkaXRvclJlc2l6ZSgpO1xuICAgICAgICB0aGlzLmJpbmRXaW5kb3dSZXNpemUoKTtcbiAgICB9XG5cbiAgICBnZXRTY3JvbGxDb250YWluZXIoKTogSFRNTEVsZW1lbnQge1xuICAgICAgICBjb25zdCB7IHNjcm9sbENvbnRhaW5lciB9ID0gdGhpcy5vcHRpb25zLmVkaXRvcj8ub3B0aW9ucztcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5uYXRpdmVFbGVtZW50LmNsb3Nlc3Qoc2Nyb2xsQ29udGFpbmVyKSB8fCB0aGlzLm9wdGlvbnMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKHNjcm9sbENvbnRhaW5lcik7XG4gICAgfVxuXG4gICAgcmViaW5kQ29udGFpbmVyU2Nyb2xsKCkge1xuICAgICAgICB0aGlzLnNjcm9sbFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgY29uc3QgeyBzY3JvbGxDb250YWluZXIgfSA9IHRoaXMub3B0aW9ucy5lZGl0b3I/Lm9wdGlvbnM7XG4gICAgICAgIGlmIChzY3JvbGxDb250YWluZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmdldFNjcm9sbENvbnRhaW5lcigpO1xuICAgICAgICAgICAgaWYgKGNvbnRhaW5lckVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBwcmV2aW91c0NvbnRhaW5lclNjcm9sbCA9IHsgeDogMCwgeTogMCB9O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudDxFdmVudD4oY29udGFpbmVyRWxlbWVudCwgJ3Njcm9sbCcpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBlbnRpcmVzID0geyBldmVudCwgZGlyZWN0aW9uOiBTY3JvbGxEaXJlY3Rpb24uWSB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgW3gsIHldID0gW3RhcmdldC5zY3JvbGxMZWZ0LCB0YXJnZXQuc2Nyb2xsVG9wXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh4ICE9PSBwcmV2aW91c0NvbnRhaW5lclNjcm9sbC54KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXJlcy5kaXJlY3Rpb24gPSBTY3JvbGxEaXJlY3Rpb24uWDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh5ICE9PSBwcmV2aW91c0NvbnRhaW5lclNjcm9sbC55KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXJlcy5kaXJlY3Rpb24gPSBTY3JvbGxEaXJlY3Rpb24uWTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzQ29udGFpbmVyU2Nyb2xsID0geyB4LCB5IH07XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRhaW5lclNjcm9sbGVkJC5uZXh0KGVudGlyZXMpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJpbmRDb250YWluZXJSZXNpemUoKSB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmdldFNjcm9sbENvbnRhaW5lcigpO1xuICAgICAgICBpZiAoY29udGFpbmVyRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXJSZXNpemVPYnNlcnZlciA9IHRoaXMuZWxlbWVudFJlc2l6ZShjb250YWluZXJFbGVtZW50LCB0aGlzLmNvbnRhaW5lclJlc2l6ZWQkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJpbmRUaGVFZGl0b3JSZXNpemUoKSB7XG4gICAgICAgIHRoaXMudGhlRWRpdG9yUmVzaXplT2JzZXJ2ZXIgPSB0aGlzLmVsZW1lbnRSZXNpemUodGhpcy5vcHRpb25zLm5hdGl2ZUVsZW1lbnQsIHRoaXMudGhlRWRpdG9yUmVzaXplZCQpO1xuICAgIH1cblxuICAgIGJpbmRXaW5kb3dSZXNpemUoKSB7XG4gICAgICAgIHRoaXMud2luZG93UmVzaXplT2JzZXJ2ZXIgPSB0aGlzLmVsZW1lbnRSZXNpemUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCB0aGlzLndpbmRvd1Jlc2l6ZWQkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGVsZW1lbnRSZXNpemUoXG4gICAgICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgICAgICBzdWJqZWN0OiBTdWJqZWN0PHsgZW50cnk6IFJlc2l6ZU9ic2VydmVyRW50cnk7IHdpZHRoQ2hhbmdlZDogYm9vbGVhbjsgaGVpZ2h0Q2hhbmdlZDogYm9vbGVhbiB9PlxuICAgICkge1xuICAgICAgICBsZXQgcHJldmlvdXNSZWN0OiBET01SZWN0UmVhZE9ubHkgfCBudWxsID0gbnVsbDtcbiAgICAgICAgY29uc3QgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudGlyZXM6IFJlc2l6ZU9ic2VydmVyRW50cnlbXSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFwcmV2aW91c1JlY3QpIHtcbiAgICAgICAgICAgICAgICBwcmV2aW91c1JlY3QgPSBlbnRpcmVzWzBdLmNvbnRlbnRSZWN0O1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRSZWN0ID0gZW50aXJlc1swXS5jb250ZW50UmVjdDtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHsgZW50cnk6IGVudGlyZXNbMF0sIHdpZHRoQ2hhbmdlZDogZmFsc2UsIGhlaWdodENoYW5nZWQ6IGZhbHNlIH07XG4gICAgICAgICAgICBpZiAoY3VycmVudFJlY3Qud2lkdGggIT09IHByZXZpb3VzUmVjdC53aWR0aCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdC53aWR0aENoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGN1cnJlbnRSZWN0LmhlaWdodCAhPT0gcHJldmlvdXNSZWN0LmhlaWdodCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdC5oZWlnaHRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHByZXZpb3VzUmVjdCA9IGN1cnJlbnRSZWN0O1xuICAgICAgICAgICAgc3ViamVjdC5uZXh0KHJlc3VsdCk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXNpemVPYnNlcnZlci5vYnNlcnZlKGVsZW1lbnQpO1xuICAgICAgICByZXR1cm4gcmVzaXplT2JzZXJ2ZXI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE9wdGlvbnMoKSB7XG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLndpZHRoKSB7XG4gICAgICAgICAgICBjb25zdCBmaXJzdEVsZW1lbnRDaGlsZCA9IHRoaXMuZ2V0Rmlyc3RFbGVtZW50Q2hpbGQoKTtcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy53aWR0aCA9IGZpcnN0RWxlbWVudENoaWxkLm9mZnNldFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldERlZmF1bHRGb250U2l6ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5lZGl0b3I/Lm9wdGlvbnM/LmZvbnRTaXplIHx8IEZvbnRTaXplcy5mb250U2l6ZTE0O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRFZGl0YWJsZUVsZW1lbnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcudGhlLWVkaXRvci10eXBvJyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpcnN0RWxlbWVudENoaWxkKCkge1xuICAgICAgICBjb25zdCBlZGl0YWJsZUVsZW1lbnQgPSB0aGlzLmdldEVkaXRhYmxlRWxlbWVudCgpO1xuICAgICAgICByZXR1cm4gZWRpdGFibGVFbGVtZW50Py5maXJzdEVsZW1lbnRDaGlsZCBhcyBIVE1MRWxlbWVudDtcbiAgICB9XG5cbiAgICBhZGRVcGxvYWRpbmdGaWxlcyhmaWxlOiB7IHVybDogc3RyaW5nOyBmaWxlOiBGaWxlIHwgc3RyaW5nIH0pIHtcbiAgICAgICAgdGhpcy51cGxvYWRpbmdGaWxlcy5wdXNoKGZpbGUpO1xuICAgIH1cblxuICAgIHJlbW92ZVVwbG9hZEZpbGUoZmlsZTogeyB1cmw6IHN0cmluZzsgZmlsZTogRmlsZSB8IHN0cmluZyB9KSB7XG4gICAgICAgIGlmICghZmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBsb2FkaW5nRmlsZXMuc3BsaWNlKFxuICAgICAgICAgICAgdGhpcy51cGxvYWRpbmdGaWxlcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLnVybCA9PT0gZmlsZS51cmwpLFxuICAgICAgICAgICAgMVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwbG9hZGluZ1N0YXR1cyQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5jb250YWluZXJTY3JvbGxlZCQ/LmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMudGhlRWRpdG9yUmVzaXplZCQ/LmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyUmVzaXplZCQ/LmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyUmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcbiAgICAgICAgdGhpcy50aGVFZGl0b3JSZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICAgICAgICB0aGlzLndpbmRvd1Jlc2l6ZWQkPy5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLndpbmRvd1Jlc2l6ZU9ic2VydmVyPy5kaXNjb25uZWN0KCk7XG4gICAgICAgIHRoaXMuc2Nyb2xsU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiJdfQ==
|