mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-02-24 07:54:07 +01:00
This commit is contained in:
parent
f68857fda5
commit
ebd399c018
11 changed files with 13 additions and 81 deletions
|
|
@ -4,7 +4,6 @@ import {transaction} from "../../wysiwyg/transaction";
|
|||
export const addCol = (protyle: IProtyle, blockElement: HTMLElement) => {
|
||||
const menu = new Menu("av-header-add");
|
||||
const avID = blockElement.getAttribute("data-av-id");
|
||||
const viewID = blockElement.querySelector(".item--focus").getAttribute("data-id");
|
||||
menu.addItem({
|
||||
icon: "iconAlignLeft",
|
||||
label: window.siyuan.languages.text,
|
||||
|
|
@ -14,14 +13,12 @@ export const addCol = (protyle: IProtyle, blockElement: HTMLElement) => {
|
|||
action: "addAttrViewCol",
|
||||
name: "Text",
|
||||
avID,
|
||||
viewID,
|
||||
type: "text",
|
||||
id
|
||||
}], [{
|
||||
action: "removeAttrViewCol",
|
||||
id,
|
||||
avID,
|
||||
viewID,
|
||||
}]);
|
||||
}
|
||||
});
|
||||
|
|
@ -34,14 +31,12 @@ export const addCol = (protyle: IProtyle, blockElement: HTMLElement) => {
|
|||
action: "addAttrViewCol",
|
||||
name: "Number",
|
||||
avID,
|
||||
viewID,
|
||||
type: "number",
|
||||
id
|
||||
}], [{
|
||||
action: "removeAttrViewCol",
|
||||
id,
|
||||
avID,
|
||||
viewID,
|
||||
}]);
|
||||
}
|
||||
});
|
||||
|
|
@ -54,14 +49,12 @@ export const addCol = (protyle: IProtyle, blockElement: HTMLElement) => {
|
|||
action: "addAttrViewCol",
|
||||
name: "Select",
|
||||
avID,
|
||||
viewID,
|
||||
type: "select",
|
||||
id
|
||||
}], [{
|
||||
action: "removeAttrViewCol",
|
||||
id,
|
||||
avID,
|
||||
viewID,
|
||||
}]);
|
||||
}
|
||||
});
|
||||
|
|
@ -74,14 +67,12 @@ export const addCol = (protyle: IProtyle, blockElement: HTMLElement) => {
|
|||
action: "addAttrViewCol",
|
||||
name: "Multi-select",
|
||||
avID,
|
||||
viewID,
|
||||
type: "mSelect",
|
||||
id
|
||||
}], [{
|
||||
action: "removeAttrViewCol",
|
||||
id,
|
||||
avID,
|
||||
viewID,
|
||||
}]);
|
||||
}
|
||||
});
|
||||
|
|
@ -94,14 +85,12 @@ export const addCol = (protyle: IProtyle, blockElement: HTMLElement) => {
|
|||
action: "addAttrViewCol",
|
||||
name: "Date",
|
||||
avID,
|
||||
viewID,
|
||||
type: "date",
|
||||
id
|
||||
}], [{
|
||||
action: "removeAttrViewCol",
|
||||
id,
|
||||
avID,
|
||||
viewID,
|
||||
}]);
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -56,8 +56,8 @@ const updateCellValue = (protyle: IProtyle, cellElement: HTMLElement, type: TAVC
|
|||
}
|
||||
const avMaskElement = document.querySelector(".av__mask");
|
||||
const cellId = cellElement.getAttribute("data-id");
|
||||
const avId = blockElement.getAttribute("data-av-id");
|
||||
const rowId = rowElement.getAttribute("data-id");
|
||||
const colId = cellElement.getAttribute("data-col-id");
|
||||
const avID = blockElement.getAttribute("data-av-id");
|
||||
let inputValue: string | number = (avMaskElement.querySelector(".b3-text-field") as HTMLInputElement).value;
|
||||
let oldValue: string | number = cellElement.textContent.trim();
|
||||
if (type === "number") {
|
||||
|
|
@ -67,16 +67,16 @@ const updateCellValue = (protyle: IProtyle, cellElement: HTMLElement, type: TAVC
|
|||
transaction(protyle, [{
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
parentID: avId,
|
||||
avID,
|
||||
keyID: colId,
|
||||
data: {
|
||||
[type]: {content: inputValue}
|
||||
}
|
||||
}], [{
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
parentID: avId,
|
||||
avID,
|
||||
keyID: colId,
|
||||
data: {
|
||||
[type]: {content: oldValue}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -66,7 +66,6 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
const type = cellElement.getAttribute("data-dtype") as TAVCol;
|
||||
const colId = cellElement.getAttribute("data-col-id");
|
||||
const avId = blockElement.getAttribute("data-av-id");
|
||||
const viewId = blockElement.querySelector(".item--focus").getAttribute("data-id");
|
||||
const menu = new Menu("av-header-cell", () => {
|
||||
const newValue = (window.siyuan.menus.menu.element.querySelector(".b3-text-field") as HTMLInputElement).value;
|
||||
if (newValue === cellElement.textContent.trim()) {
|
||||
|
|
@ -76,14 +75,12 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
action: "updateAttrViewCol",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
name: newValue,
|
||||
type,
|
||||
}], [{
|
||||
action: "updateAttrViewCol",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
name: cellElement.textContent.trim(),
|
||||
type,
|
||||
}]);
|
||||
|
|
@ -110,7 +107,6 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: response.data.id,
|
||||
viewID: response.data.viewID,
|
||||
data: [{
|
||||
column: colId,
|
||||
order: "ASC"
|
||||
|
|
@ -118,7 +114,6 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: response.data.id,
|
||||
viewID: response.data.viewID,
|
||||
data: response.data.view.sorts
|
||||
}]);
|
||||
});
|
||||
|
|
@ -132,7 +127,6 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: response.data.id,
|
||||
viewID: response.data.viewID,
|
||||
data: [{
|
||||
column: colId,
|
||||
order: "DESC"
|
||||
|
|
@ -140,7 +134,6 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: response.data.id,
|
||||
viewID: response.data.viewID,
|
||||
data: response.data.view.sorts
|
||||
}]);
|
||||
});
|
||||
|
|
@ -169,12 +162,10 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: avData.viewID,
|
||||
data: [filter]
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: avData.viewID,
|
||||
data: []
|
||||
}]);
|
||||
}
|
||||
|
|
@ -197,13 +188,11 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
action: "setAttrViewColHidden",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
data: true
|
||||
}], [{
|
||||
action: "setAttrViewColHidden",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
data: false
|
||||
}]);
|
||||
}
|
||||
|
|
@ -223,12 +212,10 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
action: "removeAttrViewCol",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
}], [{
|
||||
action: "addAttrViewCol",
|
||||
name: cellElement.textContent.trim(),
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
type: type,
|
||||
id: colId
|
||||
}]);
|
||||
|
|
@ -247,13 +234,11 @@ export const showColMenu = (protyle: IProtyle, blockElement: HTMLElement, cellEl
|
|||
action: "setAttrViewColWrap",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
data: inputElement.checked
|
||||
}], [{
|
||||
action: "setAttrViewColWrap",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: viewId,
|
||||
data: !inputElement.checked
|
||||
}]);
|
||||
});
|
||||
|
|
|
|||
|
|
@ -75,12 +75,10 @@ export const setFilter = (options: {
|
|||
transaction(options.protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: options.data.view.filters
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: oldFilters
|
||||
}]);
|
||||
const menuElement = hasClosestByClassName(options.target, "b3-menu");
|
||||
|
|
@ -177,12 +175,10 @@ export const setFilter = (options: {
|
|||
transaction(options.protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: options.data.view.filters
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: oldFilters
|
||||
}]);
|
||||
const menuElement = hasClosestByClassName(options.target, "b3-menu");
|
||||
|
|
@ -255,12 +251,10 @@ export const addFilter = (options: {
|
|||
transaction(options.protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: options.data.view.filters
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: oldFilters
|
||||
}]);
|
||||
options.menuElement.innerHTML = getFiltersHTML(options.data.view);
|
||||
|
|
|
|||
|
|
@ -139,12 +139,10 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: changeData
|
||||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: oldData
|
||||
}]);
|
||||
menuElement.innerHTML = getSortsHTML(data.view.columns, data.view.sorts);
|
||||
|
|
@ -175,12 +173,10 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: changeData
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: oldData
|
||||
}]);
|
||||
menuElement.innerHTML = getFiltersHTML(data.view);
|
||||
|
|
@ -189,13 +185,11 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "sortAttrViewCol",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
previousID: (targetElement.classList.contains("dragover__top") ? targetElement.previousElementSibling?.getAttribute("data-id") : targetElement.getAttribute("data-id")) || "",
|
||||
id: sourceId,
|
||||
}], [{
|
||||
action: "sortAttrViewCol",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
previousID: sourceElement.previousElementSibling?.getAttribute("data-id") || "",
|
||||
id: sourceId,
|
||||
}]);
|
||||
|
|
@ -281,12 +275,10 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: []
|
||||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: data.view.sorts
|
||||
}]);
|
||||
data.view.sorts = [];
|
||||
|
|
@ -310,12 +302,10 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: data.view.sorts
|
||||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: oldSorts
|
||||
}]);
|
||||
menuElement.innerHTML = getSortsHTML(data.view.columns, data.view.sorts);
|
||||
|
|
@ -332,12 +322,10 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: []
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: data.view.filters
|
||||
}]);
|
||||
data.view.filters = [];
|
||||
|
|
@ -361,12 +349,10 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: data.view.filters
|
||||
}], [{
|
||||
action: "setAttrViewFilters",
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: oldFilters
|
||||
}]);
|
||||
menuElement.innerHTML = getFiltersHTML(data.view);
|
||||
|
|
@ -407,14 +393,12 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
action: "setAttrViewColHidden",
|
||||
id: item.id,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: false
|
||||
});
|
||||
undoOperations.push({
|
||||
action: "setAttrViewColHidden",
|
||||
id: item.id,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: true
|
||||
});
|
||||
item.hidden = false;
|
||||
|
|
@ -436,14 +420,12 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
action: "setAttrViewColHidden",
|
||||
id: item.id,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: true
|
||||
});
|
||||
undoOperations.push({
|
||||
action: "setAttrViewColHidden",
|
||||
id: item.id,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: false
|
||||
});
|
||||
item.hidden = true;
|
||||
|
|
@ -462,13 +444,11 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
action: "setAttrViewColHidden",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: true
|
||||
}], [{
|
||||
action: "setAttrViewColHidden",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: false
|
||||
}]);
|
||||
data.view.columns.find((item: IAVColumn) => item.id === colId).hidden = true;
|
||||
|
|
@ -482,13 +462,11 @@ export const openMenuPanel = (protyle: IProtyle,
|
|||
action: "setAttrViewColHidden",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: false
|
||||
}], [{
|
||||
action: "setAttrViewColHidden",
|
||||
id: colId,
|
||||
avID: avId,
|
||||
viewID: data.viewID,
|
||||
data: true
|
||||
}]);
|
||||
data.view.columns.find((item: IAVColumn) => item.id === colId).hidden = false;
|
||||
|
|
|
|||
|
|
@ -85,13 +85,13 @@ export const removeSelectCell = (protyle: IProtyle, data: IAVTable, options: {
|
|||
transaction(protyle, [{
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
keyID: colId,
|
||||
parentID: data.id,
|
||||
data: cellData.value
|
||||
}], [{
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
keyID: colId,
|
||||
parentID: data.id,
|
||||
data: {
|
||||
[colData.type]: oldValue
|
||||
|
|
@ -403,7 +403,7 @@ export const addSelectColAndCell = (protyle: IProtyle, data: IAVTable, options:
|
|||
}, {
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
keyID: colId,
|
||||
parentID: data.id,
|
||||
data: cellData.value
|
||||
}], [{
|
||||
|
|
@ -416,13 +416,13 @@ export const addSelectColAndCell = (protyle: IProtyle, data: IAVTable, options:
|
|||
transaction(protyle, [{
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
keyID: colId,
|
||||
parentID: data.id,
|
||||
data: cellData.value
|
||||
}], [{
|
||||
action: "updateAttrViewCell",
|
||||
id: cellId,
|
||||
rowID: rowId,
|
||||
keyID: colId,
|
||||
parentID: data.id,
|
||||
data: {
|
||||
[colData.type]: oldValue
|
||||
|
|
|
|||
|
|
@ -33,12 +33,10 @@ export const addSort = (options: {
|
|||
transaction(options.protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: options.data.view.sorts
|
||||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: options.data.id,
|
||||
viewID: options.data.viewID,
|
||||
data: oldSorts
|
||||
}]);
|
||||
options.menuElement.innerHTML = getSortsHTML(options.data.view.columns, options.data.view.sorts);
|
||||
|
|
@ -74,12 +72,10 @@ export const bindSortsEvent = (protyle: IProtyle, menuElement: HTMLElement, data
|
|||
transaction(protyle, [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: data.id,
|
||||
viewID: data.viewID,
|
||||
data: data.view.sorts
|
||||
}], [{
|
||||
action: "setAttrViewSorts",
|
||||
avID: data.id,
|
||||
viewID: data.viewID,
|
||||
data: oldSort
|
||||
}]);
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue