@delon/abc 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 (264) hide show
  1. package/auto-focus/auto-focus.directive.d.ts +3 -5
  2. package/avatar-list/avatar-list.component.d.ts +3 -0
  3. package/avatar-list/avatar-list.module.d.ts +3 -0
  4. package/exception/exception.component.d.ts +1 -1
  5. package/fesm2022/auto-focus.mjs +19 -28
  6. package/fesm2022/auto-focus.mjs.map +1 -1
  7. package/fesm2022/avatar-list.mjs +35 -27
  8. package/fesm2022/avatar-list.mjs.map +1 -1
  9. package/fesm2022/cell.mjs +104 -107
  10. package/fesm2022/cell.mjs.map +1 -1
  11. package/fesm2022/chart-observer-size.mjs +17 -22
  12. package/fesm2022/chart-observer-size.mjs.map +1 -1
  13. package/fesm2022/count-down.mjs +11 -12
  14. package/fesm2022/count-down.mjs.map +1 -1
  15. package/fesm2022/date-picker.mjs +26 -26
  16. package/fesm2022/date-picker.mjs.map +1 -1
  17. package/fesm2022/down-file.mjs +19 -15
  18. package/fesm2022/down-file.mjs.map +1 -1
  19. package/fesm2022/ellipsis.mjs +29 -25
  20. package/fesm2022/ellipsis.mjs.map +1 -1
  21. package/fesm2022/error-collect.mjs +22 -21
  22. package/fesm2022/error-collect.mjs.map +1 -1
  23. package/fesm2022/exception.mjs +24 -20
  24. package/fesm2022/exception.mjs.map +1 -1
  25. package/fesm2022/footer-toolbar.mjs +13 -14
  26. package/fesm2022/footer-toolbar.mjs.map +1 -1
  27. package/fesm2022/full-content.mjs +31 -38
  28. package/fesm2022/full-content.mjs.map +1 -1
  29. package/fesm2022/global-footer.mjs +24 -23
  30. package/fesm2022/global-footer.mjs.map +1 -1
  31. package/fesm2022/hotkey.mjs +13 -15
  32. package/fesm2022/hotkey.mjs.map +1 -1
  33. package/fesm2022/loading.mjs +23 -21
  34. package/fesm2022/loading.mjs.map +1 -1
  35. package/fesm2022/lodop.mjs +15 -13
  36. package/fesm2022/lodop.mjs.map +1 -1
  37. package/fesm2022/media.mjs +30 -30
  38. package/fesm2022/media.mjs.map +1 -1
  39. package/fesm2022/notice-icon.mjs +48 -84
  40. package/fesm2022/notice-icon.mjs.map +1 -1
  41. package/fesm2022/onboarding.mjs +41 -37
  42. package/fesm2022/onboarding.mjs.map +1 -1
  43. package/fesm2022/page-header.mjs +48 -36
  44. package/fesm2022/page-header.mjs.map +1 -1
  45. package/fesm2022/pdf.mjs +45 -34
  46. package/fesm2022/pdf.mjs.map +1 -1
  47. package/fesm2022/quick-menu.mjs +22 -22
  48. package/fesm2022/quick-menu.mjs.map +1 -1
  49. package/fesm2022/result.mjs +17 -16
  50. package/fesm2022/result.mjs.map +1 -1
  51. package/fesm2022/reuse-tab.mjs +124 -122
  52. package/fesm2022/reuse-tab.mjs.map +1 -1
  53. package/fesm2022/se.mjs +68 -50
  54. package/fesm2022/se.mjs.map +1 -1
  55. package/fesm2022/sg.mjs +22 -21
  56. package/fesm2022/sg.mjs.map +1 -1
  57. package/fesm2022/st.mjs +445 -419
  58. package/fesm2022/st.mjs.map +1 -1
  59. package/fesm2022/sv.mjs +62 -43
  60. package/fesm2022/sv.mjs.map +1 -1
  61. package/fesm2022/tag-select.mjs +18 -20
  62. package/fesm2022/tag-select.mjs.map +1 -1
  63. package/fesm2022/xlsx.mjs +17 -18
  64. package/fesm2022/xlsx.mjs.map +1 -1
  65. package/fesm2022/zip.mjs +7 -6
  66. package/fesm2022/zip.mjs.map +1 -1
  67. package/hotkey/hotkey.directive.d.ts +2 -2
  68. package/notice-icon/notice-icon-tab.component.d.ts +5 -6
  69. package/notice-icon/notice-icon.component.d.ts +17 -22
  70. package/package.json +5 -75
  71. package/reuse-tab/public_api.d.ts +2 -1
  72. package/st/st-column-source.d.ts +1 -0
  73. package/st/st-filter.component.d.ts +4 -4
  74. package/st/st-row.directive.d.ts +1 -1
  75. package/st/st-widget-host.directive.d.ts +1 -1
  76. package/st/st.component.d.ts +33 -24
  77. package/st/st.interfaces.d.ts +26 -4
  78. package/st/st.module.d.ts +1 -22
  79. package/st/st.types.d.ts +2 -3
  80. package/sv/sv-container.component.d.ts +1 -1
  81. package/esm2022/abc.mjs +0 -5
  82. package/esm2022/auto-focus/auto-focus.directive.mjs +0 -40
  83. package/esm2022/auto-focus/auto-focus.mjs +0 -5
  84. package/esm2022/auto-focus/auto-focus.module.mjs +0 -17
  85. package/esm2022/auto-focus/index.mjs +0 -3
  86. package/esm2022/avatar-list/avatar-list-item.component.mjs +0 -27
  87. package/esm2022/avatar-list/avatar-list.component.mjs +0 -79
  88. package/esm2022/avatar-list/avatar-list.mjs +0 -5
  89. package/esm2022/avatar-list/avatar-list.module.mjs +0 -21
  90. package/esm2022/avatar-list/public_api.mjs +0 -4
  91. package/esm2022/cell/cell-host.directive.mjs +0 -35
  92. package/esm2022/cell/cell.component.mjs +0 -289
  93. package/esm2022/cell/cell.mjs +0 -5
  94. package/esm2022/cell/cell.module.mjs +0 -55
  95. package/esm2022/cell/cell.service.mjs +0 -173
  96. package/esm2022/cell/cell.types.mjs +0 -2
  97. package/esm2022/cell/index.mjs +0 -7
  98. package/esm2022/cell/provide.mjs +0 -18
  99. package/esm2022/count-down/count-down.component.mjs +0 -50
  100. package/esm2022/count-down/count-down.mjs +0 -5
  101. package/esm2022/count-down/count-down.module.mjs +0 -19
  102. package/esm2022/count-down/public_api.mjs +0 -3
  103. package/esm2022/date-picker/date-picker.mjs +0 -5
  104. package/esm2022/date-picker/date-picker.module.mjs +0 -21
  105. package/esm2022/date-picker/public_api.mjs +0 -4
  106. package/esm2022/date-picker/range-shortcut.component.mjs +0 -34
  107. package/esm2022/date-picker/range.directive.mjs +0 -168
  108. package/esm2022/down-file/down-file.directive.mjs +0 -113
  109. package/esm2022/down-file/down-file.mjs +0 -5
  110. package/esm2022/down-file/down-file.module.mjs +0 -19
  111. package/esm2022/down-file/public_api.mjs +0 -3
  112. package/esm2022/ellipsis/ellipsis.component.mjs +0 -219
  113. package/esm2022/ellipsis/ellipsis.mjs +0 -5
  114. package/esm2022/ellipsis/ellipsis.module.mjs +0 -20
  115. package/esm2022/ellipsis/public_api.mjs +0 -3
  116. package/esm2022/error-collect/error-collect.component.mjs +0 -110
  117. package/esm2022/error-collect/error-collect.mjs +0 -5
  118. package/esm2022/error-collect/error-collect.module.mjs +0 -19
  119. package/esm2022/error-collect/public_api.mjs +0 -3
  120. package/esm2022/exception/exception.component.mjs +0 -103
  121. package/esm2022/exception/exception.mjs +0 -5
  122. package/esm2022/exception/exception.module.mjs +0 -22
  123. package/esm2022/exception/public_api.mjs +0 -3
  124. package/esm2022/footer-toolbar/footer-toolbar.component.mjs +0 -33
  125. package/esm2022/footer-toolbar/footer-toolbar.mjs +0 -5
  126. package/esm2022/footer-toolbar/footer-toolbar.module.mjs +0 -20
  127. package/esm2022/footer-toolbar/public_api.mjs +0 -3
  128. package/esm2022/full-content/full-content-toggle.directive.mjs +0 -25
  129. package/esm2022/full-content/full-content.component.mjs +0 -125
  130. package/esm2022/full-content/full-content.mjs +0 -5
  131. package/esm2022/full-content/full-content.module.mjs +0 -19
  132. package/esm2022/full-content/full-content.service.mjs +0 -22
  133. package/esm2022/full-content/public_api.mjs +0 -5
  134. package/esm2022/global-footer/global-footer-item.component.mjs +0 -27
  135. package/esm2022/global-footer/global-footer.component.mjs +0 -65
  136. package/esm2022/global-footer/global-footer.mjs +0 -5
  137. package/esm2022/global-footer/global-footer.module.mjs +0 -20
  138. package/esm2022/global-footer/global-footer.types.mjs +0 -2
  139. package/esm2022/global-footer/public_api.mjs +0 -5
  140. package/esm2022/hotkey/hotkey.directive.mjs +0 -36
  141. package/esm2022/hotkey/hotkey.mjs +0 -5
  142. package/esm2022/hotkey/hotkey.module.mjs +0 -17
  143. package/esm2022/hotkey/public_api.mjs +0 -3
  144. package/esm2022/let/index.mjs +0 -3
  145. package/esm2022/let/let.directive.mjs +0 -40
  146. package/esm2022/let/let.mjs +0 -5
  147. package/esm2022/let/let.module.mjs +0 -20
  148. package/esm2022/loading/loading.component.mjs +0 -26
  149. package/esm2022/loading/loading.mjs +0 -5
  150. package/esm2022/loading/loading.module.mjs +0 -22
  151. package/esm2022/loading/loading.service.mjs +0 -88
  152. package/esm2022/loading/loading.types.mjs +0 -2
  153. package/esm2022/loading/public_api.mjs +0 -5
  154. package/esm2022/lodop/lodop.mjs +0 -5
  155. package/esm2022/lodop/lodop.module.mjs +0 -12
  156. package/esm2022/lodop/lodop.service.mjs +0 -224
  157. package/esm2022/lodop/lodop.types.mjs +0 -2
  158. package/esm2022/lodop/public_api.mjs +0 -4
  159. package/esm2022/media/media.component.mjs +0 -114
  160. package/esm2022/media/media.mjs +0 -5
  161. package/esm2022/media/media.module.mjs +0 -18
  162. package/esm2022/media/media.service.mjs +0 -46
  163. package/esm2022/media/public_api.mjs +0 -4
  164. package/esm2022/notice-icon/notice-icon-tab.component.mjs +0 -41
  165. package/esm2022/notice-icon/notice-icon.component.mjs +0 -96
  166. package/esm2022/notice-icon/notice-icon.mjs +0 -5
  167. package/esm2022/notice-icon/notice-icon.module.mjs +0 -59
  168. package/esm2022/notice-icon/notice-icon.types.mjs +0 -2
  169. package/esm2022/notice-icon/public_api.mjs +0 -5
  170. package/esm2022/observers/chart-observer-size.mjs +0 -5
  171. package/esm2022/observers/observer-size.mjs +0 -117
  172. package/esm2022/observers/public-api.mjs +0 -2
  173. package/esm2022/onboarding/onboarding.component.mjs +0 -127
  174. package/esm2022/onboarding/onboarding.mjs +0 -5
  175. package/esm2022/onboarding/onboarding.module.mjs +0 -42
  176. package/esm2022/onboarding/onboarding.service.mjs +0 -192
  177. package/esm2022/onboarding/onboarding.storage.mjs +0 -17
  178. package/esm2022/onboarding/onboarding.types.mjs +0 -2
  179. package/esm2022/onboarding/public_api.mjs +0 -6
  180. package/esm2022/page-header/page-header.component.mjs +0 -220
  181. package/esm2022/page-header/page-header.mjs +0 -5
  182. package/esm2022/page-header/page-header.module.mjs +0 -45
  183. package/esm2022/page-header/public_api.mjs +0 -3
  184. package/esm2022/pdf/pdf.component.mjs +0 -449
  185. package/esm2022/pdf/pdf.config.mjs +0 -10
  186. package/esm2022/pdf/pdf.mjs +0 -5
  187. package/esm2022/pdf/pdf.module.mjs +0 -19
  188. package/esm2022/pdf/pdf.types.mjs +0 -16
  189. package/esm2022/pdf/public_api.mjs +0 -5
  190. package/esm2022/public_api.mjs +0 -3
  191. package/esm2022/quick-menu/public_api.mjs +0 -3
  192. package/esm2022/quick-menu/quick-menu.component.mjs +0 -81
  193. package/esm2022/quick-menu/quick-menu.mjs +0 -5
  194. package/esm2022/quick-menu/quick-menu.module.mjs +0 -20
  195. package/esm2022/result/public_api.mjs +0 -3
  196. package/esm2022/result/result.component.mjs +0 -58
  197. package/esm2022/result/result.mjs +0 -5
  198. package/esm2022/result/result.module.mjs +0 -23
  199. package/esm2022/reuse-tab/lifecycle_hooks.mjs +0 -2
  200. package/esm2022/reuse-tab/provide.mjs +0 -74
  201. package/esm2022/reuse-tab/public_api.mjs +0 -14
  202. package/esm2022/reuse-tab/reuse-tab-context-menu.component.mjs +0 -75
  203. package/esm2022/reuse-tab/reuse-tab-context.component.mjs +0 -30
  204. package/esm2022/reuse-tab/reuse-tab-context.directive.mjs +0 -36
  205. package/esm2022/reuse-tab/reuse-tab-context.service.mjs +0 -54
  206. package/esm2022/reuse-tab/reuse-tab.cache.mjs +0 -13
  207. package/esm2022/reuse-tab/reuse-tab.component.mjs +0 -337
  208. package/esm2022/reuse-tab/reuse-tab.interfaces.mjs +0 -33
  209. package/esm2022/reuse-tab/reuse-tab.mjs +0 -5
  210. package/esm2022/reuse-tab/reuse-tab.module.mjs +0 -79
  211. package/esm2022/reuse-tab/reuse-tab.service.mjs +0 -574
  212. package/esm2022/reuse-tab/reuse-tab.state.mjs +0 -16
  213. package/esm2022/reuse-tab/reuse-tab.strategy.mjs +0 -23
  214. package/esm2022/se/public_api.mjs +0 -5
  215. package/esm2022/se/se-container.component.mjs +0 -158
  216. package/esm2022/se/se.component.mjs +0 -220
  217. package/esm2022/se/se.mjs +0 -5
  218. package/esm2022/se/se.module.mjs +0 -22
  219. package/esm2022/se/se.types.mjs +0 -14
  220. package/esm2022/sg/public_api.mjs +0 -4
  221. package/esm2022/sg/sg-container.component.mjs +0 -44
  222. package/esm2022/sg/sg.component.mjs +0 -62
  223. package/esm2022/sg/sg.mjs +0 -5
  224. package/esm2022/sg/sg.module.mjs +0 -19
  225. package/esm2022/st/provide.mjs +0 -18
  226. package/esm2022/st/public_api.mjs +0 -13
  227. package/esm2022/st/st-column-source.mjs +0 -496
  228. package/esm2022/st/st-data-source.mjs +0 -507
  229. package/esm2022/st/st-export.mjs +0 -87
  230. package/esm2022/st/st-filter.component.mjs +0 -293
  231. package/esm2022/st/st-row.directive.mjs +0 -43
  232. package/esm2022/st/st-widget-host.directive.mjs +0 -31
  233. package/esm2022/st/st-widget.mjs +0 -26
  234. package/esm2022/st/st.component.mjs +0 -966
  235. package/esm2022/st/st.config.mjs +0 -79
  236. package/esm2022/st/st.interfaces.mjs +0 -2
  237. package/esm2022/st/st.mjs +0 -5
  238. package/esm2022/st/st.module.mjs +0 -100
  239. package/esm2022/st/st.types.mjs +0 -2
  240. package/esm2022/sv/public_api.mjs +0 -5
  241. package/esm2022/sv/sv-container.component.mjs +0 -127
  242. package/esm2022/sv/sv-value.component.mjs +0 -53
  243. package/esm2022/sv/sv.component.mjs +0 -109
  244. package/esm2022/sv/sv.mjs +0 -5
  245. package/esm2022/sv/sv.module.mjs +0 -24
  246. package/esm2022/tag-select/public_api.mjs +0 -3
  247. package/esm2022/tag-select/tag-select.component.mjs +0 -53
  248. package/esm2022/tag-select/tag-select.mjs +0 -5
  249. package/esm2022/tag-select/tag-select.module.mjs +0 -20
  250. package/esm2022/xlsx/public_api.mjs +0 -5
  251. package/esm2022/xlsx/xlsx.directive.mjs +0 -28
  252. package/esm2022/xlsx/xlsx.mjs +0 -5
  253. package/esm2022/xlsx/xlsx.module.mjs +0 -17
  254. package/esm2022/xlsx/xlsx.service.mjs +0 -128
  255. package/esm2022/xlsx/xlsx.types.mjs +0 -2
  256. package/esm2022/zip/public_api.mjs +0 -3
  257. package/esm2022/zip/zip.mjs +0 -5
  258. package/esm2022/zip/zip.service.mjs +0 -116
  259. package/esm2022/zip/zip.types.mjs +0 -2
  260. package/fesm2022/let.mjs +0 -64
  261. package/fesm2022/let.mjs.map +0 -1
  262. package/let/index.d.ts +0 -2
  263. package/let/let.directive.d.ts +0 -19
  264. package/let/let.module.d.ts +0 -10
@@ -1 +1 @@
1
- {"version":3,"file":"xlsx.mjs","sources":["../../../../packages/abc/xlsx/xlsx.service.ts","../../../../packages/abc/xlsx/xlsx.directive.ts","../../../../packages/abc/xlsx/xlsx.module.ts","../../../../packages/abc/xlsx/xlsx.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable, NgZone, inject } from '@angular/core';\n\nimport isUtf8 from 'isutf8';\n\nimport { AlainConfigService, AlainXlsxConfig } from '@delon/util/config';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { LazyResult, LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { XlsxExportOptions, XlsxExportResult, XlsxExportSheet } from './xlsx.types';\n\ndeclare var XLSX: NzSafeAny;\ndeclare var cptable: NzSafeAny;\n\n@Injectable({ providedIn: 'root' })\nexport class XlsxService {\n private readonly http = inject(HttpClient);\n private readonly lazy = inject(LazyService);\n private readonly ngZone = inject(NgZone);\n\n private cog: AlainXlsxConfig;\n\n constructor(configSrv: AlainConfigService) {\n this.cog = configSrv.merge('xlsx', {\n url: 'https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js',\n modules: [`https://cdn.jsdelivr.net/npm/xlsx/dist/cpexcel.js`]\n })!;\n }\n\n private init(): Promise<LazyResult[]> {\n return typeof XLSX !== 'undefined'\n ? Promise.resolve([])\n : this.lazy.load([this.cog.url!].concat(this.cog.modules!));\n }\n\n @ZoneOutside()\n private read(data: NzSafeAny): { [key: string]: NzSafeAny[][] } {\n const {\n read,\n utils: { sheet_to_json }\n } = XLSX;\n const ret: NzSafeAny = {};\n const buf = new Uint8Array(data);\n let type = 'array';\n if (!isUtf8(buf)) {\n try {\n data = cptable.utils.decode(936, buf);\n type = 'string';\n } catch {}\n }\n const wb = read(data, { type });\n wb.SheetNames.forEach((name: string) => {\n const sheet: NzSafeAny = wb.Sheets[name];\n ret[name] = sheet_to_json(sheet, { header: 1 });\n });\n return ret;\n }\n\n /**\n * 导入Excel并输出JSON,支持 `<input type=\"file\">`、URL 形式\n */\n import(fileOrUrl: File | string): Promise<{ [key: string]: NzSafeAny[][] }> {\n return new Promise<{ [key: string]: NzSafeAny[][] }>((resolve, reject) => {\n const r = (data: NzSafeAny): void => this.ngZone.run(() => resolve(this.read(data)));\n this.init()\n .then(() => {\n // from url\n if (typeof fileOrUrl === 'string') {\n this.http.request('GET', fileOrUrl, { responseType: 'arraybuffer' }).subscribe({\n next: (res: ArrayBuffer) => r(new Uint8Array(res)),\n error: (err: NzSafeAny) => reject(err)\n });\n return;\n }\n // from file\n const reader: FileReader = new FileReader();\n reader.onload = (e: NzSafeAny) => r(e.target.result);\n reader.onerror = (e: NzSafeAny) => reject(e);\n reader.readAsArrayBuffer(fileOrUrl);\n })\n .catch(() => reject(`Unable to load xlsx.js`));\n });\n }\n\n @ZoneOutside()\n async export(options: XlsxExportOptions): Promise<XlsxExportResult> {\n return new Promise<XlsxExportResult>((resolve, reject) => {\n this.init()\n .then(() => {\n options = { format: 'xlsx', ...options };\n const {\n writeFile,\n utils: { book_new, aoa_to_sheet, book_append_sheet }\n } = XLSX;\n const wb: NzSafeAny = book_new();\n if (Array.isArray(options.sheets)) {\n (options.sheets as XlsxExportSheet[]).forEach((value: XlsxExportSheet, index: number) => {\n const ws: NzSafeAny = aoa_to_sheet(value.data);\n book_append_sheet(wb, ws, value.name || `Sheet${index + 1}`);\n });\n } else {\n wb.SheetNames = Object.keys(options.sheets);\n wb.Sheets = options.sheets;\n }\n\n if (options.callback) options.callback(wb);\n\n const filename = options.filename || `export.${options.format}`;\n writeFile(wb, filename, {\n bookType: options.format,\n bookSST: false,\n type: 'array',\n ...options.opts\n });\n\n resolve({ filename, wb });\n })\n .catch(err => reject(err));\n });\n }\n\n /**\n * 数据转符号名\n * - `1` => `A`\n * - `27` => `AA`\n * - `703` => `AAA`\n */\n numberToSchema(val: number): string {\n const startCode = 'A'.charCodeAt(0);\n let res = '';\n\n do {\n --val;\n res = String.fromCharCode(startCode + (val % 26)) + res;\n val = (val / 26) >> 0;\n } while (val > 0);\n\n return res;\n }\n}\n","import { Directive, Input, inject } from '@angular/core';\n\nimport { XlsxService } from './xlsx.service';\nimport { XlsxExportOptions } from './xlsx.types';\n\n@Directive({\n selector: '[xlsx]',\n exportAs: 'xlsx',\n host: {\n '(click)': '_click()'\n },\n standalone: true\n})\nexport class XlsxDirective {\n private readonly srv = inject(XlsxService);\n\n @Input('xlsx') data!: XlsxExportOptions;\n\n _click(): void {\n this.srv.export(this.data);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { XlsxDirective } from './xlsx.directive';\n\nconst COMPONENTS = [XlsxDirective];\n\n@NgModule({\n imports: [COMPONENTS],\n exports: COMPONENTS\n})\nexport class XlsxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xlsx.mjs","sources":["../../../../packages/abc/xlsx/xlsx.service.ts","../../../../packages/abc/xlsx/xlsx.directive.ts","../../../../packages/abc/xlsx/xlsx.module.ts","../../../../packages/abc/xlsx/xlsx.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable, NgZone, inject } from '@angular/core';\n\nimport isUtf8 from 'isutf8';\n\nimport { AlainConfigService, AlainXlsxConfig } from '@delon/util/config';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { LazyResult, LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { XlsxExportOptions, XlsxExportResult, XlsxExportSheet } from './xlsx.types';\n\ndeclare var XLSX: NzSafeAny;\ndeclare var cptable: NzSafeAny;\n\n@Injectable({ providedIn: 'root' })\nexport class XlsxService {\n private readonly http = inject(HttpClient);\n private readonly lazy = inject(LazyService);\n private readonly ngZone = inject(NgZone);\n\n private cog: AlainXlsxConfig;\n\n constructor(configSrv: AlainConfigService) {\n this.cog = configSrv.merge('xlsx', {\n url: 'https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js',\n modules: [`https://cdn.jsdelivr.net/npm/xlsx/dist/cpexcel.js`]\n })!;\n }\n\n private init(): Promise<LazyResult[]> {\n return typeof XLSX !== 'undefined'\n ? Promise.resolve([])\n : this.lazy.load([this.cog.url!].concat(this.cog.modules!));\n }\n\n @ZoneOutside()\n private read(data: NzSafeAny): { [key: string]: NzSafeAny[][] } {\n const {\n read,\n utils: { sheet_to_json }\n } = XLSX;\n const ret: NzSafeAny = {};\n const buf = new Uint8Array(data);\n let type = 'array';\n if (!isUtf8(buf)) {\n try {\n data = cptable.utils.decode(936, buf);\n type = 'string';\n } catch {}\n }\n const wb = read(data, { type });\n wb.SheetNames.forEach((name: string) => {\n const sheet: NzSafeAny = wb.Sheets[name];\n ret[name] = sheet_to_json(sheet, { header: 1 });\n });\n return ret;\n }\n\n /**\n * 导入Excel并输出JSON,支持 `<input type=\"file\">`、URL 形式\n */\n import(fileOrUrl: File | string): Promise<{ [key: string]: NzSafeAny[][] }> {\n return new Promise<{ [key: string]: NzSafeAny[][] }>((resolve, reject) => {\n const r = (data: NzSafeAny): void => this.ngZone.run(() => resolve(this.read(data)));\n this.init()\n .then(() => {\n // from url\n if (typeof fileOrUrl === 'string') {\n this.http.request('GET', fileOrUrl, { responseType: 'arraybuffer' }).subscribe({\n next: (res: ArrayBuffer) => r(new Uint8Array(res)),\n error: (err: NzSafeAny) => reject(err)\n });\n return;\n }\n // from file\n const reader: FileReader = new FileReader();\n reader.onload = (e: NzSafeAny) => r(e.target.result);\n reader.onerror = (e: NzSafeAny) => reject(e);\n reader.readAsArrayBuffer(fileOrUrl);\n })\n .catch(() => reject(`Unable to load xlsx.js`));\n });\n }\n\n @ZoneOutside()\n async export(options: XlsxExportOptions): Promise<XlsxExportResult> {\n return new Promise<XlsxExportResult>((resolve, reject) => {\n this.init()\n .then(() => {\n options = { format: 'xlsx', ...options };\n const {\n writeFile,\n utils: { book_new, aoa_to_sheet, book_append_sheet }\n } = XLSX;\n const wb: NzSafeAny = book_new();\n if (Array.isArray(options.sheets)) {\n (options.sheets as XlsxExportSheet[]).forEach((value: XlsxExportSheet, index: number) => {\n const ws: NzSafeAny = aoa_to_sheet(value.data);\n book_append_sheet(wb, ws, value.name || `Sheet${index + 1}`);\n });\n } else {\n wb.SheetNames = Object.keys(options.sheets);\n wb.Sheets = options.sheets;\n }\n\n if (options.callback) options.callback(wb);\n\n const filename = options.filename || `export.${options.format}`;\n writeFile(wb, filename, {\n bookType: options.format,\n bookSST: false,\n type: 'array',\n ...options.opts\n });\n\n resolve({ filename, wb });\n })\n .catch(err => reject(err));\n });\n }\n\n /**\n * 数据转符号名\n * - `1` => `A`\n * - `27` => `AA`\n * - `703` => `AAA`\n */\n numberToSchema(val: number): string {\n const startCode = 'A'.charCodeAt(0);\n let res = '';\n\n do {\n --val;\n res = String.fromCharCode(startCode + (val % 26)) + res;\n val = (val / 26) >> 0;\n } while (val > 0);\n\n return res;\n }\n}\n","import { Directive, Input, inject } from '@angular/core';\n\nimport { XlsxService } from './xlsx.service';\nimport { XlsxExportOptions } from './xlsx.types';\n\n@Directive({\n selector: '[xlsx]',\n exportAs: 'xlsx',\n host: {\n '(click)': '_click()'\n }\n})\nexport class XlsxDirective {\n private readonly srv = inject(XlsxService);\n\n @Input('xlsx') data!: XlsxExportOptions;\n\n _click(): void {\n this.srv.export(this.data);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { XlsxDirective } from './xlsx.directive';\n\nconst COMPONENTS = [XlsxDirective];\n\n@NgModule({\n imports: [COMPONENTS],\n exports: COMPONENTS\n})\nexport class XlsxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/fesm2022/zip.mjs CHANGED
@@ -8,10 +8,11 @@ import { LazyService } from '@delon/util/other';
8
8
  import * as i1 from '@delon/util/config';
9
9
 
10
10
  class ZipService {
11
+ http = inject(HttpClient);
12
+ lazy = inject(LazyService);
13
+ ngZone = inject(NgZone);
14
+ cog;
11
15
  constructor(configSrv) {
12
- this.http = inject(HttpClient);
13
- this.lazy = inject(LazyService);
14
- this.ngZone = inject(NgZone);
15
16
  this.cog = configSrv.merge('zip', {
16
17
  url: 'https://cdn.jsdelivr.net/npm/jszip@3/dist/jszip.min.js',
17
18
  utils: []
@@ -104,13 +105,13 @@ class ZipService {
104
105
  });
105
106
  });
106
107
  }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZipService, deps: [{ token: i1.AlainConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
108
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZipService, providedIn: 'root' }); }
108
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: ZipService, deps: [{ token: i1.AlainConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
109
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: ZipService, providedIn: 'root' });
109
110
  }
110
111
  __decorate([
111
112
  ZoneOutside()
112
113
  ], ZipService.prototype, "read", null);
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ZipService, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: ZipService, decorators: [{
114
115
  type: Injectable,
115
116
  args: [{ providedIn: 'root' }]
116
117
  }], ctorParameters: () => [{ type: i1.AlainConfigService }], propDecorators: { read: [] } });
@@ -1 +1 @@
1
- {"version":3,"file":"zip.mjs","sources":["../../../../packages/abc/zip/zip.service.ts","../../../../packages/abc/zip/zip.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable, NgZone, inject } from '@angular/core';\n\nimport { saveAs } from 'file-saver';\nimport type jsZipType from 'jszip';\n\nimport { AlainConfigService, AlainZipConfig } from '@delon/util/config';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { LazyResult, LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { ZipSaveOptions } from './zip.types';\n\ndeclare var JSZip: jsZipType;\n\n@Injectable({ providedIn: 'root' })\nexport class ZipService {\n private readonly http = inject(HttpClient);\n private readonly lazy = inject(LazyService);\n private readonly ngZone = inject(NgZone);\n\n private cog: AlainZipConfig;\n\n constructor(configSrv: AlainConfigService) {\n this.cog = configSrv.merge('zip', {\n url: 'https://cdn.jsdelivr.net/npm/jszip@3/dist/jszip.min.js',\n utils: []\n })!;\n }\n\n private init(): Promise<LazyResult[]> {\n return this.lazy.load([this.cog.url!].concat(this.cog.utils!));\n }\n\n private check(zip?: jsZipType | null): void {\n if (!zip) throw new Error('get instance via `ZipService.create()`');\n }\n\n /** 解压 */\n @ZoneOutside()\n read(fileOrUrl: File | string, options?: jsZipType.JSZipLoadOptions): Promise<jsZipType> {\n return new Promise<jsZipType>((resolve, reject) => {\n const resolveCallback = (data: jsZipType): void => {\n this.ngZone.run(() => resolve(data));\n };\n this.init().then(() => {\n // from url\n if (typeof fileOrUrl === 'string') {\n this.http.request('GET', fileOrUrl, { responseType: 'arraybuffer' }).subscribe({\n next: (res: ArrayBuffer) => {\n JSZip.loadAsync(res, options).then((ret: jsZipType) => resolveCallback(ret));\n },\n error: err => {\n reject(err);\n }\n });\n return;\n }\n // from file\n const reader: FileReader = new FileReader();\n reader.onload = (e: ProgressEvent<FileReader>) => {\n JSZip.loadAsync(e.target!.result as ArrayBuffer, options).then((ret: jsZipType) => resolveCallback(ret));\n };\n reader.readAsBinaryString(fileOrUrl as File);\n });\n });\n }\n\n /** 创建 Zip 实例,用于创建压缩文件 */\n create(): Promise<jsZipType | null> {\n return new Promise<jsZipType | null>(resolve => {\n this.init()\n .then(() => {\n const zipFile = new JSZip();\n resolve(zipFile);\n })\n .catch(() => resolve(null));\n });\n }\n\n /**\n * 下载URL资源并写入 zip\n *\n * @param zip Zip 实例\n * @param path Zip 路径,例如: `text.txt`、`txt/hi.txt`\n * @param url URL 地址\n */\n pushUrl(zip: jsZipType | null, path: string, url: string): Promise<void> {\n this.check(zip);\n return new Promise<void>((resolve, reject) => {\n this.http.request('GET', url, { responseType: 'arraybuffer' }).subscribe({\n next: (res: ArrayBuffer) => {\n zip!.file(path, res);\n resolve();\n },\n error: error => {\n reject({ url, error });\n }\n });\n });\n }\n\n /**\n * 保存Zip并执行打开保存对话框\n *\n * @param zip zip 对象,务必通过 `create()` 构建\n * @param options 额外参数,\n */\n save(zip: jsZipType | null, options?: ZipSaveOptions): Promise<void> {\n this.check(zip);\n const opt = { filename: 'download.zip', ...options } as ZipSaveOptions;\n return new Promise<void>((resolve, reject) => {\n zip!.generateAsync<'blob'>({ type: 'blob', ...opt.options } as NzSafeAny, opt.update as NzSafeAny).then(\n data => {\n if (opt.callback) opt.callback(data);\n saveAs(data, opt.filename);\n resolve();\n },\n err => {\n reject(err);\n }\n );\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zip.mjs","sources":["../../../../packages/abc/zip/zip.service.ts","../../../../packages/abc/zip/zip.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable, NgZone, inject } from '@angular/core';\n\nimport { saveAs } from 'file-saver';\nimport type jsZipType from 'jszip';\n\nimport { AlainConfigService, AlainZipConfig } from '@delon/util/config';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { LazyResult, LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { ZipSaveOptions } from './zip.types';\n\ndeclare var JSZip: jsZipType;\n\n@Injectable({ providedIn: 'root' })\nexport class ZipService {\n private readonly http = inject(HttpClient);\n private readonly lazy = inject(LazyService);\n private readonly ngZone = inject(NgZone);\n\n private cog: AlainZipConfig;\n\n constructor(configSrv: AlainConfigService) {\n this.cog = configSrv.merge('zip', {\n url: 'https://cdn.jsdelivr.net/npm/jszip@3/dist/jszip.min.js',\n utils: []\n })!;\n }\n\n private init(): Promise<LazyResult[]> {\n return this.lazy.load([this.cog.url!].concat(this.cog.utils!));\n }\n\n private check(zip?: jsZipType | null): void {\n if (!zip) throw new Error('get instance via `ZipService.create()`');\n }\n\n /** 解压 */\n @ZoneOutside()\n read(fileOrUrl: File | string, options?: jsZipType.JSZipLoadOptions): Promise<jsZipType> {\n return new Promise<jsZipType>((resolve, reject) => {\n const resolveCallback = (data: jsZipType): void => {\n this.ngZone.run(() => resolve(data));\n };\n this.init().then(() => {\n // from url\n if (typeof fileOrUrl === 'string') {\n this.http.request('GET', fileOrUrl, { responseType: 'arraybuffer' }).subscribe({\n next: (res: ArrayBuffer) => {\n JSZip.loadAsync(res, options).then((ret: jsZipType) => resolveCallback(ret));\n },\n error: err => {\n reject(err);\n }\n });\n return;\n }\n // from file\n const reader: FileReader = new FileReader();\n reader.onload = (e: ProgressEvent<FileReader>) => {\n JSZip.loadAsync(e.target!.result as ArrayBuffer, options).then((ret: jsZipType) => resolveCallback(ret));\n };\n reader.readAsBinaryString(fileOrUrl as File);\n });\n });\n }\n\n /** 创建 Zip 实例,用于创建压缩文件 */\n create(): Promise<jsZipType | null> {\n return new Promise<jsZipType | null>(resolve => {\n this.init()\n .then(() => {\n const zipFile = new JSZip();\n resolve(zipFile);\n })\n .catch(() => resolve(null));\n });\n }\n\n /**\n * 下载URL资源并写入 zip\n *\n * @param zip Zip 实例\n * @param path Zip 路径,例如: `text.txt`、`txt/hi.txt`\n * @param url URL 地址\n */\n pushUrl(zip: jsZipType | null, path: string, url: string): Promise<void> {\n this.check(zip);\n return new Promise<void>((resolve, reject) => {\n this.http.request('GET', url, { responseType: 'arraybuffer' }).subscribe({\n next: (res: ArrayBuffer) => {\n zip!.file(path, res);\n resolve();\n },\n error: error => {\n reject({ url, error });\n }\n });\n });\n }\n\n /**\n * 保存Zip并执行打开保存对话框\n *\n * @param zip zip 对象,务必通过 `create()` 构建\n * @param options 额外参数,\n */\n save(zip: jsZipType | null, options?: ZipSaveOptions): Promise<void> {\n this.check(zip);\n const opt = { filename: 'download.zip', ...options } as ZipSaveOptions;\n return new Promise<void>((resolve, reject) => {\n zip!.generateAsync<'blob'>({ type: 'blob', ...opt.options } as NzSafeAny, opt.update as NzSafeAny).then(\n data => {\n if (opt.callback) opt.callback(data);\n saveAs(data, opt.filename);\n resolve();\n },\n err => {\n reject(err);\n }\n );\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -5,9 +5,9 @@ export declare class HotkeyDirective implements OnDestroy {
5
5
  private readonly ngZone;
6
6
  private readonly platform;
7
7
  /**
8
- * Specify [hotkey format](https://github.com/github/hotkey#hotkey-string-format)
8
+ * Specify [hotkey format](https://github.com/github/hotkey#hotkey-string-format), you can get the code through [Hotkey Code](https://github.github.com/hotkey/hotkey_mapper.html)
9
9
  *
10
- * 指定[热键格式](https://github.com/github/hotkey#hotkey-string-format)
10
+ * 指定[热键格式](https://github.com/github/hotkey#hotkey-string-format),可以通过 [Hotkey Code](https://github.github.com/hotkey/hotkey_mapper.html) 来获取代码。
11
11
  */
12
12
  set hotkey(key: string);
13
13
  ngOnDestroy(): void;
@@ -1,14 +1,13 @@
1
- import { EventEmitter } from '@angular/core';
2
1
  import { LocaleData } from '@delon/theme';
3
2
  import { NoticeIconSelect, NoticeItem } from './notice-icon.types';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class NoticeIconTabComponent {
6
- locale: LocaleData;
7
- data: NoticeItem;
8
- readonly select: EventEmitter<NoticeIconSelect>;
9
- readonly clear: EventEmitter<string>;
5
+ locale: import("@angular/core").InputSignal<LocaleData>;
6
+ item: import("@angular/core").InputSignal<NoticeItem>;
7
+ readonly select: import("@angular/core").OutputEmitterRef<NoticeIconSelect>;
8
+ readonly clear: import("@angular/core").OutputEmitterRef<string>;
10
9
  onClick(item: NoticeItem): void;
11
10
  onClear(): void;
12
11
  static ɵfac: i0.ɵɵFactoryDeclaration<NoticeIconTabComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<NoticeIconTabComponent, "notice-icon-tab", ["noticeIconTab"], { "locale": { "alias": "locale"; "required": false; }; "data": { "alias": "data"; "required": false; }; }, { "select": "select"; "clear": "clear"; }, never, never, true, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<NoticeIconTabComponent, "notice-icon-tab", ["noticeIconTab"], { "locale": { "alias": "locale"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, { "select": "select"; "clear": "clear"; }, never, never, true, never>;
14
13
  }
@@ -1,35 +1,30 @@
1
- import { EventEmitter, OnChanges, OnDestroy, OnInit } from '@angular/core';
1
+ import { OnDestroy, OnInit } from '@angular/core';
2
2
  import { LocaleData } from '@delon/theme';
3
3
  import type { NgClassType } from 'ng-zorro-antd/core/types';
4
4
  import { NoticeIconSelect, NoticeItem } from './notice-icon.types';
5
5
  import * as i0 from "@angular/core";
6
- export declare class NoticeIconComponent implements OnInit, OnChanges, OnDestroy {
6
+ export declare class NoticeIconComponent implements OnInit, OnDestroy {
7
7
  private readonly i18n;
8
- private readonly cdr;
9
8
  private i18n$?;
10
- locale: LocaleData;
11
- data: NoticeItem[];
12
- count?: number;
13
- loading: boolean;
14
- popoverVisible: boolean;
15
- btnClass?: NgClassType;
16
- btnIconClass?: NgClassType;
17
- centered: boolean;
18
- readonly select: EventEmitter<NoticeIconSelect>;
19
- readonly clear: EventEmitter<string>;
20
- readonly popoverVisibleChange: EventEmitter<boolean>;
21
- get overlayCls(): string;
22
- delayShow: boolean;
9
+ locale: import("@angular/core").WritableSignal<LocaleData>;
10
+ data: import("@angular/core").InputSignal<NoticeItem[]>;
11
+ count: import("@angular/core").InputSignalWithTransform<number | undefined, string | number | null | undefined>;
12
+ loading: import("@angular/core").InputSignalWithTransform<boolean, string | boolean | null | undefined>;
13
+ popoverVisible: import("@angular/core").InputSignalWithTransform<boolean, string | boolean | null | undefined>;
14
+ btnClass: import("@angular/core").InputSignal<NgClassType | undefined>;
15
+ btnIconClass: import("@angular/core").InputSignal<NgClassType | undefined>;
16
+ centered: import("@angular/core").InputSignalWithTransform<boolean, string | boolean | null | undefined>;
17
+ readonly select: import("@angular/core").OutputEmitterRef<NoticeIconSelect>;
18
+ readonly clear: import("@angular/core").OutputEmitterRef<string>;
19
+ readonly popoverVisibleChange: import("@angular/core").OutputEmitterRef<boolean>;
20
+ overlayCls: import("@angular/core").WritableSignal<string>;
21
+ constructor();
22
+ delayShow: import("@angular/core").WritableSignal<boolean>;
23
23
  onVisibleChange(result: boolean): void;
24
24
  onSelect(i: NoticeIconSelect): void;
25
25
  onClear(title: string): void;
26
26
  ngOnInit(): void;
27
- ngOnChanges(): void;
28
27
  ngOnDestroy(): void;
29
28
  static ɵfac: i0.ɵɵFactoryDeclaration<NoticeIconComponent, never>;
30
- static ɵcmp: i0.ɵɵComponentDeclaration<NoticeIconComponent, "notice-icon", ["noticeIcon"], { "data": { "alias": "data"; "required": false; }; "count": { "alias": "count"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "popoverVisible": { "alias": "popoverVisible"; "required": false; }; "btnClass": { "alias": "btnClass"; "required": false; }; "btnIconClass": { "alias": "btnIconClass"; "required": false; }; "centered": { "alias": "centered"; "required": false; }; }, { "select": "select"; "clear": "clear"; "popoverVisibleChange": "popoverVisibleChange"; }, never, never, true, never>;
31
- static ngAcceptInputType_count: unknown;
32
- static ngAcceptInputType_loading: unknown;
33
- static ngAcceptInputType_popoverVisible: unknown;
34
- static ngAcceptInputType_centered: unknown;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<NoticeIconComponent, "notice-icon", ["noticeIcon"], { "data": { "alias": "data"; "required": false; "isSignal": true; }; "count": { "alias": "count"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "popoverVisible": { "alias": "popoverVisible"; "required": false; "isSignal": true; }; "btnClass": { "alias": "btnClass"; "required": false; "isSignal": true; }; "btnIconClass": { "alias": "btnIconClass"; "required": false; "isSignal": true; }; "centered": { "alias": "centered"; "required": false; "isSignal": true; }; }, { "select": "select"; "clear": "clear"; "popoverVisibleChange": "popoverVisibleChange"; }, never, never, true, never>;
35
30
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@delon/abc",
3
- "version": "18.3.0",
3
+ "version": "19.0.1",
4
4
  "author": "cipchk<cipchk@qq.com>",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -27,10 +27,10 @@
27
27
  "xlsx": "^0.18.5",
28
28
  "plyr": "^3.7.8",
29
29
  "@github/hotkey": "^3.1.1",
30
- "ngx-countdown": "^18.0.0",
31
- "@delon/theme": "^18.3.0",
32
- "@delon/util": "^18.3.0",
33
- "@delon/acl": "^18.3.0",
30
+ "ngx-countdown": "^19.0.0",
31
+ "@delon/theme": "^19.0.1",
32
+ "@delon/util": "^19.0.1",
33
+ "@delon/acl": "^19.0.1",
34
34
  "tslib": "^2.3.0"
35
35
  },
36
36
  "module": "fesm2022/abc.mjs",
@@ -41,200 +41,130 @@
41
41
  },
42
42
  ".": {
43
43
  "types": "./index.d.ts",
44
- "esm2022": "./esm2022/abc.mjs",
45
- "esm": "./esm2022/abc.mjs",
46
44
  "default": "./fesm2022/abc.mjs"
47
45
  },
48
46
  "./auto-focus": {
49
47
  "types": "./auto-focus/index.d.ts",
50
- "esm2022": "./esm2022/auto-focus/auto-focus.mjs",
51
- "esm": "./esm2022/auto-focus/auto-focus.mjs",
52
48
  "default": "./fesm2022/auto-focus.mjs"
53
49
  },
54
50
  "./avatar-list": {
55
51
  "types": "./avatar-list/index.d.ts",
56
- "esm2022": "./esm2022/avatar-list/avatar-list.mjs",
57
- "esm": "./esm2022/avatar-list/avatar-list.mjs",
58
52
  "default": "./fesm2022/avatar-list.mjs"
59
53
  },
60
54
  "./cell": {
61
55
  "types": "./cell/index.d.ts",
62
- "esm2022": "./esm2022/cell/cell.mjs",
63
- "esm": "./esm2022/cell/cell.mjs",
64
56
  "default": "./fesm2022/cell.mjs"
65
57
  },
66
58
  "./count-down": {
67
59
  "types": "./count-down/index.d.ts",
68
- "esm2022": "./esm2022/count-down/count-down.mjs",
69
- "esm": "./esm2022/count-down/count-down.mjs",
70
60
  "default": "./fesm2022/count-down.mjs"
71
61
  },
72
62
  "./date-picker": {
73
63
  "types": "./date-picker/index.d.ts",
74
- "esm2022": "./esm2022/date-picker/date-picker.mjs",
75
- "esm": "./esm2022/date-picker/date-picker.mjs",
76
64
  "default": "./fesm2022/date-picker.mjs"
77
65
  },
78
66
  "./down-file": {
79
67
  "types": "./down-file/index.d.ts",
80
- "esm2022": "./esm2022/down-file/down-file.mjs",
81
- "esm": "./esm2022/down-file/down-file.mjs",
82
68
  "default": "./fesm2022/down-file.mjs"
83
69
  },
84
70
  "./ellipsis": {
85
71
  "types": "./ellipsis/index.d.ts",
86
- "esm2022": "./esm2022/ellipsis/ellipsis.mjs",
87
- "esm": "./esm2022/ellipsis/ellipsis.mjs",
88
72
  "default": "./fesm2022/ellipsis.mjs"
89
73
  },
90
74
  "./error-collect": {
91
75
  "types": "./error-collect/index.d.ts",
92
- "esm2022": "./esm2022/error-collect/error-collect.mjs",
93
- "esm": "./esm2022/error-collect/error-collect.mjs",
94
76
  "default": "./fesm2022/error-collect.mjs"
95
77
  },
96
78
  "./exception": {
97
79
  "types": "./exception/index.d.ts",
98
- "esm2022": "./esm2022/exception/exception.mjs",
99
- "esm": "./esm2022/exception/exception.mjs",
100
80
  "default": "./fesm2022/exception.mjs"
101
81
  },
102
82
  "./footer-toolbar": {
103
83
  "types": "./footer-toolbar/index.d.ts",
104
- "esm2022": "./esm2022/footer-toolbar/footer-toolbar.mjs",
105
- "esm": "./esm2022/footer-toolbar/footer-toolbar.mjs",
106
84
  "default": "./fesm2022/footer-toolbar.mjs"
107
85
  },
108
86
  "./full-content": {
109
87
  "types": "./full-content/index.d.ts",
110
- "esm2022": "./esm2022/full-content/full-content.mjs",
111
- "esm": "./esm2022/full-content/full-content.mjs",
112
88
  "default": "./fesm2022/full-content.mjs"
113
89
  },
114
90
  "./global-footer": {
115
91
  "types": "./global-footer/index.d.ts",
116
- "esm2022": "./esm2022/global-footer/global-footer.mjs",
117
- "esm": "./esm2022/global-footer/global-footer.mjs",
118
92
  "default": "./fesm2022/global-footer.mjs"
119
93
  },
120
94
  "./hotkey": {
121
95
  "types": "./hotkey/index.d.ts",
122
- "esm2022": "./esm2022/hotkey/hotkey.mjs",
123
- "esm": "./esm2022/hotkey/hotkey.mjs",
124
96
  "default": "./fesm2022/hotkey.mjs"
125
97
  },
126
- "./let": {
127
- "types": "./let/index.d.ts",
128
- "esm2022": "./esm2022/let/let.mjs",
129
- "esm": "./esm2022/let/let.mjs",
130
- "default": "./fesm2022/let.mjs"
131
- },
132
98
  "./loading": {
133
99
  "types": "./loading/index.d.ts",
134
- "esm2022": "./esm2022/loading/loading.mjs",
135
- "esm": "./esm2022/loading/loading.mjs",
136
100
  "default": "./fesm2022/loading.mjs"
137
101
  },
138
102
  "./lodop": {
139
103
  "types": "./lodop/index.d.ts",
140
- "esm2022": "./esm2022/lodop/lodop.mjs",
141
- "esm": "./esm2022/lodop/lodop.mjs",
142
104
  "default": "./fesm2022/lodop.mjs"
143
105
  },
144
106
  "./media": {
145
107
  "types": "./media/index.d.ts",
146
- "esm2022": "./esm2022/media/media.mjs",
147
- "esm": "./esm2022/media/media.mjs",
148
108
  "default": "./fesm2022/media.mjs"
149
109
  },
150
110
  "./notice-icon": {
151
111
  "types": "./notice-icon/index.d.ts",
152
- "esm2022": "./esm2022/notice-icon/notice-icon.mjs",
153
- "esm": "./esm2022/notice-icon/notice-icon.mjs",
154
112
  "default": "./fesm2022/notice-icon.mjs"
155
113
  },
156
114
  "./observers": {
157
115
  "types": "./observers/index.d.ts",
158
- "esm2022": "./esm2022/observers/chart-observer-size.mjs",
159
- "esm": "./esm2022/observers/chart-observer-size.mjs",
160
116
  "default": "./fesm2022/chart-observer-size.mjs"
161
117
  },
162
118
  "./onboarding": {
163
119
  "types": "./onboarding/index.d.ts",
164
- "esm2022": "./esm2022/onboarding/onboarding.mjs",
165
- "esm": "./esm2022/onboarding/onboarding.mjs",
166
120
  "default": "./fesm2022/onboarding.mjs"
167
121
  },
168
122
  "./page-header": {
169
123
  "types": "./page-header/index.d.ts",
170
- "esm2022": "./esm2022/page-header/page-header.mjs",
171
- "esm": "./esm2022/page-header/page-header.mjs",
172
124
  "default": "./fesm2022/page-header.mjs"
173
125
  },
174
126
  "./pdf": {
175
127
  "types": "./pdf/index.d.ts",
176
- "esm2022": "./esm2022/pdf/pdf.mjs",
177
- "esm": "./esm2022/pdf/pdf.mjs",
178
128
  "default": "./fesm2022/pdf.mjs"
179
129
  },
180
130
  "./quick-menu": {
181
131
  "types": "./quick-menu/index.d.ts",
182
- "esm2022": "./esm2022/quick-menu/quick-menu.mjs",
183
- "esm": "./esm2022/quick-menu/quick-menu.mjs",
184
132
  "default": "./fesm2022/quick-menu.mjs"
185
133
  },
186
134
  "./result": {
187
135
  "types": "./result/index.d.ts",
188
- "esm2022": "./esm2022/result/result.mjs",
189
- "esm": "./esm2022/result/result.mjs",
190
136
  "default": "./fesm2022/result.mjs"
191
137
  },
192
138
  "./reuse-tab": {
193
139
  "types": "./reuse-tab/index.d.ts",
194
- "esm2022": "./esm2022/reuse-tab/reuse-tab.mjs",
195
- "esm": "./esm2022/reuse-tab/reuse-tab.mjs",
196
140
  "default": "./fesm2022/reuse-tab.mjs"
197
141
  },
198
142
  "./se": {
199
143
  "types": "./se/index.d.ts",
200
- "esm2022": "./esm2022/se/se.mjs",
201
- "esm": "./esm2022/se/se.mjs",
202
144
  "default": "./fesm2022/se.mjs"
203
145
  },
204
146
  "./sg": {
205
147
  "types": "./sg/index.d.ts",
206
- "esm2022": "./esm2022/sg/sg.mjs",
207
- "esm": "./esm2022/sg/sg.mjs",
208
148
  "default": "./fesm2022/sg.mjs"
209
149
  },
210
150
  "./st": {
211
151
  "types": "./st/index.d.ts",
212
- "esm2022": "./esm2022/st/st.mjs",
213
- "esm": "./esm2022/st/st.mjs",
214
152
  "default": "./fesm2022/st.mjs"
215
153
  },
216
154
  "./sv": {
217
155
  "types": "./sv/index.d.ts",
218
- "esm2022": "./esm2022/sv/sv.mjs",
219
- "esm": "./esm2022/sv/sv.mjs",
220
156
  "default": "./fesm2022/sv.mjs"
221
157
  },
222
158
  "./tag-select": {
223
159
  "types": "./tag-select/index.d.ts",
224
- "esm2022": "./esm2022/tag-select/tag-select.mjs",
225
- "esm": "./esm2022/tag-select/tag-select.mjs",
226
160
  "default": "./fesm2022/tag-select.mjs"
227
161
  },
228
162
  "./xlsx": {
229
163
  "types": "./xlsx/index.d.ts",
230
- "esm2022": "./esm2022/xlsx/xlsx.mjs",
231
- "esm": "./esm2022/xlsx/xlsx.mjs",
232
164
  "default": "./fesm2022/xlsx.mjs"
233
165
  },
234
166
  "./zip": {
235
167
  "types": "./zip/index.d.ts",
236
- "esm2022": "./esm2022/zip/zip.mjs",
237
- "esm": "./esm2022/zip/zip.mjs",
238
168
  "default": "./fesm2022/zip.mjs"
239
169
  }
240
170
  },
@@ -9,5 +9,6 @@ export { ReuseTabModule } from './reuse-tab.module';
9
9
  export * from './reuse-tab.interfaces';
10
10
  export * from './lifecycle_hooks';
11
11
  export * from './reuse-tab.state';
12
- export { REUSE_TAB_CACHED_MANAGER, ReuseTabCachedManager } from './reuse-tab.cache';
12
+ export { REUSE_TAB_CACHED_MANAGER } from './reuse-tab.cache';
13
+ export type { ReuseTabCachedManager } from './reuse-tab.cache';
13
14
  export * from './provide';
@@ -11,6 +11,7 @@ export interface STColumnSourceProcessOptions {
11
11
  widthMode: STWidthMode;
12
12
  resizable?: STResizable;
13
13
  safeType: STColumnSafeType;
14
+ expand: boolean;
14
15
  }
15
16
  export declare class STColumnSource {
16
17
  private dom;
@@ -1,7 +1,7 @@
1
1
  import { EventEmitter } from '@angular/core';
2
- import { LocaleData } from '@delon/theme';
3
- import { STColumnFilter, STColumnFilterMenu, STIcon } from './st.interfaces';
4
- import { _STColumn } from './st.types';
2
+ import type { LocaleData } from '@delon/theme';
3
+ import type { STColumnFilter, STColumnFilterMenu, STIcon } from './st.interfaces';
4
+ import type { _STColumn } from './st.types';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class STFilterComponent {
7
7
  private readonly cdr;
@@ -19,5 +19,5 @@ export declare class STFilterComponent {
19
19
  confirm(): this;
20
20
  reset(): this;
21
21
  static ɵfac: i0.ɵɵFactoryDeclaration<STFilterComponent, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<STFilterComponent, "st-filter", never, { "col": { "alias": "col"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "f": { "alias": "f"; "required": false; }; }, { "n": "n"; "handle": "handle"; }, never, never, false, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<STFilterComponent, "st-filter", never, { "col": { "alias": "col"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "f": { "alias": "f"; "required": false; }; }, { "n": "n"; "handle": "handle"; }, never, never, true, never>;
23
23
  }
@@ -16,5 +16,5 @@ export declare class STRowDirective implements OnInit {
16
16
  type?: 'title';
17
17
  ngOnInit(): void;
18
18
  static ɵfac: i0.ɵɵFactoryDeclaration<STRowDirective, never>;
19
- static ɵdir: i0.ɵɵDirectiveDeclaration<STRowDirective, "[st-row]", never, { "id": { "alias": "st-row"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, {}, never, never, false, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<STRowDirective, "[st-row]", never, { "id": { "alias": "st-row"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, {}, never, never, true, never>;
20
20
  }
@@ -8,5 +8,5 @@ export declare class STWidgetHostDirective implements OnInit {
8
8
  column: STColumn;
9
9
  ngOnInit(): void;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<STWidgetHostDirective, never>;
11
- static ɵdir: i0.ɵɵDirectiveDeclaration<STWidgetHostDirective, "[st-widget-host]", never, { "record": { "alias": "record"; "required": false; }; "column": { "alias": "column"; "required": false; }; }, {}, never, never, false, never>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<STWidgetHostDirective, "[st-widget-host]", never, { "record": { "alias": "record"; "required": false; }; "column": { "alias": "column"; "required": false; }; }, {}, never, never, true, never>;
12
12
  }
@@ -7,9 +7,32 @@ import type { NzSafeAny } from 'ng-zorro-antd/core/types';
7
7
  import { NzDropdownMenuComponent } from 'ng-zorro-antd/dropdown';
8
8
  import { NzResizeEvent } from 'ng-zorro-antd/resizable';
9
9
  import { NzTableComponent } from 'ng-zorro-antd/table';
10
- import type { STChange, STClickRowClassName, STColumn, STColumnButton, STColumnSelection, STContextmenuFn, STContextmenuItem, STCustomRequestOptions, STData, STError, STExportOptions, STLoadOptions, STPage, STReq, STRes, STResetColumnsOption, STResizable, STRowClassName, STSingleSort, STStatisticalResults, STWidthMode } from './st.interfaces';
10
+ import type { STChange, STClickRowClassName, STColumn, STColumnButton, STColumnSelection, STContextmenuFn, STContextmenuItem, STCustomRequestOptions, STData, STDragOptions, STError, STExportOptions, STLoadOptions, STPage, STReq, STRes, STResetColumnsOption, STResizable, STRowClassName, STSingleSort, STStatisticalResults, STWidthMode } from './st.interfaces';
11
11
  import type { _STColumn, _STHeader, _STTdNotify } from './st.types';
12
12
  import * as i0 from "@angular/core";
13
+ export declare class STTdComponent {
14
+ private readonly stComp;
15
+ private readonly router;
16
+ private readonly modalHelper;
17
+ private readonly drawerHelper;
18
+ c: _STColumn;
19
+ cIdx: number;
20
+ data: STData[];
21
+ i: STData;
22
+ index: number;
23
+ readonly n: EventEmitter<_STTdNotify>;
24
+ private get routerState();
25
+ private report;
26
+ _checkbox(value: boolean): void;
27
+ _radio(): void;
28
+ _link(e: Event): boolean;
29
+ _client(): void;
30
+ _stopPropagation(ev: Event): void;
31
+ _btn(btn: STColumnButton, ev?: Event): void;
32
+ private btnCallback;
33
+ static ɵfac: i0.ɵɵFactoryDeclaration<STTdComponent, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<STTdComponent, "st-td", never, { "c": { "alias": "c"; "required": false; }; "cIdx": { "alias": "cIdx"; "required": false; }; "data": { "alias": "data"; "required": false; }; "i": { "alias": "i"; "required": false; }; "index": { "alias": "index"; "required": false; }; }, { "n": "n"; }, never, never, true, never>;
35
+ }
13
36
  export declare class STComponent implements AfterViewInit, OnChanges {
14
37
  private readonly i18nSrv;
15
38
  private readonly el;
@@ -65,6 +88,7 @@ export declare class STComponent implements AfterViewInit, OnChanges {
65
88
  x?: string | null;
66
89
  y?: string | null;
67
90
  };
91
+ drag: import("@angular/core").InputSignalWithTransform<STDragOptions | null, string | boolean | STDragOptions | null | undefined>;
68
92
  singleSort?: STSingleSort | null;
69
93
  private _multiSort?;
70
94
  get multiSort(): NzSafeAny;
@@ -206,6 +230,13 @@ export declare class STComponent implements AfterViewInit, OnChanges {
206
230
  setRow(index: number | STData, item: STData, options?: {
207
231
  refreshSchema?: boolean;
208
232
  emitReload?: boolean;
233
+ /**
234
+ *
235
+ * @param arrayProcessMethod 数组处理方式
236
+ * - `true` 表示替换新值,不管新值为哪种类型
237
+ * - `false` 表示会合并整个数组(将旧数据与新数据合并成新数组)
238
+ */
239
+ arrayProcessMethod?: boolean;
209
240
  }): this;
210
241
  sort(col: _STColumn, value: NzSafeAny): void;
211
242
  clearSort(): this;
@@ -246,7 +277,7 @@ export declare class STComponent implements AfterViewInit, OnChanges {
246
277
  [P in keyof this]?: SimpleChange;
247
278
  } & SimpleChanges): void;
248
279
  static ɵfac: i0.ɵɵFactoryDeclaration<STComponent, never>;
249
- static ɵcmp: i0.ɵɵComponentDeclaration<STComponent, "st", ["st"], { "req": { "alias": "req"; "required": false; }; "res": { "alias": "res"; "required": false; }; "page": { "alias": "page"; "required": false; }; "data": { "alias": "data"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "contextmenu": { "alias": "contextmenu"; "required": false; }; "ps": { "alias": "ps"; "required": false; }; "pi": { "alias": "pi"; "required": false; }; "total": { "alias": "total"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "loadingDelay": { "alias": "loadingDelay"; "required": false; }; "loadingIndicator": { "alias": "loadingIndicator"; "required": false; }; "bordered": { "alias": "bordered"; "required": false; }; "size": { "alias": "size"; "required": false; }; "scroll": { "alias": "scroll"; "required": false; }; "singleSort": { "alias": "singleSort"; "required": false; }; "multiSort": { "alias": "multiSort"; "required": false; }; "rowClassName": { "alias": "rowClassName"; "required": false; }; "clickRowClassName": { "alias": "clickRowClassName"; "required": false; }; "widthMode": { "alias": "widthMode"; "required": false; }; "widthConfig": { "alias": "widthConfig"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "header": { "alias": "header"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "footer": { "alias": "footer"; "required": false; }; "bodyHeader": { "alias": "bodyHeader"; "required": false; }; "body": { "alias": "body"; "required": false; }; "expandRowByClick": { "alias": "expandRowByClick"; "required": false; }; "expandAccordion": { "alias": "expandAccordion"; "required": false; }; "expand": { "alias": "expand"; "required": false; }; "expandIcon": { "alias": "expandIcon"; "required": false; }; "noResult": { "alias": "noResult"; "required": false; }; "responsive": { "alias": "responsive"; "required": false; }; "responsiveHideHeaderFooter": { "alias": "responsiveHideHeaderFooter"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "virtualItemSize": { "alias": "virtualItemSize"; "required": false; }; "virtualMaxBufferPx": { "alias": "virtualMaxBufferPx"; "required": false; }; "virtualMinBufferPx": { "alias": "virtualMinBufferPx"; "required": false; }; "customRequest": { "alias": "customRequest"; "required": false; }; "virtualForTrackBy": { "alias": "virtualForTrackBy"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; }, { "error": "error"; "change": "change"; }, never, never, false, never>;
280
+ static ɵcmp: i0.ɵɵComponentDeclaration<STComponent, "st", ["st"], { "req": { "alias": "req"; "required": false; }; "res": { "alias": "res"; "required": false; }; "page": { "alias": "page"; "required": false; }; "data": { "alias": "data"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "contextmenu": { "alias": "contextmenu"; "required": false; }; "ps": { "alias": "ps"; "required": false; }; "pi": { "alias": "pi"; "required": false; }; "total": { "alias": "total"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "loadingDelay": { "alias": "loadingDelay"; "required": false; }; "loadingIndicator": { "alias": "loadingIndicator"; "required": false; }; "bordered": { "alias": "bordered"; "required": false; }; "size": { "alias": "size"; "required": false; }; "scroll": { "alias": "scroll"; "required": false; }; "drag": { "alias": "drag"; "required": false; "isSignal": true; }; "singleSort": { "alias": "singleSort"; "required": false; }; "multiSort": { "alias": "multiSort"; "required": false; }; "rowClassName": { "alias": "rowClassName"; "required": false; }; "clickRowClassName": { "alias": "clickRowClassName"; "required": false; }; "widthMode": { "alias": "widthMode"; "required": false; }; "widthConfig": { "alias": "widthConfig"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "header": { "alias": "header"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "footer": { "alias": "footer"; "required": false; }; "bodyHeader": { "alias": "bodyHeader"; "required": false; }; "body": { "alias": "body"; "required": false; }; "expandRowByClick": { "alias": "expandRowByClick"; "required": false; }; "expandAccordion": { "alias": "expandAccordion"; "required": false; }; "expand": { "alias": "expand"; "required": false; }; "expandIcon": { "alias": "expandIcon"; "required": false; }; "noResult": { "alias": "noResult"; "required": false; }; "responsive": { "alias": "responsive"; "required": false; }; "responsiveHideHeaderFooter": { "alias": "responsiveHideHeaderFooter"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "virtualItemSize": { "alias": "virtualItemSize"; "required": false; }; "virtualMaxBufferPx": { "alias": "virtualMaxBufferPx"; "required": false; }; "virtualMinBufferPx": { "alias": "virtualMinBufferPx"; "required": false; }; "customRequest": { "alias": "customRequest"; "required": false; }; "virtualForTrackBy": { "alias": "virtualForTrackBy"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; }, { "error": "error"; "change": "change"; }, never, never, true, never>;
250
281
  static ngAcceptInputType_ps: unknown;
251
282
  static ngAcceptInputType_pi: unknown;
252
283
  static ngAcceptInputType_total: unknown;
@@ -262,25 +293,3 @@ export declare class STComponent implements AfterViewInit, OnChanges {
262
293
  static ngAcceptInputType_virtualMaxBufferPx: unknown;
263
294
  static ngAcceptInputType_virtualMinBufferPx: unknown;
264
295
  }
265
- export declare class STTdComponent {
266
- private readonly stComp;
267
- private readonly router;
268
- private readonly modalHelper;
269
- private readonly drawerHelper;
270
- c: _STColumn;
271
- cIdx: number;
272
- data: STData[];
273
- i: STData;
274
- index: number;
275
- readonly n: EventEmitter<_STTdNotify>;
276
- private get routerState();
277
- private report;
278
- _checkbox(value: boolean): void;
279
- _radio(): void;
280
- _link(e: Event): boolean;
281
- _stopPropagation(ev: Event): void;
282
- _btn(btn: STColumnButton, ev?: Event): void;
283
- private btnCallback;
284
- static ɵfac: i0.ɵɵFactoryDeclaration<STTdComponent, never>;
285
- static ɵcmp: i0.ɵɵComponentDeclaration<STTdComponent, "st-td", never, { "c": { "alias": "c"; "required": false; }; "cIdx": { "alias": "cIdx"; "required": false; }; "data": { "alias": "data"; "required": false; }; "i": { "alias": "i"; "required": false; }; "index": { "alias": "index"; "required": false; }; }, { "n": "n"; }, never, never, false, never>;
286
- }