cx 24.7.2 → 24.7.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 (772) 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 +34 -21
  5. package/dist/data.js +49 -19
  6. package/dist/manifest.js +763 -763
  7. package/dist/svg.js +6 -0
  8. package/index.js +17 -17
  9. package/locale/de-de.js +74 -74
  10. package/locale/en-us.js +74 -74
  11. package/locale/es-es.js +74 -74
  12. package/locale/fr-fr.js +74 -74
  13. package/locale/nl-nl.js +74 -74
  14. package/locale/pt-pt.js +74 -74
  15. package/locale/sr-latn-ba.js +74 -74
  16. package/package.json +1 -1
  17. package/src/charts/Bar.js +89 -89
  18. package/src/charts/Bar.scss +26 -26
  19. package/src/charts/BarGraph.d.ts +15 -15
  20. package/src/charts/BarGraph.js +112 -112
  21. package/src/charts/BarGraph.scss +27 -27
  22. package/src/charts/BubbleGraph.js +92 -92
  23. package/src/charts/BubbleGraph.scss +29 -29
  24. package/src/charts/Chart.d.ts +12 -12
  25. package/src/charts/Chart.js +75 -75
  26. package/src/charts/ColorMap.d.ts +21 -21
  27. package/src/charts/ColorMap.js +96 -96
  28. package/src/charts/Column.d.ts +27 -27
  29. package/src/charts/Column.js +1 -1
  30. package/src/charts/Column.scss +26 -26
  31. package/src/charts/ColumnBarBase.d.ts +64 -64
  32. package/src/charts/ColumnBarBase.js +25 -21
  33. package/src/charts/ColumnBarGraphBase.d.ts +73 -73
  34. package/src/charts/ColumnBarGraphBase.js +114 -114
  35. package/src/charts/ColumnGraph.d.ts +18 -18
  36. package/src/charts/ColumnGraph.scss +27 -27
  37. package/src/charts/Grid.js +5 -5
  38. package/src/charts/Gridlines.d.ts +24 -24
  39. package/src/charts/Gridlines.js +48 -48
  40. package/src/charts/Gridlines.scss +22 -22
  41. package/src/charts/Legend.d.ts +27 -27
  42. package/src/charts/Legend.scss +41 -41
  43. package/src/charts/LegendEntry.d.ts +17 -3
  44. package/src/charts/LegendEntry.js +4 -0
  45. package/src/charts/LegendEntry.scss +30 -30
  46. package/src/charts/LineGraph.d.ts +92 -92
  47. package/src/charts/LineGraph.scss +23 -23
  48. package/src/charts/Marker.d.ts +110 -96
  49. package/src/charts/Marker.js +307 -299
  50. package/src/charts/Marker.scss +41 -41
  51. package/src/charts/MarkerLine.d.ts +57 -57
  52. package/src/charts/MarkerLine.js +128 -128
  53. package/src/charts/MarkerLine.scss +17 -17
  54. package/src/charts/MouseTracker.d.ts +16 -16
  55. package/src/charts/MouseTracker.js +80 -80
  56. package/src/charts/Pie.js +8 -8
  57. package/src/charts/PieChart.d.ts +89 -89
  58. package/src/charts/PieChart.js +527 -527
  59. package/src/charts/PieChart.scss +26 -26
  60. package/src/charts/PieLabel.d.ts +26 -26
  61. package/src/charts/PieLabel.js +71 -71
  62. package/src/charts/PieLabelsContainer.d.ts +6 -6
  63. package/src/charts/PieLabelsContainer.js +55 -55
  64. package/src/charts/Range.d.ts +74 -74
  65. package/src/charts/Range.js +205 -205
  66. package/src/charts/Range.scss +18 -18
  67. package/src/charts/RangeMarker.d.ts +35 -35
  68. package/src/charts/RangeMarker.js +155 -155
  69. package/src/charts/RangeMarker.scss +15 -15
  70. package/src/charts/ScatterGraph.d.ts +64 -64
  71. package/src/charts/ScatterGraph.js +155 -155
  72. package/src/charts/ScatterGraph.scss +21 -21
  73. package/src/charts/Swimlane.d.ts +24 -24
  74. package/src/charts/Swimlane.js +140 -140
  75. package/src/charts/Swimlane.scss +14 -14
  76. package/src/charts/Swimlanes.d.ts +41 -41
  77. package/src/charts/Swimlanes.js +114 -114
  78. package/src/charts/Swimlanes.scss +14 -14
  79. package/src/charts/axis/Axis.js +254 -254
  80. package/src/charts/axis/Axis.scss +22 -22
  81. package/src/charts/axis/CategoryAxis.d.ts +24 -24
  82. package/src/charts/axis/CategoryAxis.js +212 -212
  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 +55 -55
  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.js +36 -36
  97. package/src/charts/helpers/PointReducer.d.ts +15 -15
  98. package/src/charts/helpers/PointReducer.js +39 -39
  99. package/src/charts/helpers/index.d.ts +4 -4
  100. package/src/charts/helpers/index.js +4 -4
  101. package/src/charts/index.d.ts +27 -27
  102. package/src/charts/index.js +34 -34
  103. package/src/charts/index.scss +22 -22
  104. package/src/charts/palette.scss +95 -95
  105. package/src/charts/shapes.d.ts +22 -22
  106. package/src/charts/shapes.js +79 -79
  107. package/src/charts/variables.scss +21 -21
  108. package/src/core.d.ts +271 -271
  109. package/src/data/AggregateFunction.d.ts +20 -20
  110. package/src/data/AggregateFunction.js +145 -145
  111. package/src/data/ArrayElementView.d.ts +13 -13
  112. package/src/data/ArrayElementView.js +37 -19
  113. package/src/data/ArrayElementView.spec.js +18 -0
  114. package/src/data/ArrayRef.d.ts +14 -14
  115. package/src/data/ArrayRef.js +34 -34
  116. package/src/data/AugmentedViewBase.d.ts +18 -18
  117. package/src/data/AugmentedViewBase.js +22 -14
  118. package/src/data/Binding.d.ts +19 -19
  119. package/src/data/Binding.js +76 -76
  120. package/src/data/Binding.spec.js +69 -69
  121. package/src/data/ExposedRecordView.d.ts +14 -14
  122. package/src/data/ExposedRecordView.js +69 -69
  123. package/src/data/ExposedValueView.d.ts +19 -19
  124. package/src/data/ExposedValueView.js +72 -72
  125. package/src/data/Expression.d.ts +17 -17
  126. package/src/data/Expression.js +220 -220
  127. package/src/data/Expression.spec.js +174 -174
  128. package/src/data/Grouper.d.ts +21 -21
  129. package/src/data/Grouper.js +144 -144
  130. package/src/data/Grouper.spec.js +57 -57
  131. package/src/data/NestedDataView.d.ts +19 -19
  132. package/src/data/NestedDataView.js +22 -22
  133. package/src/data/ReadOnlyDataView.d.ts +14 -14
  134. package/src/data/ReadOnlyDataView.js +26 -26
  135. package/src/data/Ref.d.ts +24 -24
  136. package/src/data/Ref.js +79 -79
  137. package/src/data/Ref.spec.js +79 -79
  138. package/src/data/Store.d.ts +14 -14
  139. package/src/data/Store.js +46 -46
  140. package/src/data/Store.spec.js +22 -22
  141. package/src/data/StoreProxy.d.ts +4 -4
  142. package/src/data/StoreProxy.js +16 -16
  143. package/src/data/StoreRef.js +54 -54
  144. package/src/data/StoreRef.spec.js +24 -24
  145. package/src/data/StringTemplate.d.ts +15 -15
  146. package/src/data/StringTemplate.js +92 -92
  147. package/src/data/StructuredDataAccessor.d.ts +7 -7
  148. package/src/data/StructuredSelector.d.ts +17 -17
  149. package/src/data/StructuredSelector.js +131 -131
  150. package/src/data/StructuredSelector.spec.js +113 -113
  151. package/src/data/SubscribableView.d.ts +11 -11
  152. package/src/data/SubscribableView.js +54 -54
  153. package/src/data/View.d.ts +131 -131
  154. package/src/data/View.js +182 -182
  155. package/src/data/View.spec.js +60 -60
  156. package/src/data/ZoomIntoPropertyView.d.ts +11 -11
  157. package/src/data/ZoomIntoPropertyView.js +33 -33
  158. package/src/data/ZoomIntoPropertyView.spec.js +65 -65
  159. package/src/data/comparer.d.ts +7 -7
  160. package/src/data/comparer.js +54 -54
  161. package/src/data/comparer.spec.js +60 -60
  162. package/src/data/computable.d.ts +125 -125
  163. package/src/data/computable.js +56 -56
  164. package/src/data/computable.spec.js +55 -55
  165. package/src/data/createAccessorModelProxy.d.ts +6 -6
  166. package/src/data/createAccessorModelProxy.js +43 -43
  167. package/src/data/createAccessorModelProxy.spec.tsx +44 -44
  168. package/src/data/createStructuredSelector.d.ts +2 -2
  169. package/src/data/createStructuredSelector.js +43 -43
  170. package/src/data/createStructuredSelector.spec.js +46 -46
  171. package/src/data/defaultCompare.js +14 -14
  172. package/src/data/diff/diffArrays.d.ts +15 -15
  173. package/src/data/diff/diffArrays.js +41 -41
  174. package/src/data/diff/diffs.spec.js +49 -49
  175. package/src/data/diff/index.d.ts +1 -1
  176. package/src/data/diff/index.js +1 -1
  177. package/src/data/enableFatArrowExpansion.d.ts +1 -1
  178. package/src/data/enableFatArrowExpansion.js +6 -6
  179. package/src/data/getAccessor.d.ts +8 -8
  180. package/src/data/getAccessor.js +61 -61
  181. package/src/data/getSelector.d.ts +3 -3
  182. package/src/data/getSelector.js +48 -48
  183. package/src/data/getSelector.spec.js +43 -43
  184. package/src/data/index.d.ts +30 -30
  185. package/src/data/index.js +28 -28
  186. package/src/data/isSelector.d.ts +1 -1
  187. package/src/data/isSelector.js +26 -26
  188. package/src/data/ops/append.d.ts +1 -1
  189. package/src/data/ops/append.js +7 -7
  190. package/src/data/ops/append.spec.js +28 -28
  191. package/src/data/ops/filter.d.ts +1 -1
  192. package/src/data/ops/filter.js +8 -8
  193. package/src/data/ops/filter.spec.js +29 -29
  194. package/src/data/ops/findTreeNode.d.ts +1 -1
  195. package/src/data/ops/findTreeNode.js +15 -15
  196. package/src/data/ops/findTreeNode.spec.js +24 -24
  197. package/src/data/ops/findTreePath.d.ts +6 -6
  198. package/src/data/ops/findTreePath.js +16 -16
  199. package/src/data/ops/index.d.ts +10 -10
  200. package/src/data/ops/index.js +11 -11
  201. package/src/data/ops/insertElement.d.ts +1 -1
  202. package/src/data/ops/insertElement.js +2 -2
  203. package/src/data/ops/merge.d.ts +3 -3
  204. package/src/data/ops/merge.js +9 -9
  205. package/src/data/ops/merge.spec.js +27 -27
  206. package/src/data/ops/moveElement.d.ts +1 -1
  207. package/src/data/ops/moveElement.js +13 -13
  208. package/src/data/ops/removeTreeNodes.d.ts +5 -5
  209. package/src/data/ops/removeTreeNodes.js +5 -5
  210. package/src/data/ops/removeTreeNodes.spec.js +28 -28
  211. package/src/data/ops/updateArray.d.ts +5 -5
  212. package/src/data/ops/updateArray.js +24 -24
  213. package/src/data/ops/updateArray.spec.js +38 -38
  214. package/src/data/ops/updateTree.d.ts +7 -7
  215. package/src/data/ops/updateTree.js +25 -25
  216. package/src/data/ops/updateTree.spec.js +36 -36
  217. package/src/global.scss +13 -13
  218. package/src/hooks/createLocalStorageRef.d.ts +2 -2
  219. package/src/hooks/createLocalStorageRef.js +22 -22
  220. package/src/hooks/index.d.ts +8 -8
  221. package/src/hooks/index.js +7 -7
  222. package/src/hooks/invokeCallback.d.ts +5 -5
  223. package/src/hooks/invokeCallback.js +6 -6
  224. package/src/hooks/invokeCallback.spec.js +53 -53
  225. package/src/hooks/resolveCallback.d.ts +3 -3
  226. package/src/hooks/resolveCallback.js +11 -11
  227. package/src/hooks/resolveCallback.spec.js +54 -54
  228. package/src/hooks/store.d.ts +7 -7
  229. package/src/hooks/store.js +32 -32
  230. package/src/hooks/store.spec.js +73 -73
  231. package/src/hooks/useEffect.d.ts +2 -2
  232. package/src/hooks/useEffect.js +14 -14
  233. package/src/hooks/useInterval.js +7 -7
  234. package/src/hooks/useState.d.ts +2 -2
  235. package/src/hooks/useState.js +15 -15
  236. package/src/hooks/useTrigger.d.ts +4 -4
  237. package/src/hooks/useTrigger.js +20 -20
  238. package/src/hooks/useTrigger.spec.js +102 -102
  239. package/src/index.js +7 -7
  240. package/src/index.scss +6 -6
  241. package/src/svg/BoundedObject.d.ts +22 -22
  242. package/src/svg/BoundedObject.js +59 -59
  243. package/src/svg/ClipRect.d.ts +4 -4
  244. package/src/svg/ClipRect.js +23 -23
  245. package/src/svg/Ellipse.d.ts +23 -23
  246. package/src/svg/Ellipse.js +36 -36
  247. package/src/svg/Line.d.ts +20 -20
  248. package/src/svg/Line.js +32 -32
  249. package/src/svg/NonOverlappingRect.d.ts +5 -5
  250. package/src/svg/NonOverlappingRect.js +14 -14
  251. package/src/svg/NonOverlappingRectGroup.d.ts +3 -3
  252. package/src/svg/NonOverlappingRectGroup.js +36 -36
  253. package/src/svg/Rectangle.d.ts +20 -7
  254. package/src/svg/Rectangle.js +7 -2
  255. package/src/svg/Svg.d.ts +32 -32
  256. package/src/svg/Svg.js +177 -177
  257. package/src/svg/Svg.scss +26 -26
  258. package/src/svg/Text.d.ts +40 -40
  259. package/src/svg/Text.js +78 -78
  260. package/src/svg/TextualBoundedObject.d.ts +6 -6
  261. package/src/svg/TextualBoundedObject.js +28 -28
  262. package/src/svg/index.d.ts +11 -11
  263. package/src/svg/index.js +17 -17
  264. package/src/svg/index.scss +8 -8
  265. package/src/svg/util/Rect.d.ts +40 -40
  266. package/src/svg/util/Rect.js +108 -108
  267. package/src/ui/CSS.d.ts +19 -19
  268. package/src/ui/CSS.js +79 -79
  269. package/src/ui/CSSHelper.d.ts +10 -10
  270. package/src/ui/CSSHelper.js +17 -17
  271. package/src/ui/Container.d.ts +18 -18
  272. package/src/ui/Container.js +183 -183
  273. package/src/ui/ContentResolver.d.ts +12 -12
  274. package/src/ui/ContentResolver.js +78 -78
  275. package/src/ui/Controller.js +114 -114
  276. package/src/ui/Controller.spec.js +414 -414
  277. package/src/ui/Culture.d.ts +51 -51
  278. package/src/ui/Culture.js +129 -129
  279. package/src/ui/Cx.d.ts +18 -18
  280. package/src/ui/Cx.spec.js +193 -193
  281. package/src/ui/DataProxy.d.ts +12 -12
  282. package/src/ui/DataProxy.js +44 -44
  283. package/src/ui/DataProxy.spec.js +26 -23
  284. package/src/ui/DetachedScope.d.ts +21 -21
  285. package/src/ui/DetachedScope.js +93 -93
  286. package/src/ui/FocusManager.d.ts +29 -29
  287. package/src/ui/Format.d.ts +2 -2
  288. package/src/ui/Format.js +107 -107
  289. package/src/ui/HoverSync.d.ts +13 -13
  290. package/src/ui/HoverSync.js +147 -147
  291. package/src/ui/Instance.js +610 -610
  292. package/src/ui/IsolatedScope.d.ts +16 -16
  293. package/src/ui/IsolatedScope.js +29 -29
  294. package/src/ui/IsolatedScope.spec.js +62 -62
  295. package/src/ui/Localization.d.ts +17 -17
  296. package/src/ui/Localization.js +70 -70
  297. package/src/ui/PureContainer.d.ts +16 -16
  298. package/src/ui/PureContainer.js +7 -7
  299. package/src/ui/RenderingContext.d.ts +9 -9
  300. package/src/ui/RenderingContext.js +88 -88
  301. package/src/ui/Repeater.d.ts +60 -60
  302. package/src/ui/Repeater.js +102 -102
  303. package/src/ui/Repeater.spec.js +143 -143
  304. package/src/ui/Rescope.d.ts +10 -10
  305. package/src/ui/Rescope.js +31 -31
  306. package/src/ui/Rescope.spec.js +195 -195
  307. package/src/ui/ResizeManager.d.ts +9 -9
  308. package/src/ui/ResizeManager.js +30 -30
  309. package/src/ui/Restate.d.ts +21 -21
  310. package/src/ui/Restate.js +163 -163
  311. package/src/ui/Restate.spec.js +422 -422
  312. package/src/ui/StaticText.d.ts +8 -8
  313. package/src/ui/StaticText.js +9 -9
  314. package/src/ui/StructuredInstanceDataAccessor.d.ts +16 -16
  315. package/src/ui/StructuredInstanceDataAccessor.js +26 -26
  316. package/src/ui/Text.d.ts +10 -10
  317. package/src/ui/Text.js +25 -25
  318. package/src/ui/VDOM.js +2 -2
  319. package/src/ui/Widget.d.ts +14 -14
  320. package/src/ui/Widget.js +200 -200
  321. package/src/ui/ZIndexManager.d.ts +7 -7
  322. package/src/ui/ZIndexManager.js +11 -11
  323. package/src/ui/adapter/ArrayAdapter.d.ts +17 -17
  324. package/src/ui/adapter/ArrayAdapter.js +142 -142
  325. package/src/ui/adapter/ArrayAdapter.spec.js +55 -55
  326. package/src/ui/adapter/DataAdapter.js +15 -15
  327. package/src/ui/adapter/GroupAdapter.d.ts +23 -23
  328. package/src/ui/adapter/TreeAdapter.d.ts +24 -24
  329. package/src/ui/adapter/TreeAdapter.js +100 -100
  330. package/src/ui/adapter/TreeAdapter.spec.js +67 -67
  331. package/src/ui/adapter/index.d.ts +4 -4
  332. package/src/ui/adapter/index.js +4 -4
  333. package/src/ui/app/History.d.ts +17 -17
  334. package/src/ui/app/History.js +114 -114
  335. package/src/ui/app/Url.d.ts +21 -21
  336. package/src/ui/app/Url.js +103 -103
  337. package/src/ui/app/Url.spec.js +51 -51
  338. package/src/ui/app/index.d.ts +4 -4
  339. package/src/ui/app/index.js +5 -5
  340. package/src/ui/app/startAppLoop.d.ts +3 -3
  341. package/src/ui/app/startHotAppLoop.d.ts +6 -6
  342. package/src/ui/app/startHotAppLoop.js +25 -25
  343. package/src/ui/batchUpdates.d.ts +10 -10
  344. package/src/ui/batchUpdates.js +67 -67
  345. package/src/ui/bind.d.ts +4 -4
  346. package/src/ui/bind.js +7 -7
  347. package/src/ui/createFunctionalComponent.d.ts +1 -1
  348. package/src/ui/createFunctionalComponent.js +68 -68
  349. package/src/ui/createFunctionalComponent.spec.js +400 -400
  350. package/src/ui/expr.d.ts +24 -24
  351. package/src/ui/expr.js +17 -17
  352. package/src/ui/flattenProps.js +21 -21
  353. package/src/ui/index.js +44 -44
  354. package/src/ui/index.scss +2 -2
  355. package/src/ui/keyboardShortcuts.d.ts +4 -4
  356. package/src/ui/keyboardShortcuts.js +31 -31
  357. package/src/ui/layout/Content.d.ts +14 -14
  358. package/src/ui/layout/Content.js +16 -16
  359. package/src/ui/layout/ContentPlaceholder.d.ts +17 -17
  360. package/src/ui/layout/ContentPlaceholder.js +79 -79
  361. package/src/ui/layout/ContentPlaceholder.spec.js +368 -368
  362. package/src/ui/layout/FirstVisibleChildLayout.d.ts +4 -4
  363. package/src/ui/layout/FirstVisibleChildLayout.js +65 -65
  364. package/src/ui/layout/FirstVisibleChildLayout.spec.js +196 -196
  365. package/src/ui/layout/LabelsLeftLayout.d.ts +11 -11
  366. package/src/ui/layout/LabelsLeftLayout.js +59 -59
  367. package/src/ui/layout/LabelsLeftLayout.scss +44 -44
  368. package/src/ui/layout/LabelsTopLayout.d.ts +15 -15
  369. package/src/ui/layout/LabelsTopLayout.js +134 -134
  370. package/src/ui/layout/LabelsTopLayout.scss +63 -63
  371. package/src/ui/layout/UseParentLayout.d.ts +4 -4
  372. package/src/ui/layout/UseParentLayout.js +6 -6
  373. package/src/ui/layout/exploreChildren.d.ts +14 -14
  374. package/src/ui/layout/exploreChildren.js +40 -40
  375. package/src/ui/layout/index.d.ts +10 -10
  376. package/src/ui/layout/index.js +10 -10
  377. package/src/ui/layout/index.scss +3 -3
  378. package/src/ui/layout/variables.scss +2 -2
  379. package/src/ui/selection/KeySelection.d.ts +17 -17
  380. package/src/ui/selection/KeySelection.js +129 -129
  381. package/src/ui/selection/PropertySelection.d.ts +17 -17
  382. package/src/ui/selection/PropertySelection.js +55 -55
  383. package/src/ui/selection/Selection.d.ts +27 -27
  384. package/src/ui/selection/Selection.js +93 -93
  385. package/src/ui/selection/index.d.ts +3 -3
  386. package/src/ui/selection/index.js +3 -3
  387. package/src/ui/tpl.d.ts +2 -2
  388. package/src/ui/tpl.js +4 -4
  389. package/src/ui/variables.scss +1 -1
  390. package/src/util/Component.d.ts +41 -41
  391. package/src/util/Component.js +107 -107
  392. package/src/util/Console.d.ts +4 -4
  393. package/src/util/Console.js +11 -11
  394. package/src/util/DOM.d.ts +33 -33
  395. package/src/util/DOM.js +72 -72
  396. package/src/util/Debug.d.ts +10 -10
  397. package/src/util/Debug.js +45 -45
  398. package/src/util/Format.d.ts +18 -18
  399. package/src/util/Format.spec.js +69 -69
  400. package/src/util/GlobalCacheIdentifier.js +11 -11
  401. package/src/util/GlobalCacheldentifier.d.ts +6 -6
  402. package/src/util/KeyCode.d.ts +21 -21
  403. package/src/util/KeyCode.js +21 -21
  404. package/src/util/SubscriberList.d.ts +41 -41
  405. package/src/util/SubscriberList.js +57 -57
  406. package/src/util/Timing.d.ts +13 -13
  407. package/src/util/Timing.js +57 -57
  408. package/src/util/TraversalStack.js +42 -42
  409. package/src/util/TraversalStack.spec.js +46 -46
  410. package/src/util/addEventListenerWithOptions.d.ts +6 -6
  411. package/src/util/addEventListenerWithOptions.js +9 -9
  412. package/src/util/browserSupportsPassiveEventHandlers.d.ts +4 -4
  413. package/src/util/browserSupportsPassiveEventHandlers.js +18 -18
  414. package/src/util/calculateNaturalElementHeight.d.ts +1 -1
  415. package/src/util/calculateNaturalElementHeight.js +22 -22
  416. package/src/util/call-once.scss +6 -6
  417. package/src/util/coalesce.d.ts +1 -1
  418. package/src/util/coalesce.js +6 -6
  419. package/src/util/color/hslToRgb.d.ts +8 -8
  420. package/src/util/color/hslToRgb.js +27 -27
  421. package/src/util/color/index.d.ts +3 -3
  422. package/src/util/color/index.js +4 -4
  423. package/src/util/color/parseColor.d.ts +59 -59
  424. package/src/util/color/parseColor.js +119 -119
  425. package/src/util/color/rgbToHex.d.ts +8 -8
  426. package/src/util/color/rgbToHex.js +7 -7
  427. package/src/util/color/rgbToHsl.d.ts +8 -8
  428. package/src/util/color/rgbToHsl.js +27 -27
  429. package/src/util/date/dateDiff.d.ts +7 -7
  430. package/src/util/date/dateDiff.js +3 -3
  431. package/src/util/date/diff.d.ts +7 -7
  432. package/src/util/date/diff.js +7 -7
  433. package/src/util/date/encodeDateWithTimezoneOffset.js +18 -18
  434. package/src/util/date/index.d.ts +8 -8
  435. package/src/util/date/index.js +9 -9
  436. package/src/util/date/lowerBoundCheck.d.ts +7 -7
  437. package/src/util/date/lowerBoundCheck.js +6 -6
  438. package/src/util/date/maxDate.d.ts +5 -5
  439. package/src/util/date/maxDate.js +9 -9
  440. package/src/util/date/minDate.d.ts +5 -5
  441. package/src/util/date/minDate.js +9 -9
  442. package/src/util/date/monthStart.d.ts +5 -5
  443. package/src/util/date/monthStart.js +3 -3
  444. package/src/util/date/sameDate.d.ts +6 -6
  445. package/src/util/date/sameDate.js +5 -5
  446. package/src/util/date/upperBoundCheck.d.ts +7 -7
  447. package/src/util/date/upperBoundCheck.js +6 -6
  448. package/src/util/date/upperBoundCheck.spec.js +30 -30
  449. package/src/util/date/zeroTime.d.ts +6 -6
  450. package/src/util/date/zeroTime.js +3 -3
  451. package/src/util/debounce.d.ts +9 -9
  452. package/src/util/debounce.js +18 -18
  453. package/src/util/dummyCallback.d.ts +1 -1
  454. package/src/util/dummyCallback.js +1 -1
  455. package/src/util/escapeSpecialRegexCharacters.d.ts +6 -6
  456. package/src/util/escapeSpecialRegexCharacters.js +3 -3
  457. package/src/util/eventCallbacks.d.ts +4 -4
  458. package/src/util/eventCallbacks.js +2 -2
  459. package/src/util/expandFatArrows.js +118 -118
  460. package/src/util/findScrollableParent.js +16 -16
  461. package/src/util/getActiveElement.js +3 -3
  462. package/src/util/getParentFrameBoundingClientRect.js +21 -21
  463. package/src/util/getScrollerBoundingClientRect.js +21 -21
  464. package/src/util/getSearchQueryPredicate.js +58 -58
  465. package/src/util/getSearchQueryPredicate.spec.js +40 -40
  466. package/src/util/getTopLevelBoundingClientRect.js +13 -13
  467. package/src/util/getVendorPrefix.js +26 -26
  468. package/src/util/index.d.ts +50 -50
  469. package/src/util/index.js +52 -52
  470. package/src/util/index.scss +10 -10
  471. package/src/util/innerTextTrim.d.ts +6 -6
  472. package/src/util/innerTextTrim.js +5 -5
  473. package/src/util/isArray.d.ts +1 -1
  474. package/src/util/isArray.js +3 -3
  475. package/src/util/isDefined.js +3 -3
  476. package/src/util/isDigit.d.ts +6 -6
  477. package/src/util/isDigit.js +3 -3
  478. package/src/util/isFunction.d.ts +1 -1
  479. package/src/util/isFunction.js +3 -3
  480. package/src/util/isNonEmptyArray.d.ts +1 -1
  481. package/src/util/isNonEmptyArray.js +3 -3
  482. package/src/util/isNumber.d.ts +1 -1
  483. package/src/util/isNumber.js +3 -3
  484. package/src/util/isObject.d.ts +1 -1
  485. package/src/util/isObject.js +3 -3
  486. package/src/util/isPromise.d.ts +1 -1
  487. package/src/util/isPromise.js +6 -6
  488. package/src/util/isString.d.ts +1 -1
  489. package/src/util/isString.js +3 -3
  490. package/src/util/isTextInputElement.d.ts +1 -1
  491. package/src/util/isTextInputElement.js +2 -2
  492. package/src/util/isTouchDevice.d.ts +1 -1
  493. package/src/util/isTouchDevice.js +7 -7
  494. package/src/util/isTouchEvent.d.ts +3 -3
  495. package/src/util/isTouchEvent.js +64 -64
  496. package/src/util/isUndefined.d.ts +1 -1
  497. package/src/util/isUndefined.js +3 -3
  498. package/src/util/onIdleCallback.js +13 -13
  499. package/src/util/parseStyle.d.ts +3 -3
  500. package/src/util/parseStyle.js +27 -27
  501. package/src/util/quote.d.ts +2 -2
  502. package/src/util/quote.js +4 -4
  503. package/src/util/reverseSlice.js +9 -9
  504. package/src/util/routeAppend.js +15 -15
  505. package/src/util/routeAppend.spec.js +19 -19
  506. package/src/util/scrollElementIntoView.d.ts +7 -7
  507. package/src/util/scrollElementIntoView.js +34 -34
  508. package/src/util/scss/add-rules.scss +39 -39
  509. package/src/util/scss/calc.scss +40 -40
  510. package/src/util/scss/call-once.scss +10 -10
  511. package/src/util/scss/clockwise.scss +47 -47
  512. package/src/util/scss/colors.scss +7 -7
  513. package/src/util/scss/deep-get.scss +9 -9
  514. package/src/util/scss/deep-merge.scss +18 -18
  515. package/src/util/scss/include.scss +47 -47
  516. package/src/util/scss/index.scss +9 -9
  517. package/src/util/shallowEquals.js +43 -43
  518. package/src/util/throttle.d.ts +8 -8
  519. package/src/util/throttle.js +14 -14
  520. package/src/util/validatedDebounce.js +19 -19
  521. package/src/variables.scss +217 -217
  522. package/src/widgets/AccessorBindings.spec.tsx +66 -66
  523. package/src/widgets/Button.d.ts +58 -58
  524. package/src/widgets/Button.js +118 -118
  525. package/src/widgets/Button.scss +117 -117
  526. package/src/widgets/CxCredit.d.ts +12 -12
  527. package/src/widgets/CxCredit.js +31 -31
  528. package/src/widgets/CxCredit.scss +41 -41
  529. package/src/widgets/DocumentTitle.d.ts +11 -11
  530. package/src/widgets/DocumentTitle.js +68 -68
  531. package/src/widgets/FlexBox.d.ts +69 -69
  532. package/src/widgets/FlexBox.js +92 -92
  533. package/src/widgets/FlexBox.scss +146 -146
  534. package/src/widgets/Heading.d.ts +16 -16
  535. package/src/widgets/Heading.js +32 -32
  536. package/src/widgets/Heading.scss +38 -38
  537. package/src/widgets/HighlightedSearchText.d.ts +9 -9
  538. package/src/widgets/HighlightedSearchText.js +36 -36
  539. package/src/widgets/HighlightedSearchText.scss +18 -18
  540. package/src/widgets/HtmlElement.d.ts +26 -26
  541. package/src/widgets/HtmlElement.js +273 -273
  542. package/src/widgets/HtmlElement.spec.js +57 -57
  543. package/src/widgets/Icon.d.ts +34 -34
  544. package/src/widgets/Icon.js +50 -50
  545. package/src/widgets/Icon.scss +20 -20
  546. package/src/widgets/List.d.ts +96 -96
  547. package/src/widgets/List.js +587 -587
  548. package/src/widgets/List.scss +92 -92
  549. package/src/widgets/ProgressBar.d.ts +17 -17
  550. package/src/widgets/ProgressBar.js +46 -46
  551. package/src/widgets/ProgressBar.scss +49 -49
  552. package/src/widgets/Resizer.d.ts +27 -27
  553. package/src/widgets/Resizer.js +151 -151
  554. package/src/widgets/Resizer.scss +42 -42
  555. package/src/widgets/Sandbox.d.ts +16 -16
  556. package/src/widgets/Sandbox.js +62 -62
  557. package/src/widgets/Section.d.ts +52 -52
  558. package/src/widgets/Section.js +139 -139
  559. package/src/widgets/Section.scss +54 -54
  560. package/src/widgets/animations.scss +10 -10
  561. package/src/widgets/autoFocus.d.ts +1 -1
  562. package/src/widgets/autoFocus.js +9 -9
  563. package/src/widgets/cx.d.ts +1 -1
  564. package/src/widgets/cx.js +71 -71
  565. package/src/widgets/drag-drop/DragClone.scss +33 -33
  566. package/src/widgets/drag-drop/DragHandle.d.ts +10 -10
  567. package/src/widgets/drag-drop/DragHandle.js +37 -37
  568. package/src/widgets/drag-drop/DragHandle.scss +16 -16
  569. package/src/widgets/drag-drop/DragSource.d.ts +45 -45
  570. package/src/widgets/drag-drop/DragSource.js +160 -160
  571. package/src/widgets/drag-drop/DragSource.scss +24 -24
  572. package/src/widgets/drag-drop/DropZone.d.ts +98 -98
  573. package/src/widgets/drag-drop/DropZone.scss +74 -74
  574. package/src/widgets/drag-drop/index.d.ts +4 -4
  575. package/src/widgets/drag-drop/index.js +4 -4
  576. package/src/widgets/drag-drop/index.scss +3 -3
  577. package/src/widgets/drag-drop/ops.d.ts +56 -56
  578. package/src/widgets/drag-drop/ops.js +344 -344
  579. package/src/widgets/drag-drop/variables.scss +11 -11
  580. package/src/widgets/enableAllInternalDependencies.d.ts +1 -1
  581. package/src/widgets/enableAllInternalDependencies.js +11 -11
  582. package/src/widgets/form/Calendar.d.ts +86 -86
  583. package/src/widgets/form/Calendar.variables.scss +63 -63
  584. package/src/widgets/form/Checkbox.d.ts +43 -43
  585. package/src/widgets/form/Checkbox.js +200 -200
  586. package/src/widgets/form/Checkbox.scss +125 -125
  587. package/src/widgets/form/Checkbox.variables.scss +39 -39
  588. package/src/widgets/form/ColorField.d.ts +43 -43
  589. package/src/widgets/form/ColorField.js +397 -397
  590. package/src/widgets/form/ColorField.scss +92 -92
  591. package/src/widgets/form/ColorPicker.d.ts +23 -23
  592. package/src/widgets/form/ColorPicker.js +480 -480
  593. package/src/widgets/form/ColorPicker.scss +275 -275
  594. package/src/widgets/form/ColorPicker.variables.scss +22 -22
  595. package/src/widgets/form/DateField.d.ts +6 -6
  596. package/src/widgets/form/DateField.js +12 -12
  597. package/src/widgets/form/DateTimeField.d.ts +86 -86
  598. package/src/widgets/form/DateTimeField.js +573 -573
  599. package/src/widgets/form/DateTimeField.scss +90 -90
  600. package/src/widgets/form/DateTimePicker.js +391 -391
  601. package/src/widgets/form/DateTimePicker.scss +44 -44
  602. package/src/widgets/form/Field.d.ts +112 -112
  603. package/src/widgets/form/Field.scss +162 -162
  604. package/src/widgets/form/FieldGroup.d.ts +6 -6
  605. package/src/widgets/form/FieldGroup.js +5 -5
  606. package/src/widgets/form/FieldIcon.js +42 -42
  607. package/src/widgets/form/HelpText.d.ts +10 -10
  608. package/src/widgets/form/HelpText.js +9 -9
  609. package/src/widgets/form/HelpText.scss +23 -23
  610. package/src/widgets/form/Label.d.ts +23 -23
  611. package/src/widgets/form/Label.js +89 -89
  612. package/src/widgets/form/Label.scss +36 -36
  613. package/src/widgets/form/LabeledContainer.d.ts +9 -9
  614. package/src/widgets/form/LabeledContainer.js +59 -59
  615. package/src/widgets/form/LookupField.d.ts +173 -173
  616. package/src/widgets/form/LookupField.scss +219 -219
  617. package/src/widgets/form/MonthField.d.ts +92 -92
  618. package/src/widgets/form/MonthField.js +516 -516
  619. package/src/widgets/form/MonthField.scss +99 -99
  620. package/src/widgets/form/MonthPicker.d.ts +74 -74
  621. package/src/widgets/form/MonthPicker.js +632 -632
  622. package/src/widgets/form/MonthPicker.scss +120 -120
  623. package/src/widgets/form/NumberField.d.ts +96 -96
  624. package/src/widgets/form/NumberField.js +459 -459
  625. package/src/widgets/form/NumberField.scss +65 -65
  626. package/src/widgets/form/Radio.d.ts +37 -37
  627. package/src/widgets/form/Radio.js +188 -188
  628. package/src/widgets/form/Radio.scss +122 -122
  629. package/src/widgets/form/Radio.variables.scss +45 -45
  630. package/src/widgets/form/Select.d.ts +69 -69
  631. package/src/widgets/form/Select.js +269 -269
  632. package/src/widgets/form/Select.scss +98 -98
  633. package/src/widgets/form/Slider.d.ts +65 -65
  634. package/src/widgets/form/Slider.js +351 -351
  635. package/src/widgets/form/Slider.scss +119 -119
  636. package/src/widgets/form/Switch.d.ts +38 -38
  637. package/src/widgets/form/Switch.js +118 -118
  638. package/src/widgets/form/Switch.scss +140 -140
  639. package/src/widgets/form/TextArea.d.ts +17 -17
  640. package/src/widgets/form/TextArea.js +186 -186
  641. package/src/widgets/form/TextArea.scss +60 -60
  642. package/src/widgets/form/TextField.d.ts +78 -78
  643. package/src/widgets/form/TextField.js +289 -289
  644. package/src/widgets/form/TextField.scss +55 -55
  645. package/src/widgets/form/TimeField.d.ts +6 -6
  646. package/src/widgets/form/TimeField.js +11 -11
  647. package/src/widgets/form/TimeList.js +84 -84
  648. package/src/widgets/form/UploadButton.js +213 -213
  649. package/src/widgets/form/UploadButton.scss +47 -47
  650. package/src/widgets/form/ValidationError.d.ts +10 -10
  651. package/src/widgets/form/ValidationError.js +44 -44
  652. package/src/widgets/form/ValidationError.scss +21 -21
  653. package/src/widgets/form/ValidationGroup.d.ts +41 -41
  654. package/src/widgets/form/ValidationGroup.js +68 -68
  655. package/src/widgets/form/ValidationGroup.spec.js +148 -148
  656. package/src/widgets/form/Validator.d.ts +8 -8
  657. package/src/widgets/form/Validator.js +21 -21
  658. package/src/widgets/form/Wheel.js +261 -261
  659. package/src/widgets/form/Wheel.scss +150 -150
  660. package/src/widgets/form/index.d.ts +26 -26
  661. package/src/widgets/form/index.js +28 -28
  662. package/src/widgets/form/index.scss +24 -24
  663. package/src/widgets/form/variables.scss +352 -352
  664. package/src/widgets/grid/Grid.scss +680 -680
  665. package/src/widgets/grid/GridCell.d.ts +38 -38
  666. package/src/widgets/grid/GridCell.js +71 -71
  667. package/src/widgets/grid/GridCellEditor.js +41 -41
  668. package/src/widgets/grid/GridRow.js +228 -228
  669. package/src/widgets/grid/GridRowLine.js +24 -24
  670. package/src/widgets/grid/Pagination.d.ts +14 -14
  671. package/src/widgets/grid/Pagination.js +94 -94
  672. package/src/widgets/grid/Pagination.scss +113 -113
  673. package/src/widgets/grid/TreeNode.d.ts +25 -25
  674. package/src/widgets/grid/TreeNode.js +102 -102
  675. package/src/widgets/grid/TreeNode.scss +89 -89
  676. package/src/widgets/grid/index.d.ts +3 -3
  677. package/src/widgets/grid/index.js +14 -14
  678. package/src/widgets/grid/index.scss +3 -3
  679. package/src/widgets/icons/arrow-down.svg +3 -3
  680. package/src/widgets/icons/arrow-right.svg +2 -2
  681. package/src/widgets/icons/base.svg +104 -104
  682. package/src/widgets/icons/calendar-old.svg +169 -169
  683. package/src/widgets/icons/calendar.js +16 -16
  684. package/src/widgets/icons/calendar.svg +187 -187
  685. package/src/widgets/icons/check.js +12 -12
  686. package/src/widgets/icons/clear.js +14 -14
  687. package/src/widgets/icons/clear.svg +74 -74
  688. package/src/widgets/icons/close.js +19 -19
  689. package/src/widgets/icons/close.svg +74 -74
  690. package/src/widgets/icons/cx.js +37 -37
  691. package/src/widgets/icons/drop-down.js +14 -14
  692. package/src/widgets/icons/dropdown-arrow.svg +61 -61
  693. package/src/widgets/icons/file.js +12 -12
  694. package/src/widgets/icons/file.svg +4 -4
  695. package/src/widgets/icons/folder-open.js +14 -14
  696. package/src/widgets/icons/folder-open.svg +5 -5
  697. package/src/widgets/icons/folder.js +12 -12
  698. package/src/widgets/icons/folder.svg +58 -58
  699. package/src/widgets/icons/forward.js +21 -21
  700. package/src/widgets/icons/forward.svg +67 -67
  701. package/src/widgets/icons/index.js +14 -14
  702. package/src/widgets/icons/loading.js +23 -23
  703. package/src/widgets/icons/loading.svg +4 -4
  704. package/src/widgets/icons/menu.js +16 -16
  705. package/src/widgets/icons/pixel-picker.js +17 -17
  706. package/src/widgets/icons/registry.js +53 -53
  707. package/src/widgets/icons/search.js +12 -12
  708. package/src/widgets/icons/search.svg +107 -107
  709. package/src/widgets/icons/sort-asc.js +13 -13
  710. package/src/widgets/icons/sort-asc.svg +3 -3
  711. package/src/widgets/icons/square.js +17 -17
  712. package/src/widgets/index.d.ts +55 -55
  713. package/src/widgets/index.js +57 -57
  714. package/src/widgets/index.scss +16 -16
  715. package/src/widgets/nav/Link.d.ts +26 -26
  716. package/src/widgets/nav/Link.js +7 -7
  717. package/src/widgets/nav/Link.scss +18 -18
  718. package/src/widgets/nav/LinkButton.d.ts +31 -31
  719. package/src/widgets/nav/Menu.d.ts +27 -27
  720. package/src/widgets/nav/Menu.js +406 -406
  721. package/src/widgets/nav/Menu.scss +74 -74
  722. package/src/widgets/nav/MenuItem.d.ts +31 -31
  723. package/src/widgets/nav/MenuItem.js +445 -445
  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/cover.scss +21 -21
  740. package/src/widgets/nav/index.d.ts +10 -10
  741. package/src/widgets/nav/index.js +10 -10
  742. package/src/widgets/nav/index.scss +5 -5
  743. package/src/widgets/nav/variables.scss +25 -25
  744. package/src/widgets/overlay/ContextMenu.d.ts +10 -10
  745. package/src/widgets/overlay/ContextMenu.js +29 -29
  746. package/src/widgets/overlay/Dropdown.d.ts +32 -32
  747. package/src/widgets/overlay/Dropdown.js +612 -612
  748. package/src/widgets/overlay/Dropdown.scss +184 -184
  749. package/src/widgets/overlay/FlyweightTooltipTracker.d.ts +8 -8
  750. package/src/widgets/overlay/FlyweightTooltipTracker.js +36 -36
  751. package/src/widgets/overlay/MsgBox.d.ts +16 -16
  752. package/src/widgets/overlay/MsgBox.js +116 -116
  753. package/src/widgets/overlay/Overlay.d.ts +69 -69
  754. package/src/widgets/overlay/Overlay.js +747 -747
  755. package/src/widgets/overlay/Overlay.scss +66 -66
  756. package/src/widgets/overlay/Toast.d.ts +30 -30
  757. package/src/widgets/overlay/Toast.js +92 -92
  758. package/src/widgets/overlay/Toast.scss +162 -162
  759. package/src/widgets/overlay/Tooltip.d.ts +50 -50
  760. package/src/widgets/overlay/Tooltip.js +288 -288
  761. package/src/widgets/overlay/Tooltip.scss +175 -175
  762. package/src/widgets/overlay/alerts.d.ts +7 -7
  763. package/src/widgets/overlay/alerts.js +39 -39
  764. package/src/widgets/overlay/captureMouse.d.ts +53 -53
  765. package/src/widgets/overlay/captureMouse.js +124 -124
  766. package/src/widgets/overlay/captureMouse.scss +13 -13
  767. package/src/widgets/overlay/index.d.ts +10 -10
  768. package/src/widgets/overlay/index.js +10 -10
  769. package/src/widgets/overlay/index.scss +15 -15
  770. package/src/widgets/overlay/tooltip-ops.d.ts +8 -8
  771. package/src/widgets/overlay/tooltip-ops.js +24 -24
  772. package/src/widgets/variables.scss +144 -144
@@ -1,173 +1,173 @@
1
- import { Instance } from "./../../ui/Instance";
2
- import * as Cx from "../../core";
3
- import { FieldProps } from "./Field";
4
-
5
- export interface LookupBinding {
6
- local: string;
7
- remote: string;
8
- key?: boolean;
9
- }
10
-
11
- interface LookupFieldProps<T = unknown> extends FieldProps {
12
- /** Defaults to `false`. Set to `true` to enable multiple selection. */
13
- multiple?: Cx.BooleanProp;
14
-
15
- /** Selected value. Used only if `multiple` is set to `false`. */
16
- value?: Cx.Prop<number | string>;
17
-
18
- /** A list of selected ids. Used only if `multiple` is set to `true`. */
19
- values?: Cx.Prop<any[]>;
20
-
21
- /** A list of selected records. Used only if `multiple` is set to `true`. */
22
- records?: Cx.RecordsProp;
23
-
24
- /** Text associated with the selection. Used only if `multiple` is set to `false`. */
25
- text?: Cx.StringProp;
26
-
27
- /** The opposite of `disabled`. */
28
- enabled?: Cx.BooleanProp;
29
-
30
- /** Default text displayed when the field is empty. */
31
- placeholder?: Cx.StringProp;
32
-
33
- /** A list of available options. */
34
- options?: Cx.Prop<T[]>;
35
-
36
- /**
37
- * Set to `true` to hide the clear button. It can be used interchangeably with the `showClear` property.
38
- * No effect if `multiple` is used. Default value is `false`.
39
- */
40
- hideClear?: boolean;
41
-
42
- /**
43
- * Set to `false` to hide the clear button. It can be used interchangeably with the `hideClear` property.
44
- * No effect if `multiple` is used. Default value is `true`.
45
- */
46
- showClear?: boolean;
47
-
48
- /**
49
- * Set to `true` to display the clear button even if `required` is set. Default is `false`.
50
- */
51
- alwaysShowClear?: boolean;
52
-
53
- /** Base CSS class to be applied to the field. Defaults to `lookupfield`. */
54
- baseClass?: string;
55
-
56
- /* TODO: Check type */
57
-
58
- /** Additional config to be applied to all items */
59
- itemsConfig?: any;
60
-
61
- /**
62
- * An array of objects describing the mapping of option data to store data.
63
- * Each entry must define `local`, `remote` bindings. `key: true` is used to indicate fields that are used in the primary key.
64
- */
65
- bindings?: LookupBinding[];
66
-
67
- /** A delay in milliseconds between the moment the user stops typing and when tha query is made. Default value is `150`. */
68
- queryDelay?: number;
69
-
70
- /** Minimal number of characters required before query is made. */
71
- minQueryLength?: number;
72
-
73
- /** Set to `true` to hide the search field. */
74
- hideSearchField?: boolean;
75
-
76
- /**
77
- * Number of options required to show the search field.
78
- * If there are only a few options, there is no need for search. Defaults to `7`.
79
- */
80
- minOptionsForSearchField?: number;
81
-
82
- /** Text to display while data is being loaded. */
83
- loadingText?: string;
84
-
85
- /** Error message displayed to the user if server query throws an exception. */
86
- queryErrorText?: string;
87
-
88
- /** Message to be displayed if no entries match the user query. */
89
- noResultsText?: string;
90
-
91
- /** Name of the field which holds the id of the option. Default value is `id`. */
92
- optionIdField?: string;
93
-
94
- /** Name of the field which holds the display text of the option. Default value is `text`. */
95
- optionTextField?: string;
96
-
97
- /**
98
- * Available only in `multiple` selection mode and without custom `bindings`.
99
- * Name of the field to store id of the selected value. Default value is `id`.
100
- */
101
- valueIdField?: string;
102
-
103
- /**
104
- * Available only in `multiple` selection mode.
105
- * Name of the field to store display text of the selected value. Default value is `text`.
106
- */
107
- valueTextField?: string;
108
-
109
- /**
110
- * If `true` `onQuery` will be called only once to fetch all options.
111
- * After that options are filtered client-side.
112
- */
113
- fetchAll?: boolean;
114
-
115
- /**
116
- * If this flag is set along with `fetchAll`, fetched options are cached for the lifetime of the widget.
117
- * Otherwise, data is fetched whenever the dropdown is shown.
118
- */
119
- cacheAll?: boolean;
120
-
121
- /** Close the dropdown after selection. Default is `true`. */
122
- closeOnSelect?: boolean;
123
-
124
- /** Mesasge to be displayed to the user if the entered search query is too short. */
125
- minQueryLengthMessageText?: string;
126
-
127
- /** Name or configuration of the icon to be put on the left side of the input. */
128
- icon?: Cx.StringProp | Cx.Record;
129
-
130
- /** Query function. */
131
- onQuery?:
132
- | string
133
- | ((query: string | { query: string; page: number; pageSize: number }, instance: Instance) => T[] | Promise<T[]>);
134
-
135
- /** Set to true to sort dropdown options. */
136
- sort?: boolean;
137
-
138
- /** Additional list options, such as grouping configuration, custom sorting, etc. */
139
- listOptions?: Cx.Config;
140
-
141
- /** Set to true to show the dropdown immediately after the component has mounted.
142
- * This is commonly used for cell editing in grids. */
143
- autoOpen?: Cx.BooleanProp;
144
-
145
- /** Set to true to allow enter key events to be propagated. This is useful for submitting forms or closing grid cell editors. */
146
- submitOnEnterKey?: Cx.BooleanProp;
147
-
148
- /** Set to true to allow dropdown enter key events to be propagated. This is useful for submitting forms on dropdown enter key selection. */
149
- submitOnDropdownEnterKey?: Cx.BooleanProp;
150
-
151
- /** Defaults to `false`. Used to make the field read-only. */
152
- readOnly?: Cx.BooleanProp;
153
-
154
- /** Set to `true` to enable loading of additional lookup options when the scroll is reaching the end. */
155
- infinite?: boolean;
156
-
157
- /** Number of additional items to be loaded in `infinite` mode. Default is 100. */
158
- pageSize?: number;
159
-
160
- /** Set to `true` to allow quick selection of all displayed lookup items on `ctrl + a` keys combination. */
161
- quickSelectAll?: boolean;
162
-
163
- /** Parameters that affect filtering. */
164
- filterParams?: Cx.StructuredProp;
165
-
166
- /** Callback to create a filter function for given filter params. */
167
- onCreateVisibleOptionsFilter?: (filterParams: any, instance?: Instance) => (record: T) => boolean;
168
-
169
- /** Used in multiple selection lookups in combination with records, to construct the display text out of multiple fields or when additional formatting is needed. */
170
- onGetRecordDisplayText?: (record: T, instance?: Instance) => string;
171
- }
172
-
173
- export class LookupField<T = unknown> extends Cx.Widget<LookupFieldProps<T>> {}
1
+ import { Instance } from "./../../ui/Instance";
2
+ import * as Cx from "../../core";
3
+ import { FieldProps } from "./Field";
4
+
5
+ export interface LookupBinding {
6
+ local: string;
7
+ remote: string;
8
+ key?: boolean;
9
+ }
10
+
11
+ interface LookupFieldProps<T = unknown> extends FieldProps {
12
+ /** Defaults to `false`. Set to `true` to enable multiple selection. */
13
+ multiple?: Cx.BooleanProp;
14
+
15
+ /** Selected value. Used only if `multiple` is set to `false`. */
16
+ value?: Cx.Prop<number | string>;
17
+
18
+ /** A list of selected ids. Used only if `multiple` is set to `true`. */
19
+ values?: Cx.Prop<any[]>;
20
+
21
+ /** A list of selected records. Used only if `multiple` is set to `true`. */
22
+ records?: Cx.RecordsProp;
23
+
24
+ /** Text associated with the selection. Used only if `multiple` is set to `false`. */
25
+ text?: Cx.StringProp;
26
+
27
+ /** The opposite of `disabled`. */
28
+ enabled?: Cx.BooleanProp;
29
+
30
+ /** Default text displayed when the field is empty. */
31
+ placeholder?: Cx.StringProp;
32
+
33
+ /** A list of available options. */
34
+ options?: Cx.Prop<T[]>;
35
+
36
+ /**
37
+ * Set to `true` to hide the clear button. It can be used interchangeably with the `showClear` property.
38
+ * No effect if `multiple` is used. Default value is `false`.
39
+ */
40
+ hideClear?: boolean;
41
+
42
+ /**
43
+ * Set to `false` to hide the clear button. It can be used interchangeably with the `hideClear` property.
44
+ * No effect if `multiple` is used. Default value is `true`.
45
+ */
46
+ showClear?: boolean;
47
+
48
+ /**
49
+ * Set to `true` to display the clear button even if `required` is set. Default is `false`.
50
+ */
51
+ alwaysShowClear?: boolean;
52
+
53
+ /** Base CSS class to be applied to the field. Defaults to `lookupfield`. */
54
+ baseClass?: string;
55
+
56
+ /* TODO: Check type */
57
+
58
+ /** Additional config to be applied to all items */
59
+ itemsConfig?: any;
60
+
61
+ /**
62
+ * An array of objects describing the mapping of option data to store data.
63
+ * Each entry must define `local`, `remote` bindings. `key: true` is used to indicate fields that are used in the primary key.
64
+ */
65
+ bindings?: LookupBinding[];
66
+
67
+ /** A delay in milliseconds between the moment the user stops typing and when tha query is made. Default value is `150`. */
68
+ queryDelay?: number;
69
+
70
+ /** Minimal number of characters required before query is made. */
71
+ minQueryLength?: number;
72
+
73
+ /** Set to `true` to hide the search field. */
74
+ hideSearchField?: boolean;
75
+
76
+ /**
77
+ * Number of options required to show the search field.
78
+ * If there are only a few options, there is no need for search. Defaults to `7`.
79
+ */
80
+ minOptionsForSearchField?: number;
81
+
82
+ /** Text to display while data is being loaded. */
83
+ loadingText?: string;
84
+
85
+ /** Error message displayed to the user if server query throws an exception. */
86
+ queryErrorText?: string;
87
+
88
+ /** Message to be displayed if no entries match the user query. */
89
+ noResultsText?: string;
90
+
91
+ /** Name of the field which holds the id of the option. Default value is `id`. */
92
+ optionIdField?: string;
93
+
94
+ /** Name of the field which holds the display text of the option. Default value is `text`. */
95
+ optionTextField?: string;
96
+
97
+ /**
98
+ * Available only in `multiple` selection mode and without custom `bindings`.
99
+ * Name of the field to store id of the selected value. Default value is `id`.
100
+ */
101
+ valueIdField?: string;
102
+
103
+ /**
104
+ * Available only in `multiple` selection mode.
105
+ * Name of the field to store display text of the selected value. Default value is `text`.
106
+ */
107
+ valueTextField?: string;
108
+
109
+ /**
110
+ * If `true` `onQuery` will be called only once to fetch all options.
111
+ * After that options are filtered client-side.
112
+ */
113
+ fetchAll?: boolean;
114
+
115
+ /**
116
+ * If this flag is set along with `fetchAll`, fetched options are cached for the lifetime of the widget.
117
+ * Otherwise, data is fetched whenever the dropdown is shown.
118
+ */
119
+ cacheAll?: boolean;
120
+
121
+ /** Close the dropdown after selection. Default is `true`. */
122
+ closeOnSelect?: boolean;
123
+
124
+ /** Mesasge to be displayed to the user if the entered search query is too short. */
125
+ minQueryLengthMessageText?: string;
126
+
127
+ /** Name or configuration of the icon to be put on the left side of the input. */
128
+ icon?: Cx.StringProp | Cx.Record;
129
+
130
+ /** Query function. */
131
+ onQuery?:
132
+ | string
133
+ | ((query: string | { query: string; page: number; pageSize: number }, instance: Instance) => T[] | Promise<T[]>);
134
+
135
+ /** Set to true to sort dropdown options. */
136
+ sort?: boolean;
137
+
138
+ /** Additional list options, such as grouping configuration, custom sorting, etc. */
139
+ listOptions?: Cx.Config;
140
+
141
+ /** Set to true to show the dropdown immediately after the component has mounted.
142
+ * This is commonly used for cell editing in grids. */
143
+ autoOpen?: Cx.BooleanProp;
144
+
145
+ /** Set to true to allow enter key events to be propagated. This is useful for submitting forms or closing grid cell editors. */
146
+ submitOnEnterKey?: Cx.BooleanProp;
147
+
148
+ /** Set to true to allow dropdown enter key events to be propagated. This is useful for submitting forms on dropdown enter key selection. */
149
+ submitOnDropdownEnterKey?: Cx.BooleanProp;
150
+
151
+ /** Defaults to `false`. Used to make the field read-only. */
152
+ readOnly?: Cx.BooleanProp;
153
+
154
+ /** Set to `true` to enable loading of additional lookup options when the scroll is reaching the end. */
155
+ infinite?: boolean;
156
+
157
+ /** Number of additional items to be loaded in `infinite` mode. Default is 100. */
158
+ pageSize?: number;
159
+
160
+ /** Set to `true` to allow quick selection of all displayed lookup items on `ctrl + a` keys combination. */
161
+ quickSelectAll?: boolean;
162
+
163
+ /** Parameters that affect filtering. */
164
+ filterParams?: Cx.StructuredProp;
165
+
166
+ /** Callback to create a filter function for given filter params. */
167
+ onCreateVisibleOptionsFilter?: (filterParams: any, instance?: Instance) => (record: T) => boolean;
168
+
169
+ /** Used in multiple selection lookups in combination with records, to construct the display text out of multiple fields or when additional formatting is needed. */
170
+ onGetRecordDisplayText?: (record: T, instance?: Instance) => string;
171
+ }
172
+
173
+ export class LookupField<T = unknown> extends Cx.Widget<LookupFieldProps<T>> {}