@ytsaurus/ui 1.14.0 → 1.14.2
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/build/cjs/@types/types.d.ts +1 -0
- package/build/cjs/server/controllers/home.js +1 -1
- package/build/cjs/server/controllers/home.js.map +1 -1
- package/build/cjs/shared/utils/index.js +3 -3
- package/build/cjs/shared/utils/index.js.map +1 -1
- package/build/cjs/ui/components/AttributesModal/AttributesModal.d.ts +1 -1
- package/build/cjs/ui/containers/RetryBatchModal/RetryBatchModal.js +1 -2
- package/build/cjs/ui/containers/RetryBatchModal/RetryBatchModal.js.map +1 -1
- package/build/cjs/ui/pages/navigation/content/Table/TableMeta/TableMeta.d.ts +1 -1
- package/build/cjs/ui/pages/operations/selectors.d.ts +1 -1
- package/build/cjs/ui/pages/query-tracker/module/api.js +1 -1
- package/build/cjs/ui/pages/query-tracker/module/api.js.map +1 -1
- package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.d.ts +4 -4
- package/build/cjs/ui/pages/query-tracker/module/query/selectors.d.ts +1 -1
- package/build/cjs/ui/pages/query-tracker/module/settings/selector.d.ts +1 -1
- package/build/cjs/ui/rum/constants.d.ts +2 -0
- package/build/cjs/ui/rum/constants.js +4 -1
- package/build/cjs/ui/rum/constants.js.map +1 -1
- package/build/cjs/ui/rum/rum-counter.js +28 -1
- package/build/cjs/ui/rum/rum-counter.js.map +1 -1
- package/build/cjs/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js +2 -1
- package/build/cjs/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
- package/build/cjs/ui/store/actions/components/node/node.js +0 -1
- package/build/cjs/ui/store/actions/components/node/node.js.map +1 -1
- package/build/cjs/ui/store/actions/components/nodes/nodes.js +1 -1
- package/build/cjs/ui/store/actions/components/nodes/nodes.js.map +1 -1
- package/build/cjs/ui/store/actions/execute-batch.d.ts +2 -1
- package/build/cjs/ui/store/actions/execute-batch.js +8 -5
- package/build/cjs/ui/store/actions/execute-batch.js.map +1 -1
- package/build/cjs/ui/store/actions/job/competitors.js +6 -3
- package/build/cjs/ui/store/actions/job/competitors.js.map +1 -1
- package/build/cjs/ui/store/actions/job/general.js +6 -3
- package/build/cjs/ui/store/actions/job/general.js.map +1 -1
- package/build/cjs/ui/store/actions/job/specification.js +8 -5
- package/build/cjs/ui/store/actions/job/specification.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/content/file.js +8 -5
- package/build/cjs/ui/store/actions/navigation/content/file.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/content/map-node.js +1 -1
- package/build/cjs/ui/store/actions/navigation/content/map-node.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/content/table/table.js +17 -11
- package/build/cjs/ui/store/actions/navigation/content/table/table.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/content/transaction.js +5 -2
- package/build/cjs/ui/store/actions/navigation/content/transaction.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/index.js +1 -1
- package/build/cjs/ui/store/actions/navigation/index.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/attributes-editor.js +9 -3
- package/build/cjs/ui/store/actions/navigation/modals/attributes-editor.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/copy-object.js +22 -20
- package/build/cjs/ui/store/actions/navigation/modals/copy-object.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/create-directory.js +7 -4
- package/build/cjs/ui/store/actions/navigation/modals/create-directory.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/delete-object.js +13 -14
- package/build/cjs/ui/store/actions/navigation/modals/delete-object.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/dyn-tables-state-modal.js +9 -5
- package/build/cjs/ui/store/actions/navigation/modals/dyn-tables-state-modal.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/move-object.js +22 -20
- package/build/cjs/ui/store/actions/navigation/modals/move-object.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/modals/restore-object.js +3 -11
- package/build/cjs/ui/store/actions/navigation/modals/restore-object.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/tabs/locks.js +1 -1
- package/build/cjs/ui/store/actions/navigation/tabs/locks.js.map +1 -1
- package/build/cjs/ui/store/actions/navigation/tabs/tablet-errors.js +15 -12
- package/build/cjs/ui/store/actions/navigation/tabs/tablet-errors.js.map +1 -1
- package/build/cjs/ui/store/actions/operations/jobs.js +8 -2
- package/build/cjs/ui/store/actions/operations/jobs.js.map +1 -1
- package/build/cjs/ui/store/actions/operations/list.js +4 -2
- package/build/cjs/ui/store/actions/operations/list.js.map +1 -1
- package/build/cjs/ui/store/actions/scheduling/expanded-pools.js +2 -3
- package/build/cjs/ui/store/actions/scheduling/expanded-pools.js.map +1 -1
- package/build/cjs/ui/store/actions/scheduling/scheduling-ts.js +3 -3
- package/build/cjs/ui/store/actions/scheduling/scheduling-ts.js.map +1 -1
- package/build/cjs/ui/store/actions/scheduling/scheduling.js +1 -1
- package/build/cjs/ui/store/actions/scheduling/scheduling.js.map +1 -1
- package/build/cjs/ui/store/actions/system/nodes.js +1 -1
- package/build/cjs/ui/store/actions/system/nodes.js.map +1 -1
- package/build/cjs/ui/store/actions/system/schedulers.js +2 -2
- package/build/cjs/ui/store/actions/system/schedulers.js.map +1 -1
- package/build/cjs/ui/store/actions/tablet/stores.js +1 -1
- package/build/cjs/ui/store/actions/tablet/stores.js.map +1 -1
- package/build/cjs/ui/store/actions/tablet_cell_bundles/index.js +1 -1
- package/build/cjs/ui/store/actions/tablet_cell_bundles/index.js.map +1 -1
- package/build/cjs/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js +5 -5
- package/build/cjs/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
- package/build/cjs/ui/store/actions/users.js +1 -1
- package/build/cjs/ui/store/actions/users.js.map +1 -1
- package/build/cjs/ui/store/reducers/execute-batch.d.ts +1 -1
- package/build/cjs/ui/store/reducers/execute-batch.js.map +1 -1
- package/build/cjs/ui/store/reducers/index.d.ts +1 -1
- package/build/cjs/ui/store/reducers/navigation/index.d.ts +1 -1
- package/build/cjs/ui/store/selectors/accounts/account-usage.d.ts +8 -8
- package/build/cjs/ui/store/selectors/accounts/accounts-ts.d.ts +8 -8
- package/build/cjs/ui/store/selectors/chaos_cell_bundles/index.d.ts +11 -11
- package/build/cjs/ui/store/selectors/chyt/index.d.ts +7 -7
- package/build/cjs/ui/store/selectors/components/node/memory.d.ts +7 -7
- package/build/cjs/ui/store/selectors/components/node-maintenance-modal.d.ts +3 -3
- package/build/cjs/ui/store/selectors/components/nodes/node-card.d.ts +1 -1
- package/build/cjs/ui/store/selectors/components/nodes/nodes/data.d.ts +2 -2
- package/build/cjs/ui/store/selectors/components/nodes/nodes/predicates.d.ts +6 -6
- package/build/cjs/ui/store/selectors/components/versions/versions_v2-ts.d.ts +2 -2
- package/build/cjs/ui/store/selectors/components/versions/versions_v2.d.ts +5 -5
- package/build/cjs/ui/store/selectors/global/index.d.ts +14 -14
- package/build/cjs/ui/store/selectors/global/supported-features.d.ts +6 -6
- package/build/cjs/ui/store/selectors/modals/errors.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/content/document.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/content/replicated-table.d.ts +3 -3
- package/build/cjs/ui/store/selectors/navigation/content/table-mount-config.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/content/table-ts.d.ts +4 -4
- package/build/cjs/ui/store/selectors/navigation/content/table.d.ts +7 -7
- package/build/cjs/ui/store/selectors/navigation/modals/attributes-editor.d.ts +3 -3
- package/build/cjs/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/navigation.d.ts +4 -4
- package/build/cjs/ui/store/selectors/navigation/tabs/access-log.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/tabs/annotation.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/tabs/consumer.d.ts +1 -1
- package/build/cjs/ui/store/selectors/navigation/tabs/locks.d.ts +2 -2
- package/build/cjs/ui/store/selectors/navigation/tabs/queue.d.ts +2 -2
- package/build/cjs/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +1 -1
- package/build/cjs/ui/store/selectors/operations/index.d.ts +12 -12
- package/build/cjs/ui/store/selectors/operations/jobs-monitor.d.ts +4 -4
- package/build/cjs/ui/store/selectors/operations/operation.d.ts +12 -12
- package/build/cjs/ui/store/selectors/operations/operations-list.d.ts +3 -3
- package/build/cjs/ui/store/selectors/operations/statistics-v2.d.ts +8 -8
- package/build/cjs/ui/store/selectors/scheduling/attributes-to-filter.d.ts +1 -1
- package/build/cjs/ui/store/selectors/scheduling/create-pool-dialog.d.ts +1 -1
- package/build/cjs/ui/store/selectors/scheduling/expanded-pools.d.ts +1 -1
- package/build/cjs/ui/store/selectors/scheduling/index.d.ts +1 -1
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.d.ts +3 -3
- package/build/cjs/ui/store/selectors/scheduling/scheduling-ts.d.ts +6 -6
- package/build/cjs/ui/store/selectors/scheduling/scheduling.d.ts +20 -20
- package/build/cjs/ui/store/selectors/tablet_cell_bundles/index.d.ts +15 -15
- package/build/cjs/ui/store/selectors/thor/support.d.ts +5 -5
- package/build/cjs/ui/utils/acl/acl-api.js +4 -4
- package/build/cjs/ui/utils/acl/acl-api.js.map +1 -1
- package/build/cjs/ui/utils/batch.d.ts +2 -2
- package/build/cjs/ui/utils/cypress-attributes.js +1 -1
- package/build/cjs/ui/utils/cypress-attributes.js.map +1 -1
- package/build/cjs/ui/utils/errors/ui-error.d.ts +14 -0
- package/build/cjs/ui/utils/errors/ui-error.js +24 -0
- package/build/cjs/ui/utils/errors/ui-error.js.map +1 -0
- package/build/cjs/ui/utils/utils.d.ts +14 -8
- package/build/cjs/ui/utils/utils.js +9 -14
- package/build/cjs/ui/utils/utils.js.map +1 -1
- package/build/esm/@types/types.d.ts +1 -0
- package/build/esm/server/controllers/home.js +1 -1
- package/build/esm/server/controllers/home.js.map +1 -1
- package/build/esm/shared/utils/index.js +4 -8
- package/build/esm/shared/utils/index.js.map +1 -1
- package/build/esm/ui/components/AttributesModal/AttributesModal.d.ts +1 -1
- package/build/esm/ui/containers/RetryBatchModal/RetryBatchModal.js +1 -2
- package/build/esm/ui/containers/RetryBatchModal/RetryBatchModal.js.map +1 -1
- package/build/esm/ui/pages/navigation/content/Table/TableMeta/TableMeta.d.ts +1 -1
- package/build/esm/ui/pages/operations/selectors.d.ts +1 -1
- package/build/esm/ui/pages/query-tracker/module/api.js +1 -1
- package/build/esm/ui/pages/query-tracker/module/api.js.map +1 -1
- package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.d.ts +4 -4
- package/build/esm/ui/pages/query-tracker/module/query/selectors.d.ts +1 -1
- package/build/esm/ui/pages/query-tracker/module/settings/selector.d.ts +1 -1
- package/build/esm/ui/rum/constants.d.ts +2 -0
- package/build/esm/ui/rum/constants.js +4 -1
- package/build/esm/ui/rum/constants.js.map +1 -1
- package/build/esm/ui/rum/rum-counter.js +28 -1
- package/build/esm/ui/rum/rum-counter.js.map +1 -1
- package/build/esm/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js +2 -1
- package/build/esm/ui/store/actions/chaos_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
- package/build/esm/ui/store/actions/components/node/node.js +0 -1
- package/build/esm/ui/store/actions/components/node/node.js.map +1 -1
- package/build/esm/ui/store/actions/components/nodes/nodes.js +1 -1
- package/build/esm/ui/store/actions/components/nodes/nodes.js.map +1 -1
- package/build/esm/ui/store/actions/execute-batch.d.ts +2 -1
- package/build/esm/ui/store/actions/execute-batch.js +8 -5
- package/build/esm/ui/store/actions/execute-batch.js.map +1 -1
- package/build/esm/ui/store/actions/job/competitors.js +6 -3
- package/build/esm/ui/store/actions/job/competitors.js.map +1 -1
- package/build/esm/ui/store/actions/job/general.js +6 -3
- package/build/esm/ui/store/actions/job/general.js.map +1 -1
- package/build/esm/ui/store/actions/job/specification.js +8 -5
- package/build/esm/ui/store/actions/job/specification.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/content/file.js +8 -5
- package/build/esm/ui/store/actions/navigation/content/file.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/content/map-node.js +1 -1
- package/build/esm/ui/store/actions/navigation/content/map-node.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/content/table/table.js +17 -11
- package/build/esm/ui/store/actions/navigation/content/table/table.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/content/transaction.js +5 -2
- package/build/esm/ui/store/actions/navigation/content/transaction.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/index.js +1 -1
- package/build/esm/ui/store/actions/navigation/index.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/attributes-editor.js +9 -3
- package/build/esm/ui/store/actions/navigation/modals/attributes-editor.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/copy-object.js +23 -21
- package/build/esm/ui/store/actions/navigation/modals/copy-object.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/create-directory.js +7 -4
- package/build/esm/ui/store/actions/navigation/modals/create-directory.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/delete-object.js +14 -15
- package/build/esm/ui/store/actions/navigation/modals/delete-object.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/dyn-tables-state-modal.js +9 -5
- package/build/esm/ui/store/actions/navigation/modals/dyn-tables-state-modal.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/move-object.js +23 -21
- package/build/esm/ui/store/actions/navigation/modals/move-object.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/modals/restore-object.js +4 -12
- package/build/esm/ui/store/actions/navigation/modals/restore-object.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/tabs/locks.js +1 -1
- package/build/esm/ui/store/actions/navigation/tabs/locks.js.map +1 -1
- package/build/esm/ui/store/actions/navigation/tabs/tablet-errors.js +15 -12
- package/build/esm/ui/store/actions/navigation/tabs/tablet-errors.js.map +1 -1
- package/build/esm/ui/store/actions/operations/jobs.js +8 -2
- package/build/esm/ui/store/actions/operations/jobs.js.map +1 -1
- package/build/esm/ui/store/actions/operations/list.js +4 -2
- package/build/esm/ui/store/actions/operations/list.js.map +1 -1
- package/build/esm/ui/store/actions/scheduling/expanded-pools.js +2 -3
- package/build/esm/ui/store/actions/scheduling/expanded-pools.js.map +1 -1
- package/build/esm/ui/store/actions/scheduling/scheduling-ts.js +3 -3
- package/build/esm/ui/store/actions/scheduling/scheduling-ts.js.map +1 -1
- package/build/esm/ui/store/actions/scheduling/scheduling.js +1 -1
- package/build/esm/ui/store/actions/scheduling/scheduling.js.map +1 -1
- package/build/esm/ui/store/actions/system/nodes.js +1 -1
- package/build/esm/ui/store/actions/system/nodes.js.map +1 -1
- package/build/esm/ui/store/actions/system/schedulers.js +2 -2
- package/build/esm/ui/store/actions/system/schedulers.js.map +1 -1
- package/build/esm/ui/store/actions/tablet/stores.js +1 -1
- package/build/esm/ui/store/actions/tablet/stores.js.map +1 -1
- package/build/esm/ui/store/actions/tablet_cell_bundles/index.js +1 -1
- package/build/esm/ui/store/actions/tablet_cell_bundles/index.js.map +1 -1
- package/build/esm/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js +5 -5
- package/build/esm/ui/store/actions/tablet_cell_bundles/tablet-cell-bundle-editor.js.map +1 -1
- package/build/esm/ui/store/actions/users.js +1 -1
- package/build/esm/ui/store/actions/users.js.map +1 -1
- package/build/esm/ui/store/reducers/execute-batch.d.ts +1 -1
- package/build/esm/ui/store/reducers/execute-batch.js.map +1 -1
- package/build/esm/ui/store/reducers/index.d.ts +1 -1
- package/build/esm/ui/store/reducers/navigation/index.d.ts +1 -1
- package/build/esm/ui/store/selectors/accounts/account-usage.d.ts +8 -8
- package/build/esm/ui/store/selectors/accounts/accounts-ts.d.ts +8 -8
- package/build/esm/ui/store/selectors/chaos_cell_bundles/index.d.ts +11 -11
- package/build/esm/ui/store/selectors/chyt/index.d.ts +7 -7
- package/build/esm/ui/store/selectors/components/node/memory.d.ts +7 -7
- package/build/esm/ui/store/selectors/components/node-maintenance-modal.d.ts +3 -3
- package/build/esm/ui/store/selectors/components/nodes/node-card.d.ts +1 -1
- package/build/esm/ui/store/selectors/components/nodes/nodes/data.d.ts +2 -2
- package/build/esm/ui/store/selectors/components/nodes/nodes/predicates.d.ts +6 -6
- package/build/esm/ui/store/selectors/components/versions/versions_v2-ts.d.ts +2 -2
- package/build/esm/ui/store/selectors/components/versions/versions_v2.d.ts +5 -5
- package/build/esm/ui/store/selectors/global/index.d.ts +14 -14
- package/build/esm/ui/store/selectors/global/supported-features.d.ts +6 -6
- package/build/esm/ui/store/selectors/modals/errors.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/content/document.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/content/replicated-table.d.ts +3 -3
- package/build/esm/ui/store/selectors/navigation/content/table-mount-config.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/content/table-ts.d.ts +4 -4
- package/build/esm/ui/store/selectors/navigation/content/table.d.ts +7 -7
- package/build/esm/ui/store/selectors/navigation/modals/attributes-editor.d.ts +3 -3
- package/build/esm/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/navigation.d.ts +4 -4
- package/build/esm/ui/store/selectors/navigation/tabs/access-log.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/tabs/annotation.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/tabs/consumer.d.ts +1 -1
- package/build/esm/ui/store/selectors/navigation/tabs/locks.d.ts +2 -2
- package/build/esm/ui/store/selectors/navigation/tabs/queue.d.ts +2 -2
- package/build/esm/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +1 -1
- package/build/esm/ui/store/selectors/operations/index.d.ts +12 -12
- package/build/esm/ui/store/selectors/operations/jobs-monitor.d.ts +4 -4
- package/build/esm/ui/store/selectors/operations/operation.d.ts +12 -12
- package/build/esm/ui/store/selectors/operations/operations-list.d.ts +3 -3
- package/build/esm/ui/store/selectors/operations/statistics-v2.d.ts +8 -8
- package/build/esm/ui/store/selectors/scheduling/attributes-to-filter.d.ts +1 -1
- package/build/esm/ui/store/selectors/scheduling/create-pool-dialog.d.ts +1 -1
- package/build/esm/ui/store/selectors/scheduling/expanded-pools.d.ts +1 -1
- package/build/esm/ui/store/selectors/scheduling/index.d.ts +1 -1
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.d.ts +3 -3
- package/build/esm/ui/store/selectors/scheduling/scheduling-ts.d.ts +6 -6
- package/build/esm/ui/store/selectors/scheduling/scheduling.d.ts +20 -20
- package/build/esm/ui/store/selectors/tablet_cell_bundles/index.d.ts +15 -15
- package/build/esm/ui/store/selectors/thor/support.d.ts +5 -5
- package/build/esm/ui/utils/acl/acl-api.js +4 -4
- package/build/esm/ui/utils/acl/acl-api.js.map +1 -1
- package/build/esm/ui/utils/batch.d.ts +2 -2
- package/build/esm/ui/utils/cypress-attributes.js +1 -1
- package/build/esm/ui/utils/cypress-attributes.js.map +1 -1
- package/build/esm/ui/utils/errors/ui-error.d.ts +14 -0
- package/build/esm/ui/utils/errors/ui-error.js +17 -0
- package/build/esm/ui/utils/errors/ui-error.js.map +1 -0
- package/build/esm/ui/utils/utils.d.ts +14 -8
- package/build/esm/ui/utils/utils.js +9 -14
- package/build/esm/ui/utils/utils.js.map +1 -1
- package/dist/public/build/assets-manifest.json +4 -4
- package/dist/public/build/js/main.8e777909.js +3 -0
- package/dist/public/build/js/{main.64fccb27.js.map → main.8e777909.js.map} +1 -1
- package/dist/public/build/manifest.json +2 -2
- package/dist/server/controllers/home.js +1 -1
- package/dist/shared/utils/index.js +3 -3
- package/package.json +3 -4
- package/dist/public/build/js/main.64fccb27.js +0 -3
- /package/dist/public/build/js/{main.64fccb27.js.LICENSE.txt → main.8e777909.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_each","_interopRequireDefault","require","_filter","_reduce","_map","_uikit","_ypath","_hammer","_index","_proxies","_utils","_constants","_ytApi","_rumWrapApi","obj","__esModule","default","loadSystemNodes","nodeTypes","dispatch","type","SYSTEM_FETCH_NODES","REQUEST","requests","command","parameters","_objectSpread","path","suppress_transaction_coordinator_sync","suppress_upstream_sync","USE_MAX_SIZE","concat","_toConsumableArray","map","nodeType","attributes","USE_CACHE","ytApiV3Id","executeBatch","YTApiId","systemNodes","then","data","_splitBatchResults","splitBatchResults","error","results","_ref","_ref2","_toArray","rackNames","nodesByType","slice","nodes","reduce","acc","items","racks","prepareRacks","overviewCounters","extractNodeCounters","_groupRacks","groupRacks","rackGroups","counters","SUCCESS","roleGroups","prepareRoleGroups","undefined","_error$response","FAILURE","response","code","message","toaster","Toaster","add","name","autoHiding","content","title","actions","label","onClick","showErrorPopup","isRetryFutile","groupedRacks","dataCenterNames","reduce_","rack","groupName","split","Set","forEach","dcName","rackGroup","filter_","startsWith","isGroupEmpty","every","empty","increaseFlagCounter","dst","attrs","total","length","each_","node","$attributes","flags","incrementStateCounter","states","state","effectiveStates","effectiveState","decommissioned","banned","full","alerts","prepareNodes","sort","nodeA","nodeB","$value","prepareRackNames","rackA","rackB","hammer","utils","compareVectors","format","unshift","UNAWARE","createRack","insertNodeToRack","rackName","ypath","getValue","getBoolean","Boolean","effectiveFlag","Object","hasOwnProperty","call","push","map_","item","key","groups","rackInfo2roleGroup","toAdd","filter","g","res","_node$$attributes","info","role","getNodeffectiveState"],"sources":["nodes.ts"],"sourcesContent":["import each_ from 'lodash/each';\nimport filter_ from 'lodash/filter';\nimport reduce_ from 'lodash/reduce';\nimport map_ from 'lodash/map';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport ypath from '../../../common/thor/ypath';\nimport hammer from '../../../common/hammer';\nimport {isRetryFutile} from '../../../utils/index';\nimport {getNodeffectiveState, incrementStateCounter} from '../../../utils/system/proxies';\nimport {showErrorPopup, splitBatchResults} from '../../../utils/utils';\nimport {SYSTEM_FETCH_NODES, UNAWARE} from '../../../constants';\nimport {USE_CACHE, USE_MAX_SIZE} from '../../../../shared/constants/yt-api';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\n\nimport type {RootState} from '../../../store/reducers';\nimport type {\n NodeEffectiveState,\n RackInfo,\n SystemNodeInfo,\n SystemNodesAction,\n SystemNodesState,\n} from '../../../store/reducers/system/nodes';\nimport type {BatchSubRequest} from '../../../../shared/yt-types';\nimport type {\n HttpProxiesState,\n RoleGroupInfo,\n RoleGroupItemInfo,\n} from '../../../store/reducers/system/proxies';\nimport {ThunkAction} from 'redux-thunk';\nimport {NodeType} from '../../../../shared/constants/system';\n\ntype SystemNodesThunkAction<T = void> = ThunkAction<T, RootState, unknown, SystemNodesAction>;\n\nexport function loadSystemNodes(\n nodeTypes: Array<NodeType>,\n): SystemNodesThunkAction<Promise<undefined | {isRetryFutile?: boolean}>> {\n return (dispatch) => {\n dispatch({type: SYSTEM_FETCH_NODES.REQUEST});\n\n const requests: Array<BatchSubRequest> = [\n {\n command: 'list',\n parameters: {\n path: '//sys/racks',\n suppress_transaction_coordinator_sync: true,\n suppress_upstream_sync: true,\n ...USE_MAX_SIZE,\n },\n },\n ...nodeTypes.map((nodeType) => {\n return {\n command: 'list' as const,\n parameters: {\n path: `//sys/${nodeType}`,\n attributes: [\n 'state',\n 'banned',\n 'decommissioned',\n 'alert_count',\n 'full',\n 'rack',\n ],\n suppress_transaction_coordinator_sync: true,\n suppress_upstream_sync: true,\n ...USE_CACHE,\n ...USE_MAX_SIZE,\n },\n };\n }),\n ];\n\n return ytApiV3Id\n .executeBatch(YTApiId.systemNodes, {requests})\n .then((data) => {\n const {error, results} = splitBatchResults<string | Array<SystemNodeInfo>>(data);\n if (error) {\n throw error;\n }\n\n const [rackNames, ...nodesByType] = results as [\n _first: Array<string>,\n ..._rest: Array<Array<SystemNodeInfo>>,\n ];\n\n const nodes = nodesByType.reduce((acc, items) => {\n return acc.concat(items);\n }, []);\n\n const racks = prepareRacks(rackNames, nodes);\n const overviewCounters = extractNodeCounters(racks);\n const {rackGroups, counters} = groupRacks(racks);\n dispatch({\n type: SYSTEM_FETCH_NODES.SUCCESS,\n data: {\n overviewCounters,\n counters,\n roleGroups: prepareRoleGroups(rackGroups),\n },\n });\n return undefined;\n })\n .catch((error) => {\n dispatch({\n type: SYSTEM_FETCH_NODES.FAILURE,\n data: error,\n });\n\n const data = error?.response?.data || error;\n const {code, message} = data;\n\n const toaster = new Toaster();\n\n toaster.add({\n name: 'load/system/nodes',\n autoHiding: false,\n type: 'error',\n content: `[code ${code}] ${message}`,\n title: 'Could not load Nodes',\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n\n return {isRetryFutile: isRetryFutile(error.code)};\n });\n };\n}\n\nfunction groupRacks(racks: Array<RackInfo>) {\n const groupedRacks: Record<string, Array<RackInfo>> = {},\n counters: SystemNodesState['counters'] = {};\n const dataCenterNames = reduce_(\n racks,\n (acc, rack) => {\n const groupName = rack.name.split('-')[0];\n return groupName ? acc.add(groupName) : acc;\n },\n new Set<string>(),\n );\n // regroup racks by datacenters they belong to\n dataCenterNames.forEach((dcName) => {\n const rackGroup = filter_(racks, (rack) => {\n return rack.name === dcName || rack.name.startsWith(`${dcName}-`);\n });\n const isGroupEmpty = rackGroup.every((rack) => rack.empty);\n if (!isGroupEmpty) {\n groupedRacks[dcName] = rackGroup;\n counters[dcName] = extractNodeCounters(rackGroup);\n }\n });\n return {rackGroups: groupedRacks, counters};\n}\n\nfunction increaseFlagCounter<K extends keyof RackInfo['nodes'][number]['$attributes']>(\n dst: Partial<Record<K, number>>,\n name: K,\n attrs: Record<K, boolean>,\n) {\n if (dst[name] === undefined) {\n dst[name] = attrs[name] ? 1 : 0;\n } else {\n dst[name]! += attrs[name] ? 1 : 0;\n }\n}\n\nfunction extractNodeCounters(racks: Array<RackInfo>) {\n return reduce_(\n racks,\n (acc: HttpProxiesState['counters'], rack: RackInfo) => {\n acc.total += rack.nodes.length;\n\n each_(rack.nodes, (node) => {\n const attrs = node.$attributes;\n increaseFlagCounter(acc.flags, 'decommissioned', attrs);\n increaseFlagCounter(acc.flags, 'full', attrs);\n increaseFlagCounter(acc.flags, 'alerts', attrs);\n increaseFlagCounter(acc.flags, 'banned', attrs);\n\n incrementStateCounter(acc.states, attrs.state);\n incrementStateCounter(acc.effectiveStates, attrs.effectiveState);\n });\n\n return acc;\n },\n {\n total: 0,\n flags: {\n decommissioned: 0,\n banned: 0,\n full: 0,\n alerts: 0,\n },\n states: {}, // For right side counters\n effectiveStates: {}, // For state progress bar\n } as HttpProxiesState['counters'],\n );\n}\n\nfunction prepareNodes(nodes: Array<SystemNodeInfo>) {\n return nodes.sort((nodeA, nodeB) => {\n return nodeA.$value > nodeB.$value ? 1 : -1;\n });\n}\n\nfunction prepareRackNames(rackNames: Array<string>) {\n rackNames.sort((rackA, rackB) => {\n return hammer.utils.compareVectors(\n hammer.format['RackToVector'](rackA),\n hammer.format['RackToVector'](rackB),\n );\n });\n\n rackNames.unshift(UNAWARE);\n\n return rackNames;\n}\n\nfunction createRack(name: string): RackInfo {\n return {\n name,\n empty: true,\n nodes: [],\n };\n}\n\nfunction insertNodeToRack(racks: Record<string, RackInfo>, node: SystemNodeInfo) {\n const rackName = ypath.getValue(node, '/@rack');\n const state: NodeEffectiveState = ypath.getValue(node, '/@state');\n const banned: boolean = ypath.getBoolean(node, '/@banned');\n const decommissioned: boolean = ypath.getBoolean(node, '/@decommissioned');\n const full: boolean = ypath.getBoolean(node, '/@full');\n const alerts = Boolean(ypath.getValue(node, '/@alert_count'));\n\n const effectiveFlag =\n (decommissioned && 'decommissioned') ||\n (full && 'full') ||\n (alerts && 'alerts') ||\n undefined;\n\n const rack = racks[Object.hasOwnProperty.call(racks, rackName) ? rackName : UNAWARE];\n\n rack.empty = false;\n\n rack.nodes.push({\n $value: node.$value,\n $attributes: {\n ...node.$attributes,\n effectiveState: state,\n effectiveFlag: effectiveFlag,\n alerts,\n banned,\n },\n });\n}\n\nfunction prepareRacks(rackNames: Array<string>, nodes: Array<SystemNodeInfo>) {\n const racks = reduce_(\n prepareRackNames(rackNames),\n (acc, name) => {\n acc[name] = createRack(name);\n return acc;\n },\n {} as Record<string, RackInfo>,\n );\n\n each_(prepareNodes(nodes), (node) => insertNodeToRack(racks, node));\n\n return map_(racks);\n}\n\nfunction prepareRoleGroups(rackGroups: Record<string, Array<RackInfo>>) {\n const roleGroups = reduce_(\n rackGroups,\n (acc, item, key) => {\n const groups = rackInfo2roleGroup(item);\n const toAdd = groups.filter((g) => {\n return g.counters.total > 0;\n });\n if (toAdd.length) {\n acc[key] = toAdd;\n }\n return acc;\n },\n {} as Record<string, Array<RoleGroupInfo>>,\n );\n return roleGroups;\n}\n\nfunction rackInfo2roleGroup(data: Array<RackInfo>): Array<RoleGroupInfo> {\n return map_(data, (rack) => {\n const res: RoleGroupInfo = {\n name: rack.name,\n items: [],\n counters: {\n total: rack.nodes.length,\n effectiveStates: {},\n states: {},\n flags: {},\n },\n };\n rack.nodes.forEach((node) => {\n const {state, effectiveState, banned} = node.$attributes;\n const info: RoleGroupItemInfo = {\n name: node.$value,\n state,\n role: rack.name,\n effectiveState: getNodeffectiveState(effectiveState),\n banned,\n };\n incrementStateCounter(res.counters.effectiveStates, info.effectiveState);\n incrementStateCounter(res.counters.states, info.state);\n\n increaseFlagCounter(res.counters.flags, 'decommissioned', node.$attributes);\n increaseFlagCounter(res.counters.flags, 'full', node.$attributes);\n increaseFlagCounter(res.counters.flags, 'alerts', node.$attributes);\n increaseFlagCounter(res.counters.flags, 'banned', node.$attributes);\n\n res.items.push(info);\n });\n\n return res;\n });\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_each","_interopRequireDefault","require","_filter","_reduce","_map","_uikit","_ypath","_hammer","_index","_proxies","_utils","_constants","_ytApi","_rumWrapApi","obj","__esModule","default","loadSystemNodes","nodeTypes","dispatch","type","SYSTEM_FETCH_NODES","REQUEST","requests","command","parameters","_objectSpread","path","suppress_transaction_coordinator_sync","suppress_upstream_sync","USE_MAX_SIZE","concat","_toConsumableArray","map","nodeType","attributes","USE_CACHE","ytApiV3Id","executeBatch","YTApiId","systemNodes","then","data","_splitBatchResults","splitBatchResults","error","results","_ref","_ref2","_toArray","rackNames","nodesByType","slice","nodes","reduce","acc","items","racks","prepareRacks","overviewCounters","extractNodeCounters","_groupRacks","groupRacks","rackGroups","counters","SUCCESS","roleGroups","prepareRoleGroups","undefined","_error$response","FAILURE","response","code","message","toaster","Toaster","add","name","autoHiding","content","title","actions","label","onClick","showErrorPopup","isRetryFutile","groupedRacks","dataCenterNames","reduce_","rack","groupName","split","Set","forEach","dcName","rackGroup","filter_","startsWith","isGroupEmpty","every","empty","increaseFlagCounter","dst","attrs","total","length","each_","node","$attributes","flags","incrementStateCounter","states","state","effectiveStates","effectiveState","decommissioned","banned","full","alerts","prepareNodes","sort","nodeA","nodeB","$value","prepareRackNames","rackA","rackB","hammer","utils","compareVectors","format","unshift","UNAWARE","createRack","insertNodeToRack","rackName","ypath","getValue","getBoolean","Boolean","effectiveFlag","Object","hasOwnProperty","call","push","map_","item","key","groups","rackInfo2roleGroup","toAdd","filter","g","res","_node$$attributes","info","role","getNodeffectiveState"],"sources":["nodes.ts"],"sourcesContent":["import each_ from 'lodash/each';\nimport filter_ from 'lodash/filter';\nimport reduce_ from 'lodash/reduce';\nimport map_ from 'lodash/map';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport ypath from '../../../common/thor/ypath';\nimport hammer from '../../../common/hammer';\nimport {isRetryFutile} from '../../../utils/index';\nimport {getNodeffectiveState, incrementStateCounter} from '../../../utils/system/proxies';\nimport {showErrorPopup, splitBatchResults} from '../../../utils/utils';\nimport {SYSTEM_FETCH_NODES, UNAWARE} from '../../../constants';\nimport {USE_CACHE, USE_MAX_SIZE} from '../../../../shared/constants/yt-api';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\n\nimport type {RootState} from '../../../store/reducers';\nimport type {\n NodeEffectiveState,\n RackInfo,\n SystemNodeInfo,\n SystemNodesAction,\n SystemNodesState,\n} from '../../../store/reducers/system/nodes';\nimport type {BatchSubRequest} from '../../../../shared/yt-types';\nimport type {\n HttpProxiesState,\n RoleGroupInfo,\n RoleGroupItemInfo,\n} from '../../../store/reducers/system/proxies';\nimport {ThunkAction} from 'redux-thunk';\nimport {NodeType} from '../../../../shared/constants/system';\n\ntype SystemNodesThunkAction<T = void> = ThunkAction<T, RootState, unknown, SystemNodesAction>;\n\nexport function loadSystemNodes(\n nodeTypes: Array<NodeType>,\n): SystemNodesThunkAction<Promise<undefined | {isRetryFutile?: boolean}>> {\n return (dispatch) => {\n dispatch({type: SYSTEM_FETCH_NODES.REQUEST});\n\n const requests: Array<BatchSubRequest> = [\n {\n command: 'list',\n parameters: {\n path: '//sys/racks',\n suppress_transaction_coordinator_sync: true,\n suppress_upstream_sync: true,\n ...USE_MAX_SIZE,\n },\n },\n ...nodeTypes.map((nodeType) => {\n return {\n command: 'list' as const,\n parameters: {\n path: `//sys/${nodeType}`,\n attributes: [\n 'state',\n 'banned',\n 'decommissioned',\n 'alert_count',\n 'full',\n 'rack',\n ],\n suppress_transaction_coordinator_sync: true,\n suppress_upstream_sync: true,\n ...USE_CACHE,\n ...USE_MAX_SIZE,\n },\n };\n }),\n ];\n\n return ytApiV3Id\n .executeBatch(YTApiId.systemNodes, {requests})\n .then((data) => {\n const {error, results} = splitBatchResults<string | Array<SystemNodeInfo>>(\n data,\n 'Failed to get system nodes',\n );\n if (error) {\n throw error;\n }\n\n const [rackNames, ...nodesByType] = results as [\n _first: Array<string>,\n ..._rest: Array<Array<SystemNodeInfo>>,\n ];\n\n const nodes = nodesByType.reduce((acc, items) => {\n return acc.concat(items);\n }, []);\n\n const racks = prepareRacks(rackNames, nodes);\n const overviewCounters = extractNodeCounters(racks);\n const {rackGroups, counters} = groupRacks(racks);\n dispatch({\n type: SYSTEM_FETCH_NODES.SUCCESS,\n data: {\n overviewCounters,\n counters,\n roleGroups: prepareRoleGroups(rackGroups),\n },\n });\n return undefined;\n })\n .catch((error) => {\n dispatch({\n type: SYSTEM_FETCH_NODES.FAILURE,\n data: error,\n });\n\n const data = error?.response?.data || error;\n const {code, message} = data;\n\n const toaster = new Toaster();\n\n toaster.add({\n name: 'load/system/nodes',\n autoHiding: false,\n type: 'error',\n content: `[code ${code}] ${message}`,\n title: 'Could not load Nodes',\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n\n return {isRetryFutile: isRetryFutile(error.code)};\n });\n };\n}\n\nfunction groupRacks(racks: Array<RackInfo>) {\n const groupedRacks: Record<string, Array<RackInfo>> = {},\n counters: SystemNodesState['counters'] = {};\n const dataCenterNames = reduce_(\n racks,\n (acc, rack) => {\n const groupName = rack.name.split('-')[0];\n return groupName ? acc.add(groupName) : acc;\n },\n new Set<string>(),\n );\n // regroup racks by datacenters they belong to\n dataCenterNames.forEach((dcName) => {\n const rackGroup = filter_(racks, (rack) => {\n return rack.name === dcName || rack.name.startsWith(`${dcName}-`);\n });\n const isGroupEmpty = rackGroup.every((rack) => rack.empty);\n if (!isGroupEmpty) {\n groupedRacks[dcName] = rackGroup;\n counters[dcName] = extractNodeCounters(rackGroup);\n }\n });\n return {rackGroups: groupedRacks, counters};\n}\n\nfunction increaseFlagCounter<K extends keyof RackInfo['nodes'][number]['$attributes']>(\n dst: Partial<Record<K, number>>,\n name: K,\n attrs: Record<K, boolean>,\n) {\n if (dst[name] === undefined) {\n dst[name] = attrs[name] ? 1 : 0;\n } else {\n dst[name]! += attrs[name] ? 1 : 0;\n }\n}\n\nfunction extractNodeCounters(racks: Array<RackInfo>) {\n return reduce_(\n racks,\n (acc: HttpProxiesState['counters'], rack: RackInfo) => {\n acc.total += rack.nodes.length;\n\n each_(rack.nodes, (node) => {\n const attrs = node.$attributes;\n increaseFlagCounter(acc.flags, 'decommissioned', attrs);\n increaseFlagCounter(acc.flags, 'full', attrs);\n increaseFlagCounter(acc.flags, 'alerts', attrs);\n increaseFlagCounter(acc.flags, 'banned', attrs);\n\n incrementStateCounter(acc.states, attrs.state);\n incrementStateCounter(acc.effectiveStates, attrs.effectiveState);\n });\n\n return acc;\n },\n {\n total: 0,\n flags: {\n decommissioned: 0,\n banned: 0,\n full: 0,\n alerts: 0,\n },\n states: {}, // For right side counters\n effectiveStates: {}, // For state progress bar\n } as HttpProxiesState['counters'],\n );\n}\n\nfunction prepareNodes(nodes: Array<SystemNodeInfo>) {\n return nodes.sort((nodeA, nodeB) => {\n return nodeA.$value > nodeB.$value ? 1 : -1;\n });\n}\n\nfunction prepareRackNames(rackNames: Array<string>) {\n rackNames.sort((rackA, rackB) => {\n return hammer.utils.compareVectors(\n hammer.format['RackToVector'](rackA),\n hammer.format['RackToVector'](rackB),\n );\n });\n\n rackNames.unshift(UNAWARE);\n\n return rackNames;\n}\n\nfunction createRack(name: string): RackInfo {\n return {\n name,\n empty: true,\n nodes: [],\n };\n}\n\nfunction insertNodeToRack(racks: Record<string, RackInfo>, node: SystemNodeInfo) {\n const rackName = ypath.getValue(node, '/@rack');\n const state: NodeEffectiveState = ypath.getValue(node, '/@state');\n const banned: boolean = ypath.getBoolean(node, '/@banned');\n const decommissioned: boolean = ypath.getBoolean(node, '/@decommissioned');\n const full: boolean = ypath.getBoolean(node, '/@full');\n const alerts = Boolean(ypath.getValue(node, '/@alert_count'));\n\n const effectiveFlag =\n (decommissioned && 'decommissioned') ||\n (full && 'full') ||\n (alerts && 'alerts') ||\n undefined;\n\n const rack = racks[Object.hasOwnProperty.call(racks, rackName) ? rackName : UNAWARE];\n\n rack.empty = false;\n\n rack.nodes.push({\n $value: node.$value,\n $attributes: {\n ...node.$attributes,\n effectiveState: state,\n effectiveFlag: effectiveFlag,\n alerts,\n banned,\n },\n });\n}\n\nfunction prepareRacks(rackNames: Array<string>, nodes: Array<SystemNodeInfo>) {\n const racks = reduce_(\n prepareRackNames(rackNames),\n (acc, name) => {\n acc[name] = createRack(name);\n return acc;\n },\n {} as Record<string, RackInfo>,\n );\n\n each_(prepareNodes(nodes), (node) => insertNodeToRack(racks, node));\n\n return map_(racks);\n}\n\nfunction prepareRoleGroups(rackGroups: Record<string, Array<RackInfo>>) {\n const roleGroups = reduce_(\n rackGroups,\n (acc, item, key) => {\n const groups = rackInfo2roleGroup(item);\n const toAdd = groups.filter((g) => {\n return g.counters.total > 0;\n });\n if (toAdd.length) {\n acc[key] = toAdd;\n }\n return acc;\n },\n {} as Record<string, Array<RoleGroupInfo>>,\n );\n return roleGroups;\n}\n\nfunction rackInfo2roleGroup(data: Array<RackInfo>): Array<RoleGroupInfo> {\n return map_(data, (rack) => {\n const res: RoleGroupInfo = {\n name: rack.name,\n items: [],\n counters: {\n total: rack.nodes.length,\n effectiveStates: {},\n states: {},\n flags: {},\n },\n };\n rack.nodes.forEach((node) => {\n const {state, effectiveState, banned} = node.$attributes;\n const info: RoleGroupItemInfo = {\n name: node.$value,\n state,\n role: rack.name,\n effectiveState: getNodeffectiveState(effectiveState),\n banned,\n };\n incrementStateCounter(res.counters.effectiveStates, info.effectiveState);\n incrementStateCounter(res.counters.states, info.state);\n\n increaseFlagCounter(res.counters.flags, 'decommissioned', node.$attributes);\n increaseFlagCounter(res.counters.flags, 'full', node.$attributes);\n increaseFlagCounter(res.counters.flags, 'alerts', node.$attributes);\n increaseFlagCounter(res.counters.flags, 'banned', node.$attributes);\n\n res.items.push(info);\n });\n\n return res;\n });\n}\n"],"mappings":"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"}
|
@@ -47,7 +47,7 @@ function getSchedulersState(hosts) {
|
|
47
47
|
return _rumWrapApi.ytApiV3Id.executeBatch(_rumWrapApi.YTApiId.systemSchedulersState, {
|
48
48
|
requests: requests
|
49
49
|
}).then(function (data) {
|
50
|
-
var _splitBatchResults = (0, _utils.splitBatchResults)(data),
|
50
|
+
var _splitBatchResults = (0, _utils.splitBatchResults)(data, 'Failed to get scheduler states'),
|
51
51
|
outputs = _splitBatchResults.outputs;
|
52
52
|
var alerts = outputs[0];
|
53
53
|
var connectedHosts = (0, _map2.default)(hosts, function (host, index) {
|
@@ -83,7 +83,7 @@ function getAgentsState(hosts) {
|
|
83
83
|
return _rumWrapApi.ytApiV3Id.executeBatch(_rumWrapApi.YTApiId.systemCAStates, {
|
84
84
|
requests: requests
|
85
85
|
}).then(function (data) {
|
86
|
-
var _splitBatchResults2 = (0, _utils.splitBatchResults)(data),
|
86
|
+
var _splitBatchResults2 = (0, _utils.splitBatchResults)(data, 'Failed to get CA states'),
|
87
87
|
outputs = _splitBatchResults2.outputs;
|
88
88
|
var agents = (0, _map2.default)(hosts, function (host, index) {
|
89
89
|
return {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_ypath","_interopRequireDefault","require","_rumWrapApi","_utils","_constants","obj","__esModule","default","getSchedulers","ytApiV3Id","list","YTApiId","systemSchedulers","_objectSpread","path","attributes","USE_SUPRESS_SYNC","then","hosts","ordered","_sortBy","host","ypath","getValue","getSchedulersState","requests","command","parameters","timeout","_forEach","name","push","executeBatch","systemSchedulersState","data","_splitBatchResults","splitBatchResults","outputs","alerts","connectedHosts","_map","index","connected","schedulers","schedulerAlerts","getAgentsState","basePath","systemCAStates","_splitBatchResults2","agents","agentAlerts","_reduce","value","concat","getAgents","systemCAInstances","res"],"sources":["schedulers.js"],"sourcesContent":["import _ from 'lodash';\nimport ypath from '@ytsaurus/interface-helpers/lib/ypath';\n\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {USE_SUPRESS_SYNC} from '../../../../shared/constants';\n\nexport function getSchedulers() {\n return ytApiV3Id\n .list(YTApiId.systemSchedulers, {\n path: '//sys/scheduler/instances',\n attributes: ['annotations', 'maintenance', 'maintenance_message'],\n ...USE_SUPRESS_SYNC,\n })\n .then((hosts) => {\n const ordered = _.sortBy(hosts, (host) => {\n return ypath.getValue(host, '');\n });\n return getSchedulersState(ordered);\n });\n}\n\nfunction getSchedulersState(hosts) {\n const requests = [\n {\n command: 'get',\n parameters: {\n path: '//sys/scheduler/@alerts',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n },\n ];\n\n _.forEach(hosts, (host) => {\n const name = ypath.getValue(host, '');\n requests.push({\n command: 'get',\n parameters: {\n path: '//sys/scheduler/instances/' + name + '/orchid/scheduler/service/connected',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n });\n });\n\n return ytApiV3Id.executeBatch(YTApiId.systemSchedulersState, {requests}).then((data) => {\n const {outputs} = splitBatchResults(data);\n const alerts = outputs[0];\n const connectedHosts = _.map(hosts, (host, index) => {\n return {\n host: host,\n connected: outputs[index + 1],\n };\n });\n return {schedulers: connectedHosts, schedulerAlerts: alerts};\n });\n}\n\nfunction getAgentsState(hosts) {\n const requests = [];\n _.forEach(hosts, (host) => {\n const basePath = '//sys/controller_agents/instances/' + ypath.getValue(host, '');\n\n requests.push(\n {\n command: 'get',\n parameters: {\n path: basePath + '/orchid/controller_agent/service/connected',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n },\n {\n command: 'get',\n parameters: {\n path: basePath + '/@alerts',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n },\n );\n });\n\n return ytApiV3Id.executeBatch(YTApiId.systemCAStates, {requests}).then((data) => {\n const {outputs} = splitBatchResults(data);\n const agents = _.map(hosts, (host, index) => ({\n host,\n connected: outputs[2 * index],\n }));\n const agentAlerts = _.reduce(\n outputs,\n (alerts, value, index) => {\n if (index % 2) {\n return alerts.concat(value);\n }\n return alerts;\n },\n [],\n );\n\n return {agents, agentAlerts};\n });\n}\n\nexport function getAgents() {\n return ytApiV3Id\n .list(YTApiId.systemCAInstances, {\n path: '//sys/controller_agents/instances',\n attributes: ['annotations', 'maintenance', 'maintenance_message'],\n ...USE_SUPRESS_SYNC,\n })\n .then((hosts) => {\n hosts = hosts || [];\n const res = _.sortBy(hosts, (host) => {\n return ypath.getValue(host, '');\n });\n return getAgentsState(res);\n });\n}\n"],"mappings":";;;;;;;;;;;;AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAA6D,SAAAD,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEtD,SAASG,aAAaA,CAAA,EAAG;EAC5B,OAAOC,qBAAS,CACXC,IAAI,CAACC,mBAAO,CAACC,gBAAgB,MAAAC,sBAAA;IAC1BC,IAAI,EAAE,2BAA2B;IACjCC,UAAU,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,qBAAqB;EAAC,GAC9DC,2BAAgB,CACtB,CAAC,CACDC,IAAI,CAAC,UAACC,KAAK,EAAK;IACb,IAAMC,OAAO,GAAG,IAAAC,gBAAA,EAASF,KAAK,EAAE,UAACG,IAAI,EAAK;MACtC,OAAOC,cAAK,CAACC,QAAQ,CAACF,IAAI,EAAE,EAAE,CAAC;IACnC,CAAC,CAAC;IACF,OAAOG,kBAAkB,CAACL,OAAO,CAAC;EACtC,CAAC,CAAC;AACV;AAEA,SAASK,kBAAkBA,CAACN,KAAK,EAAE;EAC/B,IAAMO,QAAQ,GAAG,CACb;IACIC,OAAO,EAAE,KAAK;IACdC,UAAU,MAAAd,sBAAA;MACNC,IAAI,EAAE,yBAAyB;MAC/Bc,OAAO,EAAE,EAAE,GAAG;IAAI,GACfZ,2BAAgB;EAE3B,CAAC,CACJ;EAED,IAAAa,iBAAA,EAAUX,KAAK,EAAE,UAACG,IAAI,EAAK;IACvB,IAAMS,IAAI,GAAGR,cAAK,CAACC,QAAQ,CAACF,IAAI,EAAE,EAAE,CAAC;IACrCI,QAAQ,CAACM,IAAI,CAAC;MACVL,OAAO,EAAE,KAAK;MACdC,UAAU,MAAAd,sBAAA;QACNC,IAAI,EAAE,4BAA4B,GAAGgB,IAAI,GAAG,qCAAqC;QACjFF,OAAO,EAAE,EAAE,GAAG;MAAI,GACfZ,2BAAgB;IAE3B,CAAC,CAAC;EACN,CAAC,CAAC;EAEF,OAAOP,qBAAS,CAACuB,YAAY,CAACrB,mBAAO,CAACsB,qBAAqB,EAAE;IAACR,QAAQ,EAARA;EAAQ,CAAC,CAAC,CAACR,IAAI,CAAC,UAACiB,IAAI,EAAK;IACpF,IAAAC,kBAAA,GAAkB,IAAAC,wBAAiB,EAACF,IAAI,CAAC;
|
1
|
+
{"version":3,"names":["_ypath","_interopRequireDefault","require","_rumWrapApi","_utils","_constants","obj","__esModule","default","getSchedulers","ytApiV3Id","list","YTApiId","systemSchedulers","_objectSpread","path","attributes","USE_SUPRESS_SYNC","then","hosts","ordered","_sortBy","host","ypath","getValue","getSchedulersState","requests","command","parameters","timeout","_forEach","name","push","executeBatch","systemSchedulersState","data","_splitBatchResults","splitBatchResults","outputs","alerts","connectedHosts","_map","index","connected","schedulers","schedulerAlerts","getAgentsState","basePath","systemCAStates","_splitBatchResults2","agents","agentAlerts","_reduce","value","concat","getAgents","systemCAInstances","res"],"sources":["schedulers.js"],"sourcesContent":["import _ from 'lodash';\nimport ypath from '@ytsaurus/interface-helpers/lib/ypath';\n\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {USE_SUPRESS_SYNC} from '../../../../shared/constants';\n\nexport function getSchedulers() {\n return ytApiV3Id\n .list(YTApiId.systemSchedulers, {\n path: '//sys/scheduler/instances',\n attributes: ['annotations', 'maintenance', 'maintenance_message'],\n ...USE_SUPRESS_SYNC,\n })\n .then((hosts) => {\n const ordered = _.sortBy(hosts, (host) => {\n return ypath.getValue(host, '');\n });\n return getSchedulersState(ordered);\n });\n}\n\nfunction getSchedulersState(hosts) {\n const requests = [\n {\n command: 'get',\n parameters: {\n path: '//sys/scheduler/@alerts',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n },\n ];\n\n _.forEach(hosts, (host) => {\n const name = ypath.getValue(host, '');\n requests.push({\n command: 'get',\n parameters: {\n path: '//sys/scheduler/instances/' + name + '/orchid/scheduler/service/connected',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n });\n });\n\n return ytApiV3Id.executeBatch(YTApiId.systemSchedulersState, {requests}).then((data) => {\n const {outputs} = splitBatchResults(data, 'Failed to get scheduler states');\n const alerts = outputs[0];\n const connectedHosts = _.map(hosts, (host, index) => {\n return {\n host: host,\n connected: outputs[index + 1],\n };\n });\n return {schedulers: connectedHosts, schedulerAlerts: alerts};\n });\n}\n\nfunction getAgentsState(hosts) {\n const requests = [];\n _.forEach(hosts, (host) => {\n const basePath = '//sys/controller_agents/instances/' + ypath.getValue(host, '');\n\n requests.push(\n {\n command: 'get',\n parameters: {\n path: basePath + '/orchid/controller_agent/service/connected',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n },\n {\n command: 'get',\n parameters: {\n path: basePath + '/@alerts',\n timeout: 10 * 1000,\n ...USE_SUPRESS_SYNC,\n },\n },\n );\n });\n\n return ytApiV3Id.executeBatch(YTApiId.systemCAStates, {requests}).then((data) => {\n const {outputs} = splitBatchResults(data, 'Failed to get CA states');\n const agents = _.map(hosts, (host, index) => ({\n host,\n connected: outputs[2 * index],\n }));\n const agentAlerts = _.reduce(\n outputs,\n (alerts, value, index) => {\n if (index % 2) {\n return alerts.concat(value);\n }\n return alerts;\n },\n [],\n );\n\n return {agents, agentAlerts};\n });\n}\n\nexport function getAgents() {\n return ytApiV3Id\n .list(YTApiId.systemCAInstances, {\n path: '//sys/controller_agents/instances',\n attributes: ['annotations', 'maintenance', 'maintenance_message'],\n ...USE_SUPRESS_SYNC,\n })\n .then((hosts) => {\n hosts = hosts || [];\n const res = _.sortBy(hosts, (host) => {\n return ypath.getValue(host, '');\n });\n return getAgentsState(res);\n });\n}\n"],"mappings":"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"}
|
@@ -36,7 +36,7 @@ function loadStoresData(storesId, index, unorderedDynamicTable) {
|
|
36
36
|
output_format: _index.TYPED_OUTPUT_FORMAT
|
37
37
|
}
|
38
38
|
}).then(function (data) {
|
39
|
-
var _splitBatchResults = (0, _utils.splitBatchResults)(data),
|
39
|
+
var _splitBatchResults = (0, _utils.splitBatchResults)(data, 'Failed to fetch stores'),
|
40
40
|
error = _splitBatchResults.error,
|
41
41
|
results = _splitBatchResults.results;
|
42
42
|
if (error) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_yt","_interopRequireDefault","require","_cancelHelper","_index","_tablet","_stores","_rumWrapApi","_utils","obj","__esModule","default","requests","CancelHelper","loadStoresData","storesId","index","unorderedDynamicTable","dispatch","getState","type","LOAD_STORES","REQUEST","tabletPath","tablet","_map","storeId","path","preparePath","command","parameters","ytApiV3Id","executeBatch","YTApiId","tabletStoresByIds","output_format","TYPED_OUTPUT_FORMAT","then","data","_splitBatchResults","splitBatchResults","error","results","Promise","reject","SUCCESS","stores","prepareStores","code","yt","codes","CANCELLED","FAILURE","abortAndReset","removeAllRequests"],"sources":["stores.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport _ from 'lodash';\nimport CancelHelper from '../../../utils/cancel-helper';\nimport {TYPED_OUTPUT_FORMAT} from '../../../constants/index';\nimport {LOAD_STORES} from '../../../constants/tablet';\nimport {preparePath, prepareStores} from '../../../utils/tablet/stores';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\n\nconst requests = new CancelHelper();\n\nexport function loadStoresData(storesId, index, unorderedDynamicTable) {\n return (dispatch, getState) => {\n dispatch({type: LOAD_STORES.REQUEST});\n\n const {tabletPath} = getState().tablet.tablet;\n\n const requests = _.map(storesId, (storeId) => {\n const path = unorderedDynamicTable\n ? tabletPath + '/stores/' + storeId\n : preparePath(tabletPath, index, storeId);\n return {\n command: 'get',\n parameters: {\n path,\n },\n };\n });\n\n return ytApiV3Id\n .executeBatch(YTApiId.tabletStoresByIds, {\n parameters: {requests, output_format: TYPED_OUTPUT_FORMAT},\n })\n .then((data) => {\n const {error, results} = splitBatchResults(data);\n if (error) {\n return Promise.reject(error);\n }\n dispatch({\n type: LOAD_STORES.SUCCESS,\n data: {\n stores: prepareStores(results, storesId),\n },\n });\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: LOAD_STORES.FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function abortAndReset() {\n return (dispatch) => {\n requests.removeAllRequests();\n dispatch({type: LOAD_STORES.CANCELLED});\n };\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,GAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAsD,SAAAD,uBAAAQ,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEtD,IAAMG,QAAQ,GAAG,IAAIC,qBAAY,CAAC,CAAC;AAE5B,SAASC,cAAcA,CAACC,QAAQ,EAAEC,KAAK,EAAEC,qBAAqB,EAAE;EACnE,OAAO,UAACC,QAAQ,EAAEC,QAAQ,EAAK;IAC3BD,QAAQ,CAAC;MAACE,IAAI,EAAEC,mBAAW,CAACC;IAAO,CAAC,CAAC;IAErC,IAAOC,UAAU,GAAIJ,QAAQ,CAAC,CAAC,CAACK,MAAM,CAACA,MAAM,CAAtCD,UAAU;IAEjB,IAAMX,QAAQ,GAAG,IAAAa,aAAA,EAAMV,QAAQ,EAAE,UAACW,OAAO,EAAK;MAC1C,IAAMC,IAAI,GAAGV,qBAAqB,GAC5BM,UAAU,GAAG,UAAU,GAAGG,OAAO,GACjC,IAAAE,mBAAW,EAACL,UAAU,EAAEP,KAAK,EAAEU,OAAO,CAAC;MAC7C,OAAO;QACHG,OAAO,EAAE,KAAK;QACdC,UAAU,EAAE;UACRH,IAAI,EAAJA;QACJ;MACJ,CAAC;IACL,CAAC,CAAC;IAEF,OAAOI,qBAAS,CACXC,YAAY,CAACC,mBAAO,CAACC,iBAAiB,EAAE;MACrCJ,UAAU,EAAE;QAAClB,QAAQ,EAARA,QAAQ;QAAEuB,aAAa,EAAEC;MAAmB;IAC7D,CAAC,CAAC,CACDC,IAAI,CAAC,UAACC,IAAI,EAAK;MACZ,IAAAC,kBAAA,GAAyB,IAAAC,wBAAiB,EAACF,IAAI,CAAC;
|
1
|
+
{"version":3,"names":["_yt","_interopRequireDefault","require","_cancelHelper","_index","_tablet","_stores","_rumWrapApi","_utils","obj","__esModule","default","requests","CancelHelper","loadStoresData","storesId","index","unorderedDynamicTable","dispatch","getState","type","LOAD_STORES","REQUEST","tabletPath","tablet","_map","storeId","path","preparePath","command","parameters","ytApiV3Id","executeBatch","YTApiId","tabletStoresByIds","output_format","TYPED_OUTPUT_FORMAT","then","data","_splitBatchResults","splitBatchResults","error","results","Promise","reject","SUCCESS","stores","prepareStores","code","yt","codes","CANCELLED","FAILURE","abortAndReset","removeAllRequests"],"sources":["stores.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport _ from 'lodash';\nimport CancelHelper from '../../../utils/cancel-helper';\nimport {TYPED_OUTPUT_FORMAT} from '../../../constants/index';\nimport {LOAD_STORES} from '../../../constants/tablet';\nimport {preparePath, prepareStores} from '../../../utils/tablet/stores';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\n\nconst requests = new CancelHelper();\n\nexport function loadStoresData(storesId, index, unorderedDynamicTable) {\n return (dispatch, getState) => {\n dispatch({type: LOAD_STORES.REQUEST});\n\n const {tabletPath} = getState().tablet.tablet;\n\n const requests = _.map(storesId, (storeId) => {\n const path = unorderedDynamicTable\n ? tabletPath + '/stores/' + storeId\n : preparePath(tabletPath, index, storeId);\n return {\n command: 'get',\n parameters: {\n path,\n },\n };\n });\n\n return ytApiV3Id\n .executeBatch(YTApiId.tabletStoresByIds, {\n parameters: {requests, output_format: TYPED_OUTPUT_FORMAT},\n })\n .then((data) => {\n const {error, results} = splitBatchResults(data, 'Failed to fetch stores');\n if (error) {\n return Promise.reject(error);\n }\n dispatch({\n type: LOAD_STORES.SUCCESS,\n data: {\n stores: prepareStores(results, storesId),\n },\n });\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: LOAD_STORES.FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function abortAndReset() {\n return (dispatch) => {\n requests.removeAllRequests();\n dispatch({type: LOAD_STORES.CANCELLED});\n };\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,GAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAsD,SAAAD,uBAAAQ,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEtD,IAAMG,QAAQ,GAAG,IAAIC,qBAAY,CAAC,CAAC;AAE5B,SAASC,cAAcA,CAACC,QAAQ,EAAEC,KAAK,EAAEC,qBAAqB,EAAE;EACnE,OAAO,UAACC,QAAQ,EAAEC,QAAQ,EAAK;IAC3BD,QAAQ,CAAC;MAACE,IAAI,EAAEC,mBAAW,CAACC;IAAO,CAAC,CAAC;IAErC,IAAOC,UAAU,GAAIJ,QAAQ,CAAC,CAAC,CAACK,MAAM,CAACA,MAAM,CAAtCD,UAAU;IAEjB,IAAMX,QAAQ,GAAG,IAAAa,aAAA,EAAMV,QAAQ,EAAE,UAACW,OAAO,EAAK;MAC1C,IAAMC,IAAI,GAAGV,qBAAqB,GAC5BM,UAAU,GAAG,UAAU,GAAGG,OAAO,GACjC,IAAAE,mBAAW,EAACL,UAAU,EAAEP,KAAK,EAAEU,OAAO,CAAC;MAC7C,OAAO;QACHG,OAAO,EAAE,KAAK;QACdC,UAAU,EAAE;UACRH,IAAI,EAAJA;QACJ;MACJ,CAAC;IACL,CAAC,CAAC;IAEF,OAAOI,qBAAS,CACXC,YAAY,CAACC,mBAAO,CAACC,iBAAiB,EAAE;MACrCJ,UAAU,EAAE;QAAClB,QAAQ,EAARA,QAAQ;QAAEuB,aAAa,EAAEC;MAAmB;IAC7D,CAAC,CAAC,CACDC,IAAI,CAAC,UAACC,IAAI,EAAK;MACZ,IAAAC,kBAAA,GAAyB,IAAAC,wBAAiB,EAACF,IAAI,EAAE,wBAAwB,CAAC;QAAnEG,KAAK,GAAAF,kBAAA,CAALE,KAAK;QAAEC,OAAO,GAAAH,kBAAA,CAAPG,OAAO;MACrB,IAAID,KAAK,EAAE;QACP,OAAOE,OAAO,CAACC,MAAM,CAACH,KAAK,CAAC;MAChC;MACAvB,QAAQ,CAAC;QACLE,IAAI,EAAEC,mBAAW,CAACwB,OAAO;QACzBP,IAAI,EAAE;UACFQ,MAAM,EAAE,IAAAC,qBAAa,EAACL,OAAO,EAAE3B,QAAQ;QAC3C;MACJ,CAAC,CAAC;IACN,CAAC,CAAC,SACI,CAAC,UAAC0B,KAAK,EAAK;MACd,IAAIA,KAAK,CAACO,IAAI,KAAKC,WAAE,CAACC,KAAK,CAACC,SAAS,EAAE;QACnCjC,QAAQ,CAAC;UACLE,IAAI,EAAEC,mBAAW,CAAC+B,OAAO;UACzBd,IAAI,EAAE;YAACG,KAAK,EAALA;UAAK;QAChB,CAAC,CAAC;MACN;IACJ,CAAC,CAAC;EACV,CAAC;AACL;AAEO,SAASY,aAAaA,CAAA,EAAG;EAC5B,OAAO,UAACnC,QAAQ,EAAK;IACjBN,QAAQ,CAAC0C,iBAAiB,CAAC,CAAC;IAC5BpC,QAAQ,CAAC;MAACE,IAAI,EAAEC,mBAAW,CAAC8B;IAAS,CAAC,CAAC;EAC3C,CAAC;AACL"}
|
@@ -160,7 +160,7 @@ function fetchWritePermissions() {
|
|
160
160
|
},
|
161
161
|
cancellation: cancelHelper.saveCancelToken
|
162
162
|
}).then(function (data) {
|
163
|
-
var _splitBatchResults = (0, _utils.splitBatchResults)(data),
|
163
|
+
var _splitBatchResults = (0, _utils.splitBatchResults)(data, 'Failed to get bundle permissions'),
|
164
164
|
error = _splitBatchResults.error,
|
165
165
|
outputs = _splitBatchResults.outputs;
|
166
166
|
var writableByName = (0, _reduce.default)(outputs, function (acc, item, index) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_map","_interopRequireDefault","require","_reduce","_ypath","_tablets","_tabletCells","_favourites","_tablet_cell_bundles","_copyToClipboard","_utils","_global","_rumWrapApi","_windowStore","_aclApi","_cancelHelper","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","getZones","allBundles","map","Map","forEach","_ref","bundle","_toConsumableArray","keys","prepareBundleDefaultConfig","result","entries","reduce","acc","_ref2","_ref3","_slicedToArray","k","v","ypath","getValue","create","cancelHelper","CancelHelper","fetchTabletsBundles","dispatch","type","TABLETS_BUNDLES_LOAD_REQUEST","requests","command","parameters","path","attributes","removeAllRequests","ytApiV3Id","executeBatch","YTApiId","tabletCellBundles","cancellation","saveCancelToken","then","results","_results","_toArray","isBundleControllerSupported","output","rest","slice","_rest","cells","bundles","error","getBatchError","allCells","prepareTabletCells","prepareBundles","zones","fetchWritePermissions","length","TABLETS_BUNDLES_LOAD_SUCCESS","data","bundleControllerZones","bundleDefaultConfig","isCancelled","TABLETS_BUNDLES_LOAD_FAILURE","arguments","undefined","getState","user","getCurrentUserName","map_","item","makeCheckPermissionBatchSubRequestUI","concat","permission","wrapApiPromiseByToaster","tabletBundlesCheckWrite","_splitBatchResults","splitBatchResults","outputs","writableByName","reduce_","index","action","name","TABLETS_BUNDLES_PARTIAL","Promise","reject","toasterName","skipSuccessToast","errorTitle","setTabletsBundlesSortState","bundlesSort","setTabletsBundlesNameFilter","bundlesNameFilter","setTabletsBundlesAccountFilter","bundlesAccountFilter","setTabletsBundlesTagNodeFilter","bundlesTagNodeFilter","setTabletsPartial","setTabletsActiveBundle","activeBundle","bundlesTrackVisit","TABLETS_BUNDLES_ACTIVE_ACCOUNT","setTabletsFirstBundleAsActive","state","getTabletsBundlesSorted","_bundles","first","cluster","getCluster","getAppBrowserHistory","push","tabletActiveBundleLink","copyHostListToClipboard","_dispatch","filterTabletCellsByBundle","getTabletsCells","hosts","prepareHostsFromCells","copy"],"sources":["index.ts"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport map_ from 'lodash/map';\nimport reduce_ from 'lodash/reduce';\n\n// @ts-ignore\nimport ypath from '@ytsaurus/interface-helpers/lib/ypath';\n\nimport {RootState} from '../../reducers';\nimport {\n TabletBundle,\n TabletsBundlesAction,\n TabletsPartialAction,\n} from '../../reducers/tablet_cell_bundles';\nimport {\n TABLETS_BUNDLES_ACTIVE_ACCOUNT,\n TABLETS_BUNDLES_LOAD_FAILURE,\n TABLETS_BUNDLES_LOAD_REQUEST,\n TABLETS_BUNDLES_LOAD_SUCCESS,\n TABLETS_BUNDLES_PARTIAL,\n} from '../../../constants/tablets';\nimport {\n prepareBundles,\n prepareTabletCells,\n tabletActiveBundleLink,\n} from '../../../utils/components/tablet-cells';\nimport {SortState} from '../../../types';\nimport {bundlesTrackVisit} from '../favourites';\nimport {\n filterTabletCellsByBundle,\n getTabletsBundlesSorted,\n getTabletsCells,\n prepareHostsFromCells,\n} from '../../selectors/tablet_cell_bundles';\n\nimport copy from 'copy-to-clipboard';\nimport {getBatchError, splitBatchResults, wrapApiPromiseByToaster} from '../../../utils/utils';\nimport {getCluster, getCurrentUserName} from '../../selectors/global';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {getAppBrowserHistory} from '../../../store/window-store';\nimport {BatchSubRequest} from '../../../../shared/yt-types';\nimport {\n CheckPermissionResult,\n makeCheckPermissionBatchSubRequestUI,\n} from '../../../utils/acl/acl-api';\nimport CancelHelper, {isCancelled} from '../../../utils/cancel-helper';\n\nfunction getZones(allBundles: TabletBundle[]) {\n const map = new Map<string, boolean>();\n allBundles.forEach(({bundle}) => {\n if (!map.has(bundle)) {\n map.set(bundle, true);\n }\n });\n\n return [...map.keys()];\n}\n\nfunction prepareBundleDefaultConfig(result: object) {\n return Object.entries(result).reduce((acc, [k, v]) => {\n acc[k] = ypath.getValue(v, '/@');\n return acc;\n }, Object.create(null));\n}\n\ntype TabletsBundlesThunkAction = ThunkAction<any, RootState, any, TabletsBundlesAction>;\n\nconst cancelHelper = new CancelHelper();\n\nexport function fetchTabletsBundles(): TabletsBundlesThunkAction {\n return (dispatch) => {\n dispatch({type: TABLETS_BUNDLES_LOAD_REQUEST});\n const requests = [\n {\n command: 'exists' as const,\n parameters: {\n path: '//sys/bundle_controller/orchid/bundle_controller/state/bundles',\n },\n },\n {\n command: 'list' as const,\n parameters: {\n path: '//sys/tablet_cells',\n attributes: ['peers', 'id', 'tablet_cell_bundle', 'total_statistics', 'status'],\n },\n },\n {\n command: 'get' as const,\n parameters: {\n path: '//sys/tablet_cell_bundles',\n attributes: [\n 'nodes',\n 'enable_bundle_balancer',\n 'health',\n 'options',\n 'node_tag_filter',\n 'resource_limits',\n 'resource_usage',\n 'folder_id',\n 'abc',\n 'dynamic_options',\n 'bundle_controller_target_config',\n 'enable_bundle_controller',\n 'zone',\n ],\n },\n },\n ];\n\n cancelHelper.removeAllRequests();\n\n return ytApiV3Id\n .executeBatch(YTApiId.tabletCellBundles, {\n parameters: {requests},\n cancellation: cancelHelper.saveCancelToken,\n })\n .then((results: Array<any>) => {\n const [{output: isBundleControllerSupported}, ...rest] = results;\n\n const [{output: cells}, {output: bundles}] = rest;\n\n const error = getBatchError(rest, 'Tablet cell bundles cannot be loaded');\n if (error) {\n throw error;\n }\n\n const allCells = prepareTabletCells(cells);\n const allBundles = prepareBundles(allCells, bundles);\n\n const zones = getZones(allBundles);\n\n dispatch(fetchWritePermissions(allBundles));\n\n if (!zones.length || !isBundleControllerSupported) {\n dispatch({\n type: TABLETS_BUNDLES_LOAD_SUCCESS,\n data: {\n cells: allCells,\n bundles: allBundles,\n },\n });\n return;\n }\n\n ytApiV3Id\n .get(YTApiId.bundleControllerZones, {\n parameters: {\n path: `//sys/bundle_controller/controller/zones`,\n attributes: ['tablet_node_sizes', 'rpc_proxy_sizes', 'data_centers'],\n },\n cancellation: cancelHelper.saveCancelToken,\n })\n .then((result: object) => {\n const bundleDefaultConfig = prepareBundleDefaultConfig(result);\n dispatch({\n type: TABLETS_BUNDLES_LOAD_SUCCESS,\n data: {\n cells: allCells,\n bundles: allBundles,\n bundleDefaultConfig,\n },\n });\n })\n .catch((e: any) => {\n if (!isCancelled(e)) {\n dispatch({type: TABLETS_BUNDLES_LOAD_FAILURE, data: e});\n }\n });\n })\n .catch((e: any) => {\n if (!isCancelled(e)) {\n dispatch({type: TABLETS_BUNDLES_LOAD_FAILURE, data: e});\n }\n });\n };\n}\n\nexport function fetchWritePermissions(\n bundles: Array<{bundle: string}> = [],\n): TabletsBundlesThunkAction {\n return (dispatch, getState) => {\n const user = getCurrentUserName(getState());\n const requests: Array<BatchSubRequest> = map_(bundles, (item) => {\n return makeCheckPermissionBatchSubRequestUI({\n path: `//sys/tablet_cell_bundles/${item.bundle}`,\n user,\n permission: 'write',\n });\n });\n return wrapApiPromiseByToaster(\n ytApiV3Id\n .executeBatch(YTApiId.tabletBundlesCheckWrite, {\n parameters: {requests},\n cancellation: cancelHelper.saveCancelToken,\n })\n .then((data) => {\n const {error, outputs} = splitBatchResults<CheckPermissionResult>(data);\n const writableByName = reduce_(\n outputs,\n (acc, item, index) => {\n if (item?.action === 'allow') {\n const name = bundles[index].bundle;\n acc.set(name, true);\n }\n return acc;\n },\n new Map<string, boolean>(),\n );\n\n dispatch({type: TABLETS_BUNDLES_PARTIAL, data: {writableByName}});\n\n return error ? Promise.reject(error) : undefined;\n }),\n {\n toasterName: 'bundleWritePermissions',\n skipSuccessToast: true,\n errorTitle: 'Fetch write permissions',\n },\n );\n };\n}\n\nexport function setTabletsBundlesSortState(\n bundlesSort: SortState<keyof TabletBundle>,\n): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesSort}};\n}\n\nexport function setTabletsBundlesNameFilter(bundlesNameFilter: string): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesNameFilter}};\n}\n\nexport function setTabletsBundlesAccountFilter(bundlesAccountFilter: string): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesAccountFilter}};\n}\n\nexport function setTabletsBundlesTagNodeFilter(bundlesTagNodeFilter: string): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesTagNodeFilter}};\n}\n\nexport function setTabletsPartial(data: TabletsPartialAction['data']) {\n return {type: TABLETS_BUNDLES_PARTIAL, data};\n}\n\nexport function setTabletsActiveBundle(activeBundle: string): TabletsBundlesThunkAction {\n return (dispatch) => {\n dispatch(bundlesTrackVisit(activeBundle));\n dispatch({\n type: TABLETS_BUNDLES_ACTIVE_ACCOUNT,\n data: {activeBundle},\n });\n };\n}\n\nexport function setTabletsFirstBundleAsActive(): TabletsBundlesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const bundles = getTabletsBundlesSorted(state);\n const [first] = bundles;\n if (!first) {\n return;\n }\n\n const cluster = getCluster(state);\n dispatch(setTabletsActiveBundle(first.bundle));\n getAppBrowserHistory().push(tabletActiveBundleLink(cluster, first.bundle));\n };\n}\n\nexport function copyHostListToClipboard(bundle: string): TabletsBundlesThunkAction {\n return (_dispatch, getState) => {\n const cells = filterTabletCellsByBundle(bundle, getTabletsCells(getState()));\n const hosts = prepareHostsFromCells(cells);\n copy(hosts || '');\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_map","_interopRequireDefault","require","_reduce","_ypath","_tablets","_tabletCells","_favourites","_tablet_cell_bundles","_copyToClipboard","_utils","_global","_rumWrapApi","_windowStore","_aclApi","_cancelHelper","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","getZones","allBundles","map","Map","forEach","_ref","bundle","_toConsumableArray","keys","prepareBundleDefaultConfig","result","entries","reduce","acc","_ref2","_ref3","_slicedToArray","k","v","ypath","getValue","create","cancelHelper","CancelHelper","fetchTabletsBundles","dispatch","type","TABLETS_BUNDLES_LOAD_REQUEST","requests","command","parameters","path","attributes","removeAllRequests","ytApiV3Id","executeBatch","YTApiId","tabletCellBundles","cancellation","saveCancelToken","then","results","_results","_toArray","isBundleControllerSupported","output","rest","slice","_rest","cells","bundles","error","getBatchError","allCells","prepareTabletCells","prepareBundles","zones","fetchWritePermissions","length","TABLETS_BUNDLES_LOAD_SUCCESS","data","bundleControllerZones","bundleDefaultConfig","isCancelled","TABLETS_BUNDLES_LOAD_FAILURE","arguments","undefined","getState","user","getCurrentUserName","map_","item","makeCheckPermissionBatchSubRequestUI","concat","permission","wrapApiPromiseByToaster","tabletBundlesCheckWrite","_splitBatchResults","splitBatchResults","outputs","writableByName","reduce_","index","action","name","TABLETS_BUNDLES_PARTIAL","Promise","reject","toasterName","skipSuccessToast","errorTitle","setTabletsBundlesSortState","bundlesSort","setTabletsBundlesNameFilter","bundlesNameFilter","setTabletsBundlesAccountFilter","bundlesAccountFilter","setTabletsBundlesTagNodeFilter","bundlesTagNodeFilter","setTabletsPartial","setTabletsActiveBundle","activeBundle","bundlesTrackVisit","TABLETS_BUNDLES_ACTIVE_ACCOUNT","setTabletsFirstBundleAsActive","state","getTabletsBundlesSorted","_bundles","first","cluster","getCluster","getAppBrowserHistory","push","tabletActiveBundleLink","copyHostListToClipboard","_dispatch","filterTabletCellsByBundle","getTabletsCells","hosts","prepareHostsFromCells","copy"],"sources":["index.ts"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport map_ from 'lodash/map';\nimport reduce_ from 'lodash/reduce';\n\n// @ts-ignore\nimport ypath from '@ytsaurus/interface-helpers/lib/ypath';\n\nimport {RootState} from '../../reducers';\nimport {\n TabletBundle,\n TabletsBundlesAction,\n TabletsPartialAction,\n} from '../../reducers/tablet_cell_bundles';\nimport {\n TABLETS_BUNDLES_ACTIVE_ACCOUNT,\n TABLETS_BUNDLES_LOAD_FAILURE,\n TABLETS_BUNDLES_LOAD_REQUEST,\n TABLETS_BUNDLES_LOAD_SUCCESS,\n TABLETS_BUNDLES_PARTIAL,\n} from '../../../constants/tablets';\nimport {\n prepareBundles,\n prepareTabletCells,\n tabletActiveBundleLink,\n} from '../../../utils/components/tablet-cells';\nimport {SortState} from '../../../types';\nimport {bundlesTrackVisit} from '../favourites';\nimport {\n filterTabletCellsByBundle,\n getTabletsBundlesSorted,\n getTabletsCells,\n prepareHostsFromCells,\n} from '../../selectors/tablet_cell_bundles';\n\nimport copy from 'copy-to-clipboard';\nimport {getBatchError, splitBatchResults, wrapApiPromiseByToaster} from '../../../utils/utils';\nimport {getCluster, getCurrentUserName} from '../../selectors/global';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {getAppBrowserHistory} from '../../../store/window-store';\nimport {BatchSubRequest} from '../../../../shared/yt-types';\nimport {\n CheckPermissionResult,\n makeCheckPermissionBatchSubRequestUI,\n} from '../../../utils/acl/acl-api';\nimport CancelHelper, {isCancelled} from '../../../utils/cancel-helper';\n\nfunction getZones(allBundles: TabletBundle[]) {\n const map = new Map<string, boolean>();\n allBundles.forEach(({bundle}) => {\n if (!map.has(bundle)) {\n map.set(bundle, true);\n }\n });\n\n return [...map.keys()];\n}\n\nfunction prepareBundleDefaultConfig(result: object) {\n return Object.entries(result).reduce((acc, [k, v]) => {\n acc[k] = ypath.getValue(v, '/@');\n return acc;\n }, Object.create(null));\n}\n\ntype TabletsBundlesThunkAction = ThunkAction<any, RootState, any, TabletsBundlesAction>;\n\nconst cancelHelper = new CancelHelper();\n\nexport function fetchTabletsBundles(): TabletsBundlesThunkAction {\n return (dispatch) => {\n dispatch({type: TABLETS_BUNDLES_LOAD_REQUEST});\n const requests = [\n {\n command: 'exists' as const,\n parameters: {\n path: '//sys/bundle_controller/orchid/bundle_controller/state/bundles',\n },\n },\n {\n command: 'list' as const,\n parameters: {\n path: '//sys/tablet_cells',\n attributes: ['peers', 'id', 'tablet_cell_bundle', 'total_statistics', 'status'],\n },\n },\n {\n command: 'get' as const,\n parameters: {\n path: '//sys/tablet_cell_bundles',\n attributes: [\n 'nodes',\n 'enable_bundle_balancer',\n 'health',\n 'options',\n 'node_tag_filter',\n 'resource_limits',\n 'resource_usage',\n 'folder_id',\n 'abc',\n 'dynamic_options',\n 'bundle_controller_target_config',\n 'enable_bundle_controller',\n 'zone',\n ],\n },\n },\n ];\n\n cancelHelper.removeAllRequests();\n\n return ytApiV3Id\n .executeBatch(YTApiId.tabletCellBundles, {\n parameters: {requests},\n cancellation: cancelHelper.saveCancelToken,\n })\n .then((results: Array<any>) => {\n const [{output: isBundleControllerSupported}, ...rest] = results;\n\n const [{output: cells}, {output: bundles}] = rest;\n\n const error = getBatchError(rest, 'Tablet cell bundles cannot be loaded');\n if (error) {\n throw error;\n }\n\n const allCells = prepareTabletCells(cells);\n const allBundles = prepareBundles(allCells, bundles);\n\n const zones = getZones(allBundles);\n\n dispatch(fetchWritePermissions(allBundles));\n\n if (!zones.length || !isBundleControllerSupported) {\n dispatch({\n type: TABLETS_BUNDLES_LOAD_SUCCESS,\n data: {\n cells: allCells,\n bundles: allBundles,\n },\n });\n return;\n }\n\n ytApiV3Id\n .get(YTApiId.bundleControllerZones, {\n parameters: {\n path: `//sys/bundle_controller/controller/zones`,\n attributes: ['tablet_node_sizes', 'rpc_proxy_sizes', 'data_centers'],\n },\n cancellation: cancelHelper.saveCancelToken,\n })\n .then((result: object) => {\n const bundleDefaultConfig = prepareBundleDefaultConfig(result);\n dispatch({\n type: TABLETS_BUNDLES_LOAD_SUCCESS,\n data: {\n cells: allCells,\n bundles: allBundles,\n bundleDefaultConfig,\n },\n });\n })\n .catch((e: any) => {\n if (!isCancelled(e)) {\n dispatch({type: TABLETS_BUNDLES_LOAD_FAILURE, data: e});\n }\n });\n })\n .catch((e: any) => {\n if (!isCancelled(e)) {\n dispatch({type: TABLETS_BUNDLES_LOAD_FAILURE, data: e});\n }\n });\n };\n}\n\nexport function fetchWritePermissions(\n bundles: Array<{bundle: string}> = [],\n): TabletsBundlesThunkAction {\n return (dispatch, getState) => {\n const user = getCurrentUserName(getState());\n const requests: Array<BatchSubRequest> = map_(bundles, (item) => {\n return makeCheckPermissionBatchSubRequestUI({\n path: `//sys/tablet_cell_bundles/${item.bundle}`,\n user,\n permission: 'write',\n });\n });\n return wrapApiPromiseByToaster(\n ytApiV3Id\n .executeBatch(YTApiId.tabletBundlesCheckWrite, {\n parameters: {requests},\n cancellation: cancelHelper.saveCancelToken,\n })\n .then((data) => {\n const {error, outputs} = splitBatchResults<CheckPermissionResult>(\n data,\n 'Failed to get bundle permissions',\n );\n const writableByName = reduce_(\n outputs,\n (acc, item, index) => {\n if (item?.action === 'allow') {\n const name = bundles[index].bundle;\n acc.set(name, true);\n }\n return acc;\n },\n new Map<string, boolean>(),\n );\n\n dispatch({type: TABLETS_BUNDLES_PARTIAL, data: {writableByName}});\n\n return error ? Promise.reject(error) : undefined;\n }),\n {\n toasterName: 'bundleWritePermissions',\n skipSuccessToast: true,\n errorTitle: 'Fetch write permissions',\n },\n );\n };\n}\n\nexport function setTabletsBundlesSortState(\n bundlesSort: SortState<keyof TabletBundle>,\n): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesSort}};\n}\n\nexport function setTabletsBundlesNameFilter(bundlesNameFilter: string): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesNameFilter}};\n}\n\nexport function setTabletsBundlesAccountFilter(bundlesAccountFilter: string): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesAccountFilter}};\n}\n\nexport function setTabletsBundlesTagNodeFilter(bundlesTagNodeFilter: string): TabletsBundlesAction {\n return {type: TABLETS_BUNDLES_PARTIAL, data: {bundlesTagNodeFilter}};\n}\n\nexport function setTabletsPartial(data: TabletsPartialAction['data']) {\n return {type: TABLETS_BUNDLES_PARTIAL, data};\n}\n\nexport function setTabletsActiveBundle(activeBundle: string): TabletsBundlesThunkAction {\n return (dispatch) => {\n dispatch(bundlesTrackVisit(activeBundle));\n dispatch({\n type: TABLETS_BUNDLES_ACTIVE_ACCOUNT,\n data: {activeBundle},\n });\n };\n}\n\nexport function setTabletsFirstBundleAsActive(): TabletsBundlesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const bundles = getTabletsBundlesSorted(state);\n const [first] = bundles;\n if (!first) {\n return;\n }\n\n const cluster = getCluster(state);\n dispatch(setTabletsActiveBundle(first.bundle));\n getAppBrowserHistory().push(tabletActiveBundleLink(cluster, first.bundle));\n };\n}\n\nexport function copyHostListToClipboard(bundle: string): TabletsBundlesThunkAction {\n return (_dispatch, getState) => {\n const cells = filterTabletCellsByBundle(bundle, getTabletsCells(getState()));\n const hosts = prepareHostsFromCells(cells);\n copy(hosts || '');\n };\n}\n"],"mappings":"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"}
|
@@ -61,7 +61,7 @@ function fetchTabletCellBundleEditor(bundleName) {
|
|
61
61
|
}).then(function (results) {
|
62
62
|
var _results$;
|
63
63
|
var bundleControllerIsUnavailable = toEdit.enable_bundle_controller && ((_results$ = results[1]) === null || _results$ === void 0 || (_results$ = _results$.error) === null || _results$ === void 0 ? void 0 : _results$.code) === _yt.default.codes.NODE_DOES_NOT_EXIST;
|
64
|
-
var error = (0, _utils.getBatchError)(bundleControllerIsUnavailable ? [results[0]] : results);
|
64
|
+
var error = (0, _utils.getBatchError)(bundleControllerIsUnavailable ? [results[0]] : results, 'Failed to get bundle edit data');
|
65
65
|
if (error) {
|
66
66
|
throw error;
|
67
67
|
}
|
@@ -201,8 +201,8 @@ function setBundleEditorController(params) {
|
|
201
201
|
}), {
|
202
202
|
toasterName: "edit_bundle_".concat(bundleName),
|
203
203
|
successContent: "Set bundle edit data",
|
204
|
-
|
205
|
-
|
204
|
+
isBatch: true,
|
205
|
+
errorTitle: 'Failed to set bundle edit data'
|
206
206
|
}).then(function () {
|
207
207
|
dispatch((0, _tablet_cell_bundles.fetchTabletsBundles)());
|
208
208
|
});
|
@@ -222,8 +222,8 @@ function setBunndleAttributes(bundle, attrs) {
|
|
222
222
|
}), {
|
223
223
|
toasterName: "update-bundle_".concat(bundle),
|
224
224
|
successContent: "".concat(bundle, " successfully updated"),
|
225
|
-
|
226
|
-
|
225
|
+
isBatch: true,
|
226
|
+
errorTitle: 'Failed to edit bundle'
|
227
227
|
}).then(function () {
|
228
228
|
dispatch(showTabletCellBundleEditor(bundle));
|
229
229
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_hammer","_interopRequireDefault","require","_tablets","_rumWrapApi","_tablet_cell_bundles","_utils","_cypressAttributes","_yt","_tablet_cell_bundles2","obj","__esModule","default","fetchTabletCellBundleEditor","bundleName","dispatch","getState","type","TABLETS_BUNDLES_EDITOR_LOAD_REQUREST","data","bundles","getTabletsBundles","toEdit","find","_ref","bundle","Promise","resolve","requests","command","parameters","path","concat","attributes","enable_bundle_controller","push","wrapApiPromiseByToaster","ytApiV3Id","executeBatch","YTApiId","tabletCellBundlesEditData","then","results","_results$","bundleControllerIsUnavailable","error","code","yt","codes","NODE_DOES_NOT_EXIST","getBatchError","toasterName","skipSuccessToast","errorContent","_ref2","_ref3","_slicedToArray","output","_ref3$","_ref3$2","undefined","bundleControllerData","TABLETS_BUNDLES_EDITOR_LOAD_SUCCESS","bundleData","requestGroups","_toConsumableArray","_map","allocated_tablet_nodes","_item","key","makeBatchSubRequest","allocated_rpc_proxies","errors","tabletCellBundlesInstancesDetails","item","nodesResults","keys","_keys","instanceDetailsMap","_forEach","_ref4","index","_output","nanny_service","_output$","_output$2","tablet_static_memory","TABLETS_BUNDLES_EDITOR_PARTIAL","e","TABLETS_BUNDLES_EDITOR_LOAD_FAILURE","reject","showTabletCellBundleEditor","visibleEditor","hideTabletCellBundleEditor","loaded","setBundleQuota","params","resourceType","limit","resource","hammer","format","v3","set","successContent","setBundleEditorController","bundlePath","value","prepareSetCommandForBatch","tabletCellBundlesSetAttrs","isBatch","fetchTabletsBundles","setBunndleAttributes","attrs","options","v"],"sources":["tablet-cell-bundle-editor.ts"],"sourcesContent":["import type {ThunkAction} from 'redux-thunk';\nimport _ from 'lodash';\n\nimport hammer from '../../../common/hammer';\nimport {\n TABLETS_BUNDLES_EDITOR_LOAD_FAILURE,\n TABLETS_BUNDLES_EDITOR_LOAD_REQUREST,\n TABLETS_BUNDLES_EDITOR_LOAD_SUCCESS,\n TABLETS_BUNDLES_EDITOR_PARTIAL,\n} from '../../../constants/tablets';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport type {RootState} from '../../../store/reducers';\nimport type {\n BundleControllerInstanceDetails,\n TabletCellBundleEditorAction,\n} from '../../../store/reducers/tablet_cell_bundles/tablet-cell-bundle-editor';\nimport {fetchTabletsBundles} from '../../../store/actions/tablet_cell_bundles';\nimport {getBatchError, wrapApiPromiseByToaster} from '../../../utils/utils';\nimport {makeBatchSubRequest, prepareSetCommandForBatch} from '../../../utils/cypress-attributes';\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport {getTabletsBundles} from '../../../store/selectors/tablet_cell_bundles';\nimport {OrchidBundlesData} from '../../../store/reducers/tablet_cell_bundles';\nimport {BatchResults, BatchSubRequest} from '../../../../shared/yt-types';\n\ntype TabletCellBundleEditorThunkAction = ThunkAction<\n any,\n RootState,\n any,\n TabletCellBundleEditorAction\n>;\n\nexport function fetchTabletCellBundleEditor(bundleName: string): TabletCellBundleEditorThunkAction {\n return (dispatch, getState) => {\n dispatch({type: TABLETS_BUNDLES_EDITOR_LOAD_REQUREST, data: {bundleName}});\n\n const bundles = getTabletsBundles(getState());\n const toEdit = bundles.find(({bundle}) => bundle === bundleName);\n if (!toEdit) {\n return Promise.resolve();\n }\n\n const requests: Array<BatchSubRequest> = [\n {\n command: 'get',\n parameters: {\n path: `//sys/tablet_cell_bundles/${bundleName}`,\n attributes: [\n 'resource_usage',\n 'resource_limits',\n 'options',\n 'abc',\n 'folder_id',\n 'zone',\n 'enable_bundle_controller',\n ],\n },\n },\n ];\n\n if (toEdit.enable_bundle_controller) {\n requests.push({\n command: 'get',\n parameters: {\n path: `//sys/bundle_controller/orchid/bundle_controller/state/bundles/${bundleName}`,\n },\n });\n }\n\n return wrapApiPromiseByToaster(\n ytApiV3Id\n .executeBatch(YTApiId.tabletCellBundlesEditData, {requests})\n .then((results) => {\n const bundleControllerIsUnavailable =\n toEdit.enable_bundle_controller &&\n results[1]?.error?.code === yt.codes.NODE_DOES_NOT_EXIST;\n const error = getBatchError(\n bundleControllerIsUnavailable ? [results[0]] : results,\n );\n\n if (error) {\n throw error;\n }\n return results;\n }),\n {\n toasterName: 'edit-bundle-data',\n skipSuccessToast: true,\n errorContent: 'Failed to load bundle details',\n },\n )\n .then((results) => {\n const [{output: data}, {output: bundleControllerData} = {output: undefined}] =\n results as BatchResults<[unknown, OrchidBundlesData]>;\n\n dispatch({\n type: TABLETS_BUNDLES_EDITOR_LOAD_SUCCESS,\n data: {\n bundleData: toEdit,\n data,\n bundleControllerData,\n },\n });\n\n const requestGroups: Array<Array<BatchSubRequest>> = [\n ..._.map(bundleControllerData?.allocated_tablet_nodes, (_item, key) => {\n return [\n makeBatchSubRequest('get', {\n path: `//sys/cluster_nodes/${key}/@bundle_controller_annotations/nanny_service`,\n }),\n makeBatchSubRequest('get', {\n path: `//sys/cluster_nodes/${key}/@statistics/memory/tablet_static`,\n }),\n ];\n }),\n ..._.map(bundleControllerData?.allocated_rpc_proxies, (_item, key) => {\n return [\n makeBatchSubRequest('get', {\n path: `//sys/rpc_proxies/${key}/@bundle_controller_annotations/nanny_service`,\n }),\n ];\n }),\n ];\n const errors = [];\n wrapApiPromiseByToaster(\n ytApiV3Id.executeBatch(YTApiId.tabletCellBundlesInstancesDetails, {\n requests: _.map(requestGroups, (item) => {\n return makeBatchSubRequest('execute_batch', {requests: item});\n }),\n }),\n {\n toasterName: 'bundle-controller-tablet-static-memory',\n skipSuccessToast: true,\n errorContent:\n 'BundleController: Cannot load tablet static memory of isntances',\n },\n ).then((nodesResults) => {\n const keys = [\n ..._.keys(bundleControllerData?.allocated_tablet_nodes),\n ..._.keys(bundleControllerData?.allocated_rpc_proxies),\n ];\n const instanceDetailsMap: Record<string, BundleControllerInstanceDetails> = {};\n _.forEach(nodesResults, ({output, error}, index) => {\n if (error) {\n errors.push(error);\n } else {\n const [\n {output: nanny_service},\n {output: tablet_static_memory} = {output: undefined},\n ] = output;\n instanceDetailsMap[keys[index]] = {\n nanny_service,\n tablet_static_memory,\n };\n }\n });\n dispatch({type: TABLETS_BUNDLES_EDITOR_PARTIAL, data: {instanceDetailsMap}});\n });\n })\n .catch((e: any) => {\n dispatch({\n type: TABLETS_BUNDLES_EDITOR_LOAD_FAILURE,\n data: e,\n });\n return Promise.reject(e);\n });\n };\n}\n\nexport function showTabletCellBundleEditor(bundle: string): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n dispatch(fetchTabletCellBundleEditor(bundle)).then(() => {\n dispatch({type: TABLETS_BUNDLES_EDITOR_PARTIAL, data: {visibleEditor: true}});\n });\n };\n}\n\nexport function hideTabletCellBundleEditor(): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n dispatch({\n type: TABLETS_BUNDLES_EDITOR_PARTIAL,\n data: {bundleName: undefined, loaded: true, visibleEditor: false},\n });\n };\n}\n\nexport type BundleResourceType = 'tablet_count' | 'tablet_static_memory';\n\nexport function setBundleQuota(params: {\n bundleName: string;\n resourceType: BundleResourceType;\n limit: number;\n}): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n const {bundleName, resourceType, limit} = params;\n\n const resource = hammer.format['Readable'](resourceType);\n\n return wrapApiPromiseByToaster(\n yt.v3.set(\n {\n path: `//sys/tablet_cell_bundles/${bundleName}/@resource_limits/${resourceType}`,\n },\n limit,\n ),\n {\n toasterName: `edit_bundle_${bundleName}`,\n successContent: `Set quota limit for ${resource}`,\n errorContent: `Cannot set quota limit for ${resource}`,\n },\n ).then(() => {\n dispatch(showTabletCellBundleEditor(bundleName));\n });\n };\n}\n\nexport function setBundleEditorController(params: {\n bundleName: string;\n data: Record<string, unknown>;\n}): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n const {bundleName, data} = params;\n\n const bundlePath = `//sys/tablet_cell_bundles/${bundleName}`;\n\n const requests = _.map(data, (value, path) =>\n prepareSetCommandForBatch(`${bundlePath}/${path}`, value),\n );\n\n return wrapApiPromiseByToaster(\n ytApiV3Id.executeBatch(YTApiId.tabletCellBundlesSetAttrs, {\n requests,\n } as any),\n {\n toasterName: `edit_bundle_${bundleName}`,\n successContent: `Set bundle edit data`,\n errorContent: `Cannot set bundle edit data`,\n isBatch: true,\n },\n ).then(() => {\n dispatch(fetchTabletsBundles());\n });\n };\n}\n\nexport interface EditBundleParams {\n attributes: {\n abc?: {\n id: number;\n slug: string;\n };\n };\n options: {\n changelog_account?: string;\n snapshot_account?: string;\n };\n}\n\nexport function setBunndleAttributes(\n bundle: string,\n attrs: Partial<EditBundleParams>,\n): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n const {attributes, options} = attrs;\n\n const bundlePath = `//sys/tablet_cell_bundles/${bundle}`;\n\n return wrapApiPromiseByToaster(\n ytApiV3Id.executeBatch(YTApiId.tabletCellBundlesSetAttrs, {\n requests: [\n ..._.map(attributes, (v, key) =>\n prepareSetCommandForBatch(`${bundlePath}/@${key}`, v),\n ),\n ..._.map(options, (v, key) =>\n prepareSetCommandForBatch(`${bundlePath}/@options/${key}`, v),\n ),\n ],\n } as any),\n {\n toasterName: `update-bundle_${bundle}`,\n successContent: `${bundle} successfully updated`,\n errorContent: `${bundle} cannot be updated`,\n isBatch: true,\n },\n ).then(() => {\n dispatch(showTabletCellBundleEditor(bundle));\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_hammer","_interopRequireDefault","require","_tablets","_rumWrapApi","_tablet_cell_bundles","_utils","_cypressAttributes","_yt","_tablet_cell_bundles2","obj","__esModule","default","fetchTabletCellBundleEditor","bundleName","dispatch","getState","type","TABLETS_BUNDLES_EDITOR_LOAD_REQUREST","data","bundles","getTabletsBundles","toEdit","find","_ref","bundle","Promise","resolve","requests","command","parameters","path","concat","attributes","enable_bundle_controller","push","wrapApiPromiseByToaster","ytApiV3Id","executeBatch","YTApiId","tabletCellBundlesEditData","then","results","_results$","bundleControllerIsUnavailable","error","code","yt","codes","NODE_DOES_NOT_EXIST","getBatchError","toasterName","skipSuccessToast","errorContent","_ref2","_ref3","_slicedToArray","output","_ref3$","_ref3$2","undefined","bundleControllerData","TABLETS_BUNDLES_EDITOR_LOAD_SUCCESS","bundleData","requestGroups","_toConsumableArray","_map","allocated_tablet_nodes","_item","key","makeBatchSubRequest","allocated_rpc_proxies","errors","tabletCellBundlesInstancesDetails","item","nodesResults","keys","_keys","instanceDetailsMap","_forEach","_ref4","index","_output","nanny_service","_output$","_output$2","tablet_static_memory","TABLETS_BUNDLES_EDITOR_PARTIAL","e","TABLETS_BUNDLES_EDITOR_LOAD_FAILURE","reject","showTabletCellBundleEditor","visibleEditor","hideTabletCellBundleEditor","loaded","setBundleQuota","params","resourceType","limit","resource","hammer","format","v3","set","successContent","setBundleEditorController","bundlePath","value","prepareSetCommandForBatch","tabletCellBundlesSetAttrs","isBatch","errorTitle","fetchTabletsBundles","setBunndleAttributes","attrs","options","v"],"sources":["tablet-cell-bundle-editor.ts"],"sourcesContent":["import type {ThunkAction} from 'redux-thunk';\nimport _ from 'lodash';\n\nimport hammer from '../../../common/hammer';\nimport {\n TABLETS_BUNDLES_EDITOR_LOAD_FAILURE,\n TABLETS_BUNDLES_EDITOR_LOAD_REQUREST,\n TABLETS_BUNDLES_EDITOR_LOAD_SUCCESS,\n TABLETS_BUNDLES_EDITOR_PARTIAL,\n} from '../../../constants/tablets';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport type {RootState} from '../../../store/reducers';\nimport type {\n BundleControllerInstanceDetails,\n TabletCellBundleEditorAction,\n} from '../../../store/reducers/tablet_cell_bundles/tablet-cell-bundle-editor';\nimport {fetchTabletsBundles} from '../../../store/actions/tablet_cell_bundles';\nimport {getBatchError, wrapApiPromiseByToaster} from '../../../utils/utils';\nimport {makeBatchSubRequest, prepareSetCommandForBatch} from '../../../utils/cypress-attributes';\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport {getTabletsBundles} from '../../../store/selectors/tablet_cell_bundles';\nimport {OrchidBundlesData} from '../../../store/reducers/tablet_cell_bundles';\nimport {BatchResults, BatchSubRequest} from '../../../../shared/yt-types';\n\ntype TabletCellBundleEditorThunkAction = ThunkAction<\n any,\n RootState,\n any,\n TabletCellBundleEditorAction\n>;\n\nexport function fetchTabletCellBundleEditor(bundleName: string): TabletCellBundleEditorThunkAction {\n return (dispatch, getState) => {\n dispatch({type: TABLETS_BUNDLES_EDITOR_LOAD_REQUREST, data: {bundleName}});\n\n const bundles = getTabletsBundles(getState());\n const toEdit = bundles.find(({bundle}) => bundle === bundleName);\n if (!toEdit) {\n return Promise.resolve();\n }\n\n const requests: Array<BatchSubRequest> = [\n {\n command: 'get',\n parameters: {\n path: `//sys/tablet_cell_bundles/${bundleName}`,\n attributes: [\n 'resource_usage',\n 'resource_limits',\n 'options',\n 'abc',\n 'folder_id',\n 'zone',\n 'enable_bundle_controller',\n ],\n },\n },\n ];\n\n if (toEdit.enable_bundle_controller) {\n requests.push({\n command: 'get',\n parameters: {\n path: `//sys/bundle_controller/orchid/bundle_controller/state/bundles/${bundleName}`,\n },\n });\n }\n\n return wrapApiPromiseByToaster(\n ytApiV3Id\n .executeBatch(YTApiId.tabletCellBundlesEditData, {requests})\n .then((results) => {\n const bundleControllerIsUnavailable =\n toEdit.enable_bundle_controller &&\n results[1]?.error?.code === yt.codes.NODE_DOES_NOT_EXIST;\n const error = getBatchError(\n bundleControllerIsUnavailable ? [results[0]] : results,\n 'Failed to get bundle edit data',\n );\n\n if (error) {\n throw error;\n }\n return results;\n }),\n {\n toasterName: 'edit-bundle-data',\n skipSuccessToast: true,\n errorContent: 'Failed to load bundle details',\n },\n )\n .then((results) => {\n const [{output: data}, {output: bundleControllerData} = {output: undefined}] =\n results as BatchResults<[unknown, OrchidBundlesData]>;\n\n dispatch({\n type: TABLETS_BUNDLES_EDITOR_LOAD_SUCCESS,\n data: {\n bundleData: toEdit,\n data,\n bundleControllerData,\n },\n });\n\n const requestGroups: Array<Array<BatchSubRequest>> = [\n ..._.map(bundleControllerData?.allocated_tablet_nodes, (_item, key) => {\n return [\n makeBatchSubRequest('get', {\n path: `//sys/cluster_nodes/${key}/@bundle_controller_annotations/nanny_service`,\n }),\n makeBatchSubRequest('get', {\n path: `//sys/cluster_nodes/${key}/@statistics/memory/tablet_static`,\n }),\n ];\n }),\n ..._.map(bundleControllerData?.allocated_rpc_proxies, (_item, key) => {\n return [\n makeBatchSubRequest('get', {\n path: `//sys/rpc_proxies/${key}/@bundle_controller_annotations/nanny_service`,\n }),\n ];\n }),\n ];\n const errors = [];\n wrapApiPromiseByToaster(\n ytApiV3Id.executeBatch(YTApiId.tabletCellBundlesInstancesDetails, {\n requests: _.map(requestGroups, (item) => {\n return makeBatchSubRequest('execute_batch', {requests: item});\n }),\n }),\n {\n toasterName: 'bundle-controller-tablet-static-memory',\n skipSuccessToast: true,\n errorContent:\n 'BundleController: Cannot load tablet static memory of isntances',\n },\n ).then((nodesResults) => {\n const keys = [\n ..._.keys(bundleControllerData?.allocated_tablet_nodes),\n ..._.keys(bundleControllerData?.allocated_rpc_proxies),\n ];\n const instanceDetailsMap: Record<string, BundleControllerInstanceDetails> = {};\n _.forEach(nodesResults, ({output, error}, index) => {\n if (error) {\n errors.push(error);\n } else {\n const [\n {output: nanny_service},\n {output: tablet_static_memory} = {output: undefined},\n ] = output;\n instanceDetailsMap[keys[index]] = {\n nanny_service,\n tablet_static_memory,\n };\n }\n });\n dispatch({type: TABLETS_BUNDLES_EDITOR_PARTIAL, data: {instanceDetailsMap}});\n });\n })\n .catch((e: any) => {\n dispatch({\n type: TABLETS_BUNDLES_EDITOR_LOAD_FAILURE,\n data: e,\n });\n return Promise.reject(e);\n });\n };\n}\n\nexport function showTabletCellBundleEditor(bundle: string): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n dispatch(fetchTabletCellBundleEditor(bundle)).then(() => {\n dispatch({type: TABLETS_BUNDLES_EDITOR_PARTIAL, data: {visibleEditor: true}});\n });\n };\n}\n\nexport function hideTabletCellBundleEditor(): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n dispatch({\n type: TABLETS_BUNDLES_EDITOR_PARTIAL,\n data: {bundleName: undefined, loaded: true, visibleEditor: false},\n });\n };\n}\n\nexport type BundleResourceType = 'tablet_count' | 'tablet_static_memory';\n\nexport function setBundleQuota(params: {\n bundleName: string;\n resourceType: BundleResourceType;\n limit: number;\n}): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n const {bundleName, resourceType, limit} = params;\n\n const resource = hammer.format['Readable'](resourceType);\n\n return wrapApiPromiseByToaster(\n yt.v3.set(\n {\n path: `//sys/tablet_cell_bundles/${bundleName}/@resource_limits/${resourceType}`,\n },\n limit,\n ),\n {\n toasterName: `edit_bundle_${bundleName}`,\n successContent: `Set quota limit for ${resource}`,\n errorContent: `Cannot set quota limit for ${resource}`,\n },\n ).then(() => {\n dispatch(showTabletCellBundleEditor(bundleName));\n });\n };\n}\n\nexport function setBundleEditorController(params: {\n bundleName: string;\n data: Record<string, unknown>;\n}): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n const {bundleName, data} = params;\n\n const bundlePath = `//sys/tablet_cell_bundles/${bundleName}`;\n\n const requests = _.map(data, (value, path) =>\n prepareSetCommandForBatch(`${bundlePath}/${path}`, value),\n );\n\n return wrapApiPromiseByToaster(\n ytApiV3Id.executeBatch(YTApiId.tabletCellBundlesSetAttrs, {\n requests,\n } as any),\n {\n toasterName: `edit_bundle_${bundleName}`,\n successContent: `Set bundle edit data`,\n isBatch: true,\n errorTitle: 'Failed to set bundle edit data',\n },\n ).then(() => {\n dispatch(fetchTabletsBundles());\n });\n };\n}\n\nexport interface EditBundleParams {\n attributes: {\n abc?: {\n id: number;\n slug: string;\n };\n };\n options: {\n changelog_account?: string;\n snapshot_account?: string;\n };\n}\n\nexport function setBunndleAttributes(\n bundle: string,\n attrs: Partial<EditBundleParams>,\n): TabletCellBundleEditorThunkAction {\n return (dispatch) => {\n const {attributes, options} = attrs;\n\n const bundlePath = `//sys/tablet_cell_bundles/${bundle}`;\n\n return wrapApiPromiseByToaster(\n ytApiV3Id.executeBatch(YTApiId.tabletCellBundlesSetAttrs, {\n requests: [\n ..._.map(attributes, (v, key) =>\n prepareSetCommandForBatch(`${bundlePath}/@${key}`, v),\n ),\n ..._.map(options, (v, key) =>\n prepareSetCommandForBatch(`${bundlePath}/@options/${key}`, v),\n ),\n ],\n } as any),\n {\n toasterName: `update-bundle_${bundle}`,\n successContent: `${bundle} successfully updated`,\n isBatch: true,\n errorTitle: 'Failed to edit bundle',\n },\n ).then(() => {\n dispatch(showTabletCellBundleEditor(bundle));\n });\n };\n}\n"],"mappings":"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"}
|
@@ -193,7 +193,7 @@ function saveUserData(username, attributes, groupsToAdd, groupsToRemove) {
|
|
193
193
|
addRes = _ref3[0],
|
194
194
|
removeRes = _ref3[1],
|
195
195
|
batchRes = _ref3[2];
|
196
|
-
var batchError = (0, _utils.getBatchError)(batchRes,
|
196
|
+
var batchError = (0, _utils.getBatchError)(batchRes, "Failed to save user's data");
|
197
197
|
if (batchError) {
|
198
198
|
throw batchError;
|
199
199
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_users","require","_global","_usersGroups","_index","_utils","_rumWrapApi","_UIFactory","_interopRequireDefault","obj","__esModule","default","USER_ATTRIBUTES","prepareUserData","item","_item$$attributes","$attributes","groups","member_of","allGroups","member_of_closure","idm","upravlyator_managed","sort","flags","get","_difference","fetchUsers","dispatch","type","USERS_TABLE","REQUEST","listAllUsers","YTApiId","usersData","attributes","then","data","users","_forEach","push","SUCCESS","error","FAILURE","setUsersNameFilter","nameFilter","USERS_TABLE_DATA_FIELDS","setUsersGroupFilter","filter","groupFilter","setUsersBannedFilter","bannedFilter","setUsersPageSorting","_ref","column","order","showUserEditorModal","username","USERS_EDIT_USER","path","concat","ytApiV3Id","usersEditData","res","USERS_EDIT_USER_DATA_FIELDS","showModal","closeUserEditorModal","removeUserFromGroups","cluster","Promise","all","_map","groupname","UIFactory","getAclApi","removeUserFromGroup","addUserToGroups","comment","addUserToGroup","saveUserData","groupsToAdd","groupsToRemove","getState","requests","restAttrs","_objectWithoutProperties","_excluded","value","key","command","parameters","input","state","getCluster","length","executeBatch","usersSaveData","Boolean","_ref2","_ref3","_slicedToArray","addRes","removeRes","batchRes","batchError","getBatchError","_error$response","response","reject"],"sources":["users.js"],"sourcesContent":["import _ from 'lodash';\nimport {\n USERS_EDIT_USER,\n USERS_EDIT_USER_DATA_FIELDS,\n USERS_TABLE,\n USERS_TABLE_DATA_FIELDS,\n} from '../../constants/users';\nimport {getCluster} from '../../store/selectors/global';\nimport {listAllUsers} from '../../utils/users-groups';\nimport {flags} from '../../utils/index';\nimport {getBatchError} from '../../utils/utils';\nimport {YTApiId, ytApiV3Id} from '../../rum/rum-wrap-api';\nimport UIFactory from '../../UIFactory';\n\nconst USER_ATTRIBUTES = [\n 'name',\n 'banned',\n 'ban_message',\n 'member_of',\n 'member_of_closure',\n 'read_request_rate_limit',\n 'request_queue_size_limit',\n 'write_request_rate_limit',\n 'upravlyator_managed',\n];\n\nexport function prepareUserData(item) {\n const {\n $attributes: {member_of: groups, member_of_closure: allGroups, upravlyator_managed: idm},\n } = item;\n groups.sort();\n allGroups.sort();\n item.$attributes.idm = flags.get(idm || false);\n item.$attributes['transitiveGroups'] = _.difference(allGroups, groups);\n return item.$attributes;\n}\n\nexport function fetchUsers() {\n return (dispatch) => {\n dispatch({type: USERS_TABLE.REQUEST});\n\n return listAllUsers(YTApiId.usersData, {attributes: USER_ATTRIBUTES})\n .then((data) => {\n const users = [];\n _.forEach(data, (item) => {\n users.push(prepareUserData(item));\n });\n dispatch({type: USERS_TABLE.SUCCESS, data: {users}});\n })\n .catch((error) => {\n dispatch({type: USERS_TABLE.FAILURE, data: error});\n });\n };\n}\n\nexport function setUsersNameFilter(nameFilter) {\n return {type: USERS_TABLE_DATA_FIELDS, data: {nameFilter}};\n}\n\nexport function setUsersGroupFilter(filter) {\n return {\n type: USERS_TABLE_DATA_FIELDS,\n data: {groupFilter: filter || ''},\n };\n}\n\nexport function setUsersBannedFilter(bannedFilter) {\n return {type: USERS_TABLE_DATA_FIELDS, data: {bannedFilter}};\n}\n\nexport function setUsersPageSorting({column, order}) {\n const sort = {column, order};\n if (!order) {\n sort.column = '';\n }\n return {type: USERS_TABLE_DATA_FIELDS, data: {sort}};\n}\n\nexport function showUserEditorModal(username) {\n return (dispatch) => {\n dispatch({type: USERS_EDIT_USER.REQUEST});\n const path = `//sys/users/${username}`;\n return ytApiV3Id\n .get(YTApiId.usersEditData, {path, attributes: USER_ATTRIBUTES})\n .then((res) => {\n dispatch({\n type: USERS_EDIT_USER.SUCCESS,\n data: {data: prepareUserData(res)},\n });\n dispatch({\n type: USERS_EDIT_USER_DATA_FIELDS,\n data: {showModal: true, username},\n });\n })\n .catch((error) => {\n return dispatch({type: USERS_EDIT_USER.FAILURE, data: error});\n });\n };\n}\n\nexport function closeUserEditorModal() {\n return {\n type: USERS_EDIT_USER_DATA_FIELDS,\n data: {showModal: false, username: ''},\n };\n}\n\nfunction removeUserFromGroups(cluster, username, groups) {\n return Promise.all(\n _.map(groups, (groupname) => {\n return UIFactory.getAclApi().removeUserFromGroup({cluster, username, groupname});\n }),\n );\n}\n\nfunction addUserToGroups(cluster, username, groups, comment) {\n return Promise.all(\n _.map(groups, (groupname) => {\n return UIFactory.getAclApi().addUserToGroup({cluster, username, groupname, comment});\n }),\n );\n}\n\nexport function saveUserData(username, attributes, groupsToAdd, groupsToRemove) {\n return (dispatch, getState) => {\n dispatch({type: USERS_EDIT_USER.REQUEST});\n\n const path = `//sys/users/${username}`;\n const requests = [];\n const {comment, ...restAttrs} = attributes;\n _.forEach(restAttrs, (value, key) => {\n requests.push({\n command: 'set',\n parameters: {\n path: `${path}/@${key}`,\n },\n input: value,\n });\n });\n\n const state = getState();\n const cluster = getCluster(state);\n\n return (\n Promise.all(\n [\n addUserToGroups(cluster, username, groupsToAdd, comment),\n removeUserFromGroups(cluster, username, groupsToRemove),\n requests.length && ytApiV3Id.executeBatch(YTApiId.usersSaveData, {requests}),\n ].filter(Boolean),\n )\n // eslint-disable-next-line no-unused-vars\n .then(([addRes, removeRes, batchRes]) => {\n const batchError = getBatchError(batchRes, 'Attributes cannot be modified');\n if (batchError) {\n throw batchError;\n }\n\n dispatch({type: USERS_EDIT_USER.SUCCESS, data: {}});\n dispatch(fetchUsers());\n\n return;\n })\n .catch((error) => {\n const data = error?.response?.data || error;\n dispatch({type: USERS_EDIT_USER.FAILURE, data: data});\n return Promise.reject(data);\n })\n );\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_users","require","_global","_usersGroups","_index","_utils","_rumWrapApi","_UIFactory","_interopRequireDefault","obj","__esModule","default","USER_ATTRIBUTES","prepareUserData","item","_item$$attributes","$attributes","groups","member_of","allGroups","member_of_closure","idm","upravlyator_managed","sort","flags","get","_difference","fetchUsers","dispatch","type","USERS_TABLE","REQUEST","listAllUsers","YTApiId","usersData","attributes","then","data","users","_forEach","push","SUCCESS","error","FAILURE","setUsersNameFilter","nameFilter","USERS_TABLE_DATA_FIELDS","setUsersGroupFilter","filter","groupFilter","setUsersBannedFilter","bannedFilter","setUsersPageSorting","_ref","column","order","showUserEditorModal","username","USERS_EDIT_USER","path","concat","ytApiV3Id","usersEditData","res","USERS_EDIT_USER_DATA_FIELDS","showModal","closeUserEditorModal","removeUserFromGroups","cluster","Promise","all","_map","groupname","UIFactory","getAclApi","removeUserFromGroup","addUserToGroups","comment","addUserToGroup","saveUserData","groupsToAdd","groupsToRemove","getState","requests","restAttrs","_objectWithoutProperties","_excluded","value","key","command","parameters","input","state","getCluster","length","executeBatch","usersSaveData","Boolean","_ref2","_ref3","_slicedToArray","addRes","removeRes","batchRes","batchError","getBatchError","_error$response","response","reject"],"sources":["users.js"],"sourcesContent":["import _ from 'lodash';\nimport {\n USERS_EDIT_USER,\n USERS_EDIT_USER_DATA_FIELDS,\n USERS_TABLE,\n USERS_TABLE_DATA_FIELDS,\n} from '../../constants/users';\nimport {getCluster} from '../../store/selectors/global';\nimport {listAllUsers} from '../../utils/users-groups';\nimport {flags} from '../../utils/index';\nimport {getBatchError} from '../../utils/utils';\nimport {YTApiId, ytApiV3Id} from '../../rum/rum-wrap-api';\nimport UIFactory from '../../UIFactory';\n\nconst USER_ATTRIBUTES = [\n 'name',\n 'banned',\n 'ban_message',\n 'member_of',\n 'member_of_closure',\n 'read_request_rate_limit',\n 'request_queue_size_limit',\n 'write_request_rate_limit',\n 'upravlyator_managed',\n];\n\nexport function prepareUserData(item) {\n const {\n $attributes: {member_of: groups, member_of_closure: allGroups, upravlyator_managed: idm},\n } = item;\n groups.sort();\n allGroups.sort();\n item.$attributes.idm = flags.get(idm || false);\n item.$attributes['transitiveGroups'] = _.difference(allGroups, groups);\n return item.$attributes;\n}\n\nexport function fetchUsers() {\n return (dispatch) => {\n dispatch({type: USERS_TABLE.REQUEST});\n\n return listAllUsers(YTApiId.usersData, {attributes: USER_ATTRIBUTES})\n .then((data) => {\n const users = [];\n _.forEach(data, (item) => {\n users.push(prepareUserData(item));\n });\n dispatch({type: USERS_TABLE.SUCCESS, data: {users}});\n })\n .catch((error) => {\n dispatch({type: USERS_TABLE.FAILURE, data: error});\n });\n };\n}\n\nexport function setUsersNameFilter(nameFilter) {\n return {type: USERS_TABLE_DATA_FIELDS, data: {nameFilter}};\n}\n\nexport function setUsersGroupFilter(filter) {\n return {\n type: USERS_TABLE_DATA_FIELDS,\n data: {groupFilter: filter || ''},\n };\n}\n\nexport function setUsersBannedFilter(bannedFilter) {\n return {type: USERS_TABLE_DATA_FIELDS, data: {bannedFilter}};\n}\n\nexport function setUsersPageSorting({column, order}) {\n const sort = {column, order};\n if (!order) {\n sort.column = '';\n }\n return {type: USERS_TABLE_DATA_FIELDS, data: {sort}};\n}\n\nexport function showUserEditorModal(username) {\n return (dispatch) => {\n dispatch({type: USERS_EDIT_USER.REQUEST});\n const path = `//sys/users/${username}`;\n return ytApiV3Id\n .get(YTApiId.usersEditData, {path, attributes: USER_ATTRIBUTES})\n .then((res) => {\n dispatch({\n type: USERS_EDIT_USER.SUCCESS,\n data: {data: prepareUserData(res)},\n });\n dispatch({\n type: USERS_EDIT_USER_DATA_FIELDS,\n data: {showModal: true, username},\n });\n })\n .catch((error) => {\n return dispatch({type: USERS_EDIT_USER.FAILURE, data: error});\n });\n };\n}\n\nexport function closeUserEditorModal() {\n return {\n type: USERS_EDIT_USER_DATA_FIELDS,\n data: {showModal: false, username: ''},\n };\n}\n\nfunction removeUserFromGroups(cluster, username, groups) {\n return Promise.all(\n _.map(groups, (groupname) => {\n return UIFactory.getAclApi().removeUserFromGroup({cluster, username, groupname});\n }),\n );\n}\n\nfunction addUserToGroups(cluster, username, groups, comment) {\n return Promise.all(\n _.map(groups, (groupname) => {\n return UIFactory.getAclApi().addUserToGroup({cluster, username, groupname, comment});\n }),\n );\n}\n\nexport function saveUserData(username, attributes, groupsToAdd, groupsToRemove) {\n return (dispatch, getState) => {\n dispatch({type: USERS_EDIT_USER.REQUEST});\n\n const path = `//sys/users/${username}`;\n const requests = [];\n const {comment, ...restAttrs} = attributes;\n _.forEach(restAttrs, (value, key) => {\n requests.push({\n command: 'set',\n parameters: {\n path: `${path}/@${key}`,\n },\n input: value,\n });\n });\n\n const state = getState();\n const cluster = getCluster(state);\n\n return (\n Promise.all(\n [\n addUserToGroups(cluster, username, groupsToAdd, comment),\n removeUserFromGroups(cluster, username, groupsToRemove),\n requests.length && ytApiV3Id.executeBatch(YTApiId.usersSaveData, {requests}),\n ].filter(Boolean),\n )\n // eslint-disable-next-line no-unused-vars\n .then(([addRes, removeRes, batchRes]) => {\n const batchError = getBatchError(batchRes, \"Failed to save user's data\");\n if (batchError) {\n throw batchError;\n }\n\n dispatch({type: USERS_EDIT_USER.SUCCESS, data: {}});\n dispatch(fetchUsers());\n\n return;\n })\n .catch((error) => {\n const data = error?.response?.data || error;\n dispatch({type: USERS_EDIT_USER.FAILURE, data: data});\n return Promise.reject(data);\n })\n );\n };\n}\n"],"mappings":"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"}
|
@@ -14,7 +14,7 @@ export interface HandleExecuteBatchRetryParams {
|
|
14
14
|
error: YTError;
|
15
15
|
resolveCb: (results: Array<BatchResultsItem<any>>) => void;
|
16
16
|
rejectCb: (error: YTError) => void;
|
17
|
-
options
|
17
|
+
options: ExecuteBatchOptions;
|
18
18
|
}
|
19
19
|
export default function executeBatchReducer(state: ExecuteBatchState | undefined, action: ExecuteBatchAction): ExecuteBatchState;
|
20
20
|
export type ExecuteBatchAction = ActionD<typeof EXECUTE_BATCH_RETRY_SHOW_MODAL, HandleExecuteBatchRetryParams & Pick<ExecuteBatchStateItem, 'id' | 'ytApiId'>> | ActionD<typeof EXECUTE_BATCH_RETRY_HIDE_MODAL, Pick<ExecuteBatchStateItem, 'id'>>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_executeBatch","require","_interopRequireDefault","obj","__esModule","default","initialState","executeBatchReducer","state","arguments","length","undefined","action","type","EXECUTE_BATCH_RETRY_SHOW_MODAL","res","_objectSpread","data","id","showModal","EXECUTE_BATCH_RETRY_HIDE_MODAL","_res"],"sources":["execute-batch.ts"],"sourcesContent":["import {ActionD, YTError} from '../../types';\nimport {\n EXECUTE_BATCH_RETRY_HIDE_MODAL,\n EXECUTE_BATCH_RETRY_SHOW_MODAL,\n} from '../../constants/execute-batch';\nimport {ExecuteBatchOptions} from '../actions/execute-batch';\nimport {YTApiId} from '../../rum/rum-wrap-api';\nimport {BatchResultsItem, BatchSubRequest} from '../../../shared/yt-types';\n\nexport interface ExecuteBatchStateItem extends HandleExecuteBatchRetryParams {\n id: string;\n showModal: boolean;\n ytApiId: YTApiId;\n}\n\nexport type ExecuteBatchState = Record<string, ExecuteBatchStateItem>;\n\nexport interface HandleExecuteBatchRetryParams {\n failed_requests: Array<BatchSubRequest>;\n error: YTError;\n resolveCb: (results: Array<BatchResultsItem<any>>) => void;\n rejectCb: (error: YTError) => void;\n options
|
1
|
+
{"version":3,"names":["_executeBatch","require","_interopRequireDefault","obj","__esModule","default","initialState","executeBatchReducer","state","arguments","length","undefined","action","type","EXECUTE_BATCH_RETRY_SHOW_MODAL","res","_objectSpread","data","id","showModal","EXECUTE_BATCH_RETRY_HIDE_MODAL","_res"],"sources":["execute-batch.ts"],"sourcesContent":["import {ActionD, YTError} from '../../types';\nimport {\n EXECUTE_BATCH_RETRY_HIDE_MODAL,\n EXECUTE_BATCH_RETRY_SHOW_MODAL,\n} from '../../constants/execute-batch';\nimport {ExecuteBatchOptions} from '../actions/execute-batch';\nimport {YTApiId} from '../../rum/rum-wrap-api';\nimport {BatchResultsItem, BatchSubRequest} from '../../../shared/yt-types';\n\nexport interface ExecuteBatchStateItem extends HandleExecuteBatchRetryParams {\n id: string;\n showModal: boolean;\n ytApiId: YTApiId;\n}\n\nexport type ExecuteBatchState = Record<string, ExecuteBatchStateItem>;\n\nexport interface HandleExecuteBatchRetryParams {\n failed_requests: Array<BatchSubRequest>;\n error: YTError;\n resolveCb: (results: Array<BatchResultsItem<any>>) => void;\n rejectCb: (error: YTError) => void;\n options: ExecuteBatchOptions;\n}\n\nconst initialState: ExecuteBatchState = {};\n\nexport default function executeBatchReducer(\n state = initialState,\n action: ExecuteBatchAction,\n): ExecuteBatchState {\n switch (action.type) {\n case EXECUTE_BATCH_RETRY_SHOW_MODAL: {\n const res = {...state};\n res[action.data.id] = {\n ...action.data,\n showModal: true,\n };\n return res;\n }\n case EXECUTE_BATCH_RETRY_HIDE_MODAL: {\n const res = {...state};\n delete res[action.data.id];\n return res;\n }\n }\n return state;\n}\n\nexport type ExecuteBatchAction =\n | ActionD<\n typeof EXECUTE_BATCH_RETRY_SHOW_MODAL,\n HandleExecuteBatchRetryParams & Pick<ExecuteBatchStateItem, 'id' | 'ytApiId'>\n >\n | ActionD<typeof EXECUTE_BATCH_RETRY_HIDE_MODAL, Pick<ExecuteBatchStateItem, 'id'>>;\n"],"mappings":";;;;;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AAGsC,SAAAC,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAqBtC,IAAMG,YAA+B,GAAG,CAAC,CAAC;AAE3B,SAASC,mBAAmBA,CAAA,EAGtB;EAAA,IAFjBC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGH,YAAY;EAAA,IACpBM,MAA0B,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;EAE1B,QAAQC,MAAM,CAACC,IAAI;IACf,KAAKC,4CAA8B;MAAE;QACjC,IAAMC,GAAG,OAAAC,sBAAA,MAAOR,KAAK,CAAC;QACtBO,GAAG,CAACH,MAAM,CAACK,IAAI,CAACC,EAAE,CAAC,OAAAF,sBAAA,MAAAA,sBAAA,MACZJ,MAAM,CAACK,IAAI;UACdE,SAAS,EAAE;QAAI,EAClB;QACD,OAAOJ,GAAG;MACd;IACA,KAAKK,4CAA8B;MAAE;QACjC,IAAMC,IAAG,OAAAL,sBAAA,MAAOR,KAAK,CAAC;QACtB,OAAOa,IAAG,CAACT,MAAM,CAACK,IAAI,CAACC,EAAE,CAAC;QAC1B,OAAOG,IAAG;MACd;EACJ;EACA,OAAOb,KAAK;AAChB"}
|
@@ -143,7 +143,7 @@ export declare function makeRootReducer(): import("redux").Reducer<import("redux
|
|
143
143
|
checkPermissionsError: undefined;
|
144
144
|
} & {
|
145
145
|
path: string;
|
146
|
-
mode: "
|
146
|
+
mode: "acl" | "attributes" | "auto" | "consumer" | "content" | "queue" | "user_attributes" | "locks" | "schema" | "tablets" | "tablet_errors" | "annotation" | "access_log" | "mount_config";
|
147
147
|
};
|
148
148
|
content: import("redux").CombinedState<{
|
149
149
|
replicatedTable: import("./navigation/content/replicated-table").ReplicatedTableState;
|