@oneblink/sdk 0.4.4-beta.1 → 0.4.4-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +7 -19
  3. package/package.json +48 -40
  4. package/tenants/civicplus.d.ts +1 -0
  5. package/tenants/civicplus.js +26 -0
  6. package/tenants/civicplus.js.map +1 -0
  7. package/tenants/classes/Approvals.d.ts +95 -0
  8. package/tenants/classes/Approvals.js +95 -0
  9. package/tenants/classes/Approvals.js.map +1 -0
  10. package/tenants/classes/DataManager.d.ts +45 -0
  11. package/tenants/classes/DataManager.js +68 -0
  12. package/tenants/classes/DataManager.js.map +1 -0
  13. package/tenants/classes/EmailTemplates.d.ts +100 -0
  14. package/tenants/classes/EmailTemplates.js +128 -0
  15. package/tenants/classes/EmailTemplates.js.map +1 -0
  16. package/tenants/classes/Forms.d.ts +667 -0
  17. package/tenants/classes/Forms.js +859 -0
  18. package/tenants/classes/Forms.js.map +1 -0
  19. package/tenants/classes/FormsAppEnvironments.d.ts +103 -0
  20. package/tenants/classes/FormsAppEnvironments.js +131 -0
  21. package/tenants/classes/FormsAppEnvironments.js.map +1 -0
  22. package/tenants/classes/FormsApps.d.ts +207 -0
  23. package/tenants/classes/FormsApps.js +296 -0
  24. package/tenants/classes/FormsApps.js.map +1 -0
  25. package/tenants/classes/Jobs.d.ts +102 -0
  26. package/tenants/classes/Jobs.js +180 -0
  27. package/tenants/classes/Jobs.js.map +1 -0
  28. package/tenants/classes/Keys.d.ts +33 -0
  29. package/tenants/classes/Keys.js +46 -0
  30. package/tenants/classes/Keys.js.map +1 -0
  31. package/tenants/classes/Organisations.d.ts +50 -0
  32. package/tenants/classes/Organisations.js +73 -0
  33. package/tenants/classes/Organisations.js.map +1 -0
  34. package/tenants/classes/PDF.d.ts +108 -0
  35. package/tenants/classes/PDF.js +133 -0
  36. package/tenants/classes/PDF.js.map +1 -0
  37. package/tenants/classes/TeamMembers.d.ts +34 -0
  38. package/tenants/classes/TeamMembers.js +55 -0
  39. package/tenants/classes/TeamMembers.js.map +1 -0
  40. package/tenants/classes/index.d.ts +13 -0
  41. package/tenants/classes/index.js +33 -0
  42. package/tenants/classes/index.js.map +1 -0
  43. package/tenants/classes/sendEmail.d.ts +36 -0
  44. package/tenants/classes/sendEmail.js +53 -0
  45. package/tenants/classes/sendEmail.js.map +1 -0
  46. package/tenants/lib/forms-schema/common.d.ts +9 -0
  47. package/tenants/lib/forms-schema/common.js +67 -0
  48. package/tenants/lib/forms-schema/common.js.map +1 -0
  49. package/tenants/lib/forms-schema/element-schema.d.ts +3 -0
  50. package/tenants/lib/forms-schema/element-schema.js +230 -0
  51. package/tenants/lib/forms-schema/element-schema.js.map +1 -0
  52. package/tenants/lib/forms-schema/elements/AbnElement.d.ts +4 -0
  53. package/tenants/lib/forms-schema/elements/AbnElement.js +22 -0
  54. package/tenants/lib/forms-schema/elements/AbnElement.js.map +1 -0
  55. package/tenants/lib/forms-schema/elements/AutocompleteElement.d.ts +4 -0
  56. package/tenants/lib/forms-schema/elements/AutocompleteElement.js +30 -0
  57. package/tenants/lib/forms-schema/elements/AutocompleteElement.js.map +1 -0
  58. package/tenants/lib/forms-schema/elements/BarcodeElement.d.ts +4 -0
  59. package/tenants/lib/forms-schema/elements/BarcodeElement.js +30 -0
  60. package/tenants/lib/forms-schema/elements/BarcodeElement.js.map +1 -0
  61. package/tenants/lib/forms-schema/elements/BooleanElement.d.ts +4 -0
  62. package/tenants/lib/forms-schema/elements/BooleanElement.js +22 -0
  63. package/tenants/lib/forms-schema/elements/BooleanElement.js.map +1 -0
  64. package/tenants/lib/forms-schema/elements/BsbElement.d.ts +4 -0
  65. package/tenants/lib/forms-schema/elements/BsbElement.js +22 -0
  66. package/tenants/lib/forms-schema/elements/BsbElement.js.map +1 -0
  67. package/tenants/lib/forms-schema/elements/CalculationElement.d.ts +4 -0
  68. package/tenants/lib/forms-schema/elements/CalculationElement.js +32 -0
  69. package/tenants/lib/forms-schema/elements/CalculationElement.js.map +1 -0
  70. package/tenants/lib/forms-schema/elements/CameraElement.d.ts +4 -0
  71. package/tenants/lib/forms-schema/elements/CameraElement.js +24 -0
  72. package/tenants/lib/forms-schema/elements/CameraElement.js.map +1 -0
  73. package/tenants/lib/forms-schema/elements/CaptchaElement.d.ts +4 -0
  74. package/tenants/lib/forms-schema/elements/CaptchaElement.js +20 -0
  75. package/tenants/lib/forms-schema/elements/CaptchaElement.js.map +1 -0
  76. package/tenants/lib/forms-schema/elements/CheckboxElement.d.ts +4 -0
  77. package/tenants/lib/forms-schema/elements/CheckboxElement.js +25 -0
  78. package/tenants/lib/forms-schema/elements/CheckboxElement.js.map +1 -0
  79. package/tenants/lib/forms-schema/elements/CivicaNameRecordElement.d.ts +4 -0
  80. package/tenants/lib/forms-schema/elements/CivicaNameRecordElement.js +47 -0
  81. package/tenants/lib/forms-schema/elements/CivicaNameRecordElement.js.map +1 -0
  82. package/tenants/lib/forms-schema/elements/CivicaStreetNameElement.d.ts +4 -0
  83. package/tenants/lib/forms-schema/elements/CivicaStreetNameElement.js +22 -0
  84. package/tenants/lib/forms-schema/elements/CivicaStreetNameElement.js.map +1 -0
  85. package/tenants/lib/forms-schema/elements/ComplianceElement.d.ts +4 -0
  86. package/tenants/lib/forms-schema/elements/ComplianceElement.js +24 -0
  87. package/tenants/lib/forms-schema/elements/ComplianceElement.js.map +1 -0
  88. package/tenants/lib/forms-schema/elements/DateElement.d.ts +5 -0
  89. package/tenants/lib/forms-schema/elements/DateElement.js +70 -0
  90. package/tenants/lib/forms-schema/elements/DateElement.js.map +1 -0
  91. package/tenants/lib/forms-schema/elements/DrawElement.d.ts +4 -0
  92. package/tenants/lib/forms-schema/elements/DrawElement.js +23 -0
  93. package/tenants/lib/forms-schema/elements/DrawElement.js.map +1 -0
  94. package/tenants/lib/forms-schema/elements/EmailElement.d.ts +4 -0
  95. package/tenants/lib/forms-schema/elements/EmailElement.js +24 -0
  96. package/tenants/lib/forms-schema/elements/EmailElement.js.map +1 -0
  97. package/tenants/lib/forms-schema/elements/FilesElement.d.ts +4 -0
  98. package/tenants/lib/forms-schema/elements/FilesElement.js +36 -0
  99. package/tenants/lib/forms-schema/elements/FilesElement.js.map +1 -0
  100. package/tenants/lib/forms-schema/elements/FormElement.d.ts +4 -0
  101. package/tenants/lib/forms-schema/elements/FormElement.js +17 -0
  102. package/tenants/lib/forms-schema/elements/FormElement.js.map +1 -0
  103. package/tenants/lib/forms-schema/elements/FreshdeskDependentFieldElement.d.ts +4 -0
  104. package/tenants/lib/forms-schema/elements/FreshdeskDependentFieldElement.js +31 -0
  105. package/tenants/lib/forms-schema/elements/FreshdeskDependentFieldElement.js.map +1 -0
  106. package/tenants/lib/forms-schema/elements/GeoscapeElement.d.ts +4 -0
  107. package/tenants/lib/forms-schema/elements/GeoscapeElement.js +23 -0
  108. package/tenants/lib/forms-schema/elements/GeoscapeElement.js.map +1 -0
  109. package/tenants/lib/forms-schema/elements/HTMLElement.d.ts +4 -0
  110. package/tenants/lib/forms-schema/elements/HTMLElement.js +22 -0
  111. package/tenants/lib/forms-schema/elements/HTMLElement.js.map +1 -0
  112. package/tenants/lib/forms-schema/elements/HeadingElement.d.ts +4 -0
  113. package/tenants/lib/forms-schema/elements/HeadingElement.js +18 -0
  114. package/tenants/lib/forms-schema/elements/HeadingElement.js.map +1 -0
  115. package/tenants/lib/forms-schema/elements/ImageElement.d.ts +4 -0
  116. package/tenants/lib/forms-schema/elements/ImageElement.js +18 -0
  117. package/tenants/lib/forms-schema/elements/ImageElement.js.map +1 -0
  118. package/tenants/lib/forms-schema/elements/InfoPageElement.d.ts +4 -0
  119. package/tenants/lib/forms-schema/elements/InfoPageElement.js +17 -0
  120. package/tenants/lib/forms-schema/elements/InfoPageElement.js.map +1 -0
  121. package/tenants/lib/forms-schema/elements/LocationElement.d.ts +4 -0
  122. package/tenants/lib/forms-schema/elements/LocationElement.js +21 -0
  123. package/tenants/lib/forms-schema/elements/LocationElement.js.map +1 -0
  124. package/tenants/lib/forms-schema/elements/NumberElement.d.ts +4 -0
  125. package/tenants/lib/forms-schema/elements/NumberElement.js +95 -0
  126. package/tenants/lib/forms-schema/elements/NumberElement.js.map +1 -0
  127. package/tenants/lib/forms-schema/elements/PhoneElement.d.ts +4 -0
  128. package/tenants/lib/forms-schema/elements/PhoneElement.js +24 -0
  129. package/tenants/lib/forms-schema/elements/PhoneElement.js.map +1 -0
  130. package/tenants/lib/forms-schema/elements/PointElement.d.ts +4 -0
  131. package/tenants/lib/forms-schema/elements/PointElement.js +24 -0
  132. package/tenants/lib/forms-schema/elements/PointElement.js.map +1 -0
  133. package/tenants/lib/forms-schema/elements/RadioElement.d.ts +4 -0
  134. package/tenants/lib/forms-schema/elements/RadioElement.js +24 -0
  135. package/tenants/lib/forms-schema/elements/RadioElement.js.map +1 -0
  136. package/tenants/lib/forms-schema/elements/RepeatableSetElement.d.ts +4 -0
  137. package/tenants/lib/forms-schema/elements/RepeatableSetElement.js +44 -0
  138. package/tenants/lib/forms-schema/elements/RepeatableSetElement.js.map +1 -0
  139. package/tenants/lib/forms-schema/elements/SectionElement.d.ts +4 -0
  140. package/tenants/lib/forms-schema/elements/SectionElement.js +34 -0
  141. package/tenants/lib/forms-schema/elements/SectionElement.js.map +1 -0
  142. package/tenants/lib/forms-schema/elements/SelectElement.d.ts +4 -0
  143. package/tenants/lib/forms-schema/elements/SelectElement.js +34 -0
  144. package/tenants/lib/forms-schema/elements/SelectElement.js.map +1 -0
  145. package/tenants/lib/forms-schema/elements/SummaryElement.d.ts +4 -0
  146. package/tenants/lib/forms-schema/elements/SummaryElement.js +22 -0
  147. package/tenants/lib/forms-schema/elements/SummaryElement.js.map +1 -0
  148. package/tenants/lib/forms-schema/elements/TextElement.d.ts +5 -0
  149. package/tenants/lib/forms-schema/elements/TextElement.js +45 -0
  150. package/tenants/lib/forms-schema/elements/TextElement.js.map +1 -0
  151. package/tenants/lib/forms-schema/elements/TimeElement.d.ts +4 -0
  152. package/tenants/lib/forms-schema/elements/TimeElement.js +23 -0
  153. package/tenants/lib/forms-schema/elements/TimeElement.js.map +1 -0
  154. package/tenants/lib/forms-schema/index.d.ts +15 -0
  155. package/tenants/lib/forms-schema/index.js +441 -0
  156. package/tenants/lib/forms-schema/index.js.map +1 -0
  157. package/tenants/lib/forms-schema/property-schemas.d.ts +53 -0
  158. package/tenants/lib/forms-schema/property-schemas.js +239 -0
  159. package/tenants/lib/forms-schema/property-schemas.js.map +1 -0
  160. package/tenants/lib/forms-validation/common.d.ts +5 -0
  161. package/tenants/lib/forms-validation/common.js +50 -0
  162. package/tenants/lib/forms-validation/common.js.map +1 -0
  163. package/tenants/lib/forms-validation/index.d.ts +8 -0
  164. package/tenants/lib/forms-validation/index.js +165 -0
  165. package/tenants/lib/forms-validation/index.js.map +1 -0
  166. package/tenants/lib/forms-validation/validate-form-events.d.ts +16 -0
  167. package/tenants/lib/forms-validation/validate-form-events.js +164 -0
  168. package/tenants/lib/forms-validation/validate-form-events.js.map +1 -0
  169. package/tenants/lib/generate-form-element.d.ts +2 -0
  170. package/tenants/lib/generate-form-element.js +49 -0
  171. package/tenants/lib/generate-form-element.js.map +1 -0
  172. package/tenants/lib/generate-form-url.d.ts +9 -0
  173. package/tenants/lib/generate-form-url.js +32 -0
  174. package/tenants/lib/generate-form-url.js.map +1 -0
  175. package/tenants/lib/generate-jwt.d.ts +1 -0
  176. package/tenants/lib/generate-jwt.js +15 -0
  177. package/tenants/lib/generate-jwt.js.map +1 -0
  178. package/tenants/lib/generate-page-element.d.ts +2 -0
  179. package/tenants/lib/generate-page-element.js +32 -0
  180. package/tenants/lib/generate-page-element.js.map +1 -0
  181. package/tenants/lib/generate-tenant.d.ts +2 -0
  182. package/tenants/lib/generate-tenant.js +13 -0
  183. package/tenants/lib/generate-tenant.js.map +1 -0
  184. package/tenants/lib/one-blink-api.d.ts +37 -0
  185. package/tenants/lib/one-blink-api.js +122 -0
  186. package/tenants/lib/one-blink-api.js.map +1 -0
  187. package/tenants/lib/package.d.ts +2 -0
  188. package/tenants/lib/package.js +6 -0
  189. package/tenants/lib/package.js.map +1 -0
  190. package/tenants/lib/pre-fill-data.d.ts +2 -0
  191. package/tenants/lib/pre-fill-data.js +29 -0
  192. package/tenants/lib/pre-fill-data.js.map +1 -0
  193. package/tenants/lib/retrieve-submission-data.d.ts +2 -0
  194. package/tenants/lib/retrieve-submission-data.js +26 -0
  195. package/tenants/lib/retrieve-submission-data.js.map +1 -0
  196. package/tenants/lib/tenant-configuration.d.ts +3 -0
  197. package/tenants/lib/tenant-configuration.js +22 -0
  198. package/tenants/lib/tenant-configuration.js.map +1 -0
  199. package/tenants/lib/upload-asset.d.ts +4 -0
  200. package/tenants/lib/upload-asset.js +30 -0
  201. package/tenants/lib/upload-asset.js.map +1 -0
  202. package/tenants/lib/user-token-helpers.d.ts +9 -0
  203. package/tenants/lib/user-token-helpers.js +34 -0
  204. package/tenants/lib/user-token-helpers.js.map +1 -0
  205. package/tenants/oneblink.d.ts +1 -0
  206. package/tenants/oneblink.js +26 -0
  207. package/tenants/oneblink.js.map +1 -0
  208. package/tenants/types.d.ts +304 -0
  209. package/tenants/types.js +18 -0
  210. package/tenants/types.js.map +1 -0
  211. package/changelog.md +0 -201
  212. package/classes/Forms.js +0 -244
  213. package/classes/FormsApps.js +0 -98
  214. package/classes/Jobs.js +0 -133
  215. package/classes/Keys.js +0 -23
  216. package/classes/Organisations.js +0 -25
  217. package/classes/TeamMembers.js +0 -34
  218. package/flow-typed/npm/axios_v0.18.x.js +0 -165
  219. package/flow-typed/npm/jest_v24.x.x.js +0 -1186
  220. package/flow-typed/types.js +0 -301
  221. package/index.js +0 -18
  222. package/lib/forms-schema.js +0 -859
  223. package/lib/forms-validation.js +0 -33
  224. package/lib/generate-form-element.js +0 -75
  225. package/lib/generate-form-url.js +0 -29
  226. package/lib/generate-jwt.js +0 -18
  227. package/lib/one-blink-api-error-handler.js +0 -31
  228. package/lib/one-blink-api.js +0 -107
  229. package/lib/pre-fill-data.js +0 -33
  230. package/lib/retrieve-submission-data.js +0 -29
  231. package/lib/tenant.js +0 -23
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateFormEvent = void 0;
4
+ const sdk_core_1 = require("@oneblink/sdk-core");
5
+ const validateFormEvents = ({ rootFormElements, validatedFormElements, propertyName, formEvents, }) => {
6
+ for (let formEventIndex = 0; formEventIndex < formEvents.length; formEventIndex++) {
7
+ const formEvent = formEvents[formEventIndex];
8
+ (0, exports.validateFormEvent)({
9
+ formEvent,
10
+ propertyName: `${propertyName}[${formEventIndex}]`,
11
+ rootFormElements,
12
+ validatedFormElements,
13
+ });
14
+ }
15
+ };
16
+ exports.default = validateFormEvents;
17
+ const validateFormEvent = ({ formEvent, rootFormElements, validatedFormElements, propertyName, }) => {
18
+ // CHECK ANY CONDITIONAL ELEMENT IDS ARE IN THE FORM
19
+ if (formEvent.conditionallyExecutePredicates &&
20
+ formEvent.conditionallyExecute) {
21
+ for (let conditionallyExecutePredicateIndex = 0; conditionallyExecutePredicateIndex <
22
+ formEvent.conditionallyExecutePredicates.length; conditionallyExecutePredicateIndex++) {
23
+ const conditionallyExecutePredicate = formEvent.conditionallyExecutePredicates[conditionallyExecutePredicateIndex];
24
+ if (!rootFormElements.some(({ id }) => id === conditionallyExecutePredicate.elementId)) {
25
+ throw new Error(`"${propertyName}.conditionallyExecutePredicates[${conditionallyExecutePredicateIndex}].elementId" (${conditionallyExecutePredicate.elementId}) does not exist in "elements"`);
26
+ }
27
+ }
28
+ }
29
+ switch (formEvent.type) {
30
+ case 'CP_PAY':
31
+ case 'WESTPAC_QUICK_WEB':
32
+ case 'BPOINT': {
33
+ const formElement = rootFormElements.find(({ id }) => id === formEvent.configuration.elementId);
34
+ if (!formElement) {
35
+ throw new Error(`"${propertyName}.configuration.elementId" (${formEvent.configuration.elementId}) does not exist in "elements"`);
36
+ }
37
+ if (formElement.type !== 'number' && formElement.type !== 'calculation') {
38
+ throw new Error(`"${propertyName}.configuration.elementId" (${formEvent.configuration.elementId}) references a form element that is not a "number" or "calculation" element.`);
39
+ }
40
+ break;
41
+ }
42
+ case 'SCHEDULING': {
43
+ const nameElementId = formEvent.configuration.nameElementId;
44
+ if (nameElementId) {
45
+ const formElement = rootFormElements.find(({ id }) => id === nameElementId);
46
+ if (!formElement) {
47
+ throw new Error(`"${propertyName}.configuration.nameElementId" (${nameElementId}) does not exist in "elements"`);
48
+ }
49
+ if (formElement.type !== 'text') {
50
+ throw new Error(`"${propertyName}.configuration.nameElementId" (${nameElementId}) references a form element that is not a "text" element.`);
51
+ }
52
+ }
53
+ const emailElementId = formEvent.configuration.emailElementId;
54
+ if (emailElementId) {
55
+ const formElement = rootFormElements.find(({ id }) => id === emailElementId);
56
+ if (!formElement) {
57
+ throw new Error(`"${propertyName}.configuration.emailElementId" (${emailElementId}) does not exist in "elements"`);
58
+ }
59
+ if (formElement.type !== 'email') {
60
+ throw new Error(`"${propertyName}.configuration.emailElementId" (${emailElementId}) references a form element that is not an "email" element.`);
61
+ }
62
+ }
63
+ break;
64
+ }
65
+ case 'CIVICA_CRM': {
66
+ for (let mappingIndex = 0; mappingIndex < formEvent.configuration.mapping.length; mappingIndex++) {
67
+ const { formElementId } = formEvent.configuration.mapping[mappingIndex];
68
+ if (!rootFormElements.some(({ id }) => id === formElementId)) {
69
+ throw new Error(`"${propertyName}.configuration.mapping[${mappingIndex}].formElementId" (${formElementId}) does not exist in "elements"`);
70
+ }
71
+ }
72
+ break;
73
+ }
74
+ case 'CP_HCMS': {
75
+ if (formEvent.configuration.encryptedElementIds) {
76
+ for (const elementId of formEvent.configuration.encryptedElementIds) {
77
+ const element = sdk_core_1.formElementsService.findFormElement(validatedFormElements, ({ id }) => id === elementId);
78
+ if (!element) {
79
+ throw new Error(`You tried to reference an element ${elementId} that does not exist on the form, in a ${formEvent.type} form event.`);
80
+ }
81
+ const allowedElementTypes = [
82
+ 'text',
83
+ 'email',
84
+ 'telephone',
85
+ 'barcodeScanner',
86
+ 'radio',
87
+ 'autocomplete',
88
+ 'camera',
89
+ 'draw',
90
+ 'files',
91
+ 'file',
92
+ 'select',
93
+ ];
94
+ if (!allowedElementTypes.some((elementType) => elementType === element.type) ||
95
+ (element.type === 'select' && element.multi)) {
96
+ throw new Error('Encrypted element is not an allowed type');
97
+ }
98
+ }
99
+ }
100
+ break;
101
+ }
102
+ case 'PDF': {
103
+ validateEmailTemplateMappingElements({
104
+ formEvent,
105
+ validatedFormElements,
106
+ propertyName,
107
+ });
108
+ if (formEvent.configuration.excludedElementIds) {
109
+ for (const elementId of formEvent.configuration.excludedElementIds) {
110
+ const element = sdk_core_1.formElementsService.findFormElement(validatedFormElements, ({ id }) => id === elementId);
111
+ if (!element) {
112
+ throw new Error(`You tried to reference an element ${elementId} that does not exist on the form, in a ${formEvent.type} form event.`);
113
+ }
114
+ }
115
+ }
116
+ break;
117
+ }
118
+ case 'EMAIL': {
119
+ validateEmailTemplateMappingElements({
120
+ formEvent,
121
+ validatedFormElements,
122
+ propertyName,
123
+ });
124
+ break;
125
+ }
126
+ case 'FRESHDESK_CREATE_TICKET': {
127
+ validateFreshdeskCreateTicketMappingElements({
128
+ formEvent,
129
+ validatedFormElements,
130
+ propertyName,
131
+ });
132
+ break;
133
+ }
134
+ default: {
135
+ break;
136
+ }
137
+ }
138
+ };
139
+ exports.validateFormEvent = validateFormEvent;
140
+ function validateEmailTemplateMappingElements({ formEvent, validatedFormElements, propertyName, }) {
141
+ if (formEvent.configuration.emailTemplate) {
142
+ for (let mappingIndex = 0; mappingIndex < formEvent.configuration.emailTemplate.mapping.length; mappingIndex++) {
143
+ const mapping = formEvent.configuration.emailTemplate.mapping[mappingIndex];
144
+ if (mapping.type === 'FORM_ELEMENT') {
145
+ const element = sdk_core_1.formElementsService.findFormElement(validatedFormElements, ({ id }) => id === mapping.formElementId);
146
+ if (!element) {
147
+ throw new Error(`"${propertyName}.configuration.mapping[${mappingIndex}].formElementId" (${mapping.formElementId}) does not exist in "elements".`);
148
+ }
149
+ }
150
+ }
151
+ }
152
+ }
153
+ function validateFreshdeskCreateTicketMappingElements({ formEvent, validatedFormElements, propertyName, }) {
154
+ for (let mappingIndex = 0; mappingIndex < formEvent.configuration.mapping.length; mappingIndex++) {
155
+ const mapping = formEvent.configuration.mapping[mappingIndex];
156
+ if (mapping.type === 'FORM_ELEMENT') {
157
+ const element = sdk_core_1.formElementsService.findFormElement(validatedFormElements, ({ id }) => id === mapping.formElementId);
158
+ if (!element) {
159
+ throw new Error(`"${propertyName}.configuration.mapping[${mappingIndex}].formElementId" (${mapping.formElementId}) does not exist in "elements".`);
160
+ }
161
+ }
162
+ }
163
+ }
164
+ //# sourceMappingURL=validate-form-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-form-events.js","sourceRoot":"","sources":["../../../src/lib/forms-validation/validate-form-events.ts"],"names":[],"mappings":";;;AAAA,iDAAwD;AAQxD,MAAM,kBAAkB,GAAG,CAAC,EAC1B,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,UAAU,GAGX,EAAE,EAAE;IACH,KACE,IAAI,cAAc,GAAG,CAAC,EACtB,cAAc,GAAG,UAAU,CAAC,MAAM,EAClC,cAAc,EAAE,EAChB;QACA,MAAM,SAAS,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;QAC5C,IAAA,yBAAiB,EAAC;YAChB,SAAS;YACT,YAAY,EAAE,GAAG,YAAY,IAAI,cAAc,GAAG;YAClD,gBAAgB;YAChB,qBAAqB;SACtB,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AACD,kBAAe,kBAAkB,CAAA;AAE1B,MAAM,iBAAiB,GAAG,CAAC,EAChC,SAAS,EACT,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,GAMb,EAAE,EAAE;IACH,oDAAoD;IACpD,IACE,SAAS,CAAC,8BAA8B;QACxC,SAAS,CAAC,oBAAoB,EAC9B;QACA,KACE,IAAI,kCAAkC,GAAG,CAAC,EAC1C,kCAAkC;YAClC,SAAS,CAAC,8BAA8B,CAAC,MAAM,EAC/C,kCAAkC,EAAE,EACpC;YACA,MAAM,6BAA6B,GACjC,SAAS,CAAC,8BAA8B,CACtC,kCAAkC,CACnC,CAAA;YACH,IACE,CAAC,gBAAgB,CAAC,IAAI,CACpB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,6BAA6B,CAAC,SAAS,CAC3D,EACD;gBACA,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,mCAAmC,kCAAkC,iBAAiB,6BAA6B,CAAC,SAAS,gCAAgC,CAC9K,CAAA;aACF;SACF;KACF;IAED,QAAQ,SAAS,CAAC,IAAI,EAAE;QACtB,KAAK,QAAQ,CAAC;QACd,KAAK,mBAAmB,CAAC;QACzB,KAAK,QAAQ,CAAC,CAAC;YACb,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CACvC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,aAAa,CAAC,SAAS,CACrD,CAAA;YACD,IAAI,CAAC,WAAW,EAAE;gBAChB,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,8BAA8B,SAAS,CAAC,aAAa,CAAC,SAAS,gCAAgC,CAChH,CAAA;aACF;YACD,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,KAAK,aAAa,EAAE;gBACvE,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,8BAA8B,SAAS,CAAC,aAAa,CAAC,SAAS,8EAA8E,CAC9J,CAAA;aACF;YACD,MAAK;SACN;QACD,KAAK,YAAY,CAAC,CAAC;YACjB,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC,aAAa,CAAA;YAC3D,IAAI,aAAa,EAAE;gBACjB,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CACvC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,aAAa,CACjC,CAAA;gBACD,IAAI,CAAC,WAAW,EAAE;oBAChB,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,kCAAkC,aAAa,gCAAgC,CAChG,CAAA;iBACF;gBACD,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE;oBAC/B,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,kCAAkC,aAAa,2DAA2D,CAC3H,CAAA;iBACF;aACF;YACD,MAAM,cAAc,GAAG,SAAS,CAAC,aAAa,CAAC,cAAc,CAAA;YAC7D,IAAI,cAAc,EAAE;gBAClB,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CACvC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,cAAc,CAClC,CAAA;gBACD,IAAI,CAAC,WAAW,EAAE;oBAChB,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,mCAAmC,cAAc,gCAAgC,CAClG,CAAA;iBACF;gBACD,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE;oBAChC,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,mCAAmC,cAAc,6DAA6D,CAC/H,CAAA;iBACF;aACF;YACD,MAAK;SACN;QACD,KAAK,YAAY,CAAC,CAAC;YACjB,KACE,IAAI,YAAY,GAAG,CAAC,EACpB,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EACrD,YAAY,EAAE,EACd;gBACA,MAAM,EAAE,aAAa,EAAE,GAAG,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;gBACvE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE;oBAC5D,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,0BAA0B,YAAY,qBAAqB,aAAa,gCAAgC,CACzH,CAAA;iBACF;aACF;YACD,MAAK;SACN;QACD,KAAK,SAAS,CAAC,CAAC;YACd,IAAI,SAAS,CAAC,aAAa,CAAC,mBAAmB,EAAE;gBAC/C,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,aAAa,CAAC,mBAAmB,EAAE;oBACnE,MAAM,OAAO,GAAG,8BAAmB,CAAC,eAAe,CACjD,qBAAqB,EACrB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAC7B,CAAA;oBACD,IAAI,CAAC,OAAO,EAAE;wBACZ,MAAM,IAAI,KAAK,CACb,qCAAqC,SAAS,0CAA0C,SAAS,CAAC,IAAI,cAAc,CACrH,CAAA;qBACF;oBACD,MAAM,mBAAmB,GAAG;wBAC1B,MAAM;wBACN,OAAO;wBACP,WAAW;wBACX,gBAAgB;wBAChB,OAAO;wBACP,cAAc;wBACd,QAAQ;wBACR,MAAM;wBACN,OAAO;wBACP,MAAM;wBACN,QAAQ;qBACT,CAAA;oBACD,IACE,CAAC,mBAAmB,CAAC,IAAI,CACvB,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,KAAK,OAAO,CAAC,IAAI,CAC9C;wBACD,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAC5C;wBACA,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;qBAC5D;iBACF;aACF;YACD,MAAK;SACN;QACD,KAAK,KAAK,CAAC,CAAC;YACV,oCAAoC,CAAC;gBACnC,SAAS;gBACT,qBAAqB;gBACrB,YAAY;aACb,CAAC,CAAA;YACF,IAAI,SAAS,CAAC,aAAa,CAAC,kBAAkB,EAAE;gBAC9C,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,aAAa,CAAC,kBAAkB,EAAE;oBAClE,MAAM,OAAO,GAAG,8BAAmB,CAAC,eAAe,CACjD,qBAAqB,EACrB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAC7B,CAAA;oBACD,IAAI,CAAC,OAAO,EAAE;wBACZ,MAAM,IAAI,KAAK,CACb,qCAAqC,SAAS,0CAA0C,SAAS,CAAC,IAAI,cAAc,CACrH,CAAA;qBACF;iBACF;aACF;YACD,MAAK;SACN;QACD,KAAK,OAAO,CAAC,CAAC;YACZ,oCAAoC,CAAC;gBACnC,SAAS;gBACT,qBAAqB;gBACrB,YAAY;aACb,CAAC,CAAA;YACF,MAAK;SACN;QACD,KAAK,yBAAyB,CAAC,CAAC;YAC9B,4CAA4C,CAAC;gBAC3C,SAAS;gBACT,qBAAqB;gBACrB,YAAY;aACb,CAAC,CAAA;YACF,MAAK;SACN;QACD,OAAO,CAAC,CAAC;YACP,MAAK;SACN;KACF;AACH,CAAC,CAAA;AAzLY,QAAA,iBAAiB,qBAyL7B;AAED,SAAS,oCAAoC,CAAC,EAC5C,SAAS,EACT,qBAAqB,EACrB,YAAY,GAOb;IACC,IAAI,SAAS,CAAC,aAAa,CAAC,aAAa,EAAE;QACzC,KACE,IAAI,YAAY,GAAG,CAAC,EACpB,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EACnE,YAAY,EAAE,EACd;YACA,MAAM,OAAO,GACX,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;YAE7D,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE;gBACnC,MAAM,OAAO,GAAG,8BAAmB,CAAC,eAAe,CACjD,qBAAqB,EACrB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,aAAa,CACzC,CAAA;gBACD,IAAI,CAAC,OAAO,EAAE;oBACZ,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,0BAA0B,YAAY,qBAAqB,OAAO,CAAC,aAAa,iCAAiC,CAClI,CAAA;iBACF;aACF;SACF;KACF;AACH,CAAC;AAED,SAAS,4CAA4C,CAAC,EACpD,SAAS,EACT,qBAAqB,EACrB,YAAY,GAKb;IACC,KACE,IAAI,YAAY,GAAG,CAAC,EACpB,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EACrD,YAAY,EAAE,EACd;QACA,MAAM,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QAC7D,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE;YACnC,MAAM,OAAO,GAAG,8BAAmB,CAAC,eAAe,CACjD,qBAAqB,EACrB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,aAAa,CACzC,CAAA;YACD,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CACb,IAAI,YAAY,0BAA0B,YAAY,qBAAqB,OAAO,CAAC,aAAa,iCAAiC,CAClI,CAAA;aACF;SACF;KACF;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { FormTypes } from '@oneblink/types';
2
+ export default function generateFormElement<T extends FormTypes._FormElementBase>(formElementGenerationData?: Record<string, unknown>): T;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const uuid_1 = require("uuid");
4
+ const forms_validation_1 = require("./forms-validation");
5
+ function generateFormElement(formElementGenerationData) {
6
+ if (!formElementGenerationData) {
7
+ throw new Error('no form element generation data provided, please provide this data to generate a form element');
8
+ }
9
+ // initialise empty element object and spread data passed by user
10
+ const formElement = { ...formElementGenerationData };
11
+ // element property: id
12
+ if (typeof formElement.id !== 'string') {
13
+ formElement.id = (0, uuid_1.v4)();
14
+ }
15
+ // element property: options
16
+ if (Array.isArray(formElementGenerationData.options)) {
17
+ const options = formElementGenerationData.options.map((o, index) => {
18
+ const option = o || {};
19
+ return {
20
+ ...option,
21
+ id: (0, uuid_1.v4)(),
22
+ label: option.label || option.value || `Option ${index + 1}`,
23
+ value: option.value || index.toString(),
24
+ };
25
+ });
26
+ formElement.options = options;
27
+ }
28
+ // element property: type || default to: 'text'
29
+ if (typeof formElementGenerationData.type !== 'string') {
30
+ formElement.type = 'text';
31
+ }
32
+ // element property: label || default to: {type}
33
+ let label = '';
34
+ if (typeof formElementGenerationData.label === 'string') {
35
+ label = formElementGenerationData.label;
36
+ }
37
+ else if (typeof formElement.type === 'string') {
38
+ label = formElement.type;
39
+ }
40
+ // element property: name || default to: {label(without spaces)}
41
+ if (typeof formElementGenerationData.name !== 'string') {
42
+ formElement.name = label.replace(/\s+/g, '_');
43
+ }
44
+ formElement.label = label;
45
+ const validatedFormElement = (0, forms_validation_1.validateWithElementSchema)(formElement);
46
+ return validatedFormElement;
47
+ }
48
+ exports.default = generateFormElement;
49
+ //# sourceMappingURL=generate-form-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-form-element.js","sourceRoot":"","sources":["../../src/lib/generate-form-element.ts"],"names":[],"mappings":";;AACA,+BAAiC;AAEjC,yDAA8D;AAE9D,SAAwB,mBAAmB,CAEzC,yBAAmD;IACnD,IAAI,CAAC,yBAAyB,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAA;KACF;IAED,iEAAiE;IACjE,MAAM,WAAW,GAA4B,EAAE,GAAG,yBAAyB,EAAE,CAAA;IAE7E,uBAAuB;IACvB,IAAI,OAAO,WAAW,CAAC,EAAE,KAAK,QAAQ,EAAE;QACtC,WAAW,CAAC,EAAE,GAAG,IAAA,SAAI,GAAE,CAAA;KACxB;IAED,4BAA4B;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE;QACpD,MAAM,OAAO,GAAG,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACjE,MAAM,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;YACtB,OAAO;gBACL,GAAG,MAAM;gBACT,EAAE,EAAE,IAAA,SAAI,GAAE;gBACV,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,UAAU,KAAK,GAAG,CAAC,EAAE;gBAC5D,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE;aACxC,CAAA;QACH,CAAC,CAAC,CAAA;QACF,WAAW,CAAC,OAAO,GAAG,OAAO,CAAA;KAC9B;IAED,+CAA+C;IAC/C,IAAI,OAAO,yBAAyB,CAAC,IAAI,KAAK,QAAQ,EAAE;QACtD,WAAW,CAAC,IAAI,GAAG,MAAM,CAAA;KAC1B;IAED,gDAAgD;IAChD,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,OAAO,yBAAyB,CAAC,KAAK,KAAK,QAAQ,EAAE;QACvD,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAA;KACxC;SAAM,IAAI,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC/C,KAAK,GAAG,WAAW,CAAC,IAAI,CAAA;KACzB;IAED,gEAAgE;IAChE,IAAI,OAAO,yBAAyB,CAAC,IAAI,KAAK,QAAQ,EAAE;QACtD,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAC9C;IACD,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IAEzB,MAAM,oBAAoB,GAAG,IAAA,4CAAyB,EAAI,WAAW,CAAC,CAAA;IACtE,OAAO,oBAAoB,CAAA;AAC7B,CAAC;AApDD,sCAoDC"}
@@ -0,0 +1,9 @@
1
+ export default function generateFormUrl({ formId, token, externalId, preFillFormDataId, endpoint, userToken, previousFormSubmissionApprovalId, }: {
2
+ endpoint: string;
3
+ formId: number;
4
+ token: string;
5
+ externalId?: unknown;
6
+ preFillFormDataId?: string;
7
+ userToken?: string;
8
+ previousFormSubmissionApprovalId?: string;
9
+ }): string;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const querystring_1 = __importDefault(require("querystring"));
7
+ function generateFormUrl({ formId, token, externalId, preFillFormDataId, endpoint, userToken, previousFormSubmissionApprovalId, }) {
8
+ if (!formId) {
9
+ throw new Error('no form id provided, please provide a form id to generate a url');
10
+ }
11
+ let searchParams = {
12
+ access_key: token,
13
+ };
14
+ if (externalId) {
15
+ searchParams = Object.assign({}, searchParams, { externalId });
16
+ }
17
+ if (preFillFormDataId) {
18
+ searchParams = Object.assign({}, searchParams, { preFillFormDataId });
19
+ }
20
+ if (userToken) {
21
+ searchParams = Object.assign({}, searchParams, { userToken });
22
+ }
23
+ if (previousFormSubmissionApprovalId) {
24
+ searchParams = Object.assign({}, searchParams, {
25
+ previousFormSubmissionApprovalId,
26
+ });
27
+ }
28
+ const search = querystring_1.default.stringify(searchParams);
29
+ return `${endpoint}/${formId}?${search}`;
30
+ }
31
+ exports.default = generateFormUrl;
32
+ //# sourceMappingURL=generate-form-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-form-url.js","sourceRoot":"","sources":["../../src/lib/generate-form-url.ts"],"names":[],"mappings":";;;;;AAAA,8DAAqC;AAErC,SAAwB,eAAe,CAAC,EACtC,MAAM,EACN,KAAK,EACL,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,gCAAgC,GASjC;IACC,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAA;KACF;IACD,IAAI,YAAY,GAAG;QACjB,UAAU,EAAE,KAAK;KAClB,CAAA;IACD,IAAI,UAAU,EAAE;QACd,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;KAC/D;IACD,IAAI,iBAAiB,EAAE;QACrB,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAA;KACtE;IACD,IAAI,SAAS,EAAE;QACb,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;KAC9D;IACD,IAAI,gCAAgC,EAAE;QACpC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE;YAC7C,gCAAgC;SACjC,CAAC,CAAA;KACH;IACD,MAAM,MAAM,GAAG,qBAAW,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;IAElD,OAAO,GAAG,QAAQ,IAAI,MAAM,IAAI,MAAM,EAAE,CAAA;AAC1C,CAAC;AA1CD,kCA0CC"}
@@ -0,0 +1 @@
1
+ export default function generateJWT(accessKey: string, secretKey: string, expiresInSeconds: number): string;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
7
+ function generateJWT(accessKey, secretKey, expiresInSeconds) {
8
+ return jsonwebtoken_1.default.sign({
9
+ iss: accessKey,
10
+ }, secretKey, {
11
+ expiresIn: expiresInSeconds,
12
+ });
13
+ }
14
+ exports.default = generateJWT;
15
+ //# sourceMappingURL=generate-jwt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-jwt.js","sourceRoot":"","sources":["../../src/lib/generate-jwt.ts"],"names":[],"mappings":";;;;;AAAA,gEAA8B;AAE9B,SAAwB,WAAW,CACjC,SAAiB,EACjB,SAAiB,EACjB,gBAAwB;IAExB,OAAO,sBAAG,CAAC,IAAI,CACb;QACE,GAAG,EAAE,SAAS;KACf,EACD,SAAS,EACT;QACE,SAAS,EAAE,gBAAgB;KAC5B,CACF,CAAA;AACH,CAAC;AAdD,8BAcC"}
@@ -0,0 +1,2 @@
1
+ import { FormTypes } from '@oneblink/types';
2
+ export default function generatePageElement(formElementGenerationData?: Record<string, unknown>): FormTypes.PageElement;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const uuid_1 = require("uuid");
7
+ const forms_validation_1 = require("./forms-validation");
8
+ const generate_form_element_1 = __importDefault(require("./generate-form-element"));
9
+ function generatePageElement(formElementGenerationData) {
10
+ if (!formElementGenerationData) {
11
+ throw new Error('no page element generation data provided, please provide this data to generate a page element');
12
+ }
13
+ const formElement = {
14
+ ...formElementGenerationData,
15
+ type: 'page',
16
+ };
17
+ // element property: id
18
+ if (typeof formElementGenerationData.id !== 'string') {
19
+ formElement.id = (0, uuid_1.v4)();
20
+ }
21
+ // element property: label || default to: {type}
22
+ if (typeof formElementGenerationData.label !== 'string') {
23
+ formElement.label = formElement.type;
24
+ }
25
+ if (!Array.isArray(formElement.elements)) {
26
+ formElement.elements = [(0, generate_form_element_1.default)({})];
27
+ }
28
+ const element = (0, forms_validation_1.validateWithPageElementSchema)(formElement);
29
+ return element;
30
+ }
31
+ exports.default = generatePageElement;
32
+ //# sourceMappingURL=generate-page-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-page-element.js","sourceRoot":"","sources":["../../src/lib/generate-page-element.ts"],"names":[],"mappings":";;;;;AACA,+BAAiC;AACjC,yDAAkE;AAClE,oFAAyD;AAEzD,SAAwB,mBAAmB,CACzC,yBAAmD;IAEnD,IAAI,CAAC,yBAAyB,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAA;KACF;IACD,MAAM,WAAW,GAA4B;QAC3C,GAAG,yBAAyB;QAC5B,IAAI,EAAE,MAAM;KACb,CAAA;IAED,uBAAuB;IACvB,IAAI,OAAO,yBAAyB,CAAC,EAAE,KAAK,QAAQ,EAAE;QACpD,WAAW,CAAC,EAAE,GAAG,IAAA,SAAI,GAAE,CAAA;KACxB;IACD,gDAAgD;IAChD,IAAI,OAAO,yBAAyB,CAAC,KAAK,KAAK,QAAQ,EAAE;QACvD,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAA;KACrC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;QACxC,WAAW,CAAC,QAAQ,GAAG,CAAC,IAAA,+BAAmB,EAAC,EAAE,CAAC,CAAC,CAAA;KACjD;IACD,MAAM,OAAO,GAAG,IAAA,gDAA6B,EAAC,WAAW,CAAC,CAAA;IAC1D,OAAO,OAAO,CAAA;AAChB,CAAC;AA1BD,sCA0BC"}
@@ -0,0 +1,2 @@
1
+ import { Tenant, TenantConfiguration } from '../types';
2
+ export default function generateTenant(tenantConfiguration: TenantConfiguration): Tenant;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function generateTenant(tenantConfiguration) {
4
+ const isTest = process.env.ONEBLINK_SDK_ENVIRONMENT === 'test';
5
+ return {
6
+ awsRegion: tenantConfiguration.awsRegion,
7
+ apiOrigin: isTest
8
+ ? tenantConfiguration.test.apiOrigin
9
+ : tenantConfiguration.prod.apiOrigin,
10
+ };
11
+ }
12
+ exports.default = generateTenant;
13
+ //# sourceMappingURL=generate-tenant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-tenant.js","sourceRoot":"","sources":["../../src/lib/generate-tenant.ts"],"names":[],"mappings":";;AAEA,SAAwB,cAAc,CACpC,mBAAwC;IAExC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,CAAA;IAE9D,OAAO;QACL,SAAS,EAAE,mBAAmB,CAAC,SAAS;QACxC,SAAS,EAAE,MAAM;YACf,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS;YACpC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS;KACvC,CAAA;AACH,CAAC;AAXD,iCAWC"}
@@ -0,0 +1,37 @@
1
+ /// <reference types="node" />
2
+ import querystring from 'querystring';
3
+ import { Response, BodyInit } from 'node-fetch';
4
+ import { Tenant } from '../types';
5
+ export default class OneBlinkAPI {
6
+ /** @internal */
7
+ static tenant: Tenant;
8
+ /** @internal */
9
+ accessKey: string;
10
+ /** @internal */
11
+ secretKey: string;
12
+ /** @internal */
13
+ jwtExpiry: number;
14
+ constructor(accessKey: unknown, secretKey: unknown);
15
+ /** @internal */
16
+ get defaultRequestHeaders(): Record<string, string>;
17
+ /** @internal */
18
+ request({ origin, method, path, body, headers, }: {
19
+ origin: string;
20
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE';
21
+ path: string;
22
+ body?: BodyInit;
23
+ headers?: Record<string, string>;
24
+ }): Promise<Response>;
25
+ /** @internal */
26
+ getRequest<TOut>(path: string): Promise<TOut>;
27
+ /** @internal */
28
+ searchRequest<TOut>(path: string, searchParams?: querystring.ParsedUrlQueryInput): Promise<TOut>;
29
+ /** @internal */
30
+ putRequest<T, TOut>(path: string, payload: T): Promise<TOut>;
31
+ /** @internal */
32
+ postRequest<T, TOut>(path: string, payload: T): Promise<TOut>;
33
+ /** @internal */
34
+ postEmptyRequest<T>(path: string): Promise<T>;
35
+ /** @internal */
36
+ deleteRequest(path: string): Promise<void>;
37
+ }
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const querystring_1 = __importDefault(require("querystring"));
7
+ const node_fetch_1 = __importDefault(require("node-fetch"));
8
+ const package_1 = __importDefault(require("./package"));
9
+ const generate_jwt_1 = __importDefault(require("./generate-jwt"));
10
+ const generate_tenant_1 = __importDefault(require("./generate-tenant"));
11
+ const tenant_configuration_1 = require("./tenant-configuration");
12
+ async function getResponseErrorMessage(response) {
13
+ // The request was made and the server responded with
14
+ // a status code that falls out of the range of 2xx
15
+ const contentType = response.headers.get('content-type');
16
+ if (!contentType || !contentType.toLowerCase().includes('application/json')) {
17
+ return await response.text();
18
+ }
19
+ const body = await response.json();
20
+ if (body && body.message) {
21
+ return body.message;
22
+ }
23
+ return 'OneBlink API Internal Server Error';
24
+ }
25
+ class OneBlinkAPI {
26
+ constructor(accessKey, secretKey) {
27
+ if (!accessKey || typeof accessKey !== 'string') {
28
+ throw new TypeError('Must supply Access Key as a string');
29
+ }
30
+ if (!secretKey || typeof secretKey !== 'string') {
31
+ throw new TypeError('Must supply Secret Key as a string');
32
+ }
33
+ // 5 minute expiry
34
+ this.jwtExpiry = 300;
35
+ this.accessKey = accessKey;
36
+ this.secretKey = secretKey;
37
+ }
38
+ /** @internal */
39
+ get defaultRequestHeaders() {
40
+ return {
41
+ Accept: 'application/json',
42
+ 'Content-Type': 'application/json',
43
+ 'User-Agent': `Node.js ${package_1.default.name} / ${package_1.default.version}`,
44
+ Authorization: `Bearer ${(0, generate_jwt_1.default)(this.accessKey, this.secretKey, this.jwtExpiry)}`,
45
+ };
46
+ }
47
+ /** @internal */
48
+ async request({ origin, method, path, body, headers, }) {
49
+ const response = await (0, node_fetch_1.default)(`${origin}${path}`, {
50
+ method,
51
+ headers: {
52
+ ...this.defaultRequestHeaders,
53
+ ...headers,
54
+ },
55
+ body,
56
+ });
57
+ if (!response.ok) {
58
+ // The request was made and the server responded with
59
+ // a status code that falls out of the range of 2xx
60
+ const errorMessage = await getResponseErrorMessage(response);
61
+ const error = new Error(errorMessage);
62
+ error.name = 'OneBlinkAPIError';
63
+ throw error;
64
+ }
65
+ return response;
66
+ }
67
+ /** @internal */
68
+ async getRequest(path) {
69
+ const response = await this.request({
70
+ origin: OneBlinkAPI.tenant.apiOrigin,
71
+ method: 'GET',
72
+ path,
73
+ });
74
+ return await response.json();
75
+ }
76
+ /** @internal */
77
+ async searchRequest(path, searchParams) {
78
+ const search = querystring_1.default.stringify(searchParams || {});
79
+ return await this.getRequest(`${path}?${search}`);
80
+ }
81
+ /** @internal */
82
+ async putRequest(path, payload) {
83
+ const response = await this.request({
84
+ origin: OneBlinkAPI.tenant.apiOrigin,
85
+ method: 'PUT',
86
+ path,
87
+ body: JSON.stringify(payload),
88
+ });
89
+ return await response.json();
90
+ }
91
+ /** @internal */
92
+ async postRequest(path, payload) {
93
+ const response = await this.request({
94
+ origin: OneBlinkAPI.tenant.apiOrigin,
95
+ method: 'POST',
96
+ path,
97
+ body: JSON.stringify(payload),
98
+ });
99
+ return await response.json();
100
+ }
101
+ /** @internal */
102
+ async postEmptyRequest(path) {
103
+ const response = await this.request({
104
+ origin: OneBlinkAPI.tenant.apiOrigin,
105
+ method: 'POST',
106
+ path,
107
+ });
108
+ return await response.json();
109
+ }
110
+ /** @internal */
111
+ async deleteRequest(path) {
112
+ await this.request({
113
+ origin: OneBlinkAPI.tenant.apiOrigin,
114
+ method: 'DELETE',
115
+ path,
116
+ });
117
+ }
118
+ }
119
+ exports.default = OneBlinkAPI;
120
+ /** @internal */
121
+ OneBlinkAPI.tenant = (0, generate_tenant_1.default)(tenant_configuration_1.ONEBLINK);
122
+ //# sourceMappingURL=one-blink-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"one-blink-api.js","sourceRoot":"","sources":["../../src/lib/one-blink-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const pkg: any;
2
+ export default pkg;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
4
+ const pkg = require('../../package.json');
5
+ exports.default = pkg;
6
+ //# sourceMappingURL=package.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/lib/package.ts"],"names":[],"mappings":";;AAAA,8DAA8D;AAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AACzC,kBAAe,GAAG,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { PreFillMeta } from '../types';
2
+ export default function setPreFillData(preFillMeta: PreFillMeta, data: unknown): Promise<void>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const aws_sdk_1 = __importDefault(require("aws-sdk"));
7
+ async function setPreFillData(preFillMeta, data) {
8
+ const s3 = new aws_sdk_1.default.S3({
9
+ region: preFillMeta.s3.region,
10
+ accessKeyId: preFillMeta.credentials.AccessKeyId,
11
+ secretAccessKey: preFillMeta.credentials.SecretAccessKey,
12
+ sessionToken: preFillMeta.credentials.SessionToken,
13
+ });
14
+ const objectMeta = {
15
+ Bucket: preFillMeta.s3.bucket,
16
+ Key: preFillMeta.s3.key,
17
+ Body: JSON.stringify(data),
18
+ Expires: new Date(new Date().setFullYear(new Date().getFullYear() + 1)),
19
+ CacheControl: 'max-age=31536000',
20
+ ContentType: 'application/json',
21
+ };
22
+ const uploadOptions = {
23
+ partSize: 5 * 1024 * 1024,
24
+ queueSize: 1,
25
+ };
26
+ await s3.upload(objectMeta, uploadOptions).promise();
27
+ }
28
+ exports.default = setPreFillData;
29
+ //# sourceMappingURL=pre-fill-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-fill-data.js","sourceRoot":"","sources":["../../src/lib/pre-fill-data.ts"],"names":[],"mappings":";;;;;AAAA,sDAAyB;AAGV,KAAK,UAAU,cAAc,CAC1C,WAAwB,EACxB,IAAa;IAEb,MAAM,EAAE,GAAG,IAAI,iBAAG,CAAC,EAAE,CAAC;QACpB,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM;QAC7B,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,WAAW;QAChD,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,eAAe;QACxD,YAAY,EAAE,WAAW,CAAC,WAAW,CAAC,YAAY;KACnD,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG;QACjB,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM;QAC7B,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG;QACvB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;QACvE,YAAY,EAAE,kBAAkB;QAChC,WAAW,EAAE,kBAAkB;KAChC,CAAA;IACD,MAAM,aAAa,GAAG;QACpB,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;QACzB,SAAS,EAAE,CAAC;KACb,CAAA;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,OAAO,EAAE,CAAA;AACtD,CAAC;AAxBD,iCAwBC"}
@@ -0,0 +1,2 @@
1
+ import { AWSTypes, SubmissionTypes } from '@oneblink/types';
2
+ export default function getSubmissionData(retrievalData: AWSTypes.FormS3Credentials): Promise<SubmissionTypes.S3SubmissionData>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const aws_sdk_1 = __importDefault(require("aws-sdk"));
7
+ async function getSubmissionData(retrievalData) {
8
+ const s3 = new aws_sdk_1.default.S3({
9
+ region: retrievalData.s3.region,
10
+ accessKeyId: retrievalData.credentials.AccessKeyId,
11
+ secretAccessKey: retrievalData.credentials.SecretAccessKey,
12
+ sessionToken: retrievalData.credentials.SessionToken,
13
+ });
14
+ const params = {
15
+ Bucket: retrievalData.s3.bucket,
16
+ Key: retrievalData.s3.key,
17
+ };
18
+ const s3Data = await s3.getObject(params).promise();
19
+ if (!s3Data.Body) {
20
+ throw new Error('Could not find object in S3');
21
+ }
22
+ const formData = s3Data.Body.toString();
23
+ return JSON.parse(formData);
24
+ }
25
+ exports.default = getSubmissionData;
26
+ //# sourceMappingURL=retrieve-submission-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieve-submission-data.js","sourceRoot":"","sources":["../../src/lib/retrieve-submission-data.ts"],"names":[],"mappings":";;;;;AACA,sDAAyB;AAEV,KAAK,UAAU,iBAAiB,CAC7C,aAAyC;IAEzC,MAAM,EAAE,GAAG,IAAI,iBAAG,CAAC,EAAE,CAAC;QACpB,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,MAAM;QAC/B,WAAW,EAAE,aAAa,CAAC,WAAW,CAAC,WAAW;QAClD,eAAe,EAAE,aAAa,CAAC,WAAW,CAAC,eAAe;QAC1D,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,YAAY;KACrD,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,MAAM;QAC/B,GAAG,EAAE,aAAa,CAAC,EAAE,CAAC,GAAG;KAC1B,CAAA;IACD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IACnD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;KAC/C;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;AAC7B,CAAC;AApBD,oCAoBC"}
@@ -0,0 +1,3 @@
1
+ import { TenantConfiguration } from '../types';
2
+ export declare const ONEBLINK: TenantConfiguration;
3
+ export declare const CIVICPLUS: TenantConfiguration;