@talrace/ngx-noder 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (647) hide show
  1. package/README.md +75 -66
  2. package/esm2022/lib/apart-components/add-link-dialog/add-link-dialog.component.mjs +61 -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 +111 -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 +55 -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 +108 -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 +38 -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 +163 -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 +401 -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 +18 -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 +366 -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 +62 -0
  89. package/esm2022/lib/editor/content/contents.interface.mjs +2 -0
  90. package/esm2022/lib/editor/content/display-data/display-token.model.mjs +12 -0
  91. package/esm2022/lib/editor/content/display-data/document.mjs +134 -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/pages.wrap.mjs +226 -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 +52 -0
  100. package/esm2022/lib/editor/content/display-data/text-line-info.mjs +34 -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 +96 -0
  103. package/esm2022/lib/{+shared/editor → editor/content}/helpers/format.helper.mjs +1 -1
  104. package/esm2022/lib/{+shared/editor → editor/content}/helpers/indexed-element.helper.mjs +1 -1
  105. package/esm2022/lib/editor/content/helpers/scaling.helper.mjs +9 -0
  106. package/esm2022/lib/editor/content/margin.model.mjs +16 -0
  107. package/esm2022/lib/editor/content/page-vertical-data.model.mjs +9 -0
  108. package/esm2022/lib/{+shared/editor/core/enums → editor/content}/vertical-alignment.enum.mjs +1 -1
  109. package/esm2022/lib/editor/core/event-emitting.mjs +56 -0
  110. package/esm2022/lib/editor/display/cell.interface.mjs +2 -0
  111. package/esm2022/lib/editor/display/event.helper.mjs +18 -0
  112. package/esm2022/lib/editor/display/layers/cursor.layer.mjs +101 -0
  113. package/esm2022/lib/editor/display/layers/layer.config.mjs +2 -0
  114. package/esm2022/lib/editor/display/layers/pages.layer.mjs +97 -0
  115. package/esm2022/lib/editor/display/layers/print.pages.layer.mjs +7 -0
  116. package/esm2022/lib/editor/display/layers/print.text.layer.mjs +7 -0
  117. package/esm2022/lib/editor/display/layers/selection.layer.mjs +113 -0
  118. package/esm2022/lib/editor/display/layers/text.layer.mjs +203 -0
  119. package/esm2022/lib/editor/display/print/print.helper.mjs +40 -0
  120. package/esm2022/lib/editor/display/print/print.renderer.mjs +67 -0
  121. package/esm2022/lib/editor/display/print/print.rendering.helper.mjs +7 -0
  122. package/esm2022/lib/editor/display/render-changes.interface.mjs +2 -0
  123. package/esm2022/lib/editor/display/render-changes.model.mjs +25 -0
  124. package/esm2022/lib/editor/display/renderer.mjs +206 -0
  125. package/esm2022/lib/editor/display/rendering.helper.mjs +187 -0
  126. package/esm2022/lib/editor/display/renderloop.mjs +26 -0
  127. package/esm2022/lib/editor/display/virtual.renderer.mjs +317 -0
  128. package/esm2022/lib/editor/display/visible-range.interface.mjs +2 -0
  129. package/esm2022/lib/editor/editor.module.mjs +67 -0
  130. package/esm2022/lib/editor/execution/distance.model.mjs +10 -0
  131. package/esm2022/lib/editor/execution/edit.session.mjs +1117 -0
  132. package/esm2022/lib/editor/execution/editor.mjs +1346 -0
  133. package/esm2022/lib/editor/execution/helpers/delta.helper.mjs +18 -0
  134. package/esm2022/lib/editor/execution/helpers/dom.helper.mjs +42 -0
  135. package/esm2022/lib/editor/execution/helpers/format-style.helper.mjs +64 -0
  136. package/esm2022/lib/editor/execution/helpers/page.helper.mjs +12 -0
  137. package/esm2022/lib/editor/execution/helpers/paragraph-style.helper.mjs +41 -0
  138. package/esm2022/lib/editor/execution/helpers/paragraph.helper.mjs +169 -0
  139. package/esm2022/lib/editor/execution/regulator.service.mjs +198 -0
  140. package/esm2022/lib/editor/execution/targeting/cell-session-source.model.mjs +19 -0
  141. package/esm2022/lib/editor/execution/targeting/edge-session-source.model.mjs +15 -0
  142. package/esm2022/lib/editor/execution/targeting/main-session-source.model.mjs +8 -0
  143. package/esm2022/lib/editor/execution/targeting/session-source.model.mjs +3 -0
  144. package/esm2022/lib/editor/execution/targeting/session.model.mjs +10 -0
  145. package/esm2022/lib/editor/gadgets/font-metrics/editor-version.const.mjs +2 -0
  146. package/esm2022/lib/editor/gadgets/font-metrics/font-metric-size.interface.mjs +2 -0
  147. package/esm2022/lib/editor/gadgets/font-metrics/font-metrics.helper.mjs +88 -0
  148. package/esm2022/lib/editor/gadgets/history/operation-history.mjs +206 -0
  149. package/esm2022/lib/editor/gadgets/history/operation.type.mjs +2 -0
  150. package/esm2022/lib/editor/gadgets/history/operations-history-info.model.mjs +7 -0
  151. package/esm2022/lib/editor/gadgets/numbering/numbering-data.model.mjs +9 -0
  152. package/esm2022/lib/{+shared/editor/core/enums → editor/gadgets/numbering}/numbering-marker-type.enum.mjs +1 -1
  153. package/esm2022/lib/editor/gadgets/numbering/numbering.helper.mjs +82 -0
  154. package/esm2022/lib/editor/gadgets/page-break/break-types.enum.mjs +7 -0
  155. package/esm2022/lib/editor/gadgets/page-break/break.helper.mjs +18 -0
  156. package/esm2022/lib/editor/gadgets/scrollbar.mjs +81 -0
  157. package/esm2022/lib/editor/gadgets/search/replace.interface.mjs +2 -0
  158. package/esm2022/lib/editor/gadgets/search/search-iteration.interface.mjs +2 -0
  159. package/esm2022/lib/editor/gadgets/search/search.mjs +231 -0
  160. package/esm2022/lib/editor/gadgets/unicode/unicode-chars.const.mjs +5 -0
  161. package/esm2022/lib/editor/gadgets/unicode/unicode.helper.mjs +20 -0
  162. package/esm2022/lib/editor/interaction/base.handler.mjs +19 -0
  163. package/esm2022/lib/editor/interaction/document.handler.mjs +27 -0
  164. package/esm2022/lib/editor/interaction/editor.service.mjs +325 -0
  165. package/esm2022/lib/editor/interaction/input.handler.mjs +149 -0
  166. package/esm2022/lib/{+shared/enums → editor/interaction}/mode.enum.mjs +1 -1
  167. package/esm2022/lib/editor/interaction/mouse-button.enum.mjs +7 -0
  168. package/esm2022/lib/editor/interaction/mouse.handler.mjs +49 -0
  169. package/esm2022/lib/editor/interaction/text-input.mjs +53 -0
  170. package/esm2022/lib/editor/operations/commands.service.mjs +20 -0
  171. package/esm2022/lib/editor/operations/enums/command-type.enum.mjs +32 -0
  172. package/esm2022/lib/editor/operations/enums/target-type.enum.mjs +7 -0
  173. package/esm2022/lib/editor/operations/helpers/break-operations.helper.mjs +9 -0
  174. package/esm2022/lib/editor/operations/helpers/content-operations.helper.mjs +15 -0
  175. package/esm2022/lib/editor/operations/helpers/format-operations.helper.mjs +55 -0
  176. package/esm2022/lib/editor/operations/helpers/image-operations.helper.mjs +19 -0
  177. package/esm2022/lib/editor/operations/helpers/indexed-element-operations.helper.mjs +43 -0
  178. package/esm2022/lib/editor/operations/helpers/link-operations.helper.mjs +28 -0
  179. package/esm2022/lib/editor/operations/helpers/numbering-operations.helper.mjs +55 -0
  180. package/esm2022/lib/editor/operations/helpers/paragraph-operations.helper.mjs +114 -0
  181. package/esm2022/lib/editor/operations/helpers/tab-operations.helper.mjs +16 -0
  182. package/esm2022/lib/editor/operations/helpers/table-operations.helper.mjs +374 -0
  183. package/esm2022/lib/editor/operations/operations-helper.helper.mjs +432 -0
  184. package/esm2022/lib/editor/operations/save-commands.helper.mjs +127 -0
  185. package/esm2022/lib/editor/operations/target-operations.helper.mjs +23 -0
  186. package/esm2022/lib/editor/positioning/alignments.const.mjs +8 -0
  187. package/esm2022/lib/editor/positioning/content.helper.mjs +36 -0
  188. package/esm2022/lib/editor/positioning/cursor-paragraph.mjs +13 -0
  189. package/esm2022/lib/editor/positioning/cursor-position.interface.mjs +2 -0
  190. package/esm2022/lib/editor/positioning/insert-index.interface.mjs +2 -0
  191. package/esm2022/lib/editor/positioning/line-width.helper.mjs +13 -0
  192. package/esm2022/lib/editor/positioning/position.helper.mjs +194 -0
  193. package/esm2022/lib/editor/positioning/range.mjs +94 -0
  194. package/esm2022/lib/editor/positioning/selection.mjs +307 -0
  195. package/esm2022/lib/editor/revision.helper.mjs +91 -0
  196. package/esm2022/lib/models/generated/cell.model.mjs +1 -1
  197. package/esm2022/lib/models/generated/command.model.mjs +5 -1
  198. package/esm2022/lib/models/generated/insert-paragraph.model.mjs +20 -0
  199. package/esm2022/lib/models/generated/replace.model.mjs +5 -1
  200. package/esm2022/public-api.mjs +37 -31
  201. package/fesm2022/talrace-ngx-noder.mjs +3398 -2731
  202. package/fesm2022/talrace-ngx-noder.mjs.map +1 -1
  203. package/lib/apart-components/add-link-dialog/add-link-dialog.component.d.ts +27 -0
  204. package/lib/apart-components/add-link-dialog/validation.helper.d.ts +5 -0
  205. package/lib/apart-components/add-link-mobile/add-link-mobile.component.d.ts +19 -0
  206. package/lib/{+shared → apart-components}/confirm-dialog/confirm-dialog.component.d.ts +2 -1
  207. package/lib/{+shared → apart-components}/editor-search/editor-search-dialog.component.d.ts +6 -7
  208. package/lib/apart-components/editor-title/editor-title.component.d.ts +25 -0
  209. package/lib/apart-components/editor-title-mobile/editor-title-mobile.component.d.ts +6 -0
  210. package/lib/apart-components/editor-toolbar/components/base-toolbar.component.d.ts +49 -0
  211. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/color-picker/color-picker.component.d.ts +1 -1
  212. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font/font.component.d.ts +2 -2
  213. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-size/font-size.component.d.ts +1 -1
  214. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/font-style/font-style.component.d.ts +1 -1
  215. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/format/format.component.d.ts +2 -2
  216. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/heading/heading.component.d.ts +1 -1
  217. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/numbering/numbering.component.d.ts +3 -3
  218. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/print/print.component.d.ts +1 -1
  219. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/undo-redo/undo-redo.component.d.ts +1 -1
  220. package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/components/buttons}/zoom/zoom.component.d.ts +1 -1
  221. package/lib/apart-components/editor-toolbar/components/menu-dropdowns/menu-dropdowns.component.d.ts +36 -0
  222. package/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/menu-dropdowns-mobile.component.d.ts +14 -0
  223. package/lib/apart-components/editor-toolbar/components/toolbar-actions/toolbar-actions.component.d.ts +23 -0
  224. package/lib/apart-components/editor-toolbar/editor-mobile-toolbar/editor-mobile-toolbar.component.d.ts +26 -0
  225. package/lib/apart-components/editor-toolbar/editor-toolbar/editor-toolbar.component.d.ts +40 -0
  226. package/lib/apart-components/editor-toolbar/editor-toolbar.module.d.ts +32 -0
  227. package/lib/apart-components/editor-toolbar/shared/constants/editor-toolbar-modes.const.d.ts +2 -0
  228. package/lib/apart-components/editor-toolbar/shared/constants/numbering-templates.const.d.ts +6 -0
  229. package/lib/apart-components/editor-toolbar/shared/enums/editor-toolbar-mode.enum.d.ts +9 -0
  230. package/lib/apart-components/editor-toolbar/shared/services/editor-toolbar.service.d.ts +14 -0
  231. package/lib/apart-components/editor-toolbar/shared/services/toolbar-core.service.d.ts +38 -0
  232. package/lib/{+shared/editor-toolbar/helpers → apart-components/editor-toolbar/shared}/toolbar-styles.helper.d.ts +2 -2
  233. package/lib/{+shared → apart-components}/insert-table/insert-table.component.d.ts +1 -1
  234. package/lib/apart-components/insert-table-mobile/insert-table-mobile.component.d.ts +30 -0
  235. package/lib/apart-components/text-format-mobile/text-format-mobile.component.d.ts +35 -0
  236. package/lib/{+shared/editor/core/models → editor/components/edges}/edge-element.model.d.ts +1 -1
  237. package/lib/editor/components/edges/edge.component.d.ts +44 -0
  238. package/lib/{+shared/editor/core → editor}/components/edges/edges.d.ts +7 -7
  239. package/lib/{+shared/editor → editor/components}/editor.component.d.ts +11 -11
  240. package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-sidenav.interface.d.ts +1 -1
  241. package/lib/{+shared/editor/custom-components → editor/components}/external-element/external.component.d.ts +4 -4
  242. package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/external-element.model.d.ts +2 -1
  243. package/lib/{+shared/editor/custom-components → editor/components}/image/components/image.component.d.ts +4 -4
  244. package/lib/editor/components/image/image-api.service.d.ts +17 -0
  245. package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/resizer.component.d.ts +2 -2
  246. package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/size-wrapper.d.ts +1 -1
  247. package/lib/{+shared/editor/custom-components → editor/components}/shared/abstract/base.component.d.ts +6 -4
  248. package/lib/editor/components/shared/abstract/destroy.component.d.ts +9 -0
  249. package/lib/{+shared/editor/custom-components/shared/helpers → editor/components/shared}/custom-component.hepler.d.ts +3 -3
  250. package/lib/editor/components/shared/custom-components.interface.d.ts +13 -0
  251. package/lib/editor/components/shared/custom-content.d.ts +5 -0
  252. package/lib/{+shared/editor/custom-components/shared/services/component → editor/components/shared/services}/component.service.d.ts +1 -1
  253. package/lib/editor/components/shared/services/custom-content.service.d.ts +33 -0
  254. package/lib/{+shared/editor/custom-components → editor/components}/tab/tab.component.d.ts +2 -2
  255. package/lib/{+shared/editor/custom-components → editor/components}/table/cell-resizer/cell-resizer.d.ts +2 -1
  256. package/lib/editor/components/table/components/table-cell.component.d.ts +45 -0
  257. package/lib/{+shared/editor/custom-components → editor/components}/table/components/table.component.d.ts +26 -11
  258. package/lib/{+shared/editor/custom-components → editor/components}/table/overlay-menu/overlay-menu.component.d.ts +2 -2
  259. package/lib/{+shared/editor/custom-components → editor/components}/table/selection/table-selection.d.ts +3 -3
  260. package/lib/{+shared/editor/core → editor/content}/constants/editor.const.d.ts +3 -3
  261. package/lib/editor/content/contents.interface.d.ts +22 -0
  262. package/lib/{+shared/editor/core/models → editor/content/display-data}/display-token.model.d.ts +1 -1
  263. package/lib/{+shared/editor/core → editor/content/display-data}/document.d.ts +9 -9
  264. package/lib/{+shared/editor/core/models → editor/content/display-data}/format-ext.model.d.ts +1 -1
  265. package/lib/{+shared/editor/execution/models → editor/content/display-data}/general-properties.model.d.ts +2 -1
  266. package/lib/{+shared/editor/core/models → editor/content/display-data}/line-info.model.d.ts +1 -0
  267. package/lib/{+shared/editor/core/layers → editor/content/display-data}/lines.d.ts +1 -1
  268. package/lib/editor/content/display-data/pages.wrap.d.ts +42 -0
  269. package/lib/{+shared/editor/core/paging → editor/content/display-data}/paragraph.d.ts +8 -5
  270. package/lib/{+shared/editor/core/paging → editor/content/display-data}/text-line-info.d.ts +4 -2
  271. package/lib/editor/content/helpers/content-style.helper.d.ts +11 -0
  272. package/lib/{+shared/editor → editor/content}/helpers/indexed-element.helper.d.ts +1 -1
  273. package/lib/editor/content/helpers/scaling.helper.d.ts +4 -0
  274. package/lib/{+shared/editor/core/paging → editor/content}/page-vertical-data.model.d.ts +1 -1
  275. package/lib/{+shared/editor/core/base → editor/core}/event-emitting.d.ts +0 -5
  276. package/lib/{+shared/editor/core → editor/display}/layers/cursor.layer.d.ts +7 -8
  277. package/lib/{+shared/editor/core/interfaces → editor/display/layers}/layer.config.d.ts +2 -2
  278. package/lib/{+shared/editor/core → editor/display}/layers/pages.layer.d.ts +5 -6
  279. package/lib/editor/display/layers/print.text.layer.d.ts +4 -0
  280. package/lib/{+shared/editor/core → editor/display}/layers/selection.layer.d.ts +5 -6
  281. package/lib/editor/display/layers/text.layer.d.ts +34 -0
  282. package/lib/{+shared/helpers → editor/display/print}/print.helper.d.ts +3 -3
  283. package/lib/editor/display/print/print.renderer.d.ts +23 -0
  284. package/lib/{+shared/editor/core/helpers → editor/display/print}/print.rendering.helper.d.ts +2 -2
  285. package/lib/{+shared/editor/core/models → editor/display}/render-changes.model.d.ts +1 -1
  286. package/lib/{+shared/editor/core → editor/display}/renderer.d.ts +10 -13
  287. package/lib/{+shared/editor/core/helpers → editor/display}/rendering.helper.d.ts +10 -10
  288. package/lib/{+shared/editor/core/layers → editor/display}/renderloop.d.ts +2 -2
  289. package/lib/{+shared/editor/core → editor/display}/virtual.renderer.d.ts +14 -29
  290. package/lib/editor/editor.module.d.ts +31 -0
  291. package/lib/{+shared/editor/core → editor/execution}/edit.session.d.ts +65 -63
  292. package/lib/{+shared/editor/core → editor/execution}/editor.d.ts +48 -42
  293. package/lib/editor/execution/helpers/delta.helper.d.ts +6 -0
  294. package/lib/{+shared/editor/core → editor/execution}/helpers/format-style.helper.d.ts +3 -5
  295. package/lib/{+shared/editor/core → editor/execution}/helpers/page.helper.d.ts +1 -1
  296. package/lib/{+shared/editor/core → editor/execution}/helpers/paragraph-style.helper.d.ts +1 -1
  297. package/lib/{+shared/editor/core → editor/execution}/helpers/paragraph.helper.d.ts +14 -8
  298. package/lib/{+shared/editor → editor}/execution/regulator.service.d.ts +16 -15
  299. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/cell-session-source.model.d.ts +3 -3
  300. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/edge-session-source.model.d.ts +3 -3
  301. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/main-session-source.model.d.ts +1 -1
  302. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/session-source.model.d.ts +1 -1
  303. package/lib/{+shared/editor/execution/models → editor/execution/targeting}/session.model.d.ts +3 -3
  304. package/lib/{+shared/editor/core/helpers → editor/gadgets/font-metrics}/font-metrics.helper.d.ts +1 -1
  305. package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operation-history.d.ts +9 -7
  306. package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operation.type.d.ts +2 -1
  307. package/lib/{+shared/editor/core/models → editor/gadgets/numbering}/numbering-data.model.d.ts +1 -1
  308. package/lib/{+shared/editor/core/helpers → editor/gadgets/numbering}/numbering.helper.d.ts +8 -8
  309. package/lib/{+shared/editor/helpers → editor/gadgets/page-break}/break.helper.d.ts +2 -2
  310. package/lib/{+shared/editor/core/layers → editor/gadgets}/scrollbar.d.ts +9 -18
  311. package/lib/{+shared/editor/core → editor/gadgets/search}/search.d.ts +4 -4
  312. package/lib/editor/interaction/base.handler.d.ts +9 -0
  313. package/lib/editor/interaction/document.handler.d.ts +10 -0
  314. package/lib/{+shared/editor → editor}/interaction/editor.service.d.ts +24 -18
  315. package/lib/{+shared/editor → editor}/interaction/input.handler.d.ts +4 -5
  316. package/lib/{+shared/editor → editor}/interaction/mouse.handler.d.ts +1 -1
  317. package/lib/{+shared/editor → editor}/operations/enums/command-type.enum.d.ts +11 -10
  318. package/lib/{+shared/editor → editor}/operations/helpers/break-operations.helper.d.ts +2 -2
  319. package/lib/{+shared/editor → editor}/operations/helpers/format-operations.helper.d.ts +2 -2
  320. package/lib/editor/operations/helpers/image-operations.helper.d.ts +7 -0
  321. package/lib/{+shared/editor → editor}/operations/helpers/indexed-element-operations.helper.d.ts +1 -1
  322. package/lib/{+shared/editor → editor}/operations/helpers/link-operations.helper.d.ts +1 -1
  323. package/lib/{+shared/editor → editor}/operations/helpers/numbering-operations.helper.d.ts +3 -3
  324. package/lib/{+shared/editor → editor}/operations/helpers/paragraph-operations.helper.d.ts +3 -2
  325. package/lib/{+shared/editor → editor}/operations/helpers/tab-operations.helper.d.ts +1 -1
  326. package/lib/{+shared/editor → editor}/operations/helpers/table-operations.helper.d.ts +6 -6
  327. package/lib/{+shared/editor/operations/helpers → editor/operations}/operations-helper.helper.d.ts +21 -19
  328. package/lib/{+shared/editor/operations/helpers → editor/operations}/save-commands.helper.d.ts +28 -22
  329. package/lib/editor/operations/target-operations.helper.d.ts +6 -0
  330. package/lib/{+shared/editor/helpers → editor/positioning}/content.helper.d.ts +10 -5
  331. package/lib/editor/positioning/cursor-paragraph.d.ts +7 -0
  332. package/lib/{+shared/editor/core/interfaces → editor/positioning}/cursor-position.interface.d.ts +1 -1
  333. package/lib/{+shared/editor/core/helpers → editor/positioning}/line-width.helper.d.ts +2 -2
  334. package/lib/{+shared/editor/core/helpers → editor/positioning}/position.helper.d.ts +9 -9
  335. package/lib/{+shared/editor/core → editor/positioning}/range.d.ts +12 -12
  336. package/lib/{+shared/editor → editor}/positioning/selection.d.ts +10 -10
  337. package/lib/editor/revision.helper.d.ts +15 -0
  338. package/lib/models/generated/cell.model.d.ts +1 -0
  339. package/lib/models/generated/command.model.d.ts +2 -0
  340. package/lib/models/generated/insert-paragraph.model.d.ts +10 -0
  341. package/lib/models/generated/replace.model.d.ts +2 -0
  342. package/package.json +1 -1
  343. package/public-api.d.ts +36 -30
  344. package/src/_ngx-noder.theme.scss +20 -13
  345. package/src/assets/fonts/nc-iconfont.css +112 -106
  346. package/src/assets/fonts/nc-iconfont.eot +0 -0
  347. package/src/assets/fonts/nc-iconfont.svg +4 -1
  348. package/src/assets/fonts/nc-iconfont.ttf +0 -0
  349. package/src/assets/fonts/nc-iconfont.woff +0 -0
  350. package/src/lib/{+shared → apart-components}/add-link-dialog/_add-link-dialog.theme.scss +4 -4
  351. package/src/lib/apart-components/add-link-mobile/_add-link-mobile.theme.scss +25 -0
  352. package/src/lib/apart-components/confirm-dialog/_theme.scss +30 -0
  353. package/src/lib/apart-components/editor-title/_editor-title.theme.scss +28 -0
  354. package/src/lib/apart-components/editor-title-mobile/_editor-title-mobile.theme.scss +42 -0
  355. package/src/lib/apart-components/editor-toolbar/_editor-toolbar.theme.scss +27 -0
  356. package/src/lib/apart-components/editor-toolbar/_theme.scss +25 -0
  357. package/src/lib/apart-components/editor-toolbar/components/buttons/color-picker/_color-picker.theme.scss +12 -0
  358. package/src/lib/apart-components/editor-toolbar/components/buttons/font/_font.theme.scss +12 -0
  359. package/src/lib/apart-components/editor-toolbar/components/buttons/font-size/_font-size.theme.scss +14 -0
  360. package/src/lib/apart-components/editor-toolbar/components/buttons/font-style/_font-style.theme.scss +21 -0
  361. package/src/lib/apart-components/editor-toolbar/components/buttons/format/_format.theme.scss +21 -0
  362. package/src/lib/apart-components/editor-toolbar/components/buttons/numbering/_numbering.theme.scss +70 -0
  363. package/src/lib/apart-components/editor-toolbar/components/buttons/undo-redo/_undo-redo.theme.scss +16 -0
  364. package/src/lib/apart-components/editor-toolbar/components/menu-dropdowns/_menu-dropdowns.theme.scss +26 -0
  365. package/src/lib/apart-components/editor-toolbar/components/menu-dropdowns-mobile/_menu-dropdowns-mobile.theme.scss +33 -0
  366. package/src/lib/apart-components/editor-toolbar/components/toolbar-actions/_toolbar-actions.theme.scss +22 -0
  367. package/src/lib/{+shared → apart-components}/insert-table/_insert-table.theme.scss +10 -7
  368. package/src/lib/apart-components/insert-table-mobile/_insert-table-mobile.theme.scss +54 -0
  369. package/src/lib/apart-components/text-format-mobile/_text-format-mobile.theme.scss +86 -0
  370. package/src/lib/editor/_theme.scss +5 -0
  371. package/src/lib/editor/components/_editor.theme.scss +112 -0
  372. package/src/scss/_fonts.scss +3 -0
  373. package/src/scss/base-editor.scss +329 -0
  374. package/src/styles.scss +3 -58
  375. package/esm2022/lib/+shared/abstract/base-api.service.mjs +0 -99
  376. package/esm2022/lib/+shared/abstract/observer.component.mjs +0 -24
  377. package/esm2022/lib/+shared/confirm-dialog/confirm-dialog.component.mjs +0 -28
  378. package/esm2022/lib/+shared/constants/default-file-name.const.mjs +0 -2
  379. package/esm2022/lib/+shared/constants/paginator-sizes.const.mjs +0 -3
  380. package/esm2022/lib/+shared/editor/core/base/event-emitting.mjs +0 -71
  381. package/esm2022/lib/+shared/editor/core/components/edges/edge-type.enum.mjs +0 -6
  382. package/esm2022/lib/+shared/editor/core/components/edges/edge.component.mjs +0 -100
  383. package/esm2022/lib/+shared/editor/core/components/edges/edges.mjs +0 -104
  384. package/esm2022/lib/+shared/editor/core/constants/alignments.const.mjs +0 -8
  385. package/esm2022/lib/+shared/editor/core/constants/clipboardEventTypes.const.mjs +0 -6
  386. package/esm2022/lib/+shared/editor/core/constants/content-style-change.const.mjs +0 -15
  387. package/esm2022/lib/+shared/editor/core/constants/display-values.const.mjs +0 -8
  388. package/esm2022/lib/+shared/editor/core/constants/document-info.const.mjs +0 -13
  389. package/esm2022/lib/+shared/editor/core/constants/editor-version.const.mjs +0 -2
  390. package/esm2022/lib/+shared/editor/core/constants/editor.const.mjs +0 -62
  391. package/esm2022/lib/+shared/editor/core/constants/unicode-chars.const.mjs +0 -5
  392. package/esm2022/lib/+shared/editor/core/document.mjs +0 -134
  393. package/esm2022/lib/+shared/editor/core/edit.session.mjs +0 -1102
  394. package/esm2022/lib/+shared/editor/core/editor.mjs +0 -1279
  395. package/esm2022/lib/+shared/editor/core/enums/break-types.enum.mjs +0 -7
  396. package/esm2022/lib/+shared/editor/core/enums/mouse-button.enum.mjs +0 -7
  397. package/esm2022/lib/+shared/editor/core/enums/page-type.enum.mjs +0 -7
  398. package/esm2022/lib/+shared/editor/core/helpers/content-style.helper.mjs +0 -156
  399. package/esm2022/lib/+shared/editor/core/helpers/delta.helper.mjs +0 -18
  400. package/esm2022/lib/+shared/editor/core/helpers/dom.helper.mjs +0 -42
  401. package/esm2022/lib/+shared/editor/core/helpers/event.helper.mjs +0 -18
  402. package/esm2022/lib/+shared/editor/core/helpers/font-metrics.helper.mjs +0 -88
  403. package/esm2022/lib/+shared/editor/core/helpers/format-style.helper.mjs +0 -72
  404. package/esm2022/lib/+shared/editor/core/helpers/line-width.helper.mjs +0 -13
  405. package/esm2022/lib/+shared/editor/core/helpers/numbering.helper.mjs +0 -83
  406. package/esm2022/lib/+shared/editor/core/helpers/page.helper.mjs +0 -12
  407. package/esm2022/lib/+shared/editor/core/helpers/paragraph-style.helper.mjs +0 -41
  408. package/esm2022/lib/+shared/editor/core/helpers/paragraph.helper.mjs +0 -132
  409. package/esm2022/lib/+shared/editor/core/helpers/position.helper.mjs +0 -191
  410. package/esm2022/lib/+shared/editor/core/helpers/print.rendering.helper.mjs +0 -7
  411. package/esm2022/lib/+shared/editor/core/helpers/rendering.helper.mjs +0 -186
  412. package/esm2022/lib/+shared/editor/core/helpers/unicode.helper.mjs +0 -20
  413. package/esm2022/lib/+shared/editor/core/interfaces/cell.interface.mjs +0 -2
  414. package/esm2022/lib/+shared/editor/core/interfaces/cursor-position.interface.mjs +0 -2
  415. package/esm2022/lib/+shared/editor/core/interfaces/font-metric-size.interface.mjs +0 -2
  416. package/esm2022/lib/+shared/editor/core/interfaces/layer.config.mjs +0 -2
  417. package/esm2022/lib/+shared/editor/core/interfaces/paragraph-info.interface.mjs +0 -2
  418. package/esm2022/lib/+shared/editor/core/interfaces/render-changes.interface.mjs +0 -2
  419. package/esm2022/lib/+shared/editor/core/interfaces/replace.interface.mjs +0 -2
  420. package/esm2022/lib/+shared/editor/core/interfaces/search-iteration.interface.mjs +0 -2
  421. package/esm2022/lib/+shared/editor/core/interfaces/toolbar-styles.interface.mjs +0 -2
  422. package/esm2022/lib/+shared/editor/core/interfaces/visible-line-info.interface.mjs +0 -2
  423. package/esm2022/lib/+shared/editor/core/interfaces/visible-range.interface.mjs +0 -2
  424. package/esm2022/lib/+shared/editor/core/keyboard/text-input.mjs +0 -53
  425. package/esm2022/lib/+shared/editor/core/layers/cursor.layer.mjs +0 -103
  426. package/esm2022/lib/+shared/editor/core/layers/edges.layer.mjs +0 -99
  427. package/esm2022/lib/+shared/editor/core/layers/lines.mjs +0 -96
  428. package/esm2022/lib/+shared/editor/core/layers/pages.layer.mjs +0 -106
  429. package/esm2022/lib/+shared/editor/core/layers/print.edges.layer.mjs +0 -7
  430. package/esm2022/lib/+shared/editor/core/layers/print.pages.layer.mjs +0 -7
  431. package/esm2022/lib/+shared/editor/core/layers/print.text.layer.mjs +0 -7
  432. package/esm2022/lib/+shared/editor/core/layers/renderloop.mjs +0 -26
  433. package/esm2022/lib/+shared/editor/core/layers/scrollbar.mjs +0 -100
  434. package/esm2022/lib/+shared/editor/core/layers/selection.layer.mjs +0 -115
  435. package/esm2022/lib/+shared/editor/core/layers/text.layer.mjs +0 -124
  436. package/esm2022/lib/+shared/editor/core/models/display-token.model.mjs +0 -12
  437. package/esm2022/lib/+shared/editor/core/models/distance.model.mjs +0 -10
  438. package/esm2022/lib/+shared/editor/core/models/edge-element.model.mjs +0 -9
  439. package/esm2022/lib/+shared/editor/core/models/format-ext.model.mjs +0 -10
  440. package/esm2022/lib/+shared/editor/core/models/indent.model.mjs +0 -9
  441. package/esm2022/lib/+shared/editor/core/models/line-info.model.mjs +0 -9
  442. package/esm2022/lib/+shared/editor/core/models/margin.model.mjs +0 -16
  443. package/esm2022/lib/+shared/editor/core/models/numbering-data.model.mjs +0 -9
  444. package/esm2022/lib/+shared/editor/core/models/render-changes.model.mjs +0 -25
  445. package/esm2022/lib/+shared/editor/core/paging/page-vertical-data.model.mjs +0 -9
  446. package/esm2022/lib/+shared/editor/core/paging/pages.wrap.mjs +0 -219
  447. package/esm2022/lib/+shared/editor/core/paging/paragraph.mjs +0 -52
  448. package/esm2022/lib/+shared/editor/core/paging/text-line-info.mjs +0 -34
  449. package/esm2022/lib/+shared/editor/core/point.mjs +0 -13
  450. package/esm2022/lib/+shared/editor/core/print.renderer.mjs +0 -72
  451. package/esm2022/lib/+shared/editor/core/range.mjs +0 -94
  452. package/esm2022/lib/+shared/editor/core/renderer.mjs +0 -217
  453. package/esm2022/lib/+shared/editor/core/search.mjs +0 -231
  454. package/esm2022/lib/+shared/editor/core/virtual.renderer.mjs +0 -356
  455. package/esm2022/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.mjs +0 -35
  456. package/esm2022/lib/+shared/editor/custom-components/external-element/external-element.service.mjs +0 -6
  457. package/esm2022/lib/+shared/editor/custom-components/external-element/external-elements.const.mjs +0 -4
  458. package/esm2022/lib/+shared/editor/custom-components/external-element/external-sidenav.interface.mjs +0 -2
  459. package/esm2022/lib/+shared/editor/custom-components/external-element/external.component.mjs +0 -41
  460. package/esm2022/lib/+shared/editor/custom-components/external-element/models/element-data.model.mjs +0 -9
  461. package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-element.model.mjs +0 -10
  462. package/esm2022/lib/+shared/editor/custom-components/external-element/models/external-sidenav.model.mjs +0 -15
  463. package/esm2022/lib/+shared/editor/custom-components/image/components/image.component.mjs +0 -87
  464. package/esm2022/lib/+shared/editor/custom-components/image/input-handler/image-input.handler.mjs +0 -38
  465. package/esm2022/lib/+shared/editor/custom-components/image/interfaces/size.mjs +0 -2
  466. package/esm2022/lib/+shared/editor/custom-components/image/resizer/coordinate.mjs +0 -2
  467. package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction-wrapper.mjs +0 -19
  468. package/esm2022/lib/+shared/editor/custom-components/image/resizer/direction.enum.mjs +0 -12
  469. package/esm2022/lib/+shared/editor/custom-components/image/resizer/resizer.component.mjs +0 -106
  470. package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-delta.mjs +0 -2
  471. package/esm2022/lib/+shared/editor/custom-components/image/resizer/size-wrapper.mjs +0 -52
  472. package/esm2022/lib/+shared/editor/custom-components/image/services/image-api.service.mjs +0 -14
  473. package/esm2022/lib/+shared/editor/custom-components/shared/abstract/base.component.mjs +0 -57
  474. package/esm2022/lib/+shared/editor/custom-components/shared/constants/custom-content-markers.const.mjs +0 -3
  475. package/esm2022/lib/+shared/editor/custom-components/shared/helpers/custom-component.hepler.mjs +0 -43
  476. package/esm2022/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.mjs +0 -2
  477. package/esm2022/lib/+shared/editor/custom-components/shared/services/component/component.service.mjs +0 -64
  478. package/esm2022/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.mjs +0 -120
  479. package/esm2022/lib/+shared/editor/custom-components/shared/services/overlay/overlay.service.mjs +0 -55
  480. package/esm2022/lib/+shared/editor/custom-components/shared/types/custom-content.mjs +0 -2
  481. package/esm2022/lib/+shared/editor/custom-components/tab/tab.component.mjs +0 -43
  482. package/esm2022/lib/+shared/editor/custom-components/table/cell-resizer/cell-resizer.mjs +0 -118
  483. package/esm2022/lib/+shared/editor/custom-components/table/components/table-cell.component.mjs +0 -95
  484. package/esm2022/lib/+shared/editor/custom-components/table/components/table.component.mjs +0 -293
  485. package/esm2022/lib/+shared/editor/custom-components/table/enums/reisizer-side.enum.mjs +0 -8
  486. package/esm2022/lib/+shared/editor/custom-components/table/enums/vertical-merge.enum.mjs +0 -6
  487. package/esm2022/lib/+shared/editor/custom-components/table/models/cell-data.model.mjs +0 -18
  488. package/esm2022/lib/+shared/editor/custom-components/table/models/cell-resizer-parameters.model.mjs +0 -9
  489. package/esm2022/lib/+shared/editor/custom-components/table/models/row-data.model.mjs +0 -8
  490. package/esm2022/lib/+shared/editor/custom-components/table/models/selection-range.model.mjs +0 -7
  491. package/esm2022/lib/+shared/editor/custom-components/table/overlay-menu/overlay-menu.component.mjs +0 -74
  492. package/esm2022/lib/+shared/editor/custom-components/table/selection/table-selection.mjs +0 -358
  493. package/esm2022/lib/+shared/editor/editor.component.mjs +0 -103
  494. package/esm2022/lib/+shared/editor/editor.module.mjs +0 -85
  495. package/esm2022/lib/+shared/editor/execution/models/cell-session-source.model.mjs +0 -19
  496. package/esm2022/lib/+shared/editor/execution/models/edge-session-source.model.mjs +0 -15
  497. package/esm2022/lib/+shared/editor/execution/models/general-properties.model.mjs +0 -11
  498. package/esm2022/lib/+shared/editor/execution/models/main-session-source.model.mjs +0 -8
  499. package/esm2022/lib/+shared/editor/execution/models/session-source.model.mjs +0 -3
  500. package/esm2022/lib/+shared/editor/execution/models/session.model.mjs +0 -10
  501. package/esm2022/lib/+shared/editor/execution/regulator.service.mjs +0 -193
  502. package/esm2022/lib/+shared/editor/helpers/break.helper.mjs +0 -18
  503. package/esm2022/lib/+shared/editor/helpers/content.helper.mjs +0 -30
  504. package/esm2022/lib/+shared/editor/helpers/tab.helper.mjs +0 -6
  505. package/esm2022/lib/+shared/editor/interaction/editor.service.mjs +0 -309
  506. package/esm2022/lib/+shared/editor/interaction/input.handler.mjs +0 -160
  507. package/esm2022/lib/+shared/editor/interaction/mouse.handler.mjs +0 -49
  508. package/esm2022/lib/+shared/editor/interfaces/contents.interface.mjs +0 -2
  509. package/esm2022/lib/+shared/editor/interfaces/insert-index.interface.mjs +0 -2
  510. package/esm2022/lib/+shared/editor/operation-history/operation-history.mjs +0 -184
  511. package/esm2022/lib/+shared/editor/operation-history/operation.type.mjs +0 -2
  512. package/esm2022/lib/+shared/editor/operation-history/operations-history-info.model.mjs +0 -7
  513. package/esm2022/lib/+shared/editor/operations/enums/command-type.enum.mjs +0 -31
  514. package/esm2022/lib/+shared/editor/operations/enums/target-type.enum.mjs +0 -7
  515. package/esm2022/lib/+shared/editor/operations/helpers/break-operations.helper.mjs +0 -9
  516. package/esm2022/lib/+shared/editor/operations/helpers/content-operations.helper.mjs +0 -15
  517. package/esm2022/lib/+shared/editor/operations/helpers/format-operations.helper.mjs +0 -56
  518. package/esm2022/lib/+shared/editor/operations/helpers/image-operations.helper.mjs +0 -19
  519. package/esm2022/lib/+shared/editor/operations/helpers/indexed-element-operations.helper.mjs +0 -43
  520. package/esm2022/lib/+shared/editor/operations/helpers/link-operations.helper.mjs +0 -28
  521. package/esm2022/lib/+shared/editor/operations/helpers/numbering-operations.helper.mjs +0 -55
  522. package/esm2022/lib/+shared/editor/operations/helpers/operations-helper.helper.mjs +0 -394
  523. package/esm2022/lib/+shared/editor/operations/helpers/paragraph-operations.helper.mjs +0 -83
  524. package/esm2022/lib/+shared/editor/operations/helpers/save-commands.helper.mjs +0 -118
  525. package/esm2022/lib/+shared/editor/operations/helpers/tab-operations.helper.mjs +0 -16
  526. package/esm2022/lib/+shared/editor/operations/helpers/table-operations.helper.mjs +0 -371
  527. package/esm2022/lib/+shared/editor/operations/helpers/target-operations.helper.mjs +0 -23
  528. package/esm2022/lib/+shared/editor/positioning/selection.mjs +0 -307
  529. package/esm2022/lib/+shared/editor/store/editor.actions.mjs +0 -13
  530. package/esm2022/lib/+shared/editor-header/editor-header.component.mjs +0 -314
  531. package/esm2022/lib/+shared/editor-search/editor-search-dialog.component.mjs +0 -71
  532. package/esm2022/lib/+shared/editor-toolbar/color-picker/color-picker.component.mjs +0 -32
  533. package/esm2022/lib/+shared/editor-toolbar/constants/svg-icons.const.mjs +0 -157
  534. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.component.mjs +0 -115
  535. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.module.mjs +0 -107
  536. package/esm2022/lib/+shared/editor-toolbar/enums/alignment.enum.mjs +0 -8
  537. package/esm2022/lib/+shared/editor-toolbar/enums/numbering-type.enum.mjs +0 -6
  538. package/esm2022/lib/+shared/editor-toolbar/font/font.component.mjs +0 -45
  539. package/esm2022/lib/+shared/editor-toolbar/font-size/font-size.component.mjs +0 -85
  540. package/esm2022/lib/+shared/editor-toolbar/font-style/font-style.component.mjs +0 -80
  541. package/esm2022/lib/+shared/editor-toolbar/format/format.component.mjs +0 -28
  542. package/esm2022/lib/+shared/editor-toolbar/heading/heading.component.mjs +0 -23
  543. package/esm2022/lib/+shared/editor-toolbar/helpers/toolbar-styles.helper.mjs +0 -55
  544. package/esm2022/lib/+shared/editor-toolbar/numbering/numbering.component.mjs +0 -53
  545. package/esm2022/lib/+shared/editor-toolbar/print/print.component.mjs +0 -18
  546. package/esm2022/lib/+shared/editor-toolbar/undo-redo/undo-redo.component.mjs +0 -27
  547. package/esm2022/lib/+shared/editor-toolbar/zoom/zoom.component.mjs +0 -74
  548. package/esm2022/lib/+shared/helpers/print.helper.mjs +0 -40
  549. package/esm2022/lib/+shared/insert-table/insert-table.component.mjs +0 -54
  550. package/esm2022/lib/+shared/services/commands.service.mjs +0 -20
  551. package/esm2022/lib/+shared/services/custom-icon.service.mjs +0 -34
  552. package/lib/+shared/abstract/base-api.service.d.ts +0 -23
  553. package/lib/+shared/abstract/observer.component.d.ts +0 -10
  554. package/lib/+shared/constants/default-file-name.const.d.ts +0 -1
  555. package/lib/+shared/constants/paginator-sizes.const.d.ts +0 -2
  556. package/lib/+shared/editor/core/components/edges/edge.component.d.ts +0 -45
  557. package/lib/+shared/editor/core/constants/clipboardEventTypes.const.d.ts +0 -5
  558. package/lib/+shared/editor/core/constants/content-style-change.const.d.ts +0 -14
  559. package/lib/+shared/editor/core/helpers/content-style.helper.d.ts +0 -16
  560. package/lib/+shared/editor/core/helpers/delta.helper.d.ts +0 -6
  561. package/lib/+shared/editor/core/interfaces/visible-line-info.interface.d.ts +0 -5
  562. package/lib/+shared/editor/core/layers/edges.layer.d.ts +0 -24
  563. package/lib/+shared/editor/core/layers/print.edges.layer.d.ts +0 -4
  564. package/lib/+shared/editor/core/layers/print.text.layer.d.ts +0 -5
  565. package/lib/+shared/editor/core/layers/text.layer.d.ts +0 -22
  566. package/lib/+shared/editor/core/paging/pages.wrap.d.ts +0 -41
  567. package/lib/+shared/editor/core/point.d.ts +0 -7
  568. package/lib/+shared/editor/core/print.renderer.d.ts +0 -25
  569. package/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.d.ts +0 -14
  570. package/lib/+shared/editor/custom-components/image/services/image-api.service.d.ts +0 -8
  571. package/lib/+shared/editor/custom-components/shared/interfaces/custom-components.interface.d.ts +0 -13
  572. package/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.d.ts +0 -30
  573. package/lib/+shared/editor/custom-components/shared/types/custom-content.d.ts +0 -5
  574. package/lib/+shared/editor/custom-components/table/components/table-cell.component.d.ts +0 -45
  575. package/lib/+shared/editor/editor.module.d.ts +0 -30
  576. package/lib/+shared/editor/interfaces/contents.interface.d.ts +0 -22
  577. package/lib/+shared/editor/operations/helpers/image-operations.helper.d.ts +0 -7
  578. package/lib/+shared/editor/operations/helpers/target-operations.helper.d.ts +0 -6
  579. package/lib/+shared/editor/store/editor.actions.d.ts +0 -11
  580. package/lib/+shared/editor-header/editor-header.component.d.ts +0 -101
  581. package/lib/+shared/editor-toolbar/constants/numbering-templates.const.d.ts +0 -6
  582. package/lib/+shared/editor-toolbar/editor-toolbar.component.d.ts +0 -44
  583. package/lib/+shared/editor-toolbar/editor-toolbar.module.d.ts +0 -28
  584. package/src/lib/+shared/editor/_editor.theme.scss +0 -35
  585. package/src/lib/+shared/editor/custom-components/external-element/element-toolbar/_element-toolbar.theme.scss +0 -10
  586. package/src/lib/+shared/editor-header/_editor-header.theme.scss +0 -106
  587. package/src/lib/+shared/editor-toolbar/_editor-toolbar.theme.scss +0 -33
  588. package/src/lib/+shared/editor-toolbar/numbering/_numbering.theme.scss +0 -29
  589. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/constants/svg-icons.const.d.ts +0 -0
  590. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/alignment.enum.d.ts +0 -0
  591. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-template-type.enum.d.ts +0 -0
  592. /package/lib/{+shared/editor-toolbar → apart-components/editor-toolbar/shared}/enums/numbering-type.enum.d.ts +0 -0
  593. /package/lib/{+shared → apart-components/editor-toolbar/shared}/services/custom-icon.service.d.ts +0 -0
  594. /package/lib/{+shared/editor/core → editor}/components/edges/edge-type.enum.d.ts +0 -0
  595. /package/lib/{+shared/editor/core/enums → editor/components/edges}/page-type.enum.d.ts +0 -0
  596. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-element.service.d.ts +0 -0
  597. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/external-elements.const.d.ts +0 -0
  598. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/element-data.model.d.ts +0 -0
  599. /package/lib/{+shared/editor/custom-components → editor/components}/external-element/models/external-sidenav.model.d.ts +0 -0
  600. /package/lib/{+shared/editor/custom-components → editor/components}/image/input-handler/image-input.handler.d.ts +0 -0
  601. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/coordinate.d.ts +0 -0
  602. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/direction-wrapper.d.ts +0 -0
  603. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/direction.enum.d.ts +0 -0
  604. /package/lib/{+shared/editor/custom-components → editor/components}/image/resizer/size-delta.d.ts +0 -0
  605. /package/lib/{+shared/editor/custom-components/image/interfaces → editor/components/image}/size.d.ts +0 -0
  606. /package/lib/{+shared/editor/custom-components/shared/constants → editor/components/shared}/custom-content-markers.const.d.ts +0 -0
  607. /package/lib/{+shared/editor/custom-components/shared/services/overlay → editor/components/shared/services}/overlay.service.d.ts +0 -0
  608. /package/lib/{+shared/editor/helpers → editor/components/tab}/tab.helper.d.ts +0 -0
  609. /package/lib/{+shared/editor/core → editor/components/table}/enums/hrule.enum.d.ts +0 -0
  610. /package/lib/{+shared/editor/custom-components → editor/components}/table/enums/reisizer-side.enum.d.ts +0 -0
  611. /package/lib/{+shared/editor/custom-components → editor/components}/table/enums/vertical-merge.enum.d.ts +0 -0
  612. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/cell-data.model.d.ts +0 -0
  613. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/cell-resizer-parameters.model.d.ts +0 -0
  614. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/row-data.model.d.ts +0 -0
  615. /package/lib/{+shared/editor/custom-components → editor/components}/table/models/selection-range.model.d.ts +0 -0
  616. /package/lib/{+shared/editor/core → editor/content}/constants/display-values.const.d.ts +0 -0
  617. /package/lib/{+shared/editor/core → editor/content}/constants/document-info.const.d.ts +0 -0
  618. /package/lib/{+shared/editor/core/models → editor/content/display-data}/indent.model.d.ts +0 -0
  619. /package/lib/{+shared/editor/core/interfaces → editor/content/display-data}/paragraph-info.interface.d.ts +0 -0
  620. /package/lib/{+shared/editor/core/interfaces → editor/content/display-data}/toolbar-styles.interface.d.ts +0 -0
  621. /package/lib/{+shared/editor → editor/content}/helpers/format.helper.d.ts +0 -0
  622. /package/lib/{+shared/editor/core/models → editor/content}/margin.model.d.ts +0 -0
  623. /package/lib/{+shared/editor/core/enums → editor/content}/vertical-alignment.enum.d.ts +0 -0
  624. /package/lib/{+shared/editor/core/interfaces → editor/display}/cell.interface.d.ts +0 -0
  625. /package/lib/{+shared/editor/core/helpers → editor/display}/event.helper.d.ts +0 -0
  626. /package/lib/{+shared/editor/core → editor/display}/layers/print.pages.layer.d.ts +0 -0
  627. /package/lib/{+shared/editor/core/interfaces → editor/display}/render-changes.interface.d.ts +0 -0
  628. /package/lib/{+shared/editor/core/interfaces → editor/display}/visible-range.interface.d.ts +0 -0
  629. /package/lib/{+shared/editor/core/models → editor/execution}/distance.model.d.ts +0 -0
  630. /package/lib/{+shared/editor/core → editor/execution}/helpers/dom.helper.d.ts +0 -0
  631. /package/lib/{+shared/editor/core/constants → editor/gadgets/font-metrics}/editor-version.const.d.ts +0 -0
  632. /package/lib/{+shared/editor/core/interfaces → editor/gadgets/font-metrics}/font-metric-size.interface.d.ts +0 -0
  633. /package/lib/{+shared/editor/operation-history → editor/gadgets/history}/operations-history-info.model.d.ts +0 -0
  634. /package/lib/{+shared/editor/core/enums → editor/gadgets/numbering}/numbering-marker-type.enum.d.ts +0 -0
  635. /package/lib/{+shared/editor/core/enums → editor/gadgets/page-break}/break-types.enum.d.ts +0 -0
  636. /package/lib/{+shared/editor/core/interfaces → editor/gadgets/search}/replace.interface.d.ts +0 -0
  637. /package/lib/{+shared/editor/core/interfaces → editor/gadgets/search}/search-iteration.interface.d.ts +0 -0
  638. /package/lib/{+shared/editor/core/constants → editor/gadgets/unicode}/unicode-chars.const.d.ts +0 -0
  639. /package/lib/{+shared/editor/core/helpers → editor/gadgets/unicode}/unicode.helper.d.ts +0 -0
  640. /package/lib/{+shared/enums → editor/interaction}/mode.enum.d.ts +0 -0
  641. /package/lib/{+shared/editor/core/enums → editor/interaction}/mouse-button.enum.d.ts +0 -0
  642. /package/lib/{+shared/editor/core/keyboard → editor/interaction}/text-input.d.ts +0 -0
  643. /package/lib/{+shared/services → editor/operations}/commands.service.d.ts +0 -0
  644. /package/lib/{+shared/editor → editor}/operations/enums/target-type.enum.d.ts +0 -0
  645. /package/lib/{+shared/editor → editor}/operations/helpers/content-operations.helper.d.ts +0 -0
  646. /package/lib/{+shared/editor/core/constants → editor/positioning}/alignments.const.d.ts +0 -0
  647. /package/lib/{+shared/editor/interfaces → editor/positioning}/insert-index.interface.d.ts +0 -0
@@ -0,0 +1,60 @@
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { Injectable } from '@angular/core';
3
+ import { EditorToolbarMode } from '../enums/editor-toolbar-mode.enum';
4
+ import { MenuDropdownsMobileComponent } from '../../components/menu-dropdowns-mobile/menu-dropdowns-mobile.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../../editor/interaction/editor.service";
7
+ export class ToolbarCoreService {
8
+ set mode(value) {
9
+ this._mode$.next(value);
10
+ }
11
+ get mode$() {
12
+ return this._mode$.asObservable();
13
+ }
14
+ set actions(value) {
15
+ this._actions = value;
16
+ }
17
+ get actions() {
18
+ return this._actions;
19
+ }
20
+ set backTitle(value) {
21
+ this._backTitle = value;
22
+ }
23
+ get backTitle() {
24
+ const currentMode = this.getMode();
25
+ return currentMode === EditorToolbarMode.Insert || currentMode === EditorToolbarMode.ExternalComponent ? this._backTitle : '';
26
+ }
27
+ constructor(editorService) {
28
+ this.editorService = editorService;
29
+ this._mode$ = new BehaviorSubject(EditorToolbarMode.Base);
30
+ }
31
+ getMode() {
32
+ return this._mode$.value;
33
+ }
34
+ back() {
35
+ const currentMode = this.getMode();
36
+ if (currentMode === EditorToolbarMode.Menu || currentMode === EditorToolbarMode.ExternalComponent) {
37
+ this.reset();
38
+ }
39
+ else if (currentMode === EditorToolbarMode.Insert) {
40
+ this.openBurgerMenu();
41
+ }
42
+ else {
43
+ this._mode$.next(EditorToolbarMode.Base);
44
+ }
45
+ }
46
+ reset() {
47
+ this.editorService.closeSidenav();
48
+ this._mode$.next(EditorToolbarMode.Base);
49
+ }
50
+ openBurgerMenu() {
51
+ this.mode = EditorToolbarMode.Menu;
52
+ this.editorService.openSidenav(MenuDropdownsMobileComponent);
53
+ }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToolbarCoreService, deps: [{ token: i1.EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
55
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToolbarCoreService }); }
56
+ }
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToolbarCoreService, decorators: [{
58
+ type: Injectable
59
+ }], ctorParameters: () => [{ type: i1.EditorService }] });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1jb3JlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9hcGFydC1jb21wb25lbnRzL2VkaXRvci10b29sYmFyL3NoYXJlZC9zZXJ2aWNlcy90b29sYmFyLWNvcmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7OztBQWtCdEgsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQixJQUFJLElBQUksQ0FBQyxLQUF3QjtRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFHRCxJQUFJLE9BQU8sQ0FBQyxLQUFlO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUdELElBQUksU0FBUyxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksU0FBUztRQUNULE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxPQUFPLFdBQVcsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNLElBQUksV0FBVyxLQUFLLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbEksQ0FBQztJQUdELFlBQW9CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBbkJ4QyxXQUFNLEdBQXVDLElBQUksZUFBZSxDQUFvQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQW1CakUsQ0FBQztJQUVwRCxPQUFPO1FBQ0gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSTtRQUNBLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxJQUFJLFdBQVcsS0FBSyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksV0FBVyxLQUFLLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFO1lBQy9GLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNoQjthQUFNLElBQUksV0FBVyxLQUFLLGlCQUFpQixDQUFDLE1BQU0sRUFBRTtZQUNqRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDekI7YUFBTTtZQUNILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7UUFDbkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUNqRSxDQUFDOytHQW5EUSxrQkFBa0I7bUhBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZWRpdG9yL2ludGVyYWN0aW9uL2VkaXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IEVkaXRvclRvb2xiYXJNb2RlIH0gZnJvbSAnLi4vZW51bXMvZWRpdG9yLXRvb2xiYXItbW9kZS5lbnVtJztcbmltcG9ydCB7IEV4dGVybmFsRWxlbWVudE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vZWRpdG9yL2NvbXBvbmVudHMvZXh0ZXJuYWwtZWxlbWVudC9tb2RlbHMvZXh0ZXJuYWwtZWxlbWVudC5tb2RlbCc7XG5pbXBvcnQgeyBNZW51RHJvcGRvd25zTW9iaWxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9tZW51LWRyb3Bkb3ducy1tb2JpbGUvbWVudS1kcm9wZG93bnMtbW9iaWxlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFjdGlvbnMge1xuICAgIG5ldzogKCkgPT4gdm9pZDtcbiAgICBvcGVuRnJvbTogKCkgPT4gdm9pZDtcbiAgICBzYXZlQXM6ICgpID0+IHZvaWQ7XG4gICAgcmVuYW1lOiAoKSA9PiB2b2lkO1xuICAgIHByaW50OiAoKSA9PiB2b2lkO1xuICAgIGRlbGV0ZTogKCkgPT4gdm9pZDtcbiAgICBpbnNlcnRJbWFnZTogKCkgPT4gdm9pZDtcbiAgICBpbnNlcnRUYWJsZTogKCkgPT4gdm9pZDtcbiAgICBpbnNlcnRMaW5rOiAoKSA9PiB2b2lkO1xuICAgIGluc2VydEN1c3RvbUVsZW1lbnQ6IChtb2RlbDogRXh0ZXJuYWxFbGVtZW50TW9kZWwpID0+IFByb21pc2U8dm9pZD47XG4gICAgaW5zZXJ0UGFnZUJyZWFrOiAoKSA9PiB2b2lkO1xuICAgIHRleHRGb3JtYXQ6ICgpID0+IHZvaWQ7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUb29sYmFyQ29yZVNlcnZpY2Uge1xuICAgIHNldCBtb2RlKHZhbHVlOiBFZGl0b3JUb29sYmFyTW9kZSkge1xuICAgICAgICB0aGlzLl9tb2RlJC5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IG1vZGUkKCk6IE9ic2VydmFibGU8RWRpdG9yVG9vbGJhck1vZGU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGUkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cbiAgICBwcml2YXRlIF9tb2RlJDogQmVoYXZpb3JTdWJqZWN0PEVkaXRvclRvb2xiYXJNb2RlPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWRpdG9yVG9vbGJhck1vZGU+KEVkaXRvclRvb2xiYXJNb2RlLkJhc2UpO1xuXG4gICAgc2V0IGFjdGlvbnModmFsdWU6IElBY3Rpb25zKSB7XG4gICAgICAgIHRoaXMuX2FjdGlvbnMgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IGFjdGlvbnMoKTogSUFjdGlvbnMge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWN0aW9ucztcbiAgICB9XG4gICAgcHJpdmF0ZSBfYWN0aW9ucyE6IElBY3Rpb25zO1xuXG4gICAgc2V0IGJhY2tUaXRsZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2JhY2tUaXRsZSA9IHZhbHVlO1xuICAgIH1cbiAgICBnZXQgYmFja1RpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRNb2RlID0gdGhpcy5nZXRNb2RlKCk7XG4gICAgICAgIHJldHVybiBjdXJyZW50TW9kZSA9PT0gRWRpdG9yVG9vbGJhck1vZGUuSW5zZXJ0IHx8IGN1cnJlbnRNb2RlID09PSBFZGl0b3JUb29sYmFyTW9kZS5FeHRlcm5hbENvbXBvbmVudCA/IHRoaXMuX2JhY2tUaXRsZSA6ICcnO1xuICAgIH1cbiAgICBwcml2YXRlIF9iYWNrVGl0bGUhOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVkaXRvclNlcnZpY2U6IEVkaXRvclNlcnZpY2UpIHt9XG5cbiAgICBnZXRNb2RlKCk6IEVkaXRvclRvb2xiYXJNb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZGUkLnZhbHVlO1xuICAgIH1cblxuICAgIGJhY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRNb2RlID0gdGhpcy5nZXRNb2RlKCk7XG4gICAgICAgIGlmIChjdXJyZW50TW9kZSA9PT0gRWRpdG9yVG9vbGJhck1vZGUuTWVudSB8fCBjdXJyZW50TW9kZSA9PT0gRWRpdG9yVG9vbGJhck1vZGUuRXh0ZXJuYWxDb21wb25lbnQpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50TW9kZSA9PT0gRWRpdG9yVG9vbGJhck1vZGUuSW5zZXJ0KSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5CdXJnZXJNZW51KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9tb2RlJC5uZXh0KEVkaXRvclRvb2xiYXJNb2RlLkJhc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzZXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWRpdG9yU2VydmljZS5jbG9zZVNpZGVuYXYoKTtcbiAgICAgICAgdGhpcy5fbW9kZSQubmV4dChFZGl0b3JUb29sYmFyTW9kZS5CYXNlKTtcbiAgICB9XG5cbiAgICBvcGVuQnVyZ2VyTWVudSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb2RlID0gRWRpdG9yVG9vbGJhck1vZGUuTWVudTtcbiAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLm9wZW5TaWRlbmF2KE1lbnVEcm9wZG93bnNNb2JpbGVDb21wb25lbnQpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,55 @@
1
+ import { NumberingMarkerType } from '../../../editor/gadgets/numbering/numbering-marker-type.enum';
2
+ import { NumberingTemplateType } from './enums/numbering-template-type.enum';
3
+ import { NumberingType } from './enums/numbering-type.enum';
4
+ export class ToolbarStylesHelper {
5
+ static getNumberingType(isBulletMarker) {
6
+ if (isBulletMarker === null) {
7
+ return null;
8
+ }
9
+ return isBulletMarker ? NumberingType.Bullet : NumberingType.Number;
10
+ }
11
+ static getNumberingTemplateType(levelsMarkersStyles) {
12
+ const type = NumberingMarkerType;
13
+ const bulletMarkerStyles1 = `●${type.Bullet}○${type.Bullet}■${type.Bullet}●${type.Bullet}○${type.Bullet}■${type.Bullet}●${type.Bullet}○${type.Bullet}■${type.Bullet}`;
14
+ const bulletMarkerStyles2 = `■${type.Bullet}□${type.Bullet}○${type.Bullet}■${type.Bullet}□${type.Bullet}○${type.Bullet}■${type.Bullet}□${type.Bullet}○${type.Bullet}`;
15
+ const bulletMarkerStyles3 = `◆${type.Bullet}◇${type.Bullet}○${type.Bullet}◆${type.Bullet}◇${type.Bullet}○${type.Bullet}◆${type.Bullet}◇${type.Bullet}○${type.Bullet}`;
16
+ const bulletMarkerStyles4 = `➢${type.Bullet}◆${type.Bullet}●${type.Bullet}➢${type.Bullet}◆${type.Bullet}●${type.Bullet}➢${type.Bullet}◆${type.Bullet}●${type.Bullet}`;
17
+ const bulletMarkerStyles5 = `★${type.Bullet}○${type.Bullet}□${type.Bullet}★${type.Bullet}○${type.Bullet}□${type.Bullet}★${type.Bullet}○${type.Bullet}□${type.Bullet}`;
18
+ const bulletMarkerStyles6 = `➢${type.Bullet}●${type.Bullet}○${type.Bullet}➢${type.Bullet}●${type.Bullet}○${type.Bullet}➢${type.Bullet}●${type.Bullet}○${type.Bullet}`;
19
+ const numberedMarkerStyles1 = `%1.${type.Decimal}%2.${type.LowerLetter}%3.${type.LowerRoman}%4.${type.Decimal}%5.${type.LowerLetter}%6.${type.LowerRoman}%7.${type.Decimal}%8.${type.LowerLetter}%9.${type.LowerRoman}`;
20
+ const numberedMarkerStyles2 = `%1)${type.Decimal}%2)${type.LowerLetter}%3)${type.LowerRoman}(%4)${type.Decimal}(%5)${type.LowerLetter}(%6)${type.LowerRoman}%7.${type.Decimal}%8.${type.LowerLetter}%9.${type.LowerRoman}`;
21
+ const numberedMarkerStyles3 = `%1.${type.Decimal}%1.%2.${type.Decimal}%1.%2.%3.${type.Decimal}%1.%2.%3.%4.${type.Decimal}%1.%2.%3.%4.%5.${type.Decimal}%1.%2.%3.%4.%5.%6.${type.Decimal}%1.%2.%3.%4.%5.%6.%7.${type.Decimal}%1.%2.%3.%4.%5.%6.%7.%8.${type.Decimal}%1.%2.%3.%4.%5.%6.%7.%8.%9.${type.Decimal}`;
22
+ const numberedMarkerStyles4 = `%1.${type.UpperLetter}%2.${type.LowerLetter}%3.${type.LowerRoman}%4.${type.Decimal}%5.${type.LowerLetter}%6.${type.LowerRoman}%7.${type.Decimal}%8.${type.LowerLetter}%9.${type.LowerRoman}`;
23
+ const numberedMarkerStyles5 = `%1.${type.UpperRoman}%2.${type.UpperLetter}%3.${type.Decimal}%4)${type.LowerLetter}(%5)${type.Decimal}(%6)${type.LowerLetter}(%7)${type.LowerRoman}(%8)${type.LowerLetter}(%9)${type.LowerRoman}`;
24
+ const numberedMarkerStyles6 = `%1.${type.DecimalZero}%2.${type.LowerLetter}%3.${type.LowerRoman}%4.${type.Decimal}%5.${type.LowerLetter}%6.${type.LowerRoman}%7.${type.Decimal}%8.${type.LowerLetter}%9.${type.LowerRoman}`;
25
+ switch (levelsMarkersStyles) {
26
+ case numberedMarkerStyles1:
27
+ return NumberingTemplateType.NumberList1;
28
+ case numberedMarkerStyles2:
29
+ return NumberingTemplateType.NumberList2;
30
+ case numberedMarkerStyles3:
31
+ return NumberingTemplateType.NumberList3;
32
+ case numberedMarkerStyles4:
33
+ return NumberingTemplateType.NumberList4;
34
+ case numberedMarkerStyles5:
35
+ return NumberingTemplateType.NumberList5;
36
+ case numberedMarkerStyles6:
37
+ return NumberingTemplateType.NumberList6;
38
+ case bulletMarkerStyles1:
39
+ return NumberingTemplateType.BulletList1;
40
+ case bulletMarkerStyles2:
41
+ return NumberingTemplateType.BulletList2;
42
+ case bulletMarkerStyles3:
43
+ return NumberingTemplateType.BulletList3;
44
+ case bulletMarkerStyles4:
45
+ return NumberingTemplateType.BulletList4;
46
+ case bulletMarkerStyles5:
47
+ return NumberingTemplateType.BulletList5;
48
+ case bulletMarkerStyles6:
49
+ return NumberingTemplateType.BulletList6;
50
+ default:
51
+ return null;
52
+ }
53
+ }
54
+ }
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1zdHlsZXMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvYXBhcnQtY29tcG9uZW50cy9lZGl0b3ItdG9vbGJhci9zaGFyZWQvdG9vbGJhci1zdHlsZXMuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU1RCxNQUFNLE9BQU8sbUJBQW1CO0lBQzVCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxjQUE4QjtRQUNsRCxJQUFJLGNBQWMsS0FBSyxJQUFJLEVBQUU7WUFDekIsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELE9BQU8sY0FBYyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO0lBQ3hFLENBQUM7SUFFRCxNQUFNLENBQUMsd0JBQXdCLENBQUMsbUJBQTJCO1FBQ3ZELE1BQU0sSUFBSSxHQUFHLG1CQUFtQixDQUFDO1FBQ2pDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RLLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RLLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RLLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RLLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RLLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxN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QkFBcUIsQ0FBQyxXQUFXLENBQUM7WUFDN0MsS0FBSyxtQkFBbUI7Z0JBQ3BCLE9BQU8scUJBQXFCLENBQUMsV0FBVyxDQUFDO1lBQzdDLEtBQUssbUJBQW1CO2dCQUNwQixPQUFPLHFCQUFxQixDQUFDLFdBQVcsQ0FBQztZQUM3QyxLQUFLLG1CQUFtQjtnQkFDcEIsT0FBTyxxQkFBcUIsQ0FBQyxXQUFXLENBQUM7WUFDN0MsS0FBSyxtQkFBbUI7Z0JBQ3BCLE9BQU8scUJBQXFCLENBQUMsV0FBVyxDQUFDO1lBQzdDO2dCQUNJLE9BQU8sSUFBSSxDQUFDO1NBQ25CO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTnVtYmVyaW5nTWFya2VyVHlwZSB9IGZyb20gJy4uLy4uLy4uL2VkaXRvci9nYWRnZXRzL251bWJlcmluZy9udW1iZXJpbmctbWFya2VyLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBOdW1iZXJpbmdUZW1wbGF0ZVR5cGUgfSBmcm9tICcuL2VudW1zL251bWJlcmluZy10ZW1wbGF0ZS10eXBlLmVudW0nO1xuaW1wb3J0IHsgTnVtYmVyaW5nVHlwZSB9IGZyb20gJy4vZW51bXMvbnVtYmVyaW5nLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBUb29sYmFyU3R5bGVzSGVscGVyIHtcbiAgICBzdGF0aWMgZ2V0TnVtYmVyaW5nVHlwZShpc0J1bGxldE1hcmtlcjogYm9vbGVhbiB8IG51bGwpOiBOdW1iZXJpbmdUeXBlIHwgbnVsbCB7XG4gICAgICAgIGlmIChpc0J1bGxldE1hcmtlciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXNCdWxsZXRNYXJrZXIgPyBOdW1iZXJpbmdUeXBlLkJ1bGxldCA6IE51bWJlcmluZ1R5cGUuTnVtYmVyO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUobGV2ZWxzTWFya2Vyc1N0eWxlczogc3RyaW5nKTogTnVtYmVyaW5nVGVtcGxhdGVUeXBlIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBOdW1iZXJpbmdNYXJrZXJUeXBlO1xuICAgICAgICBjb25zdCBidWxsZXRNYXJrZXJTdHlsZXMxID0gYOKXjyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3ilqAke3R5cGUuQnVsbGV0feKXjyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3ilqAke3R5cGUuQnVsbGV0feKXjyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3ilqAke3R5cGUuQnVsbGV0fWA7XG4gICAgICAgIGNvbnN0IGJ1bGxldE1hcmtlclN0eWxlczIgPSBg4pagJHt0eXBlLkJ1bGxldH3ilqEke3R5cGUuQnVsbGV0feKXiyR7dHlwZS5CdWxsZXR94pagJHt0eXBlLkJ1bGxldH3ilqEke3R5cGUuQnVsbGV0feKXiyR7dHlwZS5CdWxsZXR94pagJHt0eXBlLkJ1bGxldH3ilqEke3R5cGUuQnVsbGV0feKXiyR7dHlwZS5CdWxsZXR9YDtcbiAgICAgICAgY29uc3QgYnVsbGV0TWFya2VyU3R5bGVzMyA9IGDil4Yke3R5cGUuQnVsbGV0feKXhyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3il4Yke3R5cGUuQnVsbGV0feKXhyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3il4Yke3R5cGUuQnVsbGV0feKXhyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH1gO1xuICAgICAgICBjb25zdCBidWxsZXRNYXJrZXJTdHlsZXM0ID0gYOKeoiR7dHlwZS5CdWxsZXR94peGJHt0eXBlLkJ1bGxldH3il48ke3R5cGUuQnVsbGV0feKeoiR7dHlwZS5CdWxsZXR94peGJHt0eXBlLkJ1bGxldH3il48ke3R5cGUuQnVsbGV0feKeoiR7dHlwZS5CdWxsZXR94peGJHt0eXBlLkJ1bGxldH3il48ke3R5cGUuQnVsbGV0fWA7XG4gICAgICAgIGNvbnN0IGJ1bGxldE1hcmtlclN0eWxlczUgPSBg4piFJHt0eXBlLkJ1bGxldH3il4ske3R5cGUuQnVsbGV0feKWoSR7dHlwZS5CdWxsZXR94piFJHt0eXBlLkJ1bGxldH3il4ske3R5cGUuQnVsbGV0feKWoSR7dHlwZS5CdWxsZXR94piFJHt0eXBlLkJ1bGxldH3il4ske3R5cGUuQnVsbGV0feKWoSR7dHlwZS5CdWxsZXR9YDtcbiAgICAgICAgY29uc3QgYnVsbGV0TWFya2VyU3R5bGVzNiA9IGDinqIke3R5cGUuQnVsbGV0feKXjyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3inqIke3R5cGUuQnVsbGV0feKXjyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH3inqIke3R5cGUuQnVsbGV0feKXjyR7dHlwZS5CdWxsZXR94peLJHt0eXBlLkJ1bGxldH1gO1xuICAgICAgICBjb25zdCBudW1iZXJlZE1hcmtlclN0eWxlczEgPSBgJTEuJHt0eXBlLkRlY2ltYWx9JTIuJHt0eXBlLkxvd2VyTGV0dGVyfSUzLiR7dHlwZS5Mb3dlclJvbWFufSU0LiR7dHlwZS5EZWNpbWFsfSU1LiR7dHlwZS5Mb3dlckxldHRlcn0lNi4ke3R5cGUuTG93ZXJSb21hbn0lNy4ke3R5cGUuRGVjaW1hbH0lOC4ke3R5cGUuTG93ZXJMZXR0ZXJ9JTkuJHt0eXBlLkxvd2VyUm9tYW59YDtcbiAgICAgICAgY29uc3QgbnVtYmVyZWRNYXJrZXJTdHlsZXMyID0gYCUxKSR7dHlwZS5EZWNpbWFsfSUyKSR7dHlwZS5Mb3dlckxldHRlcn0lMykke3R5cGUuTG93ZXJSb21hbn0oJTQpJHt0eXBlLkRlY2ltYWx9KCU1KSR7dHlwZS5Mb3dlckxldHRlcn0oJTYpJHt0eXBlLkxvd2VyUm9tYW59JTcuJHt0eXBlLkRlY2ltYWx9JTguJHt0eXBlLkxvd2VyTGV0dGVyfSU5LiR7dHlwZS5Mb3dlclJvbWFufWA7XG4gICAgICAgIGNvbnN0IG51bWJlcmVkTWFya2VyU3R5bGVzMyA9IGAlMS4ke3R5cGUuRGVjaW1hbH0lMS4lMi4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4lNC4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4lNC4lNS4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4lNC4lNS4lNi4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4lNC4lNS4lNi4lNy4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4lNC4lNS4lNi4lNy4lOC4ke3R5cGUuRGVjaW1hbH0lMS4lMi4lMy4lNC4lNS4lNi4lNy4lOC4lOS4ke3R5cGUuRGVjaW1hbH1gO1xuICAgICAgICBjb25zdCBudW1iZXJlZE1hcmtlclN0eWxlczQgPSBgJTEuJHt0eXBlLlVwcGVyTGV0dGVyfSUyLiR7dHlwZS5Mb3dlckxldHRlcn0lMy4ke3R5cGUuTG93ZXJSb21hbn0lNC4ke3R5cGUuRGVjaW1hbH0lNS4ke3R5cGUuTG93ZXJMZXR0ZXJ9JTYuJHt0eXBlLkxvd2VyUm9tYW59JTcuJHt0eXBlLkRlY2ltYWx9JTguJHt0eXBlLkxvd2VyTGV0dGVyfSU5LiR7dHlwZS5Mb3dlclJvbWFufWA7XG4gICAgICAgIGNvbnN0IG51bWJlcmVkTWFya2VyU3R5bGVzNSA9IGAlMS4ke3R5cGUuVXBwZXJSb21hbn0lMi4ke3R5cGUuVXBwZXJMZXR0ZXJ9JTMuJHt0eXBlLkRlY2ltYWx9JTQpJHt0eXBlLkxvd2VyTGV0dGVyfSglNSkke3R5cGUuRGVjaW1hbH0oJTYpJHt0eXBlLkxvd2VyTGV0dGVyfSglNykke3R5cGUuTG93ZXJSb21hbn0oJTgpJHt0eXBlLkxvd2VyTGV0dGVyfSglOSkke3R5cGUuTG93ZXJSb21hbn1gO1xuICAgICAgICBjb25zdCBudW1iZXJlZE1hcmtlclN0eWxlczYgPSBgJTEuJHt0eXBlLkRlY2ltYWxaZXJvfSUyLiR7dHlwZS5Mb3dlckxldHRlcn0lMy4ke3R5cGUuTG93ZXJSb21hbn0lNC4ke3R5cGUuRGVjaW1hbH0lNS4ke3R5cGUuTG93ZXJMZXR0ZXJ9JTYuJHt0eXBlLkxvd2VyUm9tYW59JTcuJHt0eXBlLkRlY2ltYWx9JTguJHt0eXBlLkxvd2VyTGV0dGVyfSU5LiR7dHlwZS5Mb3dlclJvbWFufWA7XG5cbiAgICAgICAgc3dpdGNoIChsZXZlbHNNYXJrZXJzU3R5bGVzKSB7XG4gICAgICAgICAgICBjYXNlIG51bWJlcmVkTWFya2VyU3R5bGVzMTpcbiAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyaW5nVGVtcGxhdGVUeXBlLk51bWJlckxpc3QxO1xuICAgICAgICAgICAgY2FzZSBudW1iZXJlZE1hcmtlclN0eWxlczI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlcmluZ1RlbXBsYXRlVHlwZS5OdW1iZXJMaXN0MjtcbiAgICAgICAgICAgIGNhc2UgbnVtYmVyZWRNYXJrZXJTdHlsZXMzOlxuICAgICAgICAgICAgICAgIHJldHVybiBOdW1iZXJpbmdUZW1wbGF0ZVR5cGUuTnVtYmVyTGlzdDM7XG4gICAgICAgICAgICBjYXNlIG51bWJlcmVkTWFya2VyU3R5bGVzNDpcbiAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyaW5nVGVtcGxhdGVUeXBlLk51bWJlckxpc3Q0O1xuICAgICAgICAgICAgY2FzZSBudW1iZXJlZE1hcmtlclN0eWxlczU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlcmluZ1RlbXBsYXRlVHlwZS5OdW1iZXJMaXN0NTtcbiAgICAgICAgICAgIGNhc2UgbnVtYmVyZWRNYXJrZXJTdHlsZXM2OlxuICAgICAgICAgICAgICAgIHJldHVybiBOdW1iZXJpbmdUZW1wbGF0ZVR5cGUuTnVtYmVyTGlzdDY7XG4gICAgICAgICAgICBjYXNlIGJ1bGxldE1hcmtlclN0eWxlczE6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0MTtcbiAgICAgICAgICAgIGNhc2UgYnVsbGV0TWFya2VyU3R5bGVzMjpcbiAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyaW5nVGVtcGxhdGVUeXBlLkJ1bGxldExpc3QyO1xuICAgICAgICAgICAgY2FzZSBidWxsZXRNYXJrZXJTdHlsZXMzOlxuICAgICAgICAgICAgICAgIHJldHVybiBOdW1iZXJpbmdUZW1wbGF0ZVR5cGUuQnVsbGV0TGlzdDM7XG4gICAgICAgICAgICBjYXNlIGJ1bGxldE1hcmtlclN0eWxlczQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0NDtcbiAgICAgICAgICAgIGNhc2UgYnVsbGV0TWFya2VyU3R5bGVzNTpcbiAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyaW5nVGVtcGxhdGVUeXBlLkJ1bGxldExpc3Q1O1xuICAgICAgICAgICAgY2FzZSBidWxsZXRNYXJrZXJTdHlsZXM2OlxuICAgICAgICAgICAgICAgIHJldHVybiBOdW1iZXJpbmdUZW1wbGF0ZVR5cGUuQnVsbGV0TGlzdDY7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -0,0 +1,54 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class InsertTableComponent {
6
+ constructor() {
7
+ this.selectSizes = new EventEmitter();
8
+ this.maxRows = 20;
9
+ this.minRows = 5;
10
+ this.maxColumns = 20;
11
+ this.minColumns = 10;
12
+ this.rows = Array(this.minRows)
13
+ .fill(undefined)
14
+ .map((_, i) => i + 1);
15
+ this.columns = Array(this.minColumns)
16
+ .fill(undefined)
17
+ .map((_, i) => i + 1);
18
+ this.currentRow = 1;
19
+ this.currentColumn = 1;
20
+ }
21
+ onCreateTable(rows, columns) {
22
+ this.selectSizes.emit({ rows, columns });
23
+ }
24
+ onCellHover(row, column) {
25
+ this.currentRow = row;
26
+ this.currentColumn = column;
27
+ this.rows = this.calculateArray(row, this.rows, this.minRows, this.maxRows);
28
+ this.columns = this.calculateArray(column, this.columns, this.minColumns, this.maxColumns);
29
+ }
30
+ calculateArray(currentValue, arrayValues, minValue, maxValue) {
31
+ if (currentValue >= arrayValues.length && currentValue <= maxValue) {
32
+ const count = currentValue >= maxValue ? maxValue : arrayValues.length + 1;
33
+ return Array(count)
34
+ .fill(undefined)
35
+ .map((_, i) => i + 1);
36
+ }
37
+ else if (currentValue < arrayValues.length && arrayValues.length > minValue) {
38
+ const count = currentValue <= minValue ? minValue + 1 : arrayValues.length - (arrayValues.length - currentValue) + 1;
39
+ return Array(count)
40
+ .fill(undefined)
41
+ .map((_, i) => i + 1);
42
+ }
43
+ return arrayValues;
44
+ }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InsertTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
46
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: InsertTableComponent, isStandalone: true, selector: "app-nod-insert-table", outputs: { selectSizes: "selectSizes" }, ngImport: i0, template: "<div class=\"table-size-container\">\n <ng-container *ngFor=\"let row of rows\">\n <div class=\"row\">\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"cell-container\"\n (mouseenter)=\"onCellHover(row, column)\"\n (click)=\"onCreateTable(row, column)\">\n <div\n class=\"cell\"\n [class.highlighted]=\"row <= currentRow && column <= currentColumn\"></div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n <div class=\"table-size\">{{ currentColumn }} x {{ currentRow }}</div>\n</div>\n", styles: [":host{border-radius:4px}.table-size-container{padding:14px 10px 8px}.row{display:flex;flex-direction:row}.cell-container{padding:2px}.cell{height:16px;width:16px}.table-size{display:flex;justify-content:center;padding-top:14px;font-size:14px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
47
+ }
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InsertTableComponent, decorators: [{
49
+ type: Component,
50
+ args: [{ standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-nod-insert-table', template: "<div class=\"table-size-container\">\n <ng-container *ngFor=\"let row of rows\">\n <div class=\"row\">\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"cell-container\"\n (mouseenter)=\"onCellHover(row, column)\"\n (click)=\"onCreateTable(row, column)\">\n <div\n class=\"cell\"\n [class.highlighted]=\"row <= currentRow && column <= currentColumn\"></div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n <div class=\"table-size\">{{ currentColumn }} x {{ currentRow }}</div>\n</div>\n", styles: [":host{border-radius:4px}.table-size-container{padding:14px 10px 8px}.row{display:flex;flex-direction:row}.cell-container{padding:2px}.cell{height:16px;width:16px}.table-size{display:flex;justify-content:center;padding-top:14px;font-size:14px}\n"] }]
51
+ }], propDecorators: { selectSizes: [{
52
+ type: Output
53
+ }] } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2FwYXJ0LWNvbXBvbmVudHMvaW5zZXJ0LXRhYmxlL2luc2VydC10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9hcGFydC1jb21wb25lbnRzL2luc2VydC10YWJsZS9pbnNlcnQtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBVS9DLE1BQU0sT0FBTyxvQkFBb0I7SUFSakM7UUFTYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFxQyxDQUFDO1FBQ3JFLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFFYixZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBRVosZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUVoQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBRXpCLFNBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ2YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFCLFlBQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ2YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFFZixrQkFBYSxHQUFHLENBQUMsQ0FBQztLQTRCckI7SUExQkcsYUFBYSxDQUFDLElBQVksRUFBRSxPQUFlO1FBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFXLEVBQUUsTUFBYztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztRQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQy9GLENBQUM7SUFFRCxjQUFjLENBQUMsWUFBb0IsRUFBRSxXQUFxQixFQUFFLFFBQWdCLEVBQUUsUUFBZ0I7UUFDMUYsSUFBSSxZQUFZLElBQUksV0FBVyxDQUFDLE1BQU0sSUFBSSxZQUFZLElBQUksUUFBUSxFQUFFO1lBQ2hFLE1BQU0sS0FBSyxHQUFHLFlBQVksSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDM0UsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDO2lCQUNkLElBQUksQ0FBQyxTQUFTLENBQUM7aUJBQ2YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQzdCO2FBQU0sSUFBSSxZQUFZLEdBQUcsV0FBVyxDQUFDLE1BQU0sSUFBSSxXQUFXLENBQUMsTUFBTSxHQUFHLFFBQVEsRUFBRTtZQUMzRSxNQUFNLEtBQUssR0FBRyxZQUFZLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckgsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDO2lCQUNkLElBQUksQ0FBQyxTQUFTLENBQUM7aUJBQ2YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQzdCO1FBRUQsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQzsrR0EvQ1Esb0JBQW9CO21HQUFwQixvQkFBb0IseUhDWGpDLHNzQkFpQkEsNlNEWmMsWUFBWTs7NEZBTWIsb0JBQW9CO2tCQVJoQyxTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFDTix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLHNCQUFzQjs4QkFLdEIsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHNlbGVjdG9yOiAnYXBwLW5vZC1pbnNlcnQtdGFibGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnaW5zZXJ0LXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnaW5zZXJ0LXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW5zZXJ0VGFibGVDb21wb25lbnQge1xuICAgIEBPdXRwdXQoKSBzZWxlY3RTaXplcyA9IG5ldyBFdmVudEVtaXR0ZXI8eyByb3dzOiBudW1iZXI7IGNvbHVtbnM6IG51bWJlciB9PigpO1xuICAgIHJlYWRvbmx5IG1heFJvd3MgPSAyMDtcblxuICAgIHJlYWRvbmx5IG1pblJvd3MgPSA1O1xuXG4gICAgcmVhZG9ubHkgbWF4Q29sdW1ucyA9IDIwO1xuXG4gICAgcmVhZG9ubHkgbWluQ29sdW1ucyA9IDEwO1xuXG4gICAgcm93cyA9IEFycmF5KHRoaXMubWluUm93cylcbiAgICAgICAgLmZpbGwodW5kZWZpbmVkKVxuICAgICAgICAubWFwKChfLCBpKSA9PiBpICsgMSk7XG5cbiAgICBjb2x1bW5zID0gQXJyYXkodGhpcy5taW5Db2x1bW5zKVxuICAgICAgICAuZmlsbCh1bmRlZmluZWQpXG4gICAgICAgIC5tYXAoKF8sIGkpID0+IGkgKyAxKTtcblxuICAgIGN1cnJlbnRSb3cgPSAxO1xuXG4gICAgY3VycmVudENvbHVtbiA9IDE7XG5cbiAgICBvbkNyZWF0ZVRhYmxlKHJvd3M6IG51bWJlciwgY29sdW1uczogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0U2l6ZXMuZW1pdCh7IHJvd3MsIGNvbHVtbnMgfSk7XG4gICAgfVxuXG4gICAgb25DZWxsSG92ZXIocm93OiBudW1iZXIsIGNvbHVtbjogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudFJvdyA9IHJvdztcbiAgICAgICAgdGhpcy5jdXJyZW50Q29sdW1uID0gY29sdW1uO1xuICAgICAgICB0aGlzLnJvd3MgPSB0aGlzLmNhbGN1bGF0ZUFycmF5KHJvdywgdGhpcy5yb3dzLCB0aGlzLm1pblJvd3MsIHRoaXMubWF4Um93cyk7XG4gICAgICAgIHRoaXMuY29sdW1ucyA9IHRoaXMuY2FsY3VsYXRlQXJyYXkoY29sdW1uLCB0aGlzLmNvbHVtbnMsIHRoaXMubWluQ29sdW1ucywgdGhpcy5tYXhDb2x1bW5zKTtcbiAgICB9XG5cbiAgICBjYWxjdWxhdGVBcnJheShjdXJyZW50VmFsdWU6IG51bWJlciwgYXJyYXlWYWx1ZXM6IG51bWJlcltdLCBtaW5WYWx1ZTogbnVtYmVyLCBtYXhWYWx1ZTogbnVtYmVyKTogbnVtYmVyW10ge1xuICAgICAgICBpZiAoY3VycmVudFZhbHVlID49IGFycmF5VmFsdWVzLmxlbmd0aCAmJiBjdXJyZW50VmFsdWUgPD0gbWF4VmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvdW50ID0gY3VycmVudFZhbHVlID49IG1heFZhbHVlID8gbWF4VmFsdWUgOiBhcnJheVZhbHVlcy5sZW5ndGggKyAxO1xuICAgICAgICAgICAgcmV0dXJuIEFycmF5KGNvdW50KVxuICAgICAgICAgICAgICAgIC5maWxsKHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAubWFwKChfLCBpKSA9PiBpICsgMSk7XG4gICAgICAgIH0gZWxzZSBpZiAoY3VycmVudFZhbHVlIDwgYXJyYXlWYWx1ZXMubGVuZ3RoICYmIGFycmF5VmFsdWVzLmxlbmd0aCA+IG1pblZhbHVlKSB7XG4gICAgICAgICAgICBjb25zdCBjb3VudCA9IGN1cnJlbnRWYWx1ZSA8PSBtaW5WYWx1ZSA/IG1pblZhbHVlICsgMSA6IGFycmF5VmFsdWVzLmxlbmd0aCAtIChhcnJheVZhbHVlcy5sZW5ndGggLSBjdXJyZW50VmFsdWUpICsgMTtcbiAgICAgICAgICAgIHJldHVybiBBcnJheShjb3VudClcbiAgICAgICAgICAgICAgICAuZmlsbCh1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgLm1hcCgoXywgaSkgPT4gaSArIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFycmF5VmFsdWVzO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWJsZS1zaXplLWNvbnRhaW5lclwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHJvdyBvZiByb3dzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNlbGwtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKG1vdXNlZW50ZXIpPVwib25DZWxsSG92ZXIocm93LCBjb2x1bW4pXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ3JlYXRlVGFibGUocm93LCBjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2VsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuaGlnaGxpZ2h0ZWRdPVwicm93IDw9IGN1cnJlbnRSb3cgJiYgY29sdW1uIDw9IGN1cnJlbnRDb2x1bW5cIj48L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2IGNsYXNzPVwidGFibGUtc2l6ZVwiPnt7IGN1cnJlbnRDb2x1bW4gfX0geCB7eyBjdXJyZW50Um93IH19PC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,84 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ReactiveFormsModule, Validators } from '@angular/forms';
4
+ import { MatButtonModule } from '@angular/material/button';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
6
+ import { MatIconModule } from '@angular/material/icon';
7
+ import { MatInputModule } from '@angular/material/input';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../editor/interaction/editor.service";
10
+ import * as i2 from "@angular/forms";
11
+ import * as i3 from "../editor-toolbar/shared/services/toolbar-core.service";
12
+ import * as i4 from "@angular/common";
13
+ import * as i5 from "@angular/material/button";
14
+ import * as i6 from "@angular/material/form-field";
15
+ import * as i7 from "@angular/material/icon";
16
+ import * as i8 from "@angular/material/input";
17
+ export class InsertTableMobileComponent {
18
+ constructor(editorService, fb, toolbarCoreService) {
19
+ this.editorService = editorService;
20
+ this.fb = fb;
21
+ this.toolbarCoreService = toolbarCoreService;
22
+ this.maxRows = 5;
23
+ this.minRows = 1;
24
+ this.maxColumns = 10;
25
+ this.minColumns = 1;
26
+ this.rows = Array(this.maxRows)
27
+ .fill(undefined)
28
+ .map((_, i) => i + 1);
29
+ this.columns = Array(this.maxColumns)
30
+ .fill(undefined)
31
+ .map((_, i) => i + 1);
32
+ this.form = this.fb.group({
33
+ rows: [2, [Validators.required, Validators.min(this.minRows), Validators.max(this.maxRows)]],
34
+ columns: [2, [Validators.required, Validators.min(this.minColumns), Validators.max(this.maxColumns)]]
35
+ });
36
+ }
37
+ onClose() {
38
+ this.toolbarCoreService.reset();
39
+ }
40
+ onApply() {
41
+ this.editorService.insertTable({ rows: this.form.controls.rows.value, columns: this.form.controls.columns.value });
42
+ this.toolbarCoreService.reset();
43
+ }
44
+ onSetTable(rows, columns) {
45
+ this.form.controls.rows.setValue(rows);
46
+ this.form.controls.columns.setValue(columns);
47
+ }
48
+ onChangeInputRow() {
49
+ if (this.form.controls.rows.value < this.minRows) {
50
+ this.form.controls.rows.setValue(this.minRows);
51
+ }
52
+ if (this.form.controls.rows.value > this.maxRows) {
53
+ this.form.controls.rows.setValue(this.maxRows);
54
+ }
55
+ }
56
+ onChangeInputColumn() {
57
+ if (this.form.controls.columns.value < this.minColumns) {
58
+ this.form.controls.columns.setValue(this.minColumns);
59
+ }
60
+ if (this.form.controls.columns.value > this.maxColumns) {
61
+ this.form.controls.columns.setValue(this.maxColumns);
62
+ }
63
+ }
64
+ onChangeRows(value) {
65
+ this.changeCount(value, this.minRows, this.maxRows, this.form.controls.rows);
66
+ }
67
+ onChangeColumns(value) {
68
+ this.changeCount(value, this.minColumns, this.maxColumns, this.form.controls.columns);
69
+ }
70
+ changeCount(value, minValue, maxValue, control) {
71
+ const newValue = control.value + value;
72
+ if (newValue > maxValue || newValue < minValue) {
73
+ return;
74
+ }
75
+ control.setValue(newValue);
76
+ }
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InsertTableMobileComponent, deps: [{ token: i1.EditorService }, { token: i2.FormBuilder }, { token: i3.ToolbarCoreService }], target: i0.ɵɵFactoryTarget.Component }); }
78
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: InsertTableMobileComponent, isStandalone: true, selector: "app-nod-insert-table-mobile", ngImport: i0, template: "<div class=\"content\">\n <div class=\"title\">Table Options</div>\n <div\n class=\"inputs\"\n [formGroup]=\"form\">\n <div class=\"rows\">\n <div class=\"input-title\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-table-rows\" />\n Rows:\n </div>\n <mat-form-field appearance=\"outline\">\n <button\n mat-fab\n (click)=\"onChangeRows(-1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-remove\" />\n </button>\n <input\n matInput\n required\n type=\"number\"\n [formControl]=\"form.controls.rows\"\n (change)=\"onChangeInputRow()\" />\n <button\n mat-fab\n (click)=\"onChangeRows(1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-add\" />\n </button>\n <mat-error>The Rows is required.</mat-error>\n </mat-form-field>\n </div>\n <div class=\"columns\">\n <div class=\"input-title\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-table-columns\" />\n Columns:\n </div>\n <mat-form-field appearance=\"outline\">\n <button\n mat-fab\n (click)=\"onChangeColumns(-1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-remove\" />\n </button>\n <input\n matInput\n required\n type=\"number\"\n [formControl]=\"form.controls.columns\"\n (change)=\"onChangeInputColumn()\" />\n <button\n mat-fab\n (click)=\"onChangeColumns(1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-add\" />\n </button>\n <mat-error>The Columns is required.</mat-error>\n </mat-form-field>\n </div>\n </div>\n <div class=\"quick-select\">\n <div class=\"quick-select-header\">\n <div class=\"separator\"></div>\n <div class=\"quick-select-title\">Quick Select</div>\n <div class=\"separator\"></div>\n </div>\n <div class=\"selection\">\n <ng-container *ngFor=\"let row of rows\">\n <div class=\"row\">\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"cell-container\"\n (click)=\"onSetTable(row, column)\">\n <div\n class=\"cell\"\n [class.highlighted]=\"row <= form.controls.rows.value && column <= form.controls.columns.value\"></div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n</div>\n<div class=\"actions\">\n <button\n mat-mini-fab\n (click)=\"onClose()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-cancel-thin\" />\n </button>\n <button\n mat-mini-fab\n [disabled]=\"form.invalid\"\n (click)=\"onApply()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-done-thin\" />\n </button>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%;padding:30px;justify-content:space-between;overflow:hidden}.title{font-size:16px;font-weight:500;padding-bottom:10px}.inputs{display:flex;justify-content:space-between;padding-top:10px;padding-bottom:0}.rows,.columns{display:flex;flex-direction:column;width:45%}.input-title{display:flex;align-items:center;font-size:14px;font-weight:400;padding-bottom:10px}.input-title .mat-icon{margin-right:10px}.quick-select{display:flex;flex-direction:column}.quick-select-header{display:flex;padding-bottom:20px}.quick-select-title{padding:0 10px;font-size:10px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.separator{flex:1;align-self:center;border-bottom-width:1px;border-bottom-style:solid}.row{display:flex;flex-direction:row}.cell-container{width:10%;aspect-ratio:1/1;padding:2px}.cell{height:100%;width:100%;border-width:1px;border-style:solid}.mat-mdc-form-field ::ng-deep .mat-mdc-text-field-wrapper{padding:0}.mat-mdc-form-field ::ng-deep .mat-mdc-form-field-infix{display:flex;flex-direction:row;padding:0}.mat-mdc-form-field ::ng-deep .mdc-fab{width:48px;height:48px}.mat-mdc-input-element{text-align:center}.actions{text-align:end}.actions .mdc-fab:first-child{margin-right:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: i5.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
+ }
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InsertTableMobileComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ standalone: true, imports: [CommonModule, MatButtonModule, MatFormFieldModule, MatIconModule, MatInputModule, ReactiveFormsModule], selector: 'app-nod-insert-table-mobile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"content\">\n <div class=\"title\">Table Options</div>\n <div\n class=\"inputs\"\n [formGroup]=\"form\">\n <div class=\"rows\">\n <div class=\"input-title\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-table-rows\" />\n Rows:\n </div>\n <mat-form-field appearance=\"outline\">\n <button\n mat-fab\n (click)=\"onChangeRows(-1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-remove\" />\n </button>\n <input\n matInput\n required\n type=\"number\"\n [formControl]=\"form.controls.rows\"\n (change)=\"onChangeInputRow()\" />\n <button\n mat-fab\n (click)=\"onChangeRows(1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-add\" />\n </button>\n <mat-error>The Rows is required.</mat-error>\n </mat-form-field>\n </div>\n <div class=\"columns\">\n <div class=\"input-title\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-table-columns\" />\n Columns:\n </div>\n <mat-form-field appearance=\"outline\">\n <button\n mat-fab\n (click)=\"onChangeColumns(-1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-remove\" />\n </button>\n <input\n matInput\n required\n type=\"number\"\n [formControl]=\"form.controls.columns\"\n (change)=\"onChangeInputColumn()\" />\n <button\n mat-fab\n (click)=\"onChangeColumns(1)\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-add\" />\n </button>\n <mat-error>The Columns is required.</mat-error>\n </mat-form-field>\n </div>\n </div>\n <div class=\"quick-select\">\n <div class=\"quick-select-header\">\n <div class=\"separator\"></div>\n <div class=\"quick-select-title\">Quick Select</div>\n <div class=\"separator\"></div>\n </div>\n <div class=\"selection\">\n <ng-container *ngFor=\"let row of rows\">\n <div class=\"row\">\n <ng-container *ngFor=\"let column of columns\">\n <div\n class=\"cell-container\"\n (click)=\"onSetTable(row, column)\">\n <div\n class=\"cell\"\n [class.highlighted]=\"row <= form.controls.rows.value && column <= form.controls.columns.value\"></div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n</div>\n<div class=\"actions\">\n <button\n mat-mini-fab\n (click)=\"onClose()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-cancel-thin\" />\n </button>\n <button\n mat-mini-fab\n [disabled]=\"form.invalid\"\n (click)=\"onApply()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-done-thin\" />\n </button>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%;padding:30px;justify-content:space-between;overflow:hidden}.title{font-size:16px;font-weight:500;padding-bottom:10px}.inputs{display:flex;justify-content:space-between;padding-top:10px;padding-bottom:0}.rows,.columns{display:flex;flex-direction:column;width:45%}.input-title{display:flex;align-items:center;font-size:14px;font-weight:400;padding-bottom:10px}.input-title .mat-icon{margin-right:10px}.quick-select{display:flex;flex-direction:column}.quick-select-header{display:flex;padding-bottom:20px}.quick-select-title{padding:0 10px;font-size:10px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.separator{flex:1;align-self:center;border-bottom-width:1px;border-bottom-style:solid}.row{display:flex;flex-direction:row}.cell-container{width:10%;aspect-ratio:1/1;padding:2px}.cell{height:100%;width:100%;border-width:1px;border-style:solid}.mat-mdc-form-field ::ng-deep .mat-mdc-text-field-wrapper{padding:0}.mat-mdc-form-field ::ng-deep .mat-mdc-form-field-infix{display:flex;flex-direction:row;padding:0}.mat-mdc-form-field ::ng-deep .mdc-fab{width:48px;height:48px}.mat-mdc-input-element{text-align:center}.actions{text-align:end}.actions .mdc-fab:first-child{margin-right:10px}\n"] }]
83
+ }], ctorParameters: () => [{ type: i1.EditorService }, { type: i2.FormBuilder }, { type: i3.ToolbarCoreService }] });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LXRhYmxlLW1vYmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9hcGFydC1jb21wb25lbnRzL2luc2VydC10YWJsZS1tb2JpbGUvaW5zZXJ0LXRhYmxlLW1vYmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9hcGFydC1jb21wb25lbnRzL2luc2VydC10YWJsZS1tb2JpbGUvaW5zZXJ0LXRhYmxlLW1vYmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVDLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7O0FBYXpELE1BQU0sT0FBTywwQkFBMEI7SUFtQm5DLFlBQW9CLGFBQTRCLEVBQVUsRUFBZSxFQUFVLGtCQUFzQztRQUFyRyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUFVLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBbEJoSCxZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBRVosWUFBTyxHQUFHLENBQUMsQ0FBQztRQUVaLGVBQVUsR0FBRyxFQUFFLENBQUM7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ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZWRpdG9yL2ludGVyYWN0aW9uL2VkaXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IFRvb2xiYXJDb3JlU2VydmljZSB9IGZyb20gJy4uL2VkaXRvci10b29sYmFyL3NoYXJlZC9zZXJ2aWNlcy90b29sYmFyLWNvcmUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdElucHV0TW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlXSxcbiAgICBzZWxlY3RvcjogJ2FwcC1ub2QtaW5zZXJ0LXRhYmxlLW1vYmlsZScsXG4gICAgdGVtcGxhdGVVcmw6ICdpbnNlcnQtdGFibGUtbW9iaWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnaW5zZXJ0LXRhYmxlLW1vYmlsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEluc2VydFRhYmxlTW9iaWxlQ29tcG9uZW50IHtcbiAgICByZWFkb25seSBtYXhSb3dzID0gNTtcblxuICAgIHJlYWRvbmx5IG1pblJvd3MgPSAxO1xuXG4gICAgcmVhZG9ubHkgbWF4Q29sdW1ucyA9IDEwO1xuXG4gICAgcmVhZG9ubHkgbWluQ29sdW1ucyA9IDE7XG5cbiAgICBmb3JtOiBGb3JtR3JvdXA8eyByb3dzOiBGb3JtQ29udHJvbDxudW1iZXI+OyBjb2x1bW5zOiBGb3JtQ29udHJvbDxudW1iZXI+IH0+O1xuXG4gICAgcm93cyA9IEFycmF5KHRoaXMubWF4Um93cylcbiAgICAgICAgLmZpbGwodW5kZWZpbmVkKVxuICAgICAgICAubWFwKChfLCBpKSA9PiBpICsgMSk7XG5cbiAgICBjb2x1bW5zID0gQXJyYXkodGhpcy5tYXhDb2x1bW5zKVxuICAgICAgICAuZmlsbCh1bmRlZmluZWQpXG4gICAgICAgIC5tYXAoKF8sIGkpID0+IGkgKyAxKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSwgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgdG9vbGJhckNvcmVTZXJ2aWNlOiBUb29sYmFyQ29yZVNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICAgICAgICByb3dzOiBbMiwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluKHRoaXMubWluUm93cyksIFZhbGlkYXRvcnMubWF4KHRoaXMubWF4Um93cyldXSxcbiAgICAgICAgICAgIGNvbHVtbnM6IFsyLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW4odGhpcy5taW5Db2x1bW5zKSwgVmFsaWRhdG9ycy5tYXgodGhpcy5tYXhDb2x1bW5zKV1dXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudG9vbGJhckNvcmVTZXJ2aWNlLnJlc2V0KCk7XG4gICAgfVxuXG4gICAgb25BcHBseSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLmluc2VydFRhYmxlKHsgcm93czogdGhpcy5mb3JtLmNvbnRyb2xzLnJvd3MudmFsdWUsIGNvbHVtbnM6IHRoaXMuZm9ybS5jb250cm9scy5jb2x1bW5zLnZhbHVlIH0pO1xuICAgICAgICB0aGlzLnRvb2xiYXJDb3JlU2VydmljZS5yZXNldCgpO1xuICAgIH1cblxuICAgIG9uU2V0VGFibGUocm93czogbnVtYmVyLCBjb2x1bW5zOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnJvd3Muc2V0VmFsdWUocm93cyk7XG4gICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5jb2x1bW5zLnNldFZhbHVlKGNvbHVtbnMpO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlSW5wdXRSb3coKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvcm0uY29udHJvbHMucm93cy52YWx1ZSA8IHRoaXMubWluUm93cykge1xuICAgICAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnJvd3Muc2V0VmFsdWUodGhpcy5taW5Sb3dzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5mb3JtLmNvbnRyb2xzLnJvd3MudmFsdWUgPiB0aGlzLm1heFJvd3MpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5yb3dzLnNldFZhbHVlKHRoaXMubWF4Um93cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNoYW5nZUlucHV0Q29sdW1uKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5mb3JtLmNvbnRyb2xzLmNvbHVtbnMudmFsdWUgPCB0aGlzLm1pbkNvbHVtbnMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5jb2x1bW5zLnNldFZhbHVlKHRoaXMubWluQ29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZm9ybS5jb250cm9scy5jb2x1bW5zLnZhbHVlID4gdGhpcy5tYXhDb2x1bW5zKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0uY29udHJvbHMuY29sdW1ucy5zZXRWYWx1ZSh0aGlzLm1heENvbHVtbnMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25DaGFuZ2VSb3dzKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VDb3VudCh2YWx1ZSwgdGhpcy5taW5Sb3dzLCB0aGlzLm1heFJvd3MsIHRoaXMuZm9ybS5jb250cm9scy5yb3dzKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZUNvbHVtbnModmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZUNvdW50KHZhbHVlLCB0aGlzLm1pbkNvbHVtbnMsIHRoaXMubWF4Q29sdW1ucywgdGhpcy5mb3JtLmNvbnRyb2xzLmNvbHVtbnMpO1xuICAgIH1cblxuICAgIGNoYW5nZUNvdW50KHZhbHVlOiBudW1iZXIsIG1pblZhbHVlOiBudW1iZXIsIG1heFZhbHVlOiBudW1iZXIsIGNvbnRyb2w6IEZvcm1Db250cm9sKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gY29udHJvbC52YWx1ZSArIHZhbHVlO1xuICAgICAgICBpZiAobmV3VmFsdWUgPiBtYXhWYWx1ZSB8fCBuZXdWYWx1ZSA8IG1pblZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29udHJvbC5zZXRWYWx1ZShuZXdWYWx1ZSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRlbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5UYWJsZSBPcHRpb25zPC9kaXY+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImlucHV0c1wiXG4gICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93c1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgZm9udEljb249XCJpY29uLXRhYmxlLXJvd3NcIiAvPlxuICAgICAgICAgICAgICAgIFJvd3M6XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgbWF0LWZhYlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DaGFuZ2VSb3dzKC0xKVwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi1yZW1vdmVcIiAvPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHMucm93c1wiXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2VJbnB1dFJvdygpXCIgLz5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1mYWJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlUm93cygxKVwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi1hZGRcIiAvPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+VGhlIFJvd3MgaXMgcmVxdWlyZWQuPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnNcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC10aXRsZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi10YWJsZS1jb2x1bW5zXCIgLz5cbiAgICAgICAgICAgICAgICBDb2x1bW5zOlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1mYWJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlQ29sdW1ucygtMSlcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250SWNvbj1cImljb24tcmVtb3ZlXCIgLz5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzLmNvbHVtbnNcIlxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlSW5wdXRDb2x1bW4oKVwiIC8+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXQtZmFiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNoYW5nZUNvbHVtbnMoMSlcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250SWNvbj1cImljb24tYWRkXCIgLz5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8bWF0LWVycm9yPlRoZSBDb2x1bW5zIGlzIHJlcXVpcmVkLjwvbWF0LWVycm9yPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInF1aWNrLXNlbGVjdFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LWhlYWRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvclwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInF1aWNrLXNlbGVjdC10aXRsZVwiPlF1aWNrIFNlbGVjdDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvclwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGlvblwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcm93IG9mIHJvd3NcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjZWxsLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2V0VGFibGUocm93LCBjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNlbGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuaGlnaGxpZ2h0ZWRdPVwicm93IDw9IGZvcm0uY29udHJvbHMucm93cy52YWx1ZSAmJiBjb2x1bW4gPD0gZm9ybS5jb250cm9scy5jb2x1bW5zLnZhbHVlXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgPGJ1dHRvblxuICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPlxuICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi1jYW5jZWwtdGhpblwiIC8+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgICBtYXQtbWluaS1mYWJcbiAgICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZFwiXG4gICAgICAgIChjbGljayk9XCJvbkFwcGx5KClcIj5cbiAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICBmb250SWNvbj1cImljb24tZG9uZS10aGluXCIgLz5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,123 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatButtonToggleModule } from '@angular/material/button-toggle';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { Alignment } from '../../apart-components/editor-toolbar/shared/enums/alignment.enum';
7
+ import { ColorPickerComponent } from '../editor-toolbar/components/buttons/color-picker/color-picker.component';
8
+ import { DEFAULT_FONT_COLOR, DEFAULT_FONT_SIZE } from '../../editor/content/constants/editor.const';
9
+ import { FontComponent } from '../editor-toolbar/components/buttons/font/font.component';
10
+ import { FontSizeComponent } from '../editor-toolbar/components/buttons/font-size/font-size.component';
11
+ import { NumberingTemplates } from '../editor-toolbar/shared/constants/numbering-templates.const';
12
+ import { NumberingTemplateType } from '../../apart-components/editor-toolbar/shared/enums/numbering-template-type.enum';
13
+ import { ParagraphStyleModel } from '../../models/generated/paragraph-style.model';
14
+ import { TextStyleModel } from '../../models/generated/text-style.model';
15
+ import { ToolbarStylesHelper } from '../editor-toolbar/shared/toolbar-styles.helper';
16
+ import * as i0 from "@angular/core";
17
+ import * as i1 from "../editor-toolbar/shared/services/custom-icon.service";
18
+ import * as i2 from "../../editor/interaction/editor.service";
19
+ import * as i3 from "../editor-toolbar/shared/services/toolbar-core.service";
20
+ import * as i4 from "@angular/material/button";
21
+ import * as i5 from "@angular/material/button-toggle";
22
+ import * as i6 from "@angular/material/icon";
23
+ export class TextFormatMobileComponent {
24
+ constructor(customIconService, editorService, toolbarCoreService) {
25
+ this.customIconService = customIconService;
26
+ this.editorService = editorService;
27
+ this.toolbarCoreService = toolbarCoreService;
28
+ this.textColorPalette = [
29
+ DEFAULT_FONT_COLOR,
30
+ '#b60205',
31
+ '#d93f0b',
32
+ '#fbca04',
33
+ '#0e8a16',
34
+ '#006b75',
35
+ '#1d76db',
36
+ '#0052cc',
37
+ '#5319e7',
38
+ '#e99695',
39
+ '#f9d0c4',
40
+ '#fef2c0',
41
+ '#c2e0c6',
42
+ '#bfdadc',
43
+ '#c5def5',
44
+ '#bfd4f2',
45
+ '#d4c5f9'
46
+ ];
47
+ this.highlightColorPalette = ['none', ...this.textColorPalette];
48
+ this.alignments = Alignment;
49
+ this.numberingTemplateType = NumberingTemplateType;
50
+ this.styles = this.editorService.styles;
51
+ this.customIconService.register();
52
+ }
53
+ ngOnInit() {
54
+ this.selectedNumberingTemplate = ToolbarStylesHelper.getNumberingTemplateType(this.styles.numberingLevelsStyles);
55
+ }
56
+ onClose() {
57
+ this.toolbarCoreService.reset();
58
+ }
59
+ onApply() {
60
+ const textStyles = new TextStyleModel(this.styles);
61
+ this.editorService.setTextStyles(textStyles);
62
+ const paragraphStyles = new ParagraphStyleModel({ alignment: this.styles.alignment });
63
+ this.editorService.setParagraphStyles(paragraphStyles);
64
+ if (this.selectedNumberingTemplate !== null) {
65
+ const templateLevels = NumberingTemplates.find(x => x.templateType === this.selectedNumberingTemplate).levels;
66
+ this.editorService.setNumberingTemplateType(templateLevels);
67
+ }
68
+ else {
69
+ this.editorService.removeNumberings();
70
+ }
71
+ this.toolbarCoreService.reset();
72
+ }
73
+ onApplyFontFamily(font) {
74
+ this.checkFontLoadedAndApplyStyle(new TextStyleModel({ fontFamily: font }));
75
+ }
76
+ onApplyFontSize(size) {
77
+ this.checkFontLoadedAndApplyStyle(new TextStyleModel({ fontSize: size }));
78
+ }
79
+ onToggleBold() {
80
+ this.checkFontLoadedAndApplyStyle(new TextStyleModel({ bold: !this.styles.bold }));
81
+ }
82
+ onToggleItalic() {
83
+ this.checkFontLoadedAndApplyStyle(new TextStyleModel({ italic: !this.styles.italic }));
84
+ }
85
+ onToggleUnderline() {
86
+ this.styles.underline = !this.styles.underline;
87
+ }
88
+ onSelectFontColor(color) {
89
+ this.styles.fontColor = color;
90
+ }
91
+ onSelectHighlightColor(color) {
92
+ this.styles.highlightColor = color;
93
+ }
94
+ onApplyAlignment(alignment) {
95
+ this.styles.alignment = alignment;
96
+ }
97
+ checkFontLoadedAndApplyStyle(style) {
98
+ const newStyles = { ...this.styles, ...style };
99
+ const italic = newStyles.italic ? 'italic ' : '';
100
+ const bold = newStyles.bold ? 'bold ' : '';
101
+ const fontStyles = `${italic}${bold}${newStyles.fontSize ?? DEFAULT_FONT_SIZE}pt ${newStyles.fontFamily}`;
102
+ if (document.fonts.check(fontStyles)) {
103
+ this.changeTextStyle(style);
104
+ return;
105
+ }
106
+ document.fonts
107
+ .load(fontStyles)
108
+ .then(() => this.changeTextStyle(style))
109
+ .catch(() => {
110
+ // continue regardless of error
111
+ });
112
+ }
113
+ changeTextStyle(style) {
114
+ this.styles = { ...this.styles, ...style };
115
+ }
116
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextFormatMobileComponent, deps: [{ token: i1.CustomIconService }, { token: i2.EditorService }, { token: i3.ToolbarCoreService }], target: i0.ɵɵFactoryTarget.Component }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TextFormatMobileComponent, isStandalone: true, selector: "app-nod-text-format-mobile", ngImport: i0, template: "<div class=\"content\">\n <div class=\"content-container\">\n <div class=\"title\">Font</div>\n <div class=\"font\">\n <app-nod-font\n [styles]=\"styles\"\n (selectFont)=\"onApplyFontFamily($event)\" />\n <app-nod-font-size\n [fontSize]=\"styles.fontSize\"\n (selectFontSize)=\"onApplyFontSize($event)\" />\n </div>\n </div>\n <div class=\"content-container\">\n <div class=\"title\">Text Style</div>\n <div class=\"text-style-container\">\n <mat-button-toggle\n [checked]=\"styles.bold\"\n (click)=\"onToggleBold()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-bold\" />\n </mat-button-toggle>\n <mat-button-toggle\n [checked]=\"styles.italic\"\n (click)=\"onToggleItalic()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-italic\" />\n </mat-button-toggle>\n <mat-button-toggle\n [checked]=\"styles.underline\"\n (click)=\"onToggleUnderline()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-underlined\" />\n </mat-button-toggle>\n <app-nod-color-picker\n id=\"icon-format-colortext\"\n class=\"text-color\"\n icon=\"icon-format-colortext\"\n [color]=\"styles.fontColor\"\n [palette]=\"textColorPalette\"\n (colorChange)=\"onSelectFontColor($event)\" />\n <app-nod-color-picker\n id=\"icon-link-highlighter\"\n class=\"highlight-color\"\n icon=\"icon-link-highlighter\"\n [color]=\"styles.highlightColor\"\n [palette]=\"highlightColorPalette\"\n (colorChange)=\"onSelectHighlightColor($event)\" />\n </div>\n </div>\n <div class=\"content-container\">\n <div class=\"title\">Alignment</div>\n <mat-button-toggle-group\n name=\"format\"\n aria-label=\"format\"\n [hideMultipleSelectionIndicator]=\"true\"\n [hideSingleSelectionIndicator]=\"true\"\n [value]=\"styles.alignment\"\n (change)=\"onApplyAlignment($event.value)\">\n <mat-button-toggle [value]=\"alignments.Left\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-alignleft\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle [value]=\"alignments.Center\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-aligncenter\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle [value]=\"alignments.Right\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-alignright\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n class=\"hide\"\n [value]=\"alignments.Justify\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-align\"></mat-icon>\n </mat-button-toggle>\n </mat-button-toggle-group>\n </div>\n <div class=\"content-container\">\n <div class=\"title\">Bulleted & Numbered List</div>\n <div class=\"numbering-container\">\n <div class=\"numbering-line\">\n <div\n class=\"empty-numbering\"\n [class.selected]=\"selectedNumberingTemplate === null\"\n (click)=\"selectedNumberingTemplate = null\">\n None\n </div>\n <mat-icon\n svgIcon=\"marker-1\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList1\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList1\" />\n <mat-icon\n svgIcon=\"marker-2\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList2\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList2\" />\n <mat-icon\n svgIcon=\"marker-3\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList3\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList3\" />\n </div>\n <div class=\"numbering-line\">\n <mat-icon\n svgIcon=\"marker-4\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList4\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList4\" />\n <mat-icon\n svgIcon=\"marker-5\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList5\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList5\" />\n <mat-icon\n svgIcon=\"marker-6\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList6\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList6\" />\n <mat-icon\n svgIcon=\"number-1\"\n class=\"list-number\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.NumberList1\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.NumberList1\" />\n </div>\n </div>\n </div>\n</div>\n<div class=\"actions\">\n <button\n mat-mini-fab\n (click)=\"onClose()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-cancel-thin\" />\n </button>\n <button\n mat-mini-fab\n (click)=\"onApply()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-done-thin\" />\n </button>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%;padding:30px;justify-content:space-between;overflow:hidden}.content-container{padding-bottom:30px}.title{font-size:16px;font-weight:500;padding-bottom:10px}.font{display:flex;justify-content:space-between}.numbering-container{display:flex;flex-direction:column}.numbering-container .mat-icon{width:102px;height:120px;border-width:1px;border-style:solid}app-nod-font{width:65%}app-nod-font ::ng-deep .mat-mdc-button{height:48px;width:100%}app-nod-font ::ng-deep .mat-mdc-button .mdc-button__label{width:100%}app-nod-font ::ng-deep .mat-mdc-button .font-menu span{padding-left:5px}app-nod-font ::ng-deep .mat-mdc-button .mat-icon{margin:0}app-nod-font-size{display:flex;align-items:center;width:30%;border:1px solid;border-radius:4px;margin:0}app-nod-font-size ::ng-deep .mdc-button.mat-mdc-button{border:none}app-nod-font-size ::ng-deep input{flex:1}mat-button-toggle-group{display:flex;justify-content:space-between;border:none;box-shadow:none}mat-button-toggle-group .mat-button-toggle{width:102px;height:48px;border:none}.text-style-container{display:flex;justify-content:space-between}.text-style-container ::ng-deep .mdc-button.mat-mdc-button{border:none}.text-style-container ::ng-deep .mat-button-toggle,.text-style-container ::ng-deep .mat-mdc-button{width:80px;height:48px;margin:0;border:none}.empty-numbering{display:flex;justify-content:center;align-items:center;text-transform:uppercase;font-size:13;font-weight:400;border-width:1px;border-style:solid;width:102px;height:120px}.numbering-line{display:flex;flex-direction:row;justify-content:space-between;padding-bottom:10px}.actions{text-align:end}.actions .mdc-fab:first-child{margin-right:10px}.hide{display:none}\n"], dependencies: [{ kind: "component", type: ColorPickerComponent, selector: "app-nod-color-picker", inputs: ["color", "icon", "isDisabled", "palette"], outputs: ["colorChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "component", type: FontComponent, selector: "app-nod-font", inputs: ["isDisabled", "styles"], outputs: ["selectFont"] }, { kind: "component", type: FontSizeComponent, selector: "app-nod-font-size", inputs: ["isDisabled", "fontSize"], outputs: ["selectFontSize"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i5.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i5.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
118
+ }
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextFormatMobileComponent, decorators: [{
120
+ type: Component,
121
+ args: [{ standalone: true, imports: [ColorPickerComponent, CommonModule, FontComponent, FontSizeComponent, MatButtonModule, MatButtonToggleModule, MatIconModule], selector: 'app-nod-text-format-mobile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"content\">\n <div class=\"content-container\">\n <div class=\"title\">Font</div>\n <div class=\"font\">\n <app-nod-font\n [styles]=\"styles\"\n (selectFont)=\"onApplyFontFamily($event)\" />\n <app-nod-font-size\n [fontSize]=\"styles.fontSize\"\n (selectFontSize)=\"onApplyFontSize($event)\" />\n </div>\n </div>\n <div class=\"content-container\">\n <div class=\"title\">Text Style</div>\n <div class=\"text-style-container\">\n <mat-button-toggle\n [checked]=\"styles.bold\"\n (click)=\"onToggleBold()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-bold\" />\n </mat-button-toggle>\n <mat-button-toggle\n [checked]=\"styles.italic\"\n (click)=\"onToggleItalic()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-italic\" />\n </mat-button-toggle>\n <mat-button-toggle\n [checked]=\"styles.underline\"\n (click)=\"onToggleUnderline()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-underlined\" />\n </mat-button-toggle>\n <app-nod-color-picker\n id=\"icon-format-colortext\"\n class=\"text-color\"\n icon=\"icon-format-colortext\"\n [color]=\"styles.fontColor\"\n [palette]=\"textColorPalette\"\n (colorChange)=\"onSelectFontColor($event)\" />\n <app-nod-color-picker\n id=\"icon-link-highlighter\"\n class=\"highlight-color\"\n icon=\"icon-link-highlighter\"\n [color]=\"styles.highlightColor\"\n [palette]=\"highlightColorPalette\"\n (colorChange)=\"onSelectHighlightColor($event)\" />\n </div>\n </div>\n <div class=\"content-container\">\n <div class=\"title\">Alignment</div>\n <mat-button-toggle-group\n name=\"format\"\n aria-label=\"format\"\n [hideMultipleSelectionIndicator]=\"true\"\n [hideSingleSelectionIndicator]=\"true\"\n [value]=\"styles.alignment\"\n (change)=\"onApplyAlignment($event.value)\">\n <mat-button-toggle [value]=\"alignments.Left\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-alignleft\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle [value]=\"alignments.Center\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-aligncenter\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle [value]=\"alignments.Right\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-alignright\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n class=\"hide\"\n [value]=\"alignments.Justify\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-format-align\"></mat-icon>\n </mat-button-toggle>\n </mat-button-toggle-group>\n </div>\n <div class=\"content-container\">\n <div class=\"title\">Bulleted & Numbered List</div>\n <div class=\"numbering-container\">\n <div class=\"numbering-line\">\n <div\n class=\"empty-numbering\"\n [class.selected]=\"selectedNumberingTemplate === null\"\n (click)=\"selectedNumberingTemplate = null\">\n None\n </div>\n <mat-icon\n svgIcon=\"marker-1\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList1\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList1\" />\n <mat-icon\n svgIcon=\"marker-2\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList2\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList2\" />\n <mat-icon\n svgIcon=\"marker-3\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList3\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList3\" />\n </div>\n <div class=\"numbering-line\">\n <mat-icon\n svgIcon=\"marker-4\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList4\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList4\" />\n <mat-icon\n svgIcon=\"marker-5\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList5\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList5\" />\n <mat-icon\n svgIcon=\"marker-6\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.BulletList6\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.BulletList6\" />\n <mat-icon\n svgIcon=\"number-1\"\n class=\"list-number\"\n [class.selected]=\"selectedNumberingTemplate === numberingTemplateType.NumberList1\"\n (click)=\"selectedNumberingTemplate = numberingTemplateType.NumberList1\" />\n </div>\n </div>\n </div>\n</div>\n<div class=\"actions\">\n <button\n mat-mini-fab\n (click)=\"onClose()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-cancel-thin\" />\n </button>\n <button\n mat-mini-fab\n (click)=\"onApply()\">\n <mat-icon\n fontSet=\"noder-icon\"\n fontIcon=\"icon-done-thin\" />\n </button>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%;padding:30px;justify-content:space-between;overflow:hidden}.content-container{padding-bottom:30px}.title{font-size:16px;font-weight:500;padding-bottom:10px}.font{display:flex;justify-content:space-between}.numbering-container{display:flex;flex-direction:column}.numbering-container .mat-icon{width:102px;height:120px;border-width:1px;border-style:solid}app-nod-font{width:65%}app-nod-font ::ng-deep .mat-mdc-button{height:48px;width:100%}app-nod-font ::ng-deep .mat-mdc-button .mdc-button__label{width:100%}app-nod-font ::ng-deep .mat-mdc-button .font-menu span{padding-left:5px}app-nod-font ::ng-deep .mat-mdc-button .mat-icon{margin:0}app-nod-font-size{display:flex;align-items:center;width:30%;border:1px solid;border-radius:4px;margin:0}app-nod-font-size ::ng-deep .mdc-button.mat-mdc-button{border:none}app-nod-font-size ::ng-deep input{flex:1}mat-button-toggle-group{display:flex;justify-content:space-between;border:none;box-shadow:none}mat-button-toggle-group .mat-button-toggle{width:102px;height:48px;border:none}.text-style-container{display:flex;justify-content:space-between}.text-style-container ::ng-deep .mdc-button.mat-mdc-button{border:none}.text-style-container ::ng-deep .mat-button-toggle,.text-style-container ::ng-deep .mat-mdc-button{width:80px;height:48px;margin:0;border:none}.empty-numbering{display:flex;justify-content:center;align-items:center;text-transform:uppercase;font-size:13;font-weight:400;border-width:1px;border-style:solid;width:102px;height:120px}.numbering-line{display:flex;flex-direction:row;justify-content:space-between;padding-bottom:10px}.actions{text-align:end}.actions .mdc-fab:first-child{margin-right:10px}.hide{display:none}\n"] }]
122
+ }], ctorParameters: () => [{ type: i1.CustomIconService }, { type: i2.EditorService }, { type: i3.ToolbarCoreService }] });
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1mb3JtYXQtbW9iaWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub2Rlci9zcmMvbGliL2FwYXJ0LWNvbXBvbmVudHMvdGV4dC1mb3JtYXQtbW9iaWxlL3RleHQtZm9ybWF0LW1vYmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9hcGFydC1jb21wb25lbnRzL3RleHQtZm9ybWF0LW1vYmlsZS90ZXh0LWZvcm1hdC1tb2JpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFFaEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFcEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBRXZHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlGQUFpRixDQUFDO0FBQ3hILE9BQU8sRUFB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VUFBVSxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QixPQUFPO1NBQ1Y7UUFFRCxRQUFRLENBQUMsS0FBSzthQUNULElBQUksQ0FBQyxVQUFVLENBQUM7YUFDaEIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdkMsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNSLCtCQUErQjtRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTyxlQUFlLENBQUMsS0FBcUI7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQy9DLENBQUM7K0dBbkhRLHlCQUF5QjttR0FBekIseUJBQXlCLHNGQzdCdEMsODBNQWtKQSwwd0REM0hjLG9CQUFvQiw4SUFBRSxZQUFZLCtCQUFFLGFBQWEsb0hBQUUsaUJBQWlCLDhIQUFFLGVBQWUsMklBQUUscUJBQXFCLHdsQkFBRSxhQUFhOzs0RkFNNUgseUJBQXlCO2tCQVJyQyxTQUFTO2lDQUNNLElBQUksV0FDUCxDQUFDLG9CQUFvQixFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLGFBQWEsQ0FBQyxZQUM1SCw0QkFBNEIsbUJBR3JCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbmltcG9ydCB7IEFsaWdubWVudCB9IGZyb20gJy4uLy4uL2FwYXJ0LWNvbXBvbmVudHMvZWRpdG9yLXRvb2xiYXIvc2hhcmVkL2VudW1zL2FsaWdubWVudC5lbnVtJztcbmltcG9ydCB7IENvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vZWRpdG9yLXRvb2xiYXIvY29tcG9uZW50cy9idXR0b25zL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbUljb25TZXJ2aWNlIH0gZnJvbSAnLi4vZWRpdG9yLXRvb2xiYXIvc2hhcmVkL3NlcnZpY2VzL2N1c3RvbS1pY29uLnNlcnZpY2UnO1xuaW1wb3J0IHsgREVGQVVMVF9GT05UX0NPTE9SLCBERUZBVUxUX0ZPTlRfU0laRSB9IGZyb20gJy4uLy4uL2VkaXRvci9jb250ZW50L2NvbnN0YW50cy9lZGl0b3IuY29uc3QnO1xuaW1wb3J0IHsgRWRpdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL2VkaXRvci9pbnRlcmFjdGlvbi9lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBGb250Q29tcG9uZW50IH0gZnJvbSAnLi4vZWRpdG9yLXRvb2xiYXIvY29tcG9uZW50cy9idXR0b25zL2ZvbnQvZm9udC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9udFNpemVDb21wb25lbnQgfSBmcm9tICcuLi9lZGl0b3ItdG9vbGJhci9jb21wb25lbnRzL2J1dHRvbnMvZm9udC1zaXplL2ZvbnQtc2l6ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSVRvb2xiYXJTdHlsZXMgfSBmcm9tICcuLi8uLi9lZGl0b3IvY29udGVudC9kaXNwbGF5LWRhdGEvdG9vbGJhci1zdHlsZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IE51bWJlcmluZ1RlbXBsYXRlcyB9IGZyb20gJy4uL2VkaXRvci10b29sYmFyL3NoYXJlZC9jb25zdGFudHMvbnVtYmVyaW5nLXRlbXBsYXRlcy5jb25zdCc7XG5pbXBvcnQgeyBOdW1iZXJpbmdUZW1wbGF0ZVR5cGUgfSBmcm9tICcuLi8uLi9hcGFydC1jb21wb25lbnRzL2VkaXRvci10b29sYmFyL3NoYXJlZC9lbnVtcy9udW1iZXJpbmctdGVtcGxhdGUtdHlwZS5lbnVtJztcbmltcG9ydCB7IFBhcmFncmFwaFN0eWxlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL3BhcmFncmFwaC1zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBUZXh0U3R5bGVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvdGV4dC1zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyQ29yZVNlcnZpY2UgfSBmcm9tICcuLi9lZGl0b3ItdG9vbGJhci9zaGFyZWQvc2VydmljZXMvdG9vbGJhci1jb3JlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9vbGJhclN0eWxlc0hlbHBlciB9IGZyb20gJy4uL2VkaXRvci10b29sYmFyL3NoYXJlZC90b29sYmFyLXN0eWxlcy5oZWxwZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb2xvclBpY2tlckNvbXBvbmVudCwgQ29tbW9uTW9kdWxlLCBGb250Q29tcG9uZW50LCBGb250U2l6ZUNvbXBvbmVudCwgTWF0QnV0dG9uTW9kdWxlLCBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsIE1hdEljb25Nb2R1bGVdLFxuICAgIHNlbGVjdG9yOiAnYXBwLW5vZC10ZXh0LWZvcm1hdC1tb2JpbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAndGV4dC1mb3JtYXQtbW9iaWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsndGV4dC1mb3JtYXQtbW9iaWxlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVGV4dEZvcm1hdE1vYmlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgc3R5bGVzITogSVRvb2xiYXJTdHlsZXM7XG5cbiAgICB0ZXh0Q29sb3JQYWxldHRlID0gW1xuICAgICAgICBERUZBVUxUX0ZPTlRfQ09MT1IsXG4gICAgICAgICcjYjYwMjA1JyxcbiAgICAgICAgJyNkOTNmMGInLFxuICAgICAgICAnI2ZiY2EwNCcsXG4gICAgICAgICcjMGU4YTE2JyxcbiAgICAgICAgJyMwMDZiNzUnLFxuICAgICAgICAnIzFkNzZkYicsXG4gICAgICAgICcjMDA1MmNjJyxcbiAgICAgICAgJyM1MzE5ZTcnLFxuICAgICAgICAnI2U5OTY5NScsXG4gICAgICAgICcjZjlkMGM0JyxcbiAgICAgICAgJyNmZWYyYzAnLFxuICAgICAgICAnI2MyZTBjNicsXG4gICAgICAgICcjYmZkYWRjJyxcbiAgICAgICAgJyNjNWRlZjUnLFxuICAgICAgICAnI2JmZDRmMicsXG4gICAgICAgICcjZDRjNWY5J1xuICAgIF07XG5cbiAgICBoaWdobGlnaHRDb2xvclBhbGV0dGUgPSBbJ25vbmUnLCAuLi50aGlzLnRleHRDb2xvclBhbGV0dGVdO1xuXG4gICAgcmVhZG9ubHkgYWxpZ25tZW50cyA9IEFsaWdubWVudDtcblxuICAgIG51bWJlcmluZ1RlbXBsYXRlVHlwZSA9IE51bWJlcmluZ1RlbXBsYXRlVHlwZTtcblxuICAgIHNlbGVjdGVkTnVtYmVyaW5nVGVtcGxhdGU6IE51bWJlcmluZ1RlbXBsYXRlVHlwZSB8IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjdXN0b21JY29uU2VydmljZTogQ3VzdG9tSWNvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0b29sYmFyQ29yZVNlcnZpY2U6IFRvb2xiYXJDb3JlU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZWRpdG9yU2VydmljZS5zdHlsZXM7XG4gICAgICAgIHRoaXMuY3VzdG9tSWNvblNlcnZpY2UucmVnaXN0ZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID0gVG9vbGJhclN0eWxlc0hlbHBlci5nZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUodGhpcy5zdHlsZXMubnVtYmVyaW5nTGV2ZWxzU3R5bGVzKTtcbiAgICB9XG5cbiAgICBvbkNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRvb2xiYXJDb3JlU2VydmljZS5yZXNldCgpO1xuICAgIH1cblxuICAgIG9uQXBwbHkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRleHRTdHlsZXMgPSBuZXcgVGV4dFN0eWxlTW9kZWwodGhpcy5zdHlsZXMpO1xuICAgICAgICB0aGlzLmVkaXRvclNlcnZpY2Uuc2V0VGV4dFN0eWxlcyh0ZXh0U3R5bGVzKTtcbiAgICAgICAgY29uc3QgcGFyYWdyYXBoU3R5bGVzID0gbmV3IFBhcmFncmFwaFN0eWxlTW9kZWwoeyBhbGlnbm1lbnQ6IHRoaXMuc3R5bGVzLmFsaWdubWVudCB9KTtcbiAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLnNldFBhcmFncmFwaFN0eWxlcyhwYXJhZ3JhcGhTdHlsZXMpO1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlICE9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCB0ZW1wbGF0ZUxldmVscyA9IE51bWJlcmluZ1RlbXBsYXRlcy5maW5kKHggPT4geC50ZW1wbGF0ZVR5cGUgPT09IHRoaXMuc2VsZWN0ZWROdW1iZXJpbmdUZW1wbGF0ZSkubGV2ZWxzO1xuICAgICAgICAgICAgdGhpcy5lZGl0b3JTZXJ2aWNlLnNldE51bWJlcmluZ1RlbXBsYXRlVHlwZSh0ZW1wbGF0ZUxldmVscyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVkaXRvclNlcnZpY2UucmVtb3ZlTnVtYmVyaW5ncygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudG9vbGJhckNvcmVTZXJ2aWNlLnJlc2V0KCk7XG4gICAgfVxuXG4gICAgb25BcHBseUZvbnRGYW1pbHkoZm9udDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tGb250TG9hZGVkQW5kQXBwbHlTdHlsZShuZXcgVGV4dFN0eWxlTW9kZWwoeyBmb250RmFtaWx5OiBmb250IH0pKTtcbiAgICB9XG5cbiAgICBvbkFwcGx5Rm9udFNpemUoc2l6ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tGb250TG9hZGVkQW5kQXBwbHlTdHlsZShuZXcgVGV4dFN0eWxlTW9kZWwoeyBmb250U2l6ZTogc2l6ZSB9KSk7XG4gICAgfVxuXG4gICAgb25Ub2dnbGVCb2xkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrRm9udExvYWRlZEFuZEFwcGx5U3R5bGUobmV3IFRleHRTdHlsZU1vZGVsKHsgYm9sZDogIXRoaXMuc3R5bGVzLmJvbGQgfSkpO1xuICAgIH1cblxuICAgIG9uVG9nZ2xlSXRhbGljKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrRm9udExvYWRlZEFuZEFwcGx5U3R5bGUobmV3IFRleHRTdHlsZU1vZGVsKHsgaXRhbGljOiAhdGhpcy5zdHlsZXMuaXRhbGljIH0pKTtcbiAgICB9XG5cbiAgICBvblRvZ2dsZVVuZGVybGluZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdHlsZXMudW5kZXJsaW5lID0gIXRoaXMuc3R5bGVzLnVuZGVybGluZTtcbiAgICB9XG5cbiAgICBvblNlbGVjdEZvbnRDb2xvcihjb2xvcjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3R5bGVzLmZvbnRDb2xvciA9IGNvbG9yO1xuICAgIH1cblxuICAgIG9uU2VsZWN0SGlnaGxpZ2h0Q29sb3IoY29sb3I6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0eWxlcy5oaWdobGlnaHRDb2xvciA9IGNvbG9yO1xuICAgIH1cblxuICAgIG9uQXBwbHlBbGlnbm1lbnQoYWxpZ25tZW50OiBBbGlnbm1lbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdHlsZXMuYWxpZ25tZW50ID0gYWxpZ25tZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tGb250TG9hZGVkQW5kQXBwbHlTdHlsZShzdHlsZTogVGV4dFN0eWxlTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbmV3U3R5bGVzID0geyAuLi50aGlzLnN0eWxlcywgLi4uc3R5bGUgfTtcbiAgICAgICAgY29uc3QgaXRhbGljID0gbmV3U3R5bGVzLml0YWxpYyA/ICdpdGFsaWMgJyA6ICcnO1xuICAgICAgICBjb25zdCBib2xkID0gbmV3U3R5bGVzLmJvbGQgPyAnYm9sZCAnIDogJyc7XG4gICAgICAgIGNvbnN0IGZvbnRTdHlsZXMgPSBgJHtpdGFsaWN9JHtib2xkfSR7bmV3U3R5bGVzLmZvbnRTaXplID8/IERFRkFVTFRfRk9OVF9TSVpFfXB0ICR7bmV3U3R5bGVzLmZvbnRGYW1pbHl9YDtcblxuICAgICAgICBpZiAoZG9jdW1lbnQuZm9udHMuY2hlY2soZm9udFN0eWxlcykpIHtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlVGV4dFN0eWxlKHN0eWxlKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGRvY3VtZW50LmZvbnRzXG4gICAgICAgICAgICAubG9hZChmb250U3R5bGVzKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5jaGFuZ2VUZXh0U3R5bGUoc3R5bGUpKVxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBjb250aW51ZSByZWdhcmRsZXNzIG9mIGVycm9yXG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoYW5nZVRleHRTdHlsZShzdHlsZTogVGV4dFN0eWxlTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdHlsZXMgPSB7IC4uLnRoaXMuc3R5bGVzLCAuLi5zdHlsZSB9O1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPkZvbnQ8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZvbnRcIj5cbiAgICAgICAgICAgIDxhcHAtbm9kLWZvbnRcbiAgICAgICAgICAgICAgICBbc3R5bGVzXT1cInN0eWxlc1wiXG4gICAgICAgICAgICAgICAgKHNlbGVjdEZvbnQpPVwib25BcHBseUZvbnRGYW1pbHkoJGV2ZW50KVwiIC8+XG4gICAgICAgICAgICA8YXBwLW5vZC1mb250LXNpemVcbiAgICAgICAgICAgICAgICBbZm9udFNpemVdPVwic3R5bGVzLmZvbnRTaXplXCJcbiAgICAgICAgICAgICAgICAoc2VsZWN0Rm9udFNpemUpPVwib25BcHBseUZvbnRTaXplKCRldmVudClcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+VGV4dCBTdHlsZTwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zdHlsZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZVxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInN0eWxlcy5ib2xkXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVCb2xkKClcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgZm9udFNldD1cIm5vZGVyLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBmb250SWNvbj1cImljb24tZm9ybWF0LWJvbGRcIiAvPlxuICAgICAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cbiAgICAgICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZVxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInN0eWxlcy5pdGFsaWNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblRvZ2dsZUl0YWxpYygpXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgZm9udEljb249XCJpY29uLWZvcm1hdC1pdGFsaWNcIiAvPlxuICAgICAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cbiAgICAgICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZVxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInN0eWxlcy51bmRlcmxpbmVcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblRvZ2dsZVVuZGVybGluZSgpXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgZm9udEljb249XCJpY29uLWZvcm1hdC11bmRlcmxpbmVkXCIgLz5cbiAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgICAgICAgICA8YXBwLW5vZC1jb2xvci1waWNrZXJcbiAgICAgICAgICAgICAgICBpZD1cImljb24tZm9ybWF0LWNvbG9ydGV4dFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWNvbG9yXCJcbiAgICAgICAgICAgICAgICBpY29uPVwiaWNvbi1mb3JtYXQtY29sb3J0ZXh0XCJcbiAgICAgICAgICAgICAgICBbY29sb3JdPVwic3R5bGVzLmZvbnRDb2xvclwiXG4gICAgICAgICAgICAgICAgW3BhbGV0dGVdPVwidGV4dENvbG9yUGFsZXR0ZVwiXG4gICAgICAgICAgICAgICAgKGNvbG9yQ2hhbmdlKT1cIm9uU2VsZWN0Rm9udENvbG9yKCRldmVudClcIiAvPlxuICAgICAgICAgICAgPGFwcC1ub2QtY29sb3ItcGlja2VyXG4gICAgICAgICAgICAgICAgaWQ9XCJpY29uLWxpbmstaGlnaGxpZ2h0ZXJcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiaGlnaGxpZ2h0LWNvbG9yXCJcbiAgICAgICAgICAgICAgICBpY29uPVwiaWNvbi1saW5rLWhpZ2hsaWdodGVyXCJcbiAgICAgICAgICAgICAgICBbY29sb3JdPVwic3R5bGVzLmhpZ2hsaWdodENvbG9yXCJcbiAgICAgICAgICAgICAgICBbcGFsZXR0ZV09XCJoaWdobGlnaHRDb2xvclBhbGV0dGVcIlxuICAgICAgICAgICAgICAgIChjb2xvckNoYW5nZSk9XCJvblNlbGVjdEhpZ2hsaWdodENvbG9yKCRldmVudClcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+QWxpZ25tZW50PC9kaXY+XG4gICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cFxuICAgICAgICAgICAgbmFtZT1cImZvcm1hdFwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiZm9ybWF0XCJcbiAgICAgICAgICAgIFtoaWRlTXVsdGlwbGVTZWxlY3Rpb25JbmRpY2F0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbaGlkZVNpbmdsZVNlbGVjdGlvbkluZGljYXRvcl09XCJ0cnVlXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJzdHlsZXMuYWxpZ25tZW50XCJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwib25BcHBseUFsaWdubWVudCgkZXZlbnQudmFsdWUpXCI+XG4gICAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgW3ZhbHVlXT1cImFsaWdubWVudHMuTGVmdFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi1mb3JtYXQtYWxpZ25sZWZ0XCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgW3ZhbHVlXT1cImFsaWdubWVudHMuQ2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgZm9udEljb249XCJpY29uLWZvcm1hdC1hbGlnbmNlbnRlclwiPjwvbWF0LWljb24+XG4gICAgICAgICAgICA8L21hdC1idXR0b24tdG9nZ2xlPlxuICAgICAgICAgICAgPG1hdC1idXR0b24tdG9nZ2xlIFt2YWx1ZV09XCJhbGlnbm1lbnRzLlJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGZvbnRTZXQ9XCJub2Rlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgZm9udEljb249XCJpY29uLWZvcm1hdC1hbGlnbnJpZ2h0XCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGVcbiAgICAgICAgICAgICAgICBjbGFzcz1cImhpZGVcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJhbGlnbm1lbnRzLkp1c3RpZnlcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgZm9udFNldD1cIm5vZGVyLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBmb250SWNvbj1cImljb24tZm9ybWF0LWFsaWduXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXA+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPkJ1bGxldGVkICYgTnVtYmVyZWQgTGlzdDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibnVtYmVyaW5nLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm51bWJlcmluZy1saW5lXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImVtcHR5LW51bWJlcmluZ1wiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID09PSBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdGVkTnVtYmVyaW5nVGVtcGxhdGUgPSBudWxsXCI+XG4gICAgICAgICAgICAgICAgICAgIE5vbmVcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgc3ZnSWNvbj1cIm1hcmtlci0xXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGVkTnVtYmVyaW5nVGVtcGxhdGUgPT09IG51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0MVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID0gbnVtYmVyaW5nVGVtcGxhdGVUeXBlLkJ1bGxldExpc3QxXCIgLz5cbiAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgc3ZnSWNvbj1cIm1hcmtlci0yXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGVkTnVtYmVyaW5nVGVtcGxhdGUgPT09IG51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0MlwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID0gbnVtYmVyaW5nVGVtcGxhdGVUeXBlLkJ1bGxldExpc3QyXCIgLz5cbiAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgc3ZnSWNvbj1cIm1hcmtlci0zXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cInNlbGVjdGVkTnVtYmVyaW5nVGVtcGxhdGUgPT09IG51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0M1wiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID0gbnVtYmVyaW5nVGVtcGxhdGVUeXBlLkJ1bGxldExpc3QzXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm51bWJlcmluZy1saW5lXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIHN2Z0ljb249XCJtYXJrZXItNFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID09PSBudW1iZXJpbmdUZW1wbGF0ZVR5cGUuQnVsbGV0TGlzdDRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWROdW1iZXJpbmdUZW1wbGF0ZSA9IG51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0NFwiIC8+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIHN2Z0ljb249XCJtYXJrZXItNVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID09PSBudW1iZXJpbmdUZW1wbGF0ZVR5cGUuQnVsbGV0TGlzdDVcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWROdW1iZXJpbmdUZW1wbGF0ZSA9IG51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0NVwiIC8+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIHN2Z0ljb249XCJtYXJrZXItNlwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZE51bWJlcmluZ1RlbXBsYXRlID09PSBudW1iZXJpbmdUZW1wbGF0ZVR5cGUuQnVsbGV0TGlzdDZcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWROdW1iZXJpbmdUZW1wbGF0ZSA9IG51bWJlcmluZ1RlbXBsYXRlVHlwZS5CdWxsZXRMaXN0NlwiIC8+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgIHN2Z0ljb249XCJudW1iZXItMVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1udW1iZXJcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Muc2VsZWN0ZWRdPVwic2VsZWN0ZWROdW1iZXJpbmdUZW1wbGF0ZSA9PT0gbnVtYmVyaW5nVGVtcGxhdGVUeXBlLk51bWJlckxpc3QxXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdGVkTnVtYmVyaW5nVGVtcGxhdGUgPSBudW1iZXJpbmdUZW1wbGF0ZVR5cGUuTnVtYmVyTGlzdDFcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiYWN0aW9uc1wiPlxuICAgIDxidXR0b25cbiAgICAgICAgbWF0LW1pbmktZmFiXG4gICAgICAgIChjbGljayk9XCJvbkNsb3NlKClcIj5cbiAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICBmb250SWNvbj1cImljb24tY2FuY2VsLXRoaW5cIiAvPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgICAgbWF0LW1pbmktZmFiXG4gICAgICAgIChjbGljayk9XCJvbkFwcGx5KClcIj5cbiAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICBmb250U2V0PVwibm9kZXItaWNvblwiXG4gICAgICAgICAgICBmb250SWNvbj1cImljb24tZG9uZS10aGluXCIgLz5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,9 @@
1
+ export class EdgeElementModel {
2
+ constructor(fields) {
3
+ if (!fields) {
4
+ return;
5
+ }
6
+ Object.assign(this, fields);
7
+ }
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS1lbGVtZW50Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvZWRpdG9yL2NvbXBvbmVudHMvZWRnZXMvZWRnZS1lbGVtZW50Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFLekIsWUFBWSxNQUFrQztRQUMxQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnZVR5cGUgfSBmcm9tICcuL3BhZ2UtdHlwZS5lbnVtJztcblxuZXhwb3J0IGNsYXNzIEVkZ2VFbGVtZW50TW9kZWwge1xuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICAgIHBhZ2U6IG51bWJlcjtcbiAgICBwYWdlVHlwZTogUGFnZVR5cGU7XG5cbiAgICBjb25zdHJ1Y3RvcihmaWVsZHM/OiBQYXJ0aWFsPEVkZ2VFbGVtZW50TW9kZWw+KSB7XG4gICAgICAgIGlmICghZmllbGRzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGZpZWxkcyk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,6 @@
1
+ export var EdgeType;
2
+ (function (EdgeType) {
3
+ EdgeType[EdgeType["Header"] = 0] = "Header";
4
+ EdgeType[EdgeType["Footer"] = 1] = "Footer";
5
+ })(EdgeType || (EdgeType = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi9lZGl0b3IvY29tcG9uZW50cy9lZGdlcy9lZGdlLXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxRQUdYO0FBSEQsV0FBWSxRQUFRO0lBQ2hCLDJDQUFNLENBQUE7SUFDTiwyQ0FBTSxDQUFBO0FBQ1YsQ0FBQyxFQUhXLFFBQVEsS0FBUixRQUFRLFFBR25CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRWRnZVR5cGUge1xuICAgIEhlYWRlcixcbiAgICBGb290ZXJcbn1cbiJdfQ==