@wlcm/angular 18.2.26 → 18.2.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/button/esm2022/lib/button.module.mjs +4 -4
  2. package/button/esm2022/lib/components/button/button.component.mjs +3 -3
  3. package/button/fesm2022/wlcm-angular-button.mjs +7 -7
  4. package/core/esm2022/lib/components/default-loader/default-loader.component.mjs +3 -3
  5. package/core/esm2022/lib/components/icons/calendar-icon/calendar-icon.component.mjs +3 -3
  6. package/core/esm2022/lib/components/icons/chevron-down-icon/chevron-down-icon.component.mjs +3 -3
  7. package/core/esm2022/lib/components/icons/close-icon/close-icon.component.mjs +3 -3
  8. package/core/esm2022/lib/components/icons/search-icon/search-icon.component.mjs +3 -3
  9. package/core/esm2022/lib/components/loader/loader.component.mjs +3 -3
  10. package/core/esm2022/lib/directives/icon.directive.mjs +3 -3
  11. package/core/esm2022/lib/services/scroll-detection.api.mjs +33 -21
  12. package/core/fesm2022/wlcm-angular-core.mjs +52 -40
  13. package/core/fesm2022/wlcm-angular-core.mjs.map +1 -1
  14. package/core/lib/services/scroll-detection.api.d.ts +4 -1
  15. package/datepicker/esm2022/index.mjs +5 -2
  16. package/datepicker/esm2022/lib/components/calendar-header/calendar-header.component.mjs +3 -3
  17. package/datepicker/esm2022/lib/components/range/date-range-calendar-header/date-range-calendar-header.component.mjs +3 -3
  18. package/datepicker/esm2022/lib/components/range/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.mjs +7 -7
  19. package/datepicker/esm2022/lib/components/range/date-range-picker-input/date-range-picker-input.component.mjs +12 -10
  20. package/datepicker/esm2022/lib/components/range/double-calendar-range-picker/double-calendar-range-picker.component.mjs +168 -0
  21. package/datepicker/esm2022/lib/components/range/single-calendar-range-picker/single-calendar-range-picker.component.mjs +95 -0
  22. package/datepicker/esm2022/lib/components/single/datepicker-input-container/datepicker-input-container.component.mjs +3 -3
  23. package/datepicker/esm2022/lib/components/single/datepicker-panel/datepicker-panel.component.mjs +3 -3
  24. package/datepicker/esm2022/lib/constants/range/date-range-picker.constants.mjs +3 -1
  25. package/datepicker/esm2022/lib/datepicker.module.mjs +4 -4
  26. package/datepicker/esm2022/lib/directives/calendar.directive.mjs +3 -3
  27. package/datepicker/esm2022/lib/directives/datepicker-input.base.mjs +3 -3
  28. package/datepicker/esm2022/lib/directives/datepicker-trigger.base.mjs +7 -11
  29. package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input-end.directive.mjs +3 -3
  30. package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input-start.directive.mjs +3 -3
  31. package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input.base.mjs +9 -7
  32. package/datepicker/esm2022/lib/directives/ragne/left-calendar.directive.mjs +3 -3
  33. package/datepicker/esm2022/lib/directives/ragne/right-calendar.directive.mjs +3 -3
  34. package/datepicker/esm2022/lib/directives/single/datepicker-input.directive.mjs +3 -3
  35. package/datepicker/esm2022/lib/models/date-picker.models.mjs +3 -3
  36. package/datepicker/esm2022/lib/models/range/data-range-calendar.models.mjs +4 -4
  37. package/datepicker/esm2022/lib/models/range/date-range-picker.models.mjs +27 -2
  38. package/datepicker/fesm2022/wlcm-angular-datepicker.mjs +701 -605
  39. package/datepicker/fesm2022/wlcm-angular-datepicker.mjs.map +1 -1
  40. package/datepicker/index.d.ts +4 -1
  41. package/datepicker/lib/components/range/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.d.ts +3 -3
  42. package/datepicker/lib/components/range/date-range-picker-input/date-range-picker-input.component.d.ts +5 -5
  43. package/datepicker/lib/components/range/{date-range-picker/date-range-picker.component.d.ts → double-calendar-range-picker/double-calendar-range-picker.component.d.ts} +12 -16
  44. package/datepicker/lib/components/range/single-calendar-range-picker/single-calendar-range-picker.component.d.ts +27 -0
  45. package/datepicker/lib/constants/range/date-range-picker.constants.d.ts +2 -1
  46. package/datepicker/lib/directives/datepicker-trigger.base.d.ts +1 -2
  47. package/datepicker/lib/models/range/date-range-picker.models.d.ts +15 -1
  48. package/filters/esm2022/lib/components/filters-group/filters-group.component.mjs +3 -3
  49. package/filters/esm2022/lib/directives/filter.directive.mjs +3 -3
  50. package/filters/esm2022/lib/filters.module.mjs +4 -4
  51. package/filters/esm2022/lib/models/filters-group.models.mjs +3 -3
  52. package/filters/fesm2022/wlcm-angular-filters.mjs +13 -13
  53. package/forms/esm2022/lib/forms/components/autocomplete/autocomplete.component.mjs +3 -3
  54. package/forms/esm2022/lib/forms/components/checkbox/checkbox.component.mjs +5 -5
  55. package/forms/esm2022/lib/forms/components/checkbox-group/checkbox-group.component.mjs +3 -3
  56. package/forms/esm2022/lib/forms/components/error/error.component.mjs +3 -3
  57. package/forms/esm2022/lib/forms/components/form-field/form-field.component.mjs +3 -3
  58. package/forms/esm2022/lib/forms/components/label/label.component.mjs +3 -3
  59. package/forms/esm2022/lib/forms/components/partials/autocomplete-suffix/autocomplete-suffix.component.mjs +3 -3
  60. package/forms/esm2022/lib/forms/components/select/select.component.mjs +14 -5
  61. package/forms/esm2022/lib/forms/directives/autocomplete.directive.mjs +3 -3
  62. package/forms/esm2022/lib/forms/directives/form-field-custom-container.directive.mjs +3 -3
  63. package/forms/esm2022/lib/forms/directives/form-field-hint.directive.mjs +3 -3
  64. package/forms/esm2022/lib/forms/directives/form-field-prefix.directive.mjs +3 -3
  65. package/forms/esm2022/lib/forms/directives/form-field-suffix.directive.mjs +3 -3
  66. package/forms/esm2022/lib/forms/directives/input.directive.mjs +3 -3
  67. package/forms/esm2022/lib/forms/directives/select-input-binder.directive.mjs +3 -3
  68. package/forms/esm2022/lib/forms/forms.module.mjs +4 -4
  69. package/forms/esm2022/lib/forms/models/autocomplete.models.mjs +3 -3
  70. package/forms/esm2022/lib/forms/pipes/errors-mapper.pipe.mjs +3 -3
  71. package/forms/esm2022/lib/forms/services/form-state-handler.service.mjs +3 -3
  72. package/forms/esm2022/lib/forms/services/places.api.mjs +6 -6
  73. package/forms/fesm2022/wlcm-angular-forms.mjs +75 -66
  74. package/forms/fesm2022/wlcm-angular-forms.mjs.map +1 -1
  75. package/forms/lib/forms/components/select/select.component.d.ts +1 -0
  76. package/forms/lib/forms/services/places.api.d.ts +1 -0
  77. package/package.json +1 -1
  78. package/phone-input/esm2022/lib/components/country-code-select/country-code-select.component.mjs +3 -3
  79. package/phone-input/esm2022/lib/components/phone-input-container/phone-input-container.component.mjs +3 -3
  80. package/phone-input/esm2022/lib/directives/phone-input.directive.mjs +3 -3
  81. package/phone-input/esm2022/lib/phone-input.module.mjs +4 -4
  82. package/phone-input/esm2022/lib/pipes/phone-code.pipe.mjs +3 -3
  83. package/phone-input/fesm2022/wlcm-angular-phone-input.mjs +16 -16
  84. package/search-field/esm2022/lib/components/search-field/search-field.component.mjs +3 -3
  85. package/search-field/esm2022/lib/search-field.module.mjs +4 -4
  86. package/search-field/fesm2022/wlcm-angular-search-field.mjs +7 -7
  87. package/stepper/esm2022/lib/components/step/step.component.mjs +3 -3
  88. package/stepper/esm2022/lib/components/step-header/step-header.component.mjs +3 -3
  89. package/stepper/esm2022/lib/components/stepper/stepper.component.mjs +3 -3
  90. package/stepper/esm2022/lib/components/stepper-header/stepper-header.component.mjs +3 -3
  91. package/stepper/esm2022/lib/directives/load-on-active-step.directive.mjs +3 -3
  92. package/stepper/esm2022/lib/models/step.models.mjs +3 -3
  93. package/stepper/esm2022/lib/models/stepper.models.mjs +3 -3
  94. package/stepper/esm2022/lib/stepper.module.mjs +4 -4
  95. package/stepper/fesm2022/wlcm-angular-stepper.mjs +25 -25
  96. package/styles/components/datepicker/date-range-picker/_date-range-picker-body.scss +1 -1
  97. package/styles/components/datepicker/date-range-picker/_date-range-picker-input.scss +1 -0
  98. package/table/esm2022/lib/components/table/table.component.mjs +3 -3
  99. package/table/esm2022/lib/components/table-head/table-head.component.mjs +3 -3
  100. package/table/esm2022/lib/components/table-head-actions/table-head-actions.component.mjs +3 -3
  101. package/table/esm2022/lib/components/table-head-data/table-head-data.component.mjs +3 -3
  102. package/table/esm2022/lib/components/table-row/table-row.component.mjs +3 -3
  103. package/table/esm2022/lib/components/table-row-actions/table-row-actions.component.mjs +3 -3
  104. package/table/esm2022/lib/components/table-row-data/table-row-data.component.mjs +3 -3
  105. package/table/esm2022/lib/components/table-row-spacer/table-row-spacer.component.mjs +3 -3
  106. package/table/esm2022/lib/directives/scrollable-table-container.directive.mjs +3 -3
  107. package/table/esm2022/lib/pipes/table-row-injector.pipe.mjs +3 -3
  108. package/table/esm2022/lib/table.module.mjs +4 -4
  109. package/table/fesm2022/wlcm-angular-table.mjs +34 -34
  110. package/datepicker/esm2022/lib/components/range/date-range-picker/date-range-picker.component.mjs +0 -174
@@ -1 +1 @@
1
- {"version":3,"file":"wlcm-angular-core.mjs","sources":["../../../core/src/lib/utils/stream.utils.ts","../../../core/src/lib/utils/paginated-data-emulator.utils.ts","../../../core/src/lib/models/icon.models.ts","../../../core/src/lib/models/option.models.ts","../../../core/src/lib/constants/http.constants.ts","../../../core/src/lib/components/icons/chevron-down-icon/chevron-down-icon.component.ts","../../../core/src/lib/components/icons/chevron-down-icon/chevron-down-icon.component.html","../../../core/src/lib/components/icons/calendar-icon/calendar-icon.component.ts","../../../core/src/lib/components/icons/calendar-icon/calendar-icon.component.html","../../../core/src/lib/components/icons/search-icon/search-icon.component.ts","../../../core/src/lib/components/icons/search-icon/search-icon.component.html","../../../core/src/lib/constants/icon.contants.ts","../../../core/src/lib/services/scroll-detection.api.ts","../../../core/src/lib/directives/icon.directive.ts","../../../core/src/lib/components/icons/close-icon/close-icon.component.ts","../../../core/src/lib/components/icons/close-icon/close-icon.component.html","../../../core/src/lib/components/default-loader/default-loader.component.ts","../../../core/src/lib/components/default-loader/default-loader.component.html","../../../core/src/lib/constants/loader.constants.ts","../../../core/src/lib/components/loader/loader.component.ts","../../../core/src/lib/components/loader/loader.component.html","../../../core/src/wlcm-angular-core.ts"],"sourcesContent":["import { EventEmitter } from '@angular/core';\nimport { Subject, BehaviorSubject, Observable, finalize, Subscriber } from 'rxjs';\n\nexport class WlcmStreamUtils {\n static loadingDetector(\n subject: Subject<boolean> | BehaviorSubject<boolean> | EventEmitter<boolean>,\n ): <T>(source: Observable<T>) => Observable<T> {\n subject.next(true);\n return function <T>(source: Observable<T>): Observable<T> {\n return source.pipe(finalize(() => subject.next(false)));\n };\n }\n\n static get emptySource(): Observable<void> {\n return new Observable((subscriber: Subscriber<void>) => {\n subscriber.next();\n subscriber.complete();\n });\n }\n}\n","import { Observable, of } from 'rxjs';\nimport { WlcmPaginatedData, WlcmQueryParams } from '@wlcm/common';\n\nexport class WlcmPaginatedDataEmulator<T> {\n private data: Array<T> = [];\n\n constructor(\n count: number,\n public handler: (index: number) => T,\n ) {\n this.populateData(count);\n }\n\n load(params: WlcmQueryParams): Observable<WlcmPaginatedData<T>> {\n return of({\n currPage: params.page,\n totalPages: Math.ceil(this.data.length / params.limit),\n totalItems: this.data.length,\n data: this.data.slice((params.page - 1) * params.limit, params.page * params.limit),\n });\n }\n\n private populateData(count: number): void {\n this.data = Array.from(new Int8Array(count).fill(0)).map((_, index) => this.handler(index));\n }\n}\n","import { ComponentType } from '@angular/cdk/portal';\n\nexport enum WlcmIconName {\n SEARCH = 'SEARCH',\n CALENDAR = 'CALENDAR',\n CHEVRON_DOWN = 'CHEVRON_DOWN',\n}\n\nexport type WlcmIcons = {\n [key in WlcmIconName]: ComponentType<unknown>;\n};\n","export class WlcmOption<D = unknown> {\n constructor(\n public value: string | boolean,\n public viewValue: string,\n public data?: D,\n ) {}\n}\n\nexport class WlcmAutocompleteOption<D = unknown> extends WlcmOption<D> {\n constructor(\n public override value: string,\n public override viewValue: string,\n public searchValue: string,\n public override data?: D,\n ) {\n super(value, viewValue, data);\n }\n}\n\nexport type WlcmSelectOptionFormat = 'CompleteOption' | 'ValueOnly';\n","import { WlcmQueryParams } from '@wlcm/common';\n\nexport const DEFAULT_QUERY_PARAMS: WlcmQueryParams = {\n query: '',\n page: 1,\n limit: 10,\n};\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-chevron-down-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './chevron-down-icon.component.html',\n styleUrl: './chevron-down-icon.component.scss',\n})\nexport class ChevronDownIconComponent {}\n","<svg\n width=\"12px\"\n height=\"7px\"\n viewBox=\"0 0 12 7\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"4-Media-Library\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"4.1.0-Filter-by-type\" transform=\"translate(-303.000000, -73.000000)\">\n <g id=\"Group-7\" transform=\"translate(45.000000, 64.000000)\">\n <g id=\"Group\" transform=\"translate(258.000000, 6.000000)\">\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"12\" height=\"12\"></rect>\n <polyline\n id=\"Path\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"1 4 6 9 11 4\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n</svg>\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-calendar-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './calendar-icon.component.html',\n styleUrl: './calendar-icon.component.scss',\n})\nexport class CalendarIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"icon/date-grey\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M11,0 C11.5522847,0 12,0.44771525 12,1 L14,1 C15.1045695,1 16,1.8954305 16,3 L16,14 C16,15.1045695 15.1045695,16 14,16 L2,16 C0.8954305,16 0,15.1045695 0,14 L0,3 C0,1.8954305 0.8954305,1 2,1 L4,1 C4,0.44771525 4.44771525,0 5,0 C5.55228475,0 6,0.44771525 6,1 L10,1 C10,0.44771525 10.4477153,0 11,0 Z M14,7 L2,7 L2,14 L14,14 L14,7 Z M4,3 L2,3 L2,5 L14,5 L14,3 L12,3 C12,3.55228475 11.5522847,4 11,4 C10.4477153,4 10,3.55228475 10,3 L6,3 C6,3.55228475 5.55228475,4 5,4 C4.44771525,4 4,3.55228475 4,3 Z\"\n id=\"Combined-Shape\"\n fill=\"#8E9498\"\n fill-rule=\"nonzero\"\n ></path>\n <rect\n id=\"Rectangle\"\n fill=\"#8E9498\"\n x=\"9\"\n y=\"9\"\n width=\"3\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n </g>\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-search-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './search-icon.component.html',\n styleUrls: ['./search-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SearchIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n style=\"display: block\"\n>\n <g\n id=\"icons/search\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M7,0 C10.8659932,0 14,3.13400675 14,7 C14,8.57234957 13.4815869,10.0236173 12.6063605,11.1922034 L15.1213203,13.7071068 C15.5118446,14.0976311 15.5118446,14.7307961 15.1213203,15.1213203 C14.7307961,15.5118446 14.0976311,15.5118446 13.7071068,15.1213203 L11.1922034,12.6063605 C10.0236173,13.4815869 8.57234957,14 7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 Z M7,2 C4.23857625,2 2,4.23857625 2,7 C2,9.76142375 4.23857625,12 7,12 C9.76142375,12 12,9.76142375 12,7 C12,4.23857625 9.76142375,2 7,2 Z\"\n id=\"Combined-Shape\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n ></path>\n </g>\n</svg>\n","import { InjectionToken } from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { ChevronDownIconComponent } from '../components/icons/chevron-down-icon/chevron-down-icon.component';\nimport { CalendarIconComponent } from '../components/icons/calendar-icon/calendar-icon.component';\nimport { SearchIconComponent } from '../components/icons/search-icon/search-icon.component';\n\nexport const DEFAULT_WLCM_ICONS: WlcmIcons = {\n [WlcmIconName.SEARCH]: SearchIconComponent,\n [WlcmIconName.CALENDAR]: CalendarIconComponent,\n [WlcmIconName.CHEVRON_DOWN]: ChevronDownIconComponent,\n};\n\nexport const WLCM_ICONS: InjectionToken<WlcmIcons> = new InjectionToken('WLCM_ICONS', {\n providedIn: 'root',\n factory: () => DEFAULT_WLCM_ICONS,\n});\n","import { Injectable } from '@angular/core';\nimport { Observable, filter, fromEvent } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class ScrollDetectionApi {\n onScrolledDown(element: HTMLElement): Observable<Event> {\n let scrollHeight: number = 0;\n\n let scrollHeightChanged: boolean = false;\n\n return fromEvent(element, 'scroll').pipe(\n filter(() => {\n if (scrollHeight !== element.scrollHeight) {\n scrollHeight = element.scrollHeight;\n\n scrollHeightChanged = true;\n }\n\n if (element.scrollHeight * 0.8 <= element.scrollTop + element.clientHeight && scrollHeightChanged) {\n scrollHeightChanged = false;\n\n return true;\n }\n\n return false;\n }),\n );\n }\n}\n","import {\n ComponentRef,\n Directive,\n Inject,\n InputSignal,\n OnInit,\n OutputEmitterRef,\n ViewContainerRef,\n input,\n output,\n} from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { WLCM_ICONS } from '../constants/icon.contants';\nimport { ComponentType } from '@angular/cdk/portal';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { fromEvent } from 'rxjs';\n\n@UntilDestroy()\n@Directive({\n selector: '[wlcmIcon]',\n standalone: true,\n})\nexport class WlcmIconDirective implements OnInit {\n name: InputSignal<WlcmIconName> = input.required({ alias: 'wlcmIcon' });\n\n stopPropagation: InputSignal<boolean> = input(false, { alias: 'wlcmIconStopPropagation' });\n\n clicked: OutputEmitterRef<MouseEvent> = output({ alias: 'wlcmIconClicked' });\n\n constructor(@Inject(WLCM_ICONS) private icons: WlcmIcons, private viewContainer: ViewContainerRef) {}\n\n ngOnInit(): void {\n const component: ComponentType<unknown> = this.icons[this.name()];\n\n if (component) {\n const ref: ComponentRef<unknown> = this.viewContainer.createComponent(component);\n\n this.handleClick(ref);\n }\n }\n\n private handleClick = (ref: ComponentRef<unknown>) => {\n fromEvent(ref.location.nativeElement, 'click', (event: MouseEvent) => event)\n .pipe(untilDestroyed(this))\n .subscribe((event: MouseEvent) => {\n if (this.stopPropagation()) event.stopPropagation();\n\n this.clicked.emit(event);\n });\n };\n}\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-close-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './close-icon.component.html',\n styleUrl: './close-icon.component.scss',\n})\nexport class CloseIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"2-User-Management\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n id=\"2.0.1-Export-users-two-filters\"\n transform=\"translate(-310.000000, -54.000000)\"\n >\n <g id=\"icons/close\" transform=\"translate(310.000000, 54.000000)\">\n <rect\n id=\"Rectangle\"\n fill=\"#EDF0F3\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n rx=\"4\"\n ></rect>\n <path\n d=\"M12,4 L4,12 M4,4 L12,12\"\n id=\"Combined-Shape\"\n stroke=\"#4A5056\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n ></path>\n </g>\n </g>\n </g>\n</svg>\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-default-loader',\n host: { class: 'wlcm-default-loader' },\n standalone: true,\n imports: [CommonModule],\n templateUrl: './default-loader.component.html',\n styleUrl: './default-loader.component.scss',\n})\nexport class WlcmDefaultLoaderComponent {}\n","<div class=\"spinner center\">\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n</div>\n","import { InjectionToken, Type } from '@angular/core';\nimport { WlcmDefaultLoaderComponent } from '../components/default-loader/default-loader.component';\n\nexport const WLCM_LOADER_COMPONENT: InjectionToken<Type<unknown>> = new InjectionToken('WLCM_LOADER_COMPONENT', {\n providedIn: 'root',\n factory: () => WlcmDefaultLoaderComponent,\n});\n","import {\n Component,\n HostBinding,\n Inject,\n InputSignal,\n Signal,\n Type,\n ViewContainerRef,\n effect,\n input,\n viewChild,\n} from '@angular/core';\nimport { WLCM_LOADER_COMPONENT } from '../../constants/loader.constants';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-loader',\n host: { class: 'wlcm-loader' },\n standalone: true,\n imports: [CommonModule],\n templateUrl: './loader.component.html',\n styleUrl: './loader.component.scss',\n})\nexport class WlcmLoaderComponent {\n hidden: InputSignal<boolean> = input(false);\n\n container: Signal<ViewContainerRef | undefined> = viewChild('container', { read: ViewContainerRef });\n\n @HostBinding('class.wlcm-loader-hidden') get isHidden() {\n return this.hidden();\n }\n\n constructor(@Inject(WLCM_LOADER_COMPONENT) private loaderComponent: Type<unknown>) {\n effect(() => {\n if (!this.container()) return;\n\n this.container()!.createComponent(this.loaderComponent);\n });\n }\n}\n","<div class=\"wlcm-loader-container\">\n <ng-container #container></ng-container>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAGa,eAAe,CAAA;IAC1B,OAAO,eAAe,CACpB,OAA4E,EAAA;AAE5E,QAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnB,QAAA,OAAO,UAAa,MAAqB,EAAA;AACvC,YAAA,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1D,SAAC,CAAC;KACH;AAED,IAAA,WAAW,WAAW,GAAA;AACpB,QAAA,OAAO,IAAI,UAAU,CAAC,CAAC,UAA4B,KAAI;YACrD,UAAU,CAAC,IAAI,EAAE,CAAC;YAClB,UAAU,CAAC,QAAQ,EAAE,CAAC;AACxB,SAAC,CAAC,CAAC;KACJ;AACF;;MChBY,yBAAyB,CAAA;IAGpC,WACE,CAAA,KAAa,EACN,OAA6B,EAAA;QAA7B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAsB;QAJ9B,IAAI,CAAA,IAAA,GAAa,EAAE,CAAC;AAM1B,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KAC1B;AAED,IAAA,IAAI,CAAC,MAAuB,EAAA;AAC1B,QAAA,OAAO,EAAE,CAAC;YACR,QAAQ,EAAE,MAAM,CAAC,IAAI;AACrB,YAAA,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;AACtD,YAAA,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;AACpF,SAAA,CAAC,CAAC;KACJ;AAEO,IAAA,YAAY,CAAC,KAAa,EAAA;AAChC,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;KAC7F;AACF;;ICvBW,aAIX;AAJD,CAAA,UAAY,YAAY,EAAA;AACtB,IAAA,YAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,YAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,YAAA,CAAA,cAAA,CAAA,GAAA,cAA6B,CAAA;AAC/B,CAAC,EAJW,YAAY,KAAZ,YAAY,GAIvB,EAAA,CAAA,CAAA;;MCNY,UAAU,CAAA;AACrB,IAAA,WAAA,CACS,KAAuB,EACvB,SAAiB,EACjB,IAAQ,EAAA;QAFR,IAAK,CAAA,KAAA,GAAL,KAAK,CAAkB;QACvB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAQ;QACjB,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAI;KACb;AACL,CAAA;AAEK,MAAO,sBAAoC,SAAQ,UAAa,CAAA;AACpE,IAAA,WAAA,CACkB,KAAa,EACb,SAAiB,EAC1B,WAAmB,EACV,IAAQ,EAAA;AAExB,QAAA,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QALd,IAAK,CAAA,KAAA,GAAL,KAAK,CAAQ;QACb,IAAS,CAAA,SAAA,GAAT,SAAS,CAAQ;QAC1B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAQ;QACV,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAI;KAGzB;AACF;;ACfY,MAAA,oBAAoB,GAAoB;AACnD,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,IAAI,EAAE,CAAC;AACP,IAAA,KAAK,EAAE,EAAE;;;MCKE,wBAAwB,CAAA;8GAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVrC,g6BAgCA,EAAA,MAAA,EAAA,CAAA,gDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1BY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,EACtB,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,g6BAAA,EAAA,MAAA,EAAA,CAAA,gDAAA,CAAA,EAAA,CAAA;;;MEIZ,qBAAqB,CAAA;8GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVlC,6pCAiCA,EAAA,MAAA,EAAA,CAAA,+DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED3BY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAPjC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EAClB,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,6pCAAA,EAAA,MAAA,EAAA,CAAA,+DAAA,CAAA,EAAA,CAAA;;;MEKZ,mBAAmB,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECXhC,ojCAyBA,EAAA,MAAA,EAAA,CAAA,sCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDnBY,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAKX,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;+BACE,kBAAkB,EAAA,UAAA,EAChB,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,eAAA,EAGN,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,ojCAAA,EAAA,MAAA,EAAA,CAAA,sCAAA,CAAA,EAAA,CAAA;;;AEHpC,MAAA,kBAAkB,GAAc;AAC3C,IAAA,CAAC,YAAY,CAAC,MAAM,GAAG,mBAAmB;AAC1C,IAAA,CAAC,YAAY,CAAC,QAAQ,GAAG,qBAAqB;AAC9C,IAAA,CAAC,YAAY,CAAC,YAAY,GAAG,wBAAwB;EACrD;MAEW,UAAU,GAA8B,IAAI,cAAc,CAAC,YAAY,EAAE;AACpF,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,kBAAkB;AAClC,CAAA;;MCXY,kBAAkB,CAAA;AAC7B,IAAA,cAAc,CAAC,OAAoB,EAAA;QACjC,IAAI,YAAY,GAAW,CAAC,CAAC;QAE7B,IAAI,mBAAmB,GAAY,KAAK,CAAC;AAEzC,QAAA,OAAO,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,CACtC,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,YAAY,KAAK,OAAO,CAAC,YAAY,EAAE;AACzC,gBAAA,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;gBAEpC,mBAAmB,GAAG,IAAI,CAAC;aAC5B;AAED,YAAA,IAAI,OAAO,CAAC,YAAY,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY,IAAI,mBAAmB,EAAE;gBACjG,mBAAmB,GAAG,KAAK,CAAC;AAE5B,gBAAA,OAAO,IAAI,CAAC;aACb;AAED,YAAA,OAAO,KAAK,CAAC;SACd,CAAC,CACH,CAAC;KACH;8GAvBU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cADL,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;ACmBrB,IAAA,iBAAiB,GAAvB,MAAM,iBAAiB,CAAA;IAO5B,WAAwC,CAAA,KAAgB,EAAU,aAA+B,EAAA;QAAzD,IAAK,CAAA,KAAA,GAAL,KAAK,CAAW;QAAU,IAAa,CAAA,aAAA,GAAb,aAAa,CAAkB;QANjG,IAAI,CAAA,IAAA,GAA8B,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAExE,IAAe,CAAA,eAAA,GAAyB,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;QAE3F,IAAO,CAAA,OAAA,GAAiC,MAAM,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;AAcrE,QAAA,IAAA,CAAA,WAAW,GAAG,CAAC,GAA0B,KAAI;AACnD,YAAA,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC,KAAiB,KAAK,KAAK,CAAC;AACzE,iBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;AAC1B,iBAAA,SAAS,CAAC,CAAC,KAAiB,KAAI;gBAC/B,IAAI,IAAI,CAAC,eAAe,EAAE;oBAAE,KAAK,CAAC,eAAe,EAAE,CAAC;AAEpD,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,aAAC,CAAC,CAAC;AACP,SAAC,CAAC;KApBmG;IAErG,QAAQ,GAAA;QACN,MAAM,SAAS,GAA2B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAElE,IAAI,SAAS,EAAE;YACb,MAAM,GAAG,GAA0B,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;AAEjF,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;SACvB;KACF;AAjBU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,kBAOR,UAAU,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAPnB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;AAAjB,iBAAiB,GAAA,UAAA,CAAA;AAL7B,IAAA,YAAY,EAAE;6CAYoE,gBAAgB,CAAA,CAAA;AAPtF,CAAA,EAAA,iBAAiB,CA4B7B,CAAA;2FA5BY,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;;0BAQc,MAAM;2BAAC,UAAU,CAAA;;;MCnBnB,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECV/B,86BAwCA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDlCY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAP9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EACf,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,86BAAA,EAAA,CAAA;;;MEKZ,0BAA0B,CAAA;8GAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECXvC,8fAcA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDPY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBARtC,SAAS;+BACE,qBAAqB,EAAA,IAAA,EACzB,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAA,UAAA,EAC1B,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,8fAAA,EAAA,CAAA;;;AEJlB,MAAM,qBAAqB,GAAkC,IAAI,cAAc,CAAC,uBAAuB,EAAE;AAC9G,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,0BAA0B;AAC1C,CAAA,CAAC;;MCiBW,mBAAmB,CAAA;AAK9B,IAAA,IAA6C,QAAQ,GAAA;AACnD,QAAA,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;KACtB;AAED,IAAA,WAAA,CAAmD,eAA8B,EAAA;QAA9B,IAAe,CAAA,eAAA,GAAf,eAAe,CAAe;AARjF,QAAA,IAAA,CAAA,MAAM,GAAyB,KAAK,CAAC,KAAK,CAAC,CAAC;QAE5C,IAAS,CAAA,SAAA,GAAyC,SAAS,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAOnG,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBAAE,OAAO;YAE9B,IAAI,CAAC,SAAS,EAAG,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC1D,SAAC,CAAC,CAAC;KACJ;AAfU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,kBASV,qBAAqB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAT9B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EAGmD,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,0BAAA,EAAA,eAAA,EAAA,EAAA,cAAA,EAAA,aAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,gBAAgB,EC1BnG,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,6FAGA,yDDgBY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;+BACE,aAAa,EAAA,IAAA,EACjB,EAAE,KAAK,EAAE,aAAa,EAAE,EAAA,UAAA,EAClB,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,6FAAA,EAAA,CAAA;;0BAaV,MAAM;2BAAC,qBAAqB,CAAA;yCAJI,QAAQ,EAAA,CAAA;sBAApD,WAAW;uBAAC,0BAA0B,CAAA;;;AE5BzC;;AAEG;;;;"}
1
+ {"version":3,"file":"wlcm-angular-core.mjs","sources":["../../../core/src/lib/utils/stream.utils.ts","../../../core/src/lib/utils/paginated-data-emulator.utils.ts","../../../core/src/lib/models/icon.models.ts","../../../core/src/lib/models/option.models.ts","../../../core/src/lib/constants/http.constants.ts","../../../core/src/lib/components/icons/chevron-down-icon/chevron-down-icon.component.ts","../../../core/src/lib/components/icons/chevron-down-icon/chevron-down-icon.component.html","../../../core/src/lib/components/icons/calendar-icon/calendar-icon.component.ts","../../../core/src/lib/components/icons/calendar-icon/calendar-icon.component.html","../../../core/src/lib/components/icons/search-icon/search-icon.component.ts","../../../core/src/lib/components/icons/search-icon/search-icon.component.html","../../../core/src/lib/constants/icon.contants.ts","../../../core/src/lib/services/scroll-detection.api.ts","../../../core/src/lib/directives/icon.directive.ts","../../../core/src/lib/components/icons/close-icon/close-icon.component.ts","../../../core/src/lib/components/icons/close-icon/close-icon.component.html","../../../core/src/lib/components/default-loader/default-loader.component.ts","../../../core/src/lib/components/default-loader/default-loader.component.html","../../../core/src/lib/constants/loader.constants.ts","../../../core/src/lib/components/loader/loader.component.ts","../../../core/src/lib/components/loader/loader.component.html","../../../core/src/wlcm-angular-core.ts"],"sourcesContent":["import { EventEmitter } from '@angular/core';\nimport { Subject, BehaviorSubject, Observable, finalize, Subscriber } from 'rxjs';\n\nexport class WlcmStreamUtils {\n static loadingDetector(\n subject: Subject<boolean> | BehaviorSubject<boolean> | EventEmitter<boolean>,\n ): <T>(source: Observable<T>) => Observable<T> {\n subject.next(true);\n return function <T>(source: Observable<T>): Observable<T> {\n return source.pipe(finalize(() => subject.next(false)));\n };\n }\n\n static get emptySource(): Observable<void> {\n return new Observable((subscriber: Subscriber<void>) => {\n subscriber.next();\n subscriber.complete();\n });\n }\n}\n","import { Observable, of } from 'rxjs';\nimport { WlcmPaginatedData, WlcmQueryParams } from '@wlcm/common';\n\nexport class WlcmPaginatedDataEmulator<T> {\n private data: Array<T> = [];\n\n constructor(\n count: number,\n public handler: (index: number) => T,\n ) {\n this.populateData(count);\n }\n\n load(params: WlcmQueryParams): Observable<WlcmPaginatedData<T>> {\n return of({\n currPage: params.page,\n totalPages: Math.ceil(this.data.length / params.limit),\n totalItems: this.data.length,\n data: this.data.slice((params.page - 1) * params.limit, params.page * params.limit),\n });\n }\n\n private populateData(count: number): void {\n this.data = Array.from(new Int8Array(count).fill(0)).map((_, index) => this.handler(index));\n }\n}\n","import { ComponentType } from '@angular/cdk/portal';\n\nexport enum WlcmIconName {\n SEARCH = 'SEARCH',\n CALENDAR = 'CALENDAR',\n CHEVRON_DOWN = 'CHEVRON_DOWN',\n}\n\nexport type WlcmIcons = {\n [key in WlcmIconName]: ComponentType<unknown>;\n};\n","export class WlcmOption<D = unknown> {\n constructor(\n public value: string | boolean,\n public viewValue: string,\n public data?: D,\n ) {}\n}\n\nexport class WlcmAutocompleteOption<D = unknown> extends WlcmOption<D> {\n constructor(\n public override value: string,\n public override viewValue: string,\n public searchValue: string,\n public override data?: D,\n ) {\n super(value, viewValue, data);\n }\n}\n\nexport type WlcmSelectOptionFormat = 'CompleteOption' | 'ValueOnly';\n","import { WlcmQueryParams } from '@wlcm/common';\n\nexport const DEFAULT_QUERY_PARAMS: WlcmQueryParams = {\n query: '',\n page: 1,\n limit: 10,\n};\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-chevron-down-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './chevron-down-icon.component.html',\n styleUrl: './chevron-down-icon.component.scss',\n})\nexport class ChevronDownIconComponent {}\n","<svg\n width=\"12px\"\n height=\"7px\"\n viewBox=\"0 0 12 7\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"4-Media-Library\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"4.1.0-Filter-by-type\" transform=\"translate(-303.000000, -73.000000)\">\n <g id=\"Group-7\" transform=\"translate(45.000000, 64.000000)\">\n <g id=\"Group\" transform=\"translate(258.000000, 6.000000)\">\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"12\" height=\"12\"></rect>\n <polyline\n id=\"Path\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"1 4 6 9 11 4\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n</svg>\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-calendar-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './calendar-icon.component.html',\n styleUrl: './calendar-icon.component.scss',\n})\nexport class CalendarIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"icon/date-grey\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M11,0 C11.5522847,0 12,0.44771525 12,1 L14,1 C15.1045695,1 16,1.8954305 16,3 L16,14 C16,15.1045695 15.1045695,16 14,16 L2,16 C0.8954305,16 0,15.1045695 0,14 L0,3 C0,1.8954305 0.8954305,1 2,1 L4,1 C4,0.44771525 4.44771525,0 5,0 C5.55228475,0 6,0.44771525 6,1 L10,1 C10,0.44771525 10.4477153,0 11,0 Z M14,7 L2,7 L2,14 L14,14 L14,7 Z M4,3 L2,3 L2,5 L14,5 L14,3 L12,3 C12,3.55228475 11.5522847,4 11,4 C10.4477153,4 10,3.55228475 10,3 L6,3 C6,3.55228475 5.55228475,4 5,4 C4.44771525,4 4,3.55228475 4,3 Z\"\n id=\"Combined-Shape\"\n fill=\"#8E9498\"\n fill-rule=\"nonzero\"\n ></path>\n <rect\n id=\"Rectangle\"\n fill=\"#8E9498\"\n x=\"9\"\n y=\"9\"\n width=\"3\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n </g>\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-search-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './search-icon.component.html',\n styleUrls: ['./search-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SearchIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n style=\"display: block\"\n>\n <g\n id=\"icons/search\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M7,0 C10.8659932,0 14,3.13400675 14,7 C14,8.57234957 13.4815869,10.0236173 12.6063605,11.1922034 L15.1213203,13.7071068 C15.5118446,14.0976311 15.5118446,14.7307961 15.1213203,15.1213203 C14.7307961,15.5118446 14.0976311,15.5118446 13.7071068,15.1213203 L11.1922034,12.6063605 C10.0236173,13.4815869 8.57234957,14 7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 Z M7,2 C4.23857625,2 2,4.23857625 2,7 C2,9.76142375 4.23857625,12 7,12 C9.76142375,12 12,9.76142375 12,7 C12,4.23857625 9.76142375,2 7,2 Z\"\n id=\"Combined-Shape\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n ></path>\n </g>\n</svg>\n","import { InjectionToken } from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { ChevronDownIconComponent } from '../components/icons/chevron-down-icon/chevron-down-icon.component';\nimport { CalendarIconComponent } from '../components/icons/calendar-icon/calendar-icon.component';\nimport { SearchIconComponent } from '../components/icons/search-icon/search-icon.component';\n\nexport const DEFAULT_WLCM_ICONS: WlcmIcons = {\n [WlcmIconName.SEARCH]: SearchIconComponent,\n [WlcmIconName.CALENDAR]: CalendarIconComponent,\n [WlcmIconName.CHEVRON_DOWN]: ChevronDownIconComponent,\n};\n\nexport const WLCM_ICONS: InjectionToken<WlcmIcons> = new InjectionToken('WLCM_ICONS', {\n providedIn: 'root',\n factory: () => DEFAULT_WLCM_ICONS,\n});\n","import { Injectable, NgZone } from '@angular/core';\nimport { Observable, filter, fromEvent, Subject, takeUntil, Subscriber } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class ScrollDetectionApi {\n constructor(private zone: NgZone) {}\n\n onScrolledDown(element: HTMLElement, threshold = 0.8): Observable<Event> {\n let lastScrollHeight = 0,\n scrollHeightChanged = false;\n\n return new Observable<Event>((subscriber: Subscriber<Event>) => {\n const destroy$ = new Subject<void>();\n\n this.zone.runOutsideAngular(() => {\n fromEvent(element, 'scroll')\n .pipe(\n takeUntil(destroy$),\n filter(() => {\n const currentScrollHeight: number = element.scrollHeight;\n\n if (currentScrollHeight !== lastScrollHeight) {\n lastScrollHeight = currentScrollHeight;\n\n scrollHeightChanged = true;\n }\n\n const scrolledRatio: number = (element.scrollTop + element.clientHeight) / currentScrollHeight;\n\n if (scrollHeightChanged && scrolledRatio >= threshold) {\n scrollHeightChanged = false;\n\n return true;\n }\n\n return false;\n }),\n )\n .subscribe((event: Event) => this.zone.run(() => subscriber.next(event)));\n });\n\n return () => destroy$.next();\n });\n }\n}\n","import {\n ComponentRef,\n Directive,\n Inject,\n InputSignal,\n OnInit,\n OutputEmitterRef,\n ViewContainerRef,\n input,\n output,\n} from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { WLCM_ICONS } from '../constants/icon.contants';\nimport { ComponentType } from '@angular/cdk/portal';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { fromEvent } from 'rxjs';\n\n@UntilDestroy()\n@Directive({\n selector: '[wlcmIcon]',\n standalone: true,\n})\nexport class WlcmIconDirective implements OnInit {\n name: InputSignal<WlcmIconName> = input.required({ alias: 'wlcmIcon' });\n\n stopPropagation: InputSignal<boolean> = input(false, { alias: 'wlcmIconStopPropagation' });\n\n clicked: OutputEmitterRef<MouseEvent> = output({ alias: 'wlcmIconClicked' });\n\n constructor(@Inject(WLCM_ICONS) private icons: WlcmIcons, private viewContainer: ViewContainerRef) {}\n\n ngOnInit(): void {\n const component: ComponentType<unknown> = this.icons[this.name()];\n\n if (component) {\n const ref: ComponentRef<unknown> = this.viewContainer.createComponent(component);\n\n this.handleClick(ref);\n }\n }\n\n private handleClick = (ref: ComponentRef<unknown>) => {\n fromEvent(ref.location.nativeElement, 'click', (event: MouseEvent) => event)\n .pipe(untilDestroyed(this))\n .subscribe((event: MouseEvent) => {\n if (this.stopPropagation()) event.stopPropagation();\n\n this.clicked.emit(event);\n });\n };\n}\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-close-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './close-icon.component.html',\n styleUrl: './close-icon.component.scss',\n})\nexport class CloseIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"2-User-Management\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n id=\"2.0.1-Export-users-two-filters\"\n transform=\"translate(-310.000000, -54.000000)\"\n >\n <g id=\"icons/close\" transform=\"translate(310.000000, 54.000000)\">\n <rect\n id=\"Rectangle\"\n fill=\"#EDF0F3\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n rx=\"4\"\n ></rect>\n <path\n d=\"M12,4 L4,12 M4,4 L12,12\"\n id=\"Combined-Shape\"\n stroke=\"#4A5056\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n ></path>\n </g>\n </g>\n </g>\n</svg>\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-default-loader',\n host: { class: 'wlcm-default-loader' },\n standalone: true,\n imports: [CommonModule],\n templateUrl: './default-loader.component.html',\n styleUrl: './default-loader.component.scss',\n})\nexport class WlcmDefaultLoaderComponent {}\n","<div class=\"spinner center\">\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n <div class=\"spinner-blade\"></div>\n</div>\n","import { InjectionToken, Type } from '@angular/core';\nimport { WlcmDefaultLoaderComponent } from '../components/default-loader/default-loader.component';\n\nexport const WLCM_LOADER_COMPONENT: InjectionToken<Type<unknown>> = new InjectionToken('WLCM_LOADER_COMPONENT', {\n providedIn: 'root',\n factory: () => WlcmDefaultLoaderComponent,\n});\n","import {\n Component,\n HostBinding,\n Inject,\n InputSignal,\n Signal,\n Type,\n ViewContainerRef,\n effect,\n input,\n viewChild,\n} from '@angular/core';\nimport { WLCM_LOADER_COMPONENT } from '../../constants/loader.constants';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-loader',\n host: { class: 'wlcm-loader' },\n standalone: true,\n imports: [CommonModule],\n templateUrl: './loader.component.html',\n styleUrl: './loader.component.scss',\n})\nexport class WlcmLoaderComponent {\n hidden: InputSignal<boolean> = input(false);\n\n container: Signal<ViewContainerRef | undefined> = viewChild('container', { read: ViewContainerRef });\n\n @HostBinding('class.wlcm-loader-hidden') get isHidden() {\n return this.hidden();\n }\n\n constructor(@Inject(WLCM_LOADER_COMPONENT) private loaderComponent: Type<unknown>) {\n effect(() => {\n if (!this.container()) return;\n\n this.container()!.createComponent(this.loaderComponent);\n });\n }\n}\n","<div class=\"wlcm-loader-container\">\n <ng-container #container></ng-container>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
+ import { NgZone } from '@angular/core';
1
2
  import { Observable } from 'rxjs';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class ScrollDetectionApi {
4
- onScrolledDown(element: HTMLElement): Observable<Event>;
5
+ private zone;
6
+ constructor(zone: NgZone);
7
+ onScrolledDown(element: HTMLElement, threshold?: number): Observable<Event>;
5
8
  static ɵfac: i0.ɵɵFactoryDeclaration<ScrollDetectionApi, never>;
6
9
  static ɵprov: i0.ɵɵInjectableDeclaration<ScrollDetectionApi>;
7
10
  }
@@ -1,11 +1,14 @@
1
1
  export { WlcmDateRangePickerInputComponent } from './lib/components/range/date-range-picker-input/date-range-picker-input.component';
2
+ export { DoubleCalendarRangePickerComponent } from './lib/components/range/double-calendar-range-picker/double-calendar-range-picker.component';
3
+ export { SingleCalendarRangePickerComponent } from './lib/components/range/single-calendar-range-picker/single-calendar-range-picker.component';
2
4
  export { WlcmDatepickerInputContainerComponent } from './lib/components/single/datepicker-input-container/datepicker-input-container.component';
3
5
  export { DateRangePickerInputEndDirective } from './lib/directives/ragne/date-range-picker-input-end.directive';
4
6
  export { DateRangePickerInputStartDirective } from './lib/directives/ragne/date-range-picker-input-start.directive';
5
7
  export { WlcmDatepickerInputDirective } from './lib/directives/single/datepicker-input.directive';
6
- export { WlcmDateRangeValidation } from './lib/models/range/date-range-validation.models';
7
8
  export { WlcmDateRangeInputValidator } from './lib/utils/range/date-range-input.validators';
9
+ export { WlcmDateRangeValidation } from './lib/models/range/date-range-validation.models';
10
+ export { WlcmDateRangePicker } from './lib/models/range/date-range-picker.models';
8
11
  export { WlcmDateValidation } from './lib/models/date-picker.models';
9
12
  export { WlcmDatepickerModule } from './lib/datepicker.module';
10
13
  export { WLCM_DATEPICKER_CONFIG } from './lib/constants/datepicker.constants';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGtGQUFrRixDQUFDO0FBQ3JJLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgV2xjbURhdGVSYW5nZVBpY2tlcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJJbnB1dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2luZ2xlL2RhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyL2RhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJJbnB1dEVuZERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcmFnbmUvZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtZW5kLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJJbnB1dFN0YXJ0RGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9yYWduZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1zdGFydC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2luZ2xlL2RhdGVwaWNrZXItaW5wdXQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFdsY21EYXRlUmFuZ2VWYWxpZGF0aW9uIH0gZnJvbSAnLi9saWIvbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtdmFsaWRhdGlvbi5tb2RlbHMnO1xuZXhwb3J0IHsgV2xjbURhdGVSYW5nZUlucHV0VmFsaWRhdG9yIH0gZnJvbSAnLi9saWIvdXRpbHMvcmFuZ2UvZGF0ZS1yYW5nZS1pbnB1dC52YWxpZGF0b3JzJztcbmV4cG9ydCB7IFdsY21EYXRlVmFsaWRhdGlvbiB9IGZyb20gJy4vbGliL21vZGVscy9kYXRlLXBpY2tlci5tb2RlbHMnO1xuXG5leHBvcnQgeyBXbGNtRGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJy4vbGliL2RhdGVwaWNrZXIubW9kdWxlJztcblxuZXhwb3J0IHsgV0xDTV9EQVRFUElDS0VSX0NPTkZJRyB9IGZyb20gJy4vbGliL2NvbnN0YW50cy9kYXRlcGlja2VyLmNvbnN0YW50cyc7XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGtGQUFrRixDQUFDO0FBQ3JJLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDRGQUE0RixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDRGQUE0RixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgV2xjbURhdGVSYW5nZVBpY2tlcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0IHsgRG91YmxlQ2FsZW5kYXJSYW5nZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmFuZ2UvZG91YmxlLWNhbGVuZGFyLXJhbmdlLXBpY2tlci9kb3VibGUtY2FsZW5kYXItcmFuZ2UtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBTaW5nbGVDYWxlbmRhclJhbmdlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYW5nZS9zaW5nbGUtY2FsZW5kYXItcmFuZ2UtcGlja2VyL3NpbmdsZS1jYWxlbmRhci1yYW5nZS1waWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCB7IFdsY21EYXRlcGlja2VySW5wdXRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NpbmdsZS9kYXRlcGlja2VyLWlucHV0LWNvbnRhaW5lci9kYXRlcGlja2VyLWlucHV0LWNvbnRhaW5lci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGF0ZVJhbmdlUGlja2VySW5wdXRFbmREaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3JhZ25lL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LWVuZC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGF0ZVJhbmdlUGlja2VySW5wdXRTdGFydERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcmFnbmUvZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtc3RhcnQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFdsY21EYXRlcGlja2VySW5wdXREaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3NpbmdsZS9kYXRlcGlja2VyLWlucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBXbGNtRGF0ZVJhbmdlSW5wdXRWYWxpZGF0b3IgfSBmcm9tICcuL2xpYi91dGlscy9yYW5nZS9kYXRlLXJhbmdlLWlucHV0LnZhbGlkYXRvcnMnO1xuZXhwb3J0IHsgV2xjbURhdGVSYW5nZVZhbGlkYXRpb24gfSBmcm9tICcuL2xpYi9tb2RlbHMvcmFuZ2UvZGF0ZS1yYW5nZS12YWxpZGF0aW9uLm1vZGVscyc7XG5leHBvcnQgeyBXbGNtRGF0ZVJhbmdlUGlja2VyIH0gZnJvbSAnLi9saWIvbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLm1vZGVscyc7XG5leHBvcnQgeyBXbGNtRGF0ZVZhbGlkYXRpb24gfSBmcm9tICcuL2xpYi9tb2RlbHMvZGF0ZS1waWNrZXIubW9kZWxzJztcblxuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICcuL2xpYi9kYXRlcGlja2VyLm1vZHVsZSc7XG5cbmV4cG9ydCB7IFdMQ01fREFURVBJQ0tFUl9DT05GSUcgfSBmcm9tICcuL2xpYi9jb25zdGFudHMvZGF0ZXBpY2tlci5jb25zdGFudHMnO1xuIl19
@@ -45,10 +45,10 @@ export class WlcmCalendarHeaderComponent {
45
45
  get periodLabel() {
46
46
  return this.dateAdapter.format(this.calendar.activeDate, this.dateFormats.display.monthYearLabel);
47
47
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmCalendarHeaderComponent, deps: [{ token: i1.DateAdapter }, { token: MAT_DATE_FORMATS, optional: true }, { token: forwardRef(() => MatCalendar) }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: WlcmCalendarHeaderComponent, isStandalone: true, selector: "wlcm-calendar-header", inputs: { next: { classPropertyName: "next", publicName: "next", isSignal: true, isRequired: false, transformFunction: null }, previous: { classPropertyName: "previous", publicName: "previous", isSignal: true, isRequired: false, transformFunction: null }, disableLeftArrow: { classPropertyName: "disableLeftArrow", publicName: "disableLeftArrow", isSignal: true, isRequired: false, transformFunction: null }, disableRightArrow: { classPropertyName: "disableRightArrow", publicName: "disableRightArrow", isSignal: true, isRequired: false, transformFunction: null }, displayLeftArrow: { classPropertyName: "displayLeftArrow", publicName: "displayLeftArrow", isSignal: true, isRequired: false, transformFunction: null }, displayRightArrow: { classPropertyName: "displayRightArrow", publicName: "displayRightArrow", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "wlcm-calendar-header" }, ngImport: i0, template: "<div class=\"wlcm-calendar-header-button-container\">\n @if (displayLeftArrow()) {\n <button\n class=\"wlcm-calendar-header-button wlcm-calendar-header-button-left\"\n [disabled]=\"disableLeftArrow()\"\n (click)=\"previousClicked()\"\n >\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n </button>\n }\n</div>\n\n<button\n class=\"wlcm-calendar-header-change-view-button\"\n (click)=\"changeCalendarView()\"\n>\n <div class=\"wlcm-calendar-header-period-label\">\n {{ periodLabel }}\n </div>\n\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n</button>\n\n<div class=\"wlcm-calendar-header-button-container\">\n @if (displayRightArrow()) {\n <button\n class=\"wlcm-calendar-header-button wlcm-calendar-header-button-right\"\n [disabled]=\"disableRightArrow()\"\n (click)=\"nextClicked()\"\n >\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n </button>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: WlcmIconDirective, selector: "[wlcmIcon]", inputs: ["wlcmIcon", "wlcmIconStopPropagation"], outputs: ["wlcmIconClicked"] }] }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmCalendarHeaderComponent, deps: [{ token: i1.DateAdapter }, { token: MAT_DATE_FORMATS, optional: true }, { token: forwardRef(() => MatCalendar) }], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: WlcmCalendarHeaderComponent, isStandalone: true, selector: "wlcm-calendar-header", inputs: { next: { classPropertyName: "next", publicName: "next", isSignal: true, isRequired: false, transformFunction: null }, previous: { classPropertyName: "previous", publicName: "previous", isSignal: true, isRequired: false, transformFunction: null }, disableLeftArrow: { classPropertyName: "disableLeftArrow", publicName: "disableLeftArrow", isSignal: true, isRequired: false, transformFunction: null }, disableRightArrow: { classPropertyName: "disableRightArrow", publicName: "disableRightArrow", isSignal: true, isRequired: false, transformFunction: null }, displayLeftArrow: { classPropertyName: "displayLeftArrow", publicName: "displayLeftArrow", isSignal: true, isRequired: false, transformFunction: null }, displayRightArrow: { classPropertyName: "displayRightArrow", publicName: "displayRightArrow", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "wlcm-calendar-header" }, ngImport: i0, template: "<div class=\"wlcm-calendar-header-button-container\">\n @if (displayLeftArrow()) {\n <button\n class=\"wlcm-calendar-header-button wlcm-calendar-header-button-left\"\n [disabled]=\"disableLeftArrow()\"\n (click)=\"previousClicked()\"\n >\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n </button>\n }\n</div>\n\n<button\n class=\"wlcm-calendar-header-change-view-button\"\n (click)=\"changeCalendarView()\"\n>\n <div class=\"wlcm-calendar-header-period-label\">\n {{ periodLabel }}\n </div>\n\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n</button>\n\n<div class=\"wlcm-calendar-header-button-container\">\n @if (displayRightArrow()) {\n <button\n class=\"wlcm-calendar-header-button wlcm-calendar-header-button-right\"\n [disabled]=\"disableRightArrow()\"\n (click)=\"nextClicked()\"\n >\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n </button>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: WlcmIconDirective, selector: "[wlcmIcon]", inputs: ["wlcmIcon", "wlcmIconStopPropagation"], outputs: ["wlcmIconClicked"] }] }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmCalendarHeaderComponent, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmCalendarHeaderComponent, decorators: [{
52
52
  type: Component,
53
53
  args: [{ selector: 'wlcm-calendar-header', host: { class: 'wlcm-calendar-header' }, standalone: true, imports: [CommonModule, WlcmIconDirective], template: "<div class=\"wlcm-calendar-header-button-container\">\n @if (displayLeftArrow()) {\n <button\n class=\"wlcm-calendar-header-button wlcm-calendar-header-button-left\"\n [disabled]=\"disableLeftArrow()\"\n (click)=\"previousClicked()\"\n >\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n </button>\n }\n</div>\n\n<button\n class=\"wlcm-calendar-header-change-view-button\"\n (click)=\"changeCalendarView()\"\n>\n <div class=\"wlcm-calendar-header-period-label\">\n {{ periodLabel }}\n </div>\n\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n</button>\n\n<div class=\"wlcm-calendar-header-button-container\">\n @if (displayRightArrow()) {\n <button\n class=\"wlcm-calendar-header-button wlcm-calendar-header-button-right\"\n [disabled]=\"disableRightArrow()\"\n (click)=\"nextClicked()\"\n >\n <ng-container [wlcmIcon]=\"WlcmIconName.CHEVRON_DOWN\"></ng-container>\n </button>\n }\n</div>\n" }]
54
54
  }], ctorParameters: () => [{ type: i1.DateAdapter }, { type: undefined, decorators: [{
@@ -64,10 +64,10 @@ export class WlcmDateRangeCalendarHeaderComponent {
64
64
  get canDisplayRightArrow() {
65
65
  return !this.rangeCalendar || this.rangeCalendar.location === 'right' || this.calendar.currentView !== 'month';
66
66
  }
67
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, deps: [{ token: i1.WlcmDataRangeCalendar, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: forwardRef(() => MatCalendar) }, { token: WLCM_DATEPICKER_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: WlcmDateRangeCalendarHeaderComponent, isStandalone: true, selector: "wlcm-date-range-calendar-header", ngImport: i0, template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [disableLeftArrow]=\"isPreviousDisabled\"\n [disableRightArrow]=\"isNextDisabled\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: WlcmCalendarHeaderComponent, selector: "wlcm-calendar-header", inputs: ["next", "previous", "disableLeftArrow", "disableRightArrow", "displayLeftArrow", "displayRightArrow"] }] }); }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, deps: [{ token: i1.WlcmDataRangeCalendar, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: forwardRef(() => MatCalendar) }, { token: WLCM_DATEPICKER_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangeCalendarHeaderComponent, isStandalone: true, selector: "wlcm-date-range-calendar-header", ngImport: i0, template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [disableLeftArrow]=\"isPreviousDisabled\"\n [disableRightArrow]=\"isNextDisabled\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: WlcmCalendarHeaderComponent, selector: "wlcm-calendar-header", inputs: ["next", "previous", "disableLeftArrow", "disableRightArrow", "displayLeftArrow", "displayRightArrow"] }] }); }
69
69
  }
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, decorators: [{
71
71
  type: Component,
72
72
  args: [{ selector: 'wlcm-date-range-calendar-header', standalone: true, imports: [CommonModule, WlcmCalendarHeaderComponent, WlcmIconDirective], template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [disableLeftArrow]=\"isPreviousDisabled\"\n [disableRightArrow]=\"isNextDisabled\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n" }]
73
73
  }], ctorParameters: () => [{ type: i1.WlcmDataRangeCalendar, decorators: [{
@@ -1,19 +1,19 @@
1
1
  import { Component } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { WlcmDateRangePickerComponent } from '../date-range-picker/date-range-picker.component';
4
3
  import { WlcmButtonModule } from '@wlcm/angular/button';
4
+ import { WlcmDateRangePicker } from '../../../models/range/date-range-picker.models';
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "../date-range-picker/date-range-picker.component";
6
+ import * as i1 from "../../../models/range/date-range-picker.models";
7
7
  import * as i2 from "@wlcm/angular/button";
8
8
  export class WlcmDateRangePickerBottomPanelComponent {
9
9
  constructor(picker) {
10
10
  this.picker = picker;
11
11
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmDateRangePickerBottomPanelComponent, deps: [{ token: i1.WlcmDateRangePickerComponent }], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: WlcmDateRangePickerBottomPanelComponent, isStandalone: true, selector: "wlcm-date-range-picker-bottom-panel", ngImport: i0, template: "<div class=\"wlcm-date-range-picker-bottom-panel\">\n <wlcm-button type=\"paddingless\" (clicked)=\"picker.reset()\">Reset</wlcm-button>\n\n <wlcm-button (clicked)=\"picker.apply()\" [isDisabled]=\"!picker.isComplete()\">\n Apply\n </wlcm-button>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmButtonModule }, { kind: "component", type: i2.WlcmButtonComponent, selector: "wlcm-button", inputs: ["type", "size", "isDisabled", "isLoading"], outputs: ["clicked"] }] }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerBottomPanelComponent, deps: [{ token: i1.WlcmDateRangePicker }], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangePickerBottomPanelComponent, isStandalone: true, selector: "wlcm-date-range-picker-bottom-panel", ngImport: i0, template: "<div class=\"wlcm-date-range-picker-bottom-panel\">\n <wlcm-button type=\"paddingless\" (clicked)=\"picker.reset()\">Reset</wlcm-button>\n\n <wlcm-button (clicked)=\"picker.apply()\" [isDisabled]=\"!picker.isComplete()\">\n Apply\n </wlcm-button>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmButtonModule }, { kind: "component", type: i2.WlcmButtonComponent, selector: "wlcm-button", inputs: ["type", "size", "isDisabled", "isLoading"], outputs: ["clicked"] }] }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmDateRangePickerBottomPanelComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerBottomPanelComponent, decorators: [{
16
16
  type: Component,
17
17
  args: [{ selector: 'wlcm-date-range-picker-bottom-panel', standalone: true, imports: [CommonModule, WlcmButtonModule], template: "<div class=\"wlcm-date-range-picker-bottom-panel\">\n <wlcm-button type=\"paddingless\" (clicked)=\"picker.reset()\">Reset</wlcm-button>\n\n <wlcm-button (clicked)=\"picker.apply()\" [isDisabled]=\"!picker.isComplete()\">\n Apply\n </wlcm-button>\n</div>\n" }]
18
- }], ctorParameters: () => [{ type: i1.WlcmDateRangePickerComponent }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItYm90dG9tLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0ZXBpY2tlci9zcmMvbGliL2NvbXBvbmVudHMvcmFuZ2UvZGF0ZS1yYW5nZS1waWNrZXItYm90dG9tLXBhbmVsL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC9kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDaEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFTeEQsTUFBTSxPQUFPLHVDQUF1QztJQUNsRCxZQUFzQixNQUFvQztRQUFwQyxXQUFNLEdBQU4sTUFBTSxDQUE4QjtJQUFHLENBQUM7OEdBRG5ELHVDQUF1QztrR0FBdkMsdUNBQXVDLCtGQ1pwRCx3UUFPQSx5RERDWSxZQUFZLDhCQUFFLGdCQUFnQjs7MkZBSTdCLHVDQUF1QztrQkFQbkQsU0FBUzsrQkFDRSxxQ0FBcUMsY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgV2xjbURhdGVSYW5nZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4uL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXbGNtQnV0dG9uTW9kdWxlIH0gZnJvbSAnQHdsY20vYW5ndWxhci9idXR0b24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3bGNtLWRhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFdsY21CdXR0b25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1yYW5nZS1waWNrZXItYm90dG9tLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIFdsY21EYXRlUmFuZ2VQaWNrZXJCb3R0b21QYW5lbENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBwaWNrZXI6IFdsY21EYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQpIHt9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2xjbS1kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWxcIj5cbiAgPHdsY20tYnV0dG9uIHR5cGU9XCJwYWRkaW5nbGVzc1wiIChjbGlja2VkKT1cInBpY2tlci5yZXNldCgpXCI+UmVzZXQ8L3dsY20tYnV0dG9uPlxuXG4gIDx3bGNtLWJ1dHRvbiAoY2xpY2tlZCk9XCJwaWNrZXIuYXBwbHkoKVwiIFtpc0Rpc2FibGVkXT1cIiFwaWNrZXIuaXNDb21wbGV0ZSgpXCI+XG4gICAgQXBwbHlcbiAgPC93bGNtLWJ1dHRvbj5cbjwvZGl2PlxuIl19
18
+ }], ctorParameters: () => [{ type: i1.WlcmDateRangePicker }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItYm90dG9tLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvZGF0ZXBpY2tlci9zcmMvbGliL2NvbXBvbmVudHMvcmFuZ2UvZGF0ZS1yYW5nZS1waWNrZXItYm90dG9tLXBhbmVsL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC9kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7QUFTckYsTUFBTSxPQUFPLHVDQUF1QztJQUNsRCxZQUFzQixNQUEyQjtRQUEzQixXQUFNLEdBQU4sTUFBTSxDQUFxQjtJQUFHLENBQUM7OEdBRDFDLHVDQUF1QztrR0FBdkMsdUNBQXVDLCtGQ1pwRCx3UUFPQSx5RERDWSxZQUFZLDhCQUFFLGdCQUFnQjs7MkZBSTdCLHVDQUF1QztrQkFQbkQsU0FBUzsrQkFDRSxxQ0FBcUMsY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgV2xjbUJ1dHRvbk1vZHVsZSB9IGZyb20gJ0B3bGNtL2FuZ3VsYXIvYnV0dG9uJztcbmltcG9ydCB7IFdsY21EYXRlUmFuZ2VQaWNrZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmFuZ2UvZGF0ZS1yYW5nZS1waWNrZXIubW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2xjbS1kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBXbGNtQnV0dG9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWwuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBXbGNtRGF0ZVJhbmdlUGlja2VyQm90dG9tUGFuZWxDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcGlja2VyOiBXbGNtRGF0ZVJhbmdlUGlja2VyKSB7fVxufVxuIiwiPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItYm90dG9tLXBhbmVsXCI+XG4gIDx3bGNtLWJ1dHRvbiB0eXBlPVwicGFkZGluZ2xlc3NcIiAoY2xpY2tlZCk9XCJwaWNrZXIucmVzZXQoKVwiPlJlc2V0PC93bGNtLWJ1dHRvbj5cblxuICA8d2xjbS1idXR0b24gKGNsaWNrZWQpPVwicGlja2VyLmFwcGx5KClcIiBbaXNEaXNhYmxlZF09XCIhcGlja2VyLmlzQ29tcGxldGUoKVwiPlxuICAgIEFwcGx5XG4gIDwvd2xjbS1idXR0b24+XG48L2Rpdj5cbiJdfQ==
@@ -1,16 +1,16 @@
1
- import { Component, ContentChild, Host, Inject, ViewContainerRef, forwardRef, inject, } from '@angular/core';
1
+ import { Component, ContentChild, Host, Inject, Input, Type, ViewContainerRef, forwardRef, inject, } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { MatDateSelectionModel } from '@angular/material/datepicker';
4
4
  import { WLCM_FORM_CONTROL_PROVIDER, WLCM_FORM_FIELD, WLCM_INPUT_BINDER, WlcmFormsModule, } from '@wlcm/angular/forms';
5
5
  import { BehaviorSubject, EMPTY, fromEvent, map, merge, switchMap } from 'rxjs';
6
- import { Overlay } from '@angular/cdk/overlay';
7
- import { WlcmDateRangePickerComponent } from '../date-range-picker/date-range-picker.component';
8
6
  import { ControlContainer } from '@angular/forms';
9
7
  import { WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL_PROVIDER, WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL, } from '../../../constants/range/date-range-trigger-selection-model.constants';
10
- import { DateRangePickerInputEndDirective } from '../../../directives/ragne/date-range-picker-input-end.directive';
11
8
  import { DateRangePickerInputStartDirective } from '../../../directives/ragne/date-range-picker-input-start.directive';
9
+ import { SingleCalendarRangePickerComponent } from '../single-calendar-range-picker/single-calendar-range-picker.component';
10
+ import { DateRangePickerInputEndDirective } from '../../../directives/ragne/date-range-picker-input-end.directive';
12
11
  import { DateRangePickerErrors } from '../../../utils/range/date-range-picker-errors';
13
12
  import { WlcmDatepickerTrigger } from '../../../directives/datepicker-trigger.base';
13
+ import { Overlay } from '@angular/cdk/overlay';
14
14
  import * as i0 from "@angular/core";
15
15
  import * as i1 from "@angular/cdk/overlay";
16
16
  import * as i2 from "@angular/material/datepicker";
@@ -27,7 +27,7 @@ export class WlcmDateRangePickerInputComponent extends WlcmDatepickerTrigger {
27
27
  this._blurStream$ = new BehaviorSubject(EMPTY);
28
28
  this.focus$ = this._focusStream$.pipe(switchMap((stream) => stream));
29
29
  this.blur$ = this._blurStream$.pipe(switchMap((stream) => stream));
30
- this.componentType = WlcmDateRangePickerComponent;
30
+ this.componentType = SingleCalendarRangePickerComponent;
31
31
  }
32
32
  ngAfterContentInit() {
33
33
  this.checkInputs();
@@ -73,8 +73,8 @@ export class WlcmDateRangePickerInputComponent extends WlcmDatepickerTrigger {
73
73
  this._focusStream$.next(merge(...focusObservables).pipe(map(voidFn)));
74
74
  this._blurStream$.next(merge(...blurObservables).pipe(map(() => this.control?.markAsTouched())));
75
75
  }
76
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmDateRangePickerInputComponent, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL }, { token: WLCM_FORM_FIELD, host: true }, { token: ControlContainer, host: true }], target: i0.ɵɵFactoryTarget.Component }); }
77
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: WlcmDateRangePickerInputComponent, isStandalone: true, selector: "wlcm-date-range-picker-input", host: { classAttribute: "wlcm-date-range-picker-input" }, providers: [
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerInputComponent, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL }, { token: WLCM_FORM_FIELD, host: true }, { token: ControlContainer, host: true }], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangePickerInputComponent, isStandalone: true, selector: "wlcm-date-range-picker-input", inputs: { componentType: "componentType" }, host: { classAttribute: "wlcm-date-range-picker-input" }, providers: [
78
78
  WLCM_FORM_CONTROL_PROVIDER,
79
79
  WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL_PROVIDER,
80
80
  {
@@ -87,7 +87,7 @@ export class WlcmDateRangePickerInputComponent extends WlcmDatepickerTrigger {
87
87
  { provide: WlcmDatepickerTrigger, useExisting: forwardRef(() => WlcmDateRangePickerInputComponent) },
88
88
  ], queries: [{ propertyName: "startInput", first: true, predicate: DateRangePickerInputStartDirective, descendants: true }, { propertyName: "endInput", first: true, predicate: DateRangePickerInputEndDirective, descendants: true }], exportAs: ["wlcmDateRangePickerInput"], usesInheritance: true, ngImport: i0, template: "<div class=\"wlcm-date-range-picker-inputs-container\">\n <div class=\"wlcm-date-range-picker-input-field-wrapper\">\n <ng-content select=\"[wlcmDateRangePickerInputStart]\"></ng-content>\n </div>\n\n <div class=\"wlcm-date-range-picker-input-dash\"></div>\n\n <div class=\"wlcm-date-range-picker-input-field-wrapper\">\n <ng-content select=\"[wlcmDateRangePickerInputEnd]\"></ng-content>\n </div>\n</div>\n", styles: [".wlcm-date-range-picker-inputs-container{display:flex;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmFormsModule }] }); }
89
89
  }
90
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: WlcmDateRangePickerInputComponent, decorators: [{
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerInputComponent, decorators: [{
91
91
  type: Component,
92
92
  args: [{ selector: 'wlcm-date-range-picker-input', host: { class: 'wlcm-date-range-picker-input' }, exportAs: 'wlcmDateRangePickerInput', standalone: true, imports: [CommonModule, WlcmFormsModule, DateRangePickerInputStartDirective, DateRangePickerInputEndDirective], providers: [
93
93
  WLCM_FORM_CONTROL_PROVIDER,
@@ -114,11 +114,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
114
114
  }, {
115
115
  type: Inject,
116
116
  args: [ControlContainer]
117
- }] }], propDecorators: { startInput: [{
117
+ }] }], propDecorators: { componentType: [{
118
+ type: Input
119
+ }], startInput: [{
118
120
  type: ContentChild,
119
121
  args: [DateRangePickerInputStartDirective]
120
122
  }], endInput: [{
121
123
  type: ContentChild,
122
124
  args: [DateRangePickerInputEndDirective]
123
125
  }] } });
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRlcGlja2VyL3NyYy9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0L2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxTQUFTLEVBQ1QsWUFBWSxFQUVaLElBQUksRUFDSixNQUFNLEVBRU4sZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBYSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hGLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsZUFBZSxFQUNmLGlCQUFpQixFQUdqQixlQUFlLEdBQ2hCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQWMsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsZ0RBQWdELEVBQ2hELHVD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dGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBIb3N0LFxuICBJbmplY3QsXG4gIFR5cGUsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIGZvcndhcmRSZWYsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGF0ZVJhbmdlLCBNYXREYXRlU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7XG4gIFdMQ01fRk9STV9DT05UUk9MX1BST1ZJREVSLFxuICBXTENNX0ZPUk1fRklFTEQsXG4gIFdMQ01fSU5QVVRfQklOREVSLFxuICBXbGNtRm9ybUZpZWxkLFxuICBXbGNtRm9ybUZpZWxkSW5wdXQsXG4gIFdsY21Gb3Jtc01vZHVsZSxcbn0gZnJvbSAnQHdsY20vYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgRU1QVFksIE9ic2VydmFibGUsIGZyb21FdmVudCwgbWFwLCBtZXJnZSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgV2xjbURhdGVSYW5nZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4uL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBXTENNX0RBVEVfUkFOR0VfVFJJR0dFUl9TRUxFQ1RJT05fTU9ERUxfUFJPVklERVIsXG4gIFdMQ01fREFURV9SQU5HRV9UUklHR0VSX1NFTEVDVElPTl9NT0RFTCxcbn0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3JhbmdlL2RhdGUtcmFuZ2UtdHJpZ2dlci1zZWxlY3Rpb24tbW9kZWwuY29uc3RhbnRzJztcbmltcG9ydCB7IERhdGVSYW5nZVBpY2tlcklucHV0RW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9yYWduZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1lbmQuZGlyZWN0aXZlJztcbmltcG9ydCB7IERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL3JhZ25lL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LXN0YXJ0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJFcnJvcnMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1lcnJvcnMnO1xuaW1wb3J0IHsgV2xjbURhdGVwaWNrZXJUcmlnZ2VyIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9kYXRlcGlja2VyLXRyaWdnZXIuYmFzZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dsY20tZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQnLFxuICBob3N0OiB7IGNsYXNzOiAnd2xjbS1kYXRlLXJhbmdlLXBpY2tlci1pbnB1dCcgfSxcbiAgZXhwb3J0QXM6ICd3bGNtRGF0ZVJhbmdlUGlja2VySW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBXbGNtRm9ybXNNb2R1bGUsIERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmUsIERhdGVSYW5nZVBpY2tlcklucHV0RW5kRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LmNvbXBvbmVudC5zY3NzJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAgV0xDTV9GT1JNX0NPTlRST0xfUFJPVklERVIsXG4gICAgV0xDTV9EQVRFX1JBTkdFX1RSSUdHRVJfU0VMRUNUSU9OX01PREVMX1BST1ZJREVSLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFdMQ01fSU5QVVRfQklOREVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4ge1xuICAgICAgICBjb25zdCBpbnB1dCA9IGluamVjdChXbGNtRGF0ZVJhbmdlUGlja2VySW5wdXRDb21wb25lbnQsIHsgc2VsZjogdHJ1ZSB9KTtcblxuICAgICAgICByZXR1cm4geyBiaW5kOiAoKSA9PiBpbnB1dCB9O1xuICAgICAgfSxcbiAgICB9LFxuICAgIHsgcHJvdmlkZTogV2xjbURhdGVwaWNrZXJUcmlnZ2VyLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBXbGNtRGF0ZVJhbmdlUGlja2VySW5wdXRDb21wb25lbnQpIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFdsY21EYXRlUmFuZ2VQaWNrZXJJbnB1dENvbXBvbmVudFxuICBleHRlbmRzIFdsY21EYXRlcGlja2VyVHJpZ2dlcjxXbGNtRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50LCBEYXRlUmFuZ2U8RGF0ZT4+XG4gIGltcGxlbWVudHMgV2xjbUZvcm1GaWVsZElucHV0LCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZvY3VzU3RyZWFtJDogQmVoYXZpb3JTdWJqZWN0PE9ic2VydmFibGU8dm9pZD4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChFTVBUWSBhcyBPYnNlcnZhYmxlPHZvaWQ+KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ibHVyU3RyZWFtJDogQmVoYXZpb3JTdWJqZWN0PE9ic2VydmFibGU8dm9pZD4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChFTVBUWSBhcyBPYnNlcnZhYmxlPHZvaWQ+KTtcblxuICBmb2N1cyQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSB0aGlzLl9mb2N1c1N0cmVhbSQucGlwZShzd2l0Y2hNYXAoKHN0cmVhbTogT2JzZXJ2YWJsZTx1bmtub3duPikgPT4gc3RyZWFtKSk7XG5cbiAgYmx1ciQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSB0aGlzLl9ibHVyU3RyZWFtJC5waXBlKHN3aXRjaE1hcCgoc3RyZWFtOiBPYnNlcnZhYmxlPHVua25vd24+KSA9PiBzdHJlYW0pKTtcblxuICBAQ29udGVudENoaWxkKERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmUpIHByaXZhdGUgc3RhcnRJbnB1dCE6IERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmU7XG5cbiAgQENvbnRlbnRDaGlsZChEYXRlUmFuZ2VQaWNrZXJJbnB1dEVuZERpcmVjdGl2ZSkgcHJpdmF0ZSBlbmRJbnB1dCE6IERhdGVSYW5nZVBpY2tlcklucHV0RW5kRGlyZWN0aXZlO1xuXG4gIG92ZXJyaWRlIGNvbXBvbmVudFR5cGU6IFR5cGU8V2xjbURhdGVSYW5nZVBpY2tlckNvbXBvbmVudD4gPSBXbGNtRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50O1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjb25uZWN0ZWRUbyE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBvdmVybGF5OiBPdmVybGF5LFxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIEBJbmplY3QoV0xDTV9EQVRFX1JBTkdFX1RSSUdHRVJfU0VMRUNUSU9OX01PREVMKVxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBzZWxlY3Rpb25Nb2RlbDogTWF0RGF0ZVNlbGVjdGlvbk1vZGVsPERhdGVSYW5nZTxEYXRlPj4sXG4gICAgQEhvc3QoKSBASW5qZWN0KFdMQ01fRk9STV9GSUVMRCkgcHJpdmF0ZSBmb3JtRmllbGQ6IFdsY21Gb3JtRmllbGQsXG4gICAgQEhvc3QoKSBASW5qZWN0KENvbnRyb2xDb250YWluZXIpIHByaXZhdGUgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcixcbiAgKSB7XG4gICAgc3VwZXIob3ZlcmxheSwgdmlld0NvbnRhaW5lclJlZiwgc2VsZWN0aW9uTW9kZWwpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2hlY2tJbnB1dHMoKTtcblxuICAgIHRoaXMuYXR0YWNoRm9jdXNCbHVyTGlzdGVuZXJzKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb25uZWN0ZWRUbyA9IHRoaXMuZm9ybUZpZWxkLmlucHV0Q29udGFpbmVyO1xuICB9XG5cbiAgaXNGb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnN0YXJ0SW5wdXRFbGVtZW50ID09PSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IHx8XG4gICAgICB0aGlzLmVuZElucHV0RWxlbWVudCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCB8fFxuICAgICAgdGhpcy5pc09wZW5cbiAgICApO1xuICB9XG5cbiAgZm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0T25seSgpKSByZXR1cm4gdGhpcy5vcGVuKCk7XG5cbiAgICBpZiAoIXRoaXMuaXNGb2N1c2VkKCkpIHRoaXMuc3RhcnRJbnB1dEVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGNvbnRyb2woKTogRm9ybUdyb3VwIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbENvbnRhaW5lcj8uY29udHJvbCBhcyBGb3JtR3JvdXA7XG4gIH1cblxuICBwcml2YXRlIGdldCBzdGFydElucHV0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuc3RhcnRJbnB1dC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBlbmRJbnB1dEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVuZElucHV0LmVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tJbnB1dHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0YXJ0SW5wdXQpIERhdGVSYW5nZVBpY2tlckVycm9ycy50aHJvd05vU3RhcnRJbnB1dEVycm9yKCk7XG5cbiAgICBpZiAoIXRoaXMuZW5kSW5wdXQpIERhdGVSYW5nZVBpY2tlckVycm9ycy50aHJvd05vRW5kSW5wdXRFcnJvcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBhdHRhY2hGb2N1c0JsdXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3Qgdm9pZEZuID0gKCkgPT4ge307XG5cbiAgICBjb25zdCBzdGFydElucHV0Rm9jdXM6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHRoaXMuc3RhcnRJbnB1dEVsZW1lbnQsICdmb2N1cycpO1xuXG4gICAgY29uc3QgZW5kSW5wdXRGb2N1czogT2JzZXJ2YWJsZTxFdmVudD4gPSBmcm9tRXZlbnQodGhpcy5lbmRJbnB1dEVsZW1lbnQsICdmb2N1cycpO1xuXG4gICAgY29uc3Qgc3RhcnRJbnB1dEJsdXI6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHRoaXMuc3RhcnRJbnB1dEVsZW1lbnQsICdibHVyJyk7XG5cbiAgICBjb25zdCBlbmRJbnB1dEJsdXI6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHRoaXMuZW5kSW5wdXRFbGVtZW50LCAnYmx1cicpO1xuXG4gICAgY29uc3QgZm9jdXNPYnNlcnZhYmxlczogT2JzZXJ2YWJsZTx1bmtub3duPltdID0gW3N0YXJ0SW5wdXRGb2N1cywgZW5kSW5wdXRGb2N1cywgdGhpcy5vcGVuZWRdO1xuXG4gICAgY29uc3QgYmx1ck9ic2VydmFibGVzOiBPYnNlcnZhYmxlPHVua25vd24+W10gPSBbc3RhcnRJbnB1dEJsdXIsIGVuZElucHV0Qmx1ciwgdGhpcy5jbG9zZWRdO1xuXG4gICAgdGhpcy5fZm9jdXNTdHJlYW0kLm5leHQobWVyZ2UoLi4uZm9jdXNPYnNlcnZhYmxlcykucGlwZShtYXAodm9pZEZuKSkpO1xuXG4gICAgdGhpcy5fYmx1clN0cmVhbSQubmV4dChtZXJnZSguLi5ibHVyT2JzZXJ2YWJsZXMpLnBpcGUobWFwKCgpID0+IHRoaXMuY29udHJvbD8ubWFya0FzVG91Y2hlZCgpKSkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2xjbS1kYXRlLXJhbmdlLXBpY2tlci1pbnB1dHMtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJ3bGNtLWRhdGUtcmFuZ2UtcGlja2VyLWlucHV0LWZpZWxkLXdyYXBwZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbd2xjbURhdGVSYW5nZVBpY2tlcklucHV0U3RhcnRdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwid2xjbS1kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1kYXNoXCI+PC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtZmllbGQtd3JhcHBlclwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt3bGNtRGF0ZVJhbmdlUGlja2VySW5wdXRFbmRdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRlcGlja2VyL3NyYy9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0L2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxTQUFTLEVBQ1QsWUFBWSxFQUVaLElBQUksRUFDSixNQUFNLEVBQ04sS0FBSyxFQUNMLElBQUksRUFDSixnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFhLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEYsT0FBTyxFQUNMLDBCQUEwQixFQUMxQixlQUFlLEVBQ2YsaUJBQWlCLEVBR2pCLGVBQWUsR0FDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxTQUFTLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUNMLGdEQUFnRCxFQUNoRCx1Q0FBdUMsR0FDeEMsTUFBTSx1RUFBdUUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxtRUFBbUUs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QkFBQyxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdCxcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgVHlwZSxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgZm9yd2FyZFJlZixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRlUmFuZ2UsIE1hdERhdGVTZWxlY3Rpb25Nb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHtcbiAgV0xDTV9GT1JNX0NPTlRST0xfUFJPVklERVIsXG4gIFdMQ01fRk9STV9GSUVMRCxcbiAgV0xDTV9JTlBVVF9CSU5ERVIsXG4gIFdsY21Gb3JtRmllbGQsXG4gIFdsY21Gb3JtRmllbGRJbnB1dCxcbiAgV2xjbUZvcm1zTW9kdWxlLFxufSBmcm9tICdAd2xjbS9hbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBFTVBUWSwgT2JzZXJ2YWJsZSwgZnJvbUV2ZW50LCBtYXAsIG1lcmdlLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIFdMQ01fREFURV9SQU5HRV9UUklHR0VSX1NFTEVDVElPTl9NT0RFTF9QUk9WSURFUixcbiAgV0xDTV9EQVRFX1JBTkdFX1RSSUdHRVJfU0VMRUNUSU9OX01PREVMLFxufSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvcmFuZ2UvZGF0ZS1yYW5nZS10cmlnZ2VyLXNlbGVjdGlvbi1tb2RlbC5jb25zdGFudHMnO1xuaW1wb3J0IHsgRGF0ZVJhbmdlUGlja2VySW5wdXRTdGFydERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvcmFnbmUvZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtc3RhcnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNpbmdsZUNhbGVuZGFyUmFuZ2VQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi9zaW5nbGUtY2FsZW5kYXItcmFuZ2UtcGlja2VyL3NpbmdsZS1jYWxlbmRhci1yYW5nZS1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVSYW5nZVBpY2tlcklucHV0RW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9yYWduZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1lbmQuZGlyZWN0aXZlJztcbmltcG9ydCB7IERhdGVSYW5nZVBpY2tlckVycm9ycyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLWVycm9ycyc7XG5pbXBvcnQgeyBXbGNtRGF0ZVJhbmdlUGlja2VyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLm1vZGVscyc7XG5pbXBvcnQgeyBXbGNtRGF0ZXBpY2tlclRyaWdnZXIgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2RhdGVwaWNrZXItdHJpZ2dlci5iYXNlJztcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dsY20tZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQnLFxuICBob3N0OiB7IGNsYXNzOiAnd2xjbS1kYXRlLXJhbmdlLXBpY2tlci1pbnB1dCcgfSxcbiAgZXhwb3J0QXM6ICd3bGNtRGF0ZVJhbmdlUGlja2VySW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBXbGNtRm9ybXNNb2R1bGUsIERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmUsIERhdGVSYW5nZVBpY2tlcklucHV0RW5kRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLWlucHV0LmNvbXBvbmVudC5zY3NzJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAgV0xDTV9GT1JNX0NPTlRST0xfUFJPVklERVIsXG4gICAgV0xDTV9EQVRFX1JBTkdFX1RSSUdHRVJfU0VMRUNUSU9OX01PREVMX1BST1ZJREVSLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFdMQ01fSU5QVVRfQklOREVSLFxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4ge1xuICAgICAgICBjb25zdCBpbnB1dCA9IGluamVjdChXbGNtRGF0ZVJhbmdlUGlja2VySW5wdXRDb21wb25lbnQsIHsgc2VsZjogdHJ1ZSB9KTtcblxuICAgICAgICByZXR1cm4geyBiaW5kOiAoKSA9PiBpbnB1dCB9O1xuICAgICAgfSxcbiAgICB9LFxuICAgIHsgcHJvdmlkZTogV2xjbURhdGVwaWNrZXJUcmlnZ2VyLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBXbGNtRGF0ZVJhbmdlUGlja2VySW5wdXRDb21wb25lbnQpIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFdsY21EYXRlUmFuZ2VQaWNrZXJJbnB1dENvbXBvbmVudFxuICBleHRlbmRzIFdsY21EYXRlcGlja2VyVHJpZ2dlcjxXbGNtRGF0ZVJhbmdlUGlja2VyLCBEYXRlUmFuZ2U8RGF0ZT4+XG4gIGltcGxlbWVudHMgV2xjbUZvcm1GaWVsZElucHV0LCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZvY3VzU3RyZWFtJDogQmVoYXZpb3JTdWJqZWN0PE9ic2VydmFibGU8dm9pZD4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChFTVBUWSBhcyBPYnNlcnZhYmxlPHZvaWQ+KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ibHVyU3RyZWFtJDogQmVoYXZpb3JTdWJqZWN0PE9ic2VydmFibGU8dm9pZD4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChFTVBUWSBhcyBPYnNlcnZhYmxlPHZvaWQ+KTtcblxuICBmb2N1cyQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSB0aGlzLl9mb2N1c1N0cmVhbSQucGlwZShzd2l0Y2hNYXAoKHN0cmVhbTogT2JzZXJ2YWJsZTx1bmtub3duPikgPT4gc3RyZWFtKSk7XG5cbiAgYmx1ciQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSB0aGlzLl9ibHVyU3RyZWFtJC5waXBlKHN3aXRjaE1hcCgoc3RyZWFtOiBPYnNlcnZhYmxlPHVua25vd24+KSA9PiBzdHJlYW0pKTtcblxuICBASW5wdXQoKSBvdmVycmlkZSBjb21wb25lbnRUeXBlOiBUeXBlPFdsY21EYXRlUmFuZ2VQaWNrZXI+ID0gU2luZ2xlQ2FsZW5kYXJSYW5nZVBpY2tlckNvbXBvbmVudDtcblxuICBAQ29udGVudENoaWxkKERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmUpIHByaXZhdGUgc3RhcnRJbnB1dCE6IERhdGVSYW5nZVBpY2tlcklucHV0U3RhcnREaXJlY3RpdmU7XG5cbiAgQENvbnRlbnRDaGlsZChEYXRlUmFuZ2VQaWNrZXJJbnB1dEVuZERpcmVjdGl2ZSkgcHJpdmF0ZSBlbmRJbnB1dCE6IERhdGVSYW5nZVBpY2tlcklucHV0RW5kRGlyZWN0aXZlO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjb25uZWN0ZWRUbyE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBvdmVybGF5OiBPdmVybGF5LFxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIEBJbmplY3QoV0xDTV9EQVRFX1JBTkdFX1RSSUdHRVJfU0VMRUNUSU9OX01PREVMKVxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBzZWxlY3Rpb25Nb2RlbDogTWF0RGF0ZVNlbGVjdGlvbk1vZGVsPERhdGVSYW5nZTxEYXRlPj4sXG4gICAgQEhvc3QoKSBASW5qZWN0KFdMQ01fRk9STV9GSUVMRCkgcHJpdmF0ZSBmb3JtRmllbGQ6IFdsY21Gb3JtRmllbGQsXG4gICAgQEhvc3QoKSBASW5qZWN0KENvbnRyb2xDb250YWluZXIpIHByaXZhdGUgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcixcbiAgKSB7XG4gICAgc3VwZXIob3ZlcmxheSwgdmlld0NvbnRhaW5lclJlZiwgc2VsZWN0aW9uTW9kZWwpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2hlY2tJbnB1dHMoKTtcblxuICAgIHRoaXMuYXR0YWNoRm9jdXNCbHVyTGlzdGVuZXJzKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb25uZWN0ZWRUbyA9IHRoaXMuZm9ybUZpZWxkLmlucHV0Q29udGFpbmVyO1xuICB9XG5cbiAgaXNGb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnN0YXJ0SW5wdXRFbGVtZW50ID09PSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IHx8XG4gICAgICB0aGlzLmVuZElucHV0RWxlbWVudCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCB8fFxuICAgICAgdGhpcy5pc09wZW5cbiAgICApO1xuICB9XG5cbiAgZm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0T25seSgpKSByZXR1cm4gdGhpcy5vcGVuKCk7XG5cbiAgICBpZiAoIXRoaXMuaXNGb2N1c2VkKCkpIHRoaXMuc3RhcnRJbnB1dEVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGNvbnRyb2woKTogRm9ybUdyb3VwIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbENvbnRhaW5lcj8uY29udHJvbCBhcyBGb3JtR3JvdXA7XG4gIH1cblxuICBwcml2YXRlIGdldCBzdGFydElucHV0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuc3RhcnRJbnB1dC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBlbmRJbnB1dEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVuZElucHV0LmVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tJbnB1dHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0YXJ0SW5wdXQpIERhdGVSYW5nZVBpY2tlckVycm9ycy50aHJvd05vU3RhcnRJbnB1dEVycm9yKCk7XG5cbiAgICBpZiAoIXRoaXMuZW5kSW5wdXQpIERhdGVSYW5nZVBpY2tlckVycm9ycy50aHJvd05vRW5kSW5wdXRFcnJvcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBhdHRhY2hGb2N1c0JsdXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3Qgdm9pZEZuID0gKCkgPT4ge307XG5cbiAgICBjb25zdCBzdGFydElucHV0Rm9jdXM6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHRoaXMuc3RhcnRJbnB1dEVsZW1lbnQsICdmb2N1cycpO1xuXG4gICAgY29uc3QgZW5kSW5wdXRGb2N1czogT2JzZXJ2YWJsZTxFdmVudD4gPSBmcm9tRXZlbnQodGhpcy5lbmRJbnB1dEVsZW1lbnQsICdmb2N1cycpO1xuXG4gICAgY29uc3Qgc3RhcnRJbnB1dEJsdXI6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHRoaXMuc3RhcnRJbnB1dEVsZW1lbnQsICdibHVyJyk7XG5cbiAgICBjb25zdCBlbmRJbnB1dEJsdXI6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHRoaXMuZW5kSW5wdXRFbGVtZW50LCAnYmx1cicpO1xuXG4gICAgY29uc3QgZm9jdXNPYnNlcnZhYmxlczogT2JzZXJ2YWJsZTx1bmtub3duPltdID0gW3N0YXJ0SW5wdXRGb2N1cywgZW5kSW5wdXRGb2N1cywgdGhpcy5vcGVuZWRdO1xuXG4gICAgY29uc3QgYmx1ck9ic2VydmFibGVzOiBPYnNlcnZhYmxlPHVua25vd24+W10gPSBbc3RhcnRJbnB1dEJsdXIsIGVuZElucHV0Qmx1ciwgdGhpcy5jbG9zZWRdO1xuXG4gICAgdGhpcy5fZm9jdXNTdHJlYW0kLm5leHQobWVyZ2UoLi4uZm9jdXNPYnNlcnZhYmxlcykucGlwZShtYXAodm9pZEZuKSkpO1xuXG4gICAgdGhpcy5fYmx1clN0cmVhbSQubmV4dChtZXJnZSguLi5ibHVyT2JzZXJ2YWJsZXMpLnBpcGUobWFwKCgpID0+IHRoaXMuY29udHJvbD8ubWFya0FzVG91Y2hlZCgpKSkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid2xjbS1kYXRlLXJhbmdlLXBpY2tlci1pbnB1dHMtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJ3bGNtLWRhdGUtcmFuZ2UtcGlja2VyLWlucHV0LWZpZWxkLXdyYXBwZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbd2xjbURhdGVSYW5nZVBpY2tlcklucHV0U3RhcnRdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwid2xjbS1kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1kYXNoXCI+PC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtZmllbGQtd3JhcHBlclwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt3bGNtRGF0ZVJhbmdlUGlja2VySW5wdXRFbmRdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19