@ytsaurus/ui 0.1.0 → 0.2.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 (222) hide show
  1. package/build/cjs/ui/UIFactory.d.ts +1 -0
  2. package/build/cjs/ui/UIFactory.js.map +1 -1
  3. package/build/cjs/ui/common/hammer/format.js +1 -1
  4. package/build/cjs/ui/common/hammer/format.js.map +1 -1
  5. package/build/cjs/ui/components/CollapsibleSection/CollapsibleSection.d.ts +1 -1
  6. package/build/cjs/ui/components/CollapsibleSection/CollapsibleSection.js.map +1 -1
  7. package/build/cjs/ui/components/MetaTable/presets/main.d.ts +1 -1
  8. package/build/cjs/ui/components/MetaTable/presets/main.js +1 -1
  9. package/build/cjs/ui/components/MetaTable/presets/main.js.map +1 -1
  10. package/build/cjs/ui/components/MetaTable/presets/presets.d.ts +29 -0
  11. package/build/cjs/ui/components/MetaTable/presets/presets.js +94 -1
  12. package/build/cjs/ui/components/MetaTable/presets/presets.js.map +1 -1
  13. package/build/cjs/ui/pages/navigation/Navigation/ContentViewer/ContentViewer.d.ts +2 -0
  14. package/build/cjs/ui/pages/navigation/Navigation/ContentViewer/ContentViewer.js +3 -0
  15. package/build/cjs/ui/pages/navigation/Navigation/ContentViewer/ContentViewer.js.map +1 -1
  16. package/build/cjs/ui/pages/navigation/content/ReplicatedTable/ReplicatedTable.js +12 -4
  17. package/build/cjs/ui/pages/navigation/content/ReplicatedTable/ReplicatedTable.js.map +1 -1
  18. package/build/cjs/ui/pages/navigation/content/ReplicatedTable/ReplicatedTableMeta.d.ts +2 -0
  19. package/build/cjs/ui/pages/navigation/content/ReplicatedTable/ReplicatedTableMeta.js +29 -0
  20. package/build/cjs/ui/pages/navigation/content/ReplicatedTable/ReplicatedTableMeta.js.map +1 -0
  21. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/AutomaticModeSwitch.d.ts +1 -1
  22. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/AutomaticModeSwitch.js.map +1 -1
  23. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.d.ts +5 -0
  24. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.js +33 -0
  25. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.js.map +1 -0
  26. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/TableMeta.d.ts +12 -41
  27. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/TableMeta.js +28 -104
  28. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/TableMeta.js.map +1 -1
  29. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/commonFields.d.ts +10 -0
  30. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/commonFields.js +59 -0
  31. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/commonFields.js.map +1 -0
  32. package/build/cjs/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.js +39 -76
  33. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesHistoryList/index.js.map +1 -0
  34. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryEngineFilter.d.ts +7 -0
  35. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryEngineFilter.js +43 -0
  36. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryEngineFilter.js.map +1 -0
  37. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryTextFilter.d.ts +7 -0
  38. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryTextFilter.js +44 -0
  39. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryTextFilter.js.map +1 -0
  40. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/index.d.ts +6 -0
  41. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/index.js +66 -0
  42. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesListFilter/index.js.map +1 -0
  43. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.d.ts +4 -0
  44. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.js +82 -0
  45. package/build/cjs/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.js.map +1 -0
  46. package/build/cjs/ui/pages/query-tracker/QueriesList/index.js +51 -5
  47. package/build/cjs/ui/pages/query-tracker/QueriesList/index.js.map +1 -1
  48. package/build/cjs/ui/pages/query-tracker/hooks/QueriesList/index.d.ts +10 -0
  49. package/build/cjs/ui/pages/query-tracker/hooks/QueriesList/index.js +42 -0
  50. package/build/cjs/ui/pages/query-tracker/hooks/QueriesList/index.js.map +1 -0
  51. package/build/cjs/ui/pages/query-tracker/hooks/Query/index.d.ts +2 -0
  52. package/build/cjs/ui/pages/query-tracker/hooks/Query/index.js +24 -0
  53. package/build/cjs/ui/pages/query-tracker/hooks/Query/index.js.map +1 -0
  54. package/build/cjs/ui/pages/query-tracker/hooks/QueryListFilter/index.d.ts +2 -2
  55. package/build/cjs/ui/pages/query-tracker/hooks/QueryListFilter/index.js +4 -3
  56. package/build/cjs/ui/pages/query-tracker/hooks/QueryListFilter/index.js.map +1 -1
  57. package/build/cjs/ui/pages/query-tracker/module/api.d.ts +1 -0
  58. package/build/cjs/ui/pages/query-tracker/module/api.js.map +1 -1
  59. package/build/cjs/ui/pages/query-tracker/module/queries_list/actions.d.ts +17 -8
  60. package/build/cjs/ui/pages/query-tracker/module/queries_list/actions.js +38 -22
  61. package/build/cjs/ui/pages/query-tracker/module/queries_list/actions.js.map +1 -1
  62. package/build/cjs/ui/pages/query-tracker/module/queries_list/reducer.d.ts +8 -7
  63. package/build/cjs/ui/pages/query-tracker/module/queries_list/reducer.js +31 -8
  64. package/build/cjs/ui/pages/query-tracker/module/queries_list/reducer.js.map +1 -1
  65. package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.d.ts +18 -8
  66. package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.js +46 -22
  67. package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.js.map +1 -1
  68. package/build/cjs/ui/pages/query-tracker/module/queries_list/types.d.ts +17 -4
  69. package/build/cjs/ui/pages/query-tracker/module/queries_list/types.js +28 -7
  70. package/build/cjs/ui/pages/query-tracker/module/queries_list/types.js.map +1 -1
  71. package/build/cjs/ui/pages/query-tracker/module/query/reducer.js +2 -1
  72. package/build/cjs/ui/pages/query-tracker/module/query/reducer.js.map +1 -1
  73. package/build/cjs/ui/pages/query-tracker/module/query/selectors.js +2 -1
  74. package/build/cjs/ui/pages/query-tracker/module/query/selectors.js.map +1 -1
  75. package/build/cjs/ui/pages/query-tracker/module/query/utills.d.ts +2 -0
  76. package/build/cjs/ui/pages/query-tracker/module/query/utills.js +17 -0
  77. package/build/cjs/ui/pages/query-tracker/module/query/utills.js.map +1 -0
  78. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js +7 -5
  79. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js.map +1 -1
  80. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.d.ts +1 -0
  81. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.js.map +1 -1
  82. package/build/cjs/ui/store/selectors/navigation/content/table.d.ts +1 -1
  83. package/build/cjs/ui/store/selectors/navigation/content/table.js +9 -3
  84. package/build/cjs/ui/store/selectors/navigation/content/table.js.map +1 -1
  85. package/build/cjs/ui/store/selectors/navigation/navigation.js +1 -1
  86. package/build/cjs/ui/store/selectors/navigation/navigation.js.map +1 -1
  87. package/build/cjs/ui/utils/components/tablet-cells/index.js +1 -1
  88. package/build/cjs/ui/utils/components/tablet-cells/index.js.map +1 -1
  89. package/build/cjs/ui/utils/cypress-attributes.d.ts +2 -0
  90. package/build/cjs/ui/utils/cypress-attributes.js +2 -0
  91. package/build/cjs/ui/utils/cypress-attributes.js.map +1 -1
  92. package/build/cjs/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js +1 -1
  93. package/build/cjs/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js.map +1 -1
  94. package/build/esm/ui/UIFactory.d.ts +1 -0
  95. package/build/esm/ui/UIFactory.js.map +1 -1
  96. package/build/esm/ui/common/hammer/format.js +1 -1
  97. package/build/esm/ui/common/hammer/format.js.map +1 -1
  98. package/build/esm/ui/components/CollapsibleSection/CollapsibleSection.d.ts +1 -1
  99. package/build/esm/ui/components/CollapsibleSection/CollapsibleSection.js.map +1 -1
  100. package/build/esm/ui/components/MetaTable/presets/main.d.ts +1 -1
  101. package/build/esm/ui/components/MetaTable/presets/main.js +1 -1
  102. package/build/esm/ui/components/MetaTable/presets/main.js.map +1 -1
  103. package/build/esm/ui/components/MetaTable/presets/presets.d.ts +29 -0
  104. package/build/esm/ui/components/MetaTable/presets/presets.js +88 -1
  105. package/build/esm/ui/components/MetaTable/presets/presets.js.map +1 -1
  106. package/build/esm/ui/pages/navigation/Navigation/ContentViewer/ContentViewer.d.ts +2 -0
  107. package/build/esm/ui/pages/navigation/Navigation/ContentViewer/ContentViewer.js +3 -0
  108. package/build/esm/ui/pages/navigation/Navigation/ContentViewer/ContentViewer.js.map +1 -1
  109. package/build/esm/ui/pages/navigation/content/ReplicatedTable/ReplicatedTable.js +12 -4
  110. package/build/esm/ui/pages/navigation/content/ReplicatedTable/ReplicatedTable.js.map +1 -1
  111. package/build/esm/ui/pages/navigation/content/ReplicatedTable/ReplicatedTableMeta.d.ts +2 -0
  112. package/build/esm/ui/pages/navigation/content/ReplicatedTable/ReplicatedTableMeta.js +23 -0
  113. package/build/esm/ui/pages/navigation/content/ReplicatedTable/ReplicatedTableMeta.js.map +1 -0
  114. package/build/esm/ui/pages/navigation/content/Table/TableMeta/AutomaticModeSwitch.d.ts +1 -1
  115. package/build/esm/ui/pages/navigation/content/Table/TableMeta/AutomaticModeSwitch.js.map +1 -1
  116. package/build/esm/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.css +5 -0
  117. package/build/esm/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.css.map +1 -0
  118. package/build/esm/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.d.ts +5 -0
  119. package/build/esm/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.js +27 -0
  120. package/build/esm/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.js.map +1 -0
  121. package/build/esm/ui/pages/navigation/content/Table/TableMeta/RowsCount/RowsCount.scss +6 -0
  122. package/build/esm/ui/pages/navigation/content/Table/TableMeta/TableMeta.d.ts +12 -41
  123. package/build/esm/ui/pages/navigation/content/Table/TableMeta/TableMeta.js +28 -105
  124. package/build/esm/ui/pages/navigation/content/Table/TableMeta/TableMeta.js.map +1 -1
  125. package/build/esm/ui/pages/navigation/content/Table/TableMeta/commonFields.d.ts +10 -0
  126. package/build/esm/ui/pages/navigation/content/Table/TableMeta/commonFields.js +51 -0
  127. package/build/esm/ui/pages/navigation/content/Table/TableMeta/commonFields.js.map +1 -0
  128. package/build/esm/ui/pages/navigation/tabs/Tablets/Tablets.css +4 -1
  129. package/build/esm/ui/pages/navigation/tabs/Tablets/Tablets.css.map +1 -1
  130. package/build/esm/ui/pages/navigation/tabs/Tablets/Tablets.scss +4 -1
  131. package/build/esm/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.js +39 -76
  132. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesHistoryList/index.js.map +1 -0
  133. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryEngineFilter.d.ts +7 -0
  134. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryEngineFilter.js +35 -0
  135. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryEngineFilter.js.map +1 -0
  136. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryTextFilter.d.ts +7 -0
  137. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryTextFilter.js +36 -0
  138. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/QueryTextFilter.js.map +1 -0
  139. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/index.d.ts +6 -0
  140. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/index.js +60 -0
  141. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesListFilter/index.js.map +1 -0
  142. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.css +30 -0
  143. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.css.map +1 -0
  144. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.d.ts +4 -0
  145. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.js +77 -0
  146. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.js.map +1 -0
  147. package/build/esm/ui/pages/query-tracker/QueriesList/QueriesTutorialList/index.scss +36 -0
  148. package/build/esm/ui/pages/query-tracker/QueriesList/index.css +10 -0
  149. package/build/esm/ui/pages/query-tracker/QueriesList/index.css.map +1 -1
  150. package/build/esm/ui/pages/query-tracker/QueriesList/index.js +52 -6
  151. package/build/esm/ui/pages/query-tracker/QueriesList/index.js.map +1 -1
  152. package/build/esm/ui/pages/query-tracker/QueriesList/index.scss +13 -0
  153. package/build/esm/ui/pages/query-tracker/hooks/QueriesList/index.d.ts +10 -0
  154. package/build/esm/ui/pages/query-tracker/hooks/QueriesList/index.js +33 -0
  155. package/build/esm/ui/pages/query-tracker/hooks/QueriesList/index.js.map +1 -0
  156. package/build/esm/ui/pages/query-tracker/hooks/Query/index.d.ts +2 -0
  157. package/build/esm/ui/pages/query-tracker/hooks/Query/index.js +16 -0
  158. package/build/esm/ui/pages/query-tracker/hooks/Query/index.js.map +1 -0
  159. package/build/esm/ui/pages/query-tracker/hooks/QueryListFilter/index.d.ts +2 -2
  160. package/build/esm/ui/pages/query-tracker/hooks/QueryListFilter/index.js +4 -3
  161. package/build/esm/ui/pages/query-tracker/hooks/QueryListFilter/index.js.map +1 -1
  162. package/build/esm/ui/pages/query-tracker/module/api.d.ts +1 -0
  163. package/build/esm/ui/pages/query-tracker/module/api.js.map +1 -1
  164. package/build/esm/ui/pages/query-tracker/module/queries_list/actions.d.ts +17 -8
  165. package/build/esm/ui/pages/query-tracker/module/queries_list/actions.js +33 -19
  166. package/build/esm/ui/pages/query-tracker/module/queries_list/actions.js.map +1 -1
  167. package/build/esm/ui/pages/query-tracker/module/queries_list/reducer.d.ts +8 -7
  168. package/build/esm/ui/pages/query-tracker/module/queries_list/reducer.js +33 -10
  169. package/build/esm/ui/pages/query-tracker/module/queries_list/reducer.js.map +1 -1
  170. package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.d.ts +18 -8
  171. package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.js +35 -15
  172. package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.js.map +1 -1
  173. package/build/esm/ui/pages/query-tracker/module/queries_list/types.d.ts +17 -4
  174. package/build/esm/ui/pages/query-tracker/module/queries_list/types.js +21 -5
  175. package/build/esm/ui/pages/query-tracker/module/queries_list/types.js.map +1 -1
  176. package/build/esm/ui/pages/query-tracker/module/query/reducer.js +2 -1
  177. package/build/esm/ui/pages/query-tracker/module/query/reducer.js.map +1 -1
  178. package/build/esm/ui/pages/query-tracker/module/query/selectors.js +2 -1
  179. package/build/esm/ui/pages/query-tracker/module/query/selectors.js.map +1 -1
  180. package/build/esm/ui/pages/query-tracker/module/query/utills.d.ts +2 -0
  181. package/build/esm/ui/pages/query-tracker/module/query/utills.js +8 -0
  182. package/build/esm/ui/pages/query-tracker/module/query/utills.js.map +1 -0
  183. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js +8 -6
  184. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js.map +1 -1
  185. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.css +4 -0
  186. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.css.map +1 -0
  187. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.d.ts +1 -0
  188. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.js +1 -0
  189. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.js.map +1 -1
  190. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleTableField/BundleTableField.scss +7 -0
  191. package/build/esm/ui/store/selectors/navigation/content/table.d.ts +1 -1
  192. package/build/esm/ui/store/selectors/navigation/content/table.js +9 -3
  193. package/build/esm/ui/store/selectors/navigation/content/table.js.map +1 -1
  194. package/build/esm/ui/store/selectors/navigation/navigation.js +1 -1
  195. package/build/esm/ui/store/selectors/navigation/navigation.js.map +1 -1
  196. package/build/esm/ui/utils/components/tablet-cells/index.js +1 -1
  197. package/build/esm/ui/utils/components/tablet-cells/index.js.map +1 -1
  198. package/build/esm/ui/utils/cypress-attributes.d.ts +2 -0
  199. package/build/esm/ui/utils/cypress-attributes.js +2 -0
  200. package/build/esm/ui/utils/cypress-attributes.js.map +1 -1
  201. package/build/esm/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js +1 -1
  202. package/build/esm/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js.map +1 -1
  203. package/build/img/svg/YT-login-page-background-dark.svg +96 -14
  204. package/build/img/svg/YT-login-page-background-light.svg +94 -14
  205. package/build/img/svg/icons/learn.svg +3 -0
  206. package/package.json +2 -2
  207. package/build/cjs/ui/pages/query-tracker/QueriesHistoryList/QueriesHistoryFilter/index.d.ts +0 -9
  208. package/build/cjs/ui/pages/query-tracker/QueriesHistoryList/QueriesHistoryFilter/index.js +0 -76
  209. package/build/cjs/ui/pages/query-tracker/QueriesHistoryList/QueriesHistoryFilter/index.js.map +0 -1
  210. package/build/cjs/ui/pages/query-tracker/QueriesHistoryList/index.js.map +0 -1
  211. package/build/esm/ui/pages/query-tracker/QueriesHistoryList/QueriesHistoryFilter/index.d.ts +0 -9
  212. package/build/esm/ui/pages/query-tracker/QueriesHistoryList/QueriesHistoryFilter/index.js +0 -70
  213. package/build/esm/ui/pages/query-tracker/QueriesHistoryList/QueriesHistoryFilter/index.js.map +0 -1
  214. package/build/esm/ui/pages/query-tracker/QueriesHistoryList/index.js.map +0 -1
  215. /package/build/cjs/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.d.ts +0 -0
  216. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.css +0 -0
  217. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.css.map +0 -0
  218. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.d.ts +0 -0
  219. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList → QueriesList/QueriesHistoryList}/index.scss +0 -0
  220. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList/QueriesHistoryFilter → QueriesList/QueriesListFilter}/index.css +0 -0
  221. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList/QueriesHistoryFilter → QueriesList/QueriesListFilter}/index.css.map +0 -0
  222. /package/build/esm/ui/pages/query-tracker/{QueriesHistoryList/QueriesHistoryFilter → QueriesList/QueriesListFilter}/index.scss +0 -0
@@ -60,6 +60,7 @@ export type QueriiesListCursorParams = {
60
60
  cursor_direction: QueriesHistoryCursorDirection;
61
61
  };
62
62
  export type QueriesListParams = {
63
+ is_tutorial?: string;
63
64
  user?: string;
64
65
  engine?: string;
65
66
  filter?: string;
@@ -1 +1 @@
1
- {"version":3,"names":["allowDirectDownload","getQueryTrackerCluster","getQueryTrackerStage","extractBatchV4Values","splitBatchResults","YTApiId","ytApiV4Id","ytApiV3","ypath","getClusterConfigByName","getClusterProxy","generateQuerySettings","generateQueryText","QT_STAGE","getQTApiSetup","QT_CLUSTER","cluster","proxy","QueryEngine","Engines","Object","values","isEngine","engine","includes","QueryStatus","ProgressStatuses","RUNNING","PENDING","COMPLETING","FAILING","ABORTING","AbortableStatuses","CompletedStates","DRAFT","ABORTED","COMPLETED","FAILED","QueriesHistoryCursorDirection","generateQueryFromTable","_x","_x2","_generateQueryFromTable","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","path","selectedCluster","node","schema","wrap","_callee$","_context","prev","next","get","parameters","concat","attributes","output_format","$value","$attributes","encode_utf8","setup","sent","type","getValue","abrupt","query","columns","map","_ref3","name","pageSize","schemaExists","Boolean","length","annotations","settings","undefined","stop","loadQueriesList","_ref2","params","cursor","limit","listQueries","_objectSpread","stage","makeGetQueryParams","query_id","getQuery","startQuery","queryInstance","abortQuery","message","readQueryResults","result_index","lower_row_index","start","upper_row_index","end","value_format","field_weight_limit","cellsSize","getDownloadQueryResultURL","queryId","resultIndex","URLSearchParams","toString","set","clusterConfig","base","id","requestQueries","_x3","_requestQueries","_callee2","ids","_extracted$results","requests","resp","extracted","_splitBatchResults","results","_callee2$","_context2","command","executeBatch","getQueryResultMeta","_x4","_getQueryResultMeta","_callee3","_args3","_callee3$","_context3","getQueryResults"],"sources":["api.ts"],"sourcesContent":["import {allowDirectDownload, getQueryTrackerCluster, getQueryTrackerStage} from '../../../config';\nimport {extractBatchV4Values, splitBatchResults} from '../../../utils/utils';\nimport {BatchResultsItem} from '../../../../shared/yt-types';\nimport {YTApiId, ytApiV4Id, ytApiV3} from '../../../rum/rum-wrap-api';\nimport ypath from '../../../common/thor/ypath';\nimport {Plan} from './types/plan';\nimport {TypeArray} from '../../../components/SchemaDataType/dataTypes';\nimport {getClusterConfigByName, getClusterProxy} from '../../../store/selectors/global';\nimport {generateQuerySettings, generateQueryText} from '../utils/query_generate';\n\nconst QT_STAGE = getQueryTrackerStage();\n\nfunction getQTApiSetup(): {proxy?: string} {\n const QT_CLUSTER = getQueryTrackerCluster();\n if (QT_CLUSTER) {\n const cluster = getClusterConfigByName(QT_CLUSTER);\n if (cluster) {\n return {\n proxy: getClusterProxy(cluster),\n };\n }\n }\n return {};\n}\n\nexport enum QueryEngine {\n YT_QL = 'ql',\n YQL = 'yql',\n\n CHYT = 'chyt',\n}\n\nexport const Engines = Object.values(QueryEngine);\n\nexport function isEngine(engine: string): engine is QueryEngine {\n return Engines.includes(engine as unknown as QueryEngine);\n}\n\nexport type QueryItemId = string;\n\nexport type YQLStatistic = {sum?: number; count?: number; avg?: number; max?: number; min?: number};\n\nexport type YQLSstatistics = Record<string, any>;\n\nexport interface DraftQuery {\n engine: QueryEngine;\n query: string;\n annotations?: {\n title?: string;\n };\n settings?: {};\n}\n\nexport interface QueryItem extends DraftQuery {\n id: QueryItemId;\n start_time: string;\n finish_time: string;\n user: string;\n state: QueryStatus;\n result_count: number;\n progress?: {\n yql_plan?: Plan;\n yql_statistics?: YQLSstatistics;\n };\n error: unknown;\n}\n\nexport enum QueryStatus {\n DRAFT = 'draft',\n RUNNING = 'running',\n PENDING = 'pending',\n COMPLETING = 'completing',\n COMPLETED = 'completed',\n FAILING = 'failing',\n FAILED = 'failed',\n ABORTING = 'aborting',\n ABORTED = 'aborted',\n}\n\nexport const ProgressStatuses = [\n QueryStatus.RUNNING,\n QueryStatus.PENDING,\n QueryStatus.COMPLETING,\n QueryStatus.FAILING,\n QueryStatus.ABORTING,\n];\n\nexport const AbortableStatuses = [QueryStatus.RUNNING, QueryStatus.PENDING];\n\nexport const CompletedStates = [\n QueryStatus.DRAFT,\n QueryStatus.ABORTED,\n QueryStatus.COMPLETED,\n QueryStatus.FAILED,\n];\n\nexport enum QueriesHistoryCursorDirection {\n PAST = 'past',\n FUTURE = 'future',\n}\n\nexport type QueriiesListCursorParams = {\n cursor_time: string;\n cursor_direction: QueriesHistoryCursorDirection;\n};\n\nexport type QueriesListParams = {\n user?: string;\n engine?: string;\n filter?: string;\n};\n\nexport type QueriesListRequestParams = {\n params: QueriesListParams;\n cursor?: QueriiesListCursorParams;\n limit?: number;\n};\n\nexport async function generateQueryFromTable(\n engine: QueryEngine,\n {cluster, path}: {cluster: string; path: string},\n): Promise<DraftQuery | undefined> {\n const selectedCluster = getClusterConfigByName(cluster);\n const node = await ytApiV3.get({\n parameters: {\n path: `${path}/@`,\n attributes: ['type', 'schema'],\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n setup: {\n proxy: getClusterProxy(selectedCluster),\n },\n });\n if (node.type === 'table') {\n const schema = ypath.getValue(node.schema) as {name: string}[];\n return {\n engine,\n query: generateQueryText(cluster, engine, {\n path,\n columns: schema.map(({name}) => name),\n pageSize: 50,\n schemaExists: Boolean(schema.length),\n }),\n annotations: {},\n settings: generateQuerySettings(engine, cluster),\n };\n }\n return undefined;\n}\n\nexport function loadQueriesList({params, cursor, limit}: QueriesListRequestParams): Promise<{\n incomplete: boolean;\n queries: QueryItem[];\n timestamp: number;\n}> {\n return ytApiV4Id.listQueries(YTApiId.listQueries, {\n parameters: {\n ...params,\n ...cursor,\n limit,\n stage: QT_STAGE,\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n setup: getQTApiSetup(),\n });\n}\n\nfunction makeGetQueryParams(query_id: string) {\n return {\n query_id,\n stage: QT_STAGE,\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n };\n}\n\nexport function getQuery(query_id: string): Promise<QueryItem> {\n return ytApiV4Id.getQuery(YTApiId.getQuery, {\n parameters: makeGetQueryParams(query_id),\n setup: getQTApiSetup(),\n });\n}\n\nexport function startQuery(queryInstance: DraftQuery): Promise<{query_id: QueryItemId}> {\n const {query, engine, settings, annotations} = queryInstance;\n return ytApiV4Id.startQuery(YTApiId.startQuery, {\n parameters: {\n query,\n engine,\n annotations,\n settings,\n stage: QT_STAGE,\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n setup: getQTApiSetup(),\n });\n}\n\nexport function abortQuery(query_id: string, message?: string): Promise<void> {\n return ytApiV4Id.abortQuery(YTApiId.abortQuery, {\n parameters: {\n query_id,\n message,\n stage: QT_STAGE,\n },\n setup: getQTApiSetup(),\n });\n}\n\ntype QueryResult = {\n all_column_names: string[];\n incomplete_all_column_names: boolean;\n incomplete_columns: boolean;\n rows: Record<string, [unknown, string]>[]; //Record<string, {$value: unknown; $type: string}>[];\n yql_type_registry: TypeArray[];\n};\n\nexport function readQueryResults(\n query_id: string,\n result_index = 0,\n cursor?: {start: number; end: number},\n settings?: {\n cellsSize: number;\n },\n): Promise<QueryResult> {\n return ytApiV4Id.readQueryResults(YTApiId.readQueryResults, {\n parameters: {\n query_id,\n result_index,\n lower_row_index: cursor?.start,\n upper_row_index: cursor?.end,\n output_format: {\n $value: 'web_json',\n $attributes: {\n value_format: 'yql',\n field_weight_limit: settings?.cellsSize,\n encode_utf8: 'false',\n },\n },\n stage: QT_STAGE,\n },\n setup: getQTApiSetup(),\n });\n}\n\nexport function getDownloadQueryResultURL(\n cluster: string,\n queryId: string,\n resultIndex = 0,\n cursor?: {start: number; end: number},\n) {\n const params = new URLSearchParams({\n query_id: queryId,\n result_index: resultIndex.toString(),\n ...(cursor\n ? {\n lower_row_index: cursor.start.toString(),\n upper_row_index: cursor.end.toString(),\n }\n : {}),\n });\n\n if (QT_STAGE) {\n params.set('stage', QT_STAGE);\n }\n const clusterConfig = getClusterConfigByName(getQueryTrackerCluster() || cluster);\n if (clusterConfig) {\n const base = allowDirectDownload()\n ? `//${clusterConfig.proxy}/api/v4/read_query_result`\n : `/api/yt/${clusterConfig.id}/api/v4/read_query_result`;\n return `${base}?${params.toString()}`;\n }\n return '';\n}\n\nexport async function requestQueries(ids: string[]): Promise<QueryItem[]> {\n const requests: any[] = ids.map((query_id) => ({\n command: 'get_query',\n parameters: makeGetQueryParams(query_id),\n }));\n const resp = (await ytApiV4Id.executeBatch(YTApiId.getQuery, {\n parameters: {requests},\n setup: getQTApiSetup(),\n })) as unknown as {results: BatchResultsItem<QueryItem>[]};\n\n const extracted = extractBatchV4Values(resp, requests);\n const {results} = splitBatchResults(extracted.results ?? []);\n return results;\n}\n\nexport type QueryResultMetaScheme = {\n name: string;\n required: boolean;\n type: string;\n type_v3: {\n type_name: string;\n item: string;\n };\n};\n\nexport type QueryResultMeta = {\n id: string;\n result_index: number;\n schema: {\n $attributes: {\n strict: boolean;\n unique_keys: boolean;\n };\n $value: QueryResultMetaScheme[];\n };\n data_statistics: {\n chunk_count: number;\n row_count: number;\n uncompressed_data_size: number;\n compressed_data_size: number;\n data_weight: number;\n regular_disk_space: number;\n erasure_disk_space: number;\n unmerged_row_count: number;\n unmerged_data_weight: number;\n };\n};\n\nexport async function getQueryResultMeta(\n query_id: string,\n result_index = 0,\n): Promise<QueryResultMeta | undefined> {\n return ytApiV4Id.getQueryResults(YTApiId.readQueryResults, {\n parameters: {query_id, result_index, stage: QT_STAGE},\n setup: getQTApiSetup(),\n });\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["allowDirectDownload","getQueryTrackerCluster","getQueryTrackerStage","extractBatchV4Values","splitBatchResults","YTApiId","ytApiV4Id","ytApiV3","ypath","getClusterConfigByName","getClusterProxy","generateQuerySettings","generateQueryText","QT_STAGE","getQTApiSetup","QT_CLUSTER","cluster","proxy","QueryEngine","Engines","Object","values","isEngine","engine","includes","QueryStatus","ProgressStatuses","RUNNING","PENDING","COMPLETING","FAILING","ABORTING","AbortableStatuses","CompletedStates","DRAFT","ABORTED","COMPLETED","FAILED","QueriesHistoryCursorDirection","generateQueryFromTable","_x","_x2","_generateQueryFromTable","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","path","selectedCluster","node","schema","wrap","_callee$","_context","prev","next","get","parameters","concat","attributes","output_format","$value","$attributes","encode_utf8","setup","sent","type","getValue","abrupt","query","columns","map","_ref3","name","pageSize","schemaExists","Boolean","length","annotations","settings","undefined","stop","loadQueriesList","_ref2","params","cursor","limit","listQueries","_objectSpread","stage","makeGetQueryParams","query_id","getQuery","startQuery","queryInstance","abortQuery","message","readQueryResults","result_index","lower_row_index","start","upper_row_index","end","value_format","field_weight_limit","cellsSize","getDownloadQueryResultURL","queryId","resultIndex","URLSearchParams","toString","set","clusterConfig","base","id","requestQueries","_x3","_requestQueries","_callee2","ids","_extracted$results","requests","resp","extracted","_splitBatchResults","results","_callee2$","_context2","command","executeBatch","getQueryResultMeta","_x4","_getQueryResultMeta","_callee3","_args3","_callee3$","_context3","getQueryResults"],"sources":["api.ts"],"sourcesContent":["import {allowDirectDownload, getQueryTrackerCluster, getQueryTrackerStage} from '../../../config';\nimport {extractBatchV4Values, splitBatchResults} from '../../../utils/utils';\nimport {BatchResultsItem} from '../../../../shared/yt-types';\nimport {YTApiId, ytApiV4Id, ytApiV3} from '../../../rum/rum-wrap-api';\nimport ypath from '../../../common/thor/ypath';\nimport {Plan} from './types/plan';\nimport {TypeArray} from '../../../components/SchemaDataType/dataTypes';\nimport {getClusterConfigByName, getClusterProxy} from '../../../store/selectors/global';\nimport {generateQuerySettings, generateQueryText} from '../utils/query_generate';\n\nconst QT_STAGE = getQueryTrackerStage();\n\nfunction getQTApiSetup(): {proxy?: string} {\n const QT_CLUSTER = getQueryTrackerCluster();\n if (QT_CLUSTER) {\n const cluster = getClusterConfigByName(QT_CLUSTER);\n if (cluster) {\n return {\n proxy: getClusterProxy(cluster),\n };\n }\n }\n return {};\n}\n\nexport enum QueryEngine {\n YT_QL = 'ql',\n YQL = 'yql',\n\n CHYT = 'chyt',\n}\n\nexport const Engines = Object.values(QueryEngine);\n\nexport function isEngine(engine: string): engine is QueryEngine {\n return Engines.includes(engine as unknown as QueryEngine);\n}\n\nexport type QueryItemId = string;\n\nexport type YQLStatistic = {sum?: number; count?: number; avg?: number; max?: number; min?: number};\n\nexport type YQLSstatistics = Record<string, any>;\n\nexport interface DraftQuery {\n engine: QueryEngine;\n query: string;\n annotations?: {\n title?: string;\n };\n settings?: {};\n}\n\nexport interface QueryItem extends DraftQuery {\n id: QueryItemId;\n start_time: string;\n finish_time: string;\n user: string;\n state: QueryStatus;\n result_count: number;\n progress?: {\n yql_plan?: Plan;\n yql_statistics?: YQLSstatistics;\n };\n error: unknown;\n}\n\nexport enum QueryStatus {\n DRAFT = 'draft',\n RUNNING = 'running',\n PENDING = 'pending',\n COMPLETING = 'completing',\n COMPLETED = 'completed',\n FAILING = 'failing',\n FAILED = 'failed',\n ABORTING = 'aborting',\n ABORTED = 'aborted',\n}\n\nexport const ProgressStatuses = [\n QueryStatus.RUNNING,\n QueryStatus.PENDING,\n QueryStatus.COMPLETING,\n QueryStatus.FAILING,\n QueryStatus.ABORTING,\n];\n\nexport const AbortableStatuses = [QueryStatus.RUNNING, QueryStatus.PENDING];\n\nexport const CompletedStates = [\n QueryStatus.DRAFT,\n QueryStatus.ABORTED,\n QueryStatus.COMPLETED,\n QueryStatus.FAILED,\n];\n\nexport enum QueriesHistoryCursorDirection {\n PAST = 'past',\n FUTURE = 'future',\n}\n\nexport type QueriiesListCursorParams = {\n cursor_time: string;\n cursor_direction: QueriesHistoryCursorDirection;\n};\n\nexport type QueriesListParams = {\n is_tutorial?: string;\n user?: string;\n engine?: string;\n filter?: string;\n};\n\nexport type QueriesListRequestParams = {\n params: QueriesListParams;\n cursor?: QueriiesListCursorParams;\n limit?: number;\n};\n\nexport async function generateQueryFromTable(\n engine: QueryEngine,\n {cluster, path}: {cluster: string; path: string},\n): Promise<DraftQuery | undefined> {\n const selectedCluster = getClusterConfigByName(cluster);\n const node = await ytApiV3.get({\n parameters: {\n path: `${path}/@`,\n attributes: ['type', 'schema'],\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n setup: {\n proxy: getClusterProxy(selectedCluster),\n },\n });\n if (node.type === 'table') {\n const schema = ypath.getValue(node.schema) as {name: string}[];\n return {\n engine,\n query: generateQueryText(cluster, engine, {\n path,\n columns: schema.map(({name}) => name),\n pageSize: 50,\n schemaExists: Boolean(schema.length),\n }),\n annotations: {},\n settings: generateQuerySettings(engine, cluster),\n };\n }\n return undefined;\n}\n\nexport function loadQueriesList({params, cursor, limit}: QueriesListRequestParams): Promise<{\n incomplete: boolean;\n queries: QueryItem[];\n timestamp: number;\n}> {\n return ytApiV4Id.listQueries(YTApiId.listQueries, {\n parameters: {\n ...params,\n ...cursor,\n limit,\n stage: QT_STAGE,\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n setup: getQTApiSetup(),\n });\n}\n\nfunction makeGetQueryParams(query_id: string) {\n return {\n query_id,\n stage: QT_STAGE,\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n };\n}\n\nexport function getQuery(query_id: string): Promise<QueryItem> {\n return ytApiV4Id.getQuery(YTApiId.getQuery, {\n parameters: makeGetQueryParams(query_id),\n setup: getQTApiSetup(),\n });\n}\n\nexport function startQuery(queryInstance: DraftQuery): Promise<{query_id: QueryItemId}> {\n const {query, engine, settings, annotations} = queryInstance;\n return ytApiV4Id.startQuery(YTApiId.startQuery, {\n parameters: {\n query,\n engine,\n annotations,\n settings,\n stage: QT_STAGE,\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n setup: getQTApiSetup(),\n });\n}\n\nexport function abortQuery(query_id: string, message?: string): Promise<void> {\n return ytApiV4Id.abortQuery(YTApiId.abortQuery, {\n parameters: {\n query_id,\n message,\n stage: QT_STAGE,\n },\n setup: getQTApiSetup(),\n });\n}\n\ntype QueryResult = {\n all_column_names: string[];\n incomplete_all_column_names: boolean;\n incomplete_columns: boolean;\n rows: Record<string, [unknown, string]>[]; //Record<string, {$value: unknown; $type: string}>[];\n yql_type_registry: TypeArray[];\n};\n\nexport function readQueryResults(\n query_id: string,\n result_index = 0,\n cursor?: {start: number; end: number},\n settings?: {\n cellsSize: number;\n },\n): Promise<QueryResult> {\n return ytApiV4Id.readQueryResults(YTApiId.readQueryResults, {\n parameters: {\n query_id,\n result_index,\n lower_row_index: cursor?.start,\n upper_row_index: cursor?.end,\n output_format: {\n $value: 'web_json',\n $attributes: {\n value_format: 'yql',\n field_weight_limit: settings?.cellsSize,\n encode_utf8: 'false',\n },\n },\n stage: QT_STAGE,\n },\n setup: getQTApiSetup(),\n });\n}\n\nexport function getDownloadQueryResultURL(\n cluster: string,\n queryId: string,\n resultIndex = 0,\n cursor?: {start: number; end: number},\n) {\n const params = new URLSearchParams({\n query_id: queryId,\n result_index: resultIndex.toString(),\n ...(cursor\n ? {\n lower_row_index: cursor.start.toString(),\n upper_row_index: cursor.end.toString(),\n }\n : {}),\n });\n\n if (QT_STAGE) {\n params.set('stage', QT_STAGE);\n }\n const clusterConfig = getClusterConfigByName(getQueryTrackerCluster() || cluster);\n if (clusterConfig) {\n const base = allowDirectDownload()\n ? `//${clusterConfig.proxy}/api/v4/read_query_result`\n : `/api/yt/${clusterConfig.id}/api/v4/read_query_result`;\n return `${base}?${params.toString()}`;\n }\n return '';\n}\n\nexport async function requestQueries(ids: string[]): Promise<QueryItem[]> {\n const requests: any[] = ids.map((query_id) => ({\n command: 'get_query',\n parameters: makeGetQueryParams(query_id),\n }));\n const resp = (await ytApiV4Id.executeBatch(YTApiId.getQuery, {\n parameters: {requests},\n setup: getQTApiSetup(),\n })) as unknown as {results: BatchResultsItem<QueryItem>[]};\n\n const extracted = extractBatchV4Values(resp, requests);\n const {results} = splitBatchResults(extracted.results ?? []);\n return results;\n}\n\nexport type QueryResultMetaScheme = {\n name: string;\n required: boolean;\n type: string;\n type_v3: {\n type_name: string;\n item: string;\n };\n};\n\nexport type QueryResultMeta = {\n id: string;\n result_index: number;\n schema: {\n $attributes: {\n strict: boolean;\n unique_keys: boolean;\n };\n $value: QueryResultMetaScheme[];\n };\n data_statistics: {\n chunk_count: number;\n row_count: number;\n uncompressed_data_size: number;\n compressed_data_size: number;\n data_weight: number;\n regular_disk_space: number;\n erasure_disk_space: number;\n unmerged_row_count: number;\n unmerged_data_weight: number;\n };\n};\n\nexport async function getQueryResultMeta(\n query_id: string,\n result_index = 0,\n): Promise<QueryResultMeta | undefined> {\n return ytApiV4Id.getQueryResults(YTApiId.readQueryResults, {\n parameters: {query_id, result_index, stage: QT_STAGE},\n setup: getQTApiSetup(),\n });\n}\n"],"mappings":"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"}
@@ -4,21 +4,30 @@ import { ActionD } from '../../../../types';
4
4
  import { RootState } from '../../../../store/reducers';
5
5
  import { QueriesHistoryCursorDirection, QueryItem } from '../api';
6
6
  import { QueriesListState } from './reducer';
7
- export declare const LOAD_QUERIES_LIST_REQUEST = "query-tracker/LOAD_QUERYIES_LIST_REQUEST";
8
- export declare const LOAD_QUERIES_LIST_SUCCESS = "query-tracker/LOAD_QUERYIS_LIST_SUCCESS";
7
+ import { QueriesListCursor, QueriesListFilter } from './types';
8
+ export declare const LOAD_QUERIES_LIST_REQUEST = "query-tracker/LOAD_QUERIES_LIST_REQUEST";
9
+ export declare const LOAD_QUERIES_LIST_SUCCESS = "query-tracker/LOAD_QUERIES_LIST_SUCCESS";
9
10
  export declare const UPDATE_QUERIES_LIST = "query-tracker/UPDATE_QUERIES_LIST";
10
11
  export declare const LOAD_QUERIES_LIST_ERROR = "query-tracker/LOAD_QUERIES_LIST_ERROR";
11
- export declare const SET_QUERYIES_HISTORY_FILTER = "query-tracker/LOAD_QUERY_LIST_ERROR";
12
- export declare const SET_QUERYIES_HISTORY_CURSOR = "query-tracker/SET_QUERYIES_HISTORY_CURSOR";
12
+ export declare const SET_QUERIES_LIST_FILTER = "query-tracker/SET_QUERIES_LIST_FILTER";
13
+ export declare const SET_QUERIES_LIST_MODE = "query-tracker/SET_QUERIES_LIST_MODE";
14
+ export declare const SET_QUERIES_LIST_CURSOR = "query-tracker/SET_QUERIES_LIST_CURSOR";
13
15
  export type QueriesListAction = Action<typeof LOAD_QUERIES_LIST_REQUEST> | ActionD<typeof LOAD_QUERIES_LIST_SUCCESS, {
14
16
  hasMore: boolean;
15
17
  list: QueryItem[];
18
+ timestamp?: number;
16
19
  direction?: QueriesHistoryCursorDirection;
17
- }> | ActionD<typeof LOAD_QUERIES_LIST_ERROR, string | Error> | ActionD<typeof SET_QUERYIES_HISTORY_FILTER, QueriesListState['filter']> | ActionD<typeof SET_QUERYIES_HISTORY_CURSOR, QueriesListState['cursor']> | ActionD<typeof UPDATE_QUERIES_LIST, QueryItem[]>;
18
- export declare function refreshQueryHistoryListIfNeeded(onDone?: () => void): ThunkAction<any, RootState, any, QueriesListAction>;
19
- export declare function requestQueriesList(): ThunkAction<any, RootState, any, QueriesListAction>;
20
+ }> | ActionD<typeof LOAD_QUERIES_LIST_ERROR, string | Error> | ActionD<typeof SET_QUERIES_LIST_FILTER, QueriesListFilter> | ActionD<typeof SET_QUERIES_LIST_MODE, {
21
+ listMode: QueriesListState['listMode'];
22
+ reset?: boolean;
23
+ }> | ActionD<typeof SET_QUERIES_LIST_CURSOR, QueriesListCursor | undefined> | ActionD<typeof UPDATE_QUERIES_LIST, QueryItem[]>;
24
+ export declare function refreshQueriesListIfNeeded(onDone?: () => void): ThunkAction<any, RootState, any, QueriesListAction>;
25
+ export declare function requestQueriesList(params?: {
26
+ refresh?: boolean;
27
+ }): ThunkAction<any, RootState, any, QueriesListAction>;
20
28
  export declare function loadNextQueriesList(direction?: QueriesHistoryCursorDirection): ThunkAction<any, RootState, any, QueriesListAction>;
21
29
  export declare function resetCursor({ silent, }?: {
22
30
  silent?: boolean;
23
31
  }): ThunkAction<any, RootState, any, QueriesListAction>;
24
- export declare function applyFilter(patch: QueriesListState['filter']): ThunkAction<any, RootState, any, QueriesListAction>;
32
+ export declare function applyFilter(patch: QueriesListFilter): ThunkAction<any, RootState, any, QueriesListAction>;
33
+ export declare function applyListMode(listMode: QueriesListState['listMode']): ThunkAction<any, RootState, any, QueriesListAction>;
@@ -2,40 +2,43 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _regeneratorRuntime from "@babel/runtime/regenerator";
3
3
  import { wrapApiPromiseByToaster } from '../../../../utils/utils';
4
4
  import { loadQueriesList, QueriesHistoryCursorDirection } from '../api';
5
- import { getQueriesHistoryCursorParams, getQueriesHistoryFilterParams, getQueriesList } from './selectors';
6
- export var LOAD_QUERIES_LIST_REQUEST = 'query-tracker/LOAD_QUERYIES_LIST_REQUEST';
7
- export var LOAD_QUERIES_LIST_SUCCESS = 'query-tracker/LOAD_QUERYIS_LIST_SUCCESS';
5
+ import { getQueriesListCursorParams, getQueriesListFilterParams, getQueriesList } from './selectors';
6
+ export var LOAD_QUERIES_LIST_REQUEST = 'query-tracker/LOAD_QUERIES_LIST_REQUEST';
7
+ export var LOAD_QUERIES_LIST_SUCCESS = 'query-tracker/LOAD_QUERIES_LIST_SUCCESS';
8
8
  export var UPDATE_QUERIES_LIST = 'query-tracker/UPDATE_QUERIES_LIST';
9
9
  export var LOAD_QUERIES_LIST_ERROR = 'query-tracker/LOAD_QUERIES_LIST_ERROR';
10
- export var SET_QUERYIES_HISTORY_FILTER = 'query-tracker/LOAD_QUERY_LIST_ERROR';
11
- export var SET_QUERYIES_HISTORY_CURSOR = 'query-tracker/SET_QUERYIES_HISTORY_CURSOR';
12
- export function refreshQueryHistoryListIfNeeded(onDone) {
10
+ export var SET_QUERIES_LIST_FILTER = 'query-tracker/SET_QUERIES_LIST_FILTER';
11
+ export var SET_QUERIES_LIST_MODE = 'query-tracker/SET_QUERIES_LIST_MODE';
12
+ export var SET_QUERIES_LIST_CURSOR = 'query-tracker/SET_QUERIES_LIST_CURSOR';
13
+ export function refreshQueriesListIfNeeded(onDone) {
13
14
  return /*#__PURE__*/function () {
14
15
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(dispatch, getState) {
15
- var state, currentHistoryList, newQueriesResp;
16
+ var state, list, newQueriesResp;
16
17
  return _regeneratorRuntime.wrap(function _callee$(_context) {
17
18
  while (1) switch (_context.prev = _context.next) {
18
19
  case 0:
19
20
  _context.prev = 0;
20
21
  state = getState();
21
- currentHistoryList = getQueriesList(state);
22
- if (!(currentHistoryList !== null && currentHistoryList !== void 0 && currentHistoryList.length)) {
22
+ list = getQueriesList(state);
23
+ if (!(list !== null && list !== void 0 && list.length)) {
23
24
  _context.next = 8;
24
25
  break;
25
26
  }
26
27
  _context.next = 6;
27
28
  return loadQueriesList({
28
- params: getQueriesHistoryFilterParams(state),
29
+ params: getQueriesListFilterParams(state),
29
30
  cursor: {
30
31
  cursor_direction: QueriesHistoryCursorDirection.FUTURE,
31
- cursor_time: currentHistoryList[0].start_time
32
+ cursor_time: list[0].start_time
32
33
  },
33
34
  limit: 1
34
35
  });
35
36
  case 6:
36
37
  newQueriesResp = _context.sent;
37
38
  if (newQueriesResp.queries.length) {
38
- dispatch(requestQueriesList());
39
+ dispatch(requestQueriesList({
40
+ refresh: true
41
+ }));
39
42
  }
40
43
  case 8:
41
44
  _context.prev = 8;
@@ -52,7 +55,7 @@ export function refreshQueryHistoryListIfNeeded(onDone) {
52
55
  };
53
56
  }();
54
57
  }
55
- export function requestQueriesList() {
58
+ export function requestQueriesList(params) {
56
59
  return /*#__PURE__*/function () {
57
60
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(dispatch, getState) {
58
61
  var state, result;
@@ -66,8 +69,8 @@ export function requestQueriesList() {
66
69
  state = getState();
67
70
  _context2.next = 5;
68
71
  return wrapApiPromiseByToaster(loadQueriesList({
69
- params: getQueriesHistoryFilterParams(state),
70
- cursor: getQueriesHistoryCursorParams(state)
72
+ params: getQueriesListFilterParams(state),
73
+ cursor: getQueriesListCursorParams(state)
71
74
  }), {
72
75
  toasterName: 'load_history_list',
73
76
  skipSuccessToast: true,
@@ -79,7 +82,7 @@ export function requestQueriesList() {
79
82
  type: LOAD_QUERIES_LIST_SUCCESS,
80
83
  data: {
81
84
  list: result.queries,
82
- timestamp: result.timestamp,
85
+ timestamp: params !== null && params !== void 0 && params.refresh ? undefined : result.timestamp,
83
86
  hasMore: result.incomplete
84
87
  }
85
88
  });
@@ -110,7 +113,7 @@ export function loadNextQueriesList() {
110
113
  var items = getQueriesList(state);
111
114
  if (items.length) {
112
115
  dispatch({
113
- type: SET_QUERYIES_HISTORY_CURSOR,
116
+ type: SET_QUERIES_LIST_CURSOR,
114
117
  data: {
115
118
  cursorTime: items[direction === QueriesHistoryCursorDirection.FUTURE ? 0 : items.length - 1].start_time,
116
119
  direction: direction
@@ -127,7 +130,7 @@ export function resetCursor() {
127
130
  silent = _ref3.silent;
128
131
  return function (dispatch) {
129
132
  dispatch({
130
- type: SET_QUERYIES_HISTORY_CURSOR,
133
+ type: SET_QUERIES_LIST_CURSOR,
131
134
  data: undefined
132
135
  });
133
136
  if (!silent) {
@@ -141,10 +144,21 @@ export function applyFilter(patch) {
141
144
  silent: true
142
145
  }));
143
146
  dispatch({
144
- type: SET_QUERYIES_HISTORY_FILTER,
147
+ type: SET_QUERIES_LIST_FILTER,
145
148
  data: patch
146
149
  });
147
150
  dispatch(requestQueriesList());
148
151
  };
149
152
  }
153
+ export function applyListMode(listMode) {
154
+ return function (dispatch) {
155
+ dispatch({
156
+ type: SET_QUERIES_LIST_MODE,
157
+ data: {
158
+ listMode: listMode
159
+ }
160
+ });
161
+ dispatch(requestQueriesList());
162
+ };
163
+ }
150
164
  // #sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["wrapApiPromiseByToaster","loadQueriesList","QueriesHistoryCursorDirection","getQueriesHistoryCursorParams","getQueriesHistoryFilterParams","getQueriesList","LOAD_QUERIES_LIST_REQUEST","LOAD_QUERIES_LIST_SUCCESS","UPDATE_QUERIES_LIST","LOAD_QUERIES_LIST_ERROR","SET_QUERYIES_HISTORY_FILTER","SET_QUERYIES_HISTORY_CURSOR","refreshQueryHistoryListIfNeeded","onDone","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","dispatch","getState","state","currentHistoryList","newQueriesResp","wrap","_callee$","_context","prev","next","length","params","cursor","cursor_direction","FUTURE","cursor_time","start_time","limit","sent","queries","requestQueriesList","finish","stop","_x","_x2","apply","arguments","_ref2","_callee2","result","_callee2$","_context2","type","toasterName","skipSuccessToast","errorTitle","data","list","timestamp","hasMore","incomplete","t0","_x3","_x4","loadNextQueriesList","direction","undefined","PAST","items","cursorTime","resetCursor","_ref3","silent","applyFilter","patch"],"sources":["actions.ts"],"sourcesContent":["import {Action} from 'redux';\nimport {ThunkAction} from 'redux-thunk';\nimport {ActionD} from '../../../../types';\nimport {wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {RootState} from '../../../../store/reducers';\nimport {loadQueriesList, QueriesHistoryCursorDirection, QueryItem} from '../api';\nimport {QueriesListState} from './reducer';\nimport {\n getQueriesHistoryCursorParams,\n getQueriesHistoryFilterParams,\n getQueriesList,\n} from './selectors';\n\nexport const LOAD_QUERIES_LIST_REQUEST = 'query-tracker/LOAD_QUERYIES_LIST_REQUEST';\nexport const LOAD_QUERIES_LIST_SUCCESS = 'query-tracker/LOAD_QUERYIS_LIST_SUCCESS';\nexport const UPDATE_QUERIES_LIST = 'query-tracker/UPDATE_QUERIES_LIST';\nexport const LOAD_QUERIES_LIST_ERROR = 'query-tracker/LOAD_QUERIES_LIST_ERROR';\nexport const SET_QUERYIES_HISTORY_FILTER = 'query-tracker/LOAD_QUERY_LIST_ERROR';\nexport const SET_QUERYIES_HISTORY_CURSOR = 'query-tracker/SET_QUERYIES_HISTORY_CURSOR';\n\nexport type QueriesListAction =\n | Action<typeof LOAD_QUERIES_LIST_REQUEST>\n | ActionD<\n typeof LOAD_QUERIES_LIST_SUCCESS,\n {hasMore: boolean; list: QueryItem[]; direction?: QueriesHistoryCursorDirection}\n >\n | ActionD<typeof LOAD_QUERIES_LIST_ERROR, string | Error>\n | ActionD<typeof SET_QUERYIES_HISTORY_FILTER, QueriesListState['filter']>\n | ActionD<typeof SET_QUERYIES_HISTORY_CURSOR, QueriesListState['cursor']>\n | ActionD<typeof UPDATE_QUERIES_LIST, QueryItem[]>;\n\nexport function refreshQueryHistoryListIfNeeded(\n onDone?: () => void,\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return async (dispatch, getState) => {\n try {\n const state = getState();\n const currentHistoryList = getQueriesList(state);\n if (currentHistoryList?.length) {\n const newQueriesResp = await loadQueriesList({\n params: getQueriesHistoryFilterParams(state),\n cursor: {\n cursor_direction: QueriesHistoryCursorDirection.FUTURE,\n cursor_time: currentHistoryList[0].start_time,\n },\n limit: 1,\n });\n if (newQueriesResp.queries.length) {\n dispatch(requestQueriesList());\n }\n }\n } finally {\n onDone?.();\n }\n };\n}\nexport function requestQueriesList(): ThunkAction<any, RootState, any, QueriesListAction> {\n return async (dispatch, getState) => {\n dispatch({type: LOAD_QUERIES_LIST_REQUEST});\n try {\n const state = getState();\n const result = await wrapApiPromiseByToaster(\n loadQueriesList({\n params: getQueriesHistoryFilterParams(state),\n cursor: getQueriesHistoryCursorParams(state),\n }),\n {\n toasterName: 'load_history_list',\n skipSuccessToast: true,\n errorTitle: 'Failed to load queries list',\n },\n );\n dispatch({\n type: LOAD_QUERIES_LIST_SUCCESS,\n data: {\n list: result.queries,\n timestamp: result.timestamp,\n hasMore: result.incomplete,\n },\n });\n } catch (e: unknown) {\n dispatch({type: LOAD_QUERIES_LIST_ERROR, data: e as Error});\n }\n };\n}\n\nexport function loadNextQueriesList(\n direction = QueriesHistoryCursorDirection.PAST,\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch, getState) => {\n const state = getState();\n const items = getQueriesList(state);\n if (items.length) {\n dispatch({\n type: SET_QUERYIES_HISTORY_CURSOR,\n data: {\n cursorTime:\n items[\n direction === QueriesHistoryCursorDirection.FUTURE\n ? 0\n : items.length - 1\n ].start_time,\n direction,\n },\n });\n dispatch(requestQueriesList());\n }\n };\n}\n\nexport function resetCursor(\n {\n silent,\n }: {\n silent?: boolean;\n } = {silent: false},\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch) => {\n dispatch({\n type: SET_QUERYIES_HISTORY_CURSOR,\n data: undefined,\n });\n if (!silent) {\n dispatch(requestQueriesList());\n }\n };\n}\n\nexport function applyFilter(\n patch: QueriesListState['filter'],\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch) => {\n dispatch(resetCursor({silent: true}));\n dispatch({\n type: SET_QUERYIES_HISTORY_FILTER,\n data: patch,\n });\n dispatch(requestQueriesList());\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["wrapApiPromiseByToaster","loadQueriesList","QueriesHistoryCursorDirection","getQueriesListCursorParams","getQueriesListFilterParams","getQueriesList","LOAD_QUERIES_LIST_REQUEST","LOAD_QUERIES_LIST_SUCCESS","UPDATE_QUERIES_LIST","LOAD_QUERIES_LIST_ERROR","SET_QUERIES_LIST_FILTER","SET_QUERIES_LIST_MODE","SET_QUERIES_LIST_CURSOR","refreshQueriesListIfNeeded","onDone","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","dispatch","getState","state","list","newQueriesResp","wrap","_callee$","_context","prev","next","length","params","cursor","cursor_direction","FUTURE","cursor_time","start_time","limit","sent","queries","requestQueriesList","refresh","finish","stop","_x","_x2","apply","arguments","_ref2","_callee2","result","_callee2$","_context2","type","toasterName","skipSuccessToast","errorTitle","data","timestamp","undefined","hasMore","incomplete","t0","_x3","_x4","loadNextQueriesList","direction","PAST","items","cursorTime","resetCursor","_ref3","silent","applyFilter","patch","applyListMode","listMode"],"sources":["actions.ts"],"sourcesContent":["import {Action} from 'redux';\nimport {ThunkAction} from 'redux-thunk';\nimport {ActionD} from '../../../../types';\nimport {wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {RootState} from '../../../../store/reducers';\nimport {loadQueriesList, QueriesHistoryCursorDirection, QueryItem} from '../api';\nimport {QueriesListState} from './reducer';\nimport {getQueriesListCursorParams, getQueriesListFilterParams, getQueriesList} from './selectors';\nimport {QueriesListCursor, QueriesListFilter} from './types';\n\nexport const LOAD_QUERIES_LIST_REQUEST = 'query-tracker/LOAD_QUERIES_LIST_REQUEST';\nexport const LOAD_QUERIES_LIST_SUCCESS = 'query-tracker/LOAD_QUERIES_LIST_SUCCESS';\nexport const UPDATE_QUERIES_LIST = 'query-tracker/UPDATE_QUERIES_LIST';\nexport const LOAD_QUERIES_LIST_ERROR = 'query-tracker/LOAD_QUERIES_LIST_ERROR';\nexport const SET_QUERIES_LIST_FILTER = 'query-tracker/SET_QUERIES_LIST_FILTER';\nexport const SET_QUERIES_LIST_MODE = 'query-tracker/SET_QUERIES_LIST_MODE';\nexport const SET_QUERIES_LIST_CURSOR = 'query-tracker/SET_QUERIES_LIST_CURSOR';\n\nexport type QueriesListAction =\n | Action<typeof LOAD_QUERIES_LIST_REQUEST>\n | ActionD<\n typeof LOAD_QUERIES_LIST_SUCCESS,\n {\n hasMore: boolean;\n list: QueryItem[];\n timestamp?: number;\n direction?: QueriesHistoryCursorDirection;\n }\n >\n | ActionD<typeof LOAD_QUERIES_LIST_ERROR, string | Error>\n | ActionD<typeof SET_QUERIES_LIST_FILTER, QueriesListFilter>\n | ActionD<\n typeof SET_QUERIES_LIST_MODE,\n {listMode: QueriesListState['listMode']; reset?: boolean}\n >\n | ActionD<typeof SET_QUERIES_LIST_CURSOR, QueriesListCursor | undefined>\n | ActionD<typeof UPDATE_QUERIES_LIST, QueryItem[]>;\n\nexport function refreshQueriesListIfNeeded(\n onDone?: () => void,\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return async (dispatch, getState) => {\n try {\n const state = getState();\n const list = getQueriesList(state);\n if (list?.length) {\n const newQueriesResp = await loadQueriesList({\n params: getQueriesListFilterParams(state),\n cursor: {\n cursor_direction: QueriesHistoryCursorDirection.FUTURE,\n cursor_time: list[0].start_time,\n },\n limit: 1,\n });\n if (newQueriesResp.queries.length) {\n dispatch(requestQueriesList({refresh: true}));\n }\n }\n } finally {\n onDone?.();\n }\n };\n}\nexport function requestQueriesList(params?: {\n refresh?: boolean;\n}): ThunkAction<any, RootState, any, QueriesListAction> {\n return async (dispatch, getState) => {\n dispatch({type: LOAD_QUERIES_LIST_REQUEST});\n try {\n const state = getState();\n const result = await wrapApiPromiseByToaster(\n loadQueriesList({\n params: getQueriesListFilterParams(state),\n cursor: getQueriesListCursorParams(state),\n }),\n {\n toasterName: 'load_history_list',\n skipSuccessToast: true,\n errorTitle: 'Failed to load queries list',\n },\n );\n dispatch({\n type: LOAD_QUERIES_LIST_SUCCESS,\n data: {\n list: result.queries,\n timestamp: params?.refresh ? undefined : result.timestamp,\n hasMore: result.incomplete,\n },\n });\n } catch (e: unknown) {\n dispatch({type: LOAD_QUERIES_LIST_ERROR, data: e as Error});\n }\n };\n}\n\nexport function loadNextQueriesList(\n direction = QueriesHistoryCursorDirection.PAST,\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch, getState) => {\n const state = getState();\n const items = getQueriesList(state);\n if (items.length) {\n dispatch({\n type: SET_QUERIES_LIST_CURSOR,\n data: {\n cursorTime:\n items[\n direction === QueriesHistoryCursorDirection.FUTURE\n ? 0\n : items.length - 1\n ].start_time,\n direction,\n },\n });\n dispatch(requestQueriesList());\n }\n };\n}\n\nexport function resetCursor(\n {\n silent,\n }: {\n silent?: boolean;\n } = {silent: false},\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch) => {\n dispatch({\n type: SET_QUERIES_LIST_CURSOR,\n data: undefined,\n });\n if (!silent) {\n dispatch(requestQueriesList());\n }\n };\n}\n\nexport function applyFilter(\n patch: QueriesListFilter,\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch) => {\n dispatch(resetCursor({silent: true}));\n dispatch({\n type: SET_QUERIES_LIST_FILTER,\n data: patch,\n });\n dispatch(requestQueriesList());\n };\n}\n\nexport function applyListMode(\n listMode: QueriesListState['listMode'],\n): ThunkAction<any, RootState, any, QueriesListAction> {\n return (dispatch) => {\n dispatch({\n type: SET_QUERIES_LIST_MODE,\n data: {\n listMode,\n },\n });\n dispatch(requestQueriesList());\n };\n}\n"],"mappings":"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"}
@@ -1,15 +1,16 @@
1
- import { QueriesHistoryCursorDirection, QueryItem } from '../api';
1
+ import { QueryItem } from '../api';
2
2
  import { QueriesListAction } from './actions';
3
- import { QueriesHistoryFilter } from './types';
3
+ import { QueriesListCursor, QueriesListFilter, QueriesListMode } from './types';
4
4
  export interface QueriesListState {
5
5
  state: 'loading' | 'ready' | 'error';
6
6
  error?: string | Error;
7
7
  map: Record<QueryItem['id'], QueryItem>;
8
8
  hasMore: boolean;
9
- filter: QueriesHistoryFilter;
10
- cursor?: {
11
- cursorTime: string;
12
- direction: QueriesHistoryCursorDirection;
13
- };
9
+ timestamp: number;
10
+ filter: Partial<Record<QueriesListMode, {
11
+ filter: QueriesListFilter;
12
+ cursor?: QueriesListCursor;
13
+ }>>;
14
+ listMode: QueriesListMode;
14
15
  }
15
16
  export declare function reducer(state: QueriesListState | undefined, action: QueriesListAction): QueriesListState;
@@ -1,15 +1,18 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
- import { LOAD_QUERIES_LIST_ERROR, LOAD_QUERIES_LIST_REQUEST, LOAD_QUERIES_LIST_SUCCESS, SET_QUERYIES_HISTORY_CURSOR, SET_QUERYIES_HISTORY_FILTER, UPDATE_QUERIES_LIST } from './actions';
3
- import { QueriesHistoryAuthor } from './types';
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import { LOAD_QUERIES_LIST_ERROR, LOAD_QUERIES_LIST_REQUEST, LOAD_QUERIES_LIST_SUCCESS, SET_QUERIES_LIST_CURSOR, SET_QUERIES_LIST_FILTER, UPDATE_QUERIES_LIST, SET_QUERIES_LIST_MODE } from './actions';
4
+ import { DefaultQueriesListFilter, QueriesListMode } from './types';
4
5
  var initialState = {
5
6
  state: 'loading',
6
7
  error: undefined,
7
8
  map: {},
8
9
  hasMore: false,
9
- filter: {
10
- user: QueriesHistoryAuthor.My
11
- },
12
- cursor: undefined
10
+ timestamp: 0,
11
+ filter: _defineProperty({}, QueriesListMode.History, {
12
+ filter: DefaultQueriesListFilter[QueriesListMode.History],
13
+ cursor: undefined
14
+ }),
15
+ listMode: QueriesListMode.History
13
16
  };
14
17
  export function reducer() {
15
18
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
@@ -30,6 +33,7 @@ export function reducer() {
30
33
  acc[item.id] = item;
31
34
  return acc;
32
35
  }, {}),
36
+ timestamp: action.data.timestamp || state.timestamp,
33
37
  hasMore: action.data.hasMore
34
38
  });
35
39
  }
@@ -55,16 +59,35 @@ export function reducer() {
55
59
  error: action.data
56
60
  });
57
61
  }
58
- case SET_QUERYIES_HISTORY_FILTER:
62
+ case SET_QUERIES_LIST_FILTER:
59
63
  {
64
+ var _state$filter$listMod;
65
+ var listMode = state.listMode;
60
66
  return _objectSpread(_objectSpread({}, state), {}, {
61
- filter: _objectSpread(_objectSpread({}, state.filter), action.data)
67
+ listMode: listMode,
68
+ filter: _objectSpread(_objectSpread({}, state.filter), {}, _defineProperty({}, listMode, _objectSpread(_objectSpread({}, state.filter[listMode]), {}, {
69
+ filter: _objectSpread(_objectSpread({}, (_state$filter$listMod = state.filter[listMode]) === null || _state$filter$listMod === void 0 ? void 0 : _state$filter$listMod.filter), action.data)
70
+ })))
62
71
  });
63
72
  }
64
- case SET_QUERYIES_HISTORY_CURSOR:
73
+ case SET_QUERIES_LIST_MODE:
65
74
  {
75
+ var _state$filter$_listMo;
76
+ var _listMode = action.data.listMode;
66
77
  return _objectSpread(_objectSpread({}, state), {}, {
67
- cursor: action.data
78
+ listMode: _listMode,
79
+ filter: _objectSpread(_objectSpread({}, state.filter), {}, _defineProperty({}, _listMode, _objectSpread(_objectSpread({}, state.filter[_listMode]), {}, {
80
+ filter: _objectSpread({}, action.data.reset ? DefaultQueriesListFilter[_listMode] : (_state$filter$_listMo = state.filter[_listMode]) === null || _state$filter$_listMo === void 0 ? void 0 : _state$filter$_listMo.filter)
81
+ })))
82
+ });
83
+ }
84
+ case SET_QUERIES_LIST_CURSOR:
85
+ {
86
+ var _listMode2 = state.listMode;
87
+ return _objectSpread(_objectSpread({}, state), {}, {
88
+ filter: _objectSpread(_objectSpread({}, state.filter), {}, _defineProperty({}, _listMode2, _objectSpread(_objectSpread({}, state.filter[_listMode2]), {}, {
89
+ cursor: action.data
90
+ })))
68
91
  });
69
92
  }
70
93
  default:
@@ -1 +1 @@
1
- {"version":3,"names":["LOAD_QUERIES_LIST_ERROR","LOAD_QUERIES_LIST_REQUEST","LOAD_QUERIES_LIST_SUCCESS","SET_QUERYIES_HISTORY_CURSOR","SET_QUERYIES_HISTORY_FILTER","UPDATE_QUERIES_LIST","QueriesHistoryAuthor","initialState","state","error","undefined","map","hasMore","filter","user","My","cursor","reducer","arguments","length","action","type","_objectSpread","data","list","reduce","acc","item","id"],"sources":["reducer.ts"],"sourcesContent":["import {QueriesHistoryCursorDirection, QueryItem} from '../api';\nimport {\n QueriesListAction,\n LOAD_QUERIES_LIST_ERROR,\n LOAD_QUERIES_LIST_REQUEST,\n LOAD_QUERIES_LIST_SUCCESS,\n SET_QUERYIES_HISTORY_CURSOR,\n SET_QUERYIES_HISTORY_FILTER,\n UPDATE_QUERIES_LIST,\n} from './actions';\nimport {QueriesHistoryAuthor, QueriesHistoryFilter} from './types';\n\nexport interface QueriesListState {\n state: 'loading' | 'ready' | 'error';\n error?: string | Error;\n map: Record<QueryItem['id'], QueryItem>;\n hasMore: boolean;\n filter: QueriesHistoryFilter;\n cursor?: {\n cursorTime: string;\n direction: QueriesHistoryCursorDirection;\n };\n}\n\nconst initialState: QueriesListState = {\n state: 'loading',\n error: undefined,\n map: {},\n hasMore: false,\n filter: {\n user: QueriesHistoryAuthor.My,\n },\n cursor: undefined,\n};\n\nexport function reducer(state = initialState, action: QueriesListAction): QueriesListState {\n switch (action.type) {\n case LOAD_QUERIES_LIST_REQUEST: {\n return {...state, state: 'loading'};\n }\n\n case LOAD_QUERIES_LIST_SUCCESS: {\n return {\n ...state,\n state: 'ready',\n error: undefined,\n map: action.data.list.reduce(\n (acc: Record<QueryItem['id'], QueryItem>, item: QueryItem) => {\n acc[item.id] = item;\n return acc;\n },\n {},\n ),\n hasMore: action.data.hasMore,\n };\n }\n\n /**\n * TODO:\n * Updated items may not satisfiy a filter's criteria\n * So better to update whole list, but this is expensive\n * */\n case UPDATE_QUERIES_LIST: {\n return {\n ...state,\n map: action.data.reduce(\n (acc: Record<QueryItem['id'], QueryItem>, item: QueryItem) => {\n acc[item.id] = item;\n return acc;\n },\n {...state.map},\n ),\n };\n }\n\n case LOAD_QUERIES_LIST_ERROR: {\n return {\n ...state,\n state: 'ready',\n error: action.data,\n };\n }\n\n case SET_QUERYIES_HISTORY_FILTER: {\n return {\n ...state,\n filter: {\n ...state.filter,\n ...action.data,\n },\n };\n }\n\n case SET_QUERYIES_HISTORY_CURSOR: {\n return {\n ...state,\n cursor: action.data,\n };\n }\n\n default: {\n return state;\n }\n }\n}\n"],"mappings":";AACA,SAEIA,uBAAuB,EACvBC,yBAAyB,EACzBC,yBAAyB,EACzBC,2BAA2B,EAC3BC,2BAA2B,EAC3BC,mBAAmB,QAChB,WAAW;AAClB,SAAQC,oBAAoB,QAA6B,SAAS;AAclE,IAAMC,YAA8B,GAAG;EACnCC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAEC,SAAS;EAChBC,GAAG,EAAE,CAAC,CAAC;EACPC,OAAO,EAAE,KAAK;EACdC,MAAM,EAAE;IACJC,IAAI,EAAER,oBAAoB,CAACS;EAC/B,CAAC;EACDC,MAAM,EAAEN;AACZ,CAAC;AAED,OAAO,SAASO,OAAOA,CAAA,EAAoE;EAAA,IAAnET,KAAK,GAAAU,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAR,SAAA,GAAAQ,SAAA,MAAGX,YAAY;EAAA,IAAEa,MAAyB,GAAAF,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAR,SAAA;EACnE,QAAQU,MAAM,CAACC,IAAI;IACf,KAAKpB,yBAAyB;MAAE;QAC5B,OAAAqB,aAAA,CAAAA,aAAA,KAAWd,KAAK;UAAEA,KAAK,EAAE;QAAS;MACtC;IAEA,KAAKN,yBAAyB;MAAE;QAC5B,OAAAoB,aAAA,CAAAA,aAAA,KACOd,KAAK;UACRA,KAAK,EAAE,OAAO;UACdC,KAAK,EAAEC,SAAS;UAChBC,GAAG,EAAES,MAAM,CAACG,IAAI,CAACC,IAAI,CAACC,MAAM,CACxB,UAACC,GAAuC,EAAEC,IAAe,EAAK;YAC1DD,GAAG,CAACC,IAAI,CAACC,EAAE,CAAC,GAAGD,IAAI;YACnB,OAAOD,GAAG;UACd,CAAC,EACD,CAAC,CAAC,CACL;UACDd,OAAO,EAAEQ,MAAM,CAACG,IAAI,CAACX;QAAO;MAEpC;;IAEA;AACR;AACA;AACA;AACA;IACQ,KAAKP,mBAAmB;MAAE;QACtB,OAAAiB,aAAA,CAAAA,aAAA,KACOd,KAAK;UACRG,GAAG,EAAES,MAAM,CAACG,IAAI,CAACE,MAAM,CACnB,UAACC,GAAuC,EAAEC,IAAe,EAAK;YAC1DD,GAAG,CAACC,IAAI,CAACC,EAAE,CAAC,GAAGD,IAAI;YACnB,OAAOD,GAAG;UACd,CAAC,EAAAJ,aAAA,KACGd,KAAK,CAACG,GAAG;QAChB;MAET;IAEA,KAAKX,uBAAuB;MAAE;QAC1B,OAAAsB,aAAA,CAAAA,aAAA,KACOd,KAAK;UACRA,KAAK,EAAE,OAAO;UACdC,KAAK,EAAEW,MAAM,CAACG;QAAI;MAE1B;IAEA,KAAKnB,2BAA2B;MAAE;QAC9B,OAAAkB,aAAA,CAAAA,aAAA,KACOd,KAAK;UACRK,MAAM,EAAAS,aAAA,CAAAA,aAAA,KACCd,KAAK,CAACK,MAAM,GACZO,MAAM,CAACG,IAAI;QACjB;MAET;IAEA,KAAKpB,2BAA2B;MAAE;QAC9B,OAAAmB,aAAA,CAAAA,aAAA,KACOd,KAAK;UACRQ,MAAM,EAAEI,MAAM,CAACG;QAAI;MAE3B;IAEA;MAAS;QACL,OAAOf,KAAK;MAChB;EAAC;AAET"}
1
+ {"version":3,"names":["LOAD_QUERIES_LIST_ERROR","LOAD_QUERIES_LIST_REQUEST","LOAD_QUERIES_LIST_SUCCESS","SET_QUERIES_LIST_CURSOR","SET_QUERIES_LIST_FILTER","UPDATE_QUERIES_LIST","SET_QUERIES_LIST_MODE","DefaultQueriesListFilter","QueriesListMode","initialState","state","error","undefined","map","hasMore","timestamp","filter","_defineProperty","History","cursor","listMode","reducer","arguments","length","action","type","_objectSpread","data","list","reduce","acc","item","id","_state$filter$listMod","_state$filter$_listMo","reset"],"sources":["reducer.ts"],"sourcesContent":["import {QueryItem} from '../api';\nimport {\n QueriesListAction,\n LOAD_QUERIES_LIST_ERROR,\n LOAD_QUERIES_LIST_REQUEST,\n LOAD_QUERIES_LIST_SUCCESS,\n SET_QUERIES_LIST_CURSOR,\n SET_QUERIES_LIST_FILTER,\n UPDATE_QUERIES_LIST,\n SET_QUERIES_LIST_MODE,\n} from './actions';\nimport {\n DefaultQueriesListFilter,\n QueriesListCursor,\n QueriesListFilter,\n QueriesListMode,\n} from './types';\n\nexport interface QueriesListState {\n state: 'loading' | 'ready' | 'error';\n error?: string | Error;\n map: Record<QueryItem['id'], QueryItem>;\n hasMore: boolean;\n timestamp: number; // Determines is the list is changed(by filter or cursor).\n filter: Partial<\n Record<\n QueriesListMode,\n {\n filter: QueriesListFilter;\n cursor?: QueriesListCursor;\n }\n >\n >;\n listMode: QueriesListMode;\n}\n\nconst initialState: QueriesListState = {\n state: 'loading',\n error: undefined,\n map: {},\n hasMore: false,\n timestamp: 0,\n filter: {\n [QueriesListMode.History]: {\n filter: DefaultQueriesListFilter[QueriesListMode.History],\n cursor: undefined,\n },\n },\n listMode: QueriesListMode.History,\n};\n\nexport function reducer(state = initialState, action: QueriesListAction): QueriesListState {\n switch (action.type) {\n case LOAD_QUERIES_LIST_REQUEST: {\n return {...state, state: 'loading'};\n }\n\n case LOAD_QUERIES_LIST_SUCCESS: {\n return {\n ...state,\n state: 'ready',\n error: undefined,\n map: action.data.list.reduce(\n (acc: Record<QueryItem['id'], QueryItem>, item: QueryItem) => {\n acc[item.id] = item;\n return acc;\n },\n {},\n ),\n timestamp: action.data.timestamp || state.timestamp,\n hasMore: action.data.hasMore,\n };\n }\n\n /**\n * TODO:\n * Updated items may not satisfiy a filter's criteria\n * So better to update whole list, but this is expensive\n * */\n case UPDATE_QUERIES_LIST: {\n return {\n ...state,\n map: action.data.reduce(\n (acc: Record<QueryItem['id'], QueryItem>, item: QueryItem) => {\n acc[item.id] = item;\n return acc;\n },\n {...state.map},\n ),\n };\n }\n\n case LOAD_QUERIES_LIST_ERROR: {\n return {\n ...state,\n state: 'ready',\n error: action.data,\n };\n }\n\n case SET_QUERIES_LIST_FILTER: {\n const listMode = state.listMode;\n return {\n ...state,\n listMode,\n filter: {\n ...state.filter,\n [listMode]: {\n ...state.filter[listMode],\n filter: {...state.filter[listMode]?.filter, ...action.data},\n },\n },\n };\n }\n\n case SET_QUERIES_LIST_MODE: {\n const listMode = action.data.listMode;\n return {\n ...state,\n listMode,\n filter: {\n ...state.filter,\n [listMode]: {\n ...state.filter[listMode],\n filter: {\n ...(action.data.reset\n ? DefaultQueriesListFilter[listMode]\n : state.filter[listMode]?.filter),\n },\n },\n },\n };\n }\n\n case SET_QUERIES_LIST_CURSOR: {\n const listMode = state.listMode;\n return {\n ...state,\n filter: {\n ...state.filter,\n [listMode]: {\n ...state.filter[listMode],\n cursor: action.data,\n },\n },\n };\n }\n\n default: {\n return state;\n }\n }\n}\n"],"mappings":"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"}
@@ -1,18 +1,28 @@
1
1
  import { RootState } from '../../../../store/reducers';
2
2
  import { QueriesListParams } from '../api';
3
- export declare const getQueriesHistoryState: (state: RootState) => import("./reducer").QueriesListState;
3
+ export declare const getQueriesListState: (state: RootState) => import("./reducer").QueriesListState;
4
4
  export declare const isQueriesListLoading: (state: RootState) => boolean;
5
+ export declare const getQueriesListMap: (state: RootState) => Record<string, import("../api").QueryItem>;
6
+ export declare const getQueriesListTimestamp: (state: RootState) => number;
5
7
  export declare const getQueriesList: import("reselect").OutputSelector<RootState, import("../api").QueryItem[], (res: Record<string, import("../api").QueryItem>) => import("../api").QueryItem[]>;
6
8
  export declare const hasQueriesListMore: (state: RootState) => boolean;
7
9
  export declare const getQueriesListError: (state: RootState) => string | Error | undefined;
8
- export declare const getQueriesHistoryFilter: (state: RootState) => import("./types").QueriesHistoryFilter;
9
- export declare const getQueriesHistoryCursor: (state: RootState) => {
10
- cursorTime: string;
11
- direction: import("../api").QueriesHistoryCursorDirection;
12
- } | undefined;
10
+ export declare const getQueriesFilters: (state: RootState) => Partial<Record<import("./types").QueriesListMode, {
11
+ filter: import("./types").QueriesListFilter;
12
+ cursor?: import("./types").QueriesListCursor | undefined;
13
+ }>>;
14
+ export declare const getQueriesListMode: (state: RootState) => import("./types").QueriesListMode;
15
+ export declare const getQueriesListFilter: import("reselect").OutputSelector<RootState, import("./types").QueriesListFilter, (res1: Partial<Record<import("./types").QueriesListMode, {
16
+ filter: import("./types").QueriesListFilter;
17
+ cursor?: import("./types").QueriesListCursor | undefined;
18
+ }>>, res2: import("./types").QueriesListMode) => import("./types").QueriesListFilter>;
19
+ export declare const getQueriesListCursor: import("reselect").OutputSelector<RootState, import("./types").QueriesListCursor | undefined, (res1: Partial<Record<import("./types").QueriesListMode, {
20
+ filter: import("./types").QueriesListFilter;
21
+ cursor?: import("./types").QueriesListCursor | undefined;
22
+ }>>, res2: import("./types").QueriesListMode) => import("./types").QueriesListCursor | undefined>;
13
23
  export declare const getUncompletedItems: import("reselect").OutputSelector<RootState, import("../api").QueryItem[], (res: import("../api").QueryItem[]) => import("../api").QueryItem[]>;
14
- export declare const getQueriesHistoryCursorParams: (state: RootState) => {
24
+ export declare const getQueriesListCursorParams: (state: RootState) => {
15
25
  cursor_time: string;
16
26
  cursor_direction: import("../api").QueriesHistoryCursorDirection;
17
27
  } | undefined;
18
- export declare function getQueriesHistoryFilterParams(state: RootState): QueriesListParams;
28
+ export declare function getQueriesListFilterParams(state: RootState): QueriesListParams;
@@ -1,36 +1,50 @@
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
1
2
  import _objectSpread from "@babel/runtime/helpers/objectSpread2";
3
+ var _excluded = ["is_tutorial"];
2
4
  import { createSelector } from 'reselect';
3
5
  import { getCurrentUserName } from '../../../../store/selectors/global';
4
6
  import { isQueryProgress } from '../../utils/query';
5
- export var getQueriesHistoryState = function getQueriesHistoryState(state) {
7
+ import { QueriesListFilterPresets } from './types';
8
+ export var getQueriesListState = function getQueriesListState(state) {
6
9
  return state.queryTracker.list;
7
10
  };
8
11
  export var isQueriesListLoading = function isQueriesListLoading(state) {
9
- return getQueriesHistoryState(state).state === 'loading';
12
+ return getQueriesListState(state).state === 'loading';
10
13
  };
11
- var getQueriesHistoryMap = function getQueriesHistoryMap(state) {
12
- return getQueriesHistoryState(state).map;
14
+ export var getQueriesListMap = function getQueriesListMap(state) {
15
+ return getQueriesListState(state).map;
13
16
  };
14
- export var getQueriesList = createSelector(getQueriesHistoryMap, function (map) {
17
+ export var getQueriesListTimestamp = function getQueriesListTimestamp(state) {
18
+ return getQueriesListState(state).timestamp;
19
+ };
20
+ export var getQueriesList = createSelector(getQueriesListMap, function (map) {
15
21
  return Object.values(map);
16
22
  });
17
23
  export var hasQueriesListMore = function hasQueriesListMore(state) {
18
- return getQueriesHistoryState(state).hasMore;
24
+ return getQueriesListState(state).hasMore;
19
25
  };
20
26
  export var getQueriesListError = function getQueriesListError(state) {
21
- return getQueriesHistoryState(state).error;
27
+ return getQueriesListState(state).error;
22
28
  };
23
- export var getQueriesHistoryFilter = function getQueriesHistoryFilter(state) {
24
- return getQueriesHistoryState(state).filter;
29
+ export var getQueriesFilters = function getQueriesFilters(state) {
30
+ return getQueriesListState(state).filter;
25
31
  };
26
- export var getQueriesHistoryCursor = function getQueriesHistoryCursor(state) {
27
- return getQueriesHistoryState(state).cursor;
32
+ export var getQueriesListMode = function getQueriesListMode(state) {
33
+ return getQueriesListState(state).listMode;
28
34
  };
35
+ export var getQueriesListFilter = createSelector([getQueriesFilters, getQueriesListMode], function (filters, listMode) {
36
+ var _filters$listMode;
37
+ return ((_filters$listMode = filters[listMode]) === null || _filters$listMode === void 0 ? void 0 : _filters$listMode.filter) || {};
38
+ });
39
+ export var getQueriesListCursor = createSelector([getQueriesFilters, getQueriesListMode], function (filters, listMode) {
40
+ var _filters$listMode2;
41
+ return (_filters$listMode2 = filters[listMode]) === null || _filters$listMode2 === void 0 ? void 0 : _filters$listMode2.cursor;
42
+ });
29
43
  export var getUncompletedItems = createSelector(getQueriesList, function (items) {
30
44
  return items.filter(isQueryProgress);
31
45
  });
32
- export var getQueriesHistoryCursorParams = function getQueriesHistoryCursorParams(state) {
33
- var cursor = getQueriesHistoryCursor(state);
46
+ export var getQueriesListCursorParams = function getQueriesListCursorParams(state) {
47
+ var cursor = getQueriesListCursor(state);
34
48
  if (cursor) {
35
49
  return {
36
50
  cursor_time: cursor.cursorTime,
@@ -39,8 +53,14 @@ export var getQueriesHistoryCursorParams = function getQueriesHistoryCursorParam
39
53
  }
40
54
  return undefined;
41
55
  };
42
- export function getQueriesHistoryFilterParams(state) {
43
- var filter = getQueriesHistoryFilter(state);
56
+ export function getQueriesListFilterParams(state) {
57
+ var listMode = getQueriesListMode(state);
58
+ var filterParams = _objectSpread(_objectSpread({}, getQueriesListFilter(state)), QueriesListFilterPresets[listMode] || {});
59
+ var is_tutorial = filterParams.is_tutorial,
60
+ filter = _objectWithoutProperties(filterParams, _excluded);
61
+ if (is_tutorial) {
62
+ filter.filter = "is_tutorial";
63
+ }
44
64
  if (filter.user === 'my') {
45
65
  var user = getCurrentUserName(state);
46
66
  if (user) {