This commit is contained in:
sriramphanib committed 2023-03-11 17:30:20 +00:00
commit b6c4e025bc
5124 files changed
+1153349

No files matched your search

@@ -0,0 +1,846 @@
var Unibase;
(function (Unibase) {
let Apps;
(function (Apps) {
let Collaboration;
(function (Collaboration) {
let Components;
(function (Components) {
let Sheets;
(function (Sheets) {
class Autofill {
constructor() {
this.hederText = {};
this.colType = { String: "string", Number: "number", Custom: "custom", Formula: "formula", Time: "time", LongDate: "longdate", ShortDate: "shortdate", Scientific: "scientific", Fraction: "fraction", Text: "text", General: "general", Accounting: "accounting", Currency: "currency", Percentage: "percentage", Date: "date", DateTime: "datetime" };
this.customList = [
["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
];
this.UC = {
uniqueOBracket: String.fromCharCode(129),
uniqueCBracket: String.fromCharCode(130),
uniqueCSeparator: String.fromCharCode(131),
uniqueCOperator: String.fromCharCode(132),
uniquePOperator: String.fromCharCode(133),
uniqueSOperator: String.fromCharCode(134),
uniqueMOperator: String.fromCharCode(135),
uniqueDOperator: String.fromCharCode(136),
uniqueModOperator: String.fromCharCode(137),
uniqueConcateOperator: String.fromCharCode(138),
uniqueEqualOperator: String.fromCharCode(139),
uniqueExpOperator: String.fromCharCode(140),
uniqueGTOperator: String.fromCharCode(141),
uniqueLTOperator: String.fromCharCode(142)
};
}
init(base) {
this.base = base;
this.ssObj = base.ssObj;
this.initProp();
}
initProp() {
this.beforeSelectFn = this.beforeSelect.bind(this);
this.base.ssObj.addEventListener("beforeSelect", this.beforeSelectFn);
this.selectFn = this.selected.bind(this);
this.base.ssObj.addEventListener("select", this.selectFn);
this.actionCompleteFn = this.updateAutofill.bind(this);
this.base.ssObj.addEventListener("actionComplete", this.actionCompleteFn);
this.createdFn = this.created.bind(this);
this.base.ssObj.addEventListener("created", this.createdFn);
this.dataBoundFn = this.dataBound.bind(this);
this.base.ssObj.addEventListener("dataBound", this.dataBoundFn);
this.cellEditFn = this.cellEdit.bind(this);
this.base.ssObj.addEventListener("cellEditing", this.cellEditFn);
this.cellSaveFn = this.cellSave.bind(this);
this.base.ssObj.addEventListener("cellSave", this.cellSaveFn);
this.base.ssObj.on("activeSheetChanged", this.updateAutofill, this);
this.base.ssObj.on("mouseDown", this.mouseDown, this);
}
destroy() {
this.base.ssObj.removeEventListener("beforeSelect", this.beforeSelectFn);
this.base.ssObj.removeEventListener("select", this.selectFn);
this.base.ssObj.removeEventListener("actionComplete", this.actionCompleteFn);
this.base.ssObj.removeEventListener("created", this.createdFn);
this.base.ssObj.removeEventListener("dataBound", this.dataBoundFn);
this.base.ssObj.removeEventListener("cellEditing", this.cellEditFn);
this.base.ssObj.removeEventListener("cellSave", this.cellSaveFn);
this.base.ssObj.off("activeSheetChanged", this.updateAutofill);
this.base.ssObj.on("mouseDown", this.mouseDown, this);
ej.base.EventHandler.remove(this.base.ssObj.element, 'mouseup', this.mouseUp);
ej.base.EventHandler.remove(this.base.ssObj.element, 'keydown', this.keypress);
ej.base.EventHandler.remove(this.base.ssObj.element, 'dblclick', this.dblClick);
}
cellEdit() {
this.hideAutofill();
}
cellSave() {
this.updateAutofill();
}
dataBound() {
this.updateAutofill();
}
createBorders() {
if (!this.base.ssObj.element.getElementsByClassName('biz-af-bdr')[0]) {
let content = this.base.ssObj.element.getElementsByClassName('e-sheet-content')[0];
this.bdrAF = content.appendChild(ej.base.createElement('div', { className: 'biz-af-bdr' }));
}
}
hideBorders() {
if (this.bdrAF) {
this.bdrAF.style.display = 'none';
}
}
showBorders() {
if (this.bdrAF) {
this.bdrAF.style.display = '';
}
}
updateBorderDirection(hideDirecton) {
this.bdrAF.style.borderRightWidth = '1px';
this.bdrAF.style.borderLeftWidth = '1px';
this.bdrAF.style.borderTopWidth = '1px';
this.bdrAF.style.borderBottomWidth = '1px';
this.bdrAF.style["border" + hideDirecton + "Width"] = '0px';
}
mouseDown(e) {
if (e.target.classList.contains('biz-autofill')) {
this.isDrag = true;
ej.base.EventHandler.add(this.base.ssObj.element, 'mousemove', this.mouseMoveHandler, this);
this.x = e.clientX;
this.y = e.clientY;
this.indexes = this.base.ssObj.biz.getIndexes();
this.createBorders();
let sel = this.base.ssObj.element.getElementsByClassName('e-selection')[0];
let activecell = this.base.ssObj.element.getElementsByClassName('e-active-cell')[0];
this.selection = sel.classList.contains('e-hide') ? activecell : sel;
this.selOffset = this.selection.getBoundingClientRect();
this.parentOffset = this.selection.offsetParent.getBoundingClientRect();
this.left = parseInt(this.selection.style.left);
this.top = parseInt(this.selection.style.top);
}
}
mouseUp(e) {
this.isDrag = false;
ej.base.EventHandler.remove(this.base.ssObj.element, 'mousemove', this.mouseMoveHandler);
if (this.direction != undefined) {
this.autoFill();
}
this.direction = undefined;
this.hideBorders();
this.isDragged = false;
this.prevTarget = undefined;
}
createAutofill() {
if (!this.base.ssObj.element.getElementsByClassName('biz-autofill')[0]) {
this.element = document.createElement('div');
this.element.classList.add('biz-autofill');
let content = this.base.ssObj.element.getElementsByClassName('e-sheet-content')[0];
content && content.appendChild(this.element);
}
this.element.classList.remove('biz-hide');
}
updateAutofill() {
if (!this.base.ssObj.isEdit) {
this.positionAutofill();
}
else {
this.hideAutofill();
}
}
dblClick() {
setTimeout(() => {
this.hideAutofill();
}, 1);
}
positionAutofill() {
setTimeout(() => {
this.createAutofill();
let selection = this.base.ssObj.element.getElementsByClassName('e-selection')[0];
let activecell = this.base.ssObj.element.getElementsByClassName('e-active-cell')[0];
if (selection && !selection.classList.contains('e-hide')) {
activecell = selection;
}
(this.element && activecell) && (this.element.style.top = parseInt(activecell.style.top) + parseInt(activecell.style.height) - 6 + 'px');
(this.element && activecell) && (this.element.style.left = parseInt(activecell.style.left) + parseInt(activecell.style.width) + -5 + 'px');
}, 10);
}
hideAutofill() {
let ele = this.base.ssObj.element.getElementsByClassName('biz-autofill')[0];
if (ele) {
ele.classList.add('biz-hide');
}
}
mouseMoveHandler(e) {
e.preventDefault();
let x = e.clientX;
let y = e.clientY;
if (e.target === this.prevTarget) {
return;
}
let tr = ej.base.closest(e.target, 'tr');
let td = ej.base.closest(e.target, '.e-cell');
if (!this.isDragged) {
this.showBorders();
}
this.isDragged = true;
if (!tr || !td) {
return;
}
let colIdx = parseInt(td.getAttribute('aria-colindex')) - 1;
let rowIdx = parseInt(tr.getAttribute('aria-rowindex')) - 1;
if (this.indexes[0] <= rowIdx && this.indexes[2] >= rowIdx && this.indexes[1] <= colIdx && this.indexes[3] >= colIdx) {
this.hideBorders();
return;
}
let tdOffset = td.getBoundingClientRect();
let px = 'px';
this.showBorders();
let sheet = this.base.ssObj.biz.getActiveSheet();
let freezeRow = this.base.ssObj.frozenRowCount(sheet);
let freezeCol = this.base.ssObj.frozenColCount(sheet);
let left;
let width;
let top;
let height;
switch (true) {
case this.indexes[3] < colIdx && this.indexes[0] - rowIdx < colIdx - this.indexes[3] && rowIdx - this.indexes[2] < colIdx - this.indexes[3]:
this.direction = "right";
left = this.left + this.selOffset.width;
width = ej.spreadsheet.getCellPosition(sheet, [rowIdx - 1, colIdx + 1], freezeRow, freezeCol).left - (this.left + this.selOffset.width);
this.updateBorderDirection('Left');
this.bdrAF.style.top = this.top + px;
this.bdrAF.style.left = left + px;
this.bdrAF.style.height = this.selOffset.height + px;
this.bdrAF.style.width = width + px;
this.fIndexes = [this.indexes[0], this.indexes[3] + 1, this.indexes[2], colIdx];
this.startCell = { rowIndex: this.indexes[0], colIndex: this.indexes[1] };
this.endCell = { rowIndex: this.indexes[2], colIndex: colIdx };
break;
case this.indexes[1] > colIdx && this.indexes[0] - rowIdx <= this.indexes[1] - colIdx && rowIdx - this.indexes[2] < this.indexes[1] - colIdx:
this.direction = "left";
left = ej.spreadsheet.getCellPosition(sheet, [rowIdx - 1, colIdx], freezeRow, freezeCol).left;
width = this.left - left;
this.updateBorderDirection('Right');
this.bdrAF.style.top = this.top + px;
this.bdrAF.style.left = left + px;
this.bdrAF.style.height = this.selOffset.height + px;
this.bdrAF.style.width = width + px;
this.fIndexes = [this.indexes[0], colIdx, this.indexes[2], this.indexes[3] - 1];
this.startCell = { rowIndex: this.indexes[0], colIndex: colIdx };
this.endCell = { rowIndex: this.indexes[2], colIndex: this.indexes[3] };
break;
case this.indexes[0] > rowIdx:
this.direction = "up";
top = ej.spreadsheet.getCellPosition(sheet, [rowIdx, colIdx - 1], freezeRow, freezeCol).top;
height = this.top - top;
this.updateBorderDirection('Bottom');
this.bdrAF.style.top = top + px;
this.bdrAF.style.left = this.left + px;
this.bdrAF.style.height = height + px;
this.bdrAF.style.width = this.selOffset.width + px;
this.fIndexes = [rowIdx, this.indexes[1], this.indexes[0] - 1, this.indexes[3]];
this.startCell = { rowIndex: rowIdx, colIndex: this.indexes[1] };
this.endCell = { rowIndex: this.indexes[2], colIndex: this.indexes[3] };
break;
case this.indexes[2] < rowIdx:
this.direction = "down";
top = this.top + this.selOffset.height;
height = ej.spreadsheet.getCellPosition(sheet, [rowIdx + 1, colIdx - 1], freezeRow, freezeCol).top - (this.top + this.selOffset.height);
this.updateBorderDirection('Top');
this.bdrAF.style.top = top + px;
this.bdrAF.style.left = this.left + px;
this.bdrAF.style.height = height + px;
this.bdrAF.style.width = this.selOffset.width + px;
this.fIndexes = [this.indexes[2] + 1, this.indexes[1], rowIdx, this.indexes[3]];
this.startCell = { rowIndex: this.indexes[0], colIndex: this.indexes[1] };
this.endCell = { rowIndex: rowIdx, colIndex: this.indexes[3] };
break;
default:
this.direction = undefined;
break;
}
this.prevTarget = e.target;
this.drawAutoFill(e);
}
drawAutoFill(e) {
}
selected(e) {
this.range = e.range;
this.updateAutofill();
}
beforeSelect(e) {
if (this.isDrag) {
e.cancel = true;
}
this.hideAutofill();
}
created() {
ej.base.EventHandler.add(this.base.ssObj.element, 'mouseup', this.mouseUp, this);
ej.base.EventHandler.add(this.base.ssObj.element, 'keydown', this.keypress, this);
ej.base.EventHandler.add(this.base.ssObj.element, 'dblclick', this.dblClick, this);
}
keypress() {
this.updateAutofill();
}
autoFill() {
let options = {};
let sheetIdx = this.base.getSheetIndex();
options.sheetIdx = sheetIdx;
options.dataRange = this.indexes;
options.fillRange = this.fIndexes;
this.base.ssObj.updateUndoRedoCollection({ name: 'bizAction', args: { action: 'autofill', options: options, direction: this.direction, oldCells: this.base.getCellsFromIndexes(options.fillRange) } });
this.applyValues(options);
this.base.ssObj.selectRange(this.base.generateHeaderText(this.startCell.colIndex + 1) + (this.startCell.rowIndex + 1) + ':' + this.base.generateHeaderText(this.endCell.colIndex + 1) + (this.endCell.rowIndex + 1));
let args = { action: "autofill" };
Unibase.Apps.Collaboration.Components.Common.Download.Instance().ssAutoSave(args, this.base, true);
this.updateAutofill();
}
applyAutofill(options, direction) {
this.direction = direction;
this.applyValues(options);
this.direction = undefined;
}
applyValues(options) {
let pos = { Down: 'down', Up: 'up', Left: 'left', Right: 'right' };
let val, plen, patterns, patrn, pRanges, patrnRange, fillRange, cellObjs, data, temp, dlen, j, k, l, tlen, tot, hasRef, format, formats, cells, clen, cellIdx, cellProps, i = 0, dataObj = {};
let drSR = options.dataRange[0];
let drSC = options.dataRange[1];
let drER = options.dataRange[2];
let drEC = options.dataRange[3];
let frSR = options.fillRange[0];
let frSC = options.fillRange[1];
let frER = options.fillRange[2];
let frEC = options.fillRange[3];
let isVFill = [pos.Down, pos.Up].indexOf(this.direction) > -1;
let isRFill = [pos.Up, pos.Left].indexOf(this.direction) > -1;
let sheet = this.base.ssObj.biz.getActiveSheet();
let len = isVFill ? drEC - drSC : drER - drSR;
while (i <= len) {
pRanges = this.updateFillValues(isVFill, drSR, drSC, drER, drEC, frSR, frSC, frER, frEC, i);
patrnRange = pRanges.patrnRange;
fillRange = pRanges.fillRange;
patterns = this.createPattern(patrnRange, { isRFill: isRFill, isVFill: isVFill });
cellObjs = this.getData(patrnRange);
data = this.getRawData(cellObjs);
dlen = data.length;
if (!patterns)
return;
plen = patterns.length;
cells = this.getSelectedRange({ rowIndex: fillRange[0], colIndex: fillRange[1] }, { rowIndex: fillRange[2], colIndex: fillRange[3] });
clen = cells.length;
if (isRFill) {
cells = cells.reverse();
patterns = patterns.reverse();
patterns = this.ensurePattern(patterns);
cellObjs = cellObjs.reverse();
data = data.reverse();
}
j = 0;
while (j < clen) {
dataObj = {};
cellIdx = cells[j];
patrn = patterns[j % plen];
if (this.isNumber(patrn))
patrn = patterns[patrn];
switch (patrn.type) {
case this.colType.Number:
val = this.round(patrn.regVal.a + (patrn.regVal.b * patrn.i), 5);
if (isRFill)
patrn.i--;
else
patrn.i++;
break;
case this.colType.String:
val = patrn.val[patrn.i % patrn.val.length];
patrn.i++;
break;
case this.colType.Formula:
hasRef = false;
val = "=";
k = 0;
tlen = patrn.val.length;
while (k < tlen) {
temp = patrn.val[k];
if (this.isObject(temp)) {
hasRef = true;
tot = this.round(temp.a + (temp.b * patrn.i), 0);
if (tot < 1)
val += "#REF!";
else
val += isVFill ? temp.c + (temp.b ? tot : '$' + tot) : (temp.b ? this.base.generateHeaderText(tot) : '$' + this.base.generateHeaderText(tot)) + temp.c;
}
else
val += temp;
k++;
}
if (hasRef && isRFill)
patrn.i--;
else
patrn.i++;
break;
case this.colType.Custom:
val = this.round(patrn.regVal.a + (patrn.regVal.b * patrn.i), 0);
if (val < 0)
val = (val % patrn.len) + patrn.len;
if (val >= patrn.len)
val = val % patrn.len;
val = patrn.val[val];
if (isRFill)
patrn.i--;
else
patrn.i++;
break;
}
l = j % dlen;
let cell = ej.spreadsheet.getCell(cellIdx.rowIndex, cellIdx.colIndex, sheet);
if (cellObjs[l]) {
cell = this.formObjFromValues(cellObjs[l], ['style', 'format', 'wrap', 'isLocked', 'validation', 'hyperlink',]);
cell['value'] = val;
}
else {
cell = {};
}
this.base.ssObj.biz.setCell(cellIdx.rowIndex, cellIdx.colIndex, sheet, cell);
if (cell.validation && cell.validation.isHighlighted) {
this.base.ssObj.addInvalidHighlight(this.base.generateHeaderText(cellIdx.colIndex + 1) + (cellIdx.rowIndex + 1));
}
j++;
}
i++;
}
let args = { options: options, direction: this.direction, action: 'autofill', origin: 'biz', sheetIndex: this.base.getSheetIndex() };
Unibase.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(args);
}
formObjFromValues(cellObj, props) {
let obj = {};
for (let i = 0; i < props.length; i++) {
if (cellObj[props[i]]) {
obj[props[i]] = cellObj[props[i]];
}
}
return obj;
}
updateFillValues(isVFill, drSR, drSC, drER, drEC, frSR, frSC, frER, frEC, i) {
let pStart, pEnd, fStart, fEnd, patrnRange, fillRange;
if (isVFill) {
pStart = { rowIndex: drSR, colIndex: drSC + i };
pEnd = { rowIndex: drER, colIndex: drSC + i };
fStart = { rowIndex: frSR, colIndex: frSC + i };
fEnd = { rowIndex: frER, colIndex: frSC + i };
}
else {
pStart = { rowIndex: drSR + i, colIndex: drSC };
pEnd = { rowIndex: drSR + i, colIndex: drEC };
fStart = { rowIndex: frSR + i, colIndex: frSC };
fEnd = { rowIndex: frSR + i, colIndex: frEC };
}
patrnRange = [pStart.rowIndex, pStart.colIndex, pEnd.rowIndex, pEnd.colIndex];
fillRange = [fStart.rowIndex, fStart.colIndex, fEnd.rowIndex, fEnd.colIndex];
return { patrnRange: patrnRange, fillRange: fillRange };
}
createPattern(range, options) {
let j, idx, temp, regVal, custColl, lCaseColl, lCaseVal, isLCase, diff, len, i = 0, pattern = [];
let patrns = this.createDataPattern(range);
let plen = patrns.length;
let patrn;
if (patrns) {
while (i < plen) {
patrn = patrns[i];
switch (patrn.type) {
case this.colType.Number:
idx = pattern.length;
len = patrn.val.length;
diff = options.isRFill ? -1 : len;
if (len === 1)
patrn.val.push(patrn.val[0] + 1);
regVal = this.getPredictionValue(patrn.val);
temp = { regVal: regVal, type: patrn.type, i: diff };
pattern.push(temp);
j = 1;
while (j < len) {
pattern.push(idx);
j++;
}
break;
case this.colType.String:
idx = pattern.length;
temp = { val: patrn.val, type: patrn.type, i: 0 };
pattern.push(temp);
j = 1;
len = patrn.val.length;
while (j < len) {
pattern.push(idx);
j++;
}
break;
case this.colType.Formula:
len = patrn.val.length;
patrn = this.createFormulaPattern(patrn.val, options);
diff = options.isRFill ? -1 : len;
if (patrn.isInPattern) {
idx = pattern.length;
temp = { val: patrn.val, type: this.colType.Formula, i: diff };
pattern.push(temp);
j = 1;
while (j < len) {
pattern.push(idx);
j++;
}
}
else {
j = 0;
diff = options.isRFill ? -1 : 1;
while (j < len) {
pattern.push({ val: patrn.val[j], type: this.colType.Formula, i: diff });
j++;
}
}
break;
}
i++;
}
return pattern;
}
}
createDataPattern(range) {
let val, type, i = 0;
let obj = {};
let patrn = [];
let cellObjs;
cellObjs = this.getData(range);
let data = this.getRawData(cellObjs);
let dlen = data.length;
if (dlen) {
while (i < dlen) {
val = data[i];
type = this.getType(val);
if (i === 0)
obj = { val: [val], type: type };
else if (type === obj.type)
obj.val.push(val);
else {
patrn.push(obj);
obj = { val: [val], type: type };
}
i++;
}
patrn.push(obj);
return patrn;
}
}
createFormulaPattern(data, options) {
let patrn, j, temp, isInPatrn, patrns = [], i = 0, len = data.length, cRfrType;
while (i < len) {
patrns.push(this.parseFormula(data[i]));
i++;
}
isInPatrn = this.isInPattern(patrns, options.isVFill);
if (isInPatrn) {
patrn = patrns[0];
i = patrn.length;
while (i--) {
temp = patrn[i];
cRfrType = this.isCellReference(temp);
if (cRfrType && (cRfrType !== "absolute"))
patrn[i] = this.getCellRefPrediction(temp, options, null, cRfrType);
}
return { isInPattern: isInPatrn, val: patrn };
}
else {
i = 0;
while (i < len) {
patrn = patrns[i];
j = patrn.length;
while (j--) {
temp = patrn[j];
cRfrType = this.isCellReference(temp);
if (cRfrType && (cRfrType !== "absolute"))
patrns[i][j] = this.getCellRefPrediction(temp, options, len, cRfrType);
}
i++;
}
return { isInPattern: isInPatrn, val: patrns };
}
}
parseFormula(formula) {
var temp, str, len, i = 0, arr = [];
formula = this.markSpecialChar(formula.replace("=", ""));
formula = formula.split(/\(|\)|=|\^|>|<|,|:|\+|-|\*|\/|%|&/g);
len = formula.length;
while (i < len) {
temp = formula[i];
if (!temp) {
i++;
continue;
}
if (temp.length === 1)
arr.push(this.isUniqueChar(temp) ? this.getUniqueCharVal(temp) : temp);
else {
str = temp[0];
if (temp.indexOf('!') > 0) {
if (this.isUniqueChar(str)) {
arr.push(this.getUniqueCharVal(str));
temp = temp.substr(1);
}
str = temp.indexOf('!') + 1;
arr.push(temp.substr(0, str));
arr.push(temp.substr(str));
}
else if (this.isUniqueChar(str)) {
arr.push(this.getUniqueCharVal(str));
arr.push(temp.substr(1));
}
else
arr.push(temp);
}
i++;
}
return arr;
}
getUniqueCharVal(str) {
switch (str) {
case this.UC.uniqueOBracket:
return "(";
case this.UC.uniqueCBracket:
return ")";
case this.UC.uniqueCSeparator:
return ",";
case this.UC.uniqueCOperator:
return ':';
case this.UC.uniquePOperator:
return "+";
case this.UC.uniqueSOperator:
return "-";
case this.UC.uniqueMOperator:
return "*";
case this.UC.uniqueDOperator:
return "/";
case this.UC.uniqueModOperator:
return "%";
case this.UC.uniqueConcateOperator:
return "&";
case this.UC.uniqueEqualOperator:
return "=";
case this.UC.uniqueExpOperator:
return "^";
case this.UC.uniqueGTOperator:
return ">";
case this.UC.uniqueLTOperator:
return "<";
}
return "";
}
isUniqueChar(str) {
var code = str.charCodeAt(str);
return code >= 129 && code <= 142;
}
markSpecialChar(formula) {
formula = formula.replace(/\(/g, "(" + this.UC.uniqueOBracket).replace(/\)/g, ")" + this.UC.uniqueCBracket);
formula = formula.replace(/,/g, "," + this.UC.uniqueCSeparator).replace(/:/g, ":" + this.UC.uniqueCOperator);
formula = formula.replace(/\+/g, "+" + this.UC.uniquePOperator).replace(/-/g, "-" + this.UC.uniqueSOperator);
formula = formula.replace(/\*/g, "*" + this.UC.uniqueMOperator).replace(/\//g, "/" + this.UC.uniqueDOperator);
formula = formula.replace(/&/g, "&" + this.UC.uniqueConcateOperator);
formula = formula.replace(/=/g, "=" + this.UC.uniqueEqualOperator);
formula = formula.replace(/\^/g, "^" + this.UC.uniqueExpOperator);
formula = formula.replace(/>/g, ">" + this.UC.uniqueGTOperator).replace(/</g, "<" + this.UC.uniqueLTOperator);
return formula.replace(/%/g, "%" + this.UC.uniqueModOperator);
}
isInPattern(patrn, isVFill) {
var oldPatrn, olen, newPatrn, nlen, oldStr, newStr, oldInt, newInt, eStr = "", i = 0, j = 1, plen = patrn.length, nregx = new RegExp("[0-9$]", "g"), aregx = new RegExp("[a-z$]", "gi");
if (plen === 1)
return false;
while (j < plen) {
oldPatrn = patrn[i];
newPatrn = patrn[j];
olen = oldPatrn.length;
nlen = newPatrn.length;
if (olen !== nlen)
return false;
else {
while (olen--) {
oldStr = oldPatrn[olen];
newStr = newPatrn[olen];
if (this.isCellReference(oldStr) === this.isCellReference(newStr)) {
if (isVFill) {
oldInt = Number(oldStr.replace(aregx, eStr));
newInt = Number(newStr.replace(aregx, eStr));
}
else {
oldInt = this.generateColCount(oldStr.replace(nregx, eStr));
newInt = this.generateColCount(newStr.replace(nregx, eStr));
}
if (oldInt !== newInt - 1)
return false;
}
else if (oldStr !== newStr)
return false;
}
}
i++;
j++;
}
return true;
}
generateColCount(text) {
var colCount = 0;
text = text.split('').reverse().join('');
for (var i = text.length - 1; i >= 0; i--) {
colCount += (text[i].charCodeAt(text[i]) - 64) * (Math.pow(26, i));
}
return colCount;
}
getData(range) {
let sheet = this.base.ssObj.biz.getActiveSheet();
let data = [];
let obj;
let newRange = this.base.swapRange(range);
for (let i = newRange[0]; i <= newRange[2]; i++) {
for (let j = newRange[1]; j <= newRange[3]; j++) {
obj = sheet.rows[i] ? sheet.rows[i].cells[j] : undefined;
data.push(obj);
}
}
return data;
}
getRawData(arr) {
let len = arr.length;
let newArr = [];
for (let i = 0; i < len; i++) {
if (!arr[i] || !arr[i].value || arr[i].value.length === 0) {
newArr.push('');
}
else if (arr[i].formula) {
newArr.push(arr[i].formula);
}
else if (arr[i].value) {
newArr.push(arr[i].value);
}
}
return newArr;
}
isCellReference(text) {
return /^[a-z]{1,3}\d{1,7}$/gi.test(text) ? "relative" : (/^\$[a-z]{1,3}\$\d{1,7}$/gi.test(text) ? "absolute" : (/^((\$[a-z]{1,3})\d{1,7}|[a-z]{1,3}(\$\d{1,7}))$/gi.test(text) ? "mixed" : false));
}
getCellRefPrediction(text, options, length, rfrType) {
text = text.toUpperCase();
var eStr = "", aRegx = new RegExp("[a-z$]", "gi"), nRegx = new RegExp("[0-9$]", "g"), str = options.isVFill ? text.replace(nRegx, eStr) : text.replace(aRegx, eStr);
let temp = options.isVFill ? Number(text.replace(aRegx, eStr)) : this.generateColCount(text.replace(nRegx, eStr)), arr = [temp], isColAbslt = text[0] === '$';
if (length && length !== 1)
arr.push(temp + length);
else
arr.push(temp + 1);
temp = this.getPredictionValue(arr);
if (rfrType && (rfrType === "mixed")) {
if (isColAbslt === options.isVFill)
str = '$' + str;
else
temp.b = 0;
}
temp.c = str;
return temp;
}
getType(val) {
let type1;
let type = this.isCustomType(val);
if (type)
type1 = type;
else if (this.isFormula(val))
type1 = this.colType.Formula;
else if (this.isNumber(val))
type1 = this.colType.Number;
return type1 || this.colType.String;
}
isCustomType(val) {
val = val + "";
val = val.toLowerCase();
let i = this.customList.length;
while (i--) {
if (this.toArrayLowerCase(this.customList[i].slice(0)).indexOf(val) > -1)
return this.colType.Custom + i;
}
return false;
}
toArrayLowerCase(args) {
for (let i = 0; i < args.length; i++)
args[i] = args[i].toString().toLowerCase();
return args;
}
isFormula(formula) {
let obrackets, cbrackets;
if (formula) {
if (!formula.toString().indexOf("=") && formula.length > 1) {
obrackets = formula.split("(").length - 1;
cbrackets = formula.split(")").length - 1;
return obrackets === cbrackets;
}
}
return false;
}
isNumber(val) {
return val - parseFloat(val) >= 0;
}
round(val, digits) {
let str = val + 'e' + digits;
let str1 = 'e-' + digits;
return Number(Math.round(str) + str1);
}
getPredictionValue(args) {
let i = 0, sumx = 0, sumy = 0, sumxy = 0, sumxx = 0, n = args.length;
while (i < n) {
sumx = sumx + i;
sumy = sumy + Number(args[i]);
sumxy = sumxy + (i * Number(args[i]));
sumxx = sumxx + (i * i);
i++;
}
let a = this.round(((sumy * sumxx) - (sumx * sumxy)) / ((n * sumxx) - (sumx * sumx)), 5), b = this.round(((n * sumxy) - (sumx * sumy)) / ((n * sumxx) - (sumx * sumx)), 5);
return { a: a, b: b };
}
ensurePattern(patterns) {
let patrn, idx = -1, i = patterns.length;
while (i--) {
patrn = patterns[i];
if (this.isObject(patrn)) {
idx = i;
if (patrn.type === this.colType.String)
patrn.val = patrn.val.reverse();
}
else
patterns[i] = idx;
}
return patterns;
}
isObject(obj) {
if (typeof obj !== "object")
return false;
return Object.prototype.toString.call(obj) === "[object Object]";
}
getSelectedRange(startcell, endcell) {
let i, j, k, l, arr = [], range = this.base.swapRange([startcell.rowIndex, startcell.colIndex, endcell.rowIndex, endcell.colIndex]);
i = range[0], j = range[2];
while (i <= j) {
k = range[1];
l = range[3];
while (k <= l) {
arr.push({ rowIndex: i, colIndex: k });
k++;
}
i++;
}
return arr;
}
static Instance() {
if (this.instance === undefined) {
this.instance = new Autofill();
}
return this.instance;
}
}
Sheets.Autofill = Autofill;
})(Sheets = Components.Sheets || (Components.Sheets = {}));
})(Components = Collaboration.Components || (Collaboration.Components = {}));
})(Collaboration = Apps.Collaboration || (Apps.Collaboration = {}));
})(Apps = Unibase.Apps || (Unibase.Apps = {}));
})(Unibase || (Unibase = {}));
@@ -0,0 +1 @@
{"version":3,"file":"autofill.js","sourceRoot":"","sources":["autofill.ts"],"names":[],"mappings":"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 truncated
+1
View File
@@ -0,0 +1 @@
var Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i{constructor(){this.hederText={};this.colType={String:"string",Number:"number",Custom:"custom",Formula:"formula",Time:"time",LongDate:"longdate",ShortDate:"shortdate",Scientific:"scientific",Fraction:"fraction",Text:"text",General:"general",Accounting:"accounting",Currency:"currency",Percentage:"percentage",Date:"date",DateTime:"datetime"};this.customList=[["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["January","February","March","April","May","June","July","August","September","October","November","December"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]];this.UC={uniqueOBracket:String.fromCharCode(129),uniqueCBracket:String.fromCharCode(130),uniqueCSeparator:String.fromCharCode(131),uniqueCOperator:String.fromCharCode(132),uniquePOperator:String.fromCharCode(133),uniqueSOperator:String.fromCharCode(134),uniqueMOperator:String.fromCharCode(135),uniqueDOperator:String.fromCharCode(136),uniqueModOperator:String.fromCharCode(137),uniqueConcateOperator:String.fromCharCode(138),uniqueEqualOperator:String.fromCharCode(139),uniqueExpOperator:String.fromCharCode(140),uniqueGTOperator:String.fromCharCode(141),uniqueLTOperator:String.fromCharCode(142)}}init(n){this.base=n;this.ssObj=n.ssObj;this.initProp()}initProp(){this.beforeSelectFn=this.beforeSelect.bind(this);this.base.ssObj.addEventListener("beforeSelect",this.beforeSelectFn);this.selectFn=this.selected.bind(this);this.base.ssObj.addEventListener("select",this.selectFn);this.actionCompleteFn=this.updateAutofill.bind(this);this.base.ssObj.addEventListener("actionComplete",this.actionCompleteFn);this.createdFn=this.created.bind(this);this.base.ssObj.addEventListener("created",this.createdFn);this.dataBoundFn=this.dataBound.bind(this);this.base.ssObj.addEventListener("dataBound",this.dataBoundFn);this.cellEditFn=this.cellEdit.bind(this);this.base.ssObj.addEventListener("cellEditing",this.cellEditFn);this.cellSaveFn=this.cellSave.bind(this);this.base.ssObj.addEventListener("cellSave",this.cellSaveFn);this.base.ssObj.on("activeSheetChanged",this.updateAutofill,this);this.base.ssObj.on("mouseDown",this.mouseDown,this)}destroy(){this.base.ssObj.removeEventListener("beforeSelect",this.beforeSelectFn);this.base.ssObj.removeEventListener("select",this.selectFn);this.base.ssObj.removeEventListener("actionComplete",this.actionCompleteFn);this.base.ssObj.removeEventListener("created",this.createdFn);this.base.ssObj.removeEventListener("dataBound",this.dataBoundFn);this.base.ssObj.removeEventListener("cellEditing",this.cellEditFn);this.base.ssObj.removeEventListener("cellSave",this.cellSaveFn);this.base.ssObj.off("activeSheetChanged",this.updateAutofill);this.base.ssObj.on("mouseDown",this.mouseDown,this);ej.base.EventHandler.remove(this.base.ssObj.element,"mouseup",this.mouseUp);ej.base.EventHandler.remove(this.base.ssObj.element,"keydown",this.keypress);ej.base.EventHandler.remove(this.base.ssObj.element,"dblclick",this.dblClick)}cellEdit(){this.hideAutofill()}cellSave(){this.updateAutofill()}dataBound(){this.updateAutofill()}createBorders(){if(!this.base.ssObj.element.getElementsByClassName("biz-af-bdr")[0]){let n=this.base.ssObj.element.getElementsByClassName("e-sheet-content")[0];this.bdrAF=n.appendChild(ej.base.createElement("div",{className:"biz-af-bdr"}))}}hideBorders(){this.bdrAF&&(this.bdrAF.style.display="none")}showBorders(){this.bdrAF&&(this.bdrAF.style.display="")}updateBorderDirection(n){this.bdrAF.style.borderRightWidth="1px";this.bdrAF.style.borderLeftWidth="1px";this.bdrAF.style.borderTopWidth="1px";this.bdrAF.style.borderBottomWidth="1px";this.bdrAF.style["border"+n+"Width"]="0px"}mouseDown(n){if(n.target.classList.contains("biz-autofill")){this.isDrag=!0;ej.base.EventHandler.add(this.base.ssObj.element,"mousemove",this.mouseMoveHandler,this);this.x=n.clientX;this.y=n.clientY;this.indexes=this.base.ssObj.biz.getIndexes();this.createBorders();let t=this.base.ssObj.element.getElementsByClassName("e-selection")[0],i=this.base.ssObj.element.getElementsByClassName("e-active-cell")[0];this.selection=t.classList.contains("e-hide")?i:t;this.selOffset=this.selection.getBoundingClientRect();this.parentOffset=this.selection.offsetParent.getBoundingClientRect();this.left=parseInt(this.selection.style.left);this.top=parseInt(this.selection.style.top)}}mouseUp(){this.isDrag=!1;ej.base.EventHandler.remove(this.base.ssObj.element,"mousemove",this.mouseMoveHandler);this.direction!=undefined&&this.autoFill();this.direction=undefined;this.hideBorders();this.isDragged=!1;this.prevTarget=undefined}createAutofill(){if(!this.base.ssObj.element.getElementsByClassName("biz-autofill")[0]){this.element=document.createElement("div");this.element.classList.add("biz-autofill");let n=this.base.ssObj.element.getElementsByClassName("e-sheet-content")[0];n&&n.appendChild(this.elemenLine truncated
File diff suppressed because it is too large. Load diff
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"base.js","sourceRoot":"","sources":["base.ts"],"names":[],"mappings":"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 truncated
+6
View File
@@ -0,0 +1,6 @@
var __awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i{constructor(){this.isViewOnly=!1;this.editedTime=new Date;this.lastEditedTime=0;this.f2Edit=!1;this.showFormula=!1;this.fontFamilyRecent=[];this.isFormula=!1;this.isResizing=!1;this.rowwidthcount=0;this.isNewSheet=!1;this.reqCount=0;this.isInitial=!0;this.clicks=0;this.autofillDrag=!1;this.checkedIndexes=[];this.selectedIndexes=[null,null,null,null];this.isCtrlA=!1;this.isCreatingNewFile=!1;this.isDriveImport=!1;this.openJSON=!1}init(t,i,r,u){this.result=t.result;this.documentGroup=this.result.DocumentGroup;this.customresult=r.result;this.filedata=i.result;this.FileName=t.result.FileTitle;this.FileId=t.result.FileId;this.permissionLevel=t.result.UserPermission;this.lastEditedTime=t.result.LastUpdateTime;this.timePeriod=t.result.TimePeriod;this.username=t.result.LastUpdateByName;this.folderId=t.result.folderId;this.fileurl=t.result.FileUrl;this.Priority=t.result.Priority;this.newUpload=t.result.NewUpload;this.NewDocument=t.result.NewDocument;this.identity=n.Platform.Membership.Infos.Identity.getCurrentUser();this.unibaseusername=this.identity.name;this.hederText={};this.mouseDownHandlers=[];this.keyDownHandlers=[];this.render();u!=null&&u()}clickHandler(n){n.target.getAttribute("id")=="importdata-cancel-bt";n.target.getAttribute("id")=="importdata-select-btn"}removeListeners(){}unwireBootStrapKeyEvent(){let t=document.body.getElementsByClassName("_bizgaze_popup_container"),n=$._data($(t)[0],"events");n&&n.keydown&&$(t).off("keydown.dismiss.bs.modal",n.keydown[0].handler);n&&n.click&&n.click.filter(n=>n).forEach(n=>{$(t).off("click.dismiss.bs.modal",n.handler)})}clearFindReplace(){this.ssObj.element.querySelector(".e-find-dlg")||this.ssObj.element.querySelector(".e-findtool-dlg")||(this.ssObj.ribbonModule.findValue="",this.ssObj.findAndReplaceModule.shortValue="")}fullScreenHandler(){setTimeout(()=>{this.setHeightOnFullScreenChange()},0)}processSheetRender(){this.updateProps();this.renderMenuBar();this.refreshHeight();this.ssRender();this.ribbon.init(this.result);this.permissionLevel&&this.permissionLevel==n.Apps.Collaboration.Enums.Share.Viewer&&setTimeout(()=>{this.setViewonly(),this.ssObj.dataBind()},0);this.unwireBootStrapKeyEvent();this.priorityRender();this.eventListners();this.colourpicker()}connectHub(t,i){n.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["apps/collaboration/components/docconnector.js","apps/collaboration/components/unidochub.js"],function(){n.Apps.Collaboration.Components.DocConnector.Instance().init(t,i)})}sheetColorRender(){this.NewDocument||n.Apps.Collaboration.DocumentManager.Instance().getCustomJsonData(this.FileId).then(n=>{var i=n.result.tabcolors,r,u,f,t;for(this.sheets=this.ssObj.element.querySelector(".e-sheet-tab").querySelectorAll(".e-toolbar-item"),this.sheetsName=this.ssObj.element.querySelector(".e-sheet-tab .e-active").querySelector(".e-tab-text"),t=0;t<this.sheets.length;t++)i.sheets[t].TabColor!==null&&i.sheets[t].TabColor!==undefined&&i.sheets[t].TabColor.Name!=="0"&&i.sheets[t].TabColor.Name!==null&&i.sheets[t].TabColor.Name!==undefined&&(r=i.sheets[t].TabColor.R==null||i.sheets[t].TabColor.R==""?0:i.sheets[t].TabColor.R,u=i.sheets[t].TabColor.G==null||i.sheets[t].TabColor.G==""?0:i.sheets[t].TabColor.G,f=i.sheets[t].TabColor.B==null||i.sheets[t].TabColor.B==""?0:i.sheets[t].TabColor.B,document.getElementById(this.sheets[t].id).style.borderBottom="4px solid rgb("+r+","+u+","+f+")",document.getElementById(this.sheets[t].id).firstElementChild.style.height="100%");document.getElementsByClassName("e-indicator e-ignore")[1].style.display="none"});document.getElementsByClassName("e-indicator e-ignore")[1].style.display="none"}sheetColorChange(t){var r=this.ssObj.activeSheetIndex,i,u,f;r!=null&&(i=[],t!="0"?(i=this.hexToRgb(t),u="#"+t):(i.push(0),i.push(0),i.push(0),u=t),f={FileId:this.FileId,TabColor:i,SheetIndex:r,SheetHexCode:u},n.Apps.Collaboration.DocumentManager.Instance().saveSheetColor(f).then(u=>{t!=0?(document.getElementById(this.sheets[r].id).style.borderBottom="4px solid rgb("+i[0]+","+i[1]+","+i[2]+")",document.getElementById(this.sheets[r].id).firstElementChild.style.height="100%"):document.getElementById(this.sheets[r].id).style.borderBottom="none";document.getElementsByClassName("e-indicator e-ignore")[1].style.display="none";this.customresult=u.result.tabcolor;this.editDetails();let f={origin:"biz",action:"colorchange",sheetIndex:this.getSheetIndex()};n.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(f)}))}hexToRgb(n){var t=n.match(/.{1,2}/g);return[parseInt(t[0],16),parseInt(t[1],16),parseILine truncated
<div id="biz-ss-connecteduser_`+i+`" class="biz-ss-connectedusersfirstletter m-auto" data-toggle="popover" data-placement="top" title = "`+this.connecteduserfirstName[n]+`">`+r[n]+`</div></div>`,n<=5&&$("#biz-ss-connected_users_container").append(o),s+='<a class="dropdown-item d-flex flex-row align-items-center p-1 my-1" href="javascript:void(0)"><div class="biz-ss-connectedusersfirstletter border mr-2 px-2 rounded-circle text-white" style="background-color:#'+f+'" title = "'+this.connecteduserfirstName[n]+'">'+r[n]+'<\/div><span class="font-13 font-weight-500">'+t[n].firstName+"<\/span><\/a>",n>5&&($("#biz-ss-connected_users_container").children().last().remove(),$("#biz-ss-connected_users_container").append('<div class="users-dropdown"><a href="javascript:void(0);" class="d-flex flex-row border rounded-circle w-35p h-35p text-dark biz-ss-users-'+n+'" role="button" id="biz-ss-connecteduser-'+i+'" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" style=" background-color:lightgray;margin-right:-8px"><span class="m-auto font-14 font-weight-500"><span class="font-12 text-muted"><i class="la la-plus"><\/i><\/span>'+[n-4]+'<\/span><\/a><div class="dropdown-menu z-index-10 position-absolute bg-white h-275p scroll-bar" aria-labelledby="biz-ss-connecteduser-'+i+'"><\/div>'),$(".users-dropdown .dropdown-menu").append(s))}fontFamilyBfOpen(n){if(n.element.parentElement.classList.remove("e-font-family"),this.fontFamilyRecent.length){let n=this.ssObj.ribbonModule.getFontFamilyItems();delete n[5].iconCss;let i=this.ssObj.biz.getActiveSheet(),r=ej.spreadsheet.getIndexesFromAddress(i.activeCell),t=ej.spreadsheet.getCell(r[0],r[1],i),u=t&&t.style&&t.style.fontFamily||"Calibri";for(let t=0;t<n.length;t++)n[t].text===u&&(n[t].iconCss="e-icons e-selected-icon");let f=this.fontFamilyRecent.concat([{separator:!0}]).concat(n);this.fontFamilyObj.items=f;this.fontFamilyObj.dataBind()}}fontFamilyBfRender(n){n.element.style.fontFamily=n.item.text}fontFamilySelect(n){this.fontFamilyRecent=this.fontFamilyRecent.filter(t=>t.text!==n.item.text);this.fontFamilyRecent.unshift({text:n.item.text});this.fontFamilyRecent.length>5&&this.fontFamilyRecent.pop()}wireEvents(){this.permissionLevel!==n.Apps.Collaboration.Enums.Share.Viewer&&(document.body.addEventListener("mousedown",this.mouseDown.bind(this)),document.body.addEventListener("mouseup",this.mouseUp.bind(this)),document.body.querySelector(".DocumentViewer").addEventListener("keyup",this.keyUp.bind(this)),document.body.addEventListener("dblclick",this.bodyDblClick.bind(this)),document.body.querySelector(".DocumentViewer").addEventListener("keydown",this.keyDown.bind(this)));window.addEventListener("keydown",this.windowKeydown.bind(this));document.body.addEventListener("mouseup",this.viewOnlyMouseUp.bind(this));document.body.addEventListener("mousedown",this.viewOnlyMouseDown.bind(this));document.body.querySelector(".DocumentViewer").addEventListener("keydown",this.viewOnlyKeyDown.bind(this))}unwireEvents(){document.body.removeEventListener("mousedown",this.mouseDown.bind(this));document.body.removeEventListener("mousedown",this.mouseDown.bind(this));document.body.removeEventListener("mouseup",this.mouseUp.bind(this));document.body.querySelector(".DocumentViewer").removeEventListener("keydown",this.keyDown.bind(this));document.body.querySelector(".DocumentViewer").removeEventListener("keyup",this.keyUp.bind(this));document.body.removeEventListener("mouseup",this.viewOnlyMouseUp.bind(this));document.body.removeEventListener("mousedown",this.viewOnlyMouseDown.bind(this));document.body.querySelector(".DocumentViewer").removeEventListener("keydown",this.viewOnlyKeyDown.bind(this));document.body.removeEventListener("dblclick",this.bodyDblClick.bind(this));window.removeEventListener("keydown",this.windowKeydown.bind(this))}eventListners(){document.getElementsByClassName("biz-ss-cloudsave")[0].addEventListener("click",()=>{n.Apps.Collaboration.Components.Sheets.Ribbon.Instance().renderCloudSavedDialogue()});document.getElementsByClassName("biz-ss-cloudloading")[0].addEventListener("click",()=>{n.Apps.Collaboration.Components.Sheets.Ribbon.Instance().renderCloudSavingDialogue()});document.getElementsByClassName("biz-ss-filename")[0].addEventListener("focusout",()=>{this.FileId?this.fileNameChange():this.download.ssAutoSave({action:"createNewSpreadsheet",eventArgs:{}},this,!1)});document.getElementsByClassName("biz-ss-starred")[0].addEventListener("click",()=>{n.Apps.Collaboration.Components.UniCloud.Instance().priority(this.FileId,"file","ss",0)});this.ssObj.enableContextMenu&&this.ssObj.contextMenuModule.contextMenuInstance.addEventListener("beforeItemRender",n=>{var t=this.ssObj.biz.getIndexes();let u=this.ssObj.biz.getActiveSheet();if(n.item.text=="UnHide Rows"){var f=t[0],e=t[2],i=u.rows;i=i.slice(f,e+1);i.filter({hidden:n}=>n==!0).length==1&&(n.element.innerHTML="UnHide Row")}if(n.item.text=="UnHide Columns"){var o=t[1],s=t[3],r=uLine truncated
<p>you can only view this document. To make changes, ask the owner for edit access</p>
</div>`,width:"240px",height:"135px",buttons:[{click:this.processAccessDailog.bind(this),buttonModel:{content:"Request Edit Access",isPrimary:!0}}],position:{X:12,Y:95},cssClass:"biz-ss-viewonly-dialog"}),this.viewOnlyDialog.appendTo("#dialog"))})}getElem(){var n=document.createElement("button");n.setAttribute("id","biz-ss-viewonly-btn");let t=new ej.buttons.Button;return t.appendTo(n),n.innerHTML="View Only",n}initialLoad(){let n=this.ssObj.ribbonModule.getRibbonItems.bind(this.ssObj.ribbonModule);this.ssObj.ribbonModule.getRibbonItems=()=>{let t=n(),i=t[0].content,r={template:this.getElem(),cssClass:"biz-ss-viewonly-wrapper",id:this.ssObj.element.id+"_viewonly",tooltipText:"View Only"};return i.splice(t[0].content.length,0,r),t}}performBizUndoRedo(t,i){let u=this.ssObj.undoredoModule,r;if(r=i?t.isUndo?u.undoCollection.pop():u.redoCollection.pop():t.isUndo?u.undoCollection[u.undoCollection.length-1]:u.redoCollection[u.redoCollection.length-1],r&&r.action=="resize"){var f=r;r=[];r.args=f}if(r&&r.args){switch(r.args.action){case"autofill":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.setCellObjects(r.args.options.fillRange,n)}else this.autofill.applyAutofill(r.args.options,r.args.direction);break;case"formatpaint":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.setCellObjects(r.args.options.destIndexes,n)}else this.formatpainter.applyFormatPaint(r.args.options.srcRange,r.args.options.destRange,r.args.options.srcSheetIndex);break;case"trim":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.setCellObjects(r.args.range,n)}else this.ribbon.processTrim(r.args.range);break;case"removeDuplicates":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.setCellObjects(r.args.options.indexes,n)}else this.dialogue.removeDuplicate(r.args.options.range,r.args.options.header,r.args.options.colSelected);break;case"splittext":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.setCellObjects(r.args.range,n,r.args.stValues)}else this.formatpainter.applySplitText(r.args.range,r.args.stValues);break;case"shiftcells":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.dragCells)),t=JSON.parse(JSON.stringify(r.args.dropCells));this.setCellObjects(r.args.options.ranges,n);this.setCellObjects(r.args.options.dropRange,t)}else{let n=JSON.parse(JSON.stringify(r.args.dragCells));this.setCellObjects(r.args.options.ranges,[]);this.setCellObjects(r.args.options.dropRange,n)}break;case"deleteshiftup":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.formatpainter.applyInsertShiftDown(r.args.range,r);this.setCellObjects(r.args.indexes,n)}else this.formatpainter.applyDeleteShiftUp(r.args.range,r);break;case"deleteshiftleft":if(t.isUndo){let n=JSON.parse(JSON.stringify(r.args.oldCells));this.formatpainter.applyInsertShiftRight(r.args.range);this.setCellObjects(r.args.indexes,n)}else this.formatpainter.applyDeleteShiftLeft(r.args.range);break;case"insertshiftdown":t.isUndo?this.formatpainter.applyDeleteShiftUp(r.args.range,r):this.formatpainter.applyInsertShiftDown(r.args.range,r);break;case"insertshiftright":t.isUndo?this.formatpainter.applyDeleteShiftLeft(r.args.range):this.formatpainter.applyInsertShiftRight(r.args.range);break;case"shortcuts":if(t.isUndo){let n=[...r.args.oldCells];this.setCellObjects(r.args.options.range,n)}else this.shortcuts(r.args.options);break;case"bizImageInCell":if(t.isUndo){let n=r.args.oldCells;n?"":n={};let t=r.args.options.indexes;this.setCellObjects(t,[n]);this.download.ssAutoSave({action:"imageincell",changedValues:[{row:t[0],cell:t[1],cellinfo:n}]},this,!0)}else this.actionInsertImage(r.args.options);break;case"resize":if(t.isUndo){let n;r.args.eventArgs.type==="Column"&&(n={args:{undo:!0,eventArgs:{index:r.args.eventArgs.index,width:r.args.eventArgs.oldSize,sheetIdx:r.args.eventArgs.sheetIdx,oldWidth:r.args.eventArgs.newSize,range:r.args.eventArgs.range},action:"resize",name:"actionComplete"}});r.args.eventArgs.type==="Row"&&(n={args:{undo:!0,eventArgs:{index:r.args.eventArgs.index,height:r.args.eventArgs.oldSize,sheetIdx:r.args.eventArgs.sheetIdx,oldHeight:r.args.eventArgs.newSize,range:r.args.eventArgs.range},action:"resize",name:"actionComplete"}});this.adjustRowsAndColumnWidth(n.args)}else this.adjustRowsAndColumnWidth(r.args);break;case"spell":if(t.isUndo){let n=[...r.args.oldCells];this.setCellObjects(r.args.options.indexes,n)}else this.adjustRowsAndColumnWidth(r.args)}let e={origin:"biz",action:"undoredo",sheetIndex:this.getSheetIndex(),isUndo:t.isUndo};i||n.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(e)}}addFormatsToToolbar(){let n=this.ssObj.ribbonModule.getRibbonItems.bind(this.ssObj.ribbonModule);this.ssObj.ribbonModule.getRibbonItems=()=>{let t=n(),i=t[0].content,r=[{prefixIcon:"icon-ss-currency",cssClass:"biz-ss-currencyformat",id:this.ssObj.element.id+"_currencyformat",tooltipText:"Format as currency"},{prefixIcon:"icon-Line truncated
<textarea id="requestaccess-textarea"> </textarea>
</div>`,width:"400px",buttons:[{click:this.hideRequestAccess.bind(this),buttonModel:{content:"cancel"}},{click:this.hideRequestAccess.bind(this),buttonModel:{content:"send",isPrimary:!0}}],cssClass:"biz-ss-requestaccess-dialog",target:this.container,isModal:!0});this.requestAccessObj.appendTo("#dialog");var n=new ej.inputs.TextBox({placeholder:"Enter your message",floatLabelType:"Auto",rows:4});n.appendTo("#requestaccess-textarea");n.element.setAttribute("rows","4")}hideRequestAccess(){this.requestAccessObj.hide();this.requestAccessObj.destroy()}lettersToNumber(n){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZ",t,i,u=0;for(t=0,i=n.length-1;t<n.length;t+=1,i-=1)u+=Math.pow(r.length,i)*(r.indexOf(n[t])+1);return u}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.Base=i})(i=t.Sheets||(t.Sheets={}))})(i=t.Components||(t.Components={}))})(i=t.Collaboration||(t.Collaboration={}))})(t=n.Apps||(n.Apps={}))})(Unibase||(Unibase={}));
@@ -0,0 +1,489 @@
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var Unibase;
(function (Unibase) {
let Apps;
(function (Apps) {
let Collaboration;
(function (Collaboration) {
let Components;
(function (Components) {
let Sheets;
(function (Sheets) {
class Dialogue {
constructor() {
this.hederText = {};
this.hasHeader = false;
}
init(base) {
this.base = base;
this.base.mouseDownHandlers.push(this.mouseDown.bind(this));
this.util = Unibase.Apps.Collaboration.Components.Common.Util.Instance();
}
mouseDown(e) {
if (this.rdDailouge) {
let cbox = ej.base.closest(e.target, '.e-checkbox-wrapper');
if (cbox) {
let tickicon = cbox.firstElementChild;
tickicon.classList.contains('e-check') ? tickicon.classList.remove('e-check') : tickicon.classList.add('e-check');
if (cbox.classList.contains('rd-selectAll')) {
var cboxes = this.rdDailouge.element.querySelector('#rd-checkboxes-container').querySelectorAll('.e-frame');
if (cbox.firstElementChild.classList.contains('e-check')) {
cbox.firstElementChild.classList.remove('e-stop');
cboxes.forEach((e) => { e.classList.add('e-check'); });
document.getElementsByClassName("rd-btn")[0].classList.remove("e-disabled");
document.getElementsByClassName("rd-btn")[0].removeAttribute("disabled");
}
else {
cbox.firstElementChild.classList.add('e-stop');
cboxes.forEach((e) => { e.classList.remove('e-check'); });
document.getElementsByClassName("rd-btn")[0].classList.add("e-disabled");
document.getElementsByClassName("rd-btn")[0].setAttribute("disabled", "true");
}
}
if (cbox.classList.contains('rd-colCheckbox')) {
var cboxes = this.rdDailouge.element.querySelector('#rd-checkboxes').querySelectorAll('.e-frame');
var eCheckCount = this.rdDailouge.element.querySelector('#rd-checkboxes').querySelectorAll('.e-check').length;
eCheckCount === 0 ? (document.getElementsByClassName("rd-btn")[0].classList.add("e-disabled"),
document.getElementsByClassName("rd-btn")[0].setAttribute("disabled", "true")) :
(document.getElementsByClassName("rd-btn")[0].removeAttribute("disabled"),
document.getElementsByClassName("rd-btn")[0].classList.remove("e-disabled"));
eCheckCount < cboxes.length ?
(document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.remove("e-check"),
document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.add("e-stop")) :
(document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.add("e-check"),
document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.remove("e-stop"));
}
}
}
}
removeDuplicate(range, header, colSelected) {
this.obj = {};
let sheet = this.base.ssObj.biz.getActiveSheet();
this.rngIndexes = this.base.getIndexesFromAddress(range);
this.hasHeader = header;
(header) ? this.rowStartCell = this.rngIndexes[0] + 1 : this.rowStartCell = this.rngIndexes[0];
this.columnStartCell = this.rngIndexes[1];
this.rowEndCell = this.rngIndexes[2];
this.columnEndCell = this.rngIndexes[3];
this.selected = colSelected;
for (let i = this.rowStartCell; i <= this.rowEndCell; i++) {
let wholeRow = [];
for (let j = this.columnStartCell; j <= this.columnEndCell; j++) {
if (this.selected[j] == undefined) {
var isColChecked = document.querySelector("#rd-checkboxes").querySelector('div[value="' + j + '"]').firstElementChild.classList.contains('e-check');
this.selected[j] = isColChecked;
}
if (!this.selected[j]) {
continue;
}
let cellInfo = ej.spreadsheet.getCell(i, j, sheet);
if (!cellInfo) {
wholeRow.push(null);
}
else {
wholeRow.push(this.util.getCellValues(cellInfo));
}
if (cellInfo) {
this.base.ssObj.biz.setCell(i, j, sheet, {});
delete sheet.rows[i].cells[j];
}
}
if (wholeRow) {
this.addToObj(JSON.stringify(wholeRow));
}
}
var k = 0;
var cellValue;
var keys = Object.keys(this.obj);
for (let i = this.rowStartCell; i <= this.rowEndCell; i++) {
var row;
(keys[k]) ? row = JSON.parse(keys[k]) : row = undefined;
var l = 0;
for (let j = this.columnStartCell; j <= this.columnEndCell; j++) {
if (!this.selected[j]) {
continue;
}
(row) ? cellValue = row[l] : cellValue = undefined;
if (cellValue) {
if (!(cellValue.value === undefined)) {
this.base.ssObj.biz.setCell(i, j, sheet, cellValue);
}
}
l++;
}
k++;
}
var duplicateCount = this.selectedRow - Object.keys(this.obj).length;
Unibase.Apps.Collaboration.Components.Common.Download.Instance().ssAutoSave({ action: 'removeDuplicates' }, this.base, true);
if (this.base.getSheetIndex() >= 0) {
if (!this.hasHeader) {
this.base.ssObj.selectRange(this.base.generateHeaderText(this.columnStartCell + 1) + (this.rowStartCell + 1) + ":" + this.base.generateHeaderText(this.columnEndCell + 1) + (this.rowEndCell - duplicateCount + 1));
}
else {
this.base.ssObj.selectRange(this.base.generateHeaderText(this.columnStartCell + 1) + (this.rowStartCell) + ":" + this.base.generateHeaderText(this.columnEndCell + 1) + (this.rowEndCell - duplicateCount + 2));
}
}
this.rdDailouge.destroy();
}
RDshowUniqueDailog() {
var keys = Object.keys(this.obj);
var duplicateCount;
this.hasHeader ? duplicateCount = this.selectedRow - keys.length - 1 : duplicateCount = this.selectedRow - keys.length;
if (duplicateCount == 0) {
var duplicateValuesText = "No duplicate rows were found.";
}
else if (duplicateCount == 1) {
var duplicateValuesText = "1 duplicate row were found and removed.";
}
else {
var duplicateValuesText = `${duplicateCount} duplicate rows were found and removed.`;
}
if (keys.length == 1) {
var uniqueValuesText = `1 unique row remains.`;
}
else {
var uniqueValuesText = `${keys.length} unique rows remains.`;
}
this.rdDailouge = new ej.popups.Dialog({
isModal: true,
header: 'Remove Duplicates',
content: `<div id='removedup-container'>
<div id='rd-duplicatevaluetxt'></div>
<br/>
<div id='rd-uniquevaluetxt'></div>
</div>`,
width: '470px',
height: '180px',
buttons: [{
click: this.hideRdDailouge.bind(this),
buttonModel: { content: 'Ok', isPrimary: true }
}]
});
this.rdDailouge.appendTo("#removeduplicates");
document.getElementById("rd-duplicatevaluetxt").append(duplicateValuesText);
document.getElementById("rd-uniquevaluetxt").append(uniqueValuesText);
}
;
addToObj(param) {
if (!this.obj[param]) {
this.obj[param] = 1;
}
}
renderDuplicateDailouge() {
this.range = this.base.ssObj.biz.getRange();
this.rngIndexes = this.base.getIndexesFromAddress(this.range);
this.selectedCol = this.rngIndexes[3] - this.rngIndexes[1] + 1;
this.selectedRow = this.rngIndexes[2] - this.rngIndexes[0] + 1;
this.rowStartCell = this.rngIndexes[0];
this.columnStartCell = this.rngIndexes[1];
this.rowEndCell = this.rngIndexes[2];
this.columnEndCell = this.rngIndexes[3];
if (!(this.rowStartCell - this.rowEndCell == 0 && this.columnStartCell - this.columnEndCell == 0)) {
if (this.selectedCol > 1 && this.selectedRow > 1) {
var selectedcolrowtext = `${this.selectedCol} columns and ${this.selectedRow} rows selected`;
}
else if (this.selectedCol > 1 && this.selectedRow == 1) {
var selectedcolrowtext = `${this.selectedCol} columns and ${this.selectedRow} row selected`;
}
else if (this.selectedCol == 1 && this.selectedRow > 1) {
var selectedcolrowtext = `${this.selectedCol} column and ${this.selectedRow} rows selected`;
}
var checkboxes = [];
if (this.selectedCol > 0) {
for (let i = this.columnStartCell; i <= this.columnEndCell; i++) {
var colName = this.base.generateHeaderText(i + 1);
var cbox = ej.buttons.createCheckBox(this.base.ssObj.createElement, false, { checked: true, label: 'Columns ' + colName, cssClass: 'rd-colCheckbox' });
cbox.setAttribute('value', i);
checkboxes.push(cbox);
}
}
var elem = document.getElementById("removedup-container");
if (!elem) {
var hasHeader = ej.buttons.createCheckBox(this.base.ssObj.createElement, false, { checked: false, cssClass: 'rd-hasHeader' });
var selectAll = ej.buttons.createCheckBox(this.base.ssObj.createElement, false, { checked: true, label: 'Select all', cssClass: 'rd-selectAll' });
this.rdDailouge = new ej.popups.Dialog({
isModal: true,
header: 'Remove Duplicates',
content: `<div id='removedup-container'>
<div id='rd-selectedColumns-container'>
<div id="rd-selectedColumns-title-data"></div>
<div id="rd-hasHeader-checkbox"></div>
<span id="rd-hasHeader-content">Data has header row</span>
</div>
<div id="rd-selectedColumns-info-wrapper">
<div id="rd-selectedColumns-info-analyze">Select Columns to analyze</div>
<div id="rd-checkboxes-container">
<div id="rd-selectAll"> </div>
<div id="rd-checkboxes"></div>
</div></div>
</div>`,
showCloseIcon: false,
created: () => {
document.getElementById("rd-hasHeader-checkbox").appendChild(hasHeader);
document.getElementById("rd-selectAll").appendChild(selectAll);
document.getElementById("rd-selectedColumns-title-data").append(selectedcolrowtext);
checkboxes.forEach(element => {
document.getElementById("rd-checkboxes").appendChild(element);
});
setTimeout(() => {
if (document.getElementById("rd-checkboxes-container").offsetHeight < 250) {
document.getElementById("rd-checkboxes-container").style.overflowY = 'hidden';
}
else {
document.getElementById("rd-checkboxes").style.overflowY = "";
}
}, 0);
},
open: () => {
},
width: '350px',
height: 'auto',
closeOnEscape: false,
buttons: [{
click: this.hideRdDailouge.bind(this),
buttonModel: { content: 'Cancel' }
},
{
click: this.processDup.bind(this),
buttonModel: { content: 'Remove Duplicates', isPrimary: true, cssClass: "rd-btn" }
}],
});
this.rdDailouge.appendTo("#removeduplicates");
}
else {
document.getElementById("rd-selectedColumns-title-data").innerHTML = "";
document.getElementById("rd-selectedColumns-title-data").innerHTML = selectedcolrowtext;
this.rdDailouge.show();
}
}
else {
this.rdDailouge = new ej.popups.Dialog({
isModal: true,
header: 'Remove Duplicates',
content: `<div id='removedup-container'>Please select a range of cells containing values.</div>`,
width: '470px',
height: '130px',
created: () => {
document.getElementById("removeduplicates_dialog-content").style.overflowY = 'hidden';
},
buttons: [{
click: this.hideRdDailouge.bind(this),
buttonModel: { content: 'Ok', isPrimary: true }
}]
});
this.rdDailouge.appendTo("#removeduplicates");
}
}
hideRdDailouge() {
this.rdDailouge.element.removeEventListener("mousedown", (e) => { });
this.rdDailouge.hide();
this.rdDailouge.destroy();
}
processDup() {
let header = false;
if (document.getElementsByClassName("rd-hasHeader")[0].firstElementChild.classList.contains("e-check")) {
header = true;
}
let range = this.base.ssObj.biz.getRange();
let indexes = this.base.ssObj.biz.getIndexes();
let args = { range: range, indexes: indexes, sheetIndex: this.base.getSheetIndex(), header: header, action: 'removeDuplicates', origin: 'biz' };
this.base.ssObj.updateUndoRedoCollection({ name: 'bizAction', args: { action: 'removeDuplicates', options: args, oldCells: this.base.getCellsFromIndexes(indexes) } });
this.removeDuplicate(range, header, {});
this.base.removeCopyIndicator();
args['colSelected'] = this.selected;
this.RDshowUniqueDailog();
Unibase.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(args);
}
renderMenubarFullscreenDialog() {
if (!this.menubarFullscreenDialogObj) {
this.menubarFullscreenDialogObj = new ej.popups.Dialog({
content: `<div id='menubar-fullscreen-container'>
<div id='menubar-fullscreenf11-message'>
Press <span class= "menubar-esc">Esc</span> to exit full screen <span class="biz-ss-menubarfullscreen-dismiss"> Dismiss </span></div>
</div>`,
width: '470px',
height: '45px',
position: { X: 'center', Y: 14 },
animationSettings: { effect: 'None' },
closeOnEscape: true,
cssClass: "biz-ss-menubar-fullscreen",
Close: this.hideSsMenubarFullscreenDialog.bind(this),
});
this.menubarFullscreenDialogObj.appendTo("#biz-ss-menubar-fullscreendialog");
}
else {
this.menubarFullscreenDialogObj.show();
}
}
hideSsMenubarFullscreenDialog() {
this.menubarFullscreenDialogObj.destroy();
if (document.getElementById("menubar-fullscreen-container"))
document.getElementById("menubar-fullscreen-container").parentElement.remove();
setTimeout(() => {
this.menubarFullscreenDialogObj = null;
}, 1000);
}
renderResizeDialog() {
let sheet = this.base.ssObj.biz.getActiveSheet();
let indexes = this.base.ssObj.biz.getIndexes();
let isRowsSelected = this.base.ssObj.biz.isRowsSelected(indexes);
let row = (indexes[2] - indexes[0] + 1);
let col = (indexes[3] - indexes[1] + 1);
let heading = "";
let radio1Text = "";
let inputValue;
if (isRowsSelected) {
if (row == 1)
heading = "Resize row " + (indexes[0] + 1);
else
heading = "Resize rows " + (indexes[0] + 1) + " - " + (indexes[2] + 1);
radio1Text = "Specify row height in pixels: (Default 18)";
inputValue = sheet.rows[indexes[0]] && sheet.rows[indexes[0]].height || 18.5;
}
else {
if (col == 1)
heading = "Resize column " + (this.base.generateHeaderText(indexes[0] + 1));
else
heading = "Resize columns " + this.base.generateHeaderText(indexes[1] + 1) + " - " + this.base.generateHeaderText(indexes[3] + 1);
radio1Text = "Specify column width in pixels: (Default 64)";
inputValue = sheet.columns[indexes[1]] && sheet.columns[indexes[1]].width || 64;
}
if (inputValue == undefined)
inputValue = '';
this.radiobutton = new ej.buttons.RadioButton({ label: radio1Text, name: 'resizetofit', checked: true, value: "resizeroworcol" });
this.resizeDialogObj = new ej.popups.Dialog({
content: `<div id='resize-dialog-container'>
<div id='resize-dialog-content'>
<ul>
<li><input type="radio" id="header-checkbox"></li>
<div class="e-input-group resize-input-div">
<input class="e-input" name='input' type="text" value="${inputValue}" id="resize-input" />
</div>
<li><input type="radio" id="resizetofit-checkbox"></li>
</ul>
</div>
</div>`,
width: '470px',
height: 'auto',
header: heading,
animationSettings: { effect: 'None' },
showCloseIcon: true,
closeOnEscape: true,
target: document.body.querySelectorAll('._bizgaze_popup_container')[document.body.querySelectorAll('._bizgaze_popup_container').length - 1],
created: this.resizeDialogCreated.bind(this),
cssClass: "biz-ss-resizetofit",
buttons: [
{
click: this.hideResizeDialog.bind(this),
buttonModel: { content: 'Cancel' }
},
{
click: this.processResize.bind(this),
buttonModel: { content: 'Ok', isPrimary: true }
}
],
Close: this.hideResizeDialog.bind(this),
});
this.resizeDialogObj.appendTo("#biz-ss-resizetofit-dialog");
}
resizeDialogCreated() {
this.radiobutton.appendTo('#header-checkbox');
this.radiobutton = new ej.buttons.RadioButton({ label: 'Resize to fit', name: 'resizetofit', value: "resizetofit" });
this.radiobutton.appendTo('#resizetofit-checkbox');
document.getElementsByClassName("biz-ss-resizetofit")[0].style.maxHeight = "";
}
hideResizeDialog() {
if (this.resizeDialogObj) {
this.resizeDialogObj.destroy();
setTimeout(() => {
this.resizeDialogObj = null;
});
}
}
processResize() {
return __awaiter(this, void 0, void 0, function* () {
let range = this.base.ssObj.biz.getRange();
let resizedHeaders = [];
let changedValues = [];
let resizeValue = Number(document.getElementById("resize-input").value);
let ranges = range.split(" ");
for (var i = 0; i < ranges.length; i++) {
let currentIndexes = this.base.swapRange(ej.spreadsheet.getIndexesFromAddress(ranges[i]));
yield this.resizeHeaders(currentIndexes, resizeValue, ranges[i]).then((response) => {
changedValues = changedValues.concat(response.changedValues);
resizedHeaders = resizedHeaders.concat(response.resizedHeaders);
});
}
this.hideResizeDialog();
this.base.focusDocumentViewer();
(changedValues.length > 0) && this.base.download.ssAutoSave({ action: "imageincell", changedValues: changedValues }, this.base, true);
(resizedHeaders.length > 0) && this.base.download.ssAutoSave({ action: "headerResize", resizedHeaders: resizedHeaders }, this.base, true);
});
}
resizeHeaders(indexes, resizeValue, range) {
return __awaiter(this, void 0, void 0, function* () {
let resizedHeaders = [];
let changedValues = [];
let sheetIdx = this.base.getSheetIndex();
let isRowsSelected = this.base.ssObj.biz.isRowsSelected(indexes);
let selectedRadio = document.querySelector('input[name="resizetofit"]:checked').value;
if (selectedRadio == "resizeroworcol") {
if (isRowsSelected) {
for (var i = indexes[0]; i <= indexes[2]; i++) {
yield this.setRowHeight(resizeValue, i);
resizedHeaders.push({ rowIndex: i, height: resizeValue, sheetIndex: sheetIdx, resizeType: "row" });
}
changedValues = changedValues.concat(this.base.setRowIncellImageSize(range));
}
else {
for (var i = indexes[1]; i <= indexes[3]; i++) {
yield this.setColWidth(resizeValue, i);
resizedHeaders.push({ colIndex: i, width: resizeValue, sheetIndex: sheetIdx, resizeType: "col" });
}
changedValues = changedValues.concat(this.base.setColumnIncellImageSize(range));
}
}
else {
this.base.ssObj.autoFit(range);
if (isRowsSelected)
changedValues = changedValues.concat(this.base.setRowIncellImageSize(range));
else
changedValues = changedValues.concat(this.base.setColumnIncellImageSize(range));
}
return {
changedValues: changedValues, resizedHeaders: resizedHeaders
};
});
}
setRowHeight(resizeValue, rowIdx) {
return __awaiter(this, void 0, void 0, function* () {
yield this.base.ssObj.setRowHeight(resizeValue + "px", rowIdx);
});
}
setColWidth(resizeValue, colIdx) {
return __awaiter(this, void 0, void 0, function* () {
yield this.base.ssObj.setColWidth(resizeValue + "px", colIdx);
});
}
static Instance() {
if (this.instance === undefined) {
this.instance = new Dialogue();
}
return this.instance;
}
}
Sheets.Dialogue = Dialogue;
})(Sheets = Components.Sheets || (Components.Sheets = {}));
})(Components = Collaboration.Components || (Collaboration.Components = {}));
})(Collaboration = Apps.Collaboration || (Apps.Collaboration = {}));
})(Apps = Unibase.Apps || (Unibase.Apps = {}));
})(Unibase || (Unibase = {}));
@@ -0,0 +1 @@
{"version":3,"file":"dialogue.js","sourceRoot":"","sources":["dialogue.ts"],"names":[],"mappings":"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 truncated
+31
View File
@@ -0,0 +1,31 @@
var __awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i{constructor(){this.hederText={};this.hasHeader=!1}init(t){this.base=t;this.base.mouseDownHandlers.push(this.mouseDown.bind(this));this.util=n.Apps.Collaboration.Components.Common.Util.Instance()}mouseDown(n){var t,i;if(this.rdDailouge){let r=ej.base.closest(n.target,".e-checkbox-wrapper");if(r){let n=r.firstElementChild;n.classList.contains("e-check")?n.classList.remove("e-check"):n.classList.add("e-check");r.classList.contains("rd-selectAll")&&(t=this.rdDailouge.element.querySelector("#rd-checkboxes-container").querySelectorAll(".e-frame"),r.firstElementChild.classList.contains("e-check")?(r.firstElementChild.classList.remove("e-stop"),t.forEach(n=>{n.classList.add("e-check")}),document.getElementsByClassName("rd-btn")[0].classList.remove("e-disabled"),document.getElementsByClassName("rd-btn")[0].removeAttribute("disabled")):(r.firstElementChild.classList.add("e-stop"),t.forEach(n=>{n.classList.remove("e-check")}),document.getElementsByClassName("rd-btn")[0].classList.add("e-disabled"),document.getElementsByClassName("rd-btn")[0].setAttribute("disabled","true")));r.classList.contains("rd-colCheckbox")&&(t=this.rdDailouge.element.querySelector("#rd-checkboxes").querySelectorAll(".e-frame"),i=this.rdDailouge.element.querySelector("#rd-checkboxes").querySelectorAll(".e-check").length,i===0?(document.getElementsByClassName("rd-btn")[0].classList.add("e-disabled"),document.getElementsByClassName("rd-btn")[0].setAttribute("disabled","true")):(document.getElementsByClassName("rd-btn")[0].removeAttribute("disabled"),document.getElementsByClassName("rd-btn")[0].classList.remove("e-disabled")),i<t.length?(document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.remove("e-check"),document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.add("e-stop")):(document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.add("e-check"),document.getElementsByClassName("rd-selectAll")[0].firstElementChild.classList.remove("e-stop")))}}}removeDuplicate(t,i,r){var l,e,u,s,o,h,c;this.obj={};let f=this.base.ssObj.biz.getActiveSheet();this.rngIndexes=this.base.getIndexesFromAddress(t);this.hasHeader=i;this.rowStartCell=i?this.rngIndexes[0]+1:this.rngIndexes[0];this.columnStartCell=this.rngIndexes[1];this.rowEndCell=this.rngIndexes[2];this.columnEndCell=this.rngIndexes[3];this.selected=r;for(let n=this.rowStartCell;n<=this.rowEndCell;n++){let t=[];for(let i=this.columnStartCell;i<=this.columnEndCell;i++)if(this.selected[i]==undefined&&(l=document.querySelector("#rd-checkboxes").querySelector('div[value="'+i+'"]').firstElementChild.classList.contains("e-check"),this.selected[i]=l),this.selected[i]){let r=ej.spreadsheet.getCell(n,i,f);r?t.push(this.util.getCellValues(r)):t.push(null);r&&(this.base.ssObj.biz.setCell(n,i,f,{}),delete f.rows[n].cells[i])}t&&this.addToObj(JSON.stringify(t))}e=0;s=Object.keys(this.obj);for(let n=this.rowStartCell;n<=this.rowEndCell;n++){o=s[e]?JSON.parse(s[e]):undefined;h=0;for(let t=this.columnStartCell;t<=this.columnEndCell;t++)this.selected[t]&&(u=o?o[h]:undefined,u&&(u.value===undefined||this.base.ssObj.biz.setCell(n,t,f,u)),h++);e++}c=this.selectedRow-Object.keys(this.obj).length;n.Apps.Collaboration.Components.Common.Download.Instance().ssAutoSave({action:"removeDuplicates"},this.base,!0);this.base.getSheetIndex()>=0&&(this.hasHeader?this.base.ssObj.selectRange(this.base.generateHeaderText(this.columnStartCell+1)+this.rowStartCell+":"+this.base.generateHeaderText(this.columnEndCell+1)+(this.rowEndCell-c+2)):this.base.ssObj.selectRange(this.base.generateHeaderText(this.columnStartCell+1)+(this.rowStartCell+1)+":"+this.base.generateHeaderText(this.columnEndCell+1)+(this.rowEndCell-c+1)));this.rdDailouge.destroy()}RDshowUniqueDailog(){var n=Object.keys(this.obj),t,i,r;t=this.hasHeader?this.selectedRow-n.length-1:this.selectedRow-n.length;i=t==0?"No duplicate rows were found.":t==1?"1 duplicate row were found and removed.":`${t} duplicate rows were found and removed.`;r=n.length==1?`1 unique row remains.`:`${n.length} unique rows remains.`;this.rdDailouge=new ej.popups.Dialog({isModal:!0,header:"Remove Duplicates",content:`<div id='removedup-container'>
<div id='rd-duplicatevaluetxt'></div>
<br/>
<div id='rd-uniquevaluetxt'></div>
</div>`,width:"470px",height:"180px",buttons:[{click:this.hideRdDailouge.bind(this),buttonModel:{content:"Ok",isPrimary:!0}}]});this.rdDailouge.appendTo("#removeduplicates");document.getElementById("rd-duplicatevaluetxt").append(i);document.getElementById("rd-uniquevaluetxt").append(r)}addToObj(n){this.obj[n]||(this.obj[n]=1)}renderDuplicateDailouge(){var n,t,r,i,u,f,e;if(this.range=this.base.ssObj.biz.getRange(),this.rngIndexes=this.base.getIndexesFromAddress(this.range),this.selectedCol=this.rngIndexes[3]-this.rngIndexes[1]+1,this.selectedRow=this.rngIndexes[2]-this.rngIndexes[0]+1,this.rowStartCell=this.rngIndexes[0],this.columnStartCell=this.rngIndexes[1],this.rowEndCell=this.rngIndexes[2],this.columnEndCell=this.rngIndexes[3],this.rowStartCell-this.rowEndCell==0&&this.columnStartCell-this.columnEndCell==0)this.rdDailouge=new ej.popups.Dialog({isModal:!0,header:"Remove Duplicates",content:`<div id='removedup-container'>Please select a range of cells containing values.</div>`,width:"470px",height:"130px",created:()=>{document.getElementById("removeduplicates_dialog-content").style.overflowY="hidden"},buttons:[{click:this.hideRdDailouge.bind(this),buttonModel:{content:"Ok",isPrimary:!0}}]}),this.rdDailouge.appendTo("#removeduplicates");else{if(this.selectedCol>1&&this.selectedRow>1?n=`${this.selectedCol} columns and ${this.selectedRow} rows selected`:this.selectedCol>1&&this.selectedRow==1?n=`${this.selectedCol} columns and ${this.selectedRow} row selected`:this.selectedCol==1&&this.selectedRow>1&&(n=`${this.selectedCol} column and ${this.selectedRow} rows selected`),t=[],this.selectedCol>0)for(let n=this.columnStartCell;n<=this.columnEndCell;n++)r=this.base.generateHeaderText(n+1),i=ej.buttons.createCheckBox(this.base.ssObj.createElement,!1,{checked:!0,label:"Columns "+r,cssClass:"rd-colCheckbox"}),i.setAttribute("value",n),t.push(i);u=document.getElementById("removedup-container");u?(document.getElementById("rd-selectedColumns-title-data").innerHTML="",document.getElementById("rd-selectedColumns-title-data").innerHTML=n,this.rdDailouge.show()):(f=ej.buttons.createCheckBox(this.base.ssObj.createElement,!1,{checked:!1,cssClass:"rd-hasHeader"}),e=ej.buttons.createCheckBox(this.base.ssObj.createElement,!1,{checked:!0,label:"Select all",cssClass:"rd-selectAll"}),this.rdDailouge=new ej.popups.Dialog({isModal:!0,header:"Remove Duplicates",content:`<div id='removedup-container'>
<div id='rd-selectedColumns-container'>
<div id="rd-selectedColumns-title-data"></div>
<div id="rd-hasHeader-checkbox"></div>
<span id="rd-hasHeader-content">Data has header row</span>
</div>
<div id="rd-selectedColumns-info-wrapper">
<div id="rd-selectedColumns-info-analyze">Select Columns to analyze</div>
<div id="rd-checkboxes-container">
<div id="rd-selectAll"> </div>
<div id="rd-checkboxes"></div>
</div></div>
</div>`,showCloseIcon:!1,created:()=>{document.getElementById("rd-hasHeader-checkbox").appendChild(f),document.getElementById("rd-selectAll").appendChild(e),document.getElementById("rd-selectedColumns-title-data").append(n),t.forEach(n=>{document.getElementById("rd-checkboxes").appendChild(n)}),setTimeout(()=>{document.getElementById("rd-checkboxes-container").offsetHeight<250?document.getElementById("rd-checkboxes-container").style.overflowY="hidden":document.getElementById("rd-checkboxes").style.overflowY=""},0)},open:()=>{},width:"350px",height:"auto",closeOnEscape:!1,buttons:[{click:this.hideRdDailouge.bind(this),buttonModel:{content:"Cancel"}},{click:this.processDup.bind(this),buttonModel:{content:"Remove Duplicates",isPrimary:!0,cssClass:"rd-btn"}}]}),this.rdDailouge.appendTo("#removeduplicates"))}}hideRdDailouge(){this.rdDailouge.element.removeEventListener("mousedown",()=>{});this.rdDailouge.hide();this.rdDailouge.destroy()}processDup(){let t=!1;document.getElementsByClassName("rd-hasHeader")[0].firstElementChild.classList.contains("e-check")&&(t=!0);let r=this.base.ssObj.biz.getRange(),u=this.base.ssObj.biz.getIndexes(),i={range:r,indexes:u,sheetIndex:this.base.getSheetIndex(),header:t,action:"removeDuplicates",origin:"biz"};this.base.ssObj.updateUndoRedoCollection({name:"bizAction",args:{action:"removeDuplicates",options:i,oldCells:this.base.getCellsFromIndexes(u)}});this.removeDuplicate(r,t,{});this.base.removeCopyIndicator();i.colSelected=this.selected;this.RDshowUniqueDailog();n.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(i)}renderMenubarFullscreenDialog(){this.menubarFullscreenDialogObj?this.menubarFullscreenDialogObj.show():(this.menubarFullscreenDialogObj=new ej.popups.Dialog({content:`<div id='menubar-fullscreen-container'>
<div id='menubar-fullscreenf11-message'>
Press <span class= "menubar-esc">Esc</span> to exit full screen <span class="biz-ss-menubarfullscreen-dismiss"> Dismiss </span></div>
</div>`,width:"470px",height:"45px",position:{X:"center",Y:14},animationSettings:{effect:"None"},closeOnEscape:!0,cssClass:"biz-ss-menubar-fullscreen",Close:this.hideSsMenubarFullscreenDialog.bind(this)}),this.menubarFullscreenDialogObj.appendTo("#biz-ss-menubar-fullscreendialog"))}hideSsMenubarFullscreenDialog(){this.menubarFullscreenDialogObj.destroy();document.getElementById("menubar-fullscreen-container")&&document.getElementById("menubar-fullscreen-container").parentElement.remove();setTimeout(()=>{this.menubarFullscreenDialogObj=null},1e3)}renderResizeDialog(){let i=this.base.ssObj.biz.getActiveSheet(),n=this.base.ssObj.biz.getIndexes(),f=this.base.ssObj.biz.isRowsSelected(n),e=n[2]-n[0]+1,o=n[3]-n[1]+1,r="",u="",t;f?(r=e==1?"Resize row "+(n[0]+1):"Resize rows "+(n[0]+1)+" - "+(n[2]+1),u="Specify row height in pixels: (Default 18)",t=i.rows[n[0]]&&i.rows[n[0]].height||18.5):(r=o==1?"Resize column "+this.base.generateHeaderText(n[0]+1):"Resize columns "+this.base.generateHeaderText(n[1]+1)+" - "+this.base.generateHeaderText(n[3]+1),u="Specify column width in pixels: (Default 64)",t=i.columns[n[1]]&&i.columns[n[1]].width||64);t==undefined&&(t="");this.radiobutton=new ej.buttons.RadioButton({label:u,name:"resizetofit",checked:!0,value:"resizeroworcol"});this.resizeDialogObj=new ej.popups.Dialog({content:`<div id='resize-dialog-container'>
<div id='resize-dialog-content'>
<ul>
<li><input type="radio" id="header-checkbox"></li>
<div class="e-input-group resize-input-div">
<input class="e-input" name='input' type="text" value="${t}" id="resize-input" />
</div>
<li><input type="radio" id="resizetofit-checkbox"></li>
</ul>
</div>
</div>`,width:"470px",height:"auto",header:r,animationSettings:{effect:"None"},showCloseIcon:!0,closeOnEscape:!0,target:document.body.querySelectorAll("._bizgaze_popup_container")[document.body.querySelectorAll("._bizgaze_popup_container").length-1],created:this.resizeDialogCreated.bind(this),cssClass:"biz-ss-resizetofit",buttons:[{click:this.hideResizeDialog.bind(this),buttonModel:{content:"Cancel"}},{click:this.processResize.bind(this),buttonModel:{content:"Ok",isPrimary:!0}}],Close:this.hideResizeDialog.bind(this)});this.resizeDialogObj.appendTo("#biz-ss-resizetofit-dialog")}resizeDialogCreated(){this.radiobutton.appendTo("#header-checkbox");this.radiobutton=new ej.buttons.RadioButton({label:"Resize to fit",name:"resizetofit",value:"resizetofit"});this.radiobutton.appendTo("#resizetofit-checkbox");document.getElementsByClassName("biz-ss-resizetofit")[0].style.maxHeight=""}hideResizeDialog(){this.resizeDialogObj&&(this.resizeDialogObj.destroy(),setTimeout(()=>{this.resizeDialogObj=null}))}processResize(){return __awaiter(this,void 0,void 0,function*(){let u=this.base.ssObj.biz.getRange(),n=[],t=[],f=Number(document.getElementById("resize-input").value),r=u.split(" ");for(var i=0;i<r.length;i++){let u=this.base.swapRange(ej.spreadsheet.getIndexesFromAddress(r[i]));yield this.resizeHeaders(u,f,r[i]).then(i=>{t=t.concat(i.changedValues),n=n.concat(i.resizedHeaders)})}this.hideResizeDialog();this.base.focusDocumentViewer();t.length>0&&this.base.download.ssAutoSave({action:"imageincell",changedValues:t},this.base,!0);n.length>0&&this.base.download.ssAutoSave({action:"headerResize",resizedHeaders:n},this.base,!0)})}resizeHeaders(n,t,i){return __awaiter(this,void 0,void 0,function*(){var r;let f=[],u=[],e=this.base.getSheetIndex(),o=this.base.ssObj.biz.isRowsSelected(n),s=document.querySelector('input[name="resizetofit"]:checked').value;if(s=="resizeroworcol")if(o){for(r=n[0];r<=n[2];r++)yield this.setRowHeight(t,r),f.push({rowIndex:r,height:t,sheetIndex:e,resizeType:"row"});u=u.concat(this.base.setRowIncellImageSize(i))}else{for(r=n[1];r<=n[3];r++)yield this.setColWidth(t,r),f.push({colIndex:r,width:t,sheetIndex:e,resizeType:"col"});u=u.concat(this.base.setColumnIncellImageSize(i))}else this.base.ssObj.autoFit(i),u=o?u.concat(this.base.setRowIncellImageSize(i)):u.concat(this.base.setColumnIncellImageSize(i));return{changedValues:u,resizedHeaders:f}})}setRowHeight(n,t){return __awaiter(this,void 0,void 0,function*(){yield this.base.ssObj.setRowHeight(n+"px",t)})}setColWidth(n,t){return __awaiter(this,void 0,void 0,function*(){yield this.base.ssObj.setColWidth(n+"px",t)})}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.Dialogue=i})(i=t.Sheets||(t.Sheets={}))})(i=t.Components||(t.Components={}))})(i=t.Collaboration||(t.Collaboration={}))})(t=n.Apps||(n.Apps={}))})(Unibase||(Unibase={}));
File diff suppressed because it is too large. Load diff
@@ -0,0 +1 @@
{"version":3,"file":"formatpainter.js","sourceRoot":"","sources":["formatpainter.ts"],"names":[],"mappings":"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 truncated
+1
View File
@@ -0,0 +1 @@
var Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i{constructor(){this.hederText={};this.isDrag=!1;this.isScroll=!1;this.isLeftScroll=!1;this.isTopScroll=!1;this.isVertical=!1;this.side=-1;this.isEdit=!1;this.isCellDrag=!1;this.isCellDragged=!1;this.isCellEdit=!1}init(t){this.base=t;this.ssObj=t.ssObj;this.util=n.Apps.Collaboration.Components.Common.Util.Instance();this.initProp()}initProp(){this.selectFn=this.selected.bind(this);this.ssObj.addEventListener("select",this.selectFn);this.createdFn=this.created.bind(this);this.ssObj.addEventListener("created",this.createdFn);this.initialLoadFn=this.initialLoad.bind(this);this.ssObj.on("initialLoad",this.initialLoadFn);this.ssObj.on("activeSheetChanged",this.activeSheetChanged,this);this.ssObj.on("mouseDown",this.mouseDown,this)}destroy(){this.ssObj.removeEventListener("select",this.selectFn);this.ssObj.removeEventListener("created",this.createdFn);this.ssObj.off("initialLoad",this.initialLoadFn);this.ssObj.off("activeSheetChanged",this.activeSheetChanged);this.ssObj.off("mouseDown",this.mouseDown);ej.base.EventHandler.remove(this.ssObj.element,"mousemove",this.mouseMoveHandler);ej.base.EventHandler.remove(this.ssObj.element,"mouseup",this.mouseUp)}activeSheetChanged(){this.isClicked&&(this.hideFPBdr(),setTimeout(()=>{this.activesheet===this.ssObj.biz.getActiveSheet()&&this.updateFPBdr()},650),setTimeout(()=>{this.ssObj.element.querySelector("#"+this.ssObj.element.id+"_formatpainter").classList.add("biz-fp-color")},50))}createFPBdr(){if(!this.ssObj.element.getElementsByClassName("biz-fp")[0]){this.element=document.createElement("div");this.element.classList.add("biz-fp");this.element.appendChild(ej.base.createElement("div",{className:"e-top"}));this.element.appendChild(ej.base.createElement("div",{className:"e-bottom"}));this.element.appendChild(ej.base.createElement("div",{className:"e-left"}));this.element.appendChild(ej.base.createElement("div",{className:"e-right"}));let n=this.ssObj.element.getElementsByClassName("e-sheet-content")[0];n.appendChild(this.element)}this.element.classList.remove("biz-hide")}updateFPBdr(){if(this.isClicked){this.createFPBdr();let t=this.ssObj.element.getElementsByClassName("e-selection")[0],r=this.ssObj.element.getElementsByClassName("e-active-cell")[0],n=t.classList.contains("e-hide")?r:t,i=n.getBoundingClientRect();this.element.style.top=n.style.top;this.element.style.left=n.style.left;this.element.style.width=i.width+"px";this.element.style.height=i.height+"px"}}hideFPBdr(){let n=this.ssObj.element.getElementsByClassName("biz-fp")[0];n&&n.classList.add("biz-hide")}mouseDown(n){let t=ej.base.closest(n.target,".biz-icon-painter");if(t&&(this.isClicked=!0,this.ssObj.element.querySelector("#"+this.ssObj.element.id+"_formatpainter").classList.add("biz-fp-color"),this.updateFPBdr()),this.splitDlgObj&&!this.splitDlgObj.isDestroyed){let t=ej.base.closest(n.target,".e-checkbox-wrapper");if(t){let i=!0,n=t.firstElementChild;n.classList.contains("e-check")?n.classList.remove("e-check"):n.classList.add("e-check");t.classList.contains("biz-st-other")&&(this.inputObj.enabled=n.classList.contains("e-check"),this.inputObj.value&&this.inputObj.value.length&&(i=!1));i&&this.refreshST()}}this.mdown(n);this.mdown2(n)}initialLoad(){let n=this.ssObj.ribbonModule.getRibbonItems.bind(this.ssObj.ribbonModule);this.ssObj.ribbonModule.getRibbonItems=()=>{let i=n(),r=i[0].content,t={id:this.ssObj.element.id+"_formatpainter",prefixIcon:"biz-icon-painter",tooltipText:"Format Painter"};return r.splice(6,0,t),t={template:this.getRotationElem(),id:this.ssObj.element.id+"_text_rotation",tooltipText:"Text rotation"},r.splice(27,0,t),i}}isSingleCellSel(n){return n[0]===n[2]&&n[1]===n[3]?!0:!1}applyFormatPaint(n,t,i){let o=this.ssObj.sheets[i];this.formatIndexes=this.base.getIndexesFromAddress(t);this.rangeIndexes=this.base.getIndexesFromAddress(n);let u=-1,r=-1,f=this.ssObj.biz.getActiveSheet(),e=[];for(let n=this.rangeIndexes[0];n<=this.rangeIndexes[2];n++){let t=[];for(let i=this.rangeIndexes[1];i<=this.rangeIndexes[3];i++){let r=ej.base.extend({},ej.spreadsheet.getCell(n,i,f));t.push(r)}e.push(t)}if(this.isSingleCellSel(this.formatIndexes)){u=this.formatIndexes[0]-1;r=this.formatIndexes[1]-1;for(let n=this.rangeIndexes[0];n<=this.rangeIndexes[2];n++){u++;r=this.formatIndexes[1]-1;let n=e.shift();for(let t=this.rangeIndexes[1];t<=this.rangeIndexes[3];t++){r++;let i=n.shift(),t=ej.spreadsheet.getCell(u,r,f)||{};this.copyValues(i,t,["style","format","hyperlink","wrap"]);this.ssObj.biz.setCell(u,r,f,t)}}this.ssObj.selectRange(this.base.generateHeaderText(this.formatIndexes[1]+1)+(this.formatIndexes[0]+1)+":"+this.base.generateHeaderText(r+1)+(u+1))}else{let n=0,t=0;for(let i=this.formatIndexes[0];i<=this.formatIndexes[2];i++){n===e.length&&(n=0);t=0;for(let r=this.formatIndexes[1];r<=this.formatIndexes[3];r++){t===e[n].length&&(t=0);let o=e[n][t],u=ej.spreadsheet.getCell(i,r,f)||{};this.copyValues(o,u,["Line truncated
File diff suppressed because it is too large. Load diff
@@ -0,0 +1 @@
{"version":3,"file":"ribbon.js","sourceRoot":"","sources":["ribbon.ts"],"names":[],"mappings":"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 truncated
+75
View File
@@ -0,0 +1,75 @@
var Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i{constructor(){this.hederText={};this.imageInCell=!1}init(t){this.result=t;this.FileName=this.result.FileTitle;this.FileId=this.result.FileId;this.documentGroup=this.result.DocumentGroup;this.documentId=this.result.DocumentId;this.filepath=this.result.TempFilePath;this.fileDownload=n.Apps.Collaboration.Components.Common.Download.Instance();this.base=n.Apps.Collaboration.Components.Sheets.Base.Instance();this.dialogue=n.Apps.Collaboration.Components.Sheets.Dialogue.Instance();this.spreadsheetMenuBar(this.FileId,this.documentGroup,this.FileName);this.dialogue.init(this.base)}addListeners(){}destroy(){}removeListeners(){}renderOpenNewDialogue(){var n,t;this.importOpenSelectButton=new ej.buttons.Button({cssClass:`e-flat`});this.importOpenCancelButton=new ej.buttons.Button({cssClass:`e-flat`});n=document.getElementById("importopenfile");n==null?(this.ssImportOpenDialougObj=new ej.popups.Dialog({isModal:!0,header:"Open File",content:`<div id='tabobjforopen'></div>`,target:document.getElementById("container"),width:"470px",height:"330px",animationSettings:{effect:"Zoom"},cssClass:"biz-ss-importopen-dialog"}),this.ssImportOpenDialougObj.appendTo("#dialog"),t=new ej.navigations.Tab({items:[{header:{text:"Upload"},content:`<div id="importopenfile-wrapper">
<h2 style="color: #ccc">Drag a file...</h2>
<label id='importopenfilelable'>
select file from device
<br>
<input type="file" name="" id="importopenfile" accept=".xlsx, .xls, .csv" placeholder="select a file from your device" >
</label>
<div id="filename"></div>
</div>
</div>
<button id='importopenfile-select-btn' class='e-disabled'>select</button>
<button id='importopenfile-cancel-btn'>cancel</button>`},{header:{text:"Drive"},content:""},{header:{text:"Recent"},content:""}]}),t.appendTo("#tabobjforopen")):this.ssImportOpenDialougObj.show();this.importOpenDialogcreated()}renderImportDialogue(n){var t,i;this.importSelectButton=new ej.buttons.Button({cssClass:`e-flat`});this.importCancelButton=new ej.buttons.Button({cssClass:`e-flat`});t=document.getElementById("tabobj");let r=window.innerHeight-200,u=window.innerWidth-600;t==null?(this.ssImportDialougObj=new ej.popups.Dialog({isModal:!0,header:"Import File",content:`<div id='tabobj'></div>`,target:document.getElementById("container"),width:u+"px",height:r+"px",animationSettings:{effect:"Zoom"},cssClass:"biz-ss-import-dialog"}),this.ssImportDialougObj.appendTo("#dialog"),i=new ej.navigations.Tab({selected:this.tabSelected.bind(this),items:[{header:{text:"Upload"},content:`<div id="importfile-wrapper">
<h2 style="color: #ccc">Drag a file...</h2>
<label id='importfilelable'>
select file from device
<br>
<input type="file" name="" id="importfile" accept=".xlsx, .xls, .csv" placeholder="select a file from your device" >
</label>
<div id="filename"></div>
</div>
</div>
<button id='importfile-upload-select-btn' class='e-disabled'>select</button>
<button id='importfile-upload-cancel-btn'>cancel</button>`},{header:{text:"Drive"},content:n},{header:{text:"Recent"},content:""}]}),i.appendTo("#tabobj")):this.ssImportDialougObj.show();this.importDialogcreated()}renderCloudSavedDialogue(){var n=document.getElementById("biz-ss-cloudsave-container");n==null?(this.ssCloudSavedDialougObj=new ej.popups.Dialog({isModal:!1,content:`<div id="biz-ss-cloudsave-container" style="max-width: 420px;min-width: 320px;padding: 10px;border-radius: 10px;display: block;border: 1px solid;" >
<div id="biz-ss-cloudsave-container-title" style = "font-size: 15px;border-color: green;color: green;background-color: #e6f4ea;min-height: 40px;padding: 10px;" >
<img class="biz-ss-cloudsave-container-img" src="imgs/cloud-computing.svg" >
All changes saved to Drive
</div>
<div id="biz-ss-cloudsave-container-body" style = "padding: 10px;font-size: 10px;">
Every change you make is automatically saved to Drive.
</div>
</div>`,target:document.getElementById("container"),width:"340px",height:"95px",animationSettings:{effect:"Zoom"},cssClass:"biz-ss-cloudsave-container",position:{X:260,Y:34}}),this.ssCloudSavedDialougObj.appendTo("#dialog")):this.ssCloudSavedDialougObj.show();document.getElementById("dialog_dialog-content").style.padding="0px";document.getElementById("dialog_dialog-content").style.borderRadius="10px"}renderCloudSavingDialogue(){var n=document.getElementById("biz-ss-cloudloading-container");n==null?(this.ssCloudSavingDialougObj=new ej.popups.Dialog({isModal:!1,content:`<div id="biz-ss-cloudloading-container" style="max-width: 420px;min-width: 320px;padding: 10px;border-radius: 10px;display: block;border: 1px solid;" >
<div id="biz-ss-cloudloading-container-title" style = "font-size: 15px;border-color: green;color: green;background-color: #e6f4ea;min-height: 40px;padding: 10px;" >
<div class="biz-ss-cloudloading-container-img e-icons">
</div>
Saving...
</div>
<div id="biz-ss-cloudloading-container-body" style = "padding: 10px;font-size: 10px;">
Every change you make is automatically saved to Drive.
</div>
</div>`,target:document.getElementById("container"),width:"340px",height:"95px",animationSettings:{effect:"Zoom"},cssClass:"biz-ss-cloudloading-container",position:{X:260,Y:34}}),this.ssCloudSavingDialougObj.appendTo("#dialog")):this.ssCloudSavingDialougObj.show();document.getElementById("dialog_dialog-content").style.padding="0px";document.getElementById("dialog_dialog-content").style.borderRadius="10px"}tabSelected(n){if(n.selectedItem.firstElementChild.firstElementChild.textContent=="Drive"){this.importSelectButton.appendTo("#importfile-drive-select-btn");this.importCancelButton.appendTo("#importfile-drive-cancel-btn");let n=document.getElementsByClassName("biz-ss-import-dialog")[0].offsetHeight;document.getElementsByClassName("biz_drive_list")[0].style.height=n-165+"px"}}openSpreadSheetDocument(){n.Apps.Collaboration.DocumentManager.Instance().importCreateSpreadSheet(this.spreadsheetImportedFileData).then(n=>{var t=n.result;this.ssImportOpenDialougObj.hide()})}importSpreadSheetDocument(){n.Apps.Collaboration.DocumentManager.Instance().importCreateSpreadSheet(this.spreadsheetImportedFileData).then(n=>{var t=n.result,i=this._url+t+"/Excel/0";document.getElementById("sucessfullmessage").style.display="inline-block";document.getElementById("importcreatenewdocument").setAttribute("href",i)})}importReplaceSpreadSheet(){n.Apps.Collaboration.DocumentManager.Instance().importReplaceSpreadSheet(this.spreadsheetImportedReplaceFileData).then(n=>{this.base.ssObj.destroy();this.base.filedata=JSON.parse(n.result[0]);this.base.customresult=JSON.parse(n.result[1]);this.base.unwireEvents();this.base.unwireBootStrapKeyEvent();this.base.ssRender();this.ssImprotedFileDailogueObj.hide();this.importedFile.value=null;this.base.bizSignalr({action:"importReplace",origin:"biz"})})}insertSheet(){n.Apps.Collaboration.DocumentManager.Instance().insertNewSpreadsheet(this.spreadsheetImportedFileData).then(n=>{let i=n.result[0],t=JSON.parse(i).Workbook.sheets;this.base.ssObj.saveAsJson().then(n=>{let r=n.jsonObject,i=r.Workbook.sheets,u=[];for(let n=0;n<i.length;n++)u.push(i[n].name);for(let n=0;n<t.length;n++){let i=t[n].name;t[n].name=this.generateSheetName(u,i)}i=i.concat(t);r.Workbook.sheets=i;this.base.removeSheetIndexProp(r.Workbook);this.base.ssObj.openFromJson({file:r})});this.ssImprotedFileDailogueObj.hide()})}documentCopy(){var n={FileId:this.FileId,FileName:this.FileName};this.copyDocumentDataDailog(n)}copyDocumentDataDailog(t){var r=new ej.buttons.Button({cssClass:`e-flat`,content:"OK"}),u=new ej.buttons.Button({cssClass:`e-flat`,content:"Cancel"}),i;let f=new ej.inputs.TextBox({placeholder:"Enter Document Name",floatLabelType:"Auto"});this._url=window.location.origin+"/#/documents/";i=document.getElementById("copyobj");i==null?(this.copyDocumentDailogue=new ej.popups.Dialog({isModal:!0,header:"Copy Document",content:`<div id='copyobj'><div id='copy-document-container'>
<div id='copy-document-div'>
<div class='row'>
<div class='col-md-12'>
<input id='copydocument-textbox' type='text' value='Copy Of `+t.FileName+`'/>
</div></div>
<div id='sucessfullmessagecopy' style="display:none">File imported successfully. <a id="spreadsheetopennowcopy" target="_blank">Open now »</a></div>
</div></div>
<br><br>
<br>
<button id="copy-document-ok-btn" class="pull-right"></button>
<button id="copy-document-close-btn" class="pull-right"></button>
</div>`,target:document.getElementById("container"),placeholder:"Please Enter File Name",popupHeight:"100px",width:"350px",height:"250px",animationSettings:{effect:"Zoom"}}),this.copyDocumentDailogue.appendTo("#copydocument-container"),r.appendTo("#copy-document-ok-btn"),u.appendTo("#copy-document-close-btn"),f.appendTo("#copydocument-textbox"),this.copyDocumentDailogue.show(),document.getElementById("copy-document-ok-btn").addEventListener("click",()=>{var t=this.FileId,i=$("#copydocument-textbox").val(),r={FileId:t,FileTitle:i};n.Apps.Collaboration.FileManager.Instance().copyFile(r).then(n=>{var t=n.result;this.copyDocumentDailogue.destroy()})}),document.getElementById("copy-document-close-btn").addEventListener("click",()=>{this.copyDocumentDailogue.hide()})):this.copyDocumentDailogue.show()}spreadSheetTrim(){let t=this.base.ssObj.biz.getIndexes();this.base.ssObj.updateUndoRedoCollection({name:"bizAction",args:{action:"trim",range:t,oldCells:this.base.getCellsFromIndexes(t)}});let i=this.processTrim(t);this.setSpreadsheettrimDialouge(i);let r={range:t,action:"trim",origin:"biz",sheetIndex:this.base.getSheetIndex()};n.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(r)}processTrim(n){for(var f,i,t,r=this.base.ssObj.biz.getActiveSheet(),o=n[0],s=n[1],h=n[2],c=n[3],e=0,u=o;u<=h;u++)if(r.rows[u])for(f=s;f<=c;f++)if(i={rowindex:u,cellindex:f},t=ej.spreadsheet.getCell(i.rowindex,i.cellindex,r),t&&t.value!=null)if(t.value.indexOf(" ")>=0)t.value=t.value.replace(/\s+/g," "),t.value=t.value.trim(),this.base.ssObj.biz.setCell(i.rowindex,i.cellindex,r,t),e++;else if(t.value.indexOf(" ")==0)t.value=t.value.trim(),this.base.ssObj.biz.setCell(i.rowindex,i.cellindex,r,t),e++;else continue;else continue;return e}setSpreadsheettrimDialouge(t){var i=0,r,u;i!=t&&(i=t);r="";i>1?r=`Trimmed whitespace from the `+i+` selected cells.`:i==1?r=`Trimmed whitespace from the `+i+` selected cell.`:i==0&&(r=`No selected cells had whitespace trimmed.`);u=document.getElementById("trimobj");u==null?(this.spreadhsheetTrimDialog=new ej.popups.Dialog({isModal:!0,content:`<div id='trimobj'><div id="trimdialoguebox1"><p id="trimpara">`+r+`</p>
<button id='spreadsheettrimedok' class='btn btn-secondary btn-sm pull-right'>Ok</button></div>`,target:document.getElementById("container"),width:"500px",height:"100px",animationSettings:{effect:"Zoom"}}),this.spreadhsheetTrimDialog.appendTo("#spreadsheettrim-container"),document.getElementById("spreadsheettrimedok").addEventListener("click",()=>{this.spreadhsheetTrimDialog.hide()})):(document.getElementById("trimpara").innerHTML="",document.getElementById("trimpara").innerHTML=r,this.spreadhsheetTrimDialog.show());i!=0&&n.Apps.Collaboration.Components.Common.Download.Instance().ssAutoSave({action:"trim",eventArgs:{}},this.base,!0)}generateSheetName(n,t){if(n.indexOf(t)<0)return t;let i=1;while(n.indexOf(t+" ("+i+")")>-1)i++;return t+" ("+i+")"}importOpenDialogcreated(){document.getElementById("importopenfile-select-btn").setAttribute("disabled","true");document.getElementById("importopenfile-select-btn").addEventListener("click",()=>{this.openSpreadSheetDocument(),this.ssImportOpenDialougObj.destroy()});document.getElementById("importopenfile-cancel-btn").addEventListener("click",()=>{this.ssImportOpenDialougObj.hide(),document.getElementById("importopenfile-select-btn").classList.add("e-disabled"),document.getElementById("filename").innerHTML="",this.importedFile&&(this.importedFile.value=null),this.ssImportOpenDialougObj&&(this.ssImportOpenDialougObj.destroy(),this.ssImportOpenDialougObj=null)});this.importOpenSelectButton.appendTo("#importopenfile-select-btn");this.importOpenCancelButton.appendTo("#importopenfile-cancel-btn");document.body.addEventListener("dragover",n=>{n.preventDefault()});document.getElementsByClassName("biz-ss-importopen-dialog")[0].addEventListener("dragover",n=>{n.preventDefault()});document.getElementsByClassName("biz-ss-importopen-dialog")[0].addEventListener("drop",n=>{n.preventDefault();document.getElementById("importopenfile").files=n.dataTransfer.files;var t={target:{files:n.dataTransfer.files}};this.openFileSelected(t)});document.getElementById("importopenfile").addEventListener("change",n=>{this.openFileSelected(n)})}importDialogcreated(){document.getElementById("importfile-upload-select-btn").setAttribute("disabled","true");let n=document.getElementById("importfile-wrapper");n.style.height=window.innerHeight-375+"px";n.style.width=window.innerWidth-635+"px";document.getElementById("importfile-upload-select-btn").addEventListener("click",()=>{this.ssImportDialougObj.hide(),this.ssimportedFileDataDailog(),document.getElementById("filename").innerHTML="",document.getElementById("importedfilename").innerHTML=this.importedFile.files[0].name});document.getElementById("importfile-upload-cancel-btn").addEventListener("click",()=>{this.ssImportDialougObj.hide(),document.getElementById("importfile-upload-select-btn").classList.add("e-disabled"),document.getElementById("filename").innerHTML="",this.importedFile&&this.importedFile.value&&(this.importedFile.value=null),this.ssImportDialougObj&&(this.ssImportDialougObj.destroy(),this.ssImportDialougObj=null)});this.importSelectButton.appendTo("#importfile-upload-select-btn");this.importCancelButton.appendTo("#importfile-upload-cancel-btn");document.body.addEventListener("dragover",n=>{n.preventDefault()});document.getElementsByClassName("biz-ss-import-dialog")[0].addEventListener("dragover",n=>{n.preventDefault()});document.getElementsByClassName("biz-ss-import-dialog")[0].addEventListener("drop",n=>{n.preventDefault();document.getElementById("importfile").files=n.dataTransfer.files;var t={target:{files:n.dataTransfer.files}};this.fileSelected(t)});document.getElementById("importfile").addEventListener("change",n=>{this.fileSelected(n)});document.getElementsByClassName("biz-ss-import-dialog")[0].style.maxHeight=""}getAll(t){let i=``;n.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js",()=>{n.Apps.Collaboration.FileManager.Instance().getAll(t).then(t=>{let r=t.result.Folders,u=``;for(let n=0;n<r.length;n++){var o=r[n].FolderName;r[n].FolderName=r[n].Title;r[n].FolderName==null&&(r[n].FolderName=o);u+=`<li class="list-group-item copyto_list copyto_folder" id="li_folder_`+r[n].FolderId+`" style="border: none;cursor:pointer;font-size:14px;"><a onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().getFolderItems(`+r[n].FolderId+`,'`+r[n].FolderName+`',`+!0+`)"><i class="fa fa-folder mr-15 text-light"></i> `+r[n].FolderName+`<i class="fa fa-angle-right pull-right"></i></a></li>`}let f=``,e=t.result.Files;for(let n=0;n<e.length;n++)f+=`<li class="list-group-item copyto_list copyto_file " id="li_file_`+e[n].FileId+`" style="border: none;cursor:pointer;font-size:14px;" onselect="this.style.background='#e5e5e5'"> <a onclick=""><div class="d-flex flex-row " > <img src="/tenants/default/documenttypes/sheet.svg" data-dynamic="1" data-loaded="0" alt = "filetype" onerror = "ReloadImage(event)" class="w-25p h-25p img-fluid mr-10" > <span class="teLine truncated
<ul class="list-group" id="biz_drive_foldersList">`+u+` </ul>
<ul class="list-group" id="biz_drive_filesList">`+f+`</ul>
<div id="div_createfolder" class="hidden row"><i class="fa fa-arrow-left col-sm-1 mt-10" id="back_create"
onclick=" Unibase.Apps.Collaboration.Components.UniCloud.Instance().getAll(`+n.Apps.Collaboration.Components.UniCloud.Instance().selectedfolderid+`)"></i>
<input type="text" class="form-control col-sm-11" placeholder="Folder Name" id="createfolder"></div></div>
<div class="pull-down">
<button id='importfile-drive-select-btn' class='e-disabled'>select</button>
<button id='importfile-drive-cancel-btn'>cancel</button></div>`,this.renderImportDialogue(i))})})}getFolderList(){n.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js",()=>{n.Apps.Collaboration.FileManager.Instance().getFolders().then(n=>{let t=n.result;var i=``;for(let n=0;n<=t.length;n++)i+=`<li class="list-group-item" id="li_folder_`+t[n].FolderId+`"><a onclick="Unibase.Apps.Collaboration.Components.old_unicloud.Instance().getFolderItems(`+t[n].FolderId+`,'`+t[n].FolderName+`')"><input class="hidden" id="hdn_folder_`+t[n].FolderId+`" value="`+t[n].FolderId+`"><i class="fa fa-folder mr-15 text-light"></i>`+t[n].FolderName+`<i class="fa fa-angle-right pull-right"></i></a></li>`;return i})})}getFilesList(){n.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js",function(){n.Apps.Collaboration.FileManager.Instance().getFiles(0).then(n=>{var e=n.result.Parentid,i=n.result.Folders,r,u,t,f;r=`<a href="javascript:void(0);" onclick="Unibase.Apps.Collaboration.Components.old_unicloud.Instance().getAll(`+e+",true"+`)"> `+ +` ></a>`;$("#folder_breadcrumb").append(r);for(let n=0;n<i.length;n++)u=`<li class="list-group-item" id="li_childfolder_`+i[n].FolderId+`" style="border: none;cursor:pointer;font-size:14px;" onmouseover="this.style.background='#e5e5e5'" onmouseout="this.style.background='#FFF'"><a onclick=""><input class="hidden" id="hdn_childfolderid_`+i[n].FolderId+`" value="`+i[n].FolderId+`"><i class="fa fa-folder mr-15 text-light"></i> `+i[n].FolderName+`</a></li>`,$("#li_hdn_childfolders:last").after(u);t=n.result.Files;$("#ul_filesList").html(`<li class="list-group-item hidden" id="li_hdn_file"></li><li class="list-group-item hidden" id="li_hdn_childfolders"></li> `);for(let n=0;n<t.length;n++)f=`<li class="list-group-item disabled" id="li_file_`+t[n].FileId+`" style="border: none;cursor:pointer;font-size:14px;"><a onclick=""><input class="hidden" id="hdn_file_`+t[n].FileId+`" value="`+t[n].FileId+`"><input class="hidden" id="hdn_file_folderid_`+t[n].FolderId+`" value="`+t[n].FolderId+`"><div class="d-flex flex-row " > <img src="/tenants/default/documenttypes/sheet.svg" data-dynamic="1" data-loaded="0" alt = "filetype" onerror = "ReloadImage(event)" class="w-25p h-25p img-fluid mr-10" > <span class="text-truncate" > `+t[n].FileName+` </span> </div ></a></li>`,$("#li_hdn_file:last").after(f)});$("#ul_filesList").removeClass("hidden")})}getFolderItems(t,i){let r=i;n.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js",()=>{n.Apps.Collaboration.FileManager.Instance().getFiles(t).then(n=>{let e=n.result.Parentid,o=`<ul id="breadcrumb-ul"><li id="breadcrumb-li"><a href="javascript:void(0);" onclick="Unibase.Apps.Collaboration.Components.Sheets.Ribbon.Instance().getAll(`+e+`)"> `+r+` ></a></li></ul>`;$(".biz_drive_list").empty();let t=n.result.Folders,u=``;for(let n=0;n<t.length;n++){var s=t[n].FolderName;t[n].FolderName=t[n].Title;t[n].FolderName||(t[n].FolderName=s);u+=`<li class="list-group-item copyto_list copyto_folder" id="li_folder_`+t[n].FolderId+`" style="border: none;cursor:pointer;font-size:14px;"><a onclick="Unibase.Apps.Collaboration.Components.old_unicloud.Instance().getFolderItems(`+t[n].FolderId+`,'`+t[n].FolderName+`',`+!0+`)"><i class="fa fa-folder mr-15 text-light"></i> `+t[n].FolderName+`<i class="fa fa-angle-right pull-right"></i></a></li>`}let f=``,i=n.result.Files;for(let n=0;n<i.length;n++)f+=`<li class="list-group-item copyto_list copyto_file " id="li_file_`+i[n].FileId+`" style="border: none;cursor:pointer;font-size:14px;" onselect="this.style.background='#e5e5e5'"> <a onclick=""><div class="d-flex flex-row " > <img src="/tenants/default/documenttypes/sheet.svg" data-dynamic="1" data-loaded="0" alt = "filetype" onerror = "ReloadImage(event)" class="w-25p h-25p img-fluid mr-10" > <span class="text-truncate" > `+i[n].FileTitle+` </span> </div ></a></li>`;let h=o+`<ul class="list-group" id="biz_drive_foldersList">`+u+` </ul>
<ul class="list-group" id="biz_drive_filesList">`+f+`</ul>`;$(".biz_drive_list").append(h)})})}openFileSelected(t){document.getElementById("importopenfile-select-btn").removeAttribute("disabled");document.getElementById("importopenfile-select-btn").classList.remove("e-disabled");this.importedFile=document.getElementById("importopenfile");document.getElementById("filename").innerHTML=this.importedFile.files[0].name;n.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/core/helpers/file/filehelper.js",()=>{n.Platform.Helpers.FileHelper.Instance().getBase64(t).then(t=>{var r,i,u;n.Themes.Providers.Detail_Settings.Instance().InputParameters.length!=0&&(r=n.Themes.Providers.DetailHelper.installedAppId,i=Number(n.Themes.Providers.Detail_Settings.Instance().InputParameters.find(n=>n.Key=="hf_"+r+"_recordid").Value),i!=0&&i!=null&&i!=undefined);u={filedata:t.FileData,filename:t.FileName,filetype:t.FileType,RefId:i,FileId:this.FileId,Upload:!0};this.spreadsheetImportedFileData=u})})}fileSelected(t){document.getElementById("importfile-upload-select-btn").removeAttribute("disabled");document.getElementById("importfile-upload-select-btn").classList.remove("e-disabled");this.importedFile=document.getElementById("importfile");document.getElementById("filename").innerHTML=this.importedFile.files[0].name;n.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/core/helpers/file/filehelper.js",()=>{n.Platform.Helpers.FileHelper.Instance().getBase64(t).then(t=>{var r,i,u,f;n.Themes.Providers.Detail_Settings.Instance().InputParameters.length!=0&&(r=n.Themes.Providers.DetailHelper.installedAppId,i=Number(n.Themes.Providers.Detail_Settings.Instance().InputParameters.find(n=>n.Key=="hf_"+r+"_recordid").Value),i!=0&&i!=null&&i!=undefined);u={filedata:t.FileData,filename:t.FileName,filetype:t.FileType,RefId:i,FileId:this.FileId,Upload:!0};this.spreadsheetImportedFileData=u;f={filedata:t.FileData,filename:t.FileName,filetype:t.FileType,RefId:i,FileId:this.FileId,FilePath:this.filepath,Upload:!0};this.spreadsheetImportedReplaceFileData=f})})}spreadsheetMenuBar(t,i,r){var f;let u;(function(n){n[n.Xlsx=0]="Xlsx";n[n.Xls=1]="Xls";n[n.CSV=2]="CSV";n[n.PDF=3]="PDF";n[n.ODS=4]="ODS"})(u||(u={}));this.ssMenubarObj||(f=["File","Edit","View","Insert","Format","Formulas","Data","Tools"],this.ssMenubarObj=new ej.navigations.Menu({cssClass:"biz-ss-menu",beforeClose:n=>{f.indexOf(n.parentItem.text)>-1&&(this.ssMenubarObj.showItemOnClick=!0);let t=this.base.ssObj.sheets.filter(n=>n.state=="Hidden");if(t.length>0&&n.parentItem.text==="View"){let n=[];t.forEach(t=>n.push(t.name));this.ssMenubarObj.insertBefore([{text:"dummyHiddenSheet"}],n[0],!1);this.ssMenubarObj.removeItems(n,!1)}},showItemOnClick:!0,beforeItemRender:n=>{var u,i,t,f;let r=this.base.ssObj.biz.getActiveSheet();if((r.frozenColumns!=0||r.frozenRows!=0)&&n.item.text=="Freeze panes"&&(n.element.innerHTML="Unfreeze panes"),r.showHeaders||n.item.text=="Hide headers"&&(u=n.element.firstElementChild,n.element.innerHTML=u.outerHTML+"Show Headers"),r.showGridLines||n.item.text=="Hide gridlines"&&(u=n.element.firstElementChild,n.element.innerHTML=u.outerHTML+"Show Gridlines"),n.item.text=="Formula bar"){let t=document.getElementsByClassName("e-formula-bar-panel")[0];t.style.display==""&&this.addOrRemoveSelectIcon(n)}if(i=this.base.getIndexesFromAddress(r.activeCell),t=ej.spreadsheet.getCell(i[0],i[1],r),t){n.item.text==="Bold"&&t.style&&t.style.fontWeight&&t.style.fontWeight.toLowerCase()=="bold"&&this.addOrRemoveSelectIcon(n);n.item.text==="Italic"&&t.style&&t.style.fontStyle&&t.style.fontStyle.toLowerCase()=="italic"&&this.addOrRemoveSelectIcon(n);n.item.text==="Underline"&&t.style&&t.style.textDecoration&&(t.style.textDecoration.toLowerCase()=="underline line-through"||t.style.textDecoration.toLowerCase()=="underline")&&this.addOrRemoveSelectIcon(n);n.item.text==="Strikethrough"&&t.style&&t.style.textDecoration&&(t.style.textDecoration.toLowerCase()=="underline line-through"||t.style.textDecoration.toLowerCase()=="line-through")&&this.addOrRemoveSelectIcon(n);n.item.text==="Font size"&&this.addOrRemoveSelectIcon(n);n.item.text==="Wrap text"&&t.wrap&&t.wrap==!0&&this.addOrRemoveSelectIcon(n);n.item.text==="Number formatting"&&this.addOrRemoveSelectIcon(n);n.item.text==="Align"&&this.addOrRemoveSelectIcon(n);n.item.text==="Merge cells"&&(t.rowSpan||t.colSpan)&&this.addOrRemoveSelectIcon(n);n.item.text==="Merge all"&&t.rowSpan&&t.colSpan&&this.addOrRemoveSelectIcon(n);n.item.text==="Merge vertically"&&t.rowSpan&&this.addOrRemoveSelectIcon(n);n.item.text==="Merge horizontally"&&t.colSpan&&this.addOrRemoveSelectIcon(n);n.item.text==="General"&&(t.format||this.addOrRemoveSelectIcon(n));f=["General","Number","Currency","Accounting","Short date","Long date","Time","Percentage","Fraction","Scientific","Text"];f.includes(n.item.text)&&t.format&&(n.item.text==="General"?t.format.toLowerCase()=="general"&&this.addOrRemoveSelectLine truncated
<div id='importedfilename'></div>
<div id='sucessfullmessage' style="display:none">File imported successfully. <a id="importcreatenewdocument" href="${this._url}" target="blank">Open now »</a></div>
<br><br>
<div id='import-location'>Import location</div>
<div id="import-dropdowncontainer">
<div id='import-dropdown'></div>
</div>
<br>
<button id="importdata-select-btn"></button>
<button id="importdata-cancel-btn"></button>`,target:document.getElementById("container"),width:"420px",height:"290px",animationSettings:{effect:"Zoom"}});this.ssImprotedFileDailogueObj.appendTo("#importfile-container");this.dropdownObj=new ej.dropdowns.DropDownList({dataSource:["Create new spreadsheet","insert new sheet","Replace spreadsheet"],placeholder:"Select a Import",popupHeight:"200px",width:"345px"});this.dropdownObj.appendTo("#import-dropdown");this.dropdownObj.index=0;n.appendTo("#importdata-select-btn");t.appendTo("#importdata-cancel-btn");document.getElementById("importedfilename").innerHTML=this.importedFile.files[0].name}document.getElementById("importdata-cancel-btn").addEventListener("click",()=>{this.ssImportDialougObj.hide(),document.getElementById("importfile-upload-select-btn")&&document.getElementById("importfile-upload-select-btn").classList.add("e-disabled"),this.importedFile&&(this.importedFile.value=null),document.getElementById("importedfilename").innerHTML="",document.getElementById("filename")&&(document.getElementById("filename").innerHTML=""),this.hideImportandImportFileDialog()});document.getElementById("importdata-select-btn").addEventListener("click",()=>{var t=this.documentId,n=this.dropdownObj.value;n=="Create new spreadsheet"?this.importSpreadSheetDocument():n=="insert new sheet"?(this.insertSheet(),this.hideImportandImportFileDialog()):n=="Replace spreadsheet"&&(this.importReplaceSpreadSheet(),this.hideImportandImportFileDialog())})}hideImportandImportFileDialog(){this.ssImportDialougObj&&(this.ssImportDialougObj.destroy(),this.ssImportDialougObj=null);this.ssImprotedFileDailogueObj&&(this.ssImprotedFileDailogueObj.destroy(),this.ssImprotedFileDailogueObj=null)}formula(n,t){var i=this.base.ssObj.biz.getIndexes();this.cellRowStart=i[0];this.cellColStart=i[1];this.cellRowEnd=i[2];this.cellColEnd=i[3];let r=this.cellRowEnd-this.cellRowStart,f=this.cellColEnd-this.cellColStart,u=document.getElementById("DocumentViewer_edit");if(r==0&&f==0)this.base.ssObj.startEdit(),setTimeout(()=>{this.base.ssObj.startEdit(),u.textContent="="+t+"()"},0);else if(r==0&&f>0){let n=this.base.generateHeaderText(this.cellColStart+1)+(this.cellRowStart+1)+":"+this.base.generateHeaderText(this.cellColEnd+1)+(this.cellRowEnd+1);this.base.getSheetIndex()>=0&&(this.base.ssObj.selectRange(this.base.generateHeaderText(this.cellColEnd+2)+(this.cellRowStart+1)+":"+this.base.generateHeaderText(this.cellColEnd+2)+(this.cellRowStart+1)),setTimeout(()=>{this.base.ssObj.startEdit(),u.textContent="="+t+"("+n+")"},0))}else if(r>=1){let n=this.base.generateHeaderText(this.cellColStart+1)+(this.cellRowStart+1)+":"+this.base.generateHeaderText(this.cellColEnd+1)+(this.cellRowEnd+1);this.base.ssObj.notify("initiateFormulaReference",{range:n,formulaSheetIdx:this.base.getSheetIndex()});this.base.getSheetIndex()>=0&&(this.base.ssObj.selectRange(this.base.generateHeaderText(this.cellColStart+1)+(this.cellRowEnd+2)+":"+this.base.generateHeaderText(this.cellColStart+1)+(this.cellRowEnd+2)),setTimeout(()=>{this.base.ssObj.startEdit(),u.textContent="="+t+"("+n+")"},0))}setTimeout(()=>{var i=this.base.ssObj.element.querySelector("#"+this.base.ssObj.element.id+"_edit"),t;let n=document.createRange();t=window.getSelection();n.setStart(i.childNodes[0],i.innerHTML.length-1);n.collapse(!0);t.removeAllRanges();t.addRange(n);this.base.ssObj.isEdit=!0},200)}getFormulaBtnDdb(){var t=new ej.splitbuttons.DropDownButton({cssClass:"biz-ss-formula-ddb",iconCss:"e-icons biz-ss-formulaicon",items:[{text:"SUM",items:[{iconCss:"e-icons e-selected-icon",id:"_1px"},{id:"_2px"},{id:"_3px"},{id:"_dashed"},{id:"_dotted"},{id:"_double"}]},{text:"AVERAGE"},{text:"COUNT"},{text:"MAX"},{text:"MIN"},{separator:!0},{text:"ABS"},{text:"AND"},{text:"AVERAGE"},{text:"AVERAGEA"},{text:"AVERAGEIF"},{text:"AVERAGEIFS"},{text:"CEILING"},{text:"CHOOSE"},{text:"CONCAT"},{text:"CONCATENATE"},{text:"COUNT"},{text:"COUNTA"},{text:"COUNTIF"},{text:"COUNTIFS"},{text:"DATE"},{text:"DAY"},{text:"DAYS"},{text:"EXP"},{text:"FIND"},{text:"FLOOR"},{text:"GEOMEAN"},{text:"IF"},{text:"IFERROR"},{text:"IFS"},{text:"INDEX"},{text:"INT"},{text:"INTERCEPT"},{text:"ISNUMBER"},{text:"LN"},{text:"LOG"},{text:"MATCH"},{text:"MAX"},{text:"MIN"},{text:"OR"},{text:"POWER"},{text:"PRODUCT"},{text:"RADIANS"},{text:"RAND"},{text:"RANDBETWEEN"},{text:"ROUND"},{text:"ROUNDUP"},{text:"SLOPE"},{text:"SORT"},{text:"SUBTOTAL"},{text:"SUM"},{text:"SUMIF"},{text:"SUMIFS"},{text:"SUMPRODUCT"},{text:"TEXT"},{text:"TODAY"},{text:"TRUNC"}],select:n=>{let t=this.base.ssObj.biz.getActiveSheet();switch(n.item.text){case n.item.text:this.formula(t,n.item.text)}},beforeOpen:n=>{n.items[0].text==="SUM"&&(ej.base.closest(n.element,".biz-ss-formula-ddb").style.maxHeight="450px",ej.base.closest(n.element,".biz-ss-formula-ddb").style.overflowY="scroll")}});return t.appendTo(n.Apps.Collaboration.Components.Common.Util.Instance().createElement("button","class","biz-ss-formula-wrLine truncated
@@ -0,0 +1,210 @@
var Unibase;
(function (Unibase) {
let Apps;
(function (Apps) {
let Collaboration;
(function (Collaboration) {
let Components;
(function (Components) {
let Sheets;
(function (Sheets) {
class SpellChecker {
constructor() {
this.dic = {};
this.hederText = {};
}
init(base) {
this.base = base;
this.ssObj = this.base.ssObj;
}
processWords() {
this.dic = {};
this.words = '';
let sheet = this.ssObj.biz.getActiveSheet();
let rngIndexes = this.base.getIndexesFromAddress(sheet.selectedRange);
for (let i = rngIndexes[0]; i <= rngIndexes[2]; i++) {
if (!this.ssObj.biz.isRowAvailable(i, sheet)) {
continue;
}
for (let j = rngIndexes[1]; j <= rngIndexes[3]; j++) {
let cellObj = ej.spreadsheet.getCell(i, j, sheet);
if (cellObj && cellObj.value && typeof cellObj.value !== 'number') {
let value = cellObj.value.toString();
let temp = value.split(' ');
let values = [];
for (let k = 0; k < temp.length; k++) {
let val = temp[k];
if (!this.dic[val]) {
this.dic[val.trim()] = [{ rowIndex: i, colIndex: j }];
values.push(val.trim());
}
else {
this.dic[val.trim()].push({ rowIndex: i, colIndex: j });
}
}
values.length && (this.words = this.words + ' ' + values.toString().replaceAll(',', ' '));
}
}
}
this.splitWords = this.words.trim().split(' ').reverse();
this.requestServer();
}
requestServer() {
var data = {
LanguageID: 1033,
TexttoCheck: this.words.trim(),
CheckSpelling: true,
CheckSuggestion: true,
AddWord: false,
};
Unibase.Apps.Collaboration.DocumentManager.Instance().spellCheck(data).then((res) => { this.successCallback(res); });
}
successCallback(result) {
this.ssObj.allowEditing = false;
for (var i = 0; i < result.length; i++) {
result[i] = JSON.parse(result[i]);
}
this.result = result.reverse();
ej.popups.hideSpinner(this.dlgObj.element);
this.dlgObj.content = `<div>
<span class="biz-sc-info"></span>
<div style="padding-top: 10px">
<input class="biz-sc-value" type="text"/>
<input type="text" class='biz-sc-sugg'/>
</div>
<div style="padding-top: 10px">
<button type="text" class='biz-sc-change'>Change</button>
<button type="text" class='biz-sc-ignore'>Ignore</button>
</div>
</div>`;
this.dlgObj.dataBind();
this.dlgObj.element.querySelector('.e-footer-content').classList.add('biz-hide');
this.infoElem = this.dlgObj.element.querySelector('.biz-sc-info');
this.textObj = new ej.inputs.TextBox({}, this.dlgObj.element.querySelector('.biz-sc-value'));
this.ddSug = new ej.dropdowns.DropDownList({
dataSource: [], select: (e) => {
this.textObj.value = e.itemData.value;
}
}, this.dlgObj.element.querySelector('.biz-sc-sugg'));
let items = [
{
text: 'Change all',
}
];
this.spanElem = this.dlgObj.element.querySelector('.biz-sc-info');
this.ddChange = new ej.splitbuttons.SplitButton({ items: items, click: (e) => { this.change(); }, select: (e) => { this.changeAll(); } }, this.dlgObj.element.querySelector('.biz-sc-change'));
items = [
{
text: 'Ignore all',
}
];
this.ddIgnore = new ej.splitbuttons.SplitButton({ items: items, click: (e) => { this.ignore(); }, select: (e) => { this.ignoreAll(); } }, this.dlgObj.element.querySelector('.biz-sc-ignore'));
this.moveNext();
}
convertAsItemModel(items) {
for (let i = 0; i < items.length; i++) {
items[i] = { text: items[i] };
}
}
moveNext(skipPop) {
if (!this.splitWords.length) {
this.dlgObj.content = 'No spelling errors';
this.dlgObj.height = '95px';
this.dlgObj.dataBind();
this.dlgObj.element.querySelector('.e-footer-content').classList.remove('biz-hide');
this.ssObj.allowEditing = true;
setTimeout(() => {
this.destroySpellDialog();
}, 3000);
return;
}
if (!skipPop) {
this.value = this.splitWords.pop();
this.spellObj = this.result.pop();
this.spanElem.innerHTML = "Change <b>" + this.value + "</b> to:";
}
let addr = this.dic[this.value];
if (this.spellObj['Suggestions'] && this.spellObj['Suggestions'].length && addr.length) {
this.ssObj.selectRange(this.base.generateHeaderText(addr[0].colIndex + 1) + (addr[0].rowIndex + 1));
this.ddSug.dataSource = this.spellObj['Suggestions'];
this.ddSug.value = this.spellObj['Suggestions'][0];
this.textObj.value = this.spellObj['Suggestions'][0];
}
else {
delete this.dic[this.value];
this.moveNext();
}
}
change() {
let addr = this.dic[this.value];
let sheet = this.ssObj.biz.getActiveSheet();
let cellObj = ej.spreadsheet.getCell(addr[0].rowIndex, addr[0].colIndex, sheet);
let value = cellObj.value === this.value ? this.textObj.value : cellObj.value.replace(this.value, this.textObj.value);
let args = { rowIdx: addr[0].rowIndex, colIdx: addr[0].colIndex, value: value, action: 'spellcheck', origin: 'biz', sheetIndex: this.base.getSheetIndex() };
this.applySpellValue(addr[0].rowIndex, addr[0].colIndex, value);
this.ignore();
Unibase.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(args);
}
applySpellValue(rowIdx, colIdx, value) {
let sheet = this.ssObj.biz.getActiveSheet();
let cellObj = ej.spreadsheet.getCell(rowIdx, colIdx, sheet);
cellObj.value = value;
this.ssObj.biz.setCell(rowIdx, colIdx, sheet, cellObj);
Unibase.Apps.Collaboration.Components.Common.Download.Instance().ssAutoSave({ action: "cellSave", eventArgs: { address: "sheet!" + this.base.ssObj.biz.getRange() } }, this.base, true);
}
changeAll() {
let len = this.dic[this.value].length;
for (let i = 0; i < len; i++) {
this.change();
}
}
ignore() {
this.dic[this.value].shift();
this.moveNext(true);
}
ignoreAll() {
delete this.dic[this.value];
this.moveNext();
}
renderSpellDialog() {
let div = this.ssObj.element.querySelector('.biz-spelldlg') || ej.base.createElement('div', { className: 'biz-spelldlg' });
this.ssObj.element.querySelector('.e-sheet-panel').appendChild(div);
this.dlgObj = new ej.popups.Dialog({
target: this.ssObj.element.querySelector('.e-sheet-panel'),
content: '',
width: '350px',
height: '170px',
position: { X: 'right', Y: 'top' },
animationSettings: { effect: 'None' },
showCloseIcon: false,
buttons: [{
click: this.destroySpellDialog.bind(this),
buttonModel: { content: 'Close' }
}],
open: () => {
ej.popups.createSpinner({ target: this.dlgObj.element });
ej.popups.showSpinner(this.dlgObj.element);
},
});
this.dlgObj.appendTo(div);
this.processWords();
}
destroySpellDialog() {
this.ddSug.destroy();
this.ddChange.destroy();
this.ddIgnore.destroy();
this.dlgObj.destroy();
}
static Instance() {
if (this.instance === undefined) {
this.instance = new SpellChecker();
}
return this.instance;
}
}
Sheets.SpellChecker = SpellChecker;
})(Sheets = Components.Sheets || (Components.Sheets = {}));
})(Components = Collaboration.Components || (Collaboration.Components = {}));
})(Collaboration = Apps.Collaboration || (Apps.Collaboration = {}));
})(Apps = Unibase.Apps || (Unibase.Apps = {}));
})(Unibase || (Unibase = {}));
@@ -0,0 +1 @@
{"version":3,"file":"spellcheck.js","sourceRoot":"","sources":["spellcheck.ts"],"names":[],"mappings":"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 truncated
+11
View File
@@ -0,0 +1,11 @@
var Unibase;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i{constructor(){this.dic={};this.hederText={}}init(n){this.base=n;this.ssObj=this.base.ssObj}processWords(){this.dic={};this.words="";let t=this.ssObj.biz.getActiveSheet(),n=this.base.getIndexesFromAddress(t.selectedRange);for(let i=n[0];i<=n[2];i++)if(this.ssObj.biz.isRowAvailable(i,t))for(let r=n[1];r<=n[3];r++){let n=ej.spreadsheet.getCell(i,r,t);if(n&&n.value&&typeof n.value!="number"){let f=n.value.toString(),u=f.split(" "),t=[];for(let n=0;n<u.length;n++){let f=u[n];this.dic[f]?this.dic[f.trim()].push({rowIndex:i,colIndex:r}):(this.dic[f.trim()]=[{rowIndex:i,colIndex:r}],t.push(f.trim()))}t.length&&(this.words=this.words+" "+t.toString().replaceAll(","," "))}}this.splitWords=this.words.trim().split(" ").reverse();this.requestServer()}requestServer(){var t={LanguageID:1033,TexttoCheck:this.words.trim(),CheckSpelling:!0,CheckSuggestion:!0,AddWord:!1};n.Apps.Collaboration.DocumentManager.Instance().spellCheck(t).then(n=>{this.successCallback(n)})}successCallback(n){this.ssObj.allowEditing=!1;for(var t=0;t<n.length;t++)n[t]=JSON.parse(n[t]);this.result=n.reverse();ej.popups.hideSpinner(this.dlgObj.element);this.dlgObj.content=`<div>
<span class="biz-sc-info"></span>
<div style="padding-top: 10px">
<input class="biz-sc-value" type="text"/>
<input type="text" class='biz-sc-sugg'/>
</div>
<div style="padding-top: 10px">
<button type="text" class='biz-sc-change'>Change</button>
<button type="text" class='biz-sc-ignore'>Ignore</button>
</div>
</div>`;this.dlgObj.dataBind();this.dlgObj.element.querySelector(".e-footer-content").classList.add("biz-hide");this.infoElem=this.dlgObj.element.querySelector(".biz-sc-info");this.textObj=new ej.inputs.TextBox({},this.dlgObj.element.querySelector(".biz-sc-value"));this.ddSug=new ej.dropdowns.DropDownList({dataSource:[],select:n=>{this.textObj.value=n.itemData.value}},this.dlgObj.element.querySelector(".biz-sc-sugg"));let i=[{text:"Change all"}];this.spanElem=this.dlgObj.element.querySelector(".biz-sc-info");this.ddChange=new ej.splitbuttons.SplitButton({items:i,click:()=>{this.change()},select:()=>{this.changeAll()}},this.dlgObj.element.querySelector(".biz-sc-change"));i=[{text:"Ignore all"}];this.ddIgnore=new ej.splitbuttons.SplitButton({items:i,click:()=>{this.ignore()},select:()=>{this.ignoreAll()}},this.dlgObj.element.querySelector(".biz-sc-ignore"));this.moveNext()}convertAsItemModel(n){for(let t=0;t<n.length;t++)n[t]={text:n[t]}}moveNext(n){if(!this.splitWords.length){this.dlgObj.content="No spelling errors";this.dlgObj.height="95px";this.dlgObj.dataBind();this.dlgObj.element.querySelector(".e-footer-content").classList.remove("biz-hide");this.ssObj.allowEditing=!0;setTimeout(()=>{this.destroySpellDialog()},3e3);return}n||(this.value=this.splitWords.pop(),this.spellObj=this.result.pop(),this.spanElem.innerHTML="Change <b>"+this.value+"<\/b> to:");let t=this.dic[this.value];this.spellObj.Suggestions&&this.spellObj.Suggestions.length&&t.length?(this.ssObj.selectRange(this.base.generateHeaderText(t[0].colIndex+1)+(t[0].rowIndex+1)),this.ddSug.dataSource=this.spellObj.Suggestions,this.ddSug.value=this.spellObj.Suggestions[0],this.textObj.value=this.spellObj.Suggestions[0]):(delete this.dic[this.value],this.moveNext())}change(){let t=this.dic[this.value],u=this.ssObj.biz.getActiveSheet(),i=ej.spreadsheet.getCell(t[0].rowIndex,t[0].colIndex,u),r=i.value===this.value?this.textObj.value:i.value.replace(this.value,this.textObj.value),f={rowIdx:t[0].rowIndex,colIdx:t[0].colIndex,value:r,action:"spellcheck",origin:"biz",sheetIndex:this.base.getSheetIndex()};this.applySpellValue(t[0].rowIndex,t[0].colIndex,r);this.ignore();n.Apps.Collaboration.Components.Sheets.Base.Instance().bizSignalr(f)}applySpellValue(t,i,r){let u=this.ssObj.biz.getActiveSheet(),f=ej.spreadsheet.getCell(t,i,u);f.value=r;this.ssObj.biz.setCell(t,i,u,f);n.Apps.Collaboration.Components.Common.Download.Instance().ssAutoSave({action:"cellSave",eventArgs:{address:"sheet!"+this.base.ssObj.biz.getRange()}},this.base,!0)}changeAll(){let n=this.dic[this.value].length;for(let t=0;t<n;t++)this.change()}ignore(){this.dic[this.value].shift();this.moveNext(!0)}ignoreAll(){delete this.dic[this.value];this.moveNext()}renderSpellDialog(){let n=this.ssObj.element.querySelector(".biz-spelldlg")||ej.base.createElement("div",{className:"biz-spelldlg"});this.ssObj.element.querySelector(".e-sheet-panel").appendChild(n);this.dlgObj=new ej.popups.Dialog({target:this.ssObj.element.querySelector(".e-sheet-panel"),content:"",width:"350px",height:"170px",position:{X:"right",Y:"top"},animationSettings:{effect:"None"},showCloseIcon:!1,buttons:[{click:this.destroySpellDialog.bind(this),buttonModel:{content:"Close"}}],open:()=>{ej.popups.createSpinner({target:this.dlgObj.element}),ej.popups.showSpinner(this.dlgObj.element)}});this.dlgObj.appendTo(n);this.processWords()}destroySpellDialog(){this.ddSug.destroy();this.ddChange.destroy();this.ddIgnore.destroy();this.dlgObj.destroy()}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.SpellChecker=i})(i=t.Sheets||(t.Sheets={}))})(i=t.Components||(t.Components={}))})(i=t.Collaboration||(t.Collaboration={}))})(t=n.Apps||(n.Apps={}))})(Unibase||(Unibase={}));