@ytsaurus/ui 1.14.1 → 1.14.3

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 (278) hide show
  1. package/build/cjs/@types/types.d.ts +1 -0
  2. package/build/cjs/shared/constants/yt-api-id.d.ts +139 -0
  3. package/build/cjs/shared/constants/yt-api-id.js +148 -0
  4. package/build/cjs/shared/constants/yt-api-id.js.map +1 -0
  5. package/build/cjs/shared/utils/check-permission.d.ts +1 -14
  6. package/build/cjs/shared/utils/check-permission.js +6 -10
  7. package/build/cjs/shared/utils/check-permission.js.map +1 -1
  8. package/build/cjs/shared/utils/index.js +3 -3
  9. package/build/cjs/shared/utils/index.js.map +1 -1
  10. package/build/cjs/ui/components/AttributesModal/AttributesModal.d.ts +1 -1
  11. package/build/cjs/ui/containers/RetryBatchModal/RetryBatchModal.js +1 -2
  12. package/build/cjs/ui/containers/RetryBatchModal/RetryBatchModal.js.map +1 -1
  13. package/build/cjs/ui/containers/SettingsPanel/settings-description.js +1 -1
  14. package/build/cjs/ui/containers/SettingsPanel/settings-description.js.map +1 -1
  15. package/build/cjs/ui/pages/navigation/content/Table/TableMeta/TableMeta.d.ts +1 -1
  16. package/build/cjs/ui/pages/operations/selectors.d.ts +1 -1
  17. package/build/cjs/ui/pages/query-tracker/module/api.js +1 -1
  18. package/build/cjs/ui/pages/query-tracker/module/api.js.map +1 -1
  19. package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.d.ts +4 -4
  20. package/build/cjs/ui/pages/query-tracker/module/query/selectors.d.ts +1 -1
  21. package/build/cjs/ui/pages/query-tracker/module/settings/selector.d.ts +1 -1
  22. package/build/cjs/ui/rum/constants.d.ts +2 -0
  23. package/build/cjs/ui/rum/constants.js +4 -1
  24. package/build/cjs/ui/rum/constants.js.map +1 -1
  25. package/build/cjs/ui/rum/rum-counter.js +28 -1
  26. package/build/cjs/ui/rum/rum-counter.js.map +1 -1
  27. package/build/cjs/ui/rum/rum-wrap-api.d.ts +3 -141
  28. package/build/cjs/ui/rum/rum-wrap-api.js +12 -145
  29. package/build/cjs/ui/rum/rum-wrap-api.js.map +1 -1
  30. package/build/cjs/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js +2 -1
  31. package/build/cjs/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
  32. package/build/cjs/ui/store/actions/cluster-params.js +22 -15
  33. package/build/cjs/ui/store/actions/cluster-params.js.map +1 -1
  34. package/build/cjs/ui/store/actions/components/nodes/nodes.js +1 -1
  35. package/build/cjs/ui/store/actions/components/nodes/nodes.js.map +1 -1
  36. package/build/cjs/ui/store/actions/execute-batch.d.ts +2 -1
  37. package/build/cjs/ui/store/actions/execute-batch.js +3 -3
  38. package/build/cjs/ui/store/actions/execute-batch.js.map +1 -1
  39. package/build/cjs/ui/store/actions/navigation/content/map-node.js +1 -1
  40. package/build/cjs/ui/store/actions/navigation/content/map-node.js.map +1 -1
  41. package/build/cjs/ui/store/actions/navigation/index.js +1 -1
  42. package/build/cjs/ui/store/actions/navigation/index.js.map +1 -1
  43. package/build/cjs/ui/store/actions/navigation/modals/attributes-editor.js +9 -3
  44. package/build/cjs/ui/store/actions/navigation/modals/attributes-editor.js.map +1 -1
  45. package/build/cjs/ui/store/actions/navigation/modals/copy-object.js +3 -10
  46. package/build/cjs/ui/store/actions/navigation/modals/copy-object.js.map +1 -1
  47. package/build/cjs/ui/store/actions/navigation/modals/delete-object.js +13 -14
  48. package/build/cjs/ui/store/actions/navigation/modals/delete-object.js.map +1 -1
  49. package/build/cjs/ui/store/actions/navigation/modals/dyn-tables-state-modal.js +9 -5
  50. package/build/cjs/ui/store/actions/navigation/modals/dyn-tables-state-modal.js.map +1 -1
  51. package/build/cjs/ui/store/actions/navigation/modals/move-object.js +3 -10
  52. package/build/cjs/ui/store/actions/navigation/modals/move-object.js.map +1 -1
  53. package/build/cjs/ui/store/actions/navigation/modals/restore-object.js +3 -11
  54. package/build/cjs/ui/store/actions/navigation/modals/restore-object.js.map +1 -1
  55. package/build/cjs/ui/store/actions/navigation/tabs/locks.js +1 -1
  56. package/build/cjs/ui/store/actions/navigation/tabs/locks.js.map +1 -1
  57. package/build/cjs/ui/store/actions/scheduling/expanded-pools.js +2 -3
  58. package/build/cjs/ui/store/actions/scheduling/expanded-pools.js.map +1 -1
  59. package/build/cjs/ui/store/actions/scheduling/scheduling-ts.js +3 -3
  60. package/build/cjs/ui/store/actions/scheduling/scheduling-ts.js.map +1 -1
  61. package/build/cjs/ui/store/actions/scheduling/scheduling.js +1 -1
  62. package/build/cjs/ui/store/actions/scheduling/scheduling.js.map +1 -1
  63. package/build/cjs/ui/store/actions/system/masters.js +7 -3
  64. package/build/cjs/ui/store/actions/system/masters.js.map +1 -1
  65. package/build/cjs/ui/store/actions/system/nodes.js +1 -1
  66. package/build/cjs/ui/store/actions/system/nodes.js.map +1 -1
  67. package/build/cjs/ui/store/actions/system/schedulers.js +2 -2
  68. package/build/cjs/ui/store/actions/system/schedulers.js.map +1 -1
  69. package/build/cjs/ui/store/actions/tablet/stores.js +1 -1
  70. package/build/cjs/ui/store/actions/tablet/stores.js.map +1 -1
  71. package/build/cjs/ui/store/actions/tablet_cell_bundles/index.js +1 -1
  72. package/build/cjs/ui/store/actions/tablet_cell_bundles/index.js.map +1 -1
  73. package/build/cjs/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js +5 -5
  74. package/build/cjs/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
  75. package/build/cjs/ui/store/actions/users.js +1 -1
  76. package/build/cjs/ui/store/actions/users.js.map +1 -1
  77. package/build/cjs/ui/store/reducers/execute-batch.d.ts +1 -1
  78. package/build/cjs/ui/store/reducers/execute-batch.js.map +1 -1
  79. package/build/cjs/ui/store/reducers/index.d.ts +1 -1
  80. package/build/cjs/ui/store/reducers/navigation/index.d.ts +1 -1
  81. package/build/cjs/ui/store/selectors/accounts/account-usage.d.ts +8 -8
  82. package/build/cjs/ui/store/selectors/accounts/accounts-ts.d.ts +8 -8
  83. package/build/cjs/ui/store/selectors/chaos_cell_bundles/index.d.ts +11 -11
  84. package/build/cjs/ui/store/selectors/chyt/index.d.ts +7 -7
  85. package/build/cjs/ui/store/selectors/components/node/memory.d.ts +7 -7
  86. package/build/cjs/ui/store/selectors/components/node-maintenance-modal.d.ts +3 -3
  87. package/build/cjs/ui/store/selectors/components/nodes/node-card.d.ts +1 -1
  88. package/build/cjs/ui/store/selectors/components/nodes/nodes/data.d.ts +2 -2
  89. package/build/cjs/ui/store/selectors/components/nodes/nodes/predicates.d.ts +6 -6
  90. package/build/cjs/ui/store/selectors/components/versions/versions_v2-ts.d.ts +2 -2
  91. package/build/cjs/ui/store/selectors/components/versions/versions_v2.d.ts +5 -5
  92. package/build/cjs/ui/store/selectors/global/index.d.ts +15 -15
  93. package/build/cjs/ui/store/selectors/global/index.js +4 -4
  94. package/build/cjs/ui/store/selectors/global/index.js.map +1 -1
  95. package/build/cjs/ui/store/selectors/global/supported-features.d.ts +6 -6
  96. package/build/cjs/ui/store/selectors/modals/errors.d.ts +1 -1
  97. package/build/cjs/ui/store/selectors/navigation/content/document.d.ts +1 -1
  98. package/build/cjs/ui/store/selectors/navigation/content/replicated-table.d.ts +3 -3
  99. package/build/cjs/ui/store/selectors/navigation/content/table-mount-config.d.ts +1 -1
  100. package/build/cjs/ui/store/selectors/navigation/content/table-ts.d.ts +4 -4
  101. package/build/cjs/ui/store/selectors/navigation/content/table.d.ts +7 -7
  102. package/build/cjs/ui/store/selectors/navigation/modals/attributes-editor.d.ts +3 -3
  103. package/build/cjs/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +1 -1
  104. package/build/cjs/ui/store/selectors/navigation/navigation.d.ts +4 -4
  105. package/build/cjs/ui/store/selectors/navigation/tabs/access-log.d.ts +1 -1
  106. package/build/cjs/ui/store/selectors/navigation/tabs/annotation.d.ts +1 -1
  107. package/build/cjs/ui/store/selectors/navigation/tabs/consumer.d.ts +1 -1
  108. package/build/cjs/ui/store/selectors/navigation/tabs/locks.d.ts +2 -2
  109. package/build/cjs/ui/store/selectors/navigation/tabs/queue.d.ts +2 -2
  110. package/build/cjs/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +1 -1
  111. package/build/cjs/ui/store/selectors/operations/index.d.ts +12 -12
  112. package/build/cjs/ui/store/selectors/operations/jobs-monitor.d.ts +4 -4
  113. package/build/cjs/ui/store/selectors/operations/operation.d.ts +12 -12
  114. package/build/cjs/ui/store/selectors/operations/operations-list.d.ts +3 -3
  115. package/build/cjs/ui/store/selectors/operations/statistics-v2.d.ts +8 -8
  116. package/build/cjs/ui/store/selectors/scheduling/attributes-to-filter.d.ts +1 -1
  117. package/build/cjs/ui/store/selectors/scheduling/create-pool-dialog.d.ts +1 -1
  118. package/build/cjs/ui/store/selectors/scheduling/expanded-pools.d.ts +1 -1
  119. package/build/cjs/ui/store/selectors/scheduling/index.d.ts +1 -1
  120. package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.d.ts +3 -3
  121. package/build/cjs/ui/store/selectors/scheduling/scheduling-ts.d.ts +6 -6
  122. package/build/cjs/ui/store/selectors/scheduling/scheduling.d.ts +20 -20
  123. package/build/cjs/ui/store/selectors/tablet_cell_bundles/index.d.ts +15 -15
  124. package/build/cjs/ui/store/selectors/thor/support.d.ts +5 -5
  125. package/build/cjs/ui/utils/acl/acl-api.js +4 -4
  126. package/build/cjs/ui/utils/acl/acl-api.js.map +1 -1
  127. package/build/cjs/ui/utils/batch.d.ts +2 -2
  128. package/build/cjs/ui/utils/cypress-attributes.js +1 -1
  129. package/build/cjs/ui/utils/cypress-attributes.js.map +1 -1
  130. package/build/cjs/ui/utils/errors/ui-error.d.ts +14 -0
  131. package/build/cjs/ui/utils/errors/ui-error.js +24 -0
  132. package/build/cjs/ui/utils/errors/ui-error.js.map +1 -0
  133. package/build/cjs/ui/utils/utils.d.ts +14 -8
  134. package/build/cjs/ui/utils/utils.js +9 -14
  135. package/build/cjs/ui/utils/utils.js.map +1 -1
  136. package/build/esm/@types/types.d.ts +1 -0
  137. package/build/esm/shared/constants/yt-api-id.d.ts +139 -0
  138. package/build/esm/shared/constants/yt-api-id.js +141 -0
  139. package/build/esm/shared/constants/yt-api-id.js.map +1 -0
  140. package/build/esm/shared/utils/check-permission.d.ts +1 -14
  141. package/build/esm/shared/utils/check-permission.js +8 -11
  142. package/build/esm/shared/utils/check-permission.js.map +1 -1
  143. package/build/esm/shared/utils/index.js +4 -8
  144. package/build/esm/shared/utils/index.js.map +1 -1
  145. package/build/esm/ui/components/AttributesModal/AttributesModal.d.ts +1 -1
  146. package/build/esm/ui/containers/RetryBatchModal/RetryBatchModal.js +1 -2
  147. package/build/esm/ui/containers/RetryBatchModal/RetryBatchModal.js.map +1 -1
  148. package/build/esm/ui/containers/SettingsPanel/settings-description.js +2 -2
  149. package/build/esm/ui/containers/SettingsPanel/settings-description.js.map +1 -1
  150. package/build/esm/ui/pages/navigation/content/Table/TableMeta/TableMeta.d.ts +1 -1
  151. package/build/esm/ui/pages/operations/selectors.d.ts +1 -1
  152. package/build/esm/ui/pages/query-tracker/module/api.js +1 -1
  153. package/build/esm/ui/pages/query-tracker/module/api.js.map +1 -1
  154. package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.d.ts +4 -4
  155. package/build/esm/ui/pages/query-tracker/module/query/selectors.d.ts +1 -1
  156. package/build/esm/ui/pages/query-tracker/module/settings/selector.d.ts +1 -1
  157. package/build/esm/ui/rum/constants.d.ts +2 -0
  158. package/build/esm/ui/rum/constants.js +4 -1
  159. package/build/esm/ui/rum/constants.js.map +1 -1
  160. package/build/esm/ui/rum/rum-counter.js +28 -1
  161. package/build/esm/ui/rum/rum-counter.js.map +1 -1
  162. package/build/esm/ui/rum/rum-wrap-api.d.ts +3 -141
  163. package/build/esm/ui/rum/rum-wrap-api.js +3 -141
  164. package/build/esm/ui/rum/rum-wrap-api.js.map +1 -1
  165. package/build/esm/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js +2 -1
  166. package/build/esm/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
  167. package/build/esm/ui/store/actions/cluster-params.js +24 -17
  168. package/build/esm/ui/store/actions/cluster-params.js.map +1 -1
  169. package/build/esm/ui/store/actions/components/nodes/nodes.js +1 -1
  170. package/build/esm/ui/store/actions/components/nodes/nodes.js.map +1 -1
  171. package/build/esm/ui/store/actions/execute-batch.d.ts +2 -1
  172. package/build/esm/ui/store/actions/execute-batch.js +3 -3
  173. package/build/esm/ui/store/actions/execute-batch.js.map +1 -1
  174. package/build/esm/ui/store/actions/navigation/content/map-node.js +1 -1
  175. package/build/esm/ui/store/actions/navigation/content/map-node.js.map +1 -1
  176. package/build/esm/ui/store/actions/navigation/index.js +1 -1
  177. package/build/esm/ui/store/actions/navigation/index.js.map +1 -1
  178. package/build/esm/ui/store/actions/navigation/modals/attributes-editor.js +9 -3
  179. package/build/esm/ui/store/actions/navigation/modals/attributes-editor.js.map +1 -1
  180. package/build/esm/ui/store/actions/navigation/modals/copy-object.js +4 -11
  181. package/build/esm/ui/store/actions/navigation/modals/copy-object.js.map +1 -1
  182. package/build/esm/ui/store/actions/navigation/modals/delete-object.js +14 -15
  183. package/build/esm/ui/store/actions/navigation/modals/delete-object.js.map +1 -1
  184. package/build/esm/ui/store/actions/navigation/modals/dyn-tables-state-modal.js +9 -5
  185. package/build/esm/ui/store/actions/navigation/modals/dyn-tables-state-modal.js.map +1 -1
  186. package/build/esm/ui/store/actions/navigation/modals/move-object.js +4 -11
  187. package/build/esm/ui/store/actions/navigation/modals/move-object.js.map +1 -1
  188. package/build/esm/ui/store/actions/navigation/modals/restore-object.js +4 -12
  189. package/build/esm/ui/store/actions/navigation/modals/restore-object.js.map +1 -1
  190. package/build/esm/ui/store/actions/navigation/tabs/locks.js +1 -1
  191. package/build/esm/ui/store/actions/navigation/tabs/locks.js.map +1 -1
  192. package/build/esm/ui/store/actions/scheduling/expanded-pools.js +2 -3
  193. package/build/esm/ui/store/actions/scheduling/expanded-pools.js.map +1 -1
  194. package/build/esm/ui/store/actions/scheduling/scheduling-ts.js +3 -3
  195. package/build/esm/ui/store/actions/scheduling/scheduling-ts.js.map +1 -1
  196. package/build/esm/ui/store/actions/scheduling/scheduling.js +1 -1
  197. package/build/esm/ui/store/actions/scheduling/scheduling.js.map +1 -1
  198. package/build/esm/ui/store/actions/system/masters.js +7 -3
  199. package/build/esm/ui/store/actions/system/masters.js.map +1 -1
  200. package/build/esm/ui/store/actions/system/nodes.js +1 -1
  201. package/build/esm/ui/store/actions/system/nodes.js.map +1 -1
  202. package/build/esm/ui/store/actions/system/schedulers.js +2 -2
  203. package/build/esm/ui/store/actions/system/schedulers.js.map +1 -1
  204. package/build/esm/ui/store/actions/tablet/stores.js +1 -1
  205. package/build/esm/ui/store/actions/tablet/stores.js.map +1 -1
  206. package/build/esm/ui/store/actions/tablet_cell_bundles/index.js +1 -1
  207. package/build/esm/ui/store/actions/tablet_cell_bundles/index.js.map +1 -1
  208. package/build/esm/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js +5 -5
  209. package/build/esm/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
  210. package/build/esm/ui/store/actions/users.js +1 -1
  211. package/build/esm/ui/store/actions/users.js.map +1 -1
  212. package/build/esm/ui/store/reducers/execute-batch.d.ts +1 -1
  213. package/build/esm/ui/store/reducers/execute-batch.js.map +1 -1
  214. package/build/esm/ui/store/reducers/index.d.ts +1 -1
  215. package/build/esm/ui/store/reducers/navigation/index.d.ts +1 -1
  216. package/build/esm/ui/store/selectors/accounts/account-usage.d.ts +8 -8
  217. package/build/esm/ui/store/selectors/accounts/accounts-ts.d.ts +8 -8
  218. package/build/esm/ui/store/selectors/chaos_cell_bundles/index.d.ts +11 -11
  219. package/build/esm/ui/store/selectors/chyt/index.d.ts +7 -7
  220. package/build/esm/ui/store/selectors/components/node/memory.d.ts +7 -7
  221. package/build/esm/ui/store/selectors/components/node-maintenance-modal.d.ts +3 -3
  222. package/build/esm/ui/store/selectors/components/nodes/node-card.d.ts +1 -1
  223. package/build/esm/ui/store/selectors/components/nodes/nodes/data.d.ts +2 -2
  224. package/build/esm/ui/store/selectors/components/nodes/nodes/predicates.d.ts +6 -6
  225. package/build/esm/ui/store/selectors/components/versions/versions_v2-ts.d.ts +2 -2
  226. package/build/esm/ui/store/selectors/components/versions/versions_v2.d.ts +5 -5
  227. package/build/esm/ui/store/selectors/global/index.d.ts +15 -15
  228. package/build/esm/ui/store/selectors/global/index.js +3 -3
  229. package/build/esm/ui/store/selectors/global/index.js.map +1 -1
  230. package/build/esm/ui/store/selectors/global/supported-features.d.ts +6 -6
  231. package/build/esm/ui/store/selectors/modals/errors.d.ts +1 -1
  232. package/build/esm/ui/store/selectors/navigation/content/document.d.ts +1 -1
  233. package/build/esm/ui/store/selectors/navigation/content/replicated-table.d.ts +3 -3
  234. package/build/esm/ui/store/selectors/navigation/content/table-mount-config.d.ts +1 -1
  235. package/build/esm/ui/store/selectors/navigation/content/table-ts.d.ts +4 -4
  236. package/build/esm/ui/store/selectors/navigation/content/table.d.ts +7 -7
  237. package/build/esm/ui/store/selectors/navigation/modals/attributes-editor.d.ts +3 -3
  238. package/build/esm/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +1 -1
  239. package/build/esm/ui/store/selectors/navigation/navigation.d.ts +4 -4
  240. package/build/esm/ui/store/selectors/navigation/tabs/access-log.d.ts +1 -1
  241. package/build/esm/ui/store/selectors/navigation/tabs/annotation.d.ts +1 -1
  242. package/build/esm/ui/store/selectors/navigation/tabs/consumer.d.ts +1 -1
  243. package/build/esm/ui/store/selectors/navigation/tabs/locks.d.ts +2 -2
  244. package/build/esm/ui/store/selectors/navigation/tabs/queue.d.ts +2 -2
  245. package/build/esm/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +1 -1
  246. package/build/esm/ui/store/selectors/operations/index.d.ts +12 -12
  247. package/build/esm/ui/store/selectors/operations/jobs-monitor.d.ts +4 -4
  248. package/build/esm/ui/store/selectors/operations/operation.d.ts +12 -12
  249. package/build/esm/ui/store/selectors/operations/operations-list.d.ts +3 -3
  250. package/build/esm/ui/store/selectors/operations/statistics-v2.d.ts +8 -8
  251. package/build/esm/ui/store/selectors/scheduling/attributes-to-filter.d.ts +1 -1
  252. package/build/esm/ui/store/selectors/scheduling/create-pool-dialog.d.ts +1 -1
  253. package/build/esm/ui/store/selectors/scheduling/expanded-pools.d.ts +1 -1
  254. package/build/esm/ui/store/selectors/scheduling/index.d.ts +1 -1
  255. package/build/esm/ui/store/selectors/scheduling/scheduling-pools.d.ts +3 -3
  256. package/build/esm/ui/store/selectors/scheduling/scheduling-ts.d.ts +6 -6
  257. package/build/esm/ui/store/selectors/scheduling/scheduling.d.ts +20 -20
  258. package/build/esm/ui/store/selectors/tablet_cell_bundles/index.d.ts +15 -15
  259. package/build/esm/ui/store/selectors/thor/support.d.ts +5 -5
  260. package/build/esm/ui/utils/acl/acl-api.js +4 -4
  261. package/build/esm/ui/utils/acl/acl-api.js.map +1 -1
  262. package/build/esm/ui/utils/batch.d.ts +2 -2
  263. package/build/esm/ui/utils/cypress-attributes.js +1 -1
  264. package/build/esm/ui/utils/cypress-attributes.js.map +1 -1
  265. package/build/esm/ui/utils/errors/ui-error.d.ts +14 -0
  266. package/build/esm/ui/utils/errors/ui-error.js +17 -0
  267. package/build/esm/ui/utils/errors/ui-error.js.map +1 -0
  268. package/build/esm/ui/utils/utils.d.ts +14 -8
  269. package/build/esm/ui/utils/utils.js +9 -14
  270. package/build/esm/ui/utils/utils.js.map +1 -1
  271. package/dist/public/build/assets-manifest.json +4 -4
  272. package/dist/public/build/js/main.b8adf234.js +3 -0
  273. package/dist/public/build/js/{main.652b0208.js.map → main.b8adf234.js.map} +1 -1
  274. package/dist/public/build/manifest.json +2 -2
  275. package/dist/shared/utils/index.js +3 -3
  276. package/package.json +5 -5
  277. package/dist/public/build/js/main.652b0208.js +0 -3
  278. /package/dist/public/build/js/{main.652b0208.js.LICENSE.txt → main.b8adf234.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["Toaster","YTApiId","ytApiV3Id","splitBatchResults","makeGet","makeList","CHANGE_POOL","ROOT_POOL_NAME","SCHEDULING_EXPANDED_POOLS_FAILURE","SCHEDULING_EXPANDED_POOLS_PARTITION","SCHEDULING_EXPANDED_POOLS_REQUEST","SCHEDULING_EXPANDED_POOLS_SUCCESS","calculatePoolPath","getPool","getPools","getTree","getExpandedPoolsLoadAll","getSchedulingOperationsExpandedPools","EMPTY_OBJECT","getSchedulingPoolsMapByName","isSupportedSchedulingChildrenByPool","CancelHelper","isCancelled","flattenAttributes","cancelHelper","POOL_FIELDS_TO_LOAD","POOL_TREE_GET_ATTRS","EmptyFullPath","_Error","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","_wrapNativeSuper","Error","loadExpandedPools","tree","dispatch","getState","pool","undefined","loadExpandedOperationsAndPools","executeBatch","schedulingPoolFullPath","requests","command","parameters","path","concat","fields","then","_ref","_ref2","_slicedToArray","output","_ref3","full_path","is_ephemeral","addFullPathToExpandedPoolsNoLoad","e","type","data","add","name","title","_getSchedulingOperati","state","loadAll","expandedPools","Map","expandedPoolNames","_toConsumableArray","keys","operationsExpandedPools","operationsRequests","push","prefix","forEach","item","loadAllPools","poolsRequests","poolsChildrenRequests","poolsCypressDataRequests","poolsExpandedPools","indexOf","attributes","_expandedPools$get","_ref4","get","parentPoolPath","isEphemeral","cypressDataPath","removeAllRequests","Promise","all","length","schedulingLoadOperationsPerPool","cancellation","saveCancelToken","resolve","schedulingLoadPoolsAll","schedulingLoadPoolsPerPool","schedulingLoadChildrenPerPool","schedulingLoadCypressDataPerPool","_ref5","_error$inner_errors","_ref6","operationsResults","poolsResults","poolsChildrenResults","poolsCypressData","error","message","_splitBatchResults","operations","results","rawOperations","_reduce","acc","Object","assign","rawPools","cypressData","_splitBatchResults2","pools","_ref7","_ref8","_ref8$","value","_splitBatchResults3","_splitBatchResults3$r","_splitBatchResults4","resultIndices","poolInfo","index","_splitBatchResults5","poolChildren","children","_splitBatchResults6","cypressDataChildrenPerPool","poolChildrenCypressData","$value","expandedPoolsTree","flattenCypressData","inner_errors","setExpandedPool","poolName","expanded","poolsByName","treeExpandedPools","expandedPoolInfo","calcExpandedPoolInfo","set","updateExpandedPoolNoLoad","fullPath","oldExpandedPools","parts","split","slice","i","join","_objectSpread","_defineProperty","resetExpandedPools","_getSchedulingOperati2","old","rest","_objectWithoutProperties","map","_toPropertyKey","size","getSchedulingOperationsCount","_dispatch","root","operationCount","getPoolPathsByName","orchidPath","setLoadAllOperations","_data","res","_data2","parent"],"sources":["expanded-pools.tsx"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../reducers';\nimport _ from 'lodash';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport {\n ExpandedPoolInfo,\n ExpandedPoolsAction,\n PoolCypressData,\n} from '../../reducers/scheduling/expanded-pools';\n\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {makeGet, makeList} from '../../../utils/batch';\nimport {\n CHANGE_POOL,\n ROOT_POOL_NAME,\n SCHEDULING_EXPANDED_POOLS_FAILURE,\n SCHEDULING_EXPANDED_POOLS_PARTITION,\n SCHEDULING_EXPANDED_POOLS_REQUEST,\n SCHEDULING_EXPANDED_POOLS_SUCCESS,\n} from '../../../constants/scheduling';\nimport {calculatePoolPath, getPool, getPools, getTree} from '../../selectors/scheduling/scheduling';\nimport {\n getExpandedPoolsLoadAll,\n getSchedulingOperationsExpandedPools,\n} from '../../selectors/scheduling/expanded-pools';\nimport {EMPTY_OBJECT} from '../../../constants/empty';\nimport {PoolInfo, getSchedulingPoolsMapByName} from '../../selectors/scheduling/scheduling-pools';\nimport {BatchSubRequest} from '../../../../shared/yt-types';\nimport {SchedulingAction} from '../../../store/reducers/scheduling/scheduling';\nimport {isSupportedSchedulingChildrenByPool} from '../../../store/selectors/thor/support';\nimport {YTError} from '../../../../@types/types';\nimport CancelHelper, {isCancelled} from '../../../utils/cancel-helper';\nimport {flattenAttributes} from '../../../utils/scheduling/scheduling';\n\ntype ExpandedPoolsThunkAction = ThunkAction<\n any,\n RootState,\n any,\n ExpandedPoolsAction | SchedulingAction\n>;\n\nconst cancelHelper = new CancelHelper();\n\nconst POOL_FIELDS_TO_LOAD = [\n 'accumulated_resource_ratio_volume',\n 'accumulated_resource_volume',\n 'demand_ratio',\n 'detailed_fair_share',\n 'dominant_resource',\n 'estimated_burst_usage_duration_sec',\n 'fair_share_ratio',\n 'fifo_index',\n 'integral_guarantee_type',\n 'is_ephemeral',\n 'max_operation_count',\n 'max_running_operation_count',\n 'max_share_ratio',\n 'min_share_ratio',\n 'mode',\n 'operation_count',\n 'parent',\n 'pool_operation_count',\n 'child_pool_count',\n 'resource_demand',\n 'resource_limits',\n 'resource_usage',\n 'promised_fair_share_resources',\n 'running_operation_count',\n 'specified_burst_guarantee_resources',\n 'specified_resource_flow',\n 'starvation_status',\n 'starving',\n 'strong_guarantee_resources',\n 'usage_ratio',\n 'weight',\n 'abc',\n];\n\nconst POOL_TREE_GET_ATTRS = [\n 'integral_guarantees',\n 'weight',\n 'max_operation_count',\n 'max_running_operation_count',\n 'strong_guarantee_resources',\n 'resource_limits',\n 'forbid_immediate_operations',\n 'create_ephemeral_subpools',\n 'fifo_sort_parameters',\n 'config',\n 'folder_id',\n];\n\nclass EmptyFullPath extends Error {}\n\nexport function loadExpandedPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const pool = getPool(getState());\n\n if (!tree) {\n return undefined;\n }\n\n if (pool === ROOT_POOL_NAME) {\n return dispatch(loadExpandedOperationsAndPools(tree));\n } else {\n return ytApiV3Id\n .executeBatch<{full_path: string; is_ephemeral?: boolean}>(\n YTApiId.schedulingPoolFullPath,\n {\n requests: [\n {\n command: 'get' as const,\n parameters: {\n path: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}`,\n fields: ['is_ephemeral', 'full_path'],\n },\n },\n ],\n },\n )\n .then(([{output}]) => {\n const {full_path, is_ephemeral} = output ?? {};\n if (!full_path) {\n throw new EmptyFullPath();\n } else {\n dispatch(addFullPathToExpandedPoolsNoLoad(tree, full_path, is_ephemeral));\n dispatch(loadExpandedOperationsAndPools(tree));\n }\n })\n .catch((e) => {\n if (e instanceof EmptyFullPath) {\n dispatch({type: CHANGE_POOL, data: {pool: ROOT_POOL_NAME}});\n /**\n * We don't need to call `dispatch(loadExpandedOperationsAndPools(tree))` after `CHANGE_POOL`.\n * The call will be triggered by SchedulingExpandedPoolsUpdater.\n */\n // dispatch(loadExpandedOperationsAndPools(tree));\n } else {\n new Toaster().add({\n name: 'schedulingPoolFullPath',\n type: 'error',\n title: '',\n });\n }\n });\n }\n };\n}\n\nfunction loadExpandedOperationsAndPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n\n const loadAll = getExpandedPoolsLoadAll(state);\n const expandedPools: Map<string, ExpandedPoolInfo> = loadAll\n ? new Map()\n : getSchedulingOperationsExpandedPools(state)[tree] ?? new Map();\n const expandedPoolNames: Array<string> = [...expandedPools.keys()];\n\n const operationsExpandedPools: Array<string> = [...expandedPoolNames];\n\n const operationsRequests: Array<BatchSubRequest> = [];\n if (loadAll) {\n operationsRequests.push(\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/operations`,\n ),\n );\n } else {\n const prefix = `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/operations_by_pool`;\n operationsExpandedPools.forEach((item) => {\n operationsRequests.push(makeGet(`${prefix}/${item}`));\n });\n }\n\n const loadAllPools = loadAll || !isSupportedSchedulingChildrenByPool(state);\n const poolsRequests: Array<BatchSubRequest> = [];\n const poolsChildrenRequests: Array<BatchSubRequest> = [];\n const poolsCypressDataRequests: Array<BatchSubRequest> = [];\n\n const poolsExpandedPools: Array<string> =\n -1 !== expandedPoolNames.indexOf(ROOT_POOL_NAME)\n ? expandedPoolNames\n : [ROOT_POOL_NAME, ...expandedPoolNames];\n\n if (loadAllPools) {\n poolsRequests.push(\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools`, {\n fields: POOL_FIELDS_TO_LOAD,\n }),\n );\n poolsCypressDataRequests.push(\n makeGet(`//sys/pool_trees/${tree}`, {attributes: POOL_TREE_GET_ATTRS}),\n );\n } else {\n poolsExpandedPools.forEach((pool) => {\n poolsRequests.push(\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}`, {\n fields: POOL_FIELDS_TO_LOAD,\n }),\n );\n poolsChildrenRequests.push(\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/child_pools_by_pool/${pool}`,\n {\n fields: POOL_FIELDS_TO_LOAD,\n },\n ),\n );\n const {parentPoolPath, isEphemeral} = expandedPools.get(pool) ?? {};\n const cypressDataPath = parentPoolPath\n ? `//sys/pool_trees/${tree}/${parentPoolPath}/${pool}`\n : `//sys/pool_trees/${tree}/${pool}`;\n if (pool === ROOT_POOL_NAME || !isEphemeral) {\n poolsCypressDataRequests.push(\n makeList(\n pool === ROOT_POOL_NAME ? `//sys/pool_trees/${tree}` : cypressDataPath,\n {\n attributes: POOL_TREE_GET_ATTRS,\n },\n ),\n );\n }\n });\n }\n\n cancelHelper.removeAllRequests();\n\n dispatch({type: SCHEDULING_EXPANDED_POOLS_REQUEST});\n return Promise.all([\n operationsRequests.length\n ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadOperationsPerPool, {\n parameters: {requests: operationsRequests},\n cancellation: cancelHelper.saveCancelToken,\n })\n : Promise.resolve([]),\n loadAllPools\n ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsAll, {\n parameters: {requests: poolsRequests},\n cancellation: cancelHelper.saveCancelToken,\n })\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsPerPool, {\n parameters: {requests: poolsRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n loadAllPools\n ? Promise.resolve([])\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadChildrenPerPool, {\n parameters: {requests: poolsChildrenRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n !poolsCypressDataRequests.length\n ? Promise.resolve([])\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadCypressDataPerPool, {\n parameters: {requests: poolsCypressDataRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n ])\n .then(([operationsResults, poolsResults, poolsChildrenResults, poolsCypressData]) => {\n const error: YTError = {message: 'Failed to load expanded pools'};\n const {results: operations} = splitBatchResults(operationsResults, error);\n const rawOperations = _.reduce(\n operations,\n (acc, data) => {\n return Object.assign(acc, data);\n },\n {},\n );\n\n const rawPools: Record<string, PoolInfo> = {};\n const cypressData: Record<string, PoolCypressData> = {};\n\n if (loadAllPools) {\n const {results: pools} = splitBatchResults<Record<string, PoolInfo>>(\n poolsResults,\n error,\n );\n const [value = {}] = pools ?? [];\n Object.assign(rawPools, value);\n\n const {\n results: [data],\n } = splitBatchResults(poolsCypressData, error);\n Object.assign(cypressData, flattenAttributes(data));\n } else {\n const {results: pools, resultIndices} = splitBatchResults<PoolInfo>(\n poolsResults,\n error,\n );\n pools.forEach((poolInfo, index) => {\n const name = poolsExpandedPools[resultIndices[index]];\n rawPools[name] = poolInfo;\n });\n\n const {results: poolChildren} = splitBatchResults<Record<string, PoolInfo>>(\n poolsChildrenResults,\n error,\n );\n poolChildren.forEach((children) => {\n Object.assign(rawPools, children);\n });\n\n const {results: cypressDataChildrenPerPool} = splitBatchResults<\n Array<PoolCypressData>\n >(poolsCypressData, error);\n cypressDataChildrenPerPool.forEach((poolChildrenCypressData) => {\n poolChildrenCypressData.forEach((item) => {\n cypressData[item.$value] = item;\n });\n });\n }\n\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_SUCCESS,\n data: {\n expandedPoolsTree: tree,\n rawOperations: Object.keys(rawOperations).length\n ? rawOperations\n : EMPTY_OBJECT,\n rawPools: Object.keys(rawPools).length ? rawPools : EMPTY_OBJECT,\n flattenCypressData: Object.keys(cypressData).length\n ? cypressData\n : EMPTY_OBJECT,\n },\n });\n\n if (error.inner_errors?.length) {\n throw error;\n }\n })\n .catch((error) => {\n if (!isCancelled(error)) {\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function setExpandedPool(poolName: string, expanded: boolean): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const tree = getTree(getState());\n const expandedPools = getSchedulingOperationsExpandedPools(state);\n\n const poolsByName = getSchedulingPoolsMapByName(state);\n\n const treeExpandedPools = new Map(expandedPools[tree]);\n if (expanded) {\n const expandedPoolInfo = calcExpandedPoolInfo(poolName, poolsByName);\n treeExpandedPools.set(poolName, expandedPoolInfo);\n } else {\n treeExpandedPools.delete(poolName);\n }\n\n dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));\n dispatch(loadExpandedPools(tree));\n };\n}\n\nfunction addFullPathToExpandedPoolsNoLoad(\n tree: string,\n /**\n * elements of the array should have the same format as `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}/full_path`\n */\n fullPath: string,\n isEphemeral?: boolean,\n): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const oldExpandedPools = getSchedulingOperationsExpandedPools(state);\n const treeExpandedPools = new Map(oldExpandedPools[tree]);\n\n /**\n * `fullPath` value starts from `/`, example: `/mypool/child/subchild`\n * so we have to use `.slice(1)` to remove first empty string\n */\n const parts = fullPath.split('/').slice(1);\n\n for (let i = 0; i < parts.length; ++i) {\n const poolName = parts[i];\n const parentPoolPath = parts.slice(0, i).join('/');\n treeExpandedPools.set(poolName, {parentPoolPath, isEphemeral});\n }\n\n dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));\n };\n}\n\nfunction updateExpandedPoolNoLoad(\n tree: string,\n treeExpandedPools: Map<string, ExpandedPoolInfo>,\n): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const oldExpandedPools = getSchedulingOperationsExpandedPools(getState());\n\n const expandedPools = {\n ...oldExpandedPools,\n [tree]: treeExpandedPools,\n };\n\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {expandedPools},\n });\n };\n}\n\nexport function resetExpandedPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n if (!tree) {\n return;\n }\n\n const state = getState();\n const {[tree]: old, ...rest} = getSchedulingOperationsExpandedPools(state);\n\n if (old?.size) {\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {\n expandedPools: {\n ...rest,\n [tree]: new Map<string, ExpandedPoolInfo>(),\n },\n },\n });\n }\n };\n}\n\nexport function getSchedulingOperationsCount(): ThunkAction<number, RootState, any, any> {\n return (_dispatch, getState) => {\n const state = getState();\n\n const tree = getSchedulingPoolsMapByName(state);\n const root = tree[ROOT_POOL_NAME];\n return root?.operationCount || 0;\n };\n}\n\nexport function getPoolPathsByName(\n poolName: string,\n): ThunkAction<{fullPath: string; orchidPath: string}, RootState, unknown, any> {\n return (_dispatch, getState) => {\n const state = getState();\n const pools = getPools(state);\n const tree = getTree(state);\n\n return {\n fullPath: calculatePoolPath(poolName, pools, tree),\n orchidPath: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/pools/${poolName}`,\n };\n };\n}\n\nexport function setLoadAllOperations(loadAll: boolean): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {loadAll},\n });\n\n const tree = getTree(state);\n dispatch(loadExpandedPools(tree));\n };\n}\n\nfunction calcExpandedPoolInfo(\n poolName: string,\n poolsByName: Record<string, PoolInfo>,\n): ExpandedPoolInfo {\n let data = poolsByName[poolName];\n const isEphemeral = data?.isEphemeral;\n let res = '';\n while (data?.parent && data.parent !== ROOT_POOL_NAME) {\n res = res ? `${data.parent}/${res}` : data.parent;\n data = poolsByName[data.parent];\n }\n return {parentPoolPath: res, isEphemeral};\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["Toaster","YTApiId","ytApiV3Id","splitBatchResults","makeGet","makeList","CHANGE_POOL","ROOT_POOL_NAME","SCHEDULING_EXPANDED_POOLS_FAILURE","SCHEDULING_EXPANDED_POOLS_PARTITION","SCHEDULING_EXPANDED_POOLS_REQUEST","SCHEDULING_EXPANDED_POOLS_SUCCESS","calculatePoolPath","getPool","getPools","getTree","getExpandedPoolsLoadAll","getSchedulingOperationsExpandedPools","EMPTY_OBJECT","getSchedulingPoolsMapByName","isSupportedSchedulingChildrenByPool","CancelHelper","isCancelled","flattenAttributes","UIBatchError","cancelHelper","POOL_FIELDS_TO_LOAD","POOL_TREE_GET_ATTRS","EmptyFullPath","_Error","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","_wrapNativeSuper","Error","loadExpandedPools","tree","dispatch","getState","pool","undefined","loadExpandedOperationsAndPools","executeBatch","schedulingPoolFullPath","requests","command","parameters","path","concat","fields","then","_ref","_ref2","_slicedToArray","output","_ref3","full_path","is_ephemeral","addFullPathToExpandedPoolsNoLoad","e","type","data","add","name","title","_getSchedulingOperati","state","loadAll","expandedPools","Map","expandedPoolNames","_toConsumableArray","keys","operationsExpandedPools","operationsRequests","push","prefix","forEach","item","loadAllPools","poolsRequests","poolsChildrenRequests","poolsCypressDataRequests","poolsExpandedPools","indexOf","attributes","_expandedPools$get","_ref4","get","parentPoolPath","isEphemeral","cypressDataPath","removeAllRequests","Promise","all","length","schedulingLoadOperationsPerPool","cancellation","saveCancelToken","resolve","schedulingLoadPoolsAll","schedulingLoadPoolsPerPool","schedulingLoadChildrenPerPool","schedulingLoadCypressDataPerPool","_ref5","_error$inner_errors","_ref6","operationsResults","poolsResults","poolsChildrenResults","poolsCypressData","error","_splitBatchResults","operations","results","rawOperations","_reduce","acc","Object","assign","rawPools","cypressData","_splitBatchResults2","pools","_ref7","_ref8","_ref8$","value","_splitBatchResults3","_splitBatchResults3$r","_splitBatchResults4","resultIndices","poolInfo","index","_splitBatchResults5","poolChildren","children","_splitBatchResults6","cypressDataChildrenPerPool","poolChildrenCypressData","$value","expandedPoolsTree","flattenCypressData","inner_errors","setExpandedPool","poolName","expanded","poolsByName","treeExpandedPools","expandedPoolInfo","calcExpandedPoolInfo","set","updateExpandedPoolNoLoad","fullPath","oldExpandedPools","parts","split","slice","i","join","_objectSpread","_defineProperty","resetExpandedPools","_getSchedulingOperati2","old","rest","_objectWithoutProperties","map","_toPropertyKey","size","getSchedulingOperationsCount","_dispatch","root","operationCount","getPoolPathsByName","orchidPath","setLoadAllOperations","_data","res","_data2","parent"],"sources":["expanded-pools.tsx"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../reducers';\nimport _ from 'lodash';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport {\n ExpandedPoolInfo,\n ExpandedPoolsAction,\n PoolCypressData,\n} from '../../reducers/scheduling/expanded-pools';\n\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {makeGet, makeList} from '../../../utils/batch';\nimport {\n CHANGE_POOL,\n ROOT_POOL_NAME,\n SCHEDULING_EXPANDED_POOLS_FAILURE,\n SCHEDULING_EXPANDED_POOLS_PARTITION,\n SCHEDULING_EXPANDED_POOLS_REQUEST,\n SCHEDULING_EXPANDED_POOLS_SUCCESS,\n} from '../../../constants/scheduling';\nimport {calculatePoolPath, getPool, getPools, getTree} from '../../selectors/scheduling/scheduling';\nimport {\n getExpandedPoolsLoadAll,\n getSchedulingOperationsExpandedPools,\n} from '../../selectors/scheduling/expanded-pools';\nimport {EMPTY_OBJECT} from '../../../constants/empty';\nimport {PoolInfo, getSchedulingPoolsMapByName} from '../../selectors/scheduling/scheduling-pools';\nimport {BatchSubRequest} from '../../../../shared/yt-types';\nimport {SchedulingAction} from '../../../store/reducers/scheduling/scheduling';\nimport {isSupportedSchedulingChildrenByPool} from '../../../store/selectors/thor/support';\nimport CancelHelper, {isCancelled} from '../../../utils/cancel-helper';\nimport {flattenAttributes} from '../../../utils/scheduling/scheduling';\nimport {UIBatchError} from '../../../utils/errors/ui-error';\n\ntype ExpandedPoolsThunkAction = ThunkAction<\n any,\n RootState,\n any,\n ExpandedPoolsAction | SchedulingAction\n>;\n\nconst cancelHelper = new CancelHelper();\n\nconst POOL_FIELDS_TO_LOAD = [\n 'accumulated_resource_ratio_volume',\n 'accumulated_resource_volume',\n 'demand_ratio',\n 'detailed_fair_share',\n 'dominant_resource',\n 'estimated_burst_usage_duration_sec',\n 'fair_share_ratio',\n 'fifo_index',\n 'integral_guarantee_type',\n 'is_ephemeral',\n 'max_operation_count',\n 'max_running_operation_count',\n 'max_share_ratio',\n 'min_share_ratio',\n 'mode',\n 'operation_count',\n 'parent',\n 'pool_operation_count',\n 'child_pool_count',\n 'resource_demand',\n 'resource_limits',\n 'resource_usage',\n 'promised_fair_share_resources',\n 'running_operation_count',\n 'specified_burst_guarantee_resources',\n 'specified_resource_flow',\n 'starvation_status',\n 'starving',\n 'strong_guarantee_resources',\n 'usage_ratio',\n 'weight',\n 'abc',\n];\n\nconst POOL_TREE_GET_ATTRS = [\n 'integral_guarantees',\n 'weight',\n 'max_operation_count',\n 'max_running_operation_count',\n 'strong_guarantee_resources',\n 'resource_limits',\n 'forbid_immediate_operations',\n 'create_ephemeral_subpools',\n 'fifo_sort_parameters',\n 'config',\n 'folder_id',\n];\n\nclass EmptyFullPath extends Error {}\n\nexport function loadExpandedPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const pool = getPool(getState());\n\n if (!tree) {\n return undefined;\n }\n\n if (pool === ROOT_POOL_NAME) {\n return dispatch(loadExpandedOperationsAndPools(tree));\n } else {\n return ytApiV3Id\n .executeBatch<{full_path: string; is_ephemeral?: boolean}>(\n YTApiId.schedulingPoolFullPath,\n {\n requests: [\n {\n command: 'get' as const,\n parameters: {\n path: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}`,\n fields: ['is_ephemeral', 'full_path'],\n },\n },\n ],\n },\n )\n .then(([{output}]) => {\n const {full_path, is_ephemeral} = output ?? {};\n if (!full_path) {\n throw new EmptyFullPath();\n } else {\n dispatch(addFullPathToExpandedPoolsNoLoad(tree, full_path, is_ephemeral));\n dispatch(loadExpandedOperationsAndPools(tree));\n }\n })\n .catch((e) => {\n if (e instanceof EmptyFullPath) {\n dispatch({type: CHANGE_POOL, data: {pool: ROOT_POOL_NAME}});\n /**\n * We don't need to call `dispatch(loadExpandedOperationsAndPools(tree))` after `CHANGE_POOL`.\n * The call will be triggered by SchedulingExpandedPoolsUpdater.\n */\n // dispatch(loadExpandedOperationsAndPools(tree));\n } else {\n new Toaster().add({\n name: 'schedulingPoolFullPath',\n type: 'error',\n title: '',\n });\n }\n });\n }\n };\n}\n\nfunction loadExpandedOperationsAndPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n\n const loadAll = getExpandedPoolsLoadAll(state);\n const expandedPools: Map<string, ExpandedPoolInfo> = loadAll\n ? new Map()\n : getSchedulingOperationsExpandedPools(state)[tree] ?? new Map();\n const expandedPoolNames: Array<string> = [...expandedPools.keys()];\n\n const operationsExpandedPools: Array<string> = [...expandedPoolNames];\n\n const operationsRequests: Array<BatchSubRequest> = [];\n if (loadAll) {\n operationsRequests.push(\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/operations`,\n ),\n );\n } else {\n const prefix = `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/operations_by_pool`;\n operationsExpandedPools.forEach((item) => {\n operationsRequests.push(makeGet(`${prefix}/${item}`));\n });\n }\n\n const loadAllPools = loadAll || !isSupportedSchedulingChildrenByPool(state);\n const poolsRequests: Array<BatchSubRequest> = [];\n const poolsChildrenRequests: Array<BatchSubRequest> = [];\n const poolsCypressDataRequests: Array<BatchSubRequest> = [];\n\n const poolsExpandedPools: Array<string> =\n -1 !== expandedPoolNames.indexOf(ROOT_POOL_NAME)\n ? expandedPoolNames\n : [ROOT_POOL_NAME, ...expandedPoolNames];\n\n if (loadAllPools) {\n poolsRequests.push(\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools`, {\n fields: POOL_FIELDS_TO_LOAD,\n }),\n );\n poolsCypressDataRequests.push(\n makeGet(`//sys/pool_trees/${tree}`, {attributes: POOL_TREE_GET_ATTRS}),\n );\n } else {\n poolsExpandedPools.forEach((pool) => {\n poolsRequests.push(\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}`, {\n fields: POOL_FIELDS_TO_LOAD,\n }),\n );\n poolsChildrenRequests.push(\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/child_pools_by_pool/${pool}`,\n {\n fields: POOL_FIELDS_TO_LOAD,\n },\n ),\n );\n const {parentPoolPath, isEphemeral} = expandedPools.get(pool) ?? {};\n const cypressDataPath = parentPoolPath\n ? `//sys/pool_trees/${tree}/${parentPoolPath}/${pool}`\n : `//sys/pool_trees/${tree}/${pool}`;\n if (pool === ROOT_POOL_NAME || !isEphemeral) {\n poolsCypressDataRequests.push(\n makeList(\n pool === ROOT_POOL_NAME ? `//sys/pool_trees/${tree}` : cypressDataPath,\n {\n attributes: POOL_TREE_GET_ATTRS,\n },\n ),\n );\n }\n });\n }\n\n cancelHelper.removeAllRequests();\n\n dispatch({type: SCHEDULING_EXPANDED_POOLS_REQUEST});\n return Promise.all([\n operationsRequests.length\n ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadOperationsPerPool, {\n parameters: {requests: operationsRequests},\n cancellation: cancelHelper.saveCancelToken,\n })\n : Promise.resolve([]),\n loadAllPools\n ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsAll, {\n parameters: {requests: poolsRequests},\n cancellation: cancelHelper.saveCancelToken,\n })\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsPerPool, {\n parameters: {requests: poolsRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n loadAllPools\n ? Promise.resolve([])\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadChildrenPerPool, {\n parameters: {requests: poolsChildrenRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n !poolsCypressDataRequests.length\n ? Promise.resolve([])\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadCypressDataPerPool, {\n parameters: {requests: poolsCypressDataRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n ])\n .then(([operationsResults, poolsResults, poolsChildrenResults, poolsCypressData]) => {\n const error = new UIBatchError('Failed to load expanded pools');\n const {results: operations} = splitBatchResults(operationsResults, error);\n const rawOperations = _.reduce(\n operations,\n (acc, data) => {\n return Object.assign(acc, data);\n },\n {},\n );\n\n const rawPools: Record<string, PoolInfo> = {};\n const cypressData: Record<string, PoolCypressData> = {};\n\n if (loadAllPools) {\n const {results: pools} = splitBatchResults<Record<string, PoolInfo>>(\n poolsResults,\n error,\n );\n const [value = {}] = pools ?? [];\n Object.assign(rawPools, value);\n\n const {\n results: [data],\n } = splitBatchResults(poolsCypressData, error);\n Object.assign(cypressData, flattenAttributes(data));\n } else {\n const {results: pools, resultIndices} = splitBatchResults<PoolInfo>(\n poolsResults,\n error,\n );\n pools.forEach((poolInfo, index) => {\n const name = poolsExpandedPools[resultIndices[index]];\n rawPools[name] = poolInfo;\n });\n\n const {results: poolChildren} = splitBatchResults<Record<string, PoolInfo>>(\n poolsChildrenResults,\n error,\n );\n poolChildren.forEach((children) => {\n Object.assign(rawPools, children);\n });\n\n const {results: cypressDataChildrenPerPool} = splitBatchResults<\n Array<PoolCypressData>\n >(poolsCypressData, error);\n cypressDataChildrenPerPool.forEach((poolChildrenCypressData) => {\n poolChildrenCypressData.forEach((item) => {\n cypressData[item.$value] = item;\n });\n });\n }\n\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_SUCCESS,\n data: {\n expandedPoolsTree: tree,\n rawOperations: Object.keys(rawOperations).length\n ? rawOperations\n : EMPTY_OBJECT,\n rawPools: Object.keys(rawPools).length ? rawPools : EMPTY_OBJECT,\n flattenCypressData: Object.keys(cypressData).length\n ? cypressData\n : EMPTY_OBJECT,\n },\n });\n\n if (error.inner_errors?.length) {\n throw error;\n }\n })\n .catch((error) => {\n if (!isCancelled(error)) {\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function setExpandedPool(poolName: string, expanded: boolean): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const tree = getTree(getState());\n const expandedPools = getSchedulingOperationsExpandedPools(state);\n\n const poolsByName = getSchedulingPoolsMapByName(state);\n\n const treeExpandedPools = new Map(expandedPools[tree]);\n if (expanded) {\n const expandedPoolInfo = calcExpandedPoolInfo(poolName, poolsByName);\n treeExpandedPools.set(poolName, expandedPoolInfo);\n } else {\n treeExpandedPools.delete(poolName);\n }\n\n dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));\n dispatch(loadExpandedPools(tree));\n };\n}\n\nfunction addFullPathToExpandedPoolsNoLoad(\n tree: string,\n /**\n * elements of the array should have the same format as `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}/full_path`\n */\n fullPath: string,\n isEphemeral?: boolean,\n): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const oldExpandedPools = getSchedulingOperationsExpandedPools(state);\n const treeExpandedPools = new Map(oldExpandedPools[tree]);\n\n /**\n * `fullPath` value starts from `/`, example: `/mypool/child/subchild`\n * so we have to use `.slice(1)` to remove first empty string\n */\n const parts = fullPath.split('/').slice(1);\n\n for (let i = 0; i < parts.length; ++i) {\n const poolName = parts[i];\n const parentPoolPath = parts.slice(0, i).join('/');\n treeExpandedPools.set(poolName, {parentPoolPath, isEphemeral});\n }\n\n dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));\n };\n}\n\nfunction updateExpandedPoolNoLoad(\n tree: string,\n treeExpandedPools: Map<string, ExpandedPoolInfo>,\n): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const oldExpandedPools = getSchedulingOperationsExpandedPools(getState());\n\n const expandedPools = {\n ...oldExpandedPools,\n [tree]: treeExpandedPools,\n };\n\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {expandedPools},\n });\n };\n}\n\nexport function resetExpandedPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n if (!tree) {\n return;\n }\n\n const state = getState();\n const {[tree]: old, ...rest} = getSchedulingOperationsExpandedPools(state);\n\n if (old?.size) {\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {\n expandedPools: {\n ...rest,\n [tree]: new Map<string, ExpandedPoolInfo>(),\n },\n },\n });\n }\n };\n}\n\nexport function getSchedulingOperationsCount(): ThunkAction<number, RootState, any, any> {\n return (_dispatch, getState) => {\n const state = getState();\n\n const tree = getSchedulingPoolsMapByName(state);\n const root = tree[ROOT_POOL_NAME];\n return root?.operationCount || 0;\n };\n}\n\nexport function getPoolPathsByName(\n poolName: string,\n): ThunkAction<{fullPath: string; orchidPath: string}, RootState, unknown, any> {\n return (_dispatch, getState) => {\n const state = getState();\n const pools = getPools(state);\n const tree = getTree(state);\n\n return {\n fullPath: calculatePoolPath(poolName, pools, tree),\n orchidPath: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/pools/${poolName}`,\n };\n };\n}\n\nexport function setLoadAllOperations(loadAll: boolean): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {loadAll},\n });\n\n const tree = getTree(state);\n dispatch(loadExpandedPools(tree));\n };\n}\n\nfunction calcExpandedPoolInfo(\n poolName: string,\n poolsByName: Record<string, PoolInfo>,\n): ExpandedPoolInfo {\n let data = poolsByName[poolName];\n const isEphemeral = data?.isEphemeral;\n let res = '';\n while (data?.parent && data.parent !== ROOT_POOL_NAME) {\n res = res ? `${data.parent}/${res}` : data.parent;\n data = poolsByName[data.parent];\n }\n return {parentPoolPath: res, isEphemeral};\n}\n"],"mappings":"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"}
@@ -38,7 +38,7 @@ export function loadSchedulingData() {
38
38
  return rumId.fetch(YTApiId.schedulingData, ytApiV3Id.executeBatch(YTApiId.schedulingData, _objectSpread({
39
39
  requests: [makeGet('//sys/scheduler/@alerts'), makeList('//sys/scheduler/orchid/scheduler/pool_trees'), makeGet('//sys/scheduler/orchid/scheduler/default_fair_share_tree')]
40
40
  }, USE_CACHE))).then(function (data) {
41
- var _splitBatchResults = splitBatchResults(data),
41
+ var _splitBatchResults = splitBatchResults(data, 'Failed to fetch scheduling data'),
42
42
  error = _splitBatchResults.error,
43
43
  _splitBatchResults$re = _slicedToArray(_splitBatchResults.results, 3),
44
44
  schedulerAlerts = _splitBatchResults$re[0],
@@ -72,7 +72,7 @@ export function loadSchedulingData() {
72
72
  requests: treeRequests
73
73
  }, USE_CACHE))).then(function (treeData) {
74
74
  var extracted = extractBatchV4Values(treeData, treeRequests);
75
- var _splitBatchResults2 = splitBatchResults(extracted.results),
75
+ var _splitBatchResults2 = splitBatchResults(extracted.results, 'Failed to fetch tree details'),
76
76
  error = _splitBatchResults2.error,
77
77
  results = _splitBatchResults2.results;
78
78
  if (error) {
@@ -251,7 +251,7 @@ function transferPoolQuota(_ref4) {
251
251
  return ytApiV4Id.executeBatch(YTApiId.schedulingTransferPoolQuota, {
252
252
  requests: requests
253
253
  }).then(function (res) {
254
- var err = getBatchError(res.results);
254
+ var err = getBatchError(res.results, 'Failed to transfer pool quota');
255
255
  if (err) {
256
256
  return Promise.reject(err);
257
257
  }
@@ -1 +1 @@
1
- {"version":3,"names":["INTEGRAL_GUARANTEES_PREFIX","POOL_RESOURCE_TYPE_TO_ATTRIBUTE","computePoolPath","prepareCurrentTree","prepareTrees","extractBatchV4Values","getBatchError","splitBatchResults","wrapApiPromiseByToaster","makeGet","makeList","updateNodeAttributes","Toaster","yt","getPools","getSchedulingIsInitialLoading","getTree","POOL_TOGGLE_DELETE_VISIBILITY","SCHEDULING_DATA_FAILURE","SCHEDULING_DATA_PARTITION","SCHEDULING_DATA_REQUEST","SCHEDULING_DATA_SUCCESS","SCHEDULING_DELETE_POOL_FAILURE","SCHEDULING_DELETE_POOL_REQUEST","SCHEDULING_DELETE_POOL_SUCCESS","loadExpandedPools","RumWrapper","YTApiId","ytApiV3Id","ytApiV4Id","getCluster","RumMeasureTypes","getSchedulingAttributesToFilterTime","schedulingOverviewHasFilter","USE_CACHE","toaster","loadSchedulingData","dispatch","getState","type","state","isInitialLoading","schedulingLoadFilterAttributes","cluster","rumId","SCHEDULING","fetch","schedulingData","executeBatch","_objectSpread","requests","then","data","_splitBatchResults","error","_splitBatchResults$re","_slicedToArray","results","schedulerAlerts","rawTrees","defaultTree","Promise","reject","trees","tree","scheduling","treeRequests","concat","schedulingLoadTree","treeData","extracted","_splitBatchResults2","_ref","_ref2","resource_usage","resource_limits","config","resource_distribution_info","treeResources","code","codes","CANCELLED","deletePool","item","pools","path","v3","remove","add","name","autoHiding","title","closePoolDeleteModal","setTimeout","openPoolDeleteModal","visibility","undefined","setPoolAttributes","params","poolPath","values","initials","_isEmpty","resolve","transferData","toModify","guaranteeType","restValues","_objectWithoutProperties","_excluded","_forEach","v","k","_ref3","limit","source","key","attr","push","value","_initials$key","prevLimit","diff","Object","hasOwnProperty","call","transferPoolQuota","_ref4","tmp","split","dstPool","length","_map","transferPath","startsWith","substr","dotPath","replace","delta","_update","Math","abs","command","parameters","source_pool","destination_pool","pool_tree","resource_delta","schedulingTransferPoolQuota","res","err","lastTime","Date","now","get","schedulingFilterAttributes","fields","skipSuccessToast","toasterName","errorContent","attributesToFilter","attributesToFilterTime","schedulingSetFilter","filter","schedulingSetAbcFilter","abcServiceFilter"],"sources":["scheduling-ts.ts"],"sourcesContent":["import _ from 'lodash';\nimport {\n INTEGRAL_GUARANTEES_PREFIX,\n InitialPoolResourceInfo,\n POOL_RESOURCE_TYPE_TO_ATTRIBUTE,\n PoolResourceType,\n computePoolPath,\n prepareCurrentTree,\n prepareTrees,\n} from '../../../utils/scheduling/scheduling';\nimport {\n extractBatchV4Values,\n getBatchError,\n splitBatchResults,\n wrapApiPromiseByToaster,\n} from '../../../utils/utils';\nimport {makeGet, makeList} from '../../../utils/batch';\nimport {updateNodeAttributes} from '../../../utils/cypress-attributes';\n\nimport {ThunkAction} from 'redux-thunk';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {\n getPools,\n getSchedulingIsInitialLoading,\n getTree,\n} from '../../../store/selectors/scheduling/scheduling';\n\nimport {\n POOL_TOGGLE_DELETE_VISIBILITY,\n SCHEDULING_DATA_FAILURE,\n SCHEDULING_DATA_PARTITION,\n SCHEDULING_DATA_REQUEST,\n SCHEDULING_DATA_SUCCESS,\n SCHEDULING_DELETE_POOL_FAILURE,\n SCHEDULING_DELETE_POOL_REQUEST,\n SCHEDULING_DELETE_POOL_SUCCESS,\n} from '../../../constants/scheduling';\nimport {loadExpandedPools} from './expanded-pools';\nimport {RumWrapper, YTApiId, ytApiV3Id, ytApiV4Id} from '../../../rum/rum-wrap-api';\nimport {getCluster} from '../../../store/selectors/global';\nimport {RumMeasureTypes} from '../../../rum/rum-measure-types';\nimport type {RootState} from '../../../store/reducers';\nimport type {SchedulingAction} from '../../../store/reducers/scheduling/scheduling';\nimport type {PoolInfo} from '../../../store/selectors/scheduling/scheduling-pools';\nimport {\n getSchedulingAttributesToFilterTime,\n schedulingOverviewHasFilter,\n} from '../../../store/selectors/scheduling/attributes-to-filter';\nimport {USE_CACHE} from '../../../../shared/constants/yt-api';\n\nconst toaster = new Toaster();\n\ntype SchedulingThunkAction<T = unknown> = ThunkAction<T, RootState, unknown, SchedulingAction>;\n\nexport function loadSchedulingData(): SchedulingThunkAction {\n return (dispatch, getState) => {\n dispatch({type: SCHEDULING_DATA_REQUEST});\n\n const state = getState();\n const isInitialLoading = getSchedulingIsInitialLoading(state);\n\n if (isInitialLoading && schedulingOverviewHasFilter(state)) {\n dispatch(schedulingLoadFilterAttributes());\n }\n\n const cluster = getCluster(state);\n const rumId = new RumWrapper(cluster, RumMeasureTypes.SCHEDULING);\n return rumId\n .fetch(\n YTApiId.schedulingData,\n ytApiV3Id.executeBatch(YTApiId.schedulingData, {\n requests: [\n makeGet('//sys/scheduler/@alerts'),\n makeList('//sys/scheduler/orchid/scheduler/pool_trees'),\n makeGet('//sys/scheduler/orchid/scheduler/default_fair_share_tree'),\n ],\n ...USE_CACHE,\n }),\n )\n .then((data) => {\n const {\n error,\n results: [schedulerAlerts, rawTrees, defaultTree],\n } = splitBatchResults(data);\n\n if (error) {\n return Promise.reject(error);\n }\n\n const state = getState();\n\n const trees = prepareTrees(rawTrees);\n const tree = prepareCurrentTree(\n defaultTree,\n trees,\n state.scheduling.scheduling.tree,\n );\n\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {schedulerAlerts, trees, tree},\n });\n\n const treeRequests = [\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/resource_usage`),\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/resource_limits`),\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/config`),\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/resource_distribution_info`,\n ),\n ];\n\n if (isInitialLoading) {\n /**\n * We don't need to call `dispatch(loadExpandedPools(tree))` for this branch of code,\n * the call should be triggered by SchedulingExpandedPoolsUpdater\n */\n //dispatch(loadExpandedPools(tree));\n } else {\n dispatch(loadExpandedPools(tree));\n }\n\n return rumId\n .fetch(\n YTApiId.schedulingLoadTree,\n ytApiV4Id.executeBatch(YTApiId.schedulingLoadTree, {\n requests: treeRequests,\n ...USE_CACHE,\n }),\n )\n .then((treeData) => {\n const extracted = extractBatchV4Values(treeData, treeRequests);\n const {error, results} = splitBatchResults(extracted.results);\n if (error) {\n throw error;\n }\n return results;\n });\n })\n .then(([resource_usage, resource_limits, config, resource_distribution_info]) => {\n const treeResources = {\n resource_usage,\n resource_limits,\n config,\n resource_distribution_info,\n };\n\n dispatch({\n type: SCHEDULING_DATA_SUCCESS,\n data: {\n treeResources,\n },\n });\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: SCHEDULING_DATA_FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function deletePool(item?: PoolInfo): SchedulingThunkAction {\n return (dispatch, getState) => {\n if (!item) {\n return;\n }\n\n const state = getState();\n\n const tree = getTree(state);\n const pools = getPools(state);\n const path = computePoolPath(item, pools);\n\n dispatch({type: SCHEDULING_DELETE_POOL_REQUEST});\n\n return yt.v3\n .remove({\n path: `//sys/pool_trees/${tree}/${path}`,\n })\n .then(() => {\n toaster.add({\n name: 'delete pool',\n autoHiding: 10000,\n type: 'success',\n title: `Successfully deleted ${item.name}. Please wait.`,\n });\n\n dispatch({type: SCHEDULING_DELETE_POOL_SUCCESS});\n dispatch(closePoolDeleteModal());\n setTimeout(() => dispatch(loadSchedulingData()), 3000);\n })\n .catch((error: any) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: SCHEDULING_DELETE_POOL_FAILURE,\n data: {error},\n });\n\n return Promise.reject();\n }\n return null;\n });\n };\n}\n\nexport function openPoolDeleteModal(item: PoolInfo): SchedulingAction {\n return {\n type: POOL_TOGGLE_DELETE_VISIBILITY,\n data: {\n visibility: true,\n item,\n },\n };\n}\n\nexport function closePoolDeleteModal(): SchedulingAction {\n return {\n type: POOL_TOGGLE_DELETE_VISIBILITY,\n data: {\n visibility: false,\n item: undefined,\n },\n };\n}\n\ntype PoolResources = Partial<\n Record<Exclude<PoolResourceType, 'guaranteeType'>, InitialPoolResourceInfo>\n>;\n\ninterface SetResourceGuaranteeParams {\n poolPath: string;\n values: PoolResources & {guaranteeType: string};\n initials: PoolResources;\n tree: string;\n}\n\nexport function setPoolAttributes(params: SetResourceGuaranteeParams) {\n const {poolPath, values, initials, tree} = params;\n if (_.isEmpty(values)) {\n return Promise.resolve();\n }\n\n const transferData: Array<{diff: number; source: string; path: string}> = [];\n const toModify: Array<{attr: string; value: any}> = [];\n\n const {guaranteeType, ...restValues} = values;\n\n _.forEach(restValues, (v, k) => {\n const {limit, source} = v || {};\n const key = k as keyof typeof restValues;\n\n const attr = POOL_RESOURCE_TYPE_TO_ATTRIBUTE[key];\n if (!source || limit === undefined) {\n toModify.push({attr, value: limit});\n } else {\n const prevLimit = initials[key]?.limit || 0;\n const diff = (limit || 0) - prevLimit;\n if (diff) {\n transferData.push({diff, source, path: attr});\n }\n }\n });\n\n if (Object.hasOwnProperty.call(values, 'guaranteeType')) {\n toModify.push({\n attr: POOL_RESOURCE_TYPE_TO_ATTRIBUTE['guaranteeType'],\n value: guaranteeType,\n });\n }\n\n return updateNodeAttributes(poolPath, toModify).then(() => {\n return transferPoolQuota({poolPath, transferData, tree});\n });\n}\n\ninterface TransferPoolQuotaParams {\n poolPath: string;\n transferData: Array<{diff: number; source: string; path: string}>;\n tree: string;\n}\n\nfunction transferPoolQuota({poolPath, transferData, tree}: TransferPoolQuotaParams) {\n if (_.isEmpty(transferData)) {\n return Promise.resolve();\n }\n const tmp = poolPath.split('/');\n const dstPool = tmp[tmp.length - 1];\n\n const requests = _.map(transferData, (v) => {\n const {diff, source, path} = v;\n const transferPath = path.startsWith(INTEGRAL_GUARANTEES_PREFIX)\n ? path.substr(INTEGRAL_GUARANTEES_PREFIX.length)\n : path;\n const dotPath = transferPath.replace(/\\//g, '.');\n\n const delta = _.update({}, dotPath, () => Math.abs(diff));\n\n return {\n command: 'transfer_pool_resources' as const,\n parameters: {\n source_pool: diff > 0 ? source : dstPool,\n destination_pool: diff > 0 ? dstPool : source,\n pool_tree: tree,\n resource_delta: delta,\n },\n };\n });\n\n return ytApiV4Id\n .executeBatch(YTApiId.schedulingTransferPoolQuota, {requests})\n .then((res: any) => {\n const err = getBatchError(res.results);\n if (err) {\n return Promise.reject(err);\n }\n return res;\n });\n}\n\nexport function schedulingLoadFilterAttributes(): SchedulingThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const lastTime = getSchedulingAttributesToFilterTime(state);\n if (Date.now() - lastTime < 120000) {\n return undefined;\n }\n\n return wrapApiPromiseByToaster(\n ytApiV3Id.get(YTApiId.schedulingFilterAttributes, {\n path: '//sys/scheduler/orchid/scheduler/pool_trees/physical/pools',\n fields: ['parent', 'abc'],\n ...USE_CACHE,\n }),\n {\n skipSuccessToast: true,\n toasterName: 'schedulingLoadFilterAttributes',\n errorContent: 'Failed to load attributes required for filtering',\n },\n ).then((attributesToFilter) => {\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {attributesToFilter, attributesToFilterTime: Date.now()},\n });\n });\n };\n}\n\nexport function schedulingSetFilter(filter: string): SchedulingThunkAction {\n return (dispatch) => {\n dispatch(schedulingLoadFilterAttributes());\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {filter},\n });\n };\n}\n\nexport function schedulingSetAbcFilter(abcServiceFilter: {\n id: number;\n slug: string;\n}): SchedulingThunkAction {\n return (dispatch) => {\n dispatch(schedulingLoadFilterAttributes());\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {abcServiceFilter},\n });\n };\n}\n"],"mappings":";;;;;;;;AACA,SACIA,0BAA0B,EAE1BC,+BAA+B,EAE/BC,eAAe,EACfC,kBAAkB,EAClBC,YAAY,QACT,sCAAsC;AAC7C,SACIC,oBAAoB,EACpBC,aAAa,EACbC,iBAAiB,EACjBC,uBAAuB,QACpB,sBAAsB;AAC7B,SAAQC,OAAO,EAAEC,QAAQ,QAAO,sBAAsB;AACtD,SAAQC,oBAAoB,QAAO,mCAAmC;AAItE,SAAQC,OAAO,QAAO,mBAAmB;;AAEzC;AACA,OAAOC,EAAE,MAAM,qCAAqC;AAEpD,SACIC,QAAQ,EACRC,6BAA6B,EAC7BC,OAAO,QACJ,gDAAgD;AAEvD,SACIC,6BAA6B,EAC7BC,uBAAuB,EACvBC,yBAAyB,EACzBC,uBAAuB,EACvBC,uBAAuB,EACvBC,8BAA8B,EAC9BC,8BAA8B,EAC9BC,8BAA8B,QAC3B,+BAA+B;AACtC,SAAQC,iBAAiB,QAAO,kBAAkB;AAClD,SAAQC,UAAU,EAAEC,OAAO,EAAEC,SAAS,EAAEC,SAAS,QAAO,2BAA2B;AACnF,SAAQC,UAAU,QAAO,iCAAiC;AAC1D,SAAQC,eAAe,QAAO,gCAAgC;AAI9D,SACIC,mCAAmC,EACnCC,2BAA2B,QACxB,0DAA0D;AACjE,SAAQC,SAAS,QAAO,qCAAqC;AAE7D,IAAMC,OAAO,GAAG,IAAIvB,OAAO,CAAC,CAAC;AAI7B,OAAO,SAASwB,kBAAkBA,CAAA,EAA0B;EACxD,OAAO,UAACC,QAAQ,EAAEC,QAAQ,EAAK;IAC3BD,QAAQ,CAAC;MAACE,IAAI,EAAEnB;IAAuB,CAAC,CAAC;IAEzC,IAAMoB,KAAK,GAAGF,QAAQ,CAAC,CAAC;IACxB,IAAMG,gBAAgB,GAAG1B,6BAA6B,CAACyB,KAAK,CAAC;IAE7D,IAAIC,gBAAgB,IAAIR,2BAA2B,CAACO,KAAK,CAAC,EAAE;MACxDH,QAAQ,CAACK,8BAA8B,CAAC,CAAC,CAAC;IAC9C;IAEA,IAAMC,OAAO,GAAGb,UAAU,CAACU,KAAK,CAAC;IACjC,IAAMI,KAAK,GAAG,IAAIlB,UAAU,CAACiB,OAAO,EAAEZ,eAAe,CAACc,UAAU,CAAC;IACjE,OAAOD,KAAK,CACPE,KAAK,CACFnB,OAAO,CAACoB,cAAc,EACtBnB,SAAS,CAACoB,YAAY,CAACrB,OAAO,CAACoB,cAAc,EAAAE,aAAA;MACzCC,QAAQ,EAAE,CACNzC,OAAO,CAAC,yBAAyB,CAAC,EAClCC,QAAQ,CAAC,6CAA6C,CAAC,EACvDD,OAAO,CAAC,0DAA0D,CAAC;IACtE,GACEyB,SAAS,CACf,CACL,CAAC,CACAiB,IAAI,CAAC,UAACC,IAAI,EAAK;MACZ,IAAAC,kBAAA,GAGI9C,iBAAiB,CAAC6C,IAAI,CAAC;QAFvBE,KAAK,GAAAD,kBAAA,CAALC,KAAK;QAAAC,qBAAA,GAAAC,cAAA,CAAAH,kBAAA,CACLI,OAAO;QAAGC,eAAe,GAAAH,qBAAA;QAAEI,QAAQ,GAAAJ,qBAAA;QAAEK,WAAW,GAAAL,qBAAA;MAGpD,IAAID,KAAK,EAAE;QACP,OAAOO,OAAO,CAACC,MAAM,CAACR,KAAK,CAAC;MAChC;MAEA,IAAMd,KAAK,GAAGF,QAAQ,CAAC,CAAC;MAExB,IAAMyB,KAAK,GAAG3D,YAAY,CAACuD,QAAQ,CAAC;MACpC,IAAMK,IAAI,GAAG7D,kBAAkB,CAC3ByD,WAAW,EACXG,KAAK,EACLvB,KAAK,CAACyB,UAAU,CAACA,UAAU,CAACD,IAChC,CAAC;MAED3B,QAAQ,CAAC;QACLE,IAAI,EAAEpB,yBAAyB;QAC/BiC,IAAI,EAAE;UAACM,eAAe,EAAfA,eAAe;UAAEK,KAAK,EAALA,KAAK;UAAEC,IAAI,EAAJA;QAAI;MACvC,CAAC,CAAC;MAEF,IAAME,YAAY,GAAG,CACjBzD,OAAO,gDAAA0D,MAAA,CAAgDH,IAAI,oBAAiB,CAAC,EAC7EvD,OAAO,gDAAA0D,MAAA,CAAgDH,IAAI,qBAAkB,CAAC,EAC9EvD,OAAO,gDAAA0D,MAAA,CAAgDH,IAAI,YAAS,CAAC,EACrEvD,OAAO,gDAAA0D,MAAA,CAC4CH,IAAI,gCACvD,CAAC,CACJ;MAED,IAAIvB,gBAAgB,EAAE;QAClB;AACpB;AACA;AACA;QACoB;MAAA,CACH,MAAM;QACHJ,QAAQ,CAACZ,iBAAiB,CAACuC,IAAI,CAAC,CAAC;MACrC;MAEA,OAAOpB,KAAK,CACPE,KAAK,CACFnB,OAAO,CAACyC,kBAAkB,EAC1BvC,SAAS,CAACmB,YAAY,CAACrB,OAAO,CAACyC,kBAAkB,EAAAnB,aAAA;QAC7CC,QAAQ,EAAEgB;MAAY,GACnBhC,SAAS,CACf,CACL,CAAC,CACAiB,IAAI,CAAC,UAACkB,QAAQ,EAAK;QAChB,IAAMC,SAAS,GAAGjE,oBAAoB,CAACgE,QAAQ,EAAEH,YAAY,CAAC;QAC9D,IAAAK,mBAAA,GAAyBhE,iBAAiB,CAAC+D,SAAS,CAACb,OAAO,CAAC;UAAtDH,KAAK,GAAAiB,mBAAA,CAALjB,KAAK;UAAEG,OAAO,GAAAc,mBAAA,CAAPd,OAAO;QACrB,IAAIH,KAAK,EAAE;UACP,MAAMA,KAAK;QACf;QACA,OAAOG,OAAO;MAClB,CAAC,CAAC;IACV,CAAC,CAAC,CACDN,IAAI,CAAC,UAAAqB,IAAA,EAA2E;MAAA,IAAAC,KAAA,GAAAjB,cAAA,CAAAgB,IAAA;QAAzEE,cAAc,GAAAD,KAAA;QAAEE,eAAe,GAAAF,KAAA;QAAEG,MAAM,GAAAH,KAAA;QAAEI,0BAA0B,GAAAJ,KAAA;MACvE,IAAMK,aAAa,GAAG;QAClBJ,cAAc,EAAdA,cAAc;QACdC,eAAe,EAAfA,eAAe;QACfC,MAAM,EAANA,MAAM;QACNC,0BAA0B,EAA1BA;MACJ,CAAC;MAEDxC,QAAQ,CAAC;QACLE,IAAI,EAAElB,uBAAuB;QAC7B+B,IAAI,EAAE;UACF0B,aAAa,EAAbA;QACJ;MACJ,CAAC,CAAC;IACN,CAAC,CAAC,SACI,CAAC,UAACxB,KAAK,EAAK;MACd,IAAIA,KAAK,CAACyB,IAAI,KAAKlE,EAAE,CAACmE,KAAK,CAACC,SAAS,EAAE;QACnC5C,QAAQ,CAAC;UACLE,IAAI,EAAErB,uBAAuB;UAC7BkC,IAAI,EAAE;YAACE,KAAK,EAALA;UAAK;QAChB,CAAC,CAAC;MACN;IACJ,CAAC,CAAC;EACV,CAAC;AACL;AAEA,OAAO,SAAS4B,UAAUA,CAACC,IAAe,EAAyB;EAC/D,OAAO,UAAC9C,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAI,CAAC6C,IAAI,EAAE;MACP;IACJ;IAEA,IAAM3C,KAAK,GAAGF,QAAQ,CAAC,CAAC;IAExB,IAAM0B,IAAI,GAAGhD,OAAO,CAACwB,KAAK,CAAC;IAC3B,IAAM4C,KAAK,GAAGtE,QAAQ,CAAC0B,KAAK,CAAC;IAC7B,IAAM6C,IAAI,GAAGnF,eAAe,CAACiF,IAAI,EAAEC,KAAK,CAAC;IAEzC/C,QAAQ,CAAC;MAACE,IAAI,EAAEhB;IAA8B,CAAC,CAAC;IAEhD,OAAOV,EAAE,CAACyE,EAAE,CACPC,MAAM,CAAC;MACJF,IAAI,sBAAAlB,MAAA,CAAsBH,IAAI,OAAAG,MAAA,CAAIkB,IAAI;IAC1C,CAAC,CAAC,CACDlC,IAAI,CAAC,YAAM;MACRhB,OAAO,CAACqD,GAAG,CAAC;QACRC,IAAI,EAAE,aAAa;QACnBC,UAAU,EAAE,KAAK;QACjBnD,IAAI,EAAE,SAAS;QACfoD,KAAK,0BAAAxB,MAAA,CAA0BgB,IAAI,CAACM,IAAI;MAC5C,CAAC,CAAC;MAEFpD,QAAQ,CAAC;QAACE,IAAI,EAAEf;MAA8B,CAAC,CAAC;MAChDa,QAAQ,CAACuD,oBAAoB,CAAC,CAAC,CAAC;MAChCC,UAAU,CAAC;QAAA,OAAMxD,QAAQ,CAACD,kBAAkB,CAAC,CAAC,CAAC;MAAA,GAAE,IAAI,CAAC;IAC1D,CAAC,CAAC,SACI,CAAC,UAACkB,KAAU,EAAK;MACnB,IAAIA,KAAK,CAACyB,IAAI,KAAKlE,EAAE,CAACmE,KAAK,CAACC,SAAS,EAAE;QACnC5C,QAAQ,CAAC;UACLE,IAAI,EAAEjB,8BAA8B;UACpC8B,IAAI,EAAE;YAACE,KAAK,EAALA;UAAK;QAChB,CAAC,CAAC;QAEF,OAAOO,OAAO,CAACC,MAAM,CAAC,CAAC;MAC3B;MACA,OAAO,IAAI;IACf,CAAC,CAAC;EACV,CAAC;AACL;AAEA,OAAO,SAASgC,mBAAmBA,CAACX,IAAc,EAAoB;EAClE,OAAO;IACH5C,IAAI,EAAEtB,6BAA6B;IACnCmC,IAAI,EAAE;MACF2C,UAAU,EAAE,IAAI;MAChBZ,IAAI,EAAJA;IACJ;EACJ,CAAC;AACL;AAEA,OAAO,SAASS,oBAAoBA,CAAA,EAAqB;EACrD,OAAO;IACHrD,IAAI,EAAEtB,6BAA6B;IACnCmC,IAAI,EAAE;MACF2C,UAAU,EAAE,KAAK;MACjBZ,IAAI,EAAEa;IACV;EACJ,CAAC;AACL;AAaA,OAAO,SAASC,iBAAiBA,CAACC,MAAkC,EAAE;EAClE,IAAOC,QAAQ,GAA4BD,MAAM,CAA1CC,QAAQ;IAAEC,MAAM,GAAoBF,MAAM,CAAhCE,MAAM;IAAEC,QAAQ,GAAUH,MAAM,CAAxBG,QAAQ;IAAErC,IAAI,GAAIkC,MAAM,CAAdlC,IAAI;EACvC,IAAIsC,QAAA,CAAUF,MAAM,CAAC,EAAE;IACnB,OAAOvC,OAAO,CAAC0C,OAAO,CAAC,CAAC;EAC5B;EAEA,IAAMC,YAAiE,GAAG,EAAE;EAC5E,IAAMC,QAA2C,GAAG,EAAE;EAEtD,IAAOC,aAAa,GAAmBN,MAAM,CAAtCM,aAAa;IAAKC,UAAU,GAAAC,wBAAA,CAAIR,MAAM,EAAAS,SAAA;EAE7CC,QAAA,CAAUH,UAAU,EAAE,UAACI,CAAC,EAAEC,CAAC,EAAK;IAC5B,IAAAC,KAAA,GAAwBF,CAAC,IAAI,CAAC,CAAC;MAAxBG,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,MAAM,GAAAF,KAAA,CAANE,MAAM;IACpB,IAAMC,GAAG,GAAGJ,CAA4B;IAExC,IAAMK,IAAI,GAAGpH,+BAA+B,CAACmH,GAAG,CAAC;IACjD,IAAI,CAACD,MAAM,IAAID,KAAK,KAAKlB,SAAS,EAAE;MAChCS,QAAQ,CAACa,IAAI,CAAC;QAACD,IAAI,EAAJA,IAAI;QAAEE,KAAK,EAAEL;MAAK,CAAC,CAAC;IACvC,CAAC,MAAM;MAAA,IAAAM,aAAA;MACH,IAAMC,SAAS,GAAG,EAAAD,aAAA,GAAAnB,QAAQ,CAACe,GAAG,CAAC,cAAAI,aAAA,uBAAbA,aAAA,CAAeN,KAAK,KAAI,CAAC;MAC3C,IAAMQ,IAAI,GAAG,CAACR,KAAK,IAAI,CAAC,IAAIO,SAAS;MACrC,IAAIC,IAAI,EAAE;QACNlB,YAAY,CAACc,IAAI,CAAC;UAACI,IAAI,EAAJA,IAAI;UAAEP,MAAM,EAANA,MAAM;UAAE9B,IAAI,EAAEgC;QAAI,CAAC,CAAC;MACjD;IACJ;EACJ,CAAC,CAAC;EAEF,IAAIM,MAAM,CAACC,cAAc,CAACC,IAAI,CAACzB,MAAM,EAAE,eAAe,CAAC,EAAE;IACrDK,QAAQ,CAACa,IAAI,CAAC;MACVD,IAAI,EAAEpH,+BAA+B,CAAC,eAAe,CAAC;MACtDsH,KAAK,EAAEb;IACX,CAAC,CAAC;EACN;EAEA,OAAO/F,oBAAoB,CAACwF,QAAQ,EAAEM,QAAQ,CAAC,CAACtD,IAAI,CAAC,YAAM;IACvD,OAAO2E,iBAAiB,CAAC;MAAC3B,QAAQ,EAARA,QAAQ;MAAEK,YAAY,EAAZA,YAAY;MAAExC,IAAI,EAAJA;IAAI,CAAC,CAAC;EAC5D,CAAC,CAAC;AACN;AAQA,SAAS8D,iBAAiBA,CAAAC,KAAA,EAA0D;EAAA,IAAxD5B,QAAQ,GAAA4B,KAAA,CAAR5B,QAAQ;IAAEK,YAAY,GAAAuB,KAAA,CAAZvB,YAAY;IAAExC,IAAI,GAAA+D,KAAA,CAAJ/D,IAAI;EACpD,IAAIsC,QAAA,CAAUE,YAAY,CAAC,EAAE;IACzB,OAAO3C,OAAO,CAAC0C,OAAO,CAAC,CAAC;EAC5B;EACA,IAAMyB,GAAG,GAAG7B,QAAQ,CAAC8B,KAAK,CAAC,GAAG,CAAC;EAC/B,IAAMC,OAAO,GAAGF,GAAG,CAACA,GAAG,CAACG,MAAM,GAAG,CAAC,CAAC;EAEnC,IAAMjF,QAAQ,GAAGkF,IAAA,CAAM5B,YAAY,EAAE,UAACO,CAAC,EAAK;IACxC,IAAOW,IAAI,GAAkBX,CAAC,CAAvBW,IAAI;MAAEP,MAAM,GAAUJ,CAAC,CAAjBI,MAAM;MAAE9B,IAAI,GAAI0B,CAAC,CAAT1B,IAAI;IACzB,IAAMgD,YAAY,GAAGhD,IAAI,CAACiD,UAAU,CAACtI,0BAA0B,CAAC,GAC1DqF,IAAI,CAACkD,MAAM,CAACvI,0BAA0B,CAACmI,MAAM,CAAC,GAC9C9C,IAAI;IACV,IAAMmD,OAAO,GAAGH,YAAY,CAACI,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;IAEhD,IAAMC,KAAK,GAAGC,OAAA,CAAS,CAAC,CAAC,EAAEH,OAAO,EAAE;MAAA,OAAMI,IAAI,CAACC,GAAG,CAACnB,IAAI,CAAC;IAAA,EAAC;IAEzD,OAAO;MACHoB,OAAO,EAAE,yBAAkC;MAC3CC,UAAU,EAAE;QACRC,WAAW,EAAEtB,IAAI,GAAG,CAAC,GAAGP,MAAM,GAAGe,OAAO;QACxCe,gBAAgB,EAAEvB,IAAI,GAAG,CAAC,GAAGQ,OAAO,GAAGf,MAAM;QAC7C+B,SAAS,EAAElF,IAAI;QACfmF,cAAc,EAAET;MACpB;IACJ,CAAC;EACL,CAAC,CAAC;EAEF,OAAO7G,SAAS,CACXmB,YAAY,CAACrB,OAAO,CAACyH,2BAA2B,EAAE;IAAClG,QAAQ,EAARA;EAAQ,CAAC,CAAC,CAC7DC,IAAI,CAAC,UAACkG,GAAQ,EAAK;IAChB,IAAMC,GAAG,GAAGhJ,aAAa,CAAC+I,GAAG,CAAC5F,OAAO,CAAC;IACtC,IAAI6F,GAAG,EAAE;MACL,OAAOzF,OAAO,CAACC,MAAM,CAACwF,GAAG,CAAC;IAC9B;IACA,OAAOD,GAAG;EACd,CAAC,CAAC;AACV;AAEA,OAAO,SAAS3G,8BAA8BA,CAAA,EAA0B;EACpE,OAAO,UAACL,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAME,KAAK,GAAGF,QAAQ,CAAC,CAAC;IACxB,IAAMiH,QAAQ,GAAGvH,mCAAmC,CAACQ,KAAK,CAAC;IAC3D,IAAIgH,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,QAAQ,GAAG,MAAM,EAAE;MAChC,OAAOvD,SAAS;IACpB;IAEA,OAAOxF,uBAAuB,CAC1BoB,SAAS,CAAC8H,GAAG,CAAC/H,OAAO,CAACgI,0BAA0B,EAAA1G,aAAA;MAC5CoC,IAAI,EAAE,4DAA4D;MAClEuE,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK;IAAC,GACtB1H,SAAS,CACf,CAAC,EACF;MACI2H,gBAAgB,EAAE,IAAI;MACtBC,WAAW,EAAE,gCAAgC;MAC7CC,YAAY,EAAE;IAClB,CACJ,CAAC,CAAC5G,IAAI,CAAC,UAAC6G,kBAAkB,EAAK;MAC3B3H,QAAQ,CAAC;QACLE,IAAI,EAAEpB,yBAAyB;QAC/BiC,IAAI,EAAE;UAAC4G,kBAAkB,EAAlBA,kBAAkB;UAAEC,sBAAsB,EAAET,IAAI,CAACC,GAAG,CAAC;QAAC;MACjE,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC;AACL;AAEA,OAAO,SAASS,mBAAmBA,CAACC,MAAc,EAAyB;EACvE,OAAO,UAAC9H,QAAQ,EAAK;IACjBA,QAAQ,CAACK,8BAA8B,CAAC,CAAC,CAAC;IAC1CL,QAAQ,CAAC;MACLE,IAAI,EAAEpB,yBAAyB;MAC/BiC,IAAI,EAAE;QAAC+G,MAAM,EAANA;MAAM;IACjB,CAAC,CAAC;EACN,CAAC;AACL;AAEA,OAAO,SAASC,sBAAsBA,CAACC,gBAGtC,EAAyB;EACtB,OAAO,UAAChI,QAAQ,EAAK;IACjBA,QAAQ,CAACK,8BAA8B,CAAC,CAAC,CAAC;IAC1CL,QAAQ,CAAC;MACLE,IAAI,EAAEpB,yBAAyB;MAC/BiC,IAAI,EAAE;QAACiH,gBAAgB,EAAhBA;MAAgB;IAC3B,CAAC,CAAC;EACN,CAAC;AACL"}
1
+ {"version":3,"names":["INTEGRAL_GUARANTEES_PREFIX","POOL_RESOURCE_TYPE_TO_ATTRIBUTE","computePoolPath","prepareCurrentTree","prepareTrees","extractBatchV4Values","getBatchError","splitBatchResults","wrapApiPromiseByToaster","makeGet","makeList","updateNodeAttributes","Toaster","yt","getPools","getSchedulingIsInitialLoading","getTree","POOL_TOGGLE_DELETE_VISIBILITY","SCHEDULING_DATA_FAILURE","SCHEDULING_DATA_PARTITION","SCHEDULING_DATA_REQUEST","SCHEDULING_DATA_SUCCESS","SCHEDULING_DELETE_POOL_FAILURE","SCHEDULING_DELETE_POOL_REQUEST","SCHEDULING_DELETE_POOL_SUCCESS","loadExpandedPools","RumWrapper","YTApiId","ytApiV3Id","ytApiV4Id","getCluster","RumMeasureTypes","getSchedulingAttributesToFilterTime","schedulingOverviewHasFilter","USE_CACHE","toaster","loadSchedulingData","dispatch","getState","type","state","isInitialLoading","schedulingLoadFilterAttributes","cluster","rumId","SCHEDULING","fetch","schedulingData","executeBatch","_objectSpread","requests","then","data","_splitBatchResults","error","_splitBatchResults$re","_slicedToArray","results","schedulerAlerts","rawTrees","defaultTree","Promise","reject","trees","tree","scheduling","treeRequests","concat","schedulingLoadTree","treeData","extracted","_splitBatchResults2","_ref","_ref2","resource_usage","resource_limits","config","resource_distribution_info","treeResources","code","codes","CANCELLED","deletePool","item","pools","path","v3","remove","add","name","autoHiding","title","closePoolDeleteModal","setTimeout","openPoolDeleteModal","visibility","undefined","setPoolAttributes","params","poolPath","values","initials","_isEmpty","resolve","transferData","toModify","guaranteeType","restValues","_objectWithoutProperties","_excluded","_forEach","v","k","_ref3","limit","source","key","attr","push","value","_initials$key","prevLimit","diff","Object","hasOwnProperty","call","transferPoolQuota","_ref4","tmp","split","dstPool","length","_map","transferPath","startsWith","substr","dotPath","replace","delta","_update","Math","abs","command","parameters","source_pool","destination_pool","pool_tree","resource_delta","schedulingTransferPoolQuota","res","err","lastTime","Date","now","get","schedulingFilterAttributes","fields","skipSuccessToast","toasterName","errorContent","attributesToFilter","attributesToFilterTime","schedulingSetFilter","filter","schedulingSetAbcFilter","abcServiceFilter"],"sources":["scheduling-ts.ts"],"sourcesContent":["import _ from 'lodash';\nimport {\n INTEGRAL_GUARANTEES_PREFIX,\n InitialPoolResourceInfo,\n POOL_RESOURCE_TYPE_TO_ATTRIBUTE,\n PoolResourceType,\n computePoolPath,\n prepareCurrentTree,\n prepareTrees,\n} from '../../../utils/scheduling/scheduling';\nimport {\n extractBatchV4Values,\n getBatchError,\n splitBatchResults,\n wrapApiPromiseByToaster,\n} from '../../../utils/utils';\nimport {makeGet, makeList} from '../../../utils/batch';\nimport {updateNodeAttributes} from '../../../utils/cypress-attributes';\n\nimport {ThunkAction} from 'redux-thunk';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {\n getPools,\n getSchedulingIsInitialLoading,\n getTree,\n} from '../../../store/selectors/scheduling/scheduling';\n\nimport {\n POOL_TOGGLE_DELETE_VISIBILITY,\n SCHEDULING_DATA_FAILURE,\n SCHEDULING_DATA_PARTITION,\n SCHEDULING_DATA_REQUEST,\n SCHEDULING_DATA_SUCCESS,\n SCHEDULING_DELETE_POOL_FAILURE,\n SCHEDULING_DELETE_POOL_REQUEST,\n SCHEDULING_DELETE_POOL_SUCCESS,\n} from '../../../constants/scheduling';\nimport {loadExpandedPools} from './expanded-pools';\nimport {RumWrapper, YTApiId, ytApiV3Id, ytApiV4Id} from '../../../rum/rum-wrap-api';\nimport {getCluster} from '../../../store/selectors/global';\nimport {RumMeasureTypes} from '../../../rum/rum-measure-types';\nimport type {RootState} from '../../../store/reducers';\nimport type {SchedulingAction} from '../../../store/reducers/scheduling/scheduling';\nimport type {PoolInfo} from '../../../store/selectors/scheduling/scheduling-pools';\nimport {\n getSchedulingAttributesToFilterTime,\n schedulingOverviewHasFilter,\n} from '../../../store/selectors/scheduling/attributes-to-filter';\nimport {USE_CACHE} from '../../../../shared/constants/yt-api';\n\nconst toaster = new Toaster();\n\ntype SchedulingThunkAction<T = unknown> = ThunkAction<T, RootState, unknown, SchedulingAction>;\n\nexport function loadSchedulingData(): SchedulingThunkAction {\n return (dispatch, getState) => {\n dispatch({type: SCHEDULING_DATA_REQUEST});\n\n const state = getState();\n const isInitialLoading = getSchedulingIsInitialLoading(state);\n\n if (isInitialLoading && schedulingOverviewHasFilter(state)) {\n dispatch(schedulingLoadFilterAttributes());\n }\n\n const cluster = getCluster(state);\n const rumId = new RumWrapper(cluster, RumMeasureTypes.SCHEDULING);\n return rumId\n .fetch(\n YTApiId.schedulingData,\n ytApiV3Id.executeBatch(YTApiId.schedulingData, {\n requests: [\n makeGet('//sys/scheduler/@alerts'),\n makeList('//sys/scheduler/orchid/scheduler/pool_trees'),\n makeGet('//sys/scheduler/orchid/scheduler/default_fair_share_tree'),\n ],\n ...USE_CACHE,\n }),\n )\n .then((data) => {\n const {\n error,\n results: [schedulerAlerts, rawTrees, defaultTree],\n } = splitBatchResults(data, 'Failed to fetch scheduling data');\n\n if (error) {\n return Promise.reject(error);\n }\n\n const state = getState();\n\n const trees = prepareTrees(rawTrees);\n const tree = prepareCurrentTree(\n defaultTree,\n trees,\n state.scheduling.scheduling.tree,\n );\n\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {schedulerAlerts, trees, tree},\n });\n\n const treeRequests = [\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/resource_usage`),\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/resource_limits`),\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/config`),\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/resource_distribution_info`,\n ),\n ];\n\n if (isInitialLoading) {\n /**\n * We don't need to call `dispatch(loadExpandedPools(tree))` for this branch of code,\n * the call should be triggered by SchedulingExpandedPoolsUpdater\n */\n //dispatch(loadExpandedPools(tree));\n } else {\n dispatch(loadExpandedPools(tree));\n }\n\n return rumId\n .fetch(\n YTApiId.schedulingLoadTree,\n ytApiV4Id.executeBatch(YTApiId.schedulingLoadTree, {\n requests: treeRequests,\n ...USE_CACHE,\n }),\n )\n .then((treeData) => {\n const extracted = extractBatchV4Values(treeData, treeRequests);\n const {error, results} = splitBatchResults(\n extracted.results,\n 'Failed to fetch tree details',\n );\n if (error) {\n throw error;\n }\n return results;\n });\n })\n .then(([resource_usage, resource_limits, config, resource_distribution_info]) => {\n const treeResources = {\n resource_usage,\n resource_limits,\n config,\n resource_distribution_info,\n };\n\n dispatch({\n type: SCHEDULING_DATA_SUCCESS,\n data: {\n treeResources,\n },\n });\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: SCHEDULING_DATA_FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function deletePool(item?: PoolInfo): SchedulingThunkAction {\n return (dispatch, getState) => {\n if (!item) {\n return;\n }\n\n const state = getState();\n\n const tree = getTree(state);\n const pools = getPools(state);\n const path = computePoolPath(item, pools);\n\n dispatch({type: SCHEDULING_DELETE_POOL_REQUEST});\n\n return yt.v3\n .remove({\n path: `//sys/pool_trees/${tree}/${path}`,\n })\n .then(() => {\n toaster.add({\n name: 'delete pool',\n autoHiding: 10000,\n type: 'success',\n title: `Successfully deleted ${item.name}. Please wait.`,\n });\n\n dispatch({type: SCHEDULING_DELETE_POOL_SUCCESS});\n dispatch(closePoolDeleteModal());\n setTimeout(() => dispatch(loadSchedulingData()), 3000);\n })\n .catch((error: any) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: SCHEDULING_DELETE_POOL_FAILURE,\n data: {error},\n });\n\n return Promise.reject();\n }\n return null;\n });\n };\n}\n\nexport function openPoolDeleteModal(item: PoolInfo): SchedulingAction {\n return {\n type: POOL_TOGGLE_DELETE_VISIBILITY,\n data: {\n visibility: true,\n item,\n },\n };\n}\n\nexport function closePoolDeleteModal(): SchedulingAction {\n return {\n type: POOL_TOGGLE_DELETE_VISIBILITY,\n data: {\n visibility: false,\n item: undefined,\n },\n };\n}\n\ntype PoolResources = Partial<\n Record<Exclude<PoolResourceType, 'guaranteeType'>, InitialPoolResourceInfo>\n>;\n\ninterface SetResourceGuaranteeParams {\n poolPath: string;\n values: PoolResources & {guaranteeType: string};\n initials: PoolResources;\n tree: string;\n}\n\nexport function setPoolAttributes(params: SetResourceGuaranteeParams) {\n const {poolPath, values, initials, tree} = params;\n if (_.isEmpty(values)) {\n return Promise.resolve();\n }\n\n const transferData: Array<{diff: number; source: string; path: string}> = [];\n const toModify: Array<{attr: string; value: any}> = [];\n\n const {guaranteeType, ...restValues} = values;\n\n _.forEach(restValues, (v, k) => {\n const {limit, source} = v || {};\n const key = k as keyof typeof restValues;\n\n const attr = POOL_RESOURCE_TYPE_TO_ATTRIBUTE[key];\n if (!source || limit === undefined) {\n toModify.push({attr, value: limit});\n } else {\n const prevLimit = initials[key]?.limit || 0;\n const diff = (limit || 0) - prevLimit;\n if (diff) {\n transferData.push({diff, source, path: attr});\n }\n }\n });\n\n if (Object.hasOwnProperty.call(values, 'guaranteeType')) {\n toModify.push({\n attr: POOL_RESOURCE_TYPE_TO_ATTRIBUTE['guaranteeType'],\n value: guaranteeType,\n });\n }\n\n return updateNodeAttributes(poolPath, toModify).then(() => {\n return transferPoolQuota({poolPath, transferData, tree});\n });\n}\n\ninterface TransferPoolQuotaParams {\n poolPath: string;\n transferData: Array<{diff: number; source: string; path: string}>;\n tree: string;\n}\n\nfunction transferPoolQuota({poolPath, transferData, tree}: TransferPoolQuotaParams) {\n if (_.isEmpty(transferData)) {\n return Promise.resolve();\n }\n const tmp = poolPath.split('/');\n const dstPool = tmp[tmp.length - 1];\n\n const requests = _.map(transferData, (v) => {\n const {diff, source, path} = v;\n const transferPath = path.startsWith(INTEGRAL_GUARANTEES_PREFIX)\n ? path.substr(INTEGRAL_GUARANTEES_PREFIX.length)\n : path;\n const dotPath = transferPath.replace(/\\//g, '.');\n\n const delta = _.update({}, dotPath, () => Math.abs(diff));\n\n return {\n command: 'transfer_pool_resources' as const,\n parameters: {\n source_pool: diff > 0 ? source : dstPool,\n destination_pool: diff > 0 ? dstPool : source,\n pool_tree: tree,\n resource_delta: delta,\n },\n };\n });\n\n return ytApiV4Id\n .executeBatch(YTApiId.schedulingTransferPoolQuota, {requests})\n .then((res: any) => {\n const err = getBatchError(res.results, 'Failed to transfer pool quota');\n if (err) {\n return Promise.reject(err);\n }\n return res;\n });\n}\n\nexport function schedulingLoadFilterAttributes(): SchedulingThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const lastTime = getSchedulingAttributesToFilterTime(state);\n if (Date.now() - lastTime < 120000) {\n return undefined;\n }\n\n return wrapApiPromiseByToaster(\n ytApiV3Id.get(YTApiId.schedulingFilterAttributes, {\n path: '//sys/scheduler/orchid/scheduler/pool_trees/physical/pools',\n fields: ['parent', 'abc'],\n ...USE_CACHE,\n }),\n {\n skipSuccessToast: true,\n toasterName: 'schedulingLoadFilterAttributes',\n errorContent: 'Failed to load attributes required for filtering',\n },\n ).then((attributesToFilter) => {\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {attributesToFilter, attributesToFilterTime: Date.now()},\n });\n });\n };\n}\n\nexport function schedulingSetFilter(filter: string): SchedulingThunkAction {\n return (dispatch) => {\n dispatch(schedulingLoadFilterAttributes());\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {filter},\n });\n };\n}\n\nexport function schedulingSetAbcFilter(abcServiceFilter: {\n id: number;\n slug: string;\n}): SchedulingThunkAction {\n return (dispatch) => {\n dispatch(schedulingLoadFilterAttributes());\n dispatch({\n type: SCHEDULING_DATA_PARTITION,\n data: {abcServiceFilter},\n });\n };\n}\n"],"mappings":"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"}
@@ -176,7 +176,7 @@ export function editPool(pool, values, initialValues) {
176
176
  return Promise.all([ytApiV3Id.executeBatch(YTApiId.schedulingEditPool, {
177
177
  requests: requests
178
178
  }).then(function (data) {
179
- var _splitBatchResults = splitBatchResults(data),
179
+ var _splitBatchResults = splitBatchResults(data, 'Failed to fetch pool details'),
180
180
  error = _splitBatchResults.error;
181
181
  if (error) {
182
182
  return Promise.reject(error);
@@ -1 +1 @@
1
- {"version":3,"names":["Toaster","yt","getSchedulingNS","toggleFavourite","getPools","getTree","POOL_GENERAL_TYPE_TO_ATTRIBUTE","computePoolPath","CHANGE_CONTENT_MODE","CHANGE_POOL","CHANGE_POOL_CHILDREN_FILTER","CHANGE_TABLE_TREE_STATE","CHANGE_TREE","SCHEDULING_EDIT_POOL_CANCELLED","SCHEDULING_EDIT_POOL_FAILURE","SCHEDULING_EDIT_POOL_REQUEST","SCHEDULING_EDIT_POOL_SUCCESS","TOGGLE_EDIT_VISIBILITY","loadSchedulingData","setPoolAttributes","splitBatchResults","YTApiId","ytApiV3Id","toaster","setName","path","newName","prevName","Promise","resolve","v3","set","concat","makeOtherAttributesCommands","values","initialValues","initialSortParamsString","fifoSortParams","join","newSortParamsString","commands","forbidImmediateOperations","push","command","parameters","input","createEphemeralSubpools","setResourceAttributes","omittedValues","attribute","_isEmpty","keyMapper","userSlots","omittedValuesList","_map","value","key","preparedValues","_mapKeys","get","schedulingGetAttrsBeforeEdit","then","resources","result","_objectSpread","_omit","error","code","reject","makeGeneralCommands","isInitial","initialValue","isOmitted","Object","prototype","hasOwnProperty","call","_pickBy","undefined","mode","weight","Number","isInvalidNumber","isNaN","isValidNumber","editPool","pool","dispatch","getState","state","tree","pools","poolPath","filteredResourceLimitsValues","resourceLimits","omittedResourceLimitsValues","resourceLimitsValues","_mapValues","type","requests","_toConsumableArray","general","otherSettings","all","executeBatch","schedulingEditPool","data","_splitBatchResults","resourceGuarantee","integralGuarantee","_pick","keys","initials","name","add","timeout","title","closeEditModal","setTimeout","codes","CANCELLED","openEditModal","item","visibility","_ref","arguments","length","cancelled","changeTree","changeTableTreeState","treeState","changePool","changeContentMode","evt","contentMode","target","changePoolChildrenFilter","poolChildrenFilter","togglePoolFavourites","parentNS"],"sources":["scheduling.js"],"sourcesContent":["import _ from 'lodash';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {getSchedulingNS} from '../../../store/selectors/settings';\nimport {toggleFavourite} from '../../../store/actions/favourites';\nimport {getPools, getTree} from '../../../store/selectors/scheduling/scheduling';\nimport {\n POOL_GENERAL_TYPE_TO_ATTRIBUTE,\n computePoolPath,\n} from '../../../utils/scheduling/scheduling';\n\nimport {\n CHANGE_CONTENT_MODE,\n CHANGE_POOL,\n CHANGE_POOL_CHILDREN_FILTER,\n CHANGE_TABLE_TREE_STATE,\n CHANGE_TREE,\n SCHEDULING_EDIT_POOL_CANCELLED,\n SCHEDULING_EDIT_POOL_FAILURE,\n SCHEDULING_EDIT_POOL_REQUEST,\n SCHEDULING_EDIT_POOL_SUCCESS,\n TOGGLE_EDIT_VISIBILITY,\n} from '../../../constants/scheduling';\nimport {loadSchedulingData, setPoolAttributes} from './scheduling-ts';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\n\nconst toaster = new Toaster();\n\nconst setName = (path, newName, prevName) => {\n if (prevName === newName) {\n return Promise.resolve();\n }\n\n return yt.v3.set({path: `${path}/@name`}, newName);\n};\n\nconst makeOtherAttributesCommands = (path, values, initialValues) => {\n const initialSortParamsString = initialValues.fifoSortParams.join('|');\n const newSortParamsString = values.fifoSortParams.join('|');\n\n const commands = [];\n\n if (initialValues.forbidImmediateOperations !== values.forbidImmediateOperations) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@forbid_immediate_operations`,\n },\n input: values.forbidImmediateOperations,\n });\n }\n\n if (initialValues.createEphemeralSubpools !== values.createEphemeralSubpools) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@create_ephemeral_subpools`,\n },\n input: values.createEphemeralSubpools,\n });\n }\n\n if (initialSortParamsString !== newSortParamsString) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@fifo_sort_parameters`,\n },\n input: values.fifoSortParams,\n });\n }\n\n return commands;\n};\n\nconst setResourceAttributes = (path, values, omittedValues, attribute) => {\n if (_.isEmpty(values) && _.isEmpty(omittedValues)) {\n return Promise.resolve();\n }\n\n const keyMapper = {userSlots: 'user_slots'};\n const omittedValuesList = _.map(omittedValues, (value, key) => keyMapper[key] || key);\n const preparedValues = _.mapKeys(values, (value, key) => keyMapper[key] || key);\n\n return ytApiV3Id\n .get(YTApiId.schedulingGetAttrsBeforeEdit, {path: `${path}/@${attribute}`})\n .then((resources) => {\n const result = {...resources, ...preparedValues};\n const input = _.omit(result, omittedValuesList);\n\n return yt.v3.set({path: `${path}/@${attribute}`}, input);\n })\n .catch((error) => {\n if (error.code === 500) {\n // attribute not found\n return yt.v3.set({path: `${path}/@${attribute}`}, preparedValues);\n }\n\n return Promise.reject(error);\n });\n};\n\nconst makeGeneralCommands = (path, values, initialValues) => {\n const isInitial = (value, initialValue) => value === initialValue;\n const isOmitted = (value, omittedValues) =>\n Object.prototype.hasOwnProperty.call(omittedValues, value);\n\n //const {name: abcServiceName, slug: abcServiceSlug, id} = prepareAbcService(values.abcService);\n const omittedValues = _.pickBy(\n values,\n (value) => value === '' || value === undefined || value === null,\n );\n\n const commands = [];\n\n // if (!isInitial(abcServiceSlug, initialValues.abcService?.value)) {\n // commands.push({\n // command: abcServiceSlug ? 'set' : 'remove',\n // parameters: {\n // path: `${path}/@abc`,\n // },\n // input: !abcServiceSlug ? undefined : {\n // slug: abcServiceSlug,\n // name: abcServiceName,\n // id,\n // },\n // });\n // }\n\n if (!isInitial(values.mode, initialValues.mode)) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@mode`,\n },\n input: values.mode,\n });\n }\n\n if (!isInitial(values.weight, initialValues.weight)) {\n if (isOmitted('weight', omittedValues)) {\n commands.push({\n command: 'remove',\n parameters: {\n path: `${path}/@weight`,\n },\n });\n } else if (!isInitial(values.weight, initialValues.weight)) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@weight`,\n },\n input: Number(values.weight),\n });\n }\n }\n\n return commands;\n};\n\nfunction isInvalidNumber(value) {\n return value === '' || isNaN(Number(value));\n}\n\nfunction isValidNumber(value) {\n return !isInvalidNumber(value);\n}\n\nexport function editPool(pool, values, initialValues) {\n return (dispatch, getState) => {\n const state = getState();\n\n const tree = getTree(state);\n const pools = getPools(state);\n const poolPath = computePoolPath(pool, pools);\n const path = `//sys/pool_trees/${tree}/${poolPath}`;\n\n const filteredResourceLimitsValues = _.pickBy(values.resourceLimits, isValidNumber);\n const omittedResourceLimitsValues = _.pickBy(values.resourceLimits, isInvalidNumber);\n const resourceLimitsValues = _.mapValues(filteredResourceLimitsValues, (value) =>\n Number(value),\n );\n delete resourceLimitsValues['error-block'];\n delete omittedResourceLimitsValues['error-block'];\n\n dispatch({type: SCHEDULING_EDIT_POOL_REQUEST});\n\n const requests = [\n ...makeGeneralCommands(path, values.general, initialValues.general),\n ...makeOtherAttributesCommands(path, values.otherSettings, initialValues.otherSettings),\n ];\n\n return Promise.all([\n ytApiV3Id.executeBatch(YTApiId.schedulingEditPool, {requests}).then((data) => {\n const {error} = splitBatchResults(data);\n if (error) {\n return Promise.reject(error);\n }\n }),\n setPoolAttributes({\n poolPath: path,\n values: {\n ...values.resourceGuarantee,\n ...values.integralGuarantee,\n ..._.pick(values.general, Object.keys(POOL_GENERAL_TYPE_TO_ATTRIBUTE)),\n },\n initials: {\n ...initialValues.resourceGuarantee,\n ...initialValues.integralGuarantee,\n ..._.pick(initialValues.general, Object.keys(POOL_GENERAL_TYPE_TO_ATTRIBUTE)),\n },\n tree,\n }),\n setResourceAttributes(\n path,\n resourceLimitsValues,\n omittedResourceLimitsValues,\n 'resource_limits',\n ),\n ])\n .then(setName(path, values.general.name, initialValues.general.name))\n .then(() => {\n toaster.add({\n name: 'edit pool',\n timeout: 10000,\n type: 'success',\n title: `Successfully edited ${pool.name}. Please wait.`,\n });\n\n dispatch({type: SCHEDULING_EDIT_POOL_SUCCESS});\n dispatch(closeEditModal());\n setTimeout(() => dispatch(loadSchedulingData()), 3000);\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: SCHEDULING_EDIT_POOL_FAILURE,\n data: {error},\n });\n\n return Promise.reject();\n }\n });\n };\n}\n\nexport function openEditModal(item) {\n return {\n type: TOGGLE_EDIT_VISIBILITY,\n data: {\n visibility: true,\n item,\n },\n };\n}\n\nexport function closeEditModal({cancelled} = {}) {\n return (dispatch) => {\n dispatch({\n type: TOGGLE_EDIT_VISIBILITY,\n data: {\n visibility: false,\n item: undefined,\n },\n });\n\n if (cancelled) {\n dispatch({type: SCHEDULING_EDIT_POOL_CANCELLED});\n }\n };\n}\n\nexport function changeTree(tree) {\n return (dispatch) => {\n dispatch({\n type: CHANGE_TREE,\n data: {tree},\n });\n\n dispatch(loadSchedulingData());\n };\n}\n\nexport function changeTableTreeState(treeState) {\n return {\n type: CHANGE_TABLE_TREE_STATE,\n data: {treeState},\n };\n}\n\nexport function changePool(pool) {\n return {\n type: CHANGE_POOL,\n data: {pool},\n };\n}\n\nexport function changeContentMode(evt) {\n return {\n type: CHANGE_CONTENT_MODE,\n data: {\n contentMode: evt.target.value,\n },\n };\n}\n\nexport function changePoolChildrenFilter(poolChildrenFilter) {\n return {\n type: CHANGE_POOL_CHILDREN_FILTER,\n data: {poolChildrenFilter},\n };\n}\n\nexport function togglePoolFavourites(pool, tree) {\n return (dispatch, getState) => {\n const value = `${pool}[${tree}]`;\n const parentNS = getSchedulingNS(getState());\n return dispatch(toggleFavourite(value, parentNS));\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["Toaster","yt","getSchedulingNS","toggleFavourite","getPools","getTree","POOL_GENERAL_TYPE_TO_ATTRIBUTE","computePoolPath","CHANGE_CONTENT_MODE","CHANGE_POOL","CHANGE_POOL_CHILDREN_FILTER","CHANGE_TABLE_TREE_STATE","CHANGE_TREE","SCHEDULING_EDIT_POOL_CANCELLED","SCHEDULING_EDIT_POOL_FAILURE","SCHEDULING_EDIT_POOL_REQUEST","SCHEDULING_EDIT_POOL_SUCCESS","TOGGLE_EDIT_VISIBILITY","loadSchedulingData","setPoolAttributes","splitBatchResults","YTApiId","ytApiV3Id","toaster","setName","path","newName","prevName","Promise","resolve","v3","set","concat","makeOtherAttributesCommands","values","initialValues","initialSortParamsString","fifoSortParams","join","newSortParamsString","commands","forbidImmediateOperations","push","command","parameters","input","createEphemeralSubpools","setResourceAttributes","omittedValues","attribute","_isEmpty","keyMapper","userSlots","omittedValuesList","_map","value","key","preparedValues","_mapKeys","get","schedulingGetAttrsBeforeEdit","then","resources","result","_objectSpread","_omit","error","code","reject","makeGeneralCommands","isInitial","initialValue","isOmitted","Object","prototype","hasOwnProperty","call","_pickBy","undefined","mode","weight","Number","isInvalidNumber","isNaN","isValidNumber","editPool","pool","dispatch","getState","state","tree","pools","poolPath","filteredResourceLimitsValues","resourceLimits","omittedResourceLimitsValues","resourceLimitsValues","_mapValues","type","requests","_toConsumableArray","general","otherSettings","all","executeBatch","schedulingEditPool","data","_splitBatchResults","resourceGuarantee","integralGuarantee","_pick","keys","initials","name","add","timeout","title","closeEditModal","setTimeout","codes","CANCELLED","openEditModal","item","visibility","_ref","arguments","length","cancelled","changeTree","changeTableTreeState","treeState","changePool","changeContentMode","evt","contentMode","target","changePoolChildrenFilter","poolChildrenFilter","togglePoolFavourites","parentNS"],"sources":["scheduling.js"],"sourcesContent":["import _ from 'lodash';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {getSchedulingNS} from '../../../store/selectors/settings';\nimport {toggleFavourite} from '../../../store/actions/favourites';\nimport {getPools, getTree} from '../../../store/selectors/scheduling/scheduling';\nimport {\n POOL_GENERAL_TYPE_TO_ATTRIBUTE,\n computePoolPath,\n} from '../../../utils/scheduling/scheduling';\n\nimport {\n CHANGE_CONTENT_MODE,\n CHANGE_POOL,\n CHANGE_POOL_CHILDREN_FILTER,\n CHANGE_TABLE_TREE_STATE,\n CHANGE_TREE,\n SCHEDULING_EDIT_POOL_CANCELLED,\n SCHEDULING_EDIT_POOL_FAILURE,\n SCHEDULING_EDIT_POOL_REQUEST,\n SCHEDULING_EDIT_POOL_SUCCESS,\n TOGGLE_EDIT_VISIBILITY,\n} from '../../../constants/scheduling';\nimport {loadSchedulingData, setPoolAttributes} from './scheduling-ts';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\n\nconst toaster = new Toaster();\n\nconst setName = (path, newName, prevName) => {\n if (prevName === newName) {\n return Promise.resolve();\n }\n\n return yt.v3.set({path: `${path}/@name`}, newName);\n};\n\nconst makeOtherAttributesCommands = (path, values, initialValues) => {\n const initialSortParamsString = initialValues.fifoSortParams.join('|');\n const newSortParamsString = values.fifoSortParams.join('|');\n\n const commands = [];\n\n if (initialValues.forbidImmediateOperations !== values.forbidImmediateOperations) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@forbid_immediate_operations`,\n },\n input: values.forbidImmediateOperations,\n });\n }\n\n if (initialValues.createEphemeralSubpools !== values.createEphemeralSubpools) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@create_ephemeral_subpools`,\n },\n input: values.createEphemeralSubpools,\n });\n }\n\n if (initialSortParamsString !== newSortParamsString) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@fifo_sort_parameters`,\n },\n input: values.fifoSortParams,\n });\n }\n\n return commands;\n};\n\nconst setResourceAttributes = (path, values, omittedValues, attribute) => {\n if (_.isEmpty(values) && _.isEmpty(omittedValues)) {\n return Promise.resolve();\n }\n\n const keyMapper = {userSlots: 'user_slots'};\n const omittedValuesList = _.map(omittedValues, (value, key) => keyMapper[key] || key);\n const preparedValues = _.mapKeys(values, (value, key) => keyMapper[key] || key);\n\n return ytApiV3Id\n .get(YTApiId.schedulingGetAttrsBeforeEdit, {path: `${path}/@${attribute}`})\n .then((resources) => {\n const result = {...resources, ...preparedValues};\n const input = _.omit(result, omittedValuesList);\n\n return yt.v3.set({path: `${path}/@${attribute}`}, input);\n })\n .catch((error) => {\n if (error.code === 500) {\n // attribute not found\n return yt.v3.set({path: `${path}/@${attribute}`}, preparedValues);\n }\n\n return Promise.reject(error);\n });\n};\n\nconst makeGeneralCommands = (path, values, initialValues) => {\n const isInitial = (value, initialValue) => value === initialValue;\n const isOmitted = (value, omittedValues) =>\n Object.prototype.hasOwnProperty.call(omittedValues, value);\n\n //const {name: abcServiceName, slug: abcServiceSlug, id} = prepareAbcService(values.abcService);\n const omittedValues = _.pickBy(\n values,\n (value) => value === '' || value === undefined || value === null,\n );\n\n const commands = [];\n\n // if (!isInitial(abcServiceSlug, initialValues.abcService?.value)) {\n // commands.push({\n // command: abcServiceSlug ? 'set' : 'remove',\n // parameters: {\n // path: `${path}/@abc`,\n // },\n // input: !abcServiceSlug ? undefined : {\n // slug: abcServiceSlug,\n // name: abcServiceName,\n // id,\n // },\n // });\n // }\n\n if (!isInitial(values.mode, initialValues.mode)) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@mode`,\n },\n input: values.mode,\n });\n }\n\n if (!isInitial(values.weight, initialValues.weight)) {\n if (isOmitted('weight', omittedValues)) {\n commands.push({\n command: 'remove',\n parameters: {\n path: `${path}/@weight`,\n },\n });\n } else if (!isInitial(values.weight, initialValues.weight)) {\n commands.push({\n command: 'set',\n parameters: {\n path: `${path}/@weight`,\n },\n input: Number(values.weight),\n });\n }\n }\n\n return commands;\n};\n\nfunction isInvalidNumber(value) {\n return value === '' || isNaN(Number(value));\n}\n\nfunction isValidNumber(value) {\n return !isInvalidNumber(value);\n}\n\nexport function editPool(pool, values, initialValues) {\n return (dispatch, getState) => {\n const state = getState();\n\n const tree = getTree(state);\n const pools = getPools(state);\n const poolPath = computePoolPath(pool, pools);\n const path = `//sys/pool_trees/${tree}/${poolPath}`;\n\n const filteredResourceLimitsValues = _.pickBy(values.resourceLimits, isValidNumber);\n const omittedResourceLimitsValues = _.pickBy(values.resourceLimits, isInvalidNumber);\n const resourceLimitsValues = _.mapValues(filteredResourceLimitsValues, (value) =>\n Number(value),\n );\n delete resourceLimitsValues['error-block'];\n delete omittedResourceLimitsValues['error-block'];\n\n dispatch({type: SCHEDULING_EDIT_POOL_REQUEST});\n\n const requests = [\n ...makeGeneralCommands(path, values.general, initialValues.general),\n ...makeOtherAttributesCommands(path, values.otherSettings, initialValues.otherSettings),\n ];\n\n return Promise.all([\n ytApiV3Id.executeBatch(YTApiId.schedulingEditPool, {requests}).then((data) => {\n const {error} = splitBatchResults(data, 'Failed to fetch pool details');\n if (error) {\n return Promise.reject(error);\n }\n }),\n setPoolAttributes({\n poolPath: path,\n values: {\n ...values.resourceGuarantee,\n ...values.integralGuarantee,\n ..._.pick(values.general, Object.keys(POOL_GENERAL_TYPE_TO_ATTRIBUTE)),\n },\n initials: {\n ...initialValues.resourceGuarantee,\n ...initialValues.integralGuarantee,\n ..._.pick(initialValues.general, Object.keys(POOL_GENERAL_TYPE_TO_ATTRIBUTE)),\n },\n tree,\n }),\n setResourceAttributes(\n path,\n resourceLimitsValues,\n omittedResourceLimitsValues,\n 'resource_limits',\n ),\n ])\n .then(setName(path, values.general.name, initialValues.general.name))\n .then(() => {\n toaster.add({\n name: 'edit pool',\n timeout: 10000,\n type: 'success',\n title: `Successfully edited ${pool.name}. Please wait.`,\n });\n\n dispatch({type: SCHEDULING_EDIT_POOL_SUCCESS});\n dispatch(closeEditModal());\n setTimeout(() => dispatch(loadSchedulingData()), 3000);\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: SCHEDULING_EDIT_POOL_FAILURE,\n data: {error},\n });\n\n return Promise.reject();\n }\n });\n };\n}\n\nexport function openEditModal(item) {\n return {\n type: TOGGLE_EDIT_VISIBILITY,\n data: {\n visibility: true,\n item,\n },\n };\n}\n\nexport function closeEditModal({cancelled} = {}) {\n return (dispatch) => {\n dispatch({\n type: TOGGLE_EDIT_VISIBILITY,\n data: {\n visibility: false,\n item: undefined,\n },\n });\n\n if (cancelled) {\n dispatch({type: SCHEDULING_EDIT_POOL_CANCELLED});\n }\n };\n}\n\nexport function changeTree(tree) {\n return (dispatch) => {\n dispatch({\n type: CHANGE_TREE,\n data: {tree},\n });\n\n dispatch(loadSchedulingData());\n };\n}\n\nexport function changeTableTreeState(treeState) {\n return {\n type: CHANGE_TABLE_TREE_STATE,\n data: {treeState},\n };\n}\n\nexport function changePool(pool) {\n return {\n type: CHANGE_POOL,\n data: {pool},\n };\n}\n\nexport function changeContentMode(evt) {\n return {\n type: CHANGE_CONTENT_MODE,\n data: {\n contentMode: evt.target.value,\n },\n };\n}\n\nexport function changePoolChildrenFilter(poolChildrenFilter) {\n return {\n type: CHANGE_POOL_CHILDREN_FILTER,\n data: {poolChildrenFilter},\n };\n}\n\nexport function togglePoolFavourites(pool, tree) {\n return (dispatch, getState) => {\n const value = `${pool}[${tree}]`;\n const parentNS = getSchedulingNS(getState());\n return dispatch(toggleFavourite(value, parentNS));\n };\n}\n"],"mappings":"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"}
@@ -25,7 +25,7 @@ function loadMastersConfig() {
25
25
  }
26
26
  function _loadMastersConfig() {
27
27
  _loadMastersConfig = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
28
- var _timestampProvidersRe, _queueAgentsResult$er;
28
+ var _timestampProvidersRe, _queueAgentsResult$er, _ypath$getValue;
29
29
  var requests, _yield$ytApiV3Id$exec, _yield$ytApiV3Id$exec2, primaryMasterResult, secondaryMastersResult, timestampProvidersResult, discoveryServersResult, queueAgentsResult, batchError, error, queueAgentsError, _ref3, timestamp_path, _ref4, primary_path, tag_cell_requests, _yield$ytApiV3Id$exec3, _yield$ytApiV3Id$exec4, primaryMasterCellTag, timestampProviderCellTag, primaryMaster, secondaryMasters, timestampProviders, mainResult, discoveryRequests, queueAgentsStateRequests, discoveryServersStatuses, queueAgentsStatuses, results, discoveryResults, queueAgentsStateResults;
30
30
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
31
31
  while (1) switch (_context2.prev = _context2.next) {
@@ -126,7 +126,7 @@ function _loadMastersConfig() {
126
126
  attributes: ypath.getValue(value, '/@')
127
127
  };
128
128
  }),
129
- cellTag: getCellIdTag(ypath.getValue(timestampProviderCellTag.output).cell_id)
129
+ cellTag: getCellIdTag((_ypath$getValue = ypath.getValue(timestampProviderCellTag.output)) === null || _ypath$getValue === void 0 ? void 0 : _ypath$getValue.cell_id)
130
130
  };
131
131
  mainResult = {
132
132
  primaryMaster: {
@@ -349,9 +349,13 @@ export function loadMasters() {
349
349
  }();
350
350
  }
351
351
  function getCellIdTag(uuid) {
352
+ if (!uuid) {
353
+ return undefined;
354
+ }
352
355
  var _uuid$split = uuid.split('-'),
353
356
  _uuid$split2 = _slicedToArray(_uuid$split, 3),
354
- third = _uuid$split2[2];
357
+ _uuid$split2$ = _uuid$split2[2],
358
+ third = _uuid$split2$ === void 0 ? '' : _uuid$split2$;
355
359
  return Number("0x".concat(third.substring(0, third.length - 4)));
356
360
  }
357
361
  // #sourceMappingURL=masters.js.map