@verdocs/web-sdk 1.9.16 → 1.9.21
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/Envelopes-2277461f.js +65 -0
- package/dist/cjs/Envelopes-2277461f.js.map +1 -0
- package/dist/cjs/{Templates-01d520ad.js → Templates-3404a881.js} +2 -2
- package/dist/cjs/{Templates-01d520ad.js.map → Templates-3404a881.js.map} +1 -1
- package/dist/cjs/Token-576f0e8a.js +73 -0
- package/dist/cjs/Token-576f0e8a.js.map +1 -0
- package/dist/cjs/{VerdocsEndpoint-8c408e5b.js → VerdocsEndpoint-a9bf9d59.js} +3 -70
- package/dist/cjs/VerdocsEndpoint-a9bf9d59.js.map +1 -0
- package/dist/cjs/index-6528b430.js +2348 -0
- package/dist/cjs/index-6528b430.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{templateStore-42a49905.js → templateStore-3c43f83c.js} +2 -2
- package/dist/cjs/{templateStore-42a49905.js.map → templateStore-3c43f83c.js.map} +1 -1
- package/dist/cjs/utils-9b27a65b.js +350 -0
- package/dist/cjs/utils-9b27a65b.js.map +1 -0
- package/dist/cjs/verdocs-auth.cjs.entry.js +2 -1
- package/dist/cjs/verdocs-auth.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-build.cjs.entry.js +5 -4
- package/dist/cjs/verdocs-build.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-contact-picker.cjs.entry.js +2 -1
- package/dist/cjs/verdocs-contact-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +7 -2
- package/dist/cjs/verdocs-field-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-date.cjs.entry.js +9 -1
- package/dist/cjs/verdocs-field-date.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +2 -1
- package/dist/cjs/verdocs-field-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-initial.cjs.entry.js +7 -2
- package/dist/cjs/verdocs-field-initial.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-payment.cjs.entry.js +2 -1
- package/dist/cjs/verdocs-field-payment.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +12 -8
- package/dist/cjs/verdocs-field-radio-button.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-signature_3.cjs.entry.js +7 -2
- package/dist/cjs/verdocs-field-signature_3.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-textarea.cjs.entry.js +6 -1
- package/dist/cjs/verdocs-field-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-textbox.cjs.entry.js +9 -3
- package/dist/cjs/verdocs-field-textbox.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +16 -4
- package/dist/cjs/verdocs-field-timestamp.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-ok-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-organization-card.cjs.entry.js +2 -2344
- package/dist/cjs/verdocs-organization-card.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-preview.cjs.entry.js +5 -4
- package/dist/cjs/verdocs-preview.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +2 -1
- package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-search.cjs.entry.js +2 -1
- package/dist/cjs/verdocs-search.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-send.cjs.entry.js +3 -2
- package/dist/cjs/verdocs-send.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-sign.cjs.entry.js +135 -84
- package/dist/cjs/verdocs-sign.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-template-create_4.cjs.entry.js +5 -4
- package/dist/cjs/verdocs-template-create_4.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-view.cjs.entry.js +26 -63
- package/dist/cjs/verdocs-view.cjs.entry.js.map +1 -1
- package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js +1 -1
- package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js.map +1 -1
- package/dist/collection/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.css +0 -0
- package/dist/collection/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.js +23 -1
- package/dist/collection/components/elements/verdocs-field-checkbox/verdocs-field-checkbox.js.map +1 -0
- package/dist/collection/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.stories.js +0 -0
- package/dist/collection/components/elements/verdocs-field-checkbox/verdocs-field-checkbox.stories.js.map +1 -0
- package/dist/collection/components/elements/verdocs-field-date/verdocs-field-date.js +25 -0
- package/dist/collection/components/elements/verdocs-field-date/verdocs-field-date.js.map +1 -1
- package/dist/collection/components/elements/verdocs-field-initial/verdocs-field-initial.css +4 -0
- package/dist/collection/components/elements/verdocs-field-initial/verdocs-field-initial.js +22 -0
- package/dist/collection/components/elements/verdocs-field-initial/verdocs-field-initial.js.map +1 -1
- package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.css +15 -6
- package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.js +27 -23
- package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.js.map +1 -1
- package/dist/collection/components/elements/verdocs-field-signature/verdocs-field-signature.css +4 -0
- package/dist/collection/components/elements/verdocs-field-signature/verdocs-field-signature.js +22 -0
- package/dist/collection/components/elements/verdocs-field-signature/verdocs-field-signature.js.map +1 -1
- package/dist/collection/components/elements/verdocs-field-textarea/verdocs-field-textarea.js +22 -0
- package/dist/collection/components/elements/verdocs-field-textarea/verdocs-field-textarea.js.map +1 -1
- package/dist/collection/components/elements/verdocs-field-textbox/verdocs-field-textbox.js +24 -1
- package/dist/collection/components/elements/verdocs-field-textbox/verdocs-field-textbox.js.map +1 -1
- package/dist/collection/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.css +4 -3
- package/dist/collection/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.js +32 -3
- package/dist/collection/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.js.map +1 -1
- package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.css +17 -0
- package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +142 -69
- package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
- package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.stories.js +3 -5
- package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.stories.js.map +1 -1
- package/dist/collection/components/embeds/verdocs-view/verdocs-view.css +60 -3
- package/dist/collection/components/embeds/verdocs-view/verdocs-view.js +22 -61
- package/dist/collection/components/embeds/verdocs-view/verdocs-view.js.map +1 -1
- package/dist/collection/components/embeds/verdocs-view/verdocs-view.stories.js +1 -1
- package/dist/collection/components/embeds/verdocs-view/verdocs-view.stories.js.map +1 -1
- package/dist/collection/utils/Envelopes.js +5 -2
- package/dist/collection/utils/Envelopes.js.map +1 -1
- package/dist/collection/utils/utils.js +45 -15
- package/dist/collection/utils/utils.js.map +1 -1
- package/dist/components/Envelopes.js +8 -115
- package/dist/components/Envelopes.js.map +1 -1
- package/dist/components/Token.js +71 -0
- package/dist/components/Token.js.map +1 -0
- package/dist/components/VerdocsEndpoint.js +2 -68
- package/dist/components/VerdocsEndpoint.js.map +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index2.js +2328 -178
- package/dist/components/index2.js.map +1 -1
- package/dist/components/index3.js +196 -0
- package/dist/components/index3.js.map +1 -0
- package/dist/components/templateStore.js +1 -1
- package/dist/components/utils.js +157 -16
- package/dist/components/utils.js.map +1 -1
- package/dist/components/verdocs-field-checkbox.js +6 -1
- package/dist/components/verdocs-field-checkbox.js.map +1 -1
- package/dist/components/verdocs-field-date.js +8 -0
- package/dist/components/verdocs-field-date.js.map +1 -1
- package/dist/components/verdocs-field-initial.js +6 -1
- package/dist/components/verdocs-field-initial.js.map +1 -1
- package/dist/components/verdocs-field-radio-button.js +12 -8
- package/dist/components/verdocs-field-radio-button.js.map +1 -1
- package/dist/components/verdocs-field-signature2.js +6 -1
- package/dist/components/verdocs-field-signature2.js.map +1 -1
- package/dist/components/verdocs-field-textarea.js +5 -0
- package/dist/components/verdocs-field-textarea.js.map +1 -1
- package/dist/components/verdocs-field-textbox.js +7 -1
- package/dist/components/verdocs-field-textbox.js.map +1 -1
- package/dist/components/verdocs-field-timestamp.js +16 -4
- package/dist/components/verdocs-field-timestamp.js.map +1 -1
- package/dist/components/verdocs-ok-dialog2.js +1 -1
- package/dist/components/verdocs-ok-dialog2.js.map +1 -1
- package/dist/components/verdocs-organization-card.js +1 -2343
- package/dist/components/verdocs-organization-card.js.map +1 -1
- package/dist/components/verdocs-sign.js +132 -79
- package/dist/components/verdocs-sign.js.map +1 -1
- package/dist/components/verdocs-template-fields2.js +1 -1
- package/dist/components/verdocs-view.js +24 -62
- package/dist/components/verdocs-view.js.map +1 -1
- package/dist/docs.json +151 -16
- package/dist/esm/Envelopes-c80609e5.js +62 -0
- package/dist/esm/Envelopes-c80609e5.js.map +1 -0
- package/dist/esm/{Templates-e77fb578.js → Templates-7ae1294e.js} +2 -2
- package/dist/esm/{Templates-e77fb578.js.map → Templates-7ae1294e.js.map} +1 -1
- package/dist/esm/Token-54690789.js +71 -0
- package/dist/esm/Token-54690789.js.map +1 -0
- package/dist/esm/{VerdocsEndpoint-dac04424.js → VerdocsEndpoint-76dbf9b9.js} +3 -69
- package/dist/esm/VerdocsEndpoint-76dbf9b9.js.map +1 -0
- package/dist/esm/index-d264c496.js +2346 -0
- package/dist/esm/index-d264c496.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{templateStore-b8512d36.js → templateStore-a6dfb726.js} +2 -2
- package/dist/esm/{templateStore-b8512d36.js.map → templateStore-a6dfb726.js.map} +1 -1
- package/dist/esm/utils-53001d87.js +336 -0
- package/dist/esm/utils-53001d87.js.map +1 -0
- package/dist/esm/verdocs-auth.entry.js +2 -1
- package/dist/esm/verdocs-auth.entry.js.map +1 -1
- package/dist/esm/verdocs-build.entry.js +5 -4
- package/dist/esm/verdocs-build.entry.js.map +1 -1
- package/dist/esm/verdocs-contact-picker.entry.js +2 -1
- package/dist/esm/verdocs-contact-picker.entry.js.map +1 -1
- package/dist/esm/verdocs-field-checkbox.entry.js +7 -2
- package/dist/esm/verdocs-field-checkbox.entry.js.map +1 -1
- package/dist/esm/verdocs-field-date.entry.js +9 -1
- package/dist/esm/verdocs-field-date.entry.js.map +1 -1
- package/dist/esm/verdocs-field-dropdown.entry.js +2 -1
- package/dist/esm/verdocs-field-dropdown.entry.js.map +1 -1
- package/dist/esm/verdocs-field-initial.entry.js +7 -2
- package/dist/esm/verdocs-field-initial.entry.js.map +1 -1
- package/dist/esm/verdocs-field-payment.entry.js +2 -1
- package/dist/esm/verdocs-field-payment.entry.js.map +1 -1
- package/dist/esm/verdocs-field-radio-button.entry.js +13 -9
- package/dist/esm/verdocs-field-radio-button.entry.js.map +1 -1
- package/dist/esm/verdocs-field-signature_3.entry.js +7 -2
- package/dist/esm/verdocs-field-signature_3.entry.js.map +1 -1
- package/dist/esm/verdocs-field-textarea.entry.js +6 -1
- package/dist/esm/verdocs-field-textarea.entry.js.map +1 -1
- package/dist/esm/verdocs-field-textbox.entry.js +9 -3
- package/dist/esm/verdocs-field-textbox.entry.js.map +1 -1
- package/dist/esm/verdocs-field-timestamp.entry.js +16 -4
- package/dist/esm/verdocs-field-timestamp.entry.js.map +1 -1
- package/dist/esm/verdocs-ok-dialog.entry.js +1 -1
- package/dist/esm/verdocs-ok-dialog.entry.js.map +1 -1
- package/dist/esm/verdocs-organization-card.entry.js +1 -2343
- package/dist/esm/verdocs-organization-card.entry.js.map +1 -1
- package/dist/esm/verdocs-preview.entry.js +5 -4
- package/dist/esm/verdocs-preview.entry.js.map +1 -1
- package/dist/esm/verdocs-quick-functions_3.entry.js +2 -1
- package/dist/esm/verdocs-quick-functions_3.entry.js.map +1 -1
- package/dist/esm/verdocs-search.entry.js +2 -1
- package/dist/esm/verdocs-search.entry.js.map +1 -1
- package/dist/esm/verdocs-send.entry.js +3 -2
- package/dist/esm/verdocs-send.entry.js.map +1 -1
- package/dist/esm/verdocs-sign.entry.js +131 -80
- package/dist/esm/verdocs-sign.entry.js.map +1 -1
- package/dist/esm/verdocs-template-create_4.entry.js +5 -4
- package/dist/esm/verdocs-template-create_4.entry.js.map +1 -1
- package/dist/esm/verdocs-view.entry.js +26 -63
- package/dist/esm/verdocs-view.entry.js.map +1 -1
- package/dist/esm/verdocs-web-sdk.js +1 -1
- package/dist/esm-es5/Envelopes-c80609e5.js +2 -0
- package/dist/esm-es5/Envelopes-c80609e5.js.map +1 -0
- package/dist/esm-es5/{Templates-e77fb578.js → Templates-7ae1294e.js} +2 -2
- package/dist/esm-es5/{Templates-e77fb578.js.map → Templates-7ae1294e.js.map} +0 -0
- package/dist/esm-es5/Token-54690789.js +2 -0
- package/dist/esm-es5/Token-54690789.js.map +1 -0
- package/dist/esm-es5/VerdocsEndpoint-76dbf9b9.js +2 -0
- package/dist/esm-es5/VerdocsEndpoint-76dbf9b9.js.map +1 -0
- package/dist/esm-es5/index-d264c496.js +2 -0
- package/dist/esm-es5/index-d264c496.js.map +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/{templateStore-b8512d36.js → templateStore-a6dfb726.js} +2 -2
- package/dist/esm-es5/{templateStore-b8512d36.js.map → templateStore-a6dfb726.js.map} +0 -0
- package/dist/esm-es5/utils-53001d87.js +2 -0
- package/dist/esm-es5/utils-53001d87.js.map +1 -0
- package/dist/esm-es5/verdocs-auth.entry.js +1 -1
- package/dist/esm-es5/verdocs-auth.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-build.entry.js +1 -1
- package/dist/esm-es5/verdocs-build.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
- package/dist/esm-es5/verdocs-contact-picker.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-checkbox.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-date.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-dropdown.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-initial.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-payment.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-radio-button.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-signature_3.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-signature_3.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-textarea.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-textbox.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-timestamp.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
- package/dist/esm-es5/verdocs-ok-dialog.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-organization-card.entry.js +1 -1
- package/dist/esm-es5/verdocs-organization-card.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-preview.entry.js +1 -1
- package/dist/esm-es5/verdocs-preview.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
- package/dist/esm-es5/verdocs-quick-functions_3.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-search.entry.js +1 -1
- package/dist/esm-es5/verdocs-search.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-send.entry.js +1 -1
- package/dist/esm-es5/verdocs-send.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-sign.entry.js +1 -1
- package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-template-create_4.entry.js +1 -1
- package/dist/esm-es5/verdocs-template-create_4.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-view.entry.js +1 -1
- package/dist/esm-es5/verdocs-view.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-web-sdk.js +1 -1
- package/dist/esm-es5/verdocs-web-sdk.js.map +1 -1
- package/dist/types/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.d.ts +4 -0
- package/dist/types/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.stories.d.ts +0 -0
- package/dist/types/components/elements/verdocs-field-date/verdocs-field-date.d.ts +4 -0
- package/dist/types/components/elements/verdocs-field-initial/verdocs-field-initial.d.ts +4 -0
- package/dist/types/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +4 -11
- package/dist/types/components/elements/verdocs-field-signature/verdocs-field-signature.d.ts +4 -0
- package/dist/types/components/elements/verdocs-field-textarea/verdocs-field-textarea.d.ts +4 -0
- package/dist/types/components/elements/verdocs-field-textbox/verdocs-field-textbox.d.ts +4 -0
- package/dist/types/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +4 -0
- package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +19 -7
- package/dist/types/components/embeds/verdocs-view/verdocs-view.d.ts +1 -2
- package/dist/types/components.d.ts +70 -10
- package/dist/types/utils/utils.d.ts +4 -1
- package/dist/verdocs-web-sdk/p-00cc11c3.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-00cc11c3.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-0e7a7666.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-c0875b7d.entry.js.map → p-0e7a7666.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-0eee7f43.system.js +2 -0
- package/dist/verdocs-web-sdk/p-0eee7f43.system.js.map +1 -0
- package/dist/verdocs-web-sdk/p-150a172e.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-150a172e.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-1f1127dd.js +2 -0
- package/dist/verdocs-web-sdk/p-1f1127dd.js.map +1 -0
- package/dist/verdocs-web-sdk/p-208a3320.js +2 -0
- package/dist/verdocs-web-sdk/p-208a3320.js.map +1 -0
- package/dist/verdocs-web-sdk/p-21603661.js +2 -0
- package/dist/verdocs-web-sdk/p-21603661.js.map +1 -0
- package/dist/verdocs-web-sdk/p-27f3e394.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-751e0c80.entry.js.map → p-27f3e394.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-2b7f196e.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-2b7f196e.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-2c0f9340.system.js +2 -0
- package/dist/verdocs-web-sdk/p-2c0f9340.system.js.map +1 -0
- package/dist/verdocs-web-sdk/p-3175c6f2.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-3175c6f2.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-35333c3b.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-35333c3b.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-359129d0.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-76fd7afd.entry.js.map → p-359129d0.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-00dec610.system.js → p-4437603c.system.js} +2 -2
- package/dist/verdocs-web-sdk/{p-00dec610.system.js.map → p-4437603c.system.js.map} +0 -0
- package/dist/verdocs-web-sdk/p-48285c26.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-48285c26.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-4943d790.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-4943d790.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-4ef84b54.js +2 -0
- package/dist/verdocs-web-sdk/{p-d1f922c2.js.map → p-4ef84b54.js.map} +0 -0
- package/dist/verdocs-web-sdk/p-4f321d05.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-4f321d05.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-51a3ea62.system.js +2 -0
- package/dist/verdocs-web-sdk/p-51a3ea62.system.js.map +1 -0
- package/dist/verdocs-web-sdk/p-5bbbf36a.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-5bbbf36a.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-5c3fce00.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-5c3fce00.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-64cad758.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-64cad758.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-66eacdf0.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-66eacdf0.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-6c2273ee.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-6c2273ee.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-71de4718.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-fac05414.entry.js.map → p-71de4718.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-77a77df6.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-d1256888.entry.js.map → p-77a77df6.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-8251b9eb.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-2fe5b678.entry.js.map → p-8251b9eb.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-888cf244.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-a6fca8c0.system.entry.js.map → p-888cf244.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-90fe342a.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-2b44d1b3.entry.js.map → p-90fe342a.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-93ada77f.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-3629c585.system.entry.js.map → p-93ada77f.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-99144a0a.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-6a8ac53e.system.entry.js.map → p-99144a0a.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-9a763c04.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-a59f1f82.entry.js.map → p-9a763c04.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-a580d69a.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-690ade87.system.entry.js.map → p-a580d69a.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-a9429014.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-a9429014.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-a9d20e4b.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-79c160f4.system.entry.js.map → p-a9d20e4b.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-ab01f71e.js +2 -0
- package/dist/verdocs-web-sdk/p-ab01f71e.js.map +1 -0
- package/dist/verdocs-web-sdk/p-ace31857.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-ace31857.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-af2c2f79.system.js +2 -0
- package/dist/verdocs-web-sdk/p-af2c2f79.system.js.map +1 -0
- package/dist/verdocs-web-sdk/p-b10f26f2.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-b10f26f2.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-ba8727f3.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-6f7e9e81.system.entry.js.map → p-ba8727f3.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-bdff66f3.js +2 -0
- package/dist/verdocs-web-sdk/p-bdff66f3.js.map +1 -0
- package/dist/verdocs-web-sdk/p-c0804682.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-c0804682.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-c16b6ca4.system.js +1 -1
- package/dist/verdocs-web-sdk/p-c16b6ca4.system.js.map +1 -1
- package/dist/verdocs-web-sdk/{p-8cce81ff.system.entry.js → p-c314c231.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-c314c231.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-c475a969.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-d52297bc.system.entry.js.map → p-c475a969.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-cf1ed6b8.system.js +2 -0
- package/dist/verdocs-web-sdk/p-cf1ed6b8.system.js.map +1 -0
- package/dist/verdocs-web-sdk/p-d0a360d6.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-d0a360d6.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-d2c1dcf9.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-b5882803.system.entry.js.map → p-d2c1dcf9.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-d65f5bf7.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-d65f5bf7.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-11fbd83d.entry.js → p-d774ad24.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-d774ad24.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-d9b9a354.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-78ec7db1.system.entry.js.map → p-d9b9a354.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-dadccc57.js +2 -0
- package/dist/verdocs-web-sdk/{p-e920fbe1.js.map → p-dadccc57.js.map} +0 -0
- package/dist/verdocs-web-sdk/p-e014f9a6.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-e014f9a6.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-ecdd15bf.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-a15b9bc8.entry.js.map → p-ecdd15bf.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-f05afb1f.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-edc2802d.system.entry.js.map → p-f05afb1f.system.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-90d7da87.system.js → p-f2137361.system.js} +2 -2
- package/dist/verdocs-web-sdk/{p-90d7da87.system.js.map → p-f2137361.system.js.map} +0 -0
- package/dist/verdocs-web-sdk/p-f2f60dc9.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-f2f60dc9.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-f632dbd8.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-f632dbd8.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/p-fa722164.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-524017b8.entry.js.map → p-fa722164.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
- package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js.map +1 -1
- package/package.json +12 -12
- package/dist/cjs/Envelopes-ea5bf3fc.js +0 -177
- package/dist/cjs/Envelopes-ea5bf3fc.js.map +0 -1
- package/dist/cjs/VerdocsEndpoint-8c408e5b.js.map +0 -1
- package/dist/cjs/utils-beee79a1.js +0 -203
- package/dist/cjs/utils-beee79a1.js.map +0 -1
- package/dist/collection/components/elements/verdocs-field-checkbox-group/verdocs-field-checkbox.js.map +0 -1
- package/dist/collection/components/elements/verdocs-field-checkbox-group/verdocs-field-checkbox.stories.js.map +0 -1
- package/dist/esm/Envelopes-8038ca25.js +0 -169
- package/dist/esm/Envelopes-8038ca25.js.map +0 -1
- package/dist/esm/VerdocsEndpoint-dac04424.js.map +0 -1
- package/dist/esm/utils-2e6beff8.js +0 -195
- package/dist/esm/utils-2e6beff8.js.map +0 -1
- package/dist/esm-es5/Envelopes-8038ca25.js +0 -2
- package/dist/esm-es5/Envelopes-8038ca25.js.map +0 -1
- package/dist/esm-es5/VerdocsEndpoint-dac04424.js +0 -2
- package/dist/esm-es5/VerdocsEndpoint-dac04424.js.map +0 -1
- package/dist/esm-es5/utils-2e6beff8.js +0 -2
- package/dist/esm-es5/utils-2e6beff8.js.map +0 -1
- package/dist/verdocs-web-sdk/p-04f84127.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-04f84127.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-11fbd83d.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-12a82c8b.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-12a82c8b.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-1cd2f7dc.system.js +0 -2
- package/dist/verdocs-web-sdk/p-1cd2f7dc.system.js.map +0 -1
- package/dist/verdocs-web-sdk/p-2467a244.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-2467a244.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-26dc355e.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-26dc355e.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-2870fa81.js +0 -2
- package/dist/verdocs-web-sdk/p-2870fa81.js.map +0 -1
- package/dist/verdocs-web-sdk/p-2b44d1b3.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-2fe5b678.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-305e3fb9.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-305e3fb9.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-339c7685.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-339c7685.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-3629c585.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-3c2550a8.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-3c2550a8.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-40565c66.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-40565c66.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-430df46a.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-430df46a.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-4a332358.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-4a332358.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-524017b8.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-5a323cf3.system.js +0 -2
- package/dist/verdocs-web-sdk/p-5a323cf3.system.js.map +0 -1
- package/dist/verdocs-web-sdk/p-690ade87.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-6a8ac53e.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-6f7e9e81.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-751e0c80.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-76fd7afd.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-78ec7db1.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-79c160f4.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-7ee5530d.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-7ee5530d.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-83135a56.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-83135a56.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-8bd71fb6.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-8bd71fb6.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-8cce81ff.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-a15b9bc8.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-a59f1f82.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-a5ce60d9.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-a5ce60d9.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-a6fca8c0.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-aad63275.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-aad63275.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-b3ee5dd5.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-b3ee5dd5.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-b5882803.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-becd8d7e.js +0 -2
- package/dist/verdocs-web-sdk/p-becd8d7e.js.map +0 -1
- package/dist/verdocs-web-sdk/p-bf6e28ea.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-bf6e28ea.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-c0875b7d.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-c803da60.system.js +0 -2
- package/dist/verdocs-web-sdk/p-c803da60.system.js.map +0 -1
- package/dist/verdocs-web-sdk/p-d1256888.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-d1f922c2.js +0 -2
- package/dist/verdocs-web-sdk/p-d52297bc.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-da2f172b.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-da2f172b.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-deb5b86b.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-deb5b86b.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-df877830.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-df877830.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-e6f928eb.js +0 -2
- package/dist/verdocs-web-sdk/p-e6f928eb.js.map +0 -1
- package/dist/verdocs-web-sdk/p-e918e13e.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-e918e13e.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-e920fbe1.js +0 -2
- package/dist/verdocs-web-sdk/p-edc2802d.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-fac05414.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-fb391ca5.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-fb391ca5.entry.js.map +0 -1
|
@@ -6,12 +6,10 @@ export default {
|
|
|
6
6
|
envelopeId: '92f3dd1e-9ff2-44c3-8c96-32a5b650ed6d',
|
|
7
7
|
roleId: 'Seller',
|
|
8
8
|
inviteCode: '67aad4b04fbb83c03d238f7404113b6b',
|
|
9
|
+
// roleId: 'Buyer',
|
|
10
|
+
// inviteCode: '3b6e2a7abcc35808c9fc946d64e91abe',
|
|
9
11
|
},
|
|
10
|
-
argTypes: {
|
|
11
|
-
envelopeId: { control: { type: 'string' } },
|
|
12
|
-
roleId: { control: { type: 'string' } },
|
|
13
|
-
inviteCode: { control: { type: 'string' } },
|
|
14
|
-
},
|
|
12
|
+
argTypes: {},
|
|
15
13
|
parameters: {
|
|
16
14
|
layout: 'fullscreen',
|
|
17
15
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verdocs-sign.stories.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-sign/verdocs-sign.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,eAAe;EACb,KAAK,EAAE,aAAa;EACpB,SAAS,EAAE,cAAc;EACzB,IAAI,EAAE;IACJ,UAAU,EAAE,sCAAsC;IAClD,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,kCAAkC;
|
|
1
|
+
{"version":3,"file":"verdocs-sign.stories.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-sign/verdocs-sign.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,eAAe;EACb,KAAK,EAAE,aAAa;EACpB,SAAS,EAAE,cAAc;EACzB,IAAI,EAAE;IACJ,UAAU,EAAE,sCAAsC;IAClD,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,kCAAkC;IAC9C,mBAAmB;IACnB,kDAAkD;GACnD;EACD,QAAQ,EAAE,EAAE;EACZ,UAAU,EAAE;IACV,MAAM,EAAE,YAAY;GACrB;CACM,CAAC;AAEV,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,IAAI,CAAA,6BAA6B,UAAU,YAAY,MAAM,gBAAgB,UAAU,KAAK,CAAC","sourcesContent":["import {html} from 'lit-html';\nimport {Meta} from '@storybook/web-components';\n\nexport default {\n title: 'Embeds/Sign',\n component: 'verdocs-sign',\n args: {\n envelopeId: '92f3dd1e-9ff2-44c3-8c96-32a5b650ed6d',\n roleId: 'Seller',\n inviteCode: '67aad4b04fbb83c03d238f7404113b6b',\n // roleId: 'Buyer',\n // inviteCode: '3b6e2a7abcc35808c9fc946d64e91abe',\n },\n argTypes: {},\n parameters: {\n layout: 'fullscreen',\n },\n} as Meta;\n\nexport const Sign = ({envelopeId, roleId, inviteCode}) => html`<verdocs-sign .envelopeId=${envelopeId} .roleId=${roleId} .inviteCode=${inviteCode} />`;\n"]}
|
|
@@ -1,15 +1,72 @@
|
|
|
1
1
|
verdocs-view {
|
|
2
|
+
display: flex;
|
|
3
|
+
overflow: hidden;
|
|
4
|
+
position: relative;
|
|
5
|
+
min-height: 600px;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
box-sizing: border-box;
|
|
2
8
|
font-family: "Inter", -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
|
|
9
|
+
}
|
|
10
|
+
verdocs-view div,
|
|
11
|
+
verdocs-view canvas {
|
|
12
|
+
box-sizing: border-box;
|
|
13
|
+
}
|
|
14
|
+
verdocs-view .header {
|
|
15
|
+
flex: 0;
|
|
16
|
+
display: flex;
|
|
17
|
+
z-index: 1000;
|
|
18
|
+
align-items: center;
|
|
19
|
+
transition: all 0.25s;
|
|
20
|
+
justify-content: center;
|
|
21
|
+
background-color: #33354c;
|
|
22
|
+
box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12);
|
|
23
|
+
}
|
|
24
|
+
verdocs-view .header .inner {
|
|
25
|
+
width: 100%;
|
|
26
|
+
max-width: 1028px;
|
|
27
|
+
}
|
|
28
|
+
verdocs-view .toolbar {
|
|
29
|
+
width: 100%;
|
|
30
|
+
margin: 0 auto;
|
|
31
|
+
padding: 0 14px;
|
|
32
|
+
position: relative;
|
|
33
|
+
}
|
|
34
|
+
verdocs-view .tools {
|
|
35
|
+
width: 100%;
|
|
36
|
+
color: #fff;
|
|
37
|
+
height: 56px;
|
|
38
|
+
display: flex;
|
|
39
|
+
font-size: 12px;
|
|
40
|
+
align-items: center;
|
|
41
|
+
flex-direction: row;
|
|
42
|
+
background-color: #33354c;
|
|
43
|
+
}
|
|
44
|
+
verdocs-view .tools .logo {
|
|
45
|
+
width: 77.5px;
|
|
46
|
+
margin: -6px 0 0 5px;
|
|
47
|
+
}
|
|
48
|
+
verdocs-view .tools .title {
|
|
49
|
+
padding-left: 16px;
|
|
50
|
+
font-size: 18px;
|
|
51
|
+
font-weight: 500;
|
|
52
|
+
text-overflow: ellipsis;
|
|
53
|
+
white-space: nowrap;
|
|
54
|
+
}
|
|
55
|
+
verdocs-view .document {
|
|
56
|
+
flex: 1;
|
|
57
|
+
height: 100%;
|
|
3
58
|
display: flex;
|
|
4
59
|
padding: 15px;
|
|
5
60
|
row-gap: 15px;
|
|
6
61
|
min-height: 200px;
|
|
7
62
|
position: relative;
|
|
63
|
+
overflow-y: scroll;
|
|
8
64
|
align-items: center;
|
|
9
65
|
box-sizing: border-box;
|
|
10
66
|
flex-direction: column;
|
|
67
|
+
justify-content: center;
|
|
11
68
|
}
|
|
12
|
-
verdocs-view
|
|
13
|
-
|
|
14
|
-
|
|
69
|
+
verdocs-view .document .inner {
|
|
70
|
+
width: 100%;
|
|
71
|
+
max-width: 1028px;
|
|
15
72
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { VerdocsEndpoint } from '@verdocs/js-sdk';
|
|
2
|
-
import { Envelopes } from '@verdocs/js-sdk/Envelopes';
|
|
3
2
|
import { h, Host, Fragment } from '@stencil/core';
|
|
4
|
-
import { getRoleIndex, renderDocumentField } from '../../../utils/utils';
|
|
3
|
+
import { getRoleIndex, renderDocumentField, savePDF } from '../../../utils/utils';
|
|
5
4
|
import { getEnvelopeById } from '../../../utils/Envelopes';
|
|
6
5
|
import EnvelopeStore from '../../../utils/envelopeStore';
|
|
7
6
|
import { SDKError } from '../../../utils/errors';
|
|
7
|
+
const PrintIcon = `<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"><path d="M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3zm-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12V3z"></path></svg>`;
|
|
8
|
+
const DownloadIcon = `<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"><path d="M5 20h14v-2H5v2zM19 9h-4V3H9v6H5l7 7 7-7z"></path></svg>`;
|
|
8
9
|
/**
|
|
9
10
|
* Render the documents attached to an envelope in read-only (view) mode. All documents are displayed in order.
|
|
10
11
|
*/
|
|
@@ -147,56 +148,10 @@ export class VerdocsView {
|
|
|
147
148
|
// this.domPages[domPage.pageNumber] = domPage;
|
|
148
149
|
// await this.renderPage(domPage.pageNumber);
|
|
149
150
|
// }
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, { prepared: false, value: e.detail })
|
|
155
|
-
.then(r => console.log('Update result', r))
|
|
156
|
-
.catch(e => {
|
|
157
|
-
var _a, _b, _c, _d, _e, _f;
|
|
158
|
-
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
|
159
|
-
if (((_d = e.response) === null || _d === void 0 ? void 0 : _d.status) === 401 && ((_f = (_e = e.response) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.error) === 'jwt expired') {
|
|
160
|
-
console.log('jwt expired');
|
|
161
|
-
}
|
|
162
|
-
console.log('Error updating', e);
|
|
163
|
-
});
|
|
164
|
-
break;
|
|
165
|
-
case 'checkbox_group':
|
|
166
|
-
Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, { prepared: false, value: { options: [{ id: optionId, checked: e.detail }] } })
|
|
167
|
-
.then(r => console.log('Update result', r))
|
|
168
|
-
.catch(e => {
|
|
169
|
-
var _a, _b, _c;
|
|
170
|
-
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
|
171
|
-
console.log('Error updating', e);
|
|
172
|
-
});
|
|
173
|
-
break;
|
|
174
|
-
case 'radio_button_group':
|
|
175
|
-
const options = field.settings.options.map(option => ({ id: option.id, selected: optionId === option.id }));
|
|
176
|
-
Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, { prepared: false, value: { options } })
|
|
177
|
-
.then(r => console.log('Update result', r))
|
|
178
|
-
.catch(e => {
|
|
179
|
-
var _a, _b, _c;
|
|
180
|
-
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
|
181
|
-
console.log('Error updating', e);
|
|
182
|
-
});
|
|
183
|
-
break;
|
|
184
|
-
case 'dropdown':
|
|
185
|
-
Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, { prepared: false, value: e.detail })
|
|
186
|
-
.then(r => console.log('Update result', r))
|
|
187
|
-
.catch(e => {
|
|
188
|
-
var _a, _b, _c;
|
|
189
|
-
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
|
190
|
-
console.log('Error updating', e);
|
|
191
|
-
});
|
|
192
|
-
break;
|
|
193
|
-
case 'initial':
|
|
194
|
-
console.log('Got initial', e.detail);
|
|
195
|
-
break;
|
|
196
|
-
case 'signature':
|
|
197
|
-
console.log('Got signature', e.detail);
|
|
198
|
-
break;
|
|
199
|
-
}
|
|
151
|
+
attachFieldAttributes(pageInfo, roleIndex, el) {
|
|
152
|
+
el.setAttribute('roleindex', roleIndex);
|
|
153
|
+
el.setAttribute('xScale', pageInfo.xScale);
|
|
154
|
+
el.setAttribute('yScale', pageInfo.yScale);
|
|
200
155
|
}
|
|
201
156
|
handlePageRendered(e) {
|
|
202
157
|
const pageInfo = e.detail;
|
|
@@ -206,16 +161,22 @@ export class VerdocsView {
|
|
|
206
161
|
// const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);
|
|
207
162
|
console.log('[SIGN] Fields on page', fields);
|
|
208
163
|
fields.forEach(field => {
|
|
209
|
-
const
|
|
164
|
+
const roleIndex = getRoleIndex(EnvelopeStore.roleNames, field.recipient_role);
|
|
165
|
+
const el = renderDocumentField(field, pageInfo, roleIndex, {
|
|
166
|
+
disabled: true,
|
|
167
|
+
editable: false,
|
|
168
|
+
draggable: false,
|
|
169
|
+
done: true,
|
|
170
|
+
});
|
|
210
171
|
if (!el) {
|
|
211
172
|
return;
|
|
212
173
|
}
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
174
|
+
if (Array.isArray(el)) {
|
|
175
|
+
el.map(e => this.attachFieldAttributes(pageInfo, roleIndex, e));
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
this.attachFieldAttributes(pageInfo, roleIndex, el);
|
|
179
|
+
}
|
|
219
180
|
// interact(el).draggable({
|
|
220
181
|
// listeners: {
|
|
221
182
|
// start(event) {
|
|
@@ -252,14 +213,14 @@ export class VerdocsView {
|
|
|
252
213
|
if (EnvelopeStore.error) {
|
|
253
214
|
return (h(Host, null, h("div", null, EnvelopeStore.error)));
|
|
254
215
|
}
|
|
255
|
-
return (h(Host, null, (((_a = EnvelopeStore.envelope) === null || _a === void 0 ? void 0 : _a.documents) || []).map(envelopeDocument => {
|
|
216
|
+
return (h(Host, null, h("div", { class: "header" }, h("div", { class: "inner" }, h("div", { class: "toolbar" }, h("div", { class: "tools" }, h(Fragment, null, h("img", { src: "https://verdocs.com/assets/white-logo.svg", alt: "Verdocs Logo", class: "logo" }), h("div", { class: "title" }, EnvelopeStore.envelope.name), h("div", { style: { flex: '1' } }), h("div", { innerHTML: PrintIcon, style: { width: '24px', height: '24px', fill: '#ffffff', cursor: 'pointer' }, onClick: () => window.print() }), h("div", { innerHTML: DownloadIcon, style: { width: '24px', height: '24px', fill: '#ffffff', cursor: 'pointer', marginLeft: '16px', maginRight: '30px' }, onClick: () => savePDF(this.endpoint, EnvelopeStore.envelope, EnvelopeStore.envelope.envelope_document_id).catch(() => { }) })))))), h("div", { class: "document" }, (((_a = EnvelopeStore.envelope) === null || _a === void 0 ? void 0 : _a.documents) || []).map(envelopeDocument => {
|
|
256
217
|
const pages = [...((envelopeDocument === null || envelopeDocument === void 0 ? void 0 : envelopeDocument.pages) || [])];
|
|
257
218
|
pages.sort((a, b) => a.sequence - b.sequence);
|
|
258
219
|
return (h(Fragment, null, pages.map(page => (h("verdocs-document-page", { pageImageUri: page.display_uri, virtualWidth: 612, virtualHeight: 792, pageNumber: page.sequence, onPageRendered: e => this.handlePageRendered(e), layers: [
|
|
259
220
|
{ name: 'page', type: 'canvas' },
|
|
260
221
|
{ name: 'controls', type: 'div' },
|
|
261
222
|
] })))));
|
|
262
|
-
})));
|
|
223
|
+
}))));
|
|
263
224
|
}
|
|
264
225
|
static get is() { return "verdocs-view"; }
|
|
265
226
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verdocs-view.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-view/verdocs-view.tsx"],"names":[],"mappings":"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","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Envelopes} from '@verdocs/js-sdk/Envelopes';\nimport {IDocumentField} from '@verdocs/js-sdk/Envelopes/Types';\nimport {Component, h, Element, Event, Host, Prop, EventEmitter, Fragment} from '@stencil/core';\nimport {getRoleIndex, renderDocumentField} from '../../../utils/utils';\nimport {getEnvelopeById} from '../../../utils/Envelopes';\nimport EnvelopeStore from '../../../utils/envelopeStore';\nimport {IDocumentPageInfo} from '../../../utils/Types';\nimport {SDKError} from '../../../utils/errors';\n\n/**\n * Render the documents attached to an envelope in read-only (view) mode. All documents are displayed in order.\n */\n@Component({\n tag: 'verdocs-view',\n styleUrl: 'verdocs-view.scss',\n shadow: false,\n})\nexport class VerdocsView {\n @Element() component: HTMLElement;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The envelope ID to render. Set ONE OF templateId or envelopeId. If both are set, envelopeId will be ignored.\n */\n @Prop() envelopeId: string = '';\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n componentWillLoad() {\n this.endpoint.loadSession();\n }\n\n // TODO: Handling signing vs preview-as-user cases\n // TODO: Handle anonymous case and failure to load due to not being logged in\n async componentDidLoad() {\n if (!this.envelopeId) {\n console.error(`[VIEW] Missing reuqired envelopeId`);\n return;\n }\n\n try {\n await getEnvelopeById(this.endpoint, this.envelopeId);\n } catch (e) {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n // Determine whether a page is \"rotated\" (in either direction)\n // isRotated(rotation) {\n // return rotation !== 0 && rotation % 180 !== 0;\n // }\n\n // Render one document page. Note that pageNumber is 1-based.\n // async renderPage(pageNumber: number): Promise<void> {\n // const domPage = this.domPages[pageNumber];\n //\n // // Two async operations happen here, loading the PDF and rendering the DOM div/canvas placeholders to draw the pages on.\n // if (!domPage) {\n // console.log('[VIEW] Skipping rendering page not yet in DOM', {pageNumber});\n // return;\n // }\n //\n // const pageMetrics = this.sourcePageMetrics[pageNumber];\n //\n // console.log('[VIEW] Rendering page', {pageNumber, pageMetrics, domPage});\n // try {\n // // const pdfPage = await this.pdfDocument.getPage(pageNumber);\n // // const viewport = pdfPage.getViewport({scale: domPage.xScale});\n // // console.log('[VIEW] Page viewport', domPage.xScale, viewport);\n //\n // // const canvas = document.getElementById(`${domPage.containerId}-page`) as HTMLCanvasElement | null;\n // // if (!canvas) {\n // // console.log('[VIEW] Unable to find canvas element');\n // // return;\n // // }\n // //\n // // canvas.width = domPage.renderedWidth;\n // // canvas.height = domPage.renderedHeight;\n // // const canvasContext = canvas.getContext('2d');\n // // canvasContext.clearRect(0, 0, domPage.renderedWidth, domPage.renderedHeight);\n // // await pdfPage.render({canvasContext, viewport});\n //\n // this.pageRendered.emit({\n // renderedPage: domPage,\n // sourcePageMetrics: pageMetrics,\n // pages: this.domPages,\n // });\n // } catch (e) {\n // this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n // console.warn('[VIEW] Error rendering page', e);\n // }\n // }\n\n // async renderPages(): Promise<void> {\n // const pageNumbersToRender = integerSequence(1, this.numPages);\n // for await (let pageNumber of pageNumbersToRender) {\n // try {\n // await this.renderPage(pageNumber);\n // } catch (e) {\n // this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n // console.warn('[VIEW] Error rendering pages', e);\n // }\n // }\n // }\n\n // onProgress(progress: OnProgressParameters) {\n // console.log(`[VIEW] Progress ${Math.floor((progress.loaded / progress.total) * 100)} (${progress.loaded} / ${progress.total})`);\n // this.loadProgress = Math.floor((100 * progress.loaded) / progress.total);\n // }\n\n // After a document is done loading, go through its pages to get their dimensions\n // async parsePageMetrics(pdfDocument: pdfjsLib.PDFDocumentProxy) {\n // const pageNumbersToRender = integerSequence(1, pdfDocument.numPages);\n //\n // for await (let pageNumber of pageNumbersToRender) {\n // const pdfPage = await pdfDocument.getPage(1);\n // const [pageX0, pageY0, pageX1, pageY1] = pdfPage.view;\n // this.sourcePageMetrics[pageNumber] = {width: pageX1 - pageX0, height: pageY1 - pageY0};\n // }\n //\n // console.log('[VIEW] Parsed page metrics', this.sourcePageMetrics);\n // }\n\n // loadAndRender(src: string): void {\n // console.log('[VIEW] Loading', src);\n //\n // const token = this.endpoint.getToken();\n // const httpHeaders = token ? {Authorization: `Bearer ${token}`} : {};\n //\n // const source = {\n // url: src,\n // cMapUrl: CMAPS_URL,\n // cMapPacked: true,\n // httpHeaders,\n // withCredentials: true,\n // stopAtErrors: true,\n // verbosity: pdfjsLib.VerbosityLevel.WARNINGS,\n // // verbosity: pdfjsLib.VerbosityLevel.INFOS,\n // } as DocumentInitParameters;\n //\n // // @ts-ignore\n // const loadingTask = pdf.getDocument(source, null, null, this.onProgress);\n // loadingTask.onProgress = this.onProgress;\n // loadingTask.promise\n // .then(async (pdfDocument: pdfjsLib.PDFDocumentProxy) => {\n // await this.parsePageMetrics(pdfDocument);\n //\n // this.pdfDocument = pdfDocument;\n // this.numPages = pdfDocument.numPages;\n // this.fingerprints = pdfDocument.fingerprints;\n // console.log(`[VIEW] Got PDF document fingerprints \"${this.fingerprints.join(', ')}\", ${this.numPages} page(s)`);\n //\n // // We don't try to render the pages here, setting loadProtress triggers that by adding the individual page entries in\n // // DOM in render() below. Each page then fires onPageRendered when it is ready to receive content.\n // this.loadProgress = 100;\n // })\n // .catch(e => {\n // this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n // console.log('[VIEW] Loading error', e);\n // });\n // }\n\n // async handlePageRendered(e: any) {\n // e.stopPropagation();\n //\n // const domPage = e.detail as IDocumentPageInfo;\n // this.domPages[domPage.pageNumber] = domPage;\n // await this.renderPage(domPage.pageNumber);\n // }\n\n async handleFieldChange(field: IDocumentField, e: any, optionId?: string) {\n console.log('fieldChange', field, e);\n switch (field.type) {\n case 'textbox':\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n if (e.response?.status === 401 && e.response?.data?.error === 'jwt expired') {\n console.log('jwt expired');\n }\n console.log('Error updating', e);\n });\n break;\n\n case 'checkbox_group':\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: {options: [{id: optionId, checked: e.detail}]}})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n console.log('Error updating', e);\n });\n break;\n\n case 'radio_button_group':\n const options = field.settings.options.map(option => ({id: option.id, selected: optionId === option.id}));\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: {options}})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n console.log('Error updating', e);\n });\n break;\n\n case 'dropdown':\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n console.log('Error updating', e);\n });\n break;\n\n case 'initial':\n console.log('Got initial', e.detail);\n break;\n\n case 'signature':\n console.log('Got signature', e.detail);\n break;\n }\n }\n\n handlePageRendered(e) {\n const pageInfo = e.detail as IDocumentPageInfo;\n console.log('[SIGN] Page rendered', pageInfo);\n\n EnvelopeStore.envelope.recipients.map(recipient => {\n const fields = recipient.fields.filter(field => field.page === pageInfo.pageNumber);\n // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);\n console.log('[SIGN] Fields on page', fields);\n fields.forEach(field => {\n const el = renderDocumentField(field, pageInfo, getRoleIndex(EnvelopeStore.roleNames, field.recipient_role), {disabled: true, editable: false, draggable: false});\n if (!el) {\n return;\n }\n\n el.addEventListener('input', e => {\n console.log('Field input', e.target.value, e.target);\n this.handleFieldChange(field, e);\n });\n\n el.setAttribute('xScale', pageInfo.xScale);\n el.setAttribute('yScale', pageInfo.yScale);\n\n // interact(el).draggable({\n // listeners: {\n // start(event) {\n // console.log('[FIELDS] Drag started', event.type, event.target);\n // },\n // move(event) {\n // const oldX = +(event.target.getAttribute('posX') || 0);\n // const oldY = +(event.target.getAttribute('posY') || 0);\n // const xScale = +(event.target.getAttribute('xScale') || 1);\n // const yScale = +(event.target.getAttribute('yScale') || 1);\n // const newX = event.dx / xScale + oldX;\n // const newY = event.dy / yScale + oldY;\n // event.target.setAttribute('posX', newX);\n // event.target.setAttribute('posy', newY);\n // updateCssTransform(event.target, 'translate', `${newX}px, ${newY}px`);\n // },\n // end(event) {\n // console.log('[FIELDS] Drag ended', event);\n // // event.target.setAttribute('posX', 0);\n // // event.target.setAttribute('posy', 0);\n // // updateCssTransform(event.target, 'translate', `${0}px, ${0}px`);\n // },\n // },\n // });\n });\n });\n }\n\n render() {\n console.log('[VIEW] Rendering', EnvelopeStore.error, EnvelopeStore.loading, EnvelopeStore.envelope);\n if (EnvelopeStore.loading || !EnvelopeStore.envelope) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n if (EnvelopeStore.error) {\n return (\n <Host>\n <div>{EnvelopeStore.error}</div>\n </Host>\n );\n }\n\n return (\n <Host>\n {(EnvelopeStore.envelope?.documents || []).map(envelopeDocument => {\n const pages = [...(envelopeDocument?.pages || [])];\n pages.sort((a, b) => a.sequence - b.sequence);\n\n return (\n <Fragment>\n {pages.map(page => (\n <verdocs-document-page\n pageImageUri={page.display_uri}\n virtualWidth={612}\n virtualHeight={792}\n pageNumber={page.sequence}\n onPageRendered={e => this.handlePageRendered(e)}\n layers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n ))}\n </Fragment>\n );\n })}\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"verdocs-view.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-view/verdocs-view.tsx"],"names":[],"mappings":"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","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Component, h, Element, Event, Host, Prop, EventEmitter, Fragment} from '@stencil/core';\nimport {getRoleIndex, renderDocumentField, savePDF} from '../../../utils/utils';\nimport {getEnvelopeById} from '../../../utils/Envelopes';\nimport EnvelopeStore from '../../../utils/envelopeStore';\nimport {IDocumentPageInfo} from '../../../utils/Types';\nimport {SDKError} from '../../../utils/errors';\n\nconst PrintIcon = `<svg focusable=\"false\" aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3zm-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12V3z\"></path></svg>`;\n\nconst DownloadIcon = `<svg focusable=\"false\" aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M5 20h14v-2H5v2zM19 9h-4V3H9v6H5l7 7 7-7z\"></path></svg>`;\n\n/**\n * Render the documents attached to an envelope in read-only (view) mode. All documents are displayed in order.\n */\n@Component({\n tag: 'verdocs-view',\n styleUrl: 'verdocs-view.scss',\n shadow: false,\n})\nexport class VerdocsView {\n @Element() component: HTMLElement;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The envelope ID to render. Set ONE OF templateId or envelopeId. If both are set, envelopeId will be ignored.\n */\n @Prop() envelopeId: string = '';\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n componentWillLoad() {\n this.endpoint.loadSession();\n }\n\n // TODO: Handling signing vs preview-as-user cases\n // TODO: Handle anonymous case and failure to load due to not being logged in\n async componentDidLoad() {\n if (!this.envelopeId) {\n console.error(`[VIEW] Missing reuqired envelopeId`);\n return;\n }\n\n try {\n await getEnvelopeById(this.endpoint, this.envelopeId);\n } catch (e) {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n // Determine whether a page is \"rotated\" (in either direction)\n // isRotated(rotation) {\n // return rotation !== 0 && rotation % 180 !== 0;\n // }\n\n // Render one document page. Note that pageNumber is 1-based.\n // async renderPage(pageNumber: number): Promise<void> {\n // const domPage = this.domPages[pageNumber];\n //\n // // Two async operations happen here, loading the PDF and rendering the DOM div/canvas placeholders to draw the pages on.\n // if (!domPage) {\n // console.log('[VIEW] Skipping rendering page not yet in DOM', {pageNumber});\n // return;\n // }\n //\n // const pageMetrics = this.sourcePageMetrics[pageNumber];\n //\n // console.log('[VIEW] Rendering page', {pageNumber, pageMetrics, domPage});\n // try {\n // // const pdfPage = await this.pdfDocument.getPage(pageNumber);\n // // const viewport = pdfPage.getViewport({scale: domPage.xScale});\n // // console.log('[VIEW] Page viewport', domPage.xScale, viewport);\n //\n // // const canvas = document.getElementById(`${domPage.containerId}-page`) as HTMLCanvasElement | null;\n // // if (!canvas) {\n // // console.log('[VIEW] Unable to find canvas element');\n // // return;\n // // }\n // //\n // // canvas.width = domPage.renderedWidth;\n // // canvas.height = domPage.renderedHeight;\n // // const canvasContext = canvas.getContext('2d');\n // // canvasContext.clearRect(0, 0, domPage.renderedWidth, domPage.renderedHeight);\n // // await pdfPage.render({canvasContext, viewport});\n //\n // this.pageRendered.emit({\n // renderedPage: domPage,\n // sourcePageMetrics: pageMetrics,\n // pages: this.domPages,\n // });\n // } catch (e) {\n // this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n // console.warn('[VIEW] Error rendering page', e);\n // }\n // }\n\n // async renderPages(): Promise<void> {\n // const pageNumbersToRender = integerSequence(1, this.numPages);\n // for await (let pageNumber of pageNumbersToRender) {\n // try {\n // await this.renderPage(pageNumber);\n // } catch (e) {\n // this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n // console.warn('[VIEW] Error rendering pages', e);\n // }\n // }\n // }\n\n // onProgress(progress: OnProgressParameters) {\n // console.log(`[VIEW] Progress ${Math.floor((progress.loaded / progress.total) * 100)} (${progress.loaded} / ${progress.total})`);\n // this.loadProgress = Math.floor((100 * progress.loaded) / progress.total);\n // }\n\n // After a document is done loading, go through its pages to get their dimensions\n // async parsePageMetrics(pdfDocument: pdfjsLib.PDFDocumentProxy) {\n // const pageNumbersToRender = integerSequence(1, pdfDocument.numPages);\n //\n // for await (let pageNumber of pageNumbersToRender) {\n // const pdfPage = await pdfDocument.getPage(1);\n // const [pageX0, pageY0, pageX1, pageY1] = pdfPage.view;\n // this.sourcePageMetrics[pageNumber] = {width: pageX1 - pageX0, height: pageY1 - pageY0};\n // }\n //\n // console.log('[VIEW] Parsed page metrics', this.sourcePageMetrics);\n // }\n\n // loadAndRender(src: string): void {\n // console.log('[VIEW] Loading', src);\n //\n // const token = this.endpoint.getToken();\n // const httpHeaders = token ? {Authorization: `Bearer ${token}`} : {};\n //\n // const source = {\n // url: src,\n // cMapUrl: CMAPS_URL,\n // cMapPacked: true,\n // httpHeaders,\n // withCredentials: true,\n // stopAtErrors: true,\n // verbosity: pdfjsLib.VerbosityLevel.WARNINGS,\n // // verbosity: pdfjsLib.VerbosityLevel.INFOS,\n // } as DocumentInitParameters;\n //\n // // @ts-ignore\n // const loadingTask = pdf.getDocument(source, null, null, this.onProgress);\n // loadingTask.onProgress = this.onProgress;\n // loadingTask.promise\n // .then(async (pdfDocument: pdfjsLib.PDFDocumentProxy) => {\n // await this.parsePageMetrics(pdfDocument);\n //\n // this.pdfDocument = pdfDocument;\n // this.numPages = pdfDocument.numPages;\n // this.fingerprints = pdfDocument.fingerprints;\n // console.log(`[VIEW] Got PDF document fingerprints \"${this.fingerprints.join(', ')}\", ${this.numPages} page(s)`);\n //\n // // We don't try to render the pages here, setting loadProtress triggers that by adding the individual page entries in\n // // DOM in render() below. Each page then fires onPageRendered when it is ready to receive content.\n // this.loadProgress = 100;\n // })\n // .catch(e => {\n // this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n // console.log('[VIEW] Loading error', e);\n // });\n // }\n\n // async handlePageRendered(e: any) {\n // e.stopPropagation();\n //\n // const domPage = e.detail as IDocumentPageInfo;\n // this.domPages[domPage.pageNumber] = domPage;\n // await this.renderPage(domPage.pageNumber);\n // }\n\n attachFieldAttributes(pageInfo, roleIndex, el) {\n el.setAttribute('roleindex', roleIndex);\n el.setAttribute('xScale', pageInfo.xScale);\n el.setAttribute('yScale', pageInfo.yScale);\n }\n\n handlePageRendered(e) {\n const pageInfo = e.detail as IDocumentPageInfo;\n console.log('[SIGN] Page rendered', pageInfo);\n\n EnvelopeStore.envelope.recipients.map(recipient => {\n const fields = recipient.fields.filter(field => field.page === pageInfo.pageNumber);\n // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);\n console.log('[SIGN] Fields on page', fields);\n fields.forEach(field => {\n const roleIndex = getRoleIndex(EnvelopeStore.roleNames, field.recipient_role);\n const el = renderDocumentField(field, pageInfo, roleIndex, {\n disabled: true,\n editable: false,\n draggable: false,\n done: true,\n });\n if (!el) {\n return;\n }\n\n if (Array.isArray(el)) {\n el.map(e => this.attachFieldAttributes(pageInfo, roleIndex, e));\n } else {\n this.attachFieldAttributes(pageInfo, roleIndex, el);\n }\n\n // interact(el).draggable({\n // listeners: {\n // start(event) {\n // console.log('[FIELDS] Drag started', event.type, event.target);\n // },\n // move(event) {\n // const oldX = +(event.target.getAttribute('posX') || 0);\n // const oldY = +(event.target.getAttribute('posY') || 0);\n // const xScale = +(event.target.getAttribute('xScale') || 1);\n // const yScale = +(event.target.getAttribute('yScale') || 1);\n // const newX = event.dx / xScale + oldX;\n // const newY = event.dy / yScale + oldY;\n // event.target.setAttribute('posX', newX);\n // event.target.setAttribute('posy', newY);\n // updateCssTransform(event.target, 'translate', `${newX}px, ${newY}px`);\n // },\n // end(event) {\n // console.log('[FIELDS] Drag ended', event);\n // // event.target.setAttribute('posX', 0);\n // // event.target.setAttribute('posy', 0);\n // // updateCssTransform(event.target, 'translate', `${0}px, ${0}px`);\n // },\n // },\n // });\n });\n });\n }\n\n render() {\n console.log('[VIEW] Rendering', EnvelopeStore.error, EnvelopeStore.loading, EnvelopeStore.envelope);\n if (EnvelopeStore.loading || !EnvelopeStore.envelope) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n if (EnvelopeStore.error) {\n return (\n <Host>\n <div>{EnvelopeStore.error}</div>\n </Host>\n );\n }\n\n return (\n <Host>\n <div class=\"header\">\n <div class=\"inner\">\n <div class=\"toolbar\">\n <div class=\"tools\">\n <Fragment>\n <img src=\"https://verdocs.com/assets/white-logo.svg\" alt=\"Verdocs Logo\" class=\"logo\" />\n <div class=\"title\">{EnvelopeStore.envelope.name}</div>\n <div style={{flex: '1'}} />\n <div innerHTML={PrintIcon} style={{width: '24px', height: '24px', fill: '#ffffff', cursor: 'pointer'}} onClick={() => window.print()} />\n <div\n innerHTML={DownloadIcon}\n style={{width: '24px', height: '24px', fill: '#ffffff', cursor: 'pointer', marginLeft: '16px', maginRight: '30px'}}\n onClick={() => savePDF(this.endpoint, EnvelopeStore.envelope, EnvelopeStore.envelope.envelope_document_id).catch(() => {})}\n />\n </Fragment>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"document\">\n {(EnvelopeStore.envelope?.documents || []).map(envelopeDocument => {\n const pages = [...(envelopeDocument?.pages || [])];\n pages.sort((a, b) => a.sequence - b.sequence);\n\n return (\n <Fragment>\n {pages.map(page => (\n <verdocs-document-page\n pageImageUri={page.display_uri}\n virtualWidth={612}\n virtualHeight={792}\n pageNumber={page.sequence}\n onPageRendered={e => this.handlePageRendered(e)}\n layers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n ))}\n </Fragment>\n );\n })}\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verdocs-view.stories.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-view/verdocs-view.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,eAAe;EACb,KAAK,EAAE,aAAa;EACpB,SAAS,EAAE,cAAc;EACzB,IAAI,EAAE;IACJ,UAAU,EAAE,sCAAsC;GACnD;EACD,QAAQ,EAAE,EAAE;EACZ,UAAU,EAAE;IACV,MAAM,EAAE,YAAY;GACrB;CACM,CAAC;AAEV,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAC,UAAU,EAAC,EAAE,EAAE,CAAC,IAAI,CAAA,6BAA6B,UAAU,KAAK,CAAC","sourcesContent":["import {html} from 'lit-html';\nimport {Meta} from '@storybook/web-components';\n\nexport default {\n title: 'Embeds/View',\n component: 'verdocs-view',\n args: {\n envelopeId: '
|
|
1
|
+
{"version":3,"file":"verdocs-view.stories.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-view/verdocs-view.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,eAAe;EACb,KAAK,EAAE,aAAa;EACpB,SAAS,EAAE,cAAc;EACzB,IAAI,EAAE;IACJ,UAAU,EAAE,sCAAsC;GACnD;EACD,QAAQ,EAAE,EAAE;EACZ,UAAU,EAAE;IACV,MAAM,EAAE,YAAY;GACrB;CACM,CAAC;AAEV,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAC,UAAU,EAAC,EAAE,EAAE,CAAC,IAAI,CAAA,6BAA6B,UAAU,KAAK,CAAC","sourcesContent":["import {html} from 'lit-html';\nimport {Meta} from '@storybook/web-components';\n\nexport default {\n title: 'Embeds/View',\n component: 'verdocs-view',\n args: {\n envelopeId: '92f3dd1e-9ff2-44c3-8c96-32a5b650ed6d',\n },\n argTypes: {},\n parameters: {\n layout: 'fullscreen',\n },\n} as Meta;\n\nexport const View = ({envelopeId}) => html`<verdocs-view .envelopeId=${envelopeId} />`;\n"]}
|
|
@@ -3,12 +3,15 @@ import EnvelopeStore from './envelopeStore';
|
|
|
3
3
|
// Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into
|
|
4
4
|
// child elements.
|
|
5
5
|
export const getEnvelopeById = async (endpoint, envelopeId) => {
|
|
6
|
-
var _a;
|
|
6
|
+
var _a, _b;
|
|
7
7
|
EnvelopeStore.envelope = null;
|
|
8
8
|
if (!envelopeId) {
|
|
9
9
|
console.log(`[ENVELOPES] Missing required envelope ID`);
|
|
10
10
|
return;
|
|
11
11
|
}
|
|
12
|
+
if (((_a = EnvelopeStore.envelope) === null || _a === void 0 ? void 0 : _a.id) === envelopeId) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
12
15
|
EnvelopeStore.error = '';
|
|
13
16
|
EnvelopeStore.loading = true;
|
|
14
17
|
try {
|
|
@@ -23,7 +26,7 @@ export const getEnvelopeById = async (endpoint, envelopeId) => {
|
|
|
23
26
|
}
|
|
24
27
|
catch (e) {
|
|
25
28
|
EnvelopeStore.loading = false;
|
|
26
|
-
EnvelopeStore.error = ((
|
|
29
|
+
EnvelopeStore.error = ((_b = e === null || e === void 0 ? void 0 : e.response) === null || _b === void 0 ? void 0 : _b.status) === 401 ? 'Authentication required' : e.message;
|
|
27
30
|
console.log('[ENVELOPES] Error loading envelope', e);
|
|
28
31
|
throw e;
|
|
29
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Envelopes.js","sourceRoot":"","sources":["../../src/utils/Envelopes.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,uIAAuI;AACvI,kBAAkB;AAClB,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,QAAyB,EAAE,UAAkB,EAAE,EAAE;;EACrF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;EAE9B,IAAI,CAAC,UAAU,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO;GACR;EAED,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;EACzB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;EAE7B,IAAI;IACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,EAAE;MACb,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;MACnD,OAAO;KACR;IAED,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAClC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;GAC/B;EAAC,OAAO,CAAC,EAAE;IACV,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,aAAa,CAAC,KAAK,GAAG,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,0CAAE,MAAM,MAAK,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC;GACT;AACH,CAAC,CAAC","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {getEnvelope} from '@verdocs/js-sdk/Envelopes/Envelopes';\nimport EnvelopeStore from './envelopeStore';\n\n// Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into\n// child elements.\nexport const getEnvelopeById = async (endpoint: VerdocsEndpoint, envelopeId: string) => {\n EnvelopeStore.envelope = null;\n\n if (!envelopeId) {\n console.log(`[ENVELOPES] Missing required envelope ID`);\n return;\n }\n\n EnvelopeStore.error = '';\n EnvelopeStore.loading = true;\n\n try {\n console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);\n const envelope = await getEnvelope(endpoint, envelopeId, true);\n if (!envelope) {\n console.log('[ENVELOPES] Unable to load envelope');\n return;\n }\n\n EnvelopeStore.envelope = envelope;\n EnvelopeStore.loading = false;\n } catch (e) {\n EnvelopeStore.loading = false;\n EnvelopeStore.error = e?.response?.status === 401 ? 'Authentication required' : e.message;\n console.log('[ENVELOPES] Error loading envelope', e);\n throw e;\n }\n};\n"]}
|
|
1
|
+
{"version":3,"file":"Envelopes.js","sourceRoot":"","sources":["../../src/utils/Envelopes.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,uIAAuI;AACvI,kBAAkB;AAClB,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,QAAyB,EAAE,UAAkB,EAAE,EAAE;;EACrF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;EAE9B,IAAI,CAAC,UAAU,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO;GACR;EAED,IAAI,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,EAAE,MAAK,UAAU,EAAE;IAC7C,OAAO;GACR;EAED,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;EACzB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;EAE7B,IAAI;IACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,EAAE;MACb,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;MACnD,OAAO;KACR;IAED,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAClC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;GAC/B;EAAC,OAAO,CAAC,EAAE;IACV,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,aAAa,CAAC,KAAK,GAAG,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,0CAAE,MAAM,MAAK,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC;GACT;AACH,CAAC,CAAC","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {getEnvelope} from '@verdocs/js-sdk/Envelopes/Envelopes';\nimport EnvelopeStore from './envelopeStore';\n\n// Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into\n// child elements.\nexport const getEnvelopeById = async (endpoint: VerdocsEndpoint, envelopeId: string) => {\n EnvelopeStore.envelope = null;\n\n if (!envelopeId) {\n console.log(`[ENVELOPES] Missing required envelope ID`);\n return;\n }\n\n if (EnvelopeStore.envelope?.id === envelopeId) {\n return;\n }\n\n EnvelopeStore.error = '';\n EnvelopeStore.loading = true;\n\n try {\n console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);\n const envelope = await getEnvelope(endpoint, envelopeId, true);\n if (!envelope) {\n console.log('[ENVELOPES] Unable to load envelope');\n return;\n }\n\n EnvelopeStore.envelope = envelope;\n EnvelopeStore.loading = false;\n } catch (e) {\n EnvelopeStore.loading = false;\n EnvelopeStore.error = e?.response?.status === 401 ? 'Authentication required' : e.message;\n console.log('[ENVELOPES] Error loading envelope', e);\n throw e;\n }\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import { Envelopes } from '@verdocs/js-sdk/Envelopes';
|
|
2
2
|
import { rescale } from '@verdocs/js-sdk/Utils/Fields';
|
|
3
3
|
export const integerSequence = (start, count) => Array(count)
|
|
4
4
|
.fill(1)
|
|
@@ -63,7 +63,7 @@ export const getFieldOptionId = (field, index) => {
|
|
|
63
63
|
return `verdocs-doc-fld-${field.name}-${index}`;
|
|
64
64
|
};
|
|
65
65
|
export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) => {
|
|
66
|
-
const { disabled = false, editable = false, draggable = false } = fieldOptions;
|
|
66
|
+
const { disabled = false, editable = false, draggable = false, done = false } = fieldOptions;
|
|
67
67
|
const controlsDiv = document.getElementById(docPage.containerId + '-controls');
|
|
68
68
|
if (!controlsDiv) {
|
|
69
69
|
return;
|
|
@@ -89,20 +89,27 @@ export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) =>
|
|
|
89
89
|
el.setAttribute('id', id);
|
|
90
90
|
el.setAttribute('roleIndex', roleIndex);
|
|
91
91
|
if (disabled) {
|
|
92
|
+
el.setAttribute('tabindex', -1);
|
|
92
93
|
el.setAttribute('disabled', true);
|
|
93
94
|
}
|
|
95
|
+
else {
|
|
96
|
+
el.setAttribute('tabIndex', 1);
|
|
97
|
+
}
|
|
94
98
|
if (editable) {
|
|
95
99
|
el.setAttribute('editable', true);
|
|
96
100
|
}
|
|
97
101
|
if (draggable) {
|
|
98
102
|
el.setAttribute('draggable', true);
|
|
99
103
|
}
|
|
104
|
+
if (done) {
|
|
105
|
+
el.setAttribute('done', true);
|
|
106
|
+
}
|
|
100
107
|
setControlStyles(el, field, docPage.xScale, docPage.yScale);
|
|
101
108
|
controlsDiv.appendChild(el);
|
|
102
109
|
return el;
|
|
103
110
|
}
|
|
104
111
|
case 'checkbox_group':
|
|
105
|
-
(field.settings || field.setting || {}).options.
|
|
112
|
+
return (field.settings || field.setting || {}).options.map((_, checkboxIndex) => {
|
|
106
113
|
const id = getFieldOptionId(field, checkboxIndex);
|
|
107
114
|
const existingField = document.getElementById(id);
|
|
108
115
|
if (existingField) {
|
|
@@ -117,32 +124,36 @@ export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) =>
|
|
|
117
124
|
if (disabled) {
|
|
118
125
|
cbEl.setAttribute('disabled', true);
|
|
119
126
|
}
|
|
127
|
+
if (done) {
|
|
128
|
+
cbEl.setAttribute('done', true);
|
|
129
|
+
}
|
|
120
130
|
setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);
|
|
121
131
|
controlsDiv.appendChild(cbEl);
|
|
122
132
|
return cbEl;
|
|
123
133
|
});
|
|
124
|
-
break;
|
|
125
134
|
case 'radio_button_group':
|
|
126
|
-
(field.settings || field.setting || {}).options.
|
|
135
|
+
return (field.settings || field.setting || {}).options.map((_, buttonIndex) => {
|
|
127
136
|
const id = getFieldOptionId(field, buttonIndex);
|
|
128
137
|
const existingField = document.getElementById(id);
|
|
129
138
|
if (existingField) {
|
|
130
139
|
setControlStyles(existingField, field, docPage.xScale, docPage.yScale);
|
|
131
140
|
return;
|
|
132
141
|
}
|
|
133
|
-
const
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
142
|
+
const radioEl = document.createElement(`verdocs-field-radio-button`);
|
|
143
|
+
radioEl.field = field;
|
|
144
|
+
radioEl.setAttribute('id', id);
|
|
145
|
+
radioEl.setAttribute('roleIndex', roleIndex);
|
|
146
|
+
radioEl.setAttribute('option', buttonIndex);
|
|
138
147
|
if (disabled) {
|
|
139
|
-
|
|
148
|
+
radioEl.setAttribute('disabled', true);
|
|
140
149
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
150
|
+
if (done) {
|
|
151
|
+
radioEl.setAttribute('done', true);
|
|
152
|
+
}
|
|
153
|
+
setControlStyles(radioEl, field, docPage.xScale, docPage.yScale, buttonIndex);
|
|
154
|
+
controlsDiv.appendChild(radioEl);
|
|
155
|
+
return radioEl;
|
|
144
156
|
});
|
|
145
|
-
break;
|
|
146
157
|
// case 'attachment':
|
|
147
158
|
// el = document.createElement('verdocs-field-attachment');
|
|
148
159
|
// el.setAttribute('value', result || '');
|
|
@@ -186,4 +197,23 @@ export const updateCssTransform = (el, key, value) => {
|
|
|
186
197
|
`${key}(${value})`,
|
|
187
198
|
].join(' ');
|
|
188
199
|
};
|
|
200
|
+
export const savePDF = async (endpoint, envelope, documentId) => {
|
|
201
|
+
const fileName = `${envelope.name} - ${envelope.updated_at.split('T')[0]}.pdf`;
|
|
202
|
+
const data = await Envelopes.getEnvelopeFile(endpoint, envelope.id, documentId);
|
|
203
|
+
// This is better in React than doing window.href= or similar to trigger a download. For a description of the technique
|
|
204
|
+
// see https://stackoverflow.com/questions/8126623/downloading-canvas-element-to-an-image
|
|
205
|
+
let xhr = new XMLHttpRequest();
|
|
206
|
+
xhr.responseType = 'blob';
|
|
207
|
+
xhr.onload = function () {
|
|
208
|
+
let a = document.createElement('a');
|
|
209
|
+
a.href = window.URL.createObjectURL(xhr.response);
|
|
210
|
+
a.download = fileName;
|
|
211
|
+
a.style.display = 'none';
|
|
212
|
+
document.body.appendChild(a);
|
|
213
|
+
a.click();
|
|
214
|
+
a.remove();
|
|
215
|
+
};
|
|
216
|
+
xhr.open('GET', `data:application/pdf;base64,${data}`);
|
|
217
|
+
xhr.send();
|
|
218
|
+
};
|
|
189
219
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// These should probably all move to JS-SDK\nimport {rescale} from '@verdocs/js-sdk/Utils/Fields';\n// import {getRGBA} from '@verdocs/js-sdk/Utils/Colors';\nimport {ITemplateField} from '@verdocs/js-sdk/Templates/Types';\nimport {IDocumentField} from '@verdocs/js-sdk/Envelopes/Types';\nimport {IDocumentPageInfo} from './Types';\n\nexport const integerSequence = (start: number, count: number): number[] =>\n Array(count)\n .fill(1)\n .map((_, index) => index + start);\n\nexport const fullNameToInitials = (name: string) =>\n name\n .split(' ')\n .map(word => word[0])\n .join('');\n\nexport const defaultWidth = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 82;\n }\n\n return 150;\n};\n\nexport const defaultHeight = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 41;\n }\n\n return 50;\n};\n\nexport const setControlStyles = (el: HTMLElement, field: ITemplateField | IDocumentField, xScale: number, yScale: number, option?: number) => {\n const settings = (field as ITemplateField).setting || (field as IDocumentField).settings;\n let {x = 0, y = 0, width = defaultWidth(field), height = defaultHeight(field)} = settings;\n\n const optionSettings = option !== undefined && settings.options[option] ? settings.options[option] : null;\n if (optionSettings) {\n x = optionSettings.x ?? x;\n y = optionSettings.y ?? y;\n width = optionSettings.width ?? width;\n height = optionSettings.height ?? height;\n }\n\n el.style.width = `${width}px`;\n el.style.height = `${height}px`;\n el.style.position = 'absolute';\n el.style.left = `${rescale(xScale, x)}px`;\n el.style.bottom = `${rescale(yScale, y)}px`;\n el.style.transform = `scale(${xScale}, ${yScale})`;\n // el.style.backgroundColor = field['rgba'] || getRGBA(roleIndex);\n};\n\nexport const getFieldId = (field: ITemplateField | IDocumentField) => {\n return `verdocs-doc-fld-${field.name}`;\n};\n\nexport const getFieldOptionId = (field: ITemplateField | IDocumentField, index: number) => {\n return `verdocs-doc-fld-${field.name}-${index}`;\n};\n\ninterface IFieldOptions {\n disabled?: boolean;\n editable?: boolean;\n draggable?: boolean;\n}\n\nexport const renderDocumentField = (field: ITemplateField | IDocumentField, docPage: IDocumentPageInfo, roleIndex: number, fieldOptions: IFieldOptions) => {\n const {disabled = false, editable = false, draggable = false} = fieldOptions;\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n switch (field.type) {\n case 'attachment':\n case 'date':\n case 'dropdown':\n case 'initial':\n case 'payment':\n case 'signature':\n case 'timestamp':\n case 'textarea':\n case 'textbox': {\n const id = getFieldId(field);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const el: any = document.createElement(`verdocs-field-${field.type}`);\n el.field = field;\n el.setAttribute('id', id);\n el.setAttribute('roleIndex', roleIndex);\n if (disabled) {\n el.setAttribute('disabled', true);\n }\n if (editable) {\n el.setAttribute('editable', true);\n }\n if (draggable) {\n el.setAttribute('draggable', true);\n }\n setControlStyles(el, field, docPage.xScale, docPage.yScale);\n controlsDiv.appendChild(el);\n\n return el;\n }\n\n case 'checkbox_group':\n ((field as any).settings || (field as any).setting || {}).options.forEach((_, checkboxIndex) => {\n const id = getFieldOptionId(field, checkboxIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const cbEl: any = document.createElement(`verdocs-field-checkbox`);\n cbEl.field = field;\n cbEl.setAttribute('id', id);\n cbEl.setAttribute('roleIndex', roleIndex);\n cbEl.setAttribute('option', checkboxIndex);\n if (disabled) {\n cbEl.setAttribute('disabled', true);\n }\n setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);\n controlsDiv.appendChild(cbEl);\n\n return cbEl;\n });\n\n break;\n\n case 'radio_button_group':\n ((field as any).settings || (field as any).setting || {}).options.forEach((_, buttonIndex) => {\n const id = getFieldOptionId(field, buttonIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const cbEl: any = document.createElement(`verdocs-field-radio-button`);\n cbEl.field = field;\n cbEl.setAttribute('id', id);\n cbEl.setAttribute('roleIndex', roleIndex);\n cbEl.setAttribute('option', buttonIndex);\n if (disabled) {\n cbEl.setAttribute('disabled', true);\n }\n setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, buttonIndex);\n controlsDiv.appendChild(cbEl);\n\n return cbEl;\n });\n\n break;\n\n // case 'attachment':\n // el = document.createElement('verdocs-field-attachment');\n // el.setAttribute('value', result || '');\n // break;\n // case 'payment':\n // el = document.createElement('verdocs-field-payment');\n // break;\n default:\n console.log('[PREVIEW] Skipping unsupported field type', field);\n return null;\n }\n};\n\nexport const getRoleIndex = (roles: string[], role: string) => roles.indexOf(role) || 0;\n\n// TODO: We can clean this up a lot if we alter the API to emit both setting and settings regardless of the source type,\n// but then merge the SDK types to encourage developers to use just `settings`.\nexport const getFieldSettings = (field: ITemplateField | IDocumentField) => {\n if ((field as ITemplateField).setting) {\n return (field as ITemplateField).setting;\n }\n\n if ((field as IDocumentField).settings) {\n return (field as IDocumentField).settings;\n }\n\n return {x: 0, y: 0, required: false, disabled: false, result: '', value: ''};\n};\n\n/**\n * Helper function to safely set/update components in a CSS transform attribute. Transform is normally set as a string of\n * `operation1(param) operation2(param) ...` components, which makes updating them a bit of a pain. This will remove the\n * specified component if it's already set and replace it with the new value, without touching the other components that\n * may already be set. Note that this operation moves the component to the end of the transform chain so it's not meant\n * to be used for order-sensitive components e.g. translate-then-rotate.\n */\nexport const updateCssTransform = (el: HTMLElement, key: string, value: string) => {\n // e.g. 'scale(1.87908, 1.87908) translate(0px, 0px);'\n const currentTransform = el.style.transform;\n // e.g. ['scale(1.87908, 1.87908)', 'scale', '1.87908, 1.87908', ...], [ 'translate(0px, 0px)', 'translate', '0px, 0px']]\n const components = [...currentTransform.matchAll(/(\\w+)\\(([^)]*)\\)/gi)];\n el.style.transform = [\n components //\n .filter(component => component[1] !== key) // Remove the entry if it's already set\n .map(component => component[0]), // Convert back the remaining entries\n `${key}(${value})`,\n ].join(' ');\n};\n"]}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// These should probably all move to JS-SDK\nimport {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Envelopes} from '@verdocs/js-sdk/Envelopes';\nimport {rescale} from '@verdocs/js-sdk/Utils/Fields';\nimport {ITemplateField} from '@verdocs/js-sdk/Templates/Types';\nimport {IDocumentField, IEnvelope} from '@verdocs/js-sdk/Envelopes/Types';\nimport {IDocumentPageInfo} from './Types';\n\nexport const integerSequence = (start: number, count: number): number[] =>\n Array(count)\n .fill(1)\n .map((_, index) => index + start);\n\nexport const fullNameToInitials = (name: string) =>\n name\n .split(' ')\n .map(word => word[0])\n .join('');\n\nexport const defaultWidth = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 82;\n }\n\n return 150;\n};\n\nexport const defaultHeight = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 41;\n }\n\n return 50;\n};\n\nexport const setControlStyles = (el: HTMLElement, field: ITemplateField | IDocumentField, xScale: number, yScale: number, option?: number) => {\n const settings = (field as ITemplateField).setting || (field as IDocumentField).settings;\n let {x = 0, y = 0, width = defaultWidth(field), height = defaultHeight(field)} = settings;\n\n const optionSettings = option !== undefined && settings.options[option] ? settings.options[option] : null;\n if (optionSettings) {\n x = optionSettings.x ?? x;\n y = optionSettings.y ?? y;\n width = optionSettings.width ?? width;\n height = optionSettings.height ?? height;\n }\n\n el.style.width = `${width}px`;\n el.style.height = `${height}px`;\n el.style.position = 'absolute';\n el.style.left = `${rescale(xScale, x)}px`;\n el.style.bottom = `${rescale(yScale, y)}px`;\n el.style.transform = `scale(${xScale}, ${yScale})`;\n // el.style.backgroundColor = field['rgba'] || getRGBA(roleIndex);\n};\n\nexport const getFieldId = (field: ITemplateField | IDocumentField) => {\n return `verdocs-doc-fld-${field.name}`;\n};\n\nexport const getFieldOptionId = (field: ITemplateField | IDocumentField, index: number) => {\n return `verdocs-doc-fld-${field.name}-${index}`;\n};\n\ninterface IFieldOptions {\n disabled?: boolean;\n editable?: boolean;\n draggable?: boolean;\n done?: boolean;\n}\n\nexport const renderDocumentField = (field: ITemplateField | IDocumentField, docPage: IDocumentPageInfo, roleIndex: number, fieldOptions: IFieldOptions) => {\n const {disabled = false, editable = false, draggable = false, done = false} = fieldOptions;\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n switch (field.type) {\n case 'attachment':\n case 'date':\n case 'dropdown':\n case 'initial':\n case 'payment':\n case 'signature':\n case 'timestamp':\n case 'textarea':\n case 'textbox': {\n const id = getFieldId(field);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const el: any = document.createElement(`verdocs-field-${field.type}`);\n el.field = field;\n el.setAttribute('id', id);\n el.setAttribute('roleIndex', roleIndex);\n\n if (disabled) {\n el.setAttribute('tabindex', -1);\n el.setAttribute('disabled', true);\n } else {\n el.setAttribute('tabIndex', 1);\n }\n\n if (editable) {\n el.setAttribute('editable', true);\n }\n\n if (draggable) {\n el.setAttribute('draggable', true);\n }\n\n if (done) {\n el.setAttribute('done', true);\n }\n\n setControlStyles(el, field, docPage.xScale, docPage.yScale);\n controlsDiv.appendChild(el);\n\n return el;\n }\n\n case 'checkbox_group':\n return ((field as any).settings || (field as any).setting || {}).options.map((_, checkboxIndex) => {\n const id = getFieldOptionId(field, checkboxIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const cbEl: any = document.createElement(`verdocs-field-checkbox`);\n cbEl.field = field;\n cbEl.setAttribute('id', id);\n cbEl.setAttribute('roleIndex', roleIndex);\n cbEl.setAttribute('option', checkboxIndex);\n if (disabled) {\n cbEl.setAttribute('disabled', true);\n }\n if (done) {\n cbEl.setAttribute('done', true);\n }\n setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);\n controlsDiv.appendChild(cbEl);\n\n return cbEl;\n });\n\n case 'radio_button_group':\n return ((field as any).settings || (field as any).setting || {}).options.map((_, buttonIndex) => {\n const id = getFieldOptionId(field, buttonIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const radioEl: any = document.createElement(`verdocs-field-radio-button`);\n radioEl.field = field;\n radioEl.setAttribute('id', id);\n radioEl.setAttribute('roleIndex', roleIndex);\n radioEl.setAttribute('option', buttonIndex);\n if (disabled) {\n radioEl.setAttribute('disabled', true);\n }\n if (done) {\n radioEl.setAttribute('done', true);\n }\n setControlStyles(radioEl, field, docPage.xScale, docPage.yScale, buttonIndex);\n controlsDiv.appendChild(radioEl);\n\n return radioEl;\n });\n\n // case 'attachment':\n // el = document.createElement('verdocs-field-attachment');\n // el.setAttribute('value', result || '');\n // break;\n // case 'payment':\n // el = document.createElement('verdocs-field-payment');\n // break;\n default:\n console.log('[PREVIEW] Skipping unsupported field type', field);\n return null;\n }\n};\n\nexport const getRoleIndex = (roles: string[], role: string) => roles.indexOf(role) || 0;\n\n// TODO: We can clean this up a lot if we alter the API to emit both setting and settings regardless of the source type,\n// but then merge the SDK types to encourage developers to use just `settings`.\nexport const getFieldSettings = (field: ITemplateField | IDocumentField) => {\n if ((field as ITemplateField).setting) {\n return (field as ITemplateField).setting;\n }\n\n if ((field as IDocumentField).settings) {\n return (field as IDocumentField).settings;\n }\n\n return {x: 0, y: 0, required: false, disabled: false, result: '', value: ''};\n};\n\n/**\n * Helper function to safely set/update components in a CSS transform attribute. Transform is normally set as a string of\n * `operation1(param) operation2(param) ...` components, which makes updating them a bit of a pain. This will remove the\n * specified component if it's already set and replace it with the new value, without touching the other components that\n * may already be set. Note that this operation moves the component to the end of the transform chain so it's not meant\n * to be used for order-sensitive components e.g. translate-then-rotate.\n */\nexport const updateCssTransform = (el: HTMLElement, key: string, value: string) => {\n // e.g. 'scale(1.87908, 1.87908) translate(0px, 0px);'\n const currentTransform = el.style.transform;\n // e.g. ['scale(1.87908, 1.87908)', 'scale', '1.87908, 1.87908', ...], [ 'translate(0px, 0px)', 'translate', '0px, 0px']]\n const components = [...currentTransform.matchAll(/(\\w+)\\(([^)]*)\\)/gi)];\n el.style.transform = [\n components //\n .filter(component => component[1] !== key) // Remove the entry if it's already set\n .map(component => component[0]), // Convert back the remaining entries\n `${key}(${value})`,\n ].join(' ');\n};\n\nexport const savePDF = async (endpoint: VerdocsEndpoint, envelope: IEnvelope, documentId: string) => {\n const fileName = `${envelope.name} - ${envelope.updated_at.split('T')[0]}.pdf`;\n const data = await Envelopes.getEnvelopeFile(endpoint, envelope.id, documentId);\n\n // This is better in React than doing window.href= or similar to trigger a download. For a description of the technique\n // see https://stackoverflow.com/questions/8126623/downloading-canvas-element-to-an-image\n let xhr = new XMLHttpRequest();\n xhr.responseType = 'blob';\n xhr.onload = function () {\n let a = document.createElement('a');\n a.href = window.URL.createObjectURL(xhr.response);\n a.download = fileName;\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n a.remove();\n };\n\n xhr.open('GET', `data:application/pdf;base64,${data}`);\n xhr.send();\n};\n"]}
|