ngx-firebase 1.1.13 → 22.0.1

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 (274) hide show
  1. package/README.md +121 -13
  2. package/fesm2022/ngx-firebase.mjs +158 -0
  3. package/fesm2022/ngx-firebase.mjs.map +1 -0
  4. package/package.json +39 -30
  5. package/types/ngx-firebase.d.ts +55 -0
  6. package/bundles/ngx-firebase-capacitor.umd.js +0 -763
  7. package/bundles/ngx-firebase-capacitor.umd.js.map +0 -1
  8. package/bundles/ngx-firebase-capacitor.umd.min.js +0 -16
  9. package/bundles/ngx-firebase-capacitor.umd.min.js.map +0 -1
  10. package/bundles/ngx-firebase-iap.umd.js +0 -718
  11. package/bundles/ngx-firebase-iap.umd.js.map +0 -1
  12. package/bundles/ngx-firebase-iap.umd.min.js +0 -2
  13. package/bundles/ngx-firebase-iap.umd.min.js.map +0 -1
  14. package/bundles/ngx-firebase-ionic-auth-ui.umd.js +0 -2116
  15. package/bundles/ngx-firebase-ionic-auth-ui.umd.js.map +0 -1
  16. package/bundles/ngx-firebase-ionic-auth-ui.umd.min.js +0 -16
  17. package/bundles/ngx-firebase-ionic-auth-ui.umd.min.js.map +0 -1
  18. package/bundles/ngx-firebase-ionic.umd.js +0 -979
  19. package/bundles/ngx-firebase-ionic.umd.js.map +0 -1
  20. package/bundles/ngx-firebase-ionic.umd.min.js +0 -16
  21. package/bundles/ngx-firebase-ionic.umd.min.js.map +0 -1
  22. package/bundles/ngx-firebase-testing.umd.js +0 -801
  23. package/bundles/ngx-firebase-testing.umd.js.map +0 -1
  24. package/bundles/ngx-firebase-testing.umd.min.js +0 -2
  25. package/bundles/ngx-firebase-testing.umd.min.js.map +0 -1
  26. package/bundles/ngx-firebase.umd.js +0 -2299
  27. package/bundles/ngx-firebase.umd.js.map +0 -1
  28. package/bundles/ngx-firebase.umd.min.js +0 -2
  29. package/bundles/ngx-firebase.umd.min.js.map +0 -1
  30. package/capacitor/capacitor.module.d.ts +0 -9
  31. package/capacitor/interfaces/config.d.ts +0 -12
  32. package/capacitor/interfaces/index.d.ts +0 -1
  33. package/capacitor/ngx-firebase-capacitor.d.ts +0 -5
  34. package/capacitor/ngx-firebase-capacitor.metadata.json +0 -1
  35. package/capacitor/package.json +0 -25
  36. package/capacitor/public-api.d.ts +0 -3
  37. package/capacitor/services/analytics-firebase-capacitor.service.d.ts +0 -9
  38. package/capacitor/services/crashlytics-firebase-capacitor.service.d.ts +0 -8
  39. package/capacitor/services/credential-factory-capacitor.service.d.ts +0 -18
  40. package/capacitor/services/index.d.ts +0 -3
  41. package/esm2015/capacitor/capacitor.module.js +0 -78
  42. package/esm2015/capacitor/interfaces/config.js +0 -3
  43. package/esm2015/capacitor/interfaces/index.js +0 -2
  44. package/esm2015/capacitor/ngx-firebase-capacitor.js +0 -6
  45. package/esm2015/capacitor/public-api.js +0 -4
  46. package/esm2015/capacitor/services/analytics-firebase-capacitor.service.js +0 -43
  47. package/esm2015/capacitor/services/crashlytics-firebase-capacitor.service.js +0 -40
  48. package/esm2015/capacitor/services/credential-factory-capacitor.service.js +0 -182
  49. package/esm2015/capacitor/services/index.js +0 -4
  50. package/esm2015/iap/iap.module.js +0 -32
  51. package/esm2015/iap/interfaces/index.js +0 -5
  52. package/esm2015/iap/ngx-firebase-iap.js +0 -5
  53. package/esm2015/iap/public-api.js +0 -5
  54. package/esm2015/iap/services/iap.service.js +0 -317
  55. package/esm2015/iap/tokens/index.js +0 -4
  56. package/esm2015/ionic/animations/index.js +0 -30
  57. package/esm2015/ionic/components/avatar/avatar.component.js +0 -98
  58. package/esm2015/ionic/components/avatar/index.js +0 -2
  59. package/esm2015/ionic/components/index.js +0 -3
  60. package/esm2015/ionic/components/popover-menu/index.js +0 -3
  61. package/esm2015/ionic/components/popover-menu/interface.js +0 -2
  62. package/esm2015/ionic/components/popover-menu/popover-menu.component.js +0 -34
  63. package/esm2015/ionic/ionic.module.js +0 -46
  64. package/esm2015/ionic/ngx-firebase-ionic.js +0 -5
  65. package/esm2015/ionic/public-api.js +0 -5
  66. package/esm2015/ionic/services/alerts-ionic.service.js +0 -107
  67. package/esm2015/ionic/services/index.js +0 -6
  68. package/esm2015/ionic/services/legality-dialog-ionic.service.js +0 -85
  69. package/esm2015/ionic/services/loading-ionic.service.js +0 -46
  70. package/esm2015/ionic/services/picker-ionic.service.js +0 -44
  71. package/esm2015/ionic/services/toast-ionic.service.js +0 -49
  72. package/esm2015/ionic-auth-ui/animations/index.js +0 -30
  73. package/esm2015/ionic-auth-ui/components/email-confirmation/email-confirmation.component.js +0 -99
  74. package/esm2015/ionic-auth-ui/components/email-field/email-field.component.js +0 -25
  75. package/esm2015/ionic-auth-ui/components/form-field/form-field.component.js +0 -82
  76. package/esm2015/ionic-auth-ui/components/index.js +0 -12
  77. package/esm2015/ionic-auth-ui/components/name-field/name-field.component.js +0 -30
  78. package/esm2015/ionic-auth-ui/components/or-divider/or-divider.component.js +0 -11
  79. package/esm2015/ionic-auth-ui/components/password-field/password-field.component.js +0 -138
  80. package/esm2015/ionic-auth-ui/components/password-field/passwordValidatorFunctions.js +0 -62
  81. package/esm2015/ionic-auth-ui/components/providers/providers.component.js +0 -70
  82. package/esm2015/ionic-auth-ui/components/reauthenticate/reauthenticate.component.js +0 -99
  83. package/esm2015/ionic-auth-ui/components/register/register.component.js +0 -142
  84. package/esm2015/ionic-auth-ui/components/register-with-email/register-with-email.component.js +0 -60
  85. package/esm2015/ionic-auth-ui/components/register-with-email-popover/register-with-email-popover.component.js +0 -26
  86. package/esm2015/ionic-auth-ui/components/signin/signin.component.js +0 -92
  87. package/esm2015/ionic-auth-ui/components/terms-field/terms-field.component.js +0 -99
  88. package/esm2015/ionic-auth-ui/components/user/user.component.js +0 -195
  89. package/esm2015/ionic-auth-ui/ionic-auth-ui.module.js +0 -92
  90. package/esm2015/ionic-auth-ui/ngx-firebase-ionic-auth-ui.js +0 -23
  91. package/esm2015/ionic-auth-ui/pages/index.js +0 -5
  92. package/esm2015/ionic-auth-ui/pages/register/index.js +0 -2
  93. package/esm2015/ionic-auth-ui/pages/register/register.page.js +0 -56
  94. package/esm2015/ionic-auth-ui/pages/signin/index.js +0 -2
  95. package/esm2015/ionic-auth-ui/pages/signin/signin.page.js +0 -78
  96. package/esm2015/ionic-auth-ui/pages/user/index.js +0 -2
  97. package/esm2015/ionic-auth-ui/pages/user/user.page.js +0 -11
  98. package/esm2015/ionic-auth-ui/pages/verifyemail/index.js +0 -2
  99. package/esm2015/ionic-auth-ui/pages/verifyemail/verifyemail.page.js +0 -85
  100. package/esm2015/ionic-auth-ui/public-api.js +0 -5
  101. package/esm2015/ngx-firebase.js +0 -6
  102. package/esm2015/public-api.js +0 -6
  103. package/esm2015/shared/guards/index.js +0 -3
  104. package/esm2015/shared/guards/logged-in.guard.js +0 -60
  105. package/esm2015/shared/guards/verify-email.guard.js +0 -41
  106. package/esm2015/shared/interfaces/accounts.enum.js +0 -9
  107. package/esm2015/shared/interfaces/authprovider.enum.js +0 -15
  108. package/esm2015/shared/interfaces/config.interface.js +0 -61
  109. package/esm2015/shared/interfaces/index.js +0 -8
  110. package/esm2015/shared/interfaces/main.interface.js +0 -7
  111. package/esm2015/shared/interfaces/providers.interface.js +0 -2
  112. package/esm2015/shared/interfaces/tokens.js +0 -19
  113. package/esm2015/shared/interfaces/ui-providers.interface.js +0 -2
  114. package/esm2015/shared/services/analytics.service.js +0 -24
  115. package/esm2015/shared/services/auth-process.service.js +0 -779
  116. package/esm2015/shared/services/crashlytics.service.js +0 -42
  117. package/esm2015/shared/services/device-info.service.js +0 -14
  118. package/esm2015/shared/services/firebase.service.js +0 -37
  119. package/esm2015/shared/services/firestore-sync.service.js +0 -60
  120. package/esm2015/shared/services/index.js +0 -10
  121. package/esm2015/shared/services/performance.service.js +0 -28
  122. package/esm2015/shared/services/remoteconfig.service.js +0 -49
  123. package/esm2015/shared/services/ui.service.js +0 -45
  124. package/esm2015/shared/shared.module.js +0 -175
  125. package/esm2015/shared/types/DisplayWidth.js +0 -9
  126. package/esm2015/shared/types/Location.js +0 -2
  127. package/esm2015/shared/types/ValueAccessorControlComponent.js +0 -85
  128. package/esm2015/shared/types/ValueAccessorValueComponent.js +0 -40
  129. package/esm2015/shared/types/index.js +0 -5
  130. package/esm2015/testing/fakeavatar.module.js +0 -22
  131. package/esm2015/testing/fakes/FakeAuthProcessService.js +0 -31
  132. package/esm2015/testing/fakes/FakeAvatarComponent.js +0 -13
  133. package/esm2015/testing/fakes/FakeFireService.js +0 -21
  134. package/esm2015/testing/fakes/FakeFirestoreSyncService.js +0 -11
  135. package/esm2015/testing/fakes/FakeIAPurchaseService.js +0 -11
  136. package/esm2015/testing/fakes/FakePickerService.js +0 -9
  137. package/esm2015/testing/fakes/FakeRemoteConfigService.js +0 -44
  138. package/esm2015/testing/fakes/FakeTranslateService.js +0 -21
  139. package/esm2015/testing/fakes/FakeUiService.js +0 -26
  140. package/esm2015/testing/fakes/angular-fire/FakeAngularFireAuth.js +0 -30
  141. package/esm2015/testing/fakes/angular-fire/FakeAngularFireFunctions.js +0 -17
  142. package/esm2015/testing/fakes/angular-fire/FakeAngularFirePerformance.js +0 -17
  143. package/esm2015/testing/fakes/angular-fire/FakeAngularFireStorage.js +0 -8
  144. package/esm2015/testing/fakes/angular-fire/FakeAngularFirestore.js +0 -8
  145. package/esm2015/testing/fakes/angular-fire/FakeUserCredential.js +0 -18
  146. package/esm2015/testing/fakes/index.js +0 -19
  147. package/esm2015/testing/ngx-firebase-testing.js +0 -6
  148. package/esm2015/testing/public-api.js +0 -5
  149. package/esm2015/testing/test.module.js +0 -66
  150. package/esm2015/testing/utils/index.js +0 -17
  151. package/esm2015/testing/utils/patchConsole.js +0 -14
  152. package/fesm2015/ngx-firebase-capacitor.js +0 -328
  153. package/fesm2015/ngx-firebase-capacitor.js.map +0 -1
  154. package/fesm2015/ngx-firebase-iap.js +0 -354
  155. package/fesm2015/ngx-firebase-iap.js.map +0 -1
  156. package/fesm2015/ngx-firebase-ionic-auth-ui.js +0 -1482
  157. package/fesm2015/ngx-firebase-ionic-auth-ui.js.map +0 -1
  158. package/fesm2015/ngx-firebase-ionic.js +0 -495
  159. package/fesm2015/ngx-firebase-ionic.js.map +0 -1
  160. package/fesm2015/ngx-firebase-testing.js +0 -388
  161. package/fesm2015/ngx-firebase-testing.js.map +0 -1
  162. package/fesm2015/ngx-firebase.js +0 -1509
  163. package/fesm2015/ngx-firebase.js.map +0 -1
  164. package/iap/iap.module.d.ts +0 -5
  165. package/iap/interfaces/index.d.ts +0 -11
  166. package/iap/ngx-firebase-iap.d.ts +0 -4
  167. package/iap/ngx-firebase-iap.metadata.json +0 -1
  168. package/iap/package.json +0 -23
  169. package/iap/public-api.d.ts +0 -4
  170. package/iap/services/iap.service.d.ts +0 -47
  171. package/iap/tokens/index.d.ts +0 -3
  172. package/ionic/animations/index.d.ts +0 -1
  173. package/ionic/components/avatar/avatar.component.d.ts +0 -27
  174. package/ionic/components/avatar/index.d.ts +0 -1
  175. package/ionic/components/index.d.ts +0 -2
  176. package/ionic/components/popover-menu/index.d.ts +0 -2
  177. package/ionic/components/popover-menu/interface.d.ts +0 -6
  178. package/ionic/components/popover-menu/popover-menu.component.d.ts +0 -10
  179. package/ionic/ionic.module.d.ts +0 -2
  180. package/ionic/ngx-firebase-ionic.d.ts +0 -4
  181. package/ionic/ngx-firebase-ionic.metadata.json +0 -1
  182. package/ionic/package.json +0 -30
  183. package/ionic/public-api.d.ts +0 -4
  184. package/ionic/services/alerts-ionic.service.d.ts +0 -13
  185. package/ionic/services/index.d.ts +0 -5
  186. package/ionic/services/legality-dialog-ionic.service.d.ts +0 -10
  187. package/ionic/services/loading-ionic.service.d.ts +0 -17
  188. package/ionic/services/picker-ionic.service.d.ts +0 -9
  189. package/ionic/services/toast-ionic.service.d.ts +0 -11
  190. package/ionic-auth-ui/animations/index.d.ts +0 -1
  191. package/ionic-auth-ui/components/email-confirmation/email-confirmation.component.d.ts +0 -31
  192. package/ionic-auth-ui/components/email-field/email-field.component.d.ts +0 -7
  193. package/ionic-auth-ui/components/form-field/form-field.component.d.ts +0 -28
  194. package/ionic-auth-ui/components/index.d.ts +0 -11
  195. package/ionic-auth-ui/components/name-field/name-field.component.d.ts +0 -8
  196. package/ionic-auth-ui/components/or-divider/or-divider.component.d.ts +0 -2
  197. package/ionic-auth-ui/components/password-field/password-field.component.d.ts +0 -34
  198. package/ionic-auth-ui/components/password-field/passwordValidatorFunctions.d.ts +0 -4
  199. package/ionic-auth-ui/components/providers/providers.component.d.ts +0 -26
  200. package/ionic-auth-ui/components/reauthenticate/reauthenticate.component.d.ts +0 -30
  201. package/ionic-auth-ui/components/register/register.component.d.ts +0 -26
  202. package/ionic-auth-ui/components/register-with-email/register-with-email.component.d.ts +0 -24
  203. package/ionic-auth-ui/components/register-with-email-popover/register-with-email-popover.component.d.ts +0 -7
  204. package/ionic-auth-ui/components/signin/signin.component.d.ts +0 -28
  205. package/ionic-auth-ui/components/terms-field/terms-field.component.d.ts +0 -27
  206. package/ionic-auth-ui/components/user/user.component.d.ts +0 -45
  207. package/ionic-auth-ui/ionic-auth-ui.module.d.ts +0 -32
  208. package/ionic-auth-ui/ngx-firebase-ionic-auth-ui.d.ts +0 -22
  209. package/ionic-auth-ui/ngx-firebase-ionic-auth-ui.metadata.json +0 -1
  210. package/ionic-auth-ui/package.json +0 -30
  211. package/ionic-auth-ui/pages/index.d.ts +0 -4
  212. package/ionic-auth-ui/pages/register/index.d.ts +0 -1
  213. package/ionic-auth-ui/pages/register/register.page.d.ts +0 -16
  214. package/ionic-auth-ui/pages/signin/index.d.ts +0 -1
  215. package/ionic-auth-ui/pages/signin/signin.page.d.ts +0 -22
  216. package/ionic-auth-ui/pages/user/index.d.ts +0 -1
  217. package/ionic-auth-ui/pages/user/user.page.d.ts +0 -3
  218. package/ionic-auth-ui/pages/verifyemail/index.d.ts +0 -1
  219. package/ionic-auth-ui/pages/verifyemail/verifyemail.page.d.ts +0 -19
  220. package/ionic-auth-ui/public-api.d.ts +0 -4
  221. package/ngx-firebase.d.ts +0 -5
  222. package/ngx-firebase.metadata.json +0 -1
  223. package/public-api.d.ts +0 -5
  224. package/shared/guards/index.d.ts +0 -2
  225. package/shared/guards/logged-in.guard.d.ts +0 -13
  226. package/shared/guards/verify-email.guard.d.ts +0 -11
  227. package/shared/interfaces/accounts.enum.d.ts +0 -7
  228. package/shared/interfaces/authprovider.enum.d.ts +0 -13
  229. package/shared/interfaces/config.interface.d.ts +0 -63
  230. package/shared/interfaces/index.d.ts +0 -7
  231. package/shared/interfaces/main.interface.d.ts +0 -13
  232. package/shared/interfaces/providers.interface.d.ts +0 -70
  233. package/shared/interfaces/tokens.d.ts +0 -16
  234. package/shared/interfaces/ui-providers.interface.d.ts +0 -66
  235. package/shared/services/analytics.service.d.ts +0 -10
  236. package/shared/services/auth-process.service.d.ts +0 -197
  237. package/shared/services/crashlytics.service.d.ts +0 -11
  238. package/shared/services/device-info.service.d.ts +0 -3
  239. package/shared/services/firebase.service.d.ts +0 -16
  240. package/shared/services/firestore-sync.service.d.ts +0 -16
  241. package/shared/services/index.d.ts +0 -9
  242. package/shared/services/performance.service.d.ts +0 -12
  243. package/shared/services/remoteconfig.service.d.ts +0 -18
  244. package/shared/services/ui.service.d.ts +0 -22
  245. package/shared/shared.module.d.ts +0 -14
  246. package/shared/types/DisplayWidth.d.ts +0 -7
  247. package/shared/types/Location.d.ts +0 -8
  248. package/shared/types/ValueAccessorControlComponent.d.ts +0 -27
  249. package/shared/types/ValueAccessorValueComponent.d.ts +0 -19
  250. package/shared/types/index.d.ts +0 -4
  251. package/testing/fakeavatar.module.d.ts +0 -2
  252. package/testing/fakes/FakeAuthProcessService.d.ts +0 -28
  253. package/testing/fakes/FakeAvatarComponent.d.ts +0 -3
  254. package/testing/fakes/FakeFireService.d.ts +0 -20
  255. package/testing/fakes/FakeFirestoreSyncService.d.ts +0 -9
  256. package/testing/fakes/FakeIAPurchaseService.d.ts +0 -9
  257. package/testing/fakes/FakePickerService.d.ts +0 -6
  258. package/testing/fakes/FakeRemoteConfigService.d.ts +0 -19
  259. package/testing/fakes/FakeTranslateService.d.ts +0 -15
  260. package/testing/fakes/FakeUiService.d.ts +0 -25
  261. package/testing/fakes/angular-fire/FakeAngularFireAuth.d.ts +0 -52
  262. package/testing/fakes/angular-fire/FakeAngularFireFunctions.d.ts +0 -11
  263. package/testing/fakes/angular-fire/FakeAngularFirePerformance.d.ts +0 -10
  264. package/testing/fakes/angular-fire/FakeAngularFireStorage.d.ts +0 -5
  265. package/testing/fakes/angular-fire/FakeAngularFirestore.d.ts +0 -5
  266. package/testing/fakes/angular-fire/FakeUserCredential.d.ts +0 -9
  267. package/testing/fakes/index.d.ts +0 -16
  268. package/testing/ngx-firebase-testing.d.ts +0 -5
  269. package/testing/ngx-firebase-testing.metadata.json +0 -1
  270. package/testing/package.json +0 -29
  271. package/testing/public-api.d.ts +0 -4
  272. package/testing/test.module.d.ts +0 -4
  273. package/testing/utils/index.d.ts +0 -5
  274. package/testing/utils/patchConsole.d.ts +0 -4
@@ -1,82 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { UiService } from 'ngx-firebase';
3
- import { BehaviorSubject, of } from 'rxjs';
4
- import { catchError, map, startWith, switchMap } from 'rxjs/operators';
5
- export class AuthUIFormFieldComponent {
6
- constructor(ui) {
7
- this.ui = ui;
8
- this.label = '';
9
- this.control$ = new BehaviorSubject(undefined);
10
- this.errors$ = this.control$.pipe(switchMap(control => (control && control.statusChanges)
11
- ? control.statusChanges.pipe(startWith(control.errors), map(_ => this.errorMessageFn(control.errors)))
12
- : of([])), catchError(error => {
13
- this.ui.logError(error);
14
- return of([error.message]);
15
- }));
16
- this.isValid$ = this.control$.pipe(switchMap(control => (control && control.statusChanges)
17
- ? control.statusChanges.pipe(startWith(control.valid), map(() => control.valid || false))
18
- : of(true)));
19
- this.isDisabled$ = this.control$.pipe(switchMap(control => (control && control.statusChanges)
20
- ? control.statusChanges.pipe(startWith(control.disabled), map(() => control.disabled || false))
21
- : of(true)));
22
- this.errorMessageFn = this.flattenErrors.bind(this);
23
- this.translateParams = {};
24
- }
25
- get control() { return this.control$.value; }
26
- set control(val) { this.control$.next(val); }
27
- flattenErrors(errors) {
28
- if (errors) {
29
- if (this.customErrors || this.errorPrefix) {
30
- return Object.keys(errors)
31
- .map(key => {
32
- if (this.customErrors) {
33
- if (undefined !== this.customErrors[key]) {
34
- return this.customErrors[key];
35
- }
36
- else if (undefined !== this.customErrors.default) {
37
- return this.customErrors.default;
38
- }
39
- else {
40
- return '';
41
- }
42
- }
43
- else if (this.errorPrefix) {
44
- return `${this.errorPrefix}.${key}`;
45
- }
46
- })
47
- .filter(item => !!item) || [];
48
- }
49
- else if (this.errorMessage) {
50
- return [this.errorMessage];
51
- }
52
- else {
53
- return [];
54
- }
55
- }
56
- else {
57
- return [];
58
- }
59
- }
60
- }
61
- AuthUIFormFieldComponent.decorators = [
62
- { type: Component, args: [{
63
- selector: 'mal-authui-form-field',
64
- template: "<ion-item class=\"ion-no-padding input form-field\">\n <ion-label color=\"text\" class=\"text-size-xs\" position=\"floating\">{{ label | translate }}</ion-label>\n <div class=\"input-wrap\">\n <ng-content></ng-content>\n <ion-icon size=\"large\" *ngIf=\"!(isValid$ | async) && !(isDisabled$ | async)\" class=\"invalid\" name=\"remove-circle\"></ion-icon>\n <ion-icon size=\"large\" *ngIf=\"icon\" class=\"custom\" [name]=\"icon\"></ion-icon>\n </div>\n</ion-item>\n<ion-grid class=\"footer-messages\">\n <span class=\"hint-end\" *ngIf=\"hintEnd\">{{ hintEnd | translate:translateParams }}</span>\n <ion-row *ngFor=\"let error of (errors$ | async)\" class=\"error-message\">\n <ion-col>{{ error | translate:translateParams }} </ion-col>\n </ion-row>\n</ion-grid>",
65
- styles: ["ion-item.form-field{width:100%}ion-item.form-field div.input-wrap{display:flex;flex-wrap:nowrap;width:100%}ion-item.form-field div.input-wrap ion-icon.invalid{color:var(--ion-color-danger,red);align-items:right;height:100%}ion-grid.footer-messages{text-align:left;margin:0;padding:0;font-size:small}ion-grid.footer-messages ion-row.error-message ion-col{color:var(--ion-color-danger,red);margin:0;padding:0}ion-grid.footer-messages span.hint-end{float:right}", "div.authui-logo{margin:32px auto;width:30%}div.authui-logo img{display:block;max-width:120px;border-radius:20px;margin-left:auto;margin-right:auto}div.authui-title{font-size:20px;margin:16px 0}div.authui-alternate-action{margin:32px auto 24px;font-weight:500}div.authui-alternate-action .text{margin-right:8px}ion-content.auth-page{--background:var(--auth-pages-background,--background)}div.resend-confirmation{margin:24px 0;font-size:.9em;text-align:center}ion-button.authui-provider-button{width:220px;margin:8px auto;display:block;text-align:center;--background:var(--auth-provider-background-color,#fff)}@media screen and (max-width:599px){ion-button.authui-provider-button{width:100%}}ion-button.authui-submit-button{width:220px;margin:16px auto;display:block}@media screen and (max-width:599px){ion-button.authui-submit-button{width:100%}}ion-grid.terms{width:100%;margin:24px 0;text-align:left;font-size:.9em}ion-grid.terms ion-col ion-row a{font-size:16px;margin-left:4px}div.forgot-password{margin:24px 0;font-size:.9em}@media (prefers-color-scheme:dark){a{color:#fff}}div.auth-ui-form{width:384px;max-width:384px;padding:32px;text-align:center;flex:1 0 auto}@media screen and (max-width:599px){div.auth-ui-form{padding:24px;width:100%}}div.auth-ui-form form{width:100%;text-align:left}div.authui-wrapper{width:100%;background-size:cover;flex:1 0 auto;padding:32px}@media screen and (max-width:599px){div.authui-wrapper{padding:16px}}button.confirm:disabled{color:grey}div.email-popover-outer{width:100%}div.email-popover-outer div.email-popover-inner{padding:10%}"]
66
- },] }
67
- ];
68
- AuthUIFormFieldComponent.ctorParameters = () => [
69
- { type: UiService }
70
- ];
71
- AuthUIFormFieldComponent.propDecorators = {
72
- label: [{ type: Input }],
73
- control: [{ type: Input }],
74
- errorMessage: [{ type: Input }],
75
- errorMessageFn: [{ type: Input }],
76
- errorPrefix: [{ type: Input }],
77
- customErrors: [{ type: Input }],
78
- translateParams: [{ type: Input }],
79
- icon: [{ type: Input }],
80
- hintEnd: [{ type: Input }]
81
- };
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZmlyZWJhc2UvaW9uaWMtYXV0aC11aS9zcmMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBU3ZFLE1BQU0sT0FBTyx3QkFBd0I7SUEwQ25DLFlBQ1UsRUFBYTtRQUFiLE9BQUUsR0FBRixFQUFFLENBQVc7UUF6Q2QsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUtwQixhQUFRLEdBQWlDLElBQUksZUFBZSxDQUFjLFNBQVMsQ0FBQyxDQUFDO1FBRXRGLFlBQU8sR0FBeUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZELFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUM7WUFDckQsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN0RyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUNULEVBQ0QsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVjLGFBQVEsR0FBd0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hFLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUM7WUFDckQsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLENBQUM7WUFDekYsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDWCxDQUNGLENBQUM7UUFFYyxnQkFBVyxHQUF3QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDbkUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQztZQUNyRCxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsQ0FBQztZQUMvRixDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUNYLENBQ0YsQ0FBQztRQUdPLG1CQUFjLEdBQWtELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRzlGLG9CQUFlLEdBQThCLEVBQUUsQ0FBQztJQU1yRCxDQUFDO0lBeENMLElBQ0ksT0FBTyxLQUFrQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMxRCxJQUFJLE9BQU8sQ0FBQyxHQUFnQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQXdDbEQsYUFBYSxDQUFDLE1BQStCO1FBQ25ELElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3pDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7cUJBQ3ZCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDVCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7d0JBQ3JCLElBQUksU0FBUyxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUU7NEJBQ3hDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQzt5QkFDL0I7NkJBQU0sSUFBSSxTQUFTLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUU7NEJBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7eUJBQ2xDOzZCQUFNOzRCQUNMLE9BQU8sRUFBRSxDQUFDO3lCQUNYO3FCQUNGO3lCQUFNLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTt3QkFDM0IsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksR0FBRyxFQUFFLENBQUM7cUJBQ3JDO2dCQUNILENBQUMsQ0FBQztxQkFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFhLElBQUksRUFBRSxDQUFDO2FBQzdDO2lCQUFNLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDNUIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUM1QjtpQkFBTTtnQkFDTCxPQUFPLEVBQUUsQ0FBQzthQUNYO1NBQ0Y7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDOzs7WUE3RUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLHV4QkFBd0M7O2FBRXpDOzs7WUFWUSxTQUFTOzs7b0JBYWYsS0FBSztzQkFFTCxLQUFLOzJCQThCTCxLQUFLOzZCQUNMLEtBQUs7MEJBQ0wsS0FBSzsyQkFDTCxLQUFLOzhCQUNMLEtBQUs7bUJBQ0wsS0FBSztzQkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIE5nQ29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFVpU2VydmljZSB9IGZyb20gJ25neC1maXJlYmFzZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG50eXBlIENvbnRyb2xUeXBlID0gTmdDb250cm9sIHwgRm9ybUNvbnRyb2wgfCB1bmRlZmluZWQgfCBudWxsO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYWwtYXV0aHVpLWZvcm0tZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJ2Zvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnZm9ybS1maWVsZC5jb21wb25lbnQuc2NzcycsICcuLi8uLi9pb25pYy1hdXRoLXVpLnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBdXRoVUlGb3JtRmllbGRDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKVxuICBnZXQgY29udHJvbCgpOiBDb250cm9sVHlwZSB7IHJldHVybiB0aGlzLmNvbnRyb2wkLnZhbHVlOyB9XG4gIHNldCBjb250cm9sKHZhbDogQ29udHJvbFR5cGUpIHsgdGhpcy5jb250cm9sJC5uZXh0KHZhbCk7IH1cbiAgcHJpdmF0ZSBjb250cm9sJDogQmVoYXZpb3JTdWJqZWN0PENvbnRyb2xUeXBlPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Q29udHJvbFR5cGU+KHVuZGVmaW5lZCk7XG5cbiAgcHVibGljIGVycm9ycyQ6IE9ic2VydmFibGU8c3RyaW5nW10+ID0gdGhpcy5jb250cm9sJC5waXBlKFxuICAgIHN3aXRjaE1hcChjb250cm9sID0+IChjb250cm9sICYmIGNvbnRyb2wuc3RhdHVzQ2hhbmdlcylcbiAgICAgID8gY29udHJvbC5zdGF0dXNDaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKGNvbnRyb2wuZXJyb3JzKSwgbWFwKF8gPT4gdGhpcy5lcnJvck1lc3NhZ2VGbihjb250cm9sLmVycm9ycykpKVxuICAgICAgOiBvZihbXSlcbiAgICApLFxuICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgdGhpcy51aS5sb2dFcnJvcihlcnJvcik7XG4gICAgICByZXR1cm4gb2YoW2Vycm9yLm1lc3NhZ2VdKTtcbiAgICB9KVxuICApO1xuXG4gIHB1YmxpYyByZWFkb25seSBpc1ZhbGlkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuY29udHJvbCQucGlwZShcbiAgICBzd2l0Y2hNYXAoY29udHJvbCA9PiAoY29udHJvbCAmJiBjb250cm9sLnN0YXR1c0NoYW5nZXMpXG4gICAgICA/IGNvbnRyb2wuc3RhdHVzQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aChjb250cm9sLnZhbGlkKSwgbWFwKCgpID0+IGNvbnRyb2wudmFsaWQgfHwgZmFsc2UpKVxuICAgICAgOiBvZih0cnVlKVxuICAgIClcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgaXNEaXNhYmxlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmNvbnRyb2wkLnBpcGUoXG4gICAgc3dpdGNoTWFwKGNvbnRyb2wgPT4gKGNvbnRyb2wgJiYgY29udHJvbC5zdGF0dXNDaGFuZ2VzKVxuICAgICAgPyBjb250cm9sLnN0YXR1c0NoYW5nZXMucGlwZShzdGFydFdpdGgoY29udHJvbC5kaXNhYmxlZCksIG1hcCgoKSA9PiBjb250cm9sLmRpc2FibGVkIHx8IGZhbHNlKSlcbiAgICAgIDogb2YodHJ1ZSlcbiAgICApXG4gICk7XG5cbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuICBASW5wdXQoKSBlcnJvck1lc3NhZ2VGbjogKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpID0+IHN0cmluZ1tdID0gdGhpcy5mbGF0dGVuRXJyb3JzLmJpbmQodGhpcyk7XG4gIEBJbnB1dCgpIGVycm9yUHJlZml4Pzogc3RyaW5nO1xuICBASW5wdXQoKSBjdXN0b21FcnJvcnM/OiB7IFtpbmRleDogc3RyaW5nXTogc3RyaW5nIH07XG4gIEBJbnB1dCgpIHRyYW5zbGF0ZVBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICBASW5wdXQoKSBpY29uPzogc3RyaW5nO1xuICBASW5wdXQoKSBoaW50RW5kPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdWk6IFVpU2VydmljZVxuICApIHsgfVxuXG4gIHByaXZhdGUgZmxhdHRlbkVycm9ycyhlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsKTogc3RyaW5nW10ge1xuICAgIGlmIChlcnJvcnMpIHtcbiAgICAgIGlmICh0aGlzLmN1c3RvbUVycm9ycyB8fCB0aGlzLmVycm9yUHJlZml4KSB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlcnJvcnMpXG4gICAgICAgICAgLm1hcChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY3VzdG9tRXJyb3JzKSB7XG4gICAgICAgICAgICAgIGlmICh1bmRlZmluZWQgIT09IHRoaXMuY3VzdG9tRXJyb3JzW2tleV0pIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jdXN0b21FcnJvcnNba2V5XTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmICh1bmRlZmluZWQgIT09IHRoaXMuY3VzdG9tRXJyb3JzLmRlZmF1bHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jdXN0b21FcnJvcnMuZGVmYXVsdDtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5lcnJvclByZWZpeCkge1xuICAgICAgICAgICAgICByZXR1cm4gYCR7dGhpcy5lcnJvclByZWZpeH0uJHtrZXl9YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICAgIC5maWx0ZXIoaXRlbSA9PiAhIWl0ZW0pIGFzIHN0cmluZ1tdIHx8IFtdO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmVycm9yTWVzc2FnZSkge1xuICAgICAgICByZXR1cm4gW3RoaXMuZXJyb3JNZXNzYWdlXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
@@ -1,12 +0,0 @@
1
- export * from './email-confirmation/email-confirmation.component';
2
- export * from './signin/signin.component';
3
- export * from './register/register.component';
4
- export * from './user/user.component';
5
- export * from './reauthenticate/reauthenticate.component';
6
- export * from './providers/providers.component';
7
- export * from './email-field/email-field.component';
8
- export * from './form-field/form-field.component';
9
- export * from './name-field/name-field.component';
10
- export * from './or-divider/or-divider.component';
11
- export * from './password-field/password-field.component';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZmlyZWJhc2UvaW9uaWMtYXV0aC11aS9zcmMvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2VtYWlsLWNvbmZpcm1hdGlvbi9lbWFpbC1jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2lnbmluL3NpZ25pbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyL3VzZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcmVhdXRoZW50aWNhdGUvcmVhdXRoZW50aWNhdGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzL3Byb3ZpZGVycy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lbWFpbC1maWVsZC9lbWFpbC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbmFtZS1maWVsZC9uYW1lLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL29yLWRpdmlkZXIvb3ItZGl2aWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wYXNzd29yZC1maWVsZC9wYXNzd29yZC1maWVsZC5jb21wb25lbnQnO1xuIl19
@@ -1,30 +0,0 @@
1
- import { ChangeDetectorRef, Component, forwardRef, Inject, Injector } from '@angular/core';
2
- import { FormControl, NG_VALUE_ACCESSOR, Validators, NG_VALIDATORS } from '@angular/forms';
3
- import { MalSharedConfigToken, ValueAccessorControlComponent } from 'ngx-firebase';
4
- export class AuthUINameFieldComponent extends ValueAccessorControlComponent {
5
- constructor(config, injector, cdRef) {
6
- super(injector, cdRef);
7
- this.config = config;
8
- this.control = new FormControl('', [
9
- Validators.minLength(this.config.authUi.nameMinLength),
10
- Validators.maxLength(this.config.authUi.nameMaxLength)
11
- ]);
12
- }
13
- }
14
- AuthUINameFieldComponent.decorators = [
15
- { type: Component, args: [{
16
- selector: 'mal-authui-name-field',
17
- template: "<mal-authui-form-field [control]=\"parentControl\"\n label=\"auth.name.label\"\n [hintEnd]=\"(control.value?.length || 0 ) + ' / ' + config.authUi.nameMaxLength\"\n errorPrefix=\"auth.name.errors\">\n\n <ion-input [placeholder]=\"'auth.name.placeholder' | translate\"\n [maxlength]=\"config.authUi.nameMaxLength\"\n [minlength]=\"config.authUi.nameMinLength\"\n color=\"text\"\n [formControl]=\"control\">\n </ion-input>\n\n</mal-authui-form-field>",
18
- providers: [
19
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AuthUINameFieldComponent), multi: true },
20
- { provide: NG_VALIDATORS, useExisting: AuthUINameFieldComponent, multi: true }
21
- ],
22
- styles: ["div.authui-logo{margin:32px auto;width:30%}div.authui-logo img{display:block;max-width:120px;border-radius:20px;margin-left:auto;margin-right:auto}div.authui-title{font-size:20px;margin:16px 0}div.authui-alternate-action{margin:32px auto 24px;font-weight:500}div.authui-alternate-action .text{margin-right:8px}ion-content.auth-page{--background:var(--auth-pages-background,--background)}div.resend-confirmation{margin:24px 0;font-size:.9em;text-align:center}ion-button.authui-provider-button{width:220px;margin:8px auto;display:block;text-align:center;--background:var(--auth-provider-background-color,#fff)}@media screen and (max-width:599px){ion-button.authui-provider-button{width:100%}}ion-button.authui-submit-button{width:220px;margin:16px auto;display:block}@media screen and (max-width:599px){ion-button.authui-submit-button{width:100%}}ion-grid.terms{width:100%;margin:24px 0;text-align:left;font-size:.9em}ion-grid.terms ion-col ion-row a{font-size:16px;margin-left:4px}div.forgot-password{margin:24px 0;font-size:.9em}@media (prefers-color-scheme:dark){a{color:#fff}}div.auth-ui-form{width:384px;max-width:384px;padding:32px;text-align:center;flex:1 0 auto}@media screen and (max-width:599px){div.auth-ui-form{padding:24px;width:100%}}div.auth-ui-form form{width:100%;text-align:left}div.authui-wrapper{width:100%;background-size:cover;flex:1 0 auto;padding:32px}@media screen and (max-width:599px){div.authui-wrapper{padding:16px}}button.confirm:disabled{color:grey}div.email-popover-outer{width:100%}div.email-popover-outer div.email-popover-inner{padding:10%}"]
23
- },] }
24
- ];
25
- AuthUINameFieldComponent.ctorParameters = () => [
26
- { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => MalSharedConfigToken),] }] },
27
- { type: Injector },
28
- { type: ChangeDetectorRef }
29
- ];
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZmlyZWJhc2UvaW9uaWMtYXV0aC11aS9zcmMvY29tcG9uZW50cy9uYW1lLWZpZWxkL25hbWUtZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBd0IsV0FBVyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1SCxPQUFPLEVBQUUsb0JBQW9CLEVBQW1CLDZCQUE2QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBVXBHLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSw2QkFBcUM7SUFRL0UsWUFDMkQsTUFBdUIsRUFDOUUsUUFBa0IsRUFDbEIsS0FBd0I7UUFFeEIsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUpnQyxXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQU4zRSxZQUFPLEdBQWdCLElBQUksV0FBVyxDQUFDLEVBQUUsRUFBRTtZQUM5QyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUN0RCxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztTQUN6RCxDQUFDLENBQUM7SUFRSCxDQUFDOzs7WUF0QkosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLHVqQkFBd0M7Z0JBRXhDLFNBQVMsRUFBRTtvQkFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtvQkFDcEcsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2lCQUFDOzthQUN0Rjs7OzRDQVVRLE1BQU0sU0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7WUFyQm9CLFFBQVE7WUFBMUQsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbmplY3RvciwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUNvbnRyb2wsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3JzLCBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYWxTaGFyZWRDb25maWdUb2tlbiwgTWFsU2hhcmVkQ29uZmlnLCBWYWx1ZUFjY2Vzc29yQ29udHJvbENvbXBvbmVudCB9IGZyb20gJ25neC1maXJlYmFzZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbWFsLWF1dGh1aS1uYW1lLWZpZWxkJyxcbiAgICB0ZW1wbGF0ZVVybDogJ25hbWUtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuLi8uLi9pb25pYy1hdXRoLXVpLnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXV0aFVJTmFtZUZpZWxkQ29tcG9uZW50KSwgbXVsdGk6IHRydWUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCB1c2VFeGlzdGluZzogQXV0aFVJTmFtZUZpZWxkQ29tcG9uZW50LCBtdWx0aTogdHJ1ZSB9XVxufSlcbmV4cG9ydCBjbGFzcyBBdXRoVUlOYW1lRmllbGRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQ29udHJvbENvbXBvbmVudDxzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gICAgcHVibGljIGNvbnRyb2w6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnLCBbXG4gICAgICAgIFZhbGlkYXRvcnMubWluTGVuZ3RoKHRoaXMuY29uZmlnLmF1dGhVaS5uYW1lTWluTGVuZ3RoKSxcbiAgICAgICAgVmFsaWRhdG9ycy5tYXhMZW5ndGgodGhpcy5jb25maWcuYXV0aFVpLm5hbWVNYXhMZW5ndGgpXG4gICAgXSk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IE1hbFNoYXJlZENvbmZpZ1Rva2VuKSkgcHVibGljIGNvbmZpZzogTWFsU2hhcmVkQ29uZmlnLFxuICAgICAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICAgICkge1xuICAgICAgICBzdXBlcihpbmplY3RvciwgY2RSZWYpO1xuICAgIH1cblxufVxuIl19
@@ -1,11 +0,0 @@
1
- import { Component } from '@angular/core';
2
- export class AuthUIOrDividerComponent {
3
- }
4
- AuthUIOrDividerComponent.decorators = [
5
- { type: Component, args: [{
6
- selector: 'mal-authui-or-divider',
7
- template: "<div \n class=\"separator\">\n <ion-text color=\"text\" class=\"text\">{{ \"auth.common.orLabel\" | translate }}</ion-text>\n</div>",
8
- styles: [".separator{font-size:15px;font-weight:600;margin:20px auto 6px;position:relative;overflow:hidden;width:100px}.separator .text{display:inline-flex;position:relative;padding:0 8px;z-index:9999}.separator .text:after,.separator .text:before{content:\"\";display:block;width:30px;position:absolute;top:10px;border-top:1px solid}.separator .text:before{right:100%}.separator .text:after{left:100%}", "div.authui-logo{margin:32px auto;width:30%}div.authui-logo img{display:block;max-width:120px;border-radius:20px;margin-left:auto;margin-right:auto}div.authui-title{font-size:20px;margin:16px 0}div.authui-alternate-action{margin:32px auto 24px;font-weight:500}div.authui-alternate-action .text{margin-right:8px}ion-content.auth-page{--background:var(--auth-pages-background,--background)}div.resend-confirmation{margin:24px 0;font-size:.9em;text-align:center}ion-button.authui-provider-button{width:220px;margin:8px auto;display:block;text-align:center;--background:var(--auth-provider-background-color,#fff)}@media screen and (max-width:599px){ion-button.authui-provider-button{width:100%}}ion-button.authui-submit-button{width:220px;margin:16px auto;display:block}@media screen and (max-width:599px){ion-button.authui-submit-button{width:100%}}ion-grid.terms{width:100%;margin:24px 0;text-align:left;font-size:.9em}ion-grid.terms ion-col ion-row a{font-size:16px;margin-left:4px}div.forgot-password{margin:24px 0;font-size:.9em}@media (prefers-color-scheme:dark){a{color:#fff}}div.auth-ui-form{width:384px;max-width:384px;padding:32px;text-align:center;flex:1 0 auto}@media screen and (max-width:599px){div.auth-ui-form{padding:24px;width:100%}}div.auth-ui-form form{width:100%;text-align:left}div.authui-wrapper{width:100%;background-size:cover;flex:1 0 auto;padding:32px}@media screen and (max-width:599px){div.authui-wrapper{padding:16px}}button.confirm:disabled{color:grey}div.email-popover-outer{width:100%}div.email-popover-outer div.email-popover-inner{padding:10%}"]
9
- },] }
10
- ];
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ItZGl2aWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZmlyZWJhc2UvaW9uaWMtYXV0aC11aS9zcmMvY29tcG9uZW50cy9vci1kaXZpZGVyL29yLWRpdmlkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPMUMsTUFBTSxPQUFPLHdCQUF3Qjs7O1lBTHBDLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyxzSkFBd0M7O2FBRTNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbWFsLWF1dGh1aS1vci1kaXZpZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJ29yLWRpdmlkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydvci1kaXZpZGVyLmNvbXBvbmVudC5zY3NzJywgJy4uLy4uL2lvbmljLWF1dGgtdWkuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhVSU9yRGl2aWRlckNvbXBvbmVudCB7XG5cbn1cbiJdfQ==
@@ -1,138 +0,0 @@
1
- import { ChangeDetectorRef, Component, forwardRef, Inject, Injector, Input } from '@angular/core';
2
- import { FormControl, NG_VALUE_ACCESSOR, Validators, FormGroup, NG_VALIDATORS, NgControl } from '@angular/forms';
3
- import { UiService, MalSharedConfigToken } from 'ngx-firebase';
4
- import { Subject } from 'rxjs';
5
- import { takeUntil } from 'rxjs/operators';
6
- import { confirmPasswordValidator, passwordStrengthValidator } from './passwordValidatorFunctions';
7
- export class AuthUIPasswordFieldComponent {
8
- constructor(config, injector, cdRef, ui) {
9
- this.config = config;
10
- this.injector = injector;
11
- this.cdRef = cdRef;
12
- this.ui = ui;
13
- // Validators are added by set validators function
14
- this.form = new FormGroup({
15
- password: new FormControl('', []),
16
- passwordConfirm: new FormControl('', [])
17
- });
18
- this.autocomplete = 'current-password';
19
- this._forUpdate = false;
20
- this.isDisabled = false;
21
- this.destroy$ = new Subject();
22
- this.propogateChange = (val) => { };
23
- this.propogateTouch = () => { };
24
- this.propogateValidationChange = () => { };
25
- this.setValidators();
26
- this.form.controls.password.valueChanges
27
- .pipe(takeUntil(this.destroy$))
28
- .subscribe(val => {
29
- try {
30
- this.form.controls.passwordConfirm.updateValueAndValidity();
31
- this.propogateChange(val);
32
- }
33
- catch (error) {
34
- this.ui.logError(error);
35
- }
36
- });
37
- this.form.statusChanges
38
- .pipe(takeUntil(this.destroy$))
39
- .subscribe(_ => {
40
- try {
41
- this.propogateValidationChange();
42
- }
43
- catch (error) {
44
- this.ui.logError(error);
45
- }
46
- });
47
- }
48
- set forUpdate(val) {
49
- this._forUpdate = val;
50
- this.setValidators();
51
- if (val) {
52
- this.autocomplete = 'new-password';
53
- }
54
- else {
55
- this.autocomplete = 'current-password';
56
- }
57
- }
58
- get forUpdate() {
59
- return this._forUpdate;
60
- }
61
- set value(val) {
62
- if (val) {
63
- this.form.patchValue({
64
- password: val,
65
- passwordConfirm: val
66
- });
67
- }
68
- else {
69
- this.form.reset();
70
- }
71
- }
72
- get value() {
73
- return this.form.controls.password.value;
74
- }
75
- ngOnDestroy() {
76
- this.destroy$.next();
77
- this.destroy$.complete();
78
- }
79
- ngAfterViewInit() {
80
- this.parentControl = this.injector.get(NgControl, null);
81
- this.setValidators();
82
- this.cdRef.detectChanges();
83
- }
84
- // Form Accessor functions
85
- registerOnChange(fn) { this.propogateChange = fn; }
86
- registerOnTouched(fn) { this.propogateTouch = fn; }
87
- registerOnValidatorChange(fn) { this.propogateValidationChange = fn; }
88
- writeValue(val) { this.value = val; }
89
- setDisabledState(isDisabled) { this.isDisabled = isDisabled; }
90
- validate(control) {
91
- if (this.form.controls.password.errors || this.form.controls.passwordConfirm.errors) {
92
- return Object.assign(this.form.controls.password.errors || {}, this.form.controls.passwordConfirm.errors || {});
93
- }
94
- else {
95
- return null;
96
- }
97
- }
98
- setValidators() {
99
- if (this.forUpdate) {
100
- this.form.controls.password.setValidators([
101
- Validators.maxLength(this.config.authUi.passwordMaxLength),
102
- Validators.minLength(this.config.authUi.passwordMinLength),
103
- passwordStrengthValidator(this.config.authUi)
104
- ]);
105
- this.form.controls.passwordConfirm.setValidators([
106
- confirmPasswordValidator
107
- ]);
108
- }
109
- else {
110
- this.form.controls.password.setValidators([]);
111
- this.form.controls.passwordConfirm.setValidators([]);
112
- }
113
- this.form.controls.password.updateValueAndValidity();
114
- this.form.controls.passwordConfirm.updateValueAndValidity();
115
- }
116
- }
117
- AuthUIPasswordFieldComponent.decorators = [
118
- { type: Component, args: [{
119
- selector: 'mal-authui-password-field',
120
- template: "<form name=\"form\" [formGroup]=\"form\">\n <mal-authui-form-field [control]=\"parentControl\"\n label=\"auth.password.label\"\n [hintEnd]=\"form.value.password?.length || 0 + ' / ' + config.authUi.passwordMaxLength\"\n errorPrefix=\"auth.password.errors\">\n\n <ion-input (onBlur)=\"propogateTouch()\"\n [maxlength]=\"config.authUi.passwordMaxLength\"\n [minlength]=\"config.authUi.passwordMinLength\"\n [placeholder]=\"'auth.password.placeholder' | translate\"\n formControlName=\"password\"\n color=\"text\"\n type=\"password\"\n [autocomplete]=\"autocomplete\">\n </ion-input>\n\n </mal-authui-form-field>\n\n <mal-authui-form-field *ngIf=\"forUpdate\"\n label=\"auth.password.confirmLabel\"\n errorPrefix=\"auth.password.errors\">\n\n <ion-input (onBlur)=\"propogateTouch()\"\n [placeholder]=\"'auth.password.confirmPlaceholder' | translate\"\n formControlName=\"passwordConfirm\"\n color=\"text\"\n type=\"password\">\n </ion-input>\n\n </mal-authui-form-field>\n</form>\n\n<!-- TODO <mat-pass-toggle-visibility #toggle matSuffix></mat-pass-toggle-visibility> -->\n<!-- TODO <mat-password-strength #passwordStrength\n [customValidator]=\"customValidator\"\n [enableDigitRule]=\"enableDigitRule\"\n [enableLengthRule]=\"enableLengthRule\"\n [enableLowerCaseLetterRule]=\"enableLowerCaseLetterRule\"\n [enableSpecialCharRule]=\"enableSpecialCharRule\"\n [enableUpperCaseLetterRule]=\"enableUpperCaseLetterRule\"\n [externalError]=\"signUpFormGroup.controls.password.dirty\"\n [max]=\"max\"\n [min]=\"min\"\n [password]=\"signUpFormGroup.value.password\">\n </mat-password-strength> -->",
121
- providers: [
122
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AuthUIPasswordFieldComponent), multi: true },
123
- { provide: NG_VALIDATORS, useExisting: AuthUIPasswordFieldComponent, multi: true }
124
- ],
125
- styles: ["div.authui-logo{margin:32px auto;width:30%}div.authui-logo img{display:block;max-width:120px;border-radius:20px;margin-left:auto;margin-right:auto}div.authui-title{font-size:20px;margin:16px 0}div.authui-alternate-action{margin:32px auto 24px;font-weight:500}div.authui-alternate-action .text{margin-right:8px}ion-content.auth-page{--background:var(--auth-pages-background,--background)}div.resend-confirmation{margin:24px 0;font-size:.9em;text-align:center}ion-button.authui-provider-button{width:220px;margin:8px auto;display:block;text-align:center;--background:var(--auth-provider-background-color,#fff)}@media screen and (max-width:599px){ion-button.authui-provider-button{width:100%}}ion-button.authui-submit-button{width:220px;margin:16px auto;display:block}@media screen and (max-width:599px){ion-button.authui-submit-button{width:100%}}ion-grid.terms{width:100%;margin:24px 0;text-align:left;font-size:.9em}ion-grid.terms ion-col ion-row a{font-size:16px;margin-left:4px}div.forgot-password{margin:24px 0;font-size:.9em}@media (prefers-color-scheme:dark){a{color:#fff}}div.auth-ui-form{width:384px;max-width:384px;padding:32px;text-align:center;flex:1 0 auto}@media screen and (max-width:599px){div.auth-ui-form{padding:24px;width:100%}}div.auth-ui-form form{width:100%;text-align:left}div.authui-wrapper{width:100%;background-size:cover;flex:1 0 auto;padding:32px}@media screen and (max-width:599px){div.authui-wrapper{padding:16px}}button.confirm:disabled{color:grey}div.email-popover-outer{width:100%}div.email-popover-outer div.email-popover-inner{padding:10%}"]
126
- },] }
127
- ];
128
- AuthUIPasswordFieldComponent.ctorParameters = () => [
129
- { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => MalSharedConfigToken),] }] },
130
- { type: Injector },
131
- { type: ChangeDetectorRef },
132
- { type: UiService }
133
- ];
134
- AuthUIPasswordFieldComponent.propDecorators = {
135
- forUpdate: [{ type: Input }],
136
- value: [{ type: Input }]
137
- };
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWZpcmViYXNlL2lvbmljLWF1dGgtdWkvc3JjL2NvbXBvbmVudHMvcGFzc3dvcmQtZmllbGQvcGFzc3dvcmQtZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQ29DLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQ2pGLFNBQVMsRUFBRSxhQUFhLEVBQStCLFNBQVMsRUFDbkUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsU0FBUyxFQUFtQixvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQVluRyxNQUFNLE9BQU8sNEJBQTRCO0lBaURyQyxZQUMyRCxNQUF1QixFQUN0RSxRQUFrQixFQUNsQixLQUF3QixFQUN4QixFQUFhO1FBSGtDLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBQ3RFLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsT0FBRSxHQUFGLEVBQUUsQ0FBVztRQW5EekIsa0RBQWtEO1FBQzNDLFNBQUksR0FBYyxJQUFJLFNBQVMsQ0FBQztZQUNuQyxRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNqQyxlQUFlLEVBQUUsSUFB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IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvcnMsXG4gICAgRm9ybUdyb3VwLCBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3IsIFZhbGlkYXRpb25FcnJvcnMsIE5nQ29udHJvbFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBVaVNlcnZpY2UsIE1hbFNoYXJlZENvbmZpZywgTWFsU2hhcmVkQ29uZmlnVG9rZW4gfSBmcm9tICduZ3gtZmlyZWJhc2UnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgY29uZmlybVBhc3N3b3JkVmFsaWRhdG9yLCBwYXNzd29yZFN0cmVuZ3RoVmFsaWRhdG9yIH0gZnJvbSAnLi9wYXNzd29yZFZhbGlkYXRvckZ1bmN0aW9ucyc7XG5cbnR5cGUgVmFsdWVUeXBlID0gc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ21hbC1hdXRodWktcGFzc3dvcmQtZmllbGQnLFxuICAgIHRlbXBsYXRlVXJsOiAncGFzc3dvcmQtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuLi8uLi9pb25pYy1hdXRoLXVpLnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXV0aFVJUGFzc3dvcmRGaWVsZENvbXBvbmVudCksIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMSURBVE9SUywgdXNlRXhpc3Rpbmc6IEF1dGhVSVBhc3N3b3JkRmllbGRDb21wb25lbnQsIG11bHRpOiB0cnVlIH1dXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhVSVBhc3N3b3JkRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gICAgLy8gVmFsaWRhdG9ycyBhcmUgYWRkZWQgYnkgc2V0IHZhbGlkYXRvcnMgZnVuY3Rpb25cbiAgICBwdWJsaWMgZm9ybTogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgIHBhc3N3b3JkOiBuZXcgRm9ybUNvbnRyb2woJycsIFtdKSxcbiAgICAgICAgcGFzc3dvcmRDb25maXJtOiBuZXcgRm9ybUNvbnRyb2woJycsIFtdKVxuICAgIH0pO1xuXG4gICAgcHVibGljIGF1dG9jb21wbGV0ZTogc3RyaW5nID0gJ2N1cnJlbnQtcGFzc3dvcmQnO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgZm9yVXBkYXRlKHZhbDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9mb3JVcGRhdGUgPSB2YWw7XG4gICAgICAgIHRoaXMuc2V0VmFsaWRhdG9ycygpO1xuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZSA9ICduZXctcGFzc3dvcmQnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hdXRvY29tcGxldGUgPSAnY3VycmVudC1wYXNzd29yZCc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IGZvclVwZGF0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvclVwZGF0ZTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfZm9yVXBkYXRlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCB2YWx1ZSh2YWw6IFZhbHVlVHlwZSkge1xuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgICAgcGFzc3dvcmQ6IHZhbCxcbiAgICAgICAgICAgICAgICBwYXNzd29yZENvbmZpcm06IHZhbFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXQgdmFsdWUoKTogVmFsdWVUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZC52YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBwYXJlbnRDb250cm9sPzogTmdDb250cm9sIHwgbnVsbDtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvcG9nYXRlQ2hhbmdlID0gKHZhbDogVmFsdWVUeXBlKSA9PiB7IH07XG4gICAgcHJvcG9nYXRlVG91Y2ggPSAoKSA9PiB7IH07XG4gICAgcHJvcG9nYXRlVmFsaWRhdGlvbkNoYW5nZSA9ICgpID0+IHsgfTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gTWFsU2hhcmVkQ29uZmlnVG9rZW4pKSBwdWJsaWMgY29uZmlnOiBNYWxTaGFyZWRDb25maWcsXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSB1aTogVWlTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsaWRhdG9ycygpO1xuICAgICAgICB0aGlzLmZvcm0uY29udHJvbHMucGFzc3dvcmQudmFsdWVDaGFuZ2VzXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHZhbCA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnBhc3N3b3JkQ29uZmlybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvcG9nYXRlQ2hhbmdlKHZhbCk7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51aS5sb2dFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybS5zdGF0dXNDaGFuZ2VzXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvcG9nYXRlVmFsaWRhdGlvbkNoYW5nZSgpXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51aS5sb2dFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLnBhcmVudENvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwpO1xuICAgICAgICB0aGlzLnNldFZhbGlkYXRvcnMoKTtcbiAgICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLy8gRm9ybSBBY2Nlc3NvciBmdW5jdGlvbnNcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHsgdGhpcy5wcm9wb2dhdGVDaGFuZ2UgPSBmbjsgfVxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHsgdGhpcy5wcm9wb2dhdGVUb3VjaCA9IGZuOyB9XG4gICAgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZT8oZm46ICgpID0+IHZvaWQpIHsgdGhpcy5wcm9wb2dhdGVWYWxpZGF0aW9uQ2hhbmdlID0gZm47IH1cbiAgICB3cml0ZVZhbHVlKHZhbDogVmFsdWVUeXBlKSB7IHRoaXMudmFsdWUgPSB2YWw7IH1cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHsgdGhpcy5pc0Rpc2FibGVkID0gaXNEaXNhYmxlZDsgfVxuICAgIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZC5lcnJvcnMgfHwgdGhpcy5mb3JtLmNvbnRyb2xzLnBhc3N3b3JkQ29uZmlybS5lcnJvcnMpIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZC5lcnJvcnMgfHwge30sIHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZENvbmZpcm0uZXJyb3JzIHx8IHt9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRWYWxpZGF0b3JzKCkge1xuICAgICAgICBpZiAodGhpcy5mb3JVcGRhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZC5zZXRWYWxpZGF0b3JzKFtcbiAgICAgICAgICAgICAgICBWYWxpZGF0b3JzLm1heExlbmd0aCh0aGlzLmNvbmZpZy5hdXRoVWkucGFzc3dvcmRNYXhMZW5ndGgpLFxuICAgICAgICAgICAgICAgIFZhbGlkYXRvcnMubWluTGVuZ3RoKHRoaXMuY29uZmlnLmF1dGhVaS5wYXNzd29yZE1pbkxlbmd0aCksXG4gICAgICAgICAgICAgICAgcGFzc3dvcmRTdHJlbmd0aFZhbGlkYXRvcih0aGlzLmNvbmZpZy5hdXRoVWkpXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZENvbmZpcm0uc2V0VmFsaWRhdG9ycyhbXG4gICAgICAgICAgICAgICAgY29uZmlybVBhc3N3b3JkVmFsaWRhdG9yXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZC5zZXRWYWxpZGF0b3JzKFtdKTtcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jb250cm9scy5wYXNzd29yZENvbmZpcm0uc2V0VmFsaWRhdG9ycyhbXSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnBhc3N3b3JkLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnBhc3N3b3JkQ29uZmlybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfVxuXG59XG4iXX0=
@@ -1,62 +0,0 @@
1
- export function passwordStrengthValidator(config) {
2
- return (control) => {
3
- let strengthErrors = null;
4
- if (control.value) {
5
- if (config.passwordMinLength && control.value.length < config.passwordMinLength) {
6
- return { minlength: true };
7
- }
8
- if (config.passwordMaxLength && control.value.length > config.passwordMaxLength) {
9
- return { maxlength: true };
10
- }
11
- if (config.passwordRequireLowercase && (!/[a-z]/.test(control.value))) {
12
- if (!strengthErrors) {
13
- strengthErrors = {};
14
- }
15
- strengthErrors.requireLowercase = true;
16
- }
17
- if (config.passwordRequireUppercase && (!/[A-Z]/.test(control.value))) {
18
- if (!strengthErrors) {
19
- strengthErrors = {};
20
- }
21
- strengthErrors.requireUppercase = true;
22
- }
23
- if (config.passwordRequireSpecial && (!/[!@#\$%\^&]/.test(control.value))) {
24
- if (!strengthErrors) {
25
- strengthErrors = {};
26
- }
27
- strengthErrors.requireSpecial = true;
28
- }
29
- if (config.passwordRequireNumbers && (!/[0-9]/.test(control.value))) {
30
- if (!strengthErrors) {
31
- strengthErrors = {};
32
- }
33
- strengthErrors.requireNumbers = true;
34
- }
35
- if (strengthErrors) {
36
- return { passwordStrength: strengthErrors };
37
- }
38
- }
39
- return null;
40
- };
41
- }
42
- export function confirmPasswordValidator(control) {
43
- if (!control.parent || !control) {
44
- return null;
45
- }
46
- const password = control.parent.get('password');
47
- const passwordConfirm = control.parent.get('passwordConfirm');
48
- if (!password || !passwordConfirm) {
49
- return null;
50
- }
51
- if (!password.value && !passwordConfirm.value) {
52
- return null;
53
- }
54
- if (password.value === passwordConfirm.value) {
55
- return null;
56
- }
57
- if (password.value && !passwordConfirm.value) {
58
- return { passwordConfirmationRequired: true };
59
- }
60
- return { passwordsNotMatching: true };
61
- }
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmRWYWxpZGF0b3JGdW5jdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZmlyZWJhc2UvaW9uaWMtYXV0aC11aS9zcmMvY29tcG9uZW50cy9wYXNzd29yZC1maWVsZC9wYXNzd29yZFZhbGlkYXRvckZ1bmN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLFVBQVUseUJBQXlCLENBQUMsTUFBdUI7SUFDN0QsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDekQsSUFBSSxjQUFjLEdBQTRCLElBQUksQ0FBQztRQUNuRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsaUJBQWlCLEVBQUU7Z0JBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7YUFDOUI7WUFDRCxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsaUJBQWlCLEVBQUU7Z0JBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7YUFDOUI7WUFDRCxJQUFJLE1BQU0sQ0FBQyx3QkFBd0IsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDbkUsSUFBSSxDQUFDLGNBQWMsRUFBRTtvQkFBRSxjQUFjLEdBQUcsRUFBRSxDQUFDO2lCQUFFO2dCQUM3QyxjQUFjLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2FBQzFDO1lBQ0QsSUFBSSxNQUFNLENBQUMsd0JBQXdCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7Z0JBQ25FLElBQUksQ0FBQyxjQUFjLEVBQUU7b0JBQUUsY0FBYyxHQUFHLEVBQUUsQ0FBQztpQkFBRTtnQkFDN0MsY0FBYyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQzthQUMxQztZQUNELElBQUksTUFBTSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUN2RSxJQUFJLENBQUMsY0FBYyxFQUFFO29CQUFFLGNBQWMsR0FBRyxFQUFFLENBQUM7aUJBQUU7Z0JBQzdDLGNBQWMsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO2FBQ3hDO1lBQ0QsSUFBSSxNQUFNLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7Z0JBQ2pFLElBQUksQ0FBQyxjQUFjLEVBQUU7b0JBQUUsY0FBYyxHQUFHLEVBQUUsQ0FBQztpQkFBRTtnQkFDN0MsY0FBYyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7YUFDeEM7WUFDRCxJQUFJLGNBQWMsRUFBRTtnQkFDaEIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxDQUFDO2FBQy9DO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUFDLE9BQXdCO0lBQzdELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQzdCLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7SUFFRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRCxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRTlELElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxlQUFlLEVBQUU7UUFDL0IsT0FBTyxJQUFJLENBQUM7S0FDZjtJQUVELElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRTtRQUMzQyxPQUFPLElBQUksQ0FBQztLQUNmO0lBRUQsSUFBSSxRQUFRLENBQUMsS0FBSyxLQUFLLGVBQWUsQ0FBQyxLQUFLLEVBQUU7UUFDMUMsT0FBTyxJQUFJLENBQUM7S0FDZjtJQUVELElBQUksUUFBUSxDQUFDLEtBQUssSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUU7UUFDMUMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLElBQUksRUFBRSxDQUFDO0tBQ2pEO0lBRUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLElBQUksRUFBRSxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWFsQXV0aFVJQ29uZmlnIH0gZnJvbSAnbmd4LWZpcmViYXNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHBhc3N3b3JkU3RyZW5ndGhWYWxpZGF0b3IoY29uZmlnOiBNYWxBdXRoVUlDb25maWcpOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgIGxldCBzdHJlbmd0aEVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xuICAgICAgICBpZiAoY29udHJvbC52YWx1ZSkge1xuICAgICAgICAgICAgaWYgKGNvbmZpZy5wYXNzd29yZE1pbkxlbmd0aCAmJiBjb250cm9sLnZhbHVlLmxlbmd0aCA8IGNvbmZpZy5wYXNzd29yZE1pbkxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7IG1pbmxlbmd0aDogdHJ1ZSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNvbmZpZy5wYXNzd29yZE1heExlbmd0aCAmJiBjb250cm9sLnZhbHVlLmxlbmd0aCA+IGNvbmZpZy5wYXNzd29yZE1heExlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7IG1heGxlbmd0aDogdHJ1ZSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNvbmZpZy5wYXNzd29yZFJlcXVpcmVMb3dlcmNhc2UgJiYgKCEvW2Etel0vLnRlc3QoY29udHJvbC52YWx1ZSkpKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFzdHJlbmd0aEVycm9ycykgeyBzdHJlbmd0aEVycm9ycyA9IHt9OyB9XG4gICAgICAgICAgICAgICAgc3RyZW5ndGhFcnJvcnMucmVxdWlyZUxvd2VyY2FzZSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY29uZmlnLnBhc3N3b3JkUmVxdWlyZVVwcGVyY2FzZSAmJiAoIS9bQS1aXS8udGVzdChjb250cm9sLnZhbHVlKSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXN0cmVuZ3RoRXJyb3JzKSB7IHN0cmVuZ3RoRXJyb3JzID0ge307IH1cbiAgICAgICAgICAgICAgICBzdHJlbmd0aEVycm9ycy5yZXF1aXJlVXBwZXJjYXNlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjb25maWcucGFzc3dvcmRSZXF1aXJlU3BlY2lhbCAmJiAoIS9bIUAjXFwkJVxcXiZdLy50ZXN0KGNvbnRyb2wudmFsdWUpKSkge1xuICAgICAgICAgICAgICAgIGlmICghc3RyZW5ndGhFcnJvcnMpIHsgc3RyZW5ndGhFcnJvcnMgPSB7fTsgfVxuICAgICAgICAgICAgICAgIHN0cmVuZ3RoRXJyb3JzLnJlcXVpcmVTcGVjaWFsID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjb25maWcucGFzc3dvcmRSZXF1aXJlTnVtYmVycyAmJiAoIS9bMC05XS8udGVzdChjb250cm9sLnZhbHVlKSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXN0cmVuZ3RoRXJyb3JzKSB7IHN0cmVuZ3RoRXJyb3JzID0ge307IH1cbiAgICAgICAgICAgICAgICBzdHJlbmd0aEVycm9ycy5yZXF1aXJlTnVtYmVycyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc3RyZW5ndGhFcnJvcnMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBwYXNzd29yZFN0cmVuZ3RoOiBzdHJlbmd0aEVycm9ycyB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25maXJtUGFzc3dvcmRWYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGlmICghY29udHJvbC5wYXJlbnQgfHwgIWNvbnRyb2wpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgcGFzc3dvcmQgPSBjb250cm9sLnBhcmVudC5nZXQoJ3Bhc3N3b3JkJyk7XG4gICAgY29uc3QgcGFzc3dvcmRDb25maXJtID0gY29udHJvbC5wYXJlbnQuZ2V0KCdwYXNzd29yZENvbmZpcm0nKTtcblxuICAgIGlmICghcGFzc3dvcmQgfHwgIXBhc3N3b3JkQ29uZmlybSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoIXBhc3N3b3JkLnZhbHVlICYmICFwYXNzd29yZENvbmZpcm0udmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHBhc3N3b3JkLnZhbHVlID09PSBwYXNzd29yZENvbmZpcm0udmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHBhc3N3b3JkLnZhbHVlICYmICFwYXNzd29yZENvbmZpcm0udmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHsgcGFzc3dvcmRDb25maXJtYXRpb25SZXF1aXJlZDogdHJ1ZSB9O1xuICAgIH1cblxuICAgIHJldHVybiB7IHBhc3N3b3Jkc05vdE1hdGNoaW5nOiB0cnVlIH07XG59XG4iXX0=
@@ -1,70 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { Component, Input, Output, EventEmitter, Inject, forwardRef } from '@angular/core';
3
- import { AuthProcessService, AuthProvider, MalSharedConfigToken, UiService } from 'ngx-firebase';
4
- import { BehaviorSubject, of } from 'rxjs';
5
- import { catchError, map, switchMap } from 'rxjs/operators';
6
- import { NgxAuthFirebaseuiAnimations } from '../../animations';
7
- export var Layout;
8
- (function (Layout) {
9
- Layout["ROW"] = "row";
10
- Layout["COLUMN"] = "column";
11
- })(Layout || (Layout = {}));
12
- const displayProviders = {
13
- google: { name: AuthProvider.Google, icon: 'logo-google', label: 'Google' },
14
- apple: { name: AuthProvider.Apple, icon: 'logo-apple', label: 'Apple' },
15
- facebook: { name: AuthProvider.Facebook, icon: 'logo-facebook', label: 'Facebook' },
16
- twitter: { name: AuthProvider.Twitter, icon: 'logo-twitter', label: 'Twitter' },
17
- github: { name: AuthProvider.Github, icon: 'logo-github', label: 'GitHub' },
18
- microsoft: { name: AuthProvider.Microsoft, label: 'Microsoft' },
19
- yahoo: { name: AuthProvider.Yahoo, icon: 'logo-yahoo', label: 'Yahoo' }
20
- };
21
- export class AuthProvidersComponent {
22
- constructor(aps, ui, config) {
23
- this.aps = aps;
24
- this.ui = ui;
25
- this.config = config;
26
- this.layout = Layout.ROW;
27
- this.providers$ = new BehaviorSubject(AuthProvider.ALL);
28
- this.providerClick = new EventEmitter();
29
- this.displayProviders$ = this.providers$.pipe(
30
- // Filter for those in config
31
- map(providerOrArray => {
32
- if (providerOrArray === AuthProvider.ALL) {
33
- providerOrArray = this.config.authUi.supportedProviders;
34
- }
35
- const providers = Array.isArray(providerOrArray) ? providerOrArray : [providerOrArray];
36
- return providers.filter(item => this.providers === AuthProvider.ALL || this.providers.includes(item));
37
- }),
38
- // Filter for those valid on platform
39
- switchMap((providers) => __awaiter(this, void 0, void 0, function* () {
40
- const providerFilter = yield Promise.all(providers.map(item => this.aps.isProviderSupported(item)));
41
- return providers.filter((_item, index) => providerFilter[index]);
42
- })),
43
- // Map to display type
44
- map(providers => providers.map(item => displayProviders[item])), catchError(error => {
45
- this.ui.logError(error);
46
- return of([]);
47
- }));
48
- }
49
- get providers() { return this.providers$.value; }
50
- set providers(val) { this.providers$.next(val); }
51
- }
52
- AuthProvidersComponent.decorators = [
53
- { type: Component, args: [{
54
- selector: 'mal-authui-providers',
55
- template: "<div [@animateStagger]=\"{ value: '50' }\">\n\n <!--default icon buttons-->\n <div [fxLayoutAlign]=\"layout == 'row' ? 'center' : 'stretch'\"\n [fxLayout]=\"layout\"\n fxLayout.xs=\"column\"\n class=\"provider-buttons\">\n\n <div *ngFor=\"let provider of (displayProviders$ | async)\">\n <ion-button [id]=\"'auth_provider_' + provider.name + '_btn'\"\n (click)=\"providerClick.emit(provider.name)\"\n [@animate]=\"{value:'*',params:{duration:'300ms',y:'100px'}}\"\n [class]=\"provider.name + ' authui-provider-button'\">\n\n <ion-icon *ngIf=\"provider.icon\" slot=\"start\" [name]=\"provider.icon\"></ion-icon>\n <ion-label slot=\"end\">{{ 'auth.provider.' + provider.name | translate }}</ion-label>\n\n </ion-button>\n </div>\n\n </div>\n</div>",
56
- animations: NgxAuthFirebaseuiAnimations,
57
- styles: [":host{display:block}ion-button.google{color:#db4437!important}ion-button.apple{color:#000!important}ion-button.facebook{color:#385899!important}ion-button.twitter{color:#1da1f2!important}ion-button.github{color:#000!important}ion-button.microsoft{color:#0078d4!important}ion-button.yahoo{color:#720e9e!important}ion-button.phone{color:#02bd7e}", "div.authui-logo{margin:32px auto;width:30%}div.authui-logo img{display:block;max-width:120px;border-radius:20px;margin-left:auto;margin-right:auto}div.authui-title{font-size:20px;margin:16px 0}div.authui-alternate-action{margin:32px auto 24px;font-weight:500}div.authui-alternate-action .text{margin-right:8px}ion-content.auth-page{--background:var(--auth-pages-background,--background)}div.resend-confirmation{margin:24px 0;font-size:.9em;text-align:center}ion-button.authui-provider-button{width:220px;margin:8px auto;display:block;text-align:center;--background:var(--auth-provider-background-color,#fff)}@media screen and (max-width:599px){ion-button.authui-provider-button{width:100%}}ion-button.authui-submit-button{width:220px;margin:16px auto;display:block}@media screen and (max-width:599px){ion-button.authui-submit-button{width:100%}}ion-grid.terms{width:100%;margin:24px 0;text-align:left;font-size:.9em}ion-grid.terms ion-col ion-row a{font-size:16px;margin-left:4px}div.forgot-password{margin:24px 0;font-size:.9em}@media (prefers-color-scheme:dark){a{color:#fff}}div.auth-ui-form{width:384px;max-width:384px;padding:32px;text-align:center;flex:1 0 auto}@media screen and (max-width:599px){div.auth-ui-form{padding:24px;width:100%}}div.auth-ui-form form{width:100%;text-align:left}div.authui-wrapper{width:100%;background-size:cover;flex:1 0 auto;padding:32px}@media screen and (max-width:599px){div.authui-wrapper{padding:16px}}button.confirm:disabled{color:grey}div.email-popover-outer{width:100%}div.email-popover-outer div.email-popover-inner{padding:10%}"]
58
- },] }
59
- ];
60
- AuthProvidersComponent.ctorParameters = () => [
61
- { type: AuthProcessService },
62
- { type: UiService },
63
- { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => MalSharedConfigToken),] }] }
64
- ];
65
- AuthProvidersComponent.propDecorators = {
66
- layout: [{ type: Input }],
67
- providers: [{ type: Input }],
68
- providerClick: [{ type: Output }]
69
- };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1maXJlYmFzZS9pb25pYy1hdXRoLXVpL3NyYy9jb21wb25lbnRzL3Byb3ZpZGVycy9wcm92aWRlcnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBbUIsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xILE9BQU8sRUFBRSxlQUFlLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9ELE1BQU0sQ0FBTixJQUFZLE1BR1g7QUFIRCxXQUFZLE1BQU07SUFDaEIscUJBQVcsQ0FBQTtJQUNYLDJCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFIVyxNQUFNLEtBQU4sTUFBTSxRQUdqQjtBQU9ELE1BQU0sZ0JBQWdCLEdBQXVDO0lBQzNELE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtJQUMzRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7SUFDdkUsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO0lBQ25GLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtJQUMvRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7SUFDM0UsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRTtJQUMvRCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7Q0FDeEUsQ0FBQztBQVVGLE1BQU0sT0FBTyxzQkFBc0I7SUFpQ2pDLFlBQ1MsR0FBdUIsRUFDdkIsRUFBYSxFQUNtQyxNQUF1QjtRQUZ2RSxRQUFHLEdBQUgsR0FBRyxDQUFvQjtRQUN2QixPQUFFLEdBQUYsRUFBRSxDQUFXO1FBQ21DLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBbEN2RSxXQUFNLEdBQVcsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUs3QixlQUFVLEdBQXFELElBQUksZUFBZSxDQUFlLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVqSCxrQkFBYSxHQUErQixJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUU5RSxzQkFBaUIsR0FBa0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1FBQzlFLDZCQUE2QjtRQUM3QixHQUFHLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDcEIsSUFBSSxlQUFlLEtBQUssWUFBWSxDQUFDLEdBQUcsRUFBRTtnQkFDeEMsZUFBZSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDO2FBQ3pEO1lBQ0QsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3ZGLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssWUFBWSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3hHLENBQUMsQ0FBQztRQUNGLHFDQUFxQztRQUNyQyxTQUFTLENBQUMsQ0FBTSxTQUFTLEVBQUMsRUFBRTtZQUMxQixNQUFNLGNBQWMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BHLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25FLENBQUMsQ0FBQSxDQUFDO1FBQ0Ysc0JBQXNCO1FBQ3RCLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQy9ELFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QixPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBT0YsQ0FBQztJQWxDRCxJQUNJLFNBQVMsS0FBc0MsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEYsSUFBSSxTQUFTLENBQUMsR0FBb0MsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7OztZQVpuRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsMjFCQUF1QztnQkFFdkMsVUFBVSxFQUFFLDJCQUEyQjs7YUFDeEM7OztZQWhDUSxrQkFBa0I7WUFBdUQsU0FBUzs0Q0FxRXRGLE1BQU0sU0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7OztxQkFsQy9DLEtBQUs7d0JBRUwsS0FBSzs0QkFLTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aFByb2Nlc3NTZXJ2aWNlLCBBdXRoUHJvdmlkZXIsIE1hbFNoYXJlZENvbmZpZ1Rva2VuLCBNYWxTaGFyZWRDb25maWcsIFVpU2VydmljZSB9IGZyb20gJ25neC1maXJlYmFzZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE5neEF1dGhGaXJlYmFzZXVpQW5pbWF0aW9ucyB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMnO1xuXG5leHBvcnQgZW51bSBMYXlvdXQge1xuICBST1cgPSAncm93JyxcbiAgQ09MVU1OID0gJ2NvbHVtbidcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwbGF5UHJvdmlkZXIge1xuICBuYW1lOiBBdXRoUHJvdmlkZXI7XG4gIGljb24/OiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG59XG5jb25zdCBkaXNwbGF5UHJvdmlkZXJzOiB7IFtrZXk6IHN0cmluZ106IERpc3BsYXlQcm92aWRlciB9ID0ge1xuICBnb29nbGU6IHsgbmFtZTogQXV0aFByb3ZpZGVyLkdvb2dsZSwgaWNvbjogJ2xvZ28tZ29vZ2xlJywgbGFiZWw6ICdHb29nbGUnIH0sXG4gIGFwcGxlOiB7IG5hbWU6IEF1dGhQcm92aWRlci5BcHBsZSwgaWNvbjogJ2xvZ28tYXBwbGUnLCBsYWJlbDogJ0FwcGxlJyB9LFxuICBmYWNlYm9vazogeyBuYW1lOiBBdXRoUHJvdmlkZXIuRmFjZWJvb2ssIGljb246ICdsb2dvLWZhY2Vib29rJywgbGFiZWw6ICdGYWNlYm9vaycgfSxcbiAgdHdpdHRlcjogeyBuYW1lOiBBdXRoUHJvdmlkZXIuVHdpdHRlciwgaWNvbjogJ2xvZ28tdHdpdHRlcicsIGxhYmVsOiAnVHdpdHRlcicgfSxcbiAgZ2l0aHViOiB7IG5hbWU6IEF1dGhQcm92aWRlci5HaXRodWIsIGljb246ICdsb2dvLWdpdGh1YicsIGxhYmVsOiAnR2l0SHViJyB9LFxuICBtaWNyb3NvZnQ6IHsgbmFtZTogQXV0aFByb3ZpZGVyLk1pY3Jvc29mdCwgbGFiZWw6ICdNaWNyb3NvZnQnIH0sXG4gIHlhaG9vOiB7IG5hbWU6IEF1dGhQcm92aWRlci5ZYWhvbywgaWNvbjogJ2xvZ28teWFob28nLCBsYWJlbDogJ1lhaG9vJyB9XG59O1xuXG5kZWNsYXJlIHR5cGUgUHJvdmlkZXJUeXBlID0gQXV0aFByb3ZpZGVyW10gfCBBdXRoUHJvdmlkZXI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hbC1hdXRodWktcHJvdmlkZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICdwcm92aWRlcnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsncHJvdmlkZXJzLmNvbXBvbmVudC5zY3NzJywgJy4uLy4uL2lvbmljLWF1dGgtdWkuc2NzcyddLFxuICBhbmltYXRpb25zOiBOZ3hBdXRoRmlyZWJhc2V1aUFuaW1hdGlvbnNcbn0pXG5leHBvcnQgY2xhc3MgQXV0aFByb3ZpZGVyc0NvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgbGF5b3V0OiBzdHJpbmcgPSBMYXlvdXQuUk9XO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBwcm92aWRlcnMoKTogUHJvdmlkZXJUeXBlIHwgQXV0aFByb3ZpZGVyLkFMTCB7IHJldHVybiB0aGlzLnByb3ZpZGVycyQudmFsdWU7IH1cbiAgc2V0IHByb3ZpZGVycyh2YWw6IFByb3ZpZGVyVHlwZSB8IEF1dGhQcm92aWRlci5BTEwpIHsgdGhpcy5wcm92aWRlcnMkLm5leHQodmFsKTsgfVxuICBwcml2YXRlIHByb3ZpZGVycyQ6IEJlaGF2aW9yU3ViamVjdDxQcm92aWRlclR5cGUgfCBBdXRoUHJvdmlkZXIuQUxMPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UHJvdmlkZXJUeXBlPihBdXRoUHJvdmlkZXIuQUxMKTtcblxuICBAT3V0cHV0KCkgcHJvdmlkZXJDbGljazogRXZlbnRFbWl0dGVyPEF1dGhQcm92aWRlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPEF1dGhQcm92aWRlcj4oKTtcblxuICByZWFkb25seSBkaXNwbGF5UHJvdmlkZXJzJDogT2JzZXJ2YWJsZTxEaXNwbGF5UHJvdmlkZXJbXT4gPSB0aGlzLnByb3ZpZGVycyQucGlwZShcbiAgICAvLyBGaWx0ZXIgZm9yIHRob3NlIGluIGNvbmZpZ1xuICAgIG1hcChwcm92aWRlck9yQXJyYXkgPT4ge1xuICAgICAgaWYgKHByb3ZpZGVyT3JBcnJheSA9PT0gQXV0aFByb3ZpZGVyLkFMTCkge1xuICAgICAgICBwcm92aWRlck9yQXJyYXkgPSB0aGlzLmNvbmZpZy5hdXRoVWkuc3VwcG9ydGVkUHJvdmlkZXJzO1xuICAgICAgfVxuICAgICAgY29uc3QgcHJvdmlkZXJzID0gQXJyYXkuaXNBcnJheShwcm92aWRlck9yQXJyYXkpID8gcHJvdmlkZXJPckFycmF5IDogW3Byb3ZpZGVyT3JBcnJheV07XG4gICAgICByZXR1cm4gcHJvdmlkZXJzLmZpbHRlcihpdGVtID0+IHRoaXMucHJvdmlkZXJzID09PSBBdXRoUHJvdmlkZXIuQUxMIHx8IHRoaXMucHJvdmlkZXJzLmluY2x1ZGVzKGl0ZW0pKTtcbiAgICB9KSxcbiAgICAvLyBGaWx0ZXIgZm9yIHRob3NlIHZhbGlkIG9uIHBsYXRmb3JtXG4gICAgc3dpdGNoTWFwKGFzeW5jIHByb3ZpZGVycyA9PiB7XG4gICAgICBjb25zdCBwcm92aWRlckZpbHRlciA9IGF3YWl0IFByb21pc2UuYWxsKHByb3ZpZGVycy5tYXAoaXRlbSA9PiB0aGlzLmFwcy5pc1Byb3ZpZGVyU3VwcG9ydGVkKGl0ZW0pKSk7XG4gICAgICByZXR1cm4gcHJvdmlkZXJzLmZpbHRlcigoX2l0ZW0sIGluZGV4KSA9PiBwcm92aWRlckZpbHRlcltpbmRleF0pO1xuICAgIH0pLFxuICAgIC8vIE1hcCB0byBkaXNwbGF5IHR5cGVcbiAgICBtYXAocHJvdmlkZXJzID0+IHByb3ZpZGVycy5tYXAoaXRlbSA9PiBkaXNwbGF5UHJvdmlkZXJzW2l0ZW1dKSksXG4gICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICB0aGlzLnVpLmxvZ0Vycm9yKGVycm9yKTtcbiAgICAgIHJldHVybiBvZihbXSk7XG4gICAgfSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgYXBzOiBBdXRoUHJvY2Vzc1NlcnZpY2UsXG4gICAgcHVibGljIHVpOiBVaVNlcnZpY2UsXG4gICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IE1hbFNoYXJlZENvbmZpZ1Rva2VuKSkgcHVibGljIGNvbmZpZzogTWFsU2hhcmVkQ29uZmlnXG4gICkge1xuICB9XG5cbn1cbiJdfQ==