|
@@ -1124,4 +1124,152 @@ export const useExtendData = () => {
|
|
|
getExtendData,
|
|
|
setExtendData,
|
|
|
};
|
|
|
-};
|
|
|
+};
|
|
|
+
|
|
|
+export function dealDataBeforeOpen(data){
|
|
|
+ data.oldV = false;
|
|
|
+ data.pens.forEach((pen)=>{
|
|
|
+ if(pen.image){
|
|
|
+ pen.image = pen.image.split('?')[0];
|
|
|
+ }
|
|
|
+ if (!(pen.animations && pen.animations.length)) {
|
|
|
+ if (!pen.type && pen.frames) {
|
|
|
+ pen.animations = [
|
|
|
+ {
|
|
|
+ name: '动画1',
|
|
|
+ temType: 'id',
|
|
|
+ animate: 'custom',
|
|
|
+ frames: deepClone(pen.frames),
|
|
|
+ animateCycle: pen.animateCycle,
|
|
|
+ keepAnimateState: pen.keepAnimateState,
|
|
|
+ linear: pen.linear,
|
|
|
+ autoPlay: pen.autoPlay,
|
|
|
+ nextAnimate: pen.nextAnimate,
|
|
|
+ },
|
|
|
+ ];
|
|
|
+ data.oldV = true;
|
|
|
+ } else if (pen.type && pen.lineAnimateType !== undefined) {
|
|
|
+ pen.animations = [
|
|
|
+ {
|
|
|
+ name: '动画1',
|
|
|
+ temType: 'id',
|
|
|
+ animateSpan: pen.animateSpan || 1,
|
|
|
+ lineAnimateType: pen.lineAnimateType,
|
|
|
+ animateColor: pen.animateColor,
|
|
|
+ animateReverse: pen.animateReverse,
|
|
|
+ animateCycle: pen.animateCycle,
|
|
|
+ animateLineWidth: pen.animateLineWidth,
|
|
|
+ autoPlay: pen.autoPlay,
|
|
|
+ nextAnimate: pen.nextAnimate,
|
|
|
+ },
|
|
|
+ ];
|
|
|
+ data.oldV = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (pen.events?.length) {
|
|
|
+ for (let i = 0; i < pen.events.length; i++) {
|
|
|
+ const event = pen.events[i];
|
|
|
+ // pen.events.forEach((event)=>{
|
|
|
+ if (event.action !== undefined) {
|
|
|
+ data.oldV = true;
|
|
|
+ // 老格式
|
|
|
+ if (event.name === 'valueUpdate') {
|
|
|
+ if (event.where && event.where.key) {
|
|
|
+ if (!pen.realTimes) {
|
|
|
+ pen.realTimes = [];
|
|
|
+ }
|
|
|
+ let index = pen.realTimes.findIndex(
|
|
|
+ (el) => el.key === event.where.key
|
|
|
+ );
|
|
|
+ let trigger = {
|
|
|
+ name: '状态1',
|
|
|
+ conditionType: 'and',
|
|
|
+ conditions: [
|
|
|
+ {
|
|
|
+ type: event.where?.type === 'custom' ? 'fn' : '',
|
|
|
+ key: event.where?.key,
|
|
|
+ operator: event.where?.comparison,
|
|
|
+ value: event.where?.value,
|
|
|
+ fnJs: event.where?.fnJs,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ actions: [
|
|
|
+ {
|
|
|
+ action: event.action,
|
|
|
+ value: event.value,
|
|
|
+ params: event.params,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ };
|
|
|
+ if (index !== -1) {
|
|
|
+ pen.realTimes[index].triggers.push(trigger);
|
|
|
+ } else {
|
|
|
+ pen.realTimes.push({
|
|
|
+ label: event.where.key,
|
|
|
+ key: event.where.key,
|
|
|
+ triggers: [trigger],
|
|
|
+ });
|
|
|
+ }
|
|
|
+ pen.events.splice(i, 1);
|
|
|
+ i--;
|
|
|
+ } else {
|
|
|
+ //TODO 没有选择触发条件的情况
|
|
|
+ if (event.value.indexOf('pen.value') !== -1) {
|
|
|
+ if (!pen.realTimes) {
|
|
|
+ pen.realTimes = [];
|
|
|
+ }
|
|
|
+ pen.realTimes.push({
|
|
|
+ label: 'value',
|
|
|
+ key: 'value',
|
|
|
+ triggers: [
|
|
|
+ {
|
|
|
+ name: '状态1',
|
|
|
+ conditionType: 'and',
|
|
|
+ conditions: [],
|
|
|
+ actions: [
|
|
|
+ {
|
|
|
+ action: event.action,
|
|
|
+ value: event.value,
|
|
|
+ params: event.params,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ });
|
|
|
+ pen.events.splice(i, 1);
|
|
|
+ i--;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ event.conditionType = 'and';
|
|
|
+ event.actions = [
|
|
|
+ {
|
|
|
+ action: event.action,
|
|
|
+ value: event.value,
|
|
|
+ params: event.params,
|
|
|
+ },
|
|
|
+ ];
|
|
|
+
|
|
|
+ if (event.where && event.where.type) {
|
|
|
+ event.conditions = [
|
|
|
+ {
|
|
|
+ type: event.where.type === 'custom' ? 'fn' : '',
|
|
|
+ key: event.where.key,
|
|
|
+ operator: event.where.comparison,
|
|
|
+ //valueType target
|
|
|
+ value: event.where.value,
|
|
|
+ fnJs: event.where.fnJs,
|
|
|
+ },
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ delete event.action;
|
|
|
+ delete event.value;
|
|
|
+ delete event.params;
|
|
|
+ delete event.where;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|