ecabs-components 1.1.46 → 1.1.48

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/README.md CHANGED
@@ -106,3 +106,5 @@ To get more help on the Angular CLI use `ng help` or go check out the [Angular C
106
106
  - **v1.1.44** — Fixed issue Apply button is still active when only the DateFrom is selected
107
107
  - **v1.1.45** — Added default validation of date range
108
108
  - **v1.1.46** — Add `ViewChild` reference for `MatRadioGroup` and update event type in `EcabsRadioButtonListComponent`.
109
+ - **v1.1.47** — Add `Title` and `dynamic` content support to `EcabsEmptyPlaceholderComponent`.
110
+ - **v1.1.48** — Implement `EcabsPlaceAutocompleteV2Component` to support waypoints history, query change handling, and dropdown suggestions display.
@@ -0,0 +1,26 @@
1
+ export const WAYPOINT_SUGGESTIONS = [
2
+ {
3
+ suggestion_id: '123',
4
+ additional_info: 'Fastlane Ltd.',
5
+ location: { lat: 35.9038623, lng: 14.4129533 },
6
+ place_id: 'ChIJk9v0xtlRDhMRhrtrt2ChIic',
7
+ source: 'history',
8
+ },
9
+ ];
10
+ export const WAYPOINT_SUGGESTIONS2 = [
11
+ {
12
+ suggestion_id: '1234',
13
+ additional_info: 'Fastlane Ltd. 2000',
14
+ location: { lat: 35.9038623, lng: 14.4129533 },
15
+ place_id: 'ChIJk9v0xtlRDhMRhrtrt2ChIic',
16
+ source: 'history',
17
+ },
18
+ {
19
+ suggestion_id: '1234',
20
+ additional_info: '448 D’Argens Garden, Leyland, Sliema, Malta',
21
+ location: { lat: 35.9095011, lng: 14.4945982 },
22
+ place_id: 'ChIJk9v0xtlRDhMRhrtrt2ChIic',
23
+ source: 'history',
24
+ },
25
+ ];
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F5cG9pbnQubW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2Jhc2UvbW9kZWxzL3dheXBvaW50Lm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQkEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQXlCO0lBQ3hEO1FBQ0UsYUFBYSxFQUFFLEtBQUs7UUFDcEIsZUFBZSxFQUFFLGVBQWU7UUFDaEMsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFO1FBQzlDLFFBQVEsRUFBRSw2QkFBNkI7UUFDdkMsTUFBTSxFQUFFLFNBQVM7S0FDbEI7Q0FDRixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQXlCO0lBQ3pEO1FBQ0UsYUFBYSxFQUFFLE1BQU07UUFDckIsZUFBZSxFQUFFLG9CQUFvQjtRQUNyQyxRQUFRLEVBQUUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUU7UUFDOUMsUUFBUSxFQUFFLDZCQUE2QjtRQUN2QyxNQUFNLEVBQUUsU0FBUztLQUNsQjtJQUNEO1FBQ0UsYUFBYSxFQUFFLE1BQU07UUFDckIsZUFBZSxFQUFFLDZDQUE2QztRQUM5RCxRQUFRLEVBQUUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUU7UUFDOUMsUUFBUSxFQUFFLDZCQUE2QjtRQUN2QyxNQUFNLEVBQUUsU0FBUztLQUNsQjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUGxhY2VSZXN1bHQgPSBnb29nbGUubWFwcy5wbGFjZXMuUGxhY2VSZXN1bHQ7XHJcbmltcG9ydCB7IFdheXBvaW50VHlwZUVudW0gfSBmcm9tICcuLi9jb25zdHMvd2F5cG9pbnQuY29uc3RzJztcclxuaW1wb3J0IFByZWRpY3Rpb25UZXJtID0gZ29vZ2xlLm1hcHMucGxhY2VzLlByZWRpY3Rpb25UZXJtO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBXYXlwb2ludFN1Z2dlc3Rpb24ge1xyXG4gIHN1Z2dlc3Rpb25faWQ/OiBzdHJpbmc7XHJcbiAgYWRkaXRpb25hbF9pbmZvPzogc3RyaW5nO1xyXG4gIGxvY2F0aW9uPzogR2VvUG9pbnQ7XHJcbiAgcGxhY2VfaWQ6IHN0cmluZztcclxuICBzb3VyY2U/OiBzdHJpbmc7XHJcbiAgZnJlcXVlbmN5PzogbnVtYmVyO1xyXG4gIGxhc3RfdmlzaXQ/OiBzdHJpbmcgfCBEYXRlO1xyXG4gIGdlb19rZXk/OiBzdHJpbmc7XHJcbiAgcHJlZGljdGlvbl90ZXJtPzogUHJlZGljdGlvblRlcm1bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZW9Qb2ludCB7XHJcbiAgbGF0OiBudW1iZXI7XHJcbiAgbG5nOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgR29vZ2xlUGxhY2VSZXN1bHQge1xyXG4gIHBsYWNlOiBQbGFjZVJlc3VsdDtcclxuICB0ZXh0OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgV2F5cG9pbnRRdWVyeUNoYW5nZSB7XHJcbiAgd2F5cG9pbnRfdHlwZTogV2F5cG9pbnRUeXBlRW51bTtcclxuICBxdWVyeTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgV0FZUE9JTlRfU1VHR0VTVElPTlM6IFdheXBvaW50U3VnZ2VzdGlvbltdID0gW1xyXG4gIHtcclxuICAgIHN1Z2dlc3Rpb25faWQ6ICcxMjMnLFxyXG4gICAgYWRkaXRpb25hbF9pbmZvOiAnRmFzdGxhbmUgTHRkLicsXHJcbiAgICBsb2NhdGlvbjogeyBsYXQ6IDM1LjkwMzg2MjMsIGxuZzogMTQuNDEyOTUzMyB9LFxyXG4gICAgcGxhY2VfaWQ6ICdDaElKazl2MHh0bFJEaE1SaHJ0cnQyQ2hJaWMnLFxyXG4gICAgc291cmNlOiAnaGlzdG9yeScsXHJcbiAgfSxcclxuXTtcclxuXHJcbmV4cG9ydCBjb25zdCBXQVlQT0lOVF9TVUdHRVNUSU9OUzI6IFdheXBvaW50U3VnZ2VzdGlvbltdID0gW1xyXG4gIHtcclxuICAgIHN1Z2dlc3Rpb25faWQ6ICcxMjM0JyxcclxuICAgIGFkZGl0aW9uYWxfaW5mbzogJ0Zhc3RsYW5lIEx0ZC4gMjAwMCcsXHJcbiAgICBsb2NhdGlvbjogeyBsYXQ6IDM1LjkwMzg2MjMsIGxuZzogMTQuNDEyOTUzMyB9LFxyXG4gICAgcGxhY2VfaWQ6ICdDaElKazl2MHh0bFJEaE1SaHJ0cnQyQ2hJaWMnLFxyXG4gICAgc291cmNlOiAnaGlzdG9yeScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzdWdnZXN0aW9uX2lkOiAnMTIzNCcsXHJcbiAgICBhZGRpdGlvbmFsX2luZm86ICc0NDggROKAmUFyZ2VucyBHYXJkZW4sIExleWxhbmQsIFNsaWVtYSwgTWFsdGEnLFxyXG4gICAgbG9jYXRpb246IHsgbGF0OiAzNS45MDk1MDExLCBsbmc6IDE0LjQ5NDU5ODIgfSxcclxuICAgIHBsYWNlX2lkOiAnQ2hJSms5djB4dGxSRGhNUmhydHJ0MkNoSWljJyxcclxuICAgIHNvdXJjZTogJ2hpc3RvcnknLFxyXG4gIH0sXHJcbl07XHJcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SeparatorAppendPipe {
4
+ transform(value, nextSibling, separator = ', ') {
5
+ return value && nextSibling ? `${value}${separator}` : value;
6
+ }
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SeparatorAppendPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
8
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SeparatorAppendPipe, isStandalone: true, name: "separatorAppend" });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SeparatorAppendPipe, decorators: [{
11
+ type: Pipe,
12
+ args: [{
13
+ name: 'separatorAppend',
14
+ standalone: true,
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VwYXJhdG9yLWFwcGVuZC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2Jhc2UvcGlwZXMvc2VwYXJhdG9yLWFwcGVuZC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsV0FBb0IsRUFBRSxTQUFTLEdBQUcsSUFBSTtRQUM3RCxPQUFPLEtBQUssSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxHQUFHLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDL0QsQ0FBQzt3R0FIVSxtQkFBbUI7c0dBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsaUJBQWlCO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NlcGFyYXRvckFwcGVuZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlcGFyYXRvckFwcGVuZFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgbmV4dFNpYmxpbmc/OiBzdHJpbmcsIHNlcGFyYXRvciA9ICcsICcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHZhbHVlICYmIG5leHRTaWJsaW5nID8gYCR7dmFsdWV9JHtzZXBhcmF0b3J9YCA6IHZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -88,7 +88,7 @@ export class EcabsCheckboxToggleComponent extends EcabsElementBaseComponent {
88
88
  useExisting: EcabsCheckboxToggleComponent,
89
89
  multi: true,
90
90
  },
91
- ], viewQueries: [{ propertyName: "matCheckbox", first: true, predicate: MatCheckbox, descendants: true }, { propertyName: "matSlideToggle", first: true, predicate: MatSlideToggle, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea{color:var(--color-error);border-color:var(--color-error)}.form-field__validation,form-field__validation{padding-top:.5rem;font-size:12px;font-size:.75rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field.disabled input,.form-field.disabled textarea,form-field.disabled input,form-field.disabled textarea{background-color:var(--color-white-opacity-05);border-color:var(--color-gray-300)}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
91
+ ], viewQueries: [{ propertyName: "matCheckbox", first: true, predicate: MatCheckbox, descendants: true }, { propertyName: "matSlideToggle", first: true, predicate: MatSlideToggle, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea{color:var(--color-error);border-color:var(--color-error)}.form-field__validation,form-field__validation{padding-top:.5rem;font-size:12px;font-size:.75rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field.disabled input,.form-field.disabled textarea,form-field.disabled input,form-field.disabled textarea{background-color:var(--color-white-opacity-05);border-color:var(--color-gray-300)}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
92
92
  }
93
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckboxToggleComponent, decorators: [{
94
94
  type: Component,
@@ -98,7 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
98
98
  useExisting: EcabsCheckboxToggleComponent,
99
99
  multi: true,
100
100
  },
101
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea{color:var(--color-error);border-color:var(--color-error)}.form-field__validation,form-field__validation{padding-top:.5rem;font-size:12px;font-size:.75rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field.disabled input,.form-field.disabled textarea,form-field.disabled input,form-field.disabled textarea{background-color:var(--color-white-opacity-05);border-color:var(--color-gray-300)}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}\n"] }]
101
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:.25rem;border:1px solid var(--color-gray-500);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-500);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);border-color:transparent}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea{color:var(--color-error);border-color:var(--color-error)}.form-field__validation,form-field__validation{padding-top:.5rem;font-size:12px;font-size:.75rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field.disabled input,.form-field.disabled textarea,form-field.disabled input,form-field.disabled textarea{background-color:var(--color-white-opacity-05);border-color:var(--color-gray-300)}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}\n"] }]
102
102
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.DestroyRef }]; }, propDecorators: { matCheckbox: [{
103
103
  type: ViewChild,
104
104
  args: [MatCheckbox, { static: false }]
@@ -4,6 +4,7 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "@angular/router";
6
6
  export class EcabsEmptyPlaceholderComponent {
7
+ title;
7
8
  isEmptyMessage;
8
9
  redirectPath;
9
10
  srcImage;
@@ -15,16 +16,18 @@ export class EcabsEmptyPlaceholderComponent {
15
16
  }
16
17
  }
17
18
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsEmptyPlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsEmptyPlaceholderComponent, selector: "ecabs-empty-placeholder", inputs: { isEmptyMessage: "isEmptyMessage", redirectPath: "redirectPath", srcImage: "srcImage" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"w-full flex flex-col items-center justify-items-center\">\r\n <img class=\"mt-10 w-60\" [src]=\"image\" alt=\"\" />\r\n\r\n <span class=\"heading--sm text-gray-400 my-2\">{{ isEmptyMessage }}</span>\r\n\r\n <a *ngIf=\"redirectPath\" [routerLink]=\"redirectPath?.path && [redirectPath.path]\" class=\"text-sm\">\r\n {{ redirectPath.title }}\r\n </a>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsEmptyPlaceholderComponent, selector: "ecabs-empty-placeholder", inputs: { title: "title", isEmptyMessage: "isEmptyMessage", redirectPath: "redirectPath", srcImage: "srcImage" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"w-full flex flex-col items-center justify-items-center text-center\">\r\n <img class=\"mt-10 w-60\" [src]=\"image\" alt=\"\" />\r\n\r\n <ng-container *ngIf=\"title\">\r\n <p class=\"text-[20px] font-bold leading-7 text-black mb-1\">{{ title }}</p>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"isEmptyMessage\">\r\n <p class=\"text-gray-400 mt-1 mb-4\">{{ isEmptyMessage }}</p>\r\n </ng-container>\r\n\r\n <ng-content></ng-content>\r\n\r\n <a *ngIf=\"redirectPath\" [routerLink]=\"redirectPath?.path && [redirectPath.path]\" class=\"text-sm mt-2\">\r\n {{ redirectPath.title }}\r\n </a>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
19
20
  }
20
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsEmptyPlaceholderComponent, decorators: [{
21
22
  type: Component,
22
- args: [{ selector: 'ecabs-empty-placeholder', template: "<div class=\"w-full flex flex-col items-center justify-items-center\">\r\n <img class=\"mt-10 w-60\" [src]=\"image\" alt=\"\" />\r\n\r\n <span class=\"heading--sm text-gray-400 my-2\">{{ isEmptyMessage }}</span>\r\n\r\n <a *ngIf=\"redirectPath\" [routerLink]=\"redirectPath?.path && [redirectPath.path]\" class=\"text-sm\">\r\n {{ redirectPath.title }}\r\n </a>\r\n</div>\r\n" }]
23
- }], propDecorators: { isEmptyMessage: [{
23
+ args: [{ selector: 'ecabs-empty-placeholder', template: "<div class=\"w-full flex flex-col items-center justify-items-center text-center\">\r\n <img class=\"mt-10 w-60\" [src]=\"image\" alt=\"\" />\r\n\r\n <ng-container *ngIf=\"title\">\r\n <p class=\"text-[20px] font-bold leading-7 text-black mb-1\">{{ title }}</p>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"isEmptyMessage\">\r\n <p class=\"text-gray-400 mt-1 mb-4\">{{ isEmptyMessage }}</p>\r\n </ng-container>\r\n\r\n <ng-content></ng-content>\r\n\r\n <a *ngIf=\"redirectPath\" [routerLink]=\"redirectPath?.path && [redirectPath.path]\" class=\"text-sm mt-2\">\r\n {{ redirectPath.title }}\r\n </a>\r\n</div>\r\n" }]
24
+ }], propDecorators: { title: [{
25
+ type: Input
26
+ }], isEmptyMessage: [{
24
27
  type: Input
25
28
  }], redirectPath: [{
26
29
  type: Input
27
30
  }], srcImage: [{
28
31
  type: Input
29
32
  }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtZW1wdHktcGxhY2Vob2xkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyL2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1lbXB0eS1wbGFjZWhvbGRlci9lY2Ficy1lbXB0eS1wbGFjZWhvbGRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFZbkUsTUFBTSxPQUFPLDhCQUE4QjtJQUV6QyxjQUFjLENBQVM7SUFHdkIsWUFBWSxDQUEwQjtJQUd0QyxRQUFRLENBQVM7SUFFakIsS0FBSyxDQUFTO0lBRWQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRW5DLElBQUksUUFBUSxFQUFFLFlBQVksS0FBSyxTQUFTLElBQUksSUFBSSxFQUFFO1lBQ2hELElBQUksQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLENBQUM7U0FDbEM7SUFDSCxDQUFDO3dHQWxCVSw4QkFBOEI7NEZBQTlCLDhCQUE4QixzTENiM0MsZ1lBU0E7OzRGRElhLDhCQUE4QjtrQkFMMUMsU0FBUzsrQkFDRSx5QkFBeUI7OEJBTW5DLGNBQWM7c0JBRGIsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHNyY05vdGhpbmdIZXJlSW1hZ2UgfSBmcm9tICcuLi9iYXNlL2NvbnN0cy9pbWFnZXMuY29uc3RzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGxhY2Vob2xkZXJSZWRpcmVjdFBhdGgge1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgcGF0aDogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtZW1wdHktcGxhY2Vob2xkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic0VtcHR5UGxhY2Vob2xkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpXHJcbiAgaXNFbXB0eU1lc3NhZ2U6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICByZWRpcmVjdFBhdGg6IFBsYWNlaG9sZGVyUmVkaXJlY3RQYXRoO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNyY0ltYWdlOiBzdHJpbmc7XHJcblxyXG4gIGltYWdlOiBzdHJpbmc7XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgc3JjSW1hZ2UgfSA9IGNoYW5nZXMgPz8ge307XHJcblxyXG4gICAgaWYgKHNyY0ltYWdlPy5jdXJyZW50VmFsdWUgPT09IHVuZGVmaW5lZCB8fCBudWxsKSB7XHJcbiAgICAgIHRoaXMuaW1hZ2UgPSBzcmNOb3RoaW5nSGVyZUltYWdlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidy1mdWxsIGZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGp1c3RpZnktaXRlbXMtY2VudGVyXCI+XHJcbiAgPGltZyBjbGFzcz1cIm10LTEwIHctNjBcIiBbc3JjXT1cImltYWdlXCIgYWx0PVwiXCIgLz5cclxuXHJcbiAgPHNwYW4gY2xhc3M9XCJoZWFkaW5nLS1zbSB0ZXh0LWdyYXktNDAwIG15LTJcIj57eyBpc0VtcHR5TWVzc2FnZSB9fTwvc3Bhbj5cclxuXHJcbiAgPGEgKm5nSWY9XCJyZWRpcmVjdFBhdGhcIiBbcm91dGVyTGlua109XCJyZWRpcmVjdFBhdGg/LnBhdGggJiYgW3JlZGlyZWN0UGF0aC5wYXRoXVwiIGNsYXNzPVwidGV4dC1zbVwiPlxyXG4gICAge3sgcmVkaXJlY3RQYXRoLnRpdGxlIH19XHJcbiAgPC9hPlxyXG48L2Rpdj5cclxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtZW1wdHktcGxhY2Vob2xkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyL2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1lbXB0eS1wbGFjZWhvbGRlci9lY2Ficy1lbXB0eS1wbGFjZWhvbGRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFZbkUsTUFBTSxPQUFPLDhCQUE4QjtJQUNoQyxLQUFLLENBQVU7SUFFZixjQUFjLENBQVM7SUFFdkIsWUFBWSxDQUEwQjtJQUV0QyxRQUFRLENBQVM7SUFFMUIsS0FBSyxDQUFTO0lBRWQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRW5DLElBQUksUUFBUSxFQUFFLFlBQVksS0FBSyxTQUFTLElBQUksSUFBSSxFQUFFO1lBQ2hELElBQUksQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLENBQUM7U0FDbEM7SUFDSCxDQUFDO3dHQWpCVSw4QkFBOEI7NEZBQTlCLDhCQUE4QixzTUNiM0MsNG5CQWlCQTs7NEZESmEsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNFLHlCQUF5Qjs4QkFLMUIsS0FBSztzQkFBYixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHNyY05vdGhpbmdIZXJlSW1hZ2UgfSBmcm9tICcuLi9iYXNlL2NvbnN0cy9pbWFnZXMuY29uc3RzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGxhY2Vob2xkZXJSZWRpcmVjdFBhdGgge1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgcGF0aDogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtZW1wdHktcGxhY2Vob2xkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWVtcHR5LXBsYWNlaG9sZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic0VtcHR5UGxhY2Vob2xkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBpc0VtcHR5TWVzc2FnZTogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSByZWRpcmVjdFBhdGg6IFBsYWNlaG9sZGVyUmVkaXJlY3RQYXRoO1xyXG5cclxuICBASW5wdXQoKSBzcmNJbWFnZTogc3RyaW5nO1xyXG5cclxuICBpbWFnZTogc3RyaW5nO1xyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IHNyY0ltYWdlIH0gPSBjaGFuZ2VzID8/IHt9O1xyXG5cclxuICAgIGlmIChzcmNJbWFnZT8uY3VycmVudFZhbHVlID09PSB1bmRlZmluZWQgfHwgbnVsbCkge1xyXG4gICAgICB0aGlzLmltYWdlID0gc3JjTm90aGluZ0hlcmVJbWFnZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWl0ZW1zLWNlbnRlciB0ZXh0LWNlbnRlclwiPlxyXG4gIDxpbWcgY2xhc3M9XCJtdC0xMCB3LTYwXCIgW3NyY109XCJpbWFnZVwiIGFsdD1cIlwiIC8+XHJcblxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0aXRsZVwiPlxyXG4gICAgPHAgY2xhc3M9XCJ0ZXh0LVsyMHB4XSBmb250LWJvbGQgbGVhZGluZy03IHRleHQtYmxhY2sgbWItMVwiPnt7IHRpdGxlIH19PC9wPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFbXB0eU1lc3NhZ2VcIj5cclxuICAgIDxwIGNsYXNzPVwidGV4dC1ncmF5LTQwMCBtdC0xIG1iLTRcIj57eyBpc0VtcHR5TWVzc2FnZSB9fTwvcD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuICA8YSAqbmdJZj1cInJlZGlyZWN0UGF0aFwiIFtyb3V0ZXJMaW5rXT1cInJlZGlyZWN0UGF0aD8ucGF0aCAmJiBbcmVkaXJlY3RQYXRoLnBhdGhdXCIgY2xhc3M9XCJ0ZXh0LXNtIG10LTJcIj5cclxuICAgIHt7IHJlZGlyZWN0UGF0aC50aXRsZSB9fVxyXG4gIDwvYT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,237 @@
1
+ import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR, NgControl, } from '@angular/forms';
3
+ import EcabsElementBaseComponent from '../base/element-base';
4
+ import { BehaviorSubject, combineLatest, debounceTime, map, Observable, of, } from 'rxjs';
5
+ import { switchMap } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ import * as i2 from "../base/element-wrapper/element-wrapper.component";
9
+ import * as i3 from "@angular/forms";
10
+ import * as i4 from "@angular/material/icon";
11
+ import * as i5 from "@angular/cdk/overlay";
12
+ import * as i6 from "../base/pipes/separator-append.pipe";
13
+ export class EcabsPlaceAutocompleteV2Component extends EcabsElementBaseComponent {
14
+ ngZone;
15
+ injector;
16
+ matCustomInput;
17
+ showDeleteItem = false;
18
+ waypointsHistory = [];
19
+ showSuffix = false;
20
+ countryCode = 'MT';
21
+ googleLoaded;
22
+ waypointType;
23
+ placeResult = new EventEmitter();
24
+ deleteItem = new EventEmitter();
25
+ queryChanged = new EventEmitter();
26
+ isFocused$ = new BehaviorSubject(false);
27
+ value$ = new BehaviorSubject('');
28
+ waypointSuggestions$;
29
+ selectedIndex = -1;
30
+ displayedSuggestions = [];
31
+ val;
32
+ listener;
33
+ mapAutocompleteService;
34
+ placesService;
35
+ sessionToken;
36
+ get value() {
37
+ return this.val;
38
+ }
39
+ set value(val) {
40
+ if (this.val !== val) {
41
+ this.val = val;
42
+ this.value$.next(val);
43
+ this.onChange(val);
44
+ this.onTouch(val);
45
+ }
46
+ }
47
+ constructor(ngZone, injector) {
48
+ super();
49
+ this.ngZone = ngZone;
50
+ this.injector = injector;
51
+ }
52
+ ngOnChanges(changes) {
53
+ const { googleLoaded } = changes ?? {};
54
+ if (googleLoaded?.currentValue) {
55
+ this.initGoogle();
56
+ }
57
+ }
58
+ ngAfterViewInit() {
59
+ const ngControl = this.injector.get(NgControl, null);
60
+ if (ngControl) {
61
+ this.control = ngControl.control;
62
+ }
63
+ this.waypointSuggestions$ = combineLatest([
64
+ this.isFocused$,
65
+ this.value$,
66
+ ]).pipe(debounceTime(500), switchMap(([isFocused, value]) => {
67
+ if (!isFocused) {
68
+ return of([]);
69
+ }
70
+ if (!value) {
71
+ return of(this.waypointsHistory);
72
+ }
73
+ return this.getWaypointResults(value);
74
+ }), map((results) => {
75
+ this.displayedSuggestions = results;
76
+ this.selectedIndex = results?.length ? 0 : -1;
77
+ return results;
78
+ }));
79
+ }
80
+ getWaypointResults(query) {
81
+ this.queryChanged.emit({ waypoint_type: this.waypointType, query });
82
+ return combineLatest([
83
+ of(this.waypointsHistory),
84
+ this.getPlacesResults(query),
85
+ ]).pipe(map(([history, google]) => {
86
+ const historyItems = history ?? [], googleItems = google ?? [];
87
+ return [...historyItems, ...googleItems];
88
+ }));
89
+ }
90
+ getPlacesResults(query) {
91
+ return new Observable((observer) => {
92
+ this.mapAutocompleteService.getPlacePredictions({
93
+ input: query,
94
+ componentRestrictions: { country: this.countryCode },
95
+ sessionToken: this.sessionToken,
96
+ }, (predictions) => {
97
+ observer.next((predictions ?? []).map((prediction) => {
98
+ return {
99
+ additional_info: prediction.description,
100
+ place_id: prediction.place_id,
101
+ source: 'google',
102
+ prediction_term: prediction.terms,
103
+ };
104
+ }));
105
+ observer.complete();
106
+ });
107
+ });
108
+ }
109
+ onSelectSuggestion(suggestion) {
110
+ const { additional_info, place_id } = suggestion ?? {};
111
+ this.value = additional_info;
112
+ this.placesService.getDetails({
113
+ placeId: place_id,
114
+ sessionToken: this.sessionToken,
115
+ fields: ['address_components', 'geometry.location'],
116
+ }, (place, status) => {
117
+ if (status === google.maps.places.PlacesServiceStatus.OK && place) {
118
+ this.ngZone.run(() => {
119
+ this.placeResult.emit({
120
+ place,
121
+ text: additional_info,
122
+ });
123
+ });
124
+ }
125
+ this.resetSessionToken();
126
+ });
127
+ }
128
+ onKeyDown(event) {
129
+ if (!this.displayedSuggestions?.length) {
130
+ return;
131
+ }
132
+ switch (event.key) {
133
+ case 'ArrowDown':
134
+ event.preventDefault();
135
+ this.selectedIndex =
136
+ (this.selectedIndex + 1) % this.displayedSuggestions.length;
137
+ break;
138
+ case 'ArrowUp':
139
+ event.preventDefault();
140
+ this.selectedIndex =
141
+ (this.selectedIndex - 1 + this.displayedSuggestions.length) %
142
+ this.displayedSuggestions.length;
143
+ break;
144
+ case 'Enter':
145
+ event.preventDefault();
146
+ if (this.selectedIndex >= 0) {
147
+ this.onSelectSuggestion(this.displayedSuggestions[this.selectedIndex]);
148
+ }
149
+ break;
150
+ case 'Escape':
151
+ this.isFocused$.next(false);
152
+ this.selectedIndex = -1;
153
+ break;
154
+ }
155
+ }
156
+ ngOnDestroy() {
157
+ if (this.listener) {
158
+ this.listener.remove();
159
+ }
160
+ }
161
+ onChange = () => { };
162
+ onTouch = () => { };
163
+ onBlur() {
164
+ this.isFocused$.next(false);
165
+ this.onTouch;
166
+ }
167
+ onFocus() {
168
+ this.isFocused$.next(true);
169
+ if (!this.value) {
170
+ this.resetSessionToken();
171
+ }
172
+ }
173
+ writeValue(value) {
174
+ this.value = value;
175
+ }
176
+ registerOnChange(fn) {
177
+ this.onChange = fn;
178
+ }
179
+ registerOnTouched(fn) {
180
+ this.onTouch = fn;
181
+ }
182
+ onDeleteItem() {
183
+ this.deleteItem.emit();
184
+ }
185
+ onClean() {
186
+ this.value = '';
187
+ this.onTouch();
188
+ }
189
+ initGoogle() {
190
+ this.mapAutocompleteService = new google.maps.places.AutocompleteService();
191
+ this.placesService = new google.maps.places.PlacesService(document.createElement('div'));
192
+ this.resetSessionToken();
193
+ }
194
+ resetSessionToken() {
195
+ this.sessionToken = new google.maps.places.AutocompleteSessionToken();
196
+ }
197
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPlaceAutocompleteV2Component, deps: [{ token: i0.NgZone }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
198
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsPlaceAutocompleteV2Component, selector: "ecabs-place-autocomplete-v2", inputs: { showDeleteItem: "showDeleteItem", waypointsHistory: "waypointsHistory", showSuffix: "showSuffix", countryCode: "countryCode", googleLoaded: "googleLoaded", waypointType: "waypointType" }, outputs: { placeResult: "placeResult", deleteItem: "deleteItem", queryChanged: "queryChanged" }, providers: [
199
+ {
200
+ provide: NG_VALUE_ACCESSOR,
201
+ useExisting: EcabsPlaceAutocompleteV2Component,
202
+ multi: true,
203
+ },
204
+ ], viewQueries: [{ propertyName: "matCustomInput", first: true, predicate: ["matCustomAutocompleteInput"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"autocomplete-ui w-full\">\r\n <section class=\"form-field__input--wrapper w-full\">\r\n <input #matCustomAutocompleteInput\r\n cdkOverlayOrigin\r\n #trigger=\"cdkOverlayOrigin\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n class=\"form-field__input w-full\"\r\n autocorrect=\"off\"\r\n autocapitalize=\"off\"\r\n spellcheck=\"off\"\r\n (focus)=\"onFocus()\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (blur)=\"onBlur()\"\r\n />\r\n <div class=\"form-field__input--suffix\" *ngIf=\"showSuffix\">\r\n <mat-icon *ngIf=\"showDeleteItem\"\r\n class=\"suffix cursor-pointer delete-button\"\r\n (click)=\"onDeleteItem()\">\r\n delete\r\n </mat-icon>\r\n <mat-icon class=\"suffix cursor-pointer\" *ngIf=\"!showDeleteItem && value\" (click)=\"onClean()\">close</mat-icon>\r\n </div>\r\n </section>\r\n <!-- Custom dropdown -->\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayWidth]=\"trigger.elementRef.nativeElement.offsetWidth\"\r\n [cdkConnectedOverlayFlexibleDimensions]=\"false\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"isFocused$ | async\">\r\n <ul class=\"autocomplete-ui__container\">\r\n <li *ngFor=\"let suggestion of waypointSuggestions$ | async | slice:0:10; let i = index\"\r\n class=\"autocomplete-ui--item flex items-center justify-between hover:bg-gray-100\"\r\n [class.active]=\"i === selectedIndex\"\r\n (mousedown)=\"onSelectSuggestion(suggestion)\">\r\n <ng-container *ngIf=\"suggestion?.source === 'history'; else purePlaceResultTpl\">\r\n <div class=\"w-full truncate\">\r\n {{ suggestion?.additional_info }}\r\n </div>\r\n <mat-icon *ngIf=\"suggestion?.source === 'history'\"\r\n class=\"w-5 h-5 text-xl text-gray-400 !hover:text-gray-400\">\r\n history\r\n </mat-icon>\r\n </ng-container>\r\n\r\n <ng-template #purePlaceResultTpl>\r\n <ul class=\"w-full flex items-center gap-x-1 leading-0 overflow-hidden whitespace-nowrap\">\r\n <li>\r\n {{ suggestion?.prediction_term[0]?.value }}\r\n </li>\r\n <li *ngIf=\"suggestion?.prediction_term[1]?.value\"\r\n class=\"text-xs text-gray-600 truncate\">\r\n {{ suggestion?.prediction_term[1]?.value | separatorAppend: suggestion?.prediction_term[2]?.value }}\r\n </li>\r\n <li *ngIf=\"suggestion?.prediction_term[2]?.value\"\r\n class=\"text-xs text-gray-600 font-semibold truncate\">\r\n {{ suggestion?.prediction_term[2]?.value }}\r\n </li>\r\n </ul>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n </ng-template>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: ["mat-form-field{margin-bottom:0!important}.delete-button{color:var(--color-error)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: i5.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }, { kind: "pipe", type: i6.SeparatorAppendPipe, name: "separatorAppend" }] });
205
+ }
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPlaceAutocompleteV2Component, decorators: [{
207
+ type: Component,
208
+ args: [{ selector: 'ecabs-place-autocomplete-v2', providers: [
209
+ {
210
+ provide: NG_VALUE_ACCESSOR,
211
+ useExisting: EcabsPlaceAutocompleteV2Component,
212
+ multi: true,
213
+ },
214
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"autocomplete-ui w-full\">\r\n <section class=\"form-field__input--wrapper w-full\">\r\n <input #matCustomAutocompleteInput\r\n cdkOverlayOrigin\r\n #trigger=\"cdkOverlayOrigin\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n class=\"form-field__input w-full\"\r\n autocorrect=\"off\"\r\n autocapitalize=\"off\"\r\n spellcheck=\"off\"\r\n (focus)=\"onFocus()\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (blur)=\"onBlur()\"\r\n />\r\n <div class=\"form-field__input--suffix\" *ngIf=\"showSuffix\">\r\n <mat-icon *ngIf=\"showDeleteItem\"\r\n class=\"suffix cursor-pointer delete-button\"\r\n (click)=\"onDeleteItem()\">\r\n delete\r\n </mat-icon>\r\n <mat-icon class=\"suffix cursor-pointer\" *ngIf=\"!showDeleteItem && value\" (click)=\"onClean()\">close</mat-icon>\r\n </div>\r\n </section>\r\n <!-- Custom dropdown -->\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayWidth]=\"trigger.elementRef.nativeElement.offsetWidth\"\r\n [cdkConnectedOverlayFlexibleDimensions]=\"false\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"isFocused$ | async\">\r\n <ul class=\"autocomplete-ui__container\">\r\n <li *ngFor=\"let suggestion of waypointSuggestions$ | async | slice:0:10; let i = index\"\r\n class=\"autocomplete-ui--item flex items-center justify-between hover:bg-gray-100\"\r\n [class.active]=\"i === selectedIndex\"\r\n (mousedown)=\"onSelectSuggestion(suggestion)\">\r\n <ng-container *ngIf=\"suggestion?.source === 'history'; else purePlaceResultTpl\">\r\n <div class=\"w-full truncate\">\r\n {{ suggestion?.additional_info }}\r\n </div>\r\n <mat-icon *ngIf=\"suggestion?.source === 'history'\"\r\n class=\"w-5 h-5 text-xl text-gray-400 !hover:text-gray-400\">\r\n history\r\n </mat-icon>\r\n </ng-container>\r\n\r\n <ng-template #purePlaceResultTpl>\r\n <ul class=\"w-full flex items-center gap-x-1 leading-0 overflow-hidden whitespace-nowrap\">\r\n <li>\r\n {{ suggestion?.prediction_term[0]?.value }}\r\n </li>\r\n <li *ngIf=\"suggestion?.prediction_term[1]?.value\"\r\n class=\"text-xs text-gray-600 truncate\">\r\n {{ suggestion?.prediction_term[1]?.value | separatorAppend: suggestion?.prediction_term[2]?.value }}\r\n </li>\r\n <li *ngIf=\"suggestion?.prediction_term[2]?.value\"\r\n class=\"text-xs text-gray-600 font-semibold truncate\">\r\n {{ suggestion?.prediction_term[2]?.value }}\r\n </li>\r\n </ul>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n </ng-template>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: ["mat-form-field{margin-bottom:0!important}.delete-button{color:var(--color-error)}\n"] }]
215
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.Injector }]; }, propDecorators: { matCustomInput: [{
216
+ type: ViewChild,
217
+ args: ['matCustomAutocompleteInput', { static: false }]
218
+ }], showDeleteItem: [{
219
+ type: Input
220
+ }], waypointsHistory: [{
221
+ type: Input
222
+ }], showSuffix: [{
223
+ type: Input
224
+ }], countryCode: [{
225
+ type: Input
226
+ }], googleLoaded: [{
227
+ type: Input
228
+ }], waypointType: [{
229
+ type: Input
230
+ }], placeResult: [{
231
+ type: Output
232
+ }], deleteItem: [{
233
+ type: Output
234
+ }], queryChanged: [{
235
+ type: Output
236
+ }] } });
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtcGxhY2UtYXV0b2NvbXBsZXRlLXYyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1wbGFjZS1hdXRvY29tcGxldGUtdjIvZWNhYnMtcGxhY2UtYXV0b2NvbXBsZXRlLXYyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1wbGFjZS1hdXRvY29tcGxldGUtdjIvZWNhYnMtcGxhY2UtYXV0b2NvbXBsZXRlLXYyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxHQUVWLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyx5QkFBeUIsTUFBTSxzQkFBc0IsQ0FBQztBQU83RCxPQUFPLEVBQ0wsZUFBZSxFQUNmLGFBQWEsRUFDYixZQUFZLEVBQ1osR0FBRyxFQUNILFVBQVUsRUFDVixFQUFFLEdBQ0gsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7O0FBYzNDLE1BQU0sT0FBTyxpQ0FDWCxTQUFRLHlCQUF5QjtJQTZEZDtJQUNBO0lBMURuQixjQUFjLENBQWE7SUFHM0IsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUd2QixnQkFBZ0IsR0FBeUIsRUFBRSxDQUFDO0lBRzVDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFHbkIsV0FBVyxHQUFHLElBQUksQ0FBQztJQUduQixZQUFZLENBQVU7SUFHdEIsWUFBWSxDQUFtQjtJQUd0QixXQUFXLEdBQW9DLElBQUksWUFBWSxFQUFF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TyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxtQ0FBbUM7NEJBQzlDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO29IQU9ELGNBQWM7c0JBRGIsU0FBUzt1QkFBQyw0QkFBNEIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBSTFELGNBQWM7c0JBRGIsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSUcsV0FBVztzQkFEbkIsTUFBTTtnQkFJRSxVQUFVO3NCQURsQixNQUFNO2dCQUlFLFlBQVk7c0JBRHBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcclxuICBOR19WQUxVRV9BQ0NFU1NPUixcclxuICBOZ0NvbnRyb2wsXHJcbiAgVW50eXBlZEZvcm1Db250cm9sLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IEVjYWJzRWxlbWVudEJhc2VDb21wb25lbnQgZnJvbSAnLi4vYmFzZS9lbGVtZW50LWJhc2UnO1xyXG5pbXBvcnQgeyBXYXlwb2ludFR5cGVFbnVtIH0gZnJvbSAnLi4vYmFzZS9jb25zdHMvd2F5cG9pbnQuY29uc3RzJztcclxuaW1wb3J0IHtcclxuICBHb29nbGVQbGFjZVJlc3VsdCxcclxuICBXYXlwb2ludFF1ZXJ5Q2hhbmdlLFxyXG4gIFdheXBvaW50U3VnZ2VzdGlvbixcclxufSBmcm9tICcuLi9iYXNlL21vZGVscy93YXlwb2ludC5tb2RlbHMnO1xyXG5pbXBvcnQge1xyXG4gIEJlaGF2aW9yU3ViamVjdCxcclxuICBjb21iaW5lTGF0ZXN0LFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBtYXAsXHJcbiAgT2JzZXJ2YWJsZSxcclxuICBvZixcclxufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlY2Ficy1wbGFjZS1hdXRvY29tcGxldGUtdjInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lY2Ficy1wbGFjZS1hdXRvY29tcGxldGUtdjIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLXBsYWNlLWF1dG9jb21wbGV0ZS12Mi5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IEVjYWJzUGxhY2VBdXRvY29tcGxldGVWMkNvbXBvbmVudCxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic1BsYWNlQXV0b2NvbXBsZXRlVjJDb21wb25lbnRcclxuICBleHRlbmRzIEVjYWJzRWxlbWVudEJhc2VDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvclxyXG57XHJcbiAgQFZpZXdDaGlsZCgnbWF0Q3VzdG9tQXV0b2NvbXBsZXRlSW5wdXQnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBtYXRDdXN0b21JbnB1dDogRWxlbWVudFJlZjtcclxuXHJcbiAgQElucHV0KClcclxuICBzaG93RGVsZXRlSXRlbSA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHdheXBvaW50c0hpc3Rvcnk6IFdheXBvaW50U3VnZ2VzdGlvbltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2hvd1N1ZmZpeCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvdW50cnlDb2RlID0gJ01UJztcclxuXHJcbiAgQElucHV0KClcclxuICBnb29nbGVMb2FkZWQ6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgd2F5cG9pbnRUeXBlOiBXYXlwb2ludFR5cGVFbnVtO1xyXG5cclxuICBAT3V0cHV0KClcclxuICByZWFkb25seSBwbGFjZVJlc3VsdDogRXZlbnRFbWl0dGVyPEdvb2dsZVBsYWNlUmVzdWx0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgZGVsZXRlSXRlbSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgcXVlcnlDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxXYXlwb2ludFF1ZXJ5Q2hhbmdlPigpO1xyXG5cclxuICBpc0ZvY3VzZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgdmFsdWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcclxuICB3YXlwb2ludFN1Z2dlc3Rpb25zJDogT2JzZXJ2YWJsZTxXYXlwb2ludFN1Z2dlc3Rpb25bXT47XHJcblxyXG4gIHNlbGVjdGVkSW5kZXggPSAtMTtcclxuICBkaXNwbGF5ZWRTdWdnZXN0aW9uczogV2F5cG9pbnRTdWdnZXN0aW9uW10gPSBbXTtcclxuXHJcbiAgdmFsITogc3RyaW5nO1xyXG4gIGxpc3RlbmVyOiBnb29nbGUubWFwcy5NYXBzRXZlbnRMaXN0ZW5lcjtcclxuXHJcbiAgcHJpdmF0ZSBtYXBBdXRvY29tcGxldGVTZXJ2aWNlOiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlU2VydmljZTtcclxuICBwcml2YXRlIHBsYWNlc1NlcnZpY2U6IGdvb2dsZS5tYXBzLnBsYWNlcy5QbGFjZXNTZXJ2aWNlO1xyXG4gIHByaXZhdGUgc2Vzc2lvblRva2VuOiBnb29nbGUubWFwcy5wbGFjZXMuQXV0b2NvbXBsZXRlU2Vzc2lvblRva2VuO1xyXG5cclxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnZhbDtcclxuICB9XHJcblxyXG4gIHNldCB2YWx1ZSh2YWw6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMudmFsICE9PSB2YWwpIHtcclxuICAgICAgdGhpcy52YWwgPSB2YWw7XHJcbiAgICAgIHRoaXMudmFsdWUkLm5leHQodmFsKTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh2YWwpO1xyXG4gICAgICB0aGlzLm9uVG91Y2godmFsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgZ29vZ2xlTG9hZGVkIH0gPSBjaGFuZ2VzID8/IHt9O1xyXG5cclxuICAgIGlmIChnb29nbGVMb2FkZWQ/LmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgICB0aGlzLmluaXRHb29nbGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5nQ29udHJvbDogTmdDb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQoXHJcbiAgICAgIE5nQ29udHJvbCxcclxuICAgICAgbnVsbCxcclxuICAgICkgYXMgTmdDb250cm9sO1xyXG5cclxuICAgIGlmIChuZ0NvbnRyb2wpIHtcclxuICAgICAgdGhpcy5jb250cm9sID0gbmdDb250cm9sLmNvbnRyb2wgYXMgVW50eXBlZEZvcm1Db250cm9sO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMud2F5cG9pbnRTdWdnZXN0aW9ucyQgPSBjb21iaW5lTGF0ZXN0KFtcclxuICAgICAgdGhpcy5pc0ZvY3VzZWQkLFxyXG4gICAgICB0aGlzLnZhbHVlJCxcclxuICAgIF0pLnBpcGUoXHJcbiAgICAgIGRlYm91bmNlVGltZSg1MDApLFxyXG4gICAgICBzd2l0Y2hNYXAoKFtpc0ZvY3VzZWQsIHZhbHVlXSkgPT4ge1xyXG4gICAgICAgIGlmICghaXNGb2N1c2VkKSB7XHJcbiAgICAgICAgICByZXR1cm4gb2YoW10gYXMgV2F5cG9pbnRTdWdnZXN0aW9uW10pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgICAgcmV0dXJuIG9mKHRoaXMud2F5cG9pbnRzSGlzdG9yeSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRXYXlwb2ludFJlc3VsdHModmFsdWUpO1xyXG4gICAgICB9KSxcclxuICAgICAgbWFwKChyZXN1bHRzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWRTdWdnZXN0aW9ucyA9IHJlc3VsdHM7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gcmVzdWx0cz8ubGVuZ3RoID8gMCA6IC0xO1xyXG5cclxuICAgICAgICByZXR1cm4gcmVzdWx0cztcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRXYXlwb2ludFJlc3VsdHMocXVlcnk6IHN0cmluZyk6IE9ic2VydmFibGU8V2F5cG9pbnRTdWdnZXN0aW9uW10+IHtcclxuICAgIHRoaXMucXVlcnlDaGFuZ2VkLmVtaXQoeyB3YXlwb2ludF90eXBlOiB0aGlzLndheXBvaW50VHlwZSwgcXVlcnkgfSk7XHJcblxyXG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xyXG4gICAgICBvZih0aGlzLndheXBvaW50c0hpc3RvcnkpLFxyXG4gICAgICB0aGlzLmdldFBsYWNlc1Jlc3VsdHMocXVlcnkpLFxyXG4gICAgXSkucGlwZShcclxuICAgICAgbWFwKChbaGlzdG9yeSwgZ29vZ2xlXSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGhpc3RvcnlJdGVtcyA9IGhpc3RvcnkgPz8gW10sXHJcbiAgICAgICAgICBnb29nbGVJdGVtcyA9IGdvb2dsZSA/PyBbXTtcclxuXHJcbiAgICAgICAgcmV0dXJuIFsuLi5oaXN0b3J5SXRlbXMsIC4uLmdvb2dsZUl0ZW1zXTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRQbGFjZXNSZXN1bHRzKHF1ZXJ5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFdheXBvaW50U3VnZ2VzdGlvbltdPiB7XHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XHJcbiAgICAgIHRoaXMubWFwQXV0b2NvbXBsZXRlU2VydmljZS5nZXRQbGFjZVByZWRpY3Rpb25zKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGlucHV0OiBxdWVyeSxcclxuICAgICAgICAgIGNvbXBvbmVudFJlc3RyaWN0aW9uczogeyBjb3VudHJ5OiB0aGlzLmNvdW50cnlDb2RlIH0sXHJcbiAgICAgICAgICBzZXNzaW9uVG9rZW46IHRoaXMuc2Vzc2lvblRva2VuLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKHByZWRpY3Rpb25zKSA9PiB7XHJcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KFxyXG4gICAgICAgICAgICAocHJlZGljdGlvbnMgPz8gW10pLm1hcCgocHJlZGljdGlvbikgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBhZGRpdGlvbmFsX2luZm86IHByZWRpY3Rpb24uZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICBwbGFjZV9pZDogcHJlZGljdGlvbi5wbGFjZV9pZCEsXHJcbiAgICAgICAgICAgICAgICBzb3VyY2U6ICdnb29nbGUnLFxyXG4gICAgICAgICAgICAgICAgcHJlZGljdGlvbl90ZXJtOiBwcmVkaWN0aW9uLnRlcm1zLFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TZWxlY3RTdWdnZXN0aW9uKHN1Z2dlc3Rpb246IFdheXBvaW50U3VnZ2VzdGlvbik6IHZvaWQge1xyXG4gICAgY29uc3QgeyBhZGRpdGlvbmFsX2luZm8sIHBsYWNlX2lkIH0gPSBzdWdnZXN0aW9uID8/IHt9O1xyXG5cclxuICAgIHRoaXMudmFsdWUgPSBhZGRpdGlvbmFsX2luZm87XHJcbiAgICB0aGlzLnBsYWNlc1NlcnZpY2UuZ2V0RGV0YWlscyhcclxuICAgICAge1xyXG4gICAgICAgIHBsYWNlSWQ6IHBsYWNlX2lkISxcclxuICAgICAgICBzZXNzaW9uVG9rZW46IHRoaXMuc2Vzc2lvblRva2VuLFxyXG4gICAgICAgIGZpZWxkczogWydhZGRyZXNzX2NvbXBvbmVudHMnLCAnZ2VvbWV0cnkubG9jYXRpb24nXSxcclxuICAgICAgfSxcclxuICAgICAgKHBsYWNlLCBzdGF0dXMpID0+IHtcclxuICAgICAgICBpZiAoc3RhdHVzID09PSBnb29nbGUubWFwcy5wbGFjZXMuUGxhY2VzU2VydmljZVN0YXR1cy5PSyAmJiBwbGFjZSkge1xyXG4gICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5wbGFjZVJlc3VsdC5lbWl0KHtcclxuICAgICAgICAgICAgICBwbGFjZSxcclxuICAgICAgICAgICAgICB0ZXh0OiBhZGRpdGlvbmFsX2luZm8sXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnJlc2V0U2Vzc2lvblRva2VuKCk7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGlzcGxheWVkU3VnZ2VzdGlvbnM/Lmxlbmd0aCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcclxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9XHJcbiAgICAgICAgICAodGhpcy5zZWxlY3RlZEluZGV4ICsgMSkgJSB0aGlzLmRpc3BsYXllZFN1Z2dlc3Rpb25zLmxlbmd0aDtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID1cclxuICAgICAgICAgICh0aGlzLnNlbGVjdGVkSW5kZXggLSAxICsgdGhpcy5kaXNwbGF5ZWRTdWdnZXN0aW9ucy5sZW5ndGgpICVcclxuICAgICAgICAgIHRoaXMuZGlzcGxheWVkU3VnZ2VzdGlvbnMubGVuZ3RoO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnRW50ZXInOlxyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkSW5kZXggPj0gMCkge1xyXG4gICAgICAgICAgdGhpcy5vblNlbGVjdFN1Z2dlc3Rpb24oXHJcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheWVkU3VnZ2VzdGlvbnNbdGhpcy5zZWxlY3RlZEluZGV4XSxcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnRXNjYXBlJzpcclxuICAgICAgICB0aGlzLmlzRm9jdXNlZCQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gLTE7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmxpc3RlbmVyKSB7XHJcbiAgICAgIHRoaXMubGlzdGVuZXIucmVtb3ZlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIG9uVG91Y2g6IGFueSA9ICgpID0+IHt9O1xyXG5cclxuICBvbkJsdXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9jdXNlZCQubmV4dChmYWxzZSk7XHJcbiAgICB0aGlzLm9uVG91Y2g7XHJcbiAgfVxyXG5cclxuICBvbkZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQkLm5leHQodHJ1ZSk7XHJcblxyXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMucmVzZXRTZXNzaW9uVG9rZW4oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIG9uRGVsZXRlSXRlbSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVsZXRlSXRlbS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsZWFuKCk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9ICcnO1xyXG4gICAgdGhpcy5vblRvdWNoKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRHb29nbGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hcEF1dG9jb21wbGV0ZVNlcnZpY2UgPSBuZXcgZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZVNlcnZpY2UoKTtcclxuXHJcbiAgICB0aGlzLnBsYWNlc1NlcnZpY2UgPSBuZXcgZ29vZ2xlLm1hcHMucGxhY2VzLlBsYWNlc1NlcnZpY2UoXHJcbiAgICAgIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLFxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLnJlc2V0U2Vzc2lvblRva2VuKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc2V0U2Vzc2lvblRva2VuKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXNzaW9uVG9rZW4gPSBuZXcgZ29vZ2xlLm1hcHMucGxhY2VzLkF1dG9jb21wbGV0ZVNlc3Npb25Ub2tlbigpO1xyXG4gIH1cclxufVxyXG4iLCI8ZWNhYnMtZWxlbWVudC13cmFwcGVyIFtkYXRhXT1cImdldERhdGEoKVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJhdXRvY29tcGxldGUtdWkgdy1mdWxsXCI+XHJcbiAgICA8c2VjdGlvbiBjbGFzcz1cImZvcm0tZmllbGRfX2lucHV0LS13cmFwcGVyIHctZnVsbFwiPlxyXG4gICAgICA8aW5wdXQgI21hdEN1c3RvbUF1dG9jb21wbGV0ZUlucHV0XHJcbiAgICAgICAgICAgICBjZGtPdmVybGF5T3JpZ2luXHJcbiAgICAgICAgICAgICAjdHJpZ2dlcj1cImNka092ZXJsYXlPcmlnaW5cIlxyXG4gICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcclxuICAgICAgICAgICAgIFtpZF09XCJuYW1lXCJcclxuICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXQgdy1mdWxsXCJcclxuICAgICAgICAgICAgIGF1dG9jb3JyZWN0PVwib2ZmXCJcclxuICAgICAgICAgICAgIGF1dG9jYXBpdGFsaXplPVwib2ZmXCJcclxuICAgICAgICAgICAgIHNwZWxsY2hlY2s9XCJvZmZcIlxyXG4gICAgICAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoKVwiXHJcbiAgICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWZpZWxkX19pbnB1dC0tc3VmZml4XCIgKm5nSWY9XCJzaG93U3VmZml4XCI+XHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwic2hvd0RlbGV0ZUl0ZW1cIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInN1ZmZpeCBjdXJzb3ItcG9pbnRlciBkZWxldGUtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRGVsZXRlSXRlbSgpXCI+XHJcbiAgICAgICAgICBkZWxldGVcclxuICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInN1ZmZpeCBjdXJzb3ItcG9pbnRlclwiICpuZ0lmPVwiIXNob3dEZWxldGVJdGVtICYmIHZhbHVlXCIgKGNsaWNrKT1cIm9uQ2xlYW4oKVwiPmNsb3NlPC9tYXQtaWNvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L3NlY3Rpb24+XHJcbiAgICA8IS0tIEN1c3RvbSBkcm9wZG93biAtLT5cclxuICAgIDxuZy10ZW1wbGF0ZSBjZGtDb25uZWN0ZWRPdmVybGF5XHJcbiAgICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlXaWR0aF09XCJ0cmlnZ2VyLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aFwiXHJcbiAgICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlGbGV4aWJsZURpbWVuc2lvbnNdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cInRyaWdnZXJcIlxyXG4gICAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJpc0ZvY3VzZWQkIHwgYXN5bmNcIj5cclxuICAgICAgPHVsIGNsYXNzPVwiYXV0b2NvbXBsZXRlLXVpX19jb250YWluZXJcIj5cclxuICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHN1Z2dlc3Rpb24gb2Ygd2F5cG9pbnRTdWdnZXN0aW9ucyQgfCBhc3luYyB8IHNsaWNlOjA6MTA7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImF1dG9jb21wbGV0ZS11aS0taXRlbSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gaG92ZXI6YmctZ3JheS0xMDBcIlxyXG4gICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImkgPT09IHNlbGVjdGVkSW5kZXhcIlxyXG4gICAgICAgICAgICAobW91c2Vkb3duKT1cIm9uU2VsZWN0U3VnZ2VzdGlvbihzdWdnZXN0aW9uKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1Z2dlc3Rpb24/LnNvdXJjZSA9PT0gJ2hpc3RvcnknOyBlbHNlIHB1cmVQbGFjZVJlc3VsdFRwbFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIHRydW5jYXRlXCI+XHJcbiAgICAgICAgICAgICAge3sgc3VnZ2VzdGlvbj8uYWRkaXRpb25hbF9pbmZvIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJzdWdnZXN0aW9uPy5zb3VyY2UgPT09ICdoaXN0b3J5J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInctNSBoLTUgdGV4dC14bCB0ZXh0LWdyYXktNDAwICFob3Zlcjp0ZXh0LWdyYXktNDAwXCI+XHJcbiAgICAgICAgICAgICAgaGlzdG9yeVxyXG4gICAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNwdXJlUGxhY2VSZXN1bHRUcGw+XHJcbiAgICAgICAgICAgIDx1bCBjbGFzcz1cInctZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAteC0xIGxlYWRpbmctMCBvdmVyZmxvdy1oaWRkZW4gd2hpdGVzcGFjZS1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICB7eyBzdWdnZXN0aW9uPy5wcmVkaWN0aW9uX3Rlcm1bMF0/LnZhbHVlIH19XHJcbiAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICA8bGkgKm5nSWY9XCJzdWdnZXN0aW9uPy5wcmVkaWN0aW9uX3Rlcm1bMV0/LnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXhzIHRleHQtZ3JheS02MDAgdHJ1bmNhdGVcIj5cclxuICAgICAgICAgICAgICAgIHt7IHN1Z2dlc3Rpb24/LnByZWRpY3Rpb25fdGVybVsxXT8udmFsdWUgfCBzZXBhcmF0b3JBcHBlbmQ6IHN1Z2dlc3Rpb24/LnByZWRpY3Rpb25fdGVybVsyXT8udmFsdWUgfX1cclxuICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgIDxsaSAqbmdJZj1cInN1Z2dlc3Rpb24/LnByZWRpY3Rpb25fdGVybVsyXT8udmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQteHMgdGV4dC1ncmF5LTYwMCBmb250LXNlbWlib2xkIHRydW5jYXRlXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBzdWdnZXN0aW9uPy5wcmVkaWN0aW9uX3Rlcm1bMl0/LnZhbHVlIH19XHJcbiAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgPC91bD5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9kaXY+XHJcbjwvZWNhYnMtZWxlbWVudC13cmFwcGVyPlxyXG4iXX0=
@@ -0,0 +1,40 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { EcabsPlaceAutocompleteV2Component } from './ecabs-place-autocomplete-v2.component';
4
+ import { FormsModule } from '@angular/forms';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { ElementWrapperModule } from '../base/element-wrapper/element-wrapper.module';
7
+ import { SeparatorAppendPipe } from '../base/pipes/separator-append.pipe';
8
+ import { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
9
+ import * as i0 from "@angular/core";
10
+ export class EcabsPlaceAutocompleteV2Module {
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPlaceAutocompleteV2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsPlaceAutocompleteV2Module, declarations: [EcabsPlaceAutocompleteV2Component], imports: [CommonModule,
13
+ ElementWrapperModule,
14
+ FormsModule,
15
+ MatIconModule,
16
+ SeparatorAppendPipe,
17
+ CdkOverlayOrigin,
18
+ CdkConnectedOverlay], exports: [EcabsPlaceAutocompleteV2Component] });
19
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPlaceAutocompleteV2Module, imports: [CommonModule,
20
+ ElementWrapperModule,
21
+ FormsModule,
22
+ MatIconModule] });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPlaceAutocompleteV2Module, decorators: [{
25
+ type: NgModule,
26
+ args: [{
27
+ declarations: [EcabsPlaceAutocompleteV2Component],
28
+ imports: [
29
+ CommonModule,
30
+ ElementWrapperModule,
31
+ FormsModule,
32
+ MatIconModule,
33
+ SeparatorAppendPipe,
34
+ CdkOverlayOrigin,
35
+ CdkConnectedOverlay,
36
+ ],
37
+ exports: [EcabsPlaceAutocompleteV2Component],
38
+ }]
39
+ }] });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtcGxhY2UtYXV0b2NvbXBsZXRlLXYyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1wbGFjZS1hdXRvY29tcGxldGUtdjIvZWNhYnMtcGxhY2UtYXV0b2NvbXBsZXRlLXYyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQWU3RSxNQUFNLE9BQU8sOEJBQThCO3dHQUE5Qiw4QkFBOEI7eUdBQTlCLDhCQUE4QixpQkFaMUIsaUNBQWlDLGFBRTlDLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsV0FBVztZQUNYLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsZ0JBQWdCO1lBQ2hCLG1CQUFtQixhQUVYLGlDQUFpQzt5R0FFaEMsOEJBQThCLFlBVnZDLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsV0FBVztZQUNYLGFBQWE7OzRGQU9KLDhCQUE4QjtrQkFiMUMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztvQkFDakQsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsaUNBQWlDLENBQUM7aUJBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNhYnNQbGFjZUF1dG9jb21wbGV0ZVYyQ29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1wbGFjZS1hdXRvY29tcGxldGUtdjIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgRWxlbWVudFdyYXBwZXJNb2R1bGUgfSBmcm9tICcuLi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlJztcclxuaW1wb3J0IHsgU2VwYXJhdG9yQXBwZW5kUGlwZSB9IGZyb20gJy4uL2Jhc2UvcGlwZXMvc2VwYXJhdG9yLWFwcGVuZC5waXBlJztcclxuaW1wb3J0IHsgQ2RrQ29ubmVjdGVkT3ZlcmxheSwgQ2RrT3ZlcmxheU9yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRWNhYnNQbGFjZUF1dG9jb21wbGV0ZVYyQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBFbGVtZW50V3JhcHBlck1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIFNlcGFyYXRvckFwcGVuZFBpcGUsXHJcbiAgICBDZGtPdmVybGF5T3JpZ2luLFxyXG4gICAgQ2RrQ29ubmVjdGVkT3ZlcmxheSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtFY2Fic1BsYWNlQXV0b2NvbXBsZXRlVjJDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNQbGFjZUF1dG9jb21wbGV0ZVYyTW9kdWxlIHt9XHJcbiJdfQ==
@@ -20,7 +20,7 @@ export class TableComponent {
20
20
  }
21
21
  }
22
22
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableComponent, selector: "ecabs-table", inputs: { header: "header", paginator: "paginator", bordered: "bordered", loading: "loading", isEmpty: "isEmpty", isEmptyMessage: "isEmptyMessage", redirectPath: "redirectPath", srcImageEmpty: "srcImageEmpty" }, queries: [{ propertyName: "table", first: true, predicate: MatTable, descendants: true }], ngImport: i0, template: "<section class=\"table-ui table-ui--wrapper\" [ngClass]=\"{ 'table-ui__bordered': bordered, loading: loading }\">\r\n <mat-progress-bar *ngIf=\"loading\" mode=\"indeterminate\" class=\"table-ui__progress\"></mat-progress-bar>\r\n\r\n <div *ngIf=\"header\" class=\"table-ui__header\">\r\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!(isEmptyMessage && isEmpty); else noDataTemplate\">\r\n <ng-content></ng-content>\r\n\r\n <div *ngIf=\"paginator\" class=\"table-ui__paginator\">\r\n <ng-container *ngTemplateOutlet=\"paginator\"></ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <!--#For Empty state -->\r\n <ng-template #noDataTemplate>\r\n <ecabs-empty-placeholder\r\n *ngIf=\"!loading\"\r\n [redirectPath]=\"redirectPath\"\r\n [isEmptyMessage]=\"isEmptyMessage\"\r\n [srcImage]=\"srcImageEmpty\"\r\n ></ecabs-empty-placeholder>\r\n </ng-template>\r\n</section>\r\n", styles: [":host mat-progress-bar{position:absolute;width:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i3.EcabsEmptyPlaceholderComponent, selector: "ecabs-empty-placeholder", inputs: ["isEmptyMessage", "redirectPath", "srcImage"] }] });
23
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableComponent, selector: "ecabs-table", inputs: { header: "header", paginator: "paginator", bordered: "bordered", loading: "loading", isEmpty: "isEmpty", isEmptyMessage: "isEmptyMessage", redirectPath: "redirectPath", srcImageEmpty: "srcImageEmpty" }, queries: [{ propertyName: "table", first: true, predicate: MatTable, descendants: true }], ngImport: i0, template: "<section class=\"table-ui table-ui--wrapper\" [ngClass]=\"{ 'table-ui__bordered': bordered, loading: loading }\">\r\n <mat-progress-bar *ngIf=\"loading\" mode=\"indeterminate\" class=\"table-ui__progress\"></mat-progress-bar>\r\n\r\n <div *ngIf=\"header\" class=\"table-ui__header\">\r\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!(isEmptyMessage && isEmpty); else noDataTemplate\">\r\n <ng-content></ng-content>\r\n\r\n <div *ngIf=\"paginator\" class=\"table-ui__paginator\">\r\n <ng-container *ngTemplateOutlet=\"paginator\"></ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <!--#For Empty state -->\r\n <ng-template #noDataTemplate>\r\n <ecabs-empty-placeholder\r\n *ngIf=\"!loading\"\r\n [redirectPath]=\"redirectPath\"\r\n [isEmptyMessage]=\"isEmptyMessage\"\r\n [srcImage]=\"srcImageEmpty\"\r\n ></ecabs-empty-placeholder>\r\n </ng-template>\r\n</section>\r\n", styles: [":host mat-progress-bar{position:absolute;width:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i3.EcabsEmptyPlaceholderComponent, selector: "ecabs-empty-placeholder", inputs: ["title", "isEmptyMessage", "redirectPath", "srcImage"] }] });
24
24
  }
25
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableComponent, decorators: [{
26
26
  type: Component,