@rolatech/angular-onboarding 20.3.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/README.md +55 -0
  2. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-detail-page-DKJQX3cs.mjs +224 -0
  3. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-detail-page-DKJQX3cs.mjs.map +1 -0
  4. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-index-page-BO4pC_NU.mjs +206 -0
  5. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-index-page-BO4pC_NU.mjs.map +1 -0
  6. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-review-page-BERcLBeQ.mjs +419 -0
  7. package/fesm2022/rolatech-angular-onboarding-admin-onboarding-review-page-BERcLBeQ.mjs.map +1 -0
  8. package/fesm2022/rolatech-angular-onboarding-agent-apply-banking-page-VYNfR4fy.mjs +133 -0
  9. package/fesm2022/rolatech-angular-onboarding-agent-apply-banking-page-VYNfR4fy.mjs.map +1 -0
  10. package/fesm2022/rolatech-angular-onboarding-agent-apply-financial-page-Ck3Rowke.mjs +132 -0
  11. package/fesm2022/rolatech-angular-onboarding-agent-apply-financial-page-Ck3Rowke.mjs.map +1 -0
  12. package/fesm2022/rolatech-angular-onboarding-agent-apply-profile-page-DNepDxHu.mjs +122 -0
  13. package/fesm2022/rolatech-angular-onboarding-agent-apply-profile-page-DNepDxHu.mjs.map +1 -0
  14. package/fesm2022/rolatech-angular-onboarding-agent-apply-qualification-page-CSwupuKt.mjs +108 -0
  15. package/fesm2022/rolatech-angular-onboarding-agent-apply-qualification-page-CSwupuKt.mjs.map +1 -0
  16. package/fesm2022/rolatech-angular-onboarding-agent-apply-review-page-DugCjfvK.mjs +182 -0
  17. package/fesm2022/rolatech-angular-onboarding-agent-apply-review-page-DugCjfvK.mjs.map +1 -0
  18. package/fesm2022/rolatech-angular-onboarding-agent-apply-shell-page-DibWYeD1.mjs +150 -0
  19. package/fesm2022/rolatech-angular-onboarding-agent-apply-shell-page-DibWYeD1.mjs.map +1 -0
  20. package/fesm2022/rolatech-angular-onboarding-agent-apply-start-page-DC7gyOnS.mjs +144 -0
  21. package/fesm2022/rolatech-angular-onboarding-agent-apply-start-page-DC7gyOnS.mjs.map +1 -0
  22. package/fesm2022/rolatech-angular-onboarding-agent-apply-submitted-page-BMkV2V8K.mjs +55 -0
  23. package/fesm2022/rolatech-angular-onboarding-agent-apply-submitted-page-BMkV2V8K.mjs.map +1 -0
  24. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-documents-page-DWBGTj5J.mjs +99 -0
  25. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-documents-page-DWBGTj5J.mjs.map +1 -0
  26. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-issues-page-CSVgCJ7t.mjs +28 -0
  27. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-issues-page-CSVgCJ7t.mjs.map +1 -0
  28. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-overview-page-8sTSvFZ7.mjs +67 -0
  29. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-overview-page-8sTSvFZ7.mjs.map +1 -0
  30. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-shell-page-B6ffcJ5A.mjs +125 -0
  31. package/fesm2022/rolatech-angular-onboarding-agent-onboarding-shell-page-B6ffcJ5A.mjs.map +1 -0
  32. package/fesm2022/rolatech-angular-onboarding.mjs +1495 -0
  33. package/fesm2022/rolatech-angular-onboarding.mjs.map +1 -0
  34. package/package.json +35 -0
  35. package/types/rolatech-angular-onboarding.d.ts +244 -0
@@ -0,0 +1,150 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, computed, effect, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { toSignal } from '@angular/core/rxjs-interop';
4
+ import { ActivatedRoute, Router, RouterOutlet } from '@angular/router';
5
+ import { startWith, map } from 'rxjs';
6
+ import { AgentApplyFacade, OnboardingPageShell, OnboardingStatusBadge, OnboardingStepNav } from './rolatech-angular-onboarding.mjs';
7
+
8
+ class AgentApplyShellPage {
9
+ facade = inject(AgentApplyFacade);
10
+ route = inject(ActivatedRoute);
11
+ router = inject(Router);
12
+ paramMap = toSignal(this.route.paramMap, {
13
+ initialValue: this.route.snapshot.paramMap,
14
+ });
15
+ currentUrl = toSignal(this.router.events.pipe(startWith(null), map(() => this.router.url)), {
16
+ initialValue: this.router.url,
17
+ });
18
+ activeStep = computed(() => {
19
+ const parts = this.currentUrl().split('/').filter(Boolean);
20
+ const maybeStep = parts[parts.length - 1] ?? '';
21
+ switch (maybeStep) {
22
+ case 'profile':
23
+ case 'qualification':
24
+ case 'financial':
25
+ case 'banking':
26
+ case 'review':
27
+ case 'submitted':
28
+ return maybeStep;
29
+ default:
30
+ return 'profile';
31
+ }
32
+ }, ...(ngDevMode ? [{ debugName: "activeStep" }] : []));
33
+ steps = computed(() => {
34
+ const completion = this.facade.completion();
35
+ return [
36
+ {
37
+ label: 'Profile',
38
+ step: 'profile',
39
+ link: ['profile'],
40
+ completed: completion.profile,
41
+ accessible: this.facade.canAccessStep('profile'),
42
+ },
43
+ {
44
+ label: 'Qualification',
45
+ step: 'qualification',
46
+ link: ['qualification'],
47
+ completed: completion.qualification,
48
+ accessible: this.facade.canAccessStep('qualification'),
49
+ },
50
+ {
51
+ label: 'Financial',
52
+ step: 'financial',
53
+ link: ['financial'],
54
+ completed: completion.financial,
55
+ accessible: this.facade.canAccessStep('financial'),
56
+ },
57
+ {
58
+ label: 'Banking',
59
+ step: 'banking',
60
+ link: ['banking'],
61
+ completed: completion.banking,
62
+ accessible: this.facade.canAccessStep('banking'),
63
+ },
64
+ {
65
+ label: 'Review',
66
+ step: 'review',
67
+ link: ['review'],
68
+ completed: completion.profile && completion.qualification && completion.financial && completion.banking,
69
+ accessible: this.facade.canAccessStep('review'),
70
+ },
71
+ {
72
+ label: 'Submitted',
73
+ step: 'submitted',
74
+ link: ['submitted'],
75
+ completed: this.facade.canAccessStep('submitted'),
76
+ accessible: this.facade.canAccessStep('submitted'),
77
+ },
78
+ ];
79
+ }, ...(ngDevMode ? [{ debugName: "steps" }] : []));
80
+ constructor() {
81
+ effect(() => {
82
+ const applicationId = this.paramMap().get('applicationId');
83
+ if (!applicationId) {
84
+ return;
85
+ }
86
+ void this.facade.ensureLoaded(applicationId);
87
+ });
88
+ }
89
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyShellPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
90
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AgentApplyShellPage, isStandalone: true, selector: "rolatech-agent-apply-shell-page", host: { classAttribute: "block" }, ngImport: i0, template: `
91
+ <rolatech-onboarding-page-shell
92
+ title="PrimeCasa Agent Application"
93
+ subtitle="Complete each step to submit your onboarding application for admin review."
94
+ kicker="Public Apply"
95
+ >
96
+ <div header-actions>
97
+ <rolatech-onboarding-status-badge [status]="facade.status()" />
98
+ </div>
99
+
100
+ <rolatech-onboarding-step-nav [steps]="steps()" [activeStep]="activeStep()" />
101
+
102
+ @if (facade.error()) {
103
+ <div class="rounded-2xl border border-rose-200 bg-rose-50 px-4 py-3 text-sm text-rose-700">{{ facade.error() }}</div>
104
+ }
105
+
106
+ @if (!facade.detail() && facade.loading()) {
107
+ <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>
108
+ }
109
+
110
+ <router-outlet />
111
+ </rolatech-onboarding-page-shell>
112
+ `, isInline: true, dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: OnboardingPageShell, selector: "rolatech-onboarding-page-shell", inputs: ["title", "subtitle", "kicker"] }, { kind: "component", type: OnboardingStatusBadge, selector: "rolatech-onboarding-status-badge", inputs: ["status"] }, { kind: "component", type: OnboardingStepNav, selector: "rolatech-onboarding-step-nav", inputs: ["steps", "activeStep"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
113
+ }
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyShellPage, decorators: [{
115
+ type: Component,
116
+ args: [{
117
+ selector: 'rolatech-agent-apply-shell-page',
118
+ standalone: true,
119
+ imports: [RouterOutlet, OnboardingPageShell, OnboardingStatusBadge, OnboardingStepNav],
120
+ changeDetection: ChangeDetectionStrategy.OnPush,
121
+ encapsulation: ViewEncapsulation.None,
122
+ host: { class: 'block' },
123
+ template: `
124
+ <rolatech-onboarding-page-shell
125
+ title="PrimeCasa Agent Application"
126
+ subtitle="Complete each step to submit your onboarding application for admin review."
127
+ kicker="Public Apply"
128
+ >
129
+ <div header-actions>
130
+ <rolatech-onboarding-status-badge [status]="facade.status()" />
131
+ </div>
132
+
133
+ <rolatech-onboarding-step-nav [steps]="steps()" [activeStep]="activeStep()" />
134
+
135
+ @if (facade.error()) {
136
+ <div class="rounded-2xl border border-rose-200 bg-rose-50 px-4 py-3 text-sm text-rose-700">{{ facade.error() }}</div>
137
+ }
138
+
139
+ @if (!facade.detail() && facade.loading()) {
140
+ <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>
141
+ }
142
+
143
+ <router-outlet />
144
+ </rolatech-onboarding-page-shell>
145
+ `,
146
+ }]
147
+ }], ctorParameters: () => [] });
148
+
149
+ export { AgentApplyShellPage };
150
+ //# sourceMappingURL=rolatech-angular-onboarding-agent-apply-shell-page-DibWYeD1.mjs.map
@@ -0,0 +1 @@
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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"}
@@ -0,0 +1,144 @@
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 { FormBuilder, Validators, ReactiveFormsModule } from '@angular/forms';
5
+ import { Router, ActivatedRoute } from '@angular/router';
6
+ import { AgentApplyFacade, OnboardingPageShell } from './rolatech-angular-onboarding.mjs';
7
+
8
+ class AgentApplyStartPage {
9
+ facade = inject(AgentApplyFacade);
10
+ fb = inject(FormBuilder);
11
+ router = inject(Router);
12
+ route = inject(ActivatedRoute);
13
+ form = this.fb.nonNullable.group({
14
+ applicationId: ['primecasa', [Validators.required]],
15
+ applicantType: ['INDIVIDUAL', [Validators.required]],
16
+ companyCountry: ['UK', [Validators.required]],
17
+ });
18
+ async onStart() {
19
+ if (this.form.invalid) {
20
+ this.form.markAllAsTouched();
21
+ return;
22
+ }
23
+ const payload = this.form.getRawValue();
24
+ const response = await this.facade.start(payload);
25
+ if (!response) {
26
+ return;
27
+ }
28
+ await this.router.navigate([response.id, 'profile'], {
29
+ relativeTo: this.route,
30
+ });
31
+ }
32
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyStartPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AgentApplyStartPage, isStandalone: true, selector: "rolatech-agent-apply-start-page", host: { classAttribute: "block" }, providers: [AgentApplyFacade], ngImport: i0, template: `
34
+ <rolatech-onboarding-page-shell
35
+ title="Apply to Join PrimeCasa"
36
+ subtitle="Tell us who you are and create your onboarding application in one step."
37
+ kicker="Public Apply"
38
+ >
39
+ <form [formGroup]="form" class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm">
40
+ <div class="grid gap-4 md:grid-cols-2">
41
+ <label class="grid gap-2">
42
+ <span class="text-sm font-medium text-(--rt-text-secondary)">Application ID</span>
43
+ <input formControlName="applicationId" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
44
+ </label>
45
+
46
+ <label class="grid gap-2">
47
+ <span class="text-sm font-medium text-(--rt-text-secondary)">Applicant Type</span>
48
+ <select formControlName="applicantType" class="h-11 rounded-xl border border-(--rt-border-color) px-3">
49
+ <option value="INDIVIDUAL">Individual</option>
50
+ <option value="COMPANY">Company</option>
51
+ </select>
52
+ </label>
53
+
54
+ <label class="grid gap-2 md:col-span-2">
55
+ <span class="text-sm font-medium text-(--rt-text-secondary)">Company Country</span>
56
+ <select formControlName="companyCountry" class="h-11 rounded-xl border border-(--rt-border-color) px-3">
57
+ <option value="UK">United Kingdom</option>
58
+ <option value="CN">China</option>
59
+ <option value="OTHER">Other</option>
60
+ </select>
61
+ </label>
62
+ </div>
63
+
64
+ @if (facade.error()) {
65
+ <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>
66
+ }
67
+
68
+ <div class="mt-6 flex justify-end">
69
+ <button
70
+ type="button"
71
+ 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"
72
+ [disabled]="form.invalid || facade.loading()"
73
+ (click)="onStart()"
74
+ >
75
+ Create Application
76
+ </button>
77
+ </div>
78
+ </form>
79
+ </rolatech-onboarding-page-shell>
80
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { 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.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { 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"] }, { kind: "component", type: OnboardingPageShell, selector: "rolatech-onboarding-page-shell", inputs: ["title", "subtitle", "kicker"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
81
+ }
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentApplyStartPage, decorators: [{
83
+ type: Component,
84
+ args: [{
85
+ selector: 'rolatech-agent-apply-start-page',
86
+ standalone: true,
87
+ imports: [ReactiveFormsModule, OnboardingPageShell],
88
+ providers: [AgentApplyFacade],
89
+ changeDetection: ChangeDetectionStrategy.OnPush,
90
+ encapsulation: ViewEncapsulation.None,
91
+ host: { class: 'block' },
92
+ template: `
93
+ <rolatech-onboarding-page-shell
94
+ title="Apply to Join PrimeCasa"
95
+ subtitle="Tell us who you are and create your onboarding application in one step."
96
+ kicker="Public Apply"
97
+ >
98
+ <form [formGroup]="form" class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-6 shadow-sm">
99
+ <div class="grid gap-4 md:grid-cols-2">
100
+ <label class="grid gap-2">
101
+ <span class="text-sm font-medium text-(--rt-text-secondary)">Application ID</span>
102
+ <input formControlName="applicationId" class="h-11 rounded-xl border border-(--rt-border-color) px-3" />
103
+ </label>
104
+
105
+ <label class="grid gap-2">
106
+ <span class="text-sm font-medium text-(--rt-text-secondary)">Applicant Type</span>
107
+ <select formControlName="applicantType" class="h-11 rounded-xl border border-(--rt-border-color) px-3">
108
+ <option value="INDIVIDUAL">Individual</option>
109
+ <option value="COMPANY">Company</option>
110
+ </select>
111
+ </label>
112
+
113
+ <label class="grid gap-2 md:col-span-2">
114
+ <span class="text-sm font-medium text-(--rt-text-secondary)">Company Country</span>
115
+ <select formControlName="companyCountry" class="h-11 rounded-xl border border-(--rt-border-color) px-3">
116
+ <option value="UK">United Kingdom</option>
117
+ <option value="CN">China</option>
118
+ <option value="OTHER">Other</option>
119
+ </select>
120
+ </label>
121
+ </div>
122
+
123
+ @if (facade.error()) {
124
+ <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>
125
+ }
126
+
127
+ <div class="mt-6 flex justify-end">
128
+ <button
129
+ type="button"
130
+ 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"
131
+ [disabled]="form.invalid || facade.loading()"
132
+ (click)="onStart()"
133
+ >
134
+ Create Application
135
+ </button>
136
+ </div>
137
+ </form>
138
+ </rolatech-onboarding-page-shell>
139
+ `,
140
+ }]
141
+ }] });
142
+
143
+ export { AgentApplyStartPage };
144
+ //# sourceMappingURL=rolatech-angular-onboarding-agent-apply-start-page-DC7gyOnS.mjs.map
@@ -0,0 +1 @@
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;;;;;"}
@@ -0,0 +1,55 @@
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
@@ -0,0 +1 @@
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;;;;;"}
@@ -0,0 +1,99 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { onboardingDocumentTypeLabel } from '@rolatech/angular-services';
4
+ import { AgentOnboardingFacade, OnboardingDocumentUploader } from './rolatech-angular-onboarding.mjs';
5
+
6
+ class AgentOnboardingDocumentsPage {
7
+ facade = inject(AgentOnboardingFacade);
8
+ documentTypeLabel = onboardingDocumentTypeLabel;
9
+ async onUpload(documentType, file, replacedDocumentId) {
10
+ if (!replacedDocumentId) {
11
+ return;
12
+ }
13
+ await this.facade.reuploadDocument(documentType, file, replacedDocumentId);
14
+ }
15
+ async resubmit() {
16
+ await this.facade.resubmit();
17
+ }
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentOnboardingDocumentsPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AgentOnboardingDocumentsPage, isStandalone: true, selector: "rolatech-agent-onboarding-documents-page", host: { classAttribute: "block" }, ngImport: i0, template: `
20
+ @if (facade.documents().length === 0) {
21
+ <div class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm">
22
+ No documents uploaded yet for this onboarding application.
23
+ </div>
24
+ } @else {
25
+ <section class="space-y-4">
26
+ @for (documentItem of facade.documents(); track documentItem.id) {
27
+ <rolatech-onboarding-document-uploader
28
+ [label]="documentTypeLabel(documentItem.documentType)"
29
+ [documentType]="documentItem.documentType"
30
+ [document]="documentItem"
31
+ [comment]="documentItem.reviewerComment || null"
32
+ [busy]="facade.saving()"
33
+ (fileSelected)="onUpload($event.documentType, $event.file, $event.replacedDocumentId)"
34
+ />
35
+ }
36
+
37
+ @if (facade.status() === 'NEED_MORE_INFO') {
38
+ <div class="flex justify-end">
39
+ <button
40
+ type="button"
41
+ 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"
42
+ [disabled]="facade.saving()"
43
+ (click)="resubmit()"
44
+ >
45
+ Resubmit for Review
46
+ </button>
47
+ </div>
48
+ }
49
+ </section>
50
+ }
51
+ `, 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 });
52
+ }
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentOnboardingDocumentsPage, decorators: [{
54
+ type: Component,
55
+ args: [{
56
+ selector: 'rolatech-agent-onboarding-documents-page',
57
+ standalone: true,
58
+ imports: [OnboardingDocumentUploader],
59
+ changeDetection: ChangeDetectionStrategy.OnPush,
60
+ encapsulation: ViewEncapsulation.None,
61
+ host: { class: 'block' },
62
+ template: `
63
+ @if (facade.documents().length === 0) {
64
+ <div class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm">
65
+ No documents uploaded yet for this onboarding application.
66
+ </div>
67
+ } @else {
68
+ <section class="space-y-4">
69
+ @for (documentItem of facade.documents(); track documentItem.id) {
70
+ <rolatech-onboarding-document-uploader
71
+ [label]="documentTypeLabel(documentItem.documentType)"
72
+ [documentType]="documentItem.documentType"
73
+ [document]="documentItem"
74
+ [comment]="documentItem.reviewerComment || null"
75
+ [busy]="facade.saving()"
76
+ (fileSelected)="onUpload($event.documentType, $event.file, $event.replacedDocumentId)"
77
+ />
78
+ }
79
+
80
+ @if (facade.status() === 'NEED_MORE_INFO') {
81
+ <div class="flex justify-end">
82
+ <button
83
+ type="button"
84
+ 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"
85
+ [disabled]="facade.saving()"
86
+ (click)="resubmit()"
87
+ >
88
+ Resubmit for Review
89
+ </button>
90
+ </div>
91
+ }
92
+ </section>
93
+ }
94
+ `,
95
+ }]
96
+ }] });
97
+
98
+ export { AgentOnboardingDocumentsPage };
99
+ //# sourceMappingURL=rolatech-angular-onboarding-agent-onboarding-documents-page-DWBGTj5J.mjs.map
@@ -0,0 +1 @@
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;;;;;"}
@@ -0,0 +1,28 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { AgentOnboardingFacade, OnboardingIssueList } from './rolatech-angular-onboarding.mjs';
4
+
5
+ class AgentOnboardingIssuesPage {
6
+ facade = inject(AgentOnboardingFacade);
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentOnboardingIssuesPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: AgentOnboardingIssuesPage, isStandalone: true, selector: "rolatech-agent-onboarding-issues-page", host: { classAttribute: "block" }, ngImport: i0, template: `
9
+ <rolatech-onboarding-issue-list [issues]="facade.issues()" />
10
+ `, isInline: true, dependencies: [{ kind: "component", type: OnboardingIssueList, selector: "rolatech-onboarding-issue-list", inputs: ["issues"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentOnboardingIssuesPage, decorators: [{
13
+ type: Component,
14
+ args: [{
15
+ selector: 'rolatech-agent-onboarding-issues-page',
16
+ standalone: true,
17
+ imports: [OnboardingIssueList],
18
+ changeDetection: ChangeDetectionStrategy.OnPush,
19
+ encapsulation: ViewEncapsulation.None,
20
+ host: { class: 'block' },
21
+ template: `
22
+ <rolatech-onboarding-issue-list [issues]="facade.issues()" />
23
+ `,
24
+ }]
25
+ }] });
26
+
27
+ export { AgentOnboardingIssuesPage };
28
+ //# sourceMappingURL=rolatech-angular-onboarding-agent-onboarding-issues-page-CSVgCJ7t.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rolatech-angular-onboarding-agent-onboarding-issues-page-CSVgCJ7t.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-onboarding/agent-onboarding-issues-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { OnboardingIssueList } from '../../components/onboarding/onboarding-issue-list';\nimport { AgentOnboardingFacade } from '../../store/agent-onboarding.facade';\n\n@Component({\n selector: 'rolatech-agent-onboarding-issues-page',\n standalone: true,\n imports: [OnboardingIssueList],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'block' },\n template: `\n <rolatech-onboarding-issue-list [issues]=\"facade.issues()\" />\n `,\n})\nexport class AgentOnboardingIssuesPage {\n readonly facade = inject(AgentOnboardingFacade);\n}\n"],"names":[],"mappings":";;;;MAea,yBAAyB,CAAA;AAC3B,IAAA,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC;uGADpC,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAzB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJ1B;;AAET,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EANS,mBAAmB,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAQlB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAXrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uCAAuC;AACjD,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;;AAET,EAAA,CAAA;AACF,iBAAA;;;;;"}
@@ -0,0 +1,67 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, computed, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { onboardingApplicantTypeLabel, onboardingStatusLabel } from '@rolatech/angular-services';
4
+ import { AgentOnboardingFacade, OnboardingSummaryCard, OnboardingIssueList, OnboardingTimeline } from './rolatech-angular-onboarding.mjs';
5
+
6
+ class AgentOnboardingOverviewPage {
7
+ facade = inject(AgentOnboardingFacade);
8
+ summaryItems = computed(() => {
9
+ const detail = this.facade.detail();
10
+ if (!detail) {
11
+ return [];
12
+ }
13
+ return [
14
+ { label: 'Organization', value: detail.organizationName },
15
+ { label: 'Contact name', value: detail.contactName },
16
+ { label: 'Contact email', value: detail.contactEmail },
17
+ { label: 'Applicant type', value: onboardingApplicantTypeLabel(detail.applicantType) },
18
+ { label: 'Country', value: detail.companyCountry },
19
+ { label: 'Status', value: onboardingStatusLabel(detail.status) },
20
+ ];
21
+ }, ...(ngDevMode ? [{ debugName: "summaryItems" }] : []));
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentOnboardingOverviewPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
23
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AgentOnboardingOverviewPage, isStandalone: true, selector: "rolatech-agent-onboarding-overview-page", host: { classAttribute: "block" }, ngImport: i0, template: `
24
+ @if (facade.detail(); as detail) {
25
+ <div class="space-y-4">
26
+ <rolatech-onboarding-summary-card
27
+ [title]="'Application Summary'"
28
+ [items]="summaryItems()"
29
+ />
30
+
31
+ <rolatech-onboarding-issue-list [issues]="detail.issues" />
32
+ <rolatech-onboarding-timeline [items]="detail.timeline" />
33
+ </div>
34
+ } @else {
35
+ <div class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm">Loading onboarding details...</div>
36
+ }
37
+ `, 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: OnboardingTimeline, selector: "rolatech-onboarding-timeline", inputs: ["items", "collapsible", "collapseThreshold"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AgentOnboardingOverviewPage, decorators: [{
40
+ type: Component,
41
+ args: [{
42
+ selector: 'rolatech-agent-onboarding-overview-page',
43
+ standalone: true,
44
+ imports: [OnboardingSummaryCard, OnboardingIssueList, OnboardingTimeline],
45
+ changeDetection: ChangeDetectionStrategy.OnPush,
46
+ encapsulation: ViewEncapsulation.None,
47
+ host: { class: 'block' },
48
+ template: `
49
+ @if (facade.detail(); as detail) {
50
+ <div class="space-y-4">
51
+ <rolatech-onboarding-summary-card
52
+ [title]="'Application Summary'"
53
+ [items]="summaryItems()"
54
+ />
55
+
56
+ <rolatech-onboarding-issue-list [issues]="detail.issues" />
57
+ <rolatech-onboarding-timeline [items]="detail.timeline" />
58
+ </div>
59
+ } @else {
60
+ <div class="rounded-2xl border border-(--rt-border-color) bg-(--rt-base-background) p-5 text-sm text-(--rt-text-secondary) shadow-sm">Loading onboarding details...</div>
61
+ }
62
+ `,
63
+ }]
64
+ }] });
65
+
66
+ export { AgentOnboardingOverviewPage };
67
+ //# sourceMappingURL=rolatech-angular-onboarding-agent-onboarding-overview-page-8sTSvFZ7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rolatech-angular-onboarding-agent-onboarding-overview-page-8sTSvFZ7.mjs","sources":["../../../../packages/angular-onboarding/src/lib/pages/agent-onboarding/agent-onboarding-overview-page.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, inject, ViewEncapsulation } from '@angular/core';\nimport { onboardingApplicantTypeLabel, onboardingStatusLabel } from '@rolatech/angular-services';\nimport { OnboardingIssueList } from '../../components/onboarding/onboarding-issue-list';\nimport { OnboardingSummaryCard } from '../../components/onboarding/onboarding-summary-card';\nimport { OnboardingTimeline } from '../../components/onboarding/onboarding-timeline';\nimport { AgentOnboardingFacade } from '../../store/agent-onboarding.facade';\n\n@Component({\n selector: 'rolatech-agent-onboarding-overview-page',\n standalone: true,\n imports: [OnboardingSummaryCard, OnboardingIssueList, OnboardingTimeline],\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\n [title]=\"'Application Summary'\"\n [items]=\"summaryItems()\"\n />\n\n <rolatech-onboarding-issue-list [issues]=\"detail.issues\" />\n <rolatech-onboarding-timeline [items]=\"detail.timeline\" />\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 onboarding details...</div>\n }\n `,\n})\nexport class AgentOnboardingOverviewPage {\n readonly facade = inject(AgentOnboardingFacade);\n readonly summaryItems = computed(() => {\n const detail = this.facade.detail();\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: 'Applicant type', value: onboardingApplicantTypeLabel(detail.applicantType) },\n { label: 'Country', value: detail.companyCountry },\n { label: 'Status', value: onboardingStatusLabel(detail.status) },\n ];\n });\n}\n"],"names":[],"mappings":";;;;;MA8Ba,2BAA2B,CAAA;AAC7B,IAAA,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACtC,IAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QACnC,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,OAAO,EAAE;QACX;QAEA,OAAO;YACL,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACzD,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE;YACpD,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE;AACtD,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,4BAA4B,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;YACtF,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,cAAc,EAAE;AAClD,YAAA,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;SACjE;AACH,IAAA,CAAC,wDAAC;uGAhBS,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,EAhB5B;;;;;;;;;;;;;;AAcT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAlBS,qBAAqB,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,mBAAmB,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAoB7D,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAvBvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yCAAyC;AACnD,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;oBACzE,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;;;;;;;;;;;;;;AAcT,EAAA,CAAA;AACF,iBAAA;;;;;"}