Compare commits
5 Commits
v1.4.11
...
v1.0.0-rc.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
28d5ad4573 | ||
|
|
8656f48714 | ||
|
|
166904b18f | ||
|
|
77f36965d8 | ||
|
|
64798b21c6 |
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"npmClient": "npm",
|
||||
"packages": [
|
||||
"packages/*",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/core",
|
||||
"sideEffects": [
|
||||
"dist/*"
|
||||
@@ -33,7 +33,7 @@
|
||||
"vue"
|
||||
],
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/editor",
|
||||
"sideEffects": [
|
||||
"dist/*",
|
||||
@@ -45,11 +45,11 @@
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.18.0",
|
||||
"@element-plus/icons": "0.0.11",
|
||||
"@tmagic/core": "^1.0.0-rc.3",
|
||||
"@tmagic/form": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/stage": "^1.0.0-rc.3",
|
||||
"@tmagic/utils": "^1.0.0-rc.3",
|
||||
"@tmagic/core": "^1.0.0-rc.4",
|
||||
"@tmagic/form": "^1.0.0-rc.4",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@tmagic/stage": "^1.0.0-rc.4",
|
||||
"@tmagic/utils": "^1.0.0-rc.4",
|
||||
"buffer": "^6.0.3",
|
||||
"color": "^3.1.3",
|
||||
"element-plus": "^2.2.0",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div v-if="menuData.length" v-show="visible" class="magic-editor-content-menu" ref="menu" :style="menuStyle">
|
||||
<div v-if="menuData.length && visible" class="magic-editor-content-menu" ref="menu" :style="menuStyle">
|
||||
<div>
|
||||
<tool-button
|
||||
v-for="(item, index) in menuData"
|
||||
|
||||
@@ -69,8 +69,20 @@ export default defineComponent({
|
||||
text: '粘贴',
|
||||
display: () => canPaste.value,
|
||||
handler: () => {
|
||||
const top = menu.value?.$el.offsetTop || 0;
|
||||
const left = menu.value?.$el.offsetLeft || 0;
|
||||
const stage = editorService?.get<StageCore>('stage');
|
||||
|
||||
const rect = menu.value?.$el.getBoundingClientRect();
|
||||
const parentRect = stage?.container?.getBoundingClientRect();
|
||||
let left = (rect?.left || 0) - (parentRect?.left || 0);
|
||||
let top = (rect?.top || 0) - (parentRect?.top || 0);
|
||||
|
||||
if (node.value?.items && stage) {
|
||||
const parentEl = stage.renderer.contentWindow?.document.getElementById(`${node.value.id}`);
|
||||
const parentElRect = parentEl?.getBoundingClientRect();
|
||||
left = left - (parentElRect?.left || 0);
|
||||
top = top - (parentElRect?.top || 0);
|
||||
}
|
||||
|
||||
editorService?.paste({ left, top });
|
||||
},
|
||||
},
|
||||
|
||||
@@ -91,7 +91,7 @@ const doAction = async (
|
||||
* editorService.afterAdd();
|
||||
* }
|
||||
*
|
||||
* 调用时的参数会透传到before方法的参数中, 然后before的return 会作为原方法的参数和after的参数,after最后一个参数则是原方法的return值;
|
||||
* 调用时的参数会透传到before方法的参数中, 然后before的return 会作为原方法的参数和after的参数,after第一个参数则是原方法的return值;
|
||||
* 如需终止后续方法调用可以return new Error();
|
||||
*
|
||||
* 方法2:
|
||||
|
||||
@@ -33,6 +33,7 @@ import {
|
||||
change2Fixed,
|
||||
COPY_STORAGE_KEY,
|
||||
Fixed2Other,
|
||||
generatePageNameByApp,
|
||||
getNodeIndex,
|
||||
initPosition,
|
||||
isFixed,
|
||||
@@ -502,6 +503,10 @@ class Editor extends BaseService {
|
||||
};
|
||||
}
|
||||
|
||||
if (isPage(config)) {
|
||||
config.name = generatePageNameByApp(this.get('root'));
|
||||
}
|
||||
|
||||
return await this.add(config);
|
||||
}
|
||||
|
||||
|
||||
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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/form",
|
||||
"sideEffects": [
|
||||
"dist/*",
|
||||
@@ -35,7 +35,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons": "0.0.11",
|
||||
"@tmagic/utils": "^1.0.0-rc.3",
|
||||
"@tmagic/utils": "^1.0.0-rc.4",
|
||||
"element-plus": "^2.2.0",
|
||||
"lodash-es": "^4.17.21",
|
||||
"moment": "^2.29.2",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/schema",
|
||||
"sideEffects": false,
|
||||
"main": "dist/tmagic-schema.umd.js",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/stage",
|
||||
"sideEffects": [
|
||||
"dist/*"
|
||||
@@ -27,9 +27,9 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@scena/guides": "^0.17.0",
|
||||
"@tmagic/core": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/utils": "^1.0.0-rc.3",
|
||||
"@tmagic/core": "^1.0.0-rc.4",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@tmagic/utils": "^1.0.0-rc.4",
|
||||
"events": "^3.3.0",
|
||||
"lodash-es": "^4.17.21",
|
||||
"moveable": "^0.29.4",
|
||||
|
||||
@@ -25,7 +25,7 @@ import MoveableHelper from 'moveable-helper';
|
||||
|
||||
import { DRAG_EL_ID_PREFIX, GHOST_EL_ID_PREFIX, GuidesType, Mode } from './const';
|
||||
import StageCore from './StageCore';
|
||||
import type { Offset, Runtime, SortEventData, StageDragResizeConfig } from './types';
|
||||
import type { Offset, SortEventData, StageDragResizeConfig } from './types';
|
||||
import { getAbsolutePosition, getGuideLineFromCache, getMode, getOffset } from './util';
|
||||
|
||||
/** 拖动状态 */
|
||||
@@ -166,11 +166,38 @@ export default class StageDragResize extends EventEmitter {
|
||||
|
||||
this.updateDragEl(el);
|
||||
|
||||
this.setElementGuidelines(el);
|
||||
|
||||
this.moveableOptions = this.getOptions({
|
||||
target: this.dragEl,
|
||||
});
|
||||
}
|
||||
|
||||
private setElementGuidelines(el: HTMLElement) {
|
||||
const nodes = el.parentElement?.children || [];
|
||||
|
||||
this.elementGuidelines.forEach((node) => {
|
||||
node.remove();
|
||||
});
|
||||
this.elementGuidelines = [];
|
||||
|
||||
if (this.mode === Mode.ABSOLUTE) {
|
||||
const frame = document.createDocumentFragment();
|
||||
|
||||
for (const node of nodes) {
|
||||
const { width, height } = node.getBoundingClientRect();
|
||||
if (node === el) continue;
|
||||
const { left, top } = getOffset(node as HTMLElement);
|
||||
const elementGuideline = document.createElement('div');
|
||||
elementGuideline.style.cssText = `position: absolute;width: ${width}px;height: ${height}px;top: ${top}px;left: ${left}px`;
|
||||
this.elementGuidelines.push(elementGuideline);
|
||||
frame.append(elementGuideline);
|
||||
}
|
||||
|
||||
this.container.append(frame);
|
||||
}
|
||||
}
|
||||
|
||||
private initMoveable() {
|
||||
this.moveable?.destroy();
|
||||
|
||||
@@ -288,19 +315,6 @@ export default class StageDragResize extends EventEmitter {
|
||||
});
|
||||
}
|
||||
|
||||
private getSnapElements(runtime: Runtime, el?: HTMLElement): HTMLElement[] {
|
||||
const { renderer, mask } = this.core;
|
||||
const getSnapElements =
|
||||
runtime?.getSnapElements ||
|
||||
(() => {
|
||||
const doc = renderer.contentWindow?.document;
|
||||
return doc ? Array.from(doc.querySelectorAll('[id]')) : [];
|
||||
});
|
||||
return getSnapElements(el).filter(
|
||||
(element) => element !== this.target && !this.target?.contains(element) && element !== mask.page,
|
||||
);
|
||||
}
|
||||
|
||||
private sort(): void {
|
||||
if (!this.target || !this.ghostEl) throw new Error('未知错误');
|
||||
const { top } = this.ghostEl.getBoundingClientRect();
|
||||
|
||||
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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/table",
|
||||
"sideEffects": [
|
||||
"dist/*"
|
||||
@@ -30,7 +30,7 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/form": "^1.0.0-rc.3",
|
||||
"@tmagic/form": "^1.0.0-rc.4",
|
||||
"element-plus": "^2.2.0",
|
||||
"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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@tmagic/ui-react",
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"main": "src/index.ts",
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
@@ -13,7 +13,7 @@
|
||||
"react:build": "tsc && vite build"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"qrcode": "^1.5.0",
|
||||
"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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/ui-vue2",
|
||||
"main": "src/index.ts",
|
||||
"scripts": {
|
||||
@@ -13,10 +13,10 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@vue/composition-api": "1.0.5",
|
||||
"vue": "^2.6.14",
|
||||
"qrcode": "^1.5.0"
|
||||
"qrcode": "^1.5.0",
|
||||
"vue": "^2.6.14"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@vue/composition-api": "1.0.5",
|
||||
|
||||
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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/ui",
|
||||
"main": "src/index.ts",
|
||||
"engines": {
|
||||
@@ -11,7 +11,7 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"delegate": "^3.2.0",
|
||||
"qrcode": "^1.5.0",
|
||||
"tiny-emitter": "^2.1.0",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"name": "@tmagic/utils",
|
||||
"main": "dist/tmagic-utils.umd.js",
|
||||
"module": "dist/tmagic-utils.es.js",
|
||||
@@ -24,7 +24,7 @@
|
||||
"url": "https://github.com/Tencent/tmagic-editor.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"moment": "^2.29.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
2
playground/package-lock.json
generated
2
playground/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tmagic-playground",
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tmagic-playground",
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "vite --mode vue3",
|
||||
@@ -11,11 +11,11 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons": "0.0.11",
|
||||
"@tmagic/editor": "^1.0.0-rc.3",
|
||||
"@tmagic/form": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/stage": "^1.0.0-rc.3",
|
||||
"@tmagic/utils": "^1.0.0-rc.3",
|
||||
"@tmagic/editor": "^1.0.0-rc.4",
|
||||
"@tmagic/form": "^1.0.0-rc.4",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@tmagic/stage": "^1.0.0-rc.4",
|
||||
"@tmagic/utils": "^1.0.0-rc.4",
|
||||
"element-plus": "^2.2.0",
|
||||
"monaco-editor": "^0.32.1",
|
||||
"serialize-javascript": "^6.0.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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-react",
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev:react": "npm run build && npm run serve",
|
||||
@@ -9,8 +9,8 @@
|
||||
"serve": "vite preview --port 8076"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/stage": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@tmagic/stage": "^1.0.0-rc.4",
|
||||
"react": "^17.0.2",
|
||||
"react-dom": "^17.0.2"
|
||||
},
|
||||
|
||||
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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-vue2",
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev:vue2": "npm run build && npm run serve",
|
||||
@@ -9,8 +9,8 @@
|
||||
"serve": "vite preview --port 8077"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/stage": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@tmagic/stage": "^1.0.0-rc.4",
|
||||
"@vue/composition-api": "1.0.5",
|
||||
"vue": "^2.6.14"
|
||||
},
|
||||
|
||||
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-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "runtime-vue3",
|
||||
"version": "1.0.0-rc.3",
|
||||
"version": "1.0.0-rc.4",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "npm run build && npm run serve",
|
||||
@@ -9,8 +9,8 @@
|
||||
"serve": "vite preview --port 8078"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tmagic/schema": "^1.0.0-rc.3",
|
||||
"@tmagic/stage": "^1.0.0-rc.3",
|
||||
"@tmagic/schema": "^1.0.0-rc.4",
|
||||
"@tmagic/stage": "^1.0.0-rc.4",
|
||||
"axios": "^0.25.0",
|
||||
"vue": "^3.2.0"
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user