@fileverse-dev/fortune-core 1.1.64 → 1.1.66-clear-formatting-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,3 +30,6 @@ export declare function getQKBorder(width: string, type: string, color: string):
30
30
  export declare function getdatabyselection(ctx: Context, range: Selection | undefined, sheetId: string): (Cell | null)[][];
31
31
  export declare function luckysheetUpdateCell(ctx: Context, row_index: number, col_index: number): void;
32
32
  export declare function getDataBySelectionNoCopy(ctx: Context, range: Selection): (Cell | null)[][];
33
+ export declare function clearSelectedCellFormat(ctx: Context): void;
34
+ export declare function clearRowsCellsFormat(ctx: Context): void;
35
+ export declare function clearColumnsCellsFormat(ctx: Context): void;
@@ -1146,4 +1146,84 @@ export function getDataBySelectionNoCopy(ctx, range) {
1146
1146
  data.push(row);
1147
1147
  }
1148
1148
  return data;
1149
+ }
1150
+ function keepOnlyValueParts(cell) {
1151
+ if (!cell) return cell !== null && cell !== void 0 ? cell : null;
1152
+ var rawValue = cell.v,
1153
+ displayText = cell.m,
1154
+ formula = cell.f;
1155
+ return rawValue !== undefined || displayText !== undefined || formula !== undefined ? {
1156
+ v: rawValue,
1157
+ m: displayText,
1158
+ f: formula
1159
+ } : null;
1160
+ }
1161
+ export function clearSelectedCellFormat(ctx) {
1162
+ var activeSheetIndex = getSheetIndex(ctx, ctx.currentSheetId);
1163
+ if (activeSheetIndex == null) return;
1164
+ var activeSheetFile = ctx.luckysheetfile[activeSheetIndex];
1165
+ var selectedRanges = ctx.luckysheet_select_save;
1166
+ if (!activeSheetFile || !selectedRanges) return;
1167
+ var sheetData = activeSheetFile.data;
1168
+ selectedRanges.forEach(function (_a) {
1169
+ var rowRange = _a.row,
1170
+ columnRange = _a.column;
1171
+ var startRow = rowRange[0],
1172
+ endRow = rowRange[1];
1173
+ var startColumn = columnRange[0],
1174
+ endColumn = columnRange[1];
1175
+ for (var rowIndex = startRow; rowIndex <= endRow; rowIndex++) {
1176
+ var rowCells = sheetData === null || sheetData === void 0 ? void 0 : sheetData[rowIndex];
1177
+ if (!rowCells) continue;
1178
+ for (var columnIndex = startColumn; columnIndex <= endColumn; columnIndex++) {
1179
+ if (rowCells[columnIndex] === undefined) continue;
1180
+ rowCells[columnIndex] = keepOnlyValueParts(rowCells[columnIndex]);
1181
+ }
1182
+ }
1183
+ });
1184
+ }
1185
+ export function clearRowsCellsFormat(ctx) {
1186
+ var _a, _b;
1187
+ var activeSheetIndex = getSheetIndex(ctx, ctx.currentSheetId);
1188
+ if (activeSheetIndex == null) return;
1189
+ var activeSheetFile = ctx.luckysheetfile[activeSheetIndex];
1190
+ var selectedRanges = ctx.luckysheet_select_save;
1191
+ if (!activeSheetFile || !selectedRanges) return;
1192
+ var sheetData = activeSheetFile.data;
1193
+ var columnCount = (_b = (_a = sheetData === null || sheetData === void 0 ? void 0 : sheetData[0]) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
1194
+ selectedRanges.forEach(function (_a) {
1195
+ var rowRange = _a.row;
1196
+ var startRow = rowRange[0],
1197
+ endRow = rowRange[1];
1198
+ for (var rowIndex = startRow; rowIndex <= endRow; rowIndex++) {
1199
+ var rowCells = sheetData === null || sheetData === void 0 ? void 0 : sheetData[rowIndex];
1200
+ if (!rowCells) continue;
1201
+ for (var columnIndex = 0; columnIndex < columnCount; columnIndex++) {
1202
+ if (rowCells[columnIndex] === undefined) continue;
1203
+ rowCells[columnIndex] = keepOnlyValueParts(rowCells[columnIndex]);
1204
+ }
1205
+ }
1206
+ });
1207
+ }
1208
+ export function clearColumnsCellsFormat(ctx) {
1209
+ var activeSheetIndex = getSheetIndex(ctx, ctx.currentSheetId);
1210
+ if (activeSheetIndex == null) return;
1211
+ var activeSheetFile = ctx.luckysheetfile[activeSheetIndex];
1212
+ var selectedRanges = ctx.luckysheet_select_save;
1213
+ if (!activeSheetFile || !selectedRanges) return;
1214
+ var sheetData = activeSheetFile.data;
1215
+ var rowCount = sheetData.length;
1216
+ selectedRanges.forEach(function (_a) {
1217
+ var columnRange = _a.column;
1218
+ var startColumn = columnRange[0],
1219
+ endColumn = columnRange[1];
1220
+ for (var rowIndex = 0; rowIndex < rowCount; rowIndex++) {
1221
+ var rowCells = sheetData[rowIndex];
1222
+ if (!rowCells) continue;
1223
+ for (var columnIndex = startColumn; columnIndex <= endColumn; columnIndex++) {
1224
+ if (rowCells[columnIndex] === undefined) continue;
1225
+ rowCells[columnIndex] = keepOnlyValueParts(rowCells[columnIndex]);
1226
+ }
1227
+ }
1228
+ });
1149
1229
  }
package/es/settings.js CHANGED
@@ -18,7 +18,7 @@ export var defaultSettings = {
18
18
  defaultRowHeight: 19,
19
19
  defaultFontSize: 10,
20
20
  toolbarItems: ["undo", "redo", "format-painter", "clear-format", "|", "currency", "percentage-format", "number-decrease", "number-increase", "format", "|", "font", "|", "font-size", "|", "bold", "italic", "strike-through", "underline", "|", "font-color", "background", "border", "merge-cell", "|", "horizontal-align", "vertical-align", "text-wrap", "text-rotation", "|", "freeze", "conditionFormat", "filter", "link", "image", "comment", "quick-formula", "dataVerification", "splitColumn", "locationCondition", "screenshot", "search"],
21
- cellContextMenu: ["split-text", "cut", "copy", "paste", "clear", "|", "insert-row", "insert-column", "cell-delete-row", "cell-delete-column", "delete-cell", "hide-row", "hide-column", "set-row-height", "set-column-width", "|", "conditionFormat", "sort", "ascSort", "desSort", "orderAZ", "orderZA", "filter", "searchReplace", "dataVerification", "|", "chart", "link", "data", "cell-format", "comment"],
21
+ cellContextMenu: ["split-text", "cut", "copy", "paste", "clear", "|", "insert-row", "insert-column", "cell-delete-row", "cell-delete-column", "delete-cell", "hide-row", "hide-column", "set-row-height", "set-column-width", "|", "conditionFormat", "sort", "ascSort", "desSort", "orderAZ", "orderZA", "filter", "searchReplace", "dataVerification", "|", "chart", "link", "data", "cell-format", "comment", "|", "clear-format"],
22
22
  headerContextMenu: ["copy", "paste", "|", "insert-row", "insert-column", "delete-row", "delete-column", "delete-cell", "hide-row", "hide-column", "set-row-height", "set-column-width", "|", "split-text", "clear", "sort", "orderAZ", "orderZA"],
23
23
  sheetTabContextMenu: ["delete", "copy", "rename", "color", "hide", "|", "move"],
24
24
  filterContextMenu: ["sort-by-asc", "sort-by-desc", "filter-by-value"],
@@ -30,3 +30,6 @@ export declare function getQKBorder(width: string, type: string, color: string):
30
30
  export declare function getdatabyselection(ctx: Context, range: Selection | undefined, sheetId: string): (Cell | null)[][];
31
31
  export declare function luckysheetUpdateCell(ctx: Context, row_index: number, col_index: number): void;
32
32
  export declare function getDataBySelectionNoCopy(ctx: Context, range: Selection): (Cell | null)[][];
33
+ export declare function clearSelectedCellFormat(ctx: Context): void;
34
+ export declare function clearRowsCellsFormat(ctx: Context): void;
35
+ export declare function clearColumnsCellsFormat(ctx: Context): void;
@@ -5,6 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.cancelFunctionrangeSelected = cancelFunctionrangeSelected;
7
7
  exports.cancelNormalSelected = cancelNormalSelected;
8
+ exports.clearColumnsCellsFormat = clearColumnsCellsFormat;
9
+ exports.clearRowsCellsFormat = clearRowsCellsFormat;
10
+ exports.clearSelectedCellFormat = clearSelectedCellFormat;
8
11
  exports.getCellValue = getCellValue;
9
12
  exports.getDataBySelectionNoCopy = getDataBySelectionNoCopy;
10
13
  exports.getFlattenedRange = getFlattenedRange;
@@ -1176,4 +1179,84 @@ function getDataBySelectionNoCopy(ctx, range) {
1176
1179
  data.push(row);
1177
1180
  }
1178
1181
  return data;
1182
+ }
1183
+ function keepOnlyValueParts(cell) {
1184
+ if (!cell) return cell !== null && cell !== void 0 ? cell : null;
1185
+ var rawValue = cell.v,
1186
+ displayText = cell.m,
1187
+ formula = cell.f;
1188
+ return rawValue !== undefined || displayText !== undefined || formula !== undefined ? {
1189
+ v: rawValue,
1190
+ m: displayText,
1191
+ f: formula
1192
+ } : null;
1193
+ }
1194
+ function clearSelectedCellFormat(ctx) {
1195
+ var activeSheetIndex = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1196
+ if (activeSheetIndex == null) return;
1197
+ var activeSheetFile = ctx.luckysheetfile[activeSheetIndex];
1198
+ var selectedRanges = ctx.luckysheet_select_save;
1199
+ if (!activeSheetFile || !selectedRanges) return;
1200
+ var sheetData = activeSheetFile.data;
1201
+ selectedRanges.forEach(function (_a) {
1202
+ var rowRange = _a.row,
1203
+ columnRange = _a.column;
1204
+ var startRow = rowRange[0],
1205
+ endRow = rowRange[1];
1206
+ var startColumn = columnRange[0],
1207
+ endColumn = columnRange[1];
1208
+ for (var rowIndex = startRow; rowIndex <= endRow; rowIndex++) {
1209
+ var rowCells = sheetData === null || sheetData === void 0 ? void 0 : sheetData[rowIndex];
1210
+ if (!rowCells) continue;
1211
+ for (var columnIndex = startColumn; columnIndex <= endColumn; columnIndex++) {
1212
+ if (rowCells[columnIndex] === undefined) continue;
1213
+ rowCells[columnIndex] = keepOnlyValueParts(rowCells[columnIndex]);
1214
+ }
1215
+ }
1216
+ });
1217
+ }
1218
+ function clearRowsCellsFormat(ctx) {
1219
+ var _a, _b;
1220
+ var activeSheetIndex = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1221
+ if (activeSheetIndex == null) return;
1222
+ var activeSheetFile = ctx.luckysheetfile[activeSheetIndex];
1223
+ var selectedRanges = ctx.luckysheet_select_save;
1224
+ if (!activeSheetFile || !selectedRanges) return;
1225
+ var sheetData = activeSheetFile.data;
1226
+ var columnCount = (_b = (_a = sheetData === null || sheetData === void 0 ? void 0 : sheetData[0]) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
1227
+ selectedRanges.forEach(function (_a) {
1228
+ var rowRange = _a.row;
1229
+ var startRow = rowRange[0],
1230
+ endRow = rowRange[1];
1231
+ for (var rowIndex = startRow; rowIndex <= endRow; rowIndex++) {
1232
+ var rowCells = sheetData === null || sheetData === void 0 ? void 0 : sheetData[rowIndex];
1233
+ if (!rowCells) continue;
1234
+ for (var columnIndex = 0; columnIndex < columnCount; columnIndex++) {
1235
+ if (rowCells[columnIndex] === undefined) continue;
1236
+ rowCells[columnIndex] = keepOnlyValueParts(rowCells[columnIndex]);
1237
+ }
1238
+ }
1239
+ });
1240
+ }
1241
+ function clearColumnsCellsFormat(ctx) {
1242
+ var activeSheetIndex = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1243
+ if (activeSheetIndex == null) return;
1244
+ var activeSheetFile = ctx.luckysheetfile[activeSheetIndex];
1245
+ var selectedRanges = ctx.luckysheet_select_save;
1246
+ if (!activeSheetFile || !selectedRanges) return;
1247
+ var sheetData = activeSheetFile.data;
1248
+ var rowCount = sheetData.length;
1249
+ selectedRanges.forEach(function (_a) {
1250
+ var columnRange = _a.column;
1251
+ var startColumn = columnRange[0],
1252
+ endColumn = columnRange[1];
1253
+ for (var rowIndex = 0; rowIndex < rowCount; rowIndex++) {
1254
+ var rowCells = sheetData[rowIndex];
1255
+ if (!rowCells) continue;
1256
+ for (var columnIndex = startColumn; columnIndex <= endColumn; columnIndex++) {
1257
+ if (rowCells[columnIndex] === undefined) continue;
1258
+ rowCells[columnIndex] = keepOnlyValueParts(rowCells[columnIndex]);
1259
+ }
1260
+ }
1261
+ });
1179
1262
  }
package/lib/settings.js CHANGED
@@ -24,7 +24,7 @@ var defaultSettings = exports.defaultSettings = {
24
24
  defaultRowHeight: 19,
25
25
  defaultFontSize: 10,
26
26
  toolbarItems: ["undo", "redo", "format-painter", "clear-format", "|", "currency", "percentage-format", "number-decrease", "number-increase", "format", "|", "font", "|", "font-size", "|", "bold", "italic", "strike-through", "underline", "|", "font-color", "background", "border", "merge-cell", "|", "horizontal-align", "vertical-align", "text-wrap", "text-rotation", "|", "freeze", "conditionFormat", "filter", "link", "image", "comment", "quick-formula", "dataVerification", "splitColumn", "locationCondition", "screenshot", "search"],
27
- cellContextMenu: ["split-text", "cut", "copy", "paste", "clear", "|", "insert-row", "insert-column", "cell-delete-row", "cell-delete-column", "delete-cell", "hide-row", "hide-column", "set-row-height", "set-column-width", "|", "conditionFormat", "sort", "ascSort", "desSort", "orderAZ", "orderZA", "filter", "searchReplace", "dataVerification", "|", "chart", "link", "data", "cell-format", "comment"],
27
+ cellContextMenu: ["split-text", "cut", "copy", "paste", "clear", "|", "insert-row", "insert-column", "cell-delete-row", "cell-delete-column", "delete-cell", "hide-row", "hide-column", "set-row-height", "set-column-width", "|", "conditionFormat", "sort", "ascSort", "desSort", "orderAZ", "orderZA", "filter", "searchReplace", "dataVerification", "|", "chart", "link", "data", "cell-format", "comment", "|", "clear-format"],
28
28
  headerContextMenu: ["copy", "paste", "|", "insert-row", "insert-column", "delete-row", "delete-column", "delete-cell", "hide-row", "hide-column", "set-row-height", "set-column-width", "|", "split-text", "clear", "sort", "orderAZ", "orderZA"],
29
29
  sheetTabContextMenu: ["delete", "copy", "rename", "color", "hide", "|", "move"],
30
30
  filterContextMenu: ["sort-by-asc", "sort-by-desc", "filter-by-value"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fileverse-dev/fortune-core",
3
- "version": "1.1.64",
3
+ "version": "1.1.66-clear-formatting-1",
4
4
  "main": "lib/index.js",
5
5
  "module": "es/index.js",
6
6
  "typings": "lib/index.d.ts",