@react-stately/table 3.0.0-beta.0 → 3.0.0-nightly-641446f65-240905

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.
Files changed (76) hide show
  1. package/dist/Cell.main.js +38 -0
  2. package/dist/Cell.main.js.map +1 -0
  3. package/dist/Cell.mjs +33 -0
  4. package/dist/Cell.module.js +33 -0
  5. package/dist/Cell.module.js.map +1 -0
  6. package/dist/Column.main.js +75 -0
  7. package/dist/Column.main.js.map +1 -0
  8. package/dist/Column.mjs +66 -0
  9. package/dist/Column.module.js +66 -0
  10. package/dist/Column.module.js.map +1 -0
  11. package/dist/Row.main.js +97 -0
  12. package/dist/Row.main.js.map +1 -0
  13. package/dist/Row.mjs +88 -0
  14. package/dist/Row.module.js +88 -0
  15. package/dist/Row.module.js.map +1 -0
  16. package/dist/TableBody.main.js +61 -0
  17. package/dist/TableBody.main.js.map +1 -0
  18. package/dist/TableBody.mjs +52 -0
  19. package/dist/TableBody.module.js +52 -0
  20. package/dist/TableBody.module.js.map +1 -0
  21. package/dist/TableCollection.main.js +288 -0
  22. package/dist/TableCollection.main.js.map +1 -0
  23. package/dist/TableCollection.mjs +282 -0
  24. package/dist/TableCollection.module.js +282 -0
  25. package/dist/TableCollection.module.js.map +1 -0
  26. package/dist/TableColumnLayout.main.js +113 -0
  27. package/dist/TableColumnLayout.main.js.map +1 -0
  28. package/dist/TableColumnLayout.mjs +108 -0
  29. package/dist/TableColumnLayout.module.js +108 -0
  30. package/dist/TableColumnLayout.module.js.map +1 -0
  31. package/dist/TableHeader.main.js +56 -0
  32. package/dist/TableHeader.main.js.map +1 -0
  33. package/dist/TableHeader.mjs +47 -0
  34. package/dist/TableHeader.module.js +47 -0
  35. package/dist/TableHeader.module.js.map +1 -0
  36. package/dist/TableUtils.main.js +182 -0
  37. package/dist/TableUtils.main.js.map +1 -0
  38. package/dist/TableUtils.mjs +175 -0
  39. package/dist/TableUtils.module.js +175 -0
  40. package/dist/TableUtils.module.js.map +1 -0
  41. package/dist/import.mjs +37 -0
  42. package/dist/main.js +39 -593
  43. package/dist/main.js.map +1 -1
  44. package/dist/module.js +22 -564
  45. package/dist/module.js.map +1 -1
  46. package/dist/types.d.ts +163 -9
  47. package/dist/types.d.ts.map +1 -1
  48. package/dist/useTableColumnResizeState.main.js +109 -0
  49. package/dist/useTableColumnResizeState.main.js.map +1 -0
  50. package/dist/useTableColumnResizeState.mjs +104 -0
  51. package/dist/useTableColumnResizeState.module.js +104 -0
  52. package/dist/useTableColumnResizeState.module.js.map +1 -0
  53. package/dist/useTableState.main.js +71 -0
  54. package/dist/useTableState.main.js.map +1 -0
  55. package/dist/useTableState.mjs +66 -0
  56. package/dist/useTableState.module.js +66 -0
  57. package/dist/useTableState.module.js.map +1 -0
  58. package/dist/useTreeGridState.main.js +207 -0
  59. package/dist/useTreeGridState.main.js.map +1 -0
  60. package/dist/useTreeGridState.mjs +202 -0
  61. package/dist/useTreeGridState.module.js +202 -0
  62. package/dist/useTreeGridState.module.js.map +1 -0
  63. package/package.json +18 -10
  64. package/src/Cell.ts +4 -1
  65. package/src/Column.ts +12 -2
  66. package/src/Row.ts +50 -10
  67. package/src/TableBody.ts +6 -2
  68. package/src/TableCollection.ts +99 -15
  69. package/src/TableColumnLayout.ts +127 -0
  70. package/src/TableHeader.ts +11 -2
  71. package/src/TableUtils.ts +253 -0
  72. package/src/index.ts +15 -6
  73. package/src/useTableColumnResizeState.ts +147 -0
  74. package/src/useTableState.ts +43 -16
  75. package/src/useTreeGridState.ts +277 -0
  76. package/LICENSE +0 -201
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["./node_modules/@parcel/scope-hoisting/lib/helpers.js","./packages/@react-stately/table/src/TableCollection.ts","./packages/@react-stately/table/src/useTableState.ts","./packages/@react-stately/table/src/TableHeader.ts","./packages/@react-stately/table/src/TableBody.ts","./packages/@react-stately/table/src/Column.ts","./packages/@react-stately/table/src/Row.ts","./packages/@react-stately/table/src/Cell.ts"],"sourcesContent":["function $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$defineInteropFlag(a) {\n Object.defineProperty(a, '__esModule', {value: true});\n}\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule') {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n },\n });\n });\n\n return dest;\n}\n\nfunction $parcel$missingModule(name) {\n var err = new Error(\"Cannot find module '\" + name + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n}\n\nvar $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport {GridCollection} from '@react-stately/grid';\nimport {GridNode} from '@react-types/grid';\nimport {Key} from 'react';\n\ninterface GridCollectionOptions {\n showSelectionCheckboxes?: boolean\n}\n\nconst ROW_HEADER_COLUMN_KEY = 'row-header-column-' + Math.random().toString(36).slice(2);\n\nfunction buildHeaderRows<T>(keyMap: Map<Key, GridNode<T>>, columnNodes: GridNode<T>[]): GridNode<T>[] {\n let columns = [];\n let seen = new Map();\n for (let column of columnNodes) {\n let parentKey = column.parentKey;\n let col = [column];\n\n while (parentKey) {\n let parent: GridNode<T> = keyMap.get(parentKey);\n\n // If we've already seen this parent, than it is shared\n // with a previous column. If the current column is taller\n // than the previous column, than we need to shift the parent\n // in the previous column so it's level with the current column.\n if (seen.has(parent)) {\n parent.colspan++;\n\n let {column, index} = seen.get(parent);\n if (index > col.length) {\n break;\n }\n\n for (let i = index; i < col.length; i++) {\n column.splice(i, 0, null);\n }\n\n // Adjust shifted indices\n for (let i = col.length; i < column.length; i++) {\n if (column[i] && seen.has(column[i])) {\n seen.get(column[i]).index = i;\n }\n }\n } else {\n parent.colspan = 1;\n col.push(parent);\n seen.set(parent, {column: col, index: col.length - 1});\n }\n\n parentKey = parent.parentKey;\n }\n\n columns.push(col);\n column.index = columns.length - 1;\n }\n\n let maxLength = Math.max(...columns.map(c => c.length));\n let headerRows = Array(maxLength).fill(0).map(() => []);\n\n // Convert columns into rows.\n let colIndex = 0;\n for (let column of columns) {\n let i = maxLength - 1;\n for (let item of column) {\n if (item) {\n // Fill the space up until the current column with a placeholder\n let row = headerRows[i];\n let rowLength = row.reduce((p, c) => p + c.colspan, 0);\n if (rowLength < colIndex) {\n let placeholder: GridNode<T> = {\n type: 'placeholder',\n key: 'placeholder-' + item.key,\n colspan: colIndex - rowLength,\n index: rowLength,\n value: null,\n rendered: null,\n level: i,\n hasChildNodes: false,\n childNodes: [],\n textValue: null\n };\n\n if (row.length > 0) {\n row[row.length - 1].nextKey = placeholder.key;\n placeholder.prevKey = row[row.length - 1].key;\n }\n\n row.push(placeholder);\n }\n\n if (row.length > 0) {\n row[row.length - 1].nextKey = item.key;\n item.prevKey = row[row.length - 1].key;\n }\n\n item.level = i;\n item.index = colIndex;\n row.push(item);\n }\n\n i--;\n }\n\n colIndex++;\n }\n\n // Add placeholders at the end of each row that is shorter than the maximum\n let i = 0;\n for (let row of headerRows) {\n let rowLength = row.reduce((p, c) => p + c.colspan, 0);\n if (rowLength < columnNodes.length) {\n let placeholder: GridNode<T> = {\n type: 'placeholder',\n key: 'placeholder-' + row[row.length - 1].key,\n colspan: columnNodes.length - rowLength,\n index: rowLength,\n value: null,\n rendered: null,\n level: i,\n hasChildNodes: false,\n childNodes: [],\n textValue: null,\n prevKey: row[row.length - 1].key\n };\n\n row.push(placeholder);\n }\n\n i++;\n }\n\n return headerRows.map((childNodes, index) => {\n let row: GridNode<T> = {\n type: 'headerrow',\n key: 'headerrow-' + index,\n index,\n value: null,\n rendered: null,\n level: 0,\n hasChildNodes: true,\n childNodes,\n textValue: null\n };\n\n return row;\n });\n}\n\nexport class TableCollection<T> extends GridCollection<T> {\n headerRows: GridNode<T>[];\n columns: GridNode<T>[];\n rowHeaderColumnKeys: Set<Key>;\n body: GridNode<T>;\n\n constructor(nodes: Iterable<GridNode<T>>, prev?: TableCollection<T>, opts?: GridCollectionOptions) {\n let rowHeaderColumnKeys: Set<Key> = new Set();\n let body: GridNode<T>;\n let columns = [];\n\n // Add cell for selection checkboxes if needed.\n if (opts?.showSelectionCheckboxes) {\n let rowHeaderColumn: GridNode<T> = {\n type: 'column',\n key: ROW_HEADER_COLUMN_KEY,\n value: null,\n textValue: '',\n level: 0,\n index: 0,\n hasChildNodes: false,\n rendered: null,\n childNodes: [],\n props: {\n isSelectionCell: true\n }\n };\n\n columns.unshift(rowHeaderColumn);\n }\n\n let rows = [];\n let columnKeyMap = new Map();\n let visit = (node: GridNode<T>) => {\n switch (node.type) {\n case 'body':\n body = node;\n break;\n case 'column':\n columnKeyMap.set(node.key, node);\n if (!node.hasChildNodes) {\n columns.push(node);\n\n if (node.props.isRowHeader) {\n rowHeaderColumnKeys.add(node.key);\n }\n }\n break;\n case 'item':\n rows.push(node);\n return; // do not go into childNodes\n }\n for (let child of node.childNodes) {\n visit(child);\n }\n };\n\n for (let node of nodes) {\n visit(node);\n }\n let headerRows = buildHeaderRows(columnKeyMap, columns) as GridNode<T>[];\n headerRows.forEach((row, i) => rows.splice(i, 0, row));\n\n super({\n columnCount: columns.length,\n items: rows,\n visitNode: node => {\n node.column = columns[node.index];\n return node;\n }\n });\n this.columns = columns;\n this.rowHeaderColumnKeys = rowHeaderColumnKeys;\n this.body = body;\n this.headerRows = headerRows;\n\n // Default row header column to the first one.\n if (this.rowHeaderColumnKeys.size === 0) {\n this.rowHeaderColumnKeys.add(this.columns[opts?.showSelectionCheckboxes ? 1 : 0].key);\n }\n }\n\n *[Symbol.iterator]() {\n yield* this.body.childNodes;\n }\n\n get size() {\n return [...this.body.childNodes].length;\n }\n\n getKeys() {\n return this.keyMap.keys();\n }\n\n getKeyBefore(key: Key) {\n let node = this.keyMap.get(key);\n return node ? node.prevKey : null;\n }\n\n getKeyAfter(key: Key) {\n let node = this.keyMap.get(key);\n return node ? node.nextKey : null;\n }\n\n getFirstKey() {\n return [...this.body.childNodes][0]?.key;\n }\n\n getLastKey() {\n let rows = [...this.body.childNodes];\n return rows[rows.length - 1]?.key;\n }\n\n getItem(key: Key) {\n return this.keyMap.get(key);\n }\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {CollectionBase, MultipleSelection, Node, SelectionMode, Sortable, SortDescriptor, SortDirection} from '@react-types/shared';\nimport {GridState, useGridState} from '@react-stately/grid';\nimport {TableCollection as ITableCollection} from '@react-types/table';\nimport {Key, useMemo} from 'react';\nimport {TableCollection} from './TableCollection';\nimport {useCollection} from '@react-stately/collections';\n\nexport interface TableState<T> extends GridState<T, ITableCollection<T>> {\n /** A collection of rows and columns in the table. */\n collection: ITableCollection<T>,\n /** Whether the row selection checkboxes should be displayed. */\n showSelectionCheckboxes: boolean,\n /** The current sorted column and direction. */\n sortDescriptor: SortDescriptor,\n /** Calls the provided onSortChange handler with the provided column key and sort direction. */\n sort(columnKey: Key): void\n}\n\nexport interface CollectionBuilderContext<T> {\n showSelectionCheckboxes: boolean,\n selectionMode: SelectionMode,\n columns: Node<T>[]\n}\n\nexport interface TableStateProps<T> extends CollectionBase<T>, MultipleSelection, Sortable {\n /** Whether the row selection checkboxes should be displayed. */\n showSelectionCheckboxes?: boolean\n}\n\nconst OPPOSITE_SORT_DIRECTION = {\n ascending: 'descending' as SortDirection,\n descending: 'ascending' as SortDirection\n};\n\n/**\n * Provides state management for a table component. Handles building a collection\n * of columns and rows from props. In addition, it tracks row selection and manages sort order changes.\n */\nexport function useTableState<T extends object>(props: TableStateProps<T>): TableState<T> {\n let {selectionMode = 'none'} = props;\n\n let context = useMemo(() => ({\n showSelectionCheckboxes: props.showSelectionCheckboxes && selectionMode !== 'none',\n selectionMode,\n columns: []\n }), [props.children, props.showSelectionCheckboxes, selectionMode]);\n\n let collection = useCollection<T, TableCollection<T>>(\n props,\n (nodes, prev) => new TableCollection(nodes, prev, context),\n context\n );\n let {disabledKeys, selectionManager} = useGridState({...props, collection});\n\n return {\n collection,\n disabledKeys,\n selectionManager,\n showSelectionCheckboxes: props.showSelectionCheckboxes || false,\n sortDescriptor: props.sortDescriptor,\n sort(columnKey: Key) {\n props.onSortChange({\n column: columnKey,\n direction: props.sortDescriptor?.column === columnKey\n ? OPPOSITE_SORT_DIRECTION[props.sortDescriptor.direction]\n : 'ascending'\n });\n }\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {PartialNode} from '@react-stately/collections';\nimport React, {ReactElement} from 'react';\nimport {TableHeaderProps} from '@react-types/table';\n\nfunction TableHeader<T>(props: TableHeaderProps<T>): ReactElement { // eslint-disable-line @typescript-eslint/no-unused-vars\n return null;\n}\n\nTableHeader.getCollectionNode = function* getCollectionNode<T>(props: TableHeaderProps<T>): Generator<PartialNode<T>, void, any> {\n let {children, columns} = props;\n if (typeof children === 'function') {\n if (!columns) {\n throw new Error('props.children was a function but props.columns is missing');\n }\n\n for (let column of columns) {\n yield {\n type: 'column',\n value: column,\n renderer: children\n };\n }\n } else {\n let columns: PartialNode<T>[] = [];\n React.Children.forEach(children, column => {\n columns.push({\n type: 'column',\n element: column\n });\n });\n\n yield* columns;\n }\n};\n\n// We don't want getCollectionNode to show up in the type definition\nlet _TableHeader = TableHeader as <T>(props: TableHeaderProps<T>) => JSX.Element;\nexport {_TableHeader as TableHeader};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {PartialNode} from '@react-stately/collections';\nimport React, {ReactElement} from 'react';\nimport {TableBodyProps} from '@react-types/table';\n\nfunction TableBody<T>(props: TableBodyProps<T>): ReactElement { // eslint-disable-line @typescript-eslint/no-unused-vars\n return null;\n}\n\nTableBody.getCollectionNode = function* getCollectionNode<T>(props: TableBodyProps<T>): Generator<PartialNode<T>> {\n let {children, items} = props;\n yield {\n type: 'body',\n hasChildNodes: true,\n props,\n *childNodes() {\n if (typeof children === 'function') {\n if (!items) {\n throw new Error('props.children was a function but props.items is missing');\n }\n \n for (let item of items) {\n yield {\n type: 'item',\n value: item,\n renderer: children\n };\n }\n } else {\n let items: PartialNode<T>[] = [];\n React.Children.forEach(children, item => {\n items.push({\n type: 'item',\n element: item\n });\n });\n\n yield* items;\n }\n }\n };\n};\n\n// We don't want getCollectionNode to show up in the type definition\nlet _TableBody = TableBody as <T>(props: TableBodyProps<T>) => JSX.Element;\nexport {_TableBody as TableBody};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {CollectionBuilderContext} from './useTableState';\nimport {ColumnProps} from '@react-types/table';\nimport {GridNode} from '@react-types/grid';\nimport {PartialNode} from '@react-stately/collections';\nimport React, {ReactElement} from 'react';\n\nfunction Column<T>(props: ColumnProps<T>): ReactElement { // eslint-disable-line @typescript-eslint/no-unused-vars\n return null;\n}\n\nColumn.getCollectionNode = function* getCollectionNode<T>(props: ColumnProps<T>, context: CollectionBuilderContext<T>): Generator<PartialNode<T>, void, GridNode<T>[]> {\n let {title, children, childColumns} = props;\n let fullNodes = yield {\n type: 'column',\n hasChildNodes: !!childColumns || (title && React.Children.count(children) > 0),\n rendered: title || children,\n props,\n *childNodes() {\n if (childColumns) {\n for (let child of childColumns) {\n yield {\n type: 'column',\n value: child\n };\n }\n } else if (title) {\n let childColumns: PartialNode<T>[] = [];\n React.Children.forEach(children, child => {\n childColumns.push({\n type: 'column',\n element: child as ReactElement<ColumnProps<T>>\n });\n });\n\n yield* childColumns;\n }\n },\n shouldInvalidate(newContext: CollectionBuilderContext<T>) {\n // This is a bit of a hack, but it works.\n // If this method is called, then there's a cached version of this node available.\n // But, we need to keep the list of columns in the new context up to date.\n updateContext(newContext);\n return false;\n }\n };\n\n let updateContext = (context: CollectionBuilderContext<T>) => {\n // register leaf columns on the context so that <Row> can access them\n for (let node of fullNodes) {\n if (!node.hasChildNodes) {\n context.columns.push(node);\n }\n }\n };\n\n updateContext(context);\n};\n\n// We don't want getCollectionNode to show up in the type definition\nlet _Column = Column as <T>(props: ColumnProps<T>) => JSX.Element;\nexport {_Column as Column};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {CollectionBuilderContext} from './useTableState';\nimport {PartialNode} from '@react-stately/collections';\nimport React, {ReactElement} from 'react';\nimport {RowProps} from '@react-types/table';\n\nfunction Row(props: RowProps): ReactElement { // eslint-disable-line @typescript-eslint/no-unused-vars\n return null;\n}\n\nRow.getCollectionNode = function* getCollectionNode<T>(props: RowProps, context: CollectionBuilderContext<T>): Generator<PartialNode<T>> {\n let {children, textValue} = props;\n\n yield {\n type: 'item',\n props: props,\n textValue,\n 'aria-label': props['aria-label'],\n hasChildNodes: true,\n *childNodes() {\n // Process cells first\n if (context.showSelectionCheckboxes && context.selectionMode !== 'none') {\n yield {\n type: 'cell',\n key: 'header', // this is combined with the row key by CollectionBuilder\n props: {\n isSelectionCell: true\n }\n };\n }\n\n if (typeof children === 'function') {\n for (let column of context.columns) {\n yield {\n type: 'cell',\n element: children(column.key),\n key: column.key // this is combined with the row key by CollectionBuilder\n };\n }\n } else {\n let cells: PartialNode<T>[] = [];\n React.Children.forEach(children, cell => {\n cells.push({\n type: 'cell',\n element: cell\n });\n });\n\n if (cells.length !== context.columns.length) {\n throw new Error(`Cell count must match column count. Found ${cells.length} cells and ${context.columns.length} columns.`);\n }\n\n yield* cells;\n }\n },\n shouldInvalidate(newContext: CollectionBuilderContext<T>) {\n // Invalidate all rows if the columns changed.\n return newContext.columns.length !== context.columns.length ||\n newContext.columns.some((c, i) => c.key !== context.columns[i].key) ||\n newContext.showSelectionCheckboxes !== context.showSelectionCheckboxes ||\n newContext.selectionMode !== context.selectionMode;\n }\n };\n};\n\n// We don't want getCollectionNode to show up in the type definition\nlet _Row = Row as (props: RowProps) => JSX.Element;\nexport {_Row as Row};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {CellProps} from '@react-types/table';\nimport {PartialNode} from '@react-stately/collections';\nimport {ReactElement} from 'react';\n\nfunction Cell(props: CellProps): ReactElement { // eslint-disable-line @typescript-eslint/no-unused-vars\n return null;\n}\n\nCell.getCollectionNode = function* getCollectionNode<T>(props: CellProps): Generator<PartialNode<T>> {\n let {children} = props;\n\n let textValue = props.textValue || (typeof children === 'string' ? children : '') || props['aria-label'] || '';\n yield {\n type: 'cell',\n props: props,\n rendered: children,\n textValue,\n 'aria-label': props['aria-label'],\n hasChildNodes: false\n };\n};\n\n// We don't want getCollectionNode to show up in the type definition\nlet _Cell = Cell as (props: CellProps) => JSX.Element;\nexport {_Cell as Cell};\n"],"names":["$parcel$interopDefault","a","__esModule","default","ROW_HEADER_COLUMN_KEY","Math","random","toString","slice","buildHeaderRows","keyMap","columnNodes","columns","seen","Map","column","parentKey","col","parent","get","has","colspan","index","length","i","splice","push","set","maxLength","max","map","c","headerRows","Array","fill","colIndex","item","row","rowLength","reduce","p","placeholder","type","key","value","rendered","level","hasChildNodes","childNodes","textValue","nextKey","prevKey","Symbol","iterator","TableCollection","GridCollection","constructor","nodes","prev","opts","rowHeaderColumnKeys","Set","body","showSelectionCheckboxes","rowHeaderColumn","props","isSelectionCell","unshift","rows","columnKeyMap","visit","node","isRowHeader","add","child","forEach","columnCount","items","visitNode","size","getKeys","keys","getKeyBefore","getKeyAfter","getFirstKey","getLastKey","getItem","OPPOSITE_SORT_DIRECTION","ascending","descending","useTableState","selectionMode","context","useMemo","children","collection","useCollection","disabledKeys","selectionManager","useGridState","sortDescriptor","sort","columnKey","onSortChange","direction","TableHeader","getCollectionNode","Error","renderer","React","Children","element","_TableHeader","TableBody","_TableBody","Column","title","childColumns","fullNodes","count","shouldInvalidate","newContext","updateContext","_Column","Row","cells","cell","some","_Row","Cell","_Cell"],"version":3,"file":"main.js.map"}
1
+ {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC","sources":["packages/@react-stately/table/src/index.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport type {TableColumnResizeState, TableColumnResizeStateProps} from './useTableColumnResizeState';\nexport type {TableState, CollectionBuilderContext, TableStateProps} from './useTableState';\nexport type {TableHeaderProps, TableBodyProps, ColumnProps, RowProps, CellProps} from '@react-types/table';\nexport type {TreeGridState, TreeGridStateProps} from './useTreeGridState';\n\nexport {useTableColumnResizeState} from './useTableColumnResizeState';\nexport {useTableState} from './useTableState';\nexport {TableHeader} from './TableHeader';\nexport {TableBody} from './TableBody';\nexport {Column} from './Column';\nexport {Row} from './Row';\nexport {Cell} from './Cell';\nexport {Section} from '@react-stately/collections';\nexport {TableCollection, buildHeaderRows} from './TableCollection';\nexport {TableColumnLayout} from './TableColumnLayout';\nexport {UNSTABLE_useTreeGridState} from './useTreeGridState';\n"],"names":[],"version":3,"file":"main.js.map"}