-
-## setter 配置
-| 属性名 | 说明 |
-| --- | --- |
-| defaultValue | 默认值 |
-
-## 返回类型
-String
-
-会返回 options 中的 value 值
diff --git a/docs/docs/guide/appendix/setterDetails/event.md b/docs/docs/guide/appendix/setterDetails/event.md
deleted file mode 100644
index b690b308f..000000000
--- a/docs/docs/guide/appendix/setterDetails/event.md
+++ /dev/null
@@ -1,82 +0,0 @@
----
-title: EventSetter
----
-## 简介
-可以将事件绑定在物料上
-## 展示
-
-
-
-## 组件自带事件列表
-
-在物料协议的 configure.supports.events 中声明
-
-```json
-{
- "configure ": {
- "supports": {
- "style": true,
- "events": [{
- "name": "onChange"
- }, {
- "name": "onExpand"
- }, {
- "name": "onVisibleChange"
- }]
- }
- }
-}
-```
-
-## 事件绑定
-
-
-可以选择已有的事件 (schema 中的**methods**节点) 进行绑定,也可以选择新建事件,选择新建事件默认会增加_new 的事件后缀命名,点确定以后会跳转到对应代码插件对应区块。
-
-## 参数设置
-
-如果需要额外传参,需要将扩展参数设置打开,在代码面板中,编辑参数内容。
-
-注意:
-
-- 额外参数必须被包装成一个对象,如参数模板中所示
-- 可以使用动态变量例如 (this.items,this.state.xxx)
- ```javascript
- {
- testKey: this.state.text,
- }
- ```
-
-- 该参数是额外参数,会加在原有参数后面,例如在 onClick 中加入扩展传参,最终函数消费的时候应该如下所示
- ```javascript
- // e 为 onClick 原有函数传参,extParams 为自定义传参
- onClick(e, extParams) {
- this.setState({
- isShowDialog: extParams.isShowDialog,
- });
- }
- ```
-## 事件新建函数模板
-有时候我们创建的函数会有用到一些通用的函数模板,我们可以在物料协议的 events.template 中创建一个模板,如下
-
-```json
-{
- "configure ": {
- "supports": {
- "style": true,
- "events": [{
- "name": "onChange",
- "template": "templeteTest(e,${extParams}){this.setState({isShowDialog: false})}"
- }, {
- "name": "onExpand"
- }, {
- "name": "onVisibleChange"
- }]
- }
- }
-}
-```
-
-其中 ${extParams} 为扩展参数占位符,如果用户没有声明扩展参数,会移除对应的参数声明,定义模板后,每次创建完函数会自动生成模板函数,如下图
-
-
diff --git a/docs/docs/guide/appendix/setterDetails/function.md b/docs/docs/guide/appendix/setterDetails/function.md
deleted file mode 100644
index 3135d8597..000000000
--- a/docs/docs/guide/appendix/setterDetails/function.md
+++ /dev/null
@@ -1,74 +0,0 @@
----
-title: FunctionSetter
----
-## 简介
-可以将function绑定在物料上
-
-## 设置器返回
-
-设置器返回一个Function对象,调用function()运行Function对象得到运行结果。
-
-如下是一个典型的使用案例:
-
-```javascript
-export type TestProps = React.ComponentProps
-
-## setter 配置
-
-| **属性名** | **类型** | **说明** |
-| --- | --- | --- |
-| type | String | 选择器返回类型 **可选值**: "string" \| "node" |
-| defaultValue | String | ReactNode | 默认值 |
-| hasClear | Boolean | 选择器是否显示清除按钮 |
-| icons | Array | 自定义 icon 集合;默认值详见[图标可选值](#图标可选值) |
-| placeholder | String | 没有值的时候的占位符 |
-
-## 返回类型
-
-String | ReactNode
-
-## 图标可选值
-
-```javascript
-[
- 'smile',
- 'cry',
- 'success',
- 'warning',
- 'prompt',
- 'error',
- 'help',
- 'clock',
- 'success-filling',
- 'delete-filling',
- 'favorites-filling',
- 'add',
- 'minus',
- 'arrow-up',
- 'arrow-down',
- 'arrow-left',
- 'arrow-right',
- 'arrow-double-left',
- 'arrow-double-right',
- 'switch',
- 'sorting',
- 'descending',
- 'ascending',
- 'select',
- 'semi-select',
- 'loading',
- 'search',
- 'close',
- 'ellipsis',
- 'picture',
- 'calendar',
- 'ashbin',
- 'upload',
- 'download',
- 'set',
- 'edit',
- 'refresh',
- 'filter',
- 'attachment',
- 'account',
- 'email',
- 'atm',
- 'copy',
- 'exit',
- 'eye',
- 'eye-close',
- 'toggle-left',
- 'toggle-right',
- 'lock',
- 'unlock',
- 'chart-pie',
- 'chart-bar',
- 'form',
- 'detail',
- 'list',
- 'dashboard',
-]
-```
diff --git a/docs/docs/guide/appendix/setterDetails/mixed.md b/docs/docs/guide/appendix/setterDetails/mixed.md
deleted file mode 100644
index a575189e5..000000000
--- a/docs/docs/guide/appendix/setterDetails/mixed.md
+++ /dev/null
@@ -1,17 +0,0 @@
----
-title: MixedSetter
----
-
-## 简介
-
-可以让属性同时支持多个 setter
-
-## 展示
-
-
-
-## 配置
-
-| **属性名** | **类型** | **说明** |
-| ---------- | --------------- | ---------- |
-| setters | `Array
-
-## setter 配置
-| 属性名 | 说明 |
-| --- | --- |
-| min, max | 指定最大最小值 |
-| defaultValue | 默认值 |
-| step | 指定步长 number |
-| units | 指定单位 string |
-| precision | 设置小数位数 number |
-
-## 返回类型
-Number
-
-会返回 value 值
diff --git a/docs/docs/guide/appendix/setterDetails/radioGroup.md b/docs/docs/guide/appendix/setterDetails/radioGroup.md
deleted file mode 100644
index 0973e13b1..000000000
--- a/docs/docs/guide/appendix/setterDetails/radioGroup.md
+++ /dev/null
@@ -1,23 +0,0 @@
----
-title: RadioGroupSetter
----
-
-## 简介
-
-用于直观的展示选择并选择。
-
-## 展示
-
-
-
-## setter 配置
-
-| 属性名 | 说明 |
-| ------------ | ------------------------------------------------------------------------------------ | ----------------------- |
-| defaultValue | 默认值 |
-| options | 传入的数据源,**参数格式**: `[{img: 'url', value: 'text', label/title: 'text'}, ...] | [ 'text', 'text', ...]` |
-
-## 返回类型
-
-String | Number | Boolean
-会返回 options 中的 value 值
diff --git a/docs/docs/guide/appendix/setterDetails/select.md b/docs/docs/guide/appendix/setterDetails/select.md
deleted file mode 100644
index 917f898b0..000000000
--- a/docs/docs/guide/appendix/setterDetails/select.md
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: SelectSetter
----
-
-## 简介
-
-用来选择组件。在限定的可选性内进行选择,核心能力是选择
-
-## 展示
-
-
-
-## setter 配置
-
-| 属性名 | 说明 |
-| ------------ | -------------------------------------------------------------------------- |
-| mode | 选择器模式 可选值: 'single', 'multiple', 'tag' |
-| defaultValue | 默认值 |
-| options | 传入的数据源,**参数格式**: `[ {label/title: '文字', value: 'text'}, ...]` |
-
-## 返回类型
-
-String | Number | Boolean
-会返回 options 中的 value 值
diff --git a/docs/docs/guide/appendix/setterDetails/slot.md b/docs/docs/guide/appendix/setterDetails/slot.md
deleted file mode 100644
index 8ea3c9c4b..000000000
--- a/docs/docs/guide/appendix/setterDetails/slot.md
+++ /dev/null
@@ -1,101 +0,0 @@
----
-title: SlotSetter
----
-
-## 简介
-
-通过一个开启一个 slot(插槽),可以在物料特定的一个位置渲染一个或者多个节点。slot 比较适合物料的局部自定义渲染。
-
-## 展示
-
-
-
-
-
-## setter 配置
-
-| 属性名 | 类型 | 说明 |
-| ------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| initialValue | Object | 默认值 `{ "type": "JSSlot", "params": [ "module" ], "value": [] }` params:接收函数的入参,可以直接在slot节点中消费,通过this.module (这里module是示例值,可根据实际函数入参更改) value:可以定义一个节点,每次打开插槽的时候默认填充一个节点 |
-| hideParams | boolean | 是否隐藏入参,注意该值只能隐藏入参的输入框,适合单行展示,实际渲染的时候,还是会传入 params 的参数,和 params:[] 不同 |
-| checkedText | string | switch 选中文案,默认显示"启用" |
-| unCheckedText | string | switch 取消文案,默认显示"关闭" |
-
-## 配置示例
-
-### 配置
-
-```typescript
-{
- name: 'propName',
- title: 'propTitle',
- setter: {
- componentName: 'SlotSetter',
- isRequired: true,
- title: '组件坑位',
- initialValue: {
- type: 'JSSlot',
- value: [],
- },
- }
- }
-```
-
-### 组件
-
-```typescript
-function A(props) {
- return props.propName;
-}
-```
-
-## 带参数的插槽示例
-
-### 配置
-
-```typescript
-{
- name: 'propName',
- title: 'propTitle',
- setter: {
- componentName: 'SlotSetter',
- isRequired: true,
- title: '组件坑位',
- initialValue: {
- type: 'JSSlot',
- params: [ 'module'],
- value: [],
- },
- }
-}
-```
-
-### 组件
-
-组件需要传参数进行渲染,和普通示例的使用不一样。
-
-```typescript
-function A(props) {
- const module = [];
- return props.propName(module);
-}
-```
-
-### param 使用示例
-
-1.开启插槽
-
-
-
-2.拖拽组件到插槽中
-
-
-
-3.在插槽内组件中使用变量绑定,绑定 this.xxx
-
-xxx 入参的配置
-
-
diff --git a/docs/docs/guide/appendix/setterDetails/string.md b/docs/docs/guide/appendix/setterDetails/string.md
deleted file mode 100644
index c30bba770..000000000
--- a/docs/docs/guide/appendix/setterDetails/string.md
+++ /dev/null
@@ -1,18 +0,0 @@
----
-title: StringSetter
----
-## 简介
-
-用来展示和修改字符串类型的属性值,不可换行
-## 展示
-
-
-
-## setter 配置
-
-| 属性名 | 说明 |
-| --- | --- |
-| placeholder | 输入提示 |
-
-## 返回类型
-String
diff --git a/docs/docs/guide/appendix/setterDetails/style.md b/docs/docs/guide/appendix/setterDetails/style.md
deleted file mode 100644
index 5bdbe6111..000000000
--- a/docs/docs/guide/appendix/setterDetails/style.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-title: StyleSetter
----
-
-## 简介
-
-通过开启 StyleSetter,我们可以将样式配置面板来配置样式属性。
-
-## 展示
-
-
-
-## setter 配置
-
-| 属性名 | 类型 | 说明 |
-| ----------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- |
-| unit | String | 默认值 px
|
-| placeholderScale | Number | 默认计算尺寸缩放 默认值为 1
在没有设定数值的时候,系统会通过 window.getComputedStyle 来计算展示的数值。在某些场景下,例如手机场景,在编辑器展示的是 375 的实际宽度,但是实际设计尺寸是 750 的宽度,这个时候需要对这个计算尺寸设成 2 |
-| showModuleList | String[] | 默认值 ['background', 'border', 'font', 'layout', 'position'] 分别对应背景、边框、文字、布局、位置五个区块,可以针对不同的场景按需进行展示。 例如文字的组件,我不需要修改边框的样式,就可以把边框模块隐藏掉 |
-| isShowCssCode | Boolean | 默认值: true, 是否展示css源码编辑 |
-| layoutPropsConfig | Object | 布局样式设置 |
-| layoutPropsConfig.showDisPlayList | String[] | 默认值 ['inline', 'flex', 'block', 'inline-block', 'none']
可按需展示 |
-| layoutPropsConfig.isShowPadding | String | 默认值 true
是否展示内边距(四个边) | |
-| layoutPropsConfig.isShowMargin | Boolean | 默认值 true
是否展示外边距(四个边) | |
-| layoutPropsConfig.isShowWidthHeight | Boolean | 默认值 true
是否展示宽高 |
-| fontPropsConfig | Object | 文字样式设置 |
-| fontPropsConfig.fontFamilyList | Array | `[ { value: 'Helvetica', label: 'Helvetica' }, { value: 'Arial', label: 'Arial' }]` 可以定制文字字体选项 |
-| positionPropsConfig | Object | 位置样式设置 |
-| positionPropsConfig.isShowFloat | Boolean | 默认 true 是否展示浮动 |
-| positionPropsConfig.isShowClear | Boolean | 默认 true 是否展示清除浮动 |
diff --git a/docs/docs/guide/appendix/setterDetails/textArea.md b/docs/docs/guide/appendix/setterDetails/textArea.md
deleted file mode 100644
index eff698b3d..000000000
--- a/docs/docs/guide/appendix/setterDetails/textArea.md
+++ /dev/null
@@ -1,16 +0,0 @@
----
-title: TextAreaSetter
----
-## 简介
-表单输入组件。
-## 展示
-
-
-
-## setter 配置
-| **属性名** | **类型** | **说明** |
-| --- | --- | --- |
-| placeholder | String | 输入提示 |
-
-## 返回类型
-String
diff --git a/docs/docs/guide/appendix/setterDetails/variable.md b/docs/docs/guide/appendix/setterDetails/variable.md
deleted file mode 100644
index ed7d78c5b..000000000
--- a/docs/docs/guide/appendix/setterDetails/variable.md
+++ /dev/null
@@ -1,16 +0,0 @@
----
-title: VariableSetter
----
-## 简介
-
-用来给属性值设定变量
-
-## 展示
-
-
-
-
-## 变量列表
-包含所有的在协议中的**state**(state 属性) 节点数据和**methods**(自定义处理函数) 节点数据
diff --git a/docs/docs/guide/appendix/setters.md b/docs/docs/guide/appendix/setters.md
deleted file mode 100644
index edfdc3813..000000000
--- a/docs/docs/guide/appendix/setters.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-title: 预置设置器列表
-sidebar_position: 4
----
-
-| 预置 Setter | 返回类型 | 用途 | 截图 |
-| ---------------------------------------------- | ----------------------------------- | ----------------------------------------- | --------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
-| [ArraySetter](./setterDetails/array) | T[] | 列表数组行数据设置器 |  |
-| [BoolSetter](./setterDetails/behavior) | boolean | 布尔型数据设置器, |  |
-| ClassNameSetter | string | 样式名设置器 |  |
-| [ColorSetter](./setterDetails/color) | string | 颜色设置器 |  |
-| DateMonthSetter | | 日期型 - 月数据设置器 | |
-| DateRangeSetter | | 日期型数据设置器,可选择时间区间 | |
-| DateSetter | | 日期型数据设置器 | |
-| DateYearSetter | | 日期型 - 年数据设置器 | |
-| [EventSetter](./setterDetails/event) | function | 事件绑定设置器 |  |
-| [IconSetter](./setterDetails/icon) | string | 图标设置器 |  |
-| [FunctionSetter](./setterDetails/function) | function | 函数型数据设置器 |  |
-| JsonSetter | object | json 型数据设置器 |  |
-| [MixedSetter](./setterDetails/mixed) | any | 混合型数据设置器 |  |
-| [NumberSetter](./setterDetails/number) | number | 数值型数据设置器 |  |
-| ObjectSetter | object | 对象数据设置器,一般内嵌在 ArraySetter 中 | |
-| [RadioGroupSetter](./setterDetails/radioGroup) | string | number | boolean | 枚举型数据设置器,采用 tab 选择的形式展现 | |  |
-| [SelectSetter](./setterDetails/select) | string | number | boolean | 枚举型数据设置器,采用下拉的形式展现 |  |
-| [SlotSetter](./setterDetails/slot) | Element | Element[] | 节点型数据设置器 |  |
-| [StringSetter](./setterDetails/string) | string | 短文本型数据设置器,不可换行 |  |
-| StyleSetter | | 样式设置器 |  |
-| [TextAreaSetter](./setterDetails/textArea) | string | 长文本型数据设置器,可换行 |  |
-| TimePicker | | 时间型数据设置器 | |
-| [VariableSetter](./setterDetails/variable) | any | 变量型数据设置器, |  |
diff --git a/docs/docs/guide/create/_category_.json b/docs/docs/guide/create/_category_.json
deleted file mode 100644
index a4ace0acc..000000000
--- a/docs/docs/guide/create/_category_.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "label": "创建低代码编辑器",
- "position": 1,
- "collapsed": false,
- "collapsible": true
-}
diff --git a/docs/docs/guide/create/useEditor.md b/docs/docs/guide/create/useEditor.md
deleted file mode 100644
index 8df4158a6..000000000
--- a/docs/docs/guide/create/useEditor.md
+++ /dev/null
@@ -1,146 +0,0 @@
----
-title: 接入编辑器
-sidebar_position: 0
----
-
-您有两种方式初始化低代码编辑器:
-
-1. clone 低代码项目的官方 demo,直接启动项目。适合普通人。
-2. 手工引入低代码 UMD 包,手工配置、打包和启动。适合 Webpack 配置工程师。
-
-## 方法 1:通过官方命令行工具创建编辑器
-
-1. 确保本地安装了 Node.js 和 npm,如果没有,[您可以通过 nvm 进行快捷的安装](https://github.com/nvm-sh/nvm)
-2. 确保为 npm [设置了可以访问的 npm 源,保证安装过程无网络问题](https://npmmirror.com/)
-3. 安装官方命令行工具
- ```bash
- npm install -g @alilc/create-element@latest
- ```
-4. 通过命令行工具创建
- ```bash
- npm init @alilc/element editor-project-name
- ```
- 这时会看到一个选项列表
-
-
-
- 选择`编辑器`,并填写对应的问题,即可完成创建。
-
- > 注 @alilc/create-element 版本需 >= 1.0.4,若看不到`编辑器`选项,请重新执行步骤 3
-5. 进入创建后的目录
- ```bash
- cd editor-project-name
- ```
-6. 安装依赖
- ```bash
- npm install
- ```
-7. 安装依赖成功后,启动项目 (注意观察上一步的输出,如有 error 等失败信息,请先进行排查)
- ```bash
- npm start
- ```
- 执行后如果看到这个界面,说明项目启动成功。您可以继续看后续章节了。本章节后续内容均为高级配置方式。
-
- 
-
-## 方法 2: 使用 UMD 包方式配置
-
-如果您不是从零开始的项目,您可能需要手工引入低代码引擎。
-
-### 引入 UMD 包资源
-
-我们需要在启动前,正确在项目中通过 UMD 包方式直接依赖如下内容:
-> 亦可使用异步加载工具,如果您按照正确的顺序进行加载
-
-```html
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-```
-> 注:如果 unpkg 的服务比较缓慢,您可以使用官方 CDN 来获得确定版本的低代码引擎,如对于引擎的 1.0.18 版本,可用以下官方 CDN 替代
-> - [https://uipaas-assets.com/prod/npm/@alilc/lowcode-engine/1.0.18/dist/js/engine-core.js](https://uipaas-assets.com/prod/npm/@alilc/lowcode-engine/1.0.18/dist/js/engine-core.js)
-
-
-### 配置打包
-
-因为这些资源已经通过 UMD 方式引入,所以在 webpack 等构建工具中需要配置它们为 external,不再重复打包:
-
-```javascript
-{
- "externals": {
- "react": "var window.React",
- "react-dom": "var window.ReactDOM",
- "prop-types": "var window.PropTypes",
- "@alifd/next": "var window.Next",
- "@alilc/lowcode-engine": "var window.AliLowCodeEngine",
- "@alilc/lowcode-engine-ext": "var window.AliLowCodeEngineExt",
- "moment": "var window.moment",
- "lodash": "var window._"
- }
-}
-```
-
-### 初始化低代码编辑器
-
-正确引入后,我们可以直接通过 window 上的变量进行引用,如 `window.AliLowCodeEngine.init`。您可以直接通过此方式初始化低代码引擎:
-
-```javascript
-// 确保在执行此命令前,在 中已有一个 id 为 lce-container 的
-window.AliLowCodeEngine.init(document.getElementById('lce-container'), {
- enableCondition: true,
- enableCanvasLock: true,
-});
-```
-
-如果您的项目中使用了 TypeScript,您可以通过如下 devDependencies 引入相关包,并获得对应的类型推断。
-```javascript
-// package.json
-{
- "devDependencies": {
- "@alilc/lowcode-engine": "^1.0.0"
- }
-}
-```
-```javascript
-// src/index.tsx
-import { init } from '@alilc/lowcode-engine';
-
-init(document.getElementById('lce-container'), {
- enableCondition: true,
- enableCanvasLock: true,
-});
-```
-
-init 的功能包括但不限于:
-
-1. 传递 options 并设置 config 对象;
-2. 传递 preference 并设置 plugins 入参;
-3. 初始化 Workbench;
-
-> 本节中的低代码编辑器例子可以在 demo 中找到:[https://github.com/alibaba/lowcode-demo/blob/main/demo-general/src/index.ts](https://github.com/alibaba/lowcode-demo/blob/main/demo-general/src/index.ts)
-
-## 配置低代码编辑器
-详见[低代码扩展简述](/site/docs/guide/expand/editor/summary)章节。
diff --git a/docs/docs/guide/create/useRenderer.md b/docs/docs/guide/create/useRenderer.md
deleted file mode 100644
index 9a577bac6..000000000
--- a/docs/docs/guide/create/useRenderer.md
+++ /dev/null
@@ -1,106 +0,0 @@
----
-title: 接入运行时
-sidebar_position: 1
----
-
-低代码引擎的编辑器将产出两份数据:
-
-- 资产包数据 assets:包含物料名称、包名及其获取方式,对应协议中的[《低代码引擎资产包协议规范》](/site/docs/specs/assets-spec)
-- 页面数据 schema:包含页面结构信息、生命周期和代码信息,对应协议中的[《低代码引擎搭建协议规范》](/site/docs/specs/lowcode-spec)
-
-经过上述两份数据,可以直接交由渲染模块或者出码模块来运行,二者的区别在于:
-
-- 渲染模块:使用资产包数据、页面数据和低代码运行时,并且允许维护者在低代码编辑器中用 `低代码(LowCode)`的方式继续维护;
-- 出码模块:不依赖低代码运行时和页面数据,直接生成可直接运行的代码,并且允许维护者用 `源码(ProCode)` 的方式继续维护,但无法再利用低代码编辑器;
-
-> 渲染和出码的详细阐述可参考此文:[低代码技术在研发团队的应用模式探讨](https://mp.weixin.qq.com/s/Ynk_wjJbmNw7fEG6UtGZbQ)
-
-## 渲染模块
-
-[在 Demo 中](https://lowcode-engine.cn/demo/demo-general/index.html),右上角有渲染模块的示例使用方式:
-
-
-基于官方提供的渲染模块 [@alilc/lowcode-react-renderer](https://github.com/alibaba/lowcode-engine/tree/main/packages/react-renderer),你可以在 React 上下文渲染低代码编辑器产出的页面。
-
-### 构造渲染模块所需数据
-
-渲染模块所需要的数据需要通过编辑器产出的数据进行一定的转换,规则如下:
-
-- schema:从编辑器产出的 projectSchema 中拿到 componentsTree 中的首项,即 `projectSchema.componentsTree[0]`;
-- components:需要根据编辑器产出的资产包 assets 中,根据页面 projectSchema 中声明依赖的 componentsMap,来加载所有依赖的资产包,最后获取资产包的实例并生成物料 - 资产包的键值对 components。
-
-这个过程可以参考 demo 项目中的 `src/preview.tsx`:
-
-```typescript
-async function getSchemaAndComponents() {
- const packages = JSON.parse(window.localStorage.getItem('packages') || '');
- const projectSchema = JSON.parse(window.localStorage.getItem('projectSchema') || '');
- const { componentsMap: componentsMapArray, componentsTree } = projectSchema;
- const componentsMap: any = {};
- componentsMapArray.forEach((component: any) => {
- componentsMap[component.componentName] = component;
- });
- const schema = componentsTree[0];
-
- const libraryMap = {};
- const libraryAsset = [];
- packages.forEach(({ package: _package, library, urls, renderUrls }) => {
- libraryMap[_package] = library;
- if (renderUrls) {
- libraryAsset.push(renderUrls);
- } else if (urls) {
- libraryAsset.push(urls);
- }
- });
-
- const vendors = [assetBundle(libraryAsset, AssetLevel.Library)];
-
- const assetLoader = new AssetLoader();
- await assetLoader.load(libraryAsset);
- const components = await injectComponents(buildComponents(libraryMap, componentsMap));
-
- return {
- schema,
- components,
- };
-}
-```
-
-### 进行渲染
-
-拿到 schema 和 components 以后,您可以借由资产包数据和页面数据来完成页面的渲染:
-```tsx
-import React from 'react';
-import ReactRenderer from '@alilc/lowcode-react-renderer';
-
-const SamplePreview = () => {
- return (
-
-
-基于 Schema 和物料组件,如何渲染出我们的页面?这一节描述的就是这个。
-
-## npm 包与仓库信息
-
-- React 框架渲染 npm 包:@alilc/lowcode-react-renderer
-- 仓库:[https://github.com/alibaba/lowcode-engine](https://github.com/alibaba/lowcode-engine) 下的
- - packages/renderer-core
- - packages/react-renderer
- - packages/react-simulator-renderer
-
-## 渲染框架原理
-### 整体架构
-
-
-
-- 协议层:基于[《低代码引擎搭建协议规范》](/site/docs/specs/lowcode-spec) 产出的 Schema 作为我们的规范协议。
-- 能力层:提供组件、区块、页面等渲染所需的核心能力,包括 Props 解析、样式注入、条件渲染等。
-- 适配层:由于我们使用的运行时框架不是统一的,所以统一使用适配层将不同运行框架的差异部分,通过接口对外,让渲染层注册/适配对应所需的方法。能保障渲染层和能力层直接通过适配层连接起来,能起到独立可扩展的作用。
-- 渲染层:提供核心的渲染方法,由于不同运行时框架提供的渲染方法是不同的,所以其通过适配层进行注入,只需要提供适配层所需的接口,即可实现渲染。
-- 应用层:根据渲染层所提供的方法,可以应用到项目中,根据使用的方法和规模即可实现应用、页面、区块的渲染。
-
-### 核心解析
-
-这里主要解析一下刚刚提到的架构中的适配层和渲染层。
-
-#### 适配层
-适配层提供的是各个框架之间的差异项。比如 `React.createElement` 和 `Rax.createElement` 方法是不同的。所以需要在适配层对 API 进行抹平。
-
-##### React
-```typescript
-import { createElement } from 'react';
-import {
- adapter,
-} from '@ali/lowcode-renderer-core';
-
-adapter.setRuntime({
- createElement,
-});
-```
-##### Rax
-```typescript
-import { createElement } from 'rax';
-import {
- adapter,
-} from '@ali/lowcode-renderer-core';
-
-adapter.setRuntime({
- createElement,
-});
-```
-这时,在核心层使用的 `createElement` 会基于使用不同的 renderer 而使用不同的方法,自动适配框架所需的运行时方法。
-
-所需的方法包括:
-
-- `setRuntime`:设置运行时相关方法
- - `Component`:组件类,参考 React 的 `Component`。
- - `PureComponent`:组件类,参考 React 的 `PureComponent`。
- - `createContext`:创建一个 `Context` 对象的方法。例如,当 React 渲染一个订阅了这个 `Context` 对象的组件,这个组件会从组件树中离自身最近的那个匹配的 `Provider` 中读取到当前的 `context` 值。
- - `createElement`:创建 `Component` 元素,例如在 React 中即为创建 React 元素。
- - `forwardRef`:ref 转发的方法。Ref 转发是一个可选特性,其允许某些组件接收 ref,并将其向下传递(换句话说,“转发”它)给子组件。
- - `findDOMNode`:是一个访问底层 DOM 节点的方法。如果组件已经被挂载到 DOM 上,此方法会返回浏览器中相应的原生 DOM 元素。
-- `setRenderers`
- - `PageRenderer`:页面渲染的方法。可以定制页面渲染的生命周期,定制导航,定制路由等。
- - `ComponentRenderer`:组件渲染的方法。
- - `BlockRenderer`:区块渲染的方法。
-
-#### 渲染层
-##### React Renderer
-内部的技术栈统一都是 React,大多数适配层的 API 都是按照 React 来设计的,所以对于 React Renderer 来说,需要做的不多。
-
-React Renderer 的代码量很少,主要是将 React API 注册到适配层中。
-
-```typescript
-import React, { Component, PureComponent, createElement, createContext, forwardRef, ReactInstance, ContextType } from 'react';
-import ReactDOM from 'react-dom';
-import {
- adapter,
- pageRendererFactory,
- componentRendererFactory,
- blockRendererFactory,
- addonRendererFactory,
- tempRendererFactory,
- rendererFactory,
- types,
-} from '@ali/lowcode-renderer-core';
-import ConfigProvider from '@alifd/next/lib/config-provider';
-
-window.React = React;
-(window as any).ReactDom = ReactDOM;
-
-adapter.setRuntime({
- Component,
- PureComponent,
- createContext,
- createElement,
- forwardRef,
- findDOMNode: ReactDOM.findDOMNode,
-});
-
-adapter.setRenderers({
- PageRenderer: pageRendererFactory(),
- ComponentRenderer: componentRendererFactory(),
- BlockRenderer: blockRendererFactory(),
- AddonRenderer: addonRendererFactory(),
- TempRenderer: tempRendererFactory(),
- DivRenderer: blockRendererFactory(),
-});
-
-adapter.setConfigProvider(ConfigProvider);
-```
-
-##### Rax Renderer
-Rax 的大多数 API 和 React 基本也是一致的,差异点在于重写了一些方法。
-```typescript
-import { Component, PureComponent, createElement, createContext, forwardRef } from 'rax';
-import findDOMNode from 'rax-find-dom-node';
-import {
- adapter,
- addonRendererFactory,
- tempRendererFactory,
- rendererFactory,
-} from '@ali/lowcode-renderer-core';
-import pageRendererFactory from './renderer/page';
-import componentRendererFactory from './renderer/component';
-import blockRendererFactory from './renderer/block';
-import CompFactory from './hoc/compFactory';
-
-adapter.setRuntime({
- Component,
- PureComponent,
- createContext,
- createElement,
- forwardRef,
- findDOMNode,
-});
-
-adapter.setRenderers({
- PageRenderer: pageRendererFactory(),
- ComponentRenderer: componentRendererFactory(),
- BlockRenderer: blockRendererFactory(),
- AddonRenderer: addonRendererFactory(),
- TempRenderer: tempRendererFactory(),
-});
-```
-
-### 多模式渲染
-#### 预览模式渲染
-预览模式的渲染,主要是通过 Schema、components 即可完成上述的页面渲染能力。
-```typescript
-import ReactRenderer from '@ali/lowcode-react-renderer';
-import ReactDOM from 'react-dom';
-import { Button } from '@alifd/next';
-
-const schema = {
- componentName: 'Page',
- props: {},
- children: [
- {
- componentName: 'Button',
- props: {
- type: 'primary',
- style: {
- color: '#2077ff'
- },
- },
- children: '确定',
- },
- ],
-};
-
-const components = {
- Button,
-};
-
-ReactDOM.render((
-
diff --git a/docs/docs/guide/expand/editor/parts/partsassets.md b/docs/docs/guide/expand/editor/parts/partsassets.md
deleted file mode 100644
index 00670ecad..000000000
--- a/docs/docs/guide/expand/editor/parts/partsassets.md
+++ /dev/null
@@ -1,267 +0,0 @@
----
-title: 资产包管理
-sidebar_position: 4
----
-
-## 介绍
-
-通过前述介绍,相信大家已经了解如何使用「[Parts·造物](https://parts.lowcode-engine.cn/)」来将已有的 React 组件快速接入低代码引擎,以及生产低代码组件。
-
-大家在使用的过程中,可能会希望构建出来的资产包可以后续随时访问下载,或者希望构建资产包时各个组件的版本等信息可以持久化起来并且能够多人维护。
-
-通过「[Parts·造物](https://parts.lowcode-engine.cn/)」的 `资产包` 管理功能帮助大家解决这个问题
-
-
-
-## 新建资产包
-
-首先,我们在 我的资产包 tab 中点击 `新建资产包`
-
-
-- 填写资产包名称
-- 配置资产包管理员,管理员拥有该资产包的所有权限,初始默认为资产包的创建者,还可以添加其他人作为管理员,
-- 配置资产包描述 (可选)
-- 点击 `确定`, 即可完成资产包的创建
-
-接下来需要为资产包添加一个或者多个组件。
-
-## 添加组件
-
-第二步:新建完资产包以后,我们就可以为其添加组件了,如果是新建资产包流程,新建完成之后会自动弹出组件配置的弹窗,当然,你可可以通过点击资产包卡片的方式打开组件配置的弹窗。
-
-
-- 点击弹窗中 `添加组件` 按钮,在弹出的组件选择面板中,选中需要添加的组件并点击 `下一步`。
- 
-- 进入组件版本以及描述协议版本选择界面,选择所需要的正确版本,点击 `安装` 即可完成一个组件的添加。
- 
-
-## 构建资产包
-
-添加完组件以后就点击 `保存并构建资产包` 进入资产包构建配置弹窗
-
-
-- `开启缓存` : 可充分利用之前的构建结果缓存来加速资产包的生成,我们会将每个组件的构建结果以 包名和版本号为 key 进行缓存。
-- `任务描述` : 当前构建任务的一些描述信息。
-
-点击 `确认` 按钮 会自动跳转到当前资产包的构建历史界面:
-
-构建历史界面会显示当前资产包所有的构建历史记录,表格状态栏展示了构建的状态:`成功`,`失败`,`正在运行` 三种状态,操作列可以在构建成功时复制或者下载资产包结果
-
-## 使用资产包
-你可以在 [lowcode-demo](https://github.com/alibaba/lowcode-demo) 中直接引用,可直接替换 demo 中原来的资产包文件:
-例如,在 [demo-lowcode-component](https://github.com/alibaba/lowcode-demo/tree/main/demo-lowcode-component) 中,直接用你的资产包文件替换文件[assets.json](https://github.com/alibaba/lowcode-demo/blob/main/demo-lowcode-component/src/services/assets.json),即可快速使用自己的物料了。
-
-### 在编辑器中使用资产包
-在使用含有低代码组件的资产包注意 注意引擎版本必须大于等于 `1.1.0-beta.9`。
-然后直接替换 [lowcode-demo](https://github.com/alibaba/lowcode-demo) demo 中的 `assets.json` 文件即可。
-
-### 在预览中使用资产包
-在预览中使用资产包的整体思路是从 `资产包` 中提取并转换出 `ReactRenderer` 渲染所需要的 react 组件列表 (`components` 参数),然后将 `schema` 以及 `components` 传入到 `ReactRenderer` 中进行渲染,需要注意的是,在 `资产包` 的转换过程中,我们也需要将 `低代码组件` 转换成 react 组件,具体逻辑可以参考下 [demo-lowcode-component](https://github.com/alibaba/lowcode-demo/tree/main/demo-lowcode-component) 中 `src/parse-assets.ts` 文件的实现。
-基于资产包进行预览的整体逻辑如下: [详见](https://github.com/alibaba/lowcode-demo/blob/main/demo-lowcode-component/src/preview.tsx):
-```ts
-import ReactDOM from 'react-dom';
-import React, { useState } from 'react';
-import { Loading } from '@alifd/next';
-import ReactRenderer from '@alilc/lowcode-react-renderer';
-import { createFetchHandler } from '@alilc/lowcode-datasource-fetch-handler';
-import {
- getProjectSchemaFromLocalStorage,
-} from './services/mockService';
-import assets from './services/assets.json';
-import { parseAssets } from './parse-assets';
-
-const getScenarioName = function () {
- if (location.search) {
- return new URLSearchParams(location.search.slice(1)).get('scenarioName') || 'index';
- }
- return 'index';
-};
-
-const SamplePreview = () => {
- const [data, setData] = useState({});
- async function init() {
- const scenarioName = getScenarioName();
- const projectSchema = getProjectSchemaFromLocalStorage(scenarioName);
- const { componentsMap: componentsMapArray, componentsTree } = projectSchema;
- const schema = componentsTree[0];
- const componentsMap: any = {};
- componentsMapArray.forEach((component: any) => {
- componentsMap[component.componentName] = component;
- });
-
- // 特别提醒重点注意!!!:从资产包中解析出所有的 react 组件列表
- const { components } = await parseAssets(assets);
-
- setData({
- schema,
- components,
- });
- }
-
- const { schema, components } = data;
-
- if (!schema || !components) {
- init();
- return
\ No newline at end of file
diff --git a/docs/docs/guide/expand/editor/parts/partslcc.md b/docs/docs/guide/expand/editor/parts/partslcc.md
deleted file mode 100644
index 4d24b72f3..000000000
--- a/docs/docs/guide/expand/editor/parts/partslcc.md
+++ /dev/null
@@ -1,92 +0,0 @@
----
-title: 低代码组件
-sidebar_position: 2
----
-## 什么是低代码组件
-我们先了解一下什么是低代码组件,为什么要用低代码组件。
-
-低代码组件是通过可视化的方式生产的组件,这些组件既可以用于低代码搭建体系,也可以用于 ProCode 开发体系(后续迭代)。
-
-那么为什么我们要使用低代码的形式来开发组件:
-* 首先:轻快,低代码组件只需通过浏览器秒级完成初始化工作,不需要 ProCode 繁重的环境准备;环境一致(低代码环境),同时能够保证物料的开发环境和真实的运行环境是一致的,不会存在开发和运行环境不一致的问题。
-* 其次:通用能力可视化方式抽象,提升研发效能,比如获取远程数据、视图开发、依赖管理、生命周期、事件绑定等功能。
-
-低代码组件不是用来替代 ProCode 的开发方式,而是让开发者可以从 ProCode 中重复的工作脱离出来,抽象更多业务垂直的能力,从而起到提效的作用。
-
-## 创建组件
-
-环境准备:我们可以通过 Parts 提供的通用[低代码组件开发环境](https://parts.lowcode-engine.cn/material#/)开发。
-
-点击开发新组件 --> 填写组件标题 --> 填写组件名称 --> 点击确定,完成组件创建工作。
-
-
-
-## 组件开发
-
-一张图速览低代码组件开发的功能模块,其中大部分功能可以参考[低代码引擎文档](https://lowcode-engine.cn/site/docs/guide/quickStart/intro)。
-
-
-
-### 依赖管理
-
-依赖管理用于管理低代码组件本身的依赖(类似于 dependencies)。步骤:点击添加组件 --> 选择安装的组件 --> 保存并构建 (需要等待几分钟构建)。
-
-
-
-### 属性定义
-
-用于定义组件接收外部传入的 propTypes,组件内部可以通过this.props.${属性名称}的方式获取属性值。
-
-属性定义前建议先阅读 [物料描述详解](https://lowcode-engine.cn/site/docs/guide/expand/editor/metaSpec)、[预置设置器](https://lowcode-engine.cn/site/docs/guide/appendix/setters)。
-
-
-
-
-
-### 生命周期
-
-低代码组件的开发支持 componentDidMount、componentDidUpdate、componentDidCatch、componentWillUnmount 几个生命周期
-
-
-
-### 组件调试
-
-我们提供了一套线上实时调试的方案,只需点击右上角的调试按钮,就能自动创建一个低代码应用,在这个应用中可以实时调试当前的低代码组件。
-
-
-
-在低代码应用中使用,组件面板 --> 低代码组件,找到对应的低代码组件拖入画布即可。
-
-
-
-### 组件发布
-
-同时我们提供了组件发布的功能,用于组件版本管理,点击右上角的发布按钮即可发布组件
-
-
-
-## 组件使用
-
-组件的消费是通过资产包来管理的,详情请参考 [资产包管理](./partsassets)。
-
-## 组件导出
-
-开发好的低代码组件可以导出成为 React 组件,脱离低代码引擎独立使用。同时导出功能也为您的组件留出一份备份,您可以放心使用本产品的服务,而不用担心万一出现的不能服务的场景。
-
-在物料列表页面,低代码组件会有一个导出的动作。
-
-
-
-点击导出后,就会开启导出低代码组件的过程。这个过程持续 10s+,导出完成后会为您自动下载对应的 zip 包。
-
-
-
-zip 包解压后可以看到一个完整的组件脚手架工程,您可以在这个工程里继续开发调试,或者发布到合适的 npm 源中。
-
-
-
-注意:目前导出功能暂不支持 低代码组件嵌套。
-
-## 联系我们
-
-
\ No newline at end of file
diff --git a/docs/docs/guide/expand/editor/parts/prototype.md b/docs/docs/guide/expand/editor/parts/prototype.md
deleted file mode 100644
index b90728f65..000000000
--- a/docs/docs/guide/expand/editor/parts/prototype.md
+++ /dev/null
@@ -1,121 +0,0 @@
----
-title: React 组件导入
-sidebar_position: 3
----
-## 介绍
-大家在使用[低代码引擎](https://lowcode-engine.cn/)构建低代码应用平台时,遇到的一个主要问题是如何让已有的 React 组件能够快速低成本地接入进来。这个问题拆解下来主要包括两个子问题:
-1. 如何给已有组件[配置物料描述](/site/docs/specs/material-spec),
-2. 如何构建出一个低代码引擎能够识别的资产包 (Assets)。
-
-我们的产品「[Parts·造物](https://parts.lowcode-engine.cn/)」可以帮助大家解决这个问题。我们通过在线可视化的方式完成物料描述配置,并且提供一键打包的功能生成引擎可以识别的资产包。
-
-## 导入物料
-首先,我们需要在 [物料管理](/site/docs/specs/material-spec) 页面导入我们需要进行在线物料描述配置的物料。
-
-
-- 点击列表左上方的 导入已有物料 按钮
-- 在弹框中输入 npm 包名
-- 点击 获取包信息 按钮,获取 npm 包基本信息
-- 点击确定,导入成功
-
-
-## 配置管理
-第二步:物料导入以后,我们就可以为导入的物料新增[物料描述配置](/site/docs/specs/material-spec),点击右侧的组件配置开始配置。
-
-
-### 新增配置
-
-- 点击配置管理右上角的 新增配置
- - 选择组件的版本号
- - 填写组件路径,一般和 npm 包的 package.json 里的 main 字段相同(如果填写错误,后面会渲染不出来)
- - 描述字段用于给这份配置增加一些备注信息。
-
-
-
-为了降低配置成本,第一次新增配置的时候会自动解析组件代码,生成一份初始化组件物料描述。所以需要等待片刻,用于代码解析。解析完成后,点击配置按钮即可进入在线配置界面。
-
-
-
-### 组件描述配置
-操作界面如下,接下来讲具体的配置流程
-
-
-
-#### 新增组件
-
-如果新增配置的过程中,代码自动解析失败或者解析出来的组件列表不满足开发要求,我们可以点击左侧组件列表插件 新增 按钮,添加新的组件,具体的字段描述可以参考提示内容,以 [react-color](https://github.com/casesandberg/react-color) 为例:
-
-
-
-
-#### 给组件增加物料描述
-
-- 打开左侧 Setter 面板
-- 按照组件的属性拖入需要 Setter 类型(如图中组件的 width 属性,拖入数字 Setter)
-- 各种 Setter 的介绍可以参看这篇文档:[预置设置器列表](/site/docs/guide/appendix/setters)
-- 配置属性的基本信息(如图所示)
-- 配置完成后点击右上角的保存
-
-
-
-
-
-#### 高级配置(属性联动)
-
-举个栗子:如图所示,如果期望“设置器”这个配置项的值“被修改”的时候,下面的“默认值”跟着变化。
-
-
-
-如何使用
-
-组件的属性配置目前支持 3 个基本的联动函数:
-
-- 显示状态:返回 true | false,如果返回 true,表示组件配置显示,否则配置时不显示
-- 获取值:当调用该配置节点的 getValue 方法时触发的方法
-- 值变化:当调用该配置节点的 setValue 方法时触发的方法
-
-
-
-方法的第一个参数都是当前配置节点的对象,常用到的有以下几个:
-
-- getValue(): 获取当前节点的值,如果当前节点是子节点的话,否则为 undefined
-- setValue(): 设置当前节点的值,如果当前节点是子节点的话
-- parent: 当前节点的父节点
-- getPropValue(propName): 父节点获取子节点的属性值,propName 为子节点的属性名称
-- setPropValue(propName, value): 父节点设置子节点的属性值,propName 为子节点的属性名称,value 为设置的值
-- getConfig: 获取当前节点的配置,如 title、setter 等
-
-
-#### 调试物料描述
-
-点击右上角的预览按钮,开始调试我们刚刚配置的属性,如果是组件的首次预览,会有一段组件构建的过程(构建出 umd 包的过程),构建完成后就可以调试我们的配置了。
-
-
-
-#### 发布物料描述
-物料描述调试没问题后,就可以到项目中去使用了,使用前需要先发布物料描述
-
-- 点击右上角的发布按钮
-- 选择需要发布的组件
-- 点击确定发布完成
-
-
-## 资产包
-第三步:物料描述发布完成后,接下来我们就需要构建出可用的资产包用于低代码应用中。
-
-#### 资产包构建
-有两种方式可以构建资产包:
-- 一种是通过 [`我的资产包`] 资产包管理模块进行整个资产包生命周期的管理,当然也包括资产包的构建,可参考 [资产包管理](./partsassets)
-- 一种是通过 [`我的物料`] 组件物料管理模块的 `资产包构建` 进行构建, 具体操作如下:
-
- - 选择需要构建的组件
- - 点击构建资产包按钮
- - 选择刚刚的物料描述配置
- - 开始构建,构建完成后你将得到一份 json 文件(里面包含了物料描述和 umd 包),就可以到项目中使用了
-
-#### 资产包使用
-详情请参考 [资产包管理](./partsassets#使用资产包)
-
-## 联系我们
-
-
diff --git a/docs/docs/guide/expand/editor/pluginContextMenu.md b/docs/docs/guide/expand/editor/pluginContextMenu.md
deleted file mode 100644
index 962c913e7..000000000
--- a/docs/docs/guide/expand/editor/pluginContextMenu.md
+++ /dev/null
@@ -1,82 +0,0 @@
----
-title: 插件扩展 - 编排扩展
-sidebar_position: 6
----
-
-## 场景一:扩展选中节点操作项
-
-### 增加节点操作项
-
-
-选中节点后,在选中框的右上角有操作按钮,编排模块默认实现了查看组件直系父节点、复制节点和删除节点按钮外,还可以通过相关 API 来扩展更多操作,如下代码:
-
-```typescript
-import { plugins } from '@alilc/lowcode-engine';
-import { IPublicModelPluginContext, IPublicModelNode } from '@alilc/lowcode-types';
-import { Icon, Message } from '@alifd/next';
-
-const addHelloAction = (ctx: IPublicModelPluginContext) => {
- return {
- async init() {
- ctx.material.addBuiltinComponentAction({
- name: 'hello',
- content: {
- icon:
-2. 请按照一个 bugfix / feature 对应一个 commit,假如不是,请 rebase 后再提交 MR,不要一堆无用的、试验性的 commit。
-
-好处:从引擎的整体 commit 历史来看,会很清晰,**每个 commit 完成一件确定的事,changelog 也能自动生成**。另外,假如因为某个 commit 导致了 bug,也很容易通过 rebase drop 等方式快速修复。
-
-## 分支用途
-
-- main 分支,最稳定的分支,跟 npm latest 包的内容保持一致
-- develop 分支,开发分支,拥有最新的、已经验证过的 feature / bugfix,Pull Request 的**目标合入分支**
-- release 分支
- - 正式发布分支,命名规则为 release/x.y.z,一般从 develop 拉出来进行发布,x.y.z 为待发布的版本号
- - beta 发布分支,命名规则为 release/x.y.z-beta(\.\d+)?,可以快速验证修改,发布 npm beta 版本。
-
-验证通过后,因为 beta 发布分支上会存在无用的 commit(比如 lerna 修改 package.json 这种),所以不直接 PR 到 develop,而是从 develop 拉分支,从 beta 发布分支 cherry pick 有用的 commit 到新分支,然后 PR 到 develop。
-
-## 引擎发布机制
-
-日常迭代先从 develop 拉分支,然后自测、单测通过后,提交 PR 到 develop 分支,由发布负责人基于 develop 拉 release/1.0.z 分支~
-
-### 版本规划
-
-> 此处是理想节奏,实际情况可能会有调整
-
-- 日常迭代 2 周,一般月中或月底,发版日两天前发最后一个 beta 版本,原则上不接受新 pr,灰度 2 天后,发正式版。
-- 特殊情况紧急迭代随时发
-- 大 Feature 迭代,每年 2 - 4 次
-
-
-### 发布步骤
-> **发布需要权限,如果提 PR 之后着急发布可以**[**加入贡献者交流群**](../participate/#核心贡献者交流)**。**
-
-#### 发正式版
-步骤如下(以发布 1.0.0 版本为例):
-
-1. git checkout develop
- ```bash
- git checkout develop
- ```
-2. 创建 release 分支
- ```bash
- git checkout -b release/1.0.0
- ```
-3. build
- ```bash
- npm run build
- ```
-4. 发布到 npm
- ```bash
- npm run pub
- ```
-5. 同步到 tnpm 源 & alifd CDN & uipaas CDN(此步骤将发布在 npm 源的包同步到阿里内网源,因为 alifd cdn 将依赖内网 npm 源)
- ```bash
- tnpm run sync
- tnpm run syncOss
- ```
-6. 更新[发布日志](https://github.com/alibaba/lowcode-engine/releases)
-7. 合并 release/x.x.x 到 main 分支
-8. 合并 main 分支到 develop 分支
-
-如果是发布 beta 版本,步骤如下(以发布 1.0.1 版本为例):
-
-#### 发某 y 位版本首个 beta,如 1.1.0-beta.0
-1. 拉 develop 分支
- ```bash
- git checkout develop
- ```
- 更新到最新(如需)
- ```bash
- git pull
- ```
-2. 拉 release 分支,此处以 1.1.0 版本做示例
- ```bash
- git checkout -b release/1.1.0-beta
- git push --set-upstream origin release/1.1.0-beta
- ```
-3. build
- ```bash
- npm run build
- ```
-4. 发布,此处需有 @alilc scope 发包权限
- ```bash
- npm run pub:preminor
- ```
-5. 同步到 tnpm 源 & alifd CDN & uipaas CDN
- ```bash
- tnpm run sync
- tnpm run syncOss
- ```
-
-#### 发某 z 位版本首个 beta,如 1.0.1-beta.0
-1. 拉 develop 分支
- ```bash
- git checkout develop
- ```
- 更新到最新(如需)
- ```bash
- git pull
- ```
-2. 拉 release 分支,此处以 1.0.1 版本做示例
- ```bash
- git checkout -b release/1.0.1-beta
- git push --set-upstream origin release/1.0.1-beta
- ```
-3. build
- ```bash
- npm run build
- ```
-4. 发布,此处需有 @alilc scope 发包权限
- ```bash
- npm run pub:prepatch
- ```
-5. 同步到 tnpm 源 & alifd CDN & uipaas CDN
- ```bash
- tnpm run sync
- tnpm run syncOss
- ```
-
-#### 发某版本非首个 beta,如 1.0.1-beta.0 -> 1.0.1-beta.1
-1. 切换到 release 分支
- ```bash
- git checkout release/1.0.1-beta
- ```
-2. 更新到 develop 分支最新代码
- ```bash
- git rebase origin/develop
- ```
-3. build
- ```bash
- npm run build
- ```
-4. 发布,此处需有 @alilc scope 发包权限 ***此处命令与发首个 beta 时有变化***
- ```bash
- npm run pub:prerelease
- ```
-5. 同步到 tnpm 源 & alifd CDN & uipaas CDN
- ```bash
- tnpm run sync
- tnpm run syncOss
- ```
-
-
-
-## DEMO 发布机制
-1. **修改版本号**
- 手动修改 package.json 的版本号
-2. **build**
- ```bash
- npm run build
- ```
-3. publish(此步骤需要 npm 发包权限)
- ```bash
- npm run pub
- ```
- 如发 beta 版
- ```bash
- npm publish --tag beta
- ```
-4. 同步到 tnpm 源 & alifd CDN & uipaas CDN
- ```bash
- tnpm run sync
- tnpm run syncOss
- ```
-
-**官网生效**
-需要在通过阿里内部系统更新 demo 版本
diff --git a/docs/docs/participate/index.md b/docs/docs/participate/index.md
deleted file mode 100644
index 5bab28bef..000000000
--- a/docs/docs/participate/index.md
+++ /dev/null
@@ -1,119 +0,0 @@
----
-title: 参与贡献
-sidebar_position: 0
----
-
-### 环境准备
-
-开发 LowcodeEngine 需要 Node.js 18+。
-
-推荐使用 nvm 管理 Node.js,避免权限问题的同时,还能够随时切换当前使用的 Node.js 的版本。
-
-### 贡献低代码引擎
-
-#### clone 项目
-
-```
-git clone git@github.com:alibaba/lowcode-engine.git
-cd lowcode-engine
-```
-
-#### 安装依赖并构建
-
-```
-pnpm install
-```
-
-#### 调试环境配置
-
-本质上是将 demo 页面引入的几个 js/css 代理到 engine 项目,可以使用趁手的代理工具,这里推荐 [XSwitch](https://chrome.google.com/webstore/detail/xswitch/idkjhjggpffolpidfkikidcokdkdaogg?hl=en-US)。
-
-本地开发代理规则如下:
-
-```json
-{
- "proxy": [
- [
- "https://uipaas-assets.com/prod/npm/@alilc/lowcode-engine/(.*)/dist/js/engine-core.js",
- "http://localhost:5555/js/AliLowCodeEngine.js"
- ],
- [
- "https://uipaas-assets.com/prod/npm/@alilc/lowcode-engine/(.*)/dist/css/engine-core.css",
- "http://localhost:5555/css/AliLowCodeEngine.css"
- ],
- [
- "https?://uipaas-assets.com/prod/npm/@alilc/lowcode-engine/(.*)/dist/js/react-simulator-renderer.js",
- "http://localhost:5555/js/ReactSimulatorRenderer.js"
- ],
- [
- "https?://uipaas-assets.com/prod/npm/@alilc/lowcode-engine/(.*)/dist/css/react-simulator-renderer.css",
- "http://localhost:5555/css/ReactSimulatorRenderer.css"
- ]
- ]
-}
-```
-
-#### 开发
-
-```
-npm start
-```
-
-选择一个环境进行调试,例如[低代码引擎在线 DEMO](https://lowcode-engine.cn/demo/demo-general/index.html)
-
-开启代理之后,就可以进行开发调试了。
-
-### 贡献低代码引擎文档
-
-#### 开发文档
-
-在 lowcode-engine 目录下执行下面命令
-
-```
-cd docs
-pnpm start
-```
-
-#### 维护方式
-
-- 官方文档通过 github 管理文档源,官网文档与[主仓库 develop 分支](https://github.com/alibaba/lowcode-engine/tree/develop/docs)保持同步。
-- 点击每篇文档下发的 `编辑此页` 可直接定位到 github 中位置。
-- 欢迎 PR,文档 PR 也会作为贡献者贡献,会用于贡献度统计。
-- **文档同步到官方网站由官方人员进行操作**,如有需要可以通过 issue 或 贡献者群与相关人员沟通。
-- 为了提供更好的阅读和使用体验,文档中的图片文件会定期转换成可信的 CDN 地址。
-
-#### 文档格式
-
-本项目文档参考[文档编写指南](https://github.com/sparanoid/chinese-copywriting-guidelines)。
-
-使用 vscode 进行编辑的朋友可以安装 vscode 插件 [huacnlee.autocorrect](https://github.com/huacnlee/autocorrect) 辅助文档 lint。
-
-### 贡献低代码引擎生态
-
-相关源码详见[NPM 包对应源码位置汇总](/site/docs/guide/appendix/npms)
-
-开发调试方式详见[低代码生态脚手架 & 调试机制](/site/docs/guide/expand/editor/cli)
-
-### 发布
-
-PR 被合并之后,我们会尽快发布相关的正式版本或者 beta 版本。
-
-### 加入 Contributor 群
-
-提交过 Bugfix 或 Feature 类 PR 的同学,如果有兴趣一起参与维护 LowcodeEngine,我们提供了一个核心贡献者交流群。
-
-1. 可以通过[填写问卷](https://survey.taobao.com/apps/zhiliao/4YEtu9gHF)的方式,参与到其中。
-2. 填写问卷后加微信号 `wxidvlalalalal` (注明 github id)我们会拉你到群里。
-
-如果你不知道可以贡献什么,可以到源码里搜 TODO 或 FIXME 找找。
-
-为了使你能够快速上手和熟悉贡献流程,我们这里有个列表 [good first issues](https://github.com/alibaba/lowcode-engine/issues?q=is:open+is:issue+label:%22good+first+issue%22),里面有相对没那么笼统的漏洞,从这开始是个不错的选择。
-
-### PR 提交注意事项
-
-- lowcode-engine 仓库建议从 develop 创建分支,PR 指向 develop 分支。
-- 其他仓库从 main 分支创建分支,PR 指向 main 分支
-- 如果你修复了 bug 或者添加了代码,而这些内容需要测试,请添加测试!
-- 确保通过测试套件(yarn test)。
-- 请签订贡献者许可证协议(Contributor License Agreement)。
- > 如已签署 CLA 仍被提示需要签署,[解决办法](/site/docs/faq/faq021)
diff --git a/docs/docs/participate/meet.md b/docs/docs/participate/meet.md
deleted file mode 100644
index 23226bf1c..000000000
--- a/docs/docs/participate/meet.md
+++ /dev/null
@@ -1,55 +0,0 @@
----
-title: 开源社区例会
-sidebar_position: 0
----
-
-## **简介**
-
-低代码引擎开源社区致力于共同推动低代码技术的发展和创新。本社区汇集了低代码技术领域的开发者、技术专家和行业观察者,通过定期的例会来交流思想、分享经验、讨论新技术,并探索低代码技术的未来发展方向。
-
-## 参与要求
-
-为了确保例会的质量和效果,我们建议以下人员参加:
-
-- **已参与低代码引擎贡献的成员**:那些对低代码引擎有实际贡献的社区成员。
-- **参考贡献指南**:可查阅[贡献指南](https://lowcode-engine.cn/site/docs/participate/)获取更多信息。
-- **提供过优秀建议的成员**:那些在过去为低代码引擎提供过有价值建议的成员。
-
-## **时间周期**
-
-- **周期性**:月例会
-
-### **特别说明**
-
-- 例会周期可根据成员反馈进行调整。如果讨论的议题较多,可增加例会频率;若议题较少,单次例会可能取消。若多次取消,可能会暂停例会。
-
-## **例会流程**
-
-### **准备阶段**
-
-- **定期确定议题**:会前一周确定下一次会议的议题。
-- **分发会议通知**:提前发送会议时间、议程和参与方式。
-
-### **会议阶段**
-
-- **开场和介绍**:简短开场和自我介绍,特别是新成员加入时。
-- **议题讨论**:按照议程进行议题讨论,每个议题分配一定时间,并留足够时间供讨论和提问。
-- **记录要点和决定**:记录讨论要点、决策和任何行动事项。
-
-### **后续阶段**
-
-- **分享会议纪要**:会后将会议纪要和行动计划分发给所有成员。
-- **执行和跟进**:根据会议中的讨论和决策执行相关任务,并在下次会议中进行跟进汇报。
-
-## **开源例会议题**
-
-开源例会议题包括但不限于:
-
-- **共建低代码行业发展**:探讨通过开源社区合作加速低代码行业发展。
-- **改进建议和反馈收集**:讨论社区成员对低代码引擎的使用体验和改进建议。
-- **前端技术与低代码的结合**:针对前端开发者,讨论将前端技术与低代码引擎结合的方式。
-- **低代码业务场景和经验分享**:邀请社区成员分享低代码引擎的实际应用经验。
-- **低代码技术原理介绍**:深入理解低代码引擎的技术原理和实现方式。
-- **低代码引擎的最新进展**:分享低代码引擎的最新进展,包括新版本发布和新功能实现等。
-- **低代码技术的未来展望**:讨论低代码技术的未来发展方向。
-- **最新低代码平台功能和趋势分析**:分享和讨论当前低代码平台的新功能、趋势和发展方向。
\ No newline at end of file
diff --git a/docs/docs/specs/assets-spec.md b/docs/docs/specs/assets-spec.md
deleted file mode 100644
index 07818b552..000000000
--- a/docs/docs/specs/assets-spec.md
+++ /dev/null
@@ -1,690 +0,0 @@
----
-title: 《低代码引擎资产包协议规范》
-sidebar_position: 2
----
-
-## 1 介绍
-
-### 1.1 本协议规范涉及的问题域
-
-- 定义本协议版本号规范
-- 定义本协议中每个子规范需要被支持的 Level
-- 定义本协议相关的领域名词
-- 定义低代码资产包协议版本号规范(A)
-- 定义低代码资产包协议组件及依赖资源描述规范(A)
-- 定义低代码资产包协议组件描述资源加载规范(A)
-- 定义低代码资产包协议组件在面板展示规范(AA)
-
-### 1.2 协议草案起草人
-
-- 撰写:金禅、璿玑、彼洋
-- 审阅:力皓、絮黎、光弘、戊子、潕量、游鹿
-
-### 1.3 版本号
-
-1.1.0
-
-### 1.4 协议版本号规范(A)
-
-本协议采用语义版本号,版本号格式为 `major.minor.patch` 的形式。
-
-- major 是大版本号:用于发布不向下兼容的协议格式修改
-- minor 是小版本号:用于发布向下兼容的协议功能新增
-- patch 是补丁号:用于发布向下兼容的协议问题修正
-
-### 1.5 协议中子规范 Level 定义
-
-| 规范等级 | 实现要求 |
-| -------- | ------------------------------------------------------------ |
-| A | 基础规范,低代码引擎核心层支持; |
-| AA | 推荐规范,由低代码引擎官方插件、setter 支持。 |
-| AAA | 参考规范,需由基于引擎的上层搭建平台支持,实现可参考该规范。 |
-
-### 1.6 名词术语
-
-- **资产包**: 低代码引擎加载资源的动态数据集合,主要包含组件及其依赖的资源、组件低代码描述、动态插件/设置器资源等。
-
-### 1.7 背景
-
-根据低代码引擎的实现,一个组件要在引擎上渲染和配置,需要提供组件的 umd 资源以及组件的`低代码描述`,并且组件通常都是以集合的形式被引擎消费的;除了组件之外,还有组件的依赖资源、引擎的动态插件/设置器等资源也需要注册到引擎中;因此我们定义了“低代码资产包”这个数据结构,来描述引擎所需加载的动态资源的集合。
-
-### 1.8 受众
-
-本协议适用于使用“低代码引擎”构建搭建平台的开发者,通过本协议的定义来进行资源的分类和加载。阅读及使用本协议,需要对低代码搭建平台的交互和实现有一定的了解,对前端开发相关技术栈的熟悉也会有帮助,协议中对通用的前端相关术语不会做进一步的解释说明。
-
-## 2 协议结构
-
-协议最顶层结构如下,包含 7 方面的描述内容:
-
-- version { String } 当前协议版本号
-- packages { Array } 低代码编辑器中加载的资源列表
-- components { Array } 所有组件的描述协议列表
-- sort { Object } 用于描述组件面板中的 tab 和 category
-- plugins { Array } 设计器插件描述协议列表
-- setters { Array } 设计器中设置器描述协议列表
-- extConfig { Object } 平台自定义扩展字段
-
-### 2.1 version (A)
-
-定义当前协议 schema 的版本号;
-
-| 根属性名称 | 类型 | 说明 | 变量支持 | 默认值 |
-| ---------- | ------ | ---------- | -------- | ------ |
-| version | String | 协议版本号 | - | 1.1.0 |
-
-### 2.2 packages (A)
-
-定义低代码编辑器中加载的资源列表,包含公共库和组件 (库) cdn 资源等;
-
-| 字段 | 字段描述 | 字段类型 | 规范等级 | 备注 |
-| ------------------------------ | ----------------------------------------------------------------------------------------- | --------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| packages[].id? | 资源唯一标识 | String | A | 资源唯一标识,如果为空,则以 package 为唯一标识 |
-| packages[].title? | 资源标题 | String | A | 资源标题 |
-| packages[].package | npm 包名 | String | A | 组件资源唯一标识 |
-| packages[].version | npm 包版本号 | String | A | 组件资源版本号 |
-| packages[].type | 资源包类型 | String | AA | 取值为: proCode(源码)、lowCode(低代码,默认为 proCode |
-| packages[].schema | 低代码组件 schema 内容 | object | AA | 取值为: proCode(源码)、lowCode(低代码) |
-| packages[].deps | 当前资源包的依赖资源的唯一标识列表 | `Array