legalesign-document-viewer 0.9.21 → 0.9.23

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 (486) hide show
  1. package/dist/cjs/{i18n-2j78quax.js → i18n-Bp2XLXxM.js} +4 -2
  2. package/dist/cjs/{i18n-2j78quax.js.map → i18n-Bp2XLXxM.js.map} +1 -1
  3. package/dist/cjs/{index-DjAX0m_J.js → index-DFeU0FNc.js} +9 -3
  4. package/dist/cjs/index-DFeU0FNc.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/ls-add-new-button_51.cjs.entry.js +976 -573
  7. package/dist/cjs/ls-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/ls-banner.cjs.entry.js +1 -1
  9. package/dist/cjs/ls-card.cjs.entry.js +1 -1
  10. package/dist/cjs/ls-checkbox-input_5.cjs.entry.js +1 -1
  11. package/dist/cjs/ls-compose-manager.cjs.entry.js +4 -4
  12. package/dist/cjs/ls-details-section.cjs.entry.js +1 -1
  13. package/dist/cjs/ls-document-viewer.cjs.js +2 -2
  14. package/dist/cjs/ls-dropdown-item.cjs.entry.js +1 -1
  15. package/dist/cjs/ls-dropdown.cjs.entry.js +1 -1
  16. package/dist/cjs/ls-field-properties-dropdown.cjs.entry.js +2 -2
  17. package/dist/cjs/ls-formfield.cjs.entry.js +1 -1
  18. package/dist/cjs/ls-header-bar.cjs.entry.js +1 -1
  19. package/dist/cjs/ls-icon-button.cjs.entry.js +1 -1
  20. package/dist/cjs/ls-icon-check-button.cjs.entry.js +1 -1
  21. package/dist/cjs/ls-label.cjs.entry.js +1 -1
  22. package/dist/cjs/ls-list-card-button.cjs.entry.js +1 -1
  23. package/dist/cjs/ls-navbar.cjs.entry.js +1 -1
  24. package/dist/cjs/ls-notification.cjs.entry.js +1 -1
  25. package/dist/cjs/ls-radio-group.cjs.entry.js +1 -1
  26. package/dist/cjs/ls-radio-input.cjs.entry.js +1 -1
  27. package/dist/cjs/ls-tabs.cjs.entry.js +1 -1
  28. package/dist/cjs/ls-tag.cjs.entry.js +1 -1
  29. package/dist/cjs/ls-text.cjs.entry.js +1 -1
  30. package/dist/cjs/ls-timeline-step.cjs.entry.js +1 -1
  31. package/dist/cjs/ls-timeline.cjs.entry.js +1 -1
  32. package/dist/cjs/ls-title-input.cjs.entry.js +2 -2
  33. package/dist/cjs/test-item.cjs.entry.js +1 -1
  34. package/dist/collection/components/interfaces/IToolboxField.js.map +1 -1
  35. package/dist/collection/components/ls-compose-loader/ls-compose-loader.js +1 -1
  36. package/dist/collection/components/ls-compose-manager/ls-compose-manager.js +2 -2
  37. package/dist/collection/components/ls-document-viewer/editorCalculator.js +1 -0
  38. package/dist/collection/components/ls-document-viewer/editorCalculator.js.map +1 -1
  39. package/dist/collection/components/ls-document-viewer/editorUtils.js +1 -0
  40. package/dist/collection/components/ls-document-viewer/editorUtils.js.map +1 -1
  41. package/dist/collection/components/ls-document-viewer/keyHandlers.js +51 -7
  42. package/dist/collection/components/ls-document-viewer/keyHandlers.js.map +1 -1
  43. package/dist/collection/components/ls-document-viewer/ls-document-viewer.css +16 -4
  44. package/dist/collection/components/ls-document-viewer/ls-document-viewer.js +74 -32
  45. package/dist/collection/components/ls-document-viewer/ls-document-viewer.js.map +1 -1
  46. package/dist/collection/components/ls-document-viewer/mouseHandlers.js +301 -58
  47. package/dist/collection/components/ls-document-viewer/mouseHandlers.js.map +1 -1
  48. package/dist/collection/components/ls-document-viewer/snapHelper.js +66 -0
  49. package/dist/collection/components/ls-document-viewer/snapHelper.js.map +1 -0
  50. package/dist/collection/components/ls-editor-field/ls-editor-field.css +33 -0
  51. package/dist/collection/components/ls-editor-field/ls-editor-field.js +31 -19
  52. package/dist/collection/components/ls-editor-field/ls-editor-field.js.map +1 -1
  53. package/dist/collection/components/ls-editor-table/ls-editor-table.js +1 -1
  54. package/dist/collection/components/ls-feature-column/ls-feature-column.js +6 -6
  55. package/dist/collection/components/ls-field-alignment/ls-field-alignment.js +2 -2
  56. package/dist/collection/components/ls-field-content/ls-field-content.js +3 -3
  57. package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.js +3 -3
  58. package/dist/collection/components/ls-field-distribute/ls-field-distribute.js +5 -5
  59. package/dist/collection/components/ls-field-footer/ls-field-footer.js +1 -1
  60. package/dist/collection/components/ls-field-format/ls-field-format.js +11 -11
  61. package/dist/collection/components/ls-field-placement/ls-field-placement.js +1 -1
  62. package/dist/collection/components/ls-field-properties/ls-field-properties.js +1 -1
  63. package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js +2 -2
  64. package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.js +1 -1
  65. package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.js +1 -1
  66. package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.js +1 -1
  67. package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.js +1 -1
  68. package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.js +1 -1
  69. package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.js +1 -1
  70. package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.js +1 -1
  71. package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.js +1 -1
  72. package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.js +3 -3
  73. package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.js +1 -1
  74. package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.js +1 -1
  75. package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.js +1 -1
  76. package/dist/collection/components/ls-field-size/ls-field-size.js +1 -1
  77. package/dist/collection/components/ls-field-type-display/ls-field-type-display.js +3 -3
  78. package/dist/collection/components/ls-helper-bar/ls-helper-bar.css +1 -1
  79. package/dist/collection/components/ls-helper-bar/ls-helper-bar.js +1 -1
  80. package/dist/collection/components/ls-helper-bar/ls-helper-bar.js.map +1 -1
  81. package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.js +1 -1
  82. package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.js +1 -1
  83. package/dist/collection/components/ls-left-bar/ls-left-bar.js +6 -6
  84. package/dist/collection/components/ls-left-bar/ls-left-bar.js.map +1 -1
  85. package/dist/collection/components/ls-participant-card/ls-participant-card.css +4 -0
  86. package/dist/collection/components/ls-participant-card/ls-participant-card.js +2 -2
  87. package/dist/collection/components/ls-participant-card/ls-participant-card.js.map +1 -1
  88. package/dist/collection/components/ls-participant-manager/ls-participant-manager.js +3 -3
  89. package/dist/collection/components/ls-participant-select/ls-participant-select.css +1 -1
  90. package/dist/collection/components/ls-participant-select/ls-participant-select.js +25 -9
  91. package/dist/collection/components/ls-participant-select/ls-participant-select.js.map +1 -1
  92. package/dist/collection/components/ls-props-section/ls-props-section.js +1 -1
  93. package/dist/collection/components/ls-recipient-card/ls-recipient-card.js +9 -9
  94. package/dist/collection/components/ls-recipient-card/ls-recipient-card.js.map +1 -1
  95. package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.js +1 -1
  96. package/dist/collection/components/ls-statusbar/ls-statusbar.js +8 -11
  97. package/dist/collection/components/ls-statusbar/ls-statusbar.js.map +1 -1
  98. package/dist/collection/components/ls-title-input/ls-title-input.js +1 -1
  99. package/dist/collection/components/ls-toggle/ls-toggle.js +2 -2
  100. package/dist/collection/components/ls-toolbar/ls-toolbar.css +1 -1
  101. package/dist/collection/components/ls-toolbar/ls-toolbar.js +3 -5
  102. package/dist/collection/components/ls-toolbar/ls-toolbar.js.map +1 -1
  103. package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.css +5 -0
  104. package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.js +38 -32
  105. package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.js.map +1 -1
  106. package/dist/collection/components/ls-validation-manager/ls-validation-manager.js +2 -2
  107. package/dist/collection/components/ls-validation-tag/ls-validation-tag.css +65 -0
  108. package/dist/collection/components/ls-validation-tag/ls-validation-tag.js +7 -11
  109. package/dist/collection/components/ls-validation-tag/ls-validation-tag.js.map +1 -1
  110. package/dist/components/index.js +1 -1
  111. package/dist/components/ls-add-new-button.js +1 -1
  112. package/dist/components/ls-badge.js +1 -1
  113. package/dist/components/ls-banner.js +6 -6
  114. package/dist/components/ls-banner.js.map +1 -1
  115. package/dist/components/ls-button.js +1 -1
  116. package/dist/components/ls-card.js +1 -1
  117. package/dist/components/ls-card.js.map +1 -1
  118. package/dist/components/ls-checkbox-input.js +1 -1
  119. package/dist/components/ls-compose-loader.js +1 -1
  120. package/dist/components/ls-compose-manager.js +4 -4
  121. package/dist/components/ls-details-section.js +3 -3
  122. package/dist/components/ls-details-section.js.map +1 -1
  123. package/dist/components/ls-document-options.js +1 -1
  124. package/dist/components/ls-document-viewer.js +167 -90
  125. package/dist/components/ls-document-viewer.js.map +1 -1
  126. package/dist/components/ls-dropdown-item.js +1 -1
  127. package/dist/components/ls-dropdown.js +3 -3
  128. package/dist/components/ls-dropdown.js.map +1 -1
  129. package/dist/components/ls-editor-field.js +1 -1
  130. package/dist/components/ls-editor-table.js +1 -1
  131. package/dist/components/ls-feature-column.js +1 -1
  132. package/dist/components/ls-field-alignment.js +1 -1
  133. package/dist/components/ls-field-content.js +1 -1
  134. package/dist/components/ls-field-dimensions.js +1 -1
  135. package/dist/components/ls-field-distribute.js +1 -1
  136. package/dist/components/ls-field-footer.js +1 -1
  137. package/dist/components/ls-field-format.js +1 -1
  138. package/dist/components/ls-field-placement.js +1 -1
  139. package/dist/components/ls-field-properties-advanced.js +1 -1
  140. package/dist/components/ls-field-properties-autosign.js +1 -1
  141. package/dist/components/ls-field-properties-container.js +1 -1
  142. package/dist/components/ls-field-properties-date.js +1 -1
  143. package/dist/components/ls-field-properties-dropdown.js +15 -15
  144. package/dist/components/ls-field-properties-email.js +1 -1
  145. package/dist/components/ls-field-properties-file.js +1 -1
  146. package/dist/components/ls-field-properties-general.js +1 -1
  147. package/dist/components/ls-field-properties-image.js +1 -1
  148. package/dist/components/ls-field-properties-multiple.js +1 -1
  149. package/dist/components/ls-field-properties-number.js +1 -1
  150. package/dist/components/ls-field-properties-signature.js +1 -1
  151. package/dist/components/ls-field-properties-text.js +1 -1
  152. package/dist/components/ls-field-properties.js +1 -1
  153. package/dist/components/ls-field-size.js +1 -1
  154. package/dist/components/ls-field-type-display.js +1 -1
  155. package/dist/components/ls-formfield.js +11 -11
  156. package/dist/components/ls-formfield.js.map +1 -1
  157. package/dist/components/ls-header-bar.js +4 -4
  158. package/dist/components/ls-header-bar.js.map +1 -1
  159. package/dist/components/ls-helper-bar.js +1 -1
  160. package/dist/components/ls-icon-button.js +1 -1
  161. package/dist/components/ls-icon-check-button.js +2 -2
  162. package/dist/components/ls-icon-check-button.js.map +1 -1
  163. package/dist/components/ls-icon.js +1 -1
  164. package/dist/components/ls-input-wrapper.js +1 -1
  165. package/dist/components/ls-keyboard-shortcuts.js +1 -1
  166. package/dist/components/ls-label.js +1 -1
  167. package/dist/components/ls-left-bar.js +1 -1
  168. package/dist/components/ls-list-card-button.js +4 -4
  169. package/dist/components/ls-list-card-button.js.map +1 -1
  170. package/dist/components/ls-loading-icon.js +1 -1
  171. package/dist/components/ls-loading-logo.js +1 -1
  172. package/dist/components/ls-loading.js +1 -1
  173. package/dist/components/ls-navbar.js +3 -3
  174. package/dist/components/ls-navbar.js.map +1 -1
  175. package/dist/components/ls-notification.js +2 -2
  176. package/dist/components/ls-notification.js.map +1 -1
  177. package/dist/components/ls-number-input.js +1 -1
  178. package/dist/components/ls-participant-card.js +1 -1
  179. package/dist/components/ls-participant-manager.js +1 -1
  180. package/dist/components/ls-participant-select.js +1 -1
  181. package/dist/components/ls-props-section.js +1 -1
  182. package/dist/components/ls-radio-group.js +3 -3
  183. package/dist/components/ls-radio-group.js.map +1 -1
  184. package/dist/components/ls-radio-input.js +1 -1
  185. package/dist/components/ls-recipient-card.js +1 -1
  186. package/dist/components/ls-recipient-manager.js +1 -1
  187. package/dist/components/ls-select-input.js +1 -1
  188. package/dist/components/ls-statusbar.js +1 -1
  189. package/dist/components/ls-tabs.js +2 -2
  190. package/dist/components/ls-tabs.js.map +1 -1
  191. package/dist/components/ls-tag.js +2 -2
  192. package/dist/components/ls-tag.js.map +1 -1
  193. package/dist/components/ls-text-input.js +1 -1
  194. package/dist/components/ls-text.js +1 -1
  195. package/dist/components/ls-text.js.map +1 -1
  196. package/dist/components/ls-textarea-input.js +1 -1
  197. package/dist/components/ls-timeline-step.js +2 -2
  198. package/dist/components/ls-timeline-step.js.map +1 -1
  199. package/dist/components/ls-timeline.js +2 -2
  200. package/dist/components/ls-timeline.js.map +1 -1
  201. package/dist/components/ls-title-input.js +3 -3
  202. package/dist/components/ls-toggle.js +1 -1
  203. package/dist/components/ls-toolbar.js +1 -1
  204. package/dist/components/ls-toolbox-field.js +1 -1
  205. package/dist/components/ls-tooltip.js +1 -1
  206. package/dist/components/ls-validation-manager.js +1 -1
  207. package/dist/components/ls-validation-tag.js +1 -1
  208. package/dist/components/{p-hGc0PM4h.js → p-0KcafqsD.js} +4 -4
  209. package/dist/components/{p-hGc0PM4h.js.map → p-0KcafqsD.js.map} +1 -1
  210. package/dist/components/{p-BEoo68ix.js → p-0xNJgDwU.js} +17 -17
  211. package/dist/components/{p-BEoo68ix.js.map → p-0xNJgDwU.js.map} +1 -1
  212. package/dist/components/p-3nGlwNge.js +139 -0
  213. package/dist/components/p-3nGlwNge.js.map +1 -0
  214. package/dist/components/{p-BqHWzbwb.js → p-84KTjgkl.js} +4 -4
  215. package/dist/components/{p-BqHWzbwb.js.map → p-84KTjgkl.js.map} +1 -1
  216. package/dist/components/{p-Cj4lPJEO.js → p-B7x-6bu5.js} +4 -4
  217. package/dist/components/{p-Cj4lPJEO.js.map → p-B7x-6bu5.js.map} +1 -1
  218. package/dist/components/{p-BuTI5iFf.js → p-B9ooYFOA.js} +5 -5
  219. package/dist/components/{p-BuTI5iFf.js.map → p-B9ooYFOA.js.map} +1 -1
  220. package/dist/components/{p-BilTZGhO.js → p-BCzMSIcI.js} +4 -4
  221. package/dist/components/{p-BilTZGhO.js.map → p-BCzMSIcI.js.map} +1 -1
  222. package/dist/components/{p-DAP3L70b.js → p-BH-y0Rpv.js} +9 -9
  223. package/dist/components/{p-DAP3L70b.js.map → p-BH-y0Rpv.js.map} +1 -1
  224. package/dist/components/{p-MvHRmlvj.js → p-BMhCD-zg.js} +4 -4
  225. package/dist/components/{p-MvHRmlvj.js.map → p-BMhCD-zg.js.map} +1 -1
  226. package/dist/components/{p-C1mHzpwC.js → p-BRH_57K4.js} +17 -17
  227. package/dist/components/{p-C1mHzpwC.js.map → p-BRH_57K4.js.map} +1 -1
  228. package/dist/components/{p-CSPLGKKp.js → p-BT5rCW3w.js} +3 -3
  229. package/dist/components/{p-CSPLGKKp.js.map → p-BT5rCW3w.js.map} +1 -1
  230. package/dist/components/{p-BgjZLcgZ.js → p-BgAdNxbN.js} +13 -13
  231. package/dist/components/p-BgAdNxbN.js.map +1 -0
  232. package/dist/components/{p--TgjpdhB.js → p-BkrhluM5.js} +30 -30
  233. package/dist/components/{p--TgjpdhB.js.map → p-BkrhluM5.js.map} +1 -1
  234. package/dist/components/{p-Dx1cMyvL.js → p-BtjCijn4.js} +4 -2
  235. package/dist/components/{p-Dx1cMyvL.js.map → p-BtjCijn4.js.map} +1 -1
  236. package/dist/components/{p-BPcmC2nE.js → p-BwbcEeA_.js} +17 -17
  237. package/dist/components/{p-BPcmC2nE.js.map → p-BwbcEeA_.js.map} +1 -1
  238. package/dist/components/{p-DJ7bx7B5.js → p-BwfjRoGr.js} +13 -13
  239. package/dist/components/{p-DJ7bx7B5.js.map → p-BwfjRoGr.js.map} +1 -1
  240. package/dist/components/{p-DhcX4EuS.js → p-C1GGLUpO.js} +15 -15
  241. package/dist/components/p-C1GGLUpO.js.map +1 -0
  242. package/dist/components/{p-Bn74nhFM.js → p-C7YkcdaA.js} +10 -10
  243. package/dist/components/{p-Bn74nhFM.js.map → p-C7YkcdaA.js.map} +1 -1
  244. package/dist/components/{p-cJzdZ_Zw.js → p-CKZG8VvW.js} +5 -5
  245. package/dist/components/{p-cJzdZ_Zw.js.map → p-CKZG8VvW.js.map} +1 -1
  246. package/dist/components/{p-CyqNq-AI.js → p-CKbRUnN1.js} +7 -7
  247. package/dist/components/{p-CyqNq-AI.js.map → p-CKbRUnN1.js.map} +1 -1
  248. package/dist/components/{p-C8NcdVVP.js → p-CZF2_NGo.js} +4 -4
  249. package/dist/components/{p-C8NcdVVP.js.map → p-CZF2_NGo.js.map} +1 -1
  250. package/dist/components/{p-EE_rUtMN.js → p-ChRy20ef.js} +12 -12
  251. package/dist/components/{p-EE_rUtMN.js.map → p-ChRy20ef.js.map} +1 -1
  252. package/dist/components/{p-DGgN9Tk0.js → p-CkKXB6ey.js} +7 -7
  253. package/dist/components/{p-DGgN9Tk0.js.map → p-CkKXB6ey.js.map} +1 -1
  254. package/dist/components/{p-DIZNU-wE.js → p-CnWF6SJW.js} +15 -15
  255. package/dist/components/{p-DIZNU-wE.js.map → p-CnWF6SJW.js.map} +1 -1
  256. package/dist/components/{p-OLQsckjQ.js → p-Cq8ahbie.js} +4 -4
  257. package/dist/components/{p-OLQsckjQ.js.map → p-Cq8ahbie.js.map} +1 -1
  258. package/dist/components/{p-BuUhtsZT.js → p-CuKQ9tEk.js} +3 -3
  259. package/dist/components/{p-BuUhtsZT.js.map → p-CuKQ9tEk.js.map} +1 -1
  260. package/dist/components/{p-CmMYC0p8.js → p-CzuXVZQ1.js} +4 -4
  261. package/dist/components/{p-CmMYC0p8.js.map → p-CzuXVZQ1.js.map} +1 -1
  262. package/dist/components/{p-DFvqOenH.js → p-D5pMAqGE.js} +8 -8
  263. package/dist/components/{p-DFvqOenH.js.map → p-D5pMAqGE.js.map} +1 -1
  264. package/dist/components/p-D60hGCYW.js +163 -0
  265. package/dist/components/p-D60hGCYW.js.map +1 -0
  266. package/dist/components/{p-DOZ7EVSp.js → p-D8oeRQud.js} +46 -46
  267. package/dist/components/p-D8oeRQud.js.map +1 -0
  268. package/dist/components/p-DBASMZy7.js +63 -0
  269. package/dist/components/p-DBASMZy7.js.map +1 -0
  270. package/dist/components/{p-BNu-kdNq.js → p-DG3likTA.js} +9 -9
  271. package/dist/components/{p-BNu-kdNq.js.map → p-DG3likTA.js.map} +1 -1
  272. package/dist/components/{p-wwN19gwm.js → p-DKo99Z43.js} +3 -3
  273. package/dist/components/{p-wwN19gwm.js.map → p-DKo99Z43.js.map} +1 -1
  274. package/dist/components/{p-D7bwh5bc.js → p-DLJvb8vE.js} +8 -8
  275. package/dist/components/{p-D7bwh5bc.js.map → p-DLJvb8vE.js.map} +1 -1
  276. package/dist/components/{p-3MMDk3sy.js → p-DN9dmmkk.js} +17 -17
  277. package/dist/components/{p-3MMDk3sy.js.map → p-DN9dmmkk.js.map} +1 -1
  278. package/dist/components/{p-DCdDskfL.js → p-DS_FPOrD.js} +380 -72
  279. package/dist/components/p-DS_FPOrD.js.map +1 -0
  280. package/dist/components/{p-CgczqobT.js → p-DVMW45bm.js} +8 -8
  281. package/dist/components/{p-CgczqobT.js.map → p-DVMW45bm.js.map} +1 -1
  282. package/dist/components/{p-dHMolk9H.js → p-DZP-fvPJ.js} +60 -15
  283. package/dist/components/p-DZP-fvPJ.js.map +1 -0
  284. package/dist/components/{p-DxKBajEl.js → p-DZgk5qxN.js} +17 -17
  285. package/dist/components/{p-DxKBajEl.js.map → p-DZgk5qxN.js.map} +1 -1
  286. package/dist/components/{p-CYSZo6aX.js → p-DcR04vBT.js} +4 -4
  287. package/dist/components/{p-CYSZo6aX.js.map → p-DcR04vBT.js.map} +1 -1
  288. package/dist/components/{p-BDiZ0WrF.js → p-Dcgsf6yy.js} +5 -5
  289. package/dist/components/{p-BDiZ0WrF.js.map → p-Dcgsf6yy.js.map} +1 -1
  290. package/dist/components/{p-BrykT5-C.js → p-DffaAVW4.js} +9 -3
  291. package/dist/components/p-DffaAVW4.js.map +1 -0
  292. package/dist/components/p-DgBJsVwe.js +117 -0
  293. package/dist/components/p-DgBJsVwe.js.map +1 -0
  294. package/dist/components/{p-CWgG6RtI.js → p-Dj0hj7yh.js} +5 -5
  295. package/dist/components/{p-CWgG6RtI.js.map → p-Dj0hj7yh.js.map} +1 -1
  296. package/dist/components/{p-d3FQEed-.js → p-DowYrMjW.js} +5 -5
  297. package/dist/components/{p-d3FQEed-.js.map → p-DowYrMjW.js.map} +1 -1
  298. package/dist/components/{p-BYjOvCbn.js → p-DrEcfY_J.js} +4 -4
  299. package/dist/components/{p-BYjOvCbn.js.map → p-DrEcfY_J.js.map} +1 -1
  300. package/dist/components/{p-d3qXKu5b.js → p-Dt8gRmhC.js} +17 -17
  301. package/dist/components/{p-d3qXKu5b.js.map → p-Dt8gRmhC.js.map} +1 -1
  302. package/dist/components/{p-Dz16EnCS.js → p-Dw_QK-he.js} +11 -9
  303. package/dist/components/p-Dw_QK-he.js.map +1 -0
  304. package/dist/components/{p-BJqq2Npt.js → p-E0JC-Cu3.js} +17 -17
  305. package/dist/components/{p-BJqq2Npt.js.map → p-E0JC-Cu3.js.map} +1 -1
  306. package/dist/components/p-JclQnuaU.js +108 -0
  307. package/dist/components/p-JclQnuaU.js.map +1 -0
  308. package/dist/components/{p-UI9vt753.js → p-OiC5NHtc.js} +4 -4
  309. package/dist/components/{p-UI9vt753.js.map → p-OiC5NHtc.js.map} +1 -1
  310. package/dist/components/{p-B-hPslyN.js → p-QZa2_PWg.js} +4 -4
  311. package/dist/components/{p-B-hPslyN.js.map → p-QZa2_PWg.js.map} +1 -1
  312. package/dist/components/{p-BBAOpkc_.js → p-TmHRO8G9.js} +7 -7
  313. package/dist/components/{p-BBAOpkc_.js.map → p-TmHRO8G9.js.map} +1 -1
  314. package/dist/components/{p-Bo2HQUQV.js → p-jh1Se9AW.js} +17 -17
  315. package/dist/components/{p-Bo2HQUQV.js.map → p-jh1Se9AW.js.map} +1 -1
  316. package/dist/components/{p-r32PqGrS.js → p-lphkmIXU.js} +4 -4
  317. package/dist/components/{p-r32PqGrS.js.map → p-lphkmIXU.js.map} +1 -1
  318. package/dist/components/{p-BfHGjq5t.js → p-o4HzWbjW.js} +17 -20
  319. package/dist/components/p-o4HzWbjW.js.map +1 -0
  320. package/dist/components/{p-DckVC3o2.js → p-pPhflIHp.js} +21 -32
  321. package/dist/components/p-pPhflIHp.js.map +1 -0
  322. package/dist/components/{p-4mqXicuy.js → p-wOTvKO9s.js} +18 -18
  323. package/dist/components/{p-4mqXicuy.js.map → p-wOTvKO9s.js.map} +1 -1
  324. package/dist/components/p-wijn7N4I.js +102 -0
  325. package/dist/components/p-wijn7N4I.js.map +1 -0
  326. package/dist/components/{p-C4Fkc5Wm.js → p-wxu8bkXk.js} +6 -6
  327. package/dist/components/{p-C4Fkc5Wm.js.map → p-wxu8bkXk.js.map} +1 -1
  328. package/dist/components/{p-B4zjHmIp.js → p-xKxEAqzv.js} +17 -17
  329. package/dist/components/{p-B4zjHmIp.js.map → p-xKxEAqzv.js.map} +1 -1
  330. package/dist/components/{p-DoQt0hBg.js → p-ygIo6UQn.js} +3 -3
  331. package/dist/components/{p-DoQt0hBg.js.map → p-ygIo6UQn.js.map} +1 -1
  332. package/dist/components/test-item.js +1 -1
  333. package/dist/components/test-item.js.map +1 -1
  334. package/dist/esm/{i18n-Dx1cMyvL.js → i18n-BtjCijn4.js} +4 -2
  335. package/dist/esm/{i18n-Dx1cMyvL.js.map → i18n-BtjCijn4.js.map} +1 -1
  336. package/dist/esm/{index-CqgU9BMJ.js → index-CItPoq74.js} +9 -3
  337. package/dist/esm/index-CItPoq74.js.map +1 -0
  338. package/dist/esm/loader.js +3 -3
  339. package/dist/esm/ls-add-new-button_51.entry.js +976 -573
  340. package/dist/esm/ls-badge.entry.js +1 -1
  341. package/dist/esm/ls-badge.entry.js.map +1 -1
  342. package/dist/esm/ls-banner.entry.js +1 -1
  343. package/dist/esm/ls-banner.entry.js.map +1 -1
  344. package/dist/esm/ls-card.entry.js +1 -1
  345. package/dist/esm/ls-card.entry.js.map +1 -1
  346. package/dist/esm/ls-checkbox-input_5.entry.js +1 -1
  347. package/dist/esm/ls-compose-manager.entry.js +4 -4
  348. package/dist/esm/ls-details-section.entry.js +1 -1
  349. package/dist/esm/ls-details-section.entry.js.map +1 -1
  350. package/dist/esm/ls-document-viewer.js +3 -3
  351. package/dist/esm/ls-dropdown-item.entry.js +1 -1
  352. package/dist/esm/ls-dropdown-item.entry.js.map +1 -1
  353. package/dist/esm/ls-dropdown.entry.js +1 -1
  354. package/dist/esm/ls-dropdown.entry.js.map +1 -1
  355. package/dist/esm/ls-field-properties-dropdown.entry.js +2 -2
  356. package/dist/esm/ls-formfield.entry.js +1 -1
  357. package/dist/esm/ls-formfield.entry.js.map +1 -1
  358. package/dist/esm/ls-header-bar.entry.js +1 -1
  359. package/dist/esm/ls-header-bar.entry.js.map +1 -1
  360. package/dist/esm/ls-icon-button.entry.js +1 -1
  361. package/dist/esm/ls-icon-button.entry.js.map +1 -1
  362. package/dist/esm/ls-icon-check-button.entry.js +1 -1
  363. package/dist/esm/ls-icon-check-button.entry.js.map +1 -1
  364. package/dist/esm/ls-label.entry.js +1 -1
  365. package/dist/esm/ls-label.entry.js.map +1 -1
  366. package/dist/esm/ls-list-card-button.entry.js +1 -1
  367. package/dist/esm/ls-list-card-button.entry.js.map +1 -1
  368. package/dist/esm/ls-navbar.entry.js +1 -1
  369. package/dist/esm/ls-navbar.entry.js.map +1 -1
  370. package/dist/esm/ls-notification.entry.js +1 -1
  371. package/dist/esm/ls-notification.entry.js.map +1 -1
  372. package/dist/esm/ls-radio-group.entry.js +1 -1
  373. package/dist/esm/ls-radio-group.entry.js.map +1 -1
  374. package/dist/esm/ls-radio-input.entry.js +1 -1
  375. package/dist/esm/ls-radio-input.entry.js.map +1 -1
  376. package/dist/esm/ls-tabs.entry.js +1 -1
  377. package/dist/esm/ls-tabs.entry.js.map +1 -1
  378. package/dist/esm/ls-tag.entry.js +1 -1
  379. package/dist/esm/ls-tag.entry.js.map +1 -1
  380. package/dist/esm/ls-text.entry.js +1 -1
  381. package/dist/esm/ls-text.entry.js.map +1 -1
  382. package/dist/esm/ls-timeline-step.entry.js +1 -1
  383. package/dist/esm/ls-timeline-step.entry.js.map +1 -1
  384. package/dist/esm/ls-timeline.entry.js +1 -1
  385. package/dist/esm/ls-timeline.entry.js.map +1 -1
  386. package/dist/esm/ls-title-input.entry.js +2 -2
  387. package/dist/esm/test-item.entry.js +1 -1
  388. package/dist/esm/test-item.entry.js.map +1 -1
  389. package/dist/ls-document-viewer/ls-document-viewer.esm.js +1 -1
  390. package/dist/ls-document-viewer/{p-6d948608.entry.js → p-17771224.entry.js} +2 -2
  391. package/dist/ls-document-viewer/{p-a9cfd73b.entry.js → p-34c89736.entry.js} +2 -2
  392. package/dist/ls-document-viewer/{p-fa30b362.entry.js → p-35181c98.entry.js} +2 -2
  393. package/dist/ls-document-viewer/{p-6cc592f3.entry.js → p-355fa23b.entry.js} +2 -2
  394. package/dist/ls-document-viewer/{p-f474989d.entry.js → p-429be8d1.entry.js} +2 -2
  395. package/dist/ls-document-viewer/{p-9ecd1ff7.entry.js → p-5e4e4662.entry.js} +2 -2
  396. package/dist/ls-document-viewer/{p-3da9d77b.entry.js → p-61e1b37b.entry.js} +2 -2
  397. package/dist/ls-document-viewer/{p-0d1fc411.entry.js → p-6244f792.entry.js} +2 -2
  398. package/dist/ls-document-viewer/{p-0b3a5fbd.entry.js → p-7c5b3574.entry.js} +2 -2
  399. package/dist/ls-document-viewer/{p-e29d619f.entry.js → p-7eecf11a.entry.js} +603 -603
  400. package/dist/ls-document-viewer/p-7eecf11a.entry.js.map +1 -0
  401. package/dist/ls-document-viewer/{p-ee2098bb.entry.js → p-85c87644.entry.js} +2 -2
  402. package/dist/ls-document-viewer/{p-7f5b13f6.entry.js → p-8bdf7b95.entry.js} +2 -2
  403. package/dist/ls-document-viewer/{p-d09bc75d.entry.js → p-8e0ad6ec.entry.js} +2 -2
  404. package/dist/ls-document-viewer/p-9337949c.entry.js +2 -0
  405. package/dist/ls-document-viewer/{p-e51973e5.entry.js.map → p-9337949c.entry.js.map} +1 -1
  406. package/dist/ls-document-viewer/{p-f2a51b12.entry.js → p-94bbac6a.entry.js} +2 -2
  407. package/dist/ls-document-viewer/{p-55834145.entry.js → p-9ebec463.entry.js} +2 -2
  408. package/dist/ls-document-viewer/p-BtjCijn4.js +2 -0
  409. package/dist/ls-document-viewer/{p-Dx1cMyvL.js.map → p-BtjCijn4.js.map} +1 -1
  410. package/dist/ls-document-viewer/{p-CqgU9BMJ.js → p-CItPoq74.js} +2 -2
  411. package/dist/ls-document-viewer/p-CItPoq74.js.map +1 -0
  412. package/dist/ls-document-viewer/{p-e45b3ca8.entry.js → p-a4121600.entry.js} +2 -2
  413. package/dist/ls-document-viewer/p-a7dd3ba3.entry.js +2 -0
  414. package/dist/ls-document-viewer/{p-5a98eb27.entry.js → p-abb5c859.entry.js} +2 -2
  415. package/dist/ls-document-viewer/{p-fd50bc60.entry.js → p-bbc53e46.entry.js} +2 -2
  416. package/dist/ls-document-viewer/{p-f3af5313.entry.js → p-c521696b.entry.js} +2 -2
  417. package/dist/ls-document-viewer/{p-828c1636.entry.js → p-c78bd190.entry.js} +2 -2
  418. package/dist/ls-document-viewer/{p-870b9662.entry.js → p-ca1a0e03.entry.js} +2 -2
  419. package/dist/ls-document-viewer/{p-a16db209.entry.js → p-d297ea14.entry.js} +2 -2
  420. package/dist/ls-document-viewer/{p-ae2d6df8.entry.js → p-d2caf154.entry.js} +2 -2
  421. package/dist/ls-document-viewer/{p-0f6a01b3.entry.js → p-d76f5c10.entry.js} +2 -2
  422. package/dist/ls-document-viewer/{p-febb8794.entry.js → p-f318c711.entry.js} +2 -2
  423. package/dist/types/components/interfaces/IToolboxField.d.ts +1 -0
  424. package/dist/types/components/ls-document-viewer/ls-document-viewer.d.ts +3 -0
  425. package/dist/types/components/ls-document-viewer/mouseHandlers.d.ts +8 -1
  426. package/dist/types/components/ls-document-viewer/snapHelper.d.ts +21 -0
  427. package/dist/types/components/ls-editor-field/ls-editor-field.d.ts +1 -0
  428. package/dist/types/components/ls-left-bar/ls-left-bar.d.ts +3 -3
  429. package/dist/types/components/ls-participant-select/ls-participant-select.d.ts +2 -0
  430. package/dist/types/components/ls-toolbox-field/ls-toolbox-field.d.ts +3 -1
  431. package/dist/types/components.d.ts +16 -6
  432. package/package.json +2 -2
  433. package/readme.md +2 -2
  434. package/dist/cjs/index-DjAX0m_J.js.map +0 -1
  435. package/dist/components/p-BfHGjq5t.js.map +0 -1
  436. package/dist/components/p-BgjZLcgZ.js.map +0 -1
  437. package/dist/components/p-Bo0Bazo8.js +0 -153
  438. package/dist/components/p-Bo0Bazo8.js.map +0 -1
  439. package/dist/components/p-BrykT5-C.js.map +0 -1
  440. package/dist/components/p-CffM9Jz_.js +0 -119
  441. package/dist/components/p-CffM9Jz_.js.map +0 -1
  442. package/dist/components/p-D9Kd-4_M.js +0 -100
  443. package/dist/components/p-D9Kd-4_M.js.map +0 -1
  444. package/dist/components/p-DCdDskfL.js.map +0 -1
  445. package/dist/components/p-DD5tgd5X.js +0 -157
  446. package/dist/components/p-DD5tgd5X.js.map +0 -1
  447. package/dist/components/p-DH9Evr8X.js +0 -63
  448. package/dist/components/p-DH9Evr8X.js.map +0 -1
  449. package/dist/components/p-DOZ7EVSp.js.map +0 -1
  450. package/dist/components/p-DckVC3o2.js.map +0 -1
  451. package/dist/components/p-DhcX4EuS.js.map +0 -1
  452. package/dist/components/p-Dz16EnCS.js.map +0 -1
  453. package/dist/components/p-NAiclfXm.js +0 -112
  454. package/dist/components/p-NAiclfXm.js.map +0 -1
  455. package/dist/components/p-dHMolk9H.js.map +0 -1
  456. package/dist/esm/index-CqgU9BMJ.js.map +0 -1
  457. package/dist/ls-document-viewer/p-CqgU9BMJ.js.map +0 -1
  458. package/dist/ls-document-viewer/p-Dx1cMyvL.js +0 -2
  459. package/dist/ls-document-viewer/p-ac0c3ed5.entry.js +0 -2
  460. package/dist/ls-document-viewer/p-e29d619f.entry.js.map +0 -1
  461. package/dist/ls-document-viewer/p-e51973e5.entry.js +0 -2
  462. /package/dist/ls-document-viewer/{p-6d948608.entry.js.map → p-17771224.entry.js.map} +0 -0
  463. /package/dist/ls-document-viewer/{p-a9cfd73b.entry.js.map → p-34c89736.entry.js.map} +0 -0
  464. /package/dist/ls-document-viewer/{p-fa30b362.entry.js.map → p-35181c98.entry.js.map} +0 -0
  465. /package/dist/ls-document-viewer/{p-6cc592f3.entry.js.map → p-355fa23b.entry.js.map} +0 -0
  466. /package/dist/ls-document-viewer/{p-f474989d.entry.js.map → p-429be8d1.entry.js.map} +0 -0
  467. /package/dist/ls-document-viewer/{p-9ecd1ff7.entry.js.map → p-5e4e4662.entry.js.map} +0 -0
  468. /package/dist/ls-document-viewer/{p-3da9d77b.entry.js.map → p-61e1b37b.entry.js.map} +0 -0
  469. /package/dist/ls-document-viewer/{p-0d1fc411.entry.js.map → p-6244f792.entry.js.map} +0 -0
  470. /package/dist/ls-document-viewer/{p-0b3a5fbd.entry.js.map → p-7c5b3574.entry.js.map} +0 -0
  471. /package/dist/ls-document-viewer/{p-ee2098bb.entry.js.map → p-85c87644.entry.js.map} +0 -0
  472. /package/dist/ls-document-viewer/{p-7f5b13f6.entry.js.map → p-8bdf7b95.entry.js.map} +0 -0
  473. /package/dist/ls-document-viewer/{p-d09bc75d.entry.js.map → p-8e0ad6ec.entry.js.map} +0 -0
  474. /package/dist/ls-document-viewer/{p-f2a51b12.entry.js.map → p-94bbac6a.entry.js.map} +0 -0
  475. /package/dist/ls-document-viewer/{p-55834145.entry.js.map → p-9ebec463.entry.js.map} +0 -0
  476. /package/dist/ls-document-viewer/{p-e45b3ca8.entry.js.map → p-a4121600.entry.js.map} +0 -0
  477. /package/dist/ls-document-viewer/{p-ac0c3ed5.entry.js.map → p-a7dd3ba3.entry.js.map} +0 -0
  478. /package/dist/ls-document-viewer/{p-5a98eb27.entry.js.map → p-abb5c859.entry.js.map} +0 -0
  479. /package/dist/ls-document-viewer/{p-fd50bc60.entry.js.map → p-bbc53e46.entry.js.map} +0 -0
  480. /package/dist/ls-document-viewer/{p-f3af5313.entry.js.map → p-c521696b.entry.js.map} +0 -0
  481. /package/dist/ls-document-viewer/{p-828c1636.entry.js.map → p-c78bd190.entry.js.map} +0 -0
  482. /package/dist/ls-document-viewer/{p-870b9662.entry.js.map → p-ca1a0e03.entry.js.map} +0 -0
  483. /package/dist/ls-document-viewer/{p-a16db209.entry.js.map → p-d297ea14.entry.js.map} +0 -0
  484. /package/dist/ls-document-viewer/{p-ae2d6df8.entry.js.map → p-d2caf154.entry.js.map} +0 -0
  485. /package/dist/ls-document-viewer/{p-0f6a01b3.entry.js.map → p-d76f5c10.entry.js.map} +0 -0
  486. /package/dist/ls-document-viewer/{p-febb8794.entry.js.map → p-f318c711.entry.js.map} +0 -0
@@ -71,6 +71,7 @@ export async function syncRoles() {
71
71
  if (participantManager)
72
72
  participantManager.template = this._template;
73
73
  this.generateFields();
74
+ this.showPageFields(this.pageNum);
74
75
  this.validationErrors = validate.bind(this)(this._template);
75
76
  }
76
77
  // Utility function which extracts the type from any API id
@@ -1 +1 @@
1
- {"version":3,"file":"editorUtils.js","sourceRoot":"","sources":["../../../../src/components/ls-document-viewer/editorUtils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,GAAiB;IACnC,IAAI,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,cAAc,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;;QAC/I,OAAO,KAAK,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,MAAM;IAC1B,MAAM,KAAK,GAAoB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACnD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAiB,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAA+B,CAAC;IAC3G,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC7D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,GAAG;IAC1C,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE;QACjB,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzB,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,SAAS,CAAC,IAAqD;IAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,gHAAgH;IAChH,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;YAExG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YAC9F,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpD,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAChG,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAyB,CAAC;IAC/F,MAAM,kBAAkB,GAAG,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,wBAAwB,CAAoC,CAAC;IAC5H,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAQ,CAAC;IAC9F,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrD,IAAI,kBAAkB;QAAE,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;IACrE,IAAI,CAAC,cAAc,EAAE,CAAC;IACtB,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,UAAU,CAAC,GAAQ;IACjC,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO,SAAS,CAAC;IAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAEvC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE5C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,SAAS,CAAC;QACnB,KAAK,KAAK;YACR,OAAO,MAAM,CAAC;QAChB,KAAK,KAAK;YACR,OAAO,UAAU,CAAC;QACpB,KAAK,KAAK;YACR,OAAO,UAAU,CAAC;QACpB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAQ;IAClC,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACxI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IAC3J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC5J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,6BAA6B,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC7J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACrI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,uCAAuC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC/J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,sCAAsC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC9J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,qCAAqC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC7J,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,gCAAgC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IACzJ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IACxJ,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IAC9H,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,2BAA2B,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACtJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;IACzI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACpI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACtI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACtI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACxI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACxI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;IACxI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACnI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC/H,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACnI,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACpI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACpI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC/H,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACpI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACpI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACpI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAClI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC/H,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACjI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IAC1I,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChJ,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE;IACrI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE;IACxI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE;IACxI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,8CAA8C,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IACrK,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,qCAAqC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC7J;QACE,EAAE,EAAE,EAAE;QACN,WAAW,EAAE,+DAA+D;QAC5E,QAAQ,EAAE,MAAM;QAChB,aAAa,EAAE,EAAE;QACjB,YAAY,EAAE,GAAG;QACjB,WAAW,EAAE,KAAK;QAClB,SAAS,EAAE,MAAM;KAClB;IACD,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAC7I,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IACvI,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,oBAAoB,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;IAChK,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;IACzI,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE;CAC7I,CAAC;AAEF,8GAA8G;AAC9G,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC7C,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC;IAEnD,MAAM,SAAS,GAAmB,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;IAEjF,OAAO,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC","sourcesContent":["/**\n * These utils are used to make document-viewer more readable\n * but they must be called using the bind() function so that\n * all code is executed within the correct 'this' scope.\n *\n * Avoid using arrow functions here as they reassign \"thiss\"\n */\n\nimport { LSApiElement } from '../../types/LSApiElement';\nimport { LSMutateEvent } from '../../types/LSMutateEvent';\nimport { ValidationType } from '../../types/ValidationType';\nimport { getTemplate } from './adapter/templateActions';\nimport { addField } from './editorCalculator';\nimport { validate } from './validator';\n\n/**\n * Determines if an element will be plotted out of bounds, i.e. off\n * the page.\n */\nexport function oob(obj: LSApiElement): boolean {\n if (obj.left + obj.width > obj.pageDimensions.width || obj.top < 0 || obj.left < 0 || obj.top + obj.height > obj.pageDimensions.height) return true;\n else return false;\n}\n\nexport function alter(diffFn) {\n const diffs: LSMutateEvent[] = this.selected.map(c => {\n return { action: 'update', data: diffFn(c.dataItem) as LSApiElement };\n });\n this.mutate.emit(diffs);\n}\n\nexport function resetDataItems() {\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field') as HTMLLsEditorFieldElement[];\n this.selected = Array.from(fields).filter(fx => fx.selected);\n this.selectFields.emit(this.selected.map(fx => fx.dataItem));\n}\n\nexport function debounce(func, timeout = 300) {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n func.apply(this, args);\n }, timeout);\n };\n}\n\n// After a mutation ensure that the new data is stored in fields and template\nexport function matchData(data: { result: any; obj: any; event: LSMutateEvent }) {\n const newObj = data.result;\n const prefix = atob(data.obj.id).substring(0, 3);\n // because mutations return the ID back with the mutation name we just assume its the first (and only) JSON prop\n const id = newObj[Object.keys(newObj)[0]];\n\n if (data.event.action === 'create') {\n if (prefix === 'ele') {\n addField.bind(this)(this.component.shadowRoot.getElementById('ls-document-frame'), { ...data.obj, id });\n\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\n this.validationErrors = validate.bind(this)(this._template);\n }\n }\n\n if (prefix === 'rol') { \n return syncRoles.bind(this)().then(() => {\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\n });\n \n }\n\n if (prefix === 'tpl') {\n this._template = { ...this._template, ...data.obj };\n this.validationErrors = validate.bind(this)(this._template);\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\n }\n}\n\nexport async function syncRoles() {\n const leftBar = this.component.shadowRoot.querySelector('ls-left-bar') as HTMLLsLeftBarElement;\n const participantManager = leftBar?.shadowRoot?.getElementById('ls-participant-manager') as HTMLLsParticipantManagerElement;\n const tresult = (await this.adapter.execute(this.token, getTemplate(this.templateid))) as any;\n console.log(tresult);\n this.parseTemplate(JSON.stringify(tresult.template));\n if (participantManager) participantManager.template = this._template;\n this.generateFields();\n this.validationErrors = validate.bind(this)(this._template);\n}\n\n// Utility function which extracts the type from any API id\nexport function getApiType(obj: any) {\n if (!obj?.id) return 'invalid';\n\n const apiId = atob(obj.id);\n if (apiId.length < 3) return 'invalid';\n\n const prefix = atob(obj.id).substring(0, 3);\n\n switch (prefix) {\n case 'ele':\n return 'element';\n case 'rol':\n return 'role';\n case 'tpl':\n return 'template';\n case 'doc':\n return 'document';\n default:\n return 'unknown';\n }\n}\n\nexport const validationTypes: any = [\n { id: 0, description: 'general purpose', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 30, description: 'yyyy/mm/dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 31, description: 'yy/mm/dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 32, description: 'dd/mm/yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 33, description: 'dd/mm/yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 34, description: 'mm/dd/yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 35, description: 'mm/dd/yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 36, description: 'yyyy.mm.dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 37, description: 'yy.mm.dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 38, description: 'dd.mm.yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 39, description: 'dd.mm.yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 40, description: 'mm.dd.yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 41, description: 'mm.dd.yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 42, description: 'yyyy-mm-dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 43, description: 'yy-mm-dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 44, description: 'dd-mm-yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 45, description: 'dd-mm-yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 46, description: 'mm-dd-yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 47, description: 'mm-dd-yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 48, description: 'd mmmm yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 73, description: 'Secret Code', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 77, description: 'Title caps (force text to title caps)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 78, description: 'Uppercase (force text to uppercase)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 79, description: 'Lowercase (force text to lowercase)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 65, description: '1 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 66, description: '2 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 67, description: '3 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 68, description: '4 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 69, description: '5 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 70, description: '6 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 71, description: '7 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 72, description: '8 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 1000, description: 'First name field (special use)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 1001, description: 'Last name field (special use)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 1, description: 'Email', formType: 'email', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 1002, description: 'Email field (special use)', formType: 'email', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 50, description: 'Whole number', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'number' },\n { id: 51, description: 'Number', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 52, description: 'Currency', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 53, description: '1 number', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 54, description: '2 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 55, description: '3 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 56, description: '4 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 57, description: '5 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 58, description: '6 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 59, description: '7 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 60, description: '8 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 61, description: '9 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 62, description: '10 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 63, description: '11 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 64, description: '12 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 2, description: 'yyyy/mm/dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'date' },\n { id: 3, description: 'yy/mm/dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 4, description: 'dd/mm/yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'date' },\n { id: 5, description: 'dd/mm/yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 6, description: 'mm/dd/yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 7, description: 'mm/dd/yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 80, description: 'mm/yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 81, description: 'mm/yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 8, description: 'yyyy.mm.dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 9, description: 'yy.mm.dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 10, description: 'dd.mm.yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 11, description: 'dd.mm.yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 12, description: 'mm.dd.yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 13, description: 'mm.dd.yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 82, description: 'mm.yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 83, description: 'mm.yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 14, description: 'yyyy-mm-dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 15, description: 'yy-mm-dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 16, description: 'dd-mm-yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 17, description: 'dd-mm-yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 18, description: 'mm-dd-yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 19, description: 'mm-dd-yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 84, description: 'mm-yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 85, description: 'mm-yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 20, description: 'Dropdown List', formType: 'dropdown', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 91, description: 'Countries', formType: 'dropdown', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 92, description: 'Name prefix titles', formType: 'dropdown', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 24, description: '✔/✗', formType: 'checkbox', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'checkbox' },\n { id: 25, description: '✔/empty', formType: 'checkbox', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'checkbox' },\n { id: 26, description: '✗/empty', formType: 'checkbox', defaultHeight: 16, defaultWidth: 16, typeDefault: false, inputType: 'checkbox' },\n { id: 74, description: 'File: attach to confirmatory email to sender', formType: 'file', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'file' },\n { id: 75, description: 'File: append to PDF, PDF files only', formType: 'file', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'file' },\n {\n id: 76,\n description: 'File: zip with PDF (for internal view, signed PDF for signer)',\n formType: 'file',\n defaultHeight: 16,\n defaultWidth: 200,\n typeDefault: false,\n inputType: 'file',\n },\n { id: 90, description: 'Drawn field.', formType: 'drawn field', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 2000, description: 'Initials', formType: 'initials', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 93, description: 'Regular Expression field', formType: 'regular expression', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 3000, description: 'Auto Sign', formType: 'auto sign', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 4000, description: 'Text Area', formType: 'textarea', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'textarea' },\n];\n\n// See validation table in database for latest values - these have to be hard coded for our HTML control - ASW\nexport function getInputType(validation: number): ValidationType {\n if (validation === null) return validationTypes[0];\n\n const inputType: ValidationType = validationTypes.find(v => v.id === validation);\n\n return inputType === null ? validationTypes[0] : inputType;\n}\n"]}
1
+ {"version":3,"file":"editorUtils.js","sourceRoot":"","sources":["../../../../src/components/ls-document-viewer/editorUtils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * These utils are used to make document-viewer more readable\n * but they must be called using the bind() function so that\n * all code is executed within the correct 'this' scope.\n *\n * Avoid using arrow functions here as they reassign \"thiss\"\n */\n\nimport { LSApiElement } from '../../types/LSApiElement';\nimport { LSMutateEvent } from '../../types/LSMutateEvent';\nimport { ValidationType } from '../../types/ValidationType';\nimport { getTemplate } from './adapter/templateActions';\nimport { addField } from './editorCalculator';\nimport { validate } from './validator';\n\n/**\n * Determines if an element will be plotted out of bounds, i.e. off\n * the page.\n */\nexport function oob(obj: LSApiElement): boolean {\n if (obj.left + obj.width > obj.pageDimensions.width || obj.top < 0 || obj.left < 0 || obj.top + obj.height > obj.pageDimensions.height) return true;\n else return false;\n}\n\nexport function alter(diffFn) {\n const diffs: LSMutateEvent[] = this.selected.map(c => {\n return { action: 'update', data: diffFn(c.dataItem) as LSApiElement };\n });\n this.mutate.emit(diffs);\n}\n\nexport function resetDataItems() {\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field') as HTMLLsEditorFieldElement[];\n this.selected = Array.from(fields).filter(fx => fx.selected);\n this.selectFields.emit(this.selected.map(fx => fx.dataItem));\n}\n\nexport function debounce(func, timeout = 300) {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n func.apply(this, args);\n }, timeout);\n };\n}\n\n// After a mutation ensure that the new data is stored in fields and template\nexport function matchData(data: { result: any; obj: any; event: LSMutateEvent }) {\n const newObj = data.result;\n const prefix = atob(data.obj.id).substring(0, 3);\n // because mutations return the ID back with the mutation name we just assume its the first (and only) JSON prop\n const id = newObj[Object.keys(newObj)[0]];\n\n if (data.event.action === 'create') {\n if (prefix === 'ele') {\n addField.bind(this)(this.component.shadowRoot.getElementById('ls-document-frame'), { ...data.obj, id });\n\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\n this.validationErrors = validate.bind(this)(this._template);\n }\n }\n\n if (prefix === 'rol') { \n return syncRoles.bind(this)().then(() => {\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\n });\n \n }\n\n if (prefix === 'tpl') {\n this._template = { ...this._template, ...data.obj };\n this.validationErrors = validate.bind(this)(this._template);\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\n }\n}\n\nexport async function syncRoles() {\n const leftBar = this.component.shadowRoot.querySelector('ls-left-bar') as HTMLLsLeftBarElement;\n const participantManager = leftBar?.shadowRoot?.getElementById('ls-participant-manager') as HTMLLsParticipantManagerElement;\n const tresult = (await this.adapter.execute(this.token, getTemplate(this.templateid))) as any;\n console.log(tresult);\n this.parseTemplate(JSON.stringify(tresult.template));\n if (participantManager) participantManager.template = this._template;\n this.generateFields();\n this.showPageFields(this.pageNum);\n this.validationErrors = validate.bind(this)(this._template);\n}\n\n// Utility function which extracts the type from any API id\nexport function getApiType(obj: any) {\n if (!obj?.id) return 'invalid';\n\n const apiId = atob(obj.id);\n if (apiId.length < 3) return 'invalid';\n\n const prefix = atob(obj.id).substring(0, 3);\n\n switch (prefix) {\n case 'ele':\n return 'element';\n case 'rol':\n return 'role';\n case 'tpl':\n return 'template';\n case 'doc':\n return 'document';\n default:\n return 'unknown';\n }\n}\n\nexport const validationTypes: any = [\n { id: 0, description: 'general purpose', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 30, description: 'yyyy/mm/dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 31, description: 'yy/mm/dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 32, description: 'dd/mm/yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 33, description: 'dd/mm/yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 34, description: 'mm/dd/yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 35, description: 'mm/dd/yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 36, description: 'yyyy.mm.dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 37, description: 'yy.mm.dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 38, description: 'dd.mm.yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 39, description: 'dd.mm.yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 40, description: 'mm.dd.yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 41, description: 'mm.dd.yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 42, description: 'yyyy-mm-dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 43, description: 'yy-mm-dd (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 44, description: 'dd-mm-yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 45, description: 'dd-mm-yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 46, description: 'mm-dd-yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 47, description: 'mm-dd-yy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 48, description: 'd mmmm yyyy (auto sign day)', formType: 'signing date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 73, description: 'Secret Code', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 77, description: 'Title caps (force text to title caps)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 78, description: 'Uppercase (force text to uppercase)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 79, description: 'Lowercase (force text to lowercase)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 65, description: '1 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 66, description: '2 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 67, description: '3 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 68, description: '4 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 69, description: '5 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 70, description: '6 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 71, description: '7 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 72, description: '8 character (any text)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 1000, description: 'First name field (special use)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 1001, description: 'Last name field (special use)', formType: 'text', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 1, description: 'Email', formType: 'email', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 1002, description: 'Email field (special use)', formType: 'email', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 50, description: 'Whole number', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'number' },\n { id: 51, description: 'Number', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 52, description: 'Currency', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 53, description: '1 number', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 54, description: '2 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 55, description: '3 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 56, description: '4 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 57, description: '5 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 58, description: '6 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 59, description: '7 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 60, description: '8 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 61, description: '9 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 62, description: '10 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 63, description: '11 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 64, description: '12 numbers', formType: 'number', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'number' },\n { id: 2, description: 'yyyy/mm/dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'date' },\n { id: 3, description: 'yy/mm/dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 4, description: 'dd/mm/yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'date' },\n { id: 5, description: 'dd/mm/yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 6, description: 'mm/dd/yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 7, description: 'mm/dd/yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 80, description: 'mm/yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 81, description: 'mm/yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 8, description: 'yyyy.mm.dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 9, description: 'yy.mm.dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 10, description: 'dd.mm.yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 11, description: 'dd.mm.yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 12, description: 'mm.dd.yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 13, description: 'mm.dd.yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 82, description: 'mm.yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 83, description: 'mm.yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 14, description: 'yyyy-mm-dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 15, description: 'yy-mm-dd', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 16, description: 'dd-mm-yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 17, description: 'dd-mm-yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 18, description: 'mm-dd-yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 19, description: 'mm-dd-yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 84, description: 'mm-yy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 85, description: 'mm-yyyy', formType: 'date', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'date' },\n { id: 20, description: 'Dropdown List', formType: 'dropdown', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 91, description: 'Countries', formType: 'dropdown', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 92, description: 'Name prefix titles', formType: 'dropdown', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 24, description: '✔/✗', formType: 'checkbox', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'checkbox' },\n { id: 25, description: '✔/empty', formType: 'checkbox', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'checkbox' },\n { id: 26, description: '✗/empty', formType: 'checkbox', defaultHeight: 16, defaultWidth: 16, typeDefault: false, inputType: 'checkbox' },\n { id: 74, description: 'File: attach to confirmatory email to sender', formType: 'file', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'file' },\n { id: 75, description: 'File: append to PDF, PDF files only', formType: 'file', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'file' },\n {\n id: 76,\n description: 'File: zip with PDF (for internal view, signed PDF for signer)',\n formType: 'file',\n defaultHeight: 16,\n defaultWidth: 200,\n typeDefault: false,\n inputType: 'file',\n },\n { id: 90, description: 'Drawn field.', formType: 'drawn field', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 2000, description: 'Initials', formType: 'initials', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 93, description: 'Regular Expression field', formType: 'regular expression', defaultHeight: 16, defaultWidth: 200, typeDefault: false, inputType: 'text' },\n { id: 3000, description: 'Auto Sign', formType: 'auto sign', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'text' },\n { id: 4000, description: 'Text Area', formType: 'textarea', defaultHeight: 16, defaultWidth: 200, typeDefault: true, inputType: 'textarea' },\n];\n\n// See validation table in database for latest values - these have to be hard coded for our HTML control - ASW\nexport function getInputType(validation: number): ValidationType {\n if (validation === null) return validationTypes[0];\n\n const inputType: ValidationType = validationTypes.find(v => v.id === validation);\n\n return inputType === null ? validationTypes[0] : inputType;\n}\n"]}
@@ -1,10 +1,19 @@
1
- import { alter, oob } from "./editorUtils";
1
+ import { oob } from "./editorUtils";
2
+ import { moveField } from "./editorCalculator";
3
+ import { updateSelectionBox } from "./mouseHandlers";
4
+ // Buffer for batching rapid key presses
5
+ let mutationBuffer = null;
6
+ let mutationTimer = null;
7
+ const BUFFER_DELAY = 300; // milliseconds
2
8
  export function keyDown(ev) {
9
+ // Disable keyboard controls in preview mode
10
+ if (this.mode === 'preview') {
11
+ return;
12
+ }
3
13
  if (this.selected && this.selected?.length > 0) {
4
- // utils need binding to the context
5
- const altbound = alter.bind(this);
6
14
  if (ev.key === 'ArrowDown') {
7
- altbound(original => {
15
+ ev.preventDefault();
16
+ bufferedAlter.bind(this)(() => original => {
8
17
  const alterElement = {
9
18
  ...original,
10
19
  top: original.top + 1,
@@ -15,7 +24,8 @@ export function keyDown(ev) {
15
24
  });
16
25
  }
17
26
  else if (ev.key === 'ArrowUp') {
18
- altbound(original => {
27
+ ev.preventDefault();
28
+ bufferedAlter.bind(this)(() => original => {
19
29
  const alterElement = {
20
30
  ...original,
21
31
  top: original.top - 1,
@@ -26,7 +36,8 @@ export function keyDown(ev) {
26
36
  });
27
37
  }
28
38
  else if (ev.key === 'ArrowRight') {
29
- altbound(original => {
39
+ ev.preventDefault();
40
+ bufferedAlter.bind(this)(() => original => {
30
41
  const alterElement = {
31
42
  ...original,
32
43
  left: original.left + 1,
@@ -37,7 +48,8 @@ export function keyDown(ev) {
37
48
  });
38
49
  }
39
50
  else if (ev.key === 'ArrowLeft') {
40
- altbound(original => {
51
+ ev.preventDefault();
52
+ bufferedAlter.bind(this)(() => original => {
41
53
  const alterElement = {
42
54
  ...original,
43
55
  left: original.left - 1,
@@ -73,4 +85,36 @@ export function keyDown(ev) {
73
85
  }
74
86
  }
75
87
  }
88
+ // Buffered version of alter that batches rapid key presses
89
+ function bufferedAlter(diffFnFactory) {
90
+ // Clear existing timer
91
+ if (mutationTimer) {
92
+ clearTimeout(mutationTimer);
93
+ }
94
+ // Apply the transformation immediately to the UI
95
+ const diffFn = diffFnFactory();
96
+ this.selected.forEach(field => {
97
+ const updatedItem = diffFn(field.dataItem);
98
+ // Update the dataItem in place
99
+ Object.assign(field.dataItem, updatedItem);
100
+ // Update the visual position using moveField
101
+ moveField.bind(this)(field, updatedItem);
102
+ });
103
+ // Update the selection box to match the new field positions
104
+ updateSelectionBox.bind(this)();
105
+ // Store the latest state for batched mutation
106
+ mutationBuffer = this.selected.map(c => c.dataItem);
107
+ // Set timer to emit mutation after delay
108
+ mutationTimer = setTimeout(() => {
109
+ if (mutationBuffer) {
110
+ const diffs = mutationBuffer.map(item => ({
111
+ action: 'update',
112
+ data: item,
113
+ }));
114
+ this.mutate.emit(diffs);
115
+ mutationBuffer = null;
116
+ }
117
+ mutationTimer = null;
118
+ }, BUFFER_DELAY);
119
+ }
76
120
  //# sourceMappingURL=keyHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyHandlers.js","sourceRoot":"","sources":["../../../../src/components/ls-document-viewer/keyHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["import { LsEditorField } from '../ls-editor-field/ls-editor-field';\nimport { alter, oob } from './editorUtils';\n\nexport function keyDown(ev: KeyboardEvent) {\n if (this.selected && this.selected?.length > 0) {\n // utils need binding to the context\n const altbound = alter.bind(this);\n\n if (ev.key === 'ArrowDown') {\n altbound(original => {\n const alterElement = {\n ...original,\n top: original.top + 1,\n ay: original.ay + 1,\n by: original.by + 1,\n };\n\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'ArrowUp') {\n altbound(original => {\n const alterElement = {\n ...original,\n top: original.top - 1,\n ay: original.ay - 1,\n by: original.top - 1,\n };\n\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'ArrowRight') {\n altbound(original => {\n const alterElement = {\n ...original,\n left: original.left + 1,\n ax: original.ax + 1,\n bx: original.bx + 1,\n };\n\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'ArrowLeft') {\n altbound(original => {\n const alterElement = {\n ...original,\n left: original.left - 1,\n ax: original.ax - 1,\n bx: original.bx - 1,\n };\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'Delete' || ev.key === 'Backspace') {\n const arr = Array.from(this.selected) as LsEditorField[];\n this.mutate.emit(\n arr.map(s => {\n return { action: 'delete', data: s.dataItem };\n }),\n );\n } else if (ev.key === 'd' || ev.key === 'D' || ev.key === 'keyD') {\n const arr = Array.from(this.selected) as LsEditorField[];\n const createdItems = arr.map(s => {\n const newItem = { ...s.dataItem, id: btoa('ele' + crypto.randomUUID()) };\n const newTop = s.dataItem.top + s.dataItem.height;\n // check its in bounds\n if (newTop + s.dataItem.height < s.dataItem.pageDimensions.height) {\n newItem.top = newTop;\n }\n return { action: 'create', data: newItem, select: 'clear' };\n });\n this.mutate.emit(createdItems.map(item => ({ action: 'create', data: item.data })));\n } else if (ev.key === 'Escape') {\n console.log('Clearing selection');\n this.selected = [];\n this.selectFields.emit([]);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"keyHandlers.js","sourceRoot":"","sources":["../../../../src/components/ls-document-viewer/keyHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["import { LsEditorField } from '../ls-editor-field/ls-editor-field';\nimport { oob } from './editorUtils';\nimport { moveField } from './editorCalculator';\nimport { updateSelectionBox } from './mouseHandlers';\n\n// Buffer for batching rapid key presses\nlet mutationBuffer = null;\nlet mutationTimer = null;\nconst BUFFER_DELAY = 300; // milliseconds\n\nexport function keyDown(ev: KeyboardEvent) {\n // Disable keyboard controls in preview mode\n if (this.mode === 'preview') {\n return;\n }\n \n if (this.selected && this.selected?.length > 0) {\n if (ev.key === 'ArrowDown') {\n ev.preventDefault();\n bufferedAlter.bind(this)(() => original => {\n const alterElement = {\n ...original,\n top: original.top + 1,\n ay: original.ay + 1,\n by: original.by + 1,\n };\n\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'ArrowUp') {\n ev.preventDefault();\n bufferedAlter.bind(this)(() => original => {\n const alterElement = {\n ...original,\n top: original.top - 1,\n ay: original.ay - 1,\n by: original.top - 1,\n };\n\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'ArrowRight') {\n ev.preventDefault();\n bufferedAlter.bind(this)(() => original => {\n const alterElement = {\n ...original,\n left: original.left + 1,\n ax: original.ax + 1,\n bx: original.bx + 1,\n };\n\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'ArrowLeft') {\n ev.preventDefault();\n bufferedAlter.bind(this)(() => original => {\n const alterElement = {\n ...original,\n left: original.left - 1,\n ax: original.ax - 1,\n bx: original.bx - 1,\n };\n return oob(alterElement) ? original : alterElement;\n });\n } else if (ev.key === 'Delete' || ev.key === 'Backspace') {\n const arr = Array.from(this.selected) as LsEditorField[];\n this.mutate.emit(\n arr.map(s => {\n return { action: 'delete', data: s.dataItem };\n }),\n );\n } else if (ev.key === 'd' || ev.key === 'D' || ev.key === 'keyD') {\n const arr = Array.from(this.selected) as LsEditorField[];\n const createdItems = arr.map(s => {\n const newItem = { ...s.dataItem, id: btoa('ele' + crypto.randomUUID()) };\n const newTop = s.dataItem.top + s.dataItem.height;\n // check its in bounds\n if (newTop + s.dataItem.height < s.dataItem.pageDimensions.height) {\n newItem.top = newTop;\n }\n return { action: 'create', data: newItem, select: 'clear' };\n });\n this.mutate.emit(createdItems.map(item => ({ action: 'create', data: item.data })));\n } else if (ev.key === 'Escape') {\n console.log('Clearing selection');\n this.selected = [];\n this.selectFields.emit([]);\n }\n }\n}\n\n// Buffered version of alter that batches rapid key presses\nfunction bufferedAlter(diffFnFactory) {\n // Clear existing timer\n if (mutationTimer) {\n clearTimeout(mutationTimer);\n }\n\n // Apply the transformation immediately to the UI\n const diffFn = diffFnFactory();\n this.selected.forEach(field => {\n const updatedItem = diffFn(field.dataItem);\n // Update the dataItem in place\n Object.assign(field.dataItem, updatedItem);\n // Update the visual position using moveField\n moveField.bind(this)(field, updatedItem);\n });\n\n // Update the selection box to match the new field positions\n updateSelectionBox.bind(this)();\n\n // Store the latest state for batched mutation\n mutationBuffer = this.selected.map(c => c.dataItem);\n\n // Set timer to emit mutation after delay\n mutationTimer = setTimeout(() => {\n if (mutationBuffer) {\n const diffs = mutationBuffer.map(item => ({\n action: 'update',\n data: item,\n }));\n this.mutate.emit(diffs);\n mutationBuffer = null;\n }\n mutationTimer = null;\n }, BUFFER_DELAY);\n}\n"]}
@@ -79,6 +79,8 @@ h6 {
79
79
  flex-direction: column;
80
80
  width: 100vw;
81
81
  height: 100vh;
82
+ font-family: var(--font-family, "IBM Plex Sans", sans-serif);
83
+ font-size: var(--text-sm);
82
84
  margin: 0px;
83
85
  padding: 0px;
84
86
  }
@@ -115,10 +117,20 @@ slot {
115
117
 
116
118
  .ls-dv-validation-tag-wrapper {
117
119
  position: absolute;
118
- top: 50%;
120
+ top: 1rem;
119
121
  right: 1rem;
120
- transform: translateY(-50%);
121
122
  z-index: 2000;
123
+ display: flex;
124
+ width: 100%;
125
+ align-items: center;
126
+ justify-content: center;
127
+ padding: 0.375rem;
128
+ gap: 0.5rem;
129
+ width: fit-content;
130
+ border-radius: 1.25rem;
131
+ border: 1px solid var(--gray-20, #edeff2);
132
+ background: var(--white, #ffffff);
133
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
122
134
  }
123
135
 
124
136
  .ls-dv-page-loader {
@@ -202,8 +214,8 @@ slot {
202
214
  #ls-box-selector {
203
215
  position: absolute;
204
216
  visibility: hidden;
205
- background-color: transparent;
206
- border: 1px rgba(71, 71, 71, 0.716) dashed;
217
+ background-color: color-mix(in srgb, var(--primary-20, #c7ddff) 20%, transparent);
218
+ border: 1px dashed var(--primary-50, #5185ff);
207
219
  }
208
220
 
209
221
  #ls-editor-form {
@@ -2,10 +2,11 @@ import { Host, h } from "@stencil/core";
2
2
  import { GlobalWorkerOptions, getDocument } from "pdfjs-dist";
3
3
  import { dvI18n } from "../../i18n/i18n";
4
4
  import { addField, moveField } from "./editorCalculator";
5
- import { DEFAULT_FONT_SIZE, DEFAULT_FONT_NAME } from "../../constants/fieldDefaults";
5
+ import { DEFAULT_FONT_SIZE, DEFAULT_FONT_NAME, FIELD_DEFAULTS } from "../../constants/fieldDefaults";
6
6
  import { keyDown } from "./keyHandlers";
7
- import { mouseClick, mouseDoubleClick, mouseDown, mouseDrop, mouseMove, mouseUp } from "./mouseHandlers";
8
- import { getApiType, matchData } from "./editorUtils";
7
+ import { mouseClick, mouseDoubleClick, mouseDown, mouseMove, mouseUp, toolboxDragStart } from "./mouseHandlers";
8
+ import { getApiType, getInputType, matchData } from "./editorUtils";
9
+ import { updateSelectionBox } from "./mouseHandlers";
9
10
  import { LsDocumentAdapter } from "./adapter/LsDocumentAdapter";
10
11
  import { getTemplate } from "./adapter/templateActions";
11
12
  import { getGroupData } from "./adapter/groupActions";
@@ -40,6 +41,10 @@ export class LsDocumentViewer {
40
41
  startLocations;
41
42
  // @ts-ignore
42
43
  startMouse;
44
+ // @ts-ignore
45
+ _isToolboxDragging = false;
46
+ // @ts-ignore
47
+ _cancelToolboxDrag = null;
43
48
  //
44
49
  // --- Properties / Inputs --- //
45
50
  //
@@ -134,6 +139,13 @@ export class LsDocumentViewer {
134
139
  this.showstatusbar = true;
135
140
  this.readonly = false;
136
141
  }
142
+ // Update readonly attribute on all existing fields
143
+ const fields = this.component.shadowRoot?.querySelectorAll('ls-editor-field');
144
+ if (fields) {
145
+ fields.forEach(field => {
146
+ field.setAttribute('readonly', String(_newMode === 'preview'));
147
+ });
148
+ }
137
149
  }
138
150
  zoomChanged(newZoom) {
139
151
  const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field');
@@ -222,6 +234,9 @@ export class LsDocumentViewer {
222
234
  });
223
235
  this.fieldTypeSelected = event.detail;
224
236
  }
237
+ handleToolboxDragStart(event) {
238
+ toolboxDragStart.bind(this)(event.detail);
239
+ }
225
240
  // generate a new role on the template
226
241
  addParticpantHandler(event) {
227
242
  const defaultExperience = this.groupInfo.experienceConnection.experiences.find(x => x.defaultExperience === true);
@@ -261,28 +276,39 @@ export class LsDocumentViewer {
261
276
  const { signerIndex, fieldType } = event.detail;
262
277
  // Update the active signer
263
278
  this.signer = signerIndex;
264
- console.log('Selecting field for placement:', event.detail);
265
- // Find and select the matching toolbox field
266
- const fields = this.component.shadowRoot.querySelectorAll('ls-toolbox-field');
267
- fields.forEach(element => {
268
- const isMatch = element.formElementType === fieldType;
269
- element.isSelected = isMatch;
270
- if (isMatch) {
271
- // Trigger the field selection event
272
- this.fieldTypeSelected = {
273
- label: element.label,
274
- formElementType: element.formElementType,
275
- elementType: element.elementType,
276
- validation: element.validation,
277
- defaultHeight: element.defaultHeight,
278
- defaultWidth: element.defaultWidth,
279
- };
280
- }
281
- });
279
+ // Build the field data directly from defaults
280
+ const defaults = FIELD_DEFAULTS[fieldType] || FIELD_DEFAULTS['signature'];
281
+ // Map formElementType to elementType correctly
282
+ let elementType;
283
+ if (fieldType === 'signature') {
284
+ elementType = 'signature';
285
+ }
286
+ else if (fieldType === 'initials') {
287
+ elementType = 'initials';
288
+ }
289
+ else if (fieldType === 'auto sign') {
290
+ elementType = 'admin';
291
+ }
292
+ else {
293
+ elementType = 'text';
294
+ }
295
+ this.fieldTypeSelected = {
296
+ label: fieldType,
297
+ formElementType: fieldType,
298
+ elementType: elementType,
299
+ validation: 0,
300
+ defaultHeight: defaults.defaultHeight,
301
+ defaultWidth: defaults.defaultWidth,
302
+ };
282
303
  // Switch to toolbox view if not already there
283
304
  if (this.manager !== 'toolbox') {
284
305
  this.manager = 'toolbox';
285
306
  }
307
+ // Initiate dragging for the selected field type on next tick
308
+ // (current mousedown/mouseup cycle needs to complete first)
309
+ requestAnimationFrame(() => {
310
+ toolboxDragStart.bind(this)(this.fieldTypeSelected);
311
+ });
286
312
  }
287
313
  // Send selection changes to bars and panels if in use.
288
314
  selectFieldsHandler(event) {
@@ -304,12 +330,29 @@ export class LsDocumentViewer {
304
330
  this.selectedDataItems = event.detail;
305
331
  }
306
332
  // change style of selected fields
333
+ const isMulti = event.detail.length > 1;
307
334
  event.detail.forEach(fc => {
308
335
  const fu = this.component.shadowRoot.getElementById('ls-field-' + fc.id);
309
336
  fu.selected = true;
337
+ fu.multiSelected = isMulti;
338
+ });
339
+ this.selected.forEach(s => {
340
+ const isSelected = event.detail.map(d => d.id).includes(s.dataItem.id);
341
+ s.selected = isSelected;
342
+ s.multiSelected = isSelected ? isMulti : false;
310
343
  });
311
- // this.selected = fields.filter(fx => fx.selected) as HTMLLsEditorFieldElement[];
312
- this.selected.forEach(s => (s.selected = event.detail.map(d => d.id).includes(s.dataItem.id)));
344
+ // Open date picker only when exactly one date field is selected
345
+ if (event.detail.length === 1) {
346
+ const field = this.component.shadowRoot.getElementById('ls-field-' + event.detail[0].id);
347
+ if (field && getInputType(event.detail[0].validation)?.inputType === 'date' && this.mode !== 'preview') {
348
+ requestAnimationFrame(() => {
349
+ const editbox = field.shadowRoot?.getElementById('editing-input');
350
+ if (editbox)
351
+ editbox.showPicker();
352
+ });
353
+ }
354
+ }
355
+ updateSelectionBox.bind(this)();
313
356
  this.validationErrors = validate.bind(this)(this._template);
314
357
  }
315
358
  // Send role selection changes to bars and panels
@@ -537,13 +580,6 @@ export class LsDocumentViewer {
537
580
  document.addEventListener('mouseup', mouseUp.bind(this));
538
581
  dropTarget.addEventListener('dblclick', mouseDoubleClick.bind(this));
539
582
  document.addEventListener('keydown', keyDown.bind(this));
540
- dropTarget.addEventListener('dragenter', event => {
541
- event.preventDefault();
542
- });
543
- dropTarget.addEventListener('dragover', event => {
544
- event.preventDefault();
545
- });
546
- dropTarget.addEventListener('drop', mouseDrop.bind(this));
547
583
  }
548
584
  this.generateFields();
549
585
  }
@@ -642,9 +678,9 @@ export class LsDocumentViewer {
642
678
  return false;
643
679
  }
644
680
  render() {
645
- return (h(Host, { key: 'a9d331483751ce64c05c3134191eb08ddb7ddf06' }, h(h.Fragment, null, this.isLoading && (h(h.Fragment, null, h("div", { key: 'c915116bf734cf566e33f3af368bc4b17560e0d9', class: 'ls-dv-page-loader' }, h("ls-loading-logo", { key: '966b15ede20a8a230074cc73e39aad4aecde9395', size: 200, colour: "var(--primary-60)" })), h("div", { key: '424bbbbbf06bbd57aa6796e558e182af6ffd9ff4', class: 'ls-dv-custom-loader-slot' }, h("slot", { key: '7d429afa5e085bc3867c8fc15f62c0350ffb31f5', name: "custom-loader" })), this.mode === 'compose' && h("ls-compose-loader", { key: 'fe72e6e7ec61bbb2810cb2b83af4b11590be8ed9' }))), this.error && (h("div", { key: 'db752c9609601c27addf55ca5a7a8a594dc13524', class: "ls-dv-error-state" }, h("div", { key: 'f8cf9bea15977301232104cb803e811c5aad2037', class: "ls-dv-error-card" }, h("ls-icon", { key: '460e393bc7ac0dab3905dfa70b8680775b68903f', name: "exclamation-circle-icon", size: 32, style: { color: 'var(--red-60, #dc2626)' } }), h("p", { key: 'd50a1542a8cfbec58b58a95f09341efcc0522a91', class: "ls-dv-error-title" }, dvI18n.t('viewer.autherror')), h("p", { key: '04774e5a6db6bbd7a80437a9f24bcbee616ad682', class: "ls-dv-error-message" }, this.error)))), h("div", { key: 'c82ef90f5bfdc04623e5a898615fd2cceaaccd29', class: "ls-dv-page-header" }, h("div", { key: '36e925bff58a1bc6f1fecd60c22feff6a888d8bb', class: 'ls-dv-left-slot-wrapper' }, h("slot", { key: '2f8fff622cfecf513650e2846b792a9c9821aebf', name: "left-button" })), h("div", { key: 'e7f61f403ad1090be14f63e1ffa7a8614dc65ae9', class: 'ls-dv-right-slot-wrapper' }, h("slot", { key: '977ca2bb7b05c68bbcbf158aaae9d7519532eac6', name: "right-button" })), this.mode === 'editor' && (h("div", { key: 'f3537fc9ea024c15a67a5626db3651c5d5025c59' }, h("span", { key: '9c9c5e5ad149e7b59d2f7517bd83ef37d697644a', class: "ls-dv-header-text-1" }, dvI18n.t('viewer.templatecreation')), h("span", { key: '5fe5dfcad466c60ff313838276e2387c065ad4df' }, "/"), h("span", { key: 'afc75e9dfdad274ee7e7d881712216690726d54c', class: "ls-dv-header-text-2" }, this._template?.title), h("div", { key: '48d40b7dce8ef3aece832b07422fe4adf273a5e2', class: 'ls-dv-validation-tag-wrapper' }, h("ls-validation-tag", { key: 'e772a5e04fdc0dada8171411f7f4025488aa7420', validationErrors: this.validationErrors })))), this.mode === 'compose' && (h("div", { key: '423f05e4e2b01656f4d6f593b68a0067db2aac7e', style: { display: 'flex', alignItems: 'center', gap: '0.25rem' } }, h("slot", { key: 'a94684455cad5efda22649ee74464892911dbd2a', name: "top-bar" })))), h("form", { key: 'e3a817a8414b82f25c295125fd62e1d059e6a41b', id: "ls-editor-form" }, h("ls-left-bar", { key: '00c673406fc94b4ac2b971d5b4a3dd954460f1c2', mode: this.mode, selected: this.selected, manager: this.manager, signer: this.signer, filtertoolbox: this.filtertoolbox, template: this._template, recipients: this._recipients, validationErrors: this.validationErrors, fieldTypeSelected: this.fieldTypeSelected, displayTable: this.displayTable, selectedDataItems: this.selectedDataItems, busy: this.isMutating, onManagerChange: e => this.handleManagerChange(e.detail), onClearSelected: () => {
681
+ return (h(Host, { key: '19dfd5bb90629e0ee81086ad24494c1fbb30a769' }, h(h.Fragment, null, this.isLoading && (h(h.Fragment, null, h("div", { key: '1a1e2e0022d58d2a3a5b19e4b42a8cde31a61e72', class: 'ls-dv-page-loader' }, h("ls-loading-logo", { key: 'd271f80bfbf240c9e5e33845c7e691f8a1b1f112', size: 200, colour: "var(--primary-60)" })), h("div", { key: '1477fb9c97a2455420b6bf4a4d36fdbab1e93ba7', class: 'ls-dv-custom-loader-slot' }, h("slot", { key: '15fd908d0fe0da5b94eb47188dd18a687a7bdd80', name: "custom-loader" })), this.mode === 'compose' && h("ls-compose-loader", { key: '875ccc5a7955ff5a6dac1ee84c13e906b93cd0a0' }))), this.error && (h("div", { key: '1688f3b7a7fd275b675dcddd3bbac9a32a92cf5b', class: "ls-dv-error-state" }, h("div", { key: 'e41022c9769850ed0268bff9389d5a850d6401c1', class: "ls-dv-error-card" }, h("ls-icon", { key: '9ddfc471bbb872c80bf99a2b197216fdf315fba5', name: "exclamation-circle-icon", size: 32, style: { color: 'var(--red-60, #dc2626)' } }), h("p", { key: '87b6733fad52161aeedb1735f95ba7bdc182aa81', class: "ls-dv-error-title" }, dvI18n.t('viewer.autherror')), h("p", { key: '606024e730b3d196d6ab84090f0e0915cfe1a5c9', class: "ls-dv-error-message" }, this.error)))), h("div", { key: '971f900009848767e10365a2bc7fb7e691a15b82', class: "ls-dv-page-header" }, h("div", { key: 'a3ebd8c9fdfdce20fa974e6317621718016088d7', class: 'ls-dv-left-slot-wrapper' }, h("slot", { key: 'ce06938b401ff17269ccdf5c6e9aa1857c105e5d', name: "left-button" })), h("div", { key: '44e2ef9f0c1918430c94dd27d9e8442ec9453669', class: 'ls-dv-right-slot-wrapper' }, h("slot", { key: '24ef7180f515b77bc49463ff0cbf6a30a447b9b4', name: "right-button" })), this.mode === 'editor' && (h("div", { key: 'c0663211ca2682681cc7e6e345f0a7a857c4c5e6' }, h("span", { key: '05047fbf34734864e17a2a75e380089738c6b041', class: "ls-dv-header-text-1" }, dvI18n.t('viewer.templatecreation')), h("span", { key: '37c4e99d31163922cbe17fe80bc044fb5fb6d109' }, "/"), h("span", { key: '4f3fac495c00e15f40c03397fbb3d0add08e02f7', class: "ls-dv-header-text-2" }, this._template?.title))), this.mode === 'compose' && (h("div", { key: 'a475dc17bc704d25002d4d17e5b0eb2895fb7674', style: { display: 'flex', alignItems: 'center', gap: '0.25rem' } }, h("slot", { key: '4f0987fc98bcbf81d76276168f7e7a7d2c6cd425', name: "top-bar" })))), h("form", { key: 'a2f8d7955322a384c337f4df2466dc4502743ea1', id: "ls-editor-form" }, h("ls-left-bar", { key: '4edd3d0015e5749e4d334057e36dfbaae657709a', mode: this.mode, selected: this.selected, manager: this.manager, signer: this.signer, filtertoolbox: this.filtertoolbox, template: this._template, recipients: this._recipients, validationErrors: this.validationErrors, fieldTypeSelected: this.fieldTypeSelected, displayTable: this.displayTable, selectedDataItems: this.selectedDataItems, busy: this.isMutating, onManagerChange: e => this.handleManagerChange(e.detail), onClearSelected: () => {
646
682
  this.selected = [];
647
- } }, h("slot", { key: '890f490f7fb112a5424566432194fae879b3ae7d', name: "recipient-panel", slot: "recipient-panel" })), h("ls-toolbar", { key: '9ecad16a44527c4addc8c2f348fd38fd4db9fd69', id: "ls-toolbar", template: this._template, editor: this, groupInfo: this.groupInfo, mode: this.mode, signer: this.signer }), h("div", { key: 'b7f5795c89607fd0af4298b5181509a8f230ba10', id: "ls-mid-area" }, h("div", { key: 'c88de8b35dc2f8734be059e4ca8fb5c9a69ea8d7', class: 'ls-dv-document-frame-wrapper', id: "document-frame-wrapper" }, h("div", { key: '73856de7f0ddb3c9aa621a38ac7004bfd08420e8', id: "ls-document-frame" }, h("canvas", { key: '4c6401f3e83385c469693b5f5dba44a5450cba3f', id: "pdf-canvas", class: this.displayTable || this.isLoading ? 'ls-dv-hidden' : '' }), h("ls-editor-table", { key: 'e267f966a5d22b2fb91dc7e8b562723e7847a43b', editor: this, class: this.displayTable ? '' : 'ls-dv-hidden' }), h("div", { key: '0f3ed6666b9447da5eb9099c71a78cdee731b22f', id: "ls-box-selector" }))), h("ls-statusbar", { key: '05481859511b3ea07ad87f184004235486606f6b', editor: this, page: this.pageNum, pageCount: this.pageCount })))), h("ls-tooltip", { key: '760fea2de6e27455f216e8a72f1020897c2e3ab3', tooltipId: "ls-dv-tooltip" })));
683
+ } }, h("slot", { key: 'f4502c1f0a2d1f68d8705be8adce5f241086c107', name: "recipient-panel", slot: "recipient-panel" })), h("ls-toolbar", { key: '71e1561902798fedcdb33642a299b6f619faa39f', id: "ls-toolbar", template: this._template, editor: this, groupInfo: this.groupInfo, mode: this.mode, signer: this.signer }), h("div", { key: '057b3403bcc1af5edef6a850bbf97179430a4ec5', id: "ls-mid-area" }, h("div", { key: 'c8a8131e98512f3142393f6f1a667db5fcaaad32', class: 'ls-dv-document-frame-wrapper', id: "document-frame-wrapper" }, h("div", { key: 'e4a4ed064e91eb361319d617ee5dce51c043e2ab', id: "ls-document-frame" }, h("canvas", { key: '101b79ab76f8e74a470722c37e6ec945464ee414', id: "pdf-canvas", class: this.displayTable || this.isLoading ? 'ls-dv-hidden' : '' }), h("ls-editor-table", { key: '39969d577ba144af5bcf34f4a420f0117197a5e7', editor: this, class: this.displayTable ? '' : 'ls-dv-hidden' }), h("div", { key: 'f0e2c7c6e05c42476340c8b8ac23597e9c91a161', id: "ls-box-selector" }))), h("ls-statusbar", { key: 'e038be57389137e9b2baf3910b99b01a50b2431b', editor: this, page: this.pageNum, pageCount: this.pageCount }), this.mode === 'editor' && (h("div", { key: '9fb53b6aaf7ca064da1d4915ef7f0c75c5940603', class: 'ls-dv-validation-tag-wrapper' }, h("ls-validation-tag", { key: '3d462906370699dd2b65d48cd3afb8c1997403ab', validationErrors: this.validationErrors }), h("slot", { key: '0342ad6a0ca59e592ce2772492a4b8480471b9c7', name: "next-button" })))))), h("ls-tooltip", { key: 'ed2fdf405b38cdc8d69fadfd6e863834002a19c4', tooltipId: "ls-dv-tooltip" })));
648
684
  }
649
685
  static get is() { return "ls-document-viewer"; }
650
686
  static get encapsulation() { return "shadow"; }
@@ -1345,6 +1381,12 @@ export class LsDocumentViewer {
1345
1381
  "target": undefined,
1346
1382
  "capture": false,
1347
1383
  "passive": false
1384
+ }, {
1385
+ "name": "toolboxDragStart",
1386
+ "method": "handleToolboxDragStart",
1387
+ "target": undefined,
1388
+ "capture": false,
1389
+ "passive": false
1348
1390
  }, {
1349
1391
  "name": "addParticipant",
1350
1392
  "method": "addParticpantHandler",