@sd-angular/core 0.0.1040 → 0.0.1041

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 (69) hide show
  1. package/bundles/sd-angular-core-chip.umd.js +40 -9
  2. package/bundles/sd-angular-core-chip.umd.js.map +1 -1
  3. package/bundles/sd-angular-core-chip.umd.min.js +2 -2
  4. package/bundles/sd-angular-core-chip.umd.min.js.map +1 -1
  5. package/bundles/sd-angular-core-filter.umd.js +703 -0
  6. package/bundles/sd-angular-core-filter.umd.js.map +1 -0
  7. package/bundles/sd-angular-core-filter.umd.min.js +2 -0
  8. package/bundles/sd-angular-core-filter.umd.min.js.map +1 -0
  9. package/bundles/sd-angular-core-grid-material.umd.js +87 -42
  10. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  11. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  12. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  13. package/bundles/sd-angular-core-setting.umd.js +176 -117
  14. package/bundles/sd-angular-core-setting.umd.js.map +1 -1
  15. package/bundles/sd-angular-core-setting.umd.min.js +1 -1
  16. package/bundles/sd-angular-core-setting.umd.min.js.map +1 -1
  17. package/bundles/sd-angular-core.umd.js +4 -4
  18. package/bundles/sd-angular-core.umd.min.js +1 -1
  19. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  20. package/chip/sd-angular-core-chip.metadata.json +1 -1
  21. package/chip/src/lib/chip.component.d.ts +8 -1
  22. package/esm2015/chip/src/lib/chip.component.js +33 -3
  23. package/esm2015/chip/src/lib/chip.module.js +6 -3
  24. package/esm2015/filter/index.js +2 -0
  25. package/esm2015/filter/sd-angular-core-filter.js +8 -0
  26. package/esm2015/filter/src/lib/directives/sd-filter-def.directive.js +22 -0
  27. package/esm2015/filter/src/lib/filter.component.js +161 -0
  28. package/esm2015/filter/src/lib/filter.model.js +2 -0
  29. package/esm2015/filter/src/lib/filter.module.js +47 -0
  30. package/esm2015/filter/src/lib/filter.service.js +60 -0
  31. package/esm2015/filter/src/lib/pipes/values-local.pipe.js +19 -0
  32. package/esm2015/filter/src/lib/pipes/values-server.pipe.js +18 -0
  33. package/esm2015/filter/src/public-api.js +8 -0
  34. package/esm2015/grid-material/src/lib/components/quick-action/quick-action.component.js +1 -1
  35. package/esm2015/grid-material/src/lib/services/generated-column/generated-column.service.js +28 -12
  36. package/esm2015/grid-material/src/lib/services/grid-configuration.service.js +50 -21
  37. package/esm2015/public-api.js +2 -1
  38. package/esm2015/setting/src/lib/setting.model.js +1 -1
  39. package/esm2015/setting/src/lib/setting.service.js +119 -58
  40. package/fesm2015/sd-angular-core-chip.js +36 -4
  41. package/fesm2015/sd-angular-core-chip.js.map +1 -1
  42. package/fesm2015/sd-angular-core-filter.js +323 -0
  43. package/fesm2015/sd-angular-core-filter.js.map +1 -0
  44. package/fesm2015/sd-angular-core-grid-material.js +77 -32
  45. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  46. package/fesm2015/sd-angular-core-setting.js +119 -58
  47. package/fesm2015/sd-angular-core-setting.js.map +1 -1
  48. package/fesm2015/sd-angular-core.js +1 -0
  49. package/fesm2015/sd-angular-core.js.map +1 -1
  50. package/filter/index.d.ts +1 -0
  51. package/filter/package.json +12 -0
  52. package/filter/sd-angular-core-filter.d.ts +7 -0
  53. package/filter/sd-angular-core-filter.metadata.json +1 -0
  54. package/filter/src/lib/directives/sd-filter-def.directive.d.ts +8 -0
  55. package/filter/src/lib/filter.component.d.ts +31 -0
  56. package/filter/src/lib/filter.model.d.ts +105 -0
  57. package/filter/src/lib/filter.module.d.ts +2 -0
  58. package/filter/src/lib/filter.service.d.ts +9 -0
  59. package/filter/src/lib/pipes/values-local.pipe.d.ts +5 -0
  60. package/filter/src/lib/pipes/values-server.pipe.d.ts +5 -0
  61. package/filter/src/public-api.d.ts +4 -0
  62. package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
  63. package/grid-material/src/lib/services/generated-column/generated-column.service.d.ts +3 -2
  64. package/package.json +1 -1
  65. package/public-api.d.ts +1 -0
  66. package/{sd-angular-core-0.0.1040.tgz → sd-angular-core-0.0.1041.tgz} +0 -0
  67. package/setting/sd-angular-core-setting.metadata.json +1 -1
  68. package/setting/src/lib/setting.model.d.ts +20 -6
  69. package/setting/src/lib/setting.service.d.ts +2 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/material/icon'), require('@angular/material/tooltip'), require('@angular/material/progress-spinner'), require('@angular/cdk/keycodes'), require('rxjs/operators'), require('uuid'), require('@angular/forms'), require('rxjs'), require('@sd-angular/core/utility'), require('@angular/material/autocomplete'), require('@angular/material/input'), require('@angular/material/form-field'), require('@sd-angular/core/translate'), require('@angular/material/chips')) :
3
- typeof define === 'function' && define.amd ? define('@sd-angular/core/chip', ['exports', '@angular/core', '@angular/common', '@angular/material/icon', '@angular/material/tooltip', '@angular/material/progress-spinner', '@angular/cdk/keycodes', 'rxjs/operators', 'uuid', '@angular/forms', 'rxjs', '@sd-angular/core/utility', '@angular/material/autocomplete', '@angular/material/input', '@angular/material/form-field', '@sd-angular/core/translate', '@angular/material/chips'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = global['sd-angular'].core || {}, global['sd-angular'].core.chip = {}), global.ng.core, global.ng.common, global.ng.material.icon, global.ng.material.tooltip, global.ng.material.progressSpinner, global.ng.cdk.keycodes, global.rxjs.operators, global.uuid, global.ng.forms, global.rxjs, global['sd-angular'].core.utility, global.ng.material.autocomplete, global.ng.material.input, global.ng.material.formField, global['sd-angular'].core.translate, global.ng.material.chips));
5
- }(this, (function (exports, core, common, icon, tooltip, progressSpinner, keycodes, operators, uuid, forms, rxjs, utility, autocomplete, input, formField, translate, chips) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/material/icon'), require('@angular/material/tooltip'), require('@angular/material/progress-spinner'), require('@angular/cdk/keycodes'), require('rxjs/operators'), require('uuid'), require('@angular/forms'), require('rxjs'), require('@sd-angular/core/utility'), require('@angular/material/autocomplete'), require('@sd-angular/core/common'), require('@angular/material/input'), require('@angular/material/form-field'), require('@sd-angular/core/translate'), require('@angular/material/chips')) :
3
+ typeof define === 'function' && define.amd ? define('@sd-angular/core/chip', ['exports', '@angular/core', '@angular/common', '@angular/material/icon', '@angular/material/tooltip', '@angular/material/progress-spinner', '@angular/cdk/keycodes', 'rxjs/operators', 'uuid', '@angular/forms', 'rxjs', '@sd-angular/core/utility', '@angular/material/autocomplete', '@sd-angular/core/common', '@angular/material/input', '@angular/material/form-field', '@sd-angular/core/translate', '@angular/material/chips'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = global['sd-angular'].core || {}, global['sd-angular'].core.chip = {}), global.ng.core, global.ng.common, global.ng.material.icon, global.ng.material.tooltip, global.ng.material.progressSpinner, global.ng.cdk.keycodes, global.rxjs.operators, global.uuid, global.ng.forms, global.rxjs, global['sd-angular'].core.utility, global.ng.material.autocomplete, global['sd-angular'].core.common, global.ng.material.input, global.ng.material.formField, global['sd-angular'].core.translate, global.ng.material.chips));
5
+ }(this, (function (exports, core, common$1, icon, tooltip, progressSpinner, keycodes, operators, uuid, forms, rxjs, utility, autocomplete, common, input, formField, translate, chips) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
8
  Copyright (c) Microsoft Corporation.
@@ -369,6 +369,7 @@
369
369
  this.sdChange = new core.EventEmitter();
370
370
  this.sdUpdate = new core.EventEmitter();
371
371
  this.chipSelected = new core.EventEmitter();
372
+ this.isFocused = false;
372
373
  this.inputControl = new forms.FormControl();
373
374
  this.formControl = new forms.FormControl();
374
375
  this.matcher = new SdChipErrotStateMatcher(this.formControl);
@@ -428,7 +429,7 @@
428
429
  this.select = function (item) {
429
430
  _this.chipSelected.emit(item);
430
431
  };
431
- this.selected = function (event) {
432
+ this.onSelect = function (event) {
432
433
  var _a, _b, _c;
433
434
  var value = ((_b = (_a = event.option.value) === null || _a === void 0 ? void 0 : _a[_this.valueField]) !== null && _b !== void 0 ? _b : '').toString().trim();
434
435
  if (value) {
@@ -467,6 +468,33 @@
467
468
  return value ? value[_this.displayField] : undefined;
468
469
  }
469
470
  };
471
+ this.onFocus = function () {
472
+ _this.isFocused = true;
473
+ _this.inputControl.setValue('');
474
+ // this.inputControl.updateValueAndValidity();
475
+ };
476
+ this.onBlur = function () {
477
+ _this.isFocused = false;
478
+ _this.inputControl.setValue('', {
479
+ emitEvent: false
480
+ });
481
+ };
482
+ this.onClick = function () {
483
+ var _a;
484
+ if ((_a = _this.sdView) === null || _a === void 0 ? void 0 : _a.templateRef) {
485
+ if (!_this.formControl.disabled && !_this.isFocused) {
486
+ _this.focus();
487
+ }
488
+ }
489
+ };
490
+ this.focus = function () {
491
+ _this.isFocused = true;
492
+ setTimeout(function () {
493
+ var _a, _b, _c;
494
+ (_a = _this.autocompleteTrigger) === null || _a === void 0 ? void 0 : _a.openPanel();
495
+ (_c = (_b = _this.input) === null || _b === void 0 ? void 0 : _b.nativeElement) === null || _c === void 0 ? void 0 : _c.focus();
496
+ }, 100);
497
+ };
470
498
  this.onClear = function ($event) {
471
499
  var _a;
472
500
  $event === null || $event === void 0 ? void 0 : $event.stopPropagation();
@@ -629,7 +657,7 @@
629
657
  SdChip.decorators = [
630
658
  { type: core.Component, args: [{
631
659
  selector: 'sd-chip',
632
- template: "<mat-form-field class=\"c-md\" [ngClass]=\"{'c-sm': size === 'sm'}\" appearance=\"outline\">\r\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\r\n <mat-chip-list [formControl]=\"formControl\" #chipList>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <mat-chip *ngIf=\"item\" [selectable]=\"selectable\" [removable]=\"true\" (removed)=\"onRemove(item)\"\r\n [selected]=\"item.isSelected\" (selectionChange)=\"select(item)\" [disabled]=\"inputControl.disabled\"\r\n (click)=\"item.isSelected = !item.isSelected\">\r\n <ng-container *ngIf=\"sdChipDisplay?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"sdChipDisplay.templateRef;context:{item: item}\">\r\n </ng-container>\r\n </ng-container>\r\n <span *ngIf=\"!sdChipDisplay?.templateRef\">{{item[displayField] || item[valueField]}}</span>\r\n <mat-icon *ngIf=\"!inputControl.disabled && item | sdRemovableChip:removable\" matChipRemove >cancel</mat-icon>\r\n </mat-chip>\r\n </ng-container>\r\n <input #autocompleteTrigger [formControl]=\"inputControl\" [placeholder]=\"placeholder || label\"\r\n [matAutocomplete]=\"auto\" [matChipInputFor]=\"chipList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\r\n (matChipInputTokenEnd)=\"onAdd($event)\" autocomplete=\"off\" [errorStateMatcher]=\"matcher\" matInput #input>\r\n </mat-chip-list>\r\n <mat-error *ngIf=\"formControl?.errors?.minItem\">\r\n {{formControl?.errors?.minItem}}\r\n </mat-error>\r\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayFn\" (optionSelected)=\"selected($event)\">\r\n <mat-option *ngFor=\"let item of filteredItems | async\" [value]=\"item\">\r\n {{item[displayField]}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n</mat-form-field>",
660
+ template: "<div class=\"d-flex align-items-center\" [class.sd-view]=\"sdView?.templateRef\" [class.c-focused]=\"isFocused\"\r\n [class.c-disabled]=\"formControl.disabled\" (click)=\"onClick()\">\r\n <ng-container *ngIf=\"sdView?.templateRef && !autocompleteTrigger?.panelOpen && !isFocused; else default\">\r\n <ng-container *ngTemplateOutlet=\"sdView.templateRef;context: { value: formControl.value}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field class=\"c-md\" [ngClass]=\"{'c-sm': size === 'sm'}\" appearance=\"outline\">\r\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\r\n <mat-chip-list [formControl]=\"formControl\" #chipList>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <mat-chip *ngIf=\"item\" [selectable]=\"selectable\" [removable]=\"true\" (removed)=\"onRemove(item)\"\r\n [selected]=\"item.isSelected\" (selectionChange)=\"select(item)\" [disabled]=\"inputControl.disabled\"\r\n (click)=\"item.isSelected = !item.isSelected\">\r\n <ng-container *ngIf=\"sdChipDisplay?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"sdChipDisplay.templateRef;context:{item: item}\">\r\n </ng-container>\r\n </ng-container>\r\n <span *ngIf=\"!sdChipDisplay?.templateRef\">{{item[displayField] || item[valueField]}}</span>\r\n <mat-icon *ngIf=\"!inputControl.disabled && item | sdRemovableChip:removable\" matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n </ng-container>\r\n <input #autocompleteTrigger [formControl]=\"inputControl\" [placeholder]=\"placeholder || label\"\r\n [matAutocomplete]=\"auto\" [matChipInputFor]=\"chipList\" [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\r\n (matChipInputTokenEnd)=\"onAdd($event)\" autocomplete=\"off\" [errorStateMatcher]=\"matcher\" (focus)=\"onFocus()\"\r\n (blur)=\"onBlur()\" matInput #input>\r\n </mat-chip-list>\r\n <mat-error *ngIf=\"formControl?.errors?.minItem\">\r\n {{formControl?.errors?.minItem}}\r\n </mat-error>\r\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayFn\" (optionSelected)=\"onSelect($event)\">\r\n <mat-option *ngFor=\"let item of filteredItems | async\" [value]=\"item\">\r\n {{item[displayField]}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>",
633
661
  styles: [":host{display:block;padding-top:5px}:host ::ng-deep mat-form-field.c-md .mat-form-field-infix{min-height:43.5px;padding:2px 0}:host ::ng-deep mat-form-field.c-md .mat-standard-chip{min-height:26px;padding:7px 10px}:host ::ng-deep mat-form-field.c-md .mat-standard-chip.mat-chip-with-trailing-icon{padding:7px 7px 7px 10px}"]
634
662
  },] }
635
663
  ];
@@ -661,6 +689,7 @@
661
689
  matAutocomplete: [{ type: core.ViewChild, args: ['auto',] }],
662
690
  chipList: [{ type: core.ViewChild, args: ['chipList', { static: true },] }],
663
691
  autocompleteTrigger: [{ type: core.ViewChild, args: [autocomplete.MatAutocompleteTrigger, { read: autocomplete.MatAutocompleteTrigger },] }],
692
+ sdView: [{ type: core.ContentChild, args: [common.SdViewDefDirective,] }],
664
693
  sdChipDisplay: [{ type: core.ContentChild, args: [SdChipDisplayDef,] }]
665
694
  };
666
695
 
@@ -690,7 +719,7 @@
690
719
  SdChipModule.decorators = [
691
720
  { type: core.NgModule, args: [{
692
721
  imports: [
693
- common.CommonModule,
722
+ common$1.CommonModule,
694
723
  forms.FormsModule,
695
724
  forms.ReactiveFormsModule,
696
725
  input.MatInputModule,
@@ -700,7 +729,8 @@
700
729
  icon.MatIconModule,
701
730
  progressSpinner.MatProgressSpinnerModule,
702
731
  chips.MatChipsModule,
703
- translate.SdTranslateModule
732
+ translate.SdTranslateModule,
733
+ common.SdCommonModule
704
734
  ],
705
735
  declarations: [
706
736
  SdChip,
@@ -708,8 +738,9 @@
708
738
  SdRemovableChipPipe
709
739
  ],
710
740
  exports: [
741
+ common.SdCommonModule,
711
742
  SdChip,
712
- SdChipDisplayDef
743
+ SdChipDisplayDef,
713
744
  ]
714
745
  },] }
715
746
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-chip.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/chip/src/lib/directives/sd-chip-display-def.directive.ts","../../../../projects/sd-core/chip/src/lib/chip.component.ts","../../../../projects/sd-core/chip/src/lib/pipes/removable-chip.pipe.ts","../../../../projects/sd-core/chip/src/lib/chip.module.ts","../../../../projects/sd-core/chip/src/public-api.ts","../../../../projects/sd-core/chip/sd-angular-core-chip.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdChipDisplayDef]'\r\n})\r\nexport class SdChipDisplayDef {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n OnInit, OnDestroy,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ElementRef,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { COMMA, ENTER } from '@angular/cdk/keycodes';\r\nimport { map, startWith, switchMap } from 'rxjs/operators';\r\n\r\nimport * as uuid from 'uuid';\r\nimport { NgForm, NgModel, FormControl, FormGroup, ValidatorFn, AsyncValidatorFn, Validators, FormGroupDirective } from '@angular/forms';\r\nimport { Observable, Subscription, Subject } from 'rxjs';\r\nimport { SdUtilityService } from '@sd-angular/core/utility';\r\nimport { SdTranslateService } from '@sd-angular/core/translate';\r\nimport { MatChipInputEvent, MatChipList } from '@angular/material/chips';\r\nimport { MatAutocomplete, MatAutocompleteSelectedEvent, MatAutocompleteTrigger } from '@angular/material/autocomplete';\r\nimport { SdChipUpdate } from './chip.model';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdChipDisplayDef } from './directives/sd-chip-display-def.directive';\r\n\r\nclass SdChipErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'sd-chip',\r\n templateUrl: './chip.component.html',\r\n styleUrls: ['./chip.component.scss']\r\n})\r\nexport class SdChip implements OnInit, OnDestroy, AfterViewInit {\r\n #name = uuid.v4();\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n selectable = true;\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() valueField: string;\r\n @Input() displayField: string;\r\n @Input() placeholder: string;\r\n removable: boolean | ((item: any) => boolean) = true;\r\n @Input('removable') set _removable(val: '' | boolean | ((item: any) => boolean)) {\r\n this.removable = (val === '') || val;\r\n }\r\n #itemChanges = new Subject<any[]>();\r\n #items: any[] = [];\r\n @Input() set items(items: undefined | any[]) {\r\n if (!items) {\r\n this.#items = [];\r\n } else if (Array.isArray(items)) {\r\n this.#items = items.filter(e => (e ?? '').toString().trim() !== '');\r\n } else {\r\n this.#items = items;\r\n }\r\n this.inputControl.updateValueAndValidity();\r\n this.#itemChanges.next(this.items);\r\n }\r\n @Input() limit = 50;\r\n selectedItems: any[] = [];\r\n filteredItems: Observable<any[]>;\r\n\r\n ipt: any;\r\n\r\n // model\r\n @Input() set model(values: undefined | (string | number)[]) {\r\n if (!Array.isArray(values)) {\r\n values = [];\r\n }\r\n this.formControl.setValue(values, {\r\n emitEvent: false\r\n });\r\n }\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n\r\n min: number;\r\n @Input('min') set pMin(val: number | string) {\r\n this.min = +val || 0;\r\n this.#updateValidator();\r\n }\r\n max: number;\r\n @Input('max') set pMax(val: number | string) {\r\n this.max = +val || 0;\r\n this.#updateValidator();\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Optional\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.formControl.disable();\r\n this.inputControl.disable();\r\n } else {\r\n this.formControl.enable();\r\n this.inputControl.enable();\r\n }\r\n }\r\n\r\n @Output() sdChange = new EventEmitter<any[]>();\r\n @Output() sdUpdate = new EventEmitter<SdChipUpdate>();\r\n @Output() chipSelected = new EventEmitter<any>();\r\n\r\n @ViewChild('input') input: ElementRef<HTMLInputElement>;\r\n @ViewChild('auto') matAutocomplete: MatAutocomplete;\r\n @ViewChild('chipList', { static: true }) chipList: MatChipList;\r\n @ViewChild(MatAutocompleteTrigger, { read: MatAutocompleteTrigger }) autocompleteTrigger: MatAutocompleteTrigger;\r\n @ContentChild(SdChipDisplayDef) sdChipDisplay: SdChipDisplayDef;\r\n inputControl = new FormControl();\r\n formControl = new FormControl();\r\n matcher = new SdChipErrotStateMatcher(this.formControl);\r\n #subscription = new Subscription();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private utilityService: SdUtilityService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.filteredItems = this.inputControl.valueChanges.pipe(\r\n startWith<string | { [key: string]: string }>(''),\r\n map(item => typeof item === 'string' ? item : (item?.[this.displayField] ?? '')),\r\n map(name => this.filter(name))\r\n );\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe(() => {\r\n const values: (string | number)[] = this.formControl.value || [];\r\n this.selectedItems = this.#items.filter(item => values.findIndex(value => value === item?.[this.valueField]) !== -1);\r\n this.modelChange.emit(values);\r\n this.sdChange.emit(values);\r\n setTimeout(() => {\r\n this.#form?.markAsDirty();\r\n }, 0);\r\n }));\r\n this.#subscription.add(this.#itemChanges.pipe(startWith(this.#items)).subscribe(() => {\r\n const values: (string | number)[] = this.formControl.value || [];\r\n this.selectedItems = [];\r\n for (const value of values) {\r\n const item = this.#items.find(e => e?.[this.valueField] === value) || {};\r\n this.selectedItems.push({\r\n ...item,\r\n [this.valueField]: value\r\n });\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.min > 0) {\r\n validators.push(Validators.minLength(this.min));\r\n }\r\n if (this.max > 0) {\r\n validators.push(Validators.maxLength(this.max));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n filter = (value: string): { [key: string]: string }[] => {\r\n return this.#items\r\n .filter(item => {\r\n if (this.formControl.value?.some(val => val === item[this.valueField])) {\r\n return false;\r\n }\r\n return !value || this.utilityService.changeAliasLowerCase(item[this.displayField])\r\n .indexOf(this.utilityService.changeAliasLowerCase(value)) !== -1;\r\n }).filter((item, index) => index < this.limit);\r\n }\r\n\r\n onAdd = (event: MatChipInputEvent): void => {\r\n // Add item only when MatAutocomplete is not open\r\n // To make sure this does not conflict with OptionSelected Event\r\n if (!this.matAutocomplete.isOpen) {\r\n const value = (event.value ?? '').toString().toLowerCase().trim();\r\n if (value) {\r\n\r\n const item = this.#items.find(e => e[this.displayField]\r\n && e[this.displayField].toString().toLowerCase().trim() === value);\r\n\r\n if (item) {\r\n const values: (string | number)[] = this.formControl.value ?? [];\r\n values.push(item[this.valueField]);\r\n this.formControl.setValue(values);\r\n }\r\n }\r\n this.inputControl.setValue('');\r\n }\r\n }\r\n\r\n onRemove = (item: any): void => {\r\n const values: (string | number)[] = this.formControl.value ?? [];\r\n this.formControl.setValue(values.filter(value => item?.[this.valueField] !== value));\r\n this.inputControl.setValue('');\r\n }\r\n\r\n select = (item: any): void => {\r\n this.chipSelected.emit(item);\r\n }\r\n\r\n selected = (event: MatAutocompleteSelectedEvent): void => {\r\n const value = (event.option.value?.[this.valueField] ?? '').toString().trim();\r\n if (value) {\r\n const item = this.#items.find(e => e[this.valueField]\r\n && e[this.valueField].toString().trim() === value);\r\n if (item) {\r\n const values: (string | number)[] = this.formControl.value ?? [];\r\n values.push(item[this.valueField]);\r\n this.formControl.setValue(values);\r\n this.input.nativeElement.value = '';\r\n this.inputControl.setValue('');\r\n setTimeout(() => {\r\n this.autocompleteTrigger?.openPanel();\r\n }, 0);\r\n }\r\n }\r\n }\r\n\r\n displayFn = (value: string | { [key: string]: string }): string | undefined => {\r\n if (typeof value === 'string') {\r\n if (!this.#items) {\r\n return undefined;\r\n }\r\n const selectedItem = this.#items.find(item => item[this.valueField] === value);\r\n if (selectedItem) {\r\n return selectedItem[this.displayField];\r\n }\r\n if (this.#items.some(item => item[this.displayField].toLowerCase().indexOf(value.toLowerCase()) !== -1)) {\r\n return value;\r\n } else {\r\n return undefined;\r\n }\r\n } else {\r\n return value ? value[this.displayField] : undefined;\r\n }\r\n }\r\n\r\n onClear = ($event?: any) => {\r\n $event?.stopPropagation();\r\n this.inputControl.setValue('');\r\n this.formControl.setValue([]);\r\n this.autocompleteTrigger?.openPanel();\r\n this.ref.detectChanges();\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdRemovableChip'\r\n})\r\nexport class SdRemovableChipPipe implements PipeTransform {\r\n constructor() { }\r\n transform(item: any, removable: boolean | ((item: any) => boolean)): boolean {\r\n if(typeof(removable) === 'boolean') {\r\n return removable;\r\n }\r\n return removable(item);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { SdChip } from './chip.component';\r\nimport { SdChipDisplayDef } from './directives/sd-chip-display-def.directive';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { SdRemovableChipPipe } from './pipes/removable-chip.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatAutocompleteModule,\r\n MatIconModule,\r\n MatProgressSpinnerModule,\r\n MatChipsModule,\r\n SdTranslateModule\r\n ],\r\n declarations: [\r\n SdChip,\r\n SdChipDisplayDef,\r\n SdRemovableChipPipe\r\n ],\r\n exports: [\r\n SdChip,\r\n SdChipDisplayDef\r\n ]\r\n})\r\nexport class SdChipModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/chip.module';\r\nexport * from './lib/chip.component';\r\nexport * from './lib/chip.model';\r\nexport * from './lib/directives/sd-chip-display-def.directive';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {SdRemovableChipPipe as ɵa} from './src/lib/pipes/removable-chip.pipe';"],"names":["Directive","TemplateRef","uuid.v4","ENTER","COMMA","Subject","EventEmitter","FormControl","Subscription","Validators","NgForm","startWith","map","Component","ChangeDetectorRef","SdUtilityService","Input","Output","ViewChild","MatAutocompleteTrigger","ContentChild","Pipe","NgModule","CommonModule","FormsModule","ReactiveFormsModule","MatInputModule","MatTooltipModule","MatFormFieldModule","MatAutocompleteModule","MatIconModule","MatProgressSpinnerModule","MatChipsModule","SdTranslateModule"],"mappings":"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"}
1
+ {"version":3,"file":"sd-angular-core-chip.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/chip/src/lib/directives/sd-chip-display-def.directive.ts","../../../../projects/sd-core/chip/src/lib/chip.component.ts","../../../../projects/sd-core/chip/src/lib/pipes/removable-chip.pipe.ts","../../../../projects/sd-core/chip/src/lib/chip.module.ts","../../../../projects/sd-core/chip/src/public-api.ts","../../../../projects/sd-core/chip/sd-angular-core-chip.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdChipDisplayDef]'\r\n})\r\nexport class SdChipDisplayDef {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n OnInit, OnDestroy,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ElementRef,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { COMMA, ENTER } from '@angular/cdk/keycodes';\r\nimport { map, startWith, switchMap } from 'rxjs/operators';\r\n\r\nimport * as uuid from 'uuid';\r\nimport { NgForm, NgModel, FormControl, FormGroup, ValidatorFn, AsyncValidatorFn, Validators, FormGroupDirective } from '@angular/forms';\r\nimport { Observable, Subscription, Subject } from 'rxjs';\r\nimport { SdUtilityService } from '@sd-angular/core/utility';\r\nimport { SdTranslateService } from '@sd-angular/core/translate';\r\nimport { MatChipInputEvent, MatChipList } from '@angular/material/chips';\r\nimport { MatAutocomplete, MatAutocompleteSelectedEvent, MatAutocompleteTrigger } from '@angular/material/autocomplete';\r\nimport { SdChipUpdate } from './chip.model';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdChipDisplayDef } from './directives/sd-chip-display-def.directive';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\n\r\nclass SdChipErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'sd-chip',\r\n templateUrl: './chip.component.html',\r\n styleUrls: ['./chip.component.scss']\r\n})\r\nexport class SdChip implements OnInit, OnDestroy, AfterViewInit {\r\n #name = uuid.v4();\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n selectable = true;\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() valueField: string;\r\n @Input() displayField: string;\r\n @Input() placeholder: string;\r\n removable: boolean | ((item: any) => boolean) = true;\r\n @Input('removable') set _removable(val: '' | boolean | ((item: any) => boolean)) {\r\n this.removable = (val === '') || val;\r\n }\r\n #itemChanges = new Subject<any[]>();\r\n #items: any[] = [];\r\n @Input() set items(items: undefined | any[]) {\r\n if (!items) {\r\n this.#items = [];\r\n } else if (Array.isArray(items)) {\r\n this.#items = items.filter(e => (e ?? '').toString().trim() !== '');\r\n } else {\r\n this.#items = items;\r\n }\r\n this.inputControl.updateValueAndValidity();\r\n this.#itemChanges.next(this.items);\r\n }\r\n @Input() limit = 50;\r\n selectedItems: any[] = [];\r\n filteredItems: Observable<any[]>;\r\n\r\n ipt: any;\r\n\r\n // model\r\n @Input() set model(values: undefined | (string | number)[]) {\r\n if (!Array.isArray(values)) {\r\n values = [];\r\n }\r\n this.formControl.setValue(values, {\r\n emitEvent: false\r\n });\r\n }\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n\r\n min: number;\r\n @Input('min') set pMin(val: number | string) {\r\n this.min = +val || 0;\r\n this.#updateValidator();\r\n }\r\n max: number;\r\n @Input('max') set pMax(val: number | string) {\r\n this.max = +val || 0;\r\n this.#updateValidator();\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Optional\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.formControl.disable();\r\n this.inputControl.disable();\r\n } else {\r\n this.formControl.enable();\r\n this.inputControl.enable();\r\n }\r\n }\r\n\r\n @Output() sdChange = new EventEmitter<any[]>();\r\n @Output() sdUpdate = new EventEmitter<SdChipUpdate>();\r\n @Output() chipSelected = new EventEmitter<any>();\r\n\r\n @ViewChild('input') input: ElementRef<HTMLInputElement>;\r\n @ViewChild('auto') matAutocomplete: MatAutocomplete;\r\n @ViewChild('chipList', { static: true }) chipList: MatChipList;\r\n @ViewChild(MatAutocompleteTrigger, { read: MatAutocompleteTrigger }) autocompleteTrigger: MatAutocompleteTrigger;\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdChipDisplayDef) sdChipDisplay: SdChipDisplayDef;\r\n isFocused = false;\r\n inputControl = new FormControl();\r\n formControl = new FormControl();\r\n matcher = new SdChipErrotStateMatcher(this.formControl);\r\n #subscription = new Subscription();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private utilityService: SdUtilityService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.filteredItems = this.inputControl.valueChanges.pipe(\r\n startWith<string | { [key: string]: string }>(''),\r\n map(item => typeof item === 'string' ? item : (item?.[this.displayField] ?? '')),\r\n map(name => this.filter(name))\r\n );\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe(() => {\r\n const values: (string | number)[] = this.formControl.value || [];\r\n this.selectedItems = this.#items.filter(item => values.findIndex(value => value === item?.[this.valueField]) !== -1);\r\n this.modelChange.emit(values);\r\n this.sdChange.emit(values);\r\n setTimeout(() => {\r\n this.#form?.markAsDirty();\r\n }, 0);\r\n }));\r\n this.#subscription.add(this.#itemChanges.pipe(startWith(this.#items)).subscribe(() => {\r\n const values: (string | number)[] = this.formControl.value || [];\r\n this.selectedItems = [];\r\n for (const value of values) {\r\n const item = this.#items.find(e => e?.[this.valueField] === value) || {};\r\n this.selectedItems.push({\r\n ...item,\r\n [this.valueField]: value\r\n });\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.min > 0) {\r\n validators.push(Validators.minLength(this.min));\r\n }\r\n if (this.max > 0) {\r\n validators.push(Validators.maxLength(this.max));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n filter = (value: string): { [key: string]: string }[] => {\r\n return this.#items\r\n .filter(item => {\r\n if (this.formControl.value?.some(val => val === item[this.valueField])) {\r\n return false;\r\n }\r\n return !value || this.utilityService.changeAliasLowerCase(item[this.displayField])\r\n .indexOf(this.utilityService.changeAliasLowerCase(value)) !== -1;\r\n }).filter((item, index) => index < this.limit);\r\n }\r\n\r\n onAdd = (event: MatChipInputEvent): void => {\r\n // Add item only when MatAutocomplete is not open\r\n // To make sure this does not conflict with OptionSelected Event\r\n if (!this.matAutocomplete.isOpen) {\r\n const value = (event.value ?? '').toString().toLowerCase().trim();\r\n if (value) {\r\n\r\n const item = this.#items.find(e => e[this.displayField]\r\n && e[this.displayField].toString().toLowerCase().trim() === value);\r\n\r\n if (item) {\r\n const values: (string | number)[] = this.formControl.value ?? [];\r\n values.push(item[this.valueField]);\r\n this.formControl.setValue(values);\r\n }\r\n }\r\n this.inputControl.setValue('');\r\n }\r\n }\r\n\r\n onRemove = (item: any): void => {\r\n const values: (string | number)[] = this.formControl.value ?? [];\r\n this.formControl.setValue(values.filter(value => item?.[this.valueField] !== value));\r\n this.inputControl.setValue('');\r\n }\r\n\r\n select = (item: any): void => {\r\n this.chipSelected.emit(item);\r\n }\r\n\r\n onSelect = (event: MatAutocompleteSelectedEvent) => {\r\n const value = (event.option.value?.[this.valueField] ?? '').toString().trim();\r\n if (value) {\r\n const item = this.#items.find(e => e[this.valueField]\r\n && e[this.valueField].toString().trim() === value);\r\n if (item) {\r\n const values: (string | number)[] = this.formControl.value ?? [];\r\n values.push(item[this.valueField]);\r\n this.formControl.setValue(values);\r\n this.input.nativeElement.value = '';\r\n this.inputControl.setValue('');\r\n setTimeout(() => {\r\n this.autocompleteTrigger?.openPanel();\r\n }, 0);\r\n }\r\n }\r\n }\r\n\r\n displayFn = (value: string | { [key: string]: string }): string | undefined => {\r\n if (typeof value === 'string') {\r\n if (!this.#items) {\r\n return undefined;\r\n }\r\n const selectedItem = this.#items.find(item => item[this.valueField] === value);\r\n if (selectedItem) {\r\n return selectedItem[this.displayField];\r\n }\r\n if (this.#items.some(item => item[this.displayField].toLowerCase().indexOf(value.toLowerCase()) !== -1)) {\r\n return value;\r\n } else {\r\n return undefined;\r\n }\r\n } else {\r\n return value ? value[this.displayField] : undefined;\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.inputControl.setValue('');\r\n // this.inputControl.updateValueAndValidity();\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.autocompleteTrigger?.openPanel();\r\n this.input?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n onClear = ($event?: any) => {\r\n $event?.stopPropagation();\r\n this.inputControl.setValue('');\r\n this.formControl.setValue([]);\r\n this.autocompleteTrigger?.openPanel();\r\n this.ref.detectChanges();\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdRemovableChip'\r\n})\r\nexport class SdRemovableChipPipe implements PipeTransform {\r\n constructor() { }\r\n transform(item: any, removable: boolean | ((item: any) => boolean)): boolean {\r\n if(typeof(removable) === 'boolean') {\r\n return removable;\r\n }\r\n return removable(item);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { SdChip } from './chip.component';\r\nimport { SdChipDisplayDef } from './directives/sd-chip-display-def.directive';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { SdRemovableChipPipe } from './pipes/removable-chip.pipe';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatAutocompleteModule,\r\n MatIconModule,\r\n MatProgressSpinnerModule,\r\n MatChipsModule,\r\n SdTranslateModule,\r\n SdCommonModule\r\n ],\r\n declarations: [\r\n SdChip,\r\n SdChipDisplayDef,\r\n SdRemovableChipPipe\r\n ],\r\n exports: [\r\n SdCommonModule,\r\n SdChip,\r\n SdChipDisplayDef,\r\n ]\r\n})\r\nexport class SdChipModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/chip.module';\r\nexport * from './lib/chip.component';\r\nexport * from './lib/chip.model';\r\nexport * from './lib/directives/sd-chip-display-def.directive';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {SdRemovableChipPipe as ɵa} from './src/lib/pipes/removable-chip.pipe';"],"names":["Directive","TemplateRef","uuid.v4","ENTER","COMMA","Subject","EventEmitter","FormControl","Subscription","Validators","NgForm","startWith","map","Component","ChangeDetectorRef","SdUtilityService","Input","Output","ViewChild","MatAutocompleteTrigger","ContentChild","SdViewDefDirective","Pipe","NgModule","CommonModule","FormsModule","ReactiveFormsModule","MatInputModule","MatTooltipModule","MatFormFieldModule","MatAutocompleteModule","MatIconModule","MatProgressSpinnerModule","MatChipsModule","SdTranslateModule","SdCommonModule"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/material/icon"),require("@angular/material/tooltip"),require("@angular/material/progress-spinner"),require("@angular/cdk/keycodes"),require("rxjs/operators"),require("uuid"),require("@angular/forms"),require("rxjs"),require("@sd-angular/core/utility"),require("@angular/material/autocomplete"),require("@angular/material/input"),require("@angular/material/form-field"),require("@sd-angular/core/translate"),require("@angular/material/chips")):"function"==typeof define&&define.amd?define("@sd-angular/core/chip",["exports","@angular/core","@angular/common","@angular/material/icon","@angular/material/tooltip","@angular/material/progress-spinner","@angular/cdk/keycodes","rxjs/operators","uuid","@angular/forms","rxjs","@sd-angular/core/utility","@angular/material/autocomplete","@angular/material/input","@angular/material/form-field","@sd-angular/core/translate","@angular/material/chips"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core.chip={}),e.ng.core,e.ng.common,e.ng.material.icon,e.ng.material.tooltip,e.ng.material.progressSpinner,e.ng.cdk.keycodes,e.rxjs.operators,e.uuid,e.ng.forms,e.rxjs,e["sd-angular"].core.utility,e.ng.material.autocomplete,e.ng.material.input,e.ng.material.formField,e["sd-angular"].core.translate,e.ng.material.chips)}(this,(function(e,t,r,i,n,o,a,l,s,u,p,d,m,c,f,h,g){"use strict";
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/material/icon"),require("@angular/material/tooltip"),require("@angular/material/progress-spinner"),require("@angular/cdk/keycodes"),require("rxjs/operators"),require("uuid"),require("@angular/forms"),require("rxjs"),require("@sd-angular/core/utility"),require("@angular/material/autocomplete"),require("@sd-angular/core/common"),require("@angular/material/input"),require("@angular/material/form-field"),require("@sd-angular/core/translate"),require("@angular/material/chips")):"function"==typeof define&&define.amd?define("@sd-angular/core/chip",["exports","@angular/core","@angular/common","@angular/material/icon","@angular/material/tooltip","@angular/material/progress-spinner","@angular/cdk/keycodes","rxjs/operators","uuid","@angular/forms","rxjs","@sd-angular/core/utility","@angular/material/autocomplete","@sd-angular/core/common","@angular/material/input","@angular/material/form-field","@sd-angular/core/translate","@angular/material/chips"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core.chip={}),e.ng.core,e.ng.common,e.ng.material.icon,e.ng.material.tooltip,e.ng.material.progressSpinner,e.ng.cdk.keycodes,e.rxjs.operators,e.uuid,e.ng.forms,e.rxjs,e["sd-angular"].core.utility,e.ng.material.autocomplete,e["sd-angular"].core.common,e.ng.material.input,e.ng.material.formField,e["sd-angular"].core.translate,e.ng.material.chips)}(this,(function(e,t,r,n,i,o,a,l,s,u,d,p,c,m,f,h,g,v){"use strict";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */Object.create;function y(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],i=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}Object.create;function v(e,t,r,i){if("a"===r&&!i)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?i:"a"===r?i.call(e):i?i.value:t.get(e)}function C(e,t,r,i,n){if("m"===i)throw new TypeError("Private method is not writable");if("a"===i&&!n)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===i?n.call(e,r):n?n.value=r:t.set(e,r),r}var b,w,I,x,F,M,S=function(e){this.templateRef=e};S.decorators=[{type:t.Directive,args:[{selector:"[sdChipDisplayDef]"}]}],S.ctorParameters=function(){return[{type:t.TemplateRef}]};var O=function(){function e(e){this.formControl=e}return e.prototype.isErrorState=function(e,t){var r,i,n,o=t&&t.submitted;return!(!(null===(r=this.formControl)||void 0===r?void 0:r.invalid)||!((null===(i=this.formControl)||void 0===i?void 0:i.dirty)||(null===(n=this.formControl)||void 0===n?void 0:n.touched)||o))},e}(),j=function(){function e(e,r){var i=this;this.ref=e,this.utilityService=r,b.set(this,s.v4()),this.separatorKeysCodes=[a.ENTER,a.COMMA],this.selectable=!0,w.set(this,void 0),this.removable=!0,I.set(this,new p.Subject),x.set(this,[]),this.limit=50,this.selectedItems=[],this.isRequired=!1,this.modelChange=new t.EventEmitter,this.sdChange=new t.EventEmitter,this.sdUpdate=new t.EventEmitter,this.chipSelected=new t.EventEmitter,this.inputControl=new u.FormControl,this.formControl=new u.FormControl,this.matcher=new O(this.formControl),F.set(this,new p.Subscription),M.set(this,(function(){i.formControl.clearValidators(),i.formControl.clearAsyncValidators();var e=[];i.isRequired&&e.push(u.Validators.required),i.min>0&&e.push(u.Validators.minLength(i.min)),i.max>0&&e.push(u.Validators.maxLength(i.max)),i.formControl.setValidators(e),i.formControl.setAsyncValidators([]),i.formControl.updateValueAndValidity()})),this.filter=function(e){return v(i,x).filter((function(t){var r;return!(null===(r=i.formControl.value)||void 0===r?void 0:r.some((function(e){return e===t[i.valueField]})))&&(!e||-1!==i.utilityService.changeAliasLowerCase(t[i.displayField]).indexOf(i.utilityService.changeAliasLowerCase(e)))})).filter((function(e,t){return t<i.limit}))},this.onAdd=function(e){var t,r;if(!i.matAutocomplete.isOpen){var n=(null!==(t=e.value)&&void 0!==t?t:"").toString().toLowerCase().trim();if(n){var o=v(i,x).find((function(e){return e[i.displayField]&&e[i.displayField].toString().toLowerCase().trim()===n}));if(o){var a=null!==(r=i.formControl.value)&&void 0!==r?r:[];a.push(o[i.valueField]),i.formControl.setValue(a)}}i.inputControl.setValue("")}},this.onRemove=function(e){var t,r=null!==(t=i.formControl.value)&&void 0!==t?t:[];i.formControl.setValue(r.filter((function(t){return(null==e?void 0:e[i.valueField])!==t}))),i.inputControl.setValue("")},this.select=function(e){i.chipSelected.emit(e)},this.selected=function(e){var t,r,n,o=(null!==(r=null===(t=e.option.value)||void 0===t?void 0:t[i.valueField])&&void 0!==r?r:"").toString().trim();if(o){var a=v(i,x).find((function(e){return e[i.valueField]&&e[i.valueField].toString().trim()===o}));if(a){var l=null!==(n=i.formControl.value)&&void 0!==n?n:[];l.push(a[i.valueField]),i.formControl.setValue(l),i.input.nativeElement.value="",i.inputControl.setValue(""),setTimeout((function(){var e;null===(e=i.autocompleteTrigger)||void 0===e||e.openPanel()}),0)}}},this.displayFn=function(e){if("string"==typeof e){if(!v(i,x))return;var t=v(i,x).find((function(t){return t[i.valueField]===e}));return t?t[i.displayField]:v(i,x).some((function(t){return-1!==t[i.displayField].toLowerCase().indexOf(e.toLowerCase())}))?e:void 0}return e?e[i.displayField]:void 0},this.onClear=function(e){var t;null==e||e.stopPropagation(),i.inputControl.setValue(""),i.formControl.setValue([]),null===(t=i.autocompleteTrigger)||void 0===t||t.openPanel(),i.ref.detectChanges()}}return Object.defineProperty(e.prototype,"name",{set:function(e){e&&C(this,b,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"form",{set:function(e){e&&(e instanceof u.NgForm?C(this,w,e.form):C(this,w,e))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_removable",{set:function(e){this.removable=""===e||e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"items",{set:function(e){e?Array.isArray(e)?C(this,x,e.filter((function(e){return""!==(null!=e?e:"").toString().trim()}))):C(this,x,e):C(this,x,[]),this.inputControl.updateValueAndValidity(),v(this,I).next(this.items)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){Array.isArray(e)||(e=[]),this.formControl.setValue(e,{emitEvent:!1})},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"required",{set:function(e){this.isRequired=""===e||e,v(this,M).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pMin",{set:function(e){this.min=+e||0,v(this,M).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pMax",{set:function(e){this.max=+e||0,v(this,M).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{set:function(e){(e=""===e||e)?(this.formControl.disable(),this.inputControl.disable()):(this.formControl.enable(),this.inputControl.enable())},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.filteredItems=this.inputControl.valueChanges.pipe(l.startWith(""),l.map((function(t){var r;return"string"==typeof t?t:null!==(r=null==t?void 0:t[e.displayField])&&void 0!==r?r:""})),l.map((function(t){return e.filter(t)})))},e.prototype.ngAfterViewInit=function(){var e,t=this;v(this,F).add(this.formControl.valueChanges.subscribe((function(){var e=t.formControl.value||[];t.selectedItems=v(t,x).filter((function(r){return-1!==e.findIndex((function(e){return e===(null==r?void 0:r[t.valueField])}))})),t.modelChange.emit(e),t.sdChange.emit(e),setTimeout((function(){var e;null===(e=v(t,w))||void 0===e||e.markAsDirty()}),0)}))),v(this,F).add(v(this,I).pipe(l.startWith(v(this,x))).subscribe((function(){var e,r,i=t.formControl.value||[];t.selectedItems=[];var n=function(e){var r,i=v(t,x).find((function(r){return(null==r?void 0:r[t.valueField])===e}))||{};t.selectedItems.push(Object.assign(Object.assign({},i),((r={})[t.valueField]=e,r)))};try{for(var o=y(i),a=o.next();!a.done;a=o.next()){n(a.value)}}catch(t){e={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}}))),null===(e=v(this,w))||void 0===e||e.addControl(v(this,b),this.formControl)},e.prototype.ngOnDestroy=function(){var e;null===(e=v(this,w))||void 0===e||e.removeControl(v(this,b)),v(this,F).unsubscribe()},e}();b=new WeakMap,w=new WeakMap,I=new WeakMap,x=new WeakMap,F=new WeakMap,M=new WeakMap,j.decorators=[{type:t.Component,args:[{selector:"sd-chip",template:'<mat-form-field class="c-md" [ngClass]="{\'c-sm\': size === \'sm\'}" appearance="outline">\r\n <mat-label *ngIf="label">{{label}}</mat-label>\r\n <mat-chip-list [formControl]="formControl" #chipList>\r\n <ng-container *ngFor="let item of selectedItems">\r\n <mat-chip *ngIf="item" [selectable]="selectable" [removable]="true" (removed)="onRemove(item)"\r\n [selected]="item.isSelected" (selectionChange)="select(item)" [disabled]="inputControl.disabled"\r\n (click)="item.isSelected = !item.isSelected">\r\n <ng-container *ngIf="sdChipDisplay?.templateRef">\r\n <ng-container *ngTemplateOutlet="sdChipDisplay.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <span *ngIf="!sdChipDisplay?.templateRef">{{item[displayField] || item[valueField]}}</span>\r\n <mat-icon *ngIf="!inputControl.disabled && item | sdRemovableChip:removable" matChipRemove >cancel</mat-icon>\r\n </mat-chip>\r\n </ng-container>\r\n <input #autocompleteTrigger [formControl]="inputControl" [placeholder]="placeholder || label"\r\n [matAutocomplete]="auto" [matChipInputFor]="chipList" [matChipInputSeparatorKeyCodes]="separatorKeysCodes"\r\n (matChipInputTokenEnd)="onAdd($event)" autocomplete="off" [errorStateMatcher]="matcher" matInput #input>\r\n </mat-chip-list>\r\n <mat-error *ngIf="formControl?.errors?.minItem">\r\n {{formControl?.errors?.minItem}}\r\n </mat-error>\r\n <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn" (optionSelected)="selected($event)">\r\n <mat-option *ngFor="let item of filteredItems | async" [value]="item">\r\n {{item[displayField]}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n</mat-form-field>',styles:[":host{display:block;padding-top:5px}:host ::ng-deep mat-form-field.c-md .mat-form-field-infix{min-height:43.5px;padding:2px 0}:host ::ng-deep mat-form-field.c-md .mat-standard-chip{min-height:26px;padding:7px 10px}:host ::ng-deep mat-form-field.c-md .mat-standard-chip.mat-chip-with-trailing-icon{padding:7px 7px 7px 10px}"]}]}],j.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:d.SdUtilityService}]},j.propDecorators={name:[{type:t.Input}],size:[{type:t.Input}],form:[{type:t.Input}],label:[{type:t.Input}],valueField:[{type:t.Input}],displayField:[{type:t.Input}],placeholder:[{type:t.Input}],_removable:[{type:t.Input,args:["removable"]}],items:[{type:t.Input}],limit:[{type:t.Input}],model:[{type:t.Input}],required:[{type:t.Input}],pMin:[{type:t.Input,args:["min"]}],pMax:[{type:t.Input,args:["max"]}],modelChange:[{type:t.Output}],disabled:[{type:t.Input}],sdChange:[{type:t.Output}],sdUpdate:[{type:t.Output}],chipSelected:[{type:t.Output}],input:[{type:t.ViewChild,args:["input"]}],matAutocomplete:[{type:t.ViewChild,args:["auto"]}],chipList:[{type:t.ViewChild,args:["chipList",{static:!0}]}],autocompleteTrigger:[{type:t.ViewChild,args:[m.MatAutocompleteTrigger,{read:m.MatAutocompleteTrigger}]}],sdChipDisplay:[{type:t.ContentChild,args:[S]}]};var V=function(){function e(){}return e.prototype.transform=function(e,t){return"boolean"==typeof t?t:t(e)},e}();V.decorators=[{type:t.Pipe,args:[{name:"sdRemovableChip"}]}],V.ctorParameters=function(){return[]};var q=function(){};q.decorators=[{type:t.NgModule,args:[{imports:[r.CommonModule,u.FormsModule,u.ReactiveFormsModule,c.MatInputModule,n.MatTooltipModule,f.MatFormFieldModule,m.MatAutocompleteModule,i.MatIconModule,o.MatProgressSpinnerModule,g.MatChipsModule,h.SdTranslateModule],declarations:[j,S,V],exports:[j,S]}]}],e.SdChip=j,e.SdChipDisplayDef=S,e.SdChipModule=q,e.ɵa=V,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */Object.create;function y(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}Object.create;function C(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function b(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?i.call(e,r):i?i.value=r:t.set(e,r),r}var w,F,I,x,M,S,V=function(e){this.templateRef=e};V.decorators=[{type:t.Directive,args:[{selector:"[sdChipDisplayDef]"}]}],V.ctorParameters=function(){return[{type:t.TemplateRef}]};var O=function(){function e(e){this.formControl=e}return e.prototype.isErrorState=function(e,t){var r,n,i,o=t&&t.submitted;return!(!(null===(r=this.formControl)||void 0===r?void 0:r.invalid)||!((null===(n=this.formControl)||void 0===n?void 0:n.dirty)||(null===(i=this.formControl)||void 0===i?void 0:i.touched)||o))},e}(),T=function(){function e(e,r){var n=this;this.ref=e,this.utilityService=r,w.set(this,s.v4()),this.separatorKeysCodes=[a.ENTER,a.COMMA],this.selectable=!0,F.set(this,void 0),this.removable=!0,I.set(this,new d.Subject),x.set(this,[]),this.limit=50,this.selectedItems=[],this.isRequired=!1,this.modelChange=new t.EventEmitter,this.sdChange=new t.EventEmitter,this.sdUpdate=new t.EventEmitter,this.chipSelected=new t.EventEmitter,this.isFocused=!1,this.inputControl=new u.FormControl,this.formControl=new u.FormControl,this.matcher=new O(this.formControl),M.set(this,new d.Subscription),S.set(this,(function(){n.formControl.clearValidators(),n.formControl.clearAsyncValidators();var e=[];n.isRequired&&e.push(u.Validators.required),n.min>0&&e.push(u.Validators.minLength(n.min)),n.max>0&&e.push(u.Validators.maxLength(n.max)),n.formControl.setValidators(e),n.formControl.setAsyncValidators([]),n.formControl.updateValueAndValidity()})),this.filter=function(e){return C(n,x).filter((function(t){var r;return!(null===(r=n.formControl.value)||void 0===r?void 0:r.some((function(e){return e===t[n.valueField]})))&&(!e||-1!==n.utilityService.changeAliasLowerCase(t[n.displayField]).indexOf(n.utilityService.changeAliasLowerCase(e)))})).filter((function(e,t){return t<n.limit}))},this.onAdd=function(e){var t,r;if(!n.matAutocomplete.isOpen){var i=(null!==(t=e.value)&&void 0!==t?t:"").toString().toLowerCase().trim();if(i){var o=C(n,x).find((function(e){return e[n.displayField]&&e[n.displayField].toString().toLowerCase().trim()===i}));if(o){var a=null!==(r=n.formControl.value)&&void 0!==r?r:[];a.push(o[n.valueField]),n.formControl.setValue(a)}}n.inputControl.setValue("")}},this.onRemove=function(e){var t,r=null!==(t=n.formControl.value)&&void 0!==t?t:[];n.formControl.setValue(r.filter((function(t){return(null==e?void 0:e[n.valueField])!==t}))),n.inputControl.setValue("")},this.select=function(e){n.chipSelected.emit(e)},this.onSelect=function(e){var t,r,i,o=(null!==(r=null===(t=e.option.value)||void 0===t?void 0:t[n.valueField])&&void 0!==r?r:"").toString().trim();if(o){var a=C(n,x).find((function(e){return e[n.valueField]&&e[n.valueField].toString().trim()===o}));if(a){var l=null!==(i=n.formControl.value)&&void 0!==i?i:[];l.push(a[n.valueField]),n.formControl.setValue(l),n.input.nativeElement.value="",n.inputControl.setValue(""),setTimeout((function(){var e;null===(e=n.autocompleteTrigger)||void 0===e||e.openPanel()}),0)}}},this.displayFn=function(e){if("string"==typeof e){if(!C(n,x))return;var t=C(n,x).find((function(t){return t[n.valueField]===e}));return t?t[n.displayField]:C(n,x).some((function(t){return-1!==t[n.displayField].toLowerCase().indexOf(e.toLowerCase())}))?e:void 0}return e?e[n.displayField]:void 0},this.onFocus=function(){n.isFocused=!0,n.inputControl.setValue("")},this.onBlur=function(){n.isFocused=!1,n.inputControl.setValue("",{emitEvent:!1})},this.onClick=function(){var e;(null===(e=n.sdView)||void 0===e?void 0:e.templateRef)&&(n.formControl.disabled||n.isFocused||n.focus())},this.focus=function(){n.isFocused=!0,setTimeout((function(){var e,t,r;null===(e=n.autocompleteTrigger)||void 0===e||e.openPanel(),null===(r=null===(t=n.input)||void 0===t?void 0:t.nativeElement)||void 0===r||r.focus()}),100)},this.onClear=function(e){var t;null==e||e.stopPropagation(),n.inputControl.setValue(""),n.formControl.setValue([]),null===(t=n.autocompleteTrigger)||void 0===t||t.openPanel(),n.ref.detectChanges()}}return Object.defineProperty(e.prototype,"name",{set:function(e){e&&b(this,w,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"form",{set:function(e){e&&(e instanceof u.NgForm?b(this,F,e.form):b(this,F,e))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_removable",{set:function(e){this.removable=""===e||e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"items",{set:function(e){e?Array.isArray(e)?b(this,x,e.filter((function(e){return""!==(null!=e?e:"").toString().trim()}))):b(this,x,e):b(this,x,[]),this.inputControl.updateValueAndValidity(),C(this,I).next(this.items)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){Array.isArray(e)||(e=[]),this.formControl.setValue(e,{emitEvent:!1})},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"required",{set:function(e){this.isRequired=""===e||e,C(this,S).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pMin",{set:function(e){this.min=+e||0,C(this,S).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pMax",{set:function(e){this.max=+e||0,C(this,S).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{set:function(e){(e=""===e||e)?(this.formControl.disable(),this.inputControl.disable()):(this.formControl.enable(),this.inputControl.enable())},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.filteredItems=this.inputControl.valueChanges.pipe(l.startWith(""),l.map((function(t){var r;return"string"==typeof t?t:null!==(r=null==t?void 0:t[e.displayField])&&void 0!==r?r:""})),l.map((function(t){return e.filter(t)})))},e.prototype.ngAfterViewInit=function(){var e,t=this;C(this,M).add(this.formControl.valueChanges.subscribe((function(){var e=t.formControl.value||[];t.selectedItems=C(t,x).filter((function(r){return-1!==e.findIndex((function(e){return e===(null==r?void 0:r[t.valueField])}))})),t.modelChange.emit(e),t.sdChange.emit(e),setTimeout((function(){var e;null===(e=C(t,F))||void 0===e||e.markAsDirty()}),0)}))),C(this,M).add(C(this,I).pipe(l.startWith(C(this,x))).subscribe((function(){var e,r,n=t.formControl.value||[];t.selectedItems=[];var i=function(e){var r,n=C(t,x).find((function(r){return(null==r?void 0:r[t.valueField])===e}))||{};t.selectedItems.push(Object.assign(Object.assign({},n),((r={})[t.valueField]=e,r)))};try{for(var o=y(n),a=o.next();!a.done;a=o.next()){i(a.value)}}catch(t){e={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}}))),null===(e=C(this,F))||void 0===e||e.addControl(C(this,w),this.formControl)},e.prototype.ngOnDestroy=function(){var e;null===(e=C(this,F))||void 0===e||e.removeControl(C(this,w)),C(this,M).unsubscribe()},e}();w=new WeakMap,F=new WeakMap,I=new WeakMap,x=new WeakMap,M=new WeakMap,S=new WeakMap,T.decorators=[{type:t.Component,args:[{selector:"sd-chip",template:'<div class="d-flex align-items-center" [class.sd-view]="sdView?.templateRef" [class.c-focused]="isFocused"\r\n [class.c-disabled]="formControl.disabled" (click)="onClick()">\r\n <ng-container *ngIf="sdView?.templateRef && !autocompleteTrigger?.panelOpen && !isFocused; else default">\r\n <ng-container *ngTemplateOutlet="sdView.templateRef;context: { value: formControl.value}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field class="c-md" [ngClass]="{\'c-sm\': size === \'sm\'}" appearance="outline">\r\n <mat-label *ngIf="label">{{label}}</mat-label>\r\n <mat-chip-list [formControl]="formControl" #chipList>\r\n <ng-container *ngFor="let item of selectedItems">\r\n <mat-chip *ngIf="item" [selectable]="selectable" [removable]="true" (removed)="onRemove(item)"\r\n [selected]="item.isSelected" (selectionChange)="select(item)" [disabled]="inputControl.disabled"\r\n (click)="item.isSelected = !item.isSelected">\r\n <ng-container *ngIf="sdChipDisplay?.templateRef">\r\n <ng-container *ngTemplateOutlet="sdChipDisplay.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <span *ngIf="!sdChipDisplay?.templateRef">{{item[displayField] || item[valueField]}}</span>\r\n <mat-icon *ngIf="!inputControl.disabled && item | sdRemovableChip:removable" matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n </ng-container>\r\n <input #autocompleteTrigger [formControl]="inputControl" [placeholder]="placeholder || label"\r\n [matAutocomplete]="auto" [matChipInputFor]="chipList" [matChipInputSeparatorKeyCodes]="separatorKeysCodes"\r\n (matChipInputTokenEnd)="onAdd($event)" autocomplete="off" [errorStateMatcher]="matcher" (focus)="onFocus()"\r\n (blur)="onBlur()" matInput #input>\r\n </mat-chip-list>\r\n <mat-error *ngIf="formControl?.errors?.minItem">\r\n {{formControl?.errors?.minItem}}\r\n </mat-error>\r\n <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn" (optionSelected)="onSelect($event)">\r\n <mat-option *ngFor="let item of filteredItems | async" [value]="item">\r\n {{item[displayField]}}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>',styles:[":host{display:block;padding-top:5px}:host ::ng-deep mat-form-field.c-md .mat-form-field-infix{min-height:43.5px;padding:2px 0}:host ::ng-deep mat-form-field.c-md .mat-standard-chip{min-height:26px;padding:7px 10px}:host ::ng-deep mat-form-field.c-md .mat-standard-chip.mat-chip-with-trailing-icon{padding:7px 7px 7px 10px}"]}]}],T.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:p.SdUtilityService}]},T.propDecorators={name:[{type:t.Input}],size:[{type:t.Input}],form:[{type:t.Input}],label:[{type:t.Input}],valueField:[{type:t.Input}],displayField:[{type:t.Input}],placeholder:[{type:t.Input}],_removable:[{type:t.Input,args:["removable"]}],items:[{type:t.Input}],limit:[{type:t.Input}],model:[{type:t.Input}],required:[{type:t.Input}],pMin:[{type:t.Input,args:["min"]}],pMax:[{type:t.Input,args:["max"]}],modelChange:[{type:t.Output}],disabled:[{type:t.Input}],sdChange:[{type:t.Output}],sdUpdate:[{type:t.Output}],chipSelected:[{type:t.Output}],input:[{type:t.ViewChild,args:["input"]}],matAutocomplete:[{type:t.ViewChild,args:["auto"]}],chipList:[{type:t.ViewChild,args:["chipList",{static:!0}]}],autocompleteTrigger:[{type:t.ViewChild,args:[c.MatAutocompleteTrigger,{read:c.MatAutocompleteTrigger}]}],sdView:[{type:t.ContentChild,args:[m.SdViewDefDirective]}],sdChipDisplay:[{type:t.ContentChild,args:[V]}]};var j=function(){function e(){}return e.prototype.transform=function(e,t){return"boolean"==typeof t?t:t(e)},e}();j.decorators=[{type:t.Pipe,args:[{name:"sdRemovableChip"}]}],j.ctorParameters=function(){return[]};var q=function(){};q.decorators=[{type:t.NgModule,args:[{imports:[r.CommonModule,u.FormsModule,u.ReactiveFormsModule,f.MatInputModule,i.MatTooltipModule,h.MatFormFieldModule,c.MatAutocompleteModule,n.MatIconModule,o.MatProgressSpinnerModule,v.MatChipsModule,g.SdTranslateModule,m.SdCommonModule],declarations:[T,V,j],exports:[m.SdCommonModule,T,V]}]}],e.SdChip=T,e.SdChipDisplayDef=V,e.SdChipModule=q,e.ɵa=j,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=sd-angular-core-chip.umd.min.js.map