@verdocs/web-sdk 4.2.47 → 4.2.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/cjs/{TemplateRoleStore-9fc8458d.js → TemplateRoleStore-3f9e9f9e.js} +0 -1
  2. package/dist/cjs/{TemplateStore-75369c4d.js → TemplateStore-761197ec.js} +1 -1
  3. package/dist/cjs/index-d2999878.js +2 -6
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/verdocs-build.cjs.entry.js +2 -2
  6. package/dist/cjs/verdocs-checkbox_4.cjs.entry.js +33 -21
  7. package/dist/cjs/{verdocs-field-attachment_12.cjs.entry.js → verdocs-field-attachment_13.cjs.entry.js} +100 -33
  8. package/dist/cjs/verdocs-field-payment.cjs.entry.js +1 -1
  9. package/dist/cjs/verdocs-preview_10.cjs.entry.js +7 -11
  10. package/dist/cjs/verdocs-radio-button_3.cjs.entry.js +2 -2
  11. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  13. package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js +5 -6
  14. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +0 -1
  15. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.css +24 -7
  16. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +3 -3
  17. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.css +17 -4
  18. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +2 -2
  19. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.css +15 -2
  20. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +2 -2
  21. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.css +15 -2
  22. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +2 -4
  23. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.css +16 -2
  24. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +2 -2
  25. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.css +47 -21
  26. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js +2 -2
  27. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.css +15 -2
  28. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +2 -2
  29. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.css +16 -3
  30. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +2 -2
  31. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.css +38 -3
  32. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +5 -4
  33. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.css +14 -1
  34. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +2 -2
  35. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.js +1 -1
  36. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.css +20 -1
  37. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +32 -20
  38. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +0 -2
  39. package/dist/collection/utils/TemplateRoleStore.js +0 -1
  40. package/dist/components/TemplateRoleStore.js +0 -1
  41. package/dist/components/verdocs-build.js +26 -20
  42. package/dist/components/verdocs-field-attachment2.js +4 -4
  43. package/dist/components/verdocs-field-checkbox2.js +3 -3
  44. package/dist/components/verdocs-field-date2.js +3 -3
  45. package/dist/components/verdocs-field-dropdown2.js +3 -5
  46. package/dist/components/verdocs-field-initial2.js +3 -3
  47. package/dist/components/verdocs-field-radio.js +1 -147
  48. package/dist/components/verdocs-field-radio2.js +149 -0
  49. package/dist/components/verdocs-field-signature2.js +3 -3
  50. package/dist/components/verdocs-field-textarea2.js +3 -3
  51. package/dist/components/verdocs-field-textbox2.js +6 -5
  52. package/dist/components/verdocs-field-timestamp2.js +3 -3
  53. package/dist/components/verdocs-preview2.js +26 -22
  54. package/dist/components/verdocs-send2.js +0 -1
  55. package/dist/components/verdocs-template-document-page2.js +23 -17
  56. package/dist/components/verdocs-template-field-properties2.js +33 -21
  57. package/dist/components/verdocs-template-fields2.js +22 -18
  58. package/dist/esm/{TemplateRoleStore-69e28e18.js → TemplateRoleStore-39555cd8.js} +0 -1
  59. package/dist/esm/{TemplateStore-1c435e14.js → TemplateStore-ebd8f5f6.js} +1 -1
  60. package/dist/esm/index-3476681c.js +2 -6
  61. package/dist/esm/loader.js +1 -1
  62. package/dist/esm/verdocs-build.entry.js +2 -2
  63. package/dist/esm/verdocs-checkbox_4.entry.js +34 -22
  64. package/dist/esm/{verdocs-field-attachment_12.entry.js → verdocs-field-attachment_13.entry.js} +100 -34
  65. package/dist/esm/verdocs-field-payment.entry.js +1 -1
  66. package/dist/esm/verdocs-preview_10.entry.js +7 -11
  67. package/dist/esm/verdocs-radio-button_3.entry.js +2 -2
  68. package/dist/esm/verdocs-template-document-page_2.entry.js +1 -1
  69. package/dist/esm/verdocs-web-sdk.js +1 -1
  70. package/dist/esm-es5/TemplateRoleStore-39555cd8.js +1 -0
  71. package/dist/esm-es5/{TemplateStore-1c435e14.js → TemplateStore-ebd8f5f6.js} +1 -1
  72. package/dist/esm-es5/index-3476681c.js +1 -1
  73. package/dist/esm-es5/loader.js +1 -1
  74. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  75. package/dist/esm-es5/verdocs-checkbox_4.entry.js +1 -1
  76. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +1 -0
  77. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  78. package/dist/esm-es5/verdocs-preview_10.entry.js +1 -1
  79. package/dist/esm-es5/verdocs-radio-button_3.entry.js +1 -1
  80. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  81. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  82. package/dist/types/components/embeds/verdocs-preview/verdocs-preview.d.ts +1 -1
  83. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +2 -1
  84. package/dist/verdocs-web-sdk/{p-c43eb082.system.entry.js → p-00798e23.system.entry.js} +1 -1
  85. package/dist/verdocs-web-sdk/p-03a228e4.system.js +1 -1
  86. package/dist/verdocs-web-sdk/p-13aef6d0.system.entry.js +1 -0
  87. package/dist/verdocs-web-sdk/{p-1b2b9121.system.js → p-15b6097f.system.js} +1 -1
  88. package/dist/verdocs-web-sdk/p-1f23cc70.system.entry.js +1 -0
  89. package/dist/verdocs-web-sdk/{p-d6613428.system.entry.js → p-24a9f119.system.entry.js} +1 -1
  90. package/dist/verdocs-web-sdk/{p-560280a0.entry.js → p-33901ebd.entry.js} +1 -1
  91. package/dist/verdocs-web-sdk/{p-b7fd317f.system.entry.js → p-49899f3c.system.entry.js} +1 -1
  92. package/dist/verdocs-web-sdk/p-530f073d.entry.js +1 -0
  93. package/dist/verdocs-web-sdk/{p-4aeb4efe.entry.js → p-5d223ab3.entry.js} +1 -1
  94. package/dist/verdocs-web-sdk/p-65901ac2.entry.js +1 -0
  95. package/dist/verdocs-web-sdk/{p-a4d5a21f.entry.js → p-8937cdbe.entry.js} +1 -1
  96. package/dist/verdocs-web-sdk/p-8bfdaa86.system.entry.js +1 -0
  97. package/dist/verdocs-web-sdk/p-98c36099.system.js +1 -0
  98. package/dist/verdocs-web-sdk/{p-7c3247cf.js → p-b42f9eb2.js} +1 -1
  99. package/dist/verdocs-web-sdk/p-c78aeff3.entry.js +1 -0
  100. package/dist/verdocs-web-sdk/{p-3bbc745e.system.entry.js → p-c8c48ba0.system.entry.js} +1 -1
  101. package/dist/verdocs-web-sdk/p-cd3bde24.entry.js +1 -0
  102. package/dist/verdocs-web-sdk/p-d7112c9f.js +1 -0
  103. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  104. package/package.json +1 -1
  105. package/dist/cjs/verdocs-field-radio.cjs.entry.js +0 -79
  106. package/dist/esm/verdocs-field-radio.entry.js +0 -75
  107. package/dist/esm-es5/TemplateRoleStore-69e28e18.js +0 -1
  108. package/dist/esm-es5/verdocs-field-attachment_12.entry.js +0 -1
  109. package/dist/esm-es5/verdocs-field-radio.entry.js +0 -1
  110. package/dist/verdocs-web-sdk/p-00dba603.system.entry.js +0 -1
  111. package/dist/verdocs-web-sdk/p-037f1e3c.entry.js +0 -1
  112. package/dist/verdocs-web-sdk/p-16919f37.entry.js +0 -1
  113. package/dist/verdocs-web-sdk/p-253d0f68.system.entry.js +0 -1
  114. package/dist/verdocs-web-sdk/p-377c3586.js +0 -1
  115. package/dist/verdocs-web-sdk/p-5de9e1e8.system.entry.js +0 -1
  116. package/dist/verdocs-web-sdk/p-6697b4ac.entry.js +0 -1
  117. package/dist/verdocs-web-sdk/p-c0e736e4.system.entry.js +0 -1
  118. package/dist/verdocs-web-sdk/p-f06da0c0.system.js +0 -1
  119. package/dist/verdocs-web-sdk/p-f2adcc8d.entry.js +0 -1
  120. package/dist/verdocs-web-sdk/p-f49a9d74.entry.js +0 -1
@@ -1,8 +1,8 @@
1
1
  import { r as registerInstance, h, H as Host, c as createEvent, g as getElement } from './index-3476681c.js';
2
- import { VerdocsEndpoint, updateField, deleteField } from '@verdocs/js-sdk';
2
+ import { VerdocsEndpoint, DEFAULT_FIELD_WIDTHS, DEFAULT_FIELD_HEIGHTS, updateField, deleteField } from '@verdocs/js-sdk';
3
3
  import { g as getTemplateFieldStore, u as updateStoreField } from './TemplateFieldStore-002f3d4c.js';
4
- import { g as getTemplateRoleStore } from './TemplateRoleStore-69e28e18.js';
5
- import { g as getTemplateStore } from './TemplateStore-1c435e14.js';
4
+ import { g as getTemplateRoleStore } from './TemplateRoleStore-39555cd8.js';
5
+ import { g as getTemplateStore } from './TemplateStore-ebd8f5f6.js';
6
6
  import { S as SDKError } from './errors-887f1e88.js';
7
7
  import './index-e58b15f6.js';
8
8
  import './index-7588a071.js';
@@ -57,7 +57,7 @@ const VerdocsSelectInput = class {
57
57
  };
58
58
  VerdocsSelectInput.style = VerdocsSelectInputStyle0;
59
59
 
60
- const verdocsTemplateFieldPropertiesCss = "@-webkit-keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}@keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}verdocs-template-field-properties{padding:20px;display:block;border-radius:4px;background:#ffffff;border:1px solid #ccc;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-webkit-box-shadow:2px 2px 10px 0 rgba(0, 0, 0, 0.1215686275);box-shadow:2px 2px 10px 0 rgba(0, 0, 0, 0.1215686275)}@media all and (max-width: 600px){verdocs-template-field-properties{padding:10px;-webkit-transform:scale(0.8);transform:scale(0.8)}}verdocs-template-field-properties .buttons{display:-ms-flexbox;display:flex;margin-top:30px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-field-properties .buttons verdocs-button{margin-left:16px}verdocs-template-field-properties form .row{display:-ms-flexbox;display:flex;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;margin:0 0 10px 0;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-template-field-properties form .row .input-label{display:block;color:#555570;font-weight:700;font-size:14px;margin:0 0 4px 0;-ms-flex:0 0 100px;flex:0 0 100px}verdocs-template-field-properties verdocs-select-input{-ms-flex:1;flex:1;margin:0}verdocs-template-field-properties verdocs-text-input{margin:0;-ms-flex:1;flex:1}verdocs-template-field-properties verdocs-text-input label{margin:0;display:-ms-flexbox;display:flex;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-template-field-properties verdocs-text-input .input-label{-ms-flex:0 0 100px;flex:0 0 100px}verdocs-template-field-properties verdocs-text-input input{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex}verdocs-template-field-properties .checkbox-wrapper{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex}verdocs-template-field-properties .delete-button{height:34px;display:-ms-flexbox;display:flex;cursor:pointer;background:none;border-radius:4px;-ms-flex-align:center;align-items:center;border:1px solid #999;-ms-flex-pack:center;justify-content:center}verdocs-template-field-properties .delete-button:active{background:#f3f3f3}verdocs-template-field-properties .delete-button svg{width:24px;height:24px}verdocs-template-field-properties h6{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex;font-size:16px;font-weight:bold;margin:0 0 8px 0;-ms-flex-direction:row;flex-direction:row;color:#092c4c}verdocs-template-field-properties h6 .help-icon{opacity:0.5}verdocs-template-field-properties h6 .help-icon:hover{opacity:1;cursor:pointer}verdocs-template-field-properties .row-header{gap:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}verdocs-template-field-properties .row-header h6{margin-bottom:0}verdocs-template-field-properties .row-header verdocs-help-icon{-webkit-transform:scale(0.85);transform:scale(0.85)}verdocs-template-field-properties .row-header verdocs-help-icon svg{margin-bottom:-5px}verdocs-template-field-properties .row-header .add-button{margin:0;padding:0;border:none;opacity:0.5;cursor:pointer;background:none}verdocs-template-field-properties .row-header .add-button:hover{opacity:1}verdocs-template-field-properties .row-header .add-button svg{width:32px;height:32px}verdocs-template-field-properties .option-row{margin:15px 0}verdocs-template-field-properties .option-row .remove-button{height:28px;display:-ms-flexbox;display:flex;cursor:pointer;background:none;border-radius:4px;-ms-flex-align:center;align-items:center;border:1px solid #999;-ms-flex-pack:center;justify-content:center}verdocs-template-field-properties .option-row .remove-button:active{background:#f3f3f3}verdocs-template-field-properties .option-row .remove-button:hover svg{stroke:rgb(165, 0, 33)}verdocs-template-field-properties .option-row .remove-button svg{width:20px;height:20px;stroke:#333333}verdocs-template-field-properties .options{background:#f3f3f3;padding:0 0 10px 0}verdocs-template-field-properties .options .row-header,verdocs-template-field-properties .options .option-row{padding:0 10px}verdocs-template-field-properties .options .add-option-button{border-radius:5px;border:1px solid #cccccc;background:#46497d;color:#ffffff;padding:3px 8px}verdocs-template-field-properties .options .option-row .input-element{font-size:14px}verdocs-template-field-properties .options verdocs-help-icon{opacity:1;-webkit-transform:scale(0.8);transform:scale(0.8)}verdocs-template-field-properties .options verdocs-help-icon svg{fill:#ffffff}";
60
+ const verdocsTemplateFieldPropertiesCss = "@-webkit-keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}@keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}verdocs-template-field-properties{padding:20px;display:block;border-radius:4px;background:#ffffff;border:1px solid #ccc;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-webkit-box-shadow:2px 2px 10px 0 rgba(0, 0, 0, 0.1215686275);box-shadow:2px 2px 10px 0 rgba(0, 0, 0, 0.1215686275)}@media all and (max-width: 600px){verdocs-template-field-properties{padding:10px;-webkit-transform:scale(0.8);transform:scale(0.8)}}verdocs-template-field-properties .buttons{display:-ms-flexbox;display:flex;margin-top:30px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-field-properties .buttons verdocs-button{margin-left:16px}verdocs-template-field-properties form .row{display:-ms-flexbox;display:flex;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;margin:0 0 10px 0;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-template-field-properties form .row .input-label{display:block;color:#555570;font-weight:700;font-size:14px;margin:0 0 4px 0;-ms-flex:0 0 100px;flex:0 0 100px}verdocs-template-field-properties verdocs-select-input{-ms-flex:1;flex:1;margin:0}verdocs-template-field-properties verdocs-text-input{margin:0;-ms-flex:1;flex:1}verdocs-template-field-properties verdocs-text-input label{margin:0;display:-ms-flexbox;display:flex;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-template-field-properties verdocs-text-input .input-label{-ms-flex:0 0 100px;flex:0 0 100px}verdocs-template-field-properties verdocs-text-input input{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex}verdocs-template-field-properties .checkbox-wrapper{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex}verdocs-template-field-properties .delete-button{height:34px;display:-ms-flexbox;display:flex;cursor:pointer;background:none;border-radius:4px;-ms-flex-align:center;align-items:center;border:1px solid #999;-ms-flex-pack:center;justify-content:center}verdocs-template-field-properties .delete-button:active{background:#f3f3f3}verdocs-template-field-properties .delete-button svg{width:24px;height:24px}verdocs-template-field-properties h6{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex;font-size:16px;font-weight:bold;margin:0 0 8px 0;-ms-flex-direction:row;flex-direction:row;color:#092c4c}verdocs-template-field-properties h6 .help-icon{opacity:0.5}verdocs-template-field-properties h6 .help-icon:hover{opacity:1;cursor:pointer}verdocs-template-field-properties .row-header{gap:15px;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}verdocs-template-field-properties .row-header h6{margin-bottom:0}verdocs-template-field-properties .row-header verdocs-help-icon{-webkit-transform:scale(0.85);transform:scale(0.85)}verdocs-template-field-properties .row-header verdocs-help-icon svg{margin-bottom:-5px}verdocs-template-field-properties .row-header .add-button{margin:0;padding:0;border:none;opacity:0.5;cursor:pointer;background:none}verdocs-template-field-properties .row-header .add-button:hover{opacity:1}verdocs-template-field-properties .row-header .add-button svg{width:32px;height:32px}verdocs-template-field-properties .options-header{gap:10px;margin:0 0 5px 0;display:-ms-flexbox;display:flex;color:#ffffff;font-size:14px;padding:5px 8px;font-weight:700;text-align:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center;background-color:#333333}verdocs-template-field-properties .options-header-label{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;font-weight:700;font-size:14px}verdocs-template-field-properties .option-row{margin:15px 0}verdocs-template-field-properties .option-row .remove-button{height:28px;display:-ms-flexbox;display:flex;cursor:pointer;background:none;border-radius:4px;-ms-flex-align:center;align-items:center;border:1px solid #999;-ms-flex-pack:center;justify-content:center}verdocs-template-field-properties .option-row .remove-button:active{background:#f3f3f3}verdocs-template-field-properties .option-row .remove-button:hover svg{stroke:rgb(165, 0, 33)}verdocs-template-field-properties .option-row .remove-button svg{width:20px;height:20px;stroke:#333333}verdocs-template-field-properties .options{background:#f3f3f3;padding:0 0 1px 0}verdocs-template-field-properties .options .row-header,verdocs-template-field-properties .options .option-row{padding:0 10px}verdocs-template-field-properties .options .add-option-button{border-radius:5px;border:1px solid #cccccc;background:#46497d;color:#ffffff;padding:3px 8px}verdocs-template-field-properties .options .option-row .input-element{font-size:14px}verdocs-template-field-properties .options verdocs-help-icon{opacity:1;-webkit-transform:scale(0.8);transform:scale(0.8)}verdocs-template-field-properties .options verdocs-help-icon svg{fill:#ffffff}";
61
61
  const VerdocsTemplateFieldPropertiesStyle0 = verdocsTemplateFieldPropertiesCss;
62
62
 
63
63
  const capitalize = (str) => str.charAt(0).toUpperCase() + str.slice(1);
@@ -83,12 +83,12 @@ const VerdocsTemplateFieldProperties = class {
83
83
  this.type = 'textbox';
84
84
  this.name = '';
85
85
  this.required = false;
86
+ this.multiline = false;
86
87
  this.roleName = '';
87
88
  this.group = '';
88
89
  this.fieldType = '';
89
90
  this.options = [];
90
91
  this.placeholder = '';
91
- this.multiline = false;
92
92
  this.defaultValue = '';
93
93
  this.showingHelp = false;
94
94
  }
@@ -130,16 +130,17 @@ const VerdocsTemplateFieldProperties = class {
130
130
  this.type = field.type;
131
131
  this.name = field.name;
132
132
  this.label = field.label;
133
- this.group = field.name;
133
+ this.group = field.group;
134
134
  this.roleName = field.role_name;
135
135
  this.required = field.required;
136
136
  this.fieldType = field.type;
137
- this.options = field.options;
137
+ this.options = field.options || [];
138
138
  this.placeholder = field.placeholder || '';
139
139
  this.defaultValue = field.default || '';
140
140
  this.multiline = field.multiline || false;
141
141
  this.dirty = false;
142
142
  this.loading = false;
143
+ this.cleanupOptions();
143
144
  }
144
145
  handleCancel(e) {
145
146
  var _a, _b;
@@ -161,6 +162,12 @@ const VerdocsTemplateFieldProperties = class {
161
162
  default: this.defaultValue,
162
163
  options: this.options,
163
164
  };
165
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldName);
166
+ if (!newProperties.multiline && field.multiline) {
167
+ console.log('Switching off multiline');
168
+ newProperties.width = DEFAULT_FIELD_WIDTHS.textbox;
169
+ newProperties.height = DEFAULT_FIELD_HEIGHTS.textbox;
170
+ }
164
171
  console.log('[FIELD PROPERTIES] Will update', this.fieldName, newProperties);
165
172
  updateField(this.endpoint, this.templateId, this.fieldName, newProperties)
166
173
  .then(updated => {
@@ -188,6 +195,12 @@ const VerdocsTemplateFieldProperties = class {
188
195
  console.log('[FIELD PROPERTIES] Deletion error', e);
189
196
  });
190
197
  }
198
+ cleanupOptions() {
199
+ this.options = [...this.options.filter(opt => (opt.id || '').trim() !== '' || (opt.value || '').trim() !== '')];
200
+ if (!this.options.find(opt => !opt.id && !opt.value)) {
201
+ this.options = [...this.options, { id: '', value: '' }];
202
+ }
203
+ }
191
204
  render() {
192
205
  var _a;
193
206
  // console.log('Rendering field properties', this.fieldStore.get(this.fieldName));
@@ -217,6 +230,12 @@ const VerdocsTemplateFieldProperties = class {
217
230
  } })), ['textbox', 'textarea'].includes(this.type) && (h("div", { class: "row", style: { marginTop: '10px', marginBottom: '10px' } }, h("verdocs-text-input", { id: "verdocs-field-value", label: "Default Value", value: this.defaultValue, autocomplete: "off", placeholder: "Pre-filled value...", onInput: (e) => {
218
231
  this.defaultValue = e.target.value;
219
232
  this.dirty = true;
233
+ } }))), this.type === 'radio' && (h("div", { class: "row" }, h("verdocs-text-input", { id: "verdocs-field-label", label: "Group", value: this.group, autocomplete: "off", helpText: "Enable exclusive selections. Only one option within the same group may be selected at a time.", placeholder: "Group...", onInput: (e) => {
234
+ this.group = (e.target.value || '')
235
+ .trim()
236
+ .toLowerCase()
237
+ .replace(/[^a-z0-9]/g, '');
238
+ this.dirty = true;
220
239
  } }))), ['textbox', 'textarea'].includes(this.type) && (h("div", { class: "row", style: { marginTop: '10px', marginBottom: '10px' } }, h("verdocs-text-input", { id: "verdocs-field-placeholder", label: "Placeholder", value: this.placeholder, autocomplete: "off",
221
240
  // helpText="Placeholder to display if the field is empty."
222
241
  placeholder: "Placeholder...", onInput: (e) => {
@@ -225,29 +244,22 @@ const VerdocsTemplateFieldProperties = class {
225
244
  } }))), h("div", { class: "row", style: { marginTop: '15px', marginBottom: '15px' } }, h("label", { htmlFor: "verdocs-is-required", class: "input-label" }, "Required"), h("verdocs-checkbox", { id: "verdocs-is-required", name: "is-required", checked: this.required, value: "on", onInput: (e) => {
226
245
  this.required = e.target.checked;
227
246
  this.dirty = true;
228
- } })), ['dropdown'].includes(this.type) && (h("div", { class: "options" }, h("div", { class: "row", style: {
229
- marginTop: '15px',
230
- marginBottom: '15px',
231
- textAlign: 'center',
232
- fontWeight: '700',
233
- fontSize: '14px',
234
- justifyContent: 'center',
235
- backgroundColor: '#333333',
236
- padding: '5px 8px',
237
- color: '#ffffff',
238
- } }, "Options"), h("div", { class: "row-header" }, h("h6", null, "ID"), h("h6", null, "Label"), h("div", { style: { width: '34px' } })), this.options.map((option, index) => (h("div", { class: "row option-row", key: index }, h("verdocs-text-input", { id: `verdocs-option-id-${option.id}`, value: option.id, placeholder: "Unique ID", onInput: (e) => {
247
+ } })), this.type === 'textbox' && (h("div", { class: "row", style: { marginTop: '15px', marginBottom: '15px' } }, h("label", { htmlFor: "verdocs-is-multline", class: "input-label" }, "Multi-Line"), h("verdocs-checkbox", { id: "verdocs-is-multiline", name: "is-multiline", checked: this.multiline, value: "on", onInput: (e) => {
248
+ this.multiline = e.target.checked;
249
+ this.dirty = true;
250
+ } }))), this.type === 'dropdown' && (h("div", { class: "row", style: { marginTop: '15px', marginBottom: '15px' } }, h("label", { htmlFor: "verdocs-is-required", class: "input-label" }, "Options"))), this.type === 'dropdown' && (h("div", { class: "options" }, h("div", { class: "options-header" }, h("div", { class: "options-header-label" }, "ID"), h("dev", { class: "options-header-label" }, "Label")), this.options.map((option, index) => (h("div", { class: "row option-row", key: index }, h("verdocs-text-input", { id: `verdocs-option-id-${option.id}`, value: option.id, placeholder: "Unique ID", onInput: (e) => {
239
251
  this.options[index].id = e.target.value;
240
252
  this.dirty = true;
253
+ this.cleanupOptions();
241
254
  } }), h("verdocs-text-input", { id: `verdocs-option-value-${option.id}`, value: option.value, placeholder: "Display value", onInput: (e) => {
242
255
  this.options[index].value = e.target.value;
243
256
  this.dirty = true;
257
+ this.cleanupOptions();
244
258
  } }), h("button", { innerHTML: TrashIcon, class: "remove-button", onClick: () => {
245
259
  this.options = this.options.filter(opt => opt.id !== option.id);
246
260
  this.dirty = true;
247
- } })))), h("div", { class: "row-header" }, h("button", { class: "add-option-button", onClick: () => {
248
- this.options = [...this.options, { id: `option-${this.options.length + 1}`, value: `Option ${this.options.length + 1}` }];
249
- this.dirty = true;
250
- } }, "Add Option")))), h("div", { class: "buttons" }, h("button", { class: "delete-button", disabled: this.dirty, onClick: e => this.handleDelete(e), innerHTML: TrashIcon }), h("div", { style: { flex: '1' } }), h("verdocs-button", { size: "small", variant: "outline", label: "Cancel", disabled: !this.dirty, onClick: e => this.handleCancel(e) }), h("verdocs-button", { size: "small", label: "Save", disabled: !this.dirty, onClick: e => this.handleSave(e) })))));
261
+ this.cleanupOptions();
262
+ } })))))), h("div", { class: "buttons" }, h("button", { class: "delete-button", disabled: this.dirty, onClick: e => this.handleDelete(e), innerHTML: TrashIcon }), h("div", { style: { flex: '1' } }), h("verdocs-button", { size: "small", variant: "outline", label: "Cancel", disabled: !this.dirty, onClick: e => this.handleCancel(e) }), h("verdocs-button", { size: "small", label: "Save", disabled: !this.dirty, onClick: e => this.handleSave(e) })))));
251
263
  }
252
264
  get el() { return getElement(this); }
253
265
  };