simpo-component-library 3.6.195 → 3.6.197
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/ecommerce/sections/address/address.component.mjs +61 -48
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +4 -4
- package/esm2022/lib/ecommerce/sections/book-appointment/book-appointment.component.mjs +35 -4
- package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +16 -8
- package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.component.mjs +13 -4
- package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +23 -16
- package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +69 -16
- package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +25 -4
- package/esm2022/lib/ecommerce/sections/scheme-selection/scheme-selection.component.mjs +1 -2
- package/esm2022/lib/ecommerce/sections/store-list/store-list.component.mjs +14 -4
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.component.mjs +18 -9
- package/esm2022/lib/elements/schedule-video-call/schedule-video-call.component.mjs +180 -8
- package/esm2022/lib/pipes/gender.pipe.mjs +5 -1
- package/esm2022/lib/sections/header-section/header-section.component.mjs +12 -3
- package/esm2022/lib/services/rest.service.mjs +2 -4
- package/fesm2022/simpo-component-library.mjs +453 -118
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/ecommerce/sections/address/address.component.d.ts +5 -0
- package/lib/ecommerce/sections/book-appointment/book-appointment.component.d.ts +1 -0
- package/lib/ecommerce/sections/cart/cart.component.d.ts +3 -1
- package/lib/ecommerce/sections/enrollment-form/enrollment-form.component.d.ts +1 -0
- package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +2 -1
- package/lib/ecommerce/sections/product-list/product-list.component.d.ts +26 -1
- package/lib/ecommerce/sections/scheme-details/scheme-details.component.d.ts +3 -0
- package/lib/ecommerce/sections/store-list/store-list.component.d.ts +1 -0
- package/lib/ecommerce/sections/user-profile/user-profile.component.d.ts +3 -1
- package/lib/elements/schedule-video-call/schedule-video-call.component.d.ts +29 -1
- package/lib/sections/header-section/header-section.component.d.ts +2 -0
- package/package.json +1 -1
- package/simpo-component-library-3.6.197.tgz +0 -0
- package/simpo-component-library-3.6.195.tgz +0 -0
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
1
|
+
import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
2
2
|
import { MatIcon } from '@angular/material/icon';
|
3
3
|
import { CommonModule } from '@angular/common';
|
4
4
|
import * as i0 from "@angular/core";
|
@@ -10,6 +10,10 @@ export class SchemeDetailsComponent {
|
|
10
10
|
}
|
11
11
|
ngOnInit() {
|
12
12
|
this.getPaymentScheme();
|
13
|
+
this.getScreenSize();
|
14
|
+
}
|
15
|
+
getScreenSize(event) {
|
16
|
+
this.screenWidth = window.innerWidth;
|
13
17
|
}
|
14
18
|
getPaymentScheme() {
|
15
19
|
this.schemeDetails.paymentData.forEach((payment) => {
|
@@ -18,19 +22,36 @@ export class SchemeDetailsComponent {
|
|
18
22
|
}
|
19
23
|
});
|
20
24
|
}
|
25
|
+
getDueDate(paymentDate) {
|
26
|
+
if (!paymentDate)
|
27
|
+
return null;
|
28
|
+
const dueDate = new Date(paymentDate);
|
29
|
+
dueDate.setDate(dueDate.getDate() + 2); // Add 2 days to get due date
|
30
|
+
const today = new Date();
|
31
|
+
// Strip time for accurate day comparison
|
32
|
+
dueDate.setHours(0, 0, 0, 0);
|
33
|
+
today.setHours(0, 0, 0, 0);
|
34
|
+
// Calculate difference in milliseconds, then convert to days
|
35
|
+
const diffTime = dueDate.getTime() - today.getTime();
|
36
|
+
const diffDays = Math.round(diffTime / (1000 * 60 * 60 * 24));
|
37
|
+
return diffDays;
|
38
|
+
}
|
21
39
|
goBack() {
|
22
40
|
this.gotoSchemeOverview.emit();
|
23
41
|
}
|
24
42
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SchemeDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SchemeDetailsComponent, isStandalone: true, selector: "simpo-scheme-details", inputs: { schemeDetails: "schemeDetails" }, outputs: { gotoSchemeOverview: "gotoSchemeOverview" }, ngImport: i0, template: "<div class=\"w-100 h-100\">\r\n <!-- Header -->\r\n <div class=\"header\">\r\n <div class=\"header_left d-flex justify-content-between align-items-center\">\r\n <div class=\"back-btn d-flex align-items-center\" (click)=\"goBack()\"><mat-icon>keyboard_backspace</mat-icon>\r\n </div>\r\n <h1>Scheme Details</h1>\r\n </div>\r\n <div class=\"header-actions align-items-center\">\r\n <div class=\"download-btn\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/851045c1753444239515SVG.svg\"></div>\r\n </div>\r\n </div>\r\n\r\n <!-- Amount Card -->\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"w-75\">\r\n <div class=\"amount-card\">\r\n <div class=\"amount-info\">\r\n <div class=\"coin-icon\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/133984c1753444589570Group 1707483606.svg\">\r\n </div>\r\n <div class=\"amount-details\">\r\n <h2>\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}</h2>\r\n <p>Total Available Scheme Amount</p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex align-items-start justify-content-around\">\r\n <div class=\"details_tab\">\r\n <div class=\"section-header\">\r\n <h3>Scheme Details</h3>\r\n <span class=\"redeem-requested\">{{schemeDetails?.enrollmentStatus ?\r\n schemeDetails?.enrollmentStatus : 'N/A'}}</span>\r\n </div>\r\n\r\n <div class=\"scheme-info\">\r\n <div class=\"scheme-name\">\r\n <span class=\"label\">{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode :\r\n 'N/A'}}</span>\r\n </div>\r\n <div class=\"scheme-id\">\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}\r\n Monthly</div>\r\n </div>\r\n\r\n <div class=\"dates-grid\">\r\n <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme started on</span>\r\n <span class=\"date-value\">{{schemeDetails.createdTimeStamp ?\r\n (schemeDetails.createdTimeStamp | date:'mediumDate') : 'N/A' }}</span>\r\n </div>\r\n </div>\r\n <!-- <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme ends on</span>\r\n <span class=\"date-value\">5 Jan 2025</span>\r\n </div>\r\n </div> -->\r\n <div class=\"completion-info\">\r\n <span class=\"completion-label\">Completed EMIs</span>\r\n <span class=\"completion-value\">{{schemeDetails.dueMonths ? schemeDetails.dueMonths : 0}} out\r\n of 10</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"enrollment-card\">\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Name</span>\r\n <span class=\"enrollment-value\">{{schemeDetails?.enrollmentGroup ?\r\n schemeDetails?.enrollmentGroup.genId :'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Code</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentGroup?.pwcGroupId ?\r\n schemeDetails.enrollmentGroup.pwcGroupId : 'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Maturity Date</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.maturityDate ? (schemeDetails.maturityDate | date\r\n : 'shortDate') : 'N/A'}}</span>\r\n </div>\r\n <!-- <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Enrollment Id</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentId ? schemeDetails.enrollmentId : 'N/A'}}</span>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"quick-actions\">\r\n <h3>Quick Actions</h3>\r\n <div class=\"actions d-flex flex-column justify-content-evenly\">\r\n <div class=\"action-item d-flex align-items-center mb-2\">Make Due Payments\r\n </div>\r\n <div class=\"action-item d-flex align-items-center\">Add Nominee</div>\r\n <div class=\"action-item d-flex align-items-center\">Download SOA</div>\r\n </div>\r\n\r\n <button class=\"enroll-btn\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/782673c1753434311903SVG (1).png\"> Enroll\r\n New Scheme</button>\r\n </div>\r\n </div>\r\n\r\n <!-- Scheme Details Section -->\r\n <div class=\"scheme-details\">\r\n <div class=\"section d-flex-flex-column gap-2\">\r\n <div class=\"section-header\">\r\n <h2 class=\"section-title\">Upcoming Payments</h2>\r\n </div>\r\n <div class=\"payment-list d-flex flex-column gap-2\">\r\n <ng-container *ngIf=\"paymentData.length;else noPayments\">\r\n <ng-container *ngFor=\"let payment of schemeDetails.paymentData\">\r\n <div class=\"payment-item\" *ngIf=\"payment.paymentStatus != 'PAID'\">\r\n <div class=\"payment-info\">\r\n <div class=\"payment-icon upcoming\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/655969c1753438284565Background.svg\">\r\n </div>\r\n <div class=\"payment-details\">\r\n <h4>{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode : 'N/A'}}</h4>\r\n <p>Date {{payment?.paymentDate ? (payment?.paymentDate | date : 'shortDate') :\r\n 'N/A'}} |\r\n Due by: 2 days</p>\r\n </div>\r\n </div>\r\n <div class=\"payment-amount\">\r\n <div class=\"amount-value\">\u20B9{{schemeDetails?.amountToBePaid ?\r\n schemeDetails?.amountToBePaid :\r\n 'N/A'}}</div>\r\n <div class=\"payment-status upcoming-status\">Pay Now</div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #noPayments>\r\n <div class=\"d-flex justify-content-center align-items-center w-100 h-100\">\r\n <span>No Upcoming Payments</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"tabs\">\r\n <button class=\"tab d-flex justify-content-center align-items-center active\">Transactions</button>\r\n </div>\r\n <div class=\"transactions\">\r\n <div class=\"transaction-item\" *ngFor=\"let transaction of schemeDetails.paymentData\">\r\n <div class=\"transaction-status paid\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/484102c1753446573473Group 1707484906.png\">\r\n </div>\r\n <div class=\"transaction-details\">\r\n <h4>{{transaction.paymentMonth ? transaction.paymentMonth : 'N/A' }}st Instalment\r\n {{transaction.paymentStatus ? (transaction.paymentStatus != \"PAID\" ? 'Due' : 'Paid') : 'N/A'}}\r\n </h4>\r\n <p>{{transaction.emiChargeDate ? (transaction.emiChargeDate | date : 'shortDate') : 'N/A'}}</p>\r\n </div>\r\n <div class=\"transaction-amount\" *ngIf=\"transaction.paymentStatus === 'PAID';else duePayment\">\r\n {{transaction.paidAmount ? ('\u20B9'+transaction.paidAmount) : 'N/A' }}</div>\r\n <ng-template #duePayment>\r\n <p class=\"underline\">Pay Now</p>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f5f5f5;color:#333}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px;background-color:#fff;border-bottom:1px solid #e0e0e0}.back-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:7px}.header_left h1{font-size:18px;font-weight:600;flex-grow:1;text-align:center;margin:0 16px}.header-actions{display:flex;gap:8px}.share-btn,.download-btn{font-size:16px;cursor:pointer;padding:9px;border:1px solid lightgrey;border-radius:5px}.details_tab{border:1px solid lightgrey;padding:3%;border-radius:7px;width:62%}.amount-card{background:linear-gradient(90deg,#fffbeb,#fff7ed);margin:16px;padding:20px;border-radius:12px}.amount-info{display:flex;align-items:center;gap:16px}.coin-icon{font-size:32px}.amount-details h2{font-size:24px;font-weight:700;color:#333;margin-bottom:4px}.amount-details p{font-size:14px;color:#666}.scheme-details{padding:0 16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title{font-size:18px;font-weight:600}.payment-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid #f1f3f4;border-radius:10px;background:#f9fafb}.payment-info{display:flex;align-items:center;gap:12px}.payment-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.payment-details h4{font-size:14px;font-weight:600;margin:0}.payment-details span{font-size:12px;color:#666}.payment-amount{text-align:right}.quick-actions{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef;margin:12px 0}.quick-actions h3{font-size:16px;font-weight:600;margin-bottom:16px}.action-item{padding:8px;font-size:14px;color:#666;border:1px solid #f1f3f4;border-radius:9px;white-space:nowrap}.upcoming-status{background:#d3d3d3;font-size:12px;padding:6px;border-radius:4px}.amount-value{font-size:16px;font-weight:600;margin-bottom:4px}.section-header h3{font-size:18px;font-weight:600}.redeem-requested{background-color:#fff3e0;color:#e65100;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.scheme-info{margin-bottom:24px}.scheme-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.scheme-name .label{font-size:16px;font-weight:600}.scheme-name .redeem-status{background-color:#e8f5e8;color:#2e7d32;padding:4px 12px;border-radius:16px;font-size:12px}.scheme-id{color:#666;font-size:14px}.dates-grid{display:flex;gap:16px;border-top:1px solid lightgrey;justify-content:space-between;padding-top:11px}.date-item{display:flex;align-items:center;gap:8px}.date-icon{font-size:16px}.date-info{display:flex;flex-direction:column}.date-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.date-value{font-size:11px;font-weight:500}.completion-info{display:flex;flex-direction:column;align-items:flex-start;grid-column:span 2}.completion-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.completion-value{font-size:11px;font-weight:500}.tabs{display:flex;border-bottom:1px solid #e0e0e0;margin:20px 0;height:5vh;background:#d3d3d3;align-items:center;padding:0 1%;width:12%;border-radius:30px}.tab{background:none;border:none;font-size:10px!important;cursor:pointer;border-bottom:2px solid transparent;color:#666;width:6vw!important;height:80%!important}.tab.active{color:#333;border-radius:30px;font-weight:500;background-color:#fff}.transactions{display:flex;flex-direction:column;gap:16px;padding-bottom:20px}.transaction-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid lightgrey;border-radius:8px}.transaction-status{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.underline{text-decoration:underline}.transaction-status img{width:100%}.transaction-status.paid{background-color:#4caf50;color:#fff}.transaction-status.due{background-color:#e0e0e0;border:2px solid #bdbdbd}.transaction-details{flex-grow:1}.transaction-details h4{font-size:14px;font-weight:500;margin-bottom:2px}.transaction-details p{font-size:12px;color:#666}.transaction-amount{font-size:16px;font-weight:600}.pay-now-btn{background-color:#9c27b0;color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer}.pay-now-btn:hover{background-color:#7b1fa2}@media (max-width: 480px){.dates-grid{grid-template-columns:1fr}.completion-info{grid-column:span 1;align-items:flex-start}}.actions{height:70%}.enroll-btn{background:#3a0044;color:#fff;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;margin-top:12px;font-size:12px!important;white-space:nowrap;align-items:center}.enrollment-card{background:#fff;border-radius:12px;padding:0 24px;border:1px solid lightgrey}.section{background:#fff;border-radius:12px;padding:24px;margin:24px 0;border:1px solid #e9ecef}.enrollment-row{display:flex;justify-content:space-between;align-items:center;padding:10.5px 0;border-bottom:1px solid #f0f0f0}.enrollment-row:last-child{border-bottom:none}.enrollment-label{color:#666;font-size:14px;font-weight:500}.enrollment-value{color:#333;font-size:14px;font-weight:600}.enrollment-value.highlight{color:#2563eb}.enrollment-value.zero{color:#ef4444}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SchemeDetailsComponent, isStandalone: true, selector: "simpo-scheme-details", inputs: { schemeDetails: "schemeDetails" }, outputs: { gotoSchemeOverview: "gotoSchemeOverview" }, host: { listeners: { "window:resize": "getScreenSize($event)" } }, ngImport: i0, template: "<div class=\"w-100 h-100\">\r\n <!-- Header -->\r\n <div class=\"header\" *ngIf=\"screenWidth>475\">\r\n <div class=\"header_left d-flex justify-content-between align-items-center\">\r\n <div class=\"back-btn d-flex align-items-center\" (click)=\"goBack()\"><mat-icon>keyboard_backspace</mat-icon>\r\n </div>\r\n <h1>Scheme Details</h1>\r\n </div>\r\n </div>\r\n\r\n <!-- Amount Card -->\r\n <div class=\"d-flex justify-content-between amount-card-section\">\r\n <div [ngClass]=\"screenWidth > 475 ? 'w-75' : 'w-100'\">\r\n <div class=\"amount-card\">\r\n <div class=\"amount-info\">\r\n <div class=\"coin-icon\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/133984c1753444589570Group 1707483606.svg\">\r\n </div>\r\n <div class=\"amount-details\">\r\n <h2>\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}</h2>\r\n <p>Total Available Scheme Amount</p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex align-items-start justify-content-around scheme-section\">\r\n <div class=\"details_tab\">\r\n <div class=\"section-header\">\r\n <h3>Scheme Details</h3>\r\n <span class=\"redeem-requested\">{{schemeDetails?.enrollmentStatus ?\r\n schemeDetails?.enrollmentStatus : 'N/A'}}</span>\r\n </div>\r\n\r\n <div class=\"scheme-info\">\r\n <div class=\"scheme-name\">\r\n <span class=\"label\">{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode :\r\n 'N/A'}}</span>\r\n </div>\r\n <div class=\"scheme-id\">\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}\r\n Monthly</div>\r\n </div>\r\n\r\n <div class=\"dates-grid\">\r\n <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme started on</span>\r\n <span class=\"date-value\">{{schemeDetails.createdTimeStamp ?\r\n (schemeDetails.createdTimeStamp | date:'mediumDate') : 'N/A' }}</span>\r\n </div>\r\n </div>\r\n <!-- <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme ends on</span>\r\n <span class=\"date-value\">5 Jan 2025</span>\r\n </div>\r\n </div> -->\r\n <div class=\"completion-info\">\r\n <span class=\"completion-label\">Completed EMIs</span>\r\n <span class=\"completion-value\">{{schemeDetails.dueMonths ? (10-schemeDetails.dueMonths) :\r\n 0}} out\r\n of 10</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"enrollment-card\">\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Name</span>\r\n <span class=\"enrollment-value\">{{schemeDetails?.enrollmentGroup ?\r\n schemeDetails?.enrollmentGroup.genId :'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Code</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentGroup?.pwcGroupId ?\r\n schemeDetails.enrollmentGroup.pwcGroupId : 'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Maturity Date</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.maturityDate ? (schemeDetails.maturityDate | date\r\n : 'dd-MM-yyyy') : 'N/A'}}</span>\r\n </div>\r\n <!-- <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Enrollment Id</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentId ? schemeDetails.enrollmentId : 'N/A'}}</span>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"quick-actions\">\r\n <h3>Quick Actions</h3>\r\n <div class=\"actions d-flex flex-column justify-content-evenly\">\r\n <div class=\"action-item d-flex align-items-center mb-2\">Make Due Payments\r\n </div>\r\n <div class=\"action-item d-flex align-items-center\">Add Nominee</div>\r\n <div class=\"action-item d-flex align-items-center\">Download SOA</div>\r\n </div>\r\n\r\n <button class=\"enroll-btn\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/782673c1753434311903SVG (1).png\"> Enroll\r\n New Scheme</button>\r\n </div>\r\n </div>\r\n\r\n <!-- Scheme Details Section -->\r\n <div class=\"scheme-details\">\r\n <div class=\"section d-flex-flex-column gap-2\">\r\n <div class=\"section-header\">\r\n <h2 class=\"section-title\">Upcoming Payments</h2>\r\n </div>\r\n <div class=\"payment-list d-flex flex-column gap-2\">\r\n <ng-container *ngIf=\"paymentData.length;else noPayments\">\r\n <ng-container *ngFor=\"let payment of schemeDetails.paymentData\">\r\n <div class=\"payment-item\" *ngIf=\"payment.paymentStatus != 'PAID'\">\r\n <div class=\"payment-info\">\r\n <div class=\"payment-icon upcoming\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/655969c1753438284565Background.svg\">\r\n </div>\r\n <div class=\"payment-details\">\r\n <h4>{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode : 'N/A'}}</h4>\r\n <p>Date {{payment?.paymentDate ? (payment?.paymentDate | date : 'shortDate') :\r\n 'N/A'}} |\r\n Due by: {{getDueDate(payment?.paymentDate)}} days</p>\r\n </div>\r\n </div>\r\n <div class=\"payment-amount\">\r\n <div class=\"amount-value\" *ngIf=\"payment?.amountToBePaid\">\u20B9{{payment?.amountToBePaid ?\r\n payment.amountToBePaid :\r\n 'N/A'}}</div>\r\n <div class=\"payment-status upcoming-status\">Pay Now</div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #noPayments>\r\n <div class=\"d-flex justify-content-center align-items-center w-100 h-100\">\r\n <span>No Upcoming Payments</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"tabs\">\r\n <button class=\"tab d-flex justify-content-center align-items-center active\">Transactions</button>\r\n </div>\r\n <div class=\"transactions\">\r\n <div class=\"transaction-item\" *ngFor=\"let transaction of schemeDetails.paymentData\">\r\n <div class=\"transaction-status paid\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/484102c1753446573473Group 1707484906.png\">\r\n </div>\r\n <div class=\"transaction-details\">\r\n <h4>{{transaction.paymentMonth ? transaction.paymentMonth : 'N/A' }}st Instalment\r\n {{transaction.paymentStatus ? (transaction.paymentStatus != \"PAID\" ? 'Due' : 'Paid') : 'N/A'}}\r\n </h4>\r\n <p>{{transaction.emiChargeDate ? (transaction.emiChargeDate | date : 'shortDate') : 'N/A'}}</p>\r\n </div>\r\n <div class=\"transaction-amount\" *ngIf=\"transaction.paymentStatus === 'PAID';else duePayment\">\r\n {{transaction.paidAmount ? ('\u20B9'+transaction.paidAmount) : 'N/A' }}</div>\r\n <ng-template #duePayment>\r\n <p class=\"underline\">Pay Now</p>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f5f5f5;color:#333}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px;background-color:#fff;border-bottom:1px solid #e0e0e0}.back-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:7px}.header_left h1{font-size:18px;font-weight:600;flex-grow:1;text-align:center;margin:0 16px}.header-actions{display:flex;gap:8px}.share-btn,.download-btn{font-size:16px;cursor:pointer;padding:9px;border:1px solid lightgrey;border-radius:5px}.details_tab{border:1px solid lightgrey;padding:3%;border-radius:7px;width:62%}.amount-card{background:linear-gradient(90deg,#fffbeb,#fff7ed);margin:16px;padding:20px;border-radius:12px}.amount-info{display:flex;align-items:center;gap:16px}.coin-icon{font-size:32px}.amount-details h2{font-size:24px;font-weight:700;color:#333;margin-bottom:4px}.amount-details p{font-size:14px;color:#666}.scheme-details{padding:0 16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title{font-size:18px;font-weight:600}.payment-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid #f1f3f4;border-radius:10px;background:#f9fafb}.payment-info{display:flex;align-items:center;gap:12px}.payment-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.payment-details h4{font-size:14px;font-weight:600;margin:0}.payment-details span{font-size:12px;color:#666}.payment-amount{text-align:right}.quick-actions{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef;margin:12px 0}.quick-actions h3{font-size:16px;font-weight:600;margin-bottom:16px}.action-item{padding:8px;font-size:14px;color:#666;border:1px solid #f1f3f4;border-radius:9px;white-space:nowrap}.upcoming-status{background:#d3d3d3;font-size:12px;padding:6px;border-radius:4px}.amount-value{font-size:16px;font-weight:600;margin-bottom:4px}.section-header h3{font-size:18px;font-weight:600}.redeem-requested{background-color:#fff3e0;color:#e65100;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.scheme-info{margin-bottom:24px}.scheme-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.scheme-name .label{font-size:16px;font-weight:600}.scheme-name .redeem-status{background-color:#e8f5e8;color:#2e7d32;padding:4px 12px;border-radius:16px;font-size:12px}.scheme-id{color:#666;font-size:14px}.dates-grid{display:flex;gap:16px;border-top:1px solid lightgrey;justify-content:space-between;padding-top:11px}.date-item{display:flex;align-items:center;gap:8px}.date-icon{font-size:16px}.date-info{display:flex;flex-direction:column}.date-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.date-value{font-size:11px;font-weight:500}.completion-info{display:flex;flex-direction:column;align-items:flex-start;grid-column:span 2}.completion-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.completion-value{font-size:11px;font-weight:500}.tabs{display:flex;border-bottom:1px solid #e0e0e0;margin:20px 0;height:5vh;background:#d3d3d3;align-items:center;padding:0 1%;width:fit-content;border-radius:30px}.tab{background:none;border:none;font-size:10px!important;cursor:pointer;border-bottom:2px solid transparent;color:#666;width:6vw!important;height:80%!important}.tab.active{color:#333;border-radius:30px;font-weight:500;background-color:#fff}.transactions{display:flex;flex-direction:column;gap:16px;padding-bottom:20px}.transaction-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid lightgrey;border-radius:8px}.transaction-status{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.underline{text-decoration:underline}.transaction-status img{width:100%}.transaction-status.paid{background-color:#4caf50;color:#fff}.transaction-status.due{background-color:#e0e0e0;border:2px solid #bdbdbd}.transaction-details{flex-grow:1}.transaction-details h4{font-size:14px;font-weight:500;margin-bottom:2px}.transaction-details p{font-size:12px;color:#666}.transaction-amount{font-size:16px;font-weight:600}.pay-now-btn{background-color:#9c27b0;color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer}.pay-now-btn:hover{background-color:#7b1fa2}@media (max-width: 480px){.dates-grid{grid-template-columns:1fr}.completion-info{grid-column:span 1;align-items:flex-start}}.scheme-section{flex-direction:column;gap:1rem}.details_tab{width:100%;border-radius:12px}.section{padding:12px!important;max-height:75vh;overflow-y:scroll}.upcoming-status{display:flex;justify-content:center;align-items:center;height:35px;white-space:nowrap}.payment-details p{font-size:12px}.tab{width:22vw!important}.scheme-details{padding:0}.enrollment-card{width:100%!important}.amount-card{margin:0 0 12px}.amount-card-section{flex-direction:column}.actions{height:70%}.enroll-btn{background:#3a0044;color:#fff;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;margin-top:12px;font-size:12px!important;white-space:nowrap;align-items:center}.enrollment-card{background:#fff;border-radius:12px;padding:0 24px;border:1px solid lightgrey;width:30%}.section{background:#fff;border-radius:12px;padding:24px;margin:24px 0;border:1px solid #e9ecef}.enrollment-row{display:flex;justify-content:space-between;align-items:center;padding:10.5px 0;border-bottom:1px solid #f0f0f0}.enrollment-row:last-child{border-bottom:none}.enrollment-label{color:#666;font-size:14px;font-weight:500}.enrollment-value{color:#333;font-size:14px;font-weight:600}.enrollment-value.highlight{color:#2563eb}.enrollment-value.zero{color:#ef4444}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
|
26
44
|
}
|
27
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SchemeDetailsComponent, decorators: [{
|
28
46
|
type: Component,
|
29
|
-
args: [{ selector: 'simpo-scheme-details', standalone: true, imports: [MatIcon, CommonModule], template: "<div class=\"w-100 h-100\">\r\n <!-- Header -->\r\n <div class=\"header\">\r\n <div class=\"header_left d-flex justify-content-between align-items-center\">\r\n <div class=\"back-btn d-flex align-items-center\" (click)=\"goBack()\"><mat-icon>keyboard_backspace</mat-icon>\r\n </div>\r\n <h1>Scheme Details</h1>\r\n </div>\r\n <div class=\"header-actions align-items-center\">\r\n <div class=\"download-btn\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/851045c1753444239515SVG.svg\"></div>\r\n </div>\r\n </div>\r\n\r\n <!-- Amount Card -->\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"w-75\">\r\n <div class=\"amount-card\">\r\n <div class=\"amount-info\">\r\n <div class=\"coin-icon\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/133984c1753444589570Group 1707483606.svg\">\r\n </div>\r\n <div class=\"amount-details\">\r\n <h2>\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}</h2>\r\n <p>Total Available Scheme Amount</p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex align-items-start justify-content-around\">\r\n <div class=\"details_tab\">\r\n <div class=\"section-header\">\r\n <h3>Scheme Details</h3>\r\n <span class=\"redeem-requested\">{{schemeDetails?.enrollmentStatus ?\r\n schemeDetails?.enrollmentStatus : 'N/A'}}</span>\r\n </div>\r\n\r\n <div class=\"scheme-info\">\r\n <div class=\"scheme-name\">\r\n <span class=\"label\">{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode :\r\n 'N/A'}}</span>\r\n </div>\r\n <div class=\"scheme-id\">\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}\r\n Monthly</div>\r\n </div>\r\n\r\n <div class=\"dates-grid\">\r\n <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme started on</span>\r\n <span class=\"date-value\">{{schemeDetails.createdTimeStamp ?\r\n (schemeDetails.createdTimeStamp | date:'mediumDate') : 'N/A' }}</span>\r\n </div>\r\n </div>\r\n <!-- <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme ends on</span>\r\n <span class=\"date-value\">5 Jan 2025</span>\r\n </div>\r\n </div> -->\r\n <div class=\"completion-info\">\r\n <span class=\"completion-label\">Completed EMIs</span>\r\n <span class=\"completion-value\">{{schemeDetails.dueMonths ? schemeDetails.dueMonths : 0}} out\r\n of 10</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"enrollment-card\">\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Name</span>\r\n <span class=\"enrollment-value\">{{schemeDetails?.enrollmentGroup ?\r\n schemeDetails?.enrollmentGroup.genId :'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Code</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentGroup?.pwcGroupId ?\r\n schemeDetails.enrollmentGroup.pwcGroupId : 'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Maturity Date</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.maturityDate ? (schemeDetails.maturityDate | date\r\n : 'shortDate') : 'N/A'}}</span>\r\n </div>\r\n <!-- <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Enrollment Id</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentId ? schemeDetails.enrollmentId : 'N/A'}}</span>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"quick-actions\">\r\n <h3>Quick Actions</h3>\r\n <div class=\"actions d-flex flex-column justify-content-evenly\">\r\n <div class=\"action-item d-flex align-items-center mb-2\">Make Due Payments\r\n </div>\r\n <div class=\"action-item d-flex align-items-center\">Add Nominee</div>\r\n <div class=\"action-item d-flex align-items-center\">Download SOA</div>\r\n </div>\r\n\r\n <button class=\"enroll-btn\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/782673c1753434311903SVG (1).png\"> Enroll\r\n New Scheme</button>\r\n </div>\r\n </div>\r\n\r\n <!-- Scheme Details Section -->\r\n <div class=\"scheme-details\">\r\n <div class=\"section d-flex-flex-column gap-2\">\r\n <div class=\"section-header\">\r\n <h2 class=\"section-title\">Upcoming Payments</h2>\r\n </div>\r\n <div class=\"payment-list d-flex flex-column gap-2\">\r\n <ng-container *ngIf=\"paymentData.length;else noPayments\">\r\n <ng-container *ngFor=\"let payment of schemeDetails.paymentData\">\r\n <div class=\"payment-item\" *ngIf=\"payment.paymentStatus != 'PAID'\">\r\n <div class=\"payment-info\">\r\n <div class=\"payment-icon upcoming\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/655969c1753438284565Background.svg\">\r\n </div>\r\n <div class=\"payment-details\">\r\n <h4>{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode : 'N/A'}}</h4>\r\n <p>Date {{payment?.paymentDate ? (payment?.paymentDate | date : 'shortDate') :\r\n 'N/A'}} |\r\n Due by: 2 days</p>\r\n </div>\r\n </div>\r\n <div class=\"payment-amount\">\r\n <div class=\"amount-value\">\u20B9{{schemeDetails?.amountToBePaid ?\r\n schemeDetails?.amountToBePaid :\r\n 'N/A'}}</div>\r\n <div class=\"payment-status upcoming-status\">Pay Now</div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #noPayments>\r\n <div class=\"d-flex justify-content-center align-items-center w-100 h-100\">\r\n <span>No Upcoming Payments</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"tabs\">\r\n <button class=\"tab d-flex justify-content-center align-items-center active\">Transactions</button>\r\n </div>\r\n <div class=\"transactions\">\r\n <div class=\"transaction-item\" *ngFor=\"let transaction of schemeDetails.paymentData\">\r\n <div class=\"transaction-status paid\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/484102c1753446573473Group 1707484906.png\">\r\n </div>\r\n <div class=\"transaction-details\">\r\n <h4>{{transaction.paymentMonth ? transaction.paymentMonth : 'N/A' }}st Instalment\r\n {{transaction.paymentStatus ? (transaction.paymentStatus != \"PAID\" ? 'Due' : 'Paid') : 'N/A'}}\r\n </h4>\r\n <p>{{transaction.emiChargeDate ? (transaction.emiChargeDate | date : 'shortDate') : 'N/A'}}</p>\r\n </div>\r\n <div class=\"transaction-amount\" *ngIf=\"transaction.paymentStatus === 'PAID';else duePayment\">\r\n {{transaction.paidAmount ? ('\u20B9'+transaction.paidAmount) : 'N/A' }}</div>\r\n <ng-template #duePayment>\r\n <p class=\"underline\">Pay Now</p>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f5f5f5;color:#333}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px;background-color:#fff;border-bottom:1px solid #e0e0e0}.back-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:7px}.header_left h1{font-size:18px;font-weight:600;flex-grow:1;text-align:center;margin:0 16px}.header-actions{display:flex;gap:8px}.share-btn,.download-btn{font-size:16px;cursor:pointer;padding:9px;border:1px solid lightgrey;border-radius:5px}.details_tab{border:1px solid lightgrey;padding:3%;border-radius:7px;width:62%}.amount-card{background:linear-gradient(90deg,#fffbeb,#fff7ed);margin:16px;padding:20px;border-radius:12px}.amount-info{display:flex;align-items:center;gap:16px}.coin-icon{font-size:32px}.amount-details h2{font-size:24px;font-weight:700;color:#333;margin-bottom:4px}.amount-details p{font-size:14px;color:#666}.scheme-details{padding:0 16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title{font-size:18px;font-weight:600}.payment-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid #f1f3f4;border-radius:10px;background:#f9fafb}.payment-info{display:flex;align-items:center;gap:12px}.payment-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.payment-details h4{font-size:14px;font-weight:600;margin:0}.payment-details span{font-size:12px;color:#666}.payment-amount{text-align:right}.quick-actions{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef;margin:12px 0}.quick-actions h3{font-size:16px;font-weight:600;margin-bottom:16px}.action-item{padding:8px;font-size:14px;color:#666;border:1px solid #f1f3f4;border-radius:9px;white-space:nowrap}.upcoming-status{background:#d3d3d3;font-size:12px;padding:6px;border-radius:4px}.amount-value{font-size:16px;font-weight:600;margin-bottom:4px}.section-header h3{font-size:18px;font-weight:600}.redeem-requested{background-color:#fff3e0;color:#e65100;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.scheme-info{margin-bottom:24px}.scheme-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.scheme-name .label{font-size:16px;font-weight:600}.scheme-name .redeem-status{background-color:#e8f5e8;color:#2e7d32;padding:4px 12px;border-radius:16px;font-size:12px}.scheme-id{color:#666;font-size:14px}.dates-grid{display:flex;gap:16px;border-top:1px solid lightgrey;justify-content:space-between;padding-top:11px}.date-item{display:flex;align-items:center;gap:8px}.date-icon{font-size:16px}.date-info{display:flex;flex-direction:column}.date-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.date-value{font-size:11px;font-weight:500}.completion-info{display:flex;flex-direction:column;align-items:flex-start;grid-column:span 2}.completion-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.completion-value{font-size:11px;font-weight:500}.tabs{display:flex;border-bottom:1px solid #e0e0e0;margin:20px 0;height:5vh;background:#d3d3d3;align-items:center;padding:0 1%;width:12%;border-radius:30px}.tab{background:none;border:none;font-size:10px!important;cursor:pointer;border-bottom:2px solid transparent;color:#666;width:6vw!important;height:80%!important}.tab.active{color:#333;border-radius:30px;font-weight:500;background-color:#fff}.transactions{display:flex;flex-direction:column;gap:16px;padding-bottom:20px}.transaction-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid lightgrey;border-radius:8px}.transaction-status{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.underline{text-decoration:underline}.transaction-status img{width:100%}.transaction-status.paid{background-color:#4caf50;color:#fff}.transaction-status.due{background-color:#e0e0e0;border:2px solid #bdbdbd}.transaction-details{flex-grow:1}.transaction-details h4{font-size:14px;font-weight:500;margin-bottom:2px}.transaction-details p{font-size:12px;color:#666}.transaction-amount{font-size:16px;font-weight:600}.pay-now-btn{background-color:#9c27b0;color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer}.pay-now-btn:hover{background-color:#7b1fa2}@media (max-width: 480px){.dates-grid{grid-template-columns:1fr}.completion-info{grid-column:span 1;align-items:flex-start}}.actions{height:70%}.enroll-btn{background:#3a0044;color:#fff;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;margin-top:12px;font-size:12px!important;white-space:nowrap;align-items:center}.enrollment-card{background:#fff;border-radius:12px;padding:0 24px;border:1px solid lightgrey}.section{background:#fff;border-radius:12px;padding:24px;margin:24px 0;border:1px solid #e9ecef}.enrollment-row{display:flex;justify-content:space-between;align-items:center;padding:10.5px 0;border-bottom:1px solid #f0f0f0}.enrollment-row:last-child{border-bottom:none}.enrollment-label{color:#666;font-size:14px;font-weight:500}.enrollment-value{color:#333;font-size:14px;font-weight:600}.enrollment-value.highlight{color:#2563eb}.enrollment-value.zero{color:#ef4444}\n"] }]
|
47
|
+
args: [{ selector: 'simpo-scheme-details', standalone: true, imports: [MatIcon, CommonModule], template: "<div class=\"w-100 h-100\">\r\n <!-- Header -->\r\n <div class=\"header\" *ngIf=\"screenWidth>475\">\r\n <div class=\"header_left d-flex justify-content-between align-items-center\">\r\n <div class=\"back-btn d-flex align-items-center\" (click)=\"goBack()\"><mat-icon>keyboard_backspace</mat-icon>\r\n </div>\r\n <h1>Scheme Details</h1>\r\n </div>\r\n </div>\r\n\r\n <!-- Amount Card -->\r\n <div class=\"d-flex justify-content-between amount-card-section\">\r\n <div [ngClass]=\"screenWidth > 475 ? 'w-75' : 'w-100'\">\r\n <div class=\"amount-card\">\r\n <div class=\"amount-info\">\r\n <div class=\"coin-icon\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/133984c1753444589570Group 1707483606.svg\">\r\n </div>\r\n <div class=\"amount-details\">\r\n <h2>\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}</h2>\r\n <p>Total Available Scheme Amount</p>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex align-items-start justify-content-around scheme-section\">\r\n <div class=\"details_tab\">\r\n <div class=\"section-header\">\r\n <h3>Scheme Details</h3>\r\n <span class=\"redeem-requested\">{{schemeDetails?.enrollmentStatus ?\r\n schemeDetails?.enrollmentStatus : 'N/A'}}</span>\r\n </div>\r\n\r\n <div class=\"scheme-info\">\r\n <div class=\"scheme-name\">\r\n <span class=\"label\">{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode :\r\n 'N/A'}}</span>\r\n </div>\r\n <div class=\"scheme-id\">\u20B9{{schemeDetails?.schemeAmount ? schemeDetails?.schemeAmount : 'N/A'}}\r\n Monthly</div>\r\n </div>\r\n\r\n <div class=\"dates-grid\">\r\n <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme started on</span>\r\n <span class=\"date-value\">{{schemeDetails.createdTimeStamp ?\r\n (schemeDetails.createdTimeStamp | date:'mediumDate') : 'N/A' }}</span>\r\n </div>\r\n </div>\r\n <!-- <div class=\"date-item\">\r\n <div class=\"date-icon\">\uD83D\uDCC5</div>\r\n <div class=\"date-info\">\r\n <span class=\"date-label\">Scheme ends on</span>\r\n <span class=\"date-value\">5 Jan 2025</span>\r\n </div>\r\n </div> -->\r\n <div class=\"completion-info\">\r\n <span class=\"completion-label\">Completed EMIs</span>\r\n <span class=\"completion-value\">{{schemeDetails.dueMonths ? (10-schemeDetails.dueMonths) :\r\n 0}} out\r\n of 10</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"enrollment-card\">\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Name</span>\r\n <span class=\"enrollment-value\">{{schemeDetails?.enrollmentGroup ?\r\n schemeDetails?.enrollmentGroup.genId :'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Group Code</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentGroup?.pwcGroupId ?\r\n schemeDetails.enrollmentGroup.pwcGroupId : 'N/A' }}</span>\r\n </div>\r\n\r\n <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Maturity Date</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.maturityDate ? (schemeDetails.maturityDate | date\r\n : 'dd-MM-yyyy') : 'N/A'}}</span>\r\n </div>\r\n <!-- <div class=\"enrollment-row\">\r\n <span class=\"enrollment-label\">Enrollment Id</span>\r\n <span class=\"enrollment-value\">{{schemeDetails.enrollmentId ? schemeDetails.enrollmentId : 'N/A'}}</span>\r\n </div> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"quick-actions\">\r\n <h3>Quick Actions</h3>\r\n <div class=\"actions d-flex flex-column justify-content-evenly\">\r\n <div class=\"action-item d-flex align-items-center mb-2\">Make Due Payments\r\n </div>\r\n <div class=\"action-item d-flex align-items-center\">Add Nominee</div>\r\n <div class=\"action-item d-flex align-items-center\">Download SOA</div>\r\n </div>\r\n\r\n <button class=\"enroll-btn\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/782673c1753434311903SVG (1).png\"> Enroll\r\n New Scheme</button>\r\n </div>\r\n </div>\r\n\r\n <!-- Scheme Details Section -->\r\n <div class=\"scheme-details\">\r\n <div class=\"section d-flex-flex-column gap-2\">\r\n <div class=\"section-header\">\r\n <h2 class=\"section-title\">Upcoming Payments</h2>\r\n </div>\r\n <div class=\"payment-list d-flex flex-column gap-2\">\r\n <ng-container *ngIf=\"paymentData.length;else noPayments\">\r\n <ng-container *ngFor=\"let payment of schemeDetails.paymentData\">\r\n <div class=\"payment-item\" *ngIf=\"payment.paymentStatus != 'PAID'\">\r\n <div class=\"payment-info\">\r\n <div class=\"payment-icon upcoming\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/655969c1753438284565Background.svg\">\r\n </div>\r\n <div class=\"payment-details\">\r\n <h4>{{schemeDetails?.pwcSchemeCode ? schemeDetails?.pwcSchemeCode : 'N/A'}}</h4>\r\n <p>Date {{payment?.paymentDate ? (payment?.paymentDate | date : 'shortDate') :\r\n 'N/A'}} |\r\n Due by: {{getDueDate(payment?.paymentDate)}} days</p>\r\n </div>\r\n </div>\r\n <div class=\"payment-amount\">\r\n <div class=\"amount-value\" *ngIf=\"payment?.amountToBePaid\">\u20B9{{payment?.amountToBePaid ?\r\n payment.amountToBePaid :\r\n 'N/A'}}</div>\r\n <div class=\"payment-status upcoming-status\">Pay Now</div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #noPayments>\r\n <div class=\"d-flex justify-content-center align-items-center w-100 h-100\">\r\n <span>No Upcoming Payments</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"tabs\">\r\n <button class=\"tab d-flex justify-content-center align-items-center active\">Transactions</button>\r\n </div>\r\n <div class=\"transactions\">\r\n <div class=\"transaction-item\" *ngFor=\"let transaction of schemeDetails.paymentData\">\r\n <div class=\"transaction-status paid\"><img\r\n src=\"https://d2z9497xp8xb12.cloudfront.net/prod-images/484102c1753446573473Group 1707484906.png\">\r\n </div>\r\n <div class=\"transaction-details\">\r\n <h4>{{transaction.paymentMonth ? transaction.paymentMonth : 'N/A' }}st Instalment\r\n {{transaction.paymentStatus ? (transaction.paymentStatus != \"PAID\" ? 'Due' : 'Paid') : 'N/A'}}\r\n </h4>\r\n <p>{{transaction.emiChargeDate ? (transaction.emiChargeDate | date : 'shortDate') : 'N/A'}}</p>\r\n </div>\r\n <div class=\"transaction-amount\" *ngIf=\"transaction.paymentStatus === 'PAID';else duePayment\">\r\n {{transaction.paidAmount ? ('\u20B9'+transaction.paidAmount) : 'N/A' }}</div>\r\n <ng-template #duePayment>\r\n <p class=\"underline\">Pay Now</p>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f5f5f5;color:#333}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px;background-color:#fff;border-bottom:1px solid #e0e0e0}.back-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:7px}.header_left h1{font-size:18px;font-weight:600;flex-grow:1;text-align:center;margin:0 16px}.header-actions{display:flex;gap:8px}.share-btn,.download-btn{font-size:16px;cursor:pointer;padding:9px;border:1px solid lightgrey;border-radius:5px}.details_tab{border:1px solid lightgrey;padding:3%;border-radius:7px;width:62%}.amount-card{background:linear-gradient(90deg,#fffbeb,#fff7ed);margin:16px;padding:20px;border-radius:12px}.amount-info{display:flex;align-items:center;gap:16px}.coin-icon{font-size:32px}.amount-details h2{font-size:24px;font-weight:700;color:#333;margin-bottom:4px}.amount-details p{font-size:14px;color:#666}.scheme-details{padding:0 16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title{font-size:18px;font-weight:600}.payment-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid #f1f3f4;border-radius:10px;background:#f9fafb}.payment-info{display:flex;align-items:center;gap:12px}.payment-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.payment-details h4{font-size:14px;font-weight:600;margin:0}.payment-details span{font-size:12px;color:#666}.payment-amount{text-align:right}.quick-actions{background:#fff;padding:20px;border-radius:12px;border:1px solid #e9ecef;margin:12px 0}.quick-actions h3{font-size:16px;font-weight:600;margin-bottom:16px}.action-item{padding:8px;font-size:14px;color:#666;border:1px solid #f1f3f4;border-radius:9px;white-space:nowrap}.upcoming-status{background:#d3d3d3;font-size:12px;padding:6px;border-radius:4px}.amount-value{font-size:16px;font-weight:600;margin-bottom:4px}.section-header h3{font-size:18px;font-weight:600}.redeem-requested{background-color:#fff3e0;color:#e65100;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500}.scheme-info{margin-bottom:24px}.scheme-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.scheme-name .label{font-size:16px;font-weight:600}.scheme-name .redeem-status{background-color:#e8f5e8;color:#2e7d32;padding:4px 12px;border-radius:16px;font-size:12px}.scheme-id{color:#666;font-size:14px}.dates-grid{display:flex;gap:16px;border-top:1px solid lightgrey;justify-content:space-between;padding-top:11px}.date-item{display:flex;align-items:center;gap:8px}.date-icon{font-size:16px}.date-info{display:flex;flex-direction:column}.date-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.date-value{font-size:11px;font-weight:500}.completion-info{display:flex;flex-direction:column;align-items:flex-start;grid-column:span 2}.completion-label{font-size:10px;color:#666;margin-bottom:2px;white-space:nowrap}.completion-value{font-size:11px;font-weight:500}.tabs{display:flex;border-bottom:1px solid #e0e0e0;margin:20px 0;height:5vh;background:#d3d3d3;align-items:center;padding:0 1%;width:fit-content;border-radius:30px}.tab{background:none;border:none;font-size:10px!important;cursor:pointer;border-bottom:2px solid transparent;color:#666;width:6vw!important;height:80%!important}.tab.active{color:#333;border-radius:30px;font-weight:500;background-color:#fff}.transactions{display:flex;flex-direction:column;gap:16px;padding-bottom:20px}.transaction-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid lightgrey;border-radius:8px}.transaction-status{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.underline{text-decoration:underline}.transaction-status img{width:100%}.transaction-status.paid{background-color:#4caf50;color:#fff}.transaction-status.due{background-color:#e0e0e0;border:2px solid #bdbdbd}.transaction-details{flex-grow:1}.transaction-details h4{font-size:14px;font-weight:500;margin-bottom:2px}.transaction-details p{font-size:12px;color:#666}.transaction-amount{font-size:16px;font-weight:600}.pay-now-btn{background-color:#9c27b0;color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer}.pay-now-btn:hover{background-color:#7b1fa2}@media (max-width: 480px){.dates-grid{grid-template-columns:1fr}.completion-info{grid-column:span 1;align-items:flex-start}}.scheme-section{flex-direction:column;gap:1rem}.details_tab{width:100%;border-radius:12px}.section{padding:12px!important;max-height:75vh;overflow-y:scroll}.upcoming-status{display:flex;justify-content:center;align-items:center;height:35px;white-space:nowrap}.payment-details p{font-size:12px}.tab{width:22vw!important}.scheme-details{padding:0}.enrollment-card{width:100%!important}.amount-card{margin:0 0 12px}.amount-card-section{flex-direction:column}.actions{height:70%}.enroll-btn{background:#3a0044;color:#fff;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;margin-top:12px;font-size:12px!important;white-space:nowrap;align-items:center}.enrollment-card{background:#fff;border-radius:12px;padding:0 24px;border:1px solid lightgrey;width:30%}.section{background:#fff;border-radius:12px;padding:24px;margin:24px 0;border:1px solid #e9ecef}.enrollment-row{display:flex;justify-content:space-between;align-items:center;padding:10.5px 0;border-bottom:1px solid #f0f0f0}.enrollment-row:last-child{border-bottom:none}.enrollment-label{color:#666;font-size:14px;font-weight:500}.enrollment-value{color:#333;font-size:14px;font-weight:600}.enrollment-value.highlight{color:#2563eb}.enrollment-value.zero{color:#ef4444}\n"] }]
|
30
48
|
}], ctorParameters: () => [], propDecorators: { schemeDetails: [{
|
31
49
|
type: Input,
|
32
50
|
args: ["schemeDetails"]
|
33
51
|
}], gotoSchemeOverview: [{
|
34
52
|
type: Output
|
53
|
+
}], getScreenSize: [{
|
54
|
+
type: HostListener,
|
55
|
+
args: ['window:resize', ['$event']]
|
35
56
|
}] } });
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1lLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvc2NoZW1lLWRldGFpbHMvc2NoZW1lLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvc2NoZW1lLWRldGFpbHMvc2NoZW1lLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFRL0MsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQztRQURVLHVCQUFrQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBSzVFLGdCQUFXLEdBQU8sRUFBRSxDQUFDO0lBSkwsQ0FBQztJQUNqQixRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUVkLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFO1lBQ3RELElBQUcsT0FBTyxDQUFDLGFBQWEsSUFBSSxNQUFNLEVBQ2xDLENBQUM7Z0JBQ0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDakMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE1BQU07UUFFSixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsQ0FBQzsrR0FwQlUsc0JBQXNCO21HQUF0QixzQkFBc0IsbUxDVm5DLGc3U0F1S00sNHpLRGpLTSxPQUFPLDBJQUFDLFlBQVk7OzRGQUluQixzQkFBc0I7a0JBUGxDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBQyxZQUFZLENBQUM7d0RBS1AsYUFBYTtzQkFBcEMsS0FBSzt1QkFBQyxlQUFlO2dCQUNaLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLXNjaGVtZS1kZXRhaWxzJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtNYXRJY29uLENvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NjaGVtZS1kZXRhaWxzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc2NoZW1lLWRldGFpbHMuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFNjaGVtZURldGFpbHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dChcInNjaGVtZURldGFpbHNcIikgc2NoZW1lRGV0YWlsczogYW55O1xyXG4gIEBPdXRwdXQoKSBnb3RvU2NoZW1lT3ZlcnZpZXc6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5nZXRQYXltZW50U2NoZW1lKCk7XHJcbiAgfVxyXG4gIHBheW1lbnREYXRhOmFueVtdPVtdO1xyXG4gIGdldFBheW1lbnRTY2hlbWUoKVxyXG4gIHtcclxuICAgIHRoaXMuc2NoZW1lRGV0YWlscy5wYXltZW50RGF0YS5mb3JFYWNoKChwYXltZW50OiBhbnkpID0+IHtcclxuICAgICAgaWYocGF5bWVudC5wYXltZW50U3RhdHVzICE9ICdQQUlEJylcclxuICAgICAge1xyXG4gICAgICAgIHRoaXMucGF5bWVudERhdGEucHVzaChwYXltZW50KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGdvQmFjaygpXHJcbiAge1xyXG4gICAgdGhpcy5nb3RvU2NoZW1lT3ZlcnZpZXcuZW1pdCgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDBcIj5cclxuICAgIDwhLS0gSGVhZGVyIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfbGVmdCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWNrLWJ0biBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgKGNsaWNrKT1cImdvQmFjaygpXCI+PG1hdC1pY29uPmtleWJvYXJkX2JhY2tzcGFjZTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aDE+U2NoZW1lIERldGFpbHM8L2gxPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItYWN0aW9ucyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvd25sb2FkLWJ0blwiPjxpbWdcclxuICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzg1MTA0NWMxNzUzNDQ0MjM5NTE1U1ZHLnN2Z1wiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLSBBbW91bnQgQ2FyZCAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidy03NVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW1vdW50LWNhcmRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbW91bnQtaW5mb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2luLWljb25cIj48aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzEzMzk4NGMxNzUzNDQ0NTg5NTcwR3JvdXAgMTcwNzQ4MzYwNi5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW1vdW50LWRldGFpbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGgyPuKCuXt7c2NoZW1lRGV0YWlscz8uc2NoZW1lQW1vdW50ID8gc2NoZW1lRGV0YWlscz8uc2NoZW1lQW1vdW50IDogJ04vQSd9fTwvaDI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRvdGFsIEF2YWlsYWJsZSBTY2hlbWUgQW1vdW50PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGp1c3RpZnktY29udGVudC1hcm91bmRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzX3RhYlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aDM+U2NoZW1lIERldGFpbHM8L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInJlZGVlbS1yZXF1ZXN0ZWRcIj57e3NjaGVtZURldGFpbHM/LmVucm9sbG1lbnRTdGF0dXMgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1lRGV0YWlscz8uZW5yb2xsbWVudFN0YXR1cyA6ICdOL0EnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzY2hlbWUtaW5mb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2NoZW1lLW5hbWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGFiZWxcIj57e3NjaGVtZURldGFpbHM/LnB3Y1NjaGVtZUNvZGUgPyBzY2hlbWVEZXRhaWxzPy5wd2NTY2hlbWVDb2RlIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTi9BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjaGVtZS1pZFwiPuKCuXt7c2NoZW1lRGV0YWlscz8uc2NoZW1lQW1vdW50ID8gc2NoZW1lRGV0YWlscz8uc2NoZW1lQW1vdW50IDogJ04vQSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTW9udGhseTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXMtZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1pY29uXCI+8J+ThTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGUtaW5mb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGF0ZS1sYWJlbFwiPlNjaGVtZSBzdGFydGVkIG9uPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGF0ZS12YWx1ZVwiPnt7c2NoZW1lRGV0YWlscy5jcmVhdGVkVGltZVN0YW1wID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNjaGVtZURldGFpbHMuY3JlYXRlZFRpbWVTdGFtcCB8IGRhdGU6J21lZGl1bURhdGUnKSA6ICdOL0EnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJkYXRlLWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlLWljb25cIj7wn5OFPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1pbmZvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkYXRlLWxhYmVsXCI+U2NoZW1lIGVuZHMgb248L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkYXRlLXZhbHVlXCI+NSBKYW4gMjAyNTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb21wbGV0aW9uLWluZm9cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY29tcGxldGlvbi1sYWJlbFwiPkNvbXBsZXRlZCBFTUlzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb21wbGV0aW9uLXZhbHVlXCI+e3tzY2hlbWVEZXRhaWxzLmR1ZU1vbnRocyA/IHNjaGVtZURldGFpbHMuZHVlTW9udGhzIDogMH19IG91dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mIDEwPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVucm9sbG1lbnQtY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbnJvbGxtZW50LXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVucm9sbG1lbnQtbGFiZWxcIj5Hcm91cCBOYW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVucm9sbG1lbnQtdmFsdWVcIj57e3NjaGVtZURldGFpbHM/LmVucm9sbG1lbnRHcm91cCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2hlbWVEZXRhaWxzPy5lbnJvbGxtZW50R3JvdXAuZ2VuSWQgOidOL0EnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW5yb2xsbWVudC1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlbnJvbGxtZW50LWxhYmVsXCI+R3JvdXAgQ29kZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlbnJvbGxtZW50LXZhbHVlXCI+e3tzY2hlbWVEZXRhaWxzLmVucm9sbG1lbnRHcm91cD8ucHdjR3JvdXBJZCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2hlbWVEZXRhaWxzLmVucm9sbG1lbnRHcm91cC5wd2NHcm91cElkIDogJ04vQScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbnJvbGxtZW50LXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVucm9sbG1lbnQtbGFiZWxcIj5NYXR1cml0eSBEYXRlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVucm9sbG1lbnQtdmFsdWVcIj57e3NjaGVtZURldGFpbHMubWF0dXJpdHlEYXRlID8gKHNjaGVtZURldGFpbHMubWF0dXJpdHlEYXRlIHwgZGF0ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnc2hvcnREYXRlJykgOiAnTi9BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImVucm9sbG1lbnQtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC1sYWJlbFwiPkVucm9sbG1lbnQgSWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC12YWx1ZVwiPnt7c2NoZW1lRGV0YWlscy5lbnJvbGxtZW50SWQgPyBzY2hlbWVEZXRhaWxzLmVucm9sbG1lbnRJZCA6ICdOL0EnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJxdWljay1hY3Rpb25zXCI+XHJcbiAgICAgICAgICAgIDxoMz5RdWljayBBY3Rpb25zPC9oMz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbnMgZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1ldmVubHlcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24taXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1iLTJcIj5NYWtlIER1ZSBQYXltZW50c1xyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWl0ZW0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPkFkZCBOb21pbmVlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWl0ZW0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPkRvd25sb2FkIFNPQTwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJlbnJvbGwtYnRuXCI+PGltZ1xyXG4gICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vZDJ6OTQ5N3hwOHhiMTIuY2xvdWRmcm9udC5uZXQvcHJvZC1pbWFnZXMvNzgyNjczYzE3NTM0MzQzMTE5MDNTVkcgKDEpLnBuZ1wiPiBFbnJvbGxcclxuICAgICAgICAgICAgICAgIE5ldyBTY2hlbWU8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gU2NoZW1lIERldGFpbHMgU2VjdGlvbiAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJzY2hlbWUtZGV0YWlsc1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uIGQtZmxleC1mbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInNlY3Rpb24tdGl0bGVcIj5VcGNvbWluZyBQYXltZW50czwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1saXN0IGQtZmxleCBmbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBheW1lbnREYXRhLmxlbmd0aDtlbHNlIG5vUGF5bWVudHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwYXltZW50IG9mIHNjaGVtZURldGFpbHMucGF5bWVudERhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaXRlbVwiICpuZ0lmPVwicGF5bWVudC5wYXltZW50U3RhdHVzICE9ICdQQUlEJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaW5mb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWljb24gdXBjb21pbmdcIj48aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzY1NTk2OWMxNzUzNDM4Mjg0NTY1QmFja2dyb3VuZC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1kZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND57e3NjaGVtZURldGFpbHM/LnB3Y1NjaGVtZUNvZGUgPyBzY2hlbWVEZXRhaWxzPy5wd2NTY2hlbWVDb2RlIDogJ04vQSd9fTwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkRhdGUge3twYXltZW50Py5wYXltZW50RGF0ZSA/IChwYXltZW50Py5wYXltZW50RGF0ZSB8IGRhdGUgOiAnc2hvcnREYXRlJykgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ04vQSd9fSB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEdWUgYnk6IDIgZGF5czwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtYW1vdW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudC12YWx1ZVwiPuKCuXt7c2NoZW1lRGV0YWlscz8uYW1vdW50VG9CZVBhaWQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2hlbWVEZXRhaWxzPy5hbW91bnRUb0JlUGFpZCA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdOL0EnfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1zdGF0dXMgdXBjb21pbmctc3RhdHVzXCI+UGF5IE5vdzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vUGF5bWVudHM+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciB3LTEwMCBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5ObyBVcGNvbWluZyBQYXltZW50czwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJzXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ0YWIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGFjdGl2ZVwiPlRyYW5zYWN0aW9uczwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbnNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWl0ZW1cIiAqbmdGb3I9XCJsZXQgdHJhbnNhY3Rpb24gb2Ygc2NoZW1lRGV0YWlscy5wYXltZW50RGF0YVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLXN0YXR1cyBwYWlkXCI+PGltZ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzQ4NDEwMmMxNzUzNDQ2NTczNDczR3JvdXAgMTcwNzQ4NDkwNi5wbmdcIj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWRldGFpbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDQ+e3t0cmFuc2FjdGlvbi5wYXltZW50TW9udGggPyB0cmFuc2FjdGlvbi5wYXltZW50TW9udGggOiAnTi9BJyB9fXN0IEluc3RhbG1lbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAge3t0cmFuc2FjdGlvbi5wYXltZW50U3RhdHVzID8gKHRyYW5zYWN0aW9uLnBheW1lbnRTdGF0dXMgIT0gXCJQQUlEXCIgPyAnRHVlJyA6ICdQYWlkJykgOiAnTi9BJ319XHJcbiAgICAgICAgICAgICAgICAgICAgPC9oND5cclxuICAgICAgICAgICAgICAgICAgICA8cD57e3RyYW5zYWN0aW9uLmVtaUNoYXJnZURhdGUgPyAodHJhbnNhY3Rpb24uZW1pQ2hhcmdlRGF0ZSB8IGRhdGUgOiAnc2hvcnREYXRlJykgOiAnTi9BJ319PC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tYW1vdW50XCIgKm5nSWY9XCJ0cmFuc2FjdGlvbi5wYXltZW50U3RhdHVzID09PSAnUEFJRCc7ZWxzZSBkdWVQYXltZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3t0cmFuc2FjdGlvbi5wYWlkQW1vdW50ID8gKCfigrknK3RyYW5zYWN0aW9uLnBhaWRBbW91bnQpIDogJ04vQScgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZHVlUGF5bWVudD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInVuZGVybGluZVwiPlBheSBOb3c8L3A+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1lLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvc2NoZW1lLWRldGFpbHMvc2NoZW1lLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvc2NoZW1lLWRldGFpbHMvc2NoZW1lLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBUS9DLE1BQU0sT0FBTyxzQkFBc0I7SUFHakM7UUFEVSx1QkFBa0IsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQVc1RSxnQkFBVyxHQUFVLEVBQUUsQ0FBQztJQVZSLENBQUM7SUFDakIsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBR0MsYUFBYSxDQUFDLEtBQVc7UUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO0lBQ3ZDLENBQUM7SUFFSCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFZLEVBQUUsRUFBRTtZQUN0RCxJQUFJLE9BQU8sQ0FBQyxhQUFhLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxVQUFVLENBQUMsV0FBMEI7UUFDbkMsSUFBSSxDQUFDLFdBQVc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUU5QixNQUFNLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN0QyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLDZCQUE2QjtRQUVyRSxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBRXpCLHlDQUF5QztRQUN6QyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFM0IsNkRBQTZEO1FBQzdELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDckQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTlELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFDRCxNQUFNO1FBQ0osSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7K0dBekNVLHNCQUFzQjttR0FBdEIsc0JBQXNCLHNQQ1ZuQywrM1NBb0tNLHF4TEQ5Sk0sT0FBTywwSUFBRSxZQUFZOzs0RkFJcEIsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDO3dEQUtSLGFBQWE7c0JBQXBDLEtBQUs7dUJBQUMsZUFBZTtnQkFDWixrQkFBa0I7c0JBQTNCLE1BQU07Z0JBUUwsYUFBYTtzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8tc2NoZW1lLWRldGFpbHMnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdEljb24sIENvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NjaGVtZS1kZXRhaWxzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc2NoZW1lLWRldGFpbHMuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFNjaGVtZURldGFpbHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dChcInNjaGVtZURldGFpbHNcIikgc2NoZW1lRGV0YWlsczogYW55O1xyXG4gIEBPdXRwdXQoKSBnb3RvU2NoZW1lT3ZlcnZpZXc6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5nZXRQYXltZW50U2NoZW1lKCk7XHJcbiAgICB0aGlzLmdldFNjcmVlblNpemUoKTtcclxuICB9XHJcbiAgc2NyZWVuV2lkdGg6YW55O1xyXG4gICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICAgIGdldFNjcmVlblNpemUoZXZlbnQ/OiBhbnkpIHtcclxuICAgICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgfVxyXG4gIHBheW1lbnREYXRhOiBhbnlbXSA9IFtdO1xyXG4gIGdldFBheW1lbnRTY2hlbWUoKSB7XHJcbiAgICB0aGlzLnNjaGVtZURldGFpbHMucGF5bWVudERhdGEuZm9yRWFjaCgocGF5bWVudDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChwYXltZW50LnBheW1lbnRTdGF0dXMgIT0gJ1BBSUQnKSB7XHJcbiAgICAgICAgdGhpcy5wYXltZW50RGF0YS5wdXNoKHBheW1lbnQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgZ2V0RHVlRGF0ZShwYXltZW50RGF0ZTogc3RyaW5nIHwgRGF0ZSk6IG51bWJlciB8IG51bGwge1xyXG4gICAgaWYgKCFwYXltZW50RGF0ZSkgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgY29uc3QgZHVlRGF0ZSA9IG5ldyBEYXRlKHBheW1lbnREYXRlKTtcclxuICAgIGR1ZURhdGUuc2V0RGF0ZShkdWVEYXRlLmdldERhdGUoKSArIDIpOyAvLyBBZGQgMiBkYXlzIHRvIGdldCBkdWUgZGF0ZVxyXG5cclxuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICAvLyBTdHJpcCB0aW1lIGZvciBhY2N1cmF0ZSBkYXkgY29tcGFyaXNvblxyXG4gICAgZHVlRGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcclxuICAgIHRvZGF5LnNldEhvdXJzKDAsIDAsIDAsIDApO1xyXG5cclxuICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGluIG1pbGxpc2Vjb25kcywgdGhlbiBjb252ZXJ0IHRvIGRheXNcclxuICAgIGNvbnN0IGRpZmZUaW1lID0gZHVlRGF0ZS5nZXRUaW1lKCkgLSB0b2RheS5nZXRUaW1lKCk7XHJcbiAgICBjb25zdCBkaWZmRGF5cyA9IE1hdGgucm91bmQoZGlmZlRpbWUgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpO1xyXG5cclxuICAgIHJldHVybiBkaWZmRGF5cztcclxuICB9XHJcbiAgZ29CYWNrKCkge1xyXG4gICAgdGhpcy5nb3RvU2NoZW1lT3ZlcnZpZXcuZW1pdCgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDBcIj5cclxuICAgIDwhLS0gSGVhZGVyIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImhlYWRlclwiICpuZ0lmPVwic2NyZWVuV2lkdGg+NDc1XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9sZWZ0IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhY2stYnRuIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIiAoY2xpY2spPVwiZ29CYWNrKClcIj48bWF0LWljb24+a2V5Ym9hcmRfYmFja3NwYWNlPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxoMT5TY2hlbWUgRGV0YWlsczwvaDE+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8IS0tIEFtb3VudCBDYXJkIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbW91bnQtY2FyZC1zZWN0aW9uXCI+XHJcbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJzY3JlZW5XaWR0aCA+IDQ3NSA/ICd3LTc1JyA6ICd3LTEwMCdcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudC1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW1vdW50LWluZm9cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29pbi1pY29uXCI+PGltZ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9kMno5NDk3eHA4eGIxMi5jbG91ZGZyb250Lm5ldC9wcm9kLWltYWdlcy8xMzM5ODRjMTc1MzQ0NDU4OTU3MEdyb3VwIDE3MDc0ODM2MDYuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudC1kZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMj7igrl7e3NjaGVtZURldGFpbHM/LnNjaGVtZUFtb3VudCA/IHNjaGVtZURldGFpbHM/LnNjaGVtZUFtb3VudCA6ICdOL0EnfX08L2gyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5Ub3RhbCBBdmFpbGFibGUgU2NoZW1lIEFtb3VudDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBqdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIHNjaGVtZS1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsc190YWJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGgzPlNjaGVtZSBEZXRhaWxzPC9oMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJyZWRlZW0tcmVxdWVzdGVkXCI+e3tzY2hlbWVEZXRhaWxzPy5lbnJvbGxtZW50U3RhdHVzID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjaGVtZURldGFpbHM/LmVucm9sbG1lbnRTdGF0dXMgOiAnTi9BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2NoZW1lLWluZm9cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjaGVtZS1uYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxhYmVsXCI+e3tzY2hlbWVEZXRhaWxzPy5wd2NTY2hlbWVDb2RlID8gc2NoZW1lRGV0YWlscz8ucHdjU2NoZW1lQ29kZSA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ04vQSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzY2hlbWUtaWRcIj7igrl7e3NjaGVtZURldGFpbHM/LnNjaGVtZUFtb3VudCA/IHNjaGVtZURldGFpbHM/LnNjaGVtZUFtb3VudCA6ICdOL0EnfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1vbnRobHk8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVzLWdyaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGUtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGUtaWNvblwiPvCfk4U8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlLWluZm9cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRhdGUtbGFiZWxcIj5TY2hlbWUgc3RhcnRlZCBvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRhdGUtdmFsdWVcIj57e3NjaGVtZURldGFpbHMuY3JlYXRlZFRpbWVTdGFtcCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzY2hlbWVEZXRhaWxzLmNyZWF0ZWRUaW1lU3RhbXAgfCBkYXRlOidtZWRpdW1EYXRlJykgOiAnTi9BJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZGF0ZS1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1pY29uXCI+8J+ThTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGUtaW5mb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGF0ZS1sYWJlbFwiPlNjaGVtZSBlbmRzIG9uPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGF0ZS12YWx1ZVwiPjUgSmFuIDIwMjU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29tcGxldGlvbi1pbmZvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvbXBsZXRpb24tbGFiZWxcIj5Db21wbGV0ZWQgRU1Jczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY29tcGxldGlvbi12YWx1ZVwiPnt7c2NoZW1lRGV0YWlscy5kdWVNb250aHMgPyAoMTAtc2NoZW1lRGV0YWlscy5kdWVNb250aHMpIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwfX0gb3V0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2YgMTA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW5yb2xsbWVudC1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVucm9sbG1lbnQtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC1sYWJlbFwiPkdyb3VwIE5hbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC12YWx1ZVwiPnt7c2NoZW1lRGV0YWlscz8uZW5yb2xsbWVudEdyb3VwID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjaGVtZURldGFpbHM/LmVucm9sbG1lbnRHcm91cC5nZW5JZCA6J04vQScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbnJvbGxtZW50LXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVucm9sbG1lbnQtbGFiZWxcIj5Hcm91cCBDb2RlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVucm9sbG1lbnQtdmFsdWVcIj57e3NjaGVtZURldGFpbHMuZW5yb2xsbWVudEdyb3VwPy5wd2NHcm91cElkID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjaGVtZURldGFpbHMuZW5yb2xsbWVudEdyb3VwLnB3Y0dyb3VwSWQgOiAnTi9BJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVucm9sbG1lbnQtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC1sYWJlbFwiPk1hdHVyaXR5IERhdGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC12YWx1ZVwiPnt7c2NoZW1lRGV0YWlscy5tYXR1cml0eURhdGUgPyAoc2NoZW1lRGV0YWlscy5tYXR1cml0eURhdGUgfCBkYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdkZC1NTS15eXl5JykgOiAnTi9BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImVucm9sbG1lbnQtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC1sYWJlbFwiPkVucm9sbG1lbnQgSWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW5yb2xsbWVudC12YWx1ZVwiPnt7c2NoZW1lRGV0YWlscy5lbnJvbGxtZW50SWQgPyBzY2hlbWVEZXRhaWxzLmVucm9sbG1lbnRJZCA6ICdOL0EnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJxdWljay1hY3Rpb25zXCI+XHJcbiAgICAgICAgICAgIDxoMz5RdWljayBBY3Rpb25zPC9oMz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbnMgZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1ldmVubHlcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24taXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1iLTJcIj5NYWtlIER1ZSBQYXltZW50c1xyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWl0ZW0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPkFkZCBOb21pbmVlPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWl0ZW0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPkRvd25sb2FkIFNPQTwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJlbnJvbGwtYnRuXCI+PGltZ1xyXG4gICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vZDJ6OTQ5N3hwOHhiMTIuY2xvdWRmcm9udC5uZXQvcHJvZC1pbWFnZXMvNzgyNjczYzE3NTM0MzQzMTE5MDNTVkcgKDEpLnBuZ1wiPiBFbnJvbGxcclxuICAgICAgICAgICAgICAgIE5ldyBTY2hlbWU8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gU2NoZW1lIERldGFpbHMgU2VjdGlvbiAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJzY2hlbWUtZGV0YWlsc1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uIGQtZmxleC1mbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInNlY3Rpb24tdGl0bGVcIj5VcGNvbWluZyBQYXltZW50czwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1saXN0IGQtZmxleCBmbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBheW1lbnREYXRhLmxlbmd0aDtlbHNlIG5vUGF5bWVudHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwYXltZW50IG9mIHNjaGVtZURldGFpbHMucGF5bWVudERhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaXRlbVwiICpuZ0lmPVwicGF5bWVudC5wYXltZW50U3RhdHVzICE9ICdQQUlEJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaW5mb1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWljb24gdXBjb21pbmdcIj48aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzY1NTk2OWMxNzUzNDM4Mjg0NTY1QmFja2dyb3VuZC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1kZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND57e3NjaGVtZURldGFpbHM/LnB3Y1NjaGVtZUNvZGUgPyBzY2hlbWVEZXRhaWxzPy5wd2NTY2hlbWVDb2RlIDogJ04vQSd9fTwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkRhdGUge3twYXltZW50Py5wYXltZW50RGF0ZSA/IChwYXltZW50Py5wYXltZW50RGF0ZSB8IGRhdGUgOiAnc2hvcnREYXRlJykgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ04vQSd9fSB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEdWUgYnk6IHt7Z2V0RHVlRGF0ZShwYXltZW50Py5wYXltZW50RGF0ZSl9fSBkYXlzPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1hbW91bnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW1vdW50LXZhbHVlXCIgKm5nSWY9XCJwYXltZW50Py5hbW91bnRUb0JlUGFpZFwiPuKCuXt7cGF5bWVudD8uYW1vdW50VG9CZVBhaWQgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXltZW50LmFtb3VudFRvQmVQYWlkIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ04vQSd9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LXN0YXR1cyB1cGNvbWluZy1zdGF0dXNcIj5QYXkgTm93PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9QYXltZW50cz5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIHctMTAwIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPk5vIFVwY29taW5nIFBheW1lbnRzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRhYnNcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInRhYiBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgYWN0aXZlXCI+VHJhbnNhY3Rpb25zPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taXRlbVwiICpuZ0Zvcj1cImxldCB0cmFuc2FjdGlvbiBvZiBzY2hlbWVEZXRhaWxzLnBheW1lbnREYXRhXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tc3RhdHVzIHBhaWRcIj48aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vZDJ6OTQ5N3hwOHhiMTIuY2xvdWRmcm9udC5uZXQvcHJvZC1pbWFnZXMvNDg0MTAyYzE3NTM0NDY1NzM0NzNHcm91cCAxNzA3NDg0OTA2LnBuZ1wiPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZGV0YWlsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoND57e3RyYW5zYWN0aW9uLnBheW1lbnRNb250aCA/IHRyYW5zYWN0aW9uLnBheW1lbnRNb250aCA6ICdOL0EnIH19c3QgSW5zdGFsbWVudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e3RyYW5zYWN0aW9uLnBheW1lbnRTdGF0dXMgPyAodHJhbnNhY3Rpb24ucGF5bWVudFN0YXR1cyAhPSBcIlBBSURcIiA/ICdEdWUnIDogJ1BhaWQnKSA6ICdOL0EnfX1cclxuICAgICAgICAgICAgICAgICAgICA8L2g0PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPnt7dHJhbnNhY3Rpb24uZW1pQ2hhcmdlRGF0ZSA/ICh0cmFuc2FjdGlvbi5lbWlDaGFyZ2VEYXRlIHwgZGF0ZSA6ICdzaG9ydERhdGUnKSA6ICdOL0EnfX08L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1hbW91bnRcIiAqbmdJZj1cInRyYW5zYWN0aW9uLnBheW1lbnRTdGF0dXMgPT09ICdQQUlEJztlbHNlIGR1ZVBheW1lbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICB7e3RyYW5zYWN0aW9uLnBhaWRBbW91bnQgPyAoJ+KCuScrdHJhbnNhY3Rpb24ucGFpZEFtb3VudCkgOiAnTi9BJyB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkdWVQYXltZW50PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidW5kZXJsaW5lXCI+UGF5IE5vdzwvcD5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
@@ -18,7 +18,6 @@ export class SchemeSelectionComponent {
|
|
18
18
|
getAllRedemptionSchemes() {
|
19
19
|
this.restService.getAllRedemptionSchemes().subscribe((res) => {
|
20
20
|
this.redemptionData = res?.data || [];
|
21
|
-
console.log('Redemption Schemes:', res);
|
22
21
|
});
|
23
22
|
}
|
24
23
|
onRadioChange() {
|
@@ -34,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
34
33
|
type: Component,
|
35
34
|
args: [{ selector: 'simpo-scheme-selection', standalone: true, imports: [CommonModule, MatIcon, MatIconModule], template: "<div class=\"overlay-screen w-100 h-100 d-flex justify-content-center align-items-center\">\r\n <div class=\"main_page h-75\">\r\n <div class=\"modal-header\">\r\n <h2>Select Scheme for Redemption</h2>\r\n <div class=\"close-btn cursor-pointer\" (click)=\"goBack()\"><mat-icon>close</mat-icon></div>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"scheme-option\">\r\n <label for=\"individual\" class=\"scheme-card\">\r\n <div class=\"scheme-info d-flex gap-1\">\r\n <div class=\"form-check-radio\">\r\n <input class=\"form-check-input-radio\" type=\"radio\" name=\"flexRadioDefault\"\r\n id=\"flexRadioDefault2\" (change)=\"onRadioChange()\">\r\n </div>\r\n <div class=\"\">\r\n <div class=\"scheme-title\">Individual Investment Scheme</div>\r\n <div class=\"scheme-details\">\r\n <span class=\"scheme-id\">GPP Id: {{redemptionData.GPPId}}</span>\r\n <span class=\"scheme-maturity\">Maturity Date: 12 April 2024</span>\r\n </div>\r\n <div class=\"scheme-amount\">\u20B9{{redemptionData.amount}}</div>\r\n </div>\r\n </div>\r\n <div class=\"scheme-monthly\">\u20B98000/M</div>\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"modal-footer gap-3\">\r\n <div class=\"redemption-summary gap-2\">\r\n <span class=\"redemption-label\">Redemption Amount</span>\r\n <span class=\"redemption-value\">\u20B9{{selectedAmount ? selectedAmount : 0}}</span>\r\n </div>\r\n <div class=\"action-btns d-flex w-100 gap-2\"> <button class=\"cancel-btn\">Cancel</button>\r\n <button class=\"apply-btn\" (click)=\"applyRedmption()\">Apply Redemption</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.main_page{background:#fff;z-index:100!important;padding:3%;box-shadow:#0000001a 0 4px 12px;overflow-y:hidden;width:35vw}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:14px;font-weight:600;color:#111827;margin:0}.close-btn mat-icon{font-size:20px}.modal-body{padding:24px 24px 0;height:46vh;overflow-y:scroll}.scheme-option{margin-bottom:16px}.scheme-option input[type=radio]:checked+.scheme-card{border-color:#06b6d4;background:#f0f9ff;position:relative}.scheme-option input[type=radio]:checked+.scheme-card:before{content:\"\";position:absolute;top:20px;left:20px;width:20px;height:20px;border:2px solid #06b6d4;border-radius:50%;background:#fff}.scheme-option input[type=radio]:checked+.scheme-card:after{content:\"\";position:absolute;top:26px;left:26px;width:8px;height:8px;background:#06b6d4;border-radius:50%}.scheme-card{display:flex;justify-content:space-between;align-items:center;padding:20px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;background:#fff}.scheme-card:hover{border-color:#d1d5db;background:#f9fafb}.form-check-radio{width:10%}.scheme-title{font-size:12px;font-weight:600;color:#111827;margin-bottom:8px}.scheme-details{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.scheme-details span{font-size:12px}.scheme-monthly{font-size:14px;font-weight:600;color:#111827;min-width:100px;text-align:right}.modal-footer{display:flex;border-top:1px solid #e5e7eb;padding-top:1%}.redemption-summary{display:flex;justify-content:flex-start;align-items:center;width:100%}.redemption-label{font-size:16px;color:#374151}.redemption-value{font-size:20px;font-weight:700;color:#059669}.cancel-btn,.apply-btn{border:none;border-radius:6px;font-size:12px!important;padding:1%;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-btn{background:#fff;color:#374151;border:1px solid #d1d5db}.cancel-btn:hover{background:#f9fafb;border-color:#9ca3af}.apply-btn{background:#06b6d4;color:#fff}.apply-btn:hover{background:#0891b2}.redemption-summary span{font-size:12px;font-weight:700}.scheme-id,.scheme-maturity{font-size:14px;color:#6b7280}.scheme-amount{font-size:14px;font-weight:700;color:#06b6d4}\n"] }]
|
36
35
|
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: i2.RestService }] });
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1lLXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2Vjb21tZXJjZS9zZWN0aW9ucy9zY2hlbWUtc2VsZWN0aW9uL3NjaGVtZS1zZWxlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvc2NoZW1lLXNlbGVjdGlvbi9zY2hlbWUtc2VsZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUU1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBU2hFLE1BQU0sT0FBTyx3QkFBd0I7SUFDbkMsWUFDUyxTQUFpRCxFQUN2QyxXQUF3QjtRQURsQyxjQUFTLEdBQVQsU0FBUyxDQUF3QztRQUN2QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUN2QyxDQUFDO0lBQ0wsUUFBUTtRQUNOLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFDRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBR0QsdUJBQXVCO1FBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFPLEVBQUMsRUFBRTtZQUM5RCxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUNELGFBQWE7UUFFWCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBQ0QsY0FBYztRQUVaLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7K0dBekJVLHdCQUF3QjttR0FBeEIsd0JBQXdCLGtGQ1pyQyw2b0VBc0NNLDh6RUQ5Qk0sWUFBWSwrQkFBRSxPQUFPLDBJQUFFLGFBQWE7OzRGQUluQyx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0Usd0JBQXdCLGNBQ3RCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE1hdEljb24sIE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLXNjaGVtZS1zZWxlY3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0SWNvbiwgTWF0SWNvbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NjaGVtZS1zZWxlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9zY2hlbWUtc2VsZWN0aW9uLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY2hlbWVTZWxlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFNjaGVtZVNlbGVjdGlvbkNvbXBvbmVudD4sXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZVxyXG4gICkgeyB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdldEFsbFJlZGVtcHRpb25TY2hlbWVzKCk7XHJcbiAgfVxyXG4gIGdvQmFjaygpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG4gIHJlZGVtcHRpb25EYXRhOmFueTtcclxuICBzZWxlY3RlZEFtb3VudDphbnk7XHJcbiAgZ2V0QWxsUmVkZW1wdGlvblNjaGVtZXMoKSB7XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldEFsbFJlZGVtcHRpb25TY2hlbWVzKCkuc3Vic2NyaWJlKChyZXM6YW55KT0+e1xyXG4gICAgICB0aGlzLnJlZGVtcHRpb25EYXRhID0gcmVzPy5kYXRhIHx8IFtdO1xyXG4gICAgfSlcclxuICB9XHJcbiAgb25SYWRpb0NoYW5nZSgpXHJcbiAge1xyXG4gICAgdGhpcy5zZWxlY3RlZEFtb3VudCA9IHRoaXMucmVkZW1wdGlvbkRhdGE/LmFtb3VudCB8fCAwO1xyXG4gIH1cclxuICBhcHBseVJlZG1wdGlvbigpXHJcbiAge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uoe3JlZG1wZXRpb25EYXRhOiB0aGlzLnJlZGVtcHRpb25EYXRhLCBzZWxlY3RlZEFtb3VudDogdGhpcy5zZWxlY3RlZEFtb3VudH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwib3ZlcmxheS1zY3JlZW4gdy0xMDAgaC0xMDAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWFpbl9wYWdlIGgtNzVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxoMj5TZWxlY3QgU2NoZW1lIGZvciBSZWRlbXB0aW9uPC9oMj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsb3NlLWJ0biBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJnb0JhY2soKVwiPjxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzY2hlbWUtb3B0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiaW5kaXZpZHVhbFwiIGNsYXNzPVwic2NoZW1lLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2NoZW1lLWluZm8gZC1mbGV4IGdhcC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrLXJhZGlvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0LXJhZGlvXCIgdHlwZT1cInJhZGlvXCIgbmFtZT1cImZsZXhSYWRpb0RlZmF1bHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiZmxleFJhZGlvRGVmYXVsdDJcIiAoY2hhbmdlKT1cIm9uUmFkaW9DaGFuZ2UoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjaGVtZS10aXRsZVwiPkluZGl2aWR1YWwgSW52ZXN0bWVudCBTY2hlbWU8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzY2hlbWUtZGV0YWlsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2NoZW1lLWlkXCI+R1BQIElkOiB7e3JlZGVtcHRpb25EYXRhLkdQUElkfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzY2hlbWUtbWF0dXJpdHlcIj5NYXR1cml0eSBEYXRlOiAxMiBBcHJpbCAyMDI0PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2NoZW1lLWFtb3VudFwiPuKCuXt7cmVkZW1wdGlvbkRhdGEuYW1vdW50fX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjaGVtZS1tb250aGx5XCI+4oK5ODAwMC9NPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyIGdhcC0zXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyZWRlbXB0aW9uLXN1bW1hcnkgZ2FwLTJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicmVkZW1wdGlvbi1sYWJlbFwiPlJlZGVtcHRpb24gQW1vdW50PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJyZWRlbXB0aW9uLXZhbHVlXCI+4oK5e3tzZWxlY3RlZEFtb3VudCA/IHNlbGVjdGVkQW1vdW50IDogMH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1idG5zIGQtZmxleCB3LTEwMCBnYXAtMlwiPiA8YnV0dG9uIGNsYXNzPVwiY2FuY2VsLWJ0blwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFwcGx5LWJ0blwiIChjbGljayk9XCJhcHBseVJlZG1wdGlvbigpXCI+QXBwbHkgUmVkZW1wdGlvbjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|