mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-22 09:30:14 +01:00
This commit is contained in:
parent
b4c9a028fb
commit
941291737a
7 changed files with 272 additions and 2 deletions
|
|
@ -225,6 +225,7 @@ export class Gutter {
|
||||||
const avID = blockElement.getAttribute("data-av-id");
|
const avID = blockElement.getAttribute("data-av-id");
|
||||||
const srcIDs = [Lute.NewNodeID()];
|
const srcIDs = [Lute.NewNodeID()];
|
||||||
const previousID = event.altKey ? (rowElement.previousElementSibling.getAttribute("data-id") || "") : buttonElement.dataset.rowId;
|
const previousID = event.altKey ? (rowElement.previousElementSibling.getAttribute("data-id") || "") : buttonElement.dataset.rowId;
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "insertAttrViewBlock",
|
action: "insertAttrViewBlock",
|
||||||
avID,
|
avID,
|
||||||
|
|
@ -232,12 +233,21 @@ export class Gutter {
|
||||||
srcIDs,
|
srcIDs,
|
||||||
isDetached: true,
|
isDetached: true,
|
||||||
blockID: id,
|
blockID: id,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs,
|
srcIDs,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
insertAttrViewBlockAnimation(protyle, blockElement, srcIDs, previousID, avID);
|
insertAttrViewBlockAnimation(protyle, blockElement, srcIDs, previousID, avID);
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
} else {
|
} else {
|
||||||
avContextmenu(protyle, rowElement as HTMLElement, {
|
avContextmenu(protyle, rowElement as HTMLElement, {
|
||||||
x: gutterRect.left,
|
x: gutterRect.left,
|
||||||
|
|
@ -812,6 +822,10 @@ export class Gutter {
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
isDetached: false,
|
isDetached: false,
|
||||||
blockID: listItemElement.dataset.blockId
|
blockID: listItemElement.dataset.blockId
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: listItemElement.dataset.blockId,
|
||||||
|
data: dayjs().format("YYYYMMDDHHmmss"),
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
|
|
@ -1269,6 +1283,10 @@ export class Gutter {
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
isDetached: false,
|
isDetached: false,
|
||||||
blockID: listItemElement.dataset.blockId
|
blockID: listItemElement.dataset.blockId
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: listItemElement.dataset.blockId,
|
||||||
|
data: dayjs().format("YYYYMMDDHHmmss"),
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
|
|
|
||||||
|
|
@ -63,6 +63,10 @@ export const openTitleMenu = (protyle: IProtyle, position: IPosition) => {
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
isDetached: false,
|
isDetached: false,
|
||||||
blockID: listItemElement.dataset.nodeId
|
blockID: listItemElement.dataset.nodeId
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: listItemElement.dataset.nodeId,
|
||||||
|
data: dayjs().format("YYYYMMDDHHmmss"),
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
|
|
|
||||||
|
|
@ -75,18 +75,28 @@ export const avClick = (protyle: IProtyle, event: MouseEvent & { target: HTMLEle
|
||||||
} else if (type === "av-add-more") {
|
} else if (type === "av-add-more") {
|
||||||
const avID = blockElement.getAttribute("data-av-id");
|
const avID = blockElement.getAttribute("data-av-id");
|
||||||
const srcIDs = [Lute.NewNodeID()];
|
const srcIDs = [Lute.NewNodeID()];
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "insertAttrViewBlock",
|
action: "insertAttrViewBlock",
|
||||||
avID,
|
avID,
|
||||||
srcIDs,
|
srcIDs,
|
||||||
isDetached: true,
|
isDetached: true,
|
||||||
blockID: blockElement.dataset.nodeId,
|
blockID: blockElement.dataset.nodeId,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs,
|
srcIDs,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
insertAttrViewBlockAnimation(protyle, blockElement, srcIDs, undefined, avID);
|
insertAttrViewBlockAnimation(protyle, blockElement, srcIDs, undefined, avID);
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -145,6 +155,7 @@ export const avClick = (protyle: IProtyle, event: MouseEvent & { target: HTMLEle
|
||||||
const avID = blockElement.getAttribute("data-av-id");
|
const avID = blockElement.getAttribute("data-av-id");
|
||||||
const srcIDs = [Lute.NewNodeID()];
|
const srcIDs = [Lute.NewNodeID()];
|
||||||
const previousID = blockElement.querySelector(".av__row--util").previousElementSibling.getAttribute("data-id") || "";
|
const previousID = blockElement.querySelector(".av__row--util").previousElementSibling.getAttribute("data-id") || "";
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "insertAttrViewBlock",
|
action: "insertAttrViewBlock",
|
||||||
avID,
|
avID,
|
||||||
|
|
@ -152,12 +163,21 @@ export const avClick = (protyle: IProtyle, event: MouseEvent & { target: HTMLEle
|
||||||
srcIDs,
|
srcIDs,
|
||||||
isDetached: true,
|
isDetached: true,
|
||||||
blockID: blockElement.dataset.nodeId,
|
blockID: blockElement.dataset.nodeId,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs,
|
srcIDs,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
insertAttrViewBlockAnimation(protyle, blockElement, srcIDs, previousID, avID);
|
insertAttrViewBlockAnimation(protyle, blockElement, srcIDs, previousID, avID);
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
return true;
|
return true;
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@ import {focusBlock} from "../../util/selection";
|
||||||
import {toggleUpdateRelationBtn} from "./relation";
|
import {toggleUpdateRelationBtn} from "./relation";
|
||||||
import {bindRollupData, getRollupHTML} from "./rollup";
|
import {bindRollupData, getRollupHTML} from "./rollup";
|
||||||
import {Constants} from "../../../constants";
|
import {Constants} from "../../../constants";
|
||||||
|
import * as dayjs from "dayjs";
|
||||||
|
|
||||||
export const duplicateCol = (options: {
|
export const duplicateCol = (options: {
|
||||||
protyle: IProtyle,
|
protyle: IProtyle,
|
||||||
|
|
@ -19,7 +20,8 @@ export const duplicateCol = (options: {
|
||||||
colId: string,
|
colId: string,
|
||||||
newValue: string,
|
newValue: string,
|
||||||
icon: string
|
icon: string
|
||||||
viewID: string
|
viewID: string,
|
||||||
|
blockElement: Element
|
||||||
}) => {
|
}) => {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
const nameMatch = options.newValue.match(/^(.*) \((\d+)\)$/);
|
const nameMatch = options.newValue.match(/^(.*) \((\d+)\)$/);
|
||||||
|
|
@ -28,6 +30,8 @@ export const duplicateCol = (options: {
|
||||||
} else {
|
} else {
|
||||||
options.newValue = `${options.newValue} (1)`;
|
options.newValue = `${options.newValue} (1)`;
|
||||||
}
|
}
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
|
const blockId = options.blockElement.getAttribute("data-node-id");
|
||||||
if (["select", "mSelect", "rollup"].includes(options.type)) {
|
if (["select", "mSelect", "rollup"].includes(options.type)) {
|
||||||
fetchPost("/api/av/renderAttributeView", {
|
fetchPost("/api/av/renderAttributeView", {
|
||||||
id: options.avID,
|
id: options.avID,
|
||||||
|
|
@ -54,10 +58,18 @@ export const duplicateCol = (options: {
|
||||||
id,
|
id,
|
||||||
avID: options.avID,
|
avID: options.avID,
|
||||||
data: colOptions
|
data: colOptions
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID: options.avID,
|
avID: options.avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: options.blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -69,14 +81,22 @@ export const duplicateCol = (options: {
|
||||||
data: options.icon,
|
data: options.icon,
|
||||||
id,
|
id,
|
||||||
previousID: options.colId,
|
previousID: options.colId,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID: options.avID,
|
avID: options.avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: options.blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
}
|
}
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: options.protyle.wysiwyg.element.querySelector(`[data-av-id="${options.avID}"]`),
|
blockElement: options.blockElement,
|
||||||
protyle: options.protyle,
|
protyle: options.protyle,
|
||||||
type: options.type,
|
type: options.type,
|
||||||
name: options.newValue,
|
name: options.newValue,
|
||||||
|
|
@ -84,6 +104,7 @@ export const duplicateCol = (options: {
|
||||||
previousID: options.colId,
|
previousID: options.colId,
|
||||||
id
|
id
|
||||||
});
|
});
|
||||||
|
options.blockElement.setAttribute("updated", newUpdated);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const getEditHTML = (options: {
|
export const getEditHTML = (options: {
|
||||||
|
|
@ -751,6 +772,7 @@ export const showColMenu = (protyle: IProtyle, blockElement: Element, cellElemen
|
||||||
label: window.siyuan.languages.duplicate,
|
label: window.siyuan.languages.duplicate,
|
||||||
click() {
|
click() {
|
||||||
duplicateCol({
|
duplicateCol({
|
||||||
|
blockElement,
|
||||||
viewID: blockElement.getAttribute(Constants.CUSTOM_SY_AV_VIEW),
|
viewID: blockElement.getAttribute(Constants.CUSTOM_SY_AV_VIEW),
|
||||||
protyle,
|
protyle,
|
||||||
type,
|
type,
|
||||||
|
|
@ -766,10 +788,15 @@ export const showColMenu = (protyle: IProtyle, blockElement: Element, cellElemen
|
||||||
icon: "iconTrashcan",
|
icon: "iconTrashcan",
|
||||||
label: window.siyuan.languages.delete,
|
label: window.siyuan.languages.delete,
|
||||||
click() {
|
click() {
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id: colId,
|
id: colId,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockID,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: oldValue,
|
name: oldValue,
|
||||||
|
|
@ -777,8 +804,13 @@ export const showColMenu = (protyle: IProtyle, blockElement: Element, cellElemen
|
||||||
type: type,
|
type: type,
|
||||||
id: colId,
|
id: colId,
|
||||||
previousID: cellElement.previousElementSibling?.getAttribute("data-col-id") || "",
|
previousID: cellElement.previousElementSibling?.getAttribute("data-col-id") || "",
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockID,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
removeAttrViewColAnimation(blockElement, colId);
|
removeAttrViewColAnimation(blockElement, colId);
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addSeparator();
|
menu.addSeparator();
|
||||||
|
|
@ -832,11 +864,13 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
if (typeof previousID === "undefined") {
|
if (typeof previousID === "undefined") {
|
||||||
previousID = Array.from(blockElement.querySelectorAll(".av__row--header .av__cell")).pop().getAttribute("data-col-id");
|
previousID = Array.from(blockElement.querySelectorAll(".av__row--header .av__cell")).pop().getAttribute("data-col-id");
|
||||||
}
|
}
|
||||||
|
const blockId = blockElement.getAttribute("data-node-id");
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
icon: "iconAlignLeft",
|
icon: "iconAlignLeft",
|
||||||
label: window.siyuan.languages.text,
|
label: window.siyuan.languages.text,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.text,
|
name: window.siyuan.languages.text,
|
||||||
|
|
@ -844,10 +878,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "text",
|
type: "text",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -857,6 +899,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -864,6 +907,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.number,
|
label: window.siyuan.languages.number,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.number,
|
name: window.siyuan.languages.number,
|
||||||
|
|
@ -871,10 +915,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "number",
|
type: "number",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -884,6 +936,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -891,6 +944,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.select,
|
label: window.siyuan.languages.select,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.select,
|
name: window.siyuan.languages.select,
|
||||||
|
|
@ -898,10 +952,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "select",
|
type: "select",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -911,6 +973,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -918,6 +981,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.multiSelect,
|
label: window.siyuan.languages.multiSelect,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.multiSelect,
|
name: window.siyuan.languages.multiSelect,
|
||||||
|
|
@ -925,10 +989,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "mSelect",
|
type: "mSelect",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -938,6 +1010,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -945,6 +1018,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.date,
|
label: window.siyuan.languages.date,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.date,
|
name: window.siyuan.languages.date,
|
||||||
|
|
@ -952,10 +1026,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "date",
|
type: "date",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -965,6 +1047,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -972,6 +1055,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.assets,
|
label: window.siyuan.languages.assets,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.assets,
|
name: window.siyuan.languages.assets,
|
||||||
|
|
@ -979,10 +1063,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "mAsset",
|
type: "mAsset",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -992,6 +1084,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -999,6 +1092,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.checkbox,
|
label: window.siyuan.languages.checkbox,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.checkbox,
|
name: window.siyuan.languages.checkbox,
|
||||||
|
|
@ -1006,10 +1100,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "checkbox",
|
type: "checkbox",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1019,6 +1121,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1026,6 +1129,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.link,
|
label: window.siyuan.languages.link,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.link,
|
name: window.siyuan.languages.link,
|
||||||
|
|
@ -1033,10 +1137,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "url",
|
type: "url",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1046,6 +1158,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1053,6 +1166,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.email,
|
label: window.siyuan.languages.email,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.email,
|
name: window.siyuan.languages.email,
|
||||||
|
|
@ -1060,10 +1174,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "email",
|
type: "email",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1073,6 +1195,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1080,6 +1203,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.phone,
|
label: window.siyuan.languages.phone,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.phone,
|
name: window.siyuan.languages.phone,
|
||||||
|
|
@ -1087,10 +1211,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "phone",
|
type: "phone",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1100,6 +1232,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1107,6 +1240,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.template,
|
label: window.siyuan.languages.template,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.template,
|
name: window.siyuan.languages.template,
|
||||||
|
|
@ -1114,10 +1248,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "template",
|
type: "template",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1127,6 +1269,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1134,6 +1277,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.relation,
|
label: window.siyuan.languages.relation,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.relation,
|
name: window.siyuan.languages.relation,
|
||||||
|
|
@ -1141,10 +1285,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "relation",
|
type: "relation",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1154,6 +1306,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1161,6 +1314,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.rollup,
|
label: window.siyuan.languages.rollup,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.rollup,
|
name: window.siyuan.languages.rollup,
|
||||||
|
|
@ -1168,10 +1322,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "rollup",
|
type: "rollup",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1181,6 +1343,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1188,6 +1351,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.createdTime,
|
label: window.siyuan.languages.createdTime,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.createdTime,
|
name: window.siyuan.languages.createdTime,
|
||||||
|
|
@ -1195,10 +1359,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "created",
|
type: "created",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1208,6 +1380,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
menu.addItem({
|
menu.addItem({
|
||||||
|
|
@ -1215,6 +1388,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
label: window.siyuan.languages.updatedTime,
|
label: window.siyuan.languages.updatedTime,
|
||||||
click() {
|
click() {
|
||||||
const id = Lute.NewNodeID();
|
const id = Lute.NewNodeID();
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: window.siyuan.languages.updatedTime,
|
name: window.siyuan.languages.updatedTime,
|
||||||
|
|
@ -1222,10 +1396,18 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
type: "updated",
|
type: "updated",
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id,
|
id,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
addAttrViewColAnimation({
|
addAttrViewColAnimation({
|
||||||
blockElement: blockElement,
|
blockElement: blockElement,
|
||||||
|
|
@ -1235,6 +1417,7 @@ export const addCol = (protyle: IProtyle, blockElement: Element, previousID?: st
|
||||||
id,
|
id,
|
||||||
previousID
|
previousID
|
||||||
});
|
});
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return menu;
|
return menu;
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ import {bindRelationEvent, getRelationHTML, openSearchAV, setRelationCell, updat
|
||||||
import {bindRollupData, getRollupHTML, goSearchRollupCol} from "./rollup";
|
import {bindRollupData, getRollupHTML, goSearchRollupCol} from "./rollup";
|
||||||
import {updateCellsValue} from "./cell";
|
import {updateCellsValue} from "./cell";
|
||||||
import {openCalcMenu} from "./calc";
|
import {openCalcMenu} from "./calc";
|
||||||
|
import * as dayjs from "dayjs";
|
||||||
|
|
||||||
export const openMenuPanel = (options: {
|
export const openMenuPanel = (options: {
|
||||||
protyle: IProtyle,
|
protyle: IProtyle,
|
||||||
|
|
@ -1008,6 +1009,7 @@ export const openMenuPanel = (options: {
|
||||||
const colId = menuElement.querySelector(".b3-menu__item").getAttribute("data-col-id");
|
const colId = menuElement.querySelector(".b3-menu__item").getAttribute("data-col-id");
|
||||||
const colData = data.view.columns.find((item: IAVColumn) => item.id === colId);
|
const colData = data.view.columns.find((item: IAVColumn) => item.id === colId);
|
||||||
duplicateCol({
|
duplicateCol({
|
||||||
|
blockElement: options.blockElement,
|
||||||
protyle: options.protyle,
|
protyle: options.protyle,
|
||||||
type: colData.type,
|
type: colData.type,
|
||||||
avID,
|
avID,
|
||||||
|
|
@ -1029,10 +1031,15 @@ export const openMenuPanel = (options: {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(options.protyle, [{
|
transaction(options.protyle, [{
|
||||||
action: "removeAttrViewCol",
|
action: "removeAttrViewCol",
|
||||||
id: colId,
|
id: colId,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockID,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "addAttrViewCol",
|
action: "addAttrViewCol",
|
||||||
name: colData.name,
|
name: colData.name,
|
||||||
|
|
@ -1040,8 +1047,13 @@ export const openMenuPanel = (options: {
|
||||||
type: colData.type,
|
type: colData.type,
|
||||||
id: colId,
|
id: colId,
|
||||||
previousID
|
previousID
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockID,
|
||||||
|
data: options.blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
removeAttrViewColAnimation(options.blockElement, colId);
|
removeAttrViewColAnimation(options.blockElement, colId);
|
||||||
|
options.blockElement.setAttribute("updated", newUpdated);
|
||||||
avPanelElement.remove();
|
avPanelElement.remove();
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import {transaction} from "../../wysiwyg/transaction";
|
||||||
import {genCellValueByElement, getTypeByCellElement, popTextCell, renderCell, renderCellAttr} from "./cell";
|
import {genCellValueByElement, getTypeByCellElement, popTextCell, renderCell, renderCellAttr} from "./cell";
|
||||||
import {fetchPost} from "../../../util/fetch";
|
import {fetchPost} from "../../../util/fetch";
|
||||||
import {showMessage} from "../../../dialog/message";
|
import {showMessage} from "../../../dialog/message";
|
||||||
|
import * as dayjs from "dayjs";
|
||||||
|
|
||||||
export const selectRow = (checkElement: Element, type: "toggle" | "select" | "unselect" | "unselectAll") => {
|
export const selectRow = (checkElement: Element, type: "toggle" | "select" | "unselect" | "unselectAll") => {
|
||||||
const rowElement = hasClosestByClassName(checkElement, "av__row");
|
const rowElement = hasClosestByClassName(checkElement, "av__row");
|
||||||
|
|
@ -319,14 +320,25 @@ export const deleteRow = (blockElement: HTMLElement, protyle: IProtyle) => {
|
||||||
blockID: blockElement.dataset.nodeId
|
blockID: blockElement.dataset.nodeId
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
|
undoOperations.push({
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
|
});
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs: blockIds,
|
srcIDs: blockIds,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: newUpdated,
|
||||||
}], undoOperations);
|
}], undoOperations);
|
||||||
rowElements.forEach(item => {
|
rowElements.forEach(item => {
|
||||||
item.remove();
|
item.remove();
|
||||||
});
|
});
|
||||||
stickyRow(blockElement, protyle.contentElement.getBoundingClientRect(), "all");
|
stickyRow(blockElement, protyle.contentElement.getBoundingClientRect(), "all");
|
||||||
updateHeader(blockElement.querySelector(".av__row"));
|
updateHeader(blockElement.querySelector(".av__row"));
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ import {isBrowser} from "../../util/functions";
|
||||||
import {hideElements} from "../ui/hideElements";
|
import {hideElements} from "../ui/hideElements";
|
||||||
import {insertAttrViewBlockAnimation} from "../render/av/row";
|
import {insertAttrViewBlockAnimation} from "../render/av/row";
|
||||||
import {dragUpload} from "../render/av/asset";
|
import {dragUpload} from "../render/av/asset";
|
||||||
|
import * as dayjs from "dayjs";
|
||||||
|
|
||||||
const moveToNew = (protyle: IProtyle, sourceElements: Element[], targetElement: Element, newSourceElement: Element,
|
const moveToNew = (protyle: IProtyle, sourceElements: Element[], targetElement: Element, newSourceElement: Element,
|
||||||
isSameDoc: boolean, isBottom: boolean, isCopy: boolean) => {
|
isSameDoc: boolean, isBottom: boolean, isCopy: boolean) => {
|
||||||
|
|
@ -890,6 +891,7 @@ export const dropEvent = (protyle: IProtyle, editorElement: HTMLElement) => {
|
||||||
});
|
});
|
||||||
transaction(protyle, doOperations, undoOperations);
|
transaction(protyle, doOperations, undoOperations);
|
||||||
} else {
|
} else {
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "insertAttrViewBlock",
|
action: "insertAttrViewBlock",
|
||||||
avID,
|
avID,
|
||||||
|
|
@ -897,11 +899,20 @@ export const dropEvent = (protyle: IProtyle, editorElement: HTMLElement) => {
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
isDetached: false,
|
isDetached: false,
|
||||||
blockID: blockElement.dataset.nodeId
|
blockID: blockElement.dataset.nodeId
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs: sourceIds,
|
srcIDs: sourceIds,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
insertAttrViewBlockAnimation(protyle, blockElement, sourceIds, previousID);
|
insertAttrViewBlockAnimation(protyle, blockElement, sourceIds, previousID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -951,6 +962,7 @@ export const dropEvent = (protyle: IProtyle, editorElement: HTMLElement) => {
|
||||||
previousID = targetElement.previousElementSibling?.getAttribute("data-id") || "";
|
previousID = targetElement.previousElementSibling?.getAttribute("data-id") || "";
|
||||||
}
|
}
|
||||||
const avID = blockElement.getAttribute("data-av-id");
|
const avID = blockElement.getAttribute("data-av-id");
|
||||||
|
const newUpdated = dayjs().format("YYYYMMDDHHmmss");
|
||||||
transaction(protyle, [{
|
transaction(protyle, [{
|
||||||
action: "insertAttrViewBlock",
|
action: "insertAttrViewBlock",
|
||||||
avID,
|
avID,
|
||||||
|
|
@ -958,12 +970,21 @@ export const dropEvent = (protyle: IProtyle, editorElement: HTMLElement) => {
|
||||||
srcIDs: ids,
|
srcIDs: ids,
|
||||||
isDetached: false,
|
isDetached: false,
|
||||||
blockID: blockElement.dataset.nodeId,
|
blockID: blockElement.dataset.nodeId,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: newUpdated,
|
||||||
}], [{
|
}], [{
|
||||||
action: "removeAttrViewBlock",
|
action: "removeAttrViewBlock",
|
||||||
srcIDs: ids,
|
srcIDs: ids,
|
||||||
avID,
|
avID,
|
||||||
|
}, {
|
||||||
|
action: "doUpdateUpdated",
|
||||||
|
id: blockElement.dataset.nodeId,
|
||||||
|
data: blockElement.getAttribute("updated")
|
||||||
}]);
|
}]);
|
||||||
insertAttrViewBlockAnimation(protyle, blockElement, ids, previousID);
|
insertAttrViewBlockAnimation(protyle, blockElement, ids, previousID);
|
||||||
|
blockElement.setAttribute("updated", newUpdated);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < ids.length; i++) {
|
for (let i = 0; i < ids.length; i++) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue