@w100n/documents 0.19.0 → 0.19.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.
- package/dist/{SheetView-43MPR64N.css → SheetView-GBGCZMYL.css} +22 -1
- package/dist/{SheetView-43MPR64N.css.map → SheetView-GBGCZMYL.css.map} +1 -1
- package/dist/{SheetView-PUSRW7W2.js → SheetView-P3GH4U73.js} +43 -23
- package/dist/SheetView-P3GH4U73.js.map +1 -0
- package/dist/{TextEditor-Z4KSBLBV.js → TextEditor-U3WODH75.js} +18 -6
- package/dist/TextEditor-U3WODH75.js.map +1 -0
- package/dist/{chunk-ZQYSBWLK.js → chunk-SJVSGMNK.js} +48 -3
- package/dist/chunk-SJVSGMNK.js.map +1 -0
- package/dist/{chunk-JSJEB2CO.js → chunk-VG7UW2CQ.js} +11 -2
- package/dist/{chunk-JSJEB2CO.js.map → chunk-VG7UW2CQ.js.map} +1 -1
- package/dist/collab.cjs +10 -1
- package/dist/collab.cjs.map +1 -1
- package/dist/collab.js +1 -1
- package/dist/{grid-IR5YFFSF.js → grid-7OGS3FPU.js} +27 -2
- package/dist/grid-7OGS3FPU.js.map +1 -0
- package/dist/index.cjs +1109 -1007
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +78 -12
- package/dist/index.css.map +1 -1
- package/dist/index.js +11 -23
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/SheetView-PUSRW7W2.js.map +0 -1
- package/dist/TextEditor-Z4KSBLBV.js.map +0 -1
- package/dist/chunk-ZQYSBWLK.js.map +0 -1
- package/dist/grid-IR5YFFSF.js.map +0 -1
package/dist/collab.js
CHANGED
|
@@ -11,7 +11,8 @@ import "@univerjs/preset-sheets-find-replace/lib/index.css";
|
|
|
11
11
|
import "@univerjs/preset-sheets-data-validation/lib/index.css";
|
|
12
12
|
import "@univerjs/preset-sheets-note/lib/index.css";
|
|
13
13
|
import { createUniver, LocaleType, mergeLocales, purpleTheme } from "@univerjs/presets";
|
|
14
|
-
import {
|
|
14
|
+
import { ICommandService as ICommandService2, IUniverInstanceService, WrapStrategy } from "@univerjs/core";
|
|
15
|
+
import { CalculationMode, IMarkSelectionService, IRenderManagerService, SelectionControl, SetWorksheetRowAutoHeightMutation, SetWorksheetRowIsAutoHeightMutation, SheetSkeletonManagerService, UniverSheetsCorePreset } from "@univerjs/preset-sheets-core";
|
|
15
16
|
import { UniverSheetsDataValidationPreset } from "@univerjs/preset-sheets-data-validation";
|
|
16
17
|
import { UniverSheetsFilterPreset } from "@univerjs/preset-sheets-filter";
|
|
17
18
|
import { UniverSheetsFindReplacePreset } from "@univerjs/preset-sheets-find-replace";
|
|
@@ -82,6 +83,29 @@ function grid(container, language, edit) {
|
|
|
82
83
|
]
|
|
83
84
|
});
|
|
84
85
|
}
|
|
86
|
+
function fit(injector, unitId) {
|
|
87
|
+
const book = injector.get(IUniverInstanceService).getUnit(unitId);
|
|
88
|
+
const skeletons = injector.get(IRenderManagerService).getRenderUnitById(unitId)?.with(SheetSkeletonManagerService);
|
|
89
|
+
if (!book || !skeletons) return;
|
|
90
|
+
const commands = injector.get(ICommandService2);
|
|
91
|
+
for (const sheet of book.getSheets()) {
|
|
92
|
+
const rows = /* @__PURE__ */ new Set();
|
|
93
|
+
sheet.getCellMatrix().forValue((r, _, cell) => {
|
|
94
|
+
if (book.getStyles().getStyleByCell(cell)?.tb === WrapStrategy.WRAP) rows.add(r);
|
|
95
|
+
});
|
|
96
|
+
if (!rows.size) continue;
|
|
97
|
+
const subUnitId = sheet.getSheetId(), last = sheet.getMaxColumns() - 1, all = [...rows];
|
|
98
|
+
const line = (r) => ({ startRow: r, endRow: r, startColumn: 0, endColumn: last });
|
|
99
|
+
const was = Object.fromEntries(all.map((r) => [r, sheet.getConfig().rowData[r]?.ia ?? null]));
|
|
100
|
+
const stored = Object.fromEntries(all.map((r) => [r, sheet.getRowHeight(r)]));
|
|
101
|
+
const auto = (list, info) => commands.syncExecuteCommand(SetWorksheetRowIsAutoHeightMutation.id, { unitId, subUnitId, ranges: list.map(line), autoHeightInfo: info }, { onlyLocal: true });
|
|
102
|
+
auto(all, 1);
|
|
103
|
+
const grow = (skeletons.ensureSkeleton(subUnitId)?.calculateAutoHeightInRange(all.map(line)) ?? []).filter((x) => (x.autoHeight ?? 0) > stored[x.row]);
|
|
104
|
+
const keep = all.filter((r) => !grow.some((x) => x.row === r));
|
|
105
|
+
if (keep.length) auto(keep, was);
|
|
106
|
+
if (grow.length) commands.syncExecuteCommand(SetWorksheetRowAutoHeightMutation.id, { unitId, subUnitId, rowsAutoHeightInfo: grow }, { onlyLocal: true });
|
|
107
|
+
}
|
|
108
|
+
}
|
|
85
109
|
function marks({ univer, univerAPI: api }) {
|
|
86
110
|
const service = univer.__getInjector().get(IMarkSelectionService);
|
|
87
111
|
let list = [];
|
|
@@ -109,7 +133,8 @@ function marks({ univer, univerAPI: api }) {
|
|
|
109
133
|
}
|
|
110
134
|
export {
|
|
111
135
|
bolder,
|
|
136
|
+
fit,
|
|
112
137
|
grid,
|
|
113
138
|
marks
|
|
114
139
|
};
|
|
115
|
-
//# sourceMappingURL=grid-
|
|
140
|
+
//# sourceMappingURL=grid-7OGS3FPU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sheets/grid.ts","../src/sheets/calm.ts"],"sourcesContent":["import '@univerjs/preset-sheets-core/lib/index.css';\nimport '@univerjs/preset-sheets-sort/lib/index.css';\nimport '@univerjs/preset-sheets-filter/lib/index.css';\nimport '@univerjs/preset-sheets-find-replace/lib/index.css';\nimport '@univerjs/preset-sheets-data-validation/lib/index.css';\nimport '@univerjs/preset-sheets-note/lib/index.css';\nimport { createUniver, LocaleType, mergeLocales, purpleTheme } from '@univerjs/presets';\nimport { ICommandService, IUniverInstanceService, WrapStrategy, type Injector, type Workbook } from '@univerjs/core';\nimport { CalculationMode, IMarkSelectionService, IRenderManagerService, SelectionControl, SetWorksheetRowAutoHeightMutation, SetWorksheetRowIsAutoHeightMutation, SheetSkeletonManagerService, UniverSheetsCorePreset } from '@univerjs/preset-sheets-core';\nimport { UniverSheetsDataValidationPreset } from '@univerjs/preset-sheets-data-validation';\nimport { UniverSheetsFilterPreset } from '@univerjs/preset-sheets-filter';\nimport { UniverSheetsFindReplacePreset } from '@univerjs/preset-sheets-find-replace';\nimport { UniverSheetsNotePreset } from '@univerjs/preset-sheets-note';\nimport { UniverSheetsSortPreset } from '@univerjs/preset-sheets-sort';\nimport coreEn from '@univerjs/preset-sheets-core/locales/en-US';\nimport corePl from '@univerjs/preset-sheets-core/locales/pl-PL';\nimport checkEn from '@univerjs/preset-sheets-data-validation/locales/en-US';\nimport checkPl from '@univerjs/preset-sheets-data-validation/locales/pl-PL';\nimport filterEn from '@univerjs/preset-sheets-filter/locales/en-US';\nimport filterPl from '@univerjs/preset-sheets-filter/locales/pl-PL';\nimport findEn from '@univerjs/preset-sheets-find-replace/locales/en-US';\nimport findPl from '@univerjs/preset-sheets-find-replace/locales/pl-PL';\nimport noteEn from '@univerjs/preset-sheets-note/locales/en-US';\nimport notePl from '@univerjs/preset-sheets-note/locales/pl-PL';\nimport sortEn from '@univerjs/preset-sheets-sort/locales/en-US';\nimport sortPl from '@univerjs/preset-sheets-sort/locales/pl-PL';\nimport type { Language } from '../types';\nimport { bolder, calm } from './calm';\nimport { box } from './refs';\n\nexport type Mark = { sheet: string; range: string; color: string };\n\nconst draw = SelectionControl.prototype.updateRangeBySelectionWithCoord;\n// Univer draws eight resize handles on every formula reference and offers no option to turn them off.\nSelectionControl.prototype.updateRangeBySelectionWithCoord = function (selection, ...rest) { draw.call(this, calm(selection), ...rest); };\n\nexport function grid(container: HTMLElement, language: Language, edit: boolean) {\n return createUniver({\n locale: language === 'pl' ? LocaleType.PL_PL : LocaleType.EN_US,\n locales: {\n [LocaleType.EN_US]: mergeLocales(coreEn, checkEn, filterEn, findEn, noteEn, sortEn),\n [LocaleType.PL_PL]: mergeLocales(corePl, checkPl, filterPl, findPl, notePl, sortPl),\n },\n theme: { ...purpleTheme, 'loop-color': { 1: 'blue.500', 2: 'red.500', 3: 'green.600', 4: 'orange.500', 5: 'purple.500', 6: 'jiqing.600', 7: 'pink.500', 8: 'yellow.700', 9: 'indigo.600', 10: 'red.700', 11: 'green.800', 12: 'blue.800' } },\n darkMode: false,\n presets: [\n UniverSheetsCorePreset({\n container, toolbar: false, formulaBar: true, contextMenu: true, disableAutoFocus: true,\n footer: { sheetBar: true, statisticBar: true, menus: edit, zoomSlider: true, addSheetButtonConfig: { show: edit } },\n formula: { initialFormulaComputing: CalculationMode.WHEN_EMPTY },\n }),\n UniverSheetsSortPreset(),\n UniverSheetsFilterPreset(),\n UniverSheetsFindReplacePreset(),\n UniverSheetsDataValidationPreset(),\n UniverSheetsNotePreset(),\n ],\n });\n}\n\nexport function fit(injector: Injector, unitId: string) {\n const book = injector.get(IUniverInstanceService).getUnit<Workbook>(unitId);\n const skeletons = injector.get(IRenderManagerService).getRenderUnitById(unitId)?.with(SheetSkeletonManagerService);\n if (!book || !skeletons) return;\n const commands = injector.get(ICommandService);\n for (const sheet of book.getSheets()) {\n const rows = new Set<number>();\n sheet.getCellMatrix().forValue((r, _, cell) => { if (book.getStyles().getStyleByCell(cell)?.tb === WrapStrategy.WRAP) rows.add(r); });\n if (!rows.size) continue;\n const subUnitId = sheet.getSheetId(), last = sheet.getMaxColumns() - 1, all = [...rows];\n const line = (r: number) => ({ startRow: r, endRow: r, startColumn: 0, endColumn: last });\n const was = Object.fromEntries(all.map(r => [r, sheet.getConfig().rowData[r]?.ia ?? null]));\n const stored = Object.fromEntries(all.map(r => [r, sheet.getRowHeight(r)]));\n const auto = (list: number[], info: number | Record<number, number | null>) => commands.syncExecuteCommand(SetWorksheetRowIsAutoHeightMutation.id, { unitId, subUnitId, ranges: list.map(line), autoHeightInfo: info }, { onlyLocal: true });\n auto(all, 1);\n const grow = (skeletons.ensureSkeleton(subUnitId)?.calculateAutoHeightInRange(all.map(line)) ?? []).filter(x => (x.autoHeight ?? 0) > stored[x.row]);\n const keep = all.filter(r => !grow.some(x => x.row === r));\n if (keep.length) auto(keep, was);\n if (grow.length) commands.syncExecuteCommand(SetWorksheetRowAutoHeightMutation.id, { unitId, subUnitId, rowsAutoHeightInfo: grow }, { onlyLocal: true });\n }\n}\n\nexport { bolder };\n\nexport function marks({ univer, univerAPI: api }: ReturnType<typeof grid>) {\n const service = univer.__getInjector().get(IMarkSelectionService);\n let list: Mark[] = [];\n let ids: string[] = [];\n const draw = () => {\n ids.forEach(id => service.removeShape(id));\n const sid = api.getActiveWorkbook()?.getActiveSheet().getSheetId();\n ids = list.filter(m => m.sheet === sid).flatMap(m => {\n const b = box(m.range);\n const id = b && service.addShape({ range: b, primary: null, style: { stroke: m.color, fill: `${m.color}1f`, strokeWidth: 2, widgets: {} } }, [], 1000);\n return id ? [id] : [];\n });\n };\n const turn = api.addEvent(api.Event.ActiveSheetChanged, draw);\n return {\n show: (next: Mark[]) => { list = next; draw(); },\n dispose: () => { turn.dispose(); ids.forEach(id => service.removeShape(id)); },\n };\n}\n","import { ICommandService, ThemeService, type Injector } from '@univerjs/core';\n\ntype Style = { widgets?: object; strokeWidth?: number; stroke?: string; fill?: string };\ntype Run = { ts?: { cl?: { rgb?: string | null } | null; bl?: number } };\n\nconst pale = (color: string) => /^#[0-9a-f]{6}$/i.test(color) ? `${color}24` : color.replace(/^rgb\\(([^)]+)\\)$/i, 'rgba($1, 0.14)');\n\nexport const calm = <T extends { style?: Style | null | void }>(selection: T): T => {\n const style = selection.style;\n if (!style?.widgets || !Object.values(style.widgets).some(Boolean)) return selection;\n return { ...selection, style: { ...style, widgets: {}, strokeWidth: 3, fill: style.stroke ? pale(style.stroke) : style.fill } };\n};\n\nexport function bolder(injector: Injector) {\n const theme = injector.get(ThemeService);\n const tone = (color: string) => theme.isValidThemeColor(color) ? theme.getColorFromTheme(color) : color;\n const refs = new Set(Array.from({ length: 12 }, (_, i) => tone(theme.getColorFromTheme(`loop-color.${i + 1}`))));\n return injector.get(ICommandService).beforeCommandExecuted(({ id, params }) => {\n if (id !== 'doc.command.replace-text-runs') return;\n (params as { body?: { textRuns?: Run[] } } | undefined)?.body?.textRuns?.forEach(run => {\n if (run.ts?.cl?.rgb && refs.has(run.ts.cl.rgb)) run.ts.bl = 1;\n });\n });\n}\n"],"mappings":"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","names":["ICommandService","ICommandService","draw"]}
|