mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-01-30 15:28:18 +00:00
fix: remove as Type
This commit is contained in:
parent
6aa02e612f
commit
5d042dd533
@ -1,25 +1,27 @@
|
|||||||
import { AssetsJson, ComponentDescription } from '@alilc/lowcode-types';
|
/* eslint-disable no-param-reassign */
|
||||||
|
import { AssetsJson, ComponentDescription, Package, RemoteComponentDescription } from '@alilc/lowcode-types';
|
||||||
|
|
||||||
|
// TODO: 该转换逻辑未来需要消化掉
|
||||||
export function assetsTransform(assets: AssetsJson) {
|
export function assetsTransform(assets: AssetsJson) {
|
||||||
const { components, packages } = assets;
|
const { components, packages } = assets;
|
||||||
const packageMaps = (packages || []).reduce((acc, cur) => {
|
const packageMaps = (packages || []).reduce((acc: Record<string, Package>, cur: Package) => {
|
||||||
const key = (cur.id || cur.package) as string;
|
const key = cur.id || cur.package || '';
|
||||||
acc[key] = cur;
|
acc[key] = cur;
|
||||||
return acc;
|
return acc;
|
||||||
}, {} as any);
|
}, {} as any);
|
||||||
components.forEach((componentDesc) => {
|
components.forEach((componentDesc: ComponentDescription | RemoteComponentDescription) => {
|
||||||
let { devMode, schema, reference } = componentDesc as ComponentDescription;
|
let { devMode, schema, reference } = componentDesc;
|
||||||
if ((devMode as string) === 'lowcode') {
|
if ((devMode as string) === 'lowcode') {
|
||||||
devMode = 'lowCode';
|
devMode = 'lowCode';
|
||||||
} else if (devMode === 'proCode') {
|
} else if (devMode === 'proCode') {
|
||||||
devMode = 'proCode';
|
devMode = 'proCode';
|
||||||
}
|
}
|
||||||
if (devMode) {
|
if (devMode) {
|
||||||
(componentDesc as ComponentDescription).devMode = devMode;
|
componentDesc.devMode = devMode;
|
||||||
}
|
}
|
||||||
if (devMode === 'lowCode' && !schema && reference) {
|
if (devMode === 'lowCode' && !schema && reference) {
|
||||||
(componentDesc as ComponentDescription).schema = packageMaps[reference.id as string].schema;
|
const referenceId = reference.id || '';
|
||||||
|
componentDesc.schema = packageMaps[referenceId].schema;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return assets;
|
return assets;
|
||||||
|
|||||||
@ -2,6 +2,7 @@ import { Snippet, ComponentMetadata } from './metadata';
|
|||||||
import { I18nData } from './i18n';
|
import { I18nData } from './i18n';
|
||||||
import { Reference } from './npm';
|
import { Reference } from './npm';
|
||||||
import { EitherOr } from './utils';
|
import { EitherOr } from './utils';
|
||||||
|
import { ComponentSchema } from './schema';
|
||||||
|
|
||||||
export interface AssetItem {
|
export interface AssetItem {
|
||||||
type: AssetType;
|
type: AssetType;
|
||||||
@ -148,6 +149,10 @@ export type Package = EitherOr<{
|
|||||||
* 组件描述导出名字,可以通过 window[exportName] 获取到组件描述的 Object 内容;
|
* 组件描述导出名字,可以通过 window[exportName] 获取到组件描述的 Object 内容;
|
||||||
*/
|
*/
|
||||||
exportName?: string;
|
exportName?: string;
|
||||||
|
/**
|
||||||
|
* 低代码组件 schema 内容
|
||||||
|
*/
|
||||||
|
schema?: ComponentSchema;
|
||||||
}, 'package', 'id'>;
|
}, 'package', 'id'>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -223,7 +228,7 @@ export interface ComponentDescription extends ComponentMetadata {
|
|||||||
/**
|
/**
|
||||||
* 远程物料描述
|
* 远程物料描述
|
||||||
*/
|
*/
|
||||||
export interface RemoteComponentDescription {
|
export interface RemoteComponentDescription extends ComponentMetadata {
|
||||||
/**
|
/**
|
||||||
* 组件描述导出名字,可以通过 window[exportName] 获取到组件描述的 Object 内容;
|
* 组件描述导出名字,可以通过 window[exportName] 获取到组件描述的 Object 内容;
|
||||||
*/
|
*/
|
||||||
@ -233,9 +238,14 @@ export interface RemoteComponentDescription {
|
|||||||
*/
|
*/
|
||||||
url?: string;
|
url?: string;
|
||||||
/**
|
/**
|
||||||
* 组件(库)的 npm 信息;
|
* 组件 (库) 的 npm 信息;
|
||||||
*/
|
*/
|
||||||
package?: {
|
package?: {
|
||||||
npm?: string;
|
npm?: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 替代 npm 字段的升级版本
|
||||||
|
*/
|
||||||
|
reference?: Reference;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user