@ytsaurus/ui 1.16.1 → 1.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -11
- package/build/cjs/@types/core.d.ts +7 -7
- package/build/cjs/server/components/layout-config.js +3 -3
- package/build/cjs/server/components/layout-config.js.map +1 -1
- package/build/cjs/server/components/requestsSetup.js +13 -5
- package/build/cjs/server/components/requestsSetup.js.map +1 -1
- package/build/cjs/server/components/settings.d.ts +10 -5
- package/build/cjs/server/components/settings.js +24 -23
- package/build/cjs/server/components/settings.js.map +1 -1
- package/build/cjs/server/components/table.d.ts +3 -3
- package/build/cjs/server/components/table.js +4 -4
- package/build/cjs/server/components/table.js.map +1 -1
- package/build/cjs/server/components/yt-auth.d.ts +0 -2
- package/build/cjs/server/components/yt-auth.js +5 -14
- package/build/cjs/server/components/yt-auth.js.map +1 -1
- package/build/cjs/server/configs/common.js +5 -13
- package/build/cjs/server/configs/common.js.map +1 -1
- package/build/cjs/server/configs/local.js +0 -5
- package/build/cjs/server/configs/local.js.map +1 -1
- package/build/cjs/server/controllers/chyt-api.js +1 -1
- package/build/cjs/server/controllers/chyt-api.js.map +1 -1
- package/build/cjs/server/controllers/cluster-info.js +2 -2
- package/build/cjs/server/controllers/cluster-info.js.map +1 -1
- package/build/cjs/server/controllers/cluster-params.js +1 -1
- package/build/cjs/server/controllers/cluster-params.js.map +1 -1
- package/build/cjs/server/controllers/clusters.d.ts +1 -0
- package/build/cjs/server/controllers/clusters.js +24 -1
- package/build/cjs/server/controllers/clusters.js.map +1 -1
- package/build/cjs/server/controllers/home.js +10 -6
- package/build/cjs/server/controllers/home.js.map +1 -1
- package/build/cjs/server/controllers/login.js +18 -5
- package/build/cjs/server/controllers/login.js.map +1 -1
- package/build/cjs/server/controllers/odin-proxy-api.js +1 -1
- package/build/cjs/server/controllers/odin-proxy-api.js.map +1 -1
- package/build/cjs/server/controllers/scheduling-pools.js +2 -2
- package/build/cjs/server/controllers/scheduling-pools.js.map +1 -1
- package/build/cjs/server/controllers/settings.js +10 -10
- package/build/cjs/server/controllers/settings.js.map +1 -1
- package/build/cjs/server/controllers/table-column-preset.js +4 -3
- package/build/cjs/server/controllers/table-column-preset.js.map +1 -1
- package/build/cjs/server/controllers/yt-api.js +1 -1
- package/build/cjs/server/controllers/yt-api.js.map +1 -1
- package/build/cjs/server/controllers/yt-proxy-api.js +2 -2
- package/build/cjs/server/controllers/yt-proxy-api.js.map +1 -1
- package/build/cjs/server/index.js +11 -8
- package/build/cjs/server/index.js.map +1 -1
- package/build/cjs/server/middlewares/authorization.d.ts +1 -1
- package/build/cjs/server/middlewares/authorization.js +3 -2
- package/build/cjs/server/middlewares/authorization.js.map +1 -1
- package/build/cjs/server/middlewares/yt-auth.js +3 -2
- package/build/cjs/server/middlewares/yt-auth.js.map +1 -1
- package/build/cjs/server/routes.js +26 -25
- package/build/cjs/server/routes.js.map +1 -1
- package/build/cjs/server/utils/index.d.ts +1 -1
- package/build/cjs/server/utils/index.js +12 -4
- package/build/cjs/server/utils/index.js.map +1 -1
- package/build/cjs/shared/yt-types.d.ts +1 -0
- package/build/cjs/ui/common/utils/settings-remote-provider.d.ts +5 -5
- package/build/cjs/ui/common/utils/settings-remote-provider.js +42 -16
- package/build/cjs/ui/common/utils/settings-remote-provider.js.map +1 -1
- package/build/cjs/ui/components/ElementsTable/ElementsTable.d.ts +1 -1
- package/build/cjs/ui/components/Login/ChangePasswordFormPage/ChangePasswordFormPage.d.ts +2 -1
- package/build/cjs/ui/components/Login/ChangePasswordFormPage/ChangePasswordFormPage.js +11 -6
- package/build/cjs/ui/components/Login/ChangePasswordFormPage/ChangePasswordFormPage.js.map +1 -1
- package/build/cjs/ui/components/Login/LoginFormPage/LoginFormPage.js +7 -4
- package/build/cjs/ui/components/Login/LoginFormPage/LoginFormPage.js.map +1 -1
- package/build/cjs/ui/config/ui-settings.d.ts +1 -0
- package/build/cjs/ui/config/ui-settings.js +3 -2
- package/build/cjs/ui/config/ui-settings.js.map +1 -1
- package/build/cjs/ui/constants/index.d.ts +7 -0
- package/build/cjs/ui/constants/index.js +3 -1
- package/build/cjs/ui/constants/index.js.map +1 -1
- package/build/cjs/ui/containers/App/App.js +4 -3
- package/build/cjs/ui/containers/App/App.js.map +1 -1
- package/build/cjs/ui/containers/AppNavigation/AppNavigationComponent.js +39 -22
- package/build/cjs/ui/containers/AppNavigation/AppNavigationComponent.js.map +1 -1
- package/build/cjs/ui/containers/ClusterPage/ClusterPage.d.ts +3 -1
- package/build/cjs/ui/containers/ClusterPage/ClusterPage.js +3 -1
- package/build/cjs/ui/containers/ClusterPage/ClusterPage.js.map +1 -1
- package/build/cjs/ui/containers/ClustersMenu/ClusterMenuHeader.css +5 -0
- package/build/cjs/ui/containers/ClustersMenu/ClusterMenuHeader.css.map +1 -1
- package/build/cjs/ui/containers/ClustersMenu/ClustersMenuBody.d.ts +3 -1
- package/build/cjs/ui/containers/ClustersMenu/ClustersMenuBody.js +11 -3
- package/build/cjs/ui/containers/ClustersMenu/ClustersMenuBody.js.map +1 -1
- package/build/cjs/ui/containers/ClustersMenu/ClustersMenuHeader.d.ts +4 -4
- package/build/cjs/ui/containers/ClustersMenu/ClustersMenuHeader.js.map +1 -1
- package/build/cjs/ui/containers/MaintenancePage/HandleRedirect.js.map +1 -1
- package/build/cjs/ui/entries/main.js +4 -1
- package/build/cjs/ui/entries/main.js.map +1 -1
- package/build/cjs/ui/pages/operations/selectors.d.ts +5 -0
- package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.d.ts +20 -0
- package/build/cjs/ui/pages/query-tracker/module/query/selectors.d.ts +5 -0
- package/build/cjs/ui/pages/query-tracker/module/settings/selector.d.ts +5 -0
- package/build/cjs/ui/pages/system/Chunks/Chunks.d.ts +1 -1
- package/build/cjs/ui/store/actions/cluster-params.d.ts +1 -0
- package/build/cjs/ui/store/actions/cluster-params.js +13 -0
- package/build/cjs/ui/store/actions/cluster-params.js.map +1 -1
- package/build/cjs/ui/store/actions/clusters-menu.d.ts +1 -0
- package/build/cjs/ui/store/actions/clusters-menu.js +22 -2
- package/build/cjs/ui/store/actions/clusters-menu.js.map +1 -1
- package/build/cjs/ui/store/actions/global/index.d.ts +3 -1
- package/build/cjs/ui/store/actions/global/index.js +19 -4
- package/build/cjs/ui/store/actions/global/index.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/content/table/columns-preset.d.ts +1 -1
- package/build/cjs/ui/store/actions/navigation/content/table/columns-preset.js +6 -4
- package/build/cjs/ui/store/actions/navigation/content/table/columns-preset.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/content/table/table.js +2 -1
- package/build/cjs/ui/store/actions/navigation/content/table/table.js.map +1 -1
- package/build/cjs/ui/store/actions/settings/index.js +25 -19
- package/build/cjs/ui/store/actions/settings/index.js.map +1 -1
- package/build/cjs/ui/store/reducers/accounts/usage/index.d.ts +1 -1
- package/build/cjs/ui/store/reducers/clusters-menu/clusters-menu.d.ts +4 -0
- package/build/cjs/ui/store/reducers/clusters-menu/clusters-menu.js +8 -0
- package/build/cjs/ui/store/reducers/clusters-menu/clusters-menu.js.map +1 -1
- package/build/cjs/ui/store/reducers/index.d.ts +5 -0
- package/build/cjs/ui/store/reducers/index.js.map +1 -1
- package/build/cjs/ui/store/reducers/settings.js +1 -1
- package/build/cjs/ui/store/reducers/settings.js.map +1 -1
- package/build/cjs/ui/store/selectors/accounts/account-usage.d.ts +40 -0
- package/build/cjs/ui/store/selectors/accounts/accounts-ts.d.ts +40 -0
- package/build/cjs/ui/store/selectors/chaos_cell_bundles/index.d.ts +55 -0
- package/build/cjs/ui/store/selectors/chyt/index.d.ts +35 -0
- package/build/cjs/ui/store/selectors/components/node/memory.d.ts +35 -0
- package/build/cjs/ui/store/selectors/components/node-maintenance-modal.d.ts +15 -0
- package/build/cjs/ui/store/selectors/components/nodes/node-card.d.ts +5 -0
- package/build/cjs/ui/store/selectors/components/nodes/nodes/data.d.ts +10 -0
- package/build/cjs/ui/store/selectors/components/nodes/nodes/predicates.d.ts +30 -0
- package/build/cjs/ui/store/selectors/components/versions/versions_v2-ts.d.ts +10 -0
- package/build/cjs/ui/store/selectors/components/versions/versions_v2.d.ts +25 -0
- package/build/cjs/ui/store/selectors/global/index.d.ts +912 -0
- package/build/cjs/ui/store/selectors/global/index.js +10 -1
- package/build/cjs/ui/store/selectors/global/index.js.map +1 -1
- package/build/cjs/ui/store/selectors/global/supported-features.d.ts +30 -0
- package/build/cjs/ui/store/selectors/modals/errors.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/content/document.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/content/replicated-table.d.ts +15 -0
- package/build/cjs/ui/store/selectors/navigation/content/table-mount-config.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/content/table-ts.d.ts +20 -0
- package/build/cjs/ui/store/selectors/navigation/content/table.d.ts +35 -0
- package/build/cjs/ui/store/selectors/navigation/modals/attributes-editor.d.ts +15 -0
- package/build/cjs/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/navigation.d.ts +10 -0
- package/build/cjs/ui/store/selectors/navigation/tabs/access-log.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/tabs/annotation.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/tabs/consumer.d.ts +5 -0
- package/build/cjs/ui/store/selectors/navigation/tabs/locks.d.ts +10 -0
- package/build/cjs/ui/store/selectors/navigation/tabs/queue.d.ts +10 -0
- package/build/cjs/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +5 -0
- package/build/cjs/ui/store/selectors/operations/index.d.ts +60 -0
- package/build/cjs/ui/store/selectors/operations/jobs-monitor.d.ts +20 -0
- package/build/cjs/ui/store/selectors/operations/operation.d.ts +60 -0
- package/build/cjs/ui/store/selectors/operations/operations-list.d.ts +15 -0
- package/build/cjs/ui/store/selectors/operations/statistics-v2.d.ts +40 -0
- package/build/cjs/ui/store/selectors/scheduling/attributes-to-filter.d.ts +5 -0
- package/build/cjs/ui/store/selectors/scheduling/create-pool-dialog.d.ts +5 -0
- package/build/cjs/ui/store/selectors/scheduling/expanded-pools.d.ts +5 -0
- package/build/cjs/ui/store/selectors/scheduling/index.d.ts +5 -0
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.d.ts +15 -0
- package/build/cjs/ui/store/selectors/scheduling/scheduling-ts.d.ts +30 -0
- package/build/cjs/ui/store/selectors/scheduling/scheduling.d.ts +100 -0
- package/build/cjs/ui/store/selectors/tablet_cell_bundles/index.d.ts +75 -0
- package/build/cjs/ui/store/selectors/thor/support.d.ts +25 -0
- package/build/esm/@types/core.d.ts +7 -7
- package/build/esm/server/components/layout-config.js +4 -3
- package/build/esm/server/components/layout-config.js.map +1 -1
- package/build/esm/server/components/requestsSetup.js +12 -5
- package/build/esm/server/components/requestsSetup.js.map +1 -1
- package/build/esm/server/components/settings.d.ts +10 -5
- package/build/esm/server/components/settings.js +33 -22
- package/build/esm/server/components/settings.js.map +1 -1
- package/build/esm/server/components/table.d.ts +3 -3
- package/build/esm/server/components/table.js +10 -10
- package/build/esm/server/components/table.js.map +1 -1
- package/build/esm/server/components/yt-auth.d.ts +0 -2
- package/build/esm/server/components/yt-auth.js +6 -11
- package/build/esm/server/components/yt-auth.js.map +1 -1
- package/build/esm/server/configs/common.js +4 -14
- package/build/esm/server/configs/common.js.map +1 -1
- package/build/esm/server/configs/local.js +0 -5
- package/build/esm/server/configs/local.js.map +1 -1
- package/build/esm/server/controllers/chyt-api.js +1 -1
- package/build/esm/server/controllers/chyt-api.js.map +1 -1
- package/build/esm/server/controllers/cluster-info.js +3 -3
- package/build/esm/server/controllers/cluster-info.js.map +1 -1
- package/build/esm/server/controllers/cluster-params.js +1 -1
- package/build/esm/server/controllers/cluster-params.js.map +1 -1
- package/build/esm/server/controllers/clusters.d.ts +1 -0
- package/build/esm/server/controllers/clusters.js +23 -0
- package/build/esm/server/controllers/clusters.js.map +1 -1
- package/build/esm/server/controllers/home.js +32 -28
- package/build/esm/server/controllers/home.js.map +1 -1
- package/build/esm/server/controllers/login.js +35 -21
- package/build/esm/server/controllers/login.js.map +1 -1
- package/build/esm/server/controllers/odin-proxy-api.js +1 -1
- package/build/esm/server/controllers/odin-proxy-api.js.map +1 -1
- package/build/esm/server/controllers/scheduling-pools.js +3 -3
- package/build/esm/server/controllers/scheduling-pools.js.map +1 -1
- package/build/esm/server/controllers/settings.js +26 -15
- package/build/esm/server/controllers/settings.js.map +1 -1
- package/build/esm/server/controllers/table-column-preset.js +15 -14
- package/build/esm/server/controllers/table-column-preset.js.map +1 -1
- package/build/esm/server/controllers/yt-api.js +1 -1
- package/build/esm/server/controllers/yt-api.js.map +1 -1
- package/build/esm/server/controllers/yt-proxy-api.js +3 -3
- package/build/esm/server/controllers/yt-proxy-api.js.map +1 -1
- package/build/esm/server/index.js +12 -8
- package/build/esm/server/index.js.map +1 -1
- package/build/esm/server/middlewares/authorization.d.ts +1 -1
- package/build/esm/server/middlewares/authorization.js +21 -16
- package/build/esm/server/middlewares/authorization.js.map +1 -1
- package/build/esm/server/middlewares/yt-auth.js +8 -7
- package/build/esm/server/middlewares/yt-auth.js.map +1 -1
- package/build/esm/server/routes.js +29 -26
- package/build/esm/server/routes.js.map +1 -1
- package/build/esm/server/utils/index.d.ts +1 -1
- package/build/esm/server/utils/index.js +12 -6
- package/build/esm/server/utils/index.js.map +1 -1
- package/build/esm/shared/yt-types.d.ts +1 -0
- package/build/esm/ui/common/utils/settings-remote-provider.d.ts +5 -5
- package/build/esm/ui/common/utils/settings-remote-provider.js +42 -16
- package/build/esm/ui/common/utils/settings-remote-provider.js.map +1 -1
- package/build/esm/ui/components/ElementsTable/ElementsTable.d.ts +1 -1
- package/build/esm/ui/components/Login/ChangePasswordFormPage/ChangePasswordFormPage.d.ts +2 -1
- package/build/esm/ui/components/Login/ChangePasswordFormPage/ChangePasswordFormPage.js +11 -6
- package/build/esm/ui/components/Login/ChangePasswordFormPage/ChangePasswordFormPage.js.map +1 -1
- package/build/esm/ui/components/Login/LoginFormPage/LoginFormPage.js +8 -5
- package/build/esm/ui/components/Login/LoginFormPage/LoginFormPage.js.map +1 -1
- package/build/esm/ui/config/ui-settings.d.ts +1 -0
- package/build/esm/ui/config/ui-settings.js +2 -1
- package/build/esm/ui/config/ui-settings.js.map +1 -1
- package/build/esm/ui/constants/index.d.ts +7 -0
- package/build/esm/ui/constants/index.js +1 -0
- package/build/esm/ui/constants/index.js.map +1 -1
- package/build/esm/ui/containers/App/App.js +4 -3
- package/build/esm/ui/containers/App/App.js.map +1 -1
- package/build/esm/ui/containers/AppNavigation/AppNavigationComponent.js +39 -22
- package/build/esm/ui/containers/AppNavigation/AppNavigationComponent.js.map +1 -1
- package/build/esm/ui/containers/ClusterPage/ClusterPage.d.ts +3 -1
- package/build/esm/ui/containers/ClusterPage/ClusterPage.js +4 -2
- package/build/esm/ui/containers/ClusterPage/ClusterPage.js.map +1 -1
- package/build/esm/ui/containers/ClustersMenu/ClusterMenuHeader.css +5 -0
- package/build/esm/ui/containers/ClustersMenu/ClusterMenuHeader.css.map +1 -1
- package/build/esm/ui/containers/ClustersMenu/ClusterMenuHeader.scss +6 -0
- package/build/esm/ui/containers/ClustersMenu/ClustersMenuBody.d.ts +3 -1
- package/build/esm/ui/containers/ClustersMenu/ClustersMenuBody.js +12 -4
- package/build/esm/ui/containers/ClustersMenu/ClustersMenuBody.js.map +1 -1
- package/build/esm/ui/containers/ClustersMenu/ClustersMenuHeader.d.ts +4 -4
- package/build/esm/ui/containers/ClustersMenu/ClustersMenuHeader.js.map +1 -1
- package/build/esm/ui/containers/MaintenancePage/HandleRedirect.js.map +1 -1
- package/build/esm/ui/entries/main.js +4 -1
- package/build/esm/ui/entries/main.js.map +1 -1
- package/build/esm/ui/pages/operations/selectors.d.ts +5 -0
- package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.d.ts +20 -0
- package/build/esm/ui/pages/query-tracker/module/query/selectors.d.ts +5 -0
- package/build/esm/ui/pages/query-tracker/module/settings/selector.d.ts +5 -0
- package/build/esm/ui/pages/system/Chunks/Chunks.d.ts +1 -1
- package/build/esm/ui/store/actions/cluster-params.d.ts +1 -0
- package/build/esm/ui/store/actions/cluster-params.js +12 -0
- package/build/esm/ui/store/actions/cluster-params.js.map +1 -1
- package/build/esm/ui/store/actions/clusters-menu.d.ts +1 -0
- package/build/esm/ui/store/actions/clusters-menu.js +22 -3
- package/build/esm/ui/store/actions/clusters-menu.js.map +1 -1
- package/build/esm/ui/store/actions/global/index.d.ts +3 -1
- package/build/esm/ui/store/actions/global/index.js +19 -4
- package/build/esm/ui/store/actions/global/index.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/content/table/columns-preset.d.ts +1 -1
- package/build/esm/ui/store/actions/navigation/content/table/columns-preset.js +6 -4
- package/build/esm/ui/store/actions/navigation/content/table/columns-preset.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/content/table/table.js +2 -1
- package/build/esm/ui/store/actions/navigation/content/table/table.js.map +1 -1
- package/build/esm/ui/store/actions/settings/index.js +25 -19
- package/build/esm/ui/store/actions/settings/index.js.map +1 -1
- package/build/esm/ui/store/reducers/accounts/usage/index.d.ts +1 -1
- package/build/esm/ui/store/reducers/clusters-menu/clusters-menu.d.ts +4 -0
- package/build/esm/ui/store/reducers/clusters-menu/clusters-menu.js +9 -1
- package/build/esm/ui/store/reducers/clusters-menu/clusters-menu.js.map +1 -1
- package/build/esm/ui/store/reducers/index.d.ts +5 -0
- package/build/esm/ui/store/reducers/index.js.map +1 -1
- package/build/esm/ui/store/reducers/settings.js +1 -1
- package/build/esm/ui/store/reducers/settings.js.map +1 -1
- package/build/esm/ui/store/selectors/accounts/account-usage.d.ts +40 -0
- package/build/esm/ui/store/selectors/accounts/accounts-ts.d.ts +40 -0
- package/build/esm/ui/store/selectors/chaos_cell_bundles/index.d.ts +55 -0
- package/build/esm/ui/store/selectors/chyt/index.d.ts +35 -0
- package/build/esm/ui/store/selectors/components/node/memory.d.ts +35 -0
- package/build/esm/ui/store/selectors/components/node-maintenance-modal.d.ts +15 -0
- package/build/esm/ui/store/selectors/components/nodes/node-card.d.ts +5 -0
- package/build/esm/ui/store/selectors/components/nodes/nodes/data.d.ts +10 -0
- package/build/esm/ui/store/selectors/components/nodes/nodes/predicates.d.ts +30 -0
- package/build/esm/ui/store/selectors/components/versions/versions_v2-ts.d.ts +10 -0
- package/build/esm/ui/store/selectors/components/versions/versions_v2.d.ts +25 -0
- package/build/esm/ui/store/selectors/global/index.d.ts +912 -0
- package/build/esm/ui/store/selectors/global/index.js +10 -1
- package/build/esm/ui/store/selectors/global/index.js.map +1 -1
- package/build/esm/ui/store/selectors/global/supported-features.d.ts +30 -0
- package/build/esm/ui/store/selectors/modals/errors.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/content/document.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/content/replicated-table.d.ts +15 -0
- package/build/esm/ui/store/selectors/navigation/content/table-mount-config.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/content/table-ts.d.ts +20 -0
- package/build/esm/ui/store/selectors/navigation/content/table.d.ts +35 -0
- package/build/esm/ui/store/selectors/navigation/modals/attributes-editor.d.ts +15 -0
- package/build/esm/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/navigation.d.ts +10 -0
- package/build/esm/ui/store/selectors/navigation/tabs/access-log.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/tabs/annotation.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/tabs/consumer.d.ts +5 -0
- package/build/esm/ui/store/selectors/navigation/tabs/locks.d.ts +10 -0
- package/build/esm/ui/store/selectors/navigation/tabs/queue.d.ts +10 -0
- package/build/esm/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +5 -0
- package/build/esm/ui/store/selectors/operations/index.d.ts +60 -0
- package/build/esm/ui/store/selectors/operations/jobs-monitor.d.ts +20 -0
- package/build/esm/ui/store/selectors/operations/operation.d.ts +60 -0
- package/build/esm/ui/store/selectors/operations/operations-list.d.ts +15 -0
- package/build/esm/ui/store/selectors/operations/statistics-v2.d.ts +40 -0
- package/build/esm/ui/store/selectors/scheduling/attributes-to-filter.d.ts +5 -0
- package/build/esm/ui/store/selectors/scheduling/create-pool-dialog.d.ts +5 -0
- package/build/esm/ui/store/selectors/scheduling/expanded-pools.d.ts +5 -0
- package/build/esm/ui/store/selectors/scheduling/index.d.ts +5 -0
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.d.ts +15 -0
- package/build/esm/ui/store/selectors/scheduling/scheduling-ts.d.ts +30 -0
- package/build/esm/ui/store/selectors/scheduling/scheduling.d.ts +100 -0
- package/build/esm/ui/store/selectors/tablet_cell_bundles/index.d.ts +75 -0
- package/build/esm/ui/store/selectors/thor/support.d.ts +25 -0
- package/dist/public/build/assets-manifest.json +12 -12
- package/dist/public/build/css/main.8a4cd357.css +2 -0
- package/dist/public/build/css/main.8a4cd357.css.map +1 -0
- package/dist/public/build/js/{861.9703a31c.chunk.js → 861.a0939319.chunk.js} +2 -2
- package/dist/public/build/js/861.a0939319.chunk.js.map +1 -0
- package/dist/public/build/js/main.c39cff0d.js +3 -0
- package/dist/public/build/js/{main.5b132a95.js.map → main.c39cff0d.js.map} +1 -1
- package/dist/public/build/js/runtime.0ac0f2e8.js +2 -0
- package/dist/public/build/js/{runtime.a87a1f88.js.map → runtime.0ac0f2e8.js.map} +1 -1
- package/dist/public/build/manifest.json +8 -8
- package/dist/server/components/layout-config.js +3 -3
- package/dist/server/components/requestsSetup.js +13 -5
- package/dist/server/components/settings.d.ts +10 -5
- package/dist/server/components/settings.js +24 -23
- package/dist/server/components/table.d.ts +3 -3
- package/dist/server/components/table.js +4 -4
- package/dist/server/components/yt-auth.d.ts +0 -2
- package/dist/server/components/yt-auth.js +5 -14
- package/dist/server/configs/common.js +5 -13
- package/dist/server/configs/local.js +0 -5
- package/dist/server/controllers/chyt-api.js +1 -1
- package/dist/server/controllers/cluster-info.js +2 -2
- package/dist/server/controllers/cluster-params.js +1 -1
- package/dist/server/controllers/clusters.d.ts +1 -0
- package/dist/server/controllers/clusters.js +24 -1
- package/dist/server/controllers/home.js +10 -6
- package/dist/server/controllers/login.js +18 -5
- package/dist/server/controllers/odin-proxy-api.js +1 -1
- package/dist/server/controllers/scheduling-pools.js +2 -2
- package/dist/server/controllers/settings.js +10 -10
- package/dist/server/controllers/table-column-preset.js +4 -3
- package/dist/server/controllers/yt-api.js +1 -1
- package/dist/server/controllers/yt-proxy-api.js +2 -2
- package/dist/server/index.js +11 -8
- package/dist/server/middlewares/authorization.d.ts +1 -1
- package/dist/server/middlewares/authorization.js +3 -2
- package/dist/server/middlewares/yt-auth.js +3 -2
- package/dist/server/routes.js +26 -25
- package/dist/server/utils/index.d.ts +1 -1
- package/dist/server/utils/index.js +12 -4
- package/package.json +2 -2
- package/dist/public/build/css/main.4aa70d7b.css +0 -2
- package/dist/public/build/css/main.4aa70d7b.css.map +0 -1
- package/dist/public/build/js/861.9703a31c.chunk.js.map +0 -1
- package/dist/public/build/js/main.5b132a95.js +0 -3
- package/dist/public/build/js/runtime.a87a1f88.js +0 -2
- /package/dist/public/build/js/{main.5b132a95.js.LICENSE.txt → main.c39cff0d.js.LICENSE.txt} +0 -0
@@ -9,6 +9,10 @@ export declare const getQueriesList: ((state: Omit<import("redux").CombinedState
|
|
9
9
|
aclFilters: import("../../../../store/reducers/acl/acl-filters").AclFiltersState;
|
10
10
|
actions: never;
|
11
11
|
clustersMenu: {
|
12
|
+
clusters: any;
|
13
|
+
viewMode: string;
|
14
|
+
clusterFilter: string;
|
15
|
+
} | {
|
12
16
|
viewMode: any;
|
13
17
|
clusters: {};
|
14
18
|
clusterFilter: string;
|
@@ -834,6 +838,7 @@ export declare const getQueriesList: ((state: Omit<import("redux").CombinedState
|
|
834
838
|
rootPagesCluster?: string | undefined;
|
835
839
|
asideHeaderWidth: number;
|
836
840
|
allowedExperimentalPages: string[];
|
841
|
+
ytAuthCluster?: string | undefined;
|
837
842
|
};
|
838
843
|
}) => import("../api").QueryItem[]) & import("reselect").OutputSelectorFields<(args_0: Record<string, import("../api").QueryItem>) => import("../api").QueryItem[], {
|
839
844
|
clearCache: () => void;
|
@@ -852,6 +857,10 @@ export declare const getQueriesListFilter: ((state: Omit<import("redux").Combine
|
|
852
857
|
aclFilters: import("../../../../store/reducers/acl/acl-filters").AclFiltersState;
|
853
858
|
actions: never;
|
854
859
|
clustersMenu: {
|
860
|
+
clusters: any;
|
861
|
+
viewMode: string;
|
862
|
+
clusterFilter: string;
|
863
|
+
} | {
|
855
864
|
viewMode: any;
|
856
865
|
clusters: {};
|
857
866
|
clusterFilter: string;
|
@@ -1677,6 +1686,7 @@ export declare const getQueriesListFilter: ((state: Omit<import("redux").Combine
|
|
1677
1686
|
rootPagesCluster?: string | undefined;
|
1678
1687
|
asideHeaderWidth: number;
|
1679
1688
|
allowedExperimentalPages: string[];
|
1689
|
+
ytAuthCluster?: string | undefined;
|
1680
1690
|
};
|
1681
1691
|
}) => import("./types").QueriesListFilter) & import("reselect").OutputSelectorFields<(args_0: Partial<Record<import("./types").QueriesListMode, {
|
1682
1692
|
filter: import("./types").QueriesListFilter;
|
@@ -1691,6 +1701,10 @@ export declare const getQueriesListCursor: ((state: Omit<import("redux").Combine
|
|
1691
1701
|
aclFilters: import("../../../../store/reducers/acl/acl-filters").AclFiltersState;
|
1692
1702
|
actions: never;
|
1693
1703
|
clustersMenu: {
|
1704
|
+
clusters: any;
|
1705
|
+
viewMode: string;
|
1706
|
+
clusterFilter: string;
|
1707
|
+
} | {
|
1694
1708
|
viewMode: any;
|
1695
1709
|
clusters: {};
|
1696
1710
|
clusterFilter: string;
|
@@ -2516,6 +2530,7 @@ export declare const getQueriesListCursor: ((state: Omit<import("redux").Combine
|
|
2516
2530
|
rootPagesCluster?: string | undefined;
|
2517
2531
|
asideHeaderWidth: number;
|
2518
2532
|
allowedExperimentalPages: string[];
|
2533
|
+
ytAuthCluster?: string | undefined;
|
2519
2534
|
};
|
2520
2535
|
}) => import("./types").QueriesListCursor | undefined) & import("reselect").OutputSelectorFields<(args_0: Partial<Record<import("./types").QueriesListMode, {
|
2521
2536
|
filter: import("./types").QueriesListFilter;
|
@@ -2530,6 +2545,10 @@ export declare const getUncompletedItems: ((state: Omit<import("redux").Combined
|
|
2530
2545
|
aclFilters: import("../../../../store/reducers/acl/acl-filters").AclFiltersState;
|
2531
2546
|
actions: never;
|
2532
2547
|
clustersMenu: {
|
2548
|
+
clusters: any;
|
2549
|
+
viewMode: string;
|
2550
|
+
clusterFilter: string;
|
2551
|
+
} | {
|
2533
2552
|
viewMode: any;
|
2534
2553
|
clusters: {};
|
2535
2554
|
clusterFilter: string;
|
@@ -3355,6 +3374,7 @@ export declare const getUncompletedItems: ((state: Omit<import("redux").Combined
|
|
3355
3374
|
rootPagesCluster?: string | undefined;
|
3356
3375
|
asideHeaderWidth: number;
|
3357
3376
|
allowedExperimentalPages: string[];
|
3377
|
+
ytAuthCluster?: string | undefined;
|
3358
3378
|
};
|
3359
3379
|
}) => import("../api").QueryItem[]) & import("reselect").OutputSelectorFields<(args_0: import("../api").QueryItem[]) => import("../api").QueryItem[], {
|
3360
3380
|
clearCache: () => void;
|
@@ -20,6 +20,10 @@ export declare const isQueryDraftEditted: ((state: Omit<import("redux").Combined
|
|
20
20
|
aclFilters: import("../../../../store/reducers/acl/acl-filters").AclFiltersState;
|
21
21
|
actions: never;
|
22
22
|
clustersMenu: {
|
23
|
+
clusters: any;
|
24
|
+
viewMode: string;
|
25
|
+
clusterFilter: string;
|
26
|
+
} | {
|
23
27
|
viewMode: any;
|
24
28
|
clusters: {};
|
25
29
|
clusterFilter: string;
|
@@ -845,6 +849,7 @@ export declare const isQueryDraftEditted: ((state: Omit<import("redux").Combined
|
|
845
849
|
rootPagesCluster?: string | undefined;
|
846
850
|
asideHeaderWidth: number;
|
847
851
|
allowedExperimentalPages: string[];
|
852
|
+
ytAuthCluster?: string | undefined;
|
848
853
|
};
|
849
854
|
}) => boolean) & import("reselect").OutputSelectorFields<(args_0: import("../api").QueryItem | undefined, args_1: import("../api").DraftQuery) => boolean, {
|
850
855
|
clearCache: () => void;
|
@@ -3,6 +3,10 @@ export declare const getSettingQueryTrackerQueriesListSidebarVisibilityMode: ((s
|
|
3
3
|
aclFilters: import("../../../../store/reducers/acl/acl-filters").AclFiltersState;
|
4
4
|
actions: never;
|
5
5
|
clustersMenu: {
|
6
|
+
clusters: any;
|
7
|
+
viewMode: string;
|
8
|
+
clusterFilter: string;
|
9
|
+
} | {
|
6
10
|
viewMode: any;
|
7
11
|
clusters: {};
|
8
12
|
clusterFilter: string;
|
@@ -828,6 +832,7 @@ export declare const getSettingQueryTrackerQueriesListSidebarVisibilityMode: ((s
|
|
828
832
|
rootPagesCluster?: string | undefined;
|
829
833
|
asideHeaderWidth: number;
|
830
834
|
allowedExperimentalPages: string[];
|
835
|
+
ytAuthCluster?: string | undefined;
|
831
836
|
};
|
832
837
|
}) => boolean) & import("reselect").OutputSelectorFields<(args_0: import("../../../../../shared/constants/settings-types").Settings) => boolean, {
|
833
838
|
clearCache: () => void;
|
@@ -9,7 +9,7 @@ declare const _default: import("react-redux").ConnectedComponent<typeof Chunks,
|
|
9
9
|
field: PropTypes.Requireable<string>;
|
10
10
|
asc: PropTypes.Requireable<boolean>;
|
11
11
|
}>>;
|
12
|
-
}>, "
|
12
|
+
}>, "sortState" | "cells" | "replication" | "types" | "refresh" | "sealer" | "requisitionUpdate">>;
|
13
13
|
export default _default;
|
14
14
|
declare class Chunks extends React.Component<any, any, any> {
|
15
15
|
static _formatChunkName(name: any): any;
|
@@ -4,4 +4,5 @@ import { FIX_MY_TYPE } from '../../../@types/types';
|
|
4
4
|
type GlobalThunkAction<T = unknown> = ThunkAction<T, RootState, any, FIX_MY_TYPE>;
|
5
5
|
export declare function initClusterParams(cluster: string): GlobalThunkAction<Promise<void>>;
|
6
6
|
export declare function updateCluster(cluster: string, onUpdateEnd: () => Promise<void>): GlobalThunkAction;
|
7
|
+
export declare function unmountCluster(): GlobalThunkAction;
|
7
8
|
export {};
|
@@ -192,4 +192,16 @@ export function updateCluster(cluster, onUpdateEnd) {
|
|
192
192
|
})["catch"](dispatchError);
|
193
193
|
};
|
194
194
|
}
|
195
|
+
export function unmountCluster() {
|
196
|
+
return function (dispatch) {
|
197
|
+
YT.parameters.version = '';
|
198
|
+
YT.cluster = '';
|
199
|
+
dispatch({
|
200
|
+
type: GLOBAL_PARTIAL,
|
201
|
+
data: {
|
202
|
+
cluster: undefined
|
203
|
+
}
|
204
|
+
});
|
205
|
+
};
|
206
|
+
}
|
195
207
|
// #sourceMappingURL=cluster-params.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["axios","yt","Cookies","ypath","checkIsDeveloper","INIT_CLUSTER_PARAMS","LOAD_ERROR","UPDATE_CLUSTER","getCurrentUserName","getXsrfCookieName","RESET_STORE_BEFORE_CLUSTER_CHANGE","shouldUsePreserveState","rumLogError","Toaster","RumWrapper","YTApiId","RumMeasureTypes","getBatchError","wrapApiPromiseByToaster","YT","GLOBAL_PARTIAL","initYTApiClusterParams","handleUiConfigError","path","error","type","level","message","concat","block","toast","prepareClusterUiConfig","uiConfig","uiDevConfig","code","codes","NODE_DOES_NOT_EXIST","add","name","autoHiding","title","content","output","initClusterParams","cluster","dispatch","getState","REQUEST","login","rumId","CLUSTER_PARAMS","fetch","clusterParams","request","url","method","skipSuccessToast","toasterName","errorTitle","errorContent","then","_ref","data","mediumList","schedulerVersion","masterVersion","_prepareClusterUiConf","_prepareClusterUiConf2","_slicedToArray","uiConfigOutput","uiDevConfigOutput","SUCCESS","getValue","isDeveloper","clusterUiConfig","clusterParamsIsDeveloper","undefined","Object","assign","e","console","FAILURE","count","updateCluster","onUpdateEnd","dispatchError","_error$response","Error","response","ui_clusterInfo","_ref2","token","tokenError","version","versionError","errorType","CONNECTION","parameters","csrf_token","remove","AUTHENTICATION","set","FINAL_SUCCESS","Promise","resolve"],"sources":["cluster-params.ts"],"sourcesContent":["import axios, {AxiosResponse} from 'axios';\n\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport Cookies from 'js-cookie';\n\nimport ypath from '../../common/thor/ypath';\nimport {checkIsDeveloper} from '../../../shared/utils/check-permission';\nimport {INIT_CLUSTER_PARAMS, LOAD_ERROR, UPDATE_CLUSTER} from '../../constants/index';\nimport {getCurrentUserName} from '../../store/selectors/global';\nimport {getXsrfCookieName} from '../../utils';\nimport {RESET_STORE_BEFORE_CLUSTER_CHANGE} from '../../constants/utils';\nimport {shouldUsePreserveState} from '../../store/selectors/settings';\nimport {rumLogError} from '../../rum/rum-counter';\nimport {Toaster} from '@gravity-ui/uikit';\nimport {RumWrapper, YTApiId} from '../../rum/rum-wrap-api';\nimport {RumMeasureTypes} from '../../rum/rum-measure-types';\nimport {getBatchError, wrapApiPromiseByToaster} from '../../utils/utils';\nimport {BatchResultsItem} from '../../../shared/yt-types';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../store/reducers';\nimport YT from '../../config/yt-config';\nimport {GLOBAL_PARTIAL} from '../../constants/global';\nimport {FIX_MY_TYPE, YTError} from '../../../@types/types';\nimport {initYTApiClusterParams} from '../../common/yt-api-init';\n\nfunction handleUiConfigError(path: string, error: any, type?: string) {\n rumLogError(\n {\n level: 'warn',\n type,\n message: `${path} cannot be loaded, some ui features might be not available`,\n block: path,\n },\n error,\n );\n}\n\nconst toast = new Toaster();\n\nfunction prepareClusterUiConfig(uiConfig: BatchResultsItem, uiDevConfig: BatchResultsItem) {\n if (uiConfig.error && uiConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config', uiConfig.error);\n toast.add({\n name: 'get-ui_config',\n type: 'error',\n autoHiding: false,\n title: 'Failed to load //sys/@ui_config',\n content:\n 'Some UI features might be not available. ' +\n 'Try to reload the page. ' +\n 'If the problem persists please report it via Bug Reporter.',\n });\n }\n if (uiDevConfig.error && uiDevConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config_dev_overrides', uiDevConfig.error);\n }\n return [uiConfig.output || {}, uiDevConfig.output || {}];\n}\n\ntype GlobalThunkAction<T = unknown> = ThunkAction<T, RootState, any, FIX_MY_TYPE>;\n\nexport function initClusterParams(cluster: string): GlobalThunkAction<Promise<void>> {\n return (dispatch, getState) => {\n initYTApiClusterParams(cluster);\n\n dispatch({\n type: INIT_CLUSTER_PARAMS.REQUEST,\n });\n\n const login = getCurrentUserName(getState());\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return wrapApiPromiseByToaster(\n rumId.fetch(\n YTApiId.clusterParams,\n axios.request({\n url: '/api/cluster-params/' + cluster,\n method: 'GET',\n }),\n ),\n {\n skipSuccessToast: true,\n toasterName: 'cluster_initialization_failure',\n errorTitle: 'Cluster initialization failure',\n errorContent: 'An error occured',\n },\n )\n .then(({data}) => {\n const {mediumList, schedulerVersion, masterVersion, uiConfig, uiDevConfig} = data;\n const error = getBatchError([mediumList], 'Cluster initialization failure');\n if (error) {\n throw error;\n }\n const [uiConfigOutput, uiDevConfigOutput] = prepareClusterUiConfig(\n uiConfig,\n uiDevConfig,\n );\n dispatch({\n type: INIT_CLUSTER_PARAMS.SUCCESS,\n data: {\n cluster,\n mediumList: ypath.getValue(mediumList.output),\n isDeveloper: false,\n clusterUiConfig: uiConfigOutput,\n schedulerVersion: schedulerVersion.output,\n masterVersion: masterVersion.output,\n },\n });\n\n return rumId\n .fetch(\n YTApiId.clusterParamsIsDeveloper,\n checkIsDeveloper(\n login,\n undefined,\n YTApiId[YTApiId.clusterParamsIsDeveloper],\n ),\n )\n .then((isDeveloper) => {\n if (isDeveloper) {\n const clusterUiConfig = isDeveloper\n ? Object.assign({}, uiConfigOutput, uiDevConfigOutput)\n : uiConfigOutput;\n dispatch({type: GLOBAL_PARTIAL, data: {isDeveloper, clusterUiConfig}});\n }\n })\n .catch((e) => {\n console.error('Failed to check if current user is admin', e);\n });\n })\n .catch((e) => {\n dispatch({\n type: INIT_CLUSTER_PARAMS.FAILURE,\n data: e,\n });\n });\n };\n}\n\ninterface ClusterInfoData {\n version?: string;\n versionError?: YTError;\n token?: {\n login: string;\n csrf_token?: string;\n };\n tokenError?: YTError;\n}\n\nlet count = 0;\nexport function updateCluster(\n cluster: string,\n onUpdateEnd: () => Promise<void>,\n): GlobalThunkAction {\n return (dispatch, getState) => {\n const dispatchError = (error: any) => {\n if (error instanceof Error) {\n console.error(error);\n }\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {error: error?.response?.data || error},\n });\n };\n\n dispatch({\n type: UPDATE_CLUSTER.REQUEST,\n });\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return rumId\n .fetch<AxiosResponse<ClusterInfoData>>(\n YTApiId.ui_clusterInfo,\n axios.request({\n url: '/api/cluster-info/' + cluster,\n method: 'GET',\n }),\n )\n .then(({data}) => {\n const {token, tokenError, version, versionError} = data;\n\n if (count++) {\n dispatch({\n type: RESET_STORE_BEFORE_CLUSTER_CHANGE,\n data: {\n shouldUsePreserveState: shouldUsePreserveState(getState()),\n },\n });\n }\n\n if (!version || versionError) {\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {errorType: LOAD_ERROR.CONNECTION, error: versionError},\n });\n } else {\n dispatch({\n type: UPDATE_CLUSTER.SUCCESS,\n data: {version},\n });\n\n YT.parameters.version = version;\n YT.cluster = cluster;\n\n if (!token?.csrf_token || tokenError) {\n Cookies.remove(getXsrfCookieName(cluster));\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {\n errorType: LOAD_ERROR.AUTHENTICATION,\n error: tokenError || new Error('Failed to get CSRF-token'),\n },\n });\n } else {\n const {login, csrf_token} = token;\n YT.parameters.login = login;\n dispatch({type: GLOBAL_PARTIAL, data: {login}});\n Cookies.set(getXsrfCookieName(cluster), csrf_token);\n return onUpdateEnd()\n .then(() => {\n dispatch({\n type: UPDATE_CLUSTER.FINAL_SUCCESS,\n });\n })\n .catch(dispatchError);\n }\n }\n\n return Promise.resolve();\n })\n .catch(dispatchError);\n };\n}\n"],"mappings":";AAAA,OAAOA,KAAK,MAAuB,OAAO;;AAE1C;AACA,OAAOC,EAAE,MAAM,qCAAqC;AACpD,OAAOC,OAAO,MAAM,WAAW;AAE/B,OAAOC,KAAK,MAAM,yBAAyB;AAC3C,SAAQC,gBAAgB,QAAO,wCAAwC;AACvE,SAAQC,mBAAmB,EAAEC,UAAU,EAAEC,cAAc,QAAO,uBAAuB;AACrF,SAAQC,kBAAkB,QAAO,8BAA8B;AAC/D,SAAQC,iBAAiB,QAAO,aAAa;AAC7C,SAAQC,iCAAiC,QAAO,uBAAuB;AACvE,SAAQC,sBAAsB,QAAO,gCAAgC;AACrE,SAAQC,WAAW,QAAO,uBAAuB;AACjD,SAAQC,OAAO,QAAO,mBAAmB;AACzC,SAAQC,UAAU,EAAEC,OAAO,QAAO,wBAAwB;AAC1D,SAAQC,eAAe,QAAO,6BAA6B;AAC3D,SAAQC,aAAa,EAAEC,uBAAuB,QAAO,mBAAmB;AAIxE,OAAOC,EAAE,MAAM,wBAAwB;AACvC,SAAQC,cAAc,QAAO,wBAAwB;AAErD,SAAQC,sBAAsB,QAAO,0BAA0B;AAE/D,SAASC,mBAAmBA,CAACC,IAAY,EAAEC,KAAU,EAAEC,IAAa,EAAE;EAClEb,WAAW,CACP;IACIc,KAAK,EAAE,MAAM;IACbD,IAAI,EAAJA,IAAI;IACJE,OAAO,KAAAC,MAAA,CAAKL,IAAI,+DAA4D;IAC5EM,KAAK,EAAEN;EACX,CAAC,EACDC,KACJ,CAAC;AACL;AAEA,IAAMM,KAAK,GAAG,IAAIjB,OAAO,CAAC,CAAC;AAE3B,SAASkB,sBAAsBA,CAACC,QAA0B,EAAEC,WAA6B,EAAE;EACvF,IAAID,QAAQ,CAACR,KAAK,IAAIQ,QAAQ,CAACR,KAAK,CAACU,IAAI,KAAKjC,EAAE,CAACkC,KAAK,CAACC,mBAAmB,EAAE;IACxEd,mBAAmB,CAAC,kBAAkB,EAAEU,QAAQ,CAACR,KAAK,CAAC;IACvDM,KAAK,CAACO,GAAG,CAAC;MACNC,IAAI,EAAE,eAAe;MACrBb,IAAI,EAAE,OAAO;MACbc,UAAU,EAAE,KAAK;MACjBC,KAAK,EAAE,iCAAiC;MACxCC,OAAO,EACH,2CAA2C,GAC3C,0BAA0B,GAC1B;IACR,CAAC,CAAC;EACN;EACA,IAAIR,WAAW,CAACT,KAAK,IAAIS,WAAW,CAACT,KAAK,CAACU,IAAI,KAAKjC,EAAE,CAACkC,KAAK,CAACC,mBAAmB,EAAE;IAC9Ed,mBAAmB,CAAC,gCAAgC,EAAEW,WAAW,CAACT,KAAK,CAAC;EAC5E;EACA,OAAO,CAACQ,QAAQ,CAACU,MAAM,IAAI,CAAC,CAAC,EAAET,WAAW,CAACS,MAAM,IAAI,CAAC,CAAC,CAAC;AAC5D;AAIA,OAAO,SAASC,iBAAiBA,CAACC,OAAe,EAAoC;EACjF,OAAO,UAACC,QAAQ,EAAEC,QAAQ,EAAK;IAC3BzB,sBAAsB,CAACuB,OAAO,CAAC;IAE/BC,QAAQ,CAAC;MACLpB,IAAI,EAAEpB,mBAAmB,CAAC0C;IAC9B,CAAC,CAAC;IAEF,IAAMC,KAAK,GAAGxC,kBAAkB,CAACsC,QAAQ,CAAC,CAAC,CAAC;IAE5C,IAAMG,KAAK,GAAG,IAAInC,UAAU,CAAC8B,OAAO,EAAE5B,eAAe,CAACkC,cAAc,CAAC;IACrE,OAAOhC,uBAAuB,CAC1B+B,KAAK,CAACE,KAAK,CACPpC,OAAO,CAACqC,aAAa,EACrBpD,KAAK,CAACqD,OAAO,CAAC;MACVC,GAAG,EAAE,sBAAsB,GAAGV,OAAO;MACrCW,MAAM,EAAE;IACZ,CAAC,CACL,CAAC,EACD;MACIC,gBAAgB,EAAE,IAAI;MACtBC,WAAW,EAAE,gCAAgC;MAC7CC,UAAU,EAAE,gCAAgC;MAC5CC,YAAY,EAAE;IAClB,CACJ,CAAC,CACIC,IAAI,CAAC,UAAAC,IAAA,EAAY;MAAA,IAAVC,IAAI,GAAAD,IAAA,CAAJC,IAAI;MACR,IAAOC,UAAU,GAA4DD,IAAI,CAA1EC,UAAU;QAAEC,gBAAgB,GAA0CF,IAAI,CAA9DE,gBAAgB;QAAEC,aAAa,GAA2BH,IAAI,CAA5CG,aAAa;QAAEjC,QAAQ,GAAiB8B,IAAI,CAA7B9B,QAAQ;QAAEC,WAAW,GAAI6B,IAAI,CAAnB7B,WAAW;MACzE,IAAMT,KAAK,GAAGP,aAAa,CAAC,CAAC8C,UAAU,CAAC,EAAE,gCAAgC,CAAC;MAC3E,IAAIvC,KAAK,EAAE;QACP,MAAMA,KAAK;MACf;MACA,IAAA0C,qBAAA,GAA4CnC,sBAAsB,CAC9DC,QAAQ,EACRC,WACJ,CAAC;QAAAkC,sBAAA,GAAAC,cAAA,CAAAF,qBAAA;QAHMG,cAAc,GAAAF,sBAAA;QAAEG,iBAAiB,GAAAH,sBAAA;MAIxCtB,QAAQ,CAAC;QACLpB,IAAI,EAAEpB,mBAAmB,CAACkE,OAAO;QACjCT,IAAI,EAAE;UACFlB,OAAO,EAAPA,OAAO;UACPmB,UAAU,EAAE5D,KAAK,CAACqE,QAAQ,CAACT,UAAU,CAACrB,MAAM,CAAC;UAC7C+B,WAAW,EAAE,KAAK;UAClBC,eAAe,EAAEL,cAAc;UAC/BL,gBAAgB,EAAEA,gBAAgB,CAACtB,MAAM;UACzCuB,aAAa,EAAEA,aAAa,CAACvB;QACjC;MACJ,CAAC,CAAC;MAEF,OAAOO,KAAK,CACPE,KAAK,CACFpC,OAAO,CAAC4D,wBAAwB,EAChCvE,gBAAgB,CACZ4C,KAAK,EACL4B,SAAS,EACT7D,OAAO,CAACA,OAAO,CAAC4D,wBAAwB,CAC5C,CACJ,CAAC,CACAf,IAAI,CAAC,UAACa,WAAW,EAAK;QACnB,IAAIA,WAAW,EAAE;UACb,IAAMC,eAAe,GAAGD,WAAW,GAC7BI,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAET,cAAc,EAAEC,iBAAiB,CAAC,GACpDD,cAAc;UACpBxB,QAAQ,CAAC;YAACpB,IAAI,EAAEL,cAAc;YAAE0C,IAAI,EAAE;cAACW,WAAW,EAAXA,WAAW;cAAEC,eAAe,EAAfA;YAAe;UAAC,CAAC,CAAC;QAC1E;MACJ,CAAC,CAAC,SACI,CAAC,UAACK,CAAC,EAAK;QACVC,OAAO,CAACxD,KAAK,CAAC,0CAA0C,EAAEuD,CAAC,CAAC;MAChE,CAAC,CAAC;IACV,CAAC,CAAC,SACI,CAAC,UAACA,CAAC,EAAK;MACVlC,QAAQ,CAAC;QACLpB,IAAI,EAAEpB,mBAAmB,CAAC4E,OAAO;QACjCnB,IAAI,EAAEiB;MACV,CAAC,CAAC;IACN,CAAC,CAAC;EACV,CAAC;AACL;AAYA,IAAIG,KAAK,GAAG,CAAC;AACb,OAAO,SAASC,aAAaA,CACzBvC,OAAe,EACfwC,WAAgC,EACf;EACjB,OAAO,UAACvC,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAMuC,aAAa,GAAG,SAAhBA,aAAaA,CAAI7D,KAAU,EAAK;MAAA,IAAA8D,eAAA;MAClC,IAAI9D,KAAK,YAAY+D,KAAK,EAAE;QACxBP,OAAO,CAACxD,KAAK,CAACA,KAAK,CAAC;MACxB;MACAqB,QAAQ,CAAC;QACLpB,IAAI,EAAElB,cAAc,CAAC0E,OAAO;QAC5BnB,IAAI,EAAE;UAACtC,KAAK,EAAE,CAAAA,KAAK,aAALA,KAAK,gBAAA8D,eAAA,GAAL9D,KAAK,CAAEgE,QAAQ,cAAAF,eAAA,uBAAfA,eAAA,CAAiBxB,IAAI,KAAItC;QAAK;MAChD,CAAC,CAAC;IACN,CAAC;IAEDqB,QAAQ,CAAC;MACLpB,IAAI,EAAElB,cAAc,CAACwC;IACzB,CAAC,CAAC;IAEF,IAAME,KAAK,GAAG,IAAInC,UAAU,CAAC8B,OAAO,EAAE5B,eAAe,CAACkC,cAAc,CAAC;IACrE,OAAOD,KAAK,CACPE,KAAK,CACFpC,OAAO,CAAC0E,cAAc,EACtBzF,KAAK,CAACqD,OAAO,CAAC;MACVC,GAAG,EAAE,oBAAoB,GAAGV,OAAO;MACnCW,MAAM,EAAE;IACZ,CAAC,CACL,CAAC,CACAK,IAAI,CAAC,UAAA8B,KAAA,EAAY;MAAA,IAAV5B,IAAI,GAAA4B,KAAA,CAAJ5B,IAAI;MACR,IAAO6B,KAAK,GAAuC7B,IAAI,CAAhD6B,KAAK;QAAEC,UAAU,GAA2B9B,IAAI,CAAzC8B,UAAU;QAAEC,OAAO,GAAkB/B,IAAI,CAA7B+B,OAAO;QAAEC,YAAY,GAAIhC,IAAI,CAApBgC,YAAY;MAE/C,IAAIZ,KAAK,EAAE,EAAE;QACTrC,QAAQ,CAAC;UACLpB,IAAI,EAAEf,iCAAiC;UACvCoD,IAAI,EAAE;YACFnD,sBAAsB,EAAEA,sBAAsB,CAACmC,QAAQ,CAAC,CAAC;UAC7D;QACJ,CAAC,CAAC;MACN;MAEA,IAAI,CAAC+C,OAAO,IAAIC,YAAY,EAAE;QAC1BjD,QAAQ,CAAC;UACLpB,IAAI,EAAElB,cAAc,CAAC0E,OAAO;UAC5BnB,IAAI,EAAE;YAACiC,SAAS,EAAEzF,UAAU,CAAC0F,UAAU;YAAExE,KAAK,EAAEsE;UAAY;QAChE,CAAC,CAAC;MACN,CAAC,MAAM;QACHjD,QAAQ,CAAC;UACLpB,IAAI,EAAElB,cAAc,CAACgE,OAAO;UAC5BT,IAAI,EAAE;YAAC+B,OAAO,EAAPA;UAAO;QAClB,CAAC,CAAC;QAEF1E,EAAE,CAAC8E,UAAU,CAACJ,OAAO,GAAGA,OAAO;QAC/B1E,EAAE,CAACyB,OAAO,GAAGA,OAAO;QAEpB,IAAI,EAAC+C,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEO,UAAU,KAAIN,UAAU,EAAE;UAClC1F,OAAO,CAACiG,MAAM,CAAC1F,iBAAiB,CAACmC,OAAO,CAAC,CAAC;UAC1CC,QAAQ,CAAC;YACLpB,IAAI,EAAElB,cAAc,CAAC0E,OAAO;YAC5BnB,IAAI,EAAE;cACFiC,SAAS,EAAEzF,UAAU,CAAC8F,cAAc;cACpC5E,KAAK,EAAEoE,UAAU,IAAI,IAAIL,KAAK,CAAC,0BAA0B;YAC7D;UACJ,CAAC,CAAC;QACN,CAAC,MAAM;UACH,IAAOvC,KAAK,GAAgB2C,KAAK,CAA1B3C,KAAK;YAAEkD,UAAU,GAAIP,KAAK,CAAnBO,UAAU;UACxB/E,EAAE,CAAC8E,UAAU,CAACjD,KAAK,GAAGA,KAAK;UAC3BH,QAAQ,CAAC;YAACpB,IAAI,EAAEL,cAAc;YAAE0C,IAAI,EAAE;cAACd,KAAK,EAALA;YAAK;UAAC,CAAC,CAAC;UAC/C9C,OAAO,CAACmG,GAAG,CAAC5F,iBAAiB,CAACmC,OAAO,CAAC,EAAEsD,UAAU,CAAC;UACnD,OAAOd,WAAW,CAAC,CAAC,CACfxB,IAAI,CAAC,YAAM;YACRf,QAAQ,CAAC;cACLpB,IAAI,EAAElB,cAAc,CAAC+F;YACzB,CAAC,CAAC;UACN,CAAC,CAAC,SACI,CAACjB,aAAa,CAAC;QAC7B;MACJ;MAEA,OAAOkB,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B,CAAC,CAAC,SACI,CAACnB,aAAa,CAAC;EAC7B,CAAC;AACL"}
|
1
|
+
{"version":3,"names":["axios","yt","Cookies","ypath","checkIsDeveloper","INIT_CLUSTER_PARAMS","LOAD_ERROR","UPDATE_CLUSTER","getCurrentUserName","getXsrfCookieName","RESET_STORE_BEFORE_CLUSTER_CHANGE","shouldUsePreserveState","rumLogError","Toaster","RumWrapper","YTApiId","RumMeasureTypes","getBatchError","wrapApiPromiseByToaster","YT","GLOBAL_PARTIAL","initYTApiClusterParams","handleUiConfigError","path","error","type","level","message","concat","block","toast","prepareClusterUiConfig","uiConfig","uiDevConfig","code","codes","NODE_DOES_NOT_EXIST","add","name","autoHiding","title","content","output","initClusterParams","cluster","dispatch","getState","REQUEST","login","rumId","CLUSTER_PARAMS","fetch","clusterParams","request","url","method","skipSuccessToast","toasterName","errorTitle","errorContent","then","_ref","data","mediumList","schedulerVersion","masterVersion","_prepareClusterUiConf","_prepareClusterUiConf2","_slicedToArray","uiConfigOutput","uiDevConfigOutput","SUCCESS","getValue","isDeveloper","clusterUiConfig","clusterParamsIsDeveloper","undefined","Object","assign","e","console","FAILURE","count","updateCluster","onUpdateEnd","dispatchError","_error$response","Error","response","ui_clusterInfo","_ref2","token","tokenError","version","versionError","errorType","CONNECTION","parameters","csrf_token","remove","AUTHENTICATION","set","FINAL_SUCCESS","Promise","resolve","unmountCluster"],"sources":["cluster-params.ts"],"sourcesContent":["import axios, {AxiosResponse} from 'axios';\n\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport Cookies from 'js-cookie';\n\nimport ypath from '../../common/thor/ypath';\nimport {checkIsDeveloper} from '../../../shared/utils/check-permission';\nimport {INIT_CLUSTER_PARAMS, LOAD_ERROR, UPDATE_CLUSTER} from '../../constants/index';\nimport {getCurrentUserName} from '../../store/selectors/global';\nimport {getXsrfCookieName} from '../../utils';\nimport {RESET_STORE_BEFORE_CLUSTER_CHANGE} from '../../constants/utils';\nimport {shouldUsePreserveState} from '../../store/selectors/settings';\nimport {rumLogError} from '../../rum/rum-counter';\nimport {Toaster} from '@gravity-ui/uikit';\nimport {RumWrapper, YTApiId} from '../../rum/rum-wrap-api';\nimport {RumMeasureTypes} from '../../rum/rum-measure-types';\nimport {getBatchError, wrapApiPromiseByToaster} from '../../utils/utils';\nimport {BatchResultsItem} from '../../../shared/yt-types';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../store/reducers';\nimport YT from '../../config/yt-config';\nimport {GLOBAL_PARTIAL} from '../../constants/global';\nimport {FIX_MY_TYPE, YTError} from '../../../@types/types';\nimport {initYTApiClusterParams} from '../../common/yt-api-init';\n\nfunction handleUiConfigError(path: string, error: any, type?: string) {\n rumLogError(\n {\n level: 'warn',\n type,\n message: `${path} cannot be loaded, some ui features might be not available`,\n block: path,\n },\n error,\n );\n}\n\nconst toast = new Toaster();\n\nfunction prepareClusterUiConfig(uiConfig: BatchResultsItem, uiDevConfig: BatchResultsItem) {\n if (uiConfig.error && uiConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config', uiConfig.error);\n toast.add({\n name: 'get-ui_config',\n type: 'error',\n autoHiding: false,\n title: 'Failed to load //sys/@ui_config',\n content:\n 'Some UI features might be not available. ' +\n 'Try to reload the page. ' +\n 'If the problem persists please report it via Bug Reporter.',\n });\n }\n if (uiDevConfig.error && uiDevConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config_dev_overrides', uiDevConfig.error);\n }\n return [uiConfig.output || {}, uiDevConfig.output || {}];\n}\n\ntype GlobalThunkAction<T = unknown> = ThunkAction<T, RootState, any, FIX_MY_TYPE>;\n\nexport function initClusterParams(cluster: string): GlobalThunkAction<Promise<void>> {\n return (dispatch, getState) => {\n initYTApiClusterParams(cluster);\n\n dispatch({\n type: INIT_CLUSTER_PARAMS.REQUEST,\n });\n\n const login = getCurrentUserName(getState());\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return wrapApiPromiseByToaster(\n rumId.fetch(\n YTApiId.clusterParams,\n axios.request({\n url: '/api/cluster-params/' + cluster,\n method: 'GET',\n }),\n ),\n {\n skipSuccessToast: true,\n toasterName: 'cluster_initialization_failure',\n errorTitle: 'Cluster initialization failure',\n errorContent: 'An error occured',\n },\n )\n .then(({data}) => {\n const {mediumList, schedulerVersion, masterVersion, uiConfig, uiDevConfig} = data;\n const error = getBatchError([mediumList], 'Cluster initialization failure');\n if (error) {\n throw error;\n }\n const [uiConfigOutput, uiDevConfigOutput] = prepareClusterUiConfig(\n uiConfig,\n uiDevConfig,\n );\n dispatch({\n type: INIT_CLUSTER_PARAMS.SUCCESS,\n data: {\n cluster,\n mediumList: ypath.getValue(mediumList.output),\n isDeveloper: false,\n clusterUiConfig: uiConfigOutput,\n schedulerVersion: schedulerVersion.output,\n masterVersion: masterVersion.output,\n },\n });\n\n return rumId\n .fetch(\n YTApiId.clusterParamsIsDeveloper,\n checkIsDeveloper(\n login,\n undefined,\n YTApiId[YTApiId.clusterParamsIsDeveloper],\n ),\n )\n .then((isDeveloper) => {\n if (isDeveloper) {\n const clusterUiConfig = isDeveloper\n ? Object.assign({}, uiConfigOutput, uiDevConfigOutput)\n : uiConfigOutput;\n dispatch({type: GLOBAL_PARTIAL, data: {isDeveloper, clusterUiConfig}});\n }\n })\n .catch((e) => {\n console.error('Failed to check if current user is admin', e);\n });\n })\n .catch((e) => {\n dispatch({\n type: INIT_CLUSTER_PARAMS.FAILURE,\n data: e,\n });\n });\n };\n}\n\ninterface ClusterInfoData {\n version?: string;\n versionError?: YTError;\n token?: {\n login: string;\n csrf_token?: string;\n };\n tokenError?: YTError;\n}\n\nlet count = 0;\nexport function updateCluster(\n cluster: string,\n onUpdateEnd: () => Promise<void>,\n): GlobalThunkAction {\n return (dispatch, getState) => {\n const dispatchError = (error: any) => {\n if (error instanceof Error) {\n console.error(error);\n }\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {error: error?.response?.data || error},\n });\n };\n\n dispatch({\n type: UPDATE_CLUSTER.REQUEST,\n });\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return rumId\n .fetch<AxiosResponse<ClusterInfoData>>(\n YTApiId.ui_clusterInfo,\n axios.request({\n url: '/api/cluster-info/' + cluster,\n method: 'GET',\n }),\n )\n .then(({data}) => {\n const {token, tokenError, version, versionError} = data;\n\n if (count++) {\n dispatch({\n type: RESET_STORE_BEFORE_CLUSTER_CHANGE,\n data: {\n shouldUsePreserveState: shouldUsePreserveState(getState()),\n },\n });\n }\n\n if (!version || versionError) {\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {errorType: LOAD_ERROR.CONNECTION, error: versionError},\n });\n } else {\n dispatch({\n type: UPDATE_CLUSTER.SUCCESS,\n data: {version},\n });\n\n YT.parameters.version = version;\n YT.cluster = cluster;\n\n if (!token?.csrf_token || tokenError) {\n Cookies.remove(getXsrfCookieName(cluster));\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {\n errorType: LOAD_ERROR.AUTHENTICATION,\n error: tokenError || new Error('Failed to get CSRF-token'),\n },\n });\n } else {\n const {login, csrf_token} = token;\n YT.parameters.login = login;\n dispatch({type: GLOBAL_PARTIAL, data: {login}});\n Cookies.set(getXsrfCookieName(cluster), csrf_token);\n return onUpdateEnd()\n .then(() => {\n dispatch({\n type: UPDATE_CLUSTER.FINAL_SUCCESS,\n });\n })\n .catch(dispatchError);\n }\n }\n\n return Promise.resolve();\n })\n .catch(dispatchError);\n };\n}\n\nexport function unmountCluster(): GlobalThunkAction {\n return (dispatch) => {\n YT.parameters.version = '';\n YT.cluster = '';\n\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {\n cluster: undefined,\n },\n });\n };\n}\n"],"mappings":"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"}
|
@@ -7,4 +7,5 @@ export function updateFilter(clusterFilter: any): {
|
|
7
7
|
data: any;
|
8
8
|
};
|
9
9
|
export function fetchClusterVersions(): (dispatch: any) => Promise<void>;
|
10
|
+
export function fetchClusterAuthStatus(): (dispatch: any) => Promise<void>;
|
10
11
|
export function fetchClusterAvailability(): (dispatch: any) => Promise<void>;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import axios from 'axios';
|
2
|
-
import { FETCH_CLUSTER_AVAILABILITY, FETCH_CLUSTER_VERSIONS, UPDATE_FILTER, UPDATE_VIEWMODE } from '../../constants/index';
|
2
|
+
import { FETCH_CLUSTER_AUTH_STATUS, FETCH_CLUSTER_AVAILABILITY, FETCH_CLUSTER_VERSIONS, UPDATE_FILTER, UPDATE_VIEWMODE } from '../../constants/index';
|
3
3
|
import { fetchClustersAvailability } from '../../pages/odin/odin-utils';
|
4
4
|
export function updateViewMode(viewMode) {
|
5
5
|
return {
|
@@ -32,10 +32,29 @@ export function fetchClusterVersions() {
|
|
32
32
|
});
|
33
33
|
};
|
34
34
|
}
|
35
|
-
export function
|
35
|
+
export function fetchClusterAuthStatus() {
|
36
36
|
return function (dispatch) {
|
37
|
-
return
|
37
|
+
return axios.request({
|
38
|
+
method: 'get',
|
39
|
+
url: '/api/clusters/auth-status'
|
40
|
+
}).then(function (_ref2) {
|
38
41
|
var data = _ref2.data;
|
42
|
+
dispatch({
|
43
|
+
type: FETCH_CLUSTER_AUTH_STATUS.SUCCESS,
|
44
|
+
data: data
|
45
|
+
});
|
46
|
+
})["catch"](function () {
|
47
|
+
dispatch({
|
48
|
+
type: FETCH_CLUSTER_AUTH_STATUS.FAILURE,
|
49
|
+
data: {}
|
50
|
+
});
|
51
|
+
});
|
52
|
+
};
|
53
|
+
}
|
54
|
+
export function fetchClusterAvailability() {
|
55
|
+
return function (dispatch) {
|
56
|
+
return fetchClustersAvailability().then(function (_ref3) {
|
57
|
+
var data = _ref3.data;
|
39
58
|
dispatch({
|
40
59
|
type: FETCH_CLUSTER_AVAILABILITY.SUCCESS,
|
41
60
|
data: data
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["axios","FETCH_CLUSTER_AVAILABILITY","FETCH_CLUSTER_VERSIONS","UPDATE_FILTER","UPDATE_VIEWMODE","fetchClustersAvailability","updateViewMode","viewMode","type","data","updateFilter","clusterFilter","fetchClusterVersions","dispatch","request","method","url","then","_ref","SUCCESS","FAILURE","
|
1
|
+
{"version":3,"names":["axios","FETCH_CLUSTER_AUTH_STATUS","FETCH_CLUSTER_AVAILABILITY","FETCH_CLUSTER_VERSIONS","UPDATE_FILTER","UPDATE_VIEWMODE","fetchClustersAvailability","updateViewMode","viewMode","type","data","updateFilter","clusterFilter","fetchClusterVersions","dispatch","request","method","url","then","_ref","SUCCESS","FAILURE","fetchClusterAuthStatus","_ref2","fetchClusterAvailability","_ref3"],"sources":["clusters-menu.js"],"sourcesContent":["import axios from 'axios';\nimport {\n FETCH_CLUSTER_AUTH_STATUS,\n FETCH_CLUSTER_AVAILABILITY,\n FETCH_CLUSTER_VERSIONS,\n UPDATE_FILTER,\n UPDATE_VIEWMODE,\n} from '../../constants/index';\nimport {fetchClustersAvailability} from '../../pages/odin/odin-utils';\n\nexport function updateViewMode(viewMode) {\n return {type: UPDATE_VIEWMODE, data: viewMode};\n}\n\nexport function updateFilter(clusterFilter) {\n return {type: UPDATE_FILTER, data: clusterFilter};\n}\n\nexport function fetchClusterVersions() {\n return (dispatch) => {\n return axios\n .request({\n method: 'get',\n url: '/api/clusters/versions',\n })\n .then(({data}) => {\n dispatch({type: FETCH_CLUSTER_VERSIONS.SUCCESS, data});\n })\n .catch(() => {\n dispatch({type: FETCH_CLUSTER_VERSIONS.FAILURE, data: {}});\n });\n };\n}\n\nexport function fetchClusterAuthStatus() {\n return (dispatch) => {\n return axios\n .request({\n method: 'get',\n url: '/api/clusters/auth-status',\n })\n .then(({data}) => {\n dispatch({type: FETCH_CLUSTER_AUTH_STATUS.SUCCESS, data});\n })\n .catch(() => {\n dispatch({type: FETCH_CLUSTER_AUTH_STATUS.FAILURE, data: {}});\n });\n };\n}\n\nexport function fetchClusterAvailability() {\n return (dispatch) => {\n return fetchClustersAvailability()\n .then(({data}) => {\n dispatch({type: FETCH_CLUSTER_AVAILABILITY.SUCCESS, data});\n })\n .catch(() => {\n dispatch({\n type: FETCH_CLUSTER_AVAILABILITY.FAILURE,\n data: {},\n });\n });\n };\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SACIC,yBAAyB,EACzBC,0BAA0B,EAC1BC,sBAAsB,EACtBC,aAAa,EACbC,eAAe,QACZ,uBAAuB;AAC9B,SAAQC,yBAAyB,QAAO,6BAA6B;AAErE,OAAO,SAASC,cAAcA,CAACC,QAAQ,EAAE;EACrC,OAAO;IAACC,IAAI,EAAEJ,eAAe;IAAEK,IAAI,EAAEF;EAAQ,CAAC;AAClD;AAEA,OAAO,SAASG,YAAYA,CAACC,aAAa,EAAE;EACxC,OAAO;IAACH,IAAI,EAAEL,aAAa;IAAEM,IAAI,EAAEE;EAAa,CAAC;AACrD;AAEA,OAAO,SAASC,oBAAoBA,CAAA,EAAG;EACnC,OAAO,UAACC,QAAQ,EAAK;IACjB,OAAOd,KAAK,CACPe,OAAO,CAAC;MACLC,MAAM,EAAE,KAAK;MACbC,GAAG,EAAE;IACT,CAAC,CAAC,CACDC,IAAI,CAAC,UAAAC,IAAA,EAAY;MAAA,IAAVT,IAAI,GAAAS,IAAA,CAAJT,IAAI;MACRI,QAAQ,CAAC;QAACL,IAAI,EAAEN,sBAAsB,CAACiB,OAAO;QAAEV,IAAI,EAAJA;MAAI,CAAC,CAAC;IAC1D,CAAC,CAAC,SACI,CAAC,YAAM;MACTI,QAAQ,CAAC;QAACL,IAAI,EAAEN,sBAAsB,CAACkB,OAAO;QAAEX,IAAI,EAAE,CAAC;MAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;EACV,CAAC;AACL;AAEA,OAAO,SAASY,sBAAsBA,CAAA,EAAG;EACrC,OAAO,UAACR,QAAQ,EAAK;IACjB,OAAOd,KAAK,CACPe,OAAO,CAAC;MACLC,MAAM,EAAE,KAAK;MACbC,GAAG,EAAE;IACT,CAAC,CAAC,CACDC,IAAI,CAAC,UAAAK,KAAA,EAAY;MAAA,IAAVb,IAAI,GAAAa,KAAA,CAAJb,IAAI;MACRI,QAAQ,CAAC;QAACL,IAAI,EAAER,yBAAyB,CAACmB,OAAO;QAAEV,IAAI,EAAJA;MAAI,CAAC,CAAC;IAC7D,CAAC,CAAC,SACI,CAAC,YAAM;MACTI,QAAQ,CAAC;QAACL,IAAI,EAAER,yBAAyB,CAACoB,OAAO;QAAEX,IAAI,EAAE,CAAC;MAAC,CAAC,CAAC;IACjE,CAAC,CAAC;EACV,CAAC;AACL;AAEA,OAAO,SAASc,wBAAwBA,CAAA,EAAG;EACvC,OAAO,UAACV,QAAQ,EAAK;IACjB,OAAOR,yBAAyB,CAAC,CAAC,CAC7BY,IAAI,CAAC,UAAAO,KAAA,EAAY;MAAA,IAAVf,IAAI,GAAAe,KAAA,CAAJf,IAAI;MACRI,QAAQ,CAAC;QAACL,IAAI,EAAEP,0BAA0B,CAACkB,OAAO;QAAEV,IAAI,EAAJA;MAAI,CAAC,CAAC;IAC9D,CAAC,CAAC,SACI,CAAC,YAAM;MACTI,QAAQ,CAAC;QACLL,IAAI,EAAEP,0BAA0B,CAACmB,OAAO;QACxCX,IAAI,EAAE,CAAC;MACX,CAAC,CAAC;IACN,CAAC,CAAC;EACV,CAAC;AACL"}
|
@@ -39,7 +39,9 @@ export declare function splitScreen(type: string, paneClassNames?: Array<string>
|
|
39
39
|
export declare function mergeScreen(): {
|
40
40
|
type: string;
|
41
41
|
};
|
42
|
-
export declare function handleAuthError(
|
42
|
+
export declare function handleAuthError({ ytAuthCluster }?: {
|
43
|
+
ytAuthCluster?: string;
|
44
|
+
}): void;
|
43
45
|
export declare function onSuccessLogin(login: string): YTThunkAction;
|
44
46
|
export declare function setRootPagesCluster(rootPagesCluster: string | undefined): {
|
45
47
|
type: string;
|
@@ -290,18 +290,32 @@ export function mergeScreen() {
|
|
290
290
|
};
|
291
291
|
}
|
292
292
|
export function handleAuthError() {
|
293
|
+
var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
294
|
+
ytAuthCluster = _ref4.ytAuthCluster;
|
293
295
|
if (getConfigData().allowLoginDialog) {
|
296
|
+
if (!ytAuthCluster) {
|
297
|
+
var toaster = new Toaster();
|
298
|
+
toaster.add({
|
299
|
+
name: "global/ytAuthCluster}",
|
300
|
+
autoHiding: false,
|
301
|
+
type: 'error',
|
302
|
+
content: 'If the problem persists, please report the error.',
|
303
|
+
title: "Failed to show a login form. ytAuthCluster is not defined"
|
304
|
+
});
|
305
|
+
return;
|
306
|
+
}
|
294
307
|
getWindowStore().dispatch({
|
295
308
|
type: GLOBAL_PARTIAL,
|
296
309
|
data: {
|
297
|
-
showLoginDialog: true
|
310
|
+
showLoginDialog: true,
|
311
|
+
ytAuthCluster: ytAuthCluster
|
298
312
|
}
|
299
313
|
});
|
300
314
|
}
|
301
315
|
}
|
302
316
|
export function onSuccessLogin(login) {
|
303
317
|
return /*#__PURE__*/function () {
|
304
|
-
var
|
318
|
+
var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(dispatch) {
|
305
319
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
306
320
|
while (1) switch (_context.prev = _context.next) {
|
307
321
|
case 0:
|
@@ -323,7 +337,8 @@ export function onSuccessLogin(login) {
|
|
323
337
|
type: GLOBAL_PARTIAL,
|
324
338
|
data: {
|
325
339
|
showLoginDialog: false,
|
326
|
-
login: login
|
340
|
+
login: login,
|
341
|
+
ytAuthCluster: undefined
|
327
342
|
}
|
328
343
|
});
|
329
344
|
case 11:
|
@@ -333,7 +348,7 @@ export function onSuccessLogin(login) {
|
|
333
348
|
}, _callee, null, [[0, 7]]);
|
334
349
|
}));
|
335
350
|
return function (_x) {
|
336
|
-
return
|
351
|
+
return _ref5.apply(this, arguments);
|
337
352
|
};
|
338
353
|
}();
|
339
354
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["ypath","listAllGroups","listAllUsers","normalizeResponseWithAttributes","getBundles","getCurrentUserName","getGlobalAsideHeaderWidth","getGlobalGroups","getGlobalUsers","getPoolTrees","Toaster","showErrorPopup","GLOBAL_PARTIAL","loadDefaultPoolTree","ytGetPoolTrees","DEC_NAV_BLOCKER_COUNTER","GLOBAL_SET_THEME","INC_NAV_BLOCKER_COUNTER","MERGE_SCREEN","SET_MAINTENANCE_PAGE_EVENT","SPLIT_SCREEN","UPDATE_TITLE","USE_CACHE","USE_MAX_SIZE","YTApiId","ytApiV3Id","getWindowStore","reloadUserSettings","YT","getConfigData","UIFactory","setTheme","theme","type","data","usersInProgress","setAsideHeaderWidth","asideHeaderWidth","dispatch","getState","oldWidth","loadUsersIfNotLoaded","Promise","resolve","users","length","listUsersUM","attributes","then","e","showErrorToaster","undefined","groupsInProgress","loadGroupsIfNotLoaded","groups","listGroups","getValue","accountsInProgress","loadAccountsIfNotLoaded","list","listAccounts","_objectSpread","path","accounts","bundlesInProgress","loadBundlesIfNotLoaded","bundles","listBundles","poolTreesInProgress","loadPoolTreesIfNotLoaded","trees","_isEmpty","all","_ref","_ref2","_slicedToArray","poolTreeDefault","poolTrees","defaultPoolTree","error","listType","reloadFn","toaster","add","name","concat","autoHiding","content","title","actions","label","onClick","updateTitle","_ref3","page","cluster","clusters","clustersMenu","addNavigationBlocker","removeNavigationBlocker","setMaintenancePageEvent","events","isFirstUpdate","splitScreen","paneClassNames","arguments","document","body","style","overflow","mergeScreen","handleAuthError","allowLoginDialog","showLoginDialog","onSuccessLogin","login","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","sent","t0","parameters","stop","_x","apply","setRootPagesCluster","rootPagesCluster","loadAllowedExperimentalPages","getAllowedExperimentalPages","allowedExperimentalPages"],"sources":["index.ts"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport _ from 'lodash';\n\nimport ypath from '../../../common/thor/ypath';\n\nimport {listAllGroups, listAllUsers} from '../../../utils/users-groups';\nimport {normalizeResponseWithAttributes} from '../../../utils';\nimport {RootState} from '../../../store/reducers';\nimport {\n getBundles,\n getCurrentUserName,\n getGlobalAsideHeaderWidth,\n getGlobalGroups,\n getGlobalUsers,\n getPoolTrees,\n} from '../../../store/selectors/global';\nimport {Toaster} from '@gravity-ui/uikit';\nimport {showErrorPopup} from '../../../utils/utils';\nimport {GLOBAL_PARTIAL} from '../../../constants/global';\nimport {loadDefaultPoolTree, ytGetPoolTrees} from '../../../utils/poolTrees';\nimport {\n DEC_NAV_BLOCKER_COUNTER,\n GLOBAL_SET_THEME,\n INC_NAV_BLOCKER_COUNTER,\n MERGE_SCREEN,\n SET_MAINTENANCE_PAGE_EVENT,\n SPLIT_SCREEN,\n UPDATE_TITLE,\n} from '../../../constants/index';\nimport {USE_CACHE, USE_MAX_SIZE} from '../../../../shared/constants/yt-api';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {getWindowStore} from '../../../store/window-store';\nimport {reloadUserSettings} from '../settings';\nimport YT from '../../../config/yt-config';\nimport {getConfigData} from '../../../config/ui-settings';\nimport UIFactory from '../../../UIFactory';\n\nexport function setTheme(theme: 'light' | 'dark' | 'system' | 'light-hc' | 'dark-hc') {\n return {type: GLOBAL_SET_THEME, data: theme};\n}\n\nlet usersInProgress = false;\n\ntype YTThunkAction<T = unknown> = ThunkAction<T, RootState, any, any>;\n\nexport function setAsideHeaderWidth(asideHeaderWidth: number): YTThunkAction {\n return (dispatch, getState) => {\n const oldWidth = getGlobalAsideHeaderWidth(getState());\n if (oldWidth !== asideHeaderWidth) {\n dispatch({type: GLOBAL_PARTIAL, data: {asideHeaderWidth}});\n }\n };\n}\n\nexport function loadUsersIfNotLoaded(): ThunkAction<any, RootState, any, any> {\n return (dispatch, getState) => {\n if (usersInProgress) {\n return Promise.resolve();\n }\n\n const users = getGlobalUsers(getState());\n if (users?.length) {\n return Promise.resolve();\n }\n\n usersInProgress = true;\n\n return listAllUsers(YTApiId.listUsersUM, {attributes: ['upravlyator_managed']})\n .then((users: Array<any>) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {users: normalizeResponseWithAttributes(users)},\n });\n usersInProgress = false;\n })\n .catch((e: any) => {\n usersInProgress = false;\n showErrorToaster(e, 'users', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {users: undefined},\n });\n dispatch(loadUsersIfNotLoaded());\n });\n });\n };\n}\n\nlet groupsInProgress = false;\n\nexport function loadGroupsIfNotLoaded(): ThunkAction<Promise<void>, RootState, any, any> {\n return (dispatch, getState) => {\n if (groupsInProgress) {\n return Promise.resolve();\n }\n\n const groups = getGlobalGroups(getState());\n if (groups?.length) {\n return Promise.resolve();\n }\n\n groupsInProgress = true;\n\n return listAllGroups(YTApiId.listGroups, {attributes: ['upravlyator_managed']})\n .then((data: Array<any>) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {\n groups: normalizeResponseWithAttributes(ypath.getValue(data)),\n },\n });\n groupsInProgress = false;\n })\n .catch((e: any) => {\n groupsInProgress = false;\n showErrorToaster(e, 'groups', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {groups: undefined},\n });\n dispatch(loadGroupsIfNotLoaded());\n });\n });\n };\n}\n\nlet accountsInProgress = false;\nexport function loadAccountsIfNotLoaded(): ThunkAction<Promise<void>, RootState, any, any> {\n return (dispatch, getState) => {\n if (accountsInProgress) {\n return Promise.resolve();\n }\n\n const groups = getGlobalGroups(getState());\n if (groups?.length) {\n return Promise.resolve();\n }\n\n accountsInProgress = true;\n\n return ytApiV3Id\n .list(YTApiId.listAccounts, {path: '//sys/accounts', ...USE_MAX_SIZE, ...USE_CACHE})\n .then((data: Array<any>) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {accounts: ypath.getValue(data)},\n });\n accountsInProgress = false;\n })\n .catch((e: any) => {\n accountsInProgress = false;\n showErrorToaster(e, 'accounts', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {accounts: undefined},\n });\n dispatch(loadAccountsIfNotLoaded());\n });\n });\n };\n}\n\nlet bundlesInProgress = false;\n\nexport function loadBundlesIfNotLoaded(): ThunkAction<any, RootState, any, any> {\n return (dispatch, getState) => {\n if (bundlesInProgress) {\n return Promise.resolve();\n }\n\n const bundles = getBundles(getState());\n if (bundles?.length) {\n return Promise.resolve();\n }\n\n bundlesInProgress = true;\n\n return ytApiV3Id\n .list(YTApiId.listBundles, {\n path: '//sys/tablet_cell_bundles',\n attributes: ['nodes'],\n ...USE_MAX_SIZE,\n ...USE_CACHE,\n })\n .then((data: unknown) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {bundles: ypath.getValue(data)},\n });\n bundlesInProgress = false;\n })\n .catch((e: any) => {\n showErrorToaster(e, 'bundles', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {bundles: undefined},\n });\n dispatch(loadBundlesIfNotLoaded());\n });\n bundlesInProgress = false;\n });\n };\n}\n\nlet poolTreesInProgress = false;\nexport function loadPoolTreesIfNotLoaded(): ThunkAction<Promise<void>, RootState, any, any> {\n return (dispatch, getState) => {\n if (poolTreesInProgress) {\n return Promise.resolve();\n }\n\n const trees = getPoolTrees(getState());\n if (!_.isEmpty(trees)) {\n return Promise.resolve();\n }\n\n poolTreesInProgress = true;\n\n return Promise.all([ytGetPoolTrees(), loadDefaultPoolTree()])\n .then(([data, poolTreeDefault]) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {poolTrees: ypath.getValue(data), poolTreeDefault},\n });\n poolTreesInProgress = false;\n })\n .catch((e: any) => {\n showErrorToaster(e, 'pools', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {poolTrees: undefined, defaultPoolTree: undefined},\n });\n dispatch(loadPoolTreesIfNotLoaded());\n });\n poolTreesInProgress = false;\n });\n };\n}\n\nfunction showErrorToaster(\n error: any,\n listType: 'users' | 'groups' | 'bundles' | 'accounts' | 'pools',\n reloadFn: () => void,\n) {\n const toaster = new Toaster();\n toaster.add({\n name: `global/${listType}`,\n autoHiding: false,\n type: 'error',\n content: 'If the problem persists, please report the error.',\n title: `Failed to load list of ${listType}`,\n actions: [\n {label: ' Details ', onClick: () => showErrorPopup(error)},\n {\n label: ' Reload ',\n onClick: reloadFn,\n },\n ],\n });\n}\n\nexport function updateTitle({\n path,\n page,\n cluster,\n}: {\n path: string;\n page: string;\n cluster: string;\n}): YTThunkAction {\n return (dispatch, getState) => {\n const clusters = getState().clustersMenu.clusters;\n dispatch({\n type: UPDATE_TITLE,\n data: {path, page, cluster, clusters},\n });\n };\n}\n\nexport function addNavigationBlocker() {\n return {\n type: INC_NAV_BLOCKER_COUNTER,\n };\n}\n\nexport function removeNavigationBlocker() {\n return {\n type: DEC_NAV_BLOCKER_COUNTER,\n };\n}\n\nexport function setMaintenancePageEvent(events: Array<unknown>, isFirstUpdate: boolean) {\n return {\n type: SET_MAINTENANCE_PAGE_EVENT,\n data: {events, isFirstUpdate},\n };\n}\n\nexport function splitScreen(type: string, paneClassNames: Array<string> = []) {\n document.body.style.overflow = 'hidden';\n\n return {\n type: SPLIT_SCREEN,\n data: {paneClassNames, type},\n };\n}\n\nexport function mergeScreen() {\n document.body.style.overflow = '';\n\n return {\n type: MERGE_SCREEN,\n };\n}\n\nexport function handleAuthError() {\n if (getConfigData().allowLoginDialog) {\n getWindowStore().dispatch({type: GLOBAL_PARTIAL, data: {showLoginDialog: true}});\n }\n}\n\nexport function onSuccessLogin(login: string): YTThunkAction {\n return async (dispatch) => {\n try {\n await await dispatch(reloadUserSettings(login));\n } catch (e) {}\n YT.parameters.login = login;\n dispatch({type: GLOBAL_PARTIAL, data: {showLoginDialog: false, login}});\n };\n}\n\nexport function setRootPagesCluster(rootPagesCluster: string | undefined) {\n return {type: GLOBAL_PARTIAL, data: {rootPagesCluster}};\n}\n\nexport function loadAllowedExperimentalPages(): YTThunkAction {\n return (dispatch, getState) => {\n const login = getCurrentUserName(getState());\n return UIFactory.getAllowedExperimentalPages(login).then((allowedExperimentalPages) => {\n dispatch({type: GLOBAL_PARTIAL, data: {allowedExperimentalPages}});\n });\n };\n}\n"],"mappings":";;;;;AAGA,OAAOA,KAAK,MAAM,4BAA4B;AAE9C,SAAQC,aAAa,EAAEC,YAAY,QAAO,6BAA6B;AACvE,SAAQC,+BAA+B,QAAO,gBAAgB;AAE9D,SACIC,UAAU,EACVC,kBAAkB,EAClBC,yBAAyB,EACzBC,eAAe,EACfC,cAAc,EACdC,YAAY,QACT,iCAAiC;AACxC,SAAQC,OAAO,QAAO,mBAAmB;AACzC,SAAQC,cAAc,QAAO,sBAAsB;AACnD,SAAQC,cAAc,QAAO,2BAA2B;AACxD,SAAQC,mBAAmB,EAAEC,cAAc,QAAO,0BAA0B;AAC5E,SACIC,uBAAuB,EACvBC,gBAAgB,EAChBC,uBAAuB,EACvBC,YAAY,EACZC,0BAA0B,EAC1BC,YAAY,EACZC,YAAY,QACT,0BAA0B;AACjC,SAAQC,SAAS,EAAEC,YAAY,QAAO,qCAAqC;AAC3E,SAAQC,OAAO,EAAEC,SAAS,QAAO,2BAA2B;AAC5D,SAAQC,cAAc,QAAO,6BAA6B;AAC1D,SAAQC,kBAAkB,QAAO,aAAa;AAC9C,OAAOC,EAAE,MAAM,2BAA2B;AAC1C,SAAQC,aAAa,QAAO,6BAA6B;AACzD,OAAOC,SAAS,MAAM,oBAAoB;AAE1C,OAAO,SAASC,QAAQA,CAACC,KAA2D,EAAE;EAClF,OAAO;IAACC,IAAI,EAAEjB,gBAAgB;IAAEkB,IAAI,EAAEF;EAAK,CAAC;AAChD;AAEA,IAAIG,eAAe,GAAG,KAAK;AAI3B,OAAO,SAASC,mBAAmBA,CAACC,gBAAwB,EAAiB;EACzE,OAAO,UAACC,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAMC,QAAQ,GAAGlC,yBAAyB,CAACiC,QAAQ,CAAC,CAAC,CAAC;IACtD,IAAIC,QAAQ,KAAKH,gBAAgB,EAAE;MAC/BC,QAAQ,CAAC;QAACL,IAAI,EAAErB,cAAc;QAAEsB,IAAI,EAAE;UAACG,gBAAgB,EAAhBA;QAAgB;MAAC,CAAC,CAAC;IAC9D;EACJ,CAAC;AACL;AAEA,OAAO,SAASI,oBAAoBA,CAAA,EAA0C;EAC1E,OAAO,UAACH,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAIJ,eAAe,EAAE;MACjB,OAAOO,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEA,IAAMC,KAAK,GAAGpC,cAAc,CAAC+B,QAAQ,CAAC,CAAC,CAAC;IACxC,IAAIK,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEC,MAAM,EAAE;MACf,OAAOH,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEAR,eAAe,GAAG,IAAI;IAEtB,OAAOjC,YAAY,CAACsB,OAAO,CAACsB,WAAW,EAAE;MAACC,UAAU,EAAE,CAAC,qBAAqB;IAAC,CAAC,CAAC,CAC1EC,IAAI,CAAC,UAACJ,KAAiB,EAAK;MACzBN,QAAQ,CAAC;QACLL,IAAI,EAAErB,cAAc;QACpBsB,IAAI,EAAE;UAACU,KAAK,EAAEzC,+BAA+B,CAACyC,KAAK;QAAC;MACxD,CAAC,CAAC;MACFT,eAAe,GAAG,KAAK;IAC3B,CAAC,CAAC,SACI,CAAC,UAACc,CAAM,EAAK;MACfd,eAAe,GAAG,KAAK;MACvBe,gBAAgB,CAACD,CAAC,EAAE,OAAO,EAAE,YAAM;QAC/BX,QAAQ,CAAC;UACLL,IAAI,EAAErB,cAAc;UACpBsB,IAAI,EAAE;YAACU,KAAK,EAAEO;UAAS;QAC3B,CAAC,CAAC;QACFb,QAAQ,CAACG,oBAAoB,CAAC,CAAC,CAAC;MACpC,CAAC,CAAC;IACN,CAAC,CAAC;EACV,CAAC;AACL;AAEA,IAAIW,gBAAgB,GAAG,KAAK;AAE5B,OAAO,SAASC,qBAAqBA,CAAA,EAAoD;EACrF,OAAO,UAACf,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAIa,gBAAgB,EAAE;MAClB,OAAOV,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEA,IAAMW,MAAM,GAAG/C,eAAe,CAACgC,QAAQ,CAAC,CAAC,CAAC;IAC1C,IAAIe,MAAM,aAANA,MAAM,eAANA,MAAM,CAAET,MAAM,EAAE;MAChB,OAAOH,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEAS,gBAAgB,GAAG,IAAI;IAEvB,OAAOnD,aAAa,CAACuB,OAAO,CAAC+B,UAAU,EAAE;MAACR,UAAU,EAAE,CAAC,qBAAqB;IAAC,CAAC,CAAC,CAC1EC,IAAI,CAAC,UAACd,IAAgB,EAAK;MACxBI,QAAQ,CAAC;QACLL,IAAI,EAAErB,cAAc;QACpBsB,IAAI,EAAE;UACFoB,MAAM,EAAEnD,+BAA+B,CAACH,KAAK,CAACwD,QAAQ,CAACtB,IAAI,CAAC;QAChE;MACJ,CAAC,CAAC;MACFkB,gBAAgB,GAAG,KAAK;IAC5B,CAAC,CAAC,SACI,CAAC,UAACH,CAAM,EAAK;MACfG,gBAAgB,GAAG,KAAK;MACxBF,gBAAgB,CAACD,CAAC,EAAE,QAAQ,EAAE,YAAM;QAChCX,QAAQ,CAAC;UACLL,IAAI,EAAErB,cAAc;UACpBsB,IAAI,EAAE;YAACoB,MAAM,EAAEH;UAAS;QAC5B,CAAC,CAAC;QACFb,QAAQ,CAACe,qBAAqB,CAAC,CAAC,CAAC;MACrC,CAAC,CAAC;IACN,CAAC,CAAC;EACV,CAAC;AACL;AAEA,IAAII,kBAAkB,GAAG,KAAK;AAC9B,OAAO,SAASC,uBAAuBA,CAAA,EAAoD;EACvF,OAAO,UAACpB,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAIkB,kBAAkB,EAAE;MACpB,OAAOf,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEA,IAAMW,MAAM,GAAG/C,eAAe,CAACgC,QAAQ,CAAC,CAAC,CAAC;IAC1C,IAAIe,MAAM,aAANA,MAAM,eAANA,MAAM,CAAET,MAAM,EAAE;MAChB,OAAOH,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEAc,kBAAkB,GAAG,IAAI;IAEzB,OAAOhC,SAAS,CACXkC,IAAI,CAACnC,OAAO,CAACoC,YAAY,EAAAC,aAAA,CAAAA,aAAA;MAAGC,IAAI,EAAE;IAAgB,GAAKvC,YAAY,GAAKD,SAAS,CAAC,CAAC,CACnF0B,IAAI,CAAC,UAACd,IAAgB,EAAK;MACxBI,QAAQ,CAAC;QACLL,IAAI,EAAErB,cAAc;QACpBsB,IAAI,EAAE;UAAC6B,QAAQ,EAAE/D,KAAK,CAACwD,QAAQ,CAACtB,IAAI;QAAC;MACzC,CAAC,CAAC;MACFuB,kBAAkB,GAAG,KAAK;IAC9B,CAAC,CAAC,SACI,CAAC,UAACR,CAAM,EAAK;MACfQ,kBAAkB,GAAG,KAAK;MAC1BP,gBAAgB,CAACD,CAAC,EAAE,UAAU,EAAE,YAAM;QAClCX,QAAQ,CAAC;UACLL,IAAI,EAAErB,cAAc;UACpBsB,IAAI,EAAE;YAAC6B,QAAQ,EAAEZ;UAAS;QAC9B,CAAC,CAAC;QACFb,QAAQ,CAACoB,uBAAuB,CAAC,CAAC,CAAC;MACvC,CAAC,CAAC;IACN,CAAC,CAAC;EACV,CAAC;AACL;AAEA,IAAIM,iBAAiB,GAAG,KAAK;AAE7B,OAAO,SAASC,sBAAsBA,CAAA,EAA0C;EAC5E,OAAO,UAAC3B,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAIyB,iBAAiB,EAAE;MACnB,OAAOtB,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEA,IAAMuB,OAAO,GAAG9D,UAAU,CAACmC,QAAQ,CAAC,CAAC,CAAC;IACtC,IAAI2B,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAErB,MAAM,EAAE;MACjB,OAAOH,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEAqB,iBAAiB,GAAG,IAAI;IAExB,OAAOvC,SAAS,CACXkC,IAAI,CAACnC,OAAO,CAAC2C,WAAW,EAAAN,aAAA,CAAAA,aAAA;MACrBC,IAAI,EAAE,2BAA2B;MACjCf,UAAU,EAAE,CAAC,OAAO;IAAC,GAClBxB,YAAY,GACZD,SAAS,CACf,CAAC,CACD0B,IAAI,CAAC,UAACd,IAAa,EAAK;MACrBI,QAAQ,CAAC;QACLL,IAAI,EAAErB,cAAc;QACpBsB,IAAI,EAAE;UAACgC,OAAO,EAAElE,KAAK,CAACwD,QAAQ,CAACtB,IAAI;QAAC;MACxC,CAAC,CAAC;MACF8B,iBAAiB,GAAG,KAAK;IAC7B,CAAC,CAAC,SACI,CAAC,UAACf,CAAM,EAAK;MACfC,gBAAgB,CAACD,CAAC,EAAE,SAAS,EAAE,YAAM;QACjCX,QAAQ,CAAC;UACLL,IAAI,EAAErB,cAAc;UACpBsB,IAAI,EAAE;YAACgC,OAAO,EAAEf;UAAS;QAC7B,CAAC,CAAC;QACFb,QAAQ,CAAC2B,sBAAsB,CAAC,CAAC,CAAC;MACtC,CAAC,CAAC;MACFD,iBAAiB,GAAG,KAAK;IAC7B,CAAC,CAAC;EACV,CAAC;AACL;AAEA,IAAII,mBAAmB,GAAG,KAAK;AAC/B,OAAO,SAASC,wBAAwBA,CAAA,EAAoD;EACxF,OAAO,UAAC/B,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAI6B,mBAAmB,EAAE;MACrB,OAAO1B,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEA,IAAM2B,KAAK,GAAG7D,YAAY,CAAC8B,QAAQ,CAAC,CAAC,CAAC;IACtC,IAAI,CAACgC,QAAA,CAAUD,KAAK,CAAC,EAAE;MACnB,OAAO5B,OAAO,CAACC,OAAO,CAAC,CAAC;IAC5B;IAEAyB,mBAAmB,GAAG,IAAI;IAE1B,OAAO1B,OAAO,CAAC8B,GAAG,CAAC,CAAC1D,cAAc,CAAC,CAAC,EAAED,mBAAmB,CAAC,CAAC,CAAC,CAAC,CACxDmC,IAAI,CAAC,UAAAyB,IAAA,EAA6B;MAAA,IAAAC,KAAA,GAAAC,cAAA,CAAAF,IAAA;QAA3BvC,IAAI,GAAAwC,KAAA;QAAEE,eAAe,GAAAF,KAAA;MACzBpC,QAAQ,CAAC;QACLL,IAAI,EAAErB,cAAc;QACpBsB,IAAI,EAAE;UAAC2C,SAAS,EAAE7E,KAAK,CAACwD,QAAQ,CAACtB,IAAI,CAAC;UAAE0C,eAAe,EAAfA;QAAe;MAC3D,CAAC,CAAC;MACFR,mBAAmB,GAAG,KAAK;IAC/B,CAAC,CAAC,SACI,CAAC,UAACnB,CAAM,EAAK;MACfC,gBAAgB,CAACD,CAAC,EAAE,OAAO,EAAE,YAAM;QAC/BX,QAAQ,CAAC;UACLL,IAAI,EAAErB,cAAc;UACpBsB,IAAI,EAAE;YAAC2C,SAAS,EAAE1B,SAAS;YAAE2B,eAAe,EAAE3B;UAAS;QAC3D,CAAC,CAAC;QACFb,QAAQ,CAAC+B,wBAAwB,CAAC,CAAC,CAAC;MACxC,CAAC,CAAC;MACFD,mBAAmB,GAAG,KAAK;IAC/B,CAAC,CAAC;EACV,CAAC;AACL;AAEA,SAASlB,gBAAgBA,CACrB6B,KAAU,EACVC,QAA+D,EAC/DC,QAAoB,EACtB;EACE,IAAMC,OAAO,GAAG,IAAIxE,OAAO,CAAC,CAAC;EAC7BwE,OAAO,CAACC,GAAG,CAAC;IACRC,IAAI,YAAAC,MAAA,CAAYL,QAAQ,CAAE;IAC1BM,UAAU,EAAE,KAAK;IACjBrD,IAAI,EAAE,OAAO;IACbsD,OAAO,EAAE,mDAAmD;IAC5DC,KAAK,4BAAAH,MAAA,CAA4BL,QAAQ,CAAE;IAC3CS,OAAO,EAAE,CACL;MAACC,KAAK,EAAE,WAAW;MAAEC,OAAO,EAAE,SAAAA,QAAA;QAAA,OAAMhF,cAAc,CAACoE,KAAK,CAAC;MAAA;IAAA,CAAC,EAC1D;MACIW,KAAK,EAAE,UAAU;MACjBC,OAAO,EAAEV;IACb,CAAC;EAET,CAAC,CAAC;AACN;AAEA,OAAO,SAASW,WAAWA,CAAAC,KAAA,EAQT;EAAA,IAPd/B,IAAI,GAAA+B,KAAA,CAAJ/B,IAAI;IACJgC,IAAI,GAAAD,KAAA,CAAJC,IAAI;IACJC,OAAO,GAAAF,KAAA,CAAPE,OAAO;EAMP,OAAO,UAACzD,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAMyD,QAAQ,GAAGzD,QAAQ,CAAC,CAAC,CAAC0D,YAAY,CAACD,QAAQ;IACjD1D,QAAQ,CAAC;MACLL,IAAI,EAAEZ,YAAY;MAClBa,IAAI,EAAE;QAAC4B,IAAI,EAAJA,IAAI;QAAEgC,IAAI,EAAJA,IAAI;QAAEC,OAAO,EAAPA,OAAO;QAAEC,QAAQ,EAARA;MAAQ;IACxC,CAAC,CAAC;EACN,CAAC;AACL;AAEA,OAAO,SAASE,oBAAoBA,CAAA,EAAG;EACnC,OAAO;IACHjE,IAAI,EAAEhB;EACV,CAAC;AACL;AAEA,OAAO,SAASkF,uBAAuBA,CAAA,EAAG;EACtC,OAAO;IACHlE,IAAI,EAAElB;EACV,CAAC;AACL;AAEA,OAAO,SAASqF,uBAAuBA,CAACC,MAAsB,EAAEC,aAAsB,EAAE;EACpF,OAAO;IACHrE,IAAI,EAAEd,0BAA0B;IAChCe,IAAI,EAAE;MAACmE,MAAM,EAANA,MAAM;MAAEC,aAAa,EAAbA;IAAa;EAChC,CAAC;AACL;AAEA,OAAO,SAASC,WAAWA,CAACtE,IAAY,EAAsC;EAAA,IAApCuE,cAA6B,GAAAC,SAAA,CAAA5D,MAAA,QAAA4D,SAAA,QAAAtD,SAAA,GAAAsD,SAAA,MAAG,EAAE;EACxEC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,QAAQ,GAAG,QAAQ;EAEvC,OAAO;IACH5E,IAAI,EAAEb,YAAY;IAClBc,IAAI,EAAE;MAACsE,cAAc,EAAdA,cAAc;MAAEvE,IAAI,EAAJA;IAAI;EAC/B,CAAC;AACL;AAEA,OAAO,SAAS6E,WAAWA,CAAA,EAAG;EAC1BJ,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,QAAQ,GAAG,EAAE;EAEjC,OAAO;IACH5E,IAAI,EAAEf;EACV,CAAC;AACL;AAEA,OAAO,SAAS6F,eAAeA,CAAA,EAAG;EAC9B,IAAIlF,aAAa,CAAC,CAAC,CAACmF,gBAAgB,EAAE;IAClCtF,cAAc,CAAC,CAAC,CAACY,QAAQ,CAAC;MAACL,IAAI,EAAErB,cAAc;MAAEsB,IAAI,EAAE;QAAC+E,eAAe,EAAE;MAAI;IAAC,CAAC,CAAC;EACpF;AACJ;AAEA,OAAO,SAASC,cAAcA,CAACC,KAAa,EAAiB;EACzD;IAAA,IAAAC,KAAA,GAAAC,iBAAA,eAAAC,mBAAA,CAAAC,IAAA,CAAO,SAAAC,QAAOlF,QAAQ;MAAA,OAAAgF,mBAAA,CAAAG,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAAF,QAAA,CAAAC,IAAA;YAAAD,QAAA,CAAAE,IAAA;YAAA,OAEFvF,QAAQ,CAACX,kBAAkB,CAACwF,KAAK,CAAC,CAAC;UAAA;YAAAQ,QAAA,CAAAE,IAAA;YAAA,OAAAF,QAAA,CAAAG,IAAA;UAAA;YAAAH,QAAA,CAAAE,IAAA;YAAA;UAAA;YAAAF,QAAA,CAAAC,IAAA;YAAAD,QAAA,CAAAI,EAAA,GAAAJ,QAAA;UAAA;YAEnD/F,EAAE,CAACoG,UAAU,CAACb,KAAK,GAAGA,KAAK;YAC3B7E,QAAQ,CAAC;cAACL,IAAI,EAAErB,cAAc;cAAEsB,IAAI,EAAE;gBAAC+E,eAAe,EAAE,KAAK;gBAAEE,KAAK,EAALA;cAAK;YAAC,CAAC,CAAC;UAAC;UAAA;YAAA,OAAAQ,QAAA,CAAAM,IAAA;QAAA;MAAA,GAAAT,OAAA;IAAA,CAC3E;IAAA,iBAAAU,EAAA;MAAA,OAAAd,KAAA,CAAAe,KAAA,OAAA1B,SAAA;IAAA;EAAA;AACL;AAEA,OAAO,SAAS2B,mBAAmBA,CAACC,gBAAoC,EAAE;EACtE,OAAO;IAACpG,IAAI,EAAErB,cAAc;IAAEsB,IAAI,EAAE;MAACmG,gBAAgB,EAAhBA;IAAgB;EAAC,CAAC;AAC3D;AAEA,OAAO,SAASC,4BAA4BA,CAAA,EAAkB;EAC1D,OAAO,UAAChG,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAM4E,KAAK,GAAG9G,kBAAkB,CAACkC,QAAQ,CAAC,CAAC,CAAC;IAC5C,OAAOT,SAAS,CAACyG,2BAA2B,CAACpB,KAAK,CAAC,CAACnE,IAAI,CAAC,UAACwF,wBAAwB,EAAK;MACnFlG,QAAQ,CAAC;QAACL,IAAI,EAAErB,cAAc;QAAEsB,IAAI,EAAE;UAACsG,wBAAwB,EAAxBA;QAAwB;MAAC,CAAC,CAAC;IACtE,CAAC,CAAC;EACN,CAAC;AACL"}
|
1
|
+
{"version":3,"names":["ypath","listAllGroups","listAllUsers","normalizeResponseWithAttributes","getBundles","getCurrentUserName","getGlobalAsideHeaderWidth","getGlobalGroups","getGlobalUsers","getPoolTrees","Toaster","showErrorPopup","GLOBAL_PARTIAL","loadDefaultPoolTree","ytGetPoolTrees","DEC_NAV_BLOCKER_COUNTER","GLOBAL_SET_THEME","INC_NAV_BLOCKER_COUNTER","MERGE_SCREEN","SET_MAINTENANCE_PAGE_EVENT","SPLIT_SCREEN","UPDATE_TITLE","USE_CACHE","USE_MAX_SIZE","YTApiId","ytApiV3Id","getWindowStore","reloadUserSettings","YT","getConfigData","UIFactory","setTheme","theme","type","data","usersInProgress","setAsideHeaderWidth","asideHeaderWidth","dispatch","getState","oldWidth","loadUsersIfNotLoaded","Promise","resolve","users","length","listUsersUM","attributes","then","e","showErrorToaster","undefined","groupsInProgress","loadGroupsIfNotLoaded","groups","listGroups","getValue","accountsInProgress","loadAccountsIfNotLoaded","list","listAccounts","_objectSpread","path","accounts","bundlesInProgress","loadBundlesIfNotLoaded","bundles","listBundles","poolTreesInProgress","loadPoolTreesIfNotLoaded","trees","_isEmpty","all","_ref","_ref2","_slicedToArray","poolTreeDefault","poolTrees","defaultPoolTree","error","listType","reloadFn","toaster","add","name","concat","autoHiding","content","title","actions","label","onClick","updateTitle","_ref3","page","cluster","clusters","clustersMenu","addNavigationBlocker","removeNavigationBlocker","setMaintenancePageEvent","events","isFirstUpdate","splitScreen","paneClassNames","arguments","document","body","style","overflow","mergeScreen","handleAuthError","_ref4","ytAuthCluster","allowLoginDialog","showLoginDialog","onSuccessLogin","login","_ref5","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","sent","t0","parameters","stop","_x","apply","setRootPagesCluster","rootPagesCluster","loadAllowedExperimentalPages","getAllowedExperimentalPages","allowedExperimentalPages"],"sources":["index.ts"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport _ from 'lodash';\nimport ypath from '../../../common/thor/ypath';\n\nimport {listAllGroups, listAllUsers} from '../../../utils/users-groups';\nimport {normalizeResponseWithAttributes} from '../../../utils';\nimport {RootState} from '../../../store/reducers';\nimport {\n getBundles,\n getCurrentUserName,\n getGlobalAsideHeaderWidth,\n getGlobalGroups,\n getGlobalUsers,\n getPoolTrees,\n} from '../../../store/selectors/global';\nimport {Toaster} from '@gravity-ui/uikit';\nimport {showErrorPopup} from '../../../utils/utils';\nimport {GLOBAL_PARTIAL} from '../../../constants/global';\nimport {loadDefaultPoolTree, ytGetPoolTrees} from '../../../utils/poolTrees';\nimport {\n DEC_NAV_BLOCKER_COUNTER,\n GLOBAL_SET_THEME,\n INC_NAV_BLOCKER_COUNTER,\n MERGE_SCREEN,\n SET_MAINTENANCE_PAGE_EVENT,\n SPLIT_SCREEN,\n UPDATE_TITLE,\n} from '../../../constants/index';\nimport {USE_CACHE, USE_MAX_SIZE} from '../../../../shared/constants/yt-api';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {getWindowStore} from '../../../store/window-store';\nimport {reloadUserSettings} from '../settings';\nimport YT from '../../../config/yt-config';\nimport {getConfigData} from '../../../config/ui-settings';\nimport UIFactory from '../../../UIFactory';\n\nexport function setTheme(theme: 'light' | 'dark' | 'system' | 'light-hc' | 'dark-hc') {\n return {type: GLOBAL_SET_THEME, data: theme};\n}\n\nlet usersInProgress = false;\n\ntype YTThunkAction<T = unknown> = ThunkAction<T, RootState, any, any>;\n\nexport function setAsideHeaderWidth(asideHeaderWidth: number): YTThunkAction {\n return (dispatch, getState) => {\n const oldWidth = getGlobalAsideHeaderWidth(getState());\n if (oldWidth !== asideHeaderWidth) {\n dispatch({type: GLOBAL_PARTIAL, data: {asideHeaderWidth}});\n }\n };\n}\n\nexport function loadUsersIfNotLoaded(): ThunkAction<any, RootState, any, any> {\n return (dispatch, getState) => {\n if (usersInProgress) {\n return Promise.resolve();\n }\n\n const users = getGlobalUsers(getState());\n if (users?.length) {\n return Promise.resolve();\n }\n\n usersInProgress = true;\n\n return listAllUsers(YTApiId.listUsersUM, {attributes: ['upravlyator_managed']})\n .then((users: Array<any>) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {users: normalizeResponseWithAttributes(users)},\n });\n usersInProgress = false;\n })\n .catch((e: any) => {\n usersInProgress = false;\n showErrorToaster(e, 'users', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {users: undefined},\n });\n dispatch(loadUsersIfNotLoaded());\n });\n });\n };\n}\n\nlet groupsInProgress = false;\n\nexport function loadGroupsIfNotLoaded(): ThunkAction<Promise<void>, RootState, any, any> {\n return (dispatch, getState) => {\n if (groupsInProgress) {\n return Promise.resolve();\n }\n\n const groups = getGlobalGroups(getState());\n if (groups?.length) {\n return Promise.resolve();\n }\n\n groupsInProgress = true;\n\n return listAllGroups(YTApiId.listGroups, {attributes: ['upravlyator_managed']})\n .then((data: Array<any>) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {\n groups: normalizeResponseWithAttributes(ypath.getValue(data)),\n },\n });\n groupsInProgress = false;\n })\n .catch((e: any) => {\n groupsInProgress = false;\n showErrorToaster(e, 'groups', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {groups: undefined},\n });\n dispatch(loadGroupsIfNotLoaded());\n });\n });\n };\n}\n\nlet accountsInProgress = false;\nexport function loadAccountsIfNotLoaded(): ThunkAction<Promise<void>, RootState, any, any> {\n return (dispatch, getState) => {\n if (accountsInProgress) {\n return Promise.resolve();\n }\n\n const groups = getGlobalGroups(getState());\n if (groups?.length) {\n return Promise.resolve();\n }\n\n accountsInProgress = true;\n\n return ytApiV3Id\n .list(YTApiId.listAccounts, {path: '//sys/accounts', ...USE_MAX_SIZE, ...USE_CACHE})\n .then((data: Array<any>) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {accounts: ypath.getValue(data)},\n });\n accountsInProgress = false;\n })\n .catch((e: any) => {\n accountsInProgress = false;\n showErrorToaster(e, 'accounts', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {accounts: undefined},\n });\n dispatch(loadAccountsIfNotLoaded());\n });\n });\n };\n}\n\nlet bundlesInProgress = false;\n\nexport function loadBundlesIfNotLoaded(): ThunkAction<any, RootState, any, any> {\n return (dispatch, getState) => {\n if (bundlesInProgress) {\n return Promise.resolve();\n }\n\n const bundles = getBundles(getState());\n if (bundles?.length) {\n return Promise.resolve();\n }\n\n bundlesInProgress = true;\n\n return ytApiV3Id\n .list(YTApiId.listBundles, {\n path: '//sys/tablet_cell_bundles',\n attributes: ['nodes'],\n ...USE_MAX_SIZE,\n ...USE_CACHE,\n })\n .then((data: unknown) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {bundles: ypath.getValue(data)},\n });\n bundlesInProgress = false;\n })\n .catch((e: any) => {\n showErrorToaster(e, 'bundles', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {bundles: undefined},\n });\n dispatch(loadBundlesIfNotLoaded());\n });\n bundlesInProgress = false;\n });\n };\n}\n\nlet poolTreesInProgress = false;\nexport function loadPoolTreesIfNotLoaded(): ThunkAction<Promise<void>, RootState, any, any> {\n return (dispatch, getState) => {\n if (poolTreesInProgress) {\n return Promise.resolve();\n }\n\n const trees = getPoolTrees(getState());\n if (!_.isEmpty(trees)) {\n return Promise.resolve();\n }\n\n poolTreesInProgress = true;\n\n return Promise.all([ytGetPoolTrees(), loadDefaultPoolTree()])\n .then(([data, poolTreeDefault]) => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {poolTrees: ypath.getValue(data), poolTreeDefault},\n });\n poolTreesInProgress = false;\n })\n .catch((e: any) => {\n showErrorToaster(e, 'pools', () => {\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {poolTrees: undefined, defaultPoolTree: undefined},\n });\n dispatch(loadPoolTreesIfNotLoaded());\n });\n poolTreesInProgress = false;\n });\n };\n}\n\nfunction showErrorToaster(\n error: any,\n listType: 'users' | 'groups' | 'bundles' | 'accounts' | 'pools',\n reloadFn: () => void,\n) {\n const toaster = new Toaster();\n toaster.add({\n name: `global/${listType}`,\n autoHiding: false,\n type: 'error',\n content: 'If the problem persists, please report the error.',\n title: `Failed to load list of ${listType}`,\n actions: [\n {label: ' Details ', onClick: () => showErrorPopup(error)},\n {\n label: ' Reload ',\n onClick: reloadFn,\n },\n ],\n });\n}\n\nexport function updateTitle({\n path,\n page,\n cluster,\n}: {\n path: string;\n page: string;\n cluster: string;\n}): YTThunkAction {\n return (dispatch, getState) => {\n const clusters = getState().clustersMenu.clusters;\n dispatch({\n type: UPDATE_TITLE,\n data: {path, page, cluster, clusters},\n });\n };\n}\n\nexport function addNavigationBlocker() {\n return {\n type: INC_NAV_BLOCKER_COUNTER,\n };\n}\n\nexport function removeNavigationBlocker() {\n return {\n type: DEC_NAV_BLOCKER_COUNTER,\n };\n}\n\nexport function setMaintenancePageEvent(events: Array<unknown>, isFirstUpdate: boolean) {\n return {\n type: SET_MAINTENANCE_PAGE_EVENT,\n data: {events, isFirstUpdate},\n };\n}\n\nexport function splitScreen(type: string, paneClassNames: Array<string> = []) {\n document.body.style.overflow = 'hidden';\n\n return {\n type: SPLIT_SCREEN,\n data: {paneClassNames, type},\n };\n}\n\nexport function mergeScreen() {\n document.body.style.overflow = '';\n\n return {\n type: MERGE_SCREEN,\n };\n}\n\nexport function handleAuthError({ytAuthCluster}: {ytAuthCluster?: string} = {}) {\n if (getConfigData().allowLoginDialog) {\n if (!ytAuthCluster) {\n const toaster = new Toaster();\n\n toaster.add({\n name: `global/ytAuthCluster}`,\n autoHiding: false,\n type: 'error',\n content: 'If the problem persists, please report the error.',\n title: `Failed to show a login form. ytAuthCluster is not defined`,\n });\n\n return;\n }\n\n getWindowStore().dispatch({\n type: GLOBAL_PARTIAL,\n data: {showLoginDialog: true, ytAuthCluster},\n });\n }\n}\n\nexport function onSuccessLogin(login: string): YTThunkAction {\n return async (dispatch) => {\n try {\n await await dispatch(reloadUserSettings(login));\n } catch (e) {}\n YT.parameters.login = login;\n dispatch({\n type: GLOBAL_PARTIAL,\n data: {showLoginDialog: false, login, ytAuthCluster: undefined},\n });\n };\n}\n\nexport function setRootPagesCluster(rootPagesCluster: string | undefined) {\n return {type: GLOBAL_PARTIAL, data: {rootPagesCluster}};\n}\n\nexport function loadAllowedExperimentalPages(): YTThunkAction {\n return (dispatch, getState) => {\n const login = getCurrentUserName(getState());\n return UIFactory.getAllowedExperimentalPages(login).then((allowedExperimentalPages) => {\n dispatch({type: GLOBAL_PARTIAL, data: {allowedExperimentalPages}});\n });\n };\n}\n"],"mappings":"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"}
|
@@ -2,7 +2,7 @@ import { ThunkAction } from 'redux-thunk';
|
|
2
2
|
import { RootState } from '../../../../../store/reducers';
|
3
3
|
type ColumnPresetThunkAction = ThunkAction<any, RootState, any, any>;
|
4
4
|
export declare function loadColumnPresetIfDefined(): ColumnPresetThunkAction;
|
5
|
-
export declare function saveColumnPreset(columnsEncoded: Array<string
|
5
|
+
export declare function saveColumnPreset(columnsEncoded: Array<string>, cluster: string): Promise<string>;
|
6
6
|
export declare function setTablePresetHash(hash?: string): {
|
7
7
|
type: string;
|
8
8
|
data: string | undefined;
|
@@ -9,7 +9,9 @@ import { getCluster } from '../../../../../store/selectors/global';
|
|
9
9
|
import { getColumnsPreset, getColumnsPresetHash, getIsDynamic } from '../../../../../store/selectors/navigation/content/table-ts';
|
10
10
|
import { YTApiId } from '../../../../../rum/rum-wrap-api';
|
11
11
|
import { makeTableRumId } from './table-rum-id';
|
12
|
-
var
|
12
|
+
var getColumnPresetEndpoint = function getColumnPresetEndpoint(cluster) {
|
13
|
+
return "/api/table-column-preset/".concat(cluster);
|
14
|
+
};
|
13
15
|
var utf8 = unipika.utils.utf8;
|
14
16
|
export function loadColumnPresetIfDefined() {
|
15
17
|
return function (dispatch, getState) {
|
@@ -31,7 +33,7 @@ export function loadColumnPresetIfDefined() {
|
|
31
33
|
});
|
32
34
|
return id.fetch(YTApiId.ui_loadColumnPreset, axios.request({
|
33
35
|
method: 'GET',
|
34
|
-
url: "".concat(
|
36
|
+
url: "".concat(getColumnPresetEndpoint(cluster), "/").concat(hashToLoad),
|
35
37
|
headers: {
|
36
38
|
'content-type': 'application/json'
|
37
39
|
}
|
@@ -63,11 +65,11 @@ export function loadColumnPresetIfDefined() {
|
|
63
65
|
});
|
64
66
|
};
|
65
67
|
}
|
66
|
-
export function saveColumnPreset(columnsEncoded) {
|
68
|
+
export function saveColumnPreset(columnsEncoded, cluster) {
|
67
69
|
var columns = _map(columnsEncoded, utf8.decode);
|
68
70
|
return wrapApiPromiseByToaster(axios.request({
|
69
71
|
method: 'POST',
|
70
|
-
url:
|
72
|
+
url: getColumnPresetEndpoint(cluster),
|
71
73
|
headers: {
|
72
74
|
'content-type': 'application/json'
|
73
75
|
},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["axios","unipika","Toaster","SET_TABLE_COLUMNS_PRESET","SET_TABLE_COLUMNS_PRESET_HASH","showErrorPopup","wrapApiPromiseByToaster","getCluster","getColumnsPreset","getColumnsPresetHash","getIsDynamic","YTApiId","makeTableRumId","
|
1
|
+
{"version":3,"names":["axios","unipika","Toaster","SET_TABLE_COLUMNS_PRESET","SET_TABLE_COLUMNS_PRESET_HASH","showErrorPopup","wrapApiPromiseByToaster","getCluster","getColumnsPreset","getColumnsPresetHash","getIsDynamic","YTApiId","makeTableRumId","getColumnPresetEndpoint","cluster","concat","utf8","utils","loadColumnPresetIfDefined","dispatch","getState","state","hashToLoad","Promise","resolve","_getColumnsPreset","hash","isDynamic","id","fetch","ui_loadColumnPreset","request","method","url","headers","then","_ref","_ref$data","data","columns","presetHash","setTablePreset","error","setTablePresetError","add","type","name","title","content","message","actions","label","onClick","_error$response","response","reject","saveColumnPreset","columnsEncoded","_map","decode","skipSuccessToast","toasterName","errorContent","res","setTablePresetHash","encode","undefined"],"sources":["columns-preset.ts"],"sourcesContent":["import axios from 'axios';\nimport _ from 'lodash';\nimport {ThunkAction} from 'redux-thunk';\n\n// @ts-ignore\nimport unipika from '../../../../../common/thor/unipika';\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport {\n SET_TABLE_COLUMNS_PRESET,\n SET_TABLE_COLUMNS_PRESET_HASH,\n} from '../../../../../constants/navigation/content/table';\nimport {showErrorPopup, wrapApiPromiseByToaster} from '../../../../../utils/utils';\nimport {getCluster} from '../../../../../store/selectors/global';\nimport {\n getColumnsPreset,\n getColumnsPresetHash,\n getIsDynamic,\n} from '../../../../../store/selectors/navigation/content/table-ts';\nimport {RootState} from '../../../../../store/reducers';\nimport {YTApiId} from '../../../../../rum/rum-wrap-api';\nimport {makeTableRumId} from './table-rum-id';\n\nconst getColumnPresetEndpoint = (cluster: string) => `/api/table-column-preset/${cluster}`;\n\ntype ColumnPresetThunkAction = ThunkAction<any, RootState, any, any>;\n\nconst {utf8} = unipika.utils;\n\nexport function loadColumnPresetIfDefined(): ColumnPresetThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const hashToLoad = getColumnsPresetHash(state);\n if (!hashToLoad) {\n return Promise.resolve();\n }\n\n const {hash} = getColumnsPreset(state);\n if (hashToLoad === hash) {\n return Promise.resolve();\n }\n\n const cluster = getCluster(state);\n const isDynamic = getIsDynamic(state);\n const id = makeTableRumId({cluster, isDynamic});\n\n return id\n .fetch(\n YTApiId.ui_loadColumnPreset,\n axios.request<{columns: Array<string>; hash: string}>({\n method: 'GET',\n url: `${getColumnPresetEndpoint(cluster)}/${hashToLoad}`,\n headers: {'content-type': 'application/json'},\n }),\n )\n .then(({data: {columns, hash}}) => {\n const presetHash = getColumnsPresetHash(getState());\n if (presetHash !== hash) {\n return;\n }\n\n dispatch(setTablePreset(columns, hash));\n })\n .catch((error) => {\n dispatch(setTablePresetError(error));\n\n new Toaster().add({\n type: 'error',\n name: 'loadColumnPreset',\n title: 'Failed to get preset of columns',\n content: error.message,\n actions: [\n {\n label: ' Details',\n onClick() {\n showErrorPopup(error?.response?.data || error);\n },\n },\n ],\n });\n\n return Promise.reject(error);\n });\n };\n}\n\nexport function saveColumnPreset(columnsEncoded: Array<string>, cluster: string): Promise<string> {\n const columns = _.map(columnsEncoded, utf8.decode);\n return wrapApiPromiseByToaster(\n axios.request<string>({\n method: 'POST',\n url: getColumnPresetEndpoint(cluster),\n headers: {'content-type': 'application/json'},\n data: columns,\n }),\n {\n skipSuccessToast: true,\n toasterName: 'saveColumnPreset',\n errorContent: 'Failed to save preset of columns',\n },\n ).then((res) => {\n const hash = res.data;\n return hash;\n });\n}\n\nexport function setTablePresetHash(hash?: string) {\n return {\n type: SET_TABLE_COLUMNS_PRESET_HASH,\n data: hash,\n };\n}\n\nfunction setTablePreset(columns: Array<string>, hash: string) {\n const columnsEncoded = _.map(columns, utf8.encode);\n return {\n type: SET_TABLE_COLUMNS_PRESET,\n data: {error: undefined, columns: columnsEncoded, hash},\n };\n}\n\nfunction setTablePresetError(error: unknown) {\n return {\n type: SET_TABLE_COLUMNS_PRESET,\n data: {error, columns: undefined, hash: undefined},\n };\n}\n"],"mappings":"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"}
|
@@ -516,7 +516,8 @@ export function rememberPresetColumnsAsDefault() {
|
|
516
516
|
export function openTableWithPresetOfColumns() {
|
517
517
|
return function (dispatch, getState) {
|
518
518
|
var visibleColumns = getVisibleColumns(getState());
|
519
|
-
|
519
|
+
var cluster = getCluster(getState());
|
520
|
+
saveColumnPreset(_map(visibleColumns, 'name'), cluster).then(function (hash) {
|
520
521
|
var href = window.location.href;
|
521
522
|
var url = "".concat(href, "&columns=").concat(hash);
|
522
523
|
openInNewTab(url);
|