@almatar/smart-booking-dashboard 0.0.1 → 0.0.2-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +123 -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 +448 -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/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/config/hotel-actions.config.mjs +21 -1
- package/esm2022/lib/models/booking.types.mjs +73 -2
- package/esm2022/lib/pages/smart-booking-dashboard/smart-booking-dashboard.component.mjs +25 -7
- package/esm2022/lib/services/booking.service.mjs +6 -2
- 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/fesm2022/almatar-smart-booking-dashboard.mjs +3278 -180
- package/fesm2022/almatar-smart-booking-dashboard.mjs.map +1 -1
- package/lib/components/almatar-aside/aside-back-button.service.d.ts +11 -0
- package/lib/components/almatar-aside/aside.component.d.ts +47 -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 +82 -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/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/models/booking.types.d.ts +28 -0
- package/lib/pages/smart-booking-dashboard/smart-booking-dashboard.component.d.ts +1 -0
- 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/package.json +2 -19
- package/LICENSE +0 -21
- package/README.md +0 -132
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Component, computed, input } from '@angular/core';
|
|
2
|
+
import { UpperCasePipe, LowerCasePipe } from '@angular/common';
|
|
3
|
+
import { TagModule } from 'primeng/tag';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class SbdHotelItineraryCardComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
8
|
+
this.data = input(null);
|
|
9
|
+
this.verified = input(false);
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
11
|
+
this.bi = computed(() => this.data()?.data?.booking_info);
|
|
12
|
+
this.hotelInfo = computed(() => this.data()?.data?.hotel_information);
|
|
13
|
+
this.checkinCheckout = computed(() => this.data()?.data?.checkin_checkout);
|
|
14
|
+
this.roomInfo = computed(() => this.data()?.data?.room_information);
|
|
15
|
+
this.passengers = computed(() =>
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
17
|
+
(this.bi()?.passenger_info?.passengers ?? []));
|
|
18
|
+
this.payment = computed(() => this.bi()?.payment_status);
|
|
19
|
+
this.typeLabel = { ADT: 'Adult', CNN: 'Child', INF: 'Infant' };
|
|
20
|
+
}
|
|
21
|
+
fmtTime(dt) {
|
|
22
|
+
if (!dt)
|
|
23
|
+
return '—';
|
|
24
|
+
try {
|
|
25
|
+
return new Date(dt).toLocaleTimeString('en-GB', { hour: '2-digit', minute: '2-digit' });
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return dt;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
fmtShortDate(dt) {
|
|
32
|
+
if (!dt)
|
|
33
|
+
return '—';
|
|
34
|
+
try {
|
|
35
|
+
return new Date(dt).toLocaleDateString('en-GB', { day: '2-digit', month: 'short' });
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return dt;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SbdHotelItineraryCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SbdHotelItineraryCardComponent, isStandalone: true, selector: "app-sbd-hotel-itinerary-card", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, verified: { classPropertyName: "verified", publicName: "verified", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"hic\">\n\n <!-- \u2500\u2500 Hotel Information \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (hotelInfo()) {\n <div class=\"hic__hotel-header\">\n <div class=\"hic__hotel-name\">{{ hotelInfo()?.hotel_name }}</div>\n @if (hotelInfo()?.star_rating) {\n <div class=\"hic__hotel-rating\">\n @for (star of [].constructor(hotelInfo()?.star_rating); track $index) {\n <i class=\"pi pi-star-fill\"></i>\n }\n </div>\n }\n @if (hotelInfo()?.address) {\n <div class=\"hic__hotel-address\">\n <i class=\"pi pi-map-marker\"></i>\n {{ hotelInfo()?.address }}\n </div>\n }\n </div>\n }\n\n <!-- \u2500\u2500 Check-in / Check-out \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (checkinCheckout()) {\n <div class=\"hic__hotel-dates\">\n <div class=\"hic__hotel-date\">\n <div class=\"hic__hotel-date-label\">\n <i class=\"pi pi-sign-in\"></i> Check-in\n </div>\n <div class=\"hic__hotel-date-value\">{{ fmtShortDate(checkinCheckout()?.check_in) }}</div>\n <div class=\"hic__hotel-date-time\">{{ fmtTime(checkinCheckout()?.check_in) }}</div>\n </div>\n <div class=\"hic__hotel-date-separator\">\n <i class=\"pi pi-arrow-right\"></i>\n @if (checkinCheckout()?.nights) {\n <span class=\"hic__hotel-nights\">{{ checkinCheckout()?.nights }} night{{ checkinCheckout()?.nights > 1 ? 's' : '' }}</span>\n }\n </div>\n <div class=\"hic__hotel-date\">\n <div class=\"hic__hotel-date-label\">\n <i class=\"pi pi-sign-out\"></i> Check-out\n </div>\n <div class=\"hic__hotel-date-value\">{{ fmtShortDate(checkinCheckout()?.check_out) }}</div>\n <div class=\"hic__hotel-date-time\">{{ fmtTime(checkinCheckout()?.check_out) }}</div>\n </div>\n </div>\n }\n\n <!-- \u2500\u2500 Room Information \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (roomInfo()) {\n <div class=\"hic__section\">\n <div class=\"hic__section-label\">\n <i class=\"pi pi-building\"></i> Room Details\n </div>\n <div class=\"hic__hotel-room\">\n @if (roomInfo()?.room_type) {\n <div class=\"hic__hotel-room-type\">{{ roomInfo()?.room_type }}</div>\n }\n @if (roomInfo()?.board_type) {\n <div class=\"hic__hotel-room-board\">\n <i class=\"pi pi-shopping-bag\"></i> {{ roomInfo()?.board_type }}\n </div>\n }\n </div>\n </div>\n }\n\n <!-- \u2500\u2500 Guests \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (passengers().length > 0) {\n <div class=\"hic__section\">\n <div class=\"hic__section-label\">\n <i class=\"pi pi-users\"></i> Guests\n <span class=\"hic__section-count\">{{ passengers().length }}</span>\n </div>\n <div class=\"hic__pax-list\">\n @for (p of passengers(); track p.passengerId) {\n <div class=\"hic__pax\">\n <div class=\"hic__pax-top\">\n <span class=\"hic__pax-badge hic__pax-badge--{{ p.type | lowercase }}\">{{ typeLabel[p.type] ?? p.type }}</span>\n <span class=\"hic__pax-name\">{{ p.name?.prefix }} {{ p.name?.givenName }} {{ p.name?.surName }}</span>\n </div>\n <div class=\"hic__pax-bottom\">\n @if (p.identity?.number) {\n <span class=\"hic__pax-doc\"><i class=\"pi pi-id-card\"></i> {{ p.identity?.number }}</span>\n }\n @if (p.email) {\n <span class=\"hic__pax-email\">{{ p.email }}</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- \u2500\u2500 Payment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (payment()) {\n <div class=\"hic__payment\">\n <div class=\"hic__payment-main\">\n <i class=\"pi pi-credit-card hic__payment-icon\"></i>\n <span class=\"hic__payment-amount\">{{ payment()?.amount }} {{ payment()?.currency }}</span>\n <span class=\"hic__payment-status\" [class.hic__payment-status--ok]=\"payment()?.status?.key === 'SUCCESS'\">\n <i class=\"pi\" [class.pi-check-circle]=\"payment()?.status?.key === 'SUCCESS'\" [class.pi-clock]=\"payment()?.status?.key !== 'SUCCESS'\"></i>\n {{ payment()?.status?.name }}\n </span>\n </div>\n @if (payment()?.method || payment()?.date) {\n <div class=\"hic__payment-sub\">\n @if (payment()?.method) { <span>{{ payment()?.method }}</span> }\n @if (payment()?.method && payment()?.date) { <span class=\"hic__dot\">\u00B7</span> }\n @if (payment()?.date) { <span>{{ payment()?.date }}</span> }\n </div>\n }\n </div>\n }\n\n</div>\n", styles: [".hic{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;font-family:inherit}.hic__hotel-header{padding:18px 16px;border-bottom:1px solid #e2e8f0}.hic__hotel-name{font-size:16px;font-weight:700;color:#1e2e4a;margin-bottom:6px}.hic__hotel-rating{display:flex;gap:2px;margin-bottom:8px}.hic__hotel-rating .pi{font-size:12px;color:#f59e0b}.hic__hotel-address{display:flex;align-items:flex-start;gap:5px;font-size:12px;color:#64748b}.hic__hotel-address .pi{font-size:11px;color:#94a3b8;margin-top:2px;flex-shrink:0}.hic__hotel-dates{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.hic__hotel-date{display:flex;flex-direction:column;gap:3px}.hic__hotel-date-label{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.hic__hotel-date-label .pi{font-size:10px}.hic__hotel-date-value{font-size:14px;font-weight:700;color:#1e2e4a}.hic__hotel-date-time{font-size:11px;color:#94a3b8}.hic__hotel-date-separator{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0 12px}.hic__hotel-date-separator .pi{font-size:12px;color:#cbd5e1}.hic__hotel-nights{font-size:10px;font-weight:600;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:10px}.hic__hotel-room{display:flex;flex-direction:column;gap:6px}.hic__hotel-room-type{font-size:13px;font-weight:600;color:#1e2e4a}.hic__hotel-room-board{display:flex;align-items:center;gap:5px;font-size:12px;color:#64748b}.hic__hotel-room-board .pi{font-size:11px;color:#94a3b8}.hic__section{padding:14px 16px;border-bottom:1px solid #e2e8f0}.hic__section-label{display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#64748b;margin-bottom:10px}.hic__section-label .pi{font-size:11px}.hic__section-count{margin-left:auto;background:#f1f5f9;color:#475569;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.hic__pax-list{display:flex;flex-direction:column;gap:8px}.hic__pax{background:#f8fafc;border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:5px}.hic__pax-top{display:flex;align-items:center;gap:7px}.hic__pax-badge{font-size:9.5px;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:10px;flex-shrink:0;text-transform:uppercase}.hic__pax-badge--adt{background:#dbeafe;color:#1d4ed8}.hic__pax-badge--cnn{background:#dcfce7;color:#15803d}.hic__pax-badge--inf{background:#fce7f3;color:#9d174d}.hic__pax-name{font-size:12.5px;font-weight:600;color:#1e2e4a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hic__pax-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hic__pax-doc{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-family:monospace;color:#475569;background:#f1f5f9;padding:1px 6px;border-radius:4px}.hic__pax-doc .pi{font-size:10px}.hic__pax-email{font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.hic__payment{padding:12px 16px;background:#f8fafc;display:flex;flex-direction:column;gap:4px}.hic__payment-main{display:flex;align-items:center;gap:8px}.hic__payment-icon{font-size:14px;color:#64748b}.hic__payment-amount{font-size:14px;font-weight:700;color:#1e2e4a}.hic__payment-status{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#64748b;margin-left:auto}.hic__payment-status .pi{font-size:12px}.hic__payment-status--ok{color:#16a34a}.hic__payment-sub{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#94a3b8;padding-left:22px}.hic__dot{color:#cbd5e1}\n"], dependencies: [{ kind: "ngmodule", type: TagModule }, { kind: "pipe", type: LowerCasePipe, name: "lowercase" }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SbdHotelItineraryCardComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'app-sbd-hotel-itinerary-card', standalone: true, imports: [TagModule, UpperCasePipe, LowerCasePipe], template: "<div class=\"hic\">\n\n <!-- \u2500\u2500 Hotel Information \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (hotelInfo()) {\n <div class=\"hic__hotel-header\">\n <div class=\"hic__hotel-name\">{{ hotelInfo()?.hotel_name }}</div>\n @if (hotelInfo()?.star_rating) {\n <div class=\"hic__hotel-rating\">\n @for (star of [].constructor(hotelInfo()?.star_rating); track $index) {\n <i class=\"pi pi-star-fill\"></i>\n }\n </div>\n }\n @if (hotelInfo()?.address) {\n <div class=\"hic__hotel-address\">\n <i class=\"pi pi-map-marker\"></i>\n {{ hotelInfo()?.address }}\n </div>\n }\n </div>\n }\n\n <!-- \u2500\u2500 Check-in / Check-out \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (checkinCheckout()) {\n <div class=\"hic__hotel-dates\">\n <div class=\"hic__hotel-date\">\n <div class=\"hic__hotel-date-label\">\n <i class=\"pi pi-sign-in\"></i> Check-in\n </div>\n <div class=\"hic__hotel-date-value\">{{ fmtShortDate(checkinCheckout()?.check_in) }}</div>\n <div class=\"hic__hotel-date-time\">{{ fmtTime(checkinCheckout()?.check_in) }}</div>\n </div>\n <div class=\"hic__hotel-date-separator\">\n <i class=\"pi pi-arrow-right\"></i>\n @if (checkinCheckout()?.nights) {\n <span class=\"hic__hotel-nights\">{{ checkinCheckout()?.nights }} night{{ checkinCheckout()?.nights > 1 ? 's' : '' }}</span>\n }\n </div>\n <div class=\"hic__hotel-date\">\n <div class=\"hic__hotel-date-label\">\n <i class=\"pi pi-sign-out\"></i> Check-out\n </div>\n <div class=\"hic__hotel-date-value\">{{ fmtShortDate(checkinCheckout()?.check_out) }}</div>\n <div class=\"hic__hotel-date-time\">{{ fmtTime(checkinCheckout()?.check_out) }}</div>\n </div>\n </div>\n }\n\n <!-- \u2500\u2500 Room Information \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (roomInfo()) {\n <div class=\"hic__section\">\n <div class=\"hic__section-label\">\n <i class=\"pi pi-building\"></i> Room Details\n </div>\n <div class=\"hic__hotel-room\">\n @if (roomInfo()?.room_type) {\n <div class=\"hic__hotel-room-type\">{{ roomInfo()?.room_type }}</div>\n }\n @if (roomInfo()?.board_type) {\n <div class=\"hic__hotel-room-board\">\n <i class=\"pi pi-shopping-bag\"></i> {{ roomInfo()?.board_type }}\n </div>\n }\n </div>\n </div>\n }\n\n <!-- \u2500\u2500 Guests \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (passengers().length > 0) {\n <div class=\"hic__section\">\n <div class=\"hic__section-label\">\n <i class=\"pi pi-users\"></i> Guests\n <span class=\"hic__section-count\">{{ passengers().length }}</span>\n </div>\n <div class=\"hic__pax-list\">\n @for (p of passengers(); track p.passengerId) {\n <div class=\"hic__pax\">\n <div class=\"hic__pax-top\">\n <span class=\"hic__pax-badge hic__pax-badge--{{ p.type | lowercase }}\">{{ typeLabel[p.type] ?? p.type }}</span>\n <span class=\"hic__pax-name\">{{ p.name?.prefix }} {{ p.name?.givenName }} {{ p.name?.surName }}</span>\n </div>\n <div class=\"hic__pax-bottom\">\n @if (p.identity?.number) {\n <span class=\"hic__pax-doc\"><i class=\"pi pi-id-card\"></i> {{ p.identity?.number }}</span>\n }\n @if (p.email) {\n <span class=\"hic__pax-email\">{{ p.email }}</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- \u2500\u2500 Payment \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n @if (payment()) {\n <div class=\"hic__payment\">\n <div class=\"hic__payment-main\">\n <i class=\"pi pi-credit-card hic__payment-icon\"></i>\n <span class=\"hic__payment-amount\">{{ payment()?.amount }} {{ payment()?.currency }}</span>\n <span class=\"hic__payment-status\" [class.hic__payment-status--ok]=\"payment()?.status?.key === 'SUCCESS'\">\n <i class=\"pi\" [class.pi-check-circle]=\"payment()?.status?.key === 'SUCCESS'\" [class.pi-clock]=\"payment()?.status?.key !== 'SUCCESS'\"></i>\n {{ payment()?.status?.name }}\n </span>\n </div>\n @if (payment()?.method || payment()?.date) {\n <div class=\"hic__payment-sub\">\n @if (payment()?.method) { <span>{{ payment()?.method }}</span> }\n @if (payment()?.method && payment()?.date) { <span class=\"hic__dot\">\u00B7</span> }\n @if (payment()?.date) { <span>{{ payment()?.date }}</span> }\n </div>\n }\n </div>\n }\n\n</div>\n", styles: [".hic{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;font-family:inherit}.hic__hotel-header{padding:18px 16px;border-bottom:1px solid #e2e8f0}.hic__hotel-name{font-size:16px;font-weight:700;color:#1e2e4a;margin-bottom:6px}.hic__hotel-rating{display:flex;gap:2px;margin-bottom:8px}.hic__hotel-rating .pi{font-size:12px;color:#f59e0b}.hic__hotel-address{display:flex;align-items:flex-start;gap:5px;font-size:12px;color:#64748b}.hic__hotel-address .pi{font-size:11px;color:#94a3b8;margin-top:2px;flex-shrink:0}.hic__hotel-dates{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.hic__hotel-date{display:flex;flex-direction:column;gap:3px}.hic__hotel-date-label{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.hic__hotel-date-label .pi{font-size:10px}.hic__hotel-date-value{font-size:14px;font-weight:700;color:#1e2e4a}.hic__hotel-date-time{font-size:11px;color:#94a3b8}.hic__hotel-date-separator{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0 12px}.hic__hotel-date-separator .pi{font-size:12px;color:#cbd5e1}.hic__hotel-nights{font-size:10px;font-weight:600;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:10px}.hic__hotel-room{display:flex;flex-direction:column;gap:6px}.hic__hotel-room-type{font-size:13px;font-weight:600;color:#1e2e4a}.hic__hotel-room-board{display:flex;align-items:center;gap:5px;font-size:12px;color:#64748b}.hic__hotel-room-board .pi{font-size:11px;color:#94a3b8}.hic__section{padding:14px 16px;border-bottom:1px solid #e2e8f0}.hic__section-label{display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#64748b;margin-bottom:10px}.hic__section-label .pi{font-size:11px}.hic__section-count{margin-left:auto;background:#f1f5f9;color:#475569;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.hic__pax-list{display:flex;flex-direction:column;gap:8px}.hic__pax{background:#f8fafc;border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:5px}.hic__pax-top{display:flex;align-items:center;gap:7px}.hic__pax-badge{font-size:9.5px;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:10px;flex-shrink:0;text-transform:uppercase}.hic__pax-badge--adt{background:#dbeafe;color:#1d4ed8}.hic__pax-badge--cnn{background:#dcfce7;color:#15803d}.hic__pax-badge--inf{background:#fce7f3;color:#9d174d}.hic__pax-name{font-size:12.5px;font-weight:600;color:#1e2e4a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hic__pax-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hic__pax-doc{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-family:monospace;color:#475569;background:#f1f5f9;padding:1px 6px;border-radius:4px}.hic__pax-doc .pi{font-size:10px}.hic__pax-email{font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.hic__payment{padding:12px 16px;background:#f8fafc;display:flex;flex-direction:column;gap:4px}.hic__payment-main{display:flex;align-items:center;gap:8px}.hic__payment-icon{font-size:14px;color:#64748b}.hic__payment-amount{font-size:14px;font-weight:700;color:#1e2e4a}.hic__payment-status{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#64748b;margin-left:auto}.hic__payment-status .pi{font-size:12px}.hic__payment-status--ok{color:#16a34a}.hic__payment-sub{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#94a3b8;padding-left:22px}.hic__dot{color:#cbd5e1}\n"] }]
|
|
47
|
+
}] });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90ZWwtaXRpbmVyYXJ5LWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtYm9va2luZy1kYXNoYm9hcmQvc3JjL2xpYi9jb21wb25lbnRzL2hvdGVsLWl0aW5lcmFyeS1jYXJkL2hvdGVsLWl0aW5lcmFyeS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LWJvb2tpbmctZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9ob3RlbC1pdGluZXJhcnktY2FyZC9ob3RlbC1pdGluZXJhcnktY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQVN4QyxNQUFNLE9BQU8sOEJBQThCO0lBUDNDO1FBUUUsOERBQThEO1FBQzlELFNBQUksR0FBRyxLQUFLLENBQU0sSUFBSSxDQUFDLENBQUM7UUFDeEIsYUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV4Qiw4REFBOEQ7UUFDdEQsT0FBRSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRTdELGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2pFLG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN0RSxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUUvRCxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN6Qiw4REFBOEQ7UUFDOUQsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQVUsQ0FDdkQsQ0FBQztRQUVGLFlBQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBRTNDLGNBQVMsR0FBMkIsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxDQUFDO0tBYTVGO0lBWEMsT0FBTyxDQUFDLEVBQVU7UUFDaEIsSUFBSSxDQUFDLEVBQUU7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUM7WUFBQyxPQUFPLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBQ2hHLE1BQU0sQ0FBQztZQUFDLE9BQU8sRUFBRSxDQUFDO1FBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWSxDQUFDLEVBQVU7UUFDckIsSUFBSSxDQUFDLEVBQUU7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUM7WUFBQyxPQUFPLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBQzVGLE1BQU0sQ0FBQztZQUFDLE9BQU8sRUFBRSxDQUFDO1FBQUMsQ0FBQztJQUN0QixDQUFDOytHQS9CVSw4QkFBOEI7bUdBQTlCLDhCQUE4QiwwVkNYM0Msa3RLQXFIQSxpb0hEOUdZLFNBQVMsMEJBQWlCLGFBQWE7OzRGQUl0Qyw4QkFBOEI7a0JBUDFDLFNBQVM7K0JBQ0UsOEJBQThCLGNBQzVCLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVwcGVyQ2FzZVBpcGUsIExvd2VyQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVGFnTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc2JkLWhvdGVsLWl0aW5lcmFyeS1jYXJkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1RhZ01vZHVsZSwgVXBwZXJDYXNlUGlwZSwgTG93ZXJDYXNlUGlwZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9ob3RlbC1pdGluZXJhcnktY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9ob3RlbC1pdGluZXJhcnktY2FyZC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIFNiZEhvdGVsSXRpbmVyYXJ5Q2FyZENvbXBvbmVudCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIGRhdGEgPSBpbnB1dDxhbnk+KG51bGwpO1xuICB2ZXJpZmllZCA9IGlucHV0KGZhbHNlKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBwcml2YXRlIGJpID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5kYXRhKCk/LmRhdGE/LmJvb2tpbmdfaW5mbyk7XG5cbiAgaG90ZWxJbmZvID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5kYXRhKCk/LmRhdGE/LmhvdGVsX2luZm9ybWF0aW9uKTtcbiAgY2hlY2tpbkNoZWNrb3V0ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5kYXRhKCk/LmRhdGE/LmNoZWNraW5fY2hlY2tvdXQpO1xuICByb29tSW5mbyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZGF0YSgpPy5kYXRhPy5yb29tX2luZm9ybWF0aW9uKTtcblxuICBwYXNzZW5nZXJzID0gY29tcHV0ZWQoKCkgPT5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICh0aGlzLmJpKCk/LnBhc3Nlbmdlcl9pbmZvPy5wYXNzZW5nZXJzID8/IFtdKSBhcyBhbnlbXVxuICApO1xuXG4gIHBheW1lbnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmJpKCk/LnBheW1lbnRfc3RhdHVzKTtcblxuICByZWFkb25seSB0eXBlTGFiZWw6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7IEFEVDogJ0FkdWx0JywgQ05OOiAnQ2hpbGQnLCBJTkY6ICdJbmZhbnQnIH07XG5cbiAgZm10VGltZShkdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIWR0KSByZXR1cm4gJ+KAlCc7XG4gICAgdHJ5IHsgcmV0dXJuIG5ldyBEYXRlKGR0KS50b0xvY2FsZVRpbWVTdHJpbmcoJ2VuLUdCJywgeyBob3VyOiAnMi1kaWdpdCcsIG1pbnV0ZTogJzItZGlnaXQnIH0pOyB9XG4gICAgY2F0Y2ggeyByZXR1cm4gZHQ7IH1cbiAgfVxuXG4gIGZtdFNob3J0RGF0ZShkdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIWR0KSByZXR1cm4gJ+KAlCc7XG4gICAgdHJ5IHsgcmV0dXJuIG5ldyBEYXRlKGR0KS50b0xvY2FsZURhdGVTdHJpbmcoJ2VuLUdCJywgeyBkYXk6ICcyLWRpZ2l0JywgbW9udGg6ICdzaG9ydCcgfSk7IH1cbiAgICBjYXRjaCB7IHJldHVybiBkdDsgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaGljXCI+XG5cbiAgPCEtLSDilIDilIAgSG90ZWwgSW5mb3JtYXRpb24g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIC0tPlxuICBAaWYgKGhvdGVsSW5mbygpKSB7XG4gICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtaGVhZGVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGljX19ob3RlbC1uYW1lXCI+e3sgaG90ZWxJbmZvKCk/LmhvdGVsX25hbWUgfX08L2Rpdj5cbiAgICAgIEBpZiAoaG90ZWxJbmZvKCk/LnN0YXJfcmF0aW5nKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX2hvdGVsLXJhdGluZ1wiPlxuICAgICAgICAgIEBmb3IgKHN0YXIgb2YgW10uY29uc3RydWN0b3IoaG90ZWxJbmZvKCk/LnN0YXJfcmF0aW5nKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXN0YXItZmlsbFwiPjwvaT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgICAgQGlmIChob3RlbEluZm8oKT8uYWRkcmVzcykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiaGljX19ob3RlbC1hZGRyZXNzXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1tYXAtbWFya2VyXCI+PC9pPlxuICAgICAgICAgIHt7IGhvdGVsSW5mbygpPy5hZGRyZXNzIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG5cbiAgPCEtLSDilIDilIAgQ2hlY2staW4gLyBDaGVjay1vdXQg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIC0tPlxuICBAaWYgKGNoZWNraW5DaGVja291dCgpKSB7XG4gICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtZGF0ZXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX2hvdGVsLWRhdGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtZGF0ZS1sYWJlbFwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwicGkgcGktc2lnbi1pblwiPjwvaT4gQ2hlY2staW5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX2hvdGVsLWRhdGUtdmFsdWVcIj57eyBmbXRTaG9ydERhdGUoY2hlY2tpbkNoZWNrb3V0KCk/LmNoZWNrX2luKSB9fTwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGljX19ob3RlbC1kYXRlLXRpbWVcIj57eyBmbXRUaW1lKGNoZWNraW5DaGVja291dCgpPy5jaGVja19pbikgfX08L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtZGF0ZS1zZXBhcmF0b3JcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1hcnJvdy1yaWdodFwiPjwvaT5cbiAgICAgICAgQGlmIChjaGVja2luQ2hlY2tvdXQoKT8ubmlnaHRzKSB7XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJoaWNfX2hvdGVsLW5pZ2h0c1wiPnt7IGNoZWNraW5DaGVja291dCgpPy5uaWdodHMgfX0gbmlnaHR7eyBjaGVja2luQ2hlY2tvdXQoKT8ubmlnaHRzID4gMSA/ICdzJyA6ICcnIH19PC9zcGFuPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX2hvdGVsLWRhdGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtZGF0ZS1sYWJlbFwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwicGkgcGktc2lnbi1vdXRcIj48L2k+IENoZWNrLW91dFxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtZGF0ZS12YWx1ZVwiPnt7IGZtdFNob3J0RGF0ZShjaGVja2luQ2hlY2tvdXQoKT8uY2hlY2tfb3V0KSB9fTwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGljX19ob3RlbC1kYXRlLXRpbWVcIj57eyBmbXRUaW1lKGNoZWNraW5DaGVja291dCgpPy5jaGVja19vdXQpIH19PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgfVxuXG4gIDwhLS0g4pSA4pSAIFJvb20gSW5mb3JtYXRpb24g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIC0tPlxuICBAaWYgKHJvb21JbmZvKCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiaGljX19zZWN0aW9uXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGljX19zZWN0aW9uLWxhYmVsXCI+XG4gICAgICAgIDxpIGNsYXNzPVwicGkgcGktYnVpbGRpbmdcIj48L2k+IFJvb20gRGV0YWlsc1xuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGljX19ob3RlbC1yb29tXCI+XG4gICAgICAgIEBpZiAocm9vbUluZm8oKT8ucm9vbV90eXBlKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtcm9vbS10eXBlXCI+e3sgcm9vbUluZm8oKT8ucm9vbV90eXBlIH19PC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChyb29tSW5mbygpPy5ib2FyZF90eXBlKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhpY19faG90ZWwtcm9vbS1ib2FyZFwiPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1zaG9wcGluZy1iYWdcIj48L2k+IHt7IHJvb21JbmZvKCk/LmJvYXJkX3R5cGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIH1cblxuICA8IS0tIOKUgOKUgCBHdWVzdHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIC0tPlxuICBAaWYgKHBhc3NlbmdlcnMoKS5sZW5ndGggPiAwKSB7XG4gICAgPGRpdiBjbGFzcz1cImhpY19fc2VjdGlvblwiPlxuICAgICAgPGRpdiBjbGFzcz1cImhpY19fc2VjdGlvbi1sYWJlbFwiPlxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXVzZXJzXCI+PC9pPiBHdWVzdHNcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJoaWNfX3NlY3Rpb24tY291bnRcIj57eyBwYXNzZW5nZXJzKCkubGVuZ3RoIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGljX19wYXgtbGlzdFwiPlxuICAgICAgICBAZm9yIChwIG9mIHBhc3NlbmdlcnMoKTsgdHJhY2sgcC5wYXNzZW5nZXJJZCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX3BheFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhpY19fcGF4LXRvcFwiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhpY19fcGF4LWJhZGdlIGhpY19fcGF4LWJhZGdlLS17eyBwLnR5cGUgfCBsb3dlcmNhc2UgfX1cIj57eyB0eXBlTGFiZWxbcC50eXBlXSA/PyBwLnR5cGUgfX08L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGljX19wYXgtbmFtZVwiPnt7IHAubmFtZT8ucHJlZml4IH19IHt7IHAubmFtZT8uZ2l2ZW5OYW1lIH19IHt7IHAubmFtZT8uc3VyTmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhpY19fcGF4LWJvdHRvbVwiPlxuICAgICAgICAgICAgICBAaWYgKHAuaWRlbnRpdHk/Lm51bWJlcikge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGljX19wYXgtZG9jXCI+PGkgY2xhc3M9XCJwaSBwaS1pZC1jYXJkXCI+PC9pPiB7eyBwLmlkZW50aXR5Py5udW1iZXIgfX08L3NwYW4+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQGlmIChwLmVtYWlsKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoaWNfX3BheC1lbWFpbFwiPnt7IHAuZW1haWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgfVxuXG4gIDwhLS0g4pSA4pSAIFBheW1lbnQg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIC0tPlxuICBAaWYgKHBheW1lbnQoKSkge1xuICAgIDxkaXYgY2xhc3M9XCJoaWNfX3BheW1lbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX3BheW1lbnQtbWFpblwiPlxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWNyZWRpdC1jYXJkIGhpY19fcGF5bWVudC1pY29uXCI+PC9pPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImhpY19fcGF5bWVudC1hbW91bnRcIj57eyBwYXltZW50KCk/LmFtb3VudCB9fSB7eyBwYXltZW50KCk/LmN1cnJlbmN5IH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImhpY19fcGF5bWVudC1zdGF0dXNcIiBbY2xhc3MuaGljX19wYXltZW50LXN0YXR1cy0tb2tdPVwicGF5bWVudCgpPy5zdGF0dXM/LmtleSA9PT0gJ1NVQ0NFU1MnXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJwaVwiIFtjbGFzcy5waS1jaGVjay1jaXJjbGVdPVwicGF5bWVudCgpPy5zdGF0dXM/LmtleSA9PT0gJ1NVQ0NFU1MnXCIgW2NsYXNzLnBpLWNsb2NrXT1cInBheW1lbnQoKT8uc3RhdHVzPy5rZXkgIT09ICdTVUNDRVNTJ1wiPjwvaT5cbiAgICAgICAgICB7eyBwYXltZW50KCk/LnN0YXR1cz8ubmFtZSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIEBpZiAocGF5bWVudCgpPy5tZXRob2QgfHwgcGF5bWVudCgpPy5kYXRlKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJoaWNfX3BheW1lbnQtc3ViXCI+XG4gICAgICAgICAgQGlmIChwYXltZW50KCk/Lm1ldGhvZCkgeyA8c3Bhbj57eyBwYXltZW50KCk/Lm1ldGhvZCB9fTwvc3Bhbj4gfVxuICAgICAgICAgIEBpZiAocGF5bWVudCgpPy5tZXRob2QgJiYgcGF5bWVudCgpPy5kYXRlKSB7IDxzcGFuIGNsYXNzPVwiaGljX19kb3RcIj7Ctzwvc3Bhbj4gfVxuICAgICAgICAgIEBpZiAocGF5bWVudCgpPy5kYXRlKSB7IDxzcGFuPnt7IHBheW1lbnQoKT8uZGF0ZSB9fTwvc3Bhbj4gfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfVxuXG48L2Rpdj5cbiJdfQ==
|
|
@@ -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==
|