@dwp/govuk-casa 8.15.3 → 8.16.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.
@@ -40,7 +40,7 @@ const renderMiddlewareFactory = (view, contextFactory) => [
40
40
  (req, res, next) => {
41
41
  res.render(view, Object.assign({
42
42
  // Common template variables for both GET and POST requests
43
- inEditMode: req.casa.editMode, editOriginUrl: req.casa.editOrigin, activeContextId: req.casa.journeyContext.identity.id }, contextFactory(req)), (err, templateString) => {
43
+ inEditMode: req.casa.editMode, editOriginUrl: req.casa.editOrigin, editCancelUrl: generateEditCancelUrl(req.casa.editOrigin, req.casa.waypoint), activeContextId: req.casa.journeyContext.identity.id }, contextFactory(req)), (err, templateString) => {
44
44
  if (err) {
45
45
  next(err);
46
46
  }
@@ -61,6 +61,11 @@ const generateGovukErrors = (errors, req) => Object.values(errors || {}).map(([e
61
61
  text: req.t(error.summary, error.variables),
62
62
  href: error.fieldHref,
63
63
  }));
64
+ const generateEditCancelUrl = (editOrigin, waypoint) => {
65
+ const url = new URL(editOrigin, 'https://placeholder.test/');
66
+ url.searchParams.set('editcancel', waypoint);
67
+ return `${url.pathname}${url.search}`;
68
+ };
64
69
  /**
65
70
  * handle errorVisibility flag and function and return boolean
66
71
  *
@@ -1 +1 @@
1
- {"version":3,"file":"journey.js","sourceRoot":"","sources":["../../src/routes/journey.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journey.js","sourceRoot":"","sources":["../../src/routes/journey.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dwp/govuk-casa",
3
- "version": "8.15.3",
3
+ "version": "8.16.0",
4
4
  "description": "A framework for building GOVUK Collect-And-Submit-Applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -42,6 +42,7 @@ const renderMiddlewareFactory = (view, contextFactory) => [
42
42
  // Common template variables for both GET and POST requests
43
43
  inEditMode: req.casa.editMode,
44
44
  editOriginUrl: req.casa.editOrigin,
45
+ editCancelUrl: generateEditCancelUrl(req.casa.editOrigin, req.casa.waypoint),
45
46
  activeContextId: req.casa.journeyContext.identity.id,
46
47
  ...contextFactory(req),
47
48
  }, (err, templateString) => {
@@ -65,6 +66,13 @@ const generateGovukErrors = (errors, req) => Object.values(errors || {}).map(([e
65
66
  text: req.t(error.summary, error.variables),
66
67
  href: error.fieldHref,
67
68
  }))
69
+
70
+ const generateEditCancelUrl = (editOrigin, waypoint) => {
71
+ const url = new URL(editOrigin, 'https://placeholder.test/');
72
+ url.searchParams.set('editcancel', waypoint);
73
+ return `${url.pathname}${url.search}`;
74
+ };
75
+
68
76
  /**
69
77
  * handle errorVisibility flag and function and return boolean
70
78
  *
@@ -13,10 +13,11 @@ A "Continue" button (and "Cancel" link if in edit mode) will also be added.
13
13
  {% from "casa/components/journey-form/macro.njk" import casaJourneyForm with context %}
14
14
 
15
15
  {% call casaJourneyForm({
16
- formUrl: '/form/url',
16
+ formUrl: formUrl,
17
17
  csrfToken: casa.csrfToken,
18
- inEditMode: true,
19
- editOriginUrl: '/url/to/review/page',
18
+ inEditMode: inEditMode,
19
+ editOriginUrl: editOriginUrl,
20
+ editCancelUrl: editCancelUrl,
20
21
  activeContextId: activeContextId,
21
22
  buttonBarHidden: false
22
23
  }) %}
@@ -56,6 +57,7 @@ Note that the submit button is configured to prevent double-clicks and avoid dup
56
57
  | `csrfToken` | string | Yes | Token used to protect form from CSRF (available to user's templates via the global `casa.csrfToken` variable) |
57
58
  | `inEditMode` | boolean | No | Toggle edit-mode of the form (available to page templates using default GET/POST handlers via the local `inEditMode` variable) |
58
59
  | `editOriginUrl` | string | No | Absolute URL to the page from which the edit request came (defaults to `review`) (available to user's templates using default GET/POST handlers via the local `editOriginUrl` variable) |
60
+ | `editCancelUrl` | string | No | Absolute URL to the page that will cancel edit mode. Usually the same as `editorigin` with `?editcancel=<waypoint-that-cancelled>` appended (default: same as `editorigin`) |
59
61
  | `activeContextId` | string | No | ID of the active context to save data into. Won't be present if the "default" context is active |
60
62
  | `buttonBarHidden` | boolean | No | Toggle the rendering of the bar containing the "Continue" button and "Cancel" link.Useful if you want to render your own buttons |
61
63
  | `buttonText` | string | No | Overrides default button text i.e Save changes. If you need to retain the save changes switch you will need to add this logic |
@@ -20,7 +20,7 @@
20
20
  }) }}
21
21
 
22
22
  {% if params.inEditMode %}
23
- <a href="{{ params.editOriginUrl }}" class="govuk-link govuk-link--no-visited-state">{{ t('common:form.buttons.cancel.label') }}</a>
23
+ <a href="{{ params.editCancelUrl if params.editCancelUrl else params.editOriginUrl }}" class="govuk-link govuk-link--no-visited-state">{{ t('common:form.buttons.cancel.label') }}</a>
24
24
  {% endif %}
25
25
  </div>
26
26
  {% endif %}
@@ -42,6 +42,7 @@
42
42
  csrfToken: casa.csrfToken,
43
43
  inEditMode: inEditMode,
44
44
  editOriginUrl: editOriginUrl,
45
+ editCancelUrl: editCancelUrl,
45
46
  activeContextId: activeContextId
46
47
  }) %}
47
48
  {% block journey_form %}{% endblock %}