本文整理匯總了TypeScript中@ephox/snooker.TableLookup類的典型用法代碼示例。如果您正苦於以下問題:TypeScript TableLookup類的具體用法?TypeScript TableLookup怎麽用?TypeScript TableLookup使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了TableLookup類的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: function
const syncSelection = function () {
const sel = editor.selection;
const start = Element.fromDom(sel.getStart());
const end = Element.fromDom(sel.getEnd());
const startTable = TableLookup.table(start);
const endTable = TableLookup.table(end);
const sameTable = startTable.bind(function (tableStart) {
return endTable.bind(function (tableEnd) {
return Compare.eq(tableStart, tableEnd) ? Option.some(true) : Option.none();
});
});
sameTable.fold(function () {
annotations.clear(body);
}, Fun.noop);
};
示例2:
targets = cellOpt.bind(function (cellDom) {
const cell = Element.fromDom(cellDom);
const table = TableLookup.table(cell);
return table.map(function (table) {
return TableTargets.forMenu(selections, table, cell);
});
});
示例3: function
}, function (current) {
return TableLookup.table(current, isRoot).bind(function (table) {
const targets = TableTargets.noMenu(current);
editor.undoManager.transact(function () {
actions.insertRowsAfter(table, targets);
});
return getNewRowCursorPosition(editor, table);
});
});
示例4:
return TableSelection.getSelectionStartCellOrCaption(editor).bind((cellOrCaption) => {
const table = TableLookup.table(cellOrCaption);
return table.map((table) => {
if (Node.name(cellOrCaption) === 'caption') {
return TableTargets.notCell(cellOrCaption);
} else {
return TableTargets.forMenu(selections, table, cellOrCaption);
}
});
});
示例5: function
const eraseTable = function () {
const cell = Element.fromDom(editor.dom.getParent(editor.selection.getStart(), 'th,td'));
const table = TableLookup.table(cell, isRoot);
table.filter(Fun.not(isRoot)).each(function (table) {
const cursor = Element.fromText('');
Insert.after(table, cursor);
Remove.remove(table);
const rng = editor.dom.createRng();
rng.setStart(cursor.dom(), 0);
rng.setEnd(cursor.dom(), 0);
editor.selection.setRng(rng);
});
};
示例6:
.each((cellOrCaption) => {
const tableOpt = TableLookup.table(cellOrCaption, isRoot);
tableOpt.filter(Fun.not(isRoot)).each((table) => {
const cursor = Element.fromText('');
Insert.after(table, cursor);
Remove.remove(table);
if (editor.dom.isEmpty(editor.getBody())) {
editor.setContent('');
editor.selection.setCursorLocation();
} else {
const rng = editor.dom.createRng();
rng.setStart(cursor.dom(), 0);
rng.setEnd(cursor.dom(), 0);
editor.selection.setRng(rng);
editor.nodeChanged();
}
});
});
示例7: function
cellOpt.each(function (domCell) {
const cell = Element.fromDom(domCell);
TableLookup.table(cell).each((table) => {
const elements = Arr.filter(Elements.fromHtml(e.content), function (content) {
return Node.name(content) !== 'meta';
});
if (elements.length === 1 && Node.name(elements[0]) === 'table') {
e.preventDefault();
const doc = Element.fromDom(editor.getDoc());
const generators = TableFill.paste(doc);
const targets = TableTargets.paste(cell, elements[0], generators);
actions.pasteCells(table, targets).each(function (rng) {
editor.selection.setRng(rng);
editor.focus();
cellSelection.clear(table);
});
}
});
});