@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
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { Point } from '../point';
|
|
2
|
-
import { PositionHelper } from '../helpers/position.helper';
|
|
3
|
-
import { Range } from '../range';
|
|
4
|
-
export class SelectionLayer {
|
|
5
|
-
constructor(parentEl, cssClass) {
|
|
6
|
-
this.marker = null;
|
|
7
|
-
this.element = document.createElement('div');
|
|
8
|
-
this.element.className = `ace-layer ace-selection-layer ${cssClass}`;
|
|
9
|
-
parentEl.appendChild(this.element);
|
|
10
|
-
}
|
|
11
|
-
setSession(session) {
|
|
12
|
-
this.session = session;
|
|
13
|
-
}
|
|
14
|
-
renderSelection(css) {
|
|
15
|
-
let selectionElement = this.selectionIndex !== -1 ? this.element.childNodes[this.selectionIndex] : null;
|
|
16
|
-
if (!selectionElement) {
|
|
17
|
-
selectionElement = document.createElement('div');
|
|
18
|
-
this.element.appendChild(selectionElement);
|
|
19
|
-
this.selectionIndex = -1;
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
this.selectionIndex++;
|
|
23
|
-
}
|
|
24
|
-
selectionElement.style.cssText = css;
|
|
25
|
-
selectionElement.className = 'ace-selection';
|
|
26
|
-
}
|
|
27
|
-
update(config) {
|
|
28
|
-
if (!config) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
this.config = config;
|
|
32
|
-
this.selectionIndex = 0;
|
|
33
|
-
if (this.marker) {
|
|
34
|
-
let range = this.marker.clipRows(config.contentRange.start, config.contentRange.end);
|
|
35
|
-
if (!range.isEmpty) {
|
|
36
|
-
range = range.toScreenRange(this.session);
|
|
37
|
-
if (range.isSingleLine) {
|
|
38
|
-
this.drawSingleLineMarker(range);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.drawMultiLineMarker(range);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
if (this.selectionIndex !== -1) {
|
|
46
|
-
while (this.selectionIndex < this.element.childElementCount) {
|
|
47
|
-
this.element.removeChild(this.element.lastChild);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
getTop(row) {
|
|
52
|
-
const paragraphs = this.session.pagesWrap.paragraphs;
|
|
53
|
-
const paragraphInfo = PositionHelper.getParagraphInfoByRow(paragraphs, row);
|
|
54
|
-
return paragraphs[paragraphInfo.paragraphIndex].distanceFromTop + paragraphInfo.lineTopOffset - this.session.scrollTop;
|
|
55
|
-
}
|
|
56
|
-
// Draws a multi line marker, where lines span the full width
|
|
57
|
-
drawMultiLineMarker(range) {
|
|
58
|
-
// from selection start to the end of the line
|
|
59
|
-
const start = range.start.row;
|
|
60
|
-
const end = range.end.row;
|
|
61
|
-
const paragraphs = this.session.pagesWrap.paragraphs;
|
|
62
|
-
const visibleParagraphs = paragraphs.filter(x => x.lastScreenLine >= start && x.firstScreenLine <= end);
|
|
63
|
-
const textLinesInfo = visibleParagraphs.map(x => x.textLinesInfo.filter(l => start <= l.screenLine && l.screenLine <= end)).flat();
|
|
64
|
-
const paragraphInfo = PositionHelper.getParagraphInfoByRow(paragraphs, start);
|
|
65
|
-
let top = paragraphs[paragraphInfo.paragraphIndex].distanceFromTop + paragraphInfo.lineTopOffset - this.session.scrollTop;
|
|
66
|
-
const padding = this.session.pagesWrap.documentMargin.left;
|
|
67
|
-
for (let i = 0; i < textLinesInfo.length; i++) {
|
|
68
|
-
const lineInfo = textLinesInfo[i];
|
|
69
|
-
if (i !== 0) {
|
|
70
|
-
top += lineInfo.firstLinePageOffset;
|
|
71
|
-
top += lineInfo.offsetBefore;
|
|
72
|
-
}
|
|
73
|
-
let style;
|
|
74
|
-
if (i === 0) {
|
|
75
|
-
const rangeInfo = this.getRangeInfo(this.session, range);
|
|
76
|
-
style = this.getMarkerStyle(lineInfo.height, lineInfo.width - rangeInfo.leftPos + lineInfo.paddingLeft + padding, top, rangeInfo.leftPos);
|
|
77
|
-
}
|
|
78
|
-
else if (i === textLinesInfo.length - 1) {
|
|
79
|
-
const lastRowRange = new Range(new Point(range.end.row, 0), range.end);
|
|
80
|
-
const rangeInfo = this.getRangeInfo(this.session, lastRowRange);
|
|
81
|
-
style = this.getMarkerStyle(lineInfo.height, rangeInfo.screenWidth, top, padding + lineInfo.paddingLeft);
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
style = this.getMarkerStyle(lineInfo.height, lineInfo.width, top, padding + lineInfo.paddingLeft);
|
|
85
|
-
}
|
|
86
|
-
this.renderSelection(style);
|
|
87
|
-
top += lineInfo.height + lineInfo.offsetAfter + lineInfo.endPageOffset;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
// Draws a marker which covers part or whole width of a single screen line
|
|
91
|
-
drawSingleLineMarker(range) {
|
|
92
|
-
const rangeInfo = this.getRangeInfo(this.session, range);
|
|
93
|
-
const paragraphInfo = PositionHelper.getParagraphInfoByRow(this.session.pagesWrap.paragraphs, range.start.row);
|
|
94
|
-
const height = rangeInfo.screenHeight || paragraphInfo.lineHeight;
|
|
95
|
-
const width = rangeInfo.screenWidth;
|
|
96
|
-
const top = this.getTop(range.start.row);
|
|
97
|
-
const left = rangeInfo.leftPos;
|
|
98
|
-
this.renderSelection(this.getMarkerStyle(height, width, top, left));
|
|
99
|
-
}
|
|
100
|
-
getRangeInfo(session, range) {
|
|
101
|
-
const start = range.start;
|
|
102
|
-
const end = range.end;
|
|
103
|
-
const startPos = PositionHelper.screenToPixel(session, start.row, start.column);
|
|
104
|
-
const endPos = PositionHelper.screenToPixel(session, end.row, end.column);
|
|
105
|
-
return {
|
|
106
|
-
screenWidth: Math.abs(endPos.pageX - startPos.pageX),
|
|
107
|
-
screenHeight: Math.abs(endPos.pageY - startPos.pageY),
|
|
108
|
-
leftPos: startPos.pageX
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
getMarkerStyle(height, width, top, left) {
|
|
112
|
-
return `height:${height}px;width:${width}px;top:${top}px;left:${left}px`;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLmxheWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9sYXllcnMvc2VsZWN0aW9uLmxheWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFakMsTUFBTSxPQUFPLGNBQWM7SUFXdkIsWUFBWSxRQUFxQixFQUFFLFFBQWdCO1FBTm5ELFdBQU0sR0FBaUIsSUFBSSxDQUFDO1FBT3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxpQ0FBaUMsUUFBUSxFQUFFLENBQUM7UUFDckUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQjtRQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUMzQixDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBYyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNySCxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDbkIsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqRCxJQUFJLENBQUMs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TSxJQUFJLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQW9CLEVBQUUsS0FBWTtRQUNuRCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzFCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDdEIsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEYsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFMUUsT0FBTztZQUNILFdBQVcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUNwRCxZQUFZLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDckQsT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLO1NBQzFCLENBQUM7SUFDTixDQUFDO0lBRU8sY0FBYyxDQUFDLE1BQWMsRUFBRSxLQUFhLEVBQUUsR0FBVyxFQUFFLElBQVk7UUFDM0UsT0FBTyxVQUFVLE1BQU0sWUFBWSxLQUFLLFVBQVUsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDO0lBQzdFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRTZXNzaW9uIH0gZnJvbSAnLi4vZWRpdC5zZXNzaW9uJztcbmltcG9ydCB7IElMYXllckNvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMvbGF5ZXIuY29uZmlnJztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnLi4vcG9pbnQnO1xuaW1wb3J0IHsgUG9zaXRpb25IZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL3Bvc2l0aW9uLmhlbHBlcic7XG5pbXBvcnQgeyBSYW5nZSB9IGZyb20gJy4uL3JhbmdlJztcblxuZXhwb3J0IGNsYXNzIFNlbGVjdGlvbkxheWVyIHtcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICAgIHNlc3Npb246IEVkaXRTZXNzaW9uO1xuXG4gICAgbWFya2VyOiBSYW5nZSB8IG51bGwgPSBudWxsO1xuXG4gICAgc2VsZWN0aW9uSW5kZXg6IG51bWJlcjtcblxuICAgIGNvbmZpZzogSUxheWVyQ29uZmlnO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50RWw6IEhUTUxFbGVtZW50LCBjc3NDbGFzczogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gYGFjZS1sYXllciBhY2Utc2VsZWN0aW9uLWxheWVyICR7Y3NzQ2xhc3N9YDtcbiAgICAgICAgcGFyZW50RWwuYXBwZW5kQ2hpbGQodGhpcy5lbGVtZW50KTtcbiAgICB9XG5cbiAgICBzZXRTZXNzaW9uKHNlc3Npb246IEVkaXRTZXNzaW9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2Vzc2lvbiA9IHNlc3Npb247XG4gICAgfVxuXG4gICAgcmVuZGVyU2VsZWN0aW9uKGNzczogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGxldCBzZWxlY3Rpb25FbGVtZW50ID0gdGhpcy5zZWxlY3Rpb25JbmRleCAhPT0gLTEgPyA8SFRNTEVsZW1lbnQ+dGhpcy5lbGVtZW50LmNoaWxkTm9kZXNbdGhpcy5zZWxlY3Rpb25JbmRleF0gOiBudWxsO1xuICAgICAgICBpZiAoIXNlbGVjdGlvbkVsZW1lbnQpIHtcbiAgICAgICAgICAgIHNlbGVjdGlvbkVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5hcHBlbmRDaGlsZChzZWxlY3Rpb25FbGVtZW50KTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uSW5kZXggPSAtMTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uSW5kZXgrKztcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGVjdGlvbkVsZW1lbnQuc3R5bGUuY3NzVGV4dCA9IGNzcztcbiAgICAgICAgc2VsZWN0aW9uRWxlbWVudC5jbGFzc05hbWUgPSAnYWNlLXNlbGVjdGlvbic7XG4gICAgfVxuXG4gICAgdXBkYXRlKGNvbmZpZzogSUxheWVyQ29uZmlnKTogdm9pZCB7XG4gICAgICAgIGlmICghY29uZmlnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcbiAgICAgICAgdGhpcy5zZWxlY3Rpb25JbmRleCA9IDA7XG5cbiAgICAgICAgaWYgKHRoaXMubWFya2VyKSB7XG4gICAgICAgICAgICBsZXQgcmFuZ2UgPSB0aGlzLm1hcmtlci5jbGlwUm93cyhjb25maWcuY29udGVudFJhbmdlLnN0YXJ0LCBjb25maWcuY29udGVudFJhbmdlLmVuZCk7XG4gICAgICAgICAgICBpZiAoIXJhbmdlLmlzRW1wdHkpIHtcbiAgICAgICAgICAgICAgICByYW5nZSA9IHJhbmdlLnRvU2NyZWVuUmFuZ2UodGhpcy5zZXNzaW9uKTtcbiAgICAgICAgICAgICAgICBpZiAocmFuZ2UuaXNTaW5nbGVMaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJhd1NpbmdsZUxpbmVNYXJrZXIocmFuZ2UpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJhd011bHRpTGluZU1hcmtlcihyYW5nZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0aW9uSW5kZXggIT09IC0xKSB7XG4gICAgICAgICAgICB3aGlsZSAodGhpcy5zZWxlY3Rpb25JbmRleCA8IHRoaXMuZWxlbWVudC5jaGlsZEVsZW1lbnRDb3VudCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsZW1lbnQubGFzdENoaWxkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFRvcChyb3c6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHBhcmFncmFwaHMgPSB0aGlzLnNlc3Npb24ucGFnZXNXcmFwLnBhcmFncmFwaHM7XG4gICAgICAgIGNvbnN0IHBhcmFncmFwaEluZm8gPSBQb3NpdGlvbkhlbHBlci5nZXRQYXJhZ3JhcGhJbmZvQnlSb3cocGFyYWdyYXBocywgcm93KTtcblxuICAgICAgICByZXR1cm4gcGFyYWdyYXBoc1twYXJhZ3JhcGhJbmZvLnBhcmFncmFwaEluZGV4XS5kaXN0YW5jZUZyb21Ub3AgKyBwYXJhZ3JhcGhJbmZvLmxpbmVUb3BPZmZzZXQgLSB0aGlzLnNlc3Npb24uc2Nyb2xsVG9wO1xuICAgIH1cblxuICAgIC8vIERyYXdzIGEgbXVsdGkgbGluZSBtYXJrZXIsIHdoZXJlIGxpbmVzIHNwYW4gdGhlIGZ1bGwgd2lkdGhcbiAgICBkcmF3TXVsdGlMaW5lTWFya2VyKHJhbmdlOiBSYW5nZSk6IHZvaWQge1xuICAgICAgICAvLyBmcm9tIHNlbGVjdGlvbiBzdGFydCB0byB0aGUgZW5kIG9mIHRoZSBsaW5lXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gcmFuZ2Uuc3RhcnQucm93O1xuICAgICAgICBjb25zdCBlbmQgPSByYW5nZS5lbmQucm93O1xuICAgICAgICBjb25zdCBwYXJhZ3JhcGhzID0gdGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5wYXJhZ3JhcGhzO1xuICAgICAgICBjb25zdCB2aXNpYmxlUGFyYWdyYXBocyA9IHBhcmFncmFwaHMuZmlsdGVyKHggPT4geC5sYXN0U2NyZWVuTGluZSA+PSBzdGFydCAmJiB4LmZpcnN0U2NyZWVuTGluZSA8PSBlbmQpO1xuICAgICAgICBjb25zdCB0ZXh0TGluZXNJbmZvID0gdmlzaWJsZVBhcmFncmFwaHMubWFwKHggPT4geC50ZXh0TGluZXNJbmZvLmZpbHRlcihsID0+IHN0YXJ0IDw9IGwuc2NyZWVuTGluZSAmJiBsLnNjcmVlbkxpbmUgPD0gZW5kKSkuZmxhdCgpO1xuICAgICAgICBjb25zdCBwYXJhZ3JhcGhJbmZvID0gUG9zaXRpb25IZWxwZXIuZ2V0UGFyYWdyYXBoSW5mb0J5Um93KHBhcmFncmFwaHMsIHN0YXJ0KTtcbiAgICAgICAgbGV0IHRvcCA9IHBhcmFncmFwaHNbcGFyYWdyYXBoSW5mby5wYXJhZ3JhcGhJbmRleF0uZGlzdGFuY2VGcm9tVG9wICsgcGFyYWdyYXBoSW5mby5saW5lVG9wT2Zmc2V0IC0gdGhpcy5zZXNzaW9uLnNjcm9sbFRvcDtcbiAgICAgICAgY29uc3QgcGFkZGluZyA9IHRoaXMuc2Vzc2lvbi5wYWdlc1dyYXAuZG9jdW1lbnRNYXJnaW4ubGVmdDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0TGluZXNJbmZvLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBsaW5lSW5mbyA9IHRleHRMaW5lc0luZm9baV07XG4gICAgICAgICAgICBpZiAoaSAhPT0gMCkge1xuICAgICAgICAgICAgICAgIHRvcCArPSBsaW5lSW5mby5maXJzdExpbmVQYWdlT2Zmc2V0O1xuICAgICAgICAgICAgICAgIHRvcCArPSBsaW5lSW5mby5vZmZzZXRCZWZvcmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCBzdHlsZTogc3RyaW5nO1xuICAgICAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICAgICAgICBjb25zdCByYW5nZUluZm8gPSB0aGlzLmdldFJhbmdlSW5mbyh0aGlzLnNlc3Npb24sIHJhbmdlKTtcbiAgICAgICAgICAgICAgICBzdHlsZSA9IHRoaXMuZ2V0TWFya2VyU3R5bGUoXG4gICAgICAgICAgICAgICAgICAgIGxpbmVJbmZvLmhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgbGluZUluZm8ud2lkdGggLSByYW5nZUluZm8ubGVmdFBvcyArIGxpbmVJbmZvLnBhZGRpbmdMZWZ0ICsgcGFkZGluZyxcbiAgICAgICAgICAgICAgICAgICAgdG9wLFxuICAgICAgICAgICAgICAgICAgICByYW5nZUluZm8ubGVmdFBvc1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGkgPT09IHRleHRMaW5lc0luZm8ubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RSb3dSYW5nZSA9IG5ldyBSYW5nZShuZXcgUG9pbnQocmFuZ2UuZW5kLnJvdywgMCksIHJhbmdlLmVuZCk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmFuZ2VJbmZvID0gdGhpcy5nZXRSYW5nZUluZm8odGhpcy5zZXNzaW9uLCBsYXN0Um93UmFuZ2UpO1xuICAgICAgICAgICAgICAgIHN0eWxlID0gdGhpcy5nZXRNYXJrZXJTdHlsZShsaW5lSW5mby5oZWlnaHQsIHJhbmdlSW5mby5zY3JlZW5XaWR0aCwgdG9wLCBwYWRkaW5nICsgbGluZUluZm8ucGFkZGluZ0xlZnQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzdHlsZSA9IHRoaXMuZ2V0TWFya2VyU3R5bGUobGluZUluZm8uaGVpZ2h0LCBsaW5lSW5mby53aWR0aCwgdG9wLCBwYWRkaW5nICsgbGluZUluZm8ucGFkZGluZ0xlZnQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnJlbmRlclNlbGVjdGlvbihzdHlsZSk7XG4gICAgICAgICAgICB0b3AgKz0gbGluZUluZm8uaGVpZ2h0ICsgbGluZUluZm8ub2Zmc2V0QWZ0ZXIgKyBsaW5lSW5mby5lbmRQYWdlT2Zmc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJhd3MgYSBtYXJrZXIgd2hpY2ggY292ZXJzIHBhcnQgb3Igd2hvbGUgd2lkdGggb2YgYSBzaW5nbGUgc2NyZWVuIGxpbmVcbiAgICBkcmF3U2luZ2xlTGluZU1hcmtlcihyYW5nZTogUmFuZ2UpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcmFuZ2VJbmZvID0gdGhpcy5nZXRSYW5nZUluZm8odGhpcy5zZXNzaW9uLCByYW5nZSk7XG4gICAgICAgIGNvbnN0IHBhcmFncmFwaEluZm8gPSBQb3NpdGlvbkhlbHBlci5nZXRQYXJhZ3JhcGhJbmZvQnlSb3codGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5wYXJhZ3JhcGhzLCByYW5nZS5zdGFydC5yb3cpO1xuICAgICAgICBjb25zdCBoZWlnaHQgPSByYW5nZUluZm8uc2NyZWVuSGVpZ2h0IHx8IHBhcmFncmFwaEluZm8ubGluZUhlaWdodDtcbiAgICAgICAgY29uc3Qgd2lkdGggPSByYW5nZUluZm8uc2NyZWVuV2lkdGg7XG4gICAgICAgIGNvbnN0IHRvcCA9IHRoaXMuZ2V0VG9wKHJhbmdlLnN0YXJ0LnJvdyk7XG4gICAgICAgIGNvbnN0IGxlZnQgPSByYW5nZUluZm8ubGVmdFBvcztcbiAgICAgICAgdGhpcy5yZW5kZXJTZWxlY3Rpb24odGhpcy5nZXRNYXJrZXJTdHlsZShoZWlnaHQsIHdpZHRoLCB0b3AsIGxlZnQpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJhbmdlSW5mbyhzZXNzaW9uOiBFZGl0U2Vzc2lvbiwgcmFuZ2U6IFJhbmdlKTogeyBzY3JlZW5XaWR0aDogbnVtYmVyOyBzY3JlZW5IZWlnaHQ6IG51bWJlcjsgbGVmdFBvczogbnVtYmVyIH0ge1xuICAgICAgICBjb25zdCBzdGFydCA9IHJhbmdlLnN0YXJ0O1xuICAgICAgICBjb25zdCBlbmQgPSByYW5nZS5lbmQ7XG4gICAgICAgIGNvbnN0IHN0YXJ0UG9zID0gUG9zaXRpb25IZWxwZXIuc2NyZWVuVG9QaXhlbChzZXNzaW9uLCBzdGFydC5yb3csIHN0YXJ0LmNvbHVtbik7XG4gICAgICAgIGNvbnN0IGVuZFBvcyA9IFBvc2l0aW9uSGVscGVyLnNjcmVlblRvUGl4ZWwoc2Vzc2lvbiwgZW5kLnJvdywgZW5kLmNvbHVtbik7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHNjcmVlbldpZHRoOiBNYXRoLmFicyhlbmRQb3MucGFnZVggLSBzdGFydFBvcy5wYWdlWCksXG4gICAgICAgICAgICBzY3JlZW5IZWlnaHQ6IE1hdGguYWJzKGVuZFBvcy5wYWdlWSAtIHN0YXJ0UG9zLnBhZ2VZKSxcbiAgICAgICAgICAgIGxlZnRQb3M6IHN0YXJ0UG9zLnBhZ2VYXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNYXJrZXJTdHlsZShoZWlnaHQ6IG51bWJlciwgd2lkdGg6IG51bWJlciwgdG9wOiBudW1iZXIsIGxlZnQ6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgaGVpZ2h0OiR7aGVpZ2h0fXB4O3dpZHRoOiR7d2lkdGh9cHg7dG9wOiR7dG9wfXB4O2xlZnQ6JHtsZWZ0fXB4YDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
import { DistanceModel } from '../models/distance.model';
|
|
2
|
-
import { DomHelper } from '../helpers/dom.helper';
|
|
3
|
-
import { EventEmitting } from '../base/event-emitting';
|
|
4
|
-
import { FormatExtModel } from '../models/format-ext.model';
|
|
5
|
-
import { FormatStyleHelper } from '../helpers/format-style.helper';
|
|
6
|
-
import { Lines } from './lines';
|
|
7
|
-
import { ParagraphHelper } from '../helpers/paragraph.helper';
|
|
8
|
-
import { RenderingHelper } from '../helpers/rendering.helper';
|
|
9
|
-
export class TextLayer extends EventEmitting {
|
|
10
|
-
constructor(parentElement, renderingHelper = RenderingHelper) {
|
|
11
|
-
super();
|
|
12
|
-
this.renderingHelper = renderingHelper;
|
|
13
|
-
this.pagesCountChangedHandler = (event) => {
|
|
14
|
-
this.lines.setSizes(event.pagesCount, event.pageHeight);
|
|
15
|
-
};
|
|
16
|
-
this.element = document.createElement('div');
|
|
17
|
-
this.element.className = 'ace-layer ace-text-layer';
|
|
18
|
-
parentElement.appendChild(this.element);
|
|
19
|
-
this.lines = new Lines(this.element);
|
|
20
|
-
}
|
|
21
|
-
setSession(session) {
|
|
22
|
-
if (this.session) {
|
|
23
|
-
this.session.pagesWrap.removeEventListener('pagesCountChanged', this.pagesCountChangedHandler);
|
|
24
|
-
}
|
|
25
|
-
this.session = session;
|
|
26
|
-
if (session) {
|
|
27
|
-
this.session.pagesWrap.addEventListener('pagesCountChanged', this.pagesCountChangedHandler);
|
|
28
|
-
this.element.style.width = `${this.session.pagesWrap.contentWidth}px`;
|
|
29
|
-
this.element.style.margin = `0 ${this.session.pagesWrap.documentMargin.right}px 0 ${this.session.pagesWrap.documentMargin.left}px`;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
update(config) {
|
|
33
|
-
DomHelper.translate(this.element, 0, -config.scrollTop);
|
|
34
|
-
this.config = config;
|
|
35
|
-
while (this.lines.length) {
|
|
36
|
-
this.lines.pop();
|
|
37
|
-
}
|
|
38
|
-
this.lines.push(this.renderTextParagraph(config.contentRange));
|
|
39
|
-
}
|
|
40
|
-
scrollLines(config) {
|
|
41
|
-
const oldConfig = this.config;
|
|
42
|
-
this.config = config;
|
|
43
|
-
DomHelper.translate(this.element, 0, -config.scrollTop);
|
|
44
|
-
const oldLastRow = oldConfig ? oldConfig.contentRange.end : -1;
|
|
45
|
-
if (!oldConfig || oldLastRow < config.contentRange.start || config.contentRange.end < oldConfig.contentRange.start) {
|
|
46
|
-
return this.update(config);
|
|
47
|
-
}
|
|
48
|
-
if (oldConfig.contentRange.start < config.contentRange.start) {
|
|
49
|
-
for (let row = config.contentRange.start - oldConfig.contentRange.start; row > 0; row--) {
|
|
50
|
-
this.lines.shift();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
if (oldConfig.contentRange.end > config.contentRange.end) {
|
|
54
|
-
for (let row = oldConfig.contentRange.end - config.contentRange.end; row > 0; row--) {
|
|
55
|
-
this.lines.pop();
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
if (oldConfig.contentRange.start > config.contentRange.start) {
|
|
59
|
-
const lines = this.renderTextParagraph(new DistanceModel({ start: config.contentRange.start, end: oldConfig.contentRange.start - 1 }));
|
|
60
|
-
this.lines.unshift(lines);
|
|
61
|
-
}
|
|
62
|
-
if (oldConfig.contentRange.end < config.contentRange.end) {
|
|
63
|
-
const lines = this.renderTextParagraph(new DistanceModel({ start: oldConfig.contentRange.end + 1, end: config.contentRange.end }));
|
|
64
|
-
this.lines.push(lines);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
destroy() {
|
|
68
|
-
this.session.pagesWrap.removeEventListener('pagesCountChanged', this.pagesCountChangedHandler);
|
|
69
|
-
}
|
|
70
|
-
getParagraphTop(paragraphs, row) {
|
|
71
|
-
return this.session.pagesWrap.getParagraphTop(paragraphs, row);
|
|
72
|
-
}
|
|
73
|
-
renderTextParagraph(rowsDistance) {
|
|
74
|
-
const fragment = [];
|
|
75
|
-
for (let row = rowsDistance.start; row <= rowsDistance.end; row++) {
|
|
76
|
-
const paragraphs = this.session.pagesWrap.paragraphs;
|
|
77
|
-
const paragraphCell = this.lines.createCell(row);
|
|
78
|
-
paragraphCell.element.className = 'ace-line-group';
|
|
79
|
-
DomHelper.removeChildren(paragraphCell.element);
|
|
80
|
-
const paragraphHeight = this.session.pagesWrap.getParagraphHeight(paragraphs, row);
|
|
81
|
-
const paragraphTop = this.getParagraphTop(paragraphs, row);
|
|
82
|
-
DomHelper.setStyle(paragraphCell.element.style, 'height', `${paragraphHeight}px`);
|
|
83
|
-
DomHelper.setStyle(paragraphCell.element.style, 'top', `${paragraphTop}px`);
|
|
84
|
-
const paragraph = paragraphs[row];
|
|
85
|
-
if (paragraph.numberingData.numberingId !== null) {
|
|
86
|
-
const numberingElement = this.renderingHelper.renderNumberingMarker(paragraph, this.element, this.session.properties.scalingRatio);
|
|
87
|
-
numberingElement.className = 'numberingMarker';
|
|
88
|
-
paragraphCell.element.appendChild(numberingElement);
|
|
89
|
-
}
|
|
90
|
-
this.renderTextLines(paragraphCell.element, row);
|
|
91
|
-
fragment.push(paragraphCell);
|
|
92
|
-
}
|
|
93
|
-
return fragment;
|
|
94
|
-
}
|
|
95
|
-
renderTextLines(parent, row) {
|
|
96
|
-
const linesContainerElement = this.renderingHelper.createDivContainer('lines-container');
|
|
97
|
-
const currentParagraph = this.session.pagesWrap.paragraphs[row];
|
|
98
|
-
const paragraphHeight = ParagraphHelper.getParagraphHeight(currentParagraph.textLinesInfo);
|
|
99
|
-
DomHelper.setStyle(linesContainerElement.style, 'height', `${paragraphHeight}px`);
|
|
100
|
-
parent.appendChild(linesContainerElement);
|
|
101
|
-
const startIndex = this.session.document.positionToIndex(this.session.document.lines, { row, column: 0 });
|
|
102
|
-
const endIndex = this.session.document.positionToIndex(this.session.document.lines, { row: row + 1, column: 0 }) - 1;
|
|
103
|
-
const formats = FormatStyleHelper.getFormatsAtRange(this.session.model.formats, startIndex, endIndex);
|
|
104
|
-
const splits = this.session.wrapData[row];
|
|
105
|
-
const formatsExt = formats.map(format => new FormatExtModel({
|
|
106
|
-
...format,
|
|
107
|
-
content: this.session.model.content.substring(format.startIndex, format.endIndex + 1)
|
|
108
|
-
}));
|
|
109
|
-
if (splits?.length) {
|
|
110
|
-
const distance = new DistanceModel({ start: startIndex, end: endIndex });
|
|
111
|
-
this.renderingHelper.renderContentWrappedLine({ currentElement: this.element, parentNode: linesContainerElement }, splits, currentParagraph, formatsExt, distance, this.session.customContentService, this.session.customComponents, this.session.properties.scalingRatio, this.session.model.breaks);
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
const numberingOffsetLeft = currentParagraph.numberingData.numberingId === null
|
|
115
|
-
? 0
|
|
116
|
-
: currentParagraph.numberingData.width + currentParagraph.numberingData.paddingLeft;
|
|
117
|
-
const lastLineEl = this.renderingHelper.createLineElement(currentParagraph.textLinesInfo[0], numberingOffsetLeft, this.session.properties.scalingRatio);
|
|
118
|
-
linesContainerElement.appendChild(lastLineEl);
|
|
119
|
-
const rowDistance = new DistanceModel({ start: startIndex, end: endIndex });
|
|
120
|
-
this.renderingHelper.renderContentSimpleLine({ currentElement: this.element, parentNode: lastLineEl }, formatsExt, rowDistance, this.session.customContentService, this.session.customComponents, this.session.model.breaks);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5sYXllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvbGF5ZXJzL3RleHQubGF5ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRW5FLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU5RCxNQUFNLE9BQU8sU0FBVSxTQUFRLGFBQWE7SUFTeEMsWUFBbUIsYUFBMEIsRUFBVSxrQkFBa0IsZUFBZTtRQUNwRixLQUFLLEVBQUUsQ0FBQztRQUQyQyxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFzS2hGLDZCQUF3QixHQUFHLENBQUMsS0FBaUQsRUFBRSxFQUFFO1lBQ3JGLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVELENBQUMsQ0FBQztRQXJLRSxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsMEJBQTBCLENBQUM7UUFDcEQsYUFBYSxDQUFD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QVUsQ0FBQyxZQUFZLEVBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDNUIsQ0FBQztTQUNMO2FBQU07WUFDSCxNQUFNLG1CQUFtQixHQUNyQixnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsV0FBVyxLQUFLLElBQUk7Z0JBQy9DLENBQUMsQ0FBQyxDQUFDO2dCQUNILENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7WUFDNUYsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsQ0FDckQsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUNqQyxtQkFBbUIsRUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUN2QyxDQUFDO1lBQ0YscUJBQXFCLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzlDLE1BQU0sV0FBVyxHQUFHLElBQUksYUFBYSxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUM1RSxJQUFJLENBQUMsZUFBZSxDQUFDLHVCQUF1QixDQUN4QyxFQUFFLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsRUFDeEQsVUFBVSxFQUNWLFdBQVcsRUFDWCxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUNqQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQzVCLENBQUM7U0FDTDtJQUNMLENBQUM7Q0FLSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENlbGwgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NlbGwuaW50ZXJmYWNlJztcbmltcG9ydCB7IERpc3RhbmNlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvZGlzdGFuY2UubW9kZWwnO1xuaW1wb3J0IHsgRG9tSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9kb20uaGVscGVyJztcbmltcG9ydCB7IEVkaXRTZXNzaW9uIH0gZnJvbSAnLi4vZWRpdC5zZXNzaW9uJztcbmltcG9ydCB7IEV2ZW50RW1pdHRpbmcgfSBmcm9tICcuLi9iYXNlL2V2ZW50LWVtaXR0aW5nJztcbmltcG9ydCB7IEZvcm1hdEV4dE1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2Zvcm1hdC1leHQubW9kZWwnO1xuaW1wb3J0IHsgRm9ybWF0U3R5bGVIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2Zvcm1hdC1zdHlsZS5oZWxwZXInO1xuaW1wb3J0IHsgSUxheWVyQ29uZmlnIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9sYXllci5jb25maWcnO1xuaW1wb3J0IHsgTGluZXMgfSBmcm9tICcuL2xpbmVzJztcbmltcG9ydCB7IFBhcmFncmFwaCB9IGZyb20gJy4uL3BhZ2luZy9wYXJhZ3JhcGgnO1xuaW1wb3J0IHsgUGFyYWdyYXBoSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9wYXJhZ3JhcGguaGVscGVyJztcbmltcG9ydCB7IFJlbmRlcmluZ0hlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvcmVuZGVyaW5nLmhlbHBlcic7XG5cbmV4cG9ydCBjbGFzcyBUZXh0TGF5ZXIgZXh0ZW5kcyBFdmVudEVtaXR0aW5nIHtcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICAgIGxpbmVzOiBMaW5lcztcblxuICAgIHNlc3Npb246IEVkaXRTZXNzaW9uO1xuXG4gICAgY29uZmlnOiBJTGF5ZXJDb25maWc7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocGFyZW50RWxlbWVudDogSFRNTEVsZW1lbnQsIHByaXZhdGUgcmVuZGVyaW5nSGVscGVyID0gUmVuZGVyaW5nSGVscGVyKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgdGhpcy5lbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc05hbWUgPSAnYWNlLWxheWVyIGFjZS10ZXh0LWxheWVyJztcbiAgICAgICAgcGFyZW50RWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLmVsZW1lbnQpO1xuXG4gICAgICAgIHRoaXMubGluZXMgPSBuZXcgTGluZXModGhpcy5lbGVtZW50KTtcbiAgICB9XG5cbiAgICBzZXRTZXNzaW9uKHNlc3Npb246IEVkaXRTZXNzaW9uKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNlc3Npb24pIHtcbiAgICAgICAgICAgIHRoaXMuc2Vzc2lvbi5wYWdlc1dyYXAucmVtb3ZlRXZlbnRMaXN0ZW5lcigncGFnZXNDb3VudENoYW5nZWQnLCB0aGlzLnBhZ2VzQ291bnRDaGFuZ2VkSGFuZGxlcik7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNlc3Npb24gPSBzZXNzaW9uO1xuICAgICAgICBpZiAoc2Vzc2lvbikge1xuICAgICAgICAgICAgdGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5hZGRFdmVudExpc3RlbmVyKCdwYWdlc0NvdW50Q2hhbmdlZCcsIHRoaXMucGFnZXNDb3VudENoYW5nZWRIYW5kbGVyKTtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS53aWR0aCA9IGAke3RoaXMuc2Vzc2lvbi5wYWdlc1dyYXAuY29udGVudFdpZHRofXB4YDtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS5tYXJnaW4gPSBgMCAke3RoaXMuc2Vzc2lvbi5wYWdlc1dyYXAuZG9jdW1lbnRNYXJnaW4ucmlnaHR9cHggMCAke3RoaXMuc2Vzc2lvbi5wYWdlc1dyYXAuZG9jdW1lbnRNYXJnaW4ubGVmdH1weGA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGUoY29uZmlnOiBJTGF5ZXJDb25maWcpOiB2b2lkIHtcbiAgICAgICAgRG9tSGVscGVyLnRyYW5zbGF0ZSh0aGlzLmVsZW1lbnQsIDAsIC1jb25maWcuc2Nyb2xsVG9wKTtcblxuICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcblxuICAgICAgICB3aGlsZSAodGhpcy5saW5lcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMubGluZXMucG9wKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmxpbmVzLnB1c2godGhpcy5yZW5kZXJUZXh0UGFyYWdyYXBoKGNvbmZpZy5jb250ZW50UmFuZ2UpKTtcbiAgICB9XG5cbiAgICBzY3JvbGxMaW5lcyhjb25maWc6IElMYXllckNvbmZpZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBvbGRDb25maWcgPSB0aGlzLmNvbmZpZztcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG5cbiAgICAgICAgRG9tSGVscGVyLnRyYW5zbGF0ZSh0aGlzLmVsZW1lbnQsIDAsIC1jb25maWcuc2Nyb2xsVG9wKTtcblxuICAgICAgICBjb25zdCBvbGRMYXN0Um93ID0gb2xkQ29uZmlnID8gb2xkQ29uZmlnLmNvbnRlbnRSYW5nZS5lbmQgOiAtMTtcblxuICAgICAgICBpZiAoIW9sZENvbmZpZyB8fCBvbGRMYXN0Um93IDwgY29uZmlnLmNvbnRlbnRSYW5nZS5zdGFydCB8fCBjb25maWcuY29udGVudFJhbmdlLmVuZCA8IG9sZENvbmZpZy5jb250ZW50UmFuZ2Uuc3RhcnQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZShjb25maWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9sZENvbmZpZy5jb250ZW50UmFuZ2Uuc3RhcnQgPCBjb25maWcuY29udGVudFJhbmdlLnN0YXJ0KSB7XG4gICAgICAgICAgICBmb3IgKGxldCByb3cgPSBjb25maWcuY29udGVudFJhbmdlLnN0YXJ0IC0gb2xkQ29uZmlnLmNvbnRlbnRSYW5nZS5zdGFydDsgcm93ID4gMDsgcm93LS0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxpbmVzLnNoaWZ0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob2xkQ29uZmlnLmNvbnRlbnRSYW5nZS5lbmQgPiBjb25maWcuY29udGVudFJhbmdlLmVuZCkge1xuICAgICAgICAgICAgZm9yIChsZXQgcm93ID0gb2xkQ29uZmlnLmNvbnRlbnRSYW5nZS5lbmQgLSBjb25maWcuY29udGVudFJhbmdlLmVuZDsgcm93ID4gMDsgcm93LS0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxpbmVzLnBvcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9sZENvbmZpZy5jb250ZW50UmFuZ2Uuc3RhcnQgPiBjb25maWcuY29udGVudFJhbmdlLnN0YXJ0KSB7XG4gICAgICAgICAgICBjb25zdCBsaW5lcyA9IHRoaXMucmVuZGVyVGV4dFBhcmFncmFwaChcbiAgICAgICAgICAgICAgICBuZXcgRGlzdGFuY2VNb2RlbCh7IHN0YXJ0OiBjb25maWcuY29udGVudFJhbmdlLnN0YXJ0LCBlbmQ6IG9sZENvbmZpZy5jb250ZW50UmFuZ2Uuc3RhcnQgLSAxIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5saW5lcy51bnNoaWZ0KGxpbmVzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbGRDb25maWcuY29udGVudFJhbmdlLmVuZCA8IGNvbmZpZy5jb250ZW50UmFuZ2UuZW5kKSB7XG4gICAgICAgICAgICBjb25zdCBsaW5lcyA9IHRoaXMucmVuZGVyVGV4dFBhcmFncmFwaChcbiAgICAgICAgICAgICAgICBuZXcgRGlzdGFuY2VNb2RlbCh7IHN0YXJ0OiBvbGRDb25maWcuY29udGVudFJhbmdlLmVuZCArIDEsIGVuZDogY29uZmlnLmNvbnRlbnRSYW5nZS5lbmQgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmxpbmVzLnB1c2gobGluZXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5yZW1vdmVFdmVudExpc3RlbmVyKCdwYWdlc0NvdW50Q2hhbmdlZCcsIHRoaXMucGFnZXNDb3VudENoYW5nZWRIYW5kbGVyKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0UGFyYWdyYXBoVG9wKHBhcmFncmFwaHM6IFBhcmFncmFwaFtdLCByb3c6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlc3Npb24ucGFnZXNXcmFwLmdldFBhcmFncmFwaFRvcChwYXJhZ3JhcGhzLCByb3cpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVyVGV4dFBhcmFncmFwaChyb3dzRGlzdGFuY2U6IERpc3RhbmNlTW9kZWwpOiBDZWxsW10ge1xuICAgICAgICBjb25zdCBmcmFnbWVudDogQ2VsbFtdID0gW107XG4gICAgICAgIGZvciAobGV0IHJvdyA9IHJvd3NEaXN0YW5jZS5zdGFydDsgcm93IDw9IHJvd3NEaXN0YW5jZS5lbmQ7IHJvdysrKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhZ3JhcGhzID0gdGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5wYXJhZ3JhcGhzO1xuXG4gICAgICAgICAgICBjb25zdCBwYXJhZ3JhcGhDZWxsID0gdGhpcy5saW5lcy5jcmVhdGVDZWxsKHJvdyk7XG4gICAgICAgICAgICBwYXJhZ3JhcGhDZWxsLmVsZW1lbnQuY2xhc3NOYW1lID0gJ2FjZS1saW5lLWdyb3VwJztcbiAgICAgICAgICAgIERvbUhlbHBlci5yZW1vdmVDaGlsZHJlbihwYXJhZ3JhcGhDZWxsLmVsZW1lbnQpO1xuICAgICAgICAgICAgY29uc3QgcGFyYWdyYXBoSGVpZ2h0ID0gdGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5nZXRQYXJhZ3JhcGhIZWlnaHQocGFyYWdyYXBocywgcm93KTtcbiAgICAgICAgICAgIGNvbnN0IHBhcmFncmFwaFRvcCA9IHRoaXMuZ2V0UGFyYWdyYXBoVG9wKHBhcmFncmFwaHMsIHJvdyk7XG4gICAgICAgICAgICBEb21IZWxwZXIuc2V0U3R5bGUocGFyYWdyYXBoQ2VsbC5lbGVtZW50LnN0eWxlLCAnaGVpZ2h0JywgYCR7cGFyYWdyYXBoSGVpZ2h0fXB4YCk7XG4gICAgICAgICAgICBEb21IZWxwZXIuc2V0U3R5bGUocGFyYWdyYXBoQ2VsbC5lbGVtZW50LnN0eWxlLCAndG9wJywgYCR7cGFyYWdyYXBoVG9wfXB4YCk7XG4gICAgICAgICAgICBjb25zdCBwYXJhZ3JhcGggPSBwYXJhZ3JhcGhzW3Jvd107XG4gICAgICAgICAgICBpZiAocGFyYWdyYXBoLm51bWJlcmluZ0RhdGEubnVtYmVyaW5nSWQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBudW1iZXJpbmdFbGVtZW50ID0gdGhpcy5yZW5kZXJpbmdIZWxwZXIucmVuZGVyTnVtYmVyaW5nTWFya2VyKFxuICAgICAgICAgICAgICAgICAgICBwYXJhZ3JhcGgsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uLnByb3BlcnRpZXMuc2NhbGluZ1JhdGlvXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBudW1iZXJpbmdFbGVtZW50LmNsYXNzTmFtZSA9ICdudW1iZXJpbmdNYXJrZXInO1xuICAgICAgICAgICAgICAgIHBhcmFncmFwaENlbGwuZWxlbWVudC5hcHBlbmRDaGlsZChudW1iZXJpbmdFbGVtZW50KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5yZW5kZXJUZXh0TGluZXMocGFyYWdyYXBoQ2VsbC5lbGVtZW50LCByb3cpO1xuICAgICAgICAgICAgZnJhZ21lbnQucHVzaChwYXJhZ3JhcGhDZWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmcmFnbWVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlclRleHRMaW5lcyhwYXJlbnQ6IE5vZGUsIHJvdzogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGxpbmVzQ29udGFpbmVyRWxlbWVudCA9IHRoaXMucmVuZGVyaW5nSGVscGVyLmNyZWF0ZURpdkNvbnRhaW5lcignbGluZXMtY29udGFpbmVyJyk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRQYXJhZ3JhcGggPSB0aGlzLnNlc3Npb24ucGFnZXNXcmFwLnBhcmFncmFwaHNbcm93XTtcbiAgICAgICAgY29uc3QgcGFyYWdyYXBoSGVpZ2h0ID0gUGFyYWdyYXBoSGVscGVyLmdldFBhcmFncmFwaEhlaWdodChjdXJyZW50UGFyYWdyYXBoLnRleHRMaW5lc0luZm8pO1xuICAgICAgICBEb21IZWxwZXIuc2V0U3R5bGUobGluZXNDb250YWluZXJFbGVtZW50LnN0eWxlLCAnaGVpZ2h0JywgYCR7cGFyYWdyYXBoSGVpZ2h0fXB4YCk7XG4gICAgICAgIHBhcmVudC5hcHBlbmRDaGlsZChsaW5lc0NvbnRhaW5lckVsZW1lbnQpO1xuXG4gICAgICAgIGNvbnN0IHN0YXJ0SW5kZXggPSB0aGlzLnNlc3Npb24uZG9jdW1lbnQucG9zaXRpb25Ub0luZGV4KHRoaXMuc2Vzc2lvbi5kb2N1bWVudC5saW5lcywgeyByb3csIGNvbHVtbjogMCB9KTtcbiAgICAgICAgY29uc3QgZW5kSW5kZXggPSB0aGlzLnNlc3Npb24uZG9jdW1lbnQucG9zaXRpb25Ub0luZGV4KHRoaXMuc2Vzc2lvbi5kb2N1bWVudC5saW5lcywgeyByb3c6IHJvdyArIDEsIGNvbHVtbjogMCB9KSAtIDE7XG4gICAgICAgIGNvbnN0IGZvcm1hdHMgPSBGb3JtYXRTdHlsZUhlbHBlci5nZXRGb3JtYXRzQXRSYW5nZSh0aGlzLnNlc3Npb24ubW9kZWwuZm9ybWF0cywgc3RhcnRJbmRleCwgZW5kSW5kZXgpO1xuICAgICAgICBjb25zdCBzcGxpdHMgPSB0aGlzLnNlc3Npb24ud3JhcERhdGFbcm93XTtcbiAgICAgICAgY29uc3QgZm9ybWF0c0V4dCA9IGZvcm1hdHMubWFwKFxuICAgICAgICAgICAgZm9ybWF0ID0+XG4gICAgICAgICAgICAgICAgbmV3IEZvcm1hdEV4dE1vZGVsKHtcbiAgICAgICAgICAgICAgICAgICAgLi4uZm9ybWF0LFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB0aGlzLnNlc3Npb24ubW9kZWwuY29udGVudC5zdWJzdHJpbmcoZm9ybWF0LnN0YXJ0SW5kZXgsIGZvcm1hdC5lbmRJbmRleCArIDEpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHNwbGl0cz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBkaXN0YW5jZSA9IG5ldyBEaXN0YW5jZU1vZGVsKHsgc3RhcnQ6IHN0YXJ0SW5kZXgsIGVuZDogZW5kSW5kZXggfSk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmluZ0hlbHBlci5yZW5kZXJDb250ZW50V3JhcHBlZExpbmUoXG4gICAgICAgICAgICAgICAgeyBjdXJyZW50RWxlbWVudDogdGhpcy5lbGVtZW50LCBwYXJlbnROb2RlOiBsaW5lc0NvbnRhaW5lckVsZW1lbnQgfSxcbiAgICAgICAgICAgICAgICBzcGxpdHMsXG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaCxcbiAgICAgICAgICAgICAgICBmb3JtYXRzRXh0LFxuICAgICAgICAgICAgICAgIGRpc3RhbmNlLFxuICAgICAgICAgICAgICAgIHRoaXMuc2Vzc2lvbi5jdXN0b21Db250ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb24uY3VzdG9tQ29tcG9uZW50cyxcbiAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb24ucHJvcGVydGllcy5zY2FsaW5nUmF0aW8sXG4gICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uLm1vZGVsLmJyZWFrc1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IG51bWJlcmluZ09mZnNldExlZnQgPVxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGgubnVtYmVyaW5nRGF0YS5udW1iZXJpbmdJZCA9PT0gbnVsbFxuICAgICAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICAgICAgOiBjdXJyZW50UGFyYWdyYXBoLm51bWJlcmluZ0RhdGEud2lkdGggKyBjdXJyZW50UGFyYWdyYXBoLm51bWJlcmluZ0RhdGEucGFkZGluZ0xlZnQ7XG4gICAgICAgICAgICBjb25zdCBsYXN0TGluZUVsID0gdGhpcy5yZW5kZXJpbmdIZWxwZXIuY3JlYXRlTGluZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC50ZXh0TGluZXNJbmZvWzBdLFxuICAgICAgICAgICAgICAgIG51bWJlcmluZ09mZnNldExlZnQsXG4gICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uLnByb3BlcnRpZXMuc2NhbGluZ1JhdGlvXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbGluZXNDb250YWluZXJFbGVtZW50LmFwcGVuZENoaWxkKGxhc3RMaW5lRWwpO1xuICAgICAgICAgICAgY29uc3Qgcm93RGlzdGFuY2UgPSBuZXcgRGlzdGFuY2VNb2RlbCh7IHN0YXJ0OiBzdGFydEluZGV4LCBlbmQ6IGVuZEluZGV4IH0pO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJpbmdIZWxwZXIucmVuZGVyQ29udGVudFNpbXBsZUxpbmUoXG4gICAgICAgICAgICAgICAgeyBjdXJyZW50RWxlbWVudDogdGhpcy5lbGVtZW50LCBwYXJlbnROb2RlOiBsYXN0TGluZUVsIH0sXG4gICAgICAgICAgICAgICAgZm9ybWF0c0V4dCxcbiAgICAgICAgICAgICAgICByb3dEaXN0YW5jZSxcbiAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb24uY3VzdG9tQ29udGVudFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uLmN1c3RvbUNvbXBvbmVudHMsXG4gICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uLm1vZGVsLmJyZWFrc1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcGFnZXNDb3VudENoYW5nZWRIYW5kbGVyID0gKGV2ZW50OiB7IHBhZ2VzQ291bnQ6IG51bWJlcjsgcGFnZUhlaWdodDogbnVtYmVyIH0pID0+IHtcbiAgICAgICAgdGhpcy5saW5lcy5zZXRTaXplcyhldmVudC5wYWdlc0NvdW50LCBldmVudC5wYWdlSGVpZ2h0KTtcbiAgICB9O1xufVxuIl19
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export class DisplayToken {
|
|
2
|
-
get breaksLine() {
|
|
3
|
-
return this.isPageBreak || this.isLineBreak;
|
|
4
|
-
}
|
|
5
|
-
constructor(fields) {
|
|
6
|
-
if (!fields) {
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
Object.assign(this, fields);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS10b2tlbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvbW9kZWxzL2Rpc3BsYXktdG9rZW4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLFlBQVk7SUF3QnJCLElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ2hELENBQUM7SUFFRCxZQUFtQixNQUE4QjtRQUM3QyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUZvbnRNZXRyaWNTaXplIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mb250LW1ldHJpYy1zaXplLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBEaXNwbGF5VG9rZW4gaW1wbGVtZW50cyBJRm9udE1ldHJpY1NpemUge1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgaGVpZ2h0OiBudW1iZXI7XG4gICAgYmFzZWxpbmU6IG51bWJlcjtcbiAgICBjb250ZW50OiBudW1iZXI7XG4gICAgZm9udDogbnVtYmVyO1xuICAgIGxpbmU6IG51bWJlcjtcbiAgICBsaW5lU3BhY2luZzogbnVtYmVyO1xuICAgIG11bHRpcGxpZXI6IG51bWJlcjtcbiAgICBhc2NlbnQ6IG51bWJlcjtcbiAgICBkZXNjZW50OiBudW1iZXI7XG4gICAgZGlzcGxheVZhbHVlOiBudW1iZXI7XG4gICAgYWxpZ246IG51bWJlcjtcbiAgICBpbmRlbnRGaXJzdExpbmU6IG51bWJlcjtcbiAgICBpbmRlbnRIYW5naW5nOiBudW1iZXI7XG4gICAgaW5kZW50TGVmdDogbnVtYmVyO1xuICAgIGluZGVudFJpZ2h0OiBudW1iZXI7XG4gICAgaW5kZW50QmVmb3JlOiBudW1iZXI7XG4gICAgaW5kZW50QWZ0ZXI6IG51bWJlcjtcbiAgICBpc1BhZ2VCcmVhazogYm9vbGVhbjtcbiAgICBpc0xpbmVCcmVhazogYm9vbGVhbjtcbiAgICBpc1RhYjogYm9vbGVhbjtcbiAgICBpc1RhYmxlOiBib29sZWFuO1xuXG4gICAgZ2V0IGJyZWFrc0xpbmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzUGFnZUJyZWFrIHx8IHRoaXMuaXNMaW5lQnJlYWs7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGZpZWxkcz86IFBhcnRpYWw8RGlzcGxheVRva2VuPikge1xuICAgICAgICBpZiAoIWZpZWxkcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export class DistanceModel {
|
|
2
|
-
constructor(fields) {
|
|
3
|
-
if (!fields) {
|
|
4
|
-
return;
|
|
5
|
-
}
|
|
6
|
-
Object.assign(this, fields);
|
|
7
|
-
this.selectionEnd = this.end > 0 ? this.end - 1 : 0;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdGFuY2UubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL21vZGVscy9kaXN0YW5jZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUt0QixZQUFZLE1BQStCO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBEaXN0YW5jZU1vZGVsIHtcbiAgICBlbmQ6IG51bWJlcjtcbiAgICBzZWxlY3Rpb25FbmQ6IG51bWJlcjtcbiAgICBzdGFydDogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoZmllbGRzPzogUGFydGlhbDxEaXN0YW5jZU1vZGVsPikge1xuICAgICAgICBpZiAoIWZpZWxkcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgICAgICB0aGlzLnNlbGVjdGlvbkVuZCA9IHRoaXMuZW5kID4gMCA/IHRoaXMuZW5kIC0gMSA6IDA7XG4gICAgfVxufVxuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class EdgeElementModel {
|
|
2
|
-
constructor(fields) {
|
|
3
|
-
if (!fields) {
|
|
4
|
-
return;
|
|
5
|
-
}
|
|
6
|
-
Object.assign(this, fields);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS1lbGVtZW50Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9tb2RlbHMvZWRnZS1lbGVtZW50Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFLekIsWUFBWSxNQUFrQztRQUMxQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnZVR5cGUgfSBmcm9tICcuLi9lbnVtcy9wYWdlLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBFZGdlRWxlbWVudE1vZGVsIHtcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudDtcbiAgICBwYWdlOiBudW1iZXI7XG4gICAgcGFnZVR5cGU6IFBhZ2VUeXBlO1xuXG4gICAgY29uc3RydWN0b3IoZmllbGRzPzogUGFydGlhbDxFZGdlRWxlbWVudE1vZGVsPikge1xuICAgICAgICBpZiAoIWZpZWxkcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { FormatModel } from '../../../../models/generated/format.model';
|
|
2
|
-
export class FormatExtModel extends FormatModel {
|
|
3
|
-
constructor(fields) {
|
|
4
|
-
super(fields);
|
|
5
|
-
if (fields) {
|
|
6
|
-
Object.assign(this, fields);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LWV4dC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvbW9kZWxzL2Zvcm1hdC1leHQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRXhFLE1BQU0sT0FBTyxjQUFlLFNBQVEsV0FBVztJQUczQyxZQUFZLE1BQWdDO1FBQ3hDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVkLElBQUksTUFBTSxFQUFFO1lBQ1IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDL0I7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtYXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvZm9ybWF0Lm1vZGVsJztcblxuZXhwb3J0IGNsYXNzIEZvcm1hdEV4dE1vZGVsIGV4dGVuZHMgRm9ybWF0TW9kZWwge1xuICAgIGNvbnRlbnQ6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKGZpZWxkcz86IFBhcnRpYWw8Rm9ybWF0RXh0TW9kZWw+KSB7XG4gICAgICAgIHN1cGVyKGZpZWxkcyk7XG5cbiAgICAgICAgaWYgKGZpZWxkcykge1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class IndentModel {
|
|
2
|
-
constructor(firstLine, hanging, left, right) {
|
|
3
|
-
this.firstLine = firstLine;
|
|
4
|
-
this.hanging = hanging;
|
|
5
|
-
this.left = left;
|
|
6
|
-
this.right = right;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZW50Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9tb2RlbHMvaW5kZW50Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxXQUFXO0lBQ3BCLFlBQW1CLFNBQWlCLEVBQVMsT0FBZSxFQUFTLElBQVksRUFBUyxLQUFhO1FBQXBGLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFBUyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQVE7SUFBRyxDQUFDO0NBQzlHIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEluZGVudE1vZGVsIHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZmlyc3RMaW5lOiBudW1iZXIsIHB1YmxpYyBoYW5naW5nOiBudW1iZXIsIHB1YmxpYyBsZWZ0OiBudW1iZXIsIHB1YmxpYyByaWdodDogbnVtYmVyKSB7fVxufVxuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class LineInfoModel {
|
|
2
|
-
constructor(fields) {
|
|
3
|
-
if (!fields) {
|
|
4
|
-
return;
|
|
5
|
-
}
|
|
6
|
-
Object.assign(this, fields);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1pbmZvLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9tb2RlbHMvbGluZS1pbmZvLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxhQUFhO0lBYXRCLFlBQVksTUFBK0I7UUFDdkMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluZGVudE1vZGVsIH0gZnJvbSAnLi9pbmRlbnQubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgTGluZUluZm9Nb2RlbCB7XG4gICAgaGVpZ2h0OiBudW1iZXI7XG4gICAgd2lkdGg6IG51bWJlcjtcbiAgICBhbGlnbjogbnVtYmVyO1xuICAgIGluZGVudDogSW5kZW50TW9kZWw7XG4gICAgb2Zmc2V0QmVmb3JlOiBudW1iZXI7XG4gICAgb2Zmc2V0QWZ0ZXI6IG51bWJlcjtcbiAgICBsaW5lU3BhY2luZzogbnVtYmVyO1xuICAgIGlzQWZ0ZXJQYWdlQnJlYWs6IGJvb2xlYW47XG4gICAgaXNFbmRlZEJ5UGFnZUJyZWFrOiBib29sZWFuO1xuICAgIGJhY2tncm91bmRDb2xvcjogc3RyaW5nO1xuICAgIGhhc1RhYmxlOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoZmllbGRzPzogUGFydGlhbDxMaW5lSW5mb01vZGVsPikge1xuICAgICAgICBpZiAoIWZpZWxkcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { DocumentInfo } from '../constants/document-info.const';
|
|
2
|
-
export class MarginModel {
|
|
3
|
-
constructor(fields) {
|
|
4
|
-
this.left = DocumentInfo.paddingLeft;
|
|
5
|
-
this.right = DocumentInfo.paddingRight;
|
|
6
|
-
this.top = DocumentInfo.paddingTop;
|
|
7
|
-
this.bottom = DocumentInfo.paddingBottom;
|
|
8
|
-
this.header = DocumentInfo.paddingHeader;
|
|
9
|
-
this.footer = DocumentInfo.paddingFooter;
|
|
10
|
-
if (!fields) {
|
|
11
|
-
return;
|
|
12
|
-
}
|
|
13
|
-
Object.assign(this, fields);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyZ2luLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9tb2RlbHMvbWFyZ2luLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVoRSxNQUFNLE9BQU8sV0FBVztJQVFwQixZQUFZLE1BQTZCO1FBUHpDLFNBQUksR0FBRyxZQUFZLENBQUMsV0FBVyxDQUFDO1FBQ2hDLFVBQUssR0FBRyxZQUFZLENBQUMsWUFBWSxDQUFDO1FBQ2xDLFFBQUcsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDO1FBQzlCLFdBQU0sR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBQ3BDLFdBQU0sR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBQ3BDLFdBQU0sR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBR2hDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb2N1bWVudEluZm8gfSBmcm9tICcuLi9jb25zdGFudHMvZG9jdW1lbnQtaW5mby5jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBNYXJnaW5Nb2RlbCB7XG4gICAgbGVmdCA9IERvY3VtZW50SW5mby5wYWRkaW5nTGVmdDtcbiAgICByaWdodCA9IERvY3VtZW50SW5mby5wYWRkaW5nUmlnaHQ7XG4gICAgdG9wID0gRG9jdW1lbnRJbmZvLnBhZGRpbmdUb3A7XG4gICAgYm90dG9tID0gRG9jdW1lbnRJbmZvLnBhZGRpbmdCb3R0b207XG4gICAgaGVhZGVyID0gRG9jdW1lbnRJbmZvLnBhZGRpbmdIZWFkZXI7XG4gICAgZm9vdGVyID0gRG9jdW1lbnRJbmZvLnBhZGRpbmdGb290ZXI7XG5cbiAgICBjb25zdHJ1Y3RvcihmaWVsZHM/OiBQYXJ0aWFsPE1hcmdpbk1vZGVsPikge1xuICAgICAgICBpZiAoIWZpZWxkcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class NumberingDataModel {
|
|
2
|
-
constructor(fields) {
|
|
3
|
-
if (!fields) {
|
|
4
|
-
return;
|
|
5
|
-
}
|
|
6
|
-
Object.assign(this, fields);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyaW5nLWRhdGEubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL21vZGVscy9udW1iZXJpbmctZGF0YS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBUzNCLFlBQVksTUFBb0M7UUFDNUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRleHRTdHlsZU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2dlbmVyYXRlZC90ZXh0LXN0eWxlLm1vZGVsJztcblxuZXhwb3J0IGNsYXNzIE51bWJlcmluZ0RhdGFNb2RlbCB7XG4gICAgbnVtYmVyaW5nSWQ6IG51bWJlcjtcbiAgICBsZXZlbDogbnVtYmVyO1xuICAgIG1hcmtlcjogc3RyaW5nO1xuICAgIG1hcmtlclRleHRTdHlsZTogVGV4dFN0eWxlTW9kZWw7XG4gICAgaGVpZ2h0OiBudW1iZXI7XG4gICAgd2lkdGg6IG51bWJlcjtcbiAgICBwYWRkaW5nTGVmdDogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoZmllbGRzPzogUGFydGlhbDxOdW1iZXJpbmdEYXRhTW9kZWw+KSB7XG4gICAgICAgIGlmICghZmllbGRzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGZpZWxkcyk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export class RenderChangesModel {
|
|
2
|
-
get any() {
|
|
3
|
-
return this.cursor || this.full || this.lines || this.marker || this.selection || this.scroll || this.size || this.text;
|
|
4
|
-
}
|
|
5
|
-
constructor(fields) {
|
|
6
|
-
this.cursor = false;
|
|
7
|
-
this.full = false;
|
|
8
|
-
this.lines = false;
|
|
9
|
-
this.marker = false;
|
|
10
|
-
this.selection = false;
|
|
11
|
-
this.scroll = false;
|
|
12
|
-
this.size = false;
|
|
13
|
-
this.text = false;
|
|
14
|
-
if (!fields) {
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
Object.assign(this, fields);
|
|
18
|
-
}
|
|
19
|
-
apply(changes) {
|
|
20
|
-
for (let key of Object.keys(this)) {
|
|
21
|
-
this[key] ||= changes[key];
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWNoYW5nZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL21vZGVscy9yZW5kZXItY2hhbmdlcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBVTNCLElBQUksR0FBRztRQUNILE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzVILENBQUM7SUFFRCxZQUFZLE1BQW9DO1FBYmhELFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUNkLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsU0FBSSxHQUFHLEtBQUssQ0FBQztRQU9ULElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQXVCO1FBQ3pCLEtBQUssSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzlCO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlbmRlckNoYW5nZXMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3JlbmRlci1jaGFuZ2VzLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBSZW5kZXJDaGFuZ2VzTW9kZWwgaW1wbGVtZW50cyBJUmVuZGVyQ2hhbmdlcyB7XG4gICAgY3Vyc29yID0gZmFsc2U7XG4gICAgZnVsbCA9IGZhbHNlO1xuICAgIGxpbmVzID0gZmFsc2U7XG4gICAgbWFya2VyID0gZmFsc2U7XG4gICAgc2VsZWN0aW9uID0gZmFsc2U7XG4gICAgc2Nyb2xsID0gZmFsc2U7XG4gICAgc2l6ZSA9IGZhbHNlO1xuICAgIHRleHQgPSBmYWxzZTtcblxuICAgIGdldCBhbnkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnNvciB8fCB0aGlzLmZ1bGwgfHwgdGhpcy5saW5lcyB8fCB0aGlzLm1hcmtlciB8fCB0aGlzLnNlbGVjdGlvbiB8fCB0aGlzLnNjcm9sbCB8fCB0aGlzLnNpemUgfHwgdGhpcy50ZXh0O1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGZpZWxkcz86IFBhcnRpYWw8UmVuZGVyQ2hhbmdlc01vZGVsPikge1xuICAgICAgICBpZiAoIWZpZWxkcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBmaWVsZHMpO1xuICAgIH1cblxuICAgIGFwcGx5KGNoYW5nZXM6IElSZW5kZXJDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGZvciAobGV0IGtleSBvZiBPYmplY3Qua2V5cyh0aGlzKSkge1xuICAgICAgICAgICAgdGhpc1trZXldIHx8PSBjaGFuZ2VzW2tleV07XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class PageVerticalDataModel {
|
|
2
|
-
constructor(fields) {
|
|
3
|
-
if (!fields) {
|
|
4
|
-
return;
|
|
5
|
-
}
|
|
6
|
-
Object.assign(this, fields);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS12ZXJ0aWNhbC1kYXRhLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9wYWdpbmcvcGFnZS12ZXJ0aWNhbC1kYXRhLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxxQkFBcUI7SUFNOUIsWUFBWSxNQUF1QztRQUMvQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnZVR5cGUgfSBmcm9tICcuLi9lbnVtcy9wYWdlLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBQYWdlVmVydGljYWxEYXRhTW9kZWwge1xuICAgIG1hcmdpbkJvdHRvbTogbnVtYmVyO1xuICAgIG1hcmdpblRvcDogbnVtYmVyO1xuICAgIGNvbnRlbnRIZWlnaHQ6IG51bWJlcjtcbiAgICBwYWdlVHlwZTogUGFnZVR5cGU7XG5cbiAgICBjb25zdHJ1Y3RvcihmaWVsZHM/OiBQYXJ0aWFsPFBhZ2VWZXJ0aWNhbERhdGFNb2RlbD4pIHtcbiAgICAgICAgaWYgKCFmaWVsZHMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgZmllbGRzKTtcbiAgICB9XG59XG4iXX0=
|