@verdocs/web-sdk 2.2.21 → 2.2.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{TemplateStore-66577b50.js → TemplateStore-a5fa2b0c.js} +1 -1
- package/dist/cjs/{VerdocsEndpoint-a2dc85ad.js → VerdocsEndpoint-45deeb6a.js} +2 -2
- package/dist/cjs/ipc-test.cjs.entry.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/verdocs-activity-box.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-build.cjs.entry.js +24 -77
- package/dist/cjs/verdocs-button-panel_2.cjs.entry.js +2 -2
- package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-dropdown.cjs.entry.js +1 -0
- package/dist/cjs/verdocs-envelope-document-page.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-envelope-recipient-link_2.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-textarea.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-field-textbox.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-file-chooser_2.cjs.entry.js +1 -1
- package/dist/cjs/{verdocs-preview_7.cjs.entry.js → verdocs-preview_8.cjs.entry.js} +96 -2
- package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-search.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-settings-api-keys_4.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-settings.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-sign.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-tabs.cjs.entry.js +0 -8
- package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-template-fields_4.cjs.entry.js +11 -5
- package/dist/cjs/verdocs-template-star.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-templates-list.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-view.cjs.entry.js +1 -1
- package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/controls/verdocs-dropdown/verdocs-dropdown.js +1 -0
- package/dist/collection/components/controls/verdocs-tabs/verdocs-tabs.js +5 -17
- package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +25 -38
- package/dist/collection/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.css +25 -0
- package/dist/collection/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.js +219 -0
- package/dist/collection/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.stories.js +16 -0
- package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js +9 -3
- package/dist/components/VerdocsEndpoint.js +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/verdocs-build.js +61 -109
- package/dist/components/verdocs-dropdown2.js +1 -0
- package/dist/components/verdocs-tabs2.js +1 -10
- package/dist/components/verdocs-template-build-tabs.d.ts +11 -0
- package/dist/components/verdocs-template-build-tabs.js +6 -0
- package/dist/components/verdocs-template-build-tabs2.js +132 -0
- package/dist/components/verdocs-template-roles2.js +9 -3
- package/dist/custom-elements.json +37 -3
- package/dist/docs.json +137 -11
- package/dist/esm/{TemplateStore-3c138524.js → TemplateStore-e8cf5a15.js} +1 -1
- package/dist/esm/{VerdocsEndpoint-6fe4258b.js → VerdocsEndpoint-d58d5544.js} +1 -1
- package/dist/esm/ipc-test.entry.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/verdocs-activity-box.entry.js +1 -1
- package/dist/esm/verdocs-auth.entry.js +1 -1
- package/dist/esm/verdocs-build.entry.js +25 -78
- package/dist/esm/verdocs-button-panel_2.entry.js +2 -2
- package/dist/esm/verdocs-contact-picker_2.entry.js +1 -1
- package/dist/esm/verdocs-dropdown.entry.js +1 -0
- package/dist/esm/verdocs-envelope-document-page.entry.js +1 -1
- package/dist/esm/verdocs-envelope-recipient-link_2.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-textarea.entry.js +1 -1
- package/dist/esm/verdocs-field-textbox.entry.js +1 -1
- package/dist/esm/verdocs-file-chooser_2.entry.js +1 -1
- package/dist/esm/{verdocs-preview_7.entry.js → verdocs-preview_8.entry.js} +96 -3
- package/dist/esm/verdocs-quick-functions_3.entry.js +1 -1
- package/dist/esm/verdocs-search.entry.js +1 -1
- package/dist/esm/verdocs-settings-api-keys_4.entry.js +1 -1
- package/dist/esm/verdocs-settings.entry.js +1 -1
- package/dist/esm/verdocs-sign.entry.js +1 -1
- package/dist/esm/verdocs-tabs.entry.js +0 -8
- package/dist/esm/verdocs-template-document-page_2.entry.js +1 -1
- package/dist/esm/verdocs-template-fields_4.entry.js +11 -5
- package/dist/esm/verdocs-template-star.entry.js +1 -1
- package/dist/esm/verdocs-templates-list.entry.js +1 -1
- package/dist/esm/verdocs-view.entry.js +1 -1
- package/dist/esm/verdocs-web-sdk.js +1 -1
- package/dist/esm-es5/{TemplateStore-3c138524.js → TemplateStore-e8cf5a15.js} +1 -1
- package/dist/esm-es5/{VerdocsEndpoint-6fe4258b.js → VerdocsEndpoint-d58d5544.js} +1 -1
- package/dist/esm-es5/ipc-test.entry.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/verdocs-activity-box.entry.js +1 -1
- package/dist/esm-es5/verdocs-auth.entry.js +1 -1
- package/dist/esm-es5/verdocs-build.entry.js +1 -1
- package/dist/esm-es5/verdocs-button-panel_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-contact-picker_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-dropdown.entry.js +1 -1
- package/dist/esm-es5/verdocs-envelope-document-page.entry.js +1 -1
- package/dist/esm-es5/verdocs-envelope-recipient-link_2.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-textarea.entry.js +1 -1
- package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
- package/dist/esm-es5/verdocs-file-chooser_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-preview_8.entry.js +1 -0
- package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
- package/dist/esm-es5/verdocs-search.entry.js +1 -1
- package/dist/esm-es5/verdocs-settings-api-keys_4.entry.js +1 -1
- package/dist/esm-es5/verdocs-settings.entry.js +1 -1
- package/dist/esm-es5/verdocs-sign.entry.js +1 -1
- package/dist/esm-es5/verdocs-tabs.entry.js +1 -1
- package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
- package/dist/esm-es5/verdocs-template-fields_4.entry.js +1 -1
- package/dist/esm-es5/verdocs-template-star.entry.js +1 -1
- package/dist/esm-es5/verdocs-templates-list.entry.js +1 -1
- package/dist/esm-es5/verdocs-view.entry.js +1 -1
- package/dist/esm-es5/verdocs-web-sdk.js +1 -1
- package/dist/types/components/controls/verdocs-tabs/verdocs-tabs.d.ts +3 -5
- package/dist/types/components/embeds/verdocs-build/verdocs-build.d.ts +5 -4
- package/dist/types/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.d.ts +39 -0
- package/dist/types/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.stories.d.ts +8 -0
- package/dist/types/components/templates/verdocs-template-roles/verdocs-template-roles.d.ts +1 -0
- package/dist/types/components.d.ts +56 -6
- package/dist/verdocs-web-sdk/{p-963f6e05.system.entry.js → p-07696831.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-8eb640c4.system.entry.js → p-07b5f356.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-957e1e4e.entry.js → p-0b2102df.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-ec9f11dc.system.entry.js → p-0df9e6e1.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-15df3998.system.entry.js +1 -0
- package/dist/verdocs-web-sdk/{p-724d4efa.system.js → p-1753f57b.system.js} +1 -1
- package/dist/verdocs-web-sdk/p-1dda2d09.entry.js +1 -0
- package/dist/verdocs-web-sdk/{p-7fb8387d.system.entry.js → p-21e137f0.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-1ab8f7f6.system.entry.js → p-2284d430.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-49777798.system.entry.js → p-2549a794.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-353c7ff6.system.entry.js → p-272933c6.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-53fb6c8c.entry.js → p-2b6e4f2a.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-a06f6e8e.entry.js → p-3a90098d.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-4a3f9e45.entry.js → p-3da4fed1.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-3a5d8085.system.entry.js → p-4017b53a.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-f867f61b.entry.js → p-428de4a5.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-6c4de84c.entry.js → p-42f27e8c.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-4422958b.system.js +1 -0
- package/dist/verdocs-web-sdk/{p-71d6e1c3.system.entry.js → p-45bee3f6.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-92e3d974.system.entry.js → p-45d5e035.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-0fa99a06.system.entry.js → p-48c62137.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-79c09ffc.system.entry.js → p-506754d5.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-79410da3.entry.js → p-51979353.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-2cb422a2.entry.js → p-5ab837bf.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-65c99d51.system.entry.js +1 -0
- package/dist/verdocs-web-sdk/{p-96fb90bd.system.entry.js → p-66cec042.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-f732abf1.entry.js → p-6ccb86b6.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-6f1e794d.system.entry.js +1 -0
- package/dist/verdocs-web-sdk/p-70685224.entry.js +1 -0
- package/dist/verdocs-web-sdk/{p-58c8584e.entry.js → p-77ecee31.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-b3b370b5.entry.js → p-78e4f430.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-6734b77c.entry.js → p-79b0c643.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-c26d3d7b.system.entry.js → p-7bd5db75.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-5ed21587.entry.js → p-84efd562.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-b3706eb2.system.entry.js → p-883d60e1.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-8d14ace0.entry.js +1 -0
- package/dist/verdocs-web-sdk/{p-87c527e4.entry.js → p-9009e136.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-a41a8742.entry.js → p-965b66a8.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-99c8acfa.system.entry.js → p-a0ad315e.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-d56ac75b.entry.js → p-a1e82d5a.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-a8aefe57.system.entry.js → p-a894761f.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-ab7df219.system.entry.js → p-aba05f25.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-c488219f.entry.js → p-ad273610.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-1e48cc2c.system.entry.js → p-ae971bb4.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-53276c5b.js → p-af048fad.js} +1 -1
- package/dist/verdocs-web-sdk/{p-ec06b3d1.entry.js → p-ba04698a.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-55f66c83.entry.js → p-bbd400a5.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-c230e3d1.entry.js +1 -0
- package/dist/verdocs-web-sdk/{p-38031118.system.entry.js → p-cd64b223.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-e36c7481.entry.js → p-d4aec860.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-2c5e2d73.js → p-d4d8858f.js} +1 -1
- package/dist/verdocs-web-sdk/{p-a6d93251.entry.js → p-e40dd4d1.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-f8210aa7.system.entry.js → p-edabba6b.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/p-f04bf956.system.js +1 -1
- package/dist/verdocs-web-sdk/{p-994623c4.entry.js → p-f2deae25.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-3e20d28c.system.entry.js → p-f9e89b56.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/{p-75435256.system.entry.js → p-fab73ec8.system.entry.js} +1 -1
- package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
- package/package.json +1 -1
- package/dist/esm-es5/verdocs-preview_7.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-08571348.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-3d25b680.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-473f6990.system.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-65e1ab33.system.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-686bf682.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-9e15bdda.system.js +0 -1
- package/dist/verdocs-web-sdk/p-b860a7fe.entry.js +0 -1
- package/dist/verdocs-web-sdk/p-d07dcf76.system.entry.js +0 -1
@@ -0,0 +1,219 @@
|
|
1
|
+
import { VerdocsEndpoint } from '@verdocs/js-sdk';
|
2
|
+
import { h, Host } from '@stencil/core';
|
3
|
+
import { getTemplateStore } from '../../../utils/TemplateStore';
|
4
|
+
import { SDKError } from '../../../utils/errors';
|
5
|
+
const STEPS = ['attachments', 'roles', 'settings', 'fields', 'preview'];
|
6
|
+
/**
|
7
|
+
* Display a set of tabs for the template builder.
|
8
|
+
*/
|
9
|
+
export class VerdocsTemplateBuildTabs {
|
10
|
+
constructor() {
|
11
|
+
this.endpoint = VerdocsEndpoint.getDefault();
|
12
|
+
this.templateId = null;
|
13
|
+
this.step = 'preview';
|
14
|
+
this.store = null;
|
15
|
+
}
|
16
|
+
onStepChanged() {
|
17
|
+
console.log('Step changed', this.step, this.templateId);
|
18
|
+
this.loadTemplate().catch((e) => console.log('Unknown Error', e));
|
19
|
+
}
|
20
|
+
async componentWillLoad() {
|
21
|
+
var _a, _b, _c;
|
22
|
+
try {
|
23
|
+
this.endpoint.loadSession();
|
24
|
+
if (!this.endpoint.session) {
|
25
|
+
console.log('[BUILD_TABS] Unable to start builder session, must be authenticated');
|
26
|
+
return;
|
27
|
+
}
|
28
|
+
if (!this.templateId) {
|
29
|
+
this.step = 'preview';
|
30
|
+
return;
|
31
|
+
}
|
32
|
+
this.loadTemplate().catch(e => console.log('[BUILD_TABS] Unable to load template', e));
|
33
|
+
}
|
34
|
+
catch (e) {
|
35
|
+
console.log('[BUILD_TABS] Error loading template', e);
|
36
|
+
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
37
|
+
}
|
38
|
+
}
|
39
|
+
async loadTemplate() {
|
40
|
+
if (this.templateId) {
|
41
|
+
this.store = await getTemplateStore(this.endpoint, this.templateId, false);
|
42
|
+
}
|
43
|
+
}
|
44
|
+
setStep(e) {
|
45
|
+
var _a;
|
46
|
+
console.log('Selected step', e.detail.tab.id);
|
47
|
+
e.stopPropagation();
|
48
|
+
e.preventDefault();
|
49
|
+
this.step = e.detail.tab.id;
|
50
|
+
(_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail.tab.id);
|
51
|
+
}
|
52
|
+
render() {
|
53
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
54
|
+
if (!this.endpoint.session) {
|
55
|
+
return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
|
56
|
+
}
|
57
|
+
let canPreview = false;
|
58
|
+
let canEditFields = false;
|
59
|
+
let canEditRoles = false;
|
60
|
+
if (this.templateId && this.store) {
|
61
|
+
console.log('lengths', (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.template_documents.length, (_d = (_c = this.store) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.roles.length, (_f = (_e = this.store) === null || _e === void 0 ? void 0 : _e.state) === null || _f === void 0 ? void 0 : _f.fields.length);
|
62
|
+
canEditRoles = ((_h = (_g = this.store) === null || _g === void 0 ? void 0 : _g.state) === null || _h === void 0 ? void 0 : _h.template_documents.length) > 0;
|
63
|
+
canEditFields = canEditRoles && ((_k = (_j = this.store) === null || _j === void 0 ? void 0 : _j.state) === null || _k === void 0 ? void 0 : _k.roles.length) > 0;
|
64
|
+
canPreview = canEditFields && ((_m = (_l = this.store) === null || _l === void 0 ? void 0 : _l.state) === null || _m === void 0 ? void 0 : _m.fields.length) > 0;
|
65
|
+
// TODO
|
66
|
+
// canPreview = this.store && userCanPreviewTemplate(this.endpoint.session, this.store?.state);
|
67
|
+
// canEditFields = this.store && userCanBuildTemplate(this.endpoint.session, this.store?.state);
|
68
|
+
// canEditRoles = this.store && userCanUpdateTemplate(this.endpoint.session, this.store?.state);
|
69
|
+
}
|
70
|
+
let selectedStepIndex = Math.max(STEPS.indexOf(this.step), 0);
|
71
|
+
if (!canPreview && selectedStepIndex >= 4) {
|
72
|
+
selectedStepIndex = 3;
|
73
|
+
}
|
74
|
+
if (!canEditFields && selectedStepIndex >= 3) {
|
75
|
+
selectedStepIndex = 1;
|
76
|
+
}
|
77
|
+
if (!canEditRoles && selectedStepIndex >= 1) {
|
78
|
+
selectedStepIndex = 0;
|
79
|
+
}
|
80
|
+
console.log({ selectedStepIndex, canPreview, canEditFields, canEditRoles });
|
81
|
+
console.log('[BUILD_TABS] Rendering', this.step, selectedStepIndex);
|
82
|
+
return (h(Host, null, h("verdocs-tabs", { onSelectTab: e => this.setStep(e), selectedTab: selectedStepIndex, tabs: [
|
83
|
+
{ id: 'attachments', disabled: false, label: this.templateId && this.store ? 'Attachment(s)' : 'Upload Attachment(s)' },
|
84
|
+
{ id: 'roles', disabled: !canEditRoles, label: 'Roles' },
|
85
|
+
{ id: 'settings', disabled: !canEditFields, label: 'Settings' },
|
86
|
+
{ id: 'fields', disabled: !canEditFields, label: 'Fields' },
|
87
|
+
{ id: 'preview', disabled: !canPreview, label: 'Preview/Send' },
|
88
|
+
] })));
|
89
|
+
}
|
90
|
+
static get is() { return "verdocs-template-build-tabs"; }
|
91
|
+
static get originalStyleUrls() {
|
92
|
+
return {
|
93
|
+
"$": ["verdocs-template-build-tabs.scss"]
|
94
|
+
};
|
95
|
+
}
|
96
|
+
static get styleUrls() {
|
97
|
+
return {
|
98
|
+
"$": ["verdocs-template-build-tabs.css"]
|
99
|
+
};
|
100
|
+
}
|
101
|
+
static get properties() {
|
102
|
+
return {
|
103
|
+
"endpoint": {
|
104
|
+
"type": "unknown",
|
105
|
+
"mutable": false,
|
106
|
+
"complexType": {
|
107
|
+
"original": "VerdocsEndpoint",
|
108
|
+
"resolved": "VerdocsEndpoint",
|
109
|
+
"references": {
|
110
|
+
"VerdocsEndpoint": {
|
111
|
+
"location": "import",
|
112
|
+
"path": "@verdocs/js-sdk"
|
113
|
+
}
|
114
|
+
}
|
115
|
+
},
|
116
|
+
"required": false,
|
117
|
+
"optional": false,
|
118
|
+
"docs": {
|
119
|
+
"tags": [],
|
120
|
+
"text": "The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used."
|
121
|
+
},
|
122
|
+
"defaultValue": "VerdocsEndpoint.getDefault()"
|
123
|
+
},
|
124
|
+
"templateId": {
|
125
|
+
"type": "string",
|
126
|
+
"mutable": true,
|
127
|
+
"complexType": {
|
128
|
+
"original": "string | null",
|
129
|
+
"resolved": "string",
|
130
|
+
"references": {}
|
131
|
+
},
|
132
|
+
"required": false,
|
133
|
+
"optional": false,
|
134
|
+
"docs": {
|
135
|
+
"tags": [],
|
136
|
+
"text": "The ID of the template to create the document from. Unlike most other components, this is an optional parameter here.\nIf the template ID is known, `step` may also be specified to force displaying a specific step in the creation process.\nIf it is not specified, `step` will be ignored and the create step will be shown."
|
137
|
+
},
|
138
|
+
"attribute": "template-id",
|
139
|
+
"reflect": true,
|
140
|
+
"defaultValue": "null"
|
141
|
+
},
|
142
|
+
"step": {
|
143
|
+
"type": "string",
|
144
|
+
"mutable": true,
|
145
|
+
"complexType": {
|
146
|
+
"original": "TVerdocsBuildStep",
|
147
|
+
"resolved": "\"attachments\" | \"fields\" | \"preview\" | \"roles\" | \"settings\"",
|
148
|
+
"references": {
|
149
|
+
"TVerdocsBuildStep": {
|
150
|
+
"location": "local"
|
151
|
+
}
|
152
|
+
}
|
153
|
+
},
|
154
|
+
"required": false,
|
155
|
+
"optional": false,
|
156
|
+
"docs": {
|
157
|
+
"tags": [],
|
158
|
+
"text": "The step in the creation process to display."
|
159
|
+
},
|
160
|
+
"attribute": "step",
|
161
|
+
"reflect": true,
|
162
|
+
"defaultValue": "'preview'"
|
163
|
+
}
|
164
|
+
};
|
165
|
+
}
|
166
|
+
static get states() {
|
167
|
+
return {
|
168
|
+
"store": {}
|
169
|
+
};
|
170
|
+
}
|
171
|
+
static get events() {
|
172
|
+
return [{
|
173
|
+
"method": "sdkError",
|
174
|
+
"name": "sdkError",
|
175
|
+
"bubbles": true,
|
176
|
+
"cancelable": true,
|
177
|
+
"composed": true,
|
178
|
+
"docs": {
|
179
|
+
"tags": [],
|
180
|
+
"text": "Event fired if an error occurs. The event details will contain information about the error. Most errors will\nterminate the process, and the calling application should correct the condition and re-render the component."
|
181
|
+
},
|
182
|
+
"complexType": {
|
183
|
+
"original": "SDKError",
|
184
|
+
"resolved": "SDKError",
|
185
|
+
"references": {
|
186
|
+
"SDKError": {
|
187
|
+
"location": "import",
|
188
|
+
"path": "../../../utils/errors"
|
189
|
+
}
|
190
|
+
}
|
191
|
+
}
|
192
|
+
}, {
|
193
|
+
"method": "stepChanged",
|
194
|
+
"name": "stepChanged",
|
195
|
+
"bubbles": true,
|
196
|
+
"cancelable": true,
|
197
|
+
"composed": true,
|
198
|
+
"docs": {
|
199
|
+
"tags": [],
|
200
|
+
"text": "Event fired when the user selects a different step."
|
201
|
+
},
|
202
|
+
"complexType": {
|
203
|
+
"original": "TVerdocsBuildStep",
|
204
|
+
"resolved": "\"attachments\" | \"fields\" | \"preview\" | \"roles\" | \"settings\"",
|
205
|
+
"references": {
|
206
|
+
"TVerdocsBuildStep": {
|
207
|
+
"location": "local"
|
208
|
+
}
|
209
|
+
}
|
210
|
+
}
|
211
|
+
}];
|
212
|
+
}
|
213
|
+
static get watchers() {
|
214
|
+
return [{
|
215
|
+
"propName": "step",
|
216
|
+
"methodName": "onStepChanged"
|
217
|
+
}];
|
218
|
+
}
|
219
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { html } from 'lit-html';
|
2
|
+
export default {
|
3
|
+
title: 'Templates/Build Tabs',
|
4
|
+
component: 'verdocs-template-build-tabs',
|
5
|
+
args: {
|
6
|
+
templateId: '',
|
7
|
+
step: 'preview',
|
8
|
+
},
|
9
|
+
argTypes: {
|
10
|
+
onStepChanged: { action: 'stepChanged' },
|
11
|
+
},
|
12
|
+
parameters: {
|
13
|
+
layout: 'fullscreen',
|
14
|
+
},
|
15
|
+
};
|
16
|
+
export const BuildTabs = ({ templateId, step, onStepChanged }) => html `<verdocs-template-build-tabs .step=${step} .templateId=${templateId} @stepChanged=${onStepChanged} />`;
|
package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js
CHANGED
@@ -47,15 +47,18 @@ export class VerdocsTemplateRoles {
|
|
47
47
|
console.log('[ROLES] Unable to start builder session, must be authenticated');
|
48
48
|
return;
|
49
49
|
}
|
50
|
-
|
51
|
-
this.sortTemplateRoles();
|
52
|
-
this.renumberTemplateRoles();
|
50
|
+
await this.reloadStore();
|
53
51
|
}
|
54
52
|
catch (e) {
|
55
53
|
console.log('[FIELDS] Error with preview session', e);
|
56
54
|
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
57
55
|
}
|
58
56
|
}
|
57
|
+
async reloadStore() {
|
58
|
+
this.store = await getTemplateStore(this.endpoint, this.templateId, true);
|
59
|
+
this.sortTemplateRoles();
|
60
|
+
this.renumberTemplateRoles();
|
61
|
+
}
|
59
62
|
componentDidRender() {
|
60
63
|
interact.dynamicDrop(true);
|
61
64
|
interact('.recipient').draggable({
|
@@ -120,6 +123,7 @@ export class VerdocsTemplateRoles {
|
|
120
123
|
var _a, _b;
|
121
124
|
console.log('[ROLES] Updated roles');
|
122
125
|
(_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'updated-role', endpoint: this.endpoint, template: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state });
|
126
|
+
this.reloadStore().catch(e => console.log('Unknown error', e));
|
123
127
|
})
|
124
128
|
.catch(e => console.log('[ROLES] Role updates failed', e));
|
125
129
|
}
|
@@ -214,6 +218,7 @@ export class VerdocsTemplateRoles {
|
|
214
218
|
// this.store.state.roles = [...this.store?.state.roles, r];
|
215
219
|
// this.renumberTemplateRoles();
|
216
220
|
(_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'created-role', endpoint: this.endpoint, template: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state });
|
221
|
+
this.reloadStore().catch(e => console.log('Unknown error', e));
|
217
222
|
})
|
218
223
|
.catch(e => {
|
219
224
|
console.log('[ROLES] Error creating role', e);
|
@@ -260,6 +265,7 @@ export class VerdocsTemplateRoles {
|
|
260
265
|
this.showingRoleDialog = null;
|
261
266
|
// this.forceRerender++;
|
262
267
|
(_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'deleted-role', endpoint: this.endpoint, template: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state });
|
268
|
+
this.reloadStore().catch(e => console.log('Unknown error', e));
|
263
269
|
} })), this.showingSenderDialog && h("verdocs-template-sender", { endpoint: this.endpoint, templateId: this.templateId, onClose: () => (this.showingSenderDialog = false) })));
|
264
270
|
}
|
265
271
|
static get is() { return "verdocs-template-roles"; }
|
@@ -4002,4 +4002,4 @@ var VerdocsEndpoint = /** @class */ (function () {
|
|
4002
4002
|
return VerdocsEndpoint;
|
4003
4003
|
}());
|
4004
4004
|
|
4005
|
-
export {
|
4005
|
+
export { TemplateActions as T, VerdocsEndpoint as V, TemplateSenderTypes as a };
|
@@ -58,6 +58,7 @@ export { VerdocsStatusIndicator as VerdocsStatusIndicator } from '../types/compo
|
|
58
58
|
export { VerdocsTable as VerdocsTable } from '../types/components/controls/verdocs-table/verdocs-table';
|
59
59
|
export { VerdocsTabs as VerdocsTabs } from '../types/components/controls/verdocs-tabs/verdocs-tabs';
|
60
60
|
export { VerdocsTemplateAttachments as VerdocsTemplateAttachments } from '../types/components/templates/verdocs-template-attachments/verdocs-template-attachments';
|
61
|
+
export { VerdocsTemplateBuildTabs as VerdocsTemplateBuildTabs } from '../types/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs';
|
61
62
|
export { VerdocsTemplateCard as VerdocsTemplateCard } from '../types/components/templates/verdocs-template-card/verdocs-template-card';
|
62
63
|
export { VerdocsTemplateCreate as VerdocsTemplateCreate } from '../types/components/templates/verdocs-template-create/verdocs-template-create';
|
63
64
|
export { VerdocsTemplateDocumentPage as VerdocsTemplateDocumentPage } from '../types/components/templates/verdocs-template-document-page/verdocs-template-document-page';
|
package/dist/components/index.js
CHANGED
@@ -58,6 +58,7 @@ export { VerdocsStatusIndicator, defineCustomElement as defineCustomElementVerdo
|
|
58
58
|
export { VerdocsTable, defineCustomElement as defineCustomElementVerdocsTable } from './verdocs-table.js';
|
59
59
|
export { VerdocsTabs, defineCustomElement as defineCustomElementVerdocsTabs } from './verdocs-tabs.js';
|
60
60
|
export { VerdocsTemplateAttachments, defineCustomElement as defineCustomElementVerdocsTemplateAttachments } from './verdocs-template-attachments.js';
|
61
|
+
export { VerdocsTemplateBuildTabs, defineCustomElement as defineCustomElementVerdocsTemplateBuildTabs } from './verdocs-template-build-tabs.js';
|
61
62
|
export { VerdocsTemplateCard, defineCustomElement as defineCustomElementVerdocsTemplateCard } from './verdocs-template-card.js';
|
62
63
|
export { VerdocsTemplateCreate, defineCustomElement as defineCustomElementVerdocsTemplateCreate } from './verdocs-template-create.js';
|
63
64
|
export { VerdocsTemplateDocumentPage, defineCustomElement as defineCustomElementVerdocsTemplateDocumentPage } from './verdocs-template-document-page.js';
|
@@ -1,23 +1,24 @@
|
|
1
|
-
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
1
|
+
import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h, Host } from '@stencil/core/internal/client';
|
2
2
|
import './Types.js';
|
3
|
-
import {
|
3
|
+
import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
|
4
4
|
import { g as getTemplateStore } from './TemplateStore.js';
|
5
5
|
import { S as SDKError } from './errors.js';
|
6
|
-
import { d as defineCustomElement$
|
7
|
-
import { d as defineCustomElement$
|
8
|
-
import { d as defineCustomElement$
|
9
|
-
import { d as defineCustomElement$
|
10
|
-
import { d as defineCustomElement$
|
11
|
-
import { d as defineCustomElement$
|
12
|
-
import { d as defineCustomElement$
|
13
|
-
import { d as defineCustomElement$
|
14
|
-
import { d as defineCustomElement$
|
15
|
-
import { d as defineCustomElement$
|
16
|
-
import { d as defineCustomElement$
|
17
|
-
import { d as defineCustomElement$
|
18
|
-
import { d as defineCustomElement$
|
19
|
-
import { d as defineCustomElement$
|
20
|
-
import { d as defineCustomElement$
|
6
|
+
import { d as defineCustomElement$t } from './verdocs-button2.js';
|
7
|
+
import { d as defineCustomElement$s } from './verdocs-checkbox2.js';
|
8
|
+
import { d as defineCustomElement$r } from './verdocs-component-error2.js';
|
9
|
+
import { d as defineCustomElement$q } from './verdocs-contact-picker2.js';
|
10
|
+
import { d as defineCustomElement$p } from './verdocs-file-chooser2.js';
|
11
|
+
import { d as defineCustomElement$o } from './verdocs-help-icon2.js';
|
12
|
+
import { d as defineCustomElement$n } from './verdocs-loader2.js';
|
13
|
+
import { d as defineCustomElement$m } from './verdocs-ok-dialog2.js';
|
14
|
+
import { d as defineCustomElement$l } from './verdocs-preview2.js';
|
15
|
+
import { d as defineCustomElement$k } from './verdocs-progress-bar2.js';
|
16
|
+
import { d as defineCustomElement$j } from './verdocs-radio-button2.js';
|
17
|
+
import { d as defineCustomElement$i } from './verdocs-select-input2.js';
|
18
|
+
import { d as defineCustomElement$h } from './verdocs-send2.js';
|
19
|
+
import { d as defineCustomElement$g } from './verdocs-tabs2.js';
|
20
|
+
import { d as defineCustomElement$f } from './verdocs-template-attachments2.js';
|
21
|
+
import { d as defineCustomElement$e } from './verdocs-template-build-tabs2.js';
|
21
22
|
import { d as defineCustomElement$d } from './verdocs-template-create2.js';
|
22
23
|
import { d as defineCustomElement$c } from './verdocs-template-document-page2.js';
|
23
24
|
import { d as defineCustomElement$b } from './verdocs-template-fields2.js';
|
@@ -31,46 +32,6 @@ import { d as defineCustomElement$4 } from './verdocs-text-input2.js';
|
|
31
32
|
import { d as defineCustomElement$3 } from './verdocs-toggle-button2.js';
|
32
33
|
import { d as defineCustomElement$2 } from './verdocs-toolbar-icon2.js';
|
33
34
|
|
34
|
-
/**
|
35
|
-
* Confirm whether the user has all of the specified permissions.
|
36
|
-
*/
|
37
|
-
var userHasPermissions = function (session, permissions) {
|
38
|
-
return permissions.every(function (perm) { return ((session === null || session === void 0 ? void 0 : session.permissions) || []).includes(perm); });
|
39
|
-
};
|
40
|
-
|
41
|
-
/**
|
42
|
-
* Various helpers to identify available operations for a template by a user.
|
43
|
-
*
|
44
|
-
* @module
|
45
|
-
*/
|
46
|
-
/**
|
47
|
-
* Check to see if the user created the template.
|
48
|
-
*/
|
49
|
-
var userIsTemplateCreator = function (session, template) {
|
50
|
-
return session && template && session.profile_id === template.profile_id;
|
51
|
-
};
|
52
|
-
/**
|
53
|
-
* Check to see if a template is "shared" with the user.
|
54
|
-
*/
|
55
|
-
var userHasSharedTemplate = function (session, template) {
|
56
|
-
return session && template && !template.is_personal && session.organization_id === template.organization_id;
|
57
|
-
};
|
58
|
-
/**
|
59
|
-
* Check to see if the user can update a tempate.
|
60
|
-
*/
|
61
|
-
var userCanUpdateTemplate = function (session, template) {
|
62
|
-
return userIsTemplateCreator(session, template) ||
|
63
|
-
(userHasSharedTemplate(session, template) &&
|
64
|
-
userHasPermissions(session, [Permissions.TEMPLATE_MEMBER_READ, Permissions.TEMPLATE_MEMBER_WRITE]));
|
65
|
-
};
|
66
|
-
/**
|
67
|
-
* Check to see if the user can "build" the template (use the field builder). The user must have write access to the
|
68
|
-
* template, and the template must have at least one signer role.
|
69
|
-
*/
|
70
|
-
var userCanBuildTemplate = function (session, template) {
|
71
|
-
return userCanUpdateTemplate(session, template) && (template.roles || []).filter(function (role) { return role.type === 'signer'; }).length > 0;
|
72
|
-
};
|
73
|
-
|
74
35
|
const verdocsBuildCss = "verdocs-build{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-build .content{-ms-flex:1;flex:1;gap:20px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column}verdocs-build verdocs-template-attachments,verdocs-build verdocs-template-roles{margin:20px}verdocs-build verdocs-template-fields{border-top:1px solid #777777}verdocs-build verdocs-template-attachments{padding:20px;background:#ffffff}verdocs-build verdocs-template-fields{width:100%}verdocs-build verdocs-preview{-ms-flex:1;flex:1}";
|
75
36
|
|
76
37
|
const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
@@ -86,11 +47,14 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
86
47
|
this.templateId = null;
|
87
48
|
this.step = 'preview';
|
88
49
|
this.store = null;
|
89
|
-
this.tabsUpdateKey = 1;
|
90
50
|
}
|
91
|
-
onTemplateIdChanged() {
|
92
|
-
console.log('Template ID changed',
|
93
|
-
this.loadTemplate().catch((e) => console.log('Unknown Error', e));
|
51
|
+
onTemplateIdChanged(newTemplateId) {
|
52
|
+
console.log('Template ID changed', newTemplateId);
|
53
|
+
this.loadTemplate(newTemplateId).catch((e) => console.log('Unknown Error', e));
|
54
|
+
}
|
55
|
+
onStepChanged(newStep) {
|
56
|
+
console.log('Step changed', newStep);
|
57
|
+
this.loadTemplate(this.templateId).catch((e) => console.log('Unknown Error', e));
|
94
58
|
}
|
95
59
|
async componentWillLoad() {
|
96
60
|
var _a, _b, _c;
|
@@ -105,16 +69,18 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
105
69
|
console.log('[BUILD] Unable to start builder session, must be authenticated');
|
106
70
|
return;
|
107
71
|
}
|
108
|
-
this.loadTemplate().catch(e => console.log('[BUILD] Unable to load template', e));
|
72
|
+
this.loadTemplate(this.templateId).catch(e => console.log('[BUILD] Unable to load template', e));
|
109
73
|
}
|
110
74
|
catch (e) {
|
111
75
|
console.log('[BUILD] Error loading template', e);
|
112
76
|
(_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
|
113
77
|
}
|
114
78
|
}
|
115
|
-
async loadTemplate() {
|
116
|
-
if (
|
117
|
-
|
79
|
+
async loadTemplate(templateId) {
|
80
|
+
if (templateId) {
|
81
|
+
console.log('Loading store', templateId);
|
82
|
+
this.store = await getTemplateStore(this.endpoint, templateId, true);
|
83
|
+
forceUpdate(this.el);
|
118
84
|
}
|
119
85
|
}
|
120
86
|
handleCancel(e) {
|
@@ -123,8 +89,8 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
123
89
|
}
|
124
90
|
async handleTemplateCreated(templateId) {
|
125
91
|
var _a;
|
92
|
+
await this.loadTemplate(templateId);
|
126
93
|
this.templateId = templateId;
|
127
|
-
await this.loadTemplate();
|
128
94
|
this.step = 'roles';
|
129
95
|
(_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit('roles');
|
130
96
|
}
|
@@ -132,7 +98,6 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
132
98
|
var _a;
|
133
99
|
console.log('tup');
|
134
100
|
(_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
|
135
|
-
this.tabsUpdateKey++;
|
136
101
|
}
|
137
102
|
handleAttachmentsNext() {
|
138
103
|
var _a;
|
@@ -144,58 +109,40 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
144
109
|
this.step = 'fields';
|
145
110
|
(_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit('fields');
|
146
111
|
}
|
147
|
-
|
112
|
+
handleStepChanged(step) {
|
148
113
|
var _a;
|
149
|
-
|
150
|
-
e.preventDefault();
|
114
|
+
console.log('osc', step);
|
151
115
|
this.step = step;
|
152
116
|
(_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit(step);
|
153
117
|
}
|
154
118
|
render() {
|
155
|
-
var _a, _b, _c;
|
156
119
|
if (!this.endpoint.session) {
|
157
120
|
return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
|
158
121
|
}
|
159
|
-
if (!this.
|
122
|
+
if (!this.store) {
|
160
123
|
console.log('[BUILD] No template ID, rendering created view');
|
161
|
-
return (h(Host, null, h("div", { class: "content" }, h("verdocs-tabs", {
|
162
|
-
{ id: 'attachments', disabled: false, label: 'Upload Attachment(s)' },
|
163
|
-
{ id: 'roles', disabled: true, label: 'Roles' },
|
164
|
-
{ id: 'settings', disabled: true, label: 'Settings' },
|
165
|
-
{ id: 'fields', disabled: true, label: 'Fields' },
|
166
|
-
{ id: 'preview', disabled: true, label: 'Preview/Send' },
|
167
|
-
] }), h("verdocs-template-create", { endpoint: this.endpoint, onExit: e => this.handleCancel(e), onNext: () => this.handleAttachmentsNext(), onTemplateCreated: e => this.handleTemplateCreated(e.detail.templateId) }))));
|
124
|
+
return (h(Host, null, h("div", { class: "content" }, h("verdocs-template-build-tabs", { endpoint: this.endpoint, templateId: this.templateId, step: "attachments", onSdkError: e => { var _a; return (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(e.detail); }, onStepChanged: e => this.handleStepChanged(e.detail) }), h("verdocs-template-create", { endpoint: this.endpoint, onExit: e => this.handleCancel(e), onNext: () => this.handleAttachmentsNext(), onTemplateCreated: e => this.handleTemplateCreated(e.detail.templateId) }))));
|
168
125
|
}
|
169
126
|
console.log('[BUILD] Rendering build view', this.step, ['attachments', 'roles', 'settings', 'fields', 'preview'].indexOf(this.step));
|
170
|
-
|
171
|
-
// TODO: Had to disable this for now to research why reactivity isn't re-rendering the tabs
|
172
|
-
const canPreview = this.store && userCanBuildTemplate(this.endpoint.session, (_a = this.store) === null || _a === void 0 ? void 0 : _a.state);
|
173
|
-
const canEditFields = this.store && userCanBuildTemplate(this.endpoint.session, (_b = this.store) === null || _b === void 0 ? void 0 : _b.state);
|
174
|
-
const canEditRoles = this.store && userCanUpdateTemplate(this.endpoint.session, (_c = this.store) === null || _c === void 0 ? void 0 : _c.state);
|
175
|
-
return (h(Host, null, h("div", { class: "content" }, h("verdocs-tabs", { key: this.tabsUpdateKey, onSelectTab: e => this.setStep(e, e.detail.tab.id), defaultTab: ['attachments', 'roles', 'settings', 'fields', 'preview'].indexOf(this.step), tabs: [
|
176
|
-
{ id: 'attachments', disabled: false, label: 'Attachment(s)' },
|
177
|
-
{ id: 'roles', disabled: !canEditRoles, label: 'Roles' },
|
178
|
-
{ id: 'settings', disabled: !canEditFields, label: 'Settings' },
|
179
|
-
{ id: 'fields', disabled: !canEditFields, label: 'Fields' },
|
180
|
-
{ id: 'preview', disabled: !canPreview, label: 'Preview/Send' },
|
181
|
-
] }), this.step === 'attachments' && (h("verdocs-template-attachments", { templateId: this.templateId, endpoint: this.endpoint, onExit: e => this.handleCancel(e), onNext: () => this.handleAttachmentsNext(), onTemplateUpdated: e => this.handleTemplateUpdated(e) })), this.step === 'roles' && (h("verdocs-template-roles", { templateId: this.templateId, endpoint: this.endpoint, onExit: e => this.handleCancel(e), onNext: () => this.handleRolesNext(), onTemplateUpdated: e => this.handleTemplateUpdated(e) })), this.step === 'settings' && (h("div", { style: { flexDirection: 'column', gap: '20px', display: 'flex', maxWidth: '400px', margin: '20px' } }, h("verdocs-template-name", { templateId: this.templateId, endpoint: this.endpoint, style: { backgroundColor: '#ffffff', padding: '20px' }, onTemplateUpdated: e => this.handleTemplateUpdated(e) }), h("verdocs-template-reminders", { templateId: this.templateId, endpoint: this.endpoint, style: { backgroundColor: '#ffffff', padding: '20px' }, onTemplateUpdated: e => this.handleTemplateUpdated(e) }), h("verdocs-template-visibility", { templateId: this.templateId, endpoint: this.endpoint, style: { backgroundColor: '#ffffff', padding: '20px' }, onTemplateUpdated: e => this.handleTemplateUpdated(e) }))), this.step === 'fields' && h("verdocs-template-fields", { templateId: this.templateId, endpoint: this.endpoint, onTemplateUpdated: e => this.handleTemplateUpdated(e) }), this.step === 'preview' && (h("div", { style: { flexDirection: 'row', display: 'flex', width: '100%', backgroundColor: '#eeeeee', maxHeight: '100%' } }, h("div", { style: { display: 'flex', flex: '0 0 300px', backgroundColor: '#ffffff', boxShadow: '1px 1px 6px -2px #0000007f' } }, h("verdocs-send", { templateId: this.templateId, endpoint: this.endpoint, onSend: e => { var _a; return (_a = this.send) === null || _a === void 0 ? void 0 : _a.emit(e.detail); }, style: { width: '100%' } })), h("div", { style: { display: 'flex', flex: '1', justifyContent: 'center', overflowY: 'scroll' } }, h("verdocs-preview", { templateId: this.templateId, endpoint: this.endpoint, style: { display: 'flex', flex: '1', maxWidth: '1000px' } })))))));
|
127
|
+
return (h(Host, null, h("div", { class: "content" }, h("verdocs-template-build-tabs", { endpoint: this.endpoint, templateId: this.templateId, step: this.step, onSdkError: e => { var _a; return (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(e.detail); }, onStepChanged: e => this.handleStepChanged(e.detail) }), this.step === 'attachments' && (h("verdocs-template-attachments", { templateId: this.templateId, endpoint: this.endpoint, onExit: e => this.handleCancel(e), onNext: () => this.handleAttachmentsNext(), onTemplateUpdated: e => this.handleTemplateUpdated(e) })), this.step === 'roles' && (h("verdocs-template-roles", { templateId: this.templateId, endpoint: this.endpoint, onExit: e => this.handleCancel(e), onNext: () => this.handleRolesNext(), onTemplateUpdated: e => this.handleTemplateUpdated(e) })), this.step === 'settings' && (h("div", { style: { flexDirection: 'column', gap: '20px', display: 'flex', maxWidth: '400px', margin: '20px' } }, h("verdocs-template-name", { templateId: this.templateId, endpoint: this.endpoint, style: { backgroundColor: '#ffffff', padding: '20px' }, onTemplateUpdated: e => this.handleTemplateUpdated(e) }), h("verdocs-template-reminders", { templateId: this.templateId, endpoint: this.endpoint, style: { backgroundColor: '#ffffff', padding: '20px' }, onTemplateUpdated: e => this.handleTemplateUpdated(e) }), h("verdocs-template-visibility", { templateId: this.templateId, endpoint: this.endpoint, style: { backgroundColor: '#ffffff', padding: '20px' }, onTemplateUpdated: e => this.handleTemplateUpdated(e) }))), this.step === 'fields' && h("verdocs-template-fields", { templateId: this.templateId, endpoint: this.endpoint, onTemplateUpdated: e => this.handleTemplateUpdated(e) }), this.step === 'preview' && (h("div", { style: { flexDirection: 'row', display: 'flex', width: '100%', backgroundColor: '#eeeeee', maxHeight: '100%' } }, h("div", { style: { display: 'flex', flex: '0 0 300px', backgroundColor: '#ffffff', boxShadow: '1px 1px 6px -2px #0000007f' } }, h("verdocs-send", { templateId: this.templateId, endpoint: this.endpoint, onSend: e => { var _a; return (_a = this.send) === null || _a === void 0 ? void 0 : _a.emit(e.detail); }, style: { width: '100%' } })), h("div", { style: { display: 'flex', flex: '1', justifyContent: 'center', overflowY: 'scroll' } }, h("verdocs-preview", { templateId: this.templateId, endpoint: this.endpoint, style: { display: 'flex', flex: '1', maxWidth: '1000px' } })))))));
|
182
128
|
}
|
129
|
+
get el() { return this; }
|
183
130
|
static get watchers() { return {
|
184
|
-
"templateId": ["onTemplateIdChanged"]
|
131
|
+
"templateId": ["onTemplateIdChanged"],
|
132
|
+
"step": ["onStepChanged"]
|
185
133
|
}; }
|
186
134
|
static get style() { return verdocsBuildCss; }
|
187
135
|
}, [0, "verdocs-build", {
|
188
136
|
"endpoint": [16],
|
189
137
|
"templateId": [1537, "template-id"],
|
190
138
|
"step": [1537],
|
191
|
-
"store": [32]
|
192
|
-
"tabsUpdateKey": [32]
|
139
|
+
"store": [32]
|
193
140
|
}]);
|
194
141
|
function defineCustomElement$1() {
|
195
142
|
if (typeof customElements === "undefined") {
|
196
143
|
return;
|
197
144
|
}
|
198
|
-
const components = ["verdocs-build", "verdocs-button", "verdocs-checkbox", "verdocs-component-error", "verdocs-contact-picker", "verdocs-file-chooser", "verdocs-help-icon", "verdocs-loader", "verdocs-ok-dialog", "verdocs-preview", "verdocs-progress-bar", "verdocs-radio-button", "verdocs-select-input", "verdocs-send", "verdocs-tabs", "verdocs-template-attachments", "verdocs-template-create", "verdocs-template-document-page", "verdocs-template-fields", "verdocs-template-name", "verdocs-template-reminders", "verdocs-template-role-properties", "verdocs-template-roles", "verdocs-template-sender", "verdocs-template-visibility", "verdocs-text-input", "verdocs-toggle-button", "verdocs-toolbar-icon"];
|
145
|
+
const components = ["verdocs-build", "verdocs-button", "verdocs-checkbox", "verdocs-component-error", "verdocs-contact-picker", "verdocs-file-chooser", "verdocs-help-icon", "verdocs-loader", "verdocs-ok-dialog", "verdocs-preview", "verdocs-progress-bar", "verdocs-radio-button", "verdocs-select-input", "verdocs-send", "verdocs-tabs", "verdocs-template-attachments", "verdocs-template-build-tabs", "verdocs-template-create", "verdocs-template-document-page", "verdocs-template-fields", "verdocs-template-name", "verdocs-template-reminders", "verdocs-template-role-properties", "verdocs-template-roles", "verdocs-template-sender", "verdocs-template-visibility", "verdocs-text-input", "verdocs-toggle-button", "verdocs-toolbar-icon"];
|
199
146
|
components.forEach(tagName => { switch (tagName) {
|
200
147
|
case "verdocs-build":
|
201
148
|
if (!customElements.get(tagName)) {
|
@@ -204,75 +151,80 @@ function defineCustomElement$1() {
|
|
204
151
|
break;
|
205
152
|
case "verdocs-button":
|
206
153
|
if (!customElements.get(tagName)) {
|
207
|
-
defineCustomElement$
|
154
|
+
defineCustomElement$t();
|
208
155
|
}
|
209
156
|
break;
|
210
157
|
case "verdocs-checkbox":
|
211
158
|
if (!customElements.get(tagName)) {
|
212
|
-
defineCustomElement$
|
159
|
+
defineCustomElement$s();
|
213
160
|
}
|
214
161
|
break;
|
215
162
|
case "verdocs-component-error":
|
216
163
|
if (!customElements.get(tagName)) {
|
217
|
-
defineCustomElement$
|
164
|
+
defineCustomElement$r();
|
218
165
|
}
|
219
166
|
break;
|
220
167
|
case "verdocs-contact-picker":
|
221
168
|
if (!customElements.get(tagName)) {
|
222
|
-
defineCustomElement$
|
169
|
+
defineCustomElement$q();
|
223
170
|
}
|
224
171
|
break;
|
225
172
|
case "verdocs-file-chooser":
|
226
173
|
if (!customElements.get(tagName)) {
|
227
|
-
defineCustomElement$
|
174
|
+
defineCustomElement$p();
|
228
175
|
}
|
229
176
|
break;
|
230
177
|
case "verdocs-help-icon":
|
231
178
|
if (!customElements.get(tagName)) {
|
232
|
-
defineCustomElement$
|
179
|
+
defineCustomElement$o();
|
233
180
|
}
|
234
181
|
break;
|
235
182
|
case "verdocs-loader":
|
236
183
|
if (!customElements.get(tagName)) {
|
237
|
-
defineCustomElement$
|
184
|
+
defineCustomElement$n();
|
238
185
|
}
|
239
186
|
break;
|
240
187
|
case "verdocs-ok-dialog":
|
241
188
|
if (!customElements.get(tagName)) {
|
242
|
-
defineCustomElement$
|
189
|
+
defineCustomElement$m();
|
243
190
|
}
|
244
191
|
break;
|
245
192
|
case "verdocs-preview":
|
246
193
|
if (!customElements.get(tagName)) {
|
247
|
-
defineCustomElement$
|
194
|
+
defineCustomElement$l();
|
248
195
|
}
|
249
196
|
break;
|
250
197
|
case "verdocs-progress-bar":
|
251
198
|
if (!customElements.get(tagName)) {
|
252
|
-
defineCustomElement$
|
199
|
+
defineCustomElement$k();
|
253
200
|
}
|
254
201
|
break;
|
255
202
|
case "verdocs-radio-button":
|
256
203
|
if (!customElements.get(tagName)) {
|
257
|
-
defineCustomElement$
|
204
|
+
defineCustomElement$j();
|
258
205
|
}
|
259
206
|
break;
|
260
207
|
case "verdocs-select-input":
|
261
208
|
if (!customElements.get(tagName)) {
|
262
|
-
defineCustomElement$
|
209
|
+
defineCustomElement$i();
|
263
210
|
}
|
264
211
|
break;
|
265
212
|
case "verdocs-send":
|
266
213
|
if (!customElements.get(tagName)) {
|
267
|
-
defineCustomElement$
|
214
|
+
defineCustomElement$h();
|
268
215
|
}
|
269
216
|
break;
|
270
217
|
case "verdocs-tabs":
|
271
218
|
if (!customElements.get(tagName)) {
|
272
|
-
defineCustomElement$
|
219
|
+
defineCustomElement$g();
|
273
220
|
}
|
274
221
|
break;
|
275
222
|
case "verdocs-template-attachments":
|
223
|
+
if (!customElements.get(tagName)) {
|
224
|
+
defineCustomElement$f();
|
225
|
+
}
|
226
|
+
break;
|
227
|
+
case "verdocs-template-build-tabs":
|
276
228
|
if (!customElements.get(tagName)) {
|
277
229
|
defineCustomElement$e();
|
278
230
|
}
|
@@ -44,6 +44,7 @@ const VerdocsDropdown = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
|
|
44
44
|
const bodyWidth = document.body.scrollWidth;
|
45
45
|
const buttonRect = (_a = this.dropdownButton) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
46
46
|
const triggerHeight = ((_b = this.dropdownButton) === null || _b === void 0 ? void 0 : _b.offsetWidth) || 28;
|
47
|
+
console.log('Repositioning dropdown', { bodyWidth, buttonRect, triggerHeight }, menu);
|
47
48
|
menu.style.top = `${((buttonRect === null || buttonRect === void 0 ? void 0 : buttonRect.top) || 0) + triggerHeight}px`;
|
48
49
|
menu.style.right = `${Math.max(0, bodyWidth - ((buttonRect === null || buttonRect === void 0 ? void 0 : buttonRect.right) || 0))}px`;
|
49
50
|
}
|