@talrace/ngx-noder 0.0.7 → 0.0.9

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 (657) hide show
  1. package/README.md +75 -66
  2. package/esm2022/lib/apart-components/add-link-dialog/add-link-dialog.component.mjs +67 -0
  3. package/esm2022/lib/apart-components/add-link-dialog/validation.helper.mjs +7 -0
  4. package/esm2022/lib/apart-components/add-link-mobile/add-link-mobile.component.mjs +47 -0
  5. package/esm2022/lib/apart-components/confirm-dialog/confirm-dialog.component.mjs +32 -0
  6. package/esm2022/lib/apart-components/editor-search/editor-search-dialog.component.mjs +64 -0
  7. package/esm2022/lib/apart-components/editor-title/editor-title.component.mjs +89 -0
  8. package/esm2022/lib/apart-components/editor-title-mobile/editor-title-mobile.component.mjs +22 -0
  9. package/esm2022/lib/apart-components/editor-toolbar/components/base-toolbar.component.mjs +117 -0
  10. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/color-picker/color-picker.component.mjs +37 -0
  11. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/font/font.component.mjs +49 -0
  12. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/font-size/font-size.component.mjs +90 -0
  13. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/font-style/font-style.component.mjs +81 -0
  14. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/format/format.component.mjs +28 -0
  15. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/heading/heading.component.mjs +22 -0
  16. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/numbering/numbering.component.mjs +53 -0
  17. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/print/print.component.mjs +18 -0
  18. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/undo-redo/undo-redo.component.mjs +27 -0
  19. package/esm2022/lib/apart-components/editor-toolbar/components/buttons/zoom/zoom.component.mjs +71 -0
  20. package/esm2022/lib/apart-components/editor-toolbar/components/menu-dropdowns/menu-dropdowns.component.mjs +94 -0
  21. package/esm2022/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/menu-dropdowns-mobile.component.mjs +24 -0
  22. package/esm2022/lib/apart-components/editor-toolbar/components/toolbar-actions/toolbar-actions.component.mjs +65 -0
  23. package/esm2022/lib/apart-components/editor-toolbar/editor-mobile-toolbar/editor-mobile-toolbar.component.mjs +84 -0
  24. package/esm2022/lib/apart-components/editor-toolbar/editor-toolbar/editor-toolbar.component.mjs +90 -0
  25. package/esm2022/lib/apart-components/editor-toolbar/editor-toolbar.module.mjs +117 -0
  26. package/esm2022/lib/apart-components/editor-toolbar/shared/constants/editor-toolbar-modes.const.mjs +8 -0
  27. package/esm2022/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/constants/numbering-templates.const.mjs +6 -6
  28. package/esm2022/lib/apart-components/editor-toolbar/shared/constants/svg-icons.const.mjs +157 -0
  29. package/esm2022/lib/apart-components/editor-toolbar/shared/enums/alignment.enum.mjs +8 -0
  30. package/esm2022/lib/apart-components/editor-toolbar/shared/enums/editor-toolbar-mode.enum.mjs +11 -0
  31. package/esm2022/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-template-type.enum.mjs +1 -1
  32. package/esm2022/lib/apart-components/editor-toolbar/shared/enums/numbering-type.enum.mjs +6 -0
  33. package/esm2022/lib/apart-components/editor-toolbar/shared/services/custom-icon.service.mjs +34 -0
  34. package/esm2022/lib/apart-components/editor-toolbar/shared/services/editor-toolbar.service.mjs +26 -0
  35. package/esm2022/lib/apart-components/editor-toolbar/shared/services/toolbar-core.service.mjs +60 -0
  36. package/esm2022/lib/apart-components/editor-toolbar/shared/toolbar-styles.helper.mjs +48 -0
  37. package/esm2022/lib/apart-components/insert-table/insert-table.component.mjs +54 -0
  38. package/esm2022/lib/apart-components/insert-table-mobile/insert-table-mobile.component.mjs +84 -0
  39. package/esm2022/lib/apart-components/text-format-mobile/text-format-mobile.component.mjs +123 -0
  40. package/esm2022/lib/editor/components/edges/edge-element.model.mjs +9 -0
  41. package/esm2022/lib/editor/components/edges/edge-type.enum.mjs +6 -0
  42. package/esm2022/lib/editor/components/edges/edge.component.mjs +99 -0
  43. package/esm2022/lib/editor/components/edges/edges.mjs +127 -0
  44. package/esm2022/lib/editor/components/edges/page-type.enum.mjs +7 -0
  45. package/esm2022/lib/editor/components/editor.component.mjs +112 -0
  46. package/esm2022/lib/editor/components/external-element/external-element.service.mjs +6 -0
  47. package/esm2022/lib/editor/components/external-element/external-elements.const.mjs +4 -0
  48. package/esm2022/lib/editor/components/external-element/external-sidenav.interface.mjs +2 -0
  49. package/esm2022/lib/editor/components/external-element/external.component.mjs +41 -0
  50. package/esm2022/lib/editor/components/external-element/models/element-data.model.mjs +9 -0
  51. package/esm2022/lib/editor/components/external-element/models/external-element.model.mjs +11 -0
  52. package/esm2022/lib/editor/components/external-element/models/external-sidenav.model.mjs +15 -0
  53. package/esm2022/lib/editor/components/image/components/image.component.mjs +88 -0
  54. package/esm2022/lib/editor/components/image/image-api.service.mjs +36 -0
  55. package/esm2022/lib/editor/components/image/input-handler/image-input.handler.mjs +55 -0
  56. package/esm2022/lib/editor/components/image/resizer/coordinate.mjs +2 -0
  57. package/esm2022/lib/editor/components/image/resizer/direction-wrapper.mjs +19 -0
  58. package/esm2022/lib/editor/components/image/resizer/direction.enum.mjs +12 -0
  59. package/esm2022/lib/editor/components/image/resizer/resizer.component.mjs +106 -0
  60. package/esm2022/lib/editor/components/image/resizer/size-delta.mjs +2 -0
  61. package/esm2022/lib/editor/components/image/resizer/size-wrapper.mjs +52 -0
  62. package/esm2022/lib/editor/components/image/size.mjs +2 -0
  63. package/esm2022/lib/editor/components/shared/abstract/base.component.mjs +59 -0
  64. package/esm2022/lib/editor/components/shared/abstract/destroy.component.mjs +18 -0
  65. package/esm2022/lib/editor/components/shared/custom-component.hepler.mjs +43 -0
  66. package/esm2022/lib/editor/components/shared/custom-components.interface.mjs +2 -0
  67. package/esm2022/lib/editor/components/shared/custom-content-markers.const.mjs +3 -0
  68. package/esm2022/lib/editor/components/shared/custom-content.mjs +2 -0
  69. package/esm2022/lib/editor/components/shared/services/component.service.mjs +64 -0
  70. package/esm2022/lib/editor/components/shared/services/custom-content.service.mjs +129 -0
  71. package/esm2022/lib/editor/components/shared/services/overlay.service.mjs +55 -0
  72. package/esm2022/lib/editor/components/tab/tab.component.mjs +44 -0
  73. package/esm2022/lib/editor/components/tab/tab.helper.mjs +6 -0
  74. package/esm2022/lib/editor/components/table/cell-resizer/cell-resizer.mjs +118 -0
  75. package/esm2022/lib/editor/components/table/components/table-cell.component.mjs +97 -0
  76. package/esm2022/lib/editor/components/table/components/table.component.mjs +410 -0
  77. package/esm2022/lib/{+shared/editor/core → editor/components/table}/enums/hrule.enum.mjs +1 -1
  78. package/esm2022/lib/editor/components/table/enums/reisizer-side.enum.mjs +8 -0
  79. package/esm2022/lib/editor/components/table/enums/vertical-merge.enum.mjs +6 -0
  80. package/esm2022/lib/editor/components/table/models/cell-data.model.mjs +17 -0
  81. package/esm2022/lib/editor/components/table/models/cell-resizer-parameters.model.mjs +9 -0
  82. package/esm2022/lib/editor/components/table/models/row-data.model.mjs +8 -0
  83. package/esm2022/lib/editor/components/table/models/selection-range.model.mjs +7 -0
  84. package/esm2022/lib/editor/components/table/overlay-menu/overlay-menu.component.mjs +74 -0
  85. package/esm2022/lib/editor/components/table/selection/table-selection.mjs +376 -0
  86. package/esm2022/lib/editor/content/constants/display-values.const.mjs +8 -0
  87. package/esm2022/lib/editor/content/constants/document-info.const.mjs +13 -0
  88. package/esm2022/lib/editor/content/constants/editor.const.mjs +70 -0
  89. package/esm2022/lib/editor/content/contents.interface.mjs +2 -0
  90. package/esm2022/lib/editor/content/display-data/display-data.mjs +839 -0
  91. package/esm2022/lib/editor/content/display-data/display-token.model.mjs +12 -0
  92. package/esm2022/lib/editor/content/display-data/format-ext.model.mjs +10 -0
  93. package/esm2022/lib/editor/content/display-data/general-properties.model.mjs +11 -0
  94. package/esm2022/lib/editor/content/display-data/indent.model.mjs +9 -0
  95. package/esm2022/lib/editor/content/display-data/line-info.model.mjs +9 -0
  96. package/esm2022/lib/editor/content/display-data/lines.mjs +96 -0
  97. package/esm2022/lib/editor/content/display-data/models/paragraph-info.model.mjs +8 -0
  98. package/esm2022/lib/editor/content/display-data/paragraph-info.interface.mjs +2 -0
  99. package/esm2022/lib/editor/content/display-data/paragraph.mjs +56 -0
  100. package/esm2022/lib/editor/content/display-data/text-line-info.mjs +35 -0
  101. package/esm2022/lib/editor/content/display-data/toolbar-styles.interface.mjs +2 -0
  102. package/esm2022/lib/editor/content/helpers/content-style.helper.mjs +78 -0
  103. package/esm2022/lib/editor/content/helpers/display-token.helper.mjs +62 -0
  104. package/esm2022/lib/{+shared/editor → editor/content}/helpers/format.helper.mjs +1 -1
  105. package/esm2022/lib/{+shared/editor → editor/content}/helpers/indexed-element.helper.mjs +1 -1
  106. package/esm2022/lib/editor/content/helpers/scaling.helper.mjs +9 -0
  107. package/esm2022/lib/editor/content/margin.model.mjs +16 -0
  108. package/esm2022/lib/editor/content/page-vertical-data.model.mjs +9 -0
  109. package/esm2022/lib/{+shared/editor/core/enums → editor/content}/vertical-alignment.enum.mjs +1 -1
  110. package/esm2022/lib/editor/core/event-emitting.mjs +56 -0
  111. package/esm2022/lib/editor/display/cell.interface.mjs +2 -0
  112. package/esm2022/lib/editor/display/event.helper.mjs +18 -0
  113. package/esm2022/lib/editor/display/layers/cursor.layer.mjs +102 -0
  114. package/esm2022/lib/editor/display/layers/layer.config.mjs +2 -0
  115. package/esm2022/lib/editor/display/layers/pages.layer.mjs +97 -0
  116. package/esm2022/lib/editor/display/layers/print.pages.layer.mjs +7 -0
  117. package/esm2022/lib/editor/display/layers/print.text.layer.mjs +7 -0
  118. package/esm2022/lib/editor/display/layers/selection.layer.mjs +119 -0
  119. package/esm2022/lib/editor/display/layers/text.layer.mjs +201 -0
  120. package/esm2022/lib/editor/display/print/print.helper.mjs +40 -0
  121. package/esm2022/lib/editor/display/print/print.renderer.mjs +67 -0
  122. package/esm2022/lib/editor/display/print/print.rendering.helper.mjs +7 -0
  123. package/esm2022/lib/editor/display/render-changes.interface.mjs +2 -0
  124. package/esm2022/lib/editor/display/render-changes.model.mjs +25 -0
  125. package/esm2022/lib/editor/display/renderer.mjs +206 -0
  126. package/esm2022/lib/editor/display/rendering.helper.mjs +185 -0
  127. package/esm2022/lib/editor/display/renderloop.mjs +26 -0
  128. package/esm2022/lib/editor/display/virtual.renderer.mjs +317 -0
  129. package/esm2022/lib/editor/display/visible-range.interface.mjs +2 -0
  130. package/esm2022/lib/editor/editor.module.mjs +67 -0
  131. package/esm2022/lib/editor/execution/distance.model.mjs +10 -0
  132. package/esm2022/lib/editor/execution/edit.session.mjs +561 -0
  133. package/esm2022/lib/editor/execution/editor.mjs +1387 -0
  134. package/esm2022/lib/editor/execution/helpers/dom.helper.mjs +42 -0
  135. package/esm2022/lib/editor/execution/helpers/format-style.helper.mjs +32 -0
  136. package/esm2022/lib/editor/execution/helpers/image.helpet.mjs +12 -0
  137. package/esm2022/lib/editor/execution/helpers/page.helper.mjs +12 -0
  138. package/esm2022/lib/editor/execution/helpers/paragraph-style.helper.mjs +41 -0
  139. package/esm2022/lib/editor/execution/helpers/paragraph.helper.mjs +177 -0
  140. package/esm2022/lib/editor/execution/regulator.service.mjs +206 -0
  141. package/esm2022/lib/editor/execution/targeting/cell-session-source.model.mjs +19 -0
  142. package/esm2022/lib/editor/execution/targeting/edge-session-source.model.mjs +15 -0
  143. package/esm2022/lib/editor/execution/targeting/main-session-source.model.mjs +8 -0
  144. package/esm2022/lib/editor/execution/targeting/session-source.model.mjs +3 -0
  145. package/esm2022/lib/editor/execution/targeting/session.model.mjs +10 -0
  146. package/esm2022/lib/editor/gadgets/font-metrics/editor-version.const.mjs +2 -0
  147. package/esm2022/lib/editor/gadgets/font-metrics/font-metric-size.interface.mjs +2 -0
  148. package/esm2022/lib/editor/gadgets/font-metrics/font-metrics.helper.mjs +88 -0
  149. package/esm2022/lib/editor/gadgets/history/operation-history.mjs +206 -0
  150. package/esm2022/lib/editor/gadgets/history/operation.type.mjs +2 -0
  151. package/esm2022/lib/editor/gadgets/history/operations-history-info.model.mjs +7 -0
  152. package/esm2022/lib/editor/gadgets/numbering/numbering-data.model.mjs +9 -0
  153. package/esm2022/lib/{+shared/editor/core/enums → editor/gadgets/numbering}/numbering-marker-type.enum.mjs +1 -1
  154. package/esm2022/lib/editor/gadgets/numbering/numbering-paragraph-style.model.mjs +13 -0
  155. package/esm2022/lib/editor/gadgets/numbering/numbering.helper.mjs +149 -0
  156. package/esm2022/lib/editor/gadgets/page-break/break-types.enum.mjs +7 -0
  157. package/esm2022/lib/editor/gadgets/page-break/break.helper.mjs +18 -0
  158. package/esm2022/lib/editor/gadgets/scrollbar.mjs +81 -0
  159. package/esm2022/lib/editor/gadgets/search/replace.interface.mjs +2 -0
  160. package/esm2022/lib/editor/gadgets/search/search-iteration.interface.mjs +2 -0
  161. package/esm2022/lib/editor/gadgets/search/search.mjs +231 -0
  162. package/esm2022/lib/editor/gadgets/unicode/unicode-chars.const.mjs +5 -0
  163. package/esm2022/lib/editor/gadgets/unicode/unicode.helper.mjs +20 -0
  164. package/esm2022/lib/editor/interaction/base.handler.mjs +19 -0
  165. package/esm2022/lib/editor/interaction/document.handler.mjs +27 -0
  166. package/esm2022/lib/editor/interaction/editor.service.mjs +346 -0
  167. package/esm2022/lib/editor/interaction/input.handler.mjs +152 -0
  168. package/esm2022/lib/{+shared/enums → editor/interaction}/mode.enum.mjs +1 -1
  169. package/esm2022/lib/editor/interaction/mouse-button.enum.mjs +7 -0
  170. package/esm2022/lib/editor/interaction/mouse.handler.mjs +50 -0
  171. package/esm2022/lib/editor/interaction/text-input.mjs +53 -0
  172. package/esm2022/lib/editor/operations/commands.service.mjs +20 -0
  173. package/esm2022/lib/editor/operations/enums/command-type.enum.mjs +32 -0
  174. package/esm2022/lib/editor/operations/enums/target-type.enum.mjs +7 -0
  175. package/esm2022/lib/editor/operations/helpers/break-operations.helper.mjs +9 -0
  176. package/esm2022/lib/editor/operations/helpers/content-operations.helper.mjs +15 -0
  177. package/esm2022/lib/editor/operations/helpers/format-operations.helper.mjs +85 -0
  178. package/esm2022/lib/editor/operations/helpers/image-operations.helper.mjs +19 -0
  179. package/esm2022/lib/editor/operations/helpers/indexed-element-operations.helper.mjs +43 -0
  180. package/esm2022/lib/editor/operations/helpers/link-operations.helper.mjs +63 -0
  181. package/esm2022/lib/editor/operations/helpers/numbering-operations.helper.mjs +55 -0
  182. package/esm2022/lib/editor/operations/helpers/paragraph-operations.helper.mjs +114 -0
  183. package/esm2022/lib/editor/operations/helpers/tab-operations.helper.mjs +16 -0
  184. package/esm2022/lib/editor/operations/helpers/table-operations.helper.mjs +374 -0
  185. package/esm2022/lib/editor/operations/operations-helper.helper.mjs +431 -0
  186. package/esm2022/lib/editor/operations/save-commands.helper.mjs +127 -0
  187. package/esm2022/lib/editor/operations/target-operations.helper.mjs +23 -0
  188. package/esm2022/lib/editor/positioning/alignments.const.mjs +8 -0
  189. package/esm2022/lib/editor/positioning/content.helper.mjs +36 -0
  190. package/esm2022/lib/editor/positioning/cursor-paragraph.mjs +13 -0
  191. package/esm2022/lib/editor/positioning/cursor-position.interface.mjs +2 -0
  192. package/esm2022/lib/editor/positioning/insert-index.interface.mjs +2 -0
  193. package/esm2022/lib/editor/positioning/line-width.helper.mjs +13 -0
  194. package/esm2022/lib/editor/positioning/position.helper.mjs +196 -0
  195. package/esm2022/lib/editor/positioning/range.mjs +94 -0
  196. package/esm2022/lib/editor/positioning/selection.mjs +317 -0
  197. package/esm2022/lib/editor/revision.helper.mjs +92 -0
  198. package/esm2022/lib/models/generated/cell.model.mjs +1 -1
  199. package/esm2022/lib/models/generated/command.model.mjs +5 -1
  200. package/esm2022/lib/models/generated/insert-paragraph.model.mjs +20 -0
  201. package/esm2022/lib/models/generated/replace.model.mjs +5 -1
  202. package/esm2022/public-api.mjs +37 -31
  203. package/fesm2022/talrace-ngx-noder.mjs +8169 -7285
  204. package/fesm2022/talrace-ngx-noder.mjs.map +1 -1
  205. package/lib/apart-components/add-link-dialog/add-link-dialog.component.d.ts +26 -0
  206. package/lib/apart-components/add-link-dialog/validation.helper.d.ts +5 -0
  207. package/lib/apart-components/add-link-mobile/add-link-mobile.component.d.ts +19 -0
  208. package/lib/{+shared → apart-components}/confirm-dialog/confirm-dialog.component.d.ts +2 -1
  209. package/lib/{+shared → apart-components}/editor-search/editor-search-dialog.component.d.ts +6 -7
  210. package/lib/apart-components/editor-title/editor-title.component.d.ts +25 -0
  211. package/lib/apart-components/editor-title-mobile/editor-title-mobile.component.d.ts +6 -0
  212. package/lib/apart-components/editor-toolbar/components/base-toolbar.component.d.ts +49 -0
  213. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/color-picker/color-picker.component.d.ts +1 -1
  214. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font/font.component.d.ts +2 -2
  215. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-size/font-size.component.d.ts +1 -1
  216. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-style/font-style.component.d.ts +1 -1
  217. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/format/format.component.d.ts +2 -2
  218. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/heading/heading.component.d.ts +1 -1
  219. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/numbering/numbering.component.d.ts +3 -3
  220. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/print/print.component.d.ts +1 -1
  221. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/undo-redo/undo-redo.component.d.ts +1 -1
  222. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/zoom/zoom.component.d.ts +1 -1
  223. package/lib/apart-components/editor-toolbar/components/menu-dropdowns/menu-dropdowns.component.d.ts +36 -0
  224. package/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/menu-dropdowns-mobile.component.d.ts +14 -0
  225. package/lib/apart-components/editor-toolbar/components/toolbar-actions/toolbar-actions.component.d.ts +23 -0
  226. package/lib/apart-components/editor-toolbar/editor-mobile-toolbar/editor-mobile-toolbar.component.d.ts +26 -0
  227. package/lib/apart-components/editor-toolbar/editor-toolbar/editor-toolbar.component.d.ts +40 -0
  228. package/lib/apart-components/editor-toolbar/editor-toolbar.module.d.ts +32 -0
  229. package/lib/apart-components/editor-toolbar/shared/constants/editor-toolbar-modes.const.d.ts +2 -0
  230. package/lib/apart-components/editor-toolbar/shared/constants/numbering-templates.const.d.ts +6 -0
  231. package/lib/apart-components/editor-toolbar/shared/enums/editor-toolbar-mode.enum.d.ts +9 -0
  232. package/lib/apart-components/editor-toolbar/shared/services/editor-toolbar.service.d.ts +14 -0
  233. package/lib/apart-components/editor-toolbar/shared/services/toolbar-core.service.d.ts +38 -0
  234. package/lib/apart-components/editor-toolbar/shared/toolbar-styles.helper.d.ts +4 -0
  235. package/lib/{+shared → apart-components}/insert-table/insert-table.component.d.ts +1 -1
  236. package/lib/apart-components/insert-table-mobile/insert-table-mobile.component.d.ts +30 -0
  237. package/lib/apart-components/text-format-mobile/text-format-mobile.component.d.ts +35 -0
  238. package/lib/{+shared/editor/core/models → editor/components/edges}/edge-element.model.d.ts +1 -1
  239. package/lib/editor/components/edges/edge.component.d.ts +44 -0
  240. package/lib/{+shared/editor/core → editor}/components/edges/edges.d.ts +7 -7
  241. package/lib/{+shared/editor → editor/components}/editor.component.d.ts +11 -11
  242. package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-sidenav.interface.d.ts +1 -1
  243. package/lib/{+shared/editor/custom-components → editor/components}/external-element/external.component.d.ts +4 -4
  244. package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/external-element.model.d.ts +2 -1
  245. package/lib/{+shared/editor/custom-components → editor/components}/image/components/image.component.d.ts +4 -4
  246. package/lib/editor/components/image/image-api.service.d.ts +17 -0
  247. package/lib/{+shared/editor/custom-components → editor/components}/image/input-handler/image-input.handler.d.ts +3 -0
  248. package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/resizer.component.d.ts +2 -2
  249. package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/size-wrapper.d.ts +1 -1
  250. package/lib/{+shared/editor/custom-components → editor/components}/shared/abstract/base.component.d.ts +6 -4
  251. package/lib/editor/components/shared/abstract/destroy.component.d.ts +9 -0
  252. package/lib/{+shared/editor/custom-components/shared/helpers → editor/components/shared}/custom-component.hepler.d.ts +3 -3
  253. package/lib/editor/components/shared/custom-components.interface.d.ts +13 -0
  254. package/lib/editor/components/shared/custom-content.d.ts +5 -0
  255. package/lib/{+shared/editor/custom-components/shared/services/component → editor/components/shared/services}/component.service.d.ts +1 -1
  256. package/lib/{+shared/editor/custom-components/shared/services/custom-content → editor/components/shared/services}/custom-content.service.d.ts +14 -13
  257. package/lib/{+shared/editor/custom-components → editor/components}/tab/tab.component.d.ts +2 -2
  258. package/lib/{+shared/editor/custom-components → editor/components}/table/cell-resizer/cell-resizer.d.ts +2 -1
  259. package/lib/editor/components/table/components/table-cell.component.d.ts +45 -0
  260. package/lib/{+shared/editor/custom-components → editor/components}/table/components/table.component.d.ts +27 -11
  261. package/lib/{+shared/editor/custom-components → editor/components}/table/models/cell-data.model.d.ts +1 -1
  262. package/lib/{+shared/editor/custom-components → editor/components}/table/overlay-menu/overlay-menu.component.d.ts +2 -2
  263. package/lib/{+shared/editor/custom-components → editor/components}/table/selection/table-selection.d.ts +5 -3
  264. package/lib/{+shared/editor/core → editor/content}/constants/editor.const.d.ts +5 -3
  265. package/lib/editor/content/contents.interface.d.ts +22 -0
  266. package/lib/editor/content/display-data/display-data.d.ts +103 -0
  267. package/lib/{+shared/editor/core/models → editor/content/display-data}/display-token.model.d.ts +1 -1
  268. package/lib/{+shared/editor/core/models → editor/content/display-data}/format-ext.model.d.ts +1 -1
  269. package/lib/editor/content/display-data/general-properties.model.d.ts +13 -0
  270. package/lib/{+shared/editor/core/models → editor/content/display-data}/line-info.model.d.ts +1 -0
  271. package/lib/{+shared/editor/core/layers → editor/content/display-data}/lines.d.ts +1 -1
  272. package/lib/editor/content/display-data/models/paragraph-info.model.d.ts +9 -0
  273. package/lib/{+shared/editor/core/paging → editor/content/display-data}/paragraph.d.ts +9 -5
  274. package/lib/{+shared/editor/core/paging → editor/content/display-data}/text-line-info.d.ts +5 -2
  275. package/lib/{+shared/editor/core/interfaces → editor/content/display-data}/toolbar-styles.interface.d.ts +1 -1
  276. package/lib/editor/content/helpers/content-style.helper.d.ts +10 -0
  277. package/lib/editor/content/helpers/display-token.helper.d.ts +6 -0
  278. package/lib/{+shared/editor → editor/content}/helpers/indexed-element.helper.d.ts +1 -1
  279. package/lib/editor/content/helpers/scaling.helper.d.ts +4 -0
  280. package/lib/{+shared/editor/core/paging → editor/content}/page-vertical-data.model.d.ts +1 -1
  281. package/lib/{+shared/editor/core/base → editor/core}/event-emitting.d.ts +0 -5
  282. package/lib/{+shared/editor/core → editor/display}/layers/cursor.layer.d.ts +7 -8
  283. package/lib/{+shared/editor/core/interfaces → editor/display/layers}/layer.config.d.ts +2 -2
  284. package/lib/{+shared/editor/core → editor/display}/layers/pages.layer.d.ts +5 -6
  285. package/lib/editor/display/layers/print.text.layer.d.ts +4 -0
  286. package/lib/{+shared/editor/core → editor/display}/layers/selection.layer.d.ts +5 -6
  287. package/lib/editor/display/layers/text.layer.d.ts +33 -0
  288. package/lib/{+shared/helpers → editor/display/print}/print.helper.d.ts +3 -3
  289. package/lib/editor/display/print/print.renderer.d.ts +21 -0
  290. package/lib/{+shared/editor/core/helpers → editor/display/print}/print.rendering.helper.d.ts +2 -2
  291. package/lib/{+shared/editor/core/models → editor/display}/render-changes.model.d.ts +1 -1
  292. package/lib/{+shared/editor/core → editor/display}/renderer.d.ts +10 -13
  293. package/lib/{+shared/editor/core/helpers → editor/display}/rendering.helper.d.ts +10 -10
  294. package/lib/{+shared/editor/core/layers → editor/display}/renderloop.d.ts +2 -2
  295. package/lib/{+shared/editor/core → editor/display}/virtual.renderer.d.ts +14 -29
  296. package/lib/editor/editor.module.d.ts +31 -0
  297. package/lib/editor/execution/edit.session.d.ts +113 -0
  298. package/lib/{+shared/editor/core → editor/execution}/editor.d.ts +55 -46
  299. package/lib/{+shared/editor/core → editor/execution}/helpers/format-style.helper.d.ts +1 -5
  300. package/lib/editor/execution/helpers/image.helpet.d.ts +4 -0
  301. package/lib/{+shared/editor/core → editor/execution}/helpers/page.helper.d.ts +1 -1
  302. package/lib/{+shared/editor/core → editor/execution}/helpers/paragraph-style.helper.d.ts +1 -1
  303. package/lib/{+shared/editor/core → editor/execution}/helpers/paragraph.helper.d.ts +14 -8
  304. package/lib/{+shared/editor → editor}/execution/regulator.service.d.ts +16 -15
  305. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/cell-session-source.model.d.ts +3 -3
  306. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/edge-session-source.model.d.ts +3 -3
  307. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/main-session-source.model.d.ts +1 -1
  308. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/session-source.model.d.ts +1 -1
  309. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/session.model.d.ts +3 -3
  310. package/lib/{+shared/editor/core/helpers → editor/gadgets/font-metrics}/font-metrics.helper.d.ts +1 -1
  311. package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operation-history.d.ts +9 -7
  312. package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operation.type.d.ts +2 -1
  313. package/lib/{+shared/editor/core/models → editor/gadgets/numbering}/numbering-data.model.d.ts +1 -1
  314. package/lib/editor/gadgets/numbering/numbering-paragraph-style.model.d.ts +6 -0
  315. package/lib/editor/gadgets/numbering/numbering.helper.d.ts +26 -0
  316. package/lib/{+shared/editor/helpers → editor/gadgets/page-break}/break.helper.d.ts +2 -2
  317. package/lib/{+shared/editor/core/layers → editor/gadgets}/scrollbar.d.ts +9 -18
  318. package/lib/{+shared/editor/core → editor/gadgets/search}/search.d.ts +4 -4
  319. package/lib/editor/interaction/base.handler.d.ts +9 -0
  320. package/lib/editor/interaction/document.handler.d.ts +10 -0
  321. package/lib/{+shared/editor → editor}/interaction/editor.service.d.ts +36 -21
  322. package/lib/{+shared/editor → editor}/interaction/input.handler.d.ts +4 -5
  323. package/lib/{+shared/editor → editor}/interaction/mouse.handler.d.ts +1 -1
  324. package/lib/{+shared/editor → editor}/operations/enums/command-type.enum.d.ts +11 -10
  325. package/lib/{+shared/editor → editor}/operations/helpers/break-operations.helper.d.ts +2 -2
  326. package/lib/{+shared/editor → editor}/operations/helpers/format-operations.helper.d.ts +2 -2
  327. package/lib/editor/operations/helpers/image-operations.helper.d.ts +7 -0
  328. package/lib/{+shared/editor → editor}/operations/helpers/indexed-element-operations.helper.d.ts +1 -1
  329. package/lib/editor/operations/helpers/link-operations.helper.d.ts +8 -0
  330. package/lib/{+shared/editor → editor}/operations/helpers/numbering-operations.helper.d.ts +3 -3
  331. package/lib/{+shared/editor → editor}/operations/helpers/paragraph-operations.helper.d.ts +3 -2
  332. package/lib/{+shared/editor → editor}/operations/helpers/tab-operations.helper.d.ts +1 -1
  333. package/lib/{+shared/editor → editor}/operations/helpers/table-operations.helper.d.ts +6 -6
  334. package/lib/{+shared/editor/operations/helpers → editor/operations}/operations-helper.helper.d.ts +21 -19
  335. package/lib/{+shared/editor/operations/helpers → editor/operations}/save-commands.helper.d.ts +28 -22
  336. package/lib/editor/operations/target-operations.helper.d.ts +6 -0
  337. package/lib/editor/positioning/content.helper.d.ts +15 -0
  338. package/lib/editor/positioning/cursor-paragraph.d.ts +7 -0
  339. package/lib/{+shared/editor/core/interfaces → editor/positioning}/cursor-position.interface.d.ts +1 -1
  340. package/lib/{+shared/editor/core/helpers → editor/positioning}/line-width.helper.d.ts +2 -2
  341. package/lib/{+shared/editor/core/helpers → editor/positioning}/position.helper.d.ts +11 -11
  342. package/lib/{+shared/editor/core → editor/positioning}/range.d.ts +12 -12
  343. package/lib/{+shared/editor → editor}/positioning/selection.d.ts +13 -10
  344. package/lib/editor/revision.helper.d.ts +15 -0
  345. package/lib/models/generated/cell.model.d.ts +1 -0
  346. package/lib/models/generated/command.model.d.ts +2 -0
  347. package/lib/models/generated/insert-paragraph.model.d.ts +10 -0
  348. package/lib/models/generated/replace.model.d.ts +2 -0
  349. package/package.json +1 -1
  350. package/public-api.d.ts +36 -30
  351. package/src/_ngx-noder.theme.scss +49 -13
  352. package/src/assets/fonts/nc-iconfont.css +112 -106
  353. package/src/assets/fonts/nc-iconfont.eot +0 -0
  354. package/src/assets/fonts/nc-iconfont.svg +4 -1
  355. package/src/assets/fonts/nc-iconfont.ttf +0 -0
  356. package/src/assets/fonts/nc-iconfont.woff +0 -0
  357. package/src/lib/{+shared → apart-components}/add-link-dialog/_add-link-dialog.theme.scss +4 -4
  358. package/src/lib/apart-components/add-link-mobile/_add-link-mobile.theme.scss +25 -0
  359. package/src/lib/apart-components/confirm-dialog/_theme.scss +30 -0
  360. package/src/lib/apart-components/editor-title/_editor-title.theme.scss +28 -0
  361. package/src/lib/apart-components/editor-title-mobile/_editor-title-mobile.theme.scss +42 -0
  362. package/src/lib/apart-components/editor-toolbar/_editor-toolbar.theme.scss +27 -0
  363. package/src/lib/apart-components/editor-toolbar/_theme.scss +25 -0
  364. package/src/lib/apart-components/editor-toolbar/components/buttons/color-picker/_color-picker.theme.scss +12 -0
  365. package/src/lib/apart-components/editor-toolbar/components/buttons/font/_font.theme.scss +12 -0
  366. package/src/lib/apart-components/editor-toolbar/components/buttons/font-size/_font-size.theme.scss +14 -0
  367. package/src/lib/apart-components/editor-toolbar/components/buttons/font-style/_font-style.theme.scss +21 -0
  368. package/src/lib/apart-components/editor-toolbar/components/buttons/format/_format.theme.scss +21 -0
  369. package/src/lib/apart-components/editor-toolbar/components/buttons/numbering/_numbering.theme.scss +70 -0
  370. package/src/lib/apart-components/editor-toolbar/components/buttons/undo-redo/_undo-redo.theme.scss +16 -0
  371. package/src/lib/apart-components/editor-toolbar/components/menu-dropdowns/_menu-dropdowns.theme.scss +26 -0
  372. package/src/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/_menu-dropdowns-mobile.theme.scss +33 -0
  373. package/src/lib/apart-components/editor-toolbar/components/toolbar-actions/_toolbar-actions.theme.scss +22 -0
  374. package/src/lib/{+shared → apart-components}/insert-table/_insert-table.theme.scss +10 -7
  375. package/src/lib/apart-components/insert-table-mobile/_insert-table-mobile.theme.scss +54 -0
  376. package/src/lib/apart-components/text-format-mobile/_text-format-mobile.theme.scss +86 -0
  377. package/src/lib/editor/_theme.scss +5 -0
  378. package/src/lib/editor/components/_editor.theme.scss +112 -0
  379. package/src/scss/_fonts.scss +3 -0
  380. package/src/scss/base-editor.scss +329 -0
  381. package/src/styles.scss +3 -58
  382. package/esm2022/lib/+shared/abstract/base-api.service.mjs +0 -99
  383. package/esm2022/lib/+shared/abstract/observer.component.mjs +0 -24
  384. package/esm2022/lib/+shared/confirm-dialog/confirm-dialog.component.mjs +0 -28
  385. package/esm2022/lib/+shared/constants/default-file-name.const.mjs +0 -2
  386. package/esm2022/lib/+shared/constants/paginator-sizes.const.mjs +0 -3
  387. package/esm2022/lib/+shared/editor/core/base/event-emitting.mjs +0 -71
  388. package/esm2022/lib/+shared/editor/core/components/edges/edge-type.enum.mjs +0 -6
  389. package/esm2022/lib/+shared/editor/core/components/edges/edge.component.mjs +0 -100
  390. package/esm2022/lib/+shared/editor/core/components/edges/edges.mjs +0 -104
  391. package/esm2022/lib/+shared/editor/core/constants/alignments.const.mjs +0 -8
  392. package/esm2022/lib/+shared/editor/core/constants/clipboardEventTypes.const.mjs +0 -6
  393. package/esm2022/lib/+shared/editor/core/constants/content-style-change.const.mjs +0 -15
  394. package/esm2022/lib/+shared/editor/core/constants/display-values.const.mjs +0 -8
  395. package/esm2022/lib/+shared/editor/core/constants/document-info.const.mjs +0 -13
  396. package/esm2022/lib/+shared/editor/core/constants/editor-version.const.mjs +0 -2
  397. package/esm2022/lib/+shared/editor/core/constants/editor.const.mjs +0 -62
  398. package/esm2022/lib/+shared/editor/core/constants/unicode-chars.const.mjs +0 -5
  399. package/esm2022/lib/+shared/editor/core/document.mjs +0 -134
  400. package/esm2022/lib/+shared/editor/core/edit.session.mjs +0 -1102
  401. package/esm2022/lib/+shared/editor/core/editor.mjs +0 -1279
  402. package/esm2022/lib/+shared/editor/core/enums/break-types.enum.mjs +0 -7
  403. package/esm2022/lib/+shared/editor/core/enums/mouse-button.enum.mjs +0 -7
  404. package/esm2022/lib/+shared/editor/core/enums/page-type.enum.mjs +0 -7
  405. package/esm2022/lib/+shared/editor/core/helpers/content-style.helper.mjs +0 -156
  406. package/esm2022/lib/+shared/editor/core/helpers/delta.helper.mjs +0 -18
  407. package/esm2022/lib/+shared/editor/core/helpers/dom.helper.mjs +0 -42
  408. package/esm2022/lib/+shared/editor/core/helpers/event.helper.mjs +0 -18
  409. package/esm2022/lib/+shared/editor/core/helpers/font-metrics.helper.mjs +0 -88
  410. package/esm2022/lib/+shared/editor/core/helpers/format-style.helper.mjs +0 -72
  411. package/esm2022/lib/+shared/editor/core/helpers/line-width.helper.mjs +0 -13
  412. package/esm2022/lib/+shared/editor/core/helpers/numbering.helper.mjs +0 -83
  413. package/esm2022/lib/+shared/editor/core/helpers/page.helper.mjs +0 -12
  414. package/esm2022/lib/+shared/editor/core/helpers/paragraph-style.helper.mjs +0 -41
  415. package/esm2022/lib/+shared/editor/core/helpers/paragraph.helper.mjs +0 -132
  416. package/esm2022/lib/+shared/editor/core/helpers/position.helper.mjs +0 -191
  417. package/esm2022/lib/+shared/editor/core/helpers/print.rendering.helper.mjs +0 -7
  418. package/esm2022/lib/+shared/editor/core/helpers/rendering.helper.mjs +0 -186
  419. package/esm2022/lib/+shared/editor/core/helpers/unicode.helper.mjs +0 -20
  420. package/esm2022/lib/+shared/editor/core/interfaces/cell.interface.mjs +0 -2
  421. package/esm2022/lib/+shared/editor/core/interfaces/cursor-position.interface.mjs +0 -2
  422. package/esm2022/lib/+shared/editor/core/interfaces/font-metric-size.interface.mjs +0 -2
  423. package/esm2022/lib/+shared/editor/core/interfaces/layer.config.mjs +0 -2
  424. package/esm2022/lib/+shared/editor/core/interfaces/paragraph-info.interface.mjs +0 -2
  425. package/esm2022/lib/+shared/editor/core/interfaces/render-changes.interface.mjs +0 -2
  426. package/esm2022/lib/+shared/editor/core/interfaces/replace.interface.mjs +0 -2
  427. package/esm2022/lib/+shared/editor/core/interfaces/search-iteration.interface.mjs +0 -2
  428. package/esm2022/lib/+shared/editor/core/interfaces/toolbar-styles.interface.mjs +0 -2
  429. package/esm2022/lib/+shared/editor/core/interfaces/visible-line-info.interface.mjs +0 -2
  430. package/esm2022/lib/+shared/editor/core/interfaces/visible-range.interface.mjs +0 -2
  431. package/esm2022/lib/+shared/editor/core/keyboard/text-input.mjs +0 -53
  432. package/esm2022/lib/+shared/editor/core/layers/cursor.layer.mjs +0 -103
  433. package/esm2022/lib/+shared/editor/core/layers/edges.layer.mjs +0 -99
  434. package/esm2022/lib/+shared/editor/core/layers/lines.mjs +0 -96
  435. package/esm2022/lib/+shared/editor/core/layers/pages.layer.mjs +0 -106
  436. package/esm2022/lib/+shared/editor/core/layers/print.edges.layer.mjs +0 -7
  437. package/esm2022/lib/+shared/editor/core/layers/print.pages.layer.mjs +0 -7
  438. package/esm2022/lib/+shared/editor/core/layers/print.text.layer.mjs +0 -7
  439. package/esm2022/lib/+shared/editor/core/layers/renderloop.mjs +0 -26
  440. package/esm2022/lib/+shared/editor/core/layers/scrollbar.mjs +0 -100
  441. package/esm2022/lib/+shared/editor/core/layers/selection.layer.mjs +0 -115
  442. package/esm2022/lib/+shared/editor/core/layers/text.layer.mjs +0 -124
  443. package/esm2022/lib/+shared/editor/core/models/display-token.model.mjs +0 -12
  444. package/esm2022/lib/+shared/editor/core/models/distance.model.mjs +0 -10
  445. package/esm2022/lib/+shared/editor/core/models/edge-element.model.mjs +0 -9
  446. package/esm2022/lib/+shared/editor/core/models/format-ext.model.mjs +0 -10
  447. package/esm2022/lib/+shared/editor/core/models/indent.model.mjs +0 -9
  448. package/esm2022/lib/+shared/editor/core/models/line-info.model.mjs +0 -9
  449. package/esm2022/lib/+shared/editor/core/models/margin.model.mjs +0 -16
  450. package/esm2022/lib/+shared/editor/core/models/numbering-data.model.mjs +0 -9
  451. package/esm2022/lib/+shared/editor/core/models/render-changes.model.mjs +0 -25
  452. package/esm2022/lib/+shared/editor/core/paging/page-vertical-data.model.mjs +0 -9
  453. package/esm2022/lib/+shared/editor/core/paging/pages.wrap.mjs +0 -219
  454. package/esm2022/lib/+shared/editor/core/paging/paragraph.mjs +0 -52
  455. package/esm2022/lib/+shared/editor/core/paging/text-line-info.mjs +0 -34
  456. package/esm2022/lib/+shared/editor/core/point.mjs +0 -13
  457. package/esm2022/lib/+shared/editor/core/print.renderer.mjs +0 -72
  458. package/esm2022/lib/+shared/editor/core/range.mjs +0 -94
  459. package/esm2022/lib/+shared/editor/core/renderer.mjs +0 -217
  460. package/esm2022/lib/+shared/editor/core/search.mjs +0 -231
  461. package/esm2022/lib/+shared/editor/core/virtual.renderer.mjs +0 -356
  462. package/esm2022/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.mjs +0 -35
  463. package/esm2022/lib/+shared/editor/custom-components/external-element/external-element.service.mjs +0 -6
  464. package/esm2022/lib/+shared/editor/custom-components/external-element/external-elements.const.mjs +0 -4
  465. package/esm2022/lib/+shared/editor/custom-components/external-element/external-sidenav.interface.mjs +0 -2
  466. package/esm2022/lib/+shared/editor/custom-components/external-element/external.component.mjs +0 -41
  467. package/esm2022/lib/+shared/editor/custom-components/external-element/models/element-data.model.mjs +0 -9
  468. package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-element.model.mjs +0 -10
  469. package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-sidenav.model.mjs +0 -15
  470. package/esm2022/lib/+shared/editor/custom-components/image/components/image.component.mjs +0 -87
  471. package/esm2022/lib/+shared/editor/custom-components/image/input-handler/image-input.handler.mjs +0 -38
  472. package/esm2022/lib/+shared/editor/custom-components/image/interfaces/size.mjs +0 -2
  473. package/esm2022/lib/+shared/editor/custom-components/image/resizer/coordinate.mjs +0 -2
  474. package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction-wrapper.mjs +0 -19
  475. package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction.enum.mjs +0 -12
  476. package/esm2022/lib/+shared/editor/custom-components/image/resizer/resizer.component.mjs +0 -106
  477. package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-delta.mjs +0 -2
  478. package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-wrapper.mjs +0 -52
  479. package/esm2022/lib/+shared/editor/custom-components/image/services/image-api.service.mjs +0 -14
  480. package/esm2022/lib/+shared/editor/custom-components/shared/abstract/base.component.mjs +0 -57
  481. package/esm2022/lib/+shared/editor/custom-components/shared/constants/custom-content-markers.const.mjs +0 -3
  482. package/esm2022/lib/+shared/editor/custom-components/shared/helpers/custom-component.hepler.mjs +0 -43
  483. package/esm2022/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.mjs +0 -2
  484. package/esm2022/lib/+shared/editor/custom-components/shared/services/component/component.service.mjs +0 -64
  485. package/esm2022/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.mjs +0 -120
  486. package/esm2022/lib/+shared/editor/custom-components/shared/services/overlay/overlay.service.mjs +0 -55
  487. package/esm2022/lib/+shared/editor/custom-components/shared/types/custom-content.mjs +0 -2
  488. package/esm2022/lib/+shared/editor/custom-components/tab/tab.component.mjs +0 -43
  489. package/esm2022/lib/+shared/editor/custom-components/table/cell-resizer/cell-resizer.mjs +0 -118
  490. package/esm2022/lib/+shared/editor/custom-components/table/components/table-cell.component.mjs +0 -95
  491. package/esm2022/lib/+shared/editor/custom-components/table/components/table.component.mjs +0 -293
  492. package/esm2022/lib/+shared/editor/custom-components/table/enums/reisizer-side.enum.mjs +0 -8
  493. package/esm2022/lib/+shared/editor/custom-components/table/enums/vertical-merge.enum.mjs +0 -6
  494. package/esm2022/lib/+shared/editor/custom-components/table/models/cell-data.model.mjs +0 -18
  495. package/esm2022/lib/+shared/editor/custom-components/table/models/cell-resizer-parameters.model.mjs +0 -9
  496. package/esm2022/lib/+shared/editor/custom-components/table/models/row-data.model.mjs +0 -8
  497. package/esm2022/lib/+shared/editor/custom-components/table/models/selection-range.model.mjs +0 -7
  498. package/esm2022/lib/+shared/editor/custom-components/table/overlay-menu/overlay-menu.component.mjs +0 -74
  499. package/esm2022/lib/+shared/editor/custom-components/table/selection/table-selection.mjs +0 -358
  500. package/esm2022/lib/+shared/editor/editor.component.mjs +0 -103
  501. package/esm2022/lib/+shared/editor/editor.module.mjs +0 -85
  502. package/esm2022/lib/+shared/editor/execution/models/cell-session-source.model.mjs +0 -19
  503. package/esm2022/lib/+shared/editor/execution/models/edge-session-source.model.mjs +0 -15
  504. package/esm2022/lib/+shared/editor/execution/models/general-properties.model.mjs +0 -11
  505. package/esm2022/lib/+shared/editor/execution/models/main-session-source.model.mjs +0 -8
  506. package/esm2022/lib/+shared/editor/execution/models/session-source.model.mjs +0 -3
  507. package/esm2022/lib/+shared/editor/execution/models/session.model.mjs +0 -10
  508. package/esm2022/lib/+shared/editor/execution/regulator.service.mjs +0 -193
  509. package/esm2022/lib/+shared/editor/helpers/break.helper.mjs +0 -18
  510. package/esm2022/lib/+shared/editor/helpers/content.helper.mjs +0 -30
  511. package/esm2022/lib/+shared/editor/helpers/tab.helper.mjs +0 -6
  512. package/esm2022/lib/+shared/editor/interaction/editor.service.mjs +0 -309
  513. package/esm2022/lib/+shared/editor/interaction/input.handler.mjs +0 -160
  514. package/esm2022/lib/+shared/editor/interaction/mouse.handler.mjs +0 -49
  515. package/esm2022/lib/+shared/editor/interfaces/contents.interface.mjs +0 -2
  516. package/esm2022/lib/+shared/editor/interfaces/insert-index.interface.mjs +0 -2
  517. package/esm2022/lib/+shared/editor/operation-history/operation-history.mjs +0 -184
  518. package/esm2022/lib/+shared/editor/operation-history/operation.type.mjs +0 -2
  519. package/esm2022/lib/+shared/editor/operation-history/operations-history-info.model.mjs +0 -7
  520. package/esm2022/lib/+shared/editor/operations/enums/command-type.enum.mjs +0 -31
  521. package/esm2022/lib/+shared/editor/operations/enums/target-type.enum.mjs +0 -7
  522. package/esm2022/lib/+shared/editor/operations/helpers/break-operations.helper.mjs +0 -9
  523. package/esm2022/lib/+shared/editor/operations/helpers/content-operations.helper.mjs +0 -15
  524. package/esm2022/lib/+shared/editor/operations/helpers/format-operations.helper.mjs +0 -56
  525. package/esm2022/lib/+shared/editor/operations/helpers/image-operations.helper.mjs +0 -19
  526. package/esm2022/lib/+shared/editor/operations/helpers/indexed-element-operations.helper.mjs +0 -43
  527. package/esm2022/lib/+shared/editor/operations/helpers/link-operations.helper.mjs +0 -28
  528. package/esm2022/lib/+shared/editor/operations/helpers/numbering-operations.helper.mjs +0 -55
  529. package/esm2022/lib/+shared/editor/operations/helpers/operations-helper.helper.mjs +0 -394
  530. package/esm2022/lib/+shared/editor/operations/helpers/paragraph-operations.helper.mjs +0 -83
  531. package/esm2022/lib/+shared/editor/operations/helpers/save-commands.helper.mjs +0 -118
  532. package/esm2022/lib/+shared/editor/operations/helpers/tab-operations.helper.mjs +0 -16
  533. package/esm2022/lib/+shared/editor/operations/helpers/table-operations.helper.mjs +0 -371
  534. package/esm2022/lib/+shared/editor/operations/helpers/target-operations.helper.mjs +0 -23
  535. package/esm2022/lib/+shared/editor/positioning/selection.mjs +0 -307
  536. package/esm2022/lib/+shared/editor/store/editor.actions.mjs +0 -13
  537. package/esm2022/lib/+shared/editor-header/editor-header.component.mjs +0 -314
  538. package/esm2022/lib/+shared/editor-search/editor-search-dialog.component.mjs +0 -71
  539. package/esm2022/lib/+shared/editor-toolbar/color-picker/color-picker.component.mjs +0 -32
  540. package/esm2022/lib/+shared/editor-toolbar/constants/svg-icons.const.mjs +0 -157
  541. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.component.mjs +0 -115
  542. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.module.mjs +0 -107
  543. package/esm2022/lib/+shared/editor-toolbar/enums/alignment.enum.mjs +0 -8
  544. package/esm2022/lib/+shared/editor-toolbar/enums/numbering-type.enum.mjs +0 -6
  545. package/esm2022/lib/+shared/editor-toolbar/font/font.component.mjs +0 -45
  546. package/esm2022/lib/+shared/editor-toolbar/font-size/font-size.component.mjs +0 -85
  547. package/esm2022/lib/+shared/editor-toolbar/font-style/font-style.component.mjs +0 -80
  548. package/esm2022/lib/+shared/editor-toolbar/format/format.component.mjs +0 -28
  549. package/esm2022/lib/+shared/editor-toolbar/heading/heading.component.mjs +0 -23
  550. package/esm2022/lib/+shared/editor-toolbar/helpers/toolbar-styles.helper.mjs +0 -55
  551. package/esm2022/lib/+shared/editor-toolbar/numbering/numbering.component.mjs +0 -53
  552. package/esm2022/lib/+shared/editor-toolbar/print/print.component.mjs +0 -18
  553. package/esm2022/lib/+shared/editor-toolbar/undo-redo/undo-redo.component.mjs +0 -27
  554. package/esm2022/lib/+shared/editor-toolbar/zoom/zoom.component.mjs +0 -74
  555. package/esm2022/lib/+shared/helpers/print.helper.mjs +0 -40
  556. package/esm2022/lib/+shared/insert-table/insert-table.component.mjs +0 -54
  557. package/esm2022/lib/+shared/services/commands.service.mjs +0 -20
  558. package/esm2022/lib/+shared/services/custom-icon.service.mjs +0 -34
  559. package/lib/+shared/abstract/base-api.service.d.ts +0 -23
  560. package/lib/+shared/abstract/observer.component.d.ts +0 -10
  561. package/lib/+shared/constants/default-file-name.const.d.ts +0 -1
  562. package/lib/+shared/constants/paginator-sizes.const.d.ts +0 -2
  563. package/lib/+shared/editor/core/components/edges/edge.component.d.ts +0 -45
  564. package/lib/+shared/editor/core/constants/clipboardEventTypes.const.d.ts +0 -5
  565. package/lib/+shared/editor/core/constants/content-style-change.const.d.ts +0 -14
  566. package/lib/+shared/editor/core/document.d.ts +0 -56
  567. package/lib/+shared/editor/core/edit.session.d.ts +0 -159
  568. package/lib/+shared/editor/core/helpers/content-style.helper.d.ts +0 -16
  569. package/lib/+shared/editor/core/helpers/delta.helper.d.ts +0 -6
  570. package/lib/+shared/editor/core/helpers/numbering.helper.d.ts +0 -19
  571. package/lib/+shared/editor/core/interfaces/visible-line-info.interface.d.ts +0 -5
  572. package/lib/+shared/editor/core/layers/edges.layer.d.ts +0 -24
  573. package/lib/+shared/editor/core/layers/print.edges.layer.d.ts +0 -4
  574. package/lib/+shared/editor/core/layers/print.text.layer.d.ts +0 -5
  575. package/lib/+shared/editor/core/layers/text.layer.d.ts +0 -22
  576. package/lib/+shared/editor/core/paging/pages.wrap.d.ts +0 -41
  577. package/lib/+shared/editor/core/point.d.ts +0 -7
  578. package/lib/+shared/editor/core/print.renderer.d.ts +0 -25
  579. package/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.d.ts +0 -14
  580. package/lib/+shared/editor/custom-components/image/services/image-api.service.d.ts +0 -8
  581. package/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.d.ts +0 -13
  582. package/lib/+shared/editor/custom-components/shared/types/custom-content.d.ts +0 -5
  583. package/lib/+shared/editor/custom-components/table/components/table-cell.component.d.ts +0 -45
  584. package/lib/+shared/editor/editor.module.d.ts +0 -30
  585. package/lib/+shared/editor/execution/models/general-properties.model.d.ts +0 -7
  586. package/lib/+shared/editor/helpers/content.helper.d.ts +0 -9
  587. package/lib/+shared/editor/interfaces/contents.interface.d.ts +0 -22
  588. package/lib/+shared/editor/operations/helpers/image-operations.helper.d.ts +0 -7
  589. package/lib/+shared/editor/operations/helpers/link-operations.helper.d.ts +0 -6
  590. package/lib/+shared/editor/operations/helpers/target-operations.helper.d.ts +0 -6
  591. package/lib/+shared/editor/store/editor.actions.d.ts +0 -11
  592. package/lib/+shared/editor-header/editor-header.component.d.ts +0 -101
  593. package/lib/+shared/editor-toolbar/constants/numbering-templates.const.d.ts +0 -6
  594. package/lib/+shared/editor-toolbar/editor-toolbar.component.d.ts +0 -44
  595. package/lib/+shared/editor-toolbar/editor-toolbar.module.d.ts +0 -28
  596. package/lib/+shared/editor-toolbar/helpers/toolbar-styles.helper.d.ts +0 -6
  597. package/src/lib/+shared/editor/_editor.theme.scss +0 -35
  598. package/src/lib/+shared/editor/custom-components/external-element/element-toolbar/_element-toolbar.theme.scss +0 -10
  599. package/src/lib/+shared/editor-header/_editor-header.theme.scss +0 -106
  600. package/src/lib/+shared/editor-toolbar/_editor-toolbar.theme.scss +0 -33
  601. package/src/lib/+shared/editor-toolbar/numbering/_numbering.theme.scss +0 -29
  602. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/constants/svg-icons.const.d.ts +0 -0
  603. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/alignment.enum.d.ts +0 -0
  604. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-template-type.enum.d.ts +0 -0
  605. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-type.enum.d.ts +0 -0
  606. /package/lib/{+shared → apart-components/editor-toolbar/shared}/services/custom-icon.service.d.ts +0 -0
  607. /package/lib/{+shared/editor/core → editor}/components/edges/edge-type.enum.d.ts +0 -0
  608. /package/lib/{+shared/editor/core/enums → editor/components/edges}/page-type.enum.d.ts +0 -0
  609. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-element.service.d.ts +0 -0
  610. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-elements.const.d.ts +0 -0
  611. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/element-data.model.d.ts +0 -0
  612. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/external-sidenav.model.d.ts +0 -0
  613. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/coordinate.d.ts +0 -0
  614. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/direction-wrapper.d.ts +0 -0
  615. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/direction.enum.d.ts +0 -0
  616. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/size-delta.d.ts +0 -0
  617. /package/lib/{+shared/editor/custom-components/image/interfaces → editor/components/image}/size.d.ts +0 -0
  618. /package/lib/{+shared/editor/custom-components/shared/constants → editor/components/shared}/custom-content-markers.const.d.ts +0 -0
  619. /package/lib/{+shared/editor/custom-components/shared/services/overlay → editor/components/shared/services}/overlay.service.d.ts +0 -0
  620. /package/lib/{+shared/editor/helpers → editor/components/tab}/tab.helper.d.ts +0 -0
  621. /package/lib/{+shared/editor/core → editor/components/table}/enums/hrule.enum.d.ts +0 -0
  622. /package/lib/{+shared/editor/custom-components → editor/components}/table/enums/reisizer-side.enum.d.ts +0 -0
  623. /package/lib/{+shared/editor/custom-components → editor/components}/table/enums/vertical-merge.enum.d.ts +0 -0
  624. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/cell-resizer-parameters.model.d.ts +0 -0
  625. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/row-data.model.d.ts +0 -0
  626. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/selection-range.model.d.ts +0 -0
  627. /package/lib/{+shared/editor/core → editor/content}/constants/display-values.const.d.ts +0 -0
  628. /package/lib/{+shared/editor/core → editor/content}/constants/document-info.const.d.ts +0 -0
  629. /package/lib/{+shared/editor/core/models → editor/content/display-data}/indent.model.d.ts +0 -0
  630. /package/lib/{+shared/editor/core/interfaces → editor/content/display-data}/paragraph-info.interface.d.ts +0 -0
  631. /package/lib/{+shared/editor → editor/content}/helpers/format.helper.d.ts +0 -0
  632. /package/lib/{+shared/editor/core/models → editor/content}/margin.model.d.ts +0 -0
  633. /package/lib/{+shared/editor/core/enums → editor/content}/vertical-alignment.enum.d.ts +0 -0
  634. /package/lib/{+shared/editor/core/interfaces → editor/display}/cell.interface.d.ts +0 -0
  635. /package/lib/{+shared/editor/core/helpers → editor/display}/event.helper.d.ts +0 -0
  636. /package/lib/{+shared/editor/core → editor/display}/layers/print.pages.layer.d.ts +0 -0
  637. /package/lib/{+shared/editor/core/interfaces → editor/display}/render-changes.interface.d.ts +0 -0
  638. /package/lib/{+shared/editor/core/interfaces → editor/display}/visible-range.interface.d.ts +0 -0
  639. /package/lib/{+shared/editor/core/models → editor/execution}/distance.model.d.ts +0 -0
  640. /package/lib/{+shared/editor/core → editor/execution}/helpers/dom.helper.d.ts +0 -0
  641. /package/lib/{+shared/editor/core/constants → editor/gadgets/font-metrics}/editor-version.const.d.ts +0 -0
  642. /package/lib/{+shared/editor/core/interfaces → editor/gadgets/font-metrics}/font-metric-size.interface.d.ts +0 -0
  643. /package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operations-history-info.model.d.ts +0 -0
  644. /package/lib/{+shared/editor/core/enums → editor/gadgets/numbering}/numbering-marker-type.enum.d.ts +0 -0
  645. /package/lib/{+shared/editor/core/enums → editor/gadgets/page-break}/break-types.enum.d.ts +0 -0
  646. /package/lib/{+shared/editor/core/interfaces → editor/gadgets/search}/replace.interface.d.ts +0 -0
  647. /package/lib/{+shared/editor/core/interfaces → editor/gadgets/search}/search-iteration.interface.d.ts +0 -0
  648. /package/lib/{+shared/editor/core/constants → editor/gadgets/unicode}/unicode-chars.const.d.ts +0 -0
  649. /package/lib/{+shared/editor/core/helpers → editor/gadgets/unicode}/unicode.helper.d.ts +0 -0
  650. /package/lib/{+shared/enums → editor/interaction}/mode.enum.d.ts +0 -0
  651. /package/lib/{+shared/editor/core/enums → editor/interaction}/mouse-button.enum.d.ts +0 -0
  652. /package/lib/{+shared/editor/core/keyboard → editor/interaction}/text-input.d.ts +0 -0
  653. /package/lib/{+shared/services → editor/operations}/commands.service.d.ts +0 -0
  654. /package/lib/{+shared/editor → editor}/operations/enums/target-type.enum.d.ts +0 -0
  655. /package/lib/{+shared/editor → editor}/operations/helpers/content-operations.helper.d.ts +0 -0
  656. /package/lib/{+shared/editor/core/constants → editor/positioning}/alignments.const.d.ts +0 -0
  657. /package/lib/{+shared/editor/interfaces → editor/positioning}/insert-index.interface.d.ts +0 -0
@@ -0,0 +1,88 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { BaseNoderComponent } from '../../shared/abstract/base.component';
3
+ import { ImageInputHandler } from '../../../components/image/input-handler/image-input.handler';
4
+ import { ScalingHelper } from '../../../content/helpers/scaling.helper';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../components/image/image-api.service";
7
+ import * as i2 from "../../../interaction/editor.service";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "../resizer/resizer.component";
10
+ export class NoderImageComponent extends BaseNoderComponent {
11
+ get isViewOnly$() {
12
+ return this.editorService.isViewOnly$;
13
+ }
14
+ get image() {
15
+ return this.content;
16
+ }
17
+ set image(val) {
18
+ this.content = val;
19
+ }
20
+ get size() {
21
+ return { width: this._width, height: this._height };
22
+ }
23
+ constructor(elementRef, apiService, editorService) {
24
+ super();
25
+ this.elementRef = elementRef;
26
+ this.apiService = apiService;
27
+ this.editorService = editorService;
28
+ this.isCanvas = false;
29
+ }
30
+ initialize() {
31
+ const url = this.image.content?.replace('/api/', '') ?? '';
32
+ this._height = ScalingHelper.scale(this.image.height, this.generalProperties.scalingRatio);
33
+ this._width = ScalingHelper.scale(this.image.width, this.generalProperties.scalingRatio);
34
+ this.apiService.getFile(url).subscribe(x => {
35
+ const fileSource = URL.createObjectURL(x);
36
+ const image = this.createImage(fileSource);
37
+ this.elementRef.nativeElement.appendChild(image);
38
+ this.editorService.rendererUpdated(this.sessionId);
39
+ });
40
+ }
41
+ onResizeEnd(size) {
42
+ this.resize(size);
43
+ const resizedImage = { ...this.image, width: size.width, height: size.height };
44
+ this.editorService.changeImageStyle(resizedImage);
45
+ }
46
+ resize(size) {
47
+ this._width = size.width;
48
+ this._height = size.height;
49
+ this.isCanvas ? this.resizeCanvas(size) : this.resizeImage(size);
50
+ this.cdr.markForCheck();
51
+ }
52
+ focus() {
53
+ this.inputHandler = new ImageInputHandler(this.editorService, this);
54
+ super.focus();
55
+ }
56
+ blur() {
57
+ this.inputHandler?.destroy();
58
+ super.blur();
59
+ }
60
+ ngOnDestroy() {
61
+ this.inputHandler?.destroy();
62
+ super.ngOnDestroy();
63
+ }
64
+ createImage(fileSource) {
65
+ const imageEl = document.createElement('img');
66
+ imageEl.width = this._width;
67
+ imageEl.height = this._height;
68
+ imageEl.src = fileSource;
69
+ return imageEl;
70
+ }
71
+ resizeImage(size) {
72
+ const image = this.elementRef.nativeElement.querySelector('img');
73
+ image.width = size.width;
74
+ image.height = size.height;
75
+ }
76
+ resizeCanvas(size) {
77
+ const image = this.elementRef.nativeElement.querySelector('canvas');
78
+ image.style.width = `${size.width}px`;
79
+ image.style.height = `${size.height}px`;
80
+ }
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NoderImageComponent, deps: [{ token: i0.ElementRef }, { token: i1.ImageApiService }, { token: i2.EditorService }], target: i0.ɵɵFactoryTarget.Component }); }
82
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NoderImageComponent, selector: "app-nod-image", usesInheritance: true, ngImport: i0, template: "<app-nod-resizer\n *ngIf=\"isFocused\"\n class=\"resizer\"\n [isDisabled]=\"isViewOnly$ | async\"\n [size]=\"size\"\n (resizeEnd)=\"onResizeEnd($event)\" />\n", styles: [":host{position:relative;outline:none}.resizer{position:absolute;z-index:1}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.ResizerComponent, selector: "app-nod-resizer", inputs: ["isDisabled", "size"], outputs: ["resizeEnd"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
+ }
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NoderImageComponent, decorators: [{
85
+ type: Component,
86
+ args: [{ selector: 'app-nod-image', changeDetection: ChangeDetectionStrategy.OnPush, template: "<app-nod-resizer\n *ngIf=\"isFocused\"\n class=\"resizer\"\n [isDisabled]=\"isViewOnly$ | async\"\n [size]=\"size\"\n (resizeEnd)=\"onResizeEnd($event)\" />\n", styles: [":host{position:relative;outline:none}.resizer{position:absolute;z-index:1}\n"] }]
87
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.ImageApiService }, { type: i2.EditorService }] });
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL2NvbXBvbmVudHMvaW1hZ2UvY29tcG9uZW50cy9pbWFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9pbWFnZS9jb21wb25lbnRzL2ltYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFFaEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7QUFTeEUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGtCQUFrQjtJQUN2RCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxPQUFxQixDQUFDO0lBQ3RDLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxHQUFlO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBTUQsWUFBc0IsVUFBbUMsRUFBVSxVQUEyQixFQUFVLGFBQTRCO1FBQ2hJLEtBQUssRUFBRSxDQUFDO1FBRFUsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFpQjtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBSjVILGFBQVEsR0FBRyxLQUFLLENBQUM7SUFNekIsQ0FBQztJQUVELFVBQVU7UUFDTixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzRCxJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3ZDLE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFVO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEIsTUFBTSxZQUFZLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvRSxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxNQUFNLENBQUMsSUFBVTtRQUNiLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFUSxLQUFLO1FBQ1YsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDcEUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFUSxJQUFJO1FBQ1QsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM3QixLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVRLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM3QixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLFdBQVcsQ0FBQyxVQUFrQjtRQUNsQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM1QixPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDOUIsT0FBTyxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUM7UUFDekIsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztJQUVPLFdBQVcsQ0FBQyxJQUFVO1FBQzFCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRSxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDekIsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFTyxZQUFZLENBQUMsSUFBVTtRQUMzQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEUsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUM7UUFDdEMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUM7SUFDNUMsQ0FBQzsrR0FsRlEsbUJBQW1CO21HQUFuQixtQkFBbUIsNEVDakJoQywrS0FNQTs7NEZEV2EsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNJLGVBQWUsbUJBR1IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmFzZU5vZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Fic3RyYWN0L2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IEVkaXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmFjdGlvbi9lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBJbWFnZUFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ltYWdlL2ltYWdlLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEltYWdlSW5wdXRIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9pbWFnZS9pbnB1dC1oYW5kbGVyL2ltYWdlLWlucHV0LmhhbmRsZXInO1xuaW1wb3J0IHsgSW1hZ2VNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvaW1hZ2UubW9kZWwnO1xuaW1wb3J0IHsgU2NhbGluZ0hlbHBlciB9IGZyb20gJy4uLy4uLy4uL2NvbnRlbnQvaGVscGVycy9zY2FsaW5nLmhlbHBlcic7XG5pbXBvcnQgeyBTaXplIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9pbWFnZS9zaXplJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtbm9kLWltYWdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW1hZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ltYWdlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTm9kZXJJbWFnZUNvbXBvbmVudCBleHRlbmRzIEJhc2VOb2RlckNvbXBvbmVudCB7XG4gICAgZ2V0IGlzVmlld09ubHkkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lZGl0b3JTZXJ2aWNlLmlzVmlld09ubHkkO1xuICAgIH1cblxuICAgIGdldCBpbWFnZSgpOiBJbWFnZU1vZGVsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudCBhcyBJbWFnZU1vZGVsO1xuICAgIH1cbiAgICBzZXQgaW1hZ2UodmFsOiBJbWFnZU1vZGVsKSB7XG4gICAgICAgIHRoaXMuY29udGVudCA9IHZhbDtcbiAgICB9XG5cbiAgICBnZXQgc2l6ZSgpOiBTaXplIHtcbiAgICAgICAgcmV0dXJuIHsgd2lkdGg6IHRoaXMuX3dpZHRoLCBoZWlnaHQ6IHRoaXMuX2hlaWdodCB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNDYW52YXMgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgaW5wdXRIYW5kbGVyOiBJbWFnZUlucHV0SGFuZGxlcjtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiwgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBJbWFnZUFwaVNlcnZpY2UsIHByaXZhdGUgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHVybCA9IHRoaXMuaW1hZ2UuY29udGVudD8ucmVwbGFjZSgnL2FwaS8nLCAnJykgPz8gJyc7XG4gICAgICAgIHRoaXMuX2hlaWdodCA9IFNjYWxpbmdIZWxwZXIuc2NhbGUodGhpcy5pbWFnZS5oZWlnaHQsIHRoaXMuZ2VuZXJhbFByb3BlcnRpZXMuc2NhbGluZ1JhdGlvKTtcbiAgICAgICAgdGhpcy5fd2lkdGggPSBTY2FsaW5nSGVscGVyLnNjYWxlKHRoaXMuaW1hZ2Uud2lkdGgsIHRoaXMuZ2VuZXJhbFByb3BlcnRpZXMuc2NhbGluZ1JhdGlvKTtcbiAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdldEZpbGUodXJsKS5zdWJzY3JpYmUoeCA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWxlU291cmNlID0gVVJMLmNyZWF0ZU9iamVjdFVSTCh4KTtcbiAgICAgICAgICAgIGNvbnN0IGltYWdlID0gdGhpcy5jcmVhdGVJbWFnZShmaWxlU291cmNlKTtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGltYWdlKTtcbiAgICAgICAgICAgIHRoaXMuZWRpdG9yU2VydmljZS5yZW5kZXJlclVwZGF0ZWQodGhpcy5zZXNzaW9uSWQpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvblJlc2l6ZUVuZChzaXplOiBTaXplKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzaXplKHNpemUpO1xuICAgICAgICBjb25zdCByZXNpemVkSW1hZ2UgPSB7IC4uLnRoaXMuaW1hZ2UsIHdpZHRoOiBzaXplLndpZHRoLCBoZWlnaHQ6IHNpemUuaGVpZ2h0IH07XG4gICAgICAgIHRoaXMuZWRpdG9yU2VydmljZS5jaGFuZ2VJbWFnZVN0eWxlKHJlc2l6ZWRJbWFnZSk7XG4gICAgfVxuXG4gICAgcmVzaXplKHNpemU6IFNpemUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fd2lkdGggPSBzaXplLndpZHRoO1xuICAgICAgICB0aGlzLl9oZWlnaHQgPSBzaXplLmhlaWdodDtcbiAgICAgICAgdGhpcy5pc0NhbnZhcyA/IHRoaXMucmVzaXplQ2FudmFzKHNpemUpIDogdGhpcy5yZXNpemVJbWFnZShzaXplKTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRIYW5kbGVyID0gbmV3IEltYWdlSW5wdXRIYW5kbGVyKHRoaXMuZWRpdG9yU2VydmljZSwgdGhpcyk7XG4gICAgICAgIHN1cGVyLmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgYmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbnB1dEhhbmRsZXI/LmRlc3Ryb3koKTtcbiAgICAgICAgc3VwZXIuYmx1cigpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0SGFuZGxlcj8uZGVzdHJveSgpO1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlSW1hZ2UoZmlsZVNvdXJjZTogc3RyaW5nKTogSFRNTEltYWdlRWxlbWVudCB7XG4gICAgICAgIGNvbnN0IGltYWdlRWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbWcnKTtcbiAgICAgICAgaW1hZ2VFbC53aWR0aCA9IHRoaXMuX3dpZHRoO1xuICAgICAgICBpbWFnZUVsLmhlaWdodCA9IHRoaXMuX2hlaWdodDtcbiAgICAgICAgaW1hZ2VFbC5zcmMgPSBmaWxlU291cmNlO1xuICAgICAgICByZXR1cm4gaW1hZ2VFbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2l6ZUltYWdlKHNpemU6IFNpemUpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW1hZ2UgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbWcnKTtcbiAgICAgICAgaW1hZ2Uud2lkdGggPSBzaXplLndpZHRoO1xuICAgICAgICBpbWFnZS5oZWlnaHQgPSBzaXplLmhlaWdodDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2l6ZUNhbnZhcyhzaXplOiBTaXplKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGltYWdlID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignY2FudmFzJyk7XG4gICAgICAgIGltYWdlLnN0eWxlLndpZHRoID0gYCR7c2l6ZS53aWR0aH1weGA7XG4gICAgICAgIGltYWdlLnN0eWxlLmhlaWdodCA9IGAke3NpemUuaGVpZ2h0fXB4YDtcbiAgICB9XG59XG4iLCI8YXBwLW5vZC1yZXNpemVyXG4gICAgKm5nSWY9XCJpc0ZvY3VzZWRcIlxuICAgIGNsYXNzPVwicmVzaXplclwiXG4gICAgW2lzRGlzYWJsZWRdPVwiaXNWaWV3T25seSQgfCBhc3luY1wiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgKHJlc2l6ZUVuZCk9XCJvblJlc2l6ZUVuZCgkZXZlbnQpXCIgLz5cbiJdfQ==
@@ -0,0 +1,36 @@
1
+ import { HttpHeaders } from '@angular/common/http';
2
+ import { Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class ImageApiService {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ImageApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ImageApiService }); }
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ImageApiService, decorators: [{
9
+ type: Injectable
10
+ }] });
11
+ export class DefaultImageApiService {
12
+ constructor(http) {
13
+ this.http = http;
14
+ this.apiRelativePath = '/api/';
15
+ this._inFlight = {};
16
+ }
17
+ getFile(source) {
18
+ return this.httpGetBlob(source);
19
+ }
20
+ httpGetBlob(url) {
21
+ if (this._inFlight[url.toLowerCase()]) {
22
+ return this._inFlight[url.toLowerCase()];
23
+ }
24
+ return this.http.get(`${this.apiRelativePath}${url}`, {
25
+ responseType: 'blob',
26
+ headers: this.getHeaders()
27
+ });
28
+ }
29
+ getHeaders(headers = null) {
30
+ if (!headers) {
31
+ headers = new HttpHeaders();
32
+ }
33
+ return headers.set('require-user', 'true');
34
+ }
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9pbWFnZS9pbWFnZS1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJM0MsTUFBTSxPQUFnQixlQUFlOytHQUFmLGVBQWU7bUhBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEcEMsVUFBVTs7QUFLWCxNQUFNLE9BQU8sc0JBQXNCO0lBSy9CLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFKNUIsb0JBQWUsR0FBRyxPQUFPLENBQUM7UUFFMUIsY0FBUyxHQUFRLEVBQUUsQ0FBQztJQUVXLENBQUM7SUFFeEMsT0FBTyxDQUFDLE1BQWM7UUFDbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxXQUFXLENBQUMsR0FBVztRQUMzQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUU7WUFDbkMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQzVDO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLEdBQUcsR0FBRyxFQUFFLEVBQUU7WUFDbEQsWUFBWSxFQUFFLE1BQU07WUFDcEIsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7U0FDN0IsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLFVBQVUsQ0FBQyxVQUF1QixJQUFJO1FBQzFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztTQUMvQjtRQUNELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBJbWFnZUFwaVNlcnZpY2Uge1xuICAgIGFic3RyYWN0IGdldEZpbGUoc291cmNlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEJsb2I+O1xufVxuXG5leHBvcnQgY2xhc3MgRGVmYXVsdEltYWdlQXBpU2VydmljZSBpbXBsZW1lbnRzIEltYWdlQXBpU2VydmljZSB7XG4gICAgcHJpdmF0ZSBhcGlSZWxhdGl2ZVBhdGggPSAnL2FwaS8nO1xuXG4gICAgcHJpdmF0ZSBfaW5GbGlnaHQ6IGFueSA9IHt9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7fVxuXG4gICAgZ2V0RmlsZShzb3VyY2U6IHN0cmluZyk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwR2V0QmxvYihzb3VyY2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaHR0cEdldEJsb2IodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICAgICAgaWYgKHRoaXMuX2luRmxpZ2h0W3VybC50b0xvd2VyQ2FzZSgpXSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2luRmxpZ2h0W3VybC50b0xvd2VyQ2FzZSgpXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLmFwaVJlbGF0aXZlUGF0aH0ke3VybH1gLCB7XG4gICAgICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgICAgIGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVycygpXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SGVhZGVycyhoZWFkZXJzOiBIdHRwSGVhZGVycyA9IG51bGwpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIGlmICghaGVhZGVycykge1xuICAgICAgICAgICAgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBoZWFkZXJzLnNldCgncmVxdWlyZS11c2VyJywgJ3RydWUnKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,55 @@
1
+ import { fromEvent } from 'rxjs';
2
+ export class ImageInputHandler {
3
+ constructor(editorService, image) {
4
+ this.editorService = editorService;
5
+ this.image = image;
6
+ this.imageComponentTagName = 'APP-NOD-IMAGE';
7
+ this.undoRedoActions = {};
8
+ this.imageKeyDownSubscription = fromEvent(document, 'keydown').subscribe(event => this.onKeyDown(event));
9
+ this.clickSubscription = fromEvent(document, 'click').subscribe(event => this.onClick(event.target));
10
+ this.fillUndoRedoActions();
11
+ }
12
+ destroy() {
13
+ this.imageKeyDownSubscription?.unsubscribe();
14
+ this.clickSubscription?.unsubscribe();
15
+ }
16
+ onKeyDown(event) {
17
+ if (this.editorService.isViewOnly) {
18
+ return;
19
+ }
20
+ if (['Backspace', 'Delete'].includes(event.code)) {
21
+ this.editorService.removeImage(this.image.insertIndex);
22
+ return;
23
+ }
24
+ const keyCombination = this.getKeyCombination(event);
25
+ if (this.undoRedoActions[keyCombination] && !this.editorService.isViewOnly) {
26
+ this.undoRedoActions[keyCombination]();
27
+ event.preventDefault();
28
+ return;
29
+ }
30
+ if (!event.ctrlKey && !event.altKey && !event.shiftKey && !event.metaKey && event.key.length === 1) {
31
+ this.editorService.insertText(event.key);
32
+ }
33
+ }
34
+ getKeyCombination(event) {
35
+ let result = event.metaKey ? 'Command-' : '';
36
+ return event.ctrlKey ? `${result}Ctrl-${event.code}` : '';
37
+ }
38
+ fillUndoRedoActions() {
39
+ this.undoRedoActions['Ctrl-KeyZ'] = () => this.editorService.undo();
40
+ this.undoRedoActions['Command-KeyZ'] = () => this.editorService.undo();
41
+ this.undoRedoActions['Ctrl-KeyY'] = () => this.editorService.redo();
42
+ this.undoRedoActions['Command-KeyY'] = () => this.editorService.redo();
43
+ }
44
+ onClick(element) {
45
+ let currentElement = element;
46
+ while (currentElement) {
47
+ if (currentElement.tagName === this.imageComponentTagName) {
48
+ return;
49
+ }
50
+ currentElement = currentElement.parentElement;
51
+ }
52
+ this.editorService.blurCustomComponent();
53
+ }
54
+ }
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtaW5wdXQuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2VkaXRvci9jb21wb25lbnRzL2ltYWdlL2lucHV0LWhhbmRsZXIvaW1hZ2UtaW5wdXQuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUsvQyxNQUFNLE9BQU8saUJBQWlCO0lBUzFCLFlBQTZCLGFBQTRCLEVBQW1CLEtBQTBCO1FBQXpFLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQW1CLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBUjdGLDBCQUFxQixHQUFHLGVBQWUsQ0FBQztRQUVoQyxvQkFBZSxHQUFrQyxFQUFFLENBQUM7UUFPakUsSUFBSSxDQUFDLHdCQUF3QixHQUFHLFNBQVMsQ0FBZ0IsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN4SCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFnQixRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBcUIsQ0FBQyxDQUFDLENBQUM7UUFDbkksSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLENBQUMsd0JBQXdCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFTyxTQUFTLENBQUMsS0FBb0I7UUFDbEMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRTtZQUMvQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN2RCxPQUFPO1NBQ1Y7UUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckQsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7WUFDeEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDaEcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQW9CO1FBQzFDLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLFFBQVEsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVPLG1CQUFtQjtRQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwRSxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0UsQ0FBQztJQUVPLE9BQU8sQ0FBQyxPQUFvQjtRQUNoQyxJQUFJLGNBQWMsR0FBRyxPQUFPLENBQUM7UUFDN0IsT0FBTyxjQUFjLEVBQUU7WUFDbkIsSUFBSSxjQUFjLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtnQkFDdkQsT0FBTzthQUNWO1lBQ0QsY0FBYyxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUM7U0FDakQ7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0MsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRWRpdG9yU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2ludGVyYWN0aW9uL2VkaXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IE5vZGVySW1hZ2VDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2ltYWdlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBJbWFnZUlucHV0SGFuZGxlciB7XG4gICAgcmVhZG9ubHkgaW1hZ2VDb21wb25lbnRUYWdOYW1lID0gJ0FQUC1OT0QtSU1BR0UnO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSB1bmRvUmVkb0FjdGlvbnM6IHsgW2tleTogc3RyaW5nXTogKCkgPT4gdm9pZCB9ID0ge307XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGltYWdlS2V5RG93blN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBjbGlja1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGltYWdlOiBOb2RlckltYWdlQ29tcG9uZW50KSB7XG4gICAgICAgIHRoaXMuaW1hZ2VLZXlEb3duU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGRvY3VtZW50LCAna2V5ZG93bicpLnN1YnNjcmliZShldmVudCA9PiB0aGlzLm9uS2V5RG93bihldmVudCkpO1xuICAgICAgICB0aGlzLmNsaWNrU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGRvY3VtZW50LCAnY2xpY2snKS5zdWJzY3JpYmUoZXZlbnQgPT4gdGhpcy5vbkNsaWNrKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkpO1xuICAgICAgICB0aGlzLmZpbGxVbmRvUmVkb0FjdGlvbnMoKTtcbiAgICB9XG5cbiAgICBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmltYWdlS2V5RG93blN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5jbGlja1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5lZGl0b3JTZXJ2aWNlLmlzVmlld09ubHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChbJ0JhY2tzcGFjZScsICdEZWxldGUnXS5pbmNsdWRlcyhldmVudC5jb2RlKSkge1xuICAgICAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLnJlbW92ZUltYWdlKHRoaXMuaW1hZ2UuaW5zZXJ0SW5kZXgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qga2V5Q29tYmluYXRpb24gPSB0aGlzLmdldEtleUNvbWJpbmF0aW9uKGV2ZW50KTtcbiAgICAgICAgaWYgKHRoaXMudW5kb1JlZG9BY3Rpb25zW2tleUNvbWJpbmF0aW9uXSAmJiAhdGhpcy5lZGl0b3JTZXJ2aWNlLmlzVmlld09ubHkpIHtcbiAgICAgICAgICAgIHRoaXMudW5kb1JlZG9BY3Rpb25zW2tleUNvbWJpbmF0aW9uXSgpO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghZXZlbnQuY3RybEtleSAmJiAhZXZlbnQuYWx0S2V5ICYmICFldmVudC5zaGlmdEtleSAmJiAhZXZlbnQubWV0YUtleSAmJiBldmVudC5rZXkubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICB0aGlzLmVkaXRvclNlcnZpY2UuaW5zZXJ0VGV4dChldmVudC5rZXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRLZXlDb21iaW5hdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IHN0cmluZyB7XG4gICAgICAgIGxldCByZXN1bHQgPSBldmVudC5tZXRhS2V5ID8gJ0NvbW1hbmQtJyA6ICcnO1xuICAgICAgICByZXR1cm4gZXZlbnQuY3RybEtleSA/IGAke3Jlc3VsdH1DdHJsLSR7ZXZlbnQuY29kZX1gIDogJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWxsVW5kb1JlZG9BY3Rpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVuZG9SZWRvQWN0aW9uc1snQ3RybC1LZXlaJ10gPSAoKSA9PiB0aGlzLmVkaXRvclNlcnZpY2UudW5kbygpO1xuICAgICAgICB0aGlzLnVuZG9SZWRvQWN0aW9uc1snQ29tbWFuZC1LZXlaJ10gPSAoKSA9PiB0aGlzLmVkaXRvclNlcnZpY2UudW5kbygpO1xuICAgICAgICB0aGlzLnVuZG9SZWRvQWN0aW9uc1snQ3RybC1LZXlZJ10gPSAoKSA9PiB0aGlzLmVkaXRvclNlcnZpY2UucmVkbygpO1xuICAgICAgICB0aGlzLnVuZG9SZWRvQWN0aW9uc1snQ29tbWFuZC1LZXlZJ10gPSAoKSA9PiB0aGlzLmVkaXRvclNlcnZpY2UucmVkbygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25DbGljayhlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBsZXQgY3VycmVudEVsZW1lbnQgPSBlbGVtZW50O1xuICAgICAgICB3aGlsZSAoY3VycmVudEVsZW1lbnQpIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50RWxlbWVudC50YWdOYW1lID09PSB0aGlzLmltYWdlQ29tcG9uZW50VGFnTmFtZSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGN1cnJlbnRFbGVtZW50ID0gY3VycmVudEVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVkaXRvclNlcnZpY2UuYmx1ckN1c3RvbUNvbXBvbmVudCgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29vcmRpbmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2VkaXRvci9jb21wb25lbnRzL2ltYWdlL3Jlc2l6ZXIvY29vcmRpbmF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDb29yZGluYXRlIHtcbiAgICByZWFkb25seSB4OiBudW1iZXI7XG4gICAgcmVhZG9ubHkgeTogbnVtYmVyO1xufVxuIl19
@@ -0,0 +1,19 @@
1
+ import { Direction } from './direction.enum';
2
+ export class DirectionWrapper {
3
+ constructor(direction) {
4
+ this.direction = direction;
5
+ }
6
+ isHorizontal() {
7
+ return [Direction.East, Direction.West].includes(this.direction);
8
+ }
9
+ isOrdinal() {
10
+ return [Direction.NorthWest, Direction.NorthEast, Direction.SouthEast, Direction.SouthWest].includes(this.direction);
11
+ }
12
+ includesWest() {
13
+ return [Direction.West, Direction.NorthWest, Direction.SouthWest].includes(this.direction);
14
+ }
15
+ includesNorth() {
16
+ return [Direction.North, Direction.NorthWest, Direction.NorthEast].includes(this.direction);
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9uLXdyYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9pbWFnZS9yZXNpemVyL2RpcmVjdGlvbi13cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU3QyxNQUFNLE9BQU8sZ0JBQWdCO0lBQ3pCLFlBQTZCLFNBQW9CO1FBQXBCLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFBRyxDQUFDO0lBRXJELFlBQVk7UUFDUixPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6SCxDQUFDO0lBRUQsWUFBWTtRQUNSLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELGFBQWE7UUFDVCxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJy4vZGlyZWN0aW9uLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgRGlyZWN0aW9uV3JhcHBlciB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBkaXJlY3Rpb246IERpcmVjdGlvbikge31cblxuICAgIGlzSG9yaXpvbnRhbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFtEaXJlY3Rpb24uRWFzdCwgRGlyZWN0aW9uLldlc3RdLmluY2x1ZGVzKHRoaXMuZGlyZWN0aW9uKTtcbiAgICB9XG5cbiAgICBpc09yZGluYWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBbRGlyZWN0aW9uLk5vcnRoV2VzdCwgRGlyZWN0aW9uLk5vcnRoRWFzdCwgRGlyZWN0aW9uLlNvdXRoRWFzdCwgRGlyZWN0aW9uLlNvdXRoV2VzdF0uaW5jbHVkZXModGhpcy5kaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIGluY2x1ZGVzV2VzdCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFtEaXJlY3Rpb24uV2VzdCwgRGlyZWN0aW9uLk5vcnRoV2VzdCwgRGlyZWN0aW9uLlNvdXRoV2VzdF0uaW5jbHVkZXModGhpcy5kaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIGluY2x1ZGVzTm9ydGgoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBbRGlyZWN0aW9uLk5vcnRoLCBEaXJlY3Rpb24uTm9ydGhXZXN0LCBEaXJlY3Rpb24uTm9ydGhFYXN0XS5pbmNsdWRlcyh0aGlzLmRpcmVjdGlvbik7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,12 @@
1
+ export var Direction;
2
+ (function (Direction) {
3
+ Direction[Direction["NorthWest"] = 0] = "NorthWest";
4
+ Direction[Direction["North"] = 1] = "North";
5
+ Direction[Direction["NorthEast"] = 2] = "NorthEast";
6
+ Direction[Direction["East"] = 3] = "East";
7
+ Direction[Direction["SouthEast"] = 4] = "SouthEast";
8
+ Direction[Direction["South"] = 5] = "South";
9
+ Direction[Direction["SouthWest"] = 6] = "SouthWest";
10
+ Direction[Direction["West"] = 7] = "West";
11
+ })(Direction || (Direction = {}));
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9uLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9pbWFnZS9yZXNpemVyL2RpcmVjdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFNBU1g7QUFURCxXQUFZLFNBQVM7SUFDakIsbURBQVMsQ0FBQTtJQUNULDJDQUFLLENBQUE7SUFDTCxtREFBUyxDQUFBO0lBQ1QseUNBQUksQ0FBQTtJQUNKLG1EQUFTLENBQUE7SUFDVCwyQ0FBSyxDQUFBO0lBQ0wsbURBQVMsQ0FBQTtJQUNULHlDQUFJLENBQUE7QUFDUixDQUFDLEVBVFcsU0FBUyxLQUFULFNBQVMsUUFTcEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBEaXJlY3Rpb24ge1xuICAgIE5vcnRoV2VzdCxcbiAgICBOb3J0aCxcbiAgICBOb3J0aEVhc3QsXG4gICAgRWFzdCxcbiAgICBTb3V0aEVhc3QsXG4gICAgU291dGgsXG4gICAgU291dGhXZXN0LFxuICAgIFdlc3Rcbn1cbiJdfQ==
@@ -0,0 +1,106 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';
2
+ import { Direction } from './direction.enum';
3
+ import { DirectionWrapper } from './direction-wrapper';
4
+ import { SizeWrapper } from './size-wrapper';
5
+ import * as i0 from "@angular/core";
6
+ export class ResizerComponent {
7
+ constructor() {
8
+ this.isDisabled = false;
9
+ this.resizeEnd = new EventEmitter();
10
+ this.Direction = Direction;
11
+ }
12
+ get width() {
13
+ return this._size.width;
14
+ }
15
+ get height() {
16
+ return this._size.height;
17
+ }
18
+ get right() {
19
+ return this.direction?.includesWest() ? 0 : null;
20
+ }
21
+ get bottom() {
22
+ const halfPointHeight = 4;
23
+ return this.direction?.includesNorth() ? halfPointHeight : null;
24
+ }
25
+ set size(value) {
26
+ if (!this.direction) {
27
+ this._size = new SizeWrapper(value, { width: 1, height: 1 });
28
+ }
29
+ }
30
+ ngOnInit() {
31
+ if (!this._size) {
32
+ throw new Error('Initial size is not set');
33
+ }
34
+ }
35
+ onMousemove(event) {
36
+ if (!this.direction || this.isDisabled) {
37
+ return;
38
+ }
39
+ const delta = this.getDelta(event);
40
+ this.setPreviousCoordinate(event);
41
+ if (this.direction.isOrdinal()) {
42
+ this.virtualRectSize.applyDelta(delta);
43
+ this._size.fitProportionallyTo(this.virtualRectSize);
44
+ return;
45
+ }
46
+ this.direction.isHorizontal() ? this.virtualRectSize.applyDeltaX(delta) : this.virtualRectSize.applyDeltaY(delta);
47
+ this._size.fitTo(this.virtualRectSize);
48
+ }
49
+ onMouseup() {
50
+ if (!this.direction || this.isDisabled) {
51
+ return;
52
+ }
53
+ this.direction = null;
54
+ this.resizeEnd.emit(this._size.toSize());
55
+ }
56
+ onStartResizing(event, direction) {
57
+ event.preventDefault();
58
+ if (event.button !== 0) {
59
+ return;
60
+ }
61
+ this.virtualRectSize = new SizeWrapper(this._size.toSize());
62
+ this.direction = new DirectionWrapper(direction);
63
+ this.setPreviousCoordinate(event);
64
+ }
65
+ getDelta(event) {
66
+ const rawDeltaX = event.screenX - this.prevCoordinate.x;
67
+ const deltaX = this.direction.includesWest() ? -rawDeltaX : rawDeltaX;
68
+ const rawDeltaY = event.screenY - this.prevCoordinate.y;
69
+ const deltaY = this.direction.includesNorth() ? -rawDeltaY : rawDeltaY;
70
+ return { deltaX, deltaY };
71
+ }
72
+ setPreviousCoordinate(event) {
73
+ this.prevCoordinate = { x: event.screenX, y: event.screenY };
74
+ }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ResizerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ResizerComponent, selector: "app-nod-resizer", inputs: { isDisabled: "isDisabled", size: "size" }, outputs: { resizeEnd: "resizeEnd" }, host: { listeners: { "document:mousemove": "onMousemove($event)", "window:mouseup": "onMouseup()" }, properties: { "style.width.px": "this.width", "style.height.px": "this.height", "style.right.px": "this.right", "style.bottom.px": "this.bottom" } }, ngImport: i0, template: "<span\n class=\"point north-west\"\n (mousedown)=\"onStartResizing($event, Direction.NorthWest)\"></span>\n<span\n class=\"point north\"\n (mousedown)=\"onStartResizing($event, Direction.North)\"></span>\n<span\n class=\"point north-east\"\n (mousedown)=\"onStartResizing($event, Direction.NorthEast)\"></span>\n<span\n class=\"point east\"\n (mousedown)=\"onStartResizing($event, Direction.East)\"></span>\n<span\n class=\"point south-east\"\n (mousedown)=\"onStartResizing($event, Direction.SouthEast)\"></span>\n<span\n class=\"point south\"\n (mousedown)=\"onStartResizing($event, Direction.South)\"></span>\n<span\n class=\"point south-west\"\n (mousedown)=\"onStartResizing($event, Direction.SouthWest)\"></span>\n<span\n class=\"point west\"\n (mousedown)=\"onStartResizing($event, Direction.West)\"></span>\n", styles: [":host{display:block;border:1px solid #616161}.point{position:absolute;width:12px;height:12px;border:1px solid #616161;border-radius:50%;background-color:#fff}.point.north-west{top:-6px;left:-6px;cursor:nw-resize}.point.north{top:-6px;left:0;right:0;margin:auto;cursor:n-resize}.point.north-east{top:-6px;right:-6px;cursor:ne-resize}.point.east{top:0;bottom:0;right:-6px;margin:auto;cursor:e-resize}.point.south-east{bottom:-6px;right:-6px;cursor:se-resize}.point.south{bottom:-6px;left:0;right:0;margin:auto;cursor:s-resize}.point.south-west{bottom:-6px;left:-6px;cursor:sw-resize}.point.west{top:0;bottom:0;left:-6px;margin:auto;cursor:w-resize}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
+ }
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ResizerComponent, decorators: [{
79
+ type: Component,
80
+ args: [{ selector: 'app-nod-resizer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n class=\"point north-west\"\n (mousedown)=\"onStartResizing($event, Direction.NorthWest)\"></span>\n<span\n class=\"point north\"\n (mousedown)=\"onStartResizing($event, Direction.North)\"></span>\n<span\n class=\"point north-east\"\n (mousedown)=\"onStartResizing($event, Direction.NorthEast)\"></span>\n<span\n class=\"point east\"\n (mousedown)=\"onStartResizing($event, Direction.East)\"></span>\n<span\n class=\"point south-east\"\n (mousedown)=\"onStartResizing($event, Direction.SouthEast)\"></span>\n<span\n class=\"point south\"\n (mousedown)=\"onStartResizing($event, Direction.South)\"></span>\n<span\n class=\"point south-west\"\n (mousedown)=\"onStartResizing($event, Direction.SouthWest)\"></span>\n<span\n class=\"point west\"\n (mousedown)=\"onStartResizing($event, Direction.West)\"></span>\n", styles: [":host{display:block;border:1px solid #616161}.point{position:absolute;width:12px;height:12px;border:1px solid #616161;border-radius:50%;background-color:#fff}.point.north-west{top:-6px;left:-6px;cursor:nw-resize}.point.north{top:-6px;left:0;right:0;margin:auto;cursor:n-resize}.point.north-east{top:-6px;right:-6px;cursor:ne-resize}.point.east{top:0;bottom:0;right:-6px;margin:auto;cursor:e-resize}.point.south-east{bottom:-6px;right:-6px;cursor:se-resize}.point.south{bottom:-6px;left:0;right:0;margin:auto;cursor:s-resize}.point.south-west{bottom:-6px;left:-6px;cursor:sw-resize}.point.west{top:0;bottom:0;left:-6px;margin:auto;cursor:w-resize}\n"] }]
81
+ }], propDecorators: { width: [{
82
+ type: HostBinding,
83
+ args: ['style.width.px']
84
+ }], height: [{
85
+ type: HostBinding,
86
+ args: ['style.height.px']
87
+ }], right: [{
88
+ type: HostBinding,
89
+ args: ['style.right.px']
90
+ }], bottom: [{
91
+ type: HostBinding,
92
+ args: ['style.bottom.px']
93
+ }], isDisabled: [{
94
+ type: Input
95
+ }], size: [{
96
+ type: Input
97
+ }], resizeEnd: [{
98
+ type: Output
99
+ }], onMousemove: [{
100
+ type: HostListener,
101
+ args: ['document:mousemove', ['$event']]
102
+ }], onMouseup: [{
103
+ type: HostListener,
104
+ args: ['window:mouseup']
105
+ }] } });
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9pbWFnZS9yZXNpemVyL3Jlc2l6ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL2NvbXBvbmVudHMvaW1hZ2UvcmVzaXplci9yZXNpemVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduSSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVE3QyxNQUFNLE9BQU8sZ0JBQWdCO0lBTjdCO1FBNEJhLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFVbEIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFdEMsY0FBUyxHQUFHLFNBQVMsQ0FBQztLQWtFbEM7SUFuR0csSUFDSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFDSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFDSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFDSSxNQUFNO1FBQ04sTUFBTSxlQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDcEUsQ0FBQztJQUlELElBQ0ksSUFBSSxDQUFDLEtBQVc7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFdBQVcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hFO0lBQ0wsQ0FBQztJQWFELFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztTQUM5QztJQUNMLENBQUM7SUFHRCxXQUFXLENBQUMsS0FBaUI7UUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQyxPQUFPO1NBQ1Y7UUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDckQsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xILElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBR0QsU0FBUztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDcEMsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBaUIsRUFBRSxTQUFvQjtRQUNuRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTyxRQUFRLENBQUMsS0FBaUI7UUFDOUIsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRXRFLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDeEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUV2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxLQUFpQjtRQUMzQyxJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqRSxDQUFDOytHQW5HUSxnQkFBZ0I7bUdBQWhCLGdCQUFnQiwyWUNmN0IsazJCQXdCQTs7NEZEVGEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNJLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkzQyxLQUFLO3NCQURSLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixNQUFNO3NCQURULFdBQVc7dUJBQUMsaUJBQWlCO2dCQU0xQixLQUFLO3NCQURSLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixNQUFNO3NCQURULFdBQVc7dUJBQUMsaUJBQWlCO2dCQU1yQixVQUFVO3NCQUFsQixLQUFLO2dCQUdGLElBQUk7c0JBRFAsS0FBSztnQkFRSSxTQUFTO3NCQUFsQixNQUFNO2dCQWlCUCxXQUFXO3NCQURWLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBbUI5QyxTQUFTO3NCQURSLFlBQVk7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29vcmRpbmF0ZSB9IGZyb20gJy4vY29vcmRpbmF0ZSc7XG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICcuL2RpcmVjdGlvbi5lbnVtJztcbmltcG9ydCB7IERpcmVjdGlvbldyYXBwZXIgfSBmcm9tICcuL2RpcmVjdGlvbi13cmFwcGVyJztcbmltcG9ydCB7IFNpemUgfSBmcm9tICcuLi9zaXplJztcbmltcG9ydCB7IFNpemVEZWx0YSB9IGZyb20gJy4vc2l6ZS1kZWx0YSc7XG5pbXBvcnQgeyBTaXplV3JhcHBlciB9IGZyb20gJy4vc2l6ZS13cmFwcGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtbm9kLXJlc2l6ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yZXNpemVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yZXNpemVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUmVzaXplckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aC5weCcpXG4gICAgZ2V0IHdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaXplLndpZHRoO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0LnB4JylcbiAgICBnZXQgaGVpZ2h0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaXplLmhlaWdodDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLnJpZ2h0LnB4JylcbiAgICBnZXQgcmlnaHQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlyZWN0aW9uPy5pbmNsdWRlc1dlc3QoKSA/IDAgOiBudWxsO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuYm90dG9tLnB4JylcbiAgICBnZXQgYm90dG9tKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGhhbGZQb2ludEhlaWdodCA9IDQ7XG4gICAgICAgIHJldHVybiB0aGlzLmRpcmVjdGlvbj8uaW5jbHVkZXNOb3J0aCgpID8gaGFsZlBvaW50SGVpZ2h0IDogbnVsbDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBpc0Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBzaXplKHZhbHVlOiBTaXplKSB7XG4gICAgICAgIGlmICghdGhpcy5kaXJlY3Rpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX3NpemUgPSBuZXcgU2l6ZVdyYXBwZXIodmFsdWUsIHsgd2lkdGg6IDEsIGhlaWdodDogMSB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcml2YXRlIF9zaXplOiBTaXplV3JhcHBlcjtcblxuICAgIEBPdXRwdXQoKSByZXNpemVFbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFNpemU+KCk7XG5cbiAgICByZWFkb25seSBEaXJlY3Rpb24gPSBEaXJlY3Rpb247XG5cbiAgICBwcml2YXRlIHZpcnR1YWxSZWN0U2l6ZTogU2l6ZVdyYXBwZXI7XG5cbiAgICBwcml2YXRlIHByZXZDb29yZGluYXRlOiBDb29yZGluYXRlO1xuXG4gICAgcHJpdmF0ZSBkaXJlY3Rpb246IERpcmVjdGlvbldyYXBwZXI7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9zaXplKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0luaXRpYWwgc2l6ZSBpcyBub3Qgc2V0Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDptb3VzZW1vdmUnLCBbJyRldmVudCddKVxuICAgIG9uTW91c2Vtb3ZlKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaXJlY3Rpb24gfHwgdGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkZWx0YSA9IHRoaXMuZ2V0RGVsdGEoZXZlbnQpO1xuICAgICAgICB0aGlzLnNldFByZXZpb3VzQ29vcmRpbmF0ZShldmVudCk7XG4gICAgICAgIGlmICh0aGlzLmRpcmVjdGlvbi5pc09yZGluYWwoKSkge1xuICAgICAgICAgICAgdGhpcy52aXJ0dWFsUmVjdFNpemUuYXBwbHlEZWx0YShkZWx0YSk7XG4gICAgICAgICAgICB0aGlzLl9zaXplLmZpdFByb3BvcnRpb25hbGx5VG8odGhpcy52aXJ0dWFsUmVjdFNpemUpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kaXJlY3Rpb24uaXNIb3Jpem9udGFsKCkgPyB0aGlzLnZpcnR1YWxSZWN0U2l6ZS5hcHBseURlbHRhWChkZWx0YSkgOiB0aGlzLnZpcnR1YWxSZWN0U2l6ZS5hcHBseURlbHRhWShkZWx0YSk7XG4gICAgICAgIHRoaXMuX3NpemUuZml0VG8odGhpcy52aXJ0dWFsUmVjdFNpemUpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzptb3VzZXVwJylcbiAgICBvbk1vdXNldXAoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaXJlY3Rpb24gfHwgdGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRpcmVjdGlvbiA9IG51bGw7XG4gICAgICAgIHRoaXMucmVzaXplRW5kLmVtaXQodGhpcy5fc2l6ZS50b1NpemUoKSk7XG4gICAgfVxuXG4gICAgb25TdGFydFJlc2l6aW5nKGV2ZW50OiBNb3VzZUV2ZW50LCBkaXJlY3Rpb246IERpcmVjdGlvbik6IHZvaWQge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBpZiAoZXZlbnQuYnV0dG9uICE9PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZpcnR1YWxSZWN0U2l6ZSA9IG5ldyBTaXplV3JhcHBlcih0aGlzLl9zaXplLnRvU2l6ZSgpKTtcbiAgICAgICAgdGhpcy5kaXJlY3Rpb24gPSBuZXcgRGlyZWN0aW9uV3JhcHBlcihkaXJlY3Rpb24pO1xuICAgICAgICB0aGlzLnNldFByZXZpb3VzQ29vcmRpbmF0ZShldmVudCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREZWx0YShldmVudDogTW91c2VFdmVudCk6IFNpemVEZWx0YSB7XG4gICAgICAgIGNvbnN0IHJhd0RlbHRhWCA9IGV2ZW50LnNjcmVlblggLSB0aGlzLnByZXZDb29yZGluYXRlLng7XG4gICAgICAgIGNvbnN0IGRlbHRhWCA9IHRoaXMuZGlyZWN0aW9uLmluY2x1ZGVzV2VzdCgpID8gLXJhd0RlbHRhWCA6IHJhd0RlbHRhWDtcblxuICAgICAgICBjb25zdCByYXdEZWx0YVkgPSBldmVudC5zY3JlZW5ZIC0gdGhpcy5wcmV2Q29vcmRpbmF0ZS55O1xuICAgICAgICBjb25zdCBkZWx0YVkgPSB0aGlzLmRpcmVjdGlvbi5pbmNsdWRlc05vcnRoKCkgPyAtcmF3RGVsdGFZIDogcmF3RGVsdGFZO1xuXG4gICAgICAgIHJldHVybiB7IGRlbHRhWCwgZGVsdGFZIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQcmV2aW91c0Nvb3JkaW5hdGUoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcmV2Q29vcmRpbmF0ZSA9IHsgeDogZXZlbnQuc2NyZWVuWCwgeTogZXZlbnQuc2NyZWVuWSB9O1xuICAgIH1cbn1cbiIsIjxzcGFuXG4gICAgY2xhc3M9XCJwb2ludCBub3J0aC13ZXN0XCJcbiAgICAobW91c2Vkb3duKT1cIm9uU3RhcnRSZXNpemluZygkZXZlbnQsIERpcmVjdGlvbi5Ob3J0aFdlc3QpXCI+PC9zcGFuPlxuPHNwYW5cbiAgICBjbGFzcz1cInBvaW50IG5vcnRoXCJcbiAgICAobW91c2Vkb3duKT1cIm9uU3RhcnRSZXNpemluZygkZXZlbnQsIERpcmVjdGlvbi5Ob3J0aClcIj48L3NwYW4+XG48c3BhblxuICAgIGNsYXNzPVwicG9pbnQgbm9ydGgtZWFzdFwiXG4gICAgKG1vdXNlZG93bik9XCJvblN0YXJ0UmVzaXppbmcoJGV2ZW50LCBEaXJlY3Rpb24uTm9ydGhFYXN0KVwiPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJwb2ludCBlYXN0XCJcbiAgICAobW91c2Vkb3duKT1cIm9uU3RhcnRSZXNpemluZygkZXZlbnQsIERpcmVjdGlvbi5FYXN0KVwiPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJwb2ludCBzb3V0aC1lYXN0XCJcbiAgICAobW91c2Vkb3duKT1cIm9uU3RhcnRSZXNpemluZygkZXZlbnQsIERpcmVjdGlvbi5Tb3V0aEVhc3QpXCI+PC9zcGFuPlxuPHNwYW5cbiAgICBjbGFzcz1cInBvaW50IHNvdXRoXCJcbiAgICAobW91c2Vkb3duKT1cIm9uU3RhcnRSZXNpemluZygkZXZlbnQsIERpcmVjdGlvbi5Tb3V0aClcIj48L3NwYW4+XG48c3BhblxuICAgIGNsYXNzPVwicG9pbnQgc291dGgtd2VzdFwiXG4gICAgKG1vdXNlZG93bik9XCJvblN0YXJ0UmVzaXppbmcoJGV2ZW50LCBEaXJlY3Rpb24uU291dGhXZXN0KVwiPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJwb2ludCB3ZXN0XCJcbiAgICAobW91c2Vkb3duKT1cIm9uU3RhcnRSZXNpemluZygkZXZlbnQsIERpcmVjdGlvbi5XZXN0KVwiPjwvc3Bhbj5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS1kZWx0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2VkaXRvci9jb21wb25lbnRzL2ltYWdlL3Jlc2l6ZXIvc2l6ZS1kZWx0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTaXplRGVsdGEge1xuICAgIHJlYWRvbmx5IGRlbHRhWDogbnVtYmVyO1xuICAgIHJlYWRvbmx5IGRlbHRhWTogbnVtYmVyO1xufVxuIl19
@@ -0,0 +1,52 @@
1
+ export class SizeWrapper {
2
+ get width() {
3
+ return this._width;
4
+ }
5
+ get height() {
6
+ return this._height;
7
+ }
8
+ constructor(size, minSize) {
9
+ this.minSize = minSize;
10
+ if (minSize && (size.width < minSize.width || size.height < minSize.height)) {
11
+ throw new Error('Passed size is smaller than minimum size');
12
+ }
13
+ this._height = size.height;
14
+ this._width = size.width;
15
+ this.aspectRatio = this._width / this._height;
16
+ }
17
+ applyDelta(delta) {
18
+ this.applyDeltaX(delta);
19
+ this.applyDeltaY(delta);
20
+ }
21
+ applyDeltaX(delta) {
22
+ this._width = this.getAllowedWidth(this._width + delta.deltaX);
23
+ }
24
+ applyDeltaY(delta) {
25
+ this._height = this.getAllowedHeight(this._height + delta.deltaY);
26
+ }
27
+ fitProportionallyTo(size) {
28
+ const widthDiff = size._width - this._width;
29
+ const heightDiff = size._height - this._height;
30
+ if (widthDiff > heightDiff) {
31
+ this._width = this.getAllowedWidth(size.width);
32
+ this._height = Math.floor(this._width / this.aspectRatio);
33
+ return;
34
+ }
35
+ this._height = this.getAllowedHeight(size.height);
36
+ this._width = Math.floor(this._height * this.aspectRatio);
37
+ }
38
+ fitTo(size) {
39
+ this._width = this.getAllowedWidth(size.width);
40
+ this._height = this.getAllowedHeight(size.height);
41
+ }
42
+ toSize() {
43
+ return { width: this._width, height: this._height };
44
+ }
45
+ getAllowedWidth(value) {
46
+ return !this.minSize ? value : Math.max(value, this.minSize.width);
47
+ }
48
+ getAllowedHeight(value) {
49
+ return !this.minSize ? value : Math.max(value, this.minSize.height);
50
+ }
51
+ }
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS13cmFwcGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL2NvbXBvbmVudHMvaW1hZ2UvcmVzaXplci9zaXplLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLFdBQVc7SUFJcEIsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFHRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksSUFBVSxFQUFtQixPQUFjO1FBQWQsWUFBTyxHQUFQLE9BQU8sQ0FBTztRQUNuRCxJQUFJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN6RSxNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7U0FDL0Q7UUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ2xELENBQUM7SUFFRCxVQUFVLENBQUMsS0FBZ0I7UUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBZ0I7UUFDeEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBZ0I7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELG1CQUFtQixDQUFDLElBQWlCO1FBQ2pDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM1QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDL0MsSUFBSSxTQUFTLEdBQUcsVUFBVSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFELE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFpQjtRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsTUFBTTtRQUNGLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFTyxlQUFlLENBQUMsS0FBYTtRQUNqQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxLQUFhO1FBQ2xDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEUsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2l6ZSB9IGZyb20gJy4uL3NpemUnO1xuaW1wb3J0IHsgU2l6ZURlbHRhIH0gZnJvbSAnLi9zaXplLWRlbHRhJztcblxuZXhwb3J0IGNsYXNzIFNpemVXcmFwcGVyIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFzcGVjdFJhdGlvOiBudW1iZXI7XG5cbiAgICBwcml2YXRlIF93aWR0aDogbnVtYmVyO1xuICAgIGdldCB3aWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fd2lkdGg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaGVpZ2h0OiBudW1iZXI7XG4gICAgZ2V0IGhlaWdodCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5faGVpZ2h0O1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHNpemU6IFNpemUsIHByaXZhdGUgcmVhZG9ubHkgbWluU2l6ZT86IFNpemUpIHtcbiAgICAgICAgaWYgKG1pblNpemUgJiYgKHNpemUud2lkdGggPCBtaW5TaXplLndpZHRoIHx8IHNpemUuaGVpZ2h0IDwgbWluU2l6ZS5oZWlnaHQpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Bhc3NlZCBzaXplIGlzIHNtYWxsZXIgdGhhbiBtaW5pbXVtIHNpemUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2hlaWdodCA9IHNpemUuaGVpZ2h0O1xuICAgICAgICB0aGlzLl93aWR0aCA9IHNpemUud2lkdGg7XG4gICAgICAgIHRoaXMuYXNwZWN0UmF0aW8gPSB0aGlzLl93aWR0aCAvIHRoaXMuX2hlaWdodDtcbiAgICB9XG5cbiAgICBhcHBseURlbHRhKGRlbHRhOiBTaXplRGVsdGEpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hcHBseURlbHRhWChkZWx0YSk7XG4gICAgICAgIHRoaXMuYXBwbHlEZWx0YVkoZGVsdGEpO1xuICAgIH1cblxuICAgIGFwcGx5RGVsdGFYKGRlbHRhOiBTaXplRGVsdGEpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fd2lkdGggPSB0aGlzLmdldEFsbG93ZWRXaWR0aCh0aGlzLl93aWR0aCArIGRlbHRhLmRlbHRhWCk7XG4gICAgfVxuXG4gICAgYXBwbHlEZWx0YVkoZGVsdGE6IFNpemVEZWx0YSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9oZWlnaHQgPSB0aGlzLmdldEFsbG93ZWRIZWlnaHQodGhpcy5faGVpZ2h0ICsgZGVsdGEuZGVsdGFZKTtcbiAgICB9XG5cbiAgICBmaXRQcm9wb3J0aW9uYWxseVRvKHNpemU6IFNpemVXcmFwcGVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHdpZHRoRGlmZiA9IHNpemUuX3dpZHRoIC0gdGhpcy5fd2lkdGg7XG4gICAgICAgIGNvbnN0IGhlaWdodERpZmYgPSBzaXplLl9oZWlnaHQgLSB0aGlzLl9oZWlnaHQ7XG4gICAgICAgIGlmICh3aWR0aERpZmYgPiBoZWlnaHREaWZmKSB7XG4gICAgICAgICAgICB0aGlzLl93aWR0aCA9IHRoaXMuZ2V0QWxsb3dlZFdpZHRoKHNpemUud2lkdGgpO1xuICAgICAgICAgICAgdGhpcy5faGVpZ2h0ID0gTWF0aC5mbG9vcih0aGlzLl93aWR0aCAvIHRoaXMuYXNwZWN0UmF0aW8pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5faGVpZ2h0ID0gdGhpcy5nZXRBbGxvd2VkSGVpZ2h0KHNpemUuaGVpZ2h0KTtcbiAgICAgICAgdGhpcy5fd2lkdGggPSBNYXRoLmZsb29yKHRoaXMuX2hlaWdodCAqIHRoaXMuYXNwZWN0UmF0aW8pO1xuICAgIH1cblxuICAgIGZpdFRvKHNpemU6IFNpemVXcmFwcGVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3dpZHRoID0gdGhpcy5nZXRBbGxvd2VkV2lkdGgoc2l6ZS53aWR0aCk7XG4gICAgICAgIHRoaXMuX2hlaWdodCA9IHRoaXMuZ2V0QWxsb3dlZEhlaWdodChzaXplLmhlaWdodCk7XG4gICAgfVxuXG4gICAgdG9TaXplKCk6IFNpemUge1xuICAgICAgICByZXR1cm4geyB3aWR0aDogdGhpcy5fd2lkdGgsIGhlaWdodDogdGhpcy5faGVpZ2h0IH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBbGxvd2VkV2lkdGgodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAhdGhpcy5taW5TaXplID8gdmFsdWUgOiBNYXRoLm1heCh2YWx1ZSwgdGhpcy5taW5TaXplLndpZHRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEFsbG93ZWRIZWlnaHQodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAhdGhpcy5taW5TaXplID8gdmFsdWUgOiBNYXRoLm1heCh2YWx1ZSwgdGhpcy5taW5TaXplLmhlaWdodCk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2VkaXRvci9jb21wb25lbnRzL2ltYWdlL3NpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgU2l6ZSB7XG4gICAgcmVhZG9ubHkgd2lkdGg6IG51bWJlcjtcbiAgICByZWFkb25seSBoZWlnaHQ6IG51bWJlcjtcbn1cbiJdfQ==
@@ -0,0 +1,59 @@
1
+ import { ChangeDetectorRef, Directive, HostBinding, inject, Input } from '@angular/core';
2
+ import { DestroyComponent } from './destroy.component';
3
+ import * as i0 from "@angular/core";
4
+ export class BaseNoderComponent extends DestroyComponent {
5
+ constructor() {
6
+ super(...arguments);
7
+ this._isFocused = false;
8
+ this.cdr = inject(ChangeDetectorRef);
9
+ }
10
+ get focused() {
11
+ return this._isFocused;
12
+ }
13
+ get insertIndex() {
14
+ return this.content.insertIndex;
15
+ }
16
+ set insertIndex(val) {
17
+ this.content.insertIndex = val;
18
+ }
19
+ get height() {
20
+ return this._height;
21
+ }
22
+ get width() {
23
+ return this._width;
24
+ }
25
+ get isFocused() {
26
+ return this._isFocused;
27
+ }
28
+ focus() {
29
+ this._isFocused = true;
30
+ this.cdr.markForCheck();
31
+ }
32
+ blur() {
33
+ this._isFocused = false;
34
+ this.cdr.markForCheck();
35
+ }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BaseNoderComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
37
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: BaseNoderComponent, inputs: { content: "content", sessionId: "sessionId", contentWidth: "contentWidth", generalProperties: "generalProperties" }, host: { properties: { "class.focused": "this.focused", "attr.data-session-id": "this.sessionId", "attr.data-insert-index": "this.insertIndex" } }, usesInheritance: true, ngImport: i0 }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BaseNoderComponent, decorators: [{
40
+ type: Directive
41
+ }], propDecorators: { focused: [{
42
+ type: HostBinding,
43
+ args: ['class.focused']
44
+ }], content: [{
45
+ type: Input
46
+ }], sessionId: [{
47
+ type: Input
48
+ }, {
49
+ type: HostBinding,
50
+ args: ['attr.data-session-id']
51
+ }], insertIndex: [{
52
+ type: HostBinding,
53
+ args: ['attr.data-insert-index']
54
+ }], contentWidth: [{
55
+ type: Input
56
+ }], generalProperties: [{
57
+ type: Input
58
+ }] } });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9zaGFyZWQvYWJzdHJhY3QvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd6RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFJdkQsTUFBTSxPQUFnQixrQkFBbUIsU0FBUSxnQkFBZ0I7SUFEakU7O1FBc0NjLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFLVixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FhdEQ7SUF0REcsSUFDSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUFTRCxJQUNJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLFdBQVcsQ0FBQyxHQUFXO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQztJQUNuQyxDQUFDO0lBU0QsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFHRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUdELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBTUQsS0FBSztRQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUk7UUFDQSxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBdERpQixrQkFBa0I7bUdBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFEdkMsU0FBUzs4QkFHRixPQUFPO3NCQURWLFdBQVc7dUJBQUMsZUFBZTtnQkFNNUIsT0FBTztzQkFETixLQUFLO2dCQUtOLFNBQVM7c0JBRlIsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBSS9CLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBU3JDLFlBQVk7c0JBRFgsS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgaW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDdXN0b21Db250ZW50IH0gZnJvbSAnLi4vY3VzdG9tLWNvbnRlbnQnO1xuaW1wb3J0IHsgRGVzdHJveUNvbXBvbmVudCB9IGZyb20gJy4vZGVzdHJveS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2VuZXJhbFByb3BlcnRpZXNNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2NvbnRlbnQvZGlzcGxheS1kYXRhL2dlbmVyYWwtcHJvcGVydGllcy5tb2RlbCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VOb2RlckNvbXBvbmVudCBleHRlbmRzIERlc3Ryb3lDb21wb25lbnQge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZm9jdXNlZCcpXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0ZvY3VzZWQ7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBjb250ZW50OiBDdXN0b21Db250ZW50O1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zZXNzaW9uLWlkJylcbiAgICBzZXNzaW9uSWQ6IG51bWJlcjtcblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWluc2VydC1pbmRleCcpXG4gICAgZ2V0IGluc2VydEluZGV4KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnQuaW5zZXJ0SW5kZXg7XG4gICAgfVxuICAgIHNldCBpbnNlcnRJbmRleCh2YWw6IG51bWJlcikge1xuICAgICAgICB0aGlzLmNvbnRlbnQuaW5zZXJ0SW5kZXggPSB2YWw7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBjb250ZW50V2lkdGg6IG51bWJlcjtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2VuZXJhbFByb3BlcnRpZXM6IEdlbmVyYWxQcm9wZXJ0aWVzTW9kZWw7XG5cbiAgICBwcm90ZWN0ZWQgX2hlaWdodDogbnVtYmVyO1xuICAgIGdldCBoZWlnaHQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hlaWdodDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX3dpZHRoOiBudW1iZXI7XG4gICAgZ2V0IHdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl93aWR0aDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2lzRm9jdXNlZCA9IGZhbHNlO1xuICAgIGdldCBpc0ZvY3VzZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0ZvY3VzZWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICBhYnN0cmFjdCBpbml0aWFsaXplKCk6IHZvaWQ7XG5cbiAgICBmb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faXNGb2N1c2VkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgYmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Directive } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class DestroyComponent {
5
+ constructor() {
6
+ this.destroy$ = new Subject();
7
+ }
8
+ ngOnDestroy() {
9
+ this.destroy$.next(true);
10
+ this.destroy$.complete();
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DestroyComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: DestroyComponent, ngImport: i0 }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DestroyComponent, decorators: [{
16
+ type: Directive
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzdHJveS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9zaGFyZWQvYWJzdHJhY3QvZGVzdHJveS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcvQixNQUFNLE9BQWdCLGdCQUFnQjtJQUR0QztRQUVJLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0tBTXJDO0lBSkcsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQzsrR0FOaUIsZ0JBQWdCO21HQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBRHJDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEZXN0cm95Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,43 @@
1
+ export class CustomComponentHelper {
2
+ static applyRemovingComponents(components, startIndex, endIndex) {
3
+ let firstRemovingIndex = null;
4
+ let deleteCount = 0;
5
+ components.forEach((x, index) => {
6
+ if (x.instance.insertIndex >= startIndex && x.instance.insertIndex <= endIndex) {
7
+ if (firstRemovingIndex === null) {
8
+ firstRemovingIndex = index;
9
+ }
10
+ deleteCount++;
11
+ x.destroy();
12
+ }
13
+ });
14
+ components.splice(firstRemovingIndex, deleteCount);
15
+ }
16
+ static applyRemovingOrReplacingToComponents(components, distance, symbolDifference, contents) {
17
+ if (!components.length) {
18
+ return;
19
+ }
20
+ const firstRemovingContentIndex = components.findIndex(x => x.instance.insertIndex >= distance.start);
21
+ if (firstRemovingContentIndex < 0) {
22
+ return;
23
+ }
24
+ let lastRemovingContentIndex = components.length - 1;
25
+ while (lastRemovingContentIndex >= 0) {
26
+ if (components[lastRemovingContentIndex].instance.insertIndex <= distance.selectionEnd) {
27
+ break;
28
+ }
29
+ components[lastRemovingContentIndex].instance.insertIndex += symbolDifference;
30
+ lastRemovingContentIndex--;
31
+ }
32
+ const deleteCount = lastRemovingContentIndex - firstRemovingContentIndex + 1;
33
+ const removedComponents = components.splice(firstRemovingContentIndex, deleteCount);
34
+ removedComponents.forEach(x => {
35
+ const index = contents.findIndex(y => y.insertIndex === x.instance.insertIndex);
36
+ if (index > -1) {
37
+ contents.splice(index, 1);
38
+ }
39
+ x.destroy();
40
+ });
41
+ }
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNvbXBvbmVudC5oZXBsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9zaGFyZWQvY3VzdG9tLWNvbXBvbmVudC5oZXBsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixNQUFNLENBQUMsdUJBQXVCLENBQUMsVUFBOEMsRUFBRSxVQUFrQixFQUFFLFFBQWdCO1FBQy9HLElBQUksa0JBQWtCLEdBQWtCLElBQUksQ0FBQztRQUM3QyxJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDcEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUM1QixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLFVBQVUsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsSUFBSSxRQUFRLEVBQUU7Z0JBQzVFLElBQUksa0JBQWtCLEtBQUssSUFBSSxFQUFFO29CQUM3QixrQkFBa0IsR0FBRyxLQUFLLENBQUM7aUJBQzlCO2dCQUVELFdBQVcsRUFBRSxDQUFDO2dCQUNkLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUNmO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxVQUFVLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxNQUFNLENBQUMsb0NBQW9DLENBQ3ZDLFVBQThDLEVBQzlDLFFBQXVCLEVBQ3ZCLGdCQUF3QixFQUN4QixRQUF5QjtRQUV6QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUNwQixPQUFPO1NBQ1Y7UUFFRCxNQUFNLHlCQUF5QixHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEcsSUFBSSx5QkFBeUIsR0FBRyxDQUFDLEVBQUU7WUFDL0IsT0FBTztTQUNWO1FBRUQsSUFBSSx3QkFBd0IsR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUVyRCxPQUFPLHdCQUF3QixJQUFJLENBQUMsRUFBRTtZQUNsQyxJQUFJLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRTtnQkFDcEYsTUFBTTthQUNUO1lBRUQsVUFBVSxDQUFDLHdCQUF3QixDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsSUFBSSxnQkFBZ0IsQ0FBQztZQUM5RSx3QkFBd0IsRUFBRSxDQUFDO1NBQzlCO1FBRUQsTUFBTSxXQUFXLEdBQUcsd0JBQXdCLEdBQUcseUJBQXlCLEdBQUcsQ0FBQyxDQUFDO1FBQzdFLE1BQU0saUJBQWlCLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNwRixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDMUIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNoRixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRTtnQkFDWixRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQzthQUM3QjtZQUVELENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCYXNlTm9kZXJDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0L2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbUNvbnRlbnQgfSBmcm9tICcuL2N1c3RvbS1jb250ZW50JztcbmltcG9ydCB7IERpc3RhbmNlTW9kZWwgfSBmcm9tICcuLi8uLi9leGVjdXRpb24vZGlzdGFuY2UubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgQ3VzdG9tQ29tcG9uZW50SGVscGVyIHtcbiAgICBzdGF0aWMgYXBwbHlSZW1vdmluZ0NvbXBvbmVudHMoY29tcG9uZW50czogQ29tcG9uZW50UmVmPEJhc2VOb2RlckNvbXBvbmVudD5bXSwgc3RhcnRJbmRleDogbnVtYmVyLCBlbmRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGxldCBmaXJzdFJlbW92aW5nSW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICAgICAgICBsZXQgZGVsZXRlQ291bnQgPSAwO1xuICAgICAgICBjb21wb25lbnRzLmZvckVhY2goKHgsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBpZiAoeC5pbnN0YW5jZS5pbnNlcnRJbmRleCA+PSBzdGFydEluZGV4ICYmIHguaW5zdGFuY2UuaW5zZXJ0SW5kZXggPD0gZW5kSW5kZXgpIHtcbiAgICAgICAgICAgICAgICBpZiAoZmlyc3RSZW1vdmluZ0luZGV4ID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpcnN0UmVtb3ZpbmdJbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGRlbGV0ZUNvdW50Kys7XG4gICAgICAgICAgICAgICAgeC5kZXN0cm95KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbXBvbmVudHMuc3BsaWNlKGZpcnN0UmVtb3ZpbmdJbmRleCwgZGVsZXRlQ291bnQpO1xuICAgIH1cblxuICAgIHN0YXRpYyBhcHBseVJlbW92aW5nT3JSZXBsYWNpbmdUb0NvbXBvbmVudHMoXG4gICAgICAgIGNvbXBvbmVudHM6IENvbXBvbmVudFJlZjxCYXNlTm9kZXJDb21wb25lbnQ+W10sXG4gICAgICAgIGRpc3RhbmNlOiBEaXN0YW5jZU1vZGVsLFxuICAgICAgICBzeW1ib2xEaWZmZXJlbmNlOiBudW1iZXIsXG4gICAgICAgIGNvbnRlbnRzOiBDdXN0b21Db250ZW50W11cbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjb21wb25lbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlyc3RSZW1vdmluZ0NvbnRlbnRJbmRleCA9IGNvbXBvbmVudHMuZmluZEluZGV4KHggPT4geC5pbnN0YW5jZS5pbnNlcnRJbmRleCA+PSBkaXN0YW5jZS5zdGFydCk7XG5cbiAgICAgICAgaWYgKGZpcnN0UmVtb3ZpbmdDb250ZW50SW5kZXggPCAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbGFzdFJlbW92aW5nQ29udGVudEluZGV4ID0gY29tcG9uZW50cy5sZW5ndGggLSAxO1xuXG4gICAgICAgIHdoaWxlIChsYXN0UmVtb3ZpbmdDb250ZW50SW5kZXggPj0gMCkge1xuICAgICAgICAgICAgaWYgKGNvbXBvbmVudHNbbGFzdFJlbW92aW5nQ29udGVudEluZGV4XS5pbnN0YW5jZS5pbnNlcnRJbmRleCA8PSBkaXN0YW5jZS5zZWxlY3Rpb25FbmQpIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29tcG9uZW50c1tsYXN0UmVtb3ZpbmdDb250ZW50SW5kZXhdLmluc3RhbmNlLmluc2VydEluZGV4ICs9IHN5bWJvbERpZmZlcmVuY2U7XG4gICAgICAgICAgICBsYXN0UmVtb3ZpbmdDb250ZW50SW5kZXgtLTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRlbGV0ZUNvdW50ID0gbGFzdFJlbW92aW5nQ29udGVudEluZGV4IC0gZmlyc3RSZW1vdmluZ0NvbnRlbnRJbmRleCArIDE7XG4gICAgICAgIGNvbnN0IHJlbW92ZWRDb21wb25lbnRzID0gY29tcG9uZW50cy5zcGxpY2UoZmlyc3RSZW1vdmluZ0NvbnRlbnRJbmRleCwgZGVsZXRlQ291bnQpO1xuICAgICAgICByZW1vdmVkQ29tcG9uZW50cy5mb3JFYWNoKHggPT4ge1xuICAgICAgICAgICAgY29uc3QgaW5kZXggPSBjb250ZW50cy5maW5kSW5kZXgoeSA9PiB5Lmluc2VydEluZGV4ID09PSB4Lmluc3RhbmNlLmluc2VydEluZGV4KTtcbiAgICAgICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICAgICAgY29udGVudHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgeC5kZXN0cm95KCk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNvbXBvbmVudHMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL2NvbXBvbmVudHMvc2hhcmVkL2N1c3RvbS1jb21wb25lbnRzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJhc2VOb2RlckNvbXBvbmVudCB9IGZyb20gJy4vYWJzdHJhY3QvYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWRnZXMgfSBmcm9tICcuLi9lZGdlcy9lZGdlcyc7XG5pbXBvcnQgeyBOb2RlckltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vaW1hZ2UvY29tcG9uZW50cy9pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm9kZXJUYWJDb21wb25lbnQgfSBmcm9tICcuLi90YWIvdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlclRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vdGFibGUvY29tcG9uZW50cy90YWJsZS5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDdXN0b21Db21wb25lbnRzIHtcbiAgICBpbWFnZXM6IENvbXBvbmVudFJlZjxOb2RlckltYWdlQ29tcG9uZW50PltdO1xuICAgIHRhYmxlczogQ29tcG9uZW50UmVmPE5vZGVyVGFibGVDb21wb25lbnQ+W107XG4gICAgdGFiczogQ29tcG9uZW50UmVmPE5vZGVyVGFiQ29tcG9uZW50PltdO1xuICAgIGN1c3RvbUVsZW1lbnRzOiBDb21wb25lbnRSZWY8QmFzZU5vZGVyQ29tcG9uZW50PltdO1xuICAgIGVkZ2VzPzogRWRnZXM7XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export const CUSTOM_ELEMENT_MARKER = '*';
2
+ export const TABLE_MARKER = '#';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNvbnRlbnQtbWFya2Vycy5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2VkaXRvci9jb21wb25lbnRzL3NoYXJlZC9jdXN0b20tY29udGVudC1tYXJrZXJzLmNvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLEdBQUcsQ0FBQztBQUN6QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IENVU1RPTV9FTEVNRU5UX01BUktFUiA9ICcqJztcbmV4cG9ydCBjb25zdCBUQUJMRV9NQVJLRVIgPSAnIyc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9zaGFyZWQvY3VzdG9tLWNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvZWxlbWVudC5tb2RlbCc7XG5pbXBvcnQgeyBJbWFnZU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dlbmVyYXRlZC9pbWFnZS5tb2RlbCc7XG5pbXBvcnQgeyBUYWJsZU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2dlbmVyYXRlZC90YWJsZS5tb2RlbCc7XG5pbXBvcnQgeyBUYWJNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvdGFiLm1vZGVsJztcblxuZXhwb3J0IHR5cGUgQ3VzdG9tQ29udGVudCA9IEltYWdlTW9kZWwgfCBUYWJsZU1vZGVsIHwgRWxlbWVudE1vZGVsIHwgVGFiTW9kZWw7XG4iXX0=