quadratic icon indicating copy to clipboard operation
quadratic copied to clipboard

Data tables v1

Open ddimaria opened this issue 5 months ago • 3 comments

Main branch for merging data table related work.

Closes https://github.com/quadratichq/quadratic/issues/1412

Data Tables (Rust and quadraticCore)

  • [x] Convert sheet.code_runs into sheet.data_tables, moving code_runs inside of data tables
  • [x] CSV and Parquet Imports become another data_table sub type instead of being on the grid
  • [x] Column metadata (name, order, hidden)
    • [x] Apply First Row as Header
    • [x] Apply Default Headers
    • [x] New Raw Data Table
    • [x] Set Header At
    • [x] Set Header Display At
  • [x] Table metadata (name, readonly)
  • [x] Edit data table in place (readonly=false)
  • [x] Flatten Table (data table to grid)
  • [x] Grid to data table
  • [x] Sort data tables
  • [x] Table names should always be unique
  • [x] Ensure table name is unique after user edit
  • [x] Code table to data table (only for Code Tables)
  • [ ] Ensure column names are always unique within a table
  • [ ] Toggle show alternating colors
  • [ ] Toggle showing table column headers
  • [ ] Rename column headers (only for Data Tables? We may want to allow code table columns to be renamed if first_row_as_header == false)
  • [ ] Filter data tables
  • [ ] Copy and paste data tables

UI (TS)

  • [x] Show table name on cursor hover or when the cursor is inside the table
  • [x] table name scales w/app
  • [x] Render Table headings w/styles
  • [x] rename table
  • [x] Rename column headers
  • [x] Table headers should not have opacity. Grid lines overlap content.
  • [x] Table column sort dialog
  • [x] Sort table dialog
  • [x] Spill error rework
  • [ ] improve connection icons when displayed in table name
  • [ ] Selecting entire table
  • [ ] Selecting table column
  • [ ] Formatting for table
  • [ ] Formatting for table cells
  • [ ] Formatting for table headings
  • [ ] Formatting for table columns
  • [ ] maybe change text clipping rules for tables?
  • [ ] move data table by dragging on table name?
  • [ ] should not be able to autocomplete table column headers
  • [ ] Selecting multiple tables, and showing their borders selected. Feels like it should work like Figma with multi frame selections

Quadratic Code Additions

  • [ ] A1 support of tables
  • [ ] JS API to include data table name
  • [ ] Python API to include data table name

Bugs

  • [ ] Entering data via down arrow causes a weird state (type text, press down arrow; type text, press down arrow, continue until you the grid ends up losing focus)
  • [x] Cell error popup no longer working
  • [ ] Bug with rename column name

Reach Goals

  • [ ] group table (in sort)

Documentation and Test Files

  • [ ] Change all example files to use Sheet1 instead of Sheet 1

ddimaria avatar Sep 24 '24 16:09 ddimaria