@ytsaurus/ui 1.14.1 → 1.14.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/@types/types.d.ts +1 -0
- package/build/cjs/shared/constants/yt-api-id.d.ts +139 -0
- package/build/cjs/shared/constants/yt-api-id.js +148 -0
- package/build/cjs/shared/constants/yt-api-id.js.map +1 -0
- package/build/cjs/shared/utils/check-permission.d.ts +1 -14
- package/build/cjs/shared/utils/check-permission.js +6 -10
- package/build/cjs/shared/utils/check-permission.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/containers/SettingsPanel/settings-description.js +1 -1
- package/build/cjs/ui/containers/SettingsPanel/settings-description.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/rum/rum-wrap-api.d.ts +3 -141
- package/build/cjs/ui/rum/rum-wrap-api.js +12 -145
- package/build/cjs/ui/rum/rum-wrap-api.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/cluster-params.js +22 -15
- package/build/cjs/ui/store/actions/cluster-params.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 +3 -3
- package/build/cjs/ui/store/actions/execute-batch.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/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 +3 -10
- package/build/cjs/ui/store/actions/navigation/modals/copy-object.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 +3 -10
- 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/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/masters.js +7 -3
- package/build/cjs/ui/store/actions/system/masters.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 +15 -15
- package/build/cjs/ui/store/selectors/global/index.js +4 -4
- package/build/cjs/ui/store/selectors/global/index.js.map +1 -1
- 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/shared/constants/yt-api-id.d.ts +139 -0
- package/build/esm/shared/constants/yt-api-id.js +141 -0
- package/build/esm/shared/constants/yt-api-id.js.map +1 -0
- package/build/esm/shared/utils/check-permission.d.ts +1 -14
- package/build/esm/shared/utils/check-permission.js +8 -11
- package/build/esm/shared/utils/check-permission.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/containers/SettingsPanel/settings-description.js +2 -2
- package/build/esm/ui/containers/SettingsPanel/settings-description.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/rum/rum-wrap-api.d.ts +3 -141
- package/build/esm/ui/rum/rum-wrap-api.js +3 -141
- package/build/esm/ui/rum/rum-wrap-api.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/cluster-params.js +24 -17
- package/build/esm/ui/store/actions/cluster-params.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 +3 -3
- package/build/esm/ui/store/actions/execute-batch.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/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 +4 -11
- package/build/esm/ui/store/actions/navigation/modals/copy-object.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 +4 -11
- 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/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/masters.js +7 -3
- package/build/esm/ui/store/actions/system/masters.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 +15 -15
- package/build/esm/ui/store/selectors/global/index.js +3 -3
- package/build/esm/ui/store/selectors/global/index.js.map +1 -1
- 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.b8adf234.js +3 -0
- package/dist/public/build/js/{main.652b0208.js.map → main.b8adf234.js.map} +1 -1
- package/dist/public/build/manifest.json +2 -2
- package/dist/shared/utils/index.js +3 -3
- package/package.json +5 -5
- package/dist/public/build/js/main.652b0208.js +0 -3
- /package/dist/public/build/js/{main.652b0208.js.LICENSE.txt → main.b8adf234.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_axios","_interopRequireDefault","require","_yt","_jsCookie","_ypath","_checkPermission","_index","_global","_utils","_utils2","_settings","_rumCounter","_uikit","_rumWrapApi","_rumMeasureTypes","_utils3","_ytConfig","_global2","_ytApiInit","obj","__esModule","default","handleUiConfigError","path","error","type","rumLogError","level","message","concat","block","toast","Toaster","prepareClusterUiConfig","uiConfig","uiDevConfig","code","yt","codes","NODE_DOES_NOT_EXIST","add","name","autoHiding","title","content","output","initClusterParams","cluster","dispatch","getState","initYTApiClusterParams","INIT_CLUSTER_PARAMS","REQUEST","login","getCurrentUserName","rumId","RumWrapper","RumMeasureTypes","CLUSTER_PARAMS","wrapApiPromiseByToaster","Promise","all","fetch","YTApiId","clusterParamsIsDeveloper","ytApiV3Id","executeBatch","requests","prepareCheckIsDeveloperRequests","clusterParams","axios","request","url","method","skipSuccessToast","toasterName","errorTitle","errorContent","then","_ref","_checkDeveloper$outpu","_ref2","_slicedToArray","_ref2$","checkDeveloper","data","isDeveloper","action","mediumList","schedulerVersion","masterVersion","getBatchError","_prepareClusterUiConf","_prepareClusterUiConf2","uiConfigOutput","uiDevConfigOutput","SUCCESS","ypath","getValue","clusterUiConfig","Object","assign","e","FAILURE","count","updateCluster","onUpdateEnd","dispatchError","_error$response","Error","console","UPDATE_CLUSTER","response","ui_clusterInfo","_ref3","token","tokenError","version","versionError","RESET_STORE_BEFORE_CLUSTER_CHANGE","shouldUsePreserveState","errorType","LOAD_ERROR","CONNECTION","YT","parameters","csrf_token","Cookies","remove","getXsrfCookieName","AUTHENTICATION","GLOBAL_PARTIAL","set","FINAL_SUCCESS","resolve"],"sources":["cluster-params.ts"],"sourcesContent":["import axios, {AxiosResponse} from 'axios';\n\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport Cookies from 'js-cookie';\n\nimport ypath from '../../common/thor/ypath';\nimport {prepareCheckIsDeveloperRequests} from '../../../shared/utils/check-permission';\nimport {INIT_CLUSTER_PARAMS, LOAD_ERROR, UPDATE_CLUSTER} from '../../constants/index';\nimport {getCurrentUserName} from '../../store/selectors/global';\nimport {getXsrfCookieName} from '../../utils';\nimport {RESET_STORE_BEFORE_CLUSTER_CHANGE} from '../../constants/utils';\nimport {shouldUsePreserveState} from '../../store/selectors/settings';\nimport {rumLogError} from '../../rum/rum-counter';\nimport {Toaster} from '@gravity-ui/uikit';\nimport {RumWrapper, YTApiId, ytApiV3Id} from '../../rum/rum-wrap-api';\nimport {RumMeasureTypes} from '../../rum/rum-measure-types';\nimport {getBatchError, wrapApiPromiseByToaster} from '../../utils/utils';\nimport {BatchResultsItem} from '../../../shared/yt-types';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../store/reducers';\nimport YT from '../../config/yt-config';\nimport {GLOBAL_PARTIAL} from '../../constants/global';\nimport {FIX_MY_TYPE, YTError} from '../../../@types/types';\nimport {initYTApiClusterParams} from '../../common/yt-api-init';\n\nfunction handleUiConfigError(path: string, error: any, type?: string) {\n rumLogError(\n {\n level: 'warn',\n type,\n message: `${path} cannot be loaded, some ui features might be not available`,\n block: path,\n },\n error,\n );\n}\n\nconst toast = new Toaster();\n\nfunction prepareClusterUiConfig(uiConfig: BatchResultsItem, uiDevConfig: BatchResultsItem) {\n if (uiConfig.error && uiConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config', uiConfig.error);\n toast.add({\n name: 'get-ui_config',\n type: 'error',\n autoHiding: false,\n title: 'Failed to load //sys/@ui_config',\n content:\n 'Some UI features might be not available. ' +\n 'Try to reload the page. ' +\n 'If the problem persists please report it via Bug Reporter.',\n });\n }\n if (uiDevConfig.error && uiDevConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config_dev_overrides', uiDevConfig.error);\n }\n return [uiConfig.output || {}, uiDevConfig.output || {}];\n}\n\ntype GlobalThunkAction<T = unknown> = ThunkAction<T, RootState, any, FIX_MY_TYPE>;\n\nexport function initClusterParams(cluster: string): GlobalThunkAction<Promise<void>> {\n return (dispatch, getState) => {\n initYTApiClusterParams(cluster);\n\n dispatch({\n type: INIT_CLUSTER_PARAMS.REQUEST,\n });\n\n const login = getCurrentUserName(getState());\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return wrapApiPromiseByToaster(\n Promise.all([\n rumId.fetch(\n YTApiId.clusterParamsIsDeveloper,\n ytApiV3Id.executeBatch(YTApiId.clusterParamsIsDeveloper, {\n requests: prepareCheckIsDeveloperRequests(login),\n }),\n ),\n rumId.fetch(\n YTApiId.clusterParams,\n axios.request({\n url: '/api/cluster-params/' + cluster,\n method: 'GET',\n }),\n ),\n ]),\n {\n skipSuccessToast: true,\n toasterName: 'cluster_initialization_failure',\n errorTitle: 'Cluster initialization failure',\n errorContent: 'An error occured',\n },\n )\n .then(([[checkDeveloper], {data}]) => {\n const isDeveloper = checkDeveloper?.output?.action === 'allow';\n const {mediumList, schedulerVersion, masterVersion, uiConfig, uiDevConfig} = data;\n const error = getBatchError(\n [mediumList, isDeveloper],\n 'Cluster initialization failure',\n );\n if (error) {\n throw error;\n }\n const [uiConfigOutput, uiDevConfigOutput] = prepareClusterUiConfig(\n uiConfig,\n uiDevConfig,\n );\n dispatch({\n type: INIT_CLUSTER_PARAMS.SUCCESS,\n data: {\n cluster,\n mediumList: ypath.getValue(mediumList.output),\n isDeveloper,\n clusterUiConfig: isDeveloper\n ? Object.assign({}, uiConfigOutput, uiDevConfigOutput)\n : uiConfigOutput,\n schedulerVersion: schedulerVersion.output,\n masterVersion: masterVersion.output,\n },\n });\n })\n .catch((e) => {\n dispatch({\n type: INIT_CLUSTER_PARAMS.FAILURE,\n data: e,\n });\n });\n };\n}\n\ninterface ClusterInfoData {\n version?: string;\n versionError?: YTError;\n token?: {\n login: string;\n csrf_token?: string;\n };\n tokenError?: YTError;\n}\n\nlet count = 0;\nexport function updateCluster(\n cluster: string,\n onUpdateEnd: () => Promise<void>,\n): GlobalThunkAction {\n return (dispatch, getState) => {\n const dispatchError = (error: any) => {\n if (error instanceof Error) {\n console.error(error);\n }\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {error: error?.response?.data || error},\n });\n };\n\n dispatch({\n type: UPDATE_CLUSTER.REQUEST,\n });\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return rumId\n .fetch<AxiosResponse<ClusterInfoData>>(\n YTApiId.ui_clusterInfo,\n axios.request({\n url: '/api/cluster-info/' + cluster,\n method: 'GET',\n }),\n )\n .then(({data}) => {\n const {token, tokenError, version, versionError} = data;\n\n if (count++) {\n dispatch({\n type: RESET_STORE_BEFORE_CLUSTER_CHANGE,\n data: {\n shouldUsePreserveState: shouldUsePreserveState(getState()),\n },\n });\n }\n\n if (!version || versionError) {\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {errorType: LOAD_ERROR.CONNECTION, error: versionError},\n });\n } else {\n dispatch({\n type: UPDATE_CLUSTER.SUCCESS,\n data: {version},\n });\n\n YT.parameters.version = version;\n YT.cluster = cluster;\n\n if (!token?.csrf_token || tokenError) {\n Cookies.remove(getXsrfCookieName(cluster));\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {\n errorType: LOAD_ERROR.AUTHENTICATION,\n error: tokenError || new Error('Failed to get CSRF-token'),\n },\n });\n } else {\n const {login, csrf_token} = token;\n YT.parameters.login = login;\n dispatch({type: GLOBAL_PARTIAL, data: {login}});\n Cookies.set(getXsrfCookieName(cluster), csrf_token);\n return onUpdateEnd()\n .then(() => {\n dispatch({\n type: UPDATE_CLUSTER.FINAL_SUCCESS,\n });\n })\n .catch(dispatchError);\n }\n }\n\n return Promise.resolve();\n })\n .catch(dispatchError);\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_axios","_interopRequireDefault","require","_yt","_jsCookie","_ypath","_checkPermission","_index","_global","_utils","_utils2","_settings","_rumCounter","_uikit","_rumWrapApi","_rumMeasureTypes","_utils3","_ytConfig","_global2","_ytApiInit","obj","__esModule","default","handleUiConfigError","path","error","type","rumLogError","level","message","concat","block","toast","Toaster","prepareClusterUiConfig","uiConfig","uiDevConfig","code","yt","codes","NODE_DOES_NOT_EXIST","add","name","autoHiding","title","content","output","initClusterParams","cluster","dispatch","getState","initYTApiClusterParams","INIT_CLUSTER_PARAMS","REQUEST","login","getCurrentUserName","rumId","RumWrapper","RumMeasureTypes","CLUSTER_PARAMS","wrapApiPromiseByToaster","fetch","YTApiId","clusterParams","axios","request","url","method","skipSuccessToast","toasterName","errorTitle","errorContent","then","_ref","data","mediumList","schedulerVersion","masterVersion","getBatchError","_prepareClusterUiConf","_prepareClusterUiConf2","_slicedToArray","uiConfigOutput","uiDevConfigOutput","SUCCESS","ypath","getValue","isDeveloper","clusterUiConfig","clusterParamsIsDeveloper","checkIsDeveloper","undefined","Object","assign","GLOBAL_PARTIAL","e","console","FAILURE","count","updateCluster","onUpdateEnd","dispatchError","_error$response","Error","UPDATE_CLUSTER","response","ui_clusterInfo","_ref2","token","tokenError","version","versionError","RESET_STORE_BEFORE_CLUSTER_CHANGE","shouldUsePreserveState","errorType","LOAD_ERROR","CONNECTION","YT","parameters","csrf_token","Cookies","remove","getXsrfCookieName","AUTHENTICATION","set","FINAL_SUCCESS","Promise","resolve"],"sources":["cluster-params.ts"],"sourcesContent":["import axios, {AxiosResponse} from 'axios';\n\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport Cookies from 'js-cookie';\n\nimport ypath from '../../common/thor/ypath';\nimport {checkIsDeveloper} from '../../../shared/utils/check-permission';\nimport {INIT_CLUSTER_PARAMS, LOAD_ERROR, UPDATE_CLUSTER} from '../../constants/index';\nimport {getCurrentUserName} from '../../store/selectors/global';\nimport {getXsrfCookieName} from '../../utils';\nimport {RESET_STORE_BEFORE_CLUSTER_CHANGE} from '../../constants/utils';\nimport {shouldUsePreserveState} from '../../store/selectors/settings';\nimport {rumLogError} from '../../rum/rum-counter';\nimport {Toaster} from '@gravity-ui/uikit';\nimport {RumWrapper, YTApiId} from '../../rum/rum-wrap-api';\nimport {RumMeasureTypes} from '../../rum/rum-measure-types';\nimport {getBatchError, wrapApiPromiseByToaster} from '../../utils/utils';\nimport {BatchResultsItem} from '../../../shared/yt-types';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../store/reducers';\nimport YT from '../../config/yt-config';\nimport {GLOBAL_PARTIAL} from '../../constants/global';\nimport {FIX_MY_TYPE, YTError} from '../../../@types/types';\nimport {initYTApiClusterParams} from '../../common/yt-api-init';\n\nfunction handleUiConfigError(path: string, error: any, type?: string) {\n rumLogError(\n {\n level: 'warn',\n type,\n message: `${path} cannot be loaded, some ui features might be not available`,\n block: path,\n },\n error,\n );\n}\n\nconst toast = new Toaster();\n\nfunction prepareClusterUiConfig(uiConfig: BatchResultsItem, uiDevConfig: BatchResultsItem) {\n if (uiConfig.error && uiConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config', uiConfig.error);\n toast.add({\n name: 'get-ui_config',\n type: 'error',\n autoHiding: false,\n title: 'Failed to load //sys/@ui_config',\n content:\n 'Some UI features might be not available. ' +\n 'Try to reload the page. ' +\n 'If the problem persists please report it via Bug Reporter.',\n });\n }\n if (uiDevConfig.error && uiDevConfig.error.code !== yt.codes.NODE_DOES_NOT_EXIST) {\n handleUiConfigError('//sys/@ui_config_dev_overrides', uiDevConfig.error);\n }\n return [uiConfig.output || {}, uiDevConfig.output || {}];\n}\n\ntype GlobalThunkAction<T = unknown> = ThunkAction<T, RootState, any, FIX_MY_TYPE>;\n\nexport function initClusterParams(cluster: string): GlobalThunkAction<Promise<void>> {\n return (dispatch, getState) => {\n initYTApiClusterParams(cluster);\n\n dispatch({\n type: INIT_CLUSTER_PARAMS.REQUEST,\n });\n\n const login = getCurrentUserName(getState());\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return wrapApiPromiseByToaster(\n rumId.fetch(\n YTApiId.clusterParams,\n axios.request({\n url: '/api/cluster-params/' + cluster,\n method: 'GET',\n }),\n ),\n {\n skipSuccessToast: true,\n toasterName: 'cluster_initialization_failure',\n errorTitle: 'Cluster initialization failure',\n errorContent: 'An error occured',\n },\n )\n .then(({data}) => {\n const {mediumList, schedulerVersion, masterVersion, uiConfig, uiDevConfig} = data;\n const error = getBatchError([mediumList], 'Cluster initialization failure');\n if (error) {\n throw error;\n }\n const [uiConfigOutput, uiDevConfigOutput] = prepareClusterUiConfig(\n uiConfig,\n uiDevConfig,\n );\n dispatch({\n type: INIT_CLUSTER_PARAMS.SUCCESS,\n data: {\n cluster,\n mediumList: ypath.getValue(mediumList.output),\n isDeveloper: false,\n clusterUiConfig: uiConfigOutput,\n schedulerVersion: schedulerVersion.output,\n masterVersion: masterVersion.output,\n },\n });\n\n return rumId\n .fetch(\n YTApiId.clusterParamsIsDeveloper,\n checkIsDeveloper(\n login,\n undefined,\n YTApiId[YTApiId.clusterParamsIsDeveloper],\n ),\n )\n .then((isDeveloper) => {\n if (isDeveloper) {\n const clusterUiConfig = isDeveloper\n ? Object.assign({}, uiConfigOutput, uiDevConfigOutput)\n : uiConfigOutput;\n dispatch({type: GLOBAL_PARTIAL, data: {isDeveloper, clusterUiConfig}});\n }\n })\n .catch((e) => {\n console.error('Failed to check if current user is admin', e);\n });\n })\n .catch((e) => {\n dispatch({\n type: INIT_CLUSTER_PARAMS.FAILURE,\n data: e,\n });\n });\n };\n}\n\ninterface ClusterInfoData {\n version?: string;\n versionError?: YTError;\n token?: {\n login: string;\n csrf_token?: string;\n };\n tokenError?: YTError;\n}\n\nlet count = 0;\nexport function updateCluster(\n cluster: string,\n onUpdateEnd: () => Promise<void>,\n): GlobalThunkAction {\n return (dispatch, getState) => {\n const dispatchError = (error: any) => {\n if (error instanceof Error) {\n console.error(error);\n }\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {error: error?.response?.data || error},\n });\n };\n\n dispatch({\n type: UPDATE_CLUSTER.REQUEST,\n });\n\n const rumId = new RumWrapper(cluster, RumMeasureTypes.CLUSTER_PARAMS);\n return rumId\n .fetch<AxiosResponse<ClusterInfoData>>(\n YTApiId.ui_clusterInfo,\n axios.request({\n url: '/api/cluster-info/' + cluster,\n method: 'GET',\n }),\n )\n .then(({data}) => {\n const {token, tokenError, version, versionError} = data;\n\n if (count++) {\n dispatch({\n type: RESET_STORE_BEFORE_CLUSTER_CHANGE,\n data: {\n shouldUsePreserveState: shouldUsePreserveState(getState()),\n },\n });\n }\n\n if (!version || versionError) {\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {errorType: LOAD_ERROR.CONNECTION, error: versionError},\n });\n } else {\n dispatch({\n type: UPDATE_CLUSTER.SUCCESS,\n data: {version},\n });\n\n YT.parameters.version = version;\n YT.cluster = cluster;\n\n if (!token?.csrf_token || tokenError) {\n Cookies.remove(getXsrfCookieName(cluster));\n dispatch({\n type: UPDATE_CLUSTER.FAILURE,\n data: {\n errorType: LOAD_ERROR.AUTHENTICATION,\n error: tokenError || new Error('Failed to get CSRF-token'),\n },\n });\n } else {\n const {login, csrf_token} = token;\n YT.parameters.login = login;\n dispatch({type: GLOBAL_PARTIAL, data: {login}});\n Cookies.set(getXsrfCookieName(cluster), csrf_token);\n return onUpdateEnd()\n .then(() => {\n dispatch({\n type: UPDATE_CLUSTER.FINAL_SUCCESS,\n });\n })\n .catch(dispatchError);\n }\n }\n\n return Promise.resolve();\n })\n .catch(dispatchError);\n };\n}\n"],"mappings":"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"}
|
@@ -72,7 +72,7 @@ function getNodes(_ref) {
|
|
72
72
|
cancellation: updateNodeCanceler.removeAllAndSave
|
73
73
|
}).then(function (data) {
|
74
74
|
var _ref2;
|
75
|
-
var _splitBatchResults = (0, _utils.splitBatchResults)(data),
|
75
|
+
var _splitBatchResults = (0, _utils.splitBatchResults)(data, 'Failed to get nodes'),
|
76
76
|
results = _splitBatchResults.results,
|
77
77
|
error = _splitBatchResults.error;
|
78
78
|
dispatch({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_yt","_interopRequireDefault","require","_omit","_forEach","_compact","_ypath","_settings","_settings2","_nodes","_settings3","_node","_nodes2","_ytApi","_cancelHelper","_rumWrapApi","_cypressAttributes","_utils","obj","__esModule","default","COMPONENTS","NAMESPACES","TEMPLATES","SettingName","changeContentMode","contentMode","type","CHANGE_CONTENT_MODE","data","updateNodeCanceler","CancelHelper","getNodes","_ref","attributes","nodeTypes","dispatch","GET_NODES","REQUEST","preparedAttrs","prepareAttributes","requests","map","command","parameters","_objectSpread","path","concat","USE_CACHE","USE_MAX_SIZE","ytApiV3Id","executeBatch","YTApiId","componentsClusterNodes","cancellation","removeAllAndSave","then","_ref2","_splitBatchResults","splitBatchResults","results","error","SUCCESS","nodes","apply","_toConsumableArray","output","ypath","getValue","code","yt","codes","CANCELLED","FAILURE","updateComponentsNode","host","get","componentsUpdateNodeData","Node","ATTRIBUTES","node","COMPONENTS_NODES_UPDATE_NODE","$value","changeHostFilter","hostFilter","CHANGE_HOST_FILTER","trim","componentsNodesSetNodeTypes","CHANGE_NODE_TYPE","applyPreset","setup","APPLY_SETUP","savePreset","name","getState","state","prevTemplates","getTemplates","templates","_defineProperty","setSetting","removePreset","omit_","handleColumnsChange","selectedColumns","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","SELECTED_COLUMNS","stop","_x","arguments","getComponentsNodesFilterOptions","compact_","useTagsFromAttributes","useRacksFromAttributes","length","GET_NODES_FILTER_OPTIONS","wrapApiPromiseByToaster","list","toasterName","errorTitle","join","skipSuccessToast","tags","Set","racks","forEach_","item","tag","add","rack","filterOptionsTags","sort","filterOptionsRacks"],"sources":["nodes.ts"],"sourcesContent":["// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport omit_ from 'lodash/omit';\nimport forEach_ from 'lodash/forEach';\nimport compact_ from 'lodash/compact';\nimport type {ThunkAction} from 'redux-thunk';\n\nimport ypath from '../../../../common/thor/ypath';\n\nimport {setSetting} from '../../../../store/actions/settings';\nimport {NAMESPACES, SettingName} from '../../../../../shared/constants/settings';\nimport {\n getRequiredAttributes,\n useRacksFromAttributes,\n useTagsFromAttributes,\n} from '../../../../store/selectors/components/nodes/nodes';\nimport {getTemplates} from '../../../../store/selectors/settings';\nimport type {RootState} from '../../../../store/reducers';\nimport {Node} from '../../../../store/reducers/components/nodes/nodes/node';\nimport type {\n NodesAction,\n NodesState,\n} from '../../../../store/reducers/components/nodes/nodes/nodes';\nimport type {NodesSetupState} from '../../../../store/reducers/components/nodes/setup/setup';\nimport {\n APPLY_SETUP,\n CHANGE_CONTENT_MODE,\n CHANGE_HOST_FILTER,\n CHANGE_NODE_TYPE,\n COMPONENTS_NODES_UPDATE_NODE,\n GET_NODES,\n GET_NODES_FILTER_OPTIONS,\n} from '../../../../constants/components/nodes/nodes';\nimport {USE_CACHE, USE_MAX_SIZE} from '../../../../../shared/constants/yt-api';\nimport CancelHelper from '../../../../utils/cancel-helper';\nimport {YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport type {ActionD, FIX_MY_TYPE, PartialDeep} from '../../../../types';\nimport {prepareAttributes} from '../../../../utils/cypress-attributes';\nimport {splitBatchResults, wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {NodeType} from '../../../../../shared/constants/system';\nimport {BatchSubRequest} from '../../../../../shared/yt-types';\n\nconst {COMPONENTS} = NAMESPACES;\nconst {TEMPLATES} = SettingName.COMPONENTS;\n\nexport type NodesThunkAction = ThunkAction<void, RootState, unknown, NodesAction>;\n\nexport function changeContentMode(\n contentMode: NodesState['contentMode'],\n): ActionD<typeof CHANGE_CONTENT_MODE, Pick<NodesState, 'contentMode'>> {\n return {\n type: CHANGE_CONTENT_MODE,\n data: {contentMode},\n };\n}\n\nconst updateNodeCanceler = new CancelHelper();\n\nexport function getNodes({\n attributes,\n nodeTypes,\n}: {\n attributes: ReturnType<typeof getRequiredAttributes>;\n nodeTypes: Array<NodeType>;\n}): NodesThunkAction {\n return (dispatch) => {\n dispatch({type: GET_NODES.REQUEST});\n\n const preparedAttrs = prepareAttributes(attributes);\n const requests: Array<BatchSubRequest> = nodeTypes.map((type) => {\n return {\n command: 'list',\n parameters: {\n path: `//sys/${type}`,\n attributes: preparedAttrs,\n ...USE_CACHE,\n ...USE_MAX_SIZE,\n },\n };\n });\n\n return ytApiV3Id\n .executeBatch(YTApiId.componentsClusterNodes, {\n parameters: {requests},\n cancellation: updateNodeCanceler.removeAllAndSave,\n })\n .then((data) => {\n const {results, error} = splitBatchResults(data);\n dispatch({\n type: GET_NODES.SUCCESS,\n data: {\n nodes: [].concat(\n ...results.map((output) => {\n return ypath.getValue(output) || [];\n }),\n ),\n },\n });\n\n if (error) {\n throw error;\n }\n })\n .catch((error) => {\n if (error.code === yt.codes.CANCELLED) {\n dispatch({type: GET_NODES.CANCELLED});\n return;\n }\n dispatch({\n type: GET_NODES.FAILURE,\n data: {error},\n });\n });\n };\n}\n\nexport function updateComponentsNode(host: string): NodesThunkAction {\n return (dispatch) => {\n return ytApiV3Id\n .get(YTApiId.componentsUpdateNodeData, {\n path: `//sys/cluster_nodes/${host}`,\n attributes: prepareAttributes(Node.ATTRIBUTES),\n })\n .then((node) => {\n dispatch({\n type: COMPONENTS_NODES_UPDATE_NODE,\n data: {node: {...node, $value: host}},\n });\n });\n };\n}\n\nexport function changeHostFilter(\n hostFilter: string,\n): ActionD<typeof CHANGE_HOST_FILTER, Pick<NodesState, 'hostFilter'>> {\n return {\n type: CHANGE_HOST_FILTER,\n data: {hostFilter: hostFilter.trim()},\n };\n}\n\nexport function componentsNodesSetNodeTypes(nodeTypes: Array<NodeType>): NodesThunkAction {\n return (dispatch) => {\n dispatch({\n type: CHANGE_NODE_TYPE,\n data: {nodeTypes},\n });\n };\n}\n\nexport function applyPreset(\n setup: PartialDeep<NodesSetupState>,\n): ActionD<typeof APPLY_SETUP, PartialDeep<NodesSetupState>> {\n return {\n type: APPLY_SETUP,\n data: setup,\n };\n}\n\nexport function savePreset(name: string, data: FIX_MY_TYPE): NodesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const prevTemplates = getTemplates(state) || {};\n const templates = {\n ...prevTemplates,\n [name]: data,\n };\n\n dispatch(setSetting(TEMPLATES, COMPONENTS, templates));\n };\n}\n\nexport function removePreset(name: string): NodesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const templates = omit_(getTemplates(state), name);\n\n dispatch(setSetting(TEMPLATES, COMPONENTS, templates));\n };\n}\n\nexport function handleColumnsChange(selectedColumns: string[]): NodesThunkAction {\n return async (dispatch) => {\n await dispatch(\n setSetting(\n SettingName.COMPONENTS.SELECTED_COLUMNS,\n NAMESPACES.COMPONENTS,\n selectedColumns,\n ),\n );\n };\n}\n\nexport function getComponentsNodesFilterOptions(): NodesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n\n const attributes = compact_([\n !useTagsFromAttributes(state) && 'tags',\n !useRacksFromAttributes(state) && 'rack',\n ]);\n\n if (0 === attributes.length) {\n return;\n }\n\n dispatch({type: GET_NODES_FILTER_OPTIONS.REQUEST});\n\n wrapApiPromiseByToaster(\n ytApiV3Id.list(YTApiId.componentsClusterNodes, {\n path: '//sys/cluster_nodes',\n attributes,\n ...USE_CACHE,\n ...USE_MAX_SIZE,\n }),\n {\n toasterName: 'node filter options',\n errorTitle: `Failed to load node ${attributes.join(',')}`,\n skipSuccessToast: true,\n },\n )\n .then((nodes) => {\n const tags = new Set<string>();\n const racks = new Set<string>();\n forEach_(nodes, (item) => {\n const node = new Node(item);\n forEach_(node.tags, (tag) => {\n if (tag) {\n tags.add(tag);\n }\n });\n if (node.rack) {\n racks.add(node.rack);\n }\n });\n\n dispatch({\n type: GET_NODES_FILTER_OPTIONS.SUCCESS,\n data: {\n filterOptionsTags: [...tags].sort(),\n filterOptionsRacks: [...racks].sort(),\n },\n });\n })\n .catch((error) => {\n dispatch({\n type: GET_NODES_FILTER_OPTIONS.FAILURE,\n data: {error},\n });\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_yt","_interopRequireDefault","require","_omit","_forEach","_compact","_ypath","_settings","_settings2","_nodes","_settings3","_node","_nodes2","_ytApi","_cancelHelper","_rumWrapApi","_cypressAttributes","_utils","obj","__esModule","default","COMPONENTS","NAMESPACES","TEMPLATES","SettingName","changeContentMode","contentMode","type","CHANGE_CONTENT_MODE","data","updateNodeCanceler","CancelHelper","getNodes","_ref","attributes","nodeTypes","dispatch","GET_NODES","REQUEST","preparedAttrs","prepareAttributes","requests","map","command","parameters","_objectSpread","path","concat","USE_CACHE","USE_MAX_SIZE","ytApiV3Id","executeBatch","YTApiId","componentsClusterNodes","cancellation","removeAllAndSave","then","_ref2","_splitBatchResults","splitBatchResults","results","error","SUCCESS","nodes","apply","_toConsumableArray","output","ypath","getValue","code","yt","codes","CANCELLED","FAILURE","updateComponentsNode","host","get","componentsUpdateNodeData","Node","ATTRIBUTES","node","COMPONENTS_NODES_UPDATE_NODE","$value","changeHostFilter","hostFilter","CHANGE_HOST_FILTER","trim","componentsNodesSetNodeTypes","CHANGE_NODE_TYPE","applyPreset","setup","APPLY_SETUP","savePreset","name","getState","state","prevTemplates","getTemplates","templates","_defineProperty","setSetting","removePreset","omit_","handleColumnsChange","selectedColumns","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","SELECTED_COLUMNS","stop","_x","arguments","getComponentsNodesFilterOptions","compact_","useTagsFromAttributes","useRacksFromAttributes","length","GET_NODES_FILTER_OPTIONS","wrapApiPromiseByToaster","list","toasterName","errorTitle","join","skipSuccessToast","tags","Set","racks","forEach_","item","tag","add","rack","filterOptionsTags","sort","filterOptionsRacks"],"sources":["nodes.ts"],"sourcesContent":["// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport omit_ from 'lodash/omit';\nimport forEach_ from 'lodash/forEach';\nimport compact_ from 'lodash/compact';\nimport type {ThunkAction} from 'redux-thunk';\n\nimport ypath from '../../../../common/thor/ypath';\n\nimport {setSetting} from '../../../../store/actions/settings';\nimport {NAMESPACES, SettingName} from '../../../../../shared/constants/settings';\nimport {\n getRequiredAttributes,\n useRacksFromAttributes,\n useTagsFromAttributes,\n} from '../../../../store/selectors/components/nodes/nodes';\nimport {getTemplates} from '../../../../store/selectors/settings';\nimport type {RootState} from '../../../../store/reducers';\nimport {Node} from '../../../../store/reducers/components/nodes/nodes/node';\nimport type {\n NodesAction,\n NodesState,\n} from '../../../../store/reducers/components/nodes/nodes/nodes';\nimport type {NodesSetupState} from '../../../../store/reducers/components/nodes/setup/setup';\nimport {\n APPLY_SETUP,\n CHANGE_CONTENT_MODE,\n CHANGE_HOST_FILTER,\n CHANGE_NODE_TYPE,\n COMPONENTS_NODES_UPDATE_NODE,\n GET_NODES,\n GET_NODES_FILTER_OPTIONS,\n} from '../../../../constants/components/nodes/nodes';\nimport {USE_CACHE, USE_MAX_SIZE} from '../../../../../shared/constants/yt-api';\nimport CancelHelper from '../../../../utils/cancel-helper';\nimport {YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport type {ActionD, FIX_MY_TYPE, PartialDeep} from '../../../../types';\nimport {prepareAttributes} from '../../../../utils/cypress-attributes';\nimport {splitBatchResults, wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {NodeType} from '../../../../../shared/constants/system';\nimport {BatchSubRequest} from '../../../../../shared/yt-types';\n\nconst {COMPONENTS} = NAMESPACES;\nconst {TEMPLATES} = SettingName.COMPONENTS;\n\nexport type NodesThunkAction = ThunkAction<void, RootState, unknown, NodesAction>;\n\nexport function changeContentMode(\n contentMode: NodesState['contentMode'],\n): ActionD<typeof CHANGE_CONTENT_MODE, Pick<NodesState, 'contentMode'>> {\n return {\n type: CHANGE_CONTENT_MODE,\n data: {contentMode},\n };\n}\n\nconst updateNodeCanceler = new CancelHelper();\n\nexport function getNodes({\n attributes,\n nodeTypes,\n}: {\n attributes: ReturnType<typeof getRequiredAttributes>;\n nodeTypes: Array<NodeType>;\n}): NodesThunkAction {\n return (dispatch) => {\n dispatch({type: GET_NODES.REQUEST});\n\n const preparedAttrs = prepareAttributes(attributes);\n const requests: Array<BatchSubRequest> = nodeTypes.map((type) => {\n return {\n command: 'list',\n parameters: {\n path: `//sys/${type}`,\n attributes: preparedAttrs,\n ...USE_CACHE,\n ...USE_MAX_SIZE,\n },\n };\n });\n\n return ytApiV3Id\n .executeBatch(YTApiId.componentsClusterNodes, {\n parameters: {requests},\n cancellation: updateNodeCanceler.removeAllAndSave,\n })\n .then((data) => {\n const {results, error} = splitBatchResults(data, 'Failed to get nodes');\n dispatch({\n type: GET_NODES.SUCCESS,\n data: {\n nodes: [].concat(\n ...results.map((output) => {\n return ypath.getValue(output) || [];\n }),\n ),\n },\n });\n\n if (error) {\n throw error;\n }\n })\n .catch((error) => {\n if (error.code === yt.codes.CANCELLED) {\n dispatch({type: GET_NODES.CANCELLED});\n return;\n }\n dispatch({\n type: GET_NODES.FAILURE,\n data: {error},\n });\n });\n };\n}\n\nexport function updateComponentsNode(host: string): NodesThunkAction {\n return (dispatch) => {\n return ytApiV3Id\n .get(YTApiId.componentsUpdateNodeData, {\n path: `//sys/cluster_nodes/${host}`,\n attributes: prepareAttributes(Node.ATTRIBUTES),\n })\n .then((node) => {\n dispatch({\n type: COMPONENTS_NODES_UPDATE_NODE,\n data: {node: {...node, $value: host}},\n });\n });\n };\n}\n\nexport function changeHostFilter(\n hostFilter: string,\n): ActionD<typeof CHANGE_HOST_FILTER, Pick<NodesState, 'hostFilter'>> {\n return {\n type: CHANGE_HOST_FILTER,\n data: {hostFilter: hostFilter.trim()},\n };\n}\n\nexport function componentsNodesSetNodeTypes(nodeTypes: Array<NodeType>): NodesThunkAction {\n return (dispatch) => {\n dispatch({\n type: CHANGE_NODE_TYPE,\n data: {nodeTypes},\n });\n };\n}\n\nexport function applyPreset(\n setup: PartialDeep<NodesSetupState>,\n): ActionD<typeof APPLY_SETUP, PartialDeep<NodesSetupState>> {\n return {\n type: APPLY_SETUP,\n data: setup,\n };\n}\n\nexport function savePreset(name: string, data: FIX_MY_TYPE): NodesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const prevTemplates = getTemplates(state) || {};\n const templates = {\n ...prevTemplates,\n [name]: data,\n };\n\n dispatch(setSetting(TEMPLATES, COMPONENTS, templates));\n };\n}\n\nexport function removePreset(name: string): NodesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const templates = omit_(getTemplates(state), name);\n\n dispatch(setSetting(TEMPLATES, COMPONENTS, templates));\n };\n}\n\nexport function handleColumnsChange(selectedColumns: string[]): NodesThunkAction {\n return async (dispatch) => {\n await dispatch(\n setSetting(\n SettingName.COMPONENTS.SELECTED_COLUMNS,\n NAMESPACES.COMPONENTS,\n selectedColumns,\n ),\n );\n };\n}\n\nexport function getComponentsNodesFilterOptions(): NodesThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n\n const attributes = compact_([\n !useTagsFromAttributes(state) && 'tags',\n !useRacksFromAttributes(state) && 'rack',\n ]);\n\n if (0 === attributes.length) {\n return;\n }\n\n dispatch({type: GET_NODES_FILTER_OPTIONS.REQUEST});\n\n wrapApiPromiseByToaster(\n ytApiV3Id.list(YTApiId.componentsClusterNodes, {\n path: '//sys/cluster_nodes',\n attributes,\n ...USE_CACHE,\n ...USE_MAX_SIZE,\n }),\n {\n toasterName: 'node filter options',\n errorTitle: `Failed to load node ${attributes.join(',')}`,\n skipSuccessToast: true,\n },\n )\n .then((nodes) => {\n const tags = new Set<string>();\n const racks = new Set<string>();\n forEach_(nodes, (item) => {\n const node = new Node(item);\n forEach_(node.tags, (tag) => {\n if (tag) {\n tags.add(tag);\n }\n });\n if (node.rack) {\n racks.add(node.rack);\n }\n });\n\n dispatch({\n type: GET_NODES_FILTER_OPTIONS.SUCCESS,\n data: {\n filterOptionsTags: [...tags].sort(),\n filterOptionsRacks: [...racks].sort(),\n },\n });\n })\n .catch((error) => {\n dispatch({\n type: GET_NODES_FILTER_OPTIONS.FAILURE,\n data: {error},\n });\n });\n };\n}\n"],"mappings":"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"}
|
@@ -8,6 +8,7 @@ export interface ExecuteBatchOptions {
|
|
8
8
|
saveCancelSourceCb?: (source: CancelTokenSource) => void;
|
9
9
|
disableSkip?: boolean;
|
10
10
|
allowRetries?: boolean;
|
11
|
+
errorTitle: string;
|
11
12
|
}
|
12
13
|
/**
|
13
14
|
* The function splits requests-parameter to smaller sub-arrays and handles them sequentially.
|
@@ -16,7 +17,7 @@ export interface ExecuteBatchOptions {
|
|
16
17
|
* @param requests
|
17
18
|
* @param options
|
18
19
|
*/
|
19
|
-
export declare function executeBatchWithRetries<T>(id: YTApiId, requests: Array<BatchSubRequest>, options
|
20
|
+
export declare function executeBatchWithRetries<T>(id: YTApiId, requests: Array<BatchSubRequest>, options: ExecuteBatchOptions): Promise<Array<BatchResultsItem<T>>>;
|
20
21
|
type ExecuteBatchThunkAction = ThunkAction<any, RootState, any, ExecuteBatchAction>;
|
21
22
|
export declare function hideExecuteBatchRetryModal(id: string): ExecuteBatchThunkAction;
|
22
23
|
export declare function abortExecuteBatch(id: string): ExecuteBatchThunkAction;
|
@@ -97,7 +97,7 @@ function _executeBatchWithRetries() {
|
|
97
97
|
inner_errors: innerErrors
|
98
98
|
};
|
99
99
|
_context.next = 38;
|
100
|
-
return handleFailedRequests(id, failedRequests, _error2);
|
100
|
+
return handleFailedRequests(id, failedRequests, _error2, options);
|
101
101
|
case 38:
|
102
102
|
_tmp = _context.sent;
|
103
103
|
return _context.abrupt("return", results.concat(_tmp));
|
@@ -136,7 +136,7 @@ function _handleBatchSlice() {
|
|
136
136
|
});
|
137
137
|
case 3:
|
138
138
|
results = _context2.sent;
|
139
|
-
error = (0, _utils.getBatchError)(results);
|
139
|
+
error = (0, _utils.getBatchError)(results, options.errorTitle);
|
140
140
|
if (!error) {
|
141
141
|
_context2.next = 10;
|
142
142
|
break;
|
@@ -169,7 +169,7 @@ function _handleBatchSlice() {
|
|
169
169
|
type: BATCH_ERROR_TYPE,
|
170
170
|
error: (0, _utils.getBatchError)([{
|
171
171
|
error: _context2.t0
|
172
|
-
}]),
|
172
|
+
}], options.errorTitle),
|
173
173
|
failed_requests: requests,
|
174
174
|
successful_results: []
|
175
175
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_utils","require","_executeBatch","_rumCounter","_executeBatch2","_rumWrapApi","_interopRequireDefault","obj","__esModule","default","MAX_REQUESTS_COUNT_PER_BATCH","executeBatchWithRetries","_x","_x2","_x3","_executeBatchWithRetries","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","id","requests","options","results","failedRequests","innerErrors","i","from","to","current","tmp","e","error","_error","failed_requests","successful_results","_error2","_tmp","wrap","_callee$","_context","prev","next","length","slice","handleBatchSlice","sent","_concat","t0","allowRetries","isBatchError","console","concat","inner_errors","rumLogError","message","Error","handleFailedRequests","abrupt","stop","BATCH_ERROR_TYPE","type","_x4","_x5","_x6","_handleBatchSlice","_callee2","errorIndices","_callee2$","_context2","ytApiV3Id","executeBatch","parameters","cancellation","saveCancelSourceCb","getBatchError","Set","getBatchErrorIndices","_filter","_item","index","has","_x7","_handleFailedRequests","_callee3","_args3","_callee3$","_context3","undefined","Promise","res","rej","window","store","dispatch","showExecuteBatchRetryModal","resolveCb","rejectCb","batchCounter","makeId","ytApiId","params","EXECUTE_BATCH_RETRY_SHOW_MODAL","data","_objectSpread","hideExecuteBatchRetryModal","EXECUTE_BATCH_RETRY_HIDE_MODAL","abortExecuteBatch","getState","_getExecuteBatchState","getExecuteBatchState","skipExecuteBatch","retryExecuteBatch","item","then"],"sources":["execute-batch.ts"],"sourcesContent":["import _ from 'lodash';\n\nimport {getBatchError, getBatchErrorIndices} from '../../utils/utils';\nimport {YTError} from '../../types';\nimport {ExecuteBatchAction, HandleExecuteBatchRetryParams} from '../reducers/execute-batch';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../reducers';\nimport {\n EXECUTE_BATCH_RETRY_HIDE_MODAL,\n EXECUTE_BATCH_RETRY_SHOW_MODAL,\n} from '../../constants/execute-batch';\nimport {rumLogError} from '../../rum/rum-counter';\nimport {getExecuteBatchState} from '../selectors/execute-batch';\nimport {CancelTokenSource} from 'axios';\nimport {YTApiId, ytApiV3Id} from '../../rum/rum-wrap-api';\nimport {BatchResultsItem, BatchSubRequest} from '../../../shared/yt-types';\n\nconst MAX_REQUESTS_COUNT_PER_BATCH = 100;\n\nexport interface ExecuteBatchOptions {\n saveCancelSourceCb?: (source: CancelTokenSource) => void;\n disableSkip?: boolean;\n allowRetries?: boolean;\n}\n\n/**\n * The function splits requests-parameter to smaller sub-arrays and handles them sequentially.\n * Also by default if !Boolean(options?.abortOnFirstError) it displays dialog with\n * ability to retry (or skip) only failed requests.\n * @param requests\n * @param options\n */\nexport async function executeBatchWithRetries<T>(\n id: YTApiId,\n requests: Array<BatchSubRequest>,\n options?: ExecuteBatchOptions,\n): Promise<Array<BatchResultsItem<T>>> {\n let results: Array<BatchResultsItem<T>> = [];\n let failedRequests: Array<BatchSubRequest> = [];\n let innerErrors: Array<YTError> = [];\n for (let i = 0; i < requests.length; i += MAX_REQUESTS_COUNT_PER_BATCH) {\n const from = i;\n const to = from + MAX_REQUESTS_COUNT_PER_BATCH;\n\n const current = requests.slice(from, to);\n\n try {\n const tmp = await handleBatchSlice<T>(id, current, options);\n results = _.concat(results, tmp);\n } catch (err) {\n const e = err as any;\n if (!options?.allowRetries) {\n const error = isBatchError(e) ? e.error : e;\n console.error(error);\n throw error;\n }\n\n if (isBatchError<T>(e)) {\n const {error, failed_requests, successful_results} = e;\n results = results.concat(successful_results || []);\n innerErrors = innerErrors.concat(error?.inner_errors || []);\n failedRequests = failedRequests.concat(failed_requests || []);\n } else {\n rumLogError(\n {\n message: 'execute-batch with retries failed',\n },\n e,\n );\n throw new Error('Unexpected error during executeBatchWithRetries');\n }\n }\n }\n\n if (failedRequests.length) {\n const error = {\n message: 'Failed sub-requests:',\n inner_errors: innerErrors,\n };\n\n const tmp = await handleFailedRequests<T>(id, failedRequests, error);\n return results.concat(tmp);\n }\n\n return results;\n}\n\nconst BATCH_ERROR_TYPE = {type: 'BATCH_ERROR_TYPE'};\n\ninterface BatchError<T> {\n type: typeof BATCH_ERROR_TYPE;\n error: YTError;\n failed_requests: Array<BatchSubRequest>;\n successful_results: Array<BatchResultsItem<T>>;\n}\n\nfunction isBatchError<T>(error: any): error is BatchError<T> {\n return error?.type === BATCH_ERROR_TYPE;\n}\n\nasync function handleBatchSlice<T>(\n id: YTApiId,\n requests: Array<BatchSubRequest>,\n options?: ExecuteBatchOptions,\n): Promise<Array<BatchResultsItem<T>>> {\n try {\n const results: Array<BatchResultsItem<T>> = await ytApiV3Id.executeBatch(id, {\n parameters: {requests},\n cancellation: options?.saveCancelSourceCb,\n });\n const error = getBatchError(results);\n if (error) {\n const errorIndices = new Set(getBatchErrorIndices(results));\n const successful_results = _.filter(results, (_item, index) => {\n return !errorIndices.has(index);\n });\n const failed_requests = _.filter(requests, (_item, index) => {\n return errorIndices.has(index);\n });\n\n throw {\n type: BATCH_ERROR_TYPE,\n error,\n failed_requests,\n successful_results,\n };\n }\n return results;\n } catch (e) {\n if (isBatchError<T>(e)) {\n throw e;\n } else {\n throw {\n type: BATCH_ERROR_TYPE,\n error: getBatchError([{error: e as any}]),\n failed_requests: requests,\n successful_results: [],\n };\n }\n }\n}\n\nasync function handleFailedRequests<T>(\n id: YTApiId,\n requests: Array<BatchSubRequest> = [],\n error: YTError,\n options?: ExecuteBatchOptions,\n): Promise<Array<BatchResultsItem<T>>> {\n return new Promise((res, rej) => {\n (window as any).store.dispatch(\n showExecuteBatchRetryModal(id, {\n failed_requests: requests,\n error,\n resolveCb: res,\n rejectCb: rej,\n options,\n }),\n );\n });\n}\n\ntype ExecuteBatchThunkAction = ThunkAction<any, RootState, any, ExecuteBatchAction>;\n\nlet batchCounter = -1;\nfunction makeId() {\n return `batch_id_${++batchCounter}`;\n}\n\nfunction showExecuteBatchRetryModal(\n ytApiId: YTApiId,\n params: HandleExecuteBatchRetryParams,\n): ExecuteBatchThunkAction {\n return (dispatch) => {\n dispatch({\n type: EXECUTE_BATCH_RETRY_SHOW_MODAL,\n data: {...params, id: makeId(), ytApiId},\n });\n };\n}\n\nexport function hideExecuteBatchRetryModal(id: string): ExecuteBatchThunkAction {\n return (dispatch) => {\n dispatch({type: EXECUTE_BATCH_RETRY_HIDE_MODAL, data: {id}});\n };\n}\n\nexport function abortExecuteBatch(id: string): ExecuteBatchThunkAction {\n return (dispatch, getState) => {\n const {rejectCb, error} = getExecuteBatchState(getState())[id];\n rejectCb!(error);\n dispatch(hideExecuteBatchRetryModal(id));\n };\n}\n\nexport function skipExecuteBatch(id: string): ExecuteBatchThunkAction {\n return (dispatch, getState) => {\n const {resolveCb} = getExecuteBatchState(getState())[id];\n resolveCb!([]);\n dispatch(hideExecuteBatchRetryModal(id));\n };\n}\n\nexport function retryExecuteBatch(id: string): ExecuteBatchThunkAction {\n return (dispatch, getState) => {\n const item = getExecuteBatchState(getState())[id];\n if (!item) {\n rumLogError({\n message: `executeBatch with retries, store does not contain any elements with id=${id}`,\n });\n return;\n }\n\n dispatch(hideExecuteBatchRetryModal(id));\n const {failed_requests, options, resolveCb, rejectCb, ytApiId} = item;\n\n return executeBatchWithRetries(ytApiId, failed_requests, options)\n .then((res) => {\n resolveCb(res);\n })\n .catch((e) => {\n rejectCb(e);\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_utils","require","_executeBatch","_rumCounter","_executeBatch2","_rumWrapApi","_interopRequireDefault","obj","__esModule","default","MAX_REQUESTS_COUNT_PER_BATCH","executeBatchWithRetries","_x","_x2","_x3","_executeBatchWithRetries","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","id","requests","options","results","failedRequests","innerErrors","i","from","to","current","tmp","e","error","_error","failed_requests","successful_results","_error2","_tmp","wrap","_callee$","_context","prev","next","length","slice","handleBatchSlice","sent","_concat","t0","allowRetries","isBatchError","console","concat","inner_errors","rumLogError","message","Error","handleFailedRequests","abrupt","stop","BATCH_ERROR_TYPE","type","_x4","_x5","_x6","_handleBatchSlice","_callee2","errorIndices","_callee2$","_context2","ytApiV3Id","executeBatch","parameters","cancellation","saveCancelSourceCb","getBatchError","errorTitle","Set","getBatchErrorIndices","_filter","_item","index","has","_x7","_handleFailedRequests","_callee3","_args3","_callee3$","_context3","undefined","Promise","res","rej","window","store","dispatch","showExecuteBatchRetryModal","resolveCb","rejectCb","batchCounter","makeId","ytApiId","params","EXECUTE_BATCH_RETRY_SHOW_MODAL","data","_objectSpread","hideExecuteBatchRetryModal","EXECUTE_BATCH_RETRY_HIDE_MODAL","abortExecuteBatch","getState","_getExecuteBatchState","getExecuteBatchState","skipExecuteBatch","retryExecuteBatch","item","then"],"sources":["execute-batch.ts"],"sourcesContent":["import _ from 'lodash';\n\nimport {getBatchError, getBatchErrorIndices} from '../../utils/utils';\nimport {YTError} from '../../types';\nimport {ExecuteBatchAction, HandleExecuteBatchRetryParams} from '../reducers/execute-batch';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../reducers';\nimport {\n EXECUTE_BATCH_RETRY_HIDE_MODAL,\n EXECUTE_BATCH_RETRY_SHOW_MODAL,\n} from '../../constants/execute-batch';\nimport {rumLogError} from '../../rum/rum-counter';\nimport {getExecuteBatchState} from '../selectors/execute-batch';\nimport {CancelTokenSource} from 'axios';\nimport {YTApiId, ytApiV3Id} from '../../rum/rum-wrap-api';\nimport {BatchResultsItem, BatchSubRequest} from '../../../shared/yt-types';\n\nconst MAX_REQUESTS_COUNT_PER_BATCH = 100;\n\nexport interface ExecuteBatchOptions {\n saveCancelSourceCb?: (source: CancelTokenSource) => void;\n disableSkip?: boolean;\n allowRetries?: boolean;\n errorTitle: string;\n}\n\n/**\n * The function splits requests-parameter to smaller sub-arrays and handles them sequentially.\n * Also by default if !Boolean(options?.abortOnFirstError) it displays dialog with\n * ability to retry (or skip) only failed requests.\n * @param requests\n * @param options\n */\nexport async function executeBatchWithRetries<T>(\n id: YTApiId,\n requests: Array<BatchSubRequest>,\n options: ExecuteBatchOptions,\n): Promise<Array<BatchResultsItem<T>>> {\n let results: Array<BatchResultsItem<T>> = [];\n let failedRequests: Array<BatchSubRequest> = [];\n let innerErrors: Array<YTError> = [];\n for (let i = 0; i < requests.length; i += MAX_REQUESTS_COUNT_PER_BATCH) {\n const from = i;\n const to = from + MAX_REQUESTS_COUNT_PER_BATCH;\n\n const current = requests.slice(from, to);\n\n try {\n const tmp = await handleBatchSlice<T>(id, current, options);\n results = _.concat(results, tmp);\n } catch (err) {\n const e = err as any;\n if (!options?.allowRetries) {\n const error = isBatchError(e) ? e.error : e;\n console.error(error);\n throw error;\n }\n\n if (isBatchError<T>(e)) {\n const {error, failed_requests, successful_results} = e;\n results = results.concat(successful_results || []);\n innerErrors = innerErrors.concat(error?.inner_errors || []);\n failedRequests = failedRequests.concat(failed_requests || []);\n } else {\n rumLogError(\n {\n message: 'execute-batch with retries failed',\n },\n e,\n );\n throw new Error('Unexpected error during executeBatchWithRetries');\n }\n }\n }\n\n if (failedRequests.length) {\n const error = {\n message: 'Failed sub-requests:',\n inner_errors: innerErrors,\n };\n\n const tmp = await handleFailedRequests<T>(id, failedRequests, error, options);\n return results.concat(tmp);\n }\n\n return results;\n}\n\nconst BATCH_ERROR_TYPE = {type: 'BATCH_ERROR_TYPE'};\n\ninterface BatchError<T> {\n type: typeof BATCH_ERROR_TYPE;\n error: YTError;\n failed_requests: Array<BatchSubRequest>;\n successful_results: Array<BatchResultsItem<T>>;\n}\n\nfunction isBatchError<T>(error: any): error is BatchError<T> {\n return error?.type === BATCH_ERROR_TYPE;\n}\n\nasync function handleBatchSlice<T>(\n id: YTApiId,\n requests: Array<BatchSubRequest>,\n options: ExecuteBatchOptions,\n): Promise<Array<BatchResultsItem<T>>> {\n try {\n const results: Array<BatchResultsItem<T>> = await ytApiV3Id.executeBatch(id, {\n parameters: {requests},\n cancellation: options?.saveCancelSourceCb,\n });\n const error = getBatchError(results, options.errorTitle);\n if (error) {\n const errorIndices = new Set(getBatchErrorIndices(results));\n const successful_results = _.filter(results, (_item, index) => {\n return !errorIndices.has(index);\n });\n const failed_requests = _.filter(requests, (_item, index) => {\n return errorIndices.has(index);\n });\n\n throw {\n type: BATCH_ERROR_TYPE,\n error,\n failed_requests,\n successful_results,\n };\n }\n return results;\n } catch (e) {\n if (isBatchError<T>(e)) {\n throw e;\n } else {\n throw {\n type: BATCH_ERROR_TYPE,\n error: getBatchError([{error: e as any}], options.errorTitle),\n failed_requests: requests,\n successful_results: [],\n };\n }\n }\n}\n\nasync function handleFailedRequests<T>(\n id: YTApiId,\n requests: Array<BatchSubRequest> = [],\n error: YTError,\n options: ExecuteBatchOptions,\n): Promise<Array<BatchResultsItem<T>>> {\n return new Promise((res, rej) => {\n (window as any).store.dispatch(\n showExecuteBatchRetryModal(id, {\n failed_requests: requests,\n error,\n resolveCb: res,\n rejectCb: rej,\n options,\n }),\n );\n });\n}\n\ntype ExecuteBatchThunkAction = ThunkAction<any, RootState, any, ExecuteBatchAction>;\n\nlet batchCounter = -1;\nfunction makeId() {\n return `batch_id_${++batchCounter}`;\n}\n\nfunction showExecuteBatchRetryModal(\n ytApiId: YTApiId,\n params: HandleExecuteBatchRetryParams,\n): ExecuteBatchThunkAction {\n return (dispatch) => {\n dispatch({\n type: EXECUTE_BATCH_RETRY_SHOW_MODAL,\n data: {...params, id: makeId(), ytApiId},\n });\n };\n}\n\nexport function hideExecuteBatchRetryModal(id: string): ExecuteBatchThunkAction {\n return (dispatch) => {\n dispatch({type: EXECUTE_BATCH_RETRY_HIDE_MODAL, data: {id}});\n };\n}\n\nexport function abortExecuteBatch(id: string): ExecuteBatchThunkAction {\n return (dispatch, getState) => {\n const {rejectCb, error} = getExecuteBatchState(getState())[id];\n rejectCb!(error);\n dispatch(hideExecuteBatchRetryModal(id));\n };\n}\n\nexport function skipExecuteBatch(id: string): ExecuteBatchThunkAction {\n return (dispatch, getState) => {\n const {resolveCb} = getExecuteBatchState(getState())[id];\n resolveCb!([]);\n dispatch(hideExecuteBatchRetryModal(id));\n };\n}\n\nexport function retryExecuteBatch(id: string): ExecuteBatchThunkAction {\n return (dispatch, getState) => {\n const item = getExecuteBatchState(getState())[id];\n if (!item) {\n rumLogError({\n message: `executeBatch with retries, store does not contain any elements with id=${id}`,\n });\n return;\n }\n\n dispatch(hideExecuteBatchRetryModal(id));\n const {failed_requests, options, resolveCb, rejectCb, ytApiId} = item;\n\n return executeBatchWithRetries(ytApiId, failed_requests, options)\n .then((res) => {\n resolveCb(res);\n })\n .catch((e) => {\n rejectCb(e);\n });\n };\n}\n"],"mappings":"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"}
|
@@ -146,7 +146,7 @@ function updateResourceUsage() {
|
|
146
146
|
return updatedNodeData(nodeData, dataMap[nodeData.$value]);
|
147
147
|
})
|
148
148
|
});
|
149
|
-
var error = (0, _utils.getBatchError)(errorResults);
|
149
|
+
var error = (0, _utils.getBatchError)(errorResults, 'Failed to get resource usage');
|
150
150
|
if (error) {
|
151
151
|
throw error;
|
152
152
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_yt","_interopRequireDefault","require","_uikit","_ypath","_navigation","_navigation2","_mapNode","_global","_navigation3","_tables","_rumWrapApi","_utils","_rumMeasureTypes","_hammer","_constants","_support","obj","__esModule","default","getList","path","transaction","cluster","allowEffectiveExpiration","id","RumWrapper","RumMeasureTypes","NAVIGATION_CONTENT_MAP_NODE","fetch","YTApiId","navigationListNodes","ytApiV3Id","list","prepareRequest","attributes","concat","_toConsumableArray","saveRequestCancellation","fetchNodes","dispatch","getState","state","getPath","getTransaction","getCluster","isSupportedEffectiveExpiration","type","FETCH_NODES","REQUEST","then","ypath","getValue","data","SUCCESS","applyCustomSort","shouldApplyCustomSort","APPLY_CUSTOM_SORT","changeColumnSortOrder","tableId","NAVIGATION_MAP_NODE_TABLE_ID","columnName","asc","error","code","yt","codes","CANCELLED","FAILURE","message","GENERIC_ERROR_MESSAGE","details","updateResourceUsage","BATCH_LIMIT","updatedNodeData","nodeValue","newData","$value","$attributes","_objectSpread","recursive_resource_usage","nodes","getFilteredNodes","_filter","node","isRootNode","length","UPDATE_RESOURCE_USAGE","nodesChunks","_chunk","batchedRequests","_map","nodesChunk","requests","command","parameters","timeout","executeBatch","navigationResourceUsage","Promise","all","resultChunks","dataMap","errorResults","_forEach","index","resultChunkIndex","Math","floor","resultChunk","item","push","output","getNodesData","nodeData","getBatchError","toast","Toaster","add","name","title","content","hammer","format","NO_VALUE","actions","label","onClick","showErrorPopup","setFilter","filter","SET_TEXT_FILTER","setContentMode","contentMode","SET_CONTENT_MODE","setMediumType","mediumType","SET_MEDIUM_TYPE","setSelectedItem","shiftKey","selected","getSelected","lastSelected","getLastSelected","getSortedNodes","lastIndex","_findIndex","nameIndex","from","min","to","max","i","SET_SELECTED_ITEM","undefined","selectAll","isAllSelected","allNodes","_reduce","res","SELECT_ALL"],"sources":["map-node.js"],"sourcesContent":["import _ from 'lodash';\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport ypath from '../../../../common/thor/ypath';\nimport {prepareRequest, saveRequestCancellation} from '../../../../utils/navigation';\nimport {\n APPLY_CUSTOM_SORT,\n FETCH_NODES,\n NAVIGATION_MAP_NODE_TABLE_ID,\n SELECT_ALL,\n SET_CONTENT_MODE,\n SET_MEDIUM_TYPE,\n SET_SELECTED_ITEM,\n SET_TEXT_FILTER,\n UPDATE_RESOURCE_USAGE,\n} from '../../../../constants/navigation';\nimport {\n getFilteredNodes,\n getLastSelected,\n getNodesData,\n getSelected,\n getSortedNodes,\n isRootNode,\n shouldApplyCustomSort,\n} from '../../../../store/selectors/navigation/content/map-node';\nimport {getCluster} from '../../../../store/selectors/global';\nimport {getPath, getTransaction} from '../../../../store/selectors/navigation';\nimport {changeColumnSortOrder} from '../../../../store/actions/tables';\nimport {RumWrapper, YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport {getBatchError, showErrorPopup} from '../../../../utils/utils';\nimport {RumMeasureTypes} from '../../../../rum/rum-measure-types';\nimport hammer from '../../../../common/hammer';\nimport {GENERIC_ERROR_MESSAGE} from '../../../../constants';\nimport {isSupportedEffectiveExpiration} from '../../../../store/selectors/thor/support';\n\nfunction getList(path, transaction, cluster, allowEffectiveExpiration) {\n const id = new RumWrapper(cluster, RumMeasureTypes.NAVIGATION_CONTENT_MAP_NODE);\n return id.fetch(\n YTApiId.navigationListNodes,\n ytApiV3Id.list(\n YTApiId.navigationListNodes,\n prepareRequest({\n attributes: [\n 'type',\n 'dynamic',\n 'row_count', // Deprecated\n 'unmerged_row_count', // Deprecated\n 'chunk_row_count',\n 'modification_time',\n 'creation_time',\n 'resource_usage',\n 'data_weight',\n 'account',\n 'target_path',\n 'broken',\n 'lock_count',\n 'tablet_state',\n '_restore_path',\n 'expiration_time',\n 'expiration_timeout',\n ...(allowEffectiveExpiration ? ['effective_expiration'] : []),\n ],\n path,\n transaction,\n }),\n saveRequestCancellation,\n ),\n );\n}\n\nexport function fetchNodes() {\n return (dispatch, getState) => {\n const state = getState();\n const path = getPath(state);\n const transaction = getTransaction(state);\n const cluster = getCluster(state);\n\n const allowEffectiveExpiration = isSupportedEffectiveExpiration(state);\n\n dispatch({type: FETCH_NODES.REQUEST});\n return getList(path, transaction, cluster, allowEffectiveExpiration)\n .then(ypath.getValue)\n .then((data) => {\n dispatch({\n type: FETCH_NODES.SUCCESS,\n data,\n });\n\n const applyCustomSort = shouldApplyCustomSort(getState());\n dispatch({\n type: APPLY_CUSTOM_SORT,\n data: applyCustomSort ? 'date' : '',\n });\n if (applyCustomSort) {\n dispatch(\n changeColumnSortOrder({\n tableId: NAVIGATION_MAP_NODE_TABLE_ID,\n columnName: 'name',\n asc: false,\n }),\n );\n }\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: FETCH_NODES.FAILURE,\n data: {\n message: 'Could not load list. ' + GENERIC_ERROR_MESSAGE,\n details: error,\n },\n });\n } else {\n dispatch({type: FETCH_NODES.CANCELLED});\n }\n });\n };\n}\n\nexport function updateResourceUsage() {\n const BATCH_LIMIT = 200;\n\n function updatedNodeData(nodeValue, newData) {\n return newData\n ? {\n $value: nodeValue.$value,\n $attributes: {\n ...nodeValue.$attributes,\n recursive_resource_usage: newData,\n },\n }\n : nodeValue;\n }\n\n return (dispatch, getState) => {\n const state = getState();\n\n let nodes = getFilteredNodes(state);\n nodes = _.filter(nodes, (node) => !node.$attributes.recursive_resource_usage);\n\n if (isRootNode(state) || nodes.length === 0) {\n return;\n }\n\n dispatch({type: UPDATE_RESOURCE_USAGE.REQUEST});\n\n const nodesChunks = _.chunk(nodes, BATCH_LIMIT);\n const batchedRequests = _.map(nodesChunks, (nodesChunk) => {\n const requests = _.map(nodesChunk, (node) => {\n return {\n command: 'get',\n parameters: {\n path: node.path + '&/@recursive_resource_usage',\n timeout: 60 * 1000,\n },\n };\n });\n\n return ytApiV3Id.executeBatch(YTApiId.navigationResourceUsage, {requests});\n });\n\n Promise.all(batchedRequests)\n .then((resultChunks) => {\n const dataMap = {};\n\n const errorResults = [];\n\n _.forEach(nodes, (node, index) => {\n const resultChunkIndex = Math.floor(index / BATCH_LIMIT);\n const resultChunk = resultChunks[resultChunkIndex];\n const item = resultChunk[index % BATCH_LIMIT];\n\n if (item.error) {\n errorResults.push(item);\n } else if (item.output) {\n dataMap[node.$value] = item.output;\n }\n });\n\n dispatch({\n type: UPDATE_RESOURCE_USAGE.SUCCESS,\n data: _.map(getNodesData(state), (nodeData) =>\n updatedNodeData(nodeData, dataMap[nodeData.$value]),\n ),\n });\n\n const error = getBatchError(errorResults);\n if (error) {\n throw error;\n }\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: UPDATE_RESOURCE_USAGE.FAILURE,\n data: {\n message: 'Failed to load resources. ' + GENERIC_ERROR_MESSAGE,\n details: error,\n },\n });\n const toast = new Toaster();\n toast.add({\n type: 'error',\n name: 'map_node_update_resources',\n timeout: 500000,\n title: 'Resource loading error',\n content: error ? error.message : hammer.format.NO_VALUE,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n } else {\n dispatch({\n type: UPDATE_RESOURCE_USAGE.CANCELLED,\n });\n }\n });\n };\n}\n\nexport function setFilter(filter) {\n return (dispatch, getState) => {\n const path = getPath(getState());\n\n dispatch({\n type: SET_TEXT_FILTER,\n data: {filter, path},\n });\n };\n}\n\nexport function setContentMode(contentMode) {\n return {\n type: SET_CONTENT_MODE,\n data: contentMode,\n };\n}\n\nexport function setMediumType(mediumType) {\n return {\n type: SET_MEDIUM_TYPE,\n data: mediumType,\n };\n}\n\nexport function setSelectedItem(name, shiftKey) {\n return (dispatch, getState) => {\n const state = getState();\n const selected = {...getSelected(state)};\n if (selected[name] && !shiftKey) {\n delete selected[name];\n } else {\n selected[name] = true;\n }\n\n const lastSelected = getLastSelected(state);\n if (lastSelected && shiftKey) {\n const nodes = getSortedNodes(state);\n const lastIndex = _.findIndex(nodes, (item) => lastSelected === item.name);\n if (-1 !== lastIndex) {\n const nameIndex = _.findIndex(nodes, (item) => item.name === name);\n if (-1 !== nameIndex && lastIndex !== nameIndex) {\n const from = Math.min(lastIndex, nameIndex);\n const to = Math.max(lastIndex, nameIndex);\n for (let i = from; i <= to; ++i) {\n const item = nodes[i];\n selected[item.name] = true;\n }\n }\n }\n }\n\n dispatch({\n type: SET_SELECTED_ITEM,\n data: {selected, lastSelected: selected[name] ? name : undefined},\n });\n };\n}\n\nexport function selectAll(isAllSelected) {\n return (dispatch, getState) => {\n let selected = {};\n\n if (!isAllSelected) {\n const allNodes = getFilteredNodes(getState());\n\n selected = _.reduce(\n allNodes,\n (res, node) => {\n res[ypath.getValue(node)] = true;\n return res;\n },\n {},\n );\n }\n\n dispatch({\n type: SELECT_ALL,\n data: {selected},\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_yt","_interopRequireDefault","require","_uikit","_ypath","_navigation","_navigation2","_mapNode","_global","_navigation3","_tables","_rumWrapApi","_utils","_rumMeasureTypes","_hammer","_constants","_support","obj","__esModule","default","getList","path","transaction","cluster","allowEffectiveExpiration","id","RumWrapper","RumMeasureTypes","NAVIGATION_CONTENT_MAP_NODE","fetch","YTApiId","navigationListNodes","ytApiV3Id","list","prepareRequest","attributes","concat","_toConsumableArray","saveRequestCancellation","fetchNodes","dispatch","getState","state","getPath","getTransaction","getCluster","isSupportedEffectiveExpiration","type","FETCH_NODES","REQUEST","then","ypath","getValue","data","SUCCESS","applyCustomSort","shouldApplyCustomSort","APPLY_CUSTOM_SORT","changeColumnSortOrder","tableId","NAVIGATION_MAP_NODE_TABLE_ID","columnName","asc","error","code","yt","codes","CANCELLED","FAILURE","message","GENERIC_ERROR_MESSAGE","details","updateResourceUsage","BATCH_LIMIT","updatedNodeData","nodeValue","newData","$value","$attributes","_objectSpread","recursive_resource_usage","nodes","getFilteredNodes","_filter","node","isRootNode","length","UPDATE_RESOURCE_USAGE","nodesChunks","_chunk","batchedRequests","_map","nodesChunk","requests","command","parameters","timeout","executeBatch","navigationResourceUsage","Promise","all","resultChunks","dataMap","errorResults","_forEach","index","resultChunkIndex","Math","floor","resultChunk","item","push","output","getNodesData","nodeData","getBatchError","toast","Toaster","add","name","title","content","hammer","format","NO_VALUE","actions","label","onClick","showErrorPopup","setFilter","filter","SET_TEXT_FILTER","setContentMode","contentMode","SET_CONTENT_MODE","setMediumType","mediumType","SET_MEDIUM_TYPE","setSelectedItem","shiftKey","selected","getSelected","lastSelected","getLastSelected","getSortedNodes","lastIndex","_findIndex","nameIndex","from","min","to","max","i","SET_SELECTED_ITEM","undefined","selectAll","isAllSelected","allNodes","_reduce","res","SELECT_ALL"],"sources":["map-node.js"],"sourcesContent":["import _ from 'lodash';\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport ypath from '../../../../common/thor/ypath';\nimport {prepareRequest, saveRequestCancellation} from '../../../../utils/navigation';\nimport {\n APPLY_CUSTOM_SORT,\n FETCH_NODES,\n NAVIGATION_MAP_NODE_TABLE_ID,\n SELECT_ALL,\n SET_CONTENT_MODE,\n SET_MEDIUM_TYPE,\n SET_SELECTED_ITEM,\n SET_TEXT_FILTER,\n UPDATE_RESOURCE_USAGE,\n} from '../../../../constants/navigation';\nimport {\n getFilteredNodes,\n getLastSelected,\n getNodesData,\n getSelected,\n getSortedNodes,\n isRootNode,\n shouldApplyCustomSort,\n} from '../../../../store/selectors/navigation/content/map-node';\nimport {getCluster} from '../../../../store/selectors/global';\nimport {getPath, getTransaction} from '../../../../store/selectors/navigation';\nimport {changeColumnSortOrder} from '../../../../store/actions/tables';\nimport {RumWrapper, YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport {getBatchError, showErrorPopup} from '../../../../utils/utils';\nimport {RumMeasureTypes} from '../../../../rum/rum-measure-types';\nimport hammer from '../../../../common/hammer';\nimport {GENERIC_ERROR_MESSAGE} from '../../../../constants';\nimport {isSupportedEffectiveExpiration} from '../../../../store/selectors/thor/support';\n\nfunction getList(path, transaction, cluster, allowEffectiveExpiration) {\n const id = new RumWrapper(cluster, RumMeasureTypes.NAVIGATION_CONTENT_MAP_NODE);\n return id.fetch(\n YTApiId.navigationListNodes,\n ytApiV3Id.list(\n YTApiId.navigationListNodes,\n prepareRequest({\n attributes: [\n 'type',\n 'dynamic',\n 'row_count', // Deprecated\n 'unmerged_row_count', // Deprecated\n 'chunk_row_count',\n 'modification_time',\n 'creation_time',\n 'resource_usage',\n 'data_weight',\n 'account',\n 'target_path',\n 'broken',\n 'lock_count',\n 'tablet_state',\n '_restore_path',\n 'expiration_time',\n 'expiration_timeout',\n ...(allowEffectiveExpiration ? ['effective_expiration'] : []),\n ],\n path,\n transaction,\n }),\n saveRequestCancellation,\n ),\n );\n}\n\nexport function fetchNodes() {\n return (dispatch, getState) => {\n const state = getState();\n const path = getPath(state);\n const transaction = getTransaction(state);\n const cluster = getCluster(state);\n\n const allowEffectiveExpiration = isSupportedEffectiveExpiration(state);\n\n dispatch({type: FETCH_NODES.REQUEST});\n return getList(path, transaction, cluster, allowEffectiveExpiration)\n .then(ypath.getValue)\n .then((data) => {\n dispatch({\n type: FETCH_NODES.SUCCESS,\n data,\n });\n\n const applyCustomSort = shouldApplyCustomSort(getState());\n dispatch({\n type: APPLY_CUSTOM_SORT,\n data: applyCustomSort ? 'date' : '',\n });\n if (applyCustomSort) {\n dispatch(\n changeColumnSortOrder({\n tableId: NAVIGATION_MAP_NODE_TABLE_ID,\n columnName: 'name',\n asc: false,\n }),\n );\n }\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: FETCH_NODES.FAILURE,\n data: {\n message: 'Could not load list. ' + GENERIC_ERROR_MESSAGE,\n details: error,\n },\n });\n } else {\n dispatch({type: FETCH_NODES.CANCELLED});\n }\n });\n };\n}\n\nexport function updateResourceUsage() {\n const BATCH_LIMIT = 200;\n\n function updatedNodeData(nodeValue, newData) {\n return newData\n ? {\n $value: nodeValue.$value,\n $attributes: {\n ...nodeValue.$attributes,\n recursive_resource_usage: newData,\n },\n }\n : nodeValue;\n }\n\n return (dispatch, getState) => {\n const state = getState();\n\n let nodes = getFilteredNodes(state);\n nodes = _.filter(nodes, (node) => !node.$attributes.recursive_resource_usage);\n\n if (isRootNode(state) || nodes.length === 0) {\n return;\n }\n\n dispatch({type: UPDATE_RESOURCE_USAGE.REQUEST});\n\n const nodesChunks = _.chunk(nodes, BATCH_LIMIT);\n const batchedRequests = _.map(nodesChunks, (nodesChunk) => {\n const requests = _.map(nodesChunk, (node) => {\n return {\n command: 'get',\n parameters: {\n path: node.path + '&/@recursive_resource_usage',\n timeout: 60 * 1000,\n },\n };\n });\n\n return ytApiV3Id.executeBatch(YTApiId.navigationResourceUsage, {requests});\n });\n\n Promise.all(batchedRequests)\n .then((resultChunks) => {\n const dataMap = {};\n\n const errorResults = [];\n\n _.forEach(nodes, (node, index) => {\n const resultChunkIndex = Math.floor(index / BATCH_LIMIT);\n const resultChunk = resultChunks[resultChunkIndex];\n const item = resultChunk[index % BATCH_LIMIT];\n\n if (item.error) {\n errorResults.push(item);\n } else if (item.output) {\n dataMap[node.$value] = item.output;\n }\n });\n\n dispatch({\n type: UPDATE_RESOURCE_USAGE.SUCCESS,\n data: _.map(getNodesData(state), (nodeData) =>\n updatedNodeData(nodeData, dataMap[nodeData.$value]),\n ),\n });\n\n const error = getBatchError(errorResults, 'Failed to get resource usage');\n if (error) {\n throw error;\n }\n })\n .catch((error) => {\n if (error.code !== yt.codes.CANCELLED) {\n dispatch({\n type: UPDATE_RESOURCE_USAGE.FAILURE,\n data: {\n message: 'Failed to load resources. ' + GENERIC_ERROR_MESSAGE,\n details: error,\n },\n });\n const toast = new Toaster();\n toast.add({\n type: 'error',\n name: 'map_node_update_resources',\n timeout: 500000,\n title: 'Resource loading error',\n content: error ? error.message : hammer.format.NO_VALUE,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n } else {\n dispatch({\n type: UPDATE_RESOURCE_USAGE.CANCELLED,\n });\n }\n });\n };\n}\n\nexport function setFilter(filter) {\n return (dispatch, getState) => {\n const path = getPath(getState());\n\n dispatch({\n type: SET_TEXT_FILTER,\n data: {filter, path},\n });\n };\n}\n\nexport function setContentMode(contentMode) {\n return {\n type: SET_CONTENT_MODE,\n data: contentMode,\n };\n}\n\nexport function setMediumType(mediumType) {\n return {\n type: SET_MEDIUM_TYPE,\n data: mediumType,\n };\n}\n\nexport function setSelectedItem(name, shiftKey) {\n return (dispatch, getState) => {\n const state = getState();\n const selected = {...getSelected(state)};\n if (selected[name] && !shiftKey) {\n delete selected[name];\n } else {\n selected[name] = true;\n }\n\n const lastSelected = getLastSelected(state);\n if (lastSelected && shiftKey) {\n const nodes = getSortedNodes(state);\n const lastIndex = _.findIndex(nodes, (item) => lastSelected === item.name);\n if (-1 !== lastIndex) {\n const nameIndex = _.findIndex(nodes, (item) => item.name === name);\n if (-1 !== nameIndex && lastIndex !== nameIndex) {\n const from = Math.min(lastIndex, nameIndex);\n const to = Math.max(lastIndex, nameIndex);\n for (let i = from; i <= to; ++i) {\n const item = nodes[i];\n selected[item.name] = true;\n }\n }\n }\n }\n\n dispatch({\n type: SET_SELECTED_ITEM,\n data: {selected, lastSelected: selected[name] ? name : undefined},\n });\n };\n}\n\nexport function selectAll(isAllSelected) {\n return (dispatch, getState) => {\n let selected = {};\n\n if (!isAllSelected) {\n const allNodes = getFilteredNodes(getState());\n\n selected = _.reduce(\n allNodes,\n (res, node) => {\n res[ypath.getValue(node)] = true;\n return res;\n },\n {},\n );\n }\n\n dispatch({\n type: SELECT_ALL,\n data: {selected},\n });\n };\n}\n"],"mappings":"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"}
|
@@ -79,7 +79,7 @@ function updateView() {
|
|
79
79
|
if ((pathError === null || pathError === void 0 ? void 0 : pathError.code) === _yt.default.codes.NODE_DOES_NOT_EXIST) {
|
80
80
|
delete path.error;
|
81
81
|
}
|
82
|
-
var error = (0, _utils.getBatchError)(results);
|
82
|
+
var error = (0, _utils.getBatchError)(results, 'Failed to get navigation attributes');
|
83
83
|
if (error) {
|
84
84
|
// Convert typed errors to regular ones
|
85
85
|
error.inner_errors = error.inner_errors.map(_index.prepareAttributes);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_yt","_interopRequireDefault","require","_metrics","_favourites","_rumWrapApi","_rumMeasureTypes","_settings","_navigation","_navigation2","_navigation3","_index","_utils","_errors","_index2","_index3","_global","_tableMountConfig","_aclApi","_annotation","_tabletErrors","_support","obj","__esModule","default","updateView","settings","arguments","length","undefined","dispatch","getState","state","currentPath","getPath","transaction","getTransaction","type","UPDATE_VIEW","REQUEST","path","updatePath","cancelRequests","getAnnotation","loadTabletErrorsCount","saveCancelTokenSource","saveRequestCancellation","allowEffectiveExpiration","isSupportedEffectiveExpiration","requestParams","cluster","getCluster","id","RumWrapper","RumMeasureTypes","NAVIGATION_PRELOAD","fetch","YTApiId","navigationAttributes","ytApiV3Id","executeBatch","requests","command","parameters","prepareRequest","_objectSpread","attributes","concat","_toConsumableArray","output_format","TYPED_OUTPUT_FORMAT","then","results","_results","_slicedToArray","attrs","_results$","_results$2","opaqueAttrs","output","pathError","prepareAttributes","error","code","yt","codes","NODE_DOES_NOT_EXIST","getBatchError","inner_errors","map","effective_expiration","preparedAttributes","asHTML","trackVisit","navigationTrackVisit","metrics","countEvent","navigation_path","user","getCurrentUserName","account","SUCCESS","data","attributesWithTypes","dispatchAccountPermissions","_ref","isWriteable","isAccountUsable","checkPermissionsError","NAVIGATION_PARTIAL","fetchTableMountConfig","checkPermissions","permission","transaction_id","navigationCheckPermissions","_ref2","_ref3","writeAction","action","useAction","CANCELLED","permissionDeniedError","getPermissionDeniedError","message","push","GENERIC_ERROR_MESSAGE","ytApiV3","exists","isIdmSupported","FAILURE","join","details","setMode","mode","defaultMode","getDefaultMode","SET_MODE","Tab","AUTO","onTransactionChange","window","dispatchEvent","Event","setTransaction","SET_TRANSACTION","clearTransaction","CLEAR_TRANSACTION","shouldUpdateContentMode","autoCorrectionEnabled","isPathAutoCorrectionSettingEnabled","correctedPath","autoCorrectPath","UPDATE_PATH","navigateParent","navigation","nextPath","getParentPath"],"sources":["index.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport metrics from '../../../common/utils/metrics';\nimport {navigationTrackVisit} from '../../../store/actions/favourites';\nimport {RumWrapper, YTApiId, ytApiV3, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {RumMeasureTypes} from '../../../rum/rum-measure-types';\n\nimport {isPathAutoCorrectionSettingEnabled} from '../../../store/selectors/settings';\nimport {getPath, getTransaction} from '../../../store/selectors/navigation';\nimport {getDefaultMode} from '../../../store/selectors/navigation/navigation';\n\nimport {\n autoCorrectPath,\n cancelRequests,\n getParentPath,\n prepareRequest,\n saveRequestCancellation,\n} from '../../../utils/navigation';\nimport {prepareAttributes} from '../../../utils/index';\nimport {getBatchError} from '../../../utils/utils';\nimport {getPermissionDeniedError} from '../../../utils/errors';\n\nimport {GENERIC_ERROR_MESSAGE, TYPED_OUTPUT_FORMAT} from '../../../constants/index';\nimport {\n CLEAR_TRANSACTION,\n NAVIGATION_PARTIAL,\n SET_MODE,\n SET_TRANSACTION,\n Tab,\n UPDATE_PATH,\n UPDATE_VIEW,\n} from '../../../constants/navigation/index';\nimport {getCluster, getCurrentUserName} from '../../../store/selectors/global';\nimport {fetchTableMountConfig} from '../../../store/actions/navigation/content/table/table-mount-config';\nimport {checkPermissions} from '../../../utils/acl/acl-api';\nimport {getAnnotation} from './tabs/annotation';\nimport {loadTabletErrorsCount} from './tabs/tablet-errors';\nimport {isSupportedEffectiveExpiration} from '../../../store/selectors/thor/support';\n\nexport function updateView(settings = {}) {\n return (dispatch, getState) => {\n const state = getState();\n const currentPath = getPath(state);\n const transaction = getTransaction(state);\n\n dispatch({type: UPDATE_VIEW.REQUEST});\n // Update path for use default path and auto correct path\n const path = dispatch(updatePath(currentPath, false));\n cancelRequests();\n\n dispatch(getAnnotation());\n dispatch(loadTabletErrorsCount({path, saveCancelTokenSource: saveRequestCancellation}));\n\n const allowEffectiveExpiration = isSupportedEffectiveExpiration(state);\n\n const requestParams = {\n path,\n transaction,\n };\n\n const cluster = getCluster(state);\n\n const id = new RumWrapper(cluster, RumMeasureTypes.NAVIGATION_PRELOAD);\n\n return id\n .fetch(\n YTApiId.navigationAttributes,\n ytApiV3Id.executeBatch(\n YTApiId.navigationAttributes,\n {\n requests: [\n {command: 'get', parameters: prepareRequest('/@', requestParams)},\n {\n command: 'get',\n parameters: prepareRequest('/@', {\n ...requestParams,\n attributes: [\n 'path',\n ...(allowEffectiveExpiration\n ? ['effective_expiration']\n : []),\n ],\n }),\n },\n ],\n output_format: TYPED_OUTPUT_FORMAT,\n },\n saveRequestCancellation,\n ),\n )\n .then((results) => {\n const [attrs, {output: opaqueAttrs} = {}] = results;\n const pathError = prepareAttributes(path.error);\n if (pathError?.code === yt.codes.NODE_DOES_NOT_EXIST) {\n delete path.error;\n }\n\n const error = getBatchError(results);\n if (error) {\n // Convert typed errors to regular ones\n error.inner_errors = error.inner_errors.map(prepareAttributes);\n throw error;\n }\n\n return {\n ...attrs.output,\n ...(opaqueAttrs?.effective_expiration\n ? {effective_expiration: opaqueAttrs.effective_expiration}\n : {}),\n ...(path.output ? {path: opaqueAttrs.path} : {}),\n };\n })\n .then((attributes) => {\n const preparedAttributes = prepareAttributes(attributes, {\n asHTML: false,\n });\n\n if (settings.trackVisit) {\n dispatch(navigationTrackVisit(path));\n }\n\n metrics.countEvent({\n navigation_path: {\n type: preparedAttributes.type,\n },\n });\n\n const user = getCurrentUserName(state);\n const {account} = preparedAttributes;\n\n dispatch({\n type: UPDATE_VIEW.SUCCESS,\n data: {\n attributesWithTypes: attributes,\n attributes: preparedAttributes,\n },\n });\n\n const dispatchAccountPermissions = ({\n isWriteable,\n isAccountUsable,\n checkPermissionsError,\n }) => {\n dispatch({\n type: NAVIGATION_PARTIAL,\n data: {isWriteable, isAccountUsable, checkPermissionsError},\n });\n };\n\n dispatch(fetchTableMountConfig(path));\n\n if (!account) {\n /**\n * If account is not defined we just pretend that everything is awesome\n * and the code works the same as there are no any checks of permissions.\n */\n return dispatchAccountPermissions({\n isWriteable: true,\n isAccountUsable: true,\n });\n }\n\n checkPermissions(\n [\n {\n user,\n permission: 'write',\n path,\n transaction_id: transaction,\n },\n {\n user,\n permission: 'use',\n path: `//sys/accounts/${account}`,\n transaction_id: transaction,\n },\n ],\n YTApiId.navigationCheckPermissions,\n )\n .then(([{action: writeAction}, {action: useAction}]) => {\n dispatchAccountPermissions({\n isWriteable: writeAction === 'allow',\n isAccountUsable: useAction === 'allow',\n });\n })\n .catch((checkPermissionsError) => {\n dispatchAccountPermissions({checkPermissionsError});\n });\n })\n .catch((error) => {\n if (error.code === yt.codes.CANCELLED) {\n dispatch({\n type: UPDATE_VIEW.CANCELLED,\n });\n } else {\n const permissionDeniedError = getPermissionDeniedError(error);\n const message = ['Error occurred when loading path.'];\n if (!permissionDeniedError) message.push(GENERIC_ERROR_MESSAGE);\n\n ytApiV3\n .exists({path: '//sys/idm/lock'})\n .catch(() => false)\n .then((isIdmSupported) => {\n dispatch({\n type: UPDATE_VIEW.FAILURE,\n data: {\n message: message.join(' '),\n details: error,\n isIdmSupported,\n },\n });\n });\n }\n });\n };\n}\n\nexport function setMode(mode) {\n return (dispatch, getState) => {\n const defaultMode = getDefaultMode(getState());\n\n dispatch({\n type: SET_MODE,\n data: mode === defaultMode ? Tab.AUTO : mode,\n });\n };\n}\n\nexport function onTransactionChange() {\n return (dispatch) => {\n dispatch(updateView({trackVisit: true}));\n // Need to update breadcrumbs dimensions after transaction change\n window.dispatchEvent(new Event('resize'));\n };\n}\n\nexport function setTransaction(transaction) {\n return (dispatch) => {\n dispatch({\n type: SET_TRANSACTION,\n data: transaction,\n });\n dispatch(onTransactionChange());\n };\n}\n\nexport function clearTransaction() {\n return (dispatch) => {\n dispatch({\n type: CLEAR_TRANSACTION,\n });\n dispatch(onTransactionChange());\n };\n}\n\nexport function updatePath(path, shouldUpdateContentMode = true) {\n return (dispatch, getState) => {\n const autoCorrectionEnabled = isPathAutoCorrectionSettingEnabled(getState());\n\n const correctedPath = autoCorrectionEnabled ? autoCorrectPath(path) : path;\n\n dispatch({\n type: UPDATE_PATH,\n data: {\n path: correctedPath,\n shouldUpdateContentMode,\n },\n });\n\n return correctedPath;\n };\n}\n\nexport function navigateParent() {\n return (dispatch, getState) => {\n const {path} = getState().navigation.navigation;\n const nextPath = getParentPath(path);\n dispatch(updatePath(nextPath));\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,GAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAEA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAEA,IAAAQ,YAAA,GAAAR,OAAA;AAOA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AAEA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,OAAA,GAAAb,OAAA;AASA,IAAAc,OAAA,GAAAd,OAAA;AACA,IAAAe,iBAAA,GAAAf,OAAA;AACA,IAAAgB,OAAA,GAAAhB,OAAA;AACA,IAAAiB,WAAA,GAAAjB,OAAA;AACA,IAAAkB,aAAA,GAAAlB,OAAA;AACA,IAAAmB,QAAA,GAAAnB,OAAA;AAAoF,SAAAD,uBAAAqB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAE7E,SAASG,UAAUA,CAAA,EAAgB;EAAA,IAAfC,QAAQ,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACpC,OAAO,UAACG,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAMC,KAAK,GAAGD,QAAQ,CAAC,CAAC;IACxB,IAAME,WAAW,GAAG,IAAAC,mBAAO,EAACF,KAAK,CAAC;IAClC,IAAMG,WAAW,GAAG,IAAAC,0BAAc,EAACJ,KAAK,CAAC;IAEzCF,QAAQ,CAAC;MAACO,IAAI,EAAEC,mBAAW,CAACC;IAAO,CAAC,CAAC;IACrC;IACA,IAAMC,IAAI,GAAGV,QAAQ,CAACW,UAAU,CAACR,WAAW,EAAE,KAAK,CAAC,CAAC;IACrD,IAAAS,2BAAc,EAAC,CAAC;IAEhBZ,QAAQ,CAAC,IAAAa,yBAAa,EAAC,CAAC,CAAC;IACzBb,QAAQ,CAAC,IAAAc,mCAAqB,EAAC;MAACJ,IAAI,EAAJA,IAAI;MAAEK,qBAAqB,EAAEC;IAAuB,CAAC,CAAC,CAAC;IAEvF,IAAMC,wBAAwB,GAAG,IAAAC,uCAA8B,EAAChB,KAAK,CAAC;IAEtE,IAAMiB,aAAa,GAAG;MAClBT,IAAI,EAAJA,IAAI;MACJL,WAAW,EAAXA;IACJ,CAAC;IAED,IAAMe,OAAO,GAAG,IAAAC,kBAAU,EAACnB,KAAK,CAAC;IAEjC,IAAMoB,EAAE,GAAG,IAAIC,sBAAU,CAACH,OAAO,EAAEI,gCAAe,CAACC,kBAAkB,CAAC;IAEtE,OAAOH,EAAE,CACJI,KAAK,CACFC,mBAAO,CAACC,oBAAoB,EAC5BC,qBAAS,CAACC,YAAY,CAClBH,mBAAO,CAACC,oBAAoB,EAC5B;MACIG,QAAQ,EAAE,CACN;QAACC,OAAO,EAAE,KAAK;QAAEC,UAAU,EAAE,IAAAC,2BAAc,EAAC,IAAI,EAAEf,aAAa;MAAC,CAAC,EACjE;QACIa,OAAO,EAAE,KAAK;QACdC,UAAU,EAAE,IAAAC,2BAAc,EAAC,IAAI,MAAAC,sBAAA,MAAAA,sBAAA,MACxBhB,aAAa;UAChBiB,UAAU,GACN,MAAM,EAAAC,MAAA,KAAAC,2BAAA,EACFrB,wBAAwB,GACtB,CAAC,sBAAsB,CAAC,GACxB,EAAE;QACX,EACJ;MACL,CAAC,CACJ;MACDsB,aAAa,EAAEC;IACnB,CAAC,EACDxB,oCACJ,CACJ,CAAC,CACAyB,IAAI,CAAC,UAACC,OAAO,EAAK;MACf,IAAAC,QAAA,OAAAC,uBAAA,EAA4CF,OAAO;QAA5CG,KAAK,GAAAF,QAAA;QAAAG,SAAA,GAAAH,QAAA;QAAAI,UAAA,GAAAD,SAAA,cAA0B,CAAC,CAAC,GAAAA,SAAA;QAAjBE,WAAW,GAAAD,UAAA,CAAnBE,MAAM;MACrB,IAAMC,SAAS,GAAG,IAAAC,wBAAiB,EAACzC,IAAI,CAAC0C,KAAK,CAAC;MAC/C,IAAI,CAAAF,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEG,IAAI,MAAKC,WAAE,CAACC,KAAK,CAACC,mBAAmB,EAAE;QAClD,OAAO9C,IAAI,CAAC0C,KAAK;MACrB;MAEA,IAAMA,KAAK,GAAG,IAAAK,oBAAa,EAACf,OAAO,CAAC;MACpC,IAAIU,KAAK,EAAE;QACP;QACAA,KAAK,CAACM,YAAY,GAAGN,KAAK,CAACM,YAAY,CAACC,GAAG,CAACR,wBAAiB,CAAC;QAC9D,MAAMC,KAAK;MACf;MAEA,WAAAjB,sBAAA,MAAAA,sBAAA,MAAAA,sBAAA,MACOU,KAAK,CAACI,MAAM,GACXD,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAEY,oBAAoB,GAC/B;QAACA,oBAAoB,EAAEZ,WAAW,CAACY;MAAoB,CAAC,GACxD,CAAC,CAAC,GACJlD,IAAI,CAACuC,MAAM,GAAG;QAACvC,IAAI,EAAEsC,WAAW,CAACtC;MAAI,CAAC,GAAG,CAAC,CAAC;IAEvD,CAAC,CAAC,CACD+B,IAAI,CAAC,UAACL,UAAU,EAAK;MAClB,IAAMyB,kBAAkB,GAAG,IAAAV,wBAAiB,EAACf,UAAU,EAAE;QACrD0B,MAAM,EAAE;MACZ,CAAC,CAAC;MAEF,IAAIlE,QAAQ,CAACmE,UAAU,EAAE;QACrB/D,QAAQ,CAAC,IAAAgE,gCAAoB,EAACtD,IAAI,CAAC,CAAC;MACxC;MAEAuD,gBAAO,CAACC,UAAU,CAAC;QACfC,eAAe,EAAE;UACb5D,IAAI,EAAEsD,kBAAkB,CAACtD;QAC7B;MACJ,CAAC,CAAC;MAEF,IAAM6D,IAAI,GAAG,IAAAC,0BAAkB,EAACnE,KAAK,CAAC;MACtC,IAAOoE,OAAO,GAAIT,kBAAkB,CAA7BS,OAAO;MAEdtE,QAAQ,CAAC;QACLO,IAAI,EAAEC,mBAAW,CAAC+D,OAAO;QACzBC,IAAI,EAAE;UACFC,mBAAmB,EAAErC,UAAU;UAC/BA,UAAU,EAAEyB;QAChB;MACJ,CAAC,CAAC;MAEF,IAAMa,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAAC,IAAA,EAI1B;QAAA,IAHFC,WAAW,GAAAD,IAAA,CAAXC,WAAW;UACXC,eAAe,GAAAF,IAAA,CAAfE,eAAe;UACfC,qBAAqB,GAAAH,IAAA,CAArBG,qBAAqB;QAErB9E,QAAQ,CAAC;UACLO,IAAI,EAAEwE,0BAAkB;UACxBP,IAAI,EAAE;YAACI,WAAW,EAAXA,WAAW;YAAEC,eAAe,EAAfA,eAAe;YAAEC,qBAAqB,EAArBA;UAAqB;QAC9D,CAAC,CAAC;MACN,CAAC;MAED9E,QAAQ,CAAC,IAAAgF,uCAAqB,EAACtE,IAAI,CAAC,CAAC;MAErC,IAAI,CAAC4D,OAAO,EAAE;QACV;AACpB;AACA;AACA;QACoB,OAAOI,0BAA0B,CAAC;UAC9BE,WAAW,EAAE,IAAI;UACjBC,eAAe,EAAE;QACrB,CAAC,CAAC;MACN;MAEA,IAAAI,wBAAgB,EACZ,CACI;QACIb,IAAI,EAAJA,IAAI;QACJc,UAAU,EAAE,OAAO;QACnBxE,IAAI,EAAJA,IAAI;QACJyE,cAAc,EAAE9E;MACpB,CAAC,EACD;QACI+D,IAAI,EAAJA,IAAI;QACJc,UAAU,EAAE,KAAK;QACjBxE,IAAI,oBAAA2B,MAAA,CAAoBiC,OAAO,CAAE;QACjCa,cAAc,EAAE9E;MACpB,CAAC,CACJ,EACDsB,mBAAO,CAACyD,0BACZ,CAAC,CACI3C,IAAI,CAAC,UAAA4C,KAAA,EAAkD;QAAA,IAAAC,KAAA,OAAA1C,uBAAA,EAAAyC,KAAA;UAAvCE,WAAW,GAAAD,KAAA,IAAnBE,MAAM;UAAyBC,SAAS,GAAAH,KAAA,IAAjBE,MAAM;QAClCd,0BAA0B,CAAC;UACvBE,WAAW,EAAEW,WAAW,KAAK,OAAO;UACpCV,eAAe,EAAEY,SAAS,KAAK;QACnC,CAAC,CAAC;MACN,CAAC,CAAC,SACI,CAAC,UAACX,qBAAqB,EAAK;QAC9BJ,0BAA0B,CAAC;UAACI,qBAAqB,EAArBA;QAAqB,CAAC,CAAC;MACvD,CAAC,CAAC;IACV,CAAC,CAAC,SACI,CAAC,UAAC1B,KAAK,EAAK;MACd,IAAIA,KAAK,CAACC,IAAI,KAAKC,WAAE,CAACC,KAAK,CAACmC,SAAS,EAAE;QACnC1F,QAAQ,CAAC;UACLO,IAAI,EAAEC,mBAAW,CAACkF;QACtB,CAAC,CAAC;MACN,CAAC,MAAM;QACH,IAAMC,qBAAqB,GAAG,IAAAC,gCAAwB,EAACxC,KAAK,CAAC;QAC7D,IAAMyC,OAAO,GAAG,CAAC,mCAAmC,CAAC;QACrD,IAAI,CAACF,qBAAqB,EAAEE,OAAO,CAACC,IAAI,CAACC,6BAAqB,CAAC;QAE/DC,mBAAO,CACFC,MAAM,CAAC;UAACvF,IAAI,EAAE;QAAgB,CAAC,CAAC,SAC3B,CAAC;UAAA,OAAM,KAAK;QAAA,EAAC,CAClB+B,IAAI,CAAC,UAACyD,cAAc,EAAK;UACtBlG,QAAQ,CAAC;YACLO,IAAI,EAAEC,mBAAW,CAAC2F,OAAO;YACzB3B,IAAI,EAAE;cACFqB,OAAO,EAAEA,OAAO,CAACO,IAAI,CAAC,GAAG,CAAC;cAC1BC,OAAO,EAAEjD,KAAK;cACd8C,cAAc,EAAdA;YACJ;UACJ,CAAC,CAAC;QACN,CAAC,CAAC;MACV;IACJ,CAAC,CAAC;EACV,CAAC;AACL;AAEO,SAASI,OAAOA,CAACC,IAAI,EAAE;EAC1B,OAAO,UAACvG,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAMuG,WAAW,GAAG,IAAAC,2BAAc,EAACxG,QAAQ,CAAC,CAAC,CAAC;IAE9CD,QAAQ,CAAC;MACLO,IAAI,EAAEmG,gBAAQ;MACdlC,IAAI,EAAE+B,IAAI,KAAKC,WAAW,GAAGG,WAAG,CAACC,IAAI,GAAGL;IAC5C,CAAC,CAAC;EACN,CAAC;AACL;AAEO,SAASM,mBAAmBA,CAAA,EAAG;EAClC,OAAO,UAAC7G,QAAQ,EAAK;IACjBA,QAAQ,CAACL,UAAU,CAAC;MAACoE,UAAU,EAAE;IAAI,CAAC,CAAC,CAAC;IACxC;IACA+C,MAAM,CAACC,aAAa,CAAC,IAAIC,KAAK,CAAC,QAAQ,CAAC,CAAC;EAC7C,CAAC;AACL;AAEO,SAASC,cAAcA,CAAC5G,WAAW,EAAE;EACxC,OAAO,UAACL,QAAQ,EAAK;IACjBA,QAAQ,CAAC;MACLO,IAAI,EAAE2G,uBAAe;MACrB1C,IAAI,EAAEnE;IACV,CAAC,CAAC;IACFL,QAAQ,CAAC6G,mBAAmB,CAAC,CAAC,CAAC;EACnC,CAAC;AACL;AAEO,SAASM,gBAAgBA,CAAA,EAAG;EAC/B,OAAO,UAACnH,QAAQ,EAAK;IACjBA,QAAQ,CAAC;MACLO,IAAI,EAAE6G;IACV,CAAC,CAAC;IACFpH,QAAQ,CAAC6G,mBAAmB,CAAC,CAAC,CAAC;EACnC,CAAC;AACL;AAEO,SAASlG,UAAUA,CAACD,IAAI,EAAkC;EAAA,IAAhC2G,uBAAuB,GAAAxH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;EAC3D,OAAO,UAACG,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAMqH,qBAAqB,GAAG,IAAAC,4CAAkC,EAACtH,QAAQ,CAAC,CAAC,CAAC;IAE5E,IAAMuH,aAAa,GAAGF,qBAAqB,GAAG,IAAAG,4BAAe,EAAC/G,IAAI,CAAC,GAAGA,IAAI;IAE1EV,QAAQ,CAAC;MACLO,IAAI,EAAEmH,mBAAW;MACjBlD,IAAI,EAAE;QACF9D,IAAI,EAAE8G,aAAa;QACnBH,uBAAuB,EAAvBA;MACJ;IACJ,CAAC,CAAC;IAEF,OAAOG,aAAa;EACxB,CAAC;AACL;AAEO,SAASG,cAAcA,CAAA,EAAG;EAC7B,OAAO,UAAC3H,QAAQ,EAAEC,QAAQ,EAAK;IAC3B,IAAOS,IAAI,GAAIT,QAAQ,CAAC,CAAC,CAAC2H,UAAU,CAACA,UAAU,CAAxClH,IAAI;IACX,IAAMmH,QAAQ,GAAG,IAAAC,0BAAa,EAACpH,IAAI,CAAC;IACpCV,QAAQ,CAACW,UAAU,CAACkH,QAAQ,CAAC,CAAC;EAClC,CAAC;AACL"}
|
1
|
+
{"version":3,"names":["_yt","_interopRequireDefault","require","_metrics","_favourites","_rumWrapApi","_rumMeasureTypes","_settings","_navigation","_navigation2","_navigation3","_index","_utils","_errors","_index2","_index3","_global","_tableMountConfig","_aclApi","_annotation","_tabletErrors","_support","obj","__esModule","default","updateView","settings","arguments","length","undefined","dispatch","getState","state","currentPath","getPath","transaction","getTransaction","type","UPDATE_VIEW","REQUEST","path","updatePath","cancelRequests","getAnnotation","loadTabletErrorsCount","saveCancelTokenSource","saveRequestCancellation","allowEffectiveExpiration","isSupportedEffectiveExpiration","requestParams","cluster","getCluster","id","RumWrapper","RumMeasureTypes","NAVIGATION_PRELOAD","fetch","YTApiId","navigationAttributes","ytApiV3Id","executeBatch","requests","command","parameters","prepareRequest","_objectSpread","attributes","concat","_toConsumableArray","output_format","TYPED_OUTPUT_FORMAT","then","results","_results","_slicedToArray","attrs","_results$","_results$2","opaqueAttrs","output","pathError","prepareAttributes","error","code","yt","codes","NODE_DOES_NOT_EXIST","getBatchError","inner_errors","map","effective_expiration","preparedAttributes","asHTML","trackVisit","navigationTrackVisit","metrics","countEvent","navigation_path","user","getCurrentUserName","account","SUCCESS","data","attributesWithTypes","dispatchAccountPermissions","_ref","isWriteable","isAccountUsable","checkPermissionsError","NAVIGATION_PARTIAL","fetchTableMountConfig","checkPermissions","permission","transaction_id","navigationCheckPermissions","_ref2","_ref3","writeAction","action","useAction","CANCELLED","permissionDeniedError","getPermissionDeniedError","message","push","GENERIC_ERROR_MESSAGE","ytApiV3","exists","isIdmSupported","FAILURE","join","details","setMode","mode","defaultMode","getDefaultMode","SET_MODE","Tab","AUTO","onTransactionChange","window","dispatchEvent","Event","setTransaction","SET_TRANSACTION","clearTransaction","CLEAR_TRANSACTION","shouldUpdateContentMode","autoCorrectionEnabled","isPathAutoCorrectionSettingEnabled","correctedPath","autoCorrectPath","UPDATE_PATH","navigateParent","navigation","nextPath","getParentPath"],"sources":["index.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport metrics from '../../../common/utils/metrics';\nimport {navigationTrackVisit} from '../../../store/actions/favourites';\nimport {RumWrapper, YTApiId, ytApiV3, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {RumMeasureTypes} from '../../../rum/rum-measure-types';\n\nimport {isPathAutoCorrectionSettingEnabled} from '../../../store/selectors/settings';\nimport {getPath, getTransaction} from '../../../store/selectors/navigation';\nimport {getDefaultMode} from '../../../store/selectors/navigation/navigation';\n\nimport {\n autoCorrectPath,\n cancelRequests,\n getParentPath,\n prepareRequest,\n saveRequestCancellation,\n} from '../../../utils/navigation';\nimport {prepareAttributes} from '../../../utils/index';\nimport {getBatchError} from '../../../utils/utils';\nimport {getPermissionDeniedError} from '../../../utils/errors';\n\nimport {GENERIC_ERROR_MESSAGE, TYPED_OUTPUT_FORMAT} from '../../../constants/index';\nimport {\n CLEAR_TRANSACTION,\n NAVIGATION_PARTIAL,\n SET_MODE,\n SET_TRANSACTION,\n Tab,\n UPDATE_PATH,\n UPDATE_VIEW,\n} from '../../../constants/navigation/index';\nimport {getCluster, getCurrentUserName} from '../../../store/selectors/global';\nimport {fetchTableMountConfig} from '../../../store/actions/navigation/content/table/table-mount-config';\nimport {checkPermissions} from '../../../utils/acl/acl-api';\nimport {getAnnotation} from './tabs/annotation';\nimport {loadTabletErrorsCount} from './tabs/tablet-errors';\nimport {isSupportedEffectiveExpiration} from '../../../store/selectors/thor/support';\n\nexport function updateView(settings = {}) {\n return (dispatch, getState) => {\n const state = getState();\n const currentPath = getPath(state);\n const transaction = getTransaction(state);\n\n dispatch({type: UPDATE_VIEW.REQUEST});\n // Update path for use default path and auto correct path\n const path = dispatch(updatePath(currentPath, false));\n cancelRequests();\n\n dispatch(getAnnotation());\n dispatch(loadTabletErrorsCount({path, saveCancelTokenSource: saveRequestCancellation}));\n\n const allowEffectiveExpiration = isSupportedEffectiveExpiration(state);\n\n const requestParams = {\n path,\n transaction,\n };\n\n const cluster = getCluster(state);\n\n const id = new RumWrapper(cluster, RumMeasureTypes.NAVIGATION_PRELOAD);\n\n return id\n .fetch(\n YTApiId.navigationAttributes,\n ytApiV3Id.executeBatch(\n YTApiId.navigationAttributes,\n {\n requests: [\n {command: 'get', parameters: prepareRequest('/@', requestParams)},\n {\n command: 'get',\n parameters: prepareRequest('/@', {\n ...requestParams,\n attributes: [\n 'path',\n ...(allowEffectiveExpiration\n ? ['effective_expiration']\n : []),\n ],\n }),\n },\n ],\n output_format: TYPED_OUTPUT_FORMAT,\n },\n saveRequestCancellation,\n ),\n )\n .then((results) => {\n const [attrs, {output: opaqueAttrs} = {}] = results;\n const pathError = prepareAttributes(path.error);\n if (pathError?.code === yt.codes.NODE_DOES_NOT_EXIST) {\n delete path.error;\n }\n\n const error = getBatchError(results, 'Failed to get navigation attributes');\n if (error) {\n // Convert typed errors to regular ones\n error.inner_errors = error.inner_errors.map(prepareAttributes);\n throw error;\n }\n\n return {\n ...attrs.output,\n ...(opaqueAttrs?.effective_expiration\n ? {effective_expiration: opaqueAttrs.effective_expiration}\n : {}),\n ...(path.output ? {path: opaqueAttrs.path} : {}),\n };\n })\n .then((attributes) => {\n const preparedAttributes = prepareAttributes(attributes, {\n asHTML: false,\n });\n\n if (settings.trackVisit) {\n dispatch(navigationTrackVisit(path));\n }\n\n metrics.countEvent({\n navigation_path: {\n type: preparedAttributes.type,\n },\n });\n\n const user = getCurrentUserName(state);\n const {account} = preparedAttributes;\n\n dispatch({\n type: UPDATE_VIEW.SUCCESS,\n data: {\n attributesWithTypes: attributes,\n attributes: preparedAttributes,\n },\n });\n\n const dispatchAccountPermissions = ({\n isWriteable,\n isAccountUsable,\n checkPermissionsError,\n }) => {\n dispatch({\n type: NAVIGATION_PARTIAL,\n data: {isWriteable, isAccountUsable, checkPermissionsError},\n });\n };\n\n dispatch(fetchTableMountConfig(path));\n\n if (!account) {\n /**\n * If account is not defined we just pretend that everything is awesome\n * and the code works the same as there are no any checks of permissions.\n */\n return dispatchAccountPermissions({\n isWriteable: true,\n isAccountUsable: true,\n });\n }\n\n checkPermissions(\n [\n {\n user,\n permission: 'write',\n path,\n transaction_id: transaction,\n },\n {\n user,\n permission: 'use',\n path: `//sys/accounts/${account}`,\n transaction_id: transaction,\n },\n ],\n YTApiId.navigationCheckPermissions,\n )\n .then(([{action: writeAction}, {action: useAction}]) => {\n dispatchAccountPermissions({\n isWriteable: writeAction === 'allow',\n isAccountUsable: useAction === 'allow',\n });\n })\n .catch((checkPermissionsError) => {\n dispatchAccountPermissions({checkPermissionsError});\n });\n })\n .catch((error) => {\n if (error.code === yt.codes.CANCELLED) {\n dispatch({\n type: UPDATE_VIEW.CANCELLED,\n });\n } else {\n const permissionDeniedError = getPermissionDeniedError(error);\n const message = ['Error occurred when loading path.'];\n if (!permissionDeniedError) message.push(GENERIC_ERROR_MESSAGE);\n\n ytApiV3\n .exists({path: '//sys/idm/lock'})\n .catch(() => false)\n .then((isIdmSupported) => {\n dispatch({\n type: UPDATE_VIEW.FAILURE,\n data: {\n message: message.join(' '),\n details: error,\n isIdmSupported,\n },\n });\n });\n }\n });\n };\n}\n\nexport function setMode(mode) {\n return (dispatch, getState) => {\n const defaultMode = getDefaultMode(getState());\n\n dispatch({\n type: SET_MODE,\n data: mode === defaultMode ? Tab.AUTO : mode,\n });\n };\n}\n\nexport function onTransactionChange() {\n return (dispatch) => {\n dispatch(updateView({trackVisit: true}));\n // Need to update breadcrumbs dimensions after transaction change\n window.dispatchEvent(new Event('resize'));\n };\n}\n\nexport function setTransaction(transaction) {\n return (dispatch) => {\n dispatch({\n type: SET_TRANSACTION,\n data: transaction,\n });\n dispatch(onTransactionChange());\n };\n}\n\nexport function clearTransaction() {\n return (dispatch) => {\n dispatch({\n type: CLEAR_TRANSACTION,\n });\n dispatch(onTransactionChange());\n };\n}\n\nexport function updatePath(path, shouldUpdateContentMode = true) {\n return (dispatch, getState) => {\n const autoCorrectionEnabled = isPathAutoCorrectionSettingEnabled(getState());\n\n const correctedPath = autoCorrectionEnabled ? autoCorrectPath(path) : path;\n\n dispatch({\n type: UPDATE_PATH,\n data: {\n path: correctedPath,\n shouldUpdateContentMode,\n },\n });\n\n return correctedPath;\n };\n}\n\nexport function navigateParent() {\n return (dispatch, getState) => {\n const {path} = getState().navigation.navigation;\n const nextPath = getParentPath(path);\n dispatch(updatePath(nextPath));\n };\n}\n"],"mappings":"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"}
|
@@ -50,7 +50,9 @@ function showNavigationAttributesEditor(paths) {
|
|
50
50
|
}
|
51
51
|
};
|
52
52
|
});
|
53
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.attributesEditorGetAttrs, requests
|
53
|
+
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.attributesEditorGetAttrs, requests, {
|
54
|
+
errorTitle: 'Attributes cannot be loaded'
|
55
|
+
}).then(function (results) {
|
54
56
|
var error = (0, _utils.getBatchError)(results, 'Attributes cannot be loaded');
|
55
57
|
if (error) {
|
56
58
|
throw error;
|
@@ -144,7 +146,9 @@ function navigationSetNodeAttributes(generalAttrs, storageAttrs, runMerge) {
|
|
144
146
|
return acc;
|
145
147
|
}, []);
|
146
148
|
var staticTables = (0, _attributesEditor2.getNavigationAttributesEditorStaticTables)(getState());
|
147
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.attributesEditorSet, requests
|
149
|
+
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.attributesEditorSet, requests, {
|
150
|
+
errorTitle: "Cannot set attributes for ".concat(paths)
|
151
|
+
}).then(function (res) {
|
148
152
|
var error = (0, _utils.getBatchError)(res, "Cannot set attributes for ".concat(paths));
|
149
153
|
if (error) {
|
150
154
|
dispatch({
|
@@ -194,7 +198,9 @@ function navigationSetNodeAttributes(generalAttrs, storageAttrs, runMerge) {
|
|
194
198
|
parameters: prepareMergeParams(path)
|
195
199
|
};
|
196
200
|
});
|
197
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.attributesEditorMerge, _requests
|
201
|
+
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.attributesEditorMerge, _requests, {
|
202
|
+
errorTitle: 'Failed to start some operations'
|
203
|
+
}).then(function (results) {
|
198
204
|
var error = (0, _utils.getBatchError)(results, 'Failed to start some operations');
|
199
205
|
if (error) {
|
200
206
|
throw error;
|