|
1 | | -import { AssetsJson, ComponentDescription } from '@alilc/lowcode-types'; |
2 | | - |
| 1 | +/* eslint-disable no-param-reassign */ |
| 2 | +import { AssetsJson, ComponentDescription, Package, RemoteComponentDescription } from '@alilc/lowcode-types'; |
3 | 3 |
|
| 4 | +// TODO: 该转换逻辑未来需要消化掉 |
4 | 5 | export function assetsTransform(assets: AssetsJson) { |
5 | 6 | const { components, packages } = assets; |
6 | | - const packageMaps = (packages || []).reduce((acc, cur) => { |
7 | | - const key = (cur.id || cur.package) as string; |
| 7 | + const packageMaps = (packages || []).reduce((acc: Record<string, Package>, cur: Package) => { |
| 8 | + const key = cur.id || cur.package || ''; |
8 | 9 | acc[key] = cur; |
9 | 10 | return acc; |
10 | 11 | }, {} as any); |
11 | | - components.forEach((componentDesc) => { |
12 | | - let { devMode, schema, reference } = componentDesc as ComponentDescription; |
| 12 | + components.forEach((componentDesc: ComponentDescription | RemoteComponentDescription) => { |
| 13 | + let { devMode, schema, reference } = componentDesc; |
13 | 14 | if ((devMode as string) === 'lowcode') { |
14 | 15 | devMode = 'lowCode'; |
15 | 16 | } else if (devMode === 'proCode') { |
16 | 17 | devMode = 'proCode'; |
17 | 18 | } |
18 | 19 | if (devMode) { |
19 | | - (componentDesc as ComponentDescription).devMode = devMode; |
| 20 | + componentDesc.devMode = devMode; |
20 | 21 | } |
21 | 22 | if (devMode === 'lowCode' && !schema && reference) { |
22 | | - (componentDesc as ComponentDescription).schema = packageMaps[reference.id as string].schema; |
| 23 | + const referenceId = reference.id || ''; |
| 24 | + componentDesc.schema = packageMaps[referenceId].schema; |
23 | 25 | } |
24 | 26 | }); |
25 | 27 | return assets; |
|
0 commit comments