// import React, { useState, useCallback } from "react"
// import {
// RenderCellProps,
// RenderColHeaderProps,
// RenderRowHeaderProps,
// GridComponent,
// RenderCellEditorProps,
// SaveEditFunc
// } from "./GridComponent"
// import ReactSelect from "react-select"
// export const GridComponentDemo = () => {
// const [colWidths, setColWidths] = useState([100, 200, 300])
// const renderCell = (props: RenderCellProps) => {
// return
{`x${props.row}:${props.col}`}
// }
// const renderColHeader = (props: RenderColHeaderProps) => {
// return {`x${props.col}`}
// }
// const renderRowHeader = (props: RenderRowHeaderProps) => {
// return (
//
//
//
// )
// }
// const renderCellEditor = (props: RenderCellEditorProps) => {
// return
// }
// return (
//
// "X"}
// rowHeaderExtraHeight={20}
// renderRowHeaderExtra={() => "X"}
// canEdit={() => true}
// />
//
// )
// }
// const Editor = (props: { width: number; setSaveEdit: (saveEditFunc: SaveEditFunc) => void }) => {
// const [value, setValue] = useState(null)
// props.setSaveEdit(() => {
// //alert(value)
// return new Promise((resolve, reject) => {
// setTimeout(() => {
// resolve(true)
// }, 10000)
// })
// })
// /** Focus on select */
// const selectRef = useCallback((node: ReactSelect | null) => {
// if (node) {
// setTimeout(() => {
// node.focus()
// }, 0)
// }
// }, [])
// return (
//
// {
// console.log("onChange")
// setValue(v)
// }}
// onBlur={() => {
// console.log("onBlur")
// }}
// isMulti={true}
// ref={selectRef}
// />
//
// )
// }