@talrace/ngx-noder 0.0.7

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.
Files changed (515) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +274 -0
  3. package/esm2022/lib/+shared/abstract/base-api.service.mjs +99 -0
  4. package/esm2022/lib/+shared/abstract/observer.component.mjs +24 -0
  5. package/esm2022/lib/+shared/confirm-dialog/confirm-dialog.component.mjs +28 -0
  6. package/esm2022/lib/+shared/constants/default-file-name.const.mjs +2 -0
  7. package/esm2022/lib/+shared/constants/paginator-sizes.const.mjs +3 -0
  8. package/esm2022/lib/+shared/editor/core/base/event-emitting.mjs +71 -0
  9. package/esm2022/lib/+shared/editor/core/components/edges/edge-type.enum.mjs +6 -0
  10. package/esm2022/lib/+shared/editor/core/components/edges/edge.component.mjs +100 -0
  11. package/esm2022/lib/+shared/editor/core/components/edges/edges.mjs +104 -0
  12. package/esm2022/lib/+shared/editor/core/constants/alignments.const.mjs +8 -0
  13. package/esm2022/lib/+shared/editor/core/constants/clipboardEventTypes.const.mjs +6 -0
  14. package/esm2022/lib/+shared/editor/core/constants/content-style-change.const.mjs +15 -0
  15. package/esm2022/lib/+shared/editor/core/constants/display-values.const.mjs +8 -0
  16. package/esm2022/lib/+shared/editor/core/constants/document-info.const.mjs +13 -0
  17. package/esm2022/lib/+shared/editor/core/constants/editor-version.const.mjs +2 -0
  18. package/esm2022/lib/+shared/editor/core/constants/editor.const.mjs +62 -0
  19. package/esm2022/lib/+shared/editor/core/constants/unicode-chars.const.mjs +5 -0
  20. package/esm2022/lib/+shared/editor/core/document.mjs +134 -0
  21. package/esm2022/lib/+shared/editor/core/edit.session.mjs +1102 -0
  22. package/esm2022/lib/+shared/editor/core/editor.mjs +1279 -0
  23. package/esm2022/lib/+shared/editor/core/enums/break-types.enum.mjs +7 -0
  24. package/esm2022/lib/+shared/editor/core/enums/hrule.enum.mjs +7 -0
  25. package/esm2022/lib/+shared/editor/core/enums/mouse-button.enum.mjs +7 -0
  26. package/esm2022/lib/+shared/editor/core/enums/numbering-marker-type.enum.mjs +12 -0
  27. package/esm2022/lib/+shared/editor/core/enums/page-type.enum.mjs +7 -0
  28. package/esm2022/lib/+shared/editor/core/enums/vertical-alignment.enum.mjs +11 -0
  29. package/esm2022/lib/+shared/editor/core/helpers/content-style.helper.mjs +156 -0
  30. package/esm2022/lib/+shared/editor/core/helpers/delta.helper.mjs +18 -0
  31. package/esm2022/lib/+shared/editor/core/helpers/dom.helper.mjs +42 -0
  32. package/esm2022/lib/+shared/editor/core/helpers/event.helper.mjs +18 -0
  33. package/esm2022/lib/+shared/editor/core/helpers/font-metrics.helper.mjs +88 -0
  34. package/esm2022/lib/+shared/editor/core/helpers/format-style.helper.mjs +72 -0
  35. package/esm2022/lib/+shared/editor/core/helpers/line-width.helper.mjs +13 -0
  36. package/esm2022/lib/+shared/editor/core/helpers/numbering.helper.mjs +83 -0
  37. package/esm2022/lib/+shared/editor/core/helpers/page.helper.mjs +12 -0
  38. package/esm2022/lib/+shared/editor/core/helpers/paragraph-style.helper.mjs +41 -0
  39. package/esm2022/lib/+shared/editor/core/helpers/paragraph.helper.mjs +132 -0
  40. package/esm2022/lib/+shared/editor/core/helpers/position.helper.mjs +191 -0
  41. package/esm2022/lib/+shared/editor/core/helpers/print.rendering.helper.mjs +7 -0
  42. package/esm2022/lib/+shared/editor/core/helpers/rendering.helper.mjs +186 -0
  43. package/esm2022/lib/+shared/editor/core/helpers/unicode.helper.mjs +20 -0
  44. package/esm2022/lib/+shared/editor/core/interfaces/cell.interface.mjs +2 -0
  45. package/esm2022/lib/+shared/editor/core/interfaces/cursor-position.interface.mjs +2 -0
  46. package/esm2022/lib/+shared/editor/core/interfaces/font-metric-size.interface.mjs +2 -0
  47. package/esm2022/lib/+shared/editor/core/interfaces/layer.config.mjs +2 -0
  48. package/esm2022/lib/+shared/editor/core/interfaces/paragraph-info.interface.mjs +2 -0
  49. package/esm2022/lib/+shared/editor/core/interfaces/render-changes.interface.mjs +2 -0
  50. package/esm2022/lib/+shared/editor/core/interfaces/replace.interface.mjs +2 -0
  51. package/esm2022/lib/+shared/editor/core/interfaces/search-iteration.interface.mjs +2 -0
  52. package/esm2022/lib/+shared/editor/core/interfaces/toolbar-styles.interface.mjs +2 -0
  53. package/esm2022/lib/+shared/editor/core/interfaces/visible-line-info.interface.mjs +2 -0
  54. package/esm2022/lib/+shared/editor/core/interfaces/visible-range.interface.mjs +2 -0
  55. package/esm2022/lib/+shared/editor/core/keyboard/text-input.mjs +53 -0
  56. package/esm2022/lib/+shared/editor/core/layers/cursor.layer.mjs +103 -0
  57. package/esm2022/lib/+shared/editor/core/layers/edges.layer.mjs +99 -0
  58. package/esm2022/lib/+shared/editor/core/layers/lines.mjs +96 -0
  59. package/esm2022/lib/+shared/editor/core/layers/pages.layer.mjs +106 -0
  60. package/esm2022/lib/+shared/editor/core/layers/print.edges.layer.mjs +7 -0
  61. package/esm2022/lib/+shared/editor/core/layers/print.pages.layer.mjs +7 -0
  62. package/esm2022/lib/+shared/editor/core/layers/print.text.layer.mjs +7 -0
  63. package/esm2022/lib/+shared/editor/core/layers/renderloop.mjs +26 -0
  64. package/esm2022/lib/+shared/editor/core/layers/scrollbar.mjs +100 -0
  65. package/esm2022/lib/+shared/editor/core/layers/selection.layer.mjs +115 -0
  66. package/esm2022/lib/+shared/editor/core/layers/text.layer.mjs +124 -0
  67. package/esm2022/lib/+shared/editor/core/models/display-token.model.mjs +12 -0
  68. package/esm2022/lib/+shared/editor/core/models/distance.model.mjs +10 -0
  69. package/esm2022/lib/+shared/editor/core/models/edge-element.model.mjs +9 -0
  70. package/esm2022/lib/+shared/editor/core/models/format-ext.model.mjs +10 -0
  71. package/esm2022/lib/+shared/editor/core/models/indent.model.mjs +9 -0
  72. package/esm2022/lib/+shared/editor/core/models/line-info.model.mjs +9 -0
  73. package/esm2022/lib/+shared/editor/core/models/margin.model.mjs +16 -0
  74. package/esm2022/lib/+shared/editor/core/models/numbering-data.model.mjs +9 -0
  75. package/esm2022/lib/+shared/editor/core/models/render-changes.model.mjs +25 -0
  76. package/esm2022/lib/+shared/editor/core/paging/page-vertical-data.model.mjs +9 -0
  77. package/esm2022/lib/+shared/editor/core/paging/pages.wrap.mjs +219 -0
  78. package/esm2022/lib/+shared/editor/core/paging/paragraph.mjs +52 -0
  79. package/esm2022/lib/+shared/editor/core/paging/text-line-info.mjs +34 -0
  80. package/esm2022/lib/+shared/editor/core/point.mjs +13 -0
  81. package/esm2022/lib/+shared/editor/core/print.renderer.mjs +72 -0
  82. package/esm2022/lib/+shared/editor/core/range.mjs +94 -0
  83. package/esm2022/lib/+shared/editor/core/renderer.mjs +217 -0
  84. package/esm2022/lib/+shared/editor/core/search.mjs +231 -0
  85. package/esm2022/lib/+shared/editor/core/virtual.renderer.mjs +356 -0
  86. package/esm2022/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.mjs +35 -0
  87. package/esm2022/lib/+shared/editor/custom-components/external-element/external-element.service.mjs +6 -0
  88. package/esm2022/lib/+shared/editor/custom-components/external-element/external-elements.const.mjs +4 -0
  89. package/esm2022/lib/+shared/editor/custom-components/external-element/external-sidenav.interface.mjs +2 -0
  90. package/esm2022/lib/+shared/editor/custom-components/external-element/external.component.mjs +41 -0
  91. package/esm2022/lib/+shared/editor/custom-components/external-element/models/element-data.model.mjs +9 -0
  92. package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-element.model.mjs +10 -0
  93. package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-sidenav.model.mjs +15 -0
  94. package/esm2022/lib/+shared/editor/custom-components/image/components/image.component.mjs +87 -0
  95. package/esm2022/lib/+shared/editor/custom-components/image/input-handler/image-input.handler.mjs +38 -0
  96. package/esm2022/lib/+shared/editor/custom-components/image/interfaces/size.mjs +2 -0
  97. package/esm2022/lib/+shared/editor/custom-components/image/resizer/coordinate.mjs +2 -0
  98. package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction-wrapper.mjs +19 -0
  99. package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction.enum.mjs +12 -0
  100. package/esm2022/lib/+shared/editor/custom-components/image/resizer/resizer.component.mjs +106 -0
  101. package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-delta.mjs +2 -0
  102. package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-wrapper.mjs +52 -0
  103. package/esm2022/lib/+shared/editor/custom-components/image/services/image-api.service.mjs +14 -0
  104. package/esm2022/lib/+shared/editor/custom-components/shared/abstract/base.component.mjs +57 -0
  105. package/esm2022/lib/+shared/editor/custom-components/shared/constants/custom-content-markers.const.mjs +3 -0
  106. package/esm2022/lib/+shared/editor/custom-components/shared/helpers/custom-component.hepler.mjs +43 -0
  107. package/esm2022/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.mjs +2 -0
  108. package/esm2022/lib/+shared/editor/custom-components/shared/services/component/component.service.mjs +64 -0
  109. package/esm2022/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.mjs +120 -0
  110. package/esm2022/lib/+shared/editor/custom-components/shared/services/overlay/overlay.service.mjs +55 -0
  111. package/esm2022/lib/+shared/editor/custom-components/shared/types/custom-content.mjs +2 -0
  112. package/esm2022/lib/+shared/editor/custom-components/tab/tab.component.mjs +43 -0
  113. package/esm2022/lib/+shared/editor/custom-components/table/cell-resizer/cell-resizer.mjs +118 -0
  114. package/esm2022/lib/+shared/editor/custom-components/table/components/table-cell.component.mjs +95 -0
  115. package/esm2022/lib/+shared/editor/custom-components/table/components/table.component.mjs +293 -0
  116. package/esm2022/lib/+shared/editor/custom-components/table/enums/reisizer-side.enum.mjs +8 -0
  117. package/esm2022/lib/+shared/editor/custom-components/table/enums/vertical-merge.enum.mjs +6 -0
  118. package/esm2022/lib/+shared/editor/custom-components/table/models/cell-data.model.mjs +18 -0
  119. package/esm2022/lib/+shared/editor/custom-components/table/models/cell-resizer-parameters.model.mjs +9 -0
  120. package/esm2022/lib/+shared/editor/custom-components/table/models/row-data.model.mjs +8 -0
  121. package/esm2022/lib/+shared/editor/custom-components/table/models/selection-range.model.mjs +7 -0
  122. package/esm2022/lib/+shared/editor/custom-components/table/overlay-menu/overlay-menu.component.mjs +74 -0
  123. package/esm2022/lib/+shared/editor/custom-components/table/selection/table-selection.mjs +358 -0
  124. package/esm2022/lib/+shared/editor/editor.component.mjs +103 -0
  125. package/esm2022/lib/+shared/editor/editor.module.mjs +85 -0
  126. package/esm2022/lib/+shared/editor/execution/models/cell-session-source.model.mjs +19 -0
  127. package/esm2022/lib/+shared/editor/execution/models/edge-session-source.model.mjs +15 -0
  128. package/esm2022/lib/+shared/editor/execution/models/general-properties.model.mjs +11 -0
  129. package/esm2022/lib/+shared/editor/execution/models/main-session-source.model.mjs +8 -0
  130. package/esm2022/lib/+shared/editor/execution/models/session-source.model.mjs +3 -0
  131. package/esm2022/lib/+shared/editor/execution/models/session.model.mjs +10 -0
  132. package/esm2022/lib/+shared/editor/execution/regulator.service.mjs +193 -0
  133. package/esm2022/lib/+shared/editor/helpers/break.helper.mjs +18 -0
  134. package/esm2022/lib/+shared/editor/helpers/content.helper.mjs +30 -0
  135. package/esm2022/lib/+shared/editor/helpers/format.helper.mjs +23 -0
  136. package/esm2022/lib/+shared/editor/helpers/indexed-element.helper.mjs +6 -0
  137. package/esm2022/lib/+shared/editor/helpers/tab.helper.mjs +6 -0
  138. package/esm2022/lib/+shared/editor/interaction/editor.service.mjs +309 -0
  139. package/esm2022/lib/+shared/editor/interaction/input.handler.mjs +160 -0
  140. package/esm2022/lib/+shared/editor/interaction/mouse.handler.mjs +49 -0
  141. package/esm2022/lib/+shared/editor/interfaces/contents.interface.mjs +2 -0
  142. package/esm2022/lib/+shared/editor/interfaces/insert-index.interface.mjs +2 -0
  143. package/esm2022/lib/+shared/editor/operation-history/operation-history.mjs +184 -0
  144. package/esm2022/lib/+shared/editor/operation-history/operation.type.mjs +2 -0
  145. package/esm2022/lib/+shared/editor/operation-history/operations-history-info.model.mjs +7 -0
  146. package/esm2022/lib/+shared/editor/operations/enums/command-type.enum.mjs +31 -0
  147. package/esm2022/lib/+shared/editor/operations/enums/target-type.enum.mjs +7 -0
  148. package/esm2022/lib/+shared/editor/operations/helpers/break-operations.helper.mjs +9 -0
  149. package/esm2022/lib/+shared/editor/operations/helpers/content-operations.helper.mjs +15 -0
  150. package/esm2022/lib/+shared/editor/operations/helpers/format-operations.helper.mjs +56 -0
  151. package/esm2022/lib/+shared/editor/operations/helpers/image-operations.helper.mjs +19 -0
  152. package/esm2022/lib/+shared/editor/operations/helpers/indexed-element-operations.helper.mjs +43 -0
  153. package/esm2022/lib/+shared/editor/operations/helpers/link-operations.helper.mjs +28 -0
  154. package/esm2022/lib/+shared/editor/operations/helpers/numbering-operations.helper.mjs +55 -0
  155. package/esm2022/lib/+shared/editor/operations/helpers/operations-helper.helper.mjs +394 -0
  156. package/esm2022/lib/+shared/editor/operations/helpers/paragraph-operations.helper.mjs +83 -0
  157. package/esm2022/lib/+shared/editor/operations/helpers/save-commands.helper.mjs +118 -0
  158. package/esm2022/lib/+shared/editor/operations/helpers/tab-operations.helper.mjs +16 -0
  159. package/esm2022/lib/+shared/editor/operations/helpers/table-operations.helper.mjs +371 -0
  160. package/esm2022/lib/+shared/editor/operations/helpers/target-operations.helper.mjs +23 -0
  161. package/esm2022/lib/+shared/editor/positioning/selection.mjs +307 -0
  162. package/esm2022/lib/+shared/editor/store/editor.actions.mjs +13 -0
  163. package/esm2022/lib/+shared/editor-header/editor-header.component.mjs +314 -0
  164. package/esm2022/lib/+shared/editor-search/editor-search-dialog.component.mjs +71 -0
  165. package/esm2022/lib/+shared/editor-toolbar/color-picker/color-picker.component.mjs +32 -0
  166. package/esm2022/lib/+shared/editor-toolbar/constants/numbering-templates.const.mjs +1148 -0
  167. package/esm2022/lib/+shared/editor-toolbar/constants/svg-icons.const.mjs +157 -0
  168. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.component.mjs +115 -0
  169. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.module.mjs +107 -0
  170. package/esm2022/lib/+shared/editor-toolbar/enums/alignment.enum.mjs +8 -0
  171. package/esm2022/lib/+shared/editor-toolbar/enums/numbering-template-type.enum.mjs +16 -0
  172. package/esm2022/lib/+shared/editor-toolbar/enums/numbering-type.enum.mjs +6 -0
  173. package/esm2022/lib/+shared/editor-toolbar/font/font.component.mjs +45 -0
  174. package/esm2022/lib/+shared/editor-toolbar/font-size/font-size.component.mjs +85 -0
  175. package/esm2022/lib/+shared/editor-toolbar/font-style/font-style.component.mjs +80 -0
  176. package/esm2022/lib/+shared/editor-toolbar/format/format.component.mjs +28 -0
  177. package/esm2022/lib/+shared/editor-toolbar/heading/heading.component.mjs +23 -0
  178. package/esm2022/lib/+shared/editor-toolbar/helpers/toolbar-styles.helper.mjs +55 -0
  179. package/esm2022/lib/+shared/editor-toolbar/numbering/numbering.component.mjs +53 -0
  180. package/esm2022/lib/+shared/editor-toolbar/print/print.component.mjs +18 -0
  181. package/esm2022/lib/+shared/editor-toolbar/undo-redo/undo-redo.component.mjs +27 -0
  182. package/esm2022/lib/+shared/editor-toolbar/zoom/zoom.component.mjs +74 -0
  183. package/esm2022/lib/+shared/enums/mode.enum.mjs +7 -0
  184. package/esm2022/lib/+shared/helpers/print.helper.mjs +40 -0
  185. package/esm2022/lib/+shared/insert-table/insert-table.component.mjs +54 -0
  186. package/esm2022/lib/+shared/services/commands.service.mjs +20 -0
  187. package/esm2022/lib/+shared/services/custom-icon.service.mjs +34 -0
  188. package/esm2022/lib/models/generated/add-numbering.model.mjs +8 -0
  189. package/esm2022/lib/models/generated/apply-element-style.model.mjs +8 -0
  190. package/esm2022/lib/models/generated/apply-image-style.model.mjs +8 -0
  191. package/esm2022/lib/models/generated/apply-paragraph-style.model.mjs +12 -0
  192. package/esm2022/lib/models/generated/apply-text-style.model.mjs +12 -0
  193. package/esm2022/lib/models/generated/borders-style.model.mjs +8 -0
  194. package/esm2022/lib/models/generated/break.model.mjs +8 -0
  195. package/esm2022/lib/models/generated/cell.model.mjs +12 -0
  196. package/esm2022/lib/models/generated/column-section.model.mjs +8 -0
  197. package/esm2022/lib/models/generated/column.model.mjs +8 -0
  198. package/esm2022/lib/models/generated/command.model.mjs +116 -0
  199. package/esm2022/lib/models/generated/delete.model.mjs +8 -0
  200. package/esm2022/lib/models/generated/document-name.model.mjs +8 -0
  201. package/esm2022/lib/models/generated/document.model.mjs +8 -0
  202. package/esm2022/lib/models/generated/docx.model.mjs +12 -0
  203. package/esm2022/lib/models/generated/edge-target.model.mjs +8 -0
  204. package/esm2022/lib/models/generated/edge.model.mjs +8 -0
  205. package/esm2022/lib/models/generated/element.model.mjs +8 -0
  206. package/esm2022/lib/models/generated/file-source.model.mjs +8 -0
  207. package/esm2022/lib/models/generated/format.model.mjs +12 -0
  208. package/esm2022/lib/models/generated/heading.model.mjs +16 -0
  209. package/esm2022/lib/models/generated/image-data.model.mjs +8 -0
  210. package/esm2022/lib/models/generated/image.model.mjs +12 -0
  211. package/esm2022/lib/models/generated/insert-break.model.mjs +8 -0
  212. package/esm2022/lib/models/generated/insert-element.model.mjs +12 -0
  213. package/esm2022/lib/models/generated/insert-image.model.mjs +12 -0
  214. package/esm2022/lib/models/generated/insert-link.model.mjs +12 -0
  215. package/esm2022/lib/models/generated/insert-styled-text.model.mjs +12 -0
  216. package/esm2022/lib/models/generated/insert-tab.model.mjs +8 -0
  217. package/esm2022/lib/models/generated/insert-table-columns.model.mjs +8 -0
  218. package/esm2022/lib/models/generated/insert-table-rows.model.mjs +8 -0
  219. package/esm2022/lib/models/generated/insert-table.model.mjs +8 -0
  220. package/esm2022/lib/models/generated/insert-text.model.mjs +8 -0
  221. package/esm2022/lib/models/generated/last-document-revision.model.mjs +12 -0
  222. package/esm2022/lib/models/generated/link-data.model.mjs +8 -0
  223. package/esm2022/lib/models/generated/link.model.mjs +8 -0
  224. package/esm2022/lib/models/generated/margins.model.mjs +8 -0
  225. package/esm2022/lib/models/generated/numbering-level.model.mjs +12 -0
  226. package/esm2022/lib/models/generated/numbering.model.mjs +8 -0
  227. package/esm2022/lib/models/generated/operation.model.mjs +12 -0
  228. package/esm2022/lib/models/generated/page-numbers.model.mjs +8 -0
  229. package/esm2022/lib/models/generated/paragraph-style.model.mjs +8 -0
  230. package/esm2022/lib/models/generated/paragraph.model.mjs +12 -0
  231. package/esm2022/lib/models/generated/remove-numberings.model.mjs +8 -0
  232. package/esm2022/lib/models/generated/remove-table-columns.model.mjs +8 -0
  233. package/esm2022/lib/models/generated/remove-table-rows.model.mjs +8 -0
  234. package/esm2022/lib/models/generated/replace-by-text.model.mjs +8 -0
  235. package/esm2022/lib/models/generated/replace.model.mjs +40 -0
  236. package/esm2022/lib/models/generated/resize-table-columns.model.mjs +8 -0
  237. package/esm2022/lib/models/generated/restore-numberings.model.mjs +8 -0
  238. package/esm2022/lib/models/generated/restore-paragraph-styles.model.mjs +8 -0
  239. package/esm2022/lib/models/generated/restore-table.model.mjs +12 -0
  240. package/esm2022/lib/models/generated/restore-text-styles.model.mjs +8 -0
  241. package/esm2022/lib/models/generated/restore.model.mjs +8 -0
  242. package/esm2022/lib/models/generated/revision.model.mjs +12 -0
  243. package/esm2022/lib/models/generated/row.model.mjs +8 -0
  244. package/esm2022/lib/models/generated/tab.model.mjs +8 -0
  245. package/esm2022/lib/models/generated/table-cell.model.mjs +8 -0
  246. package/esm2022/lib/models/generated/table.model.mjs +12 -0
  247. package/esm2022/lib/models/generated/target.model.mjs +16 -0
  248. package/esm2022/lib/models/generated/text-style.model.mjs +8 -0
  249. package/esm2022/public-api.mjs +43 -0
  250. package/esm2022/talrace-ngx-noder.mjs +5 -0
  251. package/fesm2022/talrace-ngx-noder.mjs +13736 -0
  252. package/fesm2022/talrace-ngx-noder.mjs.map +1 -0
  253. package/index.d.ts +5 -0
  254. package/lib/+shared/abstract/base-api.service.d.ts +23 -0
  255. package/lib/+shared/abstract/observer.component.d.ts +10 -0
  256. package/lib/+shared/confirm-dialog/confirm-dialog.component.d.ts +16 -0
  257. package/lib/+shared/constants/default-file-name.const.d.ts +1 -0
  258. package/lib/+shared/constants/paginator-sizes.const.d.ts +2 -0
  259. package/lib/+shared/editor/core/base/event-emitting.d.ts +17 -0
  260. package/lib/+shared/editor/core/components/edges/edge-type.enum.d.ts +4 -0
  261. package/lib/+shared/editor/core/components/edges/edge.component.d.ts +45 -0
  262. package/lib/+shared/editor/core/components/edges/edges.d.ts +26 -0
  263. package/lib/+shared/editor/core/constants/alignments.const.d.ts +7 -0
  264. package/lib/+shared/editor/core/constants/clipboardEventTypes.const.d.ts +5 -0
  265. package/lib/+shared/editor/core/constants/content-style-change.const.d.ts +14 -0
  266. package/lib/+shared/editor/core/constants/display-values.const.d.ts +7 -0
  267. package/lib/+shared/editor/core/constants/document-info.const.d.ts +12 -0
  268. package/lib/+shared/editor/core/constants/editor-version.const.d.ts +1 -0
  269. package/lib/+shared/editor/core/constants/editor.const.d.ts +16 -0
  270. package/lib/+shared/editor/core/constants/unicode-chars.const.d.ts +1 -0
  271. package/lib/+shared/editor/core/document.d.ts +56 -0
  272. package/lib/+shared/editor/core/edit.session.d.ts +159 -0
  273. package/lib/+shared/editor/core/editor.d.ts +206 -0
  274. package/lib/+shared/editor/core/enums/break-types.enum.d.ts +5 -0
  275. package/lib/+shared/editor/core/enums/hrule.enum.d.ts +5 -0
  276. package/lib/+shared/editor/core/enums/mouse-button.enum.d.ts +5 -0
  277. package/lib/+shared/editor/core/enums/numbering-marker-type.enum.d.ts +10 -0
  278. package/lib/+shared/editor/core/enums/page-type.enum.d.ts +5 -0
  279. package/lib/+shared/editor/core/enums/vertical-alignment.enum.d.ts +9 -0
  280. package/lib/+shared/editor/core/helpers/content-style.helper.d.ts +16 -0
  281. package/lib/+shared/editor/core/helpers/delta.helper.d.ts +6 -0
  282. package/lib/+shared/editor/core/helpers/dom.helper.d.ts +10 -0
  283. package/lib/+shared/editor/core/helpers/event.helper.d.ts +4 -0
  284. package/lib/+shared/editor/core/helpers/font-metrics.helper.d.ts +32 -0
  285. package/lib/+shared/editor/core/helpers/format-style.helper.d.ts +11 -0
  286. package/lib/+shared/editor/core/helpers/line-width.helper.d.ts +5 -0
  287. package/lib/+shared/editor/core/helpers/numbering.helper.d.ts +19 -0
  288. package/lib/+shared/editor/core/helpers/page.helper.d.ts +4 -0
  289. package/lib/+shared/editor/core/helpers/paragraph-style.helper.d.ts +6 -0
  290. package/lib/+shared/editor/core/helpers/paragraph.helper.d.ts +27 -0
  291. package/lib/+shared/editor/core/helpers/position.helper.d.ts +34 -0
  292. package/lib/+shared/editor/core/helpers/print.rendering.helper.d.ts +6 -0
  293. package/lib/+shared/editor/core/helpers/rendering.helper.d.ts +26 -0
  294. package/lib/+shared/editor/core/helpers/unicode.helper.d.ts +4 -0
  295. package/lib/+shared/editor/core/interfaces/cell.interface.d.ts +5 -0
  296. package/lib/+shared/editor/core/interfaces/cursor-position.interface.d.ts +11 -0
  297. package/lib/+shared/editor/core/interfaces/font-metric-size.interface.d.ts +11 -0
  298. package/lib/+shared/editor/core/interfaces/layer.config.d.ts +13 -0
  299. package/lib/+shared/editor/core/interfaces/paragraph-info.interface.d.ts +7 -0
  300. package/lib/+shared/editor/core/interfaces/render-changes.interface.d.ts +10 -0
  301. package/lib/+shared/editor/core/interfaces/replace.interface.d.ts +4 -0
  302. package/lib/+shared/editor/core/interfaces/search-iteration.interface.d.ts +4 -0
  303. package/lib/+shared/editor/core/interfaces/toolbar-styles.interface.d.ts +18 -0
  304. package/lib/+shared/editor/core/interfaces/visible-line-info.interface.d.ts +5 -0
  305. package/lib/+shared/editor/core/interfaces/visible-range.interface.d.ts +11 -0
  306. package/lib/+shared/editor/core/keyboard/text-input.d.ts +10 -0
  307. package/lib/+shared/editor/core/layers/cursor.layer.d.ts +24 -0
  308. package/lib/+shared/editor/core/layers/edges.layer.d.ts +24 -0
  309. package/lib/+shared/editor/core/layers/lines.d.ts +21 -0
  310. package/lib/+shared/editor/core/layers/pages.layer.d.ts +27 -0
  311. package/lib/+shared/editor/core/layers/print.edges.layer.d.ts +4 -0
  312. package/lib/+shared/editor/core/layers/print.pages.layer.d.ts +4 -0
  313. package/lib/+shared/editor/core/layers/print.text.layer.d.ts +5 -0
  314. package/lib/+shared/editor/core/layers/renderloop.d.ts +8 -0
  315. package/lib/+shared/editor/core/layers/scrollbar.d.ts +41 -0
  316. package/lib/+shared/editor/core/layers/selection.layer.d.ts +19 -0
  317. package/lib/+shared/editor/core/layers/text.layer.d.ts +22 -0
  318. package/lib/+shared/editor/core/models/display-token.model.d.ts +27 -0
  319. package/lib/+shared/editor/core/models/distance.model.d.ts +6 -0
  320. package/lib/+shared/editor/core/models/edge-element.model.d.ts +7 -0
  321. package/lib/+shared/editor/core/models/format-ext.model.d.ts +5 -0
  322. package/lib/+shared/editor/core/models/indent.model.d.ts +7 -0
  323. package/lib/+shared/editor/core/models/line-info.model.d.ts +14 -0
  324. package/lib/+shared/editor/core/models/margin.model.d.ts +9 -0
  325. package/lib/+shared/editor/core/models/numbering-data.model.d.ts +11 -0
  326. package/lib/+shared/editor/core/models/render-changes.model.d.ts +14 -0
  327. package/lib/+shared/editor/core/paging/page-vertical-data.model.d.ts +8 -0
  328. package/lib/+shared/editor/core/paging/pages.wrap.d.ts +41 -0
  329. package/lib/+shared/editor/core/paging/paragraph.d.ts +44 -0
  330. package/lib/+shared/editor/core/paging/text-line-info.d.ts +17 -0
  331. package/lib/+shared/editor/core/point.d.ts +7 -0
  332. package/lib/+shared/editor/core/print.renderer.d.ts +25 -0
  333. package/lib/+shared/editor/core/range.d.ts +32 -0
  334. package/lib/+shared/editor/core/renderer.d.ts +60 -0
  335. package/lib/+shared/editor/core/search.d.ts +32 -0
  336. package/lib/+shared/editor/core/virtual.renderer.d.ts +93 -0
  337. package/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.d.ts +14 -0
  338. package/lib/+shared/editor/custom-components/external-element/external-element.service.d.ts +7 -0
  339. package/lib/+shared/editor/custom-components/external-element/external-elements.const.d.ts +5 -0
  340. package/lib/+shared/editor/custom-components/external-element/external-sidenav.interface.d.ts +5 -0
  341. package/lib/+shared/editor/custom-components/external-element/external.component.d.ts +17 -0
  342. package/lib/+shared/editor/custom-components/external-element/models/element-data.model.d.ts +7 -0
  343. package/lib/+shared/editor/custom-components/external-element/models/external-element.model.d.ts +20 -0
  344. package/lib/+shared/editor/custom-components/external-element/models/external-sidenav.model.d.ts +7 -0
  345. package/lib/+shared/editor/custom-components/image/components/image.component.d.ts +31 -0
  346. package/lib/+shared/editor/custom-components/image/input-handler/image-input.handler.d.ts +13 -0
  347. package/lib/+shared/editor/custom-components/image/interfaces/size.d.ts +4 -0
  348. package/lib/+shared/editor/custom-components/image/resizer/coordinate.d.ts +4 -0
  349. package/lib/+shared/editor/custom-components/image/resizer/direction-wrapper.d.ts +9 -0
  350. package/lib/+shared/editor/custom-components/image/resizer/direction.enum.d.ts +10 -0
  351. package/lib/+shared/editor/custom-components/image/resizer/resizer.component.d.ts +26 -0
  352. package/lib/+shared/editor/custom-components/image/resizer/size-delta.d.ts +4 -0
  353. package/lib/+shared/editor/custom-components/image/resizer/size-wrapper.d.ts +19 -0
  354. package/lib/+shared/editor/custom-components/image/services/image-api.service.d.ts +8 -0
  355. package/lib/+shared/editor/custom-components/shared/abstract/base.component.d.ts +24 -0
  356. package/lib/+shared/editor/custom-components/shared/constants/custom-content-markers.const.d.ts +2 -0
  357. package/lib/+shared/editor/custom-components/shared/helpers/custom-component.hepler.d.ts +8 -0
  358. package/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.d.ts +13 -0
  359. package/lib/+shared/editor/custom-components/shared/services/component/component.service.d.ts +21 -0
  360. package/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.d.ts +30 -0
  361. package/lib/+shared/editor/custom-components/shared/services/overlay/overlay.service.d.ts +18 -0
  362. package/lib/+shared/editor/custom-components/shared/types/custom-content.d.ts +5 -0
  363. package/lib/+shared/editor/custom-components/tab/tab.component.d.ts +15 -0
  364. package/lib/+shared/editor/custom-components/table/cell-resizer/cell-resizer.d.ts +31 -0
  365. package/lib/+shared/editor/custom-components/table/components/table-cell.component.d.ts +45 -0
  366. package/lib/+shared/editor/custom-components/table/components/table.component.d.ts +55 -0
  367. package/lib/+shared/editor/custom-components/table/enums/reisizer-side.enum.d.ts +6 -0
  368. package/lib/+shared/editor/custom-components/table/enums/vertical-merge.enum.d.ts +4 -0
  369. package/lib/+shared/editor/custom-components/table/models/cell-data.model.d.ts +11 -0
  370. package/lib/+shared/editor/custom-components/table/models/cell-resizer-parameters.model.d.ts +9 -0
  371. package/lib/+shared/editor/custom-components/table/models/row-data.model.d.ts +7 -0
  372. package/lib/+shared/editor/custom-components/table/models/selection-range.model.d.ts +17 -0
  373. package/lib/+shared/editor/custom-components/table/overlay-menu/overlay-menu.component.d.ts +37 -0
  374. package/lib/+shared/editor/custom-components/table/selection/table-selection.d.ts +74 -0
  375. package/lib/+shared/editor/editor.component.d.ts +43 -0
  376. package/lib/+shared/editor/editor.module.d.ts +30 -0
  377. package/lib/+shared/editor/execution/models/cell-session-source.model.d.ts +11 -0
  378. package/lib/+shared/editor/execution/models/edge-session-source.model.d.ts +11 -0
  379. package/lib/+shared/editor/execution/models/general-properties.model.d.ts +7 -0
  380. package/lib/+shared/editor/execution/models/main-session-source.model.d.ts +5 -0
  381. package/lib/+shared/editor/execution/models/session-source.model.d.ts +5 -0
  382. package/lib/+shared/editor/execution/models/session.model.d.ts +12 -0
  383. package/lib/+shared/editor/execution/regulator.service.d.ts +45 -0
  384. package/lib/+shared/editor/helpers/break.helper.d.ts +7 -0
  385. package/lib/+shared/editor/helpers/content.helper.d.ts +9 -0
  386. package/lib/+shared/editor/helpers/format.helper.d.ts +4 -0
  387. package/lib/+shared/editor/helpers/indexed-element.helper.d.ts +4 -0
  388. package/lib/+shared/editor/helpers/tab.helper.d.ts +3 -0
  389. package/lib/+shared/editor/interaction/editor.service.d.ts +194 -0
  390. package/lib/+shared/editor/interaction/input.handler.d.ts +25 -0
  391. package/lib/+shared/editor/interaction/mouse.handler.d.ts +14 -0
  392. package/lib/+shared/editor/interfaces/contents.interface.d.ts +22 -0
  393. package/lib/+shared/editor/interfaces/insert-index.interface.d.ts +3 -0
  394. package/lib/+shared/editor/operation-history/operation-history.d.ts +65 -0
  395. package/lib/+shared/editor/operation-history/operation.type.d.ts +24 -0
  396. package/lib/+shared/editor/operation-history/operations-history-info.model.d.ts +5 -0
  397. package/lib/+shared/editor/operations/enums/command-type.enum.d.ts +29 -0
  398. package/lib/+shared/editor/operations/enums/target-type.enum.d.ts +5 -0
  399. package/lib/+shared/editor/operations/helpers/break-operations.helper.d.ts +5 -0
  400. package/lib/+shared/editor/operations/helpers/content-operations.helper.d.ts +5 -0
  401. package/lib/+shared/editor/operations/helpers/format-operations.helper.d.ts +11 -0
  402. package/lib/+shared/editor/operations/helpers/image-operations.helper.d.ts +7 -0
  403. package/lib/+shared/editor/operations/helpers/indexed-element-operations.helper.d.ts +8 -0
  404. package/lib/+shared/editor/operations/helpers/link-operations.helper.d.ts +6 -0
  405. package/lib/+shared/editor/operations/helpers/numbering-operations.helper.d.ts +11 -0
  406. package/lib/+shared/editor/operations/helpers/operations-helper.helper.d.ts +52 -0
  407. package/lib/+shared/editor/operations/helpers/paragraph-operations.helper.d.ts +13 -0
  408. package/lib/+shared/editor/operations/helpers/save-commands.helper.d.ts +43 -0
  409. package/lib/+shared/editor/operations/helpers/tab-operations.helper.d.ts +4 -0
  410. package/lib/+shared/editor/operations/helpers/table-operations.helper.d.ts +30 -0
  411. package/lib/+shared/editor/operations/helpers/target-operations.helper.d.ts +6 -0
  412. package/lib/+shared/editor/positioning/selection.d.ts +50 -0
  413. package/lib/+shared/editor/store/editor.actions.d.ts +11 -0
  414. package/lib/+shared/editor-header/editor-header.component.d.ts +101 -0
  415. package/lib/+shared/editor-search/editor-search-dialog.component.d.ts +24 -0
  416. package/lib/+shared/editor-toolbar/color-picker/color-picker.component.d.ts +12 -0
  417. package/lib/+shared/editor-toolbar/constants/numbering-templates.const.d.ts +6 -0
  418. package/lib/+shared/editor-toolbar/constants/svg-icons.const.d.ts +12 -0
  419. package/lib/+shared/editor-toolbar/editor-toolbar.component.d.ts +44 -0
  420. package/lib/+shared/editor-toolbar/editor-toolbar.module.d.ts +28 -0
  421. package/lib/+shared/editor-toolbar/enums/alignment.enum.d.ts +6 -0
  422. package/lib/+shared/editor-toolbar/enums/numbering-template-type.enum.d.ts +14 -0
  423. package/lib/+shared/editor-toolbar/enums/numbering-type.enum.d.ts +4 -0
  424. package/lib/+shared/editor-toolbar/font/font.component.d.ts +13 -0
  425. package/lib/+shared/editor-toolbar/font-size/font-size.component.d.ts +24 -0
  426. package/lib/+shared/editor-toolbar/font-style/font-style.component.d.ts +24 -0
  427. package/lib/+shared/editor-toolbar/format/format.component.d.ts +12 -0
  428. package/lib/+shared/editor-toolbar/heading/heading.component.d.ts +8 -0
  429. package/lib/+shared/editor-toolbar/helpers/toolbar-styles.helper.d.ts +6 -0
  430. package/lib/+shared/editor-toolbar/numbering/numbering.component.d.ts +18 -0
  431. package/lib/+shared/editor-toolbar/print/print.component.d.ts +7 -0
  432. package/lib/+shared/editor-toolbar/undo-redo/undo-redo.component.d.ts +10 -0
  433. package/lib/+shared/editor-toolbar/zoom/zoom.component.d.ts +22 -0
  434. package/lib/+shared/enums/mode.enum.d.ts +5 -0
  435. package/lib/+shared/helpers/print.helper.d.ts +9 -0
  436. package/lib/+shared/insert-table/insert-table.component.d.ts +21 -0
  437. package/lib/+shared/services/commands.service.d.ts +10 -0
  438. package/lib/+shared/services/custom-icon.service.d.ts +11 -0
  439. package/lib/models/generated/add-numbering.model.d.ts +7 -0
  440. package/lib/models/generated/apply-element-style.model.d.ts +6 -0
  441. package/lib/models/generated/apply-image-style.model.d.ts +6 -0
  442. package/lib/models/generated/apply-paragraph-style.model.d.ts +7 -0
  443. package/lib/models/generated/apply-text-style.model.d.ts +7 -0
  444. package/lib/models/generated/borders-style.model.d.ts +8 -0
  445. package/lib/models/generated/break.model.d.ts +5 -0
  446. package/lib/models/generated/cell.model.d.ts +32 -0
  447. package/lib/models/generated/column-section.model.d.ts +7 -0
  448. package/lib/models/generated/column.model.d.ts +5 -0
  449. package/lib/models/generated/command.model.d.ts +60 -0
  450. package/lib/models/generated/delete.model.d.ts +5 -0
  451. package/lib/models/generated/document-name.model.d.ts +5 -0
  452. package/lib/models/generated/document.model.d.ts +7 -0
  453. package/lib/models/generated/docx.model.d.ts +43 -0
  454. package/lib/models/generated/edge-target.model.d.ts +5 -0
  455. package/lib/models/generated/edge.model.d.ts +24 -0
  456. package/lib/models/generated/element.model.d.ts +9 -0
  457. package/lib/models/generated/file-source.model.d.ts +4 -0
  458. package/lib/models/generated/format.model.d.ts +7 -0
  459. package/lib/models/generated/heading.model.d.ts +12 -0
  460. package/lib/models/generated/image-data.model.d.ts +6 -0
  461. package/lib/models/generated/image.model.d.ts +31 -0
  462. package/lib/models/generated/insert-break.model.d.ts +6 -0
  463. package/lib/models/generated/insert-element.model.d.ts +5 -0
  464. package/lib/models/generated/insert-image.model.d.ts +6 -0
  465. package/lib/models/generated/insert-link.model.d.ts +7 -0
  466. package/lib/models/generated/insert-styled-text.model.d.ts +7 -0
  467. package/lib/models/generated/insert-tab.model.d.ts +4 -0
  468. package/lib/models/generated/insert-table-columns.model.d.ts +7 -0
  469. package/lib/models/generated/insert-table-rows.model.d.ts +7 -0
  470. package/lib/models/generated/insert-table.model.d.ts +8 -0
  471. package/lib/models/generated/insert-text.model.d.ts +5 -0
  472. package/lib/models/generated/last-document-revision.model.d.ts +9 -0
  473. package/lib/models/generated/link-data.model.d.ts +5 -0
  474. package/lib/models/generated/link.model.d.ts +7 -0
  475. package/lib/models/generated/margins.model.d.ts +7 -0
  476. package/lib/models/generated/numbering-level.model.d.ts +14 -0
  477. package/lib/models/generated/numbering.model.d.ts +7 -0
  478. package/lib/models/generated/operation.model.d.ts +8 -0
  479. package/lib/models/generated/page-numbers.model.d.ts +8 -0
  480. package/lib/models/generated/paragraph-style.model.d.ts +18 -0
  481. package/lib/models/generated/paragraph.model.d.ts +6 -0
  482. package/lib/models/generated/remove-numberings.model.d.ts +5 -0
  483. package/lib/models/generated/remove-table-columns.model.d.ts +6 -0
  484. package/lib/models/generated/remove-table-rows.model.d.ts +6 -0
  485. package/lib/models/generated/replace-by-text.model.d.ts +6 -0
  486. package/lib/models/generated/replace.model.d.ts +19 -0
  487. package/lib/models/generated/resize-table-columns.model.d.ts +9 -0
  488. package/lib/models/generated/restore-numberings.model.d.ts +7 -0
  489. package/lib/models/generated/restore-paragraph-styles.model.d.ts +5 -0
  490. package/lib/models/generated/restore-table.model.d.ts +6 -0
  491. package/lib/models/generated/restore-text-styles.model.d.ts +5 -0
  492. package/lib/models/generated/restore.model.d.ts +22 -0
  493. package/lib/models/generated/revision.model.d.ts +9 -0
  494. package/lib/models/generated/row.model.d.ts +9 -0
  495. package/lib/models/generated/tab.model.d.ts +6 -0
  496. package/lib/models/generated/table-cell.model.d.ts +6 -0
  497. package/lib/models/generated/table.model.d.ts +18 -0
  498. package/lib/models/generated/target.model.d.ts +9 -0
  499. package/lib/models/generated/text-style.model.d.ts +14 -0
  500. package/package.json +35 -0
  501. package/public-api.d.ts +42 -0
  502. package/src/_ngx-noder.theme.scss +22 -0
  503. package/src/assets/fonts/nc-iconfont.css +333 -0
  504. package/src/assets/fonts/nc-iconfont.eot +0 -0
  505. package/src/assets/fonts/nc-iconfont.svg +110 -0
  506. package/src/assets/fonts/nc-iconfont.ttf +0 -0
  507. package/src/assets/fonts/nc-iconfont.woff +0 -0
  508. package/src/lib/+shared/add-link-dialog/_add-link-dialog.theme.scss +21 -0
  509. package/src/lib/+shared/editor/_editor.theme.scss +35 -0
  510. package/src/lib/+shared/editor/custom-components/external-element/element-toolbar/_element-toolbar.theme.scss +10 -0
  511. package/src/lib/+shared/editor-header/_editor-header.theme.scss +106 -0
  512. package/src/lib/+shared/editor-toolbar/_editor-toolbar.theme.scss +33 -0
  513. package/src/lib/+shared/editor-toolbar/numbering/_numbering.theme.scss +29 -0
  514. package/src/lib/+shared/insert-table/_insert-table.theme.scss +22 -0
  515. package/src/styles.scss +58 -0
@@ -0,0 +1,100 @@
1
+ import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewChild } from '@angular/core';
2
+ import { DomHelper } from '../../helpers/dom.helper';
3
+ import { EdgeType } from './edge-type.enum';
4
+ import { ObserverComponent } from '../../../../abstract/observer.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../execution/regulator.service";
7
+ import * as i2 from "../../../interaction/editor.service";
8
+ export class NoderEdgeComponent extends ObserverComponent {
9
+ set type(val) {
10
+ this._type = val;
11
+ if (val === EdgeType.Header) {
12
+ this.editModeClass = 'header-edit-mode';
13
+ this.typeContainerPosition = 'top';
14
+ }
15
+ else {
16
+ this.editModeClass = 'footer-edit-mode';
17
+ this.typeContainerPosition = 'bottom';
18
+ }
19
+ }
20
+ get type() {
21
+ return this._type;
22
+ }
23
+ get session() {
24
+ return this.edgeSession.session;
25
+ }
26
+ get renderer() {
27
+ return this.edgeSession.renderer;
28
+ }
29
+ get height() {
30
+ return this.session.pagesWrap.defaultVerticalData.contentHeight;
31
+ }
32
+ constructor(regulatorService, editorService) {
33
+ super();
34
+ this.regulatorService = regulatorService;
35
+ this.editorService = editorService;
36
+ }
37
+ ngOnDestroy() {
38
+ this.regulatorService.removeSession(this.sessionId);
39
+ super.ngOnDestroy();
40
+ }
41
+ initialize() {
42
+ this.edgeSession = this.regulatorService.addEdgeSession(this);
43
+ this.sessionId = this.edgeSession.sessionId;
44
+ this._previousHeight = this.height;
45
+ DomHelper.setStyle(this.container.nativeElement.style, 'overflow', 'hidden');
46
+ DomHelper.setStyle(this.typeContainer.nativeElement.style, 'visibility', 'hidden');
47
+ this.setTypeContainerPosition();
48
+ this.subscriptions.push(this.rendererUpdatedSubscription());
49
+ }
50
+ enterEditMode() {
51
+ DomHelper.addCssClass(this.container.nativeElement, this.editModeClass);
52
+ DomHelper.setStyle(this.typeContainer.nativeElement.style, 'visibility', 'visible');
53
+ }
54
+ leaveEditMode() {
55
+ DomHelper.removeCssClass(this.container.nativeElement, this.editModeClass);
56
+ DomHelper.setStyle(this.typeContainer.nativeElement.style, 'visibility', 'hidden');
57
+ }
58
+ rendererUpdatedSubscription() {
59
+ return this.editorService.rendererUpdated$.subscribe(sessionId => {
60
+ if (sessionId !== this.sessionId || this.height === this._previousHeight) {
61
+ return;
62
+ }
63
+ this.editorService.changedEdgeHeight(this.type);
64
+ this._previousHeight = this.height;
65
+ this.setTypeContainerPosition();
66
+ });
67
+ }
68
+ setTypeContainerPosition() {
69
+ const renderedEdgeHeight = this.height > this.properties.maxEdgeHeight ? this.properties.maxEdgeHeight : this.height;
70
+ DomHelper.setStyle(this.typeContainer.nativeElement.style, this.typeContainerPosition, `${renderedEdgeHeight}px`);
71
+ }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: NoderEdgeComponent, deps: [{ token: i1.RegulatorService }, { token: i2.EditorService }], target: i0.ɵɵFactoryTarget.Component }); }
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: NoderEdgeComponent, selector: "app-noder-edge", inputs: { model: "model", properties: "properties", margins: "margins", width: "width", parentSessionId: "parentSessionId", type: "type" }, host: { properties: { "attr.data-session-id": "this.sessionId" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, static: true }, { propertyName: "typeContainer", first: true, predicate: ["locationType"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n #container\n class=\"edit-container\"></div>\n<div\n #locationType\n class=\"location-type\"></div>\n", styles: [":host{height:100%;width:100%;background:transparent;display:block}.location-type{position:absolute;height:auto;width:auto;font-size:9pt;background-color:#f2f2f2;border:1px solid #838282;border-radius:2px;padding:4px;margin-left:5px;z-index:2}.header-edit-mode{border-bottom:1px dashed #838282}.footer-edit-mode{border-top:1px dashed #838282}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: NoderEdgeComponent, decorators: [{
76
+ type: Component,
77
+ args: [{ selector: 'app-noder-edge', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n #container\n class=\"edit-container\"></div>\n<div\n #locationType\n class=\"location-type\"></div>\n", styles: [":host{height:100%;width:100%;background:transparent;display:block}.location-type{position:absolute;height:auto;width:auto;font-size:9pt;background-color:#f2f2f2;border:1px solid #838282;border-radius:2px;padding:4px;margin-left:5px;z-index:2}.header-edit-mode{border-bottom:1px dashed #838282}.footer-edit-mode{border-top:1px dashed #838282}\n"] }]
78
+ }], ctorParameters: () => [{ type: i1.RegulatorService }, { type: i2.EditorService }], propDecorators: { model: [{
79
+ type: Input
80
+ }], properties: [{
81
+ type: Input
82
+ }], margins: [{
83
+ type: Input
84
+ }], width: [{
85
+ type: Input
86
+ }], parentSessionId: [{
87
+ type: Input
88
+ }], type: [{
89
+ type: Input
90
+ }], sessionId: [{
91
+ type: HostBinding,
92
+ args: ['attr.data-session-id']
93
+ }], container: [{
94
+ type: ViewChild,
95
+ args: ['container', { static: true }]
96
+ }], typeContainer: [{
97
+ type: ViewChild,
98
+ args: ['locationType', { static: true }]
99
+ }] } });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2NvbXBvbmVudHMvZWRnZXMvZWRnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2NvbXBvbmVudHMvZWRnZXMvZWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFLNUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7QUFZNUUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGlCQUFpQjtJQVdyRCxJQUNJLElBQUksQ0FBQyxHQUFhO1FBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUksR0FBRyxLQUFLLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDekIsSUFBSSxDQUFDLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQztZQUN4QyxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDO1NBQ3RDO2FBQU07WUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLGtCQUFrQixDQUFDO1lBQ3hDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxRQUFRLENBQUM7U0FDekM7SUFDTCxDQUFDO0lBQ0QsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENB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QUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNySCxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsR0FBRyxrQkFBa0IsSUFBSSxDQUFDLENBQUM7SUFDdEgsQ0FBQzs4R0FsR1Esa0JBQWtCO2tHQUFsQixrQkFBa0IsaWdCQ3RCL0IsMEhBTUE7OzJGRGdCYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0ksZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU07aUhBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSztnQkFHRixJQUFJO3NCQURQLEtBQUs7Z0JBaUJOLFNBQVM7c0JBRFIsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBcUJPLFNBQVM7c0JBQWxELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFSyxhQUFhO3NCQUF6RCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERvbUhlbHBlciB9IGZyb20gJy4uLy4uL2hlbHBlcnMvZG9tLmhlbHBlcic7XG5pbXBvcnQgeyBFZGdlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL2VkZ2UubW9kZWwnO1xuaW1wb3J0IHsgRWRnZVR5cGUgfSBmcm9tICcuL2VkZ2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IEVkaXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmFjdGlvbi9lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBFZGl0U2Vzc2lvbiB9IGZyb20gJy4uLy4uL2VkaXQuc2Vzc2lvbic7XG5pbXBvcnQgeyBHZW5lcmFsUHJvcGVydGllc01vZGVsIH0gZnJvbSAnLi4vLi4vLi4vZXhlY3V0aW9uL21vZGVscy9nZW5lcmFsLXByb3BlcnRpZXMubW9kZWwnO1xuaW1wb3J0IHsgTWFyZ2luTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWFyZ2luLm1vZGVsJztcbmltcG9ydCB7IE9ic2VydmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vYWJzdHJhY3Qvb2JzZXJ2ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJlZ3VsYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9leGVjdXRpb24vcmVndWxhdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVuZGVyZXIgfSBmcm9tICcuLi8uLi9yZW5kZXJlcic7XG5pbXBvcnQgeyBTZXNzaW9uTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9leGVjdXRpb24vbW9kZWxzL3Nlc3Npb24ubW9kZWwnO1xuaW1wb3J0IHsgVmlydHVhbFJlbmRlcmVyIH0gZnJvbSAnLi4vLi4vdmlydHVhbC5yZW5kZXJlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXBwLW5vZGVyLWVkZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnZWRnZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2VkZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlckVkZ2VDb21wb25lbnQgZXh0ZW5kcyBPYnNlcnZlckNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgbW9kZWw6IEVkZ2VNb2RlbDtcblxuICAgIEBJbnB1dCgpIHByb3BlcnRpZXM6IEdlbmVyYWxQcm9wZXJ0aWVzTW9kZWw7XG5cbiAgICBASW5wdXQoKSBtYXJnaW5zOiBNYXJnaW5Nb2RlbDtcblxuICAgIEBJbnB1dCgpIHdpZHRoOiBudW1iZXI7XG5cbiAgICBASW5wdXQoKSBwYXJlbnRTZXNzaW9uSWQ6IG51bWJlcjtcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHR5cGUodmFsOiBFZGdlVHlwZSkge1xuICAgICAgICB0aGlzLl90eXBlID0gdmFsO1xuICAgICAgICBpZiAodmFsID09PSBFZGdlVHlwZS5IZWFkZXIpIHtcbiAgICAgICAgICAgIHRoaXMuZWRpdE1vZGVDbGFzcyA9ICdoZWFkZXItZWRpdC1tb2RlJztcbiAgICAgICAgICAgIHRoaXMudHlwZUNvbnRhaW5lclBvc2l0aW9uID0gJ3RvcCc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVkaXRNb2RlQ2xhc3MgPSAnZm9vdGVyLWVkaXQtbW9kZSc7XG4gICAgICAgICAgICB0aGlzLnR5cGVDb250YWluZXJQb3NpdGlvbiA9ICdib3R0b20nO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCB0eXBlKCk6IEVkZ2VUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gICAgfVxuICAgIHByaXZhdGUgX3R5cGU6IEVkZ2VUeXBlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2Vzc2lvbi1pZCcpXG4gICAgc2Vzc2lvbklkOiBudW1iZXI7XG5cbiAgICBlZGdlU2Vzc2lvbjogU2Vzc2lvbk1vZGVsO1xuXG4gICAgZWRpdE1vZGVDbGFzczogc3RyaW5nO1xuXG4gICAgdHlwZUNvbnRhaW5lclBvc2l0aW9uOiBzdHJpbmc7XG5cbiAgICBnZXQgc2Vzc2lvbigpOiBFZGl0U2Vzc2lvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkZ2VTZXNzaW9uLnNlc3Npb247XG4gICAgfVxuXG4gICAgZ2V0IHJlbmRlcmVyKCk6IFJlbmRlcmVyIHwgVmlydHVhbFJlbmRlcmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRnZVNlc3Npb24ucmVuZGVyZXI7XG4gICAgfVxuXG4gICAgZ2V0IGhlaWdodCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXNzaW9uLnBhZ2VzV3JhcC5kZWZhdWx0VmVydGljYWxEYXRhLmNvbnRlbnRIZWlnaHQ7XG4gICAgfVxuXG4gICAgQFZpZXdDaGlsZCgnY29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkgY29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2xvY2F0aW9uVHlwZScsIHsgc3RhdGljOiB0cnVlIH0pIHR5cGVDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgcHJpdmF0ZSBfcHJldmlvdXNIZWlnaHQ6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVndWxhdG9yU2VydmljZTogUmVndWxhdG9yU2VydmljZSwgcHJpdmF0ZSBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVndWxhdG9yU2VydmljZS5yZW1vdmVTZXNzaW9uKHRoaXMuc2Vzc2lvbklkKTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVkZ2VTZXNzaW9uID0gdGhpcy5yZWd1bGF0b3JTZXJ2aWNlLmFkZEVkZ2VTZXNzaW9uKHRoaXMpO1xuICAgICAgICB0aGlzLnNlc3Npb25JZCA9IHRoaXMuZWRnZVNlc3Npb24uc2Vzc2lvbklkO1xuICAgICAgICB0aGlzLl9wcmV2aW91c0hlaWdodCA9IHRoaXMuaGVpZ2h0O1xuICAgICAgICBEb21IZWxwZXIuc2V0U3R5bGUodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5zdHlsZSwgJ292ZXJmbG93JywgJ2hpZGRlbicpO1xuICAgICAgICBEb21IZWxwZXIuc2V0U3R5bGUodGhpcy50eXBlQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUsICd2aXNpYmlsaXR5JywgJ2hpZGRlbicpO1xuICAgICAgICB0aGlzLnNldFR5cGVDb250YWluZXJQb3NpdGlvbigpO1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLnJlbmRlcmVyVXBkYXRlZFN1YnNjcmlwdGlvbigpKTtcbiAgICB9XG5cbiAgICBlbnRlckVkaXRNb2RlKCk6IHZvaWQge1xuICAgICAgICBEb21IZWxwZXIuYWRkQ3NzQ2xhc3ModGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudCwgdGhpcy5lZGl0TW9kZUNsYXNzKTtcbiAgICAgICAgRG9tSGVscGVyLnNldFN0eWxlKHRoaXMudHlwZUNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnN0eWxlLCAndmlzaWJpbGl0eScsICd2aXNpYmxlJyk7XG4gICAgfVxuXG4gICAgbGVhdmVFZGl0TW9kZSgpOiB2b2lkIHtcbiAgICAgICAgRG9tSGVscGVyLnJlbW92ZUNzc0NsYXNzKHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsIHRoaXMuZWRpdE1vZGVDbGFzcyk7XG4gICAgICAgIERvbUhlbHBlci5zZXRTdHlsZSh0aGlzLnR5cGVDb250YWluZXIubmF0aXZlRWxlbWVudC5zdHlsZSwgJ3Zpc2liaWxpdHknLCAnaGlkZGVuJyk7XG4gICAgfVxuXG4gICAgcmVuZGVyZXJVcGRhdGVkU3Vic2NyaXB0aW9uKCk6IFN1YnNjcmlwdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRvclNlcnZpY2UucmVuZGVyZXJVcGRhdGVkJC5zdWJzY3JpYmUoc2Vzc2lvbklkID0+IHtcbiAgICAgICAgICAgIGlmIChzZXNzaW9uSWQgIT09IHRoaXMuc2Vzc2lvbklkIHx8IHRoaXMuaGVpZ2h0ID09PSB0aGlzLl9wcmV2aW91c0hlaWdodCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLmNoYW5nZWRFZGdlSGVpZ2h0KHRoaXMudHlwZSk7XG4gICAgICAgICAgICB0aGlzLl9wcmV2aW91c0hlaWdodCA9IHRoaXMuaGVpZ2h0O1xuICAgICAgICAgICAgdGhpcy5zZXRUeXBlQ29udGFpbmVyUG9zaXRpb24oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRUeXBlQ29udGFpbmVyUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJlbmRlcmVkRWRnZUhlaWdodCA9IHRoaXMuaGVpZ2h0ID4gdGhpcy5wcm9wZXJ0aWVzLm1heEVkZ2VIZWlnaHQgPyB0aGlzLnByb3BlcnRpZXMubWF4RWRnZUhlaWdodCA6IHRoaXMuaGVpZ2h0O1xuICAgICAgICBEb21IZWxwZXIuc2V0U3R5bGUodGhpcy50eXBlQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUsIHRoaXMudHlwZUNvbnRhaW5lclBvc2l0aW9uLCBgJHtyZW5kZXJlZEVkZ2VIZWlnaHR9cHhgKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgI2NvbnRhaW5lclxuICAgIGNsYXNzPVwiZWRpdC1jb250YWluZXJcIj48L2Rpdj5cbjxkaXZcbiAgICAjbG9jYXRpb25UeXBlXG4gICAgY2xhc3M9XCJsb2NhdGlvbi10eXBlXCI+PC9kaXY+XG4iXX0=
@@ -0,0 +1,104 @@
1
+ import { EdgeType } from './edge-type.enum';
2
+ import { MarginModel } from '../../models/margin.model';
3
+ import { NoderEdgeComponent } from './edge.component';
4
+ import { PageType } from '../../enums/page-type.enum';
5
+ import { RenderChangesModel } from '../../models/render-changes.model';
6
+ export class Edges {
7
+ constructor(componentService, headers, footers, margins, pageWidth, parentSessionId, properties) {
8
+ this.componentService = componentService;
9
+ this.parentSessionId = parentSessionId;
10
+ this.properties = properties;
11
+ this.headersComponents = [];
12
+ this.footersComponents = [];
13
+ if (headers) {
14
+ const headerMargins = new MarginModel({ ...margins, bottom: 0 });
15
+ this.headersComponents = this.createComponents(headers, pageWidth, headerMargins, EdgeType.Header);
16
+ }
17
+ if (footers) {
18
+ const footerMargins = new MarginModel({ ...margins, top: 0 });
19
+ this.footersComponents = this.createComponents(footers, pageWidth, footerMargins, EdgeType.Footer);
20
+ }
21
+ this.setEdgeNameToComponents();
22
+ }
23
+ getComponentByPage(page, type) {
24
+ const components = type === EdgeType.Header ? this.headersComponents : this.footersComponents;
25
+ return this.getComponent(components, page);
26
+ }
27
+ getComponentByPageType(pageType, type) {
28
+ const components = type === EdgeType.Header ? this.headersComponents : this.footersComponents;
29
+ return components.find(x => x.instance.model.pageType === pageType);
30
+ }
31
+ getComponentHeightByPageType(pageType, type) {
32
+ const component = this.getComponentByPageType(pageType, type);
33
+ if (!component) {
34
+ return 0;
35
+ }
36
+ return component.instance.height > this.properties.maxEdgeHeight ? this.properties.maxEdgeHeight : component.instance.height;
37
+ }
38
+ getComponentHeight(page, type) {
39
+ const components = type === EdgeType.Header ? this.headersComponents : this.footersComponents;
40
+ const component = this.getComponent(components, page);
41
+ if (!component) {
42
+ return 0;
43
+ }
44
+ return component.instance.height > this.properties.maxEdgeHeight ? this.properties.maxEdgeHeight : component.instance.height;
45
+ }
46
+ toggleEditMode(needEnable) {
47
+ const edgeComponents = [...this.headersComponents, ...this.footersComponents];
48
+ for (let component of edgeComponents) {
49
+ needEnable ? component.instance.enterEditMode() : component.instance.leaveEditMode();
50
+ }
51
+ }
52
+ getUniquePageTypes() {
53
+ const edgeComponents = [...this.headersComponents, ...this.footersComponents];
54
+ return [...new Set(edgeComponents.map(x => x.instance.model.pageType))];
55
+ }
56
+ createComponents(edgeModels, pageWidth, margins, type) {
57
+ const resultComponents = [];
58
+ for (let model of edgeModels) {
59
+ const componentRef = this.componentService.generateComponent(NoderEdgeComponent, {
60
+ model,
61
+ margins,
62
+ type,
63
+ width: pageWidth,
64
+ properties: this.properties,
65
+ parentSessionId: this.parentSessionId
66
+ });
67
+ componentRef.instance.renderer.renderChanges(new RenderChangesModel({ text: true }));
68
+ resultComponents.push(componentRef);
69
+ }
70
+ return resultComponents;
71
+ }
72
+ getComponent(edgeComponents, page) {
73
+ const defaultComponent = edgeComponents.find(x => x.instance.model.pageType === PageType.Default);
74
+ if (page === 1) {
75
+ return edgeComponents.find(x => x.instance.model.pageType === PageType.First) || defaultComponent;
76
+ }
77
+ const targetType = page % 2 === 0 ? PageType.Even : PageType.Default;
78
+ return edgeComponents.find(x => x.instance.model.pageType === targetType) || defaultComponent;
79
+ }
80
+ setEdgeNameToComponents() {
81
+ const edgeComponents = [...this.headersComponents, ...this.footersComponents];
82
+ if (!edgeComponents.length) {
83
+ return;
84
+ }
85
+ const isEvenEdgesExist = edgeComponents.some(x => x.instance.model.pageType === PageType.Even);
86
+ for (let component of edgeComponents) {
87
+ component.instance.typeContainer.nativeElement.innerText = this.getEdgeNameByType(component.instance, isEvenEdgesExist);
88
+ }
89
+ }
90
+ getEdgeNameByType(component, isEvenEdgesExist) {
91
+ let edgeName = component.type === EdgeType.Header ? 'Header' : 'Footer';
92
+ if (component.model.pageType === PageType.First) {
93
+ edgeName = `First Page ${edgeName}`;
94
+ }
95
+ else if (component.model.pageType === PageType.Even) {
96
+ edgeName = `Even Pages ${edgeName}`;
97
+ }
98
+ else if (component.model.pageType === PageType.Default && isEvenEdgesExist) {
99
+ edgeName = `Odd Pages ${edgeName}`;
100
+ }
101
+ return edgeName;
102
+ }
103
+ }
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2NvbXBvbmVudHMvZWRnZXMvZWRnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTVDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdkUsTUFBTSxPQUFPLEtBQUs7SUFLZCxZQUNZLGdCQUFrQyxFQUMxQyxPQUFvQixFQUNwQixPQUFvQixFQUNwQixPQUFvQixFQUNwQixTQUFpQixFQUNULGVBQXVCLEVBQ3ZCLFVBQWtDO1FBTmxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFLbEMsb0JBQWUsR0FBZixlQUFlLENBQVE7UUFDdkIsZUFBVSxHQUFWLFVBQVUsQ0FBd0I7UUFYOUMsc0JBQWlCLEdBQXVDLEVBQUUsQ0FBQztRQUUzRCxzQkFBaUIsR0FBdUMsRUFBRSxDQUFDO1FBV3ZELElBQUksT0FBTyxFQUFFO1lBQ1QsTUFBTSxhQUFhLEdBQUcsSUFBSSxXQUFXLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0RztRQUVELElBQUksT0FBTyxFQUFFO1lBQ1QsTUFB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QUFDO1FBQ3hFLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLEtBQUssRUFBRTtZQUM3QyxRQUFRLEdBQUcsY0FBYyxRQUFRLEVBQUUsQ0FBQztTQUN2QzthQUFNLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLElBQUksRUFBRTtZQUNuRCxRQUFRLEdBQUcsY0FBYyxRQUFRLEVBQUUsQ0FBQztTQUN2QzthQUFNLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRTtZQUMxRSxRQUFRLEdBQUcsYUFBYSxRQUFRLEVBQUUsQ0FBQztTQUN0QztRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLWNvbXBvbmVudHMvc2hhcmVkL3NlcnZpY2VzL2NvbXBvbmVudC9jb21wb25lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBFZGdlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL2VkZ2UubW9kZWwnO1xuaW1wb3J0IHsgRWRnZVR5cGUgfSBmcm9tICcuL2VkZ2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IEdlbmVyYWxQcm9wZXJ0aWVzTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9leGVjdXRpb24vbW9kZWxzL2dlbmVyYWwtcHJvcGVydGllcy5tb2RlbCc7XG5pbXBvcnQgeyBNYXJnaW5Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9tYXJnaW4ubW9kZWwnO1xuaW1wb3J0IHsgTm9kZXJFZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9lZGdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdlVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL3BhZ2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFJlbmRlckNoYW5nZXNNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9yZW5kZXItY2hhbmdlcy5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBFZGdlcyB7XG4gICAgaGVhZGVyc0NvbXBvbmVudHM6IENvbXBvbmVudFJlZjxOb2RlckVkZ2VDb21wb25lbnQ+W10gPSBbXTtcblxuICAgIGZvb3RlcnNDb21wb25lbnRzOiBDb21wb25lbnRSZWY8Tm9kZXJFZGdlQ29tcG9uZW50PltdID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjb21wb25lbnRTZXJ2aWNlOiBDb21wb25lbnRTZXJ2aWNlLFxuICAgICAgICBoZWFkZXJzOiBFZGdlTW9kZWxbXSxcbiAgICAgICAgZm9vdGVyczogRWRnZU1vZGVsW10sXG4gICAgICAgIG1hcmdpbnM6IE1hcmdpbk1vZGVsLFxuICAgICAgICBwYWdlV2lkdGg6IG51bWJlcixcbiAgICAgICAgcHJpdmF0ZSBwYXJlbnRTZXNzaW9uSWQ6IG51bWJlcixcbiAgICAgICAgcHJpdmF0ZSBwcm9wZXJ0aWVzOiBHZW5lcmFsUHJvcGVydGllc01vZGVsXG4gICAgKSB7XG4gICAgICAgIGlmIChoZWFkZXJzKSB7XG4gICAgICAgICAgICBjb25zdCBoZWFkZXJNYXJnaW5zID0gbmV3IE1hcmdpbk1vZGVsKHsgLi4ubWFyZ2lucywgYm90dG9tOiAwIH0pO1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJzQ29tcG9uZW50cyA9IHRoaXMuY3JlYXRlQ29tcG9uZW50cyhoZWFkZXJzLCBwYWdlV2lkdGgsIGhlYWRlck1hcmdpbnMsIEVkZ2VUeXBlLkhlYWRlcik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZm9vdGVycykge1xuICAgICAgICAgICAgY29uc3QgZm9vdGVyTWFyZ2lucyA9IG5ldyBNYXJnaW5Nb2RlbCh7IC4uLm1hcmdpbnMsIHRvcDogMCB9KTtcbiAgICAgICAgICAgIHRoaXMuZm9vdGVyc0NvbXBvbmVudHMgPSB0aGlzLmNyZWF0ZUNvbXBvbmVudHMoZm9vdGVycywgcGFnZVdpZHRoLCBmb290ZXJNYXJnaW5zLCBFZGdlVHlwZS5Gb290ZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZXRFZGdlTmFtZVRvQ29tcG9uZW50cygpO1xuICAgIH1cblxuICAgIGdldENvbXBvbmVudEJ5UGFnZShwYWdlOiBudW1iZXIsIHR5cGU6IEVkZ2VUeXBlKTogQ29tcG9uZW50UmVmPE5vZGVyRWRnZUNvbXBvbmVudD4ge1xuICAgICAgICBjb25zdCBjb21wb25lbnRzID0gdHlwZSA9PT0gRWRnZVR5cGUuSGVhZGVyID8gdGhpcy5oZWFkZXJzQ29tcG9uZW50cyA6IHRoaXMuZm9vdGVyc0NvbXBvbmVudHM7XG4gICAgICAgIHJldHVybiB0aGlzLmdldENvbXBvbmVudChjb21wb25lbnRzLCBwYWdlKTtcbiAgICB9XG5cbiAgICBnZXRDb21wb25lbnRCeVBhZ2VUeXBlKHBhZ2VUeXBlOiBQYWdlVHlwZSwgdHlwZTogRWRnZVR5cGUpOiBDb21wb25lbnRSZWY8Tm9kZXJFZGdlQ29tcG9uZW50PiB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudHMgPSB0eXBlID09PSBFZGdlVHlwZS5IZWFkZXIgPyB0aGlzLmhlYWRlcnNDb21wb25lbnRzIDogdGhpcy5mb290ZXJzQ29tcG9uZW50cztcbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudHMuZmluZCh4ID0+IHguaW5zdGFuY2UubW9kZWwucGFnZVR5cGUgPT09IHBhZ2VUeXBlKTtcbiAgICB9XG5cbiAgICBnZXRDb21wb25lbnRIZWlnaHRCeVBhZ2VUeXBlKHBhZ2VUeXBlOiBQYWdlVHlwZSwgdHlwZTogRWRnZVR5cGUpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSB0aGlzLmdldENvbXBvbmVudEJ5UGFnZVR5cGUocGFnZVR5cGUsIHR5cGUpO1xuICAgICAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29tcG9uZW50Lmluc3RhbmNlLmhlaWdodCA+IHRoaXMucHJvcGVydGllcy5tYXhFZGdlSGVpZ2h0ID8gdGhpcy5wcm9wZXJ0aWVzLm1heEVkZ2VIZWlnaHQgOiBjb21wb25lbnQuaW5zdGFuY2UuaGVpZ2h0O1xuICAgIH1cblxuICAgIGdldENvbXBvbmVudEhlaWdodChwYWdlOiBudW1iZXIsIHR5cGU6IEVkZ2VUeXBlKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IHR5cGUgPT09IEVkZ2VUeXBlLkhlYWRlciA/IHRoaXMuaGVhZGVyc0NvbXBvbmVudHMgOiB0aGlzLmZvb3RlcnNDb21wb25lbnRzO1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSB0aGlzLmdldENvbXBvbmVudChjb21wb25lbnRzLCBwYWdlKTtcbiAgICAgICAgaWYgKCFjb21wb25lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudC5pbnN0YW5jZS5oZWlnaHQgPiB0aGlzLnByb3BlcnRpZXMubWF4RWRnZUhlaWdodCA/IHRoaXMucHJvcGVydGllcy5tYXhFZGdlSGVpZ2h0IDogY29tcG9uZW50Lmluc3RhbmNlLmhlaWdodDtcbiAgICB9XG5cbiAgICB0b2dnbGVFZGl0TW9kZShuZWVkRW5hYmxlOiBib29sZWFuKSB7XG4gICAgICAgIGNvbnN0IGVkZ2VDb21wb25lbnRzID0gWy4uLnRoaXMuaGVhZGVyc0NvbXBvbmVudHMsIC4uLnRoaXMuZm9vdGVyc0NvbXBvbmVudHNdO1xuICAgICAgICBmb3IgKGxldCBjb21wb25lbnQgb2YgZWRnZUNvbXBvbmVudHMpIHtcbiAgICAgICAgICAgIG5lZWRFbmFibGUgPyBjb21wb25lbnQuaW5zdGFuY2UuZW50ZXJFZGl0TW9kZSgpIDogY29tcG9uZW50Lmluc3RhbmNlLmxlYXZlRWRpdE1vZGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFVuaXF1ZVBhZ2VUeXBlcygpOiBQYWdlVHlwZVtdIHtcbiAgICAgICAgY29uc3QgZWRnZUNvbXBvbmVudHMgPSBbLi4udGhpcy5oZWFkZXJzQ29tcG9uZW50cywgLi4udGhpcy5mb290ZXJzQ29tcG9uZW50c107XG4gICAgICAgIHJldHVybiBbLi4ubmV3IFNldChlZGdlQ29tcG9uZW50cy5tYXAoeCA9PiB4Lmluc3RhbmNlLm1vZGVsLnBhZ2VUeXBlKSldO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50cyhcbiAgICAgICAgZWRnZU1vZGVsczogRWRnZU1vZGVsW10sXG4gICAgICAgIHBhZ2VXaWR0aDogbnVtYmVyLFxuICAgICAgICBtYXJnaW5zOiBNYXJnaW5Nb2RlbCxcbiAgICAgICAgdHlwZTogRWRnZVR5cGVcbiAgICApOiBDb21wb25lbnRSZWY8Tm9kZXJFZGdlQ29tcG9uZW50PltdIHtcbiAgICAgICAgY29uc3QgcmVzdWx0Q29tcG9uZW50cyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBtb2RlbCBvZiBlZGdlTW9kZWxzKSB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbXBvbmVudFNlcnZpY2UuZ2VuZXJhdGVDb21wb25lbnQoTm9kZXJFZGdlQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgbW9kZWwsXG4gICAgICAgICAgICAgICAgbWFyZ2lucyxcbiAgICAgICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgICAgIHdpZHRoOiBwYWdlV2lkdGgsXG4gICAgICAgICAgICAgICAgcHJvcGVydGllczogdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICAgICAgICAgIHBhcmVudFNlc3Npb25JZDogdGhpcy5wYXJlbnRTZXNzaW9uSWRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnJlbmRlcmVyLnJlbmRlckNoYW5nZXMobmV3IFJlbmRlckNoYW5nZXNNb2RlbCh7IHRleHQ6IHRydWUgfSkpO1xuICAgICAgICAgICAgcmVzdWx0Q29tcG9uZW50cy5wdXNoKGNvbXBvbmVudFJlZik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0Q29tcG9uZW50cztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENvbXBvbmVudChlZGdlQ29tcG9uZW50czogQ29tcG9uZW50UmVmPE5vZGVyRWRnZUNvbXBvbmVudD5bXSwgcGFnZTogbnVtYmVyKTogQ29tcG9uZW50UmVmPE5vZGVyRWRnZUNvbXBvbmVudD4ge1xuICAgICAgICBjb25zdCBkZWZhdWx0Q29tcG9uZW50ID0gZWRnZUNvbXBvbmVudHMuZmluZCh4ID0+IHguaW5zdGFuY2UubW9kZWwucGFnZVR5cGUgPT09IFBhZ2VUeXBlLkRlZmF1bHQpO1xuICAgICAgICBpZiAocGFnZSA9PT0gMSkge1xuICAgICAgICAgICAgcmV0dXJuIGVkZ2VDb21wb25lbnRzLmZpbmQoeCA9PiB4Lmluc3RhbmNlLm1vZGVsLnBhZ2VUeXBlID09PSBQYWdlVHlwZS5GaXJzdCkgfHwgZGVmYXVsdENvbXBvbmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRhcmdldFR5cGUgPSBwYWdlICUgMiA9PT0gMCA/IFBhZ2VUeXBlLkV2ZW4gOiBQYWdlVHlwZS5EZWZhdWx0O1xuICAgICAgICByZXR1cm4gZWRnZUNvbXBvbmVudHMuZmluZCh4ID0+IHguaW5zdGFuY2UubW9kZWwucGFnZVR5cGUgPT09IHRhcmdldFR5cGUpIHx8IGRlZmF1bHRDb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRFZGdlTmFtZVRvQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZWRnZUNvbXBvbmVudHMgPSBbLi4udGhpcy5oZWFkZXJzQ29tcG9uZW50cywgLi4udGhpcy5mb290ZXJzQ29tcG9uZW50c107XG4gICAgICAgIGlmICghZWRnZUNvbXBvbmVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpc0V2ZW5FZGdlc0V4aXN0ID0gZWRnZUNvbXBvbmVudHMuc29tZSh4ID0+IHguaW5zdGFuY2UubW9kZWwucGFnZVR5cGUgPT09IFBhZ2VUeXBlLkV2ZW4pO1xuICAgICAgICBmb3IgKGxldCBjb21wb25lbnQgb2YgZWRnZUNvbXBvbmVudHMpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudC5pbnN0YW5jZS50eXBlQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuaW5uZXJUZXh0ID0gdGhpcy5nZXRFZGdlTmFtZUJ5VHlwZShjb21wb25lbnQuaW5zdGFuY2UsIGlzRXZlbkVkZ2VzRXhpc3QpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFZGdlTmFtZUJ5VHlwZShjb21wb25lbnQ6IE5vZGVyRWRnZUNvbXBvbmVudCwgaXNFdmVuRWRnZXNFeGlzdDogYm9vbGVhbik6IHN0cmluZyB7XG4gICAgICAgIGxldCBlZGdlTmFtZSA9IGNvbXBvbmVudC50eXBlID09PSBFZGdlVHlwZS5IZWFkZXIgPyAnSGVhZGVyJyA6ICdGb290ZXInO1xuICAgICAgICBpZiAoY29tcG9uZW50Lm1vZGVsLnBhZ2VUeXBlID09PSBQYWdlVHlwZS5GaXJzdCkge1xuICAgICAgICAgICAgZWRnZU5hbWUgPSBgRmlyc3QgUGFnZSAke2VkZ2VOYW1lfWA7XG4gICAgICAgIH0gZWxzZSBpZiAoY29tcG9uZW50Lm1vZGVsLnBhZ2VUeXBlID09PSBQYWdlVHlwZS5FdmVuKSB7XG4gICAgICAgICAgICBlZGdlTmFtZSA9IGBFdmVuIFBhZ2VzICR7ZWRnZU5hbWV9YDtcbiAgICAgICAgfSBlbHNlIGlmIChjb21wb25lbnQubW9kZWwucGFnZVR5cGUgPT09IFBhZ2VUeXBlLkRlZmF1bHQgJiYgaXNFdmVuRWRnZXNFeGlzdCkge1xuICAgICAgICAgICAgZWRnZU5hbWUgPSBgT2RkIFBhZ2VzICR7ZWRnZU5hbWV9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBlZGdlTmFtZTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ export const Alignment = {
2
+ left: 0,
3
+ center: 1,
4
+ right: 2,
5
+ justify: 3,
6
+ all: [0, 1, 2, 3]
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpZ25tZW50cy5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvY29uc3RhbnRzL2FsaWdubWVudHMuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHO0lBQ3JCLElBQUksRUFBRSxDQUFDO0lBQ1AsTUFBTSxFQUFFLENBQUM7SUFDVCxLQUFLLEVBQUUsQ0FBQztJQUNSLE9BQU8sRUFBRSxDQUFDO0lBQ1YsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0NBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQWxpZ25tZW50ID0ge1xuICAgIGxlZnQ6IDAsXG4gICAgY2VudGVyOiAxLFxuICAgIHJpZ2h0OiAyLFxuICAgIGp1c3RpZnk6IDMsXG4gICAgYWxsOiBbMCwgMSwgMiwgM11cbn07XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export const ClipboardEventTypes = {
2
+ copy: 'copy',
3
+ cut: 'cut',
4
+ paste: 'paste'
5
+ };
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkRXZlbnRUeXBlcy5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvY29uc3RhbnRzL2NsaXBib2FyZEV2ZW50VHlwZXMuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7SUFDL0IsSUFBSSxFQUFFLE1BQU07SUFDWixHQUFHLEVBQUUsS0FBSztJQUNWLEtBQUssRUFBRSxPQUFPO0NBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQ2xpcGJvYXJkRXZlbnRUeXBlcyA9IHtcbiAgICBjb3B5OiAnY29weScsXG4gICAgY3V0OiAnY3V0JyxcbiAgICBwYXN0ZTogJ3Bhc3RlJ1xufTtcbiJdfQ==
@@ -0,0 +1,15 @@
1
+ export const ContentStyleChange = {
2
+ bold: 1,
3
+ fontColor: 2,
4
+ highlightColor: 4,
5
+ font: 8,
6
+ italic: 16,
7
+ size: 32,
8
+ underline: 64,
9
+ alignment: 128,
10
+ indentleft: 256,
11
+ indentright: 512,
12
+ spacebefore: 1024,
13
+ spaceafter: 2048
14
+ };
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1zdHlsZS1jaGFuZ2UuY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2NvbnN0YW50cy9jb250ZW50LXN0eWxlLWNoYW5nZS5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUM5QixJQUFJLEVBQUUsQ0FBQztJQUNQLFNBQVMsRUFBRSxDQUFDO0lBQ1osY0FBYyxFQUFFLENBQUM7SUFDakIsSUFBSSxFQUFFLENBQUM7SUFDUCxNQUFNLEVBQUUsRUFBRTtJQUNWLElBQUksRUFBRSxFQUFFO0lBQ1IsU0FBUyxFQUFFLEVBQUU7SUFDYixTQUFTLEVBQUUsR0FBRztJQUNkLFVBQVUsRUFBRSxHQUFHO0lBQ2YsV0FBVyxFQUFFLEdBQUc7SUFDaEIsV0FBVyxFQUFFLElBQUk7SUFDakIsVUFBVSxFQUFFLElBQUk7Q0FDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBDb250ZW50U3R5bGVDaGFuZ2UgPSB7XG4gICAgYm9sZDogMSxcbiAgICBmb250Q29sb3I6IDIsXG4gICAgaGlnaGxpZ2h0Q29sb3I6IDQsXG4gICAgZm9udDogOCxcbiAgICBpdGFsaWM6IDE2LFxuICAgIHNpemU6IDMyLFxuICAgIHVuZGVybGluZTogNjQsXG4gICAgYWxpZ25tZW50OiAxMjgsXG4gICAgaW5kZW50bGVmdDogMjU2LFxuICAgIGluZGVudHJpZ2h0OiA1MTIsXG4gICAgc3BhY2ViZWZvcmU6IDEwMjQsXG4gICAgc3BhY2VhZnRlcjogMjA0OFxufTtcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ export const DisplayValue = {
2
+ char: 1,
3
+ customContent: 3,
4
+ punctuation: 9,
5
+ space: 10,
6
+ emptyLine: 13
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS12YWx1ZXMuY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2NvbnN0YW50cy9kaXNwbGF5LXZhbHVlcy5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDeEIsSUFBSSxFQUFFLENBQUM7SUFDUCxhQUFhLEVBQUUsQ0FBQztJQUNoQixXQUFXLEVBQUUsQ0FBQztJQUNkLEtBQUssRUFBRSxFQUFFO0lBQ1QsU0FBUyxFQUFFLEVBQUU7Q0FDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBEaXNwbGF5VmFsdWUgPSB7XG4gICAgY2hhcjogMSxcbiAgICBjdXN0b21Db250ZW50OiAzLFxuICAgIHB1bmN0dWF0aW9uOiA5LFxuICAgIHNwYWNlOiAxMCxcbiAgICBlbXB0eUxpbmU6IDEzXG59O1xuIl19
@@ -0,0 +1,13 @@
1
+ export const DocumentInfo = {
2
+ width: 794,
3
+ widthInInches: 8.267,
4
+ height: 1123,
5
+ pagesSpace: 8,
6
+ paddingTop: 96,
7
+ paddingRight: 48,
8
+ paddingBottom: 96,
9
+ paddingLeft: 48,
10
+ paddingHeader: 48,
11
+ paddingFooter: 48
12
+ };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtaW5mby5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvY29uc3RhbnRzL2RvY3VtZW50LWluZm8uY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQ3hCLEtBQUssRUFBRSxHQUFHO0lBQ1YsYUFBYSxFQUFFLEtBQUs7SUFDcEIsTUFBTSxFQUFFLElBQUk7SUFDWixVQUFVLEVBQUUsQ0FBQztJQUNiLFVBQVUsRUFBRSxFQUFFO0lBQ2QsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLEVBQUU7SUFDakIsV0FBVyxFQUFFLEVBQUU7SUFDZixhQUFhLEVBQUUsRUFBRTtJQUNqQixhQUFhLEVBQUUsRUFBRTtDQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERvY3VtZW50SW5mbyA9IHtcbiAgICB3aWR0aDogNzk0LFxuICAgIHdpZHRoSW5JbmNoZXM6IDguMjY3LFxuICAgIGhlaWdodDogMTEyMyxcbiAgICBwYWdlc1NwYWNlOiA4LFxuICAgIHBhZGRpbmdUb3A6IDk2LFxuICAgIHBhZGRpbmdSaWdodDogNDgsXG4gICAgcGFkZGluZ0JvdHRvbTogOTYsXG4gICAgcGFkZGluZ0xlZnQ6IDQ4LFxuICAgIHBhZGRpbmdIZWFkZXI6IDQ4LFxuICAgIHBhZGRpbmdGb290ZXI6IDQ4XG59O1xuIl19
@@ -0,0 +1,2 @@
1
+ export const EDITOR_VERSION = '2';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXZlcnNpb24uY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2NvbnN0YW50cy9lZGl0b3ItdmVyc2lvbi5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEVESVRPUl9WRVJTSU9OID0gJzInO1xuIl19
@@ -0,0 +1,62 @@
1
+ import { Alignment } from './alignments.const';
2
+ import { HeadingModel } from '../../../../models/generated/heading.model';
3
+ import { ParagraphStyleModel } from '../../../../models/generated/paragraph-style.model';
4
+ import { TextStyleModel } from '../../../../models/generated/text-style.model';
5
+ import { VerticalAlignment } from '../enums/vertical-alignment.enum';
6
+ export const DEFAULT_BACKGROUND_COLOR = 'transparent';
7
+ export const DEFAULT_FONT_FAMILY = 'Roboto';
8
+ export const DEFAULT_FONT_SIZE = 14;
9
+ export const DEFAULT_FONT_COLOR = '#000';
10
+ export const HYPERLINK_FONT_COLOR = '#0000EE';
11
+ export const DEFAULT_HEADING_STYLE_ID = 'Default';
12
+ export const HYPERLINK_HEADING_STYLE_ID = 'Hyperlink';
13
+ export const DEFAULT_TEXT_STYLE = new TextStyleModel({
14
+ highlightColor: DEFAULT_BACKGROUND_COLOR,
15
+ bold: false,
16
+ fontColor: DEFAULT_FONT_COLOR,
17
+ fontFamily: DEFAULT_FONT_FAMILY,
18
+ fontSize: DEFAULT_FONT_SIZE,
19
+ headingStyleId: DEFAULT_HEADING_STYLE_ID,
20
+ isSmallCaps: false,
21
+ italic: false,
22
+ strikethrough: false,
23
+ underline: false,
24
+ verticalAlignment: VerticalAlignment.None
25
+ });
26
+ export const DEFAULT_PARAGRAPH_STYLE = new ParagraphStyleModel({
27
+ alignment: Alignment.left,
28
+ backgroundColor: DEFAULT_BACKGROUND_COLOR,
29
+ headingStyleId: DEFAULT_HEADING_STYLE_ID,
30
+ indentFirstLine: 0,
31
+ indentHanging: 0,
32
+ indentLeft: 0,
33
+ indentRight: 0,
34
+ lineSpacing: 1,
35
+ spaceAfter: 0,
36
+ spaceBefore: 0,
37
+ numberingId: null,
38
+ numberingLevel: null,
39
+ contextualSpacing: false,
40
+ beforeAutospacing: false,
41
+ afterAutospacing: false
42
+ });
43
+ export const DEFAULT_HEADINGS = [
44
+ new HeadingModel({
45
+ basedOn: null,
46
+ name: DEFAULT_HEADING_STYLE_ID,
47
+ paragraphStyle: DEFAULT_PARAGRAPH_STYLE,
48
+ styleId: DEFAULT_HEADING_STYLE_ID,
49
+ textStyle: DEFAULT_TEXT_STYLE
50
+ }),
51
+ new HeadingModel({
52
+ basedOn: DEFAULT_HEADING_STYLE_ID,
53
+ name: 'Default Paragraph Font',
54
+ paragraphStyle: DEFAULT_PARAGRAPH_STYLE,
55
+ styleId: 'DefaultParagraphFont',
56
+ textStyle: DEFAULT_TEXT_STYLE
57
+ })
58
+ ];
59
+ export const NEW_LINE_MARKUP = '\n';
60
+ export const DEFAULT_TAB_WIDTH = 48;
61
+ export const DEFAULT_EDGE_MAX_HEIGHT_MULTIPLIER = 0.4;
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbnN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3IvY29yZS9jb25zdGFudHMvZWRpdG9yLmNvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLGFBQWEsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxRQUFRLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsRUFBRSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQztBQUN6QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxTQUFTLENBQUM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsU0FBUyxDQUFDO0FBQ2xELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLFdBQVcsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBQztJQUNqRCxjQUFjLEVBQUUsd0JBQXdCO0lBQ3hDLElBQUksRUFBRSxLQUFLO0lBQ1gsU0FBUyxFQUFFLGtCQUFrQjtJQUM3QixVQUFVLEVBQUUsbUJBQW1CO0lBQy9CLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsY0FBYyxFQUFFLHdCQUF3QjtJQUN4QyxXQUFXLEVBQUUsS0FBSztJQUNsQixNQUFNLEVBQUUsS0FBSztJQUNiLGFBQWEsRUFBRSxLQUFLO0lBQ3BCLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLGlCQUFpQixFQUFFLGlCQUFpQixDQUFDLElBQUk7Q0FDNUMsQ0FBQyxDQUFDO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQztJQUMzRCxTQUFTLEVBQUUsU0FBUyxDQUFDLElBQUk7SUFDekIsZUFBZSxFQUFFLHdCQUF3QjtJQUN6QyxjQUFjLEVBQUUsd0JBQXdCO0lBQ3hDLGVBQWUsRUFBRSxDQUFDO0lBQ2xCLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLFVBQVUsRUFBRSxDQUFDO0lBQ2IsV0FBVyxFQUFFLENBQUM7SUFDZCxXQUFXLEVBQUUsQ0FBQztJQUNkLFVBQVUsRUFBRSxDQUFDO0lBQ2IsV0FBVyxFQUFFLENBQUM7SUFDZCxXQUFXLEVBQUUsSUFBSTtJQUNqQixjQUFjLEVBQUUsSUFBSTtJQUNwQixpQkFBaUIsRUFBRSxLQUFLO0lBQ3hCLGlCQUFpQixFQUFFLEtBQUs7SUFDeEIsZ0JBQWdCLEVBQUUsS0FBSztDQUMxQixDQUFDLENBQUM7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM1QixJQUFJLFlBQVksQ0FBQztRQUNiLE9BQU8sRUFBRSxJQUFJO1FBQ2IsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixjQUFjLEVBQUUsdUJBQXVCO1FBQ3ZDLE9BQU8sRUFBRSx3QkFBd0I7UUFDakMsU0FBUyxFQUFFLGtCQUFrQjtLQUNoQyxDQUFDO0lBQ0YsSUFBSSxZQUFZLENBQUM7UUFDYixPQUFPLEVBQUUsd0JBQXdCO1FBQ2pDLElBQUksRUFBRSx3QkFBd0I7UUFDOUIsY0FBYyxFQUFFLHVCQUF1QjtRQUN2QyxPQUFPLEVBQUUsc0JBQXNCO1FBQy9CLFNBQVMsRUFBRSxrQkFBa0I7S0FDaEMsQ0FBQztDQUNMLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUNwQyxNQUFNLENBQUMsTUFBTSxrQ0FBa0MsR0FBRyxHQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbGlnbm1lbnQgfSBmcm9tICcuL2FsaWdubWVudHMuY29uc3QnO1xuaW1wb3J0IHsgSGVhZGluZ01vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2dlbmVyYXRlZC9oZWFkaW5nLm1vZGVsJztcbmltcG9ydCB7IFBhcmFncmFwaFN0eWxlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL3BhcmFncmFwaC1zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBUZXh0U3R5bGVNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvdGV4dC1zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBWZXJ0aWNhbEFsaWdubWVudCB9IGZyb20gJy4uL2VudW1zL3ZlcnRpY2FsLWFsaWdubWVudC5lbnVtJztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfQkFDS0dST1VORF9DT0xPUiA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9GT05UX0ZBTUlMWSA9ICdSb2JvdG8nO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfRk9OVF9TSVpFID0gMTQ7XG5leHBvcnQgY29uc3QgREVGQVVMVF9GT05UX0NPTE9SID0gJyMwMDAnO1xuZXhwb3J0IGNvbnN0IEhZUEVSTElOS19GT05UX0NPTE9SID0gJyMwMDAwRUUnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfSEVBRElOR19TVFlMRV9JRCA9ICdEZWZhdWx0JztcbmV4cG9ydCBjb25zdCBIWVBFUkxJTktfSEVBRElOR19TVFlMRV9JRCA9ICdIeXBlcmxpbmsnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfVEVYVF9TVFlMRSA9IG5ldyBUZXh0U3R5bGVNb2RlbCh7XG4gICAgaGlnaGxpZ2h0Q29sb3I6IERFRkFVTFRfQkFDS0dST1VORF9DT0xPUixcbiAgICBib2xkOiBmYWxzZSxcbiAgICBmb250Q29sb3I6IERFRkFVTFRfRk9OVF9DT0xPUixcbiAgICBmb250RmFtaWx5OiBERUZBVUxUX0ZPTlRfRkFNSUxZLFxuICAgIGZvbnRTaXplOiBERUZBVUxUX0ZPTlRfU0laRSxcbiAgICBoZWFkaW5nU3R5bGVJZDogREVGQVVMVF9IRUFESU5HX1NUWUxFX0lELFxuICAgIGlzU21hbGxDYXBzOiBmYWxzZSxcbiAgICBpdGFsaWM6IGZhbHNlLFxuICAgIHN0cmlrZXRocm91Z2g6IGZhbHNlLFxuICAgIHVuZGVybGluZTogZmFsc2UsXG4gICAgdmVydGljYWxBbGlnbm1lbnQ6IFZlcnRpY2FsQWxpZ25tZW50Lk5vbmVcbn0pO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUEFSQUdSQVBIX1NUWUxFID0gbmV3IFBhcmFncmFwaFN0eWxlTW9kZWwoe1xuICAgIGFsaWdubWVudDogQWxpZ25tZW50LmxlZnQsXG4gICAgYmFja2dyb3VuZENvbG9yOiBERUZBVUxUX0JBQ0tHUk9VTkRfQ09MT1IsXG4gICAgaGVhZGluZ1N0eWxlSWQ6IERFRkFVTFRfSEVBRElOR19TVFlMRV9JRCxcbiAgICBpbmRlbnRGaXJzdExpbmU6IDAsXG4gICAgaW5kZW50SGFuZ2luZzogMCxcbiAgICBpbmRlbnRMZWZ0OiAwLFxuICAgIGluZGVudFJpZ2h0OiAwLFxuICAgIGxpbmVTcGFjaW5nOiAxLFxuICAgIHNwYWNlQWZ0ZXI6IDAsXG4gICAgc3BhY2VCZWZvcmU6IDAsXG4gICAgbnVtYmVyaW5nSWQ6IG51bGwsXG4gICAgbnVtYmVyaW5nTGV2ZWw6IG51bGwsXG4gICAgY29udGV4dHVhbFNwYWNpbmc6IGZhbHNlLFxuICAgIGJlZm9yZUF1dG9zcGFjaW5nOiBmYWxzZSxcbiAgICBhZnRlckF1dG9zcGFjaW5nOiBmYWxzZVxufSk7XG5leHBvcnQgY29uc3QgREVGQVVMVF9IRUFESU5HUyA9IFtcbiAgICBuZXcgSGVhZGluZ01vZGVsKHtcbiAgICAgICAgYmFzZWRPbjogbnVsbCxcbiAgICAgICAgbmFtZTogREVGQVVMVF9IRUFESU5HX1NUWUxFX0lELFxuICAgICAgICBwYXJhZ3JhcGhTdHlsZTogREVGQVVMVF9QQVJBR1JBUEhfU1RZTEUsXG4gICAgICAgIHN0eWxlSWQ6IERFRkFVTFRfSEVBRElOR19TVFlMRV9JRCxcbiAgICAgICAgdGV4dFN0eWxlOiBERUZBVUxUX1RFWFRfU1RZTEVcbiAgICB9KSxcbiAgICBuZXcgSGVhZGluZ01vZGVsKHtcbiAgICAgICAgYmFzZWRPbjogREVGQVVMVF9IRUFESU5HX1NUWUxFX0lELFxuICAgICAgICBuYW1lOiAnRGVmYXVsdCBQYXJhZ3JhcGggRm9udCcsXG4gICAgICAgIHBhcmFncmFwaFN0eWxlOiBERUZBVUxUX1BBUkFHUkFQSF9TVFlMRSxcbiAgICAgICAgc3R5bGVJZDogJ0RlZmF1bHRQYXJhZ3JhcGhGb250JyxcbiAgICAgICAgdGV4dFN0eWxlOiBERUZBVUxUX1RFWFRfU1RZTEVcbiAgICB9KVxuXTtcbmV4cG9ydCBjb25zdCBORVdfTElORV9NQVJLVVAgPSAnXFxuJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1RBQl9XSURUSCA9IDQ4O1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfRURHRV9NQVhfSEVJR0hUX01VTFRJUExJRVIgPSAwLjQ7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ export const CHARS = [
2
+ // eslint-disable-next-line prettier/prettier
3
+ 48, 9, 8, 25, 5, 0, 2, 25, 48, 0, 11, 0, 5, 0, 6, 22, 2, 30, 2, 457, 5, 11, 15, 4, 8, 0, 2, 0, 18, 116, 2, 1, 3, 3, 9, 0, 2, 2, 2, 0, 2, 19, 2, 82, 2, 138, 2, 4, 3, 155, 12, 37, 3, 0, 8, 38, 10, 44, 2, 0, 2, 1, 2, 1, 2, 0, 9, 26, 6, 2, 30, 10, 7, 61, 2, 9, 5, 101, 2, 7, 3, 9, 2, 18, 3, 0, 17, 58, 3, 100, 15, 53, 5, 0, 6, 45, 211, 57, 3, 18, 2, 5, 3, 11, 3, 9, 2, 1, 7, 6, 2, 2, 2, 7, 3, 1, 3, 21, 2, 6, 2, 0, 4, 3, 3, 8, 3, 1, 3, 3, 9, 0, 5, 1, 2, 4, 3, 11, 16, 2, 2, 5, 5, 1, 3, 21, 2, 6, 2, 1, 2, 1, 2, 1, 3, 0, 2, 4, 5, 1, 3, 2, 4, 0, 8, 3, 2, 0, 8, 15, 12, 2, 2, 8, 2, 2, 2, 21, 2, 6, 2, 1, 2, 4, 3, 9, 2, 2, 2, 2, 3, 0, 16, 3, 3, 9, 18, 2, 2, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 3, 8, 3, 1, 3, 2, 9, 1, 5, 1, 2, 4, 3, 9, 2, 0, 17, 1, 2, 5, 4, 2, 2, 3, 4, 1, 2, 0, 2, 1, 4, 1, 4, 2, 4, 11, 5, 4, 4, 2, 2, 3, 3, 0, 7, 0, 15, 9, 18, 2, 2, 7, 2, 2, 2, 22, 2, 9, 2, 4, 4, 7, 2, 2, 2, 3, 8, 1, 2, 1, 7, 3, 3, 9, 19, 1, 2, 7, 2, 2, 2, 22, 2, 9, 2, 4, 3, 8, 2, 2, 2, 3, 8, 1, 8, 0, 2, 3, 3, 9, 19, 1, 2, 7, 2, 2, 2, 22, 2, 15, 4, 7, 2, 2, 2, 3, 10, 0, 9, 3, 3, 9, 11, 5, 3, 1, 2, 17, 4, 23, 2, 8, 2, 0, 3, 6, 4, 0, 5, 5, 2, 0, 2, 7, 19, 1, 14, 57, 6, 14, 2, 9, 40, 1, 2, 0, 3, 1, 2, 0, 3, 0, 7, 3, 2, 6, 2, 2, 2, 0, 2, 0, 3, 1, 2, 12, 2, 2, 3, 4, 2, 0, 2, 5, 3, 9, 3, 1, 35, 0, 24, 1, 7, 9, 12, 0, 2, 0, 2, 0, 5, 9, 2, 35, 5, 19, 2, 5, 5, 7, 2, 35, 10, 0, 58, 73, 7, 77, 3, 37, 11, 42, 2, 0, 4, 328, 2, 3, 3, 6, 2, 0, 2, 3, 3, 40, 2, 3, 3, 32, 2, 3, 3, 6, 2, 0, 2, 3, 3, 14, 2, 56, 2, 3, 3, 66, 5, 0, 33, 15, 17, 84, 13, 619, 3, 16, 2, 25, 6, 74, 22, 12, 2, 6, 12, 20, 12, 19, 13, 12, 2, 2, 2, 1, 13, 51, 3, 29, 4, 0, 5, 1, 3, 9, 34, 2, 3, 9, 7, 87, 9, 42, 6, 69, 11, 28, 4, 11, 5, 11, 11, 39, 3, 4, 12, 43, 5, 25, 7, 10, 38, 27, 5, 62, 2, 28, 3, 10, 7, 9, 14, 0, 89, 75, 5, 9, 18, 8, 13, 42, 4, 11, 71, 55, 9, 9, 4, 48, 83, 2, 2, 30, 14, 230, 23, 280, 3, 5, 3, 37, 3, 5, 3, 7, 2, 0, 2, 0, 2, 0, 2, 30, 3, 52, 2, 6, 2, 0, 4, 2, 2, 6, 4, 3, 3, 5, 5, 12, 6, 2, 2, 6, 67, 1, 20, 0, 29, 0, 14, 0, 17, 4, 60, 12, 5, 0, 4, 11, 18, 0, 5, 0, 3, 9, 2, 0, 4, 4, 7, 0, 2, 0, 2, 0, 2, 3, 2, 10, 3, 3, 6, 4, 5, 0, 53, 1, 2684, 46, 2, 46, 2, 132, 7, 6, 15, 37, 11, 53, 10, 0, 17, 22, 10, 6, 2, 6, 2, 6, 2, 6, 2, 6, 2, 6, 2, 6, 2, 6, 2, 31, 48, 0, 470, 1, 36, 5, 2, 4, 6, 1, 5, 85, 3, 1, 3, 2, 2, 89, 2, 3, 6, 40, 4, 93, 18, 23, 57, 15, 513, 6581, 75, 20939, 53, 1164, 68, 45, 3, 268, 4, 27, 21, 31, 3, 13, 13, 1, 2, 24, 9, 69, 11, 1, 38, 8, 3, 102, 3, 1, 111, 44, 25, 51, 13, 68, 12, 9, 7, 23, 4, 0, 5, 45, 3, 35, 13, 28, 4, 64, 15, 10, 39, 54, 10, 13, 3, 9, 7, 22, 4, 1, 5, 66, 25, 2, 227, 42, 2, 1, 3, 9, 7, 11171, 13, 22, 5, 48, 8453, 301, 3, 61, 3, 105, 39, 6, 13, 4, 6, 11, 2, 12, 2, 4, 2, 0, 2, 1, 2, 1, 2, 107, 34, 362, 19, 63, 3, 53, 41, 11, 5, 15, 17, 6, 13, 1, 25, 2, 33, 4, 2, 134, 20, 9, 8, 25, 5, 0, 2, 25, 12, 88, 4, 5, 3, 5, 3, 5, 3, 2
4
+ ];
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pY29kZS1jaGFycy5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliLytzaGFyZWQvZWRpdG9yL2NvcmUvY29uc3RhbnRzL3VuaWNvZGUtY2hhcnMuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHO0lBQ2pCLDZDQUE2QztJQUM3QyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztDQUNweEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBDSEFSUyA9IFtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJldHRpZXIvcHJldHRpZXJcbiAgICA0OCwgOSwgOCwgMjUsIDUsIDAsIDIsIDI1LCA0OCwgMCwgMTEsIDAsIDUsIDAsIDYsIDIyLCAyLCAzMCwgMiwgNDU3LCA1LCAxMSwgMTUsIDQsIDgsIDAsIDIsIDAsIDE4LCAxMTYsIDIsIDEsIDMsIDMsIDksIDAsIDIsIDIsIDIsIDAsIDIsIDE5LCAyLCA4MiwgMiwgMTM4LCAyLCA0LCAzLCAxNTUsIDEyLCAzNywgMywgMCwgOCwgMzgsIDEwLCA0NCwgMiwgMCwgMiwgMSwgMiwgMSwgMiwgMCwgOSwgMjYsIDYsIDIsIDMwLCAxMCwgNywgNjEsIDIsIDksIDUsIDEwMSwgMiwgNywgMywgOSwgMiwgMTgsIDMsIDAsIDE3LCA1OCwgMywgMTAwLCAxNSwgNTMsIDUsIDAsIDYsIDQ1LCAyMTEsIDU3LCAzLCAxOCwgMiwgNSwgMywgMTEsIDMsIDksIDIsIDEsIDcsIDYsIDIsIDIsIDIsIDcsIDMsIDEsIDMsIDIxLCAyLCA2LCAyLCAwLCA0LCAzLCAzLCA4LCAzLCAxLCAzLCAzLCA5LCAwLCA1LCAxLCAyLCA0LCAzLCAxMSwgMTYsIDIsIDIsIDUsIDUsIDEsIDMsIDIxLCAyLCA2LCAyLCAxLCAyLCAxLCAyLCAxLCAzLCAwLCAyLCA0LCA1LCAxLCAzLCAyLCA0LCAwLCA4LCAzLCAyLCAwLCA4LCAxNSwgMTIsIDIsIDIsIDgsIDIsIDIsIDIsIDIxLCAyLCA2LCAyLCAxLCAyLCA0LCAzLCA5LCAyLCAyLCAyLCAyLCAzLCAwLCAxNiwgMywgMywgOSwgMTgsIDIsIDIsIDcsIDMsIDEsIDMsIDIxLCAyLCA2LCAyLCAxLCAyLCA0LCAzLCA4LCAzLCAxLCAzLCAyLCA5LCAxLCA1LCAxLCAyLCA0LCAzLCA5LCAyLCAwLCAxNywgMSwgMiwgNSwgNCwgMiwgMiwgMywgNCwgMSwgMiwgMCwgMiwgMSwgNCwgMSwgNCwgMiwgNCwgMTEsIDUsIDQsIDQsIDIsIDIsIDMsIDMsIDAsIDcsIDAsIDE1LCA5LCAxOCwgMiwgMiwgNywgMiwgMiwgMiwgMjIsIDIsIDksIDIsIDQsIDQsIDcsIDIsIDIsIDIsIDMsIDgsIDEsIDIsIDEsIDcsIDMsIDMsIDksIDE5LCAxLCAyLCA3LCAyLCAyLCAyLCAyMiwgMiwgOSwgMiwgNCwgMywgOCwgMiwgMiwgMiwgMywgOCwgMSwgOCwgMCwgMiwgMywgMywgOSwgMTksIDEsIDIsIDcsIDIsIDIsIDIsIDIyLCAyLCAxNSwgNCwgNywgMiwgMiwgMiwgMywgMTAsIDAsIDksIDMsIDMsIDksIDExLCA1LCAzLCAxLCAyLCAxNywgNCwgMjMsIDIsIDgsIDIsIDAsIDMsIDYsIDQsIDAsIDUsIDUsIDIsIDAsIDIsIDcsIDE5LCAxLCAxNCwgNTcsIDYsIDE0LCAyLCA5LCA0MCwgMSwgMiwgMCwgMywgMSwgMiwgMCwgMywgMCwgNywgMywgMiwgNiwgMiwgMiwgMiwgMCwgMiwgMCwgMywgMSwgMiwgMTIsIDIsIDIsIDMsIDQsIDIsIDAsIDIsIDUsIDMsIDksIDMsIDEsIDM1LCAwLCAyNCwgMSwgNywgOSwgMTIsIDAsIDIsIDAsIDIsIDAsIDUsIDksIDIsIDM1LCA1LCAxOSwgMiwgNSwgNSwgNywgMiwgMzUsIDEwLCAwLCA1OCwgNzMsIDcsIDc3LCAzLCAzNywgMTEsIDQyLCAyLCAwLCA0LCAzMjgsIDIsIDMsIDMsIDYsIDIsIDAsIDIsIDMsIDMsIDQwLCAyLCAzLCAzLCAzMiwgMiwgMywgMywgNiwgMiwgMCwgMiwgMywgMywgMTQsIDIsIDU2LCAyLCAzLCAzLCA2NiwgNSwgMCwgMzMsIDE1LCAxNywgODQsIDEzLCA2MTksIDMsIDE2LCAyLCAyNSwgNiwgNzQsIDIyLCAxMiwgMiwgNiwgMTIsIDIwLCAxMiwgMTksIDEzLCAxMiwgMiwgMiwgMiwgMSwgMTMsIDUxLCAzLCAyOSwgNCwgMCwgNSwgMSwgMywgOSwgMzQsIDIsIDMsIDksIDcsIDg3LCA5LCA0MiwgNiwgNjksIDExLCAyOCwgNCwgMTEsIDUsIDExLCAxMSwgMzksIDMsIDQsIDEyLCA0MywgNSwgMjUsIDcsIDEwLCAzOCwgMjcsIDUsIDYyLCAyLCAyOCwgMywgMTAsIDcsIDksIDE0LCAwLCA4OSwgNzUsIDUsIDksIDE4LCA4LCAxMywgNDIsIDQsIDExLCA3MSwgNTUsIDksIDksIDQsIDQ4LCA4MywgMiwgMiwgMzAsIDE0LCAyMzAsIDIzLCAyODAsIDMsIDUsIDMsIDM3LCAzLCA1LCAzLCA3LCAyLCAwLCAyLCAwLCAyLCAwLCAyLCAzMCwgMywgNTIsIDIsIDYsIDIsIDAsIDQsIDIsIDIsIDYsIDQsIDMsIDMsIDUsIDUsIDEyLCA2LCAyLCAyLCA2LCA2NywgMSwgMjAsIDAsIDI5LCAwLCAxNCwgMCwgMTcsIDQsIDYwLCAxMiwgNSwgMCwgNCwgMTEsIDE4LCAwLCA1LCAwLCAzLCA5LCAyLCAwLCA0LCA0LCA3LCAwLCAyLCAwLCAyLCAwLCAyLCAzLCAyLCAxMCwgMywgMywgNiwgNCwgNSwgMCwgNTMsIDEsIDI2ODQsIDQ2LCAyLCA0NiwgMiwgMTMyLCA3LCA2LCAxNSwgMzcsIDExLCA1MywgMTAsIDAsIDE3LCAyMiwgMTAsIDYsIDIsIDYsIDIsIDYsIDIsIDYsIDIsIDYsIDIsIDYsIDIsIDYsIDIsIDYsIDIsIDMxLCA0OCwgMCwgNDcwLCAxLCAzNiwgNSwgMiwgNCwgNiwgMSwgNSwgODUsIDMsIDEsIDMsIDIsIDIsIDg5LCAyLCAzLCA2LCA0MCwgNCwgOTMsIDE4LCAyMywgNTcsIDE1LCA1MTMsIDY1ODEsIDc1LCAyMDkzOSwgNTMsIDExNjQsIDY4LCA0NSwgMywgMjY4LCA0LCAyNywgMjEsIDMxLCAzLCAxMywgMTMsIDEsIDIsIDI0LCA5LCA2OSwgMTEsIDEsIDM4LCA4LCAzLCAxMDIsIDMsIDEsIDExMSwgNDQsIDI1LCA1MSwgMTMsIDY4LCAxMiwgOSwgNywgMjMsIDQsIDAsIDUsIDQ1LCAzLCAzNSwgMTMsIDI4LCA0LCA2NCwgMTUsIDEwLCAzOSwgNTQsIDEwLCAxMywgMywgOSwgNywgMjIsIDQsIDEsIDUsIDY2LCAyNSwgMiwgMjI3LCA0MiwgMiwgMSwgMywgOSwgNywgMTExNzEsIDEzLCAyMiwgNSwgNDgsIDg0NTMsIDMwMSwgMywgNjEsIDMsIDEwNSwgMzksIDYsIDEzLCA0LCA2LCAxMSwgMiwgMTIsIDIsIDQsIDIsIDAsIDIsIDEsIDIsIDEsIDIsIDEwNywgMzQsIDM2MiwgMTksIDYzLCAzLCA1MywgNDEsIDExLCA1LCAxNSwgMTcsIDYsIDEzLCAxLCAyNSwgMiwgMzMsIDQsIDIsIDEzNCwgMjAsIDksIDgsIDI1LCA1LCAwLCAyLCAyNSwgMTIsIDg4LCA0LCA1LCAzLCA1LCAzLCA1LCAzLCAyXG5dO1xuIl19
@@ -0,0 +1,134 @@
1
+ import { BreakTypes } from './enums/break-types.enum';
2
+ import { DeltaHelper } from './helpers/delta.helper';
3
+ import { NEW_LINE_MARKUP } from './constants/editor.const';
4
+ import { Point } from './point';
5
+ import { Range } from './range';
6
+ export class Document {
7
+ /**
8
+ * Returns all the lines in the document as a single string, joined by the new line character.
9
+ **/
10
+ get text() {
11
+ return this.lines.join(NEW_LINE_MARKUP);
12
+ }
13
+ get length() {
14
+ return this.lines.length;
15
+ }
16
+ constructor(model, pageMargin, pagesSpace, pageWidth, pageHeight) {
17
+ this.model = model;
18
+ this.pageMargin = pageMargin;
19
+ this.pagesSpace = pagesSpace;
20
+ this.pageWidth = pageWidth;
21
+ this.pageHeight = pageHeight;
22
+ this.lines = [''];
23
+ this.lines = DeltaHelper.splitByParagraphs(this.model.content);
24
+ }
25
+ insertText(position, text) {
26
+ const endPoint = DeltaHelper.insertTextAndReturnEndPoint(this.lines, text, position);
27
+ return endPoint;
28
+ }
29
+ /**
30
+ * Removes the `range` from the document.
31
+ **/
32
+ removeRange(range) {
33
+ DeltaHelper.remove(this.lines, range.start, range.end);
34
+ }
35
+ getLine(lines, index) {
36
+ return lines[index] || '';
37
+ }
38
+ getAllLines() {
39
+ return this.getLines(0, this.getLinesCount());
40
+ }
41
+ getLinesCount() {
42
+ return this.lines.length - 1;
43
+ }
44
+ getLines(firstRow, lastRow) {
45
+ return this.lines.slice(firstRow, lastRow + 1);
46
+ }
47
+ /**
48
+ * Returns all the text within `range` as an array of lines.
49
+ **/
50
+ getLinesForRange(range) {
51
+ if (range.isSingleLine) {
52
+ const line = this.getLine(this.lines, range.start.row);
53
+ const linePartInRange = line.slice(range.start.column, range.end.column);
54
+ return [linePartInRange];
55
+ }
56
+ const lines = this.getLines(range.start.row, range.end.row);
57
+ lines[0] = (lines[0] || '').slice(range.start.column);
58
+ const lastIndex = lines.length - 1;
59
+ lines[lastIndex] = lines[lastIndex].slice(0, range.end.column);
60
+ return lines;
61
+ }
62
+ /**
63
+ * Returns all the text within `range` as a single string.
64
+ **/
65
+ getTextRange(range) {
66
+ return this.getLinesForRange(range).join(NEW_LINE_MARKUP);
67
+ }
68
+ /**
69
+ * Converts the position in a document to the character's index.
70
+ */
71
+ positionToIndex(lines, position, startRow = 0) {
72
+ let index = 0;
73
+ const endRow = Math.min(position.row, this.lines.length);
74
+ for (let i = startRow || 0; i < endRow; i++) {
75
+ index += lines[i].length + 1;
76
+ }
77
+ return index + position.column;
78
+ }
79
+ /**
80
+ * Converts an index position in a document to the position.
81
+ * See 'positionToIndex' for more information.
82
+ */
83
+ indexToPosition(positionIndex, startRow) {
84
+ const newlineLength = NEW_LINE_MARKUP.length;
85
+ for (let lineIndex = startRow || 0; lineIndex < this.lines.length; lineIndex++) {
86
+ positionIndex -= this.lines[lineIndex].length + newlineLength;
87
+ if (positionIndex < 0) {
88
+ const column = positionIndex + this.lines[lineIndex].length + newlineLength;
89
+ return new Point(lineIndex, column);
90
+ }
91
+ }
92
+ const column = positionIndex + this.lines[this.lines.length - 1].length + newlineLength;
93
+ return new Point(this.lines.length - 1, column);
94
+ }
95
+ indexesToRange(startIndex, endIndex) {
96
+ const startPoint = this.indexToPosition(startIndex, 0);
97
+ const endPoint = this.indexToPosition(endIndex, 0);
98
+ return new Range(startPoint, endPoint);
99
+ }
100
+ isNewLineSymbol(index) {
101
+ const text = this.text;
102
+ return !text || !text[index] || text[index] === NEW_LINE_MARKUP;
103
+ }
104
+ /**
105
+ * Converts the selection range in a document to the selected paragraphs indexes (start and end of paragraphs).
106
+ * start/end refers to the "absolute position" of a character in the document.
107
+ */
108
+ getSelectedParagraphsByRange(range) {
109
+ const newlineLength = NEW_LINE_MARKUP.length;
110
+ let start = 0;
111
+ let end = 0;
112
+ let i;
113
+ const row = Math.min(range.end.row, this.lines.length - 1);
114
+ for (i = 0; i < row; i++) {
115
+ if (i < range.start.row) {
116
+ start += this.lines[i].length + newlineLength;
117
+ }
118
+ end += this.lines[i].length + newlineLength;
119
+ }
120
+ if (i < this.lines.length) {
121
+ end += this.lines[i].length;
122
+ }
123
+ return { start, end };
124
+ }
125
+ getPositionAfterBreak(position, breakType) {
126
+ if (breakType === BreakTypes.TextWrapping) {
127
+ return position;
128
+ }
129
+ const isLastColumn = position.column === this.lines[position.row].length;
130
+ const isLastParagraph = position.row === this.lines.length - 1;
131
+ return isLastColumn && !isLastParagraph ? new Point(position.row + 1, 0) : position;
132
+ }
133
+ }
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci9jb3JlL2RvY3VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVoQyxNQUFNLE9BQU8sUUFBUTtJQUdqQjs7UUFFSTtJQUNKLElBQUksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDN0IsQ0FBQztJQUVELFlBQ1ksS0FBd0IsRUFDekIsVUFBdUIsRUFDdkIsVUFBa0IsRUFDbEIsU0FBaUIsRUFDakIsVUFBbUI7UUFKbEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDekIsZUFBVSxHQUFWLFVBQVUsQ0FBYTtRQUN2QixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsZUFBVSxHQUFWLFVBQVUsQ0FBUztRQWxCOUIsVUFBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFvQlQsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsVUFBVSxDQUFDLFFBQWUsRUFBRSxJQUFZO1FBQ3BDLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNyRixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0lBRUQ7O1FBRUk7SUFDSixXQUFXLENBQUMsS0FBWTtRQUNwQixXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFlLEVBQUUsS0FBYTtRQUNsQyxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVc7UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxhQUFhO1FBQ1QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVEsQ0FBQyxRQUFnQixFQUFFLE9BQWU7UUFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7UUFFSTtJQUNKLGdCQUFnQixDQUFDLEtBQVk7UUFDekIsSUFBSSxLQUFLLENBQUMsWUFBWSxFQUFFO1lBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUV6RSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDNUI7UUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUQsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRS9ELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7UUFFSTtJQUNKLFlBQVksQ0FBQyxLQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlLENBQUMsS0FBZSxFQUFFLFFBQWUsRUFBRSxRQUFRLEdBQUcsQ0FBQztRQUMxRCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxLQUFLLElBQUksQ0FBQyxHQUFHLFFBQVEsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6QyxLQUFLLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7U0FDaEM7UUFFRCxPQUFPLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQ25DLENBQUM7SUFFRDs7O09BR0c7SUFDSCxlQUFlLENBQUMsYUFBcUIsRUFBRSxRQUFnQjtRQUNuRCxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDO1FBQzdDLEtBQUssSUFBSSxTQUFTLEdBQUcsUUFBUSxJQUFJLENBQUMsRUFBRSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEVBQUU7WUFDNUUsYUFBYSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQztZQUM5RCxJQUFJLGFBQWEsR0FBRyxDQUFDLEVBQUU7Z0JBQ25CLE1BQU0sTUFBTSxHQUFHLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUM7Z0JBRTVFLE9BQU8sSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQ3ZDO1NBQ0o7UUFFRCxNQUFNLE1BQU0sR0FBRyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDO1FBRXhGLE9BQU8sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxjQUFjLENBQUMsVUFBa0IsRUFBRSxRQUFnQjtRQUMvQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVuRCxPQUFPLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWE7UUFDekIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUV2QixPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxlQUFlLENBQUM7SUFDcEUsQ0FBQztJQUVEOzs7T0FHRztJQUNILDRCQUE0QixDQUFDLEtBQVk7UUFDckMsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQztRQUM3QyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsQ0FBQztRQUNOLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDM0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JCLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUM7YUFDakQ7WUFFRCxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDO1NBQy9DO1FBRUQsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdkIsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1NBQy9CO1FBRUQsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQscUJBQXFCLENBQUMsUUFBZSxFQUFFLFNBQXFCO1FBQ3hELElBQUksU0FBUyxLQUFLLFVBQVUsQ0FBQyxZQUFZLEVBQUU7WUFDdkMsT0FBTyxRQUFRLENBQUM7U0FDbkI7UUFFRCxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN6RSxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUMvRCxPQUFPLFlBQVksSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUN4RixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcmVha1R5cGVzIH0gZnJvbSAnLi9lbnVtcy9icmVhay10eXBlcy5lbnVtJztcbmltcG9ydCB7IENvbnRlbnRzSW50ZXJmYWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9jb250ZW50cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRGVsdGFIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMvZGVsdGEuaGVscGVyJztcbmltcG9ydCB7IE1hcmdpbk1vZGVsIH0gZnJvbSAnLi9tb2RlbHMvbWFyZ2luLm1vZGVsJztcbmltcG9ydCB7IE5FV19MSU5FX01BUktVUCB9IGZyb20gJy4vY29uc3RhbnRzL2VkaXRvci5jb25zdCc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4vcG9pbnQnO1xuaW1wb3J0IHsgUmFuZ2UgfSBmcm9tICcuL3JhbmdlJztcblxuZXhwb3J0IGNsYXNzIERvY3VtZW50IHtcbiAgICBsaW5lcyA9IFsnJ107XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFsbCB0aGUgbGluZXMgaW4gdGhlIGRvY3VtZW50IGFzIGEgc2luZ2xlIHN0cmluZywgam9pbmVkIGJ5IHRoZSBuZXcgbGluZSBjaGFyYWN0ZXIuXG4gICAgICoqL1xuICAgIGdldCB0ZXh0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpbmVzLmpvaW4oTkVXX0xJTkVfTUFSS1VQKTtcbiAgICB9XG5cbiAgICBnZXQgbGVuZ3RoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpbmVzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBtb2RlbDogQ29udGVudHNJbnRlcmZhY2UsXG4gICAgICAgIHB1YmxpYyBwYWdlTWFyZ2luOiBNYXJnaW5Nb2RlbCxcbiAgICAgICAgcHVibGljIHBhZ2VzU3BhY2U6IG51bWJlcixcbiAgICAgICAgcHVibGljIHBhZ2VXaWR0aDogbnVtYmVyLFxuICAgICAgICBwdWJsaWMgcGFnZUhlaWdodD86IG51bWJlclxuICAgICkge1xuICAgICAgICB0aGlzLmxpbmVzID0gRGVsdGFIZWxwZXIuc3BsaXRCeVBhcmFncmFwaHModGhpcy5tb2RlbC5jb250ZW50KTtcbiAgICB9XG5cbiAgICBpbnNlcnRUZXh0KHBvc2l0aW9uOiBQb2ludCwgdGV4dDogc3RyaW5nKTogUG9pbnQge1xuICAgICAgICBjb25zdCBlbmRQb2ludCA9IERlbHRhSGVscGVyLmluc2VydFRleHRBbmRSZXR1cm5FbmRQb2ludCh0aGlzLmxpbmVzLCB0ZXh0LCBwb3NpdGlvbik7XG4gICAgICAgIHJldHVybiBlbmRQb2ludDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmVzIHRoZSBgcmFuZ2VgIGZyb20gdGhlIGRvY3VtZW50LlxuICAgICAqKi9cbiAgICByZW1vdmVSYW5nZShyYW5nZTogUmFuZ2UpOiB2b2lkIHtcbiAgICAgICAgRGVsdGFIZWxwZXIucmVtb3ZlKHRoaXMubGluZXMsIHJhbmdlLnN0YXJ0LCByYW5nZS5lbmQpO1xuICAgIH1cblxuICAgIGdldExpbmUobGluZXM6IHN0cmluZ1tdLCBpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGxpbmVzW2luZGV4XSB8fCAnJztcbiAgICB9XG5cbiAgICBnZXRBbGxMaW5lcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpbmVzKDAsIHRoaXMuZ2V0TGluZXNDb3VudCgpKTtcbiAgICB9XG5cbiAgICBnZXRMaW5lc0NvdW50KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpbmVzLmxlbmd0aCAtIDE7XG4gICAgfVxuXG4gICAgZ2V0TGluZXMoZmlyc3RSb3c6IG51bWJlciwgbGFzdFJvdzogbnVtYmVyKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5saW5lcy5zbGljZShmaXJzdFJvdywgbGFzdFJvdyArIDEpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYWxsIHRoZSB0ZXh0IHdpdGhpbiBgcmFuZ2VgIGFzIGFuIGFycmF5IG9mIGxpbmVzLlxuICAgICAqKi9cbiAgICBnZXRMaW5lc0ZvclJhbmdlKHJhbmdlOiBSYW5nZSk6IHN0cmluZ1tdIHtcbiAgICAgICAgaWYgKHJhbmdlLmlzU2luZ2xlTGluZSkge1xuICAgICAgICAgICAgY29uc3QgbGluZSA9IHRoaXMuZ2V0TGluZSh0aGlzLmxpbmVzLCByYW5nZS5zdGFydC5yb3cpO1xuICAgICAgICAgICAgY29uc3QgbGluZVBhcnRJblJhbmdlID0gbGluZS5zbGljZShyYW5nZS5zdGFydC5jb2x1bW4sIHJhbmdlLmVuZC5jb2x1bW4pO1xuXG4gICAgICAgICAgICByZXR1cm4gW2xpbmVQYXJ0SW5SYW5nZV07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBsaW5lcyA9IHRoaXMuZ2V0TGluZXMocmFuZ2Uuc3RhcnQucm93LCByYW5nZS5lbmQucm93KTtcbiAgICAgICAgbGluZXNbMF0gPSAobGluZXNbMF0gfHwgJycpLnNsaWNlKHJhbmdlLnN0YXJ0LmNvbHVtbik7XG4gICAgICAgIGNvbnN0IGxhc3RJbmRleCA9IGxpbmVzLmxlbmd0aCAtIDE7XG4gICAgICAgIGxpbmVzW2xhc3RJbmRleF0gPSBsaW5lc1tsYXN0SW5kZXhdLnNsaWNlKDAsIHJhbmdlLmVuZC5jb2x1bW4pO1xuXG4gICAgICAgIHJldHVybiBsaW5lcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFsbCB0aGUgdGV4dCB3aXRoaW4gYHJhbmdlYCBhcyBhIHNpbmdsZSBzdHJpbmcuXG4gICAgICoqL1xuICAgIGdldFRleHRSYW5nZShyYW5nZTogUmFuZ2UpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRMaW5lc0ZvclJhbmdlKHJhbmdlKS5qb2luKE5FV19MSU5FX01BUktVUCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgdGhlIHBvc2l0aW9uIGluIGEgZG9jdW1lbnQgdG8gdGhlIGNoYXJhY3RlcidzIGluZGV4LlxuICAgICAqL1xuICAgIHBvc2l0aW9uVG9JbmRleChsaW5lczogc3RyaW5nW10sIHBvc2l0aW9uOiBQb2ludCwgc3RhcnRSb3cgPSAwKTogbnVtYmVyIHtcbiAgICAgICAgbGV0IGluZGV4ID0gMDtcbiAgICAgICAgY29uc3QgZW5kUm93ID0gTWF0aC5taW4ocG9zaXRpb24ucm93LCB0aGlzLmxpbmVzLmxlbmd0aCk7XG4gICAgICAgIGZvciAobGV0IGkgPSBzdGFydFJvdyB8fCAwOyBpIDwgZW5kUm93OyBpKyspIHtcbiAgICAgICAgICAgIGluZGV4ICs9IGxpbmVzW2ldLmxlbmd0aCArIDE7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaW5kZXggKyBwb3NpdGlvbi5jb2x1bW47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgYW4gaW5kZXggcG9zaXRpb24gaW4gYSBkb2N1bWVudCB0byB0aGUgcG9zaXRpb24uXG4gICAgICogU2VlICdwb3NpdGlvblRvSW5kZXgnIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICAgICAqL1xuICAgIGluZGV4VG9Qb3NpdGlvbihwb3NpdGlvbkluZGV4OiBudW1iZXIsIHN0YXJ0Um93OiBudW1iZXIpOiBQb2ludCB7XG4gICAgICAgIGNvbnN0IG5ld2xpbmVMZW5ndGggPSBORVdfTElORV9NQVJLVVAubGVuZ3RoO1xuICAgICAgICBmb3IgKGxldCBsaW5lSW5kZXggPSBzdGFydFJvdyB8fCAwOyBsaW5lSW5kZXggPCB0aGlzLmxpbmVzLmxlbmd0aDsgbGluZUluZGV4KyspIHtcbiAgICAgICAgICAgIHBvc2l0aW9uSW5kZXggLT0gdGhpcy5saW5lc1tsaW5lSW5kZXhdLmxlbmd0aCArIG5ld2xpbmVMZW5ndGg7XG4gICAgICAgICAgICBpZiAocG9zaXRpb25JbmRleCA8IDApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2x1bW4gPSBwb3NpdGlvbkluZGV4ICsgdGhpcy5saW5lc1tsaW5lSW5kZXhdLmxlbmd0aCArIG5ld2xpbmVMZW5ndGg7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IFBvaW50KGxpbmVJbmRleCwgY29sdW1uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbHVtbiA9IHBvc2l0aW9uSW5kZXggKyB0aGlzLmxpbmVzW3RoaXMubGluZXMubGVuZ3RoIC0gMV0ubGVuZ3RoICsgbmV3bGluZUxlbmd0aDtcblxuICAgICAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMubGluZXMubGVuZ3RoIC0gMSwgY29sdW1uKTtcbiAgICB9XG5cbiAgICBpbmRleGVzVG9SYW5nZShzdGFydEluZGV4OiBudW1iZXIsIGVuZEluZGV4OiBudW1iZXIpOiBSYW5nZSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0UG9pbnQgPSB0aGlzLmluZGV4VG9Qb3NpdGlvbihzdGFydEluZGV4LCAwKTtcbiAgICAgICAgY29uc3QgZW5kUG9pbnQgPSB0aGlzLmluZGV4VG9Qb3NpdGlvbihlbmRJbmRleCwgMCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBSYW5nZShzdGFydFBvaW50LCBlbmRQb2ludCk7XG4gICAgfVxuXG4gICAgaXNOZXdMaW5lU3ltYm9sKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdGV4dCA9IHRoaXMudGV4dDtcblxuICAgICAgICByZXR1cm4gIXRleHQgfHwgIXRleHRbaW5kZXhdIHx8IHRleHRbaW5kZXhdID09PSBORVdfTElORV9NQVJLVVA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgdGhlIHNlbGVjdGlvbiByYW5nZSBpbiBhIGRvY3VtZW50IHRvIHRoZSBzZWxlY3RlZCBwYXJhZ3JhcGhzIGluZGV4ZXMgKHN0YXJ0IGFuZCBlbmQgb2YgcGFyYWdyYXBocykuXG4gICAgICogc3RhcnQvZW5kIHJlZmVycyB0byB0aGUgXCJhYnNvbHV0ZSBwb3NpdGlvblwiIG9mIGEgY2hhcmFjdGVyIGluIHRoZSBkb2N1bWVudC5cbiAgICAgKi9cbiAgICBnZXRTZWxlY3RlZFBhcmFncmFwaHNCeVJhbmdlKHJhbmdlOiBSYW5nZSk6IHsgc3RhcnQ6IG51bWJlcjsgZW5kOiBudW1iZXIgfSB7XG4gICAgICAgIGNvbnN0IG5ld2xpbmVMZW5ndGggPSBORVdfTElORV9NQVJLVVAubGVuZ3RoO1xuICAgICAgICBsZXQgc3RhcnQgPSAwO1xuICAgICAgICBsZXQgZW5kID0gMDtcbiAgICAgICAgbGV0IGk7XG4gICAgICAgIGNvbnN0IHJvdyA9IE1hdGgubWluKHJhbmdlLmVuZC5yb3csIHRoaXMubGluZXMubGVuZ3RoIC0gMSk7XG4gICAgICAgIGZvciAoaSA9IDA7IGkgPCByb3c7IGkrKykge1xuICAgICAgICAgICAgaWYgKGkgPCByYW5nZS5zdGFydC5yb3cpIHtcbiAgICAgICAgICAgICAgICBzdGFydCArPSB0aGlzLmxpbmVzW2ldLmxlbmd0aCArIG5ld2xpbmVMZW5ndGg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGVuZCArPSB0aGlzLmxpbmVzW2ldLmxlbmd0aCArIG5ld2xpbmVMZW5ndGg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaSA8IHRoaXMubGluZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICBlbmQgKz0gdGhpcy5saW5lc1tpXS5sZW5ndGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4geyBzdGFydCwgZW5kIH07XG4gICAgfVxuXG4gICAgZ2V0UG9zaXRpb25BZnRlckJyZWFrKHBvc2l0aW9uOiBQb2ludCwgYnJlYWtUeXBlOiBCcmVha1R5cGVzKTogUG9pbnQge1xuICAgICAgICBpZiAoYnJlYWtUeXBlID09PSBCcmVha1R5cGVzLlRleHRXcmFwcGluZykge1xuICAgICAgICAgICAgcmV0dXJuIHBvc2l0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXNMYXN0Q29sdW1uID0gcG9zaXRpb24uY29sdW1uID09PSB0aGlzLmxpbmVzW3Bvc2l0aW9uLnJvd10ubGVuZ3RoO1xuICAgICAgICBjb25zdCBpc0xhc3RQYXJhZ3JhcGggPSBwb3NpdGlvbi5yb3cgPT09IHRoaXMubGluZXMubGVuZ3RoIC0gMTtcbiAgICAgICAgcmV0dXJuIGlzTGFzdENvbHVtbiAmJiAhaXNMYXN0UGFyYWdyYXBoID8gbmV3IFBvaW50KHBvc2l0aW9uLnJvdyArIDEsIDApIDogcG9zaXRpb247XG4gICAgfVxufVxuIl19