@defra/forms-model 3.0.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 (336) hide show
  1. package/LICENCE +8 -0
  2. package/README.md +22 -0
  3. package/dist/browser/components/component-types.d.ts +3 -0
  4. package/dist/browser/components/component-types.d.ts.map +1 -0
  5. package/dist/browser/components/component-types.js +220 -0
  6. package/dist/browser/components/component-types.js.map +1 -0
  7. package/dist/browser/components/conditional-component-types.d.ts +3 -0
  8. package/dist/browser/components/conditional-component-types.d.ts.map +1 -0
  9. package/dist/browser/components/conditional-component-types.js +28 -0
  10. package/dist/browser/components/conditional-component-types.js.map +1 -0
  11. package/dist/browser/components/index.d.ts +4 -0
  12. package/dist/browser/components/index.d.ts.map +1 -0
  13. package/dist/browser/components/index.js +45 -0
  14. package/dist/browser/components/index.js.map +1 -0
  15. package/dist/browser/components/types.d.ts +244 -0
  16. package/dist/browser/components/types.d.ts.map +1 -0
  17. package/dist/browser/components/types.js +56 -0
  18. package/dist/browser/components/types.js.map +1 -0
  19. package/dist/browser/conditions/condition-abstract.d.ts +16 -0
  20. package/dist/browser/conditions/condition-abstract.d.ts.map +1 -0
  21. package/dist/browser/conditions/condition-abstract.js +62 -0
  22. package/dist/browser/conditions/condition-abstract.js.map +1 -0
  23. package/dist/browser/conditions/condition-field.d.ts +13 -0
  24. package/dist/browser/conditions/condition-field.d.ts.map +1 -0
  25. package/dist/browser/conditions/condition-field.js +45 -0
  26. package/dist/browser/conditions/condition-field.js.map +1 -0
  27. package/dist/browser/conditions/condition-group-def.d.ts +10 -0
  28. package/dist/browser/conditions/condition-group-def.d.ts.map +1 -0
  29. package/dist/browser/conditions/condition-group-def.js +45 -0
  30. package/dist/browser/conditions/condition-group-def.js.map +1 -0
  31. package/dist/browser/conditions/condition-group.d.ts +15 -0
  32. package/dist/browser/conditions/condition-group.d.ts.map +1 -0
  33. package/dist/browser/conditions/condition-group.js +64 -0
  34. package/dist/browser/conditions/condition-group.js.map +1 -0
  35. package/dist/browser/conditions/condition-model.d.ts +41 -0
  36. package/dist/browser/conditions/condition-model.d.ts.map +1 -0
  37. package/dist/browser/conditions/condition-model.js +214 -0
  38. package/dist/browser/conditions/condition-model.js.map +1 -0
  39. package/dist/browser/conditions/condition-operators.d.ts +248 -0
  40. package/dist/browser/conditions/condition-operators.d.ts.map +1 -0
  41. package/dist/browser/conditions/condition-operators.js +132 -0
  42. package/dist/browser/conditions/condition-operators.js.map +1 -0
  43. package/dist/browser/conditions/condition-ref.d.ts +12 -0
  44. package/dist/browser/conditions/condition-ref.d.ts.map +1 -0
  45. package/dist/browser/conditions/condition-ref.js +51 -0
  46. package/dist/browser/conditions/condition-ref.js.map +1 -0
  47. package/dist/browser/conditions/condition-value-abstract.d.ts +8 -0
  48. package/dist/browser/conditions/condition-value-abstract.d.ts.map +1 -0
  49. package/dist/browser/conditions/condition-value-abstract.js +41 -0
  50. package/dist/browser/conditions/condition-value-abstract.js.map +1 -0
  51. package/dist/browser/conditions/condition-value-registration.d.ts +10 -0
  52. package/dist/browser/conditions/condition-value-registration.d.ts.map +1 -0
  53. package/dist/browser/conditions/condition-value-registration.js +37 -0
  54. package/dist/browser/conditions/condition-value-registration.js.map +1 -0
  55. package/dist/browser/conditions/condition-values.d.ts +38 -0
  56. package/dist/browser/conditions/condition-values.d.ts.map +1 -0
  57. package/dist/browser/conditions/condition-values.js +127 -0
  58. package/dist/browser/conditions/condition-values.js.map +1 -0
  59. package/dist/browser/conditions/condition.d.ts +15 -0
  60. package/dist/browser/conditions/condition.d.ts.map +1 -0
  61. package/dist/browser/conditions/condition.js +56 -0
  62. package/dist/browser/conditions/condition.js.map +1 -0
  63. package/dist/browser/conditions/helpers.d.ts +3 -0
  64. package/dist/browser/conditions/helpers.d.ts.map +1 -0
  65. package/dist/browser/conditions/helpers.js +26 -0
  66. package/dist/browser/conditions/helpers.js.map +1 -0
  67. package/dist/browser/conditions/index.d.ts +11 -0
  68. package/dist/browser/conditions/index.d.ts.map +1 -0
  69. package/dist/browser/conditions/index.js +144 -0
  70. package/dist/browser/conditions/index.js.map +1 -0
  71. package/dist/browser/conditions/inline-condition-model.d.ts +86 -0
  72. package/dist/browser/conditions/inline-condition-model.d.ts.map +1 -0
  73. package/dist/browser/conditions/inline-condition-model.js +418 -0
  74. package/dist/browser/conditions/inline-condition-model.js.map +1 -0
  75. package/dist/browser/conditions/inline-condition-operators.d.ts +175 -0
  76. package/dist/browser/conditions/inline-condition-operators.d.ts.map +1 -0
  77. package/dist/browser/conditions/inline-condition-operators.js +132 -0
  78. package/dist/browser/conditions/inline-condition-operators.js.map +1 -0
  79. package/dist/browser/conditions/inline-condition-values.d.ts +93 -0
  80. package/dist/browser/conditions/inline-condition-values.d.ts.map +1 -0
  81. package/dist/browser/conditions/inline-condition-values.js +159 -0
  82. package/dist/browser/conditions/inline-condition-values.js.map +1 -0
  83. package/dist/browser/conditions/types.d.ts +38 -0
  84. package/dist/browser/conditions/types.d.ts.map +1 -0
  85. package/dist/browser/conditions/types.js +24 -0
  86. package/dist/browser/conditions/types.js.map +1 -0
  87. package/dist/browser/data-model/conditions-wrapper.d.ts +19 -0
  88. package/dist/browser/data-model/conditions-wrapper.d.ts.map +1 -0
  89. package/dist/browser/data-model/conditions-wrapper.js +49 -0
  90. package/dist/browser/data-model/conditions-wrapper.js.map +1 -0
  91. package/dist/browser/data-model/index.d.ts +4 -0
  92. package/dist/browser/data-model/index.d.ts.map +1 -0
  93. package/dist/browser/data-model/index.js +66 -0
  94. package/dist/browser/data-model/index.js.map +1 -0
  95. package/dist/browser/data-model/input-wrapper.d.ts +16 -0
  96. package/dist/browser/data-model/input-wrapper.d.ts.map +1 -0
  97. package/dist/browser/data-model/input-wrapper.js +49 -0
  98. package/dist/browser/data-model/input-wrapper.js.map +1 -0
  99. package/dist/browser/data-model/types.d.ts +153 -0
  100. package/dist/browser/data-model/types.d.ts.map +1 -0
  101. package/dist/browser/data-model/types.js +34 -0
  102. package/dist/browser/data-model/types.js.map +1 -0
  103. package/dist/browser/form/form-configuration.d.ts +8 -0
  104. package/dist/browser/form/form-configuration.d.ts.map +1 -0
  105. package/dist/browser/form/form-configuration.js +38 -0
  106. package/dist/browser/form/form-configuration.js.map +1 -0
  107. package/dist/browser/form/index.d.ts +2 -0
  108. package/dist/browser/form/index.d.ts.map +1 -0
  109. package/dist/browser/form/index.js +24 -0
  110. package/dist/browser/form/index.js.map +1 -0
  111. package/dist/browser/index.d.ts +12 -0
  112. package/dist/browser/index.d.ts.map +1 -0
  113. package/dist/browser/index.js +138 -0
  114. package/dist/browser/index.js.map +1 -0
  115. package/dist/browser/migration/index.d.ts +2 -0
  116. package/dist/browser/migration/index.d.ts.map +1 -0
  117. package/dist/browser/migration/index.js +24 -0
  118. package/dist/browser/migration/index.js.map +1 -0
  119. package/dist/browser/migration/migration.0-2.d.ts +3 -0
  120. package/dist/browser/migration/migration.0-2.d.ts.map +1 -0
  121. package/dist/browser/migration/migration.0-2.js +65 -0
  122. package/dist/browser/migration/migration.0-2.js.map +1 -0
  123. package/dist/browser/migration/migration.1-2.d.ts +3 -0
  124. package/dist/browser/migration/migration.1-2.d.ts.map +1 -0
  125. package/dist/browser/migration/migration.1-2.js +108 -0
  126. package/dist/browser/migration/migration.1-2.js.map +1 -0
  127. package/dist/browser/migration/types.d.ts +2 -0
  128. package/dist/browser/migration/types.d.ts.map +1 -0
  129. package/dist/browser/migration/types.js +16 -0
  130. package/dist/browser/migration/types.js.map +1 -0
  131. package/dist/browser/migration/whichMigrations.d.ts +7 -0
  132. package/dist/browser/migration/whichMigrations.d.ts.map +1 -0
  133. package/dist/browser/migration/whichMigrations.js +38 -0
  134. package/dist/browser/migration/whichMigrations.js.map +1 -0
  135. package/dist/browser/schema/index.d.ts +2 -0
  136. package/dist/browser/schema/index.d.ts.map +1 -0
  137. package/dist/browser/schema/index.js +30 -0
  138. package/dist/browser/schema/index.js.map +1 -0
  139. package/dist/browser/schema/schema.d.ts +20 -0
  140. package/dist/browser/schema/schema.d.ts.map +1 -0
  141. package/dist/browser/schema/schema.js +255 -0
  142. package/dist/browser/schema/schema.js.map +1 -0
  143. package/dist/browser/utils/helpers.d.ts +9 -0
  144. package/dist/browser/utils/helpers.d.ts.map +1 -0
  145. package/dist/browser/utils/helpers.js +48 -0
  146. package/dist/browser/utils/helpers.js.map +1 -0
  147. package/dist/browser/utils/logger.d.ts +11 -0
  148. package/dist/browser/utils/logger.d.ts.map +1 -0
  149. package/dist/browser/utils/logger.js +46 -0
  150. package/dist/browser/utils/logger.js.map +1 -0
  151. package/dist/module/components/component-types.d.ts +3 -0
  152. package/dist/module/components/component-types.d.ts.map +1 -0
  153. package/dist/module/components/component-types.js +206 -0
  154. package/dist/module/components/component-types.js.map +1 -0
  155. package/dist/module/components/conditional-component-types.d.ts +3 -0
  156. package/dist/module/components/conditional-component-types.d.ts.map +1 -0
  157. package/dist/module/components/conditional-component-types.js +14 -0
  158. package/dist/module/components/conditional-component-types.js.map +1 -0
  159. package/dist/module/components/index.d.ts +4 -0
  160. package/dist/module/components/index.d.ts.map +1 -0
  161. package/dist/module/components/index.js +34 -0
  162. package/dist/module/components/index.js.map +1 -0
  163. package/dist/module/components/types.d.ts +244 -0
  164. package/dist/module/components/types.d.ts.map +1 -0
  165. package/dist/module/components/types.js +42 -0
  166. package/dist/module/components/types.js.map +1 -0
  167. package/dist/module/conditions/condition-abstract.d.ts +16 -0
  168. package/dist/module/conditions/condition-abstract.d.ts.map +1 -0
  169. package/dist/module/conditions/condition-abstract.js +45 -0
  170. package/dist/module/conditions/condition-abstract.js.map +1 -0
  171. package/dist/module/conditions/condition-field.d.ts +13 -0
  172. package/dist/module/conditions/condition-field.d.ts.map +1 -0
  173. package/dist/module/conditions/condition-field.js +26 -0
  174. package/dist/module/conditions/condition-field.js.map +1 -0
  175. package/dist/module/conditions/condition-group-def.d.ts +10 -0
  176. package/dist/module/conditions/condition-group-def.d.ts.map +1 -0
  177. package/dist/module/conditions/condition-group-def.js +26 -0
  178. package/dist/module/conditions/condition-group-def.js.map +1 -0
  179. package/dist/module/conditions/condition-group.d.ts +15 -0
  180. package/dist/module/conditions/condition-group.d.ts.map +1 -0
  181. package/dist/module/conditions/condition-group.js +47 -0
  182. package/dist/module/conditions/condition-group.js.map +1 -0
  183. package/dist/module/conditions/condition-model.d.ts +41 -0
  184. package/dist/module/conditions/condition-model.d.ts.map +1 -0
  185. package/dist/module/conditions/condition-model.js +199 -0
  186. package/dist/module/conditions/condition-model.js.map +1 -0
  187. package/dist/module/conditions/condition-operators.d.ts +248 -0
  188. package/dist/module/conditions/condition-operators.d.ts.map +1 -0
  189. package/dist/module/conditions/condition-operators.js +119 -0
  190. package/dist/module/conditions/condition-operators.js.map +1 -0
  191. package/dist/module/conditions/condition-ref.d.ts +12 -0
  192. package/dist/module/conditions/condition-ref.d.ts.map +1 -0
  193. package/dist/module/conditions/condition-ref.js +33 -0
  194. package/dist/module/conditions/condition-ref.js.map +1 -0
  195. package/dist/module/conditions/condition-value-abstract.d.ts +8 -0
  196. package/dist/module/conditions/condition-value-abstract.d.ts.map +1 -0
  197. package/dist/module/conditions/condition-value-abstract.js +24 -0
  198. package/dist/module/conditions/condition-value-abstract.js.map +1 -0
  199. package/dist/module/conditions/condition-value-registration.d.ts +10 -0
  200. package/dist/module/conditions/condition-value-registration.d.ts.map +1 -0
  201. package/dist/module/conditions/condition-value-registration.js +19 -0
  202. package/dist/module/conditions/condition-value-registration.js.map +1 -0
  203. package/dist/module/conditions/condition-values.d.ts +38 -0
  204. package/dist/module/conditions/condition-values.d.ts.map +1 -0
  205. package/dist/module/conditions/condition-values.js +106 -0
  206. package/dist/module/conditions/condition-values.js.map +1 -0
  207. package/dist/module/conditions/condition.d.ts +15 -0
  208. package/dist/module/conditions/condition.d.ts.map +1 -0
  209. package/dist/module/conditions/condition.js +40 -0
  210. package/dist/module/conditions/condition.js.map +1 -0
  211. package/dist/module/conditions/helpers.d.ts +3 -0
  212. package/dist/module/conditions/helpers.d.ts.map +1 -0
  213. package/dist/module/conditions/helpers.js +12 -0
  214. package/dist/module/conditions/helpers.js.map +1 -0
  215. package/dist/module/conditions/index.d.ts +11 -0
  216. package/dist/module/conditions/index.d.ts.map +1 -0
  217. package/dist/module/conditions/index.js +140 -0
  218. package/dist/module/conditions/index.js.map +1 -0
  219. package/dist/module/conditions/inline-condition-model.d.ts +86 -0
  220. package/dist/module/conditions/inline-condition-model.d.ts.map +1 -0
  221. package/dist/module/conditions/inline-condition-model.js +384 -0
  222. package/dist/module/conditions/inline-condition-model.js.map +1 -0
  223. package/dist/module/conditions/inline-condition-operators.d.ts +175 -0
  224. package/dist/module/conditions/inline-condition-operators.d.ts.map +1 -0
  225. package/dist/module/conditions/inline-condition-operators.js +119 -0
  226. package/dist/module/conditions/inline-condition-operators.js.map +1 -0
  227. package/dist/module/conditions/inline-condition-values.d.ts +93 -0
  228. package/dist/module/conditions/inline-condition-values.d.ts.map +1 -0
  229. package/dist/module/conditions/inline-condition-values.js +134 -0
  230. package/dist/module/conditions/inline-condition-values.js.map +1 -0
  231. package/dist/module/conditions/types.d.ts +38 -0
  232. package/dist/module/conditions/types.d.ts.map +1 -0
  233. package/dist/module/conditions/types.js +10 -0
  234. package/dist/module/conditions/types.js.map +1 -0
  235. package/dist/module/data-model/conditions-wrapper.d.ts +19 -0
  236. package/dist/module/data-model/conditions-wrapper.d.ts.map +1 -0
  237. package/dist/module/data-model/conditions-wrapper.js +30 -0
  238. package/dist/module/data-model/conditions-wrapper.js.map +1 -0
  239. package/dist/module/data-model/index.d.ts +4 -0
  240. package/dist/module/data-model/index.d.ts.map +1 -0
  241. package/dist/module/data-model/index.js +55 -0
  242. package/dist/module/data-model/index.js.map +1 -0
  243. package/dist/module/data-model/input-wrapper.d.ts +16 -0
  244. package/dist/module/data-model/input-wrapper.d.ts.map +1 -0
  245. package/dist/module/data-model/input-wrapper.js +25 -0
  246. package/dist/module/data-model/input-wrapper.js.map +1 -0
  247. package/dist/module/data-model/types.d.ts +153 -0
  248. package/dist/module/data-model/types.d.ts.map +1 -0
  249. package/dist/module/data-model/types.js +20 -0
  250. package/dist/module/data-model/types.js.map +1 -0
  251. package/dist/module/form/form-configuration.d.ts +8 -0
  252. package/dist/module/form/form-configuration.d.ts.map +1 -0
  253. package/dist/module/form/form-configuration.js +17 -0
  254. package/dist/module/form/form-configuration.js.map +1 -0
  255. package/dist/module/form/index.d.ts +2 -0
  256. package/dist/module/form/index.d.ts.map +1 -0
  257. package/dist/module/form/index.js +11 -0
  258. package/dist/module/form/index.js.map +1 -0
  259. package/dist/module/index.d.ts +12 -0
  260. package/dist/module/index.d.ts.map +1 -0
  261. package/dist/module/index.js +135 -0
  262. package/dist/module/index.js.map +1 -0
  263. package/dist/module/migration/index.d.ts +2 -0
  264. package/dist/module/migration/index.d.ts.map +1 -0
  265. package/dist/module/migration/index.js +11 -0
  266. package/dist/module/migration/index.js.map +1 -0
  267. package/dist/module/migration/migration.0-2.d.ts +3 -0
  268. package/dist/module/migration/migration.0-2.d.ts.map +1 -0
  269. package/dist/module/migration/migration.0-2.js +42 -0
  270. package/dist/module/migration/migration.0-2.js.map +1 -0
  271. package/dist/module/migration/migration.1-2.d.ts +3 -0
  272. package/dist/module/migration/migration.1-2.d.ts.map +1 -0
  273. package/dist/module/migration/migration.1-2.js +90 -0
  274. package/dist/module/migration/migration.1-2.js.map +1 -0
  275. package/dist/module/migration/types.d.ts +2 -0
  276. package/dist/module/migration/types.d.ts.map +1 -0
  277. package/dist/module/migration/types.js +1 -0
  278. package/dist/module/migration/types.js.map +1 -0
  279. package/dist/module/migration/whichMigrations.d.ts +7 -0
  280. package/dist/module/migration/whichMigrations.d.ts.map +1 -0
  281. package/dist/module/migration/whichMigrations.js +26 -0
  282. package/dist/module/migration/whichMigrations.js.map +1 -0
  283. package/dist/module/schema/index.d.ts +2 -0
  284. package/dist/module/schema/index.d.ts.map +1 -0
  285. package/dist/module/schema/index.js +17 -0
  286. package/dist/module/schema/index.js.map +1 -0
  287. package/dist/module/schema/schema.d.ts +20 -0
  288. package/dist/module/schema/schema.d.ts.map +1 -0
  289. package/dist/module/schema/schema.js +239 -0
  290. package/dist/module/schema/schema.js.map +1 -0
  291. package/dist/module/utils/helpers.d.ts +9 -0
  292. package/dist/module/utils/helpers.d.ts.map +1 -0
  293. package/dist/module/utils/helpers.js +35 -0
  294. package/dist/module/utils/helpers.js.map +1 -0
  295. package/dist/module/utils/logger.d.ts +11 -0
  296. package/dist/module/utils/logger.d.ts.map +1 -0
  297. package/dist/module/utils/logger.js +27 -0
  298. package/dist/module/utils/logger.js.map +1 -0
  299. package/package.json +35 -0
  300. package/src/components/component-types.ts +229 -0
  301. package/src/components/conditional-component-types.ts +14 -0
  302. package/src/components/index.ts +3 -0
  303. package/src/components/types.ts +362 -0
  304. package/src/conditions/condition-abstract.ts +59 -0
  305. package/src/conditions/condition-field.ts +29 -0
  306. package/src/conditions/condition-group-def.ts +29 -0
  307. package/src/conditions/condition-group.ts +61 -0
  308. package/src/conditions/condition-model.ts +314 -0
  309. package/src/conditions/condition-operators.ts +176 -0
  310. package/src/conditions/condition-ref.ts +47 -0
  311. package/src/conditions/condition-value-abstract.ts +31 -0
  312. package/src/conditions/condition-value-registration.ts +18 -0
  313. package/src/conditions/condition-values.ts +146 -0
  314. package/src/conditions/condition.ts +64 -0
  315. package/src/conditions/helpers.ts +7 -0
  316. package/src/conditions/index.ts +27 -0
  317. package/src/conditions/inline-condition-model.ts +550 -0
  318. package/src/conditions/inline-condition-operators.ts +166 -0
  319. package/src/conditions/inline-condition-values.ts +153 -0
  320. package/src/conditions/types.ts +30 -0
  321. package/src/data-model/conditions-wrapper.ts +42 -0
  322. package/src/data-model/index.ts +3 -0
  323. package/src/data-model/input-wrapper.ts +40 -0
  324. package/src/data-model/types.ts +179 -0
  325. package/src/form/form-configuration.ts +21 -0
  326. package/src/form/index.ts +1 -0
  327. package/src/index.ts +11 -0
  328. package/src/migration/index.ts +1 -0
  329. package/src/migration/migration.0-2.ts +29 -0
  330. package/src/migration/migration.1-2.ts +105 -0
  331. package/src/migration/types.ts +1 -0
  332. package/src/migration/whichMigrations.ts +23 -0
  333. package/src/schema/index.ts +1 -0
  334. package/src/schema/schema.ts +300 -0
  335. package/src/utils/helpers.ts +37 -0
  336. package/src/utils/logger.ts +29 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_schema","require","_dataModel","_logger","_form","_components","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_conditions","_helpers","_migration","_types2","_whichMigrations"],"sources":["../../src/index.ts"],"sourcesContent":["export { Schema, componentSchema } from './schema'\nexport { ConditionRawData, ConditionsWrapper } from './data-model'\nexport { Logger } from './utils/logger'\nexport { FormConfiguration } from './form'\nexport { ComponentTypes, ConditionalComponentTypes } from './components'\nexport * from './components/types'\nexport * from './conditions'\nexport * from './utils/helpers'\nexport * from './migration'\nexport * from './data-model/types'\nexport { whichMigrations } from './migration/whichMigrations'\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { whichMigrations } from './whichMigrations';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/migration/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ Object.defineProperty(exports, "whichMigrations", {
5
+ enumerable: true,
6
+ get: function () {
7
+ return _whichMigrations.whichMigrations;
8
+ }
9
+ });
10
+ var _whichMigrations = require("./whichMigrations");
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_whichMigrations","require"],"sources":["../../../src/migration/index.ts"],"sourcesContent":["export { whichMigrations } from './whichMigrations'\n"],"mappings":";;;;;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA"}
@@ -0,0 +1,3 @@
1
+ import { MigrationScript } from './types';
2
+ export declare function migrate(data: any): MigrationScript;
3
+ //# sourceMappingURL=migration.0-2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.0-2.d.ts","sourceRoot":"","sources":["../../../src/migration/migration.0-2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAQzC,wBAAgB,OAAO,CAAC,IAAI,KAAA,GAAG,eAAe,CAoB7C"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.migrate = migrate;
5
+ function needsUpgrade(data) {
6
+ return !!(data.pages ?? []).flatMap(page => page.components).find(component => component.options?.list);
7
+ }
8
+ function migrate(data) {
9
+ if (!needsUpgrade(data)) {
10
+ return {
11
+ ...data,
12
+ version: 2
13
+ };
14
+ }
15
+ const {
16
+ pages
17
+ } = data;
18
+ const newPages = pages.flatMap(page => {
19
+ return page.components.map(component => {
20
+ if (!component.options?.list) {
21
+ return component;
22
+ }
23
+ const {
24
+ list,
25
+ ...rest
26
+ } = component.options;
27
+ return {
28
+ ...component,
29
+ list,
30
+ options: {
31
+ ...rest
32
+ }
33
+ };
34
+ });
35
+ });
36
+ return {
37
+ ...data,
38
+ pages: newPages,
39
+ version: 2
40
+ };
41
+ }
42
+ //# sourceMappingURL=migration.0-2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.0-2.js","names":["needsUpgrade","data","pages","flatMap","page","components","find","component","options","list","migrate","version","newPages","map","rest"],"sources":["../../../src/migration/migration.0-2.ts"],"sourcesContent":["import { MigrationScript } from './types'\n\nfunction needsUpgrade(data) {\n return !!(data.pages ?? [])\n .flatMap((page) => page.components)\n .find((component) => component.options?.list)\n}\n\nexport function migrate(data): MigrationScript {\n if (!needsUpgrade(data)) {\n return { ...data, version: 2 }\n }\n const { pages } = data\n const newPages = pages.flatMap((page) => {\n return page.components.map((component) => {\n if (!component.options?.list) {\n return component\n }\n const { list, ...rest } = component.options\n return { ...component, list, options: { ...rest } }\n })\n })\n\n return {\n ...data,\n pages: newPages,\n version: 2\n }\n}\n"],"mappings":";;;;AAEA,SAASA,YAAYA,CAACC,IAAI,EAAE;EAC1B,OAAO,CAAC,CAAC,CAACA,IAAI,CAACC,KAAK,IAAI,EAAE,EACvBC,OAAO,CAAEC,IAAI,IAAKA,IAAI,CAACC,UAAU,CAAC,CAClCC,IAAI,CAAEC,SAAS,IAAKA,SAAS,CAACC,OAAO,EAAEC,IAAI,CAAC;AACjD;AAEO,SAASC,OAAOA,CAACT,IAAI,EAAmB;EAC7C,IAAI,CAACD,YAAY,CAACC,IAAI,CAAC,EAAE;IACvB,OAAO;MAAE,GAAGA,IAAI;MAAEU,OAAO,EAAE;IAAE,CAAC;EAChC;EACA,MAAM;IAAET;EAAM,CAAC,GAAGD,IAAI;EACtB,MAAMW,QAAQ,GAAGV,KAAK,CAACC,OAAO,CAAEC,IAAI,IAAK;IACvC,OAAOA,IAAI,CAACC,UAAU,CAACQ,GAAG,CAAEN,SAAS,IAAK;MACxC,IAAI,CAACA,SAAS,CAACC,OAAO,EAAEC,IAAI,EAAE;QAC5B,OAAOF,SAAS;MAClB;MACA,MAAM;QAAEE,IAAI;QAAE,GAAGK;MAAK,CAAC,GAAGP,SAAS,CAACC,OAAO;MAC3C,OAAO;QAAE,GAAGD,SAAS;QAAEE,IAAI;QAAED,OAAO,EAAE;UAAE,GAAGM;QAAK;MAAE,CAAC;IACrD,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,OAAO;IACL,GAAGb,IAAI;IACPC,KAAK,EAAEU,QAAQ;IACfD,OAAO,EAAE;EACX,CAAC;AACH"}
@@ -0,0 +1,3 @@
1
+ import { MigrationScript } from './types';
2
+ export declare function migrate(data: any): MigrationScript;
3
+ //# sourceMappingURL=migration.1-2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.1-2.d.ts","sourceRoot":"","sources":["../../../src/migration/migration.1-2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAiFzC,wBAAgB,OAAO,CAAC,IAAI,KAAA,GAAG,eAAe,CAuB7C"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.migrate = migrate;
5
+ var _helpers = require("../utils/helpers");
6
+ /**
7
+ * @private
8
+ * StaticItem is a deprecated Type.
9
+ * It should only be used for aiding migration scripts.
10
+ */
11
+
12
+ /**
13
+ * @private
14
+ * StaticComponentValues is a deprecated Type.
15
+ * It should only be used for aiding migration scripts.
16
+ */
17
+
18
+ function recastItem({
19
+ label,
20
+ value,
21
+ condition,
22
+ hint
23
+ }) {
24
+ const item = {
25
+ title: label,
26
+ value
27
+ };
28
+ condition && (item.conditions = condition);
29
+ hint && (item.hint = hint);
30
+ return item;
31
+ }
32
+ function addListId(component) {
33
+ if (!component.values) {
34
+ return component;
35
+ }
36
+ const {
37
+ values
38
+ } = component;
39
+ return {
40
+ ...component,
41
+ list: values.type === 'listRef' ? values.list : (0, _helpers.nanoid)()
42
+ };
43
+ }
44
+ function migratePage(page) {
45
+ return {
46
+ ...page,
47
+ components: page.components.map(addListId)
48
+ };
49
+ }
50
+ function removeValues(page) {
51
+ return {
52
+ ...page,
53
+ components: page.components.map(component => {
54
+ const {
55
+ values,
56
+ ...rest
57
+ } = component;
58
+ return {
59
+ ...rest
60
+ };
61
+ })
62
+ };
63
+ }
64
+ function needsUpgrade(data) {
65
+ return !!data.pages.flatMap(page => page.components).find(component => component.values);
66
+ }
67
+ function migrate(data) {
68
+ if (!needsUpgrade(data)) {
69
+ return {
70
+ ...data,
71
+ version: 2
72
+ };
73
+ }
74
+ const pages = data.pages.map(migratePage);
75
+ const componentsWithList = pages.flatMap(page => page.components.filter(c => c.values?.items));
76
+ const valuesAsLists = componentsWithList.map(component => {
77
+ return {
78
+ title: component.title,
79
+ name: component.list,
80
+ items: component.values.items.map(item => recastItem(item))
81
+ };
82
+ });
83
+ return {
84
+ ...data,
85
+ pages: pages.map(removeValues),
86
+ lists: [...(data.lists ?? []), ...valuesAsLists],
87
+ version: 2
88
+ };
89
+ }
90
+ //# sourceMappingURL=migration.1-2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.1-2.js","names":["_helpers","require","recastItem","label","value","condition","hint","item","title","conditions","addListId","component","values","list","type","nanoid","migratePage","page","components","map","removeValues","rest","needsUpgrade","data","pages","flatMap","find","migrate","version","componentsWithList","filter","c","items","valuesAsLists","name","lists"],"sources":["../../../src/migration/migration.1-2.ts"],"sourcesContent":["import { MigrationScript } from './types'\nimport { nanoid } from '../utils/helpers'\n\n/**\n * @private\n * StaticItem is a deprecated Type.\n * It should only be used for aiding migration scripts.\n */\ntype StaticItem = {\n label: string\n value: string | number | boolean\n hint?: string\n condition?: string\n}\n\n/**\n * @private\n * StaticComponentValues is a deprecated Type.\n * It should only be used for aiding migration scripts.\n */\ntype StaticComponentValues = {\n list: any\n type: 'static' | 'listRef'\n valueType: string | number\n items: StaticItem[]\n}\n\ntype Item = {\n title: string\n value: any\n conditions?: any\n hint?: string\n}\n\nfunction recastItem({ label, value, condition, hint }: StaticItem) {\n const item: Item = {\n title: label,\n value\n }\n\n condition && (item.conditions = condition)\n hint && (item.hint = hint)\n return item\n}\n\nfunction addListId(component: { values: StaticComponentValues }) {\n if (!component.values) {\n return component\n }\n const { values } = component\n return {\n ...component,\n list: values.type === 'listRef' ? values.list : nanoid()\n }\n}\n\nfunction migratePage(page) {\n return {\n ...page,\n components: page.components.map(addListId)\n }\n}\n\nfunction removeValues(page) {\n return {\n ...page,\n components: page.components.map((component) => {\n const { values, ...rest } = component\n return {\n ...rest\n }\n })\n }\n}\n\nfunction needsUpgrade(data) {\n return !!data.pages\n .flatMap((page) => page.components)\n .find((component) => component.values)\n}\n\nexport function migrate(data): MigrationScript {\n if (!needsUpgrade(data)) {\n return { ...data, version: 2 }\n }\n const pages = data.pages.map(migratePage)\n const componentsWithList = pages.flatMap((page) =>\n page.components.filter((c) => c.values?.items)\n )\n\n const valuesAsLists = componentsWithList.map((component) => {\n return {\n title: component.title,\n name: component.list,\n items: component.values.items.map((item) => recastItem(item))\n }\n })\n\n return {\n ...data,\n pages: pages.map(removeValues),\n lists: [...(data.lists ?? []), ...valuesAsLists],\n version: 2\n }\n}\n"],"mappings":";;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;;AAeA,SAASC,UAAUA,CAAC;EAAEC,KAAK;EAAEC,KAAK;EAAEC,SAAS;EAAEC;AAAiB,CAAC,EAAE;EACjE,MAAMC,IAAU,GAAG;IACjBC,KAAK,EAAEL,KAAK;IACZC;EACF,CAAC;EAEDC,SAAS,KAAKE,IAAI,CAACE,UAAU,GAAGJ,SAAS,CAAC;EAC1CC,IAAI,KAAKC,IAAI,CAACD,IAAI,GAAGA,IAAI,CAAC;EAC1B,OAAOC,IAAI;AACb;AAEA,SAASG,SAASA,CAACC,SAA4C,EAAE;EAC/D,IAAI,CAACA,SAAS,CAACC,MAAM,EAAE;IACrB,OAAOD,SAAS;EAClB;EACA,MAAM;IAAEC;EAAO,CAAC,GAAGD,SAAS;EAC5B,OAAO;IACL,GAAGA,SAAS;IACZE,IAAI,EAAED,MAAM,CAACE,IAAI,KAAK,SAAS,GAAGF,MAAM,CAACC,IAAI,GAAG,IAAAE,eAAM,EAAC;EACzD,CAAC;AACH;AAEA,SAASC,WAAWA,CAACC,IAAI,EAAE;EACzB,OAAO;IACL,GAAGA,IAAI;IACPC,UAAU,EAAED,IAAI,CAACC,UAAU,CAACC,GAAG,CAACT,SAAS;EAC3C,CAAC;AACH;AAEA,SAASU,YAAYA,CAACH,IAAI,EAAE;EAC1B,OAAO;IACL,GAAGA,IAAI;IACPC,UAAU,EAAED,IAAI,CAACC,UAAU,CAACC,GAAG,CAAER,SAAS,IAAK;MAC7C,MAAM;QAAEC,MAAM;QAAE,GAAGS;MAAK,CAAC,GAAGV,SAAS;MACrC,OAAO;QACL,GAAGU;MACL,CAAC;IACH,CAAC;EACH,CAAC;AACH;AAEA,SAASC,YAAYA,CAACC,IAAI,EAAE;EAC1B,OAAO,CAAC,CAACA,IAAI,CAACC,KAAK,CAChBC,OAAO,CAAER,IAAI,IAAKA,IAAI,CAACC,UAAU,CAAC,CAClCQ,IAAI,CAAEf,SAAS,IAAKA,SAAS,CAACC,MAAM,CAAC;AAC1C;AAEO,SAASe,OAAOA,CAACJ,IAAI,EAAmB;EAC7C,IAAI,CAACD,YAAY,CAACC,IAAI,CAAC,EAAE;IACvB,OAAO;MAAE,GAAGA,IAAI;MAAEK,OAAO,EAAE;IAAE,CAAC;EAChC;EACA,MAAMJ,KAAK,GAAGD,IAAI,CAACC,KAAK,CAACL,GAAG,CAACH,WAAW,CAAC;EACzC,MAAMa,kBAAkB,GAAGL,KAAK,CAACC,OAAO,CAAER,IAAI,IAC5CA,IAAI,CAACC,UAAU,CAACY,MAAM,CAAEC,CAAC,IAAKA,CAAC,CAACnB,MAAM,EAAEoB,KAAK,CAC/C,CAAC;EAED,MAAMC,aAAa,GAAGJ,kBAAkB,CAACV,GAAG,CAAER,SAAS,IAAK;IAC1D,OAAO;MACLH,KAAK,EAAEG,SAAS,CAACH,KAAK;MACtB0B,IAAI,EAAEvB,SAAS,CAACE,IAAI;MACpBmB,KAAK,EAAErB,SAAS,CAACC,MAAM,CAACoB,KAAK,CAACb,GAAG,CAAEZ,IAAI,IAAKL,UAAU,CAACK,IAAI,CAAC;IAC9D,CAAC;EACH,CAAC,CAAC;EAEF,OAAO;IACL,GAAGgB,IAAI;IACPC,KAAK,EAAEA,KAAK,CAACL,GAAG,CAACC,YAAY,CAAC;IAC9Be,KAAK,EAAE,CAAC,IAAIZ,IAAI,CAACY,KAAK,IAAI,EAAE,CAAC,EAAE,GAAGF,aAAa,CAAC;IAChDL,OAAO,EAAE;EACX,CAAC;AACH"}
@@ -0,0 +1,2 @@
1
+ export type MigrationScript = (data: Object) => Object;
2
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/migration/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA"}
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/migration/types.ts"],"sourcesContent":["export type MigrationScript = (data: Object) => Object\n"],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { MigrationScript } from './types';
2
+ /**
3
+ * Returns which migrations that should be run against your Object with the given version
4
+ * @param version
5
+ */
6
+ export declare function whichMigrations(version: number): Set<MigrationScript>;
7
+ //# sourceMappingURL=whichMigrations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whichMigrations.d.ts","sourceRoot":"","sources":["../../../src/migration/whichMigrations.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,wBAc9C"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.whichMigrations = whichMigrations;
5
+ var _migration = require("./migration.0-2");
6
+ var _migration2 = require("./migration.1-2");
7
+ /**
8
+ * Returns which migrations that should be run against your Object with the given version
9
+ * @param version
10
+ */
11
+ function whichMigrations(version) {
12
+ const migrations = new Set();
13
+ switch (version) {
14
+ case 0:
15
+ migrations.add(_migration.migrate);
16
+ /**
17
+ * we are skipping v1 entirely. If we weren't you would do migrations.add([V1_TO_V2, V2_TO_V3]) for example.
18
+ */
19
+ break;
20
+ case 1:
21
+ migrations.add(_migration2.migrate);
22
+ break;
23
+ }
24
+ return migrations;
25
+ }
26
+ //# sourceMappingURL=whichMigrations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whichMigrations.js","names":["_migration","require","_migration2","whichMigrations","version","migrations","Set","add","V0_TO_V2","V1_TO_V2"],"sources":["../../../src/migration/whichMigrations.ts"],"sourcesContent":["import { migrate as V0_TO_V2 } from './migration.0-2'\nimport { migrate as V1_TO_V2 } from './migration.1-2'\nimport { MigrationScript } from './types'\n\n/**\n * Returns which migrations that should be run against your Object with the given version\n * @param version\n */\nexport function whichMigrations(version: number) {\n const migrations = new Set<MigrationScript>()\n switch (version) {\n case 0:\n migrations.add(V0_TO_V2)\n /**\n * we are skipping v1 entirely. If we weren't you would do migrations.add([V1_TO_V2, V2_TO_V3]) for example.\n */\n break\n case 1:\n migrations.add(V1_TO_V2)\n break\n }\n return migrations\n}\n"],"mappings":";;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGA;AACA;AACA;AACA;AACO,SAASE,eAAeA,CAACC,OAAe,EAAE;EAC/C,MAAMC,UAAU,GAAG,IAAIC,GAAG,CAAkB,CAAC;EAC7C,QAAQF,OAAO;IACb,KAAK,CAAC;MACJC,UAAU,CAACE,GAAG,CAACC,kBAAQ,CAAC;MACxB;AACN;AACA;MACM;IACF,KAAK,CAAC;MACJH,UAAU,CAACE,GAAG,CAACE,mBAAQ,CAAC;MACxB;EACJ;EACA,OAAOJ,UAAU;AACnB"}
@@ -0,0 +1,2 @@
1
+ export { Schema, componentSchema } from './schema';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ Object.defineProperty(exports, "Schema", {
5
+ enumerable: true,
6
+ get: function () {
7
+ return _schema.Schema;
8
+ }
9
+ });
10
+ Object.defineProperty(exports, "componentSchema", {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _schema.componentSchema;
14
+ }
15
+ });
16
+ var _schema = require("./schema");
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_schema","require"],"sources":["../../../src/schema/index.ts"],"sourcesContent":["export { Schema, componentSchema } from './schema'\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA"}
@@ -0,0 +1,20 @@
1
+ import joi from 'joi';
2
+ /**
3
+ * If an optional key is added, CURRENT_VERSION does not need to be incremented.
4
+ * Only breaking changes will require an increment, as well as a migration script.
5
+ */
6
+ export declare const CURRENT_VERSION = 2;
7
+ export declare const componentSchema: joi.ObjectSchema<any>;
8
+ export declare const Schema: joi.ObjectSchema<any>;
9
+ /**
10
+ * Schema versions:
11
+ * Undefined / 0 - initial version as at 28/8/20. Conditions may be in object structure or string form.
12
+ * 1 - Relevant components (radio, checkbox, select, autocomplete) now contain
13
+ * options as 'values' rather than referencing a data list
14
+ * 2 - Reverse v1. Values populating radio, checkboxes, select, autocomplete are defined in Lists only.
15
+ * TODO:- merge fees and paymentReferenceFormat
16
+ * 2 - 2023-05-04 `feeOptions` has been introduced. paymentReferenceFormat and payApiKey can be configured in top level or feeOptions. feeOptions will take precedent.
17
+ * if feeOptions are empty, it will pull values from the top level keys.
18
+ * WARN: Fee/GOV.UK pay configurations (apart from fees) should no longer be stored in the top level, always within feeOptions.
19
+ **/
20
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB;;;GAGG;AACH,eAAO,MAAM,eAAe,IAAI,CAAA;AA2EhC,eAAO,MAAM,eAAe,uBAcZ,CAAA;AA0KhB,eAAO,MAAM,MAAM,uBAsBf,CAAA;AAEJ;;;;;;;;;;IAUI"}
@@ -0,0 +1,239 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.componentSchema = exports.Schema = exports.CURRENT_VERSION = void 0;
5
+ var _joi = _interopRequireDefault(require("joi"));
6
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
+ /**
8
+ * If an optional key is added, CURRENT_VERSION does not need to be incremented.
9
+ * Only breaking changes will require an increment, as well as a migration script.
10
+ */
11
+ const CURRENT_VERSION = exports.CURRENT_VERSION = 2;
12
+ const sectionsSchema = _joi.default.object().keys({
13
+ name: _joi.default.string().required(),
14
+ title: _joi.default.string().required(),
15
+ hideTitle: _joi.default.boolean().default(false)
16
+ });
17
+ const conditionFieldSchema = _joi.default.object().keys({
18
+ name: _joi.default.string().required(),
19
+ type: _joi.default.string().required(),
20
+ display: _joi.default.string().required()
21
+ });
22
+ const conditionValueSchema = _joi.default.object().keys({
23
+ type: _joi.default.string().required(),
24
+ value: _joi.default.string().required(),
25
+ display: _joi.default.string().required()
26
+ });
27
+ const relativeTimeValueSchema = _joi.default.object().keys({
28
+ type: _joi.default.string().required(),
29
+ timePeriod: _joi.default.string().required(),
30
+ timeUnit: _joi.default.string().required(),
31
+ direction: _joi.default.string().required(),
32
+ timeOnly: _joi.default.boolean().required()
33
+ });
34
+ const conditionRefSchema = _joi.default.object().keys({
35
+ conditionName: _joi.default.string().required(),
36
+ conditionDisplayName: _joi.default.string().required(),
37
+ coordinator: _joi.default.string().optional()
38
+ });
39
+ const conditionSchema = _joi.default.object().keys({
40
+ field: conditionFieldSchema,
41
+ operator: _joi.default.string().required(),
42
+ value: _joi.default.alternatives().try(conditionValueSchema, relativeTimeValueSchema),
43
+ coordinator: _joi.default.string().optional()
44
+ });
45
+ const conditionGroupSchema = _joi.default.object().keys({
46
+ conditions: _joi.default.array().items(_joi.default.alternatives().try(conditionSchema, conditionRefSchema, _joi.default.any() /** Should be a joi.link('#conditionGroupSchema') */))
47
+ });
48
+ const conditionsModelSchema = _joi.default.object().keys({
49
+ name: _joi.default.string().required(),
50
+ conditions: _joi.default.array().items(_joi.default.alternatives().try(conditionSchema, conditionRefSchema, conditionGroupSchema))
51
+ });
52
+ const conditionsSchema = _joi.default.object().keys({
53
+ name: _joi.default.string().required(),
54
+ displayName: _joi.default.string(),
55
+ value: _joi.default.alternatives().try(_joi.default.string(), conditionsModelSchema).required()
56
+ });
57
+ const localisedString = _joi.default.alternatives().try(_joi.default.object({
58
+ a: _joi.default.any()
59
+ }).unknown(), _joi.default.string().allow(''));
60
+ const componentSchema = exports.componentSchema = _joi.default.object().keys({
61
+ type: _joi.default.string().required(),
62
+ name: _joi.default.string(),
63
+ title: localisedString,
64
+ hint: localisedString.optional(),
65
+ options: _joi.default.object().default({}),
66
+ schema: _joi.default.object({
67
+ min: _joi.default.number(),
68
+ max: _joi.default.number()
69
+ }).unknown(true).default({}),
70
+ list: _joi.default.string().optional()
71
+ }).unknown(true);
72
+ const nextSchema = _joi.default.object().keys({
73
+ path: _joi.default.string().required(),
74
+ condition: _joi.default.string().allow('').optional(),
75
+ redirect: _joi.default.string().uri().optional()
76
+ });
77
+
78
+ /**
79
+ * `/status` is a special route for providing a user's application status.
80
+ * It should not be configured via the designer.
81
+ */
82
+ const pageSchema = _joi.default.object().keys({
83
+ path: _joi.default.string().required().disallow('/status'),
84
+ title: localisedString,
85
+ section: _joi.default.string(),
86
+ controller: _joi.default.string(),
87
+ components: _joi.default.array().items(componentSchema),
88
+ next: _joi.default.array().items(nextSchema),
89
+ repeatField: _joi.default.string().optional(),
90
+ options: _joi.default.object().optional(),
91
+ backLinkFallback: _joi.default.string().optional()
92
+ });
93
+ const toggleableString = _joi.default.alternatives().try(_joi.default.boolean(), _joi.default.string());
94
+ const confirmationPageSchema = _joi.default.object({
95
+ customText: _joi.default.object({
96
+ title: _joi.default.string().default('Application complete'),
97
+ paymentSkipped: toggleableString.default('Someone will be in touch to make a payment.'),
98
+ nextSteps: toggleableString.default('You will receive an email with details with the next steps.')
99
+ }).default(),
100
+ components: _joi.default.array().items(componentSchema)
101
+ });
102
+ const paymentSkippedWarningPage = _joi.default.object({
103
+ customText: _joi.default.object({
104
+ title: _joi.default.string().default('Pay for your application').optional(),
105
+ caption: _joi.default.string().default('Payment').optional(),
106
+ body: _joi.default.string().default('').optional()
107
+ })
108
+ });
109
+ const specialPagesSchema = _joi.default.object().keys({
110
+ confirmationPage: confirmationPageSchema.optional(),
111
+ paymentSkippedWarningPage: paymentSkippedWarningPage.optional()
112
+ });
113
+ const listItemSchema = _joi.default.object().keys({
114
+ text: localisedString,
115
+ value: _joi.default.alternatives().try(_joi.default.number(), _joi.default.string()),
116
+ description: localisedString.optional(),
117
+ conditional: _joi.default.object().keys({
118
+ components: _joi.default.array().required().items(componentSchema.unknown(true)).unique('name')
119
+ }).allow(null).optional(),
120
+ condition: _joi.default.string().allow(null, '').optional()
121
+ });
122
+ const listSchema = _joi.default.object().keys({
123
+ name: _joi.default.string().required(),
124
+ title: localisedString,
125
+ type: _joi.default.string().required().valid('string', 'number'),
126
+ items: _joi.default.array().items(listItemSchema)
127
+ });
128
+ const feeSchema = _joi.default.object().keys({
129
+ description: _joi.default.string().required(),
130
+ amount: _joi.default.number().required(),
131
+ multiplier: _joi.default.string().optional(),
132
+ condition: _joi.default.string().optional(),
133
+ prefix: _joi.default.string().optional()
134
+ });
135
+ const multiApiKeySchema = _joi.default.object({
136
+ test: _joi.default.string().optional(),
137
+ production: _joi.default.string().optional()
138
+ });
139
+ const replyToConfigurationSchema = _joi.default.object({
140
+ emailReplyToId: _joi.default.string(),
141
+ condition: _joi.default.string().allow('').optional()
142
+ });
143
+ const notifySchema = _joi.default.object().keys({
144
+ apiKey: [_joi.default.string().allow('').optional(), multiApiKeySchema],
145
+ templateId: _joi.default.string(),
146
+ emailField: _joi.default.string(),
147
+ personalisation: _joi.default.array().items(_joi.default.string()),
148
+ personalisationFieldCustomisation: _joi.default.object().pattern(/./, _joi.default.array().items(_joi.default.string())).optional(),
149
+ addReferencesToPersonalisation: _joi.default.boolean().optional(),
150
+ emailReplyToIdConfiguration: _joi.default.array().items(replyToConfigurationSchema)
151
+ });
152
+ const emailSchema = _joi.default.object().keys({
153
+ emailAddress: _joi.default.string()
154
+ });
155
+ const webhookSchema = _joi.default.object().keys({
156
+ url: _joi.default.string(),
157
+ allowRetry: _joi.default.boolean().default(true)
158
+ });
159
+ const outputSchema = _joi.default.object().keys({
160
+ name: _joi.default.string(),
161
+ title: _joi.default.string().optional(),
162
+ type: _joi.default.string().allow('notify', 'email', 'webhook', 'sheets'),
163
+ outputConfiguration: _joi.default.alternatives().try(notifySchema, emailSchema, webhookSchema)
164
+ });
165
+ const feedbackSchema = _joi.default.object().keys({
166
+ feedbackForm: _joi.default.boolean().default(false),
167
+ url: _joi.default.when('feedbackForm', {
168
+ is: _joi.default.boolean().valid(false),
169
+ then: _joi.default.string().optional().allow('')
170
+ }),
171
+ emailAddress: _joi.default.string().email({
172
+ tlds: {
173
+ allow: false
174
+ }
175
+ }).optional()
176
+ });
177
+ const phaseBannerSchema = _joi.default.object().keys({
178
+ phase: _joi.default.string().valid('alpha', 'beta')
179
+ });
180
+ const feeOptionSchema = _joi.default.object().keys({
181
+ payApiKey: [_joi.default.string().allow('').optional(), multiApiKeySchema],
182
+ paymentReferenceFormat: [_joi.default.string().optional()],
183
+ payReturnUrl: _joi.default.string().optional(),
184
+ allowSubmissionWithoutPayment: _joi.default.boolean().optional().default(true),
185
+ maxAttempts: _joi.default.number().optional().default(3),
186
+ customPayErrorMessage: _joi.default.string().optional(),
187
+ showPaymentSkippedWarningPage: _joi.default.when('allowSubmissionWithoutPayment', {
188
+ is: true,
189
+ then: _joi.default.boolean().valid(true, false).default(false),
190
+ otherwise: _joi.default.boolean().valid(false).default(false)
191
+ })
192
+ }).default(({
193
+ payApiKey,
194
+ paymentReferenceFormat
195
+ }) => {
196
+ return {
197
+ ...(payApiKey && {
198
+ payApiKey
199
+ }),
200
+ ...(paymentReferenceFormat && {
201
+ paymentReferenceFormat
202
+ })
203
+ };
204
+ });
205
+ const Schema = exports.Schema = _joi.default.object().required().keys({
206
+ name: localisedString.optional(),
207
+ feedback: feedbackSchema,
208
+ startPage: _joi.default.string().required(),
209
+ pages: _joi.default.array().required().items(pageSchema).unique('path'),
210
+ sections: _joi.default.array().items(sectionsSchema).unique('name').required(),
211
+ conditions: _joi.default.array().items(conditionsSchema).unique('name'),
212
+ lists: _joi.default.array().items(listSchema).unique('name'),
213
+ fees: _joi.default.array().items(feeSchema).optional(),
214
+ paymentReferenceFormat: _joi.default.string().optional(),
215
+ metadata: _joi.default.object({
216
+ a: _joi.default.any()
217
+ }).unknown().optional(),
218
+ declaration: _joi.default.string().allow('').optional(),
219
+ outputs: _joi.default.array().items(outputSchema),
220
+ payApiKey: [_joi.default.string().allow('').optional(), multiApiKeySchema],
221
+ skipSummary: _joi.default.boolean().default(false),
222
+ version: _joi.default.number().default(CURRENT_VERSION),
223
+ phaseBanner: phaseBannerSchema,
224
+ specialPages: specialPagesSchema.optional(),
225
+ feeOptions: feeOptionSchema
226
+ });
227
+
228
+ /**
229
+ * Schema versions:
230
+ * Undefined / 0 - initial version as at 28/8/20. Conditions may be in object structure or string form.
231
+ * 1 - Relevant components (radio, checkbox, select, autocomplete) now contain
232
+ * options as 'values' rather than referencing a data list
233
+ * 2 - Reverse v1. Values populating radio, checkboxes, select, autocomplete are defined in Lists only.
234
+ * TODO:- merge fees and paymentReferenceFormat
235
+ * 2 - 2023-05-04 `feeOptions` has been introduced. paymentReferenceFormat and payApiKey can be configured in top level or feeOptions. feeOptions will take precedent.
236
+ * if feeOptions are empty, it will pull values from the top level keys.
237
+ * WARN: Fee/GOV.UK pay configurations (apart from fees) should no longer be stored in the top level, always within feeOptions.
238
+ **/
239
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","names":["_joi","_interopRequireDefault","require","obj","__esModule","default","CURRENT_VERSION","exports","sectionsSchema","joi","object","keys","name","string","required","title","hideTitle","boolean","conditionFieldSchema","type","display","conditionValueSchema","value","relativeTimeValueSchema","timePeriod","timeUnit","direction","timeOnly","conditionRefSchema","conditionName","conditionDisplayName","coordinator","optional","conditionSchema","field","operator","alternatives","try","conditionGroupSchema","conditions","array","items","any","conditionsModelSchema","conditionsSchema","displayName","localisedString","a","unknown","allow","componentSchema","hint","options","schema","min","number","max","list","nextSchema","path","condition","redirect","uri","pageSchema","disallow","section","controller","components","next","repeatField","backLinkFallback","toggleableString","confirmationPageSchema","customText","paymentSkipped","nextSteps","paymentSkippedWarningPage","caption","body","specialPagesSchema","confirmationPage","listItemSchema","text","description","conditional","unique","listSchema","valid","feeSchema","amount","multiplier","prefix","multiApiKeySchema","test","production","replyToConfigurationSchema","emailReplyToId","notifySchema","apiKey","templateId","emailField","personalisation","personalisationFieldCustomisation","pattern","addReferencesToPersonalisation","emailReplyToIdConfiguration","emailSchema","emailAddress","webhookSchema","url","allowRetry","outputSchema","outputConfiguration","feedbackSchema","feedbackForm","when","is","then","email","tlds","phaseBannerSchema","phase","feeOptionSchema","payApiKey","paymentReferenceFormat","payReturnUrl","allowSubmissionWithoutPayment","maxAttempts","customPayErrorMessage","showPaymentSkippedWarningPage","otherwise","Schema","feedback","startPage","pages","sections","lists","fees","metadata","declaration","outputs","skipSummary","version","phaseBanner","specialPages","feeOptions"],"sources":["../../../src/schema/schema.ts"],"sourcesContent":["import joi from 'joi'\n\n/**\n * If an optional key is added, CURRENT_VERSION does not need to be incremented.\n * Only breaking changes will require an increment, as well as a migration script.\n */\nexport const CURRENT_VERSION = 2\nconst sectionsSchema = joi.object().keys({\n name: joi.string().required(),\n title: joi.string().required(),\n hideTitle: joi.boolean().default(false)\n})\n\nconst conditionFieldSchema = joi.object().keys({\n name: joi.string().required(),\n type: joi.string().required(),\n display: joi.string().required()\n})\n\nconst conditionValueSchema = joi.object().keys({\n type: joi.string().required(),\n value: joi.string().required(),\n display: joi.string().required()\n})\n\nconst relativeTimeValueSchema = joi.object().keys({\n type: joi.string().required(),\n timePeriod: joi.string().required(),\n timeUnit: joi.string().required(),\n direction: joi.string().required(),\n timeOnly: joi.boolean().required()\n})\n\nconst conditionRefSchema = joi.object().keys({\n conditionName: joi.string().required(),\n conditionDisplayName: joi.string().required(),\n coordinator: joi.string().optional()\n})\n\nconst conditionSchema = joi.object().keys({\n field: conditionFieldSchema,\n operator: joi.string().required(),\n value: joi.alternatives().try(conditionValueSchema, relativeTimeValueSchema),\n coordinator: joi.string().optional()\n})\n\nconst conditionGroupSchema = joi.object().keys({\n conditions: joi\n .array()\n .items(\n joi\n .alternatives()\n .try(\n conditionSchema,\n conditionRefSchema,\n joi.any() /** Should be a joi.link('#conditionGroupSchema') */\n )\n )\n})\n\nconst conditionsModelSchema = joi.object().keys({\n name: joi.string().required(),\n conditions: joi\n .array()\n .items(\n joi\n .alternatives()\n .try(conditionSchema, conditionRefSchema, conditionGroupSchema)\n )\n})\n\nconst conditionsSchema = joi.object().keys({\n name: joi.string().required(),\n displayName: joi.string(),\n value: joi.alternatives().try(joi.string(), conditionsModelSchema).required()\n})\n\nconst localisedString = joi\n .alternatives()\n .try(joi.object({ a: joi.any() }).unknown(), joi.string().allow(''))\n\nexport const componentSchema = joi\n .object()\n .keys({\n type: joi.string().required(),\n name: joi.string(),\n title: localisedString,\n hint: localisedString.optional(),\n options: joi.object().default({}),\n schema: joi\n .object({ min: joi.number(), max: joi.number() })\n .unknown(true)\n .default({}),\n list: joi.string().optional()\n })\n .unknown(true)\n\nconst nextSchema = joi.object().keys({\n path: joi.string().required(),\n condition: joi.string().allow('').optional(),\n redirect: joi.string().uri().optional()\n})\n\n/**\n * `/status` is a special route for providing a user's application status.\n * It should not be configured via the designer.\n */\nconst pageSchema = joi.object().keys({\n path: joi.string().required().disallow('/status'),\n title: localisedString,\n section: joi.string(),\n controller: joi.string(),\n components: joi.array().items(componentSchema),\n next: joi.array().items(nextSchema),\n repeatField: joi.string().optional(),\n options: joi.object().optional(),\n backLinkFallback: joi.string().optional()\n})\n\nconst toggleableString = joi.alternatives().try(joi.boolean(), joi.string())\n\nconst confirmationPageSchema = joi.object({\n customText: joi\n .object({\n title: joi.string().default('Application complete'),\n paymentSkipped: toggleableString.default(\n 'Someone will be in touch to make a payment.'\n ),\n nextSteps: toggleableString.default(\n 'You will receive an email with details with the next steps.'\n )\n })\n .default(),\n components: joi.array().items(componentSchema)\n})\n\nconst paymentSkippedWarningPage = joi.object({\n customText: joi.object({\n title: joi.string().default('Pay for your application').optional(),\n caption: joi.string().default('Payment').optional(),\n body: joi.string().default('').optional()\n })\n})\n\nconst specialPagesSchema = joi.object().keys({\n confirmationPage: confirmationPageSchema.optional(),\n paymentSkippedWarningPage: paymentSkippedWarningPage.optional()\n})\n\nconst listItemSchema = joi.object().keys({\n text: localisedString,\n value: joi.alternatives().try(joi.number(), joi.string()),\n description: localisedString.optional(),\n conditional: joi\n .object()\n .keys({\n components: joi\n .array()\n .required()\n .items(componentSchema.unknown(true))\n .unique('name')\n })\n .allow(null)\n .optional(),\n condition: joi.string().allow(null, '').optional()\n})\n\nconst listSchema = joi.object().keys({\n name: joi.string().required(),\n title: localisedString,\n type: joi.string().required().valid('string', 'number'),\n items: joi.array().items(listItemSchema)\n})\n\nconst feeSchema = joi.object().keys({\n description: joi.string().required(),\n amount: joi.number().required(),\n multiplier: joi.string().optional(),\n condition: joi.string().optional(),\n prefix: joi.string().optional()\n})\n\nconst multiApiKeySchema = joi.object({\n test: joi.string().optional(),\n production: joi.string().optional()\n})\n\nconst replyToConfigurationSchema = joi.object({\n emailReplyToId: joi.string(),\n condition: joi.string().allow('').optional()\n})\n\nconst notifySchema = joi.object().keys({\n apiKey: [joi.string().allow('').optional(), multiApiKeySchema],\n templateId: joi.string(),\n emailField: joi.string(),\n personalisation: joi.array().items(joi.string()),\n personalisationFieldCustomisation: joi\n .object()\n .pattern(/./, joi.array().items(joi.string()))\n .optional(),\n addReferencesToPersonalisation: joi.boolean().optional(),\n emailReplyToIdConfiguration: joi.array().items(replyToConfigurationSchema)\n})\n\nconst emailSchema = joi.object().keys({\n emailAddress: joi.string()\n})\n\nconst webhookSchema = joi.object().keys({\n url: joi.string(),\n allowRetry: joi.boolean().default(true)\n})\n\nconst outputSchema = joi.object().keys({\n name: joi.string(),\n title: joi.string().optional(),\n type: joi.string().allow('notify', 'email', 'webhook', 'sheets'),\n outputConfiguration: joi\n .alternatives()\n .try(notifySchema, emailSchema, webhookSchema)\n})\n\nconst feedbackSchema = joi.object().keys({\n feedbackForm: joi.boolean().default(false),\n url: joi.when('feedbackForm', {\n is: joi.boolean().valid(false),\n then: joi.string().optional().allow('')\n }),\n emailAddress: joi\n .string()\n .email({\n tlds: {\n allow: false\n }\n })\n .optional()\n})\n\nconst phaseBannerSchema = joi.object().keys({\n phase: joi.string().valid('alpha', 'beta')\n})\n\nconst feeOptionSchema = joi\n .object()\n .keys({\n payApiKey: [joi.string().allow('').optional(), multiApiKeySchema],\n paymentReferenceFormat: [joi.string().optional()],\n payReturnUrl: joi.string().optional(),\n allowSubmissionWithoutPayment: joi.boolean().optional().default(true),\n maxAttempts: joi.number().optional().default(3),\n customPayErrorMessage: joi.string().optional(),\n showPaymentSkippedWarningPage: joi.when('allowSubmissionWithoutPayment', {\n is: true,\n then: joi.boolean().valid(true, false).default(false),\n otherwise: joi.boolean().valid(false).default(false)\n })\n })\n .default(({ payApiKey, paymentReferenceFormat }) => {\n return {\n ...(payApiKey && { payApiKey }),\n ...(paymentReferenceFormat && { paymentReferenceFormat })\n }\n })\n\nexport const Schema = joi\n .object()\n .required()\n .keys({\n name: localisedString.optional(),\n feedback: feedbackSchema,\n startPage: joi.string().required(),\n pages: joi.array().required().items(pageSchema).unique('path'),\n sections: joi.array().items(sectionsSchema).unique('name').required(),\n conditions: joi.array().items(conditionsSchema).unique('name'),\n lists: joi.array().items(listSchema).unique('name'),\n fees: joi.array().items(feeSchema).optional(),\n paymentReferenceFormat: joi.string().optional(),\n metadata: joi.object({ a: joi.any() }).unknown().optional(),\n declaration: joi.string().allow('').optional(),\n outputs: joi.array().items(outputSchema),\n payApiKey: [joi.string().allow('').optional(), multiApiKeySchema],\n skipSummary: joi.boolean().default(false),\n version: joi.number().default(CURRENT_VERSION),\n phaseBanner: phaseBannerSchema,\n specialPages: specialPagesSchema.optional(),\n feeOptions: feeOptionSchema\n })\n\n/**\n * Schema versions:\n * Undefined / 0 - initial version as at 28/8/20. Conditions may be in object structure or string form.\n * 1 - Relevant components (radio, checkbox, select, autocomplete) now contain\n * options as 'values' rather than referencing a data list\n * 2 - Reverse v1. Values populating radio, checkboxes, select, autocomplete are defined in Lists only.\n * TODO:- merge fees and paymentReferenceFormat\n * 2 - 2023-05-04 `feeOptions` has been introduced. paymentReferenceFormat and payApiKey can be configured in top level or feeOptions. feeOptions will take precedent.\n * if feeOptions are empty, it will pull values from the top level keys.\n * WARN: Fee/GOV.UK pay configurations (apart from fees) should no longer be stored in the top level, always within feeOptions.\n **/\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const serialiseAndDeserialise: <T>(obj: T) => T;
2
+ export declare const clone: <T>(obj: T & {
3
+ clone?: () => T;
4
+ }) => T;
5
+ export declare function filter<T extends {
6
+ [key: string]: unknown;
7
+ }>(obj: T, predicate: (value: any) => boolean): Partial<T>;
8
+ export declare const nanoid: (size?: number | undefined) => string;
9
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,uBAAuB,WAAY,CAAC,KAAG,CAMnD,CAAA;AAED,eAAO,MAAM,KAAK,WAAY,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,KAAG,CASvD,CAAA;AAED,wBAAgB,MAAM,CAAC,CAAC,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EACzD,GAAG,EAAE,CAAC,EACN,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,GACjC,OAAO,CAAC,CAAC,CAAC,CAUZ;AAED,eAAO,MAAM,MAAM,uCAA6D,CAAA"}