@fileverse-dev/dsheet 2.1.0-remove → 2.1.0-shortcut-2

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/index.d.ts CHANGED
@@ -15,5 +15,5 @@ export { handleExportToCSV } from './editor/utils/csv-export';
15
15
  export { handleExportToJSON } from './editor/utils/json-export';
16
16
  export { useXLSXImport } from './editor/hooks/use-xlsx-import';
17
17
  export * as FortuneCore from './sheet-engine/core';
18
- export { createFilter, clearFilter, handleSort, getRemoveDuplicatesPreview, removeDuplicates, getRemoveDuplicatesErrorMessage, handleCopy, handlePasteByClick, removeActiveImage, jfrefreshgrid, deleteSelectedCellText, deleteRowCol, getFlowdata, updateFormat, handleTextSize, handleHorizontalAlign, handleVerticalAlign, toolbarItemClickHandler, getSheetIndex, handleMerge, clearSelectedCellFormat, clearColumnsCellsFormat, clearRowsCellsFormat, handleFreeze, insertRowCol, showImgChooser, handleLink, api, } from './sheet-engine/core';
18
+ export { createFilter, clearFilter, handleSort, handleCopy, handlePasteByClick, removeActiveImage, jfrefreshgrid, deleteSelectedCellText, deleteRowCol, getFlowdata, updateFormat, handleTextSize, handleHorizontalAlign, handleVerticalAlign, toolbarItemClickHandler, getSheetIndex, handleMerge, clearSelectedCellFormat, clearColumnsCellsFormat, clearRowsCellsFormat, handleFreeze, insertRowCol, showImgChooser, handleLink, api, describeMatchedShortcut, isFormulaListShortcut, isOpenShortcutsModalShortcut, isZoomInShortcut, isZoomOutShortcut, } from './sheet-engine/core';
19
19
  export type { PatchOptions } from './sheet-engine/core';
package/dist/index.es.js CHANGED
@@ -1,49 +1,51 @@
1
- import { S as s, a as l, i as o, T as r, b as t, d as n, e as d, g as i, f as S, h as c, j as h, k as m, l as p, n as C, o as E, p as g, q as x, r as F, s as u, t as R, u as f, v as A, w as L, x as T, z as v, A as w, B as I, C as b } from "./index-B0KT8Bdl.js";
2
- import { bM as D, bN as M, bO as V, ar as z, bc as P, e as X, f as _, h as j, a as y, cc as O, aq as U, cj as q } from "./executeStringFunction-B0p00aYv.js";
3
- import { FLVURL as G } from "@fileverse-dev/formulajs";
4
- import { E as N, S as J } from "./constants-yStXQJiK.js";
1
+ import { S as s, a as o, i as t, T as l, b as r, d as n, e as d, f as S, h, g as c, j as i, k as m, l as u, n as C, o as p, p as E, q as F, r as x, s as g, t as f, u as R, v as L, w as b, x as A, z as I, A as T, B as w, C as V, D as k, E as M } from "./index-llRXqdgK.js";
2
+ import { bP as O, bQ as P, bR as X, bV as _, bg as v, e as y, f as D, h as U, a as j, cf as q, aq as B, cm as G } from "./executeStringFunction-tdvZ0KTi.js";
3
+ import { FLVURL as Z } from "@fileverse-dev/formulajs";
4
+ import { E as K, S as N } from "./constants-yStXQJiK.js";
5
5
  export {
6
6
  s as DSheetEditor,
7
- l as DSheetSkeleton,
8
- N as ERROR_MESSAGES_FLAG,
9
- G as FLVURL,
10
- o as FortuneCore,
11
- J as SERVICES_API_KEY,
12
- r as TEMPLATES,
13
- t as api,
14
- D as clearColumnsCellsFormat,
7
+ o as DSheetSkeleton,
8
+ K as ERROR_MESSAGES_FLAG,
9
+ Z as FLVURL,
10
+ t as FortuneCore,
11
+ N as SERVICES_API_KEY,
12
+ l as TEMPLATES,
13
+ r as api,
14
+ O as clearColumnsCellsFormat,
15
15
  n as clearFilter,
16
- M as clearRowsCellsFormat,
17
- V as clearSelectedCellFormat,
16
+ P as clearRowsCellsFormat,
17
+ X as clearSelectedCellFormat,
18
18
  d as createFilter,
19
- z as deleteRowCol,
20
- P as deleteSelectedCellText,
21
- X as executeStringFunction,
22
- _ as formulaResponseUiSync,
23
- j as getFlowdata,
24
- i as getRemoveDuplicatesErrorMessage,
25
- S as getRemoveDuplicatesPreview,
26
- y as getSheetIndex,
27
- c as handleCSVUpload,
28
- h as handleCopy,
29
- m as handleExportToCSV,
30
- p as handleExportToJSON,
31
- C as handleExportToXLSX,
32
- E as handleFreeze,
33
- g as handleHorizontalAlign,
34
- x as handleLink,
19
+ _ as deleteRowCol,
20
+ v as deleteSelectedCellText,
21
+ S as describeMatchedShortcut,
22
+ y as executeStringFunction,
23
+ D as formulaResponseUiSync,
24
+ U as getFlowdata,
25
+ j as getSheetIndex,
26
+ h as handleCSVUpload,
27
+ c as handleCopy,
28
+ i as handleExportToCSV,
29
+ m as handleExportToJSON,
30
+ u as handleExportToXLSX,
31
+ C as handleFreeze,
32
+ p as handleHorizontalAlign,
33
+ E as handleLink,
35
34
  F as handleMerge,
36
- u as handlePasteByClick,
37
- R as handleSort,
35
+ x as handlePasteByClick,
36
+ g as handleSort,
38
37
  f as handleTextSize,
39
- A as handleVerticalAlign,
40
- O as insertRowCol,
41
- U as jfrefreshgrid,
42
- q as loadLocale,
43
- L as removeActiveImage,
44
- T as removeDuplicates,
45
- v as showImgChooser,
46
- w as toolbarItemClickHandler,
47
- I as updateFormat,
48
- b as useXLSXImport
38
+ R as handleVerticalAlign,
39
+ q as insertRowCol,
40
+ L as isFormulaListShortcut,
41
+ b as isOpenShortcutsModalShortcut,
42
+ A as isZoomInShortcut,
43
+ I as isZoomOutShortcut,
44
+ B as jfrefreshgrid,
45
+ G as loadLocale,
46
+ T as removeActiveImage,
47
+ w as showImgChooser,
48
+ V as toolbarItemClickHandler,
49
+ k as updateFormat,
50
+ M as useXLSXImport
49
51
  };
@@ -1,4 +1,5 @@
1
1
  export { handleCopy } from './copy';
2
2
  export { handleGlobalKeyDown } from './keyboard';
3
+ export { describeMatchedShortcut, isOpenShortcutsModalShortcut, isFormulaListShortcut, isZoomInShortcut, isZoomOutShortcut, } from './keyboard-shortcut-utils';
3
4
  export { fixPositionOnFrozenCells, handleCellAreaMouseDown, handleCellAreaDoubleClick, handleContextMenu, mouseRender, handleOverlayMouseMove, handleOverlayMouseUp, handleRowHeaderMouseDown, handleColumnHeaderMouseDown, handleColSizeHandleMouseDown, handleColSizeHandleDoubleClick, handleRowSizeHandleMouseDown, handleColFreezeHandleMouseDown, handleRowFreezeHandleMouseDown, } from './mouse';
4
5
  export { handlePaste, handlePasteByClick } from './paste';
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Google Sheets–style keyboard matchers.
3
+ * - Letters / digits / F-keys: physical `code`
4
+ * - Punctuation (docs show characters): `code` + `key` + modifiers
5
+ */
6
+ export declare function hasMod(e: KeyboardEvent): boolean;
7
+ /**
8
+ * Insert date — Cmd/Ctrl+; (Google Sheets).
9
+ * Match on typed `;` character (AZERTY often uses Shift+, → code Comma).
10
+ * US QWERTY: physical Semicolon key without shift.
11
+ */
12
+ export declare function isInsertDateShortcut(e: KeyboardEvent): boolean;
13
+ /**
14
+ * Insert time — Cmd/Ctrl+Shift+; (Google Sheets).
15
+ * US QWERTY: Shift+; → key ":" code Semicolon.
16
+ * AZERTY (runtime): Cmd+Shift+; → code Comma with key "." or ","; Cmd+Shift+. → code Period with key "/" or ".".
17
+ */
18
+ export declare function isInsertTimeShortcut(e: KeyboardEvent): boolean;
19
+ /** Google Mac: ⌘+Option+Shift+; — insert date and time (AZERTY-safe). */
20
+ export declare function isInsertDateTimeShortcut(e: KeyboardEvent): boolean;
21
+ /**
22
+ * US / EU: Cmd/Ctrl+Shift+" — insert date and time.
23
+ * Mac AZERTY: `"` is Shift+3, but ⌘+Shift+3 is macOS screenshot (never reaches the page).
24
+ * Use ⌘+Option+Shift+3/; or Ctrl+Shift+3 instead (Google Mac alternates).
25
+ */
26
+ export declare function isUsInsertDateTimeQuoteShortcut(e: KeyboardEvent): boolean;
27
+ export declare function isPlainTextFormatShortcut(e: KeyboardEvent): boolean;
28
+ /**
29
+ * Strikethrough — Google Sheets:
30
+ * Mac: Cmd+Shift+X, Ctrl+Option+Shift+5
31
+ * Win: Alt+Shift+5, Ctrl+Shift+X
32
+ */
33
+ export declare function isStrikethroughShortcut(e: KeyboardEvent): boolean;
34
+ /** Google / dSheets: Cmd+Option+M (Mac), Ctrl+Alt+M (Win). AZERTY M-key slot. */
35
+ export declare function isInsertCommentShortcut(e: KeyboardEvent): boolean;
36
+ /** Google Sheets: Cmd/Ctrl+A — select all. AZERTY types "a" on physical KeyQ. */
37
+ export declare function isSelectAllShortcut(e: KeyboardEvent): boolean;
38
+ /**
39
+ * Number formats — Google Mac: Ctrl+Shift+1–6; also Cmd/Ctrl+Shift+1–6.
40
+ */
41
+ export declare function isNumberFormatModifier(e: KeyboardEvent): boolean;
42
+ export declare function isDigitFormatKey(e: KeyboardEvent, digit: string): boolean;
43
+ /**
44
+ * Formula list — Ctrl/Cmd+) (Google Sheets).
45
+ * US: Shift+0 → ")"; AZERTY: Shift+5 → ")" (code Digit5, often Equal-adjacent noise).
46
+ */
47
+ export declare function isFormulaListShortcut(e: KeyboardEvent): boolean;
48
+ export declare function isFindShortcut(e: KeyboardEvent): boolean;
49
+ export declare function isFindReplaceShortcut(e: KeyboardEvent): boolean;
50
+ export declare function isZoomInShortcut(e: KeyboardEvent): boolean;
51
+ export declare function isZoomOutShortcut(e: KeyboardEvent): boolean;
52
+ /**
53
+ * Open shortcuts modal — Ctrl/Cmd+/ (Google Sheets).
54
+ * AZERTY Mac: `/` is Shift+7; must not overlap zoom (+/=) or formula list `)`.
55
+ */
56
+ export declare function isOpenShortcutsModalShortcut(e: KeyboardEvent): boolean;
57
+ /** Label which engine shortcut would match (best-effort; for host debug tooling). */
58
+ export declare function describeMatchedShortcut(e: KeyboardEvent): string | null;
@@ -0,0 +1,7 @@
1
+ import { Context } from '../context';
2
+ import { GlobalCache } from '../types';
3
+
4
+ /**
5
+ * TEC-2311 shortcuts v2 — returns true when the event was handled.
6
+ */
7
+ export declare function handleShortcutsV2(ctx: Context, cellInput: HTMLDivElement, e: KeyboardEvent, cache: GlobalCache, canvas?: CanvasRenderingContext2D): boolean;
@@ -5,13 +5,12 @@ export { defaultContext, getFlowdata, ensureSheetIndex, initSheetIndex, updateCo
5
5
  export type { Context } from './context';
6
6
  export { defaultSettings } from './settings';
7
7
  export type { Settings, Hooks, DateBaseLocale } from './settings';
8
- export { handleCopy, handleGlobalKeyDown, handlePaste, handlePasteByClick, fixPositionOnFrozenCells, handleCellAreaMouseDown, handleCellAreaDoubleClick, handleContextMenu, mouseRender, handleOverlayMouseMove, handleOverlayMouseUp, handleRowHeaderMouseDown, handleColumnHeaderMouseDown, handleColSizeHandleMouseDown, handleColSizeHandleDoubleClick, handleRowSizeHandleMouseDown, handleColFreezeHandleMouseDown, handleRowFreezeHandleMouseDown, } from './events';
8
+ export { handleCopy, handleGlobalKeyDown, handlePaste, handlePasteByClick, fixPositionOnFrozenCells, handleCellAreaMouseDown, handleCellAreaDoubleClick, handleContextMenu, mouseRender, handleOverlayMouseMove, handleOverlayMouseUp, handleRowHeaderMouseDown, handleColumnHeaderMouseDown, handleColSizeHandleMouseDown, handleColSizeHandleDoubleClick, handleRowSizeHandleMouseDown, handleColFreezeHandleMouseDown, handleRowFreezeHandleMouseDown, describeMatchedShortcut, isOpenShortcutsModalShortcut, isFormulaListShortcut, isZoomInShortcut, isZoomOutShortcut, } from './events';
9
9
  export * from './locale';
10
- export { getBorderInfoComputeRange, getBorderInfoCompute, normalizedCellAttr, normalizedAttr, getCellValue, setCellValue, getRealCellValue, mergeBorder, cancelNormalSelected, updateCell, getRangetxt, getRangeByTxt, isValidRangeText, getInlineStringHTML, applyLinkToSelection, getHyperlinksFromInlineSegments, getUniformLinkFromWindowSelectionInEditor, getHyperlinkAtCaretInContentEditable, getStyleByCell, clearSelectedCellFormat, clearRowsCellsFormat, clearColumnsCellsFormat, clipboard, moveToEnd, getRangeRectsByCharacterOffset, getDateBaseLocale, getCanonicalDateEditFormat, getDateEditFormatForCell, isUsDateBaseLocale, normalizeDateBaseLocale, shouldPreserveDateFormatForEdit, setDateBaseLocale, update, is_date, valueShowEs, isTypedCurrencyDisplayFormat, isCurrencyLikeNumberFormat, buildFiatCurrencyFormat, quoteSsfLiteral, FormulaCache, groupValuesRefresh, execFunctionGroup, setCaretPosition, getrangeseleciton, getFormulaEditorOwner, rangeHightlightselected, handleFormulaInput, israngeseleciton, createRangeHightlight, maybeRecoverDirtyRangeSelection, getFormulaRangeIndexAtCaret, isCaretAtValidFormulaRangeInsertionPoint, isLegacyFormulaRangeMode, markRangeSelectionDirty, setFormulaEditorOwner, functionHTMLGenerate, suppressFormulaRangeSelectionForInitialEdit, rangeSetValue, getFormulaRangeIndexForKeyboardSync, createFormulaRangeSelect, isFormulaReferenceInputMode, seedFormulaFuncSelectedRangeFromLastSelection, initFreeze, isInlineStringCell, getInlineStringNoStyle, rowLocation, rowLocationByIndex, colLocation, colLocationByIndex, insertRowCol, deleteRowCol, hideSelected, showSelected, isShowHidenCR, getFilterHiddenRowsUnionFromFilterMap, getFilterHiddenRowsUnion, ensureManualHiddenInitialized, rebuildRowHiddenUnion, scrollToHighlightCell, selectTitlesMap, selectTitlesRange, defaultLuckysheetSelectRanges, normalizeSelection, syncPrimaryCellActiveFromSelection, selectionIsExactlyOneMergeBlock, setPrimaryCellActive, advancePrimaryCellInLastMultiSelection, snapSheetSelectionFocusToCellPreserveMultiRange, moveHighlightCell, deleteSelectedCellText, selectAll, fixRowStyleOverflowInFreeze, fixColumnStyleOverflowInFreeze, calcSelectionInfo, addSheet, deleteSheet, editSheetName, changeSheet, updateFormat, autoSelectionFormula, handleBold, handleItalic, handleStrikeThrough, handleUnderline, handleHorizontalAlign, handleVerticalAlign, handleTextColor, handleTextBackground, handleBorder, handleMerge, mergeSelectionHasValues, handleSort, getRemoveDuplicatesPreview, removeDuplicates, getRemoveDuplicatesErrorMessage, handleFreeze, handleTextSize, handleSum, handleLink, captureLinkEditorOpenSnapshot, isHyperlinkCreationBlocked, toolbarItemClickHandler, toolbarItemSelectedFunc, handleScreenShot, insertImage, showImgChooser, drawArrow, setEditingComment, removeEditingComment, removeOverShowComment, newComment, editComment, deleteComment, showComments, showHideComment, showHideAllComments, onCommentBoxMoveStart, removeActiveImage, cancelActiveImgItem, onImageMoveStart, onImageResizeStart, createDropCellRange, sortSelection, sortSheetBySelectedColumn, searchAll, searchNext, replace, replaceAll, replaceAllScoped, getSearchIndexArr, getSearchIndexArrAsync, getFindRangeOnCurrentSheet, getQuickSearchIndexArr, getQuickSearchHiddenConfig, getCellHyperlinks, getHyperlinkDisplayTextInCell, getInlineLinkPlainRange, getUniformLinkCoveringPlainRange, getUniformLinkAtPlainOffset, removeHyperlinkForLink, updateHyperlinkForLink, syncLinkCardAfterHyperlinkChange, expandCellRectForMerge, shouldQuickSearchUseAsync, runQuickSearchIndexArrAsync, QUICK_SEARCH_ASYNC_ROW_THRESHOLD, parseRangeText, getCellRowColumn, getCellHyperlink, saveHyperlink, removeHyperlink, showLinkCard, goToLink, isLinkValid, createFilterOptions, clearFilter, clearFilterForColumn, toggleViewerFilter, createFilter, applySheetFilterState, getFilterColumnValues, getFilterColumnColors, orderbydatafiler, saveFilter, onCellsMoveStart, cfSplitRange, updateMoreCell, getRegStr, getDataArr, applyLocation, getOptionValue, getSelectRange, getDropdownList, setDropdownValue, confirmMessage, setConditionRules, CF_DATE_DEFAULT_FORMAT, parseCfDateConditionForUi, formatCfDatePresetSnapshot, parseDdMmYyyyToSerial, handleOverlayTouchStart, handleOverlayTouchEnd, MAX_ZOOM_RATIO, MIN_ZOOM_RATIO, handleKeydownForZoom, jfrefreshgrid, sanitizeDuneUrl, insertDuneChart, onIframeMoveStart, onIframeResizeStart, onIframeMove, onIframeMoveEnd, onIframeResize, onIframeResizeEnd, setCellError, clearCellError, detectDateFormat, isdatatypemulti, diff, isdatetime, isRealNull, isRealNum, isNumericCellType, iscelldata, getcellrange, cancelFunctionrangeSelected, seletedHighlistByindex, spillSortResult, execfunction, insertUpdateFunctionGroup, remapFormulaReferencesByMap, checkCF, getComputeMap, cancelPaintModel, hideCRCount, getdatabyselection, } from './modules';
10
+ export { getBorderInfoComputeRange, getBorderInfoCompute, normalizedCellAttr, normalizedAttr, getCellValue, setCellValue, getRealCellValue, mergeBorder, cancelNormalSelected, updateCell, getRangetxt, getRangeByTxt, isValidRangeText, getInlineStringHTML, applyLinkToSelection, getHyperlinksFromInlineSegments, getUniformLinkFromWindowSelectionInEditor, getHyperlinkAtCaretInContentEditable, getStyleByCell, clearSelectedCellFormat, clearRowsCellsFormat, clearColumnsCellsFormat, clipboard, moveToEnd, getRangeRectsByCharacterOffset, getDateBaseLocale, getCanonicalDateEditFormat, getDateEditFormatForCell, isUsDateBaseLocale, normalizeDateBaseLocale, shouldPreserveDateFormatForEdit, setDateBaseLocale, update, is_date, valueShowEs, isTypedCurrencyDisplayFormat, isCurrencyLikeNumberFormat, buildFiatCurrencyFormat, quoteSsfLiteral, FormulaCache, groupValuesRefresh, execFunctionGroup, setCaretPosition, getrangeseleciton, getFormulaEditorOwner, rangeHightlightselected, handleFormulaInput, israngeseleciton, createRangeHightlight, maybeRecoverDirtyRangeSelection, getFormulaRangeIndexAtCaret, isCaretAtValidFormulaRangeInsertionPoint, isLegacyFormulaRangeMode, markRangeSelectionDirty, setFormulaEditorOwner, functionHTMLGenerate, suppressFormulaRangeSelectionForInitialEdit, rangeSetValue, getFormulaRangeIndexForKeyboardSync, createFormulaRangeSelect, isFormulaReferenceInputMode, seedFormulaFuncSelectedRangeFromLastSelection, initFreeze, isInlineStringCell, getInlineStringNoStyle, rowLocation, rowLocationByIndex, colLocation, colLocationByIndex, insertRowCol, deleteRowCol, hideSelected, showSelected, isShowHidenCR, getFilterHiddenRowsUnionFromFilterMap, getFilterHiddenRowsUnion, ensureManualHiddenInitialized, rebuildRowHiddenUnion, scrollToHighlightCell, selectTitlesMap, selectTitlesRange, defaultLuckysheetSelectRanges, normalizeSelection, syncPrimaryCellActiveFromSelection, selectionIsExactlyOneMergeBlock, setPrimaryCellActive, advancePrimaryCellInLastMultiSelection, snapSheetSelectionFocusToCellPreserveMultiRange, moveHighlightCell, deleteSelectedCellText, selectAll, fixRowStyleOverflowInFreeze, fixColumnStyleOverflowInFreeze, calcSelectionInfo, addSheet, deleteSheet, editSheetName, changeSheet, updateFormat, autoSelectionFormula, handleBold, handleItalic, handleStrikeThrough, handleUnderline, handleHorizontalAlign, handleVerticalAlign, handleTextColor, handleTextBackground, handleBorder, handleMerge, mergeSelectionHasValues, handleSort, handleFreeze, handleTextSize, handleSum, handleLink, captureLinkEditorOpenSnapshot, isHyperlinkCreationBlocked, toolbarItemClickHandler, toolbarItemSelectedFunc, handleScreenShot, insertImage, showImgChooser, drawArrow, setEditingComment, removeEditingComment, removeOverShowComment, newComment, editComment, deleteComment, showComments, showHideComment, showHideAllComments, onCommentBoxMoveStart, removeActiveImage, cancelActiveImgItem, onImageMoveStart, onImageResizeStart, createDropCellRange, sortSelection, sortSheetBySelectedColumn, searchAll, searchNext, replace, replaceAll, replaceAllScoped, getSearchIndexArr, getSearchIndexArrAsync, getFindRangeOnCurrentSheet, getQuickSearchIndexArr, getQuickSearchHiddenConfig, getCellHyperlinks, getHyperlinkDisplayTextInCell, getInlineLinkPlainRange, getUniformLinkCoveringPlainRange, getUniformLinkAtPlainOffset, removeHyperlinkForLink, updateHyperlinkForLink, syncLinkCardAfterHyperlinkChange, expandCellRectForMerge, shouldQuickSearchUseAsync, runQuickSearchIndexArrAsync, QUICK_SEARCH_ASYNC_ROW_THRESHOLD, parseRangeText, getCellRowColumn, getCellHyperlink, saveHyperlink, removeHyperlink, showLinkCard, goToLink, isLinkValid, createFilterOptions, clearFilter, clearFilterForColumn, toggleViewerFilter, createFilter, applySheetFilterState, getFilterColumnValues, getFilterColumnColors, orderbydatafiler, saveFilter, onCellsMoveStart, cfSplitRange, updateMoreCell, getRegStr, getDataArr, applyLocation, getOptionValue, getSelectRange, getDropdownList, setDropdownValue, confirmMessage, setConditionRules, CF_DATE_DEFAULT_FORMAT, parseCfDateConditionForUi, formatCfDatePresetSnapshot, parseDdMmYyyyToSerial, handleOverlayTouchStart, handleOverlayTouchEnd, MAX_ZOOM_RATIO, MIN_ZOOM_RATIO, handleKeydownForZoom, jfrefreshgrid, sanitizeDuneUrl, insertDuneChart, onIframeMoveStart, onIframeResizeStart, onIframeMove, onIframeMoveEnd, onIframeResize, onIframeResizeEnd, setCellError, clearCellError, detectDateFormat, isdatatypemulti, diff, isdatetime, isRealNull, isRealNum, isNumericCellType, iscelldata, getcellrange, cancelFunctionrangeSelected, seletedHighlistByindex, spillSortResult, execfunction, insertUpdateFunctionGroup, remapFormulaReferencesByMap, checkCF, getComputeMap, cancelPaintModel, hideCRCount, getdatabyselection, } from './modules';
11
11
  export type { FilterDate, FilterValue, FilterColor } from './modules';
12
12
  export { getFreezeState, toggleFreeze, indexToColumnChar, escapeScriptTag, escapeHTMLTag, getSheetIndex, replaceHtml, isAllowEdit, isAllowEditReadOnly, filterPatch, patchToOp, opToPatch, inverseRowColOptions, } from './utils';
13
13
  export type { PatchOptions, ChangedSheet } from './utils';
14
14
  export type { Op, Cell, CellWithRowAndCol, CellMatrix, HyperlinkEntry, Selection, Presence, Sheet, GlobalCache, SingleRange, Range, SearchResult, LinkCardProps, LiveQueryData, Freezen, } from './types';
15
- export type { RemoveDuplicatesColumnOption, RemoveDuplicatesError, RemoveDuplicatesOptions, RemoveDuplicatesPreview, RemoveDuplicatesResult, } from './modules';
16
15
  export type { CheckModes, HyperlinkMap, FindSearchScope, ReplaceScope, SearchHiddenConfig, SearchNextResult, ReplaceAllResult, } from './modules/searchReplace';
17
16
  export { cellFadeAnimator, markCellChanged } from './animate';
@@ -910,19 +910,6 @@ declare const _default: {
910
910
  allowOptionText: string;
911
911
  selectCategory: string;
912
912
  };
913
- removeDuplicates: {
914
- title: string;
915
- dataHasHeaderRow: string;
916
- columnsToAnalyze: string;
917
- selectAll: string;
918
- removeDuplicates: string;
919
- result: string;
920
- noMulti: string;
921
- noMerge: string;
922
- noColumns: string;
923
- noSelection: string;
924
- readOnly: string;
925
- };
926
913
  drag: {
927
914
  noMerge: string;
928
915
  affectPivot: string;
@@ -18,8 +18,6 @@ export { drawArrow, setEditingComment, removeEditingComment, newComment, editCom
18
18
  export { showImgChooser, insertImage, removeActiveImage, cancelActiveImgItem, onImageMoveStart, onImageResizeStart, onImageMove, onImageMoveEnd, onImageResize, onImageResizeEnd, } from './image';
19
19
  export { createDropCellRange, dropCellCache, getTypeItemHide, updateDropCell, } from './dropCell';
20
20
  export { mergeCells, mergeSelectionHasValues } from './merge';
21
- export { getRemoveDuplicatesPreview, removeDuplicates, getRemoveDuplicatesErrorMessage, } from './removeDuplicates';
22
- export type { RemoveDuplicatesColumnOption, RemoveDuplicatesError, RemoveDuplicatesOptions, RemoveDuplicatesPreview, RemoveDuplicatesResult, } from './removeDuplicates';
23
21
  export { sortSelection, sortSheetBySelectedColumn, spillSortResult, } from './sort';
24
22
  export { searchAll, searchNext, replace, replaceAll, replaceAllScoped, getSearchIndexArr, getSearchIndexArrAsync, getFindRangeOnCurrentSheet, getQuickSearchIndexArr, getQuickSearchHiddenConfig, expandCellRectForMerge, shouldQuickSearchUseAsync, runQuickSearchIndexArrAsync, QUICK_SEARCH_ASYNC_ROW_THRESHOLD, parseRangeText, } from './searchReplace';
25
23
  export type { CheckModes, HyperlinkMap, FindSearchScope, ReplaceScope, SearchHiddenConfig, SearchNextResult, ReplaceAllResult, } from './searchReplace';
@@ -70,6 +70,7 @@ export declare function fillDownData(ctx: Context): string;
70
70
  export declare function textFormat(ctx: Context, type: 'left' | 'center' | 'right'): string;
71
71
  export declare function fillDate(ctx: Context): string;
72
72
  export declare function fillTime(ctx: Context): string;
73
+ export declare function fillDateTime(ctx: Context): string;
73
74
  export declare function selectIsOverlap(ctx: Context, range?: any): boolean;
74
75
  export declare function selectAll(ctx: Context): void;
75
76
  export declare function fixRowStyleOverflowInFreeze(ctx: Context, r1: number, r2: number, freeze: Freezen | undefined): {
@@ -90,4 +91,11 @@ export declare function calcSelectionInfo(ctx: Context): {
90
91
  min: number;
91
92
  average: string;
92
93
  };
94
+ /** Move the active selection focus to an absolute row/column (Home/End navigation). */
95
+ export declare function jumpHighlightCell(ctx: Context, targetRow: number, targetCol: number): void;
96
+ /**
97
+ * Fill every cell in the current selection with the active/focus cell value
98
+ * (Ctrl/Cmd+Enter — same value across the whole selection).
99
+ */
100
+ export declare function fillSelectionWithActiveValue(ctx: Context, cellInput: HTMLDivElement, canvas?: CanvasRenderingContext2D): boolean;
93
101
  export {};
@@ -1,3 +1,4 @@
1
1
  export declare const MAX_ZOOM_RATIO = 4;
2
2
  export declare const MIN_ZOOM_RATIO = 0.1;
3
3
  export declare function handleKeydownForZoom(ev: KeyboardEvent, currentZoom: number): number;
4
+ export declare function applyZoomStep(currentZoom: number, direction: 'in' | 'out' | 'reset'): number;
@@ -1,6 +1,6 @@
1
- import { g as Ue } from "./executeStringFunction-B0p00aYv.js";
1
+ import { g as Ue } from "./executeStringFunction-tdvZ0KTi.js";
2
2
  import * as qe from "yjs";
3
- import { m as Xe, y as Ze } from "./index-B0KT8Bdl.js";
3
+ import { m as Xe, y as Ze } from "./index-llRXqdgK.js";
4
4
  import { n as Je } from "./xlsx-hyperlink-inline-DzewAypN.js";
5
5
  import { toast as Be } from "@fileverse/ui";
6
6
  var We = { exports: {} };
@@ -2,8 +2,8 @@ import { utils as dt, write as Nt } from "xlsx-js-style";
2
2
  import { Workbook as Pt } from "exceljs";
3
3
  import { toast as Ut } from "@fileverse/ui";
4
4
  import { addFortuneImagesToWorksheet as Lt } from "./xlsx-image-utils-Cvg0qxRA.js";
5
- import { g as jt, c as xt } from "./executeStringFunction-B0p00aYv.js";
6
- import { c as Ct } from "./index-B0KT8Bdl.js";
5
+ import { g as jt, c as xt } from "./executeStringFunction-tdvZ0KTi.js";
6
+ import { c as Ct } from "./index-llRXqdgK.js";
7
7
  import { c as zt, g as Wt } from "./xlsx-hyperlink-inline-DzewAypN.js";
8
8
  const Mt = {
9
9
  1: "thin",
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@fileverse-dev/dsheet",
3
3
  "private": false,
4
4
  "description": "DSheet",
5
- "version": "2.1.0-remove",
5
+ "version": "2.1.0-shortcut-2",
6
6
  "main": "dist/index.es.js",
7
7
  "module": "dist/index.es.js",
8
8
  "exports": {
@@ -34,7 +34,8 @@
34
34
  "scripts": {
35
35
  "dev": "vite",
36
36
  "build": "tsc && vite build",
37
- "dev:link": "npm run build && cp -r dist/* ../dsheets.new/node_modules/@fileverse-dev/dsheet/dist/ && echo '✓ Copied to dsheets.new'",
37
+ "build:dist": "vite build",
38
+ "dev:link": "npm run build:dist && cp -r dist/* ../dsheets.new/node_modules/@fileverse-dev/dsheet/dist/ && echo '✓ Copied to dsheets.new'",
38
39
  "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0 --fix",
39
40
  "preview": "vite preview"
40
41
  },
@@ -1,29 +0,0 @@
1
- import { Context, Selection } from '..';
2
-
3
- export type RemoveDuplicatesError = 'readOnly' | 'noSelection' | 'noMulti' | 'noMerge' | 'noColumns' | 'cannotDeleteAllRow';
4
- export type RemoveDuplicatesColumnOption = {
5
- column: number;
6
- label: string;
7
- checked: boolean;
8
- };
9
- export type RemoveDuplicatesPreview = {
10
- range: Selection;
11
- columns: RemoveDuplicatesColumnOption[];
12
- };
13
- export type RemoveDuplicatesOptions = {
14
- hasHeaderRow: boolean;
15
- analyzedColumns: number[];
16
- /** Range captured when the dialog opened; avoids selection drift. */
17
- range?: Selection;
18
- };
19
- export type RemoveDuplicatesResult = {
20
- removedCount: number;
21
- remainingCount: number;
22
- error?: RemoveDuplicatesError;
23
- };
24
- export declare function getRemoveDuplicatesPreview(ctx: Context): {
25
- preview?: RemoveDuplicatesPreview;
26
- error?: RemoveDuplicatesError;
27
- };
28
- export declare function removeDuplicates(ctx: Context, options: RemoveDuplicatesOptions): RemoveDuplicatesResult;
29
- export declare function getRemoveDuplicatesErrorMessage(ctx: Context, error: RemoveDuplicatesError): string;
@@ -1,12 +0,0 @@
1
- import { default as React } from 'react';
2
- import { RemoveDuplicatesPreview } from '../../../core';
3
-
4
- type RemoveDuplicatesDialogProps = {
5
- initialPreview: RemoveDuplicatesPreview;
6
- onClose: () => void;
7
- };
8
- declare const RemoveDuplicatesDialog: React.FC<RemoveDuplicatesDialogProps>;
9
- export declare function useRemoveDuplicatesDialog(): {
10
- openRemoveDuplicatesDialog: () => void;
11
- };
12
- export default RemoveDuplicatesDialog;