@firestitch/form 12.5.2 → 13.1.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 (132) hide show
  1. package/app/components/form-dialog-actions/form-dialog-actions.component.d.ts +22 -23
  2. package/app/components/form-dialog-actions/index.d.ts +1 -0
  3. package/app/components/form-template/form-template.component.d.ts +13 -0
  4. package/app/components/form-template/index.d.ts +1 -0
  5. package/app/components/form-template-outlet/form-template-outlet.component.d.ts +13 -0
  6. package/app/components/form-template-outlet/index.d.ts +1 -0
  7. package/app/components/index.d.ts +3 -0
  8. package/app/consts/error-messages.const.d.ts +19 -19
  9. package/app/directives/button.directive.d.ts +35 -35
  10. package/app/directives/form/form.directive.d.ts +123 -127
  11. package/app/directives/form/index.d.ts +1 -0
  12. package/app/directives/form-dialog-close.directive.d.ts +16 -12
  13. package/app/directives/form-template.directive.d.ts +10 -0
  14. package/app/directives/index.d.ts +6 -2
  15. package/app/directives/submit-button.directive.d.ts +6 -6
  16. package/app/directives/validators/compare.directive.d.ts +15 -15
  17. package/app/directives/validators/control.directive.d.ts +49 -49
  18. package/app/directives/validators/daterange.directive.d.ts +13 -13
  19. package/app/directives/validators/email.directive.d.ts +13 -13
  20. package/app/directives/validators/emails.directive.d.ts +13 -13
  21. package/app/directives/validators/function.directive.d.ts +15 -15
  22. package/app/directives/validators/greater.directive.d.ts +13 -13
  23. package/app/directives/validators/index.d.ts +20 -0
  24. package/app/directives/validators/integer.directive.d.ts +13 -13
  25. package/app/directives/validators/lesser.directive.d.ts +13 -13
  26. package/app/directives/validators/max.directive.d.ts +13 -13
  27. package/app/directives/validators/maxlength.directive.d.ts +13 -13
  28. package/app/directives/validators/min.directive.d.ts +13 -13
  29. package/app/directives/validators/minlength.directive.d.ts +13 -13
  30. package/app/directives/validators/no-fs-validators.directive.d.ts +14 -14
  31. package/app/directives/validators/numeric.directive.d.ts +13 -13
  32. package/app/directives/validators/pattern.directive.d.ts +13 -13
  33. package/app/directives/validators/phone.directive.d.ts +13 -13
  34. package/app/directives/validators/required.directive.d.ts +16 -16
  35. package/app/directives/validators/url.directive.d.ts +14 -14
  36. package/app/directives/validators/validate.directive.d.ts +15 -15
  37. package/app/enums/confirm-result.d.ts +7 -7
  38. package/app/enums/form-status.d.ts +10 -10
  39. package/app/fs-form.module.d.ts +40 -37
  40. package/app/guards/form-deactivate.guard.d.ts +14 -14
  41. package/app/helpers/confirm-result-continue.d.ts +1 -1
  42. package/app/helpers/confirm-unsaved.d.ts +5 -5
  43. package/app/helpers/get-active-route.d.ts +2 -2
  44. package/app/helpers/get-form-errors.d.ts +2 -2
  45. package/app/helpers/index.d.ts +2 -2
  46. package/app/helpers/is-enabled.d.ts +1 -1
  47. package/app/interfaces/async-validator.d.ts +14 -14
  48. package/app/interfaces/confirm-config.d.ts +7 -7
  49. package/app/interfaces/confirm-tab-group.d.ts +10 -10
  50. package/app/interfaces/index.d.ts +4 -4
  51. package/app/interfaces/submit-event.d.ts +6 -6
  52. package/app/interfaces/submitted-event.d.ts +7 -7
  53. package/app/interfaces/validator.d.ts +13 -13
  54. package/app/providers/validate-messages.provider.d.ts +25 -25
  55. package/app/services/fsform.service.d.ts +16 -16
  56. package/app/validators/validators.d.ts +12 -12
  57. package/esm2020/app/components/form-dialog-actions/form-dialog-actions.component.mjs +75 -0
  58. package/esm2020/app/components/form-dialog-actions/index.mjs +2 -0
  59. package/esm2020/app/components/form-template/form-template.component.mjs +31 -0
  60. package/esm2020/app/components/form-template/index.mjs +2 -0
  61. package/esm2020/app/components/form-template-outlet/form-template-outlet.component.mjs +30 -0
  62. package/esm2020/app/components/form-template-outlet/index.mjs +2 -0
  63. package/esm2020/app/components/index.mjs +4 -0
  64. package/{esm2015/app/consts/error-messages.const.js → esm2020/app/consts/error-messages.const.mjs} +19 -19
  65. package/{esm2015/app/directives/button.directive.js → esm2020/app/directives/button.directive.mjs} +152 -153
  66. package/esm2020/app/directives/form/form.directive.mjs +686 -0
  67. package/esm2020/app/directives/form/index.mjs +2 -0
  68. package/esm2020/app/directives/form-dialog-close.directive.mjs +54 -0
  69. package/esm2020/app/directives/form-template.directive.mjs +20 -0
  70. package/esm2020/app/directives/index.mjs +7 -0
  71. package/{esm2015/app/directives/submit-button.directive.js → esm2020/app/directives/submit-button.directive.mjs} +14 -14
  72. package/{esm2015/app/directives/validators/compare.directive.js → esm2020/app/directives/validators/compare.directive.mjs} +49 -49
  73. package/esm2020/app/directives/validators/control.directive.mjs +259 -0
  74. package/{esm2015/app/directives/validators/daterange.directive.js → esm2020/app/directives/validators/daterange.directive.mjs} +41 -41
  75. package/{esm2015/app/directives/validators/email.directive.js → esm2020/app/directives/validators/email.directive.mjs} +41 -41
  76. package/{esm2015/app/directives/validators/emails.directive.js → esm2020/app/directives/validators/emails.directive.mjs} +41 -41
  77. package/{esm2015/app/directives/validators/function.directive.js → esm2020/app/directives/validators/function.directive.mjs} +41 -41
  78. package/{esm2015/app/directives/validators/greater.directive.js → esm2020/app/directives/validators/greater.directive.mjs} +40 -40
  79. package/esm2020/app/directives/validators/index.mjs +21 -0
  80. package/{esm2015/app/directives/validators/integer.directive.js → esm2020/app/directives/validators/integer.directive.mjs} +41 -41
  81. package/{esm2015/app/directives/validators/lesser.directive.js → esm2020/app/directives/validators/lesser.directive.mjs} +40 -40
  82. package/{esm2015/app/directives/validators/max.directive.js → esm2020/app/directives/validators/max.directive.mjs} +36 -36
  83. package/{esm2015/app/directives/validators/maxlength.directive.js → esm2020/app/directives/validators/maxlength.directive.mjs} +35 -35
  84. package/{esm2015/app/directives/validators/min.directive.js → esm2020/app/directives/validators/min.directive.mjs} +36 -36
  85. package/{esm2015/app/directives/validators/minlength.directive.js → esm2020/app/directives/validators/minlength.directive.mjs} +35 -35
  86. package/{esm2015/app/directives/validators/no-fs-validators.directive.js → esm2020/app/directives/validators/no-fs-validators.directive.mjs} +52 -52
  87. package/{esm2015/app/directives/validators/numeric.directive.js → esm2020/app/directives/validators/numeric.directive.mjs} +41 -41
  88. package/{esm2015/app/directives/validators/pattern.directive.js → esm2020/app/directives/validators/pattern.directive.mjs} +35 -35
  89. package/{esm2015/app/directives/validators/phone.directive.js → esm2020/app/directives/validators/phone.directive.mjs} +41 -41
  90. package/{esm2015/app/directives/validators/required.directive.js → esm2020/app/directives/validators/required.directive.mjs} +71 -71
  91. package/{esm2015/app/directives/validators/url.directive.js → esm2020/app/directives/validators/url.directive.mjs} +47 -47
  92. package/{esm2015/app/directives/validators/validate.directive.js → esm2020/app/directives/validators/validate.directive.mjs} +43 -43
  93. package/{esm2015/app/enums/confirm-result.js → esm2020/app/enums/confirm-result.mjs} +8 -8
  94. package/{esm2015/app/enums/form-status.js → esm2020/app/enums/form-status.mjs} +11 -11
  95. package/esm2020/app/fs-form.module.mjs +194 -0
  96. package/{esm2015/app/guards/form-deactivate.guard.js → esm2020/app/guards/form-deactivate.guard.mjs} +45 -45
  97. package/{esm2015/app/helpers/confirm-result-continue.js → esm2020/app/helpers/confirm-result-continue.mjs} +4 -4
  98. package/{esm2015/app/helpers/confirm-unsaved.js → esm2020/app/helpers/confirm-unsaved.mjs} +71 -71
  99. package/{esm2015/app/helpers/get-active-route.js → esm2020/app/helpers/get-active-route.mjs} +6 -6
  100. package/esm2020/app/helpers/get-form-errors.mjs +25 -0
  101. package/{esm2015/app/helpers/index.js → esm2020/app/helpers/index.mjs} +2 -2
  102. package/{esm2015/app/helpers/is-enabled.js → esm2020/app/helpers/is-enabled.mjs} +3 -3
  103. package/{esm2015/app/interfaces/async-validator.js → esm2020/app/interfaces/async-validator.mjs} +1 -1
  104. package/{esm2015/app/interfaces/confirm-config.js → esm2020/app/interfaces/confirm-config.mjs} +1 -1
  105. package/{esm2015/app/interfaces/confirm-tab-group.js → esm2020/app/interfaces/confirm-tab-group.mjs} +1 -1
  106. package/{esm2015/app/interfaces/index.js → esm2020/app/interfaces/index.mjs} +4 -4
  107. package/{esm2015/app/interfaces/submit-event.js → esm2020/app/interfaces/submit-event.mjs} +1 -1
  108. package/{esm2015/app/interfaces/submitted-event.js → esm2020/app/interfaces/submitted-event.mjs} +1 -1
  109. package/{esm2015/app/interfaces/validator.js → esm2020/app/interfaces/validator.mjs} +1 -1
  110. package/{esm2015/app/providers/validate-messages.provider.js → esm2020/app/providers/validate-messages.provider.mjs} +11 -11
  111. package/{esm2015/app/services/fsform.service.js → esm2020/app/services/fsform.service.mjs} +40 -40
  112. package/{esm2015/app/validators/validators.js → esm2020/app/validators/validators.mjs} +96 -96
  113. package/{esm2015/firestitch-form.js → esm2020/firestitch-form.mjs} +4 -4
  114. package/esm2020/public_api.mjs +38 -0
  115. package/fesm2015/firestitch-form.mjs +2478 -0
  116. package/fesm2015/firestitch-form.mjs.map +1 -0
  117. package/{fesm2015/firestitch-form.js → fesm2020/firestitch-form.mjs} +2353 -2299
  118. package/fesm2020/firestitch-form.mjs.map +1 -0
  119. package/firestitch-form.d.ts +5 -5
  120. package/package.json +20 -7
  121. package/public_api.d.ts +35 -34
  122. package/bundles/firestitch-form.umd.js +0 -3012
  123. package/bundles/firestitch-form.umd.js.map +0 -1
  124. package/esm2015/app/components/form-dialog-actions/form-dialog-actions.component.js +0 -92
  125. package/esm2015/app/directives/form/form.directive.js +0 -712
  126. package/esm2015/app/directives/form-dialog-close.directive.js +0 -31
  127. package/esm2015/app/directives/index.js +0 -3
  128. package/esm2015/app/directives/validators/control.directive.js +0 -261
  129. package/esm2015/app/fs-form.module.js +0 -181
  130. package/esm2015/app/helpers/get-form-errors.js +0 -25
  131. package/esm2015/public_api.js +0 -37
  132. package/fesm2015/firestitch-form.js.map +0 -1
@@ -1,43 +1,43 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { of } from 'rxjs';
3
- import { FsControlDirective } from './control.directive';
4
- import { FsValidators } from '../../validators/validators';
5
- import { VALIDATE_MESSAGE_PROVIDER } from '../../providers/validate-messages.provider';
6
- import * as i0 from "@angular/core";
7
- export class FsFormValidateDirective extends FsControlDirective {
8
- constructor() {
9
- super(...arguments);
10
- this.validateOnSubmit = false;
11
- }
12
- ngOnChanges() {
13
- this._control.updateValueAndValidity();
14
- }
15
- validateAsync(control) {
16
- if (this.validateOnSubmit && !this.formDirective.validating) {
17
- return of(null);
18
- }
19
- return FsValidators.func(this._control, this.validateFn, this.validateFnData);
20
- }
21
- }
22
- FsFormValidateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsFormValidateDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
23
- FsFormValidateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: FsFormValidateDirective, selector: "[validate]", inputs: { validateFn: ["validate", "validateFn"], validateFnData: ["validateData", "validateFnData"], validateOnSubmit: "validateOnSubmit" }, providers: [
24
- VALIDATE_MESSAGE_PROVIDER
25
- ], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsFormValidateDirective, decorators: [{
27
- type: Directive,
28
- args: [{
29
- selector: '[validate]',
30
- providers: [
31
- VALIDATE_MESSAGE_PROVIDER
32
- ],
33
- }]
34
- }], propDecorators: { validateFn: [{
35
- type: Input,
36
- args: ['validate']
37
- }], validateFnData: [{
38
- type: Input,
39
- args: ['validateData']
40
- }], validateOnSubmit: [{
41
- type: Input
42
- }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvdmFsaWRhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRzVELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOztBQVV2RixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsa0JBQWtCO0lBTi9EOztRQWVTLHFCQUFnQixHQUFHLEtBQUssQ0FBQztLQWNqQztJQVpRLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBd0I7UUFDM0MsSUFBRyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRTtZQUMxRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQjtRQUVELE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7O3FIQXJCVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixtTEFKdkI7UUFDVCx5QkFBeUI7S0FDMUI7NEZBRVUsdUJBQXVCO2tCQU5uQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixTQUFTLEVBQUU7d0JBQ1QseUJBQXlCO3FCQUMxQjtpQkFDRjs4QkFJUSxVQUFVO3NCQURoQixLQUFLO3VCQUFDLFVBQVU7Z0JBSVYsY0FBYztzQkFEcEIsS0FBSzt1QkFBQyxjQUFjO2dCQUlkLGdCQUFnQjtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBGc0NvbnRyb2xEaXJlY3RpdmUgfSBmcm9tICcuL2NvbnRyb2wuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzVmFsaWRhdG9ycyB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMvdmFsaWRhdG9ycyc7XG5pbXBvcnQgeyBWQUxJREFURV9NRVNTQUdFX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL3ZhbGlkYXRlLW1lc3NhZ2VzLnByb3ZpZGVyJztcbmltcG9ydCB7IEZzQXN5bmNWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FzeW5jLXZhbGlkYXRvcic7XG5cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3ZhbGlkYXRlXScsXG4gIHByb3ZpZGVyczogW1xuICAgIFZBTElEQVRFX01FU1NBR0VfUFJPVklERVJcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNGb3JtVmFsaWRhdGVEaXJlY3RpdmUgZXh0ZW5kcyBGc0NvbnRyb2xEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEZzQXN5bmNWYWxpZGF0b3Ige1xuXG4gIEBJbnB1dCgndmFsaWRhdGUnKVxuICBwdWJsaWMgdmFsaWRhdGVGbjtcblxuICBASW5wdXQoJ3ZhbGlkYXRlRGF0YScpXG4gIHB1YmxpYyB2YWxpZGF0ZUZuRGF0YTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdmFsaWRhdGVPblN1Ym1pdCA9IGZhbHNlO1xuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9jb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZUFzeW5jKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHwgT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgIGlmKHRoaXMudmFsaWRhdGVPblN1Ym1pdCAmJiAhdGhpcy5mb3JtRGlyZWN0aXZlLnZhbGlkYXRpbmcpIHtcbiAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gRnNWYWxpZGF0b3JzLmZ1bmModGhpcy5fY29udHJvbCwgdGhpcy52YWxpZGF0ZUZuLCB0aGlzLnZhbGlkYXRlRm5EYXRhKTtcbiAgfVxuXG59XG4iXX0=
1
+ import { Directive, Input } from '@angular/core';
2
+ import { of } from 'rxjs';
3
+ import { FsControlDirective } from './control.directive';
4
+ import { FsValidators } from '../../validators/validators';
5
+ import { VALIDATE_MESSAGE_PROVIDER } from '../../providers/validate-messages.provider';
6
+ import * as i0 from "@angular/core";
7
+ export class FsFormValidateDirective extends FsControlDirective {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.validateOnSubmit = false;
11
+ }
12
+ ngOnChanges() {
13
+ this._control.updateValueAndValidity();
14
+ }
15
+ validateAsync(control) {
16
+ if (this.validateOnSubmit && !this.formDirective.validating) {
17
+ return of(null);
18
+ }
19
+ return FsValidators.func(this._control, this.validateFn, this.validateFnData);
20
+ }
21
+ }
22
+ FsFormValidateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFormValidateDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
23
+ FsFormValidateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.4.0", type: FsFormValidateDirective, selector: "[validate]", inputs: { validateFn: ["validate", "validateFn"], validateFnData: ["validateData", "validateFnData"], validateOnSubmit: "validateOnSubmit" }, providers: [
24
+ VALIDATE_MESSAGE_PROVIDER
25
+ ], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFormValidateDirective, decorators: [{
27
+ type: Directive,
28
+ args: [{
29
+ selector: '[validate]',
30
+ providers: [
31
+ VALIDATE_MESSAGE_PROVIDER
32
+ ],
33
+ }]
34
+ }], propDecorators: { validateFn: [{
35
+ type: Input,
36
+ args: ['validate']
37
+ }], validateFnData: [{
38
+ type: Input,
39
+ args: ['validateData']
40
+ }], validateOnSubmit: [{
41
+ type: Input
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvdmFsaWRhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRzVELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOztBQVV2RixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsa0JBQWtCO0lBTi9EOztRQWVTLHFCQUFnQixHQUFHLEtBQUssQ0FBQztLQWNqQztJQVpRLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBd0I7UUFDM0MsSUFBRyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRTtZQUMxRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQjtRQUVELE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7O29IQXJCVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixtTEFKdkI7UUFDVCx5QkFBeUI7S0FDMUI7MkZBRVUsdUJBQXVCO2tCQU5uQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixTQUFTLEVBQUU7d0JBQ1QseUJBQXlCO3FCQUMxQjtpQkFDRjs4QkFJUSxVQUFVO3NCQURoQixLQUFLO3VCQUFDLFVBQVU7Z0JBSVYsY0FBYztzQkFEcEIsS0FBSzt1QkFBQyxjQUFjO2dCQUlkLGdCQUFnQjtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBGc0NvbnRyb2xEaXJlY3RpdmUgfSBmcm9tICcuL2NvbnRyb2wuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzVmFsaWRhdG9ycyB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMvdmFsaWRhdG9ycyc7XG5pbXBvcnQgeyBWQUxJREFURV9NRVNTQUdFX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL3ZhbGlkYXRlLW1lc3NhZ2VzLnByb3ZpZGVyJztcbmltcG9ydCB7IEZzQXN5bmNWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FzeW5jLXZhbGlkYXRvcic7XG5cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3ZhbGlkYXRlXScsXG4gIHByb3ZpZGVyczogW1xuICAgIFZBTElEQVRFX01FU1NBR0VfUFJPVklERVJcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNGb3JtVmFsaWRhdGVEaXJlY3RpdmUgZXh0ZW5kcyBGc0NvbnRyb2xEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEZzQXN5bmNWYWxpZGF0b3Ige1xuXG4gIEBJbnB1dCgndmFsaWRhdGUnKVxuICBwdWJsaWMgdmFsaWRhdGVGbjtcblxuICBASW5wdXQoJ3ZhbGlkYXRlRGF0YScpXG4gIHB1YmxpYyB2YWxpZGF0ZUZuRGF0YTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdmFsaWRhdGVPblN1Ym1pdCA9IGZhbHNlO1xuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9jb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZUFzeW5jKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHwgT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgIGlmKHRoaXMudmFsaWRhdGVPblN1Ym1pdCAmJiAhdGhpcy5mb3JtRGlyZWN0aXZlLnZhbGlkYXRpbmcpIHtcbiAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gRnNWYWxpZGF0b3JzLmZ1bmModGhpcy5fY29udHJvbCwgdGhpcy52YWxpZGF0ZUZuLCB0aGlzLnZhbGlkYXRlRm5EYXRhKTtcbiAgfVxuXG59XG4iXX0=
@@ -1,9 +1,9 @@
1
- export var ConfirmResult;
2
- (function (ConfirmResult) {
3
- ConfirmResult["Save"] = "save";
4
- ConfirmResult["Discard"] = "discard";
5
- ConfirmResult["Review"] = "review";
6
- ConfirmResult["Invalid"] = "invalid";
7
- ConfirmResult["Pristine"] = "pristine";
8
- })(ConfirmResult || (ConfirmResult = {}));
1
+ export var ConfirmResult;
2
+ (function (ConfirmResult) {
3
+ ConfirmResult["Save"] = "save";
4
+ ConfirmResult["Discard"] = "discard";
5
+ ConfirmResult["Review"] = "review";
6
+ ConfirmResult["Invalid"] = "invalid";
7
+ ConfirmResult["Pristine"] = "pristine";
8
+ })(ConfirmResult || (ConfirmResult = {}));
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2VudW1zL2NvbmZpcm0tcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGFBTVg7QUFORCxXQUFZLGFBQWE7SUFDdkIsOEJBQWEsQ0FBQTtJQUNiLG9DQUFtQixDQUFBO0lBQ25CLGtDQUFpQixDQUFBO0lBQ2pCLG9DQUFtQixDQUFBO0lBQ25CLHNDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFOVyxhQUFhLEtBQWIsYUFBYSxRQU14QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIENvbmZpcm1SZXN1bHQge1xuICBTYXZlID0gJ3NhdmUnLFxuICBEaXNjYXJkID0gJ2Rpc2NhcmQnLFxuICBSZXZpZXcgPSAncmV2aWV3JyxcbiAgSW52YWxpZCA9ICdpbnZhbGlkJyxcbiAgUHJpc3RpbmUgPSAncHJpc3RpbmUnLFxufVxuIl19
@@ -1,12 +1,12 @@
1
- export var FormStatus;
2
- (function (FormStatus) {
3
- FormStatus["Valid"] = "valid";
4
- FormStatus["Invalid"] = "invalid";
5
- FormStatus["Validating"] = "validating";
6
- FormStatus["Submitting"] = "submitting";
7
- FormStatus["Submitted"] = "submitted";
8
- FormStatus["Error"] = "error";
9
- FormStatus["Success"] = "success";
10
- FormStatus["Completing"] = "completing";
11
- })(FormStatus || (FormStatus = {}));
1
+ export var FormStatus;
2
+ (function (FormStatus) {
3
+ FormStatus["Valid"] = "valid";
4
+ FormStatus["Invalid"] = "invalid";
5
+ FormStatus["Validating"] = "validating";
6
+ FormStatus["Submitting"] = "submitting";
7
+ FormStatus["Submitted"] = "submitted";
8
+ FormStatus["Error"] = "error";
9
+ FormStatus["Success"] = "success";
10
+ FormStatus["Completing"] = "completing";
11
+ })(FormStatus || (FormStatus = {}));
12
12
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zdGF0dXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2VudW1zL2Zvcm0tc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFVBU1g7QUFURCxXQUFZLFVBQVU7SUFDcEIsNkJBQWUsQ0FBQTtJQUNmLGlDQUFtQixDQUFBO0lBQ25CLHVDQUF5QixDQUFBO0lBQ3pCLHVDQUF5QixDQUFBO0lBQ3pCLHFDQUF1QixDQUFBO0lBQ3ZCLDZCQUFlLENBQUE7SUFDZixpQ0FBbUIsQ0FBQTtJQUNuQix1Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBVFcsVUFBVSxLQUFWLFVBQVUsUUFTckIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBGb3JtU3RhdHVzIHtcbiAgVmFsaWQgPSAndmFsaWQnLFxuICBJbnZhbGlkID0gJ2ludmFsaWQnLFxuICBWYWxpZGF0aW5nID0gJ3ZhbGlkYXRpbmcnLFxuICBTdWJtaXR0aW5nID0gJ3N1Ym1pdHRpbmcnLFxuICBTdWJtaXR0ZWQgPSAnc3VibWl0dGVkJyxcbiAgRXJyb3IgPSAnZXJyb3InLFxuICBTdWNjZXNzID0gJ3N1Y2Nlc3MnLFxuICBDb21wbGV0aW5nID0gJ2NvbXBsZXRpbmcnLFxufVxuIl19
@@ -0,0 +1,194 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { MatButtonModule } from '@angular/material/button';
5
+ import { MatDialogModule } from '@angular/material/dialog';
6
+ import { ErrorStateMatcher, ShowOnDirtyErrorStateMatcher } from '@angular/material/core';
7
+ import { FsFormDirective } from './directives/form/form.directive';
8
+ import { FsControlDirective } from './directives/validators/control.directive';
9
+ import { FsFormRequiredDirective } from './directives/validators/required.directive';
10
+ import { FsFormMinDirective } from './directives/validators/min.directive';
11
+ import { FsFormMaxDirective } from './directives/validators/max.directive';
12
+ import { FsFormMinLengthDirective } from './directives/validators/minlength.directive';
13
+ import { FsFormMaxLengthDirective } from './directives/validators/maxlength.directive';
14
+ import { FsFormEmailDirective } from './directives/validators/email.directive';
15
+ import { FsFormEmailsDirective } from './directives/validators/emails.directive';
16
+ import { FsFormPhoneDirective } from './directives/validators/phone.directive';
17
+ import { FsFormCompareDirective } from './directives/validators/compare.directive';
18
+ import { FsFormIntegerDirective } from './directives/validators/integer.directive';
19
+ import { FsFormNumericDirective } from './directives/validators/numeric.directive';
20
+ import { FsFormPatternDirective } from './directives/validators/pattern.directive';
21
+ import { FsFormFunctionDirective } from './directives/validators/function.directive';
22
+ import { FsFormGreaterDirective } from './directives/validators/greater.directive';
23
+ import { FsFormDateRangeDirective } from './directives/validators/daterange.directive';
24
+ import { FsFormLesserDirective } from './directives/validators/lesser.directive';
25
+ import { FsFormUrlDirective } from './directives/validators/url.directive';
26
+ import { FsFormDialogCloseDirective } from './directives/form-dialog-close.directive';
27
+ import { FsButtonDirective } from './directives/button.directive';
28
+ import { FsFormValidateDirective } from './directives/validators/validate.directive';
29
+ import { FsFormDialogActionsComponent } from './components/form-dialog-actions/form-dialog-actions.component';
30
+ import { FsFormNoFsValidatorsDirective } from './directives/validators/no-fs-validators.directive';
31
+ import { FsFormTemplateDirective, FsSubmitButtonDirective } from './directives';
32
+ import { FsFormTemplateComponent, FsFormTemplateOutletComponent } from './components';
33
+ import * as i0 from "@angular/core";
34
+ export class FsFormModule {
35
+ static forRoot() {
36
+ /**
37
+ * Hack: https://github.com/angular/components/issues/20097
38
+ */
39
+ ErrorStateMatcher.prototype.isErrorState = (control, form) => {
40
+ return control?.invalid && control?.touched && control?.dirty;
41
+ };
42
+ return {
43
+ ngModule: FsFormModule,
44
+ };
45
+ }
46
+ }
47
+ FsFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
48
+ FsFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFormModule, declarations: [FsFormDirective,
49
+ FsControlDirective,
50
+ FsFormRequiredDirective,
51
+ FsFormMinDirective,
52
+ FsFormMaxDirective,
53
+ FsFormMinLengthDirective,
54
+ FsFormMaxLengthDirective,
55
+ FsFormEmailDirective,
56
+ FsFormEmailsDirective,
57
+ FsFormPhoneDirective,
58
+ FsFormCompareDirective,
59
+ FsFormIntegerDirective,
60
+ FsFormNumericDirective,
61
+ FsFormPatternDirective,
62
+ FsFormFunctionDirective,
63
+ FsFormDateRangeDirective,
64
+ FsFormGreaterDirective,
65
+ FsFormLesserDirective,
66
+ FsFormUrlDirective,
67
+ FsFormDialogCloseDirective,
68
+ FsFormValidateDirective,
69
+ FsFormDialogActionsComponent,
70
+ FsFormNoFsValidatorsDirective,
71
+ FsButtonDirective,
72
+ FsSubmitButtonDirective,
73
+ FsFormTemplateComponent,
74
+ FsFormTemplateDirective,
75
+ FsFormTemplateOutletComponent], imports: [CommonModule,
76
+ FormsModule,
77
+ MatButtonModule,
78
+ MatDialogModule], exports: [FsFormDirective,
79
+ FsControlDirective,
80
+ FsFormRequiredDirective,
81
+ FsFormMinDirective,
82
+ FsFormMaxDirective,
83
+ FsFormMinLengthDirective,
84
+ FsFormMaxLengthDirective,
85
+ FsFormEmailDirective,
86
+ FsFormEmailsDirective,
87
+ FsFormPhoneDirective,
88
+ FsFormCompareDirective,
89
+ FsFormIntegerDirective,
90
+ FsFormNumericDirective,
91
+ FsFormPatternDirective,
92
+ FsFormFunctionDirective,
93
+ FsFormDateRangeDirective,
94
+ FsFormGreaterDirective,
95
+ FsFormLesserDirective,
96
+ FsFormUrlDirective,
97
+ FsFormDialogCloseDirective,
98
+ FsFormValidateDirective,
99
+ FsFormDialogActionsComponent,
100
+ FsFormNoFsValidatorsDirective,
101
+ FsButtonDirective,
102
+ FsSubmitButtonDirective,
103
+ FsFormTemplateComponent,
104
+ FsFormTemplateDirective,
105
+ FsFormTemplateOutletComponent] });
106
+ FsFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFormModule, providers: [
107
+ {
108
+ provide: ErrorStateMatcher,
109
+ useClass: ShowOnDirtyErrorStateMatcher,
110
+ },
111
+ ], imports: [[
112
+ CommonModule,
113
+ FormsModule,
114
+ MatButtonModule,
115
+ MatDialogModule,
116
+ ]] });
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFormModule, decorators: [{
118
+ type: NgModule,
119
+ args: [{
120
+ imports: [
121
+ CommonModule,
122
+ FormsModule,
123
+ MatButtonModule,
124
+ MatDialogModule,
125
+ ],
126
+ declarations: [
127
+ FsFormDirective,
128
+ FsControlDirective,
129
+ FsFormRequiredDirective,
130
+ FsFormMinDirective,
131
+ FsFormMaxDirective,
132
+ FsFormMinLengthDirective,
133
+ FsFormMaxLengthDirective,
134
+ FsFormEmailDirective,
135
+ FsFormEmailsDirective,
136
+ FsFormPhoneDirective,
137
+ FsFormCompareDirective,
138
+ FsFormIntegerDirective,
139
+ FsFormNumericDirective,
140
+ FsFormPatternDirective,
141
+ FsFormFunctionDirective,
142
+ FsFormDateRangeDirective,
143
+ FsFormGreaterDirective,
144
+ FsFormLesserDirective,
145
+ FsFormUrlDirective,
146
+ FsFormDialogCloseDirective,
147
+ FsFormValidateDirective,
148
+ FsFormDialogActionsComponent,
149
+ FsFormNoFsValidatorsDirective,
150
+ FsButtonDirective,
151
+ FsSubmitButtonDirective,
152
+ FsFormTemplateComponent,
153
+ FsFormTemplateDirective,
154
+ FsFormTemplateOutletComponent,
155
+ ],
156
+ exports: [
157
+ FsFormDirective,
158
+ FsControlDirective,
159
+ FsFormRequiredDirective,
160
+ FsFormMinDirective,
161
+ FsFormMaxDirective,
162
+ FsFormMinLengthDirective,
163
+ FsFormMaxLengthDirective,
164
+ FsFormEmailDirective,
165
+ FsFormEmailsDirective,
166
+ FsFormPhoneDirective,
167
+ FsFormCompareDirective,
168
+ FsFormIntegerDirective,
169
+ FsFormNumericDirective,
170
+ FsFormPatternDirective,
171
+ FsFormFunctionDirective,
172
+ FsFormDateRangeDirective,
173
+ FsFormGreaterDirective,
174
+ FsFormLesserDirective,
175
+ FsFormUrlDirective,
176
+ FsFormDialogCloseDirective,
177
+ FsFormValidateDirective,
178
+ FsFormDialogActionsComponent,
179
+ FsFormNoFsValidatorsDirective,
180
+ FsButtonDirective,
181
+ FsSubmitButtonDirective,
182
+ FsFormTemplateComponent,
183
+ FsFormTemplateDirective,
184
+ FsFormTemplateOutletComponent,
185
+ ],
186
+ providers: [
187
+ {
188
+ provide: ErrorStateMatcher,
189
+ useClass: ShowOnDirtyErrorStateMatcher,
190
+ },
191
+ ],
192
+ }]
193
+ }] });
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWZvcm0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQW1DLFdBQVcsRUFBVSxNQUFNLGdCQUFnQixDQUFDO0FBRXRGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9B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QzVCLDZCQUE2Qjt3QkFDN0IsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qiw2QkFBNkI7cUJBQzlCO29CQUNELFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixRQUFRLEVBQUUsNEJBQTRCO3lCQUN2QztxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cERpcmVjdGl2ZSwgRm9ybXNNb2R1bGUsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBFcnJvclN0YXRlTWF0Y2hlciwgU2hvd09uRGlydHlFcnJvclN0YXRlTWF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5pbXBvcnQgeyBGc0Zvcm1EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9ybS9mb3JtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0NvbnRyb2xEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9jb250cm9sLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1SZXF1aXJlZERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL3JlcXVpcmVkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1NaW5EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9taW4uZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybU1heERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL21heC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNGb3JtTWluTGVuZ3RoRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvbWlubGVuZ3RoLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1NYXhMZW5ndGhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9tYXhsZW5ndGguZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybUVtYWlsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvZW1haWwuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybUVtYWlsc0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL2VtYWlscy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNGb3JtUGhvbmVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9waG9uZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNGb3JtQ29tcGFyZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL2NvbXBhcmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybUludGVnZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9pbnRlZ2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1OdW1lcmljRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvbnVtZXJpYy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNGb3JtUGF0dGVybkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL3BhdHRlcm4uZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybUZ1bmN0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvZnVuY3Rpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybUdyZWF0ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9ncmVhdGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1EYXRlUmFuZ2VEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9kYXRlcmFuZ2UuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzRm9ybUxlc3NlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL2xlc3Nlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNGb3JtVXJsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3ZhbGlkYXRvcnMvdXJsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1EaWFsb2dDbG9zZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9mb3JtLWRpYWxvZy1jbG9zZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1WYWxpZGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWxpZGF0b3JzL3ZhbGlkYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1EaWFsb2dBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvcm0tZGlhbG9nLWFjdGlvbnMvZm9ybS1kaWFsb2ctYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNGb3JtTm9Gc1ZhbGlkYXRvcnNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsaWRhdG9ycy9uby1mcy12YWxpZGF0b3JzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0Zvcm1UZW1wbGF0ZURpcmVjdGl2ZSwgRnNTdWJtaXRCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRnNGb3JtVGVtcGxhdGVDb21wb25lbnQsIEZzRm9ybVRlbXBsYXRlT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRnNGb3JtRGlyZWN0aXZlLFxuICAgIEZzQ29udHJvbERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1SZXF1aXJlZERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1NaW5EaXJlY3RpdmUsXG4gICAgRnNGb3JtTWF4RGlyZWN0aXZlLFxuICAgIEZzRm9ybU1pbkxlbmd0aERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1NYXhMZW5ndGhEaXJlY3RpdmUsXG4gICAgRnNGb3JtRW1haWxEaXJlY3RpdmUsXG4gICAgRnNGb3JtRW1haWxzRGlyZWN0aXZlLFxuICAgIEZzRm9ybVBob25lRGlyZWN0aXZlLFxuICAgIEZzRm9ybUNvbXBhcmVEaXJlY3RpdmUsXG4gICAgRnNGb3JtSW50ZWdlckRpcmVjdGl2ZSxcbiAgICBGc0Zvcm1OdW1lcmljRGlyZWN0aXZlLFxuICAgIEZzRm9ybVBhdHRlcm5EaXJlY3RpdmUsXG4gICAgRnNGb3JtRnVuY3Rpb25EaXJlY3RpdmUsXG4gICAgRnNGb3JtRGF0ZVJhbmdlRGlyZWN0aXZlLFxuICAgIEZzRm9ybUdyZWF0ZXJEaXJlY3RpdmUsXG4gICAgRnNGb3JtTGVzc2VyRGlyZWN0aXZlLFxuICAgIEZzRm9ybVVybERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1EaWFsb2dDbG9zZURpcmVjdGl2ZSxcbiAgICBGc0Zvcm1WYWxpZGF0ZURpcmVjdGl2ZSxcbiAgICBGc0Zvcm1EaWFsb2dBY3Rpb25zQ29tcG9uZW50LFxuICAgIEZzRm9ybU5vRnNWYWxpZGF0b3JzRGlyZWN0aXZlLFxuICAgIEZzQnV0dG9uRGlyZWN0aXZlLFxuICAgIEZzU3VibWl0QnV0dG9uRGlyZWN0aXZlLFxuICAgIEZzRm9ybVRlbXBsYXRlQ29tcG9uZW50LFxuICAgIEZzRm9ybVRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIEZzRm9ybVRlbXBsYXRlT3V0bGV0Q29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRnNGb3JtRGlyZWN0aXZlLFxuICAgIEZzQ29udHJvbERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1SZXF1aXJlZERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1NaW5EaXJlY3RpdmUsXG4gICAgRnNGb3JtTWF4RGlyZWN0aXZlLFxuICAgIEZzRm9ybU1pbkxlbmd0aERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1NYXhMZW5ndGhEaXJlY3RpdmUsXG4gICAgRnNGb3JtRW1haWxEaXJlY3RpdmUsXG4gICAgRnNGb3JtRW1haWxzRGlyZWN0aXZlLFxuICAgIEZzRm9ybVBob25lRGlyZWN0aXZlLFxuICAgIEZzRm9ybUNvbXBhcmVEaXJlY3RpdmUsXG4gICAgRnNGb3JtSW50ZWdlckRpcmVjdGl2ZSxcbiAgICBGc0Zvcm1OdW1lcmljRGlyZWN0aXZlLFxuICAgIEZzRm9ybVBhdHRlcm5EaXJlY3RpdmUsXG4gICAgRnNGb3JtRnVuY3Rpb25EaXJlY3RpdmUsXG4gICAgRnNGb3JtRGF0ZVJhbmdlRGlyZWN0aXZlLFxuICAgIEZzRm9ybUdyZWF0ZXJEaXJlY3RpdmUsXG4gICAgRnNGb3JtTGVzc2VyRGlyZWN0aXZlLFxuICAgIEZzRm9ybVVybERpcmVjdGl2ZSxcbiAgICBGc0Zvcm1EaWFsb2dDbG9zZURpcmVjdGl2ZSxcbiAgICBGc0Zvcm1WYWxpZGF0ZURpcmVjdGl2ZSxcbiAgICBGc0Zvcm1EaWFsb2dBY3Rpb25zQ29tcG9uZW50LFxuICAgIEZzRm9ybU5vRnNWYWxpZGF0b3JzRGlyZWN0aXZlLFxuICAgIEZzQnV0dG9uRGlyZWN0aXZlLFxuICAgIEZzU3VibWl0QnV0dG9uRGlyZWN0aXZlLFxuICAgIEZzRm9ybVRlbXBsYXRlQ29tcG9uZW50LFxuICAgIEZzRm9ybVRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIEZzRm9ybVRlbXBsYXRlT3V0bGV0Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBFcnJvclN0YXRlTWF0Y2hlcixcbiAgICAgIHVzZUNsYXNzOiBTaG93T25EaXJ0eUVycm9yU3RhdGVNYXRjaGVyLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzRm9ybU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RnNGb3JtTW9kdWxlPiB7XG5cbiAgICAvKipcbiAgICAgKiBIYWNrOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2lzc3Vlcy8yMDA5N1xuICAgICAqL1xuICAgIEVycm9yU3RhdGVNYXRjaGVyLnByb3RvdHlwZS5pc0Vycm9yU3RhdGUgPSAoY29udHJvbDogRm9ybUNvbnRyb2wgfCBudWxsLCBmb3JtOiBGb3JtR3JvdXBEaXJlY3RpdmUgfCBOZ0Zvcm0gfCBudWxsKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gY29udHJvbD8uaW52YWxpZCAmJiBjb250cm9sPy50b3VjaGVkICYmIGNvbnRyb2w/LmRpcnR5O1xuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEZzRm9ybU1vZHVsZSxcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -1,45 +1,45 @@
1
- import { Injectable } from '@angular/core';
2
- import { ActivatedRoute } from '@angular/router';
3
- import { FsPrompt } from '@firestitch/prompt';
4
- import { of } from 'rxjs';
5
- import { map } from 'rxjs/operators';
6
- import { confirmUnsaved } from '../helpers/confirm-unsaved';
7
- import { confirmResultContinue } from '../helpers';
8
- import { FsForm } from '../services/fsform.service';
9
- import { getActiveRoute } from '../helpers/get-active-route';
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "@firestitch/prompt";
12
- import * as i2 from "../services/fsform.service";
13
- import * as i3 from "@angular/router";
14
- export class FormDeactivateGuard {
15
- constructor(_prompt, _fsForm, _route) {
16
- this._prompt = _prompt;
17
- this._fsForm = _fsForm;
18
- this._route = _route;
19
- }
20
- canDeactivate() {
21
- const route = getActiveRoute(this._route);
22
- if (!route) {
23
- console.error(`Can not find route for FormDeactivateGuard checks`);
24
- return of(true);
25
- }
26
- const directives = this._fsForm.getFormDirectives(route.routeConfig.component);
27
- if (!Array.isArray(directives) || directives.length === 0) {
28
- console.error(`Can not find a valid FsFormDirective`);
29
- return of(true);
30
- }
31
- return confirmUnsaved(directives, this._prompt)
32
- .pipe(map((result) => {
33
- return confirmResultContinue(result);
34
- }));
35
- }
36
- }
37
- FormDeactivateGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormDeactivateGuard, deps: [{ token: i1.FsPrompt }, { token: i2.FsForm }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
38
- FormDeactivateGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormDeactivateGuard, providedIn: 'root' });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormDeactivateGuard, decorators: [{
40
- type: Injectable,
41
- args: [{
42
- providedIn: 'root',
43
- }]
44
- }], ctorParameters: function () { return [{ type: i1.FsPrompt }, { type: i2.FsForm }, { type: i3.ActivatedRoute }]; } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1kZWFjdGl2YXRlLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9ndWFyZHMvZm9ybS1kZWFjdGl2YXRlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7OztBQU03RCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLFlBQ1UsT0FBaUIsRUFDakIsT0FBZSxFQUNmLE1BQXNCO1FBRnRCLFlBQU8sR0FBUCxPQUFPLENBQVU7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQWdCO0lBQzdCLENBQUM7SUFFSixhQUFhO1FBQ1gsTUFBTSxLQUFLLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUxQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1lBRW5FLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2pCO1FBRUQsTUFBTSxVQUFVLEdBQXNCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVsRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN6RCxPQUFPLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7WUFFdEQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakI7UUFFRCxPQUFPLGNBQWMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUM1QyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDYixPQUFPLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOztpSEEvQlUsbUJBQW1CO3FIQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs0RkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIENhbkRlYWN0aXZhdGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBGc1Byb21wdCB9IGZyb20gJ0BmaXJlc3RpdGNoL3Byb21wdCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZzRm9ybURpcmVjdGl2ZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvZm9ybS9mb3JtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBjb25maXJtVW5zYXZlZCB9IGZyb20gJy4uL2hlbHBlcnMvY29uZmlybS11bnNhdmVkJztcbmltcG9ydCB7IGNvbmZpcm1SZXN1bHRDb250aW51ZSB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgRnNGb3JtIH0gZnJvbSAnLi4vc2VydmljZXMvZnNmb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0QWN0aXZlUm91dGUgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1hY3RpdmUtcm91dGUnO1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtRGVhY3RpdmF0ZUd1YXJkIGltcGxlbWVudHMgQ2FuRGVhY3RpdmF0ZTxhbnk+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9wcm9tcHQ6IEZzUHJvbXB0LFxuICAgIHByaXZhdGUgX2ZzRm9ybTogRnNGb3JtLFxuICAgIHByaXZhdGUgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgKSB7fVxuXG4gIGNhbkRlYWN0aXZhdGUoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgY29uc3Qgcm91dGUgPSBnZXRBY3RpdmVSb3V0ZSh0aGlzLl9yb3V0ZSk7XG5cbiAgICBpZiAoIXJvdXRlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBDYW4gbm90IGZpbmQgcm91dGUgZm9yIEZvcm1EZWFjdGl2YXRlR3VhcmQgY2hlY2tzYCk7XG5cbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBkaXJlY3RpdmVzOiBGc0Zvcm1EaXJlY3RpdmVbXSA9IHRoaXMuX2ZzRm9ybS5nZXRGb3JtRGlyZWN0aXZlcyhyb3V0ZS5yb3V0ZUNvbmZpZy5jb21wb25lbnQpO1xuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGRpcmVjdGl2ZXMpIHx8IGRpcmVjdGl2ZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBDYW4gbm90IGZpbmQgYSB2YWxpZCBGc0Zvcm1EaXJlY3RpdmVgKTtcblxuICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgIH1cblxuICAgIHJldHVybiBjb25maXJtVW5zYXZlZChkaXJlY3RpdmVzLCB0aGlzLl9wcm9tcHQpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXN1bHQpID0+IHtcbiAgICAgICAgICByZXR1cm4gY29uZmlybVJlc3VsdENvbnRpbnVlKHJlc3VsdCk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG59XG4iXX0=
1
+ import { Injectable } from '@angular/core';
2
+ import { ActivatedRoute } from '@angular/router';
3
+ import { FsPrompt } from '@firestitch/prompt';
4
+ import { of } from 'rxjs';
5
+ import { map } from 'rxjs/operators';
6
+ import { confirmUnsaved } from '../helpers/confirm-unsaved';
7
+ import { confirmResultContinue } from '../helpers';
8
+ import { FsForm } from '../services/fsform.service';
9
+ import { getActiveRoute } from '../helpers/get-active-route';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@firestitch/prompt";
12
+ import * as i2 from "../services/fsform.service";
13
+ import * as i3 from "@angular/router";
14
+ export class FormDeactivateGuard {
15
+ constructor(_prompt, _fsForm, _route) {
16
+ this._prompt = _prompt;
17
+ this._fsForm = _fsForm;
18
+ this._route = _route;
19
+ }
20
+ canDeactivate() {
21
+ const route = getActiveRoute(this._route);
22
+ if (!route) {
23
+ console.error(`Can not find route for FormDeactivateGuard checks`);
24
+ return of(true);
25
+ }
26
+ const directives = this._fsForm.getFormDirectives(route.routeConfig.component);
27
+ if (!Array.isArray(directives) || directives.length === 0) {
28
+ console.error(`Can not find a valid FsFormDirective`);
29
+ return of(true);
30
+ }
31
+ return confirmUnsaved(directives, this._prompt)
32
+ .pipe(map((result) => {
33
+ return confirmResultContinue(result);
34
+ }));
35
+ }
36
+ }
37
+ FormDeactivateGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormDeactivateGuard, deps: [{ token: i1.FsPrompt }, { token: i2.FsForm }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
38
+ FormDeactivateGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormDeactivateGuard, providedIn: 'root' });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormDeactivateGuard, decorators: [{
40
+ type: Injectable,
41
+ args: [{
42
+ providedIn: 'root',
43
+ }]
44
+ }], ctorParameters: function () { return [{ type: i1.FsPrompt }, { type: i2.FsForm }, { type: i3.ActivatedRoute }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1kZWFjdGl2YXRlLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9ndWFyZHMvZm9ybS1kZWFjdGl2YXRlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7OztBQU03RCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLFlBQ1UsT0FBaUIsRUFDakIsT0FBZSxFQUNmLE1BQXNCO1FBRnRCLFlBQU8sR0FBUCxPQUFPLENBQVU7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQWdCO0lBQzdCLENBQUM7SUFFSixhQUFhO1FBQ1gsTUFBTSxLQUFLLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUxQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1lBRW5FLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2pCO1FBRUQsTUFBTSxVQUFVLEdBQXNCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVsRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN6RCxPQUFPLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7WUFFdEQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakI7UUFFRCxPQUFPLGNBQWMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUM1QyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDYixPQUFPLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOztnSEEvQlUsbUJBQW1CO29IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIENhbkRlYWN0aXZhdGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBGc1Byb21wdCB9IGZyb20gJ0BmaXJlc3RpdGNoL3Byb21wdCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZzRm9ybURpcmVjdGl2ZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvZm9ybS9mb3JtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBjb25maXJtVW5zYXZlZCB9IGZyb20gJy4uL2hlbHBlcnMvY29uZmlybS11bnNhdmVkJztcbmltcG9ydCB7IGNvbmZpcm1SZXN1bHRDb250aW51ZSB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgRnNGb3JtIH0gZnJvbSAnLi4vc2VydmljZXMvZnNmb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0QWN0aXZlUm91dGUgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1hY3RpdmUtcm91dGUnO1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtRGVhY3RpdmF0ZUd1YXJkIGltcGxlbWVudHMgQ2FuRGVhY3RpdmF0ZTxhbnk+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9wcm9tcHQ6IEZzUHJvbXB0LFxuICAgIHByaXZhdGUgX2ZzRm9ybTogRnNGb3JtLFxuICAgIHByaXZhdGUgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgKSB7fVxuXG4gIGNhbkRlYWN0aXZhdGUoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgY29uc3Qgcm91dGUgPSBnZXRBY3RpdmVSb3V0ZSh0aGlzLl9yb3V0ZSk7XG5cbiAgICBpZiAoIXJvdXRlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBDYW4gbm90IGZpbmQgcm91dGUgZm9yIEZvcm1EZWFjdGl2YXRlR3VhcmQgY2hlY2tzYCk7XG5cbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBkaXJlY3RpdmVzOiBGc0Zvcm1EaXJlY3RpdmVbXSA9IHRoaXMuX2ZzRm9ybS5nZXRGb3JtRGlyZWN0aXZlcyhyb3V0ZS5yb3V0ZUNvbmZpZy5jb21wb25lbnQpO1xuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGRpcmVjdGl2ZXMpIHx8IGRpcmVjdGl2ZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBDYW4gbm90IGZpbmQgYSB2YWxpZCBGc0Zvcm1EaXJlY3RpdmVgKTtcblxuICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgIH1cblxuICAgIHJldHVybiBjb25maXJtVW5zYXZlZChkaXJlY3RpdmVzLCB0aGlzLl9wcm9tcHQpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXN1bHQpID0+IHtcbiAgICAgICAgICByZXR1cm4gY29uZmlybVJlc3VsdENvbnRpbnVlKHJlc3VsdCk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- import { ConfirmResult } from '../enums/confirm-result';
2
- export function confirmResultContinue(result) {
3
- return result === ConfirmResult.Discard || result === ConfirmResult.Save || result === ConfirmResult.Pristine;
4
- }
1
+ import { ConfirmResult } from '../enums/confirm-result';
2
+ export function confirmResultContinue(result) {
3
+ return result === ConfirmResult.Discard || result === ConfirmResult.Save || result === ConfirmResult.Pristine;
4
+ }
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1yZXN1bHQtY29udGludWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2hlbHBlcnMvY29uZmlybS1yZXN1bHQtY29udGludWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxNQUFNO0lBQzFDLE9BQU8sTUFBTSxLQUFLLGFBQWEsQ0FBQyxPQUFPLElBQUksTUFBTSxLQUFLLGFBQWEsQ0FBQyxJQUFJLElBQUksTUFBTSxLQUFLLGFBQWEsQ0FBQyxRQUFRLENBQUM7QUFDaEgsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbmZpcm1SZXN1bHQgfSBmcm9tICcuLi9lbnVtcy9jb25maXJtLXJlc3VsdCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25maXJtUmVzdWx0Q29udGludWUocmVzdWx0KSB7XG4gIHJldHVybiByZXN1bHQgPT09IENvbmZpcm1SZXN1bHQuRGlzY2FyZCB8fCByZXN1bHQgPT09IENvbmZpcm1SZXN1bHQuU2F2ZSB8fCByZXN1bHQgPT09IENvbmZpcm1SZXN1bHQuUHJpc3RpbmU7XG59XG4iXX0=
@@ -1,72 +1,72 @@
1
- import { Observable } from 'rxjs';
2
- import { first } from 'rxjs/operators';
3
- import { ConfirmResult } from '../enums/confirm-result';
4
- export function confirmUnsaved(directives, prompt) {
5
- return new Observable(observer => {
6
- // TODO support for multiple directives per page
7
- const form = directives[0];
8
- if (!form.confirm || !form.ngForm.dirty) {
9
- observer.next(ConfirmResult.Pristine);
10
- observer.complete();
11
- return;
12
- }
13
- let title = 'You Have Unsaved Changes';
14
- let message = 'What would you like to do with your changes?';
15
- let saveLabel = 'Save & Continue';
16
- let discardLabel = 'Discard Changes & Continue';
17
- let cancelLabel = 'Review Changes';
18
- if (typeof form.confirm === 'object') {
19
- title = form.confirm.title || title;
20
- message = form.confirm.message || message;
21
- saveLabel = form.confirm.saveLabel || saveLabel;
22
- discardLabel = form.confirm.discardLabel || discardLabel;
23
- cancelLabel = form.confirm.cancelLabel || cancelLabel;
24
- }
25
- prompt.confirm({
26
- title: title,
27
- template: message,
28
- dialogConfig: { width: 'auto' },
29
- buttons: [
30
- {
31
- label: saveLabel,
32
- color: 'primary',
33
- value: 'save'
34
- },
35
- {
36
- label: discardLabel,
37
- value: 'discard'
38
- },
39
- {
40
- label: cancelLabel,
41
- cancel: true
42
- }
43
- ]
44
- }).subscribe((value) => {
45
- if (value === 'discard') {
46
- observer.next(ConfirmResult.Discard);
47
- observer.complete();
48
- form.reset();
49
- }
50
- if (value === 'save') {
51
- form.submitted
52
- .pipe(first())
53
- .subscribe(() => {
54
- observer.next(ConfirmResult.Save);
55
- observer.complete();
56
- });
57
- form.invalid
58
- .pipe(first())
59
- .subscribe(() => {
60
- observer.next(ConfirmResult.Invalid);
61
- observer.complete();
62
- });
63
- form.ngForm.control.markAsPristine();
64
- form.triggerSubmit({ confirmed: true });
65
- }
66
- }, (error) => {
67
- observer.next(ConfirmResult.Review);
68
- observer.complete();
69
- });
70
- });
71
- }
1
+ import { Observable } from 'rxjs';
2
+ import { first } from 'rxjs/operators';
3
+ import { ConfirmResult } from '../enums/confirm-result';
4
+ export function confirmUnsaved(directives, prompt) {
5
+ return new Observable(observer => {
6
+ // TODO support for multiple directives per page
7
+ const form = directives[0];
8
+ if (!form.confirm || !form.ngForm.dirty) {
9
+ observer.next(ConfirmResult.Pristine);
10
+ observer.complete();
11
+ return;
12
+ }
13
+ let title = 'You Have Unsaved Changes';
14
+ let message = 'What would you like to do with your changes?';
15
+ let saveLabel = 'Save & Continue';
16
+ let discardLabel = 'Discard Changes & Continue';
17
+ let cancelLabel = 'Review Changes';
18
+ if (typeof form.confirm === 'object') {
19
+ title = form.confirm.title || title;
20
+ message = form.confirm.message || message;
21
+ saveLabel = form.confirm.saveLabel || saveLabel;
22
+ discardLabel = form.confirm.discardLabel || discardLabel;
23
+ cancelLabel = form.confirm.cancelLabel || cancelLabel;
24
+ }
25
+ prompt.confirm({
26
+ title: title,
27
+ template: message,
28
+ dialogConfig: { width: 'auto' },
29
+ buttons: [
30
+ {
31
+ label: saveLabel,
32
+ color: 'primary',
33
+ value: 'save'
34
+ },
35
+ {
36
+ label: discardLabel,
37
+ value: 'discard'
38
+ },
39
+ {
40
+ label: cancelLabel,
41
+ cancel: true
42
+ }
43
+ ]
44
+ }).subscribe((value) => {
45
+ if (value === 'discard') {
46
+ observer.next(ConfirmResult.Discard);
47
+ observer.complete();
48
+ form.reset();
49
+ }
50
+ if (value === 'save') {
51
+ form.submitted
52
+ .pipe(first())
53
+ .subscribe(() => {
54
+ observer.next(ConfirmResult.Save);
55
+ observer.complete();
56
+ });
57
+ form.invalid
58
+ .pipe(first())
59
+ .subscribe(() => {
60
+ observer.next(ConfirmResult.Invalid);
61
+ observer.complete();
62
+ });
63
+ form.ngForm.control.markAsPristine();
64
+ form.triggerSubmit({ confirmed: true });
65
+ }
66
+ }, (error) => {
67
+ observer.next(ConfirmResult.Review);
68
+ observer.complete();
69
+ });
70
+ });
71
+ }
72
72
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS11bnNhdmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9oZWxwZXJzL2NvbmZpcm0tdW5zYXZlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHeEQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxVQUE2QixFQUFFLE1BQWdCO0lBQzVFLE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDL0IsZ0RBQWdEO1FBQ2hELE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFO1lBQ3ZDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixPQUFPO1NBQ1I7UUFFRCxJQUFJLEtBQUssR0FBRywwQkFBMEIsQ0FBQztRQUN2QyxJQUFJLE9BQU8sR0FBRyw4Q0FBOEMsQ0FBQztRQUM3RCxJQUFJLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQztRQUNsQyxJQUFJLFlBQVksR0FBRyw0QkFBNEIsQ0FBQztRQUNoRCxJQUFJLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQztRQUVuQyxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxRQUFRLEVBQUU7WUFDcEMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQztZQUNwQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDO1lBQzFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUM7WUFDaEQsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxJQUFJLFlBQVksQ0FBQztZQUN6RCxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksV0FBVyxDQUFDO1NBQ3ZEO1FBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUNiLEtBQUssRUFBRSxLQUFLO1lBQ1osUUFBUSxFQUFFLE9BQU87WUFDakIsWUFBWSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUMvQixPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsS0FBSyxFQUFFLFNBQVM7b0JBQ2hCLEtBQUssRUFBRSxTQUFTO29CQUNoQixLQUFLLEVBQUUsTUFBTTtpQkFDZDtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsWUFBWTtvQkFDbkIsS0FBSyxFQUFFLFNBQVM7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixNQUFNLEVBQUUsSUFBSTtpQkFDYjthQUNGO1NBQ0YsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBRXJCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtnQkFDdkIsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3JDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2Q7WUFFRCxJQUFJLEtBQUssS0FBSyxNQUFNLEVBQUU7Z0JBRXBCLElBQUksQ0FBQyxTQUFTO3FCQUNiLElBQUksQ0FDSCxLQUFLLEVBQUUsQ0FDUjtxQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNkLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNsQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksQ0FBQyxPQUFPO3FCQUNYLElBQUksQ0FDSCxLQUFLLEVBQUUsQ0FDUjtxQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNkLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNyQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7YUFDekM7UUFFSCxDQUFDLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNoQixRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGc1Byb21wdCB9IGZyb20gJ0BmaXJlc3RpdGNoL3Byb21wdCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGc0Zvcm1EaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL2Zvcm0vZm9ybS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29uZmlybVJlc3VsdCB9IGZyb20gJy4uL2VudW1zL2NvbmZpcm0tcmVzdWx0JztcblxuXG5leHBvcnQgZnVuY3Rpb24gY29uZmlybVVuc2F2ZWQoZGlyZWN0aXZlczogRnNGb3JtRGlyZWN0aXZlW10sIHByb21wdDogRnNQcm9tcHQpOiBPYnNlcnZhYmxlPENvbmZpcm1SZXN1bHQ+IHtcbiAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICAvLyBUT0RPIHN1cHBvcnQgZm9yIG11bHRpcGxlIGRpcmVjdGl2ZXMgcGVyIHBhZ2VcbiAgICBjb25zdCBmb3JtID0gZGlyZWN0aXZlc1swXTtcblxuICAgIGlmICghZm9ybS5jb25maXJtIHx8ICFmb3JtLm5nRm9ybS5kaXJ0eSkge1xuICAgICAgb2JzZXJ2ZXIubmV4dChDb25maXJtUmVzdWx0LlByaXN0aW5lKTtcbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHRpdGxlID0gJ1lvdSBIYXZlIFVuc2F2ZWQgQ2hhbmdlcyc7XG4gICAgbGV0IG1lc3NhZ2UgPSAnV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyB3aXRoIHlvdXIgY2hhbmdlcz8nO1xuICAgIGxldCBzYXZlTGFiZWwgPSAnU2F2ZSAmIENvbnRpbnVlJztcbiAgICBsZXQgZGlzY2FyZExhYmVsID0gJ0Rpc2NhcmQgQ2hhbmdlcyAmIENvbnRpbnVlJztcbiAgICBsZXQgY2FuY2VsTGFiZWwgPSAnUmV2aWV3IENoYW5nZXMnO1xuXG4gICAgaWYgKHR5cGVvZiBmb3JtLmNvbmZpcm0gPT09ICdvYmplY3QnKSB7XG4gICAgICB0aXRsZSA9IGZvcm0uY29uZmlybS50aXRsZSB8fCB0aXRsZTtcbiAgICAgIG1lc3NhZ2UgPSBmb3JtLmNvbmZpcm0ubWVzc2FnZSB8fCBtZXNzYWdlO1xuICAgICAgc2F2ZUxhYmVsID0gZm9ybS5jb25maXJtLnNhdmVMYWJlbCB8fCBzYXZlTGFiZWw7XG4gICAgICBkaXNjYXJkTGFiZWwgPSBmb3JtLmNvbmZpcm0uZGlzY2FyZExhYmVsIHx8IGRpc2NhcmRMYWJlbDtcbiAgICAgIGNhbmNlbExhYmVsID0gZm9ybS5jb25maXJtLmNhbmNlbExhYmVsIHx8IGNhbmNlbExhYmVsO1xuICAgIH1cblxuICAgIHByb21wdC5jb25maXJtKHtcbiAgICAgIHRpdGxlOiB0aXRsZSxcbiAgICAgIHRlbXBsYXRlOiBtZXNzYWdlLFxuICAgICAgZGlhbG9nQ29uZmlnOiB7IHdpZHRoOiAnYXV0bycgfSxcbiAgICAgIGJ1dHRvbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGxhYmVsOiBzYXZlTGFiZWwsXG4gICAgICAgICAgY29sb3I6ICdwcmltYXJ5JyxcbiAgICAgICAgICB2YWx1ZTogJ3NhdmUnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogZGlzY2FyZExhYmVsLFxuICAgICAgICAgIHZhbHVlOiAnZGlzY2FyZCdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGxhYmVsOiBjYW5jZWxMYWJlbCxcbiAgICAgICAgICBjYW5jZWw6IHRydWVcbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0pLnN1YnNjcmliZSgodmFsdWUpID0+IHtcblxuICAgICAgaWYgKHZhbHVlID09PSAnZGlzY2FyZCcpIHtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChDb25maXJtUmVzdWx0LkRpc2NhcmQpO1xuICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICBmb3JtLnJlc2V0KCk7XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZSA9PT0gJ3NhdmUnKSB7XG5cbiAgICAgICAgZm9ybS5zdWJtaXR0ZWRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZmlyc3QoKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoQ29uZmlybVJlc3VsdC5TYXZlKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICBmb3JtLmludmFsaWRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZmlyc3QoKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoQ29uZmlybVJlc3VsdC5JbnZhbGlkKTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICBmb3JtLm5nRm9ybS5jb250cm9sLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgICAgIGZvcm0udHJpZ2dlclN1Ym1pdCh7IGNvbmZpcm1lZDogdHJ1ZSB9KTtcbiAgICAgIH1cblxuICAgIH0sIChlcnJvcjogYW55KSA9PiB7XG4gICAgICBvYnNlcnZlci5uZXh0KENvbmZpcm1SZXN1bHQuUmV2aWV3KTtcbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgfSk7XG4gIH0pO1xufVxuIl19