@ytsaurus/ui 1.18.1 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/build/cjs/@types/types.d.ts +14 -0
  2. package/build/cjs/ui/components/QuotaEditor/QuotaEditor.js +3 -0
  3. package/build/cjs/ui/components/QuotaEditor/QuotaEditor.js.map +1 -1
  4. package/build/cjs/ui/hocs/components/Modal/withScope.d.ts +4 -55
  5. package/build/cjs/ui/hocs/components/Modal/withScope.js +8 -55
  6. package/build/cjs/ui/hocs/components/Modal/withScope.js.map +1 -1
  7. package/build/cjs/ui/hooks/use-hotkeysjs-scope.d.ts +1 -0
  8. package/build/cjs/ui/hooks/use-hotkeysjs-scope.js +22 -0
  9. package/build/cjs/ui/hooks/use-hotkeysjs-scope.js.map +1 -0
  10. package/build/cjs/ui/pages/navigation/Navigation/PathEditorModal/PathEditorModal.d.ts +1 -55
  11. package/build/cjs/ui/pages/system/Masters/Masters.css +3 -0
  12. package/build/cjs/ui/pages/system/Masters/Masters.css.map +1 -1
  13. package/build/cjs/ui/pages/system/Masters/Masters.d.ts +4 -1
  14. package/build/cjs/ui/pages/system/Masters/Masters.js +22 -3
  15. package/build/cjs/ui/pages/system/Masters/Masters.js.map +1 -1
  16. package/build/cjs/ui/pages/system/Masters/SystemAlert.d.ts +4 -0
  17. package/build/cjs/ui/pages/system/Masters/SystemAlert.js +26 -0
  18. package/build/cjs/ui/pages/system/Masters/SystemAlert.js.map +1 -0
  19. package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateLabels.d.ts +9 -0
  20. package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateLabels.js +27 -0
  21. package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateLabels.js.map +1 -0
  22. package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateOverview.d.ts +2 -1
  23. package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateOverview.js +8 -4
  24. package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateOverview.js.map +1 -1
  25. package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css +5 -0
  26. package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css.map +1 -1
  27. package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js +13 -6
  28. package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js.map +1 -1
  29. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css +0 -3
  30. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css.map +1 -1
  31. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.d.ts +0 -1
  32. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js +42 -47
  33. package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js.map +1 -1
  34. package/build/cjs/ui/store/actions/system/masters.d.ts +2 -1
  35. package/build/cjs/ui/store/actions/system/masters.js +54 -42
  36. package/build/cjs/ui/store/actions/system/masters.js.map +1 -1
  37. package/build/cjs/ui/store/reducers/system/masters.d.ts +12 -3
  38. package/build/cjs/ui/store/reducers/system/masters.js +9 -4
  39. package/build/cjs/ui/store/reducers/system/masters.js.map +1 -1
  40. package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.d.ts +27 -0
  41. package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.js.map +1 -1
  42. package/build/cjs/ui/store/selectors/system/index.d.ts +2 -1
  43. package/build/cjs/ui/store/selectors/system/index.js.map +1 -1
  44. package/build/cjs/ui/store/selectors/system/masters.d.ts +3 -0
  45. package/build/cjs/ui/store/selectors/system/masters.js +4 -1
  46. package/build/cjs/ui/store/selectors/system/masters.js.map +1 -1
  47. package/build/cjs/ui/utils/scheduling/detailsTable.d.ts +387 -326
  48. package/build/cjs/ui/utils/scheduling/detailsTable.js +12 -6
  49. package/build/cjs/ui/utils/scheduling/detailsTable.js.map +1 -1
  50. package/build/cjs/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js +0 -3
  51. package/build/cjs/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js.map +1 -1
  52. package/build/cjs/ui/utils/utils.js +2 -1
  53. package/build/cjs/ui/utils/utils.js.map +1 -1
  54. package/build/esm/@types/types.d.ts +14 -0
  55. package/build/esm/ui/components/QuotaEditor/QuotaEditor.js +3 -0
  56. package/build/esm/ui/components/QuotaEditor/QuotaEditor.js.map +1 -1
  57. package/build/esm/ui/hocs/components/Modal/withScope.d.ts +4 -55
  58. package/build/esm/ui/hocs/components/Modal/withScope.js +8 -55
  59. package/build/esm/ui/hocs/components/Modal/withScope.js.map +1 -1
  60. package/build/esm/ui/hooks/use-hotkeysjs-scope.d.ts +1 -0
  61. package/build/esm/ui/hooks/use-hotkeysjs-scope.js +15 -0
  62. package/build/esm/ui/hooks/use-hotkeysjs-scope.js.map +1 -0
  63. package/build/esm/ui/pages/navigation/Navigation/PathEditorModal/PathEditorModal.d.ts +1 -55
  64. package/build/esm/ui/pages/system/Masters/Masters.css +3 -0
  65. package/build/esm/ui/pages/system/Masters/Masters.css.map +1 -1
  66. package/build/esm/ui/pages/system/Masters/Masters.d.ts +4 -1
  67. package/build/esm/ui/pages/system/Masters/Masters.js +22 -3
  68. package/build/esm/ui/pages/system/Masters/Masters.js.map +1 -1
  69. package/build/esm/ui/pages/system/Masters/Masters.scss +4 -0
  70. package/build/esm/ui/pages/system/Masters/SystemAlert.d.ts +4 -0
  71. package/build/esm/ui/pages/system/Masters/SystemAlert.js +19 -0
  72. package/build/esm/ui/pages/system/Masters/SystemAlert.js.map +1 -0
  73. package/build/esm/ui/pages/system/SystemStateOverview/SystemStateLabels.d.ts +9 -0
  74. package/build/esm/ui/pages/system/SystemStateOverview/SystemStateLabels.js +20 -0
  75. package/build/esm/ui/pages/system/SystemStateOverview/SystemStateLabels.js.map +1 -0
  76. package/build/esm/ui/pages/system/SystemStateOverview/SystemStateOverview.d.ts +2 -1
  77. package/build/esm/ui/pages/system/SystemStateOverview/SystemStateOverview.js +7 -3
  78. package/build/esm/ui/pages/system/SystemStateOverview/SystemStateOverview.js.map +1 -1
  79. package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css +5 -0
  80. package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css.map +1 -1
  81. package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js +13 -6
  82. package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js.map +1 -1
  83. package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.scss +6 -0
  84. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css +0 -3
  85. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css.map +1 -1
  86. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.d.ts +0 -1
  87. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js +42 -47
  88. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js.map +1 -1
  89. package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.scss +0 -4
  90. package/build/esm/ui/store/actions/system/masters.d.ts +2 -1
  91. package/build/esm/ui/store/actions/system/masters.js +47 -35
  92. package/build/esm/ui/store/actions/system/masters.js.map +1 -1
  93. package/build/esm/ui/store/reducers/system/masters.d.ts +12 -3
  94. package/build/esm/ui/store/reducers/system/masters.js +9 -4
  95. package/build/esm/ui/store/reducers/system/masters.js.map +1 -1
  96. package/build/esm/ui/store/selectors/scheduling/scheduling-pools.d.ts +27 -0
  97. package/build/esm/ui/store/selectors/scheduling/scheduling-pools.js.map +1 -1
  98. package/build/esm/ui/store/selectors/system/index.d.ts +2 -1
  99. package/build/esm/ui/store/selectors/system/index.js.map +1 -1
  100. package/build/esm/ui/store/selectors/system/masters.d.ts +3 -0
  101. package/build/esm/ui/store/selectors/system/masters.js +3 -0
  102. package/build/esm/ui/store/selectors/system/masters.js.map +1 -1
  103. package/build/esm/ui/utils/scheduling/detailsTable.d.ts +387 -326
  104. package/build/esm/ui/utils/scheduling/detailsTable.js +12 -6
  105. package/build/esm/ui/utils/scheduling/detailsTable.js.map +1 -1
  106. package/build/esm/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js +0 -3
  107. package/build/esm/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js.map +1 -1
  108. package/build/esm/ui/utils/utils.js +2 -1
  109. package/build/esm/ui/utils/utils.js.map +1 -1
  110. package/dist/public/build/assets-manifest.json +7 -7
  111. package/dist/public/build/css/{main.f7818774.css → main.4c657a42.css} +2 -2
  112. package/dist/public/build/css/main.4c657a42.css.map +1 -0
  113. package/dist/public/build/js/main.38e77012.js +3 -0
  114. package/dist/public/build/js/{main.052ff0c9.js.map → main.38e77012.js.map} +1 -1
  115. package/dist/public/build/manifest.json +4 -4
  116. package/package.json +8 -6
  117. package/scripts/sync-peer-dependencies.js +54 -0
  118. package/dist/public/build/css/main.f7818774.css.map +0 -1
  119. package/dist/public/build/js/main.052ff0c9.js +0 -3
  120. /package/dist/public/build/js/{main.052ff0c9.js.LICENSE.txt → main.38e77012.js.LICENSE.txt} +0 -0
@@ -5,7 +5,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
5
5
  function prepareDetailedColumn(resource) {
6
6
  return {
7
7
  get: function get(item) {
8
- return item.resources[resource].detailed;
8
+ var _item$resources;
9
+ return (_item$resources = item.resources) === null || _item$resources === void 0 || (_item$resources = _item$resources[resource]) === null || _item$resources === void 0 ? void 0 : _item$resources.detailed;
9
10
  },
10
11
  sort: true,
11
12
  caption: 'Abs fair share',
@@ -15,7 +16,8 @@ function prepareDetailedColumn(resource) {
15
16
  function prepareLimitColumn(resource) {
16
17
  return {
17
18
  get: function get(item) {
18
- return item.resources[resource].limit;
19
+ var _item$resources2;
20
+ return (_item$resources2 = item.resources) === null || _item$resources2 === void 0 || (_item$resources2 = _item$resources2[resource]) === null || _item$resources2 === void 0 ? void 0 : _item$resources2.limit;
19
21
  },
20
22
  sort: true,
21
23
  sortWithUndefined: true,
@@ -26,7 +28,8 @@ function prepareLimitColumn(resource) {
26
28
  function prepareMinResourcesColumn(resource) {
27
29
  return {
28
30
  get: function get(item) {
29
- return item.resources[resource].min;
31
+ var _item$resources3;
32
+ return (_item$resources3 = item.resources) === null || _item$resources3 === void 0 || (_item$resources3 = _item$resources3[resource]) === null || _item$resources3 === void 0 ? void 0 : _item$resources3.min;
30
33
  },
31
34
  sort: true,
32
35
  caption: 'Strong guar.',
@@ -37,7 +40,8 @@ function prepareMinResourcesColumn(resource) {
37
40
  function prepareAbsGuaranteedColumn(resource) {
38
41
  return {
39
42
  get: function get(item) {
40
- return item.resources[resource].guaranteed;
43
+ var _item$resources4;
44
+ return (_item$resources4 = item.resources) === null || _item$resources4 === void 0 || (_item$resources4 = _item$resources4[resource]) === null || _item$resources4 === void 0 ? void 0 : _item$resources4.guaranteed;
41
45
  },
42
46
  sort: true,
43
47
  caption: 'Estimated guar.',
@@ -58,7 +62,8 @@ function prepareRelGuaranteedColumn(resource) {
58
62
  function prepareAbsDemandColumn(resource) {
59
63
  return {
60
64
  get: function get(item) {
61
- return item.resources[resource].demand;
65
+ var _item$resources5;
66
+ return (_item$resources5 = item.resources) === null || _item$resources5 === void 0 || (_item$resources5 = _item$resources5[resource]) === null || _item$resources5 === void 0 ? void 0 : _item$resources5.demand;
62
67
  },
63
68
  sort: true,
64
69
  caption: 'Abs demand',
@@ -68,7 +73,8 @@ function prepareAbsDemandColumn(resource) {
68
73
  function prepareAbsUsageColumn(resource) {
69
74
  return {
70
75
  get: function get(item) {
71
- return item.resources[resource].usage;
76
+ var _item$resources6;
77
+ return (_item$resources6 = item.resources) === null || _item$resources6 === void 0 || (_item$resources6 = _item$resources6[resource]) === null || _item$resources6 === void 0 ? void 0 : _item$resources6.usage;
72
78
  },
73
79
  sort: true,
74
80
  caption: 'Abs usage',
@@ -1 +1 @@
1
- {"version":3,"names":["React","format","SchedulingOperationsLoader","jsx","_jsx","prepareDetailedColumn","resource","get","item","resources","detailed","sort","caption","align","prepareLimitColumn","limit","sortWithUndefined","prepareMinResourcesColumn","min","title","prepareAbsGuaranteedColumn","guaranteed","prepareRelGuaranteedColumn","currentPool","prepareAbsDemandColumn","demand","prepareAbsUsageColumn","usage","prepareRelUsageColumn","prepareGuaranteedUsageColumn","childTableItems","name","captionTail","mode","FI","fifoIndex","weight","min_share","minShareRatio","max_share","maxShareRatio","fair_share","fairShareRatio","usageRatio","demandRatio","fair_share_usage","dominant_resource","dominantResource","resource_detailed_cpu","resource_detailed_memory","resource_detailed_gpu","resource_detailed_user_slots","resource_limit_cpu","resource_limit_memory","resource_limit_gpu","resource_limit_user_slots","min_resources_cpu","min_resources_memory","min_resources_gpu","min_resources_user_slots","abs_guaranteed_cpu","abs_guaranteed_memory","abs_guaranteed_gpu","abs_guaranteed_user_slots","rel_guaranteed_cpu","rel_guaranteed_memory","rel_guaranteed_gpu","rel_guaranteed_user_slots","abs_usage_cpu","abs_usage_memory","abs_usage_gpu","abs_usage_user_slots","abs_demand_cpu","abs_demand_memory","abs_demand_gpu","abs_demand_user_slots","rel_usage_cpu","rel_usage_memory","rel_usage_gpu","rel_usage_user_slots","guaranteed_usage_cpu","guaranteed_usage_memory","guaranteed_usage_gpu","guaranteed_usage_user_slots","operation_overview","operationCount","runningOperationCount","operation_count","max_operation_count","maxOperationCount","operation_progress","text","concat","Number","running_operation_count","max_running_operation_count","maxRunningOperationCount","running_operation_progress","integral_type","res","integralType","undefined","burst_cpu","burstCPU","isNaN","flow_cpu","flowCPU","children_burst_cpu","childrenBurstCPU","children_flow_cpu","childrenFlowCPU","accumulated","accumulated_cpu","accumulatedCpu","burst_duration","burstDuration","actions"],"sources":["detailsTable.js"],"sourcesContent":["import React from 'react';\nimport format from '../../common/hammer/format';\nimport SchedulingOperationsLoader from '../../pages/scheduling/Content/tabs/ScherdulingOperataionsLoader/SchedulingOperationsLoader';\n\nfunction prepareDetailedColumn(resource) {\n return {\n get(item) {\n return item.resources[resource].detailed;\n },\n sort: true,\n caption: 'Abs fair share',\n align: 'right',\n };\n}\n\nfunction prepareLimitColumn(resource) {\n return {\n get(item) {\n return item.resources[resource].limit;\n },\n sort: true,\n sortWithUndefined: true,\n caption: 'Limit',\n align: 'right',\n };\n}\n\nfunction prepareMinResourcesColumn(resource) {\n return {\n get(item) {\n return item.resources[resource].min;\n },\n sort: true,\n caption: 'Strong guar.',\n title: 'Strong guarantee',\n align: 'right',\n };\n}\n\nfunction prepareAbsGuaranteedColumn(resource) {\n return {\n get(item) {\n return item.resources[resource].guaranteed;\n },\n sort: true,\n caption: 'Estimated guar.',\n title: 'Estimated guarantee',\n align: 'right',\n };\n}\n\nfunction prepareRelGuaranteedColumn(resource) {\n return {\n get(item, currentPool) {\n return (\n prepareAbsGuaranteedColumn(resource).get(item) /\n prepareAbsGuaranteedColumn(resource).get(currentPool)\n );\n },\n sort: true,\n caption: 'Rel guaranteed',\n align: 'right',\n };\n}\n\nfunction prepareAbsDemandColumn(resource) {\n return {\n get(item) {\n return item.resources[resource].demand;\n },\n sort: true,\n caption: 'Abs demand',\n align: 'right',\n };\n}\n\nfunction prepareAbsUsageColumn(resource) {\n return {\n get(item) {\n return item.resources[resource].usage;\n },\n sort: true,\n caption: 'Abs usage',\n align: 'right',\n };\n}\n\nfunction prepareRelUsageColumn(resource) {\n return {\n get(item, currentPool) {\n return (\n prepareAbsUsageColumn(resource).get(item) /\n prepareAbsUsageColumn(resource).get(currentPool)\n );\n },\n sort: true,\n caption: 'Rel usage',\n align: 'right',\n };\n}\n\nfunction prepareGuaranteedUsageColumn(resource) {\n return {\n get(item, currentPool) {\n return {\n guaranteed: prepareRelGuaranteedColumn(resource).get(item, currentPool),\n usage: prepareRelUsageColumn(resource).get(item, currentPool),\n };\n },\n caption: 'Usage / Guaranteed',\n align: 'center',\n };\n}\n\nexport const childTableItems = {\n name: {\n sort(item) {\n return item.name;\n },\n caption: 'Pool / Operation',\n captionTail: <SchedulingOperationsLoader />,\n align: 'left',\n },\n mode: {\n sort(item) {\n return item.mode;\n },\n align: 'center',\n },\n FI: {\n sort(item) {\n return item.fifoIndex;\n },\n align: 'center',\n },\n weight: {\n sort(item) {\n return item.weight;\n },\n align: 'right',\n },\n min_share: {\n sort(item) {\n return item.minShareRatio;\n },\n align: 'right',\n },\n max_share: {\n sort(item) {\n return item.maxShareRatio;\n },\n align: 'right',\n },\n fair_share: {\n get(item) {\n return item.fairShareRatio;\n },\n sort: true,\n align: 'right',\n },\n usage: {\n get(item) {\n return item.usageRatio;\n },\n sort: true,\n align: 'right',\n },\n demand: {\n get(item) {\n return item.demandRatio;\n },\n sort: true,\n align: 'right',\n },\n fair_share_usage: {\n caption: 'Usage / Fair share',\n align: 'left',\n },\n dominant_resource: {\n sort(item) {\n return item.dominantResource;\n },\n caption: 'Dom. res.',\n title: 'Dominant Resource',\n align: 'left',\n },\n\n resource_detailed_cpu: prepareDetailedColumn('cpu'),\n resource_detailed_memory: prepareDetailedColumn('user_memory'),\n resource_detailed_gpu: prepareDetailedColumn('gpu'),\n resource_detailed_user_slots: prepareDetailedColumn('user_slots'),\n\n resource_limit_cpu: prepareLimitColumn('cpu'),\n resource_limit_memory: prepareLimitColumn('user_memory'),\n resource_limit_gpu: prepareLimitColumn('gpu'),\n resource_limit_user_slots: prepareLimitColumn('user_slots'),\n\n min_resources_cpu: prepareMinResourcesColumn('cpu'),\n min_resources_memory: prepareMinResourcesColumn('user_memory'),\n min_resources_gpu: prepareMinResourcesColumn('gpu'),\n min_resources_user_slots: prepareMinResourcesColumn('user_slots'),\n\n abs_guaranteed_cpu: prepareAbsGuaranteedColumn('cpu'),\n abs_guaranteed_memory: prepareAbsGuaranteedColumn('user_memory'),\n abs_guaranteed_gpu: prepareAbsGuaranteedColumn('gpu'),\n abs_guaranteed_user_slots: prepareAbsGuaranteedColumn('user_slots'),\n\n rel_guaranteed_cpu: prepareRelGuaranteedColumn('cpu'),\n rel_guaranteed_memory: prepareRelGuaranteedColumn('user_memory'),\n rel_guaranteed_gpu: prepareRelGuaranteedColumn('gpu'),\n rel_guaranteed_user_slots: prepareRelGuaranteedColumn('user_slots'),\n\n abs_usage_cpu: prepareAbsUsageColumn('cpu'),\n abs_usage_memory: prepareAbsUsageColumn('user_memory'),\n abs_usage_gpu: prepareAbsUsageColumn('gpu'),\n abs_usage_user_slots: prepareAbsUsageColumn('user_slots'),\n\n abs_demand_cpu: prepareAbsDemandColumn('cpu'),\n abs_demand_memory: prepareAbsDemandColumn('user_memory'),\n abs_demand_gpu: prepareAbsDemandColumn('gpu'),\n abs_demand_user_slots: prepareAbsDemandColumn('user_slots'),\n\n rel_usage_cpu: prepareRelUsageColumn('cpu'),\n rel_usage_memory: prepareRelUsageColumn('user_memory'),\n rel_usage_gpu: prepareRelUsageColumn('gpu'),\n rel_usage_user_slots: prepareRelUsageColumn('user_slots'),\n\n guaranteed_usage_cpu: prepareGuaranteedUsageColumn('cpu'),\n guaranteed_usage_memory: prepareGuaranteedUsageColumn('user_memory'),\n guaranteed_usage_gpu: prepareGuaranteedUsageColumn('gpu'),\n guaranteed_usage_user_slots: prepareGuaranteedUsageColumn('user_slots'),\n\n operation_overview: {\n get(item) {\n return [item.operationCount, item.runningOperationCount];\n },\n caption: 'Operations',\n sort: true,\n align: 'right',\n },\n operation_count: {\n get(item) {\n return item.operationCount;\n },\n sort: true,\n align: 'right',\n },\n max_operation_count: {\n get(item) {\n return item.maxOperationCount;\n },\n sort: true,\n align: 'right',\n },\n operation_progress: {\n get(item) {\n return item.operationCount / item.maxOperationCount;\n },\n text(item) {\n return `${format.Number(item.operationCount)} / ${format.Number(\n item.maxOperationCount,\n )}`;\n },\n caption: 'Total operations (usage/limit)',\n sort: true,\n align: 'center',\n },\n running_operation_count: {\n get(item) {\n return item.runningOperationCount;\n },\n sort: true,\n align: 'right',\n },\n max_running_operation_count: {\n get(item) {\n return item.maxRunningOperationCount;\n },\n sort: true,\n align: 'right',\n },\n running_operation_progress: {\n get(item) {\n return item.runningOperationCount / item.maxRunningOperationCount;\n },\n text(item) {\n return `${format.Number(item.runningOperationCount)} / ${format.Number(\n item.maxRunningOperationCount,\n )}`;\n },\n caption: 'Running operations (usage/limit)',\n sort: true,\n align: 'center',\n },\n\n integral_type: {\n get(item) {\n const res = item.integralType;\n return res === 'none' ? undefined : res;\n },\n caption: 'Guarantee type',\n sort: true,\n align: 'right',\n sortWithUndefined: true,\n },\n burst_cpu: {\n get(item) {\n return item.burstCPU;\n },\n sort(item) {\n const res = item.burstCPU;\n return isNaN(res) ? undefined : res;\n },\n caption: 'Burst CPU',\n sortWithUndefined: true,\n align: 'right',\n },\n flow_cpu: {\n get(item) {\n return item.flowCPU;\n },\n sort(item) {\n const res = item.flowCPU;\n return isNaN(res) ? undefined : res;\n },\n caption: 'Flow CPU',\n sortWithUndefined: true,\n align: 'right',\n },\n children_burst_cpu: {\n get(item) {\n const res = item.childrenBurstCPU;\n return !res ? undefined : res;\n },\n caption: \"Children's burst CPU\",\n sort: true,\n sortWithUndefined: true,\n align: 'right',\n },\n children_flow_cpu: {\n get(item) {\n const res = item.childrenFlowCPU;\n return !res ? undefined : res;\n },\n caption: \"Children's flow CPU\",\n sort: true,\n sortWithUndefined: true,\n align: 'right',\n },\n accumulated: {\n get(item) {\n return item.accumulated;\n },\n caption: 'Acc ratio volume',\n sortWithUndefined: true,\n sort: true,\n align: 'right',\n },\n accumulated_cpu: {\n get(item) {\n return item.accumulatedCpu;\n },\n caption: 'Acc CPU volume',\n sort: true,\n align: 'right',\n },\n burst_duration: {\n get(item) {\n return item.burstDuration;\n },\n caption: 'Est burst usage duration ',\n sort: true,\n sortWithUndefined: true,\n align: 'right',\n },\n\n actions: {\n caption: '',\n align: 'left',\n },\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","format","SchedulingOperationsLoader","jsx","_jsx","prepareDetailedColumn","resource","get","item","_item$resources","resources","detailed","sort","caption","align","prepareLimitColumn","_item$resources2","limit","sortWithUndefined","prepareMinResourcesColumn","_item$resources3","min","title","prepareAbsGuaranteedColumn","_item$resources4","guaranteed","prepareRelGuaranteedColumn","currentPool","prepareAbsDemandColumn","_item$resources5","demand","prepareAbsUsageColumn","_item$resources6","usage","prepareRelUsageColumn","prepareGuaranteedUsageColumn","childTableItems","name","captionTail","mode","FI","fifoIndex","weight","min_share","minShareRatio","max_share","maxShareRatio","fair_share","fairShareRatio","usageRatio","demandRatio","fair_share_usage","dominant_resource","dominantResource","resource_detailed_cpu","resource_detailed_memory","resource_detailed_gpu","resource_detailed_user_slots","resource_limit_cpu","resource_limit_memory","resource_limit_gpu","resource_limit_user_slots","min_resources_cpu","min_resources_memory","min_resources_gpu","min_resources_user_slots","abs_guaranteed_cpu","abs_guaranteed_memory","abs_guaranteed_gpu","abs_guaranteed_user_slots","rel_guaranteed_cpu","rel_guaranteed_memory","rel_guaranteed_gpu","rel_guaranteed_user_slots","abs_usage_cpu","abs_usage_memory","abs_usage_gpu","abs_usage_user_slots","abs_demand_cpu","abs_demand_memory","abs_demand_gpu","abs_demand_user_slots","rel_usage_cpu","rel_usage_memory","rel_usage_gpu","rel_usage_user_slots","guaranteed_usage_cpu","guaranteed_usage_memory","guaranteed_usage_gpu","guaranteed_usage_user_slots","operation_overview","operationCount","runningOperationCount","operation_count","max_operation_count","maxOperationCount","operation_progress","text","concat","Number","running_operation_count","max_running_operation_count","maxRunningOperationCount","running_operation_progress","integral_type","res","integralType","undefined","burst_cpu","burstCPU","isNaN","flow_cpu","flowCPU","children_burst_cpu","childrenBurstCPU","children_flow_cpu","childrenFlowCPU","accumulated","accumulated_cpu","accumulatedCpu","burst_duration","burstDuration","actions"],"sources":["detailsTable.tsx"],"sourcesContent":["import React from 'react';\n\nimport format from '../../common/hammer/format';\nimport SchedulingOperationsLoader from '../../pages/scheduling/Content/tabs/ScherdulingOperataionsLoader/SchedulingOperationsLoader';\nimport {PoolInfo, PoolResourceType} from '../../store/selectors/scheduling/scheduling-pools';\n\nfunction prepareDetailedColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo) {\n return item.resources?.[resource]?.detailed;\n },\n sort: true,\n caption: 'Abs fair share',\n align: 'right',\n };\n}\n\nfunction prepareLimitColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo) {\n return item.resources?.[resource]?.limit;\n },\n sort: true,\n sortWithUndefined: true,\n caption: 'Limit',\n align: 'right',\n };\n}\n\nfunction prepareMinResourcesColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo) {\n return item.resources?.[resource]?.min;\n },\n sort: true,\n caption: 'Strong guar.',\n title: 'Strong guarantee',\n align: 'right',\n };\n}\n\nfunction prepareAbsGuaranteedColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo) {\n return item.resources?.[resource]?.guaranteed;\n },\n sort: true,\n caption: 'Estimated guar.',\n title: 'Estimated guarantee',\n align: 'right',\n };\n}\n\nfunction prepareRelGuaranteedColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo, currentPool: PoolInfo) {\n return (\n prepareAbsGuaranteedColumn(resource).get(item)! /\n prepareAbsGuaranteedColumn(resource).get(currentPool)!\n );\n },\n sort: true,\n caption: 'Rel guaranteed',\n align: 'right',\n };\n}\n\nfunction prepareAbsDemandColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo) {\n return item.resources?.[resource]?.demand;\n },\n sort: true,\n caption: 'Abs demand',\n align: 'right',\n };\n}\n\nfunction prepareAbsUsageColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo) {\n return item.resources?.[resource]?.usage;\n },\n sort: true,\n caption: 'Abs usage',\n align: 'right',\n };\n}\n\nfunction prepareRelUsageColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo, currentPool: PoolInfo) {\n return (\n prepareAbsUsageColumn(resource).get(item)! /\n prepareAbsUsageColumn(resource).get(currentPool)!\n );\n },\n sort: true,\n caption: 'Rel usage',\n align: 'right',\n };\n}\n\nfunction prepareGuaranteedUsageColumn(resource: PoolResourceType) {\n return {\n get(item: PoolInfo, currentPool: PoolInfo) {\n return {\n guaranteed: prepareRelGuaranteedColumn(resource).get(item, currentPool),\n usage: prepareRelUsageColumn(resource).get(item, currentPool),\n };\n },\n caption: 'Usage / Guaranteed',\n align: 'center',\n };\n}\n\nexport const childTableItems = {\n name: {\n sort(item: PoolInfo) {\n return item.name;\n },\n caption: 'Pool / Operation',\n captionTail: <SchedulingOperationsLoader />,\n align: 'left',\n },\n mode: {\n sort(item: PoolInfo) {\n return item.mode;\n },\n align: 'center',\n },\n FI: {\n sort(item: PoolInfo) {\n return item.fifoIndex;\n },\n align: 'center',\n },\n weight: {\n sort(item: PoolInfo) {\n return item.weight;\n },\n align: 'right',\n },\n min_share: {\n sort(item: PoolInfo) {\n return item.minShareRatio;\n },\n align: 'right',\n },\n max_share: {\n sort(item: PoolInfo) {\n return item.maxShareRatio;\n },\n align: 'right',\n },\n fair_share: {\n get(item: PoolInfo) {\n return item.fairShareRatio;\n },\n sort: true,\n align: 'right',\n },\n usage: {\n get(item: PoolInfo) {\n return item.usageRatio;\n },\n sort: true,\n align: 'right',\n },\n demand: {\n get(item: PoolInfo) {\n return item.demandRatio;\n },\n sort: true,\n align: 'right',\n },\n fair_share_usage: {\n caption: 'Usage / Fair share',\n align: 'left',\n },\n dominant_resource: {\n sort(item: PoolInfo) {\n return item.dominantResource;\n },\n caption: 'Dom. res.',\n title: 'Dominant Resource',\n align: 'left',\n },\n\n resource_detailed_cpu: prepareDetailedColumn('cpu'),\n resource_detailed_memory: prepareDetailedColumn('user_memory'),\n resource_detailed_gpu: prepareDetailedColumn('gpu'),\n resource_detailed_user_slots: prepareDetailedColumn('user_slots'),\n\n resource_limit_cpu: prepareLimitColumn('cpu'),\n resource_limit_memory: prepareLimitColumn('user_memory'),\n resource_limit_gpu: prepareLimitColumn('gpu'),\n resource_limit_user_slots: prepareLimitColumn('user_slots'),\n\n min_resources_cpu: prepareMinResourcesColumn('cpu'),\n min_resources_memory: prepareMinResourcesColumn('user_memory'),\n min_resources_gpu: prepareMinResourcesColumn('gpu'),\n min_resources_user_slots: prepareMinResourcesColumn('user_slots'),\n\n abs_guaranteed_cpu: prepareAbsGuaranteedColumn('cpu'),\n abs_guaranteed_memory: prepareAbsGuaranteedColumn('user_memory'),\n abs_guaranteed_gpu: prepareAbsGuaranteedColumn('gpu'),\n abs_guaranteed_user_slots: prepareAbsGuaranteedColumn('user_slots'),\n\n rel_guaranteed_cpu: prepareRelGuaranteedColumn('cpu'),\n rel_guaranteed_memory: prepareRelGuaranteedColumn('user_memory'),\n rel_guaranteed_gpu: prepareRelGuaranteedColumn('gpu'),\n rel_guaranteed_user_slots: prepareRelGuaranteedColumn('user_slots'),\n\n abs_usage_cpu: prepareAbsUsageColumn('cpu'),\n abs_usage_memory: prepareAbsUsageColumn('user_memory'),\n abs_usage_gpu: prepareAbsUsageColumn('gpu'),\n abs_usage_user_slots: prepareAbsUsageColumn('user_slots'),\n\n abs_demand_cpu: prepareAbsDemandColumn('cpu'),\n abs_demand_memory: prepareAbsDemandColumn('user_memory'),\n abs_demand_gpu: prepareAbsDemandColumn('gpu'),\n abs_demand_user_slots: prepareAbsDemandColumn('user_slots'),\n\n rel_usage_cpu: prepareRelUsageColumn('cpu'),\n rel_usage_memory: prepareRelUsageColumn('user_memory'),\n rel_usage_gpu: prepareRelUsageColumn('gpu'),\n rel_usage_user_slots: prepareRelUsageColumn('user_slots'),\n\n guaranteed_usage_cpu: prepareGuaranteedUsageColumn('cpu'),\n guaranteed_usage_memory: prepareGuaranteedUsageColumn('user_memory'),\n guaranteed_usage_gpu: prepareGuaranteedUsageColumn('gpu'),\n guaranteed_usage_user_slots: prepareGuaranteedUsageColumn('user_slots'),\n\n operation_overview: {\n get(item: PoolInfo) {\n return [item.operationCount, item.runningOperationCount];\n },\n caption: 'Operations',\n sort: true,\n align: 'right',\n },\n operation_count: {\n get(item: PoolInfo) {\n return item.operationCount;\n },\n sort: true,\n align: 'right',\n },\n max_operation_count: {\n get(item: PoolInfo) {\n return item.maxOperationCount;\n },\n sort: true,\n align: 'right',\n },\n operation_progress: {\n get(item: PoolInfo) {\n return item.operationCount! / item.maxOperationCount!;\n },\n text(item: PoolInfo) {\n return `${format.Number(item.operationCount)} / ${format.Number(\n item.maxOperationCount,\n )}`;\n },\n caption: 'Total operations (usage/limit)',\n sort: true,\n align: 'center',\n },\n running_operation_count: {\n get(item: PoolInfo) {\n return item.runningOperationCount;\n },\n sort: true,\n align: 'right',\n },\n max_running_operation_count: {\n get(item: PoolInfo) {\n return item.maxRunningOperationCount;\n },\n sort: true,\n align: 'right',\n },\n running_operation_progress: {\n get(item: PoolInfo) {\n return item.runningOperationCount! / item.maxRunningOperationCount!;\n },\n text(item: PoolInfo) {\n return `${format.Number(item.runningOperationCount)} / ${format.Number(\n item.maxRunningOperationCount,\n )}`;\n },\n caption: 'Running operations (usage/limit)',\n sort: true,\n align: 'center',\n },\n\n integral_type: {\n get(item: PoolInfo) {\n const res = item.integralType;\n return res === 'none' ? undefined : res;\n },\n caption: 'Guarantee type',\n sort: true,\n align: 'right',\n sortWithUndefined: true,\n },\n burst_cpu: {\n get(item: PoolInfo) {\n return item.burstCPU;\n },\n sort(item: PoolInfo) {\n const res = item.burstCPU;\n return isNaN(res) ? undefined : res;\n },\n caption: 'Burst CPU',\n sortWithUndefined: true,\n align: 'right',\n },\n flow_cpu: {\n get(item: PoolInfo) {\n return item.flowCPU;\n },\n sort(item: PoolInfo) {\n const res = item.flowCPU;\n return isNaN(res) ? undefined : res;\n },\n caption: 'Flow CPU',\n sortWithUndefined: true,\n align: 'right',\n },\n children_burst_cpu: {\n get(item: PoolInfo) {\n const res = item.childrenBurstCPU;\n return !res ? undefined : res;\n },\n caption: \"Children's burst CPU\",\n sort: true,\n sortWithUndefined: true,\n align: 'right',\n },\n children_flow_cpu: {\n get(item: PoolInfo) {\n const res = item.childrenFlowCPU;\n return !res ? undefined : res;\n },\n caption: \"Children's flow CPU\",\n sort: true,\n sortWithUndefined: true,\n align: 'right',\n },\n accumulated: {\n get(item: PoolInfo) {\n return item.accumulated;\n },\n caption: 'Acc ratio volume',\n sortWithUndefined: true,\n sort: true,\n align: 'right',\n },\n accumulated_cpu: {\n get(item: PoolInfo) {\n return item.accumulatedCpu;\n },\n caption: 'Acc CPU volume',\n sort: true,\n align: 'right',\n },\n burst_duration: {\n get(item: PoolInfo) {\n return item.burstDuration;\n },\n caption: 'Est burst usage duration ',\n sort: true,\n sortWithUndefined: true,\n align: 'right',\n },\n\n actions: {\n caption: '',\n align: 'left',\n },\n};\n"],"mappings":"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"}
@@ -14,7 +14,6 @@ export var bundleEditorDict = {
14
14
  },
15
15
  defaults: {
16
16
  memory_limits: {
17
- error: false,
18
17
  memory_reset: false,
19
18
  tablet_static: 0,
20
19
  tablet_dynamic: 0,
@@ -88,8 +87,6 @@ export var getInitialFormValues = function getInitialFormValues(data, bundleCont
88
87
  tablet_node_resource_guarantee: tablet_node_resource_guarantee || undefined
89
88
  },
90
89
  memory_limits: {
91
- error: false,
92
- // system
93
90
  memory_reset: false,
94
91
  // system
95
92
  reserved: (memory_limits === null || memory_limits === void 0 ? void 0 : memory_limits.reserved) || 0,
@@ -1 +1 @@
1
- {"version":3,"names":["ypath","hammer","bundleEditorDict","keys","resources","memory_limits","cpu_limits","defaults","error","memory_reset","tablet_static","tablet_dynamic","compressed_block_cache","uncompressed_block_cache","versioned_chunk_meta","lookup_row_cache","key_filter_block_cache","threadPool_reset","lookup_thread_pool_size","query_thread_pool_size","write_thread_pool_size","getResourceData","source","resourceType","usage","getValue","concat","limit","getInitialFormValues","data","bundleControllerConfig","slug","changelogAccount","snapshotAccount","_getResourceData","tablet_count","_getResourceData2","tablet_static_memory","general","abc","changelog_account","snapshot_account","rpc_proxy_count","tablet_node_count","rpc_proxy_resource_guarantee","tablet_node_resource_guarantee","info","undefined","reserved","formatNetwork","value","formatted","toPrecision","createConfigurationList","Object","entries","map","_ref","_ref2","_slicedToArray","type","itemData","_itemData$resource_gu","resource_guarantee","net","vcpu","memory","id","format","initialData","_objectSpread","createParams","formatType","total","used","_hammer$format$format","split","_hammer$format$format2","totalVal","totalPref","params","title","postfix","difference","_hammer$format$format3","_hammer$format$format4","usedVal","usedPref","push","NO_VALUE","prepareAbc","prepareSubmitBundle","form","prepare","_form$getState","getState","dirtyFields","values","addToChange","attr","field","prepareValue","_get","simpleBundleValidate","v","toNumber","Number","isFinite","instanceCountValidate","_ref3","length","input","number","getBundleControllerResource","current","defaultValues","resourceName","result","_iterator","_createForOfIteratorHelper","_step","s","n","done","_current$key","key","err","e","f"],"sources":["index.ts"],"sourcesContent":["import _ from 'lodash';\nimport ypath from '../../../../common/thor/ypath';\nimport hammer from '../../../../common/hammer';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport {\n BundleControllerConfig,\n BundleDataCenter,\n BundleDefaultConfigData,\n} from '../../../../store/reducers/tablet_cell_bundles';\nimport {BundleParam} from '../../../../pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleParamsList/BundleParamsList';\nimport {BundleEditorDialogFormValues} from '../../../../pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog';\nimport {FormApi} from '../../../../components/Dialog/Dialog';\n\ntype InnerKeys<T> = {[K in keyof T]: Array<keyof T[K]>};\ntype FormKeys = InnerKeys<Required<BundleEditorDialogFormValues>>;\n\nexport const bundleEditorDict: {\n keys: Pick<FormKeys, 'memory_limits' | 'resources' | 'cpu_limits'>;\n defaults: Pick<Required<BundleEditorDialogFormValues>, 'memory_limits' | 'cpu_limits'>;\n} = {\n keys: {\n resources: [\n 'rpc_proxy_count',\n 'rpc_proxy_resource_guarantee',\n 'tablet_node_count',\n 'tablet_node_resource_guarantee',\n ],\n memory_limits: [\n 'reserved',\n 'tablet_static',\n 'tablet_dynamic',\n 'compressed_block_cache',\n 'uncompressed_block_cache',\n 'versioned_chunk_meta',\n 'lookup_row_cache',\n 'key_filter_block_cache',\n ],\n cpu_limits: ['lookup_thread_pool_size', 'query_thread_pool_size', 'write_thread_pool_size'],\n },\n defaults: {\n memory_limits: {\n error: false,\n memory_reset: false,\n tablet_static: 0,\n tablet_dynamic: 0,\n compressed_block_cache: 0,\n uncompressed_block_cache: 0,\n versioned_chunk_meta: 0,\n lookup_row_cache: 0,\n key_filter_block_cache: 0,\n },\n cpu_limits: {\n threadPool_reset: false,\n lookup_thread_pool_size: 0,\n query_thread_pool_size: 0,\n write_thread_pool_size: 0,\n },\n },\n};\n\nexport const getResourceData = (source: object, resourceType: string) => {\n const usage = ypath.getValue(source, `/@resource_usage/${resourceType}`);\n const limit = ypath.getValue(source, `/@resource_limits/${resourceType}`);\n return {\n usage,\n limit,\n };\n};\n\nexport const getInitialFormValues = (\n data: object,\n bundleControllerConfig?: BundleControllerConfig,\n): Partial<BundleEditorDialogFormValues> => {\n const slug = ypath.getValue(data, '/@abc/slug');\n const changelogAccount = ypath.getValue(data, `/@options/changelog_account`);\n const snapshotAccount = ypath.getValue(data, `/@options/snapshot_account`);\n const {limit: tablet_count} = getResourceData(data, 'tablet_count');\n const {limit: tablet_static_memory} = getResourceData(data, 'tablet_static_memory');\n\n if (!bundleControllerConfig) {\n return {\n general: {\n abc: {slug},\n changelog_account: changelogAccount,\n snapshot_account: snapshotAccount,\n },\n resources: {\n tablet_count: tablet_count || 0,\n tablet_static_memory: tablet_static_memory || 0,\n },\n };\n }\n\n const {\n rpc_proxy_count,\n tablet_node_count,\n cpu_limits,\n memory_limits,\n rpc_proxy_resource_guarantee,\n tablet_node_resource_guarantee,\n } = bundleControllerConfig;\n\n return {\n general: {\n abc: {slug},\n changelog_account: changelogAccount,\n snapshot_account: snapshotAccount,\n },\n resources: {\n info: '', // system\n tablet_count: tablet_count || 0,\n rpc_proxy_count: rpc_proxy_count, // todo\n rpc_proxy_resource_guarantee: rpc_proxy_resource_guarantee || undefined,\n tablet_node_count: tablet_node_count,\n tablet_node_resource_guarantee: tablet_node_resource_guarantee || undefined,\n },\n memory_limits: {\n error: false, // system\n memory_reset: false, // system\n reserved: memory_limits?.reserved || 0,\n tablet_static: memory_limits?.tablet_static || 0,\n tablet_dynamic: memory_limits?.tablet_dynamic || 0,\n compressed_block_cache: memory_limits?.compressed_block_cache || 0,\n uncompressed_block_cache: memory_limits?.uncompressed_block_cache || 0,\n versioned_chunk_meta: memory_limits?.versioned_chunk_meta || 0,\n lookup_row_cache: memory_limits?.lookup_row_cache || 0,\n key_filter_block_cache: memory_limits?.key_filter_block_cache || 0,\n },\n cpu_limits: {\n threadPool_reset: false, //system\n lookup_thread_pool_size: cpu_limits?.lookup_thread_pool_size || 0,\n query_thread_pool_size: cpu_limits?.query_thread_pool_size || 0,\n write_thread_pool_size: cpu_limits?.write_thread_pool_size || 0,\n },\n };\n};\n\nfunction formatNetwork(value?: number) {\n const formatted = typeof value !== 'undefined' ? (value / 1000e6).toPrecision(2) : 0;\n return `${formatted} Gbit RX/TX`;\n}\n\nexport const createConfigurationList = (\n data: BundleDefaultConfigData['rpc_proxy_sizes'] | BundleDefaultConfigData['tablet_node_sizes'],\n) => {\n return Object.entries(data).map(([type, itemData]) => {\n const {net, vcpu, memory} = itemData.resource_guarantee;\n return {\n id: type,\n type,\n memory: hammer.format['Bytes'](memory),\n net: formatNetwork(net),\n vcpu: hammer.format['vCores'](vcpu),\n initialData: {...itemData.resource_guarantee, type},\n };\n });\n};\n\nexport const createParams = (formatType: 'Bytes' | 'vCores', total: number, used?: number) => {\n const [totalVal, totalPref] = hammer.format[formatType](total).split(' ');\n const params: BundleParam[] = [{title: 'Total', value: totalVal, postfix: totalPref}];\n\n if (typeof used !== 'undefined') {\n const difference = total - used;\n const [usedVal, usedPref] = hammer.format[formatType](difference).split(' ');\n params.push({\n title: 'Free',\n value: usedVal === hammer.format.NO_VALUE ? '0' : usedVal,\n postfix: usedPref,\n type: difference >= 0 ? 'positive' : 'negative',\n });\n }\n return params;\n};\n\nfunction prepareAbc(value: {id: number; slug: string}) {\n const {id, slug} = value;\n return id && slug ? {id, slug} : undefined;\n}\n\nexport const prepareSubmitBundle = (form: FormApi<BundleEditorDialogFormValues>) => {\n const prepare: {[path: string]: any} = {};\n const {dirtyFields, values} = form.getState();\n\n function addToChange(attr: string, field: string, prepareValue?: Function) {\n if (!dirtyFields[field]) {\n return;\n }\n const value = _.get(values, field);\n prepare[attr] = typeof prepareValue === 'function' ? prepareValue(value) : value;\n }\n\n // Generel\n addToChange('@abc', 'general.abc', prepareAbc);\n addToChange('@options/changelog_account', 'general.changelog_account');\n addToChange('@options/snapshot_account', 'general.snapshot_account');\n // Resources\n addToChange('@resource_limits/tablet_count', 'resources.tablet_count');\n addToChange('@resource_limits/tablet_static_memory', 'resources.tablet_static_memory');\n addToChange('@bundle_controller_target_config/rpc_proxy_count', 'resources.rpc_proxy_count');\n addToChange(\n '@bundle_controller_target_config/tablet_node_count',\n 'resources.tablet_node_count',\n );\n addToChange(\n '@bundle_controller_target_config/rpc_proxy_resource_guarantee',\n 'resources.rpc_proxy_resource_guarantee',\n );\n addToChange(\n '@bundle_controller_target_config/tablet_node_resource_guarantee',\n 'resources.tablet_node_resource_guarantee',\n );\n // Memory_limits\n addToChange(\n '@bundle_controller_target_config/memory_limits/tablet_static',\n 'memory_limits.tablet_static',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/tablet_dynamic',\n 'memory_limits.tablet_dynamic',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/compressed_block_cache',\n 'memory_limits.compressed_block_cache',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/uncompressed_block_cache',\n 'memory_limits.uncompressed_block_cache',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/versioned_chunk_meta',\n 'memory_limits.versioned_chunk_meta',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/lookup_row_cache',\n 'memory_limits.lookup_row_cache',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/key_filter_block_cache',\n 'memory_limits.key_filter_block_cache',\n );\n // Cpu_limits\n addToChange(\n '@bundle_controller_target_config/cpu_limits/lookup_thread_pool_size',\n 'cpu_limits.lookup_thread_pool_size',\n );\n addToChange(\n '@bundle_controller_target_config/cpu_limits/query_thread_pool_size',\n 'cpu_limits.query_thread_pool_size',\n );\n addToChange(\n '@bundle_controller_target_config/cpu_limits/write_thread_pool_size',\n 'cpu_limits.write_thread_pool_size',\n );\n\n return prepare;\n};\n\nexport const simpleBundleValidate = (v?: number | string) => {\n const toNumber = Number(v);\n let error;\n if (!Number.isFinite(toNumber)) {\n error = 'Incorrect value';\n }\n\n if (toNumber < 0) {\n error = 'Must be greater than or equal to zero';\n }\n\n return error;\n};\n\nexport const instanceCountValidate = ({\n length,\n}: BundleDataCenter[]): ((input?: number | string) => string | undefined) => {\n return (input?: number | string): string | undefined => {\n const number = Number(input);\n let error: string | undefined;\n\n if (!Number.isFinite(number)) {\n error = 'Incorrect value';\n } else if (number < 0) {\n error = 'Must be greater than or equal to zero';\n } else if (length > 0 && number % length !== 0) {\n error = `Must be divisible by ${length}`;\n }\n\n return error;\n };\n};\n\nexport function getBundleControllerResource<K extends 'cpu_limits' | 'memory_limits'>(\n current: Partial<Required<BundleEditorDialogFormValues>[K]>,\n defaultValues: Partial<Required<BundleEditorDialogFormValues>[K]>,\n resourceName: K,\n) {\n const result: Partial<BundleEditorDialogFormValues[K]> = {};\n\n for (const key of bundleEditorDict.keys[resourceName]) {\n result[key] = current[key] ?? defaultValues[key];\n }\n\n return result;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["ypath","hammer","bundleEditorDict","keys","resources","memory_limits","cpu_limits","defaults","memory_reset","tablet_static","tablet_dynamic","compressed_block_cache","uncompressed_block_cache","versioned_chunk_meta","lookup_row_cache","key_filter_block_cache","threadPool_reset","lookup_thread_pool_size","query_thread_pool_size","write_thread_pool_size","getResourceData","source","resourceType","usage","getValue","concat","limit","getInitialFormValues","data","bundleControllerConfig","slug","changelogAccount","snapshotAccount","_getResourceData","tablet_count","_getResourceData2","tablet_static_memory","general","abc","changelog_account","snapshot_account","rpc_proxy_count","tablet_node_count","rpc_proxy_resource_guarantee","tablet_node_resource_guarantee","info","undefined","reserved","formatNetwork","value","formatted","toPrecision","createConfigurationList","Object","entries","map","_ref","_ref2","_slicedToArray","type","itemData","_itemData$resource_gu","resource_guarantee","net","vcpu","memory","id","format","initialData","_objectSpread","createParams","formatType","total","used","_hammer$format$format","split","_hammer$format$format2","totalVal","totalPref","params","title","postfix","difference","_hammer$format$format3","_hammer$format$format4","usedVal","usedPref","push","NO_VALUE","prepareAbc","prepareSubmitBundle","form","prepare","_form$getState","getState","dirtyFields","values","addToChange","attr","field","prepareValue","_get","simpleBundleValidate","v","toNumber","Number","error","isFinite","instanceCountValidate","_ref3","length","input","number","getBundleControllerResource","current","defaultValues","resourceName","result","_iterator","_createForOfIteratorHelper","_step","s","n","done","_current$key","key","err","e","f"],"sources":["index.ts"],"sourcesContent":["import _ from 'lodash';\nimport ypath from '../../../../common/thor/ypath';\nimport hammer from '../../../../common/hammer';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport {\n BundleControllerConfig,\n BundleDataCenter,\n BundleDefaultConfigData,\n} from '../../../../store/reducers/tablet_cell_bundles';\nimport {BundleParam} from '../../../../pages/tablet_cell_bundles/bundles/BundleEditorDialog/components/BundleParamsList/BundleParamsList';\nimport {BundleEditorDialogFormValues} from '../../../../pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog';\nimport {FormApi} from '../../../../components/Dialog/Dialog';\n\ntype InnerKeys<T> = {[K in keyof T]: Array<keyof T[K]>};\ntype FormKeys = InnerKeys<Required<BundleEditorDialogFormValues>>;\n\nexport const bundleEditorDict: {\n keys: Pick<FormKeys, 'memory_limits' | 'resources' | 'cpu_limits'>;\n defaults: Pick<Required<BundleEditorDialogFormValues>, 'memory_limits' | 'cpu_limits'>;\n} = {\n keys: {\n resources: [\n 'rpc_proxy_count',\n 'rpc_proxy_resource_guarantee',\n 'tablet_node_count',\n 'tablet_node_resource_guarantee',\n ],\n memory_limits: [\n 'reserved',\n 'tablet_static',\n 'tablet_dynamic',\n 'compressed_block_cache',\n 'uncompressed_block_cache',\n 'versioned_chunk_meta',\n 'lookup_row_cache',\n 'key_filter_block_cache',\n ],\n cpu_limits: ['lookup_thread_pool_size', 'query_thread_pool_size', 'write_thread_pool_size'],\n },\n defaults: {\n memory_limits: {\n memory_reset: false,\n tablet_static: 0,\n tablet_dynamic: 0,\n compressed_block_cache: 0,\n uncompressed_block_cache: 0,\n versioned_chunk_meta: 0,\n lookup_row_cache: 0,\n key_filter_block_cache: 0,\n },\n cpu_limits: {\n threadPool_reset: false,\n lookup_thread_pool_size: 0,\n query_thread_pool_size: 0,\n write_thread_pool_size: 0,\n },\n },\n};\n\nexport const getResourceData = (source: object, resourceType: string) => {\n const usage = ypath.getValue(source, `/@resource_usage/${resourceType}`);\n const limit = ypath.getValue(source, `/@resource_limits/${resourceType}`);\n return {\n usage,\n limit,\n };\n};\n\nexport const getInitialFormValues = (\n data: object,\n bundleControllerConfig?: BundleControllerConfig,\n): Partial<BundleEditorDialogFormValues> => {\n const slug = ypath.getValue(data, '/@abc/slug');\n const changelogAccount = ypath.getValue(data, `/@options/changelog_account`);\n const snapshotAccount = ypath.getValue(data, `/@options/snapshot_account`);\n const {limit: tablet_count} = getResourceData(data, 'tablet_count');\n const {limit: tablet_static_memory} = getResourceData(data, 'tablet_static_memory');\n\n if (!bundleControllerConfig) {\n return {\n general: {\n abc: {slug},\n changelog_account: changelogAccount,\n snapshot_account: snapshotAccount,\n },\n resources: {\n tablet_count: tablet_count || 0,\n tablet_static_memory: tablet_static_memory || 0,\n },\n };\n }\n\n const {\n rpc_proxy_count,\n tablet_node_count,\n cpu_limits,\n memory_limits,\n rpc_proxy_resource_guarantee,\n tablet_node_resource_guarantee,\n } = bundleControllerConfig;\n\n return {\n general: {\n abc: {slug},\n changelog_account: changelogAccount,\n snapshot_account: snapshotAccount,\n },\n resources: {\n info: '', // system\n tablet_count: tablet_count || 0,\n rpc_proxy_count: rpc_proxy_count, // todo\n rpc_proxy_resource_guarantee: rpc_proxy_resource_guarantee || undefined,\n tablet_node_count: tablet_node_count,\n tablet_node_resource_guarantee: tablet_node_resource_guarantee || undefined,\n },\n memory_limits: {\n memory_reset: false, // system\n reserved: memory_limits?.reserved || 0,\n tablet_static: memory_limits?.tablet_static || 0,\n tablet_dynamic: memory_limits?.tablet_dynamic || 0,\n compressed_block_cache: memory_limits?.compressed_block_cache || 0,\n uncompressed_block_cache: memory_limits?.uncompressed_block_cache || 0,\n versioned_chunk_meta: memory_limits?.versioned_chunk_meta || 0,\n lookup_row_cache: memory_limits?.lookup_row_cache || 0,\n key_filter_block_cache: memory_limits?.key_filter_block_cache || 0,\n },\n cpu_limits: {\n threadPool_reset: false, //system\n lookup_thread_pool_size: cpu_limits?.lookup_thread_pool_size || 0,\n query_thread_pool_size: cpu_limits?.query_thread_pool_size || 0,\n write_thread_pool_size: cpu_limits?.write_thread_pool_size || 0,\n },\n };\n};\n\nfunction formatNetwork(value?: number) {\n const formatted = typeof value !== 'undefined' ? (value / 1000e6).toPrecision(2) : 0;\n return `${formatted} Gbit RX/TX`;\n}\n\nexport const createConfigurationList = (\n data: BundleDefaultConfigData['rpc_proxy_sizes'] | BundleDefaultConfigData['tablet_node_sizes'],\n) => {\n return Object.entries(data).map(([type, itemData]) => {\n const {net, vcpu, memory} = itemData.resource_guarantee;\n return {\n id: type,\n type,\n memory: hammer.format['Bytes'](memory),\n net: formatNetwork(net),\n vcpu: hammer.format['vCores'](vcpu),\n initialData: {...itemData.resource_guarantee, type},\n };\n });\n};\n\nexport const createParams = (formatType: 'Bytes' | 'vCores', total: number, used?: number) => {\n const [totalVal, totalPref] = hammer.format[formatType](total).split(' ');\n const params: BundleParam[] = [{title: 'Total', value: totalVal, postfix: totalPref}];\n\n if (typeof used !== 'undefined') {\n const difference = total - used;\n const [usedVal, usedPref] = hammer.format[formatType](difference).split(' ');\n params.push({\n title: 'Free',\n value: usedVal === hammer.format.NO_VALUE ? '0' : usedVal,\n postfix: usedPref,\n type: difference >= 0 ? 'positive' : 'negative',\n });\n }\n return params;\n};\n\nfunction prepareAbc(value: {id: number; slug: string}) {\n const {id, slug} = value;\n return id && slug ? {id, slug} : undefined;\n}\n\nexport const prepareSubmitBundle = (form: FormApi<BundleEditorDialogFormValues>) => {\n const prepare: {[path: string]: any} = {};\n const {dirtyFields, values} = form.getState();\n\n function addToChange(attr: string, field: string, prepareValue?: Function) {\n if (!dirtyFields[field]) {\n return;\n }\n const value = _.get(values, field);\n prepare[attr] = typeof prepareValue === 'function' ? prepareValue(value) : value;\n }\n\n // Generel\n addToChange('@abc', 'general.abc', prepareAbc);\n addToChange('@options/changelog_account', 'general.changelog_account');\n addToChange('@options/snapshot_account', 'general.snapshot_account');\n // Resources\n addToChange('@resource_limits/tablet_count', 'resources.tablet_count');\n addToChange('@resource_limits/tablet_static_memory', 'resources.tablet_static_memory');\n addToChange('@bundle_controller_target_config/rpc_proxy_count', 'resources.rpc_proxy_count');\n addToChange(\n '@bundle_controller_target_config/tablet_node_count',\n 'resources.tablet_node_count',\n );\n addToChange(\n '@bundle_controller_target_config/rpc_proxy_resource_guarantee',\n 'resources.rpc_proxy_resource_guarantee',\n );\n addToChange(\n '@bundle_controller_target_config/tablet_node_resource_guarantee',\n 'resources.tablet_node_resource_guarantee',\n );\n // Memory_limits\n addToChange(\n '@bundle_controller_target_config/memory_limits/tablet_static',\n 'memory_limits.tablet_static',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/tablet_dynamic',\n 'memory_limits.tablet_dynamic',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/compressed_block_cache',\n 'memory_limits.compressed_block_cache',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/uncompressed_block_cache',\n 'memory_limits.uncompressed_block_cache',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/versioned_chunk_meta',\n 'memory_limits.versioned_chunk_meta',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/lookup_row_cache',\n 'memory_limits.lookup_row_cache',\n );\n addToChange(\n '@bundle_controller_target_config/memory_limits/key_filter_block_cache',\n 'memory_limits.key_filter_block_cache',\n );\n // Cpu_limits\n addToChange(\n '@bundle_controller_target_config/cpu_limits/lookup_thread_pool_size',\n 'cpu_limits.lookup_thread_pool_size',\n );\n addToChange(\n '@bundle_controller_target_config/cpu_limits/query_thread_pool_size',\n 'cpu_limits.query_thread_pool_size',\n );\n addToChange(\n '@bundle_controller_target_config/cpu_limits/write_thread_pool_size',\n 'cpu_limits.write_thread_pool_size',\n );\n\n return prepare;\n};\n\nexport const simpleBundleValidate = (v?: number | string) => {\n const toNumber = Number(v);\n let error;\n if (!Number.isFinite(toNumber)) {\n error = 'Incorrect value';\n }\n\n if (toNumber < 0) {\n error = 'Must be greater than or equal to zero';\n }\n\n return error;\n};\n\nexport const instanceCountValidate = ({\n length,\n}: BundleDataCenter[]): ((input?: number | string) => string | undefined) => {\n return (input?: number | string): string | undefined => {\n const number = Number(input);\n let error: string | undefined;\n\n if (!Number.isFinite(number)) {\n error = 'Incorrect value';\n } else if (number < 0) {\n error = 'Must be greater than or equal to zero';\n } else if (length > 0 && number % length !== 0) {\n error = `Must be divisible by ${length}`;\n }\n\n return error;\n };\n};\n\nexport function getBundleControllerResource<K extends 'cpu_limits' | 'memory_limits'>(\n current: Partial<Required<BundleEditorDialogFormValues>[K]>,\n defaultValues: Partial<Required<BundleEditorDialogFormValues>[K]>,\n resourceName: K,\n) {\n const result: Partial<BundleEditorDialogFormValues[K]> = {};\n\n for (const key of bundleEditorDict.keys[resourceName]) {\n result[key] = current[key] ?? defaultValues[key];\n }\n\n return result;\n}\n"],"mappings":"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"}
@@ -16,6 +16,7 @@ import hammer from '../common/hammer';
16
16
  import { LOADING_STATUS } from '../constants';
17
17
  import { showErrorModal } from '../store/actions/modals/errors';
18
18
  import { UIBatchError } from './errors/ui-error';
19
+ import { isCancelled } from './cancel-helper';
19
20
  import { jsxs as _jsxs } from "react/jsx-runtime";
20
21
  import { jsx as _jsx } from "react/jsx-runtime";
21
22
  export function getBatchError(batchResults, message) {
@@ -128,7 +129,7 @@ export function wrapApiPromiseByToaster(p, options) {
128
129
  var data = (error === null || error === void 0 || (_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data) || error;
129
130
  var code = data.code,
130
131
  message = data.message;
131
- if (!options.skipErrorToast) {
132
+ if (!options.skipErrorToast && !isCancelled(error)) {
132
133
  toaster.add({
133
134
  name: options.toasterName,
134
135
  type: 'error',
@@ -1 +1 @@
1
- {"version":3,"names":["React","axios","Link","Toaster","computeProgress","defaultThemeThresholds","getProgressTheme","hammer","LOADING_STATUS","showErrorModal","UIBatchError","jsxs","_jsxs","jsx","_jsx","getBatchError","batchResults","message","splitBatchResults","error","COMMANDS_V4_WITH_VALUE","get","list","exists","extractBatchV4Values","data","requests","results","rest","_objectWithoutProperties","_excluded","res","_map","itemData","index","_requests$index","hasValue","command","output","itemRest","_excluded2","_objectSpread","value","inputError","dstError","innerErrors","outputs","errorIndices","resultIndices","_forEach","push","length","_dstError$inner_error","_dstError$inner_error2","inner_errors","apply","undefined","getBatchErrorIndices","_reduce","acc","_ref","toaster","wrapBatchPromise","p","errorTitle","then","wrapApiPromiseByToaster","options","errorContent","successContent","isBatch","skipSuccessToast","_options$timeout","add","name","toasterName","type","title","successTitle","content","autoHiding","autoHide","timeout","_error$response","isCancel","Promise","reject","response","code","skipErrorToast","children","actions","label","onClick","showErrorPopup","calcProgressProps","usage","limit","format","arguments","themeThresholds","theme","text","concat","formatNumber","showToasterError","_error$response2","unescapeSlashX","path","decoded","i","len","currentChar","charAt","nextChar","hexEscapeSequence","String","fromCharCode","parseInt","calculateLoadingStatus","loading","loaded","LOADING","ERROR","LOADED","UNINITIALIZED","isFinalLoadingStatus","status","delayed","callBack","rej","setTimeout","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","t0","t1","sent","t2","stop","makeLink","url","href","target","window","store","dispatch","toggleBooleanInPlace","key","obj","tmp","moveArrayElement","arr","oldIndex","newIndex","_arr$splice","splice","_arr$splice2","_slicedToArray","item","nanToUndefined","isNaN","visitTreeItems","treeItem","visitorFn","opts","handledSet","Set","visitTreeItemsImpl","isNeedToSkipChildren","has","child","openInNewTab","Object","assign","document","createElement","click","previousProps","showChangedProps","props","verbose","prevProps","console","log","Date","now","keys","changed","v","k","updateIfChanged","isEqual"],"sources":["utils.tsx"],"sourcesContent":["import React from 'react';\nimport axios, {AxiosError} from 'axios';\nimport _ from 'lodash';\n\nimport {TypedKeys, YTError} from '../types';\nimport {Link, ProgressProps, Toaster} from '@gravity-ui/uikit';\nimport {\n ThemeThreshold,\n computeProgress,\n defaultThemeThresholds,\n getProgressTheme,\n} from '../utils/progress';\nimport hammer from '../common/hammer';\nimport {LOADING_STATUS} from '../constants';\nimport {ErrorInfo} from '../store/reducers/modals/errors';\nimport {showErrorModal} from '../store/actions/modals/errors';\nimport {BatchResultsItem} from '../../shared/yt-types';\n\nimport {UIBatchError} from './errors/ui-error';\n\nexport function getBatchError<T = unknown>(\n batchResults: Array<BatchResultsItem<T>>,\n message: string,\n): YTError | undefined {\n return splitBatchResults(batchResults, new UIBatchError(message)).error;\n}\n\nconst COMMANDS_V4_WITH_VALUE: Record<string, boolean> = {\n get: true,\n list: true,\n exists: true,\n};\n\nexport function extractBatchV4Values<V, T extends {value?: V}>(\n data: {\n results?: Array<BatchResultsItem<T | V>>;\n },\n requests: Array<{command: string}>,\n) {\n const {results, ...rest} = data;\n const res = !results\n ? []\n : _.map(results, (itemData, index) => {\n const hasValue = COMMANDS_V4_WITH_VALUE[requests[index]?.command];\n if (!hasValue) {\n return itemData;\n }\n\n const {output, ...itemRest} = itemData;\n return {\n ...itemRest,\n ...(hasValue ? {output: (output as any).value} : {output}),\n };\n });\n\n return {...rest, results: res};\n}\n\nexport interface SplitedBatchResults<T> {\n error: YTError | undefined;\n results: Array<T>;\n outputs: Array<T | undefined>;\n errorIndices: Array<number>;\n resultIndices: Array<number>;\n}\n\nexport function splitBatchResults<T = unknown>(\n batchResults: Array<BatchResultsItem<T>>,\n inputError: string | UIBatchError,\n): SplitedBatchResults<T> {\n const dstError: UIBatchError =\n typeof inputError === 'string' ? new UIBatchError(inputError) : inputError;\n\n const innerErrors: Array<YTError> = [];\n const results: Array<T> = [];\n const outputs: Array<T | undefined> = [];\n const errorIndices: Array<number> = [];\n const resultIndices: Array<number> = [];\n _.forEach(batchResults, (res, index) => {\n const {error, output} = res;\n outputs.push(output);\n if (error) {\n innerErrors.push(error);\n errorIndices.push(index);\n } else {\n results.push(output!);\n resultIndices.push(index);\n }\n });\n\n if (innerErrors.length) {\n dstError.inner_errors = dstError.inner_errors ?? [];\n dstError.inner_errors.push(...innerErrors);\n }\n\n const error = !innerErrors.length ? undefined : dstError;\n return {error: error as UIBatchError, results, outputs, errorIndices, resultIndices};\n}\n\nexport function getBatchErrorIndices<T>(results: Array<BatchResultsItem<T>>) {\n return _.reduce(\n results,\n (acc, {error}, index) => {\n if (error) {\n acc.push(index);\n }\n return acc;\n },\n [] as Array<number>,\n );\n}\n\ninterface CommonWrapApiOptions<T> {\n toasterName: string;\n successContent?: React.ReactNode | ((res: T) => React.ReactNode);\n skipSuccessToast?: boolean;\n errorContent?: React.ReactNode | ((e: YTError) => React.ReactNode);\n skipErrorToast?: boolean;\n successTitle?: string;\n timeout?: number;\n autoHide?: boolean;\n}\n\ntype BatchWrapApiOption =\n | {isBatch?: false; errorTitle?: string}\n | {isBatch: true; errorTitle: string};\n\ntype WrapApiOptions<T> = CommonWrapApiOptions<T> & BatchWrapApiOption;\n\nconst toaster = new Toaster();\n\nexport function wrapBatchPromise<T>(p: Promise<T>, errorTitle: string): Promise<T> {\n return p.then((res) => {\n const error = getBatchError(res as any, errorTitle);\n if (error) {\n throw error;\n }\n\n return res;\n });\n}\n\nexport function wrapApiPromiseByToaster<T>(p: Promise<T>, options: WrapApiOptions<T>): Promise<T> {\n const {errorContent, successContent} = options;\n return p\n .then((res) => {\n if (options.isBatch) {\n const error = getBatchError(\n res as any,\n options.errorTitle || 'Missing batch error title',\n );\n if (error) {\n throw error;\n }\n }\n\n if (!options.skipSuccessToast) {\n toaster.add({\n name: options.toasterName,\n type: 'success',\n title: options.successTitle || 'Success',\n content:\n 'function' === typeof successContent ? successContent(res) : successContent,\n autoHiding: options.autoHide === false ? false : options.timeout ?? 10000,\n });\n }\n return res;\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n return Promise.reject(error);\n }\n\n const data = error?.response?.data || error;\n const {code, message} = data;\n\n if (!options.skipErrorToast) {\n toaster.add({\n name: options.toasterName,\n type: 'error',\n title: options.errorTitle || 'Failure',\n content:\n 'function' === typeof errorContent\n ? errorContent(error)\n : errorContent || (\n <span>\n [code {code}] {message}\n </span>\n ),\n actions: [{label: ' Details', onClick: () => showErrorPopup(data)}],\n autoHiding: false,\n });\n }\n return Promise.reject(error);\n });\n}\n\nexport function calcProgressProps(\n usage?: number,\n limit?: number,\n format: 'Number' | 'Bytes' = 'Number',\n themeThresholds: ThemeThreshold[] = defaultThemeThresholds,\n): ProgressProps {\n const value = computeProgress(usage, limit);\n return {\n value,\n theme: getProgressTheme(value, themeThresholds),\n text: `${formatNumber(usage, format)} / ${formatNumber(limit, format)}`,\n };\n}\n\nexport function formatNumber(value?: number, format?: 'Number' | 'Bytes'): string {\n return format === 'Bytes' ? hammer.format['Bytes'](value) : hammer.format['Number'](value);\n}\n\nexport function showToasterError(name: string, error: any) {\n const data = error?.response?.data || error;\n const {code, message} = data;\n\n toaster.add({\n name,\n type: 'error',\n title: `${name} failure`,\n content: (\n <span>\n [code {code}] {message}\n </span>\n ),\n actions: [{label: ' view', onClick: () => showErrorPopup(data)}],\n });\n return Promise.reject(error);\n}\n\nexport function unescapeSlashX(path: string) {\n let decoded = '';\n\n for (let i = 0, len = path.length; i < len; i++) {\n const currentChar = path.charAt(i);\n\n if (currentChar === '\\\\') {\n const nextChar = path.charAt((i += 1));\n\n if (nextChar === 'x') {\n // TODO check that next two characters are hexademical and end of string is not reached\n const hexEscapeSequence = path.charAt((i += 1)) + path.charAt((i += 1));\n\n decoded += String.fromCharCode(parseInt(hexEscapeSequence, 16));\n } else {\n decoded += nextChar;\n }\n } else {\n decoded += currentChar;\n }\n }\n\n return decoded;\n}\n\nexport function calculateLoadingStatus(loading: boolean, loaded: boolean, error: any) {\n if (loading) {\n return LOADING_STATUS.LOADING;\n }\n\n if (error) {\n return LOADING_STATUS.ERROR;\n }\n\n if (loaded) {\n return LOADING_STATUS.LOADED;\n }\n\n return LOADING_STATUS.UNINITIALIZED;\n}\n\nexport function isFinalLoadingStatus(status: string) {\n return status === LOADING_STATUS.LOADED || status === LOADING_STATUS.ERROR;\n}\n\nexport function delayed<T>(callBack: () => Promise<T>, timeout: number): Promise<T> {\n return new Promise((res, rej) => {\n setTimeout(async () => {\n try {\n res(await callBack());\n } catch (e) {\n rej(e);\n }\n }, timeout);\n });\n}\n\nexport function makeLink(url: string, text: string) {\n return !url ? undefined : (\n <Link href={url} target={'_blank'}>\n {text}\n </Link>\n );\n}\n\nexport function showErrorPopup(\n error: YTError | AxiosError,\n options: Omit<ErrorInfo, 'error'> = {},\n) {\n (window as any).store.dispatch(showErrorModal(error, options));\n}\n\nexport function toggleBooleanInPlace<T, K extends TypedKeys<T, boolean>>(key: K, obj: T) {\n const tmp: any = obj;\n if (tmp[key]) {\n delete tmp[key];\n } else {\n tmp[key] = true;\n }\n return obj;\n}\n\nexport function moveArrayElement<T>(arr: Array<T>, oldIndex: number, newIndex: number): [] | [T] {\n if (oldIndex < 0 || oldIndex >= arr.length || newIndex < 0 || newIndex >= arr.length) {\n return [];\n }\n\n const [item] = arr.splice(oldIndex, 1);\n arr.splice(newIndex, 0, item);\n\n return [item];\n}\n\nexport function nanToUndefined(value: any) {\n return isNaN(value) ? undefined : value;\n}\n\ntype Tree<T> = T & {\n children?: Array<Tree<T>>;\n};\n\ninterface VisitTreeItemsOptions<T> {\n handledSet: Set<unknown>;\n isNeedToSkipChildren?: (item: T) => boolean;\n}\n\nexport function visitTreeItems<T>(\n treeItem: Tree<T> | undefined,\n visitorFn: (item: T) => void,\n options?: Partial<VisitTreeItemsOptions<T>>,\n) {\n const opts = {\n ...options,\n handledSet: options?.handledSet || new Set(),\n };\n\n return visitTreeItemsImpl(treeItem, visitorFn, opts);\n}\n\nfunction visitTreeItemsImpl<T>(\n treeItem: Tree<T> | undefined,\n visitorFn: (item: T) => void,\n options: VisitTreeItemsOptions<T>,\n) {\n const {handledSet, isNeedToSkipChildren} = options;\n\n if (!treeItem || handledSet.has(treeItem)) {\n return;\n }\n\n handledSet.add(treeItem);\n visitorFn(treeItem);\n\n if (isNeedToSkipChildren && isNeedToSkipChildren(treeItem)) {\n return;\n }\n\n _.forEach(treeItem.children, (child) => visitTreeItemsImpl(child, visitorFn, options));\n}\n\nexport function openInNewTab(href: string) {\n // Safari specific hack to open new tab (not window)\n Object.assign(document.createElement('a'), {\n target: '_blank',\n href,\n }).click();\n}\n\nconst previousProps: Record<string, any> = {};\n\nexport function showChangedProps(key: string, props: object, verbose?: boolean) {\n const prevProps = previousProps[key];\n if (prevProps === undefined) {\n console.log(key, Date.now(), Object.keys(props));\n } else {\n const changed: Array<string> = [];\n _.forEach(props, (v, k) => {\n if (v !== prevProps[k]) {\n changed.push(k);\n if (verbose) {\n console.log(key, k, {prev: prevProps[k], v});\n }\n }\n });\n console.log(key, Date.now(), changed);\n }\n previousProps[key] = props;\n}\n\nexport function updateIfChanged<T, K extends keyof T>(\n obj: T,\n key: K,\n value: T[K],\n isEqual?: (l: T[K], r: T[K]) => boolean,\n) {\n if (isEqual ? !isEqual(obj[key], value) : obj[key] !== value) {\n obj[key] = value;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","axios","Link","Toaster","computeProgress","defaultThemeThresholds","getProgressTheme","hammer","LOADING_STATUS","showErrorModal","UIBatchError","isCancelled","jsxs","_jsxs","jsx","_jsx","getBatchError","batchResults","message","splitBatchResults","error","COMMANDS_V4_WITH_VALUE","get","list","exists","extractBatchV4Values","data","requests","results","rest","_objectWithoutProperties","_excluded","res","_map","itemData","index","_requests$index","hasValue","command","output","itemRest","_excluded2","_objectSpread","value","inputError","dstError","innerErrors","outputs","errorIndices","resultIndices","_forEach","push","length","_dstError$inner_error","_dstError$inner_error2","inner_errors","apply","undefined","getBatchErrorIndices","_reduce","acc","_ref","toaster","wrapBatchPromise","p","errorTitle","then","wrapApiPromiseByToaster","options","errorContent","successContent","isBatch","skipSuccessToast","_options$timeout","add","name","toasterName","type","title","successTitle","content","autoHiding","autoHide","timeout","_error$response","isCancel","Promise","reject","response","code","skipErrorToast","children","actions","label","onClick","showErrorPopup","calcProgressProps","usage","limit","format","arguments","themeThresholds","theme","text","concat","formatNumber","showToasterError","_error$response2","unescapeSlashX","path","decoded","i","len","currentChar","charAt","nextChar","hexEscapeSequence","String","fromCharCode","parseInt","calculateLoadingStatus","loading","loaded","LOADING","ERROR","LOADED","UNINITIALIZED","isFinalLoadingStatus","status","delayed","callBack","rej","setTimeout","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","t0","t1","sent","t2","stop","makeLink","url","href","target","window","store","dispatch","toggleBooleanInPlace","key","obj","tmp","moveArrayElement","arr","oldIndex","newIndex","_arr$splice","splice","_arr$splice2","_slicedToArray","item","nanToUndefined","isNaN","visitTreeItems","treeItem","visitorFn","opts","handledSet","Set","visitTreeItemsImpl","isNeedToSkipChildren","has","child","openInNewTab","Object","assign","document","createElement","click","previousProps","showChangedProps","props","verbose","prevProps","console","log","Date","now","keys","changed","v","k","updateIfChanged","isEqual"],"sources":["utils.tsx"],"sourcesContent":["import React from 'react';\nimport axios, {AxiosError} from 'axios';\nimport _ from 'lodash';\n\nimport {TypedKeys, YTError} from '../types';\nimport {Link, ProgressProps, Toaster} from '@gravity-ui/uikit';\nimport {\n ThemeThreshold,\n computeProgress,\n defaultThemeThresholds,\n getProgressTheme,\n} from '../utils/progress';\nimport hammer from '../common/hammer';\nimport {LOADING_STATUS} from '../constants';\nimport {ErrorInfo} from '../store/reducers/modals/errors';\nimport {showErrorModal} from '../store/actions/modals/errors';\nimport {BatchResultsItem} from '../../shared/yt-types';\n\nimport {UIBatchError} from './errors/ui-error';\nimport {isCancelled} from './cancel-helper';\n\nexport function getBatchError<T = unknown>(\n batchResults: Array<BatchResultsItem<T>>,\n message: string,\n): YTError | undefined {\n return splitBatchResults(batchResults, new UIBatchError(message)).error;\n}\n\nconst COMMANDS_V4_WITH_VALUE: Record<string, boolean> = {\n get: true,\n list: true,\n exists: true,\n};\n\nexport function extractBatchV4Values<V, T extends {value?: V}>(\n data: {\n results?: Array<BatchResultsItem<T | V>>;\n },\n requests: Array<{command: string}>,\n) {\n const {results, ...rest} = data;\n const res = !results\n ? []\n : _.map(results, (itemData, index) => {\n const hasValue = COMMANDS_V4_WITH_VALUE[requests[index]?.command];\n if (!hasValue) {\n return itemData;\n }\n\n const {output, ...itemRest} = itemData;\n return {\n ...itemRest,\n ...(hasValue ? {output: (output as any).value} : {output}),\n };\n });\n\n return {...rest, results: res};\n}\n\nexport interface SplitedBatchResults<T> {\n error: YTError | undefined;\n results: Array<T>;\n outputs: Array<T | undefined>;\n errorIndices: Array<number>;\n resultIndices: Array<number>;\n}\n\nexport function splitBatchResults<T = unknown>(\n batchResults: Array<BatchResultsItem<T>>,\n inputError: string | UIBatchError,\n): SplitedBatchResults<T> {\n const dstError: UIBatchError =\n typeof inputError === 'string' ? new UIBatchError(inputError) : inputError;\n\n const innerErrors: Array<YTError> = [];\n const results: Array<T> = [];\n const outputs: Array<T | undefined> = [];\n const errorIndices: Array<number> = [];\n const resultIndices: Array<number> = [];\n _.forEach(batchResults, (res, index) => {\n const {error, output} = res;\n outputs.push(output);\n if (error) {\n innerErrors.push(error);\n errorIndices.push(index);\n } else {\n results.push(output!);\n resultIndices.push(index);\n }\n });\n\n if (innerErrors.length) {\n dstError.inner_errors = dstError.inner_errors ?? [];\n dstError.inner_errors.push(...innerErrors);\n }\n\n const error = !innerErrors.length ? undefined : dstError;\n return {error: error as UIBatchError, results, outputs, errorIndices, resultIndices};\n}\n\nexport function getBatchErrorIndices<T>(results: Array<BatchResultsItem<T>>) {\n return _.reduce(\n results,\n (acc, {error}, index) => {\n if (error) {\n acc.push(index);\n }\n return acc;\n },\n [] as Array<number>,\n );\n}\n\ninterface CommonWrapApiOptions<T> {\n toasterName: string;\n successContent?: React.ReactNode | ((res: T) => React.ReactNode);\n skipSuccessToast?: boolean;\n errorContent?: React.ReactNode | ((e: YTError) => React.ReactNode);\n skipErrorToast?: boolean;\n successTitle?: string;\n timeout?: number;\n autoHide?: boolean;\n}\n\ntype BatchWrapApiOption =\n | {isBatch?: false; errorTitle?: string}\n | {isBatch: true; errorTitle: string};\n\ntype WrapApiOptions<T> = CommonWrapApiOptions<T> & BatchWrapApiOption;\n\nconst toaster = new Toaster();\n\nexport function wrapBatchPromise<T>(p: Promise<T>, errorTitle: string): Promise<T> {\n return p.then((res) => {\n const error = getBatchError(res as any, errorTitle);\n if (error) {\n throw error;\n }\n\n return res;\n });\n}\n\nexport function wrapApiPromiseByToaster<T>(p: Promise<T>, options: WrapApiOptions<T>): Promise<T> {\n const {errorContent, successContent} = options;\n return p\n .then((res) => {\n if (options.isBatch) {\n const error = getBatchError(\n res as any,\n options.errorTitle || 'Missing batch error title',\n );\n if (error) {\n throw error;\n }\n }\n\n if (!options.skipSuccessToast) {\n toaster.add({\n name: options.toasterName,\n type: 'success',\n title: options.successTitle || 'Success',\n content:\n 'function' === typeof successContent ? successContent(res) : successContent,\n autoHiding: options.autoHide === false ? false : options.timeout ?? 10000,\n });\n }\n return res;\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n return Promise.reject(error);\n }\n\n const data = error?.response?.data || error;\n const {code, message} = data;\n\n if (!options.skipErrorToast && !isCancelled(error)) {\n toaster.add({\n name: options.toasterName,\n type: 'error',\n title: options.errorTitle || 'Failure',\n content:\n 'function' === typeof errorContent\n ? errorContent(error)\n : errorContent || (\n <span>\n [code {code}] {message}\n </span>\n ),\n actions: [{label: ' Details', onClick: () => showErrorPopup(data)}],\n autoHiding: false,\n });\n }\n return Promise.reject(error);\n });\n}\n\nexport function calcProgressProps(\n usage?: number,\n limit?: number,\n format: 'Number' | 'Bytes' = 'Number',\n themeThresholds: ThemeThreshold[] = defaultThemeThresholds,\n): ProgressProps {\n const value = computeProgress(usage, limit);\n return {\n value,\n theme: getProgressTheme(value, themeThresholds),\n text: `${formatNumber(usage, format)} / ${formatNumber(limit, format)}`,\n };\n}\n\nexport function formatNumber(value?: number, format?: 'Number' | 'Bytes'): string {\n return format === 'Bytes' ? hammer.format['Bytes'](value) : hammer.format['Number'](value);\n}\n\nexport function showToasterError(name: string, error: any) {\n const data = error?.response?.data || error;\n const {code, message} = data;\n\n toaster.add({\n name,\n type: 'error',\n title: `${name} failure`,\n content: (\n <span>\n [code {code}] {message}\n </span>\n ),\n actions: [{label: ' view', onClick: () => showErrorPopup(data)}],\n });\n return Promise.reject(error);\n}\n\nexport function unescapeSlashX(path: string) {\n let decoded = '';\n\n for (let i = 0, len = path.length; i < len; i++) {\n const currentChar = path.charAt(i);\n\n if (currentChar === '\\\\') {\n const nextChar = path.charAt((i += 1));\n\n if (nextChar === 'x') {\n // TODO check that next two characters are hexademical and end of string is not reached\n const hexEscapeSequence = path.charAt((i += 1)) + path.charAt((i += 1));\n\n decoded += String.fromCharCode(parseInt(hexEscapeSequence, 16));\n } else {\n decoded += nextChar;\n }\n } else {\n decoded += currentChar;\n }\n }\n\n return decoded;\n}\n\nexport function calculateLoadingStatus(loading: boolean, loaded: boolean, error: any) {\n if (loading) {\n return LOADING_STATUS.LOADING;\n }\n\n if (error) {\n return LOADING_STATUS.ERROR;\n }\n\n if (loaded) {\n return LOADING_STATUS.LOADED;\n }\n\n return LOADING_STATUS.UNINITIALIZED;\n}\n\nexport function isFinalLoadingStatus(status: string) {\n return status === LOADING_STATUS.LOADED || status === LOADING_STATUS.ERROR;\n}\n\nexport function delayed<T>(callBack: () => Promise<T>, timeout: number): Promise<T> {\n return new Promise((res, rej) => {\n setTimeout(async () => {\n try {\n res(await callBack());\n } catch (e) {\n rej(e);\n }\n }, timeout);\n });\n}\n\nexport function makeLink(url: string, text: string) {\n return !url ? undefined : (\n <Link href={url} target={'_blank'}>\n {text}\n </Link>\n );\n}\n\nexport function showErrorPopup(\n error: YTError | AxiosError,\n options: Omit<ErrorInfo, 'error'> = {},\n) {\n (window as any).store.dispatch(showErrorModal(error, options));\n}\n\nexport function toggleBooleanInPlace<T, K extends TypedKeys<T, boolean>>(key: K, obj: T) {\n const tmp: any = obj;\n if (tmp[key]) {\n delete tmp[key];\n } else {\n tmp[key] = true;\n }\n return obj;\n}\n\nexport function moveArrayElement<T>(arr: Array<T>, oldIndex: number, newIndex: number): [] | [T] {\n if (oldIndex < 0 || oldIndex >= arr.length || newIndex < 0 || newIndex >= arr.length) {\n return [];\n }\n\n const [item] = arr.splice(oldIndex, 1);\n arr.splice(newIndex, 0, item);\n\n return [item];\n}\n\nexport function nanToUndefined(value: any) {\n return isNaN(value) ? undefined : value;\n}\n\ntype Tree<T> = T & {\n children?: Array<Tree<T>>;\n};\n\ninterface VisitTreeItemsOptions<T> {\n handledSet: Set<unknown>;\n isNeedToSkipChildren?: (item: T) => boolean;\n}\n\nexport function visitTreeItems<T>(\n treeItem: Tree<T> | undefined,\n visitorFn: (item: T) => void,\n options?: Partial<VisitTreeItemsOptions<T>>,\n) {\n const opts = {\n ...options,\n handledSet: options?.handledSet || new Set(),\n };\n\n return visitTreeItemsImpl(treeItem, visitorFn, opts);\n}\n\nfunction visitTreeItemsImpl<T>(\n treeItem: Tree<T> | undefined,\n visitorFn: (item: T) => void,\n options: VisitTreeItemsOptions<T>,\n) {\n const {handledSet, isNeedToSkipChildren} = options;\n\n if (!treeItem || handledSet.has(treeItem)) {\n return;\n }\n\n handledSet.add(treeItem);\n visitorFn(treeItem);\n\n if (isNeedToSkipChildren && isNeedToSkipChildren(treeItem)) {\n return;\n }\n\n _.forEach(treeItem.children, (child) => visitTreeItemsImpl(child, visitorFn, options));\n}\n\nexport function openInNewTab(href: string) {\n // Safari specific hack to open new tab (not window)\n Object.assign(document.createElement('a'), {\n target: '_blank',\n href,\n }).click();\n}\n\nconst previousProps: Record<string, any> = {};\n\nexport function showChangedProps(key: string, props: object, verbose?: boolean) {\n const prevProps = previousProps[key];\n if (prevProps === undefined) {\n console.log(key, Date.now(), Object.keys(props));\n } else {\n const changed: Array<string> = [];\n _.forEach(props, (v, k) => {\n if (v !== prevProps[k]) {\n changed.push(k);\n if (verbose) {\n console.log(key, k, {prev: prevProps[k], v});\n }\n }\n });\n console.log(key, Date.now(), changed);\n }\n previousProps[key] = props;\n}\n\nexport function updateIfChanged<T, K extends keyof T>(\n obj: T,\n key: K,\n value: T[K],\n isEqual?: (l: T[K], r: T[K]) => boolean,\n) {\n if (isEqual ? !isEqual(obj[key], value) : obj[key] !== value) {\n obj[key] = value;\n }\n}\n"],"mappings":"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"}
@@ -34,7 +34,7 @@
34
34
  "css/934.adfa96ce.chunk.css.map": "css/934.adfa96ce.chunk.css.map",
35
35
  "css/943.d936073c.chunk.css": "css/943.d936073c.chunk.css",
36
36
  "css/943.d936073c.chunk.css.map": "css/943.d936073c.chunk.css.map",
37
- "css/main.f7818774.css.map": "css/main.f7818774.css.map",
37
+ "css/main.4c657a42.css.map": "css/main.4c657a42.css.map",
38
38
  "editor.afbd84bf.worker.js": "editor.afbd84bf.worker.js",
39
39
  "editor.afbd84bf.worker.js.LICENSE.txt": "editor.afbd84bf.worker.js.LICENSE.txt",
40
40
  "editor.afbd84bf.worker.js.map": "editor.afbd84bf.worker.js.map",
@@ -44,10 +44,10 @@
44
44
  "js": [
45
45
  "js/runtime.03ec9822.js",
46
46
  "js/vendors.3a95f920.js",
47
- "js/main.052ff0c9.js"
47
+ "js/main.38e77012.js"
48
48
  ],
49
49
  "css": [
50
- "css/main.f7818774.css"
50
+ "css/main.4c657a42.css"
51
51
  ]
52
52
  }
53
53
  }
@@ -93,8 +93,8 @@
93
93
  "js/955.e1c8cf19.chunk.js": "js/955.e1c8cf19.chunk.js",
94
94
  "js/955.e1c8cf19.chunk.js.LICENSE.txt": "js/955.e1c8cf19.chunk.js.LICENSE.txt",
95
95
  "js/955.e1c8cf19.chunk.js.map": "js/955.e1c8cf19.chunk.js.map",
96
- "js/main.052ff0c9.js.LICENSE.txt": "js/main.052ff0c9.js.LICENSE.txt",
97
- "js/main.052ff0c9.js.map": "js/main.052ff0c9.js.map",
96
+ "js/main.38e77012.js.LICENSE.txt": "js/main.38e77012.js.LICENSE.txt",
97
+ "js/main.38e77012.js.map": "js/main.38e77012.js.map",
98
98
  "js/runtime.03ec9822.js.map": "js/runtime.03ec9822.js.map",
99
99
  "js/vendors.3a95f920.js.LICENSE.txt": "js/vendors.3a95f920.js.LICENSE.txt",
100
100
  "js/vendors.3a95f920.js.map": "js/vendors.3a95f920.js.map",
@@ -103,8 +103,8 @@
103
103
  "json.5239aa2e.worker.js": "json.5239aa2e.worker.js",
104
104
  "json.5239aa2e.worker.js.LICENSE.txt": "json.5239aa2e.worker.js.LICENSE.txt",
105
105
  "json.5239aa2e.worker.js.map": "json.5239aa2e.worker.js.map",
106
- "main.css": "css/main.f7818774.css",
107
- "main.js": "js/main.052ff0c9.js",
106
+ "main.css": "css/main.4c657a42.css",
107
+ "main.js": "js/main.38e77012.js",
108
108
  "runtime.js": "js/runtime.03ec9822.js",
109
109
  "vendors.js": "js/vendors.3a95f920.js",
110
110
  "vis-network.js": "js/vis-network.b367d390.chunk.js"