dbweb-common
Version:
用`yarn add dbweb-common`安装,不要忘记修改`angular.json`里的 `architect\build\options\assets`,加上
133 lines • 13.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export class ContextMenu {
constructor() {
this.contextMenuPosition = { x: '0px', y: '0px' };
}
/**
* @param {?} colIndex
* @param {?} rowIndex
* @return {?}
*/
cellSelector(colIndex, rowIndex) {
return false;
}
/**
* @param {?} event
* @param {?} col
* @param {?} row
* @return {?}
*/
openContextMenu(event, col, row) {
if (this.cellSelector(col, row)) {
event.preventDefault(); // Suppress the browser's context menu
this.contextMenuPosition = { x: event.clientX + 'px', y: event.clientY + 'px' };
this.contextMenu.openMenu(); // Open your custom context menu instead
document
.getElementsByClassName('cdk-overlay-backdrop')[0]
.addEventListener('contextmenu', (/**
* @param {?} offEvent
* @return {?}
*/
(offEvent) => {
offEvent.preventDefault();
this.contextMenu.closeMenu();
}));
}
}
/**
* @param {?} hasTitle
* @return {?}
*/
onSelCopyClick(hasTitle) {
// 注意有反向选择
/** @type {?} */
const x = Math.min(this.selector.startX, this.selector.endX);
/** @type {?} */
const x1 = Math.max(this.selector.startX, this.selector.endX);
/** @type {?} */
const y = Math.min(this.selector.startY, this.selector.endY);
/** @type {?} */
const y1 = Math.max(this.selector.startY, this.selector.endY);
/** @type {?} */
const text = [];
if (hasTitle) {
/** @type {?} */
const line = [];
for (let ix = x; ix <= x1; ix++) {
line.push(this.tabData.nativeElement.rows[0].cells[ix].innerText.trim()); // 发现有换行,需要去除
}
text.push(line.join('\t'));
}
for (let iy = y; iy <= y1; iy++) {
/** @type {?} */
const line = [];
for (let ix = x; ix <= x1; ix++) {
line.push(this.tabData.nativeElement.rows[iy + 1].cells[ix].innerText.trim());
}
text.push(line.join('\t'));
}
this._clipboardService.copyFromContent(text.join('\n'));
}
/**
* @param {?} event
* @return {?}
*/
onSelLineMenuClick(event) {
/** @type {?} */
const y = Math.min(this.selector.startY, this.selector.endY);
/** @type {?} */
const y1 = Math.max(this.selector.startY, this.selector.endY);
this.svr.data.tableRowSelection.select(...this.dataSource.slice(y, y1 + 1).map((/**
* @param {?} v
* @return {?}
*/
v => v.Key)));
}
/**
* @return {?}
*/
onSelCancelLineMenuClick() {
/** @type {?} */
const y = Math.min(this.selector.startY, this.selector.endY);
/** @type {?} */
const y1 = Math.max(this.selector.startY, this.selector.endY);
this.svr.data.tableRowSelection.deselect(...this.dataSource.slice(y, y1 + 1).map((/**
* @param {?} v
* @return {?}
*/
v => v.Key)));
}
/**
* @return {?}
*/
onSelAllMenuClick() {
if (this.dataSource.length > 0) {
this.selector.startX = 1;
this.selector.startY = 0;
this.selector.endX = this.columns.length + 1; // 加个序号列
this.selector.endY = this.dataSource.length - 1;
}
}
}
if (false) {
/** @type {?} */
ContextMenu.prototype.contextMenu;
/** @type {?} */
ContextMenu.prototype.contextMenuPosition;
/** @type {?} */
ContextMenu.prototype.svr;
/** @type {?} */
ContextMenu.prototype.selector;
/** @type {?} */
ContextMenu.prototype.tabData;
/** @type {?} */
ContextMenu.prototype._clipboardService;
/** @type {?} */
ContextMenu.prototype.dataSource;
/** @type {?} */
ContextMenu.prototype.columns;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4LW1lbnUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9kYndlYi1jb21tb24vIiwic291cmNlcyI6WyJsaWIvcmVjb3JkLXZpZXcvdGFibGUvY29udGV4LW1lbnUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQU9BLE1BQU0sT0FBTyxXQUFXO0lBQXhCO1FBRUMsd0JBQW1CLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQWlFOUMsQ0FBQzs7Ozs7O0lBMURBLFlBQVksQ0FBQyxRQUFnQixFQUFFLFFBQWdCO1FBQzlDLE9BQU8sS0FBSyxDQUFDO0lBQ2QsQ0FBQzs7Ozs7OztJQUNELGVBQWUsQ0FBQyxLQUFpQixFQUFFLEdBQVcsRUFBRSxHQUFXO1FBQzFELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDaEMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsc0NBQXNDO1lBQzlELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLEVBQUUsQ0FBQztZQUNoRixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsd0NBQXdDO1lBQ3JFLFFBQVE7aUJBQ04sc0JBQXNCLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2pELGdCQUFnQixDQUFDLGFBQWE7Ozs7WUFBRSxDQUFDLFFBQWEsRUFBRSxFQUFFO2dCQUNsRCxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUIsQ0FBQyxFQUFDLENBQUM7U0FDSjtJQUNGLENBQUM7Ozs7O0lBQ0QsY0FBYyxDQUFDLFFBQWlCOzs7Y0FFekIsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7O2NBQ3RELEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDOztjQUN2RCxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQzs7Y0FDdEQsRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7O2NBQ3ZELElBQUksR0FBRyxFQUFFO1FBQ2YsSUFBSSxRQUFRLEVBQUU7O2tCQUNQLElBQUksR0FBRyxFQUFFO1lBQ2YsS0FBSyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYTthQUN2RjtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQzNCO1FBQ0QsS0FBSyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTs7a0JBQzFCLElBQUksR0FBRyxFQUFFO1lBQ2YsS0FBSyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUM5RTtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQzNCO1FBRUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQzs7Ozs7SUFDRCxrQkFBa0IsQ0FBQyxLQUFpQjs7Y0FDN0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7O2NBQ3RELEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzdELElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQzs7OztJQUNELHdCQUF3Qjs7Y0FDakIsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7O2NBQ3RELEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzdELElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBQyxDQUFDLENBQUM7SUFDL0YsQ0FBQzs7OztJQUNELGlCQUFpQjtRQUNoQixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVE7WUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ2hEO0lBQ0YsQ0FBQztDQUNEOzs7SUFsRUEsa0NBQTRCOztJQUM1QiwwQ0FBNkM7O0lBQzdDLDBCQUFvQjs7SUFDcEIsK0JBQW9COztJQUNwQiw4QkFBc0M7O0lBQ3RDLHdDQUFvQzs7SUFDcEMsaUNBQXlCOztJQUN6Qiw4QkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdE1lbnVUcmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IENsaXBib2FyZFNlcnZpY2UgfSBmcm9tICduZ3gtY2xpcGJvYXJkJztcclxuaW1wb3J0IHsgSVJlbmRlclJvdywgVGFibGVDb2x1bW5UeXBlIH0gZnJvbSAnLi4vbW9kZWwvbW9kZWwnO1xyXG5pbXBvcnQgeyBTZXJ2aWNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2Uvc2VydmljZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSVNlbGVjdG9yIH0gZnJvbSAnLi9zZWxlY3Rvcic7XHJcblxyXG5leHBvcnQgY2xhc3MgQ29udGV4dE1lbnUge1xyXG5cdGNvbnRleHRNZW51OiBNYXRNZW51VHJpZ2dlcjtcclxuXHRjb250ZXh0TWVudVBvc2l0aW9uID0geyB4OiAnMHB4JywgeTogJzBweCcgfTtcclxuXHRzdnI6IFNlcnZpY2VTZXJ2aWNlO1xyXG5cdHNlbGVjdG9yOiBJU2VsZWN0b3I7XHJcblx0dGFiRGF0YTogRWxlbWVudFJlZjxIVE1MVGFibGVFbGVtZW50PjtcclxuXHRfY2xpcGJvYXJkU2VydmljZTogQ2xpcGJvYXJkU2VydmljZTtcclxuXHRkYXRhU291cmNlOiBJUmVuZGVyUm93W107XHJcblx0Y29sdW1uczogVGFibGVDb2x1bW5UeXBlW107XHJcblx0Y2VsbFNlbGVjdG9yKGNvbEluZGV4OiBudW1iZXIsIHJvd0luZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiBmYWxzZTtcclxuXHR9XHJcblx0b3BlbkNvbnRleHRNZW51KGV2ZW50OiBNb3VzZUV2ZW50LCBjb2w6IG51bWJlciwgcm93OiBudW1iZXIpIHtcclxuXHRcdGlmICh0aGlzLmNlbGxTZWxlY3Rvcihjb2wsIHJvdykpIHtcclxuXHRcdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTsgLy8gU3VwcHJlc3MgdGhlIGJyb3dzZXIncyBjb250ZXh0IG1lbnVcclxuXHRcdFx0dGhpcy5jb250ZXh0TWVudVBvc2l0aW9uID0geyB4OiBldmVudC5jbGllbnRYICsgJ3B4JywgeTogZXZlbnQuY2xpZW50WSArICdweCcgfTtcclxuXHRcdFx0dGhpcy5jb250ZXh0TWVudS5vcGVuTWVudSgpOyAvLyBPcGVuIHlvdXIgY3VzdG9tIGNvbnRleHQgbWVudSBpbnN0ZWFkXHJcblx0XHRcdGRvY3VtZW50XHJcblx0XHRcdFx0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2Nkay1vdmVybGF5LWJhY2tkcm9wJylbMF1cclxuXHRcdFx0XHQuYWRkRXZlbnRMaXN0ZW5lcignY29udGV4dG1lbnUnLCAob2ZmRXZlbnQ6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0b2ZmRXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHRcdFx0XHRcdHRoaXMuY29udGV4dE1lbnUuY2xvc2VNZW51KCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHR9XHJcblx0fVxyXG5cdG9uU2VsQ29weUNsaWNrKGhhc1RpdGxlOiBib29sZWFuKSB7XHJcblx0XHQvLyDms6jmhI/mnInlj43lkJHpgInmi6lcclxuXHRcdGNvbnN0IHggPSBNYXRoLm1pbih0aGlzLnNlbGVjdG9yLnN0YXJ0WCwgdGhpcy5zZWxlY3Rvci5lbmRYKTtcclxuXHRcdGNvbnN0IHgxID0gTWF0aC5tYXgodGhpcy5zZWxlY3Rvci5zdGFydFgsIHRoaXMuc2VsZWN0b3IuZW5kWCk7XHJcblx0XHRjb25zdCB5ID0gTWF0aC5taW4odGhpcy5zZWxlY3Rvci5zdGFydFksIHRoaXMuc2VsZWN0b3IuZW5kWSk7XHJcblx0XHRjb25zdCB5MSA9IE1hdGgubWF4KHRoaXMuc2VsZWN0b3Iuc3RhcnRZLCB0aGlzLnNlbGVjdG9yLmVuZFkpO1xyXG5cdFx0Y29uc3QgdGV4dCA9IFtdO1xyXG5cdFx0aWYgKGhhc1RpdGxlKSB7XHJcblx0XHRcdGNvbnN0IGxpbmUgPSBbXTtcclxuXHRcdFx0Zm9yIChsZXQgaXggPSB4OyBpeCA8PSB4MTsgaXgrKykge1xyXG5cdFx0XHRcdGxpbmUucHVzaCh0aGlzLnRhYkRhdGEubmF0aXZlRWxlbWVudC5yb3dzWzBdLmNlbGxzW2l4XS5pbm5lclRleHQudHJpbSgpKTsgLy8g5Y+R546w5pyJ5o2i6KGM77yM6ZyA6KaB5Y676ZmkXHJcblx0XHRcdH1cclxuXHRcdFx0dGV4dC5wdXNoKGxpbmUuam9pbignXFx0JykpO1xyXG5cdFx0fVxyXG5cdFx0Zm9yIChsZXQgaXkgPSB5OyBpeSA8PSB5MTsgaXkrKykge1xyXG5cdFx0XHRjb25zdCBsaW5lID0gW107XHJcblx0XHRcdGZvciAobGV0IGl4ID0geDsgaXggPD0geDE7IGl4KyspIHtcclxuXHRcdFx0XHRsaW5lLnB1c2godGhpcy50YWJEYXRhLm5hdGl2ZUVsZW1lbnQucm93c1tpeSArIDFdLmNlbGxzW2l4XS5pbm5lclRleHQudHJpbSgpKTtcclxuXHRcdFx0fVxyXG5cdFx0XHR0ZXh0LnB1c2gobGluZS5qb2luKCdcXHQnKSk7XHJcblx0XHR9XHJcblxyXG5cdFx0dGhpcy5fY2xpcGJvYXJkU2VydmljZS5jb3B5RnJvbUNvbnRlbnQodGV4dC5qb2luKCdcXG4nKSk7XHJcblx0fVxyXG5cdG9uU2VsTGluZU1lbnVDbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG5cdFx0Y29uc3QgeSA9IE1hdGgubWluKHRoaXMuc2VsZWN0b3Iuc3RhcnRZLCB0aGlzLnNlbGVjdG9yLmVuZFkpO1xyXG5cdFx0Y29uc3QgeTEgPSBNYXRoLm1heCh0aGlzLnNlbGVjdG9yLnN0YXJ0WSwgdGhpcy5zZWxlY3Rvci5lbmRZKTtcclxuXHRcdHRoaXMuc3ZyLmRhdGEudGFibGVSb3dTZWxlY3Rpb24uc2VsZWN0KC4uLnRoaXMuZGF0YVNvdXJjZS5zbGljZSh5LCB5MSArIDEpLm1hcCh2ID0+IHYuS2V5KSk7XHJcblx0fVxyXG5cdG9uU2VsQ2FuY2VsTGluZU1lbnVDbGljaygpIHtcclxuXHRcdGNvbnN0IHkgPSBNYXRoLm1pbih0aGlzLnNlbGVjdG9yLnN0YXJ0WSwgdGhpcy5zZWxlY3Rvci5lbmRZKTtcclxuXHRcdGNvbnN0IHkxID0gTWF0aC5tYXgodGhpcy5zZWxlY3Rvci5zdGFydFksIHRoaXMuc2VsZWN0b3IuZW5kWSk7XHJcblx0XHR0aGlzLnN2ci5kYXRhLnRhYmxlUm93U2VsZWN0aW9uLmRlc2VsZWN0KC4uLnRoaXMuZGF0YVNvdXJjZS5zbGljZSh5LCB5MSArIDEpLm1hcCh2ID0+IHYuS2V5KSk7XHJcblx0fVxyXG5cdG9uU2VsQWxsTWVudUNsaWNrKCkge1xyXG5cdFx0aWYgKHRoaXMuZGF0YVNvdXJjZS5sZW5ndGggPiAwKSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0b3Iuc3RhcnRYID0gMTtcclxuXHRcdFx0dGhpcy5zZWxlY3Rvci5zdGFydFkgPSAwO1xyXG5cdFx0XHR0aGlzLnNlbGVjdG9yLmVuZFggPSB0aGlzLmNvbHVtbnMubGVuZ3RoICsgMTsgLy8g5Yqg5Liq5bqP5Y+35YiXXHJcblx0XHRcdHRoaXMuc2VsZWN0b3IuZW5kWSA9IHRoaXMuZGF0YVNvdXJjZS5sZW5ndGggLSAxO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iXX0=