@react-aria/table 3.3.0 → 3.3.1-nightly.3293

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/dist/main.js CHANGED
@@ -456,13 +456,13 @@ $parcel$export($7669c34a63ef0113$exports, "useTableColumnHeader", () => $7669c34
456
456
  function $7669c34a63ef0113$export$9514819a8c81e960(props, state, ref) {
457
457
  var ref1, ref2;
458
458
  let { node: node } = props;
459
- // let allowsResizing = node.props.allowsResizing;
459
+ let allowsResizing = node.props.allowsResizing;
460
460
  let allowsSorting = node.props.allowsSorting;
461
461
  let { gridCellProps: gridCellProps } = $kJQf8$reactariagrid.useGridCell(props, state, ref);
462
462
  let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';
463
463
  let { pressProps: pressProps } = $kJQf8$reactariainteractions.usePress({
464
464
  // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.
465
- isDisabled: !allowsSorting || isSelectionCellDisabled,
465
+ isDisabled: !allowsSorting || isSelectionCellDisabled || allowsResizing,
466
466
  onPress () {
467
467
  state.sort(node.key);
468
468
  }
@@ -580,6 +580,65 @@ function $0b394e4562ac57c9$export$1003db6a7e384b99(state) {
580
580
  }
581
581
 
582
582
 
583
+ var $16d645f9e2153641$exports = {};
584
+
585
+ $parcel$export($16d645f9e2153641$exports, "useTableColumnResize", () => $16d645f9e2153641$export$52994e973806c219);
586
+
587
+
588
+
589
+
590
+
591
+ function $16d645f9e2153641$export$52994e973806c219(state, item, ref) {
592
+ const stateRef = $kJQf8$react.useRef(null);
593
+ // keep track of what the cursor on the body is so it can be restored back to that when done resizing
594
+ const cursor = $kJQf8$react.useRef(null);
595
+ stateRef.current = state;
596
+ let { direction: direction } = $kJQf8$reactariai18n.useLocale();
597
+ let { focusableProps: focusableProps } = $kJQf8$reactariafocus.useFocusable({
598
+ excludeFromTabOrder: true
599
+ }, ref);
600
+ let { keyboardProps: keyboardProps } = $kJQf8$reactariainteractions.useKeyboard({
601
+ onKeyDown: (e)=>{
602
+ if (e.key === 'Tab') // useKeyboard stops propagation by default. We want to continue propagation for tab so focus leaves the table
603
+ e.continuePropagation();
604
+ if (e.key === 'Escape' || e.key === 'Enter' || e.key === ' ') {
605
+ // switch focus back to the column header on escape
606
+ const columnHeader = ref.current.previousSibling;
607
+ if (columnHeader) $kJQf8$reactariafocus.focusSafely(columnHeader);
608
+ }
609
+ }
610
+ });
611
+ const columnResizeWidthRef = $kJQf8$react.useRef(null);
612
+ const { moveProps: moveProps } = $kJQf8$reactariainteractions.useMove({
613
+ onMoveStart () {
614
+ stateRef.current.onColumnResizeStart();
615
+ columnResizeWidthRef.current = stateRef.current.getColumnWidth(item.key);
616
+ cursor.current = document.body.style.cursor;
617
+ document.body.style.setProperty('cursor', 'col-resize');
618
+ },
619
+ onMove ({ deltaX: deltaX , pointerType: pointerType }) {
620
+ if (direction === 'rtl') deltaX *= -1;
621
+ // if moving up/down only, no need to resize
622
+ if (deltaX !== 0) {
623
+ if (pointerType === 'keyboard') deltaX *= 10;
624
+ columnResizeWidthRef.current += deltaX;
625
+ stateRef.current.onColumnResize(item, columnResizeWidthRef.current);
626
+ }
627
+ },
628
+ onMoveEnd () {
629
+ stateRef.current.onColumnResizeEnd();
630
+ columnResizeWidthRef.current = 0;
631
+ document.body.style.cursor = cursor.current;
632
+ }
633
+ });
634
+ return {
635
+ resizerProps: {
636
+ ...$kJQf8$reactariautils.mergeProps(moveProps, focusableProps, keyboardProps)
637
+ }
638
+ };
639
+ }
640
+
641
+
583
642
  function $cd66afe5decb6adb$export$6fb1613bd7b28198() {
584
643
  return $kJQf8$reactariagrid.useGridRowGroup();
585
644
  }
@@ -589,6 +648,7 @@ $parcel$exportWildcard(module.exports, $10b2115217af7c93$exports);
589
648
  $parcel$exportWildcard(module.exports, $eb16c38321a72835$exports);
590
649
  $parcel$exportWildcard(module.exports, $32387a1f2c61cda2$exports);
591
650
  $parcel$exportWildcard(module.exports, $0b394e4562ac57c9$exports);
651
+ $parcel$exportWildcard(module.exports, $16d645f9e2153641$exports);
592
652
 
593
653
 
594
654
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-aria/table/src/index.ts","packages/@react-aria/table/src/useTable.ts","packages/@react-aria/table/src/utils.ts","packages/@react-aria/table/intl/*.js","packages/@react-aria/table/intl/ar-AE.json","packages/@react-aria/table/intl/bg-BG.json","packages/@react-aria/table/intl/cs-CZ.json","packages/@react-aria/table/intl/da-DK.json","packages/@react-aria/table/intl/de-DE.json","packages/@react-aria/table/intl/el-GR.json","packages/@react-aria/table/intl/en-US.json","packages/@react-aria/table/intl/es-ES.json","packages/@react-aria/table/intl/et-EE.json","packages/@react-aria/table/intl/fi-FI.json","packages/@react-aria/table/intl/fr-FR.json","packages/@react-aria/table/intl/he-IL.json","packages/@react-aria/table/intl/hr-HR.json","packages/@react-aria/table/intl/hu-HU.json","packages/@react-aria/table/intl/it-IT.json","packages/@react-aria/table/intl/ja-JP.json","packages/@react-aria/table/intl/ko-KR.json","packages/@react-aria/table/intl/lt-LT.json","packages/@react-aria/table/intl/lv-LV.json","packages/@react-aria/table/intl/nb-NO.json","packages/@react-aria/table/intl/nl-NL.json","packages/@react-aria/table/intl/pl-PL.json","packages/@react-aria/table/intl/pt-BR.json","packages/@react-aria/table/intl/pt-PT.json","packages/@react-aria/table/intl/ro-RO.json","packages/@react-aria/table/intl/ru-RU.json","packages/@react-aria/table/intl/sk-SK.json","packages/@react-aria/table/intl/sl-SI.json","packages/@react-aria/table/intl/sr-SP.json","packages/@react-aria/table/intl/sv-SE.json","packages/@react-aria/table/intl/tr-TR.json","packages/@react-aria/table/intl/uk-UA.json","packages/@react-aria/table/intl/zh-CN.json","packages/@react-aria/table/intl/zh-TW.json","packages/@react-aria/table/src/TableKeyboardDelegate.ts","packages/@react-aria/table/src/useTableColumnHeader.ts","packages/@react-aria/table/src/useTableRow.ts","packages/@react-aria/table/src/useTableHeaderRow.ts","packages/@react-aria/table/src/useTableCell.ts","packages/@react-aria/table/src/useTableSelectionCheckbox.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 * from './useTable';\nexport * from './useTableColumnHeader';\nexport * from './useTableRow';\nexport * from './useTableHeaderRow';\nexport * from './useTableCell';\nexport * from './useTableSelectionCheckbox';\n// export * from './useTableColumnResize';\n\n// Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...\n// export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';\nimport {GridRowGroupAria, useGridRowGroup} from '@react-aria/grid';\nexport function useTableRowGroup(): GridRowGroupAria {\n return useGridRowGroup();\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 {announce} from '@react-aria/live-announcer';\nimport {GridAria, GridProps, useGrid} from '@react-aria/grid';\nimport {gridIds} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Layout} from '@react-stately/virtualizer';\nimport {mergeProps, useDescription, useId, useUpdateEffect} from '@react-aria/utils';\nimport {Node} from '@react-types/shared';\nimport {RefObject, useMemo} from 'react';\nimport {TableKeyboardDelegate} from './TableKeyboardDelegate';\nimport {TableState} from '@react-stately/table';\nimport {useCollator, useLocale} from '@react-aria/i18n';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface TableProps<T> extends GridProps {\n /** The layout object for the table. Computes what content is visible and how to position and style them. */\n layout?: Layout<Node<T>>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table component.\n * A table displays data in rows and columns and enables a user to navigate its contents via directional navigation keys,\n * and optionally supports row selection and sorting.\n * @param props - Props for the table.\n * @param state - State for the table, as returned by `useTableState`.\n * @param ref - The ref attached to the table element.\n */\nexport function useTable<T>(props: TableProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridAria {\n let {\n keyboardDelegate,\n isVirtualized,\n layout\n } = props;\n\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = useCollator({usage: 'search', sensitivity: 'base'});\n let {direction} = useLocale();\n let delegate = useMemo(() => keyboardDelegate || new TableKeyboardDelegate({\n collection: state.collection,\n disabledKeys: state.disabledKeys,\n ref,\n direction,\n collator,\n layout\n }), [keyboardDelegate, state.collection, state.disabledKeys, ref, direction, collator, layout]);\n\n let id = useId();\n gridIds.set(state, id);\n\n let {gridProps} = useGrid({\n ...props,\n id,\n keyboardDelegate: delegate,\n getRowText(key): string {\n let added = state.collection.getItem(key);\n if (!added) {\n return '';\n }\n\n // If the row has a textValue, use that.\n if (added.textValue != null) {\n return added.textValue;\n }\n\n // Otherwise combine the text of each of the row header columns.\n let rowHeaderColumnKeys = state.collection.rowHeaderColumnKeys;\n if (rowHeaderColumnKeys) {\n let text = [];\n for (let cell of added.childNodes) {\n let column = state.collection.columns[cell.index];\n if (rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n text.push(cell.textValue);\n }\n\n if (text.length === rowHeaderColumnKeys.size) {\n break;\n }\n }\n\n return text.join(' ');\n }\n\n return '';\n }\n }, state, ref);\n\n // Override to include header rows\n if (isVirtualized) {\n gridProps['aria-rowcount'] = state.collection.size + state.collection.headerRows.length;\n }\n\n let {column, direction: sortDirection} = state.sortDescriptor || {};\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription = useMemo(() => {\n let columnName = state.collection.columns.find(c => c.key === column)?.textValue;\n return sortDirection && column ? formatMessage(`${sortDirection}Sort`, {columnName}) : undefined;\n }, [sortDirection, column, state.collection.columns]);\n\n let descriptionProps = useDescription(sortDescription);\n\n // Only announce after initial render, tabbing to the table will tell you the initial sort info already\n useUpdateEffect(() => {\n announce(sortDescription, 'assertive', 500);\n }, [sortDescription]);\n\n return {\n gridProps: mergeProps(\n gridProps,\n descriptionProps,\n {\n // merge sort description with long press information\n 'aria-describedby': [descriptionProps['aria-describedby'], gridProps['aria-describedby']].filter(Boolean).join(' ')\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 {Key} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport const gridIds = new WeakMap<TableState<unknown>, string>();\n\nfunction normalizeKey(key: Key): string {\n if (typeof key === 'string') {\n return key.replace(/\\s*/g, '');\n }\n\n return '' + key;\n}\n\nexport function getColumnHeaderId<T>(state: TableState<T>, columnKey: Key): string {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(columnKey)}`;\n}\n\nexport function getCellId<T>(state: TableState<T>, rowKey: Key, columnKey: Key) {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(rowKey)}-${normalizeKey(columnKey)}`;\n}\n\nexport function getRowLabelledBy<T>(state: TableState<T>, rowKey: Key): string {\n // A row is labelled by it's row headers.\n return [...state.collection.rowHeaderColumnKeys].map(columnKey =>\n getCellId(state, rowKey, columnKey)\n ).join(' ');\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"ascending\": \"تصاعدي\",\n \"ascendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تصاعدي\",\n \"descending\": \"تنازلي\",\n \"descendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تنازلي\",\n \"select\": \"تحديد\",\n \"selectAll\": \"تحديد الكل\",\n \"sortable\": \"عمود قابل للترتيب\"\n}\n","{\n \"ascending\": \"възходящ\",\n \"ascendingSort\": \"сортирано по колона {columnName} във възходящ ред\",\n \"descending\": \"низходящ\",\n \"descendingSort\": \"сортирано по колона {columnName} в низходящ ред\",\n \"select\": \"Изберете\",\n \"selectAll\": \"Изберете всичко\",\n \"sortable\": \"сортираща колона\"\n}\n","{\n \"ascending\": \"vzestupně\",\n \"ascendingSort\": \"řazeno vzestupně podle sloupce {columnName}\",\n \"descending\": \"sestupně\",\n \"descendingSort\": \"řazeno sestupně podle sloupce {columnName}\",\n \"select\": \"Vybrat\",\n \"selectAll\": \"Vybrat vše\",\n \"sortable\": \"sloupec s možností řazení\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sorteret efter kolonne {columnName} i stigende rækkefølge\",\n \"descending\": \"faldende\",\n \"descendingSort\": \"sorteret efter kolonne {columnName} i faldende rækkefølge\",\n \"select\": \"Vælg\",\n \"selectAll\": \"Vælg alle\",\n \"sortable\": \"sorterbar kolonne\"\n}\n","{\n \"ascending\": \"aufsteigend\",\n \"ascendingSort\": \"sortiert nach Spalte {columnName} in aufsteigender Reihenfolge\",\n \"descending\": \"absteigend\",\n \"descendingSort\": \"sortiert nach Spalte {columnName} in absteigender Reihenfolge\",\n \"select\": \"Auswählen\",\n \"selectAll\": \"Alles auswählen\",\n \"sortable\": \"sortierbare Spalte\"\n}\n","{\n \"ascending\": \"αύξουσα\",\n \"ascendingSort\": \"διαλογή ανά στήλη {columnName} σε αύξουσα σειρά\",\n \"descending\": \"φθίνουσα\",\n \"descendingSort\": \"διαλογή ανά στήλη {columnName} σε φθίνουσα σειρά\",\n \"select\": \"Επιλογή\",\n \"selectAll\": \"Επιλογή όλων\",\n \"sortable\": \"Στήλη διαλογής\"\n}\n","{\n \"select\": \"Select\",\n \"selectAll\": \"Select All\",\n \"sortable\": \"sortable column\",\n \"ascending\": \"ascending\",\n \"descending\": \"descending\",\n \"ascendingSort\": \"sorted by column {columnName} in ascending order\",\n \"descendingSort\": \"sorted by column {columnName} in descending order\"\n}\n","{\n \"ascending\": \"de subida\",\n \"ascendingSort\": \"ordenado por columna {columnName} en orden de subida\",\n \"descending\": \"de bajada\",\n \"descendingSort\": \"ordenado por columna {columnName} en orden de bajada\",\n \"select\": \"Seleccionar\",\n \"selectAll\": \"Seleccionar todos\",\n \"sortable\": \"columna ordenable\"\n}\n","{\n \"ascending\": \"tõusev järjestus\",\n \"ascendingSort\": \"sorditud veeru järgi {columnName} tõusvas järjestuses\",\n \"descending\": \"laskuv järjestus\",\n \"descendingSort\": \"sorditud veeru järgi {columnName} laskuvas järjestuses\",\n \"select\": \"Vali\",\n \"selectAll\": \"Vali kõik\",\n \"sortable\": \"sorditav veerg\"\n}\n","{\n \"ascending\": \"nouseva\",\n \"ascendingSort\": \"lajiteltu sarakkeen {columnName} mukaan nousevassa järjestyksessä\",\n \"descending\": \"laskeva\",\n \"descendingSort\": \"lajiteltu sarakkeen {columnName} mukaan laskevassa järjestyksessä\",\n \"select\": \"Valitse\",\n \"selectAll\": \"Valitse kaikki\",\n \"sortable\": \"lajiteltava sarake\"\n}\n","{\n \"ascending\": \"croissant\",\n \"ascendingSort\": \"trié en fonction de la colonne {columnName} par ordre croissant\",\n \"descending\": \"décroissant\",\n \"descendingSort\": \"trié en fonction de la colonne {columnName} par ordre décroissant\",\n \"select\": \"Sélectionner\",\n \"selectAll\": \"Sélectionner tout\",\n \"sortable\": \"colonne triable\"\n}\n","{\n \"ascending\": \"עולה\",\n \"ascendingSort\": \"מוין לפי עמודה {columnName} בסדר עולה\",\n \"descending\": \"יורד\",\n \"descendingSort\": \"מוין לפי עמודה {columnName} בסדר יורד\",\n \"select\": \"בחר\",\n \"selectAll\": \"בחר הכול\",\n \"sortable\": \"עמודה שניתן למיין\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"razvrstano po stupcima {columnName} rastućem redoslijedom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"razvrstano po stupcima {columnName} padajućim redoslijedom\",\n \"select\": \"Odaberite\",\n \"selectAll\": \"Odaberite sve\",\n \"sortable\": \"stupac koji se može razvrstati\"\n}\n","{\n \"ascending\": \"növekvő\",\n \"ascendingSort\": \"rendezve a(z) {columnName} oszlop szerint, növekvő sorrendben\",\n \"descending\": \"csökkenő\",\n \"descendingSort\": \"rendezve a(z) {columnName} oszlop szerint, csökkenő sorrendben\",\n \"select\": \"Kijelölés\",\n \"selectAll\": \"Összes kijelölése\",\n \"sortable\": \"rendezendő oszlop\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"in ordine crescente in base alla colonna {columnName}\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"in ordine decrescente in base alla colonna {columnName}\",\n \"select\": \"Seleziona\",\n \"selectAll\": \"Seleziona tutto\",\n \"sortable\": \"colonna ordinabile\"\n}\n","{\n \"ascending\": \"昇順\",\n \"ascendingSort\": \"列 {columnName} を昇順で並べ替え\",\n \"descending\": \"降順\",\n \"descendingSort\": \"列 {columnName} を降順で並べ替え\",\n \"select\": \"選択\",\n \"selectAll\": \"すべて選択\",\n \"sortable\": \"並べ替え可能な列\"\n}\n","{\n \"ascending\": \"오름차순\",\n \"ascendingSort\": \"{columnName} 열을 기준으로 오름차순으로 정렬됨\",\n \"descending\": \"내림차순\",\n \"descendingSort\": \"{columnName} 열을 기준으로 내림차순으로 정렬됨\",\n \"select\": \"선택\",\n \"selectAll\": \"모두 선택\",\n \"sortable\": \"정렬 가능한 열\"\n}\n","{\n \"ascending\": \"didėjančia tvarka\",\n \"ascendingSort\": \"surikiuota pagal stulpelį {columnName} didėjančia tvarka\",\n \"descending\": \"mažėjančia tvarka\",\n \"descendingSort\": \"surikiuota pagal stulpelį {columnName} mažėjančia tvarka\",\n \"select\": \"Pasirinkti\",\n \"selectAll\": \"Pasirinkti viską\",\n \"sortable\": \"rikiuojamas stulpelis\"\n}\n","{\n \"ascending\": \"augošā secībā\",\n \"ascendingSort\": \"kārtots pēc kolonnas {columnName} augošā secībā\",\n \"descending\": \"dilstošā secībā\",\n \"descendingSort\": \"kārtots pēc kolonnas {columnName} dilstošā secībā\",\n \"select\": \"Atlasīt\",\n \"selectAll\": \"Atlasīt visu\",\n \"sortable\": \"kārtojamā kolonna\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sortert etter kolonne {columnName} i stigende rekkefølge\",\n \"descending\": \"synkende\",\n \"descendingSort\": \"sortert etter kolonne {columnName} i synkende rekkefølge\",\n \"select\": \"Velg\",\n \"selectAll\": \"Velg alle\",\n \"sortable\": \"kolonne som kan sorteres\"\n}\n","{\n \"ascending\": \"oplopend\",\n \"ascendingSort\": \"gesorteerd in oplopende volgorde in kolom {columnName}\",\n \"descending\": \"aflopend\",\n \"descendingSort\": \"gesorteerd in aflopende volgorde in kolom {columnName}\",\n \"select\": \"Selecteren\",\n \"selectAll\": \"Alles selecteren\",\n \"sortable\": \"sorteerbare kolom\"\n}\n","{\n \"ascending\": \"rosnąco\",\n \"ascendingSort\": \"posortowano według kolumny {columnName} w porządku rosnącym\",\n \"descending\": \"malejąco\",\n \"descendingSort\": \"posortowano według kolumny {columnName} w porządku malejącym\",\n \"select\": \"Zaznacz\",\n \"selectAll\": \"Zaznacz wszystko\",\n \"sortable\": \"kolumna z możliwością sortowania\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"classificado pela coluna {columnName} em ordem crescente\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"classificado pela coluna {columnName} em ordem decrescente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"coluna classificável\"\n}\n","{\n \"ascending\": \"ascendente\",\n \"ascendingSort\": \"Ordenar por coluna {columnName} em ordem ascendente\",\n \"descending\": \"descendente\",\n \"descendingSort\": \"Ordenar por coluna {columnName} em ordem descendente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"Coluna ordenável\"\n}\n","{\n \"ascending\": \"crescătoare\",\n \"ascendingSort\": \"sortate după coloana {columnName} în ordine crescătoare\",\n \"descending\": \"descrescătoare\",\n \"descendingSort\": \"sortate după coloana {columnName} în ordine descrescătoare\",\n \"select\": \"Selectare\",\n \"selectAll\": \"Selectare totală\",\n \"sortable\": \"coloană sortabilă\"\n}\n","{\n \"ascending\": \"возрастание\",\n \"ascendingSort\": \"сортировать столбец {columnName} в порядке возрастания\",\n \"descending\": \"убывание\",\n \"descendingSort\": \"сортировать столбец {columnName} в порядке убывания\",\n \"select\": \"Выбрать\",\n \"selectAll\": \"Выбрать все\",\n \"sortable\": \"сортируемый столбец\"\n}\n","{\n \"ascending\": \"vzostupne\",\n \"ascendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"descending\": \"zostupne\",\n \"descendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"select\": \"Vybrať\",\n \"selectAll\": \"Vybrať všetko\",\n \"sortable\": \"zoraditeľný stĺpec\"\n}\n","{\n \"ascending\": \"naraščajoče\",\n \"ascendingSort\": \"razvrščeno po stolpcu {columnName} v naraščajočem vrstnem redu\",\n \"descending\": \"padajoče\",\n \"descendingSort\": \"razvrščeno po stolpcu {columnName} v padajočem vrstnem redu\",\n \"select\": \"Izberite\",\n \"selectAll\": \"Izberite vse\",\n \"sortable\": \"razvrstljivi stolpec\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"sortirano po kolonama {columnName} rastućim redosledom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"sortirano po kolonama {columnName} padajućim redosledom\",\n \"select\": \"Izaberite\",\n \"selectAll\": \"Izaberite sve\",\n \"sortable\": \"kolona koja se može sortirati\"\n}\n","{\n \"ascending\": \"stigande\",\n \"ascendingSort\": \"sorterat på kolumn {columnName} i stigande ordning\",\n \"descending\": \"fallande\",\n \"descendingSort\": \"sorterat på kolumn {columnName} i fallande ordning\",\n \"select\": \"Markera\",\n \"selectAll\": \"Markera allt\",\n \"sortable\": \"sorterbar kolumn\"\n}\n","{\n \"ascending\": \"artan sırada\",\n \"ascendingSort\": \"{columnName} sütuna göre artan düzende sırala\",\n \"descending\": \"azalan sırada\",\n \"descendingSort\": \"{columnName} sütuna göre azalan düzende sırala\",\n \"select\": \"Seç\",\n \"selectAll\": \"Tümünü Seç\",\n \"sortable\": \"Sıralanabilir sütun\"\n}\n","{\n \"ascending\": \"висхідний\",\n \"ascendingSort\": \"відсортовано за стовпцем {columnName} у висхідному порядку\",\n \"descending\": \"низхідний\",\n \"descendingSort\": \"відсортовано за стовпцем {columnName} у низхідному порядку\",\n \"select\": \"Вибрати\",\n \"selectAll\": \"Вибрати все\",\n \"sortable\": \"сортувальний стовпець\"\n}\n","{\n \"ascending\": \"升序\",\n \"ascendingSort\": \"按列 {columnName} 升序排序\",\n \"descending\": \"降序\",\n \"descendingSort\": \"按列 {columnName} 降序排序\",\n \"select\": \"选择\",\n \"selectAll\": \"全选\",\n \"sortable\": \"可排序的列\"\n}\n","{\n \"ascending\": \"遞增\",\n \"ascendingSort\": \"已依據「{columnName}」欄遞增排序\",\n \"descending\": \"遞減\",\n \"descendingSort\": \"已依據「{columnName}」欄遞減排序\",\n \"select\": \"選取\",\n \"selectAll\": \"全選\",\n \"sortable\": \"可排序的欄\"\n}\n","/*\n * Copyright 2022 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 {GridKeyboardDelegate} from '@react-aria/grid';\nimport {Key} from 'react';\nimport {Node} from '@react-types/shared';\nimport {TableCollection} from '@react-types/table';\n\nexport class TableKeyboardDelegate<T> extends GridKeyboardDelegate<T, TableCollection<T>> {\n\n protected isCell(node: Node<T>) {\n return node.type === 'cell' || node.type === 'rowheader' || node.type === 'column';\n }\n\n getKeyBelow(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, then focus the first child column if any,\n // or find the corresponding cell in the first row.\n if (startItem.type === 'column') {\n let child = [...startItem.childNodes][0];\n if (child) {\n return child.key;\n }\n\n let firstKey = this.getFirstKey();\n if (firstKey == null) {\n return;\n }\n\n let firstItem = this.collection.getItem(firstKey);\n return [...firstItem.childNodes][startItem.index].key;\n }\n\n return super.getKeyBelow(key);\n }\n\n getKeyAbove(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, focus the parent column if any\n if (startItem.type === 'column') {\n let parent = this.collection.getItem(startItem.parentKey);\n if (parent && parent.type === 'column') {\n return parent.key;\n }\n\n return;\n }\n\n // only return above row key if not header row\n let superKey = super.getKeyAbove(key);\n if (superKey != null && this.collection.getItem(superKey).type !== 'headerrow') {\n return superKey;\n }\n\n // If no item was found, and focus was on a cell, then focus the\n // corresponding column header.\n if (this.isCell(startItem)) {\n return this.collection.columns[startItem.index].key;\n }\n\n // If focus was on a row, then focus the first column header.\n return this.collection.columns[0].key;\n }\n\n private findNextColumnKey(column: Node<T>) {\n // Search following columns\n let key = this.findNextKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the first column\n let row = this.collection.headerRows[column.level];\n for (let item of row.childNodes) {\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n private findPreviousColumnKey(column: Node<T>) {\n // Search previous columns\n let key = this.findPreviousKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the last column\n let row = this.collection.headerRows[column.level];\n let childNodes = [...row.childNodes];\n for (let i = childNodes.length - 1; i >= 0; i--) {\n let item = childNodes[i];\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n getKeyRightOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the next column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findPreviousColumnKey(item)\n : this.findNextColumnKey(item);\n }\n\n return super.getKeyRightOf(key);\n }\n\n getKeyLeftOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the previous column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findNextColumnKey(item)\n : this.findPreviousColumnKey(item);\n }\n\n return super.getKeyLeftOf(key);\n }\n\n getKeyForSearch(search: string, fromKey?: Key) {\n if (!this.collator) {\n return null;\n }\n\n let collection = this.collection;\n let key = fromKey ?? this.getFirstKey();\n if (key == null) {\n return null;\n }\n\n // If the starting key is a cell, search from its parent row.\n let startItem = collection.getItem(key);\n if (startItem.type === 'cell') {\n key = startItem.parentKey;\n }\n\n let hasWrapped = false;\n while (key != null) {\n let item = collection.getItem(key);\n\n // Check each of the row header cells in this row for a match\n for (let cell of item.childNodes) {\n let column = collection.columns[cell.index];\n if (collection.rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n let substring = cell.textValue.slice(0, search.length);\n if (this.collator.compare(substring, search) === 0) {\n // If we started on a cell, end on the matching cell. Otherwise, end on the row.\n let fromItem = fromKey != null ? collection.getItem(fromKey) : startItem;\n return fromItem.type === 'cell'\n ? cell.key\n : item.key;\n }\n }\n }\n\n key = this.getKeyBelow(key);\n\n // Wrap around when reaching the end of the collection\n if (key == null && !hasWrapped) {\n key = this.getFirstKey();\n hasWrapped = true;\n }\n }\n\n return null;\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 {getColumnHeaderId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {isAndroid, mergeProps, useDescription} from '@react-aria/utils';\nimport {TableState} from '@react-stately/table';\nimport {useFocusable} from '@react-aria/focus';\nimport {useGridCell} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\nimport {usePress} from '@react-aria/interactions';\n\ninterface ColumnHeaderProps {\n /** An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader). Contains all the relevant information that makes up the column header. */\n node: GridNode<unknown>,\n /** Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a virtual scroller. */\n isVirtualized?: boolean\n}\n\ninterface ColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(props: ColumnHeaderProps, state: TableState<T>, ref: RefObject<HTMLElement>): ColumnHeaderAria {\n let {node} = props;\n // let allowsResizing = node.props.allowsResizing;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell(props, state, ref);\n\n let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n let {pressProps} = usePress({\n // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.\n isDisabled: !allowsSorting || isSelectionCellDisabled, // || allowsResizing,\n onPress() {\n state.sort(node.key);\n }\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: HTMLAttributes<HTMLElement>['aria-sort'] = null;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${formatMessage('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${formatMessage(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n return {\n columnHeaderProps: {\n ...mergeProps(gridCellProps, pressProps, focusableProps, descriptionProps),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colspan && node.colspan > 1 ? node.colspan : null,\n 'aria-sort': ariaSort\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 {getRowLabelledBy} from './utils';\nimport {GridRowAria, GridRowProps, useGridRow} from '@react-aria/grid';\nimport {RefObject} from 'react';\nimport {TableCollection} from '@react-types/table';\nimport {TableState} from '@react-stately/table';\n\n/**\n * Provides the behavior and accessibility implementation for a row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridRowAria {\n let {node} = props;\n let {rowProps, isPressed} = useGridRow<T, TableCollection<T>, TableState<T>>(props, state, ref);\n return {\n rowProps: {\n ...rowProps,\n 'aria-labelledby': getRowLabelledBy(state, node.key)\n },\n isPressed\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 {GridRowProps} from '@react-aria/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport interface TableHeaderRowAria {\n /** Props for the grid row element. */\n rowProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a header row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function useTableHeaderRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): TableHeaderRowAria {\n let {node, isVirtualized} = props;\n let rowProps = {\n role: 'row'\n };\n\n if (isVirtualized) {\n rowProps['aria-rowindex'] = node.index + 1; // aria-rowindex is 1 based\n }\n\n return {\n rowProps\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 {getCellId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridCell} from '@react-aria/grid';\n\ninterface TableCellProps {\n /** An object representing the table cell. Contains all the relevant information that makes up the row header. */\n node: GridNode<unknown>,\n /** Whether the cell is contained in a virtual scroller. */\n isVirtualized?: boolean,\n /**\n * Handler that is called when a user performs an action on the cell.\n * Please use onCellAction at the collection level instead.\n * @deprecated\n **/\n onAction?: () => void\n}\n\ninterface TableCellAria {\n /** Props for the table cell element. */\n gridCellProps: HTMLAttributes<HTMLElement>,\n /** Whether the cell is currently in a pressed state. */\n isPressed: boolean\n}\n\n/**\n * Provides the behavior and accessibility implementation for a cell in a table.\n * @param props - Props for the cell.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the cell element.\n */\nexport function useTableCell<T>(props: TableCellProps, state: TableState<T>, ref: RefObject<HTMLElement>): TableCellAria {\n let {gridCellProps, isPressed} = useGridCell(props, state, ref);\n\n let columnKey = props.node.column.key;\n if (state.collection.rowHeaderColumnKeys.has(columnKey)) {\n gridCellProps.role = 'rowheader';\n gridCellProps.id = getCellId(state, props.node.parentKey, columnKey);\n }\n\n return {\n gridCellProps,\n isPressed\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 {AriaCheckboxProps} from '@react-types/checkbox';\nimport {getRowLabelledBy} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Key} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridSelectionCheckbox} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface SelectionCheckboxProps {\n /** A unique key for the checkbox. */\n key: Key\n}\n\ninterface SelectionCheckboxAria {\n /** Props for the row selection checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\ninterface SelectAllCheckboxAria {\n /** Props for the select all checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\n/**\n * Provides the behavior and accessibility implementation for a selection checkbox in a table.\n * @param props - Props for the selection checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectionCheckbox<T>(props: SelectionCheckboxProps, state: TableState<T>): SelectionCheckboxAria {\n let {key} = props;\n const {checkboxProps} = useGridSelectionCheckbox(props, state);\n\n return {\n checkboxProps: {\n ...checkboxProps,\n 'aria-labelledby': `${checkboxProps.id} ${getRowLabelledBy(state, key)}`\n }\n };\n}\n\n/**\n * Provides the behavior and accessibility implementation for the select all checkbox in a table.\n * @param props - Props for the select all checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectAllCheckbox<T>(state: TableState<T>): SelectAllCheckboxAria {\n let {isEmpty, isSelectAll, selectionMode} = state.selectionManager;\n const formatMessage = useMessageFormatter(intlMessages);\n\n return {\n checkboxProps: {\n 'aria-label': formatMessage(selectionMode === 'single' ? 'select' : 'selectAll'),\n isSelected: isSelectAll,\n isDisabled: selectionMode !== 'multiple',\n isIndeterminate: !isEmpty && !isSelectAll,\n onChange: () => state.selectionManager.toggleSelectAll()\n }\n };\n}\n"],"names":[],"version":3,"file":"main.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-aria/table/src/index.ts","packages/@react-aria/table/src/useTable.ts","packages/@react-aria/table/src/utils.ts","packages/@react-aria/table/intl/*.js","packages/@react-aria/table/intl/ar-AE.json","packages/@react-aria/table/intl/bg-BG.json","packages/@react-aria/table/intl/cs-CZ.json","packages/@react-aria/table/intl/da-DK.json","packages/@react-aria/table/intl/de-DE.json","packages/@react-aria/table/intl/el-GR.json","packages/@react-aria/table/intl/en-US.json","packages/@react-aria/table/intl/es-ES.json","packages/@react-aria/table/intl/et-EE.json","packages/@react-aria/table/intl/fi-FI.json","packages/@react-aria/table/intl/fr-FR.json","packages/@react-aria/table/intl/he-IL.json","packages/@react-aria/table/intl/hr-HR.json","packages/@react-aria/table/intl/hu-HU.json","packages/@react-aria/table/intl/it-IT.json","packages/@react-aria/table/intl/ja-JP.json","packages/@react-aria/table/intl/ko-KR.json","packages/@react-aria/table/intl/lt-LT.json","packages/@react-aria/table/intl/lv-LV.json","packages/@react-aria/table/intl/nb-NO.json","packages/@react-aria/table/intl/nl-NL.json","packages/@react-aria/table/intl/pl-PL.json","packages/@react-aria/table/intl/pt-BR.json","packages/@react-aria/table/intl/pt-PT.json","packages/@react-aria/table/intl/ro-RO.json","packages/@react-aria/table/intl/ru-RU.json","packages/@react-aria/table/intl/sk-SK.json","packages/@react-aria/table/intl/sl-SI.json","packages/@react-aria/table/intl/sr-SP.json","packages/@react-aria/table/intl/sv-SE.json","packages/@react-aria/table/intl/tr-TR.json","packages/@react-aria/table/intl/uk-UA.json","packages/@react-aria/table/intl/zh-CN.json","packages/@react-aria/table/intl/zh-TW.json","packages/@react-aria/table/src/TableKeyboardDelegate.ts","packages/@react-aria/table/src/useTableColumnHeader.ts","packages/@react-aria/table/src/useTableRow.ts","packages/@react-aria/table/src/useTableHeaderRow.ts","packages/@react-aria/table/src/useTableCell.ts","packages/@react-aria/table/src/useTableSelectionCheckbox.ts","packages/@react-aria/table/src/useTableColumnResize.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 * from './useTable';\nexport * from './useTableColumnHeader';\nexport * from './useTableRow';\nexport * from './useTableHeaderRow';\nexport * from './useTableCell';\nexport * from './useTableSelectionCheckbox';\nexport * from './useTableColumnResize';\n\n// Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...\n// export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';\nimport {GridRowGroupAria, useGridRowGroup} from '@react-aria/grid';\nexport function useTableRowGroup(): GridRowGroupAria {\n return useGridRowGroup();\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 {announce} from '@react-aria/live-announcer';\nimport {GridAria, GridProps, useGrid} from '@react-aria/grid';\nimport {gridIds} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Layout} from '@react-stately/virtualizer';\nimport {mergeProps, useDescription, useId, useUpdateEffect} from '@react-aria/utils';\nimport {Node} from '@react-types/shared';\nimport {RefObject, useMemo} from 'react';\nimport {TableKeyboardDelegate} from './TableKeyboardDelegate';\nimport {TableState} from '@react-stately/table';\nimport {useCollator, useLocale} from '@react-aria/i18n';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface TableProps<T> extends GridProps {\n /** The layout object for the table. Computes what content is visible and how to position and style them. */\n layout?: Layout<Node<T>>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table component.\n * A table displays data in rows and columns and enables a user to navigate its contents via directional navigation keys,\n * and optionally supports row selection and sorting.\n * @param props - Props for the table.\n * @param state - State for the table, as returned by `useTableState`.\n * @param ref - The ref attached to the table element.\n */\nexport function useTable<T>(props: TableProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridAria {\n let {\n keyboardDelegate,\n isVirtualized,\n layout\n } = props;\n\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = useCollator({usage: 'search', sensitivity: 'base'});\n let {direction} = useLocale();\n let delegate = useMemo(() => keyboardDelegate || new TableKeyboardDelegate({\n collection: state.collection,\n disabledKeys: state.disabledKeys,\n ref,\n direction,\n collator,\n layout\n }), [keyboardDelegate, state.collection, state.disabledKeys, ref, direction, collator, layout]);\n\n let id = useId();\n gridIds.set(state, id);\n\n let {gridProps} = useGrid({\n ...props,\n id,\n keyboardDelegate: delegate,\n getRowText(key): string {\n let added = state.collection.getItem(key);\n if (!added) {\n return '';\n }\n\n // If the row has a textValue, use that.\n if (added.textValue != null) {\n return added.textValue;\n }\n\n // Otherwise combine the text of each of the row header columns.\n let rowHeaderColumnKeys = state.collection.rowHeaderColumnKeys;\n if (rowHeaderColumnKeys) {\n let text = [];\n for (let cell of added.childNodes) {\n let column = state.collection.columns[cell.index];\n if (rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n text.push(cell.textValue);\n }\n\n if (text.length === rowHeaderColumnKeys.size) {\n break;\n }\n }\n\n return text.join(' ');\n }\n\n return '';\n }\n }, state, ref);\n\n // Override to include header rows\n if (isVirtualized) {\n gridProps['aria-rowcount'] = state.collection.size + state.collection.headerRows.length;\n }\n\n let {column, direction: sortDirection} = state.sortDescriptor || {};\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription = useMemo(() => {\n let columnName = state.collection.columns.find(c => c.key === column)?.textValue;\n return sortDirection && column ? formatMessage(`${sortDirection}Sort`, {columnName}) : undefined;\n }, [sortDirection, column, state.collection.columns]);\n\n let descriptionProps = useDescription(sortDescription);\n\n // Only announce after initial render, tabbing to the table will tell you the initial sort info already\n useUpdateEffect(() => {\n announce(sortDescription, 'assertive', 500);\n }, [sortDescription]);\n\n return {\n gridProps: mergeProps(\n gridProps,\n descriptionProps,\n {\n // merge sort description with long press information\n 'aria-describedby': [descriptionProps['aria-describedby'], gridProps['aria-describedby']].filter(Boolean).join(' ')\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 {Key} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport const gridIds = new WeakMap<TableState<unknown>, string>();\n\nfunction normalizeKey(key: Key): string {\n if (typeof key === 'string') {\n return key.replace(/\\s*/g, '');\n }\n\n return '' + key;\n}\n\nexport function getColumnHeaderId<T>(state: TableState<T>, columnKey: Key): string {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(columnKey)}`;\n}\n\nexport function getCellId<T>(state: TableState<T>, rowKey: Key, columnKey: Key) {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(rowKey)}-${normalizeKey(columnKey)}`;\n}\n\nexport function getRowLabelledBy<T>(state: TableState<T>, rowKey: Key): string {\n // A row is labelled by it's row headers.\n return [...state.collection.rowHeaderColumnKeys].map(columnKey =>\n getCellId(state, rowKey, columnKey)\n ).join(' ');\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"ascending\": \"تصاعدي\",\n \"ascendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تصاعدي\",\n \"descending\": \"تنازلي\",\n \"descendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تنازلي\",\n \"select\": \"تحديد\",\n \"selectAll\": \"تحديد الكل\",\n \"sortable\": \"عمود قابل للترتيب\"\n}\n","{\n \"ascending\": \"възходящ\",\n \"ascendingSort\": \"сортирано по колона {columnName} във възходящ ред\",\n \"descending\": \"низходящ\",\n \"descendingSort\": \"сортирано по колона {columnName} в низходящ ред\",\n \"select\": \"Изберете\",\n \"selectAll\": \"Изберете всичко\",\n \"sortable\": \"сортираща колона\"\n}\n","{\n \"ascending\": \"vzestupně\",\n \"ascendingSort\": \"řazeno vzestupně podle sloupce {columnName}\",\n \"descending\": \"sestupně\",\n \"descendingSort\": \"řazeno sestupně podle sloupce {columnName}\",\n \"select\": \"Vybrat\",\n \"selectAll\": \"Vybrat vše\",\n \"sortable\": \"sloupec s možností řazení\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sorteret efter kolonne {columnName} i stigende rækkefølge\",\n \"descending\": \"faldende\",\n \"descendingSort\": \"sorteret efter kolonne {columnName} i faldende rækkefølge\",\n \"select\": \"Vælg\",\n \"selectAll\": \"Vælg alle\",\n \"sortable\": \"sorterbar kolonne\"\n}\n","{\n \"ascending\": \"aufsteigend\",\n \"ascendingSort\": \"sortiert nach Spalte {columnName} in aufsteigender Reihenfolge\",\n \"descending\": \"absteigend\",\n \"descendingSort\": \"sortiert nach Spalte {columnName} in absteigender Reihenfolge\",\n \"select\": \"Auswählen\",\n \"selectAll\": \"Alles auswählen\",\n \"sortable\": \"sortierbare Spalte\"\n}\n","{\n \"ascending\": \"αύξουσα\",\n \"ascendingSort\": \"διαλογή ανά στήλη {columnName} σε αύξουσα σειρά\",\n \"descending\": \"φθίνουσα\",\n \"descendingSort\": \"διαλογή ανά στήλη {columnName} σε φθίνουσα σειρά\",\n \"select\": \"Επιλογή\",\n \"selectAll\": \"Επιλογή όλων\",\n \"sortable\": \"Στήλη διαλογής\"\n}\n","{\n \"select\": \"Select\",\n \"selectAll\": \"Select All\",\n \"sortable\": \"sortable column\",\n \"ascending\": \"ascending\",\n \"descending\": \"descending\",\n \"ascendingSort\": \"sorted by column {columnName} in ascending order\",\n \"descendingSort\": \"sorted by column {columnName} in descending order\"\n}\n","{\n \"ascending\": \"de subida\",\n \"ascendingSort\": \"ordenado por columna {columnName} en orden de subida\",\n \"descending\": \"de bajada\",\n \"descendingSort\": \"ordenado por columna {columnName} en orden de bajada\",\n \"select\": \"Seleccionar\",\n \"selectAll\": \"Seleccionar todos\",\n \"sortable\": \"columna ordenable\"\n}\n","{\n \"ascending\": \"tõusev järjestus\",\n \"ascendingSort\": \"sorditud veeru järgi {columnName} tõusvas järjestuses\",\n \"descending\": \"laskuv järjestus\",\n \"descendingSort\": \"sorditud veeru järgi {columnName} laskuvas järjestuses\",\n \"select\": \"Vali\",\n \"selectAll\": \"Vali kõik\",\n \"sortable\": \"sorditav veerg\"\n}\n","{\n \"ascending\": \"nouseva\",\n \"ascendingSort\": \"lajiteltu sarakkeen {columnName} mukaan nousevassa järjestyksessä\",\n \"descending\": \"laskeva\",\n \"descendingSort\": \"lajiteltu sarakkeen {columnName} mukaan laskevassa järjestyksessä\",\n \"select\": \"Valitse\",\n \"selectAll\": \"Valitse kaikki\",\n \"sortable\": \"lajiteltava sarake\"\n}\n","{\n \"ascending\": \"croissant\",\n \"ascendingSort\": \"trié en fonction de la colonne {columnName} par ordre croissant\",\n \"descending\": \"décroissant\",\n \"descendingSort\": \"trié en fonction de la colonne {columnName} par ordre décroissant\",\n \"select\": \"Sélectionner\",\n \"selectAll\": \"Sélectionner tout\",\n \"sortable\": \"colonne triable\"\n}\n","{\n \"ascending\": \"עולה\",\n \"ascendingSort\": \"מוין לפי עמודה {columnName} בסדר עולה\",\n \"descending\": \"יורד\",\n \"descendingSort\": \"מוין לפי עמודה {columnName} בסדר יורד\",\n \"select\": \"בחר\",\n \"selectAll\": \"בחר הכול\",\n \"sortable\": \"עמודה שניתן למיין\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"razvrstano po stupcima {columnName} rastućem redoslijedom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"razvrstano po stupcima {columnName} padajućim redoslijedom\",\n \"select\": \"Odaberite\",\n \"selectAll\": \"Odaberite sve\",\n \"sortable\": \"stupac koji se može razvrstati\"\n}\n","{\n \"ascending\": \"növekvő\",\n \"ascendingSort\": \"rendezve a(z) {columnName} oszlop szerint, növekvő sorrendben\",\n \"descending\": \"csökkenő\",\n \"descendingSort\": \"rendezve a(z) {columnName} oszlop szerint, csökkenő sorrendben\",\n \"select\": \"Kijelölés\",\n \"selectAll\": \"Összes kijelölése\",\n \"sortable\": \"rendezendő oszlop\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"in ordine crescente in base alla colonna {columnName}\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"in ordine decrescente in base alla colonna {columnName}\",\n \"select\": \"Seleziona\",\n \"selectAll\": \"Seleziona tutto\",\n \"sortable\": \"colonna ordinabile\"\n}\n","{\n \"ascending\": \"昇順\",\n \"ascendingSort\": \"列 {columnName} を昇順で並べ替え\",\n \"descending\": \"降順\",\n \"descendingSort\": \"列 {columnName} を降順で並べ替え\",\n \"select\": \"選択\",\n \"selectAll\": \"すべて選択\",\n \"sortable\": \"並べ替え可能な列\"\n}\n","{\n \"ascending\": \"오름차순\",\n \"ascendingSort\": \"{columnName} 열을 기준으로 오름차순으로 정렬됨\",\n \"descending\": \"내림차순\",\n \"descendingSort\": \"{columnName} 열을 기준으로 내림차순으로 정렬됨\",\n \"select\": \"선택\",\n \"selectAll\": \"모두 선택\",\n \"sortable\": \"정렬 가능한 열\"\n}\n","{\n \"ascending\": \"didėjančia tvarka\",\n \"ascendingSort\": \"surikiuota pagal stulpelį {columnName} didėjančia tvarka\",\n \"descending\": \"mažėjančia tvarka\",\n \"descendingSort\": \"surikiuota pagal stulpelį {columnName} mažėjančia tvarka\",\n \"select\": \"Pasirinkti\",\n \"selectAll\": \"Pasirinkti viską\",\n \"sortable\": \"rikiuojamas stulpelis\"\n}\n","{\n \"ascending\": \"augošā secībā\",\n \"ascendingSort\": \"kārtots pēc kolonnas {columnName} augošā secībā\",\n \"descending\": \"dilstošā secībā\",\n \"descendingSort\": \"kārtots pēc kolonnas {columnName} dilstošā secībā\",\n \"select\": \"Atlasīt\",\n \"selectAll\": \"Atlasīt visu\",\n \"sortable\": \"kārtojamā kolonna\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sortert etter kolonne {columnName} i stigende rekkefølge\",\n \"descending\": \"synkende\",\n \"descendingSort\": \"sortert etter kolonne {columnName} i synkende rekkefølge\",\n \"select\": \"Velg\",\n \"selectAll\": \"Velg alle\",\n \"sortable\": \"kolonne som kan sorteres\"\n}\n","{\n \"ascending\": \"oplopend\",\n \"ascendingSort\": \"gesorteerd in oplopende volgorde in kolom {columnName}\",\n \"descending\": \"aflopend\",\n \"descendingSort\": \"gesorteerd in aflopende volgorde in kolom {columnName}\",\n \"select\": \"Selecteren\",\n \"selectAll\": \"Alles selecteren\",\n \"sortable\": \"sorteerbare kolom\"\n}\n","{\n \"ascending\": \"rosnąco\",\n \"ascendingSort\": \"posortowano według kolumny {columnName} w porządku rosnącym\",\n \"descending\": \"malejąco\",\n \"descendingSort\": \"posortowano według kolumny {columnName} w porządku malejącym\",\n \"select\": \"Zaznacz\",\n \"selectAll\": \"Zaznacz wszystko\",\n \"sortable\": \"kolumna z możliwością sortowania\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"classificado pela coluna {columnName} em ordem crescente\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"classificado pela coluna {columnName} em ordem decrescente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"coluna classificável\"\n}\n","{\n \"ascending\": \"ascendente\",\n \"ascendingSort\": \"Ordenar por coluna {columnName} em ordem ascendente\",\n \"descending\": \"descendente\",\n \"descendingSort\": \"Ordenar por coluna {columnName} em ordem descendente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"Coluna ordenável\"\n}\n","{\n \"ascending\": \"crescătoare\",\n \"ascendingSort\": \"sortate după coloana {columnName} în ordine crescătoare\",\n \"descending\": \"descrescătoare\",\n \"descendingSort\": \"sortate după coloana {columnName} în ordine descrescătoare\",\n \"select\": \"Selectare\",\n \"selectAll\": \"Selectare totală\",\n \"sortable\": \"coloană sortabilă\"\n}\n","{\n \"ascending\": \"возрастание\",\n \"ascendingSort\": \"сортировать столбец {columnName} в порядке возрастания\",\n \"descending\": \"убывание\",\n \"descendingSort\": \"сортировать столбец {columnName} в порядке убывания\",\n \"select\": \"Выбрать\",\n \"selectAll\": \"Выбрать все\",\n \"sortable\": \"сортируемый столбец\"\n}\n","{\n \"ascending\": \"vzostupne\",\n \"ascendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"descending\": \"zostupne\",\n \"descendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"select\": \"Vybrať\",\n \"selectAll\": \"Vybrať všetko\",\n \"sortable\": \"zoraditeľný stĺpec\"\n}\n","{\n \"ascending\": \"naraščajoče\",\n \"ascendingSort\": \"razvrščeno po stolpcu {columnName} v naraščajočem vrstnem redu\",\n \"descending\": \"padajoče\",\n \"descendingSort\": \"razvrščeno po stolpcu {columnName} v padajočem vrstnem redu\",\n \"select\": \"Izberite\",\n \"selectAll\": \"Izberite vse\",\n \"sortable\": \"razvrstljivi stolpec\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"sortirano po kolonama {columnName} rastućim redosledom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"sortirano po kolonama {columnName} padajućim redosledom\",\n \"select\": \"Izaberite\",\n \"selectAll\": \"Izaberite sve\",\n \"sortable\": \"kolona koja se može sortirati\"\n}\n","{\n \"ascending\": \"stigande\",\n \"ascendingSort\": \"sorterat på kolumn {columnName} i stigande ordning\",\n \"descending\": \"fallande\",\n \"descendingSort\": \"sorterat på kolumn {columnName} i fallande ordning\",\n \"select\": \"Markera\",\n \"selectAll\": \"Markera allt\",\n \"sortable\": \"sorterbar kolumn\"\n}\n","{\n \"ascending\": \"artan sırada\",\n \"ascendingSort\": \"{columnName} sütuna göre artan düzende sırala\",\n \"descending\": \"azalan sırada\",\n \"descendingSort\": \"{columnName} sütuna göre azalan düzende sırala\",\n \"select\": \"Seç\",\n \"selectAll\": \"Tümünü Seç\",\n \"sortable\": \"Sıralanabilir sütun\"\n}\n","{\n \"ascending\": \"висхідний\",\n \"ascendingSort\": \"відсортовано за стовпцем {columnName} у висхідному порядку\",\n \"descending\": \"низхідний\",\n \"descendingSort\": \"відсортовано за стовпцем {columnName} у низхідному порядку\",\n \"select\": \"Вибрати\",\n \"selectAll\": \"Вибрати все\",\n \"sortable\": \"сортувальний стовпець\"\n}\n","{\n \"ascending\": \"升序\",\n \"ascendingSort\": \"按列 {columnName} 升序排序\",\n \"descending\": \"降序\",\n \"descendingSort\": \"按列 {columnName} 降序排序\",\n \"select\": \"选择\",\n \"selectAll\": \"全选\",\n \"sortable\": \"可排序的列\"\n}\n","{\n \"ascending\": \"遞增\",\n \"ascendingSort\": \"已依據「{columnName}」欄遞增排序\",\n \"descending\": \"遞減\",\n \"descendingSort\": \"已依據「{columnName}」欄遞減排序\",\n \"select\": \"選取\",\n \"selectAll\": \"全選\",\n \"sortable\": \"可排序的欄\"\n}\n","/*\n * Copyright 2022 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 {GridKeyboardDelegate} from '@react-aria/grid';\nimport {Key} from 'react';\nimport {Node} from '@react-types/shared';\nimport {TableCollection} from '@react-types/table';\n\nexport class TableKeyboardDelegate<T> extends GridKeyboardDelegate<T, TableCollection<T>> {\n\n protected isCell(node: Node<T>) {\n return node.type === 'cell' || node.type === 'rowheader' || node.type === 'column';\n }\n\n getKeyBelow(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, then focus the first child column if any,\n // or find the corresponding cell in the first row.\n if (startItem.type === 'column') {\n let child = [...startItem.childNodes][0];\n if (child) {\n return child.key;\n }\n\n let firstKey = this.getFirstKey();\n if (firstKey == null) {\n return;\n }\n\n let firstItem = this.collection.getItem(firstKey);\n return [...firstItem.childNodes][startItem.index].key;\n }\n\n return super.getKeyBelow(key);\n }\n\n getKeyAbove(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, focus the parent column if any\n if (startItem.type === 'column') {\n let parent = this.collection.getItem(startItem.parentKey);\n if (parent && parent.type === 'column') {\n return parent.key;\n }\n\n return;\n }\n\n // only return above row key if not header row\n let superKey = super.getKeyAbove(key);\n if (superKey != null && this.collection.getItem(superKey).type !== 'headerrow') {\n return superKey;\n }\n\n // If no item was found, and focus was on a cell, then focus the\n // corresponding column header.\n if (this.isCell(startItem)) {\n return this.collection.columns[startItem.index].key;\n }\n\n // If focus was on a row, then focus the first column header.\n return this.collection.columns[0].key;\n }\n\n private findNextColumnKey(column: Node<T>) {\n // Search following columns\n let key = this.findNextKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the first column\n let row = this.collection.headerRows[column.level];\n for (let item of row.childNodes) {\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n private findPreviousColumnKey(column: Node<T>) {\n // Search previous columns\n let key = this.findPreviousKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the last column\n let row = this.collection.headerRows[column.level];\n let childNodes = [...row.childNodes];\n for (let i = childNodes.length - 1; i >= 0; i--) {\n let item = childNodes[i];\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n getKeyRightOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the next column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findPreviousColumnKey(item)\n : this.findNextColumnKey(item);\n }\n\n return super.getKeyRightOf(key);\n }\n\n getKeyLeftOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the previous column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findNextColumnKey(item)\n : this.findPreviousColumnKey(item);\n }\n\n return super.getKeyLeftOf(key);\n }\n\n getKeyForSearch(search: string, fromKey?: Key) {\n if (!this.collator) {\n return null;\n }\n\n let collection = this.collection;\n let key = fromKey ?? this.getFirstKey();\n if (key == null) {\n return null;\n }\n\n // If the starting key is a cell, search from its parent row.\n let startItem = collection.getItem(key);\n if (startItem.type === 'cell') {\n key = startItem.parentKey;\n }\n\n let hasWrapped = false;\n while (key != null) {\n let item = collection.getItem(key);\n\n // Check each of the row header cells in this row for a match\n for (let cell of item.childNodes) {\n let column = collection.columns[cell.index];\n if (collection.rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n let substring = cell.textValue.slice(0, search.length);\n if (this.collator.compare(substring, search) === 0) {\n // If we started on a cell, end on the matching cell. Otherwise, end on the row.\n let fromItem = fromKey != null ? collection.getItem(fromKey) : startItem;\n return fromItem.type === 'cell'\n ? cell.key\n : item.key;\n }\n }\n }\n\n key = this.getKeyBelow(key);\n\n // Wrap around when reaching the end of the collection\n if (key == null && !hasWrapped) {\n key = this.getFirstKey();\n hasWrapped = true;\n }\n }\n\n return null;\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 {getColumnHeaderId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {isAndroid, mergeProps, useDescription} from '@react-aria/utils';\nimport {TableState} from '@react-stately/table';\nimport {useFocusable} from '@react-aria/focus';\nimport {useGridCell} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\nimport {usePress} from '@react-aria/interactions';\n\ninterface ColumnHeaderProps {\n /** An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader). Contains all the relevant information that makes up the column header. */\n node: GridNode<unknown>,\n /** Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a virtual scroller. */\n isVirtualized?: boolean\n}\n\ninterface ColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(props: ColumnHeaderProps, state: TableState<T>, ref: RefObject<HTMLElement>): ColumnHeaderAria {\n let {node} = props;\n let allowsResizing = node.props.allowsResizing;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell(props, state, ref);\n\n let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n let {pressProps} = usePress({\n // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.\n isDisabled: !allowsSorting || isSelectionCellDisabled || allowsResizing,\n onPress() {\n state.sort(node.key);\n }\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: HTMLAttributes<HTMLElement>['aria-sort'] = null;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${formatMessage('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${formatMessage(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n return {\n columnHeaderProps: {\n ...mergeProps(gridCellProps, pressProps, focusableProps, descriptionProps),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colspan && node.colspan > 1 ? node.colspan : null,\n 'aria-sort': ariaSort\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 {getRowLabelledBy} from './utils';\nimport {GridRowAria, GridRowProps, useGridRow} from '@react-aria/grid';\nimport {RefObject} from 'react';\nimport {TableCollection} from '@react-types/table';\nimport {TableState} from '@react-stately/table';\n\n/**\n * Provides the behavior and accessibility implementation for a row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridRowAria {\n let {node} = props;\n let {rowProps, isPressed} = useGridRow<T, TableCollection<T>, TableState<T>>(props, state, ref);\n return {\n rowProps: {\n ...rowProps,\n 'aria-labelledby': getRowLabelledBy(state, node.key)\n },\n isPressed\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 {GridRowProps} from '@react-aria/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport interface TableHeaderRowAria {\n /** Props for the grid row element. */\n rowProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a header row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function useTableHeaderRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): TableHeaderRowAria {\n let {node, isVirtualized} = props;\n let rowProps = {\n role: 'row'\n };\n\n if (isVirtualized) {\n rowProps['aria-rowindex'] = node.index + 1; // aria-rowindex is 1 based\n }\n\n return {\n rowProps\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 {getCellId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridCell} from '@react-aria/grid';\n\ninterface TableCellProps {\n /** An object representing the table cell. Contains all the relevant information that makes up the row header. */\n node: GridNode<unknown>,\n /** Whether the cell is contained in a virtual scroller. */\n isVirtualized?: boolean,\n /**\n * Handler that is called when a user performs an action on the cell.\n * Please use onCellAction at the collection level instead.\n * @deprecated\n **/\n onAction?: () => void\n}\n\ninterface TableCellAria {\n /** Props for the table cell element. */\n gridCellProps: HTMLAttributes<HTMLElement>,\n /** Whether the cell is currently in a pressed state. */\n isPressed: boolean\n}\n\n/**\n * Provides the behavior and accessibility implementation for a cell in a table.\n * @param props - Props for the cell.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the cell element.\n */\nexport function useTableCell<T>(props: TableCellProps, state: TableState<T>, ref: RefObject<HTMLElement>): TableCellAria {\n let {gridCellProps, isPressed} = useGridCell(props, state, ref);\n\n let columnKey = props.node.column.key;\n if (state.collection.rowHeaderColumnKeys.has(columnKey)) {\n gridCellProps.role = 'rowheader';\n gridCellProps.id = getCellId(state, props.node.parentKey, columnKey);\n }\n\n return {\n gridCellProps,\n isPressed\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 {AriaCheckboxProps} from '@react-types/checkbox';\nimport {getRowLabelledBy} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Key} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridSelectionCheckbox} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface SelectionCheckboxProps {\n /** A unique key for the checkbox. */\n key: Key\n}\n\ninterface SelectionCheckboxAria {\n /** Props for the row selection checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\ninterface SelectAllCheckboxAria {\n /** Props for the select all checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\n/**\n * Provides the behavior and accessibility implementation for a selection checkbox in a table.\n * @param props - Props for the selection checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectionCheckbox<T>(props: SelectionCheckboxProps, state: TableState<T>): SelectionCheckboxAria {\n let {key} = props;\n const {checkboxProps} = useGridSelectionCheckbox(props, state);\n\n return {\n checkboxProps: {\n ...checkboxProps,\n 'aria-labelledby': `${checkboxProps.id} ${getRowLabelledBy(state, key)}`\n }\n };\n}\n\n/**\n * Provides the behavior and accessibility implementation for the select all checkbox in a table.\n * @param props - Props for the select all checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectAllCheckbox<T>(state: TableState<T>): SelectAllCheckboxAria {\n let {isEmpty, isSelectAll, selectionMode} = state.selectionManager;\n const formatMessage = useMessageFormatter(intlMessages);\n\n return {\n checkboxProps: {\n 'aria-label': formatMessage(selectionMode === 'single' ? 'select' : 'selectAll'),\n isSelected: isSelectAll,\n isDisabled: selectionMode !== 'multiple',\n isIndeterminate: !isEmpty && !isSelectAll,\n onChange: () => state.selectionManager.toggleSelectAll()\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 {focusSafely, useFocusable} from '@react-aria/focus';\nimport {mergeProps} from '@react-aria/utils';\nimport {useKeyboard, useMove} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useRef} from 'react';\n\nexport function useTableColumnResize(state, item, ref): any {\n const stateRef = useRef(null);\n // keep track of what the cursor on the body is so it can be restored back to that when done resizing\n const cursor = useRef(null);\n stateRef.current = state;\n\n let {direction} = useLocale();\n let {focusableProps} = useFocusable({excludeFromTabOrder: true}, ref);\n let {keyboardProps} = useKeyboard({\n onKeyDown: (e) => {\n if (e.key === 'Tab') {\n // useKeyboard stops propagation by default. We want to continue propagation for tab so focus leaves the table\n e.continuePropagation();\n }\n if (e.key === 'Escape' || e.key === 'Enter' || e.key === ' ') {\n // switch focus back to the column header on escape\n const columnHeader = ref.current.previousSibling;\n if (columnHeader) {\n focusSafely(columnHeader);\n }\n }\n }\n });\n\n const columnResizeWidthRef = useRef(null);\n const {moveProps} = useMove({\n onMoveStart() {\n stateRef.current.onColumnResizeStart();\n columnResizeWidthRef.current = stateRef.current.getColumnWidth(item.key);\n cursor.current = document.body.style.cursor;\n document.body.style.setProperty('cursor', 'col-resize');\n },\n onMove({deltaX, pointerType}) {\n if (direction === 'rtl') {\n deltaX *= -1;\n }\n // if moving up/down only, no need to resize\n if (deltaX !== 0) {\n if (pointerType === 'keyboard') {\n deltaX *= 10;\n }\n columnResizeWidthRef.current += deltaX;\n stateRef.current.onColumnResize(item, columnResizeWidthRef.current);\n }\n },\n onMoveEnd() {\n stateRef.current.onColumnResizeEnd();\n columnResizeWidthRef.current = 0;\n document.body.style.cursor = cursor.current;\n }\n });\n\n return {\n resizerProps: {\n ...mergeProps(moveProps, focusableProps, keyboardProps)\n }\n };\n}\n"],"names":[],"version":3,"file":"main.js.map"}
package/dist/module.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import {useGridRowGroup as $lJcFS$useGridRowGroup, useGrid as $lJcFS$useGrid, GridKeyboardDelegate as $lJcFS$GridKeyboardDelegate, useGridCell as $lJcFS$useGridCell, useGridRow as $lJcFS$useGridRow, useGridSelectionCheckbox as $lJcFS$useGridSelectionCheckbox} from "@react-aria/grid";
2
2
  import {announce as $lJcFS$announce} from "@react-aria/live-announcer";
3
3
  import {useId as $lJcFS$useId, useDescription as $lJcFS$useDescription, useUpdateEffect as $lJcFS$useUpdateEffect, mergeProps as $lJcFS$mergeProps, isAndroid as $lJcFS$isAndroid} from "@react-aria/utils";
4
- import {useMemo as $lJcFS$useMemo} from "react";
4
+ import {useMemo as $lJcFS$useMemo, useRef as $lJcFS$useRef} from "react";
5
5
  import {useCollator as $lJcFS$useCollator, useLocale as $lJcFS$useLocale, useMessageFormatter as $lJcFS$useMessageFormatter} from "@react-aria/i18n";
6
- import {useFocusable as $lJcFS$useFocusable} from "@react-aria/focus";
7
- import {usePress as $lJcFS$usePress} from "@react-aria/interactions";
6
+ import {useFocusable as $lJcFS$useFocusable, focusSafely as $lJcFS$focusSafely} from "@react-aria/focus";
7
+ import {usePress as $lJcFS$usePress, useKeyboard as $lJcFS$useKeyboard, useMove as $lJcFS$useMove} from "@react-aria/interactions";
8
8
 
9
9
  function $parcel$interopDefault(a) {
10
10
  return a && a.__esModule ? a.default : a;
@@ -438,13 +438,13 @@ $parcel$export($f329116d8ad0aba0$exports, "useTableColumnHeader", () => $f329116
438
438
  function $f329116d8ad0aba0$export$9514819a8c81e960(props, state, ref) {
439
439
  var ref1, ref2;
440
440
  let { node: node } = props;
441
- // let allowsResizing = node.props.allowsResizing;
441
+ let allowsResizing = node.props.allowsResizing;
442
442
  let allowsSorting = node.props.allowsSorting;
443
443
  let { gridCellProps: gridCellProps } = $lJcFS$useGridCell(props, state, ref);
444
444
  let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';
445
445
  let { pressProps: pressProps } = $lJcFS$usePress({
446
446
  // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.
447
- isDisabled: !allowsSorting || isSelectionCellDisabled,
447
+ isDisabled: !allowsSorting || isSelectionCellDisabled || allowsResizing,
448
448
  onPress () {
449
449
  state.sort(node.key);
450
450
  }
@@ -562,10 +562,69 @@ function $2a795c53a101c542$export$1003db6a7e384b99(state) {
562
562
  }
563
563
 
564
564
 
565
+ var $e91ef4e5004e3774$exports = {};
566
+
567
+ $parcel$export($e91ef4e5004e3774$exports, "useTableColumnResize", () => $e91ef4e5004e3774$export$52994e973806c219);
568
+
569
+
570
+
571
+
572
+
573
+ function $e91ef4e5004e3774$export$52994e973806c219(state, item, ref) {
574
+ const stateRef = $lJcFS$useRef(null);
575
+ // keep track of what the cursor on the body is so it can be restored back to that when done resizing
576
+ const cursor = $lJcFS$useRef(null);
577
+ stateRef.current = state;
578
+ let { direction: direction } = $lJcFS$useLocale();
579
+ let { focusableProps: focusableProps } = $lJcFS$useFocusable({
580
+ excludeFromTabOrder: true
581
+ }, ref);
582
+ let { keyboardProps: keyboardProps } = $lJcFS$useKeyboard({
583
+ onKeyDown: (e)=>{
584
+ if (e.key === 'Tab') // useKeyboard stops propagation by default. We want to continue propagation for tab so focus leaves the table
585
+ e.continuePropagation();
586
+ if (e.key === 'Escape' || e.key === 'Enter' || e.key === ' ') {
587
+ // switch focus back to the column header on escape
588
+ const columnHeader = ref.current.previousSibling;
589
+ if (columnHeader) $lJcFS$focusSafely(columnHeader);
590
+ }
591
+ }
592
+ });
593
+ const columnResizeWidthRef = $lJcFS$useRef(null);
594
+ const { moveProps: moveProps } = $lJcFS$useMove({
595
+ onMoveStart () {
596
+ stateRef.current.onColumnResizeStart();
597
+ columnResizeWidthRef.current = stateRef.current.getColumnWidth(item.key);
598
+ cursor.current = document.body.style.cursor;
599
+ document.body.style.setProperty('cursor', 'col-resize');
600
+ },
601
+ onMove ({ deltaX: deltaX , pointerType: pointerType }) {
602
+ if (direction === 'rtl') deltaX *= -1;
603
+ // if moving up/down only, no need to resize
604
+ if (deltaX !== 0) {
605
+ if (pointerType === 'keyboard') deltaX *= 10;
606
+ columnResizeWidthRef.current += deltaX;
607
+ stateRef.current.onColumnResize(item, columnResizeWidthRef.current);
608
+ }
609
+ },
610
+ onMoveEnd () {
611
+ stateRef.current.onColumnResizeEnd();
612
+ columnResizeWidthRef.current = 0;
613
+ document.body.style.cursor = cursor.current;
614
+ }
615
+ });
616
+ return {
617
+ resizerProps: {
618
+ ...$lJcFS$mergeProps(moveProps, focusableProps, keyboardProps)
619
+ }
620
+ };
621
+ }
622
+
623
+
565
624
  function $0047e6c294ea075f$export$6fb1613bd7b28198() {
566
625
  return $lJcFS$useGridRowGroup();
567
626
  }
568
627
 
569
628
 
570
- export {$0047e6c294ea075f$export$6fb1613bd7b28198 as useTableRowGroup, $6e31608fbba75bab$export$25bceaac3c7e4dc7 as useTable, $f329116d8ad0aba0$export$9514819a8c81e960 as useTableColumnHeader, $b2db214c022798eb$export$7f2f6ae19e707aa5 as useTableRow, $f917ee10f4c32dab$export$1b95a7d2d517b841 as useTableHeaderRow, $7713593715703b24$export$49571c903d73624c as useTableCell, $2a795c53a101c542$export$16ea7f650bd7c1bb as useTableSelectionCheckbox, $2a795c53a101c542$export$1003db6a7e384b99 as useTableSelectAllCheckbox};
629
+ export {$0047e6c294ea075f$export$6fb1613bd7b28198 as useTableRowGroup, $6e31608fbba75bab$export$25bceaac3c7e4dc7 as useTable, $f329116d8ad0aba0$export$9514819a8c81e960 as useTableColumnHeader, $b2db214c022798eb$export$7f2f6ae19e707aa5 as useTableRow, $f917ee10f4c32dab$export$1b95a7d2d517b841 as useTableHeaderRow, $7713593715703b24$export$49571c903d73624c as useTableCell, $2a795c53a101c542$export$16ea7f650bd7c1bb as useTableSelectionCheckbox, $2a795c53a101c542$export$1003db6a7e384b99 as useTableSelectAllCheckbox, $e91ef4e5004e3774$export$52994e973806c219 as useTableColumnResize};
571
630
  //# sourceMappingURL=module.js.map
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-aria/table/src/index.ts","packages/@react-aria/table/src/useTable.ts","packages/@react-aria/table/src/utils.ts","packages/@react-aria/table/intl/*.js","packages/@react-aria/table/intl/ar-AE.json","packages/@react-aria/table/intl/bg-BG.json","packages/@react-aria/table/intl/cs-CZ.json","packages/@react-aria/table/intl/da-DK.json","packages/@react-aria/table/intl/de-DE.json","packages/@react-aria/table/intl/el-GR.json","packages/@react-aria/table/intl/en-US.json","packages/@react-aria/table/intl/es-ES.json","packages/@react-aria/table/intl/et-EE.json","packages/@react-aria/table/intl/fi-FI.json","packages/@react-aria/table/intl/fr-FR.json","packages/@react-aria/table/intl/he-IL.json","packages/@react-aria/table/intl/hr-HR.json","packages/@react-aria/table/intl/hu-HU.json","packages/@react-aria/table/intl/it-IT.json","packages/@react-aria/table/intl/ja-JP.json","packages/@react-aria/table/intl/ko-KR.json","packages/@react-aria/table/intl/lt-LT.json","packages/@react-aria/table/intl/lv-LV.json","packages/@react-aria/table/intl/nb-NO.json","packages/@react-aria/table/intl/nl-NL.json","packages/@react-aria/table/intl/pl-PL.json","packages/@react-aria/table/intl/pt-BR.json","packages/@react-aria/table/intl/pt-PT.json","packages/@react-aria/table/intl/ro-RO.json","packages/@react-aria/table/intl/ru-RU.json","packages/@react-aria/table/intl/sk-SK.json","packages/@react-aria/table/intl/sl-SI.json","packages/@react-aria/table/intl/sr-SP.json","packages/@react-aria/table/intl/sv-SE.json","packages/@react-aria/table/intl/tr-TR.json","packages/@react-aria/table/intl/uk-UA.json","packages/@react-aria/table/intl/zh-CN.json","packages/@react-aria/table/intl/zh-TW.json","packages/@react-aria/table/src/TableKeyboardDelegate.ts","packages/@react-aria/table/src/useTableColumnHeader.ts","packages/@react-aria/table/src/useTableRow.ts","packages/@react-aria/table/src/useTableHeaderRow.ts","packages/@react-aria/table/src/useTableCell.ts","packages/@react-aria/table/src/useTableSelectionCheckbox.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 * from './useTable';\nexport * from './useTableColumnHeader';\nexport * from './useTableRow';\nexport * from './useTableHeaderRow';\nexport * from './useTableCell';\nexport * from './useTableSelectionCheckbox';\n// export * from './useTableColumnResize';\n\n// Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...\n// export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';\nimport {GridRowGroupAria, useGridRowGroup} from '@react-aria/grid';\nexport function useTableRowGroup(): GridRowGroupAria {\n return useGridRowGroup();\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 {announce} from '@react-aria/live-announcer';\nimport {GridAria, GridProps, useGrid} from '@react-aria/grid';\nimport {gridIds} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Layout} from '@react-stately/virtualizer';\nimport {mergeProps, useDescription, useId, useUpdateEffect} from '@react-aria/utils';\nimport {Node} from '@react-types/shared';\nimport {RefObject, useMemo} from 'react';\nimport {TableKeyboardDelegate} from './TableKeyboardDelegate';\nimport {TableState} from '@react-stately/table';\nimport {useCollator, useLocale} from '@react-aria/i18n';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface TableProps<T> extends GridProps {\n /** The layout object for the table. Computes what content is visible and how to position and style them. */\n layout?: Layout<Node<T>>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table component.\n * A table displays data in rows and columns and enables a user to navigate its contents via directional navigation keys,\n * and optionally supports row selection and sorting.\n * @param props - Props for the table.\n * @param state - State for the table, as returned by `useTableState`.\n * @param ref - The ref attached to the table element.\n */\nexport function useTable<T>(props: TableProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridAria {\n let {\n keyboardDelegate,\n isVirtualized,\n layout\n } = props;\n\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = useCollator({usage: 'search', sensitivity: 'base'});\n let {direction} = useLocale();\n let delegate = useMemo(() => keyboardDelegate || new TableKeyboardDelegate({\n collection: state.collection,\n disabledKeys: state.disabledKeys,\n ref,\n direction,\n collator,\n layout\n }), [keyboardDelegate, state.collection, state.disabledKeys, ref, direction, collator, layout]);\n\n let id = useId();\n gridIds.set(state, id);\n\n let {gridProps} = useGrid({\n ...props,\n id,\n keyboardDelegate: delegate,\n getRowText(key): string {\n let added = state.collection.getItem(key);\n if (!added) {\n return '';\n }\n\n // If the row has a textValue, use that.\n if (added.textValue != null) {\n return added.textValue;\n }\n\n // Otherwise combine the text of each of the row header columns.\n let rowHeaderColumnKeys = state.collection.rowHeaderColumnKeys;\n if (rowHeaderColumnKeys) {\n let text = [];\n for (let cell of added.childNodes) {\n let column = state.collection.columns[cell.index];\n if (rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n text.push(cell.textValue);\n }\n\n if (text.length === rowHeaderColumnKeys.size) {\n break;\n }\n }\n\n return text.join(' ');\n }\n\n return '';\n }\n }, state, ref);\n\n // Override to include header rows\n if (isVirtualized) {\n gridProps['aria-rowcount'] = state.collection.size + state.collection.headerRows.length;\n }\n\n let {column, direction: sortDirection} = state.sortDescriptor || {};\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription = useMemo(() => {\n let columnName = state.collection.columns.find(c => c.key === column)?.textValue;\n return sortDirection && column ? formatMessage(`${sortDirection}Sort`, {columnName}) : undefined;\n }, [sortDirection, column, state.collection.columns]);\n\n let descriptionProps = useDescription(sortDescription);\n\n // Only announce after initial render, tabbing to the table will tell you the initial sort info already\n useUpdateEffect(() => {\n announce(sortDescription, 'assertive', 500);\n }, [sortDescription]);\n\n return {\n gridProps: mergeProps(\n gridProps,\n descriptionProps,\n {\n // merge sort description with long press information\n 'aria-describedby': [descriptionProps['aria-describedby'], gridProps['aria-describedby']].filter(Boolean).join(' ')\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 {Key} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport const gridIds = new WeakMap<TableState<unknown>, string>();\n\nfunction normalizeKey(key: Key): string {\n if (typeof key === 'string') {\n return key.replace(/\\s*/g, '');\n }\n\n return '' + key;\n}\n\nexport function getColumnHeaderId<T>(state: TableState<T>, columnKey: Key): string {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(columnKey)}`;\n}\n\nexport function getCellId<T>(state: TableState<T>, rowKey: Key, columnKey: Key) {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(rowKey)}-${normalizeKey(columnKey)}`;\n}\n\nexport function getRowLabelledBy<T>(state: TableState<T>, rowKey: Key): string {\n // A row is labelled by it's row headers.\n return [...state.collection.rowHeaderColumnKeys].map(columnKey =>\n getCellId(state, rowKey, columnKey)\n ).join(' ');\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"ascending\": \"تصاعدي\",\n \"ascendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تصاعدي\",\n \"descending\": \"تنازلي\",\n \"descendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تنازلي\",\n \"select\": \"تحديد\",\n \"selectAll\": \"تحديد الكل\",\n \"sortable\": \"عمود قابل للترتيب\"\n}\n","{\n \"ascending\": \"възходящ\",\n \"ascendingSort\": \"сортирано по колона {columnName} във възходящ ред\",\n \"descending\": \"низходящ\",\n \"descendingSort\": \"сортирано по колона {columnName} в низходящ ред\",\n \"select\": \"Изберете\",\n \"selectAll\": \"Изберете всичко\",\n \"sortable\": \"сортираща колона\"\n}\n","{\n \"ascending\": \"vzestupně\",\n \"ascendingSort\": \"řazeno vzestupně podle sloupce {columnName}\",\n \"descending\": \"sestupně\",\n \"descendingSort\": \"řazeno sestupně podle sloupce {columnName}\",\n \"select\": \"Vybrat\",\n \"selectAll\": \"Vybrat vše\",\n \"sortable\": \"sloupec s možností řazení\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sorteret efter kolonne {columnName} i stigende rækkefølge\",\n \"descending\": \"faldende\",\n \"descendingSort\": \"sorteret efter kolonne {columnName} i faldende rækkefølge\",\n \"select\": \"Vælg\",\n \"selectAll\": \"Vælg alle\",\n \"sortable\": \"sorterbar kolonne\"\n}\n","{\n \"ascending\": \"aufsteigend\",\n \"ascendingSort\": \"sortiert nach Spalte {columnName} in aufsteigender Reihenfolge\",\n \"descending\": \"absteigend\",\n \"descendingSort\": \"sortiert nach Spalte {columnName} in absteigender Reihenfolge\",\n \"select\": \"Auswählen\",\n \"selectAll\": \"Alles auswählen\",\n \"sortable\": \"sortierbare Spalte\"\n}\n","{\n \"ascending\": \"αύξουσα\",\n \"ascendingSort\": \"διαλογή ανά στήλη {columnName} σε αύξουσα σειρά\",\n \"descending\": \"φθίνουσα\",\n \"descendingSort\": \"διαλογή ανά στήλη {columnName} σε φθίνουσα σειρά\",\n \"select\": \"Επιλογή\",\n \"selectAll\": \"Επιλογή όλων\",\n \"sortable\": \"Στήλη διαλογής\"\n}\n","{\n \"select\": \"Select\",\n \"selectAll\": \"Select All\",\n \"sortable\": \"sortable column\",\n \"ascending\": \"ascending\",\n \"descending\": \"descending\",\n \"ascendingSort\": \"sorted by column {columnName} in ascending order\",\n \"descendingSort\": \"sorted by column {columnName} in descending order\"\n}\n","{\n \"ascending\": \"de subida\",\n \"ascendingSort\": \"ordenado por columna {columnName} en orden de subida\",\n \"descending\": \"de bajada\",\n \"descendingSort\": \"ordenado por columna {columnName} en orden de bajada\",\n \"select\": \"Seleccionar\",\n \"selectAll\": \"Seleccionar todos\",\n \"sortable\": \"columna ordenable\"\n}\n","{\n \"ascending\": \"tõusev järjestus\",\n \"ascendingSort\": \"sorditud veeru järgi {columnName} tõusvas järjestuses\",\n \"descending\": \"laskuv järjestus\",\n \"descendingSort\": \"sorditud veeru järgi {columnName} laskuvas järjestuses\",\n \"select\": \"Vali\",\n \"selectAll\": \"Vali kõik\",\n \"sortable\": \"sorditav veerg\"\n}\n","{\n \"ascending\": \"nouseva\",\n \"ascendingSort\": \"lajiteltu sarakkeen {columnName} mukaan nousevassa järjestyksessä\",\n \"descending\": \"laskeva\",\n \"descendingSort\": \"lajiteltu sarakkeen {columnName} mukaan laskevassa järjestyksessä\",\n \"select\": \"Valitse\",\n \"selectAll\": \"Valitse kaikki\",\n \"sortable\": \"lajiteltava sarake\"\n}\n","{\n \"ascending\": \"croissant\",\n \"ascendingSort\": \"trié en fonction de la colonne {columnName} par ordre croissant\",\n \"descending\": \"décroissant\",\n \"descendingSort\": \"trié en fonction de la colonne {columnName} par ordre décroissant\",\n \"select\": \"Sélectionner\",\n \"selectAll\": \"Sélectionner tout\",\n \"sortable\": \"colonne triable\"\n}\n","{\n \"ascending\": \"עולה\",\n \"ascendingSort\": \"מוין לפי עמודה {columnName} בסדר עולה\",\n \"descending\": \"יורד\",\n \"descendingSort\": \"מוין לפי עמודה {columnName} בסדר יורד\",\n \"select\": \"בחר\",\n \"selectAll\": \"בחר הכול\",\n \"sortable\": \"עמודה שניתן למיין\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"razvrstano po stupcima {columnName} rastućem redoslijedom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"razvrstano po stupcima {columnName} padajućim redoslijedom\",\n \"select\": \"Odaberite\",\n \"selectAll\": \"Odaberite sve\",\n \"sortable\": \"stupac koji se može razvrstati\"\n}\n","{\n \"ascending\": \"növekvő\",\n \"ascendingSort\": \"rendezve a(z) {columnName} oszlop szerint, növekvő sorrendben\",\n \"descending\": \"csökkenő\",\n \"descendingSort\": \"rendezve a(z) {columnName} oszlop szerint, csökkenő sorrendben\",\n \"select\": \"Kijelölés\",\n \"selectAll\": \"Összes kijelölése\",\n \"sortable\": \"rendezendő oszlop\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"in ordine crescente in base alla colonna {columnName}\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"in ordine decrescente in base alla colonna {columnName}\",\n \"select\": \"Seleziona\",\n \"selectAll\": \"Seleziona tutto\",\n \"sortable\": \"colonna ordinabile\"\n}\n","{\n \"ascending\": \"昇順\",\n \"ascendingSort\": \"列 {columnName} を昇順で並べ替え\",\n \"descending\": \"降順\",\n \"descendingSort\": \"列 {columnName} を降順で並べ替え\",\n \"select\": \"選択\",\n \"selectAll\": \"すべて選択\",\n \"sortable\": \"並べ替え可能な列\"\n}\n","{\n \"ascending\": \"오름차순\",\n \"ascendingSort\": \"{columnName} 열을 기준으로 오름차순으로 정렬됨\",\n \"descending\": \"내림차순\",\n \"descendingSort\": \"{columnName} 열을 기준으로 내림차순으로 정렬됨\",\n \"select\": \"선택\",\n \"selectAll\": \"모두 선택\",\n \"sortable\": \"정렬 가능한 열\"\n}\n","{\n \"ascending\": \"didėjančia tvarka\",\n \"ascendingSort\": \"surikiuota pagal stulpelį {columnName} didėjančia tvarka\",\n \"descending\": \"mažėjančia tvarka\",\n \"descendingSort\": \"surikiuota pagal stulpelį {columnName} mažėjančia tvarka\",\n \"select\": \"Pasirinkti\",\n \"selectAll\": \"Pasirinkti viską\",\n \"sortable\": \"rikiuojamas stulpelis\"\n}\n","{\n \"ascending\": \"augošā secībā\",\n \"ascendingSort\": \"kārtots pēc kolonnas {columnName} augošā secībā\",\n \"descending\": \"dilstošā secībā\",\n \"descendingSort\": \"kārtots pēc kolonnas {columnName} dilstošā secībā\",\n \"select\": \"Atlasīt\",\n \"selectAll\": \"Atlasīt visu\",\n \"sortable\": \"kārtojamā kolonna\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sortert etter kolonne {columnName} i stigende rekkefølge\",\n \"descending\": \"synkende\",\n \"descendingSort\": \"sortert etter kolonne {columnName} i synkende rekkefølge\",\n \"select\": \"Velg\",\n \"selectAll\": \"Velg alle\",\n \"sortable\": \"kolonne som kan sorteres\"\n}\n","{\n \"ascending\": \"oplopend\",\n \"ascendingSort\": \"gesorteerd in oplopende volgorde in kolom {columnName}\",\n \"descending\": \"aflopend\",\n \"descendingSort\": \"gesorteerd in aflopende volgorde in kolom {columnName}\",\n \"select\": \"Selecteren\",\n \"selectAll\": \"Alles selecteren\",\n \"sortable\": \"sorteerbare kolom\"\n}\n","{\n \"ascending\": \"rosnąco\",\n \"ascendingSort\": \"posortowano według kolumny {columnName} w porządku rosnącym\",\n \"descending\": \"malejąco\",\n \"descendingSort\": \"posortowano według kolumny {columnName} w porządku malejącym\",\n \"select\": \"Zaznacz\",\n \"selectAll\": \"Zaznacz wszystko\",\n \"sortable\": \"kolumna z możliwością sortowania\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"classificado pela coluna {columnName} em ordem crescente\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"classificado pela coluna {columnName} em ordem decrescente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"coluna classificável\"\n}\n","{\n \"ascending\": \"ascendente\",\n \"ascendingSort\": \"Ordenar por coluna {columnName} em ordem ascendente\",\n \"descending\": \"descendente\",\n \"descendingSort\": \"Ordenar por coluna {columnName} em ordem descendente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"Coluna ordenável\"\n}\n","{\n \"ascending\": \"crescătoare\",\n \"ascendingSort\": \"sortate după coloana {columnName} în ordine crescătoare\",\n \"descending\": \"descrescătoare\",\n \"descendingSort\": \"sortate după coloana {columnName} în ordine descrescătoare\",\n \"select\": \"Selectare\",\n \"selectAll\": \"Selectare totală\",\n \"sortable\": \"coloană sortabilă\"\n}\n","{\n \"ascending\": \"возрастание\",\n \"ascendingSort\": \"сортировать столбец {columnName} в порядке возрастания\",\n \"descending\": \"убывание\",\n \"descendingSort\": \"сортировать столбец {columnName} в порядке убывания\",\n \"select\": \"Выбрать\",\n \"selectAll\": \"Выбрать все\",\n \"sortable\": \"сортируемый столбец\"\n}\n","{\n \"ascending\": \"vzostupne\",\n \"ascendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"descending\": \"zostupne\",\n \"descendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"select\": \"Vybrať\",\n \"selectAll\": \"Vybrať všetko\",\n \"sortable\": \"zoraditeľný stĺpec\"\n}\n","{\n \"ascending\": \"naraščajoče\",\n \"ascendingSort\": \"razvrščeno po stolpcu {columnName} v naraščajočem vrstnem redu\",\n \"descending\": \"padajoče\",\n \"descendingSort\": \"razvrščeno po stolpcu {columnName} v padajočem vrstnem redu\",\n \"select\": \"Izberite\",\n \"selectAll\": \"Izberite vse\",\n \"sortable\": \"razvrstljivi stolpec\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"sortirano po kolonama {columnName} rastućim redosledom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"sortirano po kolonama {columnName} padajućim redosledom\",\n \"select\": \"Izaberite\",\n \"selectAll\": \"Izaberite sve\",\n \"sortable\": \"kolona koja se može sortirati\"\n}\n","{\n \"ascending\": \"stigande\",\n \"ascendingSort\": \"sorterat på kolumn {columnName} i stigande ordning\",\n \"descending\": \"fallande\",\n \"descendingSort\": \"sorterat på kolumn {columnName} i fallande ordning\",\n \"select\": \"Markera\",\n \"selectAll\": \"Markera allt\",\n \"sortable\": \"sorterbar kolumn\"\n}\n","{\n \"ascending\": \"artan sırada\",\n \"ascendingSort\": \"{columnName} sütuna göre artan düzende sırala\",\n \"descending\": \"azalan sırada\",\n \"descendingSort\": \"{columnName} sütuna göre azalan düzende sırala\",\n \"select\": \"Seç\",\n \"selectAll\": \"Tümünü Seç\",\n \"sortable\": \"Sıralanabilir sütun\"\n}\n","{\n \"ascending\": \"висхідний\",\n \"ascendingSort\": \"відсортовано за стовпцем {columnName} у висхідному порядку\",\n \"descending\": \"низхідний\",\n \"descendingSort\": \"відсортовано за стовпцем {columnName} у низхідному порядку\",\n \"select\": \"Вибрати\",\n \"selectAll\": \"Вибрати все\",\n \"sortable\": \"сортувальний стовпець\"\n}\n","{\n \"ascending\": \"升序\",\n \"ascendingSort\": \"按列 {columnName} 升序排序\",\n \"descending\": \"降序\",\n \"descendingSort\": \"按列 {columnName} 降序排序\",\n \"select\": \"选择\",\n \"selectAll\": \"全选\",\n \"sortable\": \"可排序的列\"\n}\n","{\n \"ascending\": \"遞增\",\n \"ascendingSort\": \"已依據「{columnName}」欄遞增排序\",\n \"descending\": \"遞減\",\n \"descendingSort\": \"已依據「{columnName}」欄遞減排序\",\n \"select\": \"選取\",\n \"selectAll\": \"全選\",\n \"sortable\": \"可排序的欄\"\n}\n","/*\n * Copyright 2022 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 {GridKeyboardDelegate} from '@react-aria/grid';\nimport {Key} from 'react';\nimport {Node} from '@react-types/shared';\nimport {TableCollection} from '@react-types/table';\n\nexport class TableKeyboardDelegate<T> extends GridKeyboardDelegate<T, TableCollection<T>> {\n\n protected isCell(node: Node<T>) {\n return node.type === 'cell' || node.type === 'rowheader' || node.type === 'column';\n }\n\n getKeyBelow(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, then focus the first child column if any,\n // or find the corresponding cell in the first row.\n if (startItem.type === 'column') {\n let child = [...startItem.childNodes][0];\n if (child) {\n return child.key;\n }\n\n let firstKey = this.getFirstKey();\n if (firstKey == null) {\n return;\n }\n\n let firstItem = this.collection.getItem(firstKey);\n return [...firstItem.childNodes][startItem.index].key;\n }\n\n return super.getKeyBelow(key);\n }\n\n getKeyAbove(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, focus the parent column if any\n if (startItem.type === 'column') {\n let parent = this.collection.getItem(startItem.parentKey);\n if (parent && parent.type === 'column') {\n return parent.key;\n }\n\n return;\n }\n\n // only return above row key if not header row\n let superKey = super.getKeyAbove(key);\n if (superKey != null && this.collection.getItem(superKey).type !== 'headerrow') {\n return superKey;\n }\n\n // If no item was found, and focus was on a cell, then focus the\n // corresponding column header.\n if (this.isCell(startItem)) {\n return this.collection.columns[startItem.index].key;\n }\n\n // If focus was on a row, then focus the first column header.\n return this.collection.columns[0].key;\n }\n\n private findNextColumnKey(column: Node<T>) {\n // Search following columns\n let key = this.findNextKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the first column\n let row = this.collection.headerRows[column.level];\n for (let item of row.childNodes) {\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n private findPreviousColumnKey(column: Node<T>) {\n // Search previous columns\n let key = this.findPreviousKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the last column\n let row = this.collection.headerRows[column.level];\n let childNodes = [...row.childNodes];\n for (let i = childNodes.length - 1; i >= 0; i--) {\n let item = childNodes[i];\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n getKeyRightOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the next column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findPreviousColumnKey(item)\n : this.findNextColumnKey(item);\n }\n\n return super.getKeyRightOf(key);\n }\n\n getKeyLeftOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the previous column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findNextColumnKey(item)\n : this.findPreviousColumnKey(item);\n }\n\n return super.getKeyLeftOf(key);\n }\n\n getKeyForSearch(search: string, fromKey?: Key) {\n if (!this.collator) {\n return null;\n }\n\n let collection = this.collection;\n let key = fromKey ?? this.getFirstKey();\n if (key == null) {\n return null;\n }\n\n // If the starting key is a cell, search from its parent row.\n let startItem = collection.getItem(key);\n if (startItem.type === 'cell') {\n key = startItem.parentKey;\n }\n\n let hasWrapped = false;\n while (key != null) {\n let item = collection.getItem(key);\n\n // Check each of the row header cells in this row for a match\n for (let cell of item.childNodes) {\n let column = collection.columns[cell.index];\n if (collection.rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n let substring = cell.textValue.slice(0, search.length);\n if (this.collator.compare(substring, search) === 0) {\n // If we started on a cell, end on the matching cell. Otherwise, end on the row.\n let fromItem = fromKey != null ? collection.getItem(fromKey) : startItem;\n return fromItem.type === 'cell'\n ? cell.key\n : item.key;\n }\n }\n }\n\n key = this.getKeyBelow(key);\n\n // Wrap around when reaching the end of the collection\n if (key == null && !hasWrapped) {\n key = this.getFirstKey();\n hasWrapped = true;\n }\n }\n\n return null;\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 {getColumnHeaderId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {isAndroid, mergeProps, useDescription} from '@react-aria/utils';\nimport {TableState} from '@react-stately/table';\nimport {useFocusable} from '@react-aria/focus';\nimport {useGridCell} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\nimport {usePress} from '@react-aria/interactions';\n\ninterface ColumnHeaderProps {\n /** An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader). Contains all the relevant information that makes up the column header. */\n node: GridNode<unknown>,\n /** Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a virtual scroller. */\n isVirtualized?: boolean\n}\n\ninterface ColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(props: ColumnHeaderProps, state: TableState<T>, ref: RefObject<HTMLElement>): ColumnHeaderAria {\n let {node} = props;\n // let allowsResizing = node.props.allowsResizing;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell(props, state, ref);\n\n let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n let {pressProps} = usePress({\n // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.\n isDisabled: !allowsSorting || isSelectionCellDisabled, // || allowsResizing,\n onPress() {\n state.sort(node.key);\n }\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: HTMLAttributes<HTMLElement>['aria-sort'] = null;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${formatMessage('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${formatMessage(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n return {\n columnHeaderProps: {\n ...mergeProps(gridCellProps, pressProps, focusableProps, descriptionProps),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colspan && node.colspan > 1 ? node.colspan : null,\n 'aria-sort': ariaSort\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 {getRowLabelledBy} from './utils';\nimport {GridRowAria, GridRowProps, useGridRow} from '@react-aria/grid';\nimport {RefObject} from 'react';\nimport {TableCollection} from '@react-types/table';\nimport {TableState} from '@react-stately/table';\n\n/**\n * Provides the behavior and accessibility implementation for a row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridRowAria {\n let {node} = props;\n let {rowProps, isPressed} = useGridRow<T, TableCollection<T>, TableState<T>>(props, state, ref);\n return {\n rowProps: {\n ...rowProps,\n 'aria-labelledby': getRowLabelledBy(state, node.key)\n },\n isPressed\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 {GridRowProps} from '@react-aria/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport interface TableHeaderRowAria {\n /** Props for the grid row element. */\n rowProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a header row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function useTableHeaderRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): TableHeaderRowAria {\n let {node, isVirtualized} = props;\n let rowProps = {\n role: 'row'\n };\n\n if (isVirtualized) {\n rowProps['aria-rowindex'] = node.index + 1; // aria-rowindex is 1 based\n }\n\n return {\n rowProps\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 {getCellId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridCell} from '@react-aria/grid';\n\ninterface TableCellProps {\n /** An object representing the table cell. Contains all the relevant information that makes up the row header. */\n node: GridNode<unknown>,\n /** Whether the cell is contained in a virtual scroller. */\n isVirtualized?: boolean,\n /**\n * Handler that is called when a user performs an action on the cell.\n * Please use onCellAction at the collection level instead.\n * @deprecated\n **/\n onAction?: () => void\n}\n\ninterface TableCellAria {\n /** Props for the table cell element. */\n gridCellProps: HTMLAttributes<HTMLElement>,\n /** Whether the cell is currently in a pressed state. */\n isPressed: boolean\n}\n\n/**\n * Provides the behavior and accessibility implementation for a cell in a table.\n * @param props - Props for the cell.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the cell element.\n */\nexport function useTableCell<T>(props: TableCellProps, state: TableState<T>, ref: RefObject<HTMLElement>): TableCellAria {\n let {gridCellProps, isPressed} = useGridCell(props, state, ref);\n\n let columnKey = props.node.column.key;\n if (state.collection.rowHeaderColumnKeys.has(columnKey)) {\n gridCellProps.role = 'rowheader';\n gridCellProps.id = getCellId(state, props.node.parentKey, columnKey);\n }\n\n return {\n gridCellProps,\n isPressed\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 {AriaCheckboxProps} from '@react-types/checkbox';\nimport {getRowLabelledBy} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Key} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridSelectionCheckbox} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface SelectionCheckboxProps {\n /** A unique key for the checkbox. */\n key: Key\n}\n\ninterface SelectionCheckboxAria {\n /** Props for the row selection checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\ninterface SelectAllCheckboxAria {\n /** Props for the select all checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\n/**\n * Provides the behavior and accessibility implementation for a selection checkbox in a table.\n * @param props - Props for the selection checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectionCheckbox<T>(props: SelectionCheckboxProps, state: TableState<T>): SelectionCheckboxAria {\n let {key} = props;\n const {checkboxProps} = useGridSelectionCheckbox(props, state);\n\n return {\n checkboxProps: {\n ...checkboxProps,\n 'aria-labelledby': `${checkboxProps.id} ${getRowLabelledBy(state, key)}`\n }\n };\n}\n\n/**\n * Provides the behavior and accessibility implementation for the select all checkbox in a table.\n * @param props - Props for the select all checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectAllCheckbox<T>(state: TableState<T>): SelectAllCheckboxAria {\n let {isEmpty, isSelectAll, selectionMode} = state.selectionManager;\n const formatMessage = useMessageFormatter(intlMessages);\n\n return {\n checkboxProps: {\n 'aria-label': formatMessage(selectionMode === 'single' ? 'select' : 'selectAll'),\n isSelected: isSelectAll,\n isDisabled: selectionMode !== 'multiple',\n isIndeterminate: !isEmpty && !isSelectAll,\n onChange: () => state.selectionManager.toggleSelectAll()\n }\n };\n}\n"],"names":[],"version":3,"file":"module.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-aria/table/src/index.ts","packages/@react-aria/table/src/useTable.ts","packages/@react-aria/table/src/utils.ts","packages/@react-aria/table/intl/*.js","packages/@react-aria/table/intl/ar-AE.json","packages/@react-aria/table/intl/bg-BG.json","packages/@react-aria/table/intl/cs-CZ.json","packages/@react-aria/table/intl/da-DK.json","packages/@react-aria/table/intl/de-DE.json","packages/@react-aria/table/intl/el-GR.json","packages/@react-aria/table/intl/en-US.json","packages/@react-aria/table/intl/es-ES.json","packages/@react-aria/table/intl/et-EE.json","packages/@react-aria/table/intl/fi-FI.json","packages/@react-aria/table/intl/fr-FR.json","packages/@react-aria/table/intl/he-IL.json","packages/@react-aria/table/intl/hr-HR.json","packages/@react-aria/table/intl/hu-HU.json","packages/@react-aria/table/intl/it-IT.json","packages/@react-aria/table/intl/ja-JP.json","packages/@react-aria/table/intl/ko-KR.json","packages/@react-aria/table/intl/lt-LT.json","packages/@react-aria/table/intl/lv-LV.json","packages/@react-aria/table/intl/nb-NO.json","packages/@react-aria/table/intl/nl-NL.json","packages/@react-aria/table/intl/pl-PL.json","packages/@react-aria/table/intl/pt-BR.json","packages/@react-aria/table/intl/pt-PT.json","packages/@react-aria/table/intl/ro-RO.json","packages/@react-aria/table/intl/ru-RU.json","packages/@react-aria/table/intl/sk-SK.json","packages/@react-aria/table/intl/sl-SI.json","packages/@react-aria/table/intl/sr-SP.json","packages/@react-aria/table/intl/sv-SE.json","packages/@react-aria/table/intl/tr-TR.json","packages/@react-aria/table/intl/uk-UA.json","packages/@react-aria/table/intl/zh-CN.json","packages/@react-aria/table/intl/zh-TW.json","packages/@react-aria/table/src/TableKeyboardDelegate.ts","packages/@react-aria/table/src/useTableColumnHeader.ts","packages/@react-aria/table/src/useTableRow.ts","packages/@react-aria/table/src/useTableHeaderRow.ts","packages/@react-aria/table/src/useTableCell.ts","packages/@react-aria/table/src/useTableSelectionCheckbox.ts","packages/@react-aria/table/src/useTableColumnResize.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 * from './useTable';\nexport * from './useTableColumnHeader';\nexport * from './useTableRow';\nexport * from './useTableHeaderRow';\nexport * from './useTableCell';\nexport * from './useTableSelectionCheckbox';\nexport * from './useTableColumnResize';\n\n// Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...\n// export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';\nimport {GridRowGroupAria, useGridRowGroup} from '@react-aria/grid';\nexport function useTableRowGroup(): GridRowGroupAria {\n return useGridRowGroup();\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 {announce} from '@react-aria/live-announcer';\nimport {GridAria, GridProps, useGrid} from '@react-aria/grid';\nimport {gridIds} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Layout} from '@react-stately/virtualizer';\nimport {mergeProps, useDescription, useId, useUpdateEffect} from '@react-aria/utils';\nimport {Node} from '@react-types/shared';\nimport {RefObject, useMemo} from 'react';\nimport {TableKeyboardDelegate} from './TableKeyboardDelegate';\nimport {TableState} from '@react-stately/table';\nimport {useCollator, useLocale} from '@react-aria/i18n';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface TableProps<T> extends GridProps {\n /** The layout object for the table. Computes what content is visible and how to position and style them. */\n layout?: Layout<Node<T>>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table component.\n * A table displays data in rows and columns and enables a user to navigate its contents via directional navigation keys,\n * and optionally supports row selection and sorting.\n * @param props - Props for the table.\n * @param state - State for the table, as returned by `useTableState`.\n * @param ref - The ref attached to the table element.\n */\nexport function useTable<T>(props: TableProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridAria {\n let {\n keyboardDelegate,\n isVirtualized,\n layout\n } = props;\n\n // By default, a KeyboardDelegate is provided which uses the DOM to query layout information (e.g. for page up/page down).\n // When virtualized, the layout object will be passed in as a prop and override this.\n let collator = useCollator({usage: 'search', sensitivity: 'base'});\n let {direction} = useLocale();\n let delegate = useMemo(() => keyboardDelegate || new TableKeyboardDelegate({\n collection: state.collection,\n disabledKeys: state.disabledKeys,\n ref,\n direction,\n collator,\n layout\n }), [keyboardDelegate, state.collection, state.disabledKeys, ref, direction, collator, layout]);\n\n let id = useId();\n gridIds.set(state, id);\n\n let {gridProps} = useGrid({\n ...props,\n id,\n keyboardDelegate: delegate,\n getRowText(key): string {\n let added = state.collection.getItem(key);\n if (!added) {\n return '';\n }\n\n // If the row has a textValue, use that.\n if (added.textValue != null) {\n return added.textValue;\n }\n\n // Otherwise combine the text of each of the row header columns.\n let rowHeaderColumnKeys = state.collection.rowHeaderColumnKeys;\n if (rowHeaderColumnKeys) {\n let text = [];\n for (let cell of added.childNodes) {\n let column = state.collection.columns[cell.index];\n if (rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n text.push(cell.textValue);\n }\n\n if (text.length === rowHeaderColumnKeys.size) {\n break;\n }\n }\n\n return text.join(' ');\n }\n\n return '';\n }\n }, state, ref);\n\n // Override to include header rows\n if (isVirtualized) {\n gridProps['aria-rowcount'] = state.collection.size + state.collection.headerRows.length;\n }\n\n let {column, direction: sortDirection} = state.sortDescriptor || {};\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription = useMemo(() => {\n let columnName = state.collection.columns.find(c => c.key === column)?.textValue;\n return sortDirection && column ? formatMessage(`${sortDirection}Sort`, {columnName}) : undefined;\n }, [sortDirection, column, state.collection.columns]);\n\n let descriptionProps = useDescription(sortDescription);\n\n // Only announce after initial render, tabbing to the table will tell you the initial sort info already\n useUpdateEffect(() => {\n announce(sortDescription, 'assertive', 500);\n }, [sortDescription]);\n\n return {\n gridProps: mergeProps(\n gridProps,\n descriptionProps,\n {\n // merge sort description with long press information\n 'aria-describedby': [descriptionProps['aria-describedby'], gridProps['aria-describedby']].filter(Boolean).join(' ')\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 {Key} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport const gridIds = new WeakMap<TableState<unknown>, string>();\n\nfunction normalizeKey(key: Key): string {\n if (typeof key === 'string') {\n return key.replace(/\\s*/g, '');\n }\n\n return '' + key;\n}\n\nexport function getColumnHeaderId<T>(state: TableState<T>, columnKey: Key): string {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(columnKey)}`;\n}\n\nexport function getCellId<T>(state: TableState<T>, rowKey: Key, columnKey: Key) {\n let gridId = gridIds.get(state);\n if (!gridId) {\n throw new Error('Unknown grid');\n }\n\n return `${gridId}-${normalizeKey(rowKey)}-${normalizeKey(columnKey)}`;\n}\n\nexport function getRowLabelledBy<T>(state: TableState<T>, rowKey: Key): string {\n // A row is labelled by it's row headers.\n return [...state.collection.rowHeaderColumnKeys].map(columnKey =>\n getCellId(state, rowKey, columnKey)\n ).join(' ');\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"ascending\": \"تصاعدي\",\n \"ascendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تصاعدي\",\n \"descending\": \"تنازلي\",\n \"descendingSort\": \"ترتيب حسب العمود {columnName} بترتيب تنازلي\",\n \"select\": \"تحديد\",\n \"selectAll\": \"تحديد الكل\",\n \"sortable\": \"عمود قابل للترتيب\"\n}\n","{\n \"ascending\": \"възходящ\",\n \"ascendingSort\": \"сортирано по колона {columnName} във възходящ ред\",\n \"descending\": \"низходящ\",\n \"descendingSort\": \"сортирано по колона {columnName} в низходящ ред\",\n \"select\": \"Изберете\",\n \"selectAll\": \"Изберете всичко\",\n \"sortable\": \"сортираща колона\"\n}\n","{\n \"ascending\": \"vzestupně\",\n \"ascendingSort\": \"řazeno vzestupně podle sloupce {columnName}\",\n \"descending\": \"sestupně\",\n \"descendingSort\": \"řazeno sestupně podle sloupce {columnName}\",\n \"select\": \"Vybrat\",\n \"selectAll\": \"Vybrat vše\",\n \"sortable\": \"sloupec s možností řazení\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sorteret efter kolonne {columnName} i stigende rækkefølge\",\n \"descending\": \"faldende\",\n \"descendingSort\": \"sorteret efter kolonne {columnName} i faldende rækkefølge\",\n \"select\": \"Vælg\",\n \"selectAll\": \"Vælg alle\",\n \"sortable\": \"sorterbar kolonne\"\n}\n","{\n \"ascending\": \"aufsteigend\",\n \"ascendingSort\": \"sortiert nach Spalte {columnName} in aufsteigender Reihenfolge\",\n \"descending\": \"absteigend\",\n \"descendingSort\": \"sortiert nach Spalte {columnName} in absteigender Reihenfolge\",\n \"select\": \"Auswählen\",\n \"selectAll\": \"Alles auswählen\",\n \"sortable\": \"sortierbare Spalte\"\n}\n","{\n \"ascending\": \"αύξουσα\",\n \"ascendingSort\": \"διαλογή ανά στήλη {columnName} σε αύξουσα σειρά\",\n \"descending\": \"φθίνουσα\",\n \"descendingSort\": \"διαλογή ανά στήλη {columnName} σε φθίνουσα σειρά\",\n \"select\": \"Επιλογή\",\n \"selectAll\": \"Επιλογή όλων\",\n \"sortable\": \"Στήλη διαλογής\"\n}\n","{\n \"select\": \"Select\",\n \"selectAll\": \"Select All\",\n \"sortable\": \"sortable column\",\n \"ascending\": \"ascending\",\n \"descending\": \"descending\",\n \"ascendingSort\": \"sorted by column {columnName} in ascending order\",\n \"descendingSort\": \"sorted by column {columnName} in descending order\"\n}\n","{\n \"ascending\": \"de subida\",\n \"ascendingSort\": \"ordenado por columna {columnName} en orden de subida\",\n \"descending\": \"de bajada\",\n \"descendingSort\": \"ordenado por columna {columnName} en orden de bajada\",\n \"select\": \"Seleccionar\",\n \"selectAll\": \"Seleccionar todos\",\n \"sortable\": \"columna ordenable\"\n}\n","{\n \"ascending\": \"tõusev järjestus\",\n \"ascendingSort\": \"sorditud veeru järgi {columnName} tõusvas järjestuses\",\n \"descending\": \"laskuv järjestus\",\n \"descendingSort\": \"sorditud veeru järgi {columnName} laskuvas järjestuses\",\n \"select\": \"Vali\",\n \"selectAll\": \"Vali kõik\",\n \"sortable\": \"sorditav veerg\"\n}\n","{\n \"ascending\": \"nouseva\",\n \"ascendingSort\": \"lajiteltu sarakkeen {columnName} mukaan nousevassa järjestyksessä\",\n \"descending\": \"laskeva\",\n \"descendingSort\": \"lajiteltu sarakkeen {columnName} mukaan laskevassa järjestyksessä\",\n \"select\": \"Valitse\",\n \"selectAll\": \"Valitse kaikki\",\n \"sortable\": \"lajiteltava sarake\"\n}\n","{\n \"ascending\": \"croissant\",\n \"ascendingSort\": \"trié en fonction de la colonne {columnName} par ordre croissant\",\n \"descending\": \"décroissant\",\n \"descendingSort\": \"trié en fonction de la colonne {columnName} par ordre décroissant\",\n \"select\": \"Sélectionner\",\n \"selectAll\": \"Sélectionner tout\",\n \"sortable\": \"colonne triable\"\n}\n","{\n \"ascending\": \"עולה\",\n \"ascendingSort\": \"מוין לפי עמודה {columnName} בסדר עולה\",\n \"descending\": \"יורד\",\n \"descendingSort\": \"מוין לפי עמודה {columnName} בסדר יורד\",\n \"select\": \"בחר\",\n \"selectAll\": \"בחר הכול\",\n \"sortable\": \"עמודה שניתן למיין\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"razvrstano po stupcima {columnName} rastućem redoslijedom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"razvrstano po stupcima {columnName} padajućim redoslijedom\",\n \"select\": \"Odaberite\",\n \"selectAll\": \"Odaberite sve\",\n \"sortable\": \"stupac koji se može razvrstati\"\n}\n","{\n \"ascending\": \"növekvő\",\n \"ascendingSort\": \"rendezve a(z) {columnName} oszlop szerint, növekvő sorrendben\",\n \"descending\": \"csökkenő\",\n \"descendingSort\": \"rendezve a(z) {columnName} oszlop szerint, csökkenő sorrendben\",\n \"select\": \"Kijelölés\",\n \"selectAll\": \"Összes kijelölése\",\n \"sortable\": \"rendezendő oszlop\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"in ordine crescente in base alla colonna {columnName}\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"in ordine decrescente in base alla colonna {columnName}\",\n \"select\": \"Seleziona\",\n \"selectAll\": \"Seleziona tutto\",\n \"sortable\": \"colonna ordinabile\"\n}\n","{\n \"ascending\": \"昇順\",\n \"ascendingSort\": \"列 {columnName} を昇順で並べ替え\",\n \"descending\": \"降順\",\n \"descendingSort\": \"列 {columnName} を降順で並べ替え\",\n \"select\": \"選択\",\n \"selectAll\": \"すべて選択\",\n \"sortable\": \"並べ替え可能な列\"\n}\n","{\n \"ascending\": \"오름차순\",\n \"ascendingSort\": \"{columnName} 열을 기준으로 오름차순으로 정렬됨\",\n \"descending\": \"내림차순\",\n \"descendingSort\": \"{columnName} 열을 기준으로 내림차순으로 정렬됨\",\n \"select\": \"선택\",\n \"selectAll\": \"모두 선택\",\n \"sortable\": \"정렬 가능한 열\"\n}\n","{\n \"ascending\": \"didėjančia tvarka\",\n \"ascendingSort\": \"surikiuota pagal stulpelį {columnName} didėjančia tvarka\",\n \"descending\": \"mažėjančia tvarka\",\n \"descendingSort\": \"surikiuota pagal stulpelį {columnName} mažėjančia tvarka\",\n \"select\": \"Pasirinkti\",\n \"selectAll\": \"Pasirinkti viską\",\n \"sortable\": \"rikiuojamas stulpelis\"\n}\n","{\n \"ascending\": \"augošā secībā\",\n \"ascendingSort\": \"kārtots pēc kolonnas {columnName} augošā secībā\",\n \"descending\": \"dilstošā secībā\",\n \"descendingSort\": \"kārtots pēc kolonnas {columnName} dilstošā secībā\",\n \"select\": \"Atlasīt\",\n \"selectAll\": \"Atlasīt visu\",\n \"sortable\": \"kārtojamā kolonna\"\n}\n","{\n \"ascending\": \"stigende\",\n \"ascendingSort\": \"sortert etter kolonne {columnName} i stigende rekkefølge\",\n \"descending\": \"synkende\",\n \"descendingSort\": \"sortert etter kolonne {columnName} i synkende rekkefølge\",\n \"select\": \"Velg\",\n \"selectAll\": \"Velg alle\",\n \"sortable\": \"kolonne som kan sorteres\"\n}\n","{\n \"ascending\": \"oplopend\",\n \"ascendingSort\": \"gesorteerd in oplopende volgorde in kolom {columnName}\",\n \"descending\": \"aflopend\",\n \"descendingSort\": \"gesorteerd in aflopende volgorde in kolom {columnName}\",\n \"select\": \"Selecteren\",\n \"selectAll\": \"Alles selecteren\",\n \"sortable\": \"sorteerbare kolom\"\n}\n","{\n \"ascending\": \"rosnąco\",\n \"ascendingSort\": \"posortowano według kolumny {columnName} w porządku rosnącym\",\n \"descending\": \"malejąco\",\n \"descendingSort\": \"posortowano według kolumny {columnName} w porządku malejącym\",\n \"select\": \"Zaznacz\",\n \"selectAll\": \"Zaznacz wszystko\",\n \"sortable\": \"kolumna z możliwością sortowania\"\n}\n","{\n \"ascending\": \"crescente\",\n \"ascendingSort\": \"classificado pela coluna {columnName} em ordem crescente\",\n \"descending\": \"decrescente\",\n \"descendingSort\": \"classificado pela coluna {columnName} em ordem decrescente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"coluna classificável\"\n}\n","{\n \"ascending\": \"ascendente\",\n \"ascendingSort\": \"Ordenar por coluna {columnName} em ordem ascendente\",\n \"descending\": \"descendente\",\n \"descendingSort\": \"Ordenar por coluna {columnName} em ordem descendente\",\n \"select\": \"Selecionar\",\n \"selectAll\": \"Selecionar tudo\",\n \"sortable\": \"Coluna ordenável\"\n}\n","{\n \"ascending\": \"crescătoare\",\n \"ascendingSort\": \"sortate după coloana {columnName} în ordine crescătoare\",\n \"descending\": \"descrescătoare\",\n \"descendingSort\": \"sortate după coloana {columnName} în ordine descrescătoare\",\n \"select\": \"Selectare\",\n \"selectAll\": \"Selectare totală\",\n \"sortable\": \"coloană sortabilă\"\n}\n","{\n \"ascending\": \"возрастание\",\n \"ascendingSort\": \"сортировать столбец {columnName} в порядке возрастания\",\n \"descending\": \"убывание\",\n \"descendingSort\": \"сортировать столбец {columnName} в порядке убывания\",\n \"select\": \"Выбрать\",\n \"selectAll\": \"Выбрать все\",\n \"sortable\": \"сортируемый столбец\"\n}\n","{\n \"ascending\": \"vzostupne\",\n \"ascendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"descending\": \"zostupne\",\n \"descendingSort\": \"zoradené zostupne podľa stĺpca {columnName}\",\n \"select\": \"Vybrať\",\n \"selectAll\": \"Vybrať všetko\",\n \"sortable\": \"zoraditeľný stĺpec\"\n}\n","{\n \"ascending\": \"naraščajoče\",\n \"ascendingSort\": \"razvrščeno po stolpcu {columnName} v naraščajočem vrstnem redu\",\n \"descending\": \"padajoče\",\n \"descendingSort\": \"razvrščeno po stolpcu {columnName} v padajočem vrstnem redu\",\n \"select\": \"Izberite\",\n \"selectAll\": \"Izberite vse\",\n \"sortable\": \"razvrstljivi stolpec\"\n}\n","{\n \"ascending\": \"rastući\",\n \"ascendingSort\": \"sortirano po kolonama {columnName} rastućim redosledom\",\n \"descending\": \"padajući\",\n \"descendingSort\": \"sortirano po kolonama {columnName} padajućim redosledom\",\n \"select\": \"Izaberite\",\n \"selectAll\": \"Izaberite sve\",\n \"sortable\": \"kolona koja se može sortirati\"\n}\n","{\n \"ascending\": \"stigande\",\n \"ascendingSort\": \"sorterat på kolumn {columnName} i stigande ordning\",\n \"descending\": \"fallande\",\n \"descendingSort\": \"sorterat på kolumn {columnName} i fallande ordning\",\n \"select\": \"Markera\",\n \"selectAll\": \"Markera allt\",\n \"sortable\": \"sorterbar kolumn\"\n}\n","{\n \"ascending\": \"artan sırada\",\n \"ascendingSort\": \"{columnName} sütuna göre artan düzende sırala\",\n \"descending\": \"azalan sırada\",\n \"descendingSort\": \"{columnName} sütuna göre azalan düzende sırala\",\n \"select\": \"Seç\",\n \"selectAll\": \"Tümünü Seç\",\n \"sortable\": \"Sıralanabilir sütun\"\n}\n","{\n \"ascending\": \"висхідний\",\n \"ascendingSort\": \"відсортовано за стовпцем {columnName} у висхідному порядку\",\n \"descending\": \"низхідний\",\n \"descendingSort\": \"відсортовано за стовпцем {columnName} у низхідному порядку\",\n \"select\": \"Вибрати\",\n \"selectAll\": \"Вибрати все\",\n \"sortable\": \"сортувальний стовпець\"\n}\n","{\n \"ascending\": \"升序\",\n \"ascendingSort\": \"按列 {columnName} 升序排序\",\n \"descending\": \"降序\",\n \"descendingSort\": \"按列 {columnName} 降序排序\",\n \"select\": \"选择\",\n \"selectAll\": \"全选\",\n \"sortable\": \"可排序的列\"\n}\n","{\n \"ascending\": \"遞增\",\n \"ascendingSort\": \"已依據「{columnName}」欄遞增排序\",\n \"descending\": \"遞減\",\n \"descendingSort\": \"已依據「{columnName}」欄遞減排序\",\n \"select\": \"選取\",\n \"selectAll\": \"全選\",\n \"sortable\": \"可排序的欄\"\n}\n","/*\n * Copyright 2022 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 {GridKeyboardDelegate} from '@react-aria/grid';\nimport {Key} from 'react';\nimport {Node} from '@react-types/shared';\nimport {TableCollection} from '@react-types/table';\n\nexport class TableKeyboardDelegate<T> extends GridKeyboardDelegate<T, TableCollection<T>> {\n\n protected isCell(node: Node<T>) {\n return node.type === 'cell' || node.type === 'rowheader' || node.type === 'column';\n }\n\n getKeyBelow(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, then focus the first child column if any,\n // or find the corresponding cell in the first row.\n if (startItem.type === 'column') {\n let child = [...startItem.childNodes][0];\n if (child) {\n return child.key;\n }\n\n let firstKey = this.getFirstKey();\n if (firstKey == null) {\n return;\n }\n\n let firstItem = this.collection.getItem(firstKey);\n return [...firstItem.childNodes][startItem.index].key;\n }\n\n return super.getKeyBelow(key);\n }\n\n getKeyAbove(key: Key) {\n let startItem = this.collection.getItem(key);\n if (!startItem) {\n return;\n }\n\n // If focus was on a column, focus the parent column if any\n if (startItem.type === 'column') {\n let parent = this.collection.getItem(startItem.parentKey);\n if (parent && parent.type === 'column') {\n return parent.key;\n }\n\n return;\n }\n\n // only return above row key if not header row\n let superKey = super.getKeyAbove(key);\n if (superKey != null && this.collection.getItem(superKey).type !== 'headerrow') {\n return superKey;\n }\n\n // If no item was found, and focus was on a cell, then focus the\n // corresponding column header.\n if (this.isCell(startItem)) {\n return this.collection.columns[startItem.index].key;\n }\n\n // If focus was on a row, then focus the first column header.\n return this.collection.columns[0].key;\n }\n\n private findNextColumnKey(column: Node<T>) {\n // Search following columns\n let key = this.findNextKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the first column\n let row = this.collection.headerRows[column.level];\n for (let item of row.childNodes) {\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n private findPreviousColumnKey(column: Node<T>) {\n // Search previous columns\n let key = this.findPreviousKey(column.key, item => item.type === 'column');\n if (key != null) {\n return key;\n }\n\n // Wrap around to the last column\n let row = this.collection.headerRows[column.level];\n let childNodes = [...row.childNodes];\n for (let i = childNodes.length - 1; i >= 0; i--) {\n let item = childNodes[i];\n if (item.type === 'column') {\n return item.key;\n }\n }\n }\n\n getKeyRightOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the next column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findPreviousColumnKey(item)\n : this.findNextColumnKey(item);\n }\n\n return super.getKeyRightOf(key);\n }\n\n getKeyLeftOf(key: Key) {\n let item = this.collection.getItem(key);\n if (!item) {\n return;\n }\n\n // If focus was on a column, then focus the previous column\n if (item.type === 'column') {\n return this.direction === 'rtl'\n ? this.findNextColumnKey(item)\n : this.findPreviousColumnKey(item);\n }\n\n return super.getKeyLeftOf(key);\n }\n\n getKeyForSearch(search: string, fromKey?: Key) {\n if (!this.collator) {\n return null;\n }\n\n let collection = this.collection;\n let key = fromKey ?? this.getFirstKey();\n if (key == null) {\n return null;\n }\n\n // If the starting key is a cell, search from its parent row.\n let startItem = collection.getItem(key);\n if (startItem.type === 'cell') {\n key = startItem.parentKey;\n }\n\n let hasWrapped = false;\n while (key != null) {\n let item = collection.getItem(key);\n\n // Check each of the row header cells in this row for a match\n for (let cell of item.childNodes) {\n let column = collection.columns[cell.index];\n if (collection.rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n let substring = cell.textValue.slice(0, search.length);\n if (this.collator.compare(substring, search) === 0) {\n // If we started on a cell, end on the matching cell. Otherwise, end on the row.\n let fromItem = fromKey != null ? collection.getItem(fromKey) : startItem;\n return fromItem.type === 'cell'\n ? cell.key\n : item.key;\n }\n }\n }\n\n key = this.getKeyBelow(key);\n\n // Wrap around when reaching the end of the collection\n if (key == null && !hasWrapped) {\n key = this.getFirstKey();\n hasWrapped = true;\n }\n }\n\n return null;\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 {getColumnHeaderId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {isAndroid, mergeProps, useDescription} from '@react-aria/utils';\nimport {TableState} from '@react-stately/table';\nimport {useFocusable} from '@react-aria/focus';\nimport {useGridCell} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\nimport {usePress} from '@react-aria/interactions';\n\ninterface ColumnHeaderProps {\n /** An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader). Contains all the relevant information that makes up the column header. */\n node: GridNode<unknown>,\n /** Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a virtual scroller. */\n isVirtualized?: boolean\n}\n\ninterface ColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(props: ColumnHeaderProps, state: TableState<T>, ref: RefObject<HTMLElement>): ColumnHeaderAria {\n let {node} = props;\n let allowsResizing = node.props.allowsResizing;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell(props, state, ref);\n\n let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n let {pressProps} = usePress({\n // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.\n isDisabled: !allowsSorting || isSelectionCellDisabled || allowsResizing,\n onPress() {\n state.sort(node.key);\n }\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: HTMLAttributes<HTMLElement>['aria-sort'] = null;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let formatMessage = useMessageFormatter(intlMessages);\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${formatMessage('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${formatMessage(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n return {\n columnHeaderProps: {\n ...mergeProps(gridCellProps, pressProps, focusableProps, descriptionProps),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colspan && node.colspan > 1 ? node.colspan : null,\n 'aria-sort': ariaSort\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 {getRowLabelledBy} from './utils';\nimport {GridRowAria, GridRowProps, useGridRow} from '@react-aria/grid';\nimport {RefObject} from 'react';\nimport {TableCollection} from '@react-types/table';\nimport {TableState} from '@react-stately/table';\n\n/**\n * Provides the behavior and accessibility implementation for a row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): GridRowAria {\n let {node} = props;\n let {rowProps, isPressed} = useGridRow<T, TableCollection<T>, TableState<T>>(props, state, ref);\n return {\n rowProps: {\n ...rowProps,\n 'aria-labelledby': getRowLabelledBy(state, node.key)\n },\n isPressed\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 {GridRowProps} from '@react-aria/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\n\nexport interface TableHeaderRowAria {\n /** Props for the grid row element. */\n rowProps: HTMLAttributes<HTMLElement>\n}\n\n/**\n * Provides the behavior and accessibility implementation for a header row in a table.\n * @param props - Props for the row.\n * @param state - State of the table, as returned by `useTableState`.\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function useTableHeaderRow<T>(props: GridRowProps<T>, state: TableState<T>, ref: RefObject<HTMLElement>): TableHeaderRowAria {\n let {node, isVirtualized} = props;\n let rowProps = {\n role: 'row'\n };\n\n if (isVirtualized) {\n rowProps['aria-rowindex'] = node.index + 1; // aria-rowindex is 1 based\n }\n\n return {\n rowProps\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 {getCellId} from './utils';\nimport {GridNode} from '@react-types/grid';\nimport {HTMLAttributes, RefObject} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridCell} from '@react-aria/grid';\n\ninterface TableCellProps {\n /** An object representing the table cell. Contains all the relevant information that makes up the row header. */\n node: GridNode<unknown>,\n /** Whether the cell is contained in a virtual scroller. */\n isVirtualized?: boolean,\n /**\n * Handler that is called when a user performs an action on the cell.\n * Please use onCellAction at the collection level instead.\n * @deprecated\n **/\n onAction?: () => void\n}\n\ninterface TableCellAria {\n /** Props for the table cell element. */\n gridCellProps: HTMLAttributes<HTMLElement>,\n /** Whether the cell is currently in a pressed state. */\n isPressed: boolean\n}\n\n/**\n * Provides the behavior and accessibility implementation for a cell in a table.\n * @param props - Props for the cell.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the cell element.\n */\nexport function useTableCell<T>(props: TableCellProps, state: TableState<T>, ref: RefObject<HTMLElement>): TableCellAria {\n let {gridCellProps, isPressed} = useGridCell(props, state, ref);\n\n let columnKey = props.node.column.key;\n if (state.collection.rowHeaderColumnKeys.has(columnKey)) {\n gridCellProps.role = 'rowheader';\n gridCellProps.id = getCellId(state, props.node.parentKey, columnKey);\n }\n\n return {\n gridCellProps,\n isPressed\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 {AriaCheckboxProps} from '@react-types/checkbox';\nimport {getRowLabelledBy} from './utils';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {Key} from 'react';\nimport {TableState} from '@react-stately/table';\nimport {useGridSelectionCheckbox} from '@react-aria/grid';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\ninterface SelectionCheckboxProps {\n /** A unique key for the checkbox. */\n key: Key\n}\n\ninterface SelectionCheckboxAria {\n /** Props for the row selection checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\ninterface SelectAllCheckboxAria {\n /** Props for the select all checkbox element. */\n checkboxProps: AriaCheckboxProps\n}\n\n/**\n * Provides the behavior and accessibility implementation for a selection checkbox in a table.\n * @param props - Props for the selection checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectionCheckbox<T>(props: SelectionCheckboxProps, state: TableState<T>): SelectionCheckboxAria {\n let {key} = props;\n const {checkboxProps} = useGridSelectionCheckbox(props, state);\n\n return {\n checkboxProps: {\n ...checkboxProps,\n 'aria-labelledby': `${checkboxProps.id} ${getRowLabelledBy(state, key)}`\n }\n };\n}\n\n/**\n * Provides the behavior and accessibility implementation for the select all checkbox in a table.\n * @param props - Props for the select all checkbox.\n * @param state - State of the table, as returned by `useTableState`.\n */\nexport function useTableSelectAllCheckbox<T>(state: TableState<T>): SelectAllCheckboxAria {\n let {isEmpty, isSelectAll, selectionMode} = state.selectionManager;\n const formatMessage = useMessageFormatter(intlMessages);\n\n return {\n checkboxProps: {\n 'aria-label': formatMessage(selectionMode === 'single' ? 'select' : 'selectAll'),\n isSelected: isSelectAll,\n isDisabled: selectionMode !== 'multiple',\n isIndeterminate: !isEmpty && !isSelectAll,\n onChange: () => state.selectionManager.toggleSelectAll()\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 {focusSafely, useFocusable} from '@react-aria/focus';\nimport {mergeProps} from '@react-aria/utils';\nimport {useKeyboard, useMove} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useRef} from 'react';\n\nexport function useTableColumnResize(state, item, ref): any {\n const stateRef = useRef(null);\n // keep track of what the cursor on the body is so it can be restored back to that when done resizing\n const cursor = useRef(null);\n stateRef.current = state;\n\n let {direction} = useLocale();\n let {focusableProps} = useFocusable({excludeFromTabOrder: true}, ref);\n let {keyboardProps} = useKeyboard({\n onKeyDown: (e) => {\n if (e.key === 'Tab') {\n // useKeyboard stops propagation by default. We want to continue propagation for tab so focus leaves the table\n e.continuePropagation();\n }\n if (e.key === 'Escape' || e.key === 'Enter' || e.key === ' ') {\n // switch focus back to the column header on escape\n const columnHeader = ref.current.previousSibling;\n if (columnHeader) {\n focusSafely(columnHeader);\n }\n }\n }\n });\n\n const columnResizeWidthRef = useRef(null);\n const {moveProps} = useMove({\n onMoveStart() {\n stateRef.current.onColumnResizeStart();\n columnResizeWidthRef.current = stateRef.current.getColumnWidth(item.key);\n cursor.current = document.body.style.cursor;\n document.body.style.setProperty('cursor', 'col-resize');\n },\n onMove({deltaX, pointerType}) {\n if (direction === 'rtl') {\n deltaX *= -1;\n }\n // if moving up/down only, no need to resize\n if (deltaX !== 0) {\n if (pointerType === 'keyboard') {\n deltaX *= 10;\n }\n columnResizeWidthRef.current += deltaX;\n stateRef.current.onColumnResize(item, columnResizeWidthRef.current);\n }\n },\n onMoveEnd() {\n stateRef.current.onColumnResizeEnd();\n columnResizeWidthRef.current = 0;\n document.body.style.cursor = cursor.current;\n }\n });\n\n return {\n resizerProps: {\n ...mergeProps(moveProps, focusableProps, keyboardProps)\n }\n };\n}\n"],"names":[],"version":3,"file":"module.js.map"}
package/dist/types.d.ts CHANGED
@@ -100,6 +100,7 @@ export function useTableSelectionCheckbox<T>(props: SelectionCheckboxProps, stat
100
100
  * @param state - State of the table, as returned by `useTableState`.
101
101
  */
102
102
  export function useTableSelectAllCheckbox<T>(state: TableState<T>): SelectAllCheckboxAria;
103
+ export function useTableColumnResize(state: any, item: any, ref: any): any;
103
104
  export function useTableRowGroup(): GridRowGroupAria;
104
105
 
105
106
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"mappings":";;;;;;;AE0BA,qBAAqB,CAAC,CAAE,SAAQ,SAAS;IACvC,4GAA4G;IAC5G,MAAM,CAAC,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;CACzB;AAED;;;;;;;GAOG;AACH,yBAAyB,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,QAAQ,CAyF7G;ACxGD;IACE,2KAA2K;IAC3K,IAAI,EAAE,SAAS,OAAO,CAAC,CAAC;IACxB,wHAAwH;IACxH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED;IACE,+FAA+F;IAC/F,iBAAiB,EAAE,eAAe,WAAW,CAAC,CAAA;CAC/C;AAED;;;;;GAKG;AACH,qCAAqC,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,gBAAgB,CA+CrI;ACvED;;;;GAIG;AACH,4BAA4B,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,WAAW,CAUrH;ACjBD;IACE,sCAAsC;IACtC,QAAQ,EAAE,eAAe,WAAW,CAAC,CAAA;CACtC;AAED;;;;GAIG;AAEH,kCAAkC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,kBAAkB,CAalI;ACtBD;IACE,iHAAiH;IACjH,IAAI,EAAE,SAAS,OAAO,CAAC,CAAC;IACxB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;QAII;IACJ,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB;AAED;IACE,wCAAwC;IACxC,aAAa,EAAE,eAAe,WAAW,CAAC,CAAC;IAC3C,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,6BAA6B,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,aAAa,CAavH;ACpCD;IACE,qCAAqC;IACrC,GAAG,EAAE,GAAG,CAAA;CACT;AAED;IACE,oDAAoD;IACpD,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED;IACE,iDAAiD;IACjD,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED;;;;GAIG;AACH,0CAA0C,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,GAAG,qBAAqB,CAUvH;AAED;;;;GAIG;AACH,0CAA0C,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,GAAG,qBAAqB,CAaxF;AChDD,oCAAoC,gBAAgB,CAEnD","sources":["packages/@react-aria/table/src/packages/@react-aria/table/src/utils.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/TableKeyboardDelegate.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTable.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableColumnHeader.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableRow.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableHeaderRow.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableCell.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableSelectionCheckbox.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/index.ts","packages/@react-aria/table/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,"/*\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 * from './useTable';\nexport * from './useTableColumnHeader';\nexport * from './useTableRow';\nexport * from './useTableHeaderRow';\nexport * from './useTableCell';\nexport * from './useTableSelectionCheckbox';\n// export * from './useTableColumnResize';\n\n// Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...\n// export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';\nimport {GridRowGroupAria, useGridRowGroup} from '@react-aria/grid';\nexport function useTableRowGroup(): GridRowGroupAria {\n return useGridRowGroup();\n}\n"],"names":[],"version":3,"file":"types.d.ts.map"}
1
+ {"mappings":";;;;;;;AE0BA,qBAAqB,CAAC,CAAE,SAAQ,SAAS;IACvC,4GAA4G;IAC5G,MAAM,CAAC,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;CACzB;AAED;;;;;;;GAOG;AACH,yBAAyB,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,QAAQ,CAyF7G;ACxGD;IACE,2KAA2K;IAC3K,IAAI,EAAE,SAAS,OAAO,CAAC,CAAC;IACxB,wHAAwH;IACxH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED;IACE,+FAA+F;IAC/F,iBAAiB,EAAE,eAAe,WAAW,CAAC,CAAA;CAC/C;AAED;;;;;GAKG;AACH,qCAAqC,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,gBAAgB,CA+CrI;ACvED;;;;GAIG;AACH,4BAA4B,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,WAAW,CAUrH;ACjBD;IACE,sCAAsC;IACtC,QAAQ,EAAE,eAAe,WAAW,CAAC,CAAA;CACtC;AAED;;;;GAIG;AAEH,kCAAkC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,kBAAkB,CAalI;ACtBD;IACE,iHAAiH;IACjH,IAAI,EAAE,SAAS,OAAO,CAAC,CAAC;IACxB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;QAII;IACJ,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB;AAED;IACE,wCAAwC;IACxC,aAAa,EAAE,eAAe,WAAW,CAAC,CAAC;IAC3C,wDAAwD;IACxD,SAAS,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,6BAA6B,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,WAAW,CAAC,GAAG,aAAa,CAavH;ACpCD;IACE,qCAAqC;IACrC,GAAG,EAAE,GAAG,CAAA;CACT;AAED;IACE,oDAAoD;IACpD,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED;IACE,iDAAiD;IACjD,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED;;;;GAIG;AACH,0CAA0C,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,GAAG,qBAAqB,CAUvH;AAED;;;;GAIG;AACH,0CAA0C,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,GAAG,qBAAqB,CAaxF;ACrDD,qCAAqC,KAAK,KAAA,EAAE,IAAI,KAAA,EAAE,GAAG,KAAA,GAAG,GAAG,CAyD1D;ACpDD,oCAAoC,gBAAgB,CAEnD","sources":["packages/@react-aria/table/src/packages/@react-aria/table/src/utils.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/TableKeyboardDelegate.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTable.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableColumnHeader.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableRow.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableHeaderRow.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableCell.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableSelectionCheckbox.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/useTableColumnResize.ts","packages/@react-aria/table/src/packages/@react-aria/table/src/index.ts","packages/@react-aria/table/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,"/*\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 * from './useTable';\nexport * from './useTableColumnHeader';\nexport * from './useTableRow';\nexport * from './useTableHeaderRow';\nexport * from './useTableCell';\nexport * from './useTableSelectionCheckbox';\nexport * from './useTableColumnResize';\n\n// Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...\n// export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';\nimport {GridRowGroupAria, useGridRowGroup} from '@react-aria/grid';\nexport function useTableRowGroup(): GridRowGroupAria {\n return useGridRowGroup();\n}\n"],"names":[],"version":3,"file":"types.d.ts.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-aria/table",
3
- "version": "3.3.0",
3
+ "version": "3.3.1-nightly.3293+a0a88da21",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -18,19 +18,19 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@babel/runtime": "^7.6.2",
21
- "@react-aria/focus": "^3.6.0",
22
- "@react-aria/grid": "^3.3.0",
23
- "@react-aria/i18n": "^3.4.0",
24
- "@react-aria/interactions": "^3.9.0",
25
- "@react-aria/live-announcer": "^3.1.0",
26
- "@react-aria/selection": "^3.9.0",
27
- "@react-aria/utils": "^3.13.0",
28
- "@react-stately/table": "^3.2.0",
29
- "@react-stately/virtualizer": "^3.2.0",
30
- "@react-types/checkbox": "^3.3.0",
31
- "@react-types/grid": "^3.1.0",
32
- "@react-types/shared": "^3.13.0",
33
- "@react-types/table": "^3.2.0"
21
+ "@react-aria/focus": "3.0.0-nightly.1594+a0a88da21",
22
+ "@react-aria/grid": "3.3.1-nightly.3293+a0a88da21",
23
+ "@react-aria/i18n": "3.0.0-nightly.1594+a0a88da21",
24
+ "@react-aria/interactions": "3.0.0-nightly.1594+a0a88da21",
25
+ "@react-aria/live-announcer": "3.0.0-nightly.1594+a0a88da21",
26
+ "@react-aria/selection": "3.0.0-nightly.1594+a0a88da21",
27
+ "@react-aria/utils": "3.0.0-nightly.1594+a0a88da21",
28
+ "@react-stately/table": "3.2.1-nightly.3293+a0a88da21",
29
+ "@react-stately/virtualizer": "3.2.1-nightly.3293+a0a88da21",
30
+ "@react-types/checkbox": "3.0.0-nightly.1594+a0a88da21",
31
+ "@react-types/grid": "3.1.1-nightly.3293+a0a88da21",
32
+ "@react-types/shared": "3.0.0-nightly.1594+a0a88da21",
33
+ "@react-types/table": "3.2.1-nightly.3293+a0a88da21"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0",
@@ -39,5 +39,5 @@
39
39
  "publishConfig": {
40
40
  "access": "public"
41
41
  },
42
- "gitHead": "8f921ec5094e7c2b3c301bcb6133372e35a2052b"
42
+ "gitHead": "a0a88da217db1cff67be1bdc94490b3a7002b6f3"
43
43
  }
package/src/index.ts CHANGED
@@ -16,7 +16,7 @@ export * from './useTableRow';
16
16
  export * from './useTableHeaderRow';
17
17
  export * from './useTableCell';
18
18
  export * from './useTableSelectionCheckbox';
19
- // export * from './useTableColumnResize';
19
+ export * from './useTableColumnResize';
20
20
 
21
21
  // Workaround for a Parcel bug where re-exports don't work in the CommonJS output format...
22
22
  // export {useGridRowGroup as useTableRowGroup} from '@react-aria/grid';
@@ -42,14 +42,14 @@ interface ColumnHeaderAria {
42
42
  */
43
43
  export function useTableColumnHeader<T>(props: ColumnHeaderProps, state: TableState<T>, ref: RefObject<HTMLElement>): ColumnHeaderAria {
44
44
  let {node} = props;
45
- // let allowsResizing = node.props.allowsResizing;
45
+ let allowsResizing = node.props.allowsResizing;
46
46
  let allowsSorting = node.props.allowsSorting;
47
47
  let {gridCellProps} = useGridCell(props, state, ref);
48
48
 
49
49
  let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';
50
50
  let {pressProps} = usePress({
51
51
  // Disabled for allowsResizing because if resizing is allowed, a menu trigger is added to the column header.
52
- isDisabled: !allowsSorting || isSelectionCellDisabled, // || allowsResizing,
52
+ isDisabled: !allowsSorting || isSelectionCellDisabled || allowsResizing,
53
53
  onPress() {
54
54
  state.sort(node.key);
55
55
  }