@verdocs/web-sdk 6.8.7 → 6.8.9
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/{Datastore-B-sxWSPD.js → Datastore-C-Pojt3E.js} +3 -3
- package/dist/{esm-es5/Datastore-bS8INhRF.js.map → cjs/Datastore-C-Pojt3E.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{utils-ecG41L2k.js → utils-kkGeJs-8.js} +6 -3
- package/dist/cjs/utils-kkGeJs-8.js.map +1 -0
- package/dist/cjs/verdocs-adopt-signature-dialog_7.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-build.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-checkbox_5.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-contact-picker.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-download-dialog_4.cjs.entry.js +2 -2
- package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-envelope-recipient-summary.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-field-attachment_11.cjs.entry.js +119 -51
- package/dist/cjs/verdocs-field-payment.cjs.entry.js +16 -9
- package/dist/cjs/verdocs-field-payment.entry.cjs.js.map +1 -1
- package/dist/cjs/verdocs-menu-panel_2.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-pagination_2.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.entry.cjs.js.map +1 -1
- package/dist/cjs/verdocs-preview_6.cjs.entry.js +42 -31
- package/dist/cjs/verdocs-sign.cjs.entry.js +2 -2
- package/dist/cjs/verdocs-signing-progress.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +2 -2
- package/dist/cjs/verdocs-template-settings.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
- package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js +13 -0
- package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +15 -5
- package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +15 -5
- package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +15 -5
- package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +15 -5
- package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +13 -5
- package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +18 -8
- package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js +15 -5
- package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +13 -5
- package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +15 -5
- package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +15 -5
- package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js.map +1 -1
- package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +17 -5
- package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js.map +1 -1
- package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +38 -27
- package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js.map +1 -1
- package/dist/collection/utils/Datastore.js +1 -1
- package/dist/collection/utils/Datastore.js.map +1 -1
- package/dist/collection/utils/utils.js +4 -1
- package/dist/collection/utils/utils.js.map +1 -1
- package/dist/components/{p-CRIrD66O.js → p---tnXjlx.js} +3 -3
- package/dist/components/{p-CRIrD66O.js.map → p---tnXjlx.js.map} +1 -1
- package/dist/components/{p-BgNCVox7.js → p-1oPQs4-S.js} +3 -3
- package/dist/components/{p-BgNCVox7.js.map → p-1oPQs4-S.js.map} +1 -1
- package/dist/components/{p-CFi6VKgU.js → p-2sD6OXzl.js} +19 -10
- package/dist/components/p-2sD6OXzl.js.map +1 -0
- package/dist/components/{p-CWGxLuye.js → p-7dtIf4QF.js} +19 -10
- package/dist/components/p-7dtIf4QF.js.map +1 -0
- package/dist/components/{p-CherENoi.js → p-BCiVZnf0.js} +3 -3
- package/dist/components/{p-CherENoi.js.map → p-BCiVZnf0.js.map} +1 -1
- package/dist/components/{p-DLV8jNf8.js → p-BUaaBFra.js} +17 -10
- package/dist/components/p-BUaaBFra.js.map +1 -0
- package/dist/components/{p-BZRJWqKI.js → p-BVu-nE_L.js} +19 -10
- package/dist/components/p-BVu-nE_L.js.map +1 -0
- package/dist/components/{p-By2QlfRC.js → p-BihWiABu.js} +19 -10
- package/dist/components/p-BihWiABu.js.map +1 -0
- package/dist/components/{p-eZKhg-2i.js → p-BqoZV7Do.js} +3 -3
- package/dist/components/{p-eZKhg-2i.js.map → p-BqoZV7Do.js.map} +1 -1
- package/dist/components/{p-D1tvdWaA.js → p-BrtyCjOf.js} +4 -4
- package/dist/components/{p-D1tvdWaA.js.map → p-BrtyCjOf.js.map} +1 -1
- package/dist/components/{p-tSwumenv.js → p-Bzs-6uU0.js} +3 -3
- package/dist/components/{p-tSwumenv.js.map → p-Bzs-6uU0.js.map} +1 -1
- package/dist/components/{p-Dj_oFCRK.js → p-C02BWoNV.js} +17 -10
- package/dist/components/p-C02BWoNV.js.map +1 -0
- package/dist/{esm/Datastore-bS8INhRF.js → components/p-C7hFgM52.js} +3 -3
- package/dist/components/p-C7hFgM52.js.map +1 -0
- package/dist/components/{p-CjDMm6od.js → p-CD24uAWY.js} +19 -10
- package/dist/components/p-CD24uAWY.js.map +1 -0
- package/dist/components/{p-_igYrwND.js → p-CDR7tIN-.js} +3 -3
- package/dist/components/{p-_igYrwND.js.map → p-CDR7tIN-.js.map} +1 -1
- package/dist/components/{p-tyY7kKNB.js → p-CPIwQCo_.js} +21 -10
- package/dist/components/p-CPIwQCo_.js.map +1 -0
- package/dist/components/{p-CYRfkDZa.js → p-Cj8PYi4t.js} +29 -16
- package/dist/components/p-Cj8PYi4t.js.map +1 -0
- package/dist/components/{p-Bafj7hI1.js → p-Cli5nWln.js} +19 -10
- package/dist/components/p-Cli5nWln.js.map +1 -0
- package/dist/components/{p-Dpu4D5bv.js → p-Cx0Mif05.js} +6 -3
- package/dist/components/p-Cx0Mif05.js.map +1 -0
- package/dist/components/{p-BF4y1YRU.js → p-CzvUUEq1.js} +3 -3
- package/dist/components/{p-BF4y1YRU.js.map → p-CzvUUEq1.js.map} +1 -1
- package/dist/components/{p-DzM2oGUr.js → p-D1TqIILD.js} +19 -10
- package/dist/components/p-D1TqIILD.js.map +1 -0
- package/dist/components/{p-_cxVjdiK.js → p-DNYvorxL.js} +43 -44
- package/dist/components/p-DNYvorxL.js.map +1 -0
- package/dist/components/{p-Cal5IvqT.js → p-DmEzMnt3.js} +3 -3
- package/dist/components/{p-Cal5IvqT.js.map → p-DmEzMnt3.js.map} +1 -1
- package/dist/components/{p-C5fwD53I.js → p-Dz6Xrh7z.js} +3 -3
- package/dist/components/{p-C5fwD53I.js.map → p-Dz6Xrh7z.js.map} +1 -1
- package/dist/components/{p-DaWDoIag.js → p-IJa78J36.js} +4 -4
- package/dist/components/{p-DaWDoIag.js.map → p-IJa78J36.js.map} +1 -1
- package/dist/components/{p-DtpXCLdt.js → p-RdlD8c2P.js} +5 -5
- package/dist/components/{p-DtpXCLdt.js.map → p-RdlD8c2P.js.map} +1 -1
- package/dist/components/{p-DmyvK-Tr.js → p-aH_YLUuP.js} +15 -15
- package/dist/components/{p-DmyvK-Tr.js.map → p-aH_YLUuP.js.map} +1 -1
- package/dist/components/{p-DyfpSDn-.js → p-zAW1BOj6.js} +3 -3
- package/dist/components/{p-DyfpSDn-.js.map → p-zAW1BOj6.js.map} +1 -1
- package/dist/components/verdocs-build.js +21 -21
- package/dist/components/verdocs-contact-picker.js +1 -1
- package/dist/components/verdocs-envelope-document-page.js +1 -1
- package/dist/components/verdocs-envelope-recipient-link.js +1 -1
- package/dist/components/verdocs-envelope-recipient-summary.js +1 -1
- package/dist/components/verdocs-envelope-sidebar.js +3 -3
- package/dist/components/verdocs-envelope-update-recipient.js +1 -1
- package/dist/components/verdocs-envelopes-list.js +2 -2
- package/dist/components/verdocs-field-attachment.js +1 -1
- package/dist/components/verdocs-field-checkbox.js +1 -1
- package/dist/components/verdocs-field-date.js +1 -1
- package/dist/components/verdocs-field-dropdown.js +1 -1
- package/dist/components/verdocs-field-initial.js +1 -1
- package/dist/components/verdocs-field-payment.js +20 -11
- package/dist/components/verdocs-field-payment.js.map +1 -1
- package/dist/components/verdocs-field-radio.js +1 -1
- package/dist/components/verdocs-field-signature.js +1 -1
- package/dist/components/verdocs-field-textarea.js +1 -1
- package/dist/components/verdocs-field-textbox.js +1 -1
- package/dist/components/verdocs-field-timestamp.js +1 -1
- package/dist/components/verdocs-preview.js +1 -1
- package/dist/components/verdocs-quick-filter.js +1 -1
- package/dist/components/verdocs-send.js +1 -1
- package/dist/components/verdocs-sign-footer.js +1 -1
- package/dist/components/verdocs-sign.js +5 -5
- package/dist/components/verdocs-signing-progress.js +1 -1
- package/dist/components/verdocs-template-attachments.js +1 -1
- package/dist/components/verdocs-template-build-tabs.js +1 -1
- package/dist/components/verdocs-template-document-page.js +1 -1
- package/dist/components/verdocs-template-field-properties.js +1 -1
- package/dist/components/verdocs-template-fields.js +1 -1
- package/dist/components/verdocs-template-role-properties.js +1 -1
- package/dist/components/verdocs-template-roles.js +1 -1
- package/dist/components/verdocs-template-settings.js +1 -1
- package/dist/components/verdocs-templates-list.js +1 -1
- package/dist/components/verdocs-view.js +1 -1
- package/dist/{components/p-bS8INhRF.js → esm/Datastore-C7hFgM52.js} +3 -3
- package/dist/{cjs/Datastore-B-sxWSPD.js.map → esm/Datastore-C7hFgM52.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{utils-CerrMWqr.js → utils-CPSY5rft.js} +6 -3
- package/dist/esm/utils-CPSY5rft.js.map +1 -0
- package/dist/esm/verdocs-adopt-signature-dialog_7.entry.js +1 -1
- package/dist/esm/verdocs-build.entry.js +1 -1
- package/dist/esm/verdocs-checkbox_5.entry.js +1 -1
- package/dist/esm/verdocs-contact-picker.entry.js +1 -1
- package/dist/esm/verdocs-download-dialog_4.entry.js +2 -2
- package/dist/esm/verdocs-envelope-recipient-link_2.entry.js +1 -1
- package/dist/esm/verdocs-envelope-recipient-summary.entry.js +1 -1
- package/dist/esm/verdocs-envelope-sidebar.entry.js +1 -1
- package/dist/esm/verdocs-envelopes-list.entry.js +1 -1
- package/dist/esm/verdocs-field-attachment_11.entry.js +119 -51
- package/dist/esm/verdocs-field-payment.entry.js +16 -9
- package/dist/esm/verdocs-field-payment.entry.js.map +1 -1
- package/dist/esm/verdocs-menu-panel_2.entry.js +1 -1
- package/dist/esm/verdocs-pagination_2.entry.js +1 -1
- package/dist/esm/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.entry.js.map +1 -1
- package/dist/esm/verdocs-preview_6.entry.js +42 -31
- package/dist/esm/verdocs-sign.entry.js +2 -2
- package/dist/esm/verdocs-signing-progress.entry.js +1 -1
- package/dist/esm/verdocs-template-document-page_2.entry.js +2 -2
- package/dist/esm/verdocs-template-settings.entry.js +1 -1
- package/dist/esm/verdocs-web-sdk.js +1 -1
- package/dist/esm-es5/{Datastore-bS8INhRF.js → Datastore-C7hFgM52.js} +2 -2
- package/dist/{esm/Datastore-bS8INhRF.js.map → esm-es5/Datastore-C7hFgM52.js.map} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/utils-CPSY5rft.js +2 -0
- package/dist/esm-es5/utils-CPSY5rft.js.map +1 -0
- package/dist/esm-es5/verdocs-adopt-signature-dialog_7.entry.js +1 -1
- package/dist/esm-es5/verdocs-build.entry.js +1 -1
- package/dist/esm-es5/verdocs-checkbox_5.entry.js +1 -1
- package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
- package/dist/esm-es5/verdocs-download-dialog_4.entry.js +1 -1
- package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-envelope-recipient-summary.entry.js +1 -1
- package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
- package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-attachment_11.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-attachment_11.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-menu-panel_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-preview_6.entry.js +1 -1
- package/dist/esm-es5/verdocs-preview_6.entry.js.map +1 -1
- package/dist/esm-es5/verdocs-sign.entry.js +1 -1
- package/dist/esm-es5/verdocs-signing-progress.entry.js +1 -1
- package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-template-settings.entry.js +1 -1
- package/dist/esm-es5/verdocs-web-sdk.js +1 -1
- package/dist/types/components/embeds/verdocs-preview/verdocs-preview.d.ts +2 -0
- package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +1 -1
- package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-radio/verdocs-field-radio.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +1 -1
- package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +2 -1
- package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +2 -1
- package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +3 -2
- package/dist/verdocs-web-sdk/{p-2ff00959.system.entry.js → p-032e8fb0.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-fe5aabfb.entry.js → p-04981f9f.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-7f7da7d6.system.entry.js → p-066eaea8.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-53be15dc.entry.js → p-0b59a4a5.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-8229308e.system.entry.js → p-107a1995.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-b04c507f.system.entry.js → p-1b5b8ffa.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-be9c544d.system.entry.js → p-2ba8c771.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-2ebc769e.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-2ebc769e.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-5ee3ef82.entry.js → p-311bb5b2.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-069169a7.entry.js → p-3202f0eb.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-edc49225.entry.js → p-3648e4c0.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-3648e4c0.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-64b9e2de.entry.js → p-3be22031.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-f4c4a49e.system.entry.js → p-4424623c.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-7a086c18.entry.js → p-4f820bee.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-2fc50938.system.entry.js → p-53530f64.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-f1ca6e1c.system.entry.js → p-60cfa50a.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-93e9df57.system.entry.js → p-641dbbfa.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-6c8883ff.entry.js +2 -0
- package/dist/verdocs-web-sdk/{p-8e8c0110.entry.js.map → p-6c8883ff.entry.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-6d41df5d.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-6d41df5d.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-8062bb99.entry.js → p-6d5af60f.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-6038e4c1.system.entry.js → p-774961dc.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-63c0f31d.system.entry.js → p-822694c1.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-9b367391.system.entry.js → p-91316504.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-0c24c1b8.entry.js → p-92b4f218.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-adcbb1c2.entry.js → p-9586b268.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
- package/dist/verdocs-web-sdk/{p-CC3ukJv1.system.js.map → p-BFC8G6sY.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-LGooaeHw.system.js.map → p-BJ0cUjeu.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-CRk-MpSX.system.js.map → p-BJx8Y9VG.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-BUFQbxzf.system.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-CWh-S6N5.system.js.map → p-BuHYXI2L.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-bS8INhRF.js → p-C7hFgM52.js} +2 -2
- package/dist/verdocs-web-sdk/{p-bS8INhRF.js.map → p-C7hFgM52.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-C9JdpYtM.js +2 -0
- package/dist/verdocs-web-sdk/p-C9JdpYtM.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-COM7km0I.system.js.map → p-CVmJ8lYI.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-Cd268O-w.system.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-C5U_96FD.system.js.map → p-CyPGia16.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-DGti20Vc.system.js +2 -0
- package/dist/verdocs-web-sdk/p-DGti20Vc.system.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-BcNo_mbk.system.js.map → p-DmQa-gqf.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-dY2me2i5.system.js.map → p-Dmc2VIXX.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/p-H1Y4Zb4E.system.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-C-5pmv-B.system.js.map → p-N4-IQ3Cb.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-wKFmf5bX.system.js.map → p-TQtp_Nv2.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-BvI8gTGk.system.js.map → p-WCWuCFHk.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-ESsv28K0.system.js.map → p-a51WVEiq.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-c0c4b822.entry.js → p-a7e0e67a.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-267c890e.entry.js → p-ad41a644.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-333d4a2e.system.entry.js → p-b7d907b4.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-b83472cd.system.entry.js +2 -0
- package/dist/verdocs-web-sdk/p-b83472cd.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-e4b13df9.system.entry.js → p-bcffad7a.system.entry.js} +3 -3
- package/dist/verdocs-web-sdk/{p-8d5c3516.entry.js → p-c7bfe2f1.entry.js} +2 -2
- package/dist/verdocs-web-sdk/p-d4e3efdb.system.entry.js +8 -0
- package/dist/verdocs-web-sdk/p-d4e3efdb.system.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-081b245d.system.entry.js → p-d52e6117.system.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-0faa3e84.entry.js → p-e262ea96.entry.js} +2 -2
- package/dist/verdocs-web-sdk/{p-8b2d4ca5.entry.js → p-f7f33a99.entry.js} +3 -3
- package/dist/verdocs-web-sdk/{p-lEpx1l-p.system.js → p-fEbwslLK.system.js} +2 -2
- package/dist/verdocs-web-sdk/{p-lEpx1l-p.system.js.map → p-fEbwslLK.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-0fcfde01.entry.js → p-fc308ef0.entry.js} +3 -3
- package/dist/verdocs-web-sdk/p-fc308ef0.entry.js.map +1 -0
- package/dist/verdocs-web-sdk/{p-0-YdlCL1.system.js.map → p-x_N0ZS08.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-DFNdvv2j.system.js.map → p-yFbTWZrj.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/{p-D1RF_rpl.system.js.map → p-yUsULl32.system.js.map} +1 -1
- package/dist/verdocs-web-sdk/verdocs-field-payment.entry.esm.js.map +1 -1
- package/dist/verdocs-web-sdk/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.entry.esm.js.map +1 -1
- package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/utils-ecG41L2k.js.map +0 -1
- package/dist/components/p-BZRJWqKI.js.map +0 -1
- package/dist/components/p-Bafj7hI1.js.map +0 -1
- package/dist/components/p-By2QlfRC.js.map +0 -1
- package/dist/components/p-CFi6VKgU.js.map +0 -1
- package/dist/components/p-CWGxLuye.js.map +0 -1
- package/dist/components/p-CYRfkDZa.js.map +0 -1
- package/dist/components/p-CjDMm6od.js.map +0 -1
- package/dist/components/p-DLV8jNf8.js.map +0 -1
- package/dist/components/p-Dj_oFCRK.js.map +0 -1
- package/dist/components/p-Dpu4D5bv.js.map +0 -1
- package/dist/components/p-DzM2oGUr.js.map +0 -1
- package/dist/components/p-_cxVjdiK.js.map +0 -1
- package/dist/components/p-bS8INhRF.js.map +0 -1
- package/dist/components/p-tyY7kKNB.js.map +0 -1
- package/dist/esm/utils-CerrMWqr.js.map +0 -1
- package/dist/esm-es5/utils-CerrMWqr.js +0 -2
- package/dist/esm-es5/utils-CerrMWqr.js.map +0 -1
- package/dist/verdocs-web-sdk/p-0fcfde01.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-2e4d6431.system.entry.js +0 -8
- package/dist/verdocs-web-sdk/p-2e4d6431.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-6bbe3f73.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-6bbe3f73.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-8e8c0110.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-B390zQJa.js +0 -2
- package/dist/verdocs-web-sdk/p-B390zQJa.js.map +0 -1
- package/dist/verdocs-web-sdk/p-Bb7iRsoQ.system.js.map +0 -1
- package/dist/verdocs-web-sdk/p-CT1VA0C-.system.js.map +0 -1
- package/dist/verdocs-web-sdk/p-CaEXyfjG.system.js.map +0 -1
- package/dist/verdocs-web-sdk/p-a6b008ef.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-a6b008ef.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-aaad7b8a.system.entry.js +0 -2
- package/dist/verdocs-web-sdk/p-aaad7b8a.system.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-edc49225.entry.js.map +0 -1
- package/dist/verdocs-web-sdk/p-f589tneI.system.js +0 -2
- package/dist/verdocs-web-sdk/p-f589tneI.system.js.map +0 -1
- /package/dist/verdocs-web-sdk/{p-2ff00959.system.entry.js.map → p-032e8fb0.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-fe5aabfb.entry.js.map → p-04981f9f.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-7f7da7d6.system.entry.js.map → p-066eaea8.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-53be15dc.entry.js.map → p-0b59a4a5.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-8229308e.system.entry.js.map → p-107a1995.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-b04c507f.system.entry.js.map → p-1b5b8ffa.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-be9c544d.system.entry.js.map → p-2ba8c771.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-5ee3ef82.entry.js.map → p-311bb5b2.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-069169a7.entry.js.map → p-3202f0eb.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-64b9e2de.entry.js.map → p-3be22031.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-f4c4a49e.system.entry.js.map → p-4424623c.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-7a086c18.entry.js.map → p-4f820bee.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-2fc50938.system.entry.js.map → p-53530f64.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-f1ca6e1c.system.entry.js.map → p-60cfa50a.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-93e9df57.system.entry.js.map → p-641dbbfa.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-8062bb99.entry.js.map → p-6d5af60f.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-6038e4c1.system.entry.js.map → p-774961dc.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-63c0f31d.system.entry.js.map → p-822694c1.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-9b367391.system.entry.js.map → p-91316504.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-0c24c1b8.entry.js.map → p-92b4f218.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-adcbb1c2.entry.js.map → p-9586b268.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-c0c4b822.entry.js.map → p-a7e0e67a.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-267c890e.entry.js.map → p-ad41a644.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-333d4a2e.system.entry.js.map → p-b7d907b4.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-e4b13df9.system.entry.js.map → p-bcffad7a.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-8d5c3516.entry.js.map → p-c7bfe2f1.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-081b245d.system.entry.js.map → p-d52e6117.system.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-0faa3e84.entry.js.map → p-e262ea96.entry.js.map} +0 -0
- /package/dist/verdocs-web-sdk/{p-8b2d4ca5.entry.js.map → p-f7f33a99.entry.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var __awaiter=this&&this.__awaiter||function(e,t,r,n){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{u(n.next(e))}catch(e){i(e)}}function c(e){try{u(n["throw"](e))}catch(e){i(e)}}function u(e){e.done?r(e.value):a(e.value).then(o,c)}u((n=n.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,a,i,o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return u([e,t])}}function u(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(r=0)),r)try{if(n=1,a&&(i=c[0]&2?a["return"]:c[0]?a["throw"]||((i=a["return"])&&i.call(a),0):a.next)&&!(i=i.call(a,c[1])).done)return i;if(a=0,i)c=[c[0]&2,i.value];switch(c[0]){case 0:case 1:i=c;break;case 4:r.label++;return{value:c[1],done:false};case 5:r.label++;a=c[1];c=[0];continue;case 7:c=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]<i[3])){r.label=c[1];break}if(c[0]===6&&r.label<i[1]){r.label=i[1];i=c;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(c);break}if(i[2])r.ops.pop();r.trys.pop();continue}c=t.call(e,r)}catch(e){c=[6,e];a=0}finally{n=i=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}};System.register(["./p-DmF0GSqu.system.js","@verdocs/js-sdk","./p-C2OP3llY.system.js"],(function(e){"use strict";var t,r,n,a,i;return{setters:[function(e){t=e.d},function(e){r=e.getEnvelopesZip;n=e.downloadBlob;a=e.rescale},function(e){i=e.F}],execute:function(){var o=this;var c=e("k",(function(e){switch(e){case"textarea":return 150;case"textbox":return 150;case"timestamp":return 105;case"date":return 75;case"dropdown":return 85;case"attachment":case"payment":return 24;case"radio":case"checkbox":return 14;case"signature":case"initial":return 71}return 150}));var u=e("d",(function(e){switch(e){case"textarea":return 41;case"textbox":return 15;case"timestamp":return 15;case"date":return 15;case"dropdown":return 20;case"attachment":case"payment":return 24;case"radio":case"checkbox":return 14;case"signature":case"initial":return 36}return 50}));var s=e("j",(function(e,t,r,n){var i,o;var s=t.x,d=s===void 0?0:s,f=t.y,v=f===void 0?0:f,l=t.width,p=l===void 0?c(t.type):l,x=t.height,m=x===void 0?u(t.type):x,h=t.settings;var b=t.type==="signature"||t.type==="initial";var w=!b?p:(i=h===null||h===void 0?void 0:h.canvasWidth)!==null&&i!==void 0?i:p;var g=!b?m:(o=h===null||h===void 0?void 0:h.canvasHeight)!==null&&o!==void 0?o:m;e.style.width="".concat(w,"px");e.style.height="".concat(g,"px");e.style.position="absolute";e.style.left="".concat(a(r,d),"px");e.style.bottom="".concat(a(n,v),"px");e.style.transform="scale(".concat(r,", ").concat(n,")")}));var d=e("e",(function(e,t,r){var n=e.x,i=n===void 0?0:n,o=e.y,s=o===void 0?0:o,d=e.width,f=d===void 0?c(e.type):d,v=e.height,l=v===void 0?u(e.type):v;return{zIndex:"100",width:"".concat(f,"px"),height:"".concat(l,"px"),position:"absolute",left:"".concat(a(t,i),"px"),bottom:"".concat(a(r,s),"px"),transform:"scale(".concat(t,", ").concat(r,")")}}));var f=e("g",(function(e){return"verdocs-doc-fld-".concat(e.name)}));var v=e("u",(function(e){var t=f(e);var r=document.getElementById(t);if(r){r.field=e;r.roleindex=e;r.setAttribute("id",t);r.setAttribute("disabled",true);r.setAttribute("disabled",false)}}));var l=e("a",(function(e,t,r,n,a){if(a===void 0){a=1}var i,o;var c=n.disabled,u=c===void 0?false:c,d=n.editable,v=d===void 0?false:d,l=n.draggable,p=l===void 0?false:l,x=n.done,m=x===void 0?false:x;var h=document.getElementById(r.containerId+"-controls");if(!h){return}switch(t.type){case"radio":case"checkbox":case"attachment":case"date":case"dropdown":case"initial":case"payment":case"signature":case"timestamp":case"textarea":case"textbox":{var b=f(t);var w=document.getElementById(b);if(w){w.field=t;w.done=m;s(w,t,r.xScale,r.yScale);return w}var g=t.type;if(g==="textbox"){if(((i=t["setting"])===null||i===void 0?void 0:i.leading)>0||((o=t["settings"])===null||o===void 0?void 0:o.leading)>0){g="textarea"}}var y=document.createElement("verdocs-field-".concat(g));y.field=t;y.setAttribute("id",b);y.setAttribute("fieldname",t.name);y.setAttribute("source",e);y.setAttribute("sourceid","template_id"in t?t.template_id:t.envelope_id);if(u){y.setAttribute("tabindex",-1);y.setAttribute("disabled",true)}else{y.setAttribute("tabindex",a)}y.setAttribute("editable",v);y.setAttribute("draggable",p);y.setAttribute("done",m);s(y,t,r.xScale,r.yScale);h.appendChild(y);return y}default:console.log("[PREVIEW] Skipping unsupported field type",t);return null}}));var p=e("h",(function(e,t,r){var n=e.style.transform||"";var a="".concat(t,"(").concat(r,")");if(n.includes(t)){e.style.transform=n.replace(new RegExp("".concat(t,"\\(.+?\\)")),a)}else{e.style.transform=n+" "+a}}));var x=e("i",(function(e){e.style.transform=e.style.transform.split(")")[0]+")"}));var m=e("s",(function(e,a){return __awaiter(o,void 0,void 0,(function(){var o,c,u;return __generator(this,(function(s){switch(s.label){case 0:o=t.format(a.length===1?new Date(a[0].updated_at):new Date,i);c=a.length===1?"".concat(a[0].name," - ").concat(o,".zip"):"Verdocs-Envelopes-".concat(o);console.log("Downloading envelopes as ZIP",a,c);return[4,r(e,a.map((function(e){return e.id})))];case 1:u=s.sent();n(u.data,c);return[2]}}))}))}));var h=e("t",(function(e,t){var r=0;return function(){var n=this;var a=[];for(var i=0;i<arguments.length;i++){a[i]=arguments[i]}clearTimeout(r);r=setTimeout((function(){return e.apply(n,a)}),t)}}));var b=e("c",(function(e,t){if(t===void 0){t="16px Arial"}var r=document.createElement("canvas");var n=r.getContext("2d");n.font=t;return n.measureText(e).width}));var w=e("f",(function(e){var t=(e||"").trim();if(!t||t.startsWith("+")){return t}t=t.replace(/[^0-9]/g,"");t=t.replace(/^0/g,"");return"+1".concat(t)}));var g=e("r",(function(e,t,r,n){var i=document.getElementById(e.containerId+"-controls");if(!i){return}var o=document.createElement("verdocs-flag");o.variant=n.variant;o.label=n.label;o.showSkip=n.showSkip;if(n.id){o.setAttribute("id",n.id)}o.classList.add("verdocs-flag-instance");if(n.onSkip){o.addEventListener("skip",n.onSkip)}if(n.onClick){o.addEventListener("flagClick",n.onClick)}o.style.position="absolute";o.style.left="calc(100% - 14px)";var c=a(e.yScale,t);var u=a(e.yScale,r);var s=c+u;o.style.bottom="".concat(s,"px");i.appendChild(o);return o}));var y=e("b",(function(e){if(!e)return"";var t={signature:"Signature",initial:"Initials",date:"Date",textbox:"Text Field",checkbox:"Checkbox",radio:"Radio Button",dropdown:"Dropdown",attachment:"Attachment",payment:"Payment"};var r=t[e.type]||"Field";if(e.required){return"Required ".concat(r,"*")}return"Optional ".concat(r)}))}}}));
|
|
2
|
+
//# sourceMappingURL=p-DGti20Vc.system.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"p-DGti20Vc.system.js","sources":["src/utils/utils.ts"],"sourcesContent":["import {format} from 'date-fns';\nimport {downloadBlob, getEnvelopeFile, getEnvelopesZip, IEnvelope, IEnvelopeField, ITemplateField, rescale, TFieldType, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {FORMAT_DATE, IDocumentPageInfo} from './Types';\n\nexport const defaultWidth = (type: TFieldType) => {\n // checkbox was a legacy field type\n switch (type as any) {\n case 'textarea':\n return 150;\n case 'textbox':\n return 150;\n case 'timestamp':\n return 105;\n case 'date':\n return 75;\n case 'dropdown':\n return 85;\n case 'attachment':\n case 'payment':\n return 24;\n case 'radio':\n case 'checkbox':\n return 14;\n case 'signature':\n case 'initial':\n return 71;\n }\n\n return 150;\n};\n\nexport const defaultHeight = (type: TFieldType) => {\n switch (type as any) {\n case 'textarea':\n return 41;\n case 'textbox':\n return 15;\n case 'timestamp':\n return 15;\n case 'date':\n return 15;\n case 'dropdown':\n return 20;\n case 'attachment':\n case 'payment':\n return 24;\n case 'radio':\n case 'checkbox':\n return 14;\n case 'signature':\n case 'initial':\n return 36;\n }\n\n return 50;\n};\n\nexport const setControlStyles = (el: HTMLElement, field: ITemplateField | IEnvelopeField, xScale: number, yScale: number) => {\n let {x = 0, y = 0, width = defaultWidth(field.type), height = defaultHeight(field.type), settings} = field;\n const isCanvasField = field.type === 'signature' || field.type === 'initial';\n // @ts-expect-error - TODO: Type will be included in v6.8.2\n const canvasWidth = !isCanvasField ? width : (settings?.canvasWidth ?? width);\n // @ts-expect-error - TODO: Type will be included in v6.8.2\n const canvasHeight = !isCanvasField ? height : (settings?.canvasHeight ?? height);\n\n el.style.width = `${canvasWidth}px`;\n el.style.height = `${canvasHeight}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};\n\nexport const getControlStyles = (field: ITemplateField | IEnvelopeField, xScale: number, yScale: number) => {\n let {x = 0, y = 0, width = defaultWidth(field.type), height = defaultHeight(field.type)} = field;\n\n return {\n zIndex: '100',\n width: `${width}px`,\n height: `${height}px`,\n position: 'absolute',\n left: `${rescale(xScale, x)}px`,\n bottom: `${rescale(yScale, y)}px`,\n transform: `scale(${xScale}, ${yScale})`,\n };\n};\n\nexport const getFieldId = (field: ITemplateField | IEnvelopeField) => {\n return `verdocs-doc-fld-${field.name}`;\n};\n\ninterface IFieldOptions {\n disabled?: boolean;\n editable?: boolean;\n draggable?: boolean;\n done?: boolean;\n}\n\nexport const updateDocumentFieldValue = (field: ITemplateField | IEnvelopeField) => {\n const id = getFieldId(field);\n const existingField = document.getElementById(id) as any;\n if (existingField) {\n existingField.field = field;\n existingField.roleindex = field;\n existingField.setAttribute('id', id); // We need this to trigger a re-render\n existingField.setAttribute('disabled', true); // We need this to trigger a re-render\n existingField.setAttribute('disabled', false); // We need this to trigger a re-render\n }\n};\n\nexport const renderDocumentField = (\n source: 'envelope' | 'template',\n field: ITemplateField | IEnvelopeField,\n docPage: IDocumentPageInfo,\n fieldOptions: IFieldOptions,\n tabIndex: number = 1,\n) => {\n const {disabled = false, editable = false, draggable = false, done = false} = fieldOptions;\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n // TODO: This gets emitted a lot by the builder naturally, when placing or updating fields, because Store.updateTemplate\n // triggers a re-render but we still have async code pending in contexts with references to the old/wrong controls DIV\n // IDs. It doesn't break anything because the re-render fixes it all up. But we do want to trap this for \"other\" situations.\n // console.log('[renderDocumentField] No controls DIV found', docPage.containerId + '-controls', docPage);\n return;\n }\n\n switch (field.type as any) {\n case 'radio':\n case 'checkbox':\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) as any;\n if (existingField) {\n existingField.field = field;\n existingField.done = done;\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return existingField;\n }\n\n let {type} = field;\n if (type === 'textbox') {\n if (field['setting']?.leading > 0 || field['settings']?.leading > 0) {\n type = 'textarea';\n }\n }\n\n const el: any = document.createElement(`verdocs-field-${type}`);\n el.field = field;\n el.setAttribute('id', id);\n el.setAttribute('fieldname', field.name);\n el.setAttribute('source', source);\n el.setAttribute('sourceid', 'template_id' in field ? field.template_id : field.envelope_id);\n\n if (disabled) {\n el.setAttribute('tabindex', -1);\n el.setAttribute('disabled', true);\n } else {\n el.setAttribute('tabindex', tabIndex);\n }\n\n el.setAttribute('editable', editable);\n el.setAttribute('draggable', draggable);\n el.setAttribute('done', done);\n\n setControlStyles(el, field, docPage.xScale, docPage.yScale);\n controlsDiv.appendChild(el);\n\n return el;\n }\n\n default:\n console.log('[PREVIEW] Skipping unsupported field type', field);\n return null;\n }\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 const currentTransform = el.style.transform || '';\n\n const newValue = `${key}(${value})`;\n if (currentTransform.includes(key)) {\n el.style.transform = currentTransform.replace(new RegExp(`${key}\\\\(.+?\\\\)`), newValue);\n } else {\n el.style.transform = currentTransform + ' ' + newValue;\n }\n};\n\nexport const removeCssTransform = (el: HTMLElement) => {\n // const currentTransform = el.style.transform || '';\n el.style.transform = el.style.transform.split(')')[0] + ')';\n // TODO: This is not working\n // el.style.transform = currentTransform.replace(new RegExp(`\\(${key}\\\\(.+?\\\\)\\)`), '');\n};\n\n// TODO: Shift to getDownloadLilnk\nexport const saveAttachment = async (endpoint: VerdocsEndpoint, envelope: IEnvelope, documentId: string) => {\n // e.g. \"Colorado-Motor-Vehicle-Bill-of-Sale.pdf\"\n const date = format(new Date(envelope.updated_at), FORMAT_DATE);\n const fileName = `${envelope.name} - ${date}.pdf`;\n const data = await getEnvelopeFile(endpoint, documentId);\n downloadBlob(data, fileName);\n};\n\nexport const saveEnvelopesAsZip = async (endpoint: VerdocsEndpoint, envelopes: IEnvelope[]) => {\n const formattedDate = format(envelopes.length === 1 ? new Date(envelopes[0].updated_at) : new Date(), FORMAT_DATE);\n const zipFileName = envelopes.length === 1 ? `${envelopes[0].name} - ${formattedDate}.zip` : `Verdocs-Envelopes-${formattedDate}`;\n console.log('Downloading envelopes as ZIP', envelopes, zipFileName);\n const result = await getEnvelopesZip(\n endpoint,\n envelopes.map(e => e.id),\n );\n downloadBlob(result.data, zipFileName);\n};\n\n/**\n * Throttle a given function by a delay value. Useful for things like resizeObserver.\n */\nexport const throttle = (f: Function, delay: number) => {\n let timer: any = 0;\n return function (...args) {\n clearTimeout(timer);\n timer = setTimeout(() => f.apply(this, args), delay);\n };\n};\n\n/**\n * Compute the rendered width of a given text string, using a given font.\n */\nexport const renderedTextWidth = (text: string, font: string = '16px Arial') => {\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n ctx.font = font;\n return ctx.measureText(text).width;\n};\n\n// \"(212) 555-1212\" => +12125551212\n// \"+46766861004\" => \"+46766861004\"\n// \"212-555-1212\" => +12125551212\n// \"212.555.1212\" => +12125551212\n// \"212 555 1212\" => +12125551212\n// @see https://46elks.com/kb/e164\nexport const convertToE164 = (input: string) => {\n let temp = (input || '').trim();\n // If we are already prefixed, assume the user did it deliberately and attempt to use what they entered. We also short-circuit blanks.\n if (!temp || temp.startsWith('+')) {\n return temp;\n }\n\n // Remove any spaces, parenthesis or other punctuation.\n temp = temp.replace(/[^0-9]/g, '');\n\n // If the number begins with a zero, remove the leading zero. Do not combine this with the previous step because it needs to be removed\n // whether it's the actual first character e.g. `0(5)` or just the first digit e.g. `(05`.\n temp = temp.replace(/^0/g, '');\n\n // Prepend the country code and +. We're assuming US in this case given the target demographic. Users in other countries would/should be\n // already entering a prefix so they'd shortcut out of this routine via the + prefix check.\n return `+1${temp}`;\n};\n\nexport interface IFlagOptions {\n variant: 'fill' | 'next';\n label: string;\n showSkip?: boolean;\n onSkip?: () => void;\n onClick?: () => void;\n id?: string;\n}\n\nexport const renderDocumentFlag = (\n docPage: IDocumentPageInfo,\n y: number, // Bottom position from field\n height: number, // Field height\n options: IFlagOptions,\n) => {\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n const el: any = document.createElement('verdocs-flag');\n el.variant = options.variant;\n el.label = options.label;\n el.showSkip = options.showSkip;\n if (options.id) {\n el.setAttribute('id', options.id);\n }\n el.classList.add('verdocs-flag-instance'); // Marker class for easy removal\n\n if (options.onSkip) {\n el.addEventListener('skip', options.onSkip);\n }\n if (options.onClick) {\n el.addEventListener('flagClick', options.onClick);\n }\n\n // Position the flag to stick out of the right edge of the page\n el.style.position = 'absolute';\n\n // The flag has a left-pointing arrow that is 14px wide (15% of 97px ~= 14.5px).\n // We want the \"body\" of the rectangle (starting after the arrow) to align with the\n // right edge of the page.\n el.style.left = 'calc(100% - 14px)';\n\n /*\n * Positioning Logic:\n * Field Y is distance from bottom.\n * Fields have `transform-origin: bottom left`.\n * Visual Bottom = y * scale.\n * Visual Top = (y * scale) + (height * scale).\n * Visual Center = (y * scale) + (height * scale) / 2.\n */\n // const flagHeight = 24; // Matches CSS\n const scaledY = rescale(docPage.yScale, y);\n const scaledHeight = rescale(docPage.yScale, height);\n\n // Align Flag Bottom with Field Top\n const bottom = scaledY + scaledHeight;\n\n el.style.bottom = `${bottom}px`;\n\n controlsDiv.appendChild(el);\n return el;\n};\n\n/**\n * Helper to generate a human-readable label for a field.\n */\nexport const getFieldLabel = (field: IEnvelopeField | ITemplateField) => {\n if (!field) return '';\n const typeMap: Record<string, string> = {\n signature: 'Signature',\n initial: 'Initials',\n date: 'Date',\n textbox: 'Text Field',\n checkbox: 'Checkbox',\n radio: 'Radio Button',\n dropdown: 'Dropdown',\n attachment: 'Attachment',\n payment: 'Payment',\n };\n\n const typeName = typeMap[field.type] || 'Field';\n if (field.required) {\n return `Required ${typeName}*`;\n }\n return `Optional ${typeName}`;\n};\n"],"names":["format"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-BcNo_mbk.system.js","sources":["src/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.scss?tag=verdocs-envelopes-list","src/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-envelopes-list {\n display: flex;\n padding: 10px;\n font-size: 18px;\n flex-wrap: nowrap;\n border-radius: 6px;\n color: $label-color;\n flex-direction: column;\n font-family: $primary-font;\n\n @media screen and (max-width: 800px) {\n font-size: 14px;\n }\n\n .envelope-placeholder {\n height: 48px;\n flex: 0 0 48px;\n margin: 5px 0;\n border-radius: 5px;\n background: $verdocs-grey-3;\n }\n\n .header {\n width: 100%;\n row-gap: 4px;\n display: flex;\n flex-wrap: wrap;\n column-gap: 12px;\n margin: 0 0 10px 0;\n align-items: center;\n flex-direction: row;\n\n .filter {\n width: 300px;\n }\n\n verdocs-text-input {\n margin: 0;\n\n input {\n height: 32px;\n }\n }\n }\n\n .filter {\n align-items: center;\n }\n\n .envelope {\n width: 100%;\n margin: 3px 0;\n background: $verdocs-grey-4;\n\n &:hover {\n cursor: pointer;\n background: $verdocs-grey-3;\n }\n\n .inner {\n gap: 12px;\n display: flex;\n padding: 8px 14px;\n border-radius: 5px;\n flex-direction: row;\n align-items: center;\n container-type: inline-size;\n\n svg {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .vert-spacer {\n height: 50px;\n display: flex;\n flex: 0 0 1px;\n border-right: 1px solid #dad8dd;\n\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .envelope-icon {\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n verdocs-checkbox {\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .last-modified {\n color: #444;\n display: flex;\n flex: 0 0 180px;\n flex-direction: row;\n align-items: center;\n white-space: nowrap;\n\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .envelope-name {\n flex: 1;\n display: flex;\n color: #000000;\n line-height: 28px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n .envelope-recipients {\n color: #4b5563;\n font-weight: 700;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n .empty-text {\n text-align: center;\n margin: 16px 0 0 0;\n padding: 80px 80px;\n border: 2px solid #ccc;\n }\n\n .containing {\n gap: 12px;\n display: flex;\n align-items: center;\n flex-direction: row;\n }\n\n verdocs-status-indicator {\n @media screen and (max-width: 800px) {\n font-size: 14px;\n }\n }\n}\n","import {Component, Prop, Host, h, State, Event, EventEmitter, Watch} from '@stencil/core';\nimport {userCanCancelEnvelope, userCanAct, cancelEnvelope, integerSequence, formatFullName} from '@verdocs/js-sdk';\nimport {IEnvelope, IListEnvelopesParams, TEnvelopeStatus, VerdocsEndpoint, getEnvelopes, getRecipientsWithActions} from '@verdocs/js-sdk';\nimport {IFilterOption} from '../../controls/verdocs-quick-filter/verdocs-quick-filter';\nimport {saveEnvelopesAsZip} from '../../../utils/utils';\nimport {VerdocsToast} from '../../../utils/Toast';\nimport {SDKError} from '../../../utils/errors';\n\nconst DocumentIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" stroke=\"#000000\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z\" /></svg>`;\n\nconst ViewFilters: IFilterOption[] = [\n {value: 'all', label: 'All'},\n {value: 'inbox', label: 'Inbox'},\n {value: 'sent', label: 'Sent'},\n {value: 'completed', label: 'Completed'},\n {value: 'action', label: 'Action Required'},\n {value: 'waiting', label: 'Waiting on Others'},\n];\n\nconst StatusFilters: IFilterOption[] = [\n {value: 'all', label: 'All'},\n {value: 'pending', label: 'Pending'},\n {value: 'in progress', label: 'In Progress'},\n {value: 'complete', label: 'Completed'},\n {value: 'declined', label: 'Declined'},\n {value: 'canceled', label: 'Canceled'},\n];\n\nconst SortFilters: IFilterOption[] = [\n {value: 'created_at', label: 'Created'},\n {value: 'updated_at', label: 'Updated'},\n {value: 'canceled_at', label: 'Canceled'},\n {value: 'envelope_name', label: 'Name'},\n {value: 'envelope_status', label: 'Status'},\n];\n\n/**\n * Displays a list of envelopes matching specified conditions.\n */\n@Component({\n tag: 'verdocs-envelopes-list',\n styleUrl: 'verdocs-envelopes-list.scss',\n})\nexport class VerdocsEnvelopesList {\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 filtered view to display. \"completed\" will show envelopes that have been submitted. \"action\" will\n * show envelopes where the user is a recipient and the envelope is not completed. \"waiting\" will show\n * only envelopes where the user is the sender and the envelope is not completed.\n */\n @Prop({reflect: true, mutable: true}) view?: 'all' | 'inbox' | 'sent' | 'completed' | 'action' | 'waiting' = undefined;\n\n /**\n * The status value to filter by\n */\n @Prop({reflect: true, mutable: true}) status: TEnvelopeStatus | 'all' = 'all';\n\n /**\n * The sort field to use\n */\n @Prop({reflect: true, mutable: true}) sort: 'name' | 'created_at' | 'updated_at' | 'canceled_at' | 'status' = 'created_at';\n\n /**\n * If set, filter envelopes by the specified string.\n */\n @Prop({reflect: true, mutable: true}) match: string = '';\n\n /**\n * If set, filter envelopes by the specified \"containing\" value.\n */\n // @Prop({reflect: true, mutable: true}) containing: string = '';\n\n /**\n * Whether or not pagination should be enabled.\n */\n @Prop() showPagination = true;\n\n /**\n * The number of rows to display per page.\n */\n @Prop() rowsPerPage = 10;\n\n /**\n * The initial page number to select. Pagination is internally controlled but may be overriden by the\n * host applicaiton.\n */\n @Prop() selectedPage = 0;\n\n /**\n * Event fired when the user changes their view. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeView: EventEmitter<'all' | 'inbox' | 'sent' | 'completed' | 'action' | 'waiting'>;\n\n /**\n * Event fired when the user changes their status filter. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeStatus: EventEmitter<TEnvelopeStatus | 'all'>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeSort: EventEmitter<'name' | 'created_at' | 'updated_at' | 'canceled_at' | 'status'>;\n\n /**\n * Event fired when the user changes the match filter. This is fired for every inputChange event (every character\n * typed). This event is provided for balance with the other events, but host applications should generally not\n * save this value. Users might appreciate applications remembering their sorting or filtering preferences, but\n * probably not their search terms.\n */\n @Event({composed: true}) changeMatch: EventEmitter<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 /**\n * Event fired when the user clicks an activity entry. Typically the host application will use this to navigate\n * to the envelope detail view.\n */\n @Event({composed: true}) viewEnvelope: EventEmitter<{endpoint: VerdocsEndpoint; envelope: IEnvelope}>;\n\n /**\n * Event fired when the user clicks to finish the envelope.\n */\n @Event({composed: true}) finishEnvelope: EventEmitter<{endpoint: VerdocsEndpoint; envelope: IEnvelope}>;\n\n @State() count = 0;\n @State() initiallyLoaded = false;\n @State() loading = true;\n @State() selectedEnvelopes: IEnvelope[] = [];\n @State() envelopes: IEnvelope[] = [];\n\n @Watch('view')\n handleViewUpdated() {\n return this.queryEnvelopes();\n }\n\n @Watch('status')\n handleStatusUpdated() {\n return this.queryEnvelopes();\n }\n\n @Watch('sort')\n handleSortUpdated() {\n return this.queryEnvelopes();\n }\n\n @Watch('match')\n handleMatchUpdated() {\n return this.queryEnvelopes();\n }\n\n // @Watch('containing')\n // handleContainingUpdated() {\n // return this.queryEnvelopes();\n // }\n\n @Watch('selectedPage')\n handlePageUpdated() {\n return this.queryEnvelopes();\n }\n\n componentWillLoad() {\n this.endpoint.onSessionChanged((_, session, profile) => {\n console.log('[ENVELOPES_LIST] onSessionChanged', session, profile);\n });\n this.endpoint.loadSession();\n }\n\n async componentDidLoad() {\n await this.queryEnvelopes();\n this.initiallyLoaded = true;\n }\n\n async queryEnvelopes() {\n try {\n this.loading = true;\n let queryParams: IListEnvelopesParams = {\n page: this.selectedPage,\n // sort: this.sort,\n rows: this.rowsPerPage,\n };\n\n switch (this.view) {\n case 'all':\n queryParams = {\n ...queryParams,\n // sort: this.sort,\n // direction: this.sort === 'name' ? 'asc' : 'desc',\n status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]) as TEnvelopeStatus[],\n };\n break;\n\n case 'inbox':\n queryParams = {\n ...queryParams,\n // is_recipient: true,\n // sort: 'updated_at',\n // recipient_status: ['invited', 'declined', 'opened', 'signed', 'submitted', 'canceled'],\n };\n break;\n\n case 'sent':\n queryParams = {\n ...queryParams,\n // FIXME\n // is_owner: true,\n // sort: 'updated_at',\n };\n break;\n\n case 'action':\n queryParams = {\n ...queryParams,\n // sort: 'updated_at',\n // is_recipient: true,\n status: ['pending', 'in progress'],\n // recipient_status: ['invited', 'opened', 'signed'],\n };\n break;\n\n case 'waiting':\n queryParams = {\n ...queryParams,\n // FIXME\n // is_owner: true,\n // sort: 'updated_at',\n // direction: 'desc',\n status: ['pending', 'in progress'],\n };\n break;\n\n case 'completed':\n queryParams = {\n ...queryParams,\n // sort: 'updated_at',\n // direction: 'desc',\n status: ['complete'],\n };\n break;\n\n default:\n queryParams = {\n ...queryParams,\n // sort: 'updated_at',\n // direction: 'desc',\n status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]) as TEnvelopeStatus[],\n };\n }\n\n // These filters should only be applied in \"View All\" mode. Otherwise the user could have set them to something\n // then changed the view e.g. to Inbox and the filter could break the view (e.g. View:Inbox, Status:Declined\n // would never return anything).\n if (this.view === 'all') {\n if (this.status !== 'all') {\n queryParams.status = [this.status as TEnvelopeStatus];\n }\n }\n\n if (this.sort !== 'updated_at') {\n // queryParams.sort = this.sort;\n // queryParams.direction = this.sort === 'name' ? 'asc' : 'desc';\n }\n\n if (this.match.trim()) {\n // queryParams.match = this.match.trim();\n }\n\n // if (this.containing.trim()) {\n // queryParams.field_value = this.containing.trim();\n // }\n\n const response = await getEnvelopes(this.endpoint, queryParams);\n this.envelopes = response.envelopes;\n this.count = response.count;\n this.loading = false;\n } catch (e) {\n this.loading = false;\n console.log('[ENVELOPES] Error listing envelopes', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleDownload() {\n saveEnvelopesAsZip(this.endpoint, this.selectedEnvelopes)\n .then(() => {\n this.selectedEnvelopes = [];\n })\n .catch(e => {\n console.log('[ENVELOPES] Download error', e);\n VerdocsToast('Download error: ' + e.message, {style: 'error'});\n });\n }\n\n downloadEnvelope(envelope: IEnvelope) {\n saveEnvelopesAsZip(this.endpoint, [envelope]).catch(e => {\n console.log('[ENVELOPES] Download error', e);\n VerdocsToast('Download error: ' + e.message, {style: 'error'});\n });\n }\n\n render() {\n return (\n <Host>\n <div class=\"header\">\n <div class=\"filter\">\n <verdocs-text-input\n id=\"verdocs-filter-name\"\n value={this.match}\n clearable={true}\n autocomplete=\"off\"\n placeholder=\"Filter by Name, Recipient, or Field...\"\n onFocusout={(e: any) => {\n // We don't locally filter envelopes because there are too many fields to match against efficiently.\n this.match = e.target.value.trim();\n this.changeMatch?.emit(this.match);\n }}\n />\n </div>\n\n <verdocs-quick-filter\n label=\"View\"\n value={this.view}\n options={ViewFilters}\n onOptionSelected={e => {\n this.view = e.detail.value as any;\n }}\n />\n\n {this.view === 'all' && (\n <verdocs-quick-filter\n label=\"Status\"\n value={this.status}\n options={StatusFilters}\n onOptionSelected={e => {\n this.status = e.detail.value as any;\n }}\n />\n )}\n\n {this.view === 'all' && (\n <verdocs-quick-filter\n label=\"Sort By\"\n value={this.sort}\n options={SortFilters}\n onOptionSelected={e => {\n this.sort = e.detail.value as any;\n }}\n />\n )}\n\n {/*<div class=\"containing\">*/}\n {/* <div class=\"filter\">*/}\n {/* <verdocs-text-input*/}\n {/* id=\"verdocs-filter-containing\"*/}\n {/* value={this.containing}*/}\n {/* autocomplete=\"off\"*/}\n {/* placeholder=\"Fields Containing...\"*/}\n {/* onInput={(e: any) => {*/}\n {/* this.containing = e.target.value;*/}\n {/* }}*/}\n {/* />*/}\n {/* </div>*/}\n {/*</div>*/}\n\n {this.loading && <verdocs-spinner mode=\"dark\" size={24} />}\n\n <div style={{display: 'flex', flex: '1'}} />\n\n {this.selectedEnvelopes.length > 0 && <verdocs-button label={`Download (${this.selectedEnvelopes.length})`} onClick={() => this.handleDownload()} />}\n </div>\n\n {this.envelopes.map(envelope => {\n const recipientsWithActions = getRecipientsWithActions(envelope);\n const userCanCancel = userCanCancelEnvelope(this.endpoint.profile, envelope);\n const userRole = recipientsWithActions.find(recipient => recipient.email === this.endpoint.session?.email || '');\n const userCanFinish = userRole && userCanCancel && userCanAct(this.endpoint.session?.email || '', recipientsWithActions);\n\n const menuOptions = [\n {label: 'View Envelope', id: 'view'},\n {label: 'Finish Envelope', id: 'finish', disabled: !userCanFinish},\n {label: 'Download', id: 'download'},\n {label: 'Cancel', id: 'cancel', disabled: !userCanCancel},\n ];\n\n return (\n <div class=\"envelope\" key={envelope.id} onClick={() => this.viewEnvelope?.emit({endpoint: this.endpoint, envelope})}>\n <div class=\"inner\">\n <verdocs-checkbox\n checked={this.selectedEnvelopes.findIndex(e => e.id === envelope.id) !== -1}\n onClick={e => e.stopPropagation()} // So this doesn't trigger navigation\n onInput={(e: any) => {\n if (e.target.checked) {\n this.selectedEnvelopes = [...this.selectedEnvelopes, envelope];\n } else {\n this.selectedEnvelopes = this.selectedEnvelopes.filter(e => e.id !== envelope.id);\n }\n }}\n />\n\n <div class=\"vert-spacer\" />\n <span innerHTML={DocumentIcon} class=\"envelope-icon\" />\n\n <div class=\"envelope-name\">\n {envelope.name}: <div class=\"envelope-recipients\">{envelope.recipients.map(r => formatFullName(r))}</div>\n </div>\n\n <div class=\"vert-spacer\" />\n <verdocs-status-indicator envelope={envelope} style={{width: '125px'}} />\n\n <div class=\"vert-spacer\" />\n <div class=\"last-modified\">{new Date(envelope.updated_at).toLocaleString()}</div>\n\n <div class=\"vert-spacer\" />\n <verdocs-dropdown\n options={menuOptions}\n onOptionSelected={e => {\n switch (e.detail.id) {\n case 'view':\n this.viewEnvelope?.emit({endpoint: this.endpoint, envelope});\n break;\n case 'finish':\n this.finishEnvelope?.emit({endpoint: this.endpoint, envelope});\n break;\n case 'download':\n this.downloadEnvelope(envelope);\n break;\n case 'cancel':\n if (window.confirm('Are you sure you want to cancel this envelope?')) {\n cancelEnvelope(this.endpoint, envelope.id)\n .then(() => VerdocsToast('Envelope canceled'))\n .catch(e => VerdocsToast('Unable to cancel envelope: ' + e.messabge, {style: 'error'}));\n this.queryEnvelopes().catch(() => {});\n }\n break;\n }\n }}\n />\n </div>\n </div>\n );\n })}\n\n {!this.initiallyLoaded && (\n <div style={{width: '100%'}}>\n {integerSequence(0, this.rowsPerPage).map(() => (\n <div class=\"envelope-placeholder\" />\n ))}\n </div>\n )}\n\n {this.initiallyLoaded && !this.envelopes.length && <div class=\"empty-text\">No matching envelopes found. Please adjust your filters and try again.</div>}\n\n {this.initiallyLoaded && this.envelopes.length && this.showPagination ? (\n <div style={{marginTop: '20px'}}>\n <verdocs-pagination\n selectedPage={this.selectedPage}\n perPage={this.rowsPerPage}\n itemCount={this.count}\n onSelectPage={e => {\n this.selectedPage = e.detail.selectedPage;\n }}\n />\n </div>\n ) : (\n <div />\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"p-DmQa-gqf.system.js","sources":["src/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.scss?tag=verdocs-envelopes-list","src/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-envelopes-list {\n display: flex;\n padding: 10px;\n font-size: 18px;\n flex-wrap: nowrap;\n border-radius: 6px;\n color: $label-color;\n flex-direction: column;\n font-family: $primary-font;\n\n @media screen and (max-width: 800px) {\n font-size: 14px;\n }\n\n .envelope-placeholder {\n height: 48px;\n flex: 0 0 48px;\n margin: 5px 0;\n border-radius: 5px;\n background: $verdocs-grey-3;\n }\n\n .header {\n width: 100%;\n row-gap: 4px;\n display: flex;\n flex-wrap: wrap;\n column-gap: 12px;\n margin: 0 0 10px 0;\n align-items: center;\n flex-direction: row;\n\n .filter {\n width: 300px;\n }\n\n verdocs-text-input {\n margin: 0;\n\n input {\n height: 32px;\n }\n }\n }\n\n .filter {\n align-items: center;\n }\n\n .envelope {\n width: 100%;\n margin: 3px 0;\n background: $verdocs-grey-4;\n\n &:hover {\n cursor: pointer;\n background: $verdocs-grey-3;\n }\n\n .inner {\n gap: 12px;\n display: flex;\n padding: 8px 14px;\n border-radius: 5px;\n flex-direction: row;\n align-items: center;\n container-type: inline-size;\n\n svg {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .vert-spacer {\n height: 50px;\n display: flex;\n flex: 0 0 1px;\n border-right: 1px solid #dad8dd;\n\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .envelope-icon {\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n verdocs-checkbox {\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .last-modified {\n color: #444;\n display: flex;\n flex: 0 0 180px;\n flex-direction: row;\n align-items: center;\n white-space: nowrap;\n\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .envelope-name {\n flex: 1;\n display: flex;\n color: #000000;\n line-height: 28px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n .envelope-recipients {\n color: #4b5563;\n font-weight: 700;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n .empty-text {\n text-align: center;\n margin: 16px 0 0 0;\n padding: 80px 80px;\n border: 2px solid #ccc;\n }\n\n .containing {\n gap: 12px;\n display: flex;\n align-items: center;\n flex-direction: row;\n }\n\n verdocs-status-indicator {\n @media screen and (max-width: 800px) {\n font-size: 14px;\n }\n }\n}\n","import {Component, Prop, Host, h, State, Event, EventEmitter, Watch} from '@stencil/core';\nimport {userCanCancelEnvelope, userCanAct, cancelEnvelope, integerSequence, formatFullName} from '@verdocs/js-sdk';\nimport {IEnvelope, IListEnvelopesParams, TEnvelopeStatus, VerdocsEndpoint, getEnvelopes, getRecipientsWithActions} from '@verdocs/js-sdk';\nimport {IFilterOption} from '../../controls/verdocs-quick-filter/verdocs-quick-filter';\nimport {saveEnvelopesAsZip} from '../../../utils/utils';\nimport {VerdocsToast} from '../../../utils/Toast';\nimport {SDKError} from '../../../utils/errors';\n\nconst DocumentIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" stroke=\"#000000\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z\" /></svg>`;\n\nconst ViewFilters: IFilterOption[] = [\n {value: 'all', label: 'All'},\n {value: 'inbox', label: 'Inbox'},\n {value: 'sent', label: 'Sent'},\n {value: 'completed', label: 'Completed'},\n {value: 'action', label: 'Action Required'},\n {value: 'waiting', label: 'Waiting on Others'},\n];\n\nconst StatusFilters: IFilterOption[] = [\n {value: 'all', label: 'All'},\n {value: 'pending', label: 'Pending'},\n {value: 'in progress', label: 'In Progress'},\n {value: 'complete', label: 'Completed'},\n {value: 'declined', label: 'Declined'},\n {value: 'canceled', label: 'Canceled'},\n];\n\nconst SortFilters: IFilterOption[] = [\n {value: 'created_at', label: 'Created'},\n {value: 'updated_at', label: 'Updated'},\n {value: 'canceled_at', label: 'Canceled'},\n {value: 'envelope_name', label: 'Name'},\n {value: 'envelope_status', label: 'Status'},\n];\n\n/**\n * Displays a list of envelopes matching specified conditions.\n */\n@Component({\n tag: 'verdocs-envelopes-list',\n styleUrl: 'verdocs-envelopes-list.scss',\n})\nexport class VerdocsEnvelopesList {\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 filtered view to display. \"completed\" will show envelopes that have been submitted. \"action\" will\n * show envelopes where the user is a recipient and the envelope is not completed. \"waiting\" will show\n * only envelopes where the user is the sender and the envelope is not completed.\n */\n @Prop({reflect: true, mutable: true}) view?: 'all' | 'inbox' | 'sent' | 'completed' | 'action' | 'waiting' = undefined;\n\n /**\n * The status value to filter by\n */\n @Prop({reflect: true, mutable: true}) status: TEnvelopeStatus | 'all' = 'all';\n\n /**\n * The sort field to use\n */\n @Prop({reflect: true, mutable: true}) sort: 'name' | 'created_at' | 'updated_at' | 'canceled_at' | 'status' = 'created_at';\n\n /**\n * If set, filter envelopes by the specified string.\n */\n @Prop({reflect: true, mutable: true}) match: string = '';\n\n /**\n * If set, filter envelopes by the specified \"containing\" value.\n */\n // @Prop({reflect: true, mutable: true}) containing: string = '';\n\n /**\n * Whether or not pagination should be enabled.\n */\n @Prop() showPagination = true;\n\n /**\n * The number of rows to display per page.\n */\n @Prop() rowsPerPage = 10;\n\n /**\n * The initial page number to select. Pagination is internally controlled but may be overriden by the\n * host applicaiton.\n */\n @Prop() selectedPage = 0;\n\n /**\n * Event fired when the user changes their view. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeView: EventEmitter<'all' | 'inbox' | 'sent' | 'completed' | 'action' | 'waiting'>;\n\n /**\n * Event fired when the user changes their status filter. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeStatus: EventEmitter<TEnvelopeStatus | 'all'>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeSort: EventEmitter<'name' | 'created_at' | 'updated_at' | 'canceled_at' | 'status'>;\n\n /**\n * Event fired when the user changes the match filter. This is fired for every inputChange event (every character\n * typed). This event is provided for balance with the other events, but host applications should generally not\n * save this value. Users might appreciate applications remembering their sorting or filtering preferences, but\n * probably not their search terms.\n */\n @Event({composed: true}) changeMatch: EventEmitter<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 /**\n * Event fired when the user clicks an activity entry. Typically the host application will use this to navigate\n * to the envelope detail view.\n */\n @Event({composed: true}) viewEnvelope: EventEmitter<{endpoint: VerdocsEndpoint; envelope: IEnvelope}>;\n\n /**\n * Event fired when the user clicks to finish the envelope.\n */\n @Event({composed: true}) finishEnvelope: EventEmitter<{endpoint: VerdocsEndpoint; envelope: IEnvelope}>;\n\n @State() count = 0;\n @State() initiallyLoaded = false;\n @State() loading = true;\n @State() selectedEnvelopes: IEnvelope[] = [];\n @State() envelopes: IEnvelope[] = [];\n\n @Watch('view')\n handleViewUpdated() {\n return this.queryEnvelopes();\n }\n\n @Watch('status')\n handleStatusUpdated() {\n return this.queryEnvelopes();\n }\n\n @Watch('sort')\n handleSortUpdated() {\n return this.queryEnvelopes();\n }\n\n @Watch('match')\n handleMatchUpdated() {\n return this.queryEnvelopes();\n }\n\n // @Watch('containing')\n // handleContainingUpdated() {\n // return this.queryEnvelopes();\n // }\n\n @Watch('selectedPage')\n handlePageUpdated() {\n return this.queryEnvelopes();\n }\n\n componentWillLoad() {\n this.endpoint.onSessionChanged((_, session, profile) => {\n console.log('[ENVELOPES_LIST] onSessionChanged', session, profile);\n });\n this.endpoint.loadSession();\n }\n\n async componentDidLoad() {\n await this.queryEnvelopes();\n this.initiallyLoaded = true;\n }\n\n async queryEnvelopes() {\n try {\n this.loading = true;\n let queryParams: IListEnvelopesParams = {\n page: this.selectedPage,\n // sort: this.sort,\n rows: this.rowsPerPage,\n };\n\n switch (this.view) {\n case 'all':\n queryParams = {\n ...queryParams,\n // sort: this.sort,\n // direction: this.sort === 'name' ? 'asc' : 'desc',\n status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]) as TEnvelopeStatus[],\n };\n break;\n\n case 'inbox':\n queryParams = {\n ...queryParams,\n // is_recipient: true,\n // sort: 'updated_at',\n // recipient_status: ['invited', 'declined', 'opened', 'signed', 'submitted', 'canceled'],\n };\n break;\n\n case 'sent':\n queryParams = {\n ...queryParams,\n // FIXME\n // is_owner: true,\n // sort: 'updated_at',\n };\n break;\n\n case 'action':\n queryParams = {\n ...queryParams,\n // sort: 'updated_at',\n // is_recipient: true,\n status: ['pending', 'in progress'],\n // recipient_status: ['invited', 'opened', 'signed'],\n };\n break;\n\n case 'waiting':\n queryParams = {\n ...queryParams,\n // FIXME\n // is_owner: true,\n // sort: 'updated_at',\n // direction: 'desc',\n status: ['pending', 'in progress'],\n };\n break;\n\n case 'completed':\n queryParams = {\n ...queryParams,\n // sort: 'updated_at',\n // direction: 'desc',\n status: ['complete'],\n };\n break;\n\n default:\n queryParams = {\n ...queryParams,\n // sort: 'updated_at',\n // direction: 'desc',\n status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]) as TEnvelopeStatus[],\n };\n }\n\n // These filters should only be applied in \"View All\" mode. Otherwise the user could have set them to something\n // then changed the view e.g. to Inbox and the filter could break the view (e.g. View:Inbox, Status:Declined\n // would never return anything).\n if (this.view === 'all') {\n if (this.status !== 'all') {\n queryParams.status = [this.status as TEnvelopeStatus];\n }\n }\n\n if (this.sort !== 'updated_at') {\n // queryParams.sort = this.sort;\n // queryParams.direction = this.sort === 'name' ? 'asc' : 'desc';\n }\n\n if (this.match.trim()) {\n // queryParams.match = this.match.trim();\n }\n\n // if (this.containing.trim()) {\n // queryParams.field_value = this.containing.trim();\n // }\n\n const response = await getEnvelopes(this.endpoint, queryParams);\n this.envelopes = response.envelopes;\n this.count = response.count;\n this.loading = false;\n } catch (e) {\n this.loading = false;\n console.log('[ENVELOPES] Error listing envelopes', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleDownload() {\n saveEnvelopesAsZip(this.endpoint, this.selectedEnvelopes)\n .then(() => {\n this.selectedEnvelopes = [];\n })\n .catch(e => {\n console.log('[ENVELOPES] Download error', e);\n VerdocsToast('Download error: ' + e.message, {style: 'error'});\n });\n }\n\n downloadEnvelope(envelope: IEnvelope) {\n saveEnvelopesAsZip(this.endpoint, [envelope]).catch(e => {\n console.log('[ENVELOPES] Download error', e);\n VerdocsToast('Download error: ' + e.message, {style: 'error'});\n });\n }\n\n render() {\n return (\n <Host>\n <div class=\"header\">\n <div class=\"filter\">\n <verdocs-text-input\n id=\"verdocs-filter-name\"\n value={this.match}\n clearable={true}\n autocomplete=\"off\"\n placeholder=\"Filter by Name, Recipient, or Field...\"\n onFocusout={(e: any) => {\n // We don't locally filter envelopes because there are too many fields to match against efficiently.\n this.match = e.target.value.trim();\n this.changeMatch?.emit(this.match);\n }}\n />\n </div>\n\n <verdocs-quick-filter\n label=\"View\"\n value={this.view}\n options={ViewFilters}\n onOptionSelected={e => {\n this.view = e.detail.value as any;\n }}\n />\n\n {this.view === 'all' && (\n <verdocs-quick-filter\n label=\"Status\"\n value={this.status}\n options={StatusFilters}\n onOptionSelected={e => {\n this.status = e.detail.value as any;\n }}\n />\n )}\n\n {this.view === 'all' && (\n <verdocs-quick-filter\n label=\"Sort By\"\n value={this.sort}\n options={SortFilters}\n onOptionSelected={e => {\n this.sort = e.detail.value as any;\n }}\n />\n )}\n\n {/*<div class=\"containing\">*/}\n {/* <div class=\"filter\">*/}\n {/* <verdocs-text-input*/}\n {/* id=\"verdocs-filter-containing\"*/}\n {/* value={this.containing}*/}\n {/* autocomplete=\"off\"*/}\n {/* placeholder=\"Fields Containing...\"*/}\n {/* onInput={(e: any) => {*/}\n {/* this.containing = e.target.value;*/}\n {/* }}*/}\n {/* />*/}\n {/* </div>*/}\n {/*</div>*/}\n\n {this.loading && <verdocs-spinner mode=\"dark\" size={24} />}\n\n <div style={{display: 'flex', flex: '1'}} />\n\n {this.selectedEnvelopes.length > 0 && <verdocs-button label={`Download (${this.selectedEnvelopes.length})`} onClick={() => this.handleDownload()} />}\n </div>\n\n {this.envelopes.map(envelope => {\n const recipientsWithActions = getRecipientsWithActions(envelope);\n const userCanCancel = userCanCancelEnvelope(this.endpoint.profile, envelope);\n const userRole = recipientsWithActions.find(recipient => recipient.email === this.endpoint.session?.email || '');\n const userCanFinish = userRole && userCanCancel && userCanAct(this.endpoint.session?.email || '', recipientsWithActions);\n\n const menuOptions = [\n {label: 'View Envelope', id: 'view'},\n {label: 'Finish Envelope', id: 'finish', disabled: !userCanFinish},\n {label: 'Download', id: 'download'},\n {label: 'Cancel', id: 'cancel', disabled: !userCanCancel},\n ];\n\n return (\n <div class=\"envelope\" key={envelope.id} onClick={() => this.viewEnvelope?.emit({endpoint: this.endpoint, envelope})}>\n <div class=\"inner\">\n <verdocs-checkbox\n checked={this.selectedEnvelopes.findIndex(e => e.id === envelope.id) !== -1}\n onClick={e => e.stopPropagation()} // So this doesn't trigger navigation\n onInput={(e: any) => {\n if (e.target.checked) {\n this.selectedEnvelopes = [...this.selectedEnvelopes, envelope];\n } else {\n this.selectedEnvelopes = this.selectedEnvelopes.filter(e => e.id !== envelope.id);\n }\n }}\n />\n\n <div class=\"vert-spacer\" />\n <span innerHTML={DocumentIcon} class=\"envelope-icon\" />\n\n <div class=\"envelope-name\">\n {envelope.name}: <div class=\"envelope-recipients\">{envelope.recipients.map(r => formatFullName(r))}</div>\n </div>\n\n <div class=\"vert-spacer\" />\n <verdocs-status-indicator envelope={envelope} style={{width: '125px'}} />\n\n <div class=\"vert-spacer\" />\n <div class=\"last-modified\">{new Date(envelope.updated_at).toLocaleString()}</div>\n\n <div class=\"vert-spacer\" />\n <verdocs-dropdown\n options={menuOptions}\n onOptionSelected={e => {\n switch (e.detail.id) {\n case 'view':\n this.viewEnvelope?.emit({endpoint: this.endpoint, envelope});\n break;\n case 'finish':\n this.finishEnvelope?.emit({endpoint: this.endpoint, envelope});\n break;\n case 'download':\n this.downloadEnvelope(envelope);\n break;\n case 'cancel':\n if (window.confirm('Are you sure you want to cancel this envelope?')) {\n cancelEnvelope(this.endpoint, envelope.id)\n .then(() => VerdocsToast('Envelope canceled'))\n .catch(e => VerdocsToast('Unable to cancel envelope: ' + e.messabge, {style: 'error'}));\n this.queryEnvelopes().catch(() => {});\n }\n break;\n }\n }}\n />\n </div>\n </div>\n );\n })}\n\n {!this.initiallyLoaded && (\n <div style={{width: '100%'}}>\n {integerSequence(0, this.rowsPerPage).map(() => (\n <div class=\"envelope-placeholder\" />\n ))}\n </div>\n )}\n\n {this.initiallyLoaded && !this.envelopes.length && <div class=\"empty-text\">No matching envelopes found. Please adjust your filters and try again.</div>}\n\n {this.initiallyLoaded && this.envelopes.length && this.showPagination ? (\n <div style={{marginTop: '20px'}}>\n <verdocs-pagination\n selectedPage={this.selectedPage}\n perPage={this.rowsPerPage}\n itemCount={this.count}\n onSelectPage={e => {\n this.selectedPage = e.detail.selectedPage;\n }}\n />\n </div>\n ) : (\n <div />\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-dY2me2i5.system.js","sources":["src/components/controls/verdocs-menu-panel/verdocs-menu-panel.scss?tag=verdocs-menu-panel","src/components/controls/verdocs-menu-panel/verdocs-menu-panel.tsx","src/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.scss?tag=verdocs-template-role-properties","src/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\n#verdocs-menu-panel-overlay {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 10000;\n position: fixed;\n background-color: #0000007f;\n}\n\n#verdocs-menu-panel {\n opacity: 0;\n z-index: 10001;\n position: fixed;\n overflow-y: scroll;\n background-color: #ffffff;\n font-family: $verdocs-primary-font;\n\n -webkit-animation: showVerdocsMenuPanel 0.35s;\n -webkit-animation-fill-mode: forwards;\n}\n\n// TODO: Parameterize the width\n@-webkit-keyframes showVerdocsMenuPanel {\n 0% {\n opacity: 0;\n right: -300px;\n }\n\n 100% {\n right: 0;\n opacity: 1;\n }\n}\n","import {Component, EventEmitter, h, Host, Listen, Prop, Event} from '@stencil/core';\n\n/**\n * Display a menu panel in a left or right sidebar. The panel will animate (slide)\n * as it appears, and an background will be shown over the rest of the page. If\n * the background overlay is present, it can be clicked to dismiss the panel.\n *\n * ```ts\n * <verdocs-menu-panel>\n * <div style=\"padding: 20px;\">Menu Panel</div>\n * </verdocs-menu-panel>\n * ```\n */\n@Component({\n tag: 'verdocs-menu-panel',\n styleUrl: 'verdocs-menu-panel.scss',\n shadow: false,\n})\nexport class VerdocsMenuPanel {\n private portal: HTMLElement;\n private element: HTMLElement;\n private moved: boolean = false;\n private overlayId = `verdocs-menu-panel-overlay`;\n private panelId = `verdocs-menu-panel`;\n\n /**\n * Which side of the screen to place the panel.\n */\n @Prop() side: 'left' | 'right' = 'right';\n\n /**\n * Whether to show an overlay over the rest of the page.\n */\n @Prop() overlay = true;\n\n /**\n * The width of the panel.\n */\n @Prop() width = 300;\n\n @Event() close: EventEmitter<void>;\n\n @Listen('click', {target: 'document'})\n handleClick(e: any) {\n if (!this.element.contains(e.target)) {\n this.hide();\n this.close?.emit();\n }\n }\n\n componentWillLoad() {\n this.hide();\n\n if (this.overlay) {\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', this.overlayId);\n document.body.append(this.portal);\n }\n\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', this.panelId);\n this.portal.style.top = `0px`;\n this.portal.style.bottom = `0px`;\n this.portal.style.width = `${this.width}px`;\n\n if (this.side === 'left') {\n this.portal.style.left = `0px`;\n } else {\n this.portal.style.right = `0px`;\n }\n\n document.body.append(this.portal);\n }\n\n componentDidLoad() {\n this.portal.appendChild(this.element);\n }\n\n disconnectedCallback() {\n this.moved ? this.portal.remove() : (this.moved = true);\n }\n\n hide() {\n document.getElementById(this.overlayId)?.remove();\n document.getElementById(this.panelId)?.remove();\n }\n\n render() {\n return (\n <Host ref={el => (this.element = el)}>\n <slot />\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-template-role-properties {\n box-sizing: border-box;\n font-family: $primary-font;\n\n div {\n box-sizing: border-box;\n }\n\n .heading {\n display: flex;\n font-size: 20px;\n font-weight: 500;\n flex-direction: row;\n }\n\n .buttons {\n display: flex;\n margin-top: 10px;\n align-items: center;\n flex-direction: row;\n justify-content: space-between;\n\n verdocs-button {\n margin-left: 16px;\n }\n }\n\n form {\n gap: 15px;\n padding: 20px;\n display: flex;\n flex-direction: column;\n\n .instructions {\n margin: 7px 0 0 0;\n font-size: 12px;\n font-style: italic;\n }\n\n .input-label {\n display: block;\n font-size: 14px;\n flex: 0 0 100px;\n font-weight: 700;\n margin: 0 0 4px 0;\n color: $label-color-light;\n }\n\n .first-last {\n gap: 15px;\n display: flex;\n flex-direction: row;\n }\n }\n\n form verdocs-help-icon {\n transform: scale(0.8);\n }\n\n verdocs-select-input {\n //flex: 1;\n //margin: 0;\n\n label {\n display: block;\n }\n }\n\n verdocs-text-input {\n margin: 0;\n\n label {\n display: block;\n }\n\n .input-label {\n flex: 0 0 100px;\n }\n\n input {\n flex: 1;\n display: flex;\n }\n\n verdocs-text-input {\n margin: 0;\n }\n }\n\n .checkbox-wrapper {\n flex: 1;\n display: flex;\n }\n\n .delete-button {\n height: 34px;\n display: flex;\n padding: 0 6px;\n cursor: pointer;\n background: none;\n border-radius: 4px;\n align-items: center;\n border: 1px solid #999;\n justify-content: center;\n\n svg {\n width: 24px;\n height: 24px;\n }\n\n &:active {\n background: #f3f3f3;\n }\n }\n}\n","import {Component, Prop, h, Event, EventEmitter, Host, State} from '@stencil/core';\nimport {deleteTemplateRole, getTemplate, isValidEmail, ITemplate, TRecipientType, updateTemplateRole, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst TrashIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#a50021\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0\" /></svg>`;\n\n/**\n * Present an editing form suitable for adjusting template-role properties.\n */\n@Component({\n tag: 'verdocs-template-role-properties',\n styleUrl: 'verdocs-template-role-properties.scss',\n})\nexport class VerdocsTemplateRoleProperties {\n private templateListenerId = null;\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 template ID to edit.\n */\n @Prop() templateId: string = '';\n\n /**\n * The role name to edit.\n */\n @Prop() roleName: string = '';\n\n /**\n * Event fired when the user cancels the dialog.\n */\n @Event({composed: true}) close: EventEmitter;\n\n /**\n * Event fired when the user deletes the role. The parent should update its UI to reflect the removal. When this event is emitted,\n * the role will have already been deleted server-side.\n */\n @Event({composed: true}) delete: EventEmitter<{templateId: string; roleName: 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 @State() dirty = false;\n @State() saving = false;\n @State() name = '';\n @State() type: TRecipientType = 'signer';\n @State() first_name = '';\n @State() last_name = '';\n @State() email = '';\n @State() phone = '';\n @State() delegator = false;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n\n if (!this.templateId) {\n console.log(`[ROLES] Missing required template ID ${this.templateId}`);\n return;\n }\n\n if (!this.endpoint.session) {\n console.log('[ROLES] Unable to start builder session, must be authenticated');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[ROLES Error with preview session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n console.log('[ROLES] Loading tempate', this.templateId);\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n console.log('[BUILD] Template Updated', template);\n this.template = template;\n this.loading = false;\n\n const editingRole = this.template?.roles.find(role => role.name === this.roleName);\n if (editingRole) {\n this.name = editingRole.name;\n this.type = editingRole.type;\n this.first_name = editingRole.first_name;\n this.last_name = editingRole.last_name;\n this.email = editingRole.email;\n this.phone = editingRole.phone;\n this.delegator = editingRole.delegator;\n console.log('[ROLES] Editing role', editingRole);\n }\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n handleCancel(e) {\n e.stopPropagation();\n const editingRole = this.template?.roles.find(role => role.name === this.roleName);\n if (editingRole) {\n this.name = editingRole.name;\n this.type = editingRole.type;\n this.first_name = editingRole.first_name;\n this.last_name = editingRole.last_name;\n this.email = editingRole.email;\n this.phone = editingRole.phone;\n this.delegator = editingRole.delegator;\n }\n\n this.dirty = false;\n this.close?.emit();\n }\n\n async handleSave(e) {\n e.stopPropagation();\n this.saving = true;\n updateTemplateRole(this.endpoint, this.templateId, this.roleName, {\n name: this.name,\n type: this.type,\n first_name: this.first_name,\n last_name: this.last_name,\n email: this.email,\n phone: this.phone,\n delegator: this.delegator,\n })\n .then(async r => {\n console.log('[ROLES] Update result', r);\n this.saving = false;\n this.dirty = false;\n const newTemplate = JSON.parse(JSON.stringify(this.template));\n const roleIndex = newTemplate.roles.findIndex(role => role.name === this.roleName);\n if (roleIndex > -1) {\n newTemplate.roles[roleIndex] = r;\n }\n Store.updateTemplate(this.templateId, newTemplate);\n this.close?.emit();\n })\n .catch(e => {\n console.log('[ROLES Update error', e);\n this.saving = false;\n });\n }\n\n async handleDelete(e) {\n e.stopPropagation();\n if (window.confirm('Are you sure you wish to remove this role? All associated fields will be removed as well. This action cannot be undone.')) {\n deleteTemplateRole(this.endpoint, this.templateId, this.roleName)\n .then(() => {\n const newTemplate = JSON.parse(JSON.stringify(this.template)) as ITemplate;\n newTemplate.roles = newTemplate.roles.filter(role => role.name !== this.roleName);\n Store.getTemplate(this.endpoint, this.templateId, true);\n // Store.updateTemplate(this.templateId, newTemplate);\n this.delete?.emit({templateId: this.templateId, roleName: this.roleName});\n this.close?.emit();\n })\n .catch(e => {\n console.log('[ROLES Deletion error', e);\n });\n }\n }\n\n render() {\n const hasFields = (this.template?.fields || []).some(field => field.role_name === this.roleName);\n\n // Either all three should be empty, or all three need to be filled\n const isValid = (!this.email && !this.first_name && !this.last_name) || (isValidEmail(this.email) && !!this.first_name && !!this.last_name);\n\n return (\n <Host>\n <form onSubmit={e => e.preventDefault()} onClick={e => e.stopPropagation()} autocomplete=\"off\">\n <div>\n <verdocs-text-input\n id=\"verdocs-role-name\"\n label=\"Role Name (Must be unique)\"\n value={this.name}\n autocomplete=\"off\"\n disabled={hasFields}\n placeholder=\"Role Name...\"\n onInput={(e: any) => {\n this.name = e.target.value;\n this.dirty = true;\n }}\n />\n\n {hasFields && <div class=\"instructions\">This role has fields assigned and can no longer be renamed.</div>}\n {/*<div class=\"instructions\">{hasFields ? 'This role has fields assigned and can no longer be renamed.' : 'A unique name to identify the role in the workflow.'}</div>*/}\n </div>\n\n <div>\n <div class=\"input-label\">Type:</div>\n <verdocs-select-input\n value={this.type}\n options={[\n {label: 'Signer', value: 'signer'},\n {label: 'CC', value: 'cc'},\n {label: 'Approver', value: 'approver'},\n ]}\n onInput={(e: any) => {\n this.type = e.target.value;\n this.dirty = true;\n }}\n />\n {/*<div class=\"instructions\">*/}\n {/* Most participants are Signers. CC roles are notified when documents are signed, but have no other actions. Approvers get notified when signing is completed to perform*/}\n {/* a final review.*/}\n {/*</div>*/}\n </div>\n\n <div>\n <div class=\"input-label\">Default Contact Info:</div>\n\n <div class=\"first-last\">\n <verdocs-text-input\n id=\"verdocs-recipient-first\"\n value={this.first_name}\n autocomplete=\"off\"\n placeholder=\"First...\"\n onInput={(e: any) => {\n this.first_name = e.target.value;\n this.dirty = true;\n }}\n />\n\n <verdocs-text-input\n id=\"verdocs-recipient-first\"\n value={this.last_name}\n autocomplete=\"off\"\n placeholder=\"Last...\"\n onInput={(e: any) => {\n this.last_name = e.target.value;\n this.dirty = true;\n }}\n />\n </div>\n </div>\n\n <div>\n <verdocs-text-input\n id=\"verdocs-recipient-email\"\n value={this.email}\n autocomplete=\"off\"\n placeholder=\"Email Address...\"\n onInput={(e: any) => {\n this.email = e.target.value;\n this.dirty = true;\n }}\n />\n\n <div style={{height: '15px'}} />\n\n <div>\n <verdocs-text-input\n id=\"verdocs-recipient-phone\"\n value={this.phone}\n autocomplete=\"off\"\n // helpText=\"The recipient's phone number, if it will always stay the same. Leave blank to supply this value later, when each new envelope is created from the template.\"\n placeholder=\"Phone Number...\"\n onInput={(e: any) => {\n this.phone = e.target.value;\n this.dirty = true;\n }}\n />\n {/*<div class=\"instructions\">Default name and contact information. This may be changed later when creating and envelope with this template.</div>*/}\n </div>\n </div>\n\n {/*<div class=\"row\">*/}\n {/* <div class=\"input-label\">May Delegate:</div>*/}\n {/* <div class=\"checkbox-wrapper\">*/}\n {/* <verdocs-checkbox*/}\n {/* checked={this.delegator}*/}\n {/* onInput={(e: any) => {*/}\n {/* this.delegator = e.target.checked;*/}\n {/* this.dirty = true;*/}\n {/* }}*/}\n {/* />*/}\n {/* </div>*/}\n\n {/* <verdocs-help-icon text=\"If enabled, this recipient may delegate their actions to another individual.\" />*/}\n {/*</div>*/}\n\n <div class=\"buttons\">\n <button class=\"delete-button\" disabled={this.dirty} onClick={e => this.handleDelete(e)} innerHTML={TrashIcon} />\n\n <div style={{flex: '1'}} />\n\n {/*<verdocs-button size=\"small\" variant=\"outline\" label=\"Cancel\" disabled={!this.dirty} onClick={e => this.handleCancel(e)} />*/}\n <verdocs-button size=\"small\" label=\"Save\" disabled={!this.dirty || !isValid} onClick={e => this.handleSave(e)} />\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;MAAA,MAAM,mBAAmB,GAAG,yeAAye;;YCkBxf,gBAAgB,iCAAA,MAAA;MAL7B,IAAA,WAAA,CAAA,OAAA,EAAA;;;MAQU,QAAA,IAAK,CAAA,KAAA,GAAY,KAAK;MACtB,QAAA,IAAS,CAAA,SAAA,GAAG,CAAA,0BAAA,CAA4B;MACxC,QAAA,IAAO,CAAA,OAAA,GAAG,CAAA,kBAAA,CAAoB;MAEtC;;MAEG;MACK,QAAA,IAAI,CAAA,IAAA,GAAqB,OAAO;MAExC;;MAEG;MACK,QAAA,IAAO,CAAA,OAAA,GAAG,IAAI;MAEtB;;MAEG;MACK,QAAA,IAAK,CAAA,KAAA,GAAG,GAAG;MAwDpB;MAnDC,IAAA,WAAW,CAAC,CAAM,EAAA;;MAChB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;kBACpC,IAAI,CAAC,IAAI,EAAE;kBACX,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,EAAE;;;UAItB,iBAAiB,GAAA;cACf,IAAI,CAAC,IAAI,EAAE;MAEX,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;kBAChB,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;kBAC3C,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;kBAC9C,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;;cAGnC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;cAC3C,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;cAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK;cAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;MAChC,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,EAAA,CAAI;MAE3C,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;kBACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK;;mBACzB;kBACL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;;cAGjC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;;UAGnC,gBAAgB,GAAA;cACd,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;;UAGvC,oBAAoB,GAAA;cAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;;UAGzD,IAAI,GAAA;;MACF,QAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,EAAE;MACjD,QAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,EAAE;;UAGjD,MAAM,GAAA;MACJ,QAAA,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,EAAA,EAClC,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACH;;;;;MC3Fb,MAAM,gCAAgC,GAAG,mxEAAmxE;;MCK5zE,MAAM,SAAS,GAAG,CAAA,qkBAAA,CAAukB;YAS5kB,6BAA6B,+CAAA,MAAA;MAJ1C,IAAA,WAAA,CAAA,OAAA,EAAA;;;;;MAKU,QAAA,IAAkB,CAAA,kBAAA,GAAG,IAAI;MAEjC;;MAEG;MACK,QAAA,IAAA,CAAA,QAAQ,GAAoB,eAAe,CAAC,UAAU,EAAE;MAEhE;;MAEG;MACK,QAAA,IAAU,CAAA,UAAA,GAAW,EAAE;MAE/B;;MAEG;MACK,QAAA,IAAQ,CAAA,QAAA,GAAW,EAAE;MAmBpB,QAAA,IAAK,CAAA,KAAA,GAAG,KAAK;MACb,QAAA,IAAM,CAAA,MAAA,GAAG,KAAK;MACd,QAAA,IAAI,CAAA,IAAA,GAAG,EAAE;MACT,QAAA,IAAI,CAAA,IAAA,GAAmB,QAAQ;MAC/B,QAAA,IAAU,CAAA,UAAA,GAAG,EAAE;MACf,QAAA,IAAS,CAAA,SAAA,GAAG,EAAE;MACd,QAAA,IAAK,CAAA,KAAA,GAAG,EAAE;MACV,QAAA,IAAK,CAAA,KAAA,GAAG,EAAE;MACV,QAAA,IAAS,CAAA,SAAA,GAAG,KAAK;MAEjB,QAAA,IAAO,CAAA,OAAA,GAAG,IAAI;MACd,QAAA,IAAQ,CAAA,QAAA,GAAqB,IAAI;MAmQ3C;MAjQC,IAAA,MAAM,iBAAiB,GAAA;;MACrB,QAAA,IAAI;MACF,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;MAE3B,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;sBACpB,OAAO,CAAC,GAAG,CAAC,CAAA,qCAAA,EAAwC,IAAI,CAAC,UAAU,CAAE,CAAA,CAAC;sBACtE;;MAGF,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;MAC1B,gBAAA,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC;sBAC7E;;kBAGF,IAAI,CAAC,gBAAgB,EAAE;;cACvB,OAAO,CAAC,EAAE;MACV,YAAA,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,CAAC,CAAC;MACnD,YAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA,EAAA,GAAA,CAAC,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,EAAE,CAAA,EAAA,GAAA,CAAC,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,CAAC,CAAC;;;UAItF,oBAAoB,GAAA;cAClB,IAAI,CAAC,kBAAkB,EAAE;;MAG3B,IAAA,MAAM,gBAAgB,GAAA;cACpB,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,UAAU,CAAC;cACvD,IAAI,CAAC,kBAAkB,EAAE;MACzB,QAAA,KAAK,CAAC,SAAS,CACb,WAAW,EACX,IAAI,CAAC,UAAU,EACf,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,EACjD,KAAK,EACL,CAAC,QAAmB,KAAI;;MACtB,YAAA,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,QAAQ,CAAC;MACjD,YAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;MACxB,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;MAEpB,YAAA,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC;kBAClF,IAAI,WAAW,EAAE;MACf,gBAAA,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI;MAC5B,gBAAA,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI;MAC5B,gBAAA,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU;MACxC,gBAAA,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS;MACtC,gBAAA,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK;MAC9B,gBAAA,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK;MAC9B,gBAAA,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS;MACtC,gBAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,WAAW,CAAC;;MAEpD,SAAC,CACF;;UAGH,kBAAkB,GAAA;MAChB,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;kBAC3B,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC;MAChD,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;;;MAIlC,IAAA,YAAY,CAAC,CAAC,EAAA;;cACZ,CAAC,CAAC,eAAe,EAAE;MACnB,QAAA,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC;cAClF,IAAI,WAAW,EAAE;MACf,YAAA,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI;MAC5B,YAAA,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI;MAC5B,YAAA,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU;MACxC,YAAA,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS;MACtC,YAAA,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK;MAC9B,YAAA,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK;MAC9B,YAAA,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS;;MAGxC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;cAClB,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,EAAE;;UAGpB,MAAM,UAAU,CAAC,CAAC,EAAA;cAChB,CAAC,CAAC,eAAe,EAAE;MACnB,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI;MAClB,QAAA,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE;kBAChE,IAAI,EAAE,IAAI,CAAC,IAAI;kBACf,IAAI,EAAE,IAAI,CAAC,IAAI;kBACf,UAAU,EAAE,IAAI,CAAC,UAAU;kBAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;kBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;kBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;kBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;eAC1B;MACE,aAAA,IAAI,CAAC,OAAM,CAAC,KAAG;;MACd,YAAA,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,CAAC;MACvC,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK;MACnB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;MAClB,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;kBAC7D,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC;MAClF,YAAA,IAAI,SAAS,GAAG,EAAE,EAAE;MAClB,gBAAA,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC;;kBAElC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC;kBAClD,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,EAAE;MACpB,SAAC;mBACA,KAAK,CAAC,CAAC,IAAG;MACT,YAAA,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,CAAC;MACrC,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK;MACrB,SAAC,CAAC;;UAGN,MAAM,YAAY,CAAC,CAAC,EAAA;cAClB,CAAC,CAAC,eAAe,EAAE;MACnB,QAAA,IAAI,MAAM,CAAC,OAAO,CAAC,yHAAyH,CAAC,EAAE;MAC7I,YAAA,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ;uBAC7D,IAAI,CAAC,MAAK;;MACT,gBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAc;sBAC1E,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC;MACjF,gBAAA,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC;;MAEvD,gBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,MAAM,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,CAAC,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC;sBACzE,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,EAAE;MACpB,aAAC;uBACA,KAAK,CAAC,CAAC,IAAG;MACT,gBAAA,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,CAAC;MACzC,aAAC,CAAC;;;UAIR,MAAM,GAAA;;cACJ,MAAM,SAAS,GAAG,CAAC,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAM,KAAI,EAAE,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,CAAC;;MAGhG,QAAA,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;cAE3I,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE,YAAY,EAAC,KAAK,EAAA,EAC5F,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACE,CAAA,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,EAAE,EAAC,mBAAmB,EACtB,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAE,IAAI,CAAC,IAAI,EAChB,YAAY,EAAC,KAAK,EAClB,QAAQ,EAAE,SAAS,EACnB,WAAW,EAAC,cAAc,EAC1B,OAAO,EAAE,CAAC,CAAM,KAAI;sBAClB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK;MAC1B,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;MACnB,aAAC,EACD,CAAA,EAED,SAAS,IAAI,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,cAAc,kEAAkE,CAErG,EAEN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAAY,EAAA,OAAA,CAAA,EACpC,CAAA,CAAA,sBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,IAAI,CAAC,IAAI,EAChB,OAAO,EAAE;MACP,gBAAA,EAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAC;MAClC,gBAAA,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC;MAC1B,gBAAA,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAC;MACvC,aAAA,EACD,OAAO,EAAE,CAAC,CAAM,KAAI;sBAClB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK;MAC1B,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;MACnB,aAAC,GACD,CAKE,EAEN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAA4B,EAAA,uBAAA,CAAA,EAEpD,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACrB,CACE,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,yBAAyB,EAC5B,KAAK,EAAE,IAAI,CAAC,UAAU,EACtB,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,UAAU,EACtB,OAAO,EAAE,CAAC,CAAM,KAAI;sBAClB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK;MAChC,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;MACnB,aAAC,EACD,CAAA,EAEF,CACE,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,yBAAyB,EAC5B,KAAK,EAAE,IAAI,CAAC,SAAS,EACrB,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,SAAS,EACrB,OAAO,EAAE,CAAC,CAAM,KAAI;sBAClB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK;MAC/B,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;mBAClB,EAAA,CACD,CACE,CACF,EAEN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACE,CACE,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,yBAAyB,EAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,kBAAkB,EAC9B,OAAO,EAAE,CAAC,CAAM,KAAI;sBAClB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK;MAC3B,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;mBAClB,EACD,CAAA,EAEF,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,EAAI,CAAA,EAEhC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACE,CAAA,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,EAAE,EAAC,yBAAyB,EAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,YAAY,EAAC,KAAK;;kBAElB,WAAW,EAAC,iBAAiB,EAC7B,OAAO,EAAE,CAAC,CAAM,KAAI;sBAClB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK;MAC3B,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI;mBAClB,EAAA,CACD,CAEE,CACF,EAiBN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,SAAS,EAAA,EAClB,CAAQ,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAI,CAAA,EAEhH,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,EAAC,IAAI,EAAE,GAAG,EAAC,EAAI,CAAA,EAG3B,CAAA,CAAA,gBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAgB,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAI,CAAA,CAC7G,CACD,CACF;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"p-Dmc2VIXX.system.js","sources":["src/components/controls/verdocs-menu-panel/verdocs-menu-panel.scss?tag=verdocs-menu-panel","src/components/controls/verdocs-menu-panel/verdocs-menu-panel.tsx","src/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.scss?tag=verdocs-template-role-properties","src/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\n#verdocs-menu-panel-overlay {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 10000;\n position: fixed;\n background-color: #0000007f;\n}\n\n#verdocs-menu-panel {\n opacity: 0;\n z-index: 10001;\n position: fixed;\n overflow-y: scroll;\n background-color: #ffffff;\n font-family: $verdocs-primary-font;\n\n -webkit-animation: showVerdocsMenuPanel 0.35s;\n -webkit-animation-fill-mode: forwards;\n}\n\n// TODO: Parameterize the width\n@-webkit-keyframes showVerdocsMenuPanel {\n 0% {\n opacity: 0;\n right: -300px;\n }\n\n 100% {\n right: 0;\n opacity: 1;\n }\n}\n","import {Component, EventEmitter, h, Host, Listen, Prop, Event} from '@stencil/core';\n\n/**\n * Display a menu panel in a left or right sidebar. The panel will animate (slide)\n * as it appears, and an background will be shown over the rest of the page. If\n * the background overlay is present, it can be clicked to dismiss the panel.\n *\n * ```ts\n * <verdocs-menu-panel>\n * <div style=\"padding: 20px;\">Menu Panel</div>\n * </verdocs-menu-panel>\n * ```\n */\n@Component({\n tag: 'verdocs-menu-panel',\n styleUrl: 'verdocs-menu-panel.scss',\n shadow: false,\n})\nexport class VerdocsMenuPanel {\n private portal: HTMLElement;\n private element: HTMLElement;\n private moved: boolean = false;\n private overlayId = `verdocs-menu-panel-overlay`;\n private panelId = `verdocs-menu-panel`;\n\n /**\n * Which side of the screen to place the panel.\n */\n @Prop() side: 'left' | 'right' = 'right';\n\n /**\n * Whether to show an overlay over the rest of the page.\n */\n @Prop() overlay = true;\n\n /**\n * The width of the panel.\n */\n @Prop() width = 300;\n\n @Event() close: EventEmitter<void>;\n\n @Listen('click', {target: 'document'})\n handleClick(e: any) {\n if (!this.element.contains(e.target)) {\n this.hide();\n this.close?.emit();\n }\n }\n\n componentWillLoad() {\n this.hide();\n\n if (this.overlay) {\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', this.overlayId);\n document.body.append(this.portal);\n }\n\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', this.panelId);\n this.portal.style.top = `0px`;\n this.portal.style.bottom = `0px`;\n this.portal.style.width = `${this.width}px`;\n\n if (this.side === 'left') {\n this.portal.style.left = `0px`;\n } else {\n this.portal.style.right = `0px`;\n }\n\n document.body.append(this.portal);\n }\n\n componentDidLoad() {\n this.portal.appendChild(this.element);\n }\n\n disconnectedCallback() {\n this.moved ? this.portal.remove() : (this.moved = true);\n }\n\n hide() {\n document.getElementById(this.overlayId)?.remove();\n document.getElementById(this.panelId)?.remove();\n }\n\n render() {\n return (\n <Host ref={el => (this.element = el)}>\n <slot />\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-template-role-properties {\n box-sizing: border-box;\n font-family: $primary-font;\n\n div {\n box-sizing: border-box;\n }\n\n .heading {\n display: flex;\n font-size: 20px;\n font-weight: 500;\n flex-direction: row;\n }\n\n .buttons {\n display: flex;\n margin-top: 10px;\n align-items: center;\n flex-direction: row;\n justify-content: space-between;\n\n verdocs-button {\n margin-left: 16px;\n }\n }\n\n form {\n gap: 15px;\n padding: 20px;\n display: flex;\n flex-direction: column;\n\n .instructions {\n margin: 7px 0 0 0;\n font-size: 12px;\n font-style: italic;\n }\n\n .input-label {\n display: block;\n font-size: 14px;\n flex: 0 0 100px;\n font-weight: 700;\n margin: 0 0 4px 0;\n color: $label-color-light;\n }\n\n .first-last {\n gap: 15px;\n display: flex;\n flex-direction: row;\n }\n }\n\n form verdocs-help-icon {\n transform: scale(0.8);\n }\n\n verdocs-select-input {\n //flex: 1;\n //margin: 0;\n\n label {\n display: block;\n }\n }\n\n verdocs-text-input {\n margin: 0;\n\n label {\n display: block;\n }\n\n .input-label {\n flex: 0 0 100px;\n }\n\n input {\n flex: 1;\n display: flex;\n }\n\n verdocs-text-input {\n margin: 0;\n }\n }\n\n .checkbox-wrapper {\n flex: 1;\n display: flex;\n }\n\n .delete-button {\n height: 34px;\n display: flex;\n padding: 0 6px;\n cursor: pointer;\n background: none;\n border-radius: 4px;\n align-items: center;\n border: 1px solid #999;\n justify-content: center;\n\n svg {\n width: 24px;\n height: 24px;\n }\n\n &:active {\n background: #f3f3f3;\n }\n }\n}\n","import {Component, Prop, h, Event, EventEmitter, Host, State} from '@stencil/core';\nimport {deleteTemplateRole, getTemplate, isValidEmail, ITemplate, TRecipientType, updateTemplateRole, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst TrashIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#a50021\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0\" /></svg>`;\n\n/**\n * Present an editing form suitable for adjusting template-role properties.\n */\n@Component({\n tag: 'verdocs-template-role-properties',\n styleUrl: 'verdocs-template-role-properties.scss',\n})\nexport class VerdocsTemplateRoleProperties {\n private templateListenerId = null;\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 template ID to edit.\n */\n @Prop() templateId: string = '';\n\n /**\n * The role name to edit.\n */\n @Prop() roleName: string = '';\n\n /**\n * Event fired when the user cancels the dialog.\n */\n @Event({composed: true}) close: EventEmitter;\n\n /**\n * Event fired when the user deletes the role. The parent should update its UI to reflect the removal. When this event is emitted,\n * the role will have already been deleted server-side.\n */\n @Event({composed: true}) delete: EventEmitter<{templateId: string; roleName: 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 @State() dirty = false;\n @State() saving = false;\n @State() name = '';\n @State() type: TRecipientType = 'signer';\n @State() first_name = '';\n @State() last_name = '';\n @State() email = '';\n @State() phone = '';\n @State() delegator = false;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n\n if (!this.templateId) {\n console.log(`[ROLES] Missing required template ID ${this.templateId}`);\n return;\n }\n\n if (!this.endpoint.session) {\n console.log('[ROLES] Unable to start builder session, must be authenticated');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[ROLES Error with preview session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n console.log('[ROLES] Loading tempate', this.templateId);\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n console.log('[BUILD] Template Updated', template);\n this.template = template;\n this.loading = false;\n\n const editingRole = this.template?.roles.find(role => role.name === this.roleName);\n if (editingRole) {\n this.name = editingRole.name;\n this.type = editingRole.type;\n this.first_name = editingRole.first_name;\n this.last_name = editingRole.last_name;\n this.email = editingRole.email;\n this.phone = editingRole.phone;\n this.delegator = editingRole.delegator;\n console.log('[ROLES] Editing role', editingRole);\n }\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n handleCancel(e) {\n e.stopPropagation();\n const editingRole = this.template?.roles.find(role => role.name === this.roleName);\n if (editingRole) {\n this.name = editingRole.name;\n this.type = editingRole.type;\n this.first_name = editingRole.first_name;\n this.last_name = editingRole.last_name;\n this.email = editingRole.email;\n this.phone = editingRole.phone;\n this.delegator = editingRole.delegator;\n }\n\n this.dirty = false;\n this.close?.emit();\n }\n\n async handleSave(e) {\n e.stopPropagation();\n this.saving = true;\n updateTemplateRole(this.endpoint, this.templateId, this.roleName, {\n name: this.name,\n type: this.type,\n first_name: this.first_name,\n last_name: this.last_name,\n email: this.email,\n phone: this.phone,\n delegator: this.delegator,\n })\n .then(async r => {\n console.log('[ROLES] Update result', r);\n this.saving = false;\n this.dirty = false;\n const newTemplate = JSON.parse(JSON.stringify(this.template));\n const roleIndex = newTemplate.roles.findIndex(role => role.name === this.roleName);\n if (roleIndex > -1) {\n newTemplate.roles[roleIndex] = r;\n }\n Store.updateTemplate(this.templateId, newTemplate);\n this.close?.emit();\n })\n .catch(e => {\n console.log('[ROLES Update error', e);\n this.saving = false;\n });\n }\n\n async handleDelete(e) {\n e.stopPropagation();\n if (window.confirm('Are you sure you wish to remove this role? All associated fields will be removed as well. This action cannot be undone.')) {\n deleteTemplateRole(this.endpoint, this.templateId, this.roleName)\n .then(() => {\n const newTemplate = JSON.parse(JSON.stringify(this.template)) as ITemplate;\n newTemplate.roles = newTemplate.roles.filter(role => role.name !== this.roleName);\n Store.getTemplate(this.endpoint, this.templateId, true);\n // Store.updateTemplate(this.templateId, newTemplate);\n this.delete?.emit({templateId: this.templateId, roleName: this.roleName});\n this.close?.emit();\n })\n .catch(e => {\n console.log('[ROLES Deletion error', e);\n });\n }\n }\n\n render() {\n const hasFields = (this.template?.fields || []).some(field => field.role_name === this.roleName);\n\n // Either all three should be empty, or all three need to be filled\n const isValid = (!this.email && !this.first_name && !this.last_name) || (isValidEmail(this.email) && !!this.first_name && !!this.last_name);\n\n return (\n <Host>\n <form onSubmit={e => e.preventDefault()} onClick={e => e.stopPropagation()} autocomplete=\"off\">\n <div>\n <verdocs-text-input\n id=\"verdocs-role-name\"\n label=\"Role Name (Must be unique)\"\n value={this.name}\n autocomplete=\"off\"\n disabled={hasFields}\n placeholder=\"Role Name...\"\n onInput={(e: any) => {\n this.name = e.target.value;\n this.dirty = true;\n }}\n />\n\n {hasFields && <div class=\"instructions\">This role has fields assigned and can no longer be renamed.</div>}\n {/*<div class=\"instructions\">{hasFields ? 'This role has fields assigned and can no longer be renamed.' : 'A unique name to identify the role in the workflow.'}</div>*/}\n </div>\n\n <div>\n <div class=\"input-label\">Type:</div>\n <verdocs-select-input\n value={this.type}\n options={[\n {label: 'Signer', value: 'signer'},\n {label: 'CC', value: 'cc'},\n {label: 'Approver', value: 'approver'},\n ]}\n onInput={(e: any) => {\n this.type = e.target.value;\n this.dirty = true;\n }}\n />\n {/*<div class=\"instructions\">*/}\n {/* Most participants are Signers. CC roles are notified when documents are signed, but have no other actions. Approvers get notified when signing is completed to perform*/}\n {/* a final review.*/}\n {/*</div>*/}\n </div>\n\n <div>\n <div class=\"input-label\">Default Contact Info:</div>\n\n <div class=\"first-last\">\n <verdocs-text-input\n id=\"verdocs-recipient-first\"\n value={this.first_name}\n autocomplete=\"off\"\n placeholder=\"First...\"\n onInput={(e: any) => {\n this.first_name = e.target.value;\n this.dirty = true;\n }}\n />\n\n <verdocs-text-input\n id=\"verdocs-recipient-first\"\n value={this.last_name}\n autocomplete=\"off\"\n placeholder=\"Last...\"\n onInput={(e: any) => {\n this.last_name = e.target.value;\n this.dirty = true;\n }}\n />\n </div>\n </div>\n\n <div>\n <verdocs-text-input\n id=\"verdocs-recipient-email\"\n value={this.email}\n autocomplete=\"off\"\n placeholder=\"Email Address...\"\n onInput={(e: any) => {\n this.email = e.target.value;\n this.dirty = true;\n }}\n />\n\n <div style={{height: '15px'}} />\n\n <div>\n <verdocs-text-input\n id=\"verdocs-recipient-phone\"\n value={this.phone}\n autocomplete=\"off\"\n // helpText=\"The recipient's phone number, if it will always stay the same. Leave blank to supply this value later, when each new envelope is created from the template.\"\n placeholder=\"Phone Number...\"\n onInput={(e: any) => {\n this.phone = e.target.value;\n this.dirty = true;\n }}\n />\n {/*<div class=\"instructions\">Default name and contact information. This may be changed later when creating and envelope with this template.</div>*/}\n </div>\n </div>\n\n {/*<div class=\"row\">*/}\n {/* <div class=\"input-label\">May Delegate:</div>*/}\n {/* <div class=\"checkbox-wrapper\">*/}\n {/* <verdocs-checkbox*/}\n {/* checked={this.delegator}*/}\n {/* onInput={(e: any) => {*/}\n {/* this.delegator = e.target.checked;*/}\n {/* this.dirty = true;*/}\n {/* }}*/}\n {/* />*/}\n {/* </div>*/}\n\n {/* <verdocs-help-icon text=\"If enabled, this recipient may delegate their actions to another individual.\" />*/}\n {/*</div>*/}\n\n <div class=\"buttons\">\n <button class=\"delete-button\" disabled={this.dirty} onClick={e => this.handleDelete(e)} innerHTML={TrashIcon} />\n\n <div style={{flex: '1'}} />\n\n {/*<verdocs-button size=\"small\" variant=\"outline\" label=\"Cancel\" disabled={!this.dirty} onClick={e => this.handleCancel(e)} />*/}\n <verdocs-button size=\"small\" label=\"Save\" disabled={!this.dirty || !isValid} onClick={e => this.handleSave(e)} />\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
|