@almatar/smart-booking-dashboard 0.0.1 → 0.0.2-alpha.3
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.
- package/esm2022/lib/components/action-card/action-card.component.mjs +3 -3
- package/esm2022/lib/components/add-note-dialog/add-note-dialog.component.mjs +3 -3
- package/esm2022/lib/components/almatar-aside/aside-back-button.service.mjs +24 -0
- package/esm2022/lib/components/almatar-aside/aside.component.mjs +122 -0
- package/esm2022/lib/components/booking-input/booking-input.component.mjs +4 -3
- package/esm2022/lib/components/cancel-dialog/cancel-dialog.component.mjs +53 -4
- package/esm2022/lib/components/data-search/data-search.component.mjs +3 -3
- package/esm2022/lib/components/hotel-cancel/almatar-hotel-auto-cancellation.component.mjs +544 -0
- package/esm2022/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-refund-method/almatar-hotel-auto-cancellation-refund-method.component.mjs +43 -0
- package/esm2022/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-refund-summary/almatar-hotel-auto-cancellation-refund-summary.component.mjs +296 -0
- package/esm2022/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-select-rooms/almatar-hotel-auto-cancellation-select-rooms.component.mjs +88 -0
- package/esm2022/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-select-rooms/components/almatar-hotel-auto-cancellation-non-refundable-room/almatar-hotel-auto-cancellation-non-refundable-room.component.mjs +242 -0
- package/esm2022/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-select-rooms/components/almatar-hotel-auto-cancellation-refundable-room/almatar-hotel-auto-cancellation-refundable-room.component.mjs +48 -0
- package/esm2022/lib/components/hotel-cancel/components/hotel-content/hotel-content.component.mjs +129 -0
- package/esm2022/lib/components/hotel-cancel/components/hotel-refund-method-selector/hotel-refund-method-selector.component.mjs +321 -0
- package/esm2022/lib/components/hotel-cancel/components/result-overlay/result-overlay.component.mjs +52 -0
- package/esm2022/lib/components/hotel-cancel/enums/almatar-hotel-auto-cancellation-endpoints.enum.mjs +9 -0
- package/esm2022/lib/components/hotel-cancel/enums/almatar-hotel-auto-cancellation-step.enum.mjs +7 -0
- package/esm2022/lib/components/hotel-cancel/interfaces/i-almatar-hotel-auto-cancellation.interface.mjs +2 -0
- package/esm2022/lib/components/hotel-cancel/services/almatar-hotel-auto-cancellation-endpoints.service.mjs +457 -0
- package/esm2022/lib/components/hotel-cancel/services/almatar-hotel-auto-cancellation.service.mjs +55 -0
- package/esm2022/lib/components/hotel-itinerary-card/hotel-itinerary-card.component.mjs +48 -0
- package/esm2022/lib/components/reissue-dialog/reissue-dialog.component.mjs +135 -0
- package/esm2022/lib/components/reissue-dialog/reissue-upgrade.store.mjs +305 -0
- package/esm2022/lib/components/reissue-dialog/reissue.store.mjs +349 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-date-step/reissue-date-step.component.mjs +45 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-legs-step/reissue-legs-step.component.mjs +140 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-notice/reissue-notice.component.mjs +16 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-route-step/reissue-route-step.component.mjs +104 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-service-step/reissue-service-step.component.mjs +44 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-upgrade-confirm-step/reissue-upgrade-confirm-step.component.mjs +193 -0
- package/esm2022/lib/components/reissue-dialog/steps/reissue-upgrade-step/reissue-upgrade-step.component.mjs +88 -0
- package/esm2022/lib/components/result-panel/result-panel.component.mjs +3 -3
- package/esm2022/lib/components/shared/components/confirm-modal/confirm-modal.component.mjs +75 -0
- package/esm2022/lib/components/shared/components/manage-booking-failed-modal/manage-booking-failed-modal.component.mjs +46 -0
- package/esm2022/lib/components/shared/enums/hotel-manage-booking-aside-tab.enum.mjs +9 -0
- package/esm2022/lib/components/shared/interfaces/i-flight-refund-details.mjs +86 -0
- package/esm2022/lib/components/shared/models/cancel-hotel-booking.model.mjs +7 -0
- package/esm2022/lib/components/shared/services/hotel-manage-booking/hotel-manage-booking.service.mjs +27 -0
- package/esm2022/lib/components/shared/services/hotel-manage-booking-endpoints/hotel-manage-booking-endpoints.service.mjs +17 -0
- package/esm2022/lib/components/workflow-actions/workflow-actions.component.mjs +5 -3
- package/esm2022/lib/config/dashboard.config.mjs +3 -1
- package/esm2022/lib/config/hotel-actions.config.mjs +21 -1
- package/esm2022/lib/models/booking.types.mjs +73 -2
- package/esm2022/lib/models/reissue.types.mjs +2 -0
- package/esm2022/lib/pages/smart-booking-dashboard/smart-booking-dashboard.component.mjs +31 -7
- package/esm2022/lib/services/booking.service.mjs +6 -2
- package/esm2022/lib/services/reissue.service.mjs +142 -0
- package/esm2022/lib/services/toast.service.mjs +15 -7
- package/esm2022/lib/shared/components/currency-code-icon/currency-code-icon.component.mjs +35 -0
- package/esm2022/lib/shared/enums/brand-enums.enum.mjs +7 -0
- package/esm2022/lib/shared/environments/environment.mjs +10 -0
- package/esm2022/lib/shared/models/index.mjs +6 -0
- package/esm2022/lib/shared/modules/almatar-icon/almatar-icon.module.mjs +36 -0
- package/esm2022/lib/shared/modules/loader/loader.module.mjs +43 -0
- package/esm2022/lib/shared/pipes/exchange.pipe.mjs +49 -0
- package/esm2022/lib/shared/services/api.service.mjs +42 -0
- package/esm2022/lib/shared/services/shared.service.mjs +34 -0
- package/esm2022/lib/shared/services/translation.service.mjs +61 -0
- package/esm2022/lib/shared/services/webengage-tracking.service.mjs +28 -0
- package/esm2022/lib/shared/store/selectors/currency.selectors.mjs +9 -0
- package/esm2022/lib/utils/reissue-format.mjs +64 -0
- package/esm2022/lib/utils/reissue-url.builder.mjs +314 -0
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/almatar-smart-booking-dashboard.mjs +5387 -395
- package/fesm2022/almatar-smart-booking-dashboard.mjs.map +1 -1
- package/lib/components/action-dialog/action-dialog.component.d.ts +1 -1
- package/lib/components/almatar-aside/aside-back-button.service.d.ts +11 -0
- package/lib/components/almatar-aside/aside.component.d.ts +46 -0
- package/lib/components/cancel-dialog/cancel-dialog.component.d.ts +7 -0
- package/lib/components/hotel-cancel/almatar-hotel-auto-cancellation.component.d.ts +97 -0
- package/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-refund-method/almatar-hotel-auto-cancellation-refund-method.component.d.ts +25 -0
- package/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-refund-summary/almatar-hotel-auto-cancellation-refund-summary.component.d.ts +91 -0
- package/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-select-rooms/almatar-hotel-auto-cancellation-select-rooms.component.d.ts +39 -0
- package/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-select-rooms/components/almatar-hotel-auto-cancellation-non-refundable-room/almatar-hotel-auto-cancellation-non-refundable-room.component.d.ts +44 -0
- package/lib/components/hotel-cancel/components/almatar-hotel-auto-cancellation-select-rooms/components/almatar-hotel-auto-cancellation-refundable-room/almatar-hotel-auto-cancellation-refundable-room.component.d.ts +19 -0
- package/lib/components/hotel-cancel/components/hotel-content/hotel-content.component.d.ts +38 -0
- package/lib/components/hotel-cancel/components/hotel-refund-method-selector/hotel-refund-method-selector.component.d.ts +142 -0
- package/lib/components/hotel-cancel/components/result-overlay/result-overlay.component.d.ts +23 -0
- package/lib/components/hotel-cancel/enums/almatar-hotel-auto-cancellation-endpoints.enum.d.ts +7 -0
- package/lib/components/hotel-cancel/enums/almatar-hotel-auto-cancellation-step.enum.d.ts +5 -0
- package/lib/components/hotel-cancel/interfaces/i-almatar-hotel-auto-cancellation.interface.d.ts +252 -0
- package/lib/components/hotel-cancel/services/almatar-hotel-auto-cancellation-endpoints.service.d.ts +88 -0
- package/lib/components/hotel-cancel/services/almatar-hotel-auto-cancellation.service.d.ts +21 -0
- package/lib/components/hotel-itinerary-card/hotel-itinerary-card.component.d.ts +16 -0
- package/lib/components/reissue-dialog/reissue-dialog.component.d.ts +34 -0
- package/lib/components/reissue-dialog/reissue-upgrade.store.d.ts +96 -0
- package/lib/components/reissue-dialog/reissue.store.d.ts +124 -0
- package/lib/components/reissue-dialog/steps/reissue-date-step/reissue-date-step.component.d.ts +11 -0
- package/lib/components/reissue-dialog/steps/reissue-legs-step/reissue-legs-step.component.d.ts +16 -0
- package/lib/components/reissue-dialog/steps/reissue-notice/reissue-notice.component.d.ts +8 -0
- package/lib/components/reissue-dialog/steps/reissue-route-step/reissue-route-step.component.d.ts +21 -0
- package/lib/components/reissue-dialog/steps/reissue-service-step/reissue-service-step.component.d.ts +17 -0
- package/lib/components/reissue-dialog/steps/reissue-upgrade-confirm-step/reissue-upgrade-confirm-step.component.d.ts +28 -0
- package/lib/components/reissue-dialog/steps/reissue-upgrade-step/reissue-upgrade-step.component.d.ts +13 -0
- package/lib/components/result-panel/result-panel.component.d.ts +1 -1
- package/lib/components/shared/components/confirm-modal/confirm-modal.component.d.ts +17 -0
- package/lib/components/shared/components/manage-booking-failed-modal/manage-booking-failed-modal.component.d.ts +10 -0
- package/lib/components/shared/enums/hotel-manage-booking-aside-tab.enum.d.ts +7 -0
- package/lib/components/shared/interfaces/i-flight-refund-details.d.ts +73 -0
- package/lib/components/shared/models/cancel-hotel-booking.model.d.ts +6 -0
- package/lib/components/shared/services/hotel-manage-booking/hotel-manage-booking.service.d.ts +11 -0
- package/lib/components/shared/services/hotel-manage-booking-endpoints/hotel-manage-booking-endpoints.service.d.ts +7 -0
- package/lib/components/workflow-actions/workflow-actions.component.d.ts +3 -1
- package/lib/config/dashboard.config.d.ts +29 -0
- package/lib/models/booking.types.d.ts +28 -0
- package/lib/models/reissue.types.d.ts +147 -0
- package/lib/pages/smart-booking-dashboard/smart-booking-dashboard.component.d.ts +5 -1
- package/lib/services/reissue.service.d.ts +45 -0
- package/lib/services/toast.service.d.ts +14 -1
- package/lib/shared/components/currency-code-icon/currency-code-icon.component.d.ts +13 -0
- package/lib/shared/enums/brand-enums.enum.d.ts +5 -0
- package/lib/shared/environments/environment.d.ts +7 -0
- package/lib/shared/models/index.d.ts +11 -0
- package/lib/shared/modules/almatar-icon/almatar-icon.module.d.ts +13 -0
- package/lib/shared/modules/loader/loader.module.d.ts +13 -0
- package/lib/shared/pipes/exchange.pipe.d.ts +17 -0
- package/lib/shared/services/api.service.d.ts +43 -0
- package/lib/shared/services/shared.service.d.ts +12 -0
- package/lib/shared/services/translation.service.d.ts +17 -0
- package/lib/shared/services/webengage-tracking.service.d.ts +8 -0
- package/lib/shared/store/selectors/currency.selectors.d.ts +2 -0
- package/lib/utils/reissue-format.d.ts +28 -0
- package/lib/utils/reissue-url.builder.d.ts +24 -0
- package/package.json +9 -24
- package/public-api.d.ts +5 -1
- package/LICENSE +0 -21
- package/README.md +0 -132
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, output } from '@angular/core';
|
|
2
|
+
import { SbdReissueNoticeComponent } from '../reissue-notice/reissue-notice.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/** New-class options as radio cards, in the look of the cancel dialog's refund-method options. */
|
|
5
|
+
export class SbdReissueUpgradeStepComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.sections = input.required();
|
|
8
|
+
this.error = input(null);
|
|
9
|
+
this.picked = output();
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SbdReissueUpgradeStepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SbdReissueUpgradeStepComponent, isStandalone: true, selector: "app-sbd-reissue-upgrade-step", inputs: { sections: { classPropertyName: "sections", publicName: "sections", isSignal: true, isRequired: true, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { picked: "picked" }, host: { classAttribute: "sbd-rup" }, ngImport: i0, template: `
|
|
13
|
+
@if (error()) {
|
|
14
|
+
<app-sbd-reissue-notice tone="error" icon="pi pi-exclamation-circle">{{ error() }}</app-sbd-reissue-notice>
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@for (section of sections(); track section.id) {
|
|
18
|
+
<section class="sbd-rup__section">
|
|
19
|
+
<div class="sbd-rup__head">
|
|
20
|
+
<span class="sbd-rup__route">{{ section.title }}</span>
|
|
21
|
+
@if (section.current) { <span class="sbd-rup__current">{{ section.current }}</span> }
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
@if (!section.options.length) {
|
|
25
|
+
<span class="sbd-rup__empty">No upgrade available for this flight.</span>
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
@for (option of section.options; track option.key) {
|
|
29
|
+
<button type="button" class="sbd-rup__option"
|
|
30
|
+
[class.sbd-rup__option--active]="option.selected"
|
|
31
|
+
[disabled]="option.unavailable"
|
|
32
|
+
(click)="picked.emit({ sectionId: section.id, key: option.key })">
|
|
33
|
+
<span class="sbd-rup__radio" [class.sbd-rup__radio--on]="option.selected"></span>
|
|
34
|
+
<span class="sbd-rup__text">
|
|
35
|
+
<strong>{{ option.name }}</strong>
|
|
36
|
+
<small>{{ option.code }}</small>
|
|
37
|
+
</span>
|
|
38
|
+
@if (option.unavailable) {
|
|
39
|
+
<span class="sbd-rup__unavailable">Not available</span>
|
|
40
|
+
} @else {
|
|
41
|
+
<span class="sbd-rup__price">{{ option.extraLabel }}</span>
|
|
42
|
+
}
|
|
43
|
+
</button>
|
|
44
|
+
}
|
|
45
|
+
</section>
|
|
46
|
+
}
|
|
47
|
+
`, isInline: true, styles: [":host{display:flex;flex-direction:column;gap:14px}.sbd-rup__section{display:flex;flex-direction:column;gap:10px}.sbd-rup__head{display:flex;flex-direction:column;gap:2px}.sbd-rup__route{font-size:15px;font-weight:700;color:#1e2e4a}.sbd-rup__current,.sbd-rup__empty{font-size:13px;color:#64748b}.sbd-rup__option{border:1.5px solid #e2e8f0;border-radius:16px;background:#fff;transition:border-color .15s,box-shadow .15s;display:flex;align-items:center;gap:12px;width:100%;padding:16px;text-align:left;font-family:inherit;cursor:pointer}.sbd-rup__option--active{border-color:var(--sbd-accent, #6d4aff);box-shadow:0 0 0 1px var(--sbd-accent, #6d4aff)}.sbd-rup__option:disabled{opacity:.5;cursor:not-allowed}.sbd-rup__option:hover:not(:disabled):not(.sbd-rup__option--active){border-color:#cbd5e1}.sbd-rup__radio{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:2px solid #cbd5e1;background:#fff}.sbd-rup__radio--on{border-color:var(--sbd-accent, #6d4aff);box-shadow:inset 0 0 0 4px #fff;background:var(--sbd-accent, #6d4aff)}.sbd-rup__text{flex:1;display:flex;flex-direction:column;gap:2px}.sbd-rup__text strong{font-size:14px;font-weight:700;color:#1e2e4a}.sbd-rup__text small{font-size:12.5px;color:#64748b}.sbd-rup__price{font-size:14px;font-weight:800;color:#1e2e4a;white-space:nowrap;font-variant-numeric:tabular-nums}.sbd-rup__unavailable{font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b;background:#f8fafc;box-shadow:inset 0 0 0 1px #e2e8f0;border-radius:20px;padding:3px 12px;white-space:nowrap}\n"], dependencies: [{ kind: "component", type: SbdReissueNoticeComponent, selector: "app-sbd-reissue-notice", inputs: ["icon", "tone"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
48
|
+
}
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SbdReissueUpgradeStepComponent, decorators: [{
|
|
50
|
+
type: Component,
|
|
51
|
+
args: [{ selector: 'app-sbd-reissue-upgrade-step', standalone: true, imports: [SbdReissueNoticeComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
52
|
+
@if (error()) {
|
|
53
|
+
<app-sbd-reissue-notice tone="error" icon="pi pi-exclamation-circle">{{ error() }}</app-sbd-reissue-notice>
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
@for (section of sections(); track section.id) {
|
|
57
|
+
<section class="sbd-rup__section">
|
|
58
|
+
<div class="sbd-rup__head">
|
|
59
|
+
<span class="sbd-rup__route">{{ section.title }}</span>
|
|
60
|
+
@if (section.current) { <span class="sbd-rup__current">{{ section.current }}</span> }
|
|
61
|
+
</div>
|
|
62
|
+
|
|
63
|
+
@if (!section.options.length) {
|
|
64
|
+
<span class="sbd-rup__empty">No upgrade available for this flight.</span>
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
@for (option of section.options; track option.key) {
|
|
68
|
+
<button type="button" class="sbd-rup__option"
|
|
69
|
+
[class.sbd-rup__option--active]="option.selected"
|
|
70
|
+
[disabled]="option.unavailable"
|
|
71
|
+
(click)="picked.emit({ sectionId: section.id, key: option.key })">
|
|
72
|
+
<span class="sbd-rup__radio" [class.sbd-rup__radio--on]="option.selected"></span>
|
|
73
|
+
<span class="sbd-rup__text">
|
|
74
|
+
<strong>{{ option.name }}</strong>
|
|
75
|
+
<small>{{ option.code }}</small>
|
|
76
|
+
</span>
|
|
77
|
+
@if (option.unavailable) {
|
|
78
|
+
<span class="sbd-rup__unavailable">Not available</span>
|
|
79
|
+
} @else {
|
|
80
|
+
<span class="sbd-rup__price">{{ option.extraLabel }}</span>
|
|
81
|
+
}
|
|
82
|
+
</button>
|
|
83
|
+
}
|
|
84
|
+
</section>
|
|
85
|
+
}
|
|
86
|
+
`, host: { class: 'sbd-rup' }, styles: [":host{display:flex;flex-direction:column;gap:14px}.sbd-rup__section{display:flex;flex-direction:column;gap:10px}.sbd-rup__head{display:flex;flex-direction:column;gap:2px}.sbd-rup__route{font-size:15px;font-weight:700;color:#1e2e4a}.sbd-rup__current,.sbd-rup__empty{font-size:13px;color:#64748b}.sbd-rup__option{border:1.5px solid #e2e8f0;border-radius:16px;background:#fff;transition:border-color .15s,box-shadow .15s;display:flex;align-items:center;gap:12px;width:100%;padding:16px;text-align:left;font-family:inherit;cursor:pointer}.sbd-rup__option--active{border-color:var(--sbd-accent, #6d4aff);box-shadow:0 0 0 1px var(--sbd-accent, #6d4aff)}.sbd-rup__option:disabled{opacity:.5;cursor:not-allowed}.sbd-rup__option:hover:not(:disabled):not(.sbd-rup__option--active){border-color:#cbd5e1}.sbd-rup__radio{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:2px solid #cbd5e1;background:#fff}.sbd-rup__radio--on{border-color:var(--sbd-accent, #6d4aff);box-shadow:inset 0 0 0 4px #fff;background:var(--sbd-accent, #6d4aff)}.sbd-rup__text{flex:1;display:flex;flex-direction:column;gap:2px}.sbd-rup__text strong{font-size:14px;font-weight:700;color:#1e2e4a}.sbd-rup__text small{font-size:12.5px;color:#64748b}.sbd-rup__price{font-size:14px;font-weight:800;color:#1e2e4a;white-space:nowrap;font-variant-numeric:tabular-nums}.sbd-rup__unavailable{font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b;background:#f8fafc;box-shadow:inset 0 0 0 1px #e2e8f0;border-radius:20px;padding:3px 12px;white-space:nowrap}\n"] }]
|
|
87
|
+
}] });
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVpc3N1ZS11cGdyYWRlLXN0ZXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtYm9va2luZy1kYXNoYm9hcmQvc3JjL2xpYi9jb21wb25lbnRzL3JlaXNzdWUtZGlhbG9nL3N0ZXBzL3JlaXNzdWUtdXBncmFkZS1zdGVwL3JlaXNzdWUtdXBncmFkZS1zdGVwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBRXZGLGtHQUFrRztBQTZDbEcsTUFBTSxPQUFPLDhCQUE4QjtJQTVDM0M7UUE2Q0UsYUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXVCLENBQUM7UUFDakQsVUFBSyxHQUFHLEtBQUssQ0FBZ0IsSUFBSSxDQUFDLENBQUM7UUFDbkMsV0FBTSxHQUFHLE1BQU0sRUFBc0MsQ0FBQztLQUN2RDsrR0FKWSw4QkFBOEI7bUdBQTlCLDhCQUE4QixnYUF2Qy9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1DVCxnbURBckNTLHlCQUF5Qjs7NEZBeUN4Qiw4QkFBOEI7a0JBNUMxQyxTQUFTOytCQUNFLDhCQUE4QixjQUM1QixJQUFJLFdBQ1AsQ0FBQyx5QkFBeUIsQ0FBQyxtQkFDbkIsdUJBQXVCLENBQUMsTUFBTSxZQUNyQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQ1QsUUFFSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbnB1dCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVcGdyYWRlU2VjdGlvblJvdyB9IGZyb20gJy4uLy4uL3JlaXNzdWUtdXBncmFkZS5zdG9yZSc7XG5pbXBvcnQgeyBTYmRSZWlzc3VlTm90aWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vcmVpc3N1ZS1ub3RpY2UvcmVpc3N1ZS1ub3RpY2UuY29tcG9uZW50JztcblxuLyoqIE5ldy1jbGFzcyBvcHRpb25zIGFzIHJhZGlvIGNhcmRzLCBpbiB0aGUgbG9vayBvZiB0aGUgY2FuY2VsIGRpYWxvZydzIHJlZnVuZC1tZXRob2Qgb3B0aW9ucy4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1zYmQtcmVpc3N1ZS11cGdyYWRlLXN0ZXAnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbU2JkUmVpc3N1ZU5vdGljZUNvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAoZXJyb3IoKSkge1xuICAgICAgPGFwcC1zYmQtcmVpc3N1ZS1ub3RpY2UgdG9uZT1cImVycm9yXCIgaWNvbj1cInBpIHBpLWV4Y2xhbWF0aW9uLWNpcmNsZVwiPnt7IGVycm9yKCkgfX08L2FwcC1zYmQtcmVpc3N1ZS1ub3RpY2U+XG4gICAgfVxuXG4gICAgQGZvciAoc2VjdGlvbiBvZiBzZWN0aW9ucygpOyB0cmFjayBzZWN0aW9uLmlkKSB7XG4gICAgICA8c2VjdGlvbiBjbGFzcz1cInNiZC1ydXBfX3NlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1ydXBfX2hlYWRcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiZC1ydXBfX3JvdXRlXCI+e3sgc2VjdGlvbi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICBAaWYgKHNlY3Rpb24uY3VycmVudCkgeyA8c3BhbiBjbGFzcz1cInNiZC1ydXBfX2N1cnJlbnRcIj57eyBzZWN0aW9uLmN1cnJlbnQgfX08L3NwYW4+IH1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgQGlmICghc2VjdGlvbi5vcHRpb25zLmxlbmd0aCkge1xuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JkLXJ1cF9fZW1wdHlcIj5ObyB1cGdyYWRlIGF2YWlsYWJsZSBmb3IgdGhpcyBmbGlnaHQuPC9zcGFuPlxuICAgICAgICB9XG5cbiAgICAgICAgQGZvciAob3B0aW9uIG9mIHNlY3Rpb24ub3B0aW9uczsgdHJhY2sgb3B0aW9uLmtleSkge1xuICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwic2JkLXJ1cF9fb3B0aW9uXCJcbiAgICAgICAgICAgIFtjbGFzcy5zYmQtcnVwX19vcHRpb24tLWFjdGl2ZV09XCJvcHRpb24uc2VsZWN0ZWRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbi51bmF2YWlsYWJsZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwicGlja2VkLmVtaXQoeyBzZWN0aW9uSWQ6IHNlY3Rpb24uaWQsIGtleTogb3B0aW9uLmtleSB9KVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcnVwX19yYWRpb1wiIFtjbGFzcy5zYmQtcnVwX19yYWRpby0tb25dPVwib3B0aW9uLnNlbGVjdGVkXCI+PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcnVwX190ZXh0XCI+XG4gICAgICAgICAgICAgIDxzdHJvbmc+e3sgb3B0aW9uLm5hbWUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgPHNtYWxsPnt7IG9wdGlvbi5jb2RlIH19PC9zbWFsbD5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIEBpZiAob3B0aW9uLnVuYXZhaWxhYmxlKSB7XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JkLXJ1cF9fdW5hdmFpbGFibGVcIj5Ob3QgYXZhaWxhYmxlPC9zcGFuPlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JkLXJ1cF9fcHJpY2VcIj57eyBvcHRpb24uZXh0cmFMYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgICAgPC9zZWN0aW9uPlxuICAgIH1cbiAgYCxcbiAgc3R5bGVVcmw6ICcuL3JlaXNzdWUtdXBncmFkZS1zdGVwLmNvbXBvbmVudC5zY3NzJyxcbiAgaG9zdDogeyBjbGFzczogJ3NiZC1ydXAnIH0sXG59KVxuZXhwb3J0IGNsYXNzIFNiZFJlaXNzdWVVcGdyYWRlU3RlcENvbXBvbmVudCB7XG4gIHNlY3Rpb25zID0gaW5wdXQucmVxdWlyZWQ8VXBncmFkZVNlY3Rpb25Sb3dbXT4oKTtcbiAgZXJyb3IgPSBpbnB1dDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgcGlja2VkID0gb3V0cHV0PHsgc2VjdGlvbklkOiBzdHJpbmc7IGtleTogc3RyaW5nIH0+KCk7XG59XG4iXX0=
|
|
@@ -23,7 +23,7 @@ export class SbdResultPanelComponent {
|
|
|
23
23
|
navigator.clipboard.writeText(lines.join('\n')).then(() => this.toast.success('Copied to clipboard'));
|
|
24
24
|
}
|
|
25
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SbdResultPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SbdResultPanelComponent, isStandalone: true, selector: "app-sbd-result-panel", inputs: { actionLabel: { classPropertyName: "actionLabel", publicName: "actionLabel", isSignal: true, isRequired: false, transformFunction: null }, elapsedMs: { classPropertyName: "elapsedMs", publicName: "elapsedMs", isSignal: true, isRequired: false, transformFunction: null }, status: { classPropertyName: "status", publicName: "status", isSignal: true, isRequired: false, transformFunction: null }, result: { classPropertyName: "result", publicName: "result", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { feedbackGiven: "feedbackGiven" }, ngImport: i0, template: "<div class=\"sbd-result-panel\">\n @if (status() === 'loading') {\n <div class=\"sbd-result-panel__loading\">\n <div class=\"sbd-result-panel__loading-header\">\n <p-skeleton width=\"200px\" height=\"18px\" /><p-skeleton width=\"80px\" height=\"18px\" />\n </div>\n <p-skeleton width=\"60%\" height=\"28px\" styleClass=\"mt-3 mb-2\" />\n <p-skeleton width=\"40%\" height=\"16px\" styleClass=\"mb-4\" />\n <div class=\"sbd-result-panel__loading-points\">\n @for (i of [1,2,3,4]; track i) {\n <div class=\"sbd-result-panel__loading-row\">\n <p-skeleton width=\"100px\" height=\"13px\" /><p-skeleton width=\"160px\" height=\"13px\" />\n </div>\n }\n </div>\n </div>\n }\n @if (status() === 'success' && result()) {\n <div @fadeInUp>\n <div class=\"sbd-result-panel__header\">\n <div class=\"sbd-result-panel__header-left\">\n <i class=\"pi pi-check-circle sbd-result-panel__check-icon\"></i>\n <span class=\"sbd-result-panel__header-label\">Result \u00B7 {{ actionLabel() }}</span>\n </div>\n <span class=\"sbd-result-panel__elapsed\">Found in {{ elapsedSeconds }}s</span>\n </div>\n <div class=\"sbd-result-panel__body\">\n <h2 class=\"sbd-result-panel__title\">{{ result()!.title }}</h2>\n @if (result()!.subtitle) { <p class=\"sbd-result-panel__subtitle\">{{ result()!.subtitle }}</p> }\n\n <!-- Sectioned layout (refund breakdown etc.) -->\n @if (result()!.sections?.length) {\n <div class=\"sbd-result-panel__sections\">\n @for (section of result()!.sections!; track section.title) {\n <div class=\"sbd-result-panel__section\">\n <div class=\"sbd-result-panel__section-title\">{{ section.title }}</div>\n @for (row of section.rows; track row.label) {\n @if (row.value) {\n <div class=\"sbd-result-panel__section-row\">\n <span class=\"sbd-result-panel__section-row-label\">{{ row.label }}</span>\n <span class=\"sbd-result-panel__section-row-value sbd-result-panel__section-row-value--{{ row.valueClass ?? 'neutral' }}\">{{ row.value }}</span>\n </div>\n } @else {\n <div class=\"sbd-result-panel__section-divider\">{{ row.label }}</div>\n }\n }\n </div>\n }\n </div>\n }\n\n <!-- Flat points layout (all other actions) -->\n @else if (result()!.points?.length) {\n <ul class=\"sbd-result-panel__points\">\n @for (point of result()!.points!; track point.label) {\n <li class=\"sbd-result-panel__point\">\n <span class=\"sbd-result-panel__point-label\">{{ point.label }}</span>\n <span class=\"sbd-result-panel__point-value\">{{ point.value }}</span>\n </li>\n }\n </ul>\n }\n\n @if (result()!.callout) {\n <div class=\"sbd-result-panel__callout sbd-result-panel__callout--{{ result()!.callout!.type }}\">\n <i class=\"pi pi-info-circle\"></i><span>{{ result()!.callout!.message }}</span>\n </div>\n }\n </div>\n <div class=\"sbd-result-panel__footer\">\n <div class=\"sbd-result-panel__feedback\">\n <span class=\"sbd-result-panel__feedback-label\">Helpful?</span>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--up\" (click)=\"feedbackGiven.emit('up')\">\n <i class=\"pi pi-thumbs-up\"></i>\n </button>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--down\" (click)=\"feedbackGiven.emit('down')\">\n <i class=\"pi pi-thumbs-down\"></i>\n </button>\n </div>\n </div>\n </div>\n }\n @if (status() === 'error') {\n <div class=\"sbd-result-panel__error\" @fadeInUp>\n <i class=\"pi pi-exclamation-triangle\"></i><span>Could not load this information. Please try again.</span>\n </div>\n }\n @if (status() === 'idle') {\n <div class=\"sbd-result-panel__idle\">\n <i class=\"pi pi-arrow-up-left\"></i><span>Select an action above to see results here</span>\n </div>\n }\n</div>\n", styles: [".sbd-result-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.sbd-result-panel__loading{padding:20px}.sbd-result-panel__loading-header{display:flex;justify-content:space-between;margin-bottom:14px}.sbd-result-panel__loading-points{display:flex;flex-direction:column;gap:10px}.sbd-result-panel__loading-row{display:flex;gap:24px}.sbd-result-panel__header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#00b67a12;border-bottom:1px solid rgba(0,182,122,.15)}.sbd-result-panel__header-left{display:flex;align-items:center;gap:8px}.sbd-result-panel__check-icon{color:#00b67a;font-size:15px}.sbd-result-panel__header-label{font-size:13px;font-weight:600;color:#1e2e4a}.sbd-result-panel__elapsed{font-size:11.5px;font-weight:600;color:#00b67a;background:#00b67a1a;border-radius:20px;padding:2px 10px}.sbd-result-panel__body{padding:20px}.sbd-result-panel__title{font-size:20px;font-weight:800;color:#1e2e4a;margin:0 0 4px}.sbd-result-panel__subtitle{font-size:13px;color:#94a3b8;margin:0 0 14px}.sbd-result-panel__points{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column}.sbd-result-panel__point{display:flex;align-items:baseline;gap:14px;padding:9px 0;border-bottom:1px solid #f1f5f9}.sbd-result-panel__point:last-child{border-bottom:none}.sbd-result-panel__point:before{content:\"\";width:6px;height:6px;border-radius:50%;background
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SbdResultPanelComponent, isStandalone: true, selector: "app-sbd-result-panel", inputs: { actionLabel: { classPropertyName: "actionLabel", publicName: "actionLabel", isSignal: true, isRequired: false, transformFunction: null }, elapsedMs: { classPropertyName: "elapsedMs", publicName: "elapsedMs", isSignal: true, isRequired: false, transformFunction: null }, status: { classPropertyName: "status", publicName: "status", isSignal: true, isRequired: false, transformFunction: null }, result: { classPropertyName: "result", publicName: "result", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { feedbackGiven: "feedbackGiven" }, ngImport: i0, template: "<div class=\"sbd-result-panel\">\n @if (status() === 'loading') {\n <div class=\"sbd-result-panel__loading\">\n <div class=\"sbd-result-panel__loading-header\">\n <p-skeleton width=\"200px\" height=\"18px\" /><p-skeleton width=\"80px\" height=\"18px\" />\n </div>\n <p-skeleton width=\"60%\" height=\"28px\" styleClass=\"mt-3 mb-2\" />\n <p-skeleton width=\"40%\" height=\"16px\" styleClass=\"mb-4\" />\n <div class=\"sbd-result-panel__loading-points\">\n @for (i of [1,2,3,4]; track i) {\n <div class=\"sbd-result-panel__loading-row\">\n <p-skeleton width=\"100px\" height=\"13px\" /><p-skeleton width=\"160px\" height=\"13px\" />\n </div>\n }\n </div>\n </div>\n }\n @if (status() === 'success' && result()) {\n <div @fadeInUp>\n <div class=\"sbd-result-panel__header\">\n <div class=\"sbd-result-panel__header-left\">\n <i class=\"pi pi-check-circle sbd-result-panel__check-icon\"></i>\n <span class=\"sbd-result-panel__header-label\">Result \u00B7 {{ actionLabel() }}</span>\n </div>\n <span class=\"sbd-result-panel__elapsed\">Found in {{ elapsedSeconds }}s</span>\n </div>\n <div class=\"sbd-result-panel__body\">\n <h2 class=\"sbd-result-panel__title\">{{ result()!.title }}</h2>\n @if (result()!.subtitle) { <p class=\"sbd-result-panel__subtitle\">{{ result()!.subtitle }}</p> }\n\n <!-- Sectioned layout (refund breakdown etc.) -->\n @if (result()!.sections?.length) {\n <div class=\"sbd-result-panel__sections\">\n @for (section of result()!.sections!; track section.title) {\n <div class=\"sbd-result-panel__section\">\n <div class=\"sbd-result-panel__section-title\">{{ section.title }}</div>\n @for (row of section.rows; track row.label) {\n @if (row.value) {\n <div class=\"sbd-result-panel__section-row\">\n <span class=\"sbd-result-panel__section-row-label\">{{ row.label }}</span>\n <span class=\"sbd-result-panel__section-row-value sbd-result-panel__section-row-value--{{ row.valueClass ?? 'neutral' }}\">{{ row.value }}</span>\n </div>\n } @else {\n <div class=\"sbd-result-panel__section-divider\">{{ row.label }}</div>\n }\n }\n </div>\n }\n </div>\n }\n\n <!-- Flat points layout (all other actions) -->\n @else if (result()!.points?.length) {\n <ul class=\"sbd-result-panel__points\">\n @for (point of result()!.points!; track point.label) {\n <li class=\"sbd-result-panel__point\">\n <span class=\"sbd-result-panel__point-label\">{{ point.label }}</span>\n <span class=\"sbd-result-panel__point-value\">{{ point.value }}</span>\n </li>\n }\n </ul>\n }\n\n @if (result()!.callout) {\n <div class=\"sbd-result-panel__callout sbd-result-panel__callout--{{ result()!.callout!.type }}\">\n <i class=\"pi pi-info-circle\"></i><span>{{ result()!.callout!.message }}</span>\n </div>\n }\n </div>\n <div class=\"sbd-result-panel__footer\">\n <div class=\"sbd-result-panel__feedback\">\n <span class=\"sbd-result-panel__feedback-label\">Helpful?</span>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--up\" (click)=\"feedbackGiven.emit('up')\">\n <i class=\"pi pi-thumbs-up\"></i>\n </button>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--down\" (click)=\"feedbackGiven.emit('down')\">\n <i class=\"pi pi-thumbs-down\"></i>\n </button>\n </div>\n </div>\n </div>\n }\n @if (status() === 'error') {\n <div class=\"sbd-result-panel__error\" @fadeInUp>\n <i class=\"pi pi-exclamation-triangle\"></i><span>Could not load this information. Please try again.</span>\n </div>\n }\n @if (status() === 'idle') {\n <div class=\"sbd-result-panel__idle\">\n <i class=\"pi pi-arrow-up-left\"></i><span>Select an action above to see results here</span>\n </div>\n }\n</div>\n", styles: [".sbd-result-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.sbd-result-panel__loading{padding:20px}.sbd-result-panel__loading-header{display:flex;justify-content:space-between;margin-bottom:14px}.sbd-result-panel__loading-points{display:flex;flex-direction:column;gap:10px}.sbd-result-panel__loading-row{display:flex;gap:24px}.sbd-result-panel__header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#00b67a12;border-bottom:1px solid rgba(0,182,122,.15)}.sbd-result-panel__header-left{display:flex;align-items:center;gap:8px}.sbd-result-panel__check-icon{color:#00b67a;font-size:15px}.sbd-result-panel__header-label{font-size:13px;font-weight:600;color:#1e2e4a}.sbd-result-panel__elapsed{font-size:11.5px;font-weight:600;color:#00b67a;background:#00b67a1a;border-radius:20px;padding:2px 10px}.sbd-result-panel__body{padding:20px}.sbd-result-panel__title{font-size:20px;font-weight:800;color:#1e2e4a;margin:0 0 4px}.sbd-result-panel__subtitle{font-size:13px;color:#94a3b8;margin:0 0 14px}.sbd-result-panel__points{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column}.sbd-result-panel__point{display:flex;align-items:baseline;gap:14px;padding:9px 0;border-bottom:1px solid #f1f5f9}.sbd-result-panel__point:last-child{border-bottom:none}.sbd-result-panel__point:before{content:\"\";width:6px;height:6px;border-radius:50%;background:var(--sbd-primary, #3b82f6);flex-shrink:0;margin-top:5px;align-self:flex-start}.sbd-result-panel__point-label{font-size:12px;color:#94a3b8;font-weight:500;width:140px;flex-shrink:0}.sbd-result-panel__point-value{font-size:13px;font-weight:600;color:#1e2e4a;flex:1}.sbd-result-panel__sections{display:flex;flex-direction:column;gap:14px;margin-bottom:14px}.sbd-result-panel__section{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.sbd-result-panel__section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;background:#f8fafc;padding:7px 12px;border-bottom:1px solid #e2e8f0}.sbd-result-panel__section-row{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-bottom:1px solid #f1f5f9;font-size:13px}.sbd-result-panel__section-row:last-child{border-bottom:none}.sbd-result-panel__section-row-label{color:#64748b;font-size:12.5px}.sbd-result-panel__section-row-value{font-weight:600;font-size:13px}.sbd-result-panel__section-row-value--positive{color:#16a34a}.sbd-result-panel__section-row-value--negative{color:#ef4444}.sbd-result-panel__section-row-value--neutral{color:#1e2e4a}.sbd-result-panel__section-divider{padding:5px 12px;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #f1f5f9;text-align:center}.sbd-result-panel__callout{display:flex;align-items:flex-start;gap:8px;padding:12px;border-radius:8px;font-size:12.5px;font-weight:500;border-left:3px solid #6366f1;background:#f8f9ff;color:#1e2e4a}.sbd-result-panel__callout--warning{border-left-color:#f97316;background:#f973160f}.sbd-result-panel__callout--tip{border-left-color:#0ea5e9;background:#0ea5e912}.sbd-result-panel__callout i{font-size:14px;margin-top:1px}.sbd-result-panel__footer{display:flex;align-items:center;justify-content:flex-end;padding:10px 20px;border-top:1px solid #f1f5f9;background:#f8fafc;gap:10px}.sbd-result-panel__feedback{display:flex;align-items:center;gap:6px}.sbd-result-panel__feedback-label{font-size:12px;color:#94a3b8;margin-right:2px}.sbd-result-panel__feedback-btn{background:none;border:1px solid #e2e8f0;border-radius:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.sbd-result-panel__feedback-btn .pi{font-size:14px;color:#94a3b8}.sbd-result-panel__feedback-btn:hover{border-color:#cbd5e1;background:#f1f5f9}.sbd-result-panel__feedback-btn:hover .pi{color:#475569}.sbd-result-panel__feedback-btn--up:hover{border-color:#86efac;background:#f0fdf4}.sbd-result-panel__feedback-btn--up:hover .pi{color:#16a34a}.sbd-result-panel__feedback-btn--down:hover{border-color:#fca5a5;background:#fef2f2}.sbd-result-panel__feedback-btn--down:hover .pi{color:#ef4444}.sbd-result-panel__error{display:flex;align-items:center;gap:8px;padding:24px;color:#ef4444;font-size:13.5px;font-weight:500}.sbd-result-panel__error i{font-size:18px}.sbd-result-panel__idle{display:flex;align-items:center;gap:8px;padding:24px;color:#94a3b8;font-size:13px}.sbd-result-panel__idle i{font-size:16px}\n"], dependencies: [{ kind: "ngmodule", type: SkeletonModule }, { kind: "component", type: i1.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "ngmodule", type: ButtonModule }], animations: [
|
|
27
27
|
trigger('fadeInUp', [
|
|
28
28
|
transition(':enter', [
|
|
29
29
|
style({ opacity: 0, transform: 'translateY(8px)' }),
|
|
@@ -41,6 +41,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
41
41
|
animate('200ms ease-out', style({ opacity: 1, transform: 'translateY(0)' })),
|
|
42
42
|
]),
|
|
43
43
|
]),
|
|
44
|
-
], template: "<div class=\"sbd-result-panel\">\n @if (status() === 'loading') {\n <div class=\"sbd-result-panel__loading\">\n <div class=\"sbd-result-panel__loading-header\">\n <p-skeleton width=\"200px\" height=\"18px\" /><p-skeleton width=\"80px\" height=\"18px\" />\n </div>\n <p-skeleton width=\"60%\" height=\"28px\" styleClass=\"mt-3 mb-2\" />\n <p-skeleton width=\"40%\" height=\"16px\" styleClass=\"mb-4\" />\n <div class=\"sbd-result-panel__loading-points\">\n @for (i of [1,2,3,4]; track i) {\n <div class=\"sbd-result-panel__loading-row\">\n <p-skeleton width=\"100px\" height=\"13px\" /><p-skeleton width=\"160px\" height=\"13px\" />\n </div>\n }\n </div>\n </div>\n }\n @if (status() === 'success' && result()) {\n <div @fadeInUp>\n <div class=\"sbd-result-panel__header\">\n <div class=\"sbd-result-panel__header-left\">\n <i class=\"pi pi-check-circle sbd-result-panel__check-icon\"></i>\n <span class=\"sbd-result-panel__header-label\">Result \u00B7 {{ actionLabel() }}</span>\n </div>\n <span class=\"sbd-result-panel__elapsed\">Found in {{ elapsedSeconds }}s</span>\n </div>\n <div class=\"sbd-result-panel__body\">\n <h2 class=\"sbd-result-panel__title\">{{ result()!.title }}</h2>\n @if (result()!.subtitle) { <p class=\"sbd-result-panel__subtitle\">{{ result()!.subtitle }}</p> }\n\n <!-- Sectioned layout (refund breakdown etc.) -->\n @if (result()!.sections?.length) {\n <div class=\"sbd-result-panel__sections\">\n @for (section of result()!.sections!; track section.title) {\n <div class=\"sbd-result-panel__section\">\n <div class=\"sbd-result-panel__section-title\">{{ section.title }}</div>\n @for (row of section.rows; track row.label) {\n @if (row.value) {\n <div class=\"sbd-result-panel__section-row\">\n <span class=\"sbd-result-panel__section-row-label\">{{ row.label }}</span>\n <span class=\"sbd-result-panel__section-row-value sbd-result-panel__section-row-value--{{ row.valueClass ?? 'neutral' }}\">{{ row.value }}</span>\n </div>\n } @else {\n <div class=\"sbd-result-panel__section-divider\">{{ row.label }}</div>\n }\n }\n </div>\n }\n </div>\n }\n\n <!-- Flat points layout (all other actions) -->\n @else if (result()!.points?.length) {\n <ul class=\"sbd-result-panel__points\">\n @for (point of result()!.points!; track point.label) {\n <li class=\"sbd-result-panel__point\">\n <span class=\"sbd-result-panel__point-label\">{{ point.label }}</span>\n <span class=\"sbd-result-panel__point-value\">{{ point.value }}</span>\n </li>\n }\n </ul>\n }\n\n @if (result()!.callout) {\n <div class=\"sbd-result-panel__callout sbd-result-panel__callout--{{ result()!.callout!.type }}\">\n <i class=\"pi pi-info-circle\"></i><span>{{ result()!.callout!.message }}</span>\n </div>\n }\n </div>\n <div class=\"sbd-result-panel__footer\">\n <div class=\"sbd-result-panel__feedback\">\n <span class=\"sbd-result-panel__feedback-label\">Helpful?</span>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--up\" (click)=\"feedbackGiven.emit('up')\">\n <i class=\"pi pi-thumbs-up\"></i>\n </button>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--down\" (click)=\"feedbackGiven.emit('down')\">\n <i class=\"pi pi-thumbs-down\"></i>\n </button>\n </div>\n </div>\n </div>\n }\n @if (status() === 'error') {\n <div class=\"sbd-result-panel__error\" @fadeInUp>\n <i class=\"pi pi-exclamation-triangle\"></i><span>Could not load this information. Please try again.</span>\n </div>\n }\n @if (status() === 'idle') {\n <div class=\"sbd-result-panel__idle\">\n <i class=\"pi pi-arrow-up-left\"></i><span>Select an action above to see results here</span>\n </div>\n }\n</div>\n", styles: [".sbd-result-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.sbd-result-panel__loading{padding:20px}.sbd-result-panel__loading-header{display:flex;justify-content:space-between;margin-bottom:14px}.sbd-result-panel__loading-points{display:flex;flex-direction:column;gap:10px}.sbd-result-panel__loading-row{display:flex;gap:24px}.sbd-result-panel__header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#00b67a12;border-bottom:1px solid rgba(0,182,122,.15)}.sbd-result-panel__header-left{display:flex;align-items:center;gap:8px}.sbd-result-panel__check-icon{color:#00b67a;font-size:15px}.sbd-result-panel__header-label{font-size:13px;font-weight:600;color:#1e2e4a}.sbd-result-panel__elapsed{font-size:11.5px;font-weight:600;color:#00b67a;background:#00b67a1a;border-radius:20px;padding:2px 10px}.sbd-result-panel__body{padding:20px}.sbd-result-panel__title{font-size:20px;font-weight:800;color:#1e2e4a;margin:0 0 4px}.sbd-result-panel__subtitle{font-size:13px;color:#94a3b8;margin:0 0 14px}.sbd-result-panel__points{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column}.sbd-result-panel__point{display:flex;align-items:baseline;gap:14px;padding:9px 0;border-bottom:1px solid #f1f5f9}.sbd-result-panel__point:last-child{border-bottom:none}.sbd-result-panel__point:before{content:\"\";width:6px;height:6px;border-radius:50%;background
|
|
44
|
+
], template: "<div class=\"sbd-result-panel\">\n @if (status() === 'loading') {\n <div class=\"sbd-result-panel__loading\">\n <div class=\"sbd-result-panel__loading-header\">\n <p-skeleton width=\"200px\" height=\"18px\" /><p-skeleton width=\"80px\" height=\"18px\" />\n </div>\n <p-skeleton width=\"60%\" height=\"28px\" styleClass=\"mt-3 mb-2\" />\n <p-skeleton width=\"40%\" height=\"16px\" styleClass=\"mb-4\" />\n <div class=\"sbd-result-panel__loading-points\">\n @for (i of [1,2,3,4]; track i) {\n <div class=\"sbd-result-panel__loading-row\">\n <p-skeleton width=\"100px\" height=\"13px\" /><p-skeleton width=\"160px\" height=\"13px\" />\n </div>\n }\n </div>\n </div>\n }\n @if (status() === 'success' && result()) {\n <div @fadeInUp>\n <div class=\"sbd-result-panel__header\">\n <div class=\"sbd-result-panel__header-left\">\n <i class=\"pi pi-check-circle sbd-result-panel__check-icon\"></i>\n <span class=\"sbd-result-panel__header-label\">Result \u00B7 {{ actionLabel() }}</span>\n </div>\n <span class=\"sbd-result-panel__elapsed\">Found in {{ elapsedSeconds }}s</span>\n </div>\n <div class=\"sbd-result-panel__body\">\n <h2 class=\"sbd-result-panel__title\">{{ result()!.title }}</h2>\n @if (result()!.subtitle) { <p class=\"sbd-result-panel__subtitle\">{{ result()!.subtitle }}</p> }\n\n <!-- Sectioned layout (refund breakdown etc.) -->\n @if (result()!.sections?.length) {\n <div class=\"sbd-result-panel__sections\">\n @for (section of result()!.sections!; track section.title) {\n <div class=\"sbd-result-panel__section\">\n <div class=\"sbd-result-panel__section-title\">{{ section.title }}</div>\n @for (row of section.rows; track row.label) {\n @if (row.value) {\n <div class=\"sbd-result-panel__section-row\">\n <span class=\"sbd-result-panel__section-row-label\">{{ row.label }}</span>\n <span class=\"sbd-result-panel__section-row-value sbd-result-panel__section-row-value--{{ row.valueClass ?? 'neutral' }}\">{{ row.value }}</span>\n </div>\n } @else {\n <div class=\"sbd-result-panel__section-divider\">{{ row.label }}</div>\n }\n }\n </div>\n }\n </div>\n }\n\n <!-- Flat points layout (all other actions) -->\n @else if (result()!.points?.length) {\n <ul class=\"sbd-result-panel__points\">\n @for (point of result()!.points!; track point.label) {\n <li class=\"sbd-result-panel__point\">\n <span class=\"sbd-result-panel__point-label\">{{ point.label }}</span>\n <span class=\"sbd-result-panel__point-value\">{{ point.value }}</span>\n </li>\n }\n </ul>\n }\n\n @if (result()!.callout) {\n <div class=\"sbd-result-panel__callout sbd-result-panel__callout--{{ result()!.callout!.type }}\">\n <i class=\"pi pi-info-circle\"></i><span>{{ result()!.callout!.message }}</span>\n </div>\n }\n </div>\n <div class=\"sbd-result-panel__footer\">\n <div class=\"sbd-result-panel__feedback\">\n <span class=\"sbd-result-panel__feedback-label\">Helpful?</span>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--up\" (click)=\"feedbackGiven.emit('up')\">\n <i class=\"pi pi-thumbs-up\"></i>\n </button>\n <button class=\"sbd-result-panel__feedback-btn sbd-result-panel__feedback-btn--down\" (click)=\"feedbackGiven.emit('down')\">\n <i class=\"pi pi-thumbs-down\"></i>\n </button>\n </div>\n </div>\n </div>\n }\n @if (status() === 'error') {\n <div class=\"sbd-result-panel__error\" @fadeInUp>\n <i class=\"pi pi-exclamation-triangle\"></i><span>Could not load this information. Please try again.</span>\n </div>\n }\n @if (status() === 'idle') {\n <div class=\"sbd-result-panel__idle\">\n <i class=\"pi pi-arrow-up-left\"></i><span>Select an action above to see results here</span>\n </div>\n }\n</div>\n", styles: [".sbd-result-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.sbd-result-panel__loading{padding:20px}.sbd-result-panel__loading-header{display:flex;justify-content:space-between;margin-bottom:14px}.sbd-result-panel__loading-points{display:flex;flex-direction:column;gap:10px}.sbd-result-panel__loading-row{display:flex;gap:24px}.sbd-result-panel__header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#00b67a12;border-bottom:1px solid rgba(0,182,122,.15)}.sbd-result-panel__header-left{display:flex;align-items:center;gap:8px}.sbd-result-panel__check-icon{color:#00b67a;font-size:15px}.sbd-result-panel__header-label{font-size:13px;font-weight:600;color:#1e2e4a}.sbd-result-panel__elapsed{font-size:11.5px;font-weight:600;color:#00b67a;background:#00b67a1a;border-radius:20px;padding:2px 10px}.sbd-result-panel__body{padding:20px}.sbd-result-panel__title{font-size:20px;font-weight:800;color:#1e2e4a;margin:0 0 4px}.sbd-result-panel__subtitle{font-size:13px;color:#94a3b8;margin:0 0 14px}.sbd-result-panel__points{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column}.sbd-result-panel__point{display:flex;align-items:baseline;gap:14px;padding:9px 0;border-bottom:1px solid #f1f5f9}.sbd-result-panel__point:last-child{border-bottom:none}.sbd-result-panel__point:before{content:\"\";width:6px;height:6px;border-radius:50%;background:var(--sbd-primary, #3b82f6);flex-shrink:0;margin-top:5px;align-self:flex-start}.sbd-result-panel__point-label{font-size:12px;color:#94a3b8;font-weight:500;width:140px;flex-shrink:0}.sbd-result-panel__point-value{font-size:13px;font-weight:600;color:#1e2e4a;flex:1}.sbd-result-panel__sections{display:flex;flex-direction:column;gap:14px;margin-bottom:14px}.sbd-result-panel__section{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.sbd-result-panel__section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;background:#f8fafc;padding:7px 12px;border-bottom:1px solid #e2e8f0}.sbd-result-panel__section-row{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-bottom:1px solid #f1f5f9;font-size:13px}.sbd-result-panel__section-row:last-child{border-bottom:none}.sbd-result-panel__section-row-label{color:#64748b;font-size:12.5px}.sbd-result-panel__section-row-value{font-weight:600;font-size:13px}.sbd-result-panel__section-row-value--positive{color:#16a34a}.sbd-result-panel__section-row-value--negative{color:#ef4444}.sbd-result-panel__section-row-value--neutral{color:#1e2e4a}.sbd-result-panel__section-divider{padding:5px 12px;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #f1f5f9;text-align:center}.sbd-result-panel__callout{display:flex;align-items:flex-start;gap:8px;padding:12px;border-radius:8px;font-size:12.5px;font-weight:500;border-left:3px solid #6366f1;background:#f8f9ff;color:#1e2e4a}.sbd-result-panel__callout--warning{border-left-color:#f97316;background:#f973160f}.sbd-result-panel__callout--tip{border-left-color:#0ea5e9;background:#0ea5e912}.sbd-result-panel__callout i{font-size:14px;margin-top:1px}.sbd-result-panel__footer{display:flex;align-items:center;justify-content:flex-end;padding:10px 20px;border-top:1px solid #f1f5f9;background:#f8fafc;gap:10px}.sbd-result-panel__feedback{display:flex;align-items:center;gap:6px}.sbd-result-panel__feedback-label{font-size:12px;color:#94a3b8;margin-right:2px}.sbd-result-panel__feedback-btn{background:none;border:1px solid #e2e8f0;border-radius:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.sbd-result-panel__feedback-btn .pi{font-size:14px;color:#94a3b8}.sbd-result-panel__feedback-btn:hover{border-color:#cbd5e1;background:#f1f5f9}.sbd-result-panel__feedback-btn:hover .pi{color:#475569}.sbd-result-panel__feedback-btn--up:hover{border-color:#86efac;background:#f0fdf4}.sbd-result-panel__feedback-btn--up:hover .pi{color:#16a34a}.sbd-result-panel__feedback-btn--down:hover{border-color:#fca5a5;background:#fef2f2}.sbd-result-panel__feedback-btn--down:hover .pi{color:#ef4444}.sbd-result-panel__error{display:flex;align-items:center;gap:8px;padding:24px;color:#ef4444;font-size:13.5px;font-weight:500}.sbd-result-panel__error i{font-size:18px}.sbd-result-panel__idle{display:flex;align-items:center;gap:8px;padding:24px;color:#94a3b8;font-size:13px}.sbd-result-panel__idle i{font-size:16px}\n"] }]
|
|
45
45
|
}] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0LXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9yZXN1bHQtcGFuZWwvcmVzdWx0LXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9yZXN1bHQtcGFuZWwvcmVzdWx0LXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFpQi9ELE1BQU0sT0FBTyx1QkFBdUI7SUFmcEM7UUFnQlUsVUFBSyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV4QyxnQkFBVyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4QixjQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLFdBQU0sR0FBRyxLQUFLLENBQTJDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pFLFdBQU0sR0FBRyxLQUFLLENBQXVCLElBQUksQ0FBQyxDQUFDO1FBRTNDLGtCQUFhLEdBQUcsTUFBTSxFQUFpQixDQUFDO0tBVXpDO0lBUkMsSUFBSSxjQUFjLEtBQWEsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTdFLElBQUk7UUFDRixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLENBQUM7WUFBRSxPQUFPO1FBQ2YsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxRQUFRLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9KLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7K0dBakJVLHVCQUF1QjttR0FBdkIsdUJBQXVCLDZvQkN0QnBDLG94SUE2RkEsKzhJRG5GWSxjQUFjLGtNQUFFLFlBQVksaUJBRzFCO1lBQ1YsT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDbEIsVUFBVSxDQUFDLFFBQVEsRUFBRTtvQkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztvQkFDbkQsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7aUJBQzdFLENBQUM7YUFDSCxDQUFDO1NBQ0g7OzRGQUVVLHVCQUF1QjtrQkFmbkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxjQUczQjt3QkFDVixPQUFPLENBQUMsVUFBVSxFQUFFOzRCQUNsQixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO2dDQUNuRCxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQzs2QkFDN0UsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgb3V0cHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRyaWdnZXIsIHRyYW5zaXRpb24sIHN0eWxlLCBhbmltYXRlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvc2tlbGV0b24nO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9idXR0b24nO1xuaW1wb3J0IHsgUmVzdWx0Q29udGVudCB9IGZyb20gJy4uLy4uL21vZGVscy9hY3Rpb24udHlwZXMnO1xuaW1wb3J0IHsgU2JkVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1zYmQtcmVzdWx0LXBhbmVsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1NrZWxldG9uTW9kdWxlLCBCdXR0b25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzdWx0LXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3Jlc3VsdC1wYW5lbC5jb21wb25lbnQuc2NzcycsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdmYWRlSW5VcCcsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDhweCknIH0pLFxuICAgICAgICBhbmltYXRlKCcyMDBtcyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScgfSkpLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNiZFJlc3VsdFBhbmVsQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSB0b2FzdCA9IGluamVjdChTYmRUb2FzdFNlcnZpY2UpO1xuXG4gIGFjdGlvbkxhYmVsID0gaW5wdXQoJycpO1xuICBlbGFwc2VkTXMgPSBpbnB1dCgwKTtcbiAgc3RhdHVzID0gaW5wdXQ8J2lkbGUnIHwgJ2xvYWRpbmcnIHwgJ3N1Y2Nlc3MnIHwgJ2Vycm9yJz4oJ2lkbGUnKTtcbiAgcmVzdWx0ID0gaW5wdXQ8UmVzdWx0Q29udGVudCB8IG51bGw+KG51bGwpO1xuXG4gIGZlZWRiYWNrR2l2ZW4gPSBvdXRwdXQ8J3VwJyB8ICdkb3duJz4oKTtcblxuICBnZXQgZWxhcHNlZFNlY29uZHMoKTogc3RyaW5nIHsgcmV0dXJuICh0aGlzLmVsYXBzZWRNcygpIC8gMTAwMCkudG9GaXhlZCgyKTsgfVxuXG4gIGNvcHkoKTogdm9pZCB7XG4gICAgY29uc3QgciA9IHRoaXMucmVzdWx0KCk7XG4gICAgaWYgKCFyKSByZXR1cm47XG4gICAgY29uc3QgbGluZXMgPSBbci50aXRsZSwgci5zdWJ0aXRsZSA/PyAnJywgJycsIC4uLnIucG9pbnRzLm1hcChwID0+IGAke3AubGFiZWx9OiAke3AudmFsdWV9YCksIHIuY2FsbG91dCA/IGBcXG5Ob3RlOiAke3IuY2FsbG91dC5tZXNzYWdlfWAgOiAnJ10uZmlsdGVyKEJvb2xlYW4pO1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGxpbmVzLmpvaW4oJ1xcbicpKS50aGVuKCgpID0+IHRoaXMudG9hc3Quc3VjY2VzcygnQ29waWVkIHRvIGNsaXBib2FyZCcpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxcIj5cbiAgQGlmIChzdGF0dXMoKSA9PT0gJ2xvYWRpbmcnKSB7XG4gICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2xvYWRpbmdcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19sb2FkaW5nLWhlYWRlclwiPlxuICAgICAgICA8cC1za2VsZXRvbiB3aWR0aD1cIjIwMHB4XCIgaGVpZ2h0PVwiMThweFwiIC8+PHAtc2tlbGV0b24gd2lkdGg9XCI4MHB4XCIgaGVpZ2h0PVwiMThweFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiNjAlXCIgaGVpZ2h0PVwiMjhweFwiIHN0eWxlQ2xhc3M9XCJtdC0zIG1iLTJcIiAvPlxuICAgICAgPHAtc2tlbGV0b24gd2lkdGg9XCI0MCVcIiBoZWlnaHQ9XCIxNnB4XCIgc3R5bGVDbGFzcz1cIm1iLTRcIiAvPlxuICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2xvYWRpbmctcG9pbnRzXCI+XG4gICAgICAgIEBmb3IgKGkgb2YgWzEsMiwzLDRdOyB0cmFjayBpKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2xvYWRpbmctcm93XCI+XG4gICAgICAgICAgICA8cC1za2VsZXRvbiB3aWR0aD1cIjEwMHB4XCIgaGVpZ2h0PVwiMTNweFwiIC8+PHAtc2tlbGV0b24gd2lkdGg9XCIxNjBweFwiIGhlaWdodD1cIjEzcHhcIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgfVxuICBAaWYgKHN0YXR1cygpID09PSAnc3VjY2VzcycgJiYgcmVzdWx0KCkpIHtcbiAgICA8ZGl2IEBmYWRlSW5VcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19oZWFkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2hlYWRlci1sZWZ0XCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1jaGVjay1jaXJjbGUgc2JkLXJlc3VsdC1wYW5lbF9fY2hlY2staWNvblwiPjwvaT5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2hlYWRlci1sYWJlbFwiPlJlc3VsdCDCtyB7eyBhY3Rpb25MYWJlbCgpIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19lbGFwc2VkXCI+Rm91bmQgaW4ge3sgZWxhcHNlZFNlY29uZHMgfX1zPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fYm9keVwiPlxuICAgICAgICA8aDIgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX190aXRsZVwiPnt7IHJlc3VsdCgpIS50aXRsZSB9fTwvaDI+XG4gICAgICAgIEBpZiAocmVzdWx0KCkhLnN1YnRpdGxlKSB7IDxwIGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fc3VidGl0bGVcIj57eyByZXN1bHQoKSEuc3VidGl0bGUgfX08L3A+IH1cblxuICAgICAgICA8IS0tIFNlY3Rpb25lZCBsYXlvdXQgKHJlZnVuZCBicmVha2Rvd24gZXRjLikgLS0+XG4gICAgICAgIEBpZiAocmVzdWx0KCkhLnNlY3Rpb25zPy5sZW5ndGgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fc2VjdGlvbnNcIj5cbiAgICAgICAgICAgIEBmb3IgKHNlY3Rpb24gb2YgcmVzdWx0KCkhLnNlY3Rpb25zITsgdHJhY2sgc2VjdGlvbi50aXRsZSkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fc2VjdGlvblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19zZWN0aW9uLXRpdGxlXCI+e3sgc2VjdGlvbi50aXRsZSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIEBmb3IgKHJvdyBvZiBzZWN0aW9uLnJvd3M7IHRyYWNrIHJvdy5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgQGlmIChyb3cudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3NlY3Rpb24tcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19zZWN0aW9uLXJvdy1sYWJlbFwiPnt7IHJvdy5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3NlY3Rpb24tcm93LXZhbHVlIHNiZC1yZXN1bHQtcGFuZWxfX3NlY3Rpb24tcm93LXZhbHVlLS17eyByb3cudmFsdWVDbGFzcyA/PyAnbmV1dHJhbCcgfX1cIj57eyByb3cudmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19zZWN0aW9uLWRpdmlkZXJcIj57eyByb3cubGFiZWwgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPCEtLSBGbGF0IHBvaW50cyBsYXlvdXQgKGFsbCBvdGhlciBhY3Rpb25zKSAtLT5cbiAgICAgICAgQGVsc2UgaWYgKHJlc3VsdCgpIS5wb2ludHM/Lmxlbmd0aCkge1xuICAgICAgICAgIDx1bCBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3BvaW50c1wiPlxuICAgICAgICAgICAgQGZvciAocG9pbnQgb2YgcmVzdWx0KCkhLnBvaW50cyE7IHRyYWNrIHBvaW50LmxhYmVsKSB7XG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3BvaW50XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19wb2ludC1sYWJlbFwiPnt7IHBvaW50LmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fcG9pbnQtdmFsdWVcIj57eyBwb2ludC52YWx1ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3VsPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChyZXN1bHQoKSEuY2FsbG91dCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19jYWxsb3V0IHNiZC1yZXN1bHQtcGFuZWxfX2NhbGxvdXQtLXt7IHJlc3VsdCgpIS5jYWxsb3V0IS50eXBlIH19XCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWluZm8tY2lyY2xlXCI+PC9pPjxzcGFuPnt7IHJlc3VsdCgpIS5jYWxsb3V0IS5tZXNzYWdlIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mb290ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2ZlZWRiYWNrXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mZWVkYmFjay1sYWJlbFwiPkhlbHBmdWw/PC9zcGFuPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mZWVkYmFjay1idG4gc2JkLXJlc3VsdC1wYW5lbF9fZmVlZGJhY2stYnRuLS11cFwiIChjbGljayk9XCJmZWVkYmFja0dpdmVuLmVtaXQoJ3VwJylcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwicGkgcGktdGh1bWJzLXVwXCI+PC9pPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mZWVkYmFjay1idG4gc2JkLXJlc3VsdC1wYW5lbF9fZmVlZGJhY2stYnRuLS1kb3duXCIgKGNsaWNrKT1cImZlZWRiYWNrR2l2ZW4uZW1pdCgnZG93bicpXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXRodW1icy1kb3duXCI+PC9pPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAoc3RhdHVzKCkgPT09ICdlcnJvcicpIHtcbiAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fZXJyb3JcIiBAZmFkZUluVXA+XG4gICAgICA8aSBjbGFzcz1cInBpIHBpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCI+PC9pPjxzcGFuPkNvdWxkIG5vdCBsb2FkIHRoaXMgaW5mb3JtYXRpb24uIFBsZWFzZSB0cnkgYWdhaW4uPC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAoc3RhdHVzKCkgPT09ICdpZGxlJykge1xuICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19pZGxlXCI+XG4gICAgICA8aSBjbGFzcz1cInBpIHBpLWFycm93LXVwLWxlZnRcIj48L2k+PHNwYW4+U2VsZWN0IGFuIGFjdGlvbiBhYm92ZSB0byBzZWUgcmVzdWx0cyBoZXJlPC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0LXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9yZXN1bHQtcGFuZWwvcmVzdWx0LXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9yZXN1bHQtcGFuZWwvcmVzdWx0LXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFpQi9ELE1BQU0sT0FBTyx1QkFBdUI7SUFmcEM7UUFnQlUsVUFBSyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV4QyxnQkFBVyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4QixjQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLFdBQU0sR0FBRyxLQUFLLENBQTJDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pFLFdBQU0sR0FBRyxLQUFLLENBQXVCLElBQUksQ0FBQyxDQUFDO1FBRTNDLGtCQUFhLEdBQUcsTUFBTSxFQUFpQixDQUFDO0tBVXpDO0lBUkMsSUFBSSxjQUFjLEtBQWEsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTdFLElBQUk7UUFDRixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLENBQUM7WUFBRSxPQUFPO1FBQ2YsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxRQUFRLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9KLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7K0dBakJVLHVCQUF1QjttR0FBdkIsdUJBQXVCLDZvQkN0QnBDLG94SUE2RkEsbStJRG5GWSxjQUFjLGtNQUFFLFlBQVksaUJBRzFCO1lBQ1YsT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDbEIsVUFBVSxDQUFDLFFBQVEsRUFBRTtvQkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztvQkFDbkQsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7aUJBQzdFLENBQUM7YUFDSCxDQUFDO1NBQ0g7OzRGQUVVLHVCQUF1QjtrQkFmbkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxjQUczQjt3QkFDVixPQUFPLENBQUMsVUFBVSxFQUFFOzRCQUNsQixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO2dDQUNuRCxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQzs2QkFDN0UsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgb3V0cHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRyaWdnZXIsIHRyYW5zaXRpb24sIHN0eWxlLCBhbmltYXRlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvc2tlbGV0b24nO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9idXR0b24nO1xuaW1wb3J0IHsgUmVzdWx0Q29udGVudCB9IGZyb20gJy4uLy4uL21vZGVscy9hY3Rpb24udHlwZXMnO1xuaW1wb3J0IHsgU2JkVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1zYmQtcmVzdWx0LXBhbmVsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1NrZWxldG9uTW9kdWxlLCBCdXR0b25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzdWx0LXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3Jlc3VsdC1wYW5lbC5jb21wb25lbnQuc2NzcycsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdmYWRlSW5VcCcsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDhweCknIH0pLFxuICAgICAgICBhbmltYXRlKCcyMDBtcyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScgfSkpLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNiZFJlc3VsdFBhbmVsQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSB0b2FzdCA9IGluamVjdChTYmRUb2FzdFNlcnZpY2UpO1xuXG4gIGFjdGlvbkxhYmVsID0gaW5wdXQoJycpO1xuICBlbGFwc2VkTXMgPSBpbnB1dCgwKTtcbiAgc3RhdHVzID0gaW5wdXQ8J2lkbGUnIHwgJ2xvYWRpbmcnIHwgJ3N1Y2Nlc3MnIHwgJ2Vycm9yJz4oJ2lkbGUnKTtcbiAgcmVzdWx0ID0gaW5wdXQ8UmVzdWx0Q29udGVudCB8IG51bGw+KG51bGwpO1xuXG4gIGZlZWRiYWNrR2l2ZW4gPSBvdXRwdXQ8J3VwJyB8ICdkb3duJz4oKTtcblxuICBnZXQgZWxhcHNlZFNlY29uZHMoKTogc3RyaW5nIHsgcmV0dXJuICh0aGlzLmVsYXBzZWRNcygpIC8gMTAwMCkudG9GaXhlZCgyKTsgfVxuXG4gIGNvcHkoKTogdm9pZCB7XG4gICAgY29uc3QgciA9IHRoaXMucmVzdWx0KCk7XG4gICAgaWYgKCFyKSByZXR1cm47XG4gICAgY29uc3QgbGluZXMgPSBbci50aXRsZSwgci5zdWJ0aXRsZSA/PyAnJywgJycsIC4uLnIucG9pbnRzLm1hcChwID0+IGAke3AubGFiZWx9OiAke3AudmFsdWV9YCksIHIuY2FsbG91dCA/IGBcXG5Ob3RlOiAke3IuY2FsbG91dC5tZXNzYWdlfWAgOiAnJ10uZmlsdGVyKEJvb2xlYW4pO1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGxpbmVzLmpvaW4oJ1xcbicpKS50aGVuKCgpID0+IHRoaXMudG9hc3Quc3VjY2VzcygnQ29waWVkIHRvIGNsaXBib2FyZCcpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxcIj5cbiAgQGlmIChzdGF0dXMoKSA9PT0gJ2xvYWRpbmcnKSB7XG4gICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2xvYWRpbmdcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19sb2FkaW5nLWhlYWRlclwiPlxuICAgICAgICA8cC1za2VsZXRvbiB3aWR0aD1cIjIwMHB4XCIgaGVpZ2h0PVwiMThweFwiIC8+PHAtc2tlbGV0b24gd2lkdGg9XCI4MHB4XCIgaGVpZ2h0PVwiMThweFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiNjAlXCIgaGVpZ2h0PVwiMjhweFwiIHN0eWxlQ2xhc3M9XCJtdC0zIG1iLTJcIiAvPlxuICAgICAgPHAtc2tlbGV0b24gd2lkdGg9XCI0MCVcIiBoZWlnaHQ9XCIxNnB4XCIgc3R5bGVDbGFzcz1cIm1iLTRcIiAvPlxuICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2xvYWRpbmctcG9pbnRzXCI+XG4gICAgICAgIEBmb3IgKGkgb2YgWzEsMiwzLDRdOyB0cmFjayBpKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2xvYWRpbmctcm93XCI+XG4gICAgICAgICAgICA8cC1za2VsZXRvbiB3aWR0aD1cIjEwMHB4XCIgaGVpZ2h0PVwiMTNweFwiIC8+PHAtc2tlbGV0b24gd2lkdGg9XCIxNjBweFwiIGhlaWdodD1cIjEzcHhcIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgfVxuICBAaWYgKHN0YXR1cygpID09PSAnc3VjY2VzcycgJiYgcmVzdWx0KCkpIHtcbiAgICA8ZGl2IEBmYWRlSW5VcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19oZWFkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2hlYWRlci1sZWZ0XCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1jaGVjay1jaXJjbGUgc2JkLXJlc3VsdC1wYW5lbF9fY2hlY2staWNvblwiPjwvaT5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2hlYWRlci1sYWJlbFwiPlJlc3VsdCDCtyB7eyBhY3Rpb25MYWJlbCgpIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19lbGFwc2VkXCI+Rm91bmQgaW4ge3sgZWxhcHNlZFNlY29uZHMgfX1zPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fYm9keVwiPlxuICAgICAgICA8aDIgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX190aXRsZVwiPnt7IHJlc3VsdCgpIS50aXRsZSB9fTwvaDI+XG4gICAgICAgIEBpZiAocmVzdWx0KCkhLnN1YnRpdGxlKSB7IDxwIGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fc3VidGl0bGVcIj57eyByZXN1bHQoKSEuc3VidGl0bGUgfX08L3A+IH1cblxuICAgICAgICA8IS0tIFNlY3Rpb25lZCBsYXlvdXQgKHJlZnVuZCBicmVha2Rvd24gZXRjLikgLS0+XG4gICAgICAgIEBpZiAocmVzdWx0KCkhLnNlY3Rpb25zPy5sZW5ndGgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fc2VjdGlvbnNcIj5cbiAgICAgICAgICAgIEBmb3IgKHNlY3Rpb24gb2YgcmVzdWx0KCkhLnNlY3Rpb25zITsgdHJhY2sgc2VjdGlvbi50aXRsZSkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fc2VjdGlvblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19zZWN0aW9uLXRpdGxlXCI+e3sgc2VjdGlvbi50aXRsZSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIEBmb3IgKHJvdyBvZiBzZWN0aW9uLnJvd3M7IHRyYWNrIHJvdy5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgQGlmIChyb3cudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3NlY3Rpb24tcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19zZWN0aW9uLXJvdy1sYWJlbFwiPnt7IHJvdy5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3NlY3Rpb24tcm93LXZhbHVlIHNiZC1yZXN1bHQtcGFuZWxfX3NlY3Rpb24tcm93LXZhbHVlLS17eyByb3cudmFsdWVDbGFzcyA/PyAnbmV1dHJhbCcgfX1cIj57eyByb3cudmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19zZWN0aW9uLWRpdmlkZXJcIj57eyByb3cubGFiZWwgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPCEtLSBGbGF0IHBvaW50cyBsYXlvdXQgKGFsbCBvdGhlciBhY3Rpb25zKSAtLT5cbiAgICAgICAgQGVsc2UgaWYgKHJlc3VsdCgpIS5wb2ludHM/Lmxlbmd0aCkge1xuICAgICAgICAgIDx1bCBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3BvaW50c1wiPlxuICAgICAgICAgICAgQGZvciAocG9pbnQgb2YgcmVzdWx0KCkhLnBvaW50cyE7IHRyYWNrIHBvaW50LmxhYmVsKSB7XG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX3BvaW50XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19wb2ludC1sYWJlbFwiPnt7IHBvaW50LmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fcG9pbnQtdmFsdWVcIj57eyBwb2ludC52YWx1ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3VsPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChyZXN1bHQoKSEuY2FsbG91dCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19jYWxsb3V0IHNiZC1yZXN1bHQtcGFuZWxfX2NhbGxvdXQtLXt7IHJlc3VsdCgpIS5jYWxsb3V0IS50eXBlIH19XCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWluZm8tY2lyY2xlXCI+PC9pPjxzcGFuPnt7IHJlc3VsdCgpIS5jYWxsb3V0IS5tZXNzYWdlIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mb290ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiZC1yZXN1bHQtcGFuZWxfX2ZlZWRiYWNrXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mZWVkYmFjay1sYWJlbFwiPkhlbHBmdWw/PC9zcGFuPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mZWVkYmFjay1idG4gc2JkLXJlc3VsdC1wYW5lbF9fZmVlZGJhY2stYnRuLS11cFwiIChjbGljayk9XCJmZWVkYmFja0dpdmVuLmVtaXQoJ3VwJylcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwicGkgcGktdGh1bWJzLXVwXCI+PC9pPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19mZWVkYmFjay1idG4gc2JkLXJlc3VsdC1wYW5lbF9fZmVlZGJhY2stYnRuLS1kb3duXCIgKGNsaWNrKT1cImZlZWRiYWNrR2l2ZW4uZW1pdCgnZG93bicpXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXRodW1icy1kb3duXCI+PC9pPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAoc3RhdHVzKCkgPT09ICdlcnJvcicpIHtcbiAgICA8ZGl2IGNsYXNzPVwic2JkLXJlc3VsdC1wYW5lbF9fZXJyb3JcIiBAZmFkZUluVXA+XG4gICAgICA8aSBjbGFzcz1cInBpIHBpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCI+PC9pPjxzcGFuPkNvdWxkIG5vdCBsb2FkIHRoaXMgaW5mb3JtYXRpb24uIFBsZWFzZSB0cnkgYWdhaW4uPC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAoc3RhdHVzKCkgPT09ICdpZGxlJykge1xuICAgIDxkaXYgY2xhc3M9XCJzYmQtcmVzdWx0LXBhbmVsX19pZGxlXCI+XG4gICAgICA8aSBjbGFzcz1cInBpIHBpLWFycm93LXVwLWxlZnRcIj48L2k+PHNwYW4+U2VsZWN0IGFuIGFjdGlvbiBhYm92ZSB0byBzZWUgcmVzdWx0cyBoZXJlPC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ButtonModule } from 'primeng/button';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "primeng/button";
|
|
7
|
+
export class ConfirmModalComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.visible = false;
|
|
10
|
+
this.title = '';
|
|
11
|
+
this.message = '';
|
|
12
|
+
this.confirmLabel = 'Confirm';
|
|
13
|
+
this.cancelLabel = 'Cancel';
|
|
14
|
+
this.visibleChange = new EventEmitter();
|
|
15
|
+
this.confirm = new EventEmitter();
|
|
16
|
+
this.cancel = new EventEmitter();
|
|
17
|
+
}
|
|
18
|
+
onConfirm() {
|
|
19
|
+
this.confirm.emit();
|
|
20
|
+
this.close();
|
|
21
|
+
}
|
|
22
|
+
onCancel() {
|
|
23
|
+
this.cancel.emit();
|
|
24
|
+
this.close();
|
|
25
|
+
}
|
|
26
|
+
close() {
|
|
27
|
+
this.visible = false;
|
|
28
|
+
this.visibleChange.emit(false);
|
|
29
|
+
}
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConfirmModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ConfirmModalComponent, isStandalone: true, selector: "confirm-modal", inputs: { visible: "visible", title: "title", message: "message", confirmLabel: "confirmLabel", cancelLabel: "cancelLabel" }, outputs: { visibleChange: "visibleChange", confirm: "confirm", cancel: "cancel" }, ngImport: i0, template: `
|
|
32
|
+
<div class="modal-overlay" *ngIf="visible" (click)="onCancel()">
|
|
33
|
+
<div class="modal-content" (click)="$event.stopPropagation()">
|
|
34
|
+
<h3>{{ title || 'Confirm' }}</h3>
|
|
35
|
+
<p>{{ message }}</p>
|
|
36
|
+
<div class="modal-actions">
|
|
37
|
+
<button pButton type="button" [label]="cancelLabel || 'Cancel'" class="p-button-secondary" (click)="onCancel()"></button>
|
|
38
|
+
<button pButton type="button" [label]="confirmLabel || 'Confirm'" (click)="onConfirm()"></button>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
`, isInline: true, styles: [".modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%}h3{margin-top:0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ConfirmModalComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'confirm-modal', standalone: true, imports: [CommonModule, ButtonModule], template: `
|
|
47
|
+
<div class="modal-overlay" *ngIf="visible" (click)="onCancel()">
|
|
48
|
+
<div class="modal-content" (click)="$event.stopPropagation()">
|
|
49
|
+
<h3>{{ title || 'Confirm' }}</h3>
|
|
50
|
+
<p>{{ message }}</p>
|
|
51
|
+
<div class="modal-actions">
|
|
52
|
+
<button pButton type="button" [label]="cancelLabel || 'Cancel'" class="p-button-secondary" (click)="onCancel()"></button>
|
|
53
|
+
<button pButton type="button" [label]="confirmLabel || 'Confirm'" (click)="onConfirm()"></button>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
`, styles: [".modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%}h3{margin-top:0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}\n"] }]
|
|
58
|
+
}], propDecorators: { visible: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], title: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], message: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], confirmLabel: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], cancelLabel: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], visibleChange: [{
|
|
69
|
+
type: Output
|
|
70
|
+
}], confirm: [{
|
|
71
|
+
type: Output
|
|
72
|
+
}], cancel: [{
|
|
73
|
+
type: Output
|
|
74
|
+
}] } });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1ib29raW5nLWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2NvbXBvbmVudHMvY29uZmlybS1tb2RhbC9jb25maXJtLW1vZGFsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFvRDlDLE1BQU0sT0FBTyxxQkFBcUI7SUFsRGxDO1FBbURXLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYixpQkFBWSxHQUFHLFNBQVMsQ0FBQztRQUN6QixnQkFBVyxHQUFHLFFBQVEsQ0FBQztRQUV0QixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDNUMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDbkMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7S0FnQjdDO0lBZEMsU0FBUztRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFFTyxLQUFLO1FBQ1gsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzsrR0F4QlUscUJBQXFCO21HQUFyQixxQkFBcUIsMFJBOUN0Qjs7Ozs7Ozs7Ozs7R0FXVCw4WkFaUyxZQUFZLGtJQUFFLFlBQVk7OzRGQStDekIscUJBQXFCO2tCQWxEakMsU0FBUzsrQkFDRSxlQUFlLGNBQ2IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxZQUMzQjs7Ozs7Ozs7Ozs7R0FXVDs4QkFvQ1EsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29uZmlybS1tb2RhbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEJ1dHRvbk1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLW92ZXJsYXlcIiAqbmdJZj1cInZpc2libGVcIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgIDxoMz57eyB0aXRsZSB8fCAnQ29uZmlybScgfX08L2gzPlxuICAgICAgICA8cD57eyBtZXNzYWdlIH19PC9wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYWN0aW9uc1wiPlxuICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2xhYmVsXT1cImNhbmNlbExhYmVsIHx8ICdDYW5jZWwnXCIgY2xhc3M9XCJwLWJ1dHRvbi1zZWNvbmRhcnlcIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPjwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2xhYmVsXT1cImNvbmZpcm1MYWJlbCB8fCAnQ29uZmlybSdcIiAoY2xpY2spPVwib25Db25maXJtKClcIj48L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC5tb2RhbC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB6LWluZGV4OiAyMDAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICB3aWR0aDogOTAlO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgLm1vZGFsLWFjdGlvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMXJlbTtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuICBgXVxufSlcbmV4cG9ydCBjbGFzcyBDb25maXJtTW9kYWxDb21wb25lbnQge1xuICBASW5wdXQoKSB2aXNpYmxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpdGxlID0gJyc7XG4gIEBJbnB1dCgpIG1lc3NhZ2UgPSAnJztcbiAgQElucHV0KCkgY29uZmlybUxhYmVsID0gJ0NvbmZpcm0nO1xuICBASW5wdXQoKSBjYW5jZWxMYWJlbCA9ICdDYW5jZWwnO1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgY29uZmlybSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBvbkNvbmZpcm0oKTogdm9pZCB7XG4gICAgdGhpcy5jb25maXJtLmVtaXQoKTtcbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICBvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICB0aGlzLmNhbmNlbC5lbWl0KCk7XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdChmYWxzZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ButtonModule } from 'primeng/button';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "primeng/button";
|
|
7
|
+
export class ManageBookingFailedModalComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.visible = false;
|
|
10
|
+
this.message = '';
|
|
11
|
+
this.visibleChange = new EventEmitter();
|
|
12
|
+
}
|
|
13
|
+
close() {
|
|
14
|
+
this.visible = false;
|
|
15
|
+
this.visibleChange.emit(false);
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ManageBookingFailedModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ManageBookingFailedModalComponent, isStandalone: true, selector: "manage-booking-failed-modal", inputs: { visible: "visible", message: "message" }, outputs: { visibleChange: "visibleChange" }, ngImport: i0, template: `
|
|
19
|
+
<div class="modal-overlay" *ngIf="visible" (click)="close()">
|
|
20
|
+
<div class="modal-content" (click)="$event.stopPropagation()">
|
|
21
|
+
<h3>Operation Failed</h3>
|
|
22
|
+
<p>{{ message || 'An error occurred. Please try again.' }}</p>
|
|
23
|
+
<button pButton type="button" label="Close" (click)="close()"></button>
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
`, isInline: true, styles: [".modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%}h3{margin-top:0;color:#d32f2f}p{margin:1rem 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ManageBookingFailedModalComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'manage-booking-failed-modal', standalone: true, imports: [CommonModule, ButtonModule], template: `
|
|
31
|
+
<div class="modal-overlay" *ngIf="visible" (click)="close()">
|
|
32
|
+
<div class="modal-content" (click)="$event.stopPropagation()">
|
|
33
|
+
<h3>Operation Failed</h3>
|
|
34
|
+
<p>{{ message || 'An error occurred. Please try again.' }}</p>
|
|
35
|
+
<button pButton type="button" label="Close" (click)="close()"></button>
|
|
36
|
+
</div>
|
|
37
|
+
</div>
|
|
38
|
+
`, styles: [".modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:400px;width:90%}h3{margin-top:0;color:#d32f2f}p{margin:1rem 0}\n"] }]
|
|
39
|
+
}], propDecorators: { visible: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], message: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], visibleChange: [{
|
|
44
|
+
type: Output
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLWJvb2tpbmctZmFpbGVkLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQvY29tcG9uZW50cy9tYW5hZ2UtYm9va2luZy1mYWlsZWQtbW9kYWwvbWFuYWdlLWJvb2tpbmctZmFpbGVkLW1vZGFsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUErQzlDLE1BQU0sT0FBTyxpQ0FBaUM7SUE3QzlDO1FBOENXLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUVaLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztLQU12RDtJQUpDLEtBQUs7UUFDSCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDOytHQVRVLGlDQUFpQzttR0FBakMsaUNBQWlDLHdMQXpDbEM7Ozs7Ozs7O0dBUVQsNFdBVFMsWUFBWSxrSUFBRSxZQUFZOzs0RkEwQ3pCLGlDQUFpQztrQkE3QzdDLFNBQVM7K0JBQ0UsNkJBQTZCLGNBQzNCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsWUFDM0I7Ozs7Ozs7O0dBUVQ7OEJBa0NRLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9idXR0b24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYW5hZ2UtYm9va2luZy1mYWlsZWQtbW9kYWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBCdXR0b25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1vdmVybGF5XCIgKm5nSWY9XCJ2aXNpYmxlXCIgKGNsaWNrKT1cImNsb3NlKClcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICA8aDM+T3BlcmF0aW9uIEZhaWxlZDwvaDM+XG4gICAgICAgIDxwPnt7IG1lc3NhZ2UgfHwgJ0FuIGVycm9yIG9jY3VycmVkLiBQbGVhc2UgdHJ5IGFnYWluLicgfX08L3A+XG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbGFiZWw9XCJDbG9zZVwiIChjbGljayk9XCJjbG9zZSgpXCI+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC5tb2RhbC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB6LWluZGV4OiAyMDAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICB3aWR0aDogOTAlO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBjb2xvcjogI2QzMmYyZjtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgTWFuYWdlQm9va2luZ0ZhaWxlZE1vZGFsQ29tcG9uZW50IHtcbiAgQElucHV0KCkgdmlzaWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBtZXNzYWdlID0gJyc7XG5cbiAgQE91dHB1dCgpIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export var HotelManageBookingAsideTabEnum;
|
|
2
|
+
(function (HotelManageBookingAsideTabEnum) {
|
|
3
|
+
HotelManageBookingAsideTabEnum["DETAILS"] = "details";
|
|
4
|
+
HotelManageBookingAsideTabEnum["CANCELLATION"] = "cancellation";
|
|
5
|
+
HotelManageBookingAsideTabEnum["MODIFICATION"] = "modification";
|
|
6
|
+
HotelManageBookingAsideTabEnum["REFUND"] = "refund";
|
|
7
|
+
HotelManageBookingAsideTabEnum["whatsAppAgent"] = "whatsAppAgent";
|
|
8
|
+
})(HotelManageBookingAsideTabEnum || (HotelManageBookingAsideTabEnum = {}));
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90ZWwtbWFuYWdlLWJvb2tpbmctYXNpZGUtdGFiLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1ib29raW5nLWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2VudW1zL2hvdGVsLW1hbmFnZS1ib29raW5nLWFzaWRlLXRhYi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLDhCQU1YO0FBTkQsV0FBWSw4QkFBOEI7SUFDeEMscURBQW1CLENBQUE7SUFDbkIsK0RBQTZCLENBQUE7SUFDN0IsK0RBQTZCLENBQUE7SUFDN0IsbURBQWlCLENBQUE7SUFDakIsaUVBQStCLENBQUE7QUFDakMsQ0FBQyxFQU5XLDhCQUE4QixLQUE5Qiw4QkFBOEIsUUFNekMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBIb3RlbE1hbmFnZUJvb2tpbmdBc2lkZVRhYkVudW0ge1xuICBERVRBSUxTID0gJ2RldGFpbHMnLFxuICBDQU5DRUxMQVRJT04gPSAnY2FuY2VsbGF0aW9uJyxcbiAgTU9ESUZJQ0FUSU9OID0gJ21vZGlmaWNhdGlvbicsXG4gIFJFRlVORCA9ICdyZWZ1bmQnLFxuICB3aGF0c0FwcEFnZW50ID0gJ3doYXRzQXBwQWdlbnQnXG59XG4iXX0=
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
// Flight refund details interfaces
|
|
2
|
+
export var PaymentGatewayCode;
|
|
3
|
+
(function (PaymentGatewayCode) {
|
|
4
|
+
PaymentGatewayCode["MADA"] = "MADA";
|
|
5
|
+
PaymentGatewayCode["VISA"] = "VISA";
|
|
6
|
+
PaymentGatewayCode["MASTERCARD"] = "MASTERCARD";
|
|
7
|
+
PaymentGatewayCode["AMEX"] = "AMEX";
|
|
8
|
+
PaymentGatewayCode["APPLE_PAY"] = "APPLE_PAY";
|
|
9
|
+
PaymentGatewayCode["AlRajhiMokafaa"] = "RAJHI";
|
|
10
|
+
PaymentGatewayCode["Qitaf"] = "QITAF";
|
|
11
|
+
PaymentGatewayCode["Wala"] = "WALA";
|
|
12
|
+
PaymentGatewayCode["Tamara"] = "TM";
|
|
13
|
+
PaymentGatewayCode["Tabby"] = "TB";
|
|
14
|
+
PaymentGatewayCode["Stc"] = "STC";
|
|
15
|
+
PaymentGatewayCode["CH"] = "CH";
|
|
16
|
+
PaymentGatewayCode["HP"] = "HP";
|
|
17
|
+
PaymentGatewayCode["MF"] = "MF";
|
|
18
|
+
PaymentGatewayCode["WT"] = "WT";
|
|
19
|
+
PaymentGatewayCode["TM"] = "TM";
|
|
20
|
+
PaymentGatewayCode["TB"] = "TB";
|
|
21
|
+
PaymentGatewayCode["RAJHI"] = "RAJHI";
|
|
22
|
+
PaymentGatewayCode["STC"] = "STC";
|
|
23
|
+
PaymentGatewayCode["PPB"] = "PPB";
|
|
24
|
+
PaymentGatewayCode["PP"] = "PP";
|
|
25
|
+
PaymentGatewayCode["TAMAM"] = "TAMAM";
|
|
26
|
+
PaymentGatewayCode["QITAF"] = "QITAF";
|
|
27
|
+
PaymentGatewayCode["WALA"] = "WALA";
|
|
28
|
+
})(PaymentGatewayCode || (PaymentGatewayCode = {}));
|
|
29
|
+
/** Labels for `paymentMethodCustomerUsed` gateway codes returned by the backend. */
|
|
30
|
+
export const PAYMENT_GATEWAY_LABELS = {
|
|
31
|
+
CH: { en: 'Card', ar: 'البطاقة' },
|
|
32
|
+
HP: { en: 'Hyperpay', ar: 'هايبر باي' },
|
|
33
|
+
MF: { en: 'My Fatoora', ar: 'ماي فاتورة' },
|
|
34
|
+
WT: { en: 'Wire Transfer', ar: 'تحويل بنكي' },
|
|
35
|
+
STC: { en: 'STC', ar: 'STC' },
|
|
36
|
+
TM: { en: 'Tamara', ar: 'تمارا' },
|
|
37
|
+
TB: { en: 'Tabby', ar: 'تابي' },
|
|
38
|
+
RAJHI: { en: 'Al Rajhi Mokafaa', ar: 'الراجحي مكافآت' },
|
|
39
|
+
PPB: { en: 'Customer Balance', ar: 'رصيد العميل' },
|
|
40
|
+
PP: { en: 'Postpay', ar: 'بوست باي' },
|
|
41
|
+
TAMAM: { en: 'Tamam', ar: 'تمام' },
|
|
42
|
+
QITAF: { en: 'Qitaf', ar: 'قطاف' },
|
|
43
|
+
MIS: { en: 'MIS Pay', ar: 'MIS Pay' },
|
|
44
|
+
MATAR: { en: 'Almatar Pay', ar: 'المطار باي' },
|
|
45
|
+
CB: { en: 'Company Balance', ar: 'رصيد الشركة' },
|
|
46
|
+
ANB: { en: 'ANB', ar: 'العربي الوطني' },
|
|
47
|
+
AMWAL: { en: 'Amwal', ar: 'أموال' },
|
|
48
|
+
WALA: { en: 'Wala', ar: 'ولاء' },
|
|
49
|
+
YGG: { en: 'YGG', ar: 'YGG' },
|
|
50
|
+
};
|
|
51
|
+
/** Gateway codes that refund to an installment plan rather than the original card. */
|
|
52
|
+
export const INSTALLMENT_GATEWAY_CODES = ['TM', 'TB'];
|
|
53
|
+
/** Gateway codes that refund to a loyalty-program account rather than the original card. */
|
|
54
|
+
export const LOYALTY_GATEWAY_CODES = ['RAJHI', 'QITAF', 'STC', 'WALA'];
|
|
55
|
+
/**
|
|
56
|
+
* Internal payment-processor/gateway names, never customer-recognizable
|
|
57
|
+
* brands — must not be surfaced verbatim (e.g. a card refund processed
|
|
58
|
+
* through Hyperpay must read as "Card"/"Original Payment Method", never
|
|
59
|
+
* "Hyperpay"). Callers fall back to a generic label whenever the normalized
|
|
60
|
+
* lookup returns ''.
|
|
61
|
+
*/
|
|
62
|
+
export const INTERNAL_GATEWAY_CODES = ['HP', 'MF', 'WT', 'PPB', 'PP', 'TAMAM'];
|
|
63
|
+
/**
|
|
64
|
+
* Result/confirmation-screen-only override: these gateways process card
|
|
65
|
+
* payments through Mada — shown specifically as "Mada Card" instead of
|
|
66
|
+
* falling back to the generic "Original Payment Method" label used
|
|
67
|
+
* everywhere else `INTERNAL_GATEWAY_CODES` applies.
|
|
68
|
+
*/
|
|
69
|
+
export const MADA_GATEWAY_CODES = ['HP', 'CH'];
|
|
70
|
+
/**
|
|
71
|
+
* Normalizes a raw payment gateway code from the backend to a standardized code.
|
|
72
|
+
* Handles both uppercase codes (e.g. 'HP') and labels (e.g. 'Hyperpay').
|
|
73
|
+
*/
|
|
74
|
+
export function normalizePaymentGatewayCode(raw) {
|
|
75
|
+
if (!raw)
|
|
76
|
+
return '';
|
|
77
|
+
const needle = raw.trim().toLowerCase();
|
|
78
|
+
const codes = Object.keys(PAYMENT_GATEWAY_LABELS);
|
|
79
|
+
const byCode = codes.find((code) => code.toLowerCase() === needle);
|
|
80
|
+
if (byCode)
|
|
81
|
+
return byCode;
|
|
82
|
+
const byLabel = codes.find((code) => PAYMENT_GATEWAY_LABELS[code].en.toLowerCase() === needle ||
|
|
83
|
+
PAYMENT_GATEWAY_LABELS[code].ar.toLowerCase() === needle);
|
|
84
|
+
return byLabel ? byLabel : '';
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mbGlnaHQtcmVmdW5kLWRldGFpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1ib29raW5nLWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2ludGVyZmFjZXMvaS1mbGlnaHQtcmVmdW5kLWRldGFpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUNBQW1DO0FBa0NuQyxNQUFNLENBQU4sSUFBWSxrQkF5Qlg7QUF6QkQsV0FBWSxrQkFBa0I7SUFDNUIsbUNBQWEsQ0FBQTtJQUNiLG1DQUFhLENBQUE7SUFDYiwrQ0FBeUIsQ0FBQTtJQUN6QixtQ0FBYSxDQUFBO0lBQ2IsNkNBQXVCLENBQUE7SUFDdkIsOENBQXdCLENBQUE7SUFDeEIscUNBQWUsQ0FBQTtJQUNmLG1DQUFhLENBQUE7SUFDYixtQ0FBYSxDQUFBO0lBQ2Isa0NBQVksQ0FBQTtJQUNaLGlDQUFXLENBQUE7SUFDWCwrQkFBUyxDQUFBO0lBQ1QsK0JBQVMsQ0FBQTtJQUNULCtCQUFTLENBQUE7SUFDVCwrQkFBUyxDQUFBO0lBQ1QsK0JBQVMsQ0FBQTtJQUNULCtCQUFTLENBQUE7SUFDVCxxQ0FBZSxDQUFBO0lBQ2YsaUNBQVcsQ0FBQTtJQUNYLGlDQUFXLENBQUE7SUFDWCwrQkFBUyxDQUFBO0lBQ1QscUNBQWUsQ0FBQTtJQUNmLHFDQUFlLENBQUE7SUFDZixtQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQXpCVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBeUI3QjtBQUVELG9GQUFvRjtBQUNwRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBK0M7SUFDaEYsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFO0lBQ2pDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRTtJQUN2QyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUU7SUFDMUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFO0lBQzdDLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUM3QixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUU7SUFDakMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFO0lBQy9CLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUU7SUFDdkQsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLGtCQUFrQixFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUU7SUFDbEQsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ3JDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRTtJQUNsQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDbEMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFO0lBQ3JDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRTtJQUM5QyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRTtJQUNoRCxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxlQUFlLEVBQUU7SUFDdkMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFO0lBQ25DLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRTtJQUNoQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUU7Q0FDOUIsQ0FBQztBQUVGLHNGQUFzRjtBQUN0RixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUV0RCw0RkFBNEY7QUFDNUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUV2RTs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFL0U7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUUvQzs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsR0FBbUI7SUFDN0QsSUFBSSxDQUFDLEdBQUc7UUFBRSxPQUFPLEVBQUUsQ0FBQztJQUNwQixNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUNuRSxJQUFJLE1BQU07UUFBRSxPQUFPLE1BQTRCLENBQUM7SUFDaEQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ2xDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNO1FBQ3hELHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNLENBQ3pELENBQUM7SUFDRixPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUUsT0FBOEIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ3hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBGbGlnaHQgcmVmdW5kIGRldGFpbHMgaW50ZXJmYWNlc1xuXG5leHBvcnQgaW50ZXJmYWNlIElSZWZ1bmREZXRhaWxzRGF0YSB7XG4gIGJvb2tpbmdJZD86IHN0cmluZyB8IG51bWJlcjtcbiAgcmVmdW5kQW1vdW50PzogbnVtYmVyO1xuICB0b3RhbFJlZnVuZEFtb3VudD86IG51bWJlcjtcbiAgd2FsbGV0UmVmdW5kQW1vdW50PzogbnVtYmVyO1xuICB0b3RhbENhcmRSZWZ1bmRBbW91bnQ/OiBudW1iZXI7XG4gIHRvdGFsTG95YWx0eVBvaW50c1JlZnVuZEFtb3VudD86IG51bWJlcjtcbiAgdG90YWxMb3lhbHR5UG9pbnRzPzogbnVtYmVyO1xuICBjdXJyZW5jeT86IHN0cmluZztcbiAgcmVmdW5kTWV0aG9kPzogUmVmdW5kUHJlZmVycmVkTWV0aG9kIHwgc3RyaW5nO1xuICBwYXltZW50R2F0ZXdheT86IFBheW1lbnRHYXRld2F5Q29kZSB8IExveWFsdHlQYXltZW50VHlwZSB8IHN0cmluZztcbiAgbG95YWx0eVBheW1lbnRUeXBlPzogTG95YWx0eVBheW1lbnRUeXBlIHwgc3RyaW5nO1xuICBpc0Z1bGxXYWxsZXRSZWZ1bmRBbGxvd2VkPzogYm9vbGVhbjtcbiAgcGF5bWVudE1ldGhvZEN1c3RvbWVyVXNlZD86IHN0cmluZztcbiAgaXNSZWZ1bmRhYmxlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgUmVmdW5kUHJlZmVycmVkTWV0aG9kID1cbiAgfCAnT1JJR0lOQUxfUEFZTUVOVF9NRVRIT0QnXG4gIHwgJ1dBTExFVCdcbiAgfCAnd2FsbGV0J1xuICB8ICdvcmlnaW5hbFBheW1lbnRNZXRob2QnXG4gIHwgJ0JBTktfVFJBTlNGRVInXG4gIHwgJ0xPWUFMVFlfUE9JTlRTJztcblxuZXhwb3J0IHR5cGUgTG95YWx0eVBheW1lbnRUeXBlID1cbiAgfCAnQUxNQVRBUl9QT0lOVFMnXG4gIHwgJ0FMRlVSU0FOJ1xuICB8ICdBbFJhamhpTW9rYWZhYSdcbiAgfCAnUWl0YWYnXG4gIHwgJ1dhbGEnO1xuXG5leHBvcnQgZW51bSBQYXltZW50R2F0ZXdheUNvZGUge1xuICBNQURBID0gJ01BREEnLFxuICBWSVNBID0gJ1ZJU0EnLFxuICBNQVNURVJDQVJEID0gJ01BU1RFUkNBUkQnLFxuICBBTUVYID0gJ0FNRVgnLFxuICBBUFBMRV9QQVkgPSAnQVBQTEVfUEFZJyxcbiAgQWxSYWpoaU1va2FmYWEgPSAnUkFKSEknLFxuICBRaXRhZiA9ICdRSVRBRicsXG4gIFdhbGEgPSAnV0FMQScsXG4gIFRhbWFyYSA9ICdUTScsXG4gIFRhYmJ5ID0gJ1RCJyxcbiAgU3RjID0gJ1NUQycsXG4gIENIID0gJ0NIJyxcbiAgSFAgPSAnSFAnLFxuICBNRiA9ICdNRicsXG4gIFdUID0gJ1dUJyxcbiAgVE0gPSAnVE0nLFxuICBUQiA9ICdUQicsXG4gIFJBSkhJID0gJ1JBSkhJJyxcbiAgU1RDID0gJ1NUQycsXG4gIFBQQiA9ICdQUEInLFxuICBQUCA9ICdQUCcsXG4gIFRBTUFNID0gJ1RBTUFNJyxcbiAgUUlUQUYgPSAnUUlUQUYnLFxuICBXQUxBID0gJ1dBTEEnXG59XG5cbi8qKiBMYWJlbHMgZm9yIGBwYXltZW50TWV0aG9kQ3VzdG9tZXJVc2VkYCBnYXRld2F5IGNvZGVzIHJldHVybmVkIGJ5IHRoZSBiYWNrZW5kLiAqL1xuZXhwb3J0IGNvbnN0IFBBWU1FTlRfR0FURVdBWV9MQUJFTFM6IFJlY29yZDxzdHJpbmcsIHsgZW46IHN0cmluZzsgYXI6IHN0cmluZyB9PiA9IHtcbiAgQ0g6IHsgZW46ICdDYXJkJywgYXI6ICfYp9mE2KjYt9in2YLYqScgfSxcbiAgSFA6IHsgZW46ICdIeXBlcnBheScsIGFyOiAn2YfYp9mK2KjYsSDYqNin2YonIH0sXG4gIE1GOiB7IGVuOiAnTXkgRmF0b29yYScsIGFyOiAn2YXYp9mKINmB2KfYqtmI2LHYqScgfSxcbiAgV1Q6IHsgZW46ICdXaXJlIFRyYW5zZmVyJywgYXI6ICfYqtit2YjZitmEINio2YbZg9mKJyB9LFxuICBTVEM6IHsgZW46ICdTVEMnLCBhcjogJ1NUQycgfSxcbiAgVE06IHsgZW46ICdUYW1hcmEnLCBhcjogJ9iq2YXYp9ix2KcnIH0sXG4gIFRCOiB7IGVuOiAnVGFiYnknLCBhcjogJ9iq2KfYqNmKJyB9LFxuICBSQUpISTogeyBlbjogJ0FsIFJhamhpIE1va2FmYWEnLCBhcjogJ9in2YTYsdin2KzYrdmKINmF2YPYp9mB2KLYqicgfSxcbiAgUFBCOiB7IGVuOiAnQ3VzdG9tZXIgQmFsYW5jZScsIGFyOiAn2LHYtdmK2K8g2KfZhNi52YXZitmEJyB9LFxuICBQUDogeyBlbjogJ1Bvc3RwYXknLCBhcjogJ9io2YjYs9iqINio2KfZiicgfSxcbiAgVEFNQU06IHsgZW46ICdUYW1hbScsIGFyOiAn2KrZhdin2YUnIH0sXG4gIFFJVEFGOiB7IGVuOiAnUWl0YWYnLCBhcjogJ9mC2LfYp9mBJyB9LFxuICBNSVM6IHsgZW46ICdNSVMgUGF5JywgYXI6ICdNSVMgUGF5JyB9LFxuICBNQVRBUjogeyBlbjogJ0FsbWF0YXIgUGF5JywgYXI6ICfYp9mE2YXYt9in2LEg2KjYp9mKJyB9LFxuICBDQjogeyBlbjogJ0NvbXBhbnkgQmFsYW5jZScsIGFyOiAn2LHYtdmK2K8g2KfZhNi02LHZg9ipJyB9LFxuICBBTkI6IHsgZW46ICdBTkInLCBhcjogJ9in2YTYudix2KjZiiDYp9mE2YjYt9mG2YonIH0sXG4gIEFNV0FMOiB7IGVuOiAnQW13YWwnLCBhcjogJ9ij2YXZiNin2YQnIH0sXG4gIFdBTEE6IHsgZW46ICdXYWxhJywgYXI6ICfZiNmE2KfYoScgfSxcbiAgWUdHOiB7IGVuOiAnWUdHJywgYXI6ICdZR0cnIH0sXG59O1xuXG4vKiogR2F0ZXdheSBjb2RlcyB0aGF0IHJlZnVuZCB0byBhbiBpbnN0YWxsbWVudCBwbGFuIHJhdGhlciB0aGFuIHRoZSBvcmlnaW5hbCBjYXJkLiAqL1xuZXhwb3J0IGNvbnN0IElOU1RBTExNRU5UX0dBVEVXQVlfQ09ERVMgPSBbJ1RNJywgJ1RCJ107XG5cbi8qKiBHYXRld2F5IGNvZGVzIHRoYXQgcmVmdW5kIHRvIGEgbG95YWx0eS1wcm9ncmFtIGFjY291bnQgcmF0aGVyIHRoYW4gdGhlIG9yaWdpbmFsIGNhcmQuICovXG5leHBvcnQgY29uc3QgTE9ZQUxUWV9HQVRFV0FZX0NPREVTID0gWydSQUpISScsICdRSVRBRicsICdTVEMnLCAnV0FMQSddO1xuXG4vKipcbiAqIEludGVybmFsIHBheW1lbnQtcHJvY2Vzc29yL2dhdGV3YXkgbmFtZXMsIG5ldmVyIGN1c3RvbWVyLXJlY29nbml6YWJsZVxuICogYnJhbmRzIOKAlCBtdXN0IG5vdCBiZSBzdXJmYWNlZCB2ZXJiYXRpbSAoZS5nLiBhIGNhcmQgcmVmdW5kIHByb2Nlc3NlZFxuICogdGhyb3VnaCBIeXBlcnBheSBtdXN0IHJlYWQgYXMgXCJDYXJkXCIvXCJPcmlnaW5hbCBQYXltZW50IE1ldGhvZFwiLCBuZXZlclxuICogXCJIeXBlcnBheVwiKS4gQ2FsbGVycyBmYWxsIGJhY2sgdG8gYSBnZW5lcmljIGxhYmVsIHdoZW5ldmVyIHRoZSBub3JtYWxpemVkXG4gKiBsb29rdXAgcmV0dXJucyAnJy5cbiAqL1xuZXhwb3J0IGNvbnN0IElOVEVSTkFMX0dBVEVXQVlfQ09ERVMgPSBbJ0hQJywgJ01GJywgJ1dUJywgJ1BQQicsICdQUCcsICdUQU1BTSddO1xuXG4vKipcbiAqIFJlc3VsdC9jb25maXJtYXRpb24tc2NyZWVuLW9ubHkgb3ZlcnJpZGU6IHRoZXNlIGdhdGV3YXlzIHByb2Nlc3MgY2FyZFxuICogcGF5bWVudHMgdGhyb3VnaCBNYWRhIOKAlCBzaG93biBzcGVjaWZpY2FsbHkgYXMgXCJNYWRhIENhcmRcIiBpbnN0ZWFkIG9mXG4gKiBmYWxsaW5nIGJhY2sgdG8gdGhlIGdlbmVyaWMgXCJPcmlnaW5hbCBQYXltZW50IE1ldGhvZFwiIGxhYmVsIHVzZWRcbiAqIGV2ZXJ5d2hlcmUgZWxzZSBgSU5URVJOQUxfR0FURVdBWV9DT0RFU2AgYXBwbGllcy5cbiAqL1xuZXhwb3J0IGNvbnN0IE1BREFfR0FURVdBWV9DT0RFUyA9IFsnSFAnLCAnQ0gnXTtcblxuLyoqXG4gKiBOb3JtYWxpemVzIGEgcmF3IHBheW1lbnQgZ2F0ZXdheSBjb2RlIGZyb20gdGhlIGJhY2tlbmQgdG8gYSBzdGFuZGFyZGl6ZWQgY29kZS5cbiAqIEhhbmRsZXMgYm90aCB1cHBlcmNhc2UgY29kZXMgKGUuZy4gJ0hQJykgYW5kIGxhYmVscyAoZS5nLiAnSHlwZXJwYXknKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZVBheW1lbnRHYXRld2F5Q29kZShyYXc/OiBzdHJpbmcgfCBudWxsKTogUGF5bWVudEdhdGV3YXlDb2RlIHwgJycge1xuICBpZiAoIXJhdykgcmV0dXJuICcnO1xuICBjb25zdCBuZWVkbGUgPSByYXcudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gIGNvbnN0IGNvZGVzID0gT2JqZWN0LmtleXMoUEFZTUVOVF9HQVRFV0FZX0xBQkVMUyk7XG4gIGNvbnN0IGJ5Q29kZSA9IGNvZGVzLmZpbmQoKGNvZGUpID0+IGNvZGUudG9Mb3dlckNhc2UoKSA9PT0gbmVlZGxlKTtcbiAgaWYgKGJ5Q29kZSkgcmV0dXJuIGJ5Q29kZSBhcyBQYXltZW50R2F0ZXdheUNvZGU7XG4gIGNvbnN0IGJ5TGFiZWwgPSBjb2Rlcy5maW5kKChjb2RlKSA9PlxuICAgIFBBWU1FTlRfR0FURVdBWV9MQUJFTFNbY29kZV0uZW4udG9Mb3dlckNhc2UoKSA9PT0gbmVlZGxlIHx8XG4gICAgUEFZTUVOVF9HQVRFV0FZX0xBQkVMU1tjb2RlXS5hci50b0xvd2VyQ2FzZSgpID09PSBuZWVkbGVcbiAgKTtcbiAgcmV0dXJuIGJ5TGFiZWwgPyAoYnlMYWJlbCBhcyBQYXltZW50R2F0ZXdheUNvZGUpIDogJyc7XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export class CancelHotelBookingPayload {
|
|
2
|
+
// Add other properties as needed
|
|
3
|
+
constructor(data) {
|
|
4
|
+
Object.assign(this, data);
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuY2VsLWhvdGVsLWJvb2tpbmcubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1ib29raW5nLWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL21vZGVscy9jYW5jZWwtaG90ZWwtYm9va2luZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8seUJBQXlCO0lBSXBDLGlDQUFpQztJQUVqQyxZQUFZLElBQXlDO1FBQ25ELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDYW5jZWxIb3RlbEJvb2tpbmdQYXlsb2FkIHtcbiAgYm9va2luZ0lkPzogc3RyaW5nO1xuICByb29tSWRzPzogc3RyaW5nW107XG4gIHJlZnVuZE1ldGhvZD86IHN0cmluZztcbiAgLy8gQWRkIG90aGVyIHByb3BlcnRpZXMgYXMgbmVlZGVkXG5cbiAgY29uc3RydWN0b3IoZGF0YT86IFBhcnRpYWw8Q2FuY2VsSG90ZWxCb29raW5nUGF5bG9hZD4pIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGRhdGEpO1xuICB9XG59XG4iXX0=
|
package/esm2022/lib/components/shared/services/hotel-manage-booking/hotel-manage-booking.service.mjs
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Injectable, signal } from '@angular/core';
|
|
2
|
+
import { of, BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class HotelManageBookingService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.activeAsideTab = signal('details');
|
|
7
|
+
this.selectedHotelBooking = new BehaviorSubject(null);
|
|
8
|
+
}
|
|
9
|
+
getActiveAsideTab() {
|
|
10
|
+
return this.activeAsideTab();
|
|
11
|
+
}
|
|
12
|
+
setActiveAsideTab(tab) {
|
|
13
|
+
this.activeAsideTab.set(tab);
|
|
14
|
+
}
|
|
15
|
+
getBookingDetails(bookingId) {
|
|
16
|
+
return of(null);
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HotelManageBookingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
19
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HotelManageBookingService, providedIn: 'root' }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HotelManageBookingService, decorators: [{
|
|
22
|
+
type: Injectable,
|
|
23
|
+
args: [{
|
|
24
|
+
providedIn: 'root'
|
|
25
|
+
}]
|
|
26
|
+
}] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90ZWwtbWFuYWdlLWJvb2tpbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQvc2VydmljZXMvaG90ZWwtbWFuYWdlLWJvb2tpbmcvaG90ZWwtbWFuYWdlLWJvb2tpbmcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsRUFBRSxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLdkQsTUFBTSxPQUFPLHlCQUF5QjtJQUh0QztRQUlVLG1CQUFjLEdBQUcsTUFBTSxDQUFTLFNBQVMsQ0FBQyxDQUFDO1FBQ25ELHlCQUFvQixHQUFHLElBQUksZUFBZSxDQUFNLElBQUksQ0FBQyxDQUFDO0tBYXZEO0lBWEMsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELGlCQUFpQixDQUFDLEdBQVc7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQWlCO1FBQ2pDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7K0dBZFUseUJBQXlCO21IQUF6Qix5QkFBeUIsY0FGeEIsTUFBTTs7NEZBRVAseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBIb3RlbE1hbmFnZUJvb2tpbmdTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBhY3RpdmVBc2lkZVRhYiA9IHNpZ25hbDxzdHJpbmc+KCdkZXRhaWxzJyk7XG4gIHNlbGVjdGVkSG90ZWxCb29raW5nID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xuXG4gIGdldEFjdGl2ZUFzaWRlVGFiKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlQXNpZGVUYWIoKTtcbiAgfVxuXG4gIHNldEFjdGl2ZUFzaWRlVGFiKHRhYjogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVBc2lkZVRhYi5zZXQodGFiKTtcbiAgfVxuXG4gIGdldEJvb2tpbmdEZXRhaWxzKGJvb2tpbmdJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gb2YobnVsbCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { of } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class HotelManageBookingEndpointsService {
|
|
5
|
+
cancelBookingRequest(payload) {
|
|
6
|
+
return of(null);
|
|
7
|
+
}
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HotelManageBookingEndpointsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
9
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HotelManageBookingEndpointsService, providedIn: 'root' }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HotelManageBookingEndpointsService, decorators: [{
|
|
12
|
+
type: Injectable,
|
|
13
|
+
args: [{
|
|
14
|
+
providedIn: 'root'
|
|
15
|
+
}]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90ZWwtbWFuYWdlLWJvb2tpbmctZW5kcG9pbnRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1ib29raW5nLWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL3NlcnZpY2VzL2hvdGVsLW1hbmFnZS1ib29raW5nLWVuZHBvaW50cy9ob3RlbC1tYW5hZ2UtYm9va2luZy1lbmRwb2ludHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBS3RDLE1BQU0sT0FBTyxrQ0FBa0M7SUFDN0Msb0JBQW9CLENBQUMsT0FBWTtRQUMvQixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQixDQUFDOytHQUhVLGtDQUFrQzttSEFBbEMsa0NBQWtDLGNBRmpDLE1BQU07OzRGQUVQLGtDQUFrQztrQkFIOUMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBIb3RlbE1hbmFnZUJvb2tpbmdFbmRwb2ludHNTZXJ2aWNlIHtcbiAgY2FuY2VsQm9va2luZ1JlcXVlc3QocGF5bG9hZDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gb2YobnVsbCk7XG4gIH1cbn1cbiJdfQ==
|