Compare commits
5 Commits
v1.4.8
...
v1.0.0-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
72efc13716 | ||
|
|
8bd89c7c90 | ||
|
|
2fd1b55151 | ||
|
|
13a50b799e | ||
|
|
ceae04006b |
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"npmClient": "npm",
|
||||
"packages": [
|
||||
"packages/*",
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/core",
|
||||
"main": "dist/magic-core.umd.js",
|
||||
"module": "dist/magic-core.es.js",
|
||||
"main": "dist/tmagic-core.umd.js",
|
||||
"module": "dist/tmagic-core.es.js",
|
||||
"types": "dist/types/src/index.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"import": "./dist/magic-core.es.js",
|
||||
"require": "./dist/magic-core.umd.js"
|
||||
"import": "./dist/tmagic-core.es.js",
|
||||
"require": "./dist/tmagic-core.umd.js"
|
||||
},
|
||||
"./dist/style.css": {
|
||||
"import": "./dist/style.css",
|
||||
@@ -25,7 +25,7 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-beta.1",
|
||||
"@tmagic/schema": "^1.0.0-beta.2",
|
||||
"events": "^3.3.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
2
packages/editor/package-lock.json
generated
2
packages/editor/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/editor",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/editor",
|
||||
"main": "dist/magic-editor.umd.js",
|
||||
"module": "dist/magic-editor.es.js",
|
||||
"main": "dist/tmagic-editor.umd.js",
|
||||
"module": "dist/tmagic-editor.es.js",
|
||||
"style": "dist/style.css",
|
||||
"types": "dist/types/src/index.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"import": "./dist/magic-editor.es.js",
|
||||
"require": "./dist/magic-editor.umd.js"
|
||||
"import": "./dist/tmagic-editor.es.js",
|
||||
"require": "./dist/tmagic-editor.umd.js"
|
||||
},
|
||||
"./dist/style.css": {
|
||||
"import": "./dist/style.css",
|
||||
@@ -27,11 +27,11 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons": "0.0.11",
|
||||
"@tmagic/core": "^1.0.0-beta.1",
|
||||
"@tmagic/form": "^1.0.0-beta.1",
|
||||
"@tmagic/schema": "^1.0.0-beta.1",
|
||||
"@tmagic/stage": "^1.0.0-beta.1",
|
||||
"@tmagic/utils": "^1.0.0-beta.1",
|
||||
"@tmagic/core": "^1.0.0-beta.2",
|
||||
"@tmagic/form": "^1.0.0-beta.2",
|
||||
"@tmagic/schema": "^1.0.0-beta.2",
|
||||
"@tmagic/stage": "^1.0.0-beta.2",
|
||||
"@tmagic/utils": "^1.0.0-beta.2",
|
||||
"color": "^3.1.3",
|
||||
"element-plus": "^2.0.2",
|
||||
"events": "^3.3.0",
|
||||
|
||||
@@ -289,8 +289,6 @@ class Editor extends BaseService {
|
||||
if (!info.node) throw new Error(`获取不到id为${config.id}的节点`);
|
||||
|
||||
const node = cloneDeep(toRaw(info.node));
|
||||
const { parent } = info;
|
||||
if (!parent) throw new Error('获取不到父级节点');
|
||||
|
||||
let newConfig = await this.toggleFixedPosition(toRaw(config), node, this.get<MApp>('root'));
|
||||
|
||||
@@ -303,6 +301,9 @@ class Editor extends BaseService {
|
||||
return newConfig;
|
||||
}
|
||||
|
||||
const { parent } = info;
|
||||
if (!parent) throw new Error('获取不到父级节点');
|
||||
|
||||
const parentNodeItems = parent.items;
|
||||
const index = getNodeIndex(newConfig, parent);
|
||||
|
||||
|
||||
2
packages/form/package-lock.json
generated
2
packages/form/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/form",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/form",
|
||||
"main": "dist/magic-form.umd.js",
|
||||
"module": "dist/magic-form.es.js",
|
||||
"main": "dist/tmagic-form.umd.js",
|
||||
"module": "dist/tmagic-form.es.js",
|
||||
"style": "dist/style.css",
|
||||
"types": "dist/types/src/index.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"import": "./dist/magic-form.es.js",
|
||||
"require": "./dist/magic-form.umd.js"
|
||||
"import": "./dist/tmagic-form.es.js",
|
||||
"require": "./dist/tmagic-form.umd.js"
|
||||
},
|
||||
"./dist/style.css": {
|
||||
"import": "./dist/style.css",
|
||||
@@ -27,7 +27,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons": "0.0.11",
|
||||
"@tmagic/utils": "^1.0.0-beta.1",
|
||||
"@tmagic/utils": "^1.0.0-beta.2",
|
||||
"element-plus": "^2.0.2",
|
||||
"lodash-es": "^4.17.21",
|
||||
"moment": "^2.29.1",
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<template>
|
||||
<ElForm
|
||||
v-if="initialized && Array.isArray(config)"
|
||||
<el-form
|
||||
class="m-form"
|
||||
ref="elForm"
|
||||
:model="values"
|
||||
@@ -10,25 +9,26 @@
|
||||
:inline="inline"
|
||||
:label-position="labelPosition"
|
||||
>
|
||||
<MContainer
|
||||
v-for="(item, index) in config"
|
||||
:key="item[keyProp] ?? index"
|
||||
:config="item"
|
||||
:model="values"
|
||||
:label-width="item.labelWidth || labelWidth"
|
||||
:step-active="stepActive"
|
||||
:size="size"
|
||||
@change="changeHandler"
|
||||
></MContainer>
|
||||
</ElForm>
|
||||
<template v-if="initialized && Array.isArray(config)">
|
||||
<m-form-container
|
||||
v-for="(item, index) in config"
|
||||
:key="item[keyProp] ?? index"
|
||||
:config="item"
|
||||
:model="values"
|
||||
:label-width="item.labelWidth || labelWidth"
|
||||
:step-active="stepActive"
|
||||
:size="size"
|
||||
@change="changeHandler"
|
||||
></m-form-container>
|
||||
</template>
|
||||
</el-form>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent, PropType, provide, reactive, ref, watchEffect } from 'vue';
|
||||
import { defineComponent, PropType, provide, reactive, ref, toRaw, watch } from 'vue';
|
||||
import { ElForm } from 'element-plus';
|
||||
import { cloneDeep } from 'lodash-es';
|
||||
import { cloneDeep, isEqual } from 'lodash-es';
|
||||
|
||||
import MContainer from './containers/Container.vue';
|
||||
import { getConfig } from './utils/config';
|
||||
import { initValue } from './utils/form';
|
||||
import { FormConfig, FormState, FormValue } from './schema';
|
||||
@@ -45,8 +45,6 @@ export interface FieldErrorList {
|
||||
export default defineComponent({
|
||||
name: 'm-form',
|
||||
|
||||
components: { ElForm, MContainer },
|
||||
|
||||
props: {
|
||||
// 表单初始化值
|
||||
initValues: {
|
||||
@@ -89,7 +87,6 @@ export default defineComponent({
|
||||
|
||||
size: {
|
||||
type: String,
|
||||
default: 'small',
|
||||
},
|
||||
|
||||
inline: {
|
||||
@@ -141,16 +138,23 @@ export default defineComponent({
|
||||
|
||||
provide('mForm', formState);
|
||||
|
||||
watchEffect(() => {
|
||||
initialized.value = false;
|
||||
initValue(formState, {
|
||||
initValues: props.initValues,
|
||||
config: props.config,
|
||||
}).then((value) => {
|
||||
values.value = value;
|
||||
initialized.value = true;
|
||||
});
|
||||
});
|
||||
watch(
|
||||
[() => props.config, () => props.initValues],
|
||||
([config], [preConfig]) => {
|
||||
if (!isEqual(toRaw(config), toRaw(preConfig))) {
|
||||
initialized.value = false;
|
||||
}
|
||||
|
||||
initValue(formState, {
|
||||
initValues: props.initValues,
|
||||
config: props.config,
|
||||
}).then((value) => {
|
||||
values.value = value;
|
||||
initialized.value = true;
|
||||
});
|
||||
},
|
||||
{ immediate: true },
|
||||
);
|
||||
|
||||
return {
|
||||
initialized,
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
<m-form
|
||||
v-model="stepActive"
|
||||
ref="form"
|
||||
:size="size"
|
||||
:config="config"
|
||||
:init-values="values"
|
||||
:label-width="labelWidth"
|
||||
@@ -77,6 +78,8 @@ export default defineComponent({
|
||||
|
||||
labelWidth: [Number, String],
|
||||
|
||||
size: String as PropType<'mini' | 'small' | 'medium'>,
|
||||
|
||||
confirmText: {
|
||||
type: String,
|
||||
default: '确定',
|
||||
|
||||
@@ -54,6 +54,10 @@ const getActive = (mForm: FormState | undefined, props: any, activeTabName: stri
|
||||
|
||||
const tabClickHandler = (mForm: FormState | undefined, tab: any, props: any) => {
|
||||
const { config, model, prop } = props;
|
||||
|
||||
// 兼容vue2的element-ui
|
||||
tab.name = tab.paneName;
|
||||
|
||||
if (typeof config.onTabClick === 'function') {
|
||||
config.onTabClick(mForm, tab, { model, formValue: mForm?.values, prop });
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/schema",
|
||||
"main": "src/index.ts",
|
||||
"engines": {
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/stage",
|
||||
"main": "dist/magic-stage.umd.js",
|
||||
"module": "dist/magic-stage.es.js",
|
||||
"main": "dist/tmagic-stage.umd.js",
|
||||
"module": "dist/tmagic-stage.es.js",
|
||||
"types": "dist/types/src/index.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"import": "./dist/magic-stage.es.js",
|
||||
"require": "./dist/magic-stage.umd.js"
|
||||
"import": "./dist/tmagic-stage.es.js",
|
||||
"require": "./dist/tmagic-stage.umd.js"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
@@ -22,8 +22,8 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@scena/guides": "^0.17.0",
|
||||
"@tmagic/schema": "^1.0.0-beta.1",
|
||||
"@tmagic/utils": "^1.0.0-beta.1",
|
||||
"@tmagic/schema": "^1.0.0-beta.2",
|
||||
"@tmagic/utils": "^1.0.0-beta.2",
|
||||
"events": "^3.3.0",
|
||||
"lodash-es": "^4.17.21",
|
||||
"moveable": "^0.25.3"
|
||||
|
||||
2
packages/table/package-lock.json
generated
2
packages/table/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/table",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/table",
|
||||
"main": "dist/magic-table.umd.js",
|
||||
"module": "dist/magic-table.es.js",
|
||||
"main": "dist/tmagic-table.umd.js",
|
||||
"module": "dist/tmagic-table.es.js",
|
||||
"types": "dist/types/src/index.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"import": "./dist/magic-table.es.js",
|
||||
"require": "./dist/magic-table.umd.js"
|
||||
"import": "./dist/tmagic-table.es.js",
|
||||
"require": "./dist/tmagic-table.umd.js"
|
||||
},
|
||||
"./dist/style.css": {
|
||||
"import": "./dist/style.css",
|
||||
@@ -25,7 +25,7 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/form": "^1.0.0-beta.1",
|
||||
"@tmagic/form": "^1.0.0-beta.2",
|
||||
"element-plus": "^2.0.2",
|
||||
"lodash-es": "^4.17.21",
|
||||
"vue": "^3.2.0"
|
||||
|
||||
2
packages/ui-react/package-lock.json
generated
2
packages/ui-react/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/ui-react",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/ui-react",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"main": "src/index.ts",
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
@@ -13,7 +13,7 @@
|
||||
"react:build": "tsc && vite build"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-beta.1",
|
||||
"@tmagic/schema": "^1.0.0-beta.2",
|
||||
"react": "^17.0.0",
|
||||
"react-dom": "^17.0.0"
|
||||
},
|
||||
|
||||
2
packages/ui-vue2/package-lock.json
generated
2
packages/ui-vue2/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/ui-vue2",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/ui-vue2",
|
||||
"main": "src/index.ts",
|
||||
"scripts": {
|
||||
|
||||
2
packages/ui/package-lock.json
generated
2
packages/ui/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/ui",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/ui",
|
||||
"main": "src/index.ts",
|
||||
"engines": {
|
||||
@@ -10,7 +10,7 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-beta.1",
|
||||
"@tmagic/schema": "^1.0.0-beta.2",
|
||||
"delegate": "^3.2.0",
|
||||
"tiny-emitter": "^2.1.0",
|
||||
"vue": "^3.2.0"
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"name": "@tmagic/utils",
|
||||
"main": "dist/magic-utils.umd.js",
|
||||
"module": "dist/magic-utils.es.js",
|
||||
"main": "dist/tmagic-utils.umd.js",
|
||||
"module": "dist/tmagic-utils.es.js",
|
||||
"types": "dist/types/src/index.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"import": "./dist/magic-utils.es.js",
|
||||
"require": "./dist/magic-utils.umd.js"
|
||||
"import": "./dist/tmagic-utils.es.js",
|
||||
"require": "./dist/tmagic-utils.umd.js"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
|
||||
2
playground/package-lock.json
generated
2
playground/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tmagic-playground",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tmagic-playground",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
@@ -9,11 +9,11 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons": "0.0.11",
|
||||
"@tmagic/editor": "^1.0.0-beta.1",
|
||||
"@tmagic/form": "^1.0.0-beta.1",
|
||||
"@tmagic/schema": "^1.0.0-beta.1",
|
||||
"@tmagic/stage": "^1.0.0-beta.1",
|
||||
"@tmagic/utils": "^1.0.0-beta.1",
|
||||
"@tmagic/editor": "^1.0.0-beta.2",
|
||||
"@tmagic/form": "^1.0.0-beta.2",
|
||||
"@tmagic/schema": "^1.0.0-beta.2",
|
||||
"@tmagic/stage": "^1.0.0-beta.2",
|
||||
"@tmagic/utils": "^1.0.0-beta.2",
|
||||
"element-plus": "^2.0.2",
|
||||
"serialize-javascript": "^6.0.0",
|
||||
"vue": "^3.2.0",
|
||||
|
||||
2
runtime/react/package-lock.json
generated
2
runtime/react/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-react",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-react",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "npm run build && npm run serve",
|
||||
|
||||
2
runtime/vue2/package-lock.json
generated
2
runtime/vue2/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-vue2",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-vue2",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "npm run build && npm run serve",
|
||||
|
||||
2
runtime/vue3/package-lock.json
generated
2
runtime/vue3/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-vue3",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-vue3",
|
||||
"version": "1.0.0-beta.1",
|
||||
"version": "1.0.0-beta.2",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "npm run build && npm run serve",
|
||||
|
||||
Reference in New Issue
Block a user