cx 23.4.2 → 23.4.4

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 (807) hide show
  1. package/LICENSE-THIRD-PARTY.md +91 -91
  2. package/LICENSE.md +7 -7
  3. package/README.md +46 -46
  4. package/dist/charts.js +362 -1149
  5. package/dist/data.js +159 -558
  6. package/dist/hooks.js +10 -21
  7. package/dist/manifest.js +805 -805
  8. package/dist/svg.js +89 -201
  9. package/dist/ui.js +463 -1256
  10. package/dist/util.js +115 -300
  11. package/dist/widgets.js +1990 -4623
  12. package/index.js +17 -17
  13. package/locale/de-de.js +69 -69
  14. package/locale/en-us.js +71 -71
  15. package/locale/es-es.js +69 -69
  16. package/locale/fr-fr.js +70 -70
  17. package/locale/nl-nl.js +75 -75
  18. package/locale/pt-pt.js +63 -63
  19. package/locale/sr-latn-ba.js +70 -70
  20. package/package.json +32 -30
  21. package/src/charts/Bar.d.ts +27 -27
  22. package/src/charts/Bar.js +89 -89
  23. package/src/charts/Bar.scss +26 -26
  24. package/src/charts/BarGraph.d.ts +16 -16
  25. package/src/charts/BarGraph.js +110 -110
  26. package/src/charts/BarGraph.scss +27 -27
  27. package/src/charts/BubbleGraph.js +92 -92
  28. package/src/charts/BubbleGraph.scss +29 -29
  29. package/src/charts/Chart.d.ts +12 -12
  30. package/src/charts/Chart.js +77 -77
  31. package/src/charts/ColorMap.d.ts +21 -21
  32. package/src/charts/ColorMap.js +98 -98
  33. package/src/charts/Column.d.ts +27 -27
  34. package/src/charts/Column.js +88 -88
  35. package/src/charts/Column.scss +26 -26
  36. package/src/charts/ColumnBarBase.d.ts +61 -61
  37. package/src/charts/ColumnBarBase.js +169 -169
  38. package/src/charts/ColumnBarGraphBase.d.ts +71 -71
  39. package/src/charts/ColumnBarGraphBase.js +119 -119
  40. package/src/charts/ColumnGraph.d.ts +19 -19
  41. package/src/charts/ColumnGraph.js +114 -114
  42. package/src/charts/ColumnGraph.scss +27 -27
  43. package/src/charts/Grid.js +5 -5
  44. package/src/charts/Gridlines.d.ts +24 -24
  45. package/src/charts/Gridlines.js +48 -48
  46. package/src/charts/Gridlines.scss +22 -22
  47. package/src/charts/Legend.d.ts +26 -26
  48. package/src/charts/Legend.js +142 -142
  49. package/src/charts/Legend.scss +41 -41
  50. package/src/charts/LegendEntry.d.ts +37 -37
  51. package/src/charts/LegendEntry.js +117 -117
  52. package/src/charts/LegendEntry.scss +30 -30
  53. package/src/charts/LineGraph.d.ts +92 -92
  54. package/src/charts/LineGraph.js +211 -211
  55. package/src/charts/LineGraph.scss +23 -23
  56. package/src/charts/Marker.d.ts +87 -87
  57. package/src/charts/Marker.js +287 -287
  58. package/src/charts/Marker.scss +41 -41
  59. package/src/charts/MarkerLine.d.ts +57 -57
  60. package/src/charts/MarkerLine.js +128 -128
  61. package/src/charts/MarkerLine.scss +17 -17
  62. package/src/charts/MouseTracker.d.ts +16 -16
  63. package/src/charts/MouseTracker.js +80 -80
  64. package/src/charts/Pie.js +8 -8
  65. package/src/charts/PieChart.d.ts +80 -80
  66. package/src/charts/PieChart.js +370 -370
  67. package/src/charts/PieChart.scss +26 -26
  68. package/src/charts/PieLabel.d.ts +26 -26
  69. package/src/charts/PieLabel.js +65 -65
  70. package/src/charts/PieLabelsContainer.d.ts +3 -3
  71. package/src/charts/PieLabelsContainer.js +55 -55
  72. package/src/charts/Range.d.ts +74 -74
  73. package/src/charts/Range.js +205 -205
  74. package/src/charts/Range.scss +18 -18
  75. package/src/charts/ScatterGraph.d.ts +65 -65
  76. package/src/charts/ScatterGraph.js +155 -155
  77. package/src/charts/ScatterGraph.scss +21 -21
  78. package/src/charts/axis/Axis.d.ts +82 -82
  79. package/src/charts/axis/Axis.js +222 -222
  80. package/src/charts/axis/Axis.scss +22 -22
  81. package/src/charts/axis/CategoryAxis.d.ts +21 -21
  82. package/src/charts/axis/CategoryAxis.js +224 -224
  83. package/src/charts/axis/CategoryAxis.scss +32 -32
  84. package/src/charts/axis/NumericAxis.d.ts +46 -46
  85. package/src/charts/axis/NumericAxis.js +347 -347
  86. package/src/charts/axis/NumericAxis.scss +32 -32
  87. package/src/charts/axis/Stack.d.ts +10 -10
  88. package/src/charts/axis/Stack.js +58 -58
  89. package/src/charts/axis/TimeAxis.d.ts +23 -23
  90. package/src/charts/axis/TimeAxis.js +510 -510
  91. package/src/charts/axis/TimeAxis.scss +32 -32
  92. package/src/charts/axis/index.d.ts +3 -3
  93. package/src/charts/axis/index.js +3 -3
  94. package/src/charts/axis/index.scss +5 -5
  95. package/src/charts/axis/variables.scss +2 -2
  96. package/src/charts/helpers/MinMaxFinder.d.ts +22 -22
  97. package/src/charts/helpers/MinMaxFinder.js +36 -36
  98. package/src/charts/helpers/PointReducer.d.ts +15 -15
  99. package/src/charts/helpers/PointReducer.js +39 -39
  100. package/src/charts/helpers/SnapPointFinder.d.ts +24 -24
  101. package/src/charts/helpers/SnapPointFinder.js +46 -46
  102. package/src/charts/helpers/ValueAtFinder.d.ts +16 -16
  103. package/src/charts/helpers/ValueAtFinder.js +41 -41
  104. package/src/charts/helpers/index.d.ts +4 -4
  105. package/src/charts/helpers/index.js +4 -4
  106. package/src/charts/index.d.ts +23 -23
  107. package/src/charts/index.js +31 -31
  108. package/src/charts/index.scss +20 -20
  109. package/src/charts/palette.scss +95 -95
  110. package/src/charts/shapes.d.ts +22 -22
  111. package/src/charts/shapes.js +79 -79
  112. package/src/charts/variables.scss +14 -14
  113. package/src/core.d.ts +270 -270
  114. package/src/data/AggregateFunction.d.ts +17 -17
  115. package/src/data/AggregateFunction.js +148 -148
  116. package/src/data/ArrayElementView.d.ts +13 -13
  117. package/src/data/ArrayElementView.js +46 -46
  118. package/src/data/ArrayElementView.spec.js +70 -70
  119. package/src/data/ArrayRef.d.ts +14 -14
  120. package/src/data/ArrayRef.js +34 -34
  121. package/src/data/AugmentedViewBase.d.ts +18 -18
  122. package/src/data/AugmentedViewBase.js +67 -67
  123. package/src/data/Binding.d.ts +17 -17
  124. package/src/data/Binding.js +86 -76
  125. package/src/data/Binding.spec.js +51 -61
  126. package/src/data/ExposedRecordView.d.ts +14 -14
  127. package/src/data/ExposedRecordView.js +69 -69
  128. package/src/data/ExposedValueView.d.ts +19 -19
  129. package/src/data/ExposedValueView.js +72 -72
  130. package/src/data/Expression.d.ts +16 -16
  131. package/src/data/Expression.js +211 -211
  132. package/src/data/Expression.spec.js +164 -164
  133. package/src/data/Grouper.d.ts +21 -21
  134. package/src/data/Grouper.js +120 -120
  135. package/src/data/Grouper.spec.js +22 -22
  136. package/src/data/NestedDataView.d.ts +19 -19
  137. package/src/data/NestedDataView.js +22 -22
  138. package/src/data/ReadOnlyDataView.d.ts +14 -14
  139. package/src/data/ReadOnlyDataView.js +26 -26
  140. package/src/data/Ref.d.ts +24 -24
  141. package/src/data/Ref.js +79 -79
  142. package/src/data/Ref.spec.js +79 -79
  143. package/src/data/Store.d.ts +14 -14
  144. package/src/data/Store.js +46 -46
  145. package/src/data/Store.spec.js +22 -22
  146. package/src/data/StoreProxy.d.ts +4 -4
  147. package/src/data/StoreProxy.js +16 -16
  148. package/src/data/StoreRef.js +54 -54
  149. package/src/data/StoreRef.spec.js +24 -24
  150. package/src/data/StringTemplate.d.ts +13 -13
  151. package/src/data/StringTemplate.js +85 -85
  152. package/src/data/StringTemplate.spec.js +95 -95
  153. package/src/data/StructuredDataAccessor.d.ts +7 -7
  154. package/src/data/StructuredSelector.d.ts +17 -17
  155. package/src/data/StructuredSelector.js +131 -131
  156. package/src/data/StructuredSelector.spec.js +113 -113
  157. package/src/data/SubscribableView.d.ts +11 -11
  158. package/src/data/SubscribableView.js +54 -54
  159. package/src/data/View.d.ts +131 -131
  160. package/src/data/View.js +182 -182
  161. package/src/data/View.spec.js +60 -60
  162. package/src/data/ZoomIntoPropertyView.d.ts +11 -11
  163. package/src/data/ZoomIntoPropertyView.js +33 -33
  164. package/src/data/ZoomIntoPropertyView.spec.js +65 -65
  165. package/src/data/comparer.d.ts +7 -7
  166. package/src/data/comparer.js +54 -54
  167. package/src/data/comparer.spec.js +60 -60
  168. package/src/data/computable.d.ts +125 -125
  169. package/src/data/computable.js +56 -56
  170. package/src/data/computable.spec.js +55 -55
  171. package/src/data/createAccessorModelProxy.d.ts +6 -6
  172. package/src/data/createAccessorModelProxy.js +43 -43
  173. package/src/data/createAccessorModelProxy.spec.tsx +38 -44
  174. package/src/data/createStructuredSelector.d.ts +2 -2
  175. package/src/data/createStructuredSelector.js +43 -43
  176. package/src/data/createStructuredSelector.spec.js +46 -46
  177. package/src/data/defaultCompare.js +14 -14
  178. package/src/data/diff/diffArrays.d.ts +15 -15
  179. package/src/data/diff/diffArrays.js +41 -41
  180. package/src/data/diff/diffs.spec.js +49 -49
  181. package/src/data/diff/index.d.ts +1 -1
  182. package/src/data/diff/index.js +1 -1
  183. package/src/data/enableFatArrowExpansion.d.ts +1 -1
  184. package/src/data/enableFatArrowExpansion.js +6 -6
  185. package/src/data/getAccessor.d.ts +8 -8
  186. package/src/data/getAccessor.js +61 -61
  187. package/src/data/getSelector.d.ts +3 -3
  188. package/src/data/getSelector.js +48 -48
  189. package/src/data/getSelector.spec.js +43 -43
  190. package/src/data/index.d.ts +30 -30
  191. package/src/data/index.js +28 -28
  192. package/src/data/isSelector.d.ts +1 -1
  193. package/src/data/isSelector.js +26 -26
  194. package/src/data/ops/append.d.ts +1 -1
  195. package/src/data/ops/append.js +7 -7
  196. package/src/data/ops/append.spec.js +28 -28
  197. package/src/data/ops/filter.d.ts +1 -1
  198. package/src/data/ops/filter.js +8 -8
  199. package/src/data/ops/filter.spec.js +29 -29
  200. package/src/data/ops/findTreeNode.d.ts +1 -1
  201. package/src/data/ops/findTreeNode.js +15 -15
  202. package/src/data/ops/findTreeNode.spec.js +24 -24
  203. package/src/data/ops/findTreePath.d.ts +6 -6
  204. package/src/data/ops/findTreePath.js +16 -16
  205. package/src/data/ops/index.d.ts +10 -10
  206. package/src/data/ops/index.js +11 -11
  207. package/src/data/ops/insertElement.d.ts +1 -1
  208. package/src/data/ops/insertElement.js +2 -2
  209. package/src/data/ops/merge.d.ts +3 -3
  210. package/src/data/ops/merge.js +9 -9
  211. package/src/data/ops/merge.spec.js +27 -27
  212. package/src/data/ops/moveElement.d.ts +1 -1
  213. package/src/data/ops/moveElement.js +13 -13
  214. package/src/data/ops/removeTreeNodes.d.ts +5 -5
  215. package/src/data/ops/removeTreeNodes.js +5 -5
  216. package/src/data/ops/removeTreeNodes.spec.js +28 -28
  217. package/src/data/ops/updateArray.d.ts +5 -5
  218. package/src/data/ops/updateArray.js +24 -24
  219. package/src/data/ops/updateArray.spec.js +38 -38
  220. package/src/data/ops/updateTree.d.ts +7 -7
  221. package/src/data/ops/updateTree.js +25 -25
  222. package/src/data/ops/updateTree.spec.js +34 -34
  223. package/src/global.scss +13 -13
  224. package/src/hooks/createLocalStorageRef.d.ts +2 -2
  225. package/src/hooks/createLocalStorageRef.js +22 -22
  226. package/src/hooks/index.d.ts +8 -8
  227. package/src/hooks/index.js +7 -7
  228. package/src/hooks/invokeCallback.d.ts +5 -5
  229. package/src/hooks/invokeCallback.js +6 -6
  230. package/src/hooks/invokeCallback.spec.js +53 -53
  231. package/src/hooks/resolveCallback.d.ts +3 -3
  232. package/src/hooks/resolveCallback.js +11 -11
  233. package/src/hooks/resolveCallback.spec.js +54 -54
  234. package/src/hooks/store.d.ts +7 -7
  235. package/src/hooks/store.js +32 -32
  236. package/src/hooks/store.spec.js +73 -73
  237. package/src/hooks/useEffect.d.ts +2 -2
  238. package/src/hooks/useEffect.js +14 -14
  239. package/src/hooks/useInterval.js +7 -7
  240. package/src/hooks/useState.d.ts +2 -2
  241. package/src/hooks/useState.js +15 -15
  242. package/src/hooks/useTrigger.d.ts +4 -4
  243. package/src/hooks/useTrigger.js +20 -20
  244. package/src/hooks/useTrigger.spec.js +102 -102
  245. package/src/index.js +7 -7
  246. package/src/index.scss +6 -6
  247. package/src/svg/BoundedObject.d.ts +22 -22
  248. package/src/svg/BoundedObject.js +59 -59
  249. package/src/svg/ClipRect.d.ts +4 -4
  250. package/src/svg/ClipRect.js +23 -23
  251. package/src/svg/Ellipse.d.ts +23 -23
  252. package/src/svg/Ellipse.js +36 -36
  253. package/src/svg/Line.d.ts +20 -20
  254. package/src/svg/Line.js +32 -32
  255. package/src/svg/NonOverlappingRect.d.ts +5 -5
  256. package/src/svg/NonOverlappingRect.js +14 -14
  257. package/src/svg/NonOverlappingRectGroup.d.ts +3 -3
  258. package/src/svg/NonOverlappingRectGroup.js +36 -36
  259. package/src/svg/Rectangle.d.ts +23 -23
  260. package/src/svg/Rectangle.js +36 -36
  261. package/src/svg/Svg.d.ts +32 -32
  262. package/src/svg/Svg.js +177 -177
  263. package/src/svg/Svg.scss +26 -26
  264. package/src/svg/Text.d.ts +38 -38
  265. package/src/svg/Text.js +61 -61
  266. package/src/svg/TextualBoundedObject.d.ts +6 -6
  267. package/src/svg/TextualBoundedObject.js +28 -28
  268. package/src/svg/index.d.ts +11 -11
  269. package/src/svg/index.js +17 -17
  270. package/src/svg/index.scss +8 -8
  271. package/src/svg/util/Rect.d.ts +40 -40
  272. package/src/svg/util/Rect.js +108 -108
  273. package/src/ui/CSS.d.ts +19 -19
  274. package/src/ui/CSS.js +79 -79
  275. package/src/ui/CSSHelper.d.ts +10 -10
  276. package/src/ui/CSSHelper.js +17 -17
  277. package/src/ui/Container.d.ts +18 -18
  278. package/src/ui/Container.js +183 -183
  279. package/src/ui/ContentResolver.d.ts +12 -12
  280. package/src/ui/ContentResolver.js +78 -78
  281. package/src/ui/Controller.d.ts +180 -180
  282. package/src/ui/Controller.js +114 -114
  283. package/src/ui/Controller.spec.js +414 -414
  284. package/src/ui/Culture.d.ts +22 -22
  285. package/src/ui/Culture.js +65 -65
  286. package/src/ui/Cx.d.ts +18 -18
  287. package/src/ui/Cx.js +313 -313
  288. package/src/ui/Cx.spec.js +193 -193
  289. package/src/ui/DataProxy.d.ts +11 -11
  290. package/src/ui/DataProxy.js +44 -44
  291. package/src/ui/DataProxy.spec.js +335 -335
  292. package/src/ui/DetachedScope.d.ts +21 -21
  293. package/src/ui/DetachedScope.js +93 -93
  294. package/src/ui/FocusManager.d.ts +29 -29
  295. package/src/ui/FocusManager.js +171 -171
  296. package/src/ui/Format.d.ts +2 -2
  297. package/src/ui/Format.js +89 -89
  298. package/src/ui/HoverSync.d.ts +13 -13
  299. package/src/ui/HoverSync.js +147 -147
  300. package/src/ui/Instance.d.ts +69 -69
  301. package/src/ui/Instance.js +610 -610
  302. package/src/ui/IsolatedScope.d.ts +16 -16
  303. package/src/ui/IsolatedScope.js +29 -29
  304. package/src/ui/IsolatedScope.spec.js +62 -62
  305. package/src/ui/Localization.d.ts +17 -17
  306. package/src/ui/Localization.js +72 -72
  307. package/src/ui/PureContainer.d.ts +16 -16
  308. package/src/ui/PureContainer.js +7 -7
  309. package/src/ui/RenderingContext.d.ts +9 -9
  310. package/src/ui/RenderingContext.js +88 -88
  311. package/src/ui/Repeater.d.ts +52 -52
  312. package/src/ui/Repeater.js +98 -98
  313. package/src/ui/Repeater.spec.js +143 -143
  314. package/src/ui/Rescope.d.ts +10 -10
  315. package/src/ui/Rescope.js +31 -31
  316. package/src/ui/Rescope.spec.js +195 -195
  317. package/src/ui/ResizeManager.d.ts +9 -9
  318. package/src/ui/ResizeManager.js +30 -30
  319. package/src/ui/Restate.d.ts +15 -15
  320. package/src/ui/Restate.js +4 -1
  321. package/src/ui/Restate.spec.js +422 -422
  322. package/src/ui/StaticText.d.ts +8 -8
  323. package/src/ui/StaticText.js +9 -9
  324. package/src/ui/StructuredInstanceDataAccessor.d.ts +16 -16
  325. package/src/ui/StructuredInstanceDataAccessor.js +26 -26
  326. package/src/ui/Text.d.ts +10 -10
  327. package/src/ui/Text.js +27 -27
  328. package/src/ui/VDOM.d.ts +3 -3
  329. package/src/ui/VDOM.js +2 -2
  330. package/src/ui/Widget.d.ts +14 -14
  331. package/src/ui/Widget.js +200 -200
  332. package/src/ui/ZIndexManager.d.ts +7 -7
  333. package/src/ui/ZIndexManager.js +11 -11
  334. package/src/ui/adapter/ArrayAdapter.d.ts +17 -17
  335. package/src/ui/adapter/ArrayAdapter.js +142 -142
  336. package/src/ui/adapter/ArrayAdapter.spec.js +55 -55
  337. package/src/ui/adapter/DataAdapter.d.ts +28 -28
  338. package/src/ui/adapter/DataAdapter.js +19 -19
  339. package/src/ui/adapter/GroupAdapter.d.ts +4 -4
  340. package/src/ui/adapter/GroupAdapter.js +138 -138
  341. package/src/ui/adapter/TreeAdapter.d.ts +4 -4
  342. package/src/ui/adapter/TreeAdapter.js +100 -100
  343. package/src/ui/adapter/TreeAdapter.spec.js +67 -67
  344. package/src/ui/adapter/index.d.ts +4 -4
  345. package/src/ui/adapter/index.js +4 -4
  346. package/src/ui/app/History.d.ts +17 -17
  347. package/src/ui/app/History.js +114 -114
  348. package/src/ui/app/Url.d.ts +21 -21
  349. package/src/ui/app/Url.js +103 -103
  350. package/src/ui/app/Url.spec.js +51 -51
  351. package/src/ui/app/index.d.ts +4 -4
  352. package/src/ui/app/index.js +5 -5
  353. package/src/ui/app/startAppLoop.d.ts +3 -3
  354. package/src/ui/app/startAppLoop.js +57 -57
  355. package/src/ui/app/startHotAppLoop.d.ts +6 -6
  356. package/src/ui/app/startHotAppLoop.js +25 -25
  357. package/src/ui/batchUpdates.d.ts +10 -10
  358. package/src/ui/batchUpdates.js +67 -67
  359. package/src/ui/bind.d.ts +4 -4
  360. package/src/ui/bind.js +7 -7
  361. package/src/ui/createFunctionalComponent.d.ts +1 -1
  362. package/src/ui/createFunctionalComponent.js +68 -68
  363. package/src/ui/createFunctionalComponent.spec.js +400 -400
  364. package/src/ui/expr.d.ts +24 -24
  365. package/src/ui/expr.js +17 -17
  366. package/src/ui/flattenProps.js +21 -21
  367. package/src/ui/index.d.ts +42 -42
  368. package/src/ui/index.js +44 -44
  369. package/src/ui/index.scss +2 -2
  370. package/src/ui/keyboardShortcuts.d.ts +4 -4
  371. package/src/ui/keyboardShortcuts.js +32 -32
  372. package/src/ui/layout/Content.d.ts +14 -14
  373. package/src/ui/layout/Content.js +16 -16
  374. package/src/ui/layout/ContentPlaceholder.d.ts +17 -17
  375. package/src/ui/layout/ContentPlaceholder.js +79 -79
  376. package/src/ui/layout/ContentPlaceholder.spec.js +368 -368
  377. package/src/ui/layout/FirstVisibleChildLayout.d.ts +4 -4
  378. package/src/ui/layout/FirstVisibleChildLayout.js +65 -65
  379. package/src/ui/layout/FirstVisibleChildLayout.spec.js +196 -196
  380. package/src/ui/layout/LabelsLeftLayout.d.ts +11 -11
  381. package/src/ui/layout/LabelsLeftLayout.js +59 -59
  382. package/src/ui/layout/LabelsLeftLayout.scss +44 -44
  383. package/src/ui/layout/LabelsTopLayout.d.ts +15 -15
  384. package/src/ui/layout/LabelsTopLayout.js +134 -134
  385. package/src/ui/layout/LabelsTopLayout.scss +63 -63
  386. package/src/ui/layout/UseParentLayout.d.ts +4 -4
  387. package/src/ui/layout/UseParentLayout.js +6 -6
  388. package/src/ui/layout/exploreChildren.d.ts +14 -14
  389. package/src/ui/layout/exploreChildren.js +40 -40
  390. package/src/ui/layout/index.d.ts +10 -10
  391. package/src/ui/layout/index.js +10 -10
  392. package/src/ui/layout/index.scss +3 -3
  393. package/src/ui/layout/variables.scss +2 -2
  394. package/src/ui/selection/KeySelection.d.ts +17 -17
  395. package/src/ui/selection/KeySelection.js +129 -129
  396. package/src/ui/selection/PropertySelection.d.ts +17 -17
  397. package/src/ui/selection/PropertySelection.js +57 -57
  398. package/src/ui/selection/Selection.d.ts +27 -27
  399. package/src/ui/selection/Selection.js +93 -93
  400. package/src/ui/selection/index.d.ts +3 -3
  401. package/src/ui/selection/index.js +3 -3
  402. package/src/ui/tpl.d.ts +2 -2
  403. package/src/ui/tpl.js +4 -4
  404. package/src/ui/variables.scss +1 -1
  405. package/src/util/Component.d.ts +41 -41
  406. package/src/util/Component.js +107 -107
  407. package/src/util/Console.d.ts +9 -9
  408. package/src/util/Console.js +11 -11
  409. package/src/util/DOM.d.ts +33 -33
  410. package/src/util/DOM.js +72 -72
  411. package/src/util/Debug.d.ts +10 -10
  412. package/src/util/Debug.js +45 -45
  413. package/src/util/Format.d.ts +13 -13
  414. package/src/util/Format.js +241 -241
  415. package/src/util/Format.spec.js +69 -69
  416. package/src/util/GlobalCacheIdentifier.js +11 -11
  417. package/src/util/GlobalCacheldentifier.d.ts +6 -6
  418. package/src/util/KeyCode.d.ts +21 -21
  419. package/src/util/KeyCode.js +21 -21
  420. package/src/util/SubscriberList.d.ts +41 -41
  421. package/src/util/SubscriberList.js +57 -57
  422. package/src/util/Timing.d.ts +13 -13
  423. package/src/util/Timing.js +57 -57
  424. package/src/util/TraversalStack.js +42 -42
  425. package/src/util/TraversalStack.spec.js +46 -46
  426. package/src/util/addEventListenerWithOptions.d.ts +6 -6
  427. package/src/util/addEventListenerWithOptions.js +9 -9
  428. package/src/util/browserSupportsPassiveEventHandlers.d.ts +4 -4
  429. package/src/util/browserSupportsPassiveEventHandlers.js +18 -18
  430. package/src/util/calculateNaturalElementHeight.d.ts +1 -1
  431. package/src/util/calculateNaturalElementHeight.js +22 -22
  432. package/src/util/call-once.scss +6 -6
  433. package/src/util/coalesce.d.ts +1 -1
  434. package/src/util/coalesce.js +6 -6
  435. package/src/util/color/hslToRgb.d.ts +8 -8
  436. package/src/util/color/hslToRgb.js +27 -27
  437. package/src/util/color/index.d.ts +3 -3
  438. package/src/util/color/index.js +4 -4
  439. package/src/util/color/parseColor.d.ts +59 -59
  440. package/src/util/color/parseColor.js +119 -119
  441. package/src/util/color/rgbToHex.d.ts +8 -8
  442. package/src/util/color/rgbToHex.js +7 -7
  443. package/src/util/color/rgbToHsl.d.ts +8 -8
  444. package/src/util/color/rgbToHsl.js +27 -27
  445. package/src/util/date/dateDiff.d.ts +7 -7
  446. package/src/util/date/dateDiff.js +3 -3
  447. package/src/util/date/diff.d.ts +7 -7
  448. package/src/util/date/diff.js +7 -7
  449. package/src/util/date/encodeDateWithTimezoneOffset.js +18 -18
  450. package/src/util/date/index.d.ts +8 -8
  451. package/src/util/date/index.js +9 -9
  452. package/src/util/date/lowerBoundCheck.d.ts +7 -7
  453. package/src/util/date/lowerBoundCheck.js +6 -6
  454. package/src/util/date/maxDate.d.ts +5 -5
  455. package/src/util/date/maxDate.js +9 -9
  456. package/src/util/date/minDate.d.ts +5 -5
  457. package/src/util/date/minDate.js +9 -9
  458. package/src/util/date/monthStart.d.ts +5 -5
  459. package/src/util/date/monthStart.js +3 -3
  460. package/src/util/date/sameDate.d.ts +6 -6
  461. package/src/util/date/sameDate.js +5 -5
  462. package/src/util/date/upperBoundCheck.d.ts +7 -7
  463. package/src/util/date/upperBoundCheck.js +6 -6
  464. package/src/util/date/upperBoundCheck.spec.js +30 -30
  465. package/src/util/date/zeroTime.d.ts +6 -6
  466. package/src/util/date/zeroTime.js +3 -3
  467. package/src/util/debounce.d.ts +9 -9
  468. package/src/util/debounce.js +18 -18
  469. package/src/util/dummyCallback.d.ts +1 -1
  470. package/src/util/dummyCallback.js +1 -1
  471. package/src/util/escapeSpecialRegexCharacters.d.ts +6 -6
  472. package/src/util/escapeSpecialRegexCharacters.js +3 -3
  473. package/src/util/eventCallbacks.d.ts +4 -4
  474. package/src/util/eventCallbacks.js +2 -2
  475. package/src/util/expandFatArrows.js +118 -118
  476. package/src/util/findScrollableParent.js +16 -16
  477. package/src/util/getActiveElement.js +3 -3
  478. package/src/util/getParentFrameBoundingClientRect.js +18 -18
  479. package/src/util/getScrollerBoundingClientRect.js +21 -21
  480. package/src/util/getSearchQueryPredicate.js +58 -58
  481. package/src/util/getSearchQueryPredicate.spec.js +40 -40
  482. package/src/util/getTopLevelBoundingClientRect.js +13 -13
  483. package/src/util/getVendorPrefix.js +26 -26
  484. package/src/util/index.d.ts +50 -50
  485. package/src/util/index.js +52 -52
  486. package/src/util/index.scss +10 -10
  487. package/src/util/innerTextTrim.d.ts +6 -6
  488. package/src/util/innerTextTrim.js +5 -5
  489. package/src/util/isArray.d.ts +1 -1
  490. package/src/util/isArray.js +3 -3
  491. package/src/util/isDefined.js +3 -3
  492. package/src/util/isDigit.d.ts +6 -6
  493. package/src/util/isDigit.js +3 -3
  494. package/src/util/isFunction.d.ts +1 -1
  495. package/src/util/isFunction.js +3 -3
  496. package/src/util/isNonEmptyArray.d.ts +1 -1
  497. package/src/util/isNonEmptyArray.js +3 -3
  498. package/src/util/isNumber.d.ts +1 -1
  499. package/src/util/isNumber.js +3 -3
  500. package/src/util/isObject.d.ts +1 -1
  501. package/src/util/isObject.js +3 -3
  502. package/src/util/isPromise.d.ts +1 -1
  503. package/src/util/isPromise.js +6 -6
  504. package/src/util/isString.d.ts +1 -1
  505. package/src/util/isString.js +3 -3
  506. package/src/util/isTextInputElement.d.ts +1 -1
  507. package/src/util/isTextInputElement.js +2 -2
  508. package/src/util/isTouchDevice.d.ts +1 -1
  509. package/src/util/isTouchDevice.js +7 -7
  510. package/src/util/isTouchEvent.d.ts +3 -3
  511. package/src/util/isTouchEvent.js +64 -64
  512. package/src/util/isUndefined.d.ts +1 -1
  513. package/src/util/isUndefined.js +3 -3
  514. package/src/util/onIdleCallback.js +13 -13
  515. package/src/util/parseStyle.d.ts +3 -3
  516. package/src/util/parseStyle.js +27 -27
  517. package/src/util/quote.d.ts +2 -2
  518. package/src/util/quote.js +4 -4
  519. package/src/util/reverseSlice.js +9 -9
  520. package/src/util/routeAppend.js +15 -15
  521. package/src/util/routeAppend.spec.js +19 -19
  522. package/src/util/scrollElementIntoView.d.ts +7 -7
  523. package/src/util/scrollElementIntoView.js +34 -34
  524. package/src/util/scss/add-rules.scss +39 -39
  525. package/src/util/scss/calc.scss +40 -40
  526. package/src/util/scss/call-once.scss +10 -10
  527. package/src/util/scss/clockwise.scss +47 -47
  528. package/src/util/scss/colors.scss +7 -7
  529. package/src/util/scss/deep-get.scss +9 -9
  530. package/src/util/scss/deep-merge.scss +18 -18
  531. package/src/util/scss/divide.scss +3 -3
  532. package/src/util/scss/include.scss +47 -47
  533. package/src/util/scss/index.scss +9 -9
  534. package/src/util/shallowEquals.js +43 -43
  535. package/src/util/throttle.d.ts +8 -8
  536. package/src/util/throttle.js +14 -14
  537. package/src/util/validatedDebounce.js +19 -19
  538. package/src/variables.scss +217 -217
  539. package/src/widgets/AccessorBindings.spec.tsx +66 -66
  540. package/src/widgets/Button.d.ts +58 -58
  541. package/src/widgets/Button.js +118 -118
  542. package/src/widgets/Button.scss +117 -117
  543. package/src/widgets/Button.variables.scss +107 -107
  544. package/src/widgets/CxCredit.d.ts +12 -12
  545. package/src/widgets/CxCredit.js +31 -31
  546. package/src/widgets/CxCredit.scss +41 -41
  547. package/src/widgets/DocumentTitle.d.ts +11 -11
  548. package/src/widgets/DocumentTitle.js +68 -68
  549. package/src/widgets/FlexBox.d.ts +69 -69
  550. package/src/widgets/FlexBox.js +92 -92
  551. package/src/widgets/FlexBox.scss +146 -146
  552. package/src/widgets/Heading.d.ts +16 -16
  553. package/src/widgets/Heading.js +32 -32
  554. package/src/widgets/Heading.scss +38 -38
  555. package/src/widgets/HighlightedSearchText.d.ts +9 -9
  556. package/src/widgets/HighlightedSearchText.js +36 -36
  557. package/src/widgets/HighlightedSearchText.scss +18 -18
  558. package/src/widgets/HtmlElement.d.ts +26 -26
  559. package/src/widgets/HtmlElement.js +273 -273
  560. package/src/widgets/HtmlElement.spec.js +57 -57
  561. package/src/widgets/Icon.d.ts +34 -34
  562. package/src/widgets/Icon.js +50 -50
  563. package/src/widgets/Icon.scss +20 -20
  564. package/src/widgets/List.d.ts +95 -95
  565. package/src/widgets/List.js +587 -587
  566. package/src/widgets/List.scss +92 -92
  567. package/src/widgets/ProgressBar.d.ts +17 -17
  568. package/src/widgets/ProgressBar.js +46 -46
  569. package/src/widgets/ProgressBar.scss +49 -49
  570. package/src/widgets/Resizer.d.ts +27 -27
  571. package/src/widgets/Resizer.js +151 -151
  572. package/src/widgets/Resizer.scss +42 -42
  573. package/src/widgets/Sandbox.d.ts +16 -16
  574. package/src/widgets/Sandbox.js +62 -62
  575. package/src/widgets/Section.d.ts +52 -52
  576. package/src/widgets/Section.js +139 -139
  577. package/src/widgets/Section.scss +54 -54
  578. package/src/widgets/animations.scss +10 -10
  579. package/src/widgets/autoFocus.d.ts +1 -1
  580. package/src/widgets/autoFocus.js +9 -9
  581. package/src/widgets/cx.d.ts +1 -1
  582. package/src/widgets/cx.js +71 -71
  583. package/src/widgets/drag-drop/DragClone.scss +33 -33
  584. package/src/widgets/drag-drop/DragHandle.d.ts +10 -10
  585. package/src/widgets/drag-drop/DragHandle.js +37 -37
  586. package/src/widgets/drag-drop/DragHandle.scss +16 -16
  587. package/src/widgets/drag-drop/DragSource.d.ts +45 -45
  588. package/src/widgets/drag-drop/DragSource.js +160 -160
  589. package/src/widgets/drag-drop/DragSource.scss +24 -24
  590. package/src/widgets/drag-drop/DropZone.d.ts +98 -98
  591. package/src/widgets/drag-drop/DropZone.js +213 -213
  592. package/src/widgets/drag-drop/DropZone.scss +74 -74
  593. package/src/widgets/drag-drop/index.d.ts +4 -4
  594. package/src/widgets/drag-drop/index.js +4 -4
  595. package/src/widgets/drag-drop/index.scss +3 -3
  596. package/src/widgets/drag-drop/ops.d.ts +56 -56
  597. package/src/widgets/drag-drop/ops.js +344 -344
  598. package/src/widgets/drag-drop/variables.scss +11 -11
  599. package/src/widgets/enableAllInternalDependencies.d.ts +1 -1
  600. package/src/widgets/enableAllInternalDependencies.js +11 -11
  601. package/src/widgets/form/Calendar.d.ts +86 -86
  602. package/src/widgets/form/Calendar.js +527 -527
  603. package/src/widgets/form/Calendar.scss +164 -164
  604. package/src/widgets/form/Calendar.variables.scss +63 -63
  605. package/src/widgets/form/Checkbox.d.ts +43 -43
  606. package/src/widgets/form/Checkbox.js +200 -200
  607. package/src/widgets/form/Checkbox.scss +125 -125
  608. package/src/widgets/form/Checkbox.variables.scss +39 -39
  609. package/src/widgets/form/ColorField.d.ts +43 -43
  610. package/src/widgets/form/ColorField.js +392 -392
  611. package/src/widgets/form/ColorField.scss +92 -92
  612. package/src/widgets/form/ColorPicker.d.ts +23 -23
  613. package/src/widgets/form/ColorPicker.js +451 -451
  614. package/src/widgets/form/ColorPicker.scss +184 -184
  615. package/src/widgets/form/ColorPicker.variables.scss +20 -20
  616. package/src/widgets/form/DateField.d.ts +6 -6
  617. package/src/widgets/form/DateField.js +12 -12
  618. package/src/widgets/form/DateTimeField.d.ts +83 -83
  619. package/src/widgets/form/DateTimeField.js +571 -571
  620. package/src/widgets/form/DateTimeField.scss +90 -90
  621. package/src/widgets/form/DateTimePicker.js +391 -391
  622. package/src/widgets/form/DateTimePicker.scss +44 -44
  623. package/src/widgets/form/Field.d.ts +112 -112
  624. package/src/widgets/form/Field.js +419 -419
  625. package/src/widgets/form/Field.scss +162 -162
  626. package/src/widgets/form/FieldGroup.d.ts +6 -6
  627. package/src/widgets/form/FieldGroup.js +5 -5
  628. package/src/widgets/form/HelpText.d.ts +10 -10
  629. package/src/widgets/form/HelpText.js +9 -9
  630. package/src/widgets/form/HelpText.scss +23 -23
  631. package/src/widgets/form/Label.d.ts +25 -25
  632. package/src/widgets/form/Label.js +86 -86
  633. package/src/widgets/form/Label.scss +36 -36
  634. package/src/widgets/form/LabeledContainer.d.ts +17 -17
  635. package/src/widgets/form/LabeledContainer.js +59 -59
  636. package/src/widgets/form/LookupField.d.ts +171 -171
  637. package/src/widgets/form/LookupField.js +1126 -1126
  638. package/src/widgets/form/LookupField.scss +219 -219
  639. package/src/widgets/form/MonthField.d.ts +88 -88
  640. package/src/widgets/form/MonthField.js +512 -512
  641. package/src/widgets/form/MonthField.scss +99 -99
  642. package/src/widgets/form/MonthPicker.d.ts +68 -68
  643. package/src/widgets/form/MonthPicker.js +631 -631
  644. package/src/widgets/form/MonthPicker.scss +120 -120
  645. package/src/widgets/form/NumberField.d.ts +96 -96
  646. package/src/widgets/form/NumberField.js +459 -459
  647. package/src/widgets/form/NumberField.scss +65 -65
  648. package/src/widgets/form/Radio.d.ts +37 -37
  649. package/src/widgets/form/Radio.js +188 -188
  650. package/src/widgets/form/Radio.scss +122 -122
  651. package/src/widgets/form/Radio.variables.scss +45 -45
  652. package/src/widgets/form/Select.d.ts +73 -73
  653. package/src/widgets/form/Select.js +274 -274
  654. package/src/widgets/form/Select.scss +98 -98
  655. package/src/widgets/form/Slider.d.ts +65 -65
  656. package/src/widgets/form/Slider.js +351 -351
  657. package/src/widgets/form/Slider.scss +119 -119
  658. package/src/widgets/form/Switch.d.ts +38 -38
  659. package/src/widgets/form/Switch.js +118 -118
  660. package/src/widgets/form/Switch.scss +140 -140
  661. package/src/widgets/form/TextArea.d.ts +17 -17
  662. package/src/widgets/form/TextArea.js +182 -182
  663. package/src/widgets/form/TextArea.scss +60 -60
  664. package/src/widgets/form/TextField.d.ts +78 -78
  665. package/src/widgets/form/TextField.js +285 -285
  666. package/src/widgets/form/TextField.scss +55 -55
  667. package/src/widgets/form/TimeField.d.ts +6 -6
  668. package/src/widgets/form/TimeField.js +11 -11
  669. package/src/widgets/form/TimeList.js +84 -84
  670. package/src/widgets/form/UploadButton.d.ts +34 -34
  671. package/src/widgets/form/UploadButton.js +213 -213
  672. package/src/widgets/form/UploadButton.scss +47 -47
  673. package/src/widgets/form/ValidationError.d.ts +10 -10
  674. package/src/widgets/form/ValidationError.js +44 -44
  675. package/src/widgets/form/ValidationError.scss +21 -21
  676. package/src/widgets/form/ValidationGroup.d.ts +38 -38
  677. package/src/widgets/form/ValidationGroup.js +65 -65
  678. package/src/widgets/form/ValidationGroup.spec.js +148 -148
  679. package/src/widgets/form/Validator.d.ts +8 -8
  680. package/src/widgets/form/Validator.js +21 -21
  681. package/src/widgets/form/Wheel.js +261 -261
  682. package/src/widgets/form/Wheel.scss +150 -150
  683. package/src/widgets/form/index.d.ts +26 -26
  684. package/src/widgets/form/index.js +29 -29
  685. package/src/widgets/form/index.scss +24 -24
  686. package/src/widgets/form/variables.scss +352 -352
  687. package/src/widgets/grid/Grid.d.ts +403 -403
  688. package/src/widgets/grid/Grid.js +3255 -3255
  689. package/src/widgets/grid/Grid.scss +680 -680
  690. package/src/widgets/grid/GridCell.d.ts +29 -29
  691. package/src/widgets/grid/GridCell.js +70 -70
  692. package/src/widgets/grid/GridCellEditor.js +41 -41
  693. package/src/widgets/grid/GridRow.js +228 -228
  694. package/src/widgets/grid/GridRowLine.js +24 -24
  695. package/src/widgets/grid/Pagination.d.ts +14 -14
  696. package/src/widgets/grid/Pagination.js +94 -94
  697. package/src/widgets/grid/Pagination.scss +113 -113
  698. package/src/widgets/grid/TreeNode.d.ts +25 -25
  699. package/src/widgets/grid/TreeNode.js +102 -102
  700. package/src/widgets/grid/TreeNode.scss +89 -89
  701. package/src/widgets/grid/index.d.ts +3 -3
  702. package/src/widgets/grid/index.js +14 -14
  703. package/src/widgets/grid/index.scss +3 -3
  704. package/src/widgets/grid/variables.scss +88 -88
  705. package/src/widgets/icons/arrow-down.svg +3 -3
  706. package/src/widgets/icons/arrow-right.svg +2 -2
  707. package/src/widgets/icons/base.svg +104 -104
  708. package/src/widgets/icons/calendar-old.svg +169 -169
  709. package/src/widgets/icons/calendar.js +16 -16
  710. package/src/widgets/icons/calendar.svg +187 -187
  711. package/src/widgets/icons/check.js +12 -12
  712. package/src/widgets/icons/clear.js +14 -14
  713. package/src/widgets/icons/clear.svg +74 -74
  714. package/src/widgets/icons/close.js +19 -19
  715. package/src/widgets/icons/close.svg +74 -74
  716. package/src/widgets/icons/cx.js +37 -37
  717. package/src/widgets/icons/drop-down.js +14 -14
  718. package/src/widgets/icons/dropdown-arrow.svg +61 -61
  719. package/src/widgets/icons/file.js +12 -12
  720. package/src/widgets/icons/file.svg +4 -4
  721. package/src/widgets/icons/folder-open.js +14 -14
  722. package/src/widgets/icons/folder-open.svg +5 -5
  723. package/src/widgets/icons/folder.js +12 -12
  724. package/src/widgets/icons/folder.svg +58 -58
  725. package/src/widgets/icons/forward.js +21 -21
  726. package/src/widgets/icons/forward.svg +67 -67
  727. package/src/widgets/icons/index.js +14 -14
  728. package/src/widgets/icons/loading.js +23 -23
  729. package/src/widgets/icons/loading.svg +4 -4
  730. package/src/widgets/icons/menu.js +16 -16
  731. package/src/widgets/icons/registry.js +53 -53
  732. package/src/widgets/icons/search.js +12 -12
  733. package/src/widgets/icons/search.svg +107 -107
  734. package/src/widgets/icons/sort-asc.js +13 -13
  735. package/src/widgets/icons/sort-asc.svg +3 -3
  736. package/src/widgets/icons/square.js +17 -17
  737. package/src/widgets/index.d.ts +55 -55
  738. package/src/widgets/index.js +57 -57
  739. package/src/widgets/index.scss +16 -16
  740. package/src/widgets/nav/Link.d.ts +26 -26
  741. package/src/widgets/nav/Link.js +7 -7
  742. package/src/widgets/nav/Link.scss +18 -18
  743. package/src/widgets/nav/LinkButton.d.ts +31 -31
  744. package/src/widgets/nav/LinkButton.js +127 -127
  745. package/src/widgets/nav/Menu.d.ts +27 -27
  746. package/src/widgets/nav/Menu.js +406 -406
  747. package/src/widgets/nav/Menu.scss +74 -74
  748. package/src/widgets/nav/Menu.variables.scss +17 -17
  749. package/src/widgets/nav/MenuItem.d.ts +31 -31
  750. package/src/widgets/nav/MenuItem.js +445 -445
  751. package/src/widgets/nav/MenuItem.scss +128 -128
  752. package/src/widgets/nav/MenuSpacer.d.ts +5 -5
  753. package/src/widgets/nav/MenuSpacer.js +12 -12
  754. package/src/widgets/nav/RedirectRoute.d.ts +9 -9
  755. package/src/widgets/nav/RedirectRoute.js +40 -40
  756. package/src/widgets/nav/Route.d.ts +21 -21
  757. package/src/widgets/nav/Route.js +105 -105
  758. package/src/widgets/nav/Route.spec.js +27 -27
  759. package/src/widgets/nav/Scroller.d.ts +17 -17
  760. package/src/widgets/nav/Scroller.js +214 -214
  761. package/src/widgets/nav/Scroller.scss +146 -146
  762. package/src/widgets/nav/Submenu.d.ts +6 -6
  763. package/src/widgets/nav/Submenu.js +6 -6
  764. package/src/widgets/nav/Tab.d.ts +33 -33
  765. package/src/widgets/nav/Tab.js +82 -82
  766. package/src/widgets/nav/Tab.scss +81 -81
  767. package/src/widgets/nav/Tab.variables.scss +80 -80
  768. package/src/widgets/nav/cover.scss +21 -21
  769. package/src/widgets/nav/index.d.ts +10 -10
  770. package/src/widgets/nav/index.js +10 -10
  771. package/src/widgets/nav/index.scss +5 -5
  772. package/src/widgets/nav/variables.scss +25 -25
  773. package/src/widgets/overlay/ContextMenu.d.ts +10 -10
  774. package/src/widgets/overlay/ContextMenu.js +29 -29
  775. package/src/widgets/overlay/Dropdown.d.ts +31 -31
  776. package/src/widgets/overlay/Dropdown.js +612 -612
  777. package/src/widgets/overlay/Dropdown.scss +184 -184
  778. package/src/widgets/overlay/FlyweightTooltipTracker.d.ts +8 -8
  779. package/src/widgets/overlay/FlyweightTooltipTracker.js +36 -36
  780. package/src/widgets/overlay/MsgBox.d.ts +16 -16
  781. package/src/widgets/overlay/MsgBox.js +116 -116
  782. package/src/widgets/overlay/Overlay.d.ts +69 -69
  783. package/src/widgets/overlay/Overlay.js +747 -747
  784. package/src/widgets/overlay/Overlay.scss +66 -66
  785. package/src/widgets/overlay/Toast.d.ts +30 -30
  786. package/src/widgets/overlay/Toast.js +92 -92
  787. package/src/widgets/overlay/Toast.scss +162 -162
  788. package/src/widgets/overlay/Tooltip.d.ts +50 -50
  789. package/src/widgets/overlay/Tooltip.js +288 -288
  790. package/src/widgets/overlay/Tooltip.scss +175 -175
  791. package/src/widgets/overlay/Window.d.ts +39 -39
  792. package/src/widgets/overlay/Window.js +195 -195
  793. package/src/widgets/overlay/Window.scss +112 -112
  794. package/src/widgets/overlay/Window.variables.scss +67 -67
  795. package/src/widgets/overlay/alerts.d.ts +7 -7
  796. package/src/widgets/overlay/alerts.js +39 -39
  797. package/src/widgets/overlay/captureMouse.d.ts +53 -53
  798. package/src/widgets/overlay/captureMouse.js +132 -132
  799. package/src/widgets/overlay/captureMouse.scss +13 -13
  800. package/src/widgets/overlay/index.d.ts +10 -10
  801. package/src/widgets/overlay/index.js +10 -10
  802. package/src/widgets/overlay/index.scss +15 -15
  803. package/src/widgets/overlay/tooltip-ops.d.ts +8 -8
  804. package/src/widgets/overlay/tooltip-ops.js +24 -24
  805. package/src/widgets/overlay/variables.scss +82 -82
  806. package/src/widgets/variables.scss +144 -144
  807. package/dist/reset.js +0 -1
@@ -1,403 +1,403 @@
1
- import * as React from "react";
2
- import { Instance } from "../../ui/Instance";
3
- import { DragEvent } from "../drag-drop/ops";
4
- import { View } from "../../data/View";
5
- import {
6
- BooleanProp,
7
- ClassProp,
8
- CollatorOptions,
9
- Config,
10
- NumberProp,
11
- Prop,
12
- Record,
13
- RecordAlias,
14
- SortDirection,
15
- SortersProp,
16
- StringProp,
17
- StructuredProp,
18
- StyledContainerProps,
19
- StyleProp,
20
- Widget,
21
- } from "../../core";
22
- import { DataAdapterRecord } from "../../ui/adapter/DataAdapter";
23
-
24
- type FetchRecordsResult = Record[] | { records: Record[]; lastPage?: boolean; totalRecordCount?: number };
25
-
26
- interface MappedGridRecord {
27
- data: Record;
28
- store: View;
29
- }
30
-
31
- interface GridDragEvent extends DragEvent {
32
- target: {
33
- recordBefore: MappedGridRecord;
34
- recordAfter: MappedGridRecord;
35
- insertionIndex: number;
36
- totalRecordCount: number;
37
- };
38
- }
39
-
40
- interface GridRowDragEvent extends DragEvent {
41
- target: {
42
- record: MappedGridRecord;
43
- index: number;
44
- };
45
- }
46
-
47
- interface GridColumnDropEvent extends DragEvent {
48
- target: {
49
- grid: any;
50
- instance: Instance;
51
- index: number;
52
- };
53
- }
54
-
55
- interface GridGroupingKey {
56
- [key: string]:
57
- | Prop<any>
58
- | {
59
- value: Prop<any>;
60
- direction: SortDirection;
61
- };
62
- }
63
-
64
- type GridColumnAlignment = "left" | "right" | "center";
65
-
66
- interface GridGroupingConfig {
67
- key: GridGroupingKey;
68
- aggregates?: StructuredProp;
69
- showCaption?: boolean;
70
- showFooter?: boolean;
71
- showHeader?: boolean;
72
- caption?: StringProp;
73
- name?: StringProp;
74
- text?: StringProp;
75
- }
76
-
77
- // TODO: Check Column config
78
- // Props are in order based on docs
79
-
80
- interface GridColumnHeaderConfig {
81
- text?: StringProp;
82
- colSpan?: NumberProp;
83
- rowSpan?: NumberProp;
84
- align?: GridColumnAlignment;
85
- allowSorting?: boolean;
86
- items?: React.ReactNode;
87
- children?: React.ReactNode;
88
- tool?: React.ReactNode;
89
- style?: StyleProp;
90
- class?: ClassProp;
91
- className?: ClassProp;
92
- tooltip?: StringProp | StructuredProp;
93
- defaultWidth?: NumberProp;
94
- width?: NumberProp;
95
- resizable?: boolean;
96
- }
97
-
98
- interface GridColumnConfig {
99
- align?: GridColumnAlignment;
100
- field?: string;
101
- format?: StringProp;
102
- header?: StringProp | GridColumnHeaderConfig;
103
- header1?: StringProp | GridColumnHeaderConfig;
104
- header2?: StringProp | GridColumnHeaderConfig;
105
- header3?: StringProp | GridColumnHeaderConfig;
106
- fixed?: BooleanProp;
107
- sortable?: boolean;
108
- aggregate?: "min" | "max" | "count" | "sum" | "distinct" | "avg";
109
- aggregateAlias?: string;
110
- aggregateField?: string;
111
- caption?: StringProp;
112
- class?: ClassProp;
113
- className?: ClassProp;
114
- draggable?: boolean;
115
- editable?: boolean;
116
- editor?: React.ReactNode;
117
- footer?: StringProp | false;
118
- items?: React.ReactNode;
119
- children?: React.ReactNode;
120
- key?: string;
121
- pad?: boolean;
122
- sortField?: string;
123
- sortValue?: Prop<any>;
124
- style?: StyleProp;
125
- trimWhitespace?: boolean;
126
- visible?: BooleanProp;
127
- if?: BooleanProp;
128
- weightField?: string;
129
-
130
- // Not in docs
131
- value?: Prop<any>;
132
- defaultWidth?: NumberProp;
133
- width?: NumberProp;
134
- resizable?: boolean;
135
- comparer?: (a: any, b: any) => number;
136
-
137
- /** Options for data sorting. See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Collator */
138
- sortOptions?: CollatorOptions;
139
- }
140
-
141
- interface GridRowLineConfig {
142
- visible?: BooleanProp;
143
- columns: GridColumnConfig[];
144
- }
145
-
146
- interface GridRowConfig {
147
- invalid?: BooleanProp;
148
- valid?: BooleanProp;
149
- style?: StyleProp;
150
- class?: ClassProp;
151
- className?: ClassProp;
152
- line1?: GridRowLineConfig;
153
- line2?: GridRowLineConfig;
154
- line3?: GridRowLineConfig;
155
- mod?: StringProp | Prop<string[]> | StructuredProp;
156
- }
157
-
158
- interface GridProps extends StyledContainerProps {
159
- /** An array of records to be displayed in the grid. */
160
- records?: Prop<Record[]>;
161
-
162
- /** Set to true to add a vertical scroll and a fixed header to the grid. */
163
- scrollable?: boolean;
164
-
165
- /** A binding used to store the sorting order list. Commonly used for server-side sorting. */
166
- sorters?: SortersProp;
167
-
168
- /** A list of sorters to be prepended to the actual list of sorters. */
169
- preSorters?: SortersProp;
170
-
171
- /** A binding used to store the name of the field used for sorting grids. Available only if sorters are not used. */
172
- sortField?: StringProp;
173
-
174
- /** A binding used to store the sort direction. Available only if sorters are not used. Possible values are "ASC" and "DESC". Defaults to "ASC". */
175
- sortDirection?: StringProp;
176
-
177
- /** Default sort field. Used if neither sortField or sorters are set. */
178
- defaultSortField?: string;
179
-
180
- /** Default sort direction. */
181
- defaultSortDirection?: "ASC" | "DESC";
182
-
183
- /** Set to true to add vertical gridlines. */
184
- vlines?: boolean;
185
-
186
- /** Text to be displayed instead of an empty table. */
187
- emptyText?: StringProp;
188
-
189
- /** Drag source configuration. Define mode as 'move' or 'copy` and additional data. */
190
- dragSource?: StructuredProp;
191
-
192
- /** Drop zone configuration. Define mode as either preview or insertion. */
193
- dropZone?: StructuredProp;
194
-
195
- /** Row configuration. See grid examples. */
196
- row?: GridRowConfig;
197
-
198
- /**An array of columns. Check column configuration options in the section below. */
199
- columns?: GridColumnConfig[];
200
-
201
- /** Whenever columnParams change, columns are recalculated using the onGetColumn callback. */
202
- columnParams?: Config;
203
-
204
- /** Selection configuration. */
205
- selection?: Config;
206
-
207
- /** An array of grouping level definitions. Check allowed grouping level properties in the section below. */
208
- grouping?: GridGroupingConfig[];
209
-
210
- /** Params for grouping. Whenever params change grouping is recalculated using the onGetGrouping callback. */
211
- groupingParams?: Config;
212
-
213
- /**
214
- * Determines header appearance. Supported values are plain and default. Default mode is used if some of the columns are sortable.
215
- * Plain mode better suits reports and other scenarios in which users do not interact with the grid.
216
- */
217
- headerMode?: StringProp;
218
-
219
- /** Set to true to add default border around the table. Automatically set if grid is scrollable. */
220
- border?: BooleanProp;
221
-
222
- /** Base CSS class to be applied to the element. Default is 'grid'. */
223
- baseClass?: string;
224
-
225
- /** A field used to get the unique identifier of the record. Setting keyField improves grid performance on sort operations as the widget is able to identify row movement inside the grid. */
226
- keyField?: string;
227
-
228
- /** Show grid header within the group. Useful for long report-like (printable) grids. Defaults to false. */
229
- showHeader?: boolean;
230
-
231
- /** Show grid footer. Defaults to false. */
232
- showFooter?: boolean;
233
-
234
- /** Record alias. Default is $record. */
235
- recordName?: RecordAlias;
236
-
237
- /** Record alias. Default is $record. */
238
- recordAlias?: RecordAlias;
239
-
240
- /** Set to true if sorting is done remotely, on the server-side. Default value is false. */
241
- remoteSort?: boolean;
242
-
243
- /** Set to true to enable row caching. This greatly improves grid performance
244
- on subsequent render operations, however, only changes on records
245
- are allowed. If grid rows display any data outside records, changes on that
246
- data will be ignored. */
247
- cached?: boolean;
248
-
249
- /** Render only rows visible on the screen. */
250
- buffered?: boolean;
251
-
252
- /** Specifies how many rows should be visible on the screen */
253
- bufferSize?: number;
254
-
255
- /** Specifies how many rows needs to be scrolled in order to recalculate buffer */
256
- bufferStep?: number;
257
-
258
- /** Used when rows have variable heights to improve buffered rendering by measuring and caching rendered row heights. Default value is false. */
259
- measureRowHeights?: boolean;
260
-
261
- /** Scrolls selection into the view. Default value is false. */
262
- scrollSelectionIntoView?: boolean;
263
-
264
- /**
265
- * Set to true to lock column widths after the first render.
266
- * This is helpful in pagination scenarios to maintain consistent looks across pages.
267
- */
268
- lockColumnWidths?: boolean;
269
-
270
- lockColumnWidthsRequiredRowCount?: number;
271
- focused?: boolean;
272
- showBorder?: boolean;
273
-
274
- /** Data adapter used to convert data in list of records. Used to enable grouping and tree operations. */
275
- dataAdapter?: any;
276
-
277
- /** Additional CSS class to be added to each grid row. */
278
- rowClass?: ClassProp;
279
-
280
- /** Additional CSS styles to be added to each grid row. */
281
- rowStyle?: StyleProp;
282
-
283
- // drag-drop handlers
284
- onDrop?: (e: GridDragEvent, instance: Instance) => void;
285
- onDropTest?: (e: DragEvent, instance: Instance) => boolean;
286
- onDragStart?: (e: DragEvent, instance: Instance) => void;
287
- onDragEnd?: (e: DragEvent, instance: Instance) => void;
288
- onDragOver?: (e: GridDragEvent, instance: Instance) => void | boolean;
289
-
290
- onRowDropTest?: (e: DragEvent, instance: Instance) => boolean;
291
- onRowDragOver?: (e: GridRowDragEvent, instance: Instance) => void | boolean;
292
- onRowDrop?: (e: GridRowDragEvent, instance: Instance) => void | boolean;
293
-
294
- onColumnDrop?: (e: GridColumnDropEvent, instance: Instance) => void;
295
- onColumnDropTest?: (e: DragEvent, instance: Instance) => boolean;
296
-
297
- /** Parameters that affect filtering. */
298
- filterParams?: StructuredProp;
299
-
300
- /** Callback to create a filter function for given filter params. */
301
- onCreateFilter?: (filterParams: any, instance?: Instance) => (record: Record) => boolean;
302
-
303
- /** Enable infinite scrolling */
304
- infinite?: boolean;
305
-
306
- /** If set, clicking on the column header will loop between ASC, DESC and no sorting order, instead of ASC and DESC only. */
307
- clearableSort?: boolean;
308
-
309
- /** A callback to fetch records during infinite loading */
310
- onFetchRecords?: (
311
- pageInfo: {
312
- page: number;
313
- pageSize: number;
314
- sorters?: Record[];
315
- sortField?: string;
316
- sortDirection?: string;
317
- },
318
- instance?: Instance
319
- ) => FetchRecordsResult | Promise<FetchRecordsResult>;
320
-
321
- /** Callback function to be executed when a row is double-clicked. */
322
- onRowDoubleClick?: string | ((e: React.SyntheticEvent<any>, instance: Instance) => void);
323
-
324
- /** Callback function to be executed on key down. Accepts instance of the currently focused record as the second argument. */
325
- onRowKeyDown?: string | ((e: React.SyntheticEvent<any>, instance: Instance) => void);
326
-
327
- /** Callback function to be executed when a row is clicked. */
328
- onRowClick?: string | ((e: React.SyntheticEvent<any>, instance: Instance) => void);
329
-
330
- /** Set to true to add a fixed footer at the bottom of the grid. */
331
- fixedFooter?: boolean;
332
-
333
- /** Set to true to enable cell editing. Please note that all editable columns should specify the editor field. */
334
- cellEditable?: boolean;
335
-
336
- /** A callback function which is executed before a cell editor is initialized. Return false from the callback to prevent the cell from going into the edit mode. */
337
- onBeforeCellEdit?: string | ((change: GridCellBeforeEditInfo, record: DataAdapterRecord) => any);
338
-
339
- /** A callback function which is executed after a cell has been successfully edited. */
340
- onCellEdited?: string | ((change: GridCellEditInfo, record: DataAdapterRecord) => void);
341
-
342
- /** A callback function which is executed after a column has been resized. */
343
- onColumnResize?: (data: { width: number; column: Record }, instance: Instance) => void;
344
-
345
- /** Options for data sorting. See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Collator */
346
- sortOptions?: CollatorOptions;
347
-
348
- /** Callback to create a function that can be used to check whether a record is selectable. */
349
- onCreateIsRecordSelectable?: (
350
- params: any,
351
- instance: Instance
352
- ) => (record: Record, options?: { range?: boolean; toggle?: boolean }) => boolean;
353
-
354
- /** Parameters whose change will cause scroll to be reset. */
355
- scrollResetParams?: StructuredProp;
356
-
357
- /** Enable precise (sub-pixel) measurements. Useful for grids with many columns. Better behavior at small zoom factors. */
358
- preciseMeasurements?: boolean;
359
-
360
- /** A value used to identify the group of components participating in hover effect synchronization. */
361
- hoverChannel?: string;
362
-
363
- /** A value used to uniquely identify the record within the hover sync group. */
364
- rowHoverId?: StringProp;
365
-
366
- /** Set to true or false to explicitly define if grid is allowed to receive focus. */
367
- focusable?: boolean;
368
-
369
- /** Callback function to retrieve grouping data. */
370
- onGetGrouping?: (params: any, instance: Instance) => GridGroupingConfig[];
371
-
372
- /** Callback function to dynamically calculate columns. */
373
- onGetColumns?: (params: any, instance: Instance) => GridColumnConfig[] | GridRowConfig;
374
-
375
- /** Allow grid to receive drag and drop operations containing files. */
376
- allowsFileDrops?: boolean;
377
-
378
- /**
379
- * Callback function to track and retrieve displayed records.
380
- * Accepts new records as a first argument.
381
- * If onCreateFilter callback is defined, filtered records can be retrieved using this callback.
382
- */
383
- onTrackMappedRecords?: string | ((records: Record[], instance: Instance) => void);
384
-
385
- /** Callback to create a function that can be used to check whether a record is draggable. */
386
- onCreateIsRecordDraggable?: (params: any, instance: Instance) => (record: Record) => boolean;
387
- }
388
-
389
- interface GridCellInfo {
390
- column: any;
391
- field: string;
392
- }
393
-
394
- interface GridCellBeforeEditInfo extends GridCellInfo {
395
- data: any;
396
- }
397
-
398
- interface GridCellEditInfo extends GridCellInfo {
399
- oldData: any;
400
- newData: any;
401
- }
402
-
403
- export class Grid extends Widget<GridProps> {}
1
+ import * as React from "react";
2
+ import { Instance } from "../../ui/Instance";
3
+ import { DragEvent } from "../drag-drop/ops";
4
+ import { View } from "../../data/View";
5
+ import {
6
+ BooleanProp,
7
+ ClassProp,
8
+ CollatorOptions,
9
+ Config,
10
+ NumberProp,
11
+ Prop,
12
+ Record,
13
+ RecordAlias,
14
+ SortDirection,
15
+ SortersProp,
16
+ StringProp,
17
+ StructuredProp,
18
+ StyledContainerProps,
19
+ StyleProp,
20
+ Widget,
21
+ } from "../../core";
22
+ import { DataAdapterRecord } from "../../ui/adapter/DataAdapter";
23
+
24
+ type FetchRecordsResult = Record[] | { records: Record[]; lastPage?: boolean; totalRecordCount?: number };
25
+
26
+ interface MappedGridRecord {
27
+ data: Record;
28
+ store: View;
29
+ }
30
+
31
+ interface GridDragEvent extends DragEvent {
32
+ target: {
33
+ recordBefore: MappedGridRecord;
34
+ recordAfter: MappedGridRecord;
35
+ insertionIndex: number;
36
+ totalRecordCount: number;
37
+ };
38
+ }
39
+
40
+ interface GridRowDragEvent extends DragEvent {
41
+ target: {
42
+ record: MappedGridRecord;
43
+ index: number;
44
+ };
45
+ }
46
+
47
+ interface GridColumnDropEvent extends DragEvent {
48
+ target: {
49
+ grid: any;
50
+ instance: Instance;
51
+ index: number;
52
+ };
53
+ }
54
+
55
+ interface GridGroupingKey {
56
+ [key: string]:
57
+ | Prop<any>
58
+ | {
59
+ value: Prop<any>;
60
+ direction: SortDirection;
61
+ };
62
+ }
63
+
64
+ type GridColumnAlignment = "left" | "right" | "center";
65
+
66
+ interface GridGroupingConfig {
67
+ key: GridGroupingKey;
68
+ aggregates?: StructuredProp;
69
+ showCaption?: boolean;
70
+ showFooter?: boolean;
71
+ showHeader?: boolean;
72
+ caption?: StringProp;
73
+ name?: StringProp;
74
+ text?: StringProp;
75
+ }
76
+
77
+ // TODO: Check Column config
78
+ // Props are in order based on docs
79
+
80
+ interface GridColumnHeaderConfig {
81
+ text?: StringProp;
82
+ colSpan?: NumberProp;
83
+ rowSpan?: NumberProp;
84
+ align?: GridColumnAlignment;
85
+ allowSorting?: boolean;
86
+ items?: React.ReactNode;
87
+ children?: React.ReactNode;
88
+ tool?: React.ReactNode;
89
+ style?: StyleProp;
90
+ class?: ClassProp;
91
+ className?: ClassProp;
92
+ tooltip?: StringProp | StructuredProp;
93
+ defaultWidth?: NumberProp;
94
+ width?: NumberProp;
95
+ resizable?: boolean;
96
+ }
97
+
98
+ interface GridColumnConfig {
99
+ align?: GridColumnAlignment;
100
+ field?: string;
101
+ format?: StringProp;
102
+ header?: StringProp | GridColumnHeaderConfig;
103
+ header1?: StringProp | GridColumnHeaderConfig;
104
+ header2?: StringProp | GridColumnHeaderConfig;
105
+ header3?: StringProp | GridColumnHeaderConfig;
106
+ fixed?: BooleanProp;
107
+ sortable?: boolean;
108
+ aggregate?: "min" | "max" | "count" | "sum" | "distinct" | "avg";
109
+ aggregateAlias?: string;
110
+ aggregateField?: string;
111
+ caption?: StringProp;
112
+ class?: ClassProp;
113
+ className?: ClassProp;
114
+ draggable?: boolean;
115
+ editable?: boolean;
116
+ editor?: React.ReactNode;
117
+ footer?: StringProp | false;
118
+ items?: React.ReactNode;
119
+ children?: React.ReactNode;
120
+ key?: string;
121
+ pad?: boolean;
122
+ sortField?: string;
123
+ sortValue?: Prop<any>;
124
+ style?: StyleProp;
125
+ trimWhitespace?: boolean;
126
+ visible?: BooleanProp;
127
+ if?: BooleanProp;
128
+ weightField?: string;
129
+
130
+ // Not in docs
131
+ value?: Prop<any>;
132
+ defaultWidth?: NumberProp;
133
+ width?: NumberProp;
134
+ resizable?: boolean;
135
+ comparer?: (a: any, b: any) => number;
136
+
137
+ /** Options for data sorting. See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Collator */
138
+ sortOptions?: CollatorOptions;
139
+ }
140
+
141
+ interface GridRowLineConfig {
142
+ visible?: BooleanProp;
143
+ columns: GridColumnConfig[];
144
+ }
145
+
146
+ interface GridRowConfig {
147
+ invalid?: BooleanProp;
148
+ valid?: BooleanProp;
149
+ style?: StyleProp;
150
+ class?: ClassProp;
151
+ className?: ClassProp;
152
+ line1?: GridRowLineConfig;
153
+ line2?: GridRowLineConfig;
154
+ line3?: GridRowLineConfig;
155
+ mod?: StringProp | Prop<string[]> | StructuredProp;
156
+ }
157
+
158
+ interface GridProps extends StyledContainerProps {
159
+ /** An array of records to be displayed in the grid. */
160
+ records?: Prop<Record[]>;
161
+
162
+ /** Set to true to add a vertical scroll and a fixed header to the grid. */
163
+ scrollable?: boolean;
164
+
165
+ /** A binding used to store the sorting order list. Commonly used for server-side sorting. */
166
+ sorters?: SortersProp;
167
+
168
+ /** A list of sorters to be prepended to the actual list of sorters. */
169
+ preSorters?: SortersProp;
170
+
171
+ /** A binding used to store the name of the field used for sorting grids. Available only if sorters are not used. */
172
+ sortField?: StringProp;
173
+
174
+ /** A binding used to store the sort direction. Available only if sorters are not used. Possible values are "ASC" and "DESC". Defaults to "ASC". */
175
+ sortDirection?: StringProp;
176
+
177
+ /** Default sort field. Used if neither sortField or sorters are set. */
178
+ defaultSortField?: string;
179
+
180
+ /** Default sort direction. */
181
+ defaultSortDirection?: "ASC" | "DESC";
182
+
183
+ /** Set to true to add vertical gridlines. */
184
+ vlines?: boolean;
185
+
186
+ /** Text to be displayed instead of an empty table. */
187
+ emptyText?: StringProp;
188
+
189
+ /** Drag source configuration. Define mode as 'move' or 'copy` and additional data. */
190
+ dragSource?: StructuredProp;
191
+
192
+ /** Drop zone configuration. Define mode as either preview or insertion. */
193
+ dropZone?: StructuredProp;
194
+
195
+ /** Row configuration. See grid examples. */
196
+ row?: GridRowConfig;
197
+
198
+ /**An array of columns. Check column configuration options in the section below. */
199
+ columns?: GridColumnConfig[];
200
+
201
+ /** Whenever columnParams change, columns are recalculated using the onGetColumn callback. */
202
+ columnParams?: Config;
203
+
204
+ /** Selection configuration. */
205
+ selection?: Config;
206
+
207
+ /** An array of grouping level definitions. Check allowed grouping level properties in the section below. */
208
+ grouping?: GridGroupingConfig[];
209
+
210
+ /** Params for grouping. Whenever params change grouping is recalculated using the onGetGrouping callback. */
211
+ groupingParams?: Config;
212
+
213
+ /**
214
+ * Determines header appearance. Supported values are plain and default. Default mode is used if some of the columns are sortable.
215
+ * Plain mode better suits reports and other scenarios in which users do not interact with the grid.
216
+ */
217
+ headerMode?: StringProp;
218
+
219
+ /** Set to true to add default border around the table. Automatically set if grid is scrollable. */
220
+ border?: BooleanProp;
221
+
222
+ /** Base CSS class to be applied to the element. Default is 'grid'. */
223
+ baseClass?: string;
224
+
225
+ /** A field used to get the unique identifier of the record. Setting keyField improves grid performance on sort operations as the widget is able to identify row movement inside the grid. */
226
+ keyField?: string;
227
+
228
+ /** Show grid header within the group. Useful for long report-like (printable) grids. Defaults to false. */
229
+ showHeader?: boolean;
230
+
231
+ /** Show grid footer. Defaults to false. */
232
+ showFooter?: boolean;
233
+
234
+ /** Record alias. Default is $record. */
235
+ recordName?: RecordAlias;
236
+
237
+ /** Record alias. Default is $record. */
238
+ recordAlias?: RecordAlias;
239
+
240
+ /** Set to true if sorting is done remotely, on the server-side. Default value is false. */
241
+ remoteSort?: boolean;
242
+
243
+ /** Set to true to enable row caching. This greatly improves grid performance
244
+ on subsequent render operations, however, only changes on records
245
+ are allowed. If grid rows display any data outside records, changes on that
246
+ data will be ignored. */
247
+ cached?: boolean;
248
+
249
+ /** Render only rows visible on the screen. */
250
+ buffered?: boolean;
251
+
252
+ /** Specifies how many rows should be visible on the screen */
253
+ bufferSize?: number;
254
+
255
+ /** Specifies how many rows needs to be scrolled in order to recalculate buffer */
256
+ bufferStep?: number;
257
+
258
+ /** Used when rows have variable heights to improve buffered rendering by measuring and caching rendered row heights. Default value is false. */
259
+ measureRowHeights?: boolean;
260
+
261
+ /** Scrolls selection into the view. Default value is false. */
262
+ scrollSelectionIntoView?: boolean;
263
+
264
+ /**
265
+ * Set to true to lock column widths after the first render.
266
+ * This is helpful in pagination scenarios to maintain consistent looks across pages.
267
+ */
268
+ lockColumnWidths?: boolean;
269
+
270
+ lockColumnWidthsRequiredRowCount?: number;
271
+ focused?: boolean;
272
+ showBorder?: boolean;
273
+
274
+ /** Data adapter used to convert data in list of records. Used to enable grouping and tree operations. */
275
+ dataAdapter?: any;
276
+
277
+ /** Additional CSS class to be added to each grid row. */
278
+ rowClass?: ClassProp;
279
+
280
+ /** Additional CSS styles to be added to each grid row. */
281
+ rowStyle?: StyleProp;
282
+
283
+ // drag-drop handlers
284
+ onDrop?: (e: GridDragEvent, instance: Instance) => void;
285
+ onDropTest?: (e: DragEvent, instance: Instance) => boolean;
286
+ onDragStart?: (e: DragEvent, instance: Instance) => void;
287
+ onDragEnd?: (e: DragEvent, instance: Instance) => void;
288
+ onDragOver?: (e: GridDragEvent, instance: Instance) => void | boolean;
289
+
290
+ onRowDropTest?: (e: DragEvent, instance: Instance) => boolean;
291
+ onRowDragOver?: (e: GridRowDragEvent, instance: Instance) => void | boolean;
292
+ onRowDrop?: (e: GridRowDragEvent, instance: Instance) => void | boolean;
293
+
294
+ onColumnDrop?: (e: GridColumnDropEvent, instance: Instance) => void;
295
+ onColumnDropTest?: (e: DragEvent, instance: Instance) => boolean;
296
+
297
+ /** Parameters that affect filtering. */
298
+ filterParams?: StructuredProp;
299
+
300
+ /** Callback to create a filter function for given filter params. */
301
+ onCreateFilter?: (filterParams: any, instance?: Instance) => (record: Record) => boolean;
302
+
303
+ /** Enable infinite scrolling */
304
+ infinite?: boolean;
305
+
306
+ /** If set, clicking on the column header will loop between ASC, DESC and no sorting order, instead of ASC and DESC only. */
307
+ clearableSort?: boolean;
308
+
309
+ /** A callback to fetch records during infinite loading */
310
+ onFetchRecords?: (
311
+ pageInfo: {
312
+ page: number;
313
+ pageSize: number;
314
+ sorters?: Record[];
315
+ sortField?: string;
316
+ sortDirection?: string;
317
+ },
318
+ instance?: Instance
319
+ ) => FetchRecordsResult | Promise<FetchRecordsResult>;
320
+
321
+ /** Callback function to be executed when a row is double-clicked. */
322
+ onRowDoubleClick?: string | ((e: React.SyntheticEvent<any>, instance: Instance) => void);
323
+
324
+ /** Callback function to be executed on key down. Accepts instance of the currently focused record as the second argument. */
325
+ onRowKeyDown?: string | ((e: React.SyntheticEvent<any>, instance: Instance) => void);
326
+
327
+ /** Callback function to be executed when a row is clicked. */
328
+ onRowClick?: string | ((e: React.SyntheticEvent<any>, instance: Instance) => void);
329
+
330
+ /** Set to true to add a fixed footer at the bottom of the grid. */
331
+ fixedFooter?: boolean;
332
+
333
+ /** Set to true to enable cell editing. Please note that all editable columns should specify the editor field. */
334
+ cellEditable?: boolean;
335
+
336
+ /** A callback function which is executed before a cell editor is initialized. Return false from the callback to prevent the cell from going into the edit mode. */
337
+ onBeforeCellEdit?: string | ((change: GridCellBeforeEditInfo, record: DataAdapterRecord) => any);
338
+
339
+ /** A callback function which is executed after a cell has been successfully edited. */
340
+ onCellEdited?: string | ((change: GridCellEditInfo, record: DataAdapterRecord) => void);
341
+
342
+ /** A callback function which is executed after a column has been resized. */
343
+ onColumnResize?: (data: { width: number; column: Record }, instance: Instance) => void;
344
+
345
+ /** Options for data sorting. See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Collator */
346
+ sortOptions?: CollatorOptions;
347
+
348
+ /** Callback to create a function that can be used to check whether a record is selectable. */
349
+ onCreateIsRecordSelectable?: (
350
+ params: any,
351
+ instance: Instance
352
+ ) => (record: Record, options?: { range?: boolean; toggle?: boolean }) => boolean;
353
+
354
+ /** Parameters whose change will cause scroll to be reset. */
355
+ scrollResetParams?: StructuredProp;
356
+
357
+ /** Enable precise (sub-pixel) measurements. Useful for grids with many columns. Better behavior at small zoom factors. */
358
+ preciseMeasurements?: boolean;
359
+
360
+ /** A value used to identify the group of components participating in hover effect synchronization. */
361
+ hoverChannel?: string;
362
+
363
+ /** A value used to uniquely identify the record within the hover sync group. */
364
+ rowHoverId?: StringProp;
365
+
366
+ /** Set to true or false to explicitly define if grid is allowed to receive focus. */
367
+ focusable?: boolean;
368
+
369
+ /** Callback function to retrieve grouping data. */
370
+ onGetGrouping?: (params: any, instance: Instance) => GridGroupingConfig[];
371
+
372
+ /** Callback function to dynamically calculate columns. */
373
+ onGetColumns?: (params: any, instance: Instance) => GridColumnConfig[] | GridRowConfig;
374
+
375
+ /** Allow grid to receive drag and drop operations containing files. */
376
+ allowsFileDrops?: boolean;
377
+
378
+ /**
379
+ * Callback function to track and retrieve displayed records.
380
+ * Accepts new records as a first argument.
381
+ * If onCreateFilter callback is defined, filtered records can be retrieved using this callback.
382
+ */
383
+ onTrackMappedRecords?: string | ((records: Record[], instance: Instance) => void);
384
+
385
+ /** Callback to create a function that can be used to check whether a record is draggable. */
386
+ onCreateIsRecordDraggable?: (params: any, instance: Instance) => (record: Record) => boolean;
387
+ }
388
+
389
+ interface GridCellInfo {
390
+ column: any;
391
+ field: string;
392
+ }
393
+
394
+ interface GridCellBeforeEditInfo extends GridCellInfo {
395
+ data: any;
396
+ }
397
+
398
+ interface GridCellEditInfo extends GridCellInfo {
399
+ oldData: any;
400
+ newData: any;
401
+ }
402
+
403
+ export class Grid extends Widget<GridProps> {}