@sd-angular/core 1.1.98 → 1.1.99

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.
@@ -655,6 +655,28 @@
655
655
  finally { if (e_1) throw e_1.error; }
656
656
  }
657
657
  return template;
658
+ };
659
+ var SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';
660
+ String.encrypt = function (obj) {
661
+ obj = JSON.stringify(obj).split('');
662
+ for (var i = 0, l = obj.length; i < l; i++)
663
+ if (obj[i] == '{')
664
+ obj[i] = '}';
665
+ else if (obj[i] == '}')
666
+ obj[i] = '{';
667
+ return encodeURI(SALT + obj.join(''));
668
+ };
669
+ String.decrypt = function (encripted) {
670
+ encripted = decodeURI(encripted);
671
+ if (SALT && encripted.indexOf(SALT) != 0)
672
+ throw new Error('object cannot be decrypted');
673
+ var strs = encripted.substring(SALT.length).split('');
674
+ for (var i = 0, l = strs.length; i < l; i++)
675
+ if (strs[i] == '{')
676
+ strs[i] = '}';
677
+ else if (encripted[i] == '}')
678
+ strs[i] = '{';
679
+ return JSON.parse(strs.join(''));
658
680
  };
659
681
 
660
682
  var FIREBASE_CONFIG = new i0.InjectionToken('sd.firebase.configuration');
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-common.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts","../../../../projects/sd-core/common/sd-angular-core-common.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 { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n return val.toLocaleString('vi-VN');\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if(!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["of","InjectionToken","Subject","FormControl","Injectable","Directive","TemplateRef","ViewContainerRef","Input","ElementRef","Renderer2","HostListener","NgModule","CommonModule"],"mappings":";;;;;;IAAA;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;IC3NA,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,UAAmB,UAAe,EAAE,MAA0B;QACrF,IAAM,KAAK,GAAQ,IAAI,CAAC;QACxB,IAAI,EAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,GAAE,EAAE;YAC3B,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,IAAM,IAAE,GAAG,MAAM,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,GAAA,CAAC,CAAC;YACzE,IAAI,CAAC,IAAE,CAAC,MAAM,EAAE;gBACd,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,GAAA,CAAC,CAAC;aAC5G;YACD,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,IAAE,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAA,CAAC,GAAA,CAAC,CAAC;SACrI;QACD,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,GAAA,CAAC,CAAC;SAC5G;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,GAAA,CAAC,CAAC;IACrH,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,UAAmB,QAAgB,EAAE,IAAgB;QAAhB,qBAAA,EAAA,QAAgB;QAC5E,IAAM,KAAK,GAAQ,IAAI,CAAC;QACxB,OAAO,KAAK,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,KAAK;YAC9B,OAAO,KAAK,IAAI,IAAI,GAAG,QAAQ;mBAC1B,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,QAAQ,CAAC;SACpC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,UAAmB,GAAW;QACvD,IAAM,KAAK,GAAQ,IAAI,CAAC;QACxB,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,GAAA,CAAC,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,IAAI,IAAO,GAAG,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,GAAG,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC3I;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,GAAA,CAAC,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,IAAI,YAAO,GAAG,OAAC,IAAI,CAAC,GAAG,CAAC,0CAAE,QAAQ,GAAG,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACjJ,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,UAAmB,GAAW;;QAAE,cAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,6BAAc;;QACpE,IAAI,OAAO,GAAQ,IAAI,CAAC;QACxB,IAAM,WAAW,GAAG,UAAU,GAAM,EAAE,KAAa,EAAE,IAAS,IAAK,OAAA,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,UAAC,CAAwB,IAAK,OAAA,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,GAAA,CAAC,KAAK,KAAK,GAAA,CAAC;QACxM,IAAI,EAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA,EAAE;YACjB,OAAO,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SACpC;;YACD,KAAkB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;gBAAnB,IAAM,GAAG,iBAAA;gBACZ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACtB,OAAO,GAAG,SAAI,OAAO,EAAK,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;iBACpD;aACF;;;;;;;;;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAA;IAED,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG;QAC7B,IAAM,KAAK,GAAQ,IAAI,CAAC;QACxB,OAAOA,OAAE,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC,CAAA;IAED,KAAK,CAAC,MAAM,GAAG,UAAU,KAAU,EAAE,UAA2B,EAAE,MAA0B;QAC1F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,KAAK,CAAC,KAAK,GAAG,UAAU,GAAW;QAAE,cAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,6BAAc;;QACjD,OAAO,EAAE,CAAC,KAAK,OAAR,EAAE,YAAO,GAAG,GAAK,IAAI,GAAE;IAChC,CAAC,CAAA;IAED,KAAK,CAAC,QAAQ,GAAG,UAAI,KAAU,EAAE,GAAY;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;;IC9DD,IAAI,CAAC,KAAK,GAAG,UAAC,KAAU,EAAE,KAAU;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC9C,OAAO,IAAI,CAAC;SACb;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC9C,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IACjE,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,GAAG,UAAC,KAAU,EAAE,MAAc;QAC1C,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC;SACb;QACD,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,IAAI,CAAC;SACb;QACD,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QACzB,IAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAClG,IAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,GAAG,EAAE;YACP,IAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACjE,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE;gBACnC,OAAO,IAAO,EAAE,SAAI,EAAE,SAAI,IAAM,CAAC;aAClC;iBAAM;gBACL,OAAO,IAAI,CAAC;aACb;SACF;aAAM;YACL,IAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;YACzB,IAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC5C,IAAM,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9D,IAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACvD,OAAO,IAAO,EAAE,SAAI,EAAE,SAAI,IAAM,CAAC;SAClC;QACD,IAAI,GAAG,EAAE;YACP,IAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAC9F,IAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAC9F,IAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAC9F,OAAO,IAAI,OAAI,EAAE,IAAI,IAAI,WAAI,EAAE,IAAI,IAAI,WAAI,EAAE,IAAI,IAAI,CAAE,CAAC;SACzD;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YACzB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,IAAI,CAAC,MAAM,GAAG,UAAC,KAAU;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC;SACd;QACD,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,IAAI,CAAC,QAAQ,GAAG,UAAC,KAAU,EAAE,MAAc;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,EAAE,CAAC;SACX;QACD,IAAM,IAAI,GAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,IAAI,CAAC,cAAc,GAAG,UAAC,KAAU,EAAE,WAAmB;QACpD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,IAAM,IAAI,GAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,IAAI,CAAC,QAAQ,GAAG,UAAC,KAAU,EAAE,KAAa;QACxC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,IAAM,IAAI,GAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,IAAI,CAAC,OAAO,GAAG,UAAC,KAAU,EAAE,IAAY;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,IAAM,IAAI,GAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,GAAG,UAAC,KAAU,EAAE,MAAc;QAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,IAAM,IAAI,GAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,IAAI,CAAC,KAAK,GAAG,UAAC,KAAU;QACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,IAAI,CAAC,GAAG,GAAG,UAAC,KAAU;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG;QACrB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,GAAG,GAAG;QACnB,IAAM,IAAI,GAAS,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,UAAU,WAAmB;QAC3D,IAAM,IAAI,GAAS,IAAI,CAAC;QACxB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,WAAW,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,UAAU,KAAa;QAC/C,IAAM,IAAI,GAAS,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,IAAY;QAC7C,IAAM,IAAI,GAAS,IAAI,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,UAAU,MAAc;QACjD,IAAM,IAAI,GAAS,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,UAAU,MAAc;QAChD,IAAM,IAAI,GAAS,IAAI,CAAC;QACxB,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACjF,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1E,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3E,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7E,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7E,OAAO,MAAM,CAAC;IAChB,CAAC;;ICzKD,MAAM,CAAC,YAAY,GAAG,UAAC,KAAU;QAC/B,KAAK,GAAG,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC;SACb;QACD,IAAM,GAAG,GAAG,CAAC,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACtB,OAAO,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;SACpC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,CAAC,iBAAiB,GAAG,UAAC,KAAU;QACpC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC;SACd;QACD,IAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,CAAC,gBAAgB,GAAG,UAAC,KAAU;QACnC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC;SACd;QACD,IAAM,KAAK,GAAG,4BAA4B,CAAC;QAC3C,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG,UAAC,KAAU;QAC3B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;YACzD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;;IC9BD,MAAM,CAAC,YAAY,GAAG,UAAC,KAAU;QAC/B,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC;SACd;QACD,IAAM,EAAE,GAAG,wHAAwH,CAAC;QACpI,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,CAAC,YAAY,GAAG,UAAC,KAAU;QAC/B,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC;SACd;QACD,IAAM,EAAE,GAAG,8CAA8C,CAAC;QAC1D,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,CAAC,WAAW,GAAG,UAAC,KAAU;QAC9B,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAC;SACd;QACD,IAAM,EAAE,GAAG,2BAA2B,CAAC;QACvC,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,CAAC,oBAAoB,GAAG,UAAC,KAAU;;QACvC,IAAI,GAAG,SAAW,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,qCAAM,EAAE,CAAC;QAC1C,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;QACnC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QAC7D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QACjD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACrC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QAC7D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QACjD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACrC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,wFAAwF,EAAE,GAAG,CAAC,CAAC;QACjH,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC;IACb,CAAC,CAAA;IAED,MAAM,CAAC,aAAa,GAAG,UAAC,KAAU,EAAE,UAAe;QACjD,OAAO,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9F,CAAC,CAAA;IAED,MAAM,CAAC,MAAM,GAAG,UAAC,QAAgB;QAAE,aAAa;aAAb,UAAa,EAAb,qBAAa,EAAb,IAAa;YAAb,4BAAa;;QAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAM,CAAC,QAAK,EAAE,IAAI,CAAC,CAAC;YAC9C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7C;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAA;IAED,MAAM,CAAC,iBAAiB,GAAG,UAAC,QAAgB,EAAE,MAAW;;QACvD,IAAG,CAAC,QAAQ,EAAE;YACZ,OAAO,QAAQ,CAAC;SACjB;QACD,IAAM,KAAK,GAAG,wBAAwB,CAAC;QACvC,IAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;;YAC5C,KAAoB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE;gBAAxB,IAAM,KAAK,oBAAA;gBACd,IAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC7C,IAAI,GAAG,EAAE;oBACP,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,GAAG,MAAK,EAAE,CAAC,CAAC;iBACzD;aACF;;;;;;;;;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;;QCvEY,eAAe,GAAG,IAAIC,iBAAc,CAAyB,2BAA2B;;QCDxF,WAAW,GAAG,IAAIA,iBAAc,CAAqB,uBAAuB;;;QCLtD,iCAAW;QAK5C,uBACE,SAAkB,EAClB,SAA6C,EAC7C,cAA4D;YAD5D,0BAAA,EAAA,gBAA6C;YAC7C,+BAAA,EAAA,qBAA4D;YAH9D,YAKE,kBAAM,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,SAC5C;YAVD,eAAS,GAAqB,IAAIC,YAAO,EAAW,CAAC;YACrD,oBAAc,GAAqB,IAAIA,YAAO,EAAW,CAAC;YAC1D,kBAAY,GAAqB,IAAIA,YAAO,EAAW,CAAC;YACxD,qBAAe,GAAqB,IAAIA,YAAO,EAAW,CAAC;;SAO1D;QAED,uCAAe,GAAf,UAAgB,EAAyC;gBAAvC,QAAQ,oBAA6B,EAAE,eAA/B;YACxB,iBAAM,eAAe,YAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;QAED,qCAAa,GAAb,UAAc,EAAyC;gBAAvC,QAAQ,oBAA6B,EAAE,eAA/B;YACtB,iBAAM,aAAa,YAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;QAED,sCAAc,GAAd,UAAe,IAEd;YACC,iBAAM,cAAc,YAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;4BACF;KAhCD,CAAmCC,iBAAW;;;;QCS5C;YAMA,oCAA4B;gBAC1B,IAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC;gBAC/B,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,8DAA8D,CAAC,IAAI,EAAE,CAAC;gBACvF,IAAI,GAAqB,CAAC;gBAC1B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;oBACzB,GAAG,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;oBACvC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;iBAChD;gBACD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;oBACrB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBAC/B,IAAI,GAAG,IAAI,IAAI,EAAE;wBAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;qBAAE;oBACxE,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBAC/B,IAAI,GAAG,IAAI,IAAI,EAAE;wBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;qBAAE;iBAChE;gBACD,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC1E,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAClC,IAAI,GAAG,IAAI,IAAI,EAAE;oBAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;iBAAE;gBAC5C,OAAO;oBACL,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;iBACd,CAAC;aACH,EAAA;YA1BC,IAAM,qBAAqB,GAAG,6DAAA,IAAI,CAA4B,CAAC;YAC/D,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC;YAC7C,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAAC;SACrD;QAPD,sBAAI,sCAAQ;iBAAZ,cAAiB,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE;;;WAAA;QACvD,sBAAI,uCAAS;iBAAb,cAAkB,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,EAAE;;;WAAA;QACzD,sBAAI,sCAAQ;iBAAZ,cAAiB,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE;;;WAAA;;;;;;gBARxDC,aAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;;;QCGC,4BAAmB,WAA6B;YAA7B,gBAAW,GAAX,WAAW,CAAkB;SAAK;;;;gBALtDC,YAAS,SAAC;oBACT,QAAQ,EAAE,aAAa;iBACxB;;;gBAJmBC,cAAW;;;;;QCY7B,wBAAoB,KAAuB,EAAU,WAA6B;YAAlF,iBAAuF;YAAnE,UAAK,GAAL,KAAK,CAAkB;YAAU,gBAAW,GAAX,WAAW,CAAkB;YAFlF,YAAO,GAAQ,EAAE,CAAC;YAIlB,sBAAc;gBACZ,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBACnB,KAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAI,CAAC,WAAW,EAAE,KAAI,CAAC,OAAO,CAAC,CAAC;aAC/D,EAAA;SALsF;QAPvF,sBACI,iCAAK;iBADT,UACU,OAAY;gBACpB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;gBACtD,+CAAA,IAAI,CAAc,CAAC;aACpB;;;WAAA;;;;;gBARFD,YAAS,SAAC;oBACT,QAAQ,EAAE,SAAS;iBACpB;;;gBAHuCE,mBAAgB;gBAA7BD,cAAW;;;wBAKnCE,QAAK;;;;;QCcN,2BACU,UAAsB,EACtB,QAAmB,EACnB,cAAgC;YAFhC,eAAU,GAAV,UAAU,CAAY;YACtB,aAAQ,GAAR,QAAQ,CAAW;YACnB,mBAAc,GAAd,cAAc,CAAkB;YAf1C,oBAA2C,QAAQ,EAAC;SAeL;QAb/C,uCAAW,GAAX;YACE,uBAAA,IAAI,aAAa,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,MAAM,GAAG,SAAS,EAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,0CAAiB,CAAC;SACnF;QAGD,sCAAU,GAAV;YACE,uBAAA,IAAI,aAAa,QAAQ,EAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,0CAAiB,CAAC;SACnF;QAMD,oCAAQ,GAAR;YACE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;YACnG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,0CAAiB,CAAC;SACnF;;;;;gBAxBFH,YAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;iBACvB;;;gBALmBI,aAAU;gBAAwBC,YAAS;gBACtD,gBAAgB;;;8BAOtBC,eAAY,SAAC,WAAW;6BAMxBA,eAAY,SAAC,UAAU;;;;QCRxB,2BAAmB,WAA6B;YAA7B,gBAAW,GAAX,WAAW,CAAkB;SAAK;;;;gBAJtDN,YAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;iBACvB;;;gBAJmBC,cAAW;;;ICM/B;;QAoBA;;;;;gBAnBCM,WAAQ,SAAC;oBACR,OAAO,EAAE;wBACPC,mBAAY;qBACb;oBACD,YAAY,EAAE;wBACZ,kBAAkB;wBAClB,cAAc;wBACd,iBAAiB;wBACjB,iBAAiB;qBAClB;oBACD,OAAO,EAAE;wBACP,kBAAkB;wBAClB,cAAc;wBACd,iBAAiB;wBACjB,iBAAiB;qBAClB;oBACD,SAAS,EAAE,EACV;iBACF;;;ICzBD;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"sd-angular-core-common.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts","../../../../projects/sd-core/common/sd-angular-core-common.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 { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n return val.toLocaleString('vi-VN');\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n encrypt(obj: any): string;\r\n decrypt(encripted: string): any;\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if (!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}\r\n\r\nconst SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';\r\n\r\nString.encrypt = (obj: any) => {\r\n obj = JSON.stringify(obj).split('');\r\n for (var i = 0, l = obj.length; i < l; i++)\r\n if (obj[i] == '{')\r\n obj[i] = '}';\r\n else if (obj[i] == '}')\r\n obj[i] = '{';\r\n return encodeURI(SALT + obj.join(''));\r\n}\r\n\r\nString.decrypt = (encripted: string) => {\r\n encripted = decodeURI(encripted);\r\n if (SALT && encripted.indexOf(SALT) != 0)\r\n throw new Error('object cannot be decrypted');\r\n const strs = encripted.substring(SALT.length).split('');\r\n for (let i = 0, l = strs.length; i < l; i++)\r\n if (strs[i] == '{')\r\n strs[i] = '}';\r\n else if (encripted[i] == '}')\r\n strs[i] = '{';\r\n return JSON.parse(strs.join(''));\r\n}\r\n","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["of","InjectionToken","Subject","FormControl","Injectable","Directive","TemplateRef","ViewContainerRef","Input","ElementRef","Renderer2","HostListener","NgModule","CommonModule"],"mappings":"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"}
@@ -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
- ***************************************************************************** */var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)};Object.create;function a(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.")}function u(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a}function s(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(u(arguments[t]));return e}Object.create;function l(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 c(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}Array.prototype.search=function(e,t){var r=this;if(!(null==e?void 0:e.toString()))return r;if(Array.isArray(t)){var n=t.filter((function(e){return null!=e&&""!==e}));return n.length?r.filter((function(t){return null!=t&&n.some((function(r){return String.aliasIncludes(t[r],e)}))})):r.filter((function(t){return null!=t&&String.aliasIncludes(t,e)}))}return t?r.filter((function(r){return null!=r&&String.aliasIncludes(r[t],e)})):r.filter((function(t){return null!=t&&String.aliasIncludes(t,e)}))},Array.prototype.paging=function(e,t){void 0===t&&(t=0);return this.filter((function(r,n){return n>=t*e&&n<(t+1)*e}))},Array.prototype.toObject=function(e){return e?this.filter((function(e){return null!=e})).reduce((function(t,r){var n;return t[null===(n=r[e])||void 0===n?void 0:n.toString()]=r,t}),{}):this.filter((function(e){return null!=e})).reduce((function(e,t){return e[null==t?void 0:t.toString()]=t,e}),{})},Array.prototype.union=function(e){for(var t,r,n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];var i=this,u=function(t,r,n){return null!=t&&n.findIndex((function(r){return e?r[e]===t[e]:r===t}))===r};if(!(null==n?void 0:n.length))return i.filter(u);try{for(var l=a(n),c=l.next();!c.done;c=l.next()){var f=c.value;Array.isArray(f)&&(i=s(i,f).filter(u))}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}return i},Array.prototype.asObservable=function(){return t.of(this)},Array.search=function(e,t,r){return Array.isArray(e)?e.search(t,r):[]},Array.union=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return[].union.apply([],s([e],t))},Array.toObject=function(e,t){return Array.isArray(e)?e.toObject(t):{}},Date.equal=function(e,t){return!Date.isDate(e)&&!Date.isDate(t)||!(!Date.isDate(e)||!Date.isDate(t))&&new Date(e).getTime()===new Date(t).getTime()},Date.parseFrom=function(e,t){if(!e)return null;if(!t)return null;e=e.toString();var r=t.indexOf("dd")>-1&&t.indexOf("MM")>-1&&t.indexOf("yyyy")>-1,n=t.indexOf("HH")>-1||t.indexOf("mm")>-1||t.indexOf("ss")>-1,o="";if(r){var i=e.substr(t.indexOf("dd"),"dd".length),a=e.substr(t.indexOf("MM"),"MM".length);if(!(+(s=e.substr(t.indexOf("yyyy"),"yyyy".length))>0&&+a>0&&+i>0))return null;o+=a+"/"+i+"/"+s}else{var u=new Date,s=u.getFullYear().toString();o+=(a=(u.getMonth()+1).toString().padStart(2,"0"))+"/"+(i=u.getDate().toString().padStart(2,"0"))+"/"+s}n&&(o+=" "+((t.indexOf("HH")>-1?e.substr(t.indexOf("HH"),"HH".length):"00")||"00")+":"+((t.indexOf("mm")>-1?e.substr(t.indexOf("mm"),"mm".length):"00")||"00")+":"+((t.indexOf("ss")>-1?e.substr(t.indexOf("ss"),"ss".length):"00")||"00"));return Date.isDate(o)?new Date(o):null},Date.isDate=function(e){if(!e)return!1;var t=new Date(e);return!isNaN(t.getTime())},Date.toFormat=function(e,t){return Date.isDate(e)?new Date(e).toFormat(t):""},Date.addMiliseconds=function(e,t){return Date.isDate(e)?new Date(e).addMiliseconds(t):null},Date.addHours=function(e,t){return Date.isDate(e)?new Date(e).addHours(t):null},Date.addDays=function(e,t){return Date.isDate(e)?new Date(e).addDays(t):null},Date.addMonths=function(e,t){return Date.isDate(e)?new Date(e).addMonths(t):null},Date.begin=function(e){return Date.isDate(e)?new Date(Date.toFormat(e,"MM/dd/yyyy")):null},Date.end=function(e){return Date.isDate(e)?new Date(e).addDays(1).begin().addMiliseconds(-1):null},Date.prototype.begin=function(){return new Date(this.toFormat("MM/dd/yyyy"))},Date.prototype.end=function(){return this.addDays(1).begin().addMiliseconds(-1)},Date.prototype.addMiliseconds=function(e){var t=this;return t.setMilliseconds(t.getMilliseconds()+e),t},Date.prototype.addHours=function(e){var t=this;return t.setHours(t.getHours()+e),t},Date.prototype.addDays=function(e){var t=this;return t.setDate(t.getDate()+e),t},Date.prototype.addMonths=function(e){var t=this;return t.setMonth(t.getMonth()+e),t},Date.prototype.toFormat=function(e){var t=this,r=e;return r=(r=(r=(r=(r=(r=r.replace("yyyy",t.getFullYear().toString())).replace("MM",(t.getMonth()+1).toString().padStart(2,"0"))).replace("dd",t.getDate().toString().padStart(2,"0"))).replace("HH",t.getHours().toString().padStart(2,"0"))).replace("mm",t.getMinutes().toString().padStart(2,"0"))).replace("ss",t.getSeconds().toString().padStart(2,"0"))},Number.toVNCurrency=function(e){if(!(e=(null!=e?e:"").toString().replace(/,/g,"")))return null;var t=+e;return Number.isNaN(t)?null:t.toLocaleString("vi-VN")},Number.isPositiveInteger=function(e){if(!e)return!1;return/^([0-9]*)$/.test(e)&&+e>0},Number.isPositiveNumber=function(e){if(!e)return!1;return/^([0-9]*)(\.[0-9]+$){0,1}$/.test(e)&&+e>0},Number.isNumber=function(e){return null!=e&&""!==e&&!Number.isNaN(+e)},String.isValidEmail=function(e){if(!e)return!1;return/^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i.test(e)},String.isValidPhone=function(e){if(!e)return!1;return/^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\s\./0-9]*$/.test(e)},String.isValidCode=function(e){if(!e)return!1;return/^[a-zA-Z0-9\@\_\-]{2,20}$/.test(e)},String.changeAliasLowerCase=function(e){var t,r=null!==(t=null==e?void 0:e.toString())&&void 0!==t?t:"";return r=(r=(r=(r=(r=(r=(r=(r=(r=(r=(r=r.toString().toLowerCase()).replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g,"a")).replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g,"e")).replace(/ì|í|ị|ỉ|ĩ/g,"i")).replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g,"o")).replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g,"u")).replace(/ỳ|ý|ỵ|ỷ|ỹ/g,"y")).replace(/đ/g,"d")).replace(/!|@|%|\^|\*|\(|\)|\+|\=|\<|\>|\?|\/|,|\.|\:|\;|\'|\"|\&|\#|\[|\]|~|\$|_|`|-|{|}|\||\\/g," ")).replace(/ + /g," ")).trim()},String.aliasIncludes=function(e,t){return String.changeAliasLowerCase(e).includes(String.changeAliasLowerCase(t))},String.format=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];for(var n=0;n<t.length;n++){var o=new RegExp("\\{"+n+"\\}","gi");e=e.replace(o,t[n])}return e},String.templateToDisplay=function(e,t){var r,n;if(!e)return e;var o=e.match(/\$\{([A-Za-z._\-]*)\}/g)||[];try{for(var i=a(o),u=i.next();!u.done;u=i.next()){var s=u.value,l=s.slice(2,s.length-1);l&&(e=e.replace(s,(null==t?void 0:t[l])||""))}}catch(e){r={error:e}}finally{try{u&&!u.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return e};var f,d=new r.InjectionToken("sd.firebase.configuration"),p=new r.InjectionToken("sd.form.configuration"),h=function(e){function r(r,n,o){void 0===n&&(n=null),void 0===o&&(o=null);var i=e.call(this,r,n,o)||this;return i.sdChanges=new t.Subject,i.untouchChanges=new t.Subject,i.touchChanges=new t.Subject,i.pristineChanges=new t.Subject,i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}(r,e),r.prototype.markAsUntouched=function(t){var r=(void 0===t?{}:t).onlySelf;e.prototype.markAsUntouched.call(this,{onlySelf:r}),this.untouchChanges.next(!0),this.sdChanges.next(!0)},r.prototype.markAsTouched=function(t){var r=(void 0===t?{}:t).onlySelf;e.prototype.markAsTouched.call(this,{onlySelf:r}),this.touchChanges.next(!0),this.sdChanges.next(!0)},r.prototype.markAsPristine=function(t){e.prototype.markAsPristine.call(this,t),this.pristineChanges.next(!0),this.sdChanges.next(!0)},r}(n.FormControl),y=function(){function e(){f.set(this,(function(){var e,t=navigator.userAgent,r=t.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];if(/trident/i.test(r[1]))return{name:"IE",version:(e=/\brv[ :]+(\d+)/g.exec(t)||[])[1]||""};if("Chrome"===r[1]){if(null!=(e=t.match(/\bEdg\/(\d+)/)))return{name:"Edge(Chromium)",version:e[1]};if(null!=(e=t.match(/\bOPR\/(\d+)/)))return{name:"Opera",version:e[1]}}return r=r[2]?[r[1],r[2]]:[navigator.appName,navigator.appVersion,"-?"],null!=(e=t.match(/version\/(\d+)/i))&&r.splice(1,1,e[1]),{name:r[0],version:r[1]}}));var e=l(this,f).call(this);this.browerName=e.name,this.browserVersion=e.version}return Object.defineProperty(e.prototype,"isChrome",{get:function(){return"Chrome"===this.browerName},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isFirefox",{get:function(){return"Firefox"===this.browerName},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isSafari",{get:function(){return"Safari"===this.browerName},enumerable:!1,configurable:!0}),e}();f=new WeakMap,y.ɵprov=r.ɵɵdefineInjectable({factory:function(){return new y},token:y,providedIn:"root"}),y.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],y.ctorParameters=function(){return[]};var g,m=function(e){this.templateRef=e};m.decorators=[{type:r.Directive,args:[{selector:"[sdViewDef]"}]}],m.ctorParameters=function(){return[{type:r.TemplateRef}]};var v,D=function(){function e(e,t){var r=this;this.vcRef=e,this.templateRef=t,this.context={},g.set(this,(function(){r.vcRef.clear(),r.vcRef.createEmbeddedView(r.templateRef,r.context)}))}return Object.defineProperty(e.prototype,"sdLet",{set:function(e){this.context.$implicit=this.context.sdLet=e,l(this,g).call(this)},enumerable:!1,configurable:!0}),e}();g=new WeakMap,D.decorators=[{type:r.Directive,args:[{selector:"[sdLet]"}]}],D.ctorParameters=function(){return[{type:r.ViewContainerRef},{type:r.TemplateRef}]},D.propDecorators={sdLet:[{type:r.Input}]};var b=function(){function e(e,t,r){this.elementRef=e,this.renderer=t,this.browserService=r,v.set(this,"hidden")}return e.prototype.onMouseOver=function(){c(this,v,this.browserService.isFirefox?"auto":"overlay"),this.renderer.setStyle(this.elementRef.nativeElement,"overflow",l(this,v))},e.prototype.onMouseOut=function(){c(this,v,"hidden"),this.renderer.setStyle(this.elementRef.nativeElement,"overflow",l(this,v))},e.prototype.ngOnInit=function(){this.renderer.setStyle(this.elementRef.nativeElement,"-webkit-transform","translate3d(0, 0, 0)"),this.renderer.setStyle(this.elementRef.nativeElement,"overflow",l(this,v))},e}();v=new WeakMap,b.decorators=[{type:r.Directive,args:[{selector:"[sdScroll]"}]}],b.ctorParameters=function(){return[{type:r.ElementRef},{type:r.Renderer2},{type:y}]},b.propDecorators={onMouseOver:[{type:r.HostListener,args:["mouseover"]}],onMouseOut:[{type:r.HostListener,args:["mouseout"]}]};var S=function(e){this.templateRef=e};S.decorators=[{type:r.Directive,args:[{selector:"[sdSuffix]"}]}],S.ctorParameters=function(){return[{type:r.TemplateRef}]};var w=function(){};w.decorators=[{type:r.NgModule,args:[{imports:[o.CommonModule],declarations:[m,D,b,S],exports:[m,D,b,S],providers:[]}]}],e.FIREBASE_CONFIG=d,e.FORM_CONFIG=p,e.SdBrowserService=y,e.SdCommonModule=w,e.SdFormControl=h,e.SdLetDirective=D,e.SdScrollDirective=b,e.SdSuffixDirective=S,e.SdViewDefDirective=m,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)};Object.create;function a(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.")}function s(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a}function u(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(s(arguments[t]));return e}Object.create;function l(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 c(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}Array.prototype.search=function(e,t){var r=this;if(!(null==e?void 0:e.toString()))return r;if(Array.isArray(t)){var n=t.filter((function(e){return null!=e&&""!==e}));return n.length?r.filter((function(t){return null!=t&&n.some((function(r){return String.aliasIncludes(t[r],e)}))})):r.filter((function(t){return null!=t&&String.aliasIncludes(t,e)}))}return t?r.filter((function(r){return null!=r&&String.aliasIncludes(r[t],e)})):r.filter((function(t){return null!=t&&String.aliasIncludes(t,e)}))},Array.prototype.paging=function(e,t){void 0===t&&(t=0);return this.filter((function(r,n){return n>=t*e&&n<(t+1)*e}))},Array.prototype.toObject=function(e){return e?this.filter((function(e){return null!=e})).reduce((function(t,r){var n;return t[null===(n=r[e])||void 0===n?void 0:n.toString()]=r,t}),{}):this.filter((function(e){return null!=e})).reduce((function(e,t){return e[null==t?void 0:t.toString()]=t,e}),{})},Array.prototype.union=function(e){for(var t,r,n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];var i=this,s=function(t,r,n){return null!=t&&n.findIndex((function(r){return e?r[e]===t[e]:r===t}))===r};if(!(null==n?void 0:n.length))return i.filter(s);try{for(var l=a(n),c=l.next();!c.done;c=l.next()){var f=c.value;Array.isArray(f)&&(i=u(i,f).filter(s))}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}return i},Array.prototype.asObservable=function(){return t.of(this)},Array.search=function(e,t,r){return Array.isArray(e)?e.search(t,r):[]},Array.union=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return[].union.apply([],u([e],t))},Array.toObject=function(e,t){return Array.isArray(e)?e.toObject(t):{}},Date.equal=function(e,t){return!Date.isDate(e)&&!Date.isDate(t)||!(!Date.isDate(e)||!Date.isDate(t))&&new Date(e).getTime()===new Date(t).getTime()},Date.parseFrom=function(e,t){if(!e)return null;if(!t)return null;e=e.toString();var r=t.indexOf("dd")>-1&&t.indexOf("MM")>-1&&t.indexOf("yyyy")>-1,n=t.indexOf("HH")>-1||t.indexOf("mm")>-1||t.indexOf("ss")>-1,o="";if(r){var i=e.substr(t.indexOf("dd"),"dd".length),a=e.substr(t.indexOf("MM"),"MM".length);if(!(+(u=e.substr(t.indexOf("yyyy"),"yyyy".length))>0&&+a>0&&+i>0))return null;o+=a+"/"+i+"/"+u}else{var s=new Date,u=s.getFullYear().toString();o+=(a=(s.getMonth()+1).toString().padStart(2,"0"))+"/"+(i=s.getDate().toString().padStart(2,"0"))+"/"+u}n&&(o+=" "+((t.indexOf("HH")>-1?e.substr(t.indexOf("HH"),"HH".length):"00")||"00")+":"+((t.indexOf("mm")>-1?e.substr(t.indexOf("mm"),"mm".length):"00")||"00")+":"+((t.indexOf("ss")>-1?e.substr(t.indexOf("ss"),"ss".length):"00")||"00"));return Date.isDate(o)?new Date(o):null},Date.isDate=function(e){if(!e)return!1;var t=new Date(e);return!isNaN(t.getTime())},Date.toFormat=function(e,t){return Date.isDate(e)?new Date(e).toFormat(t):""},Date.addMiliseconds=function(e,t){return Date.isDate(e)?new Date(e).addMiliseconds(t):null},Date.addHours=function(e,t){return Date.isDate(e)?new Date(e).addHours(t):null},Date.addDays=function(e,t){return Date.isDate(e)?new Date(e).addDays(t):null},Date.addMonths=function(e,t){return Date.isDate(e)?new Date(e).addMonths(t):null},Date.begin=function(e){return Date.isDate(e)?new Date(Date.toFormat(e,"MM/dd/yyyy")):null},Date.end=function(e){return Date.isDate(e)?new Date(e).addDays(1).begin().addMiliseconds(-1):null},Date.prototype.begin=function(){return new Date(this.toFormat("MM/dd/yyyy"))},Date.prototype.end=function(){return this.addDays(1).begin().addMiliseconds(-1)},Date.prototype.addMiliseconds=function(e){var t=this;return t.setMilliseconds(t.getMilliseconds()+e),t},Date.prototype.addHours=function(e){var t=this;return t.setHours(t.getHours()+e),t},Date.prototype.addDays=function(e){var t=this;return t.setDate(t.getDate()+e),t},Date.prototype.addMonths=function(e){var t=this;return t.setMonth(t.getMonth()+e),t},Date.prototype.toFormat=function(e){var t=this,r=e;return r=(r=(r=(r=(r=(r=r.replace("yyyy",t.getFullYear().toString())).replace("MM",(t.getMonth()+1).toString().padStart(2,"0"))).replace("dd",t.getDate().toString().padStart(2,"0"))).replace("HH",t.getHours().toString().padStart(2,"0"))).replace("mm",t.getMinutes().toString().padStart(2,"0"))).replace("ss",t.getSeconds().toString().padStart(2,"0"))},Number.toVNCurrency=function(e){if(!(e=(null!=e?e:"").toString().replace(/,/g,"")))return null;var t=+e;return Number.isNaN(t)?null:t.toLocaleString("vi-VN")},Number.isPositiveInteger=function(e){if(!e)return!1;return/^([0-9]*)$/.test(e)&&+e>0},Number.isPositiveNumber=function(e){if(!e)return!1;return/^([0-9]*)(\.[0-9]+$){0,1}$/.test(e)&&+e>0},Number.isNumber=function(e){return null!=e&&""!==e&&!Number.isNaN(+e)},String.isValidEmail=function(e){if(!e)return!1;return/^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i.test(e)},String.isValidPhone=function(e){if(!e)return!1;return/^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\s\./0-9]*$/.test(e)},String.isValidCode=function(e){if(!e)return!1;return/^[a-zA-Z0-9\@\_\-]{2,20}$/.test(e)},String.changeAliasLowerCase=function(e){var t,r=null!==(t=null==e?void 0:e.toString())&&void 0!==t?t:"";return r=(r=(r=(r=(r=(r=(r=(r=(r=(r=(r=r.toString().toLowerCase()).replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g,"a")).replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g,"e")).replace(/ì|í|ị|ỉ|ĩ/g,"i")).replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g,"o")).replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g,"u")).replace(/ỳ|ý|ỵ|ỷ|ỹ/g,"y")).replace(/đ/g,"d")).replace(/!|@|%|\^|\*|\(|\)|\+|\=|\<|\>|\?|\/|,|\.|\:|\;|\'|\"|\&|\#|\[|\]|~|\$|_|`|-|{|}|\||\\/g," ")).replace(/ + /g," ")).trim()},String.aliasIncludes=function(e,t){return String.changeAliasLowerCase(e).includes(String.changeAliasLowerCase(t))},String.format=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];for(var n=0;n<t.length;n++){var o=new RegExp("\\{"+n+"\\}","gi");e=e.replace(o,t[n])}return e},String.templateToDisplay=function(e,t){var r,n;if(!e)return e;var o=e.match(/\$\{([A-Za-z._\-]*)\}/g)||[];try{for(var i=a(o),s=i.next();!s.done;s=i.next()){var u=s.value,l=u.slice(2,u.length-1);l&&(e=e.replace(u,(null==t?void 0:t[l])||""))}}catch(e){r={error:e}}finally{try{s&&!s.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return e};var f="cb9f4b2a-d26c-4787-a66e-e7130ee00f95";String.encrypt=function(e){for(var t=0,r=(e=JSON.stringify(e).split("")).length;t<r;t++)"{"==e[t]?e[t]="}":"}"==e[t]&&(e[t]="{");return encodeURI(f+e.join(""))},String.decrypt=function(e){if(0!=(e=decodeURI(e)).indexOf(f))throw new Error("object cannot be decrypted");for(var t=e.substring(f.length).split(""),r=0,n=t.length;r<n;r++)"{"==t[r]?t[r]="}":"}"==e[r]&&(t[r]="{");return JSON.parse(t.join(""))};var d,p=new r.InjectionToken("sd.firebase.configuration"),h=new r.InjectionToken("sd.form.configuration"),y=function(e){function r(r,n,o){void 0===n&&(n=null),void 0===o&&(o=null);var i=e.call(this,r,n,o)||this;return i.sdChanges=new t.Subject,i.untouchChanges=new t.Subject,i.touchChanges=new t.Subject,i.pristineChanges=new t.Subject,i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}(r,e),r.prototype.markAsUntouched=function(t){var r=(void 0===t?{}:t).onlySelf;e.prototype.markAsUntouched.call(this,{onlySelf:r}),this.untouchChanges.next(!0),this.sdChanges.next(!0)},r.prototype.markAsTouched=function(t){var r=(void 0===t?{}:t).onlySelf;e.prototype.markAsTouched.call(this,{onlySelf:r}),this.touchChanges.next(!0),this.sdChanges.next(!0)},r.prototype.markAsPristine=function(t){e.prototype.markAsPristine.call(this,t),this.pristineChanges.next(!0),this.sdChanges.next(!0)},r}(n.FormControl),g=function(){function e(){d.set(this,(function(){var e,t=navigator.userAgent,r=t.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];if(/trident/i.test(r[1]))return{name:"IE",version:(e=/\brv[ :]+(\d+)/g.exec(t)||[])[1]||""};if("Chrome"===r[1]){if(null!=(e=t.match(/\bEdg\/(\d+)/)))return{name:"Edge(Chromium)",version:e[1]};if(null!=(e=t.match(/\bOPR\/(\d+)/)))return{name:"Opera",version:e[1]}}return r=r[2]?[r[1],r[2]]:[navigator.appName,navigator.appVersion,"-?"],null!=(e=t.match(/version\/(\d+)/i))&&r.splice(1,1,e[1]),{name:r[0],version:r[1]}}));var e=l(this,d).call(this);this.browerName=e.name,this.browserVersion=e.version}return Object.defineProperty(e.prototype,"isChrome",{get:function(){return"Chrome"===this.browerName},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isFirefox",{get:function(){return"Firefox"===this.browerName},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isSafari",{get:function(){return"Safari"===this.browerName},enumerable:!1,configurable:!0}),e}();d=new WeakMap,g.ɵprov=r.ɵɵdefineInjectable({factory:function(){return new g},token:g,providedIn:"root"}),g.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],g.ctorParameters=function(){return[]};var m,v=function(e){this.templateRef=e};v.decorators=[{type:r.Directive,args:[{selector:"[sdViewDef]"}]}],v.ctorParameters=function(){return[{type:r.TemplateRef}]};var b,D=function(){function e(e,t){var r=this;this.vcRef=e,this.templateRef=t,this.context={},m.set(this,(function(){r.vcRef.clear(),r.vcRef.createEmbeddedView(r.templateRef,r.context)}))}return Object.defineProperty(e.prototype,"sdLet",{set:function(e){this.context.$implicit=this.context.sdLet=e,l(this,m).call(this)},enumerable:!1,configurable:!0}),e}();m=new WeakMap,D.decorators=[{type:r.Directive,args:[{selector:"[sdLet]"}]}],D.ctorParameters=function(){return[{type:r.ViewContainerRef},{type:r.TemplateRef}]},D.propDecorators={sdLet:[{type:r.Input}]};var S=function(){function e(e,t,r){this.elementRef=e,this.renderer=t,this.browserService=r,b.set(this,"hidden")}return e.prototype.onMouseOver=function(){c(this,b,this.browserService.isFirefox?"auto":"overlay"),this.renderer.setStyle(this.elementRef.nativeElement,"overflow",l(this,b))},e.prototype.onMouseOut=function(){c(this,b,"hidden"),this.renderer.setStyle(this.elementRef.nativeElement,"overflow",l(this,b))},e.prototype.ngOnInit=function(){this.renderer.setStyle(this.elementRef.nativeElement,"-webkit-transform","translate3d(0, 0, 0)"),this.renderer.setStyle(this.elementRef.nativeElement,"overflow",l(this,b))},e}();b=new WeakMap,S.decorators=[{type:r.Directive,args:[{selector:"[sdScroll]"}]}],S.ctorParameters=function(){return[{type:r.ElementRef},{type:r.Renderer2},{type:g}]},S.propDecorators={onMouseOver:[{type:r.HostListener,args:["mouseover"]}],onMouseOut:[{type:r.HostListener,args:["mouseout"]}]};var w=function(e){this.templateRef=e};w.decorators=[{type:r.Directive,args:[{selector:"[sdSuffix]"}]}],w.ctorParameters=function(){return[{type:r.TemplateRef}]};var x=function(){};x.decorators=[{type:r.NgModule,args:[{imports:[o.CommonModule],declarations:[v,D,S,w],exports:[v,D,S,w],providers:[]}]}],e.FIREBASE_CONFIG=p,e.FORM_CONFIG=h,e.SdBrowserService=g,e.SdCommonModule=x,e.SdFormControl=y,e.SdLetDirective=D,e.SdScrollDirective=S,e.SdSuffixDirective=w,e.SdViewDefDirective=v,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=sd-angular-core-common.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","create","__values","o","s","Symbol","iterator","m","i","length","next","value","done","TypeError","__read","n","r","e","ar","push","error","__spread","arguments","concat","__classPrivateFieldGet","receiver","state","kind","f","has","get","__classPrivateFieldSet","set","search","searchText","fields","items","this","toString","isArray","fs_1","filter","item","some","field","String","aliasIncludes","paging","pageSize","page","index","toObject","key","reduce","obj","_a","union","args","_i","results","filterUnion","val","self","findIndex","args_1","args_1_1","arg","asObservable","of","apply","Date","equal","date1","date2","isDate","getTime","parseFrom","format","dmy","indexOf","hms","strDate","dd","substr","MM","yyyy","today","getFullYear","getMonth","padStart","getDate","date","isNaN","toFormat","addMiliseconds","miliseconds","addHours","hours","addDays","days","addMonths","months","begin","end","setMilliseconds","getMilliseconds","setHours","getHours","setDate","setMonth","result","replace","getMinutes","getSeconds","Number","toVNCurrency","toLocaleString","isPositiveInteger","test","isPositiveNumber","isNumber","isValidEmail","isValidPhone","isValidCode","changeAliasLowerCase","alias","str","toLowerCase","trim","includes","template","arr","regexp","RegExp","templateToDisplay","entity","matches","match","matches_1","matches_1_1","slice","FIREBASE_CONFIG","InjectionToken","FORM_CONFIG","SdFormControl","formState","validator","asyncValidator","_this","_super","sdChanges","Subject","untouchChanges","touchChanges","pristineChanges","__","constructor","__extends","markAsUntouched","onlySelf","markAsTouched","markAsPristine","opts","FormControl","SdBrowserService","_getBrowserNameAndVersion","tem","ua","navigator","userAgent","M","name","version","exec","appName","appVersion","splice","browserNameAndVersion","browerName","browserVersion","defineProperty","Injectable","providedIn","templateRef","Directive","selector","TemplateRef","SdLetDirective","vcRef","context","_updateView","clear","createEmbeddedView","$implicit","sdLet","ViewContainerRef","Input","SdScrollDirective","elementRef","renderer","browserService","_overflow","onMouseOver","isFirefox","setStyle","nativeElement","onMouseOut","ngOnInit","ElementRef","Renderer2","HostListener","NgModule","imports","CommonModule","declarations","SdViewDefDirective","SdSuffixDirective","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 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 { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n return val.toLocaleString('vi-VN');\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if(!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n"]}
1
+ {"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","create","__values","o","s","Symbol","iterator","m","i","length","next","value","done","TypeError","__read","n","r","e","ar","push","error","__spread","arguments","concat","__classPrivateFieldGet","receiver","state","kind","f","has","get","__classPrivateFieldSet","set","search","searchText","fields","items","this","toString","isArray","fs_1","filter","item","some","field","String","aliasIncludes","paging","pageSize","page","index","toObject","key","reduce","obj","_a","union","args","_i","results","filterUnion","val","self","findIndex","args_1","args_1_1","arg","asObservable","of","apply","Date","equal","date1","date2","isDate","getTime","parseFrom","format","dmy","indexOf","hms","strDate","dd","substr","MM","yyyy","today","getFullYear","getMonth","padStart","getDate","date","isNaN","toFormat","addMiliseconds","miliseconds","addHours","hours","addDays","days","addMonths","months","begin","end","setMilliseconds","getMilliseconds","setHours","getHours","setDate","setMonth","result","replace","getMinutes","getSeconds","Number","toVNCurrency","toLocaleString","isPositiveInteger","test","isPositiveNumber","isNumber","isValidEmail","isValidPhone","isValidCode","changeAliasLowerCase","alias","str","toLowerCase","trim","includes","template","arr","regexp","RegExp","templateToDisplay","entity","matches","match","matches_1","matches_1_1","slice","SALT","encrypt","l","JSON","stringify","split","encodeURI","join","decrypt","encripted","decodeURI","Error","strs","substring","parse","FIREBASE_CONFIG","InjectionToken","FORM_CONFIG","SdFormControl","formState","validator","asyncValidator","_this","_super","sdChanges","Subject","untouchChanges","touchChanges","pristineChanges","__","constructor","__extends","markAsUntouched","onlySelf","markAsTouched","markAsPristine","opts","FormControl","SdBrowserService","_getBrowserNameAndVersion","tem","ua","navigator","userAgent","M","name","version","exec","appName","appVersion","splice","browserNameAndVersion","browerName","browserVersion","defineProperty","Injectable","providedIn","templateRef","Directive","selector","TemplateRef","SdLetDirective","vcRef","context","_updateView","clear","createEmbeddedView","$implicit","sdLet","ViewContainerRef","Input","SdScrollDirective","elementRef","renderer","browserService","_overflow","onMouseOver","isFirefox","setStyle","nativeElement","onMouseOut","ngOnInit","ElementRef","Renderer2","HostListener","NgModule","imports","CommonModule","declarations","SdViewDefDirective","SdSuffixDirective","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 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 { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n return val.toLocaleString('vi-VN');\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n encrypt(obj: any): string;\r\n decrypt(encripted: string): any;\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if (!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}\r\n\r\nconst SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';\r\n\r\nString.encrypt = (obj: any) => {\r\n obj = JSON.stringify(obj).split('');\r\n for (var i = 0, l = obj.length; i < l; i++)\r\n if (obj[i] == '{')\r\n obj[i] = '}';\r\n else if (obj[i] == '}')\r\n obj[i] = '{';\r\n return encodeURI(SALT + obj.join(''));\r\n}\r\n\r\nString.decrypt = (encripted: string) => {\r\n encripted = decodeURI(encripted);\r\n if (SALT && encripted.indexOf(SALT) != 0)\r\n throw new Error('object cannot be decrypted');\r\n const strs = encripted.substring(SALT.length).split('');\r\n for (let i = 0, l = strs.length; i < l; i++)\r\n if (strs[i] == '{')\r\n strs[i] = '}';\r\n else if (encripted[i] == '}')\r\n strs[i] = '{';\r\n return JSON.parse(strs.join(''));\r\n}\r\n","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n"]}
@@ -8,5 +8,7 @@ declare global {
8
8
  aliasIncludes(alias: any, searchText: any): boolean;
9
9
  format(template: string, ...arr: any[]): string;
10
10
  templateToDisplay(template: string, entity: any): string;
11
+ encrypt(obj: any): string;
12
+ decrypt(encripted: string): any;
11
13
  }
12
14
  }
@@ -59,5 +59,27 @@ String.templateToDisplay = (template, entity) => {
59
59
  }
60
60
  return template;
61
61
  };
62
+ const SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';
63
+ String.encrypt = (obj) => {
64
+ obj = JSON.stringify(obj).split('');
65
+ for (var i = 0, l = obj.length; i < l; i++)
66
+ if (obj[i] == '{')
67
+ obj[i] = '}';
68
+ else if (obj[i] == '}')
69
+ obj[i] = '{';
70
+ return encodeURI(SALT + obj.join(''));
71
+ };
72
+ String.decrypt = (encripted) => {
73
+ encripted = decodeURI(encripted);
74
+ if (SALT && encripted.indexOf(SALT) != 0)
75
+ throw new Error('object cannot be decrypted');
76
+ const strs = encripted.substring(SALT.length).split('');
77
+ for (let i = 0, l = strs.length; i < l; i++)
78
+ if (strs[i] == '{')
79
+ strs[i] = '}';
80
+ else if (encripted[i] == '}')
81
+ strs[i] = '{';
82
+ return JSON.parse(strs.join(''));
83
+ };
62
84
  export {};
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvY29tbW9uLyIsInNvdXJjZXMiOlsic3JjL2xpYi90eXBpbmdzL3N0cmluZy5leHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBY0EsTUFBTSxDQUFDLFlBQVksR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ25DLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsTUFBTSxFQUFFLEdBQUcsd0hBQXdILENBQUM7SUFDcEksT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtJQUNuQyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE1BQU0sRUFBRSxHQUFHLDhDQUE4QyxDQUFDO0lBQzFELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsV0FBVyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7SUFDbEMsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxNQUFNLEVBQUUsR0FBRywyQkFBMkIsQ0FBQztJQUN2QyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLG9CQUFvQixHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7O0lBQzNDLElBQUksR0FBRyxTQUFXLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxRQUFRLHFDQUFNLEVBQUUsQ0FBQztJQUMxQyxHQUFHLEdBQUcsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzdELEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLHdCQUF3QixFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pELEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNyQyxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM3RCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqRCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDckMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLHdGQUF3RixFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pILEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUMvQixHQUFHLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pCLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLGFBQWEsR0FBRyxDQUFDLEtBQVUsRUFBRSxVQUFlLEVBQUUsRUFBRTtJQUNyRCxPQUFPLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7QUFDOUYsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLFFBQWdCLEVBQUUsR0FBRyxHQUFVLEVBQUUsRUFBRTtJQUNsRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNuQyxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzlDLFFBQVEsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUM3QztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLFFBQWdCLEVBQUUsTUFBVyxFQUFFLEVBQUU7SUFDM0QsSUFBRyxDQUFDLFFBQVEsRUFBRTtRQUNaLE9BQU8sUUFBUSxDQUFDO0tBQ2pCO0lBQ0QsTUFBTSxLQUFLLEdBQUcsd0JBQXdCLENBQUM7SUFDdkMsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUMsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUU7UUFDM0IsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM3QyxJQUFJLEdBQUcsRUFBRTtZQUNQLFFBQVEsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRyxHQUFHLE1BQUssRUFBRSxDQUFDLENBQUM7U0FDekQ7S0FDRjtJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IH07XHJcblxyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgaW50ZXJmYWNlIFN0cmluZ0NvbnN0cnVjdG9yIHtcclxuICAgIGlzVmFsaWRFbWFpbCh2YWx1ZTogYW55KTogYm9vbGVhbjtcclxuICAgIGlzVmFsaWRQaG9uZSh2YWx1ZTogYW55KTogYm9vbGVhbjtcclxuICAgIGlzVmFsaWRDb2RlKHZhbHVlOiBhbnkpOiBib29sZWFuO1xyXG4gICAgY2hhbmdlQWxpYXNMb3dlckNhc2UoYWxpYXM6IGFueSk6IHN0cmluZztcclxuICAgIGFsaWFzSW5jbHVkZXMoYWxpYXM6IGFueSwgc2VhcmNoVGV4dDogYW55KTogYm9vbGVhbjtcclxuICAgIGZvcm1hdCh0ZW1wbGF0ZTogc3RyaW5nLCAuLi5hcnI6IGFueVtdKTogc3RyaW5nO1xyXG4gICAgdGVtcGxhdGVUb0Rpc3BsYXkodGVtcGxhdGU6IHN0cmluZywgZW50aXR5OiBhbnkpOiBzdHJpbmc7IC8vIENvbnZlcnQgdGhlbyBmb3JtYXQgJHtrZXl9XHJcbiAgfVxyXG59XHJcblxyXG5TdHJpbmcuaXNWYWxpZEVtYWlsID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICBpZiAoIXZhbHVlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0IHJlID0gL14oKFtePD4oKVxcW1xcXVxcLiw7Olxcc0BcXFwiXSsoXFwuW148PigpXFxbXFxdXFwuLDs6XFxzQFxcXCJdKykqKXwoXFxcIi4rXFxcIikpQCgoW148PigpW1xcXVxcLiw7Olxcc0BcXFwiXStcXC4pK1tePD4oKVtcXF1cXC4sOzpcXHNAXFxcIl17Mix9KSQvaTtcclxuICByZXR1cm4gcmUudGVzdCh2YWx1ZSk7XHJcbn07XHJcblxyXG5TdHJpbmcuaXNWYWxpZFBob25lID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICBpZiAoIXZhbHVlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0IHJlID0gL15bK10qWyhdezAsMX1bMC05XXsxLDR9WyldezAsMX1bLVxcc1xcLi8wLTldKiQvO1xyXG4gIHJldHVybiByZS50ZXN0KHZhbHVlKTtcclxufTtcclxuXHJcblN0cmluZy5pc1ZhbGlkQ29kZSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgaWYgKCF2YWx1ZSkge1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBjb25zdCByZSA9IC9eW2EtekEtWjAtOVxcQFxcX1xcLV17MiwyMH0kLztcclxuICByZXR1cm4gcmUudGVzdCh2YWx1ZSk7XHJcbn07XHJcblxyXG5TdHJpbmcuY2hhbmdlQWxpYXNMb3dlckNhc2UgPSAoYWxpYXM6IGFueSkgPT4ge1xyXG4gIGxldCBzdHI6IHN0cmluZyA9IGFsaWFzPy50b1N0cmluZygpID8/ICcnO1xyXG4gIHN0ciA9IHN0ci50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8OgfMOhfOG6oXzhuqN8w6N8w6J84bqnfOG6pXzhuq184bqpfOG6q3zEg3zhurF84bqvfOG6t3zhurN84bq1L2csICdhJyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8OofMOpfOG6uXzhurt84bq9fMOqfOG7gXzhur984buHfOG7g3zhu4UvZywgJ2UnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvw6x8w6184buLfOG7iXzEqS9nLCAnaScpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC/DsnzDs3zhu4184buPfMO1fMO0fOG7k3zhu5F84buZfOG7lXzhu5d8xqF84budfOG7m3zhu6N84buffOG7oS9nLCAnbycpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC/DuXzDunzhu6V84bunfMWpfMawfOG7q3zhu6l84buxfOG7rXzhu68vZywgJ3UnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgv4buzfMO9fOG7tXzhu7d84bu5L2csICd5Jyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8SRL2csICdkJyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoLyF8QHwlfFxcXnxcXCp8XFwofFxcKXxcXCt8XFw9fFxcPHxcXD58XFw/fFxcL3wsfFxcLnxcXDp8XFw7fFxcJ3xcXFwifFxcJnxcXCN8XFxbfFxcXXx+fFxcJHxffGB8LXx7fH18XFx8fFxcXFwvZywgJyAnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvICsgL2csICcgJyk7XHJcbiAgc3RyID0gc3RyLnRyaW0oKTtcclxuICByZXR1cm4gc3RyO1xyXG59XHJcblxyXG5TdHJpbmcuYWxpYXNJbmNsdWRlcyA9IChhbGlhczogYW55LCBzZWFyY2hUZXh0OiBhbnkpID0+IHtcclxuICByZXR1cm4gU3RyaW5nLmNoYW5nZUFsaWFzTG93ZXJDYXNlKGFsaWFzKS5pbmNsdWRlcyhTdHJpbmcuY2hhbmdlQWxpYXNMb3dlckNhc2Uoc2VhcmNoVGV4dCkpO1xyXG59XHJcblxyXG5TdHJpbmcuZm9ybWF0ID0gKHRlbXBsYXRlOiBzdHJpbmcsIC4uLmFycjogYW55W10pID0+IHtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xyXG4gICAgY29uc3QgcmVnZXhwID0gbmV3IFJlZ0V4cChgXFxcXHske2l9XFxcXH1gLCAnZ2knKTtcclxuICAgIHRlbXBsYXRlID0gdGVtcGxhdGUucmVwbGFjZShyZWdleHAsIGFycltpXSk7XHJcbiAgfVxyXG4gIHJldHVybiB0ZW1wbGF0ZTtcclxufVxyXG5cclxuU3RyaW5nLnRlbXBsYXRlVG9EaXNwbGF5ID0gKHRlbXBsYXRlOiBzdHJpbmcsIGVudGl0eTogYW55KSA9PiB7XHJcbiAgaWYoIXRlbXBsYXRlKSB7XHJcbiAgICByZXR1cm4gdGVtcGxhdGU7XHJcbiAgfVxyXG4gIGNvbnN0IHJlZ2V4ID0gL1xcJFxceyhbQS1aYS16Ll9cXC1dKilcXH0vZztcclxuICBjb25zdCBtYXRjaGVzID0gdGVtcGxhdGUubWF0Y2gocmVnZXgpIHx8IFtdO1xyXG4gIGZvciAoY29uc3QgbWF0Y2ggb2YgbWF0Y2hlcykge1xyXG4gICAgY29uc3Qga2V5ID0gbWF0Y2guc2xpY2UoMiwgbWF0Y2gubGVuZ3RoIC0gMSk7XHJcbiAgICBpZiAoa2V5KSB7XHJcbiAgICAgIHRlbXBsYXRlID0gdGVtcGxhdGUucmVwbGFjZShtYXRjaCwgZW50aXR5Py5ba2V5XSB8fCAnJyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiB0ZW1wbGF0ZTtcclxufSJdfQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvY29tbW9uLyIsInNvdXJjZXMiOlsic3JjL2xpYi90eXBpbmdzL3N0cmluZy5leHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0JBLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtJQUNuQyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE1BQU0sRUFBRSxHQUFHLHdIQUF3SCxDQUFDO0lBQ3BJLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsWUFBWSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7SUFDbkMsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxNQUFNLEVBQUUsR0FBRyw4Q0FBOEMsQ0FBQztJQUMxRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLFdBQVcsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ2xDLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsTUFBTSxFQUFFLEdBQUcsMkJBQTJCLENBQUM7SUFDdkMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFOztJQUMzQyxJQUFJLEdBQUcsU0FBVyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsUUFBUSxxQ0FBTSxFQUFFLENBQUM7SUFD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SUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNsQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ25DLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IH07XHJcblxyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgaW50ZXJmYWNlIFN0cmluZ0NvbnN0cnVjdG9yIHtcclxuICAgIGlzVmFsaWRFbWFpbCh2YWx1ZTogYW55KTogYm9vbGVhbjtcclxuICAgIGlzVmFsaWRQaG9uZSh2YWx1ZTogYW55KTogYm9vbGVhbjtcclxuICAgIGlzVmFsaWRDb2RlKHZhbHVlOiBhbnkpOiBib29sZWFuO1xyXG4gICAgY2hhbmdlQWxpYXNMb3dlckNhc2UoYWxpYXM6IGFueSk6IHN0cmluZztcclxuICAgIGFsaWFzSW5jbHVkZXMoYWxpYXM6IGFueSwgc2VhcmNoVGV4dDogYW55KTogYm9vbGVhbjtcclxuICAgIGZvcm1hdCh0ZW1wbGF0ZTogc3RyaW5nLCAuLi5hcnI6IGFueVtdKTogc3RyaW5nO1xyXG4gICAgdGVtcGxhdGVUb0Rpc3BsYXkodGVtcGxhdGU6IHN0cmluZywgZW50aXR5OiBhbnkpOiBzdHJpbmc7IC8vIENvbnZlcnQgdGhlbyBmb3JtYXQgJHtrZXl9XHJcbiAgICBlbmNyeXB0KG9iajogYW55KTogc3RyaW5nO1xyXG4gICAgZGVjcnlwdChlbmNyaXB0ZWQ6IHN0cmluZyk6IGFueTtcclxuICB9XHJcbn1cclxuXHJcblN0cmluZy5pc1ZhbGlkRW1haWwgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIGlmICghdmFsdWUpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3QgcmUgPSAvXigoW148PigpXFxbXFxdXFwuLDs6XFxzQFxcXCJdKyhcXC5bXjw+KClcXFtcXF1cXC4sOzpcXHNAXFxcIl0rKSopfChcXFwiLitcXFwiKSlAKChbXjw+KClbXFxdXFwuLDs6XFxzQFxcXCJdK1xcLikrW148PigpW1xcXVxcLiw7Olxcc0BcXFwiXXsyLH0pJC9pO1xyXG4gIHJldHVybiByZS50ZXN0KHZhbHVlKTtcclxufTtcclxuXHJcblN0cmluZy5pc1ZhbGlkUGhvbmUgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIGlmICghdmFsdWUpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3QgcmUgPSAvXlsrXSpbKF17MCwxfVswLTldezEsNH1bKV17MCwxfVstXFxzXFwuLzAtOV0qJC87XHJcbiAgcmV0dXJuIHJlLnRlc3QodmFsdWUpO1xyXG59O1xyXG5cclxuU3RyaW5nLmlzVmFsaWRDb2RlID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICBpZiAoIXZhbHVlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0IHJlID0gL15bYS16QS1aMC05XFxAXFxfXFwtXXsyLDIwfSQvO1xyXG4gIHJldHVybiByZS50ZXN0KHZhbHVlKTtcclxufTtcclxuXHJcblN0cmluZy5jaGFuZ2VBbGlhc0xvd2VyQ2FzZSA9IChhbGlhczogYW55KSA9PiB7XHJcbiAgbGV0IHN0cjogc3RyaW5nID0gYWxpYXM/LnRvU3RyaW5nKCkgPz8gJyc7XHJcbiAgc3RyID0gc3RyLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvw6B8w6F84bqhfOG6o3zDo3zDonzhuqd84bqlfOG6rXzhuql84bqrfMSDfOG6sXzhuq984bq3fOG6s3zhurUvZywgJ2EnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvw6h8w6l84bq5fOG6u3zhur18w6p84buBfOG6v3zhu4d84buDfOG7hS9nLCAnZScpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC/DrHzDrXzhu4t84buJfMSpL2csICdpJyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8OyfMOzfOG7jXzhu498w7V8w7R84buTfOG7kXzhu5l84buVfOG7l3zGoXzhu5184bubfOG7o3zhu5984buhL2csICdvJyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8O5fMO6fOG7pXzhu6d8xal8xrB84burfOG7qXzhu7F84butfOG7ry9nLCAndScpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC/hu7N8w7184bu1fOG7t3zhu7kvZywgJ3knKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvxJEvZywgJ2QnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvIXxAfCV8XFxefFxcKnxcXCh8XFwpfFxcK3xcXD18XFw8fFxcPnxcXD98XFwvfCx8XFwufFxcOnxcXDt8XFwnfFxcXCJ8XFwmfFxcI3xcXFt8XFxdfH58XFwkfF98YHwtfHt8fXxcXHx8XFxcXC9nLCAnICcpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC8gKyAvZywgJyAnKTtcclxuICBzdHIgPSBzdHIudHJpbSgpO1xyXG4gIHJldHVybiBzdHI7XHJcbn1cclxuXHJcblN0cmluZy5hbGlhc0luY2x1ZGVzID0gKGFsaWFzOiBhbnksIHNlYXJjaFRleHQ6IGFueSkgPT4ge1xyXG4gIHJldHVybiBTdHJpbmcuY2hhbmdlQWxpYXNMb3dlckNhc2UoYWxpYXMpLmluY2x1ZGVzKFN0cmluZy5jaGFuZ2VBbGlhc0xvd2VyQ2FzZShzZWFyY2hUZXh0KSk7XHJcbn1cclxuXHJcblN0cmluZy5mb3JtYXQgPSAodGVtcGxhdGU6IHN0cmluZywgLi4uYXJyOiBhbnlbXSkgPT4ge1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKGBcXFxceyR7aX1cXFxcfWAsICdnaScpO1xyXG4gICAgdGVtcGxhdGUgPSB0ZW1wbGF0ZS5yZXBsYWNlKHJlZ2V4cCwgYXJyW2ldKTtcclxuICB9XHJcbiAgcmV0dXJuIHRlbXBsYXRlO1xyXG59XHJcblxyXG5TdHJpbmcudGVtcGxhdGVUb0Rpc3BsYXkgPSAodGVtcGxhdGU6IHN0cmluZywgZW50aXR5OiBhbnkpID0+IHtcclxuICBpZiAoIXRlbXBsYXRlKSB7XHJcbiAgICByZXR1cm4gdGVtcGxhdGU7XHJcbiAgfVxyXG4gIGNvbnN0IHJlZ2V4ID0gL1xcJFxceyhbQS1aYS16Ll9cXC1dKilcXH0vZztcclxuICBjb25zdCBtYXRjaGVzID0gdGVtcGxhdGUubWF0Y2gocmVnZXgpIHx8IFtdO1xyXG4gIGZvciAoY29uc3QgbWF0Y2ggb2YgbWF0Y2hlcykge1xyXG4gICAgY29uc3Qga2V5ID0gbWF0Y2guc2xpY2UoMiwgbWF0Y2gubGVuZ3RoIC0gMSk7XHJcbiAgICBpZiAoa2V5KSB7XHJcbiAgICAgIHRlbXBsYXRlID0gdGVtcGxhdGUucmVwbGFjZShtYXRjaCwgZW50aXR5Py5ba2V5XSB8fCAnJyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiB0ZW1wbGF0ZTtcclxufVxyXG5cclxuY29uc3QgU0FMVCA9ICdjYjlmNGIyYS1kMjZjLTQ3ODctYTY2ZS1lNzEzMGVlMDBmOTUnO1xyXG5cclxuU3RyaW5nLmVuY3J5cHQgPSAob2JqOiBhbnkpID0+IHtcclxuICBvYmogPSBKU09OLnN0cmluZ2lmeShvYmopLnNwbGl0KCcnKTtcclxuICBmb3IgKHZhciBpID0gMCwgbCA9IG9iai5sZW5ndGg7IGkgPCBsOyBpKyspXHJcbiAgICBpZiAob2JqW2ldID09ICd7JylcclxuICAgICAgb2JqW2ldID0gJ30nO1xyXG4gICAgZWxzZSBpZiAob2JqW2ldID09ICd9JylcclxuICAgICAgb2JqW2ldID0gJ3snO1xyXG4gIHJldHVybiBlbmNvZGVVUkkoU0FMVCArIG9iai5qb2luKCcnKSk7XHJcbn1cclxuXHJcblN0cmluZy5kZWNyeXB0ID0gKGVuY3JpcHRlZDogc3RyaW5nKSA9PiB7XHJcbiAgZW5jcmlwdGVkID0gZGVjb2RlVVJJKGVuY3JpcHRlZCk7XHJcbiAgaWYgKFNBTFQgJiYgZW5jcmlwdGVkLmluZGV4T2YoU0FMVCkgIT0gMClcclxuICAgIHRocm93IG5ldyBFcnJvcignb2JqZWN0IGNhbm5vdCBiZSBkZWNyeXB0ZWQnKTtcclxuICBjb25zdCBzdHJzID0gZW5jcmlwdGVkLnN1YnN0cmluZyhTQUxULmxlbmd0aCkuc3BsaXQoJycpO1xyXG4gIGZvciAobGV0IGkgPSAwLCBsID0gc3Rycy5sZW5ndGg7IGkgPCBsOyBpKyspXHJcbiAgICBpZiAoc3Ryc1tpXSA9PSAneycpXHJcbiAgICAgIHN0cnNbaV0gPSAnfSc7XHJcbiAgICBlbHNlIGlmIChlbmNyaXB0ZWRbaV0gPT0gJ30nKVxyXG4gICAgICBzdHJzW2ldID0gJ3snO1xyXG4gIHJldHVybiBKU09OLnBhcnNlKHN0cnMuam9pbignJykpO1xyXG59XHJcbiJdfQ==
@@ -302,6 +302,28 @@ String.templateToDisplay = (template, entity) => {
302
302
  }
303
303
  }
304
304
  return template;
305
+ };
306
+ const SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';
307
+ String.encrypt = (obj) => {
308
+ obj = JSON.stringify(obj).split('');
309
+ for (var i = 0, l = obj.length; i < l; i++)
310
+ if (obj[i] == '{')
311
+ obj[i] = '}';
312
+ else if (obj[i] == '}')
313
+ obj[i] = '{';
314
+ return encodeURI(SALT + obj.join(''));
315
+ };
316
+ String.decrypt = (encripted) => {
317
+ encripted = decodeURI(encripted);
318
+ if (SALT && encripted.indexOf(SALT) != 0)
319
+ throw new Error('object cannot be decrypted');
320
+ const strs = encripted.substring(SALT.length).split('');
321
+ for (let i = 0, l = strs.length; i < l; i++)
322
+ if (strs[i] == '{')
323
+ strs[i] = '}';
324
+ else if (encripted[i] == '}')
325
+ strs[i] = '{';
326
+ return JSON.parse(strs.join(''));
305
327
  };
306
328
 
307
329
  const FIREBASE_CONFIG = new InjectionToken('sd.firebase.configuration');
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-common.js","sources":["../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts","../../../../projects/sd-core/common/sd-angular-core-common.ts"],"sourcesContent":["import { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n return val.toLocaleString('vi-VN');\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if(!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sd-angular-core-common.js","sources":["../../../../projects/sd-core/common/src/lib/typings/array.extension.ts","../../../../projects/sd-core/common/src/lib/typings/date.extension.ts","../../../../projects/sd-core/common/src/lib/typings/number.extension.ts","../../../../projects/sd-core/common/src/lib/typings/string.extension.ts","../../../../projects/sd-core/common/src/lib/configurations/firebase.configuration.ts","../../../../projects/sd-core/common/src/lib/configurations/form.configuration.ts","../../../../projects/sd-core/common/src/lib/models/sd-form-control.ts","../../../../projects/sd-core/common/src/lib/services/browser.service.ts","../../../../projects/sd-core/common/src/lib/directives/view-def.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-let.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-scroll.directive.ts","../../../../projects/sd-core/common/src/lib/directives/sd-suffix.directive.ts","../../../../projects/sd-core/common/src/lib/common.module.ts","../../../../projects/sd-core/common/sd-angular-core-common.ts"],"sourcesContent":["import { Observable, of } from 'rxjs';\r\n\r\nexport { };\r\n\r\ndeclare global {\r\n interface Array<T = any> {\r\n search(searchText: string | number, fields?: string | string[]): T[];\r\n paging(pageSize: number, page?: number): T[];\r\n toObject(key?: string): { [key: string]: T };\r\n union(key: string, ...args: T[][]): T[];\r\n asObservable(): Observable<T[]>\r\n }\r\n interface ArrayConstructor {\r\n search<T = any>(items: T[], searchText: string | number, fields?: string | string[]): T[];\r\n union<T = any>(key: string, ...args: T[][]): T[];\r\n toObject<T = any>(items: T[], key?: string): { [key: string]: T };\r\n }\r\n}\r\n\r\nArray.prototype.search = function <T = any>(searchText: any, fields?: string | string[]): T[] {\r\n const items: T[] = this;\r\n if (!searchText?.toString()) {\r\n return items;\r\n }\r\n if (Array.isArray(fields)) {\r\n const fs = fields.filter(e => e !== undefined && e !== null && e !== '');\r\n if (!fs.length) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && fs.some(field => String.aliasIncludes(item[field], searchText)));\r\n }\r\n if (!fields) {\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item, searchText));\r\n }\r\n return items.filter(item => item !== undefined && item !== null && String.aliasIncludes(item[fields], searchText));\r\n};\r\n\r\nArray.prototype.paging = function <T = any>(pageSize: number, page: number = 0): T[] {\r\n const items: T[] = this;\r\n return items.filter((item, index) => {\r\n return index >= page * pageSize\r\n && index < (page + 1) * pageSize;\r\n });\r\n};\r\n\r\nArray.prototype.toObject = function <T = any>(key: string): { [key: string]: T } {\r\n const items: T[] = this;\r\n if (!key) {\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item?.toString()] = item; return obj; }, {});\r\n }\r\n return items.filter(item => item !== undefined && item !== null).reduce((obj, item) => { obj[item[key]?.toString()] = item; return obj; }, {});\r\n};\r\n\r\nArray.prototype.union = function <T = any>(key: string, ...args: T[][]) {\r\n let results: T[] = this;\r\n const filterUnion = <T = any>(val: T, index: number, self: T[]) => val !== undefined && val !== null && self.findIndex((e: { [x: string]: any; }) => !!key ? e[key] === val[key] : e === val) === index;\r\n if (!args?.length) {\r\n return results.filter(filterUnion);\r\n }\r\n for (const arg of args) {\r\n if (Array.isArray(arg)) {\r\n results = [...results, ...arg].filter(filterUnion);\r\n }\r\n }\r\n return results;\r\n}\r\n\r\nArray.prototype.asObservable = function <T = any>() {\r\n const items: T[] = this;\r\n return of(items);\r\n}\r\n\r\nArray.search = <T = any>(items: T[], searchText: string | number, fields?: string | string[]) => {\r\n if (!Array.isArray(items)) {\r\n return [];\r\n }\r\n return items.search(searchText, fields);\r\n};\r\n\r\nArray.union = <T = any>(key: string, ...args: T[][]) => {\r\n return [].union(key, ...args);\r\n}\r\n\r\nArray.toObject = <T>(items: T[], key?: string): { [key: string]: T } => {\r\n if (!Array.isArray(items)) {\r\n return {};\r\n }\r\n return items.toObject(key);\r\n}\r\n\r\n","export { };\r\n\r\ndeclare global {\r\n interface Date {\r\n begin(): Date;\r\n end(): Date;\r\n addMiliseconds(miliseconds: number): Date;\r\n addHours(hours: number): Date;\r\n addDays(days: number): Date;\r\n addMonths(months: number): Date;\r\n toFormat(format: string): string;\r\n }\r\n interface DateConstructor {\r\n equal(date1: any, date2: any): boolean;\r\n parseFrom(value: any, format: string): Date;\r\n isDate(value: any): boolean;\r\n toFormat(value: any, format: string): string;\r\n addMiliseconds(value: any, miliseconds: number): Date;\r\n addHours(value: any, hours: number): Date;\r\n addDays(value: any, days: number): Date;\r\n addMonths(value: any, months: number): Date;\r\n begin(value: any): Date;\r\n end(value: any): Date;\r\n }\r\n}\r\n\r\nDate.equal = (date1: any, date2: any) => {\r\n if (!Date.isDate(date1) && !Date.isDate(date2)) {\r\n return true;\r\n }\r\n if (!Date.isDate(date1) || !Date.isDate(date2)) {\r\n return false;\r\n }\r\n return new Date(date1).getTime() === new Date(date2).getTime();\r\n};\r\n\r\nDate.parseFrom = (value: any, format: string) => {\r\n if (!value) {\r\n return null;\r\n }\r\n if (!format) {\r\n return null;\r\n }\r\n value = value.toString();\r\n const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;\r\n const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;\r\n let strDate = '';\r\n if (dmy) {\r\n const dd = value.substr(format.indexOf('dd'), 'dd'.length);\r\n const MM = value.substr(format.indexOf('MM'), 'MM'.length);\r\n const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);\r\n if (+yyyy > 0 && +MM > 0 && +dd > 0) {\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n } else {\r\n return null;\r\n }\r\n } else {\r\n const today = new Date();\r\n const yyyy = today.getFullYear().toString();\r\n const MM = (today.getMonth() + 1).toString().padStart(2, '0');\r\n const dd = today.getDate().toString().padStart(2, '0');\r\n strDate += `${MM}/${dd}/${yyyy}`;\r\n }\r\n if (hms) {\r\n const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';\r\n const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';\r\n const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';\r\n strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;\r\n }\r\n if (!Date.isDate(strDate)) {\r\n return null;\r\n }\r\n return new Date(strDate);\r\n};\r\n\r\nDate.isDate = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const date = new Date(value);\r\n return !isNaN(date.getTime());\r\n};\r\n\r\nDate.toFormat = (value: any, format: string): string => {\r\n if (!Date.isDate(value)) {\r\n return '';\r\n }\r\n const date: Date = new Date(value);\r\n return date.toFormat(format);\r\n};\r\n\r\nDate.addMiliseconds = (value: any, miliseconds: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMiliseconds(miliseconds);\r\n};\r\n\r\nDate.addHours = (value: any, hours: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addHours(hours);\r\n};\r\n\r\nDate.addDays = (value: any, days: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addDays(days);\r\n};\r\n\r\nDate.addMonths = (value: any, months: number): Date => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n const date: Date = new Date(value);\r\n return date.addMonths(months);\r\n};\r\n\r\nDate.begin = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(Date.toFormat(value, 'MM/dd/yyyy'));\r\n};\r\n\r\nDate.end = (value: any) => {\r\n if (!Date.isDate(value)) {\r\n return null;\r\n }\r\n return new Date(value).addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.begin = function () {\r\n return new Date(this.toFormat('MM/dd/yyyy'));\r\n};\r\n\r\nDate.prototype.end = function () {\r\n const date: Date = this;\r\n return date.addDays(1).begin().addMiliseconds(-1);\r\n};\r\n\r\nDate.prototype.addMiliseconds = function (miliseconds: number) {\r\n const date: Date = this;\r\n date.setMilliseconds(date.getMilliseconds() + miliseconds);\r\n return date;\r\n};\r\n\r\nDate.prototype.addHours = function (hours: number) {\r\n const date: Date = this;\r\n date.setHours(date.getHours() + hours);\r\n return date;\r\n};\r\n\r\nDate.prototype.addDays = function (days: number) {\r\n const date: Date = this;\r\n date.setDate(date.getDate() + days);\r\n return date;\r\n};\r\n\r\nDate.prototype.addMonths = function (months: number) {\r\n const date: Date = this;\r\n date.setMonth(date.getMonth() + months);\r\n return date;\r\n};\r\n\r\nDate.prototype.toFormat = function (format: string) {\r\n const date: Date = this;\r\n let result = format;\r\n result = result.replace('yyyy', date.getFullYear().toString());\r\n result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));\r\n result = result.replace('dd', date.getDate().toString().padStart(2, '0'));\r\n result = result.replace('HH', date.getHours().toString().padStart(2, '0'));\r\n result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));\r\n result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));\r\n return result;\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface NumberConstructor {\r\n toVNCurrency(value: any): string;\r\n isNumber(value: any): boolean;\r\n isPositiveInteger(value: any): boolean;\r\n isPositiveNumber(value: any): boolean;\r\n }\r\n}\r\n\r\nNumber.toVNCurrency = (value: any) => {\r\n value = (value ?? '').toString().replace(/,/g, '');\r\n if (!value) {\r\n return null;\r\n }\r\n const val = +value;\r\n if (!Number.isNaN(val)) {\r\n return val.toLocaleString('vi-VN');\r\n }\r\n return null;\r\n};\r\n\r\nNumber.isPositiveInteger = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isPositiveNumber = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const regex = /^([0-9]*)(\\.[0-9]+$){0,1}$/;\r\n return regex.test(value) && +value > 0;\r\n};\r\n\r\nNumber.isNumber = (value: any) => {\r\n if (value === undefined || value === null || value === '') {\r\n return false;\r\n }\r\n return !Number.isNaN(+value);\r\n};\r\n","export { };\r\n\r\ndeclare global {\r\n interface StringConstructor {\r\n isValidEmail(value: any): boolean;\r\n isValidPhone(value: any): boolean;\r\n isValidCode(value: any): boolean;\r\n changeAliasLowerCase(alias: any): string;\r\n aliasIncludes(alias: any, searchText: any): boolean;\r\n format(template: string, ...arr: any[]): string;\r\n templateToDisplay(template: string, entity: any): string; // Convert theo format ${key}\r\n encrypt(obj: any): string;\r\n decrypt(encripted: string): any;\r\n }\r\n}\r\n\r\nString.isValidEmail = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidPhone = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/;\r\n return re.test(value);\r\n};\r\n\r\nString.isValidCode = (value: any) => {\r\n if (!value) {\r\n return false;\r\n }\r\n const re = /^[a-zA-Z0-9\\@\\_\\-]{2,20}$/;\r\n return re.test(value);\r\n};\r\n\r\nString.changeAliasLowerCase = (alias: any) => {\r\n let str: string = alias?.toString() ?? '';\r\n str = str.toString().toLowerCase();\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/!|@|%|\\^|\\*|\\(|\\)|\\+|\\=|\\<|\\>|\\?|\\/|,|\\.|\\:|\\;|\\'|\\\"|\\&|\\#|\\[|\\]|~|\\$|_|`|-|{|}|\\||\\\\/g, ' ');\r\n str = str.replace(/ + /g, ' ');\r\n str = str.trim();\r\n return str;\r\n}\r\n\r\nString.aliasIncludes = (alias: any, searchText: any) => {\r\n return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));\r\n}\r\n\r\nString.format = (template: string, ...arr: any[]) => {\r\n for (let i = 0; i < arr.length; i++) {\r\n const regexp = new RegExp(`\\\\{${i}\\\\}`, 'gi');\r\n template = template.replace(regexp, arr[i]);\r\n }\r\n return template;\r\n}\r\n\r\nString.templateToDisplay = (template: string, entity: any) => {\r\n if (!template) {\r\n return template;\r\n }\r\n const regex = /\\$\\{([A-Za-z._\\-]*)\\}/g;\r\n const matches = template.match(regex) || [];\r\n for (const match of matches) {\r\n const key = match.slice(2, match.length - 1);\r\n if (key) {\r\n template = template.replace(match, entity?.[key] || '');\r\n }\r\n }\r\n return template;\r\n}\r\n\r\nconst SALT = 'cb9f4b2a-d26c-4787-a66e-e7130ee00f95';\r\n\r\nString.encrypt = (obj: any) => {\r\n obj = JSON.stringify(obj).split('');\r\n for (var i = 0, l = obj.length; i < l; i++)\r\n if (obj[i] == '{')\r\n obj[i] = '}';\r\n else if (obj[i] == '}')\r\n obj[i] = '{';\r\n return encodeURI(SALT + obj.join(''));\r\n}\r\n\r\nString.decrypt = (encripted: string) => {\r\n encripted = decodeURI(encripted);\r\n if (SALT && encripted.indexOf(SALT) != 0)\r\n throw new Error('object cannot be decrypted');\r\n const strs = encripted.substring(SALT.length).split('');\r\n for (let i = 0, l = strs.length; i < l; i++)\r\n if (strs[i] == '{')\r\n strs[i] = '}';\r\n else if (encripted[i] == '}')\r\n strs[i] = '{';\r\n return JSON.parse(strs.join(''));\r\n}\r\n","import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IFirebaseConfiguration {\r\n functionUrl: string;\r\n project: string;\r\n env: string;\r\n}\r\n\r\nexport const FIREBASE_CONFIG = new InjectionToken<IFirebaseConfiguration>('sd.firebase.configuration');","import { InjectionToken } from \"@angular/core\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\n\r\nexport interface IFormConfiguration {\r\n appearance?: MatFormFieldAppearance; \r\n}\r\n\r\nexport const FORM_CONFIG = new InjectionToken<IFormConfiguration>('sd.form.configuration');","import { FormControl, AsyncValidatorFn, ValidatorFn } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nexport class SdFormControl extends FormControl {\r\n sdChanges: Subject<boolean> = new Subject<boolean>();\r\n untouchChanges: Subject<boolean> = new Subject<boolean>();\r\n touchChanges: Subject<boolean> = new Subject<boolean>();\r\n pristineChanges: Subject<boolean> = new Subject<boolean>();\r\n constructor(\r\n formState?: Object,\r\n validator: ValidatorFn | ValidatorFn[] = null,\r\n asyncValidator: AsyncValidatorFn | AsyncValidatorFn[] = null\r\n ) {\r\n super(formState, validator, asyncValidator);\r\n }\r\n\r\n markAsUntouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsUntouched({ onlySelf });\r\n this.untouchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsTouched({ onlySelf }: { onlySelf?: boolean } = {}): void {\r\n super.markAsTouched({ onlySelf });\r\n this.touchChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n\r\n markAsPristine(opts?: {\r\n onlySelf?: boolean;\r\n }): void {\r\n super.markAsPristine(opts);\r\n this.pristineChanges.next(true);\r\n this.sdChanges.next(true);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdBrowserService {\r\n browerName: string;\r\n browserVersion: string;\r\n get isChrome() { return this.browerName === 'Chrome'; }\r\n get isFirefox() { return this.browerName === 'Firefox'; }\r\n get isSafari() { return this.browerName === 'Safari'; }\r\n constructor() {\r\n const browserNameAndVersion = this.#getBrowserNameAndVersion();\r\n this.browerName = browserNameAndVersion.name;\r\n this.browserVersion = browserNameAndVersion.version;\r\n }\r\n\r\n #getBrowserNameAndVersion = () => {\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem: RegExpMatchArray;\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return { name: 'IE', version: (tem[1] || '') };\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\bEdg\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Edge(Chromium)', version: tem[1] }; }\r\n tem = ua.match(/\\bOPR\\/(\\d+)/);\r\n if (tem != null) { return { name: 'Opera', version: tem[1] }; }\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem != null) { M.splice(1, 1, tem[1]); }\r\n return {\r\n name: M[0],\r\n version: M[1]\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdViewDef]'\r\n})\r\nexport class SdViewDefDirective {\r\n // @Input() sdViewDef: string;\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n@Directive({\r\n selector: '[sdLet]',\r\n})\r\nexport class SdLetDirective {\r\n @Input()\r\n set sdLet(context: any) {\r\n this.context.$implicit = this.context.sdLet = context;\r\n this.#updateView();\r\n }\r\n context: any = {};\r\n\r\n constructor(private vcRef: ViewContainerRef, private templateRef: TemplateRef<any>) { }\r\n\r\n #updateView = () => {\r\n this.vcRef.clear();\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n }\r\n}","import { Directive, ElementRef, HostListener, OnInit, Renderer2 } from \"@angular/core\";\r\nimport { SdBrowserService } from '../services/browser.service';\r\n\r\n@Directive({\r\n selector: \"[sdScroll]\",\r\n})\r\nexport class SdScrollDirective implements OnInit {\r\n #overflow: 'hidden' | 'auto' | 'overlay' = 'hidden';\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n this.#overflow = this.browserService.isFirefox ? 'auto' : 'overlay';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n this.#overflow = 'hidden';\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private browserService: SdBrowserService) { }\r\n\r\n ngOnInit(): void {\r\n this.renderer.setStyle(this.elementRef.nativeElement, '-webkit-transform', 'translate3d(0, 0, 0)');\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'overflow', this.#overflow);\r\n }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdSuffix]'\r\n})\r\nexport class SdSuffixDirective {\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdViewDefDirective } from './directives/view-def.directive';\r\nimport { SdLetDirective } from './directives/sd-let.directive';\r\nimport { SdScrollDirective } from './directives/sd-scroll.directive';\r\nimport { SdSuffixDirective } from './directives/sd-suffix.directive';\r\n// import './typings';\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n exports: [\r\n SdViewDefDirective,\r\n SdLetDirective,\r\n SdScrollDirective,\r\n SdSuffixDirective\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommonModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "1.1.98",
3
+ "version": "1.1.99",
4
4
  "homepage": "https://www.facebook.com/DarkP3ter",
5
5
  "author": {
6
6
  "name": "darkpeter",
index df093ba..eb110c0 100644
Binary file