@rolatech/angular-onboarding 20.3.0-beta.2 → 20.3.0-beta.4

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 (40) hide show
  1. package/README.md +1 -1
  2. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-detail-page-DREEMvoT.mjs +720 -0
  3. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-detail-page-DREEMvoT.mjs.map +1 -0
  4. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-index-page-DP7wffLd.mjs +313 -0
  5. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-index-page-DP7wffLd.mjs.map +1 -0
  6. package/fesm2022/rolatech-angular-onboarding-agent-apply-form-page-y02hYlN_.mjs +446 -0
  7. package/fesm2022/rolatech-angular-onboarding-agent-apply-form-page-y02hYlN_.mjs.map +1 -0
  8. package/fesm2022/rolatech-angular-onboarding-agent-apply-result-page-CEL4nWb_.mjs +141 -0
  9. package/fesm2022/rolatech-angular-onboarding-agent-apply-result-page-CEL4nWb_.mjs.map +1 -0
  10. package/fesm2022/rolatech-angular-onboarding-agent-apply-review-page-DG_D03YW.mjs +453 -0
  11. package/fesm2022/rolatech-angular-onboarding-agent-apply-review-page-DG_D03YW.mjs.map +1 -0
  12. package/fesm2022/{rolatech-angular-onboarding-agent-apply-shell-page-DibWYeD1.mjs → rolatech-angular-onboarding-agent-apply-shell-page-CaTvnFzk.mjs} +27 -40
  13. package/fesm2022/rolatech-angular-onboarding-agent-apply-shell-page-CaTvnFzk.mjs.map +1 -0
  14. package/fesm2022/{rolatech-angular-onboarding-agent-apply-start-page-DC7gyOnS.mjs → rolatech-angular-onboarding-agent-apply-start-page-BfqO2YWB.mjs} +31 -29
  15. package/fesm2022/rolatech-angular-onboarding-agent-apply-start-page-BfqO2YWB.mjs.map +1 -0
  16. package/fesm2022/{rolatech-angular-onboarding-agent-onboarding-documents-page-DWBGTj5J.mjs → rolatech-angular-onboarding-agent-onboarding-documents-page-BKDYZE0e.mjs} +79 -6
  17. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-documents-page-BKDYZE0e.mjs.map +1 -0
  18. package/fesm2022/rolatech-angular-onboarding.mjs +2251 -233
  19. package/fesm2022/rolatech-angular-onboarding.mjs.map +1 -1
  20. package/package.json +1 -1
  21. package/types/rolatech-angular-onboarding.d.ts +219 -12
  22. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-detail-page-DKJQX3cs.mjs +0 -224
  23. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-detail-page-DKJQX3cs.mjs.map +0 -1
  24. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-index-page-BO4pC_NU.mjs +0 -206
  25. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-index-page-BO4pC_NU.mjs.map +0 -1
  26. package/fesm2022/rolatech-angular-onboarding-agent-apply-banking-page-VYNfR4fy.mjs +0 -133
  27. package/fesm2022/rolatech-angular-onboarding-agent-apply-banking-page-VYNfR4fy.mjs.map +0 -1
  28. package/fesm2022/rolatech-angular-onboarding-agent-apply-financial-page-Ck3Rowke.mjs +0 -132
  29. package/fesm2022/rolatech-angular-onboarding-agent-apply-financial-page-Ck3Rowke.mjs.map +0 -1
  30. package/fesm2022/rolatech-angular-onboarding-agent-apply-profile-page-DNepDxHu.mjs +0 -122
  31. package/fesm2022/rolatech-angular-onboarding-agent-apply-profile-page-DNepDxHu.mjs.map +0 -1
  32. package/fesm2022/rolatech-angular-onboarding-agent-apply-qualification-page-CSwupuKt.mjs +0 -108
  33. package/fesm2022/rolatech-angular-onboarding-agent-apply-qualification-page-CSwupuKt.mjs.map +0 -1
  34. package/fesm2022/rolatech-angular-onboarding-agent-apply-review-page-DugCjfvK.mjs +0 -182
  35. package/fesm2022/rolatech-angular-onboarding-agent-apply-review-page-DugCjfvK.mjs.map +0 -1
  36. package/fesm2022/rolatech-angular-onboarding-agent-apply-shell-page-DibWYeD1.mjs.map +0 -1
  37. package/fesm2022/rolatech-angular-onboarding-agent-apply-start-page-DC7gyOnS.mjs.map +0 -1
  38. package/fesm2022/rolatech-angular-onboarding-agent-apply-submitted-page-BMkV2V8K.mjs +0 -55
  39. package/fesm2022/rolatech-angular-onboarding-agent-apply-submitted-page-BMkV2V8K.mjs.map +0 -1
  40. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-documents-page-DWBGTj5J.mjs.map +0 -1
@@ -1,122 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
- import * as i1 from '@angular/forms';
4
- import { ReactiveFormsModule } from '@angular/forms';
5
- import { Router, ActivatedRoute } from '@angular/router';
6
- import { AgentApplyFacade } from './rolatech-angular-onboarding.mjs';
7
-
8
- class AgentApplyProfilePage {
9
- facade = inject(AgentApplyFacade);
10
- router = inject(Router);
11
- route = inject(ActivatedRoute);
12
- async saveAndContinue() {
13
- const saved = await this.facade.saveProfile();
14
- if (!saved) {
15
- return;
16
- }
17
- await this.router.navigate(['../qualification'], {
18
- relativeTo: this.route,
19
- });
20
- }
21
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyProfilePage, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: AgentApplyProfilePage, isStandalone: true, selector: "rolatech-agent-apply-profile-page", host: { classAttribute: "block" }, ngImport: i0, template: `
23
- <form [formGroup]="facade.profileForm" class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm">
24
- <h2 class="text-lg font-semibold text-(--rt-text-primary)">Organization Profile</h2>
25
-
26
- <div class="mt-4 grid gap-4 md:grid-cols-2">
27
- <label class="grid gap-2 md:col-span-2">
28
- <span class="text-sm font-medium text-(--rt-text-secondary)">Organization name</span>
29
- <input formControlName="organizationName" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
30
- </label>
31
-
32
- <label class="grid gap-2">
33
- <span class="text-sm font-medium text-(--rt-text-secondary)">Contact name</span>
34
- <input formControlName="contactName" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
35
- </label>
36
-
37
- <label class="grid gap-2">
38
- <span class="text-sm font-medium text-(--rt-text-secondary)">Contact phone</span>
39
- <input formControlName="contactPhone" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
40
- </label>
41
-
42
- <label class="grid gap-2">
43
- <span class="text-sm font-medium text-(--rt-text-secondary)">Contact email</span>
44
- <input formControlName="contactEmail" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
45
- </label>
46
-
47
- <label class="grid gap-2">
48
- <span class="text-sm font-medium text-(--rt-text-secondary)">Country code</span>
49
- <input formControlName="countryCode" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
50
- </label>
51
- </div>
52
-
53
- <div class="mt-6 flex justify-end">
54
- <button
55
- type="button"
56
- class="rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60"
57
- [disabled]="facade.saving()"
58
- (click)="saveAndContinue()"
59
- >
60
- Save and Continue
61
- </button>
62
- </div>
63
- </form>
64
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
65
- }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyProfilePage, decorators: [{
67
- type: Component,
68
- args: [{
69
- selector: 'rolatech-agent-apply-profile-page',
70
- standalone: true,
71
- imports: [ReactiveFormsModule],
72
- changeDetection: ChangeDetectionStrategy.OnPush,
73
- encapsulation: ViewEncapsulation.None,
74
- host: { class: 'block' },
75
- template: `
76
- <form [formGroup]="facade.profileForm" class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm">
77
- <h2 class="text-lg font-semibold text-(--rt-text-primary)">Organization Profile</h2>
78
-
79
- <div class="mt-4 grid gap-4 md:grid-cols-2">
80
- <label class="grid gap-2 md:col-span-2">
81
- <span class="text-sm font-medium text-(--rt-text-secondary)">Organization name</span>
82
- <input formControlName="organizationName" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
83
- </label>
84
-
85
- <label class="grid gap-2">
86
- <span class="text-sm font-medium text-(--rt-text-secondary)">Contact name</span>
87
- <input formControlName="contactName" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
88
- </label>
89
-
90
- <label class="grid gap-2">
91
- <span class="text-sm font-medium text-(--rt-text-secondary)">Contact phone</span>
92
- <input formControlName="contactPhone" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
93
- </label>
94
-
95
- <label class="grid gap-2">
96
- <span class="text-sm font-medium text-(--rt-text-secondary)">Contact email</span>
97
- <input formControlName="contactEmail" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
98
- </label>
99
-
100
- <label class="grid gap-2">
101
- <span class="text-sm font-medium text-(--rt-text-secondary)">Country code</span>
102
- <input formControlName="countryCode" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
103
- </label>
104
- </div>
105
-
106
- <div class="mt-6 flex justify-end">
107
- <button
108
- type="button"
109
- class="rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60"
110
- [disabled]="facade.saving()"
111
- (click)="saveAndContinue()"
112
- >
113
- Save and Continue
114
- </button>
115
- </div>
116
- </form>
117
- `,
118
- }]
119
- }] });
120
-
121
- export { AgentApplyProfilePage };
122
- //# sourceMappingURL=rolatech-angular-onboarding-agent-apply-profile-page-DNepDxHu.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-apply-profile-page-DNepDxHu.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-apply/agent-apply-profile-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AgentApplyFacade } from '../../store/agent-apply.facade';\n\n@Component({\n selector: 'rolatech-agent-apply-profile-page',\n standalone: true,\n imports: [ReactiveFormsModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n <form [formGroup]=\"facade.profileForm\" class=\"rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm\">\n <h2 class=\"text-lg font-semibold text-(--rt-text-primary)\">Organization Profile</h2>\n\n <div class=\"mt-4 grid gap-4 md:grid-cols-2\">\n <label class=\"grid gap-2 md:col-span-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Organization name</span>\n <input formControlName=\"organizationName\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\" />\n </label>\n\n <label class=\"grid gap-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Contact name</span>\n <input formControlName=\"contactName\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\" />\n </label>\n\n <label class=\"grid gap-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Contact phone</span>\n <input formControlName=\"contactPhone\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\" />\n </label>\n\n <label class=\"grid gap-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Contact email</span>\n <input formControlName=\"contactEmail\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\" />\n </label>\n\n <label class=\"grid gap-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Country code</span>\n <input formControlName=\"countryCode\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\" />\n </label>\n </div>\n\n <div class=\"mt-6 flex justify-end\">\n <button\n type=\"button\"\n class=\"rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60\"\n [disabled]=\"facade.saving()\"\n (click)=\"saveAndContinue()\"\n >\n Save and Continue\n </button>\n </div>\n </form>\n `,\n})\nexport class AgentApplyProfilePage {\n readonly facade = inject(AgentApplyFacade);\n private readonly router = inject(Router);\n private readonly route = inject(ActivatedRoute);\n\n async saveAndContinue(): Promise<void> {\n const saved = await this.facade.saveProfile();\n\n if (!saved) {\n return;\n }\n\n await this.router.navigate(['../qualification'], {\n relativeTo: this.route,\n });\n }\n}\n"],"names":[],"mappings":";;;;;;;MAwDa,qBAAqB,CAAA;AACvB,IAAA,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzB,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAE/C,IAAA,MAAM,eAAe,GAAA;QACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QAE7C,IAAI,CAAC,KAAK,EAAE;YACV;QACF;QAEA,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE;YAC/C,UAAU,EAAE,IAAI,CAAC,KAAK;AACvB,SAAA,CAAC;IACJ;uGAfW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5CtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EA9CS,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAgDlB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAnDjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mCAAmC;AAC7C,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,mBAAmB,CAAC;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;AACxB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CT,EAAA,CAAA;AACF,iBAAA;;;;;"}
@@ -1,108 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
- import { Router, ActivatedRoute } from '@angular/router';
4
- import { AgentApplyFacade, OnboardingDocumentUploader } from './rolatech-angular-onboarding.mjs';
5
-
6
- class AgentApplyQualificationPage {
7
- facade = inject(AgentApplyFacade);
8
- router = inject(Router);
9
- route = inject(ActivatedRoute);
10
- async onUpload(documentType, file, replacedDocumentId) {
11
- await this.facade.uploadDocument(documentType, file, replacedDocumentId);
12
- }
13
- async back() {
14
- await this.router.navigate(['../profile'], {
15
- relativeTo: this.route,
16
- });
17
- }
18
- async next() {
19
- await this.router.navigate(['../financial'], {
20
- relativeTo: this.route,
21
- });
22
- }
23
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyQualificationPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AgentApplyQualificationPage, isStandalone: true, selector: "rolatech-agent-apply-qualification-page", host: { classAttribute: "block" }, ngImport: i0, template: `
25
- <section class="space-y-4 rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm">
26
- <h2 class="text-lg font-semibold text-(--rt-text-primary)">Qualification Documents</h2>
27
- <p class="text-sm text-(--rt-text-secondary)">Upload all required documents before moving to the next step.</p>
28
-
29
- @for (documentSpec of facade.requiredDocuments(); track documentSpec.type) {
30
- <rolatech-onboarding-document-uploader
31
- [label]="documentSpec.label"
32
- [documentType]="documentSpec.type"
33
- [document]="facade.getDocument(documentSpec.type)"
34
- [comment]="facade.getIssueComment(documentSpec.type)"
35
- [busy]="facade.saving()"
36
- (fileSelected)="onUpload($event.documentType, $event.file, $event.replacedDocumentId)"
37
- />
38
- }
39
-
40
- <div class="flex justify-between gap-3 pt-2">
41
- <button
42
- type="button"
43
- class="rounded-xl border border-(--rt-border-color) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)"
44
- (click)="back()"
45
- >
46
- Back
47
- </button>
48
-
49
- <button
50
- type="button"
51
- class="rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90"
52
- (click)="next()"
53
- >
54
- Continue
55
- </button>
56
- </div>
57
- </section>
58
- `, isInline: true, dependencies: [{ kind: "component", type: OnboardingDocumentUploader, selector: "rolatech-onboarding-document-uploader", inputs: ["label", "helperText", "documentType", "document", "comment", "busy", "acceptedTypes"], outputs: ["fileSelected"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
59
- }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyQualificationPage, decorators: [{
61
- type: Component,
62
- args: [{
63
- selector: 'rolatech-agent-apply-qualification-page',
64
- standalone: true,
65
- imports: [OnboardingDocumentUploader],
66
- changeDetection: ChangeDetectionStrategy.OnPush,
67
- encapsulation: ViewEncapsulation.None,
68
- host: { class: 'block' },
69
- template: `
70
- <section class="space-y-4 rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm">
71
- <h2 class="text-lg font-semibold text-(--rt-text-primary)">Qualification Documents</h2>
72
- <p class="text-sm text-(--rt-text-secondary)">Upload all required documents before moving to the next step.</p>
73
-
74
- @for (documentSpec of facade.requiredDocuments(); track documentSpec.type) {
75
- <rolatech-onboarding-document-uploader
76
- [label]="documentSpec.label"
77
- [documentType]="documentSpec.type"
78
- [document]="facade.getDocument(documentSpec.type)"
79
- [comment]="facade.getIssueComment(documentSpec.type)"
80
- [busy]="facade.saving()"
81
- (fileSelected)="onUpload($event.documentType, $event.file, $event.replacedDocumentId)"
82
- />
83
- }
84
-
85
- <div class="flex justify-between gap-3 pt-2">
86
- <button
87
- type="button"
88
- class="rounded-xl border border-(--rt-border-color) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)"
89
- (click)="back()"
90
- >
91
- Back
92
- </button>
93
-
94
- <button
95
- type="button"
96
- class="rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90"
97
- (click)="next()"
98
- >
99
- Continue
100
- </button>
101
- </div>
102
- </section>
103
- `,
104
- }]
105
- }] });
106
-
107
- export { AgentApplyQualificationPage };
108
- //# sourceMappingURL=rolatech-angular-onboarding-agent-apply-qualification-page-CSwupuKt.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-apply-qualification-page-CSwupuKt.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-apply/agent-apply-qualification-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { OnboardingDocumentType } from '@rolatech/angular-services';\nimport { OnboardingDocumentUploader } from '../../components/onboarding/onboarding-document-uploader';\nimport { AgentApplyFacade } from '../../store/agent-apply.facade';\n\n@Component({\n selector: 'rolatech-agent-apply-qualification-page',\n standalone: true,\n imports: [OnboardingDocumentUploader],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n <section class=\"space-y-4 rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm\">\n <h2 class=\"text-lg font-semibold text-(--rt-text-primary)\">Qualification Documents</h2>\n <p class=\"text-sm text-(--rt-text-secondary)\">Upload all required documents before moving to the next step.</p>\n\n @for (documentSpec of facade.requiredDocuments(); track documentSpec.type) {\n <rolatech-onboarding-document-uploader\n [label]=\"documentSpec.label\"\n [documentType]=\"documentSpec.type\"\n [document]=\"facade.getDocument(documentSpec.type)\"\n [comment]=\"facade.getIssueComment(documentSpec.type)\"\n [busy]=\"facade.saving()\"\n (fileSelected)=\"onUpload($event.documentType, $event.file, $event.replacedDocumentId)\"\n />\n }\n\n <div class=\"flex justify-between gap-3 pt-2\">\n <button\n type=\"button\"\n class=\"rounded-xl border border-(--rt-border-color) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)\"\n (click)=\"back()\"\n >\n Back\n </button>\n\n <button\n type=\"button\"\n class=\"rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90\"\n (click)=\"next()\"\n >\n Continue\n </button>\n </div>\n </section>\n `,\n})\nexport class AgentApplyQualificationPage {\n readonly facade = inject(AgentApplyFacade);\n private readonly router = inject(Router);\n private readonly route = inject(ActivatedRoute);\n\n async onUpload(documentType: OnboardingDocumentType, file: File, replacedDocumentId?: string): Promise<void> {\n await this.facade.uploadDocument(documentType, file, replacedDocumentId);\n }\n\n async back(): Promise<void> {\n await this.router.navigate(['../profile'], {\n relativeTo: this.route,\n });\n }\n\n async next(): Promise<void> {\n await this.router.navigate(['../financial'], {\n relativeTo: this.route,\n });\n }\n}\n"],"names":[],"mappings":";;;;;MAiDa,2BAA2B,CAAA;AAC7B,IAAA,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzB,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAE/C,IAAA,MAAM,QAAQ,CAAC,YAAoC,EAAE,IAAU,EAAE,kBAA2B,EAAA;AAC1F,QAAA,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,kBAAkB,CAAC;IAC1E;AAEA,IAAA,MAAM,IAAI,GAAA;QACR,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE;YACzC,UAAU,EAAE,IAAI,CAAC,KAAK;AACvB,SAAA,CAAC;IACJ;AAEA,IAAA,MAAM,IAAI,GAAA;QACR,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE;YAC3C,UAAU,EAAE,IAAI,CAAC,KAAK;AACvB,SAAA,CAAC;IACJ;uGAnBW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yCAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAtCS,0BAA0B,EAAA,QAAA,EAAA,uCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,SAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAwCzB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBA3CvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yCAAyC;AACnD,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,0BAA0B,CAAC;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;AACxB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCT,EAAA,CAAA;AACF,iBAAA;;;;;"}
@@ -1,182 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, signal, computed, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
- import { Router, ActivatedRoute } from '@angular/router';
4
- import { onboardingVatModeLabel } from '@rolatech/angular-services';
5
- import { AgentApplyFacade, OnboardingSummaryCard, OnboardingIssueList, OnboardingTimelineDrawer } from './rolatech-angular-onboarding.mjs';
6
-
7
- class AgentApplyReviewPage {
8
- facade = inject(AgentApplyFacade);
9
- timelineOpen = signal(false, ...(ngDevMode ? [{ debugName: "timelineOpen" }] : []));
10
- router = inject(Router);
11
- route = inject(ActivatedRoute);
12
- profileItems = computed(() => {
13
- const detail = this.facade.detail();
14
- if (!detail) {
15
- return [];
16
- }
17
- return [
18
- { label: 'Organization', value: detail.organizationName },
19
- { label: 'Contact name', value: detail.contactName },
20
- { label: 'Contact email', value: detail.contactEmail },
21
- { label: 'Contact phone', value: detail.contactPhone },
22
- { label: 'Country code', value: detail.countryCode },
23
- ];
24
- }, ...(ngDevMode ? [{ debugName: "profileItems" }] : []));
25
- financialItems = computed(() => {
26
- const detail = this.facade.detail();
27
- if (!detail) {
28
- return [];
29
- }
30
- return [
31
- { label: 'VAT mode', value: onboardingVatModeLabel(detail.vatMode ?? null) },
32
- { label: 'VAT number', value: detail.vatNumber },
33
- ];
34
- }, ...(ngDevMode ? [{ debugName: "financialItems" }] : []));
35
- bankingItems = computed(() => {
36
- const detail = this.facade.detail();
37
- if (!detail) {
38
- return [];
39
- }
40
- return [
41
- { label: 'Bank name', value: detail.bankName },
42
- { label: 'Account holder', value: detail.accountHolderName },
43
- { label: 'Sort code', value: detail.sortCode },
44
- { label: 'Account number', value: detail.accountNumber },
45
- ];
46
- }, ...(ngDevMode ? [{ debugName: "bankingItems" }] : []));
47
- async submit() {
48
- const submitted = await this.facade.submit();
49
- if (!submitted) {
50
- return;
51
- }
52
- await this.router.navigate(['../submitted'], {
53
- relativeTo: this.route,
54
- });
55
- }
56
- async back() {
57
- await this.router.navigate(['../banking'], {
58
- relativeTo: this.route,
59
- });
60
- }
61
- openTimeline() {
62
- this.timelineOpen.set(true);
63
- }
64
- closeTimeline() {
65
- this.timelineOpen.set(false);
66
- }
67
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyReviewPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
68
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AgentApplyReviewPage, isStandalone: true, selector: "rolatech-agent-apply-review-page", host: { classAttribute: "block" }, ngImport: i0, template: `
69
- @if (facade.detail(); as detail) {
70
- <div class="space-y-4">
71
- <rolatech-onboarding-summary-card [title]="'Profile'" [items]="profileItems()" />
72
- <rolatech-onboarding-summary-card [title]="'Financial'" [items]="financialItems()" />
73
- <rolatech-onboarding-summary-card [title]="'Banking'" [items]="bankingItems()" />
74
-
75
- <rolatech-onboarding-issue-list [issues]="detail.issues" />
76
-
77
- <section class="flex justify-between gap-3 rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 shadow-sm">
78
- <div class="flex items-center gap-2">
79
- <button
80
- type="button"
81
- class="rounded-xl border border-(--rt-border-color) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)"
82
- (click)="back()"
83
- >
84
- Back
85
- </button>
86
-
87
- <button
88
- type="button"
89
- class="rounded-xl border border-(--rt-border-color) bg-(--rt-base-background) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)"
90
- (click)="openTimeline()"
91
- >
92
- Timeline
93
- </button>
94
- </div>
95
-
96
- <button
97
- type="button"
98
- class="rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60"
99
- [disabled]="facade.submitting()"
100
- (click)="submit()"
101
- >
102
- Submit Application
103
- </button>
104
- </section>
105
-
106
- <rolatech-onboarding-timeline-drawer
107
- [open]="timelineOpen()"
108
- [title]="'Application Timeline'"
109
- [items]="detail.timeline"
110
- [zIndex]="9100"
111
- (closeRequested)="closeTimeline()"
112
- />
113
- </div>
114
- } @else {
115
- <div class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm">Loading application summary...</div>
116
- }
117
- `, isInline: true, dependencies: [{ kind: "component", type: OnboardingSummaryCard, selector: "rolatech-onboarding-summary-card", inputs: ["title", "items"] }, { kind: "component", type: OnboardingIssueList, selector: "rolatech-onboarding-issue-list", inputs: ["issues"] }, { kind: "component", type: OnboardingTimelineDrawer, selector: "rolatech-onboarding-timeline-drawer", inputs: ["open", "title", "items", "zIndex"], outputs: ["closeRequested"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
118
- }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyReviewPage, decorators: [{
120
- type: Component,
121
- args: [{
122
- selector: 'rolatech-agent-apply-review-page',
123
- standalone: true,
124
- imports: [OnboardingSummaryCard, OnboardingIssueList, OnboardingTimelineDrawer],
125
- changeDetection: ChangeDetectionStrategy.OnPush,
126
- encapsulation: ViewEncapsulation.None,
127
- host: { class: 'block' },
128
- template: `
129
- @if (facade.detail(); as detail) {
130
- <div class="space-y-4">
131
- <rolatech-onboarding-summary-card [title]="'Profile'" [items]="profileItems()" />
132
- <rolatech-onboarding-summary-card [title]="'Financial'" [items]="financialItems()" />
133
- <rolatech-onboarding-summary-card [title]="'Banking'" [items]="bankingItems()" />
134
-
135
- <rolatech-onboarding-issue-list [issues]="detail.issues" />
136
-
137
- <section class="flex justify-between gap-3 rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 shadow-sm">
138
- <div class="flex items-center gap-2">
139
- <button
140
- type="button"
141
- class="rounded-xl border border-(--rt-border-color) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)"
142
- (click)="back()"
143
- >
144
- Back
145
- </button>
146
-
147
- <button
148
- type="button"
149
- class="rounded-xl border border-(--rt-border-color) bg-(--rt-base-background) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)"
150
- (click)="openTimeline()"
151
- >
152
- Timeline
153
- </button>
154
- </div>
155
-
156
- <button
157
- type="button"
158
- class="rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60"
159
- [disabled]="facade.submitting()"
160
- (click)="submit()"
161
- >
162
- Submit Application
163
- </button>
164
- </section>
165
-
166
- <rolatech-onboarding-timeline-drawer
167
- [open]="timelineOpen()"
168
- [title]="'Application Timeline'"
169
- [items]="detail.timeline"
170
- [zIndex]="9100"
171
- (closeRequested)="closeTimeline()"
172
- />
173
- </div>
174
- } @else {
175
- <div class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm">Loading application summary...</div>
176
- }
177
- `,
178
- }]
179
- }] });
180
-
181
- export { AgentApplyReviewPage };
182
- //# sourceMappingURL=rolatech-angular-onboarding-agent-apply-review-page-DugCjfvK.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-apply-review-page-DugCjfvK.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-apply/agent-apply-review-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, inject, signal, ViewEncapsulation } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { onboardingVatModeLabel } from '@rolatech/angular-services';\nimport { OnboardingIssueList } from '../../components/onboarding/onboarding-issue-list';\nimport { OnboardingSummaryCard } from '../../components/onboarding/onboarding-summary-card';\nimport { OnboardingTimelineDrawer } from '../../components/onboarding/onboarding-timeline-drawer';\nimport { AgentApplyFacade } from '../../store/agent-apply.facade';\n\n@Component({\n selector: 'rolatech-agent-apply-review-page',\n standalone: true,\n imports: [OnboardingSummaryCard, OnboardingIssueList, OnboardingTimelineDrawer],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n @if (facade.detail(); as detail) {\n <div class=\"space-y-4\">\n <rolatech-onboarding-summary-card [title]=\"'Profile'\" [items]=\"profileItems()\" />\n <rolatech-onboarding-summary-card [title]=\"'Financial'\" [items]=\"financialItems()\" />\n <rolatech-onboarding-summary-card [title]=\"'Banking'\" [items]=\"bankingItems()\" />\n\n <rolatech-onboarding-issue-list [issues]=\"detail.issues\" />\n\n <section class=\"flex justify-between gap-3 rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 shadow-sm\">\n <div class=\"flex items-center gap-2\">\n <button\n type=\"button\"\n class=\"rounded-xl border border-(--rt-border-color) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)\"\n (click)=\"back()\"\n >\n Back\n </button>\n\n <button\n type=\"button\"\n class=\"rounded-xl border border-(--rt-border-color) bg-(--rt-base-background) px-4 py-2.5 text-sm font-medium text-(--rt-text-secondary) transition hover:bg-(--rt-raised-background)\"\n (click)=\"openTimeline()\"\n >\n Timeline\n </button>\n </div>\n\n <button\n type=\"button\"\n class=\"rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60\"\n [disabled]=\"facade.submitting()\"\n (click)=\"submit()\"\n >\n Submit Application\n </button>\n </section>\n\n <rolatech-onboarding-timeline-drawer\n [open]=\"timelineOpen()\"\n [title]=\"'Application Timeline'\"\n [items]=\"detail.timeline\"\n [zIndex]=\"9100\"\n (closeRequested)=\"closeTimeline()\"\n />\n </div>\n } @else {\n <div class=\"rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm\">Loading application summary...</div>\n }\n `,\n})\nexport class AgentApplyReviewPage {\n readonly facade = inject(AgentApplyFacade);\n readonly timelineOpen = signal(false);\n private readonly router = inject(Router);\n private readonly route = inject(ActivatedRoute);\n\n readonly profileItems = computed(() => {\n const detail = this.facade.detail();\n\n if (!detail) {\n return [];\n }\n\n return [\n { label: 'Organization', value: detail.organizationName },\n { label: 'Contact name', value: detail.contactName },\n { label: 'Contact email', value: detail.contactEmail },\n { label: 'Contact phone', value: detail.contactPhone },\n { label: 'Country code', value: detail.countryCode },\n ];\n });\n\n readonly financialItems = computed(() => {\n const detail = this.facade.detail();\n\n if (!detail) {\n return [];\n }\n\n return [\n { label: 'VAT mode', value: onboardingVatModeLabel(detail.vatMode ?? null) },\n { label: 'VAT number', value: detail.vatNumber },\n ];\n });\n\n readonly bankingItems = computed(() => {\n const detail = this.facade.detail();\n\n if (!detail) {\n return [];\n }\n\n return [\n { label: 'Bank name', value: detail.bankName },\n { label: 'Account holder', value: detail.accountHolderName },\n { label: 'Sort code', value: detail.sortCode },\n { label: 'Account number', value: detail.accountNumber },\n ];\n });\n\n async submit(): Promise<void> {\n const submitted = await this.facade.submit();\n\n if (!submitted) {\n return;\n }\n\n await this.router.navigate(['../submitted'], {\n relativeTo: this.route,\n });\n }\n\n async back(): Promise<void> {\n await this.router.navigate(['../banking'], {\n relativeTo: this.route,\n });\n }\n\n openTimeline(): void {\n this.timelineOpen.set(true);\n }\n\n closeTimeline(): void {\n this.timelineOpen.set(false);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-apply-shell-page-DibWYeD1.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-apply/agent-apply-shell-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, effect, inject, ViewEncapsulation } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute, Router, RouterOutlet } from '@angular/router';\nimport { map, startWith } from 'rxjs';\nimport { OnboardingPageShell } from '../../components/onboarding/onboarding-page-shell';\nimport { OnboardingStatusBadge } from '../../components/onboarding/onboarding-status-badge';\nimport { OnboardingStepNav } from '../../components/onboarding/onboarding-step-nav';\nimport { ApplyStepNavItem } from '../../models/onboarding-ui.models';\nimport { AgentApplyFacade } from '../../store/agent-apply.facade';\n\n@Component({\n selector: 'rolatech-agent-apply-shell-page',\n standalone: true,\n imports: [RouterOutlet, OnboardingPageShell, OnboardingStatusBadge, OnboardingStepNav],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n <rolatech-onboarding-page-shell\n title=\"PrimeCasa Agent Application\"\n subtitle=\"Complete each step to submit your onboarding application for admin review.\"\n kicker=\"Public Apply\"\n >\n <div header-actions>\n <rolatech-onboarding-status-badge [status]=\"facade.status()\" />\n </div>\n\n <rolatech-onboarding-step-nav [steps]=\"steps()\" [activeStep]=\"activeStep()\" />\n\n @if (facade.error()) {\n <div class=\"rounded-2xl border border-rose-200 bg-rose-50 px-4 py-3 text-sm text-rose-700\">{{ facade.error() }}</div>\n }\n\n @if (!facade.detail() && facade.loading()) {\n <div class=\"rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) px-4 py-6 text-sm text-(--rt-text-secondary) shadow-sm\">Loading application...</div>\n }\n\n <router-outlet />\n </rolatech-onboarding-page-shell>\n `,\n})\nexport class AgentApplyShellPage {\n readonly facade = inject(AgentApplyFacade);\n private readonly route = inject(ActivatedRoute);\n private readonly router = inject(Router);\n\n private readonly paramMap = toSignal(this.route.paramMap, {\n initialValue: this.route.snapshot.paramMap,\n });\n\n private readonly currentUrl = toSignal(\n this.router.events.pipe(\n startWith(null),\n map(() => this.router.url),\n ),\n {\n initialValue: this.router.url,\n },\n );\n\n readonly activeStep = computed(() => {\n const parts = this.currentUrl().split('/').filter(Boolean);\n const maybeStep = parts[parts.length - 1] ?? '';\n switch (maybeStep) {\n case 'profile':\n case 'qualification':\n case 'financial':\n case 'banking':\n case 'review':\n case 'submitted':\n return maybeStep;\n default:\n return 'profile';\n }\n });\n\n readonly steps = computed<ApplyStepNavItem[]>(() => {\n const completion = this.facade.completion();\n\n return [\n {\n label: 'Profile',\n step: 'profile',\n link: ['profile'],\n completed: completion.profile,\n accessible: this.facade.canAccessStep('profile'),\n },\n {\n label: 'Qualification',\n step: 'qualification',\n link: ['qualification'],\n completed: completion.qualification,\n accessible: this.facade.canAccessStep('qualification'),\n },\n {\n label: 'Financial',\n step: 'financial',\n link: ['financial'],\n completed: completion.financial,\n accessible: this.facade.canAccessStep('financial'),\n },\n {\n label: 'Banking',\n step: 'banking',\n link: ['banking'],\n completed: completion.banking,\n accessible: this.facade.canAccessStep('banking'),\n },\n {\n label: 'Review',\n step: 'review',\n link: ['review'],\n completed: completion.profile && completion.qualification && completion.financial && completion.banking,\n accessible: this.facade.canAccessStep('review'),\n },\n {\n label: 'Submitted',\n step: 'submitted',\n link: ['submitted'],\n completed: this.facade.canAccessStep('submitted'),\n accessible: this.facade.canAccessStep('submitted'),\n },\n ];\n });\n\n constructor() {\n effect(() => {\n const applicationId = this.paramMap().get('applicationId');\n\n if (!applicationId) {\n return;\n }\n\n void this.facade.ensureLoaded(applicationId);\n });\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-apply-start-page-DC7gyOnS.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-apply/agent-apply-start-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { FormBuilder, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { CreateOnboardingApplicationRequest } from '@rolatech/angular-services';\nimport { OnboardingPageShell } from '../../components/onboarding/onboarding-page-shell';\nimport { AgentApplyFacade } from '../../store/agent-apply.facade';\n\n@Component({\n selector: 'rolatech-agent-apply-start-page',\n standalone: true,\n imports: [ReactiveFormsModule, OnboardingPageShell],\n providers: [AgentApplyFacade],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n <rolatech-onboarding-page-shell\n title=\"Apply to Join PrimeCasa\"\n subtitle=\"Tell us who you are and create your onboarding application in one step.\"\n kicker=\"Public Apply\"\n >\n <form [formGroup]=\"form\" class=\"rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm\">\n <div class=\"grid gap-4 md:grid-cols-2\">\n <label class=\"grid gap-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Application ID</span>\n <input formControlName=\"applicationId\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\" />\n </label>\n\n <label class=\"grid gap-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Applicant Type</span>\n <select formControlName=\"applicantType\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\">\n <option value=\"INDIVIDUAL\">Individual</option>\n <option value=\"COMPANY\">Company</option>\n </select>\n </label>\n\n <label class=\"grid gap-2 md:col-span-2\">\n <span class=\"text-sm font-medium text-(--rt-text-secondary)\">Company Country</span>\n <select formControlName=\"companyCountry\" class=\"h-11 rounded-xl border border-(--rt-border-color) px-3\">\n <option value=\"UK\">United Kingdom</option>\n <option value=\"CN\">China</option>\n <option value=\"OTHER\">Other</option>\n </select>\n </label>\n </div>\n\n @if (facade.error()) {\n <p class=\"mt-4 rounded-xl border border-rose-200 bg-rose-50 px-3 py-2 text-sm text-rose-700\">{{ facade.error() }}</p>\n }\n\n <div class=\"mt-6 flex justify-end\">\n <button\n type=\"button\"\n class=\"rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60\"\n [disabled]=\"form.invalid || facade.loading()\"\n (click)=\"onStart()\"\n >\n Create Application\n </button>\n </div>\n </form>\n </rolatech-onboarding-page-shell>\n `,\n})\nexport class AgentApplyStartPage {\n readonly facade = inject(AgentApplyFacade);\n private readonly fb = inject(FormBuilder);\n private readonly router = inject(Router);\n private readonly route = inject(ActivatedRoute);\n\n readonly form = this.fb.nonNullable.group({\n applicationId: ['primecasa', [Validators.required]],\n applicantType: ['INDIVIDUAL', [Validators.required]],\n companyCountry: ['UK', [Validators.required]],\n });\n\n async onStart(): Promise<void> {\n if (this.form.invalid) {\n this.form.markAllAsTouched();\n return;\n }\n\n const payload = this.form.getRawValue() as CreateOnboardingApplicationRequest;\n const response = await this.facade.start(payload);\n\n if (!response) {\n return;\n }\n\n await this.router.navigate([response.id, 'profile'], {\n relativeTo: this.route,\n });\n }\n}\n"],"names":[],"mappings":";;;;;;;MAgEa,mBAAmB,CAAA;AACrB,IAAA,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzB,IAAA,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;AACxB,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;IAEtC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;QACxC,aAAa,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnD,aAAa,EAAE,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACpD,cAAc,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC9C,KAAA,CAAC;AAEF,IAAA,MAAM,OAAO,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AACrB,YAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC5B;QACF;QAEA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAwC;QAC7E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QAEjD,IAAI,CAAC,QAAQ,EAAE;YACb;QACF;AAEA,QAAA,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE;YACnD,UAAU,EAAE,IAAI,CAAC,KAAK;AACvB,SAAA,CAAC;IACJ;uGA5BW,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EArDnB,CAAC,gBAAgB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAInB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CT,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EApDS,mBAAmB,o3CAAE,mBAAmB,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAsDvC,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAzD/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iCAAiC;AAC3C,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;oBACnD,SAAS,EAAE,CAAC,gBAAgB,CAAC;oBAC7B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;AACxB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CT,EAAA,CAAA;AACF,iBAAA;;;;;"}
@@ -1,55 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
- import { RouterLink } from '@angular/router';
4
-
5
- class AgentApplySubmittedPage {
6
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplySubmittedPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: AgentApplySubmittedPage, isStandalone: true, selector: "rolatech-agent-apply-submitted-page", host: { classAttribute: "block" }, ngImport: i0, template: `
8
- <section class="rounded-2xl border border-emerald-200 bg-emerald-50 p-8 text-center shadow-sm">
9
- <h2 class="text-2xl font-semibold tracking-tight text-emerald-900">Application Submitted</h2>
10
- <p class="mt-3 text-sm text-emerald-800">
11
- Your onboarding application has been sent to PrimeCasa administrators for review.
12
- </p>
13
-
14
- <div class="mt-6 flex flex-wrap justify-center gap-3">
15
- <a
16
- [routerLink]="['../review']"
17
- class="rounded-xl border border-emerald-300 px-4 py-2 text-sm font-medium text-emerald-900 transition hover:bg-emerald-100 cursor-pointer"
18
- >
19
- View Submission
20
- </a>
21
- </div>
22
- </section>
23
- `, isInline: true, dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
24
- }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplySubmittedPage, decorators: [{
26
- type: Component,
27
- args: [{
28
- selector: 'rolatech-agent-apply-submitted-page',
29
- standalone: true,
30
- imports: [RouterLink],
31
- changeDetection: ChangeDetectionStrategy.OnPush,
32
- encapsulation: ViewEncapsulation.None,
33
- host: { class: 'block' },
34
- template: `
35
- <section class="rounded-2xl border border-emerald-200 bg-emerald-50 p-8 text-center shadow-sm">
36
- <h2 class="text-2xl font-semibold tracking-tight text-emerald-900">Application Submitted</h2>
37
- <p class="mt-3 text-sm text-emerald-800">
38
- Your onboarding application has been sent to PrimeCasa administrators for review.
39
- </p>
40
-
41
- <div class="mt-6 flex flex-wrap justify-center gap-3">
42
- <a
43
- [routerLink]="['../review']"
44
- class="rounded-xl border border-emerald-300 px-4 py-2 text-sm font-medium text-emerald-900 transition hover:bg-emerald-100 cursor-pointer"
45
- >
46
- View Submission
47
- </a>
48
- </div>
49
- </section>
50
- `,
51
- }]
52
- }] });
53
-
54
- export { AgentApplySubmittedPage };
55
- //# sourceMappingURL=rolatech-angular-onboarding-agent-apply-submitted-page-BMkV2V8K.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-apply-submitted-page-BMkV2V8K.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-apply/agent-apply-submitted-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\n@Component({\n selector: 'rolatech-agent-apply-submitted-page',\n standalone: true,\n imports: [RouterLink],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n <section class=\"rounded-2xl border border-emerald-200 bg-emerald-50 p-8 text-center shadow-sm\">\n <h2 class=\"text-2xl font-semibold tracking-tight text-emerald-900\">Application Submitted</h2>\n <p class=\"mt-3 text-sm text-emerald-800\">\n Your onboarding application has been sent to PrimeCasa administrators for review.\n </p>\n\n <div class=\"mt-6 flex flex-wrap justify-center gap-3\">\n <a\n [routerLink]=\"['../review']\"\n class=\"rounded-xl border border-emerald-300 px-4 py-2 text-sm font-medium text-emerald-900 transition hover:bg-emerald-100 cursor-pointer\"\n >\n View Submission\n </a>\n </div>\n </section>\n `,\n})\nexport class AgentApplySubmittedPage {}\n"],"names":[],"mappings":";;;;MA4Ba,uBAAuB,CAAA;uGAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAvB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qCAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAlBxB;;;;;;;;;;;;;;;;AAgBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EApBS,UAAU,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAsBT,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAzBnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qCAAqC;AAC/C,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,UAAU,CAAC;oBACrB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;AACxB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;AAgBT,EAAA,CAAA;AACF,iBAAA;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rolatech-angular-onboarding-agent-onboarding-documents-page-DWBGTj5J.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-onboarding/agent-onboarding-documents-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { onboardingDocumentTypeLabel, OnboardingDocumentType } from '@rolatech/angular-services';\nimport { OnboardingDocumentUploader } from '../../components/onboarding/onboarding-document-uploader';\nimport { AgentOnboardingFacade } from '../../store/agent-onboarding.facade';\n\n@Component({\n selector: 'rolatech-agent-onboarding-documents-page',\n standalone: true,\n imports: [OnboardingDocumentUploader],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n @if (facade.documents().length === 0) {\n <div class=\"rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm\">\n No documents uploaded yet for this onboarding application.\n </div>\n } @else {\n <section class=\"space-y-4\">\n @for (documentItem of facade.documents(); track documentItem.id) {\n <rolatech-onboarding-document-uploader\n [label]=\"documentTypeLabel(documentItem.documentType)\"\n [documentType]=\"documentItem.documentType\"\n [document]=\"documentItem\"\n [comment]=\"documentItem.reviewerComment || null\"\n [busy]=\"facade.saving()\"\n (fileSelected)=\"onUpload($event.documentType, $event.file, $event.replacedDocumentId)\"\n />\n }\n\n @if (facade.status() === 'NEED_MORE_INFO') {\n <div class=\"flex justify-end\">\n <button\n type=\"button\"\n class=\"rounded-xl bg-(--rt-brand-color) px-5 py-2.5 text-sm font-semibold text-(--rt-text-primary-inverse) transition hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60\"\n [disabled]=\"facade.saving()\"\n (click)=\"resubmit()\"\n >\n Resubmit for Review\n </button>\n </div>\n }\n </section>\n }\n `,\n})\nexport class AgentOnboardingDocumentsPage {\n readonly facade = inject(AgentOnboardingFacade);\n readonly documentTypeLabel = onboardingDocumentTypeLabel;\n\n async onUpload(documentType: OnboardingDocumentType, file: File, replacedDocumentId?: string): Promise<void> {\n if (!replacedDocumentId) {\n return;\n }\n\n await this.facade.reuploadDocument(documentType, file, replacedDocumentId);\n }\n\n async resubmit(): Promise<void> {\n await this.facade.resubmit();\n }\n}\n"],"names":[],"mappings":";;;;;MA8Ca,4BAA4B,CAAA;AAC9B,IAAA,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC;IACtC,iBAAiB,GAAG,2BAA2B;AAExD,IAAA,MAAM,QAAQ,CAAC,YAAoC,EAAE,IAAU,EAAE,kBAA2B,EAAA;QAC1F,IAAI,CAAC,kBAAkB,EAAE;YACvB;QACF;AAEA,QAAA,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,EAAE,kBAAkB,CAAC;IAC5E;AAEA,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;IAC9B;uGAdW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA5B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0CAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAlC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EApCS,0BAA0B,EAAA,QAAA,EAAA,uCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,SAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAsCzB,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAzCxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0CAA0C;AACpD,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,0BAA0B,CAAC;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;AACxB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCT,EAAA,CAAA;AACF,iBAAA;;;;;"}