@ytsaurus/ui 1.63.0 → 1.63.1

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.
Files changed (103) hide show
  1. package/dist/public/build/assets-manifest.json +64 -64
  2. package/dist/public/build/css/7540.b48a154e.chunk.css +2 -0
  3. package/dist/public/build/css/7540.b48a154e.chunk.css.map +1 -0
  4. package/dist/public/build/css/navigation.0a141599.chunk.css +2 -0
  5. package/dist/public/build/css/navigation.0a141599.chunk.css.map +1 -0
  6. package/dist/public/build/css/{system.17b114fc.chunk.css → system.221e5d53.chunk.css} +2 -2
  7. package/dist/public/build/css/{system.17b114fc.chunk.css.map → system.221e5d53.chunk.css.map} +1 -1
  8. package/dist/public/build/js/1110.a7382226.chunk.js +2 -0
  9. package/dist/public/build/js/1110.a7382226.chunk.js.map +1 -0
  10. package/dist/public/build/js/1394.011da2d1.chunk.js +2 -0
  11. package/dist/public/build/js/1394.011da2d1.chunk.js.map +1 -0
  12. package/dist/public/build/js/2447.35b478a9.chunk.js +2 -0
  13. package/dist/public/build/js/2447.35b478a9.chunk.js.map +1 -0
  14. package/dist/public/build/js/4364.aa1ab5fb.chunk.js +2 -0
  15. package/dist/public/build/js/4364.aa1ab5fb.chunk.js.map +1 -0
  16. package/dist/public/build/js/5451.50d8f2b2.chunk.js +3 -0
  17. package/dist/public/build/js/5451.50d8f2b2.chunk.js.LICENSE.txt +5 -0
  18. package/dist/public/build/js/5451.50d8f2b2.chunk.js.map +1 -0
  19. package/dist/public/build/js/5770.0d8fda01.chunk.js +2 -0
  20. package/dist/public/build/js/5770.0d8fda01.chunk.js.map +1 -0
  21. package/dist/public/build/js/{7077.b11a392b.chunk.js → 7077.7dab612c.chunk.js} +2 -2
  22. package/dist/public/build/js/{7077.b11a392b.chunk.js.map → 7077.7dab612c.chunk.js.map} +1 -1
  23. package/dist/public/build/js/7959.e0d47dec.chunk.js +2 -0
  24. package/dist/public/build/js/7959.e0d47dec.chunk.js.map +1 -0
  25. package/dist/public/build/js/{8460.b18e700b.chunk.js → 8460.2b27e2b7.chunk.js} +2 -2
  26. package/dist/public/build/js/{8460.b18e700b.chunk.js.map → 8460.2b27e2b7.chunk.js.map} +1 -1
  27. package/dist/public/build/js/{8778.8d098a1f.chunk.js → 8778.d97acdd6.chunk.js} +2 -2
  28. package/dist/public/build/js/8778.d97acdd6.chunk.js.map +1 -0
  29. package/dist/public/build/js/accounts.badfc837.chunk.js +2 -0
  30. package/dist/public/build/js/{accounts.63268a11.chunk.js.map → accounts.badfc837.chunk.js.map} +1 -1
  31. package/dist/public/build/js/{acl.80417421.chunk.js → acl.cd1fe761.chunk.js} +2 -2
  32. package/dist/public/build/js/acl.cd1fe761.chunk.js.map +1 -0
  33. package/dist/public/build/js/cluster-menu.bf57160d.chunk.js +2 -0
  34. package/dist/public/build/js/cluster-menu.bf57160d.chunk.js.map +1 -0
  35. package/dist/public/build/js/{cluster-page-wrapper.58e8e93a.chunk.js → cluster-page-wrapper.c9e6c27c.chunk.js} +2 -2
  36. package/dist/public/build/js/{cluster-page-wrapper.58e8e93a.chunk.js.map → cluster-page-wrapper.c9e6c27c.chunk.js.map} +1 -1
  37. package/dist/public/build/js/job.31c91355.chunk.js +2 -0
  38. package/dist/public/build/js/job.31c91355.chunk.js.map +1 -0
  39. package/dist/public/build/js/main.61fc9935.js +3 -0
  40. package/dist/public/build/js/{main.34718e0a.js.map → main.61fc9935.js.map} +1 -1
  41. package/dist/public/build/js/{manage-tokens.c996037c.chunk.js → manage-tokens.e9106aad.chunk.js} +2 -2
  42. package/dist/public/build/js/{manage-tokens.c996037c.chunk.js.map → manage-tokens.e9106aad.chunk.js.map} +1 -1
  43. package/dist/public/build/js/navigation.22bd542f.chunk.js +2 -0
  44. package/dist/public/build/js/navigation.22bd542f.chunk.js.map +1 -0
  45. package/dist/public/build/js/{odin.ddcd41de.chunk.js → odin.7eefabce.chunk.js} +2 -2
  46. package/dist/public/build/js/{odin.ddcd41de.chunk.js.map → odin.7eefabce.chunk.js.map} +1 -1
  47. package/dist/public/build/js/operations.3feb2deb.chunk.js +2 -0
  48. package/dist/public/build/js/operations.3feb2deb.chunk.js.map +1 -0
  49. package/dist/public/build/js/{query-results.99804b61.chunk.js → query-results.4c207fef.chunk.js} +2 -2
  50. package/dist/public/build/js/{query-results.99804b61.chunk.js.map → query-results.4c207fef.chunk.js.map} +1 -1
  51. package/dist/public/build/js/query-tracker.badbc586.chunk.js +2 -0
  52. package/dist/public/build/js/query-tracker.badbc586.chunk.js.map +1 -0
  53. package/dist/public/build/js/{runtime.2a81b524.js → runtime.f98c3e55.js} +2 -2
  54. package/dist/public/build/js/{runtime.2a81b524.js.map → runtime.f98c3e55.js.map} +1 -1
  55. package/dist/public/build/js/scheduling.73b1257c.chunk.js +2 -0
  56. package/dist/public/build/js/scheduling.73b1257c.chunk.js.map +1 -0
  57. package/dist/public/build/js/{system.6843a1a3.chunk.js → system.25e9136a.chunk.js} +2 -2
  58. package/dist/public/build/js/system.25e9136a.chunk.js.map +1 -0
  59. package/dist/public/build/js/tablet.7401a5ec.chunk.js +2 -0
  60. package/dist/public/build/js/tablet.7401a5ec.chunk.js.map +1 -0
  61. package/dist/public/build/js/{yt-df-dialog.6b4604c0.chunk.js → yt-df-dialog.69fc013a.chunk.js} +2 -2
  62. package/dist/public/build/js/{yt-df-dialog.6b4604c0.chunk.js.map → yt-df-dialog.69fc013a.chunk.js.map} +1 -1
  63. package/dist/public/build/manifest.json +60 -60
  64. package/package.json +3 -3
  65. package/dist/public/build/css/7540.56f97199.chunk.css +0 -2
  66. package/dist/public/build/css/7540.56f97199.chunk.css.map +0 -1
  67. package/dist/public/build/css/navigation.97755959.chunk.css +0 -2
  68. package/dist/public/build/css/navigation.97755959.chunk.css.map +0 -1
  69. package/dist/public/build/js/1110.d02f593c.chunk.js +0 -2
  70. package/dist/public/build/js/1110.d02f593c.chunk.js.map +0 -1
  71. package/dist/public/build/js/1394.f5423b9c.chunk.js +0 -2
  72. package/dist/public/build/js/1394.f5423b9c.chunk.js.map +0 -1
  73. package/dist/public/build/js/2447.d0a0e8ad.chunk.js +0 -2
  74. package/dist/public/build/js/2447.d0a0e8ad.chunk.js.map +0 -1
  75. package/dist/public/build/js/4364.277e1cfa.chunk.js +0 -2
  76. package/dist/public/build/js/4364.277e1cfa.chunk.js.map +0 -1
  77. package/dist/public/build/js/5770.c5499ce7.chunk.js +0 -2
  78. package/dist/public/build/js/5770.c5499ce7.chunk.js.map +0 -1
  79. package/dist/public/build/js/7891.2ce56be7.chunk.js +0 -3
  80. package/dist/public/build/js/7891.2ce56be7.chunk.js.LICENSE.txt +0 -14
  81. package/dist/public/build/js/7891.2ce56be7.chunk.js.map +0 -1
  82. package/dist/public/build/js/7959.eb292cbd.chunk.js +0 -2
  83. package/dist/public/build/js/7959.eb292cbd.chunk.js.map +0 -1
  84. package/dist/public/build/js/8778.8d098a1f.chunk.js.map +0 -1
  85. package/dist/public/build/js/accounts.63268a11.chunk.js +0 -2
  86. package/dist/public/build/js/acl.80417421.chunk.js.map +0 -1
  87. package/dist/public/build/js/cluster-menu.e484a2ca.chunk.js +0 -2
  88. package/dist/public/build/js/cluster-menu.e484a2ca.chunk.js.map +0 -1
  89. package/dist/public/build/js/job.5ed7166b.chunk.js +0 -2
  90. package/dist/public/build/js/job.5ed7166b.chunk.js.map +0 -1
  91. package/dist/public/build/js/main.34718e0a.js +0 -3
  92. package/dist/public/build/js/navigation.364e68be.chunk.js +0 -2
  93. package/dist/public/build/js/navigation.364e68be.chunk.js.map +0 -1
  94. package/dist/public/build/js/operations.b353981f.chunk.js +0 -2
  95. package/dist/public/build/js/operations.b353981f.chunk.js.map +0 -1
  96. package/dist/public/build/js/query-tracker.fba0ec95.chunk.js +0 -2
  97. package/dist/public/build/js/query-tracker.fba0ec95.chunk.js.map +0 -1
  98. package/dist/public/build/js/scheduling.115669fe.chunk.js +0 -2
  99. package/dist/public/build/js/scheduling.115669fe.chunk.js.map +0 -1
  100. package/dist/public/build/js/system.6843a1a3.chunk.js.map +0 -1
  101. package/dist/public/build/js/tablet.40ad9054.chunk.js +0 -2
  102. package/dist/public/build/js/tablet.40ad9054.chunk.js.map +0 -1
  103. /package/dist/public/build/js/{main.34718e0a.js.LICENSE.txt → main.61fc9935.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/cluster-menu.e484a2ca.chunk.js","mappings":"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","sources":["webpack://@ytsaurus/ui/./src/ui/components/SortIcon/SortIcon.tsx","webpack://@ytsaurus/ui/./src/ui/components/templates/utils.js","webpack://@ytsaurus/ui/./src/ui/containers/ClustersMenu/ClustersMenuHeader.tsx","webpack://@ytsaurus/ui/./src/ui/store/actions/clusters-menu.ts","webpack://@ytsaurus/ui/./node_modules/@gravity-ui/icons/esm/Lock.js","webpack://@ytsaurus/ui/./src/ui/containers/ClustersMenu/ClustersMenuBody.tsx","webpack://@ytsaurus/ui/./src/ui/containers/ClustersMenu/ClustersMenu.js","webpack://@ytsaurus/ui/./src/ui/containers/ClustersMenu/HeaderLinks.tsx","webpack://@ytsaurus/ui/./src/ui/utils/tablet_cell_bundles/index.ts"],"sourcesContent":["import React from 'react';\nimport cn from 'bem-cn-lite';\n\nimport Icon from '../../components/Icon/Icon';\nimport {OrderType, nextSortOrderValue} from '../../utils/sort-helpers';\n\nimport './SortIcon.scss';\n\nconst block = cn('sort-icon');\n\nconst ICON_BY_TYPE = {\n ['']: 'sort',\n asc: 'sort-up',\n desc: 'sort-down',\n 'asc-undefined': 'arrow-to-bottom',\n 'desc-undefined': 'arrow-from-bottom',\n 'undefined-asc': 'arrow-from-top',\n 'undefined-desc': 'arrow-to-top',\n} as const;\n\ninterface Props {\n className?: string;\n label?: string;\n onChange?: (nextOrder: OrderType) => void;\n order?: OrderType;\n hidden?: boolean;\n allowUnordered?: boolean;\n withUndefined?: boolean;\n}\n\nexport default class SortIcon extends React.Component<Props> {\n onClick = () => {\n const {order, onChange, allowUnordered, withUndefined} = this.props;\n if (!onChange) {\n return;\n }\n\n const nextOrder = nextSortOrderValue(order, allowUnordered, withUndefined);\n onChange(nextOrder);\n };\n\n render() {\n const {className, label, order, hidden} = this.props;\n const icon = ICON_BY_TYPE[order || ''];\n\n return (\n <span className={block({hidden}, className)} onClick={this.onClick}>\n {label && <span className={block('label')}>{label}</span>}\n <span className={block('icon')}>\n <Icon awesome={icon} face=\"solid\" />\n </span>\n </span>\n );\n }\n}\n","import React from 'react';\nimport unipika from '../../common/thor/unipika';\nimport block from 'bem-cn-lite';\n\nimport Link from '../../components/Link/Link';\n\nimport hammer from '../../common/hammer';\nimport {showErrorPopup} from '../../utils/utils';\n\nimport './utils.scss';\n\nfunction wrapRenderMethods(templates) {\n return Object.keys(templates).reduce((newTemplates, key) => {\n newTemplates[key] = templates[key];\n\n return newTemplates;\n }, {});\n}\n\n/**\n * Template must be a scoped function, because they are bound to elements-table component instance\n * @param {ViewModel} item\n * @param {String} columnName\n */\nfunction defaultTemplate(item, columnName) {\n return String(hammer.format['ValueOrDefault'](item[columnName]));\n}\n\nfunction prepareTextProps(text, asHTML) {\n const props = {};\n\n if (asHTML) {\n // Need to render html strings\n props.dangerouslySetInnerHTML = {__html: text};\n } else {\n props.children = unipika.decode(String(text));\n }\n\n return props;\n}\n\nexport function renderText(text, settings = {}) {\n let className = block('elements-text');\n\n if (settings.mix) {\n className = className(\n false,\n block(settings.mix.block)(settings.mix.elem, {\n ...settings.mix.mods,\n }),\n );\n } else {\n className = className();\n }\n\n const textProps = prepareTextProps(text, settings.asHTML);\n\n const title = settings.title || text;\n\n return <span {...textProps} title={title} className={className} />;\n}\n\nexport function printColumnAsBytes(item, columnName) {\n const column = this.getColumn(columnName);\n return hammer.format['Bytes'](column.get(item));\n}\n\nexport function printColumnAsNumber(item, columnName) {\n const column = this.getColumn(columnName);\n return hammer.format['Number'](column.get(item));\n}\n\nexport function printColumnAsTimeDurationWithMs(item, columnName) {\n const column = this.getColumn(columnName);\n return hammer.format['TimeDuration'](column.get(item), {\n format: 'milliseconds',\n });\n}\n\nexport function printColumnAsReadableField(item, columnName) {\n const column = this.getColumn(columnName);\n return (\n <span className=\"elements-ellipsis\">\n {hammer.format['ReadableField'](column.get(item))}\n </span>\n );\n}\n\nexport function printColumnAsTime(item, columnName) {\n const value = this?.getColumn ? this.getColumn(columnName).get(item) : item[columnName];\n return <ColumnAsTime value={value} />;\n}\n\nexport function ColumnAsTime({value}) {\n return (\n <span className=\"elements-ellipsis\">\n {hammer.format['DateTime'](value, {format: 'full'})}\n </span>\n );\n}\n\nexport function printColumnAsError(error) {\n const showError = () => {\n showErrorPopup(error, {hideOopsMsg: true});\n };\n return typeof error === 'object' ? (\n <Link theme=\"ghost\" onClick={showError}>\n View\n </Link>\n ) : (\n hammer.format.NO_VALUE\n );\n}\n\n// Using prepared table data\nexport function asBytes(item, columnName) {\n return hammer.format['Bytes'](item[columnName]);\n}\n\nexport function asNumber(item, columnName) {\n return hammer.format['Number'](item[columnName]);\n}\n\nexport default {\n __default__: defaultTemplate,\n _templates: {},\n add: function (templateId, templates) {\n this._templates[templateId] = wrapRenderMethods(templates);\n },\n get: function (templateId) {\n return this._templates[templateId] || {};\n },\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport block from 'bem-cn-lite';\nimport {ConnectedProps, connect} from 'react-redux';\n\nimport Filter from '../../components/Filter/Filter';\nimport RadioButton from '../../components/RadioButton/RadioButton';\nimport {updateFilter, updateViewMode} from '../../store/actions/clusters-menu';\nimport {HeaderLinks} from '../../containers/ClustersMenu/HeaderLinks';\nimport {LINKS_ITEM_CLUSTERS} from '../../containers/ClustersMenu/header-links-items';\nimport {RootState} from '../../store/reducers';\n\nimport './ClusterMenuHeader.scss';\n\nconst b = block('cluster-menu');\n\nClustersMenuHeader.propTypes = {\n clusterFilter: PropTypes.string,\n viewMode: PropTypes.oneOf(['dashboard', 'table']).isRequired,\n updateFilter: PropTypes.func.isRequired,\n updateViewMode: PropTypes.func.isRequired,\n login: PropTypes.string,\n};\n\ntype Props = ConnectedProps<typeof connector>;\n\nfunction ClustersMenuHeader({viewMode, updateViewMode, clusterFilter, updateFilter}: Props) {\n return (\n <header className={b('header', 'elements-page__header')}>\n <div className={b('header-inner')}>\n <div className={b('filter')}>\n <div className=\"elements-filter\">\n <Filter\n value={clusterFilter}\n placeholder=\"Filter clusters\"\n onChange={updateFilter}\n />\n </div>\n </div>\n <div className={b('view')}>\n <RadioButton<'table' | 'dashboard'>\n size=\"m\"\n name=\"cluster-menu-mode\"\n value={viewMode}\n onUpdate={(value) => updateViewMode(value)}\n items={[\n {\n value: 'table',\n text: '',\n icon: {awesome: 'list'},\n },\n {\n value: 'dashboard',\n text: '',\n icon: {awesome: 'table'},\n },\n ]}\n />\n </div>\n\n <HeaderLinks currentUrl={LINKS_ITEM_CLUSTERS.href} />\n </div>\n </header>\n );\n}\n\nfunction mapStateToProps(state: RootState) {\n const {viewMode, clusterFilter} = state.clustersMenu;\n const {login} = state.global;\n return {\n viewMode,\n clusterFilter,\n login,\n };\n}\n\nconst mapDispatchToProps = {\n updateViewMode,\n updateFilter,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default connector(ClustersMenuHeader);\n","import axios from 'axios';\nimport {\n CLUSTERS_MENU_UPDATE_FILTER,\n CLUSTERS_MENU_UPDATE_VIEWMODE,\n FETCH_CLUSTER_AUTH_STATUS,\n FETCH_CLUSTER_AVAILABILITY,\n FETCH_CLUSTER_VERSIONS,\n} from '../../constants/index';\nimport {fetchClustersAvailability} from '../../pages/odin/odin-utils';\nimport {\n ClustersMenuAction,\n ClustersMenuState,\n} from '../../store/reducers/clusters-menu/clusters-menu';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../store/reducers';\n\nexport function updateViewMode(viewMode: ClustersMenuState['viewMode']) {\n return {type: CLUSTERS_MENU_UPDATE_VIEWMODE, data: viewMode};\n}\n\nexport function updateFilter(clusterFilter: ClustersMenuState['clusterFilter']) {\n return {type: CLUSTERS_MENU_UPDATE_FILTER, data: clusterFilter};\n}\n\ntype ClusterMenuThunkAction = ThunkAction<void, RootState, unknown, ClustersMenuAction>;\n\nexport function fetchClusterVersions(): ClusterMenuThunkAction {\n return (dispatch) => {\n return axios\n .request({\n method: 'get',\n url: '/api/clusters/versions',\n })\n .then(({data}) => {\n dispatch({type: FETCH_CLUSTER_VERSIONS.SUCCESS, data});\n })\n .catch(() => {\n dispatch({type: FETCH_CLUSTER_VERSIONS.FAILURE});\n });\n };\n}\n\nexport function fetchClusterAuthStatus(): ClusterMenuThunkAction {\n return (dispatch) => {\n return axios\n .request({\n method: 'get',\n url: '/api/clusters/auth-status',\n })\n .then(({data}) => {\n dispatch({type: FETCH_CLUSTER_AUTH_STATUS.SUCCESS, data});\n })\n .catch(() => {\n dispatch({type: FETCH_CLUSTER_AUTH_STATUS.FAILURE});\n });\n };\n}\n\nexport function fetchClusterAvailability(): ClusterMenuThunkAction {\n return (dispatch) => {\n return fetchClustersAvailability()\n .then(({data}) => {\n dispatch({type: FETCH_CLUSTER_AVAILABILITY.SUCCESS, data});\n })\n .catch(() => {\n dispatch({type: FETCH_CLUSTER_AVAILABILITY.FAILURE});\n });\n };\n}\n","import * as React from 'react';\nconst Lock = (props) => (React.createElement(\"svg\", Object.assign({ xmlns: \"http://www.w3.org/2000/svg\", width: 16, height: 16, fill: \"none\", viewBox: \"0 0 16 16\" }, props),\n React.createElement(\"path\", { fill: \"currentColor\", fillRule: \"evenodd\", d: \"M10.5 6V5a2.5 2.5 0 0 0-5 0v1h5ZM4 5v1a3 3 0 0 0-3 3v3a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V9a3 3 0 0 0-3-3V5a4 4 0 0 0-8 0Zm6.5 2.5H12A1.5 1.5 0 0 1 13.5 9v3a1.5 1.5 0 0 1-1.5 1.5H4A1.5 1.5 0 0 1 2.5 12V9A1.5 1.5 0 0 1 4 7.5h6.5Zm-1.75 2a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2Z\", clipRule: \"evenodd\" })));\nexport default Lock;\n","import React from 'react';\nimport {ConnectedProps, connect} from 'react-redux';\nimport block from 'bem-cn-lite';\nimport {Link} from 'react-router-dom';\n\nimport filter_ from 'lodash/filter';\nimport forEach_ from 'lodash/forEach';\nimport map_ from 'lodash/map';\nimport reduce_ from 'lodash/reduce';\nimport {Lock} from '@gravity-ui/icons';\n\n// @ts-ignore\nimport format from '@ytsaurus/interface-helpers/lib/hammer/format';\n\nimport {CLUSTER_GROUPS, CLUSTER_GROUPS_ORDER, DEFAULT_GROUP} from '../../constants/cluster-menu';\nimport {utils} from '../../common/hammer/utils';\nimport ElementsTable from '../../components/ElementsTable/ElementsTable';\nimport {\n fetchClusterAuthStatus,\n fetchClusterAvailability,\n fetchClusterVersions,\n} from '../../store/actions/clusters-menu';\nimport {CLUSTER_MENU_TABLE_ID} from '../../constants/tables';\nimport {getClusterAppearance} from '../../appearance';\nimport YT from '../../config/yt-config';\nimport './ClusterMenuBody.scss';\nimport {RootState} from '../../store/reducers';\nimport {ClusterConfigWithStatus} from '../../store/reducers/clusters-menu/clusters-menu';\nimport {getAppBrowserHistory} from '../../store/window-store';\n\nconst b = block('cluster-menu');\n\ntype Props = ConnectedProps<typeof connector>;\n\nclass ClustersMenuBody extends React.Component<Props> {\n componentDidMount() {\n const {fetchClusterVersions, fetchClusterAvailability, fetchClusterAuthStatus} = this.props;\n\n fetchClusterVersions();\n fetchClusterAuthStatus();\n if (YT.environment !== 'localmode') {\n fetchClusterAvailability();\n }\n }\n\n prepareGroups(clusters: Array<ClusterConfigWithStatus>) {\n function sortByClusterName<T extends {name: string}>(clusterA: T, clusterB: T) {\n return clusterA.name > clusterB.name ? 1 : -1;\n }\n\n const groups = reduce_(\n clusters,\n (acc, cluster) => {\n const currentGroup = cluster.group || DEFAULT_GROUP;\n acc[currentGroup] = acc[currentGroup] || [];\n acc[currentGroup].push(cluster);\n return acc;\n },\n {} as Record<string, Array<ClusterConfigWithStatus>>,\n );\n\n forEach_(groups, (clusters) => {\n clusters.sort(sortByClusterName);\n });\n\n return groups;\n }\n\n renderVersion({loadState, access, version, status}: ClusterConfigWithStatus) {\n let title;\n let text: typeof version = '—';\n if (loadState === 'loaded') {\n if (access === 'granted') {\n title = `Current cluster version: ${version}`;\n text = version;\n } else if (access === 'none' && status === 'available') {\n title = 'Please refer to Getting Started for more details';\n text = 'No access';\n } else if (access === 'none' && status !== 'available') {\n title = 'Could not load version, cluster is unavailable';\n }\n } else {\n title = 'Please wait, loading cluster version';\n }\n return (\n <div className={b('item-version')} title={title}>\n {text}\n </div>\n );\n }\n\n renderCluster(cluster: ClusterConfigWithStatus, size?: 'l') {\n const {status, access, id, name, environment, description, theme, authorized} = cluster;\n const className = b('item', {\n state: status,\n access: status === 'available' && access,\n size,\n });\n\n const clusterTheme = theme ? `cluster-color_theme_${theme}` : 'cluster-color';\n const {iconbig, icon2x} = getClusterAppearance(id);\n\n return (\n <Link key={id} className={className} to={'/' + id}>\n <div className={b('item-body')}>\n {authorized ? null : (\n <span className={b('item-auth-status')}>\n <Lock />\n </span>\n )}\n <div className={b('item-heading')}>{name}</div>\n\n <div className={b('item-image-wrapper')}>\n <div\n className={b('item-image', clusterTheme)}\n style={{\n backgroundImage: 'url(' + (iconbig || icon2x) + ')',\n }}\n />\n </div>\n\n <div className={b('item-image-veil')} />\n\n {this.renderVersion(cluster)}\n\n <div className={b('item-environment')}>\n <span>{format['ValueOrDefault'](environment)}</span>\n </div>\n\n <div className={b('item-description', 'elements-multiline-ellipsis')}>\n {description}\n </div>\n </div>\n </Link>\n );\n }\n\n renderDashboard(clusters: Array<ClusterConfigWithStatus>) {\n const clusterGroups = this.prepareGroups(clusters);\n\n const unknown = filter_(\n Object.keys(clusterGroups),\n (groupName) => !(groupName in CLUSTER_GROUPS),\n );\n\n return (\n <main key=\"body\" className={b(null, 'elements-page__content')}>\n {map_(CLUSTER_GROUPS_ORDER.concat(unknown), (groupName) => {\n const clusters = clusterGroups[groupName];\n const {caption, size} = CLUSTER_GROUPS[groupName] ?? {caption: groupName};\n\n return (\n clusters &&\n clusters.length && (\n <div key={groupName} className={b('group')}>\n <div\n className={b(\n 'heading',\n {position: 'center', size: 'l'},\n b('group-heading'),\n )}\n >\n {caption}\n </div>\n <div className={b('list')}>\n {map_(clusters, (cluster) => this.renderCluster(cluster, size))}\n </div>\n </div>\n )\n );\n })}\n </main>\n );\n }\n\n renderTable(clusters: Array<ClusterConfigWithStatus>) {\n const tableSettings = {\n css: 'cluster-menu',\n theme: 'light',\n striped: true,\n tableId: CLUSTER_MENU_TABLE_ID,\n computeKey: function (item: {name: string}) {\n return item.name;\n },\n onItemClick: function (item: {id: string}) {\n getAppBrowserHistory().push(`/${item.id}`);\n },\n columns: {\n items: {\n image: {\n align: 'center',\n caption: '',\n sort: false,\n },\n name: {\n get: function (cluster: ClusterConfigWithStatus) {\n return cluster.name;\n },\n sort: true,\n align: 'left',\n },\n environment: {\n get: function (cluster: ClusterConfigWithStatus) {\n return cluster.environment;\n },\n sort: true,\n align: 'left',\n },\n version: {\n get: function (cluster: ClusterConfigWithStatus) {\n return [cluster.version, cluster.id];\n },\n sort: true,\n align: 'right',\n },\n status: {\n get: function (cluster: ClusterConfigWithStatus) {\n return [cluster.status, cluster.id];\n },\n sort: true,\n align: 'center',\n },\n access: {\n get: function (cluster: ClusterConfigWithStatus) {\n return [cluster.access, cluster.id];\n },\n sort: true,\n align: 'center',\n },\n },\n sets: {\n default: {\n items: ['image', 'name', 'environment', 'version', 'status', 'access'],\n },\n },\n mode: 'default',\n },\n templates: {\n key: 'cluster-menu',\n data: {},\n },\n };\n\n const {sortState} = this.props;\n const table = Object.assign({}, tableSettings, {\n items: utils.sort(clusters, sortState, tableSettings.columns.items),\n columns: Object.assign({}, tableSettings.columns),\n });\n\n return (\n <main key=\"body\" className={b(null, 'elements-page__content')}>\n <div className={b('table-wrapper')}>\n <ElementsTable {...table} />\n </div>\n </main>\n );\n }\n\n renderEmptyContent() {\n const className = b('heading', {position: 'center', size: 'l'});\n return (\n <main key=\"body\" className={b(null, 'elements-page__content')}>\n <div className={b('message', className)}>No clusters matching your selection</div>\n </main>\n );\n }\n\n render() {\n const {viewMode, clusterFilter, clusters} = this.props;\n let regexp: RegExp | undefined;\n try {\n regexp = new RegExp(clusterFilter, 'i');\n } catch {}\n\n const filterByField = (field?: string) => {\n return (\n typeof field === 'string' &&\n (regexp ? field.search(regexp) > -1 : field.indexOf(clusterFilter) > -1)\n );\n };\n\n const filteredClusters = filter_(clusters, ({id, version, environment}) => {\n return [id, version, environment].some(filterByField);\n });\n\n if (viewMode === 'dashboard' && filteredClusters.length) {\n return this.renderDashboard(filteredClusters);\n } else if (viewMode === 'table' && filteredClusters.length) {\n return this.renderTable(filteredClusters);\n } else if (!filteredClusters.length) {\n return this.renderEmptyContent();\n }\n return null;\n }\n}\n\nfunction mapStateToProps(state: RootState) {\n const {viewMode, clusterFilter, clusters} = state.clustersMenu;\n return {\n viewMode,\n clusterFilter,\n clusters,\n sortState: state.tables[CLUSTER_MENU_TABLE_ID],\n };\n}\n\nconst mapDispatchToProps = {\n fetchClusterVersions,\n fetchClusterAuthStatus,\n fetchClusterAvailability,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default connector(ClustersMenuBody);\n","import React, {Fragment} from 'react';\nimport {useSelector} from 'react-redux';\n\nimport PageHead from '../../components/PageHead/PageHead';\n\nimport ClustersMenuHeader from './ClustersMenuHeader';\nimport ClustersMenuBody from './ClustersMenuBody';\nimport UIFactory from '../../UIFactory';\n\nfunction ClustersMenu() {\n const title = useSelector((state) => state.global.title);\n\n return (\n <Fragment>\n <PageHead title={title} />\n <ClustersMenuHeader />\n <ClustersMenuBody />\n {UIFactory.renderAppFooter()}\n </Fragment>\n );\n}\n\nexport default React.memo(ClustersMenu);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport block from 'bem-cn-lite';\n\nimport filter_ from 'lodash/filter';\nimport forEach_ from 'lodash/forEach';\nimport map_ from 'lodash/map';\nimport partition_ from 'lodash/partition';\n\nimport Link from '../../components/Link/Link';\nimport './ClusterMenuHeader.scss';\nimport {DropdownMenu} from '@gravity-ui/uikit';\nimport Button from '../../components/Button/Button';\nimport Icon from '../../components/Icon/Icon';\nimport {ALL_LINKS_ITEMS, HeaderLinkItem} from './header-links-items';\nimport {wrapApiPromiseByToaster} from '../../utils/utils';\nimport {ActionD} from '../../types';\n\nconst b = block('cluster-menu');\n\nHeaderLinks.propTypes = {\n currentUrl: PropTypes.string,\n showTitle: PropTypes.bool,\n};\n\ninterface Props {\n currentUrl?: string;\n showTitle?: boolean;\n}\n\nfunction getItemVisibilityOrFalse(item: HeaderLinkItem) {\n if (!item.getVisible) {\n return Promise.resolve(false);\n }\n\n return wrapApiPromiseByToaster(item.getVisible(), {\n toasterName: 'link_item_visibility_' + item.href,\n skipSuccessToast: true,\n errorContent: <span>Cannot get visibity for {item.href}. </span>,\n })\n .then((visible) => {\n return visible;\n })\n .catch(() => {\n return false;\n });\n}\n\ninterface LinksVisibilityState {\n visibilityByHref: {[href: string]: boolean};\n requestedHrefs: Set<string>;\n}\nconst linksVisibilityState: LinksVisibilityState = {\n visibilityByHref: {},\n requestedHrefs: new Set(),\n};\n\ntype LinksVisibilityAction =\n | ActionD<'add-visible-items', LinksVisibilityState['visibilityByHref']>\n | ActionD<'add-requested-hrefs', Array<string>>;\n\nfunction reducer(state: LinksVisibilityState, action: LinksVisibilityAction) {\n switch (action.type) {\n case 'add-visible-items':\n return {...state, visibilityByHref: {...state.visibilityByHref, ...action.data}};\n case 'add-requested-hrefs':\n forEach_(action.data, (href) => state.requestedHrefs.add(href));\n return {...state};\n default:\n return state;\n }\n}\n\nfunction useLinkItems(items: Array<HeaderLinkItem>) {\n const [{visibilityByHref, requestedHrefs}, dispatch] = React.useReducer(\n reducer,\n linksVisibilityState,\n );\n\n const [visible, rest] = React.useMemo(() => {\n return partition_(items, (item) => {\n return !item.getVisible || visibilityByHref[item.href];\n });\n }, [items, visibilityByHref]);\n\n React.useEffect(() => {\n const toRequest = filter_(rest, (item) => !requestedHrefs.has(item.href));\n\n if (!toRequest.length) {\n return;\n }\n\n dispatch({type: 'add-requested-hrefs', data: map_(toRequest, (item) => item.href)});\n const collected: typeof visibilityByHref = {};\n Promise.all(\n map_(toRequest, (item) => {\n return getItemVisibilityOrFalse(item).then((value) => {\n collected[item.href] = value;\n });\n }),\n ).then(() => {\n dispatch({type: 'add-visible-items', data: collected});\n });\n }, [rest]);\n\n return visible;\n}\n\nexport function HeaderLinks({currentUrl, showTitle}: Props) {\n const items = useLinkItems(ALL_LINKS_ITEMS);\n const [other, [current]] = React.useMemo(\n () => partition_(items, ({href}) => href !== currentUrl),\n [items, currentUrl],\n );\n\n return (\n <React.Fragment>\n {showTitle && Boolean(current) && <div className={b('page-name')}>{current.text}</div>}\n <div className={b('links', {theme: 'expanded'})}>\n <ul className={b('links-list', block('elements-list')({type: 'unstyled'}))}>\n {map_(other, (link) => (\n <li key={link.text}>\n <Link routed={link.routed} url={link.href} className={b('links-item')}>\n {link.text}\n </Link>\n </li>\n ))}\n </ul>\n </div>\n <div className={b('links', {theme: 'collapsed'})}>\n <DropdownMenu\n popupProps={{className: b('popup')}}\n switcher={\n <Button>\n Links&nbsp;\n <Icon awesome={'chevron-down'} />\n </Button>\n }\n items={map_(items, (item) => {\n return {action() {}, ...item};\n })}\n size={'l'}\n />\n </div>\n </React.Fragment>\n );\n}\n\nHeaderImpl.propTypes = {\n // own Props\n currentUrl: PropTypes.string,\n};\n\nfunction HeaderImpl({currentUrl, showTitle}: {currentUrl?: string; showTitle?: boolean}) {\n return (\n <div className={b('header', 'elements-page__header')}>\n <HeaderLinks currentUrl={currentUrl} showTitle={showTitle} />\n </div>\n );\n}\n\nexport const HeaderWithLinks = React.memo(HeaderImpl);\n","import UIFactory from '../../UIFactory';\nimport {Page} from '../../constants';\nimport {TabletsTab} from '../../constants/tablets';\nimport {OrderType, multiSortWithUndefined, orderTypeToOrderK} from '../sort-helpers';\n\nexport function tabletCellBundleDashboardUrl(cluster: string, bundle: string) {\n return UIFactory.makeUrlForTabletCellBundleDashboard(cluster, bundle);\n}\n\nexport function genTabletCellBundlesCellUrl(cellId: string, cluster?: string) {\n const prefix = cluster ? `/${cluster}/` : '';\n return `${prefix}${Page.TABLET_CELL_BUNDLES}/${TabletsTab.TABLET_CELLS}?id=${cellId}`;\n}\n\nfunction compareBundlesByAccount<T extends Record<string, any>>(left: T, right: T) {\n if (\n left.changelog_account === right.changelog_account &&\n left.snapshot_account === right.snapshot_account\n ) {\n return 0;\n }\n\n return left.changelog_account < right.changelog_account\n ? -1\n : left.snapshot_account < right.snapshot_account\n ? -1\n : 1;\n}\n\nexport const sortTableBundles = <T extends Record<string, any>>({\n bundles,\n column,\n columnsSortable,\n order,\n}: {\n bundles: T[];\n column: keyof T;\n columnsSortable: Set<string>;\n order: OrderType;\n}) => {\n let sorted: T[] = [];\n\n const {orderK, undefinedOrderK} = orderTypeToOrderK(order);\n\n if (column === 'changelog_account') {\n sorted = [...bundles].sort(compareBundlesByAccount);\n } else if (column === 'nodes') {\n sorted = [...bundles].sort(({nodes: l = []}, {nodes: r = []}) => l.length - r.length);\n } else if (columnsSortable.has(column as string)) {\n return multiSortWithUndefined(bundles, [{key: column, orderK, undefinedOrderK}]);\n }\n\n return (order as string).includes('asc') ? sorted : sorted.reverse();\n};\n"],"names":["block","cn","ICON_BY_TYPE","_ICON_BY_TYPE","_defineProperty","SortIcon","_React$Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","onClick","_this$props","props","order","onChange","allowUnordered","withUndefined","nextSortOrderValue","_createClass","key","value","_this$props2","this","className","label","hidden","icon","_jsxs","children","_jsx","Icon","awesome","face","React","renderText","text","settings","undefined","mix","elem","_objectSpread","mods","textProps","asHTML","dangerouslySetInnerHTML","__html","unipika","decode","String","prepareTextProps","title","printColumnAsTimeDurationWithMs","item","columnName","column","getColumn","hammer","format","get","printColumnAsReadableField","printColumnAsTime","ColumnAsTime","_ref","printColumnAsError","error","_typeof","Link","theme","showErrorPopup","hideOopsMsg","NO_VALUE","asNumber","__default__","_templates","add","templateId","templates","Object","keys","reduce","newTemplates","wrapRenderMethods","b","mapDispatchToProps","updateViewMode","viewMode","type","CLUSTERS_MENU_UPDATE_VIEWMODE","data","updateFilter","clusterFilter","CLUSTERS_MENU_UPDATE_FILTER","connect","state","_state$clustersMenu","clustersMenu","login","global","Filter","placeholder","RadioButton","size","name","onUpdate","items","HeaderLinks","currentUrl","LINKS_ITEM_CLUSTERS","href","assign","xmlns","width","height","fill","viewBox","fillRule","d","clipRule","ClustersMenuBody","fetchClusterVersions","fetchClusterAvailability","fetchClusterAuthStatus","YT","environment","clusters","sortByClusterName","clusterA","clusterB","groups","reduce_","acc","cluster","currentGroup","group","DEFAULT_GROUP","push","forEach_","sort","loadState","access","version","status","id","description","authorized","clusterTheme","_getClusterAppearance","getClusterAppearance","iconbig","icon2x","to","Lock","style","backgroundImage","renderVersion","clusterGroups","prepareGroups","unknown","filter_","groupName","CLUSTER_GROUPS","map_","CLUSTER_GROUPS_ORDER","_CLUSTER_GROUPS$group","_ref2","caption","position","renderCluster","tableSettings","css","striped","tableId","CLUSTER_MENU_TABLE_ID","computeKey","onItemClick","getAppBrowserHistory","columns","image","align","sets","default","mode","sortState","table","utils","ElementsTable","regexp","RegExp","_unused","filterByField","field","search","indexOf","filteredClusters","_ref3","some","renderDashboard","renderTable","renderEmptyContent","dispatch","axios","request","method","url","then","FETCH_CLUSTER_VERSIONS","SUCCESS","FAILURE","FETCH_CLUSTER_AUTH_STATUS","fetchClustersAvailability","FETCH_CLUSTER_AVAILABILITY","tables","ClustersMenu","useSelector","Fragment","PageHead","ClustersMenuHeader","UIFactory","renderAppFooter","linksVisibilityState","visibilityByHref","requestedHrefs","Set","reducer","action","showTitle","_React$useReducer","_React$useReducer2","_slicedToArray","_React$useReducer2$","_React$useMemo","partition_","getVisible","_React$useMemo2","visible","rest","toRequest","has","collected","Promise","all","wrapApiPromiseByToaster","toasterName","skipSuccessToast","errorContent","resolve","getItemVisibilityOrFalse","useLinkItems","ALL_LINKS_ITEMS","_React$useMemo3","_React$useMemo4","other","current","Boolean","link","routed","DropdownMenu","popupProps","switcher","Button","HeaderImpl","HeaderWithLinks","tabletCellBundleDashboardUrl","bundle","makeUrlForTabletCellBundleDashboard","genTabletCellBundlesCellUrl","cellId","prefix","Page","TABLET_CELL_BUNDLES","TabletsTab","TABLET_CELLS","compareBundlesByAccount","left","right","changelog_account","snapshot_account","sortTableBundles","bundles","columnsSortable","sorted","_orderTypeToOrderK","orderTypeToOrderK","orderK","undefinedOrderK","_toConsumableArray","_ref2$nodes","nodes","l","_ref3$nodes","r","multiSortWithUndefined","includes","reverse"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_ytsaurus_ui=self.webpackChunk_ytsaurus_ui||[]).push([[5684],{97536:(e,t,n)=>{n.d(t,{A:()=>u});var a=n(40319),r=n(18801),s=(n(77810),n(51806)),o=n(60620),i=n(64922),l=["view","size"];function u(e){var t=e.view,n=void 0===t?"flat-secondary":t,u=e.size,c=void 0===u?"m":u,d=(0,r.A)(e,l);return(0,i.jsx)(s.A,(0,a.A)((0,a.A)({view:n,size:c},d),{},{children:(0,i.jsx)(o.A,{awesome:"at"})}))}},97931:(e,t,n)=>{n.d(t,{A:()=>i}),n(77810);var a=n(76872),r=n(60620),s=n(64922),o=(0,a.A)("error-message");const i=function(e){var t=e.message,n=e.className;return(0,s.jsxs)("div",{className:o(null,n),children:[(0,s.jsx)(r.A,{awesome:"exclamation-circle"}),(0,s.jsx)("span",{className:o("message-text"),children:t})]})}},78466:(e,t,n)=>{n.d(t,{L:()=>c}),n(77810);var a=n(92423),r=n(72679),s=n(39702),o=n(40319),i=n(64922);const l=function(e){return(0,i.jsx)("svg",(0,o.A)((0,o.A)({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 16 16"},e),{},{children:(0,i.jsx)("path",{fill:"currentColor",fillRule:"evenodd",d:"M3.47 10.97a.75.75 0 1 0 1.06 1.06l3.5-3.5a.75.75 0 0 0 0-1.06l-3.5-3.5a.75.75 0 0 0-1.06 1.06L6.44 8zm5 0a.75.75 0 1 0 1.06 1.06l3.5-3.5a.75.75 0 0 0 0-1.06l-3.5-3.5a.75.75 0 0 0-1.06 1.06L11.44 8z",clipRule:"evenodd"})}))};var u=(0,n(76872).A)("yt-expanded-button"),c=function(e){var t=e.className,n=e.expanded,o=e.inline,c=e.toggleExpanded,d=e.all,p=e.showText,m=d?"Collapse All":"Collapse",h=d?"Expand All":"Expand";return(0,i.jsxs)(a.$,{className:u({inline:o},t),view:"flat-secondary",title:n?m:h,onClick:c,children:[p&&(n?m:h)+" ",(0,i.jsx)(r.I,{className:u("expand",{expanded:n}),data:d?l:s.A,size:16})]})}},38226:(e,t,n)=>{n.d(t,{A:()=>v});var a,r=n(29121),s=n(12937),o=n(10785),i=n(26718),l=n(68175),u=n(77810),c=n(76872),d=n(60620),p=n(44458),m=n(64922),h=(0,c.A)("sort-icon"),f=(a={},(0,l.A)(a,"","sort"),(0,l.A)(a,"asc","sort-up"),(0,l.A)(a,"desc","sort-down"),(0,l.A)(a,"asc-undefined","arrow-to-bottom"),(0,l.A)(a,"desc-undefined","arrow-from-bottom"),(0,l.A)(a,"undefined-asc","arrow-from-top"),(0,l.A)(a,"undefined-desc","arrow-to-top"),a),v=function(e){(0,o.A)(n,e);var t=(0,i.A)(n);function n(){var e;(0,r.A)(this,n);for(var a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];return(e=t.call.apply(t,[this].concat(s))).onClick=function(){var t=e.props,n=t.order,a=t.onChange,r=t.allowUnordered,s=t.withUndefined;a&&a((0,p.$N)(n,r,s))},e}return(0,s.A)(n,[{key:"render",value:function(){var e=this.props,t=e.className,n=e.label,a=e.order,r=e.hidden,s=f[a||""];return(0,m.jsxs)("span",{className:h({hidden:r},t),onClick:this.onClick,children:[n&&(0,m.jsx)("span",{className:h("label"),children:n}),(0,m.jsx)("span",{className:h("icon"),children:(0,m.jsx)(d.A,{awesome:s,face:"solid"})})]})}}]),n}(u.Component)},82564:(e,t,n)=>{n.d(t,{DC:()=>O});var a=n(40319),r=n(13322),s=n(9736),o=n(77810),i=n(15647),l=n(76872),u=n(60620),c=n(73822),d=n(69835),p=n(11394),m=n(11843),h=n(84162),f=n(30008),v=n(78466),g=n(64922),j=(0,l.A)("elements-toolbar"),b=(0,l.A)("job-statistics");function x(e){var t=o.useCallback((function(){return e.onTreeStateChange("collapsed")}),[e.onTreeStateChange]),n=o.useCallback((function(){return e.onTreeStateChange("expanded")}),[e.onTreeStateChange]),a=(0,i.wA)(),r=(0,o.useCallback)((function(t){return a(e.onFilterChange(t))}),[a]),s="expanded"===e.treeState||"mixed"===e.treeState;return(0,g.jsx)("div",{className:j(null,b("toolbar")),children:(0,g.jsxs)("div",{className:j("container"),children:[(0,g.jsx)("div",{className:j("component",b("filter")),children:(0,g.jsx)(h.A,{size:"m",debounce:500,value:"",onChange:r})}),(0,g.jsx)("div",{className:j("component",b("expand-collapse")),children:(0,g.jsx)("span",{className:b("expand-metrics"),children:(0,g.jsx)(v.L,{expanded:s,toggleExpanded:s?t:n})})}),e.helpUrl&&(0,g.jsx)("div",{className:j("component",b("help")),children:(0,g.jsx)(f.A,{url:e.helpUrl})})]})})}var A=n(70353);function y(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=e.measureText(t).width;return Math.max(1,Math.ceil(n))}var _=n(74360),C=n(39760),k=n.n(C),N=n(30002),w=n.n(N),S="<Root>";function I(e,t){return{name:t,prefix:e,path:e+"/"+t}}function D(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:S,a=t||{children:{},leaves:{}};return k()(e,(function(e,t){if("object"===(0,_.A)(w()(e)[0])){var r=I(n,t);a.children[r.path]=r,a=D(e,a,r.path)}else{var s=function(e,t,n){var a=I(e,t);return a.value=n,a}(n,t,e);a.leaves[s.path]=s}})),a}var T=function(e){return t=D(e),n=c.A.treeList.prepareTree(t.children,(function(e){return e.prefix})),(n=c.A.treeList.attachTreeLeaves(n,t.leaves,(function(e){return e.prefix})))[S];var t,n},E=(0,l.A)("job-statistics"),z=40;function M(e){var t=e.item.attributes.value;if(t&&t.count&&t.sum){var n=t.sum/t.count;return n<1?c.A.format.Number(n,{significantDigits:6}):c.A.format.Number(n)}return c.A.format.NO_VALUE}function F(e){var t,n=e.item,a=e.aggregation;return n.isLeafNode&&Boolean(n.attributes.value)?"avg"===a?(0,g.jsx)(M,{item:n}):c.A.format.Number(null===(t=n.attributes)||void 0===t||null===(t=t.value)||void 0===t?void 0:t[a]):c.A.format.NO_VALUE}function L(e){var t=e.item,n=e.itemState,a=e.toggleItemState,r=e.minWidth,s=void 0===r?void 0:r,i=e.renderValue,l=o.useMemo((function(){return{minWidth:s,paddingLeft:((null==t?void 0:t.level)||0)*z}}),[t.level,s]),c=o.useCallback((function(){n.empty||a()}),[n,a]);return t.isLeafNode?(0,g.jsxs)("span",{className:E("metric"),style:l,children:[(0,g.jsx)(u.A,{awesome:"chart-line",className:E("metric-icon")}),(0,g.jsx)("span",{children:i(t)})]}):(0,g.jsxs)("span",{className:E("group"),style:l,onClick:c,children:[(0,g.jsx)(v.L,{expanded:!(n.collapsed||n.empty),toggleExpanded:function(){}}),(0,g.jsx)(u.A,{awesome:n.collapsed||n.empty?"folder":"folder-open",className:E("group-icon")}),(0,g.jsx)("span",{children:i(t)})]})}var B=function(e){var t=e.visibleColumns.reduce((function(e,t){return e[t]={sort:!1,align:"right"},e}),{name:{sort:!1,align:"left"}});return{theme:"light",size:"s",striped:!1,computeKey:function(e){return e.name},tree:!0,columns:{sets:{default:{items:Object.keys(t)}},items:t,mode:"default"}}},R=function(e){var t=e.statistic,n=e.fontFamilies,a=o.useState(""),r=(0,s.A)(a,2),i=r[0],l=r[1],u=o.useState("expanded"),d=(0,s.A)(u,2),p=d[0],m=d[1],h=o.useMemo((function(){return T(t)}),[t]),f=o.useMemo((function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!e)return[];var n=c.A.treeList.filterTree(e,(function(e){return-1!==e.name.indexOf(t)}),!0),a=c.A.treeList.sortTree(n,{field:"name",asc:!0},{name:{get:function(e){return e.name}}});return c.A.treeList.flattenTree(a)}(h,i)}),[h,i]);return{minWidth:o.useMemo((function(){return function(e,t){var n,a=300,r=function(e){var t=document.createElement("canvas").getContext("2d");return t.font=e,t}('14px / 20.02px "'.concat(t.regular,'", "Helvetica Neue", Arial, Helvetica, sans-serif')),s=(0,A.A)(e);try{for(s.s();!(n=s.n()).done;){var o=n.value,i=o.isLeafNode?20:40,l=y(r,o.attributes.name);a=Math.max(a,l+i+o.level*z)}}catch(e){s.e(e)}finally{s.f()}return Math.round(1.05*a)}(f,n)}),[n,f]),items:f,treeState:p,setTreeState:m,onFilterChange:function(e){return l(e)}}};function O(e){var t=e.helpUrl,n=e.virtual,s=e.visibleColumns,l=e.fixedHeader,u=e.statistic,c=(0,i.d4)(m.Y),h=R({statistic:u,fontFamilies:c}),f=h.items,v=h.minWidth,j=h.treeState,b=h.setTreeState,A=h.onFilterChange,y=o.useMemo((function(){return{name:function(e,t,n,a){return(0,g.jsx)(L,{item:e,minWidth:v,toggleItemState:n,itemState:a,renderValue:function(e){var t;return null==e||null===(t=e.attributes)||void 0===t?void 0:t.name}})},__default__:function(e,t){return e.isLeafNode?(0,g.jsx)(F,{item:e,aggregation:t}):null}}}),[v]),_=o.useMemo((function(){return B({visibleColumns:s})}),(0,r.A)(s));return(0,g.jsx)(d.A,{children:(0,g.jsxs)("div",{className:E(),children:[(0,g.jsx)(x,{helpUrl:t,onFilterChange:A,onTreeStateChange:b,treeState:j}),(0,g.jsx)("div",{className:E("table-container"),children:(0,g.jsx)(p.A,(0,a.A)((0,a.A)({},_),{},{virtual:n,treeState:j,templates:y,items:f,css:E(),headerClassName:E("header",{fixed:l})}))})]})})}},29241:(e,t,n)=>{n.d(t,{K$:()=>f,i:()=>g,Ay:()=>j,WS:()=>v,A4:()=>m,bU:()=>h,FF:()=>p,S5:()=>d});var a=n(74360),r=n(40319),s=(n(77810),n(3659)),o=n(76872),i=n(76426),l=n(73822),u=n(48971),c=n(64922);function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=(0,o.A)("elements-text");n=t.mix?n(!1,(0,o.A)(t.mix.block)(t.mix.elem,(0,r.A)({},t.mix.mods))):n();var a=function(e,t){var n={};return t?n.dangerouslySetInnerHTML={__html:e}:n.children=s.A.decode(String(e)),n}(e,t.asHTML),i=t.title||e;return(0,c.jsx)("span",(0,r.A)((0,r.A)({},a),{},{title:i,className:n}))}function p(e,t){var n=this.getColumn(t);return l.A.format.TimeDuration(n.get(e),{format:"milliseconds"})}function m(e,t){var n=this.getColumn(t);return(0,c.jsx)("span",{className:"elements-ellipsis",children:l.A.format.ReadableField(n.get(e))})}function h(e,t){var n=null!=this&&this.getColumn?this.getColumn(t).get(e):e[t];return(0,c.jsx)(f,{value:n})}function f(e){var t=e.value;return(0,c.jsx)("span",{className:"elements-ellipsis",children:l.A.format.DateTime(t,{format:"full"})})}function v(e){return"object"===(0,a.A)(e)?(0,c.jsx)(i.A,{theme:"ghost",onClick:function(){(0,u.eW)(e,{hideOopsMsg:!0})},children:"View"}):l.A.format.NO_VALUE}function g(e,t){return l.A.format.Number(e[t])}const j={__default__:function(e,t){return String(l.A.format.ValueOrDefault(e[t]))},_templates:{},add:function(e,t){this._templates[e]=function(e){return Object.keys(e).reduce((function(t,n){return t[n]=e[n],t}),{})}(t)},get:function(e){return this._templates[e]||{}}}},11211:(e,t,n)=>{n.d(t,{A:()=>I});var a=n(29121),r=n(12937),s=n(10785),o=n(26718),i=n(77810),l=n(15647),u=n(25147),c=n.n(u),d=n(76872),p=n(65573),m=n(24503),h=n.n(m),f=n(34455),v=n.n(f),g=n(96843),j=n.n(g),b=n(65692),x=n(55740),A=n(60620),y=n(97931),_=n(36554),C=n(17790),k=n(26264),N=n(64922),w=(0,d.A)("path-editor"),S=function(e){(0,s.A)(n,e);var t=(0,o.A)(n);function n(e){var r;return(0,a.A)(this,n),(r=t.call(this,e)).hideSuggestions=function(){r.setState({inputFocus:!1,selectedIndex:-1})},r.handleInputChange=function(e){r.setState({path:e,selectedIndex:-1,inputChange:!0}),r.debounceLoading(e)},r.handleInputFocus=function(){var e=r.props.onFocus,t=r.state.path;p.A.setScope("path-editor"),r.setState({inputFocus:!0}),r.callCallback(e,t)},r.handleInputBlur=function(){var e=r.props.onBlur,t=r.state.path;p.A.setScope(r.prevScope),r.hideSuggestions(),r.callCallback(e,t)},r.handleKeyDown=function(e){switch(e.keyCode){case k.DD.ARROW_DOWN:r.selectNextSuggestion();break;case k.DD.ARROW_UP:r.selectPrevSuggestion();break;case k.DD.ENTER:r.handleEnterClick(e);break;case k.DD.ESCAPE:r.handleEscClick();break;case k.DD.TAB:r.handleTabClick(e)}},r.renderItem=function(e,t){var n=r.state,a=n.selectedIndex,s=n.actualSuggestions[e],o=s.type,i=s.dynamic,l="table"===o&&i?"table_dynamic":o,u=(0,_.DC)(s),c=e===a?"yes":"no",d=(0,_.c5)(l,s.targetPathBroken);return(0,N.jsxs)("div",{onMouseDown:function(e){r.handleInputChange(u),e.preventDefault()},className:w("item",{selected:c}),children:[(0,N.jsx)(A.A,{awesome:d}),(0,N.jsx)("span",{className:w("item-path"),children:s.path})]},t)},r.suggestionsList=i.createRef(),r.input=i.createRef(),r.debounceLoading=h()(r.debounceLoading,300),r.prevScope=null,r.state={path:e.defaultPath,actualSuggestions:[],inputFocus:!1,inputChange:!1,selectedIndex:-1},r}return(0,r.A)(n,[{key:"componentDidMount",value:function(){var e=this.props,t=e.loadSuggestionsList,n=e.customFilter,a=e.autoFocus,r=this.state.path;this.prevScope=p.A.getScope(),r&&t(r,n),a&&this._setFocus()}},{key:"componentDidUpdate",value:function(e){e.disabled&&!this.props.disabled&&this.input.current&&this._setFocus()}},{key:"componentWillUnmount",value:function(){this.props.removeActiveRequests()}},{key:"_setFocus",value:function(){this.input.current.focus()}},{key:"inputWidth",get:function(){return this.input.current&&this.input.current.offsetWidth-2}},{key:"callCallback",value:function(e){if("function"==typeof e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];return e.apply(void 0,n)}}},{key:"debounceLoading",value:function(e){var t=this.props,n=t.loadSuggestionsList,a=t.customFilter,r=t.onChange;n(e,a),this.callCallback(r,e)}},{key:"selectPrevSuggestion",value:function(){var e=this.state,t=e.selectedIndex,n=e.actualSuggestions,a=(0,_.F_)(n,t);this.setState({selectedIndex:a})}},{key:"selectNextSuggestion",value:function(){var e=this.state,t=e.selectedIndex,n=e.actualSuggestions,a=(0,_.$F)(n,t);this.setState({selectedIndex:a})}},{key:"handleEnterClick",value:function(e){e.preventDefault();var t=this.state,n=t.selectedIndex,a=t.actualSuggestions,r=this.props.onApply,s=e.target.value;if(-1===n)this.setState({path:s,selectedIndex:-1}),this.callCallback(r,s);else{var o=v()(a,(function(e,t){return t===n})),i=(0,_.DC)(o);this.handleInputChange(i)}}},{key:"handleEscClick",value:function(){var e=this.props.onCancel;this.input.current.blur(),this.callCallback(e)}},{key:"handleTabClick",value:function(e){e.preventDefault();var t=this.state.actualSuggestions;if(1===t.length){var n=(0,_.DC)(t[0]);this.handleInputChange(n)}else t.length>1&&this.selectNextSuggestion()}},{key:"renderInput",value:function(){var e=this.props,t=e.placeholder,n=e.autoFocus,a=e.hasClear,r=e.disabled,s=this.state.path;return(0,N.jsx)(b.k,{onKeyDown:this.handleKeyDown,onUpdate:this.handleInputChange,onFocus:this.handleInputFocus,onBlur:this.handleInputBlur,placeholder:t,hasClear:a,autoFocus:n,disabled:r,controlRef:this.input,value:s})}},{key:"renderSuggestions",value:function(){var e=this.state.actualSuggestions;return e.length?(0,N.jsx)(c(),{itemRenderer:this.renderItem,length:e.length,type:"simple"}):null}},{key:"renderError",value:function(){var e=this.props.errorMessage;return(0,N.jsx)(y.A,{className:w("item",{error:!0}),message:e})}},{key:"renderPopup",value:function(){var e=this.props,t=e.suggestionsError,n=e.showErrors,a=this.state,r=a.actualSuggestions,s=a.inputFocus,o=this.inputWidth||0,i=(r.length||t&&n)&&s,l=t&&n?this.renderError():this.renderSuggestions();return(0,N.jsx)(x.z,{className:w("popup"),placement:["bottom-start","top-start"],onClose:this.hideSuggestions,anchorRef:this.input,open:i,offset:[void 0,0],children:(0,N.jsx)("div",{className:w("items"),style:{width:o},ref:this.suggestionsList,children:l})})}},{key:"render",value:function(){return(0,N.jsxs)("div",{className:w(null,this.props.className),children:[this.renderInput(),this.renderPopup()]})}}],[{key:"getDerivedStateFromProps",value:function(e,t){var n={};return t.inputFocus&&t.inputChange&&Object.assign(n,{actualSuggestions:e.suggestions.length?(0,_.aA)(t.path,e.suggestions):[]}),void 0===t.path&&void 0!==e.defaultPath&&Object.assign(n,{path:e.defaultPath}),j()(n)?null:n}}]),n}(i.Component);S.defaultProps={errorMessage:"Oops, something went wrong",placeholder:"Enter the path...",suggestionsError:!1,autoFocus:!1,showErrors:!0,defaultPath:void 0,disabled:!1,hasClear:!1};const I=(0,l.Ng)((function(e){var t=e.navigation;return{suggestions:t.pathEditor.suggestions,suggestionsError:t.pathEditor.suggestionsError,errorMessage:t.pathEditor.errorMessage}}),{loadSuggestionsList:function(e,t){return function(n,a){var r,s=a().navigation.pathEditor,o=s.suggestionsPath,i=s.suggestionsLoaded;try{r=(0,_.$A)(e)}catch(e){return n({type:C.v.FAILURE,data:{message:e.message}})}if(o!==r||!i)return n({type:C.v.REQUEST}),(0,_._X)(e,t).then((function(t){n({type:C.v.SUCCESS,data:{suggestions:t,path:e,currentParentPath:r}})})).catch((function(e){n({type:C.v.FAILURE,data:{message:e.message}})}))}},removeActiveRequests:function(){return function(e){_.nH.removeAllRequests(),e({type:C.v.CANCELLED})}}})(S)},47393:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Ut});var a=n(77810),r=n(64965),s=n(69835),o=n(15647),i=n(76872),l=n(63588),u=n(40319),c=n(13322),d=n(64196),p=n(90826),m=n(16413),h=n(91326),f=n(9736),v=n(84092),g=n.n(v),j=n(78259),b=n(52699),x=n(76365),A=new x.A;function y(e){return function(t,n){var a=n().job.specification,r=a.omitNodeDirectory,s=a.omitInputTableSpecs,o=a.omitOutputTableSpecs;return t({type:b.lG}),g().v4.getJobSpec({parameters:{job_id:e,omit_node_directory:r,omit_input_table_specs:s,omit_output_table_specs:o},cancellation:A.saveCancelToken}).then((function(e){var n=j.A.getValues(e,["/scheduler_job_spec_ext","/job_spec_ext"]),a=(0,f.A)(n,2),r=a[0],s=a[1];t({type:b.Jv,data:{specification:null!=s?s:r}})})).catch((function(e){e.code===g().codes.CANCELLED?t({type:b.NF}):t({type:b.E4,data:{error:e}})}))}}function _(){return function(e){A.removeAllRequests(),e({type:b.NF})}}var C=n(4386),k=n(64922),N=(0,i.A)("job-specification");function w(e){var t=e.jobID,n=(0,o.wA)(),r=(0,o.d4)((function(e){return e.job.specification})),s=r.omitNodeDirectory,i=r.omitInputTableSpecs,l=r.omitOutputTableSpecs,u=(0,a.useCallback)((function(e){n(function(e){return function(t){A.removeAllRequests(),t({type:b.Mz}),t(y(e))}}(t)),S(e)}),[n,t]),c=(0,a.useCallback)((function(e){n(function(e){return function(t){A.removeAllRequests(),t({type:b.Bx}),t(y(e))}}(t)),S(e)}),[n,t]),d=(0,a.useCallback)((function(e){n(function(e){return function(t){A.removeAllRequests(),t({type:b.iw}),t(y(e))}}(t)),S(e)}),[n,t]);return(0,k.jsxs)("div",{className:N("toolbar"),children:[(0,k.jsx)(m.S,{size:"l",content:"Omit node directory",checked:s,onChange:u}),(0,k.jsx)(m.S,{size:"l",content:"Omit input table specs",checked:i,onChange:c}),(0,k.jsx)(m.S,{size:"l",content:"Omit output table specs",checked:l,onChange:d})]})}function S(e){e.target.blur()}function I(e){var t=e.jobID,n=(0,o.wA)(),r=(0,o.d4)((function(e){return e.job.specification})),i=r.loading,u=r.loaded,c=r.error,d=r.errorData,m=r.specification;(0,a.useEffect)((function(){return n(y(t)),function(){n(_())}}),[n,t]);var f=i&&!u,v=(0,o.d4)(C.lD);return(0,k.jsx)(s.A,{children:(0,k.jsx)("div",{className:N(),children:(0,k.jsx)("div",{className:N("content",{loading:f}),children:f?(0,k.jsx)(h.a,{}):(0,k.jsx)(l.A,{loaded:u,error:c,errorData:d,children:(0,k.jsx)(p.A,{folding:!0,settings:v,value:m,extraTools:(0,k.jsx)(w,{jobID:t})})})})})})}var D=n(35074),T=function(e){return e.job.general.job.statistics},E=n(82564),z=n(29081),M=n(7787);function F(){var e=(0,o.d4)(T);return(0,k.jsx)(E.DC,{helpUrl:(0,z.cK)()?M.Ay.docsUrls["problems:jobstatistics"]:void 0,statistic:e,visibleColumns:["min","max","last","sum","count"]})}var L=n(28640),B=n(65692),R=n(51806),O=n(60620),P=n(52797),U=n(26264),V=(0,i.A)("job-breadcrumbs");function W(e){var t=e.id,n=e.className,i=(0,r.W5)(),l=(0,o.d4)(P.dB),c=(0,r.W6)(),d=(0,a.useState)(!1),p=(0,f.A)(d,2),m=p[0],h=p[1],v=(0,a.useState)(i.params.jobID),g=(0,f.A)(v,2),j=g[0],b=g[1],x=i.params.operationID,A="".concat(x,"/").concat(j),y=(0,a.useCallback)((function(){return h(!0)}),[]),_=(0,a.useCallback)((function(e){return b(e)}),[]),C=(0,a.useCallback)((function(){return h(!1)}),[]),N=(0,a.useCallback)((function(e){e.keyCode===U.DD.ENTER&&(h(!1),c.push("/".concat(l,"/").concat(U.YW.JOB,"/").concat(A)))}),[A,c,l]),w={onBlur:C};return(0,k.jsx)(s.A,{children:(0,k.jsx)("div",{className:V(null,n),children:m?(0,k.jsx)("div",{className:V("input"),children:(0,k.jsx)(B.k,(0,u.A)((0,u.A)({},w),{},{autoFocus:!0,size:"m",value:j,onUpdate:_,onKeyDown:N}))}):(0,k.jsxs)("div",{className:V("id"),children:[(0,k.jsx)("span",{className:"elements-ellipsis",children:t})," ",(0,k.jsx)(L.A,{view:"flat-secondary",text:t,size:"m"})," ",(0,k.jsx)(R.A,{view:"flat-secondary",size:"m",onClick:y,children:(0,k.jsx)(O.A,{awesome:"pencil"})})]})})})}var J=n(80545),q=n(36161),H=n(65193),K=n.n(H),Y=n(82060),$=n(11394),Q=n(18801),X=n(18472),G=n(4176),Z=n.n(G),ee=n(36146),te=n.n(ee),ne=n(27528),ae=n.n(ne),re=n(95668),se=n.n(re),oe=n(30002),ie=n.n(oe),le=n(33497),ue=["total"],ce=function(e,t,n){return(0,u.A)({table:void 0!==n?"".concat(t,":").concat(n):t},te()(e,(function(e){return e.sum})))},de=function(e){return e.job.general.job},pe=(0,X.Mz)(de,(function(e){return j.A.getValue(e,"/statistics/user_job/pipes")||{}})),me=(0,X.Mz)(pe,(function(e){var t=e.input,n=e.output;return{read:null==t?void 0:t.idle_time.sum,write:se()(ie()(n),(function(e){return e.busy_time.sum}))}})),he=(0,X.Mz)(pe,(function(e){var t=e.input,n=e.output,a=n.total,r=(0,Q.A)(n,ue),s={input:[ce(t,"input",0)],output:ie()(r).map((function(e,t){return ce(e,"output",t)}))};if(a){var o=ce(a,"Total");o.isTotal=!0,s.output.push(o)}return s})),fe=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/statistics/user_job/cpu/user/sum")})),ve=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/statistics/user_job/cpu/wait/sum")})),ge=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/statistics/user_job/gpu/cumulative_utilization_gpu/sum")})),je=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/statistics/user_job/gpu/cumulative_power/sum")})),be=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/statistics/user_job/gpu/cumulative_memory/sum")})),xe=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/statistics/time/exec/sum")})),Ae=(0,X.Mz)([fe,xe],(function(e,t){return e/t})),ye=(0,X.Mz)([ve,xe],(function(e,t){return e/t})),_e=(0,X.Mz)(de,(function(e){return j.A.getNumberDeprecated(e,"/exec_attributes/gpu_devices/length")})),Ce=(0,X.Mz)([ge,xe],(function(e,t){return e/t})),ke=(0,X.Mz)([je,xe],(function(e,t){return e/t})),Ne=(0,X.Mz)([be,xe],(function(e,t){return e/t})),we=(0,X.Mz)([function(e){return e.job.specification.specification}],(function(e){var t=j.A.getValue(e,"/input_table_specs");return Z()(ae()(t,(function(e){var t=j.A.getValue(e,"/chunk_specs");return ae()(t,(function(e){var t=j.A.getValue(e,"/chunk_id"),n=ae()(j.A.getValue(e,"/lower_limit/key"),(function(e){return j.A.getValue(e)})),a=[j.A.getValue(e,"/lower_limit/row_index")],r=n&&0!==n.length?n:a,s=ae()(j.A.getValue(e,"/upper_limit/key"),(function(e){return j.A.getValue(e)})),o=[j.A.getValue(e,"/upper_limit/row_index")];return{id:t,from:r,to:s&&0!==s.length?s:o}}))})))})),Se=(0,X.Mz)(de,(function(e){var t=[],n=e.state;return"completed"!==n&&"failed"!==n&&"aborted"!==n&&(t.push({modalKey:"abort",name:"abort",successMessage:"Job was successfully aborted. Please wait",icon:"redo",message:"Job will be immediately aborted. Are you sure you want to proceed?",confirmationText:le.e}),t.push({modalKey:"interrupt",name:"interrupt",successMessage:"Job was successfully aborted. Please wait",icon:"hand-paper",message:"Job will be immediately interrupted. Are you sure you want to proceed?",confirmationText:le.e,optionMessage:"Interruption timeout",optionValue:1e4,optionType:"input",options:[{data:{parameters:{interrupt_timeout:1e4}},value:"timeout",text:"timeout"}]})),"running"===n&&t.push({modalKey:"abandon",name:"abandon",successMessage:"Job was successfully aborted. Please wait",icon:"trash-bin",message:"Job will be aborted, but considered as completed, output data of job will be lost. Do you want to proceed?",confirmationText:le.e}),t})),Ie=n(3659),De=(0,i.A)("job-pivot-keys"),Te=$.A,Ee=function(){return{items:{id:{name:"id",caption:"Chunk ID",align:"left"},from:{name:"from",align:"left"},to:{name:"to",align:"left"}},sets:{default:{items:["id","from","to"]}},mode:"default"}},ze=function(){var e=function(e,t){var n=Ie.A.prettyprint(e[t],{break:!1,indent:0,asHTML:!1}),a=n.split(",").join(",\n");return(0,k.jsxs)("div",{className:"unipika",children:["[",(0,k.jsx)("span",{title:a,className:"uint64 elements-ellipsis",children:n.slice(1,-1)}),"]"]})};return{from:function(t){return e(t,"from")},to:function(t){return e(t,"to")}}};function Me(){var e=(0,o.wA)(),t=(0,o.d4)((function(e){return e.job.general})).job,n=(0,o.d4)((function(e){return e.job.specification})),r=n.loading,s=n.loaded,i=n.error,u=n.errorData,c=(0,o.d4)(we);(0,a.useEffect)((function(){return e(y(t.id)),function(){e(_())}}),[e,t.id]);var d=(0,a.useMemo)(Ee,[]),p=(0,a.useMemo)(ze,[]);return(0,k.jsx)("div",{className:De({loading:r}),children:(0,k.jsx)(l.A,{loaded:s,error:i,errorData:u,children:(0,k.jsx)(Te,{size:"s",theme:"light",css:De(),virtual:!1,striped:!1,columns:d,isLoading:r,templates:p,items:c})})})}var Fe=n(76426),Le=n(73822),Be=n(78894),Re=new x.A,Oe=new Be.I,Pe=n(34121),Ue=(0,i.A)("job-competitors"),Ve=$.A;function We(e){var t=e.job,n=e.operationId,r=(0,o.d4)(P.dB),s=j.A.getValues(t,["/id","/address","/job_competition_id"]),i=(0,f.A)(s,3),l=i[0],u=i[1],c=i[2],d=Le.A.format.Address(u),p=c&&c!==l;return(0,k.jsxs)("div",{children:[(0,k.jsxs)("span",{className:Ue("id","elements-monospace elements-ellipsis"),children:[(0,k.jsx)(L.A,{text:l,theme:"flat-secondary",size:"s",title:"Copy job id"}),(0,k.jsx)(Fe.A,{routed:!0,url:"/".concat(r,"/job/").concat(n,"/").concat(l),theme:"primary",children:l})]}),(0,k.jsx)("br",{}),(0,k.jsxs)("span",{className:Ue("host","elements-monospace elements-ellipsis"),children:[(0,k.jsx)(L.A,{text:d,view:"flat-secondary",size:"s",title:"Copy host"}),d]}),p&&(0,k.jsxs)(a.Fragment,{children:[(0,k.jsx)("br",{}),(0,k.jsx)("span",{className:Ue("speculative-job-label","elements-monospace elements-ellipsis"),children:"Speculative job"})]})]})}var Je=function(){return{items:{id_address:{name:"id_address",align:"left",caption:"Id / Address",sort:!1},state:{name:"type",align:"right",sort:!0},type:{name:"type",align:"right",sort:!0}},sets:{default:{items:["id_address","type","state"]}},mode:"default"}},qe=function(e){return{id_address:function(t){return(0,k.jsx)(We,{job:t,operationId:e})},state:function(e){return(0,k.jsx)(J.A,{label:e.state})}}};function He(){var e=(0,o.wA)(),t=(0,a.useCallback)((function(e){return e.id}),[]),n=(0,o.d4)((function(e){return e.job.general})).job,r=(0,o.d4)((function(e){return e.job.competitors})),i=r.loading,u=r.loaded,c=r.error,d=r.errorData,p=r.competitors,m=n.jobCompetitionId,h=n.operationId;if(!m||!h)throw new Error("Unexpected behavior: jobCompetitionId or operationId is not defined");var f=(0,a.useMemo)(Je,[]),v=(0,a.useMemo)((function(){return qe(h)}),[h]);return(0,a.useEffect)((function(){var t,n;e((t=h,n=m,function(e){return e({type:b.vm}),g().v3.listJobs({parameters:{operation_id:t,job_competition_id:n},cancellation:Re.saveCancelToken}).then((function(t){e({type:b.vp,data:{competitors:t.jobs}})})).catch((function(t){t.code===g().codes.CANCELLED?e({type:b.Pr}):(Oe.add({theme:"danger",name:"job competitors",autoHiding:1e4,content:(null==t?void 0:t.message)||"Oops, something went wrong",title:"Failed to load job's competitors"}),e({type:b._I,data:{error:t}}))}))}))}),[e,h,m]),(0,k.jsx)(s.A,{children:(0,k.jsx)("div",{className:Ue({loading:i}),children:(0,k.jsx)(l.A,{loaded:u,error:c,errorData:d,children:(0,k.jsx)(Ve,{size:"s",theme:"light",css:Ue(),virtual:!1,striped:!1,columns:f,isLoading:i,items:p,templates:v,computeKey:t,tableId:Pe.MV})})})})}var Ke=n(29347),Ye=n.n(Ke),$e=n(73831),Qe=n.n($e),Xe=(0,i.A)("job-statistics-io"),Ge=(0,i.A)("elements-heading"),Ze=$.A,et=function(){return{items:{table:{caption:"Table",align:"left"},busy_time:{caption:"Busy time",align:"right"},bytes:{caption:"Bytes",align:"right"},idle_time:{caption:"Idle time",align:"right"}},sets:{default:{items:["table","busy_time","bytes","idle_time"]}},mode:"default"}},tt=function(){var e=function(e,t){return Le.A.format["bytes"===t?"Bytes":"TimeDuration"](e[t])};return{busy_time:function(t){return e(t,"busy_time")},bytes:function(t){return e(t,"bytes")},idle_time:function(t){return e(t,"idle_time")}}},nt=(0,X.Mz)([me,Ae,ye,_e,Ce,ke,Ne],(function(e,t,n,a,r,s,o){var i=e.read,l=e.write;return Ye()([{key:"total time waiting to read data",value:Le.A.format.TimeDuration(i)},{key:"total time waiting to write data",value:Le.A.format.TimeDuration(l)},Qe()(t)&&{key:"average user cpu time per second",value:Le.A.format.Number(t,{digits:3})},Qe()(n)&&{key:"average wait cpu time per second",value:Le.A.format.Number(n,{digits:3})},{key:"gpu devices",value:Le.A.format.Number(a)},Qe()(r)&&{key:"average gpu utilization",value:Le.A.format.Percent(100*r)},Qe()(s)&&{key:"average gpu power",value:Le.A.format.Number(s,{digits:3})},Qe()(o)&&{key:"average gpu memory usage",value:Le.A.format.Bytes(o)}])}));function at(){var e=(0,o.d4)(he),t=e.input,n=e.output,r=(0,o.d4)(nt),s=(0,a.useMemo)(et,[]),i=(0,a.useMemo)((function(){return tt()}),[]);return(0,k.jsxs)("div",{className:Xe(),children:[(0,k.jsx)(D.Ay,{className:Xe("meta"),items:r}),(0,k.jsx)("div",{className:Ge({size:"m"},Xe("heading")),children:"Input"}),(0,k.jsx)(Ze,{size:"s",theme:"light",css:Xe(),items:t,virtual:!1,striped:!1,columns:s,templates:i}),n.length>0&&(0,k.jsxs)(a.Fragment,{children:[(0,k.jsx)("div",{className:Ge({size:"m"},Xe("heading")),children:"Output"}),(0,k.jsx)(Ze,{size:"s",theme:"light",css:Xe(),items:n,virtual:!1,striped:!1,columns:s,templates:i,rowClassName:function(e){return e.isTotal?Xe("row-total"):void 0}})]})]})}var rt=n(70917),st=n(70436),ot=n(62250),it=(0,i.A)("job-details");function lt(e,t){return e?(0,k.jsx)(st.A,{name:"Events",className:it("events"),size:t,children:(0,k.jsx)(rt.A,{events:e,type:"phase"})}):null}function ut(e,t){return e?(0,k.jsx)(st.A,{collapsed:!0,name:"Competitive jobs",className:it("speculative-jobs"),size:t,children:(0,k.jsx)(He,{})}):null}function ct(e,t){return K()(["reduce","join_reduce","sorted_merge"],e)?(0,k.jsx)(st.A,{collapsed:!0,name:"Pivot keys",className:it("pivot-keys"),size:t,children:(0,k.jsx)(Me,{})}):null}function dt(){var e,t,n,a=(0,o.d4)((function(e){return e.job.general})),r=a.details,i=a.job,l=r.events;return(0,k.jsx)(s.A,{children:(0,k.jsxs)("div",{className:it(),children:[(null==l?void 0:l.length)>0&&(0,k.jsx)("div",{className:it("section"),children:lt(r.events,ot.Y1)}),(0,k.jsxs)("div",{className:it("section"),children:[(n=i.error,n?(0,k.jsx)("div",{className:it("result"),children:(0,k.jsx)(Y.A,{error:n})}):null),(e=i.statistics,t=ot.Y1,j.A.getValue(e,"/user_job/pipes")?(0,k.jsx)(st.A,{name:"Statistics",className:it("statistics"),size:t,children:(0,k.jsx)(at,{})}):null),ct(i.type,ot.Y1),ut(Boolean(i.hasCompetitors),ot.Y1)]})]})})}var pt=n(623),mt=n.n(pt),ht=n(55695),ft=n(50073),vt=n(11211),gt=new x.A;function jt(e,t){return function(n,a){n({type:b.M1});var r=(0,P.Si)(a());return g().v3.getJob({parameters:{operation_id:e,job_id:t},cancellation:gt.saveCancelToken}).then((function(e){n({type:b.s8,data:{job:e,clusterConfig:r}})})).catch((function(e){e.code===g().codes.CANCELLED?n({type:b.E}):n({type:b.V3,data:{error:e}})}))}}var bt=n(7313),xt=n(48971),At=new Be.I,yt=(0,i.A)("job-actions"),_t=(0,i.A)("elements-code"),Ct=function(e,t,n){var a=[{action:function(){window.open(e.prepareCommandURL("get_job_input"))},text:"get_job_input"},{action:function(){window.open(e.prepareCommandURL("get_job_stderr"))},text:"get_job_stderr"}];return"failed"===e.state?a.push({action:function(){window.open(e.prepareCommandURL("get_job_fail_context"))},text:"get_job_fail_context"}):a.push({action:n,text:"dump_job_context"}),[a,[{action:t,text:"job shell"}]]},kt=function(e){var t=e.currentOption,n=e.name,a=e.id,r=function(e){return{interrupt:g().v4.abortJob,abort:g().v4.abortJob,abandon:g().v4.abandonJob}[e]}(n),s={job_id:a};return t&&(s=(0,u.A)((0,u.A)({},s),{},{interrupt_timeout:t})),r(s)},Nt=function(e,t,n){var a={job_id:e,path:t};return g().v3.dumpJobContext(a).then((function(){At.add({theme:"success",autoHiding:!1,name:"dump job context",title:"Job context has been dumped.",content:(0,k.jsx)(Fe.A,{url:"/".concat(n,"/navigation?path=").concat(t),children:t})})})).catch((function(e){At.add({theme:"danger",autoHiding:!1,name:"dump job context",title:"Could not dump job context.",content:(null==e?void 0:e.message)||"Oops, something went wrong",actions:[{label:" view",onClick:function(){return(0,xt.eW)(e)}}]})}))};function wt(e){var t=(0,o.wA)(),n=e.message||(0,k.jsxs)("span",{children:["Are you sure you want to ",(0,k.jsx)("strong",{children:e.name})," the job?"]}),r=(0,o.d4)((function(e){return e.job.general})).job,s=r.id,i=r.operationId,l=(0,a.useCallback)((function(){setTimeout((function(){return t(jt(i,s))}),5e3)}),[t,i,s]),c=(0,a.useCallback)((function(e){return t((0,bt.Jm)(e))}),[t]),d=(0,a.useCallback)((function(t){var n=t.currentOption,a=(0,u.A)((0,u.A)({},e),{},{currentOption:n,id:s});return kt(a).then(l)}),[s,e,l]),p=(0,a.useCallback)((function(){return t(c((0,u.A)((0,u.A)({},e),{},{message:n,handler:d})))}),[t,c,e,n,d]);return(0,k.jsxs)(R.A,{size:"m",onClick:p,view:e.theme||"outlined",className:yt("action"),title:Le.A.format.ReadableField(e.name),children:[(0,k.jsx)(O.A,{awesome:e.icon})," ",Le.A.format.ReadableField(e.name)]},e.name)}function St(e){var t=e.className,n=(0,o.d4)(de),r=(0,o.d4)((function(e){return e.job.general})).loaded,i=(0,o.d4)(P.dB),l=n.id,c="yt run-job-shell ".concat(l),d=(0,a.useState)(!1),p=(0,f.A)(d,2),m=p[0],h=p[1],v=(0,a.useCallback)((function(){return h(!0)}),[h]),g=(0,a.useCallback)((function(){return h(!1)}),[h]),j=(0,a.useCallback)((function(){mt()(c),g()}),[c,g]),b="//home",x=(0,a.useState)(b),A=(0,f.A)(x,2),y=A[0],_=A[1],C=(0,a.useState)(!1),N=(0,f.A)(C,2),w=N[0],S=N[1],I=(0,a.useCallback)((function(e){return _(e)}),[_]),D=(0,a.useCallback)((function(){return S(!0)}),[S]),T=(0,a.useCallback)((function(){return S(!1)}),[S]),E=(0,a.useCallback)((function(){Nt(l,y,i),T()}),[l,y,i,T]),z=(0,o.d4)(Se),M=(0,a.useMemo)((function(){return Ct(n,v,D)}),[n,v,D]);return r?(0,k.jsx)(s.A,{children:(0,k.jsxs)("div",{className:yt(null,t),children:[ae()(z,(function(e){return(0,k.jsx)(wt,(0,u.A)({},e))})),(0,k.jsx)(ht.r,{items:M}),(0,k.jsxs)(ft.l,{size:"m",open:m,onClose:g,children:[(0,k.jsx)(ft.l.Header,{caption:"Job shell"}),(0,k.jsx)(ft.l.Body,{children:(0,k.jsx)("div",{className:yt("code"),children:(0,k.jsx)("div",{className:_t({theme:"default"}),children:c})})}),(0,k.jsx)(ft.l.Footer,{onClickButtonCancel:g,onClickButtonApply:j,textButtonCancel:"Cancel",textButtonApply:"Copy",showError:!1,preset:"success",listenKeyEnter:!0})]}),(0,k.jsxs)(ft.l,{size:"m",open:w,onClose:T,children:[(0,k.jsx)(ft.l.Header,{caption:"Dump job context"}),(0,k.jsx)(ft.l.Body,{children:(0,k.jsx)("div",{className:yt("dump-context"),children:(0,k.jsx)(vt.A,{hasClear:!0,defaultPath:b,onChange:I})})}),(0,k.jsx)(ft.l.Footer,{onClickButtonCancel:T,onClickButtonApply:E,textButtonCancel:"Cancel",textButtonApply:"Confirm",showError:!1,preset:"success",listenKeyEnter:!0})]})]})}):null}var It=n(81970),Dt=n(83611),Tt=n(53332),Et=n(35441),zt=n(93209),Mt=n(42324),Ft=n(40860),Lt=(0,i.A)("job-general");function Bt(){var e,t=(0,o.d4)(P.dB),n=(0,r.W5)(),i=(0,o.d4)(C.cm),l=(0,o.d4)(de),m=(0,o.d4)((function(e){return e.job.general})),h=m.loaded,f=function(e){var t=e.operationId,n=e.jobId,r=e.pool_tree,s=e.has_trace,i=e.cluster,l=(0,o.d4)(P.jU).job_trace_url_template,u=void 0===l?{}:l,c=u.url_template,d=u.title,p=void 0===d?"Open trace":d,m=u.enforce_for_trees;return a.useMemo((function(){return(s||0<=(null==m?void 0:m.indexOf(r)))&&i&&t&&n&&c?{url:(0,Et.j)(c,{operationId:t,jobId:n,cluster:i}),title:p}:{}}),[i,t,n,c,p,m,r,s])}({operationId:null==l?void 0:l.operationId,jobId:null==l?void 0:l.id,has_trace:null==l||null===(e=l.archive_features)||void 0===e?void 0:e.has_trace,pool_tree:null==l?void 0:l.pool_tree,cluster:t}),v=f.url,g=f.title;if(!h)return null;var j=n.url,x=n.params,A=x.operationID,y=x.jobID,_=l.operationId,N=l.attributes,w=l.finishTime,S=l.startTime,T=l.duration,E=l.address,z=l.state,B=l.type,R=l.id,O=l.jobCompetitionId,V=l.monitoring_descriptor,H=l.pool_tree,K=l.is_stale,Y="/".concat(t,"/").concat(U.YW.OPERATIONS,"/").concat(A,"/jobs?jobId=").concat(y),$="/".concat(t,"/").concat(U.YW.JOB,"/").concat(A,"/").concat(y),Q=(0,Tt._4)($,b.oz),X=O&&O!==R,G="yt --proxy ".concat(t," run-job-shell ").concat(R);return(0,k.jsx)(s.A,{children:(0,k.jsxs)("div",{className:Lt(null,"elements-section"),children:[(0,k.jsxs)("div",{className:Lt("header"),children:[(0,k.jsxs)("span",{className:Lt("heading"),children:[Le.A.format.ReadableField(B)," job"]}),(0,k.jsx)(J.A,{label:z,renderPlaque:!0}),(0,k.jsx)(St,{className:Lt("actions")})]}),X&&(0,k.jsx)(It.A,{className:Lt("speculative-label"),text:"Speculative job",theme:"warning",type:"text"}),(0,k.jsx)(D.Ay,{className:Lt("meta"),items:[[{key:"operation id",value:(0,k.jsx)(D.Bj.Link,{url:Y,text:_,withClipboard:!0})},{key:"job id",value:(0,k.jsx)(W,{id:R,className:Lt("meta-breadcrumbs")})},{key:"host",value:(0,k.jsxs)("span",{className:Lt("meta-host"),children:[(0,k.jsx)(D.Bj.Id,{id:null==E?void 0:E.split(":")[0]}),(0,k.jsx)(Mt.A,{url:M.Ay.makeUrlForNodeIO(t,E)})]})},{key:"type",value:(0,k.jsx)(D.Bj.Value,{value:B})},{key:"Monitoring descriptor",value:(0,k.jsxs)("span",{className:Lt("meta-host"),children:[(0,k.jsx)(D.Bj.Id,{id:V}),(0,k.jsx)(Mt.A,{url:M.Ay.makeUrlForMonitoringDescriptor(t,{from:S,to:w},V)})]}),visible:Boolean(V)},{key:"Pool tree",value:H,visible:Boolean(H)}],[{key:"started",value:(0,k.jsx)(D.Bj.Time,{time:S,valueFormat:"DateTime"})},{key:"finished",value:(0,k.jsx)(D.Bj.Time,{time:w,valueFormat:"DateTime"})},{key:"duration",value:(0,k.jsx)(D.Bj.Time,{time:T,valueFormat:"TimeDuration"})},{key:"Stale",value:(0,k.jsxs)(k.Fragment,{children:[Boolean("is_stale").toString()+" ",(0,k.jsx)(Ft.q,{})]}),visible:K}],[{key:"job_input",value:(0,k.jsx)(zt.S,{onClick:function(){return window.open(l.prepareCommandURL("get_job_input"))},children:"get_job_input"})},{key:"job_error",value:(0,k.jsx)(zt.S,{onClick:function(){return window.open(l.prepareCommandURL("get_job_stderr"))},children:"get_job_stderr"})}].concat((0,c.A)("failed"!==(null==l?void 0:l.state)?[]:[{key:"fail_context",value:(0,k.jsx)(zt.S,{onClick:function(){return window.open(l.prepareCommandURL("get_job_fail_context"))},children:"get_job_fail_context"})}]),(0,c.A)(null!=l&&l.finishTime?[]:[{key:"Job ssh",value:(0,k.jsxs)("span",{className:Lt("meta-ssh"),children:[(0,k.jsx)("span",{className:Lt("meta-ssh-cmd"),title:G,children:G}),(0,k.jsx)(L.A,{view:"flat-secondary",text:G,size:"s"})]})}]),[{key:"Job trace",value:(0,k.jsx)(d.N,{target:"_blank",href:v,children:g}),visible:Boolean(v)}])]}),(0,k.jsx)("div",{className:Lt("tabs"),children:(0,k.jsx)(Dt.A,(0,u.A)((0,u.A)({},Q),{},{active:b._N,routed:!0,size:ot.jr}))}),(0,k.jsxs)(r.dO,{children:[(0,k.jsx)(r.qh,{path:"".concat($,"/").concat(b.oz.ATTRIBUTES),children:(0,k.jsx)(p.A,{value:N,settings:i,folding:!0})}),(0,k.jsx)(r.qh,{path:"".concat($,"/").concat(b.oz.DETAILS),children:(0,k.jsx)(dt,{})}),(0,k.jsx)(r.qh,{path:"".concat($,"/").concat(b.oz.STATISTICS),children:(0,k.jsx)(F,{})}),(0,k.jsx)(r.qh,{path:"".concat($,"/").concat(b.oz.SPECIFICATION),children:(0,k.jsx)(I,{jobID:y})}),(0,k.jsx)(r.qh,{path:"".concat($,"/:tab"),children:(0,k.jsx)(q.A,{})}),(0,k.jsx)(r.rd,{from:j,to:"".concat($,"/").concat(b._N)})]})]})})}var Rt=n(13685),Ot=(0,i.A)("job-detail");function Pt(){var e=(0,r.W5)(),t=(0,o.wA)(),n=e.params,i=n.operationID,u=n.jobID,c=(0,o.d4)((function(e){return e.job.general})),d=c.loading,p=c.loaded,m=c.error,f=c.errorData,v=d&&!p,g=a.useMemo((function(){return{updateFn:function(){return t(jt(i,u))},destructFn:function(){return t((function(e){gt.removeAllRequests(),e({type:b.E})}))}}}),[t,i,u]),j=g.updateFn,x=g.destructFn;return(0,Rt.Tt)(j,{destructFn:x}),(0,k.jsx)(s.A,{children:(0,k.jsx)("div",{className:Ot(),children:(0,k.jsx)("div",{className:Ot("content",{loading:v}),children:v?(0,k.jsx)(h.a,{}):(0,k.jsx)(l.A,{loaded:p,error:m,errorData:f,children:(0,k.jsx)(Bt,{})})})})})}function Ut(){var e=(0,r.W5)();return(0,k.jsx)("div",{className:"elements-main-section",children:(0,k.jsx)(s.A,{children:(0,k.jsx)(r.dO,{children:(0,k.jsx)(r.qh,{path:"".concat(e.path,"/:operationID/:jobID"),children:(0,k.jsx)(Pt,{})})})})})}},36554:(e,t,n)=>{n.d(t,{$A:()=>h,$F:()=>g,DC:()=>b,F_:()=>j,_X:()=>f,aA:()=>v,c5:()=>x,nH:()=>m});var a=n(49214),r=n.n(a),s=n(27528),o=n.n(s),i=n(63281),l=n.n(i),u=n(3659),c=n(78259),d=n(76365),p=n(64714),m=new d.A;function h(e){return c.A.YPath.create(e,"absolute").toSubpath(-2).stringify()}function f(e,t){var n=h(e);return p.Qq.list(p.Vu.pathEditorLoadSuggestions,{parameters:{path:n,attributes:["type","dynamic"]},cancellation:m.saveCancelToken}).then(c.A.getValue).then((function(e){return function(e,t,n){var a=o()(n,(function(e){var n={};return n.parentPath=t,n.childPath="/"+u.A.decode(c.A.getValue(e)),n.path=n.parentPath+n.childPath,n.type=c.A.getValue(e,"/@type"),n.dynamic=c.A.getValue(e,"/@dynamic"),n.targetPathBroken=c.A.getValue(e,"/@broken"),n}));return l()(a,"childPath")}(0,n,e)})).then((function(e){return t?t(e):e}))}function v(e,t){var n=e.toLowerCase();return r()(t,(function(e){var t=e.path.startsWith(n),a=e.path!==n||"map_node"===e.type;return t&&a}))}function g(e,t){return-1===t||t===e.length-1?0:t+1}function j(e,t){return-1===t||0===t?e.length-1:t-1}function b(e){return"map_node"===e.type?e.path+"/":e.path}function x(e,t){var n={document:"file-alt",string_node:"file-alt",int64_node:"file-alt",uint64_node:"file-alt",double_node:"file-alt",boolean_node:"file-alt",map_node:"folder",scheduler_pool_tree_map:"folder-tree",scheduler_pool:"tasks",tablet_cell:"th",journal:"book",table:"th",table_dynamic:"dyn-th",replicated_table:"th",chaos_replicated_table:"chaos-replicated-table",replication_log_table:"replication-log-table",file:"file",topmost_transaction_map:"folder",transaction_map:"folder",transaction:"code-branch",nested_transaction:"code-branch",link:c.A.getBoolean(t)?"unlink":"link",rootstock:"link",portal_entrance:"link",cell_node:"circle",cell_node_map:"far circle",sys_node:"cog",access_control_object_namespace_map:"acl-namespace-map",access_control_object_namespace:"acl-namespace",access_control_object:"acl-object"};return e?n[e]||"not-suported":"eye-slash"}},39702:(e,t,n)=>{n.d(t,{A:()=>s});var a=n(40319),r=n(64922);const s=function(e){return(0,r.jsx)("svg",(0,a.A)((0,a.A)({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 16 16"},e),{},{children:(0,r.jsx)("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.47 13.03a.75.75 0 0 1 0-1.06L9.44 8 5.47 4.03a.75.75 0 0 1 1.06-1.06l4.5 4.5a.75.75 0 0 1 0 1.06l-4.5 4.5a.75.75 0 0 1-1.06 0",clipRule:"evenodd"})}))}}}]);
2
- //# sourceMappingURL=job.5ed7166b.chunk.js.map