@dwp/govuk-casa 9.6.6 → 10.0.0

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 (287) hide show
  1. package/dist/assets/css/casa.css +1 -1
  2. package/dist/assets/css/casa.css.map +1 -1
  3. package/dist/casa.d.ts +81 -41
  4. package/dist/casa.d.ts.map +1 -0
  5. package/dist/casa.js +72 -99
  6. package/dist/core-plugins/edit-snapshot/src/configure.d.ts +1 -0
  7. package/dist/core-plugins/edit-snapshot/src/configure.d.ts.map +1 -0
  8. package/dist/core-plugins/edit-snapshot/src/configure.js +7 -14
  9. package/dist/core-plugins/edit-snapshot/src/index.d.ts +1 -0
  10. package/dist/core-plugins/edit-snapshot/src/index.d.ts.map +1 -0
  11. package/dist/core-plugins/edit-snapshot/src/index.js +3 -9
  12. package/dist/core-plugins/edit-snapshot/src/post-steer-hook.d.ts +2 -1
  13. package/dist/core-plugins/edit-snapshot/src/post-steer-hook.d.ts.map +1 -0
  14. package/dist/core-plugins/edit-snapshot/src/post-steer-hook.js +8 -13
  15. package/dist/core-plugins/edit-snapshot/src/pre-steer-hook.d.ts +2 -1
  16. package/dist/core-plugins/edit-snapshot/src/pre-steer-hook.d.ts.map +1 -0
  17. package/dist/core-plugins/edit-snapshot/src/pre-steer-hook.js +13 -18
  18. package/dist/core-plugins/edit-snapshot/src/utils.d.ts +8 -5
  19. package/dist/core-plugins/edit-snapshot/src/utils.d.ts.map +1 -0
  20. package/dist/core-plugins/edit-snapshot/src/utils.js +37 -19
  21. package/dist/core-plugins/index.d.ts +1 -0
  22. package/dist/core-plugins/index.d.ts.map +1 -0
  23. package/dist/core-plugins/index.js +1 -9
  24. package/dist/lib/CasaTemplateLoader.d.ts +1 -0
  25. package/dist/lib/CasaTemplateLoader.d.ts.map +1 -0
  26. package/dist/lib/CasaTemplateLoader.js +2 -6
  27. package/dist/lib/JourneyContext.d.ts +22 -11
  28. package/dist/lib/JourneyContext.d.ts.map +1 -0
  29. package/dist/lib/JourneyContext.js +40 -45
  30. package/dist/lib/MutableRouter.d.ts +74 -55
  31. package/dist/lib/MutableRouter.d.ts.map +1 -0
  32. package/dist/lib/MutableRouter.js +48 -45
  33. package/dist/lib/NullObject.d.ts +3 -0
  34. package/dist/lib/NullObject.d.ts.map +1 -0
  35. package/dist/lib/NullObject.js +3 -0
  36. package/dist/lib/Plan.d.ts +2 -1
  37. package/dist/lib/Plan.d.ts.map +1 -0
  38. package/dist/lib/Plan.js +44 -62
  39. package/dist/lib/ValidationError.d.ts +2 -1
  40. package/dist/lib/ValidationError.d.ts.map +1 -0
  41. package/dist/lib/ValidationError.js +3 -11
  42. package/dist/lib/ValidatorFactory.d.ts +5 -6
  43. package/dist/lib/ValidatorFactory.d.ts.map +1 -0
  44. package/dist/lib/ValidatorFactory.js +4 -12
  45. package/dist/lib/configuration-ingestor.d.ts +10 -22
  46. package/dist/lib/configuration-ingestor.d.ts.map +1 -0
  47. package/dist/lib/configuration-ingestor.js +61 -143
  48. package/dist/lib/configure.d.ts +2 -1
  49. package/dist/lib/configure.d.ts.map +1 -0
  50. package/dist/lib/configure.js +40 -52
  51. package/dist/lib/constants.d.ts +1 -0
  52. package/dist/lib/constants.d.ts.map +1 -0
  53. package/dist/lib/constants.js +8 -12
  54. package/dist/lib/context-id-generators.d.ts +1 -0
  55. package/dist/lib/context-id-generators.d.ts.map +1 -0
  56. package/dist/lib/context-id-generators.js +4 -9
  57. package/dist/lib/end-session.d.ts +2 -1
  58. package/dist/lib/end-session.d.ts.map +1 -0
  59. package/dist/lib/end-session.js +4 -11
  60. package/dist/lib/field.d.ts +2 -1
  61. package/dist/lib/field.d.ts.map +1 -0
  62. package/dist/lib/field.js +11 -21
  63. package/dist/lib/index.d.ts +1 -0
  64. package/dist/lib/index.d.ts.map +1 -0
  65. package/dist/lib/index.js +13 -65
  66. package/dist/lib/logger.d.ts +25 -2
  67. package/dist/lib/logger.d.ts.map +1 -0
  68. package/dist/lib/logger.js +18 -9
  69. package/dist/lib/mount.d.ts +1 -0
  70. package/dist/lib/mount.d.ts.map +1 -0
  71. package/dist/lib/mount.js +10 -16
  72. package/dist/lib/nunjucks-filters.d.ts +7 -3
  73. package/dist/lib/nunjucks-filters.d.ts.map +1 -0
  74. package/dist/lib/nunjucks-filters.js +58 -71
  75. package/dist/lib/nunjucks.d.ts +2 -2
  76. package/dist/lib/nunjucks.d.ts.map +1 -0
  77. package/dist/lib/nunjucks.js +12 -25
  78. package/dist/lib/utils.d.ts +4 -2
  79. package/dist/lib/utils.d.ts.map +1 -0
  80. package/dist/lib/utils.js +14 -28
  81. package/dist/lib/validators/dateObject.d.ts +1 -0
  82. package/dist/lib/validators/dateObject.d.ts.map +1 -0
  83. package/dist/lib/validators/dateObject.js +14 -21
  84. package/dist/lib/validators/email.d.ts +1 -0
  85. package/dist/lib/validators/email.d.ts.map +1 -0
  86. package/dist/lib/validators/email.js +8 -15
  87. package/dist/lib/validators/inArray.d.ts +1 -0
  88. package/dist/lib/validators/inArray.d.ts.map +1 -0
  89. package/dist/lib/validators/inArray.js +8 -15
  90. package/dist/lib/validators/index.d.ts +1 -0
  91. package/dist/lib/validators/index.d.ts.map +1 -0
  92. package/dist/lib/validators/index.js +21 -27
  93. package/dist/lib/validators/nino.d.ts +1 -0
  94. package/dist/lib/validators/nino.d.ts.map +1 -0
  95. package/dist/lib/validators/nino.js +6 -13
  96. package/dist/lib/validators/postalAddressObject.d.ts +1 -0
  97. package/dist/lib/validators/postalAddressObject.d.ts.map +1 -0
  98. package/dist/lib/validators/postalAddressObject.js +12 -19
  99. package/dist/lib/validators/range.d.ts +1 -0
  100. package/dist/lib/validators/range.d.ts.map +1 -0
  101. package/dist/lib/validators/range.js +6 -13
  102. package/dist/lib/validators/regex.d.ts +1 -0
  103. package/dist/lib/validators/regex.d.ts.map +1 -0
  104. package/dist/lib/validators/regex.js +6 -13
  105. package/dist/lib/validators/required.d.ts +1 -0
  106. package/dist/lib/validators/required.d.ts.map +1 -0
  107. package/dist/lib/validators/required.js +9 -17
  108. package/dist/lib/validators/strlen.d.ts +1 -0
  109. package/dist/lib/validators/strlen.d.ts.map +1 -0
  110. package/dist/lib/validators/strlen.js +6 -13
  111. package/dist/lib/validators/wordCount.d.ts +1 -0
  112. package/dist/lib/validators/wordCount.d.ts.map +1 -0
  113. package/dist/lib/validators/wordCount.js +6 -13
  114. package/dist/lib/waypoint-url.d.ts +3 -2
  115. package/dist/lib/waypoint-url.d.ts.map +1 -0
  116. package/dist/lib/waypoint-url.js +12 -19
  117. package/dist/middleware/body-parser.d.ts +1 -0
  118. package/dist/middleware/body-parser.d.ts.map +1 -0
  119. package/dist/middleware/body-parser.js +4 -9
  120. package/dist/middleware/csrf.d.ts +1 -0
  121. package/dist/middleware/csrf.d.ts.map +1 -0
  122. package/dist/middleware/csrf.js +4 -8
  123. package/dist/middleware/data.d.ts +2 -3
  124. package/dist/middleware/data.d.ts.map +1 -0
  125. package/dist/middleware/data.js +23 -25
  126. package/dist/middleware/gather-fields.d.ts +3 -1
  127. package/dist/middleware/gather-fields.d.ts.map +1 -0
  128. package/dist/middleware/gather-fields.js +13 -14
  129. package/dist/middleware/i18n.d.ts +1 -0
  130. package/dist/middleware/i18n.d.ts.map +1 -0
  131. package/dist/middleware/i18n.js +26 -31
  132. package/dist/middleware/post.d.ts +1 -0
  133. package/dist/middleware/post.d.ts.map +1 -0
  134. package/dist/middleware/post.js +3 -10
  135. package/dist/middleware/pre.d.ts +2 -1
  136. package/dist/middleware/pre.d.ts.map +1 -0
  137. package/dist/middleware/pre.js +6 -12
  138. package/dist/middleware/progress-journey.d.ts +5 -3
  139. package/dist/middleware/progress-journey.d.ts.map +1 -0
  140. package/dist/middleware/progress-journey.js +20 -18
  141. package/dist/middleware/sanitise-fields.d.ts +5 -3
  142. package/dist/middleware/sanitise-fields.d.ts.map +1 -0
  143. package/dist/middleware/sanitise-fields.js +25 -17
  144. package/dist/middleware/serve-first-waypoint.d.ts +1 -0
  145. package/dist/middleware/serve-first-waypoint.d.ts.map +1 -0
  146. package/dist/middleware/serve-first-waypoint.js +3 -6
  147. package/dist/middleware/session.d.ts +15 -0
  148. package/dist/middleware/session.d.ts.map +1 -0
  149. package/dist/middleware/session.js +53 -57
  150. package/dist/middleware/skip-waypoint.d.ts +3 -2
  151. package/dist/middleware/skip-waypoint.d.ts.map +1 -0
  152. package/dist/middleware/skip-waypoint.js +15 -14
  153. package/dist/middleware/steer-journey.d.ts +2 -1
  154. package/dist/middleware/steer-journey.d.ts.map +1 -0
  155. package/dist/middleware/steer-journey.js +7 -13
  156. package/dist/middleware/strip-proxy-path.d.ts +3 -2
  157. package/dist/middleware/strip-proxy-path.d.ts.map +1 -0
  158. package/dist/middleware/strip-proxy-path.js +24 -24
  159. package/dist/middleware/validate-fields.d.ts +7 -4
  160. package/dist/middleware/validate-fields.d.ts.map +1 -0
  161. package/dist/middleware/validate-fields.js +22 -11
  162. package/dist/routes/ancillary.d.ts +1 -0
  163. package/dist/routes/ancillary.d.ts.map +1 -0
  164. package/dist/routes/ancillary.js +3 -10
  165. package/dist/routes/journey.d.ts +7 -2
  166. package/dist/routes/journey.d.ts.map +1 -0
  167. package/dist/routes/journey.js +56 -55
  168. package/dist/routes/static.d.ts +1 -0
  169. package/dist/routes/static.d.ts.map +1 -0
  170. package/dist/routes/static.js +15 -23
  171. package/locales/cy/error.json +1 -0
  172. package/locales/en/error.json +1 -0
  173. package/package.json +32 -38
  174. package/src/casa.js +49 -29
  175. package/src/core-plugins/edit-snapshot/src/post-steer-hook.js +1 -0
  176. package/src/core-plugins/edit-snapshot/src/pre-steer-hook.js +2 -1
  177. package/src/core-plugins/edit-snapshot/src/utils.js +29 -1
  178. package/src/lib/JourneyContext.js +31 -28
  179. package/src/lib/MutableRouter.js +47 -38
  180. package/src/lib/NullObject.js +4 -0
  181. package/src/lib/Plan.js +41 -55
  182. package/src/lib/ValidationError.js +2 -4
  183. package/src/lib/ValidatorFactory.js +3 -5
  184. package/src/lib/configuration-ingestor.js +18 -38
  185. package/src/lib/configure.js +7 -10
  186. package/src/lib/end-session.js +1 -1
  187. package/src/lib/field.js +7 -12
  188. package/src/lib/logger.js +16 -0
  189. package/src/lib/mount.js +1 -1
  190. package/src/lib/nunjucks-filters.js +51 -61
  191. package/src/lib/nunjucks.js +3 -12
  192. package/src/lib/utils.js +2 -1
  193. package/src/lib/validators/dateObject.js +3 -4
  194. package/src/lib/validators/postalAddressObject.js +6 -7
  195. package/src/lib/validators/required.js +1 -3
  196. package/src/lib/waypoint-url.js +15 -19
  197. package/src/middleware/csrf.js +1 -1
  198. package/src/middleware/data.js +13 -13
  199. package/src/middleware/gather-fields.js +8 -2
  200. package/src/middleware/i18n.js +9 -6
  201. package/src/middleware/pre.js +1 -1
  202. package/src/middleware/progress-journey.js +8 -0
  203. package/src/middleware/sanitise-fields.js +17 -2
  204. package/src/middleware/session.js +53 -12
  205. package/src/middleware/skip-waypoint.js +8 -1
  206. package/src/middleware/steer-journey.js +1 -1
  207. package/src/middleware/strip-proxy-path.js +21 -16
  208. package/src/middleware/validate-fields.js +19 -0
  209. package/src/routes/journey.js +18 -8
  210. package/src/routes/static.js +5 -4
  211. package/views/casa/components/character-count/template.njk +1 -0
  212. package/views/casa/components/checkboxes/template.njk +1 -0
  213. package/views/casa/components/date-input/template.njk +1 -0
  214. package/views/casa/components/input/template.njk +1 -0
  215. package/views/casa/components/postal-address-object/template.njk +5 -0
  216. package/views/casa/components/radios/template.njk +1 -0
  217. package/views/casa/components/select/template.njk +1 -0
  218. package/views/casa/components/textarea/template.njk +1 -0
  219. package/views/casa/layouts/journey.njk +1 -1
  220. package/views/casa/layouts/main.njk +11 -21
  221. package/dist/casa.js.map +0 -1
  222. package/dist/core-plugins/edit-snapshot/src/configure.js.map +0 -1
  223. package/dist/core-plugins/edit-snapshot/src/index.js.map +0 -1
  224. package/dist/core-plugins/edit-snapshot/src/post-steer-hook.js.map +0 -1
  225. package/dist/core-plugins/edit-snapshot/src/pre-steer-hook.js.map +0 -1
  226. package/dist/core-plugins/edit-snapshot/src/utils.js.map +0 -1
  227. package/dist/core-plugins/index.js.map +0 -1
  228. package/dist/lib/CasaTemplateLoader.js.map +0 -1
  229. package/dist/lib/JourneyContext.js.map +0 -1
  230. package/dist/lib/MutableRouter.js.map +0 -1
  231. package/dist/lib/Plan.js.map +0 -1
  232. package/dist/lib/ValidationError.js.map +0 -1
  233. package/dist/lib/ValidatorFactory.js.map +0 -1
  234. package/dist/lib/configuration-ingestor.js.map +0 -1
  235. package/dist/lib/configure.js.map +0 -1
  236. package/dist/lib/constants.js.map +0 -1
  237. package/dist/lib/context-id-generators.js.map +0 -1
  238. package/dist/lib/dirname.cjs +0 -1
  239. package/dist/lib/dirname.d.cts +0 -2
  240. package/dist/lib/end-session.js.map +0 -1
  241. package/dist/lib/field.js.map +0 -1
  242. package/dist/lib/index.js.map +0 -1
  243. package/dist/lib/logger.js.map +0 -1
  244. package/dist/lib/mount.js.map +0 -1
  245. package/dist/lib/nunjucks-filters.js.map +0 -1
  246. package/dist/lib/nunjucks.js.map +0 -1
  247. package/dist/lib/utils.js.map +0 -1
  248. package/dist/lib/validators/dateObject.js.map +0 -1
  249. package/dist/lib/validators/email.js.map +0 -1
  250. package/dist/lib/validators/inArray.js.map +0 -1
  251. package/dist/lib/validators/index.js.map +0 -1
  252. package/dist/lib/validators/nino.js.map +0 -1
  253. package/dist/lib/validators/postalAddressObject.js.map +0 -1
  254. package/dist/lib/validators/range.js.map +0 -1
  255. package/dist/lib/validators/regex.js.map +0 -1
  256. package/dist/lib/validators/required.js.map +0 -1
  257. package/dist/lib/validators/strlen.js.map +0 -1
  258. package/dist/lib/validators/wordCount.js.map +0 -1
  259. package/dist/lib/waypoint-url.js.map +0 -1
  260. package/dist/middleware/body-parser.js.map +0 -1
  261. package/dist/middleware/csrf.js.map +0 -1
  262. package/dist/middleware/data.js.map +0 -1
  263. package/dist/middleware/dirname.cjs +0 -1
  264. package/dist/middleware/dirname.d.cts +0 -2
  265. package/dist/middleware/gather-fields.js.map +0 -1
  266. package/dist/middleware/i18n.js.map +0 -1
  267. package/dist/middleware/post.js.map +0 -1
  268. package/dist/middleware/pre.js.map +0 -1
  269. package/dist/middleware/progress-journey.js.map +0 -1
  270. package/dist/middleware/sanitise-fields.js.map +0 -1
  271. package/dist/middleware/serve-first-waypoint.js.map +0 -1
  272. package/dist/middleware/session.js.map +0 -1
  273. package/dist/middleware/skip-waypoint.js.map +0 -1
  274. package/dist/middleware/steer-journey.js.map +0 -1
  275. package/dist/middleware/strip-proxy-path.js.map +0 -1
  276. package/dist/middleware/validate-fields.js.map +0 -1
  277. package/dist/mjs/esm-wrapper.js +0 -20
  278. package/dist/mjs/package.json +0 -3
  279. package/dist/package.json +0 -3
  280. package/dist/routes/ancillary.js.map +0 -1
  281. package/dist/routes/dirname.cjs +0 -1
  282. package/dist/routes/dirname.d.cts +0 -2
  283. package/dist/routes/journey.js.map +0 -1
  284. package/dist/routes/static.js.map +0 -1
  285. package/src/lib/dirname.cjs +0 -1
  286. package/src/middleware/dirname.cjs +0 -1
  287. package/src/routes/dirname.cjs +0 -1
@@ -1,4 +1,4 @@
1
- /** @memberof module:@dwp/govuk-casa */
1
+ /** @memberof module:"@dwp/govuk-casa" */
2
2
  export default class MutableRouter {
3
3
  /**
4
4
  * A wrapping class to make Express routers mutable. You can append, prepend
@@ -18,149 +18,168 @@ export default class MutableRouter {
18
18
  /**
19
19
  * Prepend middleware function(s) using the `all()` method.
20
20
  *
21
- * @param {string | Function} path Route path or middleware function
22
- * @param {...Function} callbacks Additional middleware functions
21
+ * @param {string | RequestHandler} path Route path or middleware function
22
+ * @param {...RequestHandler} callbacks Additional middleware functions
23
23
  * @returns {void}
24
24
  */
25
- prependAll(path: string | Function, ...callbacks: Function[]): void;
25
+ prependAll(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
26
26
  /**
27
27
  * Prepend middleware function(s) using the `get()` method.
28
28
  *
29
- * @param {string | Function} path Route path or middleware function
30
- * @param {...Function} callbacks Additional middleware functions
29
+ * @param {string | RequestHandler} path Route path or middleware function
30
+ * @param {...RequestHandler} callbacks Additional middleware functions
31
31
  * @returns {void}
32
32
  */
33
- prependGet(path: string | Function, ...callbacks: Function[]): void;
33
+ prependGet(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
34
34
  /**
35
35
  * Prepend middleware function(s) using the `post()` method.
36
36
  *
37
- * @param {string | Function} path Route path or middleware function
38
- * @param {...Function} callbacks Additional middleware functions
37
+ * @param {string | RequestHandler} path Route path or middleware function
38
+ * @param {...RequestHandler} callbacks Additional middleware functions
39
39
  * @returns {void}
40
40
  */
41
- prependPost(path: string | Function, ...callbacks: Function[]): void;
41
+ prependPost(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
42
42
  /**
43
43
  * Prepend middleware function(s) using the `delete()` method.
44
44
  *
45
- * @param {string | Function} path Route path or middleware function
46
- * @param {...Function} callbacks Additional middleware functions
45
+ * @param {string | RequestHandler} path Route path or middleware function
46
+ * @param {...RequestHandler} callbacks Additional middleware functions
47
47
  * @returns {void}
48
48
  */
49
- prependDelete(path: string | Function, ...callbacks: Function[]): void;
49
+ prependDelete(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
50
50
  /**
51
51
  * Prepend middleware function(s) using the `put()` method.
52
52
  *
53
- * @param {string | Function} path Route path or middleware function
54
- * @param {...Function} callbacks Additional middleware functions
53
+ * @param {string | RequestHandler} path Route path or middleware function
54
+ * @param {...RequestHandler} callbacks Additional middleware functions
55
55
  * @returns {void}
56
56
  */
57
- prependPut(path: string | Function, ...callbacks: Function[]): void;
57
+ prependPut(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
58
58
  /**
59
59
  * Prepend middleware function(s) using the `use()` method.
60
60
  *
61
- * @param {string | Function} path Route path or middleware function
62
- * @param {...Function} callbacks Additional middleware functions
61
+ * @param {string | RequestHandler} path Route path or middleware function
62
+ * @param {...RequestHandler} callbacks Additional middleware functions
63
63
  * @returns {void}
64
64
  */
65
- prependUse(path: string | Function, ...callbacks: Function[]): void;
65
+ prependUse(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
66
66
  /**
67
67
  * Replace middleware function(s) that were mounted using the `all()` method.
68
68
  *
69
- * @param {string | Function} path Route path or middleware function
70
- * @param {...Function} callbacks Additional middleware functions
69
+ * @param {string | RequestHandler} path Route path or middleware function
70
+ * @param {...RequestHandler} callbacks Additional middleware functions
71
71
  * @returns {void}
72
72
  */
73
- replaceAll(path: string | Function, ...callbacks: Function[]): void;
73
+ replaceAll(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
74
74
  /**
75
75
  * Replace middleware function(s) that were mounted using the `get()` method.
76
76
  *
77
- * @param {string | Function} path Route path or middleware function
78
- * @param {...Function} callbacks Additional middleware functions
77
+ * @param {string | RequestHandler} path Route path or middleware function
78
+ * @param {...RequestHandler} callbacks Additional middleware functions
79
79
  * @returns {void}
80
80
  */
81
- replaceGet(path: string | Function, ...callbacks: Function[]): void;
81
+ replaceGet(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
82
82
  /**
83
83
  * Replace middleware function(s) that were mounted using the `post()` method.
84
84
  *
85
- * @param {string | Function} path Route path or middleware function
86
- * @param {...Function} callbacks Additional middleware functions
85
+ * @param {string | RequestHandler} path Route path or middleware function
86
+ * @param {...RequestHandler} callbacks Additional middleware functions
87
87
  * @returns {void}
88
88
  */
89
- replacePost(path: string | Function, ...callbacks: Function[]): void;
89
+ replacePost(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
90
90
  /**
91
91
  * Replace middleware function(s) that were mounted using the `delete()`
92
92
  * method.
93
93
  *
94
- * @param {string | Function} path Route path or middleware function
95
- * @param {...Function} callbacks Additional middleware functions
94
+ * @param {string | RequestHandler} path Route path or middleware function
95
+ * @param {...RequestHandler} callbacks Additional middleware functions
96
96
  * @returns {void}
97
97
  */
98
- replaceDelete(path: string | Function, ...callbacks: Function[]): void;
98
+ replaceDelete(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
99
99
  /**
100
100
  * Replace middleware function(s) that were mounted using the `put()` method.
101
101
  *
102
- * @param {string | Function} path Route path or middleware function
103
- * @param {...Function} callbacks Additional middleware functions
102
+ * @param {string | RequestHandler} path Route path or middleware function
103
+ * @param {...RequestHandler} callbacks Additional middleware functions
104
104
  * @returns {void}
105
105
  */
106
- replacePut(path: string | Function, ...callbacks: Function[]): void;
106
+ replacePut(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
107
107
  /**
108
108
  * Replace middleware function(s) that were mounted using the `use()` method.
109
109
  *
110
- * @param {string | Function} path Route path or middleware function
111
- * @param {...Function} callbacks Additional middleware functions
110
+ * @param {string | RequestHandler} path Route path or middleware function
111
+ * @param {...RequestHandler} callbacks Additional middleware functions
112
112
  * @returns {void}
113
113
  */
114
- replaceUse(path: string | Function, ...callbacks: Function[]): void;
114
+ replaceUse(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
115
115
  /**
116
116
  * Append middleware function(s) using the `all()` method.
117
117
  *
118
- * @param {string | Function} path Route path or middleware function
119
- * @param {...Function} callbacks Additional middleware functions
118
+ * @param {string | RequestHandler} path Route path or middleware function
119
+ * @param {...RequestHandler} callbacks Additional middleware functions
120
120
  * @returns {void}
121
121
  */
122
- all(path: string | Function, ...callbacks: Function[]): void;
122
+ all(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
123
123
  /**
124
124
  * Append middleware function(s) using the `get()` method.
125
125
  *
126
- * @param {string | Function} path Route path or middleware function
127
- * @param {...Function} callbacks Additional middleware functions
126
+ * @param {string | RequestHandler} path Route path or middleware function
127
+ * @param {...RequestHandler} callbacks Additional middleware functions
128
128
  * @returns {void}
129
129
  */
130
- get(path: string | Function, ...callbacks: Function[]): void;
130
+ get(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
131
131
  /**
132
132
  * Append middleware function(s) using the `post()` method.
133
133
  *
134
- * @param {string | Function} path Route path or middleware function
135
- * @param {...Function} callbacks Additional middleware functions
134
+ * @param {string | RequestHandler} path Route path or middleware function
135
+ * @param {...RequestHandler} callbacks Additional middleware functions
136
136
  * @returns {void}
137
137
  */
138
- post(path: string | Function, ...callbacks: Function[]): void;
138
+ post(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
139
139
  /**
140
140
  * Append middleware function(s) using the `delete()` method.
141
141
  *
142
- * @param {string | Function} path Route path or middleware function
143
- * @param {...Function} callbacks Additional middleware functions
142
+ * @param {string | RequestHandler} path Route path or middleware function
143
+ * @param {...RequestHandler} callbacks Additional middleware functions
144
144
  * @returns {void}
145
145
  */
146
- delete(path: string | Function, ...callbacks: Function[]): void;
146
+ delete(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
147
147
  /**
148
148
  * Append middleware function(s) using the `put()` method.
149
149
  *
150
- * @param {string | Function} path Route path or middleware function
151
- * @param {...Function} callbacks Additional middleware functions
150
+ * @param {string | RequestHandler} path Route path or middleware function
151
+ * @param {...RequestHandler} callbacks Additional middleware functions
152
152
  * @returns {void}
153
153
  */
154
- put(path: string | Function, ...callbacks: Function[]): void;
154
+ put(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
155
155
  /**
156
156
  * Append middleware function(s) using the `use()` method.
157
157
  *
158
- * @param {string | Function} path Route path or middleware function
159
- * @param {...Function} callbacks Additional middleware functions
158
+ * @param {string | RequestHandler} path Route path or middleware function
159
+ * @param {...RequestHandler} callbacks Additional middleware functions
160
160
  * @returns {void}
161
161
  */
162
- use(path: string | Function, ...callbacks: Function[]): void;
162
+ use(path: string | RequestHandler, ...callbacks: RequestHandler[]): void;
163
163
  route(): void;
164
164
  #private;
165
165
  }
166
+ export type RequestHandler = import("express").RequestHandler;
167
+ /**
168
+ * Stack route
169
+ */
170
+ export type StackRoute = {
171
+ /**
172
+ * HTTP request method
173
+ */
174
+ method: string;
175
+ /**
176
+ * Route path
177
+ */
178
+ path: string;
179
+ /**
180
+ * Router arguments
181
+ */
182
+ args: [string, ...RequestHandler[]];
183
+ };
166
184
  import { Router } from "express";
185
+ //# sourceMappingURL=MutableRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MutableRouter.d.ts","sourceRoot":"","sources":["../../src/lib/MutableRouter.js"],"names":[],"mappings":"AAEA,yCAAyC;AACzC;IAUE;;;;;;;OAOG;IACH,sBAFW,OAAO,SAAS,EAAE,aAAa,EAMzC;IAkDD;;;;OAIG;IACH,QAFa,MAAM,CAiBlB;IAID;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,kBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,oBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAID;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,kBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;;OAOG;IACH,oBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,iBAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAID;;;;;;OAMG;IACH,UAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,UAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,WAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,aAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,UAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,UAJW,MAAM,GAAG,cAAc,gBACpB,cAAc,EAAA,GACf,IAAI,CAIhB;IAED,cAIC;;CACF;6BAEa,OAAO,SAAS,EAAE,cAAc;;;;;;;;YAIhC,MAAM;;;;UACN,MAAM;;;;UACN,CAAC,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC;;uBA3TpB,SAAS"}
@@ -1,9 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const express_1 = require("express");
4
- /** @memberof module:@dwp/govuk-casa */
5
- class MutableRouter {
6
- /** @type {Array} */
1
+ import { Router } from "express";
2
+ /** @memberof module:"@dwp/govuk-casa" */
3
+ export default class MutableRouter {
4
+ /** @type {StackRoute[]} */
7
5
  #stack;
8
6
  /** @type {Router} */
9
7
  #router;
@@ -18,7 +16,7 @@ class MutableRouter {
18
16
  * @param {import("express").RouterOptions} [options] Router options
19
17
  */
20
18
  constructor(options) {
21
- this.#router = (0, express_1.Router)(options);
19
+ this.#router = Router(options);
22
20
  this.#stack = [];
23
21
  this.#sealed = false;
24
22
  }
@@ -81,8 +79,8 @@ class MutableRouter {
81
79
  /**
82
80
  * Prepend middleware function(s) using the `all()` method.
83
81
  *
84
- * @param {string | Function} path Route path or middleware function
85
- * @param {...Function} callbacks Additional middleware functions
82
+ * @param {string | RequestHandler} path Route path or middleware function
83
+ * @param {...RequestHandler} callbacks Additional middleware functions
86
84
  * @returns {void}
87
85
  */
88
86
  prependAll(path, ...callbacks) {
@@ -91,8 +89,8 @@ class MutableRouter {
91
89
  /**
92
90
  * Prepend middleware function(s) using the `get()` method.
93
91
  *
94
- * @param {string | Function} path Route path or middleware function
95
- * @param {...Function} callbacks Additional middleware functions
92
+ * @param {string | RequestHandler} path Route path or middleware function
93
+ * @param {...RequestHandler} callbacks Additional middleware functions
96
94
  * @returns {void}
97
95
  */
98
96
  prependGet(path, ...callbacks) {
@@ -101,8 +99,8 @@ class MutableRouter {
101
99
  /**
102
100
  * Prepend middleware function(s) using the `post()` method.
103
101
  *
104
- * @param {string | Function} path Route path or middleware function
105
- * @param {...Function} callbacks Additional middleware functions
102
+ * @param {string | RequestHandler} path Route path or middleware function
103
+ * @param {...RequestHandler} callbacks Additional middleware functions
106
104
  * @returns {void}
107
105
  */
108
106
  prependPost(path, ...callbacks) {
@@ -111,8 +109,8 @@ class MutableRouter {
111
109
  /**
112
110
  * Prepend middleware function(s) using the `delete()` method.
113
111
  *
114
- * @param {string | Function} path Route path or middleware function
115
- * @param {...Function} callbacks Additional middleware functions
112
+ * @param {string | RequestHandler} path Route path or middleware function
113
+ * @param {...RequestHandler} callbacks Additional middleware functions
116
114
  * @returns {void}
117
115
  */
118
116
  prependDelete(path, ...callbacks) {
@@ -121,8 +119,8 @@ class MutableRouter {
121
119
  /**
122
120
  * Prepend middleware function(s) using the `put()` method.
123
121
  *
124
- * @param {string | Function} path Route path or middleware function
125
- * @param {...Function} callbacks Additional middleware functions
122
+ * @param {string | RequestHandler} path Route path or middleware function
123
+ * @param {...RequestHandler} callbacks Additional middleware functions
126
124
  * @returns {void}
127
125
  */
128
126
  prependPut(path, ...callbacks) {
@@ -131,8 +129,8 @@ class MutableRouter {
131
129
  /**
132
130
  * Prepend middleware function(s) using the `use()` method.
133
131
  *
134
- * @param {string | Function} path Route path or middleware function
135
- * @param {...Function} callbacks Additional middleware functions
132
+ * @param {string | RequestHandler} path Route path or middleware function
133
+ * @param {...RequestHandler} callbacks Additional middleware functions
136
134
  * @returns {void}
137
135
  */
138
136
  prependUse(path, ...callbacks) {
@@ -142,8 +140,8 @@ class MutableRouter {
142
140
  /**
143
141
  * Replace middleware function(s) that were mounted using the `all()` method.
144
142
  *
145
- * @param {string | Function} path Route path or middleware function
146
- * @param {...Function} callbacks Additional middleware functions
143
+ * @param {string | RequestHandler} path Route path or middleware function
144
+ * @param {...RequestHandler} callbacks Additional middleware functions
147
145
  * @returns {void}
148
146
  */
149
147
  replaceAll(path, ...callbacks) {
@@ -152,8 +150,8 @@ class MutableRouter {
152
150
  /**
153
151
  * Replace middleware function(s) that were mounted using the `get()` method.
154
152
  *
155
- * @param {string | Function} path Route path or middleware function
156
- * @param {...Function} callbacks Additional middleware functions
153
+ * @param {string | RequestHandler} path Route path or middleware function
154
+ * @param {...RequestHandler} callbacks Additional middleware functions
157
155
  * @returns {void}
158
156
  */
159
157
  replaceGet(path, ...callbacks) {
@@ -162,8 +160,8 @@ class MutableRouter {
162
160
  /**
163
161
  * Replace middleware function(s) that were mounted using the `post()` method.
164
162
  *
165
- * @param {string | Function} path Route path or middleware function
166
- * @param {...Function} callbacks Additional middleware functions
163
+ * @param {string | RequestHandler} path Route path or middleware function
164
+ * @param {...RequestHandler} callbacks Additional middleware functions
167
165
  * @returns {void}
168
166
  */
169
167
  replacePost(path, ...callbacks) {
@@ -173,8 +171,8 @@ class MutableRouter {
173
171
  * Replace middleware function(s) that were mounted using the `delete()`
174
172
  * method.
175
173
  *
176
- * @param {string | Function} path Route path or middleware function
177
- * @param {...Function} callbacks Additional middleware functions
174
+ * @param {string | RequestHandler} path Route path or middleware function
175
+ * @param {...RequestHandler} callbacks Additional middleware functions
178
176
  * @returns {void}
179
177
  */
180
178
  replaceDelete(path, ...callbacks) {
@@ -183,8 +181,8 @@ class MutableRouter {
183
181
  /**
184
182
  * Replace middleware function(s) that were mounted using the `put()` method.
185
183
  *
186
- * @param {string | Function} path Route path or middleware function
187
- * @param {...Function} callbacks Additional middleware functions
184
+ * @param {string | RequestHandler} path Route path or middleware function
185
+ * @param {...RequestHandler} callbacks Additional middleware functions
188
186
  * @returns {void}
189
187
  */
190
188
  replacePut(path, ...callbacks) {
@@ -193,8 +191,8 @@ class MutableRouter {
193
191
  /**
194
192
  * Replace middleware function(s) that were mounted using the `use()` method.
195
193
  *
196
- * @param {string | Function} path Route path or middleware function
197
- * @param {...Function} callbacks Additional middleware functions
194
+ * @param {string | RequestHandler} path Route path or middleware function
195
+ * @param {...RequestHandler} callbacks Additional middleware functions
198
196
  * @returns {void}
199
197
  */
200
198
  replaceUse(path, ...callbacks) {
@@ -204,8 +202,8 @@ class MutableRouter {
204
202
  /**
205
203
  * Append middleware function(s) using the `all()` method.
206
204
  *
207
- * @param {string | Function} path Route path or middleware function
208
- * @param {...Function} callbacks Additional middleware functions
205
+ * @param {string | RequestHandler} path Route path or middleware function
206
+ * @param {...RequestHandler} callbacks Additional middleware functions
209
207
  * @returns {void}
210
208
  */
211
209
  all(path, ...callbacks) {
@@ -214,8 +212,8 @@ class MutableRouter {
214
212
  /**
215
213
  * Append middleware function(s) using the `get()` method.
216
214
  *
217
- * @param {string | Function} path Route path or middleware function
218
- * @param {...Function} callbacks Additional middleware functions
215
+ * @param {string | RequestHandler} path Route path or middleware function
216
+ * @param {...RequestHandler} callbacks Additional middleware functions
219
217
  * @returns {void}
220
218
  */
221
219
  get(path, ...callbacks) {
@@ -224,8 +222,8 @@ class MutableRouter {
224
222
  /**
225
223
  * Append middleware function(s) using the `post()` method.
226
224
  *
227
- * @param {string | Function} path Route path or middleware function
228
- * @param {...Function} callbacks Additional middleware functions
225
+ * @param {string | RequestHandler} path Route path or middleware function
226
+ * @param {...RequestHandler} callbacks Additional middleware functions
229
227
  * @returns {void}
230
228
  */
231
229
  post(path, ...callbacks) {
@@ -234,8 +232,8 @@ class MutableRouter {
234
232
  /**
235
233
  * Append middleware function(s) using the `delete()` method.
236
234
  *
237
- * @param {string | Function} path Route path or middleware function
238
- * @param {...Function} callbacks Additional middleware functions
235
+ * @param {string | RequestHandler} path Route path or middleware function
236
+ * @param {...RequestHandler} callbacks Additional middleware functions
239
237
  * @returns {void}
240
238
  */
241
239
  delete(path, ...callbacks) {
@@ -244,8 +242,8 @@ class MutableRouter {
244
242
  /**
245
243
  * Append middleware function(s) using the `put()` method.
246
244
  *
247
- * @param {string | Function} path Route path or middleware function
248
- * @param {...Function} callbacks Additional middleware functions
245
+ * @param {string | RequestHandler} path Route path or middleware function
246
+ * @param {...RequestHandler} callbacks Additional middleware functions
249
247
  * @returns {void}
250
248
  */
251
249
  put(path, ...callbacks) {
@@ -254,8 +252,8 @@ class MutableRouter {
254
252
  /**
255
253
  * Append middleware function(s) using the `use()` method.
256
254
  *
257
- * @param {string | Function} path Route path or middleware function
258
- * @param {...Function} callbacks Additional middleware functions
255
+ * @param {string | RequestHandler} path Route path or middleware function
256
+ * @param {...RequestHandler} callbacks Additional middleware functions
259
257
  * @returns {void}
260
258
  */
261
259
  use(path, ...callbacks) {
@@ -265,5 +263,10 @@ class MutableRouter {
265
263
  throw new Error("route() method is not supported on MutableRouter. Use verb methods for now.");
266
264
  }
267
265
  }
268
- exports.default = MutableRouter;
269
- //# sourceMappingURL=MutableRouter.js.map
266
+ /** @typedef {import("express").RequestHandler} RequestHandler */
267
+ /**
268
+ * @typedef {object} StackRoute Stack route
269
+ * @property {string} method HTTP request method
270
+ * @property {string} path Route path
271
+ * @property {[string, ...RequestHandler[]]} args Router arguments
272
+ */
@@ -0,0 +1,3 @@
1
+ export default NullObject;
2
+ declare function NullObject(): void;
3
+ //# sourceMappingURL=NullObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NullObject.d.ts","sourceRoot":"","sources":["../../src/lib/NullObject.js"],"names":[],"mappings":";AAAA,oCAAiC"}
@@ -0,0 +1,3 @@
1
+ const NullObject = function () { };
2
+ NullObject.prototype = Object.create(null);
3
+ export default NullObject;
@@ -1,4 +1,4 @@
1
- /** @memberof module:@dwp/govuk-casa */
1
+ /** @memberof module:"@dwp/govuk-casa" */
2
2
  export default class Plan {
3
3
  /**
4
4
  * Waypoints using the url:// protocol are known as "exit nodes" as they
@@ -229,3 +229,4 @@ export type PlanConstructorOptions = {
229
229
  };
230
230
  import JourneyContext from "./JourneyContext.js";
231
231
  import { Graph } from "@dagrejs/graphlib";
232
+ //# sourceMappingURL=Plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Plan.d.ts","sourceRoot":"","sources":["../../src/lib/Plan.js"],"names":[],"mappings":"AA+IA,yCAAyC;AACzC;IAoBE;;;;;;OAMG;IACH,wBAHW,MAAM,GACJ,OAAO,CAInB;IAED;;;;OAIG;IACH,mBAFW,sBAAsB,EAkBhC;IAED;;;;OAIG;IACH,cAFa,sBAAsB,CAIlC;IAED;;;;OAIG;IACH,iBAFa,MAAM,EAAE,CAIpB;IAED;;;;;OAKG;IACH,4BAHc,MAAM,EAAA,GACP,IAAI,CAKhB;IAED;;;;;OAKG;IACH,sBAHW,MAAM,GACJ,OAAO,CAInB;IAED;;;;OAIG;IACH,gBAFa,MAAM,EAAE,CAIpB;IAED;;;;;OAKG;IACH,2BAHW,MAAM,GACJ,OAAO,CAInB;IAED;;;;OAIG;IACH,aAFa,SAAS,EAAE,CAMvB;IAED;;;;;;;OAOG;IACH,uBALW,MAAM,OACN,MAAM,QACN,MAAM,GACJ,kBAAkB,CAI9B;IAED;;;;;;;OAOG;IACH,sBAJW,MAAM,QACN,MAAM,GACJ,SAAS,EAAE,CAMvB;IAED;;;;;;;OAOG;IACH,0BAJW,MAAM,QACN,MAAM,GACJ,SAAS,EAAE,CAIvB;IAED;;;;;;OAMG;IACH,0BAHc,MAAM,EAAA,GACP,IAAI,CAShB;IAED;;;;;;;OAOG;IACH,kBALW,MAAM,OACN,MAAM,UACN,kBAAkB,GAChB,IAAI,CAIhB;IAED;;;;;;;OAOG;IACH,kBALW,MAAM,OACN,MAAM,UACN,kBAAkB,GAChB,IAAI,CAIhB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,cANW,MAAM,OACN,MAAM,eACN,kBAAkB,eAClB,kBAAkB,GAChB,IAAI,CAuBhB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,mBATW,MAAM,OACN,MAAM,QACN,MAAM,UAEN,kBAAkB,GAEhB,IAAI,CAqDhB;IAED;;;;;;;OAOG;IACH,kBAJW,cAAc,YACd,mBAAmB,GACjB,MAAM,EAAE,CAIpB;IAED;;;;;;;OAOG;IACH,4BAJW,cAAc,YACd,mBAAmB,GACjB,SAAS,EAAE,CAIvB;IAED;;;;;;;OAOG;IACH,4BAJW,cAAc,YACd,mBAAmB,GACjB,SAAS,EAAE,CAIvB;IAED;;;;;;;;;;;;;;;OAeG;IACH,wBALW,cAAc,YACd,mBAAmB,GACjB,SAAS,EAAE,CA0HvB;IAED;;;;;OAKG;IACH,qBAFa,KAAK,CAIjB;;CACF;wBA9nBY,OAAO,SAAS,EAAE,SAAS;iCAK3B,OAAO,SAAS,EAAE,kBAAkB;kCAKpC,OAAO,SAAS,EAAE,mBAAmB;0BAKrC,OAAO,SAAS,EAAE,WAAW;;;;;;;;;;;;;2BAtBf,qBAAqB;sBAD1B,mBAAmB"}