@salt-ds/data-grid 1.0.4-alpha.0 → 1.0.4-alpha.10

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 (457) hide show
  1. package/dist-cjs/BaseCell.css.js +6 -0
  2. package/{dist-es/packages/grid/src → dist-cjs}/BaseCell.css.js.map +1 -1
  3. package/dist-cjs/{packages/grid/src/BaseCell.js → BaseCell.js} +44 -5
  4. package/dist-cjs/BaseCell.js.map +1 -0
  5. package/dist-cjs/{packages/grid/src/CheckboxCell.css.js → CheckboxCell.css.js} +0 -3
  6. package/{dist-es/packages/grid/src → dist-cjs}/CheckboxCell.css.js.map +1 -1
  7. package/dist-cjs/ColumnSortContext.js +20 -0
  8. package/dist-cjs/ColumnSortContext.js.map +1 -0
  9. package/dist-cjs/{packages/grid/src/CornerTag.css.js → CornerTag.css.js} +0 -3
  10. package/{dist-es/packages/grid/src → dist-cjs}/CornerTag.css.js.map +1 -1
  11. package/dist-cjs/{packages/grid/src/CornerTag.js → CornerTag.js} +9 -1
  12. package/dist-cjs/CornerTag.js.map +1 -0
  13. package/dist-cjs/{packages/grid/src/DropdownCellEditor.css.js → DropdownCellEditor.css.js} +0 -3
  14. package/{dist-es/packages/grid/src → dist-cjs}/DropdownCellEditor.css.js.map +1 -1
  15. package/dist-cjs/{packages/grid/src/DropdownCellEditor.js → DropdownCellEditor.js} +19 -6
  16. package/dist-cjs/DropdownCellEditor.js.map +1 -0
  17. package/dist-cjs/Grid.css.js +6 -0
  18. package/{dist-es/packages/grid/src → dist-cjs}/Grid.css.js.map +1 -1
  19. package/dist-cjs/{packages/grid/src/Grid.js → Grid.js} +222 -131
  20. package/dist-cjs/Grid.js.map +1 -0
  21. package/dist-cjs/GridColumn.js.map +1 -0
  22. package/dist-cjs/{packages/grid/src/GroupHeaderCell.css.js → GroupHeaderCell.css.js} +0 -3
  23. package/{dist-es/packages/grid/src → dist-cjs}/GroupHeaderCell.css.js.map +1 -1
  24. package/dist-cjs/{packages/grid/src/GroupHeaderCell.js → GroupHeaderCell.js} +9 -1
  25. package/dist-cjs/GroupHeaderCell.js.map +1 -0
  26. package/dist-cjs/HeaderCell.css.js +6 -0
  27. package/{dist-es/packages/grid/src → dist-cjs}/HeaderCell.css.js.map +1 -1
  28. package/dist-cjs/{packages/grid/src/HeaderCell.js → HeaderCell.js} +76 -5
  29. package/dist-cjs/HeaderCell.js.map +1 -0
  30. package/dist-cjs/NumberRange.js.map +1 -0
  31. package/dist-cjs/{packages/grid/src/NumericColumn.css.js → NumericColumn.css.js} +0 -3
  32. package/{dist-es/packages/grid/src → dist-cjs}/NumericColumn.css.js.map +1 -1
  33. package/dist-cjs/{packages/grid/src/NumericColumn.js → NumericColumn.js} +10 -3
  34. package/dist-cjs/NumericColumn.js.map +1 -0
  35. package/dist-cjs/{packages/grid/src/RowSelectionCheckboxCellValue.js → RowSelectionCheckboxCellValue.js} +9 -1
  36. package/dist-cjs/RowSelectionCheckboxCellValue.js.map +1 -0
  37. package/dist-cjs/{packages/grid/src/RowSelectionCheckboxColumn.js → RowSelectionCheckboxColumn.js} +14 -7
  38. package/dist-cjs/RowSelectionCheckboxColumn.js.map +1 -0
  39. package/dist-cjs/{packages/grid/src/RowSelectionCheckboxHeaderCellValue.js → RowSelectionCheckboxHeaderCellValue.js} +10 -2
  40. package/dist-cjs/RowSelectionCheckboxHeaderCellValue.js.map +1 -0
  41. package/dist-cjs/{packages/grid/src/RowSelectionRadioCellValue.js → RowSelectionRadioCellValue.js} +9 -1
  42. package/dist-cjs/RowSelectionRadioCellValue.js.map +1 -0
  43. package/dist-cjs/{packages/grid/src/RowSelectionRadioColumn.js → RowSelectionRadioColumn.js} +11 -7
  44. package/dist-cjs/RowSelectionRadioColumn.js.map +1 -0
  45. package/dist-cjs/{packages/grid/src/RowSelectionRadioHeaderCell.js → RowSelectionRadioHeaderCell.js} +11 -3
  46. package/dist-cjs/RowSelectionRadioHeaderCell.js.map +1 -0
  47. package/dist-cjs/RowValidationStatus.js +13 -0
  48. package/dist-cjs/RowValidationStatus.js.map +1 -0
  49. package/dist-cjs/{packages/grid/src/TextCellEditor.css.js → TextCellEditor.css.js} +0 -3
  50. package/{dist-es/packages/grid/src → dist-cjs}/TextCellEditor.css.js.map +1 -1
  51. package/dist-cjs/{packages/grid/src/TextCellEditor.js → TextCellEditor.js} +9 -2
  52. package/dist-cjs/TextCellEditor.js.map +1 -0
  53. package/dist-cjs/{packages/grid/src/index.js → index.js} +1 -0
  54. package/dist-cjs/{packages/grid/src/index.js.map → index.js.map} +1 -1
  55. package/dist-cjs/internal/Cell.css.js +6 -0
  56. package/{dist-es/packages/grid/src → dist-cjs}/internal/Cell.css.js.map +1 -1
  57. package/dist-cjs/{packages/grid/src/internal → internal}/Cell.js +9 -1
  58. package/dist-cjs/internal/Cell.js.map +1 -0
  59. package/dist-cjs/{packages/grid/src/internal → internal}/CellMeasure.css.js +0 -3
  60. package/{dist-es/packages/grid/src → dist-cjs}/internal/CellMeasure.css.js.map +1 -1
  61. package/dist-cjs/{packages/grid/src/internal → internal}/CellMeasure.js +9 -1
  62. package/dist-cjs/internal/CellMeasure.js.map +1 -0
  63. package/dist-cjs/internal/CellStatusIcons.js +46 -0
  64. package/dist-cjs/internal/CellStatusIcons.js.map +1 -0
  65. package/dist-cjs/{packages/grid/src/internal → internal}/ColumnDropTarget.css.js +0 -3
  66. package/{dist-es/packages/grid/src → dist-cjs}/internal/ColumnDropTarget.css.js.map +1 -1
  67. package/dist-cjs/{packages/grid/src/internal → internal}/ColumnDropTarget.js +9 -1
  68. package/dist-cjs/internal/ColumnDropTarget.js.map +1 -0
  69. package/dist-cjs/{packages/grid/src/internal → internal}/ColumnGhost.css.js +0 -3
  70. package/{dist-es/packages/grid/src → dist-cjs}/internal/ColumnGhost.css.js.map +1 -1
  71. package/dist-cjs/{packages/grid/src/internal → internal}/ColumnGhost.js +10 -2
  72. package/dist-cjs/internal/ColumnGhost.js.map +1 -0
  73. package/dist-cjs/{packages/grid/src/internal → internal}/Cursor.css.js +0 -3
  74. package/{dist-es/packages/grid/src → dist-cjs}/internal/Cursor.css.js.map +1 -1
  75. package/dist-cjs/{packages/grid/src/internal → internal}/Cursor.js +9 -1
  76. package/dist-cjs/internal/Cursor.js.map +1 -0
  77. package/dist-cjs/{packages/grid/src/internal → internal}/DefaultCellValue.css.js +0 -3
  78. package/{dist-es/packages/grid/src → dist-cjs}/internal/DefaultCellValue.css.js.map +1 -1
  79. package/dist-cjs/{packages/grid/src/internal → internal}/DefaultCellValue.js +9 -1
  80. package/dist-cjs/internal/DefaultCellValue.js.map +1 -0
  81. package/dist-cjs/{packages/grid/src/internal → internal}/FakeCell.css.js +0 -3
  82. package/{dist-es/packages/grid/src → dist-cjs}/internal/FakeCell.css.js.map +1 -1
  83. package/dist-cjs/{packages/grid/src/internal → internal}/FakeCell.js +9 -1
  84. package/dist-cjs/internal/FakeCell.js.map +1 -0
  85. package/dist-cjs/{packages/grid/src/internal → internal}/GroupHeaderRow.css.js +0 -3
  86. package/{dist-es/packages/grid/src → dist-cjs}/internal/GroupHeaderRow.css.js.map +1 -1
  87. package/dist-cjs/{packages/grid/src/internal → internal}/GroupHeaderRow.js +11 -3
  88. package/dist-cjs/internal/GroupHeaderRow.js.map +1 -0
  89. package/dist-cjs/{packages/grid/src/internal → internal}/HeaderRow.css.js +0 -3
  90. package/{dist-es/packages/grid/src → dist-cjs}/internal/HeaderRow.css.js.map +1 -1
  91. package/dist-cjs/{packages/grid/src/internal → internal}/HeaderRow.js +10 -2
  92. package/dist-cjs/internal/HeaderRow.js.map +1 -0
  93. package/dist-cjs/{packages/grid/src/internal → internal}/LeftPart.css.js +0 -3
  94. package/{dist-es/packages/grid/src → dist-cjs}/internal/LeftPart.css.js.map +1 -1
  95. package/dist-cjs/{packages/grid/src/internal → internal}/LeftPart.js +15 -5
  96. package/dist-cjs/internal/LeftPart.js.map +1 -0
  97. package/dist-cjs/{packages/grid/src/internal → internal}/MiddlePart.css.js +0 -3
  98. package/{dist-es/packages/grid/src → dist-cjs}/internal/MiddlePart.css.js.map +1 -1
  99. package/dist-cjs/{packages/grid/src/internal → internal}/MiddlePart.js +14 -4
  100. package/dist-cjs/internal/MiddlePart.js.map +1 -0
  101. package/dist-cjs/{packages/grid/src/internal → internal}/RightPart.css.js +0 -3
  102. package/{dist-es/packages/grid/src → dist-cjs}/internal/RightPart.css.js.map +1 -1
  103. package/dist-cjs/{packages/grid/src/internal → internal}/RightPart.js +15 -5
  104. package/dist-cjs/internal/RightPart.js.map +1 -0
  105. package/dist-cjs/{packages/grid/src/internal → internal}/Scrollable.css.js +0 -3
  106. package/{dist-es/packages/grid/src → dist-cjs}/internal/Scrollable.css.js.map +1 -1
  107. package/dist-cjs/{packages/grid/src/internal → internal}/Scrollable.js +10 -2
  108. package/dist-cjs/internal/Scrollable.js.map +1 -0
  109. package/dist-cjs/{packages/grid/src/internal → internal}/TableBody.js +12 -5
  110. package/dist-cjs/internal/TableBody.js.map +1 -0
  111. package/dist-cjs/internal/TableRow.css.js +6 -0
  112. package/{dist-es/packages/grid/src → dist-cjs}/internal/TableRow.css.js.map +1 -1
  113. package/dist-cjs/{packages/grid/src/internal → internal}/TableRow.js +45 -16
  114. package/dist-cjs/internal/TableRow.js.map +1 -0
  115. package/dist-cjs/{packages/grid/src/internal → internal}/TopLeftPart.css.js +0 -3
  116. package/{dist-es/packages/grid/src → dist-cjs}/internal/TopLeftPart.css.js.map +1 -1
  117. package/dist-cjs/{packages/grid/src/internal → internal}/TopLeftPart.js +12 -4
  118. package/dist-cjs/internal/TopLeftPart.js.map +1 -0
  119. package/dist-cjs/{packages/grid/src/internal → internal}/TopPart.css.js +0 -3
  120. package/{dist-es/packages/grid/src → dist-cjs}/internal/TopPart.css.js.map +1 -1
  121. package/dist-cjs/{packages/grid/src/internal → internal}/TopPart.js +11 -3
  122. package/dist-cjs/internal/TopPart.js.map +1 -0
  123. package/dist-cjs/{packages/grid/src/internal → internal}/TopRightPart.css.js +0 -3
  124. package/{dist-es/packages/grid/src → dist-cjs}/internal/TopRightPart.css.js.map +1 -1
  125. package/dist-cjs/{packages/grid/src/internal → internal}/TopRightPart.js +10 -2
  126. package/dist-cjs/internal/TopRightPart.js.map +1 -0
  127. package/dist-cjs/{packages/grid/src/internal → internal}/gridHooks.js +3 -0
  128. package/dist-cjs/internal/gridHooks.js.map +1 -0
  129. package/dist-es/BaseCell.css.js +4 -0
  130. package/{dist-cjs/packages/grid/src → dist-es}/BaseCell.css.js.map +1 -1
  131. package/dist-es/{packages/grid/src/BaseCell.js → BaseCell.js} +44 -5
  132. package/dist-es/BaseCell.js.map +1 -0
  133. package/dist-es/{packages/grid/src/CheckboxCell.css.js → CheckboxCell.css.js} +0 -3
  134. package/{dist-cjs/packages/grid/src → dist-es}/CheckboxCell.css.js.map +1 -1
  135. package/dist-es/ColumnSortContext.js +15 -0
  136. package/dist-es/ColumnSortContext.js.map +1 -0
  137. package/dist-es/{packages/grid/src/CornerTag.css.js → CornerTag.css.js} +0 -3
  138. package/{dist-cjs/packages/grid/src → dist-es}/CornerTag.css.js.map +1 -1
  139. package/dist-es/CornerTag.js +19 -0
  140. package/dist-es/CornerTag.js.map +1 -0
  141. package/dist-es/{packages/grid/src/DropdownCellEditor.css.js → DropdownCellEditor.css.js} +0 -3
  142. package/{dist-cjs/packages/grid/src → dist-es}/DropdownCellEditor.css.js.map +1 -1
  143. package/dist-es/{packages/grid/src/DropdownCellEditor.js → DropdownCellEditor.js} +19 -6
  144. package/dist-es/DropdownCellEditor.js.map +1 -0
  145. package/dist-es/Grid.css.js +4 -0
  146. package/{dist-cjs/packages/grid/src → dist-es}/Grid.css.js.map +1 -1
  147. package/dist-es/{packages/grid/src/Grid.js → Grid.js} +222 -132
  148. package/dist-es/Grid.js.map +1 -0
  149. package/dist-es/GridColumn.js.map +1 -0
  150. package/dist-es/{packages/grid/src/GroupHeaderCell.css.js → GroupHeaderCell.css.js} +0 -3
  151. package/{dist-cjs/packages/grid/src → dist-es}/GroupHeaderCell.css.js.map +1 -1
  152. package/dist-es/{packages/grid/src/GroupHeaderCell.js → GroupHeaderCell.js} +9 -1
  153. package/dist-es/GroupHeaderCell.js.map +1 -0
  154. package/dist-es/HeaderCell.css.js +4 -0
  155. package/{dist-cjs/packages/grid/src → dist-es}/HeaderCell.css.js.map +1 -1
  156. package/dist-es/{packages/grid/src/HeaderCell.js → HeaderCell.js} +76 -5
  157. package/dist-es/HeaderCell.js.map +1 -0
  158. package/dist-es/NumberRange.js.map +1 -0
  159. package/dist-es/{packages/grid/src/NumericColumn.css.js → NumericColumn.css.js} +0 -3
  160. package/{dist-cjs/packages/grid/src → dist-es}/NumericColumn.css.js.map +1 -1
  161. package/dist-es/{packages/grid/src/NumericColumn.js → NumericColumn.js} +10 -3
  162. package/dist-es/NumericColumn.js.map +1 -0
  163. package/dist-es/{packages/grid/src/RowSelectionCheckboxCellValue.js → RowSelectionCheckboxCellValue.js} +9 -1
  164. package/dist-es/RowSelectionCheckboxCellValue.js.map +1 -0
  165. package/dist-es/{packages/grid/src/RowSelectionCheckboxColumn.js → RowSelectionCheckboxColumn.js} +14 -7
  166. package/dist-es/RowSelectionCheckboxColumn.js.map +1 -0
  167. package/dist-es/{packages/grid/src/RowSelectionCheckboxHeaderCellValue.js → RowSelectionCheckboxHeaderCellValue.js} +10 -2
  168. package/dist-es/RowSelectionCheckboxHeaderCellValue.js.map +1 -0
  169. package/dist-es/{packages/grid/src/RowSelectionRadioCellValue.js → RowSelectionRadioCellValue.js} +9 -1
  170. package/dist-es/RowSelectionRadioCellValue.js.map +1 -0
  171. package/dist-es/{packages/grid/src/RowSelectionRadioColumn.js → RowSelectionRadioColumn.js} +11 -7
  172. package/dist-es/RowSelectionRadioColumn.js.map +1 -0
  173. package/dist-es/{packages/grid/src/RowSelectionRadioHeaderCell.js → RowSelectionRadioHeaderCell.js} +11 -3
  174. package/dist-es/RowSelectionRadioHeaderCell.js.map +1 -0
  175. package/dist-es/RowValidationStatus.js +9 -0
  176. package/dist-es/RowValidationStatus.js.map +1 -0
  177. package/dist-es/{packages/grid/src/TextCellEditor.css.js → TextCellEditor.css.js} +0 -3
  178. package/{dist-cjs/packages/grid/src → dist-es}/TextCellEditor.css.js.map +1 -1
  179. package/dist-es/{packages/grid/src/TextCellEditor.js → TextCellEditor.js} +9 -2
  180. package/dist-es/TextCellEditor.js.map +1 -0
  181. package/dist-es/{packages/grid/src/index.js → index.js} +1 -1
  182. package/dist-es/internal/Cell.css.js +4 -0
  183. package/{dist-cjs/packages/grid/src → dist-es}/internal/Cell.css.js.map +1 -1
  184. package/dist-es/{packages/grid/src/internal → internal}/Cell.js +9 -1
  185. package/dist-es/internal/Cell.js.map +1 -0
  186. package/dist-es/{packages/grid/src/internal → internal}/CellMeasure.css.js +0 -3
  187. package/{dist-cjs/packages/grid/src → dist-es}/internal/CellMeasure.css.js.map +1 -1
  188. package/dist-es/{packages/grid/src/internal → internal}/CellMeasure.js +9 -1
  189. package/dist-es/internal/CellMeasure.js.map +1 -0
  190. package/dist-es/internal/CellStatusIcons.js +40 -0
  191. package/dist-es/internal/CellStatusIcons.js.map +1 -0
  192. package/dist-es/{packages/grid/src/internal → internal}/ColumnDropTarget.css.js +0 -3
  193. package/{dist-cjs/packages/grid/src → dist-es}/internal/ColumnDropTarget.css.js.map +1 -1
  194. package/dist-es/{packages/grid/src/internal → internal}/ColumnDropTarget.js +9 -1
  195. package/dist-es/internal/ColumnDropTarget.js.map +1 -0
  196. package/dist-es/{packages/grid/src/internal → internal}/ColumnGhost.css.js +0 -3
  197. package/{dist-cjs/packages/grid/src → dist-es}/internal/ColumnGhost.css.js.map +1 -1
  198. package/dist-es/{packages/grid/src/internal → internal}/ColumnGhost.js +10 -2
  199. package/dist-es/internal/ColumnGhost.js.map +1 -0
  200. package/dist-es/{packages/grid/src/internal → internal}/Cursor.css.js +0 -3
  201. package/{dist-cjs/packages/grid/src → dist-es}/internal/Cursor.css.js.map +1 -1
  202. package/dist-es/{packages/grid/src/internal → internal}/Cursor.js +9 -1
  203. package/dist-es/internal/Cursor.js.map +1 -0
  204. package/dist-es/{packages/grid/src/internal → internal}/DefaultCellValue.css.js +0 -3
  205. package/{dist-cjs/packages/grid/src → dist-es}/internal/DefaultCellValue.css.js.map +1 -1
  206. package/dist-es/{packages/grid/src/internal → internal}/DefaultCellValue.js +9 -1
  207. package/dist-es/internal/DefaultCellValue.js.map +1 -0
  208. package/dist-es/{packages/grid/src/internal → internal}/FakeCell.css.js +0 -3
  209. package/{dist-cjs/packages/grid/src → dist-es}/internal/FakeCell.css.js.map +1 -1
  210. package/dist-es/{packages/grid/src/internal → internal}/FakeCell.js +9 -1
  211. package/dist-es/internal/FakeCell.js.map +1 -0
  212. package/dist-es/{packages/grid/src/internal → internal}/GroupHeaderRow.css.js +0 -3
  213. package/{dist-cjs/packages/grid/src → dist-es}/internal/GroupHeaderRow.css.js.map +1 -1
  214. package/dist-es/{packages/grid/src/internal → internal}/GroupHeaderRow.js +11 -3
  215. package/dist-es/internal/GroupHeaderRow.js.map +1 -0
  216. package/dist-es/{packages/grid/src/internal → internal}/HeaderRow.css.js +0 -3
  217. package/{dist-cjs/packages/grid/src → dist-es}/internal/HeaderRow.css.js.map +1 -1
  218. package/dist-es/{packages/grid/src/internal → internal}/HeaderRow.js +10 -2
  219. package/dist-es/internal/HeaderRow.js.map +1 -0
  220. package/dist-es/{packages/grid/src/internal → internal}/LeftPart.css.js +0 -3
  221. package/{dist-cjs/packages/grid/src → dist-es}/internal/LeftPart.css.js.map +1 -1
  222. package/dist-es/{packages/grid/src/internal → internal}/LeftPart.js +15 -5
  223. package/dist-es/internal/LeftPart.js.map +1 -0
  224. package/dist-es/{packages/grid/src/internal → internal}/MiddlePart.css.js +0 -3
  225. package/{dist-cjs/packages/grid/src → dist-es}/internal/MiddlePart.css.js.map +1 -1
  226. package/dist-es/{packages/grid/src/internal → internal}/MiddlePart.js +14 -4
  227. package/dist-es/internal/MiddlePart.js.map +1 -0
  228. package/dist-es/{packages/grid/src/internal → internal}/RightPart.css.js +0 -3
  229. package/{dist-cjs/packages/grid/src → dist-es}/internal/RightPart.css.js.map +1 -1
  230. package/dist-es/{packages/grid/src/internal → internal}/RightPart.js +15 -5
  231. package/dist-es/internal/RightPart.js.map +1 -0
  232. package/dist-es/{packages/grid/src/internal → internal}/Scrollable.css.js +0 -3
  233. package/{dist-cjs/packages/grid/src → dist-es}/internal/Scrollable.css.js.map +1 -1
  234. package/dist-es/{packages/grid/src/internal → internal}/Scrollable.js +10 -2
  235. package/dist-es/internal/Scrollable.js.map +1 -0
  236. package/dist-es/{packages/grid/src/internal → internal}/TableBody.js +12 -5
  237. package/dist-es/internal/TableBody.js.map +1 -0
  238. package/dist-es/internal/TableRow.css.js +4 -0
  239. package/{dist-cjs/packages/grid/src → dist-es}/internal/TableRow.css.js.map +1 -1
  240. package/dist-es/{packages/grid/src/internal → internal}/TableRow.js +45 -16
  241. package/dist-es/internal/TableRow.js.map +1 -0
  242. package/dist-es/{packages/grid/src/internal → internal}/TopLeftPart.css.js +0 -3
  243. package/{dist-cjs/packages/grid/src → dist-es}/internal/TopLeftPart.css.js.map +1 -1
  244. package/dist-es/{packages/grid/src/internal → internal}/TopLeftPart.js +12 -4
  245. package/dist-es/internal/TopLeftPart.js.map +1 -0
  246. package/dist-es/{packages/grid/src/internal → internal}/TopPart.css.js +0 -3
  247. package/{dist-cjs/packages/grid/src → dist-es}/internal/TopPart.css.js.map +1 -1
  248. package/dist-es/{packages/grid/src/internal → internal}/TopPart.js +11 -3
  249. package/dist-es/internal/TopPart.js.map +1 -0
  250. package/dist-es/{packages/grid/src/internal → internal}/TopRightPart.css.js +0 -3
  251. package/{dist-cjs/packages/grid/src → dist-es}/internal/TopRightPart.css.js.map +1 -1
  252. package/dist-es/{packages/grid/src/internal → internal}/TopRightPart.js +10 -2
  253. package/dist-es/internal/TopRightPart.js.map +1 -0
  254. package/dist-es/{packages/grid/src/internal → internal}/gridHooks.js +4 -1
  255. package/dist-es/internal/gridHooks.js.map +1 -0
  256. package/dist-types/BaseCell.d.ts +0 -2
  257. package/dist-types/ColumnDataContext.d.ts +0 -1
  258. package/dist-types/ColumnSortContext.d.ts +12 -0
  259. package/dist-types/CornerTag.d.ts +0 -2
  260. package/dist-types/CursorContext.d.ts +0 -1
  261. package/dist-types/DropdownCellEditor.d.ts +1 -3
  262. package/dist-types/EditorContext.d.ts +0 -1
  263. package/dist-types/Grid.d.ts +7 -2
  264. package/dist-types/GridColumn.d.ts +54 -2
  265. package/dist-types/GridContext.d.ts +0 -1
  266. package/dist-types/GroupHeaderCell.d.ts +1 -2
  267. package/dist-types/GroupHeaderCellValue.d.ts +0 -1
  268. package/dist-types/HeaderCell.d.ts +0 -2
  269. package/dist-types/HeaderCellValue.d.ts +0 -1
  270. package/dist-types/LayoutContext.d.ts +0 -1
  271. package/dist-types/NumericColumn.d.ts +1 -2
  272. package/dist-types/RowSelectionCheckboxCellValue.d.ts +0 -2
  273. package/dist-types/RowSelectionCheckboxColumn.d.ts +0 -1
  274. package/dist-types/RowSelectionCheckboxHeaderCellValue.d.ts +0 -2
  275. package/dist-types/RowSelectionRadioCellValue.d.ts +0 -2
  276. package/dist-types/RowSelectionRadioColumn.d.ts +0 -1
  277. package/dist-types/RowSelectionRadioHeaderCell.d.ts +0 -2
  278. package/dist-types/RowValidationStatus.d.ts +6 -0
  279. package/dist-types/SelectionContext.d.ts +0 -1
  280. package/dist-types/TextCellEditor.d.ts +0 -2
  281. package/dist-types/internal/Cell.d.ts +0 -1
  282. package/dist-types/internal/CellMeasure.d.ts +0 -2
  283. package/dist-types/internal/CellStatusIcons.d.ts +3 -0
  284. package/dist-types/internal/ColumnDropTarget.d.ts +0 -2
  285. package/dist-types/internal/ColumnGhost.d.ts +1 -3
  286. package/dist-types/internal/Cursor.d.ts +0 -2
  287. package/dist-types/internal/DefaultCellValue.d.ts +0 -2
  288. package/dist-types/internal/FakeCell.d.ts +0 -2
  289. package/dist-types/internal/FakeGroupCell.d.ts +0 -1
  290. package/dist-types/internal/FakeHeaderCell.d.ts +0 -1
  291. package/dist-types/internal/GroupHeaderRow.d.ts +0 -2
  292. package/dist-types/internal/HeaderRow.d.ts +0 -2
  293. package/dist-types/internal/LeftPart.d.ts +2 -1
  294. package/dist-types/internal/MiddlePart.d.ts +2 -1
  295. package/dist-types/internal/RightPart.d.ts +2 -1
  296. package/dist-types/internal/Scrollable.d.ts +0 -1
  297. package/dist-types/internal/TableBody.d.ts +2 -1
  298. package/dist-types/internal/TableColGroup.d.ts +0 -1
  299. package/dist-types/internal/TableRow.d.ts +2 -2
  300. package/dist-types/internal/TopLeftPart.d.ts +0 -2
  301. package/dist-types/internal/TopPart.d.ts +0 -1
  302. package/dist-types/internal/TopRightPart.d.ts +0 -2
  303. package/package.json +24 -22
  304. package/dist-cjs/node_modules/style-inject/dist/style-inject.es.js +0 -31
  305. package/dist-cjs/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  306. package/dist-cjs/packages/grid/src/BaseCell.css.js +0 -9
  307. package/dist-cjs/packages/grid/src/BaseCell.js.map +0 -1
  308. package/dist-cjs/packages/grid/src/CornerTag.js.map +0 -1
  309. package/dist-cjs/packages/grid/src/DropdownCellEditor.js.map +0 -1
  310. package/dist-cjs/packages/grid/src/Grid.css.js +0 -9
  311. package/dist-cjs/packages/grid/src/Grid.js.map +0 -1
  312. package/dist-cjs/packages/grid/src/GridColumn.js.map +0 -1
  313. package/dist-cjs/packages/grid/src/GroupHeaderCell.js.map +0 -1
  314. package/dist-cjs/packages/grid/src/HeaderCell.css.js +0 -9
  315. package/dist-cjs/packages/grid/src/HeaderCell.js.map +0 -1
  316. package/dist-cjs/packages/grid/src/NumberRange.js.map +0 -1
  317. package/dist-cjs/packages/grid/src/NumericColumn.js.map +0 -1
  318. package/dist-cjs/packages/grid/src/RowSelectionCheckboxCellValue.js.map +0 -1
  319. package/dist-cjs/packages/grid/src/RowSelectionCheckboxColumn.js.map +0 -1
  320. package/dist-cjs/packages/grid/src/RowSelectionCheckboxHeaderCellValue.js.map +0 -1
  321. package/dist-cjs/packages/grid/src/RowSelectionRadioCellValue.js.map +0 -1
  322. package/dist-cjs/packages/grid/src/RowSelectionRadioColumn.js.map +0 -1
  323. package/dist-cjs/packages/grid/src/RowSelectionRadioHeaderCell.js.map +0 -1
  324. package/dist-cjs/packages/grid/src/TextCellEditor.js.map +0 -1
  325. package/dist-cjs/packages/grid/src/internal/Cell.css.js +0 -9
  326. package/dist-cjs/packages/grid/src/internal/Cell.js.map +0 -1
  327. package/dist-cjs/packages/grid/src/internal/CellMeasure.js.map +0 -1
  328. package/dist-cjs/packages/grid/src/internal/ColumnDropTarget.js.map +0 -1
  329. package/dist-cjs/packages/grid/src/internal/ColumnGhost.js.map +0 -1
  330. package/dist-cjs/packages/grid/src/internal/Cursor.js.map +0 -1
  331. package/dist-cjs/packages/grid/src/internal/DefaultCellValue.js.map +0 -1
  332. package/dist-cjs/packages/grid/src/internal/FakeCell.js.map +0 -1
  333. package/dist-cjs/packages/grid/src/internal/GroupHeaderRow.js.map +0 -1
  334. package/dist-cjs/packages/grid/src/internal/HeaderRow.js.map +0 -1
  335. package/dist-cjs/packages/grid/src/internal/LeftPart.js.map +0 -1
  336. package/dist-cjs/packages/grid/src/internal/MiddlePart.js.map +0 -1
  337. package/dist-cjs/packages/grid/src/internal/RightPart.js.map +0 -1
  338. package/dist-cjs/packages/grid/src/internal/Scrollable.js.map +0 -1
  339. package/dist-cjs/packages/grid/src/internal/TableBody.js.map +0 -1
  340. package/dist-cjs/packages/grid/src/internal/TableRow.css.js +0 -9
  341. package/dist-cjs/packages/grid/src/internal/TableRow.js.map +0 -1
  342. package/dist-cjs/packages/grid/src/internal/TopLeftPart.js.map +0 -1
  343. package/dist-cjs/packages/grid/src/internal/TopPart.js.map +0 -1
  344. package/dist-cjs/packages/grid/src/internal/TopRightPart.js.map +0 -1
  345. package/dist-cjs/packages/grid/src/internal/gridHooks.js.map +0 -1
  346. package/dist-es/node_modules/style-inject/dist/style-inject.es.js +0 -29
  347. package/dist-es/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  348. package/dist-es/packages/grid/src/BaseCell.css.js +0 -7
  349. package/dist-es/packages/grid/src/BaseCell.js.map +0 -1
  350. package/dist-es/packages/grid/src/CornerTag.js +0 -11
  351. package/dist-es/packages/grid/src/CornerTag.js.map +0 -1
  352. package/dist-es/packages/grid/src/DropdownCellEditor.js.map +0 -1
  353. package/dist-es/packages/grid/src/Grid.css.js +0 -7
  354. package/dist-es/packages/grid/src/Grid.js.map +0 -1
  355. package/dist-es/packages/grid/src/GridColumn.js.map +0 -1
  356. package/dist-es/packages/grid/src/GroupHeaderCell.js.map +0 -1
  357. package/dist-es/packages/grid/src/HeaderCell.css.js +0 -7
  358. package/dist-es/packages/grid/src/HeaderCell.js.map +0 -1
  359. package/dist-es/packages/grid/src/NumberRange.js.map +0 -1
  360. package/dist-es/packages/grid/src/NumericColumn.js.map +0 -1
  361. package/dist-es/packages/grid/src/RowSelectionCheckboxCellValue.js.map +0 -1
  362. package/dist-es/packages/grid/src/RowSelectionCheckboxColumn.js.map +0 -1
  363. package/dist-es/packages/grid/src/RowSelectionCheckboxHeaderCellValue.js.map +0 -1
  364. package/dist-es/packages/grid/src/RowSelectionRadioCellValue.js.map +0 -1
  365. package/dist-es/packages/grid/src/RowSelectionRadioColumn.js.map +0 -1
  366. package/dist-es/packages/grid/src/RowSelectionRadioHeaderCell.js.map +0 -1
  367. package/dist-es/packages/grid/src/TextCellEditor.js.map +0 -1
  368. package/dist-es/packages/grid/src/internal/Cell.css.js +0 -7
  369. package/dist-es/packages/grid/src/internal/Cell.js.map +0 -1
  370. package/dist-es/packages/grid/src/internal/CellMeasure.js.map +0 -1
  371. package/dist-es/packages/grid/src/internal/ColumnDropTarget.js.map +0 -1
  372. package/dist-es/packages/grid/src/internal/ColumnGhost.js.map +0 -1
  373. package/dist-es/packages/grid/src/internal/Cursor.js.map +0 -1
  374. package/dist-es/packages/grid/src/internal/DefaultCellValue.js.map +0 -1
  375. package/dist-es/packages/grid/src/internal/FakeCell.js.map +0 -1
  376. package/dist-es/packages/grid/src/internal/GroupHeaderRow.js.map +0 -1
  377. package/dist-es/packages/grid/src/internal/HeaderRow.js.map +0 -1
  378. package/dist-es/packages/grid/src/internal/LeftPart.js.map +0 -1
  379. package/dist-es/packages/grid/src/internal/MiddlePart.js.map +0 -1
  380. package/dist-es/packages/grid/src/internal/RightPart.js.map +0 -1
  381. package/dist-es/packages/grid/src/internal/Scrollable.js.map +0 -1
  382. package/dist-es/packages/grid/src/internal/TableBody.js.map +0 -1
  383. package/dist-es/packages/grid/src/internal/TableRow.css.js +0 -7
  384. package/dist-es/packages/grid/src/internal/TableRow.js.map +0 -1
  385. package/dist-es/packages/grid/src/internal/TopLeftPart.js.map +0 -1
  386. package/dist-es/packages/grid/src/internal/TopPart.js.map +0 -1
  387. package/dist-es/packages/grid/src/internal/TopRightPart.js.map +0 -1
  388. package/dist-es/packages/grid/src/internal/gridHooks.js.map +0 -1
  389. package/dist-cjs/{packages/grid/src/CellEditor.js → CellEditor.js} +0 -0
  390. package/dist-cjs/{packages/grid/src/CellEditor.js.map → CellEditor.js.map} +0 -0
  391. package/dist-cjs/{packages/grid/src/ColumnDataContext.js → ColumnDataContext.js} +0 -0
  392. package/dist-cjs/{packages/grid/src/ColumnDataContext.js.map → ColumnDataContext.js.map} +0 -0
  393. package/dist-cjs/{packages/grid/src/ColumnDragContext.js → ColumnDragContext.js} +0 -0
  394. package/dist-cjs/{packages/grid/src/ColumnDragContext.js.map → ColumnDragContext.js.map} +0 -0
  395. package/dist-cjs/{packages/grid/src/ColumnGroup.js → ColumnGroup.js} +0 -0
  396. package/dist-cjs/{packages/grid/src/ColumnGroup.js.map → ColumnGroup.js.map} +0 -0
  397. package/dist-cjs/{packages/grid/src/CursorContext.js → CursorContext.js} +0 -0
  398. package/dist-cjs/{packages/grid/src/CursorContext.js.map → CursorContext.js.map} +0 -0
  399. package/dist-cjs/{packages/grid/src/EditorContext.js → EditorContext.js} +0 -0
  400. package/dist-cjs/{packages/grid/src/EditorContext.js.map → EditorContext.js.map} +0 -0
  401. package/dist-cjs/{packages/grid/src/GridColumn.js → GridColumn.js} +1 -1
  402. package/dist-cjs/{packages/grid/src/GridContext.js → GridContext.js} +0 -0
  403. package/dist-cjs/{packages/grid/src/GridContext.js.map → GridContext.js.map} +0 -0
  404. package/dist-cjs/{packages/grid/src/GroupHeaderCellValue.js → GroupHeaderCellValue.js} +0 -0
  405. package/dist-cjs/{packages/grid/src/GroupHeaderCellValue.js.map → GroupHeaderCellValue.js.map} +0 -0
  406. package/dist-cjs/{packages/grid/src/HeaderCellValue.js → HeaderCellValue.js} +0 -0
  407. package/dist-cjs/{packages/grid/src/HeaderCellValue.js.map → HeaderCellValue.js.map} +0 -0
  408. package/dist-cjs/{packages/grid/src/LayoutContext.js → LayoutContext.js} +0 -0
  409. package/dist-cjs/{packages/grid/src/LayoutContext.js.map → LayoutContext.js.map} +0 -0
  410. package/dist-cjs/{packages/grid/src/NumberRange.js → NumberRange.js} +0 -0
  411. package/dist-cjs/{packages/grid/src/SelectionContext.js → SelectionContext.js} +0 -0
  412. package/dist-cjs/{packages/grid/src/SelectionContext.js.map → SelectionContext.js.map} +0 -0
  413. package/dist-cjs/{packages/grid/src/SizingContext.js → SizingContext.js} +0 -0
  414. package/dist-cjs/{packages/grid/src/SizingContext.js.map → SizingContext.js.map} +0 -0
  415. package/dist-cjs/{packages/grid/src/internal → internal}/FakeGroupCell.js +0 -0
  416. package/dist-cjs/{packages/grid/src/internal → internal}/FakeGroupCell.js.map +0 -0
  417. package/dist-cjs/{packages/grid/src/internal → internal}/FakeHeaderCell.js +0 -0
  418. package/dist-cjs/{packages/grid/src/internal → internal}/FakeHeaderCell.js.map +0 -0
  419. package/dist-cjs/{packages/grid/src/internal → internal}/TableColGroup.js +0 -0
  420. package/dist-cjs/{packages/grid/src/internal → internal}/TableColGroup.js.map +0 -0
  421. package/dist-cjs/{packages/grid/src/internal → internal}/utils.js +0 -0
  422. package/dist-cjs/{packages/grid/src/internal → internal}/utils.js.map +0 -0
  423. package/dist-es/{packages/grid/src/CellEditor.js → CellEditor.js} +0 -0
  424. package/dist-es/{packages/grid/src/CellEditor.js.map → CellEditor.js.map} +0 -0
  425. package/dist-es/{packages/grid/src/ColumnDataContext.js → ColumnDataContext.js} +0 -0
  426. package/dist-es/{packages/grid/src/ColumnDataContext.js.map → ColumnDataContext.js.map} +0 -0
  427. package/dist-es/{packages/grid/src/ColumnDragContext.js → ColumnDragContext.js} +0 -0
  428. package/dist-es/{packages/grid/src/ColumnDragContext.js.map → ColumnDragContext.js.map} +0 -0
  429. package/dist-es/{packages/grid/src/ColumnGroup.js → ColumnGroup.js} +0 -0
  430. package/dist-es/{packages/grid/src/ColumnGroup.js.map → ColumnGroup.js.map} +0 -0
  431. package/dist-es/{packages/grid/src/CursorContext.js → CursorContext.js} +0 -0
  432. package/dist-es/{packages/grid/src/CursorContext.js.map → CursorContext.js.map} +0 -0
  433. package/dist-es/{packages/grid/src/EditorContext.js → EditorContext.js} +0 -0
  434. package/dist-es/{packages/grid/src/EditorContext.js.map → EditorContext.js.map} +0 -0
  435. package/dist-es/{packages/grid/src/GridColumn.js → GridColumn.js} +1 -1
  436. /package/dist-es/{packages/grid/src/GridContext.js → GridContext.js} +0 -0
  437. /package/dist-es/{packages/grid/src/GridContext.js.map → GridContext.js.map} +0 -0
  438. /package/dist-es/{packages/grid/src/GroupHeaderCellValue.js → GroupHeaderCellValue.js} +0 -0
  439. /package/dist-es/{packages/grid/src/GroupHeaderCellValue.js.map → GroupHeaderCellValue.js.map} +0 -0
  440. /package/dist-es/{packages/grid/src/HeaderCellValue.js → HeaderCellValue.js} +0 -0
  441. /package/dist-es/{packages/grid/src/HeaderCellValue.js.map → HeaderCellValue.js.map} +0 -0
  442. /package/dist-es/{packages/grid/src/LayoutContext.js → LayoutContext.js} +0 -0
  443. /package/dist-es/{packages/grid/src/LayoutContext.js.map → LayoutContext.js.map} +0 -0
  444. /package/dist-es/{packages/grid/src/NumberRange.js → NumberRange.js} +0 -0
  445. /package/dist-es/{packages/grid/src/SelectionContext.js → SelectionContext.js} +0 -0
  446. /package/dist-es/{packages/grid/src/SelectionContext.js.map → SelectionContext.js.map} +0 -0
  447. /package/dist-es/{packages/grid/src/SizingContext.js → SizingContext.js} +0 -0
  448. /package/dist-es/{packages/grid/src/SizingContext.js.map → SizingContext.js.map} +0 -0
  449. /package/dist-es/{packages/grid/src/index.js.map → index.js.map} +0 -0
  450. /package/dist-es/{packages/grid/src/internal → internal}/FakeGroupCell.js +0 -0
  451. /package/dist-es/{packages/grid/src/internal → internal}/FakeGroupCell.js.map +0 -0
  452. /package/dist-es/{packages/grid/src/internal → internal}/FakeHeaderCell.js +0 -0
  453. /package/dist-es/{packages/grid/src/internal → internal}/FakeHeaderCell.js.map +0 -0
  454. /package/dist-es/{packages/grid/src/internal → internal}/TableColGroup.js +0 -0
  455. /package/dist-es/{packages/grid/src/internal → internal}/TableColGroup.js.map +0 -0
  456. /package/dist-es/{packages/grid/src/internal → internal}/utils.js +0 -0
  457. /package/dist-es/{packages/grid/src/internal → internal}/utils.js.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowSelectionCheckboxHeaderCellValue.js","sources":["../src/RowSelectionCheckboxHeaderCellValue.tsx"],"sourcesContent":["import { KeyboardEventHandler, MouseEventHandler } from \"react\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { Checkbox } from \"@salt-ds/core\";\n\nimport { useSelectionContext } from \"./SelectionContext\";\nimport { GridHeaderValueProps } from \"./GridColumn\";\n\nimport checkboxCellCss from \"./CheckboxCell.css\";\n\nexport function RowSelectionCheckboxHeaderCellValue<T>(\n props: GridHeaderValueProps<T>\n) {\n const { isFocused } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-checkbox-cell\",\n css: checkboxCellCss,\n window: targetWindow,\n });\n\n const { selectAll, unselectAll, isAllSelected, isAnySelected } =\n useSelectionContext();\n\n const onMousedown: MouseEventHandler<HTMLDivElement> = (event) => {\n if (isAllSelected) {\n unselectAll();\n } else {\n selectAll();\n }\n };\n\n const onKeyDown: KeyboardEventHandler<HTMLDivElement> = (event) => {\n if (event.key === \" \") {\n if (isAllSelected) {\n unselectAll();\n } else {\n selectAll();\n }\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n return (\n <div\n onMouseDown={onMousedown}\n className=\"saltGridCheckboxContainer\"\n onKeyDown={onKeyDown}\n >\n <Checkbox\n data-testid=\"grid-row-select-all-checkbox\"\n inputProps={{\n \"aria-label\": \"Select All\",\n tabIndex: isFocused ? 0 : -1,\n }}\n checked={isAllSelected}\n indeterminate={!isAllSelected && isAnySelected}\n />\n </div>\n );\n}\n"],"names":["useWindow","useComponentCssInjection","checkboxCellCss","useSelectionContext","jsx","Checkbox"],"mappings":";;;;;;;;;;;AAUO,SAAS,oCACd,KACA,EAAA;AACA,EAAM,MAAA,EAAE,WAAc,GAAA,KAAA,CAAA;AAEtB,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,oBAAA;AAAA,IACR,GAAK,EAAAC,YAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,MAAM,EAAE,SAAW,EAAA,WAAA,EAAa,aAAe,EAAA,aAAA,KAC7CC,oCAAoB,EAAA,CAAA;AAEtB,EAAM,MAAA,WAAA,GAAiD,CAAC,KAAU,KAAA;AAChE,IAAA,IAAI,aAAe,EAAA;AACjB,MAAY,WAAA,EAAA,CAAA;AAAA,KACP,MAAA;AACL,MAAU,SAAA,EAAA,CAAA;AAAA,KACZ;AAAA,GACF,CAAA;AAEA,EAAM,MAAA,SAAA,GAAkD,CAAC,KAAU,KAAA;AACjE,IAAI,IAAA,KAAA,CAAM,QAAQ,GAAK,EAAA;AACrB,MAAA,IAAI,aAAe,EAAA;AACjB,QAAY,WAAA,EAAA,CAAA;AAAA,OACP,MAAA;AACL,QAAU,SAAA,EAAA,CAAA;AAAA,OACZ;AACA,MAAA,KAAA,CAAM,cAAe,EAAA,CAAA;AACrB,MAAA,KAAA,CAAM,eAAgB,EAAA,CAAA;AAAA,KACxB;AAAA,GACF,CAAA;AAEA,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,WAAa,EAAA,WAAA;AAAA,IACb,SAAU,EAAA,2BAAA;AAAA,IACV,SAAA;AAAA,IAEA,QAAC,kBAAAA,cAAA,CAAAC,aAAA,EAAA;AAAA,MACC,aAAY,EAAA,8BAAA;AAAA,MACZ,UAAY,EAAA;AAAA,QACV,YAAc,EAAA,YAAA;AAAA,QACd,QAAA,EAAU,YAAY,CAAI,GAAA,CAAA,CAAA;AAAA,OAC5B;AAAA,MACA,OAAS,EAAA,aAAA;AAAA,MACT,aAAA,EAAe,CAAC,aAAiB,IAAA,aAAA;AAAA,KACnC,CAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -4,11 +4,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var core = require('@salt-ds/core');
7
+ var window = require('@salt-ds/window');
8
+ var styles = require('@salt-ds/styles');
7
9
  var SelectionContext = require('./SelectionContext.js');
8
- require('./CheckboxCell.css.js');
10
+ var CheckboxCell = require('./CheckboxCell.css.js');
9
11
 
10
12
  function RowSelectionRadioCellValue(props) {
11
13
  const { row, isFocused } = props;
14
+ const targetWindow = window.useWindow();
15
+ styles.useComponentCssInjection({
16
+ testId: "salt-checkbox-cell",
17
+ css: CheckboxCell,
18
+ window: targetWindow
19
+ });
12
20
  const { selRowIdxs } = SelectionContext.useSelectionContext();
13
21
  const isSelected = selRowIdxs.has(row.index);
14
22
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowSelectionRadioCellValue.js","sources":["../src/RowSelectionRadioCellValue.tsx"],"sourcesContent":["import { RadioButton } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport { GridCellValueProps } from \"./GridColumn\";\nimport { useSelectionContext } from \"./SelectionContext\";\n\nimport checkboxCellCss from \"./CheckboxCell.css\";\n\nexport function RowSelectionRadioCellValue<T>(props: GridCellValueProps<T>) {\n const { row, isFocused } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-checkbox-cell\",\n css: checkboxCellCss,\n window: targetWindow,\n });\n\n const { selRowIdxs } = useSelectionContext();\n\n const isSelected = selRowIdxs.has(row.index);\n\n return (\n <div className=\"saltGridCheckboxContainer\">\n <RadioButton\n checked={isSelected}\n data-testid=\"grid-row-selection-radiobox\"\n tabIndex={isFocused ? 0 : -1}\n />\n </div>\n );\n}\n"],"names":["useWindow","useComponentCssInjection","checkboxCellCss","useSelectionContext","jsx","RadioButton"],"mappings":";;;;;;;;;;;AASO,SAAS,2BAA8B,KAA8B,EAAA;AAC1E,EAAM,MAAA,EAAE,GAAK,EAAA,SAAA,EAAc,GAAA,KAAA,CAAA;AAE3B,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,oBAAA;AAAA,IACR,GAAK,EAAAC,YAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,EAAE,UAAW,EAAA,GAAIC,oCAAoB,EAAA,CAAA;AAE3C,EAAA,MAAM,UAAa,GAAA,UAAA,CAAW,GAAI,CAAA,GAAA,CAAI,KAAK,CAAA,CAAA;AAE3C,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,2BAAA;AAAA,IACb,QAAC,kBAAAA,cAAA,CAAAC,gBAAA,EAAA;AAAA,MACC,OAAS,EAAA,UAAA;AAAA,MACT,aAAY,EAAA,6BAAA;AAAA,MACZ,QAAA,EAAU,YAAY,CAAI,GAAA,CAAA,CAAA;AAAA,KAC5B,CAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -7,16 +7,20 @@ var RowSelectionRadioCellValue = require('./RowSelectionRadioCellValue.js');
7
7
  var GridColumn = require('./GridColumn.js');
8
8
  var RowSelectionRadioHeaderCell = require('./RowSelectionRadioHeaderCell.js');
9
9
  var SelectionContext = require('./SelectionContext.js');
10
+ var react = require('react');
10
11
 
11
12
  function RowSelectionRadioColumn(props) {
12
13
  const { selectRows } = SelectionContext.useSelectionContext();
13
- const onKeyDown = (event, rowIndex) => {
14
- if (event.key === " ") {
15
- selectRows({ rowIndex });
16
- event.preventDefault();
17
- event.stopPropagation();
18
- }
19
- };
14
+ const onKeyDown = react.useCallback(
15
+ (event, rowIndex) => {
16
+ if (event.key === " ") {
17
+ selectRows({ rowIndex });
18
+ event.preventDefault();
19
+ event.stopPropagation();
20
+ }
21
+ },
22
+ [selectRows]
23
+ );
20
24
  return /* @__PURE__ */ jsxRuntime.jsx(GridColumn.GridColumn, {
21
25
  ...props,
22
26
  defaultWidth: 100,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowSelectionRadioColumn.js","sources":["../src/RowSelectionRadioColumn.tsx"],"sourcesContent":["import { RowSelectionRadioCellValue } from \"./RowSelectionRadioCellValue\";\nimport { GridColumn, GridColumnProps } from \"./GridColumn\";\nimport { RowSelectionRadioHeaderCell } from \"./RowSelectionRadioHeaderCell\";\nimport { useSelectionContext } from \"./SelectionContext\";\nimport { KeyboardEvent, useCallback } from \"react\";\n\nexport type RowSelectionRadioColumnProps<T> = Omit<\n GridColumnProps<T>,\n \"width\" | \"name\"\n>;\n\nexport function RowSelectionRadioColumn<T>(\n props: RowSelectionRadioColumnProps<T>\n) {\n const { selectRows } = useSelectionContext();\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>, rowIndex: number) => {\n if (event.key === \" \") {\n selectRows({ rowIndex });\n event.preventDefault();\n event.stopPropagation();\n }\n },\n [selectRows]\n );\n\n return (\n <GridColumn\n {...props}\n defaultWidth={100}\n headerComponent={RowSelectionRadioHeaderCell}\n cellValueComponent={RowSelectionRadioCellValue}\n onKeyDown={onKeyDown}\n />\n );\n}\n"],"names":["useSelectionContext","useCallback","jsx","GridColumn","RowSelectionRadioHeaderCell","RowSelectionRadioCellValue"],"mappings":";;;;;;;;;;;AAWO,SAAS,wBACd,KACA,EAAA;AACA,EAAM,MAAA,EAAE,UAAW,EAAA,GAAIA,oCAAoB,EAAA,CAAA;AAE3C,EAAA,MAAM,SAAY,GAAAC,iBAAA;AAAA,IAChB,CAAC,OAAsC,QAAqB,KAAA;AAC1D,MAAI,IAAA,KAAA,CAAM,QAAQ,GAAK,EAAA;AACrB,QAAW,UAAA,CAAA,EAAE,UAAU,CAAA,CAAA;AACvB,QAAA,KAAA,CAAM,cAAe,EAAA,CAAA;AACrB,QAAA,KAAA,CAAM,eAAgB,EAAA,CAAA;AAAA,OACxB;AAAA,KACF;AAAA,IACA,CAAC,UAAU,CAAA;AAAA,GACb,CAAA;AAEA,EAAA,uBACGC,cAAA,CAAAC,qBAAA,EAAA;AAAA,IACE,GAAG,KAAA;AAAA,IACJ,YAAc,EAAA,GAAA;AAAA,IACd,eAAiB,EAAAC,uDAAA;AAAA,IACjB,kBAAoB,EAAAC,qDAAA;AAAA,IACpB,SAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -3,12 +3,20 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- var HeaderCell = require('./HeaderCell.js');
7
- var core = require('@salt-ds/core');
8
- require('./CheckboxCell.css.js');
9
6
  var clsx = require('clsx');
7
+ var core = require('@salt-ds/core');
8
+ var window = require('@salt-ds/window');
9
+ var styles = require('@salt-ds/styles');
10
+ var HeaderCell = require('./HeaderCell.js');
11
+ var CheckboxCell = require('./CheckboxCell.css.js');
10
12
 
11
13
  function RowSelectionRadioHeaderCell(props) {
14
+ const targetWindow = window.useWindow();
15
+ styles.useComponentCssInjection({
16
+ testId: "salt-checkbox-cell",
17
+ css: CheckboxCell,
18
+ window: targetWindow
19
+ });
12
20
  return /* @__PURE__ */ jsxRuntime.jsx(HeaderCell.AutoSizeHeaderCell, {
13
21
  ...props,
14
22
  children: /* @__PURE__ */ jsxRuntime.jsx("div", {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowSelectionRadioHeaderCell.js","sources":["../src/RowSelectionRadioHeaderCell.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\n\nimport { RadioButtonIcon } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport { AutoSizeHeaderCell } from \"./HeaderCell\";\nimport { HeaderCellProps } from \"./GridColumn\";\n\nimport checkboxCellCss from \"./CheckboxCell.css\";\n\nexport function RowSelectionRadioHeaderCell<T>(props: HeaderCellProps<T>) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-checkbox-cell\",\n css: checkboxCellCss,\n window: targetWindow,\n });\n\n return (\n <AutoSizeHeaderCell {...props}>\n <div className={clsx(\"saltGridCheckboxContainer\", \"saltGrid-hidden\")}>\n <RadioButtonIcon />\n </div>\n </AutoSizeHeaderCell>\n );\n}\n"],"names":["useWindow","useComponentCssInjection","checkboxCellCss","jsx","AutoSizeHeaderCell","clsx","RadioButtonIcon"],"mappings":";;;;;;;;;;;;AAWO,SAAS,4BAA+B,KAA2B,EAAA;AACxE,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,oBAAA;AAAA,IACR,GAAK,EAAAC,YAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,uBACGC,cAAA,CAAAC,6BAAA,EAAA;AAAA,IAAoB,GAAG,KAAA;AAAA,IACtB,QAAC,kBAAAD,cAAA,CAAA,KAAA,EAAA;AAAA,MAAI,SAAA,EAAWE,SAAK,CAAA,2BAAA,EAA6B,iBAAiB,CAAA;AAAA,MACjE,yCAACC,oBAAgB,EAAA,EAAA,CAAA;AAAA,KACnB,CAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('react/jsx-runtime');
6
+ require('@salt-ds/core');
7
+ var react = require('react');
8
+ require('./GridContext.js');
9
+
10
+ const RowValidationStatusContext = react.createContext({});
11
+
12
+ exports.RowValidationStatusContext = RowValidationStatusContext;
13
+ //# sourceMappingURL=RowValidationStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RowValidationStatus.js","sources":["../src/RowValidationStatus.tsx"],"sourcesContent":["import { StatusIndicator } from \"@salt-ds/core\";\nimport { createContext, useContext } from \"react\";\nimport { CellValidationState, GridColumn, GridColumnProps } from \"./GridColumn\";\n\nexport const RowValidationStatusContext = createContext<{\n status?: CellValidationState;\n}>({});\n\nexport type RowValidationStatusColumnProps<T> = Omit<\n GridColumnProps<T>,\n \"width\" | \"name\"\n>;\n\nexport function RowValidationStatusColumn<T>(\n props: RowValidationStatusColumnProps<T>\n) {\n return (\n <GridColumn\n aria-label=\"Row status\"\n defaultWidth={30}\n cellValueComponent={RowValidationCell}\n {...props}\n />\n );\n}\n\nconst knownStatus = new Set([\"error\", \"warning\", \"success\"]);\n\nfunction RowValidationCell() {\n const rowValidationContext = useContext(RowValidationStatusContext);\n if (\n !rowValidationContext?.status ||\n !knownStatus.has(rowValidationContext.status)\n )\n return null;\n\n const validationStatus = rowValidationContext.status;\n\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: \"100%\",\n width: \"100%\",\n }}\n >\n <StatusIndicator\n aria-label={`Row ${validationStatus}`}\n status={validationStatus}\n />\n </div>\n );\n}\n"],"names":["createContext"],"mappings":";;;;;;;;;AAIa,MAAA,0BAAA,GAA6BA,mBAEvC,CAAA,EAAE;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridTextCellEditor {\n}\n\n.saltGridTextCellEditor-inputContainer {\n background: var(--grid-background);\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n box-sizing: border-box;\n border-style: var(--grid-cursor-border-style);\n border-width: var(--grid-cursor-border-width);\n border-color: var(--grid-cursor-borderColor);\n padding: 0;\n}\n\n.saltGridTextCellEditor input {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n outline: none;\n border: none;\n padding: 0 calc(var(--grid-padding) - 2px);\n font-size: var(--grid-fontSize);\n font-family: inherit;\n background: var(--grid-editableCell-background-active);\n color: var(--grid-editableCell-color-active);\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=TextCellEditor.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextCellEditor.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"TextCellEditor.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -4,8 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var react = require('react');
7
- require('./TextCellEditor.css.js');
8
7
  var core = require('@salt-ds/core');
8
+ var window = require('@salt-ds/window');
9
+ var styles = require('@salt-ds/styles');
9
10
  var EditorContext = require('./EditorContext.js');
10
11
  var CornerTag = require('./CornerTag.js');
11
12
  var Cell = require('./internal/Cell.js');
@@ -24,12 +25,18 @@ require('./NumberRange.js');
24
25
  require('./internal/TopLeftPart.js');
25
26
  require('./internal/TopPart.js');
26
27
  require('./internal/TopRightPart.js');
27
- require('./internal/FakeCell.css.js');
28
28
  require('./internal/DefaultCellValue.js');
29
+ var TextCellEditor$1 = require('./TextCellEditor.css.js');
29
30
 
30
31
  const withBaseName = core.makePrefixer("saltGridTextCellEditor");
31
32
  function TextCellEditor(props) {
32
33
  const { column, row } = props;
34
+ const targetWindow = window.useWindow();
35
+ styles.useComponentCssInjection({
36
+ testId: "salt-text-cell-editor",
37
+ css: TextCellEditor$1,
38
+ window: targetWindow
39
+ });
33
40
  const inputRef = react.useRef(null);
34
41
  const { endEditMode, cancelEditMode, initialText } = EditorContext.useEditorContext();
35
42
  const [editorText, setEditorText] = react.useState(
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextCellEditor.js","sources":["../src/TextCellEditor.tsx"],"sourcesContent":["import {\n ChangeEventHandler,\n KeyboardEventHandler,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport { useEditorContext } from \"./EditorContext\";\nimport { GridColumnModel, GridRowModel } from \"./Grid\";\nimport { CornerTag } from \"./CornerTag\";\nimport { Cell } from \"./internal\";\n\nimport textCellEditorCss from \"./TextCellEditor.css\";\n\nconst withBaseName = makePrefixer(\"saltGridTextCellEditor\");\n\nexport interface TextCellEditorProps<T> {\n row?: GridRowModel<T>;\n column?: GridColumnModel<T>;\n}\n\nexport function TextCellEditor<T>(props: TextCellEditorProps<T>) {\n const { column, row } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-text-cell-editor\",\n css: textCellEditorCss,\n window: targetWindow,\n });\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const { endEditMode, cancelEditMode, initialText } = useEditorContext();\n\n const [editorText, setEditorText] = useState<string>(\n initialText != null ? initialText : column!.info.props.getValue!(row!.data)\n );\n\n const initialSelectionRef = useRef(!!initialText);\n\n const onChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n setEditorText(e.target.value);\n };\n\n const onKeyDown: KeyboardEventHandler<HTMLInputElement> = (event) => {\n if (event.key === \"Enter\") {\n endEditMode(editorText);\n return;\n }\n if (event.key === \"Escape\") {\n cancelEditMode();\n return;\n }\n if (event.key === \"Tab\") {\n endEditMode(editorText);\n event.preventDefault();\n return;\n }\n event.stopPropagation();\n };\n\n useEffect(() => {\n if (inputRef.current && !initialSelectionRef.current) {\n inputRef.current.select();\n initialSelectionRef.current = true;\n }\n }, [inputRef.current]);\n\n useEffect(() => {\n const input = inputRef.current;\n const focusOut = (event: FocusEvent) => {\n if (!input?.contains(event.target as Node)) {\n endEditMode(editorText);\n }\n };\n\n // This uses the capture phase to detect clicks outside the input to avoid a race condition where the component gets unmounted when edit mode ends.\n document?.addEventListener(\"mousedown\", focusOut, true);\n\n return () => {\n document?.removeEventListener(\"mousedown\", focusOut, true);\n };\n }, [endEditMode, editorText]);\n\n return (\n <Cell separator={column?.separator} className={withBaseName()}>\n <div className={withBaseName(\"inputContainer\")}>\n <input\n data-testid=\"grid-cell-editor-input\"\n ref={inputRef}\n autoFocus={true}\n value={editorText}\n onChange={onChange}\n onKeyDown={onKeyDown}\n />\n </div>\n <CornerTag />\n </Cell>\n );\n}\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","textCellEditorCss","useRef","useEditorContext","useState","useEffect","jsxs","Cell","jsx","CornerTag"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAM,YAAA,GAAeA,kBAAa,wBAAwB,CAAA,CAAA;AAOnD,SAAS,eAAkB,KAA+B,EAAA;AAC/D,EAAM,MAAA,EAAE,MAAQ,EAAA,GAAA,EAAQ,GAAA,KAAA,CAAA;AAExB,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,uBAAA;AAAA,IACR,GAAK,EAAAC,gBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,QAAA,GAAWC,aAAyB,IAAI,CAAA,CAAA;AAE9C,EAAA,MAAM,EAAE,WAAA,EAAa,cAAgB,EAAA,WAAA,KAAgBC,8BAAiB,EAAA,CAAA;AAEtE,EAAM,MAAA,CAAC,UAAY,EAAA,aAAa,CAAI,GAAAC,cAAA;AAAA,IAClC,WAAA,IAAe,OAAO,WAAc,GAAA,MAAA,CAAQ,KAAK,KAAM,CAAA,QAAA,CAAU,IAAK,IAAI,CAAA;AAAA,GAC5E,CAAA;AAEA,EAAA,MAAM,mBAAsB,GAAAF,YAAA,CAAO,CAAC,CAAC,WAAW,CAAA,CAAA;AAEhD,EAAM,MAAA,QAAA,GAAiD,CAAC,CAAM,KAAA;AAC5D,IAAc,aAAA,CAAA,CAAA,CAAE,OAAO,KAAK,CAAA,CAAA;AAAA,GAC9B,CAAA;AAEA,EAAM,MAAA,SAAA,GAAoD,CAAC,KAAU,KAAA;AACnE,IAAI,IAAA,KAAA,CAAM,QAAQ,OAAS,EAAA;AACzB,MAAA,WAAA,CAAY,UAAU,CAAA,CAAA;AACtB,MAAA,OAAA;AAAA,KACF;AACA,IAAI,IAAA,KAAA,CAAM,QAAQ,QAAU,EAAA;AAC1B,MAAe,cAAA,EAAA,CAAA;AACf,MAAA,OAAA;AAAA,KACF;AACA,IAAI,IAAA,KAAA,CAAM,QAAQ,KAAO,EAAA;AACvB,MAAA,WAAA,CAAY,UAAU,CAAA,CAAA;AACtB,MAAA,KAAA,CAAM,cAAe,EAAA,CAAA;AACrB,MAAA,OAAA;AAAA,KACF;AACA,IAAA,KAAA,CAAM,eAAgB,EAAA,CAAA;AAAA,GACxB,CAAA;AAEA,EAAAG,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,QAAS,CAAA,OAAA,IAAW,CAAC,mBAAA,CAAoB,OAAS,EAAA;AACpD,MAAA,QAAA,CAAS,QAAQ,MAAO,EAAA,CAAA;AACxB,MAAA,mBAAA,CAAoB,OAAU,GAAA,IAAA,CAAA;AAAA,KAChC;AAAA,GACC,EAAA,CAAC,QAAS,CAAA,OAAO,CAAC,CAAA,CAAA;AAErB,EAAAA,eAAA,CAAU,MAAM;AACd,IAAA,MAAM,QAAQ,QAAS,CAAA,OAAA,CAAA;AACvB,IAAM,MAAA,QAAA,GAAW,CAAC,KAAsB,KAAA;AACtC,MAAA,IAAI,EAAC,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,QAAS,CAAA,KAAA,CAAM,MAAiB,CAAA,CAAA,EAAA;AAC1C,QAAA,WAAA,CAAY,UAAU,CAAA,CAAA;AAAA,OACxB;AAAA,KACF,CAAA;AAGA,IAAU,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,gBAAA,CAAiB,aAAa,QAAU,EAAA,IAAA,CAAA,CAAA;AAElD,IAAA,OAAO,MAAM;AACX,MAAU,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,mBAAA,CAAoB,aAAa,QAAU,EAAA,IAAA,CAAA,CAAA;AAAA,KACvD,CAAA;AAAA,GACC,EAAA,CAAC,WAAa,EAAA,UAAU,CAAC,CAAA,CAAA;AAE5B,EAAA,uBACGC,eAAA,CAAAC,SAAA,EAAA;AAAA,IAAK,WAAW,MAAQ,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,SAAA;AAAA,IAAW,WAAW,YAAa,EAAA;AAAA,IAC1D,QAAA,EAAA;AAAA,sBAACC,cAAA,CAAA,KAAA,EAAA;AAAA,QAAI,SAAA,EAAW,aAAa,gBAAgB,CAAA;AAAA,QAC3C,QAAC,kBAAAA,cAAA,CAAA,OAAA,EAAA;AAAA,UACC,aAAY,EAAA,wBAAA;AAAA,UACZ,GAAK,EAAA,QAAA;AAAA,UACL,SAAW,EAAA,IAAA;AAAA,UACX,KAAO,EAAA,UAAA;AAAA,UACP,QAAA;AAAA,UACA,SAAA;AAAA,SACF,CAAA;AAAA,OACF,CAAA;AAAA,qCACCC,mBAAU,EAAA,EAAA,CAAA;AAAA,KAAA;AAAA,GACb,CAAA,CAAA;AAEJ;;;;"}
@@ -47,6 +47,7 @@ exports.useSelectionContext = SelectionContext.useSelectionContext;
47
47
  exports.SizingContext = SizingContext.SizingContext;
48
48
  exports.useSizingContext = SizingContext.useSizingContext;
49
49
  exports.Grid = Grid.Grid;
50
+ exports.SortOrder = Grid.SortOrder;
50
51
  exports.GridColumn = GridColumn.GridColumn;
51
52
  exports.GridContext = GridContext.GridContext;
52
53
  exports.useGridContext = GridContext.useGridContext;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var css_248z = ".saltGridCell {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n\n white-space: nowrap;\n position: relative;\n font-size: var(--grid-fontSize);\n font-weight: normal;\n\n outline: 0;\n}\n\n.saltGridCell-selected {\n background: var(--grid-cell-background-selected);\n}\n\n.saltGridCell-rowSeparator {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n height: 1px;\n background-color: var(--grid-row-borderColor);\n}\n\n.saltGridCell-topSeparator {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n height: 1px;\n background-color: transparent;\n display: none;\n}\n\n.saltGridTableRow-first .saltGridCell-topSeparator {\n display: unset;\n}\n\n.saltGridCell-columnSeparator {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n width: 1px;\n background-color: var(--grid-row-background);\n}\n\n.saltGrid-columnSeparators .saltGridCell-regularSeparator .saltGridCell-columnSeparator {\n background-color: var(--grid-columnSeparator-color);\n}\n\n.saltGrid-columnSeparators .saltGridCell-pinnedSeparator .saltGridCell-columnSeparator {\n background-color: var(--grid-columnSeparator-color);\n}\n\n.saltGrid-pinnedSeparators .saltGridCell-pinnedSeparator .saltGridCell-columnSeparator {\n background-color: var(--grid-pinnedSeparator-color);\n}\n\n.saltGridTableRow-selected.saltGridTableRow-first .saltGridCell-topSeparator {\n background-color: var(--grid-row-borderColor);\n}\n\n.saltGridCell-body {\n box-sizing: border-box;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 1px;\n left: 0;\n background: var(--grid-row-background);\n border-right: solid 1px transparent;\n}\n\n.saltGridTableRow-first .saltGridCell-body {\n top: 1px;\n}\n";
4
+
5
+ module.exports = css_248z;
6
+ //# sourceMappingURL=Cell.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Cell.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"Cell.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -4,9 +4,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var core = require('@salt-ds/core');
7
+ var window = require('@salt-ds/window');
8
+ var styles = require('@salt-ds/styles');
7
9
  var react = require('react');
8
10
  var clsx = require('clsx');
9
- require('./Cell.css.js');
11
+ var Cell$1 = require('./Cell.css.js');
10
12
 
11
13
  const withBaseName = core.makePrefixer("saltGridCell");
12
14
  const Cell = react.forwardRef(
@@ -19,6 +21,12 @@ const Cell = react.forwardRef(
19
21
  className,
20
22
  ...tdProps
21
23
  } = props;
24
+ const targetWindow = window.useWindow();
25
+ styles.useComponentCssInjection({
26
+ testId: "salt-cell",
27
+ css: Cell$1,
28
+ window: targetWindow
29
+ });
22
30
  return /* @__PURE__ */ jsxRuntime.jsxs("td", {
23
31
  ref,
24
32
  className: clsx.clsx(
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cell.js","sources":["../src/internal/Cell.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { forwardRef, HTMLAttributes } from \"react\";\nimport { clsx } from \"clsx\";\n\nimport { ColumnSeparatorType } from \"../Grid\";\n\nimport cellCss from \"./Cell.css\";\n\nexport interface CellProps extends HTMLAttributes<HTMLTableCellElement> {\n isSelected?: boolean;\n isEditable?: boolean;\n separator?: ColumnSeparatorType;\n}\n\nconst withBaseName = makePrefixer(\"saltGridCell\");\n\nexport const Cell = forwardRef<HTMLTableCellElement, CellProps>(\n function CellFrame(props, ref) {\n const {\n children,\n separator,\n isSelected,\n isEditable,\n className,\n ...tdProps\n } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-cell\",\n css: cellCss,\n window: targetWindow,\n });\n\n return (\n <td\n ref={ref}\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"selected\")]: isSelected,\n [withBaseName(\"editable\")]: isEditable,\n [withBaseName(\"regularSeparator\")]:\n separator === \"regular\" || separator === \"groupEdge\",\n [withBaseName(\"pinnedSeparator\")]: separator === \"pinned\",\n },\n className\n )}\n {...tdProps}\n >\n <div className={withBaseName(\"body\")}>{props.children}</div>\n <div className={withBaseName(\"columnSeparator\")} />\n <div className={withBaseName(\"rowSeparator\")} />\n <div className={withBaseName(\"topSeparator\")} />\n </td>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","useWindow","useComponentCssInjection","cellCss","jsxs","clsx","jsx"],"mappings":";;;;;;;;;;;;AAgBA,MAAM,YAAA,GAAeA,kBAAa,cAAc,CAAA,CAAA;AAEzC,MAAM,IAAO,GAAAC,gBAAA;AAAA,EAClB,SAAS,SAAU,CAAA,KAAA,EAAO,GAAK,EAAA;AAC7B,IAAM,MAAA;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,MACG,GAAA,OAAA;AAAA,KACD,GAAA,KAAA,CAAA;AAEJ,IAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,IAAyBC,+BAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,WAAA;AAAA,MACR,GAAK,EAAAC,MAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,uBACGC,eAAA,CAAA,IAAA,EAAA;AAAA,MACC,GAAA;AAAA,MACA,SAAW,EAAAC,SAAA;AAAA,QACT,YAAa,EAAA;AAAA,QACb;AAAA,UACE,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,UAAA;AAAA,UAC5B,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,UAAA;AAAA,UAC5B,CAAC,YAAa,CAAA,kBAAkB,CAC9B,GAAA,SAAA,KAAc,aAAa,SAAc,KAAA,WAAA;AAAA,UAC3C,CAAC,YAAA,CAAa,iBAAiB,CAAA,GAAI,SAAc,KAAA,QAAA;AAAA,SACnD;AAAA,QACA,SAAA;AAAA,OACF;AAAA,MACC,GAAG,OAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAACC,cAAA,CAAA,KAAA,EAAA;AAAA,UAAI,SAAA,EAAW,aAAa,MAAM,CAAA;AAAA,UAAI,QAAM,EAAA,KAAA,CAAA,QAAA;AAAA,SAAS,CAAA;AAAA,wBACrDA,cAAA,CAAA,KAAA,EAAA;AAAA,UAAI,SAAA,EAAW,aAAa,iBAAiB,CAAA;AAAA,SAAG,CAAA;AAAA,wBAChDA,cAAA,CAAA,KAAA,EAAA;AAAA,UAAI,SAAA,EAAW,aAAa,cAAc,CAAA;AAAA,SAAG,CAAA;AAAA,wBAC7CA,cAAA,CAAA,KAAA,EAAA;AAAA,UAAI,SAAA,EAAW,aAAa,cAAc,CAAA;AAAA,SAAG,CAAA;AAAA,OAAA;AAAA,KAChD,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridCellMeasure {\n position: fixed;\n top: -1000px;\n left: 0;\n}\n\n.saltGridCellMeasure table {\n}\n\n.saltGridCellMeasure tr {\n height: var(--grid-row-height);\n}\n\n.saltGridCellMeasure th {\n box-sizing: border-box;\n overflow: hidden;\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=CellMeasure.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CellMeasure.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"CellMeasure.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -3,12 +3,20 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- require('./CellMeasure.css.js');
7
6
  var react = require('react');
8
7
  var core = require('@salt-ds/core');
8
+ var window = require('@salt-ds/window');
9
+ var styles = require('@salt-ds/styles');
10
+ var CellMeasure$1 = require('./CellMeasure.css.js');
9
11
 
10
12
  const withBaseName = core.makePrefixer("saltGridCellMeasure");
11
13
  function CellMeasure(props) {
14
+ const targetWindow = window.useWindow();
15
+ styles.useComponentCssInjection({
16
+ testId: "salt-cell-measure",
17
+ css: CellMeasure$1,
18
+ window: targetWindow
19
+ });
12
20
  const rowRef = react.useRef(null);
13
21
  const heightRef = react.useRef(-1);
14
22
  const { setRowHeight } = props;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellMeasure.js","sources":["../src/internal/CellMeasure.tsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport cellMeasureCss from \"./CellMeasure.css\";\n\nconst withBaseName = makePrefixer(\"saltGridCellMeasure\");\n\nexport interface CellMeasureProps<T> {\n setRowHeight: (rowHeight: number) => void;\n}\n\n// Renders a cell in invisible location, measures its height and provides it to\n// the grid.\nexport function CellMeasure<T>(props: CellMeasureProps<T>) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-cell-measure\",\n css: cellMeasureCss,\n window: targetWindow,\n });\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n const heightRef = useRef<number>(-1);\n\n const { setRowHeight } = props;\n\n useEffect(() => {\n if (rowRef.current) {\n const height = rowRef.current.getBoundingClientRect().height;\n if (heightRef.current !== height) {\n // console.log(`Row height changing to ${height}px`);\n heightRef.current = height;\n setRowHeight(height);\n }\n }\n });\n\n return (\n <div className={withBaseName()}>\n <table aria-hidden>\n <thead>\n <tr ref={rowRef}>\n <th>Invisible Cell</th>\n </tr>\n </thead>\n </table>\n </div>\n );\n}\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","cellMeasureCss","useRef","useEffect","jsx"],"mappings":";;;;;;;;;;;AAOA,MAAM,YAAA,GAAeA,kBAAa,qBAAqB,CAAA,CAAA;AAQhD,SAAS,YAAe,KAA4B,EAAA;AACzD,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,mBAAA;AAAA,IACR,GAAK,EAAAC,aAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,MAAA,GAASC,aAA4B,IAAI,CAAA,CAAA;AAC/C,EAAM,MAAA,SAAA,GAAYA,aAAe,CAAE,CAAA,CAAA,CAAA;AAEnC,EAAM,MAAA,EAAE,cAAiB,GAAA,KAAA,CAAA;AAEzB,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,OAAO,OAAS,EAAA;AAClB,MAAA,MAAM,MAAS,GAAA,MAAA,CAAO,OAAQ,CAAA,qBAAA,EAAwB,CAAA,MAAA,CAAA;AACtD,MAAI,IAAA,SAAA,CAAU,YAAY,MAAQ,EAAA;AAEhC,QAAA,SAAA,CAAU,OAAU,GAAA,MAAA,CAAA;AACpB,QAAA,YAAA,CAAa,MAAM,CAAA,CAAA;AAAA,OACrB;AAAA,KACF;AAAA,GACD,CAAA,CAAA;AAED,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,WAAW,YAAa,EAAA;AAAA,IAC3B,QAAC,kBAAAA,cAAA,CAAA,OAAA,EAAA;AAAA,MAAM,aAAW,EAAA,IAAA;AAAA,MAChB,QAAC,kBAAAA,cAAA,CAAA,OAAA,EAAA;AAAA,QACC,QAAC,kBAAAA,cAAA,CAAA,IAAA,EAAA;AAAA,UAAG,GAAK,EAAA,MAAA;AAAA,UACP,QAAC,kBAAAA,cAAA,CAAA,IAAA,EAAA;AAAA,YAAG,QAAA,EAAA,gBAAA;AAAA,WAAc,CAAA;AAAA,SACpB,CAAA;AAAA,OACF,CAAA;AAAA,KACF,CAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ const CellWarningIcon = /* @__PURE__ */ jsxRuntime.jsx("svg", {
8
+ "aria-hidden": true,
9
+ height: "1em",
10
+ viewBox: "0 0 10 8",
11
+ fill: "none",
12
+ xmlns: "http://www.w3.org/2000/svg",
13
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", {
14
+ d: "M4.6188 0L9.2376 8H0L4.6188 0Z"
15
+ })
16
+ });
17
+ const CellErrorIcon = /* @__PURE__ */ jsxRuntime.jsx("svg", {
18
+ "aria-hidden": true,
19
+ width: "1em",
20
+ height: "1em",
21
+ viewBox: "0 0 8 8",
22
+ fill: "none",
23
+ xmlns: "http://www.w3.org/2000/svg",
24
+ children: /* @__PURE__ */ jsxRuntime.jsx("circle", {
25
+ cx: "4",
26
+ cy: "4",
27
+ r: "4"
28
+ })
29
+ });
30
+ const CellSuccessIcon = /* @__PURE__ */ jsxRuntime.jsx("svg", {
31
+ xmlns: "http://www.w3.org/2000/svg",
32
+ width: "1em",
33
+ viewBox: "0 0 14 14",
34
+ fill: "none",
35
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", {
36
+ fillRule: "evenodd",
37
+ clipRule: "evenodd",
38
+ d: "M13.7668 2.63645L5.06034 12.0309L0.277532 7.56074L1.47248 6.28223L4.97136 9.55242L12.4832 1.4469L13.7668 2.63645Z",
39
+ fill: "#24874B"
40
+ })
41
+ });
42
+
43
+ exports.CellErrorIcon = CellErrorIcon;
44
+ exports.CellSuccessIcon = CellSuccessIcon;
45
+ exports.CellWarningIcon = CellWarningIcon;
46
+ //# sourceMappingURL=CellStatusIcons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellStatusIcons.js","sources":["../src/internal/CellStatusIcons.tsx"],"sourcesContent":["export const CellWarningIcon = (\n <svg\n aria-hidden\n height=\"1em\"\n viewBox=\"0 0 10 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M4.6188 0L9.2376 8H0L4.6188 0Z\" />\n </svg>\n);\n\nexport const CellErrorIcon = (\n <svg\n aria-hidden\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 8 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"4\" cy=\"4\" r=\"4\" />\n </svg>\n);\n\nexport const CellSuccessIcon = (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M13.7668 2.63645L5.06034 12.0309L0.277532 7.56074L1.47248 6.28223L4.97136 9.55242L12.4832 1.4469L13.7668 2.63645Z\"\n fill=\"#24874B\"\n />\n </svg>\n);\n"],"names":["jsx"],"mappings":";;;;;;AAAO,MAAM,kCACVA,cAAA,CAAA,KAAA,EAAA;AAAA,EACC,aAAW,EAAA,IAAA;AAAA,EACX,MAAO,EAAA,KAAA;AAAA,EACP,OAAQ,EAAA,UAAA;AAAA,EACR,IAAK,EAAA,MAAA;AAAA,EACL,KAAM,EAAA,4BAAA;AAAA,EAEN,QAAC,kBAAAA,cAAA,CAAA,MAAA,EAAA;AAAA,IAAK,CAAE,EAAA,gCAAA;AAAA,GAAiC,CAAA;AAAA,CAC3C,EAAA;AAGK,MAAM,gCACVA,cAAA,CAAA,KAAA,EAAA;AAAA,EACC,aAAW,EAAA,IAAA;AAAA,EACX,KAAM,EAAA,KAAA;AAAA,EACN,MAAO,EAAA,KAAA;AAAA,EACP,OAAQ,EAAA,SAAA;AAAA,EACR,IAAK,EAAA,MAAA;AAAA,EACL,KAAM,EAAA,4BAAA;AAAA,EAEN,QAAC,kBAAAA,cAAA,CAAA,QAAA,EAAA;AAAA,IAAO,EAAG,EAAA,GAAA;AAAA,IAAI,EAAG,EAAA,GAAA;AAAA,IAAI,CAAE,EAAA,GAAA;AAAA,GAAI,CAAA;AAAA,CAC9B,EAAA;AAGK,MAAM,kCACVA,cAAA,CAAA,KAAA,EAAA;AAAA,EACC,KAAM,EAAA,4BAAA;AAAA,EACN,KAAM,EAAA,KAAA;AAAA,EACN,OAAQ,EAAA,WAAA;AAAA,EACR,IAAK,EAAA,MAAA;AAAA,EAEL,QAAC,kBAAAA,cAAA,CAAA,MAAA,EAAA;AAAA,IACC,QAAS,EAAA,SAAA;AAAA,IACT,QAAS,EAAA,SAAA;AAAA,IACT,CAAE,EAAA,mHAAA;AAAA,IACF,IAAK,EAAA,SAAA;AAAA,GACP,CAAA;AAAA,CACF;;;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridColumnDropTarget {\n position: absolute;\n top: 0;\n bottom: 0;\n width: 3px;\n border: var(--grid-columnDropTarget-color);\n border-width: 0 1px 0 1px;\n border-style: solid;\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=ColumnDropTarget.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnDropTarget.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"ColumnDropTarget.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -4,11 +4,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var react = require('react');
7
- require('./ColumnDropTarget.css.js');
8
7
  var core = require('@salt-ds/core');
8
+ var window = require('@salt-ds/window');
9
+ var styles = require('@salt-ds/styles');
10
+ var ColumnDropTarget$1 = require('./ColumnDropTarget.css.js');
9
11
 
10
12
  const withBaseName = core.makePrefixer("saltGridColumnDropTarget");
11
13
  function ColumnDropTarget(props) {
14
+ const targetWindow = window.useWindow();
15
+ styles.useComponentCssInjection({
16
+ testId: "salt-column-drop-target",
17
+ css: ColumnDropTarget$1,
18
+ window: targetWindow
19
+ });
12
20
  const { x = 0 } = props;
13
21
  const style = react.useMemo(() => {
14
22
  return {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnDropTarget.js","sources":["../src/internal/ColumnDropTarget.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport columDropTargetCss from \"./ColumnDropTarget.css\";\n\nconst withBaseName = makePrefixer(\"saltGridColumnDropTarget\");\n\nexport interface ColumnDropTargetProps {\n x?: number;\n}\n\n// When the user drags a column, this component is used to show the potential\n// drop target. Experimental feature. No UX yet.\nexport function ColumnDropTarget(props: ColumnDropTargetProps) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-column-drop-target\",\n css: columDropTargetCss,\n window: targetWindow,\n });\n\n const { x = 0 } = props;\n\n const style = useMemo(() => {\n return {\n left: `${x - 2}px`,\n };\n }, [x]);\n\n if (props.x === undefined) {\n return null;\n }\n\n return <div className={withBaseName()} style={style} />;\n}\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","columDropTargetCss","useMemo","jsx"],"mappings":";;;;;;;;;;;AAOA,MAAM,YAAA,GAAeA,kBAAa,0BAA0B,CAAA,CAAA;AAQrD,SAAS,iBAAiB,KAA8B,EAAA;AAC7D,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,yBAAA;AAAA,IACR,GAAK,EAAAC,kBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,EAAE,CAAI,GAAA,CAAA,EAAM,GAAA,KAAA,CAAA;AAElB,EAAM,MAAA,KAAA,GAAQC,cAAQ,MAAM;AAC1B,IAAO,OAAA;AAAA,MACL,IAAA,EAAM,GAAG,CAAI,GAAA,CAAA,CAAA,EAAA,CAAA;AAAA,KACf,CAAA;AAAA,GACF,EAAG,CAAC,CAAC,CAAC,CAAA,CAAA;AAEN,EAAI,IAAA,KAAA,CAAM,MAAM,KAAW,CAAA,EAAA;AACzB,IAAO,OAAA,IAAA,CAAA;AAAA,GACT;AAEA,EAAA,uBAAQC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,WAAW,YAAa,EAAA;AAAA,IAAG,KAAA;AAAA,GAAc,CAAA,CAAA;AACvD;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridColumnGhost {\n background: var(--grid-background);\n position: absolute;\n border: solid var(--grid-columnGhost-borderWidth) var(--grid-columnGhost-borderColor);\n box-shadow: var(--grid-columnGhost-boxShadow);\n opacity: 0.85;\n}\n\n.saltGridColumnGhost table {\n table-layout: fixed;\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=ColumnGhost.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnGhost.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"ColumnGhost.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -3,14 +3,22 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- require('./ColumnGhost.css.js');
6
+ var window = require('@salt-ds/window');
7
+ var styles = require('@salt-ds/styles');
8
+ var core = require('@salt-ds/core');
7
9
  var TableColGroup = require('./TableColGroup.js');
8
10
  var HeaderRow = require('./HeaderRow.js');
9
11
  var TableBody = require('./TableBody.js');
10
- var core = require('@salt-ds/core');
12
+ var ColumnGhost$1 = require('./ColumnGhost.css.js');
11
13
 
12
14
  const withBaseName = core.makePrefixer("saltGridColumnGhost");
13
15
  function ColumnGhost(props) {
16
+ const targetWindow = window.useWindow();
17
+ styles.useComponentCssInjection({
18
+ testId: "salt-column-ghost",
19
+ css: ColumnGhost$1,
20
+ window: targetWindow
21
+ });
14
22
  if (!props.dragState) {
15
23
  return null;
16
24
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnGhost.js","sources":["../src/internal/ColumnGhost.tsx"],"sourcesContent":["import { CSSProperties } from \"react\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { makePrefixer } from \"@salt-ds/core\";\n\nimport { GridColumnModel, GridRowModel } from \"../Grid\";\n\nimport { TableColGroup } from \"./TableColGroup\";\nimport { HeaderRow } from \"./HeaderRow\";\nimport { TableBody } from \"./TableBody\";\nimport { ColumnDragState } from \"./gridHooks\";\n\nimport columnGhostCss from \"./ColumnGhost.css\";\n\nconst withBaseName = makePrefixer(\"saltGridColumnGhost\");\n\nexport interface ColumnGhostProps<T> {\n dragState?: ColumnDragState;\n columns: GridColumnModel<T>[];\n rows: GridRowModel<T>[];\n zebra?: boolean;\n}\n\n// When the user drags a column this component renders a partially transparent\n// copy of the dragged column.\nexport function ColumnGhost<T = any>(props: ColumnGhostProps<T>) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-column-ghost\",\n css: columnGhostCss,\n window: targetWindow,\n });\n\n if (!props.dragState) {\n return null;\n }\n\n const { columnIndex, x, y } = props.dragState;\n const { columns, rows, zebra } = props;\n const movingColumn = columns[columnIndex];\n\n const style: CSSProperties = {\n left: x,\n top: y,\n };\n\n return (\n <div className={withBaseName()} style={style}>\n <table aria-hidden>\n <TableColGroup columns={[movingColumn]} />\n <thead>\n <HeaderRow columns={[movingColumn]} />\n </thead>\n <TableBody\n columns={[movingColumn]}\n rows={rows}\n setHoverRowKey={() => {}}\n zebra={zebra}\n />\n </table>\n </div>\n );\n}\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","columnGhostCss","jsx","jsxs","TableColGroup","HeaderRow","TableBody"],"mappings":";;;;;;;;;;;;;AAcA,MAAM,YAAA,GAAeA,kBAAa,qBAAqB,CAAA,CAAA;AAWhD,SAAS,YAAqB,KAA4B,EAAA;AAC/D,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,mBAAA;AAAA,IACR,GAAK,EAAAC,aAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAI,IAAA,CAAC,MAAM,SAAW,EAAA;AACpB,IAAO,OAAA,IAAA,CAAA;AAAA,GACT;AAEA,EAAA,MAAM,EAAE,WAAA,EAAa,CAAG,EAAA,CAAA,KAAM,KAAM,CAAA,SAAA,CAAA;AACpC,EAAA,MAAM,EAAE,OAAA,EAAS,IAAM,EAAA,KAAA,EAAU,GAAA,KAAA,CAAA;AACjC,EAAA,MAAM,eAAe,OAAQ,CAAA,WAAA,CAAA,CAAA;AAE7B,EAAA,MAAM,KAAuB,GAAA;AAAA,IAC3B,IAAM,EAAA,CAAA;AAAA,IACN,GAAK,EAAA,CAAA;AAAA,GACP,CAAA;AAEA,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,WAAW,YAAa,EAAA;AAAA,IAAG,KAAA;AAAA,IAC9B,QAAC,kBAAAC,eAAA,CAAA,OAAA,EAAA;AAAA,MAAM,aAAW,EAAA,IAAA;AAAA,MAChB,QAAA,EAAA;AAAA,wBAACD,cAAA,CAAAE,2BAAA,EAAA;AAAA,UAAc,OAAA,EAAS,CAAC,YAAY,CAAA;AAAA,SAAG,CAAA;AAAA,wBACvCF,cAAA,CAAA,OAAA,EAAA;AAAA,UACC,QAAC,kBAAAA,cAAA,CAAAG,mBAAA,EAAA;AAAA,YAAU,OAAA,EAAS,CAAC,YAAY,CAAA;AAAA,WAAG,CAAA;AAAA,SACtC,CAAA;AAAA,wBACCH,cAAA,CAAAI,mBAAA,EAAA;AAAA,UACC,OAAA,EAAS,CAAC,YAAY,CAAA;AAAA,UACtB,IAAA;AAAA,UACA,gBAAgB,MAAM;AAAA,WAAC;AAAA,UACvB,KAAA;AAAA,SACF,CAAA;AAAA,OAAA;AAAA,KACF,CAAA;AAAA,GACF,CAAA,CAAA;AAEJ;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridCursor {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n pointer-events: none;\n}\n\n:focus .saltGridCursor {\n border-style: var(--grid-cursor-border-style);\n border-width: var(--grid-cursor-border-width);\n border-color: var(--grid-cursor-borderColor);\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=Cursor.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Cursor.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"Cursor.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -3,11 +3,19 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- require('./Cursor.css.js');
7
6
  var core = require('@salt-ds/core');
7
+ var window = require('@salt-ds/window');
8
+ var styles = require('@salt-ds/styles');
9
+ var Cursor$1 = require('./Cursor.css.js');
8
10
 
9
11
  const withBaseName = core.makePrefixer("saltGridCursor");
10
12
  function Cursor(props) {
13
+ const targetWindow = window.useWindow();
14
+ styles.useComponentCssInjection({
15
+ testId: "salt-cursor",
16
+ css: Cursor$1,
17
+ window: targetWindow
18
+ });
11
19
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
12
20
  className: withBaseName()
13
21
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cursor.js","sources":["../src/internal/Cursor.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport cursorCss from \"./Cursor.css\";\n\nconst withBaseName = makePrefixer(\"saltGridCursor\");\n\nexport interface CursorProps {}\n\n// This is probably obsolete. Cursor is rendered using cell borders now.\nexport function Cursor(props: CursorProps) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-cursor\",\n css: cursorCss,\n window: targetWindow,\n });\n\n return <div className={withBaseName()} />;\n}\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","cursorCss","jsx"],"mappings":";;;;;;;;;;AAMA,MAAM,YAAA,GAAeA,kBAAa,gBAAgB,CAAA,CAAA;AAK3C,SAAS,OAAO,KAAoB,EAAA;AACzC,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,aAAA;AAAA,IACR,GAAK,EAAAC,QAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,uBAAQC,cAAA,CAAA,KAAA,EAAA;AAAA,IAAI,WAAW,YAAa,EAAA;AAAA,GAAG,CAAA,CAAA;AACzC;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridDefaultCellValue {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: var(--grid-cell-padding);\n}\n\n.saltGridDefaultCellValue-alignRight {\n text-align: right;\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=DefaultCellValue.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultCellValue.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"DefaultCellValue.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -5,11 +5,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var core = require('@salt-ds/core');
7
7
  var clsx = require('clsx');
8
- require('./DefaultCellValue.css.js');
8
+ var window = require('@salt-ds/window');
9
+ var styles = require('@salt-ds/styles');
10
+ var DefaultCellValue$1 = require('./DefaultCellValue.css.js');
9
11
 
10
12
  const withBaseName = core.makePrefixer("saltGridDefaultCellValue");
11
13
  function DefaultCellValue(props) {
12
14
  const { value } = props;
15
+ const targetWindow = window.useWindow();
16
+ styles.useComponentCssInjection({
17
+ testId: "salt-default-cell-value",
18
+ css: DefaultCellValue$1,
19
+ window: targetWindow
20
+ });
13
21
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
14
22
  className: clsx.clsx(withBaseName(), {
15
23
  [withBaseName("alignRight")]: props.column.info.props.align === "right"
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultCellValue.js","sources":["../src/internal/DefaultCellValue.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\nimport { makePrefixer } from \"@salt-ds/core\";\nimport { clsx } from \"clsx\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport { GridCellValueProps } from \"../GridColumn\";\n\nimport defaultCellValueCss from \"./DefaultCellValue.css\";\n\nconst withBaseName = makePrefixer(\"saltGridDefaultCellValue\");\n\n// Default component for cell value wrappers. Rendered as a child of cell\n// components (<td>s)\nexport function DefaultCellValue<T>(props: GridCellValueProps<T>) {\n const { value } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-default-cell-value\",\n css: defaultCellValueCss,\n window: targetWindow,\n });\n\n return (\n <div\n className={clsx(withBaseName(), {\n [withBaseName(\"alignRight\")]: props.column.info.props.align === \"right\",\n })}\n >\n {value as ReactNode}\n </div>\n );\n}\n"],"names":["makePrefixer","useWindow","useComponentCssInjection","defaultCellValueCss","jsx","clsx"],"mappings":";;;;;;;;;;;AAUA,MAAM,YAAA,GAAeA,kBAAa,0BAA0B,CAAA,CAAA;AAIrD,SAAS,iBAAoB,KAA8B,EAAA;AAChE,EAAM,MAAA,EAAE,OAAU,GAAA,KAAA,CAAA;AAElB,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,yBAAA;AAAA,IACR,GAAK,EAAAC,kBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,IACC,SAAA,EAAWC,SAAK,CAAA,YAAA,EAAgB,EAAA;AAAA,MAC9B,CAAC,aAAa,YAAY,CAAA,GAAI,MAAM,MAAO,CAAA,IAAA,CAAK,MAAM,KAAU,KAAA,OAAA;AAAA,KACjE,CAAA;AAAA,IAEA,QAAA,EAAA,KAAA;AAAA,GACH,CAAA,CAAA;AAEJ;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridFakeCell {\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=FakeCell.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FakeCell.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"FakeCell.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -3,11 +3,19 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
- require('./FakeCell.css.js');
6
+ var window = require('@salt-ds/window');
7
+ var styles = require('@salt-ds/styles');
7
8
  var Cell = require('./Cell.js');
9
+ var FakeCell$1 = require('./FakeCell.css.js');
8
10
 
9
11
  function FakeCell(props) {
10
12
  const { row } = props;
13
+ const targetWindow = window.useWindow();
14
+ styles.useComponentCssInjection({
15
+ testId: "salt-fake-cell",
16
+ css: FakeCell$1,
17
+ window: targetWindow
18
+ });
11
19
  return /* @__PURE__ */ jsxRuntime.jsx(Cell.Cell, {
12
20
  className: "saltGridFakeCell",
13
21
  "data-row-index": row.index,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeCell.js","sources":["../src/internal/FakeCell.tsx"],"sourcesContent":["import { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport { GridCellProps } from \"../GridColumn\";\n\nimport { Cell } from \"./Cell\";\n\nimport fakeCellCss from \"./FakeCell.css\";\n\nexport type FakeCellProps<T> = Pick<GridCellProps<T>, \"row\">;\n\n// When there is unused space (total width of all columns is less than the\n// available client width of the grid) a column with fake cells is rendered to\n// fill this space. Zebra and row selection/hover highlighting is applied to\n// this column. Fake cells can't have keyboard focus or render any values.\nexport function FakeCell<T>(props: FakeCellProps<T>) {\n const { row } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-fake-cell\",\n css: fakeCellCss,\n window: targetWindow,\n });\n\n return (\n <Cell\n className=\"saltGridFakeCell\"\n data-row-index={row.index}\n data-column-index={-1}\n />\n );\n}\n"],"names":["useWindow","useComponentCssInjection","fakeCellCss","jsx","Cell"],"mappings":";;;;;;;;;;AAeO,SAAS,SAAY,KAAyB,EAAA;AACnD,EAAM,MAAA,EAAE,KAAQ,GAAA,KAAA,CAAA;AAEhB,EAAA,MAAM,eAAeA,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,gBAAA;AAAA,IACR,GAAK,EAAAC,UAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,uBACGC,cAAA,CAAAC,SAAA,EAAA;AAAA,IACC,SAAU,EAAA,kBAAA;AAAA,IACV,kBAAgB,GAAI,CAAA,KAAA;AAAA,IACpB,mBAAmB,EAAA,CAAA,CAAA;AAAA,GACrB,CAAA,CAAA;AAEJ;;;;"}
@@ -1,9 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var styleInject_es = require('../../../../node_modules/style-inject/dist/style-inject.es.js');
4
-
5
3
  var css_248z = ".saltGridGroupHeaderRow {\n height: var(--grid-row-height);\n}\n";
6
- styleInject_es(css_248z);
7
4
 
8
5
  module.exports = css_248z;
9
6
  //# sourceMappingURL=GroupHeaderRow.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GroupHeaderRow.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"GroupHeaderRow.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}