open-grid 0.2.0
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/LICENSE +21 -0
- package/README.md +366 -0
- package/dist/OpenGrid-CAodJLLm.cjs +90 -0
- package/dist/OpenGrid-CAodJLLm.cjs.map +1 -0
- package/dist/OpenGrid-CfZy3e7Q.js +4376 -0
- package/dist/OpenGrid-CfZy3e7Q.js.map +1 -0
- package/dist/open-grid-base.css +1595 -0
- package/dist/open-grid-react.cjs +2 -0
- package/dist/open-grid-react.cjs.map +1 -0
- package/dist/open-grid-react.js +91 -0
- package/dist/open-grid-react.js.map +1 -0
- package/dist/open-grid-themes.css +630 -0
- package/dist/open-grid-vue.cjs +2 -0
- package/dist/open-grid-vue.cjs.map +1 -0
- package/dist/open-grid-vue.js +84 -0
- package/dist/open-grid-vue.js.map +1 -0
- package/dist/open-grid.cjs +7 -0
- package/dist/open-grid.cjs.map +1 -0
- package/dist/open-grid.js +311 -0
- package/dist/open-grid.js.map +1 -0
- package/dist/types/bench/perf.d.ts +16 -0
- package/dist/types/core/CellEditManager.d.ts +46 -0
- package/dist/types/core/CellEventHandler.d.ts +28 -0
- package/dist/types/core/CellTypeRegistry.d.ts +5 -0
- package/dist/types/core/ColumnLayout.d.ts +41 -0
- package/dist/types/core/ContextMenu.d.ts +33 -0
- package/dist/types/core/DataLayer.d.ts +65 -0
- package/dist/types/core/EventEmitter.d.ts +11 -0
- package/dist/types/core/ExportManager.d.ts +28 -0
- package/dist/types/core/FilterPanel.d.ts +20 -0
- package/dist/types/core/FilterSelect.d.ts +96 -0
- package/dist/types/core/FindBarManager.d.ts +26 -0
- package/dist/types/core/FooterManager.d.ts +16 -0
- package/dist/types/core/FormulaEngine.d.ts +10 -0
- package/dist/types/core/GridRenderer.d.ts +42 -0
- package/dist/types/core/GroupEngine.d.ts +47 -0
- package/dist/types/core/GroupTreeManager.d.ts +43 -0
- package/dist/types/core/KeyboardManager.d.ts +26 -0
- package/dist/types/core/MaskingEngine.d.ts +25 -0
- package/dist/types/core/MathUtils.d.ts +26 -0
- package/dist/types/core/MergeEngine.d.ts +35 -0
- package/dist/types/core/OGDecimal.d.ts +49 -0
- package/dist/types/core/OpenGrid.d.ts +213 -0
- package/dist/types/core/OrgChart.d.ts +35 -0
- package/dist/types/core/Pagination.d.ts +34 -0
- package/dist/types/core/PivotEngine.d.ts +20 -0
- package/dist/types/core/RowDragDrop.d.ts +18 -0
- package/dist/types/core/RowManager.d.ts +30 -0
- package/dist/types/core/SortFilterManager.d.ts +36 -0
- package/dist/types/core/TreeEngine.d.ts +34 -0
- package/dist/types/core/TriggerManager.d.ts +10 -0
- package/dist/types/core/VirtualScroll.d.ts +31 -0
- package/dist/types/core/WorksheetManager.d.ts +24 -0
- package/dist/types/core/XmlConverter.d.ts +88 -0
- package/dist/types/core/editors/CellEditor.d.ts +55 -0
- package/dist/types/core/editors/DateEditor.d.ts +15 -0
- package/dist/types/core/editors/SelectEditor.d.ts +21 -0
- package/dist/types/core/renderers/CellRenderer.d.ts +138 -0
- package/dist/types/core/types.d.ts +497 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/react/OpenGrid.d.ts +34 -0
- package/dist/types/react/index.d.ts +2 -0
- package/dist/types/vue/OpenGrid.vue.d.ts +80 -0
- package/dist/types/vue/index.d.ts +2 -0
- package/dist/types/vue/types.d.ts +28 -0
- package/dist/xlsx.min-Bx-LxWOf.cjs +138 -0
- package/dist/xlsx.min-Bx-LxWOf.cjs.map +1 -0
- package/dist/xlsx.min-Wavxcamn.js +11907 -0
- package/dist/xlsx.min-Wavxcamn.js.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react/jsx-runtime"),r=require("react"),D=require("./OpenGrid-CAodJLLm.cjs");function M({data:e,columns:t,height:u=400,width:s="100%",editable:l=!1,sortable:O=!0,filterable:o=!0,rowNumber:x=!1,checkColumn:y=!1,stateColumn:R=!1,draggable:G=!1,frozenColumns:j=0,theme:f="default",options:P,style:W,className:z,onReady:c,onDataChange:b,onCellClick:q,onRowClick:S,onEditEnd:d,onSortChange:v,onFilterChange:E,onRowDrop:T}){const i=r.useRef(null),n=r.useRef(null),A={height:typeof u=="number"?`${u}px`:u,width:typeof s=="number"?`${s}px`:s,display:"block",boxSizing:"border-box",...W};return r.useEffect(()=>{if(!i.current)return;const B={columns:t,height:"100%",width:"100%",editable:l,sortable:O,filterable:o,rowNumber:x,checkColumn:y,stateColumn:R,draggable:G,frozenColumns:j,theme:f,...P,onReady:p=>{n.current=p,e!=null&&e.length&&p.setData(e),c==null||c(p)},...b&&{onDataChange:b},...q&&{onCellClick:q},...S&&{onRowClick:S},...d&&{onEditEnd:d},...v&&{onSortChange:v},...E&&{onFilterChange:E},...T&&{onRowDrop:T}},$=new D.OpenGrid(i.current,B);return n.current=$,()=>{$.destroy(),n.current=null}},[t,l,O,o,x,y,R,G,j]),r.useEffect(()=>{n.current&&e&&n.current.setData(e)},[e]),r.useEffect(()=>{n.current&&n.current.setTheme(f)},[f]),g.jsx("div",{ref:i,style:A,className:z})}const H=r.forwardRef((e,t)=>{r.useRef(null);const u=r.useRef(null);return r.useEffect(()=>{u.current&&t&&(typeof t=="function"?t(u.current):t.current=u.current)}),g.jsx(M,{...e})});H.displayName="OpenGrid";exports.OpenGrid=M;
|
|
2
|
+
//# sourceMappingURL=open-grid-react.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-grid-react.cjs","sources":["../src/react/OpenGrid.tsx"],"sourcesContent":["import React, { useRef, useEffect, useCallback, CSSProperties } from 'react';\nimport { OpenGrid } from '../core/OpenGrid.js';\nimport type { GridOptions, ColumnDef, OpenGridInstance } from '../core/types.js';\nimport '../styles/base.css';\n\nexport interface OpenGridProps<T extends Record<string, any> = any> {\n data?: T[];\n columns: ColumnDef<T>[];\n height?: number | string;\n width?: number | string;\n editable?: boolean;\n sortable?: boolean;\n filterable?: boolean;\n rowNumber?: boolean;\n checkColumn?: boolean;\n frozenColumns?: number;\n theme?: string;\n options?: Partial<GridOptions<T>>;\n style?: CSSProperties;\n className?: string;\n\n stateColumn?: boolean;\n draggable?: boolean;\n\n onReady?: (grid: OpenGridInstance<T>) => void;\n onDataChange?: (data: T[]) => void;\n onCellClick?: (e: any) => void;\n onRowClick?: (e: any) => void;\n onEditEnd?: (e: any) => void;\n onSortChange?: (e: any) => void;\n onFilterChange?: (e: any) => void;\n onRowDrop?: (e: { fromIndex: number; toIndex: number }) => void;\n}\n\nexport function OpenGridReact<T extends Record<string, any> = any>({\n data,\n columns,\n height = 400,\n width = '100%',\n editable = false,\n sortable = true,\n filterable = true,\n rowNumber = false,\n checkColumn = false,\n stateColumn = false,\n draggable = false,\n frozenColumns = 0,\n theme = 'default',\n options,\n style,\n className,\n onReady,\n onDataChange,\n onCellClick,\n onRowClick,\n onEditEnd,\n onSortChange,\n onFilterChange,\n onRowDrop,\n}: OpenGridProps<T>) {\n const containerRef = useRef<HTMLDivElement>(null);\n const gridRef = useRef<OpenGridInstance<T> | null>(null);\n\n const containerStyle: CSSProperties = {\n height: typeof height === 'number' ? `${height}px` : height,\n width: typeof width === 'number' ? `${width}px` : width,\n display: 'block',\n boxSizing: 'border-box',\n ...style,\n };\n\n useEffect(() => {\n if (!containerRef.current) return;\n\n const gridOptions: GridOptions<T> = {\n columns,\n height: '100%',\n width: '100%',\n editable,\n sortable,\n filterable,\n rowNumber,\n checkColumn,\n stateColumn,\n draggable,\n frozenColumns,\n theme,\n ...options,\n\n onReady: (grid) => {\n gridRef.current = grid;\n if (data?.length) grid.setData(data);\n onReady?.(grid);\n },\n ...(onDataChange && { onDataChange }),\n ...(onCellClick && { onCellClick }),\n ...(onRowClick && { onRowClick }),\n ...(onEditEnd && { onEditEnd }),\n ...(onSortChange && { onSortChange }),\n ...(onFilterChange && { onFilterChange }),\n ...(onRowDrop && { onRowDrop }),\n };\n\n const grid = new OpenGrid<T>(containerRef.current, gridOptions);\n gridRef.current = grid;\n\n return () => {\n grid.destroy();\n gridRef.current = null;\n };\n // theme은 별도 effect에서 처리하므로 deps에서 제외\n }, [columns, editable, sortable, filterable, rowNumber, checkColumn, stateColumn, draggable, frozenColumns]);\n\n // data 변경 감지\n useEffect(() => {\n if (gridRef.current && data) {\n gridRef.current.setData(data);\n }\n }, [data]);\n\n // theme 변경 감지 (그리드 재생성 없이 setTheme만 호출)\n useEffect(() => {\n if (gridRef.current) gridRef.current.setTheme(theme);\n }, [theme]);\n\n return (\n <div\n ref={containerRef}\n style={containerStyle}\n className={className}\n />\n );\n}\n\n// ref forwarder (외부에서 grid 인스턴스 접근)\nexport const OpenGridWithRef = React.forwardRef<\n OpenGridInstance,\n OpenGridProps\n>((props, ref) => {\n const innerRef = useRef<HTMLDivElement>(null);\n const gridRef = useRef<OpenGridInstance | null>(null);\n\n useEffect(() => {\n if (gridRef.current && ref) {\n if (typeof ref === 'function') ref(gridRef.current);\n else (ref as React.MutableRefObject<OpenGridInstance | null>).current = gridRef.current;\n }\n });\n\n return <OpenGridReact {...props} />;\n});\n\nOpenGridWithRef.displayName = 'OpenGrid';\n"],"names":["OpenGridReact","data","columns","height","width","editable","sortable","filterable","rowNumber","checkColumn","stateColumn","draggable","frozenColumns","theme","options","style","className","onReady","onDataChange","onCellClick","onRowClick","onEditEnd","onSortChange","onFilterChange","onRowDrop","containerRef","useRef","gridRef","containerStyle","useEffect","gridOptions","grid","OpenGrid","jsx","OpenGridWithRef","React","props","ref"],"mappings":"6KAkCO,SAASA,EAAmD,CACjE,KAAAC,EACA,QAAAC,EACA,OAAAC,EAAS,IACT,MAAAC,EAAQ,OACR,SAAAC,EAAW,GACX,SAAAC,EAAW,GACX,WAAAC,EAAa,GACb,UAAAC,EAAY,GACZ,YAAAC,EAAc,GACd,YAAAC,EAAc,GACd,UAAAC,EAAY,GACZ,cAAAC,EAAgB,EAChB,MAAAC,EAAQ,UACR,QAAAC,EACA,MAAAC,EACA,UAAAC,EACA,QAAAC,EACA,aAAAC,EACA,YAAAC,EACA,WAAAC,EACA,UAAAC,EACA,aAAAC,EACA,eAAAC,EACA,UAAAC,CACF,EAAqB,CACnB,MAAMC,EAAeC,EAAAA,OAAuB,IAAI,EAC1CC,EAAUD,EAAAA,OAAmC,IAAI,EAEjDE,EAAgC,CACpC,OAAQ,OAAOzB,GAAW,SAAW,GAAGA,CAAM,KAAOA,EACrD,MAAO,OAAOC,GAAU,SAAW,GAAGA,CAAK,KAAOA,EAClD,QAAS,QACT,UAAW,aACX,GAAGW,CAAA,EAGLc,OAAAA,EAAAA,UAAU,IAAM,CACd,GAAI,CAACJ,EAAa,QAAS,OAE3B,MAAMK,EAA8B,CAClC,QAAA5B,EACA,OAAQ,OACR,MAAO,OACP,SAAAG,EACA,SAAAC,EACA,WAAAC,EACA,UAAAC,EACA,YAAAC,EACA,YAAAC,EACA,UAAAC,EACA,cAAAC,EACA,MAAAC,EACA,GAAGC,EAEH,QAAUiB,GAAS,CACjBJ,EAAQ,QAAUI,EACd9B,GAAA,MAAAA,EAAM,QAAQ8B,EAAK,QAAQ9B,CAAI,EACnCgB,GAAA,MAAAA,EAAUc,EACZ,EACA,GAAIb,GAAgB,CAAE,aAAAA,CAAA,EACtB,GAAIC,GAAe,CAAE,YAAAA,CAAA,EACrB,GAAIC,GAAc,CAAE,WAAAA,CAAA,EACpB,GAAIC,GAAa,CAAE,UAAAA,CAAA,EACnB,GAAIC,GAAgB,CAAE,aAAAA,CAAA,EACtB,GAAIC,GAAkB,CAAE,eAAAA,CAAA,EACxB,GAAIC,GAAa,CAAE,UAAAA,CAAA,CAAU,EAGzBO,EAAO,IAAIC,EAAAA,SAAYP,EAAa,QAASK,CAAW,EAC9D,OAAAH,EAAQ,QAAUI,EAEX,IAAM,CACXA,EAAK,QAAA,EACLJ,EAAQ,QAAU,IACpB,CAEF,EAAG,CAACzB,EAASG,EAAUC,EAAUC,EAAYC,EAAWC,EAAaC,EAAaC,EAAWC,CAAa,CAAC,EAG3GiB,EAAAA,UAAU,IAAM,CACVF,EAAQ,SAAW1B,GACrB0B,EAAQ,QAAQ,QAAQ1B,CAAI,CAEhC,EAAG,CAACA,CAAI,CAAC,EAGT4B,EAAAA,UAAU,IAAM,CACVF,EAAQ,SAASA,EAAQ,QAAQ,SAASd,CAAK,CACrD,EAAG,CAACA,CAAK,CAAC,EAGRoB,EAAAA,IAAC,MAAA,CACC,IAAKR,EACL,MAAOG,EACP,UAAAZ,CAAA,CAAA,CAGN,CAGO,MAAMkB,EAAkBC,EAAM,WAGnC,CAACC,EAAOC,IAAQ,CACCX,EAAAA,OAAuB,IAAI,EAC5C,MAAMC,EAAUD,EAAAA,OAAgC,IAAI,EAEpDG,OAAAA,EAAAA,UAAU,IAAM,CACVF,EAAQ,SAAWU,IACjB,OAAOA,GAAQ,WAAYA,EAAIV,EAAQ,OAAO,EAC5CU,EAAwD,QAAUV,EAAQ,QAEpF,CAAC,EAEMM,MAACjC,EAAA,CAAe,GAAGoC,CAAA,CAAO,CACnC,CAAC,EAEDF,EAAgB,YAAc"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { jsx as A } from "react/jsx-runtime";
|
|
2
|
+
import K, { useRef as f, useEffect as u } from "react";
|
|
3
|
+
import { O as L } from "./OpenGrid-CfZy3e7Q.js";
|
|
4
|
+
function M({
|
|
5
|
+
data: r,
|
|
6
|
+
columns: e,
|
|
7
|
+
height: t = 400,
|
|
8
|
+
width: c = "100%",
|
|
9
|
+
editable: o = !1,
|
|
10
|
+
sortable: O = !0,
|
|
11
|
+
filterable: x = !0,
|
|
12
|
+
rowNumber: y = !1,
|
|
13
|
+
checkColumn: G = !1,
|
|
14
|
+
stateColumn: m = !1,
|
|
15
|
+
draggable: R = !1,
|
|
16
|
+
frozenColumns: $ = 0,
|
|
17
|
+
theme: s = "default",
|
|
18
|
+
options: B,
|
|
19
|
+
style: D,
|
|
20
|
+
className: H,
|
|
21
|
+
onReady: i,
|
|
22
|
+
onDataChange: b,
|
|
23
|
+
onCellClick: j,
|
|
24
|
+
onRowClick: v,
|
|
25
|
+
onEditEnd: S,
|
|
26
|
+
onSortChange: T,
|
|
27
|
+
onFilterChange: W,
|
|
28
|
+
onRowDrop: q
|
|
29
|
+
}) {
|
|
30
|
+
const p = f(null), n = f(null), I = {
|
|
31
|
+
height: typeof t == "number" ? `${t}px` : t,
|
|
32
|
+
width: typeof c == "number" ? `${c}px` : c,
|
|
33
|
+
display: "block",
|
|
34
|
+
boxSizing: "border-box",
|
|
35
|
+
...D
|
|
36
|
+
};
|
|
37
|
+
return u(() => {
|
|
38
|
+
if (!p.current) return;
|
|
39
|
+
const J = {
|
|
40
|
+
columns: e,
|
|
41
|
+
height: "100%",
|
|
42
|
+
width: "100%",
|
|
43
|
+
editable: o,
|
|
44
|
+
sortable: O,
|
|
45
|
+
filterable: x,
|
|
46
|
+
rowNumber: y,
|
|
47
|
+
checkColumn: G,
|
|
48
|
+
stateColumn: m,
|
|
49
|
+
draggable: R,
|
|
50
|
+
frozenColumns: $,
|
|
51
|
+
theme: s,
|
|
52
|
+
...B,
|
|
53
|
+
onReady: (l) => {
|
|
54
|
+
n.current = l, r != null && r.length && l.setData(r), i == null || i(l);
|
|
55
|
+
},
|
|
56
|
+
...b && { onDataChange: b },
|
|
57
|
+
...j && { onCellClick: j },
|
|
58
|
+
...v && { onRowClick: v },
|
|
59
|
+
...S && { onEditEnd: S },
|
|
60
|
+
...T && { onSortChange: T },
|
|
61
|
+
...W && { onFilterChange: W },
|
|
62
|
+
...q && { onRowDrop: q }
|
|
63
|
+
}, z = new L(p.current, J);
|
|
64
|
+
return n.current = z, () => {
|
|
65
|
+
z.destroy(), n.current = null;
|
|
66
|
+
};
|
|
67
|
+
}, [e, o, O, x, y, G, m, R, $]), u(() => {
|
|
68
|
+
n.current && r && n.current.setData(r);
|
|
69
|
+
}, [r]), u(() => {
|
|
70
|
+
n.current && n.current.setTheme(s);
|
|
71
|
+
}, [s]), /* @__PURE__ */ A(
|
|
72
|
+
"div",
|
|
73
|
+
{
|
|
74
|
+
ref: p,
|
|
75
|
+
style: I,
|
|
76
|
+
className: H
|
|
77
|
+
}
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
const N = K.forwardRef((r, e) => {
|
|
81
|
+
f(null);
|
|
82
|
+
const t = f(null);
|
|
83
|
+
return u(() => {
|
|
84
|
+
t.current && e && (typeof e == "function" ? e(t.current) : e.current = t.current);
|
|
85
|
+
}), /* @__PURE__ */ A(M, { ...r });
|
|
86
|
+
});
|
|
87
|
+
N.displayName = "OpenGrid";
|
|
88
|
+
export {
|
|
89
|
+
M as OpenGrid
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=open-grid-react.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-grid-react.js","sources":["../src/react/OpenGrid.tsx"],"sourcesContent":["import React, { useRef, useEffect, useCallback, CSSProperties } from 'react';\nimport { OpenGrid } from '../core/OpenGrid.js';\nimport type { GridOptions, ColumnDef, OpenGridInstance } from '../core/types.js';\nimport '../styles/base.css';\n\nexport interface OpenGridProps<T extends Record<string, any> = any> {\n data?: T[];\n columns: ColumnDef<T>[];\n height?: number | string;\n width?: number | string;\n editable?: boolean;\n sortable?: boolean;\n filterable?: boolean;\n rowNumber?: boolean;\n checkColumn?: boolean;\n frozenColumns?: number;\n theme?: string;\n options?: Partial<GridOptions<T>>;\n style?: CSSProperties;\n className?: string;\n\n stateColumn?: boolean;\n draggable?: boolean;\n\n onReady?: (grid: OpenGridInstance<T>) => void;\n onDataChange?: (data: T[]) => void;\n onCellClick?: (e: any) => void;\n onRowClick?: (e: any) => void;\n onEditEnd?: (e: any) => void;\n onSortChange?: (e: any) => void;\n onFilterChange?: (e: any) => void;\n onRowDrop?: (e: { fromIndex: number; toIndex: number }) => void;\n}\n\nexport function OpenGridReact<T extends Record<string, any> = any>({\n data,\n columns,\n height = 400,\n width = '100%',\n editable = false,\n sortable = true,\n filterable = true,\n rowNumber = false,\n checkColumn = false,\n stateColumn = false,\n draggable = false,\n frozenColumns = 0,\n theme = 'default',\n options,\n style,\n className,\n onReady,\n onDataChange,\n onCellClick,\n onRowClick,\n onEditEnd,\n onSortChange,\n onFilterChange,\n onRowDrop,\n}: OpenGridProps<T>) {\n const containerRef = useRef<HTMLDivElement>(null);\n const gridRef = useRef<OpenGridInstance<T> | null>(null);\n\n const containerStyle: CSSProperties = {\n height: typeof height === 'number' ? `${height}px` : height,\n width: typeof width === 'number' ? `${width}px` : width,\n display: 'block',\n boxSizing: 'border-box',\n ...style,\n };\n\n useEffect(() => {\n if (!containerRef.current) return;\n\n const gridOptions: GridOptions<T> = {\n columns,\n height: '100%',\n width: '100%',\n editable,\n sortable,\n filterable,\n rowNumber,\n checkColumn,\n stateColumn,\n draggable,\n frozenColumns,\n theme,\n ...options,\n\n onReady: (grid) => {\n gridRef.current = grid;\n if (data?.length) grid.setData(data);\n onReady?.(grid);\n },\n ...(onDataChange && { onDataChange }),\n ...(onCellClick && { onCellClick }),\n ...(onRowClick && { onRowClick }),\n ...(onEditEnd && { onEditEnd }),\n ...(onSortChange && { onSortChange }),\n ...(onFilterChange && { onFilterChange }),\n ...(onRowDrop && { onRowDrop }),\n };\n\n const grid = new OpenGrid<T>(containerRef.current, gridOptions);\n gridRef.current = grid;\n\n return () => {\n grid.destroy();\n gridRef.current = null;\n };\n // theme은 별도 effect에서 처리하므로 deps에서 제외\n }, [columns, editable, sortable, filterable, rowNumber, checkColumn, stateColumn, draggable, frozenColumns]);\n\n // data 변경 감지\n useEffect(() => {\n if (gridRef.current && data) {\n gridRef.current.setData(data);\n }\n }, [data]);\n\n // theme 변경 감지 (그리드 재생성 없이 setTheme만 호출)\n useEffect(() => {\n if (gridRef.current) gridRef.current.setTheme(theme);\n }, [theme]);\n\n return (\n <div\n ref={containerRef}\n style={containerStyle}\n className={className}\n />\n );\n}\n\n// ref forwarder (외부에서 grid 인스턴스 접근)\nexport const OpenGridWithRef = React.forwardRef<\n OpenGridInstance,\n OpenGridProps\n>((props, ref) => {\n const innerRef = useRef<HTMLDivElement>(null);\n const gridRef = useRef<OpenGridInstance | null>(null);\n\n useEffect(() => {\n if (gridRef.current && ref) {\n if (typeof ref === 'function') ref(gridRef.current);\n else (ref as React.MutableRefObject<OpenGridInstance | null>).current = gridRef.current;\n }\n });\n\n return <OpenGridReact {...props} />;\n});\n\nOpenGridWithRef.displayName = 'OpenGrid';\n"],"names":["OpenGridReact","data","columns","height","width","editable","sortable","filterable","rowNumber","checkColumn","stateColumn","draggable","frozenColumns","theme","options","style","className","onReady","onDataChange","onCellClick","onRowClick","onEditEnd","onSortChange","onFilterChange","onRowDrop","containerRef","useRef","gridRef","containerStyle","useEffect","gridOptions","grid","OpenGrid","jsx","OpenGridWithRef","React","props","ref"],"mappings":"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"}
|