@ytsaurus/ui 1.46.1 → 1.46.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/ui/components/Dialog/controls/PoolSuggestControl/PoolSuggestControl.js +7 -6
- package/build/cjs/ui/components/Dialog/controls/PoolSuggestControl/PoolSuggestControl.js.map +1 -1
- package/build/cjs/ui/pages/navigation/content/File/File.css +3 -3
- package/build/cjs/ui/pages/navigation/content/File/File.css.map +1 -1
- package/build/cjs/ui/pages/navigation/content/File/File.js +1 -0
- package/build/cjs/ui/pages/navigation/content/File/File.js.map +1 -1
- package/build/cjs/ui/pages/navigation/content/MapNode/PathActions.js +2 -0
- package/build/cjs/ui/pages/navigation/content/MapNode/PathActions.js.map +1 -1
- package/build/cjs/ui/utils/operations/tabs/details/specification/specification.js +11 -8
- package/build/cjs/ui/utils/operations/tabs/details/specification/specification.js.map +1 -1
- package/build/esm/ui/components/Dialog/controls/PoolSuggestControl/PoolSuggestControl.js +7 -6
- package/build/esm/ui/components/Dialog/controls/PoolSuggestControl/PoolSuggestControl.js.map +1 -1
- package/build/esm/ui/pages/navigation/content/File/File.css +3 -3
- package/build/esm/ui/pages/navigation/content/File/File.css.map +1 -1
- package/build/esm/ui/pages/navigation/content/File/File.js +1 -0
- package/build/esm/ui/pages/navigation/content/File/File.js.map +1 -1
- package/build/esm/ui/pages/navigation/content/File/File.scss +4 -4
- package/build/esm/ui/pages/navigation/content/MapNode/PathActions.js +2 -0
- package/build/esm/ui/pages/navigation/content/MapNode/PathActions.js.map +1 -1
- package/build/esm/ui/utils/operations/tabs/details/specification/specification.js +11 -8
- package/build/esm/ui/utils/operations/tabs/details/specification/specification.js.map +1 -1
- package/dist/public/build/assets-manifest.json +7 -7
- package/dist/public/build/css/main.d5672f9d.css +2 -0
- package/dist/public/build/css/{main.e0a07e74.css.map → main.d5672f9d.css.map} +1 -1
- package/dist/public/build/js/main.95c50349.js +3 -0
- package/dist/public/build/js/{main.b0f37b6a.js.map → main.95c50349.js.map} +1 -1
- package/dist/public/build/manifest.json +4 -4
- package/package.json +2 -2
- package/dist/public/build/css/main.e0a07e74.css +0 -2
- package/dist/public/build/js/main.b0f37b6a.js +0 -3
- /package/dist/public/build/js/{main.b0f37b6a.js.LICENSE.txt → main.95c50349.js.LICENSE.txt} +0 -0
@@ -91,15 +91,16 @@ function PoolSuggestControl(props) {
|
|
91
91
|
popupClassName: block('popup'),
|
92
92
|
text: value,
|
93
93
|
filter: getItems,
|
94
|
-
apply: function apply(v) {
|
95
|
-
return allowEphemeral && onChange(typeof v === 'string' ? v : v.value);
|
96
|
-
},
|
97
94
|
onItemClick: function onItemClick(v) {
|
98
95
|
return onChange(typeof v === 'string' ? v : v.value);
|
99
96
|
},
|
100
|
-
onTextUpdate:
|
101
|
-
|
102
|
-
|
97
|
+
onTextUpdate: function onTextUpdate(text) {
|
98
|
+
if (allowEmpty && !text) {
|
99
|
+
onChange('');
|
100
|
+
} else if (allowEphemeral) {
|
101
|
+
onChange(text);
|
102
|
+
}
|
103
|
+
},
|
103
104
|
placeholder: placeholder,
|
104
105
|
disabled: disabled
|
105
106
|
});
|
package/build/cjs/ui/components/Dialog/controls/PoolSuggestControl/PoolSuggestControl.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_bemCnLite","_axios","_ytApi","_ypath","_Suggest","_rumWrapApi","_utils","_globalPoolTrees","_jsxRuntime","obj","__esModule","default","block","cn","PoolSuggestControl","props","allowEmpty","allowEphemeral","value","onChange","placeholder","poolTree","cluster","calculateValueOnPoolsLoaded","disabled","_React$useState","React","useState","items","itemsTree","_React$useState2","_slicedToArray","poolNames","setPoolNames","loadedPools","useLoadedPools","useEffect","onPoolLoaded","names","tree","noRoot","_filter","item","valueIndex","_indexOf","_sortBy","loadedPoolNames","getItems","useCallback","_items","filter","from","_sortedIndexBy","substring","length","to","_sortedLastIndexBy","res","_slice","_jsx","Suggest","popupClassName","text","apply","v","onItemClick","onTextUpdate","undefined","getDefaultValue","isEmpty","arguments","_React$useState3","_React$useState4","result","setResult","currentClusterTree","usePoolTreeOrLoadDefault","useMemo","wrapApiPromiseByToaster","axios","get","concat","skipSuccessToast","toasterName","errorTitle","then","_ref","data","localPoolTree","ytApiV3Id","list","YTApiId","listPoolNames","_objectSpread","path","USE_MAX_SIZE","ypath","getValue"],"sources":["PoolSuggestControl.tsx"],"sourcesContent":["import React from 'react';\n\nimport _ from 'lodash';\nimport cn from 'bem-cn-lite';\nimport axios from 'axios';\n\nimport {USE_MAX_SIZE} from '../../../../../shared/constants/yt-api';\nimport ypath from '../../../../common/thor/ypath';\n\nimport {DialogControlProps} from '../../../../components/Dialog/Dialog.types';\nimport Suggest from '../../../../components/Suggest/Suggest';\n\nimport {YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport {wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {usePoolTreeOrLoadDefault} from '../../../../hooks/global-pool-trees';\n\nimport './PoolSuggestControl.scss';\n\nconst block = cn('pool-suggest-control');\n\ntype Props = DialogControlProps<string> & {\n // If not defined then current cluster should be used\n cluster?: string;\n // If not defined then default pool tree should be used\n poolTree?: string;\n calculateValueOnPoolsLoaded?: (params: {loadedPoolNames: Array<string>}) => string;\n\n allowEmpty?: boolean;\n allowEphemeral?: boolean;\n\n disabled?: boolean;\n};\n\n/**\n * The suggest should be used to select pools of current cluster\n * @param props\n * @returns\n */\nexport function PoolSuggestControl(props: Props) {\n const {\n allowEmpty,\n allowEphemeral,\n value,\n onChange,\n placeholder,\n poolTree,\n cluster,\n calculateValueOnPoolsLoaded,\n disabled,\n } = props;\n\n const [{items: poolNames}, setPoolNames] = React.useState<{\n items: Array<string>;\n itemsTree: string;\n }>({\n items: [],\n itemsTree: '',\n });\n\n const loadedPools = useLoadedPools(cluster, poolTree);\n\n React.useEffect(\n function onPoolLoaded() {\n const {names, tree} = loadedPools;\n if (!tree) {\n return;\n }\n const noRoot = _.filter(names, (item) => '<Root>' !== item);\n const valueIndex = _.indexOf(noRoot, value);\n if (value && -1 === valueIndex) {\n onChange('');\n }\n setPoolNames({items: _.sortBy(noRoot), itemsTree: tree});\n if (calculateValueOnPoolsLoaded) {\n onChange(calculateValueOnPoolsLoaded({loadedPoolNames: noRoot}));\n }\n },\n // value should not affect the useEffect\n [loadedPools, setPoolNames, onChange, calculateValueOnPoolsLoaded /*, value */],\n );\n\n const getItems = React.useCallback(\n (_items: unknown, filter?: string) => {\n if (!filter) {\n return poolNames;\n }\n const from = _.sortedIndexBy(poolNames, filter, (item) =>\n item.substring(0, filter.length),\n );\n const to = _.sortedLastIndexBy(poolNames, filter, (item) =>\n item.substring(0, filter.length),\n );\n\n const res = _.slice(poolNames, from, to);\n return res;\n },\n [poolNames],\n );\n\n return (\n <Suggest\n popupClassName={block('popup')}\n text={value}\n filter={getItems}\n apply={(v) => allowEphemeral && onChange(typeof v === 'string' ? v : v.value)}\n onItemClick={(v) => onChange(typeof v === 'string' ? v : v.value)}\n onTextUpdate={allowEmpty ? (text) => !text && onChange('') : undefined}\n placeholder={placeholder}\n disabled={disabled}\n />\n );\n}\n\nPoolSuggestControl.getDefaultValue = () => {\n return '';\n};\n\nPoolSuggestControl.isEmpty = (value: Props['value']) => {\n return !value;\n};\n\nfunction useLoadedPools(cluster?: string, poolTree = ''): {names: Array<string>; tree?: string} {\n const [result, setResult] = React.useState<{names: Array<string>; tree?: string}>({names: []});\n\n const currentClusterTree = usePoolTreeOrLoadDefault(poolTree);\n\n React.useMemo(() => {\n if (cluster) {\n wrapApiPromiseByToaster(axios.get(`/api/pool-names/${cluster}?poolTree=${poolTree}`), {\n skipSuccessToast: true,\n toasterName: 'load-pool-names',\n errorTitle: 'Failed to load pools',\n }).then(({data}) => {\n setResult(data);\n });\n } else if (poolTree || currentClusterTree) {\n const localPoolTree = poolTree || currentClusterTree;\n wrapApiPromiseByToaster(\n ytApiV3Id.list(YTApiId.listPoolNames, {\n path: `//sys/scheduler/orchid/scheduler/pool_trees/${localPoolTree}/pools`,\n ...USE_MAX_SIZE,\n }),\n {\n skipSuccessToast: true,\n toasterName: 'load-pool-names',\n errorTitle: 'Failed to load pools',\n },\n ).then((names) => {\n setResult({names: ypath.getValue(names), tree: localPoolTree});\n });\n }\n }, [cluster, currentClusterTree, poolTree]);\n\n return result;\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAL,sBAAA,CAAAC,OAAA;AAGA,IAAAK,QAAA,GAAAN,sBAAA,CAAAC,OAAA;AAEA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,gBAAA,GAAAR,OAAA;AAEAA,OAAA;AAAmC,IAAAS,WAAA,GAAAT,OAAA;AAAA,SAAAD,uBAAAW,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnC,IAAMG,KAAK,GAAG,IAAAC,kBAAE,EAAC,sBAAsB,CAAC;AAexC;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAACC,KAAY,EAAE;EAC7C,IACIC,UAAU,GASVD,KAAK,CATLC,UAAU;IACVC,cAAc,GAQdF,KAAK,CARLE,cAAc;IACdC,KAAK,GAOLH,KAAK,CAPLG,KAAK;IACLC,QAAQ,GAMRJ,KAAK,CANLI,QAAQ;IACRC,WAAW,GAKXL,KAAK,CALLK,WAAW;IACXC,QAAQ,GAIRN,KAAK,CAJLM,QAAQ;IACRC,OAAO,GAGPP,KAAK,CAHLO,OAAO;IACPC,2BAA2B,GAE3BR,KAAK,CAFLQ,2BAA2B;IAC3BC,QAAQ,GACRT,KAAK,CADLS,QAAQ;EAGZ,IAAAC,eAAA,GAA2CC,cAAK,CAACC,QAAQ,CAGtD;MACCC,KAAK,EAAE,EAAE;MACTC,SAAS,EAAE;IACf,CAAC,CAAC;IAAAC,gBAAA,OAAAC,uBAAA,EAAAN,eAAA;IANaO,SAAS,GAAAF,gBAAA,IAAhBF,KAAK;IAAcK,YAAY,GAAAH,gBAAA;EAQvC,IAAMI,WAAW,GAAGC,cAAc,CAACb,OAAO,EAAED,QAAQ,CAAC;EAErDK,cAAK,CAACU,SAAS,CACX,SAASC,YAAYA,CAAA,EAAG;IACpB,IAAOC,KAAK,GAAUJ,WAAW,CAA1BI,KAAK;MAAEC,IAAI,GAAIL,WAAW,CAAnBK,IAAI;IAClB,IAAI,CAACA,IAAI,EAAE;MACP;IACJ;IACA,IAAMC,MAAM,GAAG,IAAAC,gBAAA,EAASH,KAAK,EAAE,UAACI,IAAI;MAAA,OAAK,QAAQ,KAAKA,IAAI;IAAA,EAAC;IAC3D,IAAMC,UAAU,GAAG,IAAAC,iBAAA,EAAUJ,MAAM,EAAEtB,KAAK,CAAC;IAC3C,IAAIA,KAAK,IAAI,CAAC,CAAC,KAAKyB,UAAU,EAAE;MAC5BxB,QAAQ,CAAC,EAAE,CAAC;IAChB;IACAc,YAAY,CAAC;MAACL,KAAK,EAAE,IAAAiB,gBAAA,EAASL,MAAM,CAAC;MAAEX,SAAS,EAAEU;IAAI,CAAC,CAAC;IACxD,IAAIhB,2BAA2B,EAAE;MAC7BJ,QAAQ,CAACI,2BAA2B,CAAC;QAACuB,eAAe,EAAEN;MAAM,CAAC,CAAC,CAAC;IACpE;EACJ,CAAC;EACD;EACA,CAACN,WAAW,EAAED,YAAY,EAAEd,QAAQ,EAAEI,2BAA2B,CAAC,aACtE,CAAC;;EAED,IAAMwB,QAAQ,GAAGrB,cAAK,CAACsB,WAAW,CAC9B,UAACC,MAAe,EAAEC,MAAe,EAAK;IAClC,IAAI,CAACA,MAAM,EAAE;MACT,OAAOlB,SAAS;IACpB;IACA,IAAMmB,IAAI,GAAG,IAAAC,uBAAA,EAAgBpB,SAAS,EAAEkB,MAAM,EAAE,UAACR,IAAI;MAAA,OACjDA,IAAI,CAACW,SAAS,CAAC,CAAC,EAAEH,MAAM,CAACI,MAAM,CAAC;IAAA,CACpC,CAAC;IACD,IAAMC,EAAE,GAAG,IAAAC,2BAAA,EAAoBxB,SAAS,EAAEkB,MAAM,EAAE,UAACR,IAAI;MAAA,OACnDA,IAAI,CAACW,SAAS,CAAC,CAAC,EAAEH,MAAM,CAACI,MAAM,CAAC;IAAA,CACpC,CAAC;IAED,IAAMG,GAAG,GAAG,IAAAC,eAAA,EAAQ1B,SAAS,EAAEmB,IAAI,EAAEI,EAAE,CAAC;IACxC,OAAOE,GAAG;EACd,CAAC,EACD,CAACzB,SAAS,CACd,CAAC;EAED,oBACI,IAAA2B,eAAA,EAACC,gBAAO;IACJC,cAAc,EAAEjD,KAAK,CAAC,OAAO,CAAE;IAC/BkD,IAAI,EAAE5C,KAAM;IACZgC,MAAM,EAAEH,QAAS;IACjBgB,KAAK,EAAE,SAAAA,MAACC,CAAC;MAAA,OAAK/C,cAAc,IAAIE,QAAQ,CAAC,OAAO6C,CAAC,KAAK,QAAQ,GAAGA,CAAC,GAAGA,CAAC,CAAC9C,KAAK,CAAC;IAAA,CAAC;IAC9E+C,WAAW,EAAE,SAAAA,YAACD,CAAC;MAAA,OAAK7C,QAAQ,CAAC,OAAO6C,CAAC,KAAK,QAAQ,GAAGA,CAAC,GAAGA,CAAC,CAAC9C,KAAK,CAAC;IAAA,CAAC;IAClEgD,YAAY,EAAElD,UAAU,GAAG,UAAC8C,IAAI;MAAA,OAAK,CAACA,IAAI,IAAI3C,QAAQ,CAAC,EAAE,CAAC;IAAA,IAAGgD,SAAU;IACvE/C,WAAW,EAAEA,WAAY;IACzBI,QAAQ,EAAEA;EAAS,CACtB,CAAC;AAEV;AAEAV,kBAAkB,CAACsD,eAAe,GAAG,YAAM;EACvC,OAAO,EAAE;AACb,CAAC;AAEDtD,kBAAkB,CAACuD,OAAO,GAAG,UAACnD,KAAqB,EAAK;EACpD,OAAO,CAACA,KAAK;AACjB,CAAC;AAED,SAASiB,cAAcA,CAACb,OAAgB,EAAwD;EAAA,IAAtDD,QAAQ,GAAAiD,SAAA,CAAAhB,MAAA,QAAAgB,SAAA,QAAAH,SAAA,GAAAG,SAAA,MAAG,EAAE;EACnD,IAAAC,gBAAA,GAA4B7C,cAAK,CAACC,QAAQ,CAAwC;MAACW,KAAK,EAAE;IAAE,CAAC,CAAC;IAAAkC,gBAAA,OAAAzC,uBAAA,EAAAwC,gBAAA;IAAvFE,MAAM,GAAAD,gBAAA;IAAEE,SAAS,GAAAF,gBAAA;EAExB,IAAMG,kBAAkB,GAAG,IAAAC,yCAAwB,EAACvD,QAAQ,CAAC;EAE7DK,cAAK,CAACmD,OAAO,CAAC,YAAM;IAChB,IAAIvD,OAAO,EAAE;MACT,IAAAwD,8BAAuB,EAACC,cAAK,CAACC,GAAG,oBAAAC,MAAA,CAAoB3D,OAAO,gBAAA2D,MAAA,CAAa5D,QAAQ,CAAE,CAAC,EAAE;QAClF6D,gBAAgB,EAAE,IAAI;QACtBC,WAAW,EAAE,iBAAiB;QAC9BC,UAAU,EAAE;MAChB,CAAC,CAAC,CAACC,IAAI,CAAC,UAAAC,IAAA,EAAY;QAAA,IAAVC,IAAI,GAAAD,IAAA,CAAJC,IAAI;QACVb,SAAS,CAACa,IAAI,CAAC;MACnB,CAAC,CAAC;IACN,CAAC,MAAM,IAAIlE,QAAQ,IAAIsD,kBAAkB,EAAE;MACvC,IAAMa,aAAa,GAAGnE,QAAQ,IAAIsD,kBAAkB;MACpD,IAAAG,8BAAuB,EACnBW,qBAAS,CAACC,IAAI,CAACC,mBAAO,CAACC,aAAa,MAAAC,sBAAA;QAChCC,IAAI,iDAAAb,MAAA,CAAiDO,aAAa;MAAQ,GACvEO,mBAAY,CAClB,CAAC,EACF;QACIb,gBAAgB,EAAE,IAAI;QACtBC,WAAW,EAAE,iBAAiB;QAC9BC,UAAU,EAAE;MAChB,CACJ,CAAC,CAACC,IAAI,CAAC,UAAC/C,KAAK,EAAK;QACdoC,SAAS,CAAC;UAACpC,KAAK,EAAE0D,cAAK,CAACC,QAAQ,CAAC3D,KAAK,CAAC;UAAEC,IAAI,EAAEiD;QAAa,CAAC,CAAC;MAClE,CAAC,CAAC;IACN;EACJ,CAAC,EAAE,CAAClE,OAAO,EAAEqD,kBAAkB,EAAEtD,QAAQ,CAAC,CAAC;EAE3C,OAAOoD,MAAM;AACjB"}
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_bemCnLite","_axios","_ytApi","_ypath","_Suggest","_rumWrapApi","_utils","_globalPoolTrees","_jsxRuntime","obj","__esModule","default","block","cn","PoolSuggestControl","props","allowEmpty","allowEphemeral","value","onChange","placeholder","poolTree","cluster","calculateValueOnPoolsLoaded","disabled","_React$useState","React","useState","items","itemsTree","_React$useState2","_slicedToArray","poolNames","setPoolNames","loadedPools","useLoadedPools","useEffect","onPoolLoaded","names","tree","noRoot","_filter","item","valueIndex","_indexOf","_sortBy","loadedPoolNames","getItems","useCallback","_items","filter","from","_sortedIndexBy","substring","length","to","_sortedLastIndexBy","res","_slice","_jsx","Suggest","popupClassName","text","onItemClick","v","onTextUpdate","getDefaultValue","isEmpty","arguments","undefined","_React$useState3","_React$useState4","result","setResult","currentClusterTree","usePoolTreeOrLoadDefault","useMemo","wrapApiPromiseByToaster","axios","get","concat","skipSuccessToast","toasterName","errorTitle","then","_ref","data","localPoolTree","ytApiV3Id","list","YTApiId","listPoolNames","_objectSpread","path","USE_MAX_SIZE","ypath","getValue"],"sources":["PoolSuggestControl.tsx"],"sourcesContent":["import React from 'react';\n\nimport _ from 'lodash';\nimport cn from 'bem-cn-lite';\nimport axios from 'axios';\n\nimport {USE_MAX_SIZE} from '../../../../../shared/constants/yt-api';\nimport ypath from '../../../../common/thor/ypath';\n\nimport {DialogControlProps} from '../../../../components/Dialog/Dialog.types';\nimport Suggest from '../../../../components/Suggest/Suggest';\n\nimport {YTApiId, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport {wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {usePoolTreeOrLoadDefault} from '../../../../hooks/global-pool-trees';\n\nimport './PoolSuggestControl.scss';\n\nconst block = cn('pool-suggest-control');\n\ntype Props = DialogControlProps<string> & {\n // If not defined then current cluster should be used\n cluster?: string;\n // If not defined then default pool tree should be used\n poolTree?: string;\n calculateValueOnPoolsLoaded?: (params: {loadedPoolNames: Array<string>}) => string;\n\n allowEmpty?: boolean;\n allowEphemeral?: boolean;\n\n disabled?: boolean;\n};\n\n/**\n * The suggest should be used to select pools of current cluster\n * @param props\n * @returns\n */\nexport function PoolSuggestControl(props: Props) {\n const {\n allowEmpty,\n allowEphemeral,\n value,\n onChange,\n placeholder,\n poolTree,\n cluster,\n calculateValueOnPoolsLoaded,\n disabled,\n } = props;\n\n const [{items: poolNames}, setPoolNames] = React.useState<{\n items: Array<string>;\n itemsTree: string;\n }>({\n items: [],\n itemsTree: '',\n });\n\n const loadedPools = useLoadedPools(cluster, poolTree);\n\n React.useEffect(\n function onPoolLoaded() {\n const {names, tree} = loadedPools;\n if (!tree) {\n return;\n }\n const noRoot = _.filter(names, (item) => '<Root>' !== item);\n const valueIndex = _.indexOf(noRoot, value);\n if (value && -1 === valueIndex) {\n onChange('');\n }\n setPoolNames({items: _.sortBy(noRoot), itemsTree: tree});\n if (calculateValueOnPoolsLoaded) {\n onChange(calculateValueOnPoolsLoaded({loadedPoolNames: noRoot}));\n }\n },\n // value should not affect the useEffect\n [loadedPools, setPoolNames, onChange, calculateValueOnPoolsLoaded /*, value */],\n );\n\n const getItems = React.useCallback(\n (_items: unknown, filter?: string) => {\n if (!filter) {\n return poolNames;\n }\n const from = _.sortedIndexBy(poolNames, filter, (item) =>\n item.substring(0, filter.length),\n );\n const to = _.sortedLastIndexBy(poolNames, filter, (item) =>\n item.substring(0, filter.length),\n );\n\n const res = _.slice(poolNames, from, to);\n return res;\n },\n [poolNames],\n );\n\n return (\n <Suggest\n popupClassName={block('popup')}\n text={value}\n filter={getItems}\n onItemClick={(v) => onChange(typeof v === 'string' ? v : v.value)}\n onTextUpdate={(text) => {\n if (allowEmpty && !text) {\n onChange('');\n } else if (allowEphemeral) {\n onChange(text);\n }\n }}\n placeholder={placeholder}\n disabled={disabled}\n />\n );\n}\n\nPoolSuggestControl.getDefaultValue = () => {\n return '';\n};\n\nPoolSuggestControl.isEmpty = (value: Props['value']) => {\n return !value;\n};\n\nfunction useLoadedPools(cluster?: string, poolTree = ''): {names: Array<string>; tree?: string} {\n const [result, setResult] = React.useState<{names: Array<string>; tree?: string}>({names: []});\n\n const currentClusterTree = usePoolTreeOrLoadDefault(poolTree);\n\n React.useMemo(() => {\n if (cluster) {\n wrapApiPromiseByToaster(axios.get(`/api/pool-names/${cluster}?poolTree=${poolTree}`), {\n skipSuccessToast: true,\n toasterName: 'load-pool-names',\n errorTitle: 'Failed to load pools',\n }).then(({data}) => {\n setResult(data);\n });\n } else if (poolTree || currentClusterTree) {\n const localPoolTree = poolTree || currentClusterTree;\n wrapApiPromiseByToaster(\n ytApiV3Id.list(YTApiId.listPoolNames, {\n path: `//sys/scheduler/orchid/scheduler/pool_trees/${localPoolTree}/pools`,\n ...USE_MAX_SIZE,\n }),\n {\n skipSuccessToast: true,\n toasterName: 'load-pool-names',\n errorTitle: 'Failed to load pools',\n },\n ).then((names) => {\n setResult({names: ypath.getValue(names), tree: localPoolTree});\n });\n }\n }, [cluster, currentClusterTree, poolTree]);\n\n return result;\n}\n"],"mappings":"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"}
|
@@ -1,6 +1,3 @@
|
|
1
|
-
.navigation-file .elements-dropdown-menu {
|
2
|
-
margin-left: 20px;
|
3
|
-
}
|
4
1
|
.navigation-file .elements-code:not(:last-child) {
|
5
2
|
margin-bottom: 20px;
|
6
3
|
}
|
@@ -13,4 +10,7 @@
|
|
13
10
|
.navigation-file__actions {
|
14
11
|
margin-bottom: 20px;
|
15
12
|
}
|
13
|
+
.navigation-file__download {
|
14
|
+
margin-right: 20px;
|
15
|
+
}
|
16
16
|
/*# sourceMappingURL=File.css.map */
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["File.scss"],"names":[],"mappings":"AACI;EACI,
|
1
|
+
{"version":3,"sources":["File.scss"],"names":[],"mappings":"AACI;EACI,mBAAA;AAAR;AAGI;EACI,aAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;AADR;AAII;EACI,mBAAA;AAFR;AAKI;EACI,kBAAA;AAHR","file":"File.css","sourcesContent":[".navigation-file {\n .elements-code:not(:last-child) {\n margin-bottom: 20px;\n }\n\n &_loading {\n height: 200px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n &__actions {\n margin-bottom: 20px;\n }\n\n &__download {\n margin-right: 20px;\n }\n}\n"],"sourceRoot":""}
|
@@ -41,6 +41,7 @@ var renderActions = function renderActions(downloadPath) {
|
|
41
41
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
42
42
|
className: block('actions'),
|
43
43
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Button, {
|
44
|
+
className: block('download'),
|
44
45
|
href: downloadPath,
|
45
46
|
target: "_blank",
|
46
47
|
children: "Download"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactRedux","_bemCnLite","_interopRequireDefault","_LoadDataHandler","_MetaTable","_presets","_uikit","_Link","_file","_file2","_navigation","_navigation2","_RumUiContext","_rumAppMeasures","_rumMeasureTypes","_utils","_NavigationExtraActions","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","block","cn","messageBlock","codeBlock","renderMeta","attributes","mediumList","_jsx","MetaTable","items","main","size","concat","_toConsumableArray","compression","erasureReplication","renderActions","downloadPath","_jsxs","className","children","Button","href","target","NavigationExtraActions","renderEmptyWarning","theme","renderTooBigInfo","Link","url","renderContent","file","isTooBig","Fragment","File","props","path","mode","loadFile","abortAndReset","useEffect","loading","loaded","isEmpty","initialLoading","LoadDataHandler","_objectSpread","Loader","mapStateToProps","state","_state$navigation$con","navigation","content","error","errorData","global","getDownloadPath","getAttributes","getIsTooBig","getIsEmpty","getPath","getEffectiveMode","mapDispatchToProps","FileConnected","connect","FileWithRum","loadState","useSelector","getNavigationFileLoadingStatus","useAppRumMeasureStart","type","RumMeasureTypes","NAVIGATION_CONTENT_FILE","startDeps","allowStart","_ref","_ref2","_slicedToArray","isFinalLoadingStatus","useRumMeasureStop","stopDeps","allowStop","_ref3","_ref4"],"sources":["File.js"],"sourcesContent":["import React, {Fragment, useEffect} from 'react';\nimport {connect, useSelector} from 'react-redux';\nimport PropTypes from 'prop-types';\nimport cn from 'bem-cn-lite';\n\nimport LoadDataHandler from '../../../../components/LoadDataHandler/LoadDataHandler';\nimport MetaTable from '../../../../components/MetaTable/MetaTable';\nimport {\n compression,\n erasureReplication,\n main,\n size,\n} from '../../../../components/MetaTable/presets';\nimport {Button, Loader} from '@gravity-ui/uikit';\nimport Link from '../../../../components/Link/Link';\n\nimport {\n getDownloadPath,\n getIsEmpty,\n getIsTooBig,\n getNavigationFileLoadingStatus,\n} from '../../../../store/selectors/navigation/content/file';\nimport {abortAndReset, loadFile} from '../../../../store/actions/navigation/content/file';\nimport {getAttributes, getPath} from '../../../../store/selectors/navigation';\nimport {getEffectiveMode} from '../../../../store/selectors/navigation/navigation';\n\nimport {useRumMeasureStop} from '../../../../rum/RumUiContext';\nimport {useAppRumMeasureStart} from '../../../../rum/rum-app-measures';\nimport {RumMeasureTypes} from '../../../../rum/rum-measure-types';\nimport {isFinalLoadingStatus} from '../../../../utils/utils';\n\nimport './File.scss';\nimport NavigationExtraActions from '../../../../containers/NavigationExtraActions/NavigationExtraActions';\n\nconst block = cn('navigation-file');\nconst messageBlock = cn('elements-message');\nconst codeBlock = cn('elements-code');\n\nconst renderMeta = (attributes, mediumList) => {\n return (\n <MetaTable\n items={[\n main(attributes),\n size(attributes, mediumList),\n [...compression(attributes), ...erasureReplication(attributes)],\n ]}\n />\n );\n};\n\nconst renderActions = (downloadPath) => {\n return (\n <div className={block('actions')}>\n <Button href={downloadPath} target=\"_blank\">\n Download\n </Button>\n <NavigationExtraActions />\n </div>\n );\n};\n\nconst renderEmptyWarning = () => {\n return (\n <div className={messageBlock({theme: 'warning'})}>\n <p className={messageBlock('paragraph')}>File is empty.</p>\n </div>\n );\n};\n\nconst renderTooBigInfo = (downloadPath) => {\n return (\n <div className={messageBlock({theme: 'info'})}>\n <p className={messageBlock('paragraph')}>\n The file is too big to be fully shown here. You can{' '}\n <Link url={downloadPath} target=\"_blank\">\n download\n </Link>{' '}\n it.\n </p>\n </div>\n );\n};\n\nconst renderContent = (file, isTooBig, downloadPath) => {\n return (\n <Fragment>\n <pre className={codeBlock({theme: 'default'})}>{file}</pre>\n\n {isTooBig && renderTooBigInfo(downloadPath)}\n </Fragment>\n );\n};\n\nfunction File(props) {\n const {path, mode, loadFile, abortAndReset} = props;\n useEffect(() => {\n loadFile();\n return abortAndReset;\n }, [path, mode]);\n\n const {loading, loaded, attributes, mediumList, downloadPath, isEmpty, isTooBig, file} = props;\n const initialLoading = loading && !loaded;\n return (\n <LoadDataHandler {...props}>\n <div className={block({loading: initialLoading})}>\n {initialLoading ? (\n <Loader />\n ) : (\n <Fragment>\n {renderMeta(attributes, mediumList)}\n {renderActions(downloadPath)}\n {isEmpty\n ? renderEmptyWarning()\n : renderContent(file, isTooBig, downloadPath)}\n </Fragment>\n )}\n </div>\n </LoadDataHandler>\n );\n}\n\nFile.propTypes = {\n // from connect\n loading: PropTypes.bool.isRequired,\n loaded: PropTypes.bool.isRequired,\n error: PropTypes.bool.isRequired,\n errorData: PropTypes.object.isRequired,\n\n file: PropTypes.string,\n path: PropTypes.string.isRequired,\n mode: PropTypes.string.isRequired,\n isEmpty: PropTypes.bool.isRequired,\n isTooBig: PropTypes.bool.isRequired,\n attributes: PropTypes.object.isRequired,\n downloadPath: PropTypes.string.isRequired,\n mediumList: PropTypes.arrayOf(PropTypes.string.isRequired).isRequired,\n\n loadFile: PropTypes.func.isRequired,\n abortAndReset: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = (state) => {\n const {loading, loaded, error, errorData, file} = state.navigation.content.file;\n const {mediumList} = state.global;\n\n const downloadPath = getDownloadPath(state);\n const attributes = getAttributes(state);\n const isTooBig = getIsTooBig(state);\n const isEmpty = getIsEmpty(state);\n const path = getPath(state);\n const mode = getEffectiveMode(state);\n\n return {\n loading,\n loaded,\n error,\n errorData,\n mediumList,\n attributes,\n path,\n mode,\n isEmpty,\n isTooBig,\n downloadPath,\n file,\n };\n};\nconst mapDispatchToProps = {\n loadFile,\n abortAndReset,\n};\n\nconst FileConnected = connect(mapStateToProps, mapDispatchToProps)(File);\n\nexport default function FileWithRum() {\n const loadState = useSelector(getNavigationFileLoadingStatus);\n\n useAppRumMeasureStart({\n type: RumMeasureTypes.NAVIGATION_CONTENT_FILE,\n startDeps: [loadState],\n allowStart: ([loadState]) => {\n return !isFinalLoadingStatus(loadState);\n },\n });\n\n useRumMeasureStop({\n type: RumMeasureTypes.NAVIGATION_CONTENT_FILE,\n stopDeps: [loadState],\n allowStop: ([loadState]) => {\n return isFinalLoadingStatus(loadState);\n },\n });\n\n return <FileConnected />;\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactRedux","_bemCnLite","_interopRequireDefault","_LoadDataHandler","_MetaTable","_presets","_uikit","_Link","_file","_file2","_navigation","_navigation2","_RumUiContext","_rumAppMeasures","_rumMeasureTypes","_utils","_NavigationExtraActions","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","block","cn","messageBlock","codeBlock","renderMeta","attributes","mediumList","_jsx","MetaTable","items","main","size","concat","_toConsumableArray","compression","erasureReplication","renderActions","downloadPath","_jsxs","className","children","Button","href","target","NavigationExtraActions","renderEmptyWarning","theme","renderTooBigInfo","Link","url","renderContent","file","isTooBig","Fragment","File","props","path","mode","loadFile","abortAndReset","useEffect","loading","loaded","isEmpty","initialLoading","LoadDataHandler","_objectSpread","Loader","mapStateToProps","state","_state$navigation$con","navigation","content","error","errorData","global","getDownloadPath","getAttributes","getIsTooBig","getIsEmpty","getPath","getEffectiveMode","mapDispatchToProps","FileConnected","connect","FileWithRum","loadState","useSelector","getNavigationFileLoadingStatus","useAppRumMeasureStart","type","RumMeasureTypes","NAVIGATION_CONTENT_FILE","startDeps","allowStart","_ref","_ref2","_slicedToArray","isFinalLoadingStatus","useRumMeasureStop","stopDeps","allowStop","_ref3","_ref4"],"sources":["File.js"],"sourcesContent":["import React, {Fragment, useEffect} from 'react';\nimport {connect, useSelector} from 'react-redux';\nimport PropTypes from 'prop-types';\nimport cn from 'bem-cn-lite';\n\nimport LoadDataHandler from '../../../../components/LoadDataHandler/LoadDataHandler';\nimport MetaTable from '../../../../components/MetaTable/MetaTable';\nimport {\n compression,\n erasureReplication,\n main,\n size,\n} from '../../../../components/MetaTable/presets';\nimport {Button, Loader} from '@gravity-ui/uikit';\nimport Link from '../../../../components/Link/Link';\n\nimport {\n getDownloadPath,\n getIsEmpty,\n getIsTooBig,\n getNavigationFileLoadingStatus,\n} from '../../../../store/selectors/navigation/content/file';\nimport {abortAndReset, loadFile} from '../../../../store/actions/navigation/content/file';\nimport {getAttributes, getPath} from '../../../../store/selectors/navigation';\nimport {getEffectiveMode} from '../../../../store/selectors/navigation/navigation';\n\nimport {useRumMeasureStop} from '../../../../rum/RumUiContext';\nimport {useAppRumMeasureStart} from '../../../../rum/rum-app-measures';\nimport {RumMeasureTypes} from '../../../../rum/rum-measure-types';\nimport {isFinalLoadingStatus} from '../../../../utils/utils';\n\nimport './File.scss';\nimport NavigationExtraActions from '../../../../containers/NavigationExtraActions/NavigationExtraActions';\n\nconst block = cn('navigation-file');\nconst messageBlock = cn('elements-message');\nconst codeBlock = cn('elements-code');\n\nconst renderMeta = (attributes, mediumList) => {\n return (\n <MetaTable\n items={[\n main(attributes),\n size(attributes, mediumList),\n [...compression(attributes), ...erasureReplication(attributes)],\n ]}\n />\n );\n};\n\nconst renderActions = (downloadPath) => {\n return (\n <div className={block('actions')}>\n <Button className={block('download')} href={downloadPath} target=\"_blank\">\n Download\n </Button>\n <NavigationExtraActions />\n </div>\n );\n};\n\nconst renderEmptyWarning = () => {\n return (\n <div className={messageBlock({theme: 'warning'})}>\n <p className={messageBlock('paragraph')}>File is empty.</p>\n </div>\n );\n};\n\nconst renderTooBigInfo = (downloadPath) => {\n return (\n <div className={messageBlock({theme: 'info'})}>\n <p className={messageBlock('paragraph')}>\n The file is too big to be fully shown here. You can{' '}\n <Link url={downloadPath} target=\"_blank\">\n download\n </Link>{' '}\n it.\n </p>\n </div>\n );\n};\n\nconst renderContent = (file, isTooBig, downloadPath) => {\n return (\n <Fragment>\n <pre className={codeBlock({theme: 'default'})}>{file}</pre>\n\n {isTooBig && renderTooBigInfo(downloadPath)}\n </Fragment>\n );\n};\n\nfunction File(props) {\n const {path, mode, loadFile, abortAndReset} = props;\n useEffect(() => {\n loadFile();\n return abortAndReset;\n }, [path, mode]);\n\n const {loading, loaded, attributes, mediumList, downloadPath, isEmpty, isTooBig, file} = props;\n const initialLoading = loading && !loaded;\n return (\n <LoadDataHandler {...props}>\n <div className={block({loading: initialLoading})}>\n {initialLoading ? (\n <Loader />\n ) : (\n <Fragment>\n {renderMeta(attributes, mediumList)}\n {renderActions(downloadPath)}\n {isEmpty\n ? renderEmptyWarning()\n : renderContent(file, isTooBig, downloadPath)}\n </Fragment>\n )}\n </div>\n </LoadDataHandler>\n );\n}\n\nFile.propTypes = {\n // from connect\n loading: PropTypes.bool.isRequired,\n loaded: PropTypes.bool.isRequired,\n error: PropTypes.bool.isRequired,\n errorData: PropTypes.object.isRequired,\n\n file: PropTypes.string,\n path: PropTypes.string.isRequired,\n mode: PropTypes.string.isRequired,\n isEmpty: PropTypes.bool.isRequired,\n isTooBig: PropTypes.bool.isRequired,\n attributes: PropTypes.object.isRequired,\n downloadPath: PropTypes.string.isRequired,\n mediumList: PropTypes.arrayOf(PropTypes.string.isRequired).isRequired,\n\n loadFile: PropTypes.func.isRequired,\n abortAndReset: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = (state) => {\n const {loading, loaded, error, errorData, file} = state.navigation.content.file;\n const {mediumList} = state.global;\n\n const downloadPath = getDownloadPath(state);\n const attributes = getAttributes(state);\n const isTooBig = getIsTooBig(state);\n const isEmpty = getIsEmpty(state);\n const path = getPath(state);\n const mode = getEffectiveMode(state);\n\n return {\n loading,\n loaded,\n error,\n errorData,\n mediumList,\n attributes,\n path,\n mode,\n isEmpty,\n isTooBig,\n downloadPath,\n file,\n };\n};\nconst mapDispatchToProps = {\n loadFile,\n abortAndReset,\n};\n\nconst FileConnected = connect(mapStateToProps, mapDispatchToProps)(File);\n\nexport default function FileWithRum() {\n const loadState = useSelector(getNavigationFileLoadingStatus);\n\n useAppRumMeasureStart({\n type: RumMeasureTypes.NAVIGATION_CONTENT_FILE,\n startDeps: [loadState],\n allowStart: ([loadState]) => {\n return !isFinalLoadingStatus(loadState);\n },\n });\n\n useRumMeasureStop({\n type: RumMeasureTypes.NAVIGATION_CONTENT_FILE,\n stopDeps: [loadState],\n allowStop: ([loadState]) => {\n return isFinalLoadingStatus(loadState);\n },\n });\n\n return <FileConnected />;\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,gBAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,UAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AAMA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAL,sBAAA,CAAAH,OAAA;AAEA,IAAAS,KAAA,GAAAT,OAAA;AAMA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,YAAA,GAAAZ,OAAA;AAEA,IAAAa,aAAA,GAAAb,OAAA;AACA,IAAAc,eAAA,GAAAd,OAAA;AACA,IAAAe,gBAAA,GAAAf,OAAA;AACA,IAAAgB,MAAA,GAAAhB,OAAA;AAEAA,OAAA;AACA,IAAAiB,uBAAA,GAAAd,sBAAA,CAAAH,OAAA;AAA0G,IAAAkB,WAAA,GAAAlB,OAAA;AAAA,SAAAmB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAArB,wBAAAqB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAzB,uBAAAqC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAE1G,IAAMC,KAAK,GAAG,IAAAC,kBAAE,EAAC,iBAAiB,CAAC;AACnC,IAAMC,YAAY,GAAG,IAAAD,kBAAE,EAAC,kBAAkB,CAAC;AAC3C,IAAME,SAAS,GAAG,IAAAF,kBAAE,EAAC,eAAe,CAAC;AAErC,IAAMG,UAAU,GAAG,SAAbA,UAAUA,CAAIC,UAAU,EAAEC,UAAU,EAAK;EAC3C,oBACI,IAAAC,eAAA,EAACC,kBAAS;IACNC,KAAK,EAAE,CACH,IAAAC,aAAI,EAACL,UAAU,CAAC,EAChB,IAAAM,aAAI,EAACN,UAAU,EAAEC,UAAU,CAAC,KAAAM,MAAA,KAAAC,2BAAA,EACxB,IAAAC,oBAAW,EAACT,UAAU,CAAC,OAAAQ,2BAAA,EAAK,IAAAE,2BAAkB,EAACV,UAAU,CAAC;EAChE,CACL,CAAC;AAEV,CAAC;AAED,IAAMW,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,YAAY,EAAK;EACpC,oBACI,IAAAC,gBAAA;IAAKC,SAAS,EAAEnB,KAAK,CAAC,SAAS,CAAE;IAAAoB,QAAA,gBAC7B,IAAAb,eAAA,EAACc,aAAM;MAACF,SAAS,EAAEnB,KAAK,CAAC,UAAU,CAAE;MAACsB,IAAI,EAAEL,YAAa;MAACM,MAAM,EAAC,QAAQ;MAAAH,QAAA,EAAC;IAE1E,CAAQ,CAAC,eACT,IAAAb,eAAA,EAACiB,+BAAsB,IAAE,CAAC;EAAA,CACzB,CAAC;AAEd,CAAC;AAED,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA,EAAS;EAC7B,oBACI,IAAAlB,eAAA;IAAKY,SAAS,EAAEjB,YAAY,CAAC;MAACwB,KAAK,EAAE;IAAS,CAAC,CAAE;IAAAN,QAAA,eAC7C,IAAAb,eAAA;MAAGY,SAAS,EAAEjB,YAAY,CAAC,WAAW,CAAE;MAAAkB,QAAA,EAAC;IAAc,CAAG;EAAC,CAC1D,CAAC;AAEd,CAAC;AAED,IAAMO,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIV,YAAY,EAAK;EACvC,oBACI,IAAAV,eAAA;IAAKY,SAAS,EAAEjB,YAAY,CAAC;MAACwB,KAAK,EAAE;IAAM,CAAC,CAAE;IAAAN,QAAA,eAC1C,IAAAF,gBAAA;MAAGC,SAAS,EAAEjB,YAAY,CAAC,WAAW,CAAE;MAAAkB,QAAA,GAAC,qDACc,EAAC,GAAG,eACvD,IAAAb,eAAA,EAACqB,aAAI;QAACC,GAAG,EAAEZ,YAAa;QAACM,MAAM,EAAC,QAAQ;QAAAH,QAAA,EAAC;MAEzC,CAAM,CAAC,EAAC,GAAG,EAAC,KAEhB;IAAA,CAAG;EAAC,CACH,CAAC;AAEd,CAAC;AAED,IAAMU,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,IAAI,EAAEC,QAAQ,EAAEf,YAAY,EAAK;EACpD,oBACI,IAAAC,gBAAA,EAACe,eAAQ;IAAAb,QAAA,gBACL,IAAAb,eAAA;MAAKY,SAAS,EAAEhB,SAAS,CAAC;QAACuB,KAAK,EAAE;MAAS,CAAC,CAAE;MAAAN,QAAA,EAAEW;IAAI,CAAM,CAAC,EAE1DC,QAAQ,IAAIL,gBAAgB,CAACV,YAAY,CAAC;EAAA,CACrC,CAAC;AAEnB,CAAC;AAED,SAASiB,IAAIA,CAACC,KAAK,EAAE;EACjB,IAAOC,IAAI,GAAmCD,KAAK,CAA5CC,IAAI;IAAEC,IAAI,GAA6BF,KAAK,CAAtCE,IAAI;IAAEC,QAAQ,GAAmBH,KAAK,CAAhCG,QAAQ;IAAEC,aAAa,GAAIJ,KAAK,CAAtBI,aAAa;EAC1C,IAAAC,gBAAS,EAAC,YAAM;IACZF,QAAQ,CAAC,CAAC;IACV,OAAOC,aAAa;EACxB,CAAC,EAAE,CAACH,IAAI,EAAEC,IAAI,CAAC,CAAC;EAEhB,IAAOI,OAAO,GAA2EN,KAAK,CAAvFM,OAAO;IAAEC,MAAM,GAAmEP,KAAK,CAA9EO,MAAM;IAAErC,UAAU,GAAuD8B,KAAK,CAAtE9B,UAAU;IAAEC,UAAU,GAA2C6B,KAAK,CAA1D7B,UAAU;IAAEW,YAAY,GAA6BkB,KAAK,CAA9ClB,YAAY;IAAE0B,OAAO,GAAoBR,KAAK,CAAhCQ,OAAO;IAAEX,QAAQ,GAAUG,KAAK,CAAvBH,QAAQ;IAAED,IAAI,GAAII,KAAK,CAAbJ,IAAI;EACrF,IAAMa,cAAc,GAAGH,OAAO,IAAI,CAACC,MAAM;EACzC,oBACI,IAAAnC,eAAA,EAACsC,wBAAe,MAAAC,sBAAA,MAAAA,sBAAA,MAAKX,KAAK;IAAAf,QAAA,eACtB,IAAAb,eAAA;MAAKY,SAAS,EAAEnB,KAAK,CAAC;QAACyC,OAAO,EAAEG;MAAc,CAAC,CAAE;MAAAxB,QAAA,EAC5CwB,cAAc,gBACX,IAAArC,eAAA,EAACwC,aAAM,IAAE,CAAC,gBAEV,IAAA7B,gBAAA,EAACe,eAAQ;QAAAb,QAAA,GACJhB,UAAU,CAACC,UAAU,EAAEC,UAAU,CAAC,EAClCU,aAAa,CAACC,YAAY,CAAC,EAC3B0B,OAAO,GACFlB,kBAAkB,CAAC,CAAC,GACpBK,aAAa,CAACC,IAAI,EAAEC,QAAQ,EAAEf,YAAY,CAAC;MAAA,CAC3C;IACb,CACA;EAAC,EACO,CAAC;AAE1B;AAsBA,IAAM+B,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAAK,EAAK;EAC/B,IAAAC,qBAAA,GAAkDD,KAAK,CAACE,UAAU,CAACC,OAAO,CAACrB,IAAI;IAAxEU,OAAO,GAAAS,qBAAA,CAAPT,OAAO;IAAEC,MAAM,GAAAQ,qBAAA,CAANR,MAAM;IAAEW,KAAK,GAAAH,qBAAA,CAALG,KAAK;IAAEC,SAAS,GAAAJ,qBAAA,CAATI,SAAS;IAAEvB,IAAI,GAAAmB,qBAAA,CAAJnB,IAAI;EAC9C,IAAOzB,UAAU,GAAI2C,KAAK,CAACM,MAAM,CAA1BjD,UAAU;EAEjB,IAAMW,YAAY,GAAG,IAAAuC,qBAAe,EAACP,KAAK,CAAC;EAC3C,IAAM5C,UAAU,GAAG,IAAAoD,yBAAa,EAACR,KAAK,CAAC;EACvC,IAAMjB,QAAQ,GAAG,IAAA0B,iBAAW,EAACT,KAAK,CAAC;EACnC,IAAMN,OAAO,GAAG,IAAAgB,gBAAU,EAACV,KAAK,CAAC;EACjC,IAAMb,IAAI,GAAG,IAAAwB,mBAAO,EAACX,KAAK,CAAC;EAC3B,IAAMZ,IAAI,GAAG,IAAAwB,6BAAgB,EAACZ,KAAK,CAAC;EAEpC,OAAO;IACHR,OAAO,EAAPA,OAAO;IACPC,MAAM,EAANA,MAAM;IACNW,KAAK,EAALA,KAAK;IACLC,SAAS,EAATA,SAAS;IACThD,UAAU,EAAVA,UAAU;IACVD,UAAU,EAAVA,UAAU;IACV+B,IAAI,EAAJA,IAAI;IACJC,IAAI,EAAJA,IAAI;IACJM,OAAO,EAAPA,OAAO;IACPX,QAAQ,EAARA,QAAQ;IACRf,YAAY,EAAZA,YAAY;IACZc,IAAI,EAAJA;EACJ,CAAC;AACL,CAAC;AACD,IAAM+B,kBAAkB,GAAG;EACvBxB,QAAQ,EAARA,eAAQ;EACRC,aAAa,EAAbA;AACJ,CAAC;AAED,IAAMwB,aAAa,GAAG,IAAAC,mBAAO,EAAChB,eAAe,EAAEc,kBAAkB,CAAC,CAAC5B,IAAI,CAAC;AAEzD,SAAS+B,WAAWA,CAAA,EAAG;EAClC,IAAMC,SAAS,GAAG,IAAAC,uBAAW,EAACC,oCAA8B,CAAC;EAE7D,IAAAC,qCAAqB,EAAC;IAClBC,IAAI,EAAEC,gCAAe,CAACC,uBAAuB;IAC7CC,SAAS,EAAE,CAACP,SAAS,CAAC;IACtBQ,UAAU,EAAE,SAAAA,WAAAC,IAAA,EAAiB;MAAA,IAAAC,KAAA,OAAAC,uBAAA,EAAAF,IAAA;QAAfT,SAAS,GAAAU,KAAA;MACnB,OAAO,CAAC,IAAAE,2BAAoB,EAACZ,SAAS,CAAC;IAC3C;EACJ,CAAC,CAAC;EAEF,IAAAa,+BAAiB,EAAC;IACdT,IAAI,EAAEC,gCAAe,CAACC,uBAAuB;IAC7CQ,QAAQ,EAAE,CAACd,SAAS,CAAC;IACrBe,SAAS,EAAE,SAAAA,UAAAC,KAAA,EAAiB;MAAA,IAAAC,KAAA,OAAAN,uBAAA,EAAAK,KAAA;QAAfhB,SAAS,GAAAiB,KAAA;MAClB,OAAO,IAAAL,2BAAoB,EAACZ,SAAS,CAAC;IAC1C;EACJ,CAAC,CAAC;EAEF,oBAAO,IAAA3D,eAAA,EAACwD,aAAa,IAAE,CAAC;AAC5B"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactRedux","_metrics","_ClipboardButton","_Button","_Icon","_restoreObject","_navigation","_ypath","_moveObject","_pathEditingPopup","_copyObject","_attributesModal","_attributesEditor","_restoreObject2","_navigation2","_deleteObject","_tableMergeSortModal","_tableEraseModal","_mapNode","_dynTablesStateModal","_mapNodeTs","_uikit","_linkToModal","_remoteCopyModal","_jsxRuntime","obj","__esModule","default","PathActions","props","item","objectPath","path","dispatch","useDispatch","transaction","useSelector","getTransaction","restorePath","ypath","getValue","$attributes","hasRestoreButton","inTrash","_React$useMemo","React","useMemo","handleUpdateView","updateView","apply","arguments","onMove","evt","openEditingPopup","OPEN_MOVE_OBJECT_POPUP","stopPropagation","onCopy","OPEN_COPY_OBJECT_POPUP","onShowAttributes","metrics","countEvent","openAttributesModal","title","$value","onEditAttributes","showNavigationAttributesEditor","onRestoreClick","restoreObject","onDeleteClick","openDeleteModal","onCopyPathClick","onSort","e","showTableSortModal","onErase","showTableEraseModal","onMerge","showTableMergeModal","onMount","showDynTablesStateModalByPaths","onUnmount","onFreeze","onUnfreeze","onLink","showLinkToModal","target","onTransfer","showRemoteCopyModal","selectedNodes","getSelectedNodes","length","secondGroup","text","icon","_jsx","Icon","awesome","face","action","firstGroup","unshift","menuItems","type","isDynamic","dynamic","tabletState","_ref","DYN_TABLES_ALLOWED_ACTIONS_BY_STATE","mount","unmount","freeze","unfreeze","items","concat","_toConsumableArray","push","commonProps","view","size","onlyDropdown","dropDownBtnClassName","_props$dropDownBtnThe","dropDownBtnTheme","_props$dropDownBtnSiz","dropDownBtnSize","_jsxs","Fragment","children","Button","_objectSpread","disabled","Boolean","onClick","ClipboardButton","DropdownMenu","switcher","className","_default","exports","memo"],"sources":["PathActions.tsx"],"sourcesContent":["import React from 'react';\nimport {useDispatch, useSelector} from 'react-redux';\n\nimport metrics from '../../../../common/utils/metrics';\n\nimport ClipboardButton from '../../../../components/ClipboardButton/ClipboardButton';\nimport Button from '../../../../components/Button/Button';\nimport Icon from '../../../../components/Icon/Icon';\n\nimport {inTrash} from '../../../../utils/navigation/restore-object';\nimport {getTransaction} from '../../../../store/selectors/navigation';\n\nimport ypath from '../../../../common/thor/ypath';\nimport {OPEN_MOVE_OBJECT_POPUP} from '../../../../constants/navigation/modals/move-object';\nimport {openEditingPopup} from '../../../../store/actions/navigation/modals/path-editing-popup';\nimport {OPEN_COPY_OBJECT_POPUP} from '../../../../constants/navigation/modals/copy-object';\nimport {openAttributesModal} from '../../../../store/actions/modals/attributes-modal';\nimport {showNavigationAttributesEditor} from '../../../../store/actions/navigation/modals/attributes-editor';\nimport {restoreObject} from '../../../../store/actions/navigation/modals/restore-object';\nimport {updateView} from '../../../../store/actions/navigation';\nimport {openDeleteModal} from '../../../../store/actions/navigation/modals/delete-object';\nimport {\n showTableMergeModal,\n showTableSortModal,\n} from '../../../../store/actions/navigation/modals/table-merge-sort-modal';\nimport {showTableEraseModal} from '../../../../store/actions/navigation/modals/table-erase-modal';\nimport {getSelectedNodes} from '../../../../store/selectors/navigation/content/map-node';\nimport {showDynTablesStateModalByPaths} from '../../../../store/actions/navigation/modals/dyn-tables-state-modal';\nimport {DYN_TABLES_ALLOWED_ACTIONS_BY_STATE} from '../../../../store/selectors/navigation/content/map-node-ts';\nimport {TabletStateType} from '../../../../store/reducers/navigation/modals/dyn-tables-state-modal';\nimport {ButtonProps, DropdownMenu} from '@gravity-ui/uikit';\nimport {showLinkToModal} from '../../../../store/actions/navigation/modals/link-to-modal';\nimport {showRemoteCopyModal} from '../../../../store/actions/navigation/modals/remote-copy-modal';\n\ninterface Props {\n item: {\n type: string;\n dynamic: boolean;\n path: string;\n $attributes: object;\n $value: unknown;\n tabletState: TabletStateType;\n };\n\n onlyDropdown?: boolean;\n dropDownBtnClassName?: string;\n dropDownBtnTheme?: ButtonProps['view'];\n dropDownBtnSize?: ButtonProps['size'];\n}\n\nfunction PathActions(props: Props) {\n const {item} = props;\n const objectPath = item.path;\n\n const dispatch = useDispatch();\n const transaction = useSelector(getTransaction);\n\n const restorePath = ypath.getValue(item.$attributes, '/_restore_path');\n const hasRestoreButton = inTrash(item.path);\n\n const {\n onMove,\n onCopy,\n onLink,\n onShowAttributes,\n onEditAttributes,\n onRestoreClick,\n onDeleteClick,\n onCopyPathClick,\n onSort,\n onErase,\n onMerge,\n onMount,\n onUnmount,\n onFreeze,\n onUnfreeze,\n onTransfer,\n } = React.useMemo(() => {\n const handleUpdateView = (...args: any) => dispatch(updateView(...args));\n\n return {\n onMove(evt: React.MouseEvent) {\n dispatch(openEditingPopup(objectPath, objectPath, OPEN_MOVE_OBJECT_POPUP));\n evt.stopPropagation();\n },\n onCopy(evt: React.MouseEvent) {\n dispatch(openEditingPopup(objectPath, objectPath, OPEN_COPY_OBJECT_POPUP));\n evt.stopPropagation();\n },\n onShowAttributes(evt: React.MouseEvent) {\n metrics.countEvent({\n 'navigation_map-node_attributes': 'clicked',\n });\n dispatch(\n openAttributesModal({\n title: item.$value,\n path: item.path,\n } as any),\n );\n evt.stopPropagation();\n },\n onEditAttributes(evt: React.MouseEvent) {\n metrics.countEvent({\n 'navigation_map-node_edit_attributes': 'clicked',\n });\n dispatch(showNavigationAttributesEditor([item.path]));\n evt.stopPropagation();\n },\n onRestoreClick(evt: React.MouseEvent) {\n dispatch(restoreObject(objectPath, restorePath, handleUpdateView));\n evt.stopPropagation();\n },\n\n onDeleteClick(evt: React.MouseEvent) {\n metrics.countEvent({'navigation_map-node_delete': 'clicked'});\n dispatch(openDeleteModal(item));\n evt.stopPropagation();\n },\n onCopyPathClick(evt: React.MouseEvent) {\n metrics.countEvent({\n 'navigation_map-node_copy-path': 'clicked',\n });\n evt.stopPropagation();\n },\n onSort(e: React.MouseEvent) {\n dispatch(showTableSortModal([item.path]));\n e.stopPropagation();\n },\n onErase(evt: React.MouseEvent) {\n dispatch(showTableEraseModal(item.path));\n evt.stopPropagation();\n },\n onMerge(evt: React.MouseEvent) {\n dispatch(showTableMergeModal([item.path]));\n evt.stopPropagation();\n },\n onMount(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'mount'));\n evt.stopPropagation();\n },\n onUnmount(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'unmount'));\n evt.stopPropagation();\n },\n onFreeze(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'freeze'));\n evt.stopPropagation();\n },\n onUnfreeze(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'unfreeze'));\n evt.stopPropagation();\n },\n onLink(evt: React.MouseEvent) {\n dispatch(showLinkToModal({target: item.path}));\n evt.stopPropagation();\n },\n onTransfer(evt: React.MouseEvent) {\n dispatch(showRemoteCopyModal([item.path]));\n evt.stopPropagation();\n },\n };\n }, [dispatch, objectPath, item, restorePath]);\n\n const selectedNodes = useSelector(getSelectedNodes);\n if (selectedNodes.length) {\n return null;\n }\n\n const secondGroup = [\n {\n text: 'Move',\n icon: <Icon awesome=\"file-export\" face=\"solid\" />,\n action: onMove,\n },\n {\n text: 'Copy',\n icon: <Icon awesome=\"copy\" face=\"solid\" />,\n action: onCopy,\n },\n {\n text: 'Link',\n icon: <Icon awesome=\"link\" face=\"solid\" />,\n action: onLink,\n },\n {\n text: 'Delete',\n icon: <Icon awesome=\"trash-alt\" />,\n action: onDeleteClick,\n },\n ];\n\n const firstGroup: Array<{\n text: string;\n icon?: React.ReactNode;\n action: (evt: any) => void;\n }> = [\n {\n text: 'Attributes',\n icon: <Icon awesome=\"at\" />,\n action: onShowAttributes,\n },\n {\n text: 'Edit',\n icon: <Icon awesome=\"pencil-alt\" />,\n action: onEditAttributes,\n },\n ];\n\n if (hasRestoreButton) {\n firstGroup.unshift({\n text: 'Restore',\n icon: <Icon awesome=\"undo\" />,\n action: onRestoreClick,\n });\n }\n const menuItems = [firstGroup];\n\n if (item.type === 'table') {\n const isDynamic = item.dynamic;\n if (isDynamic) {\n const {tabletState} = item;\n const {mount, unmount, freeze, unfreeze} =\n DYN_TABLES_ALLOWED_ACTIONS_BY_STATE[tabletState] || {};\n const items = [\n ...(mount\n ? [\n {\n text: 'Mount',\n icon: <Icon awesome={'link'} />,\n action: onMount,\n },\n ]\n : []),\n ...(unmount\n ? [\n {\n text: 'Unmount',\n icon: <Icon awesome={'unlink'} />,\n action: onUnmount,\n },\n ]\n : []),\n ...(freeze\n ? [\n {\n text: 'Freeze',\n icon: <Icon awesome={'snowflake'} />,\n action: onFreeze,\n },\n ]\n : []),\n ...(unfreeze\n ? [\n {\n text: 'Unfreeze',\n icon: <Icon awesome={'flame'} />,\n action: onUnfreeze,\n },\n ]\n : []),\n ];\n if (items.length) {\n menuItems.push(items);\n }\n }\n menuItems.push([\n {\n text: 'Sort',\n icon: <Icon awesome={'sort'} />,\n action: onSort,\n },\n ...(!isDynamic\n ? [\n {\n text: 'Erase',\n icon: <Icon awesome={'eraser'} />,\n action: onErase,\n },\n ]\n : []),\n {\n text: 'Merge',\n icon: <Icon awesome={'code-merge'} />,\n action: onMerge,\n },\n ]);\n\n menuItems.push([\n {\n text: 'Remote copy',\n icon: <Icon awesome={'clone'} />,\n action: onTransfer,\n },\n ]);\n }\n\n menuItems.push(secondGroup);\n\n const commonProps = {\n view: 'flat-secondary' as const,\n size: 'm' as const,\n };\n\n const {\n onlyDropdown,\n dropDownBtnClassName,\n dropDownBtnTheme = 'flat-secondary',\n dropDownBtnSize = 'm',\n } = props;\n\n return (\n <React.Fragment>\n {!onlyDropdown && (\n <Button\n {...commonProps}\n title=\"Delete node\"\n disabled={Boolean(transaction)}\n onClick={onDeleteClick}\n >\n <Icon awesome=\"trash-alt\" />\n </Button>\n )}\n\n {!onlyDropdown && (\n <ClipboardButton\n {...commonProps}\n text={item.path}\n title=\"Copy path\"\n onCopy={onCopyPathClick}\n />\n )}\n\n <DropdownMenu\n switcher={\n <Button\n size={dropDownBtnSize}\n className={dropDownBtnClassName}\n view={dropDownBtnTheme}\n >\n <Icon awesome=\"ellipsis-h\" />\n </Button>\n }\n items={menuItems}\n />\n </React.Fragment>\n );\n}\n\nexport default React.memo(PathActions);\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactRedux","_metrics","_ClipboardButton","_Button","_Icon","_restoreObject","_navigation","_ypath","_moveObject","_pathEditingPopup","_copyObject","_attributesModal","_attributesEditor","_restoreObject2","_navigation2","_deleteObject","_tableMergeSortModal","_tableEraseModal","_mapNode","_dynTablesStateModal","_mapNodeTs","_uikit","_linkToModal","_remoteCopyModal","_jsxRuntime","obj","__esModule","default","PathActions","props","item","objectPath","path","dispatch","useDispatch","transaction","useSelector","getTransaction","restorePath","ypath","getValue","$attributes","hasRestoreButton","inTrash","_React$useMemo","React","useMemo","handleUpdateView","updateView","apply","arguments","onMove","evt","openEditingPopup","OPEN_MOVE_OBJECT_POPUP","stopPropagation","onCopy","OPEN_COPY_OBJECT_POPUP","onShowAttributes","metrics","countEvent","openAttributesModal","title","$value","onEditAttributes","showNavigationAttributesEditor","onRestoreClick","restoreObject","onDeleteClick","openDeleteModal","onCopyPathClick","onSort","e","showTableSortModal","onErase","showTableEraseModal","onMerge","showTableMergeModal","onMount","showDynTablesStateModalByPaths","onUnmount","onFreeze","onUnfreeze","onLink","showLinkToModal","target","onTransfer","showRemoteCopyModal","selectedNodes","getSelectedNodes","length","secondGroup","text","icon","_jsx","Icon","awesome","face","action","firstGroup","unshift","menuItems","type","isDynamic","dynamic","tabletState","_ref","DYN_TABLES_ALLOWED_ACTIONS_BY_STATE","mount","unmount","freeze","unfreeze","items","concat","_toConsumableArray","push","commonProps","view","size","onlyDropdown","dropDownBtnClassName","_props$dropDownBtnThe","dropDownBtnTheme","_props$dropDownBtnSiz","dropDownBtnSize","_jsxs","Fragment","children","Button","_objectSpread","disabled","Boolean","onClick","ClipboardButton","DropdownMenu","switcher","className","_default","exports","memo"],"sources":["PathActions.tsx"],"sourcesContent":["import React from 'react';\nimport {useDispatch, useSelector} from 'react-redux';\n\nimport metrics from '../../../../common/utils/metrics';\n\nimport ClipboardButton from '../../../../components/ClipboardButton/ClipboardButton';\nimport Button from '../../../../components/Button/Button';\nimport Icon from '../../../../components/Icon/Icon';\n\nimport {inTrash} from '../../../../utils/navigation/restore-object';\nimport {getTransaction} from '../../../../store/selectors/navigation';\n\nimport ypath from '../../../../common/thor/ypath';\nimport {OPEN_MOVE_OBJECT_POPUP} from '../../../../constants/navigation/modals/move-object';\nimport {openEditingPopup} from '../../../../store/actions/navigation/modals/path-editing-popup';\nimport {OPEN_COPY_OBJECT_POPUP} from '../../../../constants/navigation/modals/copy-object';\nimport {openAttributesModal} from '../../../../store/actions/modals/attributes-modal';\nimport {showNavigationAttributesEditor} from '../../../../store/actions/navigation/modals/attributes-editor';\nimport {restoreObject} from '../../../../store/actions/navigation/modals/restore-object';\nimport {updateView} from '../../../../store/actions/navigation';\nimport {openDeleteModal} from '../../../../store/actions/navigation/modals/delete-object';\nimport {\n showTableMergeModal,\n showTableSortModal,\n} from '../../../../store/actions/navigation/modals/table-merge-sort-modal';\nimport {showTableEraseModal} from '../../../../store/actions/navigation/modals/table-erase-modal';\nimport {getSelectedNodes} from '../../../../store/selectors/navigation/content/map-node';\nimport {showDynTablesStateModalByPaths} from '../../../../store/actions/navigation/modals/dyn-tables-state-modal';\nimport {DYN_TABLES_ALLOWED_ACTIONS_BY_STATE} from '../../../../store/selectors/navigation/content/map-node-ts';\nimport {TabletStateType} from '../../../../store/reducers/navigation/modals/dyn-tables-state-modal';\nimport {ButtonProps, DropdownMenu} from '@gravity-ui/uikit';\nimport {showLinkToModal} from '../../../../store/actions/navigation/modals/link-to-modal';\nimport {showRemoteCopyModal} from '../../../../store/actions/navigation/modals/remote-copy-modal';\n\ninterface Props {\n item: {\n type: string;\n dynamic: boolean;\n path: string;\n $attributes: object;\n $value: unknown;\n tabletState: TabletStateType;\n };\n\n onlyDropdown?: boolean;\n dropDownBtnClassName?: string;\n dropDownBtnTheme?: ButtonProps['view'];\n dropDownBtnSize?: ButtonProps['size'];\n}\n\nfunction PathActions(props: Props) {\n const {item} = props;\n const objectPath = item.path;\n\n const dispatch = useDispatch();\n const transaction = useSelector(getTransaction);\n\n const restorePath = ypath.getValue(item.$attributes, '/_restore_path');\n const hasRestoreButton = inTrash(item.path);\n\n const {\n onMove,\n onCopy,\n onLink,\n onShowAttributes,\n onEditAttributes,\n onRestoreClick,\n onDeleteClick,\n onCopyPathClick,\n onSort,\n onErase,\n onMerge,\n onMount,\n onUnmount,\n onFreeze,\n onUnfreeze,\n onTransfer,\n } = React.useMemo(() => {\n const handleUpdateView = (...args: any) => dispatch(updateView(...args));\n\n return {\n onMove(evt: React.MouseEvent) {\n dispatch(openEditingPopup(objectPath, objectPath, OPEN_MOVE_OBJECT_POPUP));\n evt.stopPropagation();\n },\n onCopy(evt: React.MouseEvent) {\n dispatch(openEditingPopup(objectPath, objectPath, OPEN_COPY_OBJECT_POPUP));\n evt.stopPropagation();\n },\n onShowAttributes(evt: React.MouseEvent) {\n metrics.countEvent({\n 'navigation_map-node_attributes': 'clicked',\n });\n dispatch(\n openAttributesModal({\n title: item.$value,\n path: item.path,\n } as any),\n );\n evt.stopPropagation();\n },\n onEditAttributes(evt: React.MouseEvent) {\n metrics.countEvent({\n 'navigation_map-node_edit_attributes': 'clicked',\n });\n dispatch(showNavigationAttributesEditor([item.path]));\n evt.stopPropagation();\n },\n onRestoreClick(evt: React.MouseEvent) {\n dispatch(restoreObject(objectPath, restorePath, handleUpdateView));\n evt.stopPropagation();\n },\n\n onDeleteClick(evt: React.MouseEvent) {\n metrics.countEvent({'navigation_map-node_delete': 'clicked'});\n dispatch(openDeleteModal(item));\n evt.stopPropagation();\n },\n onCopyPathClick(evt: React.MouseEvent) {\n metrics.countEvent({\n 'navigation_map-node_copy-path': 'clicked',\n });\n evt.stopPropagation();\n },\n onSort(e: React.MouseEvent) {\n dispatch(showTableSortModal([item.path]));\n e.stopPropagation();\n },\n onErase(evt: React.MouseEvent) {\n dispatch(showTableEraseModal(item.path));\n evt.stopPropagation();\n },\n onMerge(evt: React.MouseEvent) {\n dispatch(showTableMergeModal([item.path]));\n evt.stopPropagation();\n },\n onMount(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'mount'));\n evt.stopPropagation();\n },\n onUnmount(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'unmount'));\n evt.stopPropagation();\n },\n onFreeze(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'freeze'));\n evt.stopPropagation();\n },\n onUnfreeze(evt: React.MouseEvent) {\n dispatch(showDynTablesStateModalByPaths([item.path], 'unfreeze'));\n evt.stopPropagation();\n },\n onLink(evt: React.MouseEvent) {\n dispatch(showLinkToModal({target: item.path}));\n evt.stopPropagation();\n },\n onTransfer(evt: React.MouseEvent) {\n dispatch(showRemoteCopyModal([item.path]));\n evt.stopPropagation();\n },\n };\n }, [dispatch, objectPath, item, restorePath]);\n\n const selectedNodes = useSelector(getSelectedNodes);\n if (selectedNodes.length) {\n return null;\n }\n\n const secondGroup = [\n {\n text: 'Move',\n icon: <Icon awesome=\"file-export\" face=\"solid\" />,\n action: onMove,\n },\n {\n text: 'Copy',\n icon: <Icon awesome=\"copy\" face=\"solid\" />,\n action: onCopy,\n },\n {\n text: 'Link',\n icon: <Icon awesome=\"link\" face=\"solid\" />,\n action: onLink,\n },\n {\n text: 'Delete',\n icon: <Icon awesome=\"trash-alt\" />,\n action: onDeleteClick,\n },\n ];\n\n const firstGroup: Array<{\n text: string;\n icon?: React.ReactNode;\n action: (evt: any) => void;\n }> = [\n {\n text: 'Attributes',\n icon: <Icon awesome=\"at\" />,\n action: onShowAttributes,\n },\n {\n text: 'Edit',\n icon: <Icon awesome=\"pencil-alt\" />,\n action: onEditAttributes,\n },\n ];\n\n if (hasRestoreButton) {\n firstGroup.unshift({\n text: 'Restore',\n icon: <Icon awesome=\"undo\" />,\n action: onRestoreClick,\n });\n }\n const menuItems = [firstGroup];\n\n if (item.type === 'table') {\n const isDynamic = item.dynamic;\n if (isDynamic) {\n const {tabletState} = item;\n const {mount, unmount, freeze, unfreeze} =\n DYN_TABLES_ALLOWED_ACTIONS_BY_STATE[tabletState] || {};\n const items = [\n ...(mount\n ? [\n {\n text: 'Mount',\n icon: <Icon awesome={'link'} />,\n action: onMount,\n },\n ]\n : []),\n ...(unmount\n ? [\n {\n text: 'Unmount',\n icon: <Icon awesome={'unlink'} />,\n action: onUnmount,\n },\n ]\n : []),\n ...(freeze\n ? [\n {\n text: 'Freeze',\n icon: <Icon awesome={'snowflake'} />,\n action: onFreeze,\n },\n ]\n : []),\n ...(unfreeze\n ? [\n {\n text: 'Unfreeze',\n icon: <Icon awesome={'flame'} />,\n action: onUnfreeze,\n },\n ]\n : []),\n ];\n if (items.length) {\n menuItems.push(items);\n }\n }\n menuItems.push([\n {\n text: 'Sort',\n icon: <Icon awesome={'sort'} />,\n action: onSort,\n },\n ...(!isDynamic\n ? [\n {\n text: 'Erase',\n icon: <Icon awesome={'eraser'} />,\n action: onErase,\n },\n ]\n : []),\n {\n text: 'Merge',\n icon: <Icon awesome={'code-merge'} />,\n action: onMerge,\n },\n ]);\n }\n if (item.type === 'table' || item.type === 'file') {\n menuItems.push([\n {\n text: 'Remote copy',\n icon: <Icon awesome={'clone'} />,\n action: onTransfer,\n },\n ]);\n }\n\n menuItems.push(secondGroup);\n\n const commonProps = {\n view: 'flat-secondary' as const,\n size: 'm' as const,\n };\n\n const {\n onlyDropdown,\n dropDownBtnClassName,\n dropDownBtnTheme = 'flat-secondary',\n dropDownBtnSize = 'm',\n } = props;\n\n return (\n <React.Fragment>\n {!onlyDropdown && (\n <Button\n {...commonProps}\n title=\"Delete node\"\n disabled={Boolean(transaction)}\n onClick={onDeleteClick}\n >\n <Icon awesome=\"trash-alt\" />\n </Button>\n )}\n\n {!onlyDropdown && (\n <ClipboardButton\n {...commonProps}\n text={item.path}\n title=\"Copy path\"\n onCopy={onCopyPathClick}\n />\n )}\n\n <DropdownMenu\n switcher={\n <Button\n size={dropDownBtnSize}\n className={dropDownBtnClassName}\n view={dropDownBtnTheme}\n >\n <Icon awesome=\"ellipsis-h\" />\n </Button>\n }\n items={menuItems}\n />\n </React.Fragment>\n );\n}\n\nexport default React.memo(PathActions);\n"],"mappings":"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"}
|
@@ -9,8 +9,8 @@ exports.prepareVisibleItems = prepareVisibleItems;
|
|
9
9
|
exports.remoteInputUrl = remoteInputUrl;
|
10
10
|
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
|
11
11
|
var _keys2 = _interopRequireDefault(require("lodash/keys"));
|
12
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
13
12
|
var _each2 = _interopRequireDefault(require("lodash/each"));
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
14
14
|
var _filter2 = _interopRequireDefault(require("lodash/filter"));
|
15
15
|
var _sortBy2 = _interopRequireDefault(require("lodash/sortBy"));
|
16
16
|
var _map2 = _interopRequireDefault(require("lodash/map"));
|
@@ -147,9 +147,11 @@ function prepareTable(operation, type, table, typedTable, userTransactionAlive,
|
|
147
147
|
var cluster = _ypath.default.getValue(table, '/@cluster');
|
148
148
|
var originalPath = _ypath.default.getValue(table, '/@original_path');
|
149
149
|
var transaction = prepareTransaction(operation, type, table, userTransactionAlive);
|
150
|
-
return {
|
151
|
-
path: path
|
152
|
-
|
150
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
151
|
+
path: path
|
152
|
+
}, cluster ? {
|
153
|
+
cluster: cluster
|
154
|
+
} : {}), {}, {
|
153
155
|
originalPath: originalPath,
|
154
156
|
transaction: transaction,
|
155
157
|
livePreview: prepareLivePreview(operation, type, index),
|
@@ -159,7 +161,7 @@ function prepareTable(operation, type, table, typedTable, userTransactionAlive,
|
|
159
161
|
foreign: _ypath.default.getBoolean(table, '/@foreign'),
|
160
162
|
filters: prepareTableFilters(table),
|
161
163
|
typedFilters: prepareTableFilters(typedTable)
|
162
|
-
};
|
164
|
+
});
|
163
165
|
}
|
164
166
|
function groupTables(tables) {
|
165
167
|
var group = [];
|
@@ -173,12 +175,13 @@ function groupTables(tables) {
|
|
173
175
|
var groupKey = cluster ? "".concat(cluster, ":").concat(folder) : folder;
|
174
176
|
if (currentGroup !== groupKey) {
|
175
177
|
currentGroup = groupKey;
|
176
|
-
group.push({
|
178
|
+
group.push((0, _objectSpread2.default)({
|
177
179
|
path: folder,
|
178
180
|
transaction: table.transaction,
|
179
|
-
isFolder: true
|
181
|
+
isFolder: true
|
182
|
+
}, cluster ? {
|
180
183
|
cluster: cluster
|
181
|
-
});
|
184
|
+
} : {}));
|
182
185
|
}
|
183
186
|
group.push(Object.assign(table, {
|
184
187
|
name: name
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_ypath","_interopRequireDefault","require","_UIFactory","_navigation","obj","__esModule","default","TASKS_PREFIX","prepareFile","file","path","ypath","getValue","originalPath","name","executable","getBoolean","prepareMeta","meta","prepared","_map","value","_sortBy","prepareStartedBy","operation","startedBy","command","fields","_filter","option","length","undefined","prepareRemote","type","cluster","network","prepareTransferTask","task","id","task_id","url","UIFactory","makeUrlForTransferTask","prepareTransaction","table","userTransactionAlive","tableTransaction","get","state","concat","prepareLivePreview","index","isRunning","_operation$getLivePre","getLivePreviewPath","virtualPath","supported","transaction","normalizeTableRanges","ranges","upperLimit","lowerLimit","range","prepareTableFilters","columns","filters","prepareTable","typedTable","livePreview","append","teleport","primary","foreign","typedFilters","groupTables","tables","group","currentGroup","_each","YPath","create","getKey","folder","toSubpath","stringify","groupKey","push","isFolder","Object","assign","err","console","error","prepareRemoteInput","input","item","_objectSpread","remote","genNavigationUrl","remoteInputUrl","prepareInput","TYPE","typedTables","$typedAttributes","prepareStderr","prepareCoredumps","coreTable","prepareOutput","prepareIntermediate","prepareScriptCaption","indexOf","substring","prepareScript","_environment","script","environment","className","jobCount","files","caption","prepareTasks","tasks","_keys","taskName","prepareSpecification","specification","transferTask","mode","output","stderr","intermediate","coredumps","mapper","reducer","reduceCombiner","prepareVisibleItems","items","filterVisibleItems","itemsCount","result","count","_iterator","_createForOfIteratorHelper","_step","s","n","done","e","f"],"sources":["specification.ts"],"sourcesContent":["import _ from 'lodash';\n\nimport ypath from '../../../../../common/thor/ypath';\nimport UIFactory from '../../../../../UIFactory';\nimport {\n DetailedOperationSelector,\n OperationPreviewType,\n} from '../../../../../pages/operations/selectors';\nimport {genNavigationUrl} from '../../../../../utils/navigation/navigation';\n\nconst TASKS_PREFIX = 'tasks/';\n\nfunction prepareFile(file: unknown) {\n return {\n path: ypath.getValue(file),\n originalPath: ypath.getValue(file, '/@original_path'),\n name: ypath.getValue(file, '/@file_name'),\n executable: ypath.getBoolean(file, '/@executable'),\n };\n}\n\nfunction prepareMeta(meta: Record<string, unknown>) {\n const prepared = _.map(meta, (value, name) => ({name, value}));\n\n return _.sortBy(prepared, 'name');\n}\n\nfunction prepareStartedBy(operation: DetailedOperationSelector) {\n const startedBy = ypath.getValue(operation, '/@spec/started_by');\n const command = ypath.getValue(startedBy, '/command') || [];\n\n const fields = _.filter(prepareMeta(startedBy), (option) => option.name !== 'command');\n\n if (fields.length || command.length) {\n return {\n fields: fields,\n command: command,\n };\n }\n\n return undefined;\n}\n\nfunction prepareRemote(operation: DetailedOperationSelector) {\n if (operation.type === 'remote_copy') {\n return {\n cluster: ypath.getValue(operation, '/@spec/cluster_name'),\n network: ypath.getValue(operation, '/@spec/network_name'),\n };\n }\n return undefined;\n}\n\nfunction prepareTransferTask(operation: DetailedOperationSelector) {\n const task = ypath.getValue(operation, '/@spec/transfer_manager');\n\n if (task) {\n return {\n id: task.task_id,\n url: UIFactory.makeUrlForTransferTask(operation),\n };\n }\n return undefined;\n}\n\nfunction prepareTransaction(\n operation: DetailedOperationSelector,\n type: OperationPreviewType,\n table: unknown,\n userTransactionAlive: boolean,\n) {\n const tableTransaction = ypath.get(table, '/@transaction_id');\n\n if (tableTransaction) {\n return tableTransaction;\n } else if (operation.state === 'running') {\n return ypath.get(\n operation,\n `/@${type === 'stderr' ? 'debug_output' : type}_transaction_id`,\n );\n } else if (userTransactionAlive) {\n return ypath.get(operation, '/@user_transaction_id');\n }\n return undefined;\n}\n\nfunction prepareLivePreview(\n operation: DetailedOperationSelector,\n type: OperationPreviewType,\n index?: number | string,\n): {path?: string; supported: boolean; transaction?: string} {\n if (operation.isRunning()) {\n const {path, virtualPath} = operation.getLivePreviewPath(type, index);\n\n if (virtualPath) {\n return {path: virtualPath, supported: true};\n } else if (path) {\n const transaction = ypath.getValue(operation, '/@async_scheduler_transaction_id');\n return {path, transaction, supported: true};\n }\n }\n\n return {supported: false};\n}\n\ntype RangeType = {upper_limit?: number; lower_limit?: number};\n\nfunction normalizeTableRanges(table: unknown) {\n let ranges: Array<RangeType> = ypath.getValue(table, '/@ranges');\n\n if (typeof ranges === 'undefined') {\n // Fallback attempt to get ranges from attributes\n // Exact range is only supported in updated ypath\n const upperLimit = ypath.getValue(table, '/@upper_limit');\n const lowerLimit = ypath.getValue(table, '/@lower_limit');\n\n let range: RangeType | undefined;\n\n if (typeof upperLimit !== 'undefined') {\n range = range || {};\n range['upper_limit'] = upperLimit;\n }\n\n if (typeof lowerLimit !== 'undefined') {\n range = range || {};\n range['lower_limit'] = lowerLimit;\n }\n\n if (range) {\n ranges = [range];\n }\n\n if (range) {\n ranges = [range];\n }\n }\n\n return ranges;\n}\n\nfunction prepareTableFilters(table: unknown) {\n const ranges = normalizeTableRanges(table);\n const columns = ypath.getValue(table, '/@columns');\n let filters: {ranges?: typeof ranges; columns?: typeof columns} | undefined;\n\n if (ranges) {\n filters = filters || {};\n filters.ranges = ranges;\n }\n\n if (columns) {\n filters = filters || {};\n filters.columns = columns;\n }\n\n return filters;\n}\n\nfunction prepareTable(\n operation: DetailedOperationSelector,\n type: OperationPreviewType,\n table: unknown,\n typedTable: unknown,\n userTransactionAlive: boolean,\n index?: number | string,\n) {\n const path: string = ypath.getValue(table);\n const cluster: string | undefined = ypath.getValue(table, '/@cluster');\n const originalPath = ypath.getValue(table, '/@original_path');\n const transaction = prepareTransaction(operation, type, table, userTransactionAlive);\n\n return {\n path,\n cluster,\n originalPath,\n transaction,\n livePreview: prepareLivePreview(operation, type, index),\n append: ypath.getBoolean(table, '/@append'),\n teleport: ypath.getBoolean(table, '/@teleport'),\n primary: ypath.getBoolean(table, '/@primary'),\n foreign: ypath.getBoolean(table, '/@foreign'),\n filters: prepareTableFilters(table),\n typedFilters: prepareTableFilters(typedTable),\n };\n}\n\nfunction groupTables<T extends {path: string; transaction?: string; cluster?: string}>(\n tables: Array<T>,\n) {\n const group: Array<{\n path: string;\n name?: string;\n isFolder?: boolean;\n transaction?: string;\n cluster?: string;\n }> = [];\n let currentGroup: string;\n\n _.each(tables, (table) => {\n try {\n const {cluster} = table;\n const path = ypath.YPath.create(table.path, 'absolute');\n const name = path.getKey();\n const folder = path.toSubpath(-2).stringify();\n const groupKey: string = cluster ? `${cluster}:${folder}` : folder;\n\n if (currentGroup !== groupKey) {\n currentGroup = groupKey;\n group.push({\n path: folder,\n transaction: table.transaction,\n isFolder: true,\n cluster,\n });\n }\n\n group.push(Object.assign(table, {name: name}));\n } catch (err) {\n console.error('groupTables error', err);\n }\n });\n\n return group;\n}\n\nfunction prepareRemoteInput<T extends {path: string; transaction?: string}>(\n input: Array<T>,\n cluster: string,\n) {\n if (cluster) {\n return _.map(input, (item) => ({\n ...item,\n remote: true,\n url: genNavigationUrl({cluster, ...item}),\n }));\n }\n\n return input;\n}\n\nexport function remoteInputUrl(cluster: string, path: string, transaction?: string) {\n return '/' + cluster + '/navigation?path=' + path + (transaction ? '&t=' + transaction : '');\n}\n\nfunction prepareInput(operation: DetailedOperationSelector, userTransactionAlive: boolean) {\n const TYPE = 'input';\n let tables;\n\n switch (operation.type) {\n case 'remote_copy':\n case 'merge':\n case 'map':\n case 'reduce':\n case 'map_reduce':\n case 'sort':\n case 'join_reduce': {\n const typedTables = ypath.get(operation.$typedAttributes, '/spec/input_table_paths');\n\n tables = ypath.get(operation, '/@spec/input_table_paths');\n tables = _.map(tables, (table, index) =>\n prepareTable(operation, TYPE, table, typedTables[index], userTransactionAlive),\n );\n break;\n }\n case 'erase': {\n const typedTable = ypath.get(operation.$typedAttributes, '/spec/input_table_path');\n\n tables = ypath.get(operation, '/@spec/table_path');\n tables = tables && [\n prepareTable(operation, TYPE, tables, typedTable, userTransactionAlive),\n ];\n break;\n }\n }\n\n return groupTables(tables);\n}\n\nfunction prepareStderr(operation: DetailedOperationSelector, userTransactionAlive: boolean) {\n const TYPE = 'stderr';\n const typedTables = ypath.get(operation.$typedAttributes, '/spec/input_table_paths');\n\n let tables = ypath.get(operation, '/@spec/stderr_table_path');\n tables = tables && [prepareTable(operation, TYPE, tables, typedTables, userTransactionAlive)];\n\n return groupTables(tables);\n}\n\nfunction prepareCoredumps(operation: DetailedOperationSelector) {\n const coreTable = ypath.get(operation.$typedAttributes, '/spec/core_table_path');\n\n const tables = coreTable ? [prepareTable(operation, 'core', coreTable, [], false)] : [];\n return groupTables(tables);\n}\n\nfunction prepareOutput(operation: DetailedOperationSelector, userTransactionAlive: boolean) {\n const TYPE = 'output';\n let tables;\n\n switch (operation.type) {\n case 'map':\n case 'reduce':\n case 'map_reduce':\n case 'join_reduce': {\n const typedTables = ypath.get(operation.$typedAttributes, '/spec/input_table_paths');\n\n tables = ypath.get(operation, '/@spec/output_table_paths');\n tables = _.map(tables, (table, index) =>\n prepareTable(\n operation,\n TYPE,\n table,\n typedTables[index],\n userTransactionAlive,\n index,\n ),\n );\n break;\n }\n case 'merge': // These operations do not have output livePreview\n case 'sort':\n case 'remote_copy': {\n const typedTable = ypath.get(operation.$typedAttributes, '/spec/input_table_path');\n\n tables = ypath.get(operation, '/@spec/output_table_path');\n tables = tables && [\n prepareTable(operation, TYPE, tables, typedTable, userTransactionAlive),\n ];\n break;\n }\n }\n\n return groupTables(tables);\n}\n\nfunction prepareIntermediate(operation: DetailedOperationSelector) {\n let livePreview;\n\n switch (operation.type) {\n case 'map_reduce':\n case 'sort':\n livePreview = prepareLivePreview(operation, 'intermediate');\n break;\n }\n\n if (livePreview && livePreview.supported) {\n return livePreview;\n }\n\n return undefined;\n}\n\nfunction prepareScriptCaption(type: string) {\n return type.indexOf(TASKS_PREFIX) === 0 ? type.substring(TASKS_PREFIX.length) + '_task' : type;\n}\n\nfunction prepareScript(operation: DetailedOperationSelector, type: string) {\n try {\n const script = ypath.getValue(operation, '/@spec/' + type);\n\n let environment = ypath.getValue(script, '/environment');\n environment = prepareMeta(environment);\n\n const command = ypath.getValue(script, '/command');\n const className = ypath.getValue(script, '/class_name');\n const jobCount = ypath.getValue(script, '/job_count');\n const files = _.map(ypath.getValue(script, '/file_paths'), prepareFile);\n\n if (command || className || jobCount || files?.length || environment?.length) {\n return {\n type: type,\n caption: prepareScriptCaption(type),\n command,\n className,\n jobCount,\n files,\n environment,\n };\n }\n } catch (err) {\n console.error('prepareScript error:', err);\n }\n\n return undefined;\n}\n\nfunction prepareTasks(operation: DetailedOperationSelector) {\n const tasks = ypath.getValue(operation, '/@spec/tasks');\n\n if (tasks) {\n return _.map(_.keys(tasks), (taskName) =>\n prepareScript(operation, TASKS_PREFIX + taskName),\n );\n }\n\n return undefined;\n}\n\nexport function prepareSpecification(\n operation: DetailedOperationSelector,\n userTransactionAlive: boolean,\n) {\n const remote = prepareRemote(operation);\n\n const specification = {\n startedBy: prepareStartedBy(operation),\n\n // Remote copy\n remote,\n transferTask: prepareTransferTask(operation),\n // Merge\n mode: ypath.getValue(operation, '/@spec/mode'),\n\n // Input/Intermediate/Output/Stderr\n input: prepareRemoteInput(prepareInput(operation, userTransactionAlive), remote?.cluster),\n output: prepareOutput(operation, userTransactionAlive),\n stderr: prepareStderr(operation, userTransactionAlive),\n intermediate: prepareIntermediate(operation),\n coredumps: prepareCoredumps(operation),\n\n // Scripts\n mapper: prepareScript(operation, 'mapper'),\n reducer: prepareScript(operation, 'reducer'),\n reduceCombiner: prepareScript(operation, 'reduce_combiner'),\n\n tasks: prepareTasks(operation),\n };\n\n return specification;\n}\n\nexport function prepareVisibleItems<T extends {isFolder?: boolean}>(items: Array<T>) {\n return _.filter(items, (item) => !item.isFolder);\n}\n\nexport function filterVisibleItems<T extends {isFolder?: boolean}>(\n items: Array<T>,\n itemsCount: number,\n) {\n const result = [];\n let count = 0;\n\n for (const item of items) {\n if (!item.isFolder) {\n count++;\n }\n if (count === itemsCount + 1) {\n break;\n }\n\n result.push(item);\n }\n\n return result;\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_ypath","_interopRequireDefault","require","_UIFactory","_navigation","obj","__esModule","default","TASKS_PREFIX","prepareFile","file","path","ypath","getValue","originalPath","name","executable","getBoolean","prepareMeta","meta","prepared","_map","value","_sortBy","prepareStartedBy","operation","startedBy","command","fields","_filter","option","length","undefined","prepareRemote","type","cluster","network","prepareTransferTask","task","id","task_id","url","UIFactory","makeUrlForTransferTask","prepareTransaction","table","userTransactionAlive","tableTransaction","get","state","concat","prepareLivePreview","index","isRunning","_operation$getLivePre","getLivePreviewPath","virtualPath","supported","transaction","normalizeTableRanges","ranges","upperLimit","lowerLimit","range","prepareTableFilters","columns","filters","prepareTable","typedTable","_objectSpread","livePreview","append","teleport","primary","foreign","typedFilters","groupTables","tables","group","currentGroup","_each","YPath","create","getKey","folder","toSubpath","stringify","groupKey","push","isFolder","Object","assign","err","console","error","prepareRemoteInput","input","item","remote","genNavigationUrl","remoteInputUrl","prepareInput","TYPE","typedTables","$typedAttributes","prepareStderr","prepareCoredumps","coreTable","prepareOutput","prepareIntermediate","prepareScriptCaption","indexOf","substring","prepareScript","_environment","script","environment","className","jobCount","files","caption","prepareTasks","tasks","_keys","taskName","prepareSpecification","specification","transferTask","mode","output","stderr","intermediate","coredumps","mapper","reducer","reduceCombiner","prepareVisibleItems","items","filterVisibleItems","itemsCount","result","count","_iterator","_createForOfIteratorHelper","_step","s","n","done","e","f"],"sources":["specification.ts"],"sourcesContent":["import _ from 'lodash';\n\nimport ypath from '../../../../../common/thor/ypath';\nimport UIFactory from '../../../../../UIFactory';\nimport {\n DetailedOperationSelector,\n OperationPreviewType,\n} from '../../../../../pages/operations/selectors';\nimport {genNavigationUrl} from '../../../../../utils/navigation/navigation';\n\nconst TASKS_PREFIX = 'tasks/';\n\nfunction prepareFile(file: unknown) {\n return {\n path: ypath.getValue(file),\n originalPath: ypath.getValue(file, '/@original_path'),\n name: ypath.getValue(file, '/@file_name'),\n executable: ypath.getBoolean(file, '/@executable'),\n };\n}\n\nfunction prepareMeta(meta: Record<string, unknown>) {\n const prepared = _.map(meta, (value, name) => ({name, value}));\n\n return _.sortBy(prepared, 'name');\n}\n\nfunction prepareStartedBy(operation: DetailedOperationSelector) {\n const startedBy = ypath.getValue(operation, '/@spec/started_by');\n const command = ypath.getValue(startedBy, '/command') || [];\n\n const fields = _.filter(prepareMeta(startedBy), (option) => option.name !== 'command');\n\n if (fields.length || command.length) {\n return {\n fields: fields,\n command: command,\n };\n }\n\n return undefined;\n}\n\nfunction prepareRemote(operation: DetailedOperationSelector) {\n if (operation.type === 'remote_copy') {\n return {\n cluster: ypath.getValue(operation, '/@spec/cluster_name'),\n network: ypath.getValue(operation, '/@spec/network_name'),\n };\n }\n return undefined;\n}\n\nfunction prepareTransferTask(operation: DetailedOperationSelector) {\n const task = ypath.getValue(operation, '/@spec/transfer_manager');\n\n if (task) {\n return {\n id: task.task_id,\n url: UIFactory.makeUrlForTransferTask(operation),\n };\n }\n return undefined;\n}\n\nfunction prepareTransaction(\n operation: DetailedOperationSelector,\n type: OperationPreviewType,\n table: unknown,\n userTransactionAlive: boolean,\n) {\n const tableTransaction = ypath.get(table, '/@transaction_id');\n\n if (tableTransaction) {\n return tableTransaction;\n } else if (operation.state === 'running') {\n return ypath.get(\n operation,\n `/@${type === 'stderr' ? 'debug_output' : type}_transaction_id`,\n );\n } else if (userTransactionAlive) {\n return ypath.get(operation, '/@user_transaction_id');\n }\n return undefined;\n}\n\nfunction prepareLivePreview(\n operation: DetailedOperationSelector,\n type: OperationPreviewType,\n index?: number | string,\n): {path?: string; supported: boolean; transaction?: string} {\n if (operation.isRunning()) {\n const {path, virtualPath} = operation.getLivePreviewPath(type, index);\n\n if (virtualPath) {\n return {path: virtualPath, supported: true};\n } else if (path) {\n const transaction = ypath.getValue(operation, '/@async_scheduler_transaction_id');\n return {path, transaction, supported: true};\n }\n }\n\n return {supported: false};\n}\n\ntype RangeType = {upper_limit?: number; lower_limit?: number};\n\nfunction normalizeTableRanges(table: unknown) {\n let ranges: Array<RangeType> = ypath.getValue(table, '/@ranges');\n\n if (typeof ranges === 'undefined') {\n // Fallback attempt to get ranges from attributes\n // Exact range is only supported in updated ypath\n const upperLimit = ypath.getValue(table, '/@upper_limit');\n const lowerLimit = ypath.getValue(table, '/@lower_limit');\n\n let range: RangeType | undefined;\n\n if (typeof upperLimit !== 'undefined') {\n range = range || {};\n range['upper_limit'] = upperLimit;\n }\n\n if (typeof lowerLimit !== 'undefined') {\n range = range || {};\n range['lower_limit'] = lowerLimit;\n }\n\n if (range) {\n ranges = [range];\n }\n\n if (range) {\n ranges = [range];\n }\n }\n\n return ranges;\n}\n\nfunction prepareTableFilters(table: unknown) {\n const ranges = normalizeTableRanges(table);\n const columns = ypath.getValue(table, '/@columns');\n let filters: {ranges?: typeof ranges; columns?: typeof columns} | undefined;\n\n if (ranges) {\n filters = filters || {};\n filters.ranges = ranges;\n }\n\n if (columns) {\n filters = filters || {};\n filters.columns = columns;\n }\n\n return filters;\n}\n\nfunction prepareTable(\n operation: DetailedOperationSelector,\n type: OperationPreviewType,\n table: unknown,\n typedTable: unknown,\n userTransactionAlive: boolean,\n index?: number | string,\n) {\n const path: string = ypath.getValue(table);\n const cluster: string | undefined = ypath.getValue(table, '/@cluster');\n const originalPath = ypath.getValue(table, '/@original_path');\n const transaction = prepareTransaction(operation, type, table, userTransactionAlive);\n\n return {\n path,\n ...(cluster ? {cluster} : {}),\n originalPath,\n transaction,\n livePreview: prepareLivePreview(operation, type, index),\n append: ypath.getBoolean(table, '/@append'),\n teleport: ypath.getBoolean(table, '/@teleport'),\n primary: ypath.getBoolean(table, '/@primary'),\n foreign: ypath.getBoolean(table, '/@foreign'),\n filters: prepareTableFilters(table),\n typedFilters: prepareTableFilters(typedTable),\n };\n}\n\nfunction groupTables<T extends {path: string; transaction?: string; cluster?: string}>(\n tables: Array<T>,\n) {\n const group: Array<{\n path: string;\n name?: string;\n isFolder?: boolean;\n transaction?: string;\n cluster?: string;\n }> = [];\n let currentGroup: string;\n\n _.each(tables, (table) => {\n try {\n const {cluster} = table;\n const path = ypath.YPath.create(table.path, 'absolute');\n const name = path.getKey();\n const folder = path.toSubpath(-2).stringify();\n const groupKey: string = cluster ? `${cluster}:${folder}` : folder;\n\n if (currentGroup !== groupKey) {\n currentGroup = groupKey;\n group.push({\n path: folder,\n transaction: table.transaction,\n isFolder: true,\n ...(cluster ? {cluster} : {}),\n });\n }\n\n group.push(Object.assign(table, {name: name}));\n } catch (err) {\n console.error('groupTables error', err);\n }\n });\n\n return group;\n}\n\nfunction prepareRemoteInput<T extends {path: string; transaction?: string}>(\n input: Array<T>,\n cluster: string,\n) {\n if (cluster) {\n return _.map(input, (item) => ({\n ...item,\n remote: true,\n url: genNavigationUrl({cluster, ...item}),\n }));\n }\n\n return input;\n}\n\nexport function remoteInputUrl(cluster: string, path: string, transaction?: string) {\n return '/' + cluster + '/navigation?path=' + path + (transaction ? '&t=' + transaction : '');\n}\n\nfunction prepareInput(operation: DetailedOperationSelector, userTransactionAlive: boolean) {\n const TYPE = 'input';\n let tables;\n\n switch (operation.type) {\n case 'remote_copy':\n case 'merge':\n case 'map':\n case 'reduce':\n case 'map_reduce':\n case 'sort':\n case 'join_reduce': {\n const typedTables = ypath.get(operation.$typedAttributes, '/spec/input_table_paths');\n\n tables = ypath.get(operation, '/@spec/input_table_paths');\n tables = _.map(tables, (table, index) =>\n prepareTable(operation, TYPE, table, typedTables[index], userTransactionAlive),\n );\n break;\n }\n case 'erase': {\n const typedTable = ypath.get(operation.$typedAttributes, '/spec/input_table_path');\n\n tables = ypath.get(operation, '/@spec/table_path');\n tables = tables && [\n prepareTable(operation, TYPE, tables, typedTable, userTransactionAlive),\n ];\n break;\n }\n }\n\n return groupTables(tables);\n}\n\nfunction prepareStderr(operation: DetailedOperationSelector, userTransactionAlive: boolean) {\n const TYPE = 'stderr';\n const typedTables = ypath.get(operation.$typedAttributes, '/spec/input_table_paths');\n\n let tables = ypath.get(operation, '/@spec/stderr_table_path');\n tables = tables && [prepareTable(operation, TYPE, tables, typedTables, userTransactionAlive)];\n\n return groupTables(tables);\n}\n\nfunction prepareCoredumps(operation: DetailedOperationSelector) {\n const coreTable = ypath.get(operation.$typedAttributes, '/spec/core_table_path');\n\n const tables = coreTable ? [prepareTable(operation, 'core', coreTable, [], false)] : [];\n return groupTables(tables);\n}\n\nfunction prepareOutput(operation: DetailedOperationSelector, userTransactionAlive: boolean) {\n const TYPE = 'output';\n let tables;\n\n switch (operation.type) {\n case 'map':\n case 'reduce':\n case 'map_reduce':\n case 'join_reduce': {\n const typedTables = ypath.get(operation.$typedAttributes, '/spec/input_table_paths');\n\n tables = ypath.get(operation, '/@spec/output_table_paths');\n tables = _.map(tables, (table, index) =>\n prepareTable(\n operation,\n TYPE,\n table,\n typedTables[index],\n userTransactionAlive,\n index,\n ),\n );\n break;\n }\n case 'merge': // These operations do not have output livePreview\n case 'sort':\n case 'remote_copy': {\n const typedTable = ypath.get(operation.$typedAttributes, '/spec/input_table_path');\n\n tables = ypath.get(operation, '/@spec/output_table_path');\n tables = tables && [\n prepareTable(operation, TYPE, tables, typedTable, userTransactionAlive),\n ];\n break;\n }\n }\n\n return groupTables(tables);\n}\n\nfunction prepareIntermediate(operation: DetailedOperationSelector) {\n let livePreview;\n\n switch (operation.type) {\n case 'map_reduce':\n case 'sort':\n livePreview = prepareLivePreview(operation, 'intermediate');\n break;\n }\n\n if (livePreview && livePreview.supported) {\n return livePreview;\n }\n\n return undefined;\n}\n\nfunction prepareScriptCaption(type: string) {\n return type.indexOf(TASKS_PREFIX) === 0 ? type.substring(TASKS_PREFIX.length) + '_task' : type;\n}\n\nfunction prepareScript(operation: DetailedOperationSelector, type: string) {\n try {\n const script = ypath.getValue(operation, '/@spec/' + type);\n\n let environment = ypath.getValue(script, '/environment');\n environment = prepareMeta(environment);\n\n const command = ypath.getValue(script, '/command');\n const className = ypath.getValue(script, '/class_name');\n const jobCount = ypath.getValue(script, '/job_count');\n const files = _.map(ypath.getValue(script, '/file_paths'), prepareFile);\n\n if (command || className || jobCount || files?.length || environment?.length) {\n return {\n type: type,\n caption: prepareScriptCaption(type),\n command,\n className,\n jobCount,\n files,\n environment,\n };\n }\n } catch (err) {\n console.error('prepareScript error:', err);\n }\n\n return undefined;\n}\n\nfunction prepareTasks(operation: DetailedOperationSelector) {\n const tasks = ypath.getValue(operation, '/@spec/tasks');\n\n if (tasks) {\n return _.map(_.keys(tasks), (taskName) =>\n prepareScript(operation, TASKS_PREFIX + taskName),\n );\n }\n\n return undefined;\n}\n\nexport function prepareSpecification(\n operation: DetailedOperationSelector,\n userTransactionAlive: boolean,\n) {\n const remote = prepareRemote(operation);\n\n const specification = {\n startedBy: prepareStartedBy(operation),\n\n // Remote copy\n remote,\n transferTask: prepareTransferTask(operation),\n // Merge\n mode: ypath.getValue(operation, '/@spec/mode'),\n\n // Input/Intermediate/Output/Stderr\n input: prepareRemoteInput(prepareInput(operation, userTransactionAlive), remote?.cluster),\n output: prepareOutput(operation, userTransactionAlive),\n stderr: prepareStderr(operation, userTransactionAlive),\n intermediate: prepareIntermediate(operation),\n coredumps: prepareCoredumps(operation),\n\n // Scripts\n mapper: prepareScript(operation, 'mapper'),\n reducer: prepareScript(operation, 'reducer'),\n reduceCombiner: prepareScript(operation, 'reduce_combiner'),\n\n tasks: prepareTasks(operation),\n };\n\n return specification;\n}\n\nexport function prepareVisibleItems<T extends {isFolder?: boolean}>(items: Array<T>) {\n return _.filter(items, (item) => !item.isFolder);\n}\n\nexport function filterVisibleItems<T extends {isFolder?: boolean}>(\n items: Array<T>,\n itemsCount: number,\n) {\n const result = [];\n let count = 0;\n\n for (const item of items) {\n if (!item.isFolder) {\n count++;\n }\n if (count === itemsCount + 1) {\n break;\n }\n\n result.push(item);\n }\n\n return result;\n}\n"],"mappings":"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"}
|
@@ -84,15 +84,16 @@ export function PoolSuggestControl(props) {
|
|
84
84
|
popupClassName: block('popup'),
|
85
85
|
text: value,
|
86
86
|
filter: getItems,
|
87
|
-
apply: function apply(v) {
|
88
|
-
return allowEphemeral && onChange(typeof v === 'string' ? v : v.value);
|
89
|
-
},
|
90
87
|
onItemClick: function onItemClick(v) {
|
91
88
|
return onChange(typeof v === 'string' ? v : v.value);
|
92
89
|
},
|
93
|
-
onTextUpdate:
|
94
|
-
|
95
|
-
|
90
|
+
onTextUpdate: function onTextUpdate(text) {
|
91
|
+
if (allowEmpty && !text) {
|
92
|
+
onChange('');
|
93
|
+
} else if (allowEphemeral) {
|
94
|
+
onChange(text);
|
95
|
+
}
|
96
|
+
},
|
96
97
|
placeholder: placeholder,
|
97
98
|
disabled: disabled
|
98
99
|
});
|