cx 22.12.2 → 22.12.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 (778) 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 +3 -3
  5. package/dist/data.js +2510 -2510
  6. package/dist/manifest.js +567 -567
  7. package/dist/reset.js +1 -0
  8. package/dist/ui.js +5245 -5245
  9. package/dist/widgets.js +22039 -22039
  10. package/index.js +17 -17
  11. package/locale/de-de.js +69 -69
  12. package/locale/en-us.js +71 -71
  13. package/locale/es-es.js +69 -69
  14. package/locale/fr-fr.js +70 -70
  15. package/locale/nl-nl.js +75 -75
  16. package/locale/pt-pt.js +63 -63
  17. package/locale/sr-latn-ba.js +70 -70
  18. package/package.json +30 -30
  19. package/src/charts/Bar.d.ts +27 -27
  20. package/src/charts/Bar.js +89 -89
  21. package/src/charts/Bar.scss +26 -26
  22. package/src/charts/BarGraph.d.ts +16 -16
  23. package/src/charts/BarGraph.js +110 -110
  24. package/src/charts/BarGraph.scss +27 -27
  25. package/src/charts/BubbleGraph.js +92 -92
  26. package/src/charts/BubbleGraph.scss +29 -29
  27. package/src/charts/Chart.d.ts +12 -12
  28. package/src/charts/Chart.js +77 -77
  29. package/src/charts/ColorMap.d.ts +21 -21
  30. package/src/charts/ColorMap.js +98 -98
  31. package/src/charts/Column.scss +26 -26
  32. package/src/charts/ColumnBarBase.d.ts +61 -61
  33. package/src/charts/ColumnBarBase.js +169 -169
  34. package/src/charts/ColumnBarGraphBase.d.ts +71 -71
  35. package/src/charts/ColumnBarGraphBase.js +119 -119
  36. package/src/charts/ColumnGraph.d.ts +19 -19
  37. package/src/charts/ColumnGraph.js +114 -114
  38. package/src/charts/ColumnGraph.scss +27 -27
  39. package/src/charts/Grid.js +5 -5
  40. package/src/charts/Gridlines.d.ts +24 -24
  41. package/src/charts/Gridlines.js +48 -48
  42. package/src/charts/Gridlines.scss +22 -22
  43. package/src/charts/Legend.d.ts +26 -26
  44. package/src/charts/Legend.js +142 -142
  45. package/src/charts/Legend.scss +41 -41
  46. package/src/charts/LegendEntry.d.ts +37 -37
  47. package/src/charts/LegendEntry.js +117 -117
  48. package/src/charts/LegendEntry.scss +30 -30
  49. package/src/charts/LineGraph.js +211 -202
  50. package/src/charts/LineGraph.scss +23 -23
  51. package/src/charts/Marker.d.ts +87 -87
  52. package/src/charts/Marker.js +287 -287
  53. package/src/charts/Marker.scss +41 -41
  54. package/src/charts/MarkerLine.d.ts +57 -57
  55. package/src/charts/MarkerLine.js +128 -128
  56. package/src/charts/MarkerLine.scss +17 -17
  57. package/src/charts/MouseTracker.d.ts +16 -16
  58. package/src/charts/MouseTracker.js +80 -80
  59. package/src/charts/Pie.js +8 -8
  60. package/src/charts/PieChart.d.ts +80 -80
  61. package/src/charts/PieChart.js +370 -370
  62. package/src/charts/PieChart.scss +26 -26
  63. package/src/charts/PieLabel.d.ts +26 -26
  64. package/src/charts/PieLabel.js +65 -65
  65. package/src/charts/PieLabelsContainer.d.ts +3 -3
  66. package/src/charts/PieLabelsContainer.js +55 -55
  67. package/src/charts/Range.d.ts +74 -74
  68. package/src/charts/Range.js +205 -205
  69. package/src/charts/Range.scss +18 -18
  70. package/src/charts/ScatterGraph.d.ts +65 -65
  71. package/src/charts/ScatterGraph.js +155 -155
  72. package/src/charts/ScatterGraph.scss +21 -21
  73. package/src/charts/axis/Axis.d.ts +82 -82
  74. package/src/charts/axis/Axis.js +222 -222
  75. package/src/charts/axis/Axis.scss +22 -22
  76. package/src/charts/axis/CategoryAxis.d.ts +21 -21
  77. package/src/charts/axis/CategoryAxis.js +224 -224
  78. package/src/charts/axis/CategoryAxis.scss +32 -32
  79. package/src/charts/axis/NumericAxis.js +347 -349
  80. package/src/charts/axis/NumericAxis.scss +32 -32
  81. package/src/charts/axis/Stack.d.ts +10 -10
  82. package/src/charts/axis/Stack.js +58 -58
  83. package/src/charts/axis/TimeAxis.d.ts +23 -23
  84. package/src/charts/axis/TimeAxis.js +510 -510
  85. package/src/charts/axis/TimeAxis.scss +32 -32
  86. package/src/charts/axis/index.d.ts +3 -3
  87. package/src/charts/axis/index.js +3 -3
  88. package/src/charts/axis/index.scss +5 -5
  89. package/src/charts/axis/variables.scss +2 -2
  90. package/src/charts/helpers/MinMaxFinder.js +37 -37
  91. package/src/charts/helpers/MinMaxReducer.d.ts +22 -22
  92. package/src/charts/helpers/PointReducer.d.ts +15 -15
  93. package/src/charts/helpers/PointReducer.js +39 -39
  94. package/src/charts/helpers/SnapPointFinder.d.ts +24 -24
  95. package/src/charts/helpers/SnapPointFinder.js +46 -46
  96. package/src/charts/helpers/ValueAtFinder.d.ts +16 -16
  97. package/src/charts/helpers/ValueAtFinder.js +41 -41
  98. package/src/charts/helpers/index.d.ts +4 -4
  99. package/src/charts/helpers/index.js +4 -4
  100. package/src/charts/index.d.ts +23 -23
  101. package/src/charts/index.js +31 -31
  102. package/src/charts/index.scss +20 -20
  103. package/src/charts/palette.scss +95 -95
  104. package/src/charts/shapes.d.ts +22 -22
  105. package/src/charts/shapes.js +79 -79
  106. package/src/charts/variables.scss +14 -14
  107. package/src/core.d.ts +264 -264
  108. package/src/data/AggregateFunction.d.ts +17 -17
  109. package/src/data/AggregateFunction.js +148 -148
  110. package/src/data/ArrayElementView.d.ts +13 -13
  111. package/src/data/ArrayElementView.js +46 -46
  112. package/src/data/ArrayRef.d.ts +14 -14
  113. package/src/data/ArrayRef.js +34 -34
  114. package/src/data/AugmentedViewBase.d.ts +18 -18
  115. package/src/data/AugmentedViewBase.js +67 -67
  116. package/src/data/Binding.d.ts +16 -16
  117. package/src/data/Binding.js +86 -86
  118. package/src/data/Binding.spec.js +51 -51
  119. package/src/data/ExposedRecordView.d.ts +14 -14
  120. package/src/data/ExposedRecordView.js +69 -69
  121. package/src/data/ExposedValueView.d.ts +19 -19
  122. package/src/data/ExposedValueView.js +72 -72
  123. package/src/data/Expression.d.ts +16 -16
  124. package/src/data/Grouper.d.ts +21 -21
  125. package/src/data/Grouper.js +120 -120
  126. package/src/data/Grouper.spec.js +22 -22
  127. package/src/data/NestedDataView.d.ts +19 -19
  128. package/src/data/NestedDataView.js +22 -22
  129. package/src/data/ReadOnlyDataView.d.ts +14 -14
  130. package/src/data/ReadOnlyDataView.js +26 -26
  131. package/src/data/Ref.js +79 -79
  132. package/src/data/Store.d.ts +14 -14
  133. package/src/data/Store.js +46 -46
  134. package/src/data/Store.spec.js +22 -22
  135. package/src/data/StoreProxy.d.ts +4 -4
  136. package/src/data/StoreProxy.js +16 -16
  137. package/src/data/StoreRef.js +54 -54
  138. package/src/data/StringTemplate.d.ts +13 -13
  139. package/src/data/StringTemplate.js +97 -97
  140. package/src/data/StringTemplate.spec.js +82 -82
  141. package/src/data/StructuredSelector.d.ts +16 -16
  142. package/src/data/StructuredSelector.js +131 -131
  143. package/src/data/StructuredSelector.spec.js +113 -113
  144. package/src/data/SubscribableView.d.ts +11 -11
  145. package/src/data/View.js +182 -182
  146. package/src/data/View.spec.js +60 -60
  147. package/src/data/ZoomIntoPropertyView.d.ts +11 -11
  148. package/src/data/ZoomIntoPropertyView.js +33 -33
  149. package/src/data/ZoomIntoPropertyView.spec.js +65 -65
  150. package/src/data/comparer.d.ts +7 -7
  151. package/src/data/comparer.js +54 -54
  152. package/src/data/comparer.spec.js +60 -60
  153. package/src/data/computable.d.ts +45 -45
  154. package/src/data/computable.js +56 -56
  155. package/src/data/computable.spec.js +55 -55
  156. package/src/data/createAccessorModelProxy.d.ts +6 -6
  157. package/src/data/createAccessorModelProxy.js +43 -43
  158. package/src/data/createAccessorModelProxy.spec.tsx +38 -38
  159. package/src/data/createStructuredSelector.d.ts +2 -2
  160. package/src/data/createStructuredSelector.js +43 -43
  161. package/src/data/createStructuredSelector.spec.js +46 -46
  162. package/src/data/defaultCompare.js +14 -14
  163. package/src/data/diff/diffArrays.d.ts +15 -15
  164. package/src/data/diff/diffArrays.js +41 -41
  165. package/src/data/diff/diffs.spec.js +49 -49
  166. package/src/data/diff/index.d.ts +1 -1
  167. package/src/data/diff/index.js +1 -1
  168. package/src/data/enableFatArrowExpansion.d.ts +1 -1
  169. package/src/data/enableFatArrowExpansion.js +6 -6
  170. package/src/data/getAccessor.d.ts +8 -8
  171. package/src/data/getAccessor.js +61 -61
  172. package/src/data/getSelector.d.ts +3 -3
  173. package/src/data/getSelector.js +48 -48
  174. package/src/data/getSelector.spec.js +43 -43
  175. package/src/data/index.d.ts +30 -30
  176. package/src/data/index.js +28 -28
  177. package/src/data/isSelector.d.ts +1 -1
  178. package/src/data/isSelector.js +26 -26
  179. package/src/data/ops/append.d.ts +1 -1
  180. package/src/data/ops/append.js +7 -7
  181. package/src/data/ops/append.spec.js +28 -28
  182. package/src/data/ops/filter.d.ts +1 -1
  183. package/src/data/ops/filter.js +8 -8
  184. package/src/data/ops/filter.spec.js +29 -29
  185. package/src/data/ops/findTreeNode.js +15 -15
  186. package/src/data/ops/findTreeNode.spec.js +24 -24
  187. package/src/data/ops/findTreePath.d.ts +6 -6
  188. package/src/data/ops/findTreePath.js +16 -16
  189. package/src/data/ops/index.d.ts +10 -10
  190. package/src/data/ops/index.js +11 -11
  191. package/src/data/ops/insertElement.js +2 -2
  192. package/src/data/ops/merge.d.ts +3 -3
  193. package/src/data/ops/merge.js +9 -9
  194. package/src/data/ops/merge.spec.js +27 -27
  195. package/src/data/ops/moveElement.d.ts +1 -1
  196. package/src/data/ops/moveElement.js +13 -13
  197. package/src/data/ops/removeTreeNodes.d.ts +1 -1
  198. package/src/data/ops/removeTreeNodes.js +5 -5
  199. package/src/data/ops/removeTreeNodes.spec.js +28 -28
  200. package/src/data/ops/updateArray.d.ts +5 -5
  201. package/src/data/ops/updateArray.js +24 -24
  202. package/src/data/ops/updateArray.spec.js +38 -38
  203. package/src/data/ops/updateTree.d.ts +7 -7
  204. package/src/data/ops/updateTree.js +25 -25
  205. package/src/data/ops/updateTree.spec.js +34 -34
  206. package/src/global.scss +13 -13
  207. package/src/hooks/createLocalStorageRef.d.ts +2 -2
  208. package/src/hooks/createLocalStorageRef.js +22 -22
  209. package/src/hooks/index.d.ts +8 -8
  210. package/src/hooks/index.js +7 -7
  211. package/src/hooks/invokeCallback.d.ts +5 -5
  212. package/src/hooks/invokeCallback.js +6 -6
  213. package/src/hooks/invokeCallback.spec.js +53 -53
  214. package/src/hooks/resolveCallback.d.ts +3 -3
  215. package/src/hooks/resolveCallback.js +11 -11
  216. package/src/hooks/resolveCallback.spec.js +54 -54
  217. package/src/hooks/store.d.ts +7 -7
  218. package/src/hooks/store.js +32 -32
  219. package/src/hooks/store.spec.js +73 -73
  220. package/src/hooks/useEffect.d.ts +2 -2
  221. package/src/hooks/useEffect.js +14 -14
  222. package/src/hooks/useInterval.js +7 -7
  223. package/src/hooks/useState.d.ts +2 -2
  224. package/src/hooks/useState.js +15 -15
  225. package/src/hooks/useTrigger.d.ts +4 -4
  226. package/src/hooks/useTrigger.js +20 -20
  227. package/src/hooks/useTrigger.spec.js +102 -102
  228. package/src/index.js +7 -7
  229. package/src/index.scss +6 -6
  230. package/src/svg/BoundedObject.d.ts +22 -22
  231. package/src/svg/BoundedObject.js +59 -59
  232. package/src/svg/ClipRect.d.ts +4 -4
  233. package/src/svg/ClipRect.js +23 -23
  234. package/src/svg/Ellipse.d.ts +23 -23
  235. package/src/svg/Ellipse.js +36 -36
  236. package/src/svg/Line.d.ts +20 -20
  237. package/src/svg/Line.js +32 -32
  238. package/src/svg/NonOverlappingRect.d.ts +5 -5
  239. package/src/svg/NonOverlappingRect.js +14 -14
  240. package/src/svg/NonOverlappingRectGroup.d.ts +3 -3
  241. package/src/svg/NonOverlappingRectGroup.js +36 -36
  242. package/src/svg/Rectangle.d.ts +23 -23
  243. package/src/svg/Rectangle.js +36 -36
  244. package/src/svg/Svg.d.ts +32 -32
  245. package/src/svg/Svg.js +177 -177
  246. package/src/svg/Svg.scss +26 -26
  247. package/src/svg/Text.d.ts +38 -38
  248. package/src/svg/Text.js +61 -61
  249. package/src/svg/TextualBoundedObject.d.ts +6 -6
  250. package/src/svg/TextualBoundedObject.js +28 -28
  251. package/src/svg/index.d.ts +11 -11
  252. package/src/svg/index.js +17 -17
  253. package/src/svg/index.scss +8 -8
  254. package/src/svg/util/Rect.d.ts +40 -40
  255. package/src/svg/util/Rect.js +108 -108
  256. package/src/ui/CSS.d.ts +19 -19
  257. package/src/ui/CSS.js +79 -79
  258. package/src/ui/CSSHelper.d.ts +10 -10
  259. package/src/ui/CSSHelper.js +17 -17
  260. package/src/ui/Container.d.ts +18 -18
  261. package/src/ui/Container.js +183 -183
  262. package/src/ui/ContentResolver.d.ts +12 -12
  263. package/src/ui/ContentResolver.js +78 -78
  264. package/src/ui/Controller.js +114 -114
  265. package/src/ui/Controller.spec.js +414 -414
  266. package/src/ui/Culture.d.ts +22 -22
  267. package/src/ui/Culture.js +65 -65
  268. package/src/ui/Cx.d.ts +18 -18
  269. package/src/ui/Cx.js +313 -313
  270. package/src/ui/Cx.spec.js +193 -193
  271. package/src/ui/DataProxy.d.ts +11 -11
  272. package/src/ui/DataProxy.js +44 -44
  273. package/src/ui/DataProxy.spec.js +335 -335
  274. package/src/ui/DetachedScope.d.ts +21 -21
  275. package/src/ui/DetachedScope.js +93 -93
  276. package/src/ui/FocusManager.d.ts +29 -29
  277. package/src/ui/FocusManager.js +171 -171
  278. package/src/ui/Format.d.ts +2 -2
  279. package/src/ui/Format.js +88 -88
  280. package/src/ui/HoverSync.d.ts +13 -13
  281. package/src/ui/HoverSync.js +147 -147
  282. package/src/ui/Instance.d.ts +69 -69
  283. package/src/ui/Instance.js +610 -610
  284. package/src/ui/IsolatedScope.d.ts +16 -16
  285. package/src/ui/IsolatedScope.js +29 -29
  286. package/src/ui/IsolatedScope.spec.js +62 -62
  287. package/src/ui/Localization.d.ts +17 -17
  288. package/src/ui/Localization.js +72 -72
  289. package/src/ui/PureContainer.d.ts +16 -16
  290. package/src/ui/PureContainer.js +7 -7
  291. package/src/ui/RenderingContext.d.ts +9 -9
  292. package/src/ui/RenderingContext.js +88 -88
  293. package/src/ui/Repeater.d.ts +52 -52
  294. package/src/ui/Repeater.js +98 -98
  295. package/src/ui/Repeater.spec.js +143 -143
  296. package/src/ui/Rescope.d.ts +10 -10
  297. package/src/ui/Rescope.js +31 -31
  298. package/src/ui/Rescope.spec.js +195 -195
  299. package/src/ui/ResizeManager.d.ts +9 -9
  300. package/src/ui/ResizeManager.js +30 -30
  301. package/src/ui/Restate.d.ts +15 -15
  302. package/src/ui/Restate.js +155 -155
  303. package/src/ui/Restate.spec.js +422 -422
  304. package/src/ui/StaticText.d.ts +8 -8
  305. package/src/ui/StaticText.js +9 -9
  306. package/src/ui/StructuredInstanceDataAccessor.d.ts +16 -16
  307. package/src/ui/StructuredInstanceDataAccessor.js +26 -26
  308. package/src/ui/Text.d.ts +10 -10
  309. package/src/ui/Text.js +27 -27
  310. package/src/ui/VDOM.d.ts +3 -3
  311. package/src/ui/VDOM.js +2 -2
  312. package/src/ui/Widget.d.ts +14 -14
  313. package/src/ui/Widget.js +200 -200
  314. package/src/ui/ZIndexManager.d.ts +7 -7
  315. package/src/ui/ZIndexManager.js +11 -11
  316. package/src/ui/adapter/ArrayAdapter.d.ts +17 -17
  317. package/src/ui/adapter/ArrayAdapter.js +142 -142
  318. package/src/ui/adapter/ArrayAdapter.spec.js +55 -55
  319. package/src/ui/adapter/DataAdapter.d.ts +28 -28
  320. package/src/ui/adapter/DataAdapter.js +19 -19
  321. package/src/ui/adapter/GroupAdapter.d.ts +4 -4
  322. package/src/ui/adapter/GroupAdapter.js +138 -138
  323. package/src/ui/adapter/TreeAdapter.d.ts +4 -4
  324. package/src/ui/adapter/TreeAdapter.js +100 -100
  325. package/src/ui/adapter/TreeAdapter.spec.js +67 -67
  326. package/src/ui/adapter/index.d.ts +4 -4
  327. package/src/ui/adapter/index.js +4 -4
  328. package/src/ui/app/History.d.ts +17 -17
  329. package/src/ui/app/History.js +114 -114
  330. package/src/ui/app/Url.d.ts +21 -21
  331. package/src/ui/app/Url.js +103 -103
  332. package/src/ui/app/Url.spec.js +51 -51
  333. package/src/ui/app/index.d.ts +4 -4
  334. package/src/ui/app/index.js +5 -5
  335. package/src/ui/app/startAppLoop.d.ts +3 -3
  336. package/src/ui/app/startAppLoop.js +57 -57
  337. package/src/ui/app/startHotAppLoop.d.ts +6 -6
  338. package/src/ui/app/startHotAppLoop.js +25 -25
  339. package/src/ui/batchUpdates.d.ts +10 -10
  340. package/src/ui/batchUpdates.js +67 -67
  341. package/src/ui/bind.js +7 -7
  342. package/src/ui/createFunctionalComponent.d.ts +1 -1
  343. package/src/ui/createFunctionalComponent.js +68 -68
  344. package/src/ui/createFunctionalComponent.spec.js +400 -400
  345. package/src/ui/expr.d.ts +24 -24
  346. package/src/ui/expr.js +17 -17
  347. package/src/ui/flattenProps.js +21 -21
  348. package/src/ui/index.js +44 -44
  349. package/src/ui/index.scss +2 -2
  350. package/src/ui/keyboardShortcuts.d.ts +4 -4
  351. package/src/ui/keyboardShortcuts.js +32 -32
  352. package/src/ui/layout/Content.d.ts +14 -14
  353. package/src/ui/layout/Content.js +16 -16
  354. package/src/ui/layout/ContentPlaceholder.d.ts +17 -17
  355. package/src/ui/layout/ContentPlaceholder.js +79 -79
  356. package/src/ui/layout/ContentPlaceholder.spec.js +368 -368
  357. package/src/ui/layout/FirstVisibleChildLayout.d.ts +4 -4
  358. package/src/ui/layout/FirstVisibleChildLayout.js +65 -65
  359. package/src/ui/layout/FirstVisibleChildLayout.spec.js +196 -196
  360. package/src/ui/layout/LabelsLeftLayout.d.ts +11 -11
  361. package/src/ui/layout/LabelsLeftLayout.js +59 -59
  362. package/src/ui/layout/LabelsLeftLayout.scss +44 -44
  363. package/src/ui/layout/LabelsTopLayout.js +134 -134
  364. package/src/ui/layout/LabelsTopLayout.scss +63 -63
  365. package/src/ui/layout/UseParentLayout.d.ts +4 -4
  366. package/src/ui/layout/UseParentLayout.js +6 -6
  367. package/src/ui/layout/exploreChildren.d.ts +14 -14
  368. package/src/ui/layout/exploreChildren.js +40 -40
  369. package/src/ui/layout/index.d.ts +10 -10
  370. package/src/ui/layout/index.js +10 -10
  371. package/src/ui/layout/index.scss +3 -3
  372. package/src/ui/layout/variables.scss +2 -2
  373. package/src/ui/selection/KeySelection.d.ts +17 -17
  374. package/src/ui/selection/KeySelection.js +129 -129
  375. package/src/ui/selection/PropertySelection.d.ts +17 -17
  376. package/src/ui/selection/PropertySelection.js +57 -57
  377. package/src/ui/selection/Selection.d.ts +27 -27
  378. package/src/ui/selection/Selection.js +97 -97
  379. package/src/ui/selection/index.d.ts +3 -3
  380. package/src/ui/selection/index.js +3 -3
  381. package/src/ui/tpl.d.ts +2 -2
  382. package/src/ui/tpl.js +4 -4
  383. package/src/ui/variables.scss +1 -1
  384. package/src/util/Component.d.ts +41 -41
  385. package/src/util/Component.js +107 -107
  386. package/src/util/Console.d.ts +9 -9
  387. package/src/util/Console.js +11 -11
  388. package/src/util/DOM.d.ts +33 -33
  389. package/src/util/DOM.js +72 -72
  390. package/src/util/Debug.d.ts +10 -10
  391. package/src/util/Debug.js +45 -45
  392. package/src/util/Format.d.ts +13 -13
  393. package/src/util/Format.js +241 -241
  394. package/src/util/Format.spec.js +69 -69
  395. package/src/util/GlobalCacheIdentifier.js +11 -11
  396. package/src/util/GlobalCacheldentifier.d.ts +6 -6
  397. package/src/util/KeyCode.d.ts +21 -21
  398. package/src/util/KeyCode.js +21 -21
  399. package/src/util/SubscriberList.d.ts +41 -41
  400. package/src/util/SubscriberList.js +57 -57
  401. package/src/util/Timing.d.ts +13 -13
  402. package/src/util/Timing.js +57 -57
  403. package/src/util/TraversalStack.js +42 -42
  404. package/src/util/TraversalStack.spec.js +46 -46
  405. package/src/util/addEventListenerWithOptions.d.ts +6 -6
  406. package/src/util/addEventListenerWithOptions.js +9 -9
  407. package/src/util/browserSupportsPassiveEventHandlers.d.ts +4 -4
  408. package/src/util/browserSupportsPassiveEventHandlers.js +18 -18
  409. package/src/util/calculateNaturalElementHeight.d.ts +1 -1
  410. package/src/util/calculateNaturalElementHeight.js +22 -22
  411. package/src/util/call-once.scss +6 -6
  412. package/src/util/coalesce.d.ts +1 -1
  413. package/src/util/coalesce.js +6 -6
  414. package/src/util/color/hslToRgb.d.ts +8 -8
  415. package/src/util/color/hslToRgb.js +27 -27
  416. package/src/util/color/index.d.ts +3 -3
  417. package/src/util/color/index.js +4 -4
  418. package/src/util/color/parseColor.d.ts +59 -59
  419. package/src/util/color/parseColor.js +119 -119
  420. package/src/util/color/rgbToHex.d.ts +8 -8
  421. package/src/util/color/rgbToHex.js +7 -7
  422. package/src/util/color/rgbToHsl.d.ts +8 -8
  423. package/src/util/color/rgbToHsl.js +27 -27
  424. package/src/util/date/dateDiff.d.ts +7 -7
  425. package/src/util/date/dateDiff.js +3 -3
  426. package/src/util/date/diff.d.ts +7 -7
  427. package/src/util/date/diff.js +7 -7
  428. package/src/util/date/encodeDateWithTimezoneOffset.js +18 -18
  429. package/src/util/date/index.d.ts +8 -8
  430. package/src/util/date/index.js +9 -9
  431. package/src/util/date/lowerBoundCheck.d.ts +7 -7
  432. package/src/util/date/lowerBoundCheck.js +6 -6
  433. package/src/util/date/maxDate.d.ts +5 -5
  434. package/src/util/date/maxDate.js +9 -9
  435. package/src/util/date/minDate.d.ts +5 -5
  436. package/src/util/date/minDate.js +9 -9
  437. package/src/util/date/monthStart.d.ts +5 -5
  438. package/src/util/date/monthStart.js +3 -3
  439. package/src/util/date/sameDate.d.ts +6 -6
  440. package/src/util/date/sameDate.js +5 -5
  441. package/src/util/date/upperBoundCheck.d.ts +7 -7
  442. package/src/util/date/upperBoundCheck.js +6 -6
  443. package/src/util/date/upperBoundCheck.spec.js +30 -30
  444. package/src/util/date/zeroTime.d.ts +6 -6
  445. package/src/util/date/zeroTime.js +3 -3
  446. package/src/util/debounce.d.ts +9 -9
  447. package/src/util/dummyCallback.d.ts +1 -1
  448. package/src/util/dummyCallback.js +1 -1
  449. package/src/util/escapeSpecialRegexCharacters.d.ts +6 -6
  450. package/src/util/escapeSpecialRegexCharacters.js +3 -3
  451. package/src/util/eventCallbacks.d.ts +4 -4
  452. package/src/util/eventCallbacks.js +2 -2
  453. package/src/util/expandFatArrows.js +118 -118
  454. package/src/util/findScrollableParent.js +16 -16
  455. package/src/util/getActiveElement.js +3 -3
  456. package/src/util/getParentFrameBoundingClientRect.js +18 -18
  457. package/src/util/getScrollerBoundingClientRect.js +21 -21
  458. package/src/util/getSearchQueryPredicate.js +58 -58
  459. package/src/util/getSearchQueryPredicate.spec.js +40 -40
  460. package/src/util/getTopLevelBoundingClientRect.js +13 -13
  461. package/src/util/getVendorPrefix.js +26 -26
  462. package/src/util/index.d.ts +50 -50
  463. package/src/util/index.js +52 -52
  464. package/src/util/index.scss +10 -10
  465. package/src/util/innerTextTrim.d.ts +6 -6
  466. package/src/util/innerTextTrim.js +5 -5
  467. package/src/util/isArray.d.ts +1 -1
  468. package/src/util/isArray.js +3 -3
  469. package/src/util/isDefined.js +3 -3
  470. package/src/util/isDigit.d.ts +6 -6
  471. package/src/util/isDigit.js +3 -3
  472. package/src/util/isFunction.d.ts +1 -1
  473. package/src/util/isFunction.js +3 -3
  474. package/src/util/isNonEmptyArray.d.ts +1 -1
  475. package/src/util/isNonEmptyArray.js +3 -3
  476. package/src/util/isNumber.d.ts +1 -1
  477. package/src/util/isNumber.js +3 -3
  478. package/src/util/isObject.d.ts +1 -1
  479. package/src/util/isObject.js +3 -3
  480. package/src/util/isPromise.d.ts +1 -1
  481. package/src/util/isPromise.js +6 -6
  482. package/src/util/isString.d.ts +1 -1
  483. package/src/util/isString.js +3 -3
  484. package/src/util/isTextInputElement.d.ts +1 -1
  485. package/src/util/isTextInputElement.js +2 -2
  486. package/src/util/isTouchDevice.d.ts +1 -1
  487. package/src/util/isTouchDevice.js +7 -7
  488. package/src/util/isTouchEvent.d.ts +3 -3
  489. package/src/util/isTouchEvent.js +64 -64
  490. package/src/util/isUndefined.d.ts +1 -1
  491. package/src/util/isUndefined.js +3 -3
  492. package/src/util/onIdleCallback.js +13 -13
  493. package/src/util/parseStyle.d.ts +3 -3
  494. package/src/util/parseStyle.js +27 -27
  495. package/src/util/quote.d.ts +2 -2
  496. package/src/util/quote.js +5 -5
  497. package/src/util/reverseSlice.js +9 -9
  498. package/src/util/routeAppend.js +15 -15
  499. package/src/util/routeAppend.spec.js +19 -19
  500. package/src/util/scrollElementIntoView.d.ts +7 -7
  501. package/src/util/scrollElementIntoView.js +34 -34
  502. package/src/util/scss/add-rules.scss +39 -39
  503. package/src/util/scss/calc.scss +40 -40
  504. package/src/util/scss/call-once.scss +10 -10
  505. package/src/util/scss/clockwise.scss +47 -47
  506. package/src/util/scss/colors.scss +7 -7
  507. package/src/util/scss/deep-get.scss +9 -9
  508. package/src/util/scss/deep-merge.scss +18 -18
  509. package/src/util/scss/include.scss +47 -47
  510. package/src/util/scss/index.scss +8 -8
  511. package/src/util/shallowEquals.js +43 -43
  512. package/src/util/throttle.d.ts +8 -8
  513. package/src/util/throttle.js +14 -14
  514. package/src/variables.scss +217 -217
  515. package/src/widgets/AccessorBindings.spec.tsx +66 -66
  516. package/src/widgets/Button.d.ts +58 -58
  517. package/src/widgets/Button.scss +117 -117
  518. package/src/widgets/Button.variables.scss +107 -107
  519. package/src/widgets/CxCredit.d.ts +12 -12
  520. package/src/widgets/CxCredit.js +31 -31
  521. package/src/widgets/CxCredit.scss +41 -41
  522. package/src/widgets/DocumentTitle.d.ts +11 -11
  523. package/src/widgets/DocumentTitle.js +68 -68
  524. package/src/widgets/FlexBox.d.ts +69 -69
  525. package/src/widgets/FlexBox.js +92 -92
  526. package/src/widgets/FlexBox.scss +155 -155
  527. package/src/widgets/Heading.d.ts +16 -16
  528. package/src/widgets/Heading.js +32 -32
  529. package/src/widgets/Heading.scss +38 -38
  530. package/src/widgets/HighlightedSearchText.d.ts +9 -9
  531. package/src/widgets/HighlightedSearchText.js +36 -36
  532. package/src/widgets/HighlightedSearchText.scss +18 -18
  533. package/src/widgets/HtmlElement.d.ts +26 -26
  534. package/src/widgets/HtmlElement.js +273 -273
  535. package/src/widgets/HtmlElement.spec.js +57 -57
  536. package/src/widgets/Icon.d.ts +34 -36
  537. package/src/widgets/Icon.js +50 -50
  538. package/src/widgets/Icon.scss +20 -20
  539. package/src/widgets/List.d.ts +95 -95
  540. package/src/widgets/List.js +589 -589
  541. package/src/widgets/List.scss +92 -92
  542. package/src/widgets/ProgressBar.d.ts +17 -17
  543. package/src/widgets/ProgressBar.js +46 -46
  544. package/src/widgets/ProgressBar.scss +49 -49
  545. package/src/widgets/Resizer.d.ts +27 -27
  546. package/src/widgets/Resizer.js +151 -151
  547. package/src/widgets/Resizer.scss +42 -42
  548. package/src/widgets/Sandbox.d.ts +16 -16
  549. package/src/widgets/Sandbox.js +62 -62
  550. package/src/widgets/Section.d.ts +52 -52
  551. package/src/widgets/Section.js +139 -139
  552. package/src/widgets/Section.scss +54 -54
  553. package/src/widgets/animations.scss +10 -10
  554. package/src/widgets/autoFocus.d.ts +1 -1
  555. package/src/widgets/autoFocus.js +9 -9
  556. package/src/widgets/cx.d.ts +1 -1
  557. package/src/widgets/cx.js +71 -71
  558. package/src/widgets/drag-drop/DragClone.scss +33 -33
  559. package/src/widgets/drag-drop/DragHandle.d.ts +10 -10
  560. package/src/widgets/drag-drop/DragHandle.js +37 -37
  561. package/src/widgets/drag-drop/DragHandle.scss +16 -16
  562. package/src/widgets/drag-drop/DragSource.d.ts +45 -45
  563. package/src/widgets/drag-drop/DragSource.js +160 -160
  564. package/src/widgets/drag-drop/DragSource.scss +24 -24
  565. package/src/widgets/drag-drop/DropZone.d.ts +98 -98
  566. package/src/widgets/drag-drop/DropZone.js +213 -213
  567. package/src/widgets/drag-drop/DropZone.scss +74 -74
  568. package/src/widgets/drag-drop/index.d.ts +4 -4
  569. package/src/widgets/drag-drop/index.js +4 -4
  570. package/src/widgets/drag-drop/index.scss +3 -3
  571. package/src/widgets/drag-drop/ops.d.ts +56 -56
  572. package/src/widgets/drag-drop/ops.js +344 -344
  573. package/src/widgets/drag-drop/variables.scss +11 -11
  574. package/src/widgets/enableAllInternalDependencies.d.ts +1 -1
  575. package/src/widgets/enableAllInternalDependencies.js +11 -11
  576. package/src/widgets/form/Calendar.d.ts +86 -86
  577. package/src/widgets/form/Calendar.js +527 -527
  578. package/src/widgets/form/Calendar.scss +164 -164
  579. package/src/widgets/form/Calendar.variables.scss +63 -63
  580. package/src/widgets/form/Checkbox.d.ts +43 -43
  581. package/src/widgets/form/Checkbox.js +200 -200
  582. package/src/widgets/form/Checkbox.scss +122 -122
  583. package/src/widgets/form/Checkbox.variables.scss +39 -39
  584. package/src/widgets/form/ColorField.d.ts +43 -43
  585. package/src/widgets/form/ColorField.js +392 -392
  586. package/src/widgets/form/ColorField.scss +92 -92
  587. package/src/widgets/form/ColorPicker.d.ts +23 -23
  588. package/src/widgets/form/ColorPicker.js +451 -451
  589. package/src/widgets/form/ColorPicker.scss +184 -184
  590. package/src/widgets/form/ColorPicker.variables.scss +20 -20
  591. package/src/widgets/form/DateField.d.ts +6 -6
  592. package/src/widgets/form/DateField.js +12 -12
  593. package/src/widgets/form/DateTimeField.d.ts +83 -83
  594. package/src/widgets/form/DateTimeField.js +571 -571
  595. package/src/widgets/form/DateTimeField.scss +90 -90
  596. package/src/widgets/form/DateTimePicker.js +391 -391
  597. package/src/widgets/form/DateTimePicker.scss +44 -44
  598. package/src/widgets/form/Field.d.ts +112 -112
  599. package/src/widgets/form/Field.js +419 -419
  600. package/src/widgets/form/Field.scss +162 -162
  601. package/src/widgets/form/FieldGroup.d.ts +6 -6
  602. package/src/widgets/form/FieldGroup.js +5 -5
  603. package/src/widgets/form/HelpText.d.ts +10 -10
  604. package/src/widgets/form/HelpText.js +9 -9
  605. package/src/widgets/form/HelpText.scss +23 -23
  606. package/src/widgets/form/Label.d.ts +25 -25
  607. package/src/widgets/form/Label.js +86 -86
  608. package/src/widgets/form/Label.scss +36 -36
  609. package/src/widgets/form/LabeledContainer.d.ts +17 -17
  610. package/src/widgets/form/LabeledContainer.js +59 -59
  611. package/src/widgets/form/LookupField.d.ts +171 -171
  612. package/src/widgets/form/LookupField.js +1126 -1126
  613. package/src/widgets/form/LookupField.scss +219 -219
  614. package/src/widgets/form/MonthField.d.ts +88 -88
  615. package/src/widgets/form/MonthField.js +512 -512
  616. package/src/widgets/form/MonthField.scss +99 -99
  617. package/src/widgets/form/MonthPicker.d.ts +68 -68
  618. package/src/widgets/form/MonthPicker.js +631 -631
  619. package/src/widgets/form/MonthPicker.scss +120 -120
  620. package/src/widgets/form/NumberField.d.ts +96 -96
  621. package/src/widgets/form/NumberField.js +458 -458
  622. package/src/widgets/form/NumberField.scss +65 -65
  623. package/src/widgets/form/Radio.d.ts +37 -37
  624. package/src/widgets/form/Radio.js +188 -188
  625. package/src/widgets/form/Radio.scss +122 -122
  626. package/src/widgets/form/Radio.variables.scss +45 -45
  627. package/src/widgets/form/Select.d.ts +73 -73
  628. package/src/widgets/form/Select.js +274 -274
  629. package/src/widgets/form/Select.scss +98 -98
  630. package/src/widgets/form/Slider.d.ts +65 -65
  631. package/src/widgets/form/Slider.js +351 -351
  632. package/src/widgets/form/Slider.scss +121 -121
  633. package/src/widgets/form/Switch.d.ts +38 -38
  634. package/src/widgets/form/Switch.js +118 -118
  635. package/src/widgets/form/Switch.scss +140 -140
  636. package/src/widgets/form/TextArea.d.ts +17 -17
  637. package/src/widgets/form/TextArea.js +182 -182
  638. package/src/widgets/form/TextArea.scss +60 -60
  639. package/src/widgets/form/TextField.d.ts +78 -78
  640. package/src/widgets/form/TextField.js +285 -285
  641. package/src/widgets/form/TextField.scss +55 -55
  642. package/src/widgets/form/TimeField.d.ts +6 -6
  643. package/src/widgets/form/TimeField.js +11 -11
  644. package/src/widgets/form/TimeList.js +84 -84
  645. package/src/widgets/form/UploadButton.d.ts +34 -34
  646. package/src/widgets/form/UploadButton.js +213 -213
  647. package/src/widgets/form/UploadButton.scss +47 -47
  648. package/src/widgets/form/ValidationError.d.ts +10 -10
  649. package/src/widgets/form/ValidationError.js +37 -37
  650. package/src/widgets/form/ValidationError.scss +21 -21
  651. package/src/widgets/form/ValidationGroup.spec.js +148 -148
  652. package/src/widgets/form/Validator.d.ts +6 -6
  653. package/src/widgets/form/Wheel.js +261 -261
  654. package/src/widgets/form/Wheel.scss +148 -148
  655. package/src/widgets/form/index.d.ts +26 -26
  656. package/src/widgets/form/index.js +29 -29
  657. package/src/widgets/form/index.scss +24 -24
  658. package/src/widgets/form/variables.scss +352 -352
  659. package/src/widgets/grid/Grid.d.ts +402 -402
  660. package/src/widgets/grid/Grid.js +3241 -3241
  661. package/src/widgets/grid/Grid.scss +680 -680
  662. package/src/widgets/grid/GridCell.d.ts +29 -29
  663. package/src/widgets/grid/GridCell.js +70 -70
  664. package/src/widgets/grid/GridCellEditor.js +41 -41
  665. package/src/widgets/grid/GridRow.js +228 -228
  666. package/src/widgets/grid/GridRowLine.js +24 -24
  667. package/src/widgets/grid/Pagination.d.ts +14 -14
  668. package/src/widgets/grid/Pagination.js +94 -94
  669. package/src/widgets/grid/Pagination.scss +113 -113
  670. package/src/widgets/grid/TreeNode.d.ts +25 -25
  671. package/src/widgets/grid/TreeNode.js +102 -102
  672. package/src/widgets/grid/TreeNode.scss +90 -90
  673. package/src/widgets/grid/index.d.ts +3 -3
  674. package/src/widgets/grid/index.js +14 -14
  675. package/src/widgets/grid/index.scss +3 -3
  676. package/src/widgets/grid/variables.scss +88 -88
  677. package/src/widgets/icons/arrow-down.svg +3 -3
  678. package/src/widgets/icons/arrow-right.svg +2 -2
  679. package/src/widgets/icons/base.svg +104 -104
  680. package/src/widgets/icons/calendar-old.svg +169 -169
  681. package/src/widgets/icons/calendar.js +16 -16
  682. package/src/widgets/icons/calendar.svg +187 -187
  683. package/src/widgets/icons/check.js +12 -12
  684. package/src/widgets/icons/clear.js +14 -14
  685. package/src/widgets/icons/clear.svg +74 -74
  686. package/src/widgets/icons/close.js +19 -19
  687. package/src/widgets/icons/close.svg +74 -74
  688. package/src/widgets/icons/cx.js +37 -37
  689. package/src/widgets/icons/drop-down.js +14 -14
  690. package/src/widgets/icons/dropdown-arrow.svg +61 -61
  691. package/src/widgets/icons/file.js +12 -12
  692. package/src/widgets/icons/file.svg +4 -4
  693. package/src/widgets/icons/folder-open.js +14 -14
  694. package/src/widgets/icons/folder-open.svg +5 -5
  695. package/src/widgets/icons/folder.js +12 -12
  696. package/src/widgets/icons/folder.svg +58 -58
  697. package/src/widgets/icons/forward.js +21 -21
  698. package/src/widgets/icons/forward.svg +67 -67
  699. package/src/widgets/icons/index.js +14 -14
  700. package/src/widgets/icons/loading.js +23 -23
  701. package/src/widgets/icons/loading.svg +4 -4
  702. package/src/widgets/icons/menu.js +16 -16
  703. package/src/widgets/icons/registry.js +53 -53
  704. package/src/widgets/icons/search.js +12 -12
  705. package/src/widgets/icons/search.svg +107 -107
  706. package/src/widgets/icons/sort-asc.js +13 -13
  707. package/src/widgets/icons/sort-asc.svg +3 -3
  708. package/src/widgets/icons/square.js +17 -17
  709. package/src/widgets/index.d.ts +55 -55
  710. package/src/widgets/index.js +57 -57
  711. package/src/widgets/index.scss +16 -16
  712. package/src/widgets/nav/Link.d.ts +26 -26
  713. package/src/widgets/nav/Link.js +7 -7
  714. package/src/widgets/nav/Link.scss +18 -18
  715. package/src/widgets/nav/LinkButton.d.ts +31 -31
  716. package/src/widgets/nav/LinkButton.js +127 -127
  717. package/src/widgets/nav/Menu.d.ts +27 -27
  718. package/src/widgets/nav/Menu.js +406 -406
  719. package/src/widgets/nav/Menu.scss +74 -74
  720. package/src/widgets/nav/Menu.variables.scss +17 -17
  721. package/src/widgets/nav/MenuItem.d.ts +31 -31
  722. package/src/widgets/nav/MenuItem.js +445 -445
  723. package/src/widgets/nav/MenuItem.scss +128 -128
  724. package/src/widgets/nav/MenuSpacer.d.ts +5 -5
  725. package/src/widgets/nav/MenuSpacer.js +12 -12
  726. package/src/widgets/nav/RedirectRoute.d.ts +9 -9
  727. package/src/widgets/nav/RedirectRoute.js +40 -40
  728. package/src/widgets/nav/Route.d.ts +21 -21
  729. package/src/widgets/nav/Route.js +105 -105
  730. package/src/widgets/nav/Route.spec.js +27 -27
  731. package/src/widgets/nav/Scroller.d.ts +17 -17
  732. package/src/widgets/nav/Scroller.js +214 -214
  733. package/src/widgets/nav/Scroller.scss +146 -146
  734. package/src/widgets/nav/Submenu.d.ts +6 -6
  735. package/src/widgets/nav/Submenu.js +6 -6
  736. package/src/widgets/nav/Tab.d.ts +33 -33
  737. package/src/widgets/nav/Tab.js +82 -82
  738. package/src/widgets/nav/Tab.scss +81 -81
  739. package/src/widgets/nav/Tab.variables.scss +80 -80
  740. package/src/widgets/nav/cover.scss +21 -21
  741. package/src/widgets/nav/index.d.ts +10 -10
  742. package/src/widgets/nav/index.js +10 -10
  743. package/src/widgets/nav/index.scss +5 -5
  744. package/src/widgets/nav/variables.scss +25 -25
  745. package/src/widgets/overlay/ContextMenu.d.ts +10 -10
  746. package/src/widgets/overlay/ContextMenu.js +29 -29
  747. package/src/widgets/overlay/Dropdown.d.ts +31 -31
  748. package/src/widgets/overlay/Dropdown.js +612 -612
  749. package/src/widgets/overlay/Dropdown.scss +184 -184
  750. package/src/widgets/overlay/FlyweightTooltipTracker.d.ts +8 -8
  751. package/src/widgets/overlay/FlyweightTooltipTracker.js +36 -36
  752. package/src/widgets/overlay/MsgBox.d.ts +16 -16
  753. package/src/widgets/overlay/MsgBox.js +116 -116
  754. package/src/widgets/overlay/Overlay.d.ts +69 -69
  755. package/src/widgets/overlay/Overlay.js +747 -747
  756. package/src/widgets/overlay/Overlay.scss +66 -66
  757. package/src/widgets/overlay/Toast.d.ts +30 -30
  758. package/src/widgets/overlay/Toast.js +92 -92
  759. package/src/widgets/overlay/Toast.scss +162 -162
  760. package/src/widgets/overlay/Tooltip.d.ts +50 -50
  761. package/src/widgets/overlay/Tooltip.scss +175 -175
  762. package/src/widgets/overlay/Window.d.ts +39 -39
  763. package/src/widgets/overlay/Window.js +195 -195
  764. package/src/widgets/overlay/Window.scss +112 -112
  765. package/src/widgets/overlay/Window.variables.scss +67 -67
  766. package/src/widgets/overlay/alerts.d.ts +7 -7
  767. package/src/widgets/overlay/alerts.js +39 -39
  768. package/src/widgets/overlay/captureMouse.d.ts +53 -53
  769. package/src/widgets/overlay/captureMouse.js +132 -132
  770. package/src/widgets/overlay/captureMouse.scss +13 -13
  771. package/src/widgets/overlay/index.d.ts +10 -10
  772. package/src/widgets/overlay/index.js +10 -10
  773. package/src/widgets/overlay/index.scss +15 -15
  774. package/src/widgets/overlay/tooltip-ops.d.ts +8 -8
  775. package/src/widgets/overlay/tooltip-ops.js +24 -24
  776. package/src/widgets/overlay/variables.scss +82 -82
  777. package/src/widgets/variables.scss +144 -144
  778. package/yarn-error.log +0 -7973
@@ -1,98 +1,98 @@
1
- import * as Cx from "../../core";
2
-
3
- import { Instance } from "../../ui/Instance";
4
- import { DragEvent } from "./ops";
5
-
6
- interface DropZoneProps extends Cx.StyledContainerProps {
7
- /** CSS styles to be applied when drag cursor is over the drop zone. */
8
- overStyle?: Cx.StyleProp;
9
-
10
- /** CSS styles to be applied when drag cursor is near the drop zone. */
11
- nearStyle?: Cx.StyleProp;
12
-
13
- /** CSS styles to be applied when drag operations begin used to highlight drop zones. */
14
- farStyle?: Cx.StyleProp;
15
-
16
- /** Additional CSS class to be applied when drag cursor is over the drop zone. */
17
- overClass?: Cx.ClassProp;
18
-
19
- /** Additional CSS class to be applied when drag cursor is near the drop zone. */
20
- nearClass?: Cx.ClassProp;
21
-
22
- /** Additional CSS class to be applied when drag operations begin used to highlight drop zones. */
23
- farClass?: Cx.ClassProp;
24
-
25
- /** Distance in `px` used to determine if cursor is near the dropzone. If not configured, cursor is never considered near. */
26
- nearDistance?: number;
27
-
28
- /** Bindable data related to the DropZone that might be useful inside onDrop operations. */
29
- data?: Cx.StructuredProp;
30
-
31
- /**
32
- * Inflate the drop zone's bounding box so it activates on cursor proximity.
33
- * Useful for invisible drop-zones that are only a few pixels tall/wide.
34
- */
35
- inflate?: number;
36
-
37
- /**
38
- * Inflate the drop zone's bounding box horizontally so it activates on cursor proximity.
39
- * Useful for invisible drop-zones that are only a few pixels tall/wide.
40
- */
41
- hinflate?: number;
42
-
43
- /**
44
- * Inflate the drop zone's bounding box vertically so it activates on cursor proximity.
45
- * Useful for invisible drop-zones that are only a few pixels tall/wide.
46
- */
47
- vinflate?: number;
48
-
49
- /** Base CSS class to be applied to the element. Defaults to 'dropzone'. */
50
- baseClass?: string;
51
-
52
- /** A callback method invoked when dragged item is finally dropped.
53
- The callback takes two arguments:
54
- * dragDropEvent - An object containing information related to the source
55
- * instance
56
- Return value is written into dragDropEvent.result and can be passed
57
- to the source's onDragEnd callback. */
58
- onDrop?: (event?: DragEvent, instance?: Instance) => any;
59
-
60
- /** A callback method used to test if dragged item (source) is compatible
61
- with the drop zone. */
62
- onDropTest?: (event?: DragEvent, instance?: Instance) => boolean;
63
-
64
- /** A callback method invoked when the dragged item gets close to the drop zone.
65
- See also `nearDistance`. */
66
- onDragNear?: (event?: DragEvent, instance?: Instance) => void;
67
-
68
- /** A callback method invoked when the dragged item is dragged away. */
69
- onDragAway?: (event?: DragEvent, instance?: Instance) => void;
70
-
71
- /** A callback method invoked when the dragged item is dragged over the drop zone.
72
- The callback is called for each `mousemove` or `touchmove` event. */
73
- onDragOver?: (event?: DragEvent, instance?: Instance) => void;
74
-
75
- /** A callback method invoked when the dragged item is dragged over the drop zone
76
- for the first time. */
77
- onDragEnter?: (event?: DragEvent, instance?: Instance) => void;
78
-
79
- /** A callback method invoked when the dragged item leaves the drop zone area. */
80
- onDragLeave?: (event?: DragEvent, instance?: Instance) => void;
81
-
82
- /** A callback method invoked when at the beginning of the drag & drop operation. */
83
- onDragStart?: (event?: DragEvent, instance?: Instance) => void;
84
-
85
- /** A callback method invoked when at the end of the drag & drop operation. */
86
- onDragEnd?: (event?: DragEvent, instance?: Instance) => void;
87
-
88
- /** Match height of the item being dragged */
89
- matchHeight?: boolean;
90
-
91
- /** Match width of the item being dragged */
92
- matchWidth?: boolean;
93
-
94
- /** Match margin of the item being dragged */
95
- matchMargin?: boolean;
96
- }
97
-
98
- export class DropZone extends Cx.Widget<DropZoneProps> {}
1
+ import * as Cx from "../../core";
2
+
3
+ import { Instance } from "../../ui/Instance";
4
+ import { DragEvent } from "./ops";
5
+
6
+ interface DropZoneProps extends Cx.StyledContainerProps {
7
+ /** CSS styles to be applied when drag cursor is over the drop zone. */
8
+ overStyle?: Cx.StyleProp;
9
+
10
+ /** CSS styles to be applied when drag cursor is near the drop zone. */
11
+ nearStyle?: Cx.StyleProp;
12
+
13
+ /** CSS styles to be applied when drag operations begin used to highlight drop zones. */
14
+ farStyle?: Cx.StyleProp;
15
+
16
+ /** Additional CSS class to be applied when drag cursor is over the drop zone. */
17
+ overClass?: Cx.ClassProp;
18
+
19
+ /** Additional CSS class to be applied when drag cursor is near the drop zone. */
20
+ nearClass?: Cx.ClassProp;
21
+
22
+ /** Additional CSS class to be applied when drag operations begin used to highlight drop zones. */
23
+ farClass?: Cx.ClassProp;
24
+
25
+ /** Distance in `px` used to determine if cursor is near the dropzone. If not configured, cursor is never considered near. */
26
+ nearDistance?: number;
27
+
28
+ /** Bindable data related to the DropZone that might be useful inside onDrop operations. */
29
+ data?: Cx.StructuredProp;
30
+
31
+ /**
32
+ * Inflate the drop zone's bounding box so it activates on cursor proximity.
33
+ * Useful for invisible drop-zones that are only a few pixels tall/wide.
34
+ */
35
+ inflate?: number;
36
+
37
+ /**
38
+ * Inflate the drop zone's bounding box horizontally so it activates on cursor proximity.
39
+ * Useful for invisible drop-zones that are only a few pixels tall/wide.
40
+ */
41
+ hinflate?: number;
42
+
43
+ /**
44
+ * Inflate the drop zone's bounding box vertically so it activates on cursor proximity.
45
+ * Useful for invisible drop-zones that are only a few pixels tall/wide.
46
+ */
47
+ vinflate?: number;
48
+
49
+ /** Base CSS class to be applied to the element. Defaults to 'dropzone'. */
50
+ baseClass?: string;
51
+
52
+ /** A callback method invoked when dragged item is finally dropped.
53
+ The callback takes two arguments:
54
+ * dragDropEvent - An object containing information related to the source
55
+ * instance
56
+ Return value is written into dragDropEvent.result and can be passed
57
+ to the source's onDragEnd callback. */
58
+ onDrop?: (event?: DragEvent, instance?: Instance) => any;
59
+
60
+ /** A callback method used to test if dragged item (source) is compatible
61
+ with the drop zone. */
62
+ onDropTest?: (event?: DragEvent, instance?: Instance) => boolean;
63
+
64
+ /** A callback method invoked when the dragged item gets close to the drop zone.
65
+ See also `nearDistance`. */
66
+ onDragNear?: (event?: DragEvent, instance?: Instance) => void;
67
+
68
+ /** A callback method invoked when the dragged item is dragged away. */
69
+ onDragAway?: (event?: DragEvent, instance?: Instance) => void;
70
+
71
+ /** A callback method invoked when the dragged item is dragged over the drop zone.
72
+ The callback is called for each `mousemove` or `touchmove` event. */
73
+ onDragOver?: (event?: DragEvent, instance?: Instance) => void;
74
+
75
+ /** A callback method invoked when the dragged item is dragged over the drop zone
76
+ for the first time. */
77
+ onDragEnter?: (event?: DragEvent, instance?: Instance) => void;
78
+
79
+ /** A callback method invoked when the dragged item leaves the drop zone area. */
80
+ onDragLeave?: (event?: DragEvent, instance?: Instance) => void;
81
+
82
+ /** A callback method invoked when at the beginning of the drag & drop operation. */
83
+ onDragStart?: (event?: DragEvent, instance?: Instance) => void;
84
+
85
+ /** A callback method invoked when at the end of the drag & drop operation. */
86
+ onDragEnd?: (event?: DragEvent, instance?: Instance) => void;
87
+
88
+ /** Match height of the item being dragged */
89
+ matchHeight?: boolean;
90
+
91
+ /** Match width of the item being dragged */
92
+ matchWidth?: boolean;
93
+
94
+ /** Match margin of the item being dragged */
95
+ matchMargin?: boolean;
96
+ }
97
+
98
+ export class DropZone extends Cx.Widget<DropZoneProps> {}
@@ -1,213 +1,213 @@
1
- import { Widget, VDOM } from "../../ui/Widget";
2
- import { Container } from "../../ui/Container";
3
- import { parseStyle } from "../../util/parseStyle";
4
- import { registerDropZone, DragDropContext } from "./ops";
5
- import { findScrollableParent } from "../../util/findScrollableParent";
6
- import { isNumber } from "../../util/isNumber";
7
- import { getTopLevelBoundingClientRect } from "../../util/getTopLevelBoundingClientRect";
8
-
9
- export class DropZone extends Container {
10
- init() {
11
- this.overStyle = parseStyle(this.overStyle);
12
- this.nearStyle = parseStyle(this.nearStyle);
13
- this.farStyle = parseStyle(this.farStyle);
14
-
15
- if (isNumber(this.inflate)) {
16
- this.hinflate = this.inflate;
17
- this.vinflate = this.inflate;
18
- }
19
-
20
- super.init();
21
- }
22
-
23
- declareData() {
24
- return super.declareData(...arguments, {
25
- overClass: { structured: true },
26
- nearClass: { structured: true },
27
- farClass: { structured: true },
28
- overStyle: { structured: true },
29
- nearStyle: { structured: true },
30
- farStyle: { structured: true },
31
- data: { structured: true },
32
- });
33
- }
34
-
35
- render(context, instance, key) {
36
- return (
37
- <DropZoneComponent key={key} instance={instance}>
38
- {this.renderChildren(context, instance)}
39
- </DropZoneComponent>
40
- );
41
- }
42
- }
43
-
44
- DropZone.prototype.styled = true;
45
- DropZone.prototype.nearDistance = 0;
46
- DropZone.prototype.hinflate = 0;
47
- DropZone.prototype.vinflate = 0;
48
- DropZone.prototype.baseClass = "dropzone";
49
-
50
- Widget.alias("dropzone", DropZone);
51
-
52
- class DropZoneComponent extends VDOM.Component {
53
- constructor(props) {
54
- super(props);
55
- this.state = {
56
- state: false,
57
- };
58
- }
59
-
60
- render() {
61
- let { instance, children } = this.props;
62
- let { data, widget } = instance;
63
- let { CSS } = widget;
64
-
65
- let classes = [data.classNames, CSS.state(this.state.state)];
66
-
67
- let stateStyle;
68
-
69
- switch (this.state.state) {
70
- case "over":
71
- classes.push(data.overClass);
72
- stateStyle = parseStyle(data.overStyle);
73
- break;
74
- case "near":
75
- classes.push(data.nearClass);
76
- stateStyle = parseStyle(data.nearStyle);
77
- break;
78
- case "far":
79
- classes.push(data.farClass);
80
- stateStyle = parseStyle(data.farStyle);
81
- break;
82
- }
83
-
84
- return (
85
- <div
86
- className={CSS.expand(classes)}
87
- style={{ ...data.style, ...this.state.style, ...stateStyle }}
88
- ref={(el) => {
89
- this.el = el;
90
- }}
91
- >
92
- {children}
93
- </div>
94
- );
95
- }
96
-
97
- componentDidMount() {
98
- let dragDropOptions = this.context;
99
- let disabled = dragDropOptions && dragDropOptions.disabled;
100
- if (!disabled) this.unregister = registerDropZone(this);
101
- }
102
-
103
- componentWillUnmount() {
104
- this.unregister && this.unregister();
105
- }
106
-
107
- onDropTest(e) {
108
- let { instance } = this.props;
109
- let { widget } = instance;
110
- return !widget.onDropTest || instance.invoke("onDropTest", e, instance);
111
- }
112
-
113
- onDragStart(e) {
114
- this.setState({
115
- state: "far",
116
- });
117
- }
118
-
119
- onDragNear(e) {
120
- this.setState({
121
- state: "near",
122
- });
123
- }
124
-
125
- onDragAway(e) {
126
- this.setState({
127
- state: "far",
128
- });
129
- }
130
-
131
- onDragLeave(e) {
132
- let { nearDistance } = this.props.instance.widget;
133
- this.setState({
134
- state: nearDistance ? "near" : "far",
135
- style: null,
136
- });
137
- }
138
-
139
- onDragMeasure(e) {
140
- let rect = getTopLevelBoundingClientRect(this.el);
141
-
142
- let { instance } = this.props;
143
- let { widget } = instance;
144
-
145
- let { clientX, clientY } = e.cursor;
146
- let distance =
147
- Math.max(0, rect.left - clientX, clientX - rect.right) +
148
- Math.max(0, rect.top - clientY, clientY - rect.bottom);
149
-
150
- if (widget.hinflate > 0) {
151
- rect.left -= widget.hinflate;
152
- rect.right += widget.hinflate;
153
- }
154
-
155
- if (widget.vinflate > 0) {
156
- rect.top -= widget.vinflate;
157
- rect.bottom += widget.vinflate;
158
- }
159
-
160
- let { nearDistance } = widget;
161
-
162
- let over = rect.left <= clientX && clientX < rect.right && rect.top <= clientY && clientY < rect.bottom;
163
-
164
- return {
165
- over: over && distance,
166
- near: nearDistance && (over || distance < nearDistance),
167
- };
168
- }
169
-
170
- onDragEnter(e) {
171
- let { instance } = this.props;
172
- let { widget } = instance;
173
- let style = {};
174
-
175
- if (widget.matchWidth) style.width = `${e.source.width}px`;
176
-
177
- if (widget.matchHeight) style.height = `${e.source.height}px`;
178
-
179
- if (widget.matchMargin) style.margin = e.source.margin.join(" ");
180
-
181
- if (this.state != "over")
182
- this.setState({
183
- state: "over",
184
- style,
185
- });
186
- }
187
-
188
- onDragOver(e) {}
189
-
190
- onGetHScrollParent() {
191
- return findScrollableParent(this.el, true);
192
- }
193
-
194
- onGetVScrollParent() {
195
- return findScrollableParent(this.el);
196
- }
197
-
198
- onDrop(e) {
199
- let { instance } = this.props;
200
- let { widget } = instance;
201
-
202
- if (this.state.state == "over" && widget.onDrop) instance.invoke("onDrop", e, instance);
203
- }
204
-
205
- onDragEnd(e) {
206
- this.setState({
207
- state: false,
208
- style: null,
209
- });
210
- }
211
- }
212
-
213
- DropZoneComponent.contextType = DragDropContext;
1
+ import { Widget, VDOM } from "../../ui/Widget";
2
+ import { Container } from "../../ui/Container";
3
+ import { parseStyle } from "../../util/parseStyle";
4
+ import { registerDropZone, DragDropContext } from "./ops";
5
+ import { findScrollableParent } from "../../util/findScrollableParent";
6
+ import { isNumber } from "../../util/isNumber";
7
+ import { getTopLevelBoundingClientRect } from "../../util/getTopLevelBoundingClientRect";
8
+
9
+ export class DropZone extends Container {
10
+ init() {
11
+ this.overStyle = parseStyle(this.overStyle);
12
+ this.nearStyle = parseStyle(this.nearStyle);
13
+ this.farStyle = parseStyle(this.farStyle);
14
+
15
+ if (isNumber(this.inflate)) {
16
+ this.hinflate = this.inflate;
17
+ this.vinflate = this.inflate;
18
+ }
19
+
20
+ super.init();
21
+ }
22
+
23
+ declareData() {
24
+ return super.declareData(...arguments, {
25
+ overClass: { structured: true },
26
+ nearClass: { structured: true },
27
+ farClass: { structured: true },
28
+ overStyle: { structured: true },
29
+ nearStyle: { structured: true },
30
+ farStyle: { structured: true },
31
+ data: { structured: true },
32
+ });
33
+ }
34
+
35
+ render(context, instance, key) {
36
+ return (
37
+ <DropZoneComponent key={key} instance={instance}>
38
+ {this.renderChildren(context, instance)}
39
+ </DropZoneComponent>
40
+ );
41
+ }
42
+ }
43
+
44
+ DropZone.prototype.styled = true;
45
+ DropZone.prototype.nearDistance = 0;
46
+ DropZone.prototype.hinflate = 0;
47
+ DropZone.prototype.vinflate = 0;
48
+ DropZone.prototype.baseClass = "dropzone";
49
+
50
+ Widget.alias("dropzone", DropZone);
51
+
52
+ class DropZoneComponent extends VDOM.Component {
53
+ constructor(props) {
54
+ super(props);
55
+ this.state = {
56
+ state: false,
57
+ };
58
+ }
59
+
60
+ render() {
61
+ let { instance, children } = this.props;
62
+ let { data, widget } = instance;
63
+ let { CSS } = widget;
64
+
65
+ let classes = [data.classNames, CSS.state(this.state.state)];
66
+
67
+ let stateStyle;
68
+
69
+ switch (this.state.state) {
70
+ case "over":
71
+ classes.push(data.overClass);
72
+ stateStyle = parseStyle(data.overStyle);
73
+ break;
74
+ case "near":
75
+ classes.push(data.nearClass);
76
+ stateStyle = parseStyle(data.nearStyle);
77
+ break;
78
+ case "far":
79
+ classes.push(data.farClass);
80
+ stateStyle = parseStyle(data.farStyle);
81
+ break;
82
+ }
83
+
84
+ return (
85
+ <div
86
+ className={CSS.expand(classes)}
87
+ style={{ ...data.style, ...this.state.style, ...stateStyle }}
88
+ ref={(el) => {
89
+ this.el = el;
90
+ }}
91
+ >
92
+ {children}
93
+ </div>
94
+ );
95
+ }
96
+
97
+ componentDidMount() {
98
+ let dragDropOptions = this.context;
99
+ let disabled = dragDropOptions && dragDropOptions.disabled;
100
+ if (!disabled) this.unregister = registerDropZone(this);
101
+ }
102
+
103
+ componentWillUnmount() {
104
+ this.unregister && this.unregister();
105
+ }
106
+
107
+ onDropTest(e) {
108
+ let { instance } = this.props;
109
+ let { widget } = instance;
110
+ return !widget.onDropTest || instance.invoke("onDropTest", e, instance);
111
+ }
112
+
113
+ onDragStart(e) {
114
+ this.setState({
115
+ state: "far",
116
+ });
117
+ }
118
+
119
+ onDragNear(e) {
120
+ this.setState({
121
+ state: "near",
122
+ });
123
+ }
124
+
125
+ onDragAway(e) {
126
+ this.setState({
127
+ state: "far",
128
+ });
129
+ }
130
+
131
+ onDragLeave(e) {
132
+ let { nearDistance } = this.props.instance.widget;
133
+ this.setState({
134
+ state: nearDistance ? "near" : "far",
135
+ style: null,
136
+ });
137
+ }
138
+
139
+ onDragMeasure(e) {
140
+ let rect = getTopLevelBoundingClientRect(this.el);
141
+
142
+ let { instance } = this.props;
143
+ let { widget } = instance;
144
+
145
+ let { clientX, clientY } = e.cursor;
146
+ let distance =
147
+ Math.max(0, rect.left - clientX, clientX - rect.right) +
148
+ Math.max(0, rect.top - clientY, clientY - rect.bottom);
149
+
150
+ if (widget.hinflate > 0) {
151
+ rect.left -= widget.hinflate;
152
+ rect.right += widget.hinflate;
153
+ }
154
+
155
+ if (widget.vinflate > 0) {
156
+ rect.top -= widget.vinflate;
157
+ rect.bottom += widget.vinflate;
158
+ }
159
+
160
+ let { nearDistance } = widget;
161
+
162
+ let over = rect.left <= clientX && clientX < rect.right && rect.top <= clientY && clientY < rect.bottom;
163
+
164
+ return {
165
+ over: over && distance,
166
+ near: nearDistance && (over || distance < nearDistance),
167
+ };
168
+ }
169
+
170
+ onDragEnter(e) {
171
+ let { instance } = this.props;
172
+ let { widget } = instance;
173
+ let style = {};
174
+
175
+ if (widget.matchWidth) style.width = `${e.source.width}px`;
176
+
177
+ if (widget.matchHeight) style.height = `${e.source.height}px`;
178
+
179
+ if (widget.matchMargin) style.margin = e.source.margin.join(" ");
180
+
181
+ if (this.state != "over")
182
+ this.setState({
183
+ state: "over",
184
+ style,
185
+ });
186
+ }
187
+
188
+ onDragOver(e) {}
189
+
190
+ onGetHScrollParent() {
191
+ return findScrollableParent(this.el, true);
192
+ }
193
+
194
+ onGetVScrollParent() {
195
+ return findScrollableParent(this.el);
196
+ }
197
+
198
+ onDrop(e) {
199
+ let { instance } = this.props;
200
+ let { widget } = instance;
201
+
202
+ if (this.state.state == "over" && widget.onDrop) instance.invoke("onDrop", e, instance);
203
+ }
204
+
205
+ onDragEnd(e) {
206
+ this.setState({
207
+ state: false,
208
+ style: null,
209
+ });
210
+ }
211
+ }
212
+
213
+ DropZoneComponent.contextType = DragDropContext;