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.
- package/dist/cjs/index-Czv4Oowx.js +2010 -0
- package/dist/cjs/index-Czv4Oowx.js.map +1 -0
- package/dist/cjs/index.cjs.js +10 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +15 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/ls-compose-manager.cjs.entry.js +26 -0
- package/dist/cjs/ls-document-options_45.cjs.entry.js +51718 -0
- package/dist/cjs/ls-document-viewer.cjs.js +27 -0
- package/dist/cjs/ls-document-viewer.cjs.js.map +1 -0
- package/dist/cjs/ls-field-properties-dropdown.cjs.entry.js +19 -0
- package/dist/cjs/ls-formfield.cjs.entry.js +160 -0
- package/dist/cjs/ls-number-input_5.cjs.entry.js +1129 -0
- package/dist/cjs/ls-title-input.cjs.entry.js +49 -0
- package/dist/collection/collection-manifest.json +65 -0
- package/dist/collection/components/interfaces/IToolboxField.js +2 -0
- package/dist/collection/components/interfaces/IToolboxField.js.map +1 -0
- package/dist/collection/components/ls-compose-manager/ls-compose-manager.css +3 -0
- package/dist/collection/components/ls-compose-manager/ls-compose-manager.js +54 -0
- package/dist/collection/components/ls-compose-manager/ls-compose-manager.js.map +1 -0
- package/dist/collection/components/ls-document-options/ls-document-options.css +386 -0
- package/dist/collection/components/ls-document-options/ls-document-options.js +163 -0
- package/dist/collection/components/ls-document-options/ls-document-options.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/adapter/LsDocumentAdapter.js +89 -0
- package/dist/collection/components/ls-document-viewer/adapter/LsDocumentAdapter.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/adapter/elementActions.js +72 -0
- package/dist/collection/components/ls-document-viewer/adapter/elementActions.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/adapter/groupActions.js +96 -0
- package/dist/collection/components/ls-document-viewer/adapter/groupActions.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/adapter/parameters.js +16 -0
- package/dist/collection/components/ls-document-viewer/adapter/parameters.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/adapter/roleActions.js +70 -0
- package/dist/collection/components/ls-document-viewer/adapter/roleActions.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/adapter/templateActions.js +95 -0
- package/dist/collection/components/ls-document-viewer/adapter/templateActions.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/defaultFieldIcons.js +20 -0
- package/dist/collection/components/ls-document-viewer/defaultFieldIcons.js.map +1 -0
- package/dist/{ls-document-viewer/defaultFieldLabels-CUaKk41L.js → collection/components/ls-document-viewer/defaultFieldLabels.js} +7 -11
- package/dist/collection/components/ls-document-viewer/defaultFieldLabels.js.map +1 -0
- package/dist/{ls-document-viewer/defaultPalette-CwCWCxsI.js → collection/components/ls-document-viewer/defaultPalette.js} +2 -6
- package/dist/collection/components/ls-document-viewer/defaultPalette.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/editorCalculator.js +133 -0
- package/dist/collection/components/ls-document-viewer/editorCalculator.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/editorUtils.js +210 -0
- package/dist/collection/components/ls-document-viewer/editorUtils.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/keyHandlers.js +76 -0
- package/dist/collection/components/ls-document-viewer/keyHandlers.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/ls-document-viewer.css +688 -0
- package/dist/collection/components/ls-document-viewer/ls-document-viewer.js +1292 -0
- package/dist/collection/components/ls-document-viewer/ls-document-viewer.js.map +1 -0
- package/dist/{ls-document-viewer/mouseHandlers-8wT9GBoG.js → collection/components/ls-document-viewer/mouseHandlers.js} +10 -15
- package/dist/collection/components/ls-document-viewer/mouseHandlers.js.map +1 -0
- package/dist/collection/components/ls-document-viewer/validator.js +51 -0
- package/dist/collection/components/ls-document-viewer/validator.js.map +1 -0
- package/dist/collection/components/ls-editor-field/ls-editor-field.css +89 -0
- package/dist/collection/components/ls-editor-field/ls-editor-field.js +468 -0
- package/dist/collection/components/ls-editor-field/ls-editor-field.js.map +1 -0
- package/dist/collection/components/ls-editor-table/ls-editor-table.css +16 -0
- package/dist/collection/components/ls-editor-table/ls-editor-table.js +69 -0
- package/dist/collection/components/ls-editor-table/ls-editor-table.js.map +1 -0
- package/dist/collection/components/ls-feature-column/ls-feature-column.css +27 -0
- package/dist/collection/components/ls-feature-column/ls-feature-column.js +114 -0
- package/dist/collection/components/ls-feature-column/ls-feature-column.js.map +1 -0
- package/dist/collection/components/ls-field-alignment/ls-field-alignment.css +370 -0
- package/dist/collection/components/ls-field-alignment/ls-field-alignment.js +208 -0
- package/dist/collection/components/ls-field-alignment/ls-field-alignment.js.map +1 -0
- package/dist/collection/components/ls-field-content/ls-field-content.css +288 -0
- package/dist/collection/components/ls-field-content/ls-field-content.js +141 -0
- package/dist/collection/components/ls-field-content/ls-field-content.js.map +1 -0
- package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.css +353 -0
- package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.js +141 -0
- package/dist/collection/components/ls-field-dimensions/ls-field-dimensions.js.map +1 -0
- package/dist/collection/components/ls-field-distribute/ls-field-distribute.css +376 -0
- package/dist/{ls-document-viewer/ls-field-distribute.entry.js → collection/components/ls-field-distribute/ls-field-distribute.js} +72 -18
- package/dist/collection/components/ls-field-distribute/ls-field-distribute.js.map +1 -0
- package/dist/collection/components/ls-field-footer/ls-field-footer.css +55 -0
- package/dist/collection/components/ls-field-footer/ls-field-footer.js +145 -0
- package/dist/collection/components/ls-field-footer/ls-field-footer.js.map +1 -0
- package/dist/collection/components/ls-field-format/ls-field-format.css +297 -0
- package/dist/collection/components/ls-field-format/ls-field-format.js +145 -0
- package/dist/collection/components/ls-field-format/ls-field-format.js.map +1 -0
- package/dist/collection/components/ls-field-placement/ls-field-placement.css +370 -0
- package/dist/collection/components/ls-field-placement/ls-field-placement.js +121 -0
- package/dist/collection/components/ls-field-placement/ls-field-placement.js.map +1 -0
- package/dist/collection/components/ls-field-properties/ls-field-properties.css +286 -0
- package/dist/collection/components/ls-field-properties/ls-field-properties.js +83 -0
- package/dist/collection/components/ls-field-properties/ls-field-properties.js.map +1 -0
- package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.css +391 -0
- package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js +144 -0
- package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js.map +1 -0
- package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.css +284 -0
- package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.js +47 -0
- package/dist/collection/components/ls-field-properties-autosign/ls-field-properties-autosign.js.map +1 -0
- package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.css +65 -0
- package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.js +91 -0
- package/dist/collection/components/ls-field-properties-container/ls-field-properties-container.js.map +1 -0
- package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.css +302 -0
- package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.js +47 -0
- package/dist/collection/components/ls-field-properties-date/ls-field-properties-date.js.map +1 -0
- package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.css +3 -0
- package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.js +47 -0
- package/dist/collection/components/ls-field-properties-dropdown/ls-field-properties-dropdown.js.map +1 -0
- package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.css +304 -0
- package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.js +47 -0
- package/dist/collection/components/ls-field-properties-email/ls-field-properties-email.js.map +1 -0
- package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.css +304 -0
- package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.js +47 -0
- package/dist/collection/components/ls-field-properties-file/ls-field-properties-file.js.map +1 -0
- package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.css +304 -0
- package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.js +47 -0
- package/dist/collection/components/ls-field-properties-general/ls-field-properties-general.js.map +1 -0
- package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.css +304 -0
- package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.js +47 -0
- package/dist/collection/components/ls-field-properties-image/ls-field-properties-image.js.map +1 -0
- package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.css +459 -0
- package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.js +148 -0
- package/dist/collection/components/ls-field-properties-multiple/ls-field-properties-multiple.js.map +1 -0
- package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.css +304 -0
- package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.js +47 -0
- package/dist/collection/components/ls-field-properties-number/ls-field-properties-number.js.map +1 -0
- package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.css +304 -0
- package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.js +47 -0
- package/dist/collection/components/ls-field-properties-signature/ls-field-properties-signature.js.map +1 -0
- package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.css +301 -0
- package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.js +47 -0
- package/dist/collection/components/ls-field-properties-text/ls-field-properties-text.js.map +1 -0
- package/dist/collection/components/ls-field-size/ls-field-size.css +376 -0
- package/dist/collection/components/ls-field-size/ls-field-size.js +87 -0
- package/dist/collection/components/ls-field-size/ls-field-size.js.map +1 -0
- package/dist/collection/components/ls-field-type-display/ls-field-type-display.css +35 -0
- package/dist/collection/components/ls-field-type-display/ls-field-type-display.js +75 -0
- package/dist/collection/components/ls-field-type-display/ls-field-type-display.js.map +1 -0
- package/dist/collection/components/ls-formfield/inputs/ls-number-input/ls-number-input.css +273 -0
- package/dist/collection/components/ls-formfield/inputs/ls-number-input/ls-number-input.js +336 -0
- package/dist/collection/components/ls-formfield/inputs/ls-number-input/ls-number-input.js.map +1 -0
- package/dist/collection/components/ls-formfield/inputs/ls-radio-input/ls-radio-input.css +69 -0
- package/dist/collection/components/ls-formfield/inputs/ls-radio-input/ls-radio-input.js +172 -0
- package/dist/collection/components/ls-formfield/inputs/ls-radio-input/ls-radio-input.js.map +1 -0
- package/dist/collection/components/ls-formfield/inputs/ls-select-input/ls-select-input.css +228 -0
- package/dist/collection/components/ls-formfield/inputs/ls-select-input/ls-select-input.js +288 -0
- package/dist/collection/components/ls-formfield/inputs/ls-select-input/ls-select-input.js.map +1 -0
- package/dist/collection/components/ls-formfield/inputs/ls-text-input/ls-text-input.css +218 -0
- package/dist/collection/components/ls-formfield/inputs/ls-text-input/ls-text-input.js +365 -0
- package/dist/collection/components/ls-formfield/inputs/ls-text-input/ls-text-input.js.map +1 -0
- package/dist/collection/components/ls-formfield/inputs/ls-textarea-input/ls-textarea-input.css +208 -0
- package/dist/collection/components/ls-formfield/inputs/ls-textarea-input/ls-textarea-input.js +326 -0
- package/dist/collection/components/ls-formfield/inputs/ls-textarea-input/ls-textarea-input.js.map +1 -0
- package/dist/collection/components/ls-formfield/ls-formfield.css +98 -0
- package/dist/collection/components/ls-formfield/ls-formfield.js +546 -0
- package/dist/collection/components/ls-formfield/ls-formfield.js.map +1 -0
- package/dist/collection/components/ls-helper-bar/ls-helper-bar.css +33 -0
- package/dist/collection/components/ls-helper-bar/ls-helper-bar.js +71 -0
- package/dist/collection/components/ls-helper-bar/ls-helper-bar.js.map +1 -0
- package/dist/collection/components/ls-icon/icons.js +6639 -0
- package/dist/collection/components/ls-icon/icons.js.map +1 -0
- package/dist/collection/components/ls-icon/ls-icon.js +145 -0
- package/dist/collection/components/ls-icon/ls-icon.js.map +1 -0
- package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.css +29 -0
- package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.js +70 -0
- package/dist/collection/components/ls-input-wrapper/ls-input-wrapper.js.map +1 -0
- package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.css +45 -0
- package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.js +19 -0
- package/dist/collection/components/ls-keyboard-shortcuts/ls-keyboard-shortcuts.js.map +1 -0
- package/dist/collection/components/ls-page-loader/ls-page-loader.css +20 -0
- package/dist/{ls-document-viewer/ls-page-loader.entry.js → collection/components/ls-page-loader/ls-page-loader.js} +16 -13
- package/dist/collection/components/ls-page-loader/ls-page-loader.js.map +1 -0
- package/dist/collection/components/ls-participant-card/ls-participant-card.css +430 -0
- package/dist/collection/components/ls-participant-card/ls-participant-card.js +280 -0
- package/dist/collection/components/ls-participant-card/ls-participant-card.js.map +1 -0
- package/dist/collection/components/ls-participant-manager/ls-participant-manager.css +350 -0
- package/dist/collection/components/ls-participant-manager/ls-participant-manager.js +190 -0
- package/dist/collection/components/ls-participant-manager/ls-participant-manager.js.map +1 -0
- package/dist/collection/components/ls-participant-select/ls-participant-select.css +431 -0
- package/dist/collection/components/ls-participant-select/ls-participant-select.js +198 -0
- package/dist/collection/components/ls-participant-select/ls-participant-select.js.map +1 -0
- package/dist/collection/components/ls-props-section/ls-props-section.css +42 -0
- package/dist/collection/components/ls-props-section/ls-props-section.js +84 -0
- package/dist/collection/components/ls-props-section/ls-props-section.js.map +1 -0
- package/dist/collection/components/ls-recipient-card/ls-recipient-card.css +464 -0
- package/dist/collection/components/ls-recipient-card/ls-recipient-card.js +299 -0
- package/dist/collection/components/ls-recipient-card/ls-recipient-card.js.map +1 -0
- package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.css +29 -0
- package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.js +19 -0
- package/dist/collection/components/ls-recipient-manager/ls-recipient-manager.js.map +1 -0
- package/dist/collection/components/ls-statusbar/ls-statusbar.css +212 -0
- package/dist/collection/components/ls-statusbar/ls-statusbar.js +143 -0
- package/dist/collection/components/ls-statusbar/ls-statusbar.js.map +1 -0
- package/dist/collection/components/ls-title-input/ls-title-input.css +320 -0
- package/dist/collection/components/ls-title-input/ls-title-input.js +106 -0
- package/dist/collection/components/ls-title-input/ls-title-input.js.map +1 -0
- package/dist/collection/components/ls-toggle/ls-toggle.css +90 -0
- package/dist/collection/components/ls-toggle/ls-toggle.js +86 -0
- package/dist/collection/components/ls-toggle/ls-toggle.js.map +1 -0
- package/dist/collection/components/ls-toolbar/ls-toolbar.css +303 -0
- package/dist/collection/components/ls-toolbar/ls-toolbar.js +215 -0
- package/dist/collection/components/ls-toolbar/ls-toolbar.js.map +1 -0
- package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.css +329 -0
- package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.js +381 -0
- package/dist/collection/components/ls-toolbox-field/ls-toolbox-field.js.map +1 -0
- package/dist/collection/components/ls-tooltip/ls-tooltip.css +55 -0
- package/dist/collection/components/ls-tooltip/ls-tooltip.js +205 -0
- package/dist/collection/components/ls-tooltip/ls-tooltip.js.map +1 -0
- package/dist/collection/components/ls-validation-manager/ls-validation-manager.css +159 -0
- package/dist/collection/components/ls-validation-manager/ls-validation-manager.js +63 -0
- package/dist/collection/components/ls-validation-manager/ls-validation-manager.js.map +1 -0
- package/dist/collection/components/ls-validation-tag/ls-validation-tag.css +232 -0
- package/dist/collection/components/ls-validation-tag/ls-validation-tag.js +170 -0
- package/dist/collection/components/ls-validation-tag/ls-validation-tag.js.map +1 -0
- package/dist/collection/index.js +11 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/types/Icon.js +369 -0
- package/dist/collection/types/Icon.js.map +1 -0
- package/dist/collection/types/LSApiElement.js +2 -0
- package/dist/collection/types/LSApiElement.js.map +1 -0
- package/dist/collection/types/LSApiElementType.js +16 -0
- package/dist/collection/types/LSApiElementType.js.map +1 -0
- package/dist/collection/types/LSApiRecipient.js +2 -0
- package/dist/collection/types/LSApiRecipient.js.map +1 -0
- package/dist/collection/types/LSApiRole.js +2 -0
- package/dist/collection/types/LSApiRole.js.map +1 -0
- package/dist/collection/types/LSApiTemplate.js +2 -0
- package/dist/collection/types/LSApiTemplate.js.map +1 -0
- package/dist/collection/types/LSMutateEvent.js +2 -0
- package/dist/collection/types/LSMutateEvent.js.map +1 -0
- package/dist/collection/types/RoleColor.js +2 -0
- package/dist/collection/types/RoleColor.js.map +1 -0
- package/dist/collection/types/ValidationError.js +2 -0
- package/dist/collection/types/ValidationError.js.map +1 -0
- package/dist/collection/types/ValidationType.js +2 -0
- package/dist/collection/types/ValidationType.js.map +1 -0
- package/dist/collection/utils/tooltip.js +28 -0
- package/dist/collection/utils/tooltip.js.map +1 -0
- package/dist/collection/utils/utils.js +4 -0
- package/dist/collection/utils/utils.js.map +1 -0
- package/dist/components/index.js +10 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/ls-compose-manager.js +49 -0
- package/dist/components/ls-compose-manager.js.map +1 -0
- package/dist/components/ls-document-options.js +9 -0
- package/dist/components/ls-document-options.js.map +1 -0
- package/dist/{ls-document-viewer/ls-document-viewer.entry.js → components/ls-document-viewer.js} +502 -879
- package/dist/components/ls-document-viewer.js.map +1 -0
- package/dist/components/ls-editor-field.js +9 -0
- package/dist/components/ls-editor-field.js.map +1 -0
- package/dist/components/ls-editor-table.js +9 -0
- package/dist/components/ls-editor-table.js.map +1 -0
- package/dist/components/ls-feature-column.js +9 -0
- package/dist/components/ls-feature-column.js.map +1 -0
- package/dist/components/ls-field-alignment.js +9 -0
- package/dist/components/ls-field-alignment.js.map +1 -0
- package/dist/components/ls-field-content.js +9 -0
- package/dist/components/ls-field-content.js.map +1 -0
- package/dist/components/ls-field-dimensions.js +9 -0
- package/dist/components/ls-field-dimensions.js.map +1 -0
- package/dist/components/ls-field-distribute.js +9 -0
- package/dist/components/ls-field-distribute.js.map +1 -0
- package/dist/components/ls-field-footer.js +9 -0
- package/dist/components/ls-field-footer.js.map +1 -0
- package/dist/components/ls-field-format.js +9 -0
- package/dist/components/ls-field-format.js.map +1 -0
- package/dist/components/ls-field-placement.js +9 -0
- package/dist/components/ls-field-placement.js.map +1 -0
- package/dist/components/ls-field-properties-advanced.js +9 -0
- package/dist/components/ls-field-properties-advanced.js.map +1 -0
- package/dist/components/ls-field-properties-autosign.js +9 -0
- package/dist/components/ls-field-properties-autosign.js.map +1 -0
- package/dist/components/ls-field-properties-container.js +9 -0
- package/dist/components/ls-field-properties-container.js.map +1 -0
- package/dist/components/ls-field-properties-date.js +9 -0
- package/dist/components/ls-field-properties-date.js.map +1 -0
- package/dist/components/ls-field-properties-dropdown.js +120 -0
- package/dist/components/ls-field-properties-dropdown.js.map +1 -0
- package/dist/components/ls-field-properties-email.js +9 -0
- package/dist/components/ls-field-properties-email.js.map +1 -0
- package/dist/components/ls-field-properties-file.js +9 -0
- package/dist/components/ls-field-properties-file.js.map +1 -0
- package/dist/components/ls-field-properties-general.js +9 -0
- package/dist/components/ls-field-properties-general.js.map +1 -0
- package/dist/components/ls-field-properties-image.js +9 -0
- package/dist/components/ls-field-properties-image.js.map +1 -0
- package/dist/components/ls-field-properties-multiple.js +9 -0
- package/dist/components/ls-field-properties-multiple.js.map +1 -0
- package/dist/components/ls-field-properties-number.js +9 -0
- package/dist/components/ls-field-properties-number.js.map +1 -0
- package/dist/components/ls-field-properties-signature.js +9 -0
- package/dist/components/ls-field-properties-signature.js.map +1 -0
- package/dist/components/ls-field-properties-text.js +9 -0
- package/dist/components/ls-field-properties-text.js.map +1 -0
- package/dist/components/ls-field-properties.js +9 -0
- package/dist/components/ls-field-properties.js.map +1 -0
- package/dist/components/ls-field-size.js +9 -0
- package/dist/components/ls-field-size.js.map +1 -0
- package/dist/components/ls-field-type-display.js +9 -0
- package/dist/components/ls-field-type-display.js.map +1 -0
- package/dist/components/ls-formfield.js +243 -0
- package/dist/components/ls-formfield.js.map +1 -0
- package/dist/components/ls-helper-bar.js +9 -0
- package/dist/components/ls-helper-bar.js.map +1 -0
- package/dist/components/ls-icon.js +9 -0
- package/dist/components/ls-icon.js.map +1 -0
- package/dist/components/ls-input-wrapper.js +9 -0
- package/dist/components/ls-input-wrapper.js.map +1 -0
- package/dist/components/ls-keyboard-shortcuts.js +9 -0
- package/dist/components/ls-keyboard-shortcuts.js.map +1 -0
- package/dist/components/ls-number-input.js +9 -0
- package/dist/components/ls-number-input.js.map +1 -0
- package/dist/components/ls-page-loader.js +9 -0
- package/dist/components/ls-page-loader.js.map +1 -0
- package/dist/components/ls-participant-card.js +9 -0
- package/dist/components/ls-participant-card.js.map +1 -0
- package/dist/components/ls-participant-manager.js +9 -0
- package/dist/components/ls-participant-manager.js.map +1 -0
- package/dist/components/ls-participant-select.js +9 -0
- package/dist/components/ls-participant-select.js.map +1 -0
- package/dist/components/ls-props-section.js +9 -0
- package/dist/components/ls-props-section.js.map +1 -0
- package/dist/components/ls-radio-input.js +9 -0
- package/dist/components/ls-radio-input.js.map +1 -0
- package/dist/components/ls-recipient-card.js +9 -0
- package/dist/components/ls-recipient-card.js.map +1 -0
- package/dist/components/ls-recipient-manager.js +9 -0
- package/dist/components/ls-recipient-manager.js.map +1 -0
- package/dist/components/ls-select-input.js +9 -0
- package/dist/components/ls-select-input.js.map +1 -0
- package/dist/components/ls-statusbar.js +9 -0
- package/dist/components/ls-statusbar.js.map +1 -0
- package/dist/components/ls-text-input.js +9 -0
- package/dist/components/ls-text-input.js.map +1 -0
- package/dist/components/ls-textarea-input.js +9 -0
- package/dist/components/ls-textarea-input.js.map +1 -0
- package/dist/components/ls-title-input.js +79 -0
- package/dist/components/ls-title-input.js.map +1 -0
- package/dist/components/ls-toggle.js +9 -0
- package/dist/components/ls-toggle.js.map +1 -0
- package/dist/components/ls-toolbar.js +9 -0
- package/dist/components/ls-toolbar.js.map +1 -0
- package/dist/components/ls-toolbox-field.js +9 -0
- package/dist/components/ls-toolbox-field.js.map +1 -0
- package/dist/components/ls-tooltip.js +9 -0
- package/dist/components/ls-tooltip.js.map +1 -0
- package/dist/components/ls-validation-manager.js +9 -0
- package/dist/components/ls-validation-manager.js.map +1 -0
- package/dist/components/ls-validation-tag.js +9 -0
- package/dist/components/ls-validation-tag.js.map +1 -0
- package/dist/{ls-document-viewer/ls-participant-card.entry.js → components/p-B4_-Y3Tc.js} +60 -11
- package/dist/components/p-B4_-Y3Tc.js.map +1 -0
- package/dist/components/p-B5cnJ7Uh.js +47 -0
- package/dist/components/p-B5cnJ7Uh.js.map +1 -0
- package/dist/{ls-document-viewer/ls-select-input.entry.js → components/p-B6kmJVw0.js} +47 -9
- package/dist/components/p-B6kmJVw0.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-footer.entry.js → components/p-BDTgDxaX.js} +36 -8
- package/dist/components/p-BDTgDxaX.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-container.entry.js → components/p-BFUdzGLI.js} +32 -8
- package/dist/components/p-BFUdzGLI.js.map +1 -0
- package/dist/components/p-BKrsDBDB.js +219 -0
- package/dist/components/p-BKrsDBDB.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-general.entry.js → components/p-BREZ8Ewj.js} +108 -8
- package/dist/components/p-BREZ8Ewj.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-advanced.entry.js → components/p-BSpwN-xy.js} +43 -8
- package/dist/components/p-BSpwN-xy.js.map +1 -0
- package/dist/components/p-B_JOCgcw.js +105 -0
- package/dist/components/p-B_JOCgcw.js.map +1 -0
- package/dist/{ls-document-viewer/ls-document-options.entry.js → components/p-Bd5hHfVU.js} +53 -10
- package/dist/components/p-Bd5hHfVU.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-email.entry.js → components/p-Begt0qBL.js} +108 -8
- package/dist/components/p-Begt0qBL.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-number.entry.js → components/p-BgQSapwC.js} +108 -8
- package/dist/components/p-BgQSapwC.js.map +1 -0
- package/dist/components/p-BhZ5Udbm.js +1765 -0
- package/dist/components/p-BhZ5Udbm.js.map +1 -0
- package/dist/components/p-Bkyhs-9F.js +60 -0
- package/dist/components/p-Bkyhs-9F.js.map +1 -0
- package/dist/{ls-document-viewer/ls-number-input.entry.js → components/p-BrNFnrQ5.js} +50 -9
- package/dist/components/p-BrNFnrQ5.js.map +1 -0
- package/dist/{ls-document-viewer/ls-statusbar.entry.js → components/p-Bw19bxna.js} +62 -13
- package/dist/components/p-Bw19bxna.js.map +1 -0
- package/dist/components/p-Bxq4Jou6.js +568 -0
- package/dist/components/p-Bxq4Jou6.js.map +1 -0
- package/dist/{ls-document-viewer/ls-radio-input.entry.js → components/p-C6pzA2Lp.js} +42 -9
- package/dist/components/p-C6pzA2Lp.js.map +1 -0
- package/dist/{ls-document-viewer/ls-toolbox-field.entry.js → components/p-CI3IFKqK.js} +56 -11
- package/dist/components/p-CI3IFKqK.js.map +1 -0
- package/dist/{ls-document-viewer/editorUtils-KdYXvZ56.js → components/p-CKnixZlS.js} +248 -58
- package/dist/components/p-CKnixZlS.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-multiple.entry.js → components/p-CMsyvCsL.js} +98 -10
- package/dist/components/p-CMsyvCsL.js.map +1 -0
- package/dist/{ls-document-viewer/ls-helper-bar.entry.js → components/p-CN4S8Tr6.js} +51 -10
- package/dist/components/p-CN4S8Tr6.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-image.entry.js → components/p-CSPv-sVd.js} +108 -8
- package/dist/components/p-CSPv-sVd.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-placement.entry.js → components/p-CYMm2d62.js} +44 -10
- package/dist/components/p-CYMm2d62.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-file.entry.js → components/p-Ca-YBRIi.js} +108 -8
- package/dist/components/p-Ca-YBRIi.js.map +1 -0
- package/dist/{ls-document-viewer/tooltip-Cb8nDMs-.js → components/p-Cb8nDMs-.js} +2 -2
- package/dist/components/p-Cb8nDMs-.js.map +1 -0
- package/dist/{ls-document-viewer/ls-recipient-card.entry.js → components/p-CbSH7gJL.js} +58 -10
- package/dist/components/p-CbSH7gJL.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-signature.entry.js → components/p-Cdp9Kc36.js} +108 -8
- package/dist/components/p-Cdp9Kc36.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-format.entry.js → components/p-Ch9RTQWk.js} +46 -10
- package/dist/components/p-Ch9RTQWk.js.map +1 -0
- package/dist/{ls-document-viewer/clsx-ChV9xqsO.js → components/p-ChV9xqsO.js} +2 -2
- package/dist/components/p-ChV9xqsO.js.map +1 -0
- package/dist/{ls-document-viewer/ls-textarea-input.entry.js → components/p-CntMVGQM.js} +50 -9
- package/dist/components/p-CntMVGQM.js.map +1 -0
- package/dist/{ls-document-viewer/defaultFieldIcons-Cp3IxvzK.js → components/p-Cp3IxvzK.js} +2 -2
- package/dist/components/p-Cp3IxvzK.js.map +1 -0
- package/dist/{ls-document-viewer/ls-props-section.entry.js → components/p-CwkNbClZ.js} +32 -8
- package/dist/components/p-CwkNbClZ.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-autosign.entry.js → components/p-Cx-QcGQg.js} +66 -8
- package/dist/components/p-Cx-QcGQg.js.map +1 -0
- package/dist/components/p-D1Vbun-H.js +36 -0
- package/dist/components/p-D1Vbun-H.js.map +1 -0
- package/dist/{ls-document-viewer/ls-feature-column.entry.js → components/p-D9j4pLd9.js} +45 -10
- package/dist/components/p-D9j4pLd9.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-dimensions.entry.js → components/p-DBZFz4Ni.js} +44 -10
- package/dist/components/p-DBZFz4Ni.js.map +1 -0
- package/dist/{ls-document-viewer/ls-participant-select.entry.js → components/p-DK4_6BnD.js} +42 -9
- package/dist/components/p-DK4_6BnD.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-date.entry.js → components/p-DThoxHje.js} +108 -8
- package/dist/components/p-DThoxHje.js.map +1 -0
- package/dist/{ls-document-viewer/ls-validation-tag.entry.js → components/p-DdAAJAZW.js} +41 -9
- package/dist/components/p-DdAAJAZW.js.map +1 -0
- package/dist/components/p-DfV8Cje6.js +231 -0
- package/dist/components/p-DfV8Cje6.js.map +1 -0
- package/dist/{ls-document-viewer/ls-keyboard-shortcuts.entry.js → components/p-DfkXv1vI.js} +28 -8
- package/dist/components/p-DfkXv1vI.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-size.entry.js → components/p-DirhmWEt.js} +44 -10
- package/dist/components/p-DirhmWEt.js.map +1 -0
- package/dist/{ls-document-viewer/ls-icon.entry.js → components/p-DnyBXRV4.js} +33 -15
- package/dist/components/p-DnyBXRV4.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-content.entry.js → components/p-Dsi4R7Oq.js} +68 -11
- package/dist/components/p-Dsi4R7Oq.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-properties-text.entry.js → components/p-MT9M7yVh.js} +108 -8
- package/dist/components/p-MT9M7yVh.js.map +1 -0
- package/dist/{ls-document-viewer/ls-validation-manager.entry.js → components/p-T6MZpv4Y.js} +49 -9
- package/dist/components/p-T6MZpv4Y.js.map +1 -0
- package/dist/{ls-document-viewer/ls-field-alignment.entry.js → components/p-UffBQXtF.js} +44 -10
- package/dist/components/p-UffBQXtF.js.map +1 -0
- package/dist/{ls-document-viewer/ls-participant-manager.entry.js → components/p-enO8g-4z.js} +58 -11
- package/dist/components/p-enO8g-4z.js.map +1 -0
- package/dist/{ls-document-viewer/ls-tooltip.entry.js → components/p-faUZy676.js} +44 -694
- package/dist/components/p-faUZy676.js.map +1 -0
- package/dist/components/p-kug3tj7P.js +115 -0
- package/dist/components/p-kug3tj7P.js.map +1 -0
- package/dist/{ls-document-viewer/ls-toggle.entry.js → components/p-mm_laW9q.js} +30 -8
- package/dist/components/p-mm_laW9q.js.map +1 -0
- package/dist/{ls-document-viewer/ls-toolbar.entry.js → components/p-pumCOAgo.js} +59 -9
- package/dist/components/p-pumCOAgo.js.map +1 -0
- package/dist/{ls-document-viewer/ls-text-input.entry.js → components/p-tbdpKil5.js} +51 -9
- package/dist/components/p-tbdpKil5.js.map +1 -0
- package/dist/esm/index-BwdJ-HOC.js +2000 -0
- package/dist/esm/index-BwdJ-HOC.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +13 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/{ls-document-viewer → esm}/ls-compose-manager.entry.js +2 -2
- package/dist/esm/ls-compose-manager.entry.js.map +1 -0
- package/dist/esm/ls-document-options_45.entry.js +51671 -0
- package/dist/esm/ls-document-viewer.js +23 -0
- package/dist/esm/ls-document-viewer.js.map +1 -0
- package/dist/{ls-document-viewer → esm}/ls-field-properties-dropdown.entry.js +2 -2
- package/dist/esm/ls-field-properties-dropdown.entry.js.map +1 -0
- package/dist/{ls-document-viewer → esm}/ls-formfield.entry.js +2 -2
- package/dist/esm/ls-formfield.entry.js.map +1 -0
- package/dist/esm/ls-number-input_5.entry.js +1123 -0
- package/dist/{ls-document-viewer → esm}/ls-title-input.entry.js +2 -2
- package/dist/esm/ls-title-input.entry.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/ls-document-viewer/index.esm.js +1 -17
- package/dist/ls-document-viewer/index.esm.js.map +1 -1
- package/dist/ls-document-viewer/ls-document-viewer.css +1 -259
- package/dist/ls-document-viewer/ls-document-viewer.esm.js +1 -49
- package/dist/ls-document-viewer/ls-document-viewer.esm.js.map +1 -1
- package/dist/ls-document-viewer/p-00ab25ff.entry.js +2 -0
- package/dist/ls-document-viewer/p-00ab25ff.entry.js.map +1 -0
- package/dist/ls-document-viewer/p-131fe514.entry.js +2 -0
- package/dist/ls-document-viewer/p-131fe514.entry.js.map +1 -0
- package/dist/ls-document-viewer/p-18dc496a.entry.js +4922 -0
- package/dist/ls-document-viewer/p-18dc496a.entry.js.map +1 -0
- package/dist/ls-document-viewer/p-96fe16df.entry.js +2 -0
- package/dist/ls-document-viewer/p-96fe16df.entry.js.map +1 -0
- package/dist/ls-document-viewer/p-BwdJ-HOC.js +3 -0
- package/dist/ls-document-viewer/p-BwdJ-HOC.js.map +1 -0
- package/dist/ls-document-viewer/p-bd532735.entry.js +2 -0
- package/dist/ls-document-viewer/p-bd532735.entry.js.map +1 -0
- package/dist/ls-document-viewer/p-ccbc4663.entry.js +2 -0
- package/dist/ls-document-viewer/p-ccbc4663.entry.js.map +1 -0
- package/dist/types/components/ls-document-viewer/adapter/LsDocumentAdapter.d.ts +1 -1
- package/dist/types/components/ls-document-viewer/editorUtils.d.ts +1 -1
- package/package.json +1 -1
- package/dist/ls-document-viewer/clsx-ChV9xqsO.js.map +0 -1
- package/dist/ls-document-viewer/defaultFieldIcons-Cp3IxvzK.js.map +0 -1
- package/dist/ls-document-viewer/defaultFieldLabels-CUaKk41L.js.map +0 -1
- package/dist/ls-document-viewer/defaultPalette-CwCWCxsI.js.map +0 -1
- package/dist/ls-document-viewer/editorUtils-KdYXvZ56.js.map +0 -1
- package/dist/ls-document-viewer/index-DANCsk1i.js +0 -4417
- package/dist/ls-document-viewer/index-DANCsk1i.js.map +0 -1
- package/dist/ls-document-viewer/ls-editor-field.entry.js +0 -203
- package/dist/ls-document-viewer/ls-editor-table.entry.js +0 -38
- package/dist/ls-document-viewer/ls-field-properties.entry.js +0 -53
- package/dist/ls-document-viewer/ls-field-type-display.entry.js +0 -29
- package/dist/ls-document-viewer/ls-input-wrapper.entry.js +0 -18
- package/dist/ls-document-viewer/ls-recipient-manager.entry.js +0 -16
- package/dist/ls-document-viewer/mouseHandlers-8wT9GBoG.js.map +0 -1
- 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
|
-
|
|
487
|
-
|
|
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=
|
|
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}
|