@firestitch/form 9.7.7 → 12.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/app/components/form-dialog-actions/form-dialog-actions.component.d.ts +21 -18
  2. package/app/consts/error-messages.const.d.ts +19 -19
  3. package/app/directives/form/form.directive.d.ts +105 -102
  4. package/app/directives/form-dialog-close.directive.d.ts +12 -9
  5. package/app/directives/submit-button.directive.d.ts +31 -28
  6. package/app/directives/validators/compare.directive.d.ts +15 -12
  7. package/app/directives/validators/control.directive.d.ts +48 -45
  8. package/app/directives/validators/daterange.directive.d.ts +13 -10
  9. package/app/directives/validators/email.directive.d.ts +13 -10
  10. package/app/directives/validators/emails.directive.d.ts +13 -10
  11. package/app/directives/validators/function.directive.d.ts +14 -11
  12. package/app/directives/validators/greater.directive.d.ts +13 -10
  13. package/app/directives/validators/integer.directive.d.ts +13 -10
  14. package/app/directives/validators/lesser.directive.d.ts +13 -10
  15. package/app/directives/validators/max.directive.d.ts +13 -10
  16. package/app/directives/validators/maxlength.directive.d.ts +13 -10
  17. package/app/directives/validators/min.directive.d.ts +13 -10
  18. package/app/directives/validators/minlength.directive.d.ts +13 -10
  19. package/app/directives/validators/numeric.directive.d.ts +13 -10
  20. package/app/directives/validators/pattern.directive.d.ts +13 -10
  21. package/app/directives/validators/phone.directive.d.ts +13 -10
  22. package/app/directives/validators/required.directive.d.ts +16 -13
  23. package/app/directives/validators/url.directive.d.ts +14 -11
  24. package/app/directives/validators/validate.directive.d.ts +14 -11
  25. package/app/enums/confirm-result.d.ts +7 -7
  26. package/app/enums/form-status.d.ts +9 -9
  27. package/app/fs-form.module.d.ts +35 -4
  28. package/app/guards/form-deactivate.guard.d.ts +12 -9
  29. package/app/helpers/confirm-result-continue.d.ts +1 -1
  30. package/app/helpers/confirm-unsaved.d.ts +5 -5
  31. package/app/helpers/get-form-errors.d.ts +2 -2
  32. package/app/helpers/index.d.ts +2 -2
  33. package/app/helpers/is-enabled.d.ts +1 -1
  34. package/app/interfaces/async-validator.d.ts +14 -14
  35. package/app/interfaces/confirm-config.d.ts +7 -7
  36. package/app/interfaces/confirm-tab-group.d.ts +10 -10
  37. package/app/interfaces/form-deactivate.d.ts +4 -4
  38. package/app/interfaces/index.d.ts +4 -4
  39. package/app/interfaces/submit-event.d.ts +5 -5
  40. package/app/interfaces/submitted-event.d.ts +6 -6
  41. package/app/interfaces/validator.d.ts +13 -13
  42. package/app/providers/validate-messages.provider.d.ts +25 -25
  43. package/app/services/fsform.service.d.ts +10 -7
  44. package/app/validators/validators.d.ts +12 -12
  45. package/bundles/firestitch-form.umd.js +2588 -2459
  46. package/bundles/firestitch-form.umd.js.map +1 -1
  47. package/esm2015/app/components/form-dialog-actions/form-dialog-actions.component.js +86 -93
  48. package/esm2015/app/consts/error-messages.const.js +20 -20
  49. package/esm2015/app/directives/form/form.directive.js +619 -665
  50. package/esm2015/app/directives/form-dialog-close.directive.js +31 -33
  51. package/esm2015/app/directives/submit-button.directive.js +131 -138
  52. package/esm2015/app/directives/validators/compare.directive.js +49 -49
  53. package/esm2015/app/directives/validators/control.directive.js +257 -273
  54. package/esm2015/app/directives/validators/daterange.directive.js +41 -41
  55. package/esm2015/app/directives/validators/email.directive.js +41 -41
  56. package/esm2015/app/directives/validators/emails.directive.js +41 -41
  57. package/esm2015/app/directives/validators/function.directive.js +31 -31
  58. package/esm2015/app/directives/validators/greater.directive.js +40 -40
  59. package/esm2015/app/directives/validators/integer.directive.js +41 -41
  60. package/esm2015/app/directives/validators/lesser.directive.js +40 -40
  61. package/esm2015/app/directives/validators/max.directive.js +36 -36
  62. package/esm2015/app/directives/validators/maxlength.directive.js +35 -35
  63. package/esm2015/app/directives/validators/min.directive.js +36 -36
  64. package/esm2015/app/directives/validators/minlength.directive.js +35 -35
  65. package/esm2015/app/directives/validators/numeric.directive.js +41 -41
  66. package/esm2015/app/directives/validators/pattern.directive.js +35 -35
  67. package/esm2015/app/directives/validators/phone.directive.js +41 -41
  68. package/esm2015/app/directives/validators/required.directive.js +71 -73
  69. package/esm2015/app/directives/validators/url.directive.js +47 -49
  70. package/esm2015/app/directives/validators/validate.directive.js +33 -31
  71. package/esm2015/app/enums/confirm-result.js +9 -9
  72. package/esm2015/app/enums/form-status.js +11 -11
  73. package/esm2015/app/fs-form.module.js +165 -106
  74. package/esm2015/app/guards/form-deactivate.guard.js +40 -44
  75. package/esm2015/app/helpers/confirm-result-continue.js +5 -5
  76. package/esm2015/app/helpers/confirm-unsaved.js +70 -70
  77. package/esm2015/app/helpers/get-form-errors.js +25 -25
  78. package/esm2015/app/helpers/index.js +3 -3
  79. package/esm2015/app/helpers/is-enabled.js +4 -4
  80. package/esm2015/app/interfaces/async-validator.js +2 -1
  81. package/esm2015/app/interfaces/confirm-config.js +2 -1
  82. package/esm2015/app/interfaces/confirm-tab-group.js +2 -1
  83. package/esm2015/app/interfaces/form-deactivate.js +2 -1
  84. package/esm2015/app/interfaces/index.js +5 -1
  85. package/esm2015/app/interfaces/submit-event.js +2 -1
  86. package/esm2015/app/interfaces/submitted-event.js +2 -1
  87. package/esm2015/app/interfaces/validator.js +2 -1
  88. package/esm2015/app/providers/validate-messages.provider.js +11 -11
  89. package/esm2015/app/services/fsform.service.js +25 -26
  90. package/esm2015/app/validators/validators.js +97 -97
  91. package/esm2015/firestitch-form.js +5 -27
  92. package/esm2015/public_api.js +35 -14
  93. package/fesm2015/firestitch-form.js +2100 -2107
  94. package/fesm2015/firestitch-form.js.map +1 -1
  95. package/firestitch-form.d.ts +5 -26
  96. package/package.json +7 -8
  97. package/public_api.d.ts +33 -12
  98. package/styles.scss +4 -4
  99. package/bundles/firestitch-form.umd.min.js +0 -16
  100. package/bundles/firestitch-form.umd.min.js.map +0 -1
  101. package/esm5/app/components/form-dialog-actions/form-dialog-actions.component.js +0 -96
  102. package/esm5/app/consts/error-messages.const.js +0 -20
  103. package/esm5/app/directives/form/form.directive.js +0 -706
  104. package/esm5/app/directives/form-dialog-close.directive.js +0 -34
  105. package/esm5/app/directives/submit-button.directive.js +0 -144
  106. package/esm5/app/directives/validators/compare.directive.js +0 -60
  107. package/esm5/app/directives/validators/control.directive.js +0 -279
  108. package/esm5/app/directives/validators/daterange.directive.js +0 -50
  109. package/esm5/app/directives/validators/email.directive.js +0 -50
  110. package/esm5/app/directives/validators/emails.directive.js +0 -50
  111. package/esm5/app/directives/validators/function.directive.js +0 -36
  112. package/esm5/app/directives/validators/greater.directive.js +0 -49
  113. package/esm5/app/directives/validators/integer.directive.js +0 -50
  114. package/esm5/app/directives/validators/lesser.directive.js +0 -49
  115. package/esm5/app/directives/validators/max.directive.js +0 -45
  116. package/esm5/app/directives/validators/maxlength.directive.js +0 -44
  117. package/esm5/app/directives/validators/min.directive.js +0 -45
  118. package/esm5/app/directives/validators/minlength.directive.js +0 -44
  119. package/esm5/app/directives/validators/numeric.directive.js +0 -50
  120. package/esm5/app/directives/validators/pattern.directive.js +0 -44
  121. package/esm5/app/directives/validators/phone.directive.js +0 -50
  122. package/esm5/app/directives/validators/required.directive.js +0 -88
  123. package/esm5/app/directives/validators/url.directive.js +0 -56
  124. package/esm5/app/directives/validators/validate.directive.js +0 -36
  125. package/esm5/app/enums/confirm-result.js +0 -9
  126. package/esm5/app/enums/form-status.js +0 -11
  127. package/esm5/app/fs-form.module.js +0 -110
  128. package/esm5/app/guards/form-deactivate.guard.js +0 -45
  129. package/esm5/app/helpers/confirm-result-continue.js +0 -5
  130. package/esm5/app/helpers/confirm-unsaved.js +0 -70
  131. package/esm5/app/helpers/get-form-errors.js +0 -28
  132. package/esm5/app/helpers/index.js +0 -3
  133. package/esm5/app/helpers/is-enabled.js +0 -4
  134. package/esm5/app/interfaces/async-validator.js +0 -1
  135. package/esm5/app/interfaces/confirm-config.js +0 -1
  136. package/esm5/app/interfaces/confirm-tab-group.js +0 -1
  137. package/esm5/app/interfaces/form-deactivate.js +0 -1
  138. package/esm5/app/interfaces/index.js +0 -1
  139. package/esm5/app/interfaces/submit-event.js +0 -1
  140. package/esm5/app/interfaces/submitted-event.js +0 -1
  141. package/esm5/app/interfaces/validator.js +0 -1
  142. package/esm5/app/providers/validate-messages.provider.js +0 -12
  143. package/esm5/app/services/fsform.service.js +0 -27
  144. package/esm5/app/validators/validators.js +0 -102
  145. package/esm5/firestitch-form.js +0 -27
  146. package/esm5/public_api.js +0 -14
  147. package/fesm5/firestitch-form.js +0 -2396
  148. package/fesm5/firestitch-form.js.map +0 -1
  149. package/firestitch-form.metadata.json +0 -1
@@ -1,26 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- export { FsFormDialogCloseDirective as ɵa } from './app/directives/form-dialog-close.directive';
6
- export { FsSubmitButtonDirective as ɵw } from './app/directives/submit-button.directive';
7
- export { FsFormCompareDirective as ɵn } from './app/directives/validators/compare.directive';
8
- export { FsControlDirective as ɵb } from './app/directives/validators/control.directive';
9
- export { FsFormDateRangeDirective as ɵs } from './app/directives/validators/daterange.directive';
10
- export { FsFormEmailDirective as ɵk } from './app/directives/validators/email.directive';
11
- export { FsFormEmailsDirective as ɵl } from './app/directives/validators/emails.directive';
12
- export { FsFormFunctionDirective as ɵr } from './app/directives/validators/function.directive';
13
- export { FsFormGreaterDirective as ɵt } from './app/directives/validators/greater.directive';
14
- export { FsFormIntegerDirective as ɵo } from './app/directives/validators/integer.directive';
15
- export { FsFormLesserDirective as ɵu } from './app/directives/validators/lesser.directive';
16
- export { FsFormMaxDirective as ɵh } from './app/directives/validators/max.directive';
17
- export { FsFormMaxLengthDirective as ɵj } from './app/directives/validators/maxlength.directive';
18
- export { FsFormMinDirective as ɵg } from './app/directives/validators/min.directive';
19
- export { FsFormMinLengthDirective as ɵi } from './app/directives/validators/minlength.directive';
20
- export { FsFormNumericDirective as ɵp } from './app/directives/validators/numeric.directive';
21
- export { FsFormPatternDirective as ɵq } from './app/directives/validators/pattern.directive';
22
- export { FsFormPhoneDirective as ɵm } from './app/directives/validators/phone.directive';
23
- export { FsFormRequiredDirective as ɵf } from './app/directives/validators/required.directive';
24
- export { FsFormUrlDirective as ɵv } from './app/directives/validators/url.directive';
25
- export { FsFormValidateDirective as ɵx } from './app/directives/validators/validate.directive';
26
- export { VALIDATE_MESSAGES as ɵc, VALIDATE_MESSAGE_PROVIDER as ɵd, messageProviderFactory as ɵe } from './app/providers/validate-messages.provider';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@firestitch/form" />
5
+ export * from './public_api';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firestitch/form",
3
- "version": "9.7.7",
3
+ "version": "12.0.2",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/Firestitch/ngx-form"
@@ -18,17 +18,16 @@
18
18
  },
19
19
  "peerDependencies": {
20
20
  "@firestitch/common": ">=7.0.2",
21
- "@firestitch/drawer": ">=8.3.5",
22
- "tslib": "^1.10.0"
21
+ "@firestitch/drawer": ">=8.3.5"
23
22
  },
24
23
  "sideEffects": false,
25
24
  "main": "bundles/firestitch-form.umd.js",
26
- "module": "fesm5/firestitch-form.js",
25
+ "module": "fesm2015/firestitch-form.js",
27
26
  "es2015": "fesm2015/firestitch-form.js",
28
- "esm5": "esm5/firestitch-form.js",
29
27
  "esm2015": "esm2015/firestitch-form.js",
30
- "fesm5": "fesm5/firestitch-form.js",
31
28
  "fesm2015": "fesm2015/firestitch-form.js",
32
29
  "typings": "firestitch-form.d.ts",
33
- "metadata": "firestitch-form.metadata.json"
34
- }
30
+ "dependencies": {
31
+ "tslib": "^2.2.0"
32
+ }
33
+ }
package/public_api.d.ts CHANGED
@@ -1,12 +1,33 @@
1
- export { FsFormModule } from './app/fs-form.module';
2
- export { FsForm } from './app/services/fsform.service';
3
- export { FsFormDirective } from './app/directives/form/form.directive';
4
- export { FsFormDialogActionsComponent } from './app/components/form-dialog-actions/form-dialog-actions.component';
5
- export { FsValidators } from './app/validators/validators';
6
- export { FormDeactivate } from './app/interfaces/form-deactivate';
7
- export { FormDeactivateGuard } from './app/guards/form-deactivate.guard';
8
- export { SubmitEvent } from './app/interfaces/submit-event';
9
- export { SubmittedEvent } from './app/interfaces/submitted-event';
10
- export { ConfirmConfig } from './app/interfaces/confirm-config';
11
- export { ConfirmResult } from './app/enums/confirm-result';
12
- export { FormStatus } from './app/enums/form-status';
1
+ export { FsFormModule } from './app/fs-form.module';
2
+ export { FsForm } from './app/services/fsform.service';
3
+ export { FsFormDirective } from './app/directives/form/form.directive';
4
+ export { FsControlDirective } from './app/directives/validators/control.directive';
5
+ export { FsFormRequiredDirective } from './app/directives/validators/required.directive';
6
+ export { FsFormMinDirective } from './app/directives/validators/min.directive';
7
+ export { FsFormMaxDirective } from './app/directives/validators/max.directive';
8
+ export { FsFormMinLengthDirective } from './app/directives/validators/minlength.directive';
9
+ export { FsFormMaxLengthDirective } from './app/directives/validators/maxlength.directive';
10
+ export { FsFormEmailDirective } from './app/directives/validators/email.directive';
11
+ export { FsFormEmailsDirective } from './app/directives/validators/emails.directive';
12
+ export { FsFormPhoneDirective } from './app/directives/validators/phone.directive';
13
+ export { FsFormCompareDirective } from './app/directives/validators/compare.directive';
14
+ export { FsFormIntegerDirective } from './app/directives/validators/integer.directive';
15
+ export { FsFormNumericDirective } from './app/directives/validators/numeric.directive';
16
+ export { FsFormPatternDirective } from './app/directives/validators/pattern.directive';
17
+ export { FsFormFunctionDirective } from './app/directives/validators/function.directive';
18
+ export { FsFormDateRangeDirective } from './app/directives/validators/daterange.directive';
19
+ export { FsFormGreaterDirective } from './app/directives/validators/greater.directive';
20
+ export { FsFormLesserDirective } from './app/directives/validators/lesser.directive';
21
+ export { FsFormUrlDirective } from './app/directives/validators/url.directive';
22
+ export { FsFormDialogCloseDirective } from './app/directives/form-dialog-close.directive';
23
+ export { FsSubmitButtonDirective } from './app/directives/submit-button.directive';
24
+ export { FsFormValidateDirective } from './app/directives/validators/validate.directive';
25
+ export { FsFormDialogActionsComponent } from './app/components/form-dialog-actions/form-dialog-actions.component';
26
+ export { FsValidators } from './app/validators/validators';
27
+ export { FormDeactivate } from './app/interfaces/form-deactivate';
28
+ export { FormDeactivateGuard } from './app/guards/form-deactivate.guard';
29
+ export { SubmitEvent } from './app/interfaces/submit-event';
30
+ export { SubmittedEvent } from './app/interfaces/submitted-event';
31
+ export { ConfirmConfig } from './app/interfaces/confirm-config';
32
+ export { ConfirmResult } from './app/enums/confirm-result';
33
+ export { FormStatus } from './app/enums/form-status';
package/styles.scss CHANGED
@@ -1,4 +1,4 @@
1
- @import '~@angular/material/theming';
1
+ @use '~@angular/material' as mat;
2
2
 
3
3
  .fs-form-label-required:after {
4
4
  content: " *";
@@ -67,7 +67,7 @@
67
67
 
68
68
  // hack for material form field
69
69
  .mat-form-field.mat-form-field-invalid.ng-valid .mat-form-field-ripple {
70
- background-color: mat-color($foreground, divider, if($is-dark-theme, 1, 0.87));
70
+ background-color: mat.get-color-from-palette($foreground, divider, if($is-dark-theme, 1, 0.87));
71
71
  }
72
72
 
73
73
  // hack for material form field
@@ -80,12 +80,12 @@
80
80
  &.mat-button,
81
81
  &.mat-raised-button:not([color='primary']) {
82
82
  svg.svg-icon-process {
83
- stroke: mat-color($primary);
83
+ stroke: mat.get-color-from-palette($primary);
84
84
  }
85
85
 
86
86
  svg.svg-icon-error path,
87
87
  svg.svg-icon-success path {
88
- fill: mat-color($primary);
88
+ fill: mat.get-color-from-palette($primary);
89
89
  }
90
90
  }
91
91
 
@@ -1,16 +0,0 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/material/button"),require("@angular/material/dialog"),require("@angular/material/core"),require("@angular/material/tabs"),require("@firestitch/message"),require("@firestitch/prompt"),require("@firestitch/common"),require("@firestitch/drawer"),require("rxjs"),require("rxjs/operators"),require("lodash-es"),require("date-fns")):"function"==typeof define&&define.amd?define("@firestitch/form",["exports","@angular/core","@angular/common","@angular/forms","@angular/material/button","@angular/material/dialog","@angular/material/core","@angular/material/tabs","@firestitch/message","@firestitch/prompt","@firestitch/common","@firestitch/drawer","rxjs","rxjs/operators","lodash-es","date-fns"],e):e(((t=t||self).firestitch=t.firestitch||{},t.firestitch.form={}),t.ng.core,t.ng.common,t.ng.forms,t.ng.material.button,t.ng.material.dialog,t.ng.material.core,t.ng.material.tabs,t.message,t.prompt,t.common$1,t.drawer,t.rxjs,t.rxjs.operators,t.lodashEs,t.dateFns)}(this,(function(t,e,r,i,n,o,s,a,l,u,p,c,d,f,m,h){"use strict";
2
- /*! *****************************************************************************
3
- Copyright (c) Microsoft Corporation. All rights reserved.
4
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
5
- this file except in compliance with the License. You may obtain a copy of the
6
- License at http://www.apache.org/licenses/LICENSE-2.0
7
-
8
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
9
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
10
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
11
- MERCHANTABLITY OR NON-INFRINGEMENT.
12
-
13
- See the Apache Version 2.0 License for specific language governing permissions
14
- and limitations under the License.
15
- ***************************************************************************** */var g=function(t,e){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function y(t,e){function r(){this.constructor=t}g(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var v,b=function(){return(b=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function _(t,e,r,i){var n,o=arguments.length,s=o<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,r,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(o<3?n(s):o>3?n(e,r,s):n(e,r))||s);return o>3&&s&&Object.defineProperty(e,r,s),s}function S(t,e){return function(r,i){e(r,i,t)}}function F(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function C(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var i,n,o=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(i=o.next()).done;)s.push(i.value)}catch(t){n={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return s}function O(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(C(arguments[e]));return t}function M(e,r){return new d.Observable((function(i){if(!e.confirm||!e.ngForm.dirty)return i.next(t.ConfirmResult.Pristine),void i.complete();var n="You Have Unsaved Changes",o="What would you like to do with your changes?",s="Save & Continue",a="Discard Changes & Continue",l="Review Changes";"object"==typeof e.confirm&&(n=e.confirm.title||n,o=e.confirm.message||o,s=e.confirm.saveLabel||s,a=e.confirm.discardLabel||a,l=e.confirm.cancelLabel||l),r.confirm({title:n,template:o,dialogConfig:{width:"auto"},buttons:[{label:s,color:"primary",value:"save"},{label:a,value:"discard"},{label:l,cancel:!0}]}).subscribe((function(r){"discard"===r&&(i.next(t.ConfirmResult.Discard),i.complete(),e.reset()),"save"===r&&(e.submitted.pipe(f.first()).subscribe((function(){i.next(t.ConfirmResult.Save),i.complete()})),e.invalid.pipe(f.first()).subscribe((function(){i.next(t.ConfirmResult.Invalid),i.complete()})),e.ngForm.control.markAsPristine(),e.ngForm.ngSubmit.emit())}),(function(e){i.next(t.ConfirmResult.Review),i.complete()}))}))}(v=t.ConfirmResult||(t.ConfirmResult={})).Save="save",v.Discard="discard",v.Review="review",v.Invalid="invalid",v.Pristine="pristine";var j,D=function(){function t(){this.clicked$=new d.Subject,this.registered=!1,this.type="button"}return t.prototype.click=function(){this.clicked$.next()},t.prototype.ngOnDestroy=function(){this.clicked$.complete()},_([e.HostBinding("attr.type"),F("design:type",Object)],t.prototype,"type",void 0),_([e.HostListener("click",["$event.target"]),F("design:type",Function),F("design:paramtypes",[]),F("design:returntype",void 0)],t.prototype,"click",null),t=_([e.Directive({selector:"[fsFormDialogClose],[fs-form-dialog-close]"})],t)}(),I=function(){function t(){this._eventBus=new d.Subject}return t.prototype.broadcast=function(t,e){this._eventBus.next({key:t,data:e})},t.prototype.on=function(t){return this._eventBus.asObservable().pipe(f.filter((function(e){return e.key===t})),f.map((function(t){return t.data})))},t.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t=_([e.Injectable({providedIn:"root"}),F("design:paramtypes",[])],t)}();function E(e){return e===t.ConfirmResult.Discard||e===t.ConfirmResult.Save||e===t.ConfirmResult.Pristine}(j=t.FormStatus||(t.FormStatus={})).Valid="valid",j.Invalid="invalid",j.Submitting="submitting",j.Submitted="submitted",j.Error="error",j.Success="success",j.Completing="completing";var w=function(){function r(r,i,n,o,s,a,l,u){this.ngForm=r,this._form=i,this._element=n,this._message=o,this._prompt=s,this._ngZone=a,this._dialogRef=l,this._drawerRef=u,this.wrapperSelector=".fs-form-wrapper,.mat-form-field",this.messageSelector=".fs-form-message,.mat-form-field-subscript-wrapper",this.hintSelector=".fs-form-hint,.mat-form-field-hint-wrapper",this.labelSelector=".fs-form-label,.mat-form-field-label",this.autocomplete=!1,this.shortcuts=!0,this.confirm=!0,this.confirmDialog=!0,this.confirmDrawer=!0,this.confirmBrowser=!0,this.confirmTabs=!0,this.dirtySubmitButton=!0,this.successDelay=0,this.errorDelay=1e3,this.submitEvent=new e.EventEmitter,this.invalid=new e.EventEmitter,this.valid=new e.EventEmitter,this.submitted=new e.EventEmitter,this.reseted=new e.EventEmitter,this.cleared=new e.EventEmitter,this.fsformClass=!0,this._tabGroups=new e.QueryList,this._submitButtons=new e.QueryList,this._dialogBackdropEscape=!1,this._snapshot={},this._status$=new d.BehaviorSubject(t.FormStatus.Valid),this._destroy$=new d.Subject}return Object.defineProperty(r.prototype,"submitting",{get:function(){return this._status$.getValue()===t.FormStatus.Submitting},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"completing",{get:function(){return this._status$.getValue()===t.FormStatus.Completing},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"_submitEvent",{get:function(){return{ngForm:this.ngForm,submitter:this._submitter}},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"_formValidState$",{get:function(){this._form.broadcast("valid",this._submitEvent),this.submitEvent.emit(this._submitEvent),this.valid.emit(this._submitEvent);var t={ngForm:this.ngForm,submitter:this._submitter,response:null};if(!this.submit)return d.of(t);var e=this.submit(this._submitEvent);return d.isObservable(e)?e.pipe(f.map((function(e){return t.response=e,t}))):d.of(t)},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"_formInvalidState$",{get:function(){this._form.broadcast("invalid",this._submitEvent),this.invalid&&this.invalid.emit(this._submitEvent);this._message.error("Changes not saved. Please review errors highlighted in red.",{mode:l.MessageMode.Toast});var t=this._element.nativeElement.querySelector(".ng-invalid");return t&&t.scrollIntoView({behavior:"smooth",block:"center"}),d.throwError("Form validation error")},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"_submitter",{get:function(){return this._activeSubmitButton?this._activeSubmitButton.name:null},enumerable:!0,configurable:!0}),r.prototype.ngOnInit=function(){this._registerConfirmDialogBackdropEscape(),this._listenHotKeys(),this._listenWindowClose(),this._listenSubmit(),this.autocomplete||this._registerAutocomplete()},r.prototype.ngOnChanges=function(t){t.confirm&&this._updateDirtySubmitButtons()},r.prototype.ngAfterContentInit=function(){this._registerConfirm(),this._registerConfirmDialogClose(),this._registerConfirmDrawerClose(),this._registerConfirmTabs(),this._registerDrawerClose(),this._registerDirtySubmitButton()},r.prototype.ngOnDestroy=function(){this._destroy$.next(),this._destroy$.complete()},r.prototype.createSnapshot=function(){this._snapshot=this.ngForm.value},r.prototype.reset=function(){var t=this;this.ngForm.resetForm(),Object.keys(this.ngForm.controls).forEach((function(e){t.ngForm.controls[e].reset(t._snapshot[e])})),this.reseted.emit()},r.prototype.clear=function(){this.ngForm.resetForm(),this.cleared.emit()},r.prototype.dirty=function(){this.ngForm.form.markAsDirty(),this._updateDirtySubmitButtons()},r.prototype.triggerSubmit=function(){this.ngForm.ngSubmit.next()},r.prototype.triggerConfirm=function(){var t=this;return(this.submitting?this.submitted.asObservable():d.of({})).pipe(f.take(1),f.mergeMap((function(){return M(t,t._prompt)})))},r.prototype.enable=function(){this.ngForm.control.enable(),this._updateDirtySubmitButtons()},r.prototype.disable=function(){this.ngForm.control.disable(),this._submitButtons.forEach((function(t){t.disable()}))},r.prototype.addSubmitButton=function(t){this._submitButtons.reset(O(this._submitButtons.toArray(),[t]))},r.prototype.removeSubmitButton=function(t){this._submitButtons.reset(O(this._submitButtons.toArray().filter((function(e){return t!==e}))))},r.prototype._listenSubmit=function(){var e=this;this.ngForm.ngSubmit.pipe(f.tap((function(t){null==t||t.preventDefault()})),f.filter((function(){return[t.FormStatus.Valid,t.FormStatus.Invalid].includes(e._status$.getValue())})),f.tap((function(){return e._markControlsAsTouchedAndUpdateValidity()})),f.tap((function(){return e._broadcastSubmittingEvents()})),f.switchMap((function(){return e._waitUntilStatusPending()})),f.tap((function(){return e._setupActiveSubmitButton()})),f.mergeMap((function(){return"INVALID"===e.ngForm.status?e._formInvalidState$:e._formValidState$})),f.catchError((function(t,r){return e._handleError(t),r})),f.tap((function(t){e._completeSubmit(!0,t)})),f.takeUntil(this._destroy$)).subscribe((function(){}))},r.prototype._listenWindowClose=function(){var t=this;d.fromEvent(window,"beforeunload").pipe(f.takeUntil(this._destroy$)).subscribe((function(e){t.confirm&&t.confirmBrowser&&t.ngForm.dirty&&(e.returnValue=!1)}))},r.prototype._listenHotKeys=function(){var t=this;this._ngZone.runOutsideAngular((function(){d.fromEvent(document,"keydown").pipe(f.takeUntil(t._destroy$)).subscribe((function(e){if(t._dialogBackdropEscape&&"Escape"===e.code){var r=document.getElementById(t._dialogRef.id),i=e.composedPath();i&&i.forEach((function(e){r===e&&t._ngZone.run((function(){t._formClose()}))}))}(e.ctrlKey||e.metaKey)&&"KeyS"===e.code&&(e.preventDefault(),t.shortcuts&&t._elementInForm(document.activeElement)&&t.ngForm.ngSubmit.next())}))}))},r.prototype._formClose=function(){var e=this;this.confirm&&this.confirmDialog?this.triggerConfirm().pipe(f.filter((function(t){return E(t)})),f.switchMap((function(r){return r===t.ConfirmResult.Pristine||r===t.ConfirmResult.Discard?d.of(null):e.submitted.asObservable()})),f.takeUntil(this._destroy$)).subscribe((function(t){e._dialogRef.close(null==t?void 0:t.response)})):this._dialogRef.close(null)},r.prototype._registerDialogClose=function(t){var e=this;t.registered||(t.registered=!0,t.clicked$.pipe(f.takeUntil(this._destroy$)).subscribe((function(){e._formClose()})))},r.prototype._getActiveButton=function(){var t=this._submitButtons.find((function(t){return t.active}));return t||this._submitButtons.first},r.prototype._elementInForm=function(t){return!!t.isSameNode(this._element.nativeElement)||!!t.parentElement&&this._elementInForm(t.parentElement)},r.prototype._completeSubmit=function(e,r){var i=this;e?(this.ngForm.control.markAsPristine(),this.createSnapshot(),this.submitted.emit(r)):this._resetButtons(),this._activeSubmitButton&&(e?this._activeSubmitButton.success():this._activeSubmitButton.error()),this._status$.next(t.FormStatus.Submitted),e?this._status$.next(t.FormStatus.Success):this._status$.next(t.FormStatus.Error),this._status$.next(t.FormStatus.Completing);var n=e?this.successDelay:this.errorDelay;d.of(!0).pipe(f.delay(n),f.first(),f.takeUntil(this._destroy$)).subscribe((function(){"VALID"===i.ngForm.form.status?i._status$.next(t.FormStatus.Valid):i._status$.next(t.FormStatus.Invalid),i._resetButtons(),i._updateDirtySubmitButtons()}))},r.prototype._resetButtons=function(){this._submitButtons.forEach((function(t){t.reset()}))},r.prototype._registerConfirm=function(){var t=this;this.ngForm.form.valueChanges.pipe(f.takeUntil(this._destroy$)).subscribe((function(e){if(t.confirm){var r=Object.keys(t._snapshot);Object.keys(e).forEach((function(i){-1===r.indexOf(i)&&(t._snapshot[i]=e[i])}))}}))},r.prototype._registerDrawerClose=function(){var e=this;this._drawerRef&&this._drawerRef.closeStart$.pipe(f.takeUntil(this._destroy$)).subscribe((function(r){e.submitting?e._status$.pipe(f.filter((function(e){return e===t.FormStatus.Success||e===t.FormStatus.Error})),f.takeUntil(e._destroy$)).subscribe((function(e){e===t.FormStatus.Success?(r.next(),r.complete()):r.error()})):(r.next(),r.complete())}))},r.prototype._registerConfirmDrawerClose=function(){var t=this;this._drawerRef&&this._drawerRef.closeStart$.pipe(f.switchMap((function(e){return d.iif((function(){return t.confirm&&t.confirmDrawer}),t.triggerConfirm().pipe(f.map((function(t){return E(t)})),f.tap((function(t){t&&(e.next(),e.complete())}))),d.defer((function(){e.next(),e.complete()})))})),f.takeUntil(this._destroy$)).subscribe()},r.prototype._registerConfirmTabs=function(){var t=this;this.tabGroup&&this.registerConfirmTabGroup(this.tabGroup),this.registerConfirmTabGroups(this._tabGroups.toArray()),this._tabGroups.changes.pipe(f.takeUntil(this._destroy$)).subscribe((function(){t.registerConfirmTabGroups(t._tabGroups.toArray())}))},r.prototype.registerConfirmTabGroups=function(t){var e=this;t.forEach((function(t){e.registerConfirmTabGroup(t)}))},r.prototype.registerConfirmTabGroup=function(t){var e=this,r=t;r._originalHandleClick||(r._originalHandleClick=t._handleClick,r._handlClick$=new d.Subject,r._handleClick=function(t,e,i){r._handlClick$.observers.length?r._handlClick$.next({tab:t,tabHeader:e,idx:i}):r._originalHandleClick(t,e,i)}),r._handlClick$.pipe(f.takeUntil(this._destroy$)).subscribe((function(t){e.submitting||(e.confirm&&e.confirmTabs?e.triggerConfirm().pipe(f.takeUntil(e._destroy$)).subscribe((function(e){E(e)&&(r.selectedIndex=t.idx)})):r._originalHandleClick(t.tab,t.tabHeader,t.idx))}))},r.prototype._registerConfirmDialogClose=function(){var t=this;this._dialogRef&&(this.formDialogClose.forEach((function(e){t._registerDialogClose(e)})),this.formDialogClose.changes.pipe(f.takeUntil(this._destroy$)).subscribe((function(e){e.forEach((function(e){t._registerDialogClose(e)}))})))},r.prototype._registerConfirmDialogBackdropEscape=function(){var t=this;this._dialogBackdropEscape=this._dialogRef&&!0!==this._dialogRef.disableClose,this._dialogRef&&!this._dialogRef.disableClose&&(this._dialogRef.disableClose=!0,this._dialogRef.backdropClick().pipe(f.takeUntil(this._destroy$)).subscribe((function(){t._formClose()})),this._destroy$.subscribe((function(){t._dialogRef.disableClose=!1})))},r.prototype._registerAutocomplete=function(){var t=this;this._registerControl=this.ngForm.form.registerControl.bind(this.ngForm.form),this.ngForm.form.registerControl=function(e,r){var i=t._element.nativeElement.querySelector("input[name='"+e+"']");return i&&(i.setAttribute("name",e+"_"+p.guid()),i.getAttribute("autocomplete")||i.setAttribute("autocomplete","none")),t._registerControl(e,r)}},r.prototype._registerDirtySubmitButton=function(){var t=this;this.ngForm&&(this.ngForm.form.valueChanges.pipe(f.takeUntil(this._destroy$)).subscribe((function(){t._updateDirtySubmitButtons()})),this._submitButtons.changes.pipe(f.takeUntil(this._destroy$)).subscribe((function(){t._updateDirtySubmitButtons()})))},r.prototype._updateDirtySubmitButtons=function(){var t=this;this._submitButtons.forEach((function(e){t.confirm&&t.dirtySubmitButton&&!t.ngForm.dirty&&e.dirtySubmit?e.disable():e.enable()}))},r.prototype._broadcastSubmittingEvents=function(){this._status$.next(t.FormStatus.Submitting),this._form.broadcast("submit",this.ngForm)},r.prototype._markControlsAsTouchedAndUpdateValidity=function(){Object.values(this.ngForm.controls).forEach((function(t){t.markAsDirty(),t.markAsTouched(),t.updateValueAndValidity()}))},r.prototype._setupActiveSubmitButton=function(){this._activeSubmitButton=this._getActiveButton(),this._resetButtons(),this._activeSubmitButton&&this._activeSubmitButton.process()},r.prototype._waitUntilStatusPending=function(){return this.ngForm.statusChanges.pipe(f.startWith(this.ngForm.status),f.first((function(t){return"PENDING"!==t})))},r.prototype._handleError=function(t){if(console.log("%c Form Submit ","color: white; background-color: #D33F49","Error occured"),console.group("Error Details:"),console.log("Message: ",t),console.log("FormRef: ",this),this.ngForm.invalid){var e=function t(e,r){var n,o=null;return e.invalid&&e.errors&&((n={})[r]=b({},e.errors),o=n),e instanceof i.FormGroup&&Object.entries(e.controls).forEach((function(e){var r=C(e,2),i=r[0],n=t(r[1],i);n&&(o?Object.assign(o,n):o=b({},n))})),o}(this.ngForm.control,null);console.log("Validation Errors: ",e)}console.groupEnd(),this._completeSubmit(!1,null)},r.ctorParameters=function(){return[{type:i.NgForm,decorators:[{type:e.Inject,args:[i.NgForm]}]},{type:I},{type:e.ElementRef},{type:l.FsMessage},{type:u.FsPrompt},{type:e.NgZone},{type:o.MatDialogRef,decorators:[{type:e.Optional},{type:e.Inject,args:[o.MatDialogRef]}]},{type:c.DrawerRef,decorators:[{type:e.Optional},{type:e.Inject,args:[c.DrawerRef]}]}]},_([e.Input(),F("design:type",Object)],r.prototype,"wrapperSelector",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"messageSelector",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"hintSelector",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"labelSelector",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"autocomplete",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"shortcuts",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"confirm",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"confirmDialog",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"confirmDrawer",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"confirmBrowser",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"confirmTabs",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"dirtySubmitButton",void 0),_([e.Input(),F("design:type",Function)],r.prototype,"submit",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"successDelay",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"errorDelay",void 0),_([e.Input(),F("design:type",a.MatTabGroup)],r.prototype,"tabGroup",void 0),_([e.Output("fsForm"),F("design:type",e.EventEmitter)],r.prototype,"submitEvent",void 0),_([e.Output(),F("design:type",e.EventEmitter)],r.prototype,"invalid",void 0),_([e.Output(),F("design:type",e.EventEmitter)],r.prototype,"valid",void 0),_([e.Output(),F("design:type",e.EventEmitter)],r.prototype,"submitted",void 0),_([e.Output(),F("design:type",e.EventEmitter)],r.prototype,"reseted",void 0),_([e.Output(),F("design:type",e.EventEmitter)],r.prototype,"cleared",void 0),_([e.HostBinding("class.fs-form"),F("design:type",Object)],r.prototype,"fsformClass",void 0),_([e.ContentChildren(D,{descendants:!0}),F("design:type",e.QueryList)],r.prototype,"formDialogClose",void 0),_([e.ContentChildren(a.MatTabGroup,{descendants:!0}),F("design:type",e.QueryList)],r.prototype,"_tabGroups",void 0),r=_([e.Directive({selector:"[fsForm]"}),S(0,e.Inject(i.NgForm)),S(6,e.Optional()),S(6,e.Inject(o.MatDialogRef)),S(7,e.Optional()),S(7,e.Inject(c.DrawerRef)),F("design:paramtypes",[i.NgForm,I,e.ElementRef,l.FsMessage,u.FsPrompt,e.NgZone,o.MatDialogRef,c.DrawerRef])],r)}(),R={required:"This field is required",email:"This is not a valid email address",emails:"Input valid email addresses, comma separated",phone:"Invalid phone number",numeric:"Value should be numeric",integer:"Value should be an integer",min:"Value should not be less than $(1)",max:"Value should not be greater than $(1)",minlength:"Should not be shorter than $(1) characters",maxlength:"Should not be longer than $(1) characters",compare:"Inputs do not match",pattern:"Value should match pattern $(1)",dateRange:"Invalid date range",url:"This is not a valid url",urlProtocol:"Invalid URL. Proper http protocol is required. eg. https://google.com",greater:"Value must be greater than $(1)",lesser:"Value must be less than $(1)"},k=new e.InjectionToken("fs.form.validate-messages"),x={provide:k,useFactory:V};function V(){return b({},R)}var B=function(){function t(t,e,r,i,n,o){this.elementRef=t,this.renderer2=e,this.injector=r,this._validateMessages=i,this.ngControl=n,this.formDirective=o,this.appendMessageClass="fs-form-message",this.appendLabelClass="fs-form-label",this.appendErrorClass="fs-form-error",this.appendHintClass="fs-form-hint",this.errors=[],this._destroy$=new d.Subject,n?this._control=n.control:console.error("The element does not have a valid ngModel",this.elementRef.nativeElement)}return Object.defineProperty(t.prototype,"validateMessages",{set:function(t){this._validateMessages=b(b({},this._validateMessages),t)},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){this._setupValidators()},t.prototype.ngOnDestroy=function(){this._destroy$.next(),this._destroy$.complete()},t.prototype.ngAfterContentInit=function(){this._control&&(this._control.statusChangesSubscribe||(this._control.statusChanges.pipe(f.takeUntil(this._destroy$)).subscribe(this.render.bind(this)),this._control.statusChangesSubscribe=!0))},t.prototype.getMessageSelector=function(){return!1===this.messageSelector?"":this.messageSelector?this.messageSelector:this.formDirective&&this.formDirective.messageSelector?this.formDirective.messageSelector:void 0},t.prototype.getHintWrapperSelector=function(){return!1===this.hintSelector?"":this.hintSelector?this.hintSelector:this.formDirective&&this.formDirective.hintSelector?this.formDirective.hintSelector:void 0},t.prototype.getWrapperSelector=function(){return!1===this.wrapperSelector?"":this.wrapperSelector?this.wrapperSelector:this.formDirective&&this.formDirective.wrapperSelector?this.formDirective.wrapperSelector:void 0},t.prototype.getlabelSelector=function(){return!1===this.labelSelector?"":this.labelSelector?this.labelSelector:this.formDirective&&this.formDirective.labelSelector?this.formDirective.labelSelector:void 0},t.prototype.getWrapperElement=function(){var t=this.getWrapper(this.elementRef.nativeElement);return t||this.elementRef.nativeElement},t.prototype.render=function(){var t;if(this.ngControl){var e=this.renderer2,r=this.getWrapperElement(),i=this.ngControl.dirty?this.getError(this.ngControl):null;if(!this.getMessageSelector())return;var n=r.querySelector(this.getMessageSelector());if(!n)return console.warn("Failed to locate "+this.getMessageSelector(),this.elementRef.nativeElement);if(this.getlabelSelector()){var o=r.querySelector(this.getlabelSelector());o&&this.appendLabelClass&&this.renderer2.addClass(o,this.appendLabelClass)}if(this.appendMessageClass&&e.addClass(n,this.appendMessageClass),this.getHintWrapperSelector()){var s=n.querySelector(this.getHintWrapperSelector());s&&(e.setStyle(s,"display",i?"none":"block"),this.appendHintClass&&e.addClass(s,this.appendHintClass))}var a=r.querySelector(".fs-form-error-target");if(a&&a.remove(),r.classList.remove("ng-invalid"),!(this.ngControl.invalid&&(this.ngControl.dirty||(null===(t=this.formDirective.ngForm)||void 0===t?void 0:t.submitted)))||!i)return;r.classList.add("ng-invalid"),a=e.createElement("div"),e.addClass(a,"fs-form-error-target"),e.addClass(a,this.appendErrorClass),e.addClass(a,this.appendErrorClass+"-"+i.name);var l=e.createText(i.message);e.appendChild(a,l),n.appendChild(a)}},t.prototype.getWrapper=function(t,e){return void 0===e&&(e=0),!t||e>10?null:t.parentNode&&t.parentNode.querySelector(this.getWrapperSelector())?t:this.getWrapper(t.parentNode,++e)},t.prototype.parseErrorMessage=function(t,e){return m.values(e).forEach((function(e){t=t.replace(/\$\(\d\)/,e)})),t},t.prototype.getError=function(t){var e=m.keys(t.control.errors)[0];if(!e)return null;var r=t.control.errors[e];return this._validateMessages[e]&&(r=this.parseErrorMessage(this._validateMessages[e],r)),{name:e,message:r}},t.prototype._setupValidators=function(){var t=this._control;if(this.validate){var e=t.validator?[t.validator,this.validate.bind(this)]:this.validate.bind(this);t.setValidators(e)}if(this.validateAsync){var r=t.asyncValidator?[t.asyncValidator,this.validateAsync.bind(this)]:this.validateAsync.bind(this);t.setAsyncValidators(r)}t.updateValueAndValidity()},t.ctorParameters=function(){return[{type:e.ElementRef},{type:e.Renderer2},{type:e.Injector},{type:void 0,decorators:[{type:e.Self},{type:e.Inject,args:[k]}]},{type:i.NgControl,decorators:[{type:e.Optional}]},{type:w,decorators:[{type:e.Optional},{type:e.Inject,args:[w]}]}]},_([e.Input(),F("design:type",Object)],t.prototype,"wrapperSelector",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"messageSelector",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"hintSelector",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"labelSelector",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"appendMessageClass",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"appendLabelClass",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"appendErrorClass",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"appendHintClass",void 0),_([e.Input(),F("design:type",Object),F("design:paramtypes",[Object])],t.prototype,"validateMessages",null),t=_([e.Directive({selector:"[fsFormControl]",providers:[x]}),S(3,e.Self()),S(3,e.Inject(k)),S(4,e.Optional()),S(5,e.Optional()),S(5,e.Inject(w)),F("design:paramtypes",[e.ElementRef,e.Renderer2,e.Injector,Object,i.NgControl,w])],t)}();function P(t){return"false"!==t&&(t||""===t)}var $=function(t){function r(){var e=null!==t&&t.apply(this,arguments)||this;return e.required=!1,e}return y(r,t),Object.defineProperty(r.prototype,"setFsFormRequired",{set:function(t){this.required=P(t)},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"setRequired",{set:function(t){this.required=P(t)},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.required=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return this.required?i.Validators.required(this._control):null},r.prototype.render=function(){var e=this.getWrapperElement();if(e&&this.getlabelSelector()){var r=e.querySelector(this.getlabelSelector());r&&(this.required?this.renderer2.addClass(r,"fs-form-label-required"):this.renderer2.removeClass(r,"fs-form-label-required"))}t.prototype.render.call(this)},_([e.Input("fsFormRequired"),F("design:type",Object),F("design:paramtypes",[Object])],r.prototype,"setFsFormRequired",null),_([e.Input("required"),F("design:type",Object),F("design:paramtypes",[Object])],r.prototype,"setRequired",null),_([e.Input("fsFormRequiredMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormRequired],[ngModel][required]",providers:[x]})],r)}(B),A=function(){function t(){}return t.email=function(t){return!t.value||p.email(t.value)?null:{email:!0}},t.emails=function(t){return(t.value||"").split(",").some((function(t){return!p.email(t)}))?{email:!0}:null},t.numeric=function(t){return p.isEmpty(t.value)||p.isNumeric(t.value)?null:{numeric:!0}},t.integer=function(t){return t.value&&""!==String(t.value)&&t.value%1!=0?{integer:!0}:null},t.phone=function(t){return!t.value||p.phone(t.value)?null:{phone:!0}},t.url=function(t,e){if(void 0===e&&(e=!1),!t.value)return null;if(!p.url(t.value))return{url:!0};if(e){var r=new RegExp(/^http(s)?:\/\//gm);if(!String(t.value).match(r))return{urlProtocol:!0}}return null},t.dateRange=function(t){if(!t.value)return null;if(m.isObject(t.value)){var e=t.value.start,r=t.value.end;if(!e&&!r||h.isValid(e)&&h.isValid(r))return null}return{dateRange:!0}},t.func=function(t,e,r){var i,n;try{i=e(t,r)}catch(t){t=t instanceof Error?t.message:t,n=d.throwError(t)}return n||(n=i instanceof Promise?d.from(i):d.isObservable(i)?i:d.of(null)),n.pipe(f.map((function(){return null})),f.catchError((function(t){return d.of({validationError:t})})),f.take(1))},t}(),q=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.min=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return A.numeric(this._control)||i.Validators.min(parseFloat(this.fsFormMin))(this._control)},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormMin",void 0),_([e.Input("fsFormMinMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormMin]",providers:[x]})],r)}(B),L=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.max=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return A.numeric(this._control)||i.Validators.max(this.fsFormMax)(this._control)},_([e.Input(),F("design:type",Number)],r.prototype,"fsFormMax",void 0),_([e.Input("fsFormMaxMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormMax]",providers:[x]})],r)}(B),U=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.minlength=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return i.Validators.minLength(this.fsFormMinLength)(this._control)},_([e.Input(),F("design:type",Number)],r.prototype,"fsFormMinLength",void 0),_([e.Input("fsFormMinLengthMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormMinLength]",providers:[x]})],r)}(B),N=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.maxlength=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return i.Validators.maxLength(this.fsFormMaxLength)(this._control)},_([e.Input(),F("design:type",Number)],r.prototype,"fsFormMaxLength",void 0),_([e.Input("fsFormMaxLengthMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormMaxLength]",providers:[x]})],r)}(B),T=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.email=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormEmail)?A.email(this._control):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormEmail",void 0),_([e.Input("fsFormEmailMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormEmail]",providers:[x]})],r)}(B),G=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.emails=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormEmails)?A.emails(this._control):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormEmails",void 0),_([e.Input("fsFormEmailsMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormEmails]",providers:[x]})],r)}(B),H=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.phone=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormPhone)?A.phone(this._control):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormPhone",void 0),_([e.Input("fsFormPhoneMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormPhone]",providers:[x]})],r)}(B),W=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.compare=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return this.fsFormCompare.value===this.elementRef.nativeElement.value?null:{compare:!0}},r.prototype.ngAfterViewInit=function(){var t=this;this.fsFormCompare.addEventListener("keyup",(function(){t._control.updateValueAndValidity()}),!1)},r.prototype.ngOnDestroy=function(){var t=this;this.fsFormCompare.removeEventListener("keyup",(function(){t._control.updateValueAndValidity()}),!1)},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormCompare",void 0),_([e.Input("fsFormCompareMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormCompare]",providers:[x]})],r)}(B),z=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.integer=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormInteger)?A.integer(this._control):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormInteger",void 0),_([e.Input("fsFormIntegerMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormInteger]",providers:[x]})],r)}(B),K=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.numeric=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormNumeric)?A.numeric(this._control):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormNumeric",void 0),_([e.Input("fsFormNumericMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormNumeric]",providers:[x]})],r)}(B),Z=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.pattern=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return i.Validators.pattern(this.fsFormPattern)(this._control)},_([e.Input(),F("design:type",RegExp)],r.prototype,"fsFormPattern",void 0),_([e.Input("fsFormPatternMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormPattern]",providers:[x]})],r)}(B),Q=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validateAsync=function(t){return A.func(this._control,this.fsFormFunction,this.fsFormFunctionData)},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormFunction",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"fsFormFunctionData",void 0),r=_([e.Directive({selector:"[fsFormFunction]",providers:[x]})],r)}(B),Y=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.greater=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){var e=parseFloat(this.fsFormGreater),r=parseFloat(this._control.value);return!isNaN(e)&&!isNaN(r)&&r<=e?{greater:{greater:e,actual:r}}:A.numeric(this._control)},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormGreater",void 0),_([e.Input("fsFormGreaterMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormGreater]",providers:[x]})],r)}(B),J=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.dateRange=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormDateRange)?A.dateRange(this._control):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormDateRange",void 0),_([e.Input("fsFormDateRangeMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormDateRange]",providers:[x]})],r)}(B),X=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.lesser=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){var e=parseFloat(this.fsFormLesser),r=parseFloat(this._control.value);return!isNaN(e)&&!isNaN(r)&&r>=e?{lesser:{lesser:e,actual:r}}:A.numeric(this._control)},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormLesser",void 0),_([e.Input("fsFormLesserMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormLesser]",providers:[x]})],r)}(B),tt=function(t){function r(){var e=null!==t&&t.apply(this,arguments)||this;return e.fsFormUrlProtocol=!1,e}return y(r,t),Object.defineProperty(r.prototype,"validationMessage",{set:function(t){this._validateMessages.url=t},enumerable:!0,configurable:!0}),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validate=function(t){return P(this.fsFormUrl)?A.url(this._control,this.fsFormUrlProtocol):null},_([e.Input(),F("design:type",Object)],r.prototype,"fsFormUrl",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"fsFormUrlProtocol",void 0),_([e.Input("fsFormUrlMessage"),F("design:type",String),F("design:paramtypes",[String])],r.prototype,"validationMessage",null),r=_([e.Directive({selector:"[fsFormUrl]",providers:[x]})],r)}(B),et=function(){function t(t,e,r,i){this._matButton=t,this._form=e,this._elementRef=r,this._cdRef=i,this.dirtySubmit=!0,this.transitionStyle=null,this.active=!1,this._destroy$=new d.Subject}return t.prototype.ngOnInit=function(){var t=this;this._form&&(this._form.addSubmitButton(this),d.fromEvent(this.element,"click").pipe(f.takeUntil(this._destroy$)).subscribe((function(){t.active=!0})),this.dirtySubmit&&this._form.dirtySubmitButton&&(this._form.ngForm.dirty||this.disable()),this.transitionStyle="none",setTimeout((function(){t.transitionStyle=null}),500))},t.prototype.disable=function(){this._matButton&&(this._matButton.disabled=!0,this._cdRef.markForCheck())},t.prototype.enable=function(){this._matButton&&(this._matButton.disabled=!1,this._matButton.disableRipple=!0,this._cdRef.markForCheck())},t.prototype.process=function(){this.setClass("process"),this._matButton.disableRipple=!0},t.prototype.success=function(){this.setClass("success"),this._matButton.disableRipple=!1},t.prototype.error=function(){this.setClass("error"),this._matButton.disableRipple=!1},t.prototype.setClass=function(t){var e=this._getSvg(t);this._resetClass(),this._disableShadowAnimation(),this.element.classList.add("submit-"+t),this.element.append(e)},Object.defineProperty(t.prototype,"element",{get:function(){return this._elementRef.nativeElement},enumerable:!0,configurable:!0}),t.prototype.reset=function(){this.active=!1,this.enable(),this.element.querySelectorAll(".svg-icon").forEach((function(t){t.remove()})),this._matButton.disableRipple=!1,this._resetClass()},t.prototype.ngOnDestroy=function(){this._destroy$.next(),this._destroy$.complete(),this._form.removeSubmitButton(this)},t.prototype._disableShadowAnimation=function(){},t.prototype._resetClass=function(){this.element.classList.remove("submit-success","submit-error","submit-process","mat-elevation-z2")},t.prototype._getSvg=function(t){return"success"===t?(new DOMParser).parseFromString('<svg class="svg-icon svg-icon-success" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" x="0px" y="0px" viewBox="0 0 38 38" style="enable-background:new 0 0 38 38;" xml:space="preserve" width="38px" height="38px">\n <g>\n <g class="check">\n <g>\n <path d="M29.6,11.9c-0.5-0.5-1.3-0.5-1.8,0L16.3,23.4l-6.1-6.1c-0.5-0.5-1.3-0.5-1.8,0s-0.5,1.3,0,1.8l7,7c0.3,0.3,0.6,0.4,0.9,0.4s0.7-0.1,0.9-0.4l12.4-12.4C30.1,13.2,30.1,12.4,29.6,11.9z"/>\n </g>\n </g>\n </g>\n </svg>',"text/xml").firstChild:"process"===t?(new DOMParser).parseFromString('<svg class="svg-icon svg-icon-process" width="38" height="38" viewBox="0 0 38 38" xmlns="http://www.w3.org/2000/svg">\n <g fill="none" fill-rule="evenodd">\n <g transform="translate(1 1)" stroke-width="2"><circle stroke-opacity=".5" cx="18" cy="18" r="18"/>\n <path d="M36 18c0-9.94-8.06-18-18-18"><animateTransform attributeName="transform" type="rotate" from="0 18 18" to="360 18 18" dur=".7s" repeatCount="indefinite"/></path>\n </g>\n </g>\n </svg>',"text/xml").firstChild:"error"===t?(new DOMParser).parseFromString('<svg class="svg-icon svg-icon-error" xmlns="http://www.w3.org/2000/svg" width="38px" height="38px" viewBox="0 0 16 16"><g><path d="M8 1c3.9 0 7 3.1 7 7s-3.1 7-7 7-7-3.1-7-7 3.1-7 7-7zM8 0c-4.4 0-8 3.6-8 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8v0z" data-original="#444444" data-old_color="#444444"/><path d="M12.2 10.8l-2.8-2.8 2.8-2.8-1.4-1.4-2.8 2.8-2.8-2.8-1.4 1.4 2.8 2.8-2.8 2.8 1.4 1.4 2.8-2.8 2.8 2.8z"/></g> </svg>',"text/xml").firstChild:void 0},t.ctorParameters=function(){return[{type:n.MatButton,decorators:[{type:e.Optional},{type:e.Host}]},{type:w,decorators:[{type:e.Optional}]},{type:e.ElementRef},{type:e.ChangeDetectorRef}]},_([e.Input(),F("design:type",Object)],t.prototype,"name",void 0),_([e.Input(),F("design:type",Object)],t.prototype,"dirtySubmit",void 0),_([e.HostBinding("style.transition"),F("design:type",Object)],t.prototype,"transitionStyle",void 0),t=_([e.Directive({selector:'button[type="submit"]'}),S(0,e.Optional()),S(0,e.Host()),S(1,e.Optional()),F("design:paramtypes",[n.MatButton,w,e.ElementRef,e.ChangeDetectorRef])],t)}(),rt=function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return y(r,t),r.prototype.ngOnChanges=function(){this._control.updateValueAndValidity()},r.prototype.validateAsync=function(t){return A.func(this._control,this.validateFn,this.validateFnData)},_([e.Input("validate"),F("design:type",Object)],r.prototype,"validateFn",void 0),_([e.Input("validateData"),F("design:type",Object)],r.prototype,"validateFnData",void 0),r=_([e.Directive({selector:"[validate]",providers:[x]})],r)}(B),it=function(){function r(t,e,r){this._form=t,this._dialogRef=e,this._cdRef=r,this.save=!0,this.create=!1,this.close=!1,this.dirty=!1,this._destroy$=new d.Subject}return r.prototype.ngOnInit=function(){var t=this;this._form&&(this._form.ngForm.valueChanges.pipe(f.filter((function(){return!t.dirty})),f.takeUntil(this._destroy$)).subscribe((function(){t.dirty=t._form.ngForm.dirty,t._cdRef.markForCheck()})),this._form.submitted.pipe(f.delay(50),f.takeUntil(this._destroy$)).subscribe((function(){t.dirty=!1,t._cdRef.markForCheck()})),this._form.reseted.pipe(f.takeUntil(this._destroy$)).subscribe((function(){t.dirty=!1,t._cdRef.markForCheck()})))},r.prototype.closeClick=function(){var e=this;this._form?this._form.triggerConfirm().pipe(f.filter((function(e){return e!==t.ConfirmResult.Review})),f.takeUntil(this._destroy$)).subscribe((function(){e._dialogRef.close(null)})):this._dialogRef.close(null)},r.prototype.ngOnDestroy=function(){this._destroy$.next(),this._destroy$.complete()},r.ctorParameters=function(){return[{type:w,decorators:[{type:e.Optional}]},{type:o.MatDialogRef,decorators:[{type:e.Optional}]},{type:e.ChangeDetectorRef}]},_([e.Input(),F("design:type",Object)],r.prototype,"save",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"create",void 0),_([e.Input(),F("design:type",Object)],r.prototype,"close",void 0),_([e.Input(),F("design:type",String)],r.prototype,"name",void 0),r=_([e.Component({selector:"fs-form-dialog-actions",template:'<div class="buttons">\r\n <ng-container *ngIf="save">\r\n <button \r\n mat-button \r\n type="submit"\r\n color="primary" \r\n [name]="name">\r\n {{create ? \'Create\' : \'Save\'}}\r\n </button>\r\n <button \r\n mat-button \r\n type="button"\r\n [disabled]="close && !dirty && !create"\r\n [matDialogClose]="null">\r\n Cancel\r\n </button>\r\n </ng-container>\r\n\r\n <ng-content></ng-content>\r\n <div class="close" *ngIf="close">\r\n <button \r\n mat-button \r\n type="button"\r\n [color]="dirty ? \'basic\' : \'primary\'"\r\n (click)="closeClick()">\r\n Close\r\n </button>\r\n </div>\r\n</div>',changeDetection:e.ChangeDetectionStrategy.OnPush,styles:[".buttons{display:flex;flex-grow:1;align-items:center}.buttons .close{display:flex;flex-grow:1;justify-content:flex-end}:host{display:flex;flex-grow:1}@media only screen and (max-width:599px){.buttons{flex-direction:column}}"]}),S(0,e.Optional()),S(1,e.Optional()),F("design:paramtypes",[w,o.MatDialogRef,e.ChangeDetectorRef])],r)}(),nt=function(){function t(){}var a;return a=t,t.forRoot=function(){return{ngModule:a}},t=a=_([e.NgModule({imports:[r.CommonModule,i.FormsModule,n.MatButtonModule,o.MatDialogModule],declarations:[w,B,$,q,L,U,N,T,G,H,W,z,K,Z,Q,J,Y,X,tt,D,et,rt,it],exports:[w,B,$,q,L,U,N,T,G,H,W,z,K,Z,Q,J,Y,X,tt,D,et,rt,it],providers:[{provide:s.ErrorStateMatcher,useClass:s.ShowOnDirtyErrorStateMatcher}]})],t)}(),ot=function(){function t(t){this._prompt=t}return t.prototype.canDeactivate=function(t){if(!("getForm"in t)){var e="Directive "+t.constructor.name+" does not property implement interface FormDeactivate";return console.error(e),d.of(!0)}var r=t.getForm();if(!(r instanceof w)){e="Directive "+t.constructor.name+".getForm() does not return a valid FsFormDirective";return console.error(e),d.of(!0)}return M(r,this._prompt).pipe(f.map((function(t){return E(t)})))},t.ctorParameters=function(){return[{type:u.FsPrompt}]},t.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(u.FsPrompt))},token:t,providedIn:"root"}),t=_([e.Injectable({providedIn:"root"}),F("design:paramtypes",[u.FsPrompt])],t)}();t.FormDeactivateGuard=ot,t.FsForm=I,t.FsFormDialogActionsComponent=it,t.FsFormDirective=w,t.FsFormModule=nt,t.FsValidators=A,t.ɵa=D,t.ɵb=B,t.ɵc=k,t.ɵd=x,t.ɵe=V,t.ɵf=$,t.ɵg=q,t.ɵh=L,t.ɵi=U,t.ɵj=N,t.ɵk=T,t.ɵl=G,t.ɵm=H,t.ɵn=W,t.ɵo=z,t.ɵp=K,t.ɵq=Z,t.ɵr=Q,t.ɵs=J,t.ɵt=Y,t.ɵu=X,t.ɵv=tt,t.ɵw=et,t.ɵx=rt,Object.defineProperty(t,"__esModule",{value:!0})}));
16
- //# sourceMappingURL=firestitch-form.umd.min.js.map