@sd-angular/core 0.0.906 → 0.0.910

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 (28) hide show
  1. package/bundles/sd-angular-core-grid-material.umd.js +2 -1
  2. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  3. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  4. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  5. package/bundles/sd-angular-core-select.umd.js +9 -10
  6. package/bundles/sd-angular-core-select.umd.js.map +1 -1
  7. package/bundles/sd-angular-core-select.umd.min.js +2 -2
  8. package/bundles/sd-angular-core-select.umd.min.js.map +1 -1
  9. package/bundles/sd-angular-core-tab-router.umd.js +33 -18
  10. package/bundles/sd-angular-core-tab-router.umd.js.map +1 -1
  11. package/bundles/sd-angular-core-tab-router.umd.min.js +2 -2
  12. package/bundles/sd-angular-core-tab-router.umd.min.js.map +1 -1
  13. package/esm2015/grid-material/src/lib/grid-material.component.js +2 -1
  14. package/esm2015/grid-material/src/lib/pipes/column-transform.pipe.js +2 -2
  15. package/esm2015/select/src/lib/select.component.js +7 -7
  16. package/esm2015/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.js +30 -24
  17. package/fesm2015/sd-angular-core-grid-material.js +2 -1
  18. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  19. package/fesm2015/sd-angular-core-select.js +6 -6
  20. package/fesm2015/sd-angular-core-select.js.map +1 -1
  21. package/fesm2015/sd-angular-core-tab-router.js +20 -14
  22. package/fesm2015/sd-angular-core-tab-router.js.map +1 -1
  23. package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
  24. package/package.json +1 -1
  25. package/{sd-angular-core-0.0.906.tgz → sd-angular-core-0.0.910.tgz} +0 -0
  26. package/select/sd-angular-core-select.metadata.json +1 -1
  27. package/select/src/lib/select.component.d.ts +2 -2
  28. package/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.d.ts +7 -7
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/select/src/lib/select.component.ts","../../../../projects/sd-core/select/src/lib/select.module.ts"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","Object","create","__classPrivateFieldGet","receiver","privateMap","has","get","__classPrivateFieldSet","set","SdSelect","ref","utilityService","_this","_name","uuid.v4","disableErrorMessage","formControl","FormControl","inputControl","_form","_model","_items","_currentItems","_allItem","loading","_delay","isRequired","_validator","multiple","limit","filtered","selectAll","allSelected","modelChange","EventEmitter","sdChange","sdSelection","_updateValidator","clearValidators","clearAsyncValidators","validators","asyncValidators","Validators","required","_customValidator","setValidators","setAsyncValidators","updateValueAndValidity","_loadItems","searchText","items","finally","results","_c","objItem_1","valueField","arrayToObject","forEach","item","toString","assign","val","displayField","detectChanges","onSelectionChange","change","select","options","some","selected","_a","_onChange","_b","setValue","reValidate","emitEvent","Array","isArray","vals_1","dataType","every","Number","isNumber","map","emit","filter","e1","val_1","find","clear","$event","stopPropagation","func","c","message","customValidator","defineProperty","prototype","NgForm","form","validator","disable","enable","ngOnInit","filteredItems","valueChanges","pipe","startWith","debounceTime","switchMap","index","formValue","changeAliasLowerCase","value_1","display","indexOf","value_2","ngAfterViewInit","addControl","ngOnDestroy","removeControl","onSelectAll","Component","args","selector","template","ChangeDetectorRef","SdUtilityService","ViewChild","Input","Output","NgModule","imports","CommonModule","FormsModule","ReactiveFormsModule","MatInputModule","MatTooltipModule","MatFormFieldModule","MatIconModule","MatSelectModule","MatProgressSpinnerModule","MatCheckboxModule","SdTranslateModule","declarations","exports","providers"],"mappings":"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","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 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\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\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 __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, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, Output, EventEmitter, ChangeDetectorRef, AfterViewInit, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { NgForm, FormControl, Validators, ValidatorFn, AbstractControl, AsyncValidatorFn, FormGroup } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { MatSelect, MatSelectChange } from '@angular/material/select';\r\nimport { Observable } from 'rxjs';\r\nimport { debounceTime, startWith, switchMap } from 'rxjs/operators';\r\nimport { SdUtilityService } from '@sd-angular/core/utility';\r\nimport { MatOption } from '@angular/material/core/option';\r\n@Component({\r\n selector: 'sd-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss']\r\n})\r\nexport class SdSelect implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild('select') select: MatSelect;\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 disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n val = (val === '') || val;\r\n }\r\n formControl = new FormControl();\r\n inputControl = new FormControl();\r\n get dataType(): 'boolean' | 'number' | 'string' {\r\n if (Array.isArray(this.#model)) {\r\n if (this.#model.length && typeof (this.#model[0]) === 'number') {\r\n return 'number';\r\n }\r\n if (this.#model.length && typeof (this.#model[0]) === 'boolean') {\r\n return 'boolean';\r\n }\r\n return 'string';\r\n } else {\r\n if ((this.#model && typeof (this.#model) === 'number') || this.#model === 0) {\r\n return 'number';\r\n }\r\n if ((this.#model && typeof (this.#model) === 'boolean') || this.#model === false) {\r\n return 'boolean';\r\n }\r\n }\r\n if (this.#currentItems?.length) {\r\n if (this.valueField && typeof (this.#currentItems[0][this.valueField]) === 'number') {\r\n return 'number';\r\n } else if (this.valueField && typeof (this.#currentItems[0][this.valueField]) === 'boolean') {\r\n return 'boolean';\r\n } else if (typeof (this.#currentItems[0]) === 'number') {\r\n return 'number';\r\n } else if (typeof (this.#currentItems[0]) === 'boolean') {\r\n return 'boolean';\r\n }\r\n }\r\n return 'string';\r\n }\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() placeholder: string;\r\n\r\n // Model\r\n #model: boolean | number | string | (number | string)[];\r\n @Input() set model(value: undefined | boolean | number | string | (number | string)[]) {\r\n this.#model = value;\r\n if (Array.isArray(value)) {\r\n this.formControl.setValue(value.map(val => (val ?? '') + ''), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.formControl.setValue((value ?? '') + '', {\r\n emitEvent: false\r\n });\r\n }\r\n this.ref.detectChanges();\r\n }\r\n // Items\r\n #items: any[] | ((searchText?: string) => Promise<any[]>) = [];\r\n #currentItems: any[] = [];\r\n #allItem: {\r\n [key: string]: any\r\n } = {};\r\n @Input() set items(items: undefined | any[] | ((searchText?: string) => Promise<any[]>)) {\r\n if (!items) {\r\n this.#items = [];\r\n } else if (Array.isArray(items)) {\r\n this.#items = items.filter(e => e !== null && e !== undefined);\r\n } else {\r\n this.#items = items;\r\n }\r\n this.inputControl.updateValueAndValidity();\r\n }\r\n @Input() valueField: string;\r\n @Input() displayField: string;\r\n\r\n // Server search\r\n loading = false;\r\n #delay = 500; // Sau khoảng thời gian delay nếu không có thay đổi thì thì mới bắt đầu thực hiện gọi hàm\r\n\r\n // Validator\r\n isRequired = false;\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\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 } else {\r\n this.formControl.enable();\r\n }\r\n }\r\n multiple = false;\r\n @Input('multiple') set _multiple(val: boolean | '') {\r\n this.multiple = (val === '') || val;\r\n }\r\n @Input() limit = 100;\r\n filtered = false;\r\n @Input('filtered') set _filtered(val: boolean | '') {\r\n this.filtered = (val === '') || val;\r\n }\r\n selectAll = false;\r\n @Input('selectAll') set _selectAll(val: boolean | '') {\r\n this.selectAll = (val === '') || val;\r\n }\r\n filteredItems: Observable<any[]>;\r\n allSelected = false;\r\n @Output() modelChange = new EventEmitter();\r\n @Output() sdChange = new EventEmitter();\r\n @Output() sdSelection = new EventEmitter<{ value: any | any[], item?: any, items?: any[] }>();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private utilityService: SdUtilityService) { }\r\n\r\n ngOnInit() {\r\n this.filteredItems = this.inputControl.valueChanges.pipe(\r\n startWith(''),\r\n debounceTime(typeof (this.#items) === 'function' ? this.#delay : 0),\r\n // distinctUntilChanged(), Dùng sẽ gây ra bug khi items changes\r\n switchMap(async (val: string) => {\r\n if (typeof (this.#items) === 'function') {\r\n const items = await this.#loadItems(val, this.#items);\r\n this.#currentItems = items.filter((item, index) => {\r\n const formValue: any | any[] = this.formControl.value;\r\n let value = item?.toString() || '';\r\n if (this.valueField && this.displayField) {\r\n value = item[this.valueField]?.toString() || '';\r\n }\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || index < this.limit;\r\n });\r\n return this.#currentItems.map(e => {\r\n if (this.valueField && this.displayField) {\r\n return {\r\n ...e,\r\n [`${this.valueField}`]: e[this.valueField]?.toString()\r\n };\r\n }\r\n return e?.toString();\r\n });\r\n // return this.#currentItems.map(e => {\r\n // if (this.valueField && this.displayField) {\r\n // return {\r\n // ...e,\r\n // [`${this.valueField}`]: e[this.displayField]?.toString() ?? e[this.valueField]?.toString()\r\n // };\r\n // }\r\n // return e?.toString();\r\n // });\r\n }\r\n const { changeAliasLowerCase } = this.utilityService;\r\n this.#currentItems = this.#items.filter(item => {\r\n const searchText = changeAliasLowerCase(val);\r\n const formValue: any | any[] = this.formControl.value;\r\n if (this.valueField && this.displayField) {\r\n const value = item[this.valueField]?.toString() || '';\r\n const display = item[this.displayField]?.toString() || '';\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || changeAliasLowerCase(value).indexOf(searchText) !== -1\r\n || changeAliasLowerCase(display).indexOf(searchText) !== -1;\r\n } else {\r\n const value = item?.toString() || '';\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || changeAliasLowerCase(value).indexOf(searchText) !== -1;\r\n }\r\n }).filter((item, index) => {\r\n const formValue: any | any[] = this.formControl.value;\r\n let value = item?.toString() || '';\r\n if (this.valueField && this.displayField) {\r\n value = item[this.valueField]?.toString() || '';\r\n }\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || index < this.limit;\r\n });\r\n return this.#currentItems.map(e => {\r\n if (this.valueField && this.displayField) {\r\n return {\r\n ...e,\r\n [`${this.valueField}`]: e[this.valueField]?.toString()\r\n };\r\n }\r\n return e?.toString();\r\n });\r\n })\r\n );\r\n }\r\n\r\n ngAfterViewInit() {\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 }\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.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\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 #loadItems = async (searchText: string, items: (searchText?: string) => Promise<any[]>) => {\r\n this.loading = true;\r\n const results = await items(searchText).finally(() => this.loading = false);\r\n if (this.multiple) {\r\n let objItem = {};\r\n if (this.valueField) {\r\n objItem = this.utilityService.arrayToObject(results, this.valueField);\r\n } else {\r\n results.forEach(item => objItem[item?.toString()] = item);\r\n }\r\n Object.assign(this.#allItem, objItem);\r\n const values: (number | string)[] = this.formControl.value || [];\r\n values.forEach(val => {\r\n if (!objItem[val]) {\r\n if (this.#allItem[val]) {\r\n results.push(this.#allItem[val]);\r\n } else {\r\n results.push({\r\n [this.valueField]: val,\r\n [this.displayField]: val\r\n });\r\n }\r\n }\r\n });\r\n }\r\n this.ref.detectChanges();\r\n return results;\r\n }\r\n\r\n onSelectionChange = (change: MatSelectChange) => {\r\n this.allSelected = !this.select.options.some(e => !e.selected);\r\n const value = change?.value ?? '';\r\n if (this.multiple) {\r\n this.#onChange(value || []);\r\n } else {\r\n this.inputControl?.setValue('');\r\n this.#onChange(value);\r\n }\r\n }\r\n\r\n onSelectAll() {\r\n if (this.allSelected) {\r\n this.formControl.setValue(this.select.options.map(e => e.value));\r\n } else {\r\n this.formControl.setValue([]);\r\n }\r\n this.#onChange(this.formControl.value);\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity({ emitEvent: true });\r\n }\r\n\r\n #onChange = (value: boolean | number | string | (number | string)[]) => {\r\n if (Array.isArray(value)) {\r\n let vals = value;\r\n if (this.dataType === 'number' && value.every(val => Number.isNumber(val))) {\r\n vals = value.map(e => +e);\r\n }\r\n this.modelChange.emit(vals);\r\n this.sdChange.emit(vals);\r\n this.sdSelection.emit({\r\n value: vals,\r\n items: this.#currentItems?.filter(e => vals.some(e1 => e1?.toString() === e?.[this.valueField]?.toString()))\r\n });\r\n } else {\r\n let val = value;\r\n if (this.dataType === 'number' && Number.isNumber(value)) {\r\n val = +value;\r\n }\r\n if (this.dataType === 'boolean') {\r\n if (value === 'true') {\r\n val = true;\r\n } else if (value === 'false') {\r\n val = false;\r\n } else {\r\n val = !!value;\r\n }\r\n }\r\n this.modelChange.emit(val);\r\n this.sdChange.emit(val);\r\n this.sdSelection.emit({\r\n value: val,\r\n item: this.#currentItems?.find(e => val?.toString() === e?.[this.valueField]?.toString())\r\n });\r\n }\r\n }\r\n\r\n clear = ($event?: any) => {\r\n $event?.stopPropagation();\r\n if (this.multiple) {\r\n this.formControl.setValue([]);\r\n this.modelChange.emit([]);\r\n this.sdChange.emit([]);\r\n this.sdSelection.emit({\r\n value: [],\r\n items: []\r\n });\r\n } else {\r\n this.formControl.setValue(null);\r\n this.modelChange.emit(null);\r\n this.sdChange.emit(null);\r\n this.sdSelection.emit({\r\n value: null,\r\n item: null\r\n });\r\n }\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport '@sd-angular/core/typing';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { SdSelect } from './select.component';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\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 MatIconModule,\r\n MatSelectModule,\r\n MatProgressSpinnerModule,\r\n MatCheckboxModule,\r\n SdTranslateModule\r\n ],\r\n declarations: [\r\n SdSelect\r\n ],\r\n exports: [\r\n SdSelect\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdSelectModule {\r\n\r\n}\r\n"]}
1
+ {"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/select/src/lib/select.component.ts","../../../../projects/sd-core/select/src/lib/select.module.ts"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","Object","create","__classPrivateFieldGet","receiver","privateMap","has","get","__classPrivateFieldSet","set","SdSelect","ref","utilityService","_this","_name","uuid.v4","disableErrorMessage","formControl","FormControl","searchTerm$","Subject","_form","_model","_items","_currentItems","_allItem","loading","_delay","isRequired","_validator","multiple","limit","filtered","selectAll","allSelected","modelChange","EventEmitter","sdChange","sdSelection","_updateValidator","clearValidators","clearAsyncValidators","validators","asyncValidators","Validators","required","_customValidator","setValidators","setAsyncValidators","updateValueAndValidity","_loadItems","searchText","items","finally","results","_c","objItem_1","valueField","arrayToObject","forEach","item","toString","assign","val","displayField","detectChanges","onSelectionChange","change","select","options","some","selected","_a","_onChange","reValidate","emitEvent","Array","isArray","vals_1","dataType","every","Number","isNumber","map","emit","filter","e1","val_1","_b","find","clear","$event","stopPropagation","setValue","func","c","message","customValidator","defineProperty","prototype","NgForm","form","validator","disable","enable","ngOnInit","filteredItems","asObservable","pipe","startWith","debounceTime","switchMap","index","formValue","changeAliasLowerCase","value_1","display","indexOf","value_2","ngAfterViewInit","addControl","ngOnDestroy","removeControl","onSelectAll","Component","args","selector","template","ChangeDetectorRef","SdUtilityService","ViewChild","Input","Output","NgModule","imports","CommonModule","FormsModule","ReactiveFormsModule","MatInputModule","MatTooltipModule","MatFormFieldModule","MatIconModule","MatSelectModule","MatProgressSpinnerModule","MatCheckboxModule","SdTranslateModule","declarations","exports","providers"],"mappings":"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","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 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\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\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 __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, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, Output, EventEmitter, ChangeDetectorRef, AfterViewInit, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { NgForm, FormControl, Validators, ValidatorFn, AbstractControl, AsyncValidatorFn, FormGroup } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { MatSelect, MatSelectChange } from '@angular/material/select';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { debounceTime, startWith, switchMap } from 'rxjs/operators';\r\nimport { SdUtilityService } from '@sd-angular/core/utility';\r\nimport { MatOption } from '@angular/material/core/option';\r\n@Component({\r\n selector: 'sd-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss']\r\n})\r\nexport class SdSelect implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild('select') select: MatSelect;\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 disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n val = (val === '') || val;\r\n }\r\n formControl = new FormControl();\r\n \r\n searchTerm$ = new Subject();\r\n\r\n get dataType(): 'boolean' | 'number' | 'string' {\r\n if (Array.isArray(this.#model)) {\r\n if (this.#model.length && typeof (this.#model[0]) === 'number') {\r\n return 'number';\r\n }\r\n if (this.#model.length && typeof (this.#model[0]) === 'boolean') {\r\n return 'boolean';\r\n }\r\n return 'string';\r\n } else {\r\n if ((this.#model && typeof (this.#model) === 'number') || this.#model === 0) {\r\n return 'number';\r\n }\r\n if ((this.#model && typeof (this.#model) === 'boolean') || this.#model === false) {\r\n return 'boolean';\r\n }\r\n }\r\n if (this.#currentItems?.length) {\r\n if (this.valueField && typeof (this.#currentItems[0][this.valueField]) === 'number') {\r\n return 'number';\r\n } else if (this.valueField && typeof (this.#currentItems[0][this.valueField]) === 'boolean') {\r\n return 'boolean';\r\n } else if (typeof (this.#currentItems[0]) === 'number') {\r\n return 'number';\r\n } else if (typeof (this.#currentItems[0]) === 'boolean') {\r\n return 'boolean';\r\n }\r\n }\r\n return 'string';\r\n }\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() placeholder: string;\r\n\r\n // Model\r\n #model: boolean | number | string | (number | string)[];\r\n @Input() set model(value: undefined | boolean | number | string | (number | string)[]) {\r\n this.#model = value;\r\n if (Array.isArray(value)) {\r\n this.formControl.setValue(value.map(val => (val ?? '') + ''), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.formControl.setValue((value ?? '') + '', {\r\n emitEvent: false\r\n });\r\n }\r\n this.ref.detectChanges();\r\n }\r\n // Items\r\n #items: any[] | ((searchText?: string) => Promise<any[]>) = [];\r\n #currentItems: any[] = [];\r\n #allItem: {\r\n [key: string]: any\r\n } = {};\r\n @Input() set items(items: undefined | any[] | ((searchText?: string) => Promise<any[]>)) {\r\n if (!items) {\r\n this.#items = [];\r\n } else if (Array.isArray(items)) {\r\n this.#items = items.filter(e => e !== null && e !== undefined);\r\n } else {\r\n this.#items = items;\r\n }\r\n }\r\n @Input() valueField: string;\r\n @Input() displayField: string;\r\n\r\n // Server search\r\n loading = false;\r\n #delay = 500; // Sau khoảng thời gian delay nếu không có thay đổi thì thì mới bắt đầu thực hiện gọi hàm\r\n\r\n // Validator\r\n isRequired = false;\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\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 } else {\r\n this.formControl.enable();\r\n }\r\n }\r\n multiple = false;\r\n @Input('multiple') set _multiple(val: boolean | '') {\r\n this.multiple = (val === '') || val;\r\n }\r\n @Input() limit = 100;\r\n filtered = false;\r\n @Input('filtered') set _filtered(val: boolean | '') {\r\n this.filtered = (val === '') || val;\r\n }\r\n selectAll = false;\r\n @Input('selectAll') set _selectAll(val: boolean | '') {\r\n this.selectAll = (val === '') || val;\r\n }\r\n filteredItems: Observable<any[]>;\r\n allSelected = false;\r\n @Output() modelChange = new EventEmitter();\r\n @Output() sdChange = new EventEmitter();\r\n @Output() sdSelection = new EventEmitter<{ value: any | any[], item?: any, items?: any[] }>();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private utilityService: SdUtilityService) { }\r\n \r\n ngOnInit() {\r\n this.filteredItems = this.searchTerm$.asObservable().pipe(\r\n startWith(''),\r\n debounceTime(typeof (this.#items) === 'function' ? this.#delay : 0),\r\n // distinctUntilChanged(), Dùng sẽ gây ra bug khi items changes\r\n switchMap(async (val: string) => {\r\n if (typeof (this.#items) === 'function') {\r\n const items = await this.#loadItems(val, this.#items);\r\n this.#currentItems = items.filter((item, index) => {\r\n const formValue: any | any[] = this.formControl.value;\r\n let value = item?.toString() || '';\r\n if (this.valueField && this.displayField) {\r\n value = item[this.valueField]?.toString() || '';\r\n }\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || index < this.limit;\r\n });\r\n return this.#currentItems.map(e => {\r\n if (this.valueField && this.displayField) {\r\n return {\r\n ...e,\r\n [`${this.valueField}`]: e[this.valueField]?.toString()\r\n };\r\n }\r\n return e?.toString();\r\n });\r\n // return this.#currentItems.map(e => {\r\n // if (this.valueField && this.displayField) {\r\n // return {\r\n // ...e,\r\n // [`${this.valueField}`]: e[this.displayField]?.toString() ?? e[this.valueField]?.toString()\r\n // };\r\n // }\r\n // return e?.toString();\r\n // });\r\n }\r\n const { changeAliasLowerCase } = this.utilityService;\r\n this.#currentItems = this.#items.filter(item => {\r\n const searchText = changeAliasLowerCase(val);\r\n const formValue: any | any[] = this.formControl.value;\r\n if (this.valueField && this.displayField) {\r\n const value = item[this.valueField]?.toString() || '';\r\n const display = item[this.displayField]?.toString() || '';\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || changeAliasLowerCase(value).indexOf(searchText) !== -1\r\n || changeAliasLowerCase(display).indexOf(searchText) !== -1;\r\n } else {\r\n const value = item?.toString() || '';\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || changeAliasLowerCase(value).indexOf(searchText) !== -1;\r\n }\r\n }).filter((item, index) => {\r\n const formValue: any | any[] = this.formControl.value;\r\n let value = item?.toString() || '';\r\n if (this.valueField && this.displayField) {\r\n value = item[this.valueField]?.toString() || '';\r\n }\r\n return (Array.isArray(formValue) ? formValue.some(e => e?.toString() === value) : formValue?.toString() === value)\r\n || index < this.limit;\r\n });\r\n return this.#currentItems.map(e => {\r\n if (this.valueField && this.displayField) {\r\n return {\r\n ...e,\r\n [`${this.valueField}`]: e[this.valueField]?.toString()\r\n };\r\n }\r\n return e?.toString();\r\n });\r\n })\r\n );\r\n }\r\n\r\n ngAfterViewInit() {\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 }\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.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\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 #loadItems = async (searchText: string, items: (searchText?: string) => Promise<any[]>) => {\r\n this.loading = true;\r\n const results = await items(searchText).finally(() => this.loading = false);\r\n if (this.multiple) {\r\n let objItem = {};\r\n if (this.valueField) {\r\n objItem = this.utilityService.arrayToObject(results, this.valueField);\r\n } else {\r\n results.forEach(item => objItem[item?.toString()] = item);\r\n }\r\n Object.assign(this.#allItem, objItem);\r\n const values: (number | string)[] = this.formControl.value || [];\r\n values.forEach(val => {\r\n if (!objItem[val]) {\r\n if (this.#allItem[val]) {\r\n results.push(this.#allItem[val]);\r\n } else {\r\n results.push({\r\n [this.valueField]: val,\r\n [this.displayField]: val\r\n });\r\n }\r\n }\r\n });\r\n }\r\n this.ref.detectChanges();\r\n return results;\r\n }\r\n\r\n onSelectionChange = (change: MatSelectChange) => {\r\n this.allSelected = !this.select.options.some(e => !e.selected);\r\n const value = change?.value ?? '';\r\n if (this.multiple) {\r\n this.#onChange(value || []);\r\n } else {\r\n this.searchTerm$.next('');\r\n this.#onChange(value);\r\n }\r\n }\r\n\r\n onSelectAll() {\r\n if (this.allSelected) {\r\n this.formControl.setValue(this.select.options.map(e => e.value));\r\n } else {\r\n this.formControl.setValue([]);\r\n }\r\n this.#onChange(this.formControl.value);\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity({ emitEvent: true });\r\n }\r\n\r\n #onChange = (value: boolean | number | string | (number | string)[]) => {\r\n if (Array.isArray(value)) {\r\n let vals = value;\r\n if (this.dataType === 'number' && value.every(val => Number.isNumber(val))) {\r\n vals = value.map(e => +e);\r\n }\r\n this.modelChange.emit(vals);\r\n this.sdChange.emit(vals);\r\n this.sdSelection.emit({\r\n value: vals,\r\n items: this.#currentItems?.filter(e => vals.some(e1 => e1?.toString() === e?.[this.valueField]?.toString()))\r\n });\r\n } else {\r\n let val = value;\r\n if (this.dataType === 'number' && Number.isNumber(value)) {\r\n val = +value;\r\n }\r\n if (this.dataType === 'boolean') {\r\n if (value === 'true') {\r\n val = true;\r\n } else if (value === 'false') {\r\n val = false;\r\n } else {\r\n val = !!value;\r\n }\r\n }\r\n this.modelChange.emit(val);\r\n this.sdChange.emit(val);\r\n this.sdSelection.emit({\r\n value: val,\r\n item: this.#currentItems?.find(e => val?.toString() === e?.[this.valueField]?.toString())\r\n });\r\n }\r\n }\r\n\r\n clear = ($event?: any) => {\r\n $event?.stopPropagation();\r\n if (this.multiple) {\r\n this.formControl.setValue([]);\r\n this.modelChange.emit([]);\r\n this.sdChange.emit([]);\r\n this.sdSelection.emit({\r\n value: [],\r\n items: []\r\n });\r\n } else {\r\n this.formControl.setValue(null);\r\n this.modelChange.emit(null);\r\n this.sdChange.emit(null);\r\n this.sdSelection.emit({\r\n value: null,\r\n item: null\r\n });\r\n }\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport '@sd-angular/core/typing';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { SdSelect } from './select.component';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\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 MatIconModule,\r\n MatSelectModule,\r\n MatProgressSpinnerModule,\r\n MatCheckboxModule,\r\n SdTranslateModule\r\n ],\r\n declarations: [\r\n SdSelect\r\n ],\r\n exports: [\r\n SdSelect\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdSelectModule {\r\n\r\n}\r\n"]}
@@ -562,22 +562,33 @@
562
562
  _firstLoad.set(this, true);
563
563
  _closeTab.set(this, function (tab) {
564
564
  var _a;
565
- _this.tabs = _this.tabs.filter(function (_h) {
566
- var key = _h.key;
567
- return key !== tab.key;
568
- });
569
- if (tab.isActive) {
570
- var lastTab = _this.tabs[_this.tabs.length - 1];
571
- if (lastTab) {
572
- _this.router.navigateByUrl(lastTab.url, {
573
- queryParams: lastTab.queryParams || {},
565
+ var isActive = tab.isActive, activeKey = tab.key;
566
+ if (isActive) {
567
+ var activeIndex = _this.tabs.findIndex(function (_h) {
568
+ var key = _h.key;
569
+ return key === activeKey;
570
+ });
571
+ var nextTab = _this.tabs[activeIndex + 1] || _this.tabs[activeIndex - 1];
572
+ if (nextTab) {
573
+ var nextUrl = nextTab.url;
574
+ var nextQueryParams = Object.assign({}, (nextTab.queryParams || {}));
575
+ _this.tabs = _this.tabs.filter(function (_h) {
576
+ var key = _h.key;
577
+ return key !== activeKey;
578
+ });
579
+ _this.router.navigate([nextUrl], {
580
+ queryParams: nextQueryParams,
574
581
  state: {
575
582
  switchTab: true,
576
583
  },
577
584
  });
578
585
  }
579
586
  else {
580
- _this.router.navigateByUrl("/", {
587
+ _this.tabs = _this.tabs.filter(function (_h) {
588
+ var key = _h.key;
589
+ return key !== activeKey;
590
+ });
591
+ _this.router.navigateByUrl('/', {
581
592
  state: {
582
593
  switchTab: true,
583
594
  },
@@ -585,12 +596,16 @@
585
596
  }
586
597
  }
587
598
  else {
599
+ _this.tabs = _this.tabs.filter(function (_h) {
600
+ var key = _h.key;
601
+ return key !== tab.key;
602
+ });
588
603
  (_a = _this.tabRouterNav) === null || _a === void 0 ? void 0 : _a.checkUI();
589
604
  _this.cd.markForCheck();
590
605
  }
591
606
  });
592
607
  _activeRoute.set(this, function (fullUrl, route) { return __awaiter(_this, void 0, void 0, function () {
593
- var _a, _b, _c, _d, _e, _f, _g, component, queryParams, params, key, _h, url, existedIndex, currentNavigation, existedTab, module, factory, injector_1, activatedRoute_1, tab;
608
+ var _a, _b, _c, _d, _e, _f, _g, component, queryParams, params, _h, url, key, existedIndex, currentNavigation, existedTab, module, factory, injector_1, activatedRoute_1, tab;
594
609
  var _this = this;
595
610
  return __generator(this, function (_j) {
596
611
  switch (_j.label) {
@@ -601,8 +616,8 @@
601
616
  component = route.component;
602
617
  queryParams = Object.assign({}, (route.queryParams || {}));
603
618
  params = Object.assign({}, (route.params || {}));
604
- key = hash__namespace({ url: fullUrl });
605
- _h = __read(fullUrl.split("?"), 1), url = _h[0];
619
+ _h = __read(fullUrl.split('?'), 1), url = _h[0];
620
+ key = hash__namespace({ url: url, queryParams: queryParams });
606
621
  existedIndex = -1;
607
622
  this.tabs.forEach(function (tab, index) {
608
623
  if (tab.key === key) {
@@ -623,7 +638,7 @@
623
638
  this.tabRouterService.pushEvent(existedTab, SdTabActivated);
624
639
  return [3 /*break*/, 5];
625
640
  case 1:
626
- if (!(typeof ((_d = (_c = route === null || route === void 0 ? void 0 : route.parent) === null || _c === void 0 ? void 0 : _c.routeConfig) === null || _d === void 0 ? void 0 : _d.loadChildren) === "function")) return [3 /*break*/, 4];
641
+ if (!(typeof ((_d = (_c = route === null || route === void 0 ? void 0 : route.parent) === null || _c === void 0 ? void 0 : _c.routeConfig) === null || _d === void 0 ? void 0 : _d.loadChildren) === 'function')) return [3 /*break*/, 4];
627
642
  return [4 /*yield*/, route.parent.routeConfig.loadChildren()];
628
643
  case 2:
629
644
  module = _j.sent();
@@ -653,7 +668,7 @@
653
668
  case 4:
654
669
  (_g = this.tabRouterNav) === null || _g === void 0 ? void 0 : _g.checkUI();
655
670
  if (this.tabs.length > 10) {
656
- this.sdNotifyService.notify.warning("Bạn đã mở quá nhiều tab. Vui lòng tắt các tab không dùng để hệ thống hoạt động tốt hơn.");
671
+ this.sdNotifyService.notify.warning('Bạn đã mở quá nhiều tab. Vui lòng tắt các tab không dùng để hệ thống hoạt động tốt hơn.');
657
672
  }
658
673
  if (this.tabs.length > 12) {
659
674
  this.tabs.splice(0, this.tabs.length - 10);
@@ -718,7 +733,7 @@
718
733
  });
719
734
  }); }));
720
735
  __classPrivateFieldGet(this, _subscription).add(tabRouterService.actions.subscribe(function (event) {
721
- if (event && event.type === "close") {
736
+ if (event && event.type === 'close') {
722
737
  __classPrivateFieldGet(_this, _closeTab).call(_this, event.tab);
723
738
  }
724
739
  }));
@@ -731,7 +746,7 @@
731
746
  _rootRoute = new WeakMap(), _subscription = new WeakMap(), _firstLoad = new WeakMap(), _closeTab = new WeakMap(), _activeRoute = new WeakMap(), _getActivatedRouteSnapshot = new WeakMap(), _getActivatedRoute = new WeakMap();
732
747
  SdTabRouterOutletComponent.decorators = [
733
748
  { type: i0.Component, args: [{
734
- selector: "sd-tab-router-outlet",
749
+ selector: 'sd-tab-router-outlet',
735
750
  template: "<sd-tab-router-nav [tabs]=\"tabs\" #tabRouterNav></sd-tab-router-nav>\r\n\r\n<div class=\"tab-router__list\">\r\n <ng-container *ngFor=\"let tab of tabs\">\r\n <div class=\"tab-router__pane\" [class.active]=\"tab.isActive\" [id]=\"tab.key\">\r\n <div class=\"tab-router__content\">\r\n <ng-container\r\n *ngComponentOutlet=\"tab.component; injector: tab.injector\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n",
736
751
  styles: [":host{display:flex;flex-direction:column;height:calc(100vh - 64px);width:100%}::ng-deep page-layout{height:100%!important}.tab-router__list{flex:1}.tab-router__pane{display:none;height:100%;position:relative;width:100%}.tab-router__pane.active{display:block}.tab-router__content{bottom:0;height:100%;left:0;overflow:auto;position:absolute;right:0;top:0;width:100%}"]
737
752
  },] }
@@ -747,7 +762,7 @@
747
762
  { type: i1.SdNotifyService }
748
763
  ]; };
749
764
  SdTabRouterOutletComponent.propDecorators = {
750
- tabRouterNav: [{ type: i0.ViewChild, args: ["tabRouterNav",] }]
765
+ tabRouterNav: [{ type: i0.ViewChild, args: ['tabRouterNav',] }]
751
766
  };
752
767
  var SdOutletInjector = /** @class */ (function () {
753
768
  function SdOutletInjector(route,