@ironcode/vas-lib 1.8.0-alpha.1 → 1.8.0-alpha.14

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 (258) hide show
  1. package/cjs/lib/control-value/index.d.ts +1 -0
  2. package/cjs/lib/control-value/index.d.ts.map +1 -1
  3. package/cjs/lib/control-value/index.js +1 -0
  4. package/cjs/lib/control-value/index.js.map +1 -1
  5. package/cjs/lib/control-value/vas-camera-control-value.model.js +1 -2
  6. package/cjs/lib/control-value/vas-camera-control-value.model.js.map +1 -1
  7. package/cjs/lib/control-value/vas-function-control-value.dto.d.ts +7 -0
  8. package/cjs/lib/control-value/vas-function-control-value.dto.d.ts.map +1 -0
  9. package/cjs/lib/control-value/vas-function-control-value.dto.js +3 -0
  10. package/cjs/lib/control-value/vas-function-control-value.dto.js.map +1 -0
  11. package/cjs/lib/controls-config/index.d.ts +1 -0
  12. package/cjs/lib/controls-config/index.d.ts.map +1 -1
  13. package/cjs/lib/controls-config/index.js +1 -0
  14. package/cjs/lib/controls-config/index.js.map +1 -1
  15. package/cjs/lib/controls-config/vas-control-config-direction.enum.js +1 -1
  16. package/cjs/lib/controls-config/vas-control-config-direction.enum.js.map +1 -1
  17. package/cjs/lib/controls-config/vas-function-control-config.dto.d.ts +6 -0
  18. package/cjs/lib/controls-config/vas-function-control-config.dto.d.ts.map +1 -0
  19. package/cjs/lib/controls-config/vas-function-control-config.dto.js +3 -0
  20. package/cjs/lib/controls-config/vas-function-control-config.dto.js.map +1 -0
  21. package/cjs/lib/elastic/index.d.ts +2 -0
  22. package/cjs/lib/elastic/index.d.ts.map +1 -0
  23. package/cjs/lib/elastic/index.js +5 -0
  24. package/cjs/lib/elastic/index.js.map +1 -0
  25. package/cjs/lib/elastic/job.elastic-doc.d.ts +14 -0
  26. package/cjs/lib/elastic/job.elastic-doc.d.ts.map +1 -0
  27. package/cjs/lib/elastic/job.elastic-doc.js +3 -0
  28. package/cjs/lib/elastic/job.elastic-doc.js.map +1 -0
  29. package/cjs/lib/entity/index.d.ts +4 -0
  30. package/cjs/lib/entity/index.d.ts.map +1 -1
  31. package/cjs/lib/entity/index.js +4 -0
  32. package/cjs/lib/entity/index.js.map +1 -1
  33. package/cjs/lib/entity/vas-account.dto.js +1 -1
  34. package/cjs/lib/entity/vas-account.dto.js.map +1 -1
  35. package/cjs/lib/entity/vas-base.model.d.ts +5 -4
  36. package/cjs/lib/entity/vas-base.model.d.ts.map +1 -1
  37. package/cjs/lib/entity/vas-base.model.js +1 -1
  38. package/cjs/lib/entity/vas-base.model.js.map +1 -1
  39. package/cjs/lib/entity/vas-contact.model.d.ts +1 -0
  40. package/cjs/lib/entity/vas-contact.model.d.ts.map +1 -1
  41. package/cjs/lib/entity/vas-contact.model.js +22 -1
  42. package/cjs/lib/entity/vas-contact.model.js.map +1 -1
  43. package/cjs/lib/entity/vas-control.model.d.ts +6 -4
  44. package/cjs/lib/entity/vas-control.model.d.ts.map +1 -1
  45. package/cjs/lib/entity/vas-control.model.js +23 -3
  46. package/cjs/lib/entity/vas-control.model.js.map +1 -1
  47. package/cjs/lib/entity/vas-field.dto.d.ts +5 -1
  48. package/cjs/lib/entity/vas-field.dto.d.ts.map +1 -1
  49. package/cjs/lib/entity/vas-field.dto.js.map +1 -1
  50. package/cjs/lib/entity/vas-field.model.d.ts +10 -9
  51. package/cjs/lib/entity/vas-field.model.d.ts.map +1 -1
  52. package/cjs/lib/entity/vas-field.model.js +43 -27
  53. package/cjs/lib/entity/vas-field.model.js.map +1 -1
  54. package/cjs/lib/entity/vas-file.dto.js +1 -2
  55. package/cjs/lib/entity/vas-file.dto.js.map +1 -1
  56. package/cjs/lib/entity/vas-file.model.d.ts +1 -0
  57. package/cjs/lib/entity/vas-file.model.d.ts.map +1 -1
  58. package/cjs/lib/entity/vas-file.model.js +10 -0
  59. package/cjs/lib/entity/vas-file.model.js.map +1 -1
  60. package/cjs/lib/entity/vas-fire-user.model.d.ts +1 -1
  61. package/cjs/lib/entity/vas-fire-user.model.d.ts.map +1 -1
  62. package/cjs/lib/entity/vas-fire-user.model.js.map +1 -1
  63. package/cjs/lib/entity/vas-form-config.dto.d.ts +2 -23
  64. package/cjs/lib/entity/vas-form-config.dto.d.ts.map +1 -1
  65. package/cjs/lib/entity/vas-form-config.dto.js.map +1 -1
  66. package/cjs/lib/entity/vas-form-config.model.d.ts +3 -13
  67. package/cjs/lib/entity/vas-form-config.model.d.ts.map +1 -1
  68. package/cjs/lib/entity/vas-form-config.model.js.map +1 -1
  69. package/cjs/lib/entity/vas-form.model.d.ts +5 -0
  70. package/cjs/lib/entity/vas-form.model.d.ts.map +1 -1
  71. package/cjs/lib/entity/vas-form.model.js +21 -1
  72. package/cjs/lib/entity/vas-form.model.js.map +1 -1
  73. package/cjs/lib/entity/vas-group.model.d.ts +1 -0
  74. package/cjs/lib/entity/vas-group.model.d.ts.map +1 -1
  75. package/cjs/lib/entity/vas-group.model.js +11 -0
  76. package/cjs/lib/entity/vas-group.model.js.map +1 -1
  77. package/cjs/lib/entity/vas-invitation.js +1 -1
  78. package/cjs/lib/entity/vas-invitation.js.map +1 -1
  79. package/cjs/lib/entity/vas-job-action.dto.d.ts +67 -0
  80. package/cjs/lib/entity/vas-job-action.dto.d.ts.map +1 -0
  81. package/cjs/lib/entity/vas-job-action.dto.js +20 -0
  82. package/cjs/lib/entity/vas-job-action.dto.js.map +1 -0
  83. package/cjs/lib/entity/vas-job-email.model.d.ts +2 -0
  84. package/cjs/lib/entity/vas-job-email.model.d.ts.map +1 -1
  85. package/cjs/lib/entity/vas-job-email.model.js +15 -9
  86. package/cjs/lib/entity/vas-job-email.model.js.map +1 -1
  87. package/cjs/lib/entity/vas-job.dto.d.ts +10 -2
  88. package/cjs/lib/entity/vas-job.dto.d.ts.map +1 -1
  89. package/cjs/lib/entity/vas-job.dto.js.map +1 -1
  90. package/cjs/lib/entity/vas-job.model.d.ts +13 -4
  91. package/cjs/lib/entity/vas-job.model.d.ts.map +1 -1
  92. package/cjs/lib/entity/vas-job.model.js +49 -18
  93. package/cjs/lib/entity/vas-job.model.js.map +1 -1
  94. package/cjs/lib/entity/vas-lookup.model.d.ts +35 -0
  95. package/cjs/lib/entity/vas-lookup.model.d.ts.map +1 -0
  96. package/cjs/lib/entity/vas-lookup.model.js +73 -0
  97. package/cjs/lib/entity/vas-lookup.model.js.map +1 -0
  98. package/cjs/lib/entity/vas-note.model.d.ts +1 -0
  99. package/cjs/lib/entity/vas-note.model.d.ts.map +1 -1
  100. package/cjs/lib/entity/vas-note.model.js +9 -0
  101. package/cjs/lib/entity/vas-note.model.js.map +1 -1
  102. package/cjs/lib/entity/vas-report.dto.d.ts +1 -1
  103. package/cjs/lib/entity/vas-report.dto.d.ts.map +1 -1
  104. package/cjs/lib/entity/vas-report.dto.js.map +1 -1
  105. package/cjs/lib/entity/vas-report.model.d.ts +5 -2
  106. package/cjs/lib/entity/vas-report.model.d.ts.map +1 -1
  107. package/cjs/lib/entity/vas-report.model.js +15 -4
  108. package/cjs/lib/entity/vas-report.model.js.map +1 -1
  109. package/cjs/lib/entity/vas-task.dto.d.ts +1 -0
  110. package/cjs/lib/entity/vas-task.dto.d.ts.map +1 -1
  111. package/cjs/lib/entity/vas-task.dto.js.map +1 -1
  112. package/cjs/lib/entity/vas-task.model.d.ts +3 -1
  113. package/cjs/lib/entity/vas-task.model.d.ts.map +1 -1
  114. package/cjs/lib/entity/vas-task.model.js +16 -2
  115. package/cjs/lib/entity/vas-task.model.js.map +1 -1
  116. package/cjs/lib/entity/vas-user.model.d.ts +2 -2
  117. package/cjs/lib/entity/vas-user.model.d.ts.map +1 -1
  118. package/cjs/lib/entity/vas-user.model.js +1 -1
  119. package/cjs/lib/entity/vas-user.model.js.map +1 -1
  120. package/cjs/lib/entity/vas-vehicle.model.d.ts +1 -0
  121. package/cjs/lib/entity/vas-vehicle.model.d.ts.map +1 -1
  122. package/cjs/lib/entity/vas-vehicle.model.js +12 -0
  123. package/cjs/lib/entity/vas-vehicle.model.js.map +1 -1
  124. package/cjs/lib/utils/find-form-control.js.map +1 -1
  125. package/cjs/lib/utils/get-value-by-path.d.ts.map +1 -1
  126. package/cjs/lib/utils/get-value-by-path.js.map +1 -1
  127. package/cjs/lib/utils/is-array-string.d.ts +1 -1
  128. package/cjs/lib/utils/is-array-string.d.ts.map +1 -1
  129. package/cjs/lib/utils/omit.d.ts +8 -0
  130. package/cjs/lib/utils/omit.d.ts.map +1 -0
  131. package/cjs/lib/utils/omit.js +26 -0
  132. package/cjs/lib/utils/omit.js.map +1 -0
  133. package/cjs/lib/utils/only.d.ts +8 -0
  134. package/cjs/lib/utils/only.d.ts.map +1 -0
  135. package/cjs/lib/utils/only.js +26 -0
  136. package/cjs/lib/utils/only.js.map +1 -0
  137. package/cjs/public-api.d.ts +1 -0
  138. package/cjs/public-api.d.ts.map +1 -1
  139. package/cjs/public-api.js +1 -0
  140. package/cjs/public-api.js.map +1 -1
  141. package/{fesm2020 → fesm2022}/ironcode-vas-lib.mjs +905 -67
  142. package/fesm2022/ironcode-vas-lib.mjs.map +1 -0
  143. package/lib/control-value/index.d.ts +1 -0
  144. package/lib/control-value/vas-function-control-value.dto.d.ts +6 -0
  145. package/lib/controls-config/index.d.ts +1 -0
  146. package/lib/controls-config/vas-function-control-config.dto.d.ts +5 -0
  147. package/lib/elastic/index.d.ts +1 -0
  148. package/lib/elastic/job.elastic-doc.d.ts +13 -0
  149. package/lib/entity/index.d.ts +4 -0
  150. package/lib/entity/vas-base.model.d.ts +5 -4
  151. package/lib/entity/vas-contact.model.d.ts +1 -0
  152. package/lib/entity/vas-control.model.d.ts +6 -4
  153. package/lib/entity/vas-field.dto.d.ts +5 -1
  154. package/lib/entity/vas-field.model.d.ts +10 -9
  155. package/lib/entity/vas-file.model.d.ts +1 -0
  156. package/lib/entity/vas-fire-user.model.d.ts +1 -1
  157. package/lib/entity/vas-form-config.dto.d.ts +2 -23
  158. package/lib/entity/vas-form-config.model.d.ts +3 -13
  159. package/lib/entity/vas-form.model.d.ts +5 -0
  160. package/lib/entity/vas-group.model.d.ts +1 -0
  161. package/lib/entity/vas-job-action.dto.d.ts +66 -0
  162. package/lib/entity/vas-job-email.model.d.ts +2 -0
  163. package/lib/entity/vas-job.dto.d.ts +10 -2
  164. package/lib/entity/vas-job.model.d.ts +13 -4
  165. package/lib/entity/vas-lookup.model.d.ts +34 -0
  166. package/lib/entity/vas-note.model.d.ts +1 -0
  167. package/lib/entity/vas-report.dto.d.ts +1 -1
  168. package/lib/entity/vas-report.model.d.ts +5 -2
  169. package/lib/entity/vas-task.dto.d.ts +9 -0
  170. package/lib/entity/vas-task.model.d.ts +36 -0
  171. package/lib/entity/vas-user.model.d.ts +2 -2
  172. package/lib/entity/vas-vehicle.model.d.ts +1 -0
  173. package/lib/utils/is-array-string.d.ts +1 -1
  174. package/lib/utils/only.d.ts +7 -0
  175. package/package.json +4 -11
  176. package/public-api.d.ts +1 -0
  177. package/cjs/package.json +0 -66
  178. package/esm2020/ironcode-vas-lib.mjs +0 -5
  179. package/esm2020/lib/control-value/index.mjs +0 -2
  180. package/esm2020/lib/control-value/vas-camera-control-value.model.mjs +0 -8
  181. package/esm2020/lib/controls-config/index.mjs +0 -4
  182. package/esm2020/lib/controls-config/vas-control-config-direction.enum.mjs +0 -8
  183. package/esm2020/lib/controls-config/vas-control-config.model.mjs +0 -2
  184. package/esm2020/lib/controls-config/vas-select-control-config.model.mjs +0 -2
  185. package/esm2020/lib/entity/index.mjs +0 -65
  186. package/esm2020/lib/entity/vas-access-group.dto.mjs +0 -2
  187. package/esm2020/lib/entity/vas-account-config.dto.mjs +0 -2
  188. package/esm2020/lib/entity/vas-account-object.dto.mjs +0 -2
  189. package/esm2020/lib/entity/vas-account-object.model.mjs +0 -24
  190. package/esm2020/lib/entity/vas-account.dto.mjs +0 -7
  191. package/esm2020/lib/entity/vas-base.dto.mjs +0 -2
  192. package/esm2020/lib/entity/vas-base.model.mjs +0 -34
  193. package/esm2020/lib/entity/vas-branch.dto.mjs +0 -2
  194. package/esm2020/lib/entity/vas-branch.model.mjs +0 -68
  195. package/esm2020/lib/entity/vas-contact-type.dto.mjs +0 -2
  196. package/esm2020/lib/entity/vas-contact.dto.mjs +0 -2
  197. package/esm2020/lib/entity/vas-contact.model.mjs +0 -84
  198. package/esm2020/lib/entity/vas-control-type.dto.mjs +0 -2
  199. package/esm2020/lib/entity/vas-control-type.model.mjs +0 -52
  200. package/esm2020/lib/entity/vas-control.dto.mjs +0 -2
  201. package/esm2020/lib/entity/vas-control.model.mjs +0 -171
  202. package/esm2020/lib/entity/vas-field.dto.mjs +0 -2
  203. package/esm2020/lib/entity/vas-field.model.mjs +0 -97
  204. package/esm2020/lib/entity/vas-file.dto.mjs +0 -9
  205. package/esm2020/lib/entity/vas-file.model.mjs +0 -125
  206. package/esm2020/lib/entity/vas-fire-user.dto.mjs +0 -2
  207. package/esm2020/lib/entity/vas-fire-user.model.mjs +0 -102
  208. package/esm2020/lib/entity/vas-form-config.dto.mjs +0 -2
  209. package/esm2020/lib/entity/vas-form-config.model.mjs +0 -31
  210. package/esm2020/lib/entity/vas-form.dto.mjs +0 -2
  211. package/esm2020/lib/entity/vas-form.model.mjs +0 -194
  212. package/esm2020/lib/entity/vas-group.dto.mjs +0 -2
  213. package/esm2020/lib/entity/vas-group.model.mjs +0 -97
  214. package/esm2020/lib/entity/vas-instruction-job-field.dto.mjs +0 -2
  215. package/esm2020/lib/entity/vas-instruction-job-field.model.mjs +0 -48
  216. package/esm2020/lib/entity/vas-instruction-job.dto.mjs +0 -2
  217. package/esm2020/lib/entity/vas-instruction-job.model.mjs +0 -81
  218. package/esm2020/lib/entity/vas-instruction-provider.dto.mjs +0 -2
  219. package/esm2020/lib/entity/vas-instruction-provider.model.mjs +0 -66
  220. package/esm2020/lib/entity/vas-instruction.dto.mjs +0 -2
  221. package/esm2020/lib/entity/vas-instruction.model.mjs +0 -52
  222. package/esm2020/lib/entity/vas-invitation.mjs +0 -88
  223. package/esm2020/lib/entity/vas-job-data.dto.mjs +0 -2
  224. package/esm2020/lib/entity/vas-job-data.model.mjs +0 -21
  225. package/esm2020/lib/entity/vas-job-email.dto.mjs +0 -2
  226. package/esm2020/lib/entity/vas-job-email.model.mjs +0 -79
  227. package/esm2020/lib/entity/vas-job-status.dto.mjs +0 -2
  228. package/esm2020/lib/entity/vas-job-type.dto.mjs +0 -2
  229. package/esm2020/lib/entity/vas-job.dto.mjs +0 -2
  230. package/esm2020/lib/entity/vas-job.model.mjs +0 -496
  231. package/esm2020/lib/entity/vas-lookup-type.dto.mjs +0 -2
  232. package/esm2020/lib/entity/vas-lookup.dto.mjs +0 -2
  233. package/esm2020/lib/entity/vas-membership.dto.mjs +0 -2
  234. package/esm2020/lib/entity/vas-membership.model.mjs +0 -62
  235. package/esm2020/lib/entity/vas-note.dto.mjs +0 -2
  236. package/esm2020/lib/entity/vas-note.model.mjs +0 -59
  237. package/esm2020/lib/entity/vas-report-layout.dto.mjs +0 -2
  238. package/esm2020/lib/entity/vas-report-layout.model.mjs +0 -22
  239. package/esm2020/lib/entity/vas-report-request.dto.mjs +0 -2
  240. package/esm2020/lib/entity/vas-report-request.model.mjs +0 -44
  241. package/esm2020/lib/entity/vas-report.dto.mjs +0 -2
  242. package/esm2020/lib/entity/vas-report.model.mjs +0 -57
  243. package/esm2020/lib/entity/vas-restricted-account-object.dto.mjs +0 -2
  244. package/esm2020/lib/entity/vas-restricted-account-object.model.mjs +0 -24
  245. package/esm2020/lib/entity/vas-task-type.dto.mjs +0 -2
  246. package/esm2020/lib/entity/vas-user.dto.mjs +0 -2
  247. package/esm2020/lib/entity/vas-user.model.mjs +0 -42
  248. package/esm2020/lib/entity/vas-vehicle.dto.mjs +0 -2
  249. package/esm2020/lib/entity/vas-vehicle.model.mjs +0 -57
  250. package/esm2020/lib/model/geo-location.mjs +0 -12
  251. package/esm2020/lib/model/index.mjs +0 -3
  252. package/esm2020/lib/model/vas-time-range.model.mjs +0 -2
  253. package/esm2020/lib/utils/get-value-by-path.mjs +0 -64
  254. package/esm2020/lib/utils/is-array-string.mjs +0 -4
  255. package/esm2020/public-api.mjs +0 -5
  256. package/fesm2015/ironcode-vas-lib.mjs +0 -2359
  257. package/fesm2015/ironcode-vas-lib.mjs.map +0 -1
  258. package/fesm2020/ironcode-vas-lib.mjs.map +0 -1
@@ -22,6 +22,15 @@ var VasControlConfigDirection;
22
22
  * BaseEntityModel
23
23
  */
24
24
  class VasBaseModel {
25
+ id;
26
+ created;
27
+ serverCreated;
28
+ createdBy;
29
+ modified;
30
+ serverModified;
31
+ modifiedBy;
32
+ createdByName;
33
+ modifiedByName;
25
34
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName) {
26
35
  this.id = id;
27
36
  this.created = created;
@@ -38,19 +47,33 @@ class VasBaseModel {
38
47
  }
39
48
  static create(user, values = {}) {
40
49
  return this.fromDto({
41
- ...values,
42
50
  id: UUID.UUID(),
43
51
  created: moment().toISOString(),
44
52
  modified: moment().toISOString(),
45
53
  createdBy: user?.id || '',
46
54
  createdByName: user?.name || '',
47
55
  modifiedBy: user?.id || '',
48
- modifiedByName: user?.name || ''
56
+ modifiedByName: user?.name || '',
57
+ ...values,
49
58
  });
50
59
  }
51
60
  }
52
61
 
53
62
  class VasUserModel extends VasBaseModel {
63
+ id;
64
+ created;
65
+ serverCreated;
66
+ createdBy;
67
+ modified;
68
+ serverModified;
69
+ modifiedBy;
70
+ createdByName;
71
+ modifiedByName;
72
+ email;
73
+ name;
74
+ username;
75
+ memberships;
76
+ instructionProviders;
54
77
  constructor(id, created = '', serverCreated = '', createdBy = '', modified = '', serverModified = '', modifiedBy = '', createdByName, modifiedByName, email, name, username, memberships, instructionProviders) {
55
78
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName);
56
79
  this.id = id;
@@ -69,7 +92,7 @@ class VasUserModel extends VasBaseModel {
69
92
  this.instructionProviders = instructionProviders;
70
93
  }
71
94
  static fromDto(dto) {
72
- return new VasUserModel(dto.id, dto.created, dto.serverCreated, dto.createdBy, dto.modified, dto.serverModified, dto.modifiedBy, dto.createdByName || '', dto.modifiedByName || '', dto.email, dto.name, dto.username, dto.memberships, dto.instructionProviders);
95
+ return new VasUserModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.email || '', dto.name || '', dto.username || '', dto.memberships || [], dto.instructionProviders || []);
73
96
  }
74
97
  toDto() {
75
98
  return {
@@ -92,6 +115,25 @@ class VasUserModel extends VasBaseModel {
92
115
  }
93
116
 
94
117
  class VasFireUserModel extends VasUserModel {
118
+ id;
119
+ created;
120
+ serverCreated;
121
+ createdBy;
122
+ modified;
123
+ serverModified;
124
+ modifiedBy;
125
+ createdByName;
126
+ modifiedByName;
127
+ email;
128
+ name;
129
+ username;
130
+ memberships;
131
+ instructionProviders;
132
+ accounts;
133
+ tokens;
134
+ topics;
135
+ language;
136
+ displayName;
95
137
  constructor(id, created = '', serverCreated = '', createdBy = '', modified = '', serverModified = '', modifiedBy = '', createdByName, modifiedByName, email, name, username, memberships, instructionProviders, accounts, tokens, topics, language, displayName) {
96
138
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, email, name, username, memberships, instructionProviders);
97
139
  this.id = id;
@@ -199,6 +241,16 @@ var VasAccountIndexingMode;
199
241
  })(VasAccountIndexingMode || (VasAccountIndexingMode = {}));
200
242
 
201
243
  class VasAccountObjectModel extends VasBaseModel {
244
+ id;
245
+ created;
246
+ serverCreated;
247
+ createdBy;
248
+ modified;
249
+ serverModified;
250
+ modifiedBy;
251
+ createdByName;
252
+ modifiedByName;
253
+ account;
202
254
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account) {
203
255
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName);
204
256
  this.id = id;
@@ -222,6 +274,17 @@ class VasAccountObjectModel extends VasBaseModel {
222
274
  }
223
275
 
224
276
  class VasRestrictedAccountObjectModel extends VasAccountObjectModel {
277
+ id;
278
+ created;
279
+ serverCreated;
280
+ createdBy;
281
+ modified;
282
+ serverModified;
283
+ modifiedBy;
284
+ createdByName;
285
+ modifiedByName;
286
+ account;
287
+ accessGroup;
225
288
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup) {
226
289
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
227
290
  this.id = id;
@@ -245,6 +308,33 @@ class VasRestrictedAccountObjectModel extends VasAccountObjectModel {
245
308
  }
246
309
 
247
310
  class VasBranchModel extends VasRestrictedAccountObjectModel {
311
+ id;
312
+ created;
313
+ serverCreated;
314
+ createdBy;
315
+ modified;
316
+ serverModified;
317
+ modifiedBy;
318
+ createdByName;
319
+ modifiedByName;
320
+ account;
321
+ accessGroup;
322
+ branchType;
323
+ storeCode;
324
+ address;
325
+ city;
326
+ postcode;
327
+ email;
328
+ locationManager;
329
+ areaManager;
330
+ regionalDirector;
331
+ salesManager;
332
+ cluster;
333
+ hourWeekdays;
334
+ hourSaturday;
335
+ hourSunday;
336
+ exceptions;
337
+ active;
248
338
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, branchType, storeCode, address, city, postcode, email, locationManager, areaManager, regionalDirector, salesManager, cluster, hourWeekdays, hourSaturday, hourSunday, exceptions, active) {
249
339
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
250
340
  this.id = id;
@@ -311,7 +401,53 @@ class VasBranchModel extends VasRestrictedAccountObjectModel {
311
401
  }
312
402
  }
313
403
 
404
+ /**
405
+ * Return an object with only the properties specified by key(s)
406
+ *
407
+ * @param obj object to be processed
408
+ * @param omitKey key or array of keys to be kept
409
+ */
410
+ const only = (obj, omitKey) => {
411
+ return Object.keys(obj).reduce((result, key) => {
412
+ if (Array.isArray(omitKey)) {
413
+ if (omitKey.includes(key)) {
414
+ result[key] = obj[key];
415
+ }
416
+ }
417
+ else {
418
+ if (omitKey === key) {
419
+ result[key] = obj[key];
420
+ }
421
+ }
422
+ return result;
423
+ }, {});
424
+ };
425
+
314
426
  class VasContactModel extends VasRestrictedAccountObjectModel {
427
+ id;
428
+ created;
429
+ serverCreated;
430
+ createdBy;
431
+ modified;
432
+ serverModified;
433
+ modifiedBy;
434
+ createdByName;
435
+ modifiedByName;
436
+ account;
437
+ accessGroup;
438
+ contactType;
439
+ name;
440
+ email;
441
+ mobile;
442
+ phone;
443
+ address;
444
+ address2;
445
+ address3;
446
+ billingCode;
447
+ business;
448
+ fax;
449
+ vatNumber;
450
+ website;
315
451
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, contactType, name, email, mobile, phone, address, address2, address3, billingCode, business, fax, vatNumber, website) {
316
452
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
317
453
  this.id = id;
@@ -373,10 +509,6 @@ class VasContactModel extends VasRestrictedAccountObjectModel {
373
509
  toApiDto(options) {
374
510
  return {
375
511
  ...super.toApiDto(),
376
- id: this.id,
377
- created: this.created || '~',
378
- modified: this.modified || '~',
379
- accessGroup: this.accessGroup || '~',
380
512
  contactType: this.contactType || '~',
381
513
  name: this.name || '~',
382
514
  email: this.email || '~',
@@ -392,12 +524,42 @@ class VasContactModel extends VasRestrictedAccountObjectModel {
392
524
  website: this.website || '~',
393
525
  };
394
526
  }
527
+ static toApiPatchDto(contact) {
528
+ return only(contact, [
529
+ 'created',
530
+ 'modified',
531
+ 'accessGroup',
532
+ 'contactType',
533
+ 'name',
534
+ 'email',
535
+ 'mobile',
536
+ 'phone',
537
+ 'address',
538
+ 'address2',
539
+ 'address3',
540
+ 'billingCode',
541
+ 'business',
542
+ 'fax',
543
+ 'vatNumber',
544
+ 'website'
545
+ ]);
546
+ }
395
547
  }
396
548
 
397
549
  /**
398
550
  * VasControlTypeModel
399
551
  */
400
552
  class VasControlTypeModel extends VasBaseModel {
553
+ id;
554
+ created;
555
+ serverCreated;
556
+ createdBy;
557
+ modified;
558
+ serverModified;
559
+ modifiedBy;
560
+ createdByName;
561
+ modifiedByName;
562
+ name;
401
563
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, name) {
402
564
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName);
403
565
  this.id = id;
@@ -449,6 +611,30 @@ class VasControlTypeModel extends VasBaseModel {
449
611
  * ControlModel
450
612
  */
451
613
  class VasControlModel extends VasRestrictedAccountObjectModel {
614
+ id;
615
+ created;
616
+ serverCreated;
617
+ createdBy;
618
+ modified;
619
+ serverModified;
620
+ modifiedBy;
621
+ createdByName;
622
+ modifiedByName;
623
+ account;
624
+ accessGroup;
625
+ controlType;
626
+ group;
627
+ validators;
628
+ name;
629
+ title;
630
+ linkable;
631
+ sequence;
632
+ description;
633
+ defaultValue;
634
+ config;
635
+ descriptionImage;
636
+ portalEnabled;
637
+ controlTypeId = '';
452
638
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, controlType, group, validators, name, title, linkable, sequence, description, defaultValue, config, descriptionImage, portalEnabled) {
453
639
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
454
640
  this.id = id;
@@ -474,7 +660,6 @@ class VasControlModel extends VasRestrictedAccountObjectModel {
474
660
  this.config = config;
475
661
  this.descriptionImage = descriptionImage;
476
662
  this.portalEnabled = portalEnabled;
477
- this.controlTypeId = '';
478
663
  if (typeof controlType === 'string') {
479
664
  this.controlTypeId = controlType;
480
665
  }
@@ -548,11 +733,13 @@ class VasControlModel extends VasRestrictedAccountObjectModel {
548
733
  };
549
734
  return new VasControlModel(
550
735
  // eslint-disable-next-line new-cap
551
- dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', handleControlType(dto.controlType), dto.group || '', dto.validators || [], dto.name || '', dto.title || '', dto.linkable || false, dto.sequence || 0, dto.description || '', dto.defaultValue || '', JSON.parse(dto.config || '{}'), dto.descriptionImage || '', dto.portalEnabled || false);
736
+ dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', handleControlType(dto.controlType), dto.group || '', dto.validators || [], dto.name || '', dto.title || '', dto.linkable || false, dto.sequence || 0, dto.description || '', dto.defaultValue || '', typeof dto.config === 'string' ?
737
+ JSON.parse(dto.config || '{}') :
738
+ dto.config, dto.descriptionImage || '', dto.portalEnabled || false);
552
739
  }
553
740
  /**
554
- * @param {string} value
555
- * @return {VasControlModelDefaultValueType}
741
+ * @param {any} value the value to be parsed
742
+ * @return {VasFieldDtoValue} the parsed value
556
743
  */
557
744
  parseMaybeJson(value) {
558
745
  if (typeof value !== 'string') {
@@ -611,12 +798,40 @@ class VasControlModel extends VasRestrictedAccountObjectModel {
611
798
  linkable: this.linkable
612
799
  };
613
800
  }
801
+ static toApiPatchDto(item) {
802
+ return only(item, [
803
+ 'created',
804
+ 'modified',
805
+ 'title',
806
+ 'name',
807
+ 'portalEnabled',
808
+ 'sequence',
809
+ 'description',
810
+ 'defaultValue',
811
+ 'config',
812
+ 'controlType',
813
+ 'group',
814
+ 'validators',
815
+ 'linkable',
816
+ ]);
817
+ }
614
818
  }
615
819
 
616
820
  /**
617
821
  * VasJobDataModel
618
822
  */
619
823
  class VasJobDataModel extends VasAccountObjectModel {
824
+ id;
825
+ created;
826
+ serverCreated;
827
+ createdBy;
828
+ modified;
829
+ serverModified;
830
+ modifiedBy;
831
+ createdByName;
832
+ modifiedByName;
833
+ account;
834
+ job;
620
835
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job) {
621
836
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
622
837
  this.id = id;
@@ -633,10 +848,55 @@ class VasJobDataModel extends VasAccountObjectModel {
633
848
  }
634
849
  }
635
850
 
851
+ /**
852
+ * Prepares the value to be sent to the API. The api will only accept strings,
853
+ * numbers and booleans, thus if we have an array or object, we need to JSON
854
+ * encode it
855
+ * @param {VasFieldDto} value
856
+ * @return {string | number | boolean}
857
+ * @protected
858
+ */
859
+ const prepareFieldApiValue = (value) => {
860
+ switch (typeof value) {
861
+ case 'object': {
862
+ return JSON.stringify(value);
863
+ }
864
+ case 'boolean': {
865
+ return value;
866
+ }
867
+ case 'string': {
868
+ return value;
869
+ }
870
+ case 'number': {
871
+ return value;
872
+ }
873
+ default: {
874
+ return '';
875
+ }
876
+ }
877
+ };
636
878
  /**
637
879
  * VasFieldModel
638
880
  */
639
881
  class VasFieldModel extends VasJobDataModel {
882
+ id;
883
+ created;
884
+ serverCreated;
885
+ createdBy;
886
+ modified;
887
+ serverModified;
888
+ modifiedBy;
889
+ createdByName;
890
+ modifiedByName;
891
+ account;
892
+ job;
893
+ control;
894
+ fieldJobPointers;
895
+ value;
896
+ version;
897
+ controlName;
898
+ controlTitle;
899
+ controlTypeName;
640
900
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, control, fieldJobPointers, value, version, controlName, controlTitle, controlTypeName) {
641
901
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
642
902
  this.id = id;
@@ -697,35 +957,22 @@ class VasFieldModel extends VasJobDataModel {
697
957
  return {
698
958
  ...super.toApiDto(),
699
959
  control: this.control,
700
- value: this.prepareApiValue(this.value)
960
+ value: prepareFieldApiValue(this.value)
701
961
  };
702
962
  }
703
- /**
704
- * Prepares the value to be sent to the API. The api will only accept strings,
705
- * numbers and booleans, thus if we have an array or object, we need to JSON
706
- * encode it
707
- * @param {VasFieldDto} value
708
- * @return {string | number | boolean}
709
- * @protected
710
- */
711
- prepareApiValue(value) {
712
- switch (typeof value) {
713
- case 'object': {
714
- return JSON.stringify(value);
715
- }
716
- case 'boolean': {
717
- return value;
718
- }
719
- case 'string': {
720
- return value;
721
- }
722
- case 'number': {
723
- return value;
724
- }
725
- default: {
726
- return '';
727
- }
963
+ static toApiPatchDto(item) {
964
+ const clone = JSON.parse(JSON.stringify(item));
965
+ if (clone.value !== undefined && clone.value !== null) {
966
+ clone.value = prepareFieldApiValue(clone.value);
728
967
  }
968
+ else {
969
+ clone.value = '';
970
+ }
971
+ return only(clone, [
972
+ 'created',
973
+ 'modified',
974
+ 'value'
975
+ ]);
729
976
  }
730
977
  }
731
978
 
@@ -742,6 +989,27 @@ function isFileDto(object) {
742
989
  * VasFileDto
743
990
  */
744
991
  class VasFileModel extends VasJobDataModel {
992
+ id;
993
+ created;
994
+ serverCreated;
995
+ createdBy;
996
+ modified;
997
+ serverModified;
998
+ modifiedBy;
999
+ createdByName;
1000
+ modifiedByName;
1001
+ account;
1002
+ job;
1003
+ name;
1004
+ fileSize;
1005
+ mimeType;
1006
+ sequence;
1007
+ config;
1008
+ url;
1009
+ controlPath;
1010
+ message;
1011
+ status;
1012
+ uri;
745
1013
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, name, fileSize, mimeType, sequence, config, url, controlPath, message, status, uri) {
746
1014
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
747
1015
  this.id = id;
@@ -860,12 +1128,42 @@ class VasFileModel extends VasJobDataModel {
860
1128
  }
861
1129
  return value;
862
1130
  }
1131
+ static toApiPatchDto(item) {
1132
+ return only(item, [
1133
+ 'created',
1134
+ 'modified',
1135
+ 'name',
1136
+ 'sequence',
1137
+ 'config'
1138
+ ]);
1139
+ }
863
1140
  }
864
1141
 
865
1142
  /**
866
1143
  * GroupModel
867
1144
  */
868
1145
  class VasGroupModel extends VasRestrictedAccountObjectModel {
1146
+ id;
1147
+ created;
1148
+ serverCreated;
1149
+ createdBy;
1150
+ modified;
1151
+ serverModified;
1152
+ modifiedBy;
1153
+ createdByName;
1154
+ modifiedByName;
1155
+ account;
1156
+ accessGroup;
1157
+ name;
1158
+ title;
1159
+ description;
1160
+ sequence;
1161
+ includeInSummary;
1162
+ forms;
1163
+ visibilityControl;
1164
+ visibleIfEquals;
1165
+ controls;
1166
+ scoreWeight;
869
1167
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, name, title, description, sequence, includeInSummary, forms, visibilityControl, visibleIfEquals, controls, scoreWeight) {
870
1168
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
871
1169
  this.id = id;
@@ -955,9 +1253,21 @@ class VasGroupModel extends VasRestrictedAccountObjectModel {
955
1253
  includeInSummary: this.includeInSummary
956
1254
  };
957
1255
  }
1256
+ static toApiPatchDto(item) {
1257
+ return only(item, [
1258
+ 'created',
1259
+ 'modified',
1260
+ 'name',
1261
+ 'title',
1262
+ 'sequence',
1263
+ 'includeInSummary'
1264
+ ]);
1265
+ }
958
1266
  }
959
1267
 
960
1268
  class VasFormConfigModel {
1269
+ emailRecipients;
1270
+ actions;
961
1271
  constructor(emailRecipients, actions) {
962
1272
  this.emailRecipients = emailRecipients;
963
1273
  this.actions = actions;
@@ -992,6 +1302,27 @@ class VasFormConfigModel {
992
1302
  * VasFormModel
993
1303
  */
994
1304
  class VasFormModel extends VasRestrictedAccountObjectModel {
1305
+ id;
1306
+ created;
1307
+ serverCreated;
1308
+ createdBy;
1309
+ modified;
1310
+ serverModified;
1311
+ modifiedBy;
1312
+ createdByName;
1313
+ modifiedByName;
1314
+ account;
1315
+ accessGroup;
1316
+ jobType;
1317
+ title;
1318
+ description;
1319
+ groups;
1320
+ dynamicDescriptor;
1321
+ indexName;
1322
+ pipelineName;
1323
+ config;
1324
+ geoLocationEnabled;
1325
+ filesEnabled;
995
1326
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, jobType, title, description, groups, dynamicDescriptor, indexName, pipelineName, config, geoLocationEnabled, filesEnabled) {
996
1327
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
997
1328
  this.id = id;
@@ -1122,6 +1453,15 @@ class VasFormModel extends VasRestrictedAccountObjectModel {
1122
1453
  });
1123
1454
  return paths;
1124
1455
  }
1456
+ /**
1457
+ * Return all Controls in the Form
1458
+ */
1459
+ getControls() {
1460
+ return this.groups
1461
+ .reduce((acc, g) => {
1462
+ return acc.concat(g.controls);
1463
+ }, []);
1464
+ }
1125
1465
  /**
1126
1466
  * @param {VasJobModel} jobModel
1127
1467
  * @return {Array<{id: string, value: VasFieldDtoValue}>}
@@ -1173,9 +1513,20 @@ class VasFormModel extends VasRestrictedAccountObjectModel {
1173
1513
  ...super.toApiDto(options),
1174
1514
  title: this.title || '~',
1175
1515
  description: this.description || '~',
1176
- jobType: this.jobType
1516
+ jobType: this.jobType,
1517
+ config: this.config.toJsonString()
1177
1518
  };
1178
1519
  }
1520
+ static toApiPatchDto(item) {
1521
+ return only(item, [
1522
+ 'created',
1523
+ 'modified',
1524
+ 'title',
1525
+ 'description',
1526
+ 'jobType',
1527
+ 'config'
1528
+ ]);
1529
+ }
1179
1530
  }
1180
1531
 
1181
1532
  var VasInvitationTypeEnum;
@@ -1187,6 +1538,25 @@ var VasInvitationTypeEnum;
1187
1538
  VasInvitationTypeEnum["TYPE_P2C_MOBILE"] = "p2c-mobile";
1188
1539
  })(VasInvitationTypeEnum || (VasInvitationTypeEnum = {}));
1189
1540
  class VasInvitationModel extends VasAccountObjectModel {
1541
+ id;
1542
+ created;
1543
+ serverCreated;
1544
+ createdBy;
1545
+ modified;
1546
+ serverModified;
1547
+ modifiedBy;
1548
+ createdByName;
1549
+ modifiedByName;
1550
+ account;
1551
+ secret;
1552
+ type;
1553
+ accessGroups;
1554
+ contactTypes;
1555
+ jobStatuses;
1556
+ jobTypes;
1557
+ lookupTypes;
1558
+ taskTypes;
1559
+ instructionProviders;
1190
1560
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, secret, type, accessGroups, contactTypes, jobStatuses, jobTypes, lookupTypes, taskTypes, instructionProviders) {
1191
1561
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
1192
1562
  this.id = id;
@@ -1269,6 +1639,19 @@ class VasInvitationModel extends VasAccountObjectModel {
1269
1639
  * VasNoteModel
1270
1640
  */
1271
1641
  class VasNoteModel extends VasJobDataModel {
1642
+ id;
1643
+ created;
1644
+ serverCreated;
1645
+ createdBy;
1646
+ modified;
1647
+ serverModified;
1648
+ modifiedBy;
1649
+ createdByName;
1650
+ modifiedByName;
1651
+ account;
1652
+ job;
1653
+ content;
1654
+ sensitive;
1272
1655
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, content, sensitive) {
1273
1656
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
1274
1657
  this.id = id;
@@ -1321,12 +1704,34 @@ class VasNoteModel extends VasJobDataModel {
1321
1704
  modified: this.modified
1322
1705
  };
1323
1706
  }
1707
+ static toApiPatchDto(item) {
1708
+ return only(item, [
1709
+ 'created',
1710
+ 'modified',
1711
+ 'content',
1712
+ 'sensitive'
1713
+ ]);
1714
+ }
1324
1715
  }
1325
1716
 
1326
1717
  /**
1327
1718
  * VasInstructionJobFieldModel
1328
1719
  */
1329
1720
  class VasInstructionJobFieldModel extends VasBaseModel {
1721
+ id;
1722
+ created;
1723
+ serverCreated;
1724
+ createdBy;
1725
+ modified;
1726
+ serverModified;
1727
+ modifiedBy;
1728
+ createdByName;
1729
+ modifiedByName;
1730
+ value;
1731
+ name;
1732
+ title;
1733
+ sequence;
1734
+ controlType;
1330
1735
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, value, name, title, sequence, controlType) {
1331
1736
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName);
1332
1737
  this.id = id;
@@ -1371,7 +1776,27 @@ class VasInstructionJobFieldModel extends VasBaseModel {
1371
1776
  }
1372
1777
 
1373
1778
  class VasReportModel extends VasJobDataModel {
1374
- constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, reportLayoutId, title, sendEmail, message, attempted, completed, succeeded, attempts, notificationId) {
1779
+ id;
1780
+ created;
1781
+ serverCreated;
1782
+ createdBy;
1783
+ modified;
1784
+ serverModified;
1785
+ modifiedBy;
1786
+ createdByName;
1787
+ modifiedByName;
1788
+ account;
1789
+ job;
1790
+ reportLayout;
1791
+ title;
1792
+ sendEmail;
1793
+ message;
1794
+ attempted;
1795
+ completed;
1796
+ succeeded;
1797
+ attempts;
1798
+ notificationId;
1799
+ constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, reportLayout, title, sendEmail, message, attempted, completed, succeeded, attempts, notificationId) {
1375
1800
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
1376
1801
  this.id = id;
1377
1802
  this.created = created;
@@ -1384,7 +1809,7 @@ class VasReportModel extends VasJobDataModel {
1384
1809
  this.modifiedByName = modifiedByName;
1385
1810
  this.account = account;
1386
1811
  this.job = job;
1387
- this.reportLayoutId = reportLayoutId;
1812
+ this.reportLayout = reportLayout;
1388
1813
  this.title = title;
1389
1814
  this.sendEmail = sendEmail;
1390
1815
  this.message = message;
@@ -1398,7 +1823,7 @@ class VasReportModel extends VasJobDataModel {
1398
1823
  return VasReportModel.fromDto({});
1399
1824
  }
1400
1825
  static fromDto(dto) {
1401
- return new VasReportModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.job || '', dto.reportLayoutId || '', dto.title || '', dto.sendEmail || '', dto.message || '', dto.attempted || '', dto.completed || '', dto.succeeded || '', dto.attempts || 0, dto.notificationId || '');
1826
+ return new VasReportModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.job || '', dto.reportLayout || '', dto.title || '', dto.sendEmail || '', dto.message || '', dto.attempted || '', dto.completed || '', dto.succeeded || '', dto.attempts || 0, dto.notificationId || '');
1402
1827
  }
1403
1828
  toDto() {
1404
1829
  return {
@@ -1413,7 +1838,7 @@ class VasReportModel extends VasJobDataModel {
1413
1838
  modifiedByName: this.modifiedByName,
1414
1839
  account: this.account,
1415
1840
  job: this.job,
1416
- reportLayoutId: this.reportLayoutId,
1841
+ reportLayout: this.reportLayout,
1417
1842
  title: this.title,
1418
1843
  sendEmail: this.sendEmail,
1419
1844
  message: this.message,
@@ -1424,12 +1849,41 @@ class VasReportModel extends VasJobDataModel {
1424
1849
  notificationId: this.notificationId,
1425
1850
  };
1426
1851
  }
1852
+ toApiDto(options) {
1853
+ return {
1854
+ ...super.toApiDto(options),
1855
+ job: this.job,
1856
+ reportLayout: this.reportLayout
1857
+ };
1858
+ }
1859
+ static toApiPatchDto(item) {
1860
+ return only(item, [
1861
+ 'created',
1862
+ 'modified',
1863
+ 'portalVisible',
1864
+ ]);
1865
+ }
1427
1866
  }
1428
1867
 
1429
1868
  /**
1430
1869
  * VasNoteModel
1431
1870
  */
1432
1871
  class VasInstructionJobModel extends VasBaseModel {
1872
+ id;
1873
+ created;
1874
+ serverCreated;
1875
+ createdBy;
1876
+ modified;
1877
+ serverModified;
1878
+ modifiedBy;
1879
+ createdByName;
1880
+ modifiedByName;
1881
+ reference;
1882
+ jobStatus;
1883
+ notes;
1884
+ fields;
1885
+ files;
1886
+ reports;
1433
1887
  /**
1434
1888
  * @param id id
1435
1889
  * @param created created
@@ -1506,6 +1960,21 @@ class VasInstructionJobModel extends VasBaseModel {
1506
1960
  * VasInstructionProviderModel
1507
1961
  */
1508
1962
  class VasInstructionProviderModel extends VasAccountObjectModel {
1963
+ id;
1964
+ created;
1965
+ serverCreated;
1966
+ createdBy;
1967
+ modified;
1968
+ serverModified;
1969
+ modifiedBy;
1970
+ createdByName;
1971
+ modifiedByName;
1972
+ account;
1973
+ form;
1974
+ title;
1975
+ secret;
1976
+ portalEnabled;
1977
+ portalVisible;
1509
1978
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, form, title, secret, portalEnabled, portalVisible) {
1510
1979
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
1511
1980
  this.id = id;
@@ -1570,6 +2039,18 @@ class VasInstructionProviderModel extends VasAccountObjectModel {
1570
2039
  * VasNoteModel
1571
2040
  */
1572
2041
  class VasInstructionModel extends VasAccountObjectModel {
2042
+ id;
2043
+ created;
2044
+ serverCreated;
2045
+ createdBy;
2046
+ modified;
2047
+ serverModified;
2048
+ modifiedBy;
2049
+ createdByName;
2050
+ modifiedByName;
2051
+ account;
2052
+ job;
2053
+ instructionProvider;
1573
2054
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, instructionProvider) {
1574
2055
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
1575
2056
  this.id = id;
@@ -1616,6 +2097,28 @@ class VasInstructionModel extends VasAccountObjectModel {
1616
2097
  }
1617
2098
 
1618
2099
  class VasJobEmailModel extends VasJobDataModel {
2100
+ id;
2101
+ created;
2102
+ serverCreated;
2103
+ createdBy;
2104
+ modified;
2105
+ serverModified;
2106
+ modifiedBy;
2107
+ createdByName;
2108
+ modifiedByName;
2109
+ account;
2110
+ job;
2111
+ body;
2112
+ cc;
2113
+ files;
2114
+ message;
2115
+ recipients;
2116
+ replyTo;
2117
+ reports;
2118
+ sender;
2119
+ sentTime;
2120
+ subject;
2121
+ succeeded;
1619
2122
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, body, cc, files, message, recipients, replyTo, reports, sender, sentTime, subject, succeeded) {
1620
2123
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
1621
2124
  this.id = id;
@@ -1672,25 +2175,30 @@ class VasJobEmailModel extends VasJobDataModel {
1672
2175
  }
1673
2176
  toApiDto(options) {
1674
2177
  return {
1675
- id: this.id,
2178
+ // id: this.id,
1676
2179
  created: this.created,
1677
- createdBy: this.createdBy,
1678
2180
  modified: this.modified,
1679
- account: this.account,
1680
- job: this.job,
1681
2181
  body: this.body,
1682
2182
  cc: this.cc,
1683
2183
  files: this.files,
1684
- message: this.message,
1685
2184
  recipients: this.recipients,
1686
- replyTo: this.replyTo,
1687
2185
  reports: this.reports,
1688
- sender: this.sender,
1689
- sentTime: this.sentTime,
1690
2186
  subject: this.subject,
1691
- succeeded: this.succeeded,
1692
2187
  };
1693
2188
  }
2189
+ static toApiPatchDto(item) {
2190
+ return only(item, [
2191
+ 'created',
2192
+ 'modified',
2193
+ 'body',
2194
+ 'cc',
2195
+ 'files',
2196
+ 'message',
2197
+ 'recipients',
2198
+ 'reports',
2199
+ 'subject',
2200
+ ]);
2201
+ }
1694
2202
  }
1695
2203
 
1696
2204
  /**
@@ -1777,7 +2285,37 @@ const isArrayString = (value) => {
1777
2285
  * JobModel
1778
2286
  */
1779
2287
  class VasJobModel extends VasRestrictedAccountObjectModel {
1780
- constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, reference, jobDate, jobStatus, jobType, assigneeId, formId, timeZoneOffset, pendingFields, childModified, version, fields, files, createdByDisplayName, modifiedByDisplayName, geoLocation) {
2288
+ id;
2289
+ created;
2290
+ serverCreated;
2291
+ createdBy;
2292
+ modified;
2293
+ serverModified;
2294
+ modifiedBy;
2295
+ createdByName;
2296
+ modifiedByName;
2297
+ account;
2298
+ accessGroup;
2299
+ reference;
2300
+ jobDate;
2301
+ jobStatus;
2302
+ jobType;
2303
+ assigneeId;
2304
+ formId;
2305
+ timeZoneOffset;
2306
+ pendingFields;
2307
+ childModified;
2308
+ version;
2309
+ createdByDisplayName;
2310
+ modifiedByDisplayName;
2311
+ geoLocation;
2312
+ files;
2313
+ fields;
2314
+ jobEmails;
2315
+ notes;
2316
+ reports;
2317
+ tasks;
2318
+ constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, reference, jobDate, jobStatus, jobType, assigneeId, formId, timeZoneOffset, pendingFields, childModified, version, createdByDisplayName, modifiedByDisplayName, geoLocation, files, fields, jobEmails, notes, reports, tasks) {
1781
2319
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
1782
2320
  this.id = id;
1783
2321
  this.created = created;
@@ -1800,11 +2338,15 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
1800
2338
  this.pendingFields = pendingFields;
1801
2339
  this.childModified = childModified;
1802
2340
  this.version = version;
1803
- this.fields = fields;
1804
- this.files = files;
1805
2341
  this.createdByDisplayName = createdByDisplayName;
1806
2342
  this.modifiedByDisplayName = modifiedByDisplayName;
1807
2343
  this.geoLocation = geoLocation;
2344
+ this.files = files;
2345
+ this.fields = fields;
2346
+ this.jobEmails = jobEmails;
2347
+ this.notes = notes;
2348
+ this.reports = reports;
2349
+ this.tasks = tasks;
1808
2350
  }
1809
2351
  /**
1810
2352
  * Returns this with the dynamic interface
@@ -1833,10 +2375,10 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
1833
2375
  * @return {VasJobModel}
1834
2376
  */
1835
2377
  static empty() {
1836
- return new VasJobModel('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', moment$1().utcOffset(), 0, '', 0, [], [], '', '', getEmptyGeoLocation());
2378
+ return new VasJobModel('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', moment$1().utcOffset(), 0, '', 0, '', '', getEmptyGeoLocation(), [], [], [], [], [], []);
1837
2379
  }
1838
2380
  static fromDto(dto) {
1839
- const model = new VasJobModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', dto.reference || '', dto.jobDate || '', dto.jobStatus || '', dto.jobType || '', dto.assigneeId || '', dto.formId || '', dto.timeZoneOffset || moment$1().utcOffset(), dto.pendingFields || 0, dto.childModified || '', dto.version || 0, dto.fields || [], dto.files || [], dto.createdByDisplayName || '', dto.modifiedByDisplayName || '', dto.geoLocation || getEmptyGeoLocation());
2381
+ const model = new VasJobModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', dto.reference || '', dto.jobDate || '', dto.jobStatus || '', dto.jobType || '', dto.assigneeId || '', dto.formId || dto.lastForm || '', dto.timeZoneOffset || moment$1().utcOffset(), dto.pendingFields || 0, dto.childModified || '', dto.version || 0, dto.createdByDisplayName || '', dto.modifiedByDisplayName || '', dto.geoLocation || getEmptyGeoLocation(), dto.files || [], dto.fields || [], dto.jobEmails || [], dto.notes || [], dto.reports || [], dto.tasks || []);
1840
2382
  const emptyKeys = model.staticProperties;
1841
2383
  Object
1842
2384
  .keys(dto)
@@ -1851,7 +2393,7 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
1851
2393
  *
1852
2394
  */
1853
2395
  static fromRelational(dto, form) {
1854
- const model = new VasJobModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', dto.reference || '', dto.jobDate || '', dto.jobStatus || '', dto.jobType || '', dto.assigneeId || '', dto.formId || '', dto.timeZoneOffset || moment$1().utcOffset(), dto.pendingFields || 0, dto.childModified || '', dto.version || 0, dto.fields || [], dto.files || [], dto.createdByDisplayName || '', dto.modifiedByDisplayName || '', dto.geoLocation || getEmptyGeoLocation());
2396
+ const model = new VasJobModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', dto.reference || '', dto.jobDate || '', dto.jobStatus || '', dto.jobType || '', dto.assigneeId || '', dto.formId || '', dto.timeZoneOffset || moment$1().utcOffset(), dto.pendingFields || 0, dto.childModified || '', dto.version || 0, dto.createdByDisplayName || '', dto.modifiedByDisplayName || '', dto.geoLocation || getEmptyGeoLocation(), dto.files || [], dto.fields || [], dto.jobEmails || [], dto.notes || [], dto.reports || [], dto.tasks || []);
1855
2397
  form.groups
1856
2398
  .forEach(group => {
1857
2399
  group.controls
@@ -1875,7 +2417,7 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
1875
2417
  .forEach(group => {
1876
2418
  group.controls.forEach(control => {
1877
2419
  (fields)[control.reportTemplateName] =
1878
- this.getValueByPath([group.name, control.name]);
2420
+ this.getValueByPath([group.name, control.name]) || null;
1879
2421
  });
1880
2422
  });
1881
2423
  return fields;
@@ -1896,7 +2438,8 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
1896
2438
  Object
1897
2439
  .keys(this.$this[groupName])
1898
2440
  .forEach(controlName => {
1899
- fields[controlName] = this.getValueByPath([groupName, controlName]);
2441
+ fields[controlName] =
2442
+ this.getValueByPath([groupName, controlName]) || null;
1900
2443
  });
1901
2444
  }, {});
1902
2445
  this.fields.forEach(field => fields[field.controlName] = field.value);
@@ -2134,11 +2677,15 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
2134
2677
  pendingFields: this.pendingFields,
2135
2678
  childModified: this.childModified,
2136
2679
  version: this.version,
2137
- fields: this.fields,
2138
- files: this.files,
2139
2680
  createdByDisplayName: this.createdByDisplayName,
2140
2681
  modifiedByDisplayName: this.modifiedByDisplayName,
2141
- geoLocation: this.geoLocation
2682
+ geoLocation: this.geoLocation,
2683
+ files: this.files,
2684
+ fields: this.fields,
2685
+ jobEmails: this.jobEmails,
2686
+ notes: this.notes,
2687
+ reports: this.reports,
2688
+ tasks: this.tasks,
2142
2689
  };
2143
2690
  }
2144
2691
  const dto = {};
@@ -2178,6 +2725,7 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
2178
2725
  if (!value || typeof value !== 'string') {
2179
2726
  return '';
2180
2727
  }
2728
+ const fields = this.getFields2();
2181
2729
  return value.replace(/({[^}]*})/g, (match, token) => {
2182
2730
  const syntax = token.substring(1, token.length - 1);
2183
2731
  let [key, filter] = syntax.split('|');
@@ -2204,7 +2752,7 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
2204
2752
  result = (this.getValueByPath(path) || '').toString();
2205
2753
  }
2206
2754
  else if (objectKey === 'fields') {
2207
- result = (getValueByPath(['fields.' + path.shift(), ...path], this.getFields2()) || '').toString();
2755
+ result = (getValueByPath(['fields.' + path.shift(), ...path], fields) || '').toString();
2208
2756
  }
2209
2757
  else if (objectKey.length) {
2210
2758
  if (options.objects) {
@@ -2228,9 +2776,14 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
2228
2776
  if (filterName && result) {
2229
2777
  switch (filterName) {
2230
2778
  case 'date': {
2231
- return moment$1(result)
2232
- .utcOffset(options.timeZoneOffset)
2233
- .format(filterArg || '');
2779
+ if (!options.timeZoneOffset) {
2780
+ return moment$1(result).format(filterArg || '');
2781
+ }
2782
+ else {
2783
+ return moment$1(result)
2784
+ .utcOffset(options.timeZoneOffset)
2785
+ .format(filterArg || '');
2786
+ }
2234
2787
  }
2235
2788
  default: {
2236
2789
  console.warn('unknown filter %s', filterName);
@@ -2258,12 +2811,146 @@ class VasJobModel extends VasRestrictedAccountObjectModel {
2258
2811
  lastForm: this.formId || '~'
2259
2812
  };
2260
2813
  }
2814
+ static toApiPatchDto(item) {
2815
+ return only(item, [
2816
+ 'created',
2817
+ 'modified',
2818
+ 'reference',
2819
+ 'jobDate',
2820
+ 'jobType',
2821
+ 'accessGroup',
2822
+ 'jobStatus',
2823
+ 'assigneeId',
2824
+ 'timeZoneOffset',
2825
+ 'pendingFields',
2826
+ 'lastForm'
2827
+ ]);
2828
+ }
2829
+ }
2830
+
2831
+ const isJobAutomationStep = (step) => {
2832
+ return step && step.type === 'automation';
2833
+ };
2834
+ const isJobControlsStep = (step) => {
2835
+ return step && step.type === 'controls';
2836
+ };
2837
+ const isJobEmailFormStep = (step) => {
2838
+ return step && step.type === 'email-form';
2839
+ };
2840
+ const isJobSetJobStatusStep = (step) => {
2841
+ return step && step.type === 'set-job-status';
2842
+ };
2843
+
2844
+ /**
2845
+ * VasLookupModel
2846
+ */
2847
+ class VasLookupModel extends VasRestrictedAccountObjectModel {
2848
+ id;
2849
+ created;
2850
+ serverCreated;
2851
+ createdBy;
2852
+ modified;
2853
+ serverModified;
2854
+ modifiedBy;
2855
+ createdByName;
2856
+ modifiedByName;
2857
+ account;
2858
+ accessGroup;
2859
+ content;
2860
+ lookupType;
2861
+ sequence;
2862
+ title;
2863
+ constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, content, lookupType, sequence, title) {
2864
+ super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
2865
+ this.id = id;
2866
+ this.created = created;
2867
+ this.serverCreated = serverCreated;
2868
+ this.createdBy = createdBy;
2869
+ this.modified = modified;
2870
+ this.serverModified = serverModified;
2871
+ this.modifiedBy = modifiedBy;
2872
+ this.createdByName = createdByName;
2873
+ this.modifiedByName = modifiedByName;
2874
+ this.account = account;
2875
+ this.accessGroup = accessGroup;
2876
+ this.content = content;
2877
+ this.lookupType = lookupType;
2878
+ this.sequence = sequence;
2879
+ this.title = title;
2880
+ }
2881
+ /**
2882
+ * @param dto VasLookupDto
2883
+ * @return VasLookupModel
2884
+ */
2885
+ static fromDto(dto) {
2886
+ return new VasLookupModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.accessGroup || '', dto.content || '', dto.lookupType || '', dto.sequence || 0, dto.title || '');
2887
+ }
2888
+ /**
2889
+ * @returns VasLookupDto
2890
+ */
2891
+ toDto() {
2892
+ return {
2893
+ id: this.id,
2894
+ created: this.created,
2895
+ serverCreated: this.serverCreated,
2896
+ createdBy: this.createdBy,
2897
+ modified: this.modified,
2898
+ serverModified: this.serverModified,
2899
+ modifiedBy: this.modifiedBy,
2900
+ createdByName: this.createdByName,
2901
+ modifiedByName: this.modifiedByName,
2902
+ account: this.account,
2903
+ accessGroup: this.accessGroup,
2904
+ content: this.content,
2905
+ lookupType: this.lookupType,
2906
+ sequence: this.sequence,
2907
+ title: this.title,
2908
+ };
2909
+ }
2910
+ toApiDto(options) {
2911
+ return {
2912
+ ...super.toApiDto(options),
2913
+ content: this.content || '',
2914
+ lookupType: this.lookupType || '~',
2915
+ sequence: Number.isSafeInteger(this.sequence) || 0,
2916
+ title: this.title || '',
2917
+ };
2918
+ }
2919
+ static toApiPatchDto(item) {
2920
+ return only(item, [
2921
+ 'created',
2922
+ 'modified',
2923
+ 'accessGroup',
2924
+ 'lookupType',
2925
+ 'title',
2926
+ 'content',
2927
+ 'sequence'
2928
+ ]);
2929
+ }
2261
2930
  }
2262
2931
 
2263
2932
  /**
2264
2933
  * VasMembershipModel
2265
2934
  */
2266
2935
  class VasMembershipModel extends VasAccountObjectModel {
2936
+ id;
2937
+ created;
2938
+ serverCreated;
2939
+ createdBy;
2940
+ modified;
2941
+ serverModified;
2942
+ modifiedBy;
2943
+ createdByName;
2944
+ modifiedByName;
2945
+ account;
2946
+ user;
2947
+ admin;
2948
+ lookupTypes;
2949
+ contactTypes;
2950
+ accessGroups;
2951
+ jobStatuses;
2952
+ jobTypes;
2953
+ taskTypes;
2267
2954
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, user, admin, lookupTypes, contactTypes, accessGroups, jobStatuses, jobTypes, taskTypes) {
2268
2955
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
2269
2956
  this.id = id;
@@ -2321,6 +3008,21 @@ class VasMembershipModel extends VasAccountObjectModel {
2321
3008
  }
2322
3009
 
2323
3010
  class VasReportLayoutModel extends VasRestrictedAccountObjectModel {
3011
+ id;
3012
+ created;
3013
+ serverCreated;
3014
+ createdBy;
3015
+ modified;
3016
+ serverModified;
3017
+ modifiedBy;
3018
+ createdByName;
3019
+ modifiedByName;
3020
+ account;
3021
+ accessGroup;
3022
+ jobType;
3023
+ title;
3024
+ description;
3025
+ entryPoint;
2324
3026
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup, jobType, title, description, entryPoint) {
2325
3027
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, accessGroup);
2326
3028
  this.id = id;
@@ -2342,6 +3044,21 @@ class VasReportLayoutModel extends VasRestrictedAccountObjectModel {
2342
3044
  }
2343
3045
 
2344
3046
  class VasReportRequestModel extends VasAccountObjectModel {
3047
+ id;
3048
+ created;
3049
+ serverCreated;
3050
+ createdBy;
3051
+ modified;
3052
+ serverModified;
3053
+ modifiedBy;
3054
+ createdByName;
3055
+ modifiedByName;
3056
+ account;
3057
+ error;
3058
+ jobId;
3059
+ title;
3060
+ url;
3061
+ reportId;
2345
3062
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, error, jobId, title, url, reportId) {
2346
3063
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
2347
3064
  this.id = id;
@@ -2384,7 +3101,117 @@ class VasReportRequestModel extends VasAccountObjectModel {
2384
3101
  }
2385
3102
  }
2386
3103
 
3104
+ /**
3105
+ * VasTaskModel
3106
+ */
3107
+ class VasTaskModel extends VasJobDataModel {
3108
+ id;
3109
+ created;
3110
+ serverCreated;
3111
+ createdBy;
3112
+ modified;
3113
+ serverModified;
3114
+ modifiedBy;
3115
+ createdByName;
3116
+ modifiedByName;
3117
+ account;
3118
+ job;
3119
+ assignee;
3120
+ done;
3121
+ dueDate;
3122
+ taskType;
3123
+ title;
3124
+ jobReference;
3125
+ constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job, assignee, done, dueDate, taskType, title, jobReference) {
3126
+ super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, job);
3127
+ this.id = id;
3128
+ this.created = created;
3129
+ this.serverCreated = serverCreated;
3130
+ this.createdBy = createdBy;
3131
+ this.modified = modified;
3132
+ this.serverModified = serverModified;
3133
+ this.modifiedBy = modifiedBy;
3134
+ this.createdByName = createdByName;
3135
+ this.modifiedByName = modifiedByName;
3136
+ this.account = account;
3137
+ this.job = job;
3138
+ this.assignee = assignee;
3139
+ this.done = done;
3140
+ this.dueDate = dueDate;
3141
+ this.taskType = taskType;
3142
+ this.title = title;
3143
+ this.jobReference = jobReference;
3144
+ }
3145
+ /**
3146
+ * @param dto VasTaskDto
3147
+ * @return VasNoteModel
3148
+ */
3149
+ static fromDto(dto) {
3150
+ return new VasTaskModel(dto.id || '', dto.created || '', dto.serverCreated || '', dto.createdBy || '', dto.modified || '', dto.serverModified || '', dto.modifiedBy || '', dto.createdByName || '', dto.modifiedByName || '', dto.account || '', dto.job || '', dto.assignee || '', dto.done || false, dto.dueDate || '', dto.taskType || '', dto.title || '', dto.jobReference || '');
3151
+ }
3152
+ /**
3153
+ * @returns VasTaskDto
3154
+ */
3155
+ toDto() {
3156
+ return {
3157
+ id: this.id,
3158
+ created: this.created,
3159
+ serverCreated: this.serverCreated,
3160
+ createdBy: this.createdBy,
3161
+ modified: this.modified,
3162
+ serverModified: this.serverModified,
3163
+ modifiedBy: this.modifiedBy,
3164
+ createdByName: this.createdByName,
3165
+ modifiedByName: this.modifiedByName,
3166
+ account: this.account,
3167
+ job: this.job,
3168
+ assignee: this.assignee,
3169
+ done: this.done,
3170
+ dueDate: this.dueDate,
3171
+ taskType: this.taskType,
3172
+ title: this.title,
3173
+ jobReference: this.jobReference
3174
+ };
3175
+ }
3176
+ toApiDto(options) {
3177
+ return {
3178
+ ...super.toApiDto(options),
3179
+ assignee: this.assignee,
3180
+ done: this.done,
3181
+ dueDate: this.dueDate,
3182
+ taskType: this.taskType,
3183
+ title: this.title,
3184
+ };
3185
+ }
3186
+ static toApiPatchDto(item) {
3187
+ return only(item, [
3188
+ 'created',
3189
+ 'modified',
3190
+ 'assignee',
3191
+ 'done',
3192
+ 'dueDate',
3193
+ 'taskType',
3194
+ 'title'
3195
+ ]);
3196
+ }
3197
+ }
3198
+
2387
3199
  class VasVehicleModel extends VasAccountObjectModel {
3200
+ id;
3201
+ created;
3202
+ serverCreated;
3203
+ createdBy;
3204
+ modified;
3205
+ serverModified;
3206
+ modifiedBy;
3207
+ createdByName;
3208
+ modifiedByName;
3209
+ account;
3210
+ registration;
3211
+ make;
3212
+ model;
3213
+ archived;
3214
+ description;
2388
3215
  constructor(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account, registration, make, model, archived, description) {
2389
3216
  super(id, created, serverCreated, createdBy, modified, serverModified, modifiedBy, createdByName, modifiedByName, account);
2390
3217
  this.id = id;
@@ -2438,11 +3265,22 @@ class VasVehicleModel extends VasAccountObjectModel {
2438
3265
  description: this.description
2439
3266
  };
2440
3267
  }
3268
+ static toApiPatchDto(dto) {
3269
+ return only(dto, [
3270
+ 'created',
3271
+ 'modified',
3272
+ 'registration',
3273
+ 'make',
3274
+ 'model',
3275
+ 'description',
3276
+ 'archived'
3277
+ ]);
3278
+ }
2441
3279
  }
2442
3280
 
2443
3281
  /**
2444
3282
  * Generated bundle index. Do not edit.
2445
3283
  */
2446
3284
 
2447
- export { VasAccountIndexingMode, VasAccountObjectModel, VasBaseModel, VasBranchModel, VasContactModel, VasControlConfigDirection, VasControlModel, VasControlTypeModel, VasFieldModel, VasFileModel, VasFireUserModel, VasFormConfigModel, VasFormModel, VasGroupModel, VasInstructionJobFieldModel, VasInstructionJobModel, VasInstructionModel, VasInstructionProviderModel, VasInvitationModel, VasInvitationTypeEnum, VasJobDataModel, VasJobEmailModel, VasJobModel, VasMembershipModel, VasNoteModel, VasReportLayoutModel, VasReportModel, VasReportRequestModel, VasRestrictedAccountObjectModel, VasUserModel, VasVehicleModel, getEmptyGeoLocation, isCameraControlValueV1, isFileDto };
3285
+ export { VasAccountIndexingMode, VasAccountObjectModel, VasBaseModel, VasBranchModel, VasContactModel, VasControlConfigDirection, VasControlModel, VasControlTypeModel, VasFieldModel, VasFileModel, VasFireUserModel, VasFormConfigModel, VasFormModel, VasGroupModel, VasInstructionJobFieldModel, VasInstructionJobModel, VasInstructionModel, VasInstructionProviderModel, VasInvitationModel, VasInvitationTypeEnum, VasJobDataModel, VasJobEmailModel, VasJobModel, VasLookupModel, VasMembershipModel, VasNoteModel, VasReportLayoutModel, VasReportModel, VasReportRequestModel, VasRestrictedAccountObjectModel, VasTaskModel, VasUserModel, VasVehicleModel, getEmptyGeoLocation, isCameraControlValueV1, isFileDto, isJobAutomationStep, isJobControlsStep, isJobEmailFormStep, isJobSetJobStatusStep, prepareFieldApiValue };
2448
3286
  //# sourceMappingURL=ironcode-vas-lib.mjs.map