@sd-angular/core 1.3.193 → 1.3.195
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.
- package/bundles/sd-angular-core-grid-material.umd.js +3 -0
- package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-table.umd.js +7 -0
- package/bundles/sd-angular-core-table.umd.js.map +1 -1
- package/bundles/sd-angular-core-table.umd.min.js +1 -1
- package/bundles/sd-angular-core-table.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.js +3 -0
- package/bundles/sd-angular-core-utility.umd.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js.map +1 -1
- package/esm2015/grid-material/src/lib/pipes/cell-view.pipe.js +4 -1
- package/esm2015/table/src/lib/services/table-filter/table-filter.model.js +1 -1
- package/esm2015/table/src/public-api.js +2 -1
- package/esm2015/utility/src/lib/pipes/safe-html.pipe.js +4 -1
- package/fesm2015/sd-angular-core-grid-material.js +3 -0
- package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
- package/fesm2015/sd-angular-core-table.js +4 -1
- package/fesm2015/sd-angular-core-table.js.map +1 -1
- package/fesm2015/sd-angular-core-utility.js +3 -0
- package/fesm2015/sd-angular-core-utility.js.map +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.3.193.tgz → sd-angular-core-1.3.195.tgz} +0 -0
- package/table/sd-angular-core-table.metadata.json +1 -1
- package/table/src/lib/services/table-filter/table-filter.model.d.ts +13 -4
- package/table/src/public-api.d.ts +1 -1
- package/utility/sd-angular-core-utility.metadata.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-utility.umd.js","sources":["../../../../projects/sd-core/utility/src/lib/directives/desktop.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile-tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/pipes/currency.pipe.ts","../../../../projects/sd-core/utility/src/lib/pipes/safe-html.pipe.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/utility/src/lib/utility.service.ts","../../../../projects/sd-core/utility/src/lib/pipes/time-different.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.module.ts","../../../../projects/sd-core/utility/sd-angular-core-utility.ts"],"sourcesContent":["\r\nimport { Directive, ViewContainerRef, TemplateRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdDesktop]'\r\n})\r\nexport class SdDesktopDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isDesktop()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobile]'\r\n})\r\nexport class SdMobileDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobileTablet]'\r\n})\r\nexport class SdMobileTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile() || deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdTablet]'\r\n})\r\nexport class SdTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdCurrency',\r\n})\r\nexport class SdCurrencyPipe implements PipeTransform {\r\n transform(value: any, digits?: number) {\r\n return Number.toVNCurrency(value, digits);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml',\r\n})\r\nexport class SdSafeHtmlPipe implements PipeTransform {\r\n\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(html: string) {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","/*! *****************************************************************************\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 { Injectable } from '@angular/core';\r\n// import PDFMerger from 'pdf-merger-js/browser';\r\nimport md5 from 'md5';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdUtilityService {\r\n constructor() { }\r\n #translate = (value: string) => value;\r\n\r\n hashMD5 = (key: string) => md5(key);\r\n\r\n arrayToObject = <T>(items: T[], key: string): { [key: string]: T } => {\r\n return items.reduce((obj, item) => { obj[item[key]] = item; return obj; }, {});\r\n }\r\n\r\n changeAliasLowerCase = (alias: string) => {\r\n let str = 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\n timeDifference = (previous: any, current: any = new Date()) => {\r\n if (!Date.isDate(previous)) {\r\n return '';\r\n }\r\n if (!Date.isDate(current)) {\r\n return '';\r\n }\r\n const from = new Date(previous);\r\n const to = new Date(current);\r\n const msPerMinute = 60 * 1000;\r\n const msPerHour = msPerMinute * 60;\r\n const msPerDay = msPerHour * 24;\r\n const msPerMonth = msPerDay * 30;\r\n const msPerYear = msPerDay * 365;\r\n const elapsed = to.getTime() - from.getTime();\r\n\r\n if (elapsed < msPerMinute) {\r\n return `${Math.round(elapsed / 1000)} ${this.#translate('seconds ago')}`;\r\n }\r\n\r\n if (elapsed < msPerHour) {\r\n return `${Math.round(elapsed / msPerMinute)} ${this.#translate('minutes ago')}`;\r\n }\r\n\r\n if (elapsed < msPerDay) {\r\n return `${Math.round(elapsed / msPerHour)} ${this.#translate('hours ago')}`;\r\n }\r\n\r\n if (elapsed < msPerMonth) {\r\n return `${Math.round(elapsed / msPerDay)} ${this.#translate('days ago')}`;\r\n }\r\n\r\n if (elapsed < msPerYear) {\r\n return `${Math.round(elapsed / msPerMonth)} ${this.#translate('months ago')}`;\r\n }\r\n return `${Math.round(elapsed / msPerYear)} ${this.#translate('years ago')}`;\r\n }\r\n\r\n upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<File> => {\r\n return SdUtility.upload(option);\r\n }\r\n\r\n download = (filePath: string, fileName?: string) => {\r\n const link: any = document.createElement('a');\r\n link.download = `${fileName || uuid.v4()}`;\r\n link.href = filePath;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n\r\n copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n }\r\n\r\n printHtml = (elementId: string, fileName?: string) => {\r\n const printId = `sdPrintSection`;\r\n const div = 'sd-print';\r\n\r\n const elem = document.getElementById(elementId).firstElementChild;\r\n const domClone = elem.cloneNode(true);\r\n\r\n const printSection = document.createElement('div');\r\n printSection.id = printId;\r\n printSection.appendChild(domClone);\r\n\r\n document.body.insertBefore(printSection, document.body.firstChild);\r\n document.querySelector('body app-root').classList.add(div);\r\n const title = document.title;\r\n if (fileName) {\r\n document.title = fileName;\r\n }\r\n window.print();\r\n document.title = title;\r\n document.querySelector('body app-root').classList.remove(div);\r\n const oldElem = document.getElementById(printId);\r\n if (oldElem !== null) {\r\n oldElem.parentNode.removeChild(oldElem); // oldElem.remove() not supported by IE\r\n }\r\n }\r\n\r\n allWithPaging = async <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{ items: T[], total: number }>, defaultPageSize?: number): Promise<T[]> => {\r\n let pageSize = defaultPageSize || 1000;\r\n let pageNumber = 0;\r\n let count = 0;\r\n let items: T[] = [];\r\n while (true) {\r\n const res = await func(pageSize, pageNumber);\r\n if (Array(res?.items) && res?.total > 0) {\r\n items = [...items, ...res.items];\r\n count += res.items.length;\r\n pageNumber++;\r\n if (count >= res.total || !res.items?.length) {\r\n return items;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { interval, Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SdUtilityService } from '../utility.service';\r\n@Pipe({\r\n name: 'sdTimeDifferent',\r\n})\r\nexport class SdTimeDifferentPipe implements PipeTransform {\r\n private maxSecond = 60;\r\n private maxMinute = this.maxSecond * 60;\r\n private maxHour = this.maxMinute * 24;\r\n private maxDay = this.maxHour * 30;\r\n private maxMonth = this.maxHour * 365;\r\n constructor(private utilityService: SdUtilityService) { }\r\n transform(value: any, format: string, different: 'second' | 'minute' | 'hour' | 'day' | 'month'): Observable<string> {\r\n if (!Date.isDate(value)) {\r\n return of(null);\r\n }\r\n if (!different) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n if (Math.round((new Date().getTime() - new Date(value).getTime()) / 1000) < 0) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n return interval(1000).pipe(map(() => {\r\n const timeDifferent = Math.round((new Date().getTime() - new Date(value).getTime()) / 1000);\r\n if (different === 'month' && timeDifferent < this.maxMonth) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'day' && timeDifferent < this.maxDay) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'hour' && timeDifferent < this.maxHour) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'minute' && timeDifferent < this.maxMinute) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'second' && timeDifferent < this.maxSecond) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n return Date.toFormat(value, format);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdDesktopDirective } from './directives/desktop.directive';\r\nimport { SdMobileDirective } from './directives/mobile.directive';\r\nimport { SdMobileTabletDirective } from './directives/mobile-tablet.directive';\r\nimport { SdTabletDirective } from './directives/tablet.directive';\r\n\r\nimport { SdCurrencyPipe } from './pipes/currency.pipe';\r\nimport { SdSafeHtmlPipe } from './pipes/safe-html.pipe';\r\nimport { SdTimeDifferentPipe } from './pipes/time-different.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n declarations: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n exports: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n providers: [\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ]\r\n})\r\nexport class SdUtilityModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Directive","TemplateRef","ViewContainerRef","DeviceDetectorService","Pipe","DomSanitizer","md5","uuid.v4","Injectable","of","interval","map","NgModule","CommonModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-utility.umd.js","sources":["../../../../projects/sd-core/utility/src/lib/directives/desktop.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile-tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/pipes/currency.pipe.ts","../../../../projects/sd-core/utility/src/lib/pipes/safe-html.pipe.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/utility/src/lib/utility.service.ts","../../../../projects/sd-core/utility/src/lib/pipes/time-different.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.module.ts","../../../../projects/sd-core/utility/sd-angular-core-utility.ts"],"sourcesContent":["\r\nimport { Directive, ViewContainerRef, TemplateRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdDesktop]'\r\n})\r\nexport class SdDesktopDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isDesktop()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobile]'\r\n})\r\nexport class SdMobileDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobileTablet]'\r\n})\r\nexport class SdMobileTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile() || deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdTablet]'\r\n})\r\nexport class SdTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdCurrency',\r\n})\r\nexport class SdCurrencyPipe implements PipeTransform {\r\n transform(value: any, digits?: number) {\r\n return Number.toVNCurrency(value, digits);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml',\r\n})\r\nexport class SdSafeHtmlPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n transform(html: string) {\r\n if (!html) {\r\n return undefined;\r\n }\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","/*! *****************************************************************************\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 { Injectable } from '@angular/core';\r\n// import PDFMerger from 'pdf-merger-js/browser';\r\nimport md5 from 'md5';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdUtilityService {\r\n constructor() { }\r\n #translate = (value: string) => value;\r\n\r\n hashMD5 = (key: string) => md5(key);\r\n\r\n arrayToObject = <T>(items: T[], key: string): { [key: string]: T } => {\r\n return items.reduce((obj, item) => { obj[item[key]] = item; return obj; }, {});\r\n }\r\n\r\n changeAliasLowerCase = (alias: string) => {\r\n let str = 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\n timeDifference = (previous: any, current: any = new Date()) => {\r\n if (!Date.isDate(previous)) {\r\n return '';\r\n }\r\n if (!Date.isDate(current)) {\r\n return '';\r\n }\r\n const from = new Date(previous);\r\n const to = new Date(current);\r\n const msPerMinute = 60 * 1000;\r\n const msPerHour = msPerMinute * 60;\r\n const msPerDay = msPerHour * 24;\r\n const msPerMonth = msPerDay * 30;\r\n const msPerYear = msPerDay * 365;\r\n const elapsed = to.getTime() - from.getTime();\r\n\r\n if (elapsed < msPerMinute) {\r\n return `${Math.round(elapsed / 1000)} ${this.#translate('seconds ago')}`;\r\n }\r\n\r\n if (elapsed < msPerHour) {\r\n return `${Math.round(elapsed / msPerMinute)} ${this.#translate('minutes ago')}`;\r\n }\r\n\r\n if (elapsed < msPerDay) {\r\n return `${Math.round(elapsed / msPerHour)} ${this.#translate('hours ago')}`;\r\n }\r\n\r\n if (elapsed < msPerMonth) {\r\n return `${Math.round(elapsed / msPerDay)} ${this.#translate('days ago')}`;\r\n }\r\n\r\n if (elapsed < msPerYear) {\r\n return `${Math.round(elapsed / msPerMonth)} ${this.#translate('months ago')}`;\r\n }\r\n return `${Math.round(elapsed / msPerYear)} ${this.#translate('years ago')}`;\r\n }\r\n\r\n upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<File> => {\r\n return SdUtility.upload(option);\r\n }\r\n\r\n download = (filePath: string, fileName?: string) => {\r\n const link: any = document.createElement('a');\r\n link.download = `${fileName || uuid.v4()}`;\r\n link.href = filePath;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n\r\n copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n }\r\n\r\n printHtml = (elementId: string, fileName?: string) => {\r\n const printId = `sdPrintSection`;\r\n const div = 'sd-print';\r\n\r\n const elem = document.getElementById(elementId).firstElementChild;\r\n const domClone = elem.cloneNode(true);\r\n\r\n const printSection = document.createElement('div');\r\n printSection.id = printId;\r\n printSection.appendChild(domClone);\r\n\r\n document.body.insertBefore(printSection, document.body.firstChild);\r\n document.querySelector('body app-root').classList.add(div);\r\n const title = document.title;\r\n if (fileName) {\r\n document.title = fileName;\r\n }\r\n window.print();\r\n document.title = title;\r\n document.querySelector('body app-root').classList.remove(div);\r\n const oldElem = document.getElementById(printId);\r\n if (oldElem !== null) {\r\n oldElem.parentNode.removeChild(oldElem); // oldElem.remove() not supported by IE\r\n }\r\n }\r\n\r\n allWithPaging = async <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{ items: T[], total: number }>, defaultPageSize?: number): Promise<T[]> => {\r\n let pageSize = defaultPageSize || 1000;\r\n let pageNumber = 0;\r\n let count = 0;\r\n let items: T[] = [];\r\n while (true) {\r\n const res = await func(pageSize, pageNumber);\r\n if (Array(res?.items) && res?.total > 0) {\r\n items = [...items, ...res.items];\r\n count += res.items.length;\r\n pageNumber++;\r\n if (count >= res.total || !res.items?.length) {\r\n return items;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { interval, Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SdUtilityService } from '../utility.service';\r\n@Pipe({\r\n name: 'sdTimeDifferent',\r\n})\r\nexport class SdTimeDifferentPipe implements PipeTransform {\r\n private maxSecond = 60;\r\n private maxMinute = this.maxSecond * 60;\r\n private maxHour = this.maxMinute * 24;\r\n private maxDay = this.maxHour * 30;\r\n private maxMonth = this.maxHour * 365;\r\n constructor(private utilityService: SdUtilityService) { }\r\n transform(value: any, format: string, different: 'second' | 'minute' | 'hour' | 'day' | 'month'): Observable<string> {\r\n if (!Date.isDate(value)) {\r\n return of(null);\r\n }\r\n if (!different) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n if (Math.round((new Date().getTime() - new Date(value).getTime()) / 1000) < 0) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n return interval(1000).pipe(map(() => {\r\n const timeDifferent = Math.round((new Date().getTime() - new Date(value).getTime()) / 1000);\r\n if (different === 'month' && timeDifferent < this.maxMonth) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'day' && timeDifferent < this.maxDay) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'hour' && timeDifferent < this.maxHour) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'minute' && timeDifferent < this.maxMinute) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'second' && timeDifferent < this.maxSecond) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n return Date.toFormat(value, format);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdDesktopDirective } from './directives/desktop.directive';\r\nimport { SdMobileDirective } from './directives/mobile.directive';\r\nimport { SdMobileTabletDirective } from './directives/mobile-tablet.directive';\r\nimport { SdTabletDirective } from './directives/tablet.directive';\r\n\r\nimport { SdCurrencyPipe } from './pipes/currency.pipe';\r\nimport { SdSafeHtmlPipe } from './pipes/safe-html.pipe';\r\nimport { SdTimeDifferentPipe } from './pipes/time-different.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n declarations: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n exports: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n providers: [\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ]\r\n})\r\nexport class SdUtilityModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Directive","TemplateRef","ViewContainerRef","DeviceDetectorService","Pipe","DomSanitizer","md5","uuid.v4","Injectable","of","interval","map","NgModule","CommonModule"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@sd-angular/core/common"),require("@angular/core"),require("@angular/common"),require("ngx-device-detector"),require("@angular/platform-browser"),require("rxjs"),require("rxjs/operators"),require("md5"),require("uuid")):"function"==typeof define&&define.amd?define("@sd-angular/core/utility",["exports","@sd-angular/core/common","@angular/core","@angular/common","ngx-device-detector","@angular/platform-browser","rxjs","rxjs/operators","md5","uuid"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core.utility={}),e["sd-angular"].core.common,e.ng.core,e.ng.common,e["ngx-device-detector"],e.ng.platformBrowser,e.rxjs,e.rxjs.operators,e.md5,e.uuid)}(this,(function(e,t,r,n,o,i,a,c,u,l){"use strict";function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=s(u),f=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,r.isDesktop()&&this.viewContainerRef.createEmbeddedView(this.templateRef)};f.decorators=[{type:r.Directive,args:[{selector:"[sdDesktop]"}]}],f.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var m=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,r.isMobile()&&this.viewContainerRef.createEmbeddedView(this.templateRef)};m.decorators=[{type:r.Directive,args:[{selector:"[sdMobile]"}]}],m.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var p=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,(r.isMobile()||r.isTablet())&&this.viewContainerRef.createEmbeddedView(this.templateRef)};p.decorators=[{type:r.Directive,args:[{selector:"[sdMobileTablet]"}]}],p.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var h=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,r.isTablet()&&this.viewContainerRef.createEmbeddedView(this.templateRef)};h.decorators=[{type:r.Directive,args:[{selector:"[sdTablet]"}]}],h.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var y=function(){function e(){}return e.prototype.transform=function(e,t){return Number.toVNCurrency(e,t)},e}();y.decorators=[{type:r.Pipe,args:[{name:"sdCurrency"}]}];var v=function(){function e(e){this.sanitizer=e}return e.prototype.transform=function(e){return this.sanitizer.bypassSecurityTrustHtml(e)},e}();v.decorators=[{type:r.Pipe,args:[{name:"safeHtml"}]}],v.ctorParameters=function(){return[{type:i.DomSanitizer}]};function g(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function c(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,c)}u((n=n.apply(e,t||[])).next())}))}function b(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(i){return function(c){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,c])}}}Object.create;function w(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}var D;Object.create;function x(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)}var S=function(){var e=this;D.set(this,(function(e){return e})),this.hashMD5=function(e){return d.default(e)},this.arrayToObject=function(e,t){return e.reduce((function(e,r){return e[r[t]]=r,e}),{})},this.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()},this.timeDifference=function(t,r){if(void 0===r&&(r=new Date),!Date.isDate(t))return"";if(!Date.isDate(r))return"";var n=new Date(t),o=6e4,i=36e5,a=864e5,c=2592e6,u=31536e6,l=new Date(r).getTime()-n.getTime();return l<o?Math.round(l/1e3)+" "+x(e,D).call(e,"seconds ago"):l<i?Math.round(l/o)+" "+x(e,D).call(e,"minutes ago"):l<a?Math.round(l/i)+" "+x(e,D).call(e,"hours ago"):l<c?Math.round(l/a)+" "+x(e,D).call(e,"days ago"):l<u?Math.round(l/c)+" "+x(e,D).call(e,"months ago"):Math.round(l/u)+" "+x(e,D).call(e,"years ago")},this.upload=function(e){return SdUtility.upload(e)},this.download=function(e,t){var r=document.createElement("a");r.download=""+(t||l.v4()),r.href=e,document.body.appendChild(r),r.click(),document.body.removeChild(r)},this.copyToClipboard=function(e){navigator.clipboard.writeText(e)},this.printHtml=function(e,t){var r="sdPrintSection",n="sd-print",o=document.getElementById(e).firstElementChild.cloneNode(!0),i=document.createElement("div");i.id=r,i.appendChild(o),document.body.insertBefore(i,document.body.firstChild),document.querySelector("body app-root").classList.add(n);var a=document.title;t&&(document.title=t),window.print(),document.title=a,document.querySelector("body app-root").classList.remove(n);var c=document.getElementById(r);null!==c&&c.parentNode.removeChild(c)},this.allWithPaging=function(t,r){return g(e,void 0,void 0,(function(){var e,n,o,i,a,c;return b(this,(function(u){switch(u.label){case 0:n=r||1e3,o=0,i=0,a=[],u.label=1;case 1:return[4,t(n,o)];case 2:return c=u.sent(),Array(null==c?void 0:c.items)&&(null==c?void 0:c.total)>0?(a=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(w(arguments[t]));return e}(a,c.items),i+=c.items.length,o++,i>=c.total||!(null===(e=c.items)||void 0===e?void 0:e.length)?[2,a]:[3,1]):[2,[]];case 3:return[2]}}))}))}};D=new WeakMap,S.ɵprov=r.ɵɵdefineInjectable({factory:function(){return new S},token:S,providedIn:"root"}),S.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],S.ctorParameters=function(){return[]};var T=function(){function e(e){this.utilityService=e,this.maxSecond=60,this.maxMinute=60*this.maxSecond,this.maxHour=24*this.maxMinute,this.maxDay=30*this.maxHour,this.maxMonth=365*this.maxHour}return e.prototype.transform=function(e,t,r){var n=this;return Date.isDate(e)?r?Math.round(((new Date).getTime()-new Date(e).getTime())/1e3)<0?a.of(Date.toFormat(e,t)):a.interval(1e3).pipe(c.map((function(){var o=Math.round(((new Date).getTime()-new Date(e).getTime())/1e3);return"month"===r&&o<n.maxMonth||"day"===r&&o<n.maxDay||"hour"===r&&o<n.maxHour||"minute"===r&&o<n.maxMinute||"second"===r&&o<n.maxSecond?n.utilityService.timeDifference(e):Date.toFormat(e,t)}))):a.of(Date.toFormat(e,t)):a.of(null)},e}();T.decorators=[{type:r.Pipe,args:[{name:"sdTimeDifferent"}]}],T.ctorParameters=function(){return[{type:S}]};var C=function(){};C.decorators=[{type:r.NgModule,args:[{imports:[n.CommonModule],declarations:[f,p,m,h,y,v,T],exports:[f,p,m,h,y,v,T],providers:[y,v,T]}]}],e.SdCurrencyPipe=y,e.SdDesktopDirective=f,e.SdMobileDirective=m,e.SdMobileTabletDirective=p,e.SdSafeHtmlPipe=v,e.SdTabletDirective=h,e.SdTimeDifferentPipe=T,e.SdUtilityModule=C,e.SdUtilityService=S,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@sd-angular/core/common"),require("@angular/core"),require("@angular/common"),require("ngx-device-detector"),require("@angular/platform-browser"),require("rxjs"),require("rxjs/operators"),require("md5"),require("uuid")):"function"==typeof define&&define.amd?define("@sd-angular/core/utility",["exports","@sd-angular/core/common","@angular/core","@angular/common","ngx-device-detector","@angular/platform-browser","rxjs","rxjs/operators","md5","uuid"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core.utility={}),e["sd-angular"].core.common,e.ng.core,e.ng.common,e["ngx-device-detector"],e.ng.platformBrowser,e.rxjs,e.rxjs.operators,e.md5,e.uuid)}(this,(function(e,t,r,n,o,i,a,c,u,l){"use strict";function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=s(u),f=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,r.isDesktop()&&this.viewContainerRef.createEmbeddedView(this.templateRef)};f.decorators=[{type:r.Directive,args:[{selector:"[sdDesktop]"}]}],f.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var m=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,r.isMobile()&&this.viewContainerRef.createEmbeddedView(this.templateRef)};m.decorators=[{type:r.Directive,args:[{selector:"[sdMobile]"}]}],m.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var p=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,(r.isMobile()||r.isTablet())&&this.viewContainerRef.createEmbeddedView(this.templateRef)};p.decorators=[{type:r.Directive,args:[{selector:"[sdMobileTablet]"}]}],p.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var h=function(e,t,r){this.templateRef=e,this.viewContainerRef=t,r.isTablet()&&this.viewContainerRef.createEmbeddedView(this.templateRef)};h.decorators=[{type:r.Directive,args:[{selector:"[sdTablet]"}]}],h.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef},{type:o.DeviceDetectorService}]};var y=function(){function e(){}return e.prototype.transform=function(e,t){return Number.toVNCurrency(e,t)},e}();y.decorators=[{type:r.Pipe,args:[{name:"sdCurrency"}]}];var v=function(){function e(e){this.sanitizer=e}return e.prototype.transform=function(e){if(e)return this.sanitizer.bypassSecurityTrustHtml(e)},e}();v.decorators=[{type:r.Pipe,args:[{name:"safeHtml"}]}],v.ctorParameters=function(){return[{type:i.DomSanitizer}]};function g(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function c(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,c)}u((n=n.apply(e,t||[])).next())}))}function b(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(i){return function(c){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,c])}}}Object.create;function w(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}var D;Object.create;function x(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)}var S=function(){var e=this;D.set(this,(function(e){return e})),this.hashMD5=function(e){return d.default(e)},this.arrayToObject=function(e,t){return e.reduce((function(e,r){return e[r[t]]=r,e}),{})},this.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()},this.timeDifference=function(t,r){if(void 0===r&&(r=new Date),!Date.isDate(t))return"";if(!Date.isDate(r))return"";var n=new Date(t),o=6e4,i=36e5,a=864e5,c=2592e6,u=31536e6,l=new Date(r).getTime()-n.getTime();return l<o?Math.round(l/1e3)+" "+x(e,D).call(e,"seconds ago"):l<i?Math.round(l/o)+" "+x(e,D).call(e,"minutes ago"):l<a?Math.round(l/i)+" "+x(e,D).call(e,"hours ago"):l<c?Math.round(l/a)+" "+x(e,D).call(e,"days ago"):l<u?Math.round(l/c)+" "+x(e,D).call(e,"months ago"):Math.round(l/u)+" "+x(e,D).call(e,"years ago")},this.upload=function(e){return SdUtility.upload(e)},this.download=function(e,t){var r=document.createElement("a");r.download=""+(t||l.v4()),r.href=e,document.body.appendChild(r),r.click(),document.body.removeChild(r)},this.copyToClipboard=function(e){navigator.clipboard.writeText(e)},this.printHtml=function(e,t){var r="sdPrintSection",n="sd-print",o=document.getElementById(e).firstElementChild.cloneNode(!0),i=document.createElement("div");i.id=r,i.appendChild(o),document.body.insertBefore(i,document.body.firstChild),document.querySelector("body app-root").classList.add(n);var a=document.title;t&&(document.title=t),window.print(),document.title=a,document.querySelector("body app-root").classList.remove(n);var c=document.getElementById(r);null!==c&&c.parentNode.removeChild(c)},this.allWithPaging=function(t,r){return g(e,void 0,void 0,(function(){var e,n,o,i,a,c;return b(this,(function(u){switch(u.label){case 0:n=r||1e3,o=0,i=0,a=[],u.label=1;case 1:return[4,t(n,o)];case 2:return c=u.sent(),Array(null==c?void 0:c.items)&&(null==c?void 0:c.total)>0?(a=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(w(arguments[t]));return e}(a,c.items),i+=c.items.length,o++,i>=c.total||!(null===(e=c.items)||void 0===e?void 0:e.length)?[2,a]:[3,1]):[2,[]];case 3:return[2]}}))}))}};D=new WeakMap,S.ɵprov=r.ɵɵdefineInjectable({factory:function(){return new S},token:S,providedIn:"root"}),S.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],S.ctorParameters=function(){return[]};var T=function(){function e(e){this.utilityService=e,this.maxSecond=60,this.maxMinute=60*this.maxSecond,this.maxHour=24*this.maxMinute,this.maxDay=30*this.maxHour,this.maxMonth=365*this.maxHour}return e.prototype.transform=function(e,t,r){var n=this;return Date.isDate(e)?r?Math.round(((new Date).getTime()-new Date(e).getTime())/1e3)<0?a.of(Date.toFormat(e,t)):a.interval(1e3).pipe(c.map((function(){var o=Math.round(((new Date).getTime()-new Date(e).getTime())/1e3);return"month"===r&&o<n.maxMonth||"day"===r&&o<n.maxDay||"hour"===r&&o<n.maxHour||"minute"===r&&o<n.maxMinute||"second"===r&&o<n.maxSecond?n.utilityService.timeDifference(e):Date.toFormat(e,t)}))):a.of(Date.toFormat(e,t)):a.of(null)},e}();T.decorators=[{type:r.Pipe,args:[{name:"sdTimeDifferent"}]}],T.ctorParameters=function(){return[{type:S}]};var C=function(){};C.decorators=[{type:r.NgModule,args:[{imports:[n.CommonModule],declarations:[f,p,m,h,y,v,T],exports:[f,p,m,h,y,v,T],providers:[y,v,T]}]}],e.SdCurrencyPipe=y,e.SdDesktopDirective=f,e.SdMobileDirective=m,e.SdMobileTabletDirective=p,e.SdSafeHtmlPipe=v,e.SdTabletDirective=h,e.SdTimeDifferentPipe=T,e.SdUtilityModule=C,e.SdUtilityService=S,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
2
|
//# sourceMappingURL=sd-angular-core-utility.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../projects/sd-core/utility/src/lib/directives/desktop.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile-tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/pipes/currency.pipe.ts","../../../../projects/sd-core/utility/src/lib/pipes/safe-html.pipe.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/utility/src/lib/utility.service.ts","../../../../projects/sd-core/utility/src/lib/pipes/time-different.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.module.ts"],"names":["templateRef","viewContainerRef","deviceService","this","isDesktop","createEmbeddedView","Directive","args","selector","TemplateRef","ViewContainerRef","DeviceDetectorService","isMobile","isTablet","SdCurrencyPipe","prototype","transform","value","digits","Number","toVNCurrency","Pipe","name","SdSafeHtmlPipe","sanitizer","html","bypassSecurityTrustHtml","DomSanitizer","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","Object","create","__read","o","m","r","i","ar","error","__classPrivateFieldGet","receiver","state","kind","has","get","_this","_translate","set","hashMD5","key","md5","arrayToObject","items","reduce","obj","item","changeAliasLowerCase","alias","str","_a","toString","toLowerCase","replace","trim","timeDifference","previous","current","Date","isDate","from","msPerMinute","msPerHour","msPerDay","msPerMonth","msPerYear","elapsed","getTime","Math","round","upload","option","SdUtility","download","filePath","fileName","link","document","createElement","uuid.v4","href","appendChild","click","removeChild","copyToClipboard","text","navigator","clipboard","writeText","printHtml","elementId","printId","div","domClone","getElementById","firstElementChild","cloneNode","printSection","id","insertBefore","firstChild","querySelector","classList","add","title","window","print","remove","oldElem","parentNode","allWithPaging","func","defaultPageSize","pageSize","pageNumber","count","res","_b","Array","total","arguments","concat","__spread","Injectable","providedIn","SdTimeDifferentPipe","utilityService","maxSecond","maxMinute","maxHour","maxDay","maxMonth","format","different","of","toFormat","interval","pipe","map","timeDifferent","SdUtilityService","NgModule","imports","CommonModule","declarations","SdDesktopDirective","SdMobileTabletDirective","SdMobileDirective","SdTabletDirective","exports","providers"],"mappings":"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","sourcesContent":["\r\nimport { Directive, ViewContainerRef, TemplateRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdDesktop]'\r\n})\r\nexport class SdDesktopDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isDesktop()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobile]'\r\n})\r\nexport class SdMobileDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobileTablet]'\r\n})\r\nexport class SdMobileTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile() || deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdTablet]'\r\n})\r\nexport class SdTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdCurrency',\r\n})\r\nexport class SdCurrencyPipe implements PipeTransform {\r\n transform(value: any, digits?: number) {\r\n return Number.toVNCurrency(value, digits);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml',\r\n})\r\nexport class SdSafeHtmlPipe implements PipeTransform {\r\n\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(html: string) {\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","/*! *****************************************************************************\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 { Injectable } from '@angular/core';\r\n// import PDFMerger from 'pdf-merger-js/browser';\r\nimport md5 from 'md5';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdUtilityService {\r\n constructor() { }\r\n #translate = (value: string) => value;\r\n\r\n hashMD5 = (key: string) => md5(key);\r\n\r\n arrayToObject = <T>(items: T[], key: string): { [key: string]: T } => {\r\n return items.reduce((obj, item) => { obj[item[key]] = item; return obj; }, {});\r\n }\r\n\r\n changeAliasLowerCase = (alias: string) => {\r\n let str = 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\n timeDifference = (previous: any, current: any = new Date()) => {\r\n if (!Date.isDate(previous)) {\r\n return '';\r\n }\r\n if (!Date.isDate(current)) {\r\n return '';\r\n }\r\n const from = new Date(previous);\r\n const to = new Date(current);\r\n const msPerMinute = 60 * 1000;\r\n const msPerHour = msPerMinute * 60;\r\n const msPerDay = msPerHour * 24;\r\n const msPerMonth = msPerDay * 30;\r\n const msPerYear = msPerDay * 365;\r\n const elapsed = to.getTime() - from.getTime();\r\n\r\n if (elapsed < msPerMinute) {\r\n return `${Math.round(elapsed / 1000)} ${this.#translate('seconds ago')}`;\r\n }\r\n\r\n if (elapsed < msPerHour) {\r\n return `${Math.round(elapsed / msPerMinute)} ${this.#translate('minutes ago')}`;\r\n }\r\n\r\n if (elapsed < msPerDay) {\r\n return `${Math.round(elapsed / msPerHour)} ${this.#translate('hours ago')}`;\r\n }\r\n\r\n if (elapsed < msPerMonth) {\r\n return `${Math.round(elapsed / msPerDay)} ${this.#translate('days ago')}`;\r\n }\r\n\r\n if (elapsed < msPerYear) {\r\n return `${Math.round(elapsed / msPerMonth)} ${this.#translate('months ago')}`;\r\n }\r\n return `${Math.round(elapsed / msPerYear)} ${this.#translate('years ago')}`;\r\n }\r\n\r\n upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<File> => {\r\n return SdUtility.upload(option);\r\n }\r\n\r\n download = (filePath: string, fileName?: string) => {\r\n const link: any = document.createElement('a');\r\n link.download = `${fileName || uuid.v4()}`;\r\n link.href = filePath;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n\r\n copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n }\r\n\r\n printHtml = (elementId: string, fileName?: string) => {\r\n const printId = `sdPrintSection`;\r\n const div = 'sd-print';\r\n\r\n const elem = document.getElementById(elementId).firstElementChild;\r\n const domClone = elem.cloneNode(true);\r\n\r\n const printSection = document.createElement('div');\r\n printSection.id = printId;\r\n printSection.appendChild(domClone);\r\n\r\n document.body.insertBefore(printSection, document.body.firstChild);\r\n document.querySelector('body app-root').classList.add(div);\r\n const title = document.title;\r\n if (fileName) {\r\n document.title = fileName;\r\n }\r\n window.print();\r\n document.title = title;\r\n document.querySelector('body app-root').classList.remove(div);\r\n const oldElem = document.getElementById(printId);\r\n if (oldElem !== null) {\r\n oldElem.parentNode.removeChild(oldElem); // oldElem.remove() not supported by IE\r\n }\r\n }\r\n\r\n allWithPaging = async <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{ items: T[], total: number }>, defaultPageSize?: number): Promise<T[]> => {\r\n let pageSize = defaultPageSize || 1000;\r\n let pageNumber = 0;\r\n let count = 0;\r\n let items: T[] = [];\r\n while (true) {\r\n const res = await func(pageSize, pageNumber);\r\n if (Array(res?.items) && res?.total > 0) {\r\n items = [...items, ...res.items];\r\n count += res.items.length;\r\n pageNumber++;\r\n if (count >= res.total || !res.items?.length) {\r\n return items;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { interval, Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SdUtilityService } from '../utility.service';\r\n@Pipe({\r\n name: 'sdTimeDifferent',\r\n})\r\nexport class SdTimeDifferentPipe implements PipeTransform {\r\n private maxSecond = 60;\r\n private maxMinute = this.maxSecond * 60;\r\n private maxHour = this.maxMinute * 24;\r\n private maxDay = this.maxHour * 30;\r\n private maxMonth = this.maxHour * 365;\r\n constructor(private utilityService: SdUtilityService) { }\r\n transform(value: any, format: string, different: 'second' | 'minute' | 'hour' | 'day' | 'month'): Observable<string> {\r\n if (!Date.isDate(value)) {\r\n return of(null);\r\n }\r\n if (!different) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n if (Math.round((new Date().getTime() - new Date(value).getTime()) / 1000) < 0) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n return interval(1000).pipe(map(() => {\r\n const timeDifferent = Math.round((new Date().getTime() - new Date(value).getTime()) / 1000);\r\n if (different === 'month' && timeDifferent < this.maxMonth) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'day' && timeDifferent < this.maxDay) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'hour' && timeDifferent < this.maxHour) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'minute' && timeDifferent < this.maxMinute) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'second' && timeDifferent < this.maxSecond) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n return Date.toFormat(value, format);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdDesktopDirective } from './directives/desktop.directive';\r\nimport { SdMobileDirective } from './directives/mobile.directive';\r\nimport { SdMobileTabletDirective } from './directives/mobile-tablet.directive';\r\nimport { SdTabletDirective } from './directives/tablet.directive';\r\n\r\nimport { SdCurrencyPipe } from './pipes/currency.pipe';\r\nimport { SdSafeHtmlPipe } from './pipes/safe-html.pipe';\r\nimport { SdTimeDifferentPipe } from './pipes/time-different.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n declarations: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n exports: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n providers: [\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ]\r\n})\r\nexport class SdUtilityModule {}\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../projects/sd-core/utility/src/lib/directives/desktop.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/mobile-tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/directives/tablet.directive.ts","../../../../projects/sd-core/utility/src/lib/pipes/currency.pipe.ts","../../../../projects/sd-core/utility/src/lib/pipes/safe-html.pipe.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/utility/src/lib/utility.service.ts","../../../../projects/sd-core/utility/src/lib/pipes/time-different.pipe.ts","../../../../projects/sd-core/utility/src/lib/utility.module.ts"],"names":["templateRef","viewContainerRef","deviceService","this","isDesktop","createEmbeddedView","Directive","args","selector","TemplateRef","ViewContainerRef","DeviceDetectorService","isMobile","isTablet","SdCurrencyPipe","prototype","transform","value","digits","Number","toVNCurrency","Pipe","name","SdSafeHtmlPipe","sanitizer","html","bypassSecurityTrustHtml","DomSanitizer","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","Object","create","__read","o","m","r","i","ar","error","__classPrivateFieldGet","receiver","state","kind","has","get","_this","_translate","set","hashMD5","key","md5","arrayToObject","items","reduce","obj","item","changeAliasLowerCase","alias","str","_a","toString","toLowerCase","replace","trim","timeDifference","previous","current","Date","isDate","from","msPerMinute","msPerHour","msPerDay","msPerMonth","msPerYear","elapsed","getTime","Math","round","upload","option","SdUtility","download","filePath","fileName","link","document","createElement","uuid.v4","href","appendChild","click","removeChild","copyToClipboard","text","navigator","clipboard","writeText","printHtml","elementId","printId","div","domClone","getElementById","firstElementChild","cloneNode","printSection","id","insertBefore","firstChild","querySelector","classList","add","title","window","print","remove","oldElem","parentNode","allWithPaging","func","defaultPageSize","pageSize","pageNumber","count","res","_b","Array","total","arguments","concat","__spread","Injectable","providedIn","SdTimeDifferentPipe","utilityService","maxSecond","maxMinute","maxHour","maxDay","maxMonth","format","different","of","toFormat","interval","pipe","map","timeDifferent","SdUtilityService","NgModule","imports","CommonModule","declarations","SdDesktopDirective","SdMobileTabletDirective","SdMobileDirective","SdTabletDirective","exports","providers"],"mappings":"o9BAQE,SACUA,EACAC,EACRC,GAFQC,KAAAH,YAAAA,EACAG,KAAAF,iBAAAA,EAGJC,EAAcE,aAChBD,KAAKF,iBAAiBI,mBAAmBF,KAAKH,kCAVnDM,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,2DAJ0BC,EAAAA,mBAAlBC,EAAAA,wBACXC,EAAAA,+BCMP,SACUX,EACAC,EACRC,GAFQC,KAAAH,YAAAA,EACAG,KAAAF,iBAAAA,EAGJC,EAAcU,YAChBT,KAAKF,iBAAiBI,mBAAmBF,KAAKH,kCAVnDM,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,0DAJQC,EAAAA,mBAAaC,EAAAA,wBACxBC,EAAAA,+BCMP,SACUX,EACAC,EACRC,GAFQC,KAAAH,YAAAA,EACAG,KAAAF,iBAAAA,GAGJC,EAAcU,YAAcV,EAAcW,aAC5CV,KAAKF,iBAAiBI,mBAAmBF,KAAKH,kCAVnDM,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,gEAJQC,EAAAA,mBAAaC,EAAAA,wBACxBC,EAAAA,+BCMP,SACUX,EACAC,EACRC,GAFQC,KAAAH,YAAAA,EACAG,KAAAF,iBAAAA,EAGJC,EAAcW,YAChBV,KAAKF,iBAAiBI,mBAAmBF,KAAKH,kCAVnDM,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,0DAJQC,EAAAA,mBAAaC,EAAAA,wBACxBC,EAAAA,0CCET,SAAAG,YACEA,EAAAC,UAAAC,UAAA,SAAUC,EAAYC,GACpB,OAAOC,OAAOC,aAAaH,EAAOC,6BALrCG,EAAAA,KAAId,KAAA,CAAC,CACJe,KAAM,kCCKN,SAAAC,EAAoBC,GAAArB,KAAAqB,UAAAA,SAEpBD,EAAAR,UAAAC,UAAA,SAAUS,GACR,GAAKA,EAGL,OAAOtB,KAAKqB,UAAUE,wBAAwBD,6BAVjDJ,EAAAA,KAAId,KAAA,CAAC,CACJe,KAAM,wDAHCK,EAAAA,yBCoEOC,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUnB,GAAS,IAAMoB,EAAKL,EAAUM,KAAKrB,IAAW,MAAOsB,GAAKJ,EAAOI,IACpF,SAASC,EAASvB,GAAS,IAAMoB,EAAKL,EAAiB,MAAEf,IAAW,MAAOsB,GAAKJ,EAAOI,IACvF,SAASF,EAAKI,GAJlB,IAAexB,EAIawB,EAAOC,KAAOR,EAAQO,EAAOxB,QAJ1CA,EAIyDwB,EAAOxB,MAJhDA,aAAiBc,EAAId,EAAQ,IAAIc,GAAE,SAAUG,GAAWA,EAAQjB,OAIT0B,KAAKP,EAAWI,GAClGH,GAAML,EAAYA,EAAUY,MAAMf,EAASC,GAAc,KAAKQ,oBAItDO,EAAYhB,EAASiB,GACjC,IAAsGC,EAAGC,EAAGC,EAAGC,EAA3GC,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAPJ,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOK,KAAM,GAAIC,IAAK,IAChG,OAAOL,EAAI,CAAEZ,KAAMkB,EAAK,GAAIC,MAASD,EAAK,GAAIE,OAAUF,EAAK,IAAwB,mBAAXG,SAA0BT,EAAES,OAAOC,UAAY,WAAa,OAAOzD,OAAU+C,EACvJ,SAASM,EAAKK,GAAK,OAAO,SAAUC,GAAK,OACzC,SAAcC,GACV,GAAIhB,EAAG,MAAM,IAAIiB,UAAU,mCAC3B,KAAOb,OACH,GAAIJ,EAAI,EAAGC,IAAMC,EAAY,EAARc,EAAG,GAASf,EAAU,OAAIe,EAAG,GAAKf,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAEgB,KAAKjB,GAAI,GAAKA,EAAEV,SAAWW,EAAIA,EAAEgB,KAAKjB,EAAGe,EAAG,KAAKrB,KAAM,OAAOO,EAE3J,OADID,EAAI,EAAGC,IAAGc,EAAK,CAAS,EAARA,EAAG,GAAQd,EAAEhC,QACzB8C,EAAG,IACP,KAAK,EAAG,KAAK,EAAGd,EAAIc,EAAI,MACxB,KAAK,EAAc,OAAXZ,EAAEC,QAAgB,CAAEnC,MAAO8C,EAAG,GAAIrB,MAAM,GAChD,KAAK,EAAGS,EAAEC,QAASJ,EAAIe,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKZ,EAAEI,IAAIW,MAAOf,EAAEG,KAAKY,MAAO,SACxC,QACI,KAAMjB,EAAIE,EAAEG,MAAML,EAAIA,EAAEkB,OAAS,GAAKlB,EAAEA,EAAEkB,OAAS,KAAkB,IAAVJ,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEZ,EAAI,EAAG,SACjG,GAAc,IAAVY,EAAG,MAAcd,GAAMc,EAAG,GAAKd,EAAE,IAAMc,EAAG,GAAKd,EAAE,IAAM,CAAEE,EAAEC,MAAQW,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYZ,EAAEC,MAAQH,EAAE,GAAI,CAAEE,EAAEC,MAAQH,EAAE,GAAIA,EAAIc,EAAI,MAC7D,GAAId,GAAKE,EAAEC,MAAQH,EAAE,GAAI,CAAEE,EAAEC,MAAQH,EAAE,GAAIE,EAAEI,IAAIa,KAAKL,GAAK,MACvDd,EAAE,IAAIE,EAAEI,IAAIW,MAChBf,EAAEG,KAAKY,MAAO,SAEtBH,EAAKjB,EAAKmB,KAAKpC,EAASsB,GAC1B,MAAOZ,GAAKwB,EAAK,CAAC,EAAGxB,GAAIS,EAAI,UAAeD,EAAIE,EAAI,EACtD,GAAY,EAARc,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAE9C,MAAO8C,EAAG,GAAKA,EAAG,QAAK,EAAQrB,MAAM,GArB9BL,CAAK,CAACwB,EAAGC,MAyBhCO,OAAOC,gBAwBpBC,EAAOC,EAAGX,GACtB,IAAIY,EAAsB,mBAAXd,QAAyBa,EAAEb,OAAOC,UACjD,IAAKa,EAAG,OAAOD,EACf,IAAmBE,EAAYnC,EAA3BoC,EAAIF,EAAER,KAAKO,GAAOI,EAAK,GAC3B,IACI,WAAc,IAANf,GAAgBA,KAAM,MAAQa,EAAIC,EAAErC,QAAQI,MAAMkC,EAAGR,KAAKM,EAAEzD,OAExE,MAAO4D,GAAStC,EAAI,CAAEsC,MAAOA,WAEzB,IACQH,IAAMA,EAAEhC,OAAS+B,EAAIE,EAAU,SAAIF,EAAER,KAAKU,WAExC,GAAIpC,EAAG,MAAMA,EAAEsC,OAE7B,OAAOD,EAgEX,MAAyBP,OAAOC,gBAkBhBQ,EAAuBC,EAAUC,EAAOC,EAAMlC,GAC1D,GAAa,MAATkC,IAAiBlC,EAAG,MAAM,IAAIiB,UAAU,iDAC5C,GAAqB,mBAAVgB,EAAuBD,IAAaC,IAAUjC,GAAKiC,EAAME,IAAIH,GAAW,MAAM,IAAIf,UAAU,4EACvG,MAAgB,MAATiB,EAAelC,EAAa,MAATkC,EAAelC,EAAEkB,KAAKc,GAAYhC,EAAIA,EAAE9B,MAAQ+D,EAAMG,IAAIJ,SC7NtF,WAAA,IAAAK,EAAAjF,KACAkF,EAAAC,IAAAnF,MAAa,SAACc,GAAkB,OAAAA,KAEhCd,KAAAoF,QAAU,SAACC,GAAgB,OAAAC,EAAAA,QAAID,IAE/BrF,KAAAuF,cAAgB,SAAIC,EAAYH,GAC9B,OAAOG,EAAMC,QAAO,SAACC,EAAKC,GAAkC,OAAvBD,EAAIC,EAAKN,IAAQM,EAAaD,IAAQ,KAG7E1F,KAAA4F,qBAAuB,SAACC,SAClBC,EAAqB,QAAlBC,EAAGF,MAAAA,OAAK,EAALA,EAAOG,kBAAQ,IAAAD,EAAAA,EAAM,GAY/B,OADAD,GADAA,GADAA,GADAA,GADAA,GADAA,GADAA,GADAA,GADAA,GADAA,GADAA,EAAMA,EAAIE,WAAWC,eACXC,QAAQ,qCAAsC,MAC9CA,QAAQ,yBAA0B,MAClCA,QAAQ,aAAc,MACtBA,QAAQ,qCAAsC,MAC9CA,QAAQ,yBAA0B,MAClCA,QAAQ,aAAc,MACtBA,QAAQ,KAAM,MACdA,QAAQ,yFAA0F,MAClGA,QAAQ,OAAQ,MAChBC,QAIZnG,KAAAoG,eAAiB,SAACC,EAAeC,GAC/B,QAD+B,IAAAA,IAAAA,EAAA,IAAmBC,OAC7CA,KAAKC,OAAOH,GACf,MAAO,GAET,IAAKE,KAAKC,OAAOF,GACf,MAAO,GAET,IAAMG,EAAO,IAAIF,KAAKF,GAEhBK,EAAc,IACdC,EAAYD,KACZE,EAAWD,MACXE,EAAaD,OACbE,EAAYF,QACZG,EANK,IAAIR,KAAKD,GAMDU,UAAYP,EAAKO,UAEpC,OAAID,EAAUL,EACFO,KAAKC,MAAMH,EAAU,KAAK,IAAIpC,EAAAM,EAAAC,GAAApB,KAAAmB,EAAgB,eAGtD8B,EAAUJ,EACFM,KAAKC,MAAMH,EAAUL,GAAY,IAAI/B,EAAAM,EAAAC,GAAApB,KAAAmB,EAAgB,eAG7D8B,EAAUH,EACFK,KAAKC,MAAMH,EAAUJ,GAAU,IAAIhC,EAAAM,EAAAC,GAAApB,KAAAmB,EAAgB,aAG3D8B,EAAUF,EACFI,KAAKC,MAAMH,EAAUH,GAAS,IAAIjC,EAAAM,EAAAC,GAAApB,KAAAmB,EAAgB,YAG1D8B,EAAUD,EACFG,KAAKC,MAAMH,EAAUF,GAAW,IAAIlC,EAAAM,EAAAC,GAAApB,KAAAmB,EAAgB,cAEtDgC,KAAKC,MAAMH,EAAUD,GAAU,IAAInC,EAAAM,EAAAC,GAAApB,KAAAmB,EAAgB,cAG/DjF,KAAAmH,OAAS,SAACC,GAKR,OAAOC,UAAUF,OAAOC,IAG1BpH,KAAAsH,SAAW,SAACC,EAAkBC,GAC5B,IAAMC,EAAYC,SAASC,cAAc,KACzCF,EAAKH,SAAW,IAAGE,GAAYI,EAAAA,MAC/BH,EAAKI,KAAON,EACZG,SAAS/E,KAAKmF,YAAYL,GAC1BA,EAAKM,QACLL,SAAS/E,KAAKqF,YAAYP,IAG5BzH,KAAAiI,gBAAkB,SAACC,GACjBC,UAAUC,UAAUC,UAAUH,IAGhClI,KAAAsI,UAAY,SAACC,EAAmBf,GAC9B,IAAMgB,EAAU,iBACVC,EAAM,WAGNC,EADOhB,SAASiB,eAAeJ,GAAWK,kBAC1BC,WAAU,GAE1BC,EAAepB,SAASC,cAAc,OAC5CmB,EAAaC,GAAKP,EAClBM,EAAahB,YAAYY,GAEzBhB,SAAS/E,KAAKqG,aAAaF,EAAcpB,SAAS/E,KAAKsG,YACvDvB,SAASwB,cAAc,iBAAiBC,UAAUC,IAAIX,GACtD,IAAMY,EAAQ3B,SAAS2B,MACnB7B,IACFE,SAAS2B,MAAQ7B,GAEnB8B,OAAOC,QACP7B,SAAS2B,MAAQA,EACjB3B,SAASwB,cAAc,iBAAiBC,UAAUK,OAAOf,GACzD,IAAMgB,EAAU/B,SAASiB,eAAeH,GACxB,OAAZiB,GACFA,EAAQC,WAAW1B,YAAYyB,IAInCzJ,KAAA2J,cAAgB,SAAgBC,EAAwFC,GAAwB,OAAApI,EAAAwD,OAAA,OAAA,GAAA,6EAC1I6E,EAAWD,GAAmB,IAC9BE,EAAa,EACbC,EAAQ,EACRxE,EAAa,oBAEH,MAAA,CAAA,EAAMoE,EAAKE,EAAUC,WACjC,OADME,EAAMC,EAAAhH,OACRiH,MAAMF,MAAAA,OAAG,EAAHA,EAAKzE,SAAUyE,MAAAA,OAAG,EAAHA,EAAKG,OAAQ,GACpC5E,aDuBJ,IAAK,IAAIf,EAAK,GAAID,EAAI,EAAGA,EAAI6F,UAAUrG,OAAQQ,IAC3CC,EAAKA,EAAG6F,OAAOlG,EAAOiG,UAAU7F,KACpC,OAAOC,ECzBE8F,CAAO/E,EAAUyE,EAAIzE,OAC1BwE,GAASC,EAAIzE,MAAMxB,OACnB+F,IACIC,GAASC,EAAIG,SAAmB,QAAVrE,EAACkE,EAAIzE,aAAK,IAAAO,OAAA,EAAAA,EAAE/B,QACpC,CAAA,EAAOwB,UAGT,CAAA,EAAO,2JAjIdgF,EAAAA,WAAUpK,KAAA,CAAC,CACVqK,WAAY,kECOZ,SAAAC,EAAoBC,GAAA3K,KAAA2K,eAAAA,EALZ3K,KAAA4K,UAAY,GACZ5K,KAAA6K,UAA6B,GAAjB7K,KAAK4K,UACjB5K,KAAA8K,QAA2B,GAAjB9K,KAAK6K,UACf7K,KAAA+K,OAAwB,GAAf/K,KAAK8K,QACd9K,KAAAgL,SAA0B,IAAfhL,KAAK8K,eAExBJ,EAAA9J,UAAAC,UAAA,SAAUC,EAAYmK,EAAgBC,GAAtC,IAAAjG,EAAAjF,KACE,OAAKuG,KAAKC,OAAO1F,GAGZoK,EAGDjE,KAAKC,QAAO,IAAIX,MAAOS,UAAY,IAAIT,KAAKzF,GAAOkG,WAAa,KAAQ,EACnEmE,EAAAA,GAAG5E,KAAK6E,SAAStK,EAAOmK,IAE1BI,EAAAA,SAAS,KAAMC,KAAKC,EAAAA,KAAI,WAC7B,IAAMC,EAAgBvE,KAAKC,QAAO,IAAIX,MAAOS,UAAY,IAAIT,KAAKzF,GAAOkG,WAAa,KACtF,MAAkB,UAAdkE,GAAyBM,EAAgBvG,EAAK+F,UAGhC,QAAdE,GAAuBM,EAAgBvG,EAAK8F,QAG9B,SAAdG,GAAwBM,EAAgBvG,EAAK6F,SAG/B,WAAdI,GAA0BM,EAAgBvG,EAAK4F,WAGjC,WAAdK,GAA0BM,EAAgBvG,EAAK2F,UAX1C3F,EAAK0F,eAAevE,eAAetF,GAcrCyF,KAAK6E,SAAStK,EAAOmK,OAtBrBE,EAAAA,GAAG5E,KAAK6E,SAAStK,EAAOmK,IAHxBE,EAAAA,GAAG,gCAZfjK,EAAAA,KAAId,KAAA,CAAC,CACJe,KAAM,+DAFCsK,WCoCT,iCA5BCC,EAAAA,SAAQtL,KAAA,CAAC,CACRuL,QAAS,CACPC,EAAAA,cAEFC,aAAc,CACZC,EACAC,EACAC,EACAC,EACAtL,EACAS,EACAsJ,GAEFwB,QAAS,CACPJ,EACAC,EACAC,EACAC,EACAtL,EACAS,EACAsJ,GAEFyB,UAAW,CACTxL,EACAS,EACAsJ","sourcesContent":["\r\nimport { Directive, ViewContainerRef, TemplateRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdDesktop]'\r\n})\r\nexport class SdDesktopDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isDesktop()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobile]'\r\n})\r\nexport class SdMobileDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdMobileTablet]'\r\n})\r\nexport class SdMobileTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isMobile() || deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","\r\nimport { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Directive({\r\n selector: '[sdTablet]'\r\n})\r\nexport class SdTabletDirective {\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainerRef: ViewContainerRef,\r\n deviceService: DeviceDetectorService,\r\n ) {\r\n if (deviceService.isTablet()) {\r\n this.viewContainerRef.createEmbeddedView(this.templateRef);\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'sdCurrency',\r\n})\r\nexport class SdCurrencyPipe implements PipeTransform {\r\n transform(value: any, digits?: number) {\r\n return Number.toVNCurrency(value, digits);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safeHtml',\r\n})\r\nexport class SdSafeHtmlPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n transform(html: string) {\r\n if (!html) {\r\n return undefined;\r\n }\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","/*! *****************************************************************************\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 { Injectable } from '@angular/core';\r\n// import PDFMerger from 'pdf-merger-js/browser';\r\nimport md5 from 'md5';\r\nimport * as uuid from 'uuid';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdUtilityService {\r\n constructor() { }\r\n #translate = (value: string) => value;\r\n\r\n hashMD5 = (key: string) => md5(key);\r\n\r\n arrayToObject = <T>(items: T[], key: string): { [key: string]: T } => {\r\n return items.reduce((obj, item) => { obj[item[key]] = item; return obj; }, {});\r\n }\r\n\r\n changeAliasLowerCase = (alias: string) => {\r\n let str = 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\n timeDifference = (previous: any, current: any = new Date()) => {\r\n if (!Date.isDate(previous)) {\r\n return '';\r\n }\r\n if (!Date.isDate(current)) {\r\n return '';\r\n }\r\n const from = new Date(previous);\r\n const to = new Date(current);\r\n const msPerMinute = 60 * 1000;\r\n const msPerHour = msPerMinute * 60;\r\n const msPerDay = msPerHour * 24;\r\n const msPerMonth = msPerDay * 30;\r\n const msPerYear = msPerDay * 365;\r\n const elapsed = to.getTime() - from.getTime();\r\n\r\n if (elapsed < msPerMinute) {\r\n return `${Math.round(elapsed / 1000)} ${this.#translate('seconds ago')}`;\r\n }\r\n\r\n if (elapsed < msPerHour) {\r\n return `${Math.round(elapsed / msPerMinute)} ${this.#translate('minutes ago')}`;\r\n }\r\n\r\n if (elapsed < msPerDay) {\r\n return `${Math.round(elapsed / msPerHour)} ${this.#translate('hours ago')}`;\r\n }\r\n\r\n if (elapsed < msPerMonth) {\r\n return `${Math.round(elapsed / msPerDay)} ${this.#translate('days ago')}`;\r\n }\r\n\r\n if (elapsed < msPerYear) {\r\n return `${Math.round(elapsed / msPerMonth)} ${this.#translate('months ago')}`;\r\n }\r\n return `${Math.round(elapsed / msPerYear)} ${this.#translate('years ago')}`;\r\n }\r\n\r\n upload = (option?: {\r\n extensions?: string[],\r\n maxSizeInMb?: number,\r\n validator?: (fileName: string) => string\r\n }): Promise<File> => {\r\n return SdUtility.upload(option);\r\n }\r\n\r\n download = (filePath: string, fileName?: string) => {\r\n const link: any = document.createElement('a');\r\n link.download = `${fileName || uuid.v4()}`;\r\n link.href = filePath;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n\r\n copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n }\r\n\r\n printHtml = (elementId: string, fileName?: string) => {\r\n const printId = `sdPrintSection`;\r\n const div = 'sd-print';\r\n\r\n const elem = document.getElementById(elementId).firstElementChild;\r\n const domClone = elem.cloneNode(true);\r\n\r\n const printSection = document.createElement('div');\r\n printSection.id = printId;\r\n printSection.appendChild(domClone);\r\n\r\n document.body.insertBefore(printSection, document.body.firstChild);\r\n document.querySelector('body app-root').classList.add(div);\r\n const title = document.title;\r\n if (fileName) {\r\n document.title = fileName;\r\n }\r\n window.print();\r\n document.title = title;\r\n document.querySelector('body app-root').classList.remove(div);\r\n const oldElem = document.getElementById(printId);\r\n if (oldElem !== null) {\r\n oldElem.parentNode.removeChild(oldElem); // oldElem.remove() not supported by IE\r\n }\r\n }\r\n\r\n allWithPaging = async <T = any>(func: (pageSize: number, pageNumber: number) => Promise<{ items: T[], total: number }>, defaultPageSize?: number): Promise<T[]> => {\r\n let pageSize = defaultPageSize || 1000;\r\n let pageNumber = 0;\r\n let count = 0;\r\n let items: T[] = [];\r\n while (true) {\r\n const res = await func(pageSize, pageNumber);\r\n if (Array(res?.items) && res?.total > 0) {\r\n items = [...items, ...res.items];\r\n count += res.items.length;\r\n pageNumber++;\r\n if (count >= res.total || !res.items?.length) {\r\n return items;\r\n }\r\n } else {\r\n return [];\r\n }\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { interval, Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { SdUtilityService } from '../utility.service';\r\n@Pipe({\r\n name: 'sdTimeDifferent',\r\n})\r\nexport class SdTimeDifferentPipe implements PipeTransform {\r\n private maxSecond = 60;\r\n private maxMinute = this.maxSecond * 60;\r\n private maxHour = this.maxMinute * 24;\r\n private maxDay = this.maxHour * 30;\r\n private maxMonth = this.maxHour * 365;\r\n constructor(private utilityService: SdUtilityService) { }\r\n transform(value: any, format: string, different: 'second' | 'minute' | 'hour' | 'day' | 'month'): Observable<string> {\r\n if (!Date.isDate(value)) {\r\n return of(null);\r\n }\r\n if (!different) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n if (Math.round((new Date().getTime() - new Date(value).getTime()) / 1000) < 0) {\r\n return of(Date.toFormat(value, format));\r\n }\r\n return interval(1000).pipe(map(() => {\r\n const timeDifferent = Math.round((new Date().getTime() - new Date(value).getTime()) / 1000);\r\n if (different === 'month' && timeDifferent < this.maxMonth) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'day' && timeDifferent < this.maxDay) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'hour' && timeDifferent < this.maxHour) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'minute' && timeDifferent < this.maxMinute) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n if (different === 'second' && timeDifferent < this.maxSecond) {\r\n return this.utilityService.timeDifference(value);\r\n }\r\n return Date.toFormat(value, format);\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdDesktopDirective } from './directives/desktop.directive';\r\nimport { SdMobileDirective } from './directives/mobile.directive';\r\nimport { SdMobileTabletDirective } from './directives/mobile-tablet.directive';\r\nimport { SdTabletDirective } from './directives/tablet.directive';\r\n\r\nimport { SdCurrencyPipe } from './pipes/currency.pipe';\r\nimport { SdSafeHtmlPipe } from './pipes/safe-html.pipe';\r\nimport { SdTimeDifferentPipe } from './pipes/time-different.pipe';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n declarations: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n exports: [\r\n SdDesktopDirective,\r\n SdMobileTabletDirective,\r\n SdMobileDirective,\r\n SdTabletDirective,\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ],\r\n providers: [\r\n SdCurrencyPipe,\r\n SdSafeHtmlPipe,\r\n SdTimeDifferentPipe\r\n ]\r\n})\r\nexport class SdUtilityModule {}\r\n"]}
|
|
@@ -161,6 +161,9 @@ export class SdCellViewPipe {
|
|
|
161
161
|
if (typeof (click) === 'function') {
|
|
162
162
|
result.click = () => click(value, rowData);
|
|
163
163
|
}
|
|
164
|
+
if (result.display.value === null) {
|
|
165
|
+
result.display.value = undefined;
|
|
166
|
+
}
|
|
164
167
|
return result;
|
|
165
168
|
});
|
|
166
169
|
}
|
|
@@ -176,4 +179,4 @@ SdCellViewPipe.ctorParameters = () => [
|
|
|
176
179
|
{ type: SdUtilityService },
|
|
177
180
|
{ type: SdColumnValuesPipe }
|
|
178
181
|
];
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC12aWV3LnBpcGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2dyaWQtbWF0ZXJpYWwvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL2NlbGwtdmlldy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJMUQsTUFBTSxPQUFPLGNBQWM7SUFPekIsWUFDRSxhQUFvQyxFQUM1QixjQUFnQyxFQUNoQyxnQkFBb0M7UUFEcEMsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBQ2hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFUOUMscUJBQWEsRUFBRSxFQUFDO1FBQ2hCLHFCQUFhLDJDQUFrQixFQUFFLEVBQUM7UUFDbEMsbUJBQVcsMkNBQWtCLEVBQUUsRUFBQztRQUNoQyxrQkFBVSx5Q0FBZ0IsRUFBRSxFQUFDO1FBQzdCLG9CQUFZLHlDQUFnQixHQUFHLEVBQUM7UUFDaEMsNEJBQW9CLEtBQUssRUFBQztRQUt4Qix1QkFBQSxJQUFJLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsRUFBQztJQUN0RCxDQUFDO0lBQ0ssU0FBUyxDQUNiLEtBQVUsRUFDVixPQUFZLEVBQ1osTUFBNEIsRUFDNUIsVUFBZ0M7OztZQUNoQyxNQUFNLEVBQUUsY0FBYyxFQUFFLEdBQUcsVUFBVSxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEdBQUcs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bXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkVXRpbGl0eVNlcnZpY2UgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3V0aWxpdHknO1xyXG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tICduZ3gtZGV2aWNlLWRldGVjdG9yJztcclxuaW1wb3J0IHsgU2RDZWxsVmlldyB9IGZyb20gJy4uL21vZGVscy9ncmlkLWNlbGwubW9kZWwnO1xyXG5pbXBvcnQgeyBTZEdyaWRNYXRlcmlhbENvbHVtbiB9IGZyb20gJy4uL21vZGVscy9ncmlkLWNvbHVtbi5tb2RlbCc7XHJcbmltcG9ydCB7IFNkR3JpZE1hdGVyaWFsT3B0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL2dyaWQtb3B0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgU2RDb2x1bW5WYWx1ZXNQaXBlIH0gZnJvbSAnLi9jb2x1bW4tdmFsdWVzLnBpcGUnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2NlbGxWaWV3J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RDZWxsVmlld1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAjbWF4U2Vjb25kID0gNjA7XHJcbiAgI21heE1pbnV0ZSA9IHRoaXMuI21heFNlY29uZCAqIDYwO1xyXG4gICNtYXhIb3VyID0gdGhpcy4jbWF4TWludXRlICogMjQ7XHJcbiAgI21heERheSA9IHRoaXMuI21heEhvdXIgKiAzMDtcclxuICAjbWF4TW9udGggPSB0aGlzLiNtYXhIb3VyICogMzY1O1xyXG4gICNpc01vYmlsZU9yVGFibGV0ID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VEZXRlY3RvclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHV0aWxpdHlTZXJ2aWNlOiBTZFV0aWxpdHlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb2x1bW5WYWx1ZXNQaXBlOiBTZENvbHVtblZhbHVlc1BpcGUpIHtcclxuICAgIHRoaXMuI2lzTW9iaWxlT3JUYWJsZXQgPSAhZGV2aWNlU2VydmljZS5pc0Rlc2t0b3AoKTtcclxuICB9XHJcbiAgYXN5bmMgdHJhbnNmb3JtKFxyXG4gICAgdmFsdWU6IGFueSxcclxuICAgIHJvd0RhdGE6IGFueSxcclxuICAgIGNvbHVtbjogU2RHcmlkTWF0ZXJpYWxDb2x1bW4sXHJcbiAgICBncmlkT3B0aW9uOiBTZEdyaWRNYXRlcmlhbE9wdGlvbik6IFByb21pc2U8U2RDZWxsVmlldz4ge1xyXG4gICAgY29uc3QgeyBkaXNwbGF5T25FbXB0eSB9ID0gZ3JpZE9wdGlvbjtcclxuICAgIGNvbnN0IHsgYWxpZ24sIGNsaWNrLCB0b29sdGlwLCBodG1sVGVtcGxhdGUsIHRyYW5zZm9ybSB9ID0gY29sdW1uO1xyXG4gICAgY29uc3QgcmVzdWx0OiBTZENlbGxWaWV3ID0ge1xyXG4gICAgICBiYWRnZTogbnVsbCxcclxuICAgICAgdG9vbHRpcDogbnVsbCxcclxuICAgICAgZGlzcGxheToge1xyXG4gICAgICAgIGFsaWduOiBhbGlnbiB8fCAoY29sdW1uLnR5cGUgPT09ICdudW1iZXInID8gJ3JpZ2h0JyA6ICdsZWZ0JyksXHJcbiAgICAgICAgdmFsdWVcclxuICAgICAgfSxcclxuICAgICAgY2xpY2s6IG51bGxcclxuICAgIH07XHJcbiAgICAvLyBEaXNwbGF5XHJcbiAgICBpZiAodHlwZW9mIChodG1sVGVtcGxhdGUpID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIHJlc3VsdC5kaXNwbGF5Lmhhc0h0bWwgPSB0cnVlO1xyXG4gICAgICByZXN1bHQuZGlzcGxheS5odG1sID0gaHRtbFRlbXBsYXRlKHZhbHVlLCByb3dEYXRhLCB0aGlzLiNpc01vYmlsZU9yVGFibGV0KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ2RhdGV0aW1lJyB8fCBjb2x1bW4udHlwZSA9PT0gJ2RhdGUnIHx8IGNvbHVtbi50eXBlID09PSAndGltZScpIHtcclxuICAgICAgICBjb25zdCB7IHRyYW5zZm9ybURhdGUgfSA9IGNvbHVtbjtcclxuICAgICAgICBpZiAodHJhbnNmb3JtRGF0ZSkge1xyXG4gICAgICAgICAgdmFsdWUgPSB0cmFuc2Zvcm1EYXRlKHZhbHVlLCByb3dEYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHR5cGVvZiAodHJhbnNmb3JtKSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgIGNvbnN0IHZhbCA9IHRyYW5zZm9ybSh2YWx1ZSwgcm93RGF0YSk7XHJcbiAgICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIFByb21pc2UpIHtcclxuICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gYXdhaXQgdmFsO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IHZhbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKGNvbHVtbi50eXBlID09PSAnZGF0ZScgfHwgY29sdW1uLnR5cGUgPT09ICdkYXRldGltZScpIHtcclxuICAgICAgICAgIGNvbnN0IHsgb3B0aW9uIH0gPSBjb2x1bW47XHJcbiAgICAgICAgICBjb25zdCBzZWNvbmRzID0gTWF0aC5yb3VuZCgobmV3IERhdGUoKS5nZXRUaW1lKCkgLSBuZXcgRGF0ZSh2YWx1ZSkuZ2V0VGltZSgpKSAvIDEwMDApO1xyXG4gICAgICAgICAgaWYgKG9wdGlvbj8udGltZURpZmZlcmVudCA9PT0gJ21vbnRoJyAmJiBzZWNvbmRzIDwgdGhpcy4jbWF4TW9udGgpIHtcclxuICAgICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLnRpbWVEaWZmZXJlbmNlKHZhbHVlKTtcclxuICAgICAgICAgICAgcmVzdWx0LnRvb2x0aXAgPSBEYXRlLnRvRm9ybWF0KHZhbHVlLCBjb2x1bW4udHlwZSA9PT0gJ2RhdGUnID8gJ2RkL01NL3l5eXknIDogJ2RkL01NL3l5eXkgSEg6bW0nKTtcclxuICAgICAgICAgIH0gZWxzZSBpZiAob3B0aW9uPy50aW1lRGlmZmVyZW50ID09PSAnZGF5JyAmJiBzZWNvbmRzIDwgdGhpcy4jbWF4RGF5KSB7XHJcbiAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gdGhpcy51dGlsaXR5U2VydmljZS50aW1lRGlmZmVyZW5jZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJlc3VsdC50b29sdGlwID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgY29sdW1uLnR5cGUgPT09ICdkYXRlJyA/ICdkZC9NTS95eXl5JyA6ICdkZC9NTS95eXl5IEhIOm1tJyk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbj8udGltZURpZmZlcmVudCA9PT0gJ2hvdXInICYmIHNlY29uZHMgPCB0aGlzLiNtYXhIb3VyKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gdGhpcy51dGlsaXR5U2VydmljZS50aW1lRGlmZmVyZW5jZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJlc3VsdC50b29sdGlwID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgY29sdW1uLnR5cGUgPT09ICdkYXRlJyA/ICdkZC9NTS95eXl5JyA6ICdkZC9NTS95eXl5IEhIOm1tJyk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbj8udGltZURpZmZlcmVudCA9PT0gJ21pbnV0ZScgJiYgc2Vjb25kcyA8IHRoaXMuI21heE1pbnV0ZSkge1xyXG4gICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UudGltZURpZmZlcmVuY2UodmFsdWUpO1xyXG4gICAgICAgICAgICByZXN1bHQudG9vbHRpcCA9IERhdGUudG9Gb3JtYXQodmFsdWUsIGNvbHVtbi50eXBlID09PSAnZGF0ZScgPyAnZGQvTU0veXl5eScgOiAnZGQvTU0veXl5eSBISDptbScpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChvcHRpb24/LnRpbWVEaWZmZXJlbnQgPT09ICdzZWNvbmQnICYmIHNlY29uZHMgPCB0aGlzLiNtYXhTZWNvbmQpIHtcclxuICAgICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLnRpbWVEaWZmZXJlbmNlKHZhbHVlKTtcclxuICAgICAgICAgICAgcmVzdWx0LnRvb2x0aXAgPSBEYXRlLnRvRm9ybWF0KHZhbHVlLCBjb2x1bW4udHlwZSA9PT0gJ2RhdGUnID8gJ2RkL01NL3l5eXknIDogJ2RkL01NL3l5eXkgSEg6bW0nKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGUgPSBEYXRlLnRvRm9ybWF0KHZhbHVlLCAnZGQvTU0veXl5eScpO1xyXG4gICAgICAgICAgICBjb25zdCB0aW1lID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ0hIOm1tJyk7XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGVUaW1lID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ0hIOm1tJyk7XHJcbiAgICAgICAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ2RhdGV0aW1lJyAmJiB0aW1lICYmIHRpbWUgIT09ICcwMDowMCcpIHtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IGRhdGVUaW1lO1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmhhc0h0bWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmh0bWwgPSBgPHNwYW4gY2xhc3M9XCJkLWJsb2NrIFQxNFIgdGV4dC1ibGFjazQwMFwiPiR7RGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ0hIOm1tJyl9PC9zcGFuPjxzcGFuIGNsYXNzPVwiZC1ibG9jayBUMTRSXCI+JHtEYXRlLnRvRm9ybWF0KHZhbHVlLCAnZGQvTU0veXl5eScpfTwvc3Bhbj5gO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gZGF0ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoY29sdW1uLnR5cGUgPT09ICd0aW1lJykge1xyXG4gICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSBEYXRlLnRvRm9ybWF0KHZhbHVlLCAnSEg6bW0nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNvbHVtbi50eXBlID09PSAndmFsdWVzJykge1xyXG4gICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSBhd2FpdCB0aGlzLmNvbHVtblZhbHVlc1BpcGUudHJhbnNmb3JtKHZhbHVlLCBjb2x1bW4pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoY29sdW1uLnR5cGUgPT09ICdudW1iZXInICYmIE51bWJlci5pc051bWJlcih2YWx1ZSkpIHtcclxuICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gTnVtYmVyLnRvVk5DdXJyZW5jeSh2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ2Jvb2wnKSB7XHJcbiAgICAgICAgICBjb25zdCB7IG9wdGlvbiB9ID0gY29sdW1uO1xyXG4gICAgICAgICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09ICcnKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gdmFsdWUgPT09IHRydWUgPyAob3B0aW9uPy5kaXNwbGF5T25UcnVlIHx8ICdUcnVlJykgOiAob3B0aW9uPy5kaXNwbGF5T25GYWxzZSB8fCAnRmFsc2UnKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gbnVsbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGRpc3BsYXlPbkVtcHR5KSB7XHJcbiAgICAgICAgbGV0IHZhbHVlcyA9IFtudWxsLCB1bmRlZmluZWQsICcnXTtcclxuICAgICAgICBpZiAodHlwZW9mIChkaXNwbGF5T25FbXB0eSkgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICBjb25zdCB7IGRpc3BsYXksIGVtcHR5VmFsdWVzIH0gPSBkaXNwbGF5T25FbXB0eTtcclxuICAgICAgICAgIHZhbHVlcyA9IFtudWxsLCB1bmRlZmluZWQsICcnLCAuLi5lbXB0eVZhbHVlc107XHJcbiAgICAgICAgICBpZiAodmFsdWVzLmluY2x1ZGVzKHJlc3VsdC5kaXNwbGF5LnZhbHVlKSkge1xyXG4gICAgICAgICAgICBpZiAodHlwZW9mIChkaXNwbGF5KSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmhhc0h0bWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmh0bWwgPSBkaXNwbGF5KHJvd0RhdGEsIGNvbHVtbik7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmVzdWx0LmRpc3BsYXkuaGFzSHRtbCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgcmVzdWx0LmRpc3BsYXkuaHRtbCA9IGA8ZGl2IGNsYXNzPVwiVDE2UiB0ZXh0LWJsYWNrNDAwXCI+LS08L2Rpdj5gO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmICh2YWx1ZXMuaW5jbHVkZXMocmVzdWx0LmRpc3BsYXkudmFsdWUpKSB7XHJcbiAgICAgICAgICAgIGlmICh0eXBlb2YgKGRpc3BsYXlPbkVtcHR5KSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmhhc0h0bWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmh0bWwgPSBkaXNwbGF5T25FbXB0eShyb3dEYXRhLCBjb2x1bW4pO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmhhc0h0bWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmh0bWwgPSBgPGRpdiBjbGFzcz1cIlQxNlIgdGV4dC1ibGFjazQwMFwiPi0tPC9kaXY+YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gQmFkZ2VcclxuICAgIGlmICgoY29sdW1uLnR5cGUgPT09ICdzdHJpbmcnIHx8IGNvbHVtbi50eXBlID09PSAnbnVtYmVyJyB8fCBjb2x1bW4udHlwZSA9PT0gJ3ZhbHVlcycpICYmIGNvbHVtbi5iYWRnZSkge1xyXG4gICAgICByZXN1bHQuYmFkZ2UgPSB7XHJcbiAgICAgICAgdHlwZTogIWNvbHVtbj8uYmFkZ2VUeXBlID8gJ3JvdW5kJyA6IGNvbHVtbi5iYWRnZVR5cGUsXHJcbiAgICAgICAgY29sb3I6IGNvbHVtbi5iYWRnZSh2YWx1ZSwgcm93RGF0YSksXHJcbiAgICAgICAgaWNvbjogY29sdW1uPy5iYWRnZUljb24/Lih2YWx1ZSwgcm93RGF0YSlcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSBpZiAoY29sdW1uLnR5cGUgPT09ICdib29sJykge1xyXG4gICAgICByZXN1bHQuYmFkZ2UgPSB7XHJcbiAgICAgICAgdHlwZTogIWNvbHVtbj8uYmFkZ2VUeXBlID8gJ3JvdW5kJyA6IGNvbHVtbi5iYWRnZVR5cGUsXHJcbiAgICAgICAgY29sb3I6ICEhdmFsdWUgPyAnc3VjY2VzcycgOiAnZGFuZ2VyJyxcclxuICAgICAgICBpY29uOiBudWxsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICAvLyBUb29sdGlwXHJcbiAgICBpZiAodHlwZW9mICh0b29sdGlwKSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICByZXN1bHQudG9vbHRpcCA9IHRvb2x0aXAodmFsdWUsIHJvd0RhdGEpO1xyXG4gICAgfVxyXG4gICAgLy8gQ2xpY2thYmxlXHJcbiAgICBpZiAodHlwZW9mIChjbGljaykgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgcmVzdWx0LmNsaWNrID0gKCkgPT4gY2xpY2sodmFsdWUsIHJvd0RhdGEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbn1cclxuIl19
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC12aWV3LnBpcGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2dyaWQtbWF0ZXJpYWwvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL2NlbGwtdmlldy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJMUQsTUFBTSxPQUFPLGNBQWM7SUFPekIsWUFDRSxhQUFvQyxFQUM1QixjQUFnQyxFQUNoQyxnQkFBb0M7UUFEcEMsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBQ2hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFUOUMscUJBQWEsRUFBRSxFQUFDO1FBQ2hCLHFCQUFhLDJDQUFrQixFQUFFLEVBQUM7UUFDbEMsbUJBQVcsMkNBQWtCLEVBQUUsRUFBQztRQUNoQyxrQkFBVSx5Q0FBZ0IsRUFBRSxFQUFDO1FBQzdCLG9CQUFZLHlDQUFnQixHQUFHLEVBQUM7UUFDaEMsNEJBQW9CLEtBQUssRUFBQztRQUt4Qix1QkFBQSxJQUFJLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsRUFBQztJQUN0RCxDQUFDO0lBQ0ssU0FBUyxDQUNiLEtBQVUsRUFDVixPQUFZLEVBQ1osTUFBNEIsRUFDNUIsVUFBZ0M7OztZQUNoQyxNQUFNLEVBQUUsY0FBYyxFQUFFLEdBQUcsVUFBVSxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEdBQUcs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QXhKRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFVBQVU7YUFDakI7OztZQVBRLHFCQUFxQjtZQURyQixnQkFBZ0I7WUFLaEIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS91dGlsaXR5JztcclxuaW1wb3J0IHsgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlIH0gZnJvbSAnbmd4LWRldmljZS1kZXRlY3Rvcic7XHJcbmltcG9ydCB7IFNkQ2VsbFZpZXcgfSBmcm9tICcuLi9tb2RlbHMvZ3JpZC1jZWxsLm1vZGVsJztcclxuaW1wb3J0IHsgU2RHcmlkTWF0ZXJpYWxDb2x1bW4gfSBmcm9tICcuLi9tb2RlbHMvZ3JpZC1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZEdyaWRNYXRlcmlhbE9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9ncmlkLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IFNkQ29sdW1uVmFsdWVzUGlwZSB9IGZyb20gJy4vY29sdW1uLXZhbHVlcy5waXBlJztcclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdjZWxsVmlldydcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkQ2VsbFZpZXdQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgI21heFNlY29uZCA9IDYwO1xyXG4gICNtYXhNaW51dGUgPSB0aGlzLiNtYXhTZWNvbmQgKiA2MDtcclxuICAjbWF4SG91ciA9IHRoaXMuI21heE1pbnV0ZSAqIDI0O1xyXG4gICNtYXhEYXkgPSB0aGlzLiNtYXhIb3VyICogMzA7XHJcbiAgI21heE1vbnRoID0gdGhpcy4jbWF4SG91ciAqIDM2NTtcclxuICAjaXNNb2JpbGVPclRhYmxldCA9IGZhbHNlO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZGV2aWNlU2VydmljZTogRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1dGlsaXR5U2VydmljZTogU2RVdGlsaXR5U2VydmljZSxcclxuICAgIHByaXZhdGUgY29sdW1uVmFsdWVzUGlwZTogU2RDb2x1bW5WYWx1ZXNQaXBlKSB7XHJcbiAgICB0aGlzLiNpc01vYmlsZU9yVGFibGV0ID0gIWRldmljZVNlcnZpY2UuaXNEZXNrdG9wKCk7XHJcbiAgfVxyXG4gIGFzeW5jIHRyYW5zZm9ybShcclxuICAgIHZhbHVlOiBhbnksXHJcbiAgICByb3dEYXRhOiBhbnksXHJcbiAgICBjb2x1bW46IFNkR3JpZE1hdGVyaWFsQ29sdW1uLFxyXG4gICAgZ3JpZE9wdGlvbjogU2RHcmlkTWF0ZXJpYWxPcHRpb24pOiBQcm9taXNlPFNkQ2VsbFZpZXc+IHtcclxuICAgIGNvbnN0IHsgZGlzcGxheU9uRW1wdHkgfSA9IGdyaWRPcHRpb247XHJcbiAgICBjb25zdCB7IGFsaWduLCBjbGljaywgdG9vbHRpcCwgaHRtbFRlbXBsYXRlLCB0cmFuc2Zvcm0gfSA9IGNvbHVtbjtcclxuICAgIGNvbnN0IHJlc3VsdDogU2RDZWxsVmlldyA9IHtcclxuICAgICAgYmFkZ2U6IG51bGwsXHJcbiAgICAgIHRvb2x0aXA6IG51bGwsXHJcbiAgICAgIGRpc3BsYXk6IHtcclxuICAgICAgICBhbGlnbjogYWxpZ24gfHwgKGNvbHVtbi50eXBlID09PSAnbnVtYmVyJyA/ICdyaWdodCcgOiAnbGVmdCcpLFxyXG4gICAgICAgIHZhbHVlXHJcbiAgICAgIH0sXHJcbiAgICAgIGNsaWNrOiBudWxsXHJcbiAgICB9O1xyXG4gICAgLy8gRGlzcGxheVxyXG4gICAgaWYgKHR5cGVvZiAoaHRtbFRlbXBsYXRlKSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICByZXN1bHQuZGlzcGxheS5oYXNIdG1sID0gdHJ1ZTtcclxuICAgICAgcmVzdWx0LmRpc3BsYXkuaHRtbCA9IGh0bWxUZW1wbGF0ZSh2YWx1ZSwgcm93RGF0YSwgdGhpcy4jaXNNb2JpbGVPclRhYmxldCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoY29sdW1uLnR5cGUgPT09ICdkYXRldGltZScgfHwgY29sdW1uLnR5cGUgPT09ICdkYXRlJyB8fCBjb2x1bW4udHlwZSA9PT0gJ3RpbWUnKSB7XHJcbiAgICAgICAgY29uc3QgeyB0cmFuc2Zvcm1EYXRlIH0gPSBjb2x1bW47XHJcbiAgICAgICAgaWYgKHRyYW5zZm9ybURhdGUpIHtcclxuICAgICAgICAgIHZhbHVlID0gdHJhbnNmb3JtRGF0ZSh2YWx1ZSwgcm93RGF0YSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0eXBlb2YgKHRyYW5zZm9ybSkgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICBjb25zdCB2YWwgPSB0cmFuc2Zvcm0odmFsdWUsIHJvd0RhdGEpO1xyXG4gICAgICAgIGlmICh2YWwgaW5zdGFuY2VvZiBQcm9taXNlKSB7XHJcbiAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IGF3YWl0IHZhbDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSB2YWw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ2RhdGUnIHx8IGNvbHVtbi50eXBlID09PSAnZGF0ZXRpbWUnKSB7XHJcbiAgICAgICAgICBjb25zdCB7IG9wdGlvbiB9ID0gY29sdW1uO1xyXG4gICAgICAgICAgY29uc3Qgc2Vjb25kcyA9IE1hdGgucm91bmQoKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC0gbmV3IERhdGUodmFsdWUpLmdldFRpbWUoKSkgLyAxMDAwKTtcclxuICAgICAgICAgIGlmIChvcHRpb24/LnRpbWVEaWZmZXJlbnQgPT09ICdtb250aCcgJiYgc2Vjb25kcyA8IHRoaXMuI21heE1vbnRoKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gdGhpcy51dGlsaXR5U2VydmljZS50aW1lRGlmZmVyZW5jZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJlc3VsdC50b29sdGlwID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgY29sdW1uLnR5cGUgPT09ICdkYXRlJyA/ICdkZC9NTS95eXl5JyA6ICdkZC9NTS95eXl5IEhIOm1tJyk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKG9wdGlvbj8udGltZURpZmZlcmVudCA9PT0gJ2RheScgJiYgc2Vjb25kcyA8IHRoaXMuI21heERheSkge1xyXG4gICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UudGltZURpZmZlcmVuY2UodmFsdWUpO1xyXG4gICAgICAgICAgICByZXN1bHQudG9vbHRpcCA9IERhdGUudG9Gb3JtYXQodmFsdWUsIGNvbHVtbi50eXBlID09PSAnZGF0ZScgPyAnZGQvTU0veXl5eScgOiAnZGQvTU0veXl5eSBISDptbScpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChvcHRpb24/LnRpbWVEaWZmZXJlbnQgPT09ICdob3VyJyAmJiBzZWNvbmRzIDwgdGhpcy4jbWF4SG91cikge1xyXG4gICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UudGltZURpZmZlcmVuY2UodmFsdWUpO1xyXG4gICAgICAgICAgICByZXN1bHQudG9vbHRpcCA9IERhdGUudG9Gb3JtYXQodmFsdWUsIGNvbHVtbi50eXBlID09PSAnZGF0ZScgPyAnZGQvTU0veXl5eScgOiAnZGQvTU0veXl5eSBISDptbScpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChvcHRpb24/LnRpbWVEaWZmZXJlbnQgPT09ICdtaW51dGUnICYmIHNlY29uZHMgPCB0aGlzLiNtYXhNaW51dGUpIHtcclxuICAgICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLnRpbWVEaWZmZXJlbmNlKHZhbHVlKTtcclxuICAgICAgICAgICAgcmVzdWx0LnRvb2x0aXAgPSBEYXRlLnRvRm9ybWF0KHZhbHVlLCBjb2x1bW4udHlwZSA9PT0gJ2RhdGUnID8gJ2RkL01NL3l5eXknIDogJ2RkL01NL3l5eXkgSEg6bW0nKTtcclxuICAgICAgICAgIH0gZWxzZSBpZiAob3B0aW9uPy50aW1lRGlmZmVyZW50ID09PSAnc2Vjb25kJyAmJiBzZWNvbmRzIDwgdGhpcy4jbWF4U2Vjb25kKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gdGhpcy51dGlsaXR5U2VydmljZS50aW1lRGlmZmVyZW5jZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJlc3VsdC50b29sdGlwID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgY29sdW1uLnR5cGUgPT09ICdkYXRlJyA/ICdkZC9NTS95eXl5JyA6ICdkZC9NTS95eXl5IEhIOm1tJyk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBkYXRlID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ2RkL01NL3l5eXknKTtcclxuICAgICAgICAgICAgY29uc3QgdGltZSA9IERhdGUudG9Gb3JtYXQodmFsdWUsICdISDptbScpO1xyXG4gICAgICAgICAgICBjb25zdCBkYXRlVGltZSA9IERhdGUudG9Gb3JtYXQodmFsdWUsICdISDptbScpO1xyXG4gICAgICAgICAgICBpZiAoY29sdW1uLnR5cGUgPT09ICdkYXRldGltZScgJiYgdGltZSAmJiB0aW1lICE9PSAnMDA6MDAnKSB7XHJcbiAgICAgICAgICAgICAgcmVzdWx0LmRpc3BsYXkudmFsdWUgPSBkYXRlVGltZTtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5oYXNIdG1sID0gdHJ1ZTtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5odG1sID0gYDxzcGFuIGNsYXNzPVwiZC1ibG9jayBUMTRSIHRleHQtYmxhY2s0MDBcIj4ke0RhdGUudG9Gb3JtYXQodmFsdWUsICdISDptbScpfTwvc3Bhbj48c3BhbiBjbGFzcz1cImQtYmxvY2sgVDE0UlwiPiR7RGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ2RkL01NL3l5eXknKX08L3NwYW4+YDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IGRhdGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNvbHVtbi50eXBlID09PSAndGltZScpIHtcclxuICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ0hIOm1tJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ3ZhbHVlcycpIHtcclxuICAgICAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gYXdhaXQgdGhpcy5jb2x1bW5WYWx1ZXNQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgY29sdW1uKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGNvbHVtbi50eXBlID09PSAnbnVtYmVyJyAmJiBOdW1iZXIuaXNOdW1iZXIodmFsdWUpKSB7XHJcbiAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IE51bWJlci50b1ZOQ3VycmVuY3kodmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoY29sdW1uLnR5cGUgPT09ICdib29sJykge1xyXG4gICAgICAgICAgY29uc3QgeyBvcHRpb24gfSA9IGNvbHVtbjtcclxuICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSAnJykge1xyXG4gICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IHZhbHVlID09PSB0cnVlID8gKG9wdGlvbj8uZGlzcGxheU9uVHJ1ZSB8fCAnVHJ1ZScpIDogKG9wdGlvbj8uZGlzcGxheU9uRmFsc2UgfHwgJ0ZhbHNlJyk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXN1bHQuZGlzcGxheS52YWx1ZSA9IG51bGw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChkaXNwbGF5T25FbXB0eSkge1xyXG4gICAgICAgIGxldCB2YWx1ZXMgPSBbbnVsbCwgdW5kZWZpbmVkLCAnJ107XHJcbiAgICAgICAgaWYgKHR5cGVvZiAoZGlzcGxheU9uRW1wdHkpID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgY29uc3QgeyBkaXNwbGF5LCBlbXB0eVZhbHVlcyB9ID0gZGlzcGxheU9uRW1wdHk7XHJcbiAgICAgICAgICB2YWx1ZXMgPSBbbnVsbCwgdW5kZWZpbmVkLCAnJywgLi4uZW1wdHlWYWx1ZXNdO1xyXG4gICAgICAgICAgaWYgKHZhbHVlcy5pbmNsdWRlcyhyZXN1bHQuZGlzcGxheS52YWx1ZSkpIHtcclxuICAgICAgICAgICAgaWYgKHR5cGVvZiAoZGlzcGxheSkgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5oYXNIdG1sID0gdHJ1ZTtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5odG1sID0gZGlzcGxheShyb3dEYXRhLCBjb2x1bW4pO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmhhc0h0bWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5kaXNwbGF5Lmh0bWwgPSBgPGRpdiBjbGFzcz1cIlQxNlIgdGV4dC1ibGFjazQwMFwiPi0tPC9kaXY+YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAodmFsdWVzLmluY2x1ZGVzKHJlc3VsdC5kaXNwbGF5LnZhbHVlKSkge1xyXG4gICAgICAgICAgICBpZiAodHlwZW9mIChkaXNwbGF5T25FbXB0eSkgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5oYXNIdG1sID0gdHJ1ZTtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5odG1sID0gZGlzcGxheU9uRW1wdHkocm93RGF0YSwgY29sdW1uKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5oYXNIdG1sID0gdHJ1ZTtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheS5odG1sID0gYDxkaXYgY2xhc3M9XCJUMTZSIHRleHQtYmxhY2s0MDBcIj4tLTwvZGl2PmA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEJhZGdlXHJcbiAgICBpZiAoKGNvbHVtbi50eXBlID09PSAnc3RyaW5nJyB8fCBjb2x1bW4udHlwZSA9PT0gJ251bWJlcicgfHwgY29sdW1uLnR5cGUgPT09ICd2YWx1ZXMnKSAmJiBjb2x1bW4uYmFkZ2UpIHtcclxuICAgICAgcmVzdWx0LmJhZGdlID0ge1xyXG4gICAgICAgIHR5cGU6ICFjb2x1bW4/LmJhZGdlVHlwZSA/ICdyb3VuZCcgOiBjb2x1bW4uYmFkZ2VUeXBlLFxyXG4gICAgICAgIGNvbG9yOiBjb2x1bW4uYmFkZ2UodmFsdWUsIHJvd0RhdGEpLFxyXG4gICAgICAgIGljb246IGNvbHVtbj8uYmFkZ2VJY29uPy4odmFsdWUsIHJvd0RhdGEpXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2UgaWYgKGNvbHVtbi50eXBlID09PSAnYm9vbCcpIHtcclxuICAgICAgcmVzdWx0LmJhZGdlID0ge1xyXG4gICAgICAgIHR5cGU6ICFjb2x1bW4/LmJhZGdlVHlwZSA/ICdyb3VuZCcgOiBjb2x1bW4uYmFkZ2VUeXBlLFxyXG4gICAgICAgIGNvbG9yOiAhIXZhbHVlID8gJ3N1Y2Nlc3MnIDogJ2RhbmdlcicsXHJcbiAgICAgICAgaWNvbjogbnVsbFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgLy8gVG9vbHRpcFxyXG4gICAgaWYgKHR5cGVvZiAodG9vbHRpcCkgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgcmVzdWx0LnRvb2x0aXAgPSB0b29sdGlwKHZhbHVlLCByb3dEYXRhKTtcclxuICAgIH1cclxuICAgIC8vIENsaWNrYWJsZVxyXG4gICAgaWYgKHR5cGVvZiAoY2xpY2spID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIHJlc3VsdC5jbGljayA9ICgpID0+IGNsaWNrKHZhbHVlLCByb3dEYXRhKTtcclxuICAgIH1cclxuICAgIGlmKHJlc3VsdC5kaXNwbGF5LnZhbHVlID09PSBudWxsKSB7XHJcbiAgICAgIHJlc3VsdC5kaXNwbGF5LnZhbHVlID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbn1cclxuIl19
|