@hmcts/ccd-case-ui-toolkit 7.1.32-ungrey-back-button → 7.1.32-ungrey-back-button-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 (34) hide show
  1. package/esm2022/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +12 -9
  2. package/esm2022/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +19 -15
  3. package/esm2022/lib/shared/components/palette/base-field/abstract-field-write-journey.component.mjs +1 -1
  4. package/esm2022/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.mjs +8 -3
  5. package/esm2022/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.mjs +3 -3
  6. package/esm2022/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.mjs +36 -29
  7. package/esm2022/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.mjs +1 -1
  8. package/esm2022/lib/shared/components/palette/case-flag/read-case-flag-field.component.mjs +4 -3
  9. package/esm2022/lib/shared/components/palette/case-flag/write-case-flag-field.component.mjs +1 -1
  10. package/esm2022/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.mjs +2 -5
  11. package/esm2022/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.mjs +1 -1
  12. package/esm2022/lib/shared/components/palette/linked-cases/components/unlink-cases/unlink-cases.component.mjs +1 -1
  13. package/esm2022/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.mjs +5 -5
  14. package/esm2022/lib/shared/services/journey/multipage-component-state.service.mjs +1 -1
  15. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +78 -61
  16. package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  17. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts +1 -0
  18. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  19. package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts +3 -0
  20. package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts.map +1 -1
  21. package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts +4 -2
  22. package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts.map +1 -1
  23. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts +1 -1
  24. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts.map +1 -1
  25. package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts +7 -2
  26. package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts.map +1 -1
  27. package/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.d.ts.map +1 -1
  28. package/lib/shared/components/palette/case-flag/read-case-flag-field.component.d.ts.map +1 -1
  29. package/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.d.ts +0 -1
  30. package/lib/shared/components/palette/linked-cases/components/before-you-start/before-you-start.component.d.ts.map +1 -1
  31. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts +1 -1
  32. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts.map +1 -1
  33. package/lib/shared/services/journey/multipage-component-state.service.d.ts.map +1 -1
  34. package/package.json +1 -1
@@ -114,4 +114,4 @@ export class MultipageComponentStateService {
114
114
  providedIn: 'root'
115
115
  }]
116
116
  }], null, null); })();
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwYWdlLWNvbXBvbmVudC1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9zZXJ2aWNlcy9qb3VybmV5L211bHRpcGFnZS1jb21wb25lbnQtc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLCtFQUErRTtJQUN2RSxnQkFBZ0IsR0FBWSxLQUFLLENBQUM7SUFDMUMsc0dBQXNHO0lBQzlGLGlCQUFpQixHQUFjLElBQUksS0FBSyxFQUFXLENBQUM7SUFDNUQsdUdBQXVHO0lBQy9GLFVBQVUsR0FBNkIsSUFBSSxDQUFDO0lBQ3BELGdGQUFnRjtJQUN4RSxZQUFZLEdBQXlCLElBQUksR0FBRyxFQUFtQixDQUFDO0lBRXhFLDBGQUEwRjtJQUMxRixvQkFBb0IsQ0FBQyxpQkFBNEI7UUFDL0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0lBQzdDLENBQUM7SUFFRCx3RkFBd0Y7SUFDeEYsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCx3REFBd0Q7SUFDeEQsc0JBQXNCLENBQUMsT0FBZ0I7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLHNCQUFzQjtRQUNwQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsYUFBYSxDQUFDLFVBQTZCO1FBQ3pDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCx5RUFB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QUM7SUFFRCx1RUFBdUU7SUFDdkUsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCwyRkFBMkY7SUFDM0YsSUFBVyxTQUFTLENBQUMsU0FBa0I7UUFDckMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztJQUNwQyxDQUFDO3dGQTdIVSw4QkFBOEI7Z0VBQTlCLDhCQUE4QixXQUE5Qiw4QkFBOEIsbUJBRjdCLE1BQU07O2lGQUVQLDhCQUE4QjtjQUgxQyxVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBKb3VybmV5LCBKb3VybmV5SW5zdGlnYXRvciB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE11bHRpcGFnZUNvbXBvbmVudFN0YXRlU2VydmljZSB7XG4gIC8vaXMgam91cm5leSBhdCBzdGFydCB3aWxsIGhlbHAga2VlcCB0cmFjayBvZiB0aGUgcHJvZ3Jlc3MgdGhyb3VnaCB0aGUgam91cm5leS5cbiAgcHJpdmF0ZSBpc0pvdXJuZXlBdFN0YXJ0OiBib29sZWFuID0gZmFsc2U7XG4gIC8vam91cm5leSBjb2xsZWN0aW9uIHJlZmVyZW5jZXMgYW4gdXB0byBkYXRlIGxpc3Qgb2YgYWxsIHRoZSBqb3VybmV5IGNvbXBvbmVudHMgY3VycmVudGx5IHJlbmRlcmVkISEhIVxuICBwcml2YXRlIGpvdXJuZXlDb2xsZWN0aW9uOiBKb3VybmV5W10gPSBuZXcgQXJyYXk8Sm91cm5leT4oKTtcbiAgLy90aGUgaW5zdGlnYXRvciByZWZlcmVuY2VzIHRoZSBjYXNlLWVkaXQtcGFnZSBjb21wb25lbnQgdGhhdCB3aWxsIGludm9rZSB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbWV0aG9kc1xuICBwcml2YXRlIGluc3RpZ2F0b3I6IEpvdXJuZXlJbnN0aWdhdG9yIHwgbnVsbCA9IG51bGw7XG4gIC8vZWFjaCBqb3VybmV5IHdpbGwgc3RvcmUgaXRzIHN0YXRlIGhlcmUuIHRoaXMgY291bGQgaW5jbHVkZSBmb3JtIGRhdGEgaWYgbmVlZGVkXG4gIHByaXZhdGUgam91cm5leVN0YXRlOiBNYXA8c3RyaW5nLCBKb3VybmV5PiA9IG5ldyBNYXA8c3RyaW5nLCBKb3VybmV5PigpO1xuXG4gIC8vc2V0Sm91cm5leUNvbXBvbmVudCB3aWxsIGJlIGNhbGxlZCBieSB0aGUgYXBwIGNvbXBvbmVudCB0byB1cGRhdGUgdGhlIGpvdXJuZXkgY29sbGVjdGlvblxuICBzZXRKb3VybmV5Q29sbGVjdGlvbihqb3VybmV5Q29sbGVjdGlvbjogSm91cm5leVtdKTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbiA9IGpvdXJuZXlDb2xsZWN0aW9uO1xuICB9XG5cbiAgLy9nZXRKb3VybmV5Q29sbGVjdGlvbiB3aWxsIGJlIGNhbGxlZCBieSB0aGUgYXBwIGNvbXBvbmVudCB0byBnZXQgdGhlIGpvdXJuZXkgY29sbGVjdGlvblxuICBnZXRKb3VybmV5Q29sbGVjdGlvbigpOiBKb3VybmV5W10ge1xuICAgIHJldHVybiB0aGlzLmpvdXJuZXlDb2xsZWN0aW9uO1xuICB9XG5cbiAgLy9hZGRUb0pvdXJuZXlDb2xsZWN0aW9uIHdpbGwgYmUgY2FsbGVkIGZyb20gdGhlIGpvdXJuZXlcbiAgYWRkVG9qb3VybmV5Q29sbGVjdGlvbihqb3VybmV5OiBKb3VybmV5KTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbi5wdXNoKGpvdXJuZXkpO1xuICB9XG5cbiAgLy9yZXNldEpvdXJuZXlDb2xsZWN0aW9uIHdpbGwgYmUgY2FsbGVkXG4gIHJlc2V0Sm91cm5leUNvbGxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbiA9IFtdO1xuICB9XG5cbiAgLy9zZXRJbnN0aWdhdG9yIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBhcHAgY29tcG9uZW50IHRvIHVwZGF0ZSB0aGUgaW5zdGlnYXRvclxuICBzZXRJbnN0aWdhdG9yKGluc3RpZ2F0b3I6IEpvdXJuZXlJbnN0aWdhdG9yKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0aWdhdG9yID0gaW5zdGlnYXRvcjtcbiAgfVxuXG4gIC8vZ2V0SW5zdGlnYXRvciB3aWxsIGJlIGNhbGxlZCBieSB0aGUgYXBwIGNvbXBvbmVudCB0byBnZXQgdGhlIGluc3RpZ2F0b3JcbiAgZ2V0SW5zdGlnYXRvcigpOiBKb3VybmV5SW5zdGlnYXRvciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmluc3RpZ2F0b3I7XG4gIH1cblxuICAvL3NldEpvdXJuZXlTdGF0ZSB3aWxsIGJlIGNhbGxlZCBieSB0aGUgam91cm5leSBjb21wb25lbnQgdG8gdXBkYXRlIHRoZSBqb3VybmV5IHN0YXRlXG4gIHNldEpvdXJuZXlTdGF0ZShqb3VybmV5OiBKb3VybmV5KTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5U3RhdGUuc2V0KGpvdXJuZXkuam91cm5leUlkLCBqb3VybmV5KTtcbiAgfVxuXG4gIC8vZ2V0Sm91cm5leVN0YXRlIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBqb3VybmV5IGNvbXBvbmVudCB0byBnZXQgdGhlIGpvdXJuZXkgc3RhdGVcbiAgZ2V0Sm91cm5leVN0YXRlKGpvdXJuZXk6IEpvdXJuZXkpOiBKb3VybmV5IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuam91cm5leVN0YXRlLmdldChqb3VybmV5LmpvdXJuZXlJZCkgfHwgbnVsbDtcbiAgfVxuXG4gIC8vcmVzZXRKb3VybmV5U3RhdGUgd2lsbCBiZSBjYWxsZWQgYnkgdGhlIGpvdXJuZXkgY29tcG9uZW50IHRvIHJlc2V0IHRoZSBqb3VybmV5IHN0YXRlXG4gIHJlc2V0Sm91cm5leVN0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMuam91cm5leVN0YXRlLmNsZWFyKCk7XG4gIH1cblxuICBnZXRKb3VybmV5Q29sbGVjdGlvbk1haW5PYmplY3QoKXtcbiAgICByZXR1cm4gdGhpcy5qb3VybmV5Q29sbGVjdGlvblswXTtcbiAgfVxuXG4gIC8vcmVzZXQgd2lsbCBiZSBjYWxsZWQgdG8gZW5zdXJlIHRoYXQgdGhlIGVudGlyZSBzdGF0ZSBpcyByZXNldFxuICByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzSm91cm5leUF0U3RhcnQgPSBmYWxzZTtcbiAgICB0aGlzLmpvdXJuZXlTdGF0ZS5jbGVhcigpO1xuICAgIHRoaXMuaW5zdGlnYXRvciA9IG51bGw7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbiA9IFtdO1xuICB9XG5cbiAgLy9uZXh0IHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBpbnN0aWdhdG9yIHRoYXQgd2lsbCBpbnZva2UgdGhlIG5leHQgbWV0aG9kIG9mIHRoZSBqb3VybmV5IGNvbXBvbmVudCB0aGF0IHdpbGwgaW52b2tlIHRoZSBuZXh0IG1ldGhvZCBvZiB0aGUgY2hpbGRwYWdlIGNvbXBvbmVudFxuICBwdWJsaWMgbmV4dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5qb3VybmV5Q29sbGVjdGlvbi5sZW5ndGggPD0gMCkge1xuICAgICAgdGhpcy5pbnN0aWdhdG9yPy5vbkZpbmFsTmV4dCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlzQW55T2JqZWN0Tm90RmluaXNoZWQ6IGJvb2xlYW4gPSB0aGlzLmpvdXJuZXlDb2xsZWN0aW9uLnNvbWUoKGpvdXJuZXkpID0+ICFqb3VybmV5LmlzRmluaXNoZWQoKSk7XG5cbiAgICBpZiAoIWlzQW55T2JqZWN0Tm90RmluaXNoZWQpIHtcbiAgICAgIHRoaXMuaW5zdGlnYXRvcj8ub25GaW5hbE5leHQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGpvdXJuZXkgb2YgdGhpcy5qb3VybmV5Q29sbGVjdGlvbikge1xuICAgICAgaWYgKCFqb3VybmV5KSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWpvdXJuZXk/LmlzRmluaXNoZWQoKSkge1xuICAgICAgICBqb3VybmV5Py5uZXh0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vcHJldmlvdXMgd2lsbCBiZSBjYWxsZWQgYnkgdGhlIGluc3RpZ2F0b3IgdGhhdCB3aWxsIGludm9rZSB0aGUgcHJldmlvdXMgbWV0aG9kIG9mIHRoZSBqb3VybmV5IGNvbXBvbmVudCB0aGF0IHdpbGwgaW52b2tlIHRoZSBwcmV2aW91cyBtZXRob2Qgb2YgdGhlIGNoaWxkcGFnZSBjb21wb25lbnRcbiAgcHVibGljIHByZXZpb3VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmpvdXJuZXlDb2xsZWN0aW9uLmxlbmd0aCA8PSAwKSB7XG4gICAgICB0aGlzLmluc3RpZ2F0b3I/Lm9uRmluYWxQcmV2aW91cygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlzQW55T2JqZWN0Tm90QXRTdGFydDogYm9vbGVhbiA9IHRoaXMuam91cm5leUNvbGxlY3Rpb24uc29tZSgoam91cm5leSkgPT4gIWpvdXJuZXkuaXNTdGFydCgpKTtcbiAgICBpZiAoIWlzQW55T2JqZWN0Tm90QXRTdGFydCkge1xuICAgICAgdGhpcy5pbnN0aWdhdG9yPy5vbkZpbmFsUHJldmlvdXMoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGpvdXJuZXkgb2YgdGhpcy5qb3VybmV5Q29sbGVjdGlvbi5zbGljZSgpLnJldmVyc2UoKSkge1xuICAgICAgaWYgKCFqb3VybmV5KSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgaWYgKCFqb3VybmV5Py5pc1N0YXJ0KCkpIHtcbiAgICAgICAgam91cm5leT8ucHJldmlvdXMoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9pc0F0U3RhcnQgY2FuIGJlIHVzZWQgdG8gaW5mb3JtIHRoZSBpbnN0aWdhdG9yIGlmIHdlJ3JlIGF0IHRoZSBzdGFydC5cbiAgcHVibGljIGdldCBpc0F0U3RhcnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNKb3VybmV5QXRTdGFydDtcbiAgfVxuXG4gIC8vaXNBdFN0YXJ0IGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgdmFsdWUgZnJvbSBhIGpvdXJuZXkgb2JqZWN0LCBzbyB0aGUgaW5zdGlnYXRvciBrbm93cy5cbiAgcHVibGljIHNldCBpc0F0U3RhcnQoaXNBdFN0YXJ0OiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0pvdXJuZXlBdFN0YXJ0ID0gaXNBdFN0YXJ0O1xuICB9XG59XG4iXX0=
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwYWdlLWNvbXBvbmVudC1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9zZXJ2aWNlcy9qb3VybmV5L211bHRpcGFnZS1jb21wb25lbnQtc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLCtFQUErRTtJQUN2RSxnQkFBZ0IsR0FBWSxLQUFLLENBQUM7SUFDMUMsc0dBQXNHO0lBQzlGLGlCQUFpQixHQUFjLElBQUksS0FBSyxFQUFXLENBQUM7SUFDNUQsdUdBQXVHO0lBQy9GLFVBQVUsR0FBNkIsSUFBSSxDQUFDO0lBQ3BELGdGQUFnRjtJQUN4RSxZQUFZLEdBQXlCLElBQUksR0FBRyxFQUFtQixDQUFDO0lBRXhFLDBGQUEwRjtJQUMxRixvQkFBb0IsQ0FBQyxpQkFBNEI7UUFDL0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0lBQzdDLENBQUM7SUFFRCx3RkFBd0Y7SUFDeEYsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCx3REFBd0Q7SUFDeEQsc0JBQXNCLENBQUMsT0FBZ0I7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLHNCQUFzQjtRQUNwQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsYUFBYSxDQUFDLFVBQTZCO1FBQ3pDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCx5RUFB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QUM7SUFFRCx1RUFBdUU7SUFDdkUsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCwyRkFBMkY7SUFDM0YsSUFBVyxTQUFTLENBQUMsU0FBa0I7UUFDckMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztJQUNwQyxDQUFDO3dGQTdIVSw4QkFBOEI7Z0VBQTlCLDhCQUE4QixXQUE5Qiw4QkFBOEIsbUJBRjdCLE1BQU07O2lGQUVQLDhCQUE4QjtjQUgxQyxVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBKb3VybmV5LCBKb3VybmV5SW5zdGlnYXRvciB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE11bHRpcGFnZUNvbXBvbmVudFN0YXRlU2VydmljZSB7XG4gIC8vaXMgam91cm5leSBhdCBzdGFydCB3aWxsIGhlbHAga2VlcCB0cmFjayBvZiB0aGUgcHJvZ3Jlc3MgdGhyb3VnaCB0aGUgam91cm5leS5cbiAgcHJpdmF0ZSBpc0pvdXJuZXlBdFN0YXJ0OiBib29sZWFuID0gZmFsc2U7XG4gIC8vam91cm5leSBjb2xsZWN0aW9uIHJlZmVyZW5jZXMgYW4gdXB0byBkYXRlIGxpc3Qgb2YgYWxsIHRoZSBqb3VybmV5IGNvbXBvbmVudHMgY3VycmVudGx5IHJlbmRlcmVkISEhIVxuICBwcml2YXRlIGpvdXJuZXlDb2xsZWN0aW9uOiBKb3VybmV5W10gPSBuZXcgQXJyYXk8Sm91cm5leT4oKTtcbiAgLy90aGUgaW5zdGlnYXRvciByZWZlcmVuY2VzIHRoZSBjYXNlLWVkaXQtcGFnZSBjb21wb25lbnQgdGhhdCB3aWxsIGludm9rZSB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbWV0aG9kc1xuICBwcml2YXRlIGluc3RpZ2F0b3I6IEpvdXJuZXlJbnN0aWdhdG9yIHwgbnVsbCA9IG51bGw7XG4gIC8vZWFjaCBqb3VybmV5IHdpbGwgc3RvcmUgaXRzIHN0YXRlIGhlcmUuIHRoaXMgY291bGQgaW5jbHVkZSBmb3JtIGRhdGEgaWYgbmVlZGVkXG4gIHByaXZhdGUgam91cm5leVN0YXRlOiBNYXA8c3RyaW5nLCBKb3VybmV5PiA9IG5ldyBNYXA8c3RyaW5nLCBKb3VybmV5PigpO1xuXG4gIC8vc2V0Sm91cm5leUNvbXBvbmVudCB3aWxsIGJlIGNhbGxlZCBieSB0aGUgYXBwIGNvbXBvbmVudCB0byB1cGRhdGUgdGhlIGpvdXJuZXkgY29sbGVjdGlvblxuICBzZXRKb3VybmV5Q29sbGVjdGlvbihqb3VybmV5Q29sbGVjdGlvbjogSm91cm5leVtdKTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbiA9IGpvdXJuZXlDb2xsZWN0aW9uO1xuICB9XG5cbiAgLy9nZXRKb3VybmV5Q29sbGVjdGlvbiB3aWxsIGJlIGNhbGxlZCBieSB0aGUgYXBwIGNvbXBvbmVudCB0byBnZXQgdGhlIGpvdXJuZXkgY29sbGVjdGlvblxuICBnZXRKb3VybmV5Q29sbGVjdGlvbigpOiBKb3VybmV5W10ge1xuICAgIHJldHVybiB0aGlzLmpvdXJuZXlDb2xsZWN0aW9uO1xuICB9XG5cbiAgLy9hZGRUb0pvdXJuZXlDb2xsZWN0aW9uIHdpbGwgYmUgY2FsbGVkIGZyb20gdGhlIGpvdXJuZXlcbiAgYWRkVG9qb3VybmV5Q29sbGVjdGlvbihqb3VybmV5OiBKb3VybmV5KTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbi5wdXNoKGpvdXJuZXkpO1xuICB9XG5cbiAgLy9yZXNldEpvdXJuZXlDb2xsZWN0aW9uIHdpbGwgYmUgY2FsbGVkXG4gIHJlc2V0Sm91cm5leUNvbGxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5Q29sbGVjdGlvbiA9IFtdO1xuICB9XG5cbiAgLy9zZXRJbnN0aWdhdG9yIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBhcHAgY29tcG9uZW50IHRvIHVwZGF0ZSB0aGUgaW5zdGlnYXRvclxuICBzZXRJbnN0aWdhdG9yKGluc3RpZ2F0b3I6IEpvdXJuZXlJbnN0aWdhdG9yKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0aWdhdG9yID0gaW5zdGlnYXRvcjtcbiAgfVxuXG4gIC8vZ2V0SW5zdGlnYXRvciB3aWxsIGJlIGNhbGxlZCBieSB0aGUgYXBwIGNvbXBvbmVudCB0byBnZXQgdGhlIGluc3RpZ2F0b3JcbiAgZ2V0SW5zdGlnYXRvcigpOiBKb3VybmV5SW5zdGlnYXRvciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmluc3RpZ2F0b3I7XG4gIH1cblxuICAvL3NldEpvdXJuZXlTdGF0ZSB3aWxsIGJlIGNhbGxlZCBieSB0aGUgam91cm5leSBjb21wb25lbnQgdG8gdXBkYXRlIHRoZSBqb3VybmV5IHN0YXRlXG4gIHNldEpvdXJuZXlTdGF0ZShqb3VybmV5OiBKb3VybmV5KTogdm9pZCB7XG4gICAgdGhpcy5qb3VybmV5U3RhdGUuc2V0KGpvdXJuZXkuam91cm5leUlkLCBqb3VybmV5KTtcbiAgfVxuXG4gIC8vZ2V0Sm91cm5leVN0YXRlIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBqb3VybmV5IGNvbXBvbmVudCB0byBnZXQgdGhlIGpvdXJuZXkgc3RhdGVcbiAgZ2V0Sm91cm5leVN0YXRlKGpvdXJuZXk6IEpvdXJuZXkpOiBKb3VybmV5IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuam91cm5leVN0YXRlLmdldChqb3VybmV5LmpvdXJuZXlJZCkgfHwgbnVsbDtcbiAgfVxuXG4gIC8vcmVzZXRKb3VybmV5U3RhdGUgd2lsbCBiZSBjYWxsZWQgYnkgdGhlIGpvdXJuZXkgY29tcG9uZW50IHRvIHJlc2V0IHRoZSBqb3VybmV5IHN0YXRlXG4gIHJlc2V0Sm91cm5leVN0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMuam91cm5leVN0YXRlLmNsZWFyKCk7XG4gIH1cblxuICBnZXRKb3VybmV5Q29sbGVjdGlvbk1haW5PYmplY3QoKTogSm91cm5leSB7XG4gICAgcmV0dXJuIHRoaXMuam91cm5leUNvbGxlY3Rpb25bMF07XG4gIH1cblxuICAvL3Jlc2V0IHdpbGwgYmUgY2FsbGVkIHRvIGVuc3VyZSB0aGF0IHRoZSBlbnRpcmUgc3RhdGUgaXMgcmVzZXRcbiAgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc0pvdXJuZXlBdFN0YXJ0ID0gZmFsc2U7XG4gICAgdGhpcy5qb3VybmV5U3RhdGUuY2xlYXIoKTtcbiAgICB0aGlzLmluc3RpZ2F0b3IgPSBudWxsO1xuICAgIHRoaXMuam91cm5leUNvbGxlY3Rpb24gPSBbXTtcbiAgfVxuXG4gIC8vbmV4dCB3aWxsIGJlIGNhbGxlZCBieSB0aGUgaW5zdGlnYXRvciB0aGF0IHdpbGwgaW52b2tlIHRoZSBuZXh0IG1ldGhvZCBvZiB0aGUgam91cm5leSBjb21wb25lbnQgdGhhdCB3aWxsIGludm9rZSB0aGUgbmV4dCBtZXRob2Qgb2YgdGhlIGNoaWxkcGFnZSBjb21wb25lbnRcbiAgcHVibGljIG5leHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuam91cm5leUNvbGxlY3Rpb24ubGVuZ3RoIDw9IDApIHtcbiAgICAgIHRoaXMuaW5zdGlnYXRvcj8ub25GaW5hbE5leHQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpc0FueU9iamVjdE5vdEZpbmlzaGVkOiBib29sZWFuID0gdGhpcy5qb3VybmV5Q29sbGVjdGlvbi5zb21lKChqb3VybmV5KSA9PiAham91cm5leS5pc0ZpbmlzaGVkKCkpO1xuXG4gICAgaWYgKCFpc0FueU9iamVjdE5vdEZpbmlzaGVkKSB7XG4gICAgICB0aGlzLmluc3RpZ2F0b3I/Lm9uRmluYWxOZXh0KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBqb3VybmV5IG9mIHRoaXMuam91cm5leUNvbGxlY3Rpb24pIHtcbiAgICAgIGlmICgham91cm5leSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFqb3VybmV5Py5pc0ZpbmlzaGVkKCkpIHtcbiAgICAgICAgam91cm5leT8ubmV4dCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvL3ByZXZpb3VzIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBpbnN0aWdhdG9yIHRoYXQgd2lsbCBpbnZva2UgdGhlIHByZXZpb3VzIG1ldGhvZCBvZiB0aGUgam91cm5leSBjb21wb25lbnQgdGhhdCB3aWxsIGludm9rZSB0aGUgcHJldmlvdXMgbWV0aG9kIG9mIHRoZSBjaGlsZHBhZ2UgY29tcG9uZW50XG4gIHB1YmxpYyBwcmV2aW91cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5qb3VybmV5Q29sbGVjdGlvbi5sZW5ndGggPD0gMCkge1xuICAgICAgdGhpcy5pbnN0aWdhdG9yPy5vbkZpbmFsUHJldmlvdXMoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpc0FueU9iamVjdE5vdEF0U3RhcnQ6IGJvb2xlYW4gPSB0aGlzLmpvdXJuZXlDb2xsZWN0aW9uLnNvbWUoKGpvdXJuZXkpID0+ICFqb3VybmV5LmlzU3RhcnQoKSk7XG4gICAgaWYgKCFpc0FueU9iamVjdE5vdEF0U3RhcnQpIHtcbiAgICAgIHRoaXMuaW5zdGlnYXRvcj8ub25GaW5hbFByZXZpb3VzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBqb3VybmV5IG9mIHRoaXMuam91cm5leUNvbGxlY3Rpb24uc2xpY2UoKS5yZXZlcnNlKCkpIHtcbiAgICAgIGlmICgham91cm5leSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGlmICgham91cm5leT8uaXNTdGFydCgpKSB7XG4gICAgICAgIGpvdXJuZXk/LnByZXZpb3VzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vaXNBdFN0YXJ0IGNhbiBiZSB1c2VkIHRvIGluZm9ybSB0aGUgaW5zdGlnYXRvciBpZiB3ZSdyZSBhdCB0aGUgc3RhcnQuXG4gIHB1YmxpYyBnZXQgaXNBdFN0YXJ0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzSm91cm5leUF0U3RhcnQ7XG4gIH1cblxuICAvL2lzQXRTdGFydCBjYW4gYmUgdXNlZCB0byB1cGRhdGUgdGhlIHZhbHVlIGZyb20gYSBqb3VybmV5IG9iamVjdCwgc28gdGhlIGluc3RpZ2F0b3Iga25vd3MuXG4gIHB1YmxpYyBzZXQgaXNBdFN0YXJ0KGlzQXRTdGFydDogYm9vbGVhbikge1xuICAgIHRoaXMuaXNKb3VybmV5QXRTdGFydCA9IGlzQXRTdGFydDtcbiAgfVxufVxuIl19
@@ -11140,14 +11140,7 @@ class CaseEditPageComponent {
11140
11140
  }
11141
11141
  cancel() {
11142
11142
  if (this.isLinkedCasesJourney()) {
11143
- // if the user cancels the journey we need to clean up the data
11144
- const linkedCasesTab = this.caseEdit.caseDetails.tabs.find((tab) => tab?.fields?.some((field) => field.id === 'caseLinks'))?.fields?.[0] ?? null;
11145
- const initalLinks = this.linkedCasesService.initialCaseLinkRefs;
11146
- if (linkedCasesTab && linkedCasesTab?.value.length !== initalLinks.length) {
11147
- const initialCaseRefs = this.linkedCasesService.initialCaseLinkRefs;
11148
- linkedCasesTab.value = linkedCasesTab.value.filter((item) => initialCaseRefs.includes(item.value.CaseReference));
11149
- }
11150
- this.linkedCasesService.resetLinkedCaseData();
11143
+ this.resetLinkedCaseJourney();
11151
11144
  }
11152
11145
  if (this.eventTrigger.can_save_draft) {
11153
11146
  if (this.formValuesChanged) {
@@ -11177,6 +11170,16 @@ class CaseEditPageComponent {
11177
11170
  this.caseEditDataService.clearFormValidationErrors();
11178
11171
  this.multipageComponentStateService.reset();
11179
11172
  }
11173
+ resetLinkedCaseJourney() {
11174
+ // if the user cancels the journey we need to clean up the data
11175
+ const linkedCasesTab = this.caseEdit?.caseDetails?.tabs?.find((tab) => tab?.fields?.some((field) => field.id === 'caseLinks'))?.fields?.[0] ?? null;
11176
+ const initalLinks = this.linkedCasesService.initialCaseLinkRefs;
11177
+ if (linkedCasesTab && linkedCasesTab?.value?.length !== initalLinks?.length) {
11178
+ const initialCaseRefs = this.linkedCasesService.initialCaseLinkRefs;
11179
+ linkedCasesTab.value = linkedCasesTab.value.filter((item) => initialCaseRefs.includes(item.value.CaseReference));
11180
+ }
11181
+ this.linkedCasesService.resetLinkedCaseData();
11182
+ }
11180
11183
  submitting() {
11181
11184
  return this.caseEdit.isSubmitting;
11182
11185
  }
@@ -12977,6 +12980,7 @@ class ReadCaseFlagFieldComponent extends AbstractFieldReadComponent {
12977
12980
  // The FlagLauncher component, WriteCaseFlagFieldComponent, holds a reference to:
12978
12981
  // i) the parent FormGroup for the Flags instance where changes have been made;
12979
12982
  // ii) the currently selected flag (selectedFlag) if one exists
12983
+ const caseFlagLocationControl = 'selectedManageCaseLocation';
12980
12984
  if (flagLauncherComponent) {
12981
12985
  // The FlagLauncher component holds a reference (selectedFlagsLocation) containing the CaseField instance to
12982
12986
  // which the new flag has been added
@@ -12994,14 +12998,14 @@ class ReadCaseFlagFieldComponent extends AbstractFieldReadComponent {
12994
12998
  flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.UPDATE_2_POINT_1 ||
12995
12999
  flagLauncherComponent.caseField.display_context_parameter === CaseFlagDisplayContextParameter.UPDATE_EXTERNAL) &&
12996
13000
  (flagLauncherComponent.selectedFlag ||
12997
- (this.caseFlagStateService.formGroup.get('selectedManageCaseLocation').value.flagDetailDisplay && this.displayContextParameter === CaseFlagDisplayContextParameter.UPDATE_2_POINT_1))) {
13001
+ (this.caseFlagStateService.formGroup.get(caseFlagLocationControl).value.flagDetailDisplay && this.displayContextParameter === CaseFlagDisplayContextParameter.UPDATE_2_POINT_1))) {
12998
13002
  if (this.formGroup.get(flagLauncherControlName)['component']?.selectedFlag?.flagDetailDisplay !== undefined) {
12999
13003
  this.flagForSummaryDisplay =
13000
13004
  this.formGroup.get(flagLauncherControlName)['component'].selectedFlag.flagDetailDisplay;
13001
13005
  }
13002
13006
  else {
13003
13007
  this.flagForSummaryDisplay =
13004
- this.caseFlagStateService.formGroup.get('selectedManageCaseLocation').value.flagDetailDisplay;
13008
+ this.caseFlagStateService.formGroup.get(caseFlagLocationControl).value.flagDetailDisplay;
13005
13009
  }
13006
13010
  // TODO: not the best solution, the caseFlagStateService should have all the fields, then we can delete a lot of the transformations here
13007
13011
  // in Create Case Flag it already has all fields
@@ -16691,16 +16695,13 @@ class BeforeYouStartComponent extends AbstractJourneyComponent {
16691
16695
  this.linkedCasesService.initialCaseLinks = this.linkedCasesService.linkedCases;
16692
16696
  }
16693
16697
  }
16694
- onNext() {
16698
+ next() {
16695
16699
  this.linkedCasesService.hasContinuedFromStart = true;
16696
16700
  this.linkedCasesStateEmitter.emit({
16697
16701
  currentLinkedCasesPage: LinkedCasesPages.BEFORE_YOU_START,
16698
16702
  errorMessages: this.errorMessages,
16699
16703
  navigateToNextPage: true
16700
16704
  });
16701
- }
16702
- next() {
16703
- this.onNext();
16704
16705
  const isAnArray = Array.isArray(this.errorMessages);
16705
16706
  const isNotAnArray = !isAnArray;
16706
16707
  const isValid = (isAnArray && this.errorMessages.length === 0) || isNotAnArray;
@@ -18609,9 +18610,9 @@ class WriteLinkedCasesFieldComponent extends AbstractFieldWriteJourneyComponent
18609
18610
  this.handleBackButton = this.handleBackButton.bind(this);
18610
18611
  }
18611
18612
  ngOnInit() {
18612
- const trigUrl = location.href;
18613
+ const triggerUrl = location.href;
18613
18614
  this.addState(null, this.router.url.split('/').splice(0, this.router.url.split('/').indexOf('trigger')).join('/'));
18614
- this.addState(0, trigUrl);
18615
+ this.addState(0, triggerUrl);
18615
18616
  // This is required to enable Continue button validation
18616
18617
  // Continue button should be enabled only at check your answers page
18617
18618
  this.caseEditDataService.setLinkedCasesJourneyAtFinalStep(false);
@@ -24932,7 +24933,12 @@ class ManageCaseFlagsComponent extends AbstractJourneyComponent {
24932
24933
  const originalFlagDetail = formattedValue.details?.find((detail) => detail.id === flagDetail.id);
24933
24934
  let statusToUse;
24934
24935
  if (flagsInstance.pathToFlagsFormGroup === originalPathToFlag) {
24935
- statusToUse = originalStatusFromFG ? (originalStatusFromFG === originalFlagDetail.value?.status ? originalFlagDetail.value?.status : originalStatusFromFG) : originalFlagDetail.value?.status;
24936
+ if (originalStatusFromFG) {
24937
+ statusToUse = originalStatusFromFG === originalFlagDetail.value?.status ? originalFlagDetail.value?.status : originalStatusFromFG;
24938
+ }
24939
+ else {
24940
+ statusToUse = originalFlagDetail.value?.status;
24941
+ }
24936
24942
  }
24937
24943
  else {
24938
24944
  statusToUse = originalFlagDetail.value?.status;
@@ -25506,11 +25512,11 @@ class SelectFlagLocationComponent extends AbstractJourneyComponent {
25506
25512
  errorMessages = [];
25507
25513
  flagLocationNotSelectedErrorMessage = null;
25508
25514
  filteredFlagsData;
25515
+ cachedLocation;
25509
25516
  caseFlagsConfigError = false;
25510
25517
  selectedLocationControlName = 'selectedLocation';
25511
25518
  caseLevelFlagLabel = 'Case level';
25512
25519
  caseLevelCaseFlagsFieldId = 'caseFlags';
25513
- cachedLocation;
25514
25520
  ngOnInit() {
25515
25521
  if (this.formGroup.get(this.selectedLocationControlName)) {
25516
25522
  this.cachedLocation = this.formGroup.get(this.selectedLocationControlName).value?.pathToFlagsFormGroup;
@@ -25550,7 +25556,7 @@ class SelectFlagLocationComponent extends AbstractJourneyComponent {
25550
25556
  // Validate flag location selection
25551
25557
  this.validateSelection();
25552
25558
  //check if the user has changed their location selection
25553
- if (this.cachedLocation !== this.formGroup.get(this.selectedLocationControlName).value?.pathToFlagsFormGroup) {
25559
+ if (this.cachedLocation !== this.formGroup.get(this.selectedLocationControlName)?.value?.pathToFlagsFormGroup) {
25554
25560
  Object.keys(this.formGroup.controls).forEach((controlName) => {
25555
25561
  if (controlName !== this.selectedLocationControlName) {
25556
25562
  this.formGroup.removeControl(controlName);
@@ -25879,51 +25885,58 @@ class SelectFlagTypeComponent extends AbstractJourneyComponent {
25879
25885
  }
25880
25886
  }
25881
25887
  onNext() {
25882
- // Validate form
25883
25888
  this.validateForm();
25884
- // Return case flag field state, whether the selected flag type (if any) is a parent or not, error messages,
25885
- // flag name, path, hearing relevant indicator, code, and "list of values" (if any) to the parent
25889
+ this.emitCaseFlagState();
25890
+ this.emitFlagCommentsOptional();
25891
+ this.handleFlagTypeSelection();
25892
+ this.flagTypeSubJourneyEmitter.emit(this.subJourneyIndex);
25893
+ this.addState(this.subJourneyIndex);
25894
+ }
25895
+ emitCaseFlagState() {
25886
25896
  this.caseFlagStateEmitter.emit({
25887
25897
  currentCaseFlagFieldState: CaseFlagFieldState.FLAG_TYPE,
25888
25898
  isParentFlagType: this.selectedFlagType ? this.selectedFlagType.isParent : null,
25889
25899
  errorMessages: this.errorMessages
25890
25900
  });
25891
- // Emit "flag comments optional" event if the user selects a child flag type where comments are not mandatory
25901
+ }
25902
+ emitFlagCommentsOptional() {
25892
25903
  if (this.selectedFlagType && !this.selectedFlagType.isParent && !this.selectedFlagType.flagComment) {
25893
25904
  this.flagCommentsOptionalEmitter.emit(null);
25894
25905
  }
25895
- // If the selected flag type is a parent, load the list of child flag types and reset the current selection
25906
+ }
25907
+ handleFlagTypeSelection() {
25896
25908
  if (this.selectedFlagType?.isParent) {
25897
- // Cache the current flag type selection before it is reset - this is needed for displaying its name as the title
25898
- // when displaying the next set of child flags
25899
- this.cachedFlagType = this.selectedFlagType;
25900
- this.flagTypes = this.selectedFlagType.childFlags;
25901
- if (this.cachedPath.length !== 0 && this.cachedPath[this.subJourneyIndex] === this.selectedFlagType) {
25902
- this.formGroup.get(CaseFlagFormFields.FLAG_TYPE)?.setValue(this.cachedPath[this.subJourneyIndex + 1], { emitEvent: false });
25903
- }
25904
- else {
25905
- this.cachedPath?.shift();
25906
- const value = this.cachedPath?.length ? this.cachedPath[0] : null;
25907
- this.formGroup.get(CaseFlagFormFields.FLAG_TYPE)?.setValue(value, { emitEvent: false });
25908
- }
25909
- this.subJourneyIndex++;
25909
+ this.loadChildFlagTypes();
25910
25910
  }
25911
25911
  else {
25912
- // this code will run only when the sub journey is complete
25913
- const currentSelectedFlag = this.formGroup.controls.flagType;
25914
- const addedFlagValue = this.selectedFlagsLocation?.caseField?.value?.details;
25915
- if (addedFlagValue && (addedFlagValue[Object.keys(addedFlagValue).length]?.name !== currentSelectedFlag.value.name)) {
25916
- this.selectedFlagsLocation['caseField'].value.details.pop();
25917
- this.selectedFlagsLocation['caseField'].formatted_value?.details.pop();
25918
- }
25912
+ this.completeSubJourney();
25913
+ }
25914
+ }
25915
+ loadChildFlagTypes() {
25916
+ this.cachedFlagType = this.selectedFlagType;
25917
+ this.flagTypes = this.selectedFlagType.childFlags;
25918
+ if (this.cachedPath.length !== 0 && this.cachedPath[this.subJourneyIndex] === this.selectedFlagType) {
25919
+ this.formGroup.get(CaseFlagFormFields.FLAG_TYPE)?.setValue(this.cachedPath[this.subJourneyIndex + 1], { emitEvent: false });
25920
+ }
25921
+ else {
25922
+ this.cachedPath?.shift();
25923
+ const value = this.cachedPath?.length ? this.cachedPath[0] : null;
25924
+ this.formGroup.get(CaseFlagFormFields.FLAG_TYPE)?.setValue(value, { emitEvent: false });
25925
+ }
25926
+ this.subJourneyIndex++;
25927
+ }
25928
+ completeSubJourney() {
25929
+ const currentSelectedFlag = this.formGroup.controls.flagType;
25930
+ const addedFlagValue = this.selectedFlagsLocation?.caseField?.value?.details;
25931
+ if (addedFlagValue && (addedFlagValue[Object.keys(addedFlagValue).length]?.name !== currentSelectedFlag.value.name)) {
25932
+ this.selectedFlagsLocation['caseField'].value.details.pop();
25933
+ this.selectedFlagsLocation['caseField'].formatted_value?.details.pop();
25919
25934
  }
25920
- this.flagTypeSubJourneyEmitter.emit(this.subJourneyIndex);
25921
- this.addState(this.subJourneyIndex);
25922
25935
  }
25923
25936
  // Simplified version of the onPrevious method with optimized code
25924
25937
  onPrevious() {
25925
25938
  if (this.cachedFlagType) {
25926
- if (this.cachedFlagType.Path.length === 1) {
25939
+ if (this.cachedFlagType.Path?.length === 1) {
25927
25940
  this.formGroup.get(CaseFlagFormFields.FLAG_TYPE)?.setValue(this.cachedFlagType, { emitEvent: false });
25928
25941
  this.flagTypes = this.cachedRDFlagTypes[0].childFlags;
25929
25942
  }
@@ -30532,22 +30545,26 @@ class CaseEditSubmitComponent {
30532
30545
  }
30533
30546
  cancel() {
30534
30547
  if (this.caseEdit.isLinkedCasesSubmission) {
30535
- // if they cancel on the last CYA page we should ensure there is no unsubmitted data in the caseDetails
30536
- const linkedCasesTab = this.caseEdit.caseDetails.tabs.find((tab) => tab?.fields?.some((field) => field.id === 'caseLinks'))?.fields?.[0] ?? null;
30537
- const initalLinks = this.linkedCasesService.initialCaseLinkRefs;
30538
- if (linkedCasesTab && linkedCasesTab?.value.length !== initalLinks.length) {
30539
- const initialCaseRefs = this.linkedCasesService.initialCaseLinkRefs;
30540
- linkedCasesTab.value = linkedCasesTab.value.filter((item) => initialCaseRefs.includes(item.value.CaseReference));
30541
- }
30542
- this.linkedCasesService.resetLinkedCaseData();
30548
+ this.handleLinkedCasesSubmission();
30549
+ }
30550
+ this.emitCancelEvent();
30551
+ }
30552
+ handleLinkedCasesSubmission() {
30553
+ const linkedCasesTab = this.getLinkedCasesTab();
30554
+ const initialLinks = this.linkedCasesService.initialCaseLinkRefs;
30555
+ if (linkedCasesTab && linkedCasesTab.value.length !== initialLinks.length) {
30556
+ linkedCasesTab.value = linkedCasesTab.value.filter((item) => initialLinks.includes(item.value.CaseReference));
30543
30557
  }
30558
+ this.linkedCasesService.resetLinkedCaseData();
30559
+ }
30560
+ getLinkedCasesTab() {
30561
+ return this.caseEdit.caseDetails.tabs.find((tab) => tab?.fields?.some((field) => field.id === 'caseLinks'))?.fields?.[0] ?? null;
30562
+ }
30563
+ emitCancelEvent() {
30544
30564
  if (this.eventTrigger.can_save_draft) {
30545
- if (this.route.snapshot.queryParamMap.get(CaseEditComponent.ORIGIN_QUERY_PARAM) === 'viewDraft') {
30546
- this.caseEdit.cancelled.emit({ status: CaseEditPageComponent.RESUMED_FORM_DISCARD });
30547
- }
30548
- else {
30549
- this.caseEdit.cancelled.emit({ status: CaseEditPageComponent.NEW_FORM_DISCARD });
30550
- }
30565
+ const origin = this.route.snapshot.queryParamMap.get(CaseEditComponent.ORIGIN_QUERY_PARAM);
30566
+ const status = origin === 'viewDraft' ? CaseEditPageComponent.RESUMED_FORM_DISCARD : CaseEditPageComponent.NEW_FORM_DISCARD;
30567
+ this.caseEdit.cancelled.emit({ status });
30551
30568
  }
30552
30569
  else {
30553
30570
  this.caseEdit.cancelled.emit();