@talrace/ngx-noder 0.0.6 → 0.0.8
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/README.md +5 -4
- package/esm2022/lib/apart-components/add-link-dialog/add-link-dialog.component.mjs +61 -0
- package/esm2022/lib/apart-components/add-link-dialog/validation.helper.mjs +7 -0
- package/esm2022/lib/apart-components/add-link-mobile/add-link-mobile.component.mjs +47 -0
- package/esm2022/lib/apart-components/confirm-dialog/confirm-dialog.component.mjs +32 -0
- package/esm2022/lib/apart-components/editor-search/editor-search-dialog.component.mjs +64 -0
- package/esm2022/lib/apart-components/editor-title/editor-title.component.mjs +89 -0
- package/esm2022/lib/apart-components/editor-title-mobile/editor-title-mobile.component.mjs +22 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/base-toolbar.component.mjs +111 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/color-picker/color-picker.component.mjs +37 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/font/font.component.mjs +49 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/font-size/font-size.component.mjs +90 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/font-style/font-style.component.mjs +81 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/format/format.component.mjs +28 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/heading/heading.component.mjs +22 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/numbering/numbering.component.mjs +53 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/print/print.component.mjs +18 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/undo-redo/undo-redo.component.mjs +27 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/buttons/zoom/zoom.component.mjs +71 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/menu-dropdowns/menu-dropdowns.component.mjs +94 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/menu-dropdowns-mobile.component.mjs +24 -0
- package/esm2022/lib/apart-components/editor-toolbar/components/toolbar-actions/toolbar-actions.component.mjs +65 -0
- package/esm2022/lib/apart-components/editor-toolbar/editor-mobile-toolbar/editor-mobile-toolbar.component.mjs +84 -0
- package/esm2022/lib/apart-components/editor-toolbar/editor-toolbar/editor-toolbar.component.mjs +90 -0
- package/esm2022/lib/apart-components/editor-toolbar/editor-toolbar.module.mjs +117 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/constants/editor-toolbar-modes.const.mjs +8 -0
- package/esm2022/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/constants/numbering-templates.const.mjs +6 -6
- package/esm2022/lib/apart-components/editor-toolbar/shared/constants/svg-icons.const.mjs +157 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/enums/alignment.enum.mjs +8 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/enums/editor-toolbar-mode.enum.mjs +11 -0
- package/esm2022/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-template-type.enum.mjs +1 -1
- package/esm2022/lib/apart-components/editor-toolbar/shared/enums/numbering-type.enum.mjs +6 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/services/custom-icon.service.mjs +34 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/services/editor-toolbar.service.mjs +26 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/services/toolbar-core.service.mjs +60 -0
- package/esm2022/lib/apart-components/editor-toolbar/shared/toolbar-styles.helper.mjs +55 -0
- package/esm2022/lib/apart-components/insert-table/insert-table.component.mjs +54 -0
- package/esm2022/lib/apart-components/insert-table-mobile/insert-table-mobile.component.mjs +84 -0
- package/esm2022/lib/apart-components/text-format-mobile/text-format-mobile.component.mjs +123 -0
- package/esm2022/lib/editor/components/edges/edge-element.model.mjs +9 -0
- package/esm2022/lib/editor/components/edges/edge-type.enum.mjs +6 -0
- package/esm2022/lib/editor/components/edges/edge.component.mjs +99 -0
- package/esm2022/lib/editor/components/edges/edges.mjs +108 -0
- package/esm2022/lib/editor/components/edges/page-type.enum.mjs +7 -0
- package/esm2022/lib/editor/components/editor.component.mjs +112 -0
- package/esm2022/lib/editor/components/external-element/external-element.service.mjs +6 -0
- package/esm2022/lib/editor/components/external-element/external-elements.const.mjs +4 -0
- package/esm2022/lib/editor/components/external-element/external-sidenav.interface.mjs +2 -0
- package/esm2022/lib/editor/components/external-element/external.component.mjs +41 -0
- package/esm2022/lib/editor/components/external-element/models/element-data.model.mjs +9 -0
- package/esm2022/lib/editor/components/external-element/models/external-element.model.mjs +11 -0
- package/esm2022/lib/editor/components/external-element/models/external-sidenav.model.mjs +15 -0
- package/esm2022/lib/editor/components/image/components/image.component.mjs +88 -0
- package/esm2022/lib/editor/components/image/image-api.service.mjs +36 -0
- package/esm2022/lib/editor/components/image/input-handler/image-input.handler.mjs +38 -0
- package/esm2022/lib/editor/components/image/resizer/coordinate.mjs +2 -0
- package/esm2022/lib/editor/components/image/resizer/direction-wrapper.mjs +19 -0
- package/esm2022/lib/editor/components/image/resizer/direction.enum.mjs +12 -0
- package/esm2022/lib/editor/components/image/resizer/resizer.component.mjs +106 -0
- package/esm2022/lib/editor/components/image/resizer/size-delta.mjs +2 -0
- package/esm2022/lib/editor/components/image/resizer/size-wrapper.mjs +52 -0
- package/esm2022/lib/editor/components/image/size.mjs +2 -0
- package/esm2022/lib/editor/components/shared/abstract/base.component.mjs +59 -0
- package/esm2022/lib/editor/components/shared/abstract/destroy.component.mjs +18 -0
- package/esm2022/lib/editor/components/shared/custom-component.hepler.mjs +43 -0
- package/esm2022/lib/editor/components/shared/custom-components.interface.mjs +2 -0
- package/esm2022/lib/editor/components/shared/custom-content-markers.const.mjs +3 -0
- package/esm2022/lib/editor/components/shared/custom-content.mjs +2 -0
- package/esm2022/lib/editor/components/shared/services/component.service.mjs +64 -0
- package/esm2022/lib/editor/components/shared/services/custom-content.service.mjs +163 -0
- package/esm2022/lib/editor/components/shared/services/overlay.service.mjs +55 -0
- package/esm2022/lib/editor/components/tab/tab.component.mjs +44 -0
- package/esm2022/lib/editor/components/tab/tab.helper.mjs +6 -0
- package/esm2022/lib/editor/components/table/cell-resizer/cell-resizer.mjs +118 -0
- package/esm2022/lib/editor/components/table/components/table-cell.component.mjs +97 -0
- package/esm2022/lib/editor/components/table/components/table.component.mjs +401 -0
- package/esm2022/lib/{+shared/editor/core → editor/components/table}/enums/hrule.enum.mjs +1 -1
- package/esm2022/lib/editor/components/table/enums/reisizer-side.enum.mjs +8 -0
- package/esm2022/lib/editor/components/table/enums/vertical-merge.enum.mjs +6 -0
- package/esm2022/lib/editor/components/table/models/cell-data.model.mjs +18 -0
- package/esm2022/lib/editor/components/table/models/cell-resizer-parameters.model.mjs +9 -0
- package/esm2022/lib/editor/components/table/models/row-data.model.mjs +8 -0
- package/esm2022/lib/editor/components/table/models/selection-range.model.mjs +7 -0
- package/esm2022/lib/editor/components/table/overlay-menu/overlay-menu.component.mjs +74 -0
- package/esm2022/lib/editor/components/table/selection/table-selection.mjs +366 -0
- package/esm2022/lib/editor/content/constants/display-values.const.mjs +8 -0
- package/esm2022/lib/editor/content/constants/document-info.const.mjs +13 -0
- package/esm2022/lib/editor/content/constants/editor.const.mjs +62 -0
- package/esm2022/lib/editor/content/contents.interface.mjs +2 -0
- package/esm2022/lib/editor/content/display-data/display-token.model.mjs +12 -0
- package/esm2022/lib/editor/content/display-data/document.mjs +134 -0
- package/esm2022/lib/editor/content/display-data/format-ext.model.mjs +10 -0
- package/esm2022/lib/editor/content/display-data/general-properties.model.mjs +11 -0
- package/esm2022/lib/editor/content/display-data/indent.model.mjs +9 -0
- package/esm2022/lib/editor/content/display-data/line-info.model.mjs +9 -0
- package/esm2022/lib/editor/content/display-data/lines.mjs +96 -0
- package/esm2022/lib/editor/content/display-data/pages.wrap.mjs +226 -0
- package/esm2022/lib/editor/content/display-data/paragraph-info.interface.mjs +2 -0
- package/esm2022/lib/editor/content/display-data/paragraph.mjs +52 -0
- package/esm2022/lib/editor/content/display-data/text-line-info.mjs +34 -0
- package/esm2022/lib/editor/content/display-data/toolbar-styles.interface.mjs +2 -0
- package/esm2022/lib/editor/content/helpers/content-style.helper.mjs +96 -0
- package/esm2022/lib/{+shared/editor → editor/content}/helpers/format.helper.mjs +1 -1
- package/esm2022/lib/{+shared/editor → editor/content}/helpers/indexed-element.helper.mjs +1 -1
- package/esm2022/lib/editor/content/helpers/scaling.helper.mjs +9 -0
- package/esm2022/lib/editor/content/margin.model.mjs +16 -0
- package/esm2022/lib/editor/content/page-vertical-data.model.mjs +9 -0
- package/esm2022/lib/{+shared/editor/core/enums → editor/content}/vertical-alignment.enum.mjs +1 -1
- package/esm2022/lib/editor/core/event-emitting.mjs +56 -0
- package/esm2022/lib/editor/display/cell.interface.mjs +2 -0
- package/esm2022/lib/editor/display/event.helper.mjs +18 -0
- package/esm2022/lib/editor/display/layers/cursor.layer.mjs +101 -0
- package/esm2022/lib/editor/display/layers/layer.config.mjs +2 -0
- package/esm2022/lib/editor/display/layers/pages.layer.mjs +97 -0
- package/esm2022/lib/editor/display/layers/print.pages.layer.mjs +7 -0
- package/esm2022/lib/editor/display/layers/print.text.layer.mjs +7 -0
- package/esm2022/lib/editor/display/layers/selection.layer.mjs +113 -0
- package/esm2022/lib/editor/display/layers/text.layer.mjs +203 -0
- package/esm2022/lib/editor/display/print/print.helper.mjs +40 -0
- package/esm2022/lib/editor/display/print/print.renderer.mjs +67 -0
- package/esm2022/lib/editor/display/print/print.rendering.helper.mjs +7 -0
- package/esm2022/lib/editor/display/render-changes.interface.mjs +2 -0
- package/esm2022/lib/editor/display/render-changes.model.mjs +25 -0
- package/esm2022/lib/editor/display/renderer.mjs +206 -0
- package/esm2022/lib/editor/display/rendering.helper.mjs +187 -0
- package/esm2022/lib/editor/display/renderloop.mjs +26 -0
- package/esm2022/lib/editor/display/virtual.renderer.mjs +317 -0
- package/esm2022/lib/editor/display/visible-range.interface.mjs +2 -0
- package/esm2022/lib/editor/editor.module.mjs +67 -0
- package/esm2022/lib/editor/execution/distance.model.mjs +10 -0
- package/esm2022/lib/editor/execution/edit.session.mjs +1117 -0
- package/esm2022/lib/editor/execution/editor.mjs +1346 -0
- package/esm2022/lib/editor/execution/helpers/delta.helper.mjs +18 -0
- package/esm2022/lib/editor/execution/helpers/dom.helper.mjs +42 -0
- package/esm2022/lib/editor/execution/helpers/format-style.helper.mjs +64 -0
- package/esm2022/lib/editor/execution/helpers/page.helper.mjs +12 -0
- package/esm2022/lib/editor/execution/helpers/paragraph-style.helper.mjs +41 -0
- package/esm2022/lib/editor/execution/helpers/paragraph.helper.mjs +169 -0
- package/esm2022/lib/editor/execution/regulator.service.mjs +198 -0
- package/esm2022/lib/editor/execution/targeting/cell-session-source.model.mjs +19 -0
- package/esm2022/lib/editor/execution/targeting/edge-session-source.model.mjs +15 -0
- package/esm2022/lib/editor/execution/targeting/main-session-source.model.mjs +8 -0
- package/esm2022/lib/editor/execution/targeting/session-source.model.mjs +3 -0
- package/esm2022/lib/editor/execution/targeting/session.model.mjs +10 -0
- package/esm2022/lib/editor/gadgets/font-metrics/editor-version.const.mjs +2 -0
- package/esm2022/lib/editor/gadgets/font-metrics/font-metric-size.interface.mjs +2 -0
- package/esm2022/lib/editor/gadgets/font-metrics/font-metrics.helper.mjs +88 -0
- package/esm2022/lib/editor/gadgets/history/operation-history.mjs +206 -0
- package/esm2022/lib/editor/gadgets/history/operation.type.mjs +2 -0
- package/esm2022/lib/editor/gadgets/history/operations-history-info.model.mjs +7 -0
- package/esm2022/lib/editor/gadgets/numbering/numbering-data.model.mjs +9 -0
- package/esm2022/lib/{+shared/editor/core/enums → editor/gadgets/numbering}/numbering-marker-type.enum.mjs +1 -1
- package/esm2022/lib/editor/gadgets/numbering/numbering.helper.mjs +82 -0
- package/esm2022/lib/editor/gadgets/page-break/break-types.enum.mjs +7 -0
- package/esm2022/lib/editor/gadgets/page-break/break.helper.mjs +18 -0
- package/esm2022/lib/editor/gadgets/scrollbar.mjs +81 -0
- package/esm2022/lib/editor/gadgets/search/replace.interface.mjs +2 -0
- package/esm2022/lib/editor/gadgets/search/search-iteration.interface.mjs +2 -0
- package/esm2022/lib/editor/gadgets/search/search.mjs +231 -0
- package/esm2022/lib/editor/gadgets/unicode/unicode-chars.const.mjs +5 -0
- package/esm2022/lib/editor/gadgets/unicode/unicode.helper.mjs +20 -0
- package/esm2022/lib/editor/interaction/base.handler.mjs +19 -0
- package/esm2022/lib/editor/interaction/document.handler.mjs +27 -0
- package/esm2022/lib/editor/interaction/editor.service.mjs +325 -0
- package/esm2022/lib/editor/interaction/input.handler.mjs +149 -0
- package/esm2022/lib/{+shared/enums → editor/interaction}/mode.enum.mjs +1 -1
- package/esm2022/lib/editor/interaction/mouse-button.enum.mjs +7 -0
- package/esm2022/lib/editor/interaction/mouse.handler.mjs +49 -0
- package/esm2022/lib/editor/interaction/text-input.mjs +53 -0
- package/esm2022/lib/editor/operations/commands.service.mjs +20 -0
- package/esm2022/lib/editor/operations/enums/command-type.enum.mjs +32 -0
- package/esm2022/lib/editor/operations/enums/target-type.enum.mjs +7 -0
- package/esm2022/lib/editor/operations/helpers/break-operations.helper.mjs +9 -0
- package/esm2022/lib/editor/operations/helpers/content-operations.helper.mjs +15 -0
- package/esm2022/lib/editor/operations/helpers/format-operations.helper.mjs +55 -0
- package/esm2022/lib/editor/operations/helpers/image-operations.helper.mjs +19 -0
- package/esm2022/lib/editor/operations/helpers/indexed-element-operations.helper.mjs +43 -0
- package/esm2022/lib/editor/operations/helpers/link-operations.helper.mjs +28 -0
- package/esm2022/lib/editor/operations/helpers/numbering-operations.helper.mjs +55 -0
- package/esm2022/lib/editor/operations/helpers/paragraph-operations.helper.mjs +114 -0
- package/esm2022/lib/editor/operations/helpers/tab-operations.helper.mjs +16 -0
- package/esm2022/lib/editor/operations/helpers/table-operations.helper.mjs +374 -0
- package/esm2022/lib/editor/operations/operations-helper.helper.mjs +432 -0
- package/esm2022/lib/editor/operations/save-commands.helper.mjs +127 -0
- package/esm2022/lib/editor/operations/target-operations.helper.mjs +23 -0
- package/esm2022/lib/editor/positioning/alignments.const.mjs +8 -0
- package/esm2022/lib/editor/positioning/content.helper.mjs +36 -0
- package/esm2022/lib/editor/positioning/cursor-paragraph.mjs +13 -0
- package/esm2022/lib/editor/positioning/cursor-position.interface.mjs +2 -0
- package/esm2022/lib/editor/positioning/insert-index.interface.mjs +2 -0
- package/esm2022/lib/editor/positioning/line-width.helper.mjs +13 -0
- package/esm2022/lib/editor/positioning/position.helper.mjs +194 -0
- package/esm2022/lib/editor/positioning/range.mjs +94 -0
- package/esm2022/lib/editor/positioning/selection.mjs +307 -0
- package/esm2022/lib/editor/revision.helper.mjs +91 -0
- package/esm2022/lib/models/generated/command.model.mjs +5 -1
- package/esm2022/lib/models/generated/insert-paragraph.model.mjs +20 -0
- package/esm2022/lib/models/generated/replace.model.mjs +5 -1
- package/esm2022/public-api.mjs +36 -33
- package/fesm2022/talrace-ngx-noder.mjs +3583 -3278
- package/fesm2022/talrace-ngx-noder.mjs.map +1 -1
- package/lib/{+shared → apart-components}/add-link-dialog/add-link-dialog.component.d.ts +1 -1
- package/lib/apart-components/add-link-mobile/add-link-mobile.component.d.ts +19 -0
- package/lib/{+shared → apart-components}/confirm-dialog/confirm-dialog.component.d.ts +1 -1
- package/lib/{+shared → apart-components}/editor-search/editor-search-dialog.component.d.ts +6 -7
- package/lib/{+shared → apart-components}/editor-title/editor-title.component.d.ts +4 -3
- package/lib/apart-components/editor-title-mobile/editor-title-mobile.component.d.ts +6 -0
- package/lib/apart-components/editor-toolbar/components/base-toolbar.component.d.ts +49 -0
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/color-picker/color-picker.component.d.ts +1 -1
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font/font.component.d.ts +2 -2
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-size/font-size.component.d.ts +1 -1
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-style/font-style.component.d.ts +1 -1
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/format/format.component.d.ts +2 -2
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/heading/heading.component.d.ts +1 -1
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/numbering/numbering.component.d.ts +3 -3
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/print/print.component.d.ts +1 -1
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/undo-redo/undo-redo.component.d.ts +1 -1
- package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/zoom/zoom.component.d.ts +1 -1
- package/lib/apart-components/editor-toolbar/components/menu-dropdowns/menu-dropdowns.component.d.ts +36 -0
- package/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/menu-dropdowns-mobile.component.d.ts +14 -0
- package/lib/apart-components/editor-toolbar/components/toolbar-actions/toolbar-actions.component.d.ts +23 -0
- package/lib/apart-components/editor-toolbar/editor-mobile-toolbar/editor-mobile-toolbar.component.d.ts +26 -0
- package/lib/apart-components/editor-toolbar/editor-toolbar/editor-toolbar.component.d.ts +40 -0
- package/lib/apart-components/editor-toolbar/editor-toolbar.module.d.ts +32 -0
- package/lib/apart-components/editor-toolbar/shared/constants/editor-toolbar-modes.const.d.ts +2 -0
- package/lib/apart-components/editor-toolbar/shared/constants/numbering-templates.const.d.ts +6 -0
- package/lib/apart-components/editor-toolbar/shared/enums/editor-toolbar-mode.enum.d.ts +9 -0
- package/lib/apart-components/editor-toolbar/shared/services/editor-toolbar.service.d.ts +14 -0
- package/lib/apart-components/editor-toolbar/shared/services/toolbar-core.service.d.ts +38 -0
- package/lib/{+shared/editor-toolbar/helpers → apart-components/editor-toolbar/shared}/toolbar-styles.helper.d.ts +2 -2
- package/lib/{+shared → apart-components}/insert-table/insert-table.component.d.ts +1 -1
- package/lib/apart-components/insert-table-mobile/insert-table-mobile.component.d.ts +30 -0
- package/lib/apart-components/text-format-mobile/text-format-mobile.component.d.ts +35 -0
- package/lib/{+shared/editor/core/models → editor/components/edges}/edge-element.model.d.ts +1 -1
- package/lib/editor/components/edges/edge.component.d.ts +44 -0
- package/lib/{+shared/editor/core → editor}/components/edges/edges.d.ts +7 -7
- package/lib/{+shared/editor → editor/components}/editor.component.d.ts +10 -7
- package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-sidenav.interface.d.ts +1 -1
- package/lib/{+shared/editor/custom-components → editor/components}/external-element/external.component.d.ts +4 -4
- package/lib/{+shared/editor/custom-components → editor/components}/image/components/image.component.d.ts +4 -4
- package/lib/editor/components/image/image-api.service.d.ts +17 -0
- package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/resizer.component.d.ts +2 -2
- package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/size-wrapper.d.ts +1 -1
- package/lib/{+shared/editor/custom-components → editor/components}/shared/abstract/base.component.d.ts +4 -4
- package/lib/editor/components/shared/abstract/destroy.component.d.ts +9 -0
- package/lib/{+shared/editor/custom-components/shared/helpers → editor/components/shared}/custom-component.hepler.d.ts +3 -3
- package/lib/editor/components/shared/custom-components.interface.d.ts +13 -0
- package/lib/editor/components/shared/custom-content.d.ts +5 -0
- package/lib/{+shared/editor/custom-components/shared/services/component → editor/components/shared/services}/component.service.d.ts +1 -1
- package/lib/{+shared/editor/custom-components/shared/services/custom-content → editor/components/shared/services}/custom-content.service.d.ts +14 -12
- package/lib/{+shared/editor/custom-components → editor/components}/tab/tab.component.d.ts +2 -2
- package/lib/{+shared/editor/custom-components → editor/components}/table/cell-resizer/cell-resizer.d.ts +1 -1
- package/lib/{+shared/editor/custom-components → editor/components}/table/components/table-cell.component.d.ts +10 -10
- package/lib/{+shared/editor/custom-components → editor/components}/table/components/table.component.d.ts +8 -8
- package/lib/{+shared/editor/custom-components → editor/components}/table/overlay-menu/overlay-menu.component.d.ts +2 -2
- package/lib/{+shared/editor/custom-components → editor/components}/table/selection/table-selection.d.ts +3 -3
- package/lib/{+shared/editor/core → editor/content}/constants/editor.const.d.ts +3 -3
- package/lib/editor/content/contents.interface.d.ts +22 -0
- package/lib/{+shared/editor/core/models → editor/content/display-data}/display-token.model.d.ts +1 -1
- package/lib/{+shared/editor/core → editor/content/display-data}/document.d.ts +9 -9
- package/lib/{+shared/editor/core/models → editor/content/display-data}/format-ext.model.d.ts +1 -1
- package/lib/{+shared/editor/execution/models → editor/content/display-data}/general-properties.model.d.ts +1 -1
- package/lib/{+shared/editor/core/layers → editor/content/display-data}/lines.d.ts +1 -1
- package/lib/{+shared/editor/core/paging → editor/content/display-data}/pages.wrap.d.ts +13 -13
- package/lib/{+shared/editor/core/paging → editor/content/display-data}/paragraph.d.ts +4 -4
- package/lib/{+shared/editor/core/paging → editor/content/display-data}/text-line-info.d.ts +2 -2
- package/lib/editor/content/helpers/content-style.helper.d.ts +11 -0
- package/lib/{+shared/editor → editor/content}/helpers/indexed-element.helper.d.ts +1 -1
- package/lib/{+shared/editor/core/paging → editor/content}/page-vertical-data.model.d.ts +1 -1
- package/lib/{+shared/editor/core/base → editor/core}/event-emitting.d.ts +0 -5
- package/lib/{+shared/editor/core → editor/display}/layers/cursor.layer.d.ts +7 -8
- package/lib/{+shared/editor/core/interfaces → editor/display/layers}/layer.config.d.ts +2 -2
- package/lib/{+shared/editor/core → editor/display}/layers/pages.layer.d.ts +5 -6
- package/lib/editor/display/layers/print.text.layer.d.ts +4 -0
- package/lib/{+shared/editor/core → editor/display}/layers/selection.layer.d.ts +5 -6
- package/lib/editor/display/layers/text.layer.d.ts +34 -0
- package/lib/{+shared/helpers → editor/display/print}/print.helper.d.ts +3 -3
- package/lib/editor/display/print/print.renderer.d.ts +23 -0
- package/lib/{+shared/editor/core/helpers → editor/display/print}/print.rendering.helper.d.ts +2 -2
- package/lib/{+shared/editor/core/models → editor/display}/render-changes.model.d.ts +1 -1
- package/lib/{+shared/editor/core → editor/display}/renderer.d.ts +10 -13
- package/lib/{+shared/editor/core/helpers → editor/display}/rendering.helper.d.ts +7 -7
- package/lib/{+shared/editor/core/layers → editor/display}/renderloop.d.ts +2 -2
- package/lib/{+shared/editor/core → editor/display}/virtual.renderer.d.ts +14 -29
- package/lib/{+shared/editor → editor}/editor.module.d.ts +12 -10
- package/lib/{+shared/editor/core → editor/execution}/edit.session.d.ts +65 -63
- package/lib/{+shared/editor/core → editor/execution}/editor.d.ts +48 -43
- package/lib/editor/execution/helpers/delta.helper.d.ts +6 -0
- package/lib/{+shared/editor/core → editor/execution}/helpers/format-style.helper.d.ts +3 -5
- package/lib/{+shared/editor/core → editor/execution}/helpers/page.helper.d.ts +1 -1
- package/lib/{+shared/editor/core → editor/execution}/helpers/paragraph-style.helper.d.ts +1 -1
- package/lib/{+shared/editor/core → editor/execution}/helpers/paragraph.helper.d.ts +11 -8
- package/lib/{+shared/editor → editor}/execution/regulator.service.d.ts +15 -14
- package/lib/{+shared/editor/execution/models → editor/execution/targeting}/cell-session-source.model.d.ts +3 -3
- package/lib/{+shared/editor/execution/models → editor/execution/targeting}/edge-session-source.model.d.ts +3 -3
- package/lib/{+shared/editor/execution/models → editor/execution/targeting}/main-session-source.model.d.ts +1 -1
- package/lib/{+shared/editor/execution/models → editor/execution/targeting}/session-source.model.d.ts +1 -1
- package/lib/{+shared/editor/execution/models → editor/execution/targeting}/session.model.d.ts +3 -3
- package/lib/{+shared/editor/core/helpers → editor/gadgets/font-metrics}/font-metrics.helper.d.ts +1 -1
- package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operation-history.d.ts +9 -7
- package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operation.type.d.ts +2 -1
- package/lib/{+shared/editor/core/models → editor/gadgets/numbering}/numbering-data.model.d.ts +1 -1
- package/lib/{+shared/editor/core/helpers → editor/gadgets/numbering}/numbering.helper.d.ts +8 -8
- package/lib/{+shared/editor/helpers → editor/gadgets/page-break}/break.helper.d.ts +2 -2
- package/lib/{+shared/editor/core/layers → editor/gadgets}/scrollbar.d.ts +9 -18
- package/lib/{+shared/editor/core → editor/gadgets/search}/search.d.ts +4 -4
- package/lib/editor/interaction/base.handler.d.ts +9 -0
- package/lib/editor/interaction/document.handler.d.ts +10 -0
- package/lib/{+shared/editor → editor}/interaction/editor.service.d.ts +24 -18
- package/lib/{+shared/editor → editor}/interaction/input.handler.d.ts +4 -5
- package/lib/{+shared/editor → editor}/interaction/mouse.handler.d.ts +1 -1
- package/lib/{+shared/editor → editor}/operations/enums/command-type.enum.d.ts +11 -10
- package/lib/{+shared/editor → editor}/operations/helpers/break-operations.helper.d.ts +2 -2
- package/lib/{+shared/editor → editor}/operations/helpers/format-operations.helper.d.ts +2 -2
- package/lib/editor/operations/helpers/image-operations.helper.d.ts +7 -0
- package/lib/{+shared/editor → editor}/operations/helpers/indexed-element-operations.helper.d.ts +1 -1
- package/lib/{+shared/editor → editor}/operations/helpers/link-operations.helper.d.ts +1 -1
- package/lib/{+shared/editor → editor}/operations/helpers/numbering-operations.helper.d.ts +3 -3
- package/lib/{+shared/editor → editor}/operations/helpers/paragraph-operations.helper.d.ts +3 -2
- package/lib/{+shared/editor → editor}/operations/helpers/tab-operations.helper.d.ts +1 -1
- package/lib/{+shared/editor → editor}/operations/helpers/table-operations.helper.d.ts +6 -6
- package/lib/{+shared/editor/operations/helpers → editor/operations}/operations-helper.helper.d.ts +21 -19
- package/lib/{+shared/editor/operations/helpers → editor/operations}/save-commands.helper.d.ts +28 -22
- package/lib/editor/operations/target-operations.helper.d.ts +6 -0
- package/lib/{+shared/editor/helpers → editor/positioning}/content.helper.d.ts +10 -5
- package/lib/editor/positioning/cursor-paragraph.d.ts +7 -0
- package/lib/{+shared/editor/core/interfaces → editor/positioning}/cursor-position.interface.d.ts +1 -1
- package/lib/{+shared/editor/core/helpers → editor/positioning}/line-width.helper.d.ts +2 -2
- package/lib/{+shared/editor/core/helpers → editor/positioning}/position.helper.d.ts +9 -9
- package/lib/{+shared/editor/core → editor/positioning}/range.d.ts +12 -12
- package/lib/{+shared/editor → editor}/positioning/selection.d.ts +10 -10
- package/lib/editor/revision.helper.d.ts +15 -0
- package/lib/models/generated/command.model.d.ts +2 -0
- package/lib/models/generated/insert-paragraph.model.d.ts +10 -0
- package/lib/models/generated/replace.model.d.ts +2 -0
- package/package.json +1 -1
- package/public-api.d.ts +35 -32
- package/src/_ngx-noder.theme.scss +14 -9
- package/src/assets/fonts/nc-iconfont.css +112 -106
- package/src/assets/fonts/nc-iconfont.eot +0 -0
- package/src/assets/fonts/nc-iconfont.svg +4 -1
- package/src/assets/fonts/nc-iconfont.ttf +0 -0
- package/src/assets/fonts/nc-iconfont.woff +0 -0
- package/src/lib/{+shared → apart-components}/add-link-dialog/_add-link-dialog.theme.scss +1 -1
- package/src/lib/apart-components/add-link-mobile/_add-link-mobile.theme.scss +25 -0
- package/src/lib/{+shared → apart-components}/confirm-dialog/_theme.scss +1 -1
- package/src/lib/{+shared → apart-components}/editor-title/_editor-title.theme.scss +1 -1
- package/src/lib/apart-components/editor-title-mobile/_editor-title-mobile.theme.scss +42 -0
- package/src/lib/apart-components/editor-toolbar/_editor-toolbar.theme.scss +27 -0
- package/src/lib/apart-components/editor-toolbar/_theme.scss +25 -0
- package/src/lib/apart-components/editor-toolbar/components/buttons/color-picker/_color-picker.theme.scss +12 -0
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font/_font.theme.scss +1 -1
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-size/_font-size.theme.scss +1 -1
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-style/_font-style.theme.scss +1 -1
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/format/_format.theme.scss +1 -1
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/numbering/_numbering.theme.scss +1 -1
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/undo-redo/_undo-redo.theme.scss +1 -1
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components}/menu-dropdowns/_menu-dropdowns.theme.scss +1 -1
- package/src/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/_menu-dropdowns-mobile.theme.scss +33 -0
- package/src/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components}/toolbar-actions/_toolbar-actions.theme.scss +2 -1
- package/src/lib/{+shared → apart-components}/insert-table/_insert-table.theme.scss +1 -1
- package/src/lib/apart-components/insert-table-mobile/_insert-table-mobile.theme.scss +54 -0
- package/src/lib/apart-components/text-format-mobile/_text-format-mobile.theme.scss +86 -0
- package/src/lib/{+shared/editor → editor}/_theme.scss +1 -1
- package/src/lib/{+shared/editor → editor/components}/_editor.theme.scss +10 -2
- package/src/scss/base-editor.scss +329 -0
- package/src/styles.scss +3 -58
- package/esm2022/lib/+shared/abstract/base-api.service.mjs +0 -99
- package/esm2022/lib/+shared/abstract/observer.component.mjs +0 -24
- package/esm2022/lib/+shared/add-link-dialog/add-link-dialog.component.mjs +0 -71
- package/esm2022/lib/+shared/confirm-dialog/confirm-dialog.component.mjs +0 -32
- package/esm2022/lib/+shared/constants/default-file-name.const.mjs +0 -2
- package/esm2022/lib/+shared/constants/paginator-sizes.const.mjs +0 -3
- package/esm2022/lib/+shared/editor/core/base/event-emitting.mjs +0 -71
- package/esm2022/lib/+shared/editor/core/components/edges/edge-type.enum.mjs +0 -6
- package/esm2022/lib/+shared/editor/core/components/edges/edge.component.mjs +0 -100
- package/esm2022/lib/+shared/editor/core/components/edges/edges.mjs +0 -104
- package/esm2022/lib/+shared/editor/core/constants/alignments.const.mjs +0 -8
- package/esm2022/lib/+shared/editor/core/constants/clipboardEventTypes.const.mjs +0 -6
- package/esm2022/lib/+shared/editor/core/constants/content-style-change.const.mjs +0 -15
- package/esm2022/lib/+shared/editor/core/constants/display-values.const.mjs +0 -8
- package/esm2022/lib/+shared/editor/core/constants/document-info.const.mjs +0 -13
- package/esm2022/lib/+shared/editor/core/constants/editor-version.const.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/constants/editor.const.mjs +0 -62
- package/esm2022/lib/+shared/editor/core/constants/unicode-chars.const.mjs +0 -5
- package/esm2022/lib/+shared/editor/core/document.mjs +0 -134
- package/esm2022/lib/+shared/editor/core/edit.session.mjs +0 -1099
- package/esm2022/lib/+shared/editor/core/editor.mjs +0 -1274
- package/esm2022/lib/+shared/editor/core/enums/break-types.enum.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/enums/mouse-button.enum.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/enums/page-type.enum.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/helpers/content-style.helper.mjs +0 -156
- package/esm2022/lib/+shared/editor/core/helpers/delta.helper.mjs +0 -18
- package/esm2022/lib/+shared/editor/core/helpers/dom.helper.mjs +0 -42
- package/esm2022/lib/+shared/editor/core/helpers/event.helper.mjs +0 -18
- package/esm2022/lib/+shared/editor/core/helpers/font-metrics.helper.mjs +0 -88
- package/esm2022/lib/+shared/editor/core/helpers/format-style.helper.mjs +0 -72
- package/esm2022/lib/+shared/editor/core/helpers/line-width.helper.mjs +0 -13
- package/esm2022/lib/+shared/editor/core/helpers/numbering.helper.mjs +0 -83
- package/esm2022/lib/+shared/editor/core/helpers/page.helper.mjs +0 -12
- package/esm2022/lib/+shared/editor/core/helpers/paragraph-style.helper.mjs +0 -41
- package/esm2022/lib/+shared/editor/core/helpers/paragraph.helper.mjs +0 -169
- package/esm2022/lib/+shared/editor/core/helpers/position.helper.mjs +0 -194
- package/esm2022/lib/+shared/editor/core/helpers/print.rendering.helper.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/helpers/rendering.helper.mjs +0 -187
- package/esm2022/lib/+shared/editor/core/helpers/unicode.helper.mjs +0 -20
- package/esm2022/lib/+shared/editor/core/interfaces/cell.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/cursor-position.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/font-metric-size.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/layer.config.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/paragraph-info.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/render-changes.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/replace.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/search-iteration.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/toolbar-styles.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/visible-line-info.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/interfaces/visible-range.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/core/keyboard/text-input.mjs +0 -53
- package/esm2022/lib/+shared/editor/core/layers/cursor.layer.mjs +0 -103
- package/esm2022/lib/+shared/editor/core/layers/edges.layer.mjs +0 -99
- package/esm2022/lib/+shared/editor/core/layers/lines.mjs +0 -96
- package/esm2022/lib/+shared/editor/core/layers/pages.layer.mjs +0 -106
- package/esm2022/lib/+shared/editor/core/layers/print.edges.layer.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/layers/print.pages.layer.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/layers/print.text.layer.mjs +0 -7
- package/esm2022/lib/+shared/editor/core/layers/renderloop.mjs +0 -26
- package/esm2022/lib/+shared/editor/core/layers/scrollbar.mjs +0 -100
- package/esm2022/lib/+shared/editor/core/layers/selection.layer.mjs +0 -115
- package/esm2022/lib/+shared/editor/core/layers/text.layer.mjs +0 -124
- package/esm2022/lib/+shared/editor/core/models/display-token.model.mjs +0 -12
- package/esm2022/lib/+shared/editor/core/models/distance.model.mjs +0 -10
- package/esm2022/lib/+shared/editor/core/models/edge-element.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/core/models/format-ext.model.mjs +0 -10
- package/esm2022/lib/+shared/editor/core/models/indent.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/core/models/line-info.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/core/models/margin.model.mjs +0 -16
- package/esm2022/lib/+shared/editor/core/models/numbering-data.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/core/models/render-changes.model.mjs +0 -25
- package/esm2022/lib/+shared/editor/core/paging/page-vertical-data.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/core/paging/pages.wrap.mjs +0 -226
- package/esm2022/lib/+shared/editor/core/paging/paragraph.mjs +0 -52
- package/esm2022/lib/+shared/editor/core/paging/text-line-info.mjs +0 -34
- package/esm2022/lib/+shared/editor/core/point.mjs +0 -13
- package/esm2022/lib/+shared/editor/core/print.renderer.mjs +0 -72
- package/esm2022/lib/+shared/editor/core/range.mjs +0 -94
- package/esm2022/lib/+shared/editor/core/renderer.mjs +0 -217
- package/esm2022/lib/+shared/editor/core/search.mjs +0 -231
- package/esm2022/lib/+shared/editor/core/virtual.renderer.mjs +0 -356
- package/esm2022/lib/+shared/editor/custom-components/external-element/external-element.service.mjs +0 -6
- package/esm2022/lib/+shared/editor/custom-components/external-element/external-elements.const.mjs +0 -4
- package/esm2022/lib/+shared/editor/custom-components/external-element/external-sidenav.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/custom-components/external-element/external.component.mjs +0 -41
- package/esm2022/lib/+shared/editor/custom-components/external-element/models/element-data.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-element.model.mjs +0 -11
- package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-sidenav.model.mjs +0 -15
- package/esm2022/lib/+shared/editor/custom-components/image/components/image.component.mjs +0 -88
- package/esm2022/lib/+shared/editor/custom-components/image/input-handler/image-input.handler.mjs +0 -38
- package/esm2022/lib/+shared/editor/custom-components/image/interfaces/size.mjs +0 -2
- package/esm2022/lib/+shared/editor/custom-components/image/resizer/coordinate.mjs +0 -2
- package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction-wrapper.mjs +0 -19
- package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction.enum.mjs +0 -12
- package/esm2022/lib/+shared/editor/custom-components/image/resizer/resizer.component.mjs +0 -106
- package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-delta.mjs +0 -2
- package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-wrapper.mjs +0 -52
- package/esm2022/lib/+shared/editor/custom-components/image/services/image-api.service.mjs +0 -14
- package/esm2022/lib/+shared/editor/custom-components/shared/abstract/base.component.mjs +0 -59
- package/esm2022/lib/+shared/editor/custom-components/shared/constants/custom-content-markers.const.mjs +0 -3
- package/esm2022/lib/+shared/editor/custom-components/shared/helpers/custom-component.hepler.mjs +0 -43
- package/esm2022/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/custom-components/shared/services/component/component.service.mjs +0 -64
- package/esm2022/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.mjs +0 -115
- package/esm2022/lib/+shared/editor/custom-components/shared/services/overlay/overlay.service.mjs +0 -55
- package/esm2022/lib/+shared/editor/custom-components/shared/types/custom-content.mjs +0 -2
- package/esm2022/lib/+shared/editor/custom-components/tab/tab.component.mjs +0 -44
- package/esm2022/lib/+shared/editor/custom-components/table/cell-resizer/cell-resizer.mjs +0 -118
- package/esm2022/lib/+shared/editor/custom-components/table/components/table-cell.component.mjs +0 -97
- package/esm2022/lib/+shared/editor/custom-components/table/components/table.component.mjs +0 -401
- package/esm2022/lib/+shared/editor/custom-components/table/enums/reisizer-side.enum.mjs +0 -8
- package/esm2022/lib/+shared/editor/custom-components/table/enums/vertical-merge.enum.mjs +0 -6
- package/esm2022/lib/+shared/editor/custom-components/table/models/cell-data.model.mjs +0 -18
- package/esm2022/lib/+shared/editor/custom-components/table/models/cell-resizer-parameters.model.mjs +0 -9
- package/esm2022/lib/+shared/editor/custom-components/table/models/row-data.model.mjs +0 -8
- package/esm2022/lib/+shared/editor/custom-components/table/models/selection-range.model.mjs +0 -7
- package/esm2022/lib/+shared/editor/custom-components/table/overlay-menu/overlay-menu.component.mjs +0 -74
- package/esm2022/lib/+shared/editor/custom-components/table/selection/table-selection.mjs +0 -364
- package/esm2022/lib/+shared/editor/editor.component.mjs +0 -98
- package/esm2022/lib/+shared/editor/editor.module.mjs +0 -82
- package/esm2022/lib/+shared/editor/execution/models/cell-session-source.model.mjs +0 -19
- package/esm2022/lib/+shared/editor/execution/models/edge-session-source.model.mjs +0 -15
- package/esm2022/lib/+shared/editor/execution/models/general-properties.model.mjs +0 -11
- package/esm2022/lib/+shared/editor/execution/models/main-session-source.model.mjs +0 -8
- package/esm2022/lib/+shared/editor/execution/models/session-source.model.mjs +0 -3
- package/esm2022/lib/+shared/editor/execution/models/session.model.mjs +0 -10
- package/esm2022/lib/+shared/editor/execution/regulator.service.mjs +0 -203
- package/esm2022/lib/+shared/editor/helpers/break.helper.mjs +0 -18
- package/esm2022/lib/+shared/editor/helpers/content.helper.mjs +0 -30
- package/esm2022/lib/+shared/editor/helpers/tab.helper.mjs +0 -6
- package/esm2022/lib/+shared/editor/interaction/editor.service.mjs +0 -309
- package/esm2022/lib/+shared/editor/interaction/input.handler.mjs +0 -160
- package/esm2022/lib/+shared/editor/interaction/mouse.handler.mjs +0 -49
- package/esm2022/lib/+shared/editor/interfaces/contents.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/interfaces/insert-index.interface.mjs +0 -2
- package/esm2022/lib/+shared/editor/operation-history/operation-history.mjs +0 -184
- package/esm2022/lib/+shared/editor/operation-history/operation.type.mjs +0 -2
- package/esm2022/lib/+shared/editor/operation-history/operations-history-info.model.mjs +0 -7
- package/esm2022/lib/+shared/editor/operations/enums/command-type.enum.mjs +0 -31
- package/esm2022/lib/+shared/editor/operations/enums/target-type.enum.mjs +0 -7
- package/esm2022/lib/+shared/editor/operations/helpers/break-operations.helper.mjs +0 -9
- package/esm2022/lib/+shared/editor/operations/helpers/content-operations.helper.mjs +0 -15
- package/esm2022/lib/+shared/editor/operations/helpers/format-operations.helper.mjs +0 -56
- package/esm2022/lib/+shared/editor/operations/helpers/image-operations.helper.mjs +0 -19
- package/esm2022/lib/+shared/editor/operations/helpers/indexed-element-operations.helper.mjs +0 -43
- package/esm2022/lib/+shared/editor/operations/helpers/link-operations.helper.mjs +0 -28
- package/esm2022/lib/+shared/editor/operations/helpers/numbering-operations.helper.mjs +0 -55
- package/esm2022/lib/+shared/editor/operations/helpers/operations-helper.helper.mjs +0 -394
- package/esm2022/lib/+shared/editor/operations/helpers/paragraph-operations.helper.mjs +0 -83
- package/esm2022/lib/+shared/editor/operations/helpers/save-commands.helper.mjs +0 -118
- package/esm2022/lib/+shared/editor/operations/helpers/tab-operations.helper.mjs +0 -16
- package/esm2022/lib/+shared/editor/operations/helpers/table-operations.helper.mjs +0 -374
- package/esm2022/lib/+shared/editor/operations/helpers/target-operations.helper.mjs +0 -23
- package/esm2022/lib/+shared/editor/positioning/selection.mjs +0 -307
- package/esm2022/lib/+shared/editor/store/editor.actions.mjs +0 -13
- package/esm2022/lib/+shared/editor-search/editor-search-dialog.component.mjs +0 -71
- package/esm2022/lib/+shared/editor-title/editor-title.component.mjs +0 -83
- package/esm2022/lib/+shared/editor-toolbar/color-picker/color-picker.component.mjs +0 -32
- package/esm2022/lib/+shared/editor-toolbar/constants/svg-icons.const.mjs +0 -157
- package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.component.mjs +0 -101
- package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.module.mjs +0 -117
- package/esm2022/lib/+shared/editor-toolbar/enums/alignment.enum.mjs +0 -8
- package/esm2022/lib/+shared/editor-toolbar/enums/numbering-type.enum.mjs +0 -6
- package/esm2022/lib/+shared/editor-toolbar/font/font.component.mjs +0 -45
- package/esm2022/lib/+shared/editor-toolbar/font-size/font-size.component.mjs +0 -85
- package/esm2022/lib/+shared/editor-toolbar/font-style/font-style.component.mjs +0 -80
- package/esm2022/lib/+shared/editor-toolbar/format/format.component.mjs +0 -28
- package/esm2022/lib/+shared/editor-toolbar/heading/heading.component.mjs +0 -23
- package/esm2022/lib/+shared/editor-toolbar/helpers/toolbar-styles.helper.mjs +0 -55
- package/esm2022/lib/+shared/editor-toolbar/menu-dropdowns/menu-dropdowns.component.mjs +0 -194
- package/esm2022/lib/+shared/editor-toolbar/numbering/numbering.component.mjs +0 -53
- package/esm2022/lib/+shared/editor-toolbar/print/print.component.mjs +0 -18
- package/esm2022/lib/+shared/editor-toolbar/toolbar-actions/toolbar-actions.component.mjs +0 -126
- package/esm2022/lib/+shared/editor-toolbar/undo-redo/undo-redo.component.mjs +0 -27
- package/esm2022/lib/+shared/editor-toolbar/zoom/zoom.component.mjs +0 -74
- package/esm2022/lib/+shared/helpers/print.helper.mjs +0 -40
- package/esm2022/lib/+shared/helpers/revision.helper.mjs +0 -91
- package/esm2022/lib/+shared/helpers/scaling.helper.mjs +0 -9
- package/esm2022/lib/+shared/helpers/validation.helper.mjs +0 -7
- package/esm2022/lib/+shared/insert-table/insert-table.component.mjs +0 -54
- package/esm2022/lib/+shared/services/commands.service.mjs +0 -20
- package/esm2022/lib/+shared/services/custom-icon.service.mjs +0 -34
- package/lib/+shared/abstract/base-api.service.d.ts +0 -23
- package/lib/+shared/abstract/observer.component.d.ts +0 -10
- package/lib/+shared/constants/default-file-name.const.d.ts +0 -1
- package/lib/+shared/constants/paginator-sizes.const.d.ts +0 -2
- package/lib/+shared/editor/core/components/edges/edge.component.d.ts +0 -45
- package/lib/+shared/editor/core/constants/clipboardEventTypes.const.d.ts +0 -5
- package/lib/+shared/editor/core/constants/content-style-change.const.d.ts +0 -14
- package/lib/+shared/editor/core/helpers/content-style.helper.d.ts +0 -16
- package/lib/+shared/editor/core/helpers/delta.helper.d.ts +0 -6
- package/lib/+shared/editor/core/interfaces/visible-line-info.interface.d.ts +0 -5
- package/lib/+shared/editor/core/layers/edges.layer.d.ts +0 -24
- package/lib/+shared/editor/core/layers/print.edges.layer.d.ts +0 -4
- package/lib/+shared/editor/core/layers/print.text.layer.d.ts +0 -5
- package/lib/+shared/editor/core/layers/text.layer.d.ts +0 -22
- package/lib/+shared/editor/core/point.d.ts +0 -7
- package/lib/+shared/editor/core/print.renderer.d.ts +0 -25
- package/lib/+shared/editor/custom-components/image/services/image-api.service.d.ts +0 -8
- package/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.d.ts +0 -13
- package/lib/+shared/editor/custom-components/shared/types/custom-content.d.ts +0 -5
- package/lib/+shared/editor/interfaces/contents.interface.d.ts +0 -22
- package/lib/+shared/editor/operations/helpers/image-operations.helper.d.ts +0 -7
- package/lib/+shared/editor/operations/helpers/target-operations.helper.d.ts +0 -6
- package/lib/+shared/editor/store/editor.actions.d.ts +0 -11
- package/lib/+shared/editor-toolbar/constants/numbering-templates.const.d.ts +0 -6
- package/lib/+shared/editor-toolbar/editor-toolbar.component.d.ts +0 -45
- package/lib/+shared/editor-toolbar/editor-toolbar.module.d.ts +0 -31
- package/lib/+shared/editor-toolbar/menu-dropdowns/menu-dropdowns.component.d.ts +0 -73
- package/lib/+shared/editor-toolbar/toolbar-actions/toolbar-actions.component.d.ts +0 -49
- package/lib/+shared/helpers/revision.helper.d.ts +0 -15
- package/src/lib/+shared/editor-toolbar/_editor-toolbar.theme.scss +0 -10
- package/src/lib/+shared/editor-toolbar/_theme.scss +0 -21
- package/src/scss/_mixins.scss +0 -14
- package/src/scss/_variables.scss +0 -1
- /package/lib/{+shared/helpers → apart-components/add-link-dialog}/validation.helper.d.ts +0 -0
- /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/constants/svg-icons.const.d.ts +0 -0
- /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/alignment.enum.d.ts +0 -0
- /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-template-type.enum.d.ts +0 -0
- /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-type.enum.d.ts +0 -0
- /package/lib/{+shared → apart-components/editor-toolbar/shared}/services/custom-icon.service.d.ts +0 -0
- /package/lib/{+shared/editor/core → editor}/components/edges/edge-type.enum.d.ts +0 -0
- /package/lib/{+shared/editor/core/enums → editor/components/edges}/page-type.enum.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-element.service.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-elements.const.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/element-data.model.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/external-element.model.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/external-sidenav.model.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/image/input-handler/image-input.handler.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/coordinate.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/direction-wrapper.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/direction.enum.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/size-delta.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components/image/interfaces → editor/components/image}/size.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components/shared/constants → editor/components/shared}/custom-content-markers.const.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components/shared/services/overlay → editor/components/shared/services}/overlay.service.d.ts +0 -0
- /package/lib/{+shared/editor/helpers → editor/components/tab}/tab.helper.d.ts +0 -0
- /package/lib/{+shared/editor/core → editor/components/table}/enums/hrule.enum.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/table/enums/reisizer-side.enum.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/table/enums/vertical-merge.enum.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/table/models/cell-data.model.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/table/models/cell-resizer-parameters.model.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/table/models/row-data.model.d.ts +0 -0
- /package/lib/{+shared/editor/custom-components → editor/components}/table/models/selection-range.model.d.ts +0 -0
- /package/lib/{+shared/editor/core → editor/content}/constants/display-values.const.d.ts +0 -0
- /package/lib/{+shared/editor/core → editor/content}/constants/document-info.const.d.ts +0 -0
- /package/lib/{+shared/editor/core/models → editor/content/display-data}/indent.model.d.ts +0 -0
- /package/lib/{+shared/editor/core/models → editor/content/display-data}/line-info.model.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/content/display-data}/paragraph-info.interface.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/content/display-data}/toolbar-styles.interface.d.ts +0 -0
- /package/lib/{+shared/editor → editor/content}/helpers/format.helper.d.ts +0 -0
- /package/lib/{+shared → editor/content}/helpers/scaling.helper.d.ts +0 -0
- /package/lib/{+shared/editor/core/models → editor/content}/margin.model.d.ts +0 -0
- /package/lib/{+shared/editor/core/enums → editor/content}/vertical-alignment.enum.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/display}/cell.interface.d.ts +0 -0
- /package/lib/{+shared/editor/core/helpers → editor/display}/event.helper.d.ts +0 -0
- /package/lib/{+shared/editor/core → editor/display}/layers/print.pages.layer.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/display}/render-changes.interface.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/display}/visible-range.interface.d.ts +0 -0
- /package/lib/{+shared/editor/core/models → editor/execution}/distance.model.d.ts +0 -0
- /package/lib/{+shared/editor/core → editor/execution}/helpers/dom.helper.d.ts +0 -0
- /package/lib/{+shared/editor/core/constants → editor/gadgets/font-metrics}/editor-version.const.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/gadgets/font-metrics}/font-metric-size.interface.d.ts +0 -0
- /package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operations-history-info.model.d.ts +0 -0
- /package/lib/{+shared/editor/core/enums → editor/gadgets/numbering}/numbering-marker-type.enum.d.ts +0 -0
- /package/lib/{+shared/editor/core/enums → editor/gadgets/page-break}/break-types.enum.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/gadgets/search}/replace.interface.d.ts +0 -0
- /package/lib/{+shared/editor/core/interfaces → editor/gadgets/search}/search-iteration.interface.d.ts +0 -0
- /package/lib/{+shared/editor/core/constants → editor/gadgets/unicode}/unicode-chars.const.d.ts +0 -0
- /package/lib/{+shared/editor/core/helpers → editor/gadgets/unicode}/unicode.helper.d.ts +0 -0
- /package/lib/{+shared/enums → editor/interaction}/mode.enum.d.ts +0 -0
- /package/lib/{+shared/editor/core/enums → editor/interaction}/mouse-button.enum.d.ts +0 -0
- /package/lib/{+shared/editor/core/keyboard → editor/interaction}/text-input.d.ts +0 -0
- /package/lib/{+shared/services → editor/operations}/commands.service.d.ts +0 -0
- /package/lib/{+shared/editor → editor}/operations/enums/target-type.enum.d.ts +0 -0
- /package/lib/{+shared/editor → editor}/operations/helpers/content-operations.helper.d.ts +0 -0
- /package/lib/{+shared/editor/core/constants → editor/positioning}/alignments.const.d.ts +0 -0
- /package/lib/{+shared/editor/interfaces → editor/positioning}/insert-index.interface.d.ts +0 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { DEFAULT_PARAGRAPH_STYLE } from '../../content/constants/editor.const';
|
|
2
|
+
import { IndexedElementOperationsHelper } from './indexed-element-operations.helper';
|
|
3
|
+
import { ParagraphModel } from '../../../models/generated/paragraph.model';
|
|
4
|
+
import { ParagraphStyleModel } from '../../../models/generated/paragraph-style.model';
|
|
5
|
+
export class ParagraphOperationsHelper {
|
|
6
|
+
static insertContent(paragraphs, text, textIndex) {
|
|
7
|
+
IndexedElementOperationsHelper.insertContent(paragraphs, textIndex, text.length);
|
|
8
|
+
this.insertParagraphsFromText(paragraphs, text, textIndex);
|
|
9
|
+
}
|
|
10
|
+
static replace(paragraphs, text, startIndex, endIndex) {
|
|
11
|
+
IndexedElementOperationsHelper.replaceContent(paragraphs, startIndex, endIndex, text.length);
|
|
12
|
+
this.insertParagraphsFromText(paragraphs, text, startIndex);
|
|
13
|
+
}
|
|
14
|
+
static insertParagraphsFromText(paragraphs, text, textIndex) {
|
|
15
|
+
const parentParagraph = paragraphs.find(x => x.insertIndex >= textIndex);
|
|
16
|
+
const createdParagraphs = [...text.matchAll(/\n/g)].map(x => new ParagraphModel({
|
|
17
|
+
insertIndex: x.index + textIndex,
|
|
18
|
+
paragraphStyle: parentParagraph?.paragraphStyle ?? DEFAULT_PARAGRAPH_STYLE
|
|
19
|
+
}));
|
|
20
|
+
const index = parentParagraph !== null ? paragraphs.findIndex(x => x === parentParagraph) : 0;
|
|
21
|
+
paragraphs.splice(index, 0, ...createdParagraphs);
|
|
22
|
+
}
|
|
23
|
+
static insertParagraphsFromModel(paragraphs, insertIndex) {
|
|
24
|
+
const currentParagraph = paragraphs
|
|
25
|
+
.slice()
|
|
26
|
+
.sort((a, b) => a.insertIndex - b.insertIndex)
|
|
27
|
+
.find(x => x.insertIndex >= insertIndex);
|
|
28
|
+
const previousParagraph = paragraphs
|
|
29
|
+
.slice()
|
|
30
|
+
.sort((a, b) => b.insertIndex - a.insertIndex)
|
|
31
|
+
.find(x => x.insertIndex < currentParagraph.insertIndex);
|
|
32
|
+
const currentParagraphIndex = paragraphs.findIndex(x => x === currentParagraph);
|
|
33
|
+
let createdParagraphs;
|
|
34
|
+
if (insertIndex === 0 || previousParagraph?.insertIndex === insertIndex - 1) {
|
|
35
|
+
createdParagraphs = [new ParagraphModel({ insertIndex, paragraphStyle: DEFAULT_PARAGRAPH_STYLE })];
|
|
36
|
+
IndexedElementOperationsHelper.insertContent(paragraphs, createdParagraphs[0].insertIndex, createdParagraphs.length);
|
|
37
|
+
paragraphs.splice(currentParagraphIndex, 0, ...createdParagraphs);
|
|
38
|
+
}
|
|
39
|
+
else if (currentParagraph.insertIndex === insertIndex) {
|
|
40
|
+
createdParagraphs = [new ParagraphModel({ insertIndex: insertIndex + 1, paragraphStyle: currentParagraph.paragraphStyle })];
|
|
41
|
+
IndexedElementOperationsHelper.insertContent(paragraphs, createdParagraphs[0].insertIndex, createdParagraphs.length);
|
|
42
|
+
paragraphs.splice(currentParagraphIndex + 1, 0, ...createdParagraphs);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
createdParagraphs = [
|
|
46
|
+
new ParagraphModel({ insertIndex, paragraphStyle: currentParagraph.paragraphStyle }),
|
|
47
|
+
new ParagraphModel({ insertIndex: insertIndex + 1, paragraphStyle: currentParagraph.paragraphStyle })
|
|
48
|
+
];
|
|
49
|
+
IndexedElementOperationsHelper.insertContent(paragraphs, currentParagraph.insertIndex, createdParagraphs.length);
|
|
50
|
+
paragraphs.splice(currentParagraphIndex, 0, ...createdParagraphs);
|
|
51
|
+
}
|
|
52
|
+
return createdParagraphs;
|
|
53
|
+
}
|
|
54
|
+
static restoreParagraphs(paragraphs, paragraphsToRestore) {
|
|
55
|
+
for (const paragraph of paragraphsToRestore) {
|
|
56
|
+
this.applySingle(paragraphs, paragraph.insertIndex, paragraph.paragraphStyle);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
static restoreNumberingParagraphs(paragraphs, paragraphsToRestore) {
|
|
60
|
+
const oldNumberingIds = [];
|
|
61
|
+
for (const paragraphToRestore of paragraphsToRestore) {
|
|
62
|
+
const paragraph = paragraphs.find(x => x.insertIndex === paragraphToRestore.insertIndex);
|
|
63
|
+
if (paragraph.paragraphStyle.numberingId !== null && !oldNumberingIds.includes(paragraph.paragraphStyle.numberingId)) {
|
|
64
|
+
oldNumberingIds.push(paragraph.paragraphStyle.numberingId);
|
|
65
|
+
}
|
|
66
|
+
paragraph.paragraphStyle = new ParagraphStyleModel({ ...paragraphToRestore.paragraphStyle });
|
|
67
|
+
}
|
|
68
|
+
return oldNumberingIds;
|
|
69
|
+
}
|
|
70
|
+
static applySingle(paragraphs, index, style) {
|
|
71
|
+
const paragraph = paragraphs.find(x => x.insertIndex === index);
|
|
72
|
+
paragraph.paragraphStyle = new ParagraphStyleModel({ ...style });
|
|
73
|
+
}
|
|
74
|
+
static applyNumbering(paragraphs, startIndex, endIndex, numberingId) {
|
|
75
|
+
const oldNumberingIds = [];
|
|
76
|
+
let index = paragraphs.findIndex(x => x.insertIndex >= startIndex);
|
|
77
|
+
while (index < paragraphs.length && paragraphs[index].insertIndex <= endIndex) {
|
|
78
|
+
const paragraphNumberingId = paragraphs[index].paragraphStyle.numberingId;
|
|
79
|
+
if (paragraphNumberingId !== null && !oldNumberingIds.includes(paragraphNumberingId)) {
|
|
80
|
+
oldNumberingIds.push(paragraphNumberingId);
|
|
81
|
+
}
|
|
82
|
+
paragraphs[index].paragraphStyle.numberingId = numberingId;
|
|
83
|
+
if (numberingId === null) {
|
|
84
|
+
paragraphs[index].paragraphStyle.numberingLevel = null;
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
paragraphs[index].paragraphStyle.numberingLevel ??= 0;
|
|
88
|
+
}
|
|
89
|
+
index++;
|
|
90
|
+
}
|
|
91
|
+
return oldNumberingIds;
|
|
92
|
+
}
|
|
93
|
+
static apply(paragraphs, startIndex, endIndex, style) {
|
|
94
|
+
let index = paragraphs.findIndex(x => x.insertIndex >= startIndex);
|
|
95
|
+
for (; index < paragraphs.length && paragraphs[index].insertIndex <= endIndex; index++) {
|
|
96
|
+
this.applyParagraphStyles(paragraphs[index].paragraphStyle, style);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
static applyParagraphStyles(target, value) {
|
|
100
|
+
target.alignment = value.alignment ?? target.alignment;
|
|
101
|
+
target.backgroundColor = value.backgroundColor ?? target.backgroundColor;
|
|
102
|
+
target.headingStyleId = value.headingStyleId ?? target.headingStyleId;
|
|
103
|
+
target.indentFirstLine = value.indentFirstLine ?? target.indentFirstLine;
|
|
104
|
+
target.indentHanging = value.indentHanging ?? target.indentHanging;
|
|
105
|
+
target.indentLeft = value.indentLeft ?? target.indentLeft;
|
|
106
|
+
target.indentRight = value.indentRight ?? target.indentRight;
|
|
107
|
+
target.lineSpacing = value.lineSpacing ?? target.lineSpacing;
|
|
108
|
+
target.numberingId = value.numberingId ?? target.numberingId;
|
|
109
|
+
target.numberingLevel = value.numberingLevel ?? target.numberingLevel;
|
|
110
|
+
target.spaceAfter = value.spaceAfter ?? target.spaceAfter;
|
|
111
|
+
target.spaceBefore = value.spaceBefore ?? target.spaceBefore;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWdyYXBoLW9wZXJhdGlvbnMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL29wZXJhdGlvbnMvaGVscGVycy9wYXJhZ3JhcGgtb3BlcmF0aW9ucy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXRGLE1BQU0sT0FBTyx5QkFBeUI7SUFDbEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxVQUE0QixFQUFFLElBQVksRUFBRSxTQUFpQjtRQUM5RSw4QkFBOEIsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBNEIsRUFBRSxJQUFZLEVBQUUsVUFBa0IsRUFBRSxRQUFnQjtRQUMzRiw4QkFBOEIsQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxNQUFNLENBQUMsd0JBQXdCLENBQUMsVUFBNEIsRUFBRSxJQUFZLEVBQUUsU0FBaUI7UUFDekYsTUFBTSxlQUFl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LEtBQUssQ0FBQyxlQUFlLElBQUksTUFBTSxDQUFDLGVBQWUsQ0FBQztRQUN6RSxNQUFNLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUNuRSxNQUFNLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUMxRCxNQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUM3RCxNQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUM3RCxNQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUM3RCxNQUFNLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxjQUFjLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQztRQUN0RSxNQUFNLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUMxRCxNQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUNqRSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBERUZBVUxUX1BBUkFHUkFQSF9TVFlMRSB9IGZyb20gJy4uLy4uL2NvbnRlbnQvY29uc3RhbnRzL2VkaXRvci5jb25zdCc7XG5pbXBvcnQgeyBJbmRleGVkRWxlbWVudE9wZXJhdGlvbnNIZWxwZXIgfSBmcm9tICcuL2luZGV4ZWQtZWxlbWVudC1vcGVyYXRpb25zLmhlbHBlcic7XG5pbXBvcnQgeyBQYXJhZ3JhcGhNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvcGFyYWdyYXBoLm1vZGVsJztcbmltcG9ydCB7IFBhcmFncmFwaFN0eWxlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL3BhcmFncmFwaC1zdHlsZS5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBQYXJhZ3JhcGhPcGVyYXRpb25zSGVscGVyIHtcbiAgICBzdGF0aWMgaW5zZXJ0Q29udGVudChwYXJhZ3JhcGhzOiBQYXJhZ3JhcGhNb2RlbFtdLCB0ZXh0OiBzdHJpbmcsIHRleHRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIEluZGV4ZWRFbGVtZW50T3BlcmF0aW9uc0hlbHBlci5pbnNlcnRDb250ZW50KHBhcmFncmFwaHMsIHRleHRJbmRleCwgdGV4dC5sZW5ndGgpO1xuICAgICAgICB0aGlzLmluc2VydFBhcmFncmFwaHNGcm9tVGV4dChwYXJhZ3JhcGhzLCB0ZXh0LCB0ZXh0SW5kZXgpO1xuICAgIH1cblxuICAgIHN0YXRpYyByZXBsYWNlKHBhcmFncmFwaHM6IFBhcmFncmFwaE1vZGVsW10sIHRleHQ6IHN0cmluZywgc3RhcnRJbmRleDogbnVtYmVyLCBlbmRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIEluZGV4ZWRFbGVtZW50T3BlcmF0aW9uc0hlbHBlci5yZXBsYWNlQ29udGVudChwYXJhZ3JhcGhzLCBzdGFydEluZGV4LCBlbmRJbmRleCwgdGV4dC5sZW5ndGgpO1xuICAgICAgICB0aGlzLmluc2VydFBhcmFncmFwaHNGcm9tVGV4dChwYXJhZ3JhcGhzLCB0ZXh0LCBzdGFydEluZGV4KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgaW5zZXJ0UGFyYWdyYXBoc0Zyb21UZXh0KHBhcmFncmFwaHM6IFBhcmFncmFwaE1vZGVsW10sIHRleHQ6IHN0cmluZywgdGV4dEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFyZW50UGFyYWdyYXBoID0gcGFyYWdyYXBocy5maW5kKHggPT4geC5pbnNlcnRJbmRleCA+PSB0ZXh0SW5kZXgpO1xuICAgICAgICBjb25zdCBjcmVhdGVkUGFyYWdyYXBocyA9IFsuLi50ZXh0Lm1hdGNoQWxsKC9cXG4vZyldLm1hcChcbiAgICAgICAgICAgIHggPT5cbiAgICAgICAgICAgICAgICBuZXcgUGFyYWdyYXBoTW9kZWwoe1xuICAgICAgICAgICAgICAgICAgICBpbnNlcnRJbmRleDogeC5pbmRleCArIHRleHRJbmRleCxcbiAgICAgICAgICAgICAgICAgICAgcGFyYWdyYXBoU3R5bGU6IHBhcmVudFBhcmFncmFwaD8ucGFyYWdyYXBoU3R5bGUgPz8gREVGQVVMVF9QQVJBR1JBUEhfU1RZTEVcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICBjb25zdCBpbmRleCA9IHBhcmVudFBhcmFncmFwaCAhPT0gbnVsbCA/IHBhcmFncmFwaHMuZmluZEluZGV4KHggPT4geCA9PT0gcGFyZW50UGFyYWdyYXBoKSA6IDA7XG4gICAgICAgIHBhcmFncmFwaHMuc3BsaWNlKGluZGV4LCAwLCAuLi5jcmVhdGVkUGFyYWdyYXBocyk7XG4gICAgfVxuXG4gICAgc3RhdGljIGluc2VydFBhcmFncmFwaHNGcm9tTW9kZWwocGFyYWdyYXBoczogUGFyYWdyYXBoTW9kZWxbXSwgaW5zZXJ0SW5kZXg6IG51bWJlcik6IFBhcmFncmFwaE1vZGVsW10ge1xuICAgICAgICBjb25zdCBjdXJyZW50UGFyYWdyYXBoID0gcGFyYWdyYXBoc1xuICAgICAgICAgICAgLnNsaWNlKClcbiAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLmluc2VydEluZGV4IC0gYi5pbnNlcnRJbmRleClcbiAgICAgICAgICAgIC5maW5kKHggPT4geC5pbnNlcnRJbmRleCA+PSBpbnNlcnRJbmRleCk7XG4gICAgICAgIGNvbnN0IHByZXZpb3VzUGFyYWdyYXBoID0gcGFyYWdyYXBoc1xuICAgICAgICAgICAgLnNsaWNlKClcbiAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBiLmluc2VydEluZGV4IC0gYS5pbnNlcnRJbmRleClcbiAgICAgICAgICAgIC5maW5kKHggPT4geC5pbnNlcnRJbmRleCA8IGN1cnJlbnRQYXJhZ3JhcGguaW5zZXJ0SW5kZXgpO1xuICAgICAgICBjb25zdCBjdXJyZW50UGFyYWdyYXBoSW5kZXggPSBwYXJhZ3JhcGhzLmZpbmRJbmRleCh4ID0+IHggPT09IGN1cnJlbnRQYXJhZ3JhcGgpO1xuICAgICAgICBsZXQgY3JlYXRlZFBhcmFncmFwaHMhOiBQYXJhZ3JhcGhNb2RlbFtdO1xuICAgICAgICBpZiAoaW5zZXJ0SW5kZXggPT09IDAgfHwgcHJldmlvdXNQYXJhZ3JhcGg/Lmluc2VydEluZGV4ID09PSBpbnNlcnRJbmRleCAtIDEpIHtcbiAgICAgICAgICAgIGNyZWF0ZWRQYXJhZ3JhcGhzID0gW25ldyBQYXJhZ3JhcGhNb2RlbCh7IGluc2VydEluZGV4LCBwYXJhZ3JhcGhTdHlsZTogREVGQVVMVF9QQVJBR1JBUEhfU1RZTEUgfSldO1xuICAgICAgICAgICAgSW5kZXhlZEVsZW1lbnRPcGVyYXRpb25zSGVscGVyLmluc2VydENvbnRlbnQocGFyYWdyYXBocywgY3JlYXRlZFBhcmFncmFwaHNbMF0uaW5zZXJ0SW5kZXgsIGNyZWF0ZWRQYXJhZ3JhcGhzLmxlbmd0aCk7XG4gICAgICAgICAgICBwYXJhZ3JhcGhzLnNwbGljZShjdXJyZW50UGFyYWdyYXBoSW5kZXgsIDAsIC4uLmNyZWF0ZWRQYXJhZ3JhcGhzKTtcbiAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50UGFyYWdyYXBoLmluc2VydEluZGV4ID09PSBpbnNlcnRJbmRleCkge1xuICAgICAgICAgICAgY3JlYXRlZFBhcmFncmFwaHMgPSBbbmV3IFBhcmFncmFwaE1vZGVsKHsgaW5zZXJ0SW5kZXg6IGluc2VydEluZGV4ICsgMSwgcGFyYWdyYXBoU3R5bGU6IGN1cnJlbnRQYXJhZ3JhcGgucGFyYWdyYXBoU3R5bGUgfSldO1xuICAgICAgICAgICAgSW5kZXhlZEVsZW1lbnRPcGVyYXRpb25zSGVscGVyLmluc2VydENvbnRlbnQocGFyYWdyYXBocywgY3JlYXRlZFBhcmFncmFwaHNbMF0uaW5zZXJ0SW5kZXgsIGNyZWF0ZWRQYXJhZ3JhcGhzLmxlbmd0aCk7XG4gICAgICAgICAgICBwYXJhZ3JhcGhzLnNwbGljZShjdXJyZW50UGFyYWdyYXBoSW5kZXggKyAxLCAwLCAuLi5jcmVhdGVkUGFyYWdyYXBocyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjcmVhdGVkUGFyYWdyYXBocyA9IFtcbiAgICAgICAgICAgICAgICBuZXcgUGFyYWdyYXBoTW9kZWwoeyBpbnNlcnRJbmRleCwgcGFyYWdyYXBoU3R5bGU6IGN1cnJlbnRQYXJhZ3JhcGgucGFyYWdyYXBoU3R5bGUgfSksXG4gICAgICAgICAgICAgICAgbmV3IFBhcmFncmFwaE1vZGVsKHsgaW5zZXJ0SW5kZXg6IGluc2VydEluZGV4ICsgMSwgcGFyYWdyYXBoU3R5bGU6IGN1cnJlbnRQYXJhZ3JhcGgucGFyYWdyYXBoU3R5bGUgfSlcbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICBJbmRleGVkRWxlbWVudE9wZXJhdGlvbnNIZWxwZXIuaW5zZXJ0Q29udGVudChwYXJhZ3JhcGhzLCBjdXJyZW50UGFyYWdyYXBoLmluc2VydEluZGV4LCBjcmVhdGVkUGFyYWdyYXBocy5sZW5ndGgpO1xuICAgICAgICAgICAgcGFyYWdyYXBocy5zcGxpY2UoY3VycmVudFBhcmFncmFwaEluZGV4LCAwLCAuLi5jcmVhdGVkUGFyYWdyYXBocyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNyZWF0ZWRQYXJhZ3JhcGhzO1xuICAgIH1cblxuICAgIHN0YXRpYyByZXN0b3JlUGFyYWdyYXBocyhwYXJhZ3JhcGhzOiBQYXJhZ3JhcGhNb2RlbFtdLCBwYXJhZ3JhcGhzVG9SZXN0b3JlOiBQYXJhZ3JhcGhNb2RlbFtdKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgcGFyYWdyYXBoIG9mIHBhcmFncmFwaHNUb1Jlc3RvcmUpIHtcbiAgICAgICAgICAgIHRoaXMuYXBwbHlTaW5nbGUocGFyYWdyYXBocywgcGFyYWdyYXBoLmluc2VydEluZGV4LCBwYXJhZ3JhcGgucGFyYWdyYXBoU3R5bGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIHJlc3RvcmVOdW1iZXJpbmdQYXJhZ3JhcGhzKHBhcmFncmFwaHM6IFBhcmFncmFwaE1vZGVsW10sIHBhcmFncmFwaHNUb1Jlc3RvcmU6IFBhcmFncmFwaE1vZGVsW10pOiBudW1iZXJbXSB7XG4gICAgICAgIGNvbnN0IG9sZE51bWJlcmluZ0lkcyA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IHBhcmFncmFwaFRvUmVzdG9yZSBvZiBwYXJhZ3JhcGhzVG9SZXN0b3JlKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhZ3JhcGggPSBwYXJhZ3JhcGhzLmZpbmQoeCA9PiB4Lmluc2VydEluZGV4ID09PSBwYXJhZ3JhcGhUb1Jlc3RvcmUuaW5zZXJ0SW5kZXgpO1xuICAgICAgICAgICAgaWYgKHBhcmFncmFwaC5wYXJhZ3JhcGhTdHlsZS5udW1iZXJpbmdJZCAhPT0gbnVsbCAmJiAhb2xkTnVtYmVyaW5nSWRzLmluY2x1ZGVzKHBhcmFncmFwaC5wYXJhZ3JhcGhTdHlsZS5udW1iZXJpbmdJZCkpIHtcbiAgICAgICAgICAgICAgICBvbGROdW1iZXJpbmdJZHMucHVzaChwYXJhZ3JhcGgucGFyYWdyYXBoU3R5bGUubnVtYmVyaW5nSWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYXJhZ3JhcGgucGFyYWdyYXBoU3R5bGUgPSBuZXcgUGFyYWdyYXBoU3R5bGVNb2RlbCh7IC4uLnBhcmFncmFwaFRvUmVzdG9yZS5wYXJhZ3JhcGhTdHlsZSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvbGROdW1iZXJpbmdJZHM7XG4gICAgfVxuXG4gICAgc3RhdGljIGFwcGx5U2luZ2xlKHBhcmFncmFwaHM6IFBhcmFncmFwaE1vZGVsW10sIGluZGV4OiBudW1iZXIsIHN0eWxlOiBQYXJhZ3JhcGhTdHlsZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBhcmFncmFwaCA9IHBhcmFncmFwaHMuZmluZCh4ID0+IHguaW5zZXJ0SW5kZXggPT09IGluZGV4KTtcbiAgICAgICAgcGFyYWdyYXBoLnBhcmFncmFwaFN0eWxlID0gbmV3IFBhcmFncmFwaFN0eWxlTW9kZWwoeyAuLi5zdHlsZSB9KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgYXBwbHlOdW1iZXJpbmcocGFyYWdyYXBoczogUGFyYWdyYXBoTW9kZWxbXSwgc3RhcnRJbmRleDogbnVtYmVyLCBlbmRJbmRleDogbnVtYmVyLCBudW1iZXJpbmdJZD86IG51bWJlcik6IG51bWJlcltdIHtcbiAgICAgICAgY29uc3Qgb2xkTnVtYmVyaW5nSWRzID0gW107XG4gICAgICAgIGxldCBpbmRleCA9IHBhcmFncmFwaHMuZmluZEluZGV4KHggPT4geC5pbnNlcnRJbmRleCA+PSBzdGFydEluZGV4KTtcbiAgICAgICAgd2hpbGUgKGluZGV4IDwgcGFyYWdyYXBocy5sZW5ndGggJiYgcGFyYWdyYXBoc1tpbmRleF0uaW5zZXJ0SW5kZXggPD0gZW5kSW5kZXgpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmFncmFwaE51bWJlcmluZ0lkID0gcGFyYWdyYXBoc1tpbmRleF0ucGFyYWdyYXBoU3R5bGUubnVtYmVyaW5nSWQ7XG4gICAgICAgICAgICBpZiAocGFyYWdyYXBoTnVtYmVyaW5nSWQgIT09IG51bGwgJiYgIW9sZE51bWJlcmluZ0lkcy5pbmNsdWRlcyhwYXJhZ3JhcGhOdW1iZXJpbmdJZCkpIHtcbiAgICAgICAgICAgICAgICBvbGROdW1iZXJpbmdJZHMucHVzaChwYXJhZ3JhcGhOdW1iZXJpbmdJZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBhcmFncmFwaHNbaW5kZXhdLnBhcmFncmFwaFN0eWxlLm51bWJlcmluZ0lkID0gbnVtYmVyaW5nSWQ7XG4gICAgICAgICAgICBpZiAobnVtYmVyaW5nSWQgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBwYXJhZ3JhcGhzW2luZGV4XS5wYXJhZ3JhcGhTdHlsZS5udW1iZXJpbmdMZXZlbCA9IG51bGw7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHBhcmFncmFwaHNbaW5kZXhdLnBhcmFncmFwaFN0eWxlLm51bWJlcmluZ0xldmVsID8/PSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5kZXgrKztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvbGROdW1iZXJpbmdJZHM7XG4gICAgfVxuXG4gICAgc3RhdGljIGFwcGx5KHBhcmFncmFwaHM6IFBhcmFncmFwaE1vZGVsW10sIHN0YXJ0SW5kZXg6IG51bWJlciwgZW5kSW5kZXg6IG51bWJlciwgc3R5bGU6IFBhcmFncmFwaFN0eWxlTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgbGV0IGluZGV4ID0gcGFyYWdyYXBocy5maW5kSW5kZXgoeCA9PiB4Lmluc2VydEluZGV4ID49IHN0YXJ0SW5kZXgpO1xuICAgICAgICBmb3IgKDsgaW5kZXggPCBwYXJhZ3JhcGhzLmxlbmd0aCAmJiBwYXJhZ3JhcGhzW2luZGV4XS5pbnNlcnRJbmRleCA8PSBlbmRJbmRleDsgaW5kZXgrKykge1xuICAgICAgICAgICAgdGhpcy5hcHBseVBhcmFncmFwaFN0eWxlcyhwYXJhZ3JhcGhzW2luZGV4XS5wYXJhZ3JhcGhTdHlsZSwgc3R5bGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIGFwcGx5UGFyYWdyYXBoU3R5bGVzKHRhcmdldDogUGFyYWdyYXBoU3R5bGVNb2RlbCwgdmFsdWU6IFBhcmFncmFwaFN0eWxlTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgdGFyZ2V0LmFsaWdubWVudCA9IHZhbHVlLmFsaWdubWVudCA/PyB0YXJnZXQuYWxpZ25tZW50O1xuICAgICAgICB0YXJnZXQuYmFja2dyb3VuZENvbG9yID0gdmFsdWUuYmFja2dyb3VuZENvbG9yID8/IHRhcmdldC5iYWNrZ3JvdW5kQ29sb3I7XG4gICAgICAgIHRhcmdldC5oZWFkaW5nU3R5bGVJZCA9IHZhbHVlLmhlYWRpbmdTdHlsZUlkID8/IHRhcmdldC5oZWFkaW5nU3R5bGVJZDtcbiAgICAgICAgdGFyZ2V0LmluZGVudEZpcnN0TGluZSA9IHZhbHVlLmluZGVudEZpcnN0TGluZSA/PyB0YXJnZXQuaW5kZW50Rmlyc3RMaW5lO1xuICAgICAgICB0YXJnZXQuaW5kZW50SGFuZ2luZyA9IHZhbHVlLmluZGVudEhhbmdpbmcgPz8gdGFyZ2V0LmluZGVudEhhbmdpbmc7XG4gICAgICAgIHRhcmdldC5pbmRlbnRMZWZ0ID0gdmFsdWUuaW5kZW50TGVmdCA/PyB0YXJnZXQuaW5kZW50TGVmdDtcbiAgICAgICAgdGFyZ2V0LmluZGVudFJpZ2h0ID0gdmFsdWUuaW5kZW50UmlnaHQgPz8gdGFyZ2V0LmluZGVudFJpZ2h0O1xuICAgICAgICB0YXJnZXQubGluZVNwYWNpbmcgPSB2YWx1ZS5saW5lU3BhY2luZyA/PyB0YXJnZXQubGluZVNwYWNpbmc7XG4gICAgICAgIHRhcmdldC5udW1iZXJpbmdJZCA9IHZhbHVlLm51bWJlcmluZ0lkID8/IHRhcmdldC5udW1iZXJpbmdJZDtcbiAgICAgICAgdGFyZ2V0Lm51bWJlcmluZ0xldmVsID0gdmFsdWUubnVtYmVyaW5nTGV2ZWwgPz8gdGFyZ2V0Lm51bWJlcmluZ0xldmVsO1xuICAgICAgICB0YXJnZXQuc3BhY2VBZnRlciA9IHZhbHVlLnNwYWNlQWZ0ZXIgPz8gdGFyZ2V0LnNwYWNlQWZ0ZXI7XG4gICAgICAgIHRhcmdldC5zcGFjZUJlZm9yZSA9IHZhbHVlLnNwYWNlQmVmb3JlID8/IHRhcmdldC5zcGFjZUJlZm9yZTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IndexedElementOperationsHelper } from './indexed-element-operations.helper';
|
|
2
|
+
import { TabModel } from '../../../models/generated/tab.model';
|
|
3
|
+
export class TabOperationsHelper {
|
|
4
|
+
static insertContent(elements, insertIndex) {
|
|
5
|
+
IndexedElementOperationsHelper.insertContent(elements, insertIndex, 1);
|
|
6
|
+
const element = new TabModel({ insertIndex });
|
|
7
|
+
const index = elements.findIndex(x => x.insertIndex > element.insertIndex);
|
|
8
|
+
if (index < 0) {
|
|
9
|
+
elements.push(element);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
elements.splice(index, 0, element);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLW9wZXJhdGlvbnMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL29wZXJhdGlvbnMvaGVscGVycy90YWItb3BlcmF0aW9ucy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRS9ELE1BQU0sT0FBTyxtQkFBbUI7SUFDNUIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFvQixFQUFFLFdBQW1CO1FBQzFELDhCQUE4QixDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLE1BQU0sT0FBTyxHQUFHLElBQUksUUFBUSxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUM5QyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0UsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1lBQ1gsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMxQjthQUFNO1lBQ0gsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5kZXhlZEVsZW1lbnRPcGVyYXRpb25zSGVscGVyIH0gZnJvbSAnLi9pbmRleGVkLWVsZW1lbnQtb3BlcmF0aW9ucy5oZWxwZXInO1xuaW1wb3J0IHsgVGFiTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL3RhYi5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBUYWJPcGVyYXRpb25zSGVscGVyIHtcbiAgICBzdGF0aWMgaW5zZXJ0Q29udGVudChlbGVtZW50czogVGFiTW9kZWxbXSwgaW5zZXJ0SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBJbmRleGVkRWxlbWVudE9wZXJhdGlvbnNIZWxwZXIuaW5zZXJ0Q29udGVudChlbGVtZW50cywgaW5zZXJ0SW5kZXgsIDEpO1xuICAgICAgICBjb25zdCBlbGVtZW50ID0gbmV3IFRhYk1vZGVsKHsgaW5zZXJ0SW5kZXggfSk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gZWxlbWVudHMuZmluZEluZGV4KHggPT4geC5pbnNlcnRJbmRleCA+IGVsZW1lbnQuaW5zZXJ0SW5kZXgpO1xuICAgICAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICAgICAgICBlbGVtZW50cy5wdXNoKGVsZW1lbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZWxlbWVudHMuc3BsaWNlKGluZGV4LCAwLCBlbGVtZW50KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|