@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":["_react","_interopRequireDefault","require","_uikit","_ypath","_yt","_attributesEditor","_attributesEditor2","_utils","_OperationShortInfo","_AppStoreProvider","_index","_Link","_global","_cypressAttributes","_constants","_executeBatch","_rumWrapApi","_jsxRuntime","obj","__esModule","default","EDITABLE_ATTRIBUTES","showNavigationAttributesEditor","paths","dispatch","type","NAVIGATION_ATTRIBUTES_EDITOR_REQUEST","requests","_map","path","command","parameters","attributes","executeBatchWithRetries","YTApiId","attributesEditorGetAttrs","then","results","error","getBatchError","attributesMap","_reduce","acc","index","$attributes","output","NAVIGATION_ATTRIBUTES_EDITOR_SUCCESS","data","NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL","visible","e","NAVIGATION_ATTRIBUTES_EDITOR_ERROR","toaster","Toaster","add","name","_join","title","content","message","actions","label","onClick","showErrorPopup","autoHiding","hideNavigationAttributesEditor","undefined","EDIT_MARKER","makeUiMarker","concat","Page","NAVIGATION","EDIT_MERGE_MARKER","navigationSetNodeAttributes","generalAttrs","storageAttrs","runMerge","getState","getNavigationAttributesEditorPath","_isEmpty","_objectSpread","console","warn","JSON","stringify","Promise","resolve","cluster","getCluster","getNavigationAttributesEditorAttributes","in_memory_mode","tablet_cell_bundle","restGeneralAttrs","_objectWithoutProperties","_excluded","attrs","newAttrs","ypath","getValue","isDynamic","isDynTable","Object","assign","_forEach","value","key","push","prepareSetCommandForBatch","staticTables","getNavigationAttributesEditorStaticTables","attributesEditorSet","res","reject","length","prepareMergeParams","sorted","spec","input_table_paths","output_table_path","force_transform","mode","promises","wrapApiPromiseByToaster","yt","v3","merge","toasterName","successContent","opId","parse","_jsx","AppStoreProvider","children","OperationShortInfo","id","output_attribute_name","successTitle","errorTitle","autoHide","all","_requests","attributesEditorMerge","join","_jsxs","Link","url","updateView"],"sources":["attributes-editor.tsx"],"sourcesContent":["import React from 'react';\nimport _ from 'lodash';\nimport {ThunkAction} from 'redux-thunk';\n\nimport {Toaster} from '@gravity-ui/uikit';\nimport ypath from '../../../../common/thor/ypath';\n\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {\n NAVIGATION_ATTRIBUTES_EDITOR_ERROR,\n NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n NAVIGATION_ATTRIBUTES_EDITOR_REQUEST,\n NAVIGATION_ATTRIBUTES_EDITOR_SUCCESS,\n} from '../../../../constants/navigation/modals/attributes-editor';\nimport {RootState} from '../../../../store/reducers';\nimport {NavAttrEditorAction} from '../../../../store/reducers/navigation/modals/attributes-editor';\nimport {\n getNavigationAttributesEditorAttributes,\n getNavigationAttributesEditorPath,\n getNavigationAttributesEditorStaticTables,\n} from '../../../../store/selectors/navigation/modals/attributes-editor';\nimport {getBatchError, showErrorPopup, wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {OperationShortInfo} from '../../../../pages/components/OperationShortInfo/OperationShortInfo';\nimport {AppStoreProvider} from '../../../../containers/App/AppStoreProvider';\nimport {updateView} from '../index';\nimport Link from '../../../../components/Link/Link';\nimport {getCluster} from '../../../selectors/global';\nimport {makeUiMarker, prepareSetCommandForBatch} from '../../../../utils/cypress-attributes';\nimport {Page} from '../../../../constants';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId} from '../../../../rum/rum-wrap-api';\nimport {BatchSubRequest} from '../../../../../shared/yt-types';\n\ntype ActionType<R = any> = ThunkAction<R, RootState, any, NavAttrEditorAction>;\n\nconst EDITABLE_ATTRIBUTES = [\n 'type',\n 'account',\n 'primary_medium',\n 'optimize_for',\n 'compression_codec',\n 'erasure_codec',\n 'replication_factor',\n 'tablet_cell_bundle',\n 'in_memory_mode',\n 'dynamic',\n 'sorted',\n 'annotation',\n 'annotation_path',\n 'expiration_time',\n 'expiration_timeout',\n];\n\nexport function showNavigationAttributesEditor(paths: Array<string>): ActionType {\n return (dispatch) => {\n dispatch({type: NAVIGATION_ATTRIBUTES_EDITOR_REQUEST});\n const requests = _.map(paths, (path) => {\n return {\n command: 'get' as const,\n parameters: {\n path: path + '/@',\n attributes: EDITABLE_ATTRIBUTES,\n },\n };\n });\n return executeBatchWithRetries(YTApiId.attributesEditorGetAttrs, requests)\n .then((results: any) => {\n const error = getBatchError(results, 'Attributes cannot be loaded');\n if (error) {\n throw error;\n }\n const attributesMap = _.reduce(\n paths,\n (acc, path, index) => {\n acc[path] = {$attributes: results[index].output};\n return acc;\n },\n {} as any,\n );\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_SUCCESS,\n data: {attributesMap, paths},\n });\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n data: {visible: true},\n });\n })\n .catch((e: any) => {\n dispatch({type: NAVIGATION_ATTRIBUTES_EDITOR_ERROR, data: e});\n const toaster = new Toaster();\n toaster.add({\n name: 'show_attrs_editor_' + _.join(paths),\n type: 'error',\n title: 'Attributes cannot be loaded',\n content: e?.message,\n actions: [\n {\n label: ' [Details]',\n onClick: () => showErrorPopup(e),\n },\n ],\n autoHiding: false,\n });\n });\n };\n}\n\nexport function hideNavigationAttributesEditor() {\n return {\n type: NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n data: {paths: undefined, visible: false},\n };\n}\n\nconst EDIT_MARKER = makeUiMarker(`${Page.NAVIGATION}:edit-attributes`);\nconst EDIT_MERGE_MARKER = makeUiMarker(`${Page.NAVIGATION}:edit-attributes:merge`);\n\nexport function navigationSetNodeAttributes(\n generalAttrs: any,\n storageAttrs: object,\n runMerge: boolean,\n): ActionType<Promise<unknown>> {\n return (dispatch, getState) => {\n const paths = getNavigationAttributesEditorPath(getState());\n\n if (_.isEmpty({...generalAttrs, ...storageAttrs})) {\n console.warn(\n `Please check your parameters: ${JSON.stringify({\n path: paths,\n attributes: generalAttrs,\n })}`,\n );\n return Promise.resolve();\n }\n\n const cluster = getCluster(getState());\n\n const attributesMap = getNavigationAttributesEditorAttributes(getState());\n const {in_memory_mode, tablet_cell_bundle, ...restGeneralAttrs} = generalAttrs;\n\n const requests = _.reduce(\n paths,\n (acc, path) => {\n const attrs = attributesMap[path] || {};\n const newAttrs = {...restGeneralAttrs, ...storageAttrs};\n const type = ypath.getValue(attrs, '/@type');\n const isDynamic = ypath.getValue(attrs, '/@dynamic');\n const isDynTable = type === 'table' && isDynamic;\n if (in_memory_mode !== undefined && isDynTable) {\n Object.assign(newAttrs, {in_memory_mode});\n }\n if (tablet_cell_bundle !== undefined && (type === 'map_node' || isDynTable)) {\n Object.assign(newAttrs, {tablet_cell_bundle});\n }\n\n _.forEach(newAttrs, (value, key) => {\n acc.push(prepareSetCommandForBatch(`${path}/@${key}`, value, EDIT_MARKER));\n });\n return acc;\n },\n [] as Array<BatchSubRequest>,\n );\n\n const staticTables = getNavigationAttributesEditorStaticTables(getState());\n\n return executeBatchWithRetries(YTApiId.attributesEditorSet, requests)\n .then((res): Promise<unknown> => {\n const error = getBatchError(res, `Cannot set attributes for ${paths}`);\n if (error) {\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_ERROR,\n data: error,\n });\n return Promise.reject(error);\n }\n if (!runMerge || !staticTables.length || _.isEmpty(storageAttrs)) {\n return Promise.resolve(res);\n }\n\n const prepareMergeParams = (path: string) => {\n const sorted = ypath.getValue(attributesMap[path], '/@sorted');\n return {\n spec: Object.assign(\n {\n input_table_paths: [path],\n output_table_path: path,\n force_transform: true,\n },\n sorted ? {mode: 'sorted'} : {},\n ),\n ...EDIT_MERGE_MARKER,\n };\n };\n\n if (staticTables.length < 6) {\n const promises = _.map(staticTables, (path) => {\n return wrapApiPromiseByToaster(yt.v3.merge(prepareMergeParams(path)), {\n toasterName: 'storage_attrs_' + path,\n successContent(res: string) {\n const opId = JSON.parse(res);\n return (\n <AppStoreProvider>\n <OperationShortInfo\n id={opId}\n output_attribute_name={'/spec/output_table_path'}\n />\n </AppStoreProvider>\n );\n },\n successTitle: 'Merge operation is started',\n errorTitle: 'Merge operation is failed',\n autoHide: false,\n });\n });\n return Promise.all(promises);\n } else {\n const requests = _.map(staticTables, (path) => {\n return {\n command: 'merge' as const,\n parameters: prepareMergeParams(path),\n };\n });\n return executeBatchWithRetries(YTApiId.attributesEditorMerge, requests).then(\n (results: any) => {\n const error = getBatchError(results, 'Failed to start some operations');\n if (error) {\n throw error;\n }\n\n const toaster = new Toaster();\n toaster.add({\n type: 'success',\n name: 'merge_' + staticTables.join(','),\n title: `${staticTables.length} operations are started`,\n content: (\n <span>\n Please visit\n <Link url={`/${cluster}/operations`}> operations </Link>\n page to see more details\n </span>\n ),\n });\n },\n );\n }\n })\n .then(() => {\n dispatch(updateView());\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n data: {paths: undefined, visible: false},\n });\n })\n .catch((e: any) => {\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_ERROR,\n data: e,\n });\n return Promise.reject(e);\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_uikit","_ypath","_yt","_attributesEditor","_attributesEditor2","_utils","_OperationShortInfo","_AppStoreProvider","_index","_Link","_global","_cypressAttributes","_constants","_executeBatch","_rumWrapApi","_jsxRuntime","obj","__esModule","default","EDITABLE_ATTRIBUTES","showNavigationAttributesEditor","paths","dispatch","type","NAVIGATION_ATTRIBUTES_EDITOR_REQUEST","requests","_map","path","command","parameters","attributes","executeBatchWithRetries","YTApiId","attributesEditorGetAttrs","errorTitle","then","results","error","getBatchError","attributesMap","_reduce","acc","index","$attributes","output","NAVIGATION_ATTRIBUTES_EDITOR_SUCCESS","data","NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL","visible","e","NAVIGATION_ATTRIBUTES_EDITOR_ERROR","toaster","Toaster","add","name","_join","title","content","message","actions","label","onClick","showErrorPopup","autoHiding","hideNavigationAttributesEditor","undefined","EDIT_MARKER","makeUiMarker","concat","Page","NAVIGATION","EDIT_MERGE_MARKER","navigationSetNodeAttributes","generalAttrs","storageAttrs","runMerge","getState","getNavigationAttributesEditorPath","_isEmpty","_objectSpread","console","warn","JSON","stringify","Promise","resolve","cluster","getCluster","getNavigationAttributesEditorAttributes","in_memory_mode","tablet_cell_bundle","restGeneralAttrs","_objectWithoutProperties","_excluded","attrs","newAttrs","ypath","getValue","isDynamic","isDynTable","Object","assign","_forEach","value","key","push","prepareSetCommandForBatch","staticTables","getNavigationAttributesEditorStaticTables","attributesEditorSet","res","reject","length","prepareMergeParams","sorted","spec","input_table_paths","output_table_path","force_transform","mode","promises","wrapApiPromiseByToaster","yt","v3","merge","toasterName","successContent","opId","parse","_jsx","AppStoreProvider","children","OperationShortInfo","id","output_attribute_name","successTitle","autoHide","all","_requests","attributesEditorMerge","join","_jsxs","Link","url","updateView"],"sources":["attributes-editor.tsx"],"sourcesContent":["import React from 'react';\nimport _ from 'lodash';\nimport {ThunkAction} from 'redux-thunk';\n\nimport {Toaster} from '@gravity-ui/uikit';\nimport ypath from '../../../../common/thor/ypath';\n\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {\n NAVIGATION_ATTRIBUTES_EDITOR_ERROR,\n NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n NAVIGATION_ATTRIBUTES_EDITOR_REQUEST,\n NAVIGATION_ATTRIBUTES_EDITOR_SUCCESS,\n} from '../../../../constants/navigation/modals/attributes-editor';\nimport {RootState} from '../../../../store/reducers';\nimport {NavAttrEditorAction} from '../../../../store/reducers/navigation/modals/attributes-editor';\nimport {\n getNavigationAttributesEditorAttributes,\n getNavigationAttributesEditorPath,\n getNavigationAttributesEditorStaticTables,\n} from '../../../../store/selectors/navigation/modals/attributes-editor';\nimport {getBatchError, showErrorPopup, wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {OperationShortInfo} from '../../../../pages/components/OperationShortInfo/OperationShortInfo';\nimport {AppStoreProvider} from '../../../../containers/App/AppStoreProvider';\nimport {updateView} from '../index';\nimport Link from '../../../../components/Link/Link';\nimport {getCluster} from '../../../selectors/global';\nimport {makeUiMarker, prepareSetCommandForBatch} from '../../../../utils/cypress-attributes';\nimport {Page} from '../../../../constants';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId} from '../../../../rum/rum-wrap-api';\nimport {BatchSubRequest} from '../../../../../shared/yt-types';\n\ntype ActionType<R = any> = ThunkAction<R, RootState, any, NavAttrEditorAction>;\n\nconst EDITABLE_ATTRIBUTES = [\n 'type',\n 'account',\n 'primary_medium',\n 'optimize_for',\n 'compression_codec',\n 'erasure_codec',\n 'replication_factor',\n 'tablet_cell_bundle',\n 'in_memory_mode',\n 'dynamic',\n 'sorted',\n 'annotation',\n 'annotation_path',\n 'expiration_time',\n 'expiration_timeout',\n];\n\nexport function showNavigationAttributesEditor(paths: Array<string>): ActionType {\n return (dispatch) => {\n dispatch({type: NAVIGATION_ATTRIBUTES_EDITOR_REQUEST});\n const requests = _.map(paths, (path) => {\n return {\n command: 'get' as const,\n parameters: {\n path: path + '/@',\n attributes: EDITABLE_ATTRIBUTES,\n },\n };\n });\n return executeBatchWithRetries(YTApiId.attributesEditorGetAttrs, requests, {\n errorTitle: 'Attributes cannot be loaded',\n })\n .then((results: any) => {\n const error = getBatchError(results, 'Attributes cannot be loaded');\n if (error) {\n throw error;\n }\n const attributesMap = _.reduce(\n paths,\n (acc, path, index) => {\n acc[path] = {$attributes: results[index].output};\n return acc;\n },\n {} as any,\n );\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_SUCCESS,\n data: {attributesMap, paths},\n });\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n data: {visible: true},\n });\n })\n .catch((e: any) => {\n dispatch({type: NAVIGATION_ATTRIBUTES_EDITOR_ERROR, data: e});\n const toaster = new Toaster();\n toaster.add({\n name: 'show_attrs_editor_' + _.join(paths),\n type: 'error',\n title: 'Attributes cannot be loaded',\n content: e?.message,\n actions: [\n {\n label: ' [Details]',\n onClick: () => showErrorPopup(e),\n },\n ],\n autoHiding: false,\n });\n });\n };\n}\n\nexport function hideNavigationAttributesEditor() {\n return {\n type: NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n data: {paths: undefined, visible: false},\n };\n}\n\nconst EDIT_MARKER = makeUiMarker(`${Page.NAVIGATION}:edit-attributes`);\nconst EDIT_MERGE_MARKER = makeUiMarker(`${Page.NAVIGATION}:edit-attributes:merge`);\n\nexport function navigationSetNodeAttributes(\n generalAttrs: any,\n storageAttrs: object,\n runMerge: boolean,\n): ActionType<Promise<unknown>> {\n return (dispatch, getState) => {\n const paths = getNavigationAttributesEditorPath(getState());\n\n if (_.isEmpty({...generalAttrs, ...storageAttrs})) {\n console.warn(\n `Please check your parameters: ${JSON.stringify({\n path: paths,\n attributes: generalAttrs,\n })}`,\n );\n return Promise.resolve();\n }\n\n const cluster = getCluster(getState());\n\n const attributesMap = getNavigationAttributesEditorAttributes(getState());\n const {in_memory_mode, tablet_cell_bundle, ...restGeneralAttrs} = generalAttrs;\n\n const requests = _.reduce(\n paths,\n (acc, path) => {\n const attrs = attributesMap[path] || {};\n const newAttrs = {...restGeneralAttrs, ...storageAttrs};\n const type = ypath.getValue(attrs, '/@type');\n const isDynamic = ypath.getValue(attrs, '/@dynamic');\n const isDynTable = type === 'table' && isDynamic;\n if (in_memory_mode !== undefined && isDynTable) {\n Object.assign(newAttrs, {in_memory_mode});\n }\n if (tablet_cell_bundle !== undefined && (type === 'map_node' || isDynTable)) {\n Object.assign(newAttrs, {tablet_cell_bundle});\n }\n\n _.forEach(newAttrs, (value, key) => {\n acc.push(prepareSetCommandForBatch(`${path}/@${key}`, value, EDIT_MARKER));\n });\n return acc;\n },\n [] as Array<BatchSubRequest>,\n );\n\n const staticTables = getNavigationAttributesEditorStaticTables(getState());\n\n return executeBatchWithRetries(YTApiId.attributesEditorSet, requests, {\n errorTitle: `Cannot set attributes for ${paths}`,\n })\n .then((res): Promise<unknown> => {\n const error = getBatchError(res, `Cannot set attributes for ${paths}`);\n if (error) {\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_ERROR,\n data: error,\n });\n return Promise.reject(error);\n }\n if (!runMerge || !staticTables.length || _.isEmpty(storageAttrs)) {\n return Promise.resolve(res);\n }\n\n const prepareMergeParams = (path: string) => {\n const sorted = ypath.getValue(attributesMap[path], '/@sorted');\n return {\n spec: Object.assign(\n {\n input_table_paths: [path],\n output_table_path: path,\n force_transform: true,\n },\n sorted ? {mode: 'sorted'} : {},\n ),\n ...EDIT_MERGE_MARKER,\n };\n };\n\n if (staticTables.length < 6) {\n const promises = _.map(staticTables, (path) => {\n return wrapApiPromiseByToaster(yt.v3.merge(prepareMergeParams(path)), {\n toasterName: 'storage_attrs_' + path,\n successContent(res: string) {\n const opId = JSON.parse(res);\n return (\n <AppStoreProvider>\n <OperationShortInfo\n id={opId}\n output_attribute_name={'/spec/output_table_path'}\n />\n </AppStoreProvider>\n );\n },\n successTitle: 'Merge operation is started',\n errorTitle: 'Merge operation is failed',\n autoHide: false,\n });\n });\n return Promise.all(promises);\n } else {\n const requests = _.map(staticTables, (path) => {\n return {\n command: 'merge' as const,\n parameters: prepareMergeParams(path),\n };\n });\n return executeBatchWithRetries(YTApiId.attributesEditorMerge, requests, {\n errorTitle: 'Failed to start some operations',\n }).then((results: any) => {\n const error = getBatchError(results, 'Failed to start some operations');\n if (error) {\n throw error;\n }\n\n const toaster = new Toaster();\n toaster.add({\n type: 'success',\n name: 'merge_' + staticTables.join(','),\n title: `${staticTables.length} operations are started`,\n content: (\n <span>\n Please visit\n <Link url={`/${cluster}/operations`}> operations </Link>\n page to see more details\n </span>\n ),\n });\n });\n }\n })\n .then(() => {\n dispatch(updateView());\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_PARTIAL,\n data: {paths: undefined, visible: false},\n });\n })\n .catch((e: any) => {\n dispatch({\n type: NAVIGATION_ATTRIBUTES_EDITOR_ERROR,\n data: e,\n });\n return Promise.reject(e);\n });\n };\n}\n"],"mappings":"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"}
|
@@ -25,14 +25,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
25
25
|
|
26
26
|
var requests = new _cancelHelper.default();
|
27
27
|
var toaster = new _uikit.Toaster();
|
28
|
-
function checkError(responses) {
|
29
|
-
var _splitBatchResults = (0, _utils.splitBatchResults)(responses),
|
30
|
-
error = _splitBatchResults.error;
|
31
|
-
if (error) {
|
32
|
-
return Promise.reject(error);
|
33
|
-
}
|
34
|
-
return Promise.resolve(responses);
|
35
|
-
}
|
36
28
|
function copyObjectIntoDirectory(from, to, _ref) {
|
37
29
|
var preserve_account = _ref.preserve_account;
|
38
30
|
var parts = from.split('/');
|
@@ -101,9 +93,10 @@ function copyObjects(items, copyingPath, _ref4) {
|
|
101
93
|
}
|
102
94
|
};
|
103
95
|
});
|
104
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationCopy, copyRequests, {
|
96
|
+
return (0, _utils.wrapBatchPromise)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationCopy, copyRequests, {
|
97
|
+
errorTitle: 'Failed to copy the object(s)',
|
105
98
|
saveCancelSourceCb: requests.saveCancelToken
|
106
|
-
})
|
99
|
+
}), 'Failed to copy the object(s)').then(function () {
|
107
100
|
return _yt.default.v3.commitTransaction({
|
108
101
|
transaction_id: id
|
109
102
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_yt","_uikit","_Link","_copyObject","_pathEditingPopup","_pathEditingPopup2","_navigation","_cancelHelper","_executeBatch","_rumWrapApi","_utils","_jsxRuntime","obj","__esModule","default","requests","CancelHelper","toaster","Toaster","checkError","responses","_splitBatchResults","splitBatchResults","error","Promise","reject","resolve","copyObjectIntoDirectory","from","to","_ref","preserve_account","parts","split","name","length","yt","v3","copy","parameters","source_path","preparePath","destination_path","prepareDestinationPath","cancellation","saveCancelToken","copyObjectWithRename","_ref2","copySingleObject","_ref3","lastChar","charAt","exists","path","concat","then","exist","copyObjects","items","copyingPath","_ref4","_items","_slicedToArray","startTransaction","timeout","id","copyRequests","_map","node","command","transaction_id","titleUnquoted","executeBatchWithRetries","YTApiId","navigationCopy","saveCancelSourceCb","commitTransaction","err","abortTransaction","copyObject","objectPath","onSuccess","multipleMode","_ref5","dispatch","type","COPY_OBJECT","REQUEST","SUCCESS","add","autoHiding","title","content","_jsx","Link","url","children","code","codes","CANCELLED","FAILURE","action","showErrorInModal","abortRequests","removeAllRequests","HIDE_ERROR"],"sources":["copy-object.tsx"],"sourcesContent":["import React from 'react';\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {Toaster} from '@gravity-ui/uikit';\nimport Link from '../../../../components/Link/Link';\n\nimport {COPY_OBJECT} from '../../../../constants/navigation/modals/copy-object';\nimport {showErrorInModal} from '../../../../store/actions/navigation/modals/path-editing-popup';\nimport {HIDE_ERROR} from '../../../../constants/navigation/modals/path-editing-popup';\nimport {prepareDestinationPath, preparePath} from '../../../../utils/navigation';\nimport CancelHelper from '../../../../utils/cancel-helper';\nimport _ from 'lodash';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId} from '../../../../rum/rum-wrap-api';\nimport {BatchResultsItem} from '../../../../../shared/yt-types';\nimport {splitBatchResults} from '../../../../utils/utils';\nimport {Dispatch} from 'redux';\n\nconst requests = new CancelHelper();\nconst toaster = new Toaster();\n\nfunction checkError(responses: Array<BatchResultsItem>) {\n const {error} = splitBatchResults(responses);\n if (error) {\n return Promise.reject(error);\n }\n\n return Promise.resolve(responses);\n}\n\ninterface CopyOptions {\n preserve_account?: boolean;\n}\n\nfunction copyObjectIntoDirectory(from: string, to: string, {preserve_account}: CopyOptions) {\n const parts = from.split('/');\n const name = parts[parts.length - 1];\n return yt.v3.copy({\n parameters: {\n source_path: preparePath(from),\n destination_path: prepareDestinationPath(to, name),\n preserve_account,\n },\n cancellation: requests.saveCancelToken,\n });\n}\n\nfunction copyObjectWithRename(from: string, to: string, {preserve_account}: CopyOptions) {\n return yt.v3.copy({\n parameters: {\n source_path: preparePath(from),\n destination_path: to,\n preserve_account,\n },\n cancellation: requests.saveCancelToken,\n });\n}\n\nfunction copySingleObject(from: string, to: string, {preserve_account}: CopyOptions) {\n const lastChar = to.charAt(to.length - 1);\n\n if (lastChar === '/') {\n return copyObjectIntoDirectory(from, to, {preserve_account});\n }\n\n return yt.v3\n .exists({parameters: {path: `${to}&`}, cancellation: requests.saveCancelToken})\n .then((exist: boolean) => {\n return exist\n ? copyObjectIntoDirectory(from, to, {preserve_account})\n : copyObjectWithRename(from, to, {preserve_account});\n });\n}\n\nfunction copyObjects(\n items: Array<{path: string; titleUnquoted: string}>,\n copyingPath: string,\n {preserve_account}: CopyOptions,\n) {\n if (items.length === 1) {\n const [{path}] = items;\n return copySingleObject(path, copyingPath, {preserve_account});\n }\n\n return yt.v3.startTransaction({timeout: 120000}).then((id: string) => {\n const copyRequests = _.map(items, (node) => {\n return {\n command: 'copy' as const,\n parameters: {\n transaction_id: id,\n source_path: preparePath(node.path),\n destination_path: prepareDestinationPath(copyingPath, node.titleUnquoted),\n preserve_account,\n },\n };\n });\n\n return executeBatchWithRetries(YTApiId.navigationCopy, copyRequests, {\n saveCancelSourceCb: requests.saveCancelToken,\n })\n .then(checkError)\n .then(() => yt.v3.commitTransaction({transaction_id: id}))\n .catch((err) =>\n yt.v3.abortTransaction({transaction_id: id}).then(() => Promise.reject(err)),\n );\n });\n}\n\nexport function copyObject(\n objectPath: string,\n copyingPath: string,\n onSuccess: () => void,\n multipleMode: boolean,\n items: Array<{path: string; titleUnquoted: string}>,\n {preserve_account}: CopyOptions,\n) {\n return (dispatch: Dispatch) => {\n dispatch({type: COPY_OBJECT.REQUEST});\n\n return Promise.resolve()\n .then(() =>\n multipleMode\n ? copyObjects(items, copyingPath, {preserve_account})\n : copySingleObject(objectPath, copyingPath, {preserve_account}),\n )\n .then(() => {\n dispatch({type: COPY_OBJECT.SUCCESS});\n\n if (typeof onSuccess === 'function') {\n onSuccess();\n }\n\n toaster.add({\n name: 'copy',\n autoHiding: 10000,\n type: 'success',\n title: multipleMode\n ? 'Objects were successfully copied'\n : 'Object was successfully copied',\n content: <Link url={`navigation?path=${copyingPath}`}>{copyingPath}</Link>,\n });\n })\n .catch((error) => {\n if (error.code === yt.codes.CANCELLED) {\n dispatch({\n type: COPY_OBJECT.CANCELLED,\n });\n } else {\n dispatch({type: COPY_OBJECT.FAILURE});\n\n const action = showErrorInModal(error);\n\n dispatch(action);\n }\n return Promise.reject(error);\n });\n };\n}\n\nexport function abortRequests() {\n return (dispatch: Dispatch) => {\n requests.removeAllRequests();\n\n dispatch({type: HIDE_ERROR});\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_yt","_uikit","_Link","_copyObject","_pathEditingPopup","_pathEditingPopup2","_navigation","_cancelHelper","_executeBatch","_rumWrapApi","_utils","_jsxRuntime","obj","__esModule","default","requests","CancelHelper","toaster","Toaster","copyObjectIntoDirectory","from","to","_ref","preserve_account","parts","split","name","length","yt","v3","copy","parameters","source_path","preparePath","destination_path","prepareDestinationPath","cancellation","saveCancelToken","copyObjectWithRename","_ref2","copySingleObject","_ref3","lastChar","charAt","exists","path","concat","then","exist","copyObjects","items","copyingPath","_ref4","_items","_slicedToArray","startTransaction","timeout","id","copyRequests","_map","node","command","transaction_id","titleUnquoted","wrapBatchPromise","executeBatchWithRetries","YTApiId","navigationCopy","errorTitle","saveCancelSourceCb","commitTransaction","err","abortTransaction","Promise","reject","copyObject","objectPath","onSuccess","multipleMode","_ref5","dispatch","type","COPY_OBJECT","REQUEST","resolve","SUCCESS","add","autoHiding","title","content","_jsx","Link","url","children","error","code","codes","CANCELLED","FAILURE","action","showErrorInModal","abortRequests","removeAllRequests","HIDE_ERROR"],"sources":["copy-object.tsx"],"sourcesContent":["import React from 'react';\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\nimport {Toaster} from '@gravity-ui/uikit';\nimport Link from '../../../../components/Link/Link';\n\nimport {COPY_OBJECT} from '../../../../constants/navigation/modals/copy-object';\nimport {showErrorInModal} from '../../../../store/actions/navigation/modals/path-editing-popup';\nimport {HIDE_ERROR} from '../../../../constants/navigation/modals/path-editing-popup';\nimport {prepareDestinationPath, preparePath} from '../../../../utils/navigation';\nimport CancelHelper from '../../../../utils/cancel-helper';\nimport _ from 'lodash';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId} from '../../../../rum/rum-wrap-api';\nimport {wrapBatchPromise} from '../../../../utils/utils';\nimport {Dispatch} from 'redux';\n\nconst requests = new CancelHelper();\nconst toaster = new Toaster();\n\ninterface CopyOptions {\n preserve_account?: boolean;\n}\n\nfunction copyObjectIntoDirectory(from: string, to: string, {preserve_account}: CopyOptions) {\n const parts = from.split('/');\n const name = parts[parts.length - 1];\n return yt.v3.copy({\n parameters: {\n source_path: preparePath(from),\n destination_path: prepareDestinationPath(to, name),\n preserve_account,\n },\n cancellation: requests.saveCancelToken,\n });\n}\n\nfunction copyObjectWithRename(from: string, to: string, {preserve_account}: CopyOptions) {\n return yt.v3.copy({\n parameters: {\n source_path: preparePath(from),\n destination_path: to,\n preserve_account,\n },\n cancellation: requests.saveCancelToken,\n });\n}\n\nfunction copySingleObject(from: string, to: string, {preserve_account}: CopyOptions) {\n const lastChar = to.charAt(to.length - 1);\n\n if (lastChar === '/') {\n return copyObjectIntoDirectory(from, to, {preserve_account});\n }\n\n return yt.v3\n .exists({parameters: {path: `${to}&`}, cancellation: requests.saveCancelToken})\n .then((exist: boolean) => {\n return exist\n ? copyObjectIntoDirectory(from, to, {preserve_account})\n : copyObjectWithRename(from, to, {preserve_account});\n });\n}\n\nfunction copyObjects(\n items: Array<{path: string; titleUnquoted: string}>,\n copyingPath: string,\n {preserve_account}: CopyOptions,\n) {\n if (items.length === 1) {\n const [{path}] = items;\n return copySingleObject(path, copyingPath, {preserve_account});\n }\n\n return yt.v3.startTransaction({timeout: 120000}).then((id: string) => {\n const copyRequests = _.map(items, (node) => {\n return {\n command: 'copy' as const,\n parameters: {\n transaction_id: id,\n source_path: preparePath(node.path),\n destination_path: prepareDestinationPath(copyingPath, node.titleUnquoted),\n preserve_account,\n },\n };\n });\n\n return wrapBatchPromise(\n executeBatchWithRetries(YTApiId.navigationCopy, copyRequests, {\n errorTitle: 'Failed to copy the object(s)',\n saveCancelSourceCb: requests.saveCancelToken,\n }),\n 'Failed to copy the object(s)',\n )\n .then(() => yt.v3.commitTransaction({transaction_id: id}))\n .catch((err) =>\n yt.v3.abortTransaction({transaction_id: id}).then(() => Promise.reject(err)),\n );\n });\n}\n\nexport function copyObject(\n objectPath: string,\n copyingPath: string,\n onSuccess: () => void,\n multipleMode: boolean,\n items: Array<{path: string; titleUnquoted: string}>,\n {preserve_account}: CopyOptions,\n) {\n return (dispatch: Dispatch) => {\n dispatch({type: COPY_OBJECT.REQUEST});\n\n return Promise.resolve()\n .then(() =>\n multipleMode\n ? copyObjects(items, copyingPath, {preserve_account})\n : copySingleObject(objectPath, copyingPath, {preserve_account}),\n )\n .then(() => {\n dispatch({type: COPY_OBJECT.SUCCESS});\n\n if (typeof onSuccess === 'function') {\n onSuccess();\n }\n\n toaster.add({\n name: 'copy',\n autoHiding: 10000,\n type: 'success',\n title: multipleMode\n ? 'Objects were successfully copied'\n : 'Object was successfully copied',\n content: <Link url={`navigation?path=${copyingPath}`}>{copyingPath}</Link>,\n });\n })\n .catch((error) => {\n if (error.code === yt.codes.CANCELLED) {\n dispatch({\n type: COPY_OBJECT.CANCELLED,\n });\n } else {\n dispatch({type: COPY_OBJECT.FAILURE});\n\n const action = showErrorInModal(error);\n\n dispatch(action);\n }\n return Promise.reject(error);\n });\n };\n}\n\nexport function abortRequests() {\n return (dispatch: Dispatch) => {\n requests.removeAllRequests();\n\n dispatch({type: HIDE_ERROR});\n };\n}\n"],"mappings":"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"}
|
@@ -148,7 +148,9 @@ function getRealPaths(items) {
|
|
148
148
|
}
|
149
149
|
};
|
150
150
|
});
|
151
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationDelete, requests
|
151
|
+
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationDelete, requests, {
|
152
|
+
errorTitle: 'Failed to get real paths'
|
153
|
+
}).then(function (responses) {
|
152
154
|
var error = (0, _find2.default)(responses, function (res) {
|
153
155
|
return res.error;
|
154
156
|
});
|
@@ -330,7 +332,9 @@ function permanentlyDeleteObjects(multipleInfo, transaction) {
|
|
330
332
|
}
|
331
333
|
};
|
332
334
|
});
|
333
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationDelete, requests
|
335
|
+
return (0, _utils.wrapBatchPromise)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationDelete, requests, {
|
336
|
+
errorTitle: 'Failed to delete object(s) permanently'
|
337
|
+
}), 'Failed to delete object(s) permanently').then(function () {
|
334
338
|
return _yt.default.v3.commitTransaction({
|
335
339
|
transaction_id: transaction
|
336
340
|
});
|
@@ -343,15 +347,6 @@ function permanentlyDeleteObjects(multipleInfo, transaction) {
|
|
343
347
|
});
|
344
348
|
});
|
345
349
|
}
|
346
|
-
function checkError(responses) {
|
347
|
-
var error = (0, _find2.default)(responses, function (res) {
|
348
|
-
return res.error;
|
349
|
-
});
|
350
|
-
if (error) {
|
351
|
-
return Promise.reject(error.error);
|
352
|
-
}
|
353
|
-
return Promise.resolve(responses);
|
354
|
-
}
|
355
350
|
function moveObjectsIntoTrash(multipleInfo, transaction, login) {
|
356
351
|
var setAttributesRequests = (0, _map2.default)(multipleInfo, function (node) {
|
357
352
|
var restorePath = prepareRestorePath(node.path, node.type);
|
@@ -384,9 +379,13 @@ function moveObjectsIntoTrash(multipleInfo, transaction, login) {
|
|
384
379
|
}
|
385
380
|
};
|
386
381
|
});
|
387
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationMoveToTrashRestorePath, setAttributesRequests
|
388
|
-
|
389
|
-
})
|
382
|
+
return (0, _utils.wrapBatchPromise)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationMoveToTrashRestorePath, setAttributesRequests, {
|
383
|
+
errorTitle: 'Failed to set restore path'
|
384
|
+
}), 'Failed to set restore path').then(function () {
|
385
|
+
return (0, _utils.wrapBatchPromise)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationMoveToTrash, moveRequests, {
|
386
|
+
errorTitle: 'Failed to move the object(s) to trash'
|
387
|
+
}), 'Failed to move the object(s) to trash');
|
388
|
+
}).then(function () {
|
390
389
|
return _yt.default.v3.commitTransaction({
|
391
390
|
transaction_id: transaction
|
392
391
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_yt","_interopRequireDefault","require","_react","_moment","_ypath","_Link","_uikit","_navigation","_utils","_navigation2","_navigation3","_deleteObject","_executeBatch","_rumWrapApi","_jsxRuntime","obj","__esModule","default","toaster","Toaster","prepareRestorePath","path","type","lastChar","charAt","length","SUPPRESS_REDIRECT","slice","openDeleteModal","item","multipleMode","arguments","undefined","dispatch","getState","inTrash","checkIsTrash","OPEN_DELETE_OBJECT_POPUP","data","closeDeleteModal","CLOSE_DELETE_OBJECT_POPUP","togglePermanentlyDelete","TOGGLE_PERMANENTLY_DELETE","getPath","Promise","resolve","ytApiV3Id","get","YTApiId","navigationGetPath","output_format","$value","$attributes","encode_utf8","getInfo","realPath","parsedRealPath","ypath","YPath","create","stringify","name","getKey","all","navigationGetPathInfo","attributes","getRealPath","_ref","LOAD_REAL_PATH","REQUEST","then","_ref2","_ref3","_slicedToArray","info","account","resourceUsage","SUCCESS","error","console","add","timeout","title","content","message","actions","label","onClick","showErrorPopup","FAILURE","getRealPaths","items","requests","_map","_ref4","command","parameters","concat","executeBatchWithRetries","navigationDelete","responses","_find","res","reject","multipleInfo","output","split","reverse","createDestinationPath","login","moment","unix","deleteCurrentObject","restorePath","_getState","global","navigation","_navigation$modals$de","modals","deleteObject","permanently","yt","v3","remove","destinationPath","set","preparePath","input_format","move","recursive","source_path","preserve_account","destination_path","_jsxs","children","_jsx","Link","url","_getState2","_navigation$modals$de2","transaction","DELETE_OBJECT","currentPath","getRawPath","realPathDecoded","decodeEscapedAbsPath","navigateParent","updateView","permanentlyDeleteObjects","node","transaction_id","checkError","commitTransaction","moveObjectsIntoTrash","setAttributesRequests","input","moveRequests","navigationMoveToTrashRestorePath","navigationMoveToTrash","deleteObjects","_getState3","_navigation$modals$de3","startTransaction","id"],"sources":["delete-object.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport React from 'react';\nimport moment from 'moment';\nimport ypath from '@ytsaurus/interface-helpers/lib/ypath';\n\nimport Link from '../../../../components/Link/Link';\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport {checkIsTrash, getRawPath} from '../../../../store/selectors/navigation';\nimport {showErrorPopup} from '../../../../utils/utils';\nimport {navigateParent, updateView} from '../../../../store/actions/navigation';\nimport {decodeEscapedAbsPath, preparePath} from '../../../../utils/navigation';\nimport {\n CLOSE_DELETE_OBJECT_POPUP,\n DELETE_OBJECT,\n LOAD_REAL_PATH,\n OPEN_DELETE_OBJECT_POPUP,\n SUPPRESS_REDIRECT,\n TOGGLE_PERMANENTLY_DELETE,\n} from '../../../../constants/navigation/modals/delete-object';\nimport _ from 'lodash';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\n\nconst toaster = new Toaster();\n\nfunction prepareRestorePath(path, type) {\n const lastChar = path.charAt(path.length - 1);\n\n if (type === 'link' && lastChar === SUPPRESS_REDIRECT) {\n return path.slice(0, path.length - 1);\n }\n\n return path;\n}\n\nexport function openDeleteModal(item, multipleMode = false) {\n return (dispatch, getState) => {\n const inTrash = checkIsTrash(getState());\n\n dispatch({\n type: OPEN_DELETE_OBJECT_POPUP,\n data: {item, inTrash, multipleMode},\n });\n };\n}\n\nexport function closeDeleteModal() {\n return {\n type: CLOSE_DELETE_OBJECT_POPUP,\n };\n}\n\nexport function togglePermanentlyDelete() {\n return {\n type: TOGGLE_PERMANENTLY_DELETE,\n };\n}\n\nconst getPath = (path, type) => {\n return type === 'link'\n ? Promise.resolve(path)\n : ytApiV3Id.get(YTApiId.navigationGetPath, {\n path: path + '/@path',\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n });\n};\n\nconst getInfo = (realPath) => {\n const parsedRealPath = ypath.YPath.create(realPath, 'absolute');\n const path = parsedRealPath.stringify();\n const name = parsedRealPath.getKey();\n\n return Promise.all([\n path,\n name,\n ytApiV3Id.get(YTApiId.navigationGetPathInfo, {\n path: path + '&/@',\n attributes: ['recursive_resource_usage', 'account'],\n }),\n ]);\n};\n\nexport function getRealPath({path, type}) {\n return (dispatch) => {\n dispatch({type: LOAD_REAL_PATH.REQUEST});\n\n return getPath(path, type)\n .then(getInfo)\n .then(([realPath, name, info]) => {\n const account = ypath.get(info, '/account');\n const resourceUsage = ypath.get(info, '/recursive_resource_usage');\n\n dispatch({\n type: LOAD_REAL_PATH.SUCCESS,\n data: {realPath, name, account, resourceUsage},\n });\n })\n .catch((error) => {\n console.error(error);\n toaster.add({\n type: 'error',\n name: 'real path',\n timeout: 10000,\n title: 'Could not open delete dialog.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n dispatch({\n type: LOAD_REAL_PATH.FAILURE,\n data: {error},\n });\n });\n };\n}\n\nexport function getRealPaths(items) {\n return (dispatch) => {\n dispatch({type: LOAD_REAL_PATH.REQUEST});\n\n const requests = _.map(items, ({path}) => {\n return {\n command: 'get',\n parameters: {\n path: `${path}&/@`,\n attributes: ['recursive_resource_usage', 'account', 'path', 'type'],\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n };\n });\n\n return executeBatchWithRetries(YTApiId.navigationDelete, requests)\n .then((responses) => {\n const error = _.find(responses, (res) => res.error);\n if (error) {\n return Promise.reject(error.error);\n }\n const multipleInfo = _.map(responses, (res) => {\n const path = ypath.get(res.output, '/path');\n const type = ypath.get(res.output, '/type');\n const account = ypath.get(res.output, '/account');\n const resourceUsage = ypath.get(res.output, '/recursive_resource_usage');\n const name = path.split('/').reverse()[0];\n\n return {path, account, type, name, resourceUsage};\n });\n\n return dispatch({\n type: LOAD_REAL_PATH.SUCCESS,\n data: {multipleInfo},\n });\n })\n .catch((error) => {\n console.error(error);\n toaster.add({\n type: 'error',\n name: 'real path',\n timeout: 10000,\n title: 'Could not open delete dialog.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n return dispatch({\n type: LOAD_REAL_PATH.FAILURE,\n data: {error},\n });\n });\n };\n}\n\nconst createDestinationPath = (account, name, login) =>\n `//tmp/trash/by-account/${account}/${login}/${name}_${moment().unix()}`;\n\nfunction deleteCurrentObject(path, restorePath) {\n return (dispatch, getState) => {\n const {global, navigation} = getState();\n const {permanently, name, account} = navigation.modals.deleteObject;\n const {login} = global;\n\n if (permanently) {\n return yt.v3.remove({path}).then(() => {\n toaster.add({\n type: 'success',\n name: 'delete object',\n timeout: 10000,\n title: 'Object has been permanently deleted.',\n });\n });\n } else {\n const destinationPath = createDestinationPath(account, name, login);\n\n return yt.v3\n .set(\n {\n path: preparePath(path) + '/@_restore_path',\n input_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n restorePath,\n )\n .then(() =>\n yt.v3.move({\n recursive: true,\n source_path: path,\n preserve_account: true,\n destination_path: destinationPath,\n }),\n )\n .then(() => {\n toaster.add({\n type: 'success',\n name: 'delete object',\n timeout: 10000,\n title: 'Object deleted',\n content: (\n <div>\n Object has been moved to{' '}\n <Link url={`navigation?path=${destinationPath}`}>trash</Link>\n </div>\n ),\n });\n });\n }\n };\n}\n\nexport function deleteObject() {\n return (dispatch, getState) => {\n const {navigation} = getState();\n const {realPath, item} = navigation.modals.deleteObject;\n const {transaction} = navigation.navigation;\n\n const path = preparePath(realPath, item.type);\n const restorePath = prepareRestorePath(realPath, item.type);\n\n dispatch({type: DELETE_OBJECT.REQUEST});\n\n if (transaction) {\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n\n toaster.add({\n type: 'error',\n name: 'delete object',\n timeout: 10000,\n title: 'Could not delete the object within transaction.',\n });\n }\n\n dispatch(deleteCurrentObject(path, restorePath))\n .then(() => {\n dispatch({type: DELETE_OBJECT.SUCCESS});\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n\n const currentPath = getRawPath(getState());\n const realPathDecoded = decodeEscapedAbsPath(realPath);\n\n if (currentPath === realPathDecoded) {\n dispatch(navigateParent());\n } else {\n dispatch(updateView());\n }\n })\n .catch((error) => {\n console.error(error);\n dispatch({\n type: DELETE_OBJECT.FAILURE,\n data: {error},\n });\n toaster.add({\n type: 'error',\n name: 'delete object',\n timeout: 10000,\n title: 'Could not delete the node.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n });\n };\n}\n\nfunction permanentlyDeleteObjects(multipleInfo, transaction) {\n const requests = _.map(multipleInfo, (node) => {\n const path = preparePath(node.path, node.type);\n\n return {\n command: 'remove',\n parameters: {path: path, transaction_id: transaction},\n };\n });\n\n return executeBatchWithRetries(YTApiId.navigationDelete, requests)\n .then(checkError)\n .then(() => yt.v3.commitTransaction({transaction_id: transaction}))\n .then(() => {\n toaster.add({\n type: 'success',\n name: 'delete objects',\n timeout: 10000,\n title: 'Objects have been permanently deleted.',\n });\n });\n}\n\nfunction checkError(responses) {\n const error = _.find(responses, (res) => res.error);\n if (error) {\n return Promise.reject(error.error);\n }\n\n return Promise.resolve(responses);\n}\n\nfunction moveObjectsIntoTrash(multipleInfo, transaction, login) {\n const setAttributesRequests = _.map(multipleInfo, (node) => {\n const restorePath = prepareRestorePath(node.path, node.type);\n\n return {\n command: 'set',\n parameters: {\n transaction_id: transaction,\n path: preparePath(node.path) + '/@_restore_path',\n input_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n input: restorePath,\n };\n });\n\n const moveRequests = _.map(multipleInfo, (node) => {\n const path = preparePath(node.path, node.type);\n const destinationPath = createDestinationPath(node.account, node.name, login);\n\n return {\n command: 'move',\n parameters: {\n transaction_id: transaction,\n source_path: path,\n recursive: true,\n preserve_account: true,\n destination_path: destinationPath,\n },\n };\n });\n\n return executeBatchWithRetries(YTApiId.navigationMoveToTrashRestorePath, setAttributesRequests)\n .then(checkError)\n .then(() => executeBatchWithRetries(YTApiId.navigationMoveToTrash, moveRequests))\n .then(checkError)\n .then(() => yt.v3.commitTransaction({transaction_id: transaction}))\n .then(() => {\n toaster.add({\n type: 'success',\n name: 'delete objects',\n timeout: 10000,\n title: 'Objects deleted',\n content: 'Objects have been moved to the trash',\n });\n });\n}\n\nexport function deleteObjects() {\n return (dispatch, getState) => {\n const {navigation, global} = getState();\n const {transaction} = navigation.navigation;\n const {permanently, multipleInfo} = navigation.modals.deleteObject;\n const {login} = global;\n\n if (transaction) {\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n\n toaster.add({\n type: 'error',\n name: 'delete object',\n timeout: 10000,\n title: 'Could not delete the object within transaction.',\n });\n }\n\n dispatch({type: DELETE_OBJECT.REQUEST});\n\n return yt.v3\n .startTransaction({})\n .then((id) => {\n if (permanently) {\n return permanentlyDeleteObjects(multipleInfo, id);\n }\n\n return moveObjectsIntoTrash(multipleInfo, id, login);\n })\n .then(() => {\n dispatch({type: DELETE_OBJECT.SUCCESS});\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n dispatch(updateView());\n })\n .catch((error) => {\n console.error(error);\n dispatch({\n type: DELETE_OBJECT.FAILURE,\n data: {error},\n });\n toaster.add({\n type: 'error',\n name: 'delete objects',\n timeout: 10000,\n title: 'Could not delete the nodes.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_yt","_interopRequireDefault","require","_react","_moment","_ypath","_Link","_uikit","_navigation","_utils","_navigation2","_navigation3","_deleteObject","_executeBatch","_rumWrapApi","_jsxRuntime","obj","__esModule","default","toaster","Toaster","prepareRestorePath","path","type","lastChar","charAt","length","SUPPRESS_REDIRECT","slice","openDeleteModal","item","multipleMode","arguments","undefined","dispatch","getState","inTrash","checkIsTrash","OPEN_DELETE_OBJECT_POPUP","data","closeDeleteModal","CLOSE_DELETE_OBJECT_POPUP","togglePermanentlyDelete","TOGGLE_PERMANENTLY_DELETE","getPath","Promise","resolve","ytApiV3Id","get","YTApiId","navigationGetPath","output_format","$value","$attributes","encode_utf8","getInfo","realPath","parsedRealPath","ypath","YPath","create","stringify","name","getKey","all","navigationGetPathInfo","attributes","getRealPath","_ref","LOAD_REAL_PATH","REQUEST","then","_ref2","_ref3","_slicedToArray","info","account","resourceUsage","SUCCESS","error","console","add","timeout","title","content","message","actions","label","onClick","showErrorPopup","FAILURE","getRealPaths","items","requests","_map","_ref4","command","parameters","concat","executeBatchWithRetries","navigationDelete","errorTitle","responses","_find","res","reject","multipleInfo","output","split","reverse","createDestinationPath","login","moment","unix","deleteCurrentObject","restorePath","_getState","global","navigation","_navigation$modals$de","modals","deleteObject","permanently","yt","v3","remove","destinationPath","set","preparePath","input_format","move","recursive","source_path","preserve_account","destination_path","_jsxs","children","_jsx","Link","url","_getState2","_navigation$modals$de2","transaction","DELETE_OBJECT","currentPath","getRawPath","realPathDecoded","decodeEscapedAbsPath","navigateParent","updateView","permanentlyDeleteObjects","node","transaction_id","wrapBatchPromise","commitTransaction","moveObjectsIntoTrash","setAttributesRequests","input","moveRequests","navigationMoveToTrashRestorePath","navigationMoveToTrash","deleteObjects","_getState3","_navigation$modals$de3","startTransaction","id"],"sources":["delete-object.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport React from 'react';\nimport moment from 'moment';\nimport ypath from '@ytsaurus/interface-helpers/lib/ypath';\n\nimport Link from '../../../../components/Link/Link';\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport {checkIsTrash, getRawPath} from '../../../../store/selectors/navigation';\nimport {showErrorPopup, wrapBatchPromise} from '../../../../utils/utils';\nimport {navigateParent, updateView} from '../../../../store/actions/navigation';\nimport {decodeEscapedAbsPath, preparePath} from '../../../../utils/navigation';\nimport {\n CLOSE_DELETE_OBJECT_POPUP,\n DELETE_OBJECT,\n LOAD_REAL_PATH,\n OPEN_DELETE_OBJECT_POPUP,\n SUPPRESS_REDIRECT,\n TOGGLE_PERMANENTLY_DELETE,\n} from '../../../../constants/navigation/modals/delete-object';\nimport _ from 'lodash';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\n\nconst toaster = new Toaster();\n\nfunction prepareRestorePath(path, type) {\n const lastChar = path.charAt(path.length - 1);\n\n if (type === 'link' && lastChar === SUPPRESS_REDIRECT) {\n return path.slice(0, path.length - 1);\n }\n\n return path;\n}\n\nexport function openDeleteModal(item, multipleMode = false) {\n return (dispatch, getState) => {\n const inTrash = checkIsTrash(getState());\n\n dispatch({\n type: OPEN_DELETE_OBJECT_POPUP,\n data: {item, inTrash, multipleMode},\n });\n };\n}\n\nexport function closeDeleteModal() {\n return {\n type: CLOSE_DELETE_OBJECT_POPUP,\n };\n}\n\nexport function togglePermanentlyDelete() {\n return {\n type: TOGGLE_PERMANENTLY_DELETE,\n };\n}\n\nconst getPath = (path, type) => {\n return type === 'link'\n ? Promise.resolve(path)\n : ytApiV3Id.get(YTApiId.navigationGetPath, {\n path: path + '/@path',\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n });\n};\n\nconst getInfo = (realPath) => {\n const parsedRealPath = ypath.YPath.create(realPath, 'absolute');\n const path = parsedRealPath.stringify();\n const name = parsedRealPath.getKey();\n\n return Promise.all([\n path,\n name,\n ytApiV3Id.get(YTApiId.navigationGetPathInfo, {\n path: path + '&/@',\n attributes: ['recursive_resource_usage', 'account'],\n }),\n ]);\n};\n\nexport function getRealPath({path, type}) {\n return (dispatch) => {\n dispatch({type: LOAD_REAL_PATH.REQUEST});\n\n return getPath(path, type)\n .then(getInfo)\n .then(([realPath, name, info]) => {\n const account = ypath.get(info, '/account');\n const resourceUsage = ypath.get(info, '/recursive_resource_usage');\n\n dispatch({\n type: LOAD_REAL_PATH.SUCCESS,\n data: {realPath, name, account, resourceUsage},\n });\n })\n .catch((error) => {\n console.error(error);\n toaster.add({\n type: 'error',\n name: 'real path',\n timeout: 10000,\n title: 'Could not open delete dialog.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n dispatch({\n type: LOAD_REAL_PATH.FAILURE,\n data: {error},\n });\n });\n };\n}\n\nexport function getRealPaths(items) {\n return (dispatch) => {\n dispatch({type: LOAD_REAL_PATH.REQUEST});\n\n const requests = _.map(items, ({path}) => {\n return {\n command: 'get',\n parameters: {\n path: `${path}&/@`,\n attributes: ['recursive_resource_usage', 'account', 'path', 'type'],\n output_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n };\n });\n\n return executeBatchWithRetries(YTApiId.navigationDelete, requests, {\n errorTitle: 'Failed to get real paths',\n })\n .then((responses) => {\n const error = _.find(responses, (res) => res.error);\n if (error) {\n return Promise.reject(error.error);\n }\n const multipleInfo = _.map(responses, (res) => {\n const path = ypath.get(res.output, '/path');\n const type = ypath.get(res.output, '/type');\n const account = ypath.get(res.output, '/account');\n const resourceUsage = ypath.get(res.output, '/recursive_resource_usage');\n const name = path.split('/').reverse()[0];\n\n return {path, account, type, name, resourceUsage};\n });\n\n return dispatch({\n type: LOAD_REAL_PATH.SUCCESS,\n data: {multipleInfo},\n });\n })\n .catch((error) => {\n console.error(error);\n toaster.add({\n type: 'error',\n name: 'real path',\n timeout: 10000,\n title: 'Could not open delete dialog.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n return dispatch({\n type: LOAD_REAL_PATH.FAILURE,\n data: {error},\n });\n });\n };\n}\n\nconst createDestinationPath = (account, name, login) =>\n `//tmp/trash/by-account/${account}/${login}/${name}_${moment().unix()}`;\n\nfunction deleteCurrentObject(path, restorePath) {\n return (dispatch, getState) => {\n const {global, navigation} = getState();\n const {permanently, name, account} = navigation.modals.deleteObject;\n const {login} = global;\n\n if (permanently) {\n return yt.v3.remove({path}).then(() => {\n toaster.add({\n type: 'success',\n name: 'delete object',\n timeout: 10000,\n title: 'Object has been permanently deleted.',\n });\n });\n } else {\n const destinationPath = createDestinationPath(account, name, login);\n\n return yt.v3\n .set(\n {\n path: preparePath(path) + '/@_restore_path',\n input_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n restorePath,\n )\n .then(() =>\n yt.v3.move({\n recursive: true,\n source_path: path,\n preserve_account: true,\n destination_path: destinationPath,\n }),\n )\n .then(() => {\n toaster.add({\n type: 'success',\n name: 'delete object',\n timeout: 10000,\n title: 'Object deleted',\n content: (\n <div>\n Object has been moved to{' '}\n <Link url={`navigation?path=${destinationPath}`}>trash</Link>\n </div>\n ),\n });\n });\n }\n };\n}\n\nexport function deleteObject() {\n return (dispatch, getState) => {\n const {navigation} = getState();\n const {realPath, item} = navigation.modals.deleteObject;\n const {transaction} = navigation.navigation;\n\n const path = preparePath(realPath, item.type);\n const restorePath = prepareRestorePath(realPath, item.type);\n\n dispatch({type: DELETE_OBJECT.REQUEST});\n\n if (transaction) {\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n\n toaster.add({\n type: 'error',\n name: 'delete object',\n timeout: 10000,\n title: 'Could not delete the object within transaction.',\n });\n }\n\n dispatch(deleteCurrentObject(path, restorePath))\n .then(() => {\n dispatch({type: DELETE_OBJECT.SUCCESS});\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n\n const currentPath = getRawPath(getState());\n const realPathDecoded = decodeEscapedAbsPath(realPath);\n\n if (currentPath === realPathDecoded) {\n dispatch(navigateParent());\n } else {\n dispatch(updateView());\n }\n })\n .catch((error) => {\n console.error(error);\n dispatch({\n type: DELETE_OBJECT.FAILURE,\n data: {error},\n });\n toaster.add({\n type: 'error',\n name: 'delete object',\n timeout: 10000,\n title: 'Could not delete the node.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n });\n };\n}\n\nfunction permanentlyDeleteObjects(multipleInfo, transaction) {\n const requests = _.map(multipleInfo, (node) => {\n const path = preparePath(node.path, node.type);\n\n return {\n command: 'remove',\n parameters: {path: path, transaction_id: transaction},\n };\n });\n\n return wrapBatchPromise(\n executeBatchWithRetries(YTApiId.navigationDelete, requests, {\n errorTitle: 'Failed to delete object(s) permanently',\n }),\n 'Failed to delete object(s) permanently',\n )\n .then(() => yt.v3.commitTransaction({transaction_id: transaction}))\n .then(() => {\n toaster.add({\n type: 'success',\n name: 'delete objects',\n timeout: 10000,\n title: 'Objects have been permanently deleted.',\n });\n });\n}\n\nfunction moveObjectsIntoTrash(multipleInfo, transaction, login) {\n const setAttributesRequests = _.map(multipleInfo, (node) => {\n const restorePath = prepareRestorePath(node.path, node.type);\n\n return {\n command: 'set',\n parameters: {\n transaction_id: transaction,\n path: preparePath(node.path) + '/@_restore_path',\n input_format: {\n $value: 'json',\n $attributes: {\n encode_utf8: 'false',\n },\n },\n },\n input: restorePath,\n };\n });\n\n const moveRequests = _.map(multipleInfo, (node) => {\n const path = preparePath(node.path, node.type);\n const destinationPath = createDestinationPath(node.account, node.name, login);\n\n return {\n command: 'move',\n parameters: {\n transaction_id: transaction,\n source_path: path,\n recursive: true,\n preserve_account: true,\n destination_path: destinationPath,\n },\n };\n });\n\n return wrapBatchPromise(\n executeBatchWithRetries(YTApiId.navigationMoveToTrashRestorePath, setAttributesRequests, {\n errorTitle: 'Failed to set restore path',\n }),\n 'Failed to set restore path',\n )\n .then(() =>\n wrapBatchPromise(\n executeBatchWithRetries(YTApiId.navigationMoveToTrash, moveRequests, {\n errorTitle: 'Failed to move the object(s) to trash',\n }),\n 'Failed to move the object(s) to trash',\n ),\n )\n .then(() => yt.v3.commitTransaction({transaction_id: transaction}))\n .then(() => {\n toaster.add({\n type: 'success',\n name: 'delete objects',\n timeout: 10000,\n title: 'Objects deleted',\n content: 'Objects have been moved to the trash',\n });\n });\n}\n\nexport function deleteObjects() {\n return (dispatch, getState) => {\n const {navigation, global} = getState();\n const {transaction} = navigation.navigation;\n const {permanently, multipleInfo} = navigation.modals.deleteObject;\n const {login} = global;\n\n if (transaction) {\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n\n toaster.add({\n type: 'error',\n name: 'delete object',\n timeout: 10000,\n title: 'Could not delete the object within transaction.',\n });\n }\n\n dispatch({type: DELETE_OBJECT.REQUEST});\n\n return yt.v3\n .startTransaction({})\n .then((id) => {\n if (permanently) {\n return permanentlyDeleteObjects(multipleInfo, id);\n }\n\n return moveObjectsIntoTrash(multipleInfo, id, login);\n })\n .then(() => {\n dispatch({type: DELETE_OBJECT.SUCCESS});\n dispatch({type: CLOSE_DELETE_OBJECT_POPUP});\n dispatch(updateView());\n })\n .catch((error) => {\n console.error(error);\n dispatch({\n type: DELETE_OBJECT.FAILURE,\n data: {error},\n });\n toaster.add({\n type: 'error',\n name: 'delete objects',\n timeout: 10000,\n title: 'Could not delete the nodes.',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n });\n };\n}\n"],"mappings":"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"}
|
@@ -68,18 +68,20 @@ function dynTablesChangeState(paths, action) {
|
|
68
68
|
}
|
69
69
|
};
|
70
70
|
});
|
71
|
-
return (0, _utils.wrapApiPromiseByToaster)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationDynTableState, requests
|
71
|
+
return (0, _utils.wrapApiPromiseByToaster)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationDynTableState, requests, {
|
72
|
+
errorTitle: 'Failed to change dynamic table(s) state'
|
73
|
+
}), {
|
72
74
|
toasterName: 'dyn_tables_change_state_to_' + action,
|
73
75
|
successContent: '',
|
74
76
|
isBatch: true,
|
75
77
|
skipSuccessToast: true,
|
76
|
-
|
78
|
+
errorTitle: "Cannot perform ".concat(action, " action")
|
77
79
|
}).then(function () {
|
78
80
|
return (0, _utils.wrapApiPromiseByToaster)(waitWhileThereIsTransient(paths, action), {
|
79
81
|
toasterName: 'dyn_tables_wait_while_transient_' + action,
|
80
82
|
successContent: "".concat((0, _capitalize2.default)(action), " completed"),
|
81
83
|
isBatch: true,
|
82
|
-
|
84
|
+
errorTitle: "Cannot perform ".concat(action, " action")
|
83
85
|
});
|
84
86
|
}).then(function () {
|
85
87
|
dispatch((0, _index.updateView)());
|
@@ -96,14 +98,16 @@ function waitWhileThereIsTransient(paths, action) {
|
|
96
98
|
};
|
97
99
|
});
|
98
100
|
var res = (0, _utils.delayed)(function () {
|
99
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationGetTabletState, requests
|
101
|
+
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationGetTabletState, requests, {
|
102
|
+
errorTitle: 'Failed to get tablet state'
|
103
|
+
});
|
100
104
|
}, 3000);
|
101
105
|
return (0, _utils.wrapApiPromiseByToaster)(res, {
|
102
106
|
toasterName: 'dyn_tables_wait_while_transient_' + action,
|
103
107
|
successContent: "".concat((0, _capitalize2.default)(action), " completed"),
|
104
108
|
skipSuccessToast: true,
|
105
109
|
isBatch: true,
|
106
|
-
|
110
|
+
errorTitle: "Cannot perform ".concat(action, " action")
|
107
111
|
}).then(function (results) {
|
108
112
|
var toRecheck = (0, _reduce2.default)(results, function (acc, _ref2, index) {
|
109
113
|
var output = _ref2.output;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_dynTablesStateModal","require","_utils","_index","_mapNodeTs","_executeBatch","_rumWrapApi","_interopRequireDefault","obj","__esModule","default","showDynTablesStateModalByPaths","paths","action","type","DYN_TABLES_STATE_MODAL_PARTIAL","data","showModal","showDynTablesStateModalByNodes","selectedNodes","dispatch","allowedFrom","DYN_TABLES_ALLOWED_STATES_OF_ACTION","_reduce","acc","_ref","path","tabletState","push","hideDynTablesStateModal","undefined","dynTablesChangeState","requests","_map","command","concat","parameters","wrapApiPromiseByToaster","executeBatchWithRetries","YTApiId","navigationDynTableState","toasterName","successContent","isBatch","skipSuccessToast","
|
1
|
+
{"version":3,"names":["_dynTablesStateModal","require","_utils","_index","_mapNodeTs","_executeBatch","_rumWrapApi","_interopRequireDefault","obj","__esModule","default","showDynTablesStateModalByPaths","paths","action","type","DYN_TABLES_STATE_MODAL_PARTIAL","data","showModal","showDynTablesStateModalByNodes","selectedNodes","dispatch","allowedFrom","DYN_TABLES_ALLOWED_STATES_OF_ACTION","_reduce","acc","_ref","path","tabletState","push","hideDynTablesStateModal","undefined","dynTablesChangeState","requests","_map","command","concat","parameters","wrapApiPromiseByToaster","executeBatchWithRetries","YTApiId","navigationDynTableState","errorTitle","toasterName","successContent","isBatch","skipSuccessToast","then","waitWhileThereIsTransient","_capitalize","updateView","res","delayed","navigationGetTabletState","results","toRecheck","_ref2","index","output","length","Promise","resolve"],"sources":["dyn-tables-state-modal.ts"],"sourcesContent":["import _ from 'lodash';\nimport {ThunkAction} from 'redux-thunk';\nimport {\n DynTablesStateModalAction,\n DynTablesStateModalState,\n TabletStateAction,\n TabletStateType,\n} from '../../../../store/reducers/navigation/modals/dyn-tables-state-modal';\nimport {RootState} from '../../../../store/reducers';\nimport {DYN_TABLES_STATE_MODAL_PARTIAL} from '../../../../constants/navigation/modals/dyn-tables-state-modal';\nimport {delayed, wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {updateView} from '../index';\nimport {DYN_TABLES_ALLOWED_STATES_OF_ACTION} from '../../../selectors/navigation/content/map-node-ts';\nimport {executeBatchWithRetries} from '../../execute-batch';\nimport {YTApiId} from '../../../../rum/rum-wrap-api';\n\ntype DynTablesStateThunkAction = ThunkAction<any, RootState, any, DynTablesStateModalAction>;\n\nexport function showDynTablesStateModalByPaths(\n paths: Array<string>,\n action: Required<DynTablesStateModalState>['action'],\n): DynTablesStateModalAction {\n return {\n type: DYN_TABLES_STATE_MODAL_PARTIAL,\n data: {paths, action, showModal: true},\n };\n}\n\nexport function showDynTablesStateModalByNodes(\n action: Required<DynTablesStateModalState>['action'],\n selectedNodes: Array<{path: string; tabletState: TabletStateType}>,\n): DynTablesStateThunkAction {\n return (dispatch) => {\n const allowedFrom = DYN_TABLES_ALLOWED_STATES_OF_ACTION[action];\n const paths = _.reduce(\n selectedNodes,\n (acc, {path, tabletState}) => {\n if (tabletState && allowedFrom[tabletState]) {\n acc.push(path);\n }\n return acc;\n },\n [] as Array<string>,\n );\n\n dispatch({\n type: DYN_TABLES_STATE_MODAL_PARTIAL,\n data: {paths, action, showModal: true},\n });\n };\n}\n\nexport function hideDynTablesStateModal() {\n return {\n type: DYN_TABLES_STATE_MODAL_PARTIAL,\n data: {paths: [], action: undefined, showModal: false},\n };\n}\n\nexport function dynTablesChangeState(\n paths: Array<string>,\n action: TabletStateAction,\n): DynTablesStateThunkAction {\n return (dispatch) => {\n const requests = _.map(paths, (path) => {\n return {\n command: `${action}_table` as const,\n parameters: {path},\n };\n });\n\n return wrapApiPromiseByToaster(\n executeBatchWithRetries(YTApiId.navigationDynTableState, requests, {\n errorTitle: 'Failed to change dynamic table(s) state',\n }),\n {\n toasterName: 'dyn_tables_change_state_to_' + action,\n successContent: '',\n isBatch: true,\n skipSuccessToast: true,\n errorTitle: `Cannot perform ${action} action`,\n },\n )\n .then(() => {\n return wrapApiPromiseByToaster(waitWhileThereIsTransient(paths, action), {\n toasterName: 'dyn_tables_wait_while_transient_' + action,\n successContent: `${_.capitalize(action)} completed`,\n isBatch: true,\n errorTitle: `Cannot perform ${action} action`,\n });\n })\n .then(() => {\n dispatch(updateView());\n });\n };\n}\n\nfunction waitWhileThereIsTransient(paths: Array<string>, action: TabletStateAction): Promise<void> {\n const requests = _.map(paths, (path) => {\n return {\n command: 'get' as const,\n parameters: {path: `${path}/@tablet_state`},\n };\n });\n\n const res = delayed(\n () =>\n executeBatchWithRetries(YTApiId.navigationGetTabletState, requests, {\n errorTitle: 'Failed to get tablet state',\n }),\n 3000,\n ) as any;\n\n return wrapApiPromiseByToaster<Array<{output: string}>>(res, {\n toasterName: 'dyn_tables_wait_while_transient_' + action,\n successContent: `${_.capitalize(action)} completed`,\n skipSuccessToast: true,\n isBatch: true,\n errorTitle: `Cannot perform ${action} action`,\n }).then((results) => {\n const toRecheck = _.reduce(\n results,\n (acc, {output}, index) => {\n if (output === 'transient') {\n acc.push(paths[index]);\n }\n return acc;\n },\n [] as typeof paths,\n );\n\n if (toRecheck.length) {\n return waitWhileThereIsTransient(toRecheck, action);\n }\n return Promise.resolve();\n });\n}\n"],"mappings":"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"}
|
@@ -26,14 +26,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
26
26
|
|
27
27
|
var requests = new _cancelHelper.default();
|
28
28
|
var toaster = new _uikit.Toaster();
|
29
|
-
function checkError(responses) {
|
30
|
-
var _splitBatchResults = (0, _utils.splitBatchResults)(responses),
|
31
|
-
error = _splitBatchResults.error;
|
32
|
-
if (error) {
|
33
|
-
return Promise.reject(error);
|
34
|
-
}
|
35
|
-
return Promise.resolve(responses);
|
36
|
-
}
|
37
29
|
function moveObjectIntoDirectory(from, to, _ref) {
|
38
30
|
var preserve_account = _ref.preserve_account;
|
39
31
|
var parts = from.split('/');
|
@@ -93,9 +85,10 @@ function moveObjects(items, to, _ref3) {
|
|
93
85
|
}
|
94
86
|
};
|
95
87
|
});
|
96
|
-
return (0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationMove, moveRequests, {
|
88
|
+
return (0, _utils.wrapBatchPromise)((0, _executeBatch.executeBatchWithRetries)(_rumWrapApi.YTApiId.navigationMove, moveRequests, {
|
89
|
+
errorTitle: 'Failed to move the object(s)',
|
97
90
|
saveCancelSourceCb: requests.saveCancelToken
|
98
|
-
})
|
91
|
+
}), 'Failed to move the object(s)').then(function () {
|
99
92
|
return _yt.default.v3.commitTransaction({
|
100
93
|
transaction_id: id
|
101
94
|
});
|