@react-spectrum/table 3.17.11 → 3.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/dist/import.mjs +2 -6
  2. package/dist/main.js +8 -12
  3. package/dist/main.js.map +1 -1
  4. package/dist/module.js +2 -6
  5. package/dist/module.js.map +1 -1
  6. package/dist/types/src/index.d.ts +3 -0
  7. package/package.json +14 -52
  8. package/src/index.ts +3 -18
  9. package/dist/DragPreview.main.js +0 -54
  10. package/dist/DragPreview.main.js.map +0 -1
  11. package/dist/DragPreview.mjs +0 -49
  12. package/dist/DragPreview.module.js +0 -49
  13. package/dist/DragPreview.module.js.map +0 -1
  14. package/dist/InsertionIndicator.main.js +0 -64
  15. package/dist/InsertionIndicator.main.js.map +0 -1
  16. package/dist/InsertionIndicator.mjs +0 -59
  17. package/dist/InsertionIndicator.module.js +0 -59
  18. package/dist/InsertionIndicator.module.js.map +0 -1
  19. package/dist/Nubbin.main.js +0 -62
  20. package/dist/Nubbin.main.js.map +0 -1
  21. package/dist/Nubbin.mjs +0 -53
  22. package/dist/Nubbin.module.js +0 -53
  23. package/dist/Nubbin.module.js.map +0 -1
  24. package/dist/Resizer.main.js +0 -150
  25. package/dist/Resizer.main.js.map +0 -1
  26. package/dist/Resizer.mjs +0 -144
  27. package/dist/Resizer.module.js +0 -144
  28. package/dist/Resizer.module.js.map +0 -1
  29. package/dist/RootDropIndicator.main.js +0 -57
  30. package/dist/RootDropIndicator.main.js.map +0 -1
  31. package/dist/RootDropIndicator.mjs +0 -48
  32. package/dist/RootDropIndicator.module.js +0 -48
  33. package/dist/RootDropIndicator.module.js.map +0 -1
  34. package/dist/TableView.main.js +0 -49
  35. package/dist/TableView.main.js.map +0 -1
  36. package/dist/TableView.mjs +0 -40
  37. package/dist/TableView.module.js +0 -40
  38. package/dist/TableView.module.js.map +0 -1
  39. package/dist/TableViewBase.main.js +0 -1240
  40. package/dist/TableViewBase.main.js.map +0 -1
  41. package/dist/TableViewBase.mjs +0 -1233
  42. package/dist/TableViewBase.module.js +0 -1233
  43. package/dist/TableViewBase.module.js.map +0 -1
  44. package/dist/TableViewLayout.main.js +0 -101
  45. package/dist/TableViewLayout.main.js.map +0 -1
  46. package/dist/TableViewLayout.mjs +0 -96
  47. package/dist/TableViewLayout.module.js +0 -96
  48. package/dist/TableViewLayout.module.js.map +0 -1
  49. package/dist/TableViewWrapper.main.js +0 -45
  50. package/dist/TableViewWrapper.main.js.map +0 -1
  51. package/dist/TableViewWrapper.mjs +0 -36
  52. package/dist/TableViewWrapper.module.js +0 -36
  53. package/dist/TableViewWrapper.module.js.map +0 -1
  54. package/dist/TreeGridTableView.main.js +0 -49
  55. package/dist/TreeGridTableView.main.js.map +0 -1
  56. package/dist/TreeGridTableView.mjs +0 -40
  57. package/dist/TreeGridTableView.module.js +0 -40
  58. package/dist/TreeGridTableView.module.js.map +0 -1
  59. package/dist/ar-AE.main.js +0 -14
  60. package/dist/ar-AE.main.js.map +0 -1
  61. package/dist/ar-AE.mjs +0 -16
  62. package/dist/ar-AE.module.js +0 -16
  63. package/dist/ar-AE.module.js.map +0 -1
  64. package/dist/bg-BG.main.js +0 -14
  65. package/dist/bg-BG.main.js.map +0 -1
  66. package/dist/bg-BG.mjs +0 -16
  67. package/dist/bg-BG.module.js +0 -16
  68. package/dist/bg-BG.module.js.map +0 -1
  69. package/dist/cs-CZ.main.js +0 -14
  70. package/dist/cs-CZ.main.js.map +0 -1
  71. package/dist/cs-CZ.mjs +0 -16
  72. package/dist/cs-CZ.module.js +0 -16
  73. package/dist/cs-CZ.module.js.map +0 -1
  74. package/dist/da-DK.main.js +0 -14
  75. package/dist/da-DK.main.js.map +0 -1
  76. package/dist/da-DK.mjs +0 -16
  77. package/dist/da-DK.module.js +0 -16
  78. package/dist/da-DK.module.js.map +0 -1
  79. package/dist/de-DE.main.js +0 -14
  80. package/dist/de-DE.main.js.map +0 -1
  81. package/dist/de-DE.mjs +0 -16
  82. package/dist/de-DE.module.js +0 -16
  83. package/dist/de-DE.module.js.map +0 -1
  84. package/dist/el-GR.main.js +0 -14
  85. package/dist/el-GR.main.js.map +0 -1
  86. package/dist/el-GR.mjs +0 -16
  87. package/dist/el-GR.module.js +0 -16
  88. package/dist/el-GR.module.js.map +0 -1
  89. package/dist/en-US.main.js +0 -14
  90. package/dist/en-US.main.js.map +0 -1
  91. package/dist/en-US.mjs +0 -16
  92. package/dist/en-US.module.js +0 -16
  93. package/dist/en-US.module.js.map +0 -1
  94. package/dist/es-ES.main.js +0 -14
  95. package/dist/es-ES.main.js.map +0 -1
  96. package/dist/es-ES.mjs +0 -16
  97. package/dist/es-ES.module.js +0 -16
  98. package/dist/es-ES.module.js.map +0 -1
  99. package/dist/et-EE.main.js +0 -14
  100. package/dist/et-EE.main.js.map +0 -1
  101. package/dist/et-EE.mjs +0 -16
  102. package/dist/et-EE.module.js +0 -16
  103. package/dist/et-EE.module.js.map +0 -1
  104. package/dist/fi-FI.main.js +0 -14
  105. package/dist/fi-FI.main.js.map +0 -1
  106. package/dist/fi-FI.mjs +0 -16
  107. package/dist/fi-FI.module.js +0 -16
  108. package/dist/fi-FI.module.js.map +0 -1
  109. package/dist/fr-FR.main.js +0 -14
  110. package/dist/fr-FR.main.js.map +0 -1
  111. package/dist/fr-FR.mjs +0 -16
  112. package/dist/fr-FR.module.js +0 -16
  113. package/dist/fr-FR.module.js.map +0 -1
  114. package/dist/he-IL.main.js +0 -14
  115. package/dist/he-IL.main.js.map +0 -1
  116. package/dist/he-IL.mjs +0 -16
  117. package/dist/he-IL.module.js +0 -16
  118. package/dist/he-IL.module.js.map +0 -1
  119. package/dist/hr-HR.main.js +0 -14
  120. package/dist/hr-HR.main.js.map +0 -1
  121. package/dist/hr-HR.mjs +0 -16
  122. package/dist/hr-HR.module.js +0 -16
  123. package/dist/hr-HR.module.js.map +0 -1
  124. package/dist/hu-HU.main.js +0 -14
  125. package/dist/hu-HU.main.js.map +0 -1
  126. package/dist/hu-HU.mjs +0 -16
  127. package/dist/hu-HU.module.js +0 -16
  128. package/dist/hu-HU.module.js.map +0 -1
  129. package/dist/intlStrings.main.js +0 -108
  130. package/dist/intlStrings.main.js.map +0 -1
  131. package/dist/intlStrings.mjs +0 -110
  132. package/dist/intlStrings.module.js +0 -110
  133. package/dist/intlStrings.module.js.map +0 -1
  134. package/dist/it-IT.main.js +0 -14
  135. package/dist/it-IT.main.js.map +0 -1
  136. package/dist/it-IT.mjs +0 -16
  137. package/dist/it-IT.module.js +0 -16
  138. package/dist/it-IT.module.js.map +0 -1
  139. package/dist/ja-JP.main.js +0 -14
  140. package/dist/ja-JP.main.js.map +0 -1
  141. package/dist/ja-JP.mjs +0 -16
  142. package/dist/ja-JP.module.js +0 -16
  143. package/dist/ja-JP.module.js.map +0 -1
  144. package/dist/ko-KR.main.js +0 -14
  145. package/dist/ko-KR.main.js.map +0 -1
  146. package/dist/ko-KR.mjs +0 -16
  147. package/dist/ko-KR.module.js +0 -16
  148. package/dist/ko-KR.module.js.map +0 -1
  149. package/dist/lt-LT.main.js +0 -14
  150. package/dist/lt-LT.main.js.map +0 -1
  151. package/dist/lt-LT.mjs +0 -16
  152. package/dist/lt-LT.module.js +0 -16
  153. package/dist/lt-LT.module.js.map +0 -1
  154. package/dist/lv-LV.main.js +0 -14
  155. package/dist/lv-LV.main.js.map +0 -1
  156. package/dist/lv-LV.mjs +0 -16
  157. package/dist/lv-LV.module.js +0 -16
  158. package/dist/lv-LV.module.js.map +0 -1
  159. package/dist/nb-NO.main.js +0 -14
  160. package/dist/nb-NO.main.js.map +0 -1
  161. package/dist/nb-NO.mjs +0 -16
  162. package/dist/nb-NO.module.js +0 -16
  163. package/dist/nb-NO.module.js.map +0 -1
  164. package/dist/nl-NL.main.js +0 -14
  165. package/dist/nl-NL.main.js.map +0 -1
  166. package/dist/nl-NL.mjs +0 -16
  167. package/dist/nl-NL.module.js +0 -16
  168. package/dist/nl-NL.module.js.map +0 -1
  169. package/dist/pl-PL.main.js +0 -14
  170. package/dist/pl-PL.main.js.map +0 -1
  171. package/dist/pl-PL.mjs +0 -16
  172. package/dist/pl-PL.module.js +0 -16
  173. package/dist/pl-PL.module.js.map +0 -1
  174. package/dist/pt-BR.main.js +0 -14
  175. package/dist/pt-BR.main.js.map +0 -1
  176. package/dist/pt-BR.mjs +0 -16
  177. package/dist/pt-BR.module.js +0 -16
  178. package/dist/pt-BR.module.js.map +0 -1
  179. package/dist/pt-PT.main.js +0 -14
  180. package/dist/pt-PT.main.js.map +0 -1
  181. package/dist/pt-PT.mjs +0 -16
  182. package/dist/pt-PT.module.js +0 -16
  183. package/dist/pt-PT.module.js.map +0 -1
  184. package/dist/ro-RO.main.js +0 -14
  185. package/dist/ro-RO.main.js.map +0 -1
  186. package/dist/ro-RO.mjs +0 -16
  187. package/dist/ro-RO.module.js +0 -16
  188. package/dist/ro-RO.module.js.map +0 -1
  189. package/dist/ru-RU.main.js +0 -14
  190. package/dist/ru-RU.main.js.map +0 -1
  191. package/dist/ru-RU.mjs +0 -16
  192. package/dist/ru-RU.module.js +0 -16
  193. package/dist/ru-RU.module.js.map +0 -1
  194. package/dist/sk-SK.main.js +0 -14
  195. package/dist/sk-SK.main.js.map +0 -1
  196. package/dist/sk-SK.mjs +0 -16
  197. package/dist/sk-SK.module.js +0 -16
  198. package/dist/sk-SK.module.js.map +0 -1
  199. package/dist/sl-SI.main.js +0 -14
  200. package/dist/sl-SI.main.js.map +0 -1
  201. package/dist/sl-SI.mjs +0 -16
  202. package/dist/sl-SI.module.js +0 -16
  203. package/dist/sl-SI.module.js.map +0 -1
  204. package/dist/sr-SP.main.js +0 -14
  205. package/dist/sr-SP.main.js.map +0 -1
  206. package/dist/sr-SP.mjs +0 -16
  207. package/dist/sr-SP.module.js +0 -16
  208. package/dist/sr-SP.module.js.map +0 -1
  209. package/dist/sv-SE.main.js +0 -14
  210. package/dist/sv-SE.main.js.map +0 -1
  211. package/dist/sv-SE.mjs +0 -16
  212. package/dist/sv-SE.module.js +0 -16
  213. package/dist/sv-SE.module.js.map +0 -1
  214. package/dist/table.0cdc494a.css +0 -992
  215. package/dist/table.0cdc494a.css.map +0 -1
  216. package/dist/table.11fc8462.css +0 -220
  217. package/dist/table.11fc8462.css.map +0 -1
  218. package/dist/table_css.main.js +0 -74
  219. package/dist/table_css.main.js.map +0 -1
  220. package/dist/table_css.mjs +0 -76
  221. package/dist/table_css.module.js +0 -76
  222. package/dist/table_css.module.js.map +0 -1
  223. package/dist/table_vars_css.main.js +0 -197
  224. package/dist/table_vars_css.main.js.map +0 -1
  225. package/dist/table_vars_css.mjs +0 -199
  226. package/dist/table_vars_css.module.js +0 -199
  227. package/dist/table_vars_css.module.js.map +0 -1
  228. package/dist/tr-TR.main.js +0 -14
  229. package/dist/tr-TR.main.js.map +0 -1
  230. package/dist/tr-TR.mjs +0 -16
  231. package/dist/tr-TR.module.js +0 -16
  232. package/dist/tr-TR.module.js.map +0 -1
  233. package/dist/types.d.ts +0 -85
  234. package/dist/types.d.ts.map +0 -1
  235. package/dist/uk-UA.main.js +0 -14
  236. package/dist/uk-UA.main.js.map +0 -1
  237. package/dist/uk-UA.mjs +0 -16
  238. package/dist/uk-UA.module.js +0 -16
  239. package/dist/uk-UA.module.js.map +0 -1
  240. package/dist/zh-CN.main.js +0 -14
  241. package/dist/zh-CN.main.js.map +0 -1
  242. package/dist/zh-CN.mjs +0 -16
  243. package/dist/zh-CN.module.js +0 -16
  244. package/dist/zh-CN.module.js.map +0 -1
  245. package/dist/zh-TW.main.js +0 -14
  246. package/dist/zh-TW.main.js.map +0 -1
  247. package/dist/zh-TW.mjs +0 -16
  248. package/dist/zh-TW.module.js +0 -16
  249. package/dist/zh-TW.module.js.map +0 -1
  250. package/src/DragPreview.tsx +0 -77
  251. package/src/InsertionIndicator.tsx +0 -62
  252. package/src/Nubbin.tsx +0 -28
  253. package/src/Resizer.tsx +0 -137
  254. package/src/RootDropIndicator.tsx +0 -40
  255. package/src/TableView.tsx +0 -44
  256. package/src/TableViewBase.tsx +0 -1570
  257. package/src/TableViewLayout.ts +0 -102
  258. package/src/TableViewWrapper.tsx +0 -103
  259. package/src/TreeGridTableView.tsx +0 -44
  260. package/src/cursors/Cur_MoveHorizontal_9_9.svg +0 -10
  261. package/src/cursors/Cur_MoveToLeft_9_9.svg +0 -10
  262. package/src/cursors/Cur_MoveToRight_9_9.svg +0 -10
  263. package/src/table.css +0 -235
@@ -1,1240 +0,0 @@
1
- var $c44674ca7612e997$exports = require("./InsertionIndicator.main.js");
2
- var $1a3d6ad53eb75d54$exports = require("./intlStrings.main.js");
3
- var $18b3deb5c431fa13$exports = require("./Nubbin.main.js");
4
- var $2877766f94c67a67$exports = require("./Resizer.main.js");
5
- var $4a98adf416b1ae5d$exports = require("./RootDropIndicator.main.js");
6
- var $f65d44d222cc509b$exports = require("./DragPreview.main.js");
7
- require("./table.0cdc494a.css");
8
- var $982885d0a34882ea$exports = require("./table_vars_css.main.js");
9
- require("./table.11fc8462.css");
10
- var $4afcd54cfd94dbb9$exports = require("./table_css.main.js");
11
- var $2b402d473779c595$exports = require("./TableViewLayout.main.js");
12
- var $idLTj$spectrumiconsuiArrowDownSmall = require("@spectrum-icons/ui/ArrowDownSmall");
13
- var $idLTj$reactspectrumcheckbox = require("@react-spectrum/checkbox");
14
- var $idLTj$spectrumiconsuiChevronDownMedium = require("@spectrum-icons/ui/ChevronDownMedium");
15
- var $idLTj$spectrumiconsuiChevronLeftMedium = require("@spectrum-icons/ui/ChevronLeftMedium");
16
- var $idLTj$spectrumiconsuiChevronRightMedium = require("@spectrum-icons/ui/ChevronRightMedium");
17
- var $idLTj$reactspectrumutils = require("@react-spectrum/utils");
18
- var $idLTj$reactariafocus = require("@react-aria/focus");
19
- var $idLTj$reactariautils = require("@react-aria/utils");
20
- var $idLTj$reactariainteractions = require("@react-aria/interactions");
21
- var $idLTj$reactspectrummenu = require("@react-spectrum/menu");
22
- var $idLTj$reactstatelyvirtualizer = require("@react-stately/virtualizer");
23
- var $idLTj$reactariavirtualizer = require("@react-aria/virtualizer");
24
- var $idLTj$spectrumiconsuiListGripper = require("@spectrum-icons/ui/ListGripper");
25
- var $idLTj$reactariaselection = require("@react-aria/selection");
26
- var $idLTj$reactspectrumprogress = require("@react-spectrum/progress");
27
- var $idLTj$react = require("react");
28
- var $idLTj$reactstatelytable = require("@react-stately/table");
29
- var $idLTj$reactspectrumtooltip = require("@react-spectrum/tooltip");
30
- var $idLTj$reactariabutton = require("@react-aria/button");
31
- var $idLTj$reactariai18n = require("@react-aria/i18n");
32
- var $idLTj$reactspectrumprovider = require("@react-spectrum/provider");
33
- var $idLTj$reactariatable = require("@react-aria/table");
34
- var $idLTj$reactariavisuallyhidden = require("@react-aria/visually-hidden");
35
-
36
-
37
- function $parcel$interopDefault(a) {
38
- return a && a.__esModule ? a.default : a;
39
- }
40
-
41
- function $parcel$export(e, n, v, s) {
42
- Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
43
- }
44
-
45
- $parcel$export(module.exports, "useTableContext", () => $e39c6de4eb69450d$export$3cb274deb6c2d854);
46
- $parcel$export(module.exports, "useVirtualizerContext", () => $e39c6de4eb69450d$export$3f8f74b6bfd2c5df);
47
- $parcel$export(module.exports, "TableViewBase", () => $e39c6de4eb69450d$export$517e02184d273d69);
48
- /*
49
- * Copyright 2023 Adobe. All rights reserved.
50
- * This file is licensed to you under the Apache License, Version 2.0 (the "License");
51
- * you may not use this file except in compliance with the License. You may obtain a copy
52
- * of the License at http://www.apache.org/licenses/LICENSE-2.0
53
- *
54
- * Unless required by applicable law or agreed to in writing, software distributed under
55
- * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
56
- * OF ANY KIND, either express or implied. See the License for the specific language
57
- * governing permissions and limitations under the License.
58
- */
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89
-
90
- const $e39c6de4eb69450d$var$DEFAULT_HEADER_HEIGHT = {
91
- medium: 34,
92
- large: 40
93
- };
94
- const $e39c6de4eb69450d$var$DEFAULT_HIDE_HEADER_CELL_WIDTH = {
95
- medium: 38,
96
- large: 46
97
- };
98
- const $e39c6de4eb69450d$var$ROW_HEIGHTS = {
99
- compact: {
100
- medium: 32,
101
- large: 40
102
- },
103
- regular: {
104
- medium: 40,
105
- large: 50
106
- },
107
- spacious: {
108
- medium: 48,
109
- large: 60
110
- }
111
- };
112
- const $e39c6de4eb69450d$var$SELECTION_CELL_DEFAULT_WIDTH = {
113
- medium: 38,
114
- large: 48
115
- };
116
- const $e39c6de4eb69450d$var$DRAG_BUTTON_CELL_DEFAULT_WIDTH = {
117
- medium: 16,
118
- large: 20
119
- };
120
- const $e39c6de4eb69450d$var$LEVEL_OFFSET_WIDTH = {
121
- medium: 16,
122
- large: 20
123
- };
124
- const $e39c6de4eb69450d$export$93e4b0b2cc49b648 = /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createContext(null);
125
- function $e39c6de4eb69450d$export$3cb274deb6c2d854() {
126
- return (0, $idLTj$react.useContext)($e39c6de4eb69450d$export$93e4b0b2cc49b648);
127
- }
128
- const $e39c6de4eb69450d$export$d288a7dd40372bc = /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createContext(null);
129
- function $e39c6de4eb69450d$export$3f8f74b6bfd2c5df() {
130
- return (0, $idLTj$react.useContext)($e39c6de4eb69450d$export$d288a7dd40372bc);
131
- }
132
- function $e39c6de4eb69450d$var$TableViewBase(props, ref) {
133
- var _dropState_target, _dragAndDropHooks_isVirtualDragging, _dragAndDropHooks_isVirtualDragging1;
134
- props = (0, $idLTj$reactspectrumprovider.useProviderProps)(props);
135
- let { isQuiet: isQuiet, onAction: onAction, onResizeStart: propsOnResizeStart, onResizeEnd: propsOnResizeEnd, dragAndDropHooks: dragAndDropHooks, state: state } = props;
136
- let isTableDraggable = !!(dragAndDropHooks === null || dragAndDropHooks === void 0 ? void 0 : dragAndDropHooks.useDraggableCollectionState);
137
- let isTableDroppable = !!(dragAndDropHooks === null || dragAndDropHooks === void 0 ? void 0 : dragAndDropHooks.useDroppableCollectionState);
138
- let dragHooksProvided = (0, $idLTj$react.useRef)(isTableDraggable);
139
- let dropHooksProvided = (0, $idLTj$react.useRef)(isTableDroppable);
140
- (0, $idLTj$react.useEffect)(()=>{
141
- if (process.env.NODE_ENV === 'production') return;
142
- if (dragHooksProvided.current !== isTableDraggable) console.warn('Drag hooks were provided during one render, but not another. This should be avoided as it may produce unexpected behavior.');
143
- if (dropHooksProvided.current !== isTableDroppable) console.warn('Drop hooks were provided during one render, but not another. This should be avoided as it may produce unexpected behavior.');
144
- if ('expandedKeys' in state && (isTableDraggable || isTableDroppable)) console.warn('Drag and drop is not yet fully supported with expandable rows and may produce unexpected results.');
145
- }, [
146
- isTableDraggable,
147
- isTableDroppable,
148
- state
149
- ]);
150
- let { styleProps: styleProps } = (0, $idLTj$reactspectrumutils.useStyleProps)(props);
151
- let { scale: scale } = (0, $idLTj$reactspectrumprovider.useProvider)();
152
- // Starts when the user selects resize from the menu, ends when resizing ends
153
- // used to control the visibility of the resizer Nubbin
154
- let [isInResizeMode, setIsInResizeMode] = (0, $idLTj$react.useState)(false);
155
- // Starts when the resizer is actually moved
156
- // entering resizing/exiting resizing doesn't trigger a render
157
- // with table layout, so we need to track it here
158
- let [, setIsResizing] = (0, $idLTj$react.useState)(false);
159
- let domRef = (0, $idLTj$reactspectrumutils.useDOMRef)(ref);
160
- let headerRef = (0, $idLTj$react.useRef)(null);
161
- let bodyRef = (0, $idLTj$react.useRef)(null);
162
- let density = props.density || 'regular';
163
- let layout = (0, $idLTj$react.useMemo)(()=>new (0, $2b402d473779c595$exports.TableViewLayout)({
164
- // If props.rowHeight is auto, then use estimated heights based on scale, otherwise use fixed heights.
165
- rowHeight: props.overflowMode === 'wrap' ? undefined : $e39c6de4eb69450d$var$ROW_HEIGHTS[density][scale],
166
- estimatedRowHeight: props.overflowMode === 'wrap' ? $e39c6de4eb69450d$var$ROW_HEIGHTS[density][scale] : undefined,
167
- headingHeight: props.overflowMode === 'wrap' ? undefined : $e39c6de4eb69450d$var$DEFAULT_HEADER_HEIGHT[scale],
168
- estimatedHeadingHeight: props.overflowMode === 'wrap' ? $e39c6de4eb69450d$var$DEFAULT_HEADER_HEIGHT[scale] : undefined
169
- }), // don't recompute when state.collection changes, only used for initial value
170
- [
171
- props.overflowMode,
172
- scale,
173
- density
174
- ]);
175
- let dragState = null;
176
- let preview = (0, $idLTj$react.useRef)(null);
177
- if (isTableDraggable && dragAndDropHooks) {
178
- dragState = dragAndDropHooks.useDraggableCollectionState({
179
- collection: state.collection,
180
- selectionManager: state.selectionManager,
181
- preview: preview
182
- });
183
- dragAndDropHooks.useDraggableCollection({}, dragState, domRef);
184
- }
185
- let DragPreview = dragAndDropHooks === null || dragAndDropHooks === void 0 ? void 0 : dragAndDropHooks.DragPreview;
186
- let dropState = null;
187
- let droppableCollection = null;
188
- let isRootDropTarget = false;
189
- if (isTableDroppable && dragAndDropHooks) {
190
- dropState = dragAndDropHooks.useDroppableCollectionState({
191
- collection: state.collection,
192
- selectionManager: state.selectionManager
193
- });
194
- droppableCollection = dragAndDropHooks.useDroppableCollection({
195
- keyboardDelegate: new (0, $idLTj$reactariaselection.ListKeyboardDelegate)({
196
- collection: state.collection,
197
- disabledKeys: state.selectionManager.disabledKeys,
198
- ref: domRef,
199
- layoutDelegate: layout
200
- }),
201
- dropTargetDelegate: layout
202
- }, dropState, domRef);
203
- isRootDropTarget = dropState.isDropTarget({
204
- type: 'root'
205
- });
206
- }
207
- let { gridProps: gridProps } = (0, $idLTj$reactariatable.useTable)({
208
- ...props,
209
- isVirtualized: true,
210
- layoutDelegate: layout,
211
- onRowAction: onAction,
212
- scrollRef: bodyRef
213
- }, state, domRef);
214
- let [headerMenuOpen, setHeaderMenuOpen] = (0, $idLTj$react.useState)(false);
215
- let [headerRowHovered, setHeaderRowHovered] = (0, $idLTj$react.useState)(false);
216
- // This overrides collection view's renderWrapper to support DOM hierarchy.
217
- let renderWrapper = (0, $idLTj$react.useCallback)((parent, reusableView, children, renderChildren)=>{
218
- var _parent_layoutInfo;
219
- if (reusableView.viewType === 'rowgroup') return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableRowGroup, {
220
- key: reusableView.key,
221
- layoutInfo: reusableView.layoutInfo,
222
- parent: (_parent_layoutInfo = parent === null || parent === void 0 ? void 0 : parent.layoutInfo) !== null && _parent_layoutInfo !== void 0 ? _parent_layoutInfo : null,
223
- // Override the default role="rowgroup" with role="presentation",
224
- // in favor or adding role="rowgroup" to the ScrollView with
225
- // ref={bodyRef} in the TableVirtualizer below.
226
- role: "presentation"
227
- }, renderChildren(children));
228
- var _parent_layoutInfo1;
229
- if (reusableView.viewType === 'header') return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableHeader, {
230
- key: reusableView.key,
231
- layoutInfo: reusableView.layoutInfo,
232
- parent: (_parent_layoutInfo1 = parent === null || parent === void 0 ? void 0 : parent.layoutInfo) !== null && _parent_layoutInfo1 !== void 0 ? _parent_layoutInfo1 : null
233
- }, renderChildren(children));
234
- var _parent_layoutInfo2;
235
- if (reusableView.viewType === 'row') return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableRow, {
236
- key: reusableView.key,
237
- item: reusableView.content,
238
- layoutInfo: reusableView.layoutInfo,
239
- parent: (_parent_layoutInfo2 = parent === null || parent === void 0 ? void 0 : parent.layoutInfo) !== null && _parent_layoutInfo2 !== void 0 ? _parent_layoutInfo2 : null
240
- }, renderChildren(children));
241
- var _parent_layoutInfo3;
242
- if (reusableView.viewType === 'headerrow') return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableHeaderRow, {
243
- onHoverChange: setHeaderRowHovered,
244
- key: reusableView.key,
245
- layoutInfo: reusableView.layoutInfo,
246
- parent: (_parent_layoutInfo3 = parent === null || parent === void 0 ? void 0 : parent.layoutInfo) !== null && _parent_layoutInfo3 !== void 0 ? _parent_layoutInfo3 : null,
247
- item: reusableView.content
248
- }, renderChildren(children));
249
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableCellWrapper, {
250
- key: reusableView.key,
251
- layoutInfo: reusableView.layoutInfo,
252
- virtualizer: reusableView.virtualizer,
253
- parent: parent
254
- }, reusableView.rendered);
255
- }, []);
256
- let renderView = (0, $idLTj$react.useCallback)((type, item)=>{
257
- switch(type){
258
- case 'header':
259
- case 'rowgroup':
260
- case 'section':
261
- case 'row':
262
- case 'headerrow':
263
- return null;
264
- case 'cell':
265
- if (item.props.isSelectionCell) return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableCheckboxCell, {
266
- cell: item
267
- });
268
- if (item.props.isDragButtonCell) return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableDragCell, {
269
- cell: item
270
- });
271
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableCell, {
272
- cell: item
273
- });
274
- case 'placeholder':
275
- // TODO: move to react-aria?
276
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
277
- role: "gridcell",
278
- "aria-colindex": item.index + 1,
279
- "aria-colspan": item.colSpan != null && item.colSpan > 1 ? item.colSpan : undefined
280
- });
281
- case 'column':
282
- if (item.props.isSelectionCell) return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableSelectAllCell, {
283
- column: item
284
- });
285
- if (item.props.isDragButtonCell) return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableDragHeaderCell, {
286
- column: item
287
- });
288
- // TODO: consider this case, what if we have hidden headers and a empty table
289
- if (item.props.hideHeader) return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrumtooltip.TooltipTrigger), {
290
- placement: "top",
291
- trigger: "focus"
292
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableColumnHeader, {
293
- column: item
294
- }), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrumtooltip.Tooltip), {
295
- placement: "top"
296
- }, item.rendered));
297
- if (item.props.allowsResizing && !item.hasChildNodes) return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$ResizableTableColumnHeader, {
298
- column: item
299
- });
300
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableColumnHeader, {
301
- column: item
302
- });
303
- case 'loader':
304
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$LoadingState, null);
305
- case 'empty':
306
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$EmptyState, null);
307
- }
308
- return null;
309
- }, []);
310
- let [isVerticalScrollbarVisible, setVerticalScollbarVisible] = (0, $idLTj$react.useState)(false);
311
- let [isHorizontalScrollbarVisible, setHorizontalScollbarVisible] = (0, $idLTj$react.useState)(false);
312
- let viewport = (0, $idLTj$react.useRef)({
313
- x: 0,
314
- y: 0,
315
- width: 0,
316
- height: 0
317
- });
318
- let onVisibleRectChange = (0, $idLTj$react.useCallback)((e)=>{
319
- if (viewport.current.width === e.width && viewport.current.height === e.height) return;
320
- viewport.current = e;
321
- if (bodyRef.current) {
322
- setVerticalScollbarVisible(bodyRef.current.clientWidth + 2 < bodyRef.current.offsetWidth);
323
- setHorizontalScollbarVisible(bodyRef.current.clientHeight + 2 < bodyRef.current.offsetHeight);
324
- }
325
- }, []);
326
- let { isFocusVisible: isFocusVisible, focusProps: focusProps } = (0, $idLTj$reactariafocus.useFocusRing)();
327
- let isEmpty = state.collection.size === 0;
328
- let onFocusedResizer = ()=>{
329
- if (bodyRef.current && headerRef.current) bodyRef.current.scrollLeft = headerRef.current.scrollLeft;
330
- };
331
- let onResizeStart = (0, $idLTj$react.useCallback)((widths)=>{
332
- setIsResizing(true);
333
- propsOnResizeStart === null || propsOnResizeStart === void 0 ? void 0 : propsOnResizeStart(widths);
334
- }, [
335
- setIsResizing,
336
- propsOnResizeStart
337
- ]);
338
- let onResizeEnd = (0, $idLTj$react.useCallback)((widths)=>{
339
- setIsInResizeMode(false);
340
- setIsResizing(false);
341
- propsOnResizeEnd === null || propsOnResizeEnd === void 0 ? void 0 : propsOnResizeEnd(widths);
342
- }, [
343
- propsOnResizeEnd,
344
- setIsInResizeMode,
345
- setIsResizing
346
- ]);
347
- let focusedKey = state.selectionManager.focusedKey;
348
- let dropTargetKey = null;
349
- if ((dropState === null || dropState === void 0 ? void 0 : (_dropState_target = dropState.target) === null || _dropState_target === void 0 ? void 0 : _dropState_target.type) === 'item') {
350
- dropTargetKey = dropState.target.key;
351
- if (dropState.target.dropPosition === 'before' && dropTargetKey !== state.collection.getFirstKey()) // Normalize to the "after" drop position since we only render those in the DOM.
352
- // The exception to this is for the first row in the table, where we also render the "before" position.
353
- dropTargetKey = state.collection.getKeyBefore(dropTargetKey);
354
- }
355
- let persistedKeys = (0, $idLTj$react.useMemo)(()=>{
356
- return new Set([
357
- focusedKey,
358
- dropTargetKey
359
- ].filter((k)=>k !== null));
360
- }, [
361
- focusedKey,
362
- dropTargetKey
363
- ]);
364
- let mergedProps = (0, $idLTj$reactariautils.mergeProps)(isTableDroppable ? droppableCollection === null || droppableCollection === void 0 ? void 0 : droppableCollection.collectionProps : null, gridProps, focusProps);
365
- if (dragAndDropHooks === null || dragAndDropHooks === void 0 ? void 0 : (_dragAndDropHooks_isVirtualDragging = dragAndDropHooks.isVirtualDragging) === null || _dragAndDropHooks_isVirtualDragging === void 0 ? void 0 : _dragAndDropHooks_isVirtualDragging.call(dragAndDropHooks)) mergedProps.tabIndex = undefined;
366
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$export$93e4b0b2cc49b648.Provider, {
367
- value: {
368
- state: state,
369
- dragState: dragState,
370
- dropState: dropState,
371
- dragAndDropHooks: dragAndDropHooks,
372
- isTableDraggable: isTableDraggable,
373
- isTableDroppable: isTableDroppable,
374
- layout: layout,
375
- onResizeStart: onResizeStart,
376
- onResize: props.onResize,
377
- onResizeEnd: onResizeEnd,
378
- headerRowHovered: headerRowHovered,
379
- isInResizeMode: isInResizeMode,
380
- setIsInResizeMode: setIsInResizeMode,
381
- isEmpty: isEmpty,
382
- onFocusedResizer: onFocusedResizer,
383
- headerMenuOpen: headerMenuOpen,
384
- setHeaderMenuOpen: setHeaderMenuOpen,
385
- renderEmptyState: props.renderEmptyState
386
- }
387
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableVirtualizer, {
388
- ...mergedProps,
389
- ...styleProps,
390
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table', `spectrum-Table--${density}`, {
391
- 'spectrum-Table--quiet': isQuiet,
392
- 'spectrum-Table--wrap': props.overflowMode === 'wrap',
393
- 'spectrum-Table--loadingMore': state.collection.body.props.loadingState === 'loadingMore',
394
- 'spectrum-Table--isVerticalScrollbarVisible': isVerticalScrollbarVisible,
395
- 'spectrum-Table--isHorizontalScrollbarVisible': isHorizontalScrollbarVisible
396
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table'), styleProps.className),
397
- tableState: state,
398
- layout: layout,
399
- collection: state.collection,
400
- persistedKeys: persistedKeys,
401
- renderView: renderView,
402
- renderWrapper: renderWrapper,
403
- onVisibleRectChange: onVisibleRectChange,
404
- domRef: domRef,
405
- headerRef: headerRef,
406
- bodyRef: bodyRef,
407
- isFocusVisible: isFocusVisible,
408
- isVirtualDragging: (dragAndDropHooks === null || dragAndDropHooks === void 0 ? void 0 : (_dragAndDropHooks_isVirtualDragging1 = dragAndDropHooks.isVirtualDragging) === null || _dragAndDropHooks_isVirtualDragging1 === void 0 ? void 0 : _dragAndDropHooks_isVirtualDragging1.call(dragAndDropHooks)) || false,
409
- isRootDropTarget: isRootDropTarget
410
- }), DragPreview && isTableDraggable && dragAndDropHooks && dragState && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement(DragPreview, {
411
- ref: preview
412
- }, ()=>{
413
- if (dragState.draggedKey == null) return null;
414
- if (dragAndDropHooks.renderPreview) return dragAndDropHooks.renderPreview(dragState.draggingKeys, dragState.draggedKey);
415
- let itemCount = dragState.draggingKeys.size;
416
- let maxWidth = bodyRef.current.getBoundingClientRect().width;
417
- let height = $e39c6de4eb69450d$var$ROW_HEIGHTS[density][scale];
418
- let itemText = state.collection.getTextValue(dragState.draggedKey);
419
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $f65d44d222cc509b$exports.DragPreview), {
420
- itemText: itemText,
421
- itemCount: itemCount,
422
- height: height,
423
- maxWidth: maxWidth
424
- });
425
- }));
426
- }
427
- // This is a custom Virtualizer that also has a header that syncs its scroll position with the body.
428
- function $e39c6de4eb69450d$var$TableVirtualizer(props) {
429
- var _layout_getLayoutInfo;
430
- let { tableState: tableState, layout: layout, collection: collection, persistedKeys: persistedKeys, renderView: renderView, renderWrapper: renderWrapper, domRef: domRef, bodyRef: bodyRef, headerRef: headerRef, onVisibleRectChange: onVisibleRectChangeProp, isFocusVisible: isFocusVisible, isVirtualDragging: isVirtualDragging, isRootDropTarget: isRootDropTarget, ...otherProps } = props;
431
- let { direction: direction } = (0, $idLTj$reactariai18n.useLocale)();
432
- let loadingState = collection.body.props.loadingState;
433
- let isLoading = loadingState === 'loading' || loadingState === 'loadingMore';
434
- let onLoadMore = collection.body.props.onLoadMore;
435
- let [tableWidth, setTableWidth] = (0, $idLTj$react.useState)(0);
436
- let { scale: scale } = (0, $idLTj$reactspectrumprovider.useProvider)();
437
- const getDefaultWidth = (0, $idLTj$react.useCallback)(({ props: { hideHeader: hideHeader, isSelectionCell: isSelectionCell, showDivider: showDivider, isDragButtonCell: isDragButtonCell } })=>{
438
- if (hideHeader) {
439
- let width = $e39c6de4eb69450d$var$DEFAULT_HIDE_HEADER_CELL_WIDTH[scale];
440
- return showDivider ? width + 1 : width;
441
- } else if (isSelectionCell) return $e39c6de4eb69450d$var$SELECTION_CELL_DEFAULT_WIDTH[scale];
442
- else if (isDragButtonCell) return $e39c6de4eb69450d$var$DRAG_BUTTON_CELL_DEFAULT_WIDTH[scale];
443
- }, [
444
- scale
445
- ]);
446
- const getDefaultMinWidth = (0, $idLTj$react.useCallback)(({ props: { hideHeader: hideHeader, isSelectionCell: isSelectionCell, showDivider: showDivider, isDragButtonCell: isDragButtonCell } })=>{
447
- if (hideHeader) {
448
- let width = $e39c6de4eb69450d$var$DEFAULT_HIDE_HEADER_CELL_WIDTH[scale];
449
- return showDivider ? width + 1 : width;
450
- } else if (isSelectionCell) return $e39c6de4eb69450d$var$SELECTION_CELL_DEFAULT_WIDTH[scale];
451
- else if (isDragButtonCell) return $e39c6de4eb69450d$var$DRAG_BUTTON_CELL_DEFAULT_WIDTH[scale];
452
- return 75;
453
- }, [
454
- scale
455
- ]);
456
- let columnResizeState = (0, $idLTj$reactstatelytable.useTableColumnResizeState)({
457
- tableWidth: tableWidth,
458
- getDefaultWidth: getDefaultWidth,
459
- getDefaultMinWidth: getDefaultMinWidth
460
- }, tableState);
461
- let state = (0, $idLTj$reactstatelyvirtualizer.useVirtualizerState)({
462
- layout: layout,
463
- collection: collection,
464
- renderView: renderView,
465
- onVisibleRectChange (rect) {
466
- if (bodyRef.current) {
467
- bodyRef.current.scrollTop = rect.y;
468
- (0, $idLTj$reactariavirtualizer.setScrollLeft)(bodyRef.current, direction, rect.x);
469
- }
470
- },
471
- persistedKeys: persistedKeys,
472
- layoutOptions: (0, $idLTj$react.useMemo)(()=>({
473
- columnWidths: columnResizeState.columnWidths
474
- }), [
475
- columnResizeState.columnWidths
476
- ])
477
- });
478
- (0, $idLTj$reactariautils.useLoadMore)({
479
- isLoading: isLoading,
480
- onLoadMore: onLoadMore,
481
- scrollOffset: 1
482
- }, bodyRef);
483
- let onVisibleRectChange = (0, $idLTj$react.useCallback)((rect)=>{
484
- state.setVisibleRect(rect);
485
- }, [
486
- state
487
- ]);
488
- let onVisibleRectChangeMemo = (0, $idLTj$react.useCallback)((rect)=>{
489
- setTableWidth(rect.width);
490
- onVisibleRectChange(rect);
491
- onVisibleRectChangeProp(rect);
492
- }, [
493
- onVisibleRectChange,
494
- onVisibleRectChangeProp
495
- ]);
496
- // this effect runs whenever the contentSize changes, it doesn't matter what the content size is
497
- // only that it changes in a resize, and when that happens, we want to sync the body to the
498
- // header scroll position
499
- (0, $idLTj$react.useEffect)(()=>{
500
- if ((0, $idLTj$reactariainteractions.getInteractionModality)() === 'keyboard' && headerRef.current && (0, $idLTj$reactariautils.isFocusWithin)(headerRef.current) && bodyRef.current) {
501
- let activeElement = (0, $idLTj$reactariautils.getActiveElement)();
502
- (0, $idLTj$reactariautils.scrollIntoView)(headerRef.current, activeElement);
503
- (0, $idLTj$reactariautils.scrollIntoViewport)(activeElement, {
504
- containingElement: domRef.current
505
- });
506
- bodyRef.current.scrollLeft = headerRef.current.scrollLeft;
507
- }
508
- }, [
509
- state.contentSize,
510
- headerRef,
511
- bodyRef,
512
- domRef
513
- ]);
514
- let headerHeight = ((_layout_getLayoutInfo = layout.getLayoutInfo('header')) === null || _layout_getLayoutInfo === void 0 ? void 0 : _layout_getLayoutInfo.rect.height) || 0;
515
- // Sync the scroll position from the table body to the header container.
516
- let onScroll = (0, $idLTj$react.useCallback)(()=>{
517
- if (headerRef.current && bodyRef.current) headerRef.current.scrollLeft = bodyRef.current.scrollLeft;
518
- }, [
519
- bodyRef,
520
- headerRef
521
- ]);
522
- let resizerPosition = columnResizeState.resizingColumn != null ? layout.getLayoutInfo(columnResizeState.resizingColumn).rect.maxX - 2 : 0;
523
- let resizerAtEdge = resizerPosition > Math.max(state.virtualizer.contentSize.width, state.virtualizer.visibleRect.width) - 3;
524
- // this should be fine, every movement of the resizer causes a rerender
525
- // scrolling can cause it to lag for a moment, but it's always updated
526
- let resizerInVisibleRegion = resizerPosition < state.virtualizer.visibleRect.maxX;
527
- let shouldHardCornerResizeCorner = resizerAtEdge && resizerInVisibleRegion;
528
- // minimize re-render caused on Resizers by memoing this
529
- let resizingColumnWidth = columnResizeState.resizingColumn != null ? columnResizeState.getColumnWidth(columnResizeState.resizingColumn) : 0;
530
- let resizingColumn = (0, $idLTj$react.useMemo)(()=>({
531
- width: resizingColumnWidth,
532
- key: columnResizeState.resizingColumn
533
- }), [
534
- resizingColumnWidth,
535
- columnResizeState.resizingColumn
536
- ]);
537
- if (isVirtualDragging) otherProps.tabIndex = undefined;
538
- let firstColumn = collection.columns[0];
539
- let scrollPadding = 0;
540
- if (firstColumn.props.isSelectionCell || firstColumn.props.isDragButtonCell) scrollPadding = columnResizeState.getColumnWidth(firstColumn.key);
541
- let visibleViews = $e39c6de4eb69450d$var$renderChildren(null, state.visibleViews, renderWrapper);
542
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$export$d288a7dd40372bc.Provider, {
543
- value: resizingColumn
544
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusScope), null, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
545
- ...otherProps,
546
- ref: domRef
547
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
548
- role: "presentation",
549
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headWrapper'),
550
- style: {
551
- height: headerHeight,
552
- overflow: 'hidden',
553
- position: 'relative',
554
- willChange: state.isScrolling ? 'scroll-position' : undefined,
555
- scrollPaddingInlineStart: scrollPadding
556
- },
557
- ref: headerRef
558
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $2877766f94c67a67$exports.ResizeStateContext).Provider, {
559
- value: columnResizeState
560
- }, visibleViews[0])), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariavirtualizer.ScrollView), {
561
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-body', {
562
- 'focus-ring': isFocusVisible,
563
- 'spectrum-Table-body--resizerAtTableEdge': shouldHardCornerResizeCorner
564
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-body', {
565
- 'react-spectrum-Table-body--dropTarget': !!isRootDropTarget
566
- })),
567
- // Firefox and Chrome make generic elements using CSS overflow 'scroll' or 'auto' tabbable,
568
- // including them within the accessibility tree, which breaks the table structure in Firefox.
569
- // Using tabIndex={-1} prevents the ScrollView from being tabbable, and using role="rowgroup"
570
- // here and role="presentation" on the table body content fixes the table structure.
571
- role: "rowgroup",
572
- tabIndex: isVirtualDragging ? undefined : -1,
573
- style: {
574
- flex: 1,
575
- scrollPaddingInlineStart: scrollPadding
576
- },
577
- innerStyle: {
578
- overflow: 'visible'
579
- },
580
- ref: bodyRef,
581
- contentSize: state.contentSize,
582
- onVisibleRectChange: onVisibleRectChangeMemo,
583
- onScrollStart: state.startScrolling,
584
- onScrollEnd: state.endScrolling,
585
- onScroll: onScroll
586
- }, visibleViews[1], /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
587
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-bodyResizeIndicator'),
588
- style: {
589
- [direction === 'ltr' ? 'left' : 'right']: `${resizerPosition}px`,
590
- height: `${Math.max(state.virtualizer.contentSize.height, state.virtualizer.visibleRect.height)}px`,
591
- display: columnResizeState.resizingColumn ? 'block' : 'none'
592
- }
593
- })))));
594
- }
595
- function $e39c6de4eb69450d$var$renderChildren(parent, views, renderWrapper) {
596
- return views.map((view)=>{
597
- return renderWrapper(parent, view, view.children ? Array.from(view.children) : [], (childViews)=>$e39c6de4eb69450d$var$renderChildren(view, childViews, renderWrapper));
598
- });
599
- }
600
- function $e39c6de4eb69450d$var$useStyle(layoutInfo, parent) {
601
- let { direction: direction } = (0, $idLTj$reactariai18n.useLocale)();
602
- let style = (0, $idLTj$reactariavirtualizer.layoutInfoToStyle)(layoutInfo, direction, parent);
603
- if (style.overflow === 'hidden') style.overflow = 'visible'; // needed to support position: sticky
604
- return style;
605
- }
606
- function $e39c6de4eb69450d$var$TableHeader({ children: children, layoutInfo: layoutInfo, parent: parent, ...otherProps }) {
607
- let { rowGroupProps: rowGroupProps } = (0, $idLTj$reactariatable.useTableRowGroup)();
608
- let style = $e39c6de4eb69450d$var$useStyle(layoutInfo, parent);
609
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
610
- ...rowGroupProps,
611
- ...otherProps,
612
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-head'),
613
- style: style
614
- }, children);
615
- }
616
- function $e39c6de4eb69450d$var$TableColumnHeader(props) {
617
- var _state_sortDescriptor, _state_sortDescriptor1, _state_sortDescriptor2, _state_sortDescriptor3;
618
- let { column: column } = props;
619
- let ref = (0, $idLTj$react.useRef)(null);
620
- let { state: state, isEmpty: isEmpty } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
621
- let { pressProps: pressProps, isPressed: isPressed } = (0, $idLTj$reactariainteractions.usePress)({
622
- isDisabled: isEmpty
623
- });
624
- let columnProps = column.props;
625
- (0, $idLTj$react.useEffect)(()=>{
626
- if (column.hasChildNodes && columnProps.allowsResizing && process.env.NODE_ENV !== 'production') console.warn(`Column key: ${column.key}. Columns with child columns don't allow resizing.`);
627
- }, [
628
- column.hasChildNodes,
629
- column.key,
630
- columnProps.allowsResizing
631
- ]);
632
- let { columnHeaderProps: columnHeaderProps } = (0, $idLTj$reactariatable.useTableColumnHeader)({
633
- node: column,
634
- isVirtualized: true
635
- }, state, ref);
636
- let { hoverProps: hoverProps, isHovered: isHovered } = (0, $idLTj$reactariainteractions.useHover)({
637
- ...props,
638
- isDisabled: isEmpty
639
- });
640
- const allProps = [
641
- columnHeaderProps,
642
- hoverProps,
643
- pressProps
644
- ];
645
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
646
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
647
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
648
- ...(0, $idLTj$reactariautils.mergeProps)(...allProps),
649
- ref: ref,
650
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCell', {
651
- 'is-active': isPressed,
652
- 'is-sortable': columnProps.allowsSorting,
653
- 'is-sorted-desc': ((_state_sortDescriptor = state.sortDescriptor) === null || _state_sortDescriptor === void 0 ? void 0 : _state_sortDescriptor.column) === column.key && ((_state_sortDescriptor1 = state.sortDescriptor) === null || _state_sortDescriptor1 === void 0 ? void 0 : _state_sortDescriptor1.direction) === 'descending',
654
- 'is-sorted-asc': ((_state_sortDescriptor2 = state.sortDescriptor) === null || _state_sortDescriptor2 === void 0 ? void 0 : _state_sortDescriptor2.column) === column.key && ((_state_sortDescriptor3 = state.sortDescriptor) === null || _state_sortDescriptor3 === void 0 ? void 0 : _state_sortDescriptor3.direction) === 'ascending',
655
- 'is-hovered': isHovered,
656
- 'spectrum-Table-cell--hideHeader': columnProps.hideHeader
657
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-cell', {
658
- 'react-spectrum-Table-cell--alignCenter': columnProps.align === 'center' || column.colSpan > 1,
659
- 'react-spectrum-Table-cell--alignEnd': columnProps.align === 'end'
660
- }))
661
- }, columnProps.allowsSorting && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, ($parcel$interopDefault($idLTj$spectrumiconsuiArrowDownSmall))), {
662
- UNSAFE_className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-sortedIcon')
663
- }), columnProps.hideHeader ? /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariavisuallyhidden.VisuallyHidden), null, column.rendered) : /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
664
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCellContents')
665
- }, column.rendered)));
666
- }
667
- let $e39c6de4eb69450d$var$ForwardTableColumnHeaderButton = (props, ref)=>{
668
- let { focusProps: focusProps, alignment: alignment, ...otherProps } = props;
669
- let { isEmpty: isEmpty } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
670
- let domRef = (0, $idLTj$reactspectrumutils.useFocusableRef)(ref);
671
- let { buttonProps: buttonProps } = (0, $idLTj$reactariabutton.useButton)({
672
- ...otherProps,
673
- elementType: 'div',
674
- isDisabled: isEmpty
675
- }, domRef);
676
- let { hoverProps: hoverProps, isHovered: isHovered } = (0, $idLTj$reactariainteractions.useHover)({
677
- ...otherProps,
678
- isDisabled: isEmpty
679
- });
680
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
681
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCellContents', {
682
- 'is-hovered': isHovered
683
- }),
684
- ...hoverProps
685
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
686
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCellButton', {
687
- 'spectrum-Table-headCellButton--alignStart': alignment === 'start',
688
- 'spectrum-Table-headCellButton--alignCenter': alignment === 'center',
689
- 'spectrum-Table-headCellButton--alignEnd': alignment === 'end'
690
- }),
691
- ...(0, $idLTj$reactariautils.mergeProps)(buttonProps, focusProps),
692
- ref: domRef
693
- }, props.children));
694
- };
695
- let $e39c6de4eb69450d$var$TableColumnHeaderButton = /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).forwardRef($e39c6de4eb69450d$var$ForwardTableColumnHeaderButton);
696
- function $e39c6de4eb69450d$var$ResizableTableColumnHeader(props) {
697
- var _column_props, _state_sortDescriptor, _state_sortDescriptor1, _state_sortDescriptor2, _state_sortDescriptor3;
698
- let { column: column } = props;
699
- let ref = (0, $idLTj$react.useRef)(null);
700
- let triggerRef = (0, $idLTj$react.useRef)(null);
701
- let resizingRef = (0, $idLTj$react.useRef)(null);
702
- let { state: state, onResizeStart: onResizeStart, onResize: onResize, onResizeEnd: onResizeEnd, headerRowHovered: headerRowHovered, setIsInResizeMode: setIsInResizeMode, isEmpty: isEmpty, isInResizeMode: isInResizeMode, headerMenuOpen: headerMenuOpen, setHeaderMenuOpen: setHeaderMenuOpen } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
703
- let columnResizeState = (0, $idLTj$react.useContext)((0, $2877766f94c67a67$exports.ResizeStateContext));
704
- let stringFormatter = (0, $idLTj$reactariai18n.useLocalizedStringFormatter)((0, ($parcel$interopDefault($1a3d6ad53eb75d54$exports))), '@react-spectrum/table');
705
- let { pressProps: pressProps, isPressed: isPressed } = (0, $idLTj$reactariainteractions.usePress)({
706
- isDisabled: isEmpty
707
- });
708
- let { columnHeaderProps: columnHeaderProps } = (0, $idLTj$reactariatable.useTableColumnHeader)({
709
- node: column,
710
- isVirtualized: true
711
- }, state, ref);
712
- let { hoverProps: hoverProps, isHovered: isHovered } = (0, $idLTj$reactariainteractions.useHover)({
713
- ...props,
714
- isDisabled: isEmpty || headerMenuOpen
715
- });
716
- const allProps = [
717
- columnHeaderProps,
718
- pressProps,
719
- hoverProps
720
- ];
721
- let columnProps = column.props;
722
- let { isFocusVisible: isFocusVisible, focusProps: focusProps } = (0, $idLTj$reactariafocus.useFocusRing)();
723
- const onMenuSelect = (key)=>{
724
- switch(key){
725
- case 'sort-asc':
726
- state.sort(column.key, 'ascending');
727
- break;
728
- case 'sort-desc':
729
- state.sort(column.key, 'descending');
730
- break;
731
- case 'resize':
732
- columnResizeState.startResize(column.key);
733
- setIsInResizeMode(true);
734
- state.setKeyboardNavigationDisabled(true);
735
- break;
736
- }
737
- };
738
- let allowsSorting = (_column_props = column.props) === null || _column_props === void 0 ? void 0 : _column_props.allowsSorting;
739
- let items = (0, $idLTj$react.useMemo)(()=>{
740
- let options = [];
741
- if (allowsSorting) {
742
- options.push({
743
- label: stringFormatter.format('sortAscending'),
744
- id: 'sort-asc'
745
- });
746
- options.push({
747
- label: stringFormatter.format('sortDescending'),
748
- id: 'sort-desc'
749
- });
750
- }
751
- options.push({
752
- label: stringFormatter.format('resizeColumn'),
753
- id: 'resize'
754
- });
755
- return options;
756
- // eslint-disable-next-line react-hooks/exhaustive-deps
757
- }, [
758
- allowsSorting
759
- ]);
760
- let resizingColumn = columnResizeState.resizingColumn;
761
- let showResizer = !isEmpty && (headerRowHovered && (0, $idLTj$reactariainteractions.getInteractionModality)() !== 'keyboard' || resizingColumn != null);
762
- let alignment = 'start';
763
- let menuAlign = 'start';
764
- if (columnProps.align === 'center' || column.colSpan > 1) alignment = 'center';
765
- else if (columnProps.align === 'end') {
766
- alignment = 'end';
767
- menuAlign = 'end';
768
- }
769
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
770
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
771
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
772
- ...(0, $idLTj$reactariautils.mergeProps)(...allProps),
773
- ref: ref,
774
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCell', {
775
- 'is-active': isPressed,
776
- 'is-resizable': columnProps.allowsResizing,
777
- 'is-sortable': columnProps.allowsSorting,
778
- 'is-sorted-desc': ((_state_sortDescriptor = state.sortDescriptor) === null || _state_sortDescriptor === void 0 ? void 0 : _state_sortDescriptor.column) === column.key && ((_state_sortDescriptor1 = state.sortDescriptor) === null || _state_sortDescriptor1 === void 0 ? void 0 : _state_sortDescriptor1.direction) === 'descending',
779
- 'is-sorted-asc': ((_state_sortDescriptor2 = state.sortDescriptor) === null || _state_sortDescriptor2 === void 0 ? void 0 : _state_sortDescriptor2.column) === column.key && ((_state_sortDescriptor3 = state.sortDescriptor) === null || _state_sortDescriptor3 === void 0 ? void 0 : _state_sortDescriptor3.direction) === 'ascending',
780
- 'is-hovered': isHovered,
781
- 'focus-ring': isFocusVisible,
782
- 'spectrum-Table-cell--hideHeader': columnProps.hideHeader
783
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-cell', {
784
- 'react-spectrum-Table-cell--alignCenter': alignment === 'center',
785
- 'react-spectrum-Table-cell--alignEnd': alignment === 'end'
786
- }))
787
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrummenu.MenuTrigger), {
788
- onOpenChange: setHeaderMenuOpen,
789
- align: menuAlign
790
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableColumnHeaderButton, {
791
- alignment: alignment,
792
- ref: triggerRef,
793
- focusProps: focusProps
794
- }, columnProps.allowsSorting && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, ($parcel$interopDefault($idLTj$spectrumiconsuiArrowDownSmall))), {
795
- UNSAFE_className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-sortedIcon')
796
- }), columnProps.hideHeader ? /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariavisuallyhidden.VisuallyHidden), null, column.rendered) : /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
797
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headerCellText')
798
- }, column.rendered), columnProps.allowsResizing && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, ($parcel$interopDefault($idLTj$spectrumiconsuiChevronDownMedium))), {
799
- UNSAFE_className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-menuChevron')
800
- })), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrummenu.Menu), {
801
- onAction: onMenuSelect,
802
- minWidth: "size-2000",
803
- items: items
804
- }, (item)=>/*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrummenu.Item), null, item.label))), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $2877766f94c67a67$exports.Resizer), {
805
- ref: resizingRef,
806
- column: column,
807
- showResizer: showResizer,
808
- onResizeStart: onResizeStart,
809
- onResize: onResize,
810
- onResizeEnd: onResizeEnd,
811
- triggerRef: (0, $idLTj$reactspectrumutils.useUnwrapDOMRef)(triggerRef)
812
- }), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
813
- "aria-hidden": true,
814
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-colResizeIndicator', {
815
- 'spectrum-Table-colResizeIndicator--visible': resizingColumn != null,
816
- 'spectrum-Table-colResizeIndicator--resizing': resizingColumn === column.key
817
- })
818
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
819
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-colResizeNubbin', {
820
- 'spectrum-Table-colResizeNubbin--visible': isInResizeMode && resizingColumn === column.key
821
- })
822
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $18b3deb5c431fa13$exports.Nubbin), null)))));
823
- }
824
- function $e39c6de4eb69450d$var$TableSelectAllCell({ column: column }) {
825
- let ref = (0, $idLTj$react.useRef)(null);
826
- let { state: state } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
827
- let isSingleSelectionMode = state.selectionManager.selectionMode === 'single';
828
- let { columnHeaderProps: columnHeaderProps } = (0, $idLTj$reactariatable.useTableColumnHeader)({
829
- node: column,
830
- isVirtualized: true
831
- }, state, ref);
832
- let { checkboxProps: checkboxProps } = (0, $idLTj$reactariatable.useTableSelectAllCheckbox)(state);
833
- let { hoverProps: hoverProps, isHovered: isHovered } = (0, $idLTj$reactariainteractions.useHover)({});
834
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
835
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
836
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
837
- ...(0, $idLTj$reactariautils.mergeProps)(columnHeaderProps, hoverProps),
838
- ref: ref,
839
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCell', 'spectrum-Table-checkboxCell', {
840
- 'is-hovered': isHovered
841
- })
842
- }, /*
843
- In single selection mode, the checkbox will be hidden.
844
- So to avoid leaving a column header with no accessible content,
845
- we use a VisuallyHidden component to include the aria-label from the checkbox,
846
- which for single selection will be "Select."
847
- */ isSingleSelectionMode && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariavisuallyhidden.VisuallyHidden), null, checkboxProps['aria-label']), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrumcheckbox.Checkbox), {
848
- ...checkboxProps,
849
- "data-testid": "selectAll",
850
- isEmphasized: true,
851
- UNSAFE_style: isSingleSelectionMode ? {
852
- visibility: 'hidden'
853
- } : undefined,
854
- UNSAFE_className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-checkbox')
855
- })));
856
- }
857
- function $e39c6de4eb69450d$var$TableDragHeaderCell({ column: column }) {
858
- let ref = (0, $idLTj$react.useRef)(null);
859
- let { state: state } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
860
- let { columnHeaderProps: columnHeaderProps } = (0, $idLTj$reactariatable.useTableColumnHeader)({
861
- node: column,
862
- isVirtualized: true
863
- }, state, ref);
864
- let stringFormatter = (0, $idLTj$reactariai18n.useLocalizedStringFormatter)((0, ($parcel$interopDefault($1a3d6ad53eb75d54$exports))), '@react-spectrum/table');
865
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
866
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
867
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
868
- ...columnHeaderProps,
869
- ref: ref,
870
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-headCell', (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-headCell', 'react-spectrum-Table-dragButtonHeadCell'))
871
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariavisuallyhidden.VisuallyHidden), null, stringFormatter.format('drag'))));
872
- }
873
- function $e39c6de4eb69450d$var$TableRowGroup({ children: children, layoutInfo: layoutInfo, parent: parent, ...otherProps }) {
874
- let { rowGroupProps: rowGroupProps } = (0, $idLTj$reactariatable.useTableRowGroup)();
875
- let { isTableDroppable: isTableDroppable } = (0, $idLTj$react.useContext)($e39c6de4eb69450d$export$93e4b0b2cc49b648);
876
- let style = $e39c6de4eb69450d$var$useStyle(layoutInfo, parent);
877
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
878
- ...rowGroupProps,
879
- style: style,
880
- ...otherProps
881
- }, isTableDroppable && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $4a98adf416b1ae5d$exports.RootDropIndicator), {
882
- key: "root"
883
- }), children);
884
- }
885
- function $e39c6de4eb69450d$var$DragButton() {
886
- let { dragButtonProps: dragButtonProps, dragButtonRef: dragButtonRef, isFocusVisibleWithin: isFocusVisibleWithin } = $e39c6de4eb69450d$export$cd7c5802f9e21187();
887
- let { visuallyHiddenProps: visuallyHiddenProps } = (0, $idLTj$reactariavisuallyhidden.useVisuallyHidden)();
888
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
889
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'focus-ring')
890
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
891
- ...dragButtonProps,
892
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-dragButton'),
893
- style: !isFocusVisibleWithin ? {
894
- ...visuallyHiddenProps.style
895
- } : {},
896
- ref: dragButtonRef,
897
- draggable: "true"
898
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, ($parcel$interopDefault($idLTj$spectrumiconsuiListGripper))), {
899
- UNSAFE_className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))))
900
- })));
901
- }
902
- const $e39c6de4eb69450d$var$TableRowContext = /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createContext(null);
903
- function $e39c6de4eb69450d$export$cd7c5802f9e21187() {
904
- return (0, $idLTj$react.useContext)($e39c6de4eb69450d$var$TableRowContext);
905
- }
906
- function $e39c6de4eb69450d$var$TableRow({ item: item, children: children, layoutInfo: layoutInfo, parent: parent, ...otherProps }) {
907
- var _state_collection_rows_find, _layout_getContentSize, _layout_virtualizer, // Remove tab index from list row if performing a screenreader drag. This prevents TalkBack from focusing the row,
908
- // allowing for single swipe navigation between row drop indicator
909
- _dragAndDropHooks_isVirtualDragging;
910
- let ref = (0, $idLTj$react.useRef)(null);
911
- let { state: state, layout: layout, dragAndDropHooks: dragAndDropHooks, isTableDraggable: isTableDraggable, isTableDroppable: isTableDroppable, dragState: dragState, dropState: dropState } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
912
- let isSelected = state.selectionManager.isSelected(item.key);
913
- let { rowProps: rowProps, hasAction: hasAction, allowsSelection: allowsSelection } = (0, $idLTj$reactariatable.useTableRow)({
914
- node: item,
915
- isVirtualized: true,
916
- shouldSelectOnPressUp: isTableDraggable
917
- }, state, ref);
918
- let isDisabled = state.selectionManager.isDisabled(item.key);
919
- let isInteractive = !isDisabled && (hasAction || allowsSelection || isTableDraggable);
920
- let { pressProps: pressProps, isPressed: isPressed } = (0, $idLTj$reactariainteractions.usePress)({
921
- isDisabled: !isInteractive
922
- });
923
- // The row should show the focus background style when any cell inside it is focused.
924
- // If the row itself is focused, then it should have a blue focus indicator on the left.
925
- let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $idLTj$reactariafocus.useFocusRing)({
926
- within: true
927
- });
928
- let { isFocusVisible: isFocusVisible, focusProps: focusProps } = (0, $idLTj$reactariafocus.useFocusRing)();
929
- let { hoverProps: hoverProps, isHovered: isHovered } = (0, $idLTj$reactariainteractions.useHover)({
930
- isDisabled: !isInteractive
931
- });
932
- let isFirstRow = ((_state_collection_rows_find = state.collection.rows.find((row)=>row.level === 1)) === null || _state_collection_rows_find === void 0 ? void 0 : _state_collection_rows_find.key) === item.key;
933
- let isLastRow = item.nextKey == null;
934
- // Figure out if the TableView content is equal or greater in height to the container. If so, we'll need to round the bottom
935
- // border corners of the last row when selected.
936
- let isFlushWithContainerBottom = false;
937
- var _layout_virtualizer_visibleRect_height;
938
- if (isLastRow) {
939
- if (((_layout_getContentSize = layout.getContentSize()) === null || _layout_getContentSize === void 0 ? void 0 : _layout_getContentSize.height) >= ((_layout_virtualizer_visibleRect_height = (_layout_virtualizer = layout.virtualizer) === null || _layout_virtualizer === void 0 ? void 0 : _layout_virtualizer.visibleRect.height) !== null && _layout_virtualizer_visibleRect_height !== void 0 ? _layout_virtualizer_visibleRect_height : 0)) isFlushWithContainerBottom = true;
940
- }
941
- let draggableItem = null;
942
- if (isTableDraggable && dragAndDropHooks && dragState) {
943
- draggableItem = dragAndDropHooks.useDraggableItem({
944
- key: item.key,
945
- hasDragButton: true
946
- }, dragState);
947
- if (isDisabled) draggableItem = null;
948
- }
949
- let isDropTarget = false;
950
- let dropIndicator = null;
951
- let dropIndicatorRef = (0, $idLTj$react.useRef)(null);
952
- if (isTableDroppable && dragAndDropHooks && dropState) {
953
- let target = {
954
- type: 'item',
955
- key: item.key,
956
- dropPosition: 'on'
957
- };
958
- isDropTarget = dropState.isDropTarget(target);
959
- dropIndicator = dragAndDropHooks.useDropIndicator({
960
- target: target
961
- }, dropState, dropIndicatorRef);
962
- }
963
- let dragButtonRef = (0, ($parcel$interopDefault($idLTj$react))).useRef(null);
964
- let { buttonProps: dragButtonProps } = (0, $idLTj$reactariabutton.useButton)({
965
- ...draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragButtonProps,
966
- elementType: 'div'
967
- }, dragButtonRef);
968
- let style = $e39c6de4eb69450d$var$useStyle(layoutInfo, parent);
969
- let props = (0, $idLTj$reactariautils.mergeProps)(rowProps, otherProps, {
970
- style: style
971
- }, focusWithinProps, focusProps, hoverProps, pressProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps, (dragAndDropHooks === null || dragAndDropHooks === void 0 ? void 0 : (_dragAndDropHooks_isVirtualDragging = dragAndDropHooks.isVirtualDragging) === null || _dragAndDropHooks_isVirtualDragging === void 0 ? void 0 : _dragAndDropHooks_isVirtualDragging.call(dragAndDropHooks)) ? {
972
- tabIndex: null
973
- } : null);
974
- let { visuallyHiddenProps: visuallyHiddenProps } = (0, $idLTj$reactariavisuallyhidden.useVisuallyHidden)();
975
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$TableRowContext.Provider, {
976
- value: {
977
- dragButtonProps: dragButtonProps,
978
- dragButtonRef: dragButtonRef,
979
- isFocusVisibleWithin: isFocusVisibleWithin
980
- }
981
- }, isTableDroppable && isFirstRow && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $c44674ca7612e997$exports.InsertionIndicator), {
982
- rowProps: props,
983
- key: `${item.key}-before`,
984
- target: {
985
- key: item.key,
986
- type: 'item',
987
- dropPosition: 'before'
988
- }
989
- }), isTableDroppable && !(dropIndicator === null || dropIndicator === void 0 ? void 0 : dropIndicator.isHidden) && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
990
- role: "row",
991
- ...visuallyHiddenProps
992
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
993
- role: "gridcell"
994
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
995
- role: "button",
996
- ...dropIndicator === null || dropIndicator === void 0 ? void 0 : dropIndicator.dropIndicatorProps,
997
- ref: dropIndicatorRef
998
- }))), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
999
- ...props,
1000
- ref: ref,
1001
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-row', {
1002
- 'is-active': isPressed,
1003
- 'is-selected': isSelected,
1004
- 'spectrum-Table-row--highlightSelection': state.selectionManager.selectionBehavior === 'replace',
1005
- 'is-next-selected': item.nextKey != null && state.selectionManager.isSelected(item.nextKey),
1006
- 'is-focused': isFocusVisibleWithin,
1007
- 'focus-ring': isFocusVisible,
1008
- 'is-hovered': isHovered,
1009
- 'is-disabled': isDisabled,
1010
- 'spectrum-Table-row--firstRow': isFirstRow,
1011
- 'spectrum-Table-row--lastRow': isLastRow,
1012
- 'spectrum-Table-row--isFlushBottom': isFlushWithContainerBottom
1013
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-row', {
1014
- 'react-spectrum-Table-row--dropTarget': isDropTarget
1015
- }))
1016
- }, children), isTableDroppable && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $c44674ca7612e997$exports.InsertionIndicator), {
1017
- rowProps: props,
1018
- key: `${item.key}-after`,
1019
- target: {
1020
- key: item.key,
1021
- type: 'item',
1022
- dropPosition: 'after'
1023
- }
1024
- }));
1025
- }
1026
- function $e39c6de4eb69450d$var$TableHeaderRow({ item: item, children: children, layoutInfo: layoutInfo, parent: parent, ...props }) {
1027
- let { state: state, headerMenuOpen: headerMenuOpen } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
1028
- let ref = (0, $idLTj$react.useRef)(null);
1029
- let { rowProps: rowProps } = (0, $idLTj$reactariatable.useTableHeaderRow)({
1030
- node: item,
1031
- isVirtualized: true
1032
- }, state, ref);
1033
- let { hoverProps: hoverProps } = (0, $idLTj$reactariainteractions.useHover)({
1034
- ...props,
1035
- isDisabled: headerMenuOpen
1036
- });
1037
- let style = $e39c6de4eb69450d$var$useStyle(layoutInfo, parent);
1038
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
1039
- ...(0, $idLTj$reactariautils.mergeProps)(rowProps, hoverProps),
1040
- ref: ref,
1041
- style: style
1042
- }, children);
1043
- }
1044
- function $e39c6de4eb69450d$var$TableDragCell({ cell: cell }) {
1045
- let ref = (0, $idLTj$react.useRef)(null);
1046
- let { state: state, isTableDraggable: isTableDraggable } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
1047
- let isDisabled = state.selectionManager.isDisabled(cell.parentKey);
1048
- let { gridCellProps: gridCellProps } = (0, $idLTj$reactariatable.useTableCell)({
1049
- node: cell,
1050
- isVirtualized: true
1051
- }, state, ref);
1052
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
1053
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
1054
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
1055
- ...gridCellProps,
1056
- ref: ref,
1057
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-cell', {
1058
- 'is-disabled': isDisabled
1059
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-cell', 'react-spectrum-Table-dragButtonCell'))
1060
- }, isTableDraggable && !isDisabled && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$DragButton, null)));
1061
- }
1062
- function $e39c6de4eb69450d$var$TableCheckboxCell({ cell: cell }) {
1063
- let ref = (0, $idLTj$react.useRef)(null);
1064
- let { state: state } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
1065
- // The TableCheckbox should always render its disabled status if the row is disabled, regardless of disabledBehavior,
1066
- // but the cell itself should not render its disabled styles if disabledBehavior="selection" because the row might have actions on it.
1067
- let isSelectionDisabled = state.disabledKeys.has(cell.parentKey);
1068
- let isDisabled = state.selectionManager.isDisabled(cell.parentKey);
1069
- let { gridCellProps: gridCellProps } = (0, $idLTj$reactariatable.useTableCell)({
1070
- node: cell,
1071
- isVirtualized: true
1072
- }, state, ref);
1073
- let { checkboxProps: checkboxProps } = (0, $idLTj$reactariatable.useTableSelectionCheckbox)({
1074
- key: cell.parentKey
1075
- }, state);
1076
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
1077
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
1078
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
1079
- ...gridCellProps,
1080
- ref: ref,
1081
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-cell', 'spectrum-Table-checkboxCell', {
1082
- 'is-disabled': isDisabled
1083
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-cell'))
1084
- }, state.selectionManager.selectionMode !== 'none' && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrumcheckbox.Checkbox), {
1085
- ...checkboxProps,
1086
- isEmphasized: true,
1087
- isDisabled: isSelectionDisabled,
1088
- UNSAFE_className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-checkbox')
1089
- })));
1090
- }
1091
- function $e39c6de4eb69450d$var$TableCell({ cell: cell }) {
1092
- let { scale: scale } = (0, $idLTj$reactspectrumprovider.useProvider)();
1093
- let { state: state } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
1094
- let isExpandableTable = 'expandedKeys' in state;
1095
- let ref = (0, $idLTj$react.useRef)(null);
1096
- let columnProps = cell.column.props;
1097
- let isDisabled = state.selectionManager.isDisabled(cell.parentKey);
1098
- let { gridCellProps: gridCellProps } = (0, $idLTj$reactariatable.useTableCell)({
1099
- node: cell,
1100
- isVirtualized: true
1101
- }, state, ref);
1102
- let { id: id, ...otherGridCellProps } = gridCellProps;
1103
- let isFirstRowHeaderCell = state.collection.rowHeaderColumnKeys.keys().next().value === cell.column.key;
1104
- let isRowExpandable = false;
1105
- let showExpandCollapseButton = false;
1106
- let levelOffset = 0;
1107
- if ('expandedKeys' in state) {
1108
- var _state_keyMap_get_props_UNSTABLE_childItems, _state_keyMap_get, _state_keyMap_get_props_children, _state_keyMap_get_props, _state_keyMap_get1;
1109
- isRowExpandable = ((_state_keyMap_get = state.keyMap.get(cell.parentKey)) === null || _state_keyMap_get === void 0 ? void 0 : (_state_keyMap_get_props_UNSTABLE_childItems = _state_keyMap_get.props.UNSTABLE_childItems) === null || _state_keyMap_get_props_UNSTABLE_childItems === void 0 ? void 0 : _state_keyMap_get_props_UNSTABLE_childItems.length) > 0 || ((_state_keyMap_get1 = state.keyMap.get(cell.parentKey)) === null || _state_keyMap_get1 === void 0 ? void 0 : (_state_keyMap_get_props = _state_keyMap_get1.props) === null || _state_keyMap_get_props === void 0 ? void 0 : (_state_keyMap_get_props_children = _state_keyMap_get_props.children) === null || _state_keyMap_get_props_children === void 0 ? void 0 : _state_keyMap_get_props_children.length) > state.userColumnCount;
1110
- showExpandCollapseButton = isFirstRowHeaderCell && isRowExpandable;
1111
- // Offset based on level, and add additional offset if there is no expand/collapse button on a row
1112
- levelOffset = (cell.level - 2) * $e39c6de4eb69450d$var$LEVEL_OFFSET_WIDTH[scale] + (!showExpandCollapseButton ? $e39c6de4eb69450d$var$LEVEL_OFFSET_WIDTH[scale] * 2 : 0);
1113
- }
1114
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariafocus.FocusRing), {
1115
- focusRingClass: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'focus-ring')
1116
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
1117
- ...otherGridCellProps,
1118
- "aria-labelledby": id,
1119
- ref: ref,
1120
- style: isExpandableTable && isFirstRowHeaderCell ? {
1121
- paddingInlineStart: levelOffset
1122
- } : {},
1123
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-cell', {
1124
- 'spectrum-Table-cell--divider': columnProps.showDivider && cell.column.nextKey !== null,
1125
- 'spectrum-Table-cell--hideHeader': columnProps.hideHeader,
1126
- 'spectrum-Table-cell--hasExpandCollapseButton': showExpandCollapseButton,
1127
- 'is-disabled': isDisabled
1128
- }, (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-cell', {
1129
- 'react-spectrum-Table-cell--alignStart': columnProps.align === 'start',
1130
- 'react-spectrum-Table-cell--alignCenter': columnProps.align === 'center',
1131
- 'react-spectrum-Table-cell--alignEnd': columnProps.align === 'end'
1132
- }))
1133
- }, showExpandCollapseButton && /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$ExpandableRowChevron, {
1134
- cell: cell
1135
- }), /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("span", {
1136
- id: id,
1137
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-cellContents')
1138
- }, cell.rendered)));
1139
- }
1140
- function $e39c6de4eb69450d$var$TableCellWrapper({ layoutInfo: layoutInfo, virtualizer: virtualizer, parent: parent, children: children }) {
1141
- let { isTableDroppable: isTableDroppable, dropState: dropState } = (0, $idLTj$react.useContext)($e39c6de4eb69450d$export$93e4b0b2cc49b648);
1142
- let isDropTarget = false;
1143
- let isRootDroptarget = false;
1144
- if (isTableDroppable && dropState) {
1145
- if (parent.content) isDropTarget = dropState.isDropTarget({
1146
- type: 'item',
1147
- dropPosition: 'on',
1148
- key: parent.content.key
1149
- });
1150
- isRootDroptarget = dropState.isDropTarget({
1151
- type: 'root'
1152
- });
1153
- }
1154
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactariavirtualizer.VirtualizerItem), {
1155
- layoutInfo: layoutInfo,
1156
- virtualizer: virtualizer,
1157
- parent: parent === null || parent === void 0 ? void 0 : parent.layoutInfo,
1158
- className: (0, $idLTj$react.useMemo)(()=>(0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-cellWrapper', (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), {
1159
- 'react-spectrum-Table-cellWrapper': !layoutInfo.estimatedSize,
1160
- 'react-spectrum-Table-cellWrapper--dropTarget': isDropTarget || isRootDroptarget
1161
- })), [
1162
- layoutInfo.estimatedSize,
1163
- isDropTarget,
1164
- isRootDroptarget
1165
- ])
1166
- }, children);
1167
- }
1168
- function $e39c6de4eb69450d$var$ExpandableRowChevron({ cell: cell }) {
1169
- // TODO: move some/all of the chevron button setup into a separate hook?
1170
- let { direction: direction } = (0, $idLTj$reactariai18n.useLocale)();
1171
- let { state: state } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
1172
- let expandButtonRef = (0, $idLTj$react.useRef)(null);
1173
- let stringFormatter = (0, $idLTj$reactariai18n.useLocalizedStringFormatter)((0, ($parcel$interopDefault($1a3d6ad53eb75d54$exports))), '@react-spectrum/table');
1174
- let isExpanded;
1175
- if ('expandedKeys' in state) isExpanded = state.expandedKeys === 'all' || state.expandedKeys.has(cell.parentKey);
1176
- // Will need to keep the chevron as a button for iOS VO at all times since VO doesn't focus the cell. Also keep as button if cellAction is defined by the user in the future
1177
- let { buttonProps: buttonProps } = (0, $idLTj$reactariabutton.useButton)({
1178
- // Desktop and mobile both toggle expansion of a native expandable row on mouse/touch up
1179
- onPress: ()=>{
1180
- state.toggleKey(cell.parentKey);
1181
- if (!(0, $idLTj$reactariainteractions.isFocusVisible)()) {
1182
- state.selectionManager.setFocused(true);
1183
- state.selectionManager.setFocusedKey(cell.parentKey);
1184
- }
1185
- },
1186
- elementType: 'span',
1187
- 'aria-label': isExpanded ? stringFormatter.format('collapse') : stringFormatter.format('expand')
1188
- }, expandButtonRef);
1189
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("span", {
1190
- ...buttonProps,
1191
- ref: expandButtonRef,
1192
- // Override tabindex so that grid keyboard nav skips over it. Needs -1 so android talkback can actually "focus" it
1193
- tabIndex: (0, $idLTj$reactariautils.isAndroid)() ? -1 : undefined,
1194
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($982885d0a34882ea$exports))), 'spectrum-Table-expandButton', {
1195
- 'is-open': isExpanded
1196
- })
1197
- }, direction === 'ltr' ? /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, ($parcel$interopDefault($idLTj$spectrumiconsuiChevronRightMedium))), null) : /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, ($parcel$interopDefault($idLTj$spectrumiconsuiChevronLeftMedium))), null));
1198
- }
1199
- function $e39c6de4eb69450d$var$LoadingState() {
1200
- let { state: state } = (0, $idLTj$react.useContext)($e39c6de4eb69450d$export$93e4b0b2cc49b648);
1201
- let stringFormatter = (0, $idLTj$reactariai18n.useLocalizedStringFormatter)((0, ($parcel$interopDefault($1a3d6ad53eb75d54$exports))), '@react-spectrum/table');
1202
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$CenteredWrapper, null, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement((0, $idLTj$reactspectrumprogress.ProgressCircle), {
1203
- isIndeterminate: true,
1204
- "aria-label": state.collection.size > 0 ? stringFormatter.format('loadingMore') : stringFormatter.format('loading')
1205
- }));
1206
- }
1207
- function $e39c6de4eb69450d$var$EmptyState() {
1208
- let { renderEmptyState: renderEmptyState } = (0, $idLTj$react.useContext)($e39c6de4eb69450d$export$93e4b0b2cc49b648);
1209
- let emptyState = renderEmptyState ? renderEmptyState() : null;
1210
- if (emptyState == null) return null;
1211
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement($e39c6de4eb69450d$var$CenteredWrapper, null, emptyState);
1212
- }
1213
- function $e39c6de4eb69450d$var$CenteredWrapper({ children: children }) {
1214
- let { state: state } = $e39c6de4eb69450d$export$3cb274deb6c2d854();
1215
- let rowProps;
1216
- if ('expandedKeys' in state) {
1217
- let topLevelRowCount = [
1218
- ...state.collection.body.childNodes
1219
- ].length;
1220
- rowProps = {
1221
- 'aria-level': 1,
1222
- 'aria-posinset': topLevelRowCount + 1,
1223
- 'aria-setsize': topLevelRowCount + 1
1224
- };
1225
- } else rowProps = {
1226
- 'aria-rowindex': state.collection.headerRows.length + state.collection.size + 1
1227
- };
1228
- return /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
1229
- role: "row",
1230
- ...rowProps,
1231
- className: (0, $idLTj$reactspectrumutils.classNames)((0, ($parcel$interopDefault($4afcd54cfd94dbb9$exports))), 'react-spectrum-Table-centeredWrapper')
1232
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).createElement("div", {
1233
- role: "rowheader",
1234
- "aria-colspan": state.collection.columns.length
1235
- }, children));
1236
- }
1237
- const $e39c6de4eb69450d$export$517e02184d273d69 = /*#__PURE__*/ (0, ($parcel$interopDefault($idLTj$react))).forwardRef($e39c6de4eb69450d$var$TableViewBase);
1238
-
1239
-
1240
- //# sourceMappingURL=TableViewBase.main.js.map