blixify-ui-web 1.2.180 → 1.2.182
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/lib/components/data/dataTemplate/activityChanges.d.ts.map +1 -1
- package/lib/components/data/dataTemplate/activityChanges.js +1 -0
- package/lib/components/data/dataTemplate/activityChanges.js.map +1 -1
- package/lib/components/data/dataTemplate/index.d.ts +1 -0
- package/lib/components/data/dataTemplate/index.d.ts.map +1 -1
- package/lib/components/data/dataTemplate/index.js +502 -246
- package/lib/components/data/dataTemplate/index.js.map +1 -1
- package/lib/components/data/dataTemplate/model.d.ts +11 -2
- package/lib/components/data/dataTemplate/model.d.ts.map +1 -1
- package/lib/components/data/flexFilter/index.d.ts.map +1 -1
- package/lib/components/data/flexFilter/index.js +41 -14
- package/lib/components/data/flexFilter/index.js.map +1 -1
- package/lib/components/data/formula/builder.d.ts +19 -0
- package/lib/components/data/formula/builder.d.ts.map +1 -0
- package/lib/components/data/formula/builder.js +189 -0
- package/lib/components/data/formula/builder.js.map +1 -0
- package/lib/components/data/formula/functions.d.ts +22 -0
- package/lib/components/data/formula/functions.d.ts.map +1 -0
- package/lib/components/data/formula/functions.js +773 -0
- package/lib/components/data/formula/functions.js.map +1 -0
- package/lib/components/data/formula/index.d.ts +75 -0
- package/lib/components/data/formula/index.d.ts.map +1 -0
- package/lib/components/data/formula/index.js +801 -0
- package/lib/components/data/formula/index.js.map +1 -0
- package/lib/components/data/listModule.d.ts.map +1 -1
- package/lib/components/data/listModule.js +7 -1
- package/lib/components/data/listModule.js.map +1 -1
- package/lib/components/data/readModule.d.ts.map +1 -1
- package/lib/components/data/readModule.js +25 -2
- package/lib/components/data/readModule.js.map +1 -1
- package/lib/components/data/utils.d.ts.map +1 -1
- package/lib/components/data/utils.js +4 -0
- package/lib/components/data/utils.js.map +1 -1
- package/lib/components/display/newTable/index.d.ts +1 -0
- package/lib/components/display/newTable/index.d.ts.map +1 -1
- package/lib/components/display/newTable/index.js +129 -42
- package/lib/components/display/newTable/index.js.map +1 -1
- package/lib/components/input/markdown/index.d.ts.map +1 -1
- package/lib/components/input/markdown/index.js +65 -40
- package/lib/components/input/markdown/index.js.map +1 -1
- package/lib/components/input/markdown/tableControls.d.ts +24 -0
- package/lib/components/input/markdown/tableControls.d.ts.map +1 -0
- package/lib/components/input/markdown/tableControls.js +471 -0
- package/lib/components/input/markdown/tableControls.js.map +1 -0
- package/lib/components/input/markdown/tableMarkdown.d.ts +34 -0
- package/lib/components/input/markdown/tableMarkdown.d.ts.map +1 -0
- package/lib/components/input/markdown/tableMarkdown.js +182 -0
- package/lib/components/input/markdown/tableMarkdown.js.map +1 -0
- package/lib/components/input/markdown/textColor.d.ts +40 -0
- package/lib/components/input/markdown/textColor.d.ts.map +1 -0
- package/lib/components/input/markdown/textColor.js +285 -0
- package/lib/components/input/markdown/textColor.js.map +1 -0
- package/lib/tail.css +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,471 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
26
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
27
|
+
if (ar || !(i in from)) {
|
|
28
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
29
|
+
ar[i] = from[i];
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
33
|
+
};
|
|
34
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
|
+
};
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.TableControls = void 0;
|
|
39
|
+
var ArrowDownIcon_1 = __importDefault(require("@heroicons/react/20/solid/ArrowDownIcon"));
|
|
40
|
+
var ArrowLeftIcon_1 = __importDefault(require("@heroicons/react/20/solid/ArrowLeftIcon"));
|
|
41
|
+
var ArrowRightIcon_1 = __importDefault(require("@heroicons/react/20/solid/ArrowRightIcon"));
|
|
42
|
+
var ArrowUpIcon_1 = __importDefault(require("@heroicons/react/20/solid/ArrowUpIcon"));
|
|
43
|
+
var DocumentDuplicateIcon_1 = __importDefault(require("@heroicons/react/20/solid/DocumentDuplicateIcon"));
|
|
44
|
+
var EllipsisHorizontalIcon_1 = __importDefault(require("@heroicons/react/20/solid/EllipsisHorizontalIcon"));
|
|
45
|
+
var EllipsisVerticalIcon_1 = __importDefault(require("@heroicons/react/20/solid/EllipsisVerticalIcon"));
|
|
46
|
+
var PlusIcon_1 = __importDefault(require("@heroicons/react/20/solid/PlusIcon"));
|
|
47
|
+
var TableCellsIcon_1 = __importDefault(require("@heroicons/react/20/solid/TableCellsIcon"));
|
|
48
|
+
var TrashIcon_1 = __importDefault(require("@heroicons/react/20/solid/TrashIcon"));
|
|
49
|
+
var XCircleIcon_1 = __importDefault(require("@heroicons/react/20/solid/XCircleIcon"));
|
|
50
|
+
var state_1 = require("@tiptap/pm/state");
|
|
51
|
+
var tables_1 = require("@tiptap/pm/tables");
|
|
52
|
+
var react_1 = __importStar(require("react"));
|
|
53
|
+
// INFO: how long the controls outlive the pointer leaving the table, so it can
|
|
54
|
+
// cross the gap to a "+" bar or a grip that sits outside the cells
|
|
55
|
+
var HIDE_DELAY = 250;
|
|
56
|
+
var MENU_WIDTH = 208;
|
|
57
|
+
var handleFindCellDepth = function (editor) {
|
|
58
|
+
var $from = editor.state.selection.$from;
|
|
59
|
+
for (var depth = $from.depth; depth > 0; depth -= 1) {
|
|
60
|
+
var name_1 = $from.node(depth).type.name;
|
|
61
|
+
if (name_1 === "tableCell" || name_1 === "tableHeader")
|
|
62
|
+
return depth;
|
|
63
|
+
}
|
|
64
|
+
return -1;
|
|
65
|
+
};
|
|
66
|
+
var TableControls = function (props) {
|
|
67
|
+
var _a, _b;
|
|
68
|
+
var editor = props.editor;
|
|
69
|
+
// 1. State
|
|
70
|
+
var _c = (0, react_1.useState)(null), hoverCell = _c[0], setHoverCell = _c[1];
|
|
71
|
+
var _d = (0, react_1.useState)(null), menu = _d[0], setMenu = _d[1];
|
|
72
|
+
// INFO: positions are read from the DOM while rendering, so scrolling,
|
|
73
|
+
// resizing and editing only need to ask for a render
|
|
74
|
+
var _e = (0, react_1.useState)(0), setLayoutTick = _e[1];
|
|
75
|
+
// 2. Refs
|
|
76
|
+
var overlayRef = (0, react_1.useRef)(null);
|
|
77
|
+
var hideTimerRef = (0, react_1.useRef)(null);
|
|
78
|
+
// INFO: the cell a menu acts on is fixed when it opens — the pointer moving
|
|
79
|
+
// to the menu must not retarget it
|
|
80
|
+
var menuCellRef = (0, react_1.useRef)(null);
|
|
81
|
+
// INFO: whether the controls are on screen, read by the editor listeners so
|
|
82
|
+
// a keystroke or caret move away from any table asks for no render
|
|
83
|
+
var isShownRef = (0, react_1.useRef)(false);
|
|
84
|
+
var frameRef = (0, react_1.useRef)(0);
|
|
85
|
+
// 3. Computed
|
|
86
|
+
// INFO: the editor renders after mount (immediatelyRender false), and its
|
|
87
|
+
// view throws if read before EditorContent has attached it
|
|
88
|
+
var handleIsMounted = function () {
|
|
89
|
+
var _a, _b;
|
|
90
|
+
if (editor.isDestroyed)
|
|
91
|
+
return false;
|
|
92
|
+
try {
|
|
93
|
+
return !!((_b = (_a = editor.view) === null || _a === void 0 ? void 0 : _a.dom) === null || _b === void 0 ? void 0 : _b.isConnected);
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
var handleIsPageCell = function (cell) {
|
|
100
|
+
if (!cell || !cell.isConnected || !handleIsMounted())
|
|
101
|
+
return false;
|
|
102
|
+
var dom = editor.view.dom;
|
|
103
|
+
// INFO: a database embedded in the page is a table too, but it is a node
|
|
104
|
+
// view the editor does not own — it carries .not-prose and contenteditable
|
|
105
|
+
// false, and these controls must leave it alone
|
|
106
|
+
return (dom.contains(cell) &&
|
|
107
|
+
!cell.closest(".not-prose") &&
|
|
108
|
+
!cell.closest('[contenteditable="false"]'));
|
|
109
|
+
};
|
|
110
|
+
var handleGetSelectionCell = function () {
|
|
111
|
+
if (!handleIsMounted() || !editor.view.hasFocus())
|
|
112
|
+
return null;
|
|
113
|
+
var depth = handleFindCellDepth(editor);
|
|
114
|
+
if (depth < 0)
|
|
115
|
+
return null;
|
|
116
|
+
var dom = editor.view.nodeDOM(editor.state.selection.$from.before(depth));
|
|
117
|
+
return handleIsPageCell(dom) ? dom : null;
|
|
118
|
+
};
|
|
119
|
+
var activeCell = menu
|
|
120
|
+
? handleIsPageCell(menuCellRef.current)
|
|
121
|
+
? menuCellRef.current
|
|
122
|
+
: null
|
|
123
|
+
: handleIsPageCell(hoverCell)
|
|
124
|
+
? hoverCell
|
|
125
|
+
: handleGetSelectionCell();
|
|
126
|
+
var activeRow = (_a = activeCell === null || activeCell === void 0 ? void 0 : activeCell.closest("tr")) !== null && _a !== void 0 ? _a : null;
|
|
127
|
+
var activeTable = (_b = activeCell === null || activeCell === void 0 ? void 0 : activeCell.closest("table")) !== null && _b !== void 0 ? _b : null;
|
|
128
|
+
var isShown = !!activeTable || !!menu;
|
|
129
|
+
isShownRef.current = isShown;
|
|
130
|
+
var surface = props.darkMode
|
|
131
|
+
? "bg-gray-800 border-gray-600 text-gray-200"
|
|
132
|
+
: "bg-white border-gray-200 text-gray-700";
|
|
133
|
+
var hover = props.darkMode ? "hover:bg-gray-700" : "hover:bg-gray-100";
|
|
134
|
+
var muted = "text-gray-400";
|
|
135
|
+
// 4. Effects
|
|
136
|
+
// INFO: an edit or caret move matters only while the controls are shown or
|
|
137
|
+
// when it lands in a table; anywhere else in the note it asks for nothing
|
|
138
|
+
(0, react_1.useEffect)(function () {
|
|
139
|
+
var handleEditorChange = function () {
|
|
140
|
+
if (isShownRef.current || handleFindCellDepth(editor) >= 0)
|
|
141
|
+
handleRequestLayout();
|
|
142
|
+
};
|
|
143
|
+
editor.on("update", handleEditorChange);
|
|
144
|
+
editor.on("selectionUpdate", handleEditorChange);
|
|
145
|
+
editor.on("focus", handleEditorChange);
|
|
146
|
+
editor.on("blur", handleEditorChange);
|
|
147
|
+
return function () {
|
|
148
|
+
editor.off("update", handleEditorChange);
|
|
149
|
+
editor.off("selectionUpdate", handleEditorChange);
|
|
150
|
+
editor.off("focus", handleEditorChange);
|
|
151
|
+
editor.off("blur", handleEditorChange);
|
|
152
|
+
cancelAnimationFrame(frameRef.current);
|
|
153
|
+
frameRef.current = 0;
|
|
154
|
+
};
|
|
155
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
156
|
+
}, [editor]);
|
|
157
|
+
// INFO: scrolling and resizing move the controls only while they are shown,
|
|
158
|
+
// so the page-wide listeners exist only then
|
|
159
|
+
(0, react_1.useEffect)(function () {
|
|
160
|
+
if (!isShown)
|
|
161
|
+
return;
|
|
162
|
+
window.addEventListener("scroll", handleRequestLayout, true);
|
|
163
|
+
window.addEventListener("resize", handleRequestLayout);
|
|
164
|
+
return function () {
|
|
165
|
+
window.removeEventListener("scroll", handleRequestLayout, true);
|
|
166
|
+
window.removeEventListener("resize", handleRequestLayout);
|
|
167
|
+
};
|
|
168
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
169
|
+
}, [isShown]);
|
|
170
|
+
(0, react_1.useEffect)(function () {
|
|
171
|
+
var handleMouseMove = function (event) {
|
|
172
|
+
var _a, _b, _c;
|
|
173
|
+
var target = event.target;
|
|
174
|
+
if ((_a = overlayRef.current) === null || _a === void 0 ? void 0 : _a.contains(target)) {
|
|
175
|
+
handleCancelHide();
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
var cell = (_c = (_b = target === null || target === void 0 ? void 0 : target.closest) === null || _b === void 0 ? void 0 : _b.call(target, "td, th")) !== null && _c !== void 0 ? _c : null;
|
|
179
|
+
if (handleIsPageCell(cell)) {
|
|
180
|
+
handleCancelHide();
|
|
181
|
+
setHoverCell(cell);
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
if (!hideTimerRef.current) {
|
|
185
|
+
hideTimerRef.current = setTimeout(function () {
|
|
186
|
+
hideTimerRef.current = null;
|
|
187
|
+
setHoverCell(null);
|
|
188
|
+
}, HIDE_DELAY);
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
window.addEventListener("mousemove", handleMouseMove, { passive: true });
|
|
192
|
+
return function () {
|
|
193
|
+
window.removeEventListener("mousemove", handleMouseMove);
|
|
194
|
+
handleCancelHide();
|
|
195
|
+
};
|
|
196
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
197
|
+
}, [editor]);
|
|
198
|
+
(0, react_1.useEffect)(function () {
|
|
199
|
+
if (!menu)
|
|
200
|
+
return;
|
|
201
|
+
var handlePointerDown = function (event) {
|
|
202
|
+
var _a;
|
|
203
|
+
if ((_a = overlayRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target))
|
|
204
|
+
return;
|
|
205
|
+
setMenu(null);
|
|
206
|
+
};
|
|
207
|
+
var handleKeyDown = function (event) {
|
|
208
|
+
if (event.key !== "Escape")
|
|
209
|
+
return;
|
|
210
|
+
event.preventDefault();
|
|
211
|
+
setMenu(null);
|
|
212
|
+
editor.commands.focus();
|
|
213
|
+
};
|
|
214
|
+
window.addEventListener("mousedown", handlePointerDown);
|
|
215
|
+
window.addEventListener("keydown", handleKeyDown);
|
|
216
|
+
return function () {
|
|
217
|
+
window.removeEventListener("mousedown", handlePointerDown);
|
|
218
|
+
window.removeEventListener("keydown", handleKeyDown);
|
|
219
|
+
};
|
|
220
|
+
}, [menu, editor]);
|
|
221
|
+
// 5. Handlers
|
|
222
|
+
// INFO: a burst of scroll or input events is drawn once, on the next frame
|
|
223
|
+
var handleRequestLayout = function () {
|
|
224
|
+
if (frameRef.current)
|
|
225
|
+
return;
|
|
226
|
+
frameRef.current = requestAnimationFrame(function () {
|
|
227
|
+
frameRef.current = 0;
|
|
228
|
+
setLayoutTick(function (tick) { return tick + 1; });
|
|
229
|
+
});
|
|
230
|
+
};
|
|
231
|
+
var handleCancelHide = function () {
|
|
232
|
+
if (hideTimerRef.current)
|
|
233
|
+
clearTimeout(hideTimerRef.current);
|
|
234
|
+
hideTimerRef.current = null;
|
|
235
|
+
};
|
|
236
|
+
// INFO: every command acts on the selection, so the caret is put in the cell
|
|
237
|
+
// the control belongs to before the command runs
|
|
238
|
+
var handleSelectCell = function (cell) {
|
|
239
|
+
var view = editor.view;
|
|
240
|
+
var pos = view.posAtDOM(cell, 0);
|
|
241
|
+
view.dispatch(view.state.tr.setSelection(state_1.TextSelection.near(view.state.doc.resolve(pos))));
|
|
242
|
+
};
|
|
243
|
+
var handleRun = function (cell, run) {
|
|
244
|
+
if (!cell || !handleIsPageCell(cell))
|
|
245
|
+
return;
|
|
246
|
+
handleSelectCell(cell);
|
|
247
|
+
run();
|
|
248
|
+
setMenu(null);
|
|
249
|
+
menuCellRef.current = null;
|
|
250
|
+
};
|
|
251
|
+
var handleGetCellPos = function () {
|
|
252
|
+
var depth = handleFindCellDepth(editor);
|
|
253
|
+
if (depth < 0)
|
|
254
|
+
return null;
|
|
255
|
+
return editor.state.selection.$from.before(depth);
|
|
256
|
+
};
|
|
257
|
+
// INFO: a CellSelection's replace empties each cell and keeps the cells, so
|
|
258
|
+
// deleting it clears a row or column without removing it
|
|
259
|
+
var handleClearCells = function (kind) {
|
|
260
|
+
var cellPos = handleGetCellPos();
|
|
261
|
+
if (cellPos === null)
|
|
262
|
+
return;
|
|
263
|
+
var state = editor.state, view = editor.view;
|
|
264
|
+
var $cell = state.doc.resolve(cellPos);
|
|
265
|
+
var selection = kind === "row"
|
|
266
|
+
? tables_1.CellSelection.rowSelection($cell)
|
|
267
|
+
: tables_1.CellSelection.colSelection($cell);
|
|
268
|
+
var tr = state.tr.setSelection(selection).deleteSelection();
|
|
269
|
+
tr.setSelection(state_1.TextSelection.near(tr.doc.resolve(tr.mapping.map(cellPos))));
|
|
270
|
+
view.dispatch(tr);
|
|
271
|
+
view.focus();
|
|
272
|
+
};
|
|
273
|
+
// INFO: prosemirror-tables has no duplicate command — the row node is copied
|
|
274
|
+
// and inserted after itself, and its fixTables pass repairs any spans
|
|
275
|
+
var handleDuplicateRow = function () {
|
|
276
|
+
var state = editor.state, view = editor.view;
|
|
277
|
+
var $from = state.selection.$from;
|
|
278
|
+
for (var depth = $from.depth; depth > 0; depth -= 1) {
|
|
279
|
+
var row = $from.node(depth);
|
|
280
|
+
if (row.type.name !== "tableRow")
|
|
281
|
+
continue;
|
|
282
|
+
view.dispatch(state.tr.insert($from.after(depth), row.copy(row.content)));
|
|
283
|
+
view.focus();
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
};
|
|
287
|
+
var handleOpenMenu = function (kind, anchor) {
|
|
288
|
+
menuCellRef.current = activeCell;
|
|
289
|
+
setMenu({
|
|
290
|
+
kind: kind,
|
|
291
|
+
// INFO: room for the tallest menu (nine items and a divider)
|
|
292
|
+
top: Math.max(8, Math.min(anchor.top, window.innerHeight - 340)),
|
|
293
|
+
left: Math.min(Math.max(anchor.left, 8), window.innerWidth - MENU_WIDTH - 8),
|
|
294
|
+
});
|
|
295
|
+
};
|
|
296
|
+
var handleGetMenuItems = function (kind) {
|
|
297
|
+
var cell = menuCellRef.current;
|
|
298
|
+
var chain = function () { return editor.chain().focus(); };
|
|
299
|
+
// INFO: both grips offer every insert direction, so a row can be added from
|
|
300
|
+
// the column grip and a column from the row grip — whichever is under the
|
|
301
|
+
// pointer. Only what the menu changes afterwards depends on which grip.
|
|
302
|
+
var insertItems = [
|
|
303
|
+
{
|
|
304
|
+
id: "row-above",
|
|
305
|
+
label: "Insert row above",
|
|
306
|
+
icon: ArrowUpIcon_1.default,
|
|
307
|
+
run: function () { return handleRun(cell, function () { return chain().addRowBefore().run(); }); },
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
id: "row-below",
|
|
311
|
+
label: "Insert row below",
|
|
312
|
+
icon: ArrowDownIcon_1.default,
|
|
313
|
+
run: function () { return handleRun(cell, function () { return chain().addRowAfter().run(); }); },
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
id: "column-left",
|
|
317
|
+
label: "Insert column left",
|
|
318
|
+
icon: ArrowLeftIcon_1.default,
|
|
319
|
+
run: function () { return handleRun(cell, function () { return chain().addColumnBefore().run(); }); },
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
id: "column-right",
|
|
323
|
+
label: "Insert column right",
|
|
324
|
+
icon: ArrowRightIcon_1.default,
|
|
325
|
+
run: function () { return handleRun(cell, function () { return chain().addColumnAfter().run(); }); },
|
|
326
|
+
},
|
|
327
|
+
];
|
|
328
|
+
var deleteTableItem = {
|
|
329
|
+
id: "table-delete",
|
|
330
|
+
label: "Delete table",
|
|
331
|
+
icon: TrashIcon_1.default,
|
|
332
|
+
danger: true,
|
|
333
|
+
run: function () { return handleRun(cell, function () { return chain().deleteTable().run(); }); },
|
|
334
|
+
};
|
|
335
|
+
if (kind === "row")
|
|
336
|
+
return __spreadArray(__spreadArray([], insertItems, true), [
|
|
337
|
+
{
|
|
338
|
+
id: "row-duplicate",
|
|
339
|
+
dividerBefore: true,
|
|
340
|
+
label: "Duplicate row",
|
|
341
|
+
icon: DocumentDuplicateIcon_1.default,
|
|
342
|
+
run: function () { return handleRun(cell, handleDuplicateRow); },
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
id: "row-clear",
|
|
346
|
+
label: "Clear row",
|
|
347
|
+
icon: XCircleIcon_1.default,
|
|
348
|
+
run: function () { return handleRun(cell, function () { return handleClearCells("row"); }); },
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
id: "row-delete",
|
|
352
|
+
label: "Delete row",
|
|
353
|
+
icon: TrashIcon_1.default,
|
|
354
|
+
danger: true,
|
|
355
|
+
run: function () { return handleRun(cell, function () { return chain().deleteRow().run(); }); },
|
|
356
|
+
},
|
|
357
|
+
deleteTableItem,
|
|
358
|
+
], false);
|
|
359
|
+
return __spreadArray(__spreadArray([], insertItems, true), [
|
|
360
|
+
{
|
|
361
|
+
id: "column-clear",
|
|
362
|
+
dividerBefore: true,
|
|
363
|
+
label: "Clear column",
|
|
364
|
+
icon: XCircleIcon_1.default,
|
|
365
|
+
run: function () { return handleRun(cell, function () { return handleClearCells("column"); }); },
|
|
366
|
+
},
|
|
367
|
+
{
|
|
368
|
+
id: "header-row",
|
|
369
|
+
label: "Toggle header row",
|
|
370
|
+
icon: TableCellsIcon_1.default,
|
|
371
|
+
run: function () { return handleRun(cell, function () { return chain().toggleHeaderRow().run(); }); },
|
|
372
|
+
},
|
|
373
|
+
{
|
|
374
|
+
id: "column-delete",
|
|
375
|
+
label: "Delete column",
|
|
376
|
+
icon: TrashIcon_1.default,
|
|
377
|
+
danger: true,
|
|
378
|
+
run: function () { return handleRun(cell, function () { return chain().deleteColumn().run(); }); },
|
|
379
|
+
},
|
|
380
|
+
deleteTableItem,
|
|
381
|
+
], false);
|
|
382
|
+
};
|
|
383
|
+
// 6. Render helpers
|
|
384
|
+
var renderMenu = function () {
|
|
385
|
+
if (!menu)
|
|
386
|
+
return null;
|
|
387
|
+
return (react_1.default.createElement("div", { role: "menu", "aria-label": menu.kind === "row" ? "Row options" : "Column options", "data-testid": "markdown-table-menu", className: "fixed z-50 rounded-lg border p-1 shadow-lg ".concat(surface), style: { top: menu.top, left: menu.left, width: MENU_WIDTH } }, handleGetMenuItems(menu.kind).map(function (eachItem, index) {
|
|
388
|
+
var Icon = eachItem.icon;
|
|
389
|
+
return (react_1.default.createElement(react_1.default.Fragment, { key: eachItem.id },
|
|
390
|
+
eachItem.dividerBefore && (react_1.default.createElement("div", { role: "separator", className: "mx-1 my-1 h-px ".concat(props.darkMode ? "bg-gray-600" : "bg-gray-200") })),
|
|
391
|
+
react_1.default.createElement("button", { type: "button", role: "menuitem", "data-testid": "markdown-table-".concat(eachItem.id),
|
|
392
|
+
// INFO: the first item takes focus so a keyboard user lands in the menu
|
|
393
|
+
autoFocus: index === 0, onClick: eachItem.run, className: "flex w-full flex-row items-center gap-x-2 rounded px-2 py-1.5 text-left text-sm focus:outline-none focus-visible:ring-1 focus-visible:ring-primary-500 ".concat(hover, " ").concat(eachItem.danger ? "text-red-600" : "") },
|
|
394
|
+
react_1.default.createElement(Icon, { className: "h-4 w-4 ".concat(eachItem.danger ? "text-red-500" : muted) }),
|
|
395
|
+
eachItem.label)));
|
|
396
|
+
})));
|
|
397
|
+
};
|
|
398
|
+
var renderGrip = function (kind, style, anchor) {
|
|
399
|
+
var Icon = kind === "row" ? EllipsisVerticalIcon_1.default : EllipsisHorizontalIcon_1.default;
|
|
400
|
+
var label = kind === "row" ? "Row options" : "Column options";
|
|
401
|
+
return (react_1.default.createElement("button", { type: "button", title: label, "aria-label": label, "aria-haspopup": "menu", "aria-expanded": (menu === null || menu === void 0 ? void 0 : menu.kind) === kind, "data-testid": "markdown-table-".concat(kind, "-grip"), onClick: function () {
|
|
402
|
+
return (menu === null || menu === void 0 ? void 0 : menu.kind) === kind ? setMenu(null) : handleOpenMenu(kind, anchor);
|
|
403
|
+
}, className: "fixed z-40 flex items-center justify-center rounded border shadow-sm ".concat(surface, " ").concat(hover), style: style },
|
|
404
|
+
react_1.default.createElement(Icon, { className: "h-3.5 w-3.5 ".concat(muted) })));
|
|
405
|
+
};
|
|
406
|
+
var renderAddBar = function (kind, style, onAdd) {
|
|
407
|
+
var label = kind === "row" ? "Add row" : "Add column";
|
|
408
|
+
return (react_1.default.createElement("button", { type: "button", title: label, "aria-label": label, "data-testid": "markdown-table-add-".concat(kind), onClick: onAdd, className: "fixed z-40 flex items-center justify-center rounded opacity-60 hover:opacity-100 ".concat(props.darkMode
|
|
409
|
+
? "bg-gray-800 hover:bg-gray-700"
|
|
410
|
+
: "bg-gray-100 hover:bg-gray-200"), style: style },
|
|
411
|
+
react_1.default.createElement(PlusIcon_1.default, { className: "h-3.5 w-3.5 ".concat(muted) })));
|
|
412
|
+
};
|
|
413
|
+
var renderControls = function () {
|
|
414
|
+
if (!activeCell || !activeRow || !activeTable)
|
|
415
|
+
return null;
|
|
416
|
+
var tableRect = activeTable.getBoundingClientRect();
|
|
417
|
+
var rowRect = activeRow.getBoundingClientRect();
|
|
418
|
+
var cellRect = activeCell.getBoundingClientRect();
|
|
419
|
+
var rows = Array.from(activeTable.querySelectorAll("tr")).filter(function (row) { return row.closest("table") === activeTable; });
|
|
420
|
+
var firstRow = rows[0];
|
|
421
|
+
var lastRow = rows[rows.length - 1];
|
|
422
|
+
var lastCellOfFirstRow = firstRow === null || firstRow === void 0 ? void 0 : firstRow.lastElementChild;
|
|
423
|
+
var firstCellOfLastRow = lastRow === null || lastRow === void 0 ? void 0 : lastRow.firstElementChild;
|
|
424
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
425
|
+
renderGrip("row", {
|
|
426
|
+
top: rowRect.top + Math.min(rowRect.height / 2, 18) - 10,
|
|
427
|
+
left: tableRect.left - 9,
|
|
428
|
+
width: 18,
|
|
429
|
+
height: 20,
|
|
430
|
+
}, { top: rowRect.top, left: tableRect.left + 14 }),
|
|
431
|
+
renderGrip("column", {
|
|
432
|
+
top: tableRect.top - 9,
|
|
433
|
+
left: cellRect.left + cellRect.width / 2 - 10,
|
|
434
|
+
width: 20,
|
|
435
|
+
height: 18,
|
|
436
|
+
}, { top: tableRect.top + 14, left: cellRect.left }),
|
|
437
|
+
renderAddBar("column", {
|
|
438
|
+
top: tableRect.top,
|
|
439
|
+
left: tableRect.right + 4,
|
|
440
|
+
width: 16,
|
|
441
|
+
height: tableRect.height,
|
|
442
|
+
}, function () {
|
|
443
|
+
return handleRun(lastCellOfFirstRow, function () {
|
|
444
|
+
return editor.chain().focus().addColumnAfter().run();
|
|
445
|
+
});
|
|
446
|
+
}),
|
|
447
|
+
renderAddBar("row", {
|
|
448
|
+
top: tableRect.bottom + 4,
|
|
449
|
+
left: tableRect.left,
|
|
450
|
+
width: tableRect.width,
|
|
451
|
+
height: 16,
|
|
452
|
+
}, function () {
|
|
453
|
+
return handleRun(firstCellOfLastRow, function () {
|
|
454
|
+
return editor.chain().focus().addRowAfter().run();
|
|
455
|
+
});
|
|
456
|
+
})));
|
|
457
|
+
};
|
|
458
|
+
// 7. Return
|
|
459
|
+
if (!handleIsMounted() || !editor.isEditable)
|
|
460
|
+
return null;
|
|
461
|
+
if (!activeCell && !menu)
|
|
462
|
+
return null;
|
|
463
|
+
return (react_1.default.createElement("div", { ref: overlayRef, "data-testid": "markdown-table-controls", onMouseEnter: handleCancelHide,
|
|
464
|
+
// INFO: keeps the editor focused and its selection intact while a control
|
|
465
|
+
// is pressed, as the selection toolbar does
|
|
466
|
+
onMouseDown: function (event) { return event.preventDefault(); } },
|
|
467
|
+
renderControls(),
|
|
468
|
+
renderMenu()));
|
|
469
|
+
};
|
|
470
|
+
exports.TableControls = TableControls;
|
|
471
|
+
//# sourceMappingURL=tableControls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableControls.js","sourceRoot":"","sources":["../../../../src/components/input/markdown/tableControls.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a table is written into the stored markdown.
|
|
3
|
+
*
|
|
4
|
+
* INFO: a GFM pipe table can only hold one line of inline text per cell. A
|
|
5
|
+
* table pasted from Notion carries lists, several lines and line breaks in its
|
|
6
|
+
* cells, and the old rule flattened all of that with textContent — the table
|
|
7
|
+
* looked right until the page was reopened. Worse, a table with no header row
|
|
8
|
+
* was written without the `| --- |` line, so markdown-it read it back as plain
|
|
9
|
+
* `| a | b |` text.
|
|
10
|
+
*
|
|
11
|
+
* So the table is written two ways:
|
|
12
|
+
* - simple (header row of th, body of td, one line of inline text per cell, no
|
|
13
|
+
* merged cells) stays a pipe table — every table written before this keeps
|
|
14
|
+
* serialising the same way
|
|
15
|
+
* - anything else is written as one line of html. markdown-it runs with
|
|
16
|
+
* html:true and the editor's table cells accept block content, so it reads
|
|
17
|
+
* back exactly as it was saved
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* INFO: walked by hand rather than through table.rows / querySelectorAll —
|
|
21
|
+
* those reach into a table nested in a cell, and turndown's node DOM does not
|
|
22
|
+
* implement the table collections at all
|
|
23
|
+
*/
|
|
24
|
+
export declare const handleGetTableRows: (table: Element) => Element[];
|
|
25
|
+
export declare const handleGetRowCells: (row: Element) => Element[];
|
|
26
|
+
export declare const handleIsSimpleTable: (table: Element) => boolean;
|
|
27
|
+
export declare const handleRenderCellMarker: (content: string) => string;
|
|
28
|
+
export declare const handleRenderRowMarker: (content: string) => string;
|
|
29
|
+
/**
|
|
30
|
+
* `content` is what turndown wrote for the table's children — cells wrapped by
|
|
31
|
+
* handleRenderCellMarker, rows by handleRenderRowMarker.
|
|
32
|
+
*/
|
|
33
|
+
export declare const handleTableToMarkdown: (table: Element, content: string) => string;
|
|
34
|
+
//# sourceMappingURL=tableMarkdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableMarkdown.d.ts","sourceRoot":"","sources":["../../../../src/components/input/markdown/tableMarkdown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAUH;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,UAAW,OAAO,KAAG,OAAO,EAU1D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAS,OAAO,KAAG,OAAO,EACkB,CAAC;AAqB3E,eAAO,MAAM,mBAAmB,UAAW,OAAO,KAAG,OAkBpD,CAAC;AAcF,eAAO,MAAM,sBAAsB,YAAa,MAAM,WAQ5C,CAAC;AAEX,eAAO,MAAM,qBAAqB,YAAa,MAAM,WAAsB,CAAC;AA0C5E;;;GAGG;AACH,eAAO,MAAM,qBAAqB,UACzB,OAAO,WACL,MAAM,KACd,MAMF,CAAC"}
|