legalesign-document-viewer 0.7.1 → 0.7.2

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 (509) hide show
  1. package/dist/cjs/index-Czv4Oowx.js +2010 -0
  2. package/dist/cjs/index-Czv4Oowx.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +10 -0
  4. package/dist/cjs/index.cjs.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +15 -0
  6. package/dist/cjs/loader.cjs.js.map +1 -0
  7. package/dist/cjs/ls-compose-manager.cjs.entry.js +26 -0
  8. package/dist/cjs/ls-document-options_45.cjs.entry.js +51718 -0
  9. package/dist/cjs/ls-document-viewer.cjs.js +27 -0
  10. package/dist/cjs/ls-document-viewer.cjs.js.map +1 -0
  11. package/dist/cjs/ls-field-properties-dropdown.cjs.entry.js +19 -0
  12. package/dist/cjs/ls-formfield.cjs.entry.js +160 -0
  13. package/dist/cjs/ls-number-input_5.cjs.entry.js +1129 -0
  14. package/dist/cjs/ls-title-input.cjs.entry.js +49 -0
  15. package/dist/collection/collection-manifest.json +65 -0
  16. package/dist/collection/components/interfaces/IToolboxField.js +2 -0
  17. package/dist/collection/components/interfaces/IToolboxField.js.map +1 -0
  18. package/dist/collection/components/ls-compose-manager/ls-compose-manager.css +3 -0
  19. package/dist/collection/components/ls-compose-manager/ls-compose-manager.js +54 -0
  20. package/dist/collection/components/ls-compose-manager/ls-compose-manager.js.map +1 -0
  21. package/dist/collection/components/ls-document-options/ls-document-options.css +386 -0
  22. package/dist/collection/components/ls-document-options/ls-document-options.js +163 -0
  23. package/dist/collection/components/ls-document-options/ls-document-options.js.map +1 -0
  24. package/dist/collection/components/ls-document-viewer/adapter/LsDocumentAdapter.js +89 -0
  25. package/dist/collection/components/ls-document-viewer/adapter/LsDocumentAdapter.js.map +1 -0
  26. package/dist/collection/components/ls-document-viewer/adapter/elementActions.js +72 -0
  27. package/dist/collection/components/ls-document-viewer/adapter/elementActions.js.map +1 -0
  28. package/dist/collection/components/ls-document-viewer/adapter/groupActions.js +96 -0
  29. package/dist/collection/components/ls-document-viewer/adapter/groupActions.js.map +1 -0
  30. package/dist/collection/components/ls-document-viewer/adapter/parameters.js +16 -0
  31. package/dist/collection/components/ls-document-viewer/adapter/parameters.js.map +1 -0
  32. package/dist/collection/components/ls-document-viewer/adapter/roleActions.js +70 -0
  33. package/dist/collection/components/ls-document-viewer/adapter/roleActions.js.map +1 -0
  34. package/dist/collection/components/ls-document-viewer/adapter/templateActions.js +95 -0
  35. package/dist/collection/components/ls-document-viewer/adapter/templateActions.js.map +1 -0
  36. package/dist/collection/components/ls-document-viewer/defaultFieldIcons.js +20 -0
  37. package/dist/collection/components/ls-document-viewer/defaultFieldIcons.js.map +1 -0
  38. package/dist/{ls-document-viewer/defaultFieldLabels-CUaKk41L.js → collection/components/ls-document-viewer/defaultFieldLabels.js} +7 -11
  39. package/dist/collection/components/ls-document-viewer/defaultFieldLabels.js.map +1 -0
  40. package/dist/{ls-document-viewer/defaultPalette-CwCWCxsI.js → collection/components/ls-document-viewer/defaultPalette.js} +2 -6
  41. package/dist/collection/components/ls-document-viewer/defaultPalette.js.map +1 -0
  42. package/dist/collection/components/ls-document-viewer/editorCalculator.js +133 -0
  43. package/dist/collection/components/ls-document-viewer/editorCalculator.js.map +1 -0
  44. package/dist/collection/components/ls-document-viewer/editorUtils.js +210 -0
  45. package/dist/collection/components/ls-document-viewer/editorUtils.js.map +1 -0
  46. package/dist/collection/components/ls-document-viewer/keyHandlers.js +76 -0
  47. package/dist/collection/components/ls-document-viewer/keyHandlers.js.map +1 -0
  48. package/dist/collection/components/ls-document-viewer/ls-document-viewer.css +688 -0
  49. package/dist/collection/components/ls-document-viewer/ls-document-viewer.js +1292 -0
  50. package/dist/collection/components/ls-document-viewer/ls-document-viewer.js.map +1 -0
  51. package/dist/{ls-document-viewer/mouseHandlers-8wT9GBoG.js → collection/components/ls-document-viewer/mouseHandlers.js} +10 -15
  52. package/dist/collection/components/ls-document-viewer/mouseHandlers.js.map +1 -0
  53. package/dist/collection/components/ls-document-viewer/validator.js +51 -0
  54. package/dist/collection/components/ls-document-viewer/validator.js.map +1 -0
  55. package/dist/collection/components/ls-editor-field/ls-editor-field.css +89 -0
  56. package/dist/collection/components/ls-editor-field/ls-editor-field.js +468 -0
  57. package/dist/collection/components/ls-editor-field/ls-editor-field.js.map +1 -0
  58. package/dist/collection/components/ls-editor-table/ls-editor-table.css +16 -0
  59. package/dist/collection/components/ls-editor-table/ls-editor-table.js +69 -0
  60. package/dist/collection/components/ls-editor-table/ls-editor-table.js.map +1 -0
  61. package/dist/collection/components/ls-feature-column/ls-feature-column.css +27 -0
  62. package/dist/collection/components/ls-feature-column/ls-feature-column.js +114 -0
  63. package/dist/collection/components/ls-feature-column/ls-feature-column.js.map +1 -0
  64. package/dist/collection/components/ls-field-alignment/ls-field-alignment.css +370 -0
  65. package/dist/collection/components/ls-field-alignment/ls-field-alignment.js +208 -0
  66. package/dist/collection/components/ls-field-alignment/ls-field-alignment.js.map +1 -0
  67. package/dist/collection/components/ls-field-content/ls-field-content.css +288 -0
  68. package/dist/collection/components/ls-field-content/ls-field-content.js +141 -0
  69. package/dist/collection/components/ls-field-content/ls-field-content.js.map +1 -0
  70. package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.css +353 -0
  71. package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.js +141 -0
  72. package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.js.map +1 -0
  73. package/dist/collection/components/ls-field-distribute/ls-field-distribute.css +376 -0
  74. package/dist/{ls-document-viewer/ls-field-distribute.entry.js → collection/components/ls-field-distribute/ls-field-distribute.js} +72 -18
  75. package/dist/collection/components/ls-field-distribute/ls-field-distribute.js.map +1 -0
  76. package/dist/collection/components/ls-field-footer/ls-field-footer.css +55 -0
  77. package/dist/collection/components/ls-field-footer/ls-field-footer.js +145 -0
  78. package/dist/collection/components/ls-field-footer/ls-field-footer.js.map +1 -0
  79. package/dist/collection/components/ls-field-format/ls-field-format.css +297 -0
  80. package/dist/collection/components/ls-field-format/ls-field-format.js +145 -0
  81. package/dist/collection/components/ls-field-format/ls-field-format.js.map +1 -0
  82. package/dist/collection/components/ls-field-placement/ls-field-placement.css +370 -0
  83. package/dist/collection/components/ls-field-placement/ls-field-placement.js +121 -0
  84. package/dist/collection/components/ls-field-placement/ls-field-placement.js.map +1 -0
  85. package/dist/collection/components/ls-field-properties/ls-field-properties.css +286 -0
  86. package/dist/collection/components/ls-field-properties/ls-field-properties.js +83 -0
  87. package/dist/collection/components/ls-field-properties/ls-field-properties.js.map +1 -0
  88. package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.css +391 -0
  89. package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js +144 -0
  90. package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js.map +1 -0
  91. package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.css +284 -0
  92. package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.js +47 -0
  93. package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.js.map +1 -0
  94. package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.css +65 -0
  95. package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.js +91 -0
  96. package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.js.map +1 -0
  97. package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.css +302 -0
  98. package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.js +47 -0
  99. package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.js.map +1 -0
  100. package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.css +3 -0
  101. package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.js +47 -0
  102. package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.js.map +1 -0
  103. package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.css +304 -0
  104. package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.js +47 -0
  105. package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.js.map +1 -0
  106. package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.css +304 -0
  107. package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.js +47 -0
  108. package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.js.map +1 -0
  109. package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.css +304 -0
  110. package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.js +47 -0
  111. package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.js.map +1 -0
  112. package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.css +304 -0
  113. package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.js +47 -0
  114. package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.js.map +1 -0
  115. package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.css +459 -0
  116. package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.js +148 -0
  117. package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.js.map +1 -0
  118. package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.css +304 -0
  119. package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.js +47 -0
  120. package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.js.map +1 -0
  121. package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.css +304 -0
  122. package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.js +47 -0
  123. package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.js.map +1 -0
  124. package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.css +301 -0
  125. package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.js +47 -0
  126. package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.js.map +1 -0
  127. package/dist/collection/components/ls-field-size/ls-field-size.css +376 -0
  128. package/dist/collection/components/ls-field-size/ls-field-size.js +87 -0
  129. package/dist/collection/components/ls-field-size/ls-field-size.js.map +1 -0
  130. package/dist/collection/components/ls-field-type-display/ls-field-type-display.css +35 -0
  131. package/dist/collection/components/ls-field-type-display/ls-field-type-display.js +75 -0
  132. package/dist/collection/components/ls-field-type-display/ls-field-type-display.js.map +1 -0
  133. package/dist/collection/components/ls-formfield/inputs/ls-number-input/ls-number-input.css +273 -0
  134. package/dist/collection/components/ls-formfield/inputs/ls-number-input/ls-number-input.js +336 -0
  135. package/dist/collection/components/ls-formfield/inputs/ls-number-input/ls-number-input.js.map +1 -0
  136. package/dist/collection/components/ls-formfield/inputs/ls-radio-input/ls-radio-input.css +69 -0
  137. package/dist/collection/components/ls-formfield/inputs/ls-radio-input/ls-radio-input.js +172 -0
  138. package/dist/collection/components/ls-formfield/inputs/ls-radio-input/ls-radio-input.js.map +1 -0
  139. package/dist/collection/components/ls-formfield/inputs/ls-select-input/ls-select-input.css +228 -0
  140. package/dist/collection/components/ls-formfield/inputs/ls-select-input/ls-select-input.js +288 -0
  141. package/dist/collection/components/ls-formfield/inputs/ls-select-input/ls-select-input.js.map +1 -0
  142. package/dist/collection/components/ls-formfield/inputs/ls-text-input/ls-text-input.css +218 -0
  143. package/dist/collection/components/ls-formfield/inputs/ls-text-input/ls-text-input.js +365 -0
  144. package/dist/collection/components/ls-formfield/inputs/ls-text-input/ls-text-input.js.map +1 -0
  145. package/dist/collection/components/ls-formfield/inputs/ls-textarea-input/ls-textarea-input.css +208 -0
  146. package/dist/collection/components/ls-formfield/inputs/ls-textarea-input/ls-textarea-input.js +326 -0
  147. package/dist/collection/components/ls-formfield/inputs/ls-textarea-input/ls-textarea-input.js.map +1 -0
  148. package/dist/collection/components/ls-formfield/ls-formfield.css +98 -0
  149. package/dist/collection/components/ls-formfield/ls-formfield.js +546 -0
  150. package/dist/collection/components/ls-formfield/ls-formfield.js.map +1 -0
  151. package/dist/collection/components/ls-helper-bar/ls-helper-bar.css +33 -0
  152. package/dist/collection/components/ls-helper-bar/ls-helper-bar.js +71 -0
  153. package/dist/collection/components/ls-helper-bar/ls-helper-bar.js.map +1 -0
  154. package/dist/collection/components/ls-icon/icons.js +6639 -0
  155. package/dist/collection/components/ls-icon/icons.js.map +1 -0
  156. package/dist/collection/components/ls-icon/ls-icon.js +145 -0
  157. package/dist/collection/components/ls-icon/ls-icon.js.map +1 -0
  158. package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.css +29 -0
  159. package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.js +70 -0
  160. package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.js.map +1 -0
  161. package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.css +45 -0
  162. package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.js +19 -0
  163. package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.js.map +1 -0
  164. package/dist/collection/components/ls-page-loader/ls-page-loader.css +20 -0
  165. package/dist/{ls-document-viewer/ls-page-loader.entry.js → collection/components/ls-page-loader/ls-page-loader.js} +16 -13
  166. package/dist/collection/components/ls-page-loader/ls-page-loader.js.map +1 -0
  167. package/dist/collection/components/ls-participant-card/ls-participant-card.css +430 -0
  168. package/dist/collection/components/ls-participant-card/ls-participant-card.js +280 -0
  169. package/dist/collection/components/ls-participant-card/ls-participant-card.js.map +1 -0
  170. package/dist/collection/components/ls-participant-manager/ls-participant-manager.css +350 -0
  171. package/dist/collection/components/ls-participant-manager/ls-participant-manager.js +190 -0
  172. package/dist/collection/components/ls-participant-manager/ls-participant-manager.js.map +1 -0
  173. package/dist/collection/components/ls-participant-select/ls-participant-select.css +431 -0
  174. package/dist/collection/components/ls-participant-select/ls-participant-select.js +198 -0
  175. package/dist/collection/components/ls-participant-select/ls-participant-select.js.map +1 -0
  176. package/dist/collection/components/ls-props-section/ls-props-section.css +42 -0
  177. package/dist/collection/components/ls-props-section/ls-props-section.js +84 -0
  178. package/dist/collection/components/ls-props-section/ls-props-section.js.map +1 -0
  179. package/dist/collection/components/ls-recipient-card/ls-recipient-card.css +464 -0
  180. package/dist/collection/components/ls-recipient-card/ls-recipient-card.js +299 -0
  181. package/dist/collection/components/ls-recipient-card/ls-recipient-card.js.map +1 -0
  182. package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.css +29 -0
  183. package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.js +19 -0
  184. package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.js.map +1 -0
  185. package/dist/collection/components/ls-statusbar/ls-statusbar.css +212 -0
  186. package/dist/collection/components/ls-statusbar/ls-statusbar.js +143 -0
  187. package/dist/collection/components/ls-statusbar/ls-statusbar.js.map +1 -0
  188. package/dist/collection/components/ls-title-input/ls-title-input.css +320 -0
  189. package/dist/collection/components/ls-title-input/ls-title-input.js +106 -0
  190. package/dist/collection/components/ls-title-input/ls-title-input.js.map +1 -0
  191. package/dist/collection/components/ls-toggle/ls-toggle.css +90 -0
  192. package/dist/collection/components/ls-toggle/ls-toggle.js +86 -0
  193. package/dist/collection/components/ls-toggle/ls-toggle.js.map +1 -0
  194. package/dist/collection/components/ls-toolbar/ls-toolbar.css +303 -0
  195. package/dist/collection/components/ls-toolbar/ls-toolbar.js +215 -0
  196. package/dist/collection/components/ls-toolbar/ls-toolbar.js.map +1 -0
  197. package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.css +329 -0
  198. package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.js +381 -0
  199. package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.js.map +1 -0
  200. package/dist/collection/components/ls-tooltip/ls-tooltip.css +55 -0
  201. package/dist/collection/components/ls-tooltip/ls-tooltip.js +205 -0
  202. package/dist/collection/components/ls-tooltip/ls-tooltip.js.map +1 -0
  203. package/dist/collection/components/ls-validation-manager/ls-validation-manager.css +159 -0
  204. package/dist/collection/components/ls-validation-manager/ls-validation-manager.js +63 -0
  205. package/dist/collection/components/ls-validation-manager/ls-validation-manager.js.map +1 -0
  206. package/dist/collection/components/ls-validation-tag/ls-validation-tag.css +232 -0
  207. package/dist/collection/components/ls-validation-tag/ls-validation-tag.js +170 -0
  208. package/dist/collection/components/ls-validation-tag/ls-validation-tag.js.map +1 -0
  209. package/dist/collection/index.js +11 -0
  210. package/dist/collection/index.js.map +1 -0
  211. package/dist/collection/types/Icon.js +369 -0
  212. package/dist/collection/types/Icon.js.map +1 -0
  213. package/dist/collection/types/LSApiElement.js +2 -0
  214. package/dist/collection/types/LSApiElement.js.map +1 -0
  215. package/dist/collection/types/LSApiElementType.js +16 -0
  216. package/dist/collection/types/LSApiElementType.js.map +1 -0
  217. package/dist/collection/types/LSApiRecipient.js +2 -0
  218. package/dist/collection/types/LSApiRecipient.js.map +1 -0
  219. package/dist/collection/types/LSApiRole.js +2 -0
  220. package/dist/collection/types/LSApiRole.js.map +1 -0
  221. package/dist/collection/types/LSApiTemplate.js +2 -0
  222. package/dist/collection/types/LSApiTemplate.js.map +1 -0
  223. package/dist/collection/types/LSMutateEvent.js +2 -0
  224. package/dist/collection/types/LSMutateEvent.js.map +1 -0
  225. package/dist/collection/types/RoleColor.js +2 -0
  226. package/dist/collection/types/RoleColor.js.map +1 -0
  227. package/dist/collection/types/ValidationError.js +2 -0
  228. package/dist/collection/types/ValidationError.js.map +1 -0
  229. package/dist/collection/types/ValidationType.js +2 -0
  230. package/dist/collection/types/ValidationType.js.map +1 -0
  231. package/dist/collection/utils/tooltip.js +28 -0
  232. package/dist/collection/utils/tooltip.js.map +1 -0
  233. package/dist/collection/utils/utils.js +4 -0
  234. package/dist/collection/utils/utils.js.map +1 -0
  235. package/dist/components/index.js +10 -0
  236. package/dist/components/index.js.map +1 -0
  237. package/dist/components/ls-compose-manager.js +49 -0
  238. package/dist/components/ls-compose-manager.js.map +1 -0
  239. package/dist/components/ls-document-options.js +9 -0
  240. package/dist/components/ls-document-options.js.map +1 -0
  241. package/dist/{ls-document-viewer/ls-document-viewer.entry.js → components/ls-document-viewer.js} +502 -879
  242. package/dist/components/ls-document-viewer.js.map +1 -0
  243. package/dist/components/ls-editor-field.js +9 -0
  244. package/dist/components/ls-editor-field.js.map +1 -0
  245. package/dist/components/ls-editor-table.js +9 -0
  246. package/dist/components/ls-editor-table.js.map +1 -0
  247. package/dist/components/ls-feature-column.js +9 -0
  248. package/dist/components/ls-feature-column.js.map +1 -0
  249. package/dist/components/ls-field-alignment.js +9 -0
  250. package/dist/components/ls-field-alignment.js.map +1 -0
  251. package/dist/components/ls-field-content.js +9 -0
  252. package/dist/components/ls-field-content.js.map +1 -0
  253. package/dist/components/ls-field-dimensions.js +9 -0
  254. package/dist/components/ls-field-dimensions.js.map +1 -0
  255. package/dist/components/ls-field-distribute.js +9 -0
  256. package/dist/components/ls-field-distribute.js.map +1 -0
  257. package/dist/components/ls-field-footer.js +9 -0
  258. package/dist/components/ls-field-footer.js.map +1 -0
  259. package/dist/components/ls-field-format.js +9 -0
  260. package/dist/components/ls-field-format.js.map +1 -0
  261. package/dist/components/ls-field-placement.js +9 -0
  262. package/dist/components/ls-field-placement.js.map +1 -0
  263. package/dist/components/ls-field-properties-advanced.js +9 -0
  264. package/dist/components/ls-field-properties-advanced.js.map +1 -0
  265. package/dist/components/ls-field-properties-autosign.js +9 -0
  266. package/dist/components/ls-field-properties-autosign.js.map +1 -0
  267. package/dist/components/ls-field-properties-container.js +9 -0
  268. package/dist/components/ls-field-properties-container.js.map +1 -0
  269. package/dist/components/ls-field-properties-date.js +9 -0
  270. package/dist/components/ls-field-properties-date.js.map +1 -0
  271. package/dist/components/ls-field-properties-dropdown.js +120 -0
  272. package/dist/components/ls-field-properties-dropdown.js.map +1 -0
  273. package/dist/components/ls-field-properties-email.js +9 -0
  274. package/dist/components/ls-field-properties-email.js.map +1 -0
  275. package/dist/components/ls-field-properties-file.js +9 -0
  276. package/dist/components/ls-field-properties-file.js.map +1 -0
  277. package/dist/components/ls-field-properties-general.js +9 -0
  278. package/dist/components/ls-field-properties-general.js.map +1 -0
  279. package/dist/components/ls-field-properties-image.js +9 -0
  280. package/dist/components/ls-field-properties-image.js.map +1 -0
  281. package/dist/components/ls-field-properties-multiple.js +9 -0
  282. package/dist/components/ls-field-properties-multiple.js.map +1 -0
  283. package/dist/components/ls-field-properties-number.js +9 -0
  284. package/dist/components/ls-field-properties-number.js.map +1 -0
  285. package/dist/components/ls-field-properties-signature.js +9 -0
  286. package/dist/components/ls-field-properties-signature.js.map +1 -0
  287. package/dist/components/ls-field-properties-text.js +9 -0
  288. package/dist/components/ls-field-properties-text.js.map +1 -0
  289. package/dist/components/ls-field-properties.js +9 -0
  290. package/dist/components/ls-field-properties.js.map +1 -0
  291. package/dist/components/ls-field-size.js +9 -0
  292. package/dist/components/ls-field-size.js.map +1 -0
  293. package/dist/components/ls-field-type-display.js +9 -0
  294. package/dist/components/ls-field-type-display.js.map +1 -0
  295. package/dist/components/ls-formfield.js +243 -0
  296. package/dist/components/ls-formfield.js.map +1 -0
  297. package/dist/components/ls-helper-bar.js +9 -0
  298. package/dist/components/ls-helper-bar.js.map +1 -0
  299. package/dist/components/ls-icon.js +9 -0
  300. package/dist/components/ls-icon.js.map +1 -0
  301. package/dist/components/ls-input-wrapper.js +9 -0
  302. package/dist/components/ls-input-wrapper.js.map +1 -0
  303. package/dist/components/ls-keyboard-shortcuts.js +9 -0
  304. package/dist/components/ls-keyboard-shortcuts.js.map +1 -0
  305. package/dist/components/ls-number-input.js +9 -0
  306. package/dist/components/ls-number-input.js.map +1 -0
  307. package/dist/components/ls-page-loader.js +9 -0
  308. package/dist/components/ls-page-loader.js.map +1 -0
  309. package/dist/components/ls-participant-card.js +9 -0
  310. package/dist/components/ls-participant-card.js.map +1 -0
  311. package/dist/components/ls-participant-manager.js +9 -0
  312. package/dist/components/ls-participant-manager.js.map +1 -0
  313. package/dist/components/ls-participant-select.js +9 -0
  314. package/dist/components/ls-participant-select.js.map +1 -0
  315. package/dist/components/ls-props-section.js +9 -0
  316. package/dist/components/ls-props-section.js.map +1 -0
  317. package/dist/components/ls-radio-input.js +9 -0
  318. package/dist/components/ls-radio-input.js.map +1 -0
  319. package/dist/components/ls-recipient-card.js +9 -0
  320. package/dist/components/ls-recipient-card.js.map +1 -0
  321. package/dist/components/ls-recipient-manager.js +9 -0
  322. package/dist/components/ls-recipient-manager.js.map +1 -0
  323. package/dist/components/ls-select-input.js +9 -0
  324. package/dist/components/ls-select-input.js.map +1 -0
  325. package/dist/components/ls-statusbar.js +9 -0
  326. package/dist/components/ls-statusbar.js.map +1 -0
  327. package/dist/components/ls-text-input.js +9 -0
  328. package/dist/components/ls-text-input.js.map +1 -0
  329. package/dist/components/ls-textarea-input.js +9 -0
  330. package/dist/components/ls-textarea-input.js.map +1 -0
  331. package/dist/components/ls-title-input.js +79 -0
  332. package/dist/components/ls-title-input.js.map +1 -0
  333. package/dist/components/ls-toggle.js +9 -0
  334. package/dist/components/ls-toggle.js.map +1 -0
  335. package/dist/components/ls-toolbar.js +9 -0
  336. package/dist/components/ls-toolbar.js.map +1 -0
  337. package/dist/components/ls-toolbox-field.js +9 -0
  338. package/dist/components/ls-toolbox-field.js.map +1 -0
  339. package/dist/components/ls-tooltip.js +9 -0
  340. package/dist/components/ls-tooltip.js.map +1 -0
  341. package/dist/components/ls-validation-manager.js +9 -0
  342. package/dist/components/ls-validation-manager.js.map +1 -0
  343. package/dist/components/ls-validation-tag.js +9 -0
  344. package/dist/components/ls-validation-tag.js.map +1 -0
  345. package/dist/{ls-document-viewer/ls-participant-card.entry.js → components/p-B4_-Y3Tc.js} +60 -11
  346. package/dist/components/p-B4_-Y3Tc.js.map +1 -0
  347. package/dist/components/p-B5cnJ7Uh.js +47 -0
  348. package/dist/components/p-B5cnJ7Uh.js.map +1 -0
  349. package/dist/{ls-document-viewer/ls-select-input.entry.js → components/p-B6kmJVw0.js} +47 -9
  350. package/dist/components/p-B6kmJVw0.js.map +1 -0
  351. package/dist/{ls-document-viewer/ls-field-footer.entry.js → components/p-BDTgDxaX.js} +36 -8
  352. package/dist/components/p-BDTgDxaX.js.map +1 -0
  353. package/dist/{ls-document-viewer/ls-field-properties-container.entry.js → components/p-BFUdzGLI.js} +32 -8
  354. package/dist/components/p-BFUdzGLI.js.map +1 -0
  355. package/dist/components/p-BKrsDBDB.js +219 -0
  356. package/dist/components/p-BKrsDBDB.js.map +1 -0
  357. package/dist/{ls-document-viewer/ls-field-properties-general.entry.js → components/p-BREZ8Ewj.js} +108 -8
  358. package/dist/components/p-BREZ8Ewj.js.map +1 -0
  359. package/dist/{ls-document-viewer/ls-field-properties-advanced.entry.js → components/p-BSpwN-xy.js} +43 -8
  360. package/dist/components/p-BSpwN-xy.js.map +1 -0
  361. package/dist/components/p-B_JOCgcw.js +105 -0
  362. package/dist/components/p-B_JOCgcw.js.map +1 -0
  363. package/dist/{ls-document-viewer/ls-document-options.entry.js → components/p-Bd5hHfVU.js} +53 -10
  364. package/dist/components/p-Bd5hHfVU.js.map +1 -0
  365. package/dist/{ls-document-viewer/ls-field-properties-email.entry.js → components/p-Begt0qBL.js} +108 -8
  366. package/dist/components/p-Begt0qBL.js.map +1 -0
  367. package/dist/{ls-document-viewer/ls-field-properties-number.entry.js → components/p-BgQSapwC.js} +108 -8
  368. package/dist/components/p-BgQSapwC.js.map +1 -0
  369. package/dist/components/p-BhZ5Udbm.js +1765 -0
  370. package/dist/components/p-BhZ5Udbm.js.map +1 -0
  371. package/dist/components/p-Bkyhs-9F.js +60 -0
  372. package/dist/components/p-Bkyhs-9F.js.map +1 -0
  373. package/dist/{ls-document-viewer/ls-number-input.entry.js → components/p-BrNFnrQ5.js} +50 -9
  374. package/dist/components/p-BrNFnrQ5.js.map +1 -0
  375. package/dist/{ls-document-viewer/ls-statusbar.entry.js → components/p-Bw19bxna.js} +62 -13
  376. package/dist/components/p-Bw19bxna.js.map +1 -0
  377. package/dist/components/p-Bxq4Jou6.js +568 -0
  378. package/dist/components/p-Bxq4Jou6.js.map +1 -0
  379. package/dist/{ls-document-viewer/ls-radio-input.entry.js → components/p-C6pzA2Lp.js} +42 -9
  380. package/dist/components/p-C6pzA2Lp.js.map +1 -0
  381. package/dist/{ls-document-viewer/ls-toolbox-field.entry.js → components/p-CI3IFKqK.js} +56 -11
  382. package/dist/components/p-CI3IFKqK.js.map +1 -0
  383. package/dist/{ls-document-viewer/editorUtils-KdYXvZ56.js → components/p-CKnixZlS.js} +248 -58
  384. package/dist/components/p-CKnixZlS.js.map +1 -0
  385. package/dist/{ls-document-viewer/ls-field-properties-multiple.entry.js → components/p-CMsyvCsL.js} +98 -10
  386. package/dist/components/p-CMsyvCsL.js.map +1 -0
  387. package/dist/{ls-document-viewer/ls-helper-bar.entry.js → components/p-CN4S8Tr6.js} +51 -10
  388. package/dist/components/p-CN4S8Tr6.js.map +1 -0
  389. package/dist/{ls-document-viewer/ls-field-properties-image.entry.js → components/p-CSPv-sVd.js} +108 -8
  390. package/dist/components/p-CSPv-sVd.js.map +1 -0
  391. package/dist/{ls-document-viewer/ls-field-placement.entry.js → components/p-CYMm2d62.js} +44 -10
  392. package/dist/components/p-CYMm2d62.js.map +1 -0
  393. package/dist/{ls-document-viewer/ls-field-properties-file.entry.js → components/p-Ca-YBRIi.js} +108 -8
  394. package/dist/components/p-Ca-YBRIi.js.map +1 -0
  395. package/dist/{ls-document-viewer/tooltip-Cb8nDMs-.js → components/p-Cb8nDMs-.js} +2 -2
  396. package/dist/components/p-Cb8nDMs-.js.map +1 -0
  397. package/dist/{ls-document-viewer/ls-recipient-card.entry.js → components/p-CbSH7gJL.js} +58 -10
  398. package/dist/components/p-CbSH7gJL.js.map +1 -0
  399. package/dist/{ls-document-viewer/ls-field-properties-signature.entry.js → components/p-Cdp9Kc36.js} +108 -8
  400. package/dist/components/p-Cdp9Kc36.js.map +1 -0
  401. package/dist/{ls-document-viewer/ls-field-format.entry.js → components/p-Ch9RTQWk.js} +46 -10
  402. package/dist/components/p-Ch9RTQWk.js.map +1 -0
  403. package/dist/{ls-document-viewer/clsx-ChV9xqsO.js → components/p-ChV9xqsO.js} +2 -2
  404. package/dist/components/p-ChV9xqsO.js.map +1 -0
  405. package/dist/{ls-document-viewer/ls-textarea-input.entry.js → components/p-CntMVGQM.js} +50 -9
  406. package/dist/components/p-CntMVGQM.js.map +1 -0
  407. package/dist/{ls-document-viewer/defaultFieldIcons-Cp3IxvzK.js → components/p-Cp3IxvzK.js} +2 -2
  408. package/dist/components/p-Cp3IxvzK.js.map +1 -0
  409. package/dist/{ls-document-viewer/ls-props-section.entry.js → components/p-CwkNbClZ.js} +32 -8
  410. package/dist/components/p-CwkNbClZ.js.map +1 -0
  411. package/dist/{ls-document-viewer/ls-field-properties-autosign.entry.js → components/p-Cx-QcGQg.js} +66 -8
  412. package/dist/components/p-Cx-QcGQg.js.map +1 -0
  413. package/dist/components/p-D1Vbun-H.js +36 -0
  414. package/dist/components/p-D1Vbun-H.js.map +1 -0
  415. package/dist/{ls-document-viewer/ls-feature-column.entry.js → components/p-D9j4pLd9.js} +45 -10
  416. package/dist/components/p-D9j4pLd9.js.map +1 -0
  417. package/dist/{ls-document-viewer/ls-field-dimensions.entry.js → components/p-DBZFz4Ni.js} +44 -10
  418. package/dist/components/p-DBZFz4Ni.js.map +1 -0
  419. package/dist/{ls-document-viewer/ls-participant-select.entry.js → components/p-DK4_6BnD.js} +42 -9
  420. package/dist/components/p-DK4_6BnD.js.map +1 -0
  421. package/dist/{ls-document-viewer/ls-field-properties-date.entry.js → components/p-DThoxHje.js} +108 -8
  422. package/dist/components/p-DThoxHje.js.map +1 -0
  423. package/dist/{ls-document-viewer/ls-validation-tag.entry.js → components/p-DdAAJAZW.js} +41 -9
  424. package/dist/components/p-DdAAJAZW.js.map +1 -0
  425. package/dist/components/p-DfV8Cje6.js +231 -0
  426. package/dist/components/p-DfV8Cje6.js.map +1 -0
  427. package/dist/{ls-document-viewer/ls-keyboard-shortcuts.entry.js → components/p-DfkXv1vI.js} +28 -8
  428. package/dist/components/p-DfkXv1vI.js.map +1 -0
  429. package/dist/{ls-document-viewer/ls-field-size.entry.js → components/p-DirhmWEt.js} +44 -10
  430. package/dist/components/p-DirhmWEt.js.map +1 -0
  431. package/dist/{ls-document-viewer/ls-icon.entry.js → components/p-DnyBXRV4.js} +33 -15
  432. package/dist/components/p-DnyBXRV4.js.map +1 -0
  433. package/dist/{ls-document-viewer/ls-field-content.entry.js → components/p-Dsi4R7Oq.js} +68 -11
  434. package/dist/components/p-Dsi4R7Oq.js.map +1 -0
  435. package/dist/{ls-document-viewer/ls-field-properties-text.entry.js → components/p-MT9M7yVh.js} +108 -8
  436. package/dist/components/p-MT9M7yVh.js.map +1 -0
  437. package/dist/{ls-document-viewer/ls-validation-manager.entry.js → components/p-T6MZpv4Y.js} +49 -9
  438. package/dist/components/p-T6MZpv4Y.js.map +1 -0
  439. package/dist/{ls-document-viewer/ls-field-alignment.entry.js → components/p-UffBQXtF.js} +44 -10
  440. package/dist/components/p-UffBQXtF.js.map +1 -0
  441. package/dist/{ls-document-viewer/ls-participant-manager.entry.js → components/p-enO8g-4z.js} +58 -11
  442. package/dist/components/p-enO8g-4z.js.map +1 -0
  443. package/dist/{ls-document-viewer/ls-tooltip.entry.js → components/p-faUZy676.js} +44 -694
  444. package/dist/components/p-faUZy676.js.map +1 -0
  445. package/dist/components/p-kug3tj7P.js +115 -0
  446. package/dist/components/p-kug3tj7P.js.map +1 -0
  447. package/dist/{ls-document-viewer/ls-toggle.entry.js → components/p-mm_laW9q.js} +30 -8
  448. package/dist/components/p-mm_laW9q.js.map +1 -0
  449. package/dist/{ls-document-viewer/ls-toolbar.entry.js → components/p-pumCOAgo.js} +59 -9
  450. package/dist/components/p-pumCOAgo.js.map +1 -0
  451. package/dist/{ls-document-viewer/ls-text-input.entry.js → components/p-tbdpKil5.js} +51 -9
  452. package/dist/components/p-tbdpKil5.js.map +1 -0
  453. package/dist/esm/index-BwdJ-HOC.js +2000 -0
  454. package/dist/esm/index-BwdJ-HOC.js.map +1 -0
  455. package/dist/esm/index.js +8 -0
  456. package/dist/esm/index.js.map +1 -0
  457. package/dist/esm/loader.js +13 -0
  458. package/dist/esm/loader.js.map +1 -0
  459. package/dist/{ls-document-viewer → esm}/ls-compose-manager.entry.js +2 -2
  460. package/dist/esm/ls-compose-manager.entry.js.map +1 -0
  461. package/dist/esm/ls-document-options_45.entry.js +51671 -0
  462. package/dist/esm/ls-document-viewer.js +23 -0
  463. package/dist/esm/ls-document-viewer.js.map +1 -0
  464. package/dist/{ls-document-viewer → esm}/ls-field-properties-dropdown.entry.js +2 -2
  465. package/dist/esm/ls-field-properties-dropdown.entry.js.map +1 -0
  466. package/dist/{ls-document-viewer → esm}/ls-formfield.entry.js +2 -2
  467. package/dist/esm/ls-formfield.entry.js.map +1 -0
  468. package/dist/esm/ls-number-input_5.entry.js +1123 -0
  469. package/dist/{ls-document-viewer → esm}/ls-title-input.entry.js +2 -2
  470. package/dist/esm/ls-title-input.entry.js.map +1 -0
  471. package/dist/index.cjs.js +1 -0
  472. package/dist/index.js +1 -0
  473. package/dist/ls-document-viewer/index.esm.js +1 -17
  474. package/dist/ls-document-viewer/index.esm.js.map +1 -1
  475. package/dist/ls-document-viewer/ls-document-viewer.css +1 -259
  476. package/dist/ls-document-viewer/ls-document-viewer.esm.js +1 -49
  477. package/dist/ls-document-viewer/ls-document-viewer.esm.js.map +1 -1
  478. package/dist/ls-document-viewer/p-00ab25ff.entry.js +2 -0
  479. package/dist/ls-document-viewer/p-00ab25ff.entry.js.map +1 -0
  480. package/dist/ls-document-viewer/p-131fe514.entry.js +2 -0
  481. package/dist/ls-document-viewer/p-131fe514.entry.js.map +1 -0
  482. package/dist/ls-document-viewer/p-18dc496a.entry.js +4922 -0
  483. package/dist/ls-document-viewer/p-18dc496a.entry.js.map +1 -0
  484. package/dist/ls-document-viewer/p-96fe16df.entry.js +2 -0
  485. package/dist/ls-document-viewer/p-96fe16df.entry.js.map +1 -0
  486. package/dist/ls-document-viewer/p-BwdJ-HOC.js +3 -0
  487. package/dist/ls-document-viewer/p-BwdJ-HOC.js.map +1 -0
  488. package/dist/ls-document-viewer/p-bd532735.entry.js +2 -0
  489. package/dist/ls-document-viewer/p-bd532735.entry.js.map +1 -0
  490. package/dist/ls-document-viewer/p-ccbc4663.entry.js +2 -0
  491. package/dist/ls-document-viewer/p-ccbc4663.entry.js.map +1 -0
  492. package/dist/types/components/ls-document-viewer/adapter/LsDocumentAdapter.d.ts +1 -1
  493. package/dist/types/components/ls-document-viewer/editorUtils.d.ts +1 -1
  494. package/package.json +1 -1
  495. package/dist/ls-document-viewer/clsx-ChV9xqsO.js.map +0 -1
  496. package/dist/ls-document-viewer/defaultFieldIcons-Cp3IxvzK.js.map +0 -1
  497. package/dist/ls-document-viewer/defaultFieldLabels-CUaKk41L.js.map +0 -1
  498. package/dist/ls-document-viewer/defaultPalette-CwCWCxsI.js.map +0 -1
  499. package/dist/ls-document-viewer/editorUtils-KdYXvZ56.js.map +0 -1
  500. package/dist/ls-document-viewer/index-DANCsk1i.js +0 -4417
  501. package/dist/ls-document-viewer/index-DANCsk1i.js.map +0 -1
  502. package/dist/ls-document-viewer/ls-editor-field.entry.js +0 -203
  503. package/dist/ls-document-viewer/ls-editor-table.entry.js +0 -38
  504. package/dist/ls-document-viewer/ls-field-properties.entry.js +0 -53
  505. package/dist/ls-document-viewer/ls-field-type-display.entry.js +0 -29
  506. package/dist/ls-document-viewer/ls-input-wrapper.entry.js +0 -18
  507. package/dist/ls-document-viewer/ls-recipient-manager.entry.js +0 -16
  508. package/dist/ls-document-viewer/mouseHandlers-8wT9GBoG.js.map +0 -1
  509. package/dist/ls-document-viewer/tooltip-Cb8nDMs-.js.map +0 -1
@@ -1,3 +1,7 @@
1
+ import { t as transformTag, p as proxyCustomElement, H, d as createEvent, h, c as Host } from './p-BhZ5Udbm.js';
2
+ import { d as defaultRolePalette } from './p-BKrsDBDB.js';
3
+ import { d as defineCustomElement$1 } from './p-DnyBXRV4.js';
4
+
1
5
  const findIn = (fields, selector, restyle = false, additive = false) => {
2
6
  const selected = new Array();
3
7
  const { top, left, bottom, right } = selector.getBoundingClientRect();
@@ -48,43 +52,6 @@ function moveField(item, data) {
48
52
  item.style.textAlign = data.align;
49
53
  item.dataItem = recalculateCoordinates(data);
50
54
  }
51
- // calculates html compatible coords at current zoom level
52
- const transformCoordinates = (sourceField, inputFieldWidth, inputFieldHeight, viewerWidth, viewerHeight, left, top, fontName, fontSize, zoom) => {
53
- // Returns X, Y coordinates
54
- const ax = left > 0 ? left / viewerWidth : 0;
55
- const ay = top > 0 ? top / viewerHeight : 0;
56
- const bx = (left + inputFieldWidth) / viewerWidth;
57
- const by = (top + inputFieldHeight) / viewerHeight;
58
- // Return with calculated styles that try to place it as it would appear on legacy signing page
59
- return {
60
- ...sourceField,
61
- ax,
62
- ay,
63
- bx,
64
- by,
65
- cstyle: {
66
- margin: 0,
67
- verticalAlign: 'top',
68
- boxSizing: 'content-box',
69
- fontSize: viewerWidth < 640 ? `${(fontSize / 24) * zoom}rem` : `${fontSize * zoom}px`,
70
- fontFamily: fontName || 'arial',
71
- width: `${(inputFieldWidth * bx - inputFieldWidth * ax) * zoom}px`, // app1 input has padding-x 3px
72
- height: `${inputFieldHeight * (by - ay) * zoom}px`, // app1 input has padding-y 2px
73
- // minHeight: `${inputFieldHeight * (BY - AY) * zoom - 2}px`,
74
- lineHeight: 'inherit',
75
- },
76
- divStyle: {
77
- position: 'absolute',
78
- top: `${inputFieldHeight * ay * zoom}px`,
79
- left: `${inputFieldWidth * ax * zoom}px`,
80
- width: `${(inputFieldWidth * bx - inputFieldWidth * ax) * zoom}px`,
81
- height: `${inputFieldHeight * (by - ay) * zoom}px`,
82
- zIndex: 1000,
83
- fontSize: viewerWidth < 640 ? `${(fontSize / 24) * zoom}rem` : `${fontSize * zoom}px`,
84
- },
85
- objectHeight: `${inputFieldHeight * (by - ay) * zoom}px`,
86
- };
87
- };
88
55
  // from a field element get all dimension data including LEGACY dimensions
89
56
  const findDimensions = (frameContainer, sourceField, pageHeight, pageWidth, zoom) => {
90
57
  // Position of widget frame
@@ -126,10 +93,6 @@ const recalculateCoordinates = (d) => {
126
93
  by,
127
94
  };
128
95
  };
129
- // from a field determinse if out of bounds
130
- const oob$1 = (d) => {
131
- return d.left < 0 || d.top < 0 || d.left + d.width > d.pageDimensions.width || d.top + d.height > d.pageDimensions.height;
132
- };
133
96
 
134
97
  // Add a role
135
98
  const updateTemplate = template => {
@@ -299,20 +262,6 @@ function alter(diffFn) {
299
262
  });
300
263
  this.mutate.emit(diffs);
301
264
  }
302
- function resetDataItems() {
303
- const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field');
304
- this.selected = Array.from(fields).filter(fx => fx.selected);
305
- this.selectFields.emit(this.selected.map(fx => fx.dataItem));
306
- }
307
- function debounce(func, timeout = 300) {
308
- let timer;
309
- return (...args) => {
310
- clearTimeout(timer);
311
- timer = setTimeout(() => {
312
- func.apply(this, args);
313
- }, timeout);
314
- };
315
- }
316
265
  // After a mutation ensure that the new data is stored in fields and template
317
266
  function matchData(data) {
318
267
  const newObj = data.result;
@@ -483,7 +432,248 @@ function getInputType(validation) {
483
432
  return inputType === null ? validationTypes[0] : inputType;
484
433
  }
485
434
 
486
- export { alter as a, moveField as b, addField as c, getTemplate as d, findDimensions as e, findIn as f, getApiType as g, validationTypes as h, getInputType as i, matchData as m, oob as o, recalculateCoordinates as r, updateTemplate as u, validate as v };
487
- //# sourceMappingURL=editorUtils-KdYXvZ56.js.map
435
+ const lsEditorFieldCss = () => `:host{display:block;position:absolute;margin:0px;padding:0px 0px 0px 0px;isolation:isolate}.ls-editor-field-editable{display:block;font-family:inherit;font-size:inherit;overflow:hidden;white-space:nowrap;margin:0;padding:0px 0px 0px 0px;min-width:2em;height:100%;width:100%}.ls-editor-field-editable:focus{outline:none}.ls-editor-field-draggable{display:block;font-family:inherit;font-size:inherit;overflow:hidden;white-space:nowrap;min-width:2px;height:98%;width:98%}.hidden-field{display:none}input{all:unset}.draggable-input{font-family:inherit;font-size:inherit;position:relative;height:95%;width:95%}.editing-input{caret-color:rgb(15 23 42);caret-shape:auto;height:100%;width:100%}.required-icon{color:var(--red-60, #f64a44)}.x-button{all:unset;cursor:pointer;transform:translate(55%, -55%);position:absolute;color:white;background:var(--gray-80, #3a3a3a);border-radius:50%;top:0;right:0}.x-button:hover{background:var(--gray-90, #1c1c1c)}`;
436
+
437
+ const LsEditorField = /*@__PURE__*/ proxyCustomElement(class LsEditorField extends H {
438
+ constructor(registerHost) {
439
+ super();
440
+ if (registerHost !== false) {
441
+ this.__registerHost();
442
+ }
443
+ this.__attachShadow();
444
+ this.mutate = createEvent(this, "mutate", 6);
445
+ this.update = createEvent(this, "update", 6);
446
+ }
447
+ get component() { return this; }
448
+ assignee;
449
+ dataItem;
450
+ selected = false;
451
+ readonly;
452
+ type;
453
+ page;
454
+ fixedAspect = null;
455
+ isEditing = false;
456
+ heldEdge = null;
457
+ isEdgeDragging = false;
458
+ innerValue;
459
+ zoom;
460
+ sizeObserver;
461
+ mutate;
462
+ update;
463
+ /**
464
+ * Controls whether floating elements are visible. Set by mouse enter/leave events.
465
+ */
466
+ floatingActive = false;
467
+ // Set floatingActive true on mouse enter, false on mouse leave
468
+ handleMouseEnter = () => {
469
+ this.floatingActive = true;
470
+ };
471
+ handleMouseLeave = () => {
472
+ this.floatingActive = false;
473
+ };
474
+ handleInput(e) {
475
+ if (e.code === 'Enter') {
476
+ this.isEditing = false;
477
+ this.sizeObserver.observe(this.component.shadowRoot.getElementById('field-info'));
478
+ }
479
+ e.stopPropagation();
480
+ }
481
+ handleMouseMove(e) {
482
+ if (this.readonly)
483
+ return;
484
+ if (!e.clientX)
485
+ return;
486
+ // Determine which edge is being moved over and what cursor to show.
487
+ if (Math.abs(e.offsetX) < 5) {
488
+ this.component.style.cursor = 'ew-resize';
489
+ }
490
+ else if (Math.abs(e.offsetX - this.component.clientWidth) < 5) {
491
+ this.component.style.cursor = 'ew-resize';
492
+ }
493
+ else if (Math.abs(e.offsetY) < 5) {
494
+ this.component.style.cursor = 'ns-resize';
495
+ }
496
+ else if (Math.abs(e.offsetY - this.component.clientHeight) < 5) {
497
+ this.component.style.cursor = 'ns-resize';
498
+ }
499
+ else {
500
+ this.component.style.cursor = 'move';
501
+ }
502
+ }
503
+ handleDoubleClick(e) {
504
+ if (this.readonly || this.dataItem.formElementType === 'signature' || this.dataItem.formElementType === 'initials')
505
+ return;
506
+ this.isEditing = true;
507
+ this.heldEdge = null;
508
+ this.isEdgeDragging = false;
509
+ this.sizeObserver.disconnect();
510
+ this.innerValue = this.innerValue ? this.innerValue : this.dataItem?.value;
511
+ const editbox = this.component.shadowRoot.getElementById('editing-input');
512
+ console.log(this.dataItem);
513
+ if (editbox) {
514
+ editbox.className = 'ls-editor-field-editable';
515
+ editbox.focus();
516
+ }
517
+ e.preventDefault();
518
+ e.stopPropagation();
519
+ }
520
+ handleDragStart(event) {
521
+ // Add the target element's id to the data transfer object
522
+ event.dataTransfer.setData('application/json', JSON.stringify({
523
+ type: this.type,
524
+ }));
525
+ event.dataTransfer.dropEffect = 'move';
526
+ }
527
+ watchSelectedHandler(_newValue, _oldValue) {
528
+ if (_newValue) {
529
+ this.component.style.background = this.hexToRgba(defaultRolePalette[this.dataItem?.signer % 100].s20, 0.5);
530
+ this.component.style.boxShadow = '0 4px 6px -1px rgba(0, 0, 0, 0.10), 0 2px 4px -1px rgba(0, 0, 0, 0.06)';
531
+ }
532
+ else {
533
+ this.component.style.background = 'rgba(255,255,255,0.5)';
534
+ this.component.style.boxShadow = 'none';
535
+ }
536
+ }
537
+ deleteField = () => {
538
+ this.mutate.emit([{ action: 'delete', data: this.dataItem }]);
539
+ this.update.emit([{ action: 'delete', data: this.dataItem }]);
540
+ };
541
+ componentDidLoad() {
542
+ this.sizeObserver = new ResizeObserver(entries => {
543
+ for (const entry of entries) {
544
+ if (entry.contentRect) {
545
+ const movebox = this.component.shadowRoot.getElementById('field-info');
546
+ movebox.style.height = entry.contentRect.height + 'px';
547
+ movebox.style.width = entry.contentRect.width + 'px';
548
+ }
549
+ }
550
+ });
551
+ this.sizeObserver.observe(this.component);
552
+ // New dropped components automatically need selecting.
553
+ if (this.selected) {
554
+ this.component.style.background = this.hexToRgba(defaultRolePalette[this.dataItem?.signer % 100].s20, 0.5);
555
+ this.component.style.boxShadow = '0 4px 6px -1px rgba(0, 0, 0, 0.10), 0 2px 4px -1px rgba(0, 0, 0, 0.06)';
556
+ }
557
+ else {
558
+ this.component.style.background = this.hexToRgba('ffffff', 0.7);
559
+ this.component.style.boxShadow = 'none';
560
+ }
561
+ }
562
+ // Send one or more mutations up the chain
563
+ // The source of the chain fires the mutation
564
+ // NOTE this alter is debounced to account for typing
565
+ alter(diff) {
566
+ this.dataItem = { ...this.dataItem, ...diff };
567
+ this.debounce(this.dataItem, 900);
568
+ }
569
+ labeltimer;
570
+ debounce(data, delay) {
571
+ if (this.labeltimer)
572
+ clearTimeout(this.labeltimer);
573
+ this.labeltimer = setTimeout(() => {
574
+ const diffs = [{ action: 'update', data }];
575
+ this.mutate.emit(diffs);
576
+ }, delay);
577
+ }
578
+ hexToRgba(hex, alpha) {
579
+ hex = hex.replace('#', '');
580
+ const r = parseInt(hex.substring(0, 2), 16);
581
+ const g = parseInt(hex.substring(2, 4), 16);
582
+ const b = parseInt(hex.substring(4, 6), 16);
583
+ return `rgba(${r},${g},${b},${alpha})`;
584
+ }
585
+ render() {
586
+ const hostStyle = this.floatingActive
587
+ ? { border: `2px ${defaultRolePalette[this.dataItem?.signer % 100].s60} ${this.dataItem?.signer > 99 ? 'dashed' : 'solid'}`, boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.10), 0 2px 4px -1px rgba(0, 0, 0, 0.06)' }
588
+ : { border: `2px ${defaultRolePalette[this.dataItem?.signer % 100].s60} ${this.dataItem?.signer > 99 ? 'dashed' : 'solid'}` };
589
+ const zoomValue = parseFloat(this.zoom) || 1;
590
+ return (h(Host, { key: '7ca4de1cbb59d789b6453d0e9f499e8c95dba583', id: this.dataItem ? 'ls-field-' + this.dataItem.id : undefined, style: hostStyle, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, h("div", { key: 'e3d07b6e772b3d5f275a355114cb0b4f855f61e9', class: {
591
+ 'ls-editor-field': true,
592
+ 'is-selected': this.selected,
593
+ } }, !this.dataItem?.optional && (h("ls-icon", { key: 'a4be930c1471c774ea370582ae809a72404d4a8d', name: "required", size: `${0.75 * zoomValue}rem`, class: "required-icon", customStyle: {
594
+ position: 'absolute',
595
+ verticalAlign: 'top',
596
+ top: `${0.125 * zoomValue}rem`,
597
+ right: `${0.125 * zoomValue}rem`,
598
+ lineHeight: `${0.75 * zoomValue}rem`,
599
+ fontSize: `${0.75 * zoomValue}rem`,
600
+ } })), h("input", { key: 'b2f5f4d89baa974f52b499373f4d61bf21dc2bf5', id: "editing-input", class: this.isEditing ? 'ls-editor-field-editable' : 'hidden-field', type: getInputType(this.dataItem.validation).inputType, value: this.dataItem?.value, checked: this.dataItem?.value ? true : false, onInput: e => this.alter({ value: e.target.value }) }), h("div", { key: '26b14600474b77853b728bd7af93ffb0e3e02071', id: "field-info", class: this.isEditing ? 'hidden-field' : 'ls-editor-field-draggable', style: { color: `${defaultRolePalette[this.dataItem?.signer % 100].s100}` } }, (this.dataItem.value.length && this.dataItem.value) || this.dataItem?.formElementType), (this.floatingActive || this.selected) && this.dataItem?.label && (h("div", { key: '06b6925533b4fff12383b7c3bfc4047e4356c2d0', style: {
601
+ position: 'absolute',
602
+ background: `${defaultRolePalette[this.dataItem?.signer % 100].s20}`,
603
+ color: `${defaultRolePalette[this.dataItem?.signer % 100].s80}`,
604
+ borderRadius: `${0.25 * zoomValue}rem`,
605
+ padding: `${0.125 * zoomValue}rem ${0.25 * zoomValue}rem`,
606
+ top: `-${1.375 * zoomValue}rem`,
607
+ fontWeight: '500',
608
+ left: `-${2 * zoomValue}px`,
609
+ whiteSpace: 'nowrap',
610
+ width: 'fit-content',
611
+ } }, this.dataItem?.label)), (this.floatingActive || this.selected) && (h("p", { key: '78a967c091360868997e07287b8e5a16500550d3', style: {
612
+ position: 'absolute',
613
+ color: 'var(--gray-80, #3a3a3a)',
614
+ bottom: `-${1.75 * zoomValue}rem`,
615
+ fontSize: `${0.625 * zoomValue}rem`,
616
+ left: '0',
617
+ whiteSpace: 'nowrap',
618
+ width: 'fit-content',
619
+ fontFamily: 'sans-serif',
620
+ } }, "Assigned to: ", this.assignee)), this.floatingActive && (h("button", { key: 'c16df680cfc43495401217759b2df27922bd90c8', class: 'x-button', style: {
621
+ display: 'flex',
622
+ justifyContent: 'center',
623
+ alignItems: 'center',
624
+ width: `${0.875 * zoomValue}rem`,
625
+ height: `${0.875 * zoomValue}rem`,
626
+ lineHeight: `${0.75 * zoomValue}rem`,
627
+ fontSize: `${0.75 * zoomValue}rem`,
628
+ }, onClick: () => this.deleteField() }, h("ls-icon", { key: 'd8f8486783ee7a5b730dd7222eeccddf431cfc22', name: "x", size: `${0.75 * zoomValue}rem` }))))));
629
+ }
630
+ static get watchers() { return {
631
+ "selected": ["watchSelectedHandler"]
632
+ }; }
633
+ static get style() { return lsEditorFieldCss(); }
634
+ }, [769, "ls-editor-field", {
635
+ "assignee": [1],
636
+ "dataItem": [1040],
637
+ "selected": [4],
638
+ "readonly": [4],
639
+ "type": [1],
640
+ "page": [16],
641
+ "fixedAspect": [2, "fixed-aspect"],
642
+ "zoom": [1],
643
+ "floatingActive": [1540, "floating-active"],
644
+ "isEditing": [32],
645
+ "heldEdge": [32],
646
+ "isEdgeDragging": [32],
647
+ "innerValue": [32]
648
+ }, [[0, "keydown", "handleInput"], [3, "mousemove", "handleMouseMove"], [2, "dblclick", "handleDoubleClick"], [0, "dragstart", "handleDragStart"]], {
649
+ "selected": ["watchSelectedHandler"]
650
+ }]);
651
+ function defineCustomElement() {
652
+ if (typeof customElements === "undefined") {
653
+ return;
654
+ }
655
+ const components = ["ls-editor-field", "ls-editor-field", "ls-icon"];
656
+ components.forEach(tagName => { switch (tagName) {
657
+ case "ls-editor-field":
658
+ if (!customElements.get(transformTag(tagName))) {
659
+ customElements.define(transformTag(tagName), LsEditorField);
660
+ }
661
+ break;
662
+ case "ls-editor-field":
663
+ if (!customElements.get(transformTag(tagName))) {
664
+ defineCustomElement();
665
+ }
666
+ break;
667
+ case "ls-icon":
668
+ if (!customElements.get(transformTag(tagName))) {
669
+ defineCustomElement$1();
670
+ }
671
+ break;
672
+ } });
673
+ }
674
+ defineCustomElement();
675
+
676
+ export { LsEditorField as L, alter as a, moveField as b, addField as c, defineCustomElement as d, getTemplate as e, findDimensions as f, getApiType as g, findIn as h, validationTypes as i, matchData as m, oob as o, recalculateCoordinates as r, updateTemplate as u, validate as v };
677
+ //# sourceMappingURL=p-CKnixZlS.js.map
488
678
 
489
- //# sourceMappingURL=editorUtils-KdYXvZ56.js.map
679
+ //# sourceMappingURL=p-CKnixZlS.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-CKnixZlS.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-document-viewer/editorCalculator.ts","src/components/ls-document-viewer/adapter/templateActions.ts","src/components/ls-document-viewer/validator.ts","src/components/ls-document-viewer/editorUtils.ts","src/components/ls-editor-field/ls-editor-field.css?tag=ls-editor-field&encapsulation=shadow","src/components/ls-editor-field/ls-editor-field.tsx"],"sourcesContent":["import { LSApiElement } from '../../types/LSApiElement';\n\nexport const findIn = (fields: NodeListOf<HTMLLsEditorFieldElement>, selector: HTMLElement, restyle: boolean = false, additive: boolean = false): HTMLLsEditorFieldElement[] => {\n const selected: HTMLLsEditorFieldElement[] = new Array();\n const { top, left, bottom, right } = selector.getBoundingClientRect();\n\n fields.forEach(f => {\n if (f.getBoundingClientRect().bottom <= bottom && f.getBoundingClientRect().top >= top && f.getBoundingClientRect().left >= left && f.getBoundingClientRect().right <= right) {\n if (restyle) f.selected = true;\n selected.push(f);\n } else {\n if (restyle && !additive) f.selected = false;\n }\n });\n return selected;\n};\n\n// Used to append new fields (dropped or loaded from template data)\nexport function addField(frame: HTMLElement, data): HTMLLsEditorFieldElement {\n const fields = this._template.elementConnection.templateElements;\n this._template = { ...this._template, elementConnection: { ...this._template.elementConnection, templateElements: [...fields, data] } };\n const assignee = this._template.roles.find(r => r.signerIndex === data.signer);\n\n const node = document.createElement('ls-editor-field');\n node.setAttribute('type', data.formElementType);\n node.setAttribute('id', 'ls-field-' + data.id);\n node.setAttribute('assignee', assignee?.name || `Participant ${data.signer}`);\n node.setAttribute('zoom', String(this.zoom));\n // node.setAttribute('selected', 'selected');\n node.style.zIndex = '100';\n node.style.position = 'absolute';\n\n node.style.top = Math.floor(data.top * this.zoom) + 'px';\n node.style.left = Math.floor(data.left * this.zoom) + 'px';\n node.style.height = Math.floor(data.height * this.zoom) + 'px';\n node.style.width = Math.floor(data.width * this.zoom) + 'px';\n node.style.fontSize = Math.floor(data.fontSize * this.zoom) + 'pt';\n node.style.alignContent = data.align;\n node.style.fontFamily = data.fontName;\n node.dataItem = data;\n\n frame.appendChild(node);\n\n return node as any as HTMLLsEditorFieldElement;\n}\n\nexport function moveField(item: HTMLLsEditorFieldElement, data) {\n item.style.top = Math.floor(data.top * this.zoom) + 'px';\n item.style.left = Math.floor(data.left * this.zoom) + 'px';\n item.style.height = Math.floor(data.height * this.zoom) + 'px';\n item.style.width = Math.floor(data.width * this.zoom) + 'px';\n item.style.fontSize = Math.floor(data.fontSize * this.zoom) + 'pt';\n item.style.fontFamily = data.fontName;\n item.style.textAlign = data.align;\n item.dataItem = recalculateCoordinates(data);\n}\n\n// calculates html compatible coords at current zoom level\nexport const transformCoordinates = (\n sourceField: LSApiElement,\n inputFieldWidth: number,\n inputFieldHeight: number,\n viewerWidth: number,\n viewerHeight: number,\n left: number,\n top: number,\n fontName: string,\n fontSize: number,\n zoom: number,\n): LSApiElement => {\n // Returns X, Y coordinates\n const ax = left > 0 ? left / viewerWidth : 0;\n const ay = top > 0 ? top / viewerHeight : 0;\n const bx = (left + inputFieldWidth) / viewerWidth;\n const by = (top + inputFieldHeight) / viewerHeight;\n\n // Return with calculated styles that try to place it as it would appear on legacy signing page\n return {\n ...sourceField,\n ax,\n ay,\n bx,\n by,\n cstyle: {\n margin: 0,\n verticalAlign: 'top',\n boxSizing: 'content-box',\n fontSize: viewerWidth < 640 ? `${(fontSize / 24) * zoom}rem` : `${fontSize * zoom}px`,\n fontFamily: fontName || 'arial',\n width: `${(inputFieldWidth * bx - inputFieldWidth * ax) * zoom}px`, // app1 input has padding-x 3px\n height: `${inputFieldHeight * (by - ay) * zoom}px`, // app1 input has padding-y 2px\n // minHeight: `${inputFieldHeight * (BY - AY) * zoom - 2}px`,\n lineHeight: 'inherit',\n },\n divStyle: {\n position: 'absolute',\n top: `${inputFieldHeight * ay * zoom}px`,\n left: `${inputFieldWidth * ax * zoom}px`,\n width: `${(inputFieldWidth * bx - inputFieldWidth * ax) * zoom}px`,\n height: `${inputFieldHeight * (by - ay) * zoom}px`,\n zIndex: 1000,\n fontSize: viewerWidth < 640 ? `${(fontSize / 24) * zoom}rem` : `${fontSize * zoom}px`,\n },\n objectHeight: `${inputFieldHeight * (by - ay) * zoom}px`,\n };\n};\n\n// from a field element get all dimension data including LEGACY dimensions\nexport const findDimensions = (\n frameContainer: HTMLDivElement,\n sourceField: HTMLLsEditorFieldElement,\n pageHeight: number,\n pageWidth: number,\n zoom: number,\n): { top: number; left: number; height: number; width: number; ax: number; ay: number; bx: number; by: number } => {\n // Position of widget frame\n const frmDims = frameContainer.getBoundingClientRect();\n // dimensions relative to viewport\n const { height, width } = sourceField.getBoundingClientRect();\n const top = Math.floor((sourceField.getBoundingClientRect().top - frmDims.top) / zoom);\n const left = Math.floor((sourceField.getBoundingClientRect().left - frmDims.left) / zoom);\n\n // Returns X, Y coordinates\n const ax = left > 0 ? left / pageWidth : 0;\n const ay = top > 0 ? top / pageHeight : 0;\n const bx = (left + width / zoom) / pageWidth;\n const by = (top + height / zoom) / pageHeight;\n\n // Return with calculated styles that try to place it as it would appear on legacy signing page\n return {\n top,\n left,\n height: Math.round(height / zoom),\n width: Math.round(width / zoom),\n ax,\n ay,\n bx,\n by,\n };\n};\n\n// from a field element get all dimension data including LEGACY dimensions\nexport const recalculateCoordinates = (d: LSApiElement): LSApiElement => {\n // Returns X, Y coordinates\n const ax = d.left / d.pageDimensions.width;\n const ay = d.top / d.pageDimensions.height;\n const bx = (d.left + d.width) / d.pageDimensions.width;\n const by = (d.top + d.height) / d.pageDimensions.height;\n\n // Return with calculated styles that try to place it as it would appear on legacy signing page\n return {\n ...d,\n ax,\n ay,\n bx,\n by,\n };\n};\n\n// from a field determinse if out of bounds\nexport const oob = (d: LSApiElement): boolean => {\n return d.left < 0 || d.top < 0 || d.left + d.width > d.pageDimensions.width || d.top + d.height > d.pageDimensions.height;\n};\n","// Add a role\nconst updateTemplate = template => {\n return `\n mutation LDVupdateTemplate {\n updateTemplate(input: {\n templateId: \"${template.id}\", \n title: \"${template.title}\",\n locked: ${template.locked},\n documentRetentionDays: ${template.documentRetentionDays},\n autoArchive: ${template.autoArchive},\n fixSignatureScale: ${template.fixSignatureScale ? template.fixSignatureScale : false}\n })\n }\n `;\n};\n\nconst getTemplate = (id: string) => {\n return `\n query LDVGetTemplate {\n template(id: \"${id}\") {\n id\n title\n fileName\n pageDimensions\n pageCount\n modified\n link\n valid\n locked\n autoArchive\n archived\n tags\n created\n createdBy\n lastSent\n fixSignatureScale\n groupId\n documentRetentionDays\n roles{\n id\n name\n roleType\n signerIndex\n ordinal\n signerParent\n experience\n }\n elementConnection {\n templateElements {\n align\n ax\n ay\n bx\n by\n elementType\n formElementType\n fieldOrder\n fontName\n fontSize\n helpText\n hideBorder\n id\n label\n labelExtra\n logicAction\n logicGroup\n mapTo\n options\n optional\n page\n role\n signer\n substantive\n validation\n value\n }\n totalCount\n }\n userSignatureConnection {\n userSignatureElements {\n id\n userId\n ax\n ay\n bx\n by\n page\n link\n }\n }\n }\n }\n `;\n};\n\nexport { updateTemplate, getTemplate };\n","/**\n * This module contains all the rules required to mark a template\n * as valid.\n *\n */\n\nimport { LSApiTemplate } from '../../types/LSApiTemplate';\nimport { ValidationError } from '../../types/ValidationError';\n\nexport function validate(t: LSApiTemplate): ValidationError[] {\n var errors = [];\n\n if (this._recipients) {\n this._recipients.forEach(tr => {\n if (t.elementConnection.templateElements.filter(e => e.formElementType === 'signature' && e.signer === tr.signerIndex).length === 0) {\n if (tr?.roleType !== 'APPROVER') {\n errors.push({\n id: tr.id,\n signerIndex: tr.signerIndex,\n title: 'Missing signature.',\n description: `${tr.name} is missing a signature.`,\n role: tr,\n });\n }\n }\n });\n } else {\n // Check for missing signatures\n t.roles.forEach(tr => {\n if (t.elementConnection.templateElements.filter(e => e.formElementType === 'signature' && e.signer === tr.signerIndex && tr.roleType !== 'APPROVER').length === 0) {\n errors.push({\n id: tr.id,\n signerIndex: tr.signerIndex,\n title: 'Missing signature.',\n description: `${tr.name} is missing a signature.`,\n role: tr,\n });\n }\n });\n }\n\n // Check for missing multi-select options\n t.elementConnection.templateElements.forEach(element => {\n if (element.validation === 20 && (!element.options || element.options.length === 0)) {\n errors.push({\n id: element.id,\n title: 'Missing options',\n description: `Drop down field \"${element.label}\" is missing options.`,\n element: element,\n });\n }\n });\n console.log('validation errors', errors);\n return errors;\n}\n","/**\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\n // Check for compose mode to generate roles for fields added.\n if (this.mode === 'compose') {\n // Compose mode - syncing roles after create\n if (!this._template.roles.find(r => r.signerIndex === data.obj.signer)) {\n const recipient = this._recipients.find(r => r?.signerIndex === data.obj.signer);\n const roleDescription = recipient?.roleType ? recipient?.roleType.toUpperCase() : 'SIGNER';\n const signerIndex = data.obj.signer;\n // Role required - generate one\n this.addParticipant.emit({ signerIndex, name: roleDescription + signerIndex, type: roleDescription });\n }\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 if (prefix === 'rol') {\n syncRoles.bind(this)();\n this.update.emit({ event: { ...data.event, result: data.result }, template: this._template });\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 var participantManager = this.component.shadowRoot.getElementById('ls-participant-manager') as HTMLLsParticipantManagerElement;\n const tresult = (await this.adapter.execute(this.token, getTemplate(this.templateid))) as any;\n this.parseTemplate(JSON.stringify(tresult.template));\n 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",":host {\n display: block;\n position: absolute;\n margin: 0px;\n padding: 0px 0px 0px 0px;\n isolation: isolate;\n}\n\n.ls-editor-field-editable {\n display: block;\n font-family: inherit;\n font-size: inherit;\n overflow: hidden;\n\n /* no extra spaces */\n white-space: nowrap;\n margin: 0;\n padding: 0px 0px 0px 0px;\n /* default widths */\n min-width: 2em;\n height: 100%;\n width: 100%;\n}\n\n.ls-editor-field-editable:focus {\n outline: none;\n}\n\n.ls-editor-field-draggable {\n display: block;\n font-family: inherit;\n font-size: inherit;\n overflow: hidden;\n\n /* no extra spaces */\n white-space: nowrap;\n\n /* default widths */\n min-width: 2px;\n height: 98%;\n width: 98%;\n}\n\n/* .is-selected {\n border: 1px dotted rgb(193, 26, 26);\n} */\n\n.hidden-field {\n display: none;\n}\n\ninput {\n all: unset;\n}\n\n.draggable-input {\n font-family: inherit;\n font-size: inherit;\n position: relative;\n height: 95%;\n width: 95%;\n}\n\n.editing-input {\n caret-color: rgb(15 23 42);\n caret-shape: auto;\n height: 100%;\n width: 100%;\n}\n\n.required-icon {\n color: var(--red-60, #f64a44);\n}\n\n.x-button {\n all: unset;\n cursor: pointer;\n transform: translate(55%, -55%);\n position: absolute;\n color: white;\n background: var(--gray-80, #3a3a3a);\n border-radius: 50%;\n top: 0;\n right: 0;\n}\n\n.x-button:hover {\n background: var(--gray-90, #1c1c1c);\n}\n","import { Component, Host, h, Element, State, Prop, Watch, Listen, Event, EventEmitter } from '@stencil/core';\nimport { LSApiElement } from '../../components';\nimport { LSMutateEvent } from '../../types/LSMutateEvent';\nimport { getInputType } from '../ls-document-viewer/editorUtils';\nimport { defaultRolePalette } from '../ls-document-viewer/defaultPalette';\n\n@Component({\n tag: 'ls-editor-field',\n styleUrl: 'ls-editor-field.css',\n shadow: true,\n})\nexport class LsEditorField {\n @Element() component: HTMLElement;\n @Prop() assignee: string;\n @Prop({ mutable: true }) dataItem: LSApiElement;\n @Prop() selected: boolean = false;\n @Prop() readonly: boolean;\n @Prop() type: 'text' | 'signature' | 'date' | 'regex' | 'file' | 'number' | 'autodate';\n @Prop() page: { height: number; width: number };\n @Prop() fixedAspect: number | null = null;\n @State() isEditing: boolean = false;\n @State() heldEdge: string = null;\n @State() isEdgeDragging: boolean = false;\n @State() innerValue: string;\n @Prop() zoom: string;\n\n private sizeObserver: ResizeObserver;\n\n @Event({\n bubbles: true,\n cancelable: false,\n composed: true,\n })\n mutate: EventEmitter<LSMutateEvent[]>;\n\n @Event({\n bubbles: true,\n cancelable: false,\n composed: true,\n })\n update: EventEmitter<LSMutateEvent[]>;\n\n /**\n * Controls whether floating elements are visible. Set by mouse enter/leave events.\n */\n @Prop({ mutable: true, reflect: true }) floatingActive: boolean = false;\n\n // Set floatingActive true on mouse enter, false on mouse leave\n private handleMouseEnter = () => {\n this.floatingActive = true;\n };\n\n private handleMouseLeave = () => {\n this.floatingActive = false;\n };\n\n @Listen('keydown')\n handleInput(e: KeyboardEvent) {\n if (e.code === 'Enter') {\n this.isEditing = false;\n this.sizeObserver.observe(this.component.shadowRoot.getElementById('field-info'));\n }\n\n e.stopPropagation();\n }\n\n @Listen('mousemove', { capture: true })\n handleMouseMove(e) {\n if (this.readonly) return;\n if (!e.clientX) return;\n\n // Determine which edge is being moved over and what cursor to show.\n if (Math.abs(e.offsetX) < 5) {\n this.component.style.cursor = 'ew-resize';\n } else if (Math.abs(e.offsetX - this.component.clientWidth) < 5) {\n this.component.style.cursor = 'ew-resize';\n } else if (Math.abs(e.offsetY) < 5) {\n this.component.style.cursor = 'ns-resize';\n } else if (Math.abs(e.offsetY - this.component.clientHeight) < 5) {\n this.component.style.cursor = 'ns-resize';\n } else {\n this.component.style.cursor = 'move';\n }\n }\n\n @Listen('dblclick', { capture: true })\n handleDoubleClick(e: MouseEvent) {\n if (this.readonly || this.dataItem.formElementType === 'signature' || this.dataItem.formElementType === 'initials') return;\n this.isEditing = true;\n this.heldEdge = null;\n this.isEdgeDragging = false;\n this.sizeObserver.disconnect();\n this.innerValue = this.innerValue ? this.innerValue : this.dataItem?.value;\n\n const editbox = this.component.shadowRoot.getElementById('editing-input') as HTMLInputElement;\n console.log(this.dataItem);\n\n if (editbox) {\n editbox.className = 'ls-editor-field-editable';\n editbox.focus();\n }\n e.preventDefault();\n e.stopPropagation();\n }\n\n @Listen('dragstart', { capture: false, passive: false })\n handleDragStart(event) {\n // Add the target element's id to the data transfer object\n event.dataTransfer.setData(\n 'application/json',\n JSON.stringify({\n type: this.type,\n }),\n );\n event.dataTransfer.dropEffect = 'move';\n }\n\n @Watch('selected')\n watchSelectedHandler(_newValue: boolean, _oldValue: boolean) {\n if (_newValue) {\n this.component.style.background = this.hexToRgba(defaultRolePalette[this.dataItem?.signer % 100].s20, 0.5);\n this.component.style.boxShadow = '0 4px 6px -1px rgba(0, 0, 0, 0.10), 0 2px 4px -1px rgba(0, 0, 0, 0.06)';\n } else {\n this.component.style.background = 'rgba(255,255,255,0.5)';\n this.component.style.boxShadow = 'none';\n }\n }\n\n deleteField = () => {\n this.mutate.emit([{ action: 'delete', data: this.dataItem }]);\n this.update.emit([{ action: 'delete', data: this.dataItem }]);\n };\n\n componentDidLoad() {\n this.sizeObserver = new ResizeObserver(entries => {\n for (const entry of entries) {\n if (entry.contentRect) {\n const movebox = this.component.shadowRoot.getElementById('field-info') as HTMLElement;\n\n movebox.style.height = entry.contentRect.height + 'px';\n movebox.style.width = entry.contentRect.width + 'px';\n }\n }\n });\n\n this.sizeObserver.observe(this.component);\n\n // New dropped components automatically need selecting.\n if (this.selected) {\n this.component.style.background = this.hexToRgba(defaultRolePalette[this.dataItem?.signer % 100].s20, 0.5);\n this.component.style.boxShadow = '0 4px 6px -1px rgba(0, 0, 0, 0.10), 0 2px 4px -1px rgba(0, 0, 0, 0.06)';\n } else {\n this.component.style.background = this.hexToRgba('ffffff', 0.7);\n this.component.style.boxShadow = 'none';\n }\n }\n\n // Send one or more mutations up the chain\n // The source of the chain fires the mutation\n // NOTE this alter is debounced to account for typing\n alter(diff: object) {\n this.dataItem = { ...this.dataItem, ...diff };\n this.debounce(this.dataItem, 900);\n }\n\n private labeltimer;\n\n debounce(data, delay) {\n if (this.labeltimer) clearTimeout(this.labeltimer);\n\n this.labeltimer = setTimeout(() => {\n const diffs: LSMutateEvent[] = [{ action: 'update', data }];\n this.mutate.emit(diffs);\n }, delay);\n }\n\n hexToRgba(hex: string, alpha: number): string {\n hex = hex.replace('#', '');\n const r = parseInt(hex.substring(0, 2), 16);\n const g = parseInt(hex.substring(2, 4), 16);\n const b = parseInt(hex.substring(4, 6), 16);\n return `rgba(${r},${g},${b},${alpha})`;\n }\n\n render() {\n const hostStyle = this.floatingActive\n ? { border: `2px ${defaultRolePalette[this.dataItem?.signer % 100].s60} ${this.dataItem?.signer > 99 ? 'dashed' : 'solid'}`, boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.10), 0 2px 4px -1px rgba(0, 0, 0, 0.06)' }\n : { border: `2px ${defaultRolePalette[this.dataItem?.signer % 100].s60} ${this.dataItem?.signer > 99 ? 'dashed' : 'solid'}` };\n\n const zoomValue = parseFloat(this.zoom) || 1;\n\n return (\n <Host id={this.dataItem ? 'ls-field-' + this.dataItem.id : undefined} style={hostStyle} onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>\n <div\n class={{\n 'ls-editor-field': true,\n 'is-selected': this.selected,\n }}\n >\n {!this.dataItem?.optional && (\n <ls-icon\n name=\"required\"\n size={`${0.75 * zoomValue}rem`}\n class=\"required-icon\"\n customStyle={{\n position: 'absolute',\n verticalAlign: 'top',\n top: `${0.125 * zoomValue}rem`,\n right: `${0.125 * zoomValue}rem`,\n lineHeight: `${0.75 * zoomValue}rem`,\n fontSize: `${0.75 * zoomValue}rem`,\n }}\n />\n )}\n <input\n id=\"editing-input\"\n class={this.isEditing ? 'ls-editor-field-editable' : 'hidden-field'}\n type={getInputType(this.dataItem.validation).inputType}\n value={this.dataItem?.value}\n checked={this.dataItem?.value ? true : false}\n onInput={e => this.alter({ value: (e.target as HTMLInputElement).value })}\n />\n\n <div id=\"field-info\" class={this.isEditing ? 'hidden-field' : 'ls-editor-field-draggable'} style={{ color: `${defaultRolePalette[this.dataItem?.signer % 100].s100}` }}>\n {(this.dataItem.value.length && this.dataItem.value) || this.dataItem?.formElementType}\n </div>\n {(this.floatingActive || this.selected) && this.dataItem?.label && (\n <div\n style={{\n position: 'absolute',\n background: `${defaultRolePalette[this.dataItem?.signer % 100].s20}`,\n color: `${defaultRolePalette[this.dataItem?.signer % 100].s80}`,\n borderRadius: `${0.25 * zoomValue}rem`,\n padding: `${0.125 * zoomValue}rem ${0.25 * zoomValue}rem`,\n top: `-${1.375 * zoomValue}rem`,\n fontWeight: '500',\n left: `-${2 * zoomValue}px`,\n whiteSpace: 'nowrap',\n width: 'fit-content',\n }}\n >\n {this.dataItem?.label}\n </div>\n )}\n {(this.floatingActive || this.selected) && (\n <p\n style={{\n position: 'absolute',\n color: 'var(--gray-80, #3a3a3a)',\n bottom: `-${1.75 * zoomValue}rem`,\n fontSize: `${0.625 * zoomValue}rem`,\n left: '0',\n whiteSpace: 'nowrap',\n width: 'fit-content',\n fontFamily: 'sans-serif',\n }}\n >\n Assigned to: {this.assignee}\n </p>\n )}\n {this.floatingActive && (\n <button\n class={'x-button'}\n style={{\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n width: `${0.875 * zoomValue}rem`,\n height: `${0.875 * zoomValue}rem`,\n lineHeight: `${0.75 * zoomValue}rem`,\n fontSize: `${0.75 * zoomValue}rem`,\n }}\n onClick={() => this.deleteField()}\n >\n <ls-icon name=\"x\" size={`${0.75 * zoomValue}rem`} />\n </button>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}