@oracle/oraclejet-core-pack 17.0.4 → 17.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (398) hide show
  1. package/oj-c/ActionCard.json +1 -1
  2. package/oj-c/AreaChart.json +270 -178
  3. package/oj-c/Button.json +1 -1
  4. package/oj-c/ButtonsetMultiple.json +8 -8
  5. package/oj-c/ButtonsetSingle.json +8 -8
  6. package/oj-c/CardView.json +25 -12
  7. package/oj-c/Checkbox.json +4 -4
  8. package/oj-c/Checkboxset.json +92 -7
  9. package/oj-c/Collapsible.json +8 -8
  10. package/oj-c/ConveyorBelt.json +67 -5
  11. package/oj-c/DatePicker.json +96 -3
  12. package/oj-c/FilePicker.json +6 -6
  13. package/oj-c/FormControlWrapper/FormControlWrapper.js +54 -0
  14. package/oj-c/FormControlWrapper/index.js +6 -0
  15. package/oj-c/InputDateMask.json +16 -5
  16. package/oj-c/InputDatePicker.json +115 -58
  17. package/oj-c/InputDateText.json +62 -51
  18. package/oj-c/InputMonthMask.json +67 -149
  19. package/oj-c/InputNumber.json +25 -4
  20. package/oj-c/InputPassword.json +12 -1
  21. package/oj-c/InputSensitiveText.json +16 -5
  22. package/oj-c/InputText.json +23 -2
  23. package/oj-c/Legend.json +358 -321
  24. package/oj-c/LegendSection.json +1 -1
  25. package/oj-c/LineChart.json +270 -178
  26. package/oj-c/ListItemLayout.json +20 -0
  27. package/oj-c/ListView.json +84 -62
  28. package/oj-c/MenuButton.json +432 -4
  29. package/oj-c/MessageBanner.json +20 -17
  30. package/oj-c/MessageToast.json +21 -18
  31. package/oj-c/MeterBar.json +1627 -35
  32. package/oj-c/MeterCircle.json +1579 -6
  33. package/oj-c/Popup.json +56 -1
  34. package/oj-c/ProgressButton.json +567 -0
  35. package/oj-c/Radioset.json +92 -7
  36. package/oj-c/RatingGauge.json +2 -2
  37. package/oj-c/SelectMultiple.json +156 -10
  38. package/oj-c/SelectSingle.json +140 -11
  39. package/oj-c/SelectionCard.json +1 -2
  40. package/oj-c/Selector.json +11 -1
  41. package/oj-c/SelectorAll.json +11 -1
  42. package/oj-c/SplitMenuButton.json +161 -327
  43. package/oj-c/TabBar.json +169 -12
  44. package/oj-c/TabBarMixed.json +14 -14
  45. package/oj-c/Table.json +2117 -0
  46. package/oj-c/TagCloud.json +114 -8
  47. package/oj-c/TextArea.json +23 -2
  48. package/oj-c/action-card/component.json +4 -4
  49. package/oj-c/area-chart/__webdriver__/AreaChartWebElementBase.d.ts +2 -2
  50. package/oj-c/area-chart/__webdriver__/AreaChartWebElementBase.js +1 -1
  51. package/oj-c/area-chart/__webdriver__/AreaChartWebElementBase.js.map +1 -1
  52. package/oj-c/area-chart/area-chart.js +6 -5
  53. package/oj-c/area-chart/component.json +30 -5
  54. package/oj-c/area-chart-group/component.json +2 -2
  55. package/oj-c/area-chart-item/component.json +2 -2
  56. package/oj-c/area-chart-series/component.json +2 -2
  57. package/oj-c/avatar/component.json +3 -3
  58. package/oj-c/button/component.json +4 -4
  59. package/oj-c/buttonset-multiple/component.json +4 -4
  60. package/oj-c/buttonset-single/component.json +4 -4
  61. package/oj-c/card-view/__webdriver__/CardViewWebElement.js +5 -13
  62. package/oj-c/card-view/__webdriver__/CardViewWebElement.js.map +1 -1
  63. package/oj-c/card-view/card-view.js +7 -4
  64. package/oj-c/card-view/component.json +3 -3
  65. package/oj-c/checkbox/checkbox.js +1 -17
  66. package/oj-c/checkbox/component.json +3 -3
  67. package/oj-c/checkbox/useCheckboxPreact.js +26 -13
  68. package/oj-c/checkboxset/component.json +3 -3
  69. package/oj-c/checkboxset/useCheckboxsetPreact.js +17 -13
  70. package/oj-c/collapsible/component.json +3 -3
  71. package/oj-c/component.json +13 -5
  72. package/oj-c/conveyor-belt/component.json +3 -3
  73. package/oj-c/corepackbundle.js +1474 -315
  74. package/oj-c/date-picker/__webdriver__/DatePickerWebElementBase.d.ts +7 -0
  75. package/oj-c/date-picker/__webdriver__/DatePickerWebElementBase.js +9 -0
  76. package/oj-c/date-picker/__webdriver__/DatePickerWebElementBase.js.map +1 -1
  77. package/oj-c/date-picker/component.json +26 -5
  78. package/oj-c/date-picker/date-picker.js +3 -3
  79. package/oj-c/drag-handle/component.json +3 -3
  80. package/oj-c/drawer-layout/component.json +3 -3
  81. package/oj-c/drawer-popup/component.json +3 -3
  82. package/oj-c/editable-value/UNSAFE_useConverterLifecycle/useConverterLifecycle.js +3 -3
  83. package/oj-c/editable-value/UNSAFE_useEditableValue/useEditableValue.js +2 -1
  84. package/oj-c/editable-value/UNSAFE_useValue/useValue.js +3 -3
  85. package/oj-c/editable-value/utils/utils.js +13 -1
  86. package/oj-c/file-picker/__webdriver__/FilePickerWebElement.js +20 -10
  87. package/oj-c/file-picker/__webdriver__/FilePickerWebElement.js.map +1 -1
  88. package/oj-c/file-picker/component.json +3 -3
  89. package/oj-c/form-layout/component.json +3 -3
  90. package/oj-c/highlight-text/component.json +3 -3
  91. package/oj-c/hooks/UNSAFE_useEditableValue/useEditableValue.js +36 -18
  92. package/oj-c/hooks/UNSAFE_useListData/useListData.js +10 -6
  93. package/oj-c/input-date-mask/component.json +3 -3
  94. package/oj-c/input-date-picker/__webdriver__/InputDatePickerWebElementBase.d.ts +7 -0
  95. package/oj-c/input-date-picker/__webdriver__/InputDatePickerWebElementBase.js +9 -0
  96. package/oj-c/input-date-picker/__webdriver__/InputDatePickerWebElementBase.js.map +1 -1
  97. package/oj-c/input-date-picker/component.json +29 -5
  98. package/oj-c/input-date-picker/input-date-picker.js +3 -2
  99. package/oj-c/input-date-picker/useInputDatePicker.js +2 -1
  100. package/oj-c/input-date-text/component.json +3 -3
  101. package/oj-c/input-month-mask/component.json +3 -3
  102. package/oj-c/input-number/__webdriver__/InputNumberWebElementBase.d.ts +1 -1
  103. package/oj-c/input-number/__webdriver__/InputNumberWebElementBase.js +1 -1
  104. package/oj-c/input-number/__webdriver__/InputNumberWebElementBase.js.map +1 -1
  105. package/oj-c/input-number/component.json +6 -6
  106. package/oj-c/input-number/useNumberInputTextPreact.js +3 -2
  107. package/oj-c/input-password/component.json +3 -3
  108. package/oj-c/input-password/useInputPasswordPreact.js +14 -11
  109. package/oj-c/input-sensitive-text/component.json +3 -3
  110. package/oj-c/input-sensitive-text/useInputSensitiveTextPreact.js +14 -11
  111. package/oj-c/input-text/component.json +3 -3
  112. package/oj-c/input-text/useInputTextPreact.js +4 -3
  113. package/oj-c/labelled-link/component.json +3 -3
  114. package/oj-c/legend/__webdriver__/LegendWebElementBase.d.ts +1 -1
  115. package/oj-c/legend/__webdriver__/LegendWebElementBase.js +1 -1
  116. package/oj-c/legend/__webdriver__/LegendWebElementBase.js.map +1 -1
  117. package/oj-c/legend/component.json +14 -3
  118. package/oj-c/legend/legend.js +5 -1
  119. package/oj-c/legend-item/component.json +2 -2
  120. package/oj-c/legend-section/component.json +2 -3
  121. package/oj-c/line-chart/__webdriver__/LineChartWebElementBase.d.ts +2 -2
  122. package/oj-c/line-chart/__webdriver__/LineChartWebElementBase.js +1 -1
  123. package/oj-c/line-chart/__webdriver__/LineChartWebElementBase.js.map +1 -1
  124. package/oj-c/line-chart/component.json +30 -5
  125. package/oj-c/line-chart/line-chart.js +6 -5
  126. package/oj-c/line-chart-group/component.json +2 -2
  127. package/oj-c/line-chart-item/component.json +2 -2
  128. package/oj-c/line-chart-series/component.json +2 -2
  129. package/oj-c/list-item-layout/__webdriver__/ListItemLayoutWebElementBase.d.ts +7 -0
  130. package/oj-c/list-item-layout/__webdriver__/ListItemLayoutWebElementBase.js +9 -0
  131. package/oj-c/list-item-layout/__webdriver__/ListItemLayoutWebElementBase.js.map +1 -1
  132. package/oj-c/list-item-layout/component.json +13 -3
  133. package/oj-c/list-item-layout/list-item-layout.js +4 -4
  134. package/oj-c/list-view/__webdriver__/ListViewWebElement.js +4 -13
  135. package/oj-c/list-view/__webdriver__/ListViewWebElement.js.map +1 -1
  136. package/oj-c/list-view/component.json +6 -3
  137. package/oj-c/list-view/list-view-styles.css +4 -0
  138. package/oj-c/list-view/list-view.js +9 -5
  139. package/oj-c/list-view/useHandleRemoveCurrentKey.js +13 -7
  140. package/oj-c/list-view/useListViewPreact.js +10 -6
  141. package/oj-c/menu-button/component.json +50 -5
  142. package/oj-c/message-banner/component.json +3 -3
  143. package/oj-c/message-toast/component.json +3 -3
  144. package/oj-c/metadata/allComponents.json +1967 -319
  145. package/oj-c/meter-bar/__webdriver__/MeterBarWebElementBase.d.ts +33 -0
  146. package/oj-c/meter-bar/__webdriver__/MeterBarWebElementBase.js +9 -0
  147. package/oj-c/meter-bar/__webdriver__/MeterBarWebElementBase.js.map +1 -1
  148. package/oj-c/meter-bar/component.json +215 -3
  149. package/oj-c/meter-bar/meter-bar.js +7 -5
  150. package/oj-c/meter-circle/__webdriver__/MeterCircleWebElementBase.d.ts +26 -0
  151. package/oj-c/meter-circle/__webdriver__/MeterCircleWebElementBase.js.map +1 -1
  152. package/oj-c/meter-circle/component.json +209 -3
  153. package/oj-c/meter-circle/meter-circle.js +5 -3
  154. package/oj-c/min/FormControlWrapper/FormControlWrapper.js +54 -0
  155. package/oj-c/min/FormControlWrapper/index.js +6 -0
  156. package/oj-c/min/area-chart.js +1 -1
  157. package/oj-c/min/area-chart.js.map +1 -1
  158. package/oj-c/min/card-view.js +1 -1
  159. package/oj-c/min/card-view.js.map +1 -1
  160. package/oj-c/min/checkbox.js +1 -1
  161. package/oj-c/min/checkbox.js.map +1 -1
  162. package/oj-c/min/checkboxset.js +1 -1
  163. package/oj-c/min/checkboxset.js.map +1 -1
  164. package/oj-c/min/corepackbundle.css +54 -1
  165. package/oj-c/min/corepackbundle.js +1 -1
  166. package/oj-c/min/corepackbundle.js.map +1 -1
  167. package/oj-c/min/date-picker.js +1 -1
  168. package/oj-c/min/date-picker.js.map +1 -1
  169. package/oj-c/min/editable-value/UNSAFE_useConverterLifecycle/useConverterLifecycle.js +3 -3
  170. package/oj-c/min/editable-value/UNSAFE_useEditableValue/useEditableValue.js +2 -1
  171. package/oj-c/min/editable-value/UNSAFE_useValue/useValue.js +3 -3
  172. package/oj-c/min/editable-value/utils/utils.js +13 -1
  173. package/oj-c/min/hooks/UNSAFE_useEditableValue/useEditableValue.js +36 -18
  174. package/oj-c/min/hooks/UNSAFE_useListData/useListData.js +10 -6
  175. package/oj-c/min/input-date-mask.js +1 -1
  176. package/oj-c/min/input-date-mask.js.map +1 -1
  177. package/oj-c/min/input-date-picker.js +2 -2
  178. package/oj-c/min/input-date-picker.js.map +1 -1
  179. package/oj-c/min/input-date-text.js +1 -1
  180. package/oj-c/min/input-date-text.js.map +1 -1
  181. package/oj-c/min/input-month-mask.js +1 -1
  182. package/oj-c/min/input-month-mask.js.map +1 -1
  183. package/oj-c/min/input-number.js +1 -1
  184. package/oj-c/min/input-number.js.map +1 -1
  185. package/oj-c/min/input-password.js +1 -1
  186. package/oj-c/min/input-password.js.map +1 -1
  187. package/oj-c/min/input-sensitive-text.js +1 -1
  188. package/oj-c/min/input-sensitive-text.js.map +1 -1
  189. package/oj-c/min/input-text.js +1 -1
  190. package/oj-c/min/input-text.js.map +1 -1
  191. package/oj-c/min/legend.js +1 -1
  192. package/oj-c/min/legend.js.map +1 -1
  193. package/oj-c/min/line-chart.js +1 -1
  194. package/oj-c/min/line-chart.js.map +1 -1
  195. package/oj-c/min/list-item-layout.js +1 -1
  196. package/oj-c/min/list-item-layout.js.map +1 -1
  197. package/oj-c/min/list-view/list-view-styles.css +4 -0
  198. package/oj-c/min/list-view.js +1 -1
  199. package/oj-c/min/list-view.js.map +1 -1
  200. package/oj-c/min/menu-button.js +1 -1
  201. package/oj-c/min/menu-button.js.map +1 -1
  202. package/oj-c/min/meter-bar.js +1 -1
  203. package/oj-c/min/meter-bar.js.map +1 -1
  204. package/oj-c/min/meter-circle.js +1 -1
  205. package/oj-c/min/meter-circle.js.map +1 -1
  206. package/oj-c/min/progress-button/progress-button-styles.css +12 -0
  207. package/oj-c/min/progress-button.js +2 -0
  208. package/oj-c/min/progress-button.js.map +1 -0
  209. package/oj-c/min/radioset.js +1 -1
  210. package/oj-c/min/radioset.js.map +1 -1
  211. package/oj-c/min/rating-gauge.js +1 -1
  212. package/oj-c/min/rating-gauge.js.map +1 -1
  213. package/oj-c/min/select-common/PRIVATE_DebouncingDataProviderView/Debouncer.js +78 -0
  214. package/oj-c/min/select-common/PRIVATE_DebouncingDataProviderView/DebouncingDataProviderView.js +92 -0
  215. package/oj-c/min/select-common/PRIVATE_useCache/index.js +6 -0
  216. package/oj-c/min/select-common/PRIVATE_useCache/useCache.js +30 -0
  217. package/oj-c/min/select-common/PRIVATE_useSelectData/CollectionTemplateDataProviderView.js +208 -0
  218. package/oj-c/min/select-common/PRIVATE_useSelectData/index.js +7 -0
  219. package/oj-c/min/select-common/PRIVATE_useSelectData/useCollectionTemplateDataProviderView.js +98 -0
  220. package/oj-c/min/select-common/PRIVATE_useSelectData/useSelectData.js +24 -0
  221. package/oj-c/min/select-common/UNSAFE_useDataProviderListeners/useDataProviderListeners.js +13 -4
  222. package/oj-c/min/select-common/UNSAFE_useWrapDataProvider/useWrapDataProvider.js +10 -6
  223. package/oj-c/min/select-multiple.js +2 -2
  224. package/oj-c/min/select-multiple.js.map +1 -1
  225. package/oj-c/min/select-single.js +2 -2
  226. package/oj-c/min/select-single.js.map +1 -1
  227. package/oj-c/min/selector.js +1 -1
  228. package/oj-c/min/selector.js.map +1 -1
  229. package/oj-c/min/split-menu-button.js +1 -1
  230. package/oj-c/min/split-menu-button.js.map +1 -1
  231. package/oj-c/min/tab-bar-mixed.js +1 -1
  232. package/oj-c/min/tab-bar-mixed.js.map +1 -1
  233. package/oj-c/min/tab-bar.js +1 -1
  234. package/oj-c/min/tab-bar.js.map +1 -1
  235. package/oj-c/min/table/table-styles.css +39 -0
  236. package/oj-c/min/table.js +2 -0
  237. package/oj-c/min/table.js.map +1 -0
  238. package/oj-c/min/tag-cloud.js +1 -1
  239. package/oj-c/min/tag-cloud.js.map +1 -1
  240. package/oj-c/min/text-area.js +1 -1
  241. package/oj-c/min/text-area.js.map +1 -1
  242. package/oj-c/min/utils/PRIVATE_ItemsMenu/items-menu.js +2 -2
  243. package/oj-c/popup/component.json +3 -3
  244. package/oj-c/progress-bar/component.json +3 -3
  245. package/oj-c/progress-button/__webdriver__/ProgressButtonWebElement.d.ts +16 -0
  246. package/oj-c/progress-button/__webdriver__/ProgressButtonWebElement.js +29 -0
  247. package/oj-c/progress-button/__webdriver__/ProgressButtonWebElement.js.map +1 -0
  248. package/oj-c/progress-button/__webdriver__/ProgressButtonWebElementBase.d.ts +72 -0
  249. package/oj-c/progress-button/__webdriver__/ProgressButtonWebElementBase.js +95 -0
  250. package/oj-c/progress-button/__webdriver__/ProgressButtonWebElementBase.js.map +1 -0
  251. package/oj-c/progress-button/__webdriver__/index.d.ts +17 -0
  252. package/oj-c/progress-button/__webdriver__/index.js +34 -0
  253. package/oj-c/progress-button/__webdriver__/index.js.map +1 -0
  254. package/oj-c/progress-button/component.json +258 -0
  255. package/oj-c/progress-button/index.js +6 -0
  256. package/oj-c/progress-button/progress-button-styles.css +12 -0
  257. package/oj-c/progress-button/progress-button.js +50 -0
  258. package/oj-c/progress-button.js +6 -0
  259. package/oj-c/progress-circle/component.json +3 -3
  260. package/oj-c/radioset/component.json +3 -3
  261. package/oj-c/radioset/useRadiosetPreact.js +9 -5
  262. package/oj-c/rating-gauge/component.json +3 -3
  263. package/oj-c/rating-gauge/rating-gauge.js +11 -3
  264. package/oj-c/select-common/PRIVATE_DebouncingDataProviderView/Debouncer.js +78 -0
  265. package/oj-c/select-common/PRIVATE_DebouncingDataProviderView/DebouncingDataProviderView.js +92 -0
  266. package/oj-c/select-common/PRIVATE_useCache/index.js +6 -0
  267. package/oj-c/select-common/PRIVATE_useCache/useCache.js +30 -0
  268. package/oj-c/select-common/PRIVATE_useSelectData/CollectionTemplateDataProviderView.js +208 -0
  269. package/oj-c/select-common/PRIVATE_useSelectData/index.js +7 -0
  270. package/oj-c/select-common/PRIVATE_useSelectData/useCollectionTemplateDataProviderView.js +98 -0
  271. package/oj-c/select-common/PRIVATE_useSelectData/useSelectData.js +24 -0
  272. package/oj-c/select-common/UNSAFE_useDataProviderListeners/useDataProviderListeners.js +13 -4
  273. package/oj-c/select-common/UNSAFE_useWrapDataProvider/useWrapDataProvider.js +10 -6
  274. package/oj-c/select-multiple/component.json +101 -67
  275. package/oj-c/select-multiple/select-multiple.js +2 -2
  276. package/oj-c/select-multiple/useSelectMultiplePreact.js +68 -27
  277. package/oj-c/select-single/component.json +37 -3
  278. package/oj-c/select-single/select-single.js +2 -2
  279. package/oj-c/select-single/useSelectSinglePreact.js +50 -18
  280. package/oj-c/selection-card/component.json +3 -3
  281. package/oj-c/selector/component.json +3 -3
  282. package/oj-c/selector/selector.js +2 -2
  283. package/oj-c/selector-all/component.json +3 -3
  284. package/oj-c/split-menu-button/component.json +21 -4
  285. package/oj-c/tab-bar/__webdriver__/TabBarWebElement.d.ts +29 -0
  286. package/oj-c/tab-bar/__webdriver__/TabBarWebElement.js +89 -0
  287. package/oj-c/tab-bar/__webdriver__/TabBarWebElement.js.map +1 -1
  288. package/oj-c/tab-bar/component.json +13 -3
  289. package/oj-c/tab-bar/tab-bar.js +10 -4
  290. package/oj-c/tab-bar-mixed/DataTabBarMixed.js +1 -1
  291. package/oj-c/tab-bar-mixed/__webdriver__/TabBarMixedWebElement.d.ts +15 -0
  292. package/oj-c/tab-bar-mixed/__webdriver__/TabBarMixedWebElement.js +36 -0
  293. package/oj-c/tab-bar-mixed/__webdriver__/TabBarMixedWebElement.js.map +1 -1
  294. package/oj-c/tab-bar-mixed/component.json +3 -3
  295. package/oj-c/tab-bar-mixed/tab-bar-mixed.js +2 -2
  296. package/oj-c/table/__webdriver__/TableWebElement.d.ts +106 -0
  297. package/oj-c/table/__webdriver__/TableWebElement.js +166 -0
  298. package/oj-c/table/__webdriver__/TableWebElement.js.map +1 -0
  299. package/oj-c/table/__webdriver__/TableWebElementBase.d.ts +153 -0
  300. package/oj-c/table/__webdriver__/TableWebElementBase.js +158 -0
  301. package/oj-c/table/__webdriver__/TableWebElementBase.js.map +1 -0
  302. package/oj-c/table/__webdriver__/index.d.ts +17 -0
  303. package/oj-c/table/__webdriver__/index.js +34 -0
  304. package/oj-c/table/__webdriver__/index.js.map +1 -0
  305. package/oj-c/table/component.json +703 -0
  306. package/oj-c/table/index.js +6 -0
  307. package/oj-c/table/table-styles.css +39 -0
  308. package/oj-c/table/table.js +353 -0
  309. package/oj-c/table.js +6 -0
  310. package/oj-c/tag-cloud/__webdriver__/TagCloudWebElementBase.d.ts +1 -1
  311. package/oj-c/tag-cloud/__webdriver__/TagCloudWebElementBase.js +1 -1
  312. package/oj-c/tag-cloud/__webdriver__/TagCloudWebElementBase.js.map +1 -1
  313. package/oj-c/tag-cloud/component.json +14 -3
  314. package/oj-c/tag-cloud/tag-cloud.js +4 -1
  315. package/oj-c/tag-cloud-item/component.json +2 -2
  316. package/oj-c/text-area/component.json +3 -3
  317. package/oj-c/text-area/useTextAreaAutosizePreact.js +2 -2
  318. package/oj-c/text-area/useTextAreaPreact.js +2 -2
  319. package/oj-c/toggle-button/component.json +3 -3
  320. package/oj-c/types/FormControlWrapper/FormControlWrapper.d.ts +36 -0
  321. package/oj-c/types/FormControlWrapper/index.d.ts +2 -0
  322. package/oj-c/types/checkbox/checkbox.d.ts +2 -1
  323. package/oj-c/types/checkbox/useCheckboxPreact.d.ts +3 -6
  324. package/oj-c/types/checkboxset/checkboxset.d.ts +3 -2
  325. package/oj-c/types/checkboxset/useCheckboxsetPreact.d.ts +3 -6
  326. package/oj-c/types/date-picker/date-picker.d.ts +6 -0
  327. package/oj-c/types/editable-value/UNSAFE_useConverterLifecycle/useConverterLifecycle.d.ts +3 -2
  328. package/oj-c/types/editable-value/UNSAFE_useValue/useValue.d.ts +1 -1
  329. package/oj-c/types/editable-value/utils/utils.d.ts +2 -0
  330. package/oj-c/types/hooks/UNSAFE_useEditableValue/useEditableValue.d.ts +3 -1
  331. package/oj-c/types/hooks/UNSAFE_useListData/useListData.d.ts +2 -1
  332. package/oj-c/types/input-date-mask/input-date-mask.d.ts +2 -1
  333. package/oj-c/types/input-date-picker/input-date-picker.d.ts +8 -2
  334. package/oj-c/types/input-date-picker/useInputDatePicker.d.ts +1 -0
  335. package/oj-c/types/input-date-text/useInputDateTextPreact.d.ts +1 -1
  336. package/oj-c/types/input-month-mask/input-month-mask.d.ts +2 -1
  337. package/oj-c/types/input-number/useNumberInputTextPreact.d.ts +1 -1
  338. package/oj-c/types/input-password/useInputPasswordPreact.d.ts +2 -4
  339. package/oj-c/types/input-sensitive-text/input-sensitive-text.d.ts +2 -1
  340. package/oj-c/types/input-sensitive-text/useInputSensitiveTextPreact.d.ts +2 -4
  341. package/oj-c/types/input-text/useInputTextPreact.d.ts +1 -1
  342. package/oj-c/types/legend-section/legend-section.d.ts +2 -2
  343. package/oj-c/types/list-item-layout/list-item-layout.d.ts +5 -0
  344. package/oj-c/types/list-view/list-view.d.ts +6 -4
  345. package/oj-c/types/list-view/useHandleRemoveCurrentKey.d.ts +4 -2
  346. package/oj-c/types/list-view/useListViewPreact.d.ts +1 -1
  347. package/oj-c/types/meter-bar/meter-bar.d.ts +6 -1
  348. package/oj-c/types/meter-circle/meter-circle.d.ts +1 -1
  349. package/oj-c/types/progress-button/index.d.ts +2 -0
  350. package/oj-c/types/progress-button/progress-button.d.ts +101 -0
  351. package/oj-c/types/radioset/radioset.d.ts +3 -2
  352. package/oj-c/types/radioset/useRadiosetPreact.d.ts +3 -6
  353. package/oj-c/types/rating-gauge/rating-gauge.d.ts +1 -1
  354. package/oj-c/types/select-common/PRIVATE_DebouncingDataProviderView/Debouncer.d.ts +11 -0
  355. package/oj-c/types/select-common/PRIVATE_DebouncingDataProviderView/DebouncingDataProviderView.d.ts +16 -0
  356. package/oj-c/types/select-common/PRIVATE_useCache/index.d.ts +1 -0
  357. package/oj-c/types/select-common/PRIVATE_useCache/useCache.d.ts +1 -0
  358. package/oj-c/types/select-common/PRIVATE_useSelectData/CollectionTemplateDataProviderView.d.ts +43 -0
  359. package/oj-c/types/select-common/PRIVATE_useSelectData/index.d.ts +2 -0
  360. package/oj-c/types/select-common/PRIVATE_useSelectData/useCollectionTemplateDataProviderView.d.ts +15 -0
  361. package/oj-c/types/select-common/PRIVATE_useSelectData/useSelectData.d.ts +15 -0
  362. package/oj-c/types/select-common/UNSAFE_useDataProviderListeners/useDataProviderListeners.d.ts +4 -4
  363. package/oj-c/types/select-common/UNSAFE_useWrapDataProvider/useWrapDataProvider.d.ts +2 -1
  364. package/oj-c/types/select-multiple/select-multiple.d.ts +26 -9
  365. package/oj-c/types/select-multiple/useSelectMultiplePreact.d.ts +28 -36
  366. package/oj-c/types/select-single/select-single.d.ts +26 -8
  367. package/oj-c/types/select-single/useSelectSinglePreact.d.ts +30 -53
  368. package/oj-c/types/tab-bar/tab-bar.d.ts +1 -0
  369. package/oj-c/types/table/index.d.ts +2 -0
  370. package/oj-c/types/table/table.d.ts +239 -0
  371. package/oj-c/types/text-area/useTextAreaAutosizePreact.d.ts +1 -1
  372. package/oj-c/types/text-area/useTextAreaPreact.d.ts +1 -1
  373. package/oj-c/types/utils/PRIVATE_ItemsMenu/items-menu.d.ts +3 -1
  374. package/oj-c/types/utils/UNSAFE_vizTypes/meterTypes.d.ts +2 -0
  375. package/oj-c/utils/PRIVATE_ItemsMenu/items-menu.js +2 -2
  376. package/package.json +4 -4
  377. package/webdriver/docs/assets/navigation.js +1 -1
  378. package/webdriver/docs/assets/search.js +1 -1
  379. package/webdriver/docs/classes/AreaChartWebElement.html +4 -3
  380. package/webdriver/docs/classes/DatePickerWebElement.html +5 -2
  381. package/webdriver/docs/classes/InputDatePickerWebElement.html +6 -2
  382. package/webdriver/docs/classes/InputNumberWebElement.html +1 -1
  383. package/webdriver/docs/classes/LegendWebElement.html +4 -3
  384. package/webdriver/docs/classes/LineChartWebElement.html +4 -3
  385. package/webdriver/docs/classes/ListItemLayoutWebElement.html +6 -2
  386. package/webdriver/docs/classes/MeterBarWebElement.html +6 -2
  387. package/webdriver/docs/classes/ProgressButtonWebElement.html +142 -0
  388. package/webdriver/docs/classes/TabBarMixedWebElement.html +11 -2
  389. package/webdriver/docs/classes/TabBarWebElement.html +18 -2
  390. package/webdriver/docs/classes/TableWebElement.html +192 -0
  391. package/webdriver/docs/classes/TagCloudWebElement.html +4 -3
  392. package/webdriver/docs/functions/findProgressButton.html +8 -0
  393. package/webdriver/docs/functions/findTable.html +8 -0
  394. package/webdriver/docs/modules.html +4 -0
  395. package/webdriver/index.d.ts +2 -0
  396. package/webdriver/index.js +2 -0
  397. package/webdriver/index.js.map +1 -1
  398. package/webdriver/index.ts +2 -0
@@ -0,0 +1,92 @@
1
+ define(["require", "exports", "ojs/ojdataprovider", "./Debouncer"], function (require, exports, ojdataprovider_1, Debouncer_1) {
2
+ "use strict";
3
+ var _a;
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.DebouncingDataProviderView = void 0;
6
+ class AsyncIteratorWrapper {
7
+ constructor(dataProvider, debouncer, params) {
8
+ this._isFirstNext = true;
9
+ this.dataProvider = dataProvider;
10
+ this.debouncer = debouncer;
11
+ this.params = params;
12
+ }
13
+ next() {
14
+ if (this._isFirstNext) {
15
+ this.debouncer.recordRequestTime();
16
+ this._isFirstNext = false;
17
+ const filterText = this.params?.filterCriterion?.text;
18
+ const debounceCallback = (resolve, reject) => {
19
+ if (this.params?.signal?.aborted) {
20
+ reject(this.params?.signal?.reason);
21
+ return;
22
+ }
23
+ const asyncIterable = this.dataProvider.fetchFirst(this.params);
24
+ this._asyncIterator = asyncIterable[Symbol.asyncIterator]();
25
+ const fetchStart = Date.now();
26
+ const iterPromise = this._asyncIterator.next();
27
+ iterPromise.then((result) => {
28
+ const fetchEnd = Date.now();
29
+ this.debouncer.recordResponseTime(fetchEnd - fetchStart, filterText ? filterText.length : 0);
30
+ resolve(result);
31
+ }, reject);
32
+ };
33
+ const callback = (resolve, reject) => {
34
+ const promise = new Promise((pResolve, pReject) => {
35
+ this.debouncer.debounce(debounceCallback, filterText ? filterText.length : 0)(pResolve, pReject);
36
+ });
37
+ return promise.then(resolve, reject);
38
+ };
39
+ return (0, ojdataprovider_1.wrapWithAbortHandling)(this.params?.signal, callback, false);
40
+ }
41
+ return this._asyncIterator.next();
42
+ }
43
+ }
44
+ class AsyncIterableWrapper {
45
+ constructor(dataProvider, debouncer, params) {
46
+ this[_a] = () => {
47
+ return new AsyncIteratorWrapper(this.dataProvider, this.debouncer, this.params);
48
+ };
49
+ this.dataProvider = dataProvider;
50
+ this.debouncer = debouncer;
51
+ this.params = params;
52
+ }
53
+ }
54
+ _a = Symbol.asyncIterator;
55
+ class DebouncingDataProviderView {
56
+ constructor(dataProvider) {
57
+ this._debouncer = new Debouncer_1.Debouncer();
58
+ this.dataProvider = dataProvider;
59
+ }
60
+ fetchFirst(params) {
61
+ return new AsyncIterableWrapper(this.dataProvider, this._debouncer, params);
62
+ }
63
+ fetchByKeys(params) {
64
+ return this.dataProvider.fetchByKeys(params);
65
+ }
66
+ containsKeys(params) {
67
+ return this.dataProvider.containsKeys(params);
68
+ }
69
+ fetchByOffset(params) {
70
+ return this.dataProvider.fetchByOffset(params);
71
+ }
72
+ getTotalSize() {
73
+ return this.dataProvider.getTotalSize();
74
+ }
75
+ isEmpty() {
76
+ return this.dataProvider.isEmpty();
77
+ }
78
+ getCapability(capabilityName) {
79
+ return this.dataProvider.getCapability(capabilityName);
80
+ }
81
+ addEventListener(eventType, listener) {
82
+ this.dataProvider.addEventListener(eventType, listener);
83
+ }
84
+ removeEventListener(eventType, listener) {
85
+ this.dataProvider.removeEventListener(eventType, listener);
86
+ }
87
+ dispatchEvent(event) {
88
+ return this.dataProvider.dispatchEvent(event);
89
+ }
90
+ }
91
+ exports.DebouncingDataProviderView = DebouncingDataProviderView;
92
+ });
@@ -0,0 +1,6 @@
1
+ define(["require", "exports", "./useCache"], function (require, exports, useCache_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useCache = void 0;
5
+ Object.defineProperty(exports, "useCache", { enumerable: true, get: function () { return useCache_1.useCache; } });
6
+ });
@@ -0,0 +1,30 @@
1
+ define(["require", "exports", "preact/hooks", "../utils/utils"], function (require, exports, hooks_1, utils_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useCache = void 0;
5
+ function useCache() {
6
+ const cache = (0, hooks_1.useRef)(new Map());
7
+ return (0, hooks_1.useCallback)((key, value, deps) => {
8
+ if (isChanged(cache.current, key, deps)) {
9
+ cache.current.set(key, { value, deps });
10
+ return value;
11
+ }
12
+ return cache.current.get(key).value;
13
+ }, []);
14
+ }
15
+ exports.useCache = useCache;
16
+ const isChanged = (cache, key, deps) => {
17
+ if (!cache.has(key))
18
+ return true;
19
+ const oldDeps = cache.get(key).deps;
20
+ return (oldDeps.length !== deps.length || oldDeps.some((value, index) => !isEquals(value, deps[index])));
21
+ };
22
+ const isEquals = (value1, value2) => {
23
+ if (value1 === value2)
24
+ return true;
25
+ if (value1 instanceof Set && value2 instanceof Set) {
26
+ return (0, utils_1.isSetEqual)(value1, value2);
27
+ }
28
+ return value1 === value2;
29
+ };
30
+ });
@@ -0,0 +1,208 @@
1
+ define(["require", "exports", "ojs/ojdataprovider"], function (require, exports, ojdataprovider_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.CollectionTemplateDataProviderView = exports.SELECT_INTERNALS = void 0;
5
+ exports.SELECT_INTERNALS = Symbol('__SELECT_INTERNALS__');
6
+ class CollectionTemplateDataProviderView {
7
+ get currentDataProvider() {
8
+ return this.overrideDataProvider ?? this.originalDataProvider;
9
+ }
10
+ setFilterCriterion(filter) {
11
+ const previousFilter = this.filterCriterion;
12
+ this.filterCriterion = filter;
13
+ if (!this.compareFilter(previousFilter, filter)) {
14
+ const event = new ojdataprovider_1.DataProviderRefreshEvent();
15
+ Object.defineProperty(event, exports.SELECT_INTERNALS, {
16
+ value: { cause: 'filterCriterionChanged' }
17
+ });
18
+ this.dispatchEvent(event);
19
+ this.options.onRefresh?.();
20
+ }
21
+ }
22
+ setDataStateOverride(dataStateOverride) {
23
+ if (this.dataStateOverride !== dataStateOverride) {
24
+ this.dataStateOverride = dataStateOverride;
25
+ this.overrideDataProvider =
26
+ this.dataStateOverride?.status === 'success'
27
+ ? new DataStateDataProviderView(this.dataStateOverride)
28
+ : undefined;
29
+ const event = new ojdataprovider_1.DataProviderRefreshEvent();
30
+ Object.defineProperty(event, exports.SELECT_INTERNALS, {
31
+ value: { cause: 'dataOverrideChanged' }
32
+ });
33
+ this.dispatchEvent(event);
34
+ this.options.onRefresh?.();
35
+ }
36
+ }
37
+ compareFilter(fc1, fc2) {
38
+ if (fc1 === fc2)
39
+ return true;
40
+ if (fc1 === undefined || fc2 === undefined)
41
+ return false;
42
+ const keys1 = Object.keys(fc1);
43
+ const keys2 = Object.keys(fc2);
44
+ if (keys1.length !== keys2.length)
45
+ return false;
46
+ return keys1.every((key) => keys2.includes(key) && fc1[key] === fc2[key]);
47
+ }
48
+ constructor(dataProvider, options) {
49
+ this.originalDataProvider = dataProvider;
50
+ this.options = options;
51
+ if (dataProvider.createOptimizedKeyMap)
52
+ this.createOptimizedKeyMap = (initialMap) => dataProvider.createOptimizedKeyMap(initialMap);
53
+ if (dataProvider.createOptimizedKeySet)
54
+ this.createOptimizedKeySet = (initialMap) => dataProvider.createOptimizedKeySet(initialMap);
55
+ }
56
+ async fetchByOffset(parameters) {
57
+ const overriddenParams = this.filterCriterion
58
+ ? { ...parameters, filterCriterion: this.filterCriterion }
59
+ : parameters;
60
+ const results = await this.currentDataProvider.fetchByOffset(overriddenParams);
61
+ this.options.onOffsetFetch?.({ results });
62
+ return results;
63
+ }
64
+ fetchFirst(parameters) {
65
+ const overriddenParams = this.filterCriterion
66
+ ? { ...parameters, filterCriterion: this.filterCriterion }
67
+ : parameters;
68
+ const options = this.options;
69
+ options.onInitializeFetch?.();
70
+ const iterable = this.currentDataProvider.fetchFirst(overriddenParams);
71
+ return {
72
+ [Symbol.asyncIterator]() {
73
+ let offset = 0;
74
+ const iterator = iterable[Symbol.asyncIterator]();
75
+ return {
76
+ async next() {
77
+ const itResult = await iterator.next();
78
+ const { value: results, done = false } = itResult;
79
+ options.onNextIteration?.({ results, offset, done });
80
+ offset += results.data.length;
81
+ return itResult;
82
+ }
83
+ };
84
+ }
85
+ };
86
+ }
87
+ addEventListener(eventType, listener) {
88
+ return this.originalDataProvider.addEventListener(eventType, listener);
89
+ }
90
+ containsKeys(parameters) {
91
+ return this.currentDataProvider.containsKeys(parameters);
92
+ }
93
+ dispatchEvent(event) {
94
+ return this.originalDataProvider.dispatchEvent(event);
95
+ }
96
+ fetchByKeys(parameters) {
97
+ return this.currentDataProvider.fetchByKeys(parameters);
98
+ }
99
+ getCapability(capabilityName) {
100
+ return this.originalDataProvider.getCapability(capabilityName);
101
+ }
102
+ getTotalSize() {
103
+ return this.currentDataProvider.getTotalSize();
104
+ }
105
+ isEmpty() {
106
+ return this.currentDataProvider.isEmpty();
107
+ }
108
+ removeEventListener(eventType, listener) {
109
+ return this.originalDataProvider.removeEventListener(eventType, listener);
110
+ }
111
+ }
112
+ exports.CollectionTemplateDataProviderView = CollectionTemplateDataProviderView;
113
+ class DataStateDataProviderView {
114
+ constructor(dataState) {
115
+ this.dataState = dataState;
116
+ }
117
+ containsKeys(parameters) {
118
+ const { keys } = parameters;
119
+ const { data } = this.dataState;
120
+ const foundKeys = new Set();
121
+ data.data.forEach((item) => {
122
+ if (keys.has(item.metadata.key)) {
123
+ foundKeys.add(item.metadata.key);
124
+ }
125
+ });
126
+ return Promise.resolve({
127
+ containsParameters: parameters,
128
+ results: foundKeys
129
+ });
130
+ }
131
+ fetchByKeys(parameters) {
132
+ const { keys } = parameters;
133
+ const { data } = this.dataState;
134
+ const results = new Map();
135
+ data.data.forEach((item) => {
136
+ if (keys.has(item.metadata.key)) {
137
+ results.set(item.metadata.key, item);
138
+ }
139
+ });
140
+ return Promise.resolve({
141
+ fetchParameters: parameters,
142
+ results
143
+ });
144
+ }
145
+ fetchByOffset(parameters) {
146
+ const { offset, size } = parameters;
147
+ const { data } = this.dataState;
148
+ const filteredData = data.data.slice(offset, size);
149
+ const results = {
150
+ fetchParameters: parameters ?? {},
151
+ results: filteredData.map((item) => ({ data: item.data, metadata: item.metadata })),
152
+ done: offset + (size ?? 0) >= data.totalSize
153
+ };
154
+ return Promise.resolve(results);
155
+ }
156
+ fetchFirst(parameters) {
157
+ const { data } = this.dataState;
158
+ return {
159
+ [Symbol.asyncIterator]() {
160
+ let offset = 0;
161
+ const size = parameters?.size ?? 25;
162
+ const totalSize = data.totalSize;
163
+ return {
164
+ async next() {
165
+ if (offset < totalSize) {
166
+ const filteredData = data.data.slice(offset, size);
167
+ const resultsOverride = filteredData.reduce((acc, value) => {
168
+ acc.data.push(value.data);
169
+ acc.metadata.push(value.metadata);
170
+ return acc;
171
+ }, { data: [], metadata: [] });
172
+ const results = {
173
+ ...resultsOverride,
174
+ fetchParameters: parameters ?? {},
175
+ totalFilteredRowCount: data.totalSize
176
+ };
177
+ const adjustedSize = Math.min(size, totalSize - offset);
178
+ offset += offset + adjustedSize;
179
+ return { value: results, done: false };
180
+ }
181
+ const results = {
182
+ data: [],
183
+ metadata: [],
184
+ fetchParameters: parameters ?? {},
185
+ totalFilteredRowCount: data.totalSize
186
+ };
187
+ return { value: results, done: true };
188
+ }
189
+ };
190
+ }
191
+ };
192
+ }
193
+ getCapability() {
194
+ return null;
195
+ }
196
+ getTotalSize() {
197
+ return Promise.resolve(this.dataState.data.totalSize);
198
+ }
199
+ isEmpty() {
200
+ return this.dataState.data.totalSize === 0 ? 'yes' : 'no';
201
+ }
202
+ addEventListener() { }
203
+ dispatchEvent() {
204
+ return false;
205
+ }
206
+ removeEventListener() { }
207
+ }
208
+ });
@@ -0,0 +1,7 @@
1
+ define(["require", "exports", "./useSelectData", "./CollectionTemplateDataProviderView"], function (require, exports, useSelectData_1, CollectionTemplateDataProviderView_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.SELECT_INTERNALS = exports.useSelectData = void 0;
5
+ Object.defineProperty(exports, "useSelectData", { enumerable: true, get: function () { return useSelectData_1.useSelectData; } });
6
+ Object.defineProperty(exports, "SELECT_INTERNALS", { enumerable: true, get: function () { return CollectionTemplateDataProviderView_1.SELECT_INTERNALS; } });
7
+ });
@@ -0,0 +1,98 @@
1
+ define(["require", "exports", "oj-c/hooks/UNSAFE_useListData/useListData", "preact/hooks", "./CollectionTemplateDataProviderView"], function (require, exports, useListData_1, hooks_1, CollectionTemplateDataProviderView_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useCollectionTemplateDataProviderView = void 0;
5
+ function useCollectionTemplateDataProviderView({ dataProvider, options: { dataStateOverride, filterCriterion } }) {
6
+ const [state, dispatch] = (0, hooks_1.useReducer)((reducer), {
7
+ dataState: (0, useListData_1.getEmptyState)('atLeast')
8
+ });
9
+ const wrappedDP = (0, hooks_1.useMemo)(() => dataProvider == null
10
+ ? dataProvider
11
+ : new CollectionTemplateDataProviderView_1.CollectionTemplateDataProviderView(dataProvider, {
12
+ onInitializeFetch() {
13
+ dispatch({ type: 'loading' });
14
+ },
15
+ onNextIteration({ results: { data, metadata, fetchParameters }, offset, done }) {
16
+ if (fetchParameters.signal?.aborted)
17
+ return;
18
+ const items = data.map((item, index) => ({
19
+ data: item,
20
+ metadata: metadata[index]
21
+ }));
22
+ dispatch({ type: 'append', payload: { items, offset, done } });
23
+ },
24
+ onOffsetFetch({ results: { results, done, fetchParameters } }) {
25
+ if (fetchParameters.signal?.aborted)
26
+ return;
27
+ dispatch({
28
+ type: 'update',
29
+ payload: { items: results, done, offset: fetchParameters.offset }
30
+ });
31
+ },
32
+ onRefresh() {
33
+ dispatch({ type: 'loading' });
34
+ }
35
+ }), [dataProvider]);
36
+ const prevFilterCriterionRef = (0, hooks_1.useRef)();
37
+ if (prevFilterCriterionRef.current !== filterCriterion) {
38
+ prevFilterCriterionRef.current = filterCriterion;
39
+ wrappedDP?.setFilterCriterion(filterCriterion);
40
+ }
41
+ const prevDataStateOverride = (0, hooks_1.useRef)();
42
+ if (prevDataStateOverride.current !== dataStateOverride) {
43
+ prevDataStateOverride.current = dataStateOverride;
44
+ wrappedDP?.setDataStateOverride(dataStateOverride);
45
+ }
46
+ return {
47
+ dataState: state.dataState,
48
+ dataProvider: wrappedDP
49
+ };
50
+ }
51
+ exports.useCollectionTemplateDataProviderView = useCollectionTemplateDataProviderView;
52
+ const reducer = (state, { type, payload }) => {
53
+ switch (type) {
54
+ case 'append': {
55
+ const { dataState } = state;
56
+ const prevData = dataState.status === 'success' ? dataState.data : null;
57
+ const { done, items } = payload;
58
+ return {
59
+ ...state,
60
+ dataState: {
61
+ status: 'success',
62
+ data: {
63
+ data: [...(prevData?.data ?? []), ...items],
64
+ offset: prevData?.offset ?? 0,
65
+ sizePrecision: done ? 'exact' : 'atLeast',
66
+ totalSize: (prevData?.data.length ?? 0) + items.length
67
+ }
68
+ }
69
+ };
70
+ }
71
+ case 'update': {
72
+ return {
73
+ ...state,
74
+ dataState: {
75
+ status: 'success',
76
+ data: {
77
+ data: payload.items,
78
+ offset: payload.offset,
79
+ sizePrecision: payload.done ? 'exact' : 'atLeast',
80
+ totalSize: payload.items.length
81
+ }
82
+ }
83
+ };
84
+ }
85
+ case 'loading': {
86
+ return {
87
+ ...state,
88
+ dataState: {
89
+ status: 'loading',
90
+ data: null
91
+ }
92
+ };
93
+ }
94
+ default:
95
+ return state;
96
+ }
97
+ };
98
+ });
@@ -0,0 +1,24 @@
1
+ define(["require", "exports", "oj-c/hooks/UNSAFE_useListData/useListData", "preact/hooks", "../UNSAFE_useWrapDataProvider/index", "./useCollectionTemplateDataProviderView"], function (require, exports, useListData_1, hooks_1, index_1, useCollectionTemplateDataProviderView_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useSelectData = void 0;
5
+ const noOp = () => { };
6
+ const useSelectData = ({ data, dataStateOverride: propDataStateOverride, filterCriterion, hasCollectionTemplate }) => {
7
+ const dataProvider = (0, index_1.useWrapDataProvider)(data);
8
+ const [listDataState, onLoadRange] = (0, useListData_1.useListData)(dataProvider ?? null, {
9
+ filterCriterion,
10
+ initialRowsFetched: 0
11
+ });
12
+ const dataStateOverride = (0, hooks_1.useMemo)(() => (propDataStateOverride ? { status: 'success', data: propDataStateOverride } : undefined), [propDataStateOverride]);
13
+ const { dataState: templateDataState, dataProvider: templateDataProvider } = (0, useCollectionTemplateDataProviderView_1.useCollectionTemplateDataProviderView)({
14
+ dataProvider,
15
+ options: { dataStateOverride, filterCriterion }
16
+ });
17
+ return {
18
+ dataProvider: hasCollectionTemplate ? templateDataProvider : dataProvider,
19
+ dataState: hasCollectionTemplate ? dataStateOverride ?? templateDataState : listDataState,
20
+ onLoadRange: hasCollectionTemplate ? noOp : onLoadRange
21
+ };
22
+ };
23
+ exports.useSelectData = useSelectData;
24
+ });
@@ -1,4 +1,4 @@
1
- define(["require", "exports", "@oracle/oraclejet-preact/utils/UNSAFE_logger", "preact/hooks", "../utils/utils"], function (require, exports, UNSAFE_logger_1, hooks_1, utils_1) {
1
+ define(["require", "exports", "@oracle/oraclejet-preact/utils/UNSAFE_logger", "preact/hooks", "../PRIVATE_useSelectData/index", "../utils/utils"], function (require, exports, UNSAFE_logger_1, hooks_1, index_1, utils_1) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.useDataProviderListeners = void 0;
@@ -39,12 +39,14 @@ define(["require", "exports", "@oracle/oraclejet-preact/utils/UNSAFE_logger", "p
39
39
  }
40
40
  function useDataProviderListeners({ dataProvider, setValue, setValueToSync, setValueItemsToSync, value, valueItems }) {
41
41
  const isSelectMultiple = value instanceof Set;
42
- const handleRefresh = (0, hooks_1.useCallback)(() => {
42
+ const handleRefresh = (0, hooks_1.useCallback)((event) => {
43
+ if (!shouldHandleRefreshEvent(event))
44
+ return;
43
45
  if (!(0, utils_1.isEmpty)(value)) {
44
46
  setValueToSync(cloneValue(value));
45
47
  setValueItemsToSync(utils_1.DEFAULT_VALUE_ITEMS);
46
48
  }
47
- }, [value]);
49
+ }, [setValueItemsToSync, setValueToSync, value]);
48
50
  const handleMutation = (0, hooks_1.useCallback)((event) => {
49
51
  if ((0, utils_1.isEmpty)(value)) {
50
52
  return;
@@ -82,7 +84,7 @@ define(["require", "exports", "@oracle/oraclejet-preact/utils/UNSAFE_logger", "p
82
84
  setValueItemsToSync(!(0, utils_1.isEmpty)(newValueItems) ? newValueItems : utils_1.DEFAULT_VALUE_ITEMS);
83
85
  }
84
86
  }
85
- }, [value, valueItems]);
87
+ }, [isSelectMultiple, setValue, setValueItemsToSync, setValueToSync, value, valueItems]);
86
88
  (0, hooks_1.useEffect)(() => {
87
89
  dataProvider?.addEventListener('refresh', handleRefresh);
88
90
  dataProvider?.addEventListener('mutate', handleMutation);
@@ -93,4 +95,11 @@ define(["require", "exports", "@oracle/oraclejet-preact/utils/UNSAFE_logger", "p
93
95
  }, [dataProvider, handleMutation, handleRefresh]);
94
96
  }
95
97
  exports.useDataProviderListeners = useDataProviderListeners;
98
+ const shouldHandleRefreshEvent = (event) => {
99
+ if (index_1.SELECT_INTERNALS in event) {
100
+ const { cause = '' } = event[index_1.SELECT_INTERNALS];
101
+ return !['filterCriterionChanged', 'dataOverrideChanged'].includes(cause);
102
+ }
103
+ return true;
104
+ };
96
105
  });
@@ -1,14 +1,18 @@
1
- define(["require", "exports", "ojs/ojdataproviderfactory", "preact/hooks"], function (require, exports, ojdataproviderfactory_1, hooks_1) {
1
+ define(["require", "exports", "ojs/ojdataproviderfactory", "preact/hooks", "../PRIVATE_DebouncingDataProviderView/DebouncingDataProviderView"], function (require, exports, ojdataproviderfactory_1, hooks_1, DebouncingDataProviderView_1) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.useWrapDataProvider = void 0;
5
5
  function useWrapDataProvider(data) {
6
6
  const dataProvider = (0, hooks_1.useMemo)(() => {
7
- return data
8
- ? (0, ojdataproviderfactory_1.getEnhancedDataProvider)(data, {
9
- fetchFirst: { caching: 'visitedByCurrentIterator' }
10
- })
11
- : data;
7
+ if (!data) {
8
+ return data;
9
+ }
10
+ const enhancedDP = (0, ojdataproviderfactory_1.getEnhancedDataProvider)(data, {
11
+ fetchFirst: { caching: 'visitedByCurrentIterator' }
12
+ });
13
+ const filterCapability = enhancedDP.getCapability('fetchFirst');
14
+ const isImmediate = filterCapability?.iterationSpeed === 'immediate';
15
+ return isImmediate ? enhancedDP : new DebouncingDataProviderView_1.DebouncingDataProviderView(enhancedDP);
12
16
  }, [data]);
13
17
  return dataProvider;
14
18
  }