mis-crystal-design-system 18.0.10 → 18.0.12

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.
@@ -6,6 +6,7 @@ import { CommonModule } from "@angular/common";
6
6
  import { TableFilterComponent } from "./filter/filter.component";
7
7
  import { CheckboxModule } from "mis-crystal-design-system/checkbox";
8
8
  import { ScrollingModule } from "@angular/cdk/scrolling";
9
+ import { SortIconsDirective } from "./sort-icons.directive";
9
10
  import * as i0 from "@angular/core";
10
11
  export class TableModule {
11
12
  static forRoot() {
@@ -18,10 +19,30 @@ export class TableModule {
18
19
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TableModule, [{
19
20
  type: NgModule,
20
21
  args: [{
21
- declarations: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective],
22
+ declarations: [
23
+ TableComponent,
24
+ SubTableComponent,
25
+ TableFilterComponent,
26
+ CustomTableCellDirective,
27
+ SortIconsDirective
28
+ ],
22
29
  imports: [CommonModule, CheckboxModule, ScrollingModule],
23
- exports: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective]
30
+ exports: [
31
+ TableComponent,
32
+ SubTableComponent,
33
+ TableFilterComponent,
34
+ CustomTableCellDirective,
35
+ SortIconsDirective
36
+ ]
24
37
  }]
25
38
  }], null, null); })();
26
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(TableModule, { declarations: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective], imports: [CommonModule, CheckboxModule, ScrollingModule], exports: [TableComponent, SubTableComponent, TableFilterComponent, CustomTableCellDirective] }); })();
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdGFibGUvdGFibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPekQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDbEQsQ0FBQzs0R0FIVSxXQUFXO21FQUFYLFdBQVc7dUVBSFosWUFBWSxFQUFFLGNBQWMsRUFBRSxlQUFlOztpRkFHNUMsV0FBVztjQUx2QixRQUFRO2VBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLHdCQUF3QixDQUFDO2dCQUNqRyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQztnQkFDeEQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLHdCQUF3QixDQUFDO2FBQzdGOzt3RkFDWSxXQUFXLG1CQUpQLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSx3QkFBd0IsYUFDdEYsWUFBWSxFQUFFLGNBQWMsRUFBRSxlQUFlLGFBQzdDLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gXCIuL3RhYmxlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ3VzdG9tVGFibGVDZWxsRGlyZWN0aXZlIH0gZnJvbSBcIi4vY3VzdG9tLXRhYmxlLWNlbGwuZGlyZWN0aXZlXCI7XG5pbXBvcnQgeyBTdWJUYWJsZUNvbXBvbmVudCB9IGZyb20gXCIuL3N1Yi10YWJsZS9zdWItdGFibGUuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBUYWJsZUZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDaGVja2JveE1vZHVsZSB9IGZyb20gXCJtaXMtY3J5c3RhbC1kZXNpZ24tc3lzdGVtL2NoZWNrYm94XCI7XG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3Njcm9sbGluZ1wiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtUYWJsZUNvbXBvbmVudCwgU3ViVGFibGVDb21wb25lbnQsIFRhYmxlRmlsdGVyQ29tcG9uZW50LCBDdXN0b21UYWJsZUNlbGxEaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDaGVja2JveE1vZHVsZSwgU2Nyb2xsaW5nTW9kdWxlXSxcbiAgZXhwb3J0czogW1RhYmxlQ29tcG9uZW50LCBTdWJUYWJsZUNvbXBvbmVudCwgVGFibGVGaWx0ZXJDb21wb25lbnQsIEN1c3RvbVRhYmxlQ2VsbERpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgVGFibGVNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFRhYmxlTW9kdWxlPiB7XG4gICAgcmV0dXJuIHsgbmdNb2R1bGU6IFRhYmxlTW9kdWxlLCBwcm92aWRlcnM6IFtdIH07XG4gIH1cbn1cbiJdfQ==
39
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(TableModule, { declarations: [TableComponent,
40
+ SubTableComponent,
41
+ TableFilterComponent,
42
+ CustomTableCellDirective,
43
+ SortIconsDirective], imports: [CommonModule, CheckboxModule, ScrollingModule], exports: [TableComponent,
44
+ SubTableComponent,
45
+ TableFilterComponent,
46
+ CustomTableCellDirective,
47
+ SortIconsDirective] }); })();
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdGFibGUvdGFibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFtQjVELE1BQU0sT0FBTyxXQUFXO0lBQ3RCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDO0lBQ2xELENBQUM7NEdBSFUsV0FBVzttRUFBWCxXQUFXO3VFQVRaLFlBQVksRUFBRSxjQUFjLEVBQUUsZUFBZTs7aUZBUzVDLFdBQVc7Y0FqQnZCLFFBQVE7ZUFBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osY0FBYztvQkFDZCxpQkFBaUI7b0JBQ2pCLG9CQUFvQjtvQkFDcEIsd0JBQXdCO29CQUN4QixrQkFBa0I7aUJBQ25CO2dCQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDO2dCQUN4RCxPQUFPLEVBQUU7b0JBQ1AsY0FBYztvQkFDZCxpQkFBaUI7b0JBQ2pCLG9CQUFvQjtvQkFDcEIsd0JBQXdCO29CQUN4QixrQkFBa0I7aUJBQ25CO2FBQ0Y7O3dGQUNZLFdBQVcsbUJBZnBCLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsb0JBQW9CO1FBQ3BCLHdCQUF3QjtRQUN4QixrQkFBa0IsYUFFVixZQUFZLEVBQUUsY0FBYyxFQUFFLGVBQWUsYUFFckQsY0FBYztRQUNkLGlCQUFpQjtRQUNqQixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSBcIi4vdGFibGUuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBDdXN0b21UYWJsZUNlbGxEaXJlY3RpdmUgfSBmcm9tIFwiLi9jdXN0b20tdGFibGUtY2VsbC5kaXJlY3RpdmVcIjtcbmltcG9ydCB7IFN1YlRhYmxlQ29tcG9uZW50IH0gZnJvbSBcIi4vc3ViLXRhYmxlL3N1Yi10YWJsZS5jb21wb25lbnRcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IFRhYmxlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vZmlsdGVyL2ZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IENoZWNrYm94TW9kdWxlIH0gZnJvbSBcIm1pcy1jcnlzdGFsLWRlc2lnbi1zeXN0ZW0vY2hlY2tib3hcIjtcbmltcG9ydCB7IFNjcm9sbGluZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jZGsvc2Nyb2xsaW5nXCI7XG5pbXBvcnQgeyBTb3J0SWNvbnNEaXJlY3RpdmUgfSBmcm9tIFwiLi9zb3J0LWljb25zLmRpcmVjdGl2ZVwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBUYWJsZUNvbXBvbmVudCwgXG4gICAgU3ViVGFibGVDb21wb25lbnQsIFxuICAgIFRhYmxlRmlsdGVyQ29tcG9uZW50LCBcbiAgICBDdXN0b21UYWJsZUNlbGxEaXJlY3RpdmUsXG4gICAgU29ydEljb25zRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENoZWNrYm94TW9kdWxlLCBTY3JvbGxpbmdNb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgVGFibGVDb21wb25lbnQsIFxuICAgIFN1YlRhYmxlQ29tcG9uZW50LCBcbiAgICBUYWJsZUZpbHRlckNvbXBvbmVudCwgXG4gICAgQ3VzdG9tVGFibGVDZWxsRGlyZWN0aXZlLFxuICAgIFNvcnRJY29uc0RpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxUYWJsZU1vZHVsZT4ge1xuICAgIHJldHVybiB7IG5nTW9kdWxlOiBUYWJsZU1vZHVsZSwgcHJvdmlkZXJzOiBbXSB9O1xuICB9XG59XG4iXX0=
@@ -280,7 +280,7 @@ class DropdownComponent {
280
280
  //Needed to handle the scrollbar coming for 2-3 items case
281
281
  const containerPadding = 8;
282
282
  const finalHeight = Math.max(50, Math.min(totalMeasuredHeight + containerPadding, 320));
283
- this.dynamicHeight = `${finalHeight}px`;
283
+ this.dynamicHeight = this.dropdownListHeight ? this.dropdownListHeight : `${finalHeight}px`;
284
284
  this.cdr.detectChanges();
285
285
  }
286
286
  get currentData() {
@@ -305,7 +305,7 @@ class DropdownComponent {
305
305
  this.config.dataStream().pipe().subscribe(res => {
306
306
  this.data = res;
307
307
  this.loading = false;
308
- setTimeout(() => this.measureAndUpdateHeight(), 100);
308
+ setTimeout(() => this.measureAndUpdateHeight(), 60);
309
309
  });
310
310
  }
311
311
  const index = this.data.findIndex((dataItem) => dataItem.value === this.selectedItem.value);
@@ -344,7 +344,7 @@ class DropdownComponent {
344
344
  this.openDropdown(this.popupContainer, this.selectElement.nativeElement);
345
345
  setTimeout(() => {
346
346
  this.measureAndUpdateHeight();
347
- }, 100);
347
+ }, 60);
348
348
  }
349
349
  else {
350
350
  this.onCancel();
@@ -451,7 +451,7 @@ class DropdownComponent {
451
451
  }
452
452
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DropdownComponent, [{
453
453
  type: Component,
454
- args: [{ selector: "mis-dropdown", template: "<div (click)=\"setUpAsyncDataSearch()\"\n(keyup.enter)=\"setUpAsyncDataSearch()\"\n class=\"main-container\"\n [ngStyle]=\"{\n height: height.length > 0 ? height : '',\n width: width.length > 0 ? width : ''\n }\"\n>\n <div\n class=\"dropdown\"\n #select\n tabindex=\"0\"\n (keyup.enter)=\"toggleDropdown()\"\n (click)=\"toggleDropdown()\"\n [ngStyle]=\"customStyles\"\n [attr.aria-label]=\"ariaLabel\"\n [ngClass]=\"isOpen ? 'dropdown-port': ''\"\n >\n <img class=\"img-container\" [width]=\"16\" [height]=\"16\" [src]=\"selectedItem?.customIcon\" *ngIf=\"selectedItem?.customIcon\">\n <div class=\"label\" [ngStyle]=\"{width: selectedItem?.customIcon ? 'calc(100% - 48px)' : 'calc(100% - 32px)'}\">\n <p class=\"text\" *ngIf=\"!showOnlyIcon; else showIcon\">\n {{ multiLine ? selectedItem?.label?.primaryText : selectedItem?.label || label }}\n </p>\n <ng-template #showIcon>\n <p class=\"text\" *ngIf=\"!selectedItem?.icon\">\n {{ label }}\n </p>\n <img class=\"icon\" *ngIf=\"!!selectedItem?.icon\" [src]=\"selectedItem?.icon\" alt=\"no img\" />\n </ng-template>\n </div>\n <svg\n class=\"handle\"\n [ngStyle]=\"{ transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)' }\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z\"\n fill=\"#181F33\"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class=\"popup-container\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" tabindex=\"0\"\n [ngStyle]=\"{\n height: dropdownListHeight,\n width: dropdownListWidth\n }\"\n (keyup.esc)=\"closeOnEsc($event)\"\n aria-label=\"dropdown\"\n >\n <div *ngIf=\"searchEnabled\" class=\"search-container\">\n <svg\n *ngIf=\"!isSearchInputFocused\"\n class=\"search-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n <input\n [ngModel]=\"searchInput\"\n [ngStyle]=\"{\n paddingLeft: isSearchInputFocused ? '12px' : '45px',\n border: isSearchInputFocused ? '1px solid #0937B2' : '1px solid #e0e0e0',\n paddingRight: isSearchInputFocused ? '45px' : '10px'\n }\"\n [tabIndex]=\"0\"\n (ngModelChange)=\"searchInputOnChange($event)\"\n [placeholder]=\"isSearchInputFocused ? '' : searchLabel\"\n (focus)=\"searchInputFocused(true)\"\n class=\"search-input\"\n [attr.aria-label]=\"searchLabel\"\n />\n <svg\n *ngIf=\"isSearchInputFocused\"\n class=\"cancel-icon\"\n (click)=\"searchInputCanceled($event)\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div class=\"status-container\" *ngIf=\"loading\">\n <mis-loader [mobileView]=\"true\"></mis-loader>\n </div>\n <div tabindex=\"-1\" *ngIf=\"!searchEnabled\" cdkFocusInitial></div>\n <div class=\"items\" #itemsContainer [ngStyle]=\"itemsContainerStyle\" *ngIf=\"!loading \"> \n <cdk-virtual-scroll-viewport *ngIf=\"currentData.length > 0\" [itemSize]=\"itemSizeForCdk\" class=\"dropdown-viewport\">\n <div\n class=\"item\"\n tabindex=\"0\"\n [ngClass]=\"{ 'item-disabled': item.disabled, 'item-selected': (higlightSelectedValue && item.value === selectedItem?.value), 'icon-only' : showOnlyIcon }\"\n (click)=\"item.disabled ? null : selectItem(item)\"\n (keyup.enter)=\"item.disabled ? null : selectItem(item)\"\n *cdkVirtualFor=\"let item of currentData;\"\n tabIndex=\"0\"\n >\n <ng-container *ngIf=\"customItem; else standardItem\">\n <ng-container\n [ngTemplateOutlet]=\"customItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #standardItem>\n <div class=\"label\" *ngIf=\"!showOnlyIcon\" [ngStyle]=\"{ width: item.icon ? '90%' : '100%', 'display': multiLine ? 'flex': 'inherit', 'flex-direction': multiLine ? 'column': 'inherit' }\">\n <span class=\"primaryText\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\">{{ multiLine ? item?.label?.primaryText : item?.label }}</span>\n <span class=\"secondaryText\" *ngIf=\"multiLine\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\"> {{ item?.label?.secondaryText ? item?.label?.secondaryText : additionalInfoMessage }} </span>\n </div>\n <div class=\"icon-container\" *ngIf=\"item.icon\">\n <img class=\"icon\" [src]=\"item.icon\" alt=\"no img\" />\n </div>\n </ng-template>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"noData\" *ngIf=\"currentData.length === 0\">\n {{ searchInput === \"\" ? noDataMessage : \"No results\" }}\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".main-container{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;height:32px;width:256px;font-family:Lato,sans-serif!important}.main-container .dropdown{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:inherit;border:1px solid #e0e0e0;border-radius:6px;background-color:#fff;cursor:pointer;display:flex;gap:4px;align-items:center;width:100%;box-sizing:border-box;padding:0 12px}.main-container .dropdown:hover,.main-container .dropdown:focus-visible{background-color:#f5f7fc;outline:none}.main-container .dropdown .label{box-sizing:border-box;display:flex;justify-content:flex-start;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.main-container .dropdown .label .text{margin:0!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.main-container .dropdown .label .count{background-color:#e0e0e0;border-radius:50%;padding:2px 7px;margin:0}.main-container .dropdown .handle{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.main-container .dropdown-port{background:#e6ebf7}.popup-container{width:100%;max-height:340px;padding-bottom:0;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 12px 24px #0000001f;display:flex;flex-direction:column;overflow:hidden;justify-content:space-between}.popup-container::-webkit-scrollbar{width:0;height:0}.popup-container .search-container{position:relative;box-sizing:border-box;padding:8px}.popup-container .search-container .search-icon{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container .search-container .search-input{height:40px;width:100%;padding:12px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:8px;outline:none;caret-color:#0937b2;font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:#181f33}.popup-container .search-container .cancel-icon{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container .items{padding:0 0 8px 8px;overflow-y:auto}.popup-container .items::-webkit-scrollbar{width:5px;height:0}.popup-container .items::-webkit-scrollbar-thumb{background:#9aa7b4;border-radius:10px}.popup-container .items .noData{display:flex;justify-content:center;align-items:center;height:44px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.popup-container .items .dropdown-viewport{height:100%}.popup-container .items .dropdown-viewport .item{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;gap:10px;padding:4px 12px;border-radius:6px;min-height:40px;height:auto;letter-spacing:.2px;color:#181f33}.popup-container .items .dropdown-viewport .item:hover,.popup-container .items .dropdown-viewport .item:focus-visible{background-color:#f5f7fc;outline:none}.popup-container .items .dropdown-viewport .item .label{width:100%;line-height:20px;font-size:14px;font-style:normal;font-weight:400}.popup-container .items .dropdown-viewport .item .label .primaryText{color:#181f33;font-family:Lato;font-size:14px;line-height:20px;letter-spacing:.2px;white-space:normal;word-wrap:break-word}.popup-container .items .dropdown-viewport .item .label .secondaryText{color:#6a737d;font-family:Lato;font-size:14px;line-height:20px;letter-spacing:.2px;white-space:normal;word-wrap:break-word}.popup-container .items .dropdown-viewport .item .icon-container{width:10%;display:flex;justify-content:flex-end}.popup-container .items .dropdown-viewport .item .icon-container .icon{width:20px;height:20px}.popup-container .items .item-disabled{cursor:not-allowed!important}.popup-container .items .item-disabled:hover,.popup-container .items .item-disabled:focus-visible{background-color:transparent!important;outline:none!important}.popup-container .items .item-disabled .label>span{color:#929dab!important;-webkit-user-select:none!important;user-select:none!important}.popup-container .items .item-selected{background-color:#e0e6f6;outline:none}.popup-container .items .icon-only{justify-content:center!important}::-webkit-scrollbar{height:8px;width:8px;background:#fff;border-radius:13px}::-webkit-scrollbar-thumb{background:#c8cdd3;border-radius:13px;cursor:pointer}.status-container{display:flex;justify-content:center;align-items:center;height:128px}.status-container p{text-align:center}\n"] }]
454
+ args: [{ selector: "mis-dropdown", template: "<div (click)=\"setUpAsyncDataSearch()\"\n(keyup.enter)=\"setUpAsyncDataSearch()\"\n class=\"main-container\"\n [ngStyle]=\"{\n height: height.length > 0 ? height : '',\n width: width.length > 0 ? width : ''\n }\"\n>\n <div\n class=\"dropdown\"\n #select\n tabindex=\"0\"\n (keyup.enter)=\"toggleDropdown()\"\n (click)=\"toggleDropdown()\"\n [ngStyle]=\"customStyles\"\n [attr.aria-label]=\"ariaLabel\"\n [ngClass]=\"isOpen ? 'dropdown-port': ''\"\n >\n <img class=\"img-container\" [width]=\"16\" [height]=\"16\" [src]=\"selectedItem?.customIcon\" *ngIf=\"selectedItem?.customIcon\">\n <div class=\"label\" [ngStyle]=\"{width: selectedItem?.customIcon ? 'calc(100% - 48px)' : 'calc(100% - 32px)'}\">\n <p class=\"text\" *ngIf=\"!showOnlyIcon; else showIcon\">\n {{ multiLine ? selectedItem?.label?.primaryText : selectedItem?.label || label }}\n </p>\n <ng-template #showIcon>\n <p class=\"text\" *ngIf=\"!selectedItem?.icon\">\n {{ label }}\n </p>\n <img class=\"icon\" *ngIf=\"!!selectedItem?.icon\" [src]=\"selectedItem?.icon\" alt=\"no img\" />\n </ng-template>\n </div>\n <svg\n class=\"handle\"\n [ngStyle]=\"{ transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)' }\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z\"\n fill=\"#181F33\"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class=\"popup-container\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" tabindex=\"0\"\n [ngStyle]=\"{\n height: dropdownListHeight,\n width: dropdownListWidth\n }\"\n (keyup.esc)=\"closeOnEsc($event)\"\n aria-label=\"dropdown\"\n >\n <div *ngIf=\"searchEnabled\" class=\"search-container\">\n <svg\n *ngIf=\"!isSearchInputFocused\"\n class=\"search-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n <input\n [ngModel]=\"searchInput\"\n [ngStyle]=\"{\n paddingLeft: isSearchInputFocused ? '12px' : '45px',\n border: isSearchInputFocused ? '1px solid #0937B2' : '1px solid #e0e0e0',\n paddingRight: isSearchInputFocused ? '45px' : '10px'\n }\"\n [tabIndex]=\"0\"\n (ngModelChange)=\"searchInputOnChange($event)\"\n [placeholder]=\"isSearchInputFocused ? '' : searchLabel\"\n (focus)=\"searchInputFocused(true)\"\n class=\"search-input\"\n [attr.aria-label]=\"searchLabel\"\n />\n <svg\n *ngIf=\"isSearchInputFocused\"\n class=\"cancel-icon\"\n (click)=\"searchInputCanceled($event)\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div class=\"status-container\" *ngIf=\"loading\">\n <mis-loader [mobileView]=\"true\"></mis-loader>\n </div>\n <div tabindex=\"-1\" *ngIf=\"!searchEnabled\" cdkFocusInitial></div>\n <div class=\"items\" #itemsContainer [ngStyle]=\"itemsContainerStyle\" *ngIf=\"!loading \">\n <cdk-virtual-scroll-viewport *ngIf=\"currentData.length > 0\" [itemSize]=\"itemSizeForCdk\" class=\"dropdown-viewport\">\n <div\n class=\"item\"\n tabindex=\"0\"\n [ngClass]=\"{ 'item-disabled': item.disabled, 'item-selected': (higlightSelectedValue && item.value === selectedItem?.value), 'icon-only' : showOnlyIcon }\"\n (click)=\"item.disabled ? null : selectItem(item)\"\n (keyup.enter)=\"item.disabled ? null : selectItem(item)\"\n *cdkVirtualFor=\"let item of currentData;\"\n tabIndex=\"0\"\n >\n <ng-container *ngIf=\"customItem; else standardItem\">\n <ng-container\n [ngTemplateOutlet]=\"customItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #standardItem>\n <div class=\"label\" *ngIf=\"!showOnlyIcon\" [ngStyle]=\"{ width: item.icon ? '90%' : '100%', 'display': multiLine ? 'flex': 'inherit', 'flex-direction': multiLine ? 'column': 'inherit' }\">\n <span class=\"primaryText\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\">{{ multiLine ? item?.label?.primaryText : item?.label }}</span>\n <span class=\"secondaryText\" *ngIf=\"multiLine\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\"> {{ item?.label?.secondaryText ? item?.label?.secondaryText : additionalInfoMessage }} </span>\n </div>\n <div class=\"icon-container\" *ngIf=\"item.icon\">\n <img class=\"icon\" [src]=\"item.icon\" alt=\"no img\" />\n </div>\n </ng-template>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"noData\" *ngIf=\"currentData.length === 0\">\n {{ searchInput === \"\" ? noDataMessage : \"No results\" }}\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".main-container{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;height:32px;width:256px;font-family:Lato,sans-serif!important}.main-container .dropdown{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:inherit;border:1px solid #e0e0e0;border-radius:6px;background-color:#fff;cursor:pointer;display:flex;gap:4px;align-items:center;width:100%;box-sizing:border-box;padding:0 12px}.main-container .dropdown:hover,.main-container .dropdown:focus-visible{background-color:#f5f7fc;outline:none}.main-container .dropdown .label{box-sizing:border-box;display:flex;justify-content:flex-start;align-items:center;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.main-container .dropdown .label .text{margin:0!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.main-container .dropdown .label .count{background-color:#e0e0e0;border-radius:50%;padding:2px 7px;margin:0}.main-container .dropdown .handle{width:24px;height:24px;transition:.3s;position:absolute;right:12px;border-radius:50%;overflow:hidden}.main-container .dropdown-port{background:#e6ebf7}.popup-container{width:100%;max-height:340px;padding-bottom:0;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 12px 24px #0000001f;display:flex;flex-direction:column;overflow:hidden;justify-content:space-between}.popup-container::-webkit-scrollbar{width:0;height:0}.popup-container .search-container{position:relative;box-sizing:border-box;padding:8px}.popup-container .search-container .search-icon{position:absolute;width:24px;height:24px;top:50%;transform:translateY(-50%);left:18px;z-index:1}.popup-container .search-container .search-input{height:40px;width:100%;padding:12px;border:1px solid #e0e0e0;box-sizing:border-box;border-radius:8px;outline:none;caret-color:#0937b2;font-style:normal;font-weight:400;font-size:12px;line-height:18px;display:flex;align-items:center;letter-spacing:.2px;color:#181f33}.popup-container .search-container .cancel-icon{position:absolute;cursor:pointer;width:24px;height:24px;top:50%;transform:translateY(-50%);right:18px;z-index:1}.popup-container .items{padding:0 0 8px 8px;overflow-y:auto}.popup-container .items::-webkit-scrollbar{width:5px;height:0}.popup-container .items::-webkit-scrollbar-thumb{background:#9aa7b4;border-radius:10px}.popup-container .items .noData{display:flex;justify-content:center;align-items:center;height:44px;font-style:normal;font-weight:400;font-size:14px;line-height:20px;letter-spacing:.2px;color:#181f33}.popup-container .items .dropdown-viewport{height:100%}.popup-container .items .dropdown-viewport .item{cursor:pointer;display:flex;justify-content:flex-start;align-items:center;gap:10px;padding:4px 12px;border-radius:6px;min-height:40px;height:auto;letter-spacing:.2px;color:#181f33}.popup-container .items .dropdown-viewport .item:hover,.popup-container .items .dropdown-viewport .item:focus-visible{background-color:#f5f7fc;outline:none}.popup-container .items .dropdown-viewport .item .label{width:100%;line-height:20px;font-size:14px;font-style:normal;font-weight:400}.popup-container .items .dropdown-viewport .item .label .primaryText{color:#181f33;font-family:Lato;font-size:14px;line-height:20px;letter-spacing:.2px;white-space:normal;word-wrap:break-word}.popup-container .items .dropdown-viewport .item .label .secondaryText{color:#6a737d;font-family:Lato;font-size:14px;line-height:20px;letter-spacing:.2px;white-space:normal;word-wrap:break-word}.popup-container .items .dropdown-viewport .item .icon-container{width:10%;display:flex;justify-content:flex-end}.popup-container .items .dropdown-viewport .item .icon-container .icon{width:20px;height:20px}.popup-container .items .item-disabled{cursor:not-allowed!important}.popup-container .items .item-disabled:hover,.popup-container .items .item-disabled:focus-visible{background-color:transparent!important;outline:none!important}.popup-container .items .item-disabled .label>span{color:#929dab!important;-webkit-user-select:none!important;user-select:none!important}.popup-container .items .item-selected{background-color:#e0e6f6;outline:none}.popup-container .items .icon-only{justify-content:center!important}::-webkit-scrollbar{height:8px;width:8px;background:#fff;border-radius:13px}::-webkit-scrollbar-thumb{background:#c8cdd3;border-radius:13px;cursor:pointer}.status-container{display:flex;justify-content:center;align-items:center;height:128px}.status-container p{text-align:center}\n"] }]
455
455
  }], () => [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }], { data: [{
456
456
  type: Input
457
457
  }], height: [{
@@ -1 +1 @@
1
- {"version":3,"file":"mis-crystal-design-system-dropdown.mjs","sources":["../../../projects/mis-components/dropdown/dropdown.component.html","../../../projects/mis-components/dropdown/dropdown.component.ts","../../../projects/mis-components/dropdown/calculate-container-height.directive.ts","../../../projects/mis-components/dropdown/dropdown.module.ts","../../../projects/mis-components/dropdown/mis-crystal-design-system-dropdown.ts"],"sourcesContent":["<div (click)=\"setUpAsyncDataSearch()\"\n(keyup.enter)=\"setUpAsyncDataSearch()\"\n class=\"main-container\"\n [ngStyle]=\"{\n height: height.length > 0 ? height : '',\n width: width.length > 0 ? width : ''\n }\"\n>\n <div\n class=\"dropdown\"\n #select\n tabindex=\"0\"\n (keyup.enter)=\"toggleDropdown()\"\n (click)=\"toggleDropdown()\"\n [ngStyle]=\"customStyles\"\n [attr.aria-label]=\"ariaLabel\"\n [ngClass]=\"isOpen ? 'dropdown-port': ''\"\n >\n <img class=\"img-container\" [width]=\"16\" [height]=\"16\" [src]=\"selectedItem?.customIcon\" *ngIf=\"selectedItem?.customIcon\">\n <div class=\"label\" [ngStyle]=\"{width: selectedItem?.customIcon ? 'calc(100% - 48px)' : 'calc(100% - 32px)'}\">\n <p class=\"text\" *ngIf=\"!showOnlyIcon; else showIcon\">\n {{ multiLine ? selectedItem?.label?.primaryText : selectedItem?.label || label }}\n </p>\n <ng-template #showIcon>\n <p class=\"text\" *ngIf=\"!selectedItem?.icon\">\n {{ label }}\n </p>\n <img class=\"icon\" *ngIf=\"!!selectedItem?.icon\" [src]=\"selectedItem?.icon\" alt=\"no img\" />\n </ng-template>\n </div>\n <svg\n class=\"handle\"\n [ngStyle]=\"{ transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)' }\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z\"\n fill=\"#181F33\"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class=\"popup-container\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" tabindex=\"0\"\n [ngStyle]=\"{\n height: dropdownListHeight,\n width: dropdownListWidth\n }\"\n (keyup.esc)=\"closeOnEsc($event)\"\n aria-label=\"dropdown\"\n >\n <div *ngIf=\"searchEnabled\" class=\"search-container\">\n <svg\n *ngIf=\"!isSearchInputFocused\"\n class=\"search-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n <input\n [ngModel]=\"searchInput\"\n [ngStyle]=\"{\n paddingLeft: isSearchInputFocused ? '12px' : '45px',\n border: isSearchInputFocused ? '1px solid #0937B2' : '1px solid #e0e0e0',\n paddingRight: isSearchInputFocused ? '45px' : '10px'\n }\"\n [tabIndex]=\"0\"\n (ngModelChange)=\"searchInputOnChange($event)\"\n [placeholder]=\"isSearchInputFocused ? '' : searchLabel\"\n (focus)=\"searchInputFocused(true)\"\n class=\"search-input\"\n [attr.aria-label]=\"searchLabel\"\n />\n <svg\n *ngIf=\"isSearchInputFocused\"\n class=\"cancel-icon\"\n (click)=\"searchInputCanceled($event)\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div class=\"status-container\" *ngIf=\"loading\">\n <mis-loader [mobileView]=\"true\"></mis-loader>\n </div>\n <div tabindex=\"-1\" *ngIf=\"!searchEnabled\" cdkFocusInitial></div>\n <div class=\"items\" #itemsContainer [ngStyle]=\"itemsContainerStyle\" *ngIf=\"!loading \"> \n <cdk-virtual-scroll-viewport *ngIf=\"currentData.length > 0\" [itemSize]=\"itemSizeForCdk\" class=\"dropdown-viewport\">\n <div\n class=\"item\"\n tabindex=\"0\"\n [ngClass]=\"{ 'item-disabled': item.disabled, 'item-selected': (higlightSelectedValue && item.value === selectedItem?.value), 'icon-only' : showOnlyIcon }\"\n (click)=\"item.disabled ? null : selectItem(item)\"\n (keyup.enter)=\"item.disabled ? null : selectItem(item)\"\n *cdkVirtualFor=\"let item of currentData;\"\n tabIndex=\"0\"\n >\n <ng-container *ngIf=\"customItem; else standardItem\">\n <ng-container\n [ngTemplateOutlet]=\"customItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #standardItem>\n <div class=\"label\" *ngIf=\"!showOnlyIcon\" [ngStyle]=\"{ width: item.icon ? '90%' : '100%', 'display': multiLine ? 'flex': 'inherit', 'flex-direction': multiLine ? 'column': 'inherit' }\">\n <span class=\"primaryText\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\">{{ multiLine ? item?.label?.primaryText : item?.label }}</span>\n <span class=\"secondaryText\" *ngIf=\"multiLine\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\"> {{ item?.label?.secondaryText ? item?.label?.secondaryText : additionalInfoMessage }} </span>\n </div>\n <div class=\"icon-container\" *ngIf=\"item.icon\">\n <img class=\"icon\" [src]=\"item.icon\" alt=\"no img\" />\n </div>\n </ng-template>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"noData\" *ngIf=\"currentData.length === 0\">\n {{ searchInput === \"\" ? noDataMessage : \"No results\" }}\n </div>\n </div>\n </div>\n</ng-template>\n","import { ConnectionPositionPair, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\nimport { Component, ContentChild, ElementRef, EventEmitter, HostListener, Input, OnInit, Output, TemplateRef, ViewChild, ViewContainerRef, ChangeDetectorRef } from \"@angular/core\";\nimport { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\n\n@Component({\n selector: \"mis-dropdown\",\n templateUrl: \"./dropdown.component.html\",\n styleUrls: [\"./dropdown.component.scss\"],\n \n})\nexport class DropdownComponent implements OnInit {\n isOpen = false;\n loading: boolean = false;\n isSearchInputFocused: boolean = false;\n searchInput: string = \"\";\n searchData: DropdownItem[] = [];\n visibleItems = 10;\n dynamicHeight: string = \"auto\";\n @Input() data: DropdownItem[] = [];\n @Input() height: string = \"\";\n @Input() ariaLabel: string = \"\";\n @Input() width: string = \"\";\n @Input() label: string = \"Select\";\n @Input() itemSizeForCdk: number;\n @Input() showOnlyIcon: boolean = false;\n @Input() higlightSelectedValue: boolean = false;\n @Input() dropdownListHeight: string = \"\";\n @Input() dropdownListWidth: string = \"\";\n @Input() dropdownListPosition: \"Left\" | \"Right\" = \"Left\";\n @Input() config\n @Input() searchEnabled: boolean = true;\n @Input() selectedItem: DropdownItem = { value: \"\", label: \"\" };\n @Input() noDataMessage: string = \"No Data\";\n @Input() multiLine: boolean = false;\n @Input() additionalInfoMessage : string;\n @Input() scrollIntoView: boolean = false;\n @Input() searchLabel:string = \"Search Keyword\";\n @Input() customStyles: { [key: string]: string };\n @Input() activeItem: boolean = false;\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n @ViewChild(\"select\", { static: false }) selectElement: ElementRef;\n @ViewChild(\"popupContainer\", { static: false }) popupContainer: TemplateRef<Element>;\n @ViewChild(\"itemsContainer\", { static: false }) itemsContainer: ElementRef;\n @ViewChild(CdkVirtualScrollViewport) viewPort: CdkVirtualScrollViewport;\n @ContentChild(\"misCustomItem\", { static: false }) customItem: TemplateRef<Element>;\n private overlayRef: OverlayRef;\n \n constructor(\n private eRef: ElementRef, \n private overlay: Overlay, \n private viewContainerRef: ViewContainerRef,\n private cdr: ChangeDetectorRef\n ) {}\n \n ngOnInit() {\n }\n\n\n measureAndUpdateHeight() {\n if (!this.isOpen || !this.itemsContainer) return;\n\n const container = this.itemsContainer.nativeElement;\n const items = container.querySelectorAll('.item');\n \n if (items.length === 0) {\n this.dynamicHeight = \"50px\";\n this.cdr.detectChanges();\n return;\n }\n\n \n let totalMeasuredHeight = 0;\n let maxItemHeight = 0;\n \n Array.from(items).slice(0, Math.min(8, items.length)).forEach((item: HTMLElement) => {\n const rect = item.getBoundingClientRect();\n totalMeasuredHeight += rect.height;\n maxItemHeight = Math.max(maxItemHeight, rect.height);\n });\n //Needed to handle the scrollbar coming for 2-3 items case\n const containerPadding = 8;\n const finalHeight = Math.max(50, Math.min(totalMeasuredHeight + containerPadding, 320));\n \n this.dynamicHeight = `${finalHeight}px`;\n this.cdr.detectChanges();\n }\n\n get currentData(): DropdownItem[] {\n return this.searchInput ? this.searchData : this.data;\n }\n\n get itemsContainerStyle(): { [key: string]: string } {\n return {\n 'height': this.dynamicHeight,\n 'max-height': '320px',\n 'min-height': '50px'\n };\n }\n\n getIconStyles(item: any, activeItem: boolean): { [key: string]: string } {\n return {\n 'color': item && activeItem ? '#0937B2' : '',\n 'font-weight': item && activeItem ? '700' : ''\n };\n }\n\nsetUpAsyncDataSearch()\n{\n if(this.config)\n {\n this.loading = true;\n this.config.dataStream().pipe().subscribe(res=> {\n this.data = res\n this.loading = false\n setTimeout(() => this.measureAndUpdateHeight(), 100);\n })\n }\n const index = this.data.findIndex((dataItem) => dataItem.value === this.selectedItem.value);\n if (this.scrollIntoView)\n this.viewPort.scrollToIndex(index, 'smooth');\n}\n filterByValue(array, string: string) {\n return array.filter(o => o.label.toLowerCase().includes(string.toLowerCase().trim()));\n }\n\n filterByPrimaryText(array, string: string) {\n return array.filter(o => o.label.primaryText.toLowerCase().includes(string.toLowerCase().trim()));\n }\n searchInputOnChange(newValue) {\n this.searchInput = newValue;\n if (newValue) {\n this.searchData = this.multiLine ? this.filterByPrimaryText(this.data, newValue) : this.filterByValue(this.data, newValue);\n } else {\n this.searchData = [];\n this.searchInput = \"\";\n }\n requestAnimationFrame(() => this.measureAndUpdateHeight());\n }\n searchInputFocused(isFocused: boolean) {\n this.isSearchInputFocused = isFocused;\n }\n searchInputCanceled(event) {\n event.stopPropagation();\n this.searchInput = \"\";\n this.isSearchInputFocused = false;\n requestAnimationFrame(() => this.measureAndUpdateHeight());\n }\n toggleDropdown() {\n this.isOpen = !this.isOpen;\n if (this.isOpen) {\n this.openDropdown(this.popupContainer, this.selectElement.nativeElement);\n setTimeout(() => {\n this.measureAndUpdateHeight();\n }, 100);\n } else {\n this.onCancel();\n }\n }\n private openDropdown(template: TemplateRef<Element>, origin: HTMLElement): void {\n const positionsBottom = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n const positionsTop = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"top\" }, { overlayX: \"start\", overlayY: \"bottom\" }, 0, -4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"top\" }, { overlayX: \"end\", overlayY: \"bottom\" }, 0, -4)\n ];\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions([\n ...(this.dropdownListPosition === \"Right\" ? positionsBottom.reverse() : positionsBottom),\n ...(this.dropdownListPosition === \"Right\" ? positionsTop.reverse() : positionsTop)\n ])\n .withPush(true);\n const configs = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n scrollStrategy: this.overlay.scrollStrategies.reposition(),\n positionStrategy,\n width: origin.clientWidth\n });\n this.overlayRef = this.overlay.create(configs);\n if (this.dropdownListWidth) this.overlayRef.updateSize({ width: this.dropdownListWidth });\n if (this.dropdownListHeight) this.overlayRef.updateSize({ height: this.dropdownListHeight });\n this.overlayRef.attach(new TemplatePortal(template, this.viewContainerRef));\n this.overlayRef.backdropClick().subscribe(res => {\n this.onCancel();\n });\n }\n selectItem(item) {\n this.onChange.emit(item); \n this.toggleDropdown();\n }\n onCancel() {\n this.isSearchInputFocused = false;\n this.isOpen = false;\n this.overlayRef?.detach();\n this.searchInput = \"\";\n }\n \n @HostListener(\"keyup.esc\", ['$event'])\n closeOnEsc(event: KeyboardEvent) {\n this.onCancel();\n event.stopPropagation();\n event.preventDefault();\n }\n}\nexport interface DropdownItem {\n label: any ;\n value: string;\n icon?: string;\n disabled?: boolean;\n customIcon?: string\n}\nexport interface ActionItemLabel {\n primaryText ?: string;\n secondaryText ?: string;\n}\n","import { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({\n selector: '[calculateContainerHeight]'\n})\nexport class CalculateContainerHeightDirective implements AfterViewInit{\n @Input() items: any[];\n @Input() visibleItems: number;\n\n constructor(private el: ElementRef) {\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n this.setContainerHeight();\n },200);\n }\n\n private setContainerHeight() {\n const firstItemElement = this.el.nativeElement.querySelector('.item');\n const firstItemHeight = firstItemElement ? firstItemElement.getBoundingClientRect().height :0;\n const numberOfItems = this.items ? this.items.length : 0;\n \n let containerHeight = 0;\n if (firstItemHeight * numberOfItems > 200) {\n containerHeight = 200;\n } else if (numberOfItems <= this.visibleItems) {\n containerHeight = firstItemHeight * numberOfItems;\n } else {\n containerHeight = firstItemHeight * this.visibleItems;\n }\n\n this.el.nativeElement.style.height = `${containerHeight}px`;\n }\n\n}\n","import { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { DropdownComponent } from \"./dropdown.component\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { ScrollingModule } from \"@angular/cdk/scrolling\";\nimport { LoaderModule } from \"mis-crystal-design-system/loader\";\nimport { CalculateContainerHeightDirective } from './calculate-container-height.directive';\nimport { A11yModule } from \"@angular/cdk/a11y\";\n\n@NgModule({\n declarations: [DropdownComponent, CalculateContainerHeightDirective],\n imports: [CommonModule, FormsModule, OverlayModule, ScrollingModule,LoaderModule, A11yModule], \n exports: [DropdownComponent]\n})\nexport class DropdownModule {\n static forRoot(): ModuleWithProviders<DropdownModule> {\n return { ngModule: DropdownModule, providers: [] };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mis-crystal-design-system-dropdown.mjs","sources":["../../../projects/mis-components/dropdown/dropdown.component.html","../../../projects/mis-components/dropdown/dropdown.component.ts","../../../projects/mis-components/dropdown/calculate-container-height.directive.ts","../../../projects/mis-components/dropdown/dropdown.module.ts","../../../projects/mis-components/dropdown/mis-crystal-design-system-dropdown.ts"],"sourcesContent":["<div (click)=\"setUpAsyncDataSearch()\"\n(keyup.enter)=\"setUpAsyncDataSearch()\"\n class=\"main-container\"\n [ngStyle]=\"{\n height: height.length > 0 ? height : '',\n width: width.length > 0 ? width : ''\n }\"\n>\n <div\n class=\"dropdown\"\n #select\n tabindex=\"0\"\n (keyup.enter)=\"toggleDropdown()\"\n (click)=\"toggleDropdown()\"\n [ngStyle]=\"customStyles\"\n [attr.aria-label]=\"ariaLabel\"\n [ngClass]=\"isOpen ? 'dropdown-port': ''\"\n >\n <img class=\"img-container\" [width]=\"16\" [height]=\"16\" [src]=\"selectedItem?.customIcon\" *ngIf=\"selectedItem?.customIcon\">\n <div class=\"label\" [ngStyle]=\"{width: selectedItem?.customIcon ? 'calc(100% - 48px)' : 'calc(100% - 32px)'}\">\n <p class=\"text\" *ngIf=\"!showOnlyIcon; else showIcon\">\n {{ multiLine ? selectedItem?.label?.primaryText : selectedItem?.label || label }}\n </p>\n <ng-template #showIcon>\n <p class=\"text\" *ngIf=\"!selectedItem?.icon\">\n {{ label }}\n </p>\n <img class=\"icon\" *ngIf=\"!!selectedItem?.icon\" [src]=\"selectedItem?.icon\" alt=\"no img\" />\n </ng-template>\n </div>\n <svg\n class=\"handle\"\n [ngStyle]=\"{ transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)' }\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.825 7.15845L10 10.9751L6.175 7.15845L5 8.33345L10 13.3334L15 8.33345L13.825 7.15845Z\"\n fill=\"#181F33\"\n />\n </svg>\n </div>\n</div>\n<ng-template #popupContainer>\n <div\n class=\"popup-container\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" tabindex=\"0\"\n [ngStyle]=\"{\n height: dropdownListHeight,\n width: dropdownListWidth\n }\"\n (keyup.esc)=\"closeOnEsc($event)\"\n aria-label=\"dropdown\"\n >\n <div *ngIf=\"searchEnabled\" class=\"search-container\">\n <svg\n *ngIf=\"!isSearchInputFocused\"\n class=\"search-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4.21508 11.1456C4.21508 7.3179 7.33722 4.21165 11.1926 4.21165C15.048 4.21165 18.1702 7.3179 18.1702 11.1456C18.1702 12.6931 17.6599 14.1226 16.7972 15.2767L15.3685 16.7013C14.2044 17.5668 12.759 18.0796 11.1926 18.0796C7.33722 18.0796 4.21508 14.9734 4.21508 11.1456ZM15.9421 17.7835C14.6021 18.7329 12.9627 19.2913 11.1926 19.2913C6.66977 19.2913 3 15.6461 3 11.1456C3 6.64512 6.66977 3 11.1926 3C15.7155 3 19.3852 6.64512 19.3852 11.1456C19.3852 12.9371 18.8037 14.5931 17.8184 15.9375L19.8361 17.4048C20.6705 17.912 21.7554 18.6543 20.2454 20.215C18.7353 21.7756 18.0099 20.6663 17.4991 19.8364L15.9421 17.7835Z\"\n fill=\"#6A737D\"\n />\n </svg>\n <input\n [ngModel]=\"searchInput\"\n [ngStyle]=\"{\n paddingLeft: isSearchInputFocused ? '12px' : '45px',\n border: isSearchInputFocused ? '1px solid #0937B2' : '1px solid #e0e0e0',\n paddingRight: isSearchInputFocused ? '45px' : '10px'\n }\"\n [tabIndex]=\"0\"\n (ngModelChange)=\"searchInputOnChange($event)\"\n [placeholder]=\"isSearchInputFocused ? '' : searchLabel\"\n (focus)=\"searchInputFocused(true)\"\n class=\"search-input\"\n [attr.aria-label]=\"searchLabel\"\n />\n <svg\n *ngIf=\"isSearchInputFocused\"\n class=\"cancel-icon\"\n (click)=\"searchInputCanceled($event)\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.87446 7.32144C8.44588 6.89285 7.751 6.89285 7.32242 7.32144C6.89383 7.75002 6.89383 8.4449 7.32242 8.87349L10.4488 11.9999L7.32357 15.1252C6.89498 15.5538 6.89498 16.2486 7.32357 16.6772C7.75215 17.1058 8.44703 17.1058 8.87561 16.6772L12.0009 13.552L15.1261 16.6772C15.5547 17.1058 16.2496 17.1058 16.6781 16.6772C17.1067 16.2486 17.1067 15.5537 16.6781 15.1251L13.5529 11.9999L16.6793 8.87354C17.1079 8.44496 17.1079 7.75008 16.6793 7.3215C16.2507 6.89291 15.5558 6.89291 15.1273 7.3215L12.0009 10.4479L8.87446 7.32144Z\"\n fill=\"#6A737D\"\n />\n </svg>\n </div>\n <div class=\"status-container\" *ngIf=\"loading\">\n <mis-loader [mobileView]=\"true\"></mis-loader>\n </div>\n <div tabindex=\"-1\" *ngIf=\"!searchEnabled\" cdkFocusInitial></div>\n <div class=\"items\" #itemsContainer [ngStyle]=\"itemsContainerStyle\" *ngIf=\"!loading \">\n <cdk-virtual-scroll-viewport *ngIf=\"currentData.length > 0\" [itemSize]=\"itemSizeForCdk\" class=\"dropdown-viewport\">\n <div\n class=\"item\"\n tabindex=\"0\"\n [ngClass]=\"{ 'item-disabled': item.disabled, 'item-selected': (higlightSelectedValue && item.value === selectedItem?.value), 'icon-only' : showOnlyIcon }\"\n (click)=\"item.disabled ? null : selectItem(item)\"\n (keyup.enter)=\"item.disabled ? null : selectItem(item)\"\n *cdkVirtualFor=\"let item of currentData;\"\n tabIndex=\"0\"\n >\n <ng-container *ngIf=\"customItem; else standardItem\">\n <ng-container\n [ngTemplateOutlet]=\"customItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-container>\n </ng-container>\n <ng-template #standardItem>\n <div class=\"label\" *ngIf=\"!showOnlyIcon\" [ngStyle]=\"{ width: item.icon ? '90%' : '100%', 'display': multiLine ? 'flex': 'inherit', 'flex-direction': multiLine ? 'column': 'inherit' }\">\n <span class=\"primaryText\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\">{{ multiLine ? item?.label?.primaryText : item?.label }}</span>\n <span class=\"secondaryText\" *ngIf=\"multiLine\" [ngStyle]=\"getIconStyles(item.icon, activeItem)\"> {{ item?.label?.secondaryText ? item?.label?.secondaryText : additionalInfoMessage }} </span>\n </div>\n <div class=\"icon-container\" *ngIf=\"item.icon\">\n <img class=\"icon\" [src]=\"item.icon\" alt=\"no img\" />\n </div>\n </ng-template>\n </div>\n </cdk-virtual-scroll-viewport>\n <div class=\"noData\" *ngIf=\"currentData.length === 0\">\n {{ searchInput === \"\" ? noDataMessage : \"No results\" }}\n </div>\n </div>\n </div>\n</ng-template>\n","import { ConnectionPositionPair, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\nimport { Component, ContentChild, ElementRef, EventEmitter, HostListener, Input, OnInit, Output, TemplateRef, ViewChild, ViewContainerRef, ChangeDetectorRef } from \"@angular/core\";\nimport { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\n\n@Component({\n selector: \"mis-dropdown\",\n templateUrl: \"./dropdown.component.html\",\n styleUrls: [\"./dropdown.component.scss\"],\n \n})\nexport class DropdownComponent implements OnInit {\n isOpen = false;\n loading: boolean = false;\n isSearchInputFocused: boolean = false;\n searchInput: string = \"\";\n searchData: DropdownItem[] = [];\n visibleItems = 10;\n dynamicHeight: string = \"auto\";\n @Input() data: DropdownItem[] = [];\n @Input() height: string = \"\";\n @Input() ariaLabel: string = \"\";\n @Input() width: string = \"\";\n @Input() label: string = \"Select\";\n @Input() itemSizeForCdk: number;\n @Input() showOnlyIcon: boolean = false;\n @Input() higlightSelectedValue: boolean = false;\n @Input() dropdownListHeight: string = \"\";\n @Input() dropdownListWidth: string = \"\";\n @Input() dropdownListPosition: \"Left\" | \"Right\" = \"Left\";\n @Input() config\n @Input() searchEnabled: boolean = true;\n @Input() selectedItem: DropdownItem = { value: \"\", label: \"\" };\n @Input() noDataMessage: string = \"No Data\";\n @Input() multiLine: boolean = false;\n @Input() additionalInfoMessage : string;\n @Input() scrollIntoView: boolean = false;\n @Input() searchLabel:string = \"Search Keyword\";\n @Input() customStyles: { [key: string]: string };\n @Input() activeItem: boolean = false;\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n @ViewChild(\"select\", { static: false }) selectElement: ElementRef;\n @ViewChild(\"popupContainer\", { static: false }) popupContainer: TemplateRef<Element>;\n @ViewChild(\"itemsContainer\", { static: false }) itemsContainer: ElementRef;\n @ViewChild(CdkVirtualScrollViewport) viewPort: CdkVirtualScrollViewport;\n @ContentChild(\"misCustomItem\", { static: false }) customItem: TemplateRef<Element>;\n private overlayRef: OverlayRef;\n \n constructor(\n private eRef: ElementRef, \n private overlay: Overlay, \n private viewContainerRef: ViewContainerRef,\n private cdr: ChangeDetectorRef\n ) {}\n \n ngOnInit() {\n }\n\n\n measureAndUpdateHeight() {\n if (!this.isOpen || !this.itemsContainer) return;\n\n const container = this.itemsContainer.nativeElement;\n const items = container.querySelectorAll('.item');\n \n if (items.length === 0) {\n this.dynamicHeight = \"50px\";\n this.cdr.detectChanges();\n return;\n }\n\n \n let totalMeasuredHeight = 0;\n let maxItemHeight = 0;\n \n Array.from(items).slice(0, Math.min(8, items.length)).forEach((item: HTMLElement) => {\n const rect = item.getBoundingClientRect();\n totalMeasuredHeight += rect.height;\n maxItemHeight = Math.max(maxItemHeight, rect.height);\n });\n //Needed to handle the scrollbar coming for 2-3 items case\n const containerPadding = 8;\n const finalHeight = Math.max(50, Math.min(totalMeasuredHeight + containerPadding, 320));\n \n this.dynamicHeight = this.dropdownListHeight ? this.dropdownListHeight : `${finalHeight}px`;\n this.cdr.detectChanges();\n }\n\n get currentData(): DropdownItem[] {\n return this.searchInput ? this.searchData : this.data;\n }\n\n get itemsContainerStyle(): { [key: string]: string } {\n return {\n 'height': this.dynamicHeight,\n 'max-height': '320px',\n 'min-height': '50px'\n };\n }\n\n getIconStyles(item: any, activeItem: boolean): { [key: string]: string } {\n return {\n 'color': item && activeItem ? '#0937B2' : '',\n 'font-weight': item && activeItem ? '700' : ''\n };\n }\n\nsetUpAsyncDataSearch()\n{\n if(this.config)\n {\n this.loading = true;\n this.config.dataStream().pipe().subscribe(res=> {\n this.data = res\n this.loading = false\n setTimeout(() => this.measureAndUpdateHeight(), 60);\n })\n }\n const index = this.data.findIndex((dataItem) => dataItem.value === this.selectedItem.value);\n if (this.scrollIntoView)\n this.viewPort.scrollToIndex(index, 'smooth');\n}\n filterByValue(array, string: string) {\n return array.filter(o => o.label.toLowerCase().includes(string.toLowerCase().trim()));\n }\n\n filterByPrimaryText(array, string: string) {\n return array.filter(o => o.label.primaryText.toLowerCase().includes(string.toLowerCase().trim()));\n }\n searchInputOnChange(newValue) {\n this.searchInput = newValue;\n if (newValue) {\n this.searchData = this.multiLine ? this.filterByPrimaryText(this.data, newValue) : this.filterByValue(this.data, newValue);\n } else {\n this.searchData = [];\n this.searchInput = \"\";\n }\n requestAnimationFrame(() => this.measureAndUpdateHeight());\n }\n searchInputFocused(isFocused: boolean) {\n this.isSearchInputFocused = isFocused;\n }\n searchInputCanceled(event) {\n event.stopPropagation();\n this.searchInput = \"\";\n this.isSearchInputFocused = false;\n requestAnimationFrame(() => this.measureAndUpdateHeight());\n }\n toggleDropdown() {\n this.isOpen = !this.isOpen;\n if (this.isOpen) {\n this.openDropdown(this.popupContainer, this.selectElement.nativeElement);\n setTimeout(() => {\n this.measureAndUpdateHeight();\n }, 60);\n } else {\n this.onCancel();\n }\n }\n private openDropdown(template: TemplateRef<Element>, origin: HTMLElement): void {\n const positionsBottom = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n const positionsTop = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"top\" }, { overlayX: \"start\", overlayY: \"bottom\" }, 0, -4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"top\" }, { overlayX: \"end\", overlayY: \"bottom\" }, 0, -4)\n ];\n const positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions([\n ...(this.dropdownListPosition === \"Right\" ? positionsBottom.reverse() : positionsBottom),\n ...(this.dropdownListPosition === \"Right\" ? positionsTop.reverse() : positionsTop)\n ])\n .withPush(true);\n const configs = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n scrollStrategy: this.overlay.scrollStrategies.reposition(),\n positionStrategy,\n width: origin.clientWidth\n });\n this.overlayRef = this.overlay.create(configs);\n if (this.dropdownListWidth) this.overlayRef.updateSize({ width: this.dropdownListWidth });\n if (this.dropdownListHeight) this.overlayRef.updateSize({ height: this.dropdownListHeight });\n this.overlayRef.attach(new TemplatePortal(template, this.viewContainerRef));\n this.overlayRef.backdropClick().subscribe(res => {\n this.onCancel();\n });\n }\n selectItem(item) {\n this.onChange.emit(item); \n this.toggleDropdown();\n }\n onCancel() {\n this.isSearchInputFocused = false;\n this.isOpen = false;\n this.overlayRef?.detach();\n this.searchInput = \"\";\n }\n \n @HostListener(\"keyup.esc\", ['$event'])\n closeOnEsc(event: KeyboardEvent) {\n this.onCancel();\n event.stopPropagation();\n event.preventDefault();\n }\n}\nexport interface DropdownItem {\n label: any ;\n value: string;\n icon?: string;\n disabled?: boolean;\n customIcon?: string\n}\nexport interface ActionItemLabel {\n primaryText ?: string;\n secondaryText ?: string;\n}\n","import { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({\n selector: '[calculateContainerHeight]'\n})\nexport class CalculateContainerHeightDirective implements AfterViewInit{\n @Input() items: any[];\n @Input() visibleItems: number;\n\n constructor(private el: ElementRef) {\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n this.setContainerHeight();\n },200);\n }\n\n private setContainerHeight() {\n const firstItemElement = this.el.nativeElement.querySelector('.item');\n const firstItemHeight = firstItemElement ? firstItemElement.getBoundingClientRect().height :0;\n const numberOfItems = this.items ? this.items.length : 0;\n \n let containerHeight = 0;\n if (firstItemHeight * numberOfItems > 200) {\n containerHeight = 200;\n } else if (numberOfItems <= this.visibleItems) {\n containerHeight = firstItemHeight * numberOfItems;\n } else {\n containerHeight = firstItemHeight * this.visibleItems;\n }\n\n this.el.nativeElement.style.height = `${containerHeight}px`;\n }\n\n}\n","import { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { DropdownComponent } from \"./dropdown.component\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { ScrollingModule } from \"@angular/cdk/scrolling\";\nimport { LoaderModule } from \"mis-crystal-design-system/loader\";\nimport { CalculateContainerHeightDirective } from './calculate-container-height.directive';\nimport { A11yModule } from \"@angular/cdk/a11y\";\n\n@NgModule({\n declarations: [DropdownComponent, CalculateContainerHeightDirective],\n imports: [CommonModule, FormsModule, OverlayModule, ScrollingModule,LoaderModule, A11yModule], \n exports: [DropdownComponent]\n})\nexport class DropdownModule {\n static forRoot(): ModuleWithProviders<DropdownModule> {\n return { ngModule: DropdownModule, providers: [] };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}