@yelon/util 16.2.4 → 16.2.5-68d194e

Sign up to get free protection for your applications and to get access to all the features.
Files changed (243) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +22 -22
  3. package/analysis/global-event.subject.d.ts +7 -7
  4. package/analysis/index.d.ts +1 -1
  5. package/array/array-type.service.d.ts +68 -68
  6. package/array/array.service.d.ts +78 -78
  7. package/array/index.d.ts +2 -2
  8. package/browser/cookie.service.d.ts +67 -67
  9. package/browser/copy.d.ts +6 -6
  10. package/browser/index.d.ts +5 -5
  11. package/browser/is-empty.d.ts +6 -6
  12. package/browser/scroll.service.d.ts +37 -37
  13. package/browser/style.d.ts +21 -21
  14. package/config/abc/cell.type.d.ts +118 -0
  15. package/config/abc/date-picker.type.d.ts +52 -52
  16. package/config/abc/error-collect.type.d.ts +10 -10
  17. package/config/abc/exception.type.d.ts +9 -9
  18. package/config/abc/image.type.d.ts +15 -15
  19. package/config/abc/index.d.ts +18 -17
  20. package/config/abc/loading.type.d.ts +31 -31
  21. package/config/abc/lodop.type.d.ts +33 -33
  22. package/config/abc/media.type.d.ts +11 -11
  23. package/config/abc/onboarding.type.d.ts +4 -4
  24. package/config/abc/page-header.type.d.ts +39 -39
  25. package/config/abc/pdf.type.d.ts +35 -35
  26. package/config/abc/qr.type.d.ts +25 -25
  27. package/config/abc/se.type.d.ts +32 -32
  28. package/config/abc/sg.type.d.ts +10 -10
  29. package/config/abc/st.type.d.ts +465 -465
  30. package/config/abc/sv.type.d.ts +14 -14
  31. package/config/abc/xlsx.type.d.ts +12 -12
  32. package/config/abc/zip.type.d.ts +10 -10
  33. package/config/acl/acl.type.d.ts +32 -32
  34. package/config/auth/auth.type.d.ts +55 -55
  35. package/config/bis/bis.type.d.ts +11 -11
  36. package/config/cache/cache.type.d.ts +40 -40
  37. package/config/chart/chart.type.d.ts +33 -33
  38. package/config/config.service.d.ts +13 -13
  39. package/config/config.types.d.ts +49 -48
  40. package/config/index.d.ts +14 -14
  41. package/config/mock/mock.type.d.ts +18 -18
  42. package/config/sf/sf.type.d.ts +133 -133
  43. package/config/socket/socket.type.d.ts +4 -4
  44. package/config/theme/http.type.d.ts +14 -14
  45. package/config/theme/i18n.type.d.ts +14 -14
  46. package/config/theme/index.d.ts +3 -3
  47. package/config/theme/responsive.type.d.ts +12 -12
  48. package/config/util/array.type.d.ts +22 -22
  49. package/config/util/currency.type.d.ts +39 -39
  50. package/date-time/index.d.ts +2 -2
  51. package/date-time/picker.d.ts +68 -68
  52. package/date-time/time.d.ts +31 -29
  53. package/decorator/convert.d.ts +24 -24
  54. package/decorator/index.d.ts +2 -2
  55. package/decorator/zone-outside.d.ts +35 -35
  56. package/esm2022/analysis/analysis.mjs +4 -4
  57. package/esm2022/analysis/global-event.subject.mjs +16 -16
  58. package/esm2022/analysis/index.mjs +1 -1
  59. package/esm2022/array/array-type.service.mjs +1 -1
  60. package/esm2022/array/array.mjs +4 -4
  61. package/esm2022/array/array.service.mjs +276 -276
  62. package/esm2022/array/index.mjs +2 -2
  63. package/esm2022/browser/browser.mjs +4 -4
  64. package/esm2022/browser/cookie.service.mjs +102 -102
  65. package/esm2022/browser/copy.mjs +27 -27
  66. package/esm2022/browser/index.mjs +5 -5
  67. package/esm2022/browser/is-empty.mjs +18 -18
  68. package/esm2022/browser/scroll.service.mjs +87 -87
  69. package/esm2022/browser/style.mjs +37 -37
  70. package/esm2022/config/abc/cell.type.mjs +2 -0
  71. package/esm2022/config/abc/date-picker.type.mjs +1 -1
  72. package/esm2022/config/abc/error-collect.type.mjs +1 -1
  73. package/esm2022/config/abc/exception.type.mjs +1 -1
  74. package/esm2022/config/abc/image.type.mjs +1 -1
  75. package/esm2022/config/abc/index.mjs +19 -18
  76. package/esm2022/config/abc/loading.type.mjs +1 -1
  77. package/esm2022/config/abc/lodop.type.mjs +1 -1
  78. package/esm2022/config/abc/media.type.mjs +1 -1
  79. package/esm2022/config/abc/onboarding.type.mjs +1 -1
  80. package/esm2022/config/abc/page-header.type.mjs +1 -1
  81. package/esm2022/config/abc/pdf.type.mjs +1 -1
  82. package/esm2022/config/abc/qr.type.mjs +1 -1
  83. package/esm2022/config/abc/se.type.mjs +1 -1
  84. package/esm2022/config/abc/sg.type.mjs +1 -1
  85. package/esm2022/config/abc/st.type.mjs +1 -1
  86. package/esm2022/config/abc/sv.type.mjs +2 -2
  87. package/esm2022/config/abc/xlsx.type.mjs +1 -1
  88. package/esm2022/config/abc/zip.type.mjs +1 -1
  89. package/esm2022/config/acl/acl.type.mjs +1 -1
  90. package/esm2022/config/auth/auth.type.mjs +1 -1
  91. package/esm2022/config/bis/bis.type.mjs +1 -1
  92. package/esm2022/config/cache/cache.type.mjs +1 -1
  93. package/esm2022/config/chart/chart.type.mjs +1 -1
  94. package/esm2022/config/config.mjs +4 -4
  95. package/esm2022/config/config.service.mjs +36 -36
  96. package/esm2022/config/config.types.mjs +9 -9
  97. package/esm2022/config/index.mjs +14 -14
  98. package/esm2022/config/mock/mock.type.mjs +1 -1
  99. package/esm2022/config/sf/sf.type.mjs +1 -1
  100. package/esm2022/config/socket/socket.type.mjs +1 -1
  101. package/esm2022/config/theme/http.type.mjs +1 -1
  102. package/esm2022/config/theme/i18n.type.mjs +1 -1
  103. package/esm2022/config/theme/index.mjs +3 -3
  104. package/esm2022/config/theme/responsive.type.mjs +1 -1
  105. package/esm2022/config/util/array.type.mjs +1 -1
  106. package/esm2022/config/util/currency.type.mjs +1 -1
  107. package/esm2022/date-time/date-time.mjs +4 -4
  108. package/esm2022/date-time/index.mjs +2 -2
  109. package/esm2022/date-time/picker.mjs +115 -115
  110. package/esm2022/date-time/time.mjs +96 -89
  111. package/esm2022/decorator/convert.mjs +57 -57
  112. package/esm2022/decorator/decorator.mjs +4 -4
  113. package/esm2022/decorator/index.mjs +2 -2
  114. package/esm2022/decorator/zone-outside.mjs +56 -56
  115. package/esm2022/form/form.mjs +4 -4
  116. package/esm2022/form/index.mjs +2 -2
  117. package/esm2022/form/match-control.mjs +29 -29
  118. package/esm2022/form/validators.mjs +80 -80
  119. package/esm2022/format/currency.service.mjs +237 -237
  120. package/esm2022/format/currency.types.mjs +8 -8
  121. package/esm2022/format/format.mjs +4 -4
  122. package/esm2022/format/index.mjs +4 -4
  123. package/esm2022/format/string.mjs +84 -84
  124. package/esm2022/format/validate.mjs +93 -93
  125. package/esm2022/index.mjs +14 -14
  126. package/esm2022/math/in-range.mjs +24 -24
  127. package/esm2022/math/index.mjs +2 -2
  128. package/esm2022/math/math.mjs +4 -4
  129. package/esm2022/math/round.mjs +52 -52
  130. package/esm2022/mcache/index.mjs +1 -1
  131. package/esm2022/mcache/localStorageUtils.mjs +59 -69
  132. package/esm2022/mcache/mcache.mjs +4 -4
  133. package/esm2022/mtypes/authority.type.mjs +1 -1
  134. package/esm2022/mtypes/header-menu.type.mjs +1 -1
  135. package/esm2022/mtypes/index.mjs +9 -9
  136. package/esm2022/mtypes/menu.type.mjs +1 -1
  137. package/esm2022/mtypes/mtypes.mjs +4 -4
  138. package/esm2022/mtypes/nav.types.mjs +6 -6
  139. package/esm2022/mtypes/page.mjs +41 -41
  140. package/esm2022/mtypes/project-info.types.mjs +1 -1
  141. package/esm2022/mtypes/response.mjs +1 -1
  142. package/esm2022/mtypes/role.type.mjs +1 -1
  143. package/esm2022/mtypes/user.types.mjs +1 -1
  144. package/esm2022/other/assert.mjs +66 -66
  145. package/esm2022/other/deep.mjs +77 -77
  146. package/esm2022/other/favicon.mjs +28 -28
  147. package/esm2022/other/index.mjs +7 -7
  148. package/esm2022/other/lazy.service.mjs +131 -131
  149. package/esm2022/other/logger.mjs +32 -32
  150. package/esm2022/other/other.mjs +4 -4
  151. package/esm2022/other/path-to-regexp.service.mjs +238 -238
  152. package/esm2022/other/resize.mjs +3 -3
  153. package/esm2022/pipes/currency/cny.pipe.mjs +22 -22
  154. package/esm2022/pipes/currency/index.mjs +4 -4
  155. package/esm2022/pipes/currency/mega.pipe.mjs +28 -28
  156. package/esm2022/pipes/currency/module.mjs +18 -18
  157. package/esm2022/pipes/currency/pipe-currency.mjs +4 -4
  158. package/esm2022/pipes/currency/price.pipe.mjs +26 -26
  159. package/esm2022/pipes/filter/filter.pipe.mjs +18 -18
  160. package/esm2022/pipes/filter/index.mjs +2 -2
  161. package/esm2022/pipes/filter/module.mjs +16 -16
  162. package/esm2022/pipes/filter/pipe-filter.mjs +4 -4
  163. package/esm2022/pipes/format/index.mjs +2 -2
  164. package/esm2022/pipes/format/mask.pipe.mjs +33 -33
  165. package/esm2022/pipes/format/module.mjs +16 -16
  166. package/esm2022/pipes/format/pipe-format.mjs +4 -4
  167. package/esm2022/pipes/index.mjs +3 -3
  168. package/esm2022/pipes/pipes.mjs +4 -4
  169. package/esm2022/token/index.mjs +2 -2
  170. package/esm2022/token/page-visibility.mjs +14 -14
  171. package/esm2022/token/token.mjs +4 -4
  172. package/esm2022/token/window.mjs +16 -16
  173. package/esm2022/yelon-util.mjs +4 -4
  174. package/fesm2022/analysis.mjs +24 -24
  175. package/fesm2022/array.mjs +284 -284
  176. package/fesm2022/browser.mjs +279 -279
  177. package/fesm2022/config.mjs +54 -54
  178. package/fesm2022/config.mjs.map +1 -1
  179. package/fesm2022/date-time.mjs +218 -211
  180. package/fesm2022/date-time.mjs.map +1 -1
  181. package/fesm2022/decorator.mjs +121 -121
  182. package/fesm2022/form.mjs +118 -118
  183. package/fesm2022/format.mjs +431 -431
  184. package/fesm2022/format.mjs.map +1 -1
  185. package/fesm2022/math.mjs +85 -85
  186. package/fesm2022/mcache.mjs +65 -75
  187. package/fesm2022/mcache.mjs.map +1 -1
  188. package/fesm2022/mtypes.mjs +55 -55
  189. package/fesm2022/other.mjs +586 -586
  190. package/fesm2022/pipe-currency.mjs +94 -94
  191. package/fesm2022/pipe-filter.mjs +40 -40
  192. package/fesm2022/pipe-format.mjs +55 -55
  193. package/fesm2022/pipes.mjs +8 -8
  194. package/fesm2022/token.mjs +37 -37
  195. package/fesm2022/yelon-util.mjs +19 -19
  196. package/form/index.d.ts +2 -2
  197. package/form/match-control.d.ts +15 -15
  198. package/form/validators.d.ts +62 -62
  199. package/format/currency.service.d.ts +37 -37
  200. package/format/currency.types.d.ts +82 -77
  201. package/format/index.d.ts +4 -4
  202. package/format/string.d.ts +44 -44
  203. package/format/validate.d.ts +72 -72
  204. package/index.d.ts +14 -14
  205. package/math/in-range.d.ts +14 -14
  206. package/math/index.d.ts +2 -2
  207. package/math/round.d.ts +33 -33
  208. package/mcache/index.d.ts +1 -1
  209. package/mcache/localStorageUtils.d.ts +18 -31
  210. package/mtypes/authority.type.d.ts +3 -3
  211. package/mtypes/header-menu.type.d.ts +12 -12
  212. package/mtypes/index.d.ts +9 -9
  213. package/mtypes/menu.type.d.ts +40 -40
  214. package/mtypes/nav.types.d.ts +27 -27
  215. package/mtypes/page.d.ts +46 -46
  216. package/mtypes/project-info.types.d.ts +21 -21
  217. package/mtypes/response.d.ts +7 -7
  218. package/mtypes/role.type.d.ts +10 -10
  219. package/mtypes/user.types.d.ts +22 -22
  220. package/other/assert.d.ts +36 -36
  221. package/other/deep.d.ts +35 -35
  222. package/other/favicon.d.ts +2 -2
  223. package/other/index.d.ts +7 -7
  224. package/other/lazy.service.d.ts +48 -48
  225. package/other/logger.d.ts +5 -5
  226. package/other/path-to-regexp.service.d.ts +26 -26
  227. package/other/resize.d.ts +1 -1
  228. package/package.json +141 -141
  229. package/pipes/currency/cny.pipe.d.ts +15 -15
  230. package/pipes/currency/index.d.ts +4 -4
  231. package/pipes/currency/mega.pipe.d.ts +16 -16
  232. package/pipes/currency/module.d.ts +9 -9
  233. package/pipes/currency/price.pipe.d.ts +19 -19
  234. package/pipes/filter/filter.pipe.d.ts +13 -13
  235. package/pipes/filter/index.d.ts +2 -2
  236. package/pipes/filter/module.d.ts +7 -7
  237. package/pipes/format/index.d.ts +2 -2
  238. package/pipes/format/mask.pipe.d.ts +27 -27
  239. package/pipes/format/module.d.ts +7 -7
  240. package/pipes/index.d.ts +3 -3
  241. package/token/index.d.ts +2 -2
  242. package/token/page-visibility.d.ts +8 -8
  243. package/token/window.d.ts +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"format.mjs","sources":["../../../../packages/util/format/string.ts","../../../../packages/util/format/validate.ts","../../../../packages/util/format/currency.types.ts","../../../../packages/util/format/currency.service.ts","../../../../packages/util/format/format.ts"],"sourcesContent":["import { deepGet } from '@yelon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n/**\n * String formatting\n *\n * 字符串格式化\n * ```\n * format('this is ${name}', { name: 'asdf' })\n * // output: this is asdf\n * format('this is ${user.name}', { user: { name: 'asdf' } }, true)\n * // output: this is asdf\n * ```\n */\nexport function format(\n str: string | null | undefined,\n obj: NzSafeAny | null | undefined,\n needDeepGet: boolean = false\n): string {\n return (str || '').replace(/\\${([^}]+)}/g, (_work: string, key: string) =>\n needDeepGet ? deepGet(obj, key.split('.'), '') : (obj || {})[key] || ''\n );\n}\n\nexport interface FormatMaskOption {\n mask: string;\n tokens?: { [key: string]: FormatMaskToken };\n}\n\nexport interface FormatMaskToken {\n pattern: RegExp;\n default?: NzSafeAny;\n transform?: (char: string) => string;\n}\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 */\nexport function formatMask(value: string, option: string | FormatMaskOption): string {\n if (!value) {\n return '';\n }\n const opt: FormatMaskOption = {\n ...(typeof option === 'string' ? { mask: option } : option)\n };\n const tokens: { [key: string]: FormatMaskToken } = {\n '0': { pattern: /\\d/, default: '0' },\n '9': { pattern: /\\d/ },\n '#': { pattern: /[a-zA-Z0-9]/ },\n U: {\n pattern: /[a-zA-Z]/,\n transform: char => char.toLocaleUpperCase()\n },\n L: {\n pattern: /[a-zA-Z]/,\n transform: char => char.toLocaleLowerCase()\n },\n '*': {\n pattern: /.*/,\n transform: _ => `*`\n },\n ...opt.tokens\n };\n\n const splitValue = value.split('');\n return opt.mask\n .split('')\n .reduce((res, cur) => {\n const token = tokens[cur];\n if (!token) {\n res.push(cur);\n return res;\n }\n\n const value = splitValue.shift() ?? '';\n if (!token.pattern.test(value)) {\n if (token.default) res.push(token.default);\n return res;\n }\n\n if (typeof token.transform === 'function') {\n res.push(token.transform(value));\n } else {\n res.push(value);\n }\n return res;\n }, [] as string[])\n .join('');\n}\n","export const REGEX_STR = {\n num: `(([-+]?\\\\d+\\\\.\\\\d+)|([-+]?\\\\d+)|([-+]?\\\\.\\\\d+))(?:[eE]([-+]?\\\\d+))?`,\n idCard: `(^\\\\d{15}$)|(^\\\\d{17}(?:[0-9]|X)$)`,\n mobile: `^(0|\\\\+?86|17951)?1[0-9]{10}$`,\n url: `(((^https?:(?:\\/\\/)?)(?:[-;:&=\\\\+\\\\$,\\\\w]+@)?[A-Za-z0-9.-]+(?::\\\\d+)?|(?:www.|[-;:&=\\\\+\\\\$,\\\\w]+@)[A-Za-z0-9.-]+)((?:\\/[\\\\+~%\\\\/.\\\\w-_]*)?\\\\??(?:[-\\\\+=&;%@.\\\\w_]*)#?(?:[\\\\w]*))?)`,\n ip: `(?:^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$)|(?:^(?:(?:[a-fA-F\\\\d]{1,4}:){7}(?:[a-fA-F\\\\d]{1,4}|:)|(?:[a-fA-F\\\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|:[a-fA-F\\\\d]{1,4}|:)|(?:[a-fA-F\\\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,2}|:)|(?:[a-fA-F\\\\d]{1,4}:){4}(?:(?::[a-fA-F\\\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,3}|:)|(?:[a-fA-F\\\\d]{1,4}:){3}(?:(?::[a-fA-F\\\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,4}|:)|(?:[a-fA-F\\\\d]{1,4}:){2}(?:(?::[a-fA-F\\\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,5}|:)|(?:[a-fA-F\\\\d]{1,4}:){1}(?:(?::[a-fA-F\\\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\\\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)`,\n color: `(?:#|0x)(?:[a-f0-9]{3}|[a-f0-9]{6})\\\\b|(?:rgb|hsl)a?\\\\([^\\\\)]*\\\\)`,\n chinese: `[\\u4e00-\\u9fa5]+`\n};\n\nfunction genRegex(str: string, flags?: string): RegExp {\n return new RegExp(`^${str}$`, flags);\n}\n\nexport const REGEX = {\n num: genRegex(REGEX_STR.num),\n idCard: genRegex(REGEX_STR.idCard, 'i'),\n mobile: genRegex(REGEX_STR.mobile),\n url: genRegex(REGEX_STR.url),\n ip: genRegex(REGEX_STR.ip),\n color: genRegex(REGEX_STR.color),\n chinese: genRegex(REGEX_STR.chinese)\n};\n\n/**\n * Wheter is number\n *\n * 是否为数字\n */\nexport function isNum(value: string | number): boolean {\n return REGEX.num.test(value.toString());\n}\n\n/**\n * Wheter is integer\n *\n * 是否为整数\n */\nexport function isInt(value: string | number): boolean {\n return isNum(value) && parseInt(value.toString(), 10).toString() === value.toString();\n}\n\n/**\n * Wheter is decimal\n *\n * 是否为小数点数值\n */\nexport function isDecimal(value: string | number): boolean {\n return isNum(value) && !isInt(value);\n}\n\n/**\n * Wheter is People's Republic of China identity card\n *\n * 是否为中华人民共和国居民身份证\n */\nexport function isIdCard(value: string): boolean {\n return REGEX.idCard.test(value);\n}\n\n/**\n * Wheter is china mobile (China)\n *\n * 是否为手机号(中国)\n */\nexport function isMobile(value: string): boolean {\n return REGEX.mobile.test(value);\n}\n\n/**\n * Wheter is url address\n *\n * 是否URL地址\n */\nexport function isUrl(url: string): boolean {\n return REGEX.url.test(url);\n}\n\n/**\n * Wheter is IPv4 address (Support v4, v6)\n *\n * 是否IP4地址(支持v4、v6)\n */\nexport function isIp(ip: string): boolean {\n return REGEX.ip.test(ip);\n}\n\n/**\n * Wheter is color\n *\n * 是否颜色代码值\n */\nexport function isColor(color: string): boolean {\n return REGEX.color.test(color);\n}\n\n/**\n * Wheter is chinese\n *\n * 是否中文\n */\nexport function isChinese(value: string): boolean {\n return REGEX.chinese.test(value);\n}\n","export type CurrencyStartingUnit = 'yuan' | 'cent';\n\nexport interface CurrencyStartingUnitOptions {\n /**\n * The starting unit of the value, `yuan` means 元, `cent` means 分, default: `yuan`\n *\n * 值的起始单位,`yuan` 元,`cent` 分,默认:`yuan`\n */\n startingUnit?: CurrencyStartingUnit;\n}\n\nexport interface CurrencyFormatOptions extends CurrencyStartingUnitOptions {\n /**\n * Using `DEFAULT_CURRENCY_CODE` when value is `true\n *\n * 是否使用 `CurrencyPipe` 来替代\n */\n useAngular?: boolean;\n /**\n * 精度,默认:`2`\n */\n precision?: number;\n /**\n * 是否忽略精度 `.0` 或 `.00` 结尾的字符,默认:`true`\n */\n ignoreZeroPrecision?: boolean;\n\n /**\n * Use anguar `currency` pipe parse when is set, pls refer to [document](https://angular.io/api/common/CurrencyPipe)\n *\n * 若指定则表示使用 Angular 自带的 `currency` 管道来解析,见[文档](https://angular.cn/api/common/CurrencyPipe)\n */\n ngCurrency?: {\n display: 'code' | 'symbol' | 'symbol-narrow';\n currencyCode?: string;\n digitsInfo?: string;\n locale?: string;\n };\n}\n\nexport interface CurrencyMegaOptions extends CurrencyStartingUnitOptions {\n /**\n * 精度,默认:`2`\n */\n precision?: number;\n\n /**\n * 单位国际化,默认:`{Q: '京', T: '兆', B: '亿', M: '万', K: '千',}`\n */\n unitI18n?: CurrencyMegaUnitI18n;\n}\n\nexport interface CurrencyMegaResult {\n raw: number | string;\n value: string;\n unit: string;\n unitI18n: string;\n}\n\nexport const CurrencyMega_Powers = [\n { unit: 'Q', value: Math.pow(10, 15) },\n { unit: 'T', value: Math.pow(10, 12) },\n { unit: 'B', value: Math.pow(10, 9) },\n { unit: 'M', value: Math.pow(10, 6) },\n { unit: 'K', value: 1000 }\n];\n\nexport interface CurrencyMegaUnitI18n {\n Q: string;\n T: string;\n B: string;\n M: string;\n K: string;\n}\n\nexport interface CurrencyCNYOptions extends CurrencyStartingUnitOptions {\n /**\n * Whether to return to uppercase notation, default: `true`\n *\n * 是否返回大写表示法,默认:`true`\n */\n inWords?: boolean;\n /**\n * Specify negative sign, default: `negative`\n *\n * 指定负数符号,默认:`负`\n */\n minusSymbol?: string;\n}\n","import { CurrencyPipe, formatNumber } from '@angular/common';\nimport { DEFAULT_CURRENCY_CODE, Inject, Injectable, LOCALE_ID } from '@angular/core';\n\nimport { YunzaiConfigService, YunzaiUtilCurrencyConfig } from '@yelon/util/config';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport {\n CurrencyCNYOptions,\n CurrencyFormatOptions,\n CurrencyMegaOptions,\n CurrencyMegaResult,\n CurrencyMega_Powers\n} from './currency.types';\n\n@Injectable({ providedIn: 'root' })\nexport class CurrencyService {\n private c: YunzaiUtilCurrencyConfig;\n private readonly currencyPipe: CurrencyPipe;\n\n constructor(\n cog: YunzaiConfigService,\n @Inject(LOCALE_ID) private locale: string,\n @Inject(DEFAULT_CURRENCY_CODE) _defaultCurrencyCode: string = 'USD'\n ) {\n this.currencyPipe = new CurrencyPipe(locale, _defaultCurrencyCode);\n this.c = cog.merge('utilCurrency', {\n startingUnit: 'yuan',\n megaUnit: { Q: '京', T: '兆', B: '亿', M: '万', K: '千' },\n precision: 2,\n ignoreZeroPrecision: true\n })!;\n }\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 format(value: number | string, options?: CurrencyFormatOptions): string {\n options = {\n startingUnit: this.c.startingUnit,\n precision: this.c.precision,\n ignoreZeroPrecision: this.c.ignoreZeroPrecision,\n ngCurrency: this.c.ngCurrency,\n ...options\n };\n let truthValue = Number(value);\n if (value == null || isNaN(truthValue)) {\n return '';\n }\n if (options.startingUnit === 'cent') {\n truthValue = truthValue / 100;\n }\n if (options.ngCurrency != null) {\n const cur = options.ngCurrency!;\n return this.currencyPipe.transform(\n truthValue,\n cur.currencyCode,\n cur.display,\n cur.digitsInfo,\n cur.locale || this.locale\n )!;\n }\n const res = formatNumber(\n truthValue,\n this.locale,\n `.${options.ignoreZeroPrecision ? 1 : options.precision}-${options.precision}`\n );\n return options.ignoreZeroPrecision ? res.replace(/(?:\\.[0]+)$/g, '') : res;\n }\n\n /**\n * Large number format filter\n *\n * 大数据格式化\n * ```ts\n * 1000 => { value: '1', unit: 'K', unitI18n: '千' }\n * 12456 => { value: '12.46', unit: 'K', unitI18n: '千' }\n * ```\n */\n mega(value: number | string, options?: CurrencyMegaOptions): CurrencyMegaResult {\n options = { precision: this.c.precision, unitI18n: this.c.megaUnit, startingUnit: this.c.startingUnit, ...options };\n let num = Number(value);\n const res: CurrencyMegaResult = { raw: value, value: '', unit: '', unitI18n: '' };\n if (isNaN(num) || num === 0) {\n res.value = value.toString();\n return res;\n }\n if (options.startingUnit === 'cent') {\n num = num / 100;\n }\n let abs = Math.abs(+num);\n const rounder = Math.pow(10, options.precision!);\n const isNegative = num < 0;\n for (const p of CurrencyMega_Powers) {\n let reduced = abs / p.value;\n\n reduced = Math.round(reduced * rounder) / rounder;\n\n if (reduced >= 1) {\n abs = reduced;\n res.unit = p.unit;\n break;\n }\n }\n\n res.value = (isNegative ? '-' : '') + abs;\n res.unitI18n = (options.unitI18n as { [key: string]: NzSafeAny })[res.unit];\n return res;\n }\n\n /**\n * Converted into RMB notation.\n *\n * 转化成人民币表示法\n */\n cny(value: number | string, options?: CurrencyCNYOptions): string {\n options = {\n inWords: true,\n minusSymbol: '负',\n startingUnit: this.c.startingUnit,\n ...options\n };\n\n value = Number(value);\n if (isNaN(value)) {\n return '';\n }\n if (options.startingUnit === 'cent') {\n value = value / 100;\n }\n value = value.toString();\n let integer: number | string;\n let decimal: number | string | null;\n [integer, decimal] = value.split('.');\n let symbol = '';\n if (integer.startsWith('-')) {\n symbol = options.minusSymbol!;\n integer = integer.substring(1);\n }\n if (/^-?\\d+$/.test(value)) {\n decimal = null;\n }\n integer = (+integer).toString();\n const inWords = options.inWords;\n const unit: { [key: string]: string[] } = {\n num: inWords\n ? ['', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖', '点']\n : ['', '一', '二', '三', '四', '五', '六', '七', '八', '九', '点'],\n radice: inWords\n ? [\n '',\n '拾',\n '佰',\n '仟',\n '万',\n '拾',\n '佰',\n '仟',\n '亿',\n '拾',\n '佰',\n '仟',\n '万亿',\n '拾',\n '佰',\n '仟',\n '兆',\n '拾',\n '佰',\n '仟'\n ]\n : [\n '',\n '十',\n '百',\n '千',\n '万',\n '十',\n '百',\n '千',\n '亿',\n '十',\n '百',\n '千',\n '万亿',\n '十',\n '百',\n '千',\n '兆',\n '十',\n '百',\n '千'\n ],\n dec: ['角', '分', '厘', '毫']\n };\n if (inWords) {\n value = (+value).toFixed(5).toString();\n }\n let integerRes = '';\n const integerCount = integer.length;\n if (integer === '0' || integerCount === 0) {\n integerRes = '零';\n } else {\n let cnDesc = '';\n for (let i = 0; i < integerCount; i++) {\n const n = +integer[i];\n const j = integerCount - i - 1;\n const isZero = i > 1 && n !== 0 && integer[i - 1] === '0';\n const cnZero = isZero ? '零' : '';\n const isEmpptyUnit = (n === 0 && j % 4 !== 0) || integer.substring(i - 3, i - 3 + 4) === '0000';\n const descMark = cnDesc;\n let cnNum = unit.num[n];\n\n cnDesc = isEmpptyUnit ? '' : unit.radice[j];\n // 第一位是一十\n if (i === 0 && cnNum === '一' && cnDesc === '十') cnNum = '';\n const isChangeEr =\n n > 1 &&\n cnNum === '二' && // 去除首位\n ['', '十', '百'].indexOf(cnDesc) === -1 && // 不读两\\两十\\两百\n descMark !== '十'; // 不读十两\n if (isChangeEr) cnNum = '两';\n integerRes += cnZero + cnNum + cnDesc;\n }\n }\n\n // 小数部分拼接\n let decimalRes = '';\n const decimalCount = decimal ? decimal.toString().length : 0;\n if (decimal === null) {\n decimalRes = inWords ? '整' : '';\n } else if (decimal === '0') {\n decimalRes = '零';\n } else {\n for (let i = 0; i < decimalCount; i++) {\n if (inWords && i > unit.dec.length - 1) break;\n const n = decimal[i];\n const cnZero = n === '0' ? '零' : '';\n const cnNum = unit.num[+n];\n const cnDesc = inWords ? unit.dec[i] : '';\n decimalRes += cnZero + cnNum + cnDesc;\n }\n }\n const ret =\n symbol +\n (inWords\n ? integerRes + (decimalRes === '零' ? '元整' : `元${decimalRes}`)\n : integerRes + (decimalRes === '' ? '' : `点${decimalRes}`));\n return ret;\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":"format.mjs","sources":["../../../../packages/util/format/string.ts","../../../../packages/util/format/validate.ts","../../../../packages/util/format/currency.types.ts","../../../../packages/util/format/currency.service.ts","../../../../packages/util/format/format.ts"],"sourcesContent":["import { deepGet } from '@yelon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n/**\n * String formatting\n *\n * 字符串格式化\n * ```\n * format('this is ${name}', { name: 'asdf' })\n * // output: this is asdf\n * format('this is ${user.name}', { user: { name: 'asdf' } }, true)\n * // output: this is asdf\n * ```\n */\nexport function format(\n str: string | null | undefined,\n obj: NzSafeAny | null | undefined,\n needDeepGet: boolean = false\n): string {\n return (str || '').replace(/\\${([^}]+)}/g, (_work: string, key: string) =>\n needDeepGet ? deepGet(obj, key.split('.'), '') : (obj || {})[key] || ''\n );\n}\n\nexport interface FormatMaskOption {\n mask: string;\n tokens?: { [key: string]: FormatMaskToken };\n}\n\nexport interface FormatMaskToken {\n pattern: RegExp;\n default?: NzSafeAny;\n transform?: (char: string) => string;\n}\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 */\nexport function formatMask(value: string, option: string | FormatMaskOption): string {\n if (!value) {\n return '';\n }\n const opt: FormatMaskOption = {\n ...(typeof option === 'string' ? { mask: option } : option)\n };\n const tokens: { [key: string]: FormatMaskToken } = {\n '0': { pattern: /\\d/, default: '0' },\n '9': { pattern: /\\d/ },\n '#': { pattern: /[a-zA-Z0-9]/ },\n U: {\n pattern: /[a-zA-Z]/,\n transform: char => char.toLocaleUpperCase()\n },\n L: {\n pattern: /[a-zA-Z]/,\n transform: char => char.toLocaleLowerCase()\n },\n '*': {\n pattern: /.*/,\n transform: _ => `*`\n },\n ...opt.tokens\n };\n\n const splitValue = value.split('');\n return opt.mask\n .split('')\n .reduce((res, cur) => {\n const token = tokens[cur];\n if (!token) {\n res.push(cur);\n return res;\n }\n\n const value = splitValue.shift() ?? '';\n if (!token.pattern.test(value)) {\n if (token.default) res.push(token.default);\n return res;\n }\n\n if (typeof token.transform === 'function') {\n res.push(token.transform(value));\n } else {\n res.push(value);\n }\n return res;\n }, [] as string[])\n .join('');\n}\n","export const REGEX_STR = {\n num: `(([-+]?\\\\d+\\\\.\\\\d+)|([-+]?\\\\d+)|([-+]?\\\\.\\\\d+))(?:[eE]([-+]?\\\\d+))?`,\n idCard: `(^\\\\d{15}$)|(^\\\\d{17}(?:[0-9]|X)$)`,\n mobile: `^(0|\\\\+?86|17951)?1[0-9]{10}$`,\n url: `(((^https?:(?:\\/\\/)?)(?:[-;:&=\\\\+\\\\$,\\\\w]+@)?[A-Za-z0-9.-]+(?::\\\\d+)?|(?:www.|[-;:&=\\\\+\\\\$,\\\\w]+@)[A-Za-z0-9.-]+)((?:\\/[\\\\+~%\\\\/.\\\\w-_]*)?\\\\??(?:[-\\\\+=&;%@.\\\\w_]*)#?(?:[\\\\w]*))?)`,\n ip: `(?:^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$)|(?:^(?:(?:[a-fA-F\\\\d]{1,4}:){7}(?:[a-fA-F\\\\d]{1,4}|:)|(?:[a-fA-F\\\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|:[a-fA-F\\\\d]{1,4}|:)|(?:[a-fA-F\\\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,2}|:)|(?:[a-fA-F\\\\d]{1,4}:){4}(?:(?::[a-fA-F\\\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,3}|:)|(?:[a-fA-F\\\\d]{1,4}:){3}(?:(?::[a-fA-F\\\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,4}|:)|(?:[a-fA-F\\\\d]{1,4}:){2}(?:(?::[a-fA-F\\\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,5}|:)|(?:[a-fA-F\\\\d]{1,4}:){1}(?:(?::[a-fA-F\\\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\\\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}|(?::[a-fA-F\\\\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)`,\n color: `(?:#|0x)(?:[a-f0-9]{3}|[a-f0-9]{6})\\\\b|(?:rgb|hsl)a?\\\\([^\\\\)]*\\\\)`,\n chinese: `[\\u4e00-\\u9fa5]+`\n};\n\nfunction genRegex(str: string, flags?: string): RegExp {\n return new RegExp(`^${str}$`, flags);\n}\n\nexport const REGEX = {\n num: genRegex(REGEX_STR.num),\n idCard: genRegex(REGEX_STR.idCard, 'i'),\n mobile: genRegex(REGEX_STR.mobile),\n url: genRegex(REGEX_STR.url),\n ip: genRegex(REGEX_STR.ip),\n color: genRegex(REGEX_STR.color),\n chinese: genRegex(REGEX_STR.chinese)\n};\n\n/**\n * Wheter is number\n *\n * 是否为数字\n */\nexport function isNum(value: string | number): boolean {\n return REGEX.num.test(value.toString());\n}\n\n/**\n * Wheter is integer\n *\n * 是否为整数\n */\nexport function isInt(value: string | number): boolean {\n return isNum(value) && parseInt(value.toString(), 10).toString() === value.toString();\n}\n\n/**\n * Wheter is decimal\n *\n * 是否为小数点数值\n */\nexport function isDecimal(value: string | number): boolean {\n return isNum(value) && !isInt(value);\n}\n\n/**\n * Wheter is People's Republic of China identity card\n *\n * 是否为中华人民共和国居民身份证\n */\nexport function isIdCard(value: string): boolean {\n return REGEX.idCard.test(value);\n}\n\n/**\n * Wheter is china mobile (China)\n *\n * 是否为手机号(中国)\n */\nexport function isMobile(value: string): boolean {\n return REGEX.mobile.test(value);\n}\n\n/**\n * Wheter is url address\n *\n * 是否URL地址\n */\nexport function isUrl(url: string): boolean {\n return REGEX.url.test(url);\n}\n\n/**\n * Wheter is IPv4 address (Support v4, v6)\n *\n * 是否IP4地址(支持v4、v6)\n */\nexport function isIp(ip: string): boolean {\n return REGEX.ip.test(ip);\n}\n\n/**\n * Wheter is color\n *\n * 是否颜色代码值\n */\nexport function isColor(color: string): boolean {\n return REGEX.color.test(color);\n}\n\n/**\n * Wheter is chinese\n *\n * 是否中文\n */\nexport function isChinese(value: string): boolean {\n return REGEX.chinese.test(value);\n}\n","export type CurrencyStartingUnit = 'yuan' | 'cent';\n\nexport interface CurrencyStartingUnitOptions {\n /**\n * The starting unit of the value, `yuan` means 元, `cent` means 分, default: `yuan`\n *\n * 值的起始单位,`yuan` 元,`cent` 分,默认:`yuan`\n */\n startingUnit?: CurrencyStartingUnit;\n}\n\nexport interface CurrencyFormatOptions extends CurrencyStartingUnitOptions {\n /**\n * Using `DEFAULT_CURRENCY_CODE` when value is `true\n *\n * 是否使用 `CurrencyPipe` 来替代\n */\n useAngular?: boolean;\n /**\n * 精度,默认:`2`\n */\n precision?: number;\n /**\n * 是否忽略精度 `.0` 或 `.00` 结尾的字符,默认:`true`\n */\n ignoreZeroPrecision?: boolean;\n\n /**\n * Use anguar `currency` pipe parse when is set, pls refer to [document](https://angular.io/api/common/CurrencyPipe)\n *\n * 若指定则表示使用 Angular 自带的 `currency` 管道来解析,见[文档](https://angular.cn/api/common/CurrencyPipe)\n */\n ngCurrency?: {\n display: 'code' | 'symbol' | 'symbol-narrow';\n currencyCode?: string;\n digitsInfo?: string;\n locale?: string;\n };\n}\n\n/**\n * Large number format filter, [Document](https://ng-alain.com/util/format/en#mega)\n *\n * 大数据格式化,[文档](https://ng-alain.com/util/format/en#mega)\n */\nexport interface CurrencyMegaOptions extends CurrencyStartingUnitOptions {\n /**\n * 精度,默认:`2`\n */\n precision?: number;\n\n /**\n * 单位国际化,默认:`{Q: '京', T: '兆', B: '亿', M: '万', K: '千',}`\n */\n unitI18n?: CurrencyMegaUnitI18n;\n}\n\nexport interface CurrencyMegaResult {\n raw: number | string;\n value: string;\n unit: string;\n unitI18n: string;\n}\n\nexport const CurrencyMega_Powers = [\n { unit: 'Q', value: Math.pow(10, 15) },\n { unit: 'T', value: Math.pow(10, 12) },\n { unit: 'B', value: Math.pow(10, 9) },\n { unit: 'M', value: Math.pow(10, 6) },\n { unit: 'K', value: 1000 }\n];\n\nexport interface CurrencyMegaUnitI18n {\n Q: string;\n T: string;\n B: string;\n M: string;\n K: string;\n}\n\nexport interface CurrencyCNYOptions extends CurrencyStartingUnitOptions {\n /**\n * Whether to return to uppercase notation, default: `true`\n *\n * 是否返回大写表示法,默认:`true`\n */\n inWords?: boolean;\n /**\n * Specify negative sign, default: `negative`\n *\n * 指定负数符号,默认:`负`\n */\n minusSymbol?: string;\n}\n","import { CurrencyPipe, formatNumber } from '@angular/common';\nimport { DEFAULT_CURRENCY_CODE, Inject, Injectable, LOCALE_ID } from '@angular/core';\n\nimport { YunzaiConfigService, YunzaiUtilCurrencyConfig } from '@yelon/util/config';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport {\n CurrencyCNYOptions,\n CurrencyFormatOptions,\n CurrencyMegaOptions,\n CurrencyMegaResult,\n CurrencyMega_Powers\n} from './currency.types';\n\n@Injectable({ providedIn: 'root' })\nexport class CurrencyService {\n private c: YunzaiUtilCurrencyConfig;\n private readonly currencyPipe: CurrencyPipe;\n\n constructor(\n cog: YunzaiConfigService,\n @Inject(LOCALE_ID) private locale: string,\n @Inject(DEFAULT_CURRENCY_CODE) _defaultCurrencyCode: string = 'USD'\n ) {\n this.currencyPipe = new CurrencyPipe(locale, _defaultCurrencyCode);\n this.c = cog.merge('utilCurrency', {\n startingUnit: 'yuan',\n megaUnit: { Q: '京', T: '兆', B: '亿', M: '万', K: '千' },\n precision: 2,\n ignoreZeroPrecision: true\n })!;\n }\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 format(value: number | string, options?: CurrencyFormatOptions): string {\n options = {\n startingUnit: this.c.startingUnit,\n precision: this.c.precision,\n ignoreZeroPrecision: this.c.ignoreZeroPrecision,\n ngCurrency: this.c.ngCurrency,\n ...options\n };\n let truthValue = Number(value);\n if (value == null || isNaN(truthValue)) {\n return '';\n }\n if (options.startingUnit === 'cent') {\n truthValue = truthValue / 100;\n }\n if (options.ngCurrency != null) {\n const cur = options.ngCurrency!;\n return this.currencyPipe.transform(\n truthValue,\n cur.currencyCode,\n cur.display,\n cur.digitsInfo,\n cur.locale || this.locale\n )!;\n }\n const res = formatNumber(\n truthValue,\n this.locale,\n `.${options.ignoreZeroPrecision ? 1 : options.precision}-${options.precision}`\n );\n return options.ignoreZeroPrecision ? res.replace(/(?:\\.[0]+)$/g, '') : res;\n }\n\n /**\n * Large number format filter\n *\n * 大数据格式化\n * ```ts\n * 1000 => { value: '1', unit: 'K', unitI18n: '千' }\n * 12456 => { value: '12.46', unit: 'K', unitI18n: '千' }\n * ```\n */\n mega(value: number | string, options?: CurrencyMegaOptions): CurrencyMegaResult {\n options = { precision: this.c.precision, unitI18n: this.c.megaUnit, startingUnit: this.c.startingUnit, ...options };\n let num = Number(value);\n const res: CurrencyMegaResult = { raw: value, value: '', unit: '', unitI18n: '' };\n if (isNaN(num) || num === 0) {\n res.value = value.toString();\n return res;\n }\n if (options.startingUnit === 'cent') {\n num = num / 100;\n }\n let abs = Math.abs(+num);\n const rounder = Math.pow(10, options.precision!);\n const isNegative = num < 0;\n for (const p of CurrencyMega_Powers) {\n let reduced = abs / p.value;\n\n reduced = Math.round(reduced * rounder) / rounder;\n\n if (reduced >= 1) {\n abs = reduced;\n res.unit = p.unit;\n break;\n }\n }\n\n res.value = (isNegative ? '-' : '') + abs;\n res.unitI18n = (options.unitI18n as { [key: string]: NzSafeAny })[res.unit];\n return res;\n }\n\n /**\n * Converted into RMB notation.\n *\n * 转化成人民币表示法\n */\n cny(value: number | string, options?: CurrencyCNYOptions): string {\n options = {\n inWords: true,\n minusSymbol: '负',\n startingUnit: this.c.startingUnit,\n ...options\n };\n\n value = Number(value);\n if (isNaN(value)) {\n return '';\n }\n if (options.startingUnit === 'cent') {\n value = value / 100;\n }\n value = value.toString();\n let integer: number | string;\n let decimal: number | string | null;\n [integer, decimal] = value.split('.');\n let symbol = '';\n if (integer.startsWith('-')) {\n symbol = options.minusSymbol!;\n integer = integer.substring(1);\n }\n if (/^-?\\d+$/.test(value)) {\n decimal = null;\n }\n integer = (+integer).toString();\n const inWords = options.inWords;\n const unit: { [key: string]: string[] } = {\n num: inWords\n ? ['', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖', '点']\n : ['', '一', '二', '三', '四', '五', '六', '七', '八', '九', '点'],\n radice: inWords\n ? [\n '',\n '拾',\n '佰',\n '仟',\n '万',\n '拾',\n '佰',\n '仟',\n '亿',\n '拾',\n '佰',\n '仟',\n '万亿',\n '拾',\n '佰',\n '仟',\n '兆',\n '拾',\n '佰',\n '仟'\n ]\n : [\n '',\n '十',\n '百',\n '千',\n '万',\n '十',\n '百',\n '千',\n '亿',\n '十',\n '百',\n '千',\n '万亿',\n '十',\n '百',\n '千',\n '兆',\n '十',\n '百',\n '千'\n ],\n dec: ['角', '分', '厘', '毫']\n };\n if (inWords) {\n value = (+value).toFixed(5).toString();\n }\n let integerRes = '';\n const integerCount = integer.length;\n if (integer === '0' || integerCount === 0) {\n integerRes = '零';\n } else {\n let cnDesc = '';\n for (let i = 0; i < integerCount; i++) {\n const n = +integer[i];\n const j = integerCount - i - 1;\n const isZero = i > 1 && n !== 0 && integer[i - 1] === '0';\n const cnZero = isZero ? '零' : '';\n const isEmpptyUnit = (n === 0 && j % 4 !== 0) || integer.substring(i - 3, i - 3 + 4) === '0000';\n const descMark = cnDesc;\n let cnNum = unit.num[n];\n\n cnDesc = isEmpptyUnit ? '' : unit.radice[j];\n // 第一位是一十\n if (i === 0 && cnNum === '一' && cnDesc === '十') cnNum = '';\n const isChangeEr =\n n > 1 &&\n cnNum === '二' && // 去除首位\n ['', '十', '百'].indexOf(cnDesc) === -1 && // 不读两\\两十\\两百\n descMark !== '十'; // 不读十两\n if (isChangeEr) cnNum = '两';\n integerRes += cnZero + cnNum + cnDesc;\n }\n }\n\n // 小数部分拼接\n let decimalRes = '';\n const decimalCount = decimal ? decimal.toString().length : 0;\n if (decimal === null) {\n decimalRes = inWords ? '整' : '';\n } else if (decimal === '0') {\n decimalRes = '零';\n } else {\n for (let i = 0; i < decimalCount; i++) {\n if (inWords && i > unit.dec.length - 1) break;\n const n = decimal[i];\n const cnZero = n === '0' ? '零' : '';\n const cnNum = unit.num[+n];\n const cnDesc = inWords ? unit.dec[i] : '';\n decimalRes += cnZero + cnNum + cnDesc;\n }\n }\n const ret =\n symbol +\n (inWords\n ? integerRes + (decimalRes === '零' ? '元整' : `元${decimalRes}`)\n : integerRes + (decimalRes === '' ? '' : `点${decimalRes}`));\n return ret;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAGA;;;;;;;;;;AAUG;AACG,SAAU,MAAM,CACpB,GAA8B,EAC9B,GAAiC,EACjC,cAAuB,KAAK,EAAA;IAE5B,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,KAAa,EAAE,GAAW,KACpE,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,CACxE,CAAC;AACJ,CAAC;AAaD;;;;;;;;;;;;;;;;;;AAkBG;AACa,SAAA,UAAU,CAAC,KAAa,EAAE,MAAiC,EAAA;IACzE,IAAI,CAAC,KAAK,EAAE;AACV,QAAA,OAAO,EAAE,CAAC;AACX,KAAA;AACD,IAAA,MAAM,GAAG,GAAqB;AAC5B,QAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;KAC5D,CAAC;AACF,IAAA,MAAM,MAAM,GAAuC;QACjD,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;AACpC,QAAA,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AACtB,QAAA,GAAG,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE;AAC/B,QAAA,CAAC,EAAE;AACD,YAAA,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,IAAI,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC5C,SAAA;AACD,QAAA,CAAC,EAAE;AACD,YAAA,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,IAAI,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC5C,SAAA;AACD,QAAA,GAAG,EAAE;AACH,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,SAAS,EAAE,CAAC,IAAI,CAAG,CAAA,CAAA;AACpB,SAAA;QACD,GAAG,GAAG,CAAC,MAAM;KACd,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,IAAI;SACZ,KAAK,CAAC,EAAE,CAAC;AACT,SAAA,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;AACnB,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,YAAA,OAAO,GAAG,CAAC;AACZ,SAAA;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC9B,IAAI,KAAK,CAAC,OAAO;AAAE,gBAAA,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3C,YAAA,OAAO,GAAG,CAAC;AACZ,SAAA;AAED,QAAA,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,UAAU,EAAE;YACzC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAClC,SAAA;AAAM,aAAA;AACL,YAAA,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,SAAA;AACD,QAAA,OAAO,GAAG,CAAC;KACZ,EAAE,EAAc,CAAC;SACjB,IAAI,CAAC,EAAE,CAAC,CAAC;AACd;;ACxGa,MAAA,SAAS,GAAG;AACvB,IAAA,GAAG,EAAE,CAAqE,mEAAA,CAAA;AAC1E,IAAA,MAAM,EAAE,CAAoC,kCAAA,CAAA;AAC5C,IAAA,MAAM,EAAE,CAA+B,6BAAA,CAAA;AACvC,IAAA,GAAG,EAAE,CAAoL,kLAAA,CAAA;AACzL,IAAA,EAAE,EAAE,CAAw0C,s0CAAA,CAAA;AAC50C,IAAA,KAAK,EAAE,CAAmE,iEAAA,CAAA;AAC1E,IAAA,OAAO,EAAE,CAAkB,gBAAA,CAAA;EAC3B;AAEF,SAAS,QAAQ,CAAC,GAAW,EAAE,KAAc,EAAA;IAC3C,OAAO,IAAI,MAAM,CAAC,CAAA,CAAA,EAAI,GAAG,CAAG,CAAA,CAAA,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC;AAEY,MAAA,KAAK,GAAG;AACnB,IAAA,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC;IAC5B,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;AACvC,IAAA,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;AAClC,IAAA,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC;AAC5B,IAAA,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;AAC1B,IAAA,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC;AAChC,IAAA,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC;EACpC;AAEF;;;;AAIG;AACG,SAAU,KAAK,CAAC,KAAsB,EAAA;IAC1C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;;AAIG;AACG,SAAU,KAAK,CAAC,KAAsB,EAAA;IAC1C,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;AACxF,CAAC;AAED;;;;AAIG;AACG,SAAU,SAAS,CAAC,KAAsB,EAAA;IAC9C,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED;;;;AAIG;AACG,SAAU,QAAQ,CAAC,KAAa,EAAA;IACpC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED;;;;AAIG;AACG,SAAU,QAAQ,CAAC,KAAa,EAAA;IACpC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED;;;;AAIG;AACG,SAAU,KAAK,CAAC,GAAW,EAAA;IAC/B,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED;;;;AAIG;AACG,SAAU,IAAI,CAAC,EAAU,EAAA;IAC7B,OAAO,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3B,CAAC;AAED;;;;AAIG;AACG,SAAU,OAAO,CAAC,KAAa,EAAA;IACnC,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED;;;;AAIG;AACG,SAAU,SAAS,CAAC,KAAa,EAAA;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnC;;ACvCa,MAAA,mBAAmB,GAAG;AACjC,IAAA,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;AACtC,IAAA,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;AACtC,IAAA,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE;AACrC,IAAA,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE;AACrC,IAAA,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE;;;MCtDf,eAAe,CAAA;AAI1B,IAAA,WAAA,CACE,GAAwB,EACG,MAAc,EACV,uBAA+B,KAAK,EAAA;QADxC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QAGzC,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;QACnE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE;AACjC,YAAA,YAAY,EAAE,MAAM;YACpB,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE;AACpD,YAAA,SAAS,EAAE,CAAC;AACZ,YAAA,mBAAmB,EAAE,IAAI;AAC1B,SAAA,CAAE,CAAC;KACL;AAED;;;;;;;;AAQG;IACH,MAAM,CAAC,KAAsB,EAAE,OAA+B,EAAA;AAC5D,QAAA,OAAO,GAAG;AACR,YAAA,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY;AACjC,YAAA,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS;AAC3B,YAAA,mBAAmB,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB;AAC/C,YAAA,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU;AAC7B,YAAA,GAAG,OAAO;SACX,CAAC;AACF,QAAA,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;AACtC,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;AACD,QAAA,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM,EAAE;AACnC,YAAA,UAAU,GAAG,UAAU,GAAG,GAAG,CAAC;AAC/B,SAAA;AACD,QAAA,IAAI,OAAO,CAAC,UAAU,IAAI,IAAI,EAAE;AAC9B,YAAA,MAAM,GAAG,GAAG,OAAO,CAAC,UAAW,CAAC;AAChC,YAAA,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAChC,UAAU,EACV,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CACzB,CAAC;AACJ,SAAA;AACD,QAAA,MAAM,GAAG,GAAG,YAAY,CACtB,UAAU,EACV,IAAI,CAAC,MAAM,EACX,CAAI,CAAA,EAAA,OAAO,CAAC,mBAAmB,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAA,CAAA,EAAI,OAAO,CAAC,SAAS,CAAA,CAAE,CAC/E,CAAC;AACF,QAAA,OAAO,OAAO,CAAC,mBAAmB,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC;KAC5E;AAED;;;;;;;;AAQG;IACH,IAAI,CAAC,KAAsB,EAAE,OAA6B,EAAA;AACxD,QAAA,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,GAAG,OAAO,EAAE,CAAC;AACpH,QAAA,IAAI,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AACxB,QAAA,MAAM,GAAG,GAAuB,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAClF,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE;AAC3B,YAAA,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;AAC7B,YAAA,OAAO,GAAG,CAAC;AACZ,SAAA;AACD,QAAA,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM,EAAE;AACnC,YAAA,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AACjB,SAAA;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AACzB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,SAAU,CAAC,CAAC;AACjD,QAAA,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,CAAC;AAC3B,QAAA,KAAK,MAAM,CAAC,IAAI,mBAAmB,EAAE;AACnC,YAAA,IAAI,OAAO,GAAG,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC;YAE5B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC;YAElD,IAAI,OAAO,IAAI,CAAC,EAAE;gBAChB,GAAG,GAAG,OAAO,CAAC;AACd,gBAAA,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;gBAClB,MAAM;AACP,aAAA;AACF,SAAA;AAED,QAAA,GAAG,CAAC,KAAK,GAAG,CAAC,UAAU,GAAG,GAAG,GAAG,EAAE,IAAI,GAAG,CAAC;QAC1C,GAAG,CAAC,QAAQ,GAAI,OAAO,CAAC,QAAyC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5E,QAAA,OAAO,GAAG,CAAC;KACZ;AAED;;;;AAIG;IACH,GAAG,CAAC,KAAsB,EAAE,OAA4B,EAAA;AACtD,QAAA,OAAO,GAAG;AACR,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,WAAW,EAAE,GAAG;AAChB,YAAA,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY;AACjC,YAAA,GAAG,OAAO;SACX,CAAC;AAEF,QAAA,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AACtB,QAAA,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE;AAChB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;AACD,QAAA,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM,EAAE;AACnC,YAAA,KAAK,GAAG,KAAK,GAAG,GAAG,CAAC;AACrB,SAAA;AACD,QAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;AACzB,QAAA,IAAI,OAAwB,CAAC;AAC7B,QAAA,IAAI,OAA+B,CAAC;QACpC,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;AAChB,QAAA,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC3B,YAAA,MAAM,GAAG,OAAO,CAAC,WAAY,CAAC;AAC9B,YAAA,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAChC,SAAA;AACD,QAAA,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,GAAG,IAAI,CAAC;AAChB,SAAA;QACD,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAChC,QAAA,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;AAChC,QAAA,MAAM,IAAI,GAAgC;AACxC,YAAA,GAAG,EAAE,OAAO;kBACR,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;kBACtD,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;AAC1D,YAAA,MAAM,EAAE,OAAO;AACb,kBAAE;oBACE,EAAE;oBACF,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,IAAI;oBACJ,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;AACJ,iBAAA;AACH,kBAAE;oBACE,EAAE;oBACF,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,IAAI;oBACJ,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;oBACH,GAAG;AACJ,iBAAA;YACL,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;SAC1B,CAAC;AACF,QAAA,IAAI,OAAO,EAAE;AACX,YAAA,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AACxC,SAAA;QACD,IAAI,UAAU,GAAG,EAAE,CAAC;AACpB,QAAA,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;AACpC,QAAA,IAAI,OAAO,KAAK,GAAG,IAAI,YAAY,KAAK,CAAC,EAAE;YACzC,UAAU,GAAG,GAAG,CAAC;AAClB,SAAA;AAAM,aAAA;YACL,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;AACrC,gBAAA,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACtB,gBAAA,MAAM,CAAC,GAAG,YAAY,GAAG,CAAC,GAAG,CAAC,CAAC;AAC/B,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC1D,MAAM,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC;AACjC,gBAAA,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC;gBAChG,MAAM,QAAQ,GAAG,MAAM,CAAC;gBACxB,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAExB,gBAAA,MAAM,GAAG,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;;gBAE5C,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;oBAAE,KAAK,GAAG,EAAE,CAAC;AAC3D,gBAAA,MAAM,UAAU,GACd,CAAC,GAAG,CAAC;oBACL,KAAK,KAAK,GAAG;AACb,oBAAA,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrC,oBAAA,QAAQ,KAAK,GAAG,CAAC;AACnB,gBAAA,IAAI,UAAU;oBAAE,KAAK,GAAG,GAAG,CAAC;AAC5B,gBAAA,UAAU,IAAI,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AACvC,aAAA;AACF,SAAA;;QAGD,IAAI,UAAU,GAAG,EAAE,CAAC;AACpB,QAAA,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7D,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,UAAU,GAAG,OAAO,GAAG,GAAG,GAAG,EAAE,CAAC;AACjC,SAAA;aAAM,IAAI,OAAO,KAAK,GAAG,EAAE;YAC1B,UAAU,GAAG,GAAG,CAAC;AAClB,SAAA;AAAM,aAAA;YACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;gBACrC,IAAI,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;oBAAE,MAAM;AAC9C,gBAAA,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AACrB,gBAAA,MAAM,MAAM,GAAG,CAAC,KAAK,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,gBAAA,MAAM,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAC1C,gBAAA,UAAU,IAAI,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AACvC,aAAA;AACF,SAAA;QACD,MAAM,GAAG,GACP,MAAM;AACN,aAAC,OAAO;AACN,kBAAE,UAAU,IAAI,UAAU,KAAK,GAAG,GAAG,IAAI,GAAG,CAAI,CAAA,EAAA,UAAU,EAAE,CAAC;AAC7D,kBAAE,UAAU,IAAI,UAAU,KAAK,EAAE,GAAG,EAAE,GAAG,CAAA,CAAA,EAAI,UAAU,CAAE,CAAA,CAAC,CAAC,CAAC;AAChE,QAAA,OAAO,GAAG,CAAC;KACZ;8GA/OU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAMhB,SAAS,EAAA,EAAA,EAAA,KAAA,EACT,qBAAqB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAPpB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cADF,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;0BAO7B,MAAM;2BAAC,SAAS,CAAA;;0BAChB,MAAM;2BAAC,qBAAqB,CAAA;;;ACtBjC;;AAEG;;;;"}
package/fesm2022/math.mjs CHANGED
@@ -1,85 +1,85 @@
1
- import { assertNumber } from '@yelon/util/other';
2
-
3
- /**
4
- * Checks if `value` is between `start` and `end` to, but not including `end`. If `end` is not specified, it's set to start with `start` then set to `0`. If `start` is greater than `end` the params are swapped to support negative ranges.
5
- *
6
- * 检查 `value` 是否在 `start` 与 `end` 之间,但不包括 `end`。 如果 `end` 没有指定,那么 `start` 设置为 `0`。 如果 `start` 大于 `end`,那么参数会交换以便支持负范围。
7
- * ```ts
8
- * inRange(3, 2, 4); // true
9
- * inRange(4, 8); // true
10
- * inRange(4, 2); // false
11
- * inRange(2, 2); // false
12
- * inRange(1.2, 2); // true
13
- * inRange(-3, -2, -6); // true
14
- * ```
15
- */
16
- function inRange(value, start, end) {
17
- if (end === undefined) {
18
- end = start;
19
- start = 0;
20
- }
21
- assertNumber(value);
22
- assertNumber(start);
23
- assertNumber(end);
24
- return value >= Math.min(start, end) && value < Math.max(start, end);
25
- }
26
-
27
- /**
28
- * Computes `number` rounded up to `precision`.
29
- *
30
- * 根据 `precision`(精度) 向上舍入 `number`。
31
- * ```ts
32
- * ceil(4.006); // 5
33
- * ceil(6.004, 2); // 6.01
34
- * ceil(6040, -2); // 6100
35
- * ```
36
- */
37
- function ceil(number, precision = 0) {
38
- return createRound(number, precision, 'ceil');
39
- }
40
- /**
41
- * Computes `number` rounded down to `precision`.
42
- *
43
- * 根据 `precision`(精度) 向下舍入 `number`。
44
- * ```ts
45
- * floor(4.006); // 4
46
- * floor(0.046, 2); // 0.04
47
- * floor(4060, -2); // 4000
48
- * ```
49
- */
50
- function floor(number, precision = 0) {
51
- return createRound(number, precision, 'floor');
52
- }
53
- /**
54
- * Computes `number` rounded to `precision`.
55
- *
56
- * 根据 `precision`(精度) 四舍五入 `number`。
57
- * ```ts
58
- * round(4.006); // 4
59
- * round(4.006, 2); // 4.01
60
- * round(4060, -2); // 4100
61
- * ```
62
- */
63
- function round(number, precision = 0) {
64
- return createRound(number, precision, 'round');
65
- }
66
- function createRound(number, precision, methodName) {
67
- const func = Math[methodName];
68
- precision = precision == null ? 0 : Math.min(precision, 292);
69
- if (!precision) {
70
- return func(number);
71
- }
72
- // Shift with exponential notation to avoid floating-point issues.
73
- // See [MDN](https://mdn.io/round#Examples) for more details.
74
- let pair = `${number}e`.split('e');
75
- const value = func(Number(`${pair[0]}e${Number(pair[1]) + precision}`));
76
- pair = `${value}e`.split('e');
77
- return Number(`${pair[0]}e${Number(pair[1]) - precision}`);
78
- }
79
-
80
- /**
81
- * Generated bundle index. Do not edit.
82
- */
83
-
84
- export { ceil, floor, inRange, round };
85
- //# sourceMappingURL=math.mjs.map
1
+ import { assertNumber } from '@yelon/util/other';
2
+
3
+ /**
4
+ * Checks if `value` is between `start` and `end` to, but not including `end`. If `end` is not specified, it's set to start with `start` then set to `0`. If `start` is greater than `end` the params are swapped to support negative ranges.
5
+ *
6
+ * 检查 `value` 是否在 `start` 与 `end` 之间,但不包括 `end`。 如果 `end` 没有指定,那么 `start` 设置为 `0`。 如果 `start` 大于 `end`,那么参数会交换以便支持负范围。
7
+ * ```ts
8
+ * inRange(3, 2, 4); // true
9
+ * inRange(4, 8); // true
10
+ * inRange(4, 2); // false
11
+ * inRange(2, 2); // false
12
+ * inRange(1.2, 2); // true
13
+ * inRange(-3, -2, -6); // true
14
+ * ```
15
+ */
16
+ function inRange(value, start, end) {
17
+ if (end === undefined) {
18
+ end = start;
19
+ start = 0;
20
+ }
21
+ assertNumber(value);
22
+ assertNumber(start);
23
+ assertNumber(end);
24
+ return value >= Math.min(start, end) && value < Math.max(start, end);
25
+ }
26
+
27
+ /**
28
+ * Computes `number` rounded up to `precision`.
29
+ *
30
+ * 根据 `precision`(精度) 向上舍入 `number`。
31
+ * ```ts
32
+ * ceil(4.006); // 5
33
+ * ceil(6.004, 2); // 6.01
34
+ * ceil(6040, -2); // 6100
35
+ * ```
36
+ */
37
+ function ceil(number, precision = 0) {
38
+ return createRound(number, precision, 'ceil');
39
+ }
40
+ /**
41
+ * Computes `number` rounded down to `precision`.
42
+ *
43
+ * 根据 `precision`(精度) 向下舍入 `number`。
44
+ * ```ts
45
+ * floor(4.006); // 4
46
+ * floor(0.046, 2); // 0.04
47
+ * floor(4060, -2); // 4000
48
+ * ```
49
+ */
50
+ function floor(number, precision = 0) {
51
+ return createRound(number, precision, 'floor');
52
+ }
53
+ /**
54
+ * Computes `number` rounded to `precision`.
55
+ *
56
+ * 根据 `precision`(精度) 四舍五入 `number`。
57
+ * ```ts
58
+ * round(4.006); // 4
59
+ * round(4.006, 2); // 4.01
60
+ * round(4060, -2); // 4100
61
+ * ```
62
+ */
63
+ function round(number, precision = 0) {
64
+ return createRound(number, precision, 'round');
65
+ }
66
+ function createRound(number, precision, methodName) {
67
+ const func = Math[methodName];
68
+ precision = precision == null ? 0 : Math.min(precision, 292);
69
+ if (!precision) {
70
+ return func(number);
71
+ }
72
+ // Shift with exponential notation to avoid floating-point issues.
73
+ // See [MDN](https://mdn.io/round#Examples) for more details.
74
+ let pair = `${number}e`.split('e');
75
+ const value = func(Number(`${pair[0]}e${Number(pair[1]) + precision}`));
76
+ pair = `${value}e`.split('e');
77
+ return Number(`${pair[0]}e${Number(pair[1]) - precision}`);
78
+ }
79
+
80
+ /**
81
+ * Generated bundle index. Do not edit.
82
+ */
83
+
84
+ export { ceil, floor, inRange, round };
85
+ //# sourceMappingURL=math.mjs.map
@@ -1,75 +1,65 @@
1
- const YZ_USER_KEY = '_yz_user';
2
- const YZ_PROJECT_INFO_KEY = '_yz_project_info';
3
- const YZ_CURRENT_KEY = '_yz_current';
4
- const YZ_HEADER_KEY = '_yz_header';
5
- const YZ_HEADER_TYPE_KEY = '_yz_header_type';
6
- const YZ_DEFAULT_ROUTE_KEY = '_yz_default_route';
7
- const YZ_TENANT_KEY = '_yz_tenant';
8
- const YZ_LANGS_KEY = '_yz_langs';
9
- const YZ_LANG_KEY = '_yz_lang';
10
- function get(key) {
11
- if (key === YZ_HEADER_TYPE_KEY) {
12
- return localStorage.getItem(key);
13
- }
14
- const item = localStorage.getItem(key);
15
- return item ? JSON.parse(item) : null;
16
- }
17
- function set(key, data) {
18
- if (key === YZ_HEADER_TYPE_KEY) {
19
- localStorage.setItem(YZ_HEADER_TYPE_KEY, data);
20
- return;
21
- }
22
- localStorage.setItem(key, JSON.stringify(data));
23
- }
24
- function useLocalStorageUser() {
25
- const setFn = user => set(YZ_USER_KEY, user);
26
- const getFn = () => get(YZ_USER_KEY);
27
- return [setFn, getFn];
28
- }
29
- function useLocalStorageProjectInfo() {
30
- const setFn = data => set(YZ_PROJECT_INFO_KEY, data);
31
- const getFn = () => get(YZ_PROJECT_INFO_KEY);
32
- return [setFn, getFn];
33
- }
34
- function useLocalStorageCurrent() {
35
- const setFn = data => set(YZ_CURRENT_KEY, data);
36
- const getFn = () => get(YZ_CURRENT_KEY);
37
- return [setFn, getFn];
38
- }
39
- function useLocalStorageHeaderType() {
40
- const setFn = data => set(YZ_HEADER_TYPE_KEY, data);
41
- const getFn = () => get(YZ_HEADER_TYPE_KEY);
42
- return [setFn, getFn];
43
- }
44
- function useLocalStorageHeader() {
45
- const setFn = data => set(YZ_HEADER_KEY, data);
46
- const getFn = () => get(YZ_HEADER_KEY);
47
- return [setFn, getFn];
48
- }
49
- function useLocalStorageDefaultRoute() {
50
- const setFn = data => set(YZ_DEFAULT_ROUTE_KEY, data);
51
- const getFn = () => get(YZ_DEFAULT_ROUTE_KEY);
52
- return [setFn, getFn];
53
- }
54
- function useLocalStorageTenant() {
55
- const setFn = data => set(YZ_TENANT_KEY, data);
56
- const getFn = () => get(YZ_TENANT_KEY);
57
- return [setFn, getFn];
58
- }
59
- function useLocalStorageLangs() {
60
- const setFn = data => set(YZ_LANGS_KEY, data);
61
- const getFn = () => get(YZ_LANGS_KEY);
62
- return [setFn, getFn];
63
- }
64
- function useLocalStorageLang() {
65
- const setFn = (key, data) => set(`${YZ_LANG_KEY}_${key}`, data);
66
- const getFn = (key) => get(`${YZ_LANG_KEY}_${key}`);
67
- return [setFn, getFn];
68
- }
69
-
70
- /**
71
- * Generated bundle index. Do not edit.
72
- */
73
-
74
- export { YZ_CURRENT_KEY, YZ_DEFAULT_ROUTE_KEY, YZ_HEADER_KEY, YZ_HEADER_TYPE_KEY, YZ_LANGS_KEY, YZ_LANG_KEY, YZ_PROJECT_INFO_KEY, YZ_TENANT_KEY, YZ_USER_KEY, useLocalStorageCurrent, useLocalStorageDefaultRoute, useLocalStorageHeader, useLocalStorageHeaderType, useLocalStorageLang, useLocalStorageLangs, useLocalStorageProjectInfo, useLocalStorageTenant, useLocalStorageUser };
75
- //# sourceMappingURL=mcache.mjs.map
1
+ const YZ_USER_KEY = '_yz_user';
2
+ const YZ_PROJECT_INFO_KEY = '_yz_project_info';
3
+ const YZ_CURRENT_KEY = '_yz_current';
4
+ const YZ_HEADER_KEY = '_yz_header';
5
+ const YZ_HEADER_TYPE_KEY = '_yz_header_type';
6
+ const YZ_DEFAULT_ROUTE_KEY = '_yz_default_route';
7
+ const YZ_TENANT_KEY = '_yz_tenant';
8
+ // export const YZ_LANGS_KEY = '_yz_langs';
9
+ // export const YZ_LANG_KEY = '_yz_lang';
10
+ function get(key) {
11
+ if (key === YZ_HEADER_TYPE_KEY) {
12
+ return localStorage.getItem(key);
13
+ }
14
+ const item = localStorage.getItem(key);
15
+ return item ? JSON.parse(item) : null;
16
+ }
17
+ function set(key, data) {
18
+ if (key === YZ_HEADER_TYPE_KEY) {
19
+ localStorage.setItem(YZ_HEADER_TYPE_KEY, data);
20
+ return;
21
+ }
22
+ localStorage.setItem(key, JSON.stringify(data));
23
+ }
24
+ function useLocalStorageUser() {
25
+ const setFn = user => set(YZ_USER_KEY, user);
26
+ const getFn = () => get(YZ_USER_KEY);
27
+ return [setFn, getFn];
28
+ }
29
+ function useLocalStorageProjectInfo() {
30
+ const setFn = data => set(YZ_PROJECT_INFO_KEY, data);
31
+ const getFn = () => get(YZ_PROJECT_INFO_KEY);
32
+ return [setFn, getFn];
33
+ }
34
+ function useLocalStorageCurrent() {
35
+ const setFn = data => set(YZ_CURRENT_KEY, data);
36
+ const getFn = () => get(YZ_CURRENT_KEY);
37
+ return [setFn, getFn];
38
+ }
39
+ function useLocalStorageHeaderType() {
40
+ const setFn = data => set(YZ_HEADER_TYPE_KEY, data);
41
+ const getFn = () => get(YZ_HEADER_TYPE_KEY);
42
+ return [setFn, getFn];
43
+ }
44
+ function useLocalStorageHeader() {
45
+ const setFn = data => set(YZ_HEADER_KEY, data);
46
+ const getFn = () => get(YZ_HEADER_KEY);
47
+ return [setFn, getFn];
48
+ }
49
+ function useLocalStorageDefaultRoute() {
50
+ const setFn = data => set(YZ_DEFAULT_ROUTE_KEY, data);
51
+ const getFn = () => get(YZ_DEFAULT_ROUTE_KEY);
52
+ return [setFn, getFn];
53
+ }
54
+ function useLocalStorageTenant() {
55
+ const setFn = data => set(YZ_TENANT_KEY, data);
56
+ const getFn = () => get(YZ_TENANT_KEY);
57
+ return [setFn, getFn];
58
+ }
59
+
60
+ /**
61
+ * Generated bundle index. Do not edit.
62
+ */
63
+
64
+ export { YZ_CURRENT_KEY, YZ_DEFAULT_ROUTE_KEY, YZ_HEADER_KEY, YZ_HEADER_TYPE_KEY, YZ_PROJECT_INFO_KEY, YZ_TENANT_KEY, YZ_USER_KEY, useLocalStorageCurrent, useLocalStorageDefaultRoute, useLocalStorageHeader, useLocalStorageHeaderType, useLocalStorageProjectInfo, useLocalStorageTenant, useLocalStorageUser };
65
+ //# sourceMappingURL=mcache.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcache.mjs","sources":["../../../../packages/util/mcache/localStorageUtils.ts","../../../../packages/util/mcache/mcache.ts"],"sourcesContent":["import { LayoutBasicAside, NavType, YunzaiNavTopic, YunzaiProjectInfo, YunzaiUser } from '@yelon/util/mtypes';\n\nexport const YZ_USER_KEY = '_yz_user';\nexport const YZ_PROJECT_INFO_KEY = '_yz_project_info';\nexport const YZ_CURRENT_KEY = '_yz_current';\nexport const YZ_HEADER_KEY = '_yz_header';\nexport const YZ_HEADER_TYPE_KEY = '_yz_header_type';\nexport const YZ_DEFAULT_ROUTE_KEY = '_yz_default_route';\nexport const YZ_TENANT_KEY = '_yz_tenant';\nexport const YZ_LANGS_KEY = '_yz_langs';\nexport const YZ_LANG_KEY = '_yz_lang';\n\nfunction get<T>(key: string): T | null {\n if (key === YZ_HEADER_TYPE_KEY) {\n return localStorage.getItem(key) as any;\n }\n const item = localStorage.getItem(key);\n return item ? JSON.parse(item) : null;\n}\n\nfunction set<T>(key: string, data: T): void {\n if (key === YZ_HEADER_TYPE_KEY) {\n localStorage.setItem(YZ_HEADER_TYPE_KEY, data as string);\n return;\n }\n localStorage.setItem(key, JSON.stringify(data));\n}\n\ntype returnSet<T> = (data: T) => void;\ntype returnGet<T> = () => T | null;\n\nexport function useLocalStorageUser(): [returnSet<YunzaiUser>, returnGet<YunzaiUser>] {\n const setFn: returnSet<YunzaiUser> = user => set(YZ_USER_KEY, user);\n const getFn: returnGet<YunzaiUser> = () => get<YunzaiUser>(YZ_USER_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageProjectInfo(): [returnSet<YunzaiProjectInfo>, returnGet<YunzaiProjectInfo>] {\n const setFn: returnSet<YunzaiProjectInfo> = data => set(YZ_PROJECT_INFO_KEY, data);\n const getFn: returnGet<YunzaiProjectInfo> = () => get<YunzaiProjectInfo>(YZ_PROJECT_INFO_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageCurrent(): [returnSet<LayoutBasicAside>, returnGet<LayoutBasicAside>] {\n const setFn: returnSet<LayoutBasicAside> = data => set(YZ_CURRENT_KEY, data);\n const getFn: returnGet<LayoutBasicAside> = () => get<LayoutBasicAside>(YZ_CURRENT_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageHeaderType(): [returnSet<NavType>, returnGet<NavType>] {\n const setFn: returnSet<NavType> = data => set(YZ_HEADER_TYPE_KEY, data);\n const getFn: returnGet<NavType> = () => get<NavType>(YZ_HEADER_TYPE_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageHeader(): [returnSet<YunzaiNavTopic[]>, returnGet<YunzaiNavTopic[]>] {\n const setFn: returnSet<YunzaiNavTopic[]> = data => set(YZ_HEADER_KEY, data);\n const getFn: returnGet<YunzaiNavTopic[]> = () => get<YunzaiNavTopic[]>(YZ_HEADER_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageDefaultRoute(): [returnSet<string>, returnGet<string>] {\n const setFn: returnSet<string> = data => set(YZ_DEFAULT_ROUTE_KEY, data);\n const getFn: returnGet<string> = () => get<string>(YZ_DEFAULT_ROUTE_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageTenant(): [returnSet<string>, returnGet<string>] {\n const setFn: returnSet<string> = data => set(YZ_TENANT_KEY, data);\n const getFn: returnGet<string> = () => get<string>(YZ_TENANT_KEY);\n return [setFn, getFn];\n}\n\ninterface Y18NType {\n code: string;\n text: string;\n abbr: string;\n icon?: string;\n}\n\nexport function useLocalStorageLangs(): [returnSet<Y18NType[]>, returnGet<Y18NType[]>] {\n const setFn: returnSet<Y18NType[]> = data => set(YZ_LANGS_KEY, data);\n const getFn: returnGet<Y18NType[]> = () => get<Y18NType[]>(YZ_LANGS_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageLang(): [\n (key: string, data: Record<string, unknown>) => void,\n (key: string) => Record<string, unknown> | null\n] {\n const setFn = (key: string, data: Record<string, unknown>): void => set(`${YZ_LANG_KEY}_${key}`, data);\n const getFn = (key: string): Record<string, unknown> | null => get<Record<string, unknown>>(`${YZ_LANG_KEY}_${key}`);\n return [setFn, getFn];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAEO,MAAM,WAAW,GAAG,WAAW;AAC/B,MAAM,mBAAmB,GAAG,mBAAmB;AAC/C,MAAM,cAAc,GAAG,cAAc;AACrC,MAAM,aAAa,GAAG,aAAa;AACnC,MAAM,kBAAkB,GAAG,kBAAkB;AAC7C,MAAM,oBAAoB,GAAG,oBAAoB;AACjD,MAAM,aAAa,GAAG,aAAa;AACnC,MAAM,YAAY,GAAG,YAAY;AACjC,MAAM,WAAW,GAAG,WAAW;AAEtC,SAAS,GAAG,CAAI,GAAW,EAAA;IACzB,IAAI,GAAG,KAAK,kBAAkB,EAAE;AAC9B,QAAA,OAAO,YAAY,CAAC,OAAO,CAAC,GAAG,CAAQ,CAAC;AACzC,KAAA;IACD,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACvC,IAAA,OAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACxC,CAAC;AAED,SAAS,GAAG,CAAI,GAAW,EAAE,IAAO,EAAA;IAClC,IAAI,GAAG,KAAK,kBAAkB,EAAE;AAC9B,QAAA,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAc,CAAC,CAAC;QACzD,OAAO;AACR,KAAA;AACD,IAAA,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;SAKe,mBAAmB,GAAA;AACjC,IAAA,MAAM,KAAK,GAA0B,IAAI,IAAI,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACpE,MAAM,KAAK,GAA0B,MAAM,GAAG,CAAa,WAAW,CAAC,CAAC;AACxE,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,0BAA0B,GAAA;AACxC,IAAA,MAAM,KAAK,GAAiC,IAAI,IAAI,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IACnF,MAAM,KAAK,GAAiC,MAAM,GAAG,CAAoB,mBAAmB,CAAC,CAAC;AAC9F,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,sBAAsB,GAAA;AACpC,IAAA,MAAM,KAAK,GAAgC,IAAI,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAgC,MAAM,GAAG,CAAmB,cAAc,CAAC,CAAC;AACvF,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,yBAAyB,GAAA;AACvC,IAAA,MAAM,KAAK,GAAuB,IAAI,IAAI,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACxE,MAAM,KAAK,GAAuB,MAAM,GAAG,CAAU,kBAAkB,CAAC,CAAC;AACzE,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,qBAAqB,GAAA;AACnC,IAAA,MAAM,KAAK,GAAgC,IAAI,IAAI,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAgC,MAAM,GAAG,CAAmB,aAAa,CAAC,CAAC;AACtF,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,2BAA2B,GAAA;AACzC,IAAA,MAAM,KAAK,GAAsB,IAAI,IAAI,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IACzE,MAAM,KAAK,GAAsB,MAAM,GAAG,CAAS,oBAAoB,CAAC,CAAC;AACzE,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,qBAAqB,GAAA;AACnC,IAAA,MAAM,KAAK,GAAsB,IAAI,IAAI,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAClE,MAAM,KAAK,GAAsB,MAAM,GAAG,CAAS,aAAa,CAAC,CAAC;AAClE,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SASe,oBAAoB,GAAA;AAClC,IAAA,MAAM,KAAK,GAA0B,IAAI,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACrE,MAAM,KAAK,GAA0B,MAAM,GAAG,CAAa,YAAY,CAAC,CAAC;AACzE,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB,CAAC;SAEe,mBAAmB,GAAA;AAIjC,IAAA,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,IAA6B,KAAW,GAAG,CAAC,CAAA,EAAG,WAAW,CAAI,CAAA,EAAA,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;AACvG,IAAA,MAAM,KAAK,GAAG,CAAC,GAAW,KAAqC,GAAG,CAA0B,GAAG,WAAW,CAAA,CAAA,EAAI,GAAG,CAAA,CAAE,CAAC,CAAC;AACrH,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACxB;;AC7FA;;AAEG;;;;"}
1
+ {"version":3,"file":"mcache.mjs","sources":["../../../../packages/util/mcache/localStorageUtils.ts","../../../../packages/util/mcache/mcache.ts"],"sourcesContent":["import { LayoutBasicAside, NavType, YunzaiNavTopic, YunzaiProjectInfo, YunzaiUser } from '@yelon/util/mtypes';\n\nexport const YZ_USER_KEY = '_yz_user';\nexport const YZ_PROJECT_INFO_KEY = '_yz_project_info';\nexport const YZ_CURRENT_KEY = '_yz_current';\nexport const YZ_HEADER_KEY = '_yz_header';\nexport const YZ_HEADER_TYPE_KEY = '_yz_header_type';\nexport const YZ_DEFAULT_ROUTE_KEY = '_yz_default_route';\nexport const YZ_TENANT_KEY = '_yz_tenant';\n// export const YZ_LANGS_KEY = '_yz_langs';\n// export const YZ_LANG_KEY = '_yz_lang';\n\nfunction get<T>(key: string): T | null {\n if (key === YZ_HEADER_TYPE_KEY) {\n return localStorage.getItem(key) as any;\n }\n const item = localStorage.getItem(key);\n return item ? JSON.parse(item) : null;\n}\n\nfunction set<T>(key: string, data: T): void {\n if (key === YZ_HEADER_TYPE_KEY) {\n localStorage.setItem(YZ_HEADER_TYPE_KEY, data as string);\n return;\n }\n localStorage.setItem(key, JSON.stringify(data));\n}\n\ntype returnSet<T> = (data: T) => void;\ntype returnGet<T> = () => T | null;\n\nexport function useLocalStorageUser(): [returnSet<YunzaiUser>, returnGet<YunzaiUser>] {\n const setFn: returnSet<YunzaiUser> = user => set(YZ_USER_KEY, user);\n const getFn: returnGet<YunzaiUser> = () => get<YunzaiUser>(YZ_USER_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageProjectInfo(): [returnSet<YunzaiProjectInfo>, returnGet<YunzaiProjectInfo>] {\n const setFn: returnSet<YunzaiProjectInfo> = data => set(YZ_PROJECT_INFO_KEY, data);\n const getFn: returnGet<YunzaiProjectInfo> = () => get<YunzaiProjectInfo>(YZ_PROJECT_INFO_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageCurrent(): [returnSet<LayoutBasicAside>, returnGet<LayoutBasicAside>] {\n const setFn: returnSet<LayoutBasicAside> = data => set(YZ_CURRENT_KEY, data);\n const getFn: returnGet<LayoutBasicAside> = () => get<LayoutBasicAside>(YZ_CURRENT_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageHeaderType(): [returnSet<NavType>, returnGet<NavType>] {\n const setFn: returnSet<NavType> = data => set(YZ_HEADER_TYPE_KEY, data);\n const getFn: returnGet<NavType> = () => get<NavType>(YZ_HEADER_TYPE_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageHeader(): [returnSet<YunzaiNavTopic[]>, returnGet<YunzaiNavTopic[]>] {\n const setFn: returnSet<YunzaiNavTopic[]> = data => set(YZ_HEADER_KEY, data);\n const getFn: returnGet<YunzaiNavTopic[]> = () => get<YunzaiNavTopic[]>(YZ_HEADER_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageDefaultRoute(): [returnSet<string>, returnGet<string>] {\n const setFn: returnSet<string> = data => set(YZ_DEFAULT_ROUTE_KEY, data);\n const getFn: returnGet<string> = () => get<string>(YZ_DEFAULT_ROUTE_KEY);\n return [setFn, getFn];\n}\n\nexport function useLocalStorageTenant(): [returnSet<string>, returnGet<string>] {\n const setFn: returnSet<string> = data => set(YZ_TENANT_KEY, data);\n const getFn: returnGet<string> = () => get<string>(YZ_TENANT_KEY);\n return [setFn, getFn];\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,55 +1,55 @@
1
- var NavType;
2
- (function (NavType) {
3
- NavType["APPLICATION"] = "application";
4
- NavType["GROUP"] = "group";
5
- NavType["TILE"] = "tile";
6
- })(NavType || (NavType = {}));
7
-
8
- const YUNZAI_PAGE = {
9
- PAGE_NUM: 1,
10
- PAGE_SIZE: 1000
11
- };
12
- class YunzaiPageBuilder {
13
- constructor() {
14
- this.page = {};
15
- }
16
- pageNum(pageNum) {
17
- this.page.pageNum = pageNum;
18
- return this;
19
- }
20
- pageSize(pageSize) {
21
- this.page.pageSize = pageSize;
22
- return this;
23
- }
24
- pageParam(param) {
25
- this.page.pageParam = param;
26
- return this;
27
- }
28
- default() {
29
- this.page.pageNum = YUNZAI_PAGE.PAGE_NUM;
30
- this.page.pageSize = YUNZAI_PAGE.PAGE_SIZE;
31
- return this;
32
- }
33
- build() {
34
- return this.page;
35
- }
36
- }
37
- class Page {
38
- constructor(pageNum, pageSize, param) {
39
- this.pageNum = 1;
40
- this.pageSize = 30;
41
- this.pageNum = pageNum;
42
- this.pageSize = pageSize;
43
- this.param = param;
44
- }
45
- static create() {
46
- return new Page(1, 30);
47
- }
48
- }
49
-
50
- /**
51
- * Generated bundle index. Do not edit.
52
- */
53
-
54
- export { NavType, Page, YunzaiPageBuilder };
55
- //# sourceMappingURL=mtypes.mjs.map
1
+ var NavType;
2
+ (function (NavType) {
3
+ NavType["APPLICATION"] = "application";
4
+ NavType["GROUP"] = "group";
5
+ NavType["TILE"] = "tile";
6
+ })(NavType || (NavType = {}));
7
+
8
+ const YUNZAI_PAGE = {
9
+ PAGE_NUM: 1,
10
+ PAGE_SIZE: 1000
11
+ };
12
+ class YunzaiPageBuilder {
13
+ constructor() {
14
+ this.page = {};
15
+ }
16
+ pageNum(pageNum) {
17
+ this.page.pageNum = pageNum;
18
+ return this;
19
+ }
20
+ pageSize(pageSize) {
21
+ this.page.pageSize = pageSize;
22
+ return this;
23
+ }
24
+ pageParam(param) {
25
+ this.page.pageParam = param;
26
+ return this;
27
+ }
28
+ default() {
29
+ this.page.pageNum = YUNZAI_PAGE.PAGE_NUM;
30
+ this.page.pageSize = YUNZAI_PAGE.PAGE_SIZE;
31
+ return this;
32
+ }
33
+ build() {
34
+ return this.page;
35
+ }
36
+ }
37
+ class Page {
38
+ constructor(pageNum, pageSize, param) {
39
+ this.pageNum = 1;
40
+ this.pageSize = 30;
41
+ this.pageNum = pageNum;
42
+ this.pageSize = pageSize;
43
+ this.param = param;
44
+ }
45
+ static create() {
46
+ return new Page(1, 30);
47
+ }
48
+ }
49
+
50
+ /**
51
+ * Generated bundle index. Do not edit.
52
+ */
53
+
54
+ export { NavType, Page, YunzaiPageBuilder };
55
+ //# sourceMappingURL=mtypes.mjs.map