@yelon/util 18.3.0 → 19.0.1

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 (162) hide show
  1. package/README.md +1 -1
  2. package/browser/cookie.service.d.ts +1 -3
  3. package/browser/style.d.ts +1 -3
  4. package/config/abc/date-picker.type.d.ts +2 -5
  5. package/config/abc/exception.type.d.ts +5 -7
  6. package/config/abc/loading.type.d.ts +1 -3
  7. package/config/abc/media.type.d.ts +1 -2
  8. package/config/abc/st.type.d.ts +11 -18
  9. package/config/acl/acl.type.d.ts +1 -2
  10. package/config/chart/chart.type.d.ts +1 -4
  11. package/config/config.service.d.ts +5 -4
  12. package/config/sf/sf.type.d.ts +3 -6
  13. package/config/theme/responsive.type.d.ts +8 -10
  14. package/date-time/time.d.ts +1 -2
  15. package/decorator/convert.d.ts +2 -3
  16. package/fesm2022/array.mjs +4 -4
  17. package/fesm2022/array.mjs.map +1 -1
  18. package/fesm2022/browser.mjs +13 -16
  19. package/fesm2022/browser.mjs.map +1 -1
  20. package/fesm2022/config.mjs +33 -18
  21. package/fesm2022/config.mjs.map +1 -1
  22. package/fesm2022/date-time.mjs +1 -1
  23. package/fesm2022/date-time.mjs.map +1 -1
  24. package/fesm2022/decorator.mjs.map +1 -1
  25. package/fesm2022/format.mjs +9 -7
  26. package/fesm2022/format.mjs.map +1 -1
  27. package/fesm2022/mcache.mjs.map +1 -1
  28. package/fesm2022/mtypes.mjs +4 -5
  29. package/fesm2022/mtypes.mjs.map +1 -1
  30. package/fesm2022/other.mjs +17 -21
  31. package/fesm2022/other.mjs.map +1 -1
  32. package/fesm2022/pipe-currency.mjs +20 -26
  33. package/fesm2022/pipe-currency.mjs.map +1 -1
  34. package/fesm2022/pipe-filter.mjs +8 -8
  35. package/fesm2022/pipe-filter.mjs.map +1 -1
  36. package/fesm2022/pipe-format.mjs +8 -8
  37. package/fesm2022/pipe-format.mjs.map +1 -1
  38. package/format/string.d.ts +3 -6
  39. package/mtypes/header-menu.type.d.ts +2 -3
  40. package/mtypes/menu.type.d.ts +5 -6
  41. package/mtypes/page.d.ts +1 -2
  42. package/other/deep.d.ts +4 -7
  43. package/other/lazy.service.d.ts +2 -5
  44. package/other/logger.d.ts +3 -4
  45. package/other/path-to-regexp.service.d.ts +11 -12
  46. package/package.json +8 -42
  47. package/pipes/filter/filter.pipe.d.ts +1 -2
  48. package/esm2022/array/array-type.service.mjs +0 -2
  49. package/esm2022/array/array.mjs +0 -5
  50. package/esm2022/array/array.service.mjs +0 -278
  51. package/esm2022/array/index.mjs +0 -3
  52. package/esm2022/browser/browser.mjs +0 -5
  53. package/esm2022/browser/cookie.service.mjs +0 -100
  54. package/esm2022/browser/copy.mjs +0 -28
  55. package/esm2022/browser/index.mjs +0 -6
  56. package/esm2022/browser/is-empty.mjs +0 -19
  57. package/esm2022/browser/scroll.service.mjs +0 -85
  58. package/esm2022/browser/style.mjs +0 -38
  59. package/esm2022/config/abc/cell.type.mjs +0 -2
  60. package/esm2022/config/abc/date-picker.type.mjs +0 -2
  61. package/esm2022/config/abc/error-collect.type.mjs +0 -2
  62. package/esm2022/config/abc/exception.type.mjs +0 -2
  63. package/esm2022/config/abc/image.type.mjs +0 -2
  64. package/esm2022/config/abc/index.mjs +0 -18
  65. package/esm2022/config/abc/loading.type.mjs +0 -2
  66. package/esm2022/config/abc/lodop.type.mjs +0 -2
  67. package/esm2022/config/abc/media.type.mjs +0 -2
  68. package/esm2022/config/abc/onboarding.type.mjs +0 -2
  69. package/esm2022/config/abc/page-header.type.mjs +0 -2
  70. package/esm2022/config/abc/pdf.type.mjs +0 -2
  71. package/esm2022/config/abc/se.type.mjs +0 -2
  72. package/esm2022/config/abc/sg.type.mjs +0 -2
  73. package/esm2022/config/abc/st.type.mjs +0 -2
  74. package/esm2022/config/abc/sv.type.mjs +0 -3
  75. package/esm2022/config/abc/xlsx.type.mjs +0 -2
  76. package/esm2022/config/abc/zip.type.mjs +0 -2
  77. package/esm2022/config/acl/acl.type.mjs +0 -2
  78. package/esm2022/config/auth/auth.type.mjs +0 -2
  79. package/esm2022/config/bis/bis.type.mjs +0 -2
  80. package/esm2022/config/cache/cache.type.mjs +0 -2
  81. package/esm2022/config/chart/chart.type.mjs +0 -2
  82. package/esm2022/config/config.mjs +0 -5
  83. package/esm2022/config/config.service.mjs +0 -38
  84. package/esm2022/config/config.types.mjs +0 -12
  85. package/esm2022/config/index.mjs +0 -15
  86. package/esm2022/config/mock/mock.type.mjs +0 -2
  87. package/esm2022/config/sf/sf.type.mjs +0 -2
  88. package/esm2022/config/socket/socket.type.mjs +0 -2
  89. package/esm2022/config/theme/http.type.mjs +0 -2
  90. package/esm2022/config/theme/i18n.type.mjs +0 -2
  91. package/esm2022/config/theme/index.mjs +0 -5
  92. package/esm2022/config/theme/pipe.type.mjs +0 -2
  93. package/esm2022/config/theme/responsive.type.mjs +0 -2
  94. package/esm2022/config/util/array.type.mjs +0 -2
  95. package/esm2022/config/util/currency.type.mjs +0 -2
  96. package/esm2022/date-time/date-time.mjs +0 -5
  97. package/esm2022/date-time/index.mjs +0 -3
  98. package/esm2022/date-time/picker.mjs +0 -116
  99. package/esm2022/date-time/time.mjs +0 -103
  100. package/esm2022/decorator/convert.mjs +0 -66
  101. package/esm2022/decorator/decorator.mjs +0 -5
  102. package/esm2022/decorator/index.mjs +0 -3
  103. package/esm2022/decorator/zone-outside.mjs +0 -57
  104. package/esm2022/form/form.mjs +0 -5
  105. package/esm2022/form/index.mjs +0 -3
  106. package/esm2022/form/match-control.mjs +0 -30
  107. package/esm2022/form/validators.mjs +0 -81
  108. package/esm2022/format/currency.service.mjs +0 -233
  109. package/esm2022/format/currency.types.mjs +0 -8
  110. package/esm2022/format/format.mjs +0 -5
  111. package/esm2022/format/index.mjs +0 -5
  112. package/esm2022/format/string.mjs +0 -85
  113. package/esm2022/format/validate.mjs +0 -94
  114. package/esm2022/index.mjs +0 -14
  115. package/esm2022/math/in-range.mjs +0 -25
  116. package/esm2022/math/index.mjs +0 -3
  117. package/esm2022/math/math.mjs +0 -5
  118. package/esm2022/math/round.mjs +0 -53
  119. package/esm2022/mcache/index.mjs +0 -2
  120. package/esm2022/mcache/localStorageUtils.mjs +0 -60
  121. package/esm2022/mcache/mcache.mjs +0 -5
  122. package/esm2022/mtypes/authority.type.mjs +0 -2
  123. package/esm2022/mtypes/header-menu.type.mjs +0 -2
  124. package/esm2022/mtypes/index.mjs +0 -10
  125. package/esm2022/mtypes/menu.type.mjs +0 -2
  126. package/esm2022/mtypes/mtypes.mjs +0 -5
  127. package/esm2022/mtypes/nav.types.mjs +0 -9
  128. package/esm2022/mtypes/page.mjs +0 -42
  129. package/esm2022/mtypes/project-info.types.mjs +0 -2
  130. package/esm2022/mtypes/response.mjs +0 -2
  131. package/esm2022/mtypes/role.type.mjs +0 -2
  132. package/esm2022/mtypes/user.types.mjs +0 -2
  133. package/esm2022/other/assert.mjs +0 -67
  134. package/esm2022/other/deep.mjs +0 -78
  135. package/esm2022/other/favicon.mjs +0 -29
  136. package/esm2022/other/index.mjs +0 -8
  137. package/esm2022/other/lazy.service.mjs +0 -129
  138. package/esm2022/other/logger.mjs +0 -33
  139. package/esm2022/other/other.mjs +0 -5
  140. package/esm2022/other/path-to-regexp.service.mjs +0 -239
  141. package/esm2022/other/resize.mjs +0 -4
  142. package/esm2022/pipes/currency/cny.pipe.mjs +0 -23
  143. package/esm2022/pipes/currency/index.mjs +0 -5
  144. package/esm2022/pipes/currency/mega.pipe.mjs +0 -25
  145. package/esm2022/pipes/currency/module.mjs +0 -19
  146. package/esm2022/pipes/currency/pipe-currency.mjs +0 -5
  147. package/esm2022/pipes/currency/price.pipe.mjs +0 -27
  148. package/esm2022/pipes/filter/filter.pipe.mjs +0 -20
  149. package/esm2022/pipes/filter/index.mjs +0 -3
  150. package/esm2022/pipes/filter/module.mjs +0 -17
  151. package/esm2022/pipes/filter/pipe-filter.mjs +0 -5
  152. package/esm2022/pipes/format/index.mjs +0 -3
  153. package/esm2022/pipes/format/mask.pipe.mjs +0 -34
  154. package/esm2022/pipes/format/module.mjs +0 -17
  155. package/esm2022/pipes/format/pipe-format.mjs +0 -5
  156. package/esm2022/pipes/index.mjs +0 -4
  157. package/esm2022/pipes/pipes.mjs +0 -5
  158. package/esm2022/token/index.mjs +0 -3
  159. package/esm2022/token/page-visibility.mjs +0 -15
  160. package/esm2022/token/token.mjs +0 -5
  161. package/esm2022/token/window.mjs +0 -17
  162. package/esm2022/yelon-util.mjs +0 -5
@@ -120,12 +120,10 @@ const log = (...args) => {
120
120
  * 延迟加载资源(js 或 css)服务
121
121
  */
122
122
  class LazyService {
123
- constructor() {
124
- this.doc = inject(DOCUMENT);
125
- this.list = {};
126
- this.cached = {};
127
- this._notify = new BehaviorSubject([]);
128
- }
123
+ doc = inject(DOCUMENT);
124
+ list = {};
125
+ cached = {};
126
+ _notify = new BehaviorSubject([]);
129
127
  get change() {
130
128
  return this._notify.asObservable().pipe(share(), filter(ls => ls.length !== 0));
131
129
  }
@@ -231,10 +229,10 @@ class LazyService {
231
229
  resolve(item);
232
230
  });
233
231
  }
234
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LazyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
235
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LazyService, providedIn: 'root' }); }
232
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: LazyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
233
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: LazyService, providedIn: 'root' });
236
234
  }
237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LazyService, decorators: [{
235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: LazyService, decorators: [{
238
236
  type: Injectable,
239
237
  args: [{ providedIn: 'root' }]
240
238
  }] });
@@ -307,10 +305,9 @@ function assertObservable(obj, msg) {
307
305
 
308
306
  /* eslint-disable @typescript-eslint/explicit-function-return-type */
309
307
  class PathToRegexpService {
310
- constructor() {
311
- this.DEFAULT_DELIMITER = '/';
312
- this.PATH_REGEXP = new RegExp(['(\\\\.)', '(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?'].join('|'), 'g');
313
- }
308
+ constructor() { }
309
+ DEFAULT_DELIMITER = '/';
310
+ PATH_REGEXP = new RegExp(['(\\\\.)', '(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?'].join('|'), 'g');
314
311
  parse(str, options) {
315
312
  const tokens = [];
316
313
  let key = 0;
@@ -367,7 +364,7 @@ class PathToRegexpService {
367
364
  : `[^${this.escapeString(delimiter === defaultDelimiter ? delimiter : delimiter + defaultDelimiter)}]+?`
368
365
  });
369
366
  }
370
- // Push NzSafeAny remaining characters.
367
+ // Push any remaining characters.
371
368
  if (path || index < str.length) {
372
369
  tokens.push(path + str.substr(index));
373
370
  }
@@ -460,8 +457,8 @@ class PathToRegexpService {
460
457
  }
461
458
  arrayToRegexp(path, keys, options) {
462
459
  const parts = [];
463
- for (let i = 0; i < path.length; i++) {
464
- parts.push(this.pathToRegexp(path[i], keys, options).source);
460
+ for (const item of path) {
461
+ parts.push(this.pathToRegexp(item, keys, options).source);
465
462
  }
466
463
  return new RegExp(`(?:${parts.join('|')})`, this.flags(options));
467
464
  }
@@ -480,8 +477,7 @@ class PathToRegexpService {
480
477
  .concat('$')
481
478
  .join('|');
482
479
  let route = start ? '^' : '';
483
- for (let i = 0; i < tokens.length; i++) {
484
- const token = tokens[i];
480
+ for (let token of tokens) {
485
481
  if (typeof token === 'string') {
486
482
  route += this.escapeString(token);
487
483
  }
@@ -532,10 +528,10 @@ class PathToRegexpService {
532
528
  }
533
529
  return this.stringToRegexp(/** @type {string} */ path, keys, options);
534
530
  }
535
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PathToRegexpService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
536
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PathToRegexpService, providedIn: 'root' }); }
531
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: PathToRegexpService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
532
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: PathToRegexpService, providedIn: 'root' });
537
533
  }
538
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PathToRegexpService, decorators: [{
534
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: PathToRegexpService, decorators: [{
539
535
  type: Injectable,
540
536
  args: [{
541
537
  providedIn: 'root'
@@ -1 +1 @@
1
- {"version":3,"file":"other.mjs","sources":["../../../../packages/util/other/deep.ts","../../../../packages/util/other/logger.ts","../../../../packages/util/other/lazy.service.ts","../../../../packages/util/other/assert.ts","../../../../packages/util/other/path-to-regexp.service.ts","../../../../packages/util/other/resize.ts","../../../../packages/util/other/favicon.ts","../../../../packages/util/other/other.ts"],"sourcesContent":["import extend from 'extend';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n/**\n * Gets the value at `path` of `object`, like `_.get` in lodash.\n *\n * 类似 `_.get`,根据 `path` 获取安全值\n */\nexport function deepGet(obj: NzSafeAny, path: string | string[] | null | undefined, defaultValue?: unknown): NzSafeAny {\n if (!obj || path == null || path.length === 0) return defaultValue;\n if (!Array.isArray(path)) {\n path = ~path.indexOf('.') ? path.split('.') : [path];\n }\n if (path.length === 1) {\n const checkObj = obj[path[0]];\n return typeof checkObj === 'undefined' ? defaultValue : checkObj;\n }\n const res = path.reduce((o, k) => (o || {})[k], obj);\n return typeof res === 'undefined' ? defaultValue : res;\n}\n\n/**\n * Base on [extend](https://github.com/justmoon/node-extend) deep copy.\n *\n * 基于 [extend](https://github.com/justmoon/node-extend) 的深度拷贝\n *\n * NOTE: Don't a lot of recursion, maybe performance issues\n */\nexport function deepCopy<T extends { [key: string]: NzSafeAny } = NzSafeAny>(obj: T | null | undefined): T {\n const result = extend(true, {}, { _: obj });\n return result._ as T;\n}\n\n/**\n * Deep merge object.\n *\n * 深度合并对象\n *\n * @param original 原始对象\n * @param arrayProcessMethod 数组处理方式\n * - `true` 表示替换新值,不管新值为哪种类型\n * - `false` 表示会合并整个数组(将旧数据与新数据合并成新数组)\n * @param objects 要合并的对象\n */\nexport function deepMergeKey(original: unknown, arrayProcessMethod: boolean, ...objects: NzSafeAny[]): NzSafeAny {\n if (Array.isArray(original) || typeof original !== 'object') return original;\n\n const isObject = (v: unknown): boolean => typeof v === 'object';\n\n const merge = (target: NzSafeAny, obj: NzSafeAny): NzSafeAny => {\n Object.keys(obj)\n .filter(key => key !== '__proto__' && Object.prototype.hasOwnProperty.call(obj, key))\n .forEach(key => {\n const fromValue = obj[key];\n const toValue = target[key];\n if (Array.isArray(toValue)) {\n target[key] = arrayProcessMethod ? fromValue : [...toValue, ...fromValue];\n } else if (typeof fromValue === 'function') {\n target[key] = fromValue;\n } else if (fromValue != null && isObject(fromValue) && toValue != null && isObject(toValue)) {\n target[key] = merge(toValue, fromValue);\n } else {\n target[key] = deepCopy(fromValue);\n }\n });\n return target;\n };\n\n objects.filter(v => v != null && isObject(v)).forEach(v => merge(original, v));\n\n return original;\n}\n\n/**\n * Deep merge object.\n *\n * 深度合并对象\n */\nexport function deepMerge(original: unknown, ...objects: unknown[]): NzSafeAny {\n return deepMergeKey(original, false, ...objects);\n}\n","import type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\ndeclare const ngDevMode: boolean;\n\nconst record: Record<string, boolean> = {};\n\nexport const PREFIX = '[@YELON]:';\n\nfunction notRecorded(...args: NzSafeAny[]): boolean {\n const asRecord = args.reduce((acc, c) => acc + c.toString(), '');\n\n if (record[asRecord]) {\n return false;\n } else {\n record[asRecord] = true;\n return true;\n }\n}\n\nfunction consoleCommonBehavior(consoleFunc: (...args: NzSafeAny) => void, ...args: NzSafeAny[]): void {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && notRecorded(...args)) {\n consoleFunc(...args);\n }\n}\n\n// Warning should only be printed in dev mode and only once.\nexport const warn = (...args: NzSafeAny[]): void =>\n consoleCommonBehavior((...arg: NzSafeAny[]) => console.warn(PREFIX, ...arg), ...args);\n\nexport const warnDeprecation = (...args: NzSafeAny[]): NzSafeAny => {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n return () => {};\n }\n const stack = new Error().stack;\n return consoleCommonBehavior((...arg: NzSafeAny[]) => console.warn(PREFIX, 'deprecated:', ...arg, stack), ...args);\n};\n\n// Log should only be printed in dev mode.\nexport const log = (...args: NzSafeAny[]): void => {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n console.log(PREFIX, ...args);\n }\n};\n","import { DOCUMENT } from '@angular/common';\nimport { Injectable, inject } from '@angular/core';\nimport { BehaviorSubject, Observable, filter, share } from 'rxjs';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport interface LazyResult {\n path: string;\n status: 'ok' | 'error' | 'loading';\n error?: NzSafeAny;\n}\n\nexport interface LazyLoadItem {\n path: string;\n options?: LazyLoadOptions;\n}\n\nexport interface LazyLoadOptions {\n innerContent?: string;\n attributes?: { [qualifiedName: string]: string };\n rel?: string;\n}\n\n/**\n * `LazyService` delay loading JS or CSS files.\n *\n * 延迟加载资源(js 或 css)服务\n */\n@Injectable({ providedIn: 'root' })\nexport class LazyService {\n private readonly doc = inject(DOCUMENT);\n\n private list: { [key: string]: boolean } = {};\n private cached: { [key: string]: LazyResult } = {};\n private _notify: BehaviorSubject<LazyResult[]> = new BehaviorSubject<LazyResult[]>([]);\n\n get change(): Observable<LazyResult[]> {\n return this._notify.asObservable().pipe(\n share(),\n filter(ls => ls.length !== 0)\n );\n }\n\n clear(): void {\n this.list = {};\n this.cached = {};\n }\n\n private attachAttributes(el: HTMLElement, attributes?: { [qualifiedName: string]: string }): void {\n if (attributes == null) return;\n\n Object.entries(attributes).forEach(([key, value]) => {\n el.setAttribute(key, value);\n });\n }\n\n /**\n * Load script or style files\n */\n load(paths: string | LazyLoadItem | Array<string | LazyLoadItem>): Promise<LazyResult[]> {\n if (!Array.isArray(paths)) {\n paths = [paths];\n }\n\n const promises: Array<Promise<LazyResult>> = [];\n paths\n .map(v => (typeof v !== 'object' ? ({ path: v } as LazyLoadItem) : v))\n .forEach(item => {\n if (item.path.endsWith('.js')) {\n promises.push(this.loadScript(item.path, item.options));\n } else {\n promises.push(this.loadStyle(item.path, item.options));\n }\n });\n\n return Promise.all(promises).then(res => {\n this._notify.next(res);\n return Promise.resolve(res);\n });\n }\n\n /**\n * Load a script file\n */\n loadScript(path: string, options?: LazyLoadOptions): Promise<LazyResult>;\n loadScript(\n path: string,\n innerContent?: string | LazyLoadOptions,\n attributes?: { [qualifiedName: string]: string }\n ): Promise<LazyResult> {\n const options: LazyLoadOptions =\n typeof innerContent === 'object'\n ? innerContent\n : {\n innerContent,\n attributes\n };\n return new Promise(resolve => {\n if (this.list[path] === true) {\n resolve({ ...this.cached[path], status: 'loading' });\n return;\n }\n\n this.list[path] = true;\n const onSuccess = (item: LazyResult): void => {\n this.cached[path] = item;\n resolve(item);\n this._notify.next([item]);\n };\n\n const node = this.doc.createElement('script') as HTMLScriptElement;\n node.type = 'text/javascript';\n node.src = path;\n this.attachAttributes(node, options.attributes);\n if (options.innerContent) {\n node.innerHTML = options.innerContent;\n }\n node.onload = () =>\n onSuccess({\n path,\n status: 'ok'\n });\n node.onerror = error =>\n onSuccess({\n path,\n status: 'error',\n error\n });\n this.doc.getElementsByTagName('head')[0].appendChild(node);\n });\n }\n\n /**\n * Load a style file\n */\n loadStyle(path: string, options?: LazyLoadOptions): Promise<LazyResult>;\n loadStyle(\n path: string,\n rel?: string | LazyLoadOptions,\n innerContent?: string,\n attributes?: { [qualifiedName: string]: string }\n ): Promise<LazyResult> {\n const options: LazyLoadOptions =\n typeof rel === 'object'\n ? rel\n : {\n rel,\n innerContent,\n attributes\n };\n return new Promise(resolve => {\n if (this.list[path] === true) {\n resolve(this.cached[path]);\n return;\n }\n\n this.list[path] = true;\n\n const node = this.doc.createElement('link') as HTMLLinkElement;\n node.rel = options.rel ?? 'stylesheet';\n node.type = 'text/css';\n node.href = path;\n this.attachAttributes(node, options.attributes);\n if (options.innerContent) {\n node.innerHTML = options.innerContent;\n }\n this.doc.getElementsByTagName('head')[0].appendChild(node);\n const item: LazyResult = {\n path,\n status: 'ok'\n };\n this.cached[path] = item;\n resolve(item);\n });\n }\n}\n","import { isObservable } from 'rxjs';\n\ndeclare const ngDevMode: boolean;\n\nfunction throwError(msg: string | null | undefined): void;\nfunction throwError(msg: string | null | undefined, actual: unknown, expected: unknown, comparison: string): void;\nfunction throwError(msg: string | null | undefined, actual?: unknown, expected?: unknown, comparison?: string): void {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throw new Error(\n `ASSERTION ERROR: ${msg}${comparison == null ? '' : ` [Expected=> ${expected} ${comparison} ${actual} <=Actual]`}`\n );\n }\n}\n\n/**\n * Assert whether the expression and throw an error into console in dev mode\n *\n * 断言表达式是否符合预期,并在开发模式下会在控制台抛出一个错误\n */\nexport function assert(expression: boolean, msg?: string): void {\n if (!expression) {\n throwError(msg);\n }\n}\n\n/**\n * Assert whether empty (`null` or `undefined`)\n *\n * 断言是否空值(`null` 或 `undefined`)\n */\nexport function assertEmpty(actual: unknown, msg?: string): void {\n if (actual == null) {\n throwError(msg, typeof actual, 'NULL', '==');\n }\n}\n\n/**\n * Assert whether `number` type\n *\n * 断言是否 `number` 类型\n */\nexport function assertNumber(actual: unknown, msg?: string): void {\n if (!(typeof actual === 'number')) {\n throwError(msg, typeof actual, 'number', '===');\n }\n}\n\n/**\n * Assert whether `string` type\n *\n * 断言是否 `string` 类型\n */\nexport function assertString(actual: unknown, msg?: string): void {\n if (!(typeof actual === 'string')) {\n throwError(msg, actual === null ? 'null' : typeof actual, 'string', '===');\n }\n}\n\n/**\n * Assert whether `array` type\n *\n * 断言是否 `array` 类型\n */\nexport function assertArray(actual: unknown, msg?: string): void {\n if (!Array.isArray(actual)) {\n throwError(msg, actual === null ? 'null' : typeof actual, 'array', '===');\n }\n}\n\n/**\n * Assert whether `Observable` type\n *\n * 断言是否 `Observable` 类型\n */\nexport function assertObservable(obj: unknown, msg?: string): void {\n if (!isObservable(obj)) {\n throwError(msg, obj === null ? 'null' : typeof obj, 'Observable', '===');\n }\n}\n","/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport { Injectable } from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PathToRegexpService {\n constructor() {}\n DEFAULT_DELIMITER = '/';\n\n PATH_REGEXP = new RegExp(\n ['(\\\\\\\\.)', '(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?'].join('|'),\n 'g'\n );\n\n parse(str: NzSafeAny, options: NzSafeAny) {\n const tokens = [];\n let key = 0;\n let index = 0;\n let path = '';\n const defaultDelimiter = (options && options.delimiter) || this.DEFAULT_DELIMITER;\n const whitelist = (options && options.whitelist) || undefined;\n let pathEscaped = false;\n let res;\n\n while ((res = this.PATH_REGEXP.exec(str)) !== null) {\n const m = res[0];\n const escaped = res[1];\n const offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n pathEscaped = true;\n continue;\n }\n\n let prev = '';\n const name = res[2];\n const capture = res[3];\n const group = res[4];\n const modifier = res[5];\n\n if (!pathEscaped && path.length) {\n const k = path.length - 1;\n const c = path[k];\n const matches = whitelist ? whitelist.indexOf(c) > -1 : true;\n\n if (matches) {\n prev = c;\n path = path.slice(0, k);\n }\n }\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n pathEscaped = false;\n }\n\n const repeat = modifier === '+' || modifier === '*';\n const optional = modifier === '?' || modifier === '*';\n const pattern = capture || group;\n const delimiter = prev || defaultDelimiter;\n\n tokens.push({\n name: name || key++,\n prefix: prev,\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n pattern: pattern\n ? this.escapeGroup(pattern)\n : `[^${this.escapeString(delimiter === defaultDelimiter ? delimiter : delimiter + defaultDelimiter)}]+?`\n });\n }\n\n // Push NzSafeAny remaining characters.\n if (path || index < str.length) {\n tokens.push(path + str.substr(index));\n }\n\n return tokens;\n }\n compile(str: NzSafeAny, options: NzSafeAny) {\n return this.tokensToFunction(this.parse(str, options), options);\n }\n\n tokensToFunction(tokens: NzSafeAny, options: NzSafeAny) {\n const matches = new Array(tokens.length);\n\n for (let i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp(`^(?:${tokens[i].pattern})$`, this.flags(options));\n }\n }\n\n return function (data: NzSafeAny, options: NzSafeAny) {\n let path = '';\n const encode = (options && options.encode) || encodeURIComponent;\n const validate = options ? options.validate !== false : true;\n\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n continue;\n }\n\n const value = data ? data[token.name] : undefined;\n let segment;\n\n if (Array.isArray(value)) {\n if (!token.repeat) {\n throw new TypeError(`Expected \"${token.name}\" to not repeat, but got array`);\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue;\n }\n\n throw new TypeError(`Expected \"${token.name}\" to not be empty`);\n }\n\n for (let j = 0; j < value.length; j++) {\n segment = encode(value[j], token);\n\n if (validate && !matches[i].test(segment)) {\n throw new TypeError(`Expected all \"${token.name}\" to match \"${token.pattern}\"`);\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue;\n }\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n segment = encode(String(value), token);\n\n if (validate && !matches[i].test(segment)) {\n throw new TypeError(`Expected \"${token.name}\" to match \"${token.pattern}\", but got \"${segment}\"`);\n }\n\n path += token.prefix + segment;\n continue;\n }\n\n if (token.optional) {\n continue;\n }\n\n throw new TypeError(`Expected \"${token.name}\" to be ${token.repeat ? 'an array' : 'a string'}`);\n }\n\n return path;\n };\n }\n\n escapeString(str: NzSafeAny) {\n return str.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, '\\\\$1');\n }\n\n escapeGroup(group: NzSafeAny) {\n return group.replace(/([=!:$/()])/g, '\\\\$1');\n }\n\n flags(options: NzSafeAny) {\n return options && options.sensitive ? '' : 'i';\n }\n\n regexpToRegexp(path: NzSafeAny, keys: NzSafeAny) {\n if (!keys) {\n return path;\n }\n\n const groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (let i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n pattern: null\n });\n }\n }\n\n return path;\n }\n\n arrayToRegexp(path: NzSafeAny, keys: NzSafeAny, options: NzSafeAny): RegExp {\n const parts = [];\n\n for (let i = 0; i < path.length; i++) {\n parts.push(this.pathToRegexp(path[i], keys, options).source);\n }\n\n return new RegExp(`(?:${parts.join('|')})`, this.flags(options));\n }\n\n stringToRegexp(path: NzSafeAny, keys: NzSafeAny, options: NzSafeAny) {\n return this.tokensToRegExp(this.parse(path, options), keys, options);\n }\n\n tokensToRegExp(tokens: NzSafeAny, keys: NzSafeAny, options: NzSafeAny) {\n options = options || {};\n\n const strict = options.strict;\n const start = options.start !== false;\n const end = options.end !== false;\n const delimiter = options.delimiter || this.DEFAULT_DELIMITER;\n const endsWith = []\n .concat(options.endsWith || [])\n .map(this.escapeString)\n .concat('$')\n .join('|');\n let route = start ? '^' : '';\n\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n\n if (typeof token === 'string') {\n route += this.escapeString(token);\n } else {\n const capture = token.repeat\n ? `(?:${token.pattern})(?:${this.escapeString(token.delimiter)}(?:${token.pattern}))*`\n : token.pattern;\n\n if (keys) {\n keys.push(token);\n }\n\n if (token.optional) {\n if (!token.prefix) {\n route += `(${capture})?`;\n } else {\n route += `(?:${this.escapeString(token.prefix)}(${capture}))?`;\n }\n } else {\n route += `${this.escapeString(token.prefix)}(${capture})`;\n }\n }\n }\n\n if (end) {\n if (!strict) {\n route += `(?:${this.escapeString(delimiter)})?`;\n }\n\n route += endsWith === '$' ? '$' : `(?=${endsWith})`;\n } else {\n const endToken = tokens[tokens.length - 1];\n const isEndDelimited =\n typeof endToken === 'string' ? endToken[endToken.length - 1] === delimiter : endToken === undefined;\n\n if (!strict) {\n route += `(?:${this.escapeString(delimiter)}(?=${endsWith}))?`;\n }\n if (!isEndDelimited) {\n route += `(?=${this.escapeString(delimiter)}|${endsWith})`;\n }\n }\n\n return new RegExp(route, this.flags(options));\n }\n\n pathToRegexp(path: NzSafeAny, keys: NzSafeAny, options: NzSafeAny) {\n if (path instanceof RegExp) {\n return this.regexpToRegexp(path, keys);\n }\n\n if (Array.isArray(path)) {\n return this.arrayToRegexp(/** @type {!Array} */ path, keys, options);\n }\n\n return this.stringToRegexp(/** @type {string} */ path, keys, options);\n }\n}\n","export const resizeWindow = (): void => {\n window.dispatchEvent(new Event('resize'));\n};\n","import { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport function setFavicon(path: string): void {\n const link: NzSafeAny = document.querySelector(\"link[rel*='icon']\") || document.createElement('link');\n link.type = 'image/x-icon';\n link.rel = 'shortcut icon';\n link.href = path;\n document.getElementsByTagName('head')[0].appendChild(link);\n}\n\nexport function hasFavicon(url: string): Promise<boolean> {\n return new Promise(resolve => {\n let xmlHttp;\n if (window['XMLHttpRequest']) {\n xmlHttp = new XMLHttpRequest();\n }\n if (xmlHttp) {\n xmlHttp.open('Get', url, false);\n xmlHttp.send();\n if (xmlHttp.status == 404) {\n resolve(false);\n } else {\n resolve(true);\n }\n } else {\n resolve(false);\n }\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"other.mjs","sources":["../../../../packages/util/other/deep.ts","../../../../packages/util/other/logger.ts","../../../../packages/util/other/lazy.service.ts","../../../../packages/util/other/assert.ts","../../../../packages/util/other/path-to-regexp.service.ts","../../../../packages/util/other/resize.ts","../../../../packages/util/other/favicon.ts","../../../../packages/util/other/other.ts"],"sourcesContent":["import extend from 'extend';\n\n/**\n * Gets the value at `path` of `object`, like `_.get` in lodash.\n *\n * 类似 `_.get`,根据 `path` 获取安全值\n */\nexport function deepGet(obj: any, path: string | string[] | null | undefined, defaultValue?: unknown): any {\n if (!obj || path == null || path.length === 0) return defaultValue;\n if (!Array.isArray(path)) {\n path = ~path.indexOf('.') ? path.split('.') : [path];\n }\n if (path.length === 1) {\n const checkObj = obj[path[0]];\n return typeof checkObj === 'undefined' ? defaultValue : checkObj;\n }\n const res = path.reduce((o, k) => (o || {})[k], obj);\n return typeof res === 'undefined' ? defaultValue : res;\n}\n\n/**\n * Base on [extend](https://github.com/justmoon/node-extend) deep copy.\n *\n * 基于 [extend](https://github.com/justmoon/node-extend) 的深度拷贝\n *\n * NOTE: Don't a lot of recursion, maybe performance issues\n */\nexport function deepCopy<T extends Record<string, any> = any>(obj: T | null | undefined): T {\n const result = extend(true, {}, { _: obj });\n return result._ as T;\n}\n\n/**\n * Deep merge object.\n *\n * 深度合并对象\n *\n * @param original 原始对象\n * @param arrayProcessMethod 数组处理方式\n * - `true` 表示替换新值,不管新值为哪种类型\n * - `false` 表示会合并整个数组(将旧数据与新数据合并成新数组)\n * @param objects 要合并的对象\n */\nexport function deepMergeKey(original: unknown, arrayProcessMethod: boolean, ...objects: any[]): any {\n if (Array.isArray(original) || typeof original !== 'object') return original;\n\n const isObject = (v: unknown): boolean => typeof v === 'object';\n\n const merge = (target: any, obj: any): any => {\n Object.keys(obj)\n .filter(key => key !== '__proto__' && Object.prototype.hasOwnProperty.call(obj, key))\n .forEach(key => {\n const fromValue = obj[key];\n const toValue = target[key];\n if (Array.isArray(toValue)) {\n target[key] = arrayProcessMethod ? fromValue : [...toValue, ...fromValue];\n } else if (typeof fromValue === 'function') {\n target[key] = fromValue;\n } else if (fromValue != null && isObject(fromValue) && toValue != null && isObject(toValue)) {\n target[key] = merge(toValue, fromValue);\n } else {\n target[key] = deepCopy(fromValue);\n }\n });\n return target;\n };\n\n objects.filter(v => v != null && isObject(v)).forEach(v => merge(original, v));\n\n return original;\n}\n\n/**\n * Deep merge object.\n *\n * 深度合并对象\n */\nexport function deepMerge(original: unknown, ...objects: unknown[]): any {\n return deepMergeKey(original, false, ...objects);\n}\n","declare const ngDevMode: boolean;\n\nconst record: Record<string, boolean> = {};\n\nexport const PREFIX = '[@YELON]:';\n\nfunction notRecorded(...args: any[]): boolean {\n const asRecord = args.reduce((acc, c) => acc + c.toString(), '');\n\n if (record[asRecord]) {\n return false;\n } else {\n record[asRecord] = true;\n return true;\n }\n}\n\nfunction consoleCommonBehavior(consoleFunc: (...args: any) => void, ...args: any[]): void {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && notRecorded(...args)) {\n consoleFunc(...args);\n }\n}\n\n// Warning should only be printed in dev mode and only once.\nexport const warn = (...args: any[]): void =>\n consoleCommonBehavior((...arg: any[]) => console.warn(PREFIX, ...arg), ...args);\n\nexport const warnDeprecation = (...args: any[]): any => {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n return () => {};\n }\n const stack = new Error().stack;\n return consoleCommonBehavior((...arg: any[]) => console.warn(PREFIX, 'deprecated:', ...arg, stack), ...args);\n};\n\n// Log should only be printed in dev mode.\nexport const log = (...args: any[]): void => {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n console.log(PREFIX, ...args);\n }\n};\n","import { DOCUMENT } from '@angular/common';\nimport { Injectable, inject } from '@angular/core';\nimport { BehaviorSubject, Observable, filter, share } from 'rxjs';\n\nexport interface LazyResult {\n path: string;\n status: 'ok' | 'error' | 'loading';\n error?: any;\n}\n\nexport interface LazyLoadItem {\n path: string;\n options?: LazyLoadOptions;\n}\n\nexport interface LazyLoadOptions {\n innerContent?: string;\n attributes?: Record<string, string>;\n rel?: string;\n}\n\n/**\n * `LazyService` delay loading JS or CSS files.\n *\n * 延迟加载资源(js 或 css)服务\n */\n@Injectable({ providedIn: 'root' })\nexport class LazyService {\n private readonly doc = inject(DOCUMENT);\n\n private list: Record<string, boolean> = {};\n private cached: Record<string, LazyResult> = {};\n private _notify: BehaviorSubject<LazyResult[]> = new BehaviorSubject<LazyResult[]>([]);\n\n get change(): Observable<LazyResult[]> {\n return this._notify.asObservable().pipe(\n share(),\n filter(ls => ls.length !== 0)\n );\n }\n\n clear(): void {\n this.list = {};\n this.cached = {};\n }\n\n private attachAttributes(el: HTMLElement, attributes?: Record<string, string>): void {\n if (attributes == null) return;\n\n Object.entries(attributes).forEach(([key, value]) => {\n el.setAttribute(key, value);\n });\n }\n\n /**\n * Load script or style files\n */\n load(paths: string | LazyLoadItem | Array<string | LazyLoadItem>): Promise<LazyResult[]> {\n if (!Array.isArray(paths)) {\n paths = [paths];\n }\n\n const promises: Array<Promise<LazyResult>> = [];\n paths\n .map(v => (typeof v !== 'object' ? ({ path: v } as LazyLoadItem) : v))\n .forEach(item => {\n if (item.path.endsWith('.js')) {\n promises.push(this.loadScript(item.path, item.options));\n } else {\n promises.push(this.loadStyle(item.path, item.options));\n }\n });\n\n return Promise.all(promises).then(res => {\n this._notify.next(res);\n return Promise.resolve(res);\n });\n }\n\n /**\n * Load a script file\n */\n loadScript(path: string, options?: LazyLoadOptions): Promise<LazyResult>;\n loadScript(\n path: string,\n innerContent?: string | LazyLoadOptions,\n attributes?: Record<string, string>\n ): Promise<LazyResult> {\n const options: LazyLoadOptions =\n typeof innerContent === 'object'\n ? innerContent\n : {\n innerContent,\n attributes\n };\n return new Promise(resolve => {\n if (this.list[path] === true) {\n resolve({ ...this.cached[path], status: 'loading' });\n return;\n }\n\n this.list[path] = true;\n const onSuccess = (item: LazyResult): void => {\n this.cached[path] = item;\n resolve(item);\n this._notify.next([item]);\n };\n\n const node = this.doc.createElement('script') as HTMLScriptElement;\n node.type = 'text/javascript';\n node.src = path;\n this.attachAttributes(node, options.attributes);\n if (options.innerContent) {\n node.innerHTML = options.innerContent;\n }\n node.onload = () =>\n onSuccess({\n path,\n status: 'ok'\n });\n node.onerror = error =>\n onSuccess({\n path,\n status: 'error',\n error\n });\n this.doc.getElementsByTagName('head')[0].appendChild(node);\n });\n }\n\n /**\n * Load a style file\n */\n loadStyle(path: string, options?: LazyLoadOptions): Promise<LazyResult>;\n loadStyle(\n path: string,\n rel?: string | LazyLoadOptions,\n innerContent?: string,\n attributes?: Record<string, string>\n ): Promise<LazyResult> {\n const options: LazyLoadOptions =\n typeof rel === 'object'\n ? rel\n : {\n rel,\n innerContent,\n attributes\n };\n return new Promise(resolve => {\n if (this.list[path] === true) {\n resolve(this.cached[path]);\n return;\n }\n\n this.list[path] = true;\n\n const node = this.doc.createElement('link') as HTMLLinkElement;\n node.rel = options.rel ?? 'stylesheet';\n node.type = 'text/css';\n node.href = path;\n this.attachAttributes(node, options.attributes);\n if (options.innerContent) {\n node.innerHTML = options.innerContent;\n }\n this.doc.getElementsByTagName('head')[0].appendChild(node);\n const item: LazyResult = {\n path,\n status: 'ok'\n };\n this.cached[path] = item;\n resolve(item);\n });\n }\n}\n","import { isObservable } from 'rxjs';\n\ndeclare const ngDevMode: boolean;\n\nfunction throwError(msg: string | null | undefined): void;\nfunction throwError(msg: string | null | undefined, actual: unknown, expected: unknown, comparison: string): void;\nfunction throwError(msg: string | null | undefined, actual?: unknown, expected?: unknown, comparison?: string): void {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throw new Error(\n `ASSERTION ERROR: ${msg}${comparison == null ? '' : ` [Expected=> ${expected} ${comparison} ${actual} <=Actual]`}`\n );\n }\n}\n\n/**\n * Assert whether the expression and throw an error into console in dev mode\n *\n * 断言表达式是否符合预期,并在开发模式下会在控制台抛出一个错误\n */\nexport function assert(expression: boolean, msg?: string): void {\n if (!expression) {\n throwError(msg);\n }\n}\n\n/**\n * Assert whether empty (`null` or `undefined`)\n *\n * 断言是否空值(`null` 或 `undefined`)\n */\nexport function assertEmpty(actual: unknown, msg?: string): void {\n if (actual == null) {\n throwError(msg, typeof actual, 'NULL', '==');\n }\n}\n\n/**\n * Assert whether `number` type\n *\n * 断言是否 `number` 类型\n */\nexport function assertNumber(actual: unknown, msg?: string): void {\n if (!(typeof actual === 'number')) {\n throwError(msg, typeof actual, 'number', '===');\n }\n}\n\n/**\n * Assert whether `string` type\n *\n * 断言是否 `string` 类型\n */\nexport function assertString(actual: unknown, msg?: string): void {\n if (!(typeof actual === 'string')) {\n throwError(msg, actual === null ? 'null' : typeof actual, 'string', '===');\n }\n}\n\n/**\n * Assert whether `array` type\n *\n * 断言是否 `array` 类型\n */\nexport function assertArray(actual: unknown, msg?: string): void {\n if (!Array.isArray(actual)) {\n throwError(msg, actual === null ? 'null' : typeof actual, 'array', '===');\n }\n}\n\n/**\n * Assert whether `Observable` type\n *\n * 断言是否 `Observable` 类型\n */\nexport function assertObservable(obj: unknown, msg?: string): void {\n if (!isObservable(obj)) {\n throwError(msg, obj === null ? 'null' : typeof obj, 'Observable', '===');\n }\n}\n","/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PathToRegexpService {\n constructor() {}\n DEFAULT_DELIMITER = '/';\n\n PATH_REGEXP = new RegExp(\n ['(\\\\\\\\.)', '(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?'].join('|'),\n 'g'\n );\n\n parse(str: any, options: any) {\n const tokens = [];\n let key = 0;\n let index = 0;\n let path = '';\n const defaultDelimiter = (options && options.delimiter) || this.DEFAULT_DELIMITER;\n const whitelist = (options && options.whitelist) || undefined;\n let pathEscaped = false;\n let res;\n\n while ((res = this.PATH_REGEXP.exec(str)) !== null) {\n const m = res[0];\n const escaped = res[1];\n const offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n pathEscaped = true;\n continue;\n }\n\n let prev = '';\n const name = res[2];\n const capture = res[3];\n const group = res[4];\n const modifier = res[5];\n\n if (!pathEscaped && path.length) {\n const k = path.length - 1;\n const c = path[k];\n const matches = whitelist ? whitelist.indexOf(c) > -1 : true;\n\n if (matches) {\n prev = c;\n path = path.slice(0, k);\n }\n }\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n pathEscaped = false;\n }\n\n const repeat = modifier === '+' || modifier === '*';\n const optional = modifier === '?' || modifier === '*';\n const pattern = capture || group;\n const delimiter = prev || defaultDelimiter;\n\n tokens.push({\n name: name || key++,\n prefix: prev,\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n pattern: pattern\n ? this.escapeGroup(pattern)\n : `[^${this.escapeString(delimiter === defaultDelimiter ? delimiter : delimiter + defaultDelimiter)}]+?`\n });\n }\n\n // Push any remaining characters.\n if (path || index < str.length) {\n tokens.push(path + str.substr(index));\n }\n\n return tokens;\n }\n compile(str: any, options: any) {\n return this.tokensToFunction(this.parse(str, options), options);\n }\n\n tokensToFunction(tokens: any, options: any) {\n const matches = new Array(tokens.length);\n\n for (let i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp(`^(?:${tokens[i].pattern})$`, this.flags(options));\n }\n }\n\n return function (data: any, options: any) {\n let path = '';\n const encode = (options && options.encode) || encodeURIComponent;\n const validate = options ? options.validate !== false : true;\n\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n continue;\n }\n\n const value = data ? data[token.name] : undefined;\n let segment;\n\n if (Array.isArray(value)) {\n if (!token.repeat) {\n throw new TypeError(`Expected \"${token.name}\" to not repeat, but got array`);\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue;\n }\n\n throw new TypeError(`Expected \"${token.name}\" to not be empty`);\n }\n\n for (let j = 0; j < value.length; j++) {\n segment = encode(value[j], token);\n\n if (validate && !matches[i].test(segment)) {\n throw new TypeError(`Expected all \"${token.name}\" to match \"${token.pattern}\"`);\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue;\n }\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n segment = encode(String(value), token);\n\n if (validate && !matches[i].test(segment)) {\n throw new TypeError(`Expected \"${token.name}\" to match \"${token.pattern}\", but got \"${segment}\"`);\n }\n\n path += token.prefix + segment;\n continue;\n }\n\n if (token.optional) {\n continue;\n }\n\n throw new TypeError(`Expected \"${token.name}\" to be ${token.repeat ? 'an array' : 'a string'}`);\n }\n\n return path;\n };\n }\n\n escapeString(str: any) {\n return str.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, '\\\\$1');\n }\n\n escapeGroup(group: any) {\n return group.replace(/([=!:$/()])/g, '\\\\$1');\n }\n\n flags(options: any) {\n return options && options.sensitive ? '' : 'i';\n }\n\n regexpToRegexp(path: any, keys: any) {\n if (!keys) {\n return path;\n }\n\n const groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (let i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n pattern: null\n });\n }\n }\n\n return path;\n }\n\n arrayToRegexp(path: any, keys: any, options: any): RegExp {\n const parts = [];\n\n for (const item of path) {\n parts.push(this.pathToRegexp(item, keys, options).source);\n }\n\n return new RegExp(`(?:${parts.join('|')})`, this.flags(options));\n }\n\n stringToRegexp(path: any, keys: any, options: any) {\n return this.tokensToRegExp(this.parse(path, options), keys, options);\n }\n\n tokensToRegExp(tokens: any, keys: any, options: any) {\n options = options || {};\n\n const strict = options.strict;\n const start = options.start !== false;\n const end = options.end !== false;\n const delimiter = options.delimiter || this.DEFAULT_DELIMITER;\n const endsWith = []\n .concat(options.endsWith || [])\n .map(this.escapeString)\n .concat('$')\n .join('|');\n let route = start ? '^' : '';\n\n for (let token of tokens) {\n if (typeof token === 'string') {\n route += this.escapeString(token);\n } else {\n const capture = token.repeat\n ? `(?:${token.pattern})(?:${this.escapeString(token.delimiter)}(?:${token.pattern}))*`\n : token.pattern;\n\n if (keys) {\n keys.push(token);\n }\n\n if (token.optional) {\n if (!token.prefix) {\n route += `(${capture})?`;\n } else {\n route += `(?:${this.escapeString(token.prefix)}(${capture}))?`;\n }\n } else {\n route += `${this.escapeString(token.prefix)}(${capture})`;\n }\n }\n }\n\n if (end) {\n if (!strict) {\n route += `(?:${this.escapeString(delimiter)})?`;\n }\n\n route += endsWith === '$' ? '$' : `(?=${endsWith})`;\n } else {\n const endToken = tokens[tokens.length - 1];\n const isEndDelimited =\n typeof endToken === 'string' ? endToken[endToken.length - 1] === delimiter : endToken === undefined;\n\n if (!strict) {\n route += `(?:${this.escapeString(delimiter)}(?=${endsWith}))?`;\n }\n if (!isEndDelimited) {\n route += `(?=${this.escapeString(delimiter)}|${endsWith})`;\n }\n }\n\n return new RegExp(route, this.flags(options));\n }\n\n pathToRegexp(path: any, keys: any, options: any) {\n if (path instanceof RegExp) {\n return this.regexpToRegexp(path, keys);\n }\n\n if (Array.isArray(path)) {\n return this.arrayToRegexp(/** @type {!Array} */ path, keys, options);\n }\n\n return this.stringToRegexp(/** @type {string} */ path, keys, options);\n }\n}\n","export const resizeWindow = (): void => {\n window.dispatchEvent(new Event('resize'));\n};\n","export function setFavicon(path: string): void {\n const link: any = document.querySelector(\"link[rel*='icon']\") || document.createElement('link');\n link.type = 'image/x-icon';\n link.rel = 'shortcut icon';\n link.href = path;\n document.getElementsByTagName('head')[0].appendChild(link);\n}\n\nexport function hasFavicon(url: string): Promise<boolean> {\n return new Promise(resolve => {\n let xmlHttp;\n if (window['XMLHttpRequest']) {\n xmlHttp = new XMLHttpRequest();\n }\n if (xmlHttp) {\n xmlHttp.open('Get', url, false);\n xmlHttp.send();\n if (xmlHttp.status == 404) {\n resolve(false);\n } else {\n resolve(true);\n }\n } else {\n resolve(false);\n }\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -8,20 +8,18 @@ import { CurrencyService } from '@yelon/util/format';
8
8
  * 大数据格式化
9
9
  */
10
10
  class CurrencyMegaPipe {
11
- constructor() {
12
- this.srv = inject(CurrencyService);
13
- this.isCN = inject(LOCALE_ID).startsWith('zh');
14
- }
11
+ srv = inject(CurrencyService);
12
+ isCN = inject(LOCALE_ID).startsWith('zh');
15
13
  transform(value, options) {
16
14
  const res = this.srv.mega(value, options);
17
15
  return res.value + (this.isCN ? res.unitI18n : res.unit);
18
16
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyMegaPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
20
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: CurrencyMegaPipe, isStandalone: true, name: "mega" }); }
17
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyMegaPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
18
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: CurrencyMegaPipe, isStandalone: true, name: "mega" });
21
19
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyMegaPipe, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyMegaPipe, decorators: [{
23
21
  type: Pipe,
24
- args: [{ name: 'mega', standalone: true }]
22
+ args: [{ name: 'mega' }]
25
23
  }] });
26
24
 
27
25
  /**
@@ -34,18 +32,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImpo
34
32
  * ```
35
33
  */
36
34
  class CurrencyPricePipe {
37
- constructor() {
38
- this.srv = inject(CurrencyService);
39
- }
35
+ srv = inject(CurrencyService);
40
36
  transform(value, options) {
41
37
  return this.srv.format(value, options);
42
38
  }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPricePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
44
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPricePipe, isStandalone: true, name: "price" }); }
39
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPricePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
40
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPricePipe, isStandalone: true, name: "price" });
45
41
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPricePipe, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPricePipe, decorators: [{
47
43
  type: Pipe,
48
- args: [{ name: 'price', standalone: true }]
44
+ args: [{ name: 'price' }]
49
45
  }] });
50
46
 
51
47
  /**
@@ -54,27 +50,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImpo
54
50
  * 转化成人民币表示法
55
51
  */
56
52
  class CurrencyCNYPipe {
57
- constructor() {
58
- this.srv = inject(CurrencyService);
59
- }
53
+ srv = inject(CurrencyService);
60
54
  transform(value, options) {
61
55
  return this.srv.cny(value, options);
62
56
  }
63
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyCNYPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
64
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: CurrencyCNYPipe, isStandalone: true, name: "cny" }); }
57
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyCNYPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
58
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: CurrencyCNYPipe, isStandalone: true, name: "cny" });
65
59
  }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyCNYPipe, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyCNYPipe, decorators: [{
67
61
  type: Pipe,
68
- args: [{ name: 'cny', standalone: true }]
62
+ args: [{ name: 'cny' }]
69
63
  }] });
70
64
 
71
65
  const PIPES = [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe];
72
66
  class CurrencyPipeModule {
73
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
74
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPipeModule, imports: [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe], exports: [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe] }); }
75
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPipeModule }); }
67
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
68
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPipeModule, imports: [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe], exports: [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe] });
69
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPipeModule });
76
70
  }
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CurrencyPipeModule, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CurrencyPipeModule, decorators: [{
78
72
  type: NgModule,
79
73
  args: [{
80
74
  imports: PIPES,
@@ -1 +1 @@
1
- {"version":3,"file":"pipe-currency.mjs","sources":["../../../../packages/util/pipes/currency/mega.pipe.ts","../../../../packages/util/pipes/currency/price.pipe.ts","../../../../packages/util/pipes/currency/cny.pipe.ts","../../../../packages/util/pipes/currency/module.ts","../../../../packages/util/pipes/currency/pipe-currency.ts"],"sourcesContent":["import { LOCALE_ID, Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { CurrencyMegaOptions, CurrencyService } from '@yelon/util/format';\n\n/**\n * Large number format filter\n *\n * 大数据格式化\n */\n@Pipe({ name: 'mega', standalone: true })\nexport class CurrencyMegaPipe implements PipeTransform {\n private readonly srv = inject(CurrencyService);\n private isCN = inject(LOCALE_ID).startsWith('zh');\n\n transform(value: number | string, options?: CurrencyMegaOptions): string {\n const res = this.srv.mega(value, options);\n return res.value + (this.isCN ? res.unitI18n : res.unit);\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { CurrencyFormatOptions, CurrencyService } from '@yelon/util/format';\n\n/**\n * Format a number with commas as thousands separators\n *\n * 格式化货币,用逗号将数字格式化为千位分隔符\n * ```ts\n * 10000 => `10,000`\n * 10000.567 => `10,000.57`\n * ```\n */\n@Pipe({ name: 'price', standalone: true })\nexport class CurrencyPricePipe implements PipeTransform {\n private readonly srv = inject(CurrencyService);\n\n transform(value: number | string, options?: CurrencyFormatOptions): string {\n return this.srv.format(value, options);\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { CurrencyCNYOptions, CurrencyService } from '@yelon/util/format';\n\n/**\n * Converted into RMB notation.\n *\n * 转化成人民币表示法\n */\n@Pipe({ name: 'cny', standalone: true })\nexport class CurrencyCNYPipe implements PipeTransform {\n private readonly srv = inject(CurrencyService);\n\n transform(value: number | string, options?: CurrencyCNYOptions): string {\n return this.srv.cny(value, options);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { CurrencyCNYPipe } from './cny.pipe';\nimport { CurrencyMegaPipe } from './mega.pipe';\nimport { CurrencyPricePipe } from './price.pipe';\n\nconst PIPES = [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe];\n\n@NgModule({\n imports: PIPES,\n exports: PIPES\n})\nexport class CurrencyPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipe-currency.mjs","sources":["../../../../packages/util/pipes/currency/mega.pipe.ts","../../../../packages/util/pipes/currency/price.pipe.ts","../../../../packages/util/pipes/currency/cny.pipe.ts","../../../../packages/util/pipes/currency/module.ts","../../../../packages/util/pipes/currency/pipe-currency.ts"],"sourcesContent":["import { LOCALE_ID, Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { CurrencyMegaOptions, CurrencyService } from '@yelon/util/format';\n\n/**\n * Large number format filter\n *\n * 大数据格式化\n */\n@Pipe({ name: 'mega' })\nexport class CurrencyMegaPipe implements PipeTransform {\n private readonly srv = inject(CurrencyService);\n private isCN = inject(LOCALE_ID).startsWith('zh');\n\n transform(value: number | string, options?: CurrencyMegaOptions): string {\n const res = this.srv.mega(value, options);\n return res.value + (this.isCN ? res.unitI18n : res.unit);\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { CurrencyFormatOptions, CurrencyService } from '@yelon/util/format';\n\n/**\n * Format a number with commas as thousands separators\n *\n * 格式化货币,用逗号将数字格式化为千位分隔符\n * ```ts\n * 10000 => `10,000`\n * 10000.567 => `10,000.57`\n * ```\n */\n@Pipe({ name: 'price' })\nexport class CurrencyPricePipe implements PipeTransform {\n private readonly srv = inject(CurrencyService);\n\n transform(value: number | string, options?: CurrencyFormatOptions): string {\n return this.srv.format(value, options);\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { CurrencyCNYOptions, CurrencyService } from '@yelon/util/format';\n\n/**\n * Converted into RMB notation.\n *\n * 转化成人民币表示法\n */\n@Pipe({ name: 'cny' })\nexport class CurrencyCNYPipe implements PipeTransform {\n private readonly srv = inject(CurrencyService);\n\n transform(value: number | string, options?: CurrencyCNYOptions): string {\n return this.srv.cny(value, options);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { CurrencyCNYPipe } from './cny.pipe';\nimport { CurrencyMegaPipe } from './mega.pipe';\nimport { CurrencyPricePipe } from './price.pipe';\n\nconst PIPES = [CurrencyMegaPipe, CurrencyPricePipe, CurrencyCNYPipe];\n\n@NgModule({\n imports: PIPES,\n exports: PIPES\n})\nexport class CurrencyPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAIA;;;;AAIG;MAEU,gBAAgB,CAAA;AACV,IAAA,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC;IACtC,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;IAEjD,SAAS,CAAC,KAAsB,EAAE,OAA6B,EAAA;AAC7D,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC;QACzC,OAAO,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;;uGAN/C,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,IAAI;mBAAC,EAAE,IAAI,EAAE,MAAM,EAAE;;;ACLtB;;;;;;;;AAQG;MAEU,iBAAiB,CAAA;AACX,IAAA,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC;IAE9C,SAAS,CAAC,KAAsB,EAAE,OAA+B,EAAA;QAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;;uGAJ7B,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,IAAI;mBAAC,EAAE,IAAI,EAAE,OAAO,EAAE;;;ACTvB;;;;AAIG;MAEU,eAAe,CAAA;AACT,IAAA,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC;IAE9C,SAAS,CAAC,KAAsB,EAAE,OAA4B,EAAA;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC;;uGAJ1B,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,IAAI;mBAAC,EAAE,IAAI,EAAE,KAAK,EAAE;;;ACHrB,MAAM,KAAK,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAC;MAMvD,kBAAkB,CAAA;uGAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAlB,kBAAkB,EAAA,OAAA,EAAA,CANhB,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAA,EAAA,OAAA,EAAA,CAApD,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAA,EAAA,CAAA;wGAMtD,kBAAkB,EAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACXD;;AAEG;;;;"}
@@ -11,21 +11,21 @@ class FilterPipe {
11
11
  transform(array, matcher, ...args) {
12
12
  return array.filter(i => matcher(i, ...args));
13
13
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
15
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: FilterPipe, isStandalone: true, name: "filter", pure: false }); }
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: FilterPipe, isStandalone: true, name: "filter", pure: false });
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FilterPipe, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FilterPipe, decorators: [{
18
18
  type: Pipe,
19
- args: [{ name: 'filter', standalone: true, pure: false }]
19
+ args: [{ name: 'filter', pure: false }]
20
20
  }] });
21
21
 
22
22
  const PIPES = [FilterPipe];
23
23
  class FilterPipeModule {
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FilterPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: FilterPipeModule, imports: [FilterPipe], exports: [FilterPipe] }); }
26
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FilterPipeModule }); }
24
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FilterPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: FilterPipeModule, imports: [FilterPipe], exports: [FilterPipe] });
26
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FilterPipeModule });
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FilterPipeModule, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FilterPipeModule, decorators: [{
29
29
  type: NgModule,
30
30
  args: [{
31
31
  imports: PIPES,
@@ -1 +1 @@
1
- {"version":3,"file":"pipe-filter.mjs","sources":["../../../../packages/util/pipes/filter/filter.pipe.ts","../../../../packages/util/pipes/filter/module.ts","../../../../packages/util/pipes/filter/pipe-filter.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n/**\n * Filter array\n *\n * 过滤数组\n */\n// eslint-disable-next-line @angular-eslint/no-pipe-impure\n@Pipe({ name: 'filter', standalone: true, pure: false })\nexport class FilterPipe implements PipeTransform {\n transform<T>(array: readonly T[], matcher: (item: T, ...args: NzSafeAny[]) => boolean, ...args: NzSafeAny[]): T[] {\n return array.filter(i => matcher(i, ...args));\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { FilterPipe } from './filter.pipe';\n\nconst PIPES = [FilterPipe];\n\n@NgModule({\n imports: PIPES,\n exports: PIPES\n})\nexport class FilterPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAIA;;;;AAIG;AACH;MAEa,UAAU,CAAA;AACrB,IAAA,SAAS,CAAI,KAAmB,EAAE,OAAmD,EAAE,GAAG,IAAiB,EAAA;AACzG,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;;+GAFpC,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA,CAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBADtB,IAAI;mBAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE;;;ACNvD,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC;MAMb,gBAAgB,CAAA;+GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAhB,gBAAgB,EAAA,OAAA,EAAA,CANd,UAAU,CAAA,EAAA,OAAA,EAAA,CAAV,UAAU,CAAA,EAAA,CAAA,CAAA;gHAMZ,gBAAgB,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"pipe-filter.mjs","sources":["../../../../packages/util/pipes/filter/filter.pipe.ts","../../../../packages/util/pipes/filter/module.ts","../../../../packages/util/pipes/filter/pipe-filter.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * Filter array\n *\n * 过滤数组\n */\n// eslint-disable-next-line @angular-eslint/no-pipe-impure\n@Pipe({ name: 'filter', pure: false })\nexport class FilterPipe implements PipeTransform {\n transform<T>(array: readonly T[], matcher: (item: T, ...args: any[]) => boolean, ...args: any[]): T[] {\n return array.filter(i => matcher(i, ...args));\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { FilterPipe } from './filter.pipe';\n\nconst PIPES = [FilterPipe];\n\n@NgModule({\n imports: PIPES,\n exports: PIPES\n})\nexport class FilterPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEA;;;;AAIG;AACH;MAEa,UAAU,CAAA;AACrB,IAAA,SAAS,CAAI,KAAmB,EAAE,OAA6C,EAAE,GAAG,IAAW,EAAA;AAC7F,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;;uGAFpC,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBADtB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;;;ACJrC,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC;MAMb,gBAAgB,CAAA;uGAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAhB,gBAAgB,EAAA,OAAA,EAAA,CANd,UAAU,CAAA,EAAA,OAAA,EAAA,CAAV,UAAU,CAAA,EAAA,CAAA;wGAMZ,gBAAgB,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -25,21 +25,21 @@ class FormatMaskPipe {
25
25
  transform(value, mask) {
26
26
  return formatMask(value, mask);
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FormatMaskPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
29
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: FormatMaskPipe, isStandalone: true, name: "mask" }); }
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FormatMaskPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
29
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: FormatMaskPipe, isStandalone: true, name: "mask" });
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FormatMaskPipe, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FormatMaskPipe, decorators: [{
32
32
  type: Pipe,
33
- args: [{ name: 'mask', standalone: true }]
33
+ args: [{ name: 'mask' }]
34
34
  }] });
35
35
 
36
36
  const PIPES = [FormatMaskPipe];
37
37
  class FormatPipeModule {
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FormatPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
39
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: FormatPipeModule, imports: [FormatMaskPipe], exports: [FormatMaskPipe] }); }
40
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FormatPipeModule }); }
38
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FormatPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
39
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: FormatPipeModule, imports: [FormatMaskPipe], exports: [FormatMaskPipe] });
40
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FormatPipeModule });
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: FormatPipeModule, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: FormatPipeModule, decorators: [{
43
43
  type: NgModule,
44
44
  args: [{
45
45
  imports: PIPES,
@@ -1 +1 @@
1
- {"version":3,"file":"pipe-format.mjs","sources":["../../../../packages/util/pipes/format/mask.pipe.ts","../../../../packages/util/pipes/format/module.ts","../../../../packages/util/pipes/format/pipe-format.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\nimport { formatMask, FormatMaskOption } from '@yelon/util/format';\n\n/**\n * Format mask\n *\n * 格式化掩码\n *\n * | 字符 | 描述 |\n * | --- | --- |\n * | `0` | 任意数字,若该位置字符不符合,则默认为 `0` 填充 |\n * | `9` | 任意数字 |\n * | `#` | 任意字符 |\n * | `U` | 转换大写 |\n * | `L` | 转换小写 |\n * | `*` | 转换为 `*` 字符 |\n *\n * ```ts\n * formatMask('123', '(###)') => (123)\n * formatMask('15900000000', '999****9999') => 159****0000\n * ```\n */\n@Pipe({ name: 'mask', standalone: true })\nexport class FormatMaskPipe implements PipeTransform {\n transform(value: string, mask: string | FormatMaskOption): string {\n return formatMask(value, mask);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { FormatMaskPipe } from './mask.pipe';\n\nconst PIPES = [FormatMaskPipe];\n\n@NgModule({\n imports: PIPES,\n exports: PIPES\n})\nexport class FormatPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAIA;;;;;;;;;;;;;;;;;;AAkBG;MAEU,cAAc,CAAA;IACzB,SAAS,CAAC,KAAa,EAAE,IAA+B,EAAA;AACtD,QAAA,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;;+GAFrB,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;;;ACnBxC,MAAM,KAAK,GAAG,CAAC,cAAc,CAAC;MAMjB,gBAAgB,CAAA;+GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAhB,gBAAgB,EAAA,OAAA,EAAA,CANd,cAAc,CAAA,EAAA,OAAA,EAAA,CAAd,cAAc,CAAA,EAAA,CAAA,CAAA;gHAMhB,gBAAgB,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"pipe-format.mjs","sources":["../../../../packages/util/pipes/format/mask.pipe.ts","../../../../packages/util/pipes/format/module.ts","../../../../packages/util/pipes/format/pipe-format.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\nimport { formatMask, FormatMaskOption } from '@yelon/util/format';\n\n/**\n * Format mask\n *\n * 格式化掩码\n *\n * | 字符 | 描述 |\n * | --- | --- |\n * | `0` | 任意数字,若该位置字符不符合,则默认为 `0` 填充 |\n * | `9` | 任意数字 |\n * | `#` | 任意字符 |\n * | `U` | 转换大写 |\n * | `L` | 转换小写 |\n * | `*` | 转换为 `*` 字符 |\n *\n * ```ts\n * formatMask('123', '(###)') => (123)\n * formatMask('15900000000', '999****9999') => 159****0000\n * ```\n */\n@Pipe({ name: 'mask' })\nexport class FormatMaskPipe implements PipeTransform {\n transform(value: string, mask: string | FormatMaskOption): string {\n return formatMask(value, mask);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { FormatMaskPipe } from './mask.pipe';\n\nconst PIPES = [FormatMaskPipe];\n\n@NgModule({\n imports: PIPES,\n exports: PIPES\n})\nexport class FormatPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAIA;;;;;;;;;;;;;;;;;;AAkBG;MAEU,cAAc,CAAA;IACzB,SAAS,CAAC,KAAa,EAAE,IAA+B,EAAA;AACtD,QAAA,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;;uGAFrB,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,IAAI;mBAAC,EAAE,IAAI,EAAE,MAAM,EAAE;;;ACnBtB,MAAM,KAAK,GAAG,CAAC,cAAc,CAAC;MAMjB,gBAAgB,CAAA;uGAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAhB,gBAAgB,EAAA,OAAA,EAAA,CANd,cAAc,CAAA,EAAA,OAAA,EAAA,CAAd,cAAc,CAAA,EAAA,CAAA;wGAMhB,gBAAgB,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -1,4 +1,3 @@
1
- import type { NzSafeAny } from 'ng-zorro-antd/core/types';
2
1
  /**
3
2
  * String formatting
4
3
  *
@@ -10,16 +9,14 @@ import type { NzSafeAny } from 'ng-zorro-antd/core/types';
10
9
  * // output: this is asdf
11
10
  * ```
12
11
  */
13
- export declare function format(str: string | null | undefined, obj: NzSafeAny | null | undefined, needDeepGet?: boolean): string;
12
+ export declare function format(str: string | null | undefined, obj: any | null | undefined, needDeepGet?: boolean): string;
14
13
  export interface FormatMaskOption {
15
14
  mask: string;
16
- tokens?: {
17
- [key: string]: FormatMaskToken;
18
- };
15
+ tokens?: Record<string, FormatMaskToken>;
19
16
  }
20
17
  export interface FormatMaskToken {
21
18
  pattern: RegExp;
22
- default?: NzSafeAny;
19
+ default?: any;
23
20
  transform?: (char: string) => string;
24
21
  }
25
22
  /**
@@ -1,7 +1,6 @@
1
- import { NzSafeAny } from 'ng-zorro-antd/core/types';
2
1
  export interface YunzaiNavTopic {
3
- attribute: NzSafeAny;
4
- icon: NzSafeAny;
2
+ attribute: any;
3
+ icon: any;
5
4
  children: YunzaiNavTopic[];
6
5
  intro: string;
7
6
  key: string;
@@ -1,6 +1,5 @@
1
- import { NzSafeAny } from 'ng-zorro-antd/core/types';
2
1
  export interface YunzaiMenu {
3
- [key: string]: NzSafeAny;
2
+ [key: string]: any;
4
3
  appCode: string;
5
4
  appIconUrl: string;
6
5
  appType: string;
@@ -34,8 +33,8 @@ export interface YunzaiMenu {
34
33
  version: number;
35
34
  }
36
35
  export interface YunzaiMenuAttribute {
37
- defaultRoute: NzSafeAny;
38
- dataPlatform: NzSafeAny;
39
- targetUser: NzSafeAny;
40
- starConfig: NzSafeAny;
36
+ defaultRoute: any;
37
+ dataPlatform: any;
38
+ targetUser: any;
39
+ starConfig: any;
41
40
  }
package/mtypes/page.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { NzSafeAny } from 'ng-zorro-antd/core/types';
2
1
  export interface YunzaiPageParam<T> {
3
2
  pageNum?: number;
4
3
  pageSize?: number;
@@ -30,7 +29,7 @@ export interface YunzaiPageResult<T> {
30
29
  totalElements: number;
31
30
  totalPages: number;
32
31
  }
33
- export declare class YunzaiPageBuilder<T extends NzSafeAny | unknown> {
32
+ export declare class YunzaiPageBuilder<T extends any | unknown> {
34
33
  private page;
35
34
  pageNum(pageNum: number): this;
36
35
  pageSize(pageSize: number): this;
package/other/deep.d.ts CHANGED
@@ -1,10 +1,9 @@
1
- import type { NzSafeAny } from 'ng-zorro-antd/core/types';
2
1
  /**
3
2
  * Gets the value at `path` of `object`, like `_.get` in lodash.
4
3
  *
5
4
  * 类似 `_.get`,根据 `path` 获取安全值
6
5
  */
7
- export declare function deepGet(obj: NzSafeAny, path: string | string[] | null | undefined, defaultValue?: unknown): NzSafeAny;
6
+ export declare function deepGet(obj: any, path: string | string[] | null | undefined, defaultValue?: unknown): any;
8
7
  /**
9
8
  * Base on [extend](https://github.com/justmoon/node-extend) deep copy.
10
9
  *
@@ -12,9 +11,7 @@ export declare function deepGet(obj: NzSafeAny, path: string | string[] | null |
12
11
  *
13
12
  * NOTE: Don't a lot of recursion, maybe performance issues
14
13
  */
15
- export declare function deepCopy<T extends {
16
- [key: string]: NzSafeAny;
17
- } = NzSafeAny>(obj: T | null | undefined): T;
14
+ export declare function deepCopy<T extends Record<string, any> = any>(obj: T | null | undefined): T;
18
15
  /**
19
16
  * Deep merge object.
20
17
  *
@@ -26,10 +23,10 @@ export declare function deepCopy<T extends {
26
23
  * - `false` 表示会合并整个数组(将旧数据与新数据合并成新数组)
27
24
  * @param objects 要合并的对象
28
25
  */
29
- export declare function deepMergeKey(original: unknown, arrayProcessMethod: boolean, ...objects: NzSafeAny[]): NzSafeAny;
26
+ export declare function deepMergeKey(original: unknown, arrayProcessMethod: boolean, ...objects: any[]): any;
30
27
  /**
31
28
  * Deep merge object.
32
29
  *
33
30
  * 深度合并对象
34
31
  */
35
- export declare function deepMerge(original: unknown, ...objects: unknown[]): NzSafeAny;
32
+ export declare function deepMerge(original: unknown, ...objects: unknown[]): any;