@gridsheet/preact-core 3.0.0-rc.2 → 3.0.0-rc.5
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/components/ColumnMenuFilterSection.d.ts +5 -0
- package/dist/components/ColumnMenuLabelSection.d.ts +5 -0
- package/dist/components/ColumnMenuSortSection.d.ts +5 -0
- package/dist/components/ContextMenu.d.ts +0 -19
- package/dist/components/GridSheet.d.ts +6 -4
- package/dist/components/MenuItem.d.ts +18 -0
- package/dist/components/PluginBase.d.ts +2 -2
- package/dist/components/StoreObserver.d.ts +7 -4
- package/dist/constants.d.ts +3 -0
- package/dist/formula/evaluator.d.ts +28 -25
- package/dist/formula/formula-error.d.ts +1 -1
- package/dist/formula/functions/__async.d.ts +9 -9
- package/dist/formula/functions/__base.d.ts +14 -21
- package/dist/formula/functions/__utils.d.ts +2 -2
- package/dist/formula/functions/minus.d.ts +0 -1
- package/dist/formula/solver.d.ts +25 -14
- package/dist/index.d.ts +16 -13
- package/dist/index.js +5115 -4714
- package/dist/index.js.map +1 -1
- package/dist/lib/autofill.d.ts +3 -3
- package/dist/lib/{hub.d.ts → book.d.ts} +28 -27
- package/dist/lib/cell.d.ts +6 -4
- package/dist/lib/clipboard.d.ts +7 -7
- package/dist/lib/coords.d.ts +13 -1
- package/dist/lib/dom.d.ts +5 -0
- package/dist/lib/input.d.ts +2 -2
- package/dist/lib/label.d.ts +4 -0
- package/dist/lib/menu.d.ts +99 -0
- package/dist/lib/popup.d.ts +24 -0
- package/dist/lib/reference.d.ts +10 -4
- package/dist/lib/sheet.d.ts +507 -2
- package/dist/lib/sheet_utils.d.ts +55 -0
- package/dist/lib/spatial.d.ts +5 -20
- package/dist/lib/virtualization.d.ts +4 -4
- package/dist/policy/core.d.ts +13 -13
- package/dist/sentinels.d.ts +3 -2
- package/dist/store/actions.d.ts +3 -3
- package/dist/store/dispatchers.d.ts +38 -34
- package/dist/store/helpers.d.ts +10 -5
- package/dist/styles/minified.d.ts +2 -2
- package/dist/types.d.ts +51 -35
- package/package.json +1 -1
- package/dist/lib/table.d.ts +0 -484
package/dist/policy/core.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FC, ReactNode } from 'react';
|
|
2
2
|
import { CellPatchType, CellType, OperationType, PointType } from '../types';
|
|
3
|
-
import {
|
|
3
|
+
import { Sheet, UserSheet } from '../lib/sheet';
|
|
4
4
|
import { FormulaError } from '../formula/formula-error';
|
|
5
5
|
import { Time } from '../lib/time';
|
|
6
6
|
export type AutocompleteOption = {
|
|
@@ -12,18 +12,18 @@ export type AutocompleteOption = {
|
|
|
12
12
|
}>;
|
|
13
13
|
};
|
|
14
14
|
export type SelectProps = {
|
|
15
|
-
|
|
15
|
+
sheet: UserSheet;
|
|
16
16
|
point: PointType;
|
|
17
17
|
current?: CellType;
|
|
18
18
|
next?: CellType;
|
|
19
19
|
operation: OperationType;
|
|
20
20
|
};
|
|
21
21
|
export type SerializeForClipboardProps = {
|
|
22
|
-
|
|
22
|
+
sheet: UserSheet;
|
|
23
23
|
point: PointType;
|
|
24
24
|
};
|
|
25
25
|
export type SelectFallbackProps = {
|
|
26
|
-
|
|
26
|
+
sheet: UserSheet;
|
|
27
27
|
point: PointType;
|
|
28
28
|
value: any;
|
|
29
29
|
};
|
|
@@ -31,20 +31,20 @@ export type Scalar = string | number | boolean | null | undefined;
|
|
|
31
31
|
export type ScalarProps<T = any> = {
|
|
32
32
|
value?: T;
|
|
33
33
|
cell?: CellType<T>;
|
|
34
|
-
|
|
34
|
+
sheet: Sheet;
|
|
35
35
|
point: PointType;
|
|
36
36
|
};
|
|
37
37
|
export type RenderProps<T = any> = {
|
|
38
|
-
value
|
|
38
|
+
value: T;
|
|
39
39
|
cell?: CellType<T>;
|
|
40
|
-
|
|
40
|
+
sheet: Sheet;
|
|
41
41
|
point: PointType;
|
|
42
|
-
|
|
42
|
+
apply?: (sheet: UserSheet) => void;
|
|
43
43
|
};
|
|
44
44
|
export type SerializeProps<T = any> = {
|
|
45
45
|
value: T;
|
|
46
46
|
cell?: CellType<T>;
|
|
47
|
-
|
|
47
|
+
sheet: Sheet;
|
|
48
48
|
point: PointType;
|
|
49
49
|
};
|
|
50
50
|
export type PolicyMixinType = {
|
|
@@ -62,7 +62,7 @@ export type PolicyMixinType = {
|
|
|
62
62
|
renderArray?: (props: RenderProps<any[]>) => any;
|
|
63
63
|
renderObject?: (props: RenderProps<any>) => any;
|
|
64
64
|
renderNull?: (props: RenderProps<null | undefined>) => any;
|
|
65
|
-
|
|
65
|
+
renderSheet?: (props: RenderProps<UserSheet>) => any;
|
|
66
66
|
renderRowHeaderLabel?: (n: number) => string | null;
|
|
67
67
|
renderColHeaderLabel?: (n: number) => string | null;
|
|
68
68
|
serialize?: (props: SerializeProps) => string;
|
|
@@ -123,7 +123,7 @@ export declare class Policy implements PolicyMixinType {
|
|
|
123
123
|
renderArray(props: RenderProps<any[]>): any;
|
|
124
124
|
renderObject({ value }: RenderProps<any>): any;
|
|
125
125
|
renderNull(_props: RenderProps<null | undefined>): any;
|
|
126
|
-
|
|
126
|
+
renderSheet({ value: childSheet, ...rest }: RenderProps<UserSheet>): any;
|
|
127
127
|
renderRowHeaderLabel(_n: number): string | null;
|
|
128
128
|
renderColHeaderLabel(_n: number): string | null;
|
|
129
129
|
toScalar(props: ScalarProps): Scalar;
|
|
@@ -132,9 +132,9 @@ export declare class Policy implements PolicyMixinType {
|
|
|
132
132
|
toScalarBool({ value }: ScalarProps<boolean>): Scalar;
|
|
133
133
|
toScalarDate({ value }: ScalarProps<Date>): Scalar;
|
|
134
134
|
toScalarTime({ value }: ScalarProps<Time>): Scalar;
|
|
135
|
-
toScalarArray({ value, cell,
|
|
135
|
+
toScalarArray({ value, cell, sheet, point }: ScalarProps<any[]>): Scalar;
|
|
136
136
|
toScalarNull(_props: ScalarProps<null | undefined>): Scalar;
|
|
137
|
-
serialize({ value, cell,
|
|
137
|
+
serialize({ value, cell, sheet, point }: SerializeProps): string;
|
|
138
138
|
serializeString({ value }: SerializeProps<string>): string;
|
|
139
139
|
serializeBool({ value }: SerializeProps<boolean>): string;
|
|
140
140
|
serializeNumber({ value }: SerializeProps<number>): string;
|
package/dist/sentinels.d.ts
CHANGED
|
@@ -26,14 +26,15 @@ export declare class Pending<T = unknown> {
|
|
|
26
26
|
* return new Spilling([[1, 2], [3, 4]]);
|
|
27
27
|
*
|
|
28
28
|
* The solver detects Spilling via `Spilling.is()` and calls
|
|
29
|
-
* `
|
|
29
|
+
* `sheet.spill(origin, result.matrix)` to perform obstruction checks
|
|
30
30
|
* and write values into the solvedCaches.
|
|
31
31
|
*/
|
|
32
32
|
export declare class Spilling {
|
|
33
33
|
readonly __gsType: "Spilling";
|
|
34
34
|
/** The 2D matrix of resolved values. matrix[row][col] */
|
|
35
35
|
readonly matrix: any[][];
|
|
36
|
-
constructor(matrix: any[][]);
|
|
36
|
+
constructor(matrix: any[] | any[][]);
|
|
37
|
+
private ensure2D;
|
|
37
38
|
static is(obj: any): obj is Spilling;
|
|
38
39
|
}
|
|
39
40
|
//# sourceMappingURL=sentinels.d.ts.map
|
package/dist/store/actions.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { StoreType, RectType, ZoneType, PointType, RangeType, PositionType, RawCellType, OperatorType, FilterConfig } from '../types';
|
|
2
|
-
import {
|
|
2
|
+
import { Sheet } from '../lib/sheet';
|
|
3
3
|
type StoreWithCallback = StoreType & {
|
|
4
4
|
callback?: (store: StoreType) => void;
|
|
5
5
|
};
|
|
@@ -64,9 +64,9 @@ export declare const setEntering: (payload: boolean) => {
|
|
|
64
64
|
type: number;
|
|
65
65
|
value: boolean;
|
|
66
66
|
};
|
|
67
|
-
export declare const
|
|
67
|
+
export declare const updateSheet: (payload: Sheet) => {
|
|
68
68
|
type: number;
|
|
69
|
-
value:
|
|
69
|
+
value: Sheet;
|
|
70
70
|
};
|
|
71
71
|
export declare const setEditorRect: (payload: RectType) => {
|
|
72
72
|
type: number;
|
|
@@ -1,36 +1,40 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const copier: ({ store, dispatch }:
|
|
3
|
-
export declare const cutter: ({ store, dispatch }:
|
|
4
|
-
export declare const paster: ({ store, dispatch }:
|
|
5
|
-
export declare const undoer: ({ store, dispatch }:
|
|
6
|
-
export declare const redoer: ({ store, dispatch }:
|
|
7
|
-
export declare const rowsInserterAbove: ({ store, dispatch }:
|
|
8
|
-
export declare const rowsInserterBelow: ({ store, dispatch }:
|
|
9
|
-
export declare const colsInserterLeft: ({ store, dispatch }:
|
|
10
|
-
export declare const colsInserterRight: ({ store, dispatch }:
|
|
11
|
-
export declare const rowsRemover: ({ store, dispatch }:
|
|
12
|
-
export declare const colsRemover: ({ store, dispatch }:
|
|
13
|
-
export declare const rowsSorterAsc: ({ store, dispatch }:
|
|
14
|
-
export declare const rowsSorterDesc: ({ store, dispatch }:
|
|
15
|
-
export declare const rowsFilterer: ({ store, dispatch }:
|
|
16
|
-
export declare const rowsFilterClearer: ({ store, dispatch }:
|
|
17
|
-
export declare const
|
|
18
|
-
export declare const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
1
|
+
import { StoreDispatchType, FilterConfig } from '../types';
|
|
2
|
+
export declare const copier: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
3
|
+
export declare const cutter: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
4
|
+
export declare const paster: ({ store, dispatch }: StoreDispatchType, onlyValue?: boolean) => Promise<void>;
|
|
5
|
+
export declare const undoer: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
6
|
+
export declare const redoer: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
7
|
+
export declare const rowsInserterAbove: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
8
|
+
export declare const rowsInserterBelow: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
9
|
+
export declare const colsInserterLeft: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
10
|
+
export declare const colsInserterRight: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
11
|
+
export declare const rowsRemover: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
12
|
+
export declare const colsRemover: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
13
|
+
export declare const rowsSorterAsc: ({ store, dispatch }: StoreDispatchType, x: number) => Promise<void>;
|
|
14
|
+
export declare const rowsSorterDesc: ({ store, dispatch }: StoreDispatchType, x: number) => Promise<void>;
|
|
15
|
+
export declare const rowsFilterer: ({ store, dispatch }: StoreDispatchType, x: number, filter: FilterConfig) => Promise<void>;
|
|
16
|
+
export declare const rowsFilterClearer: ({ store, dispatch }: StoreDispatchType, x?: number) => Promise<void>;
|
|
17
|
+
export declare const rowSortFixedToggler: ({ store, dispatch }: StoreDispatchType, y: number) => void;
|
|
18
|
+
export declare const rowFilterFixedToggler: ({ store, dispatch }: StoreDispatchType, y: number) => void;
|
|
19
|
+
export declare const searcher: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
20
|
+
export declare const applyers: {
|
|
21
|
+
copy: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
22
|
+
cut: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
23
|
+
paste: ({ store, dispatch }: StoreDispatchType, onlyValue?: boolean) => Promise<void>;
|
|
24
|
+
undo: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
25
|
+
redo: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
26
|
+
insertRowsAbove: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
27
|
+
insertRowsBelow: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
28
|
+
insertColsLeft: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
29
|
+
insertColsRight: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
30
|
+
removeRows: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
31
|
+
removeCols: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
32
|
+
sortRowsAsc: ({ store, dispatch }: StoreDispatchType, x: number) => Promise<void>;
|
|
33
|
+
sortRowsDesc: ({ store, dispatch }: StoreDispatchType, x: number) => Promise<void>;
|
|
34
|
+
filterRows: ({ store, dispatch }: StoreDispatchType, x: number, filter: FilterConfig) => Promise<void>;
|
|
35
|
+
clearFilter: ({ store, dispatch }: StoreDispatchType, x?: number) => Promise<void>;
|
|
36
|
+
toggleSortFixed: ({ store, dispatch }: StoreDispatchType, y: number) => void;
|
|
37
|
+
toggleFilterFixed: ({ store, dispatch }: StoreDispatchType, y: number) => void;
|
|
38
|
+
search: ({ store, dispatch }: StoreDispatchType) => Promise<void>;
|
|
35
39
|
};
|
|
36
40
|
//# sourceMappingURL=dispatchers.d.ts.map
|
package/dist/store/helpers.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { PointType, StoreType } from '../types';
|
|
3
|
-
|
|
1
|
+
import { Sheet } from '../lib/sheet';
|
|
2
|
+
import { PointType, StorePatchType, StoreType } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Strip redundant fields from a StorePatchType before recording in history.
|
|
5
|
+
* - selectingZone with endY === -1 && endX === -1 is a no-selection sentinel and need not be stored.
|
|
6
|
+
*/
|
|
7
|
+
export declare const compactReflection: (reflection: StorePatchType) => StorePatchType;
|
|
8
|
+
export declare const restrictPoints: (store: StoreType, sheet: Sheet) => {
|
|
4
9
|
choosing: PointType;
|
|
5
10
|
selectingZone: {
|
|
6
11
|
startY: number;
|
|
@@ -10,11 +15,11 @@ export declare const restrictPoints: (store: StoreType, table: Table) => {
|
|
|
10
15
|
};
|
|
11
16
|
};
|
|
12
17
|
export declare const flashSheet: (el: HTMLElement | null) => void;
|
|
13
|
-
export declare const flashWithCallback: (store: StoreType,
|
|
18
|
+
export declare const flashWithCallback: (store: StoreType, sheet: Sheet, callback: ((s: StoreType) => void) | undefined) => StoreType & {
|
|
14
19
|
callback?: (store: StoreType) => void;
|
|
15
20
|
};
|
|
16
21
|
export declare const shouldTracking: (operation: string) => boolean;
|
|
17
|
-
export declare const initSearchStatement: (
|
|
22
|
+
export declare const initSearchStatement: (sheet: Sheet, store: StoreType) => {
|
|
18
23
|
matchingCells: never[];
|
|
19
24
|
searchQuery?: undefined;
|
|
20
25
|
matchingCellIndex?: undefined;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const LAST_MODIFIED =
|
|
2
|
-
export declare const CSS = ".gs-root1{display:inline-block;position:relative;border-spacing:0;width:fit-content;max-width:100%;overflow:auto;font-family:\"SF Pro Text\",\"SF Pro Icons\",\"Helvetica Neue\",Helvetica,Arial,Meiryo,sans-serif;visibility:hidden;opacity:0}.gs-root1.gs-initialized{visibility:visible;opacity:1;transition:opacity .2s ease-in-out}.gs-root1 .gs-main{flex:1;max-width:100%;overflow:hidden;position:relative;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.gs-root1 .gs-resizing{width:100%;height:100%;position:absolute;background-color:rgba(0,127,255,.08);top:0;left:0;z-index:2}.gs-root1 .gs-line-horizontal{width:100%}.gs-root1 .gs-line-vertical{height:100%}.gs-root1 .gs-line{position:relative;top:0;left:0;border:dotted 1px #07f;box-sizing:border-box}.gs-root1 .gs-line span{font-size:10px;padding:3px;background-color:#07f;color:#fff;margin:0;position:absolute;top:0;left:0}.gs-root1 .gs-scroll-handle{width:100%;height:100%;cursor:cell}.gs-hidden{visibility:hidden;position:absolute;top:0;left:0;width:0;height:0;overflow:hidden;pointer-events:none;z-index:-1}.gs-fixed{position:fixed;top:0;left:0;z-index:1}.gs-root1[data-mode=light]{background-color:#e2e2e2;color:#000}.gs-root1[data-mode=light] .gs-main{background-color:#e2e2e2;border-right:solid 1px #ddd;border-bottom:solid 1px #ddd}.gs-root1[data-mode=light] .gs-tabular{background-color:#e2e2e2}.gs-root1[data-mode=light] .gs-formula-bar{background-color:#efefef}.gs-root1[data-mode=light] .gs-formula-bar-editor-inner{color:#555}.gs-root1[data-mode=light] .gs-cell{background-color:#f7f7f7;border-top:solid 1px #ddd;border-left:solid 1px #ddd}.gs-root1[data-mode=light] .gs-adjuster{background-color:#ddd}.gs-root1[data-mode=light] .gs-tabular-inner{background-color:#ddd}.gs-root1[data-mode=light] .gs-th{background-color:#efefef;color:#666}.gs-root1[data-mode=light] .gs-th-top{border-left:solid 1px #ddd}.gs-root1[data-mode=light] .gs-th-top .gs-th-inner{border-top:solid 1px #ddd}.gs-root1[data-mode=light] .gs-th-left{border-top:solid 1px #ddd}.gs-root1[data-mode=light] .gs-th-left .gs-th-inner{border-left:solid 1px #ddd}.gs-root1[data-mode=light] .gs-search-bar{color:rgba(0,0,0,.3)}.gs-editor[data-mode=light].gs-editing textarea{caret-color:#000000}.gs-editor[data-mode=light].gs-editing .gs-editor-hl{background-color:#f7f7f7;color:#000}.gs-editor[data-mode=light] .gs-editor-options{color:#000;background-color:#f7f7f7;border:solid 1px #ddd}.gs-root1[data-mode=dark]{background-color:#5a5a5a;color:#eee}.gs-root1[data-mode=dark] .gs-main{background-color:#3f3f3f;border-right:solid 1px #5a5a5a;border-bottom:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-tabular{background-color:#3f3f3f}.gs-root1[data-mode=dark] .gs-formula-bar{background-color:#4f4f4f}.gs-root1[data-mode=dark] .gs-formula-bar-editor-inner{color:#bbb}.gs-root1[data-mode=dark] .gs-cell{background-color:#212121;border-top:solid 1px #5a5a5a;border-left:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-adjuster{background-color:#5a5a5a}.gs-root1[data-mode=dark] .gs-tabular-inner{background-color:#5a5a5a}.gs-root1[data-mode=dark] .gs-large-editor textarea{color:#eee;caret-color:#eeeeee}.gs-root1[data-mode=dark] .gs-th{background-color:#4f4f4f;color:#eee}.gs-root1[data-mode=dark] .gs-th-top{border-left:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-th-top .gs-th-inner{border-top:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-th-left{border-top:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-th-left .gs-th-inner{border-left:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-search-bar textarea{color:#eee;caret-color:#eeeeee}.gs-root1[data-mode=dark] .gs-search-bar{color:rgba(255,255,255,.3)}.gs-editor[data-mode=dark].gs-editing textarea{caret-color:#eeeeee}.gs-editor[data-mode=dark].gs-editing .gs-editor-hl{background-color:#212121;color:#eee}.gs-editor[data-mode=dark] .gs-editor-options{color:#eee;background-color:#5a5a5a;border:solid 1px #5a5a5a}.gs-cell{transition:border-color .2s ease;padding:0;margin:0;box-sizing:border-box;position:relative;font-size:13px;letter-spacing:1px;line-height:24px;cursor:cell;user-select:none;-webkit-user-select:none;-moz-user-select:none}.gs-cell.gs-copying textarea:focus{outline:solid 1px #0077ff}.gs-cell.gs-selecting{z-index:1}.gs-cell.gs-selecting .gs-cell-label{display:block}.gs-cell.gs-choosing{margin-top:-1px;margin-left:-1px;z-index:1}.gs-cell.gs-choosing.gs-editing{color:transparent}.gs-cell.gs-choosing .gs-cell-label{display:block}.gs-cell.gs-pending .gs-cell-rendered{position:relative;overflow:hidden}.gs-cell.gs-pending .gs-cell-rendered::after{content:'';position:absolute;bottom:0;left:0;height:4px;width:40%;border-radius:1px;background:rgba(100,140,255,.6);animation:gs-pending-slide 1.4s ease-in-out infinite}.gs-cell .gs-formula-error-triangle{position:absolute;top:0;right:0;border-top:3px solid rgba(200,0,0,.9);border-right:3px solid rgba(200,0,0,.9);border-bottom:3px solid transparent;border-left:3px solid transparent;z-index:1}.gs-cell .gs-cell-label{font-size:8px;font-weight:400;font-style:normal;font-family:math,monospace,serif;letter-spacing:1px;line-height:14px;position:absolute;top:0;right:0;background-color:rgba(0,128,255,.6);color:rgba(255,255,255,.6);padding:0 2px;display:none;opacity:.7}.gs-cell .gs-cell-inner-wrap{width:100%;height:100%;position:absolute;top:0;left:0}.gs-cell .gs-cell-inner{width:100%;height:100%;overflow:hidden;display:flex;box-sizing:border-box;border:none!important}.gs-cell .gs-cell-rendered{overflow:hidden;white-space:pre-wrap;cursor:cell;word-wrap:break-word;word-break:break-all;padding:0 2px;width:100%;height:100%}.gs-cell .gs-cell-rendered>*{position:relative}.gs-cell .gs-cell-rendered>.backface{z-index:0}.gs-cell .gs-autofill-drag{background-color:#07f;position:absolute;width:7px;height:7px;bottom:0;right:0;margin-right:-3.5px;margin-bottom:-3.5px;cursor:crosshair;z-index:1}.gs-th[data-x=\"1\"] .gs-th-inner-wrap{border-left:none}.gs-th[data-y=\"1\"] .gs-th-inner-wrap{border-top:none}.gs-cell[data-x=\"1\"]{border-left:none}.gs-cell[data-y=\"1\"]{border-top:none}.gs-menu-modal{width:100%;height:100vh;z-index:12}.gs-label-input-label{font-size:13px;letter-spacing:1px}.gs-menu-divider{background-color:#aaa;padding:0;margin:5px 0;height:1px;list-style-type:none}.gs-menu-btn{position:absolute;background-color:rgba(128,128,128,.3);border:1px solid #ccc;border-radius:50%;cursor:pointer;font-size:12px;font-weight:700;line-height:1;color:#888;width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease;z-index:2}.gs-context-menu{z-index:12;position:fixed;background-color:#fff;padding:5px 0;border-radius:5px;box-shadow:rgba(60,64,67,.3) 0 1px 2px 0,rgba(60,64,67,.15) 0 1px 3px 1px;opacity:.9;transition:opacity .15s ease}.gs-context-menu:hover{opacity:1}.gs-context-menu .gs-menu-items{color:#555;margin:0;padding:0;min-width:250px}.gs-menu-item{padding:5px 10px;list-style-type:none;display:flex}.gs-menu-item.gs-enabled{cursor:pointer}.gs-menu-item.gs-enabled:hover{background-color:#eee}.gs-menu-item.gs-disabled{opacity:.5;cursor:not-allowed}.gs-menu-item .gs-menu-name{font-size:13px;letter-spacing:1px;flex:1}.gs-menu-shortcut{font-size:10px;line-height:20px;color:#999}.gs-menu-shortcut:before{content:\"( \"}.gs-menu-shortcut:after{content:\" )\"}.gs-menu-shortcut .gs-menu-underline{text-decoration:underline}.gs-column-menu{z-index:12;position:fixed;background-color:#fff;padding:5px 0;border-radius:5px;box-shadow:rgba(60,64,67,.3) 0 1px 2px 0,rgba(60,64,67,.15) 0 1px 3px 1px;opacity:.9;transition:opacity .15s ease}.gs-column-menu:hover{opacity:1}.gs-column-menu ul{color:#555;margin:0;padding:0;min-width:200px}.gs-column-menu .gs-column-menu-sort{align-items:center}.gs-column-menu .gs-column-menu-sort .gs-sort-buttons{display:flex;gap:4px;margin-left:auto}.gs-column-menu .gs-column-menu-sort .gs-sort-btn{font-size:12px;padding:4px 8px;border:1px solid transparent;border-radius:3px;background-color:rgba(180,180,180,.1);cursor:pointer;color:#555;font-weight:700;letter-spacing:.5px}.gs-column-menu .gs-column-menu-sort .gs-sort-btn:hover:not(:disabled){border-color:#555}.gs-column-menu .gs-column-menu-sort .gs-sort-btn:disabled{opacity:.5;cursor:not-allowed}.gs-column-menu .gs-column-menu-label{padding:5px 10px}.gs-column-menu .gs-label-input-row{display:flex;gap:4px;align-items:center}.gs-column-menu .gs-label-input{flex:1;font-size:13px;padding:4px 6px;border:none;border-bottom:1px solid #ccc;border-radius:0;outline:0;min-width:0;width:100px;background-color:transparent;box-shadow:none}.gs-column-menu .gs-label-input:focus{border-bottom-color:#07f;outline:0;box-shadow:none}.gs-column-menu .gs-label-apply-btn{font-size:12px;padding:4px 8px;border:1px solid transparent;border-radius:3px;background-color:rgba(180,180,180,.1);cursor:pointer;color:#555;font-weight:700;letter-spacing:.5px}.gs-column-menu .gs-label-apply-btn:hover:not(:disabled){border-color:#555}.gs-column-menu .gs-label-apply-btn:disabled{opacity:.5;cursor:not-allowed}.gs-column-menu .gs-column-menu-filter{padding:5px 10px;list-style-type:none;font-size:13px}.gs-column-menu .gs-filter-header{display:flex;align-items:center;gap:8px}.gs-column-menu .gs-filter-header .gs-filter-add-btn{font-size:12px;padding:3px 9px;border:1px solid transparent;border-radius:3px;background-color:rgba(180,180,180,.1);cursor:pointer;color:#555;letter-spacing:1px}.gs-column-menu .gs-filter-header .gs-filter-add-btn:hover{border-color:#555}.gs-column-menu .gs-filter-mode-toggle{display:flex;gap:6px;margin-left:auto}.gs-column-menu .gs-filter-mode-toggle label{display:flex;align-items:center;gap:3px;font-size:11px;font-weight:700;letter-spacing:.5px;color:#888;cursor:pointer;user-select:none}.gs-column-menu .gs-filter-mode-toggle label input[type=radio]{margin:0;cursor:pointer}.gs-column-menu .gs-filter-mode-toggle label.gs-active{color:#07f}.gs-column-menu .gs-filter-mode-toggle.gs-disabled{opacity:.4;pointer-events:none}.gs-column-menu .gs-filter-conditions{display:flex;flex-direction:column;gap:5px;margin-top:6px;max-height:200px;overflow-y:auto}.gs-column-menu .gs-filter-condition-row{display:flex;gap:4px;align-items:normal}.gs-column-menu .gs-filter-method-select{font-size:12px;padding:4px 4px;border:none;border-bottom:1px solid #ccc;border-radius:0;outline:0;background-color:#fff;box-shadow:none;min-width:40px;max-width:80px;cursor:pointer}.gs-column-menu .gs-filter-method-select:focus{border-bottom-color:#07f;outline:0;box-shadow:none}.gs-column-menu .gs-filter-value-input{flex:1;font-size:13px;padding:4px 6px;border:none;border-bottom:1px solid #ccc;border-radius:0;outline:0;min-width:0;width:80px;background-color:transparent;box-shadow:none}.gs-column-menu .gs-filter-value-input:focus{border-bottom-color:#07f;outline:0;box-shadow:none}.gs-column-menu .gs-filter-remove-btn{font-size:12px;padding:0;border:none;border-radius:3px;background-color:transparent;cursor:pointer;color:#999;line-height:1;flex-shrink:0}.gs-column-menu .gs-filter-remove-btn:hover{color:#c33}.gs-column-menu .gs-filter-actions{display:flex;gap:4px;margin-top:10px;align-items:center}.gs-column-menu .gs-filter-actions .gs-filter-reset-all-btn{font-size:12px;padding:3px 9px;border:1px solid transparent;border-radius:3px;background-color:transparent;cursor:pointer;color:#c33;font-weight:700;letter-spacing:1px}.gs-column-menu .gs-filter-actions .gs-filter-reset-all-btn:hover{border-color:#c33}.gs-column-menu .gs-filter-actions .gs-filter-actions-right{display:flex;gap:4px;margin-left:auto}.gs-column-menu .gs-filter-actions .gs-filter-reset-btn{font-size:12px;padding:3px 9px;border:1px solid transparent;border-radius:3px;background-color:transparent;cursor:pointer;color:#e08000;font-weight:700;letter-spacing:1px}.gs-column-menu .gs-filter-actions .gs-filter-reset-btn:hover{border-color:#e08000}.gs-column-menu .gs-filter-actions .gs-filter-apply-btn{font-size:12px;padding:3px 6px;border:1px solid transparent;border-radius:3px;background-color:transparent;color:#07f;cursor:pointer;font-weight:700;letter-spacing:1px}.gs-column-menu .gs-filter-actions .gs-filter-apply-btn:hover{border-color:#07f}.gs-column-menu-waiting{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 30px;gap:12px;min-width:180px}.gs-column-menu-waiting .gs-waiting-message{font-size:13px;font-weight:700;color:#555;letter-spacing:.5px}.gs-column-menu-waiting .gs-waiting-spinner{width:24px;height:24px;border:3px solid #e0e0e0;border-top-color:#07f;border-radius:50%;animation:spin .8s linear infinite}.gs-column-menu-waiting .gs-waiting-cancel-btn{font-size:12px;padding:4px 18px;border:1px solid #c33;border-radius:3px;background-color:transparent;color:#c33;cursor:pointer;font-weight:700;letter-spacing:1px}.gs-column-menu-waiting .gs-waiting-cancel-btn:hover{background-color:#c33;color:#fff}.gs-column-menu-btn{right:4px;top:50%;transform:translateY(-50%)}.gs-column-menu-btn.gs-filtered{opacity:1;background-color:#e0edff;border-color:#07f;color:#07f}.gs-column-menu-btn.gs-active{opacity:1;background-color:#d0e0ff;border-color:#07f;color:#07f}.gs-th-top:hover .gs-column-menu-btn{opacity:1}.gs-row-menu{z-index:12;position:fixed;background-color:#fff;padding:5px 0;border-radius:5px;box-shadow:rgba(60,64,67,.3) 0 1px 2px 0,rgba(60,64,67,.15) 0 1px 3px 1px;opacity:.9;transition:opacity .15s ease}.gs-row-menu:hover{opacity:1}.gs-row-menu ul{color:#555;margin:0;padding:0;min-width:200px}.gs-row-menu-btn{top:50%;transform:translateY(-50%);right:2px}.gs-row-menu-btn.gs-active{opacity:1;background-color:#d0e0ff;border-color:#07f;color:#07f}.gs-th-left:hover .gs-row-menu-btn{opacity:1}.gs-corner-menu-btn{bottom:2px;right:2px}.gs-corner-menu-btn:hover{opacity:1;background-color:#d0e0ff;border-color:#07f;color:#07f}.gs-th-left.gs-th-top:hover .gs-corner-menu-btn{opacity:1}.gs-editor-hl{padding:0 2px!important;position:absolute;font-family:monospace,Arial;font-size:12px;line-height:24px;letter-spacing:1px}.gs-formula-bar-editor-inner{position:relative;display:table-cell}.gs-editor{opacity:0;z-index:-1}.gs-editor .gs-editor-inner{position:relative}.gs-editor .gs-editor-hl{box-sizing:content-box;border:solid 2px #07f;margin:-2px -1px}.gs-editor textarea{width:100%;padding:0 2px!important;position:absolute;font-size:12px;font-family:monospace,Arial;line-height:24px;letter-spacing:1px;top:0;left:0;border:none;outline:0;background-color:transparent;color:transparent;resize:none;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;overflow:hidden;cursor:default;white-space:pre;height:auto}.gs-editor.gs-editing{z-index:11;opacity:1}.gs-editor.gs-editing .gs-cell-label{pointer-events:none;font-family:math,monospace,serif;position:absolute;top:0;right:0;margin-top:-15px;margin-right:-2px;padding:0 2px;font-size:10px;background-color:rgba(0,119,255,.75);color:#fff;z-index:1}.gs-formula-bar{width:100%;position:relative;display:table;align-items:center;justify-content:center;border-top:solid 1px rgba(128,128,128,.3);border-left:solid 1px rgba(128,128,128,.3);border-right:solid 1px rgba(128,128,128,.3);box-sizing:border-box}.gs-formula-bar .gs-selecting-address{display:table-cell;vertical-align:middle;width:60px;color:rgba(200,200,200);font-size:13px;text-align:center}.gs-formula-bar[data-spill=true]{background-color:rgba(0,119,255,.04)}.gs-formula-bar[data-spill=true] .gs-selecting-address{color:rgba(80,160,255,.9);font-style:italic}.gs-formula-bar[data-spill=true] .gs-selecting-address::after{content:\"\\2196\";margin-left:2px;font-style:normal;font-size:9px}.gs-formula-bar[data-spill=true] .gs-editor-hl .gs-spill-origin-formula{opacity:.5}.gs-formula-bar .gs-fx{display:table-cell;vertical-align:middle;width:30px;color:rgba(200,200,200);font-style:italic;font-family:cursive;text-align:center;border-left:solid 1px rgba(128,128,128,.5);font-size:15px}.gs-formula-bar .gs-editor-hl{z-index:0;overflow-y:auto;box-sizing:border-box;white-space:pre-wrap;word-break:break-all}.gs-formula-bar .gs-editor-hl .gs-spill-origin-formula{opacity:.5}.gs-formula-bar textarea{position:relative;z-index:1;width:100%;vertical-align:bottom;color:transparent;border:none;background-color:transparent;padding:0 2px;box-sizing:border-box;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:12px;font-family:monospace,Arial;height:24px;line-height:24px;min-height:24px;letter-spacing:1px;resize:vertical;caret-color:rgba(128,128,128);white-space:pre-wrap;word-break:break-all}.gs-token-type-INVALID_REF{color:red}.gs-token-type-VALUE.gs-token-entity-type-boolean,.gs-token-type-VALUE.gs-token-entity-type-number{color:#39f}.gs-token-type-VALUE.gs-token-entity-type-string{color:#090}.gs-editor-options{position:fixed;z-index:1000;padding:4px;background:var(--gs-bg,#fff);box-shadow:0 4px 12px rgba(0,0,0,.15);border:1px solid rgba(0,0,0,.1);border-radius:6px;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;overflow:visible}.gs-editor-option{position:relative;cursor:pointer;list-style:none;padding:6px 12px;font-size:13px;border-radius:4px;color:#333;margin-bottom:2px}.gs-editor-option-content{display:flex;justify-content:space-between;width:100%;align-items:center}.gs-editor-option-tab{font-size:10px;color:#aaa;margin-left:8px;padding:2px 4px;border:1px solid #ddd;border-radius:3px;background:#f9f9f9}.gs-editor-option:last-child{margin-bottom:0}.gs-editor-option:hover{background-color:#f5f5f5}.gs-editor-option-selected{background-color:#ebf5ff;color:#06c;font-weight:500}.gs-editor-option-selected:hover{background-color:#e0f0ff}.gs-fn-guide1{position:absolute;top:-4px;left:calc(100% + 8px);background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 16px rgba(0,0,0,.12);border-radius:6px;padding:16px;width:280px;z-index:1000;cursor:default;white-space:normal;color:#333}.gs-fn-guide1-tooltip{margin-bottom:8px;line-height:1.4;font-size:13px}.gs-fn-guide1-example{font-family:monospace;font-weight:600;font-size:13px;margin-bottom:8px;color:#1a1a1a;background:#f5f5f5;padding:6px 8px;border-radius:4px;border:1px solid #eee;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.gs-fn-guide1-desc{font-size:13px;color:#555;margin-bottom:12px;line-height:1.4}.gs-fn-guide1-desc p{margin:0 0 6px 0}.gs-fn-guide1-desc p:last-child{margin-bottom:0}.gs-fn-guide1-args{border-top:1px solid #eee;padding-top:10px}.gs-fn-guide1-arg{margin-bottom:6px;line-height:1.4;font-size:12px}.gs-fn-guide1-arg-name{font-weight:600;color:#06c}.gs-fn-guide1-arg-opt{color:#888;font-size:11px}.gs-fn-guide1-arg-iter{font-weight:600;color:#06c}.gs-fn-guide1-arg-type{color:#06c;padding:0 4px;background:#ebf5ff;border-radius:3px;font-size:11px;margin:0 4px}.gs-fn-guide1-arg-desc{color:#666}.gs-fn-guide-category{position:absolute;top:-11px;right:8px;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:2px 7px;border-radius:4px;background:#e8eaf6;color:#3949ab;border:1px solid #c5cae9;white-space:nowrap}.gs-fn-guide-category.gs-fn-guide-category-math{background:#e3f2fd;color:#1565c0;border-color:#bbdefb}.gs-fn-guide-category.gs-fn-guide-category-statistics{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.gs-fn-guide-category.gs-fn-guide-category-text{background:#fff8e1;color:#f57f17;border-color:#ffecb3}.gs-fn-guide-category.gs-fn-guide-category-time{background:#fce4ec;color:#880e4f;border-color:#f8bbd0}.gs-fn-guide-category.gs-fn-guide-category-lookup{background:#f3e5f5;color:#6a1b9a;border-color:#e1bee7}.gs-fn-guide-category.gs-fn-guide-category-logical{background:#e0f2f1;color:#00695c;border-color:#b2dfdb}.gs-fn-guide-category.gs-fn-guide-category-information{background:#e0f7fa;color:#006064;border-color:#b2ebf2}.gs-fn-guide-category.gs-fn-guide-category-finance{background:#fff3e0;color:#e65100;border-color:#ffe0b2}.gs-fn-guide-category.gs-fn-guide-category-engineering{background:#efebe9;color:#4e342e;border-color:#d7ccc8}.gs-fn-guide-category.gs-fn-guide-category-other{background:#f5f5f5;color:#616161;border-color:#e0e0e0}.gs-editor[data-mode=dark] .gs-editor-options{background:#252526;border-color:#454545;box-shadow:0 4px 12px rgba(0,0,0,.5)}.gs-editor[data-mode=dark] .gs-editor-option{color:#ccc}.gs-editor[data-mode=dark] .gs-editor-option:hover{background-color:#333}.gs-editor[data-mode=dark] .gs-editor-option-selected{background-color:#094771;color:#fff}.gs-editor[data-mode=dark] .gs-editor-option-selected:hover{background-color:#0d5a8f}.gs-editor[data-mode=dark] .gs-editor-option-tab{color:#777;background:#333;border-color:#444}.gs-editor[data-mode=dark] .gs-fn-guide1{background:#252526;border-color:#454545;color:#ccc}.gs-editor[data-mode=dark] .gs-fn-guide1-example{background:#1e1e1e;border-color:#333;color:#d4d4d4}.gs-editor[data-mode=dark] .gs-fn-guide1-desc{color:#aaa}.gs-editor[data-mode=dark] .gs-fn-guide1-args{border-color:#333}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-iter,.gs-editor[data-mode=dark] .gs-fn-guide1-arg-name{color:#4fc1ff}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-opt{color:#777}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-type{background:#094771;color:#4fc1ff}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-desc{color:#999}.gs-editor[data-mode=dark] .gs-fn-guide-category{background:#2a2d3e;color:#7986cb;border-color:#3d4166}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-math{background:#0d2137;color:#64b5f6;border-color:#1a3a5c}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-statistics{background:#0d2218;color:#66bb6a;border-color:#1a3d2a}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-text{background:#2e2200;color:#ffd54f;border-color:#4d3900}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-time{background:#2d0d1e;color:#f48fb1;border-color:#4d1a33}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-lookup{background:#260d33;color:#ce93d8;border-color:#3d1a54}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-logical{background:#0d2421;color:#4db6ac;border-color:#1a3d39}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-information{background:#0d2426;color:#4dd0e1;border-color:#1a3d40}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-finance{background:#2e1500;color:#ffb74d;border-color:#4d2800}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-engineering{background:#1e1714;color:#bcaaa4;border-color:#332c28}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-other{background:#1e1e1e;color:#9e9e9e;border-color:#333}.gs-editor[data-mode=dark] .gs-fn-guide2{background:#252526;border-color:#454545;box-shadow:0 4px 12px rgba(0,0,0,.5);color:#ccc}.gs-editor[data-mode=dark] .gs-fn-guide2-name{color:#dfdbdb;background:#333;border-color:#444}.gs-editor[data-mode=dark] .gs-fn-guide2 .gs-active-arg{color:#fff;background-color:#094771}.gs-editor[data-mode=dark] .gs-fn-guide2-arg-type{background:#094771;color:#4fc1ff}.gs-editor[data-mode=dark] .gs-fn-guide2-desc{color:#aaa;border-top-color:#333}.gs-fn-guide2{position:fixed;left:0;background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 16px rgba(0,0,0,.12);border-radius:6px;padding:12px 16px;width:280px;z-index:1000;cursor:default;white-space:normal;color:#333;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;transition:opacity .1s ease-in-out}.gs-fn-guide2.gs-fn-guide2-hidden{opacity:0!important;pointer-events:none!important}.gs-fn-guide2-name{font-family:monospace;font-weight:700;font-size:13px;color:#1a1a1a;background:#f5f5f5;padding:6px 8px;border-radius:4px;border:1px solid #eee;display:flex;align-items:center;gap:6px;flex-wrap:wrap;width:100%;box-sizing:border-box;margin-bottom:8px}.gs-fn-guide2-args-inline{font-size:13px;font-family:monospace;line-height:1.5;margin-bottom:8px;color:#666}.gs-fn-guide2-args-inline span{transition:all .2s ease-in-out}.gs-fn-guide2 .gs-active-arg{font-weight:700;color:#06c;background-color:#ebf5ff;padding:2px 4px;margin:0 -4px;border-radius:4px}.gs-fn-guide2-arg-type{color:#06c;padding:0 4px;background:#ebf5ff;border-radius:3px;font-size:11px;margin:0 4px}.gs-fn-guide2-desc{font-size:12px;color:#555;line-height:1.4;border-top:1px solid #eee;padding-top:8px;margin-top:4px}.gs-fn-guide2-desc p{margin:0}.gs-fn-guide2-desc-more{font-style:italic;color:#888;margin-top:4px!important;font-size:11px}.gs-adjuster{padding:0}.gs-table{margin:0}.gs-tabular{overflow:auto;display:block;box-sizing:border-box;overscroll-behavior:none;position:relative}.gs-tabular-inner>table{table-layout:fixed;border-collapse:separate;border-spacing:0}.gs-th{z-index:2;padding:0;position:sticky;font-size:13px;font-weight:400;box-sizing:border-box;vertical-align:top}.gs-th .gs-resizer{position:absolute;border-color:transparent;box-sizing:border-box;z-index:2}.gs-th .gs-resizer:hover{background-color:#07f}.gs-th .gs-resizer.gs-protected{display:none}.gs-th-inner{height:100%;box-sizing:border-box;vertical-align:middle;overflow:hidden;display:flex;align-items:center;justify-content:center}.gs-th-inner-wrap{height:100%;box-sizing:border-box;background-color:transparent}.gs-th-top{top:0;overflow:hidden}.gs-th-top .gs-resizer{top:0;right:0;width:3px;cursor:e-resize}.gs-th-top .gs-resizer.gs-dragging{border-right-style:dotted;height:1000000px!important;cursor:e-resize}.gs-th-left{left:0;overflow:hidden;min-width:30px;border-top:solid 1px #ddd}.gs-th-left .gs-resizer{left:0;bottom:0;height:3px;cursor:n-resize}.gs-th-left .gs-resizer.gs-dragging{border-bottom-style:dotted;width:1000000px!important;cursor:n-resize}.gs-th-top.gs-th-left{top:0;left:0;z-index:3;border:none!important}.gs-search-bar{width:100%;display:flex;align-items:center;border-top:solid 1px rgba(128,128,128,.3);border-left:solid 1px rgba(128,128,128,.3);border-right:solid 1px rgba(128,128,128,.3);box-sizing:border-box;background-color:rgba(200,50,0,.2)}.gs-search-bar.gs-search-found{background-color:rgba(0,200,100,.2)}.gs-search-bar .gs-search-bar-inner{border-left:solid 1px rgba(128,128,128,.5)}.gs-search-bar .gs-search-bar-icon{border-left:solid 1px rgba(128,128,128,.3);display:flex;align-items:center;justify-content:center;width:30px;flex-shrink:0}.gs-search-bar .gs-search-input-wrapper{flex-grow:1;position:relative;display:flex;align-items:center;height:100%}.gs-search-bar .gs-search-input-ghost{position:absolute;left:2px;right:2px;top:0;bottom:0;pointer-events:none;font-size:12px;font-family:monospace,Arial;line-height:24px;letter-spacing:1px;white-space:pre-wrap;word-break:break-all;color:transparent;overflow:hidden}.gs-search-bar .gs-search-input-ghost .gs-search-ghost-hint{color:#aaa}.gs-search-bar textarea{background-color:transparent;border:none;padding:0 2px;box-sizing:border-box;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:12px;font-family:monospace,Arial;height:24px;line-height:24px;min-height:24px;letter-spacing:1px;caret-color:rgba(128,128,128);white-space:pre-wrap;word-break:break-all;flex-grow:1;width:100%;resize:none}.gs-search-progress{color:#999;font-size:13px;width:60px;flex-shrink:0;white-space:nowrap;text-align:center}.gs-search-close{cursor:pointer;display:flex;align-items:center;justify-content:center;width:24px;flex-shrink:0}.gs-search-buttons{display:flex;align-items:center;white-space:nowrap;flex-shrink:0}.gs-search-button{display:inline-flex;cursor:pointer;margin:0 2px}.gs-search-button span{display:inline-block;font-size:11px;padding:3px 5px;background-color:rgba(128,128,128,.1);border:1px solid rgba(128,128,128,.3);border-radius:3px;transition:all .15s ease;line-height:1}.gs-search-button span:hover{background-color:rgba(128,128,128,.2)}.gs-search-button span.gs-search-button-on{color:#07f;background-color:rgba(200,200,255,.5);border-color:#07f}.gs-search-range span{white-space:nowrap;font-family:monospace}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes gs-pending-slide{0%{left:-40%}100%{left:100%}}@keyframes gs-pending-pulse{0%{left:0;width:0}50%{left:0;width:100%}100%{left:100%;width:0}}@keyframes gs-flash{0%{opacity:0}20%{opacity:1}100%{opacity:0}}.gs-flash-overlay{position:absolute;inset:0;pointer-events:none;z-index:9999;background:rgba(0,119,255,.15);opacity:0}.gs-flash-overlay--active{animation:gs-flash .6s ease-out forwards}";
|
|
1
|
+
export declare const LAST_MODIFIED = 1774701851;
|
|
2
|
+
export declare const CSS = ".gs-root1{display:inline-block;position:relative;border-spacing:0;width:fit-content;max-width:100%;overflow:auto;font-family:\"SF Pro Text\",\"SF Pro Icons\",\"Helvetica Neue\",Helvetica,Arial,Meiryo,sans-serif;visibility:hidden;opacity:0}.gs-root1.gs-initialized{visibility:visible;opacity:1;transition:opacity .2s ease-in-out}.gs-root1 .gs-main{flex:1;max-width:100%;overflow:hidden;position:relative;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.gs-root1 .gs-resizing{width:100%;height:100%;position:absolute;background-color:rgba(0,127,255,.08);top:0;left:0;z-index:2}.gs-root1 .gs-line-horizontal{width:100%}.gs-root1 .gs-line-vertical{height:100%}.gs-root1 .gs-line{position:relative;top:0;left:0;border:dotted 1px #07f;box-sizing:border-box}.gs-root1 .gs-line span{font-size:10px;padding:3px;background-color:#07f;color:#fff;margin:0;position:absolute;top:0;left:0}.gs-root1 .gs-scroll-handle{width:100%;height:100%;cursor:cell}.gs-hidden{visibility:hidden;position:absolute;top:0;left:0;width:0;height:0;overflow:hidden;pointer-events:none;z-index:-1}.gs-fixed{position:fixed;top:0;left:0;z-index:1}.gs-root1[data-mode=light]{background-color:#e2e2e2;color:#000}.gs-root1[data-mode=light] .gs-main{background-color:#e2e2e2;border-right:solid 1px #ddd;border-bottom:solid 1px #ddd}.gs-root1[data-mode=light] .gs-tabular{background-color:#e2e2e2}.gs-root1[data-mode=light] .gs-sheet-body-data{background-color:#f7f7f7}.gs-root1[data-mode=light] .gs-formula-bar{background-color:#efefef}.gs-root1[data-mode=light] .gs-formula-bar-editor-inner{color:#555}.gs-root1[data-mode=light] .gs-cell{border:solid 1px #ddd}.gs-root1[data-mode=light] .gs-adjuster{background-color:#ddd}.gs-root1[data-mode=light] .gs-tabular-inner{background-color:#ddd}.gs-root1[data-mode=light] .gs-th{background-color:#efefef;color:#666}.gs-root1[data-mode=light] .gs-th-top{border-left:solid 1px #ddd}.gs-root1[data-mode=light] .gs-th-top .gs-th-inner{border-top:solid 1px #ddd}.gs-root1[data-mode=light] .gs-th-left{border-top:solid 1px #ddd}.gs-root1[data-mode=light] .gs-th-left .gs-th-inner{border-left:solid 1px #ddd}.gs-root1[data-mode=light] .gs-search-bar{color:rgba(0,0,0,.3)}.gs-editor[data-mode=light].gs-editing textarea{caret-color:#000000}.gs-editor[data-mode=light].gs-editing .gs-editor-hl{background-color:#f7f7f7;color:#000}.gs-editor[data-mode=light] .gs-editor-options{color:#000;background-color:#f7f7f7;border:solid 1px #ddd}.gs-root1[data-mode=dark]{background-color:#5a5a5a;color:#eee}.gs-root1[data-mode=dark] .gs-main{background-color:#3f3f3f;border-right:solid 1px #5a5a5a;border-bottom:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-tabular{background-color:#3f3f3f}.gs-root1[data-mode=dark] .gs-sheet-body-data{background-color:#212121}.gs-root1[data-mode=dark] .gs-formula-bar{background-color:#4f4f4f}.gs-root1[data-mode=dark] .gs-formula-bar-editor-inner{color:#bbb}.gs-root1[data-mode=dark] .gs-cell{background-color:#212121;border:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-adjuster{background-color:#5a5a5a}.gs-root1[data-mode=dark] .gs-tabular-inner{background-color:#5a5a5a}.gs-root1[data-mode=dark] .gs-large-editor textarea{color:#eee;caret-color:#eeeeee}.gs-root1[data-mode=dark] .gs-th{background-color:#4f4f4f;color:#eee}.gs-root1[data-mode=dark] .gs-th-top{border-left:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-th-top .gs-th-inner{border-top:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-th-left{border-top:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-th-left .gs-th-inner{border-left:solid 1px #5a5a5a}.gs-root1[data-mode=dark] .gs-search-bar textarea{color:#eee;caret-color:#eeeeee}.gs-root1[data-mode=dark] .gs-search-bar{color:rgba(255,255,255,.3)}.gs-editor[data-mode=dark].gs-editing textarea{caret-color:#eeeeee}.gs-editor[data-mode=dark].gs-editing .gs-editor-hl{background-color:#212121;color:#eee}.gs-editor[data-mode=dark] .gs-editor-options{color:#eee;background-color:#5a5a5a;border:solid 1px #5a5a5a}.gs-cell{transition:border-color .2s ease;padding:0;margin:0;box-sizing:border-box;position:relative;font-size:13px;letter-spacing:1px;line-height:24px;cursor:cell;user-select:none;-webkit-user-select:none;-moz-user-select:none}.gs-cell.gs-copying textarea:focus{outline:solid 1px #0077ff}.gs-cell.gs-selecting{z-index:1}.gs-cell.gs-selecting .gs-cell-label{display:block}.gs-cell.gs-choosing{margin-top:-1px;margin-left:-1px;z-index:1}.gs-cell.gs-choosing.gs-editing{color:transparent}.gs-cell.gs-choosing .gs-cell-label{display:block}.gs-cell.gs-pending .gs-cell-rendered{position:relative;overflow:hidden}.gs-cell.gs-pending .gs-cell-rendered::after{content:'';position:absolute;bottom:0;left:0;height:4px;width:40%;border-radius:1px;background:rgba(100,140,255,.6);animation:gs-pending-slide 1.4s ease-in-out infinite}.gs-cell .gs-formula-error-triangle{position:absolute;top:0;right:0;border-top:4px solid rgba(200,0,0,.9);border-right:4px solid rgba(200,0,0,.9);border-bottom:4px solid transparent;border-left:4px solid transparent;z-index:2;cursor:help}.gs-cell .gs-cell-label{font-size:8px;font-weight:400;font-style:normal;font-family:math,monospace,serif;letter-spacing:1px;line-height:14px;position:absolute;top:0;right:0;background-color:rgba(0,128,255,.6);color:rgba(255,255,255,.6);padding:0 2px;display:none;opacity:.7}.gs-cell .gs-cell-inner-wrap{width:100%;height:100%;position:absolute;top:0;left:0}.gs-cell .gs-cell-inner{width:100%;height:100%;overflow:hidden;display:flex;box-sizing:border-box;border:none!important}.gs-cell .gs-cell-rendered{overflow:hidden;white-space:pre-wrap;cursor:cell;word-wrap:break-word;word-break:break-all;padding:0 2px;width:100%;height:100%}.gs-cell .gs-cell-rendered>*{position:relative}.gs-cell .gs-cell-rendered>.backface{z-index:0}.gs-cell .gs-autofill-drag{background-color:#07f;position:absolute;width:7px;height:7px;bottom:0;right:0;margin-right:-3.5px;margin-bottom:-3.5px;cursor:crosshair;z-index:1}.gs-th[data-x=\"1\"] .gs-th-inner-wrap{border-left:none}.gs-th[data-y=\"1\"] .gs-th-inner-wrap{border-top:none}.gs-formula-error-tooltip{position:fixed;background-color:rgba(35,8,8,.94);color:#fff;padding:6px 10px;border-radius:4px;border-left:3px solid rgba(220,50,50,.8);font-size:12px;line-height:1.5;max-width:260px;white-space:pre-wrap;word-break:break-word;box-shadow:0 3px 10px rgba(0,0,0,.4);z-index:100;pointer-events:none;letter-spacing:.3px}.gs-menu-modal{width:100%;height:100vh;z-index:12}.gs-label-input-label{font-size:13px;letter-spacing:1px}.gs-menu-divider{background-color:#aaa;padding:0;margin:5px 0;height:1px;list-style-type:none}.gs-menu-btn{position:absolute;background-color:rgba(128,128,128,.3);border:1px solid #ccc;border-radius:50%;cursor:pointer;font-size:12px;font-weight:700;line-height:1;color:#888;width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease;z-index:2}.gs-context-menu{z-index:12;position:fixed;background-color:#fff;padding:5px 0;border-radius:5px;box-shadow:rgba(60,64,67,.3) 0 1px 2px 0,rgba(60,64,67,.15) 0 1px 3px 1px;opacity:.9;transition:opacity .15s ease}.gs-context-menu:hover{opacity:1}.gs-context-menu .gs-menu-items{color:#555;margin:0;padding:0;min-width:250px}.gs-menu-item{padding:5px 10px;list-style-type:none;display:flex}.gs-menu-item.gs-enabled{cursor:pointer}.gs-menu-item.gs-enabled:hover{background-color:#eee}.gs-menu-item.gs-disabled{opacity:.5;cursor:not-allowed}.gs-menu-item .gs-menu-name{font-size:13px;letter-spacing:1px;flex:1}.gs-menu-shortcut{font-size:10px;line-height:20px;color:#999}.gs-menu-shortcut:before{content:\"( \"}.gs-menu-shortcut:after{content:\" )\"}.gs-menu-shortcut .gs-menu-underline{text-decoration:underline}.gs-column-menu{z-index:12;position:fixed;background-color:#fff;padding:5px 0;border-radius:5px;box-shadow:rgba(60,64,67,.3) 0 1px 2px 0,rgba(60,64,67,.15) 0 1px 3px 1px;opacity:.9;transition:opacity .15s ease}.gs-column-menu:hover{opacity:1}.gs-column-menu ul{color:#555;margin:0;padding:0;min-width:200px}.gs-column-menu .gs-column-menu-sort{align-items:center}.gs-column-menu .gs-column-menu-sort .gs-sort-buttons{display:flex;gap:4px;margin-left:auto}.gs-column-menu .gs-column-menu-sort .gs-sort-btn{font-size:12px;padding:4px 8px;border:1px solid transparent;border-radius:3px;background-color:rgba(180,180,180,.1);cursor:pointer;color:#555;font-weight:700;letter-spacing:.5px}.gs-column-menu .gs-column-menu-sort .gs-sort-btn:hover:not(:disabled){border-color:#555}.gs-column-menu .gs-column-menu-sort .gs-sort-btn:disabled{opacity:.5;cursor:not-allowed}.gs-column-menu .gs-column-menu-label{padding:5px 10px}.gs-column-menu .gs-label-input-row{display:flex;gap:4px;align-items:center}.gs-column-menu .gs-label-input{flex:1;font-size:13px;padding:4px 6px;border:none;border-bottom:1px solid #ccc;border-radius:0;outline:0;min-width:0;width:100px;background-color:transparent;box-shadow:none}.gs-column-menu .gs-label-input:focus{border-bottom-color:#07f;outline:0;box-shadow:none}.gs-column-menu .gs-label-apply-btn{font-size:12px;padding:4px 8px;border:1px solid transparent;border-radius:3px;background-color:rgba(180,180,180,.1);cursor:pointer;color:#555;font-weight:700;letter-spacing:.5px}.gs-column-menu .gs-label-apply-btn:hover:not(:disabled){border-color:#555}.gs-column-menu .gs-label-apply-btn:disabled{opacity:.5;cursor:not-allowed}.gs-column-menu .gs-column-menu-filter{padding:5px 10px;list-style-type:none;font-size:13px}.gs-column-menu .gs-filter-header{display:flex;align-items:center;gap:8px}.gs-column-menu .gs-filter-header .gs-filter-add-btn{font-size:12px;padding:3px 9px;border:1px solid transparent;border-radius:3px;background-color:rgba(180,180,180,.1);cursor:pointer;color:#555;letter-spacing:1px}.gs-column-menu .gs-filter-header .gs-filter-add-btn:hover{border-color:#555}.gs-column-menu .gs-filter-mode-toggle{display:flex;gap:6px;margin-left:auto}.gs-column-menu .gs-filter-mode-toggle label{display:flex;align-items:center;gap:3px;font-size:11px;font-weight:700;letter-spacing:.5px;color:#888;cursor:pointer;user-select:none}.gs-column-menu .gs-filter-mode-toggle label input[type=radio]{margin:0;cursor:pointer}.gs-column-menu .gs-filter-mode-toggle label.gs-active{color:#07f}.gs-column-menu .gs-filter-mode-toggle.gs-disabled{opacity:.4;pointer-events:none}.gs-column-menu .gs-filter-conditions{display:flex;flex-direction:column;gap:5px;margin-top:6px;max-height:200px;overflow-y:auto}.gs-column-menu .gs-filter-condition-row{display:flex;gap:4px;align-items:normal}.gs-column-menu .gs-filter-method-select{font-size:12px;padding:4px 4px;border:none;border-bottom:1px solid #ccc;border-radius:0;outline:0;background-color:#fff;box-shadow:none;min-width:40px;max-width:80px;cursor:pointer}.gs-column-menu .gs-filter-method-select:focus{border-bottom-color:#07f;outline:0;box-shadow:none}.gs-column-menu .gs-filter-value-input{flex:1;font-size:13px;padding:4px 6px;border:none;border-bottom:1px solid #ccc;border-radius:0;outline:0;min-width:0;width:80px;background-color:transparent;box-shadow:none}.gs-column-menu .gs-filter-value-input:focus{border-bottom-color:#07f;outline:0;box-shadow:none}.gs-column-menu .gs-filter-remove-btn{font-size:12px;padding:0;border:none;border-radius:3px;background-color:transparent;cursor:pointer;color:#999;line-height:1;flex-shrink:0}.gs-column-menu .gs-filter-remove-btn:hover{color:#c33}.gs-column-menu .gs-filter-actions{display:flex;gap:4px;margin-top:10px;align-items:center}.gs-column-menu .gs-filter-actions .gs-filter-reset-all-btn{font-size:12px;padding:3px 9px;border:1px solid transparent;border-radius:3px;background-color:transparent;cursor:pointer;color:#c33;font-weight:700;letter-spacing:1px}.gs-column-menu .gs-filter-actions .gs-filter-reset-all-btn:hover{border-color:#c33}.gs-column-menu .gs-filter-actions .gs-filter-actions-right{display:flex;gap:4px;margin-left:auto}.gs-column-menu .gs-filter-actions .gs-filter-reset-btn{font-size:12px;padding:3px 9px;border:1px solid transparent;border-radius:3px;background-color:transparent;cursor:pointer;color:#e08000;font-weight:700;letter-spacing:1px}.gs-column-menu .gs-filter-actions .gs-filter-reset-btn:hover{border-color:#e08000}.gs-column-menu .gs-filter-actions .gs-filter-apply-btn{font-size:12px;padding:3px 6px;border:1px solid transparent;border-radius:3px;background-color:transparent;color:#07f;cursor:pointer;font-weight:700;letter-spacing:1px}.gs-column-menu .gs-filter-actions .gs-filter-apply-btn:hover{border-color:#07f}.gs-column-menu-waiting{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 30px;gap:12px;min-width:180px}.gs-column-menu-waiting .gs-waiting-message{font-size:13px;font-weight:700;color:#555;letter-spacing:.5px}.gs-column-menu-waiting .gs-waiting-spinner{width:24px;height:24px;border:3px solid #e0e0e0;border-top-color:#07f;border-radius:50%;animation:spin .8s linear infinite}.gs-column-menu-waiting .gs-waiting-cancel-btn{font-size:12px;padding:4px 18px;border:1px solid #c33;border-radius:3px;background-color:transparent;color:#c33;cursor:pointer;font-weight:700;letter-spacing:1px}.gs-column-menu-waiting .gs-waiting-cancel-btn:hover{background-color:#c33;color:#fff}.gs-column-menu-btn{right:4px;top:50%;transform:translateY(-50%)}.gs-column-menu-btn.gs-filtered{opacity:1;background-color:#e0edff;border-color:#07f;color:#07f}.gs-column-menu-btn.gs-active{opacity:1;background-color:#d0e0ff;border-color:#07f;color:#07f}.gs-th-top:hover .gs-column-menu-btn{opacity:1}.gs-row-menu{z-index:12;position:fixed;background-color:#fff;padding:5px 0;border-radius:5px;box-shadow:rgba(60,64,67,.3) 0 1px 2px 0,rgba(60,64,67,.15) 0 1px 3px 1px;opacity:.9;transition:opacity .15s ease}.gs-row-menu:hover{opacity:1}.gs-row-menu ul{color:#555;margin:0;padding:0;min-width:200px}.gs-row-menu .gs-row-fixed-toggle{display:flex;align-items:center;gap:6px}.gs-row-menu .gs-row-fixed-check{font-size:12px;width:14px;text-align:center;color:rgba(0,119,255,.1)}.gs-row-menu .gs-row-fixed-check.gs-row-fixed-active{color:#07f}.gs-row-menu-btn{top:50%;transform:translateY(-50%);right:2px}.gs-row-menu-btn.gs-active{opacity:1;background-color:#d0e0ff;border-color:#07f;color:#07f}.gs-th-left:hover .gs-row-menu-btn{opacity:1}.gs-corner-menu-btn{bottom:2px;right:2px}.gs-corner-menu-btn:hover{opacity:1;background-color:#d0e0ff;border-color:#07f;color:#07f}.gs-th-left.gs-th-top:hover .gs-corner-menu-btn{opacity:1}.gs-editor-hl{padding:0 2px!important;position:absolute;font-family:monospace,Arial;font-size:12px;line-height:24px;letter-spacing:1px}.gs-formula-bar-editor-inner{position:relative;display:table-cell}.gs-editor{opacity:0;z-index:-1}.gs-editor .gs-editor-inner{position:relative}.gs-editor .gs-editor-hl{box-sizing:content-box;border:solid 2px #07f;margin:-2px -1px}.gs-editor textarea{width:100%;padding:0 2px!important;position:absolute;font-size:12px;font-family:monospace,Arial;line-height:24px;letter-spacing:1px;top:0;left:0;border:none;outline:0;background-color:transparent;color:transparent;resize:none;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;overflow:hidden;cursor:default;white-space:pre;height:auto}.gs-editor.gs-editing{z-index:11;opacity:1}.gs-editor.gs-editing .gs-cell-label{pointer-events:none;font-family:math,monospace,serif;position:absolute;top:0;right:0;margin-top:-15px;margin-right:-2px;padding:0 2px;font-size:10px;background-color:rgba(0,119,255,.75);color:#fff;z-index:1}.gs-formula-bar{width:100%;position:relative;display:table;align-items:center;justify-content:center;border-top:solid 1px rgba(128,128,128,.3);border-left:solid 1px rgba(128,128,128,.3);border-right:solid 1px rgba(128,128,128,.3);box-sizing:border-box}.gs-formula-bar .gs-selecting-address{display:table-cell;vertical-align:middle;width:60px;color:rgba(200,200,200);font-size:13px;text-align:center}.gs-formula-bar[data-spill=true]{background-color:rgba(0,119,255,.04)}.gs-formula-bar[data-spill=true] .gs-selecting-address{color:rgba(80,160,255,.9);font-style:italic}.gs-formula-bar[data-spill=true] .gs-selecting-address::after{content:\"\\2196\";margin-left:2px;font-style:normal;font-size:9px}.gs-formula-bar .gs-fx{display:table-cell;vertical-align:middle;width:30px;color:rgba(200,200,200);font-style:italic;font-family:cursive;text-align:center;border-left:solid 1px rgba(128,128,128,.5);font-size:15px}.gs-formula-bar .gs-editor-hl{z-index:0;overflow-y:auto;box-sizing:border-box;white-space:pre-wrap;word-break:break-all}.gs-formula-bar textarea{position:relative;z-index:1;width:100%;vertical-align:bottom;color:transparent;border:none;background-color:transparent;padding:0 2px;box-sizing:border-box;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:12px;font-family:monospace,Arial;height:24px;line-height:24px;min-height:24px;letter-spacing:1px;resize:vertical;caret-color:rgba(128,128,128);white-space:pre-wrap;word-break:break-all}.gs-token-type-INVALID_REF{color:red}.gs-token-type-VALUE.gs-token-entity-type-boolean,.gs-token-type-VALUE.gs-token-entity-type-number{color:#39f}.gs-token-type-VALUE.gs-token-entity-type-string{color:#090}.gs-editor-options{position:fixed;z-index:1000;padding:4px;background:var(--gs-bg,#fff);box-shadow:0 4px 12px rgba(0,0,0,.15);border:1px solid rgba(0,0,0,.1);border-radius:6px;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;overflow:visible}.gs-editor-option{position:relative;cursor:pointer;list-style:none;padding:6px 12px;font-size:13px;border-radius:4px;color:#333;margin-bottom:2px}.gs-editor-option-content{display:flex;justify-content:space-between;width:100%;align-items:center}.gs-editor-option-tab{font-size:10px;color:#aaa;margin-left:8px;padding:2px 4px;border:1px solid #ddd;border-radius:3px;background:#f9f9f9}.gs-editor-option:last-child{margin-bottom:0}.gs-editor-option:hover{background-color:#f5f5f5}.gs-editor-option-selected{background-color:#ebf5ff;color:#06c;font-weight:500}.gs-editor-option-selected:hover{background-color:#e0f0ff}.gs-fn-guide1{position:absolute;top:-4px;left:calc(100% + 8px);background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 16px rgba(0,0,0,.12);border-radius:6px;padding:16px;width:280px;z-index:1000;cursor:default;white-space:normal;color:#333}.gs-fn-guide1-tooltip{margin-bottom:8px;line-height:1.4;font-size:13px}.gs-fn-guide1-example{font-family:monospace;font-weight:600;font-size:13px;margin-bottom:8px;color:#1a1a1a;background:#f5f5f5;padding:6px 8px;border-radius:4px;border:1px solid #eee;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.gs-fn-guide1-desc{font-size:13px;color:#555;margin-bottom:12px;line-height:1.4}.gs-fn-guide1-desc p{margin:0 0 6px 0}.gs-fn-guide1-desc p:last-child{margin-bottom:0}.gs-fn-guide1-args{border-top:1px solid #eee;padding-top:10px}.gs-fn-guide1-arg{margin-bottom:6px;line-height:1.4;font-size:12px}.gs-fn-guide1-arg-name{font-weight:600;color:#06c}.gs-fn-guide1-arg-opt{color:#888;font-size:11px}.gs-fn-guide1-arg-iter{font-weight:600;color:#06c}.gs-fn-guide1-arg-type{color:#06c;padding:0 4px;background:#ebf5ff;border-radius:3px;font-size:11px;margin:0 4px}.gs-fn-guide1-arg-desc{color:#666}.gs-fn-guide-category{position:absolute;top:-11px;right:8px;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:2px 7px;border-radius:4px;background:#e8eaf6;color:#3949ab;border:1px solid #c5cae9;white-space:nowrap}.gs-fn-guide-category.gs-fn-guide-category-math{background:#e3f2fd;color:#1565c0;border-color:#bbdefb}.gs-fn-guide-category.gs-fn-guide-category-statistics{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.gs-fn-guide-category.gs-fn-guide-category-text{background:#fff8e1;color:#f57f17;border-color:#ffecb3}.gs-fn-guide-category.gs-fn-guide-category-time{background:#fce4ec;color:#880e4f;border-color:#f8bbd0}.gs-fn-guide-category.gs-fn-guide-category-lookup{background:#f3e5f5;color:#6a1b9a;border-color:#e1bee7}.gs-fn-guide-category.gs-fn-guide-category-logical{background:#e0f2f1;color:#00695c;border-color:#b2dfdb}.gs-fn-guide-category.gs-fn-guide-category-information{background:#e0f7fa;color:#006064;border-color:#b2ebf2}.gs-fn-guide-category.gs-fn-guide-category-finance{background:#fff3e0;color:#e65100;border-color:#ffe0b2}.gs-fn-guide-category.gs-fn-guide-category-engineering{background:#efebe9;color:#4e342e;border-color:#d7ccc8}.gs-fn-guide-category.gs-fn-guide-category-other{background:#f5f5f5;color:#616161;border-color:#e0e0e0}.gs-editor[data-mode=dark] .gs-editor-options{background:#252526;border-color:#454545;box-shadow:0 4px 12px rgba(0,0,0,.5)}.gs-editor[data-mode=dark] .gs-editor-option{color:#ccc}.gs-editor[data-mode=dark] .gs-editor-option:hover{background-color:#333}.gs-editor[data-mode=dark] .gs-editor-option-selected{background-color:#094771;color:#fff}.gs-editor[data-mode=dark] .gs-editor-option-selected:hover{background-color:#0d5a8f}.gs-editor[data-mode=dark] .gs-editor-option-tab{color:#777;background:#333;border-color:#444}.gs-editor[data-mode=dark] .gs-fn-guide1{background:#252526;border-color:#454545;color:#ccc}.gs-editor[data-mode=dark] .gs-fn-guide1-example{background:#1e1e1e;border-color:#333;color:#d4d4d4}.gs-editor[data-mode=dark] .gs-fn-guide1-desc{color:#aaa}.gs-editor[data-mode=dark] .gs-fn-guide1-args{border-color:#333}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-iter,.gs-editor[data-mode=dark] .gs-fn-guide1-arg-name{color:#4fc1ff}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-opt{color:#777}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-type{background:#094771;color:#4fc1ff}.gs-editor[data-mode=dark] .gs-fn-guide1-arg-desc{color:#999}.gs-editor[data-mode=dark] .gs-fn-guide-category{background:#2a2d3e;color:#7986cb;border-color:#3d4166}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-math{background:#0d2137;color:#64b5f6;border-color:#1a3a5c}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-statistics{background:#0d2218;color:#66bb6a;border-color:#1a3d2a}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-text{background:#2e2200;color:#ffd54f;border-color:#4d3900}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-time{background:#2d0d1e;color:#f48fb1;border-color:#4d1a33}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-lookup{background:#260d33;color:#ce93d8;border-color:#3d1a54}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-logical{background:#0d2421;color:#4db6ac;border-color:#1a3d39}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-information{background:#0d2426;color:#4dd0e1;border-color:#1a3d40}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-finance{background:#2e1500;color:#ffb74d;border-color:#4d2800}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-engineering{background:#1e1714;color:#bcaaa4;border-color:#332c28}.gs-editor[data-mode=dark] .gs-fn-guide-category.gs-fn-guide-category-other{background:#1e1e1e;color:#9e9e9e;border-color:#333}.gs-editor[data-mode=dark] .gs-fn-guide2{background:#252526;border-color:#454545;box-shadow:0 4px 12px rgba(0,0,0,.5);color:#ccc}.gs-editor[data-mode=dark] .gs-fn-guide2-name{color:#dfdbdb;background:#333;border-color:#444}.gs-editor[data-mode=dark] .gs-fn-guide2 .gs-active-arg{color:#fff;background-color:#094771}.gs-editor[data-mode=dark] .gs-fn-guide2-arg-type{background:#094771;color:#4fc1ff}.gs-editor[data-mode=dark] .gs-fn-guide2-desc{color:#aaa;border-top-color:#333}.gs-fn-guide2{position:fixed;left:0;background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 16px rgba(0,0,0,.12);border-radius:6px;padding:12px 16px;width:280px;z-index:1000;cursor:default;white-space:normal;color:#333;font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;transition:opacity .1s ease-in-out}.gs-fn-guide2.gs-fn-guide2-hidden{opacity:0!important;pointer-events:none!important}.gs-fn-guide2-name{font-family:monospace;font-weight:700;font-size:13px;color:#1a1a1a;background:#f5f5f5;padding:6px 8px;border-radius:4px;border:1px solid #eee;display:flex;align-items:center;gap:6px;flex-wrap:wrap;width:100%;box-sizing:border-box;margin-bottom:8px}.gs-fn-guide2-args-inline{font-size:13px;font-family:monospace;line-height:1.5;margin-bottom:8px;color:#666}.gs-fn-guide2-args-inline span{transition:all .2s ease-in-out}.gs-fn-guide2 .gs-active-arg{font-weight:700;color:#06c;background-color:#ebf5ff;padding:2px 4px;margin:0 -4px;border-radius:4px}.gs-fn-guide2-arg-type{color:#06c;padding:0 4px;background:#ebf5ff;border-radius:3px;font-size:11px;margin:0 4px}.gs-fn-guide2-desc{font-size:12px;color:#555;line-height:1.4;border-top:1px solid #eee;padding-top:8px;margin-top:4px}.gs-fn-guide2-desc p{margin:0}.gs-fn-guide2-desc-more{font-style:italic;color:#888;margin-top:4px!important;font-size:11px}.gs-adjuster{padding:0}.gs-table{margin:0}.gs-tabular{overflow:auto;display:block;box-sizing:border-box;position:relative}.gs-tabular-inner>table{table-layout:fixed;border-collapse:collapse;border-spacing:0}.gs-th{z-index:2;padding:0;position:sticky;font-size:13px;font-weight:400;box-sizing:border-box;vertical-align:top}.gs-th .gs-resizer{position:absolute;border-color:transparent;box-sizing:border-box;z-index:2}.gs-th .gs-resizer:hover{background-color:#07f}.gs-th .gs-resizer.gs-protected{display:none}.gs-th-inner{height:100%;box-sizing:border-box;vertical-align:middle;overflow:hidden;display:flex;align-items:center;justify-content:center}.gs-th-inner-wrap{height:100%;box-sizing:border-box;background-color:transparent}.gs-th-top{top:0;overflow:hidden}.gs-th-top .gs-resizer{top:0;right:0;width:3px;cursor:e-resize}.gs-th-top .gs-resizer.gs-dragging{border-right-style:dotted;height:1000000px!important;cursor:e-resize}.gs-th-left{left:0;overflow:hidden;min-width:30px;border-top:solid 1px #ddd}.gs-th-left .gs-resizer{left:0;bottom:0;height:3px;cursor:n-resize}.gs-th-left .gs-resizer.gs-dragging{border-bottom-style:dotted;width:1000000px!important;cursor:n-resize}.gs-th-top.gs-th-left{top:0;left:0;z-index:3;border:none!important}.gs-th-left.gs-filter-fixed .gs-th-inner::before{content:'\u2039\\00a0'}.gs-th-left.gs-sort-fixed .gs-th-inner::after{content:'\\00a0\u203A'}.gs-col-addr{position:absolute;top:2px;right:4px;font-size:9px;opacity:.5;line-height:1;letter-spacing:.3px;pointer-events:none}.gs-search-bar{width:100%;display:flex;align-items:center;border-top:solid 1px rgba(128,128,128,.3);border-left:solid 1px rgba(128,128,128,.3);border-right:solid 1px rgba(128,128,128,.3);box-sizing:border-box;background-color:rgba(200,50,0,.2)}.gs-search-bar.gs-search-found{background-color:rgba(0,200,100,.2)}.gs-search-bar .gs-search-bar-inner{border-left:solid 1px rgba(128,128,128,.5)}.gs-search-bar .gs-search-bar-icon{border-left:solid 1px rgba(128,128,128,.3);display:flex;align-items:center;justify-content:center;width:30px;flex-shrink:0}.gs-search-bar .gs-search-input-wrapper{flex-grow:1;position:relative;display:flex;align-items:center;height:100%}.gs-search-bar .gs-search-input-ghost{position:absolute;left:2px;right:2px;top:0;bottom:0;pointer-events:none;font-size:12px;font-family:monospace,Arial;line-height:24px;letter-spacing:1px;white-space:pre-wrap;word-break:break-all;color:transparent;overflow:hidden}.gs-search-bar .gs-search-input-ghost .gs-search-ghost-hint{color:#aaa}.gs-search-bar textarea{background-color:transparent;border:none;padding:0 2px;box-sizing:border-box;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:12px;font-family:monospace,Arial;height:24px;line-height:24px;min-height:24px;letter-spacing:1px;caret-color:rgba(128,128,128);white-space:pre-wrap;word-break:break-all;flex-grow:1;width:100%;resize:none}.gs-search-progress{color:#999;font-size:13px;width:60px;flex-shrink:0;white-space:nowrap;text-align:center}.gs-search-close{cursor:pointer;display:flex;align-items:center;justify-content:center;width:24px;flex-shrink:0}.gs-search-buttons{display:flex;align-items:center;white-space:nowrap;flex-shrink:0}.gs-search-button{display:inline-flex;cursor:pointer;margin:0 2px}.gs-search-button span{display:inline-block;font-size:11px;padding:3px 5px;background-color:rgba(128,128,128,.1);border:1px solid rgba(128,128,128,.3);border-radius:3px;transition:all .15s ease;line-height:1}.gs-search-button span:hover{background-color:rgba(128,128,128,.2)}.gs-search-button span.gs-search-button-on{color:#07f;background-color:rgba(200,200,255,.5);border-color:#07f}.gs-search-range span{white-space:nowrap;font-family:monospace}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes gs-pending-slide{0%{left:-40%}100%{left:100%}}@keyframes gs-pending-pulse{0%{left:0;width:0}50%{left:0;width:100%}100%{left:100%;width:0}}@keyframes gs-flash{0%{opacity:0}20%{opacity:1}100%{opacity:0}}.gs-flash-overlay{position:absolute;inset:0;pointer-events:none;z-index:9999;background:rgba(0,119,255,.15);opacity:0}.gs-flash-overlay--active{animation:gs-flash .6s ease-out forwards}";
|
|
3
3
|
//# sourceMappingURL=minified.d.ts.map
|
package/dist/types.d.ts
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { UserSheet, Sheet, SheetLimits } from './lib/sheet';
|
|
2
|
+
import { RefObject, CSSProperties, KeyboardEvent } from 'react';
|
|
3
|
+
import { BookType, TransmitProps } from './lib/book';
|
|
4
4
|
import { PolicyType } from './policy/core';
|
|
5
5
|
import { Dispatcher } from './store';
|
|
6
|
-
|
|
6
|
+
import { ContextMenuItemDescriptor, RowMenuItemDescriptor, ColMenuItemDescriptor } from './lib/menu';
|
|
7
|
+
/**
|
|
8
|
+
* Controls how formula values are resolved when reading a cell.
|
|
9
|
+
*
|
|
10
|
+
* - `'RESOLVED'` (default) — Fully evaluates formulas to a scalar value.
|
|
11
|
+
* Range references (e.g. `=C1:F1`) are unwrapped to the top-left scalar.
|
|
12
|
+
* - `'EVALUATED'` — Evaluates formulas one level deep but keeps range/Sheet
|
|
13
|
+
* results intact. Use this when you need the `Sheet` object a range formula
|
|
14
|
+
* produces (e.g. in `renderSheet` policy hooks).
|
|
15
|
+
* - `'RAW'` — Returns the formula string with cell addresses resolved to their
|
|
16
|
+
* display form; does not evaluate.
|
|
17
|
+
* - `'SYSTEM'` — Returns the raw stored value with no evaluation or transformation.
|
|
18
|
+
*/
|
|
19
|
+
export type Resolution = 'RESOLVED' | 'EVALUATED' | 'RAW' | 'SYSTEM';
|
|
7
20
|
export type Y = number;
|
|
8
21
|
export type X = number;
|
|
9
22
|
export type Height = number;
|
|
@@ -28,7 +41,7 @@ export type CursorStateType = {
|
|
|
28
41
|
selectingTo: PointType;
|
|
29
42
|
};
|
|
30
43
|
export type FeedbackType = (args: {
|
|
31
|
-
|
|
44
|
+
sheet: UserSheet;
|
|
32
45
|
points?: CursorStateType;
|
|
33
46
|
}) => void;
|
|
34
47
|
export type ModeType = 'light' | 'dark';
|
|
@@ -43,13 +56,17 @@ export type System = {
|
|
|
43
56
|
id?: string;
|
|
44
57
|
sheetId?: number;
|
|
45
58
|
changedTime?: number;
|
|
46
|
-
/** Cumulative top offset (px) from
|
|
59
|
+
/** Cumulative top offset (px) from sheet origin. Set on row-header cells (x=0). */
|
|
47
60
|
offsetTop?: number;
|
|
48
|
-
/** Cumulative left offset (px) from
|
|
61
|
+
/** Cumulative left offset (px) from sheet origin. Set on col-header cells (y=0). */
|
|
49
62
|
offsetLeft?: number;
|
|
50
63
|
tmpAsyncCaches?: Record<string, AsyncCache>;
|
|
51
64
|
/** Address of the origin cell whose array formula spilled its value into this cell. */
|
|
52
65
|
spilledFrom?: Address;
|
|
66
|
+
/** IDs of cells whose formula depends on this cell. */
|
|
67
|
+
dependents?: Set<Id>;
|
|
68
|
+
/** IDs of cells that this cell's formula depends on. */
|
|
69
|
+
dependencies?: Set<Id>;
|
|
53
70
|
};
|
|
54
71
|
export type FilterConditionMethod = 'eq' | 'ne' | 'gt' | 'gte' | 'lt' | 'lte' | 'blank' | 'nonblank' | 'includes' | 'excludes';
|
|
55
72
|
export type FilterCondition = {
|
|
@@ -72,13 +89,16 @@ export type CellType<T = any, Custom = any> = {
|
|
|
72
89
|
custom?: Custom;
|
|
73
90
|
formulaEnabled?: boolean;
|
|
74
91
|
prevention?: OperationType;
|
|
75
|
-
_sys?: System;
|
|
76
92
|
/** Cached result from an async formula. Stored directly on the cell for serializability. */
|
|
77
93
|
asyncCaches?: Record<string, AsyncCache>;
|
|
78
94
|
/** Filter configuration. Set on col-header cells (y=0). */
|
|
79
95
|
filter?: FilterConfig;
|
|
80
96
|
/** Whether this row is hidden by a filter. Set on row-header cells (x=0). */
|
|
81
97
|
filtered?: boolean;
|
|
98
|
+
/** If true, this row is excluded from sort and stays at its original position. Set on row-header cells (x=0). */
|
|
99
|
+
sortFixed?: boolean;
|
|
100
|
+
/** If true, this row is always visible regardless of active filters. Set on row-header cells (x=0). */
|
|
101
|
+
filterFixed?: boolean;
|
|
82
102
|
};
|
|
83
103
|
export type RawCellType = {
|
|
84
104
|
value?: string;
|
|
@@ -95,19 +115,20 @@ export type CellsByAddressType = {
|
|
|
95
115
|
export type CellsByIdType = {
|
|
96
116
|
[id: Id]: CellType | undefined;
|
|
97
117
|
};
|
|
118
|
+
export type SystemsByIdType = {
|
|
119
|
+
[id: Id]: System;
|
|
120
|
+
};
|
|
98
121
|
export type OptionsType = {
|
|
99
122
|
sheetHeight?: number;
|
|
100
123
|
sheetWidth?: number;
|
|
101
124
|
sheetResize?: CSSProperties['resize'];
|
|
102
125
|
editingOnEnter?: boolean;
|
|
103
|
-
showAddress?: boolean;
|
|
104
126
|
showFormulaBar?: boolean;
|
|
105
|
-
|
|
106
|
-
maxNumRows?: number;
|
|
107
|
-
minNumCols?: number;
|
|
108
|
-
maxNumCols?: number;
|
|
127
|
+
limits?: SheetLimits;
|
|
109
128
|
mode?: ModeType;
|
|
110
|
-
|
|
129
|
+
contextMenu?: ContextMenuItemDescriptor[];
|
|
130
|
+
rowMenu?: RowMenuItemDescriptor[];
|
|
131
|
+
colMenu?: ColMenuItemDescriptor[];
|
|
111
132
|
};
|
|
112
133
|
export type RangeType = {
|
|
113
134
|
start: number;
|
|
@@ -122,7 +143,7 @@ export type ExtraPointType = {
|
|
|
122
143
|
x: X;
|
|
123
144
|
absY?: boolean;
|
|
124
145
|
absX?: boolean;
|
|
125
|
-
|
|
146
|
+
sheet?: Sheet;
|
|
126
147
|
};
|
|
127
148
|
export type PositionType = {
|
|
128
149
|
y: Y;
|
|
@@ -143,7 +164,7 @@ export type AreaType = {
|
|
|
143
164
|
export type WriterType = (value: string) => void;
|
|
144
165
|
export type StoreType = {
|
|
145
166
|
sheetId: number;
|
|
146
|
-
|
|
167
|
+
sheetReactive: RefObject<Sheet>;
|
|
147
168
|
rootRef: RefObject<HTMLDivElement>;
|
|
148
169
|
flashRef: RefObject<HTMLDivElement>;
|
|
149
170
|
mainRef: RefObject<HTMLDivElement>;
|
|
@@ -163,10 +184,6 @@ export type StoreType = {
|
|
|
163
184
|
dragging: boolean;
|
|
164
185
|
sheetHeight: number;
|
|
165
186
|
sheetWidth: number;
|
|
166
|
-
minNumRows: number;
|
|
167
|
-
maxNumRows: number;
|
|
168
|
-
minNumCols: number;
|
|
169
|
-
maxNumCols: number;
|
|
170
187
|
mode: ModeType;
|
|
171
188
|
searchQuery?: string;
|
|
172
189
|
searchCaseSensitive: boolean;
|
|
@@ -175,9 +192,10 @@ export type StoreType = {
|
|
|
175
192
|
matchingCells: string[];
|
|
176
193
|
matchingCellIndex: number;
|
|
177
194
|
editingOnEnter: boolean;
|
|
178
|
-
showAddress: boolean;
|
|
179
195
|
contextMenuPosition: PositionType;
|
|
180
|
-
|
|
196
|
+
contextMenu: ContextMenuItemDescriptor[];
|
|
197
|
+
rowMenu: RowMenuItemDescriptor[];
|
|
198
|
+
colMenu: ColMenuItemDescriptor[];
|
|
181
199
|
resizingPositionY: [Y, Y, Y];
|
|
182
200
|
resizingPositionX: [X, X, X];
|
|
183
201
|
columnMenuState: {
|
|
@@ -194,22 +212,21 @@ export type Manager<T> = {
|
|
|
194
212
|
instance: T;
|
|
195
213
|
sync: T extends StoreType ? Dispatcher : (instance: T) => void;
|
|
196
214
|
};
|
|
197
|
-
export type
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
dispatch: Dispatcher;
|
|
206
|
-
};
|
|
215
|
+
export type SheetHandle = {
|
|
216
|
+
sheet: UserSheet;
|
|
217
|
+
apply: (sheet: UserSheet) => void;
|
|
218
|
+
};
|
|
219
|
+
export type StoreHandle = {
|
|
220
|
+
store: StoreType;
|
|
221
|
+
apply: (store: StoreType) => void;
|
|
222
|
+
dispatch: Dispatcher;
|
|
207
223
|
};
|
|
208
224
|
export type Props = {
|
|
209
225
|
initialCells: CellsByAddressType;
|
|
210
226
|
sheetName?: string;
|
|
211
|
-
|
|
212
|
-
|
|
227
|
+
book?: BookType;
|
|
228
|
+
sheetRef?: RefObject<SheetHandle | null>;
|
|
229
|
+
storeRef?: RefObject<StoreHandle | null>;
|
|
213
230
|
options?: OptionsType;
|
|
214
231
|
className?: string;
|
|
215
232
|
style?: CSSProperties;
|
|
@@ -349,5 +366,4 @@ export type EditorEventWithNativeEvent = EditorEvent & {
|
|
|
349
366
|
isComposing: boolean;
|
|
350
367
|
};
|
|
351
368
|
};
|
|
352
|
-
export type ContextMenuProps = StoreDispatchType;
|
|
353
369
|
//# sourceMappingURL=types.d.ts.map
|