{
  "version": 3,
  "sources": ["../../../src/index.ts", "../../../src/Grid/Grid.tsx", "../../../src/CellEditor/CellEditor.tsx", "../../../src/CellEditor/GridCellEditor.tsx"],
  "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nexport { defaultColSize, defaultRowSize } from '@dxos/lit-grid';\n\nexport * from './Grid';\nexport * from './CellEditor';\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport '@dxos/lit-grid/dx-grid.pcss';\n\nimport { createComponent, type EventName } from '@lit/react';\nimport { createContextScope, type Scope } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport React, {\n  type ComponentProps,\n  forwardRef,\n  type PropsWithChildren,\n  useCallback,\n  useEffect,\n  useState,\n} from 'react';\n\nimport { type DxAxisResize, type DxEditRequest, type DxGridCellsSelect, DxGrid as NaturalDxGrid } from '@dxos/lit-grid';\n\ntype DxGridElement = NaturalDxGrid;\n\nconst DxGrid = createComponent({\n  tagName: 'dx-grid',\n  elementClass: NaturalDxGrid,\n  react: React,\n  events: {\n    onAxisResize: 'dx-axis-resize' as EventName<DxAxisResize>,\n    onEdit: 'dx-edit-request' as EventName<DxEditRequest>,\n    onSelect: 'dx-grid-cells-select' as EventName<DxGridCellsSelect>,\n  },\n});\n\ntype GridEditBox = DxEditRequest['cellBox'];\n\nconst initialBox = {\n  insetInlineStart: 0,\n  insetBlockStart: 0,\n  inlineSize: 0,\n  blockSize: 0,\n} satisfies GridEditBox;\n\ntype GridEditing = {\n  index: DxEditRequest['cellIndex'];\n  cellElement: DxEditRequest['cellElement'];\n  initialContent: DxEditRequest['initialContent'];\n} | null;\n\ntype GridContextValue = {\n  id: string;\n  editing: GridEditing;\n  setEditing: (nextEditing: GridEditing) => void;\n  editBox: GridEditBox;\n  setEditBox: (nextEditBox: GridEditBox) => void;\n};\n\ntype GridScopedProps<P> = P & { __gridScope?: Scope };\n\nconst GRID_NAME = 'Grid';\n\nconst [createGridContext, createGridScope] = createContextScope(GRID_NAME, []);\n\nconst [GridProvider, useGridContext] = createGridContext<GridContextValue>(GRID_NAME);\n\ntype GridRootProps = PropsWithChildren<\n  { id: string } & Partial<{\n    editing: GridEditing;\n    defaultEditing: GridEditing;\n    onEditingChange: (nextEditing: GridEditing) => void;\n  }>\n>;\n\nconst GridRoot = ({\n  id,\n  editing: propsEditing,\n  defaultEditing,\n  onEditingChange,\n  children,\n  __gridScope,\n}: GridScopedProps<GridRootProps>) => {\n  const [editing = null, setEditing] = useControllableState({\n    prop: propsEditing,\n    defaultProp: defaultEditing,\n    onChange: onEditingChange,\n  });\n  const [editBox, setEditBox] = useState<GridEditBox>(initialBox);\n  return (\n    <GridProvider\n      id={id}\n      editing={editing}\n      setEditing={setEditing}\n      editBox={editBox}\n      setEditBox={setEditBox}\n      scope={__gridScope}\n    >\n      <div className='dx-grid-host' style={{ display: 'contents' }}>\n        {children}\n      </div>\n    </GridProvider>\n  );\n};\n\nGridRoot.displayName = GRID_NAME;\n\ntype GridContentProps = Omit<ComponentProps<typeof DxGrid>, 'onEdit'> & {\n  getCells?: NaturalDxGrid['getCells'];\n  activeRefs?: string;\n};\n\nconst GRID_CONTENT_NAME = 'GridContent';\n\nconst GridContent = forwardRef<NaturalDxGrid, GridScopedProps<GridContentProps>>((props, forwardedRef) => {\n  const { id, editing, setEditBox, setEditing } = useGridContext(GRID_CONTENT_NAME, props.__gridScope);\n  const [dxGrid, setDxGridInternal] = useState<NaturalDxGrid | null>(null);\n\n  // NOTE(thure): using `useState` instead of `useRef` works with refs provided by `@lit/react` and gives us\n  // a reliable dependency for `useEffect` whereas `useLayoutEffect` does not guarantee the element will be defined.\n  const setDxGrid = useCallback(\n    (nextDxGrid: NaturalDxGrid | null) => {\n      setDxGridInternal(nextDxGrid);\n      if (forwardedRef) {\n        if (typeof forwardedRef === 'function') {\n          forwardedRef?.(nextDxGrid);\n        } else {\n          forwardedRef.current = nextDxGrid;\n        }\n      }\n    },\n    [forwardedRef, dxGrid],\n  );\n\n  useEffect(() => {\n    if (dxGrid && props.getCells) {\n      dxGrid.getCells = props.getCells;\n      dxGrid.requestUpdate('initialCells');\n    }\n  }, [props.getCells, dxGrid]);\n\n  const handleEdit = useCallback((event: DxEditRequest) => {\n    setEditBox(event.cellBox);\n    setEditing({ index: event.cellIndex, cellElement: event.cellElement, initialContent: event.initialContent });\n  }, []);\n\n  return <DxGrid {...props} gridId={id} mode={editing ? 'edit' : 'browse'} onEdit={handleEdit} ref={setDxGrid} />;\n});\n\nGridContent.displayName = GRID_CONTENT_NAME;\n\n//\n// Fragments\n//\n\n// NOTE(Zan): These fragments add border to inline-end and block-end of the grid using pseudo-elements.\n// These are offset by 1px to avoid double borders in planks.\nconst gridSeparatorInlineEnd =\n  '[&>.dx-grid]:relative [&>.dx-grid]:after:absolute [&>.dx-grid]:after:inset-block-0 [&>.dx-grid]:after:-inline-end-px [&>.dx-grid]:after:is-px [&>.dx-grid]:after:bg-subduedSeparator';\nconst gridSeparatorBlockEnd =\n  '[&>.dx-grid]:relative [&>.dx-grid]:before:absolute [&>.dx-grid]:before:inset-inline-0 [&>.dx-grid]:before:-block-end-px [&>.dx-grid]:before:bs-px [&>.dx-grid]:before:bg-subduedSeparator';\n\n//\n// Exports\n//\n\nexport const Grid = {\n  Root: GridRoot,\n  Content: GridContent,\n};\n\nexport { GridRoot, GridContent, useGridContext, createGridScope, gridSeparatorInlineEnd, gridSeparatorBlockEnd };\n\nexport type { GridRootProps, GridContentProps, GridEditing, GridEditBox, GridScopedProps, DxGridElement };\n\nexport {\n  colToA1Notation,\n  rowToA1Notation,\n  closestCell,\n  commentedClassName,\n  toPlaneCellIndex,\n  parseCellIndex,\n  cellQuery,\n} from '@dxos/lit-grid';\n\nexport type {\n  DxGridRange,\n  DxGridAxisMeta,\n  DxAxisResize,\n  DxGridCells,\n  DxGridPlaneRange,\n  DxGridPlaneCells,\n  DxGridCellIndex,\n  DxGridPlaneCellIndex,\n  DxGridCellValue,\n  DxGridPlane,\n  DxGridPosition,\n  DxGridPlanePosition,\n  DxGridAxis,\n} from '@dxos/lit-grid';\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { completionStatus } from '@codemirror/autocomplete';\nimport { type Extension } from '@codemirror/state';\nimport { EditorView, keymap } from '@codemirror/view';\nimport React, { type KeyboardEvent } from 'react';\n\nimport { useThemeContext } from '@dxos/react-ui';\nimport {\n  type UseTextEditorProps,\n  createBasicExtensions,\n  createThemeExtensions,\n  preventNewline,\n  useTextEditor,\n} from '@dxos/react-ui-editor';\n\nimport { type GridEditBox } from '../Grid';\n\nexport type EditorKeyEvent = Pick<KeyboardEvent<HTMLInputElement>, 'key'> & { shift?: boolean };\n\nexport type EditorKeyHandler = (value: string | undefined, event: EditorKeyEvent) => void;\nexport type EditorBlurHandler = (value: string | undefined) => void;\nexport type EditorKeyOrBlurHandler = (value: string | undefined, event?: EditorKeyEvent) => void;\n\nexport type EditorKeysProps = {\n  onClose: EditorKeyHandler;\n  onNav?: EditorKeyHandler;\n};\n\n// TODO(Zan): Should each consumer be responsible for defining these?\nexport const editorKeys = ({ onNav, onClose }: EditorKeysProps): Extension => {\n  return keymap.of([\n    {\n      key: 'ArrowUp',\n      run: (editor) => {\n        const value = editor.state.doc.toString();\n        onNav?.(value, { key: 'ArrowUp' });\n        return !!onNav;\n      },\n    },\n    {\n      key: 'ArrowDown',\n      run: (editor) => {\n        const value = editor.state.doc.toString();\n        onNav?.(value, { key: 'ArrowDown' });\n        return !!onNav;\n      },\n    },\n    {\n      key: 'Mod-ArrowLeft',\n      run: (editor) => {\n        const value = editor.state.doc.toString();\n        onNav?.(value, { key: 'ArrowLeft' });\n        return !!onNav;\n      },\n    },\n    {\n      key: 'Mod-ArrowRight',\n      run: (editor) => {\n        const value = editor.state.doc.toString();\n        onNav?.(value, { key: 'ArrowRight' });\n        return !!onNav;\n      },\n    },\n    {\n      key: 'Enter',\n      run: (editor) => {\n        if (completionStatus(editor.state)) {\n          return false;\n        } else {\n          onClose(editor.state.doc.toString(), { key: 'Enter' });\n          return true;\n        }\n      },\n      shift: (editor) => {\n        if (completionStatus(editor.state)) {\n          return false;\n        } else {\n          onClose(editor.state.doc.toString(), { key: 'Enter', shift: true });\n          return true;\n        }\n      },\n    },\n    {\n      key: 'Tab',\n      run: (editor) => {\n        if (completionStatus(editor.state)) {\n          return false;\n        } else {\n          onClose(editor.state.doc.toString(), { key: 'Tab' });\n          return true;\n        }\n      },\n      shift: (editor) => {\n        if (completionStatus(editor.state)) {\n          return false;\n        } else {\n          onClose(editor.state.doc.toString(), { key: 'Tab', shift: true });\n          return true;\n        }\n      },\n    },\n    {\n      key: 'Escape',\n      run: () => {\n        onClose(undefined, { key: 'Escape' });\n        return true;\n      },\n    },\n  ]);\n};\n\nexport type CellEditorProps = {\n  value?: string;\n  extension?: Extension;\n  box?: GridEditBox;\n  gridId?: string;\n} & Pick<UseTextEditorProps, 'autoFocus'> & { onBlur?: EditorBlurHandler };\n\nexport const CellEditor = ({ value, extension, autoFocus, onBlur, box, gridId }: CellEditorProps) => {\n  const { themeMode } = useThemeContext();\n  const { parentRef } = useTextEditor(() => {\n    return {\n      autoFocus,\n      initialValue: value,\n      selection: { anchor: value?.length ?? 0 },\n      extensions: [\n        extension ?? [],\n        preventNewline,\n        EditorView.focusChangeEffect.of((state, focusing) => {\n          if (!focusing) {\n            onBlur?.(state.doc.toString());\n          }\n          return null;\n        }),\n        createBasicExtensions({ lineWrapping: false }),\n        createThemeExtensions({\n          themeMode,\n          slots: {\n            editor: {\n              className: '[&>.cm-scroller]:scrollbar-none tabular-nums',\n            },\n            content: {\n              className:\n                '!border !border-transparent !pli-[var(--dx-grid-cell-padding-inline)] !plb-[var(--dx-grid-cell-padding-block)]',\n            },\n          },\n        }),\n      ],\n    };\n  }, [extension, autoFocus, value, onBlur]);\n\n  return (\n    <div\n      data-testid='grid.cell-editor'\n      ref={parentRef}\n      className='absolute z-[1]'\n      style={{\n        ...box,\n        ...{ '--dx-gridCellWidth': `${box?.inlineSize ?? 200}px` },\n      }}\n      {...(gridId && { 'data-grid': gridId })}\n    />\n  );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { CellEditor, type CellEditorProps } from './CellEditor';\nimport { type GridScopedProps, useGridContext, type DxGridCellIndex } from '../Grid';\n\nexport type GridCellEditorProps = GridScopedProps<\n  Pick<CellEditorProps, 'extension' | 'onBlur'> & { getCellContent: (index: DxGridCellIndex) => string | undefined }\n>;\n\nexport const GridCellEditor = ({ extension, getCellContent, onBlur, __gridScope }: GridCellEditorProps) => {\n  const { id, editing, setEditing, editBox } = useGridContext('GridSheetCellEditor', __gridScope);\n\n  const handleBlur = useCallback(\n    (value?: string) => {\n      setEditing(null);\n      onBlur?.(value);\n    },\n    [onBlur],\n  );\n\n  return editing ? (\n    <CellEditor\n      value={editing.initialContent ?? getCellContent(editing.index)}\n      autoFocus\n      box={editBox}\n      onBlur={handleBlur}\n      extension={extension}\n      gridId={id}\n    />\n  ) : null;\n};\n"],
  "mappings": "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",
  "names": ["defaultColSize", "defaultRowSize", "createComponent", "createContextScope", "useControllableState", "React", "forwardRef", "useCallback", "useEffect", "useState", "DxGrid", "NaturalDxGrid", "colToA1Notation", "rowToA1Notation", "closestCell", "commentedClassName", "toPlaneCellIndex", "parseCellIndex", "cellQuery", "DxGrid", "createComponent", "tagName", "elementClass", "NaturalDxGrid", "react", "React", "events", "onAxisResize", "onEdit", "onSelect", "initialBox", "insetInlineStart", "insetBlockStart", "inlineSize", "blockSize", "GRID_NAME", "createGridContext", "createGridScope", "createContextScope", "GridProvider", "useGridContext", "GridRoot", "id", "editing", "propsEditing", "defaultEditing", "onEditingChange", "children", "__gridScope", "setEditing", "useControllableState", "prop", "defaultProp", "onChange", "editBox", "setEditBox", "useState", "scope", "div", "className", "style", "display", "displayName", "GRID_CONTENT_NAME", "GridContent", "forwardRef", "props", "forwardedRef", "dxGrid", "setDxGridInternal", "setDxGrid", "useCallback", "nextDxGrid", "current", "useEffect", "getCells", "requestUpdate", "handleEdit", "event", "cellBox", "index", "cellIndex", "cellElement", "initialContent", "gridId", "mode", "ref", "gridSeparatorInlineEnd", "gridSeparatorBlockEnd", "Grid", "Root", "Content", "completionStatus", "EditorView", "keymap", "React", "useThemeContext", "createBasicExtensions", "createThemeExtensions", "preventNewline", "useTextEditor", "editorKeys", "onNav", "onClose", "keymap", "of", "key", "run", "editor", "value", "state", "doc", "toString", "completionStatus", "shift", "undefined", "CellEditor", "extension", "autoFocus", "onBlur", "box", "gridId", "themeMode", "useThemeContext", "parentRef", "useTextEditor", "initialValue", "selection", "anchor", "length", "extensions", "preventNewline", "EditorView", "focusChangeEffect", "focusing", "createBasicExtensions", "lineWrapping", "createThemeExtensions", "slots", "className", "content", "React", "div", "data-testid", "ref", "style", "inlineSize", "React", "useCallback", "GridCellEditor", "extension", "getCellContent", "onBlur", "__gridScope", "id", "editing", "setEditing", "editBox", "useGridContext", "handleBlur", "useCallback", "value", "React", "CellEditor", "initialContent", "index", "autoFocus", "box", "gridId"]
}
