@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
@@ -1,6 +1,7 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
interface Props {
|
3
3
|
theme?: 'light' | 'dark';
|
4
|
+
cluster: string;
|
4
5
|
}
|
5
|
-
export declare function ChangePasswordFormPage({ theme }: Props): React.JSX.Element;
|
6
|
+
export declare function ChangePasswordFormPage({ theme, cluster }: Props): React.JSX.Element;
|
6
7
|
export {};
|
@@ -30,7 +30,8 @@ var validate = function validate(_ref) {
|
|
30
30
|
return result;
|
31
31
|
};
|
32
32
|
function ChangePasswordForm(_ref2) {
|
33
|
-
var theme = _ref2.theme
|
33
|
+
var theme = _ref2.theme,
|
34
|
+
cluster = _ref2.cluster;
|
34
35
|
var history = useHistory();
|
35
36
|
var location = useLocation();
|
36
37
|
var _useState = useState(''),
|
@@ -83,7 +84,8 @@ function ChangePasswordForm(_ref2) {
|
|
83
84
|
setLoading(true);
|
84
85
|
changePassword({
|
85
86
|
newPassword: newPassword,
|
86
|
-
currentPassword: currentPassword
|
87
|
+
currentPassword: currentPassword,
|
88
|
+
cluster: cluster
|
87
89
|
}).then(function () {
|
88
90
|
goBack();
|
89
91
|
wrapApiPromiseByToaster(Promise.resolve(), {
|
@@ -183,18 +185,21 @@ function ChangePasswordForm(_ref2) {
|
|
183
185
|
}
|
184
186
|
function changePassword(_ref4) {
|
185
187
|
var newPassword = _ref4.newPassword,
|
186
|
-
currentPassword = _ref4.currentPassword
|
187
|
-
|
188
|
+
currentPassword = _ref4.currentPassword,
|
189
|
+
cluster = _ref4.cluster;
|
190
|
+
return axios.post("/api/yt/".concat(cluster, "/change-password"), {
|
188
191
|
newPassword: newPassword,
|
189
192
|
currentPassword: currentPassword
|
190
193
|
});
|
191
194
|
}
|
192
195
|
export function ChangePasswordFormPage(_ref5) {
|
193
|
-
var theme = _ref5.theme
|
196
|
+
var theme = _ref5.theme,
|
197
|
+
cluster = _ref5.cluster;
|
194
198
|
return /*#__PURE__*/_jsx(LoginPageWrapper, {
|
195
199
|
theme: theme,
|
196
200
|
children: /*#__PURE__*/_jsx(ChangePasswordForm, {
|
197
|
-
theme: theme
|
201
|
+
theme: theme,
|
202
|
+
cluster: cluster
|
198
203
|
})
|
199
204
|
});
|
200
205
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","useCallback","useState","Button","TextInput","cn","LoginPageWrapper","axios","useHistory","useLocation","wrapApiPromiseByToaster","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","block","validate","_ref","currentPassword","newPassword","confirmPassword","result","ChangePasswordForm","_ref2","theme","history","location","_useState","_useState2","_slicedToArray","setCurrentPassword","_useState3","_useState4","setNewPassword","_useState5","_useState6","setConfirmPassword","_React$useState","_React$useState2","errors","setErrors","_useState7","_useState8","loading","setLoading","goBack","key","push","handleFormSubmit","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","e","validationErrors","wrap","_callee$","_context","prev","next","preventDefault","_isEmpty","abrupt","changePassword","then","Promise","resolve","skipSuccessToast","toasterName","successTitle","error","_error$response$data$","_error$response","msg","response","data","message","stop","_x","apply","arguments","children","className","onSubmit","password","type","size","placeholder","name","value","onUpdate","solid","width","pin","view","outline","onClick","_ref4","post","ChangePasswordFormPage","_ref5"],"sources":["ChangePasswordFormPage.tsx"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport {Button, TextInput} from '@gravity-ui/uikit';\nimport cn from 'bem-cn-lite';\nimport LoginPageWrapper from '../LoginPageWrapper/LoginPageWrapper';\nimport axios from 'axios';\nimport {useHistory, useLocation} from 'react-router';\nimport {wrapApiPromiseByToaster} from '../../../utils/utils';\nimport _ from 'lodash';\n\nconst block = cn('login-page');\n\ninterface Props {\n theme?: 'light' | 'dark';\n}\n\ninterface ErrorFields {\n currentPassword?: string;\n newPassword?: string;\n confirmPassword?: string;\n}\n\nconst validate = ({\n currentPassword,\n newPassword,\n confirmPassword,\n}: Record<keyof ErrorFields, string>): ErrorFields => {\n const result: ErrorFields = {};\n if (currentPassword === '') {\n result.currentPassword = 'Current password must not be empty';\n }\n\n if (newPassword === '') {\n result.newPassword = 'New password must not be empty';\n }\n\n if (newPassword !== confirmPassword) {\n result.confirmPassword = 'New and confirm password must be equal';\n }\n\n return result;\n};\n\nfunction ChangePasswordForm({theme}: Props) {\n const history = useHistory();\n const location = useLocation();\n const [currentPassword, setCurrentPassword] = useState('');\n const [newPassword, setNewPassword] = useState('');\n const [confirmPassword, setConfirmPassword] = useState('');\n const [errors, setErrors] = React.useState<ErrorFields>({});\n const [loading, setLoading] = useState<boolean>(false);\n\n const goBack = useCallback(() => {\n if (location.key) {\n history.goBack();\n } else {\n history.push('/');\n }\n }, [history, location]);\n\n const handleFormSubmit = useCallback(\n async (e: React.FormEvent) => {\n e.preventDefault();\n setErrors({});\n\n const validationErrors = validate({currentPassword, newPassword, confirmPassword});\n if (!_.isEmpty(validationErrors)) {\n setErrors(validationErrors);\n return;\n }\n\n setLoading(true);\n changePassword({newPassword, currentPassword})\n .then(() => {\n goBack();\n wrapApiPromiseByToaster(Promise.resolve(), {\n skipSuccessToast: false,\n toasterName: 'change-password-success',\n successTitle: 'Password was changed.',\n });\n })\n .catch((error: any) => {\n const msg = error.response?.data?.message ?? error.message;\n setErrors({currentPassword: msg});\n })\n .finally(() => {\n setLoading(false);\n });\n },\n [currentPassword, newPassword, confirmPassword, goBack],\n );\n\n return (\n <>\n <h1 className={block('title')}>Create new password</h1>\n <p className={block('text')}>\n Your new password must be different from previous used passwords.\n </p>\n <form onSubmit={handleFormSubmit}>\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"Current password\"\n name=\"current-password\"\n value={currentPassword}\n onUpdate={setCurrentPassword}\n error={errors.currentPassword}\n />\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"New password\"\n name=\"new-password\"\n value={newPassword}\n onUpdate={setNewPassword}\n error={errors.newPassword}\n />\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"Confirm password\"\n name=\"confirm-password\"\n value={confirmPassword}\n onUpdate={setConfirmPassword}\n error={errors.confirmPassword}\n />\n <Button\n className={block('button', {solid: true})}\n type=\"submit\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n view={theme === 'light' ? 'action' : 'normal-contrast'}\n loading={loading}\n >\n Reset Password\n </Button>\n </form>\n <div className={block('navigate')}>\n <Button\n className={block('button', {outline: true})}\n type=\"button\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n onClick={goBack}\n view=\"outlined\"\n >\n Back\n </Button>\n </div>\n </>\n );\n}\n\nfunction changePassword({\n newPassword,\n currentPassword,\n}: {\n newPassword: string;\n currentPassword: string;\n}) {\n return axios.post(`/api/yt/change-password`, {\n newPassword,\n currentPassword,\n });\n}\n\nexport function ChangePasswordFormPage({theme}: Props) {\n return (\n <LoginPageWrapper theme={theme}>\n <ChangePasswordForm theme={theme} />\n </LoginPageWrapper>\n );\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["React","useCallback","useState","Button","TextInput","cn","LoginPageWrapper","axios","useHistory","useLocation","wrapApiPromiseByToaster","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","block","validate","_ref","currentPassword","newPassword","confirmPassword","result","ChangePasswordForm","_ref2","theme","cluster","history","location","_useState","_useState2","_slicedToArray","setCurrentPassword","_useState3","_useState4","setNewPassword","_useState5","_useState6","setConfirmPassword","_React$useState","_React$useState2","errors","setErrors","_useState7","_useState8","loading","setLoading","goBack","key","push","handleFormSubmit","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","e","validationErrors","wrap","_callee$","_context","prev","next","preventDefault","_isEmpty","abrupt","changePassword","then","Promise","resolve","skipSuccessToast","toasterName","successTitle","error","_error$response$data$","_error$response","msg","response","data","message","stop","_x","apply","arguments","children","className","onSubmit","password","type","size","placeholder","name","value","onUpdate","solid","width","pin","view","outline","onClick","_ref4","post","concat","ChangePasswordFormPage","_ref5"],"sources":["ChangePasswordFormPage.tsx"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport {Button, TextInput} from '@gravity-ui/uikit';\nimport cn from 'bem-cn-lite';\nimport LoginPageWrapper from '../LoginPageWrapper/LoginPageWrapper';\nimport axios from 'axios';\nimport {useHistory, useLocation} from 'react-router';\nimport {wrapApiPromiseByToaster} from '../../../utils/utils';\nimport _ from 'lodash';\n\nconst block = cn('login-page');\n\ninterface Props {\n theme?: 'light' | 'dark';\n cluster: string;\n}\n\ninterface ErrorFields {\n currentPassword?: string;\n newPassword?: string;\n confirmPassword?: string;\n}\n\nconst validate = ({\n currentPassword,\n newPassword,\n confirmPassword,\n}: Record<keyof ErrorFields, string>): ErrorFields => {\n const result: ErrorFields = {};\n if (currentPassword === '') {\n result.currentPassword = 'Current password must not be empty';\n }\n\n if (newPassword === '') {\n result.newPassword = 'New password must not be empty';\n }\n\n if (newPassword !== confirmPassword) {\n result.confirmPassword = 'New and confirm password must be equal';\n }\n\n return result;\n};\n\nfunction ChangePasswordForm({theme, cluster}: Props) {\n const history = useHistory();\n const location = useLocation();\n const [currentPassword, setCurrentPassword] = useState('');\n const [newPassword, setNewPassword] = useState('');\n const [confirmPassword, setConfirmPassword] = useState('');\n const [errors, setErrors] = React.useState<ErrorFields>({});\n const [loading, setLoading] = useState<boolean>(false);\n\n const goBack = useCallback(() => {\n if (location.key) {\n history.goBack();\n } else {\n history.push('/');\n }\n }, [history, location]);\n\n const handleFormSubmit = useCallback(\n async (e: React.FormEvent) => {\n e.preventDefault();\n setErrors({});\n\n const validationErrors = validate({currentPassword, newPassword, confirmPassword});\n if (!_.isEmpty(validationErrors)) {\n setErrors(validationErrors);\n return;\n }\n\n setLoading(true);\n changePassword({newPassword, currentPassword, cluster})\n .then(() => {\n goBack();\n wrapApiPromiseByToaster(Promise.resolve(), {\n skipSuccessToast: false,\n toasterName: 'change-password-success',\n successTitle: 'Password was changed.',\n });\n })\n .catch((error: any) => {\n const msg = error.response?.data?.message ?? error.message;\n setErrors({currentPassword: msg});\n })\n .finally(() => {\n setLoading(false);\n });\n },\n [currentPassword, newPassword, confirmPassword, goBack],\n );\n\n return (\n <>\n <h1 className={block('title')}>Create new password</h1>\n <p className={block('text')}>\n Your new password must be different from previous used passwords.\n </p>\n <form onSubmit={handleFormSubmit}>\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"Current password\"\n name=\"current-password\"\n value={currentPassword}\n onUpdate={setCurrentPassword}\n error={errors.currentPassword}\n />\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"New password\"\n name=\"new-password\"\n value={newPassword}\n onUpdate={setNewPassword}\n error={errors.newPassword}\n />\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"Confirm password\"\n name=\"confirm-password\"\n value={confirmPassword}\n onUpdate={setConfirmPassword}\n error={errors.confirmPassword}\n />\n <Button\n className={block('button', {solid: true})}\n type=\"submit\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n view={theme === 'light' ? 'action' : 'normal-contrast'}\n loading={loading}\n >\n Reset Password\n </Button>\n </form>\n <div className={block('navigate')}>\n <Button\n className={block('button', {outline: true})}\n type=\"button\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n onClick={goBack}\n view=\"outlined\"\n >\n Back\n </Button>\n </div>\n </>\n );\n}\n\nfunction changePassword({\n newPassword,\n currentPassword,\n cluster,\n}: {\n newPassword: string;\n currentPassword: string;\n cluster: string;\n}) {\n return axios.post(`/api/yt/${cluster}/change-password`, {\n newPassword,\n currentPassword,\n });\n}\n\nexport function ChangePasswordFormPage({theme, cluster}: Props) {\n return (\n <LoginPageWrapper theme={theme}>\n <ChangePasswordForm theme={theme} cluster={cluster} />\n </LoginPageWrapper>\n );\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAGC,WAAW,EAAEC,QAAQ,QAAO,OAAO;AAClD,SAAQC,MAAM,EAAEC,SAAS,QAAO,mBAAmB;AACnD,OAAOC,EAAE,MAAM,aAAa;AAC5B,OAAOC,gBAAgB,MAAM,sCAAsC;AACnE,OAAOC,KAAK,MAAM,OAAO;AACzB,SAAQC,UAAU,EAAEC,WAAW,QAAO,cAAc;AACpD,SAAQC,uBAAuB,QAAO,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAG7D,IAAMC,KAAK,GAAGZ,EAAE,CAAC,YAAY,CAAC;AAa9B,IAAMa,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAIwC;EAAA,IAHlDC,eAAe,GAAAD,IAAA,CAAfC,eAAe;IACfC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,eAAe,GAAAH,IAAA,CAAfG,eAAe;EAEf,IAAMC,MAAmB,GAAG,CAAC,CAAC;EAC9B,IAAIH,eAAe,KAAK,EAAE,EAAE;IACxBG,MAAM,CAACH,eAAe,GAAG,oCAAoC;EACjE;EAEA,IAAIC,WAAW,KAAK,EAAE,EAAE;IACpBE,MAAM,CAACF,WAAW,GAAG,gCAAgC;EACzD;EAEA,IAAIA,WAAW,KAAKC,eAAe,EAAE;IACjCC,MAAM,CAACD,eAAe,GAAG,wCAAwC;EACrE;EAEA,OAAOC,MAAM;AACjB,CAAC;AAED,SAASC,kBAAkBA,CAAAC,KAAA,EAA0B;EAAA,IAAxBC,KAAK,GAAAD,KAAA,CAALC,KAAK;IAAEC,OAAO,GAAAF,KAAA,CAAPE,OAAO;EACvC,IAAMC,OAAO,GAAGpB,UAAU,CAAC,CAAC;EAC5B,IAAMqB,QAAQ,GAAGpB,WAAW,CAAC,CAAC;EAC9B,IAAAqB,SAAA,GAA8C5B,QAAQ,CAAC,EAAE,CAAC;IAAA6B,UAAA,GAAAC,cAAA,CAAAF,SAAA;IAAnDV,eAAe,GAAAW,UAAA;IAAEE,kBAAkB,GAAAF,UAAA;EAC1C,IAAAG,UAAA,GAAsChC,QAAQ,CAAC,EAAE,CAAC;IAAAiC,UAAA,GAAAH,cAAA,CAAAE,UAAA;IAA3Cb,WAAW,GAAAc,UAAA;IAAEC,cAAc,GAAAD,UAAA;EAClC,IAAAE,UAAA,GAA8CnC,QAAQ,CAAC,EAAE,CAAC;IAAAoC,UAAA,GAAAN,cAAA,CAAAK,UAAA;IAAnDf,eAAe,GAAAgB,UAAA;IAAEC,kBAAkB,GAAAD,UAAA;EAC1C,IAAAE,eAAA,GAA4BxC,KAAK,CAACE,QAAQ,CAAc,CAAC,CAAC,CAAC;IAAAuC,gBAAA,GAAAT,cAAA,CAAAQ,eAAA;IAApDE,MAAM,GAAAD,gBAAA;IAAEE,SAAS,GAAAF,gBAAA;EACxB,IAAAG,UAAA,GAA8B1C,QAAQ,CAAU,KAAK,CAAC;IAAA2C,UAAA,GAAAb,cAAA,CAAAY,UAAA;IAA/CE,OAAO,GAAAD,UAAA;IAAEE,UAAU,GAAAF,UAAA;EAE1B,IAAMG,MAAM,GAAG/C,WAAW,CAAC,YAAM;IAC7B,IAAI4B,QAAQ,CAACoB,GAAG,EAAE;MACdrB,OAAO,CAACoB,MAAM,CAAC,CAAC;IACpB,CAAC,MAAM;MACHpB,OAAO,CAACsB,IAAI,CAAC,GAAG,CAAC;IACrB;EACJ,CAAC,EAAE,CAACtB,OAAO,EAAEC,QAAQ,CAAC,CAAC;EAEvB,IAAMsB,gBAAgB,GAAGlD,WAAW;IAAA,IAAAmD,KAAA,GAAAC,iBAAA,eAAAC,mBAAA,CAAAC,IAAA,CAChC,SAAAC,QAAOC,CAAkB;MAAA,IAAAC,gBAAA;MAAA,OAAAJ,mBAAA,CAAAK,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YACrBN,CAAC,CAACO,cAAc,CAAC,CAAC;YAClBrB,SAAS,CAAC,CAAC,CAAC,CAAC;YAEPe,gBAAgB,GAAGxC,QAAQ,CAAC;cAACE,eAAe,EAAfA,eAAe;cAAEC,WAAW,EAAXA,WAAW;cAAEC,eAAe,EAAfA;YAAe,CAAC,CAAC;YAAA,IAC7E2C,QAAA,CAAUP,gBAAgB,CAAC;cAAAG,QAAA,CAAAE,IAAA;cAAA;YAAA;YAC5BpB,SAAS,CAACe,gBAAgB,CAAC;YAAC,OAAAG,QAAA,CAAAK,MAAA;UAAA;YAIhCnB,UAAU,CAAC,IAAI,CAAC;YAChBoB,cAAc,CAAC;cAAC9C,WAAW,EAAXA,WAAW;cAAED,eAAe,EAAfA,eAAe;cAAEO,OAAO,EAAPA;YAAO,CAAC,CAAC,CAClDyC,IAAI,CAAC,YAAM;cACRpB,MAAM,CAAC,CAAC;cACRtC,uBAAuB,CAAC2D,OAAO,CAACC,OAAO,CAAC,CAAC,EAAE;gBACvCC,gBAAgB,EAAE,KAAK;gBACvBC,WAAW,EAAE,yBAAyB;gBACtCC,YAAY,EAAE;cAClB,CAAC,CAAC;YACN,CAAC,CAAC,SACI,CAAC,UAACC,KAAU,EAAK;cAAA,IAAAC,qBAAA,EAAAC,eAAA;cACnB,IAAMC,GAAG,IAAAF,qBAAA,IAAAC,eAAA,GAAGF,KAAK,CAACI,QAAQ,cAAAF,eAAA,gBAAAA,eAAA,GAAdA,eAAA,CAAgBG,IAAI,cAAAH,eAAA,uBAApBA,eAAA,CAAsBI,OAAO,cAAAL,qBAAA,cAAAA,qBAAA,GAAID,KAAK,CAACM,OAAO;cAC1DrC,SAAS,CAAC;gBAACvB,eAAe,EAAEyD;cAAG,CAAC,CAAC;YACrC,CAAC,CAAC,WACM,CAAC,YAAM;cACX9B,UAAU,CAAC,KAAK,CAAC;YACrB,CAAC,CAAC;UAAC;UAAA;YAAA,OAAAc,QAAA,CAAAoB,IAAA;QAAA;MAAA,GAAAzB,OAAA;IAAA,CACV;IAAA,iBAAA0B,EAAA;MAAA,OAAA9B,KAAA,CAAA+B,KAAA,OAAAC,SAAA;IAAA;EAAA,KACD,CAAChE,eAAe,EAAEC,WAAW,EAAEC,eAAe,EAAE0B,MAAM,CAC1D,CAAC;EAED,oBACIlC,KAAA,CAAAE,SAAA;IAAAqE,QAAA,gBACIzE,IAAA;MAAI0E,SAAS,EAAErE,KAAK,CAAC,OAAO,CAAE;MAAAoE,QAAA,EAAC;IAAmB,CAAI,CAAC,eACvDzE,IAAA;MAAG0E,SAAS,EAAErE,KAAK,CAAC,MAAM,CAAE;MAAAoE,QAAA,EAAC;IAE7B,CAAG,CAAC,eACJvE,KAAA;MAAMyE,QAAQ,EAAEpC,gBAAiB;MAAAkC,QAAA,gBAC7BzE,IAAA,CAACR,SAAS;QACNkF,SAAS,EAAErE,KAAK,CAAC,OAAO,EAAE;UAACuE,QAAQ,EAAE;QAAI,CAAC,CAAE;QAC5CC,IAAI,EAAC,UAAU;QACfC,IAAI,EAAC,GAAG;QACRC,WAAW,EAAC,kBAAkB;QAC9BC,IAAI,EAAC,kBAAkB;QACvBC,KAAK,EAAEzE,eAAgB;QACvB0E,QAAQ,EAAE7D,kBAAmB;QAC7ByC,KAAK,EAAEhC,MAAM,CAACtB;MAAgB,CACjC,CAAC,eACFR,IAAA,CAACR,SAAS;QACNkF,SAAS,EAAErE,KAAK,CAAC,OAAO,EAAE;UAACuE,QAAQ,EAAE;QAAI,CAAC,CAAE;QAC5CC,IAAI,EAAC,UAAU;QACfC,IAAI,EAAC,GAAG;QACRC,WAAW,EAAC,cAAc;QAC1BC,IAAI,EAAC,cAAc;QACnBC,KAAK,EAAExE,WAAY;QACnByE,QAAQ,EAAE1D,cAAe;QACzBsC,KAAK,EAAEhC,MAAM,CAACrB;MAAY,CAC7B,CAAC,eACFT,IAAA,CAACR,SAAS;QACNkF,SAAS,EAAErE,KAAK,CAAC,OAAO,EAAE;UAACuE,QAAQ,EAAE;QAAI,CAAC,CAAE;QAC5CC,IAAI,EAAC,UAAU;QACfC,IAAI,EAAC,GAAG;QACRC,WAAW,EAAC,kBAAkB;QAC9BC,IAAI,EAAC,kBAAkB;QACvBC,KAAK,EAAEvE,eAAgB;QACvBwE,QAAQ,EAAEvD,kBAAmB;QAC7BmC,KAAK,EAAEhC,MAAM,CAACpB;MAAgB,CACjC,CAAC,eACFV,IAAA,CAACT,MAAM;QACHmF,SAAS,EAAErE,KAAK,CAAC,QAAQ,EAAE;UAAC8E,KAAK,EAAE;QAAI,CAAC,CAAE;QAC1CN,IAAI,EAAC,QAAQ;QACbO,KAAK,EAAC,KAAK;QACXN,IAAI,EAAC,GAAG;QACRO,GAAG,EAAC,eAAe;QACnBC,IAAI,EAAExE,KAAK,KAAK,OAAO,GAAG,QAAQ,GAAG,iBAAkB;QACvDoB,OAAO,EAAEA,OAAQ;QAAAuC,QAAA,EACpB;MAED,CAAQ,CAAC;IAAA,CACP,CAAC,eACPzE,IAAA;MAAK0E,SAAS,EAAErE,KAAK,CAAC,UAAU,CAAE;MAAAoE,QAAA,eAC9BzE,IAAA,CAACT,MAAM;QACHmF,SAAS,EAAErE,KAAK,CAAC,QAAQ,EAAE;UAACkF,OAAO,EAAE;QAAI,CAAC,CAAE;QAC5CV,IAAI,EAAC,QAAQ;QACbO,KAAK,EAAC,KAAK;QACXN,IAAI,EAAC,GAAG;QACRO,GAAG,EAAC,eAAe;QACnBG,OAAO,EAAEpD,MAAO;QAChBkD,IAAI,EAAC,UAAU;QAAAb,QAAA,EAClB;MAED,CAAQ;IAAC,CACR,CAAC;EAAA,CACR,CAAC;AAEX;AAEA,SAASlB,cAAcA,CAAAkC,KAAA,EAQpB;EAAA,IAPChF,WAAW,GAAAgF,KAAA,CAAXhF,WAAW;IACXD,eAAe,GAAAiF,KAAA,CAAfjF,eAAe;IACfO,OAAO,GAAA0E,KAAA,CAAP1E,OAAO;EAMP,OAAOpB,KAAK,CAAC+F,IAAI,YAAAC,MAAA,CAAY5E,OAAO,uBAAoB;IACpDN,WAAW,EAAXA,WAAW;IACXD,eAAe,EAAfA;EACJ,CAAC,CAAC;AACN;AAEA,OAAO,SAASoF,sBAAsBA,CAAAC,KAAA,EAA0B;EAAA,IAAxB/E,KAAK,GAAA+E,KAAA,CAAL/E,KAAK;IAAEC,OAAO,GAAA8E,KAAA,CAAP9E,OAAO;EAClD,oBACIf,IAAA,CAACN,gBAAgB;IAACoB,KAAK,EAAEA,KAAM;IAAA2D,QAAA,eAC3BzE,IAAA,CAACY,kBAAkB;MAACE,KAAK,EAAEA,KAAM;MAACC,OAAO,EAAEA;IAAQ,CAAE;EAAC,CACxC,CAAC;AAE3B"}
|
@@ -7,7 +7,7 @@ import { useDispatch, useSelector } from 'react-redux';
|
|
7
7
|
import { Button, Text, TextInput } from '@gravity-ui/uikit';
|
8
8
|
import { onSuccessLogin } from '../../../store/actions/global';
|
9
9
|
import ytLocalStorage from '../../../utils/yt-local-storage';
|
10
|
-
import { getOAuthButtonLabel, getOAuthEnabled } from '../../../store/selectors/global';
|
10
|
+
import { getGlobalYTAuthCluster, getOAuthButtonLabel, getOAuthEnabled } from '../../../store/selectors/global';
|
11
11
|
import LoginPageWrapper from '../LoginPageWrapper/LoginPageWrapper';
|
12
12
|
import isEmpty from 'lodash/isEmpty';
|
13
13
|
import cn from 'bem-cn-lite';
|
@@ -28,7 +28,7 @@ var validate = function validate(_ref) {
|
|
28
28
|
return result;
|
29
29
|
};
|
30
30
|
function LoginForm(_ref2) {
|
31
|
-
var _ytLocalStorage$get;
|
31
|
+
var _ytLocalStorage$get, _useSelector;
|
32
32
|
var theme = _ref2.theme;
|
33
33
|
var dispatch = useDispatch();
|
34
34
|
var _useState = useState(((_ytLocalStorage$get = ytLocalStorage.get('loginDialog')) === null || _ytLocalStorage$get === void 0 ? void 0 : _ytLocalStorage$get.username) || ''),
|
@@ -37,6 +37,7 @@ function LoginForm(_ref2) {
|
|
37
37
|
setUsername = _useState2[1];
|
38
38
|
var allowOAuth = useSelector(getOAuthEnabled);
|
39
39
|
var buttonLabel = useSelector(getOAuthButtonLabel);
|
40
|
+
var ytAuthCluster = (_useSelector = useSelector(getGlobalYTAuthCluster)) !== null && _useSelector !== void 0 ? _useSelector : '';
|
40
41
|
var _useState3 = useState(''),
|
41
42
|
_useState4 = _slicedToArray(_useState3, 2),
|
42
43
|
password = _useState4[0],
|
@@ -63,7 +64,8 @@ function LoginForm(_ref2) {
|
|
63
64
|
setLoading(true);
|
64
65
|
authorize({
|
65
66
|
username: username,
|
66
|
-
password: password
|
67
|
+
password: password,
|
68
|
+
ytAuthCluster: ytAuthCluster
|
67
69
|
}).then( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
68
70
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
69
71
|
while (1) switch (_context.prev = _context.next) {
|
@@ -157,8 +159,9 @@ function LoginForm(_ref2) {
|
|
157
159
|
}
|
158
160
|
function authorize(_ref4) {
|
159
161
|
var username = _ref4.username,
|
160
|
-
password = _ref4.password
|
161
|
-
|
162
|
+
password = _ref4.password,
|
163
|
+
ytAuthCluster = _ref4.ytAuthCluster;
|
164
|
+
return axios.post("/api/yt/".concat(ytAuthCluster, "/login"), {
|
162
165
|
username: username,
|
163
166
|
password: password
|
164
167
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","useCallback","useState","axios","useDispatch","useSelector","Button","Text","TextInput","onSuccessLogin","ytLocalStorage","getOAuthButtonLabel","getOAuthEnabled","LoginPageWrapper","isEmpty","cn","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","block","validate","_ref","username","password","result","LoginForm","_ref2","_ytLocalStorage$get","theme","dispatch","_useState","get","_useState2","_slicedToArray","setUsername","allowOAuth","buttonLabel","_useState3","_useState4","setPassword","_useState5","_useState6","loading","setLoading","_React$useState","_React$useState2","errors","setErrors","handleFormSubmit","e","preventDefault","validationErrors","authorize","then","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","set","stop","error","response","data","message","children","className","onSubmit","type","size","placeholder","name","value","onUpdate","solid","submit","width","pin","view","link","href","as","color","_ref4","post","LoginFormPage","_ref5"],"sources":["LoginFormPage.tsx"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport axios, {AxiosError} from 'axios';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {Button, Text, TextInput} from '@gravity-ui/uikit';\nimport {onSuccessLogin} from '../../../store/actions/global';\nimport ytLocalStorage from '../../../utils/yt-local-storage';\nimport {getOAuthButtonLabel, getOAuthEnabled} from '../../../store/selectors/global';\nimport LoginPageWrapper from '../LoginPageWrapper/LoginPageWrapper';\nimport isEmpty from 'lodash/isEmpty';\n\nimport cn from 'bem-cn-lite';\n\nconst block = cn('login-page');\n\ninterface ErrorFields {\n username?: string;\n password?: string;\n response?: string;\n}\n\ninterface Props {\n theme?: 'light' | 'dark';\n}\n\nconst validate = ({\n username,\n password,\n}: Record<keyof Omit<ErrorFields, 'response'>, string>): ErrorFields => {\n const result: ErrorFields = {};\n if (username === '') {\n result.username = 'Username must not be empty';\n }\n\n if (password === '') {\n result.password = 'Password must not be empty';\n }\n\n return result;\n};\n\nfunction LoginForm({theme}: Props) {\n const dispatch = useDispatch();\n const [username, setUsername] = useState(ytLocalStorage.get('loginDialog')?.username || '');\n const allowOAuth = useSelector(getOAuthEnabled);\n const buttonLabel = useSelector(getOAuthButtonLabel);\n const [password, setPassword] = useState('');\n const [loading, setLoading] = useState<boolean>(false);\n const [errors, setErrors] = React.useState<ErrorFields>({});\n\n const handleFormSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n setErrors({});\n const validationErrors = validate({username, password});\n if (!isEmpty(validationErrors)) {\n setErrors(validationErrors);\n return;\n }\n setLoading(true);\n authorize({username, password})\n .then(async () => {\n ytLocalStorage.set('loginDialog', {username});\n dispatch(onSuccessLogin(username));\n })\n .catch((error: AxiosError<Error>) => {\n if (error.response && error.response.data && error.response.data.message) {\n setErrors({\n response: error.response.data.message,\n });\n } else {\n setErrors({response: error.message});\n }\n })\n .finally(() => {\n setLoading(false);\n });\n },\n [username, password, dispatch],\n );\n\n return (\n <>\n <h1 className={block('title')}>Welcome to YTsaurus!</h1>\n <p className={block('text')}>\n A unified scalable platform for storing and processing large volumes of data.\n <br />\n <br />\n Login to your account.\n </p>\n <form onSubmit={handleFormSubmit}>\n <TextInput\n className={block('field')}\n type=\"text\"\n size=\"l\"\n placeholder=\"Login\"\n name=\"username\"\n value={username}\n onUpdate={setUsername}\n error={errors.username}\n />\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"Password\"\n name=\"password\"\n value={password}\n onUpdate={setPassword}\n error={errors.password}\n />\n\n <Button\n className={block('button', {solid: true, submit: true})}\n type=\"submit\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n view={theme === 'light' ? 'action' : 'normal-contrast'}\n loading={loading}\n >\n Login\n </Button>\n\n {allowOAuth && (\n <Button\n className={block('button', {solid: true, link: true, submit: true})}\n type=\"submit\"\n href=\"/oauth/login\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n view={theme === 'light' ? 'action' : 'normal-contrast'}\n loading={loading}\n >\n {buttonLabel || 'Login via SSO'}\n </Button>\n )}\n\n {errors.response && (\n <Text as=\"p\" color=\"danger\" className={block('error')}>\n {errors.response}\n </Text>\n )}\n </form>\n </>\n );\n}\n\nfunction authorize({username, password}: {username: string; password: string}) {\n return axios.post(`/api/yt/login`, {\n username,\n password,\n });\n}\n\nexport function LoginFormPage({theme}: Props) {\n return (\n <LoginPageWrapper theme={theme}>\n <LoginForm theme={theme} />\n </LoginPageWrapper>\n );\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["React","useCallback","useState","axios","useDispatch","useSelector","Button","Text","TextInput","onSuccessLogin","ytLocalStorage","getGlobalYTAuthCluster","getOAuthButtonLabel","getOAuthEnabled","LoginPageWrapper","isEmpty","cn","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","block","validate","_ref","username","password","result","LoginForm","_ref2","_ytLocalStorage$get","_useSelector","theme","dispatch","_useState","get","_useState2","_slicedToArray","setUsername","allowOAuth","buttonLabel","ytAuthCluster","_useState3","_useState4","setPassword","_useState5","_useState6","loading","setLoading","_React$useState","_React$useState2","errors","setErrors","handleFormSubmit","e","preventDefault","validationErrors","authorize","then","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","set","stop","error","response","data","message","children","className","onSubmit","type","size","placeholder","name","value","onUpdate","solid","submit","width","pin","view","link","href","as","color","_ref4","post","concat","LoginFormPage","_ref5"],"sources":["LoginFormPage.tsx"],"sourcesContent":["import React, {useCallback, useState} from 'react';\nimport axios, {AxiosError} from 'axios';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {Button, Text, TextInput} from '@gravity-ui/uikit';\nimport {onSuccessLogin} from '../../../store/actions/global';\nimport ytLocalStorage from '../../../utils/yt-local-storage';\nimport {\n getGlobalYTAuthCluster,\n getOAuthButtonLabel,\n getOAuthEnabled,\n} from '../../../store/selectors/global';\nimport LoginPageWrapper from '../LoginPageWrapper/LoginPageWrapper';\nimport isEmpty from 'lodash/isEmpty';\n\nimport cn from 'bem-cn-lite';\n\nconst block = cn('login-page');\n\ninterface ErrorFields {\n username?: string;\n password?: string;\n response?: string;\n}\n\ninterface Props {\n theme?: 'light' | 'dark';\n}\n\nconst validate = ({\n username,\n password,\n}: Record<keyof Omit<ErrorFields, 'response'>, string>): ErrorFields => {\n const result: ErrorFields = {};\n if (username === '') {\n result.username = 'Username must not be empty';\n }\n\n if (password === '') {\n result.password = 'Password must not be empty';\n }\n\n return result;\n};\n\nfunction LoginForm({theme}: Props) {\n const dispatch = useDispatch();\n const [username, setUsername] = useState(ytLocalStorage.get('loginDialog')?.username || '');\n const allowOAuth = useSelector(getOAuthEnabled);\n const buttonLabel = useSelector(getOAuthButtonLabel);\n const ytAuthCluster = useSelector(getGlobalYTAuthCluster) ?? '';\n const [password, setPassword] = useState('');\n const [loading, setLoading] = useState<boolean>(false);\n const [errors, setErrors] = React.useState<ErrorFields>({});\n\n const handleFormSubmit = useCallback(\n (e: React.FormEvent) => {\n e.preventDefault();\n setErrors({});\n const validationErrors = validate({username, password});\n if (!isEmpty(validationErrors)) {\n setErrors(validationErrors);\n return;\n }\n setLoading(true);\n authorize({username, password, ytAuthCluster})\n .then(async () => {\n ytLocalStorage.set('loginDialog', {username});\n dispatch(onSuccessLogin(username));\n })\n .catch((error: AxiosError<Error>) => {\n if (error.response && error.response.data && error.response.data.message) {\n setErrors({\n response: error.response.data.message,\n });\n } else {\n setErrors({response: error.message});\n }\n })\n .finally(() => {\n setLoading(false);\n });\n },\n [username, password, dispatch],\n );\n\n return (\n <>\n <h1 className={block('title')}>Welcome to YTsaurus!</h1>\n <p className={block('text')}>\n A unified scalable platform for storing and processing large volumes of data.\n <br />\n <br />\n Login to your account.\n </p>\n <form onSubmit={handleFormSubmit}>\n <TextInput\n className={block('field')}\n type=\"text\"\n size=\"l\"\n placeholder=\"Login\"\n name=\"username\"\n value={username}\n onUpdate={setUsername}\n error={errors.username}\n />\n <TextInput\n className={block('field', {password: true})}\n type=\"password\"\n size=\"l\"\n placeholder=\"Password\"\n name=\"password\"\n value={password}\n onUpdate={setPassword}\n error={errors.password}\n />\n\n <Button\n className={block('button', {solid: true, submit: true})}\n type=\"submit\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n view={theme === 'light' ? 'action' : 'normal-contrast'}\n loading={loading}\n >\n Login\n </Button>\n\n {allowOAuth && (\n <Button\n className={block('button', {solid: true, link: true, submit: true})}\n type=\"submit\"\n href=\"/oauth/login\"\n width=\"max\"\n size=\"l\"\n pin=\"circle-circle\"\n view={theme === 'light' ? 'action' : 'normal-contrast'}\n loading={loading}\n >\n {buttonLabel || 'Login via SSO'}\n </Button>\n )}\n\n {errors.response && (\n <Text as=\"p\" color=\"danger\" className={block('error')}>\n {errors.response}\n </Text>\n )}\n </form>\n </>\n );\n}\n\nfunction authorize({\n username,\n password,\n ytAuthCluster,\n}: {\n username: string;\n password: string;\n ytAuthCluster: string;\n}) {\n return axios.post(`/api/yt/${ytAuthCluster}/login`, {\n username,\n password,\n });\n}\n\nexport function LoginFormPage({theme}: Props) {\n return (\n <LoginPageWrapper theme={theme}>\n <LoginForm theme={theme} />\n </LoginPageWrapper>\n );\n}\n"],"mappings":"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"}
|
@@ -1,6 +1,7 @@
|
|
1
|
-
var _getConfigData;
|
1
|
+
var _getConfigData, _getConfigData2;
|
2
2
|
export function getConfigData() {
|
3
3
|
return window.__DATA__;
|
4
4
|
}
|
5
5
|
export var uiSettings = ((_getConfigData = getConfigData()) === null || _getConfigData === void 0 ? void 0 : _getConfigData.uiSettings) || {};
|
6
|
+
export var userSettingsCluster = (_getConfigData2 = getConfigData()) === null || _getConfigData2 === void 0 ? void 0 : _getConfigData2.userSettingsCluster;
|
6
7
|
// #sourceMappingURL=ui-settings.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["getConfigData","window","__DATA__","uiSettings","_getConfigData"],"sources":["ui-settings.ts"],"sourcesContent":["import type {ConfigData} from '../../shared/yt-types';\n\nexport function getConfigData(): ConfigData {\n return (window as any).__DATA__;\n}\n\nexport const uiSettings: Partial<Required<ConfigData>['uiSettings']> =\n getConfigData()?.uiSettings || {};\n"],"mappings":";AAEA,OAAO,SAASA,aAAaA,CAAA,EAAe;EACxC,OAAQC,MAAM,CAASC,QAAQ;AACnC;AAEA,OAAO,IAAMC,UAAuD,GAChE,EAAAC,cAAA,GAAAJ,aAAa,CAAC,CAAC,cAAAI,cAAA,uBAAfA,cAAA,CAAiBD,UAAU,KAAI,CAAC,CAAC"}
|
1
|
+
{"version":3,"names":["getConfigData","window","__DATA__","uiSettings","_getConfigData","userSettingsCluster","_getConfigData2"],"sources":["ui-settings.ts"],"sourcesContent":["import type {ConfigData} from '../../shared/yt-types';\n\nexport function getConfigData(): ConfigData {\n return (window as any).__DATA__;\n}\n\nexport const uiSettings: Partial<Required<ConfigData>['uiSettings']> =\n getConfigData()?.uiSettings || {};\n\nexport const userSettingsCluster: ConfigData['userSettingsCluster'] =\n getConfigData()?.userSettingsCluster;\n"],"mappings":";AAEA,OAAO,SAASA,aAAaA,CAAA,EAAe;EACxC,OAAQC,MAAM,CAASC,QAAQ;AACnC;AAEA,OAAO,IAAMC,UAAuD,GAChE,EAAAC,cAAA,GAAAJ,aAAa,CAAC,CAAC,cAAAI,cAAA,uBAAfA,cAAA,CAAiBD,UAAU,KAAI,CAAC,CAAC;AAErC,OAAO,IAAME,mBAAsD,IAAAC,eAAA,GAC/DN,aAAa,CAAC,CAAC,cAAAM,eAAA,uBAAfA,eAAA,CAAiBD,mBAAmB"}
|
@@ -75,6 +75,13 @@ export declare const FETCH_CLUSTER_AVAILABILITY: {
|
|
75
75
|
readonly FAILURE: `${string}_FAILURE`;
|
76
76
|
readonly CANCELLED: `${string}_CANCELLED`;
|
77
77
|
};
|
78
|
+
export declare const FETCH_CLUSTER_AUTH_STATUS: {
|
79
|
+
readonly REQUEST: "FETCH_CLUSTER_AUTH_STATUS_REQUEST";
|
80
|
+
readonly PARTITION: "FETCH_CLUSTER_AUTH_STATUS_PARTITION";
|
81
|
+
readonly SUCCESS: "FETCH_CLUSTER_AUTH_STATUS_SUCCESS";
|
82
|
+
readonly FAILURE: "FETCH_CLUSTER_AUTH_STATUS_FAILURE";
|
83
|
+
readonly CANCELLED: "FETCH_CLUSTER_AUTH_STATUS_CANCELLED";
|
84
|
+
};
|
78
85
|
export declare const UPDATE_VIEWMODE: string;
|
79
86
|
export declare const UPDATE_FILTER: string;
|
80
87
|
export declare const SPLIT_PANE_ID = "split-portal";
|
@@ -66,6 +66,7 @@ export var MediumType = {
|
|
66
66
|
var CLUSTER_MENU_PREFIX = createPrefix('CLUSTER_MENU');
|
67
67
|
export var FETCH_CLUSTER_VERSIONS = createActionTypes(CLUSTER_MENU_PREFIX + 'FETCH_CLUSTER_VERSIONS');
|
68
68
|
export var FETCH_CLUSTER_AVAILABILITY = createActionTypes(CLUSTER_MENU_PREFIX + 'FETCH_CLUSTER_AVAILABILITY');
|
69
|
+
export var FETCH_CLUSTER_AUTH_STATUS = createActionTypes('FETCH_CLUSTER_AUTH_STATUS');
|
69
70
|
export var UPDATE_VIEWMODE = CLUSTER_MENU_PREFIX + 'UPDATE_VIEWMODE';
|
70
71
|
export var UPDATE_FILTER = CLUSTER_MENU_PREFIX + 'UPDATE_FILTER';
|
71
72
|
export var SPLIT_PANE_ID = 'split-portal';
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createActionTypes","createPrefix","Page","HEADER_HEIGHT","STICKY_VERTICAL_PADDING","KeyCode","ESCAPE","ENTER","ARROW_UP","ARROW_DOWN","TAB","LOADING_STATUS","UNINITIALIZED","LOADING","LOADED","ERROR","CANCELLED","LOAD_ERROR","GENERAL","CONNECTION","AUTHENTICATION","TYPED_OUTPUT_FORMAT","$value","$attributes","stringify","annotate_with_types","MENU_PREFIX","SPLIT_MENU_ITEMS","JOIN_MENU_ITEMS","SETTINGS_PREFIX","SET_SETTING_VALUE","concat","UNSET_SETTING_VALUE","UPDATE_SETTING_DATA","GLOBAL_PREFIX","UPDATE_TITLE","BLOCK_USER","BAN_USER","INC_NAV_BLOCKER_COUNTER","DEC_NAV_BLOCKER_COUNTER","SET_MAINTENANCE_PAGE_EVENT","SPLIT_SCREEN","MERGE_SCREEN","INIT_CLUSTER_PARAMS","UPDATE_CLUSTER","_objectSpread","FINAL_SUCCESS","GLOBAL_SET_THEME","MediumType","DEFAULT","ALL","CLUSTER_MENU_PREFIX","FETCH_CLUSTER_VERSIONS","FETCH_CLUSTER_AVAILABILITY","UPDATE_VIEWMODE","UPDATE_FILTER","SPLIT_PANE_ID","DASHBOARD_VIEW_CONTEXT","GENERIC_ERROR_MESSAGE"],"sources":["index.ts"],"sourcesContent":["import createActionTypes, {createPrefix} from './utils';\nexport {Page} from '../../shared/constants/settings';\n\nexport * from './system/nodes';\n\nexport const HEADER_HEIGHT = 56;\nexport const STICKY_VERTICAL_PADDING = 10;\n\nexport const KeyCode = {\n ESCAPE: 27,\n ENTER: 13,\n ARROW_UP: 38,\n ARROW_DOWN: 40,\n TAB: 9,\n};\n\nexport const LOADING_STATUS = {\n UNINITIALIZED: '',\n LOADING: 'loading',\n LOADED: 'loaded',\n ERROR: 'error',\n CANCELLED: 'cancelled',\n} as const;\n\nexport const LOAD_ERROR = {\n GENERAL: 'general',\n CONNECTION: 'connection',\n AUTHENTICATION: 'authentication',\n};\n\nexport const TYPED_OUTPUT_FORMAT = {\n $value: 'json',\n $attributes: {\n stringify: true,\n annotate_with_types: true,\n },\n};\n\n// Menu\nconst MENU_PREFIX = createPrefix('MENU');\n\nexport const SPLIT_MENU_ITEMS = MENU_PREFIX + 'SPLIT_MENU_ITEMS';\nexport const JOIN_MENU_ITEMS = MENU_PREFIX + 'JOIN_MENU_ITEMS';\n\n// Settings\nconst SETTINGS_PREFIX = createPrefix('SETTINGS');\n\nexport const SET_SETTING_VALUE = `${SETTINGS_PREFIX}SET_SETTING_VALUE` as const;\nexport const UNSET_SETTING_VALUE = `${SETTINGS_PREFIX}UNSET_SETTING_VALUE` as const;\nexport const UPDATE_SETTING_DATA = `${SETTINGS_PREFIX}UPDATE_SETTING_DATA` as const;\n\n// Global\nconst GLOBAL_PREFIX = createPrefix('GLOBAL');\n\nexport const UPDATE_TITLE = GLOBAL_PREFIX + 'UPDATE_TITLE';\nexport const BLOCK_USER = GLOBAL_PREFIX + 'BLOCK_USER';\nexport const BAN_USER = GLOBAL_PREFIX + 'BAN_USER';\nexport const INC_NAV_BLOCKER_COUNTER = GLOBAL_PREFIX + 'INC_NAV_BLOCKER_COUNTER';\nexport const DEC_NAV_BLOCKER_COUNTER = GLOBAL_PREFIX + 'DEC_NAV_BLOCKER_COUNTER';\nexport const SET_MAINTENANCE_PAGE_EVENT = GLOBAL_PREFIX + 'SET_MAINTENANCE_PAGE_EVENT';\nexport const SPLIT_SCREEN = GLOBAL_PREFIX + 'SPLIT_SCREEN';\nexport const MERGE_SCREEN = GLOBAL_PREFIX + 'MERGE_SCREEN';\nexport const INIT_CLUSTER_PARAMS = createActionTypes(GLOBAL_PREFIX + 'INIT_CLUSTER_PARAMS');\nexport const UPDATE_CLUSTER = {\n ...createActionTypes(GLOBAL_PREFIX + 'UPDATE_CLUSTER'),\n FINAL_SUCCESS: `${GLOBAL_PREFIX}_UPDATE_CLUSTER_FINAL_SUCCESS`,\n};\nexport const GLOBAL_SET_THEME = 'GLOBAL_SET_THEME';\n\nexport const MediumType = {\n DEFAULT: 'default',\n ALL: 'all',\n};\n\n// Cluster menu\nconst CLUSTER_MENU_PREFIX = createPrefix('CLUSTER_MENU');\n\nexport const FETCH_CLUSTER_VERSIONS = createActionTypes(\n CLUSTER_MENU_PREFIX + 'FETCH_CLUSTER_VERSIONS',\n);\nexport const FETCH_CLUSTER_AVAILABILITY = createActionTypes(\n CLUSTER_MENU_PREFIX + 'FETCH_CLUSTER_AVAILABILITY',\n);\n\nexport const UPDATE_VIEWMODE = CLUSTER_MENU_PREFIX + 'UPDATE_VIEWMODE';\nexport const UPDATE_FILTER = CLUSTER_MENU_PREFIX + 'UPDATE_FILTER';\n\nexport const SPLIT_PANE_ID = 'split-portal';\n\nexport const DASHBOARD_VIEW_CONTEXT = 'dashboard';\n\nexport const GENERIC_ERROR_MESSAGE = ' If the problem persists please report it via Bug Reporter.';\n"],"mappings":";AAAA,OAAOA,iBAAiB,IAAGC,YAAY,QAAO,SAAS;AACvD,SAAQC,IAAI,QAAO,iCAAiC;AAEpD,cAAc,gBAAgB;AAE9B,OAAO,IAAMC,aAAa,GAAG,EAAE;AAC/B,OAAO,IAAMC,uBAAuB,GAAG,EAAE;AAEzC,OAAO,IAAMC,OAAO,GAAG;EACnBC,MAAM,EAAE,EAAE;EACVC,KAAK,EAAE,EAAE;EACTC,QAAQ,EAAE,EAAE;EACZC,UAAU,EAAE,EAAE;EACdC,GAAG,EAAE;AACT,CAAC;AAED,OAAO,IAAMC,cAAc,GAAG;EAC1BC,aAAa,EAAE,EAAE;EACjBC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdC,SAAS,EAAE;AACf,CAAU;AAEV,OAAO,IAAMC,UAAU,GAAG;EACtBC,OAAO,EAAE,SAAS;EAClBC,UAAU,EAAE,YAAY;EACxBC,cAAc,EAAE;AACpB,CAAC;AAED,OAAO,IAAMC,mBAAmB,GAAG;EAC/BC,MAAM,EAAE,MAAM;EACdC,WAAW,EAAE;IACTC,SAAS,EAAE,IAAI;IACfC,mBAAmB,EAAE;EACzB;AACJ,CAAC;;AAED;AACA,IAAMC,WAAW,GAAGzB,YAAY,CAAC,MAAM,CAAC;AAExC,OAAO,IAAM0B,gBAAgB,GAAGD,WAAW,GAAG,kBAAkB;AAChE,OAAO,IAAME,eAAe,GAAGF,WAAW,GAAG,iBAAiB;;AAE9D;AACA,IAAMG,eAAe,GAAG5B,YAAY,CAAC,UAAU,CAAC;AAEhD,OAAO,IAAM6B,iBAAiB,MAAAC,MAAA,CAAMF,eAAe,sBAA4B;AAC/E,OAAO,IAAMG,mBAAmB,MAAAD,MAAA,CAAMF,eAAe,wBAA8B;AACnF,OAAO,IAAMI,mBAAmB,MAAAF,MAAA,CAAMF,eAAe,wBAA8B;;AAEnF;AACA,IAAMK,aAAa,GAAGjC,YAAY,CAAC,QAAQ,CAAC;AAE5C,OAAO,IAAMkC,YAAY,GAAGD,aAAa,GAAG,cAAc;AAC1D,OAAO,IAAME,UAAU,GAAGF,aAAa,GAAG,YAAY;AACtD,OAAO,IAAMG,QAAQ,GAAGH,aAAa,GAAG,UAAU;AAClD,OAAO,IAAMI,uBAAuB,GAAGJ,aAAa,GAAG,yBAAyB;AAChF,OAAO,IAAMK,uBAAuB,GAAGL,aAAa,GAAG,yBAAyB;AAChF,OAAO,IAAMM,0BAA0B,GAAGN,aAAa,GAAG,4BAA4B;AACtF,OAAO,IAAMO,YAAY,GAAGP,aAAa,GAAG,cAAc;AAC1D,OAAO,IAAMQ,YAAY,GAAGR,aAAa,GAAG,cAAc;AAC1D,OAAO,IAAMS,mBAAmB,GAAG3C,iBAAiB,CAACkC,aAAa,GAAG,qBAAqB,CAAC;AAC3F,OAAO,IAAMU,cAAc,GAAAC,aAAA,CAAAA,aAAA,KACpB7C,iBAAiB,CAACkC,aAAa,GAAG,gBAAgB,CAAC;EACtDY,aAAa,KAAAf,MAAA,CAAKG,aAAa;AAA+B,EACjE;AACD,OAAO,IAAMa,gBAAgB,GAAG,kBAAkB;AAElD,OAAO,IAAMC,UAAU,GAAG;EACtBC,OAAO,EAAE,SAAS;EAClBC,GAAG,EAAE;AACT,CAAC;;AAED;AACA,IAAMC,mBAAmB,GAAGlD,YAAY,CAAC,cAAc,CAAC;AAExD,OAAO,IAAMmD,sBAAsB,GAAGpD,iBAAiB,CACnDmD,mBAAmB,GAAG,wBAC1B,CAAC;AACD,OAAO,IAAME,0BAA0B,GAAGrD,iBAAiB,CACvDmD,mBAAmB,GAAG,4BAC1B,CAAC;AAED,OAAO,IAAMG,eAAe,
|
1
|
+
{"version":3,"names":["createActionTypes","createPrefix","Page","HEADER_HEIGHT","STICKY_VERTICAL_PADDING","KeyCode","ESCAPE","ENTER","ARROW_UP","ARROW_DOWN","TAB","LOADING_STATUS","UNINITIALIZED","LOADING","LOADED","ERROR","CANCELLED","LOAD_ERROR","GENERAL","CONNECTION","AUTHENTICATION","TYPED_OUTPUT_FORMAT","$value","$attributes","stringify","annotate_with_types","MENU_PREFIX","SPLIT_MENU_ITEMS","JOIN_MENU_ITEMS","SETTINGS_PREFIX","SET_SETTING_VALUE","concat","UNSET_SETTING_VALUE","UPDATE_SETTING_DATA","GLOBAL_PREFIX","UPDATE_TITLE","BLOCK_USER","BAN_USER","INC_NAV_BLOCKER_COUNTER","DEC_NAV_BLOCKER_COUNTER","SET_MAINTENANCE_PAGE_EVENT","SPLIT_SCREEN","MERGE_SCREEN","INIT_CLUSTER_PARAMS","UPDATE_CLUSTER","_objectSpread","FINAL_SUCCESS","GLOBAL_SET_THEME","MediumType","DEFAULT","ALL","CLUSTER_MENU_PREFIX","FETCH_CLUSTER_VERSIONS","FETCH_CLUSTER_AVAILABILITY","FETCH_CLUSTER_AUTH_STATUS","UPDATE_VIEWMODE","UPDATE_FILTER","SPLIT_PANE_ID","DASHBOARD_VIEW_CONTEXT","GENERIC_ERROR_MESSAGE"],"sources":["index.ts"],"sourcesContent":["import createActionTypes, {createPrefix} from './utils';\nexport {Page} from '../../shared/constants/settings';\n\nexport * from './system/nodes';\n\nexport const HEADER_HEIGHT = 56;\nexport const STICKY_VERTICAL_PADDING = 10;\n\nexport const KeyCode = {\n ESCAPE: 27,\n ENTER: 13,\n ARROW_UP: 38,\n ARROW_DOWN: 40,\n TAB: 9,\n};\n\nexport const LOADING_STATUS = {\n UNINITIALIZED: '',\n LOADING: 'loading',\n LOADED: 'loaded',\n ERROR: 'error',\n CANCELLED: 'cancelled',\n} as const;\n\nexport const LOAD_ERROR = {\n GENERAL: 'general',\n CONNECTION: 'connection',\n AUTHENTICATION: 'authentication',\n};\n\nexport const TYPED_OUTPUT_FORMAT = {\n $value: 'json',\n $attributes: {\n stringify: true,\n annotate_with_types: true,\n },\n};\n\n// Menu\nconst MENU_PREFIX = createPrefix('MENU');\n\nexport const SPLIT_MENU_ITEMS = MENU_PREFIX + 'SPLIT_MENU_ITEMS';\nexport const JOIN_MENU_ITEMS = MENU_PREFIX + 'JOIN_MENU_ITEMS';\n\n// Settings\nconst SETTINGS_PREFIX = createPrefix('SETTINGS');\n\nexport const SET_SETTING_VALUE = `${SETTINGS_PREFIX}SET_SETTING_VALUE` as const;\nexport const UNSET_SETTING_VALUE = `${SETTINGS_PREFIX}UNSET_SETTING_VALUE` as const;\nexport const UPDATE_SETTING_DATA = `${SETTINGS_PREFIX}UPDATE_SETTING_DATA` as const;\n\n// Global\nconst GLOBAL_PREFIX = createPrefix('GLOBAL');\n\nexport const UPDATE_TITLE = GLOBAL_PREFIX + 'UPDATE_TITLE';\nexport const BLOCK_USER = GLOBAL_PREFIX + 'BLOCK_USER';\nexport const BAN_USER = GLOBAL_PREFIX + 'BAN_USER';\nexport const INC_NAV_BLOCKER_COUNTER = GLOBAL_PREFIX + 'INC_NAV_BLOCKER_COUNTER';\nexport const DEC_NAV_BLOCKER_COUNTER = GLOBAL_PREFIX + 'DEC_NAV_BLOCKER_COUNTER';\nexport const SET_MAINTENANCE_PAGE_EVENT = GLOBAL_PREFIX + 'SET_MAINTENANCE_PAGE_EVENT';\nexport const SPLIT_SCREEN = GLOBAL_PREFIX + 'SPLIT_SCREEN';\nexport const MERGE_SCREEN = GLOBAL_PREFIX + 'MERGE_SCREEN';\nexport const INIT_CLUSTER_PARAMS = createActionTypes(GLOBAL_PREFIX + 'INIT_CLUSTER_PARAMS');\nexport const UPDATE_CLUSTER = {\n ...createActionTypes(GLOBAL_PREFIX + 'UPDATE_CLUSTER'),\n FINAL_SUCCESS: `${GLOBAL_PREFIX}_UPDATE_CLUSTER_FINAL_SUCCESS`,\n};\nexport const GLOBAL_SET_THEME = 'GLOBAL_SET_THEME';\n\nexport const MediumType = {\n DEFAULT: 'default',\n ALL: 'all',\n};\n\n// Cluster menu\nconst CLUSTER_MENU_PREFIX = createPrefix('CLUSTER_MENU');\n\nexport const FETCH_CLUSTER_VERSIONS = createActionTypes(\n CLUSTER_MENU_PREFIX + 'FETCH_CLUSTER_VERSIONS',\n);\nexport const FETCH_CLUSTER_AVAILABILITY = createActionTypes(\n CLUSTER_MENU_PREFIX + 'FETCH_CLUSTER_AVAILABILITY',\n);\n\nexport const FETCH_CLUSTER_AUTH_STATUS = createActionTypes('FETCH_CLUSTER_AUTH_STATUS');\n\nexport const UPDATE_VIEWMODE = CLUSTER_MENU_PREFIX + 'UPDATE_VIEWMODE';\nexport const UPDATE_FILTER = CLUSTER_MENU_PREFIX + 'UPDATE_FILTER';\n\nexport const SPLIT_PANE_ID = 'split-portal';\n\nexport const DASHBOARD_VIEW_CONTEXT = 'dashboard';\n\nexport const GENERIC_ERROR_MESSAGE = ' If the problem persists please report it via Bug Reporter.';\n"],"mappings":"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"}
|
@@ -97,10 +97,11 @@ function AppWithRum() {
|
|
97
97
|
}
|
98
98
|
}) : /*#__PURE__*/_jsxs(Switch, {
|
99
99
|
children: [hasAuthPages ? /*#__PURE__*/_jsx(Route, {
|
100
|
-
path: "/change-password",
|
101
|
-
render: function render() {
|
100
|
+
path: "/:cluster/change-password",
|
101
|
+
render: function render(props) {
|
102
102
|
return /*#__PURE__*/_jsx(ChangePasswordFormPage, {
|
103
|
-
theme: themeType
|
103
|
+
theme: themeType,
|
104
|
+
cluster: props.match.params.cluster
|
104
105
|
});
|
105
106
|
}
|
106
107
|
}) : null, /*#__PURE__*/_jsx(Route, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Component","Route","Switch","useDispatch","useSelector","ThemeProvider","useThemeType","useThemeValue","ModalErrors","AttributesModal","ClustersMenu","ClusterPageWrapper","ActionModal","ChangePasswordFormPage","LoginFormPage","getSettingTheme","shouldUseSafeColors","RumUiProvider","AppNavigation","RetryBatchModals","loadAllowedExperimentalPages","setTheme","getAuthPagesEnabled","getGlobalShowLoginDialog","getFontType","jsx","_jsx","jsxs","_jsxs","App","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","componentDidMount","_this$props","props","theme","fontType","document","body","classList","add","concat","componentDidUpdate","prevProps","remove","render","children","LoadAllowedExperimentalUrls","className","exact","path","dispatch","useMemo","AppWithRum","themeType","a11y","showLogin","hasAuthPages","AppWithRumContext","_useThemeProviderProp","useThemeProviderProperties","systemLightTheme","systemDarkTheme","ThemeUpdater","memo","useEffect","selectedTheme","useContrastTheme"],"sources":["App.tsx"],"sourcesContent":["import React, {Component} from 'react';\nimport {Route, Switch} from 'react-router';\nimport {useDispatch, useSelector} from 'react-redux';\nimport PropTypes from 'prop-types';\n\nimport {ThemeProvider, useThemeType, useThemeValue} from '@gravity-ui/uikit';\n\nimport ModalErrors from '../../containers/ModalErrors/ModalErrors';\nimport AttributesModal from '../../components/AttributesModal/AttributesModal';\nimport ClustersMenu from '../ClustersMenu/ClustersMenu';\nimport ClusterPageWrapper from '../../containers/ClusterPageWrapper/ClusterPageWrapper';\nimport ActionModal from '../ActionModal/ActionModal';\nimport {ChangePasswordFormPage} from '../../components/Login/ChangePasswordFormPage/ChangePasswordFormPage';\nimport {LoginFormPage} from '../../components/Login/LoginFormPage/LoginFormPage';\n\nimport {getSettingTheme, shouldUseSafeColors} from '../../store/selectors/settings';\n\nimport {RumUiProvider} from '../../rum/RumUiContext';\nimport AppNavigation from '../AppNavigation/AppNavigation';\nimport RetryBatchModals from '../RetryBatchModal/RetryBatchModal';\nimport {loadAllowedExperimentalPages, setTheme} from '../../store/actions/global';\nimport {getAuthPagesEnabled, getGlobalShowLoginDialog} from '../../store/selectors/global';\n\nimport './App.scss';\nimport {getFontType} from '../../store/selectors/settings-ts';\n\ninterface AppProps {\n theme?: 'light' | 'dark' | 'system' | 'light-hc' | 'dark-hc';\n fontType?: string;\n a11y?: boolean;\n}\n\nclass App extends Component<AppProps> {\n static propTypes = {\n theme: PropTypes.oneOf(['light', 'dark', 'system', 'light-hc', 'dark-hc']).isRequired,\n fontType: PropTypes.string,\n a11y: PropTypes.bool.isRequired,\n };\n\n componentDidMount() {\n const {theme, fontType} = this.props;\n document.body.classList.add(`theme-${theme}`);\n if (fontType) document.body.classList.add(`font-${fontType}`);\n }\n\n componentDidUpdate(prevProps: AppProps) {\n if (prevProps.theme !== this.props.theme) {\n document.body.classList.remove(`theme-${prevProps.theme}`);\n document.body.classList.add(`theme-${this.props.theme}`);\n }\n\n if (prevProps.fontType !== this.props.fontType) {\n document.body.classList.remove(`font-${prevProps.fontType}`);\n document.body.classList.add(`font-${this.props.fontType}`);\n }\n }\n\n render() {\n return (\n <AppNavigation>\n <LoadAllowedExperimentalUrls />\n <div className=\"elements-page\">\n <Route exact path=\"/\" render={() => <ClustersMenu />} />\n <Route path=\"/:cluster/\" render={() => <ClusterPageWrapper />} />\n <AttributesModal />\n <ActionModal />\n <ModalErrors />\n <RetryBatchModals />\n </div>\n </AppNavigation>\n );\n }\n}\n\nfunction LoadAllowedExperimentalUrls() {\n const dispatch = useDispatch();\n\n React.useMemo(() => {\n dispatch(loadAllowedExperimentalPages());\n }, [dispatch]);\n return null;\n}\n\nfunction AppWithRum() {\n const theme = useThemeValue() as AppProps['theme'];\n const themeType = useThemeType();\n const a11y = useSelector(shouldUseSafeColors);\n const showLogin = useSelector(getGlobalShowLoginDialog);\n const hasAuthPages = useSelector(getAuthPagesEnabled);\n const fontType = useSelector(getFontType);\n\n return showLogin ? (\n <Route render={() => <LoginFormPage theme={themeType} />} />\n ) : (\n <Switch>\n {hasAuthPages ? (\n <Route\n path=\"/change-password\"\n render={() => <ChangePasswordFormPage theme={themeType} />}\n />\n ) : null}\n <Route render={() => <App theme={theme} a11y={a11y} fontType={fontType} />} />\n </Switch>\n );\n}\n\nfunction AppWithRumContext() {\n const {theme, systemLightTheme, systemDarkTheme} = useThemeProviderProperties();\n return (\n <RumUiProvider>\n <ThemeProvider\n theme={theme as any}\n systemLightTheme={systemLightTheme}\n systemDarkTheme={systemDarkTheme}\n >\n <ThemeUpdater />\n <AppWithRum />\n </ThemeProvider>\n </RumUiProvider>\n );\n}\n\nexport default React.memo(AppWithRumContext);\n\nfunction ThemeUpdater() {\n const dispatch = useDispatch();\n const theme = useThemeValue() as AppProps['theme'];\n React.useEffect(() => {\n dispatch(setTheme(theme!));\n }, [theme, dispatch]);\n\n return null;\n}\n\nfunction useThemeProviderProperties() {\n const selectedTheme = useSelector(getSettingTheme);\n const useContrastTheme: boolean = useSelector(shouldUseSafeColors);\n const systemLightTheme = useContrastTheme ? 'light-hc' : 'light';\n const systemDarkTheme = useContrastTheme ? 'dark-hc' : 'dark';\n let theme: AppProps['theme'] = selectedTheme;\n if ((theme === 'dark' || theme === 'light') && useContrastTheme) theme = `${theme}-hc`;\n return {\n theme,\n systemLightTheme,\n systemDarkTheme,\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["React","Component","Route","Switch","useDispatch","useSelector","ThemeProvider","useThemeType","useThemeValue","ModalErrors","AttributesModal","ClustersMenu","ClusterPageWrapper","ActionModal","ChangePasswordFormPage","LoginFormPage","getSettingTheme","shouldUseSafeColors","RumUiProvider","AppNavigation","RetryBatchModals","loadAllowedExperimentalPages","setTheme","getAuthPagesEnabled","getGlobalShowLoginDialog","getFontType","jsx","_jsx","jsxs","_jsxs","App","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","componentDidMount","_this$props","props","theme","fontType","document","body","classList","add","concat","componentDidUpdate","prevProps","remove","render","children","LoadAllowedExperimentalUrls","className","exact","path","dispatch","useMemo","AppWithRum","themeType","a11y","showLogin","hasAuthPages","cluster","match","params","AppWithRumContext","_useThemeProviderProp","useThemeProviderProperties","systemLightTheme","systemDarkTheme","ThemeUpdater","memo","useEffect","selectedTheme","useContrastTheme"],"sources":["App.tsx"],"sourcesContent":["import React, {Component} from 'react';\nimport {Route, Switch} from 'react-router';\nimport {useDispatch, useSelector} from 'react-redux';\nimport PropTypes from 'prop-types';\n\nimport {ThemeProvider, useThemeType, useThemeValue} from '@gravity-ui/uikit';\n\nimport ModalErrors from '../../containers/ModalErrors/ModalErrors';\nimport AttributesModal from '../../components/AttributesModal/AttributesModal';\nimport ClustersMenu from '../ClustersMenu/ClustersMenu';\nimport ClusterPageWrapper from '../../containers/ClusterPageWrapper/ClusterPageWrapper';\nimport ActionModal from '../ActionModal/ActionModal';\nimport {ChangePasswordFormPage} from '../../components/Login/ChangePasswordFormPage/ChangePasswordFormPage';\nimport {LoginFormPage} from '../../components/Login/LoginFormPage/LoginFormPage';\n\nimport {getSettingTheme, shouldUseSafeColors} from '../../store/selectors/settings';\n\nimport {RumUiProvider} from '../../rum/RumUiContext';\nimport AppNavigation from '../AppNavigation/AppNavigation';\nimport RetryBatchModals from '../RetryBatchModal/RetryBatchModal';\nimport {loadAllowedExperimentalPages, setTheme} from '../../store/actions/global';\nimport {getAuthPagesEnabled, getGlobalShowLoginDialog} from '../../store/selectors/global';\n\nimport './App.scss';\nimport {getFontType} from '../../store/selectors/settings-ts';\n\ninterface AppProps {\n theme?: 'light' | 'dark' | 'system' | 'light-hc' | 'dark-hc';\n fontType?: string;\n a11y?: boolean;\n}\n\nclass App extends Component<AppProps> {\n static propTypes = {\n theme: PropTypes.oneOf(['light', 'dark', 'system', 'light-hc', 'dark-hc']).isRequired,\n fontType: PropTypes.string,\n a11y: PropTypes.bool.isRequired,\n };\n\n componentDidMount() {\n const {theme, fontType} = this.props;\n document.body.classList.add(`theme-${theme}`);\n if (fontType) document.body.classList.add(`font-${fontType}`);\n }\n\n componentDidUpdate(prevProps: AppProps) {\n if (prevProps.theme !== this.props.theme) {\n document.body.classList.remove(`theme-${prevProps.theme}`);\n document.body.classList.add(`theme-${this.props.theme}`);\n }\n\n if (prevProps.fontType !== this.props.fontType) {\n document.body.classList.remove(`font-${prevProps.fontType}`);\n document.body.classList.add(`font-${this.props.fontType}`);\n }\n }\n\n render() {\n return (\n <AppNavigation>\n <LoadAllowedExperimentalUrls />\n <div className=\"elements-page\">\n <Route exact path=\"/\" render={() => <ClustersMenu />} />\n <Route path=\"/:cluster/\" render={() => <ClusterPageWrapper />} />\n <AttributesModal />\n <ActionModal />\n <ModalErrors />\n <RetryBatchModals />\n </div>\n </AppNavigation>\n );\n }\n}\n\nfunction LoadAllowedExperimentalUrls() {\n const dispatch = useDispatch();\n\n React.useMemo(() => {\n dispatch(loadAllowedExperimentalPages());\n }, [dispatch]);\n return null;\n}\n\nfunction AppWithRum() {\n const theme = useThemeValue() as AppProps['theme'];\n const themeType = useThemeType();\n const a11y = useSelector(shouldUseSafeColors);\n const showLogin = useSelector(getGlobalShowLoginDialog);\n const hasAuthPages = useSelector(getAuthPagesEnabled);\n const fontType = useSelector(getFontType);\n\n return showLogin ? (\n <Route render={() => <LoginFormPage theme={themeType} />} />\n ) : (\n <Switch>\n {hasAuthPages ? (\n <Route\n path={`/:cluster/change-password`}\n render={(props) => (\n <ChangePasswordFormPage\n theme={themeType}\n cluster={props.match.params.cluster}\n />\n )}\n />\n ) : null}\n <Route render={() => <App theme={theme} a11y={a11y} fontType={fontType} />} />\n </Switch>\n );\n}\n\nfunction AppWithRumContext() {\n const {theme, systemLightTheme, systemDarkTheme} = useThemeProviderProperties();\n return (\n <RumUiProvider>\n <ThemeProvider\n theme={theme as any}\n systemLightTheme={systemLightTheme}\n systemDarkTheme={systemDarkTheme}\n >\n <ThemeUpdater />\n <AppWithRum />\n </ThemeProvider>\n </RumUiProvider>\n );\n}\n\nexport default React.memo(AppWithRumContext);\n\nfunction ThemeUpdater() {\n const dispatch = useDispatch();\n const theme = useThemeValue() as AppProps['theme'];\n React.useEffect(() => {\n dispatch(setTheme(theme!));\n }, [theme, dispatch]);\n\n return null;\n}\n\nfunction useThemeProviderProperties() {\n const selectedTheme = useSelector(getSettingTheme);\n const useContrastTheme: boolean = useSelector(shouldUseSafeColors);\n const systemLightTheme = useContrastTheme ? 'light-hc' : 'light';\n const systemDarkTheme = useContrastTheme ? 'dark-hc' : 'dark';\n let theme: AppProps['theme'] = selectedTheme;\n if ((theme === 'dark' || theme === 'light') && useContrastTheme) theme = `${theme}-hc`;\n return {\n theme,\n systemLightTheme,\n systemDarkTheme,\n };\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAGC,SAAS,QAAO,OAAO;AACtC,SAAQC,KAAK,EAAEC,MAAM,QAAO,cAAc;AAC1C,SAAQC,WAAW,EAAEC,WAAW,QAAO,aAAa;AAGpD,SAAQC,aAAa,EAAEC,YAAY,EAAEC,aAAa,QAAO,mBAAmB;AAE5E,OAAOC,WAAW,MAAM,0CAA0C;AAClE,OAAOC,eAAe,MAAM,kDAAkD;AAC9E,OAAOC,YAAY,MAAM,8BAA8B;AACvD,OAAOC,kBAAkB,MAAM,wDAAwD;AACvF,OAAOC,WAAW,MAAM,4BAA4B;AACpD,SAAQC,sBAAsB,QAAO,sEAAsE;AAC3G,SAAQC,aAAa,QAAO,oDAAoD;AAEhF,SAAQC,eAAe,EAAEC,mBAAmB,QAAO,gCAAgC;AAEnF,SAAQC,aAAa,QAAO,wBAAwB;AACpD,OAAOC,aAAa,MAAM,gCAAgC;AAC1D,OAAOC,gBAAgB,MAAM,oCAAoC;AACjE,SAAQC,4BAA4B,EAAEC,QAAQ,QAAO,4BAA4B;AACjF,SAAQC,mBAAmB,EAAEC,wBAAwB,QAAO,8BAA8B;AAE1F,OAAO,WAAY;AACnB,SAAQC,WAAW,QAAO,mCAAmC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,IAQxDC,GAAG,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,GAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,GAAA;EAAA,SAAAA,IAAA;IAAAK,eAAA,OAAAL,GAAA;IAAA,OAAAG,MAAA,CAAAG,KAAA,OAAAC,SAAA;EAAA;EAAAC,YAAA,CAAAR,GAAA;IAAAS,GAAA;IAAAC,KAAA,EAOL,SAAAC,kBAAA,EAAoB;MAChB,IAAAC,WAAA,GAA0B,IAAI,CAACC,KAAK;QAA7BC,KAAK,GAAAF,WAAA,CAALE,KAAK;QAAEC,QAAQ,GAAAH,WAAA,CAARG,QAAQ;MACtBC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,GAAG,UAAAC,MAAA,CAAUN,KAAK,CAAE,CAAC;MAC7C,IAAIC,QAAQ,EAAEC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,GAAG,SAAAC,MAAA,CAASL,QAAQ,CAAE,CAAC;IACjE;EAAC;IAAAN,GAAA;IAAAC,KAAA,EAED,SAAAW,mBAAmBC,SAAmB,EAAE;MACpC,IAAIA,SAAS,CAACR,KAAK,KAAK,IAAI,CAACD,KAAK,CAACC,KAAK,EAAE;QACtCE,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACK,MAAM,UAAAH,MAAA,CAAUE,SAAS,CAACR,KAAK,CAAE,CAAC;QAC1DE,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,GAAG,UAAAC,MAAA,CAAU,IAAI,CAACP,KAAK,CAACC,KAAK,CAAE,CAAC;MAC5D;MAEA,IAAIQ,SAAS,CAACP,QAAQ,KAAK,IAAI,CAACF,KAAK,CAACE,QAAQ,EAAE;QAC5CC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACK,MAAM,SAAAH,MAAA,CAASE,SAAS,CAACP,QAAQ,CAAE,CAAC;QAC5DC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,GAAG,SAAAC,MAAA,CAAS,IAAI,CAACP,KAAK,CAACE,QAAQ,CAAE,CAAC;MAC9D;IACJ;EAAC;IAAAN,GAAA;IAAAC,KAAA,EAED,SAAAc,OAAA,EAAS;MACL,oBACIzB,KAAA,CAACV,aAAa;QAAAoC,QAAA,gBACV5B,IAAA,CAAC6B,2BAA2B,IAAE,CAAC,eAC/B3B,KAAA;UAAK4B,SAAS,EAAC,eAAe;UAAAF,QAAA,gBAC1B5B,IAAA,CAACzB,KAAK;YAACwD,KAAK;YAACC,IAAI,EAAC,GAAG;YAACL,MAAM,EAAE,SAAAA,OAAA;cAAA,oBAAM3B,IAAA,CAAChB,YAAY,IAAE,CAAC;YAAA;UAAC,CAAE,CAAC,eACxDgB,IAAA,CAACzB,KAAK;YAACyD,IAAI,EAAC,YAAY;YAACL,MAAM,EAAE,SAAAA,OAAA;cAAA,oBAAM3B,IAAA,CAACf,kBAAkB,IAAE,CAAC;YAAA;UAAC,CAAE,CAAC,eACjEe,IAAA,CAACjB,eAAe,IAAE,CAAC,eACnBiB,IAAA,CAACd,WAAW,IAAE,CAAC,eACfc,IAAA,CAAClB,WAAW,IAAE,CAAC,eACfkB,IAAA,CAACP,gBAAgB,IAAE,CAAC;QAAA,CACnB,CAAC;MAAA,CACK,CAAC;IAExB;EAAC;EAAA,OAAAU,GAAA;AAAA,EAvCa7B,SAAS;AA0C3B,SAASuD,2BAA2BA,CAAA,EAAG;EACnC,IAAMI,QAAQ,GAAGxD,WAAW,CAAC,CAAC;EAE9BJ,KAAK,CAAC6D,OAAO,CAAC,YAAM;IAChBD,QAAQ,CAACvC,4BAA4B,CAAC,CAAC,CAAC;EAC5C,CAAC,EAAE,CAACuC,QAAQ,CAAC,CAAC;EACd,OAAO,IAAI;AACf;AAEA,SAASE,UAAUA,CAAA,EAAG;EAClB,IAAMlB,KAAK,GAAGpC,aAAa,CAAC,CAAsB;EAClD,IAAMuD,SAAS,GAAGxD,YAAY,CAAC,CAAC;EAChC,IAAMyD,IAAI,GAAG3D,WAAW,CAACY,mBAAmB,CAAC;EAC7C,IAAMgD,SAAS,GAAG5D,WAAW,CAACmB,wBAAwB,CAAC;EACvD,IAAM0C,YAAY,GAAG7D,WAAW,CAACkB,mBAAmB,CAAC;EACrD,IAAMsB,QAAQ,GAAGxC,WAAW,CAACoB,WAAW,CAAC;EAEzC,OAAOwC,SAAS,gBACZtC,IAAA,CAACzB,KAAK;IAACoD,MAAM,EAAE,SAAAA,OAAA;MAAA,oBAAM3B,IAAA,CAACZ,aAAa;QAAC6B,KAAK,EAAEmB;MAAU,CAAE,CAAC;IAAA;EAAC,CAAE,CAAC,gBAE5DlC,KAAA,CAAC1B,MAAM;IAAAoD,QAAA,GACFW,YAAY,gBACTvC,IAAA,CAACzB,KAAK;MACFyD,IAAI,6BAA8B;MAClCL,MAAM,EAAE,SAAAA,OAACX,KAAK;QAAA,oBACVhB,IAAA,CAACb,sBAAsB;UACnB8B,KAAK,EAAEmB,SAAU;UACjBI,OAAO,EAAExB,KAAK,CAACyB,KAAK,CAACC,MAAM,CAACF;QAAQ,CACvC,CAAC;MAAA;IACJ,CACL,CAAC,GACF,IAAI,eACRxC,IAAA,CAACzB,KAAK;MAACoD,MAAM,EAAE,SAAAA,OAAA;QAAA,oBAAM3B,IAAA,CAACG,GAAG;UAACc,KAAK,EAAEA,KAAM;UAACoB,IAAI,EAAEA,IAAK;UAACnB,QAAQ,EAAEA;QAAS,CAAE,CAAC;MAAA;IAAC,CAAE,CAAC;EAAA,CAC1E,CACX;AACL;AAEA,SAASyB,iBAAiBA,CAAA,EAAG;EACzB,IAAAC,qBAAA,GAAmDC,0BAA0B,CAAC,CAAC;IAAxE5B,KAAK,GAAA2B,qBAAA,CAAL3B,KAAK;IAAE6B,gBAAgB,GAAAF,qBAAA,CAAhBE,gBAAgB;IAAEC,eAAe,GAAAH,qBAAA,CAAfG,eAAe;EAC/C,oBACI/C,IAAA,CAACT,aAAa;IAAAqC,QAAA,eACV1B,KAAA,CAACvB,aAAa;MACVsC,KAAK,EAAEA,KAAa;MACpB6B,gBAAgB,EAAEA,gBAAiB;MACnCC,eAAe,EAAEA,eAAgB;MAAAnB,QAAA,gBAEjC5B,IAAA,CAACgD,YAAY,IAAE,CAAC,eAChBhD,IAAA,CAACmC,UAAU,IAAE,CAAC;IAAA,CACH;EAAC,CACL,CAAC;AAExB;AAEA,4BAAe9D,KAAK,CAAC4E,IAAI,CAACN,iBAAiB,CAAC;AAE5C,SAASK,YAAYA,CAAA,EAAG;EACpB,IAAMf,QAAQ,GAAGxD,WAAW,CAAC,CAAC;EAC9B,IAAMwC,KAAK,GAAGpC,aAAa,CAAC,CAAsB;EAClDR,KAAK,CAAC6E,SAAS,CAAC,YAAM;IAClBjB,QAAQ,CAACtC,QAAQ,CAACsB,KAAM,CAAC,CAAC;EAC9B,CAAC,EAAE,CAACA,KAAK,EAAEgB,QAAQ,CAAC,CAAC;EAErB,OAAO,IAAI;AACf;AAEA,SAASY,0BAA0BA,CAAA,EAAG;EAClC,IAAMM,aAAa,GAAGzE,WAAW,CAACW,eAAe,CAAC;EAClD,IAAM+D,gBAAyB,GAAG1E,WAAW,CAACY,mBAAmB,CAAC;EAClE,IAAMwD,gBAAgB,GAAGM,gBAAgB,GAAG,UAAU,GAAG,OAAO;EAChE,IAAML,eAAe,GAAGK,gBAAgB,GAAG,SAAS,GAAG,MAAM;EAC7D,IAAInC,KAAwB,GAAGkC,aAAa;EAC5C,IAAI,CAAClC,KAAK,KAAK,MAAM,IAAIA,KAAK,KAAK,OAAO,KAAKmC,gBAAgB,EAAEnC,KAAK,MAAAM,MAAA,CAAMN,KAAK,QAAK;EACtF,OAAO;IACHA,KAAK,EAALA,KAAK;IACL6B,gBAAgB,EAAhBA,gBAAgB;IAChBC,eAAe,EAAfA;EACJ,CAAC;AACL"}
|
@@ -5,6 +5,7 @@ import { useHistory } from 'react-router';
|
|
5
5
|
import cn from 'bem-cn-lite';
|
6
6
|
import { FooterItem, PageLayoutAside } from '@gravity-ui/navigation';
|
7
7
|
import { Menu } from '@gravity-ui/uikit';
|
8
|
+
import { useSelector } from 'react-redux';
|
8
9
|
import Logo from '../../../../img/svg/appLogo.svg';
|
9
10
|
var GearIcon = function GearIcon(props) {
|
10
11
|
return /*#__PURE__*/_jsxs("svg", _objectSpread(_objectSpread({}, props), {}, {
|
@@ -64,7 +65,9 @@ BugIcon.defaultProps = {
|
|
64
65
|
};
|
65
66
|
import Link from '../../components/Link/Link';
|
66
67
|
import unknown from '../../../../img/user-avatar.svg';
|
68
|
+
import YT from '../../config/yt-config';
|
67
69
|
import UIFactory from '../../UIFactory';
|
70
|
+
import { getSettingsCluster } from '../../store/selectors/global';
|
68
71
|
import "./AppNavigationComponent.css";
|
69
72
|
import { jsx as _jsx } from "react/jsx-runtime";
|
70
73
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
@@ -99,7 +102,14 @@ function AppNavigationComponent(_ref) {
|
|
99
102
|
_useState2 = _slicedToArray(_useState, 2),
|
100
103
|
popupVisible = _useState2[0],
|
101
104
|
setPopupVisible = _useState2[1];
|
105
|
+
var settingsCluster = useSelector(getSettingsCluster);
|
102
106
|
var history = useHistory();
|
107
|
+
var showUserIcon = Boolean(currentUser);
|
108
|
+
var showSettings = settingsCluster && Boolean(currentUser);
|
109
|
+
if (authWay === 'passwd') {
|
110
|
+
showUserIcon = Boolean(settingsCluster) && Boolean(currentUser);
|
111
|
+
showSettings = settingsCluster && Boolean(currentUser);
|
112
|
+
}
|
103
113
|
return /*#__PURE__*/_jsx(PageLayoutAside, {
|
104
114
|
multipleTooltip: true,
|
105
115
|
panelItems: panelItems,
|
@@ -123,27 +133,28 @@ function AppNavigationComponent(_ref) {
|
|
123
133
|
});
|
124
134
|
}
|
125
135
|
},
|
126
|
-
onChangeCompact: onChangeCompact,
|
136
|
+
onChangeCompact: showSettings ? onChangeCompact : undefined,
|
127
137
|
renderFooter: function renderFooter(_ref2) {
|
128
138
|
var compact = _ref2.compact;
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
139
|
+
var footerItems = [UIFactory.makeSupportContent({
|
140
|
+
login: currentUser
|
141
|
+
}, function (_ref3) {
|
142
|
+
var onSupportClick = _ref3.onSupportClick,
|
143
|
+
supportContent = _ref3.supportContent;
|
144
|
+
return /*#__PURE__*/_jsxs(React.Fragment, {
|
145
|
+
children: [/*#__PURE__*/_jsx(FooterItem, {
|
146
|
+
compact: compact,
|
147
|
+
item: {
|
148
|
+
id: 'support',
|
149
|
+
title: 'Report a bug',
|
150
|
+
icon: BugIcon,
|
151
|
+
onItemClick: onSupportClick
|
152
|
+
}
|
153
|
+
}, "support"), supportContent]
|
154
|
+
});
|
155
|
+
})];
|
156
|
+
if (showSettings) {
|
157
|
+
footerItems.push( /*#__PURE__*/_jsx(FooterItem, {
|
147
158
|
compact: compact,
|
148
159
|
item: {
|
149
160
|
id: 'settings',
|
@@ -151,7 +162,10 @@ function AppNavigationComponent(_ref) {
|
|
151
162
|
onItemClick: toggleSettingsVisible,
|
152
163
|
icon: GearIcon
|
153
164
|
}
|
154
|
-
}
|
165
|
+
}, "settings"));
|
166
|
+
}
|
167
|
+
if (showUserIcon) {
|
168
|
+
footerItems.push( /*#__PURE__*/_jsx(FooterItem, {
|
155
169
|
compact: compact,
|
156
170
|
item: {
|
157
171
|
id: 'user',
|
@@ -183,7 +197,7 @@ function AppNavigationComponent(_ref) {
|
|
183
197
|
children: /*#__PURE__*/_jsxs(Menu, {
|
184
198
|
children: [authWay === 'passwd' && /*#__PURE__*/_jsx(Menu.Item, {
|
185
199
|
onClick: function onClick() {
|
186
|
-
return history.push(
|
200
|
+
return history.push("/".concat(YT.cluster, "/change-password"));
|
187
201
|
},
|
188
202
|
children: "Change password"
|
189
203
|
}), /*#__PURE__*/_jsx(Menu.Item, {
|
@@ -193,7 +207,10 @@ function AppNavigationComponent(_ref) {
|
|
193
207
|
})
|
194
208
|
});
|
195
209
|
}
|
196
|
-
})
|
210
|
+
}, "user"));
|
211
|
+
}
|
212
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
213
|
+
children: footerItems
|
197
214
|
});
|
198
215
|
}
|
199
216
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","useState","useHistory","cn","FooterItem","PageLayoutAside","Menu","Logo","GearIcon","props","_jsxs","_objectSpread","children","_jsx","clipPath","fill","fillRule","d","clipRule","id","defaultProps","xmlns","width","height","viewBox","BugIcon","Link","unknown","UIFactory","jsx","jsxs","Fragment","_Fragment","block","AppNavigationComponent","_ref","logoClassName","menuItems","currentUser","authWay","panelContent","panelVisible","panelClassName","onClosePanel","settingsVisible","settingsContent","toggleSettingsVisible","onChangeCompact","panelItems","useMemo","content","visible","className","_useState","_useState2","_slicedToArray","popupVisible","setPopupVisible","history","multipleTooltip","headerDecoration","logo","text","textSize","icon","iconSize","iconClassName","wrapper","node","url","theme","target","renderFooter","_ref2","compact","makeSupportContent","login","_ref3","onSupportClick","supportContent","item","title","onItemClick","itemWrapper","_ref4","makeItem","src","enableTooltip","onClosePopup","renderPopupContent","Item","onClick","push","href","memo"],"sources":["AppNavigationComponent.tsx"],"sourcesContent":["import React, {useState} from 'react';\nimport {useHistory} from 'react-router';\nimport cn from 'bem-cn-lite';\nimport {FooterItem, PageLayoutAside} from '@gravity-ui/navigation';\nimport {Menu} from '@gravity-ui/uikit';\n\nimport Logo from '../../../../img/svg/appLogo.svg';\nimport GearIcon from '@gravity-ui/icons/svgs/gear.svg';\nimport BugIcon from '@gravity-ui/icons/svgs/bug.svg';\nimport Link from '../../components/Link/Link';\nimport unknown from '../../../../img/user-avatar.svg';\nimport {AppNavigationProps} from './AppNavigationPageLayout';\nimport UIFactory from '../../UIFactory';\n\nimport './AppNavigationComponent.scss';\n\nconst block = cn('yt-app-navigation');\n\nfunction AppNavigationComponent({\n logoClassName,\n menuItems,\n currentUser,\n authWay,\n\n panelContent,\n panelVisible,\n panelClassName,\n onClosePanel,\n\n settingsVisible,\n settingsContent,\n toggleSettingsVisible,\n\n onChangeCompact,\n}: Omit<AppNavigationProps, 'compact' | 'rememberSize' | 'className'>) {\n const panelItems = React.useMemo(() => {\n return [\n {\n id: 'panel',\n content: panelContent,\n visible: panelVisible,\n className: panelClassName,\n },\n {\n id: 'settings',\n content: settingsContent,\n visible: settingsVisible,\n },\n ];\n }, [panelVisible, panelContent, settingsVisible, settingsContent]);\n\n const [popupVisible, setPopupVisible] = useState(false);\n const history = useHistory();\n\n return (\n <PageLayoutAside\n multipleTooltip\n panelItems={panelItems}\n onClosePanel={onClosePanel}\n menuItems={menuItems}\n headerDecoration\n logo={{\n text: () => 'YTsaurus',\n textSize: 22,\n icon: Logo,\n iconSize: 36,\n iconClassName: logoClassName,\n wrapper: (node) => {\n return (\n <Link url={'/'} theme={'primary'} target=\"_blank\">\n {node}\n </Link>\n );\n },\n }}\n onChangeCompact={onChangeCompact}\n renderFooter={({compact}) => {\n return (\n <>\n {UIFactory.makeSupportContent(\n {login: currentUser},\n ({onSupportClick, supportContent}) => (\n <React.Fragment>\n <FooterItem\n compact={compact}\n item={{\n id: 'support',\n title: 'Report a bug',\n icon: BugIcon,\n onItemClick: onSupportClick,\n }}\n />\n {supportContent}\n </React.Fragment>\n ),\n )}\n <FooterItem\n compact={compact}\n item={{\n id: 'settings',\n title: 'Settings',\n onItemClick: toggleSettingsVisible,\n icon: GearIcon,\n }}\n />\n <FooterItem\n compact={compact}\n item={{\n id: 'user',\n title: currentUser,\n onItemClick: () => {\n setPopupVisible(!popupVisible);\n },\n itemWrapper: ({title}: any, makeItem: any) => {\n return makeItem({\n title,\n icon: (\n <img\n className={block('user-icon')}\n width={40}\n height={40}\n src={unknown}\n />\n ),\n });\n },\n }}\n enableTooltip={!popupVisible}\n popupVisible={popupVisible}\n onClosePopup={() => setPopupVisible(false)}\n renderPopupContent={() => {\n return (\n <div className={block('settings-ul')}>\n <Menu>\n {authWay === 'passwd' && (\n <Menu.Item\n onClick={() => history.push('/change-password')}\n >\n Change password\n </Menu.Item>\n )}\n <Menu.Item href={'/api/yt/logout'}>Logout</Menu.Item>\n </Menu>\n </div>\n );\n }}\n />\n </>\n );\n }}\n />\n );\n}\n\nexport default React.memo(AppNavigationComponent);\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["React","useState","useHistory","cn","FooterItem","PageLayoutAside","Menu","useSelector","Logo","GearIcon","props","_jsxs","_objectSpread","children","_jsx","clipPath","fill","fillRule","d","clipRule","id","defaultProps","xmlns","width","height","viewBox","BugIcon","Link","unknown","YT","UIFactory","getSettingsCluster","jsx","jsxs","Fragment","_Fragment","block","AppNavigationComponent","_ref","logoClassName","menuItems","currentUser","authWay","panelContent","panelVisible","panelClassName","onClosePanel","settingsVisible","settingsContent","toggleSettingsVisible","onChangeCompact","panelItems","useMemo","content","visible","className","_useState","_useState2","_slicedToArray","popupVisible","setPopupVisible","settingsCluster","history","showUserIcon","Boolean","showSettings","multipleTooltip","headerDecoration","logo","text","textSize","icon","iconSize","iconClassName","wrapper","node","url","theme","target","undefined","renderFooter","_ref2","compact","footerItems","makeSupportContent","login","_ref3","onSupportClick","supportContent","item","title","onItemClick","push","itemWrapper","_ref4","makeItem","src","enableTooltip","onClosePopup","renderPopupContent","Item","onClick","concat","cluster","href","memo"],"sources":["AppNavigationComponent.tsx"],"sourcesContent":["import React, {useState} from 'react';\nimport {useHistory} from 'react-router';\nimport cn from 'bem-cn-lite';\nimport {FooterItem, PageLayoutAside} from '@gravity-ui/navigation';\nimport {Menu} from '@gravity-ui/uikit';\nimport {useSelector} from 'react-redux';\n\nimport Logo from '../../../../img/svg/appLogo.svg';\nimport GearIcon from '@gravity-ui/icons/svgs/gear.svg';\nimport BugIcon from '@gravity-ui/icons/svgs/bug.svg';\nimport Link from '../../components/Link/Link';\nimport unknown from '../../../../img/user-avatar.svg';\nimport {AppNavigationProps} from './AppNavigationPageLayout';\nimport YT from '../../config/yt-config';\nimport UIFactory from '../../UIFactory';\nimport {getSettingsCluster} from '../../store/selectors/global';\n\nimport './AppNavigationComponent.scss';\n\nconst block = cn('yt-app-navigation');\n\nfunction AppNavigationComponent({\n logoClassName,\n menuItems,\n currentUser,\n authWay,\n\n panelContent,\n panelVisible,\n panelClassName,\n onClosePanel,\n\n settingsVisible,\n settingsContent,\n toggleSettingsVisible,\n\n onChangeCompact,\n}: Omit<AppNavigationProps, 'compact' | 'rememberSize' | 'className'>) {\n const panelItems = React.useMemo(() => {\n return [\n {\n id: 'panel',\n content: panelContent,\n visible: panelVisible,\n className: panelClassName,\n },\n {\n id: 'settings',\n content: settingsContent,\n visible: settingsVisible,\n },\n ];\n }, [panelVisible, panelContent, settingsVisible, settingsContent]);\n\n const [popupVisible, setPopupVisible] = useState(false);\n const settingsCluster = useSelector(getSettingsCluster);\n const history = useHistory();\n\n let showUserIcon = Boolean(currentUser);\n let showSettings = settingsCluster && Boolean(currentUser);\n\n if (authWay === 'passwd') {\n showUserIcon = Boolean(settingsCluster) && Boolean(currentUser);\n showSettings = settingsCluster && Boolean(currentUser);\n }\n\n return (\n <PageLayoutAside\n multipleTooltip\n panelItems={panelItems}\n onClosePanel={onClosePanel}\n menuItems={menuItems}\n headerDecoration\n logo={{\n text: () => 'YTsaurus',\n textSize: 22,\n icon: Logo,\n iconSize: 36,\n iconClassName: logoClassName,\n wrapper: (node) => {\n return (\n <Link url={'/'} theme={'primary'} target=\"_blank\">\n {node}\n </Link>\n );\n },\n }}\n onChangeCompact={showSettings ? onChangeCompact : undefined}\n renderFooter={({compact}) => {\n const footerItems = [\n UIFactory.makeSupportContent(\n {login: currentUser},\n ({onSupportClick, supportContent}) => (\n <React.Fragment>\n <FooterItem\n key=\"support\"\n compact={compact}\n item={{\n id: 'support',\n title: 'Report a bug',\n icon: BugIcon,\n onItemClick: onSupportClick,\n }}\n />\n {supportContent}\n </React.Fragment>\n ),\n ),\n ];\n\n if (showSettings) {\n footerItems.push(\n <FooterItem\n key=\"settings\"\n compact={compact}\n item={{\n id: 'settings',\n title: 'Settings',\n onItemClick: toggleSettingsVisible,\n icon: GearIcon,\n }}\n />,\n );\n }\n\n if (showUserIcon) {\n footerItems.push(\n <FooterItem\n key=\"user\"\n compact={compact}\n item={{\n id: 'user',\n title: currentUser,\n onItemClick: () => {\n setPopupVisible(!popupVisible);\n },\n itemWrapper: ({title}: any, makeItem: any) => {\n return makeItem({\n title,\n icon: (\n <img\n className={block('user-icon')}\n width={40}\n height={40}\n src={unknown}\n />\n ),\n });\n },\n }}\n enableTooltip={!popupVisible}\n popupVisible={popupVisible}\n onClosePopup={() => setPopupVisible(false)}\n renderPopupContent={() => {\n return (\n <div className={block('settings-ul')}>\n <Menu>\n {authWay === 'passwd' && (\n <Menu.Item\n onClick={() =>\n history.push(\n `/${YT.cluster}/change-password`,\n )\n }\n >\n Change password\n </Menu.Item>\n )}\n <Menu.Item href={'/api/yt/logout'}>Logout</Menu.Item>\n </Menu>\n </div>\n );\n }}\n />,\n );\n }\n\n return <>{footerItems}</>;\n }}\n />\n );\n}\n\nexport default React.memo(AppNavigationComponent);\n"],"mappings":"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"}
|
@@ -22,10 +22,11 @@ declare const _default: import("react-redux").ConnectedComponent<typeof ClusterP
|
|
22
22
|
initClusterParams: PropTypes.Validator<(...args: any[]) => any>;
|
23
23
|
updateCluster: PropTypes.Validator<(...args: any[]) => any>;
|
24
24
|
updateTitle: PropTypes.Validator<(...args: any[]) => any>;
|
25
|
+
unmountCluster: PropTypes.Validator<(...args: any[]) => any>;
|
25
26
|
trackVisit: PropTypes.Validator<(...args: any[]) => any>;
|
26
27
|
allowChyt: PropTypes.Requireable<boolean>;
|
27
28
|
allowQueryTracker: PropTypes.Requireable<boolean>;
|
28
|
-
}>, "error" | "clusters" | "login" | "startingPage" | "clusterPagePaneSizes" | "hasError" | "maintenancePageEvent" | "trackVisit" | "allowQueryTracker" | "setSetting" | "splitScreen" | "updateTitle" | "updateCluster" | "splitMenuItemsAction" | "joinMenuItemsAction" | "isLoaded" | "paramsError" | "allowChyt" | "initClusterParams">>;
|
29
|
+
}>, "error" | "clusters" | "login" | "startingPage" | "clusterPagePaneSizes" | "hasError" | "maintenancePageEvent" | "trackVisit" | "allowQueryTracker" | "setSetting" | "splitScreen" | "updateTitle" | "updateCluster" | "unmountCluster" | "splitMenuItemsAction" | "joinMenuItemsAction" | "isLoaded" | "paramsError" | "allowChyt" | "initClusterParams">>;
|
29
30
|
export default _default;
|
30
31
|
declare class ClusterPage extends React.Component<any, any, any> {
|
31
32
|
static propTypes: {
|
@@ -52,6 +53,7 @@ declare class ClusterPage extends React.Component<any, any, any> {
|
|
52
53
|
initClusterParams: PropTypes.Validator<(...args: any[]) => any>;
|
53
54
|
updateCluster: PropTypes.Validator<(...args: any[]) => any>;
|
54
55
|
updateTitle: PropTypes.Validator<(...args: any[]) => any>;
|
56
|
+
unmountCluster: PropTypes.Validator<(...args: any[]) => any>;
|
55
57
|
trackVisit: PropTypes.Validator<(...args: any[]) => any>;
|
56
58
|
allowChyt: PropTypes.Requireable<boolean>;
|
57
59
|
allowQueryTracker: PropTypes.Requireable<boolean>;
|