@sd-angular/core 0.0.1040 → 0.0.1044

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/assets/scss/quill-mention/quill-mention.css +55 -0
  2. package/assets/scss/sd-core.scss +1 -0
  3. package/bundles/sd-angular-core-chip.umd.js +41 -10
  4. package/bundles/sd-angular-core-chip.umd.js.map +1 -1
  5. package/bundles/sd-angular-core-chip.umd.min.js +2 -2
  6. package/bundles/sd-angular-core-chip.umd.min.js.map +1 -1
  7. package/bundles/sd-angular-core-comment.umd.js +16 -15
  8. package/bundles/sd-angular-core-comment.umd.js.map +1 -1
  9. package/bundles/sd-angular-core-comment.umd.min.js +2 -2
  10. package/bundles/sd-angular-core-comment.umd.min.js.map +1 -1
  11. package/bundles/sd-angular-core-editor.umd.js +73 -18
  12. package/bundles/sd-angular-core-editor.umd.js.map +1 -1
  13. package/bundles/sd-angular-core-editor.umd.min.js +2 -2
  14. package/bundles/sd-angular-core-editor.umd.min.js.map +1 -1
  15. package/bundles/sd-angular-core-filter.umd.js +703 -0
  16. package/bundles/sd-angular-core-filter.umd.js.map +1 -0
  17. package/bundles/sd-angular-core-filter.umd.min.js +2 -0
  18. package/bundles/sd-angular-core-filter.umd.min.js.map +1 -0
  19. package/bundles/sd-angular-core-form.umd.js +6 -4
  20. package/bundles/sd-angular-core-form.umd.js.map +1 -1
  21. package/bundles/sd-angular-core-form.umd.min.js +1 -1
  22. package/bundles/sd-angular-core-form.umd.min.js.map +1 -1
  23. package/bundles/sd-angular-core-grid-material.umd.js +87 -42
  24. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  25. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  26. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  27. package/bundles/sd-angular-core-modal-custom.umd.js +487 -0
  28. package/bundles/sd-angular-core-modal-custom.umd.js.map +1 -0
  29. package/bundles/sd-angular-core-modal-custom.umd.min.js +16 -0
  30. package/bundles/sd-angular-core-modal-custom.umd.min.js.map +1 -0
  31. package/bundles/sd-angular-core-modal-resizable.umd.js +487 -0
  32. package/bundles/sd-angular-core-modal-resizable.umd.js.map +1 -0
  33. package/bundles/sd-angular-core-modal-resizable.umd.min.js +16 -0
  34. package/bundles/sd-angular-core-modal-resizable.umd.min.js.map +1 -0
  35. package/bundles/sd-angular-core-setting.umd.js +176 -117
  36. package/bundles/sd-angular-core-setting.umd.js.map +1 -1
  37. package/bundles/sd-angular-core-setting.umd.min.js +1 -1
  38. package/bundles/sd-angular-core-setting.umd.min.js.map +1 -1
  39. package/bundles/sd-angular-core.umd.js +4 -4
  40. package/bundles/sd-angular-core.umd.min.js +1 -1
  41. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  42. package/chip/sd-angular-core-chip.metadata.json +1 -1
  43. package/chip/src/lib/chip.component.d.ts +8 -1
  44. package/comment/sd-angular-core-comment.metadata.json +1 -1
  45. package/comment/src/lib/comment.model.d.ts +11 -0
  46. package/editor/sd-angular-core-editor.metadata.json +1 -1
  47. package/editor/src/lib/editor.component.d.ts +17 -3
  48. package/esm2015/chip/src/lib/chip.component.js +34 -4
  49. package/esm2015/chip/src/lib/chip.module.js +6 -3
  50. package/esm2015/comment/src/lib/comment.component.js +4 -4
  51. package/esm2015/comment/src/lib/comment.model.js +1 -1
  52. package/esm2015/comment/src/lib/comment.module.js +3 -1
  53. package/esm2015/editor/src/lib/editor.component.js +70 -14
  54. package/esm2015/editor/src/lib/editor.module.js +4 -2
  55. package/esm2015/filter/index.js +2 -0
  56. package/esm2015/filter/sd-angular-core-filter.js +8 -0
  57. package/esm2015/filter/src/lib/directives/sd-filter-def.directive.js +22 -0
  58. package/esm2015/filter/src/lib/filter.component.js +161 -0
  59. package/esm2015/filter/src/lib/filter.model.js +2 -0
  60. package/esm2015/filter/src/lib/filter.module.js +47 -0
  61. package/esm2015/filter/src/lib/filter.service.js +60 -0
  62. package/esm2015/filter/src/lib/pipes/values-local.pipe.js +19 -0
  63. package/esm2015/filter/src/lib/pipes/values-server.pipe.js +18 -0
  64. package/esm2015/filter/src/public-api.js +8 -0
  65. package/esm2015/form/src/lib/form.module.js +4 -1
  66. package/esm2015/grid-material/src/lib/components/quick-action/quick-action.component.js +1 -1
  67. package/esm2015/grid-material/src/lib/services/generated-column/generated-column.service.js +28 -12
  68. package/esm2015/grid-material/src/lib/services/grid-configuration.service.js +50 -21
  69. package/esm2015/modal-custom/index.js +2 -0
  70. package/esm2015/modal-custom/sd-angular-core-modal-custom.js +5 -0
  71. package/esm2015/modal-custom/src/lib/modal-custom/modal-custom.component.js +123 -0
  72. package/esm2015/modal-custom/src/lib/modal-custom.module.js +30 -0
  73. package/esm2015/modal-custom/src/public-api.js +6 -0
  74. package/esm2015/modal-resizable/index.js +2 -0
  75. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js +5 -0
  76. package/esm2015/modal-resizable/src/lib/modal-resizable/modal-resizable.component.js +123 -0
  77. package/esm2015/modal-resizable/src/lib/modal-resizable.module.js +30 -0
  78. package/esm2015/modal-resizable/src/public-api.js +6 -0
  79. package/esm2015/public-api.js +3 -1
  80. package/esm2015/setting/src/lib/setting.model.js +1 -1
  81. package/esm2015/setting/src/lib/setting.service.js +119 -58
  82. package/fesm2015/sd-angular-core-chip.js +37 -5
  83. package/fesm2015/sd-angular-core-chip.js.map +1 -1
  84. package/fesm2015/sd-angular-core-comment.js +5 -3
  85. package/fesm2015/sd-angular-core-comment.js.map +1 -1
  86. package/fesm2015/sd-angular-core-editor.js +72 -15
  87. package/fesm2015/sd-angular-core-editor.js.map +1 -1
  88. package/fesm2015/sd-angular-core-filter.js +323 -0
  89. package/fesm2015/sd-angular-core-filter.js.map +1 -0
  90. package/fesm2015/sd-angular-core-form.js +3 -0
  91. package/fesm2015/sd-angular-core-form.js.map +1 -1
  92. package/fesm2015/sd-angular-core-grid-material.js +77 -32
  93. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  94. package/fesm2015/sd-angular-core-modal-custom.js +161 -0
  95. package/fesm2015/sd-angular-core-modal-custom.js.map +1 -0
  96. package/fesm2015/sd-angular-core-modal-resizable.js +161 -0
  97. package/fesm2015/sd-angular-core-modal-resizable.js.map +1 -0
  98. package/fesm2015/sd-angular-core-setting.js +119 -58
  99. package/fesm2015/sd-angular-core-setting.js.map +1 -1
  100. package/fesm2015/sd-angular-core.js +2 -0
  101. package/fesm2015/sd-angular-core.js.map +1 -1
  102. package/filter/index.d.ts +1 -0
  103. package/filter/package.json +12 -0
  104. package/filter/sd-angular-core-filter.d.ts +7 -0
  105. package/filter/sd-angular-core-filter.metadata.json +1 -0
  106. package/filter/src/lib/directives/sd-filter-def.directive.d.ts +8 -0
  107. package/filter/src/lib/filter.component.d.ts +31 -0
  108. package/filter/src/lib/filter.model.d.ts +105 -0
  109. package/filter/src/lib/filter.module.d.ts +2 -0
  110. package/filter/src/lib/filter.service.d.ts +9 -0
  111. package/filter/src/lib/pipes/values-local.pipe.d.ts +5 -0
  112. package/filter/src/lib/pipes/values-server.pipe.d.ts +5 -0
  113. package/filter/src/public-api.d.ts +4 -0
  114. package/form/sd-angular-core-form.metadata.json +1 -1
  115. package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
  116. package/grid-material/src/lib/services/generated-column/generated-column.service.d.ts +3 -2
  117. package/modal-custom/index.d.ts +1 -0
  118. package/modal-custom/package.json +12 -0
  119. package/modal-custom/sd-angular-core-modal-custom.d.ts +4 -0
  120. package/modal-custom/sd-angular-core-modal-custom.metadata.json +1 -0
  121. package/modal-custom/src/lib/modal-custom/modal-custom.component.d.ts +31 -0
  122. package/modal-custom/src/lib/modal-custom.module.d.ts +2 -0
  123. package/modal-custom/src/public-api.d.ts +2 -0
  124. package/modal-resizable/index.d.ts +1 -0
  125. package/modal-resizable/package.json +12 -0
  126. package/modal-resizable/sd-angular-core-modal-resizable.d.ts +4 -0
  127. package/modal-resizable/sd-angular-core-modal-resizable.metadata.json +1 -0
  128. package/modal-resizable/src/lib/modal-resizable/modal-resizable.component.d.ts +31 -0
  129. package/modal-resizable/src/lib/modal-resizable.module.d.ts +2 -0
  130. package/modal-resizable/src/public-api.d.ts +2 -0
  131. package/package.json +3 -2
  132. package/public-api.d.ts +2 -0
  133. package/{sd-angular-core-0.0.1040.tgz → sd-angular-core-0.0.1044.tgz} +0 -0
  134. package/setting/sd-angular-core-setting.metadata.json +1 -1
  135. package/setting/src/lib/setting.model.d.ts +20 -6
  136. package/setting/src/lib/setting.service.d.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-setting.umd.js","sources":["../../../../projects/sd-core/setting/src/lib/setting.model.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/setting/src/lib/setting.service.ts","../../../../projects/sd-core/setting/src/public-api.ts","../../../../projects/sd-core/setting/sd-angular-core-setting.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\nexport interface SdSettingOption<T = any> {\r\n type?: 'session' | 'server';\r\n default?: T;\r\n args?: {\r\n [key: string]: any\r\n };\r\n}\r\n\r\nexport interface SdSetting<T = any> {\r\n get: () => Promise<T>;\r\n set: (data: T) => Promise<void>;\r\n has: () => Promise<boolean>;\r\n remove: () => Promise<void>;\r\n subject: Subject<T>;\r\n observer: Observable<T>;\r\n}\r\n\r\nexport interface ISettingConfiguration {\r\n convertKey?: (key: string) => string;\r\n set?: (key: string, value: { data: any, createdOn: Date }, args?: SdSettingOption) => Promise<void>;\r\n get?: (key: string, args?: SdSettingOption) => Promise<{\r\n data: any,\r\n createdOn: Date\r\n }>;\r\n remove?: (key: string, args?: SdSettingOption) => Promise<void>;\r\n}\r\n\r\nexport const SETTING_CONFIG = new InjectionToken<ISettingConfiguration>('setting.configuration');\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 { Optional } from '@angular/core';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport hash from 'object-hash';\r\nimport { Subject } from 'rxjs';\r\nimport { startWith, switchMap } from 'rxjs/operators';\r\nimport { SETTING_CONFIG, ISettingConfiguration, SdSettingOption, SdSetting } from './setting.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdSettingService {\r\n #cache: {\r\n [key: string]: {\r\n data: any,\r\n createdOn: Date\r\n }\r\n } = {};\r\n\r\n #subject: {\r\n [key: string]: Subject<any>;\r\n } = {};\r\n\r\n constructor(@Inject(SETTING_CONFIG) @Optional() private configuration: ISettingConfiguration) { }\r\n\r\n create<T = any>(key: string | object, option?: SdSettingOption<T>): SdSetting<T> {\r\n if (!key) {\r\n throw new Error('Key is required');\r\n }\r\n let hashKey: string = null;\r\n if (typeof (key) === 'string') {\r\n hashKey = key;\r\n } else if (typeof (key) === 'object') {\r\n hashKey = hash(key);\r\n } else {\r\n throw new Error('Invalid key');\r\n }\r\n if (this.configuration?.convertKey) {\r\n hashKey = this.configuration.convertKey(hashKey);\r\n }\r\n if (option?.type === 'server') {\r\n if (!this.configuration?.get) {\r\n throw new Error('Please init setting configuration method get for type server');\r\n }\r\n if (!this.configuration?.set) {\r\n throw new Error('Please init setting configuration method set for type server');\r\n }\r\n if (!this.configuration?.remove) {\r\n throw new Error('Please init setting configuration method remove for type server');\r\n }\r\n }\r\n if (!this.#subject[hashKey]) {\r\n this.#subject[hashKey] = new Subject<any>();\r\n }\r\n const get = this.#get<T>(hashKey, option);\r\n const set = this.#set<T>(hashKey, option);\r\n const has = this.#has(hashKey, option);\r\n const remove = this.#remove(hashKey, option);\r\n return {\r\n get,\r\n set,\r\n has,\r\n remove,\r\n subject: this.#subject[hashKey],\r\n observer: this.#subject[hashKey].pipe(startWith(option?.default), switchMap(get))\r\n };\r\n }\r\n\r\n #get = <T = any>(key: string, option?: SdSettingOption<T>): (() => Promise<T>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else if (option?.type === 'server') {\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return option?.default;\r\n }\r\n return JSON.parse(JSON.stringify(cache.data));\r\n };\r\n }\r\n\r\n #set = <T = any>(key: string, option?: SdSettingOption<T>): ((data: T) => Promise<void>) => {\r\n return async (data: T) => {\r\n this.#cache[key] = {\r\n data: JSON.parse(JSON.stringify(data)),\r\n createdOn: new Date()\r\n };\r\n if (option?.type === 'session') {\r\n try {\r\n sessionStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n } else if (option?.type === 'server') {\r\n try {\r\n await this.configuration?.set(key, this.#cache[key]);\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n } else {\r\n try {\r\n localStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n }\r\n };\r\n }\r\n\r\n #has = (key: string, option?: SdSettingOption): (() => Promise<boolean>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else if (option?.type === 'server') {\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n }\r\n\r\n #remove = (key: string, option?: SdSettingOption): (() => Promise<void>) => {\r\n return async () => {\r\n try {\r\n if (option?.type === 'session') {\r\n sessionStorage.removeItem(key);\r\n } else if (option?.type === 'server') {\r\n await this.configuration?.remove(key, option);\r\n } else {\r\n localStorage.removeItem(key);\r\n }\r\n this.#cache[key] = undefined;\r\n this.#subject[key].next(undefined);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n}\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/setting.model';\r\nexport * from './lib/setting.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["InjectionToken","hash","Subject","startWith","switchMap","Injectable","Inject","Optional"],"mappings":"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"}
1
+ {"version":3,"file":"sd-angular-core-setting.umd.js","sources":["../../../../projects/sd-core/setting/src/lib/setting.model.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/setting/src/lib/setting.service.ts","../../../../projects/sd-core/setting/src/public-api.ts","../../../../projects/sd-core/setting/sd-angular-core-setting.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\n\r\nexport interface SdSettingOption<T = any> {\r\n type?: 'session';\r\n default?: T;\r\n args?: {\r\n [key: string]: any\r\n };\r\n}\r\nexport interface SdSettingOptionServer<T = any> {\r\n default?: T;\r\n args?: {\r\n [key: string]: any\r\n };\r\n}\r\n\r\nexport interface SdSetting<T = any> {\r\n get: () => T;\r\n set: (data: T) => void;\r\n has: () => boolean;\r\n remove: () => void;\r\n subject: BehaviorSubject<T>;\r\n observer: Observable<T>;\r\n}\r\n\r\nexport interface SdSettingServer<T = any> {\r\n get: () => Promise<T>;\r\n set: (data: T) => Promise<void>;\r\n has: () => Promise<boolean>;\r\n remove: () => Promise<void>;\r\n subject: BehaviorSubject<T>;\r\n observer: Observable<T>;\r\n}\r\n\r\nexport interface ISettingConfiguration {\r\n convertKey?: (key: string) => string;\r\n set?: (key: string, value: { data: any, createdOn: Date }, args?: SdSettingOptionServer) => Promise<void>;\r\n get?: (key: string, args?: SdSettingOptionServer) => Promise<{\r\n data: any,\r\n createdOn: Date\r\n }>;\r\n remove?: (key: string, args?: SdSettingOptionServer) => Promise<void>;\r\n}\r\n\r\nexport const SETTING_CONFIG = new InjectionToken<ISettingConfiguration>('setting.configuration');\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 { Optional } from '@angular/core';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport hash from 'object-hash';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { startWith, switchMap } from 'rxjs/operators';\r\nimport { SETTING_CONFIG, ISettingConfiguration, SdSettingOption, SdSetting, SdSettingServer, SdSettingOptionServer } from './setting.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdSettingService {\r\n #cache: {\r\n [key: string]: {\r\n data: any,\r\n createdOn: Date\r\n }\r\n } = {};\r\n\r\n #subject: {\r\n [key: string]: BehaviorSubject<any>;\r\n } = {};\r\n\r\n constructor(@Inject(SETTING_CONFIG) @Optional() private configuration: ISettingConfiguration) { }\r\n\r\n create<T = any>(key: string | object, option?: SdSettingOption<T>): SdSetting<T> {\r\n if (!key) {\r\n throw new Error('Key is required');\r\n }\r\n let hashKey: string = null;\r\n if (typeof (key) === 'string') {\r\n hashKey = key;\r\n } else if (typeof (key) === 'object') {\r\n hashKey = hash(key);\r\n } else {\r\n throw new Error('Invalid key');\r\n }\r\n if (this.configuration?.convertKey) {\r\n hashKey = this.configuration.convertKey(hashKey);\r\n }\r\n \r\n const get = this.#get<T>(hashKey, option);\r\n const set = this.#set<T>(hashKey, option);\r\n const has = this.#has(hashKey, option);\r\n const remove = this.#remove(hashKey, option);\r\n if (!this.#subject[hashKey]) {\r\n this.#subject[hashKey] = new BehaviorSubject<T>(get());\r\n }\r\n return {\r\n get,\r\n set,\r\n has,\r\n remove,\r\n subject: this.#subject[hashKey],\r\n observer: this.#subject[hashKey].pipe(startWith(this.#subject[hashKey].getValue()))\r\n };\r\n }\r\n\r\n createServer<T = any>(key: string | object, option?: SdSettingOptionServer<T>): SdSettingServer<T> {\r\n if (!key) {\r\n throw new Error('Key is required');\r\n }\r\n let hashKey: string = null;\r\n if (typeof (key) === 'string') {\r\n hashKey = key;\r\n } else if (typeof (key) === 'object') {\r\n hashKey = hash(key);\r\n } else {\r\n throw new Error('Invalid key');\r\n }\r\n if (this.configuration?.convertKey) {\r\n hashKey = this.configuration.convertKey(hashKey);\r\n }\r\n if (!this.configuration?.get) {\r\n throw new Error('Please init setting configuration method get for type server');\r\n }\r\n if (!this.configuration?.set) {\r\n throw new Error('Please init setting configuration method set for type server');\r\n }\r\n if (!this.configuration?.remove) {\r\n throw new Error('Please init setting configuration method remove for type server');\r\n }\r\n if (!this.#subject[hashKey]) {\r\n this.#subject[hashKey] = new BehaviorSubject<any>(option?.default);\r\n }\r\n const get = this.#getServer<T>(hashKey, option);\r\n const set = this.#setServer<T>(hashKey, option);\r\n const has = this.#hasServer(hashKey, option);\r\n const remove = this.#remove(hashKey, option);\r\n return {\r\n get,\r\n set,\r\n has,\r\n remove,\r\n subject: this.#subject[hashKey],\r\n observer: this.#subject[hashKey].pipe(startWith(this.#subject[hashKey].getValue()), switchMap(get))\r\n };\r\n }\r\n\r\n #get = <T = any>(key: string, option?: SdSettingOption<T>): (() => T) => {\r\n return () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return option?.default;\r\n }\r\n return JSON.parse(JSON.stringify(cache.data));\r\n };\r\n }\r\n\r\n #getServer = <T = any>(key: string, option?: SdSettingOptionServer<T>): (() => Promise<T>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n if (!cache) {\r\n return option?.default;\r\n }\r\n return JSON.parse(JSON.stringify(cache.data));\r\n };\r\n }\r\n\r\n #set = <T = any>(key: string, option?: SdSettingOption<T>): ((data: T) => void) => {\r\n return (data: T) => {\r\n this.#cache[key] = {\r\n data: JSON.parse(JSON.stringify(data)),\r\n createdOn: new Date()\r\n };\r\n if (option?.type === 'session') {\r\n try {\r\n sessionStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n } else {\r\n try {\r\n localStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n }\r\n };\r\n }\r\n\r\n #setServer = <T = any>(key: string, option?: SdSettingOption<T>): ((data: T) => Promise<void>) => {\r\n return async (data: T) => {\r\n this.#cache[key] = {\r\n data: JSON.parse(JSON.stringify(data)),\r\n createdOn: new Date()\r\n };\r\n try {\r\n await this.configuration?.set(key, this.#cache[key]);\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n\r\n #has = (key: string, option?: SdSettingOption): (() => boolean) => {\r\n return () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n }\r\n\r\n #hasServer = (key: string, option?: SdSettingOptionServer): (() => Promise<boolean>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n if (!cache) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n }\r\n\r\n #remove = (key: string, option?: SdSettingOption): (() => Promise<void>) => {\r\n return async () => {\r\n try {\r\n if (option?.type === 'session') {\r\n sessionStorage.removeItem(key);\r\n } else {\r\n localStorage.removeItem(key);\r\n }\r\n this.#cache[key] = undefined;\r\n this.#subject[key].next(undefined);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n\r\n #removeServer = (key: string, option?: SdSettingOptionServer): (() => Promise<void>) => {\r\n return async () => {\r\n try {\r\n await this.configuration?.remove(key, option);\r\n this.#cache[key] = undefined;\r\n this.#subject[key].next(undefined);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n}\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/setting.model';\r\nexport * from './lib/setting.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["InjectionToken","hash","BehaviorSubject","startWith","switchMap","Injectable","Inject","Optional"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("object-hash"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@sd-angular/core/setting",["exports","@angular/core","object-hash","rxjs","rxjs/operators"],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.setting={}),e.ng.core,e.hash,e.rxjs,e.rxjs.operators)}(this,(function(e,t,r,n,o){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=i(r),a=new t.InjectionToken("setting.configuration");function u(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{u(n.next(e))}catch(e){i(e)}}function a(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(s,a)}u((n=n.apply(e,t||[])).next())}))}function c(e,t){var r,n,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;s;)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 s.label++,{value:i[1],done:!1};case 5:s.label++,n=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=s.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){s.label=i[1];break}if(6===i[0]&&s.label<o[1]){s.label=o[1],o=i;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(i);break}o[2]&&s.ops.pop(),s.trys.pop();continue}i=t.call(e,s)}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,a])}}}Object.create;var l,f,h,d,v,p;Object.create;function g(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 y=function(){function e(e){var t=this;this.configuration=e,l.set(this,{}),f.set(this,{}),h.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(o){switch(o.label){case 0:if(n=g(this,l)[e],"session"!==(null==r?void 0:r.type))return[3,1];try{n=JSON.parse(sessionStorage.getItem(e))}catch(e){n=void 0}return[3,7];case 1:if("server"!==(null==r?void 0:r.type))return[3,6];o.label=2;case 2:return o.trys.push([2,4,,5]),[4,null===(t=this.configuration)||void 0===t?void 0:t.get(e,r)];case 3:return n=o.sent(),[3,5];case 4:return o.sent(),n=void 0,[3,5];case 5:return[3,7];case 6:try{n=JSON.parse(localStorage.getItem(e))}catch(e){n=void 0}o.label=7;case 7:return n?[2,JSON.parse(JSON.stringify(n.data))]:[2,null==r?void 0:r.default]}}))}))}})),d.set(this,(function(e,r){return function(n){return u(t,void 0,void 0,(function(){var t,o;return c(this,(function(i){switch(i.label){case 0:if(g(this,l)[e]={data:JSON.parse(JSON.stringify(n)),createdOn:new Date},"session"!==(null==r?void 0:r.type))return[3,1];try{sessionStorage.setItem(e,JSON.stringify(g(this,l)[e])),g(this,f)[e].next(g(this,l)[e].data)}catch(e){console.error(e)}return[3,7];case 1:if("server"!==(null==r?void 0:r.type))return[3,6];i.label=2;case 2:return i.trys.push([2,4,,5]),[4,null===(t=this.configuration)||void 0===t?void 0:t.set(e,g(this,l)[e])];case 3:return i.sent(),g(this,f)[e].next(g(this,l)[e].data),[3,5];case 4:return o=i.sent(),console.error(o),[3,5];case 5:return[3,7];case 6:try{localStorage.setItem(e,JSON.stringify(g(this,l)[e])),g(this,f)[e].next(g(this,l)[e].data)}catch(e){console.error(e)}i.label=7;case 7:return[2]}}))}))}})),v.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(o){switch(o.label){case 0:if(n=g(this,l)[e],"session"!==(null==r?void 0:r.type))return[3,1];try{n=JSON.parse(sessionStorage.getItem(e))}catch(e){n=void 0}return[3,7];case 1:if("server"!==(null==r?void 0:r.type))return[3,6];o.label=2;case 2:return o.trys.push([2,4,,5]),[4,null===(t=this.configuration)||void 0===t?void 0:t.get(e,r)];case 3:return n=o.sent(),[3,5];case 4:return o.sent(),n=void 0,[3,5];case 5:return[3,7];case 6:try{n=JSON.parse(localStorage.getItem(e))}catch(e){n=void 0}o.label=7;case 7:return n?[2,!0]:[2,!1]}}))}))}})),p.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(o){switch(o.label){case 0:return o.trys.push([0,5,,6]),"session"!==(null==r?void 0:r.type)?[3,1]:(sessionStorage.removeItem(e),[3,4]);case 1:return"server"!==(null==r?void 0:r.type)?[3,3]:[4,null===(t=this.configuration)||void 0===t?void 0:t.remove(e,r)];case 2:return o.sent(),[3,4];case 3:localStorage.removeItem(e),o.label=4;case 4:return g(this,l)[e]=void 0,g(this,f)[e].next(void 0),[3,6];case 5:return n=o.sent(),console.error(n),[3,6];case 6:return[2]}}))}))}}))}return e.prototype.create=function(e,t){var r,i,a,u;if(!e)throw new Error("Key is required");var c=null;if("string"==typeof e)c=e;else{if("object"!=typeof e)throw new Error("Invalid key");c=s.default(e)}if((null===(r=this.configuration)||void 0===r?void 0:r.convertKey)&&(c=this.configuration.convertKey(c)),"server"===(null==t?void 0:t.type)){if(!(null===(i=this.configuration)||void 0===i?void 0:i.get))throw new Error("Please init setting configuration method get for type server");if(!(null===(a=this.configuration)||void 0===a?void 0:a.set))throw new Error("Please init setting configuration method set for type server");if(!(null===(u=this.configuration)||void 0===u?void 0:u.remove))throw new Error("Please init setting configuration method remove for type server")}g(this,f)[c]||(g(this,f)[c]=new n.Subject);var l=g(this,h).call(this,c,t);return{get:l,set:g(this,d).call(this,c,t),has:g(this,v).call(this,c,t),remove:g(this,p).call(this,c,t),subject:g(this,f)[c],observer:g(this,f)[c].pipe(o.startWith(null==t?void 0:t.default),o.switchMap(l))}},e}();l=new WeakMap,f=new WeakMap,h=new WeakMap,d=new WeakMap,v=new WeakMap,p=new WeakMap,y.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new y(t.ɵɵinject(a,8))},token:y,providedIn:"root"}),y.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],y.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[a]},{type:t.Optional}]}]},e.SETTING_CONFIG=a,e.SdSettingService=y,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("object-hash"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@sd-angular/core/setting",["exports","@angular/core","object-hash","rxjs","rxjs/operators"],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.setting={}),e.ng.core,e.hash,e.rxjs,e.rxjs.operators)}(this,(function(e,t,r,n,i){"use strict";function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=o(r),a=new t.InjectionToken("setting.configuration");function u(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{u(n.next(e))}catch(e){o(e)}}function a(e){try{u(n.throw(e))}catch(e){o(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}u((n=n.apply(e,t||[])).next())}))}function c(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}Object.create;var l,f,h,d,v,p,g,y,w,b;Object.create;function S(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 m=function(){function e(e){var t=this;this.configuration=e,l.set(this,{}),f.set(this,{}),h.set(this,(function(e,r){return function(){var n=S(t,l)[e];if("session"===(null==r?void 0:r.type))try{n=JSON.parse(sessionStorage.getItem(e))}catch(e){n=void 0}else try{n=JSON.parse(localStorage.getItem(e))}catch(e){n=void 0}return n?JSON.parse(JSON.stringify(n.data)):null==r?void 0:r.default}})),d.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(i){switch(i.label){case 0:n=S(this,l)[e],i.label=1;case 1:return i.trys.push([1,3,,4]),[4,null===(t=this.configuration)||void 0===t?void 0:t.get(e,r)];case 2:return n=i.sent(),[3,4];case 3:return i.sent(),n=void 0,[3,4];case 4:return n?[2,JSON.parse(JSON.stringify(n.data))]:[2,null==r?void 0:r.default]}}))}))}})),v.set(this,(function(e,r){return function(n){if(S(t,l)[e]={data:JSON.parse(JSON.stringify(n)),createdOn:new Date},"session"===(null==r?void 0:r.type))try{sessionStorage.setItem(e,JSON.stringify(S(t,l)[e])),S(t,f)[e].next(S(t,l)[e].data)}catch(e){console.error(e)}else try{localStorage.setItem(e,JSON.stringify(S(t,l)[e])),S(t,f)[e].next(S(t,l)[e].data)}catch(e){console.error(e)}}})),p.set(this,(function(e,r){return function(r){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(i){switch(i.label){case 0:S(this,l)[e]={data:JSON.parse(JSON.stringify(r)),createdOn:new Date},i.label=1;case 1:return i.trys.push([1,3,,4]),[4,null===(t=this.configuration)||void 0===t?void 0:t.set(e,S(this,l)[e])];case 2:return i.sent(),S(this,f)[e].next(S(this,l)[e].data),[3,4];case 3:return n=i.sent(),console.error(n),[3,4];case 4:return[2]}}))}))}})),g.set(this,(function(e,r){return function(){var n=S(t,l)[e];if("session"===(null==r?void 0:r.type))try{n=JSON.parse(sessionStorage.getItem(e))}catch(e){n=void 0}else try{n=JSON.parse(localStorage.getItem(e))}catch(e){n=void 0}return!!n}})),y.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(i){switch(i.label){case 0:n=S(this,l)[e],i.label=1;case 1:return i.trys.push([1,3,,4]),[4,null===(t=this.configuration)||void 0===t?void 0:t.get(e,r)];case 2:return n=i.sent(),[3,4];case 3:return i.sent(),n=void 0,[3,4];case 4:return n?[2,!0]:[2,!1]}}))}))}})),w.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){return c(this,(function(t){try{"session"===(null==r?void 0:r.type)?sessionStorage.removeItem(e):localStorage.removeItem(e),S(this,l)[e]=void 0,S(this,f)[e].next(void 0)}catch(e){console.error(e)}return[2]}))}))}})),b.set(this,(function(e,r){return function(){return u(t,void 0,void 0,(function(){var t,n;return c(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,null===(t=this.configuration)||void 0===t?void 0:t.remove(e,r)];case 1:return i.sent(),S(this,l)[e]=void 0,S(this,f)[e].next(void 0),[3,3];case 2:return n=i.sent(),console.error(n),[3,3];case 3:return[2]}}))}))}}))}return e.prototype.create=function(e,t){var r;if(!e)throw new Error("Key is required");var o=null;if("string"==typeof e)o=e;else{if("object"!=typeof e)throw new Error("Invalid key");o=s.default(e)}(null===(r=this.configuration)||void 0===r?void 0:r.convertKey)&&(o=this.configuration.convertKey(o));var a=S(this,h).call(this,o,t),u=S(this,v).call(this,o,t),c=S(this,g).call(this,o,t),l=S(this,w).call(this,o,t);return S(this,f)[o]||(S(this,f)[o]=new n.BehaviorSubject(a())),{get:a,set:u,has:c,remove:l,subject:S(this,f)[o],observer:S(this,f)[o].pipe(i.startWith(S(this,f)[o].getValue()))}},e.prototype.createServer=function(e,t){var r,o,a,u;if(!e)throw new Error("Key is required");var c=null;if("string"==typeof e)c=e;else{if("object"!=typeof e)throw new Error("Invalid key");c=s.default(e)}if((null===(r=this.configuration)||void 0===r?void 0:r.convertKey)&&(c=this.configuration.convertKey(c)),!(null===(o=this.configuration)||void 0===o?void 0:o.get))throw new Error("Please init setting configuration method get for type server");if(!(null===(a=this.configuration)||void 0===a?void 0:a.set))throw new Error("Please init setting configuration method set for type server");if(!(null===(u=this.configuration)||void 0===u?void 0:u.remove))throw new Error("Please init setting configuration method remove for type server");S(this,f)[c]||(S(this,f)[c]=new n.BehaviorSubject(null==t?void 0:t.default));var l=S(this,d).call(this,c,t);return{get:l,set:S(this,p).call(this,c,t),has:S(this,y).call(this,c,t),remove:S(this,w).call(this,c,t),subject:S(this,f)[c],observer:S(this,f)[c].pipe(i.startWith(S(this,f)[c].getValue()),i.switchMap(l))}},e}();l=new WeakMap,f=new WeakMap,h=new WeakMap,d=new WeakMap,v=new WeakMap,p=new WeakMap,g=new WeakMap,y=new WeakMap,w=new WeakMap,b=new WeakMap,m.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new m(t.ɵɵinject(a,8))},token:m,providedIn:"root"}),m.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],m.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[a]},{type:t.Optional}]}]},e.SETTING_CONFIG=a,e.SdSettingService=m,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=sd-angular-core-setting.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../projects/sd-core/setting/src/lib/setting.model.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/setting/src/lib/setting.service.ts"],"names":["SETTING_CONFIG","InjectionToken","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","Object","create","__classPrivateFieldGet","receiver","state","kind","has","get","SdSettingService","configuration","_this","_cache","set","_subject","_get","key","option","cache","type","JSON","parse","sessionStorage","getItem","_b","undefined","_a","_e","localStorage","_d","stringify","data","default","_set","createdOn","Date","setItem","err","console","error","err_1","_has","_remove","removeItem","remove","err_2","prototype","Error","hashKey","hash","convertKey","_c","Subject","subject","observer","pipe","startWith","switchMap","Injectable","args","providedIn","Inject","Optional"],"mappings":"qoBA8BaA,EAAiB,IAAIC,EAAAA,eAAsC,kCCuCxDC,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUC,GAAS,IAAMC,EAAKN,EAAUO,KAAKF,IAAW,MAAOG,GAAKL,EAAOK,IACpF,SAASC,EAASJ,GAAS,IAAMC,EAAKN,EAAiB,MAAEK,IAAW,MAAOG,GAAKL,EAAOK,IACvF,SAASF,EAAKI,GAJlB,IAAeL,EAIaK,EAAOC,KAAOT,EAAQQ,EAAOL,QAJ1CA,EAIyDK,EAAOL,MAJhDA,aAAiBN,EAAIM,EAAQ,IAAIN,GAAE,SAAUG,GAAWA,EAAQG,OAITO,KAAKR,EAAWK,GAClGH,GAAMN,EAAYA,EAAUa,MAAMhB,EAASC,GAAc,KAAKS,oBAItDO,EAAYjB,EAASkB,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,OAAOC,OAAUX,EACvJ,SAASM,EAAKM,GAAK,OAAO,SAAUC,GAAK,OACzC,SAAcC,GACV,GAAIjB,EAAG,MAAM,IAAIkB,UAAU,mCAC3B,KAAOd,OACH,GAAIJ,EAAI,EAAGC,IAAMC,EAAY,EAARe,EAAG,GAAShB,EAAU,OAAIgB,EAAG,GAAKhB,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAEiB,KAAKlB,GAAI,GAAKA,EAAEV,SAAWW,EAAIA,EAAEiB,KAAKlB,EAAGgB,EAAG,KAAKtB,KAAM,OAAOO,EAE3J,OADID,EAAI,EAAGC,IAAGe,EAAK,CAAS,EAARA,EAAG,GAAQf,EAAEb,QACzB4B,EAAG,IACP,KAAK,EAAG,KAAK,EAAGf,EAAIe,EAAI,MACxB,KAAK,EAAc,OAAXb,EAAEC,QAAgB,CAAEhB,MAAO4B,EAAG,GAAItB,MAAM,GAChD,KAAK,EAAGS,EAAEC,QAASJ,EAAIgB,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKb,EAAEI,IAAIY,MAAOhB,EAAEG,KAAKa,MAAO,SACxC,QACI,KAAMlB,EAAIE,EAAEG,MAAML,EAAIA,EAAEmB,OAAS,GAAKnB,EAAEA,EAAEmB,OAAS,KAAkB,IAAVJ,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEb,EAAI,EAAG,SACjG,GAAc,IAAVa,EAAG,MAAcf,GAAMe,EAAG,GAAKf,EAAE,IAAMe,EAAG,GAAKf,EAAE,IAAM,CAAEE,EAAEC,MAAQY,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYb,EAAEC,MAAQH,EAAE,GAAI,CAAEE,EAAEC,MAAQH,EAAE,GAAIA,EAAIe,EAAI,MAC7D,GAAIf,GAAKE,EAAEC,MAAQH,EAAE,GAAI,CAAEE,EAAEC,MAAQH,EAAE,GAAIE,EAAEI,IAAIc,KAAKL,GAAK,MACvDf,EAAE,IAAIE,EAAEI,IAAIY,MAChBhB,EAAEG,KAAKa,MAAO,SAEtBH,EAAKlB,EAAKoB,KAAKtC,EAASuB,GAC1B,MAAOZ,GAAKyB,EAAK,CAAC,EAAGzB,GAAIS,EAAI,UAAeD,EAAIE,EAAI,EACtD,GAAY,EAARe,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAE5B,MAAO4B,EAAG,GAAKA,EAAG,QAAK,EAAQtB,MAAM,GArB9BL,CAAK,CAACyB,EAAGC,MAyBhCO,OAAOC,OAsGpC,gBAAyBD,OAAOC,gBAkBhBC,EAAuBC,EAAUC,EAAOC,EAAM5B,GAC1D,GAAa,MAAT4B,IAAiB5B,EAAG,MAAM,IAAIkB,UAAU,iDAC5C,GAAqB,mBAAVS,EAAuBD,IAAaC,IAAU3B,GAAK2B,EAAME,IAAIH,GAAW,MAAM,IAAIR,UAAU,4EACvG,MAAgB,MAATU,EAAe5B,EAAa,MAAT4B,EAAe5B,EAAEmB,KAAKO,GAAY1B,EAAIA,EAAEX,MAAQsC,EAAMG,IAAIJ,oBChNtF,SAAAK,EAAwDC,GAAxD,IAAAC,EAAAnB,KAAwDA,KAAAkB,cAAAA,EAXxDE,EAAAC,IAAArB,KAKI,IAEJsB,EAAAD,IAAArB,KAEI,IA+CJuB,EAAAF,IAAArB,MAAO,SAAUwB,EAAaC,GAC5B,OAAO,WAAA,OAAA3D,EAAAqD,OAAA,OAAA,GAAA,wEACDO,EAAQf,EAAAX,KAAAoB,GAAYI,GACH,aAAjBC,MAAAA,OAAM,EAANA,EAAQE,MAAR,MAAA,CAAA,EAAA,GACF,IACED,EAAQE,KAAKC,MAAMC,eAAeC,QAAQP,IAC1C,MAAAQ,GACAN,OAAQO,wBAEgB,YAAjBR,MAAAA,OAAM,EAANA,EAAQE,MAAR,MAAA,CAAA,EAAA,oBAEC,6BAAA,CAAA,EAAwB,QAAxBO,EAAMlC,KAAKkB,qBAAa,IAAAgB,OAAA,EAAAA,EAAElB,IAAIQ,EAAKC,kBAA3CC,EAAQS,EAAA3C,oCAERkC,OAAQO,kCAGV,IACEP,EAAQE,KAAKC,MAAMO,aAAaL,QAAQP,IACxC,MAAAa,GACAX,OAAQO,mBAGZ,OAAKP,EAGL,CAAA,EAAOE,KAAKC,MAAMD,KAAKU,UAAUZ,EAAMa,QAFrC,CAAA,EAAOd,MAAAA,OAAM,EAANA,EAAQe,oBAMrBC,EAAApB,IAAArB,MAAO,SAAUwB,EAAaC,GAC5B,OAAO,SAAOc,GAAO,OAAAzE,EAAAqD,OAAA,OAAA,GAAA,wEACnBR,EAAAX,KAAAoB,GAAYI,GAAO,CACjBe,KAAMX,KAAKC,MAAMD,KAAKU,UAAUC,IAChCG,UAAW,IAAIC,MAEI,aAAjBlB,MAAAA,OAAM,EAANA,EAAQE,MAAR,MAAA,CAAA,EAAA,GACF,IACEG,eAAec,QAAQpB,EAAKI,KAAKU,UAAU3B,EAAAX,KAAAoB,GAAYI,KACvDb,EAAAX,KAAAsB,GAAcE,GAAK/C,KAAKkC,EAAAX,KAAAoB,GAAYI,GAAKe,MACzC,MAAOM,GACPC,QAAQC,MAAMF,yBAEU,YAAjBpB,MAAAA,OAAM,EAANA,EAAQE,MAAR,MAAA,CAAA,EAAA,oBAEP,6BAAA,CAAA,EAAwB,QAAxBO,EAAMlC,KAAKkB,qBAAa,IAAAgB,OAAA,EAAAA,EAAEb,IAAIG,EAAKb,EAAAX,KAAAoB,GAAYI,mBAA/CW,EAAA3C,OACAmB,EAAAX,KAAAsB,GAAcE,GAAK/C,KAAKkC,EAAAX,KAAAoB,GAAYI,GAAKe,qCAEzCO,QAAQC,MAAMC,mCAGhB,IACEZ,aAAaQ,QAAQpB,EAAKI,KAAKU,UAAU3B,EAAAX,KAAAoB,GAAYI,KACrDb,EAAAX,KAAAsB,GAAcE,GAAK/C,KAAKkC,EAAAX,KAAAoB,GAAYI,GAAKe,MACzC,MAAOM,GACPC,QAAQC,MAAMF,yCAMtBI,EAAA5B,IAAArB,MAAO,SAACwB,EAAaC,GACnB,OAAO,WAAA,OAAA3D,EAAAqD,OAAA,OAAA,GAAA,wEACDO,EAAQf,EAAAX,KAAAoB,GAAYI,GACH,aAAjBC,MAAAA,OAAM,EAANA,EAAQE,MAAR,MAAA,CAAA,EAAA,GACF,IACED,EAAQE,KAAKC,MAAMC,eAAeC,QAAQP,IAC1C,MAAAQ,GACAN,OAAQO,wBAEgB,YAAjBR,MAAAA,OAAM,EAANA,EAAQE,MAAR,MAAA,CAAA,EAAA,oBAEC,6BAAA,CAAA,EAAwB,QAAxBO,EAAMlC,KAAKkB,qBAAa,IAAAgB,OAAA,EAAAA,EAAElB,IAAIQ,EAAKC,kBAA3CC,EAAQS,EAAA3C,oCAERkC,OAAQO,kCAGV,IACEP,EAAQE,KAAKC,MAAMO,aAAaL,QAAQP,IACxC,MAAAa,GACAX,OAAQO,mBAGZ,OAAKP,EAGL,CAAA,GAAO,GAFL,CAAA,GAAO,cAMbwB,EAAA7B,IAAArB,MAAU,SAACwB,EAAaC,GACtB,OAAO,WAAA,OAAA3D,EAAAqD,OAAA,OAAA,GAAA,kGAEkB,aAAjBM,MAAAA,OAAM,EAANA,EAAQE,MAAR,CAAA,EAAA,IACFG,eAAeqB,WAAW3B,uBACA,YAAjBC,MAAAA,OAAM,EAANA,EAAQE,MAAR,CAAA,EAAA,GACT,CAAA,EAAwB,QAAxBO,EAAMlC,KAAKkB,qBAAa,IAAAgB,OAAA,EAAAA,EAAEkB,OAAO5B,EAAKC,kBAAtCU,EAAA3C,oBAEA4C,aAAae,WAAW3B,2BAE1Bb,EAAAX,KAAAoB,GAAYI,QAAOS,EACnBtB,EAAAX,KAAAsB,GAAcE,GAAK/C,UAAKwD,kCAExBa,QAAQC,MAAMM,4CAjJpBpC,EAAAqC,UAAA5C,OAAA,SAAgBc,EAAsBC,eACpC,IAAKD,EACH,MAAM,IAAI+B,MAAM,mBAElB,IAAIC,EAAkB,KACtB,GAAqB,iBAAjB,EACFA,EAAUhC,MACL,CAAA,GAAqB,iBAAjB,EAGT,MAAM,IAAI+B,MAAM,eAFhBC,EAAUC,EAAAA,QAAKjC,GAOjB,IAHsB,QAAtBU,EAAIlC,KAAKkB,qBAAa,IAAAgB,OAAA,EAAAA,EAAEwB,cACtBF,EAAUxD,KAAKkB,cAAcwC,WAAWF,IAErB,YAAjB/B,MAAAA,OAAM,EAANA,EAAQE,MAAmB,CAC7B,KAAuB,QAAnBK,EAAChC,KAAKkB,qBAAa,IAAAc,OAAA,EAAAA,EAAEhB,KACvB,MAAM,IAAIuC,MAAM,gEAElB,KAAuB,QAAnBI,EAAC3D,KAAKkB,qBAAa,IAAAyC,OAAA,EAAAA,EAAEtC,KACvB,MAAM,IAAIkC,MAAM,gEAElB,KAAuB,QAAnBlB,EAACrC,KAAKkB,qBAAa,IAAAmB,OAAA,EAAAA,EAAEe,QACvB,MAAM,IAAIG,MAAM,mEAGf5C,EAAAX,KAAAsB,GAAckC,KACjB7C,EAAAX,KAAAsB,GAAckC,GAAW,IAAII,EAAAA,SAE/B,IAAM5C,EAAML,EAAAX,KAAAuB,GAAAlB,KAAAL,KAAawD,EAAS/B,GAIlC,MAAO,CACLT,IAAGA,EACHK,IALUV,EAAAX,KAAAyC,GAAApC,KAAAL,KAAawD,EAAS/B,GAMhCV,IALUJ,EAAAX,KAAAiD,GAAA5C,KAAAL,KAAUwD,EAAS/B,GAM7B2B,OALazC,EAAAX,KAAAkD,GAAA7C,KAAAL,KAAawD,EAAS/B,GAMnCoC,QAASlD,EAAAX,KAAAsB,GAAckC,GACvBM,SAAUnD,EAAAX,KAAAsB,GAAckC,GAASO,KAAKC,EAAAA,UAAUvC,MAAAA,OAAM,EAANA,EAAQe,SAAUyB,EAAAA,UAAUjD,+NAxDjFkD,EAAAA,WAAUC,KAAA,CAAC,CACVC,WAAY,6EAcCC,EAAAA,OAAMF,KAAA,CAACvG,IAAc,CAAA+D,KAAG2C,EAAAA","sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\nexport interface SdSettingOption<T = any> {\r\n type?: 'session' | 'server';\r\n default?: T;\r\n args?: {\r\n [key: string]: any\r\n };\r\n}\r\n\r\nexport interface SdSetting<T = any> {\r\n get: () => Promise<T>;\r\n set: (data: T) => Promise<void>;\r\n has: () => Promise<boolean>;\r\n remove: () => Promise<void>;\r\n subject: Subject<T>;\r\n observer: Observable<T>;\r\n}\r\n\r\nexport interface ISettingConfiguration {\r\n convertKey?: (key: string) => string;\r\n set?: (key: string, value: { data: any, createdOn: Date }, args?: SdSettingOption) => Promise<void>;\r\n get?: (key: string, args?: SdSettingOption) => Promise<{\r\n data: any,\r\n createdOn: Date\r\n }>;\r\n remove?: (key: string, args?: SdSettingOption) => Promise<void>;\r\n}\r\n\r\nexport const SETTING_CONFIG = new InjectionToken<ISettingConfiguration>('setting.configuration');\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 { Optional } from '@angular/core';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport hash from 'object-hash';\r\nimport { Subject } from 'rxjs';\r\nimport { startWith, switchMap } from 'rxjs/operators';\r\nimport { SETTING_CONFIG, ISettingConfiguration, SdSettingOption, SdSetting } from './setting.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdSettingService {\r\n #cache: {\r\n [key: string]: {\r\n data: any,\r\n createdOn: Date\r\n }\r\n } = {};\r\n\r\n #subject: {\r\n [key: string]: Subject<any>;\r\n } = {};\r\n\r\n constructor(@Inject(SETTING_CONFIG) @Optional() private configuration: ISettingConfiguration) { }\r\n\r\n create<T = any>(key: string | object, option?: SdSettingOption<T>): SdSetting<T> {\r\n if (!key) {\r\n throw new Error('Key is required');\r\n }\r\n let hashKey: string = null;\r\n if (typeof (key) === 'string') {\r\n hashKey = key;\r\n } else if (typeof (key) === 'object') {\r\n hashKey = hash(key);\r\n } else {\r\n throw new Error('Invalid key');\r\n }\r\n if (this.configuration?.convertKey) {\r\n hashKey = this.configuration.convertKey(hashKey);\r\n }\r\n if (option?.type === 'server') {\r\n if (!this.configuration?.get) {\r\n throw new Error('Please init setting configuration method get for type server');\r\n }\r\n if (!this.configuration?.set) {\r\n throw new Error('Please init setting configuration method set for type server');\r\n }\r\n if (!this.configuration?.remove) {\r\n throw new Error('Please init setting configuration method remove for type server');\r\n }\r\n }\r\n if (!this.#subject[hashKey]) {\r\n this.#subject[hashKey] = new Subject<any>();\r\n }\r\n const get = this.#get<T>(hashKey, option);\r\n const set = this.#set<T>(hashKey, option);\r\n const has = this.#has(hashKey, option);\r\n const remove = this.#remove(hashKey, option);\r\n return {\r\n get,\r\n set,\r\n has,\r\n remove,\r\n subject: this.#subject[hashKey],\r\n observer: this.#subject[hashKey].pipe(startWith(option?.default), switchMap(get))\r\n };\r\n }\r\n\r\n #get = <T = any>(key: string, option?: SdSettingOption<T>): (() => Promise<T>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else if (option?.type === 'server') {\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return option?.default;\r\n }\r\n return JSON.parse(JSON.stringify(cache.data));\r\n };\r\n }\r\n\r\n #set = <T = any>(key: string, option?: SdSettingOption<T>): ((data: T) => Promise<void>) => {\r\n return async (data: T) => {\r\n this.#cache[key] = {\r\n data: JSON.parse(JSON.stringify(data)),\r\n createdOn: new Date()\r\n };\r\n if (option?.type === 'session') {\r\n try {\r\n sessionStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n } else if (option?.type === 'server') {\r\n try {\r\n await this.configuration?.set(key, this.#cache[key]);\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n } else {\r\n try {\r\n localStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n }\r\n };\r\n }\r\n\r\n #has = (key: string, option?: SdSettingOption): (() => Promise<boolean>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else if (option?.type === 'server') {\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n }\r\n\r\n #remove = (key: string, option?: SdSettingOption): (() => Promise<void>) => {\r\n return async () => {\r\n try {\r\n if (option?.type === 'session') {\r\n sessionStorage.removeItem(key);\r\n } else if (option?.type === 'server') {\r\n await this.configuration?.remove(key, option);\r\n } else {\r\n localStorage.removeItem(key);\r\n }\r\n this.#cache[key] = undefined;\r\n this.#subject[key].next(undefined);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["../../../../projects/sd-core/setting/src/lib/setting.model.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/setting/src/lib/setting.service.ts"],"names":["SETTING_CONFIG","InjectionToken","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","Object","create","__classPrivateFieldGet","receiver","state","kind","has","get","SdSettingService","configuration","_this","_cache","set","_subject","_get","key","option","cache","type","JSON","parse","sessionStorage","getItem","_a","undefined","localStorage","_b","stringify","data","default","_getServer","_e","_set","createdOn","Date","setItem","err","console","error","_setServer","err_1","_has","_hasServer","_remove","removeItem","_removeServer","remove","err_2","prototype","Error","hashKey","hash","convertKey","BehaviorSubject","subject","observer","pipe","startWith","getValue","createServer","_c","_d","switchMap","Injectable","args","providedIn","Inject","Optional"],"mappings":"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","sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\n\r\nexport interface SdSettingOption<T = any> {\r\n type?: 'session';\r\n default?: T;\r\n args?: {\r\n [key: string]: any\r\n };\r\n}\r\nexport interface SdSettingOptionServer<T = any> {\r\n default?: T;\r\n args?: {\r\n [key: string]: any\r\n };\r\n}\r\n\r\nexport interface SdSetting<T = any> {\r\n get: () => T;\r\n set: (data: T) => void;\r\n has: () => boolean;\r\n remove: () => void;\r\n subject: BehaviorSubject<T>;\r\n observer: Observable<T>;\r\n}\r\n\r\nexport interface SdSettingServer<T = any> {\r\n get: () => Promise<T>;\r\n set: (data: T) => Promise<void>;\r\n has: () => Promise<boolean>;\r\n remove: () => Promise<void>;\r\n subject: BehaviorSubject<T>;\r\n observer: Observable<T>;\r\n}\r\n\r\nexport interface ISettingConfiguration {\r\n convertKey?: (key: string) => string;\r\n set?: (key: string, value: { data: any, createdOn: Date }, args?: SdSettingOptionServer) => Promise<void>;\r\n get?: (key: string, args?: SdSettingOptionServer) => Promise<{\r\n data: any,\r\n createdOn: Date\r\n }>;\r\n remove?: (key: string, args?: SdSettingOptionServer) => Promise<void>;\r\n}\r\n\r\nexport const SETTING_CONFIG = new InjectionToken<ISettingConfiguration>('setting.configuration');\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 { Optional } from '@angular/core';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport hash from 'object-hash';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { startWith, switchMap } from 'rxjs/operators';\r\nimport { SETTING_CONFIG, ISettingConfiguration, SdSettingOption, SdSetting, SdSettingServer, SdSettingOptionServer } from './setting.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdSettingService {\r\n #cache: {\r\n [key: string]: {\r\n data: any,\r\n createdOn: Date\r\n }\r\n } = {};\r\n\r\n #subject: {\r\n [key: string]: BehaviorSubject<any>;\r\n } = {};\r\n\r\n constructor(@Inject(SETTING_CONFIG) @Optional() private configuration: ISettingConfiguration) { }\r\n\r\n create<T = any>(key: string | object, option?: SdSettingOption<T>): SdSetting<T> {\r\n if (!key) {\r\n throw new Error('Key is required');\r\n }\r\n let hashKey: string = null;\r\n if (typeof (key) === 'string') {\r\n hashKey = key;\r\n } else if (typeof (key) === 'object') {\r\n hashKey = hash(key);\r\n } else {\r\n throw new Error('Invalid key');\r\n }\r\n if (this.configuration?.convertKey) {\r\n hashKey = this.configuration.convertKey(hashKey);\r\n }\r\n \r\n const get = this.#get<T>(hashKey, option);\r\n const set = this.#set<T>(hashKey, option);\r\n const has = this.#has(hashKey, option);\r\n const remove = this.#remove(hashKey, option);\r\n if (!this.#subject[hashKey]) {\r\n this.#subject[hashKey] = new BehaviorSubject<T>(get());\r\n }\r\n return {\r\n get,\r\n set,\r\n has,\r\n remove,\r\n subject: this.#subject[hashKey],\r\n observer: this.#subject[hashKey].pipe(startWith(this.#subject[hashKey].getValue()))\r\n };\r\n }\r\n\r\n createServer<T = any>(key: string | object, option?: SdSettingOptionServer<T>): SdSettingServer<T> {\r\n if (!key) {\r\n throw new Error('Key is required');\r\n }\r\n let hashKey: string = null;\r\n if (typeof (key) === 'string') {\r\n hashKey = key;\r\n } else if (typeof (key) === 'object') {\r\n hashKey = hash(key);\r\n } else {\r\n throw new Error('Invalid key');\r\n }\r\n if (this.configuration?.convertKey) {\r\n hashKey = this.configuration.convertKey(hashKey);\r\n }\r\n if (!this.configuration?.get) {\r\n throw new Error('Please init setting configuration method get for type server');\r\n }\r\n if (!this.configuration?.set) {\r\n throw new Error('Please init setting configuration method set for type server');\r\n }\r\n if (!this.configuration?.remove) {\r\n throw new Error('Please init setting configuration method remove for type server');\r\n }\r\n if (!this.#subject[hashKey]) {\r\n this.#subject[hashKey] = new BehaviorSubject<any>(option?.default);\r\n }\r\n const get = this.#getServer<T>(hashKey, option);\r\n const set = this.#setServer<T>(hashKey, option);\r\n const has = this.#hasServer(hashKey, option);\r\n const remove = this.#remove(hashKey, option);\r\n return {\r\n get,\r\n set,\r\n has,\r\n remove,\r\n subject: this.#subject[hashKey],\r\n observer: this.#subject[hashKey].pipe(startWith(this.#subject[hashKey].getValue()), switchMap(get))\r\n };\r\n }\r\n\r\n #get = <T = any>(key: string, option?: SdSettingOption<T>): (() => T) => {\r\n return () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return option?.default;\r\n }\r\n return JSON.parse(JSON.stringify(cache.data));\r\n };\r\n }\r\n\r\n #getServer = <T = any>(key: string, option?: SdSettingOptionServer<T>): (() => Promise<T>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n if (!cache) {\r\n return option?.default;\r\n }\r\n return JSON.parse(JSON.stringify(cache.data));\r\n };\r\n }\r\n\r\n #set = <T = any>(key: string, option?: SdSettingOption<T>): ((data: T) => void) => {\r\n return (data: T) => {\r\n this.#cache[key] = {\r\n data: JSON.parse(JSON.stringify(data)),\r\n createdOn: new Date()\r\n };\r\n if (option?.type === 'session') {\r\n try {\r\n sessionStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n } else {\r\n try {\r\n localStorage.setItem(key, JSON.stringify(this.#cache[key]));\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n }\r\n };\r\n }\r\n\r\n #setServer = <T = any>(key: string, option?: SdSettingOption<T>): ((data: T) => Promise<void>) => {\r\n return async (data: T) => {\r\n this.#cache[key] = {\r\n data: JSON.parse(JSON.stringify(data)),\r\n createdOn: new Date()\r\n };\r\n try {\r\n await this.configuration?.set(key, this.#cache[key]);\r\n this.#subject[key].next(this.#cache[key].data);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n\r\n #has = (key: string, option?: SdSettingOption): (() => boolean) => {\r\n return () => {\r\n let cache = this.#cache[key];\r\n if (option?.type === 'session') {\r\n try {\r\n cache = JSON.parse(sessionStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n } else {\r\n try {\r\n cache = JSON.parse(localStorage.getItem(key));\r\n } catch {\r\n cache = undefined;\r\n }\r\n }\r\n if (!cache) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n }\r\n\r\n #hasServer = (key: string, option?: SdSettingOptionServer): (() => Promise<boolean>) => {\r\n return async () => {\r\n let cache = this.#cache[key];\r\n try {\r\n cache = await this.configuration?.get(key, option);\r\n } catch {\r\n cache = undefined;\r\n }\r\n if (!cache) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n }\r\n\r\n #remove = (key: string, option?: SdSettingOption): (() => Promise<void>) => {\r\n return async () => {\r\n try {\r\n if (option?.type === 'session') {\r\n sessionStorage.removeItem(key);\r\n } else {\r\n localStorage.removeItem(key);\r\n }\r\n this.#cache[key] = undefined;\r\n this.#subject[key].next(undefined);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n\r\n #removeServer = (key: string, option?: SdSettingOptionServer): (() => Promise<void>) => {\r\n return async () => {\r\n try {\r\n await this.configuration?.remove(key, option);\r\n this.#cache[key] = undefined;\r\n this.#subject[key].next(undefined);\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n }\r\n}\r\n"]}
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@sd-angular/core/common'), require('@sd-angular/core/label'), require('@sd-angular/core/input-upload-file'), require('@sd-angular/core/chip'), require('@sd-angular/core/textarea'), require('@sd-angular/core/checkbox'), require('@sd-angular/core/time'), require('@sd-angular/core/side-drawer'), require('@sd-angular/core/tab-router'), require('@sd-angular/core/excel'), require('@sd-angular/core/input'), require('@sd-angular/core/select'), require('@sd-angular/core/quick-action'), require('@sd-angular/core/image-preview'), require('@sd-angular/core/comment'), require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('@angular/forms'), require('ckeditor4-angular'), require('@angular/material/form-field'), require('@angular/material/tooltip'), require('@angular/material/input'), require('@angular/material/checkbox'), require('@angular/material/slide-toggle'), require('@angular/material/select'), require('@angular/material/radio'), require('@angular/material/autocomplete'), require('@angular/material/icon'), require('@angular/material/menu'), require('@angular/material/chips'), require('@angular/material/button'), require('@angular/material/dialog'), require('@angular/material/bottom-sheet'), require('@angular/material/progress-spinner'), require('@angular/material/expansion'), require('@angular/material/tabs'), require('@angular/cdk/drag-drop'), require('@angular/material/paginator'), require('ngx-device-detector'), require('@sd-angular/core/service'), require('@sd-angular/core/chart'), require('@sd-angular/core/grid-material'), require('@sd-angular/core/editor'), require('@sd-angular/core/konva'), require('uuid'), require('jquery'), require('jquery-datetimepicker'), require('@angular/platform-browser'), require('@sd-angular/core/upload-excel'), require('@sd-angular/core/grid'), require('@sd-angular/core/form'), require('@sd-angular/core/api'), require('@sd-angular/core/loading'), require('@sd-angular/core/notify'), require('@sd-angular/core/setting'), require('@sd-angular/core/translate'), require('@sd-angular/core/utility'), require('@sd-angular/core/dynamic-report'), require('@sd-angular/core/upload-file'), require('@sd-angular/core/date-range'), require('@sd-angular/core/date-time'), require('@sd-angular/core/button'), require('@sd-angular/core/autocomplete'), require('@sd-angular/core/select-editor'), require('@sd-angular/core/modal'), require('@sd-angular/core/switch'), require('@sd-angular/core/radio')) :
3
- typeof define === 'function' && define.amd ? define('@sd-angular/core', ['exports', '@sd-angular/core/common', '@sd-angular/core/label', '@sd-angular/core/input-upload-file', '@sd-angular/core/chip', '@sd-angular/core/textarea', '@sd-angular/core/checkbox', '@sd-angular/core/time', '@sd-angular/core/side-drawer', '@sd-angular/core/tab-router', '@sd-angular/core/excel', '@sd-angular/core/input', '@sd-angular/core/select', '@sd-angular/core/quick-action', '@sd-angular/core/image-preview', '@sd-angular/core/comment', '@angular/core', '@angular/common', '@angular/common/http', '@angular/forms', 'ckeditor4-angular', '@angular/material/form-field', '@angular/material/tooltip', '@angular/material/input', '@angular/material/checkbox', '@angular/material/slide-toggle', '@angular/material/select', '@angular/material/radio', '@angular/material/autocomplete', '@angular/material/icon', '@angular/material/menu', '@angular/material/chips', '@angular/material/button', '@angular/material/dialog', '@angular/material/bottom-sheet', '@angular/material/progress-spinner', '@angular/material/expansion', '@angular/material/tabs', '@angular/cdk/drag-drop', '@angular/material/paginator', 'ngx-device-detector', '@sd-angular/core/service', '@sd-angular/core/chart', '@sd-angular/core/grid-material', '@sd-angular/core/editor', '@sd-angular/core/konva', 'uuid', 'jquery', 'jquery-datetimepicker', '@angular/platform-browser', '@sd-angular/core/upload-excel', '@sd-angular/core/grid', '@sd-angular/core/form', '@sd-angular/core/api', '@sd-angular/core/loading', '@sd-angular/core/notify', '@sd-angular/core/setting', '@sd-angular/core/translate', '@sd-angular/core/utility', '@sd-angular/core/dynamic-report', '@sd-angular/core/upload-file', '@sd-angular/core/date-range', '@sd-angular/core/date-time', '@sd-angular/core/button', '@sd-angular/core/autocomplete', '@sd-angular/core/select-editor', '@sd-angular/core/modal', '@sd-angular/core/switch', '@sd-angular/core/radio'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = {}), global['sd-angular'].core.common, global['sd-angular'].core.label, global['sd-angular'].core['input-upload-file'], global['sd-angular'].core.chip, global['sd-angular'].core.textarea, global['sd-angular'].core.checkbox, global['sd-angular'].core.time, global['sd-angular'].core['side-drawer'], global['sd-angular'].core['tab-router'], global['sd-angular'].core.excel, global['sd-angular'].core.input, global['sd-angular'].core.select, global['sd-angular'].core['quick-action'], global['sd-angular'].core['image-preview'], global['sd-angular'].core.comment, global.ng.core, global.ng.common, global.ng.common.http, global.ng.forms, global['ckeditor4-angular'], global.ng.material.formField, global.ng.material.tooltip, global.ng.material.input, global.ng.material.checkbox, global.ng.material.slideToggle, global.ng.material.select, global.ng.material.radio, global.ng.material.autocomplete, global.ng.material.icon, global.ng.material.menu, global.ng.material.chips, global.ng.material.button, global.ng.material.dialog, global.ng.material.bottomSheet, global.ng.material.progressSpinner, global.ng.material.expansion, global.ng.material.tabs, global.ng.cdk.dragDrop, global.ng.material.paginator, global['ngx-device-detector'], global['sd-angular'].core.service, global['sd-angular'].core.chart, global['sd-angular'].core['grid-material'], global['sd-angular'].core.editor, global['sd-angular'].core.konva, global.uuid, global.jquery, null, global.ng.platformBrowser, global['sd-angular'].core['upload-excel'], global['sd-angular'].core.grid, global['sd-angular'].core.form, global['sd-angular'].core.api, global['sd-angular'].core.loading, global['sd-angular'].core.notify, global['sd-angular'].core.setting, global['sd-angular'].core.translate, global['sd-angular'].core.utility, global['sd-angular'].core['dynamic-report'], global['sd-angular'].core['upload-file'], global['sd-angular'].core['date-range'], global['sd-angular'].core['date-time'], global['sd-angular'].core.button, global['sd-angular'].core.autocomplete, global['sd-angular'].core['select-editor'], global['sd-angular'].core.modal, global['sd-angular'].core.switch, global['sd-angular'].core.radio));
5
- }(this, (function (exports, common$1, label, inputUploadFile, chip, textarea, checkbox$1, time, sideDrawer, tabRouter, excel, input$1, select$1, quickAction, imagePreview, comment, core, common, http, forms, ckeditor4Angular, formField, tooltip, input, checkbox, slideToggle, select, radio$1, autocomplete$1, icon, menu, chips, button$1, dialog, bottomSheet, progressSpinner, expansion, tabs, dragDrop, paginator, ngxDeviceDetector, service, chart, gridMaterial, editor, konva, uuid, $, jqueryDatetimepicker, platformBrowser, uploadExcel, grid, form, api, loading, notify, setting, translate, utility, dynamicReport, uploadFile, dateRange, dateTime, button, autocomplete, selectEditor, modal, _switch, radio) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@sd-angular/core/common'), require('@sd-angular/core/label'), require('@sd-angular/core/input-upload-file'), require('@sd-angular/core/chip'), require('@sd-angular/core/textarea'), require('@sd-angular/core/checkbox'), require('@sd-angular/core/time'), require('@sd-angular/core/side-drawer'), require('@sd-angular/core/tab-router'), require('@sd-angular/core/excel'), require('@sd-angular/core/input'), require('@sd-angular/core/select'), require('@sd-angular/core/quick-action'), require('@sd-angular/core/image-preview'), require('@sd-angular/core/comment'), require('@sd-angular/core/filter'), require('@sd-angular/core/modal-resizable'), require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('@angular/forms'), require('ckeditor4-angular'), require('@angular/material/form-field'), require('@angular/material/tooltip'), require('@angular/material/input'), require('@angular/material/checkbox'), require('@angular/material/slide-toggle'), require('@angular/material/select'), require('@angular/material/radio'), require('@angular/material/autocomplete'), require('@angular/material/icon'), require('@angular/material/menu'), require('@angular/material/chips'), require('@angular/material/button'), require('@angular/material/dialog'), require('@angular/material/bottom-sheet'), require('@angular/material/progress-spinner'), require('@angular/material/expansion'), require('@angular/material/tabs'), require('@angular/cdk/drag-drop'), require('@angular/material/paginator'), require('ngx-device-detector'), require('@sd-angular/core/service'), require('@sd-angular/core/chart'), require('@sd-angular/core/grid-material'), require('@sd-angular/core/editor'), require('@sd-angular/core/konva'), require('uuid'), require('jquery'), require('jquery-datetimepicker'), require('@angular/platform-browser'), require('@sd-angular/core/upload-excel'), require('@sd-angular/core/grid'), require('@sd-angular/core/form'), require('@sd-angular/core/api'), require('@sd-angular/core/loading'), require('@sd-angular/core/notify'), require('@sd-angular/core/setting'), require('@sd-angular/core/translate'), require('@sd-angular/core/utility'), require('@sd-angular/core/dynamic-report'), require('@sd-angular/core/upload-file'), require('@sd-angular/core/date-range'), require('@sd-angular/core/date-time'), require('@sd-angular/core/button'), require('@sd-angular/core/autocomplete'), require('@sd-angular/core/select-editor'), require('@sd-angular/core/modal'), require('@sd-angular/core/switch'), require('@sd-angular/core/radio')) :
3
+ typeof define === 'function' && define.amd ? define('@sd-angular/core', ['exports', '@sd-angular/core/common', '@sd-angular/core/label', '@sd-angular/core/input-upload-file', '@sd-angular/core/chip', '@sd-angular/core/textarea', '@sd-angular/core/checkbox', '@sd-angular/core/time', '@sd-angular/core/side-drawer', '@sd-angular/core/tab-router', '@sd-angular/core/excel', '@sd-angular/core/input', '@sd-angular/core/select', '@sd-angular/core/quick-action', '@sd-angular/core/image-preview', '@sd-angular/core/comment', '@sd-angular/core/filter', '@sd-angular/core/modal-resizable', '@angular/core', '@angular/common', '@angular/common/http', '@angular/forms', 'ckeditor4-angular', '@angular/material/form-field', '@angular/material/tooltip', '@angular/material/input', '@angular/material/checkbox', '@angular/material/slide-toggle', '@angular/material/select', '@angular/material/radio', '@angular/material/autocomplete', '@angular/material/icon', '@angular/material/menu', '@angular/material/chips', '@angular/material/button', '@angular/material/dialog', '@angular/material/bottom-sheet', '@angular/material/progress-spinner', '@angular/material/expansion', '@angular/material/tabs', '@angular/cdk/drag-drop', '@angular/material/paginator', 'ngx-device-detector', '@sd-angular/core/service', '@sd-angular/core/chart', '@sd-angular/core/grid-material', '@sd-angular/core/editor', '@sd-angular/core/konva', 'uuid', 'jquery', 'jquery-datetimepicker', '@angular/platform-browser', '@sd-angular/core/upload-excel', '@sd-angular/core/grid', '@sd-angular/core/form', '@sd-angular/core/api', '@sd-angular/core/loading', '@sd-angular/core/notify', '@sd-angular/core/setting', '@sd-angular/core/translate', '@sd-angular/core/utility', '@sd-angular/core/dynamic-report', '@sd-angular/core/upload-file', '@sd-angular/core/date-range', '@sd-angular/core/date-time', '@sd-angular/core/button', '@sd-angular/core/autocomplete', '@sd-angular/core/select-editor', '@sd-angular/core/modal', '@sd-angular/core/switch', '@sd-angular/core/radio'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['sd-angular'] = global['sd-angular'] || {}, global['sd-angular'].core = {}), global['sd-angular'].core.common, global['sd-angular'].core.label, global['sd-angular'].core['input-upload-file'], global['sd-angular'].core.chip, global['sd-angular'].core.textarea, global['sd-angular'].core.checkbox, global['sd-angular'].core.time, global['sd-angular'].core['side-drawer'], global['sd-angular'].core['tab-router'], global['sd-angular'].core.excel, global['sd-angular'].core.input, global['sd-angular'].core.select, global['sd-angular'].core['quick-action'], global['sd-angular'].core['image-preview'], global['sd-angular'].core.comment, global['sd-angular'].core.filter, global['sd-angular'].core['modal-resizable'], global.ng.core, global.ng.common, global.ng.common.http, global.ng.forms, global['ckeditor4-angular'], global.ng.material.formField, global.ng.material.tooltip, global.ng.material.input, global.ng.material.checkbox, global.ng.material.slideToggle, global.ng.material.select, global.ng.material.radio, global.ng.material.autocomplete, global.ng.material.icon, global.ng.material.menu, global.ng.material.chips, global.ng.material.button, global.ng.material.dialog, global.ng.material.bottomSheet, global.ng.material.progressSpinner, global.ng.material.expansion, global.ng.material.tabs, global.ng.cdk.dragDrop, global.ng.material.paginator, global['ngx-device-detector'], global['sd-angular'].core.service, global['sd-angular'].core.chart, global['sd-angular'].core['grid-material'], global['sd-angular'].core.editor, global['sd-angular'].core.konva, global.uuid, global.jquery, null, global.ng.platformBrowser, global['sd-angular'].core['upload-excel'], global['sd-angular'].core.grid, global['sd-angular'].core.form, global['sd-angular'].core.api, global['sd-angular'].core.loading, global['sd-angular'].core.notify, global['sd-angular'].core.setting, global['sd-angular'].core.translate, global['sd-angular'].core.utility, global['sd-angular'].core['dynamic-report'], global['sd-angular'].core['upload-file'], global['sd-angular'].core['date-range'], global['sd-angular'].core['date-time'], global['sd-angular'].core.button, global['sd-angular'].core.autocomplete, global['sd-angular'].core['select-editor'], global['sd-angular'].core.modal, global['sd-angular'].core.switch, global['sd-angular'].core.radio));
5
+ }(this, (function (exports, common$1, label, inputUploadFile, chip, textarea, checkbox$1, time, sideDrawer, tabRouter, excel, input$1, select$1, quickAction, imagePreview, comment, filter, modalResizable, core, common, http, forms, ckeditor4Angular, formField, tooltip, input, checkbox, slideToggle, select, radio$1, autocomplete$1, icon, menu, chips, button$1, dialog, bottomSheet, progressSpinner, expansion, tabs, dragDrop, paginator, ngxDeviceDetector, service, chart, gridMaterial, editor, konva, uuid, $, jqueryDatetimepicker, platformBrowser, uploadExcel, grid, form, api, loading, notify, setting, translate, utility, dynamicReport, uploadFile, dateRange, dateTime, button, autocomplete, selectEditor, modal, _switch, radio) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -1,2 +1,2 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@sd-angular/core/common"),require("@sd-angular/core/label"),require("@sd-angular/core/input-upload-file"),require("@sd-angular/core/chip"),require("@sd-angular/core/textarea"),require("@sd-angular/core/checkbox"),require("@sd-angular/core/time"),require("@sd-angular/core/side-drawer"),require("@sd-angular/core/tab-router"),require("@sd-angular/core/excel"),require("@sd-angular/core/input"),require("@sd-angular/core/select"),require("@sd-angular/core/quick-action"),require("@sd-angular/core/image-preview"),require("@sd-angular/core/comment"),require("@angular/core"),require("@angular/common"),require("@angular/common/http"),require("@angular/forms"),require("ckeditor4-angular"),require("@angular/material/form-field"),require("@angular/material/tooltip"),require("@angular/material/input"),require("@angular/material/checkbox"),require("@angular/material/slide-toggle"),require("@angular/material/select"),require("@angular/material/radio"),require("@angular/material/autocomplete"),require("@angular/material/icon"),require("@angular/material/menu"),require("@angular/material/chips"),require("@angular/material/button"),require("@angular/material/dialog"),require("@angular/material/bottom-sheet"),require("@angular/material/progress-spinner"),require("@angular/material/expansion"),require("@angular/material/tabs"),require("@angular/cdk/drag-drop"),require("@angular/material/paginator"),require("ngx-device-detector"),require("@sd-angular/core/service"),require("@sd-angular/core/chart"),require("@sd-angular/core/grid-material"),require("@sd-angular/core/editor"),require("@sd-angular/core/konva"),require("uuid"),require("jquery"),require("jquery-datetimepicker"),require("@angular/platform-browser"),require("@sd-angular/core/upload-excel"),require("@sd-angular/core/grid"),require("@sd-angular/core/form"),require("@sd-angular/core/api"),require("@sd-angular/core/loading"),require("@sd-angular/core/notify"),require("@sd-angular/core/setting"),require("@sd-angular/core/translate"),require("@sd-angular/core/utility"),require("@sd-angular/core/dynamic-report"),require("@sd-angular/core/upload-file"),require("@sd-angular/core/date-range"),require("@sd-angular/core/date-time"),require("@sd-angular/core/button"),require("@sd-angular/core/autocomplete"),require("@sd-angular/core/select-editor"),require("@sd-angular/core/modal"),require("@sd-angular/core/switch"),require("@sd-angular/core/radio")):"function"==typeof define&&define.amd?define("@sd-angular/core",["exports","@sd-angular/core/common","@sd-angular/core/label","@sd-angular/core/input-upload-file","@sd-angular/core/chip","@sd-angular/core/textarea","@sd-angular/core/checkbox","@sd-angular/core/time","@sd-angular/core/side-drawer","@sd-angular/core/tab-router","@sd-angular/core/excel","@sd-angular/core/input","@sd-angular/core/select","@sd-angular/core/quick-action","@sd-angular/core/image-preview","@sd-angular/core/comment","@angular/core","@angular/common","@angular/common/http","@angular/forms","ckeditor4-angular","@angular/material/form-field","@angular/material/tooltip","@angular/material/input","@angular/material/checkbox","@angular/material/slide-toggle","@angular/material/select","@angular/material/radio","@angular/material/autocomplete","@angular/material/icon","@angular/material/menu","@angular/material/chips","@angular/material/button","@angular/material/dialog","@angular/material/bottom-sheet","@angular/material/progress-spinner","@angular/material/expansion","@angular/material/tabs","@angular/cdk/drag-drop","@angular/material/paginator","ngx-device-detector","@sd-angular/core/service","@sd-angular/core/chart","@sd-angular/core/grid-material","@sd-angular/core/editor","@sd-angular/core/konva","uuid","jquery","jquery-datetimepicker","@angular/platform-browser","@sd-angular/core/upload-excel","@sd-angular/core/grid","@sd-angular/core/form","@sd-angular/core/api","@sd-angular/core/loading","@sd-angular/core/notify","@sd-angular/core/setting","@sd-angular/core/translate","@sd-angular/core/utility","@sd-angular/core/dynamic-report","@sd-angular/core/upload-file","@sd-angular/core/date-range","@sd-angular/core/date-time","@sd-angular/core/button","@sd-angular/core/autocomplete","@sd-angular/core/select-editor","@sd-angular/core/modal","@sd-angular/core/switch","@sd-angular/core/radio"],r):r(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core={}),e["sd-angular"].core.common,e["sd-angular"].core.label,e["sd-angular"].core["input-upload-file"],e["sd-angular"].core.chip,e["sd-angular"].core.textarea,e["sd-angular"].core.checkbox,e["sd-angular"].core.time,e["sd-angular"].core["side-drawer"],e["sd-angular"].core["tab-router"],e["sd-angular"].core.excel,e["sd-angular"].core.input,e["sd-angular"].core.select,e["sd-angular"].core["quick-action"],e["sd-angular"].core["image-preview"],e["sd-angular"].core.comment,e.ng.core,e.ng.common,e.ng.common.http,e.ng.forms,e["ckeditor4-angular"],e.ng.material.formField,e.ng.material.tooltip,e.ng.material.input,e.ng.material.checkbox,e.ng.material.slideToggle,e.ng.material.select,e.ng.material.radio,e.ng.material.autocomplete,e.ng.material.icon,e.ng.material.menu,e.ng.material.chips,e.ng.material.button,e.ng.material.dialog,e.ng.material.bottomSheet,e.ng.material.progressSpinner,e.ng.material.expansion,e.ng.material.tabs,e.ng.cdk.dragDrop,e.ng.material.paginator,e["ngx-device-detector"],e["sd-angular"].core.service,e["sd-angular"].core.chart,e["sd-angular"].core["grid-material"],e["sd-angular"].core.editor,e["sd-angular"].core.konva,e.uuid,e.jquery,null,e.ng.platformBrowser,e["sd-angular"].core["upload-excel"],e["sd-angular"].core.grid,e["sd-angular"].core.form,e["sd-angular"].core.api,e["sd-angular"].core.loading,e["sd-angular"].core.notify,e["sd-angular"].core.setting,e["sd-angular"].core.translate,e["sd-angular"].core.utility,e["sd-angular"].core["dynamic-report"],e["sd-angular"].core["upload-file"],e["sd-angular"].core["date-range"],e["sd-angular"].core["date-time"],e["sd-angular"].core.button,e["sd-angular"].core.autocomplete,e["sd-angular"].core["select-editor"],e["sd-angular"].core.modal,e["sd-angular"].core.switch,e["sd-angular"].core.radio)}(this,(function(e,r,t,a,n,o,i,u,l,d,c,s,g,p,m,f,y,h,M,b,D,q,v,O,x,k,j,C,S,E,I,P,w,T,H,F,V,A,G,_,R,N,z,B,U,L,K,Y,$,J,Q,W,X,Z,ee,re,te,ae,ne,oe,ie,ue,le,de,ce,se,ge,pe,me){"use strict";function fe(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var ye=fe(Y),he=function(){};he.decorators=[{type:y.NgModule,args:[{imports:[v.MatTooltipModule,q.MatFormFieldModule,O.MatInputModule,j.MatSelectModule,S.MatAutocompleteModule,x.MatCheckboxModule,k.MatSlideToggleModule,C.MatRadioModule,E.MatIconModule,I.MatMenuModule,P.MatChipsModule,w.MatButtonModule,T.MatDialogModule,H.MatBottomSheetModule,F.MatProgressSpinnerModule,G.DragDropModule,V.MatExpansionModule,A.MatTabsModule,_.MatPaginatorModule],exports:[v.MatTooltipModule,q.MatFormFieldModule,O.MatInputModule,j.MatSelectModule,S.MatAutocompleteModule,x.MatCheckboxModule,k.MatSlideToggleModule,C.MatRadioModule,E.MatIconModule,I.MatMenuModule,P.MatChipsModule,w.MatButtonModule,T.MatDialogModule,H.MatBottomSheetModule,F.MatProgressSpinnerModule,G.DragDropModule,V.MatExpansionModule,A.MatTabsModule,_.MatPaginatorModule]}]}];var Me=function(){function e(){}return e.prototype.transform=function(e,r){return Date.isDate(e)?Date.toFormat(e,r):e},e}();Me.decorators=[{type:y.Pipe,args:[{name:"sdDate"}]}];var be=function(){function e(e,r){var t=this;this.ref=e,this.isMobileOrTablet=!1,this.initialized=!1,this.pMinDate=null,this.pMaxDate=null,this.name=K.v4(),this.type="datetime",this.disabled=!1,this.required=!1,this.sdChange=new y.EventEmitter,this.modelChange=new y.EventEmitter,this.onFocus=function(){t.isMobileOrTablet&&ye.default(t.control.nativeElement).trigger("blur")},this.onChanges=function(){t.date=t.pDate},this.isMobileOrTablet=!r.isDesktop()}return Object.defineProperty(e.prototype,"minDate",{set:function(e){Date.isDate(e)?this.pMinDate=Date.toFormat(e,"yyyy/MM/dd HH:mm"):this.pMinDate=null,this.setOption()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{set:function(e){Date.isDate(e)?this.pMaxDate=Date.toFormat(e,"yyyy/MM/dd HH:mm"):this.pMaxDate=null,this.setOption()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){Date.isDate(e)?"datetime"===this.type?this.pDate=Date.toFormat(e,"dd/MM/yyyy HH:mm"):"date"===this.type?this.pDate=Date.toFormat(e,"dd/MM/yyyy"):this.pDate=Date.toFormat(e,"HH:mm"):this.pDate=null,this.initialized&&this.onChanges(),this.ref.detectChanges()},enumerable:!1,configurable:!0}),e.prototype.ngOnDestroy=function(){var e;null===(e=this.form)||void 0===e||e.removeControl(this.formModel)},e.prototype.ngAfterViewInit=function(){var e;null===(e=this.form)||void 0===e||e.addControl(this.formModel),this.onChanges(),this.initialized=!0,this.setOption(),this.ref.detectChanges()},e.prototype.setOption=function(){var e=this;this.initialized&&ye.default(this.control.nativeElement).datetimepicker({datepicker:"datetime"===this.type||"date"===this.type,timepicker:"datetime"===this.type||"time"===this.type,format:"datetime"===this.type?"d/m/Y H:i":"date"===this.type?"d/m/Y":"H:i",step:15,minDate:this.pMinDate||void 0,maxDate:this.pMaxDate||void 0,scrollMonth:!1,scrollTime:!1,scrollInput:!1,onChangeDateTime:function(r){(r||e.date)&&(r="datetime"===e.type?Date.toFormat(r,"dd/MM/yyyy HH:mm"):"time"===e.type?Date.toFormat(r,"HH:mm"):Date.toFormat(r,"dd/MM/yyyy"),e.equal(r,e.date)||(e.model=e.parse(r),e.modelChange.emit(e.parse(r)),e.sdChange.emit(e.parse(r))),e.ref.detectChanges())}})},e.prototype.parse=function(e){return"date"===this.type?Date.parseFrom(e,"dd/MM/yyyy"):"time"===this.type?Date.parseFrom(e,"HH:mm"):Date.parseFrom(e,"dd/MM/yyyy HH:mm")},e.prototype.equal=function(e,r){return Date.equal(this.parse(e),this.parse(r))},e}();be.decorators=[{type:y.Component,args:[{selector:"sd-date-picker-control",template:'<mat-form-field appearance="outline">\r\n <mat-label *ngIf="label">{{label}}</mat-label>\r\n <input #formModel="ngModel" [name]="name" autocomplete="off" #control matInput\r\n placeholder="{{placeholder || label}}" [ngModel]="date" (focus)="onFocus()" [required]="required" [disabled]="disabled"\r\n [sdMinDate]="pMinDate" [sdMaxDate]="pMaxDate" [sdCustomValidator]="validator" autocomplete="off">\r\n <mat-icon *ngIf="type !== \'time\'" matSuffix>date_range</mat-icon>\r\n <mat-icon *ngIf="type === \'time\'" matSuffix>schedule</mat-icon>\r\n \x3c!-- <i matSuffix class="fa" [ngClass]="{\'fa-clock-o\':type === \'time\', \'fa-calendar\':type !== \'time\'}"></i> --\x3e\r\n <mat-error *ngIf="formModel?.errors?.required">\r\n {{\'This field is required\' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf="formModel?.errors?.minDate">\r\n {{\'Min date\' | sdTranslate}}: <strong>{{pMinDate | date:\'dd/MM/yyyy HH:mm\'}}</strong>\r\n </mat-error>\r\n <mat-error *ngIf="formModel?.errors?.maxDate">\r\n {{\'Max date\' | sdTranslate}}: <strong>{{pMaxDate | date:\'dd/MM/yyyy HH:mm\'}}</strong>\r\n </mat-error>\r\n <mat-error *ngIf="formModel?.errors?.customValidator">\r\n <strong>{{formModel?.errors?.customValidator}}</strong>\r\n </mat-error>\r\n</mat-form-field>',encapsulation:y.ViewEncapsulation.None,styles:[".xdsoft_datetimepicker{z-index:99999}"]}]}],be.ctorParameters=function(){return[{type:y.ChangeDetectorRef},{type:R.DeviceDetectorService}]},be.propDecorators={form:[{type:y.Input}],type:[{type:y.Input}],disabled:[{type:y.Input}],required:[{type:y.Input}],label:[{type:y.Input}],placeholder:[{type:y.Input}],minDate:[{type:y.Input}],maxDate:[{type:y.Input}],validator:[{type:y.Input}],sdChange:[{type:y.Output}],model:[{type:y.Input}],modelChange:[{type:y.Output}],control:[{type:y.ViewChild,args:["control"]}],formModel:[{type:y.ViewChild,args:["formModel"]}]};var De=function(){function e(e,r){this.ref=e,this.sanitizer=r,this.disabled=!1,this.required=!1,this.modelChange=new y.EventEmitter,this.change=new y.EventEmitter,this.sdChange=new y.EventEmitter,this.editorUrl="../../assets/ckeditor/ckeditor.js"}return Object.defineProperty(e.prototype,"model",{set:function(e){this.cModel=e,this.ref.detectChanges()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"config",{set:function(e){this.cConfig=e,this.ref.detectChanges()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){},e.prototype.onChange=function(e){this.model=e,this.modelChange.emit(e),this.change.emit(e),this.sdChange.emit(e)},e}();De.decorators=[{type:y.Component,args:[{selector:"sd-ckeditor-control",template:'\r\n<label *ngIf="label" class="T14M d-block">{{label}} <span *ngIf="required" class="text-danger">*</span></label>\r\n<ckeditor [ngModel]="cModel" (ngModelChange)="onChange($event)" [config]="cConfig" [readOnly]="disabled" [editorUrl]="editorUrl"></ckeditor>',styles:[":host ::ng-deep .ck-editor__editable{min-height:500px}"]}]}],De.ctorParameters=function(){return[{type:y.ChangeDetectorRef},{type:J.DomSanitizer}]},De.propDecorators={label:[{type:y.Input}],disabled:[{type:y.Input}],required:[{type:y.Input}],model:[{type:y.Input}],config:[{type:y.Input}],modelChange:[{type:y.Output}],change:[{type:y.Output}],sdChange:[{type:y.Output}]};var qe=function(){function e(){}return e.prototype.validate=function(e){var r=e.value||null,t=this.minDate||null;return r&&t&&new Date(Date.parseFrom(r,"dd/MM/yyyy HH:mm")).getTime()<new Date(t).getTime()?{minDate:!0}:null},e}();qe.decorators=[{type:y.Directive,args:[{selector:"[sdMinDate]",providers:[{provide:b.NG_VALIDATORS,useExisting:qe,multi:!0}]}]}],qe.propDecorators={minDate:[{type:y.Input,args:["sdMinDate"]}]};var ve=function(){function e(){}return e.prototype.validate=function(e){var r=e.value||null,t=this.maxDate||null;return r&&t&&new Date(Date.parseFrom(r,"dd/MM/yyyy HH:mm")).getTime()>new Date(t).getTime()?{maxDate:!0}:null},e}();ve.decorators=[{type:y.Directive,args:[{selector:"[sdMaxDate]",providers:[{provide:b.NG_VALIDATORS,useExisting:ve,multi:!0}]}]}],ve.propDecorators={maxDate:[{type:y.Input,args:["sdMaxDate"]}]};function Oe(e,r,t,a){return new(t||(t=Promise))((function(n,o){function i(e){try{l(a.next(e))}catch(e){o(e)}}function u(e){try{l(a.throw(e))}catch(e){o(e)}}function l(e){var r;e.done?n(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(i,u)}l((a=a.apply(e,r||[])).next())}))}function xe(e,r){var t,a,n,o,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function u(o){return function(u){return function(o){if(t)throw new TypeError("Generator is already executing.");for(;i;)try{if(t=1,a&&(n=2&o[0]?a.return:o[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,o[1])).done)return n;switch(a=0,n&&(o=[2&o[0],n.value]),o[0]){case 0:case 1:n=o;break;case 4:return i.label++,{value:o[1],done:!1};case 5:i.label++,a=o[1],o=[0];continue;case 7:o=i.ops.pop(),i.trys.pop();continue;default:if(!(n=i.trys,(n=n.length>0&&n[n.length-1])||6!==o[0]&&2!==o[0])){i=0;continue}if(3===o[0]&&(!n||o[1]>n[0]&&o[1]<n[3])){i.label=o[1];break}if(6===o[0]&&i.label<n[1]){i.label=n[1],n=o;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(o);break}n[2]&&i.ops.pop(),i.trys.pop();continue}o=r.call(e,i)}catch(e){o=[6,e],a=0}finally{t=n=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,u])}}}Object.create;Object.create;var ke=function(){function e(){}return e.prototype.validate=function(e){return Oe(this,void 0,void 0,(function(){var r,t,a;return xe(this,(function(n){switch(n.label){case 0:return r=e.value||null,this.func&&"function"==typeof this.func?(t=this.func(r))instanceof Promise?[4,t]:[3,2]:[3,3];case 1:return(a=n.sent())?[2,{customValidator:a}]:[2,null];case 2:return t?[2,{customValidator:t}]:[2,null];case 3:return[2,null]}}))}))},e}();ke.decorators=[{type:y.Directive,args:[{selector:"[sdCustomValidator]",providers:[{provide:b.NG_ASYNC_VALIDATORS,useExisting:ke,multi:!0}]}]}],ke.propDecorators={func:[{type:y.Input,args:["sdCustomValidator"]}]};var je=function(){function e(){}return e.prototype.validate=function(e){if(this.func&&"function"==typeof this.func){var r=this.func();return r?{minItem:r}:null}return null},e}();je.decorators=[{type:y.Directive,args:[{selector:"[sdChipMinItem]",providers:[{provide:b.NG_VALIDATORS,useExisting:je,multi:!0}]}]}],je.propDecorators={func:[{type:y.Input,args:["sdChipMinItem"]}]};var Ce=function(){};Ce.decorators=[{type:y.NgModule,args:[{imports:[h.CommonModule,b.FormsModule,b.ReactiveFormsModule,M.HttpClientModule,he,D.CKEditorModule,R.DeviceDetectorModule.forRoot(),z.SdChartModule,L.SdKonvaModule,B.SdGridMaterialModule,Q.SdUploadExcelModule,W.SdGridModule,X.SdFormModule,N.SdServiceModule],declarations:[be,De,Me,qe,ve,ke,je],exports:[z.SdChartModule,L.SdKonvaModule,B.SdGridMaterialModule,U.SdEditorModule,Q.SdUploadExcelModule,W.SdGridModule,X.SdFormModule,N.SdServiceModule,he,be,De],providers:[h.DatePipe,h.DecimalPipe]}]}],Object.keys(N).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return N[r]}})})),Object.keys(z).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return z[r]}})})),Object.keys(U).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return U[r]}})})),Object.keys(L).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return L[r]}})})),Object.keys(Q).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return Q[r]}})})),Object.keys(W).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return W[r]}})})),Object.keys(X).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return X[r]}})})),Object.keys(ee).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ee[r]}})})),Object.keys(re).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return re[r]}})})),Object.keys(te).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return te[r]}})})),Object.keys(ae).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ae[r]}})})),Object.keys(ne).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ne[r]}})})),Object.keys(oe).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return oe[r]}})})),Object.keys(ie).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ie[r]}})})),Object.keys(ue).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ue[r]}})})),Object.keys(le).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return le[r]}})})),Object.keys(de).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return de[r]}})})),Object.keys(ce).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ce[r]}})})),Object.keys(se).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return se[r]}})})),Object.keys(ge).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ge[r]}})})),Object.keys(pe).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return pe[r]}})})),Object.keys(me).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return me[r]}})})),Object.defineProperty(e,"SdGridMaterial",{enumerable:!0,get:function(){return B.SdGridMaterial}}),Object.defineProperty(e,"SdApiModule",{enumerable:!0,get:function(){return Z.SdApiModule}}),Object.defineProperty(e,"SdApiService",{enumerable:!0,get:function(){return Z.SdApiService}}),e.CkeditorControlComponent=De,e.DatePickerControlComponent=be,e.MaterialModule=he,e.SdChipMinItemValidator=je,e.SdCoreModule=Ce,e.SdCustomValidator=ke,e.SdDatePipe=Me,e.SdMaxDateValidator=ve,e.SdMinDateValidator=qe,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@sd-angular/core/common"),require("@sd-angular/core/label"),require("@sd-angular/core/input-upload-file"),require("@sd-angular/core/chip"),require("@sd-angular/core/textarea"),require("@sd-angular/core/checkbox"),require("@sd-angular/core/time"),require("@sd-angular/core/side-drawer"),require("@sd-angular/core/tab-router"),require("@sd-angular/core/excel"),require("@sd-angular/core/input"),require("@sd-angular/core/select"),require("@sd-angular/core/quick-action"),require("@sd-angular/core/image-preview"),require("@sd-angular/core/comment"),require("@sd-angular/core/filter"),require("@sd-angular/core/modal-resizable"),require("@angular/core"),require("@angular/common"),require("@angular/common/http"),require("@angular/forms"),require("ckeditor4-angular"),require("@angular/material/form-field"),require("@angular/material/tooltip"),require("@angular/material/input"),require("@angular/material/checkbox"),require("@angular/material/slide-toggle"),require("@angular/material/select"),require("@angular/material/radio"),require("@angular/material/autocomplete"),require("@angular/material/icon"),require("@angular/material/menu"),require("@angular/material/chips"),require("@angular/material/button"),require("@angular/material/dialog"),require("@angular/material/bottom-sheet"),require("@angular/material/progress-spinner"),require("@angular/material/expansion"),require("@angular/material/tabs"),require("@angular/cdk/drag-drop"),require("@angular/material/paginator"),require("ngx-device-detector"),require("@sd-angular/core/service"),require("@sd-angular/core/chart"),require("@sd-angular/core/grid-material"),require("@sd-angular/core/editor"),require("@sd-angular/core/konva"),require("uuid"),require("jquery"),require("jquery-datetimepicker"),require("@angular/platform-browser"),require("@sd-angular/core/upload-excel"),require("@sd-angular/core/grid"),require("@sd-angular/core/form"),require("@sd-angular/core/api"),require("@sd-angular/core/loading"),require("@sd-angular/core/notify"),require("@sd-angular/core/setting"),require("@sd-angular/core/translate"),require("@sd-angular/core/utility"),require("@sd-angular/core/dynamic-report"),require("@sd-angular/core/upload-file"),require("@sd-angular/core/date-range"),require("@sd-angular/core/date-time"),require("@sd-angular/core/button"),require("@sd-angular/core/autocomplete"),require("@sd-angular/core/select-editor"),require("@sd-angular/core/modal"),require("@sd-angular/core/switch"),require("@sd-angular/core/radio")):"function"==typeof define&&define.amd?define("@sd-angular/core",["exports","@sd-angular/core/common","@sd-angular/core/label","@sd-angular/core/input-upload-file","@sd-angular/core/chip","@sd-angular/core/textarea","@sd-angular/core/checkbox","@sd-angular/core/time","@sd-angular/core/side-drawer","@sd-angular/core/tab-router","@sd-angular/core/excel","@sd-angular/core/input","@sd-angular/core/select","@sd-angular/core/quick-action","@sd-angular/core/image-preview","@sd-angular/core/comment","@sd-angular/core/filter","@sd-angular/core/modal-resizable","@angular/core","@angular/common","@angular/common/http","@angular/forms","ckeditor4-angular","@angular/material/form-field","@angular/material/tooltip","@angular/material/input","@angular/material/checkbox","@angular/material/slide-toggle","@angular/material/select","@angular/material/radio","@angular/material/autocomplete","@angular/material/icon","@angular/material/menu","@angular/material/chips","@angular/material/button","@angular/material/dialog","@angular/material/bottom-sheet","@angular/material/progress-spinner","@angular/material/expansion","@angular/material/tabs","@angular/cdk/drag-drop","@angular/material/paginator","ngx-device-detector","@sd-angular/core/service","@sd-angular/core/chart","@sd-angular/core/grid-material","@sd-angular/core/editor","@sd-angular/core/konva","uuid","jquery","jquery-datetimepicker","@angular/platform-browser","@sd-angular/core/upload-excel","@sd-angular/core/grid","@sd-angular/core/form","@sd-angular/core/api","@sd-angular/core/loading","@sd-angular/core/notify","@sd-angular/core/setting","@sd-angular/core/translate","@sd-angular/core/utility","@sd-angular/core/dynamic-report","@sd-angular/core/upload-file","@sd-angular/core/date-range","@sd-angular/core/date-time","@sd-angular/core/button","@sd-angular/core/autocomplete","@sd-angular/core/select-editor","@sd-angular/core/modal","@sd-angular/core/switch","@sd-angular/core/radio"],r):r(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core={}),e["sd-angular"].core.common,e["sd-angular"].core.label,e["sd-angular"].core["input-upload-file"],e["sd-angular"].core.chip,e["sd-angular"].core.textarea,e["sd-angular"].core.checkbox,e["sd-angular"].core.time,e["sd-angular"].core["side-drawer"],e["sd-angular"].core["tab-router"],e["sd-angular"].core.excel,e["sd-angular"].core.input,e["sd-angular"].core.select,e["sd-angular"].core["quick-action"],e["sd-angular"].core["image-preview"],e["sd-angular"].core.comment,e["sd-angular"].core.filter,e["sd-angular"].core["modal-resizable"],e.ng.core,e.ng.common,e.ng.common.http,e.ng.forms,e["ckeditor4-angular"],e.ng.material.formField,e.ng.material.tooltip,e.ng.material.input,e.ng.material.checkbox,e.ng.material.slideToggle,e.ng.material.select,e.ng.material.radio,e.ng.material.autocomplete,e.ng.material.icon,e.ng.material.menu,e.ng.material.chips,e.ng.material.button,e.ng.material.dialog,e.ng.material.bottomSheet,e.ng.material.progressSpinner,e.ng.material.expansion,e.ng.material.tabs,e.ng.cdk.dragDrop,e.ng.material.paginator,e["ngx-device-detector"],e["sd-angular"].core.service,e["sd-angular"].core.chart,e["sd-angular"].core["grid-material"],e["sd-angular"].core.editor,e["sd-angular"].core.konva,e.uuid,e.jquery,null,e.ng.platformBrowser,e["sd-angular"].core["upload-excel"],e["sd-angular"].core.grid,e["sd-angular"].core.form,e["sd-angular"].core.api,e["sd-angular"].core.loading,e["sd-angular"].core.notify,e["sd-angular"].core.setting,e["sd-angular"].core.translate,e["sd-angular"].core.utility,e["sd-angular"].core["dynamic-report"],e["sd-angular"].core["upload-file"],e["sd-angular"].core["date-range"],e["sd-angular"].core["date-time"],e["sd-angular"].core.button,e["sd-angular"].core.autocomplete,e["sd-angular"].core["select-editor"],e["sd-angular"].core.modal,e["sd-angular"].core.switch,e["sd-angular"].core.radio)}(this,(function(e,r,t,a,n,o,i,u,l,d,c,s,g,p,m,f,y,h,M,b,D,q,v,O,x,k,j,C,S,E,I,P,w,T,H,F,V,A,G,_,z,R,N,B,U,L,K,Y,$,J,Q,W,X,Z,ee,re,te,ae,ne,oe,ie,ue,le,de,ce,se,ge,pe,me,fe,ye){"use strict";function he(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var Me=he(J),be=function(){};be.decorators=[{type:M.NgModule,args:[{imports:[x.MatTooltipModule,O.MatFormFieldModule,k.MatInputModule,S.MatSelectModule,I.MatAutocompleteModule,j.MatCheckboxModule,C.MatSlideToggleModule,E.MatRadioModule,P.MatIconModule,w.MatMenuModule,T.MatChipsModule,H.MatButtonModule,F.MatDialogModule,V.MatBottomSheetModule,A.MatProgressSpinnerModule,z.DragDropModule,G.MatExpansionModule,_.MatTabsModule,R.MatPaginatorModule],exports:[x.MatTooltipModule,O.MatFormFieldModule,k.MatInputModule,S.MatSelectModule,I.MatAutocompleteModule,j.MatCheckboxModule,C.MatSlideToggleModule,E.MatRadioModule,P.MatIconModule,w.MatMenuModule,T.MatChipsModule,H.MatButtonModule,F.MatDialogModule,V.MatBottomSheetModule,A.MatProgressSpinnerModule,z.DragDropModule,G.MatExpansionModule,_.MatTabsModule,R.MatPaginatorModule]}]}];var De=function(){function e(){}return e.prototype.transform=function(e,r){return Date.isDate(e)?Date.toFormat(e,r):e},e}();De.decorators=[{type:M.Pipe,args:[{name:"sdDate"}]}];var qe=function(){function e(e,r){var t=this;this.ref=e,this.isMobileOrTablet=!1,this.initialized=!1,this.pMinDate=null,this.pMaxDate=null,this.name=$.v4(),this.type="datetime",this.disabled=!1,this.required=!1,this.sdChange=new M.EventEmitter,this.modelChange=new M.EventEmitter,this.onFocus=function(){t.isMobileOrTablet&&Me.default(t.control.nativeElement).trigger("blur")},this.onChanges=function(){t.date=t.pDate},this.isMobileOrTablet=!r.isDesktop()}return Object.defineProperty(e.prototype,"minDate",{set:function(e){Date.isDate(e)?this.pMinDate=Date.toFormat(e,"yyyy/MM/dd HH:mm"):this.pMinDate=null,this.setOption()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxDate",{set:function(e){Date.isDate(e)?this.pMaxDate=Date.toFormat(e,"yyyy/MM/dd HH:mm"):this.pMaxDate=null,this.setOption()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){Date.isDate(e)?"datetime"===this.type?this.pDate=Date.toFormat(e,"dd/MM/yyyy HH:mm"):"date"===this.type?this.pDate=Date.toFormat(e,"dd/MM/yyyy"):this.pDate=Date.toFormat(e,"HH:mm"):this.pDate=null,this.initialized&&this.onChanges(),this.ref.detectChanges()},enumerable:!1,configurable:!0}),e.prototype.ngOnDestroy=function(){var e;null===(e=this.form)||void 0===e||e.removeControl(this.formModel)},e.prototype.ngAfterViewInit=function(){var e;null===(e=this.form)||void 0===e||e.addControl(this.formModel),this.onChanges(),this.initialized=!0,this.setOption(),this.ref.detectChanges()},e.prototype.setOption=function(){var e=this;this.initialized&&Me.default(this.control.nativeElement).datetimepicker({datepicker:"datetime"===this.type||"date"===this.type,timepicker:"datetime"===this.type||"time"===this.type,format:"datetime"===this.type?"d/m/Y H:i":"date"===this.type?"d/m/Y":"H:i",step:15,minDate:this.pMinDate||void 0,maxDate:this.pMaxDate||void 0,scrollMonth:!1,scrollTime:!1,scrollInput:!1,onChangeDateTime:function(r){(r||e.date)&&(r="datetime"===e.type?Date.toFormat(r,"dd/MM/yyyy HH:mm"):"time"===e.type?Date.toFormat(r,"HH:mm"):Date.toFormat(r,"dd/MM/yyyy"),e.equal(r,e.date)||(e.model=e.parse(r),e.modelChange.emit(e.parse(r)),e.sdChange.emit(e.parse(r))),e.ref.detectChanges())}})},e.prototype.parse=function(e){return"date"===this.type?Date.parseFrom(e,"dd/MM/yyyy"):"time"===this.type?Date.parseFrom(e,"HH:mm"):Date.parseFrom(e,"dd/MM/yyyy HH:mm")},e.prototype.equal=function(e,r){return Date.equal(this.parse(e),this.parse(r))},e}();qe.decorators=[{type:M.Component,args:[{selector:"sd-date-picker-control",template:'<mat-form-field appearance="outline">\r\n <mat-label *ngIf="label">{{label}}</mat-label>\r\n <input #formModel="ngModel" [name]="name" autocomplete="off" #control matInput\r\n placeholder="{{placeholder || label}}" [ngModel]="date" (focus)="onFocus()" [required]="required" [disabled]="disabled"\r\n [sdMinDate]="pMinDate" [sdMaxDate]="pMaxDate" [sdCustomValidator]="validator" autocomplete="off">\r\n <mat-icon *ngIf="type !== \'time\'" matSuffix>date_range</mat-icon>\r\n <mat-icon *ngIf="type === \'time\'" matSuffix>schedule</mat-icon>\r\n \x3c!-- <i matSuffix class="fa" [ngClass]="{\'fa-clock-o\':type === \'time\', \'fa-calendar\':type !== \'time\'}"></i> --\x3e\r\n <mat-error *ngIf="formModel?.errors?.required">\r\n {{\'This field is required\' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf="formModel?.errors?.minDate">\r\n {{\'Min date\' | sdTranslate}}: <strong>{{pMinDate | date:\'dd/MM/yyyy HH:mm\'}}</strong>\r\n </mat-error>\r\n <mat-error *ngIf="formModel?.errors?.maxDate">\r\n {{\'Max date\' | sdTranslate}}: <strong>{{pMaxDate | date:\'dd/MM/yyyy HH:mm\'}}</strong>\r\n </mat-error>\r\n <mat-error *ngIf="formModel?.errors?.customValidator">\r\n <strong>{{formModel?.errors?.customValidator}}</strong>\r\n </mat-error>\r\n</mat-form-field>',encapsulation:M.ViewEncapsulation.None,styles:[".xdsoft_datetimepicker{z-index:99999}"]}]}],qe.ctorParameters=function(){return[{type:M.ChangeDetectorRef},{type:N.DeviceDetectorService}]},qe.propDecorators={form:[{type:M.Input}],type:[{type:M.Input}],disabled:[{type:M.Input}],required:[{type:M.Input}],label:[{type:M.Input}],placeholder:[{type:M.Input}],minDate:[{type:M.Input}],maxDate:[{type:M.Input}],validator:[{type:M.Input}],sdChange:[{type:M.Output}],model:[{type:M.Input}],modelChange:[{type:M.Output}],control:[{type:M.ViewChild,args:["control"]}],formModel:[{type:M.ViewChild,args:["formModel"]}]};var ve=function(){function e(e,r){this.ref=e,this.sanitizer=r,this.disabled=!1,this.required=!1,this.modelChange=new M.EventEmitter,this.change=new M.EventEmitter,this.sdChange=new M.EventEmitter,this.editorUrl="../../assets/ckeditor/ckeditor.js"}return Object.defineProperty(e.prototype,"model",{set:function(e){this.cModel=e,this.ref.detectChanges()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"config",{set:function(e){this.cConfig=e,this.ref.detectChanges()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){},e.prototype.onChange=function(e){this.model=e,this.modelChange.emit(e),this.change.emit(e),this.sdChange.emit(e)},e}();ve.decorators=[{type:M.Component,args:[{selector:"sd-ckeditor-control",template:'\r\n<label *ngIf="label" class="T14M d-block">{{label}} <span *ngIf="required" class="text-danger">*</span></label>\r\n<ckeditor [ngModel]="cModel" (ngModelChange)="onChange($event)" [config]="cConfig" [readOnly]="disabled" [editorUrl]="editorUrl"></ckeditor>',styles:[":host ::ng-deep .ck-editor__editable{min-height:500px}"]}]}],ve.ctorParameters=function(){return[{type:M.ChangeDetectorRef},{type:W.DomSanitizer}]},ve.propDecorators={label:[{type:M.Input}],disabled:[{type:M.Input}],required:[{type:M.Input}],model:[{type:M.Input}],config:[{type:M.Input}],modelChange:[{type:M.Output}],change:[{type:M.Output}],sdChange:[{type:M.Output}]};var Oe=function(){function e(){}return e.prototype.validate=function(e){var r=e.value||null,t=this.minDate||null;return r&&t&&new Date(Date.parseFrom(r,"dd/MM/yyyy HH:mm")).getTime()<new Date(t).getTime()?{minDate:!0}:null},e}();Oe.decorators=[{type:M.Directive,args:[{selector:"[sdMinDate]",providers:[{provide:q.NG_VALIDATORS,useExisting:Oe,multi:!0}]}]}],Oe.propDecorators={minDate:[{type:M.Input,args:["sdMinDate"]}]};var xe=function(){function e(){}return e.prototype.validate=function(e){var r=e.value||null,t=this.maxDate||null;return r&&t&&new Date(Date.parseFrom(r,"dd/MM/yyyy HH:mm")).getTime()>new Date(t).getTime()?{maxDate:!0}:null},e}();xe.decorators=[{type:M.Directive,args:[{selector:"[sdMaxDate]",providers:[{provide:q.NG_VALIDATORS,useExisting:xe,multi:!0}]}]}],xe.propDecorators={maxDate:[{type:M.Input,args:["sdMaxDate"]}]};function ke(e,r,t,a){return new(t||(t=Promise))((function(n,o){function i(e){try{l(a.next(e))}catch(e){o(e)}}function u(e){try{l(a.throw(e))}catch(e){o(e)}}function l(e){var r;e.done?n(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(i,u)}l((a=a.apply(e,r||[])).next())}))}function je(e,r){var t,a,n,o,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function u(o){return function(u){return function(o){if(t)throw new TypeError("Generator is already executing.");for(;i;)try{if(t=1,a&&(n=2&o[0]?a.return:o[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,o[1])).done)return n;switch(a=0,n&&(o=[2&o[0],n.value]),o[0]){case 0:case 1:n=o;break;case 4:return i.label++,{value:o[1],done:!1};case 5:i.label++,a=o[1],o=[0];continue;case 7:o=i.ops.pop(),i.trys.pop();continue;default:if(!(n=i.trys,(n=n.length>0&&n[n.length-1])||6!==o[0]&&2!==o[0])){i=0;continue}if(3===o[0]&&(!n||o[1]>n[0]&&o[1]<n[3])){i.label=o[1];break}if(6===o[0]&&i.label<n[1]){i.label=n[1],n=o;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(o);break}n[2]&&i.ops.pop(),i.trys.pop();continue}o=r.call(e,i)}catch(e){o=[6,e],a=0}finally{t=n=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,u])}}}Object.create;Object.create;var Ce=function(){function e(){}return e.prototype.validate=function(e){return ke(this,void 0,void 0,(function(){var r,t,a;return je(this,(function(n){switch(n.label){case 0:return r=e.value||null,this.func&&"function"==typeof this.func?(t=this.func(r))instanceof Promise?[4,t]:[3,2]:[3,3];case 1:return(a=n.sent())?[2,{customValidator:a}]:[2,null];case 2:return t?[2,{customValidator:t}]:[2,null];case 3:return[2,null]}}))}))},e}();Ce.decorators=[{type:M.Directive,args:[{selector:"[sdCustomValidator]",providers:[{provide:q.NG_ASYNC_VALIDATORS,useExisting:Ce,multi:!0}]}]}],Ce.propDecorators={func:[{type:M.Input,args:["sdCustomValidator"]}]};var Se=function(){function e(){}return e.prototype.validate=function(e){if(this.func&&"function"==typeof this.func){var r=this.func();return r?{minItem:r}:null}return null},e}();Se.decorators=[{type:M.Directive,args:[{selector:"[sdChipMinItem]",providers:[{provide:q.NG_VALIDATORS,useExisting:Se,multi:!0}]}]}],Se.propDecorators={func:[{type:M.Input,args:["sdChipMinItem"]}]};var Ee=function(){};Ee.decorators=[{type:M.NgModule,args:[{imports:[b.CommonModule,q.FormsModule,q.ReactiveFormsModule,D.HttpClientModule,be,v.CKEditorModule,N.DeviceDetectorModule.forRoot(),U.SdChartModule,Y.SdKonvaModule,L.SdGridMaterialModule,X.SdUploadExcelModule,Z.SdGridModule,ee.SdFormModule,B.SdServiceModule],declarations:[qe,ve,De,Oe,xe,Ce,Se],exports:[U.SdChartModule,Y.SdKonvaModule,L.SdGridMaterialModule,K.SdEditorModule,X.SdUploadExcelModule,Z.SdGridModule,ee.SdFormModule,B.SdServiceModule,be,qe,ve],providers:[b.DatePipe,b.DecimalPipe]}]}],Object.keys(B).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return B[r]}})})),Object.keys(U).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return U[r]}})})),Object.keys(K).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return K[r]}})})),Object.keys(Y).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return Y[r]}})})),Object.keys(X).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return X[r]}})})),Object.keys(Z).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return Z[r]}})})),Object.keys(ee).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ee[r]}})})),Object.keys(te).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return te[r]}})})),Object.keys(ae).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ae[r]}})})),Object.keys(ne).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ne[r]}})})),Object.keys(oe).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return oe[r]}})})),Object.keys(ie).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ie[r]}})})),Object.keys(ue).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ue[r]}})})),Object.keys(le).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return le[r]}})})),Object.keys(de).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return de[r]}})})),Object.keys(ce).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ce[r]}})})),Object.keys(se).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return se[r]}})})),Object.keys(ge).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ge[r]}})})),Object.keys(pe).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return pe[r]}})})),Object.keys(me).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return me[r]}})})),Object.keys(fe).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return fe[r]}})})),Object.keys(ye).forEach((function(r){"default"!==r&&Object.defineProperty(e,r,{enumerable:!0,get:function(){return ye[r]}})})),Object.defineProperty(e,"SdGridMaterial",{enumerable:!0,get:function(){return L.SdGridMaterial}}),Object.defineProperty(e,"SdApiModule",{enumerable:!0,get:function(){return re.SdApiModule}}),Object.defineProperty(e,"SdApiService",{enumerable:!0,get:function(){return re.SdApiService}}),e.CkeditorControlComponent=ve,e.DatePickerControlComponent=qe,e.MaterialModule=be,e.SdChipMinItemValidator=Se,e.SdCoreModule=Ee,e.SdCustomValidator=Ce,e.SdDatePipe=De,e.SdMaxDateValidator=xe,e.SdMinDateValidator=Oe,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=sd-angular-core.umd.min.js.map