@docmentis/udoc-editor 0.8.17 → 0.8.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cell-format.d.ts +30 -0
- package/dist/cell-format.d.ts.map +1 -0
- package/dist/cell-format.js +325 -0
- package/dist/cell-format.js.map +1 -0
- package/dist/commands.js +2 -2
- package/dist/commands.js.map +1 -1
- package/dist/components/TablePropertiesModal.d.ts +12 -0
- package/dist/components/TablePropertiesModal.d.ts.map +1 -0
- package/dist/components/TablePropertiesModal.js +222 -0
- package/dist/components/TablePropertiesModal.js.map +1 -0
- package/dist/context-menu.d.ts +11 -1
- package/dist/context-menu.d.ts.map +1 -1
- package/dist/context-menu.js +87 -7
- package/dist/context-menu.js.map +1 -1
- package/dist/docmentis-theme.d.ts +2 -0
- package/dist/docmentis-theme.d.ts.map +1 -1
- package/dist/docmentis-theme.js +4 -0
- package/dist/docmentis-theme.js.map +1 -1
- package/dist/edit-client.d.ts +28 -1
- package/dist/edit-client.d.ts.map +1 -1
- package/dist/edit-client.js +33 -0
- package/dist/edit-client.js.map +1 -1
- package/dist/edit-mode.d.ts.map +1 -1
- package/dist/edit-mode.js +25 -7
- package/dist/edit-mode.js.map +1 -1
- package/dist/grips.d.ts.map +1 -1
- package/dist/grips.js +173 -10
- package/dist/grips.js.map +1 -1
- package/dist/i18n/ar.d.ts.map +1 -1
- package/dist/i18n/ar.js +82 -7
- package/dist/i18n/ar.js.map +1 -1
- package/dist/i18n/de.d.ts.map +1 -1
- package/dist/i18n/de.js +82 -7
- package/dist/i18n/de.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +82 -7
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/es.d.ts.map +1 -1
- package/dist/i18n/es.js +82 -7
- package/dist/i18n/es.js.map +1 -1
- package/dist/i18n/fr.d.ts.map +1 -1
- package/dist/i18n/fr.js +82 -7
- package/dist/i18n/fr.js.map +1 -1
- package/dist/i18n/ja.d.ts.map +1 -1
- package/dist/i18n/ja.js +86 -11
- package/dist/i18n/ja.js.map +1 -1
- package/dist/i18n/ko.d.ts.map +1 -1
- package/dist/i18n/ko.js +82 -7
- package/dist/i18n/ko.js.map +1 -1
- package/dist/i18n/messages.d.ts +154 -7
- package/dist/i18n/messages.d.ts.map +1 -1
- package/dist/i18n/pt-BR.d.ts.map +1 -1
- package/dist/i18n/pt-BR.js +82 -7
- package/dist/i18n/pt-BR.js.map +1 -1
- package/dist/i18n/ru.d.ts.map +1 -1
- package/dist/i18n/ru.js +82 -7
- package/dist/i18n/ru.js.map +1 -1
- package/dist/i18n/zh-CN.d.ts.map +1 -1
- package/dist/i18n/zh-CN.js +86 -11
- package/dist/i18n/zh-CN.js.map +1 -1
- package/dist/i18n/zh-TW.d.ts.map +1 -1
- package/dist/i18n/zh-TW.js +82 -7
- package/dist/i18n/zh-TW.js.map +1 -1
- package/dist/icons.d.ts +50 -0
- package/dist/icons.d.ts.map +1 -1
- package/dist/icons.js +50 -0
- package/dist/icons.js.map +1 -1
- package/dist/image.d.ts +5 -0
- package/dist/image.d.ts.map +1 -1
- package/dist/image.js +37 -4
- package/dist/image.js.map +1 -1
- package/dist/insert-table.d.ts +23 -0
- package/dist/insert-table.d.ts.map +1 -0
- package/dist/insert-table.js +135 -0
- package/dist/insert-table.js.map +1 -0
- package/dist/insert.d.ts +4 -1
- package/dist/insert.d.ts.map +1 -1
- package/dist/insert.js +5 -4
- package/dist/insert.js.map +1 -1
- package/dist/markup.d.ts +36 -1
- package/dist/markup.d.ts.map +1 -1
- package/dist/markup.js +175 -0
- package/dist/markup.js.map +1 -1
- package/dist/menu-action.d.ts +15 -3
- package/dist/menu-action.d.ts.map +1 -1
- package/dist/menu-action.js +21 -3
- package/dist/menu-action.js.map +1 -1
- package/dist/paint.d.ts +17 -2
- package/dist/paint.d.ts.map +1 -1
- package/dist/paint.js +11 -2
- package/dist/paint.js.map +1 -1
- package/dist/ruler-edits.js +7 -7
- package/dist/ruler-edits.js.map +1 -1
- package/dist/styles.d.ts.map +1 -1
- package/dist/styles.js +66 -0
- package/dist/styles.js.map +1 -1
- package/dist/table-edits.d.ts +44 -0
- package/dist/table-edits.d.ts.map +1 -0
- package/dist/table-edits.js +97 -0
- package/dist/table-edits.js.map +1 -0
- package/dist/table-format.d.ts +88 -0
- package/dist/table-format.d.ts.map +1 -0
- package/dist/table-format.js +224 -0
- package/dist/table-format.js.map +1 -0
- package/dist/table-picker.d.ts +14 -0
- package/dist/table-picker.d.ts.map +1 -0
- package/dist/table-picker.js +15 -0
- package/dist/table-picker.js.map +1 -0
- package/dist/table-properties.d.ts +12 -0
- package/dist/table-properties.d.ts.map +1 -0
- package/dist/table-properties.js +27 -0
- package/dist/table-properties.js.map +1 -0
- package/dist/table.d.ts +21 -9
- package/dist/table.d.ts.map +1 -1
- package/dist/table.js +235 -41
- package/dist/table.js.map +1 -1
- package/dist/tabs.d.ts +1 -1
- package/dist/tabs.d.ts.map +1 -1
- package/dist/tabs.js +106 -41
- package/dist/tabs.js.map +1 -1
- package/dist/text-format.d.ts +16 -6
- package/dist/text-format.d.ts.map +1 -1
- package/dist/text-format.js +89 -45
- package/dist/text-format.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/worker/handlers.d.ts.map +1 -1
- package/dist/worker/handlers.js +28 -0
- package/dist/worker/handlers.js.map +1 -1
- package/dist/worker/protocol.d.ts +38 -1
- package/dist/worker/protocol.d.ts.map +1 -1
- package/dist/worker/worker-source.js +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { GridBorderProperties, GridBorderStyle } from "@docmentis/udoc-wasm";
|
|
2
|
+
import type { CommandDef, MenuItem } from "@docmentis/udoc-ui/internal";
|
|
3
|
+
import type { MessageKey } from "./i18n/index.js";
|
|
4
|
+
import type { BorderPen } from "./table-format.js";
|
|
5
|
+
import type { EditTools } from "./tools.js";
|
|
6
|
+
type Def = CommandDef<MessageKey>;
|
|
7
|
+
/** The line style of Excel's nearest `pen`: thin, medium or thick by its
|
|
8
|
+
* weight — Excel's 1, 2 and 3 pixels — and dashed, dotted or dash-dotted as
|
|
9
|
+
* it is, in the weights Excel has them in. */
|
|
10
|
+
export declare function cellBorderStyle(pen: BorderPen): GridBorderStyle;
|
|
11
|
+
/** The cell border line `pen` draws. */
|
|
12
|
+
export declare function cellBorderLine(pen: BorderPen): GridBorderProperties;
|
|
13
|
+
/** The Alignment dropdown: where the cells' text sits, top to bottom, then
|
|
14
|
+
* across — Excel's six alignment buttons. */
|
|
15
|
+
export declare const CELL_ALIGN_MENU: readonly MenuItem<MessageKey>[];
|
|
16
|
+
/** The Merge & Center menu, Excel's. A merge keeps only its top-left cell's
|
|
17
|
+
* contents, emptying the rest. */
|
|
18
|
+
export declare const CELL_MERGE_MENU: readonly MenuItem<MessageKey>[];
|
|
19
|
+
/** The Number Format dropdown: the formats as one exclusive set, the active
|
|
20
|
+
* cell's marked. */
|
|
21
|
+
export declare const CELL_NUMBER_FORMAT_MENU: readonly MenuItem<MessageKey>[];
|
|
22
|
+
/**
|
|
23
|
+
* The Cell tab's commands, over the {@link EditTools} once edit mode is
|
|
24
|
+
* mounted: Fill Color, then Border Color and Border, which share a pen of
|
|
25
|
+
* their own; the Alignment dropdown, Wrap Text and Merge & Center; the Number Format
|
|
26
|
+
* dropdown and the decimal steps; and Clear Formats.
|
|
27
|
+
*/
|
|
28
|
+
export declare function cellCommands(tools: () => EditTools): Readonly<Record<string, Def>>;
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=cell-format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cell-format.d.ts","sourceRoot":"","sources":["../src/cell-format.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACR,oBAAoB,EACpB,eAAe,EAIlB,MAAM,sBAAsB,CAAC;AAe9B,OAAO,KAAK,EAER,UAAU,EAGV,QAAQ,EAQX,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAkBlD,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,KAAK,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAuElC;;+CAE+C;AAC/C,wBAAgB,eAAe,CAAC,GAAG,EAAE,SAAS,GAAG,eAAe,CAY/D;AAED,wCAAwC;AACxC,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,oBAAoB,CAGnE;AA8BD;8CAC8C;AAC9C,eAAO,MAAM,eAAe,EAAE,SAAS,QAAQ,CAAC,UAAU,CAAC,EAO1D,CAAC;AAQF;mCACmC;AACnC,eAAO,MAAM,eAAe,EAAE,SAAS,QAAQ,CAAC,UAAU,CAAC,EAuB1D,CAAC;AA0DF;qBACqB;AACrB,eAAO,MAAM,uBAAuB,EAAE,SAAS,QAAQ,CAAC,UAAU,CAAC,EAKhE,CAAC;AASJ;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CA2GlF"}
|
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
import { allowsEdit, applyPaintBar, buildMenuInto, buildPaintPanel, commandContext, createDropdownButton, createSplitButton, displayToActivePaint, ICON_FILL, paintSwatch, sheetCellFormat, sheetCellMerged, } from "@docmentis/udoc-ui/internal";
|
|
2
|
+
import { ICON_BORDER_ALL, ICON_BORDER_COLOR, ICON_CLEAR_FORMAT, ICON_DECIMAL_DECREASE, ICON_DECIMAL_INCREASE, ICON_MERGE_CELLS, ICON_NUMBER_FORMAT, ICON_PARAGRAPH_CENTER, ICON_PARAGRAPH_LEFT, ICON_PARAGRAPH_RIGHT, ICON_WRAP_TEXT, } from "./icons.js";
|
|
3
|
+
import { paintToGridColor } from "./paint.js";
|
|
4
|
+
import { editState, editStateOf } from "./state.js";
|
|
5
|
+
import { ICON_CELL_ALIGN_BOTTOM, ICON_CELL_ALIGN_CENTER, ICON_CELL_ALIGN_TOP, ICON_UNMERGE_CELLS } from "./table.js";
|
|
6
|
+
import { borderColorControl, borderControl, createBorderState, themeOf } from "./table-format.js";
|
|
7
|
+
/** The format of the workbook's active cell in `state`, or `null` outside a
|
|
8
|
+
* worksheet's grid. */
|
|
9
|
+
function cellFormatIn(state) {
|
|
10
|
+
return sheetCellFormat(editState(state).selectionProperties);
|
|
11
|
+
}
|
|
12
|
+
/** {@link cellFormatIn} for a command's context. */
|
|
13
|
+
function cellFormatOf(c) {
|
|
14
|
+
return sheetCellFormat(editStateOf(c).selectionProperties);
|
|
15
|
+
}
|
|
16
|
+
/** Live where the selection takes a cell edit of `kind`. */
|
|
17
|
+
const whenCellEdit = (kind) => (c) => allowsEdit(c.selection, kind);
|
|
18
|
+
/** Run `edit` on the selected cells — one committing edit. */
|
|
19
|
+
function runCellEdit(host, edit) {
|
|
20
|
+
return host.commit(() => host.client.executeOnSelection(edit));
|
|
21
|
+
}
|
|
22
|
+
/** A menu row's intent: `edit` on the selection, which the shell runs — a
|
|
23
|
+
* merge Excel refuses showing its reason under the formula bar. */
|
|
24
|
+
function cellEditAction(edit) {
|
|
25
|
+
return { kind: "selectionEdit", edit };
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The Fill Color dropdown: the selected cells' fill. The swatch is the active
|
|
29
|
+
* cell's fill, and the caret opens the color panel, whose No Fill row takes the
|
|
30
|
+
* fill away.
|
|
31
|
+
*/
|
|
32
|
+
function cellFillControl(env, tools) {
|
|
33
|
+
const { i18n } = tools;
|
|
34
|
+
const fill = () => editState(env.store.getState()).selectionPaint.fill;
|
|
35
|
+
const dd = createDropdownButton({ icon: paintSwatch(ICON_FILL, fill()), label: env.label }, {
|
|
36
|
+
menuLabel: i18n.t("ribbon.paintOptions", { label: env.label }),
|
|
37
|
+
onOpen: () => buildPaintPanel(dd.menu, {
|
|
38
|
+
i18n,
|
|
39
|
+
variant: "fill",
|
|
40
|
+
theme: themeOf(env),
|
|
41
|
+
recent: env.recentPaint.fill,
|
|
42
|
+
active: displayToActivePaint(fill()),
|
|
43
|
+
stroke: null,
|
|
44
|
+
onPick: (paint) => {
|
|
45
|
+
if (paint.kind !== "none")
|
|
46
|
+
env.pushRecent("fill", paint.hex);
|
|
47
|
+
dd.controller.close();
|
|
48
|
+
const color = paintToGridColor(paint);
|
|
49
|
+
void runCellEdit(tools.host, {
|
|
50
|
+
kind: "setCellFill",
|
|
51
|
+
fill: color ? { pattern: { pattern: "solid", foreground: color } } : null,
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
}),
|
|
55
|
+
});
|
|
56
|
+
dd.trigger.dataset.command = "cellFill";
|
|
57
|
+
return {
|
|
58
|
+
el: dd.el,
|
|
59
|
+
sync: (state) => applyPaintBar(dd.trigger, editState(state).selectionPaint.fill),
|
|
60
|
+
close: () => dd.controller.close(),
|
|
61
|
+
destroy: () => dd.destroy(),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/** The line style of Excel's nearest `pen`: thin, medium or thick by its
|
|
65
|
+
* weight — Excel's 1, 2 and 3 pixels — and dashed, dotted or dash-dotted as
|
|
66
|
+
* it is, in the weights Excel has them in. */
|
|
67
|
+
export function cellBorderStyle(pen) {
|
|
68
|
+
const medium = pen.weight >= 1.125;
|
|
69
|
+
switch (pen.dash) {
|
|
70
|
+
case "solid":
|
|
71
|
+
return pen.weight >= 1.875 ? "thick" : medium ? "medium" : "thin";
|
|
72
|
+
case "dash":
|
|
73
|
+
return medium ? "mediumDashed" : "dashed";
|
|
74
|
+
case "dot":
|
|
75
|
+
return "dotted";
|
|
76
|
+
case "dashDot":
|
|
77
|
+
return medium ? "mediumDashDot" : "dashDot";
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/** The cell border line `pen` draws. */
|
|
81
|
+
export function cellBorderLine(pen) {
|
|
82
|
+
const color = paintToGridColor(pen.paint);
|
|
83
|
+
return color ? { style: cellBorderStyle(pen), color } : { style: cellBorderStyle(pen) };
|
|
84
|
+
}
|
|
85
|
+
/** A workbook's {@link LayBorder}: the selected cells' borders. */
|
|
86
|
+
function layCellBorder(host) {
|
|
87
|
+
return (edges, pen) => void runCellEdit(host, { kind: "patchSheetCellBorders", edges, line: pen ? cellBorderLine(pen) : null });
|
|
88
|
+
}
|
|
89
|
+
/** A vertical alignment row, marked where the active cell's text sits so. */
|
|
90
|
+
function verticalRow(vertical, label, icon) {
|
|
91
|
+
return {
|
|
92
|
+
action: cellEditAction({ kind: "patchCellAlignment", alignment: { vertical } }),
|
|
93
|
+
label,
|
|
94
|
+
icon,
|
|
95
|
+
enabledWhen: whenCellEdit("patchCellAlignment"),
|
|
96
|
+
activeWhen: (c) => cellFormatOf(c)?.vertical === vertical,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
/** A horizontal alignment row, marked where the active cell's text sits so. */
|
|
100
|
+
function horizontalRow(horizontal, label, icon) {
|
|
101
|
+
return {
|
|
102
|
+
action: cellEditAction({ kind: "patchCellAlignment", alignment: { horizontal } }),
|
|
103
|
+
label,
|
|
104
|
+
icon,
|
|
105
|
+
enabledWhen: whenCellEdit("patchCellAlignment"),
|
|
106
|
+
activeWhen: (c) => cellFormatOf(c)?.horizontal === horizontal,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/** The Alignment dropdown: where the cells' text sits, top to bottom, then
|
|
110
|
+
* across — Excel's six alignment buttons. */
|
|
111
|
+
export const CELL_ALIGN_MENU = [
|
|
112
|
+
verticalRow("top", "cell.alignTop", ICON_CELL_ALIGN_TOP),
|
|
113
|
+
verticalRow("center", "cell.alignMiddle", ICON_CELL_ALIGN_CENTER),
|
|
114
|
+
verticalRow("bottom", "cell.alignBottom", ICON_CELL_ALIGN_BOTTOM),
|
|
115
|
+
{ ...horizontalRow("left", "paragraph.alignLeft", ICON_PARAGRAPH_LEFT), separatorBefore: true },
|
|
116
|
+
horizontalRow("center", "paragraph.center", ICON_PARAGRAPH_CENTER),
|
|
117
|
+
horizontalRow("right", "paragraph.alignRight", ICON_PARAGRAPH_RIGHT),
|
|
118
|
+
];
|
|
119
|
+
/** Live where the selection takes a merge: a block of cells. */
|
|
120
|
+
const whenMerge = (c) => allowsEdit(c.selection, "mergeSheetCells");
|
|
121
|
+
/** Merge & Center: the selected block made one cell, its contents centered. */
|
|
122
|
+
const MERGE_AND_CENTER = { kind: "mergeSheetCells", across: false, center: true };
|
|
123
|
+
/** The Merge & Center menu, Excel's. A merge keeps only its top-left cell's
|
|
124
|
+
* contents, emptying the rest. */
|
|
125
|
+
export const CELL_MERGE_MENU = [
|
|
126
|
+
{
|
|
127
|
+
action: cellEditAction(MERGE_AND_CENTER),
|
|
128
|
+
label: "cell.mergeAndCenter",
|
|
129
|
+
enabledWhen: whenMerge,
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
action: cellEditAction({ kind: "mergeSheetCells", across: true, center: false }),
|
|
133
|
+
label: "cell.mergeAcross",
|
|
134
|
+
enabledWhen: whenMerge,
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
action: cellEditAction({ kind: "mergeSheetCells", across: false, center: false }),
|
|
138
|
+
label: "table.mergeCells",
|
|
139
|
+
icon: ICON_MERGE_CELLS,
|
|
140
|
+
enabledWhen: whenMerge,
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
action: cellEditAction({ kind: "unmergeSheetCells" }),
|
|
144
|
+
label: "table.unmergeCells",
|
|
145
|
+
icon: ICON_UNMERGE_CELLS,
|
|
146
|
+
enabledWhen: whenCellEdit("unmergeSheetCells"),
|
|
147
|
+
},
|
|
148
|
+
];
|
|
149
|
+
/**
|
|
150
|
+
* The Merge & Center split button, Excel's: the main part reads pressed while
|
|
151
|
+
* the active cell is in a merge, and takes it away there, else merges the
|
|
152
|
+
* selected block and centers it; the caret opens {@link CELL_MERGE_MENU}.
|
|
153
|
+
*/
|
|
154
|
+
function cellMergeControl(env, tools) {
|
|
155
|
+
const { i18n, host } = tools;
|
|
156
|
+
const merged = (state) => sheetCellMerged(editState(state).selectionProperties);
|
|
157
|
+
const split = createSplitButton({
|
|
158
|
+
mainLabel: env.label,
|
|
159
|
+
mainIcon: ICON_MERGE_CELLS,
|
|
160
|
+
caretLabel: i18n.t("ribbon.listOptions", { label: env.label }),
|
|
161
|
+
menuLabel: i18n.t("ribbon.listOptions", { label: env.label }),
|
|
162
|
+
onOpen: () => buildMenuInto(split.menu, CELL_MERGE_MENU, {
|
|
163
|
+
i18n,
|
|
164
|
+
context: () => commandContext(env.store.getState()),
|
|
165
|
+
action: (action) => host.runMenuAction(action),
|
|
166
|
+
close: () => split.controller.close(),
|
|
167
|
+
}),
|
|
168
|
+
});
|
|
169
|
+
split.main.dataset.command = "cellMerge";
|
|
170
|
+
split.caret.dataset.command = "cellMerge";
|
|
171
|
+
split.main.addEventListener("click", () => {
|
|
172
|
+
const edit = merged(env.store.getState()) ? { kind: "unmergeSheetCells" } : MERGE_AND_CENTER;
|
|
173
|
+
host.runMenuAction(cellEditAction(edit));
|
|
174
|
+
});
|
|
175
|
+
return {
|
|
176
|
+
el: split.el,
|
|
177
|
+
sync: (state) => {
|
|
178
|
+
const on = merged(state);
|
|
179
|
+
split.setActive(on);
|
|
180
|
+
split.main.setAttribute("aria-pressed", String(on));
|
|
181
|
+
// Off a merge the main part merges, which only a block of cells
|
|
182
|
+
// takes — not whole rows, columns or the sheet.
|
|
183
|
+
if (!on && !allowsEdit(state.selectionCaps, "mergeSheetCells"))
|
|
184
|
+
split.main.disabled = true;
|
|
185
|
+
},
|
|
186
|
+
close: () => split.controller.close(),
|
|
187
|
+
destroy: () => split.destroy(),
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
/** The number formats the Number Format dropdown offers — Excel's, but for
|
|
191
|
+
* its currency, accounting and long date, which differ by locale — each by
|
|
192
|
+
* its en-US code. */
|
|
193
|
+
const NUMBER_FORMATS = [
|
|
194
|
+
["General", "cell.formatGeneral"],
|
|
195
|
+
["0.00", "cell.formatNumber"],
|
|
196
|
+
["m/d/yyyy", "cell.formatShortDate"],
|
|
197
|
+
["h:mm:ss AM/PM", "cell.formatTime"],
|
|
198
|
+
["0.00%", "cell.formatPercentage"],
|
|
199
|
+
["# ?/?", "cell.formatFraction"],
|
|
200
|
+
["0.00E+00", "cell.formatScientific"],
|
|
201
|
+
["@", "cell.formatText"],
|
|
202
|
+
];
|
|
203
|
+
/** The Number Format dropdown: the formats as one exclusive set, the active
|
|
204
|
+
* cell's marked. */
|
|
205
|
+
export const CELL_NUMBER_FORMAT_MENU = NUMBER_FORMATS.map(([code, label]) => ({
|
|
206
|
+
action: cellEditAction({ kind: "setCellNumberFormat", format: { code } }),
|
|
207
|
+
label,
|
|
208
|
+
enabledWhen: whenCellEdit("setCellNumberFormat"),
|
|
209
|
+
activeWhen: (c) => cellFormatOf(c)?.numberFormat === code,
|
|
210
|
+
}));
|
|
211
|
+
/** The name the Number Format dropdown shows for the active cell's format:
|
|
212
|
+
* one of its own, else Custom. */
|
|
213
|
+
function numberFormatName(state) {
|
|
214
|
+
const code = cellFormatIn(state)?.numberFormat ?? "General";
|
|
215
|
+
return NUMBER_FORMATS.find(([offered]) => offered === code)?.[1] ?? "cell.formatCustom";
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* The Cell tab's commands, over the {@link EditTools} once edit mode is
|
|
219
|
+
* mounted: Fill Color, then Border Color and Border, which share a pen of
|
|
220
|
+
* their own; the Alignment dropdown, Wrap Text and Merge & Center; the Number Format
|
|
221
|
+
* dropdown and the decimal steps; and Clear Formats.
|
|
222
|
+
*/
|
|
223
|
+
export function cellCommands(tools) {
|
|
224
|
+
const border = createBorderState();
|
|
225
|
+
const action = (id, label, icon, group, edit) => ({
|
|
226
|
+
id,
|
|
227
|
+
label,
|
|
228
|
+
icon,
|
|
229
|
+
group,
|
|
230
|
+
run: { kind: "action", press: () => void runCellEdit(tools().host, edit) },
|
|
231
|
+
enabledWhen: whenCellEdit(edit.kind),
|
|
232
|
+
});
|
|
233
|
+
return {
|
|
234
|
+
cellFill: {
|
|
235
|
+
id: "cellFill",
|
|
236
|
+
label: "cell.fillColor",
|
|
237
|
+
icon: ICON_FILL,
|
|
238
|
+
group: "font",
|
|
239
|
+
run: { kind: "control", cluster: "paint", create: (env) => cellFillControl(env, tools()) },
|
|
240
|
+
enabledWhen: whenCellEdit("setCellFill"),
|
|
241
|
+
},
|
|
242
|
+
cellBorderColor: {
|
|
243
|
+
id: "cellBorderColor",
|
|
244
|
+
label: "table.borderColor",
|
|
245
|
+
icon: ICON_BORDER_COLOR,
|
|
246
|
+
group: "font",
|
|
247
|
+
run: {
|
|
248
|
+
kind: "control",
|
|
249
|
+
cluster: "paint",
|
|
250
|
+
create: (env) => borderColorControl(env, tools(), border, "cellBorderColor"),
|
|
251
|
+
},
|
|
252
|
+
enabledWhen: whenCellEdit("patchSheetCellBorders"),
|
|
253
|
+
},
|
|
254
|
+
cellBorder: {
|
|
255
|
+
id: "cellBorder",
|
|
256
|
+
label: "table.border",
|
|
257
|
+
icon: ICON_BORDER_ALL,
|
|
258
|
+
group: "font",
|
|
259
|
+
run: {
|
|
260
|
+
kind: "control",
|
|
261
|
+
cluster: "paint",
|
|
262
|
+
create: (env) => borderControl(env, tools(), border, "cellBorder", layCellBorder(tools().host)),
|
|
263
|
+
},
|
|
264
|
+
enabledWhen: whenCellEdit("patchSheetCellBorders"),
|
|
265
|
+
},
|
|
266
|
+
cellAlign: {
|
|
267
|
+
id: "cellAlign",
|
|
268
|
+
label: "cell.alignment",
|
|
269
|
+
icon: ICON_PARAGRAPH_LEFT,
|
|
270
|
+
group: "cellAlignment",
|
|
271
|
+
run: { kind: "menu", menu: CELL_ALIGN_MENU },
|
|
272
|
+
enabledWhen: whenCellEdit("patchCellAlignment"),
|
|
273
|
+
},
|
|
274
|
+
cellWrap: {
|
|
275
|
+
id: "cellWrap",
|
|
276
|
+
label: "cell.wrapText",
|
|
277
|
+
icon: ICON_WRAP_TEXT,
|
|
278
|
+
group: "cellAlignment",
|
|
279
|
+
run: {
|
|
280
|
+
kind: "toggle",
|
|
281
|
+
pressed: (state) => cellFormatIn(state)?.wrapText === true,
|
|
282
|
+
press: (store) => {
|
|
283
|
+
const wrapText = cellFormatIn(store.getState())?.wrapText !== true;
|
|
284
|
+
void runCellEdit(tools().host, { kind: "patchCellAlignment", alignment: { wrapText } });
|
|
285
|
+
},
|
|
286
|
+
},
|
|
287
|
+
enabledWhen: whenCellEdit("patchCellAlignment"),
|
|
288
|
+
},
|
|
289
|
+
cellMerge: {
|
|
290
|
+
id: "cellMerge",
|
|
291
|
+
label: "cell.mergeAndCenter",
|
|
292
|
+
icon: ICON_MERGE_CELLS,
|
|
293
|
+
group: "cellAlignment",
|
|
294
|
+
run: { kind: "control", create: (env) => cellMergeControl(env, tools()) },
|
|
295
|
+
enabledWhen: (c) => allowsEdit(c.selection, "mergeSheetCells", "unmergeSheetCells"),
|
|
296
|
+
},
|
|
297
|
+
cellNumberFormat: {
|
|
298
|
+
id: "cellNumberFormat",
|
|
299
|
+
label: "cell.numberFormat",
|
|
300
|
+
icon: ICON_NUMBER_FORMAT,
|
|
301
|
+
group: "cellNumber",
|
|
302
|
+
// Named, as Excel's box is: the format a cell shows its value
|
|
303
|
+
// through isn't seen in the value.
|
|
304
|
+
labeled: true,
|
|
305
|
+
run: {
|
|
306
|
+
kind: "menu",
|
|
307
|
+
menu: CELL_NUMBER_FORMAT_MENU,
|
|
308
|
+
current: (state) => ({ icon: ICON_NUMBER_FORMAT, label: numberFormatName(state) }),
|
|
309
|
+
},
|
|
310
|
+
enabledWhen: whenCellEdit("setCellNumberFormat"),
|
|
311
|
+
},
|
|
312
|
+
cellDecimalsUp: action("cellDecimalsUp", "cell.increaseDecimal", ICON_DECIMAL_INCREASE, "cellNumber", {
|
|
313
|
+
kind: "stepCellDecimals",
|
|
314
|
+
increase: true,
|
|
315
|
+
}),
|
|
316
|
+
cellDecimalsDown: action("cellDecimalsDown", "cell.decreaseDecimal", ICON_DECIMAL_DECREASE, "cellNumber", {
|
|
317
|
+
kind: "stepCellDecimals",
|
|
318
|
+
increase: false,
|
|
319
|
+
}),
|
|
320
|
+
cellClearFormats: action("cellClearFormats", "cell.clearFormats", ICON_CLEAR_FORMAT, "cellClear", {
|
|
321
|
+
kind: "clearCellFormats",
|
|
322
|
+
}),
|
|
323
|
+
};
|
|
324
|
+
}
|
|
325
|
+
//# sourceMappingURL=cell-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cell-format.js","sourceRoot":"","sources":["../src/cell-format.ts"],"names":[],"mappings":"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"}
|
package/dist/commands.js
CHANGED
|
@@ -45,7 +45,7 @@ export function formatCommands(tools) {
|
|
|
45
45
|
// Then the font picker, the point-size field, then the Bold /
|
|
46
46
|
// Italic toggles. Each mirrors the selection's resolved format and
|
|
47
47
|
// lowers to a character-property text edit, so all gate on the engine's
|
|
48
|
-
// text `
|
|
48
|
+
// text `patchCharacterProperties` capability (`whenTextFormat`): live over
|
|
49
49
|
// a non-empty text range, greyed on a bare caret or a non-text selection.
|
|
50
50
|
fontFamily: {
|
|
51
51
|
id: "fontFamily",
|
|
@@ -88,7 +88,7 @@ export function formatCommands(tools) {
|
|
|
88
88
|
// Text color + highlight — dropdowns mirroring the selection's span color
|
|
89
89
|
// over the shared color picker (the Fill / Line machinery, `text` /
|
|
90
90
|
// `highlight` channels). A span color is a character property, so they
|
|
91
|
-
// gate with the sibling text controls on `
|
|
91
|
+
// gate with the sibling text controls on `patchCharacterProperties`
|
|
92
92
|
// (`whenTextFormat`).
|
|
93
93
|
textFill: {
|
|
94
94
|
id: "textFill",
|
package/dist/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,gFAAgF;AAChF,+EAA+E;AAC/E,uBAAuB;AACvB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAEpH,OAAO,EACH,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,iBAAiB,GACpB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACH,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,gBAAgB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACH,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,gBAAgB,GACnB,MAAM,kBAAkB,CAAC;AAM1B;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAsB;IACjD,kEAAkE;IAClE,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,KAAiB,EAAE,IAAY,EAAE,QAA4B,EAAO,EAAE,CAAC,CAAC;QACpG,EAAE;QACF,KAAK;QACL,IAAI;QACJ,KAAK,EAAE,WAAW;QAClB,GAAG,EAAE;YACD,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC;SAC3E;QACD,WAAW,EAAE,cAAc;KAC9B,CAAC,CAAC;IACH,OAAO;QACH,qEAAqE;QACrE,kEAAkE;QAClE,wEAAwE;QACxE,oEAAoE;QACpE,UAAU;QACV,cAAc,EAAE;YACZ,EAAE,EAAE,gBAAgB;YACpB,KAAK,EAAE,wBAAwB;YAC/B,IAAI,EAAE,oBAAoB;YAC1B,KAAK,EAAE,gBAAgB;YACvB,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE;YAChG,WAAW,EAAE,kBAAkB;SAClC;QACD,8DAA8D;QAC9D,mEAAmE;QACnE,wEAAwE;QACxE,
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { I18n } from "../i18n/index.js";
|
|
2
|
+
import type { TablePropertiesSeed, TablePropertiesValues } from "../table-edits.js";
|
|
3
|
+
/** Build the Table Properties dialog, mounted once and re-seeded by `open`. */
|
|
4
|
+
export declare function createTablePropertiesModal(i18n: I18n): {
|
|
5
|
+
el: HTMLDivElement;
|
|
6
|
+
mount: (parent: HTMLElement) => void;
|
|
7
|
+
open: (seed: TablePropertiesSeed, apply: (values: TablePropertiesValues) => void) => void;
|
|
8
|
+
close: () => void;
|
|
9
|
+
destroy: () => void;
|
|
10
|
+
};
|
|
11
|
+
export type TablePropertiesModal = ReturnType<typeof createTablePropertiesModal>;
|
|
12
|
+
//# sourceMappingURL=TablePropertiesModal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TablePropertiesModal.d.ts","sourceRoot":"","sources":["../../src/components/TablePropertiesModal.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,KAAK,EAAc,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AA4DhG,+EAA+E;AAC/E,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,IAAI;;oBAgK1B,WAAW,KAAG,IAAI;iBAxBrB,mBAAmB,SAAS,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,KAAG,IAAI;iBAiB5E,IAAI;mBAmBF,IAAI;EAM3B;AAED,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
|