@ytsaurus/ui 1.14.2 → 1.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/build/cjs/shared/constants/yt-api-id.d.ts +139 -0
  2. package/build/cjs/shared/constants/yt-api-id.js +148 -0
  3. package/build/cjs/shared/constants/yt-api-id.js.map +1 -0
  4. package/build/cjs/shared/utils/check-permission.d.ts +1 -14
  5. package/build/cjs/shared/utils/check-permission.js +6 -10
  6. package/build/cjs/shared/utils/check-permission.js.map +1 -1
  7. package/build/cjs/ui/containers/SettingsPanel/settings-description.js +1 -1
  8. package/build/cjs/ui/containers/SettingsPanel/settings-description.js.map +1 -1
  9. package/build/cjs/ui/rum/rum-wrap-api.d.ts +3 -141
  10. package/build/cjs/ui/rum/rum-wrap-api.js +12 -145
  11. package/build/cjs/ui/rum/rum-wrap-api.js.map +1 -1
  12. package/build/cjs/ui/store/actions/cluster-params.js +22 -15
  13. package/build/cjs/ui/store/actions/cluster-params.js.map +1 -1
  14. package/build/cjs/ui/store/actions/system/masters.js +7 -3
  15. package/build/cjs/ui/store/actions/system/masters.js.map +1 -1
  16. package/build/cjs/ui/store/selectors/global/index.d.ts +1 -1
  17. package/build/cjs/ui/store/selectors/global/index.js +4 -4
  18. package/build/cjs/ui/store/selectors/global/index.js.map +1 -1
  19. package/build/esm/shared/constants/yt-api-id.d.ts +139 -0
  20. package/build/esm/shared/constants/yt-api-id.js +141 -0
  21. package/build/esm/shared/constants/yt-api-id.js.map +1 -0
  22. package/build/esm/shared/utils/check-permission.d.ts +1 -14
  23. package/build/esm/shared/utils/check-permission.js +8 -11
  24. package/build/esm/shared/utils/check-permission.js.map +1 -1
  25. package/build/esm/ui/containers/SettingsPanel/settings-description.js +2 -2
  26. package/build/esm/ui/containers/SettingsPanel/settings-description.js.map +1 -1
  27. package/build/esm/ui/rum/rum-wrap-api.d.ts +3 -141
  28. package/build/esm/ui/rum/rum-wrap-api.js +3 -141
  29. package/build/esm/ui/rum/rum-wrap-api.js.map +1 -1
  30. package/build/esm/ui/store/actions/cluster-params.js +24 -17
  31. package/build/esm/ui/store/actions/cluster-params.js.map +1 -1
  32. package/build/esm/ui/store/actions/system/masters.js +7 -3
  33. package/build/esm/ui/store/actions/system/masters.js.map +1 -1
  34. package/build/esm/ui/store/selectors/global/index.d.ts +1 -1
  35. package/build/esm/ui/store/selectors/global/index.js +3 -3
  36. package/build/esm/ui/store/selectors/global/index.js.map +1 -1
  37. package/dist/public/build/assets-manifest.json +4 -4
  38. package/dist/public/build/js/main.b8adf234.js +3 -0
  39. package/dist/public/build/js/{main.8e777909.js.map → main.b8adf234.js.map} +1 -1
  40. package/dist/public/build/manifest.json +2 -2
  41. package/package.json +4 -4
  42. package/dist/public/build/js/main.8e777909.js +0 -3
  43. /package/dist/public/build/js/{main.8e777909.js.LICENSE.txt → main.b8adf234.js.LICENSE.txt} +0 -0
@@ -0,0 +1,139 @@
1
+ export declare enum YTApiId {
2
+ ui_clusterInfo = 0,
3
+ ui_loadColumnPreset = 1,
4
+ clusterParams = 2,
5
+ clusterParamsIsDeveloper = 3,
6
+ checkPermissions = 4,
7
+ getPoolTree = 5,
8
+ getPoolTrees = 6,
9
+ getPoolDefaultPoolTreeName = 7,
10
+ getPoolTreesPath = 8,
11
+ listPoolNames = 9,
12
+ getUsableBundles = 10,
13
+ listAccounts = 11,
14
+ listBundles = 12,
15
+ listGroups = 13,
16
+ listUsableAccounts = 14,
17
+ listUsers = 15,
18
+ listUsersUM = 16,
19
+ openAttributesModal = 17,
20
+ pathEditorLoadSuggestions = 18,
21
+ updateAttributes = 19,
22
+ updateNodeAttributes = 20,
23
+ accountsData = 21,
24
+ accountsEditData = 22,
25
+ attributesEditorGetAttrs = 23,
26
+ attributesEditorMerge = 24,
27
+ attributesEditorSet = 25,
28
+ componentsClusterNodes = 26,
29
+ componentGetRpcProxies = 27,
30
+ componentsRpcProxies = 28,
31
+ componentsShards = 29,
32
+ componentsUpdateNodeData = 30,
33
+ groupsData = 31,
34
+ groupsEditData = 32,
35
+ groupsListAll = 33,
36
+ dynTableCheckPerm = 34,
37
+ dynTableSelectRows = 35,
38
+ dynTableSelectRowsPreload = 36,
39
+ tableReadPreload = 37,
40
+ tableRead = 38,
41
+ navigationAttributes = 39,
42
+ navigationCheckPermissions = 40,
43
+ navigationCopy = 41,
44
+ navigationDelete = 42,
45
+ navigationDynTableState = 43,
46
+ navigationGetAnnotation = 44,
47
+ navigationGetDocument = 45,
48
+ navigationGetPath = 46,
49
+ navigationGetPathInfo = 47,
50
+ navigationGetTabletState = 48,
51
+ navigationIsStaticTable = 49,
52
+ navigationListNodes = 50,
53
+ navigationListTransactions = 51,
54
+ navigationLocks = 52,
55
+ navigationTransactions = 53,
56
+ navigationMove = 54,
57
+ navigationMoveToTrash = 55,
58
+ navigationMoveToTrashRestorePath = 56,
59
+ navigationResourceUsage = 57,
60
+ navigationRestorePath = 58,
61
+ navigationRTReplicas = 59,
62
+ navigationTableSortLoadColumns = 60,
63
+ navigationTabletErrors = 61,
64
+ navigationTabletErrorsCountDynTable = 62,
65
+ navigationTabletErrorsCountReplicatedTable = 63,
66
+ navigationTableMountConfig = 64,
67
+ navigationTypeDynamic = 65,
68
+ navigationUpdateView = 66,
69
+ navigationUserAttributeKeys = 67,
70
+ nodeAttributes = 68,
71
+ nodeMemoryUsage = 69,
72
+ nodeUnrecognizedOptions = 70,
73
+ schedulingData = 71,
74
+ schedulingEditPool = 72,
75
+ listOperations = 73,
76
+ operationGetJobs = 74,
77
+ operationIntermediateResourceUsage = 75,
78
+ operationIsEphemeral = 76,
79
+ operationsSchedulerInstances = 77,
80
+ listJobs100 = 78,
81
+ resourcePlannerPoolDetails = 79,
82
+ schedulingGetAttrsBeforeEdit = 80,
83
+ schedulingLoadOperations = 81,
84
+ schedulingLoadOperationsPerPool = 82,
85
+ schedulingLoadTree = 83,
86
+ schedulingTransferPoolQuota = 84,
87
+ schedulingPoolFullPath = 85,
88
+ schedulingLoadPoolsAll = 86,
89
+ schedulingLoadPoolsPerPool = 87,
90
+ schedulingLoadChildrenPerPool = 88,
91
+ schedulingLoadCypressDataPerPool = 89,
92
+ schedulingFilterAttributes = 90,
93
+ systemCAInstances = 91,
94
+ systemCAStates = 92,
95
+ systemChunks = 93,
96
+ systemMasters = 94,
97
+ systemMastersConfig = 95,
98
+ systemMastersConfigDiscoveryServer = 96,
99
+ systemNodes = 97,
100
+ systemProxies = 98,
101
+ systemResources = 99,
102
+ systemRpcProxies = 100,
103
+ systemSchedulers = 101,
104
+ systemSchedulersState = 102,
105
+ tabletAttribute = 103,
106
+ tabletCellAttributes = 104,
107
+ tabletPartitions = 105,
108
+ tabletStores = 106,
109
+ tabletStoresByIds = 107,
110
+ tabletTableAttributes = 108,
111
+ tabletCellBundles = 109,
112
+ tabletCellBundlesEditData = 110,
113
+ tabletCellBundlesInstancesDetails = 111,
114
+ tabletCellBundlesSetAttrs = 112,
115
+ tabletCellBundlesWithAbc = 113,
116
+ chaosCellBundles = 114,
117
+ chaosCellBundlesEditData = 115,
118
+ chaosCellBundlesSetAttrs = 116,
119
+ usersData = 117,
120
+ usersEditData = 118,
121
+ usersSaveData = 119,
122
+ queueStatus = 120,
123
+ queuePartitions = 121,
124
+ queueConsumerStatus = 122,
125
+ queueConsumerPartitions = 123,
126
+ bundleControllerZones = 124,
127
+ tabletBundleControllerState = 125,
128
+ tabletBundlesCheckWrite = 126,
129
+ listQueries = 127,
130
+ getQuery = 128,
131
+ startQuery = 129,
132
+ abortQuery = 130,
133
+ readQueryResults = 131,
134
+ getQueryResults = 132,
135
+ alterQuery = 133,
136
+ addMaintenance = 134,
137
+ removeMaintenance = 135,
138
+ maintenanceRequests = 136
139
+ }
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.YTApiId = void 0;
4
+ var YTApiId;
5
+ (function (YTApiId) {
6
+ // Names of ids for node-controllers should be started with 'ui_'-prefix
7
+ YTApiId[YTApiId["ui_clusterInfo"] = 0] = "ui_clusterInfo";
8
+ YTApiId[YTApiId["ui_loadColumnPreset"] = 1] = "ui_loadColumnPreset";
9
+ // Some ids without specific page
10
+ YTApiId[YTApiId["clusterParams"] = 2] = "clusterParams";
11
+ YTApiId[YTApiId["clusterParamsIsDeveloper"] = 3] = "clusterParamsIsDeveloper";
12
+ YTApiId[YTApiId["checkPermissions"] = 4] = "checkPermissions";
13
+ YTApiId[YTApiId["getPoolTree"] = 5] = "getPoolTree";
14
+ YTApiId[YTApiId["getPoolTrees"] = 6] = "getPoolTrees";
15
+ YTApiId[YTApiId["getPoolDefaultPoolTreeName"] = 7] = "getPoolDefaultPoolTreeName";
16
+ YTApiId[YTApiId["getPoolTreesPath"] = 8] = "getPoolTreesPath";
17
+ YTApiId[YTApiId["listPoolNames"] = 9] = "listPoolNames";
18
+ YTApiId[YTApiId["getUsableBundles"] = 10] = "getUsableBundles";
19
+ YTApiId[YTApiId["listAccounts"] = 11] = "listAccounts";
20
+ YTApiId[YTApiId["listBundles"] = 12] = "listBundles";
21
+ YTApiId[YTApiId["listGroups"] = 13] = "listGroups";
22
+ YTApiId[YTApiId["listUsableAccounts"] = 14] = "listUsableAccounts";
23
+ YTApiId[YTApiId["listUsers"] = 15] = "listUsers";
24
+ YTApiId[YTApiId["listUsersUM"] = 16] = "listUsersUM";
25
+ YTApiId[YTApiId["openAttributesModal"] = 17] = "openAttributesModal";
26
+ YTApiId[YTApiId["pathEditorLoadSuggestions"] = 18] = "pathEditorLoadSuggestions";
27
+ YTApiId[YTApiId["updateAttributes"] = 19] = "updateAttributes";
28
+ YTApiId[YTApiId["updateNodeAttributes"] = 20] = "updateNodeAttributes";
29
+ // Page-specific requests
30
+ YTApiId[YTApiId["accountsData"] = 21] = "accountsData";
31
+ YTApiId[YTApiId["accountsEditData"] = 22] = "accountsEditData";
32
+ YTApiId[YTApiId["attributesEditorGetAttrs"] = 23] = "attributesEditorGetAttrs";
33
+ YTApiId[YTApiId["attributesEditorMerge"] = 24] = "attributesEditorMerge";
34
+ YTApiId[YTApiId["attributesEditorSet"] = 25] = "attributesEditorSet";
35
+ YTApiId[YTApiId["componentsClusterNodes"] = 26] = "componentsClusterNodes";
36
+ YTApiId[YTApiId["componentGetRpcProxies"] = 27] = "componentGetRpcProxies";
37
+ YTApiId[YTApiId["componentsRpcProxies"] = 28] = "componentsRpcProxies";
38
+ YTApiId[YTApiId["componentsShards"] = 29] = "componentsShards";
39
+ YTApiId[YTApiId["componentsUpdateNodeData"] = 30] = "componentsUpdateNodeData";
40
+ YTApiId[YTApiId["groupsData"] = 31] = "groupsData";
41
+ YTApiId[YTApiId["groupsEditData"] = 32] = "groupsEditData";
42
+ YTApiId[YTApiId["groupsListAll"] = 33] = "groupsListAll";
43
+ // dynamic tables
44
+ YTApiId[YTApiId["dynTableCheckPerm"] = 34] = "dynTableCheckPerm";
45
+ YTApiId[YTApiId["dynTableSelectRows"] = 35] = "dynTableSelectRows";
46
+ YTApiId[YTApiId["dynTableSelectRowsPreload"] = 36] = "dynTableSelectRowsPreload";
47
+ // static tables
48
+ YTApiId[YTApiId["tableReadPreload"] = 37] = "tableReadPreload";
49
+ YTApiId[YTApiId["tableRead"] = 38] = "tableRead";
50
+ YTApiId[YTApiId["navigationAttributes"] = 39] = "navigationAttributes";
51
+ YTApiId[YTApiId["navigationCheckPermissions"] = 40] = "navigationCheckPermissions";
52
+ YTApiId[YTApiId["navigationCopy"] = 41] = "navigationCopy";
53
+ YTApiId[YTApiId["navigationDelete"] = 42] = "navigationDelete";
54
+ YTApiId[YTApiId["navigationDynTableState"] = 43] = "navigationDynTableState";
55
+ YTApiId[YTApiId["navigationGetAnnotation"] = 44] = "navigationGetAnnotation";
56
+ YTApiId[YTApiId["navigationGetDocument"] = 45] = "navigationGetDocument";
57
+ YTApiId[YTApiId["navigationGetPath"] = 46] = "navigationGetPath";
58
+ YTApiId[YTApiId["navigationGetPathInfo"] = 47] = "navigationGetPathInfo";
59
+ YTApiId[YTApiId["navigationGetTabletState"] = 48] = "navigationGetTabletState";
60
+ YTApiId[YTApiId["navigationIsStaticTable"] = 49] = "navigationIsStaticTable";
61
+ YTApiId[YTApiId["navigationListNodes"] = 50] = "navigationListNodes";
62
+ YTApiId[YTApiId["navigationListTransactions"] = 51] = "navigationListTransactions";
63
+ YTApiId[YTApiId["navigationLocks"] = 52] = "navigationLocks";
64
+ YTApiId[YTApiId["navigationTransactions"] = 53] = "navigationTransactions";
65
+ YTApiId[YTApiId["navigationMove"] = 54] = "navigationMove";
66
+ YTApiId[YTApiId["navigationMoveToTrash"] = 55] = "navigationMoveToTrash";
67
+ YTApiId[YTApiId["navigationMoveToTrashRestorePath"] = 56] = "navigationMoveToTrashRestorePath";
68
+ YTApiId[YTApiId["navigationResourceUsage"] = 57] = "navigationResourceUsage";
69
+ YTApiId[YTApiId["navigationRestorePath"] = 58] = "navigationRestorePath";
70
+ YTApiId[YTApiId["navigationRTReplicas"] = 59] = "navigationRTReplicas";
71
+ YTApiId[YTApiId["navigationTableSortLoadColumns"] = 60] = "navigationTableSortLoadColumns";
72
+ YTApiId[YTApiId["navigationTabletErrors"] = 61] = "navigationTabletErrors";
73
+ YTApiId[YTApiId["navigationTabletErrorsCountDynTable"] = 62] = "navigationTabletErrorsCountDynTable";
74
+ YTApiId[YTApiId["navigationTabletErrorsCountReplicatedTable"] = 63] = "navigationTabletErrorsCountReplicatedTable";
75
+ YTApiId[YTApiId["navigationTableMountConfig"] = 64] = "navigationTableMountConfig";
76
+ YTApiId[YTApiId["navigationTypeDynamic"] = 65] = "navigationTypeDynamic";
77
+ YTApiId[YTApiId["navigationUpdateView"] = 66] = "navigationUpdateView";
78
+ YTApiId[YTApiId["navigationUserAttributeKeys"] = 67] = "navigationUserAttributeKeys";
79
+ YTApiId[YTApiId["nodeAttributes"] = 68] = "nodeAttributes";
80
+ YTApiId[YTApiId["nodeMemoryUsage"] = 69] = "nodeMemoryUsage";
81
+ YTApiId[YTApiId["nodeUnrecognizedOptions"] = 70] = "nodeUnrecognizedOptions";
82
+ YTApiId[YTApiId["schedulingData"] = 71] = "schedulingData";
83
+ YTApiId[YTApiId["schedulingEditPool"] = 72] = "schedulingEditPool";
84
+ YTApiId[YTApiId["listOperations"] = 73] = "listOperations";
85
+ YTApiId[YTApiId["operationGetJobs"] = 74] = "operationGetJobs";
86
+ YTApiId[YTApiId["operationIntermediateResourceUsage"] = 75] = "operationIntermediateResourceUsage";
87
+ YTApiId[YTApiId["operationIsEphemeral"] = 76] = "operationIsEphemeral";
88
+ YTApiId[YTApiId["operationsSchedulerInstances"] = 77] = "operationsSchedulerInstances";
89
+ YTApiId[YTApiId["listJobs100"] = 78] = "listJobs100";
90
+ YTApiId[YTApiId["resourcePlannerPoolDetails"] = 79] = "resourcePlannerPoolDetails";
91
+ YTApiId[YTApiId["schedulingGetAttrsBeforeEdit"] = 80] = "schedulingGetAttrsBeforeEdit";
92
+ YTApiId[YTApiId["schedulingLoadOperations"] = 81] = "schedulingLoadOperations";
93
+ YTApiId[YTApiId["schedulingLoadOperationsPerPool"] = 82] = "schedulingLoadOperationsPerPool";
94
+ YTApiId[YTApiId["schedulingLoadTree"] = 83] = "schedulingLoadTree";
95
+ YTApiId[YTApiId["schedulingTransferPoolQuota"] = 84] = "schedulingTransferPoolQuota";
96
+ YTApiId[YTApiId["schedulingPoolFullPath"] = 85] = "schedulingPoolFullPath";
97
+ YTApiId[YTApiId["schedulingLoadPoolsAll"] = 86] = "schedulingLoadPoolsAll";
98
+ YTApiId[YTApiId["schedulingLoadPoolsPerPool"] = 87] = "schedulingLoadPoolsPerPool";
99
+ YTApiId[YTApiId["schedulingLoadChildrenPerPool"] = 88] = "schedulingLoadChildrenPerPool";
100
+ YTApiId[YTApiId["schedulingLoadCypressDataPerPool"] = 89] = "schedulingLoadCypressDataPerPool";
101
+ YTApiId[YTApiId["schedulingFilterAttributes"] = 90] = "schedulingFilterAttributes";
102
+ YTApiId[YTApiId["systemCAInstances"] = 91] = "systemCAInstances";
103
+ YTApiId[YTApiId["systemCAStates"] = 92] = "systemCAStates";
104
+ YTApiId[YTApiId["systemChunks"] = 93] = "systemChunks";
105
+ YTApiId[YTApiId["systemMasters"] = 94] = "systemMasters";
106
+ YTApiId[YTApiId["systemMastersConfig"] = 95] = "systemMastersConfig";
107
+ YTApiId[YTApiId["systemMastersConfigDiscoveryServer"] = 96] = "systemMastersConfigDiscoveryServer";
108
+ YTApiId[YTApiId["systemNodes"] = 97] = "systemNodes";
109
+ YTApiId[YTApiId["systemProxies"] = 98] = "systemProxies";
110
+ YTApiId[YTApiId["systemResources"] = 99] = "systemResources";
111
+ YTApiId[YTApiId["systemRpcProxies"] = 100] = "systemRpcProxies";
112
+ YTApiId[YTApiId["systemSchedulers"] = 101] = "systemSchedulers";
113
+ YTApiId[YTApiId["systemSchedulersState"] = 102] = "systemSchedulersState";
114
+ YTApiId[YTApiId["tabletAttribute"] = 103] = "tabletAttribute";
115
+ YTApiId[YTApiId["tabletCellAttributes"] = 104] = "tabletCellAttributes";
116
+ YTApiId[YTApiId["tabletPartitions"] = 105] = "tabletPartitions";
117
+ YTApiId[YTApiId["tabletStores"] = 106] = "tabletStores";
118
+ YTApiId[YTApiId["tabletStoresByIds"] = 107] = "tabletStoresByIds";
119
+ YTApiId[YTApiId["tabletTableAttributes"] = 108] = "tabletTableAttributes";
120
+ YTApiId[YTApiId["tabletCellBundles"] = 109] = "tabletCellBundles";
121
+ YTApiId[YTApiId["tabletCellBundlesEditData"] = 110] = "tabletCellBundlesEditData";
122
+ YTApiId[YTApiId["tabletCellBundlesInstancesDetails"] = 111] = "tabletCellBundlesInstancesDetails";
123
+ YTApiId[YTApiId["tabletCellBundlesSetAttrs"] = 112] = "tabletCellBundlesSetAttrs";
124
+ YTApiId[YTApiId["tabletCellBundlesWithAbc"] = 113] = "tabletCellBundlesWithAbc";
125
+ YTApiId[YTApiId["chaosCellBundles"] = 114] = "chaosCellBundles";
126
+ YTApiId[YTApiId["chaosCellBundlesEditData"] = 115] = "chaosCellBundlesEditData";
127
+ YTApiId[YTApiId["chaosCellBundlesSetAttrs"] = 116] = "chaosCellBundlesSetAttrs";
128
+ YTApiId[YTApiId["usersData"] = 117] = "usersData";
129
+ YTApiId[YTApiId["usersEditData"] = 118] = "usersEditData";
130
+ YTApiId[YTApiId["usersSaveData"] = 119] = "usersSaveData";
131
+ YTApiId[YTApiId["queueStatus"] = 120] = "queueStatus";
132
+ YTApiId[YTApiId["queuePartitions"] = 121] = "queuePartitions";
133
+ YTApiId[YTApiId["queueConsumerStatus"] = 122] = "queueConsumerStatus";
134
+ YTApiId[YTApiId["queueConsumerPartitions"] = 123] = "queueConsumerPartitions";
135
+ YTApiId[YTApiId["bundleControllerZones"] = 124] = "bundleControllerZones";
136
+ YTApiId[YTApiId["tabletBundleControllerState"] = 125] = "tabletBundleControllerState";
137
+ YTApiId[YTApiId["tabletBundlesCheckWrite"] = 126] = "tabletBundlesCheckWrite";
138
+ YTApiId[YTApiId["listQueries"] = 127] = "listQueries";
139
+ YTApiId[YTApiId["getQuery"] = 128] = "getQuery";
140
+ YTApiId[YTApiId["startQuery"] = 129] = "startQuery";
141
+ YTApiId[YTApiId["abortQuery"] = 130] = "abortQuery";
142
+ YTApiId[YTApiId["readQueryResults"] = 131] = "readQueryResults";
143
+ YTApiId[YTApiId["getQueryResults"] = 132] = "getQueryResults";
144
+ YTApiId[YTApiId["alterQuery"] = 133] = "alterQuery";
145
+ YTApiId[YTApiId["addMaintenance"] = 134] = "addMaintenance";
146
+ YTApiId[YTApiId["removeMaintenance"] = 135] = "removeMaintenance";
147
+ YTApiId[YTApiId["maintenanceRequests"] = 136] = "maintenanceRequests";
148
+ })(YTApiId || (exports.YTApiId = YTApiId = {}));
@@ -0,0 +1 @@
1
+ {"version":3,"names":["YTApiId","exports"],"sources":["yt-api-id.ts"],"sourcesContent":["export enum YTApiId {\n // Names of ids for node-controllers should be started with 'ui_'-prefix\n ui_clusterInfo,\n ui_loadColumnPreset,\n\n // Some ids without specific page\n clusterParams,\n clusterParamsIsDeveloper,\n\n checkPermissions,\n getPoolTree,\n getPoolTrees,\n getPoolDefaultPoolTreeName,\n getPoolTreesPath,\n listPoolNames,\n getUsableBundles,\n listAccounts,\n listBundles,\n listGroups,\n listUsableAccounts,\n listUsers,\n listUsersUM,\n openAttributesModal,\n pathEditorLoadSuggestions,\n updateAttributes,\n updateNodeAttributes,\n\n // Page-specific requests\n accountsData,\n accountsEditData,\n\n attributesEditorGetAttrs,\n attributesEditorMerge,\n attributesEditorSet,\n\n componentsClusterNodes,\n componentGetRpcProxies,\n componentsRpcProxies,\n componentsShards,\n componentsUpdateNodeData,\n\n groupsData,\n groupsEditData,\n groupsListAll,\n\n // dynamic tables\n dynTableCheckPerm,\n dynTableSelectRows,\n dynTableSelectRowsPreload,\n\n // static tables\n tableReadPreload,\n tableRead,\n\n navigationAttributes,\n navigationCheckPermissions,\n navigationCopy,\n navigationDelete,\n navigationDynTableState,\n navigationGetAnnotation,\n navigationGetDocument,\n navigationGetPath,\n navigationGetPathInfo,\n navigationGetTabletState,\n navigationIsStaticTable,\n navigationListNodes,\n navigationListTransactions,\n navigationLocks,\n navigationTransactions,\n navigationMove,\n navigationMoveToTrash,\n navigationMoveToTrashRestorePath,\n navigationResourceUsage,\n navigationRestorePath,\n navigationRTReplicas,\n navigationTableSortLoadColumns,\n navigationTabletErrors,\n navigationTabletErrorsCountDynTable,\n navigationTabletErrorsCountReplicatedTable,\n navigationTableMountConfig,\n navigationTypeDynamic,\n navigationUpdateView,\n navigationUserAttributeKeys,\n\n nodeAttributes,\n nodeMemoryUsage,\n nodeUnrecognizedOptions,\n\n schedulingData,\n schedulingEditPool,\n\n listOperations,\n\n operationGetJobs,\n operationIntermediateResourceUsage,\n operationIsEphemeral,\n operationsSchedulerInstances,\n listJobs100,\n\n resourcePlannerPoolDetails,\n\n schedulingGetAttrsBeforeEdit,\n schedulingLoadOperations,\n schedulingLoadOperationsPerPool,\n schedulingLoadTree,\n schedulingTransferPoolQuota,\n schedulingPoolFullPath,\n schedulingLoadPoolsAll,\n schedulingLoadPoolsPerPool,\n schedulingLoadChildrenPerPool,\n schedulingLoadCypressDataPerPool,\n schedulingFilterAttributes,\n\n systemCAInstances,\n systemCAStates,\n systemChunks,\n systemMasters,\n systemMastersConfig,\n systemMastersConfigDiscoveryServer,\n systemNodes,\n systemProxies,\n systemResources,\n systemRpcProxies,\n systemSchedulers,\n systemSchedulersState,\n\n tabletAttribute,\n tabletCellAttributes,\n tabletPartitions,\n tabletStores,\n tabletStoresByIds,\n tabletTableAttributes,\n\n tabletCellBundles,\n tabletCellBundlesEditData,\n tabletCellBundlesInstancesDetails,\n tabletCellBundlesSetAttrs,\n tabletCellBundlesWithAbc,\n\n chaosCellBundles,\n chaosCellBundlesEditData,\n chaosCellBundlesSetAttrs,\n\n usersData,\n usersEditData,\n usersSaveData,\n\n queueStatus,\n queuePartitions,\n queueConsumerStatus,\n queueConsumerPartitions,\n\n bundleControllerZones,\n tabletBundleControllerState,\n tabletBundlesCheckWrite,\n listQueries,\n getQuery,\n startQuery,\n abortQuery,\n readQueryResults,\n getQueryResults,\n alterQuery,\n\n addMaintenance,\n removeMaintenance,\n maintenanceRequests,\n}\n"],"mappings":";;;;;;AAAA,IAAYA,OAAO,GAAAC,OAAA,CAAAD,OAAA,0BAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAA,OAAPA,OAAO;AAAA"}
@@ -1,18 +1,5 @@
1
- import { FIX_MY_TYPE } from '../../@types/types';
2
1
  import { BatchSubRequest, YTPermissionType } from '../yt-types';
3
- export declare function prepareCheckIsDeveloperRequests(login: string): {
4
- command: "check_permission_by_acl";
5
- parameters: {
6
- acl: {
7
- permissions: YTPermissionType[];
8
- subjects: string[];
9
- action: "allow";
10
- }[];
11
- user: string;
12
- permission: YTPermissionType;
13
- };
14
- }[];
15
- export declare function checkIsDeveloper(login: string, setup?: FIX_MY_TYPE): Promise<boolean>;
2
+ export declare function checkIsDeveloper(login: string, setup: unknown, ytApiId: string): Promise<boolean>;
16
3
  export type CheckPermissionItem = {
17
4
  user: string;
18
5
  path: string;
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeCheckPermissionBatchSubRequest = exports.checkIsDeveloper = exports.prepareCheckIsDeveloperRequests = void 0;
3
+ exports.makeCheckPermissionBatchSubRequest = exports.checkIsDeveloper = void 0;
4
+ const constants_1 = require("../constants");
4
5
  const yt = require('@ytsaurus/javascript-wrapper')();
5
- function prepareCheckIsDeveloperRequests(login) {
6
- const [first] = prepareCheckUserPermissionByAclRequests('admins', login, ['write']);
7
- return [first];
8
- }
9
- exports.prepareCheckIsDeveloperRequests = prepareCheckIsDeveloperRequests;
10
6
  function prepareCheckUserPermissionByAclRequests(groupName, user, permissionTypes) {
11
7
  return permissionTypes.map((permission) => {
12
8
  return {
@@ -25,17 +21,17 @@ function prepareCheckUserPermissionByAclRequests(groupName, user, permissionType
25
21
  };
26
22
  });
27
23
  }
28
- function checkUserPermissionByAcl(groupName, user, permissionTypes, setup = undefined) {
24
+ function checkUserPermissionByAcl(groupName, user, permissionTypes, setup = undefined, ytApiId) {
29
25
  // $ yt --proxy cluster_proxy execute check_permission_by_acl \
30
26
  // '{acl=[{permissions=[write]; subjects=[yt;admins]; action=allow}]; user=max42; permission=write}'
31
27
  const requests = prepareCheckUserPermissionByAclRequests(groupName, user, permissionTypes);
32
28
  return yt.v3.executeBatch({
33
- setup,
29
+ setup: Object.assign(Object.assign({}, setup), { requestHeaders: { [constants_1.YT_API_REQUEST_ID_HEADER]: ytApiId } }),
34
30
  parameters: { requests },
35
31
  });
36
32
  }
37
- function checkIsDeveloper(login, setup = undefined) {
38
- return checkUserPermissionByAcl('admins', login, ['write'], setup)
33
+ function checkIsDeveloper(login, setup, ytApiId) {
34
+ return checkUserPermissionByAcl('admins', login, ['write'], setup, ytApiId)
39
35
  .then((d) => {
40
36
  const { output } = d[0];
41
37
  return (output === null || output === void 0 ? void 0 : output.action) === 'allow';
@@ -1 +1 @@
1
- {"version":3,"names":["yt","require","prepareCheckIsDeveloperRequests","login","_prepareCheckUserPerm","prepareCheckUserPermissionByAclRequests","_prepareCheckUserPerm2","_slicedToArray","first","groupName","user","permissionTypes","map","permission","command","parameters","acl","permissions","subjects","action","checkUserPermissionByAcl","setup","arguments","length","undefined","requests","v3","executeBatch","checkIsDeveloper","then","d","output","makeCheckPermissionBatchSubRequest","_ref","path","transaction_id","vital","result","_objectSpread"],"sources":["check-permission.ts"],"sourcesContent":["import {FIX_MY_TYPE} from '../../@types/types';\nimport {BatchResultsItem, BatchSubRequest, YTPermissionType} from '../yt-types';\n\nconst yt = require('@ytsaurus/javascript-wrapper')();\n\nexport function prepareCheckIsDeveloperRequests(login: string) {\n const [first] = prepareCheckUserPermissionByAclRequests('admins', login, ['write']);\n return [first];\n}\n\nfunction prepareCheckUserPermissionByAclRequests(\n groupName: string,\n user: string,\n permissionTypes: Array<YTPermissionType>,\n) {\n return permissionTypes.map((permission) => {\n return {\n command: 'check_permission_by_acl' as const,\n parameters: {\n acl: [\n {\n permissions: [permission],\n subjects: [groupName],\n action: 'allow' as const,\n },\n ],\n user,\n permission,\n },\n };\n });\n}\n\nfunction checkUserPermissionByAcl(\n groupName: string,\n user: string,\n permissionTypes: Array<YTPermissionType>,\n setup: FIX_MY_TYPE = undefined,\n) {\n // $ yt --proxy cluster_proxy execute check_permission_by_acl \\\n // '{acl=[{permissions=[write]; subjects=[yt;admins]; action=allow}]; user=max42; permission=write}'\n const requests = prepareCheckUserPermissionByAclRequests(groupName, user, permissionTypes);\n\n return yt.v3.executeBatch({\n setup,\n parameters: {requests},\n }) as Promise<Array<BatchResultsItem<CheckPermissionItemResult>>>;\n}\n\nexport function checkIsDeveloper(login: string, setup: FIX_MY_TYPE = undefined) {\n return checkUserPermissionByAcl('admins', login, ['write'], setup)\n .then((d) => {\n const {output} = d[0];\n return output?.action === 'allow';\n })\n .catch(() => {\n return false;\n });\n}\n\nexport type CheckPermissionItem = {\n user: string;\n path: string;\n permission: YTPermissionType;\n transaction_id?: string;\n vital?: boolean;\n};\n\nexport type CheckPermissionItemResult = {\n action: 'allow' | 'deny';\n};\n\nexport function makeCheckPermissionBatchSubRequest({\n path,\n user,\n permission,\n transaction_id,\n vital,\n}: CheckPermissionItem): BatchSubRequest {\n const result: BatchSubRequest = {\n command: 'check_permission' as const,\n parameters: {\n path,\n user,\n permission,\n ...(transaction_id ? {transaction_id} : {}),\n ...(vital ? {vital} : {}),\n },\n };\n return result;\n}\n"],"mappings":";;;;;;;;;;;AAGA,IAAMA,EAAE,GAAGC,OAAO,CAAC,8BAA8B,CAAC,CAAC,CAAC;AAE7C,SAASC,+BAA+BA,CAACC,KAAa,EAAE;EAC3D,IAAAC,qBAAA,GAAgBC,uCAAuC,CAAC,QAAQ,EAAEF,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;IAAAG,sBAAA,OAAAC,uBAAA,EAAAH,qBAAA;IAA5EI,KAAK,GAAAF,sBAAA;EACZ,OAAO,CAACE,KAAK,CAAC;AAClB;AAEA,SAASH,uCAAuCA,CAC5CI,SAAiB,EACjBC,IAAY,EACZC,eAAwC,EAC1C;EACE,OAAOA,eAAe,CAACC,GAAG,CAAC,UAACC,UAAU,EAAK;IACvC,OAAO;MACHC,OAAO,EAAE,yBAAkC;MAC3CC,UAAU,EAAE;QACRC,GAAG,EAAE,CACD;UACIC,WAAW,EAAE,CAACJ,UAAU,CAAC;UACzBK,QAAQ,EAAE,CAACT,SAAS,CAAC;UACrBU,MAAM,EAAE;QACZ,CAAC,CACJ;QACDT,IAAI,EAAJA,IAAI;QACJG,UAAU,EAAVA;MACJ;IACJ,CAAC;EACL,CAAC,CAAC;AACN;AAEA,SAASO,wBAAwBA,CAC7BX,SAAiB,EACjBC,IAAY,EACZC,eAAwC,EAE1C;EAAA,IADEU,KAAkB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGE,SAAS;EAE9B;EACA;EACA,IAAMC,QAAQ,GAAGpB,uCAAuC,CAACI,SAAS,EAAEC,IAAI,EAAEC,eAAe,CAAC;EAE1F,OAAOX,EAAE,CAAC0B,EAAE,CAACC,YAAY,CAAC;IACtBN,KAAK,EAALA,KAAK;IACLN,UAAU,EAAE;MAACU,QAAQ,EAARA;IAAQ;EACzB,CAAC,CAAC;AACN;AAEO,SAASG,gBAAgBA,CAACzB,KAAa,EAAkC;EAAA,IAAhCkB,KAAkB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGE,SAAS;EAC1E,OAAOJ,wBAAwB,CAAC,QAAQ,EAAEjB,KAAK,EAAE,CAAC,OAAO,CAAC,EAAEkB,KAAK,CAAC,CAC7DQ,IAAI,CAAC,UAACC,CAAC,EAAK;IACT,IAAOC,MAAM,GAAID,CAAC,CAAC,CAAC,CAAC,CAAdC,MAAM;IACb,OAAO,CAAAA,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEZ,MAAM,MAAK,OAAO;EACrC,CAAC,CAAC,SACI,CAAC,YAAM;IACT,OAAO,KAAK;EAChB,CAAC,CAAC;AACV;AAcO,SAASa,kCAAkCA,CAAAC,IAAA,EAMT;EAAA,IALrCC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJxB,IAAI,GAAAuB,IAAA,CAAJvB,IAAI;IACJG,UAAU,GAAAoB,IAAA,CAAVpB,UAAU;IACVsB,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,KAAK,GAAAH,IAAA,CAALG,KAAK;EAEL,IAAMC,MAAuB,GAAG;IAC5BvB,OAAO,EAAE,kBAA2B;IACpCC,UAAU,MAAAuB,sBAAA,MAAAA,sBAAA;MACNJ,IAAI,EAAJA,IAAI;MACJxB,IAAI,EAAJA,IAAI;MACJG,UAAU,EAAVA;IAAU,GACNsB,cAAc,GAAG;MAACA,cAAc,EAAdA;IAAc,CAAC,GAAG,CAAC,CAAC,GACtCC,KAAK,GAAG;MAACA,KAAK,EAALA;IAAK,CAAC,GAAG,CAAC,CAAC;EAEhC,CAAC;EACD,OAAOC,MAAM;AACjB"}
1
+ {"version":3,"names":["_constants","require","_interopRequireDefault","obj","__esModule","default","yt","prepareCheckUserPermissionByAclRequests","groupName","user","permissionTypes","map","permission","command","parameters","acl","permissions","subjects","action","checkUserPermissionByAcl","setup","arguments","length","undefined","ytApiId","requests","v3","executeBatch","_objectSpread","requestHeaders","_defineProperty","YT_API_REQUEST_ID_HEADER","checkIsDeveloper","login","then","d","output","makeCheckPermissionBatchSubRequest","_ref","path","transaction_id","vital","result"],"sources":["check-permission.ts"],"sourcesContent":["import {YT_API_REQUEST_ID_HEADER} from '../constants';\nimport {FIX_MY_TYPE} from '../../@types/types';\nimport {BatchResultsItem, BatchSubRequest, YTPermissionType} from '../yt-types';\n\nconst yt = require('@ytsaurus/javascript-wrapper')();\n\nfunction prepareCheckUserPermissionByAclRequests(\n groupName: string,\n user: string,\n permissionTypes: Array<YTPermissionType>,\n) {\n return permissionTypes.map((permission) => {\n return {\n command: 'check_permission_by_acl' as const,\n parameters: {\n acl: [\n {\n permissions: [permission],\n subjects: [groupName],\n action: 'allow' as const,\n },\n ],\n user,\n permission,\n },\n };\n });\n}\n\nfunction checkUserPermissionByAcl(\n groupName: string,\n user: string,\n permissionTypes: Array<YTPermissionType>,\n setup: FIX_MY_TYPE = undefined,\n ytApiId: string,\n) {\n // $ yt --proxy cluster_proxy execute check_permission_by_acl \\\n // '{acl=[{permissions=[write]; subjects=[yt;admins]; action=allow}]; user=max42; permission=write}'\n const requests = prepareCheckUserPermissionByAclRequests(groupName, user, permissionTypes);\n\n return yt.v3.executeBatch({\n setup: {...setup, requestHeaders: {[YT_API_REQUEST_ID_HEADER]: ytApiId}},\n parameters: {requests},\n }) as Promise<Array<BatchResultsItem<CheckPermissionItemResult>>>;\n}\n\nexport function checkIsDeveloper(login: string, setup: unknown, ytApiId: string) {\n return checkUserPermissionByAcl('admins', login, ['write'], setup, ytApiId)\n .then((d) => {\n const {output} = d[0];\n return output?.action === 'allow';\n })\n .catch(() => {\n return false;\n });\n}\n\nexport type CheckPermissionItem = {\n user: string;\n path: string;\n permission: YTPermissionType;\n transaction_id?: string;\n vital?: boolean;\n};\n\nexport type CheckPermissionItemResult = {\n action: 'allow' | 'deny';\n};\n\nexport function makeCheckPermissionBatchSubRequest({\n path,\n user,\n permission,\n transaction_id,\n vital,\n}: CheckPermissionItem): BatchSubRequest {\n const result: BatchSubRequest = {\n command: 'check_permission' as const,\n parameters: {\n path,\n user,\n permission,\n ...(transaction_id ? {transaction_id} : {}),\n ...(vital ? {vital} : {}),\n },\n };\n return result;\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAqD,SAAAC,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAIrD,IAAMG,EAAE,GAAGL,OAAO,CAAC,8BAA8B,CAAC,CAAC,CAAC;AAEpD,SAASM,uCAAuCA,CAC5CC,SAAiB,EACjBC,IAAY,EACZC,eAAwC,EAC1C;EACE,OAAOA,eAAe,CAACC,GAAG,CAAC,UAACC,UAAU,EAAK;IACvC,OAAO;MACHC,OAAO,EAAE,yBAAkC;MAC3CC,UAAU,EAAE;QACRC,GAAG,EAAE,CACD;UACIC,WAAW,EAAE,CAACJ,UAAU,CAAC;UACzBK,QAAQ,EAAE,CAACT,SAAS,CAAC;UACrBU,MAAM,EAAE;QACZ,CAAC,CACJ;QACDT,IAAI,EAAJA,IAAI;QACJG,UAAU,EAAVA;MACJ;IACJ,CAAC;EACL,CAAC,CAAC;AACN;AAEA,SAASO,wBAAwBA,CAC7BX,SAAiB,EACjBC,IAAY,EACZC,eAAwC,EAG1C;EAAA,IAFEU,KAAkB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGE,SAAS;EAAA,IAC9BC,OAAe,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;EAEf;EACA;EACA,IAAME,QAAQ,GAAGlB,uCAAuC,CAACC,SAAS,EAAEC,IAAI,EAAEC,eAAe,CAAC;EAE1F,OAAOJ,EAAE,CAACoB,EAAE,CAACC,YAAY,CAAC;IACtBP,KAAK,MAAAQ,sBAAA,MAAAA,sBAAA,MAAMR,KAAK;MAAES,cAAc,MAAAC,wBAAA,MAAIC,mCAAwB,EAAGP,OAAO;IAAC,EAAC;IACxEV,UAAU,EAAE;MAACW,QAAQ,EAARA;IAAQ;EACzB,CAAC,CAAC;AACN;AAEO,SAASO,gBAAgBA,CAACC,KAAa,EAAEb,KAAc,EAAEI,OAAe,EAAE;EAC7E,OAAOL,wBAAwB,CAAC,QAAQ,EAAEc,KAAK,EAAE,CAAC,OAAO,CAAC,EAAEb,KAAK,EAAEI,OAAO,CAAC,CACtEU,IAAI,CAAC,UAACC,CAAC,EAAK;IACT,IAAOC,MAAM,GAAID,CAAC,CAAC,CAAC,CAAC,CAAdC,MAAM;IACb,OAAO,CAAAA,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAElB,MAAM,MAAK,OAAO;EACrC,CAAC,CAAC,SACI,CAAC,YAAM;IACT,OAAO,KAAK;EAChB,CAAC,CAAC;AACV;AAcO,SAASmB,kCAAkCA,CAAAC,IAAA,EAMT;EAAA,IALrCC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJ9B,IAAI,GAAA6B,IAAA,CAAJ7B,IAAI;IACJG,UAAU,GAAA0B,IAAA,CAAV1B,UAAU;IACV4B,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,KAAK,GAAAH,IAAA,CAALG,KAAK;EAEL,IAAMC,MAAuB,GAAG;IAC5B7B,OAAO,EAAE,kBAA2B;IACpCC,UAAU,MAAAc,sBAAA,MAAAA,sBAAA;MACNW,IAAI,EAAJA,IAAI;MACJ9B,IAAI,EAAJA,IAAI;MACJG,UAAU,EAAVA;IAAU,GACN4B,cAAc,GAAG;MAACA,cAAc,EAAdA;IAAc,CAAC,GAAG,CAAC,CAAC,GACtCC,KAAK,GAAG;MAACA,KAAK,EAALA;IAAK,CAAC,GAAG,CAAC,CAAC;EAEhC,CAAC;EACD,OAAOC,MAAM;AACjB"}
@@ -263,7 +263,7 @@ function makeItem(title, align, content) {
263
263
  };
264
264
  }
265
265
  function useSettingsDescription() {
266
- var isAdmin = (0, _reactRedux.useSelector)(_global.isDeveloperSettings) || true;
266
+ var isAdmin = (0, _reactRedux.useSelector)(_global.isDeveloperOrWatchMen) || true;
267
267
  var cluster = (0, _useCluster.useClusterFromLocation)();
268
268
  var login = (0, _reactRedux.useSelector)(_global.getCurrentUserName);
269
269
  var settings = useSettings(cluster, isAdmin);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactRedux","_compact2","_filter2","_forEach2","_map2","_reduce2","_immer","_UIFactory","_toolsIcon","_paletteIcon","_closeTagIcon","_dataIcon","_pageSystem","_masters","_pageOperations","_pageComponents","_pageNavigation","_shieldIcon","_tableIcon","_infoIcon","_useCluster","_index","_uiSettings","_ypath","_statistics","_settings","_slideoutMenu","_SettingsMenuItem","_SettingsMenuRadio","_SettingsMenuInput","_global","_table","_ytConfig","_Link","_Button","_jsxRuntime","obj","__esModule","default","oauthTokenUrl","uiSettings","StartPageSettingMemo","React","memo","StartPageSetting","wrapEscapeText","text","concat","useSettings","cluster","isAdmin","clusterNS","useSelector","getCurrentClusterNS","httpProxyVersion","getHttpProxyVersion","schedulerVersion","getGlobalSchedulerVersion","masterVersion","getGlobalMasterVersion","_compact","makePage","generalIcon","makeItem","_jsx","SettingsMenuItem","settingName","SettingName","GLOBAL","AUTO_REFRESH","settingNS","NAMESPACES","annotation","oneLine","MENU","RECENT_CLUSTER_FIRST","RECENT_PAGE_FIRST","paletteIcon","SettingsMenuRadio","THEME","items","value","A11Y","USE_SAFE_COLORS","convertValue","closeTagIcon","DEVELOPMENT","REGULAR_USER_UI","label","SettingsMenuInput","placeholder","description","QUERY_TRACKER","STAGE","YQL_AGENT_STAGE","dataIcon","YSON","FORMAT","SHOW_DECODED","annotationHighlight","BINARY_AS_HEX","ESCAPE_WHITESPACES","COMPACT","systemIcon","SYSTEM","MASTERS_HOST_TYPE","mastersRadioButtonItems","operationsIcon","OPERATIONS","STATISTICS_AGGREGATION_TYPE","AGGREGATOR_RADIO_ITEMS","navigationIcon","validator","navigationPathValidator","LOCAL","NAVIGATION_DEFAULT_PATH","chytAliasValidator","NAVIGATION","DEFAULT_CHYT_ALIAS","USE_SMART_SORT","GROUP_NODES","USE_SMART_FILTER","ENABLE_PATH_AUTO_CORRECTION","docsUrl","UIFactory","docsUrls","componentsIcon","COMPONENTS","ENABLE_SIDE_BAR","tableIcon","YQL_TYPES","ROWS_PER_TABLE_PAGE","String","Number","MAXIMUM_TABLE_STRING_SIZE","cellSizeRadioButtonItems","DEFAULT_TABLE_COLUMN_LIMIT","pageSizeRadioButtonItems","ENABLE_TABLE_SIMILARITY","TABLE_DISPLAY_RAW_STRINGS","shieldIcon","undefined","Link","url","target","children","Button","size","infoIcon","Boolean","YT","parameters","version","title","icon","sections","align","content","useSettingsDescription","isDeveloperSettings","useClusterFromLocation","login","getCurrentUserName","settings","externalSettings","getExternalSettings","res","useMemo","extPages","hashByTitle","produce","pages","_forEach","page","extPage","extSections","section","s","_section$items","push","apply","_toConsumableArray","splice","length","data","_reduce","acc","item","_useSelector","getRecentPagesInfo","all","pageItems","headerPages","_filter","header","_map","id","name","STARTING_PAGE","arguments","ypath","YPath","create","err","message","startsWith"],"sources":["settings-description.tsx"],"sourcesContent":["import React from 'react';\nimport {useSelector} from 'react-redux';\nimport {IconProps} from '@gravity-ui/uikit';\nimport _compact from 'lodash/compact';\nimport _filter from 'lodash/filter';\nimport _forEach from 'lodash/forEach';\nimport _map from 'lodash/map';\nimport _reduce from 'lodash/reduce';\nimport produce from 'immer';\n\nimport UIFactory from '../../UIFactory';\n\nimport generalIcon from '../../../../img/svg/tools-icon.svg';\nimport paletteIcon from '../../../../img/svg/palette-icon.svg';\nimport closeTagIcon from '../../../../img/svg/close-tag-icon.svg';\nimport dataIcon from '../../../../img/svg/data-icon.svg';\nimport systemIcon from '../../../../img/svg/page-system.svg';\nimport {mastersRadioButtonItems} from '../../constants/system/masters';\nimport operationsIcon from '../../../../img/svg/page-operations.svg';\nimport componentsIcon from '../../../../img/svg/page-components.svg';\nimport navigationIcon from '../../../../img/svg/page-navigation.svg';\nimport shieldIcon from '../../../../img/svg/shield-icon.svg';\nimport tableIcon from '../../../../img/svg/table-icon.svg';\nimport infoIcon from '../../../../img/svg/info-icon.svg';\nimport {useClusterFromLocation} from '../../hooks/use-cluster';\nimport {docsUrl} from '../../config/index';\nimport {uiSettings} from '../../config/ui-settings';\n\nimport ypath from '../../common/thor/ypath';\n\nimport {AGGREGATOR_RADIO_ITEMS} from '../../constants/operations/statistics';\nimport {NAMESPACES, SettingName} from '../../../shared/constants/settings';\nimport {getRecentPagesInfo} from '../../store/selectors/slideoutMenu';\nimport SettingsMenuItem from '../../containers/SettingsMenu/SettingsMenuItem';\nimport SettingsMenuRadio from '../../containers/SettingsMenu/SettingsMenuRadio';\nimport SettingsMenuInput from '../SettingsMenu/SettingsMenuInput';\nimport {\n getCurrentClusterNS,\n getCurrentUserName,\n getGlobalMasterVersion,\n getGlobalSchedulerVersion,\n getHttpProxyVersion,\n isDeveloperSettings,\n} from '../../store/selectors/global';\nimport {\n cellSizeRadioButtonItems,\n pageSizeRadioButtonItems,\n} from '../../constants/navigation/content/table';\nimport YT from '../../config/yt-config';\nimport Link from '../../components/Link/Link';\nimport Button from '../../components/Button/Button';\n\nexport interface SettingsPage {\n title: string;\n icon: IconProps;\n sections: Array<SettingsSection>;\n}\n\nexport interface SettingsSection {\n title: string;\n items: Array<SettingsItem>;\n}\n\nexport interface SettingsItem {\n title: string;\n align?: 'top' | 'center';\n content: React.ReactNode;\n}\n\nconst {oauthTokenUrl} = uiSettings;\n\nconst StartPageSettingMemo = React.memo(StartPageSetting);\n\nfunction wrapEscapeText(text: string) {\n return `<span class=\"unipika\"><span class=\"escape\">${text}</span></span>`;\n}\n\nfunction useSettings(cluster: string, isAdmin: boolean): Array<SettingsPage> {\n const clusterNS = useSelector(getCurrentClusterNS);\n\n const httpProxyVersion: string = useSelector(getHttpProxyVersion);\n const schedulerVersion: string = useSelector(getGlobalSchedulerVersion);\n const masterVersion: string = useSelector(getGlobalMasterVersion);\n\n return _compact([\n makePage('General', generalIcon, [\n makeItem('Start page', 'top', <StartPageSettingMemo />),\n makeItem(\n 'Use auto refresh',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.GLOBAL.AUTO_REFRESH}\n settingNS={NAMESPACES.GLOBAL}\n annotation=\"Automatically update pages with highly dynamic content\"\n oneLine={true}\n />,\n ),\n makeItem(\n 'Use recent clusters',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.MENU.RECENT_CLUSTER_FIRST}\n settingNS={NAMESPACES.MENU}\n annotation={'Recently visited clusters appear at the top of cluster menu.'}\n oneLine\n />,\n ),\n makeItem(\n 'Use recent pages',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.MENU.RECENT_PAGE_FIRST}\n settingNS={NAMESPACES.MENU}\n annotation={'Recently visited pages appear at the top of pages menu.'}\n oneLine\n />,\n ),\n ]),\n makePage('Appearance', paletteIcon, [\n makeItem(\n 'Theme',\n 'top',\n <SettingsMenuRadio\n settingName={SettingName.GLOBAL.THEME}\n settingNS={NAMESPACES.GLOBAL}\n items={[\n {value: 'light', text: 'Light'},\n {value: 'dark', text: 'Dark'},\n {value: 'system', text: 'System'},\n ]}\n />,\n ),\n makeItem(\n 'Contrast',\n 'top',\n <SettingsMenuRadio\n settingName={SettingName.A11Y.USE_SAFE_COLORS}\n settingNS={NAMESPACES.A11Y}\n convertValue={(value) => value === 'true'}\n items={[\n {value: 'false', text: 'Normal'},\n {value: 'true', text: 'High'},\n ]}\n />,\n ),\n ]),\n makePage(\n 'Development',\n closeTagIcon,\n _compact([\n isAdmin &&\n makeItem(\n \"Show regular user's UI\",\n 'top',\n <SettingsMenuItem\n settingName={SettingName.DEVELOPMENT.REGULAR_USER_UI}\n settingNS={NAMESPACES.DEVELOPMENT}\n label={\"Show regular user's UI\"}\n annotation={\n 'There is some difference in UI for development-team and regular users, ' +\n 'enabling of the option allows to see exactly the same what see a regular user.'\n }\n />,\n ),\n makeItem(\n 'Query Tracker Stage',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter stage...\"\n description=\"Default Query Tracker stage is 'production'. But you can reassign it with this setting.\"\n settingName={SettingName.QUERY_TRACKER.STAGE}\n settingNS={NAMESPACES.QUERY_TRACKER}\n />,\n ),\n makeItem(\n 'YQL agent stage',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter YQL agent stage...\"\n settingName={SettingName.QUERY_TRACKER.YQL_AGENT_STAGE}\n settingNS={NAMESPACES.QUERY_TRACKER}\n />,\n ),\n ]),\n ),\n\n makePage('Data', dataIcon, [\n makeItem(\n 'Data format',\n 'top',\n <SettingsMenuRadio\n settingName={SettingName.YSON.FORMAT}\n settingNS={NAMESPACES.YSON}\n items={[\n {\n value: 'yson',\n text: 'YSON',\n },\n {\n value: 'json',\n text: 'JSON',\n },\n {\n value: 'raw-json',\n text: 'Raw JSON',\n },\n ]}\n />,\n ),\n makeItem(\n 'Decode data as UTF8',\n 'top',\n <SettingsMenuItem\n oneLine={true}\n settingName={SettingName.YSON.SHOW_DECODED}\n settingNS={NAMESPACES.YSON}\n annotation={\n 'Attempt to decode UTF-8 strings. Show Unicode symbols upon success and mark ' +\n 'data as binary otherwise.'\n }\n annotationHighlight={\n 'Please note that YSON does not natively support Unicode symbols ' +\n '&mdash; therefore you would not be able to copy-paste presented YSON as is.'\n }\n />,\n ),\n makeItem(\n 'Binary as HEX',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.YSON.BINARY_AS_HEX}\n settingNS={NAMESPACES.YSON}\n annotation={\n 'Display binary strings as HEX sequences. Strings that were not decoded as UTF8 are therefore considered binary and ' +\n 'displayed as HEX sequences.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Escape and highlight',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.YSON.ESCAPE_WHITESPACES}\n settingNS={NAMESPACES.YSON}\n annotation={\n `Symbols ${wrapEscapeText('\\\\n')} and ${wrapEscapeText(\n '\\\\t',\n )} will be rendered as escape sequences, whitespaces will be ` +\n 'highlighted as neccessary. Does not affect Raw JSON format.'\n }\n annotationHighlight={\n 'Please note that JSON does not support unescaped control characters ' +\n '&mdash; therefore you would not be able to copy-paste presented JSON as is.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Compact view',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.YSON.COMPACT}\n settingNS={NAMESPACES.YSON}\n annotation={\n 'Single element lists are rendered inline, so are maps with one property. Does ' +\n 'not affect Raw JSON format.'\n }\n oneLine\n />,\n ),\n ]),\n makePage('System', systemIcon, [\n makeItem(\n 'Host type of Masters/Schedulers/Controller',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default view of host to display on in the Masters/Schedulers and Controller agents section.\"\n settingName={SettingName.SYSTEM.MASTERS_HOST_TYPE}\n settingNS={NAMESPACES.SYSTEM}\n items={mastersRadioButtonItems}\n />,\n ),\n ]),\n makePage('Operation', operationsIcon, [\n makeItem(\n \"Statistic's type\",\n 'top',\n <SettingsMenuRadio\n description=\"Select the default type of job aggregation.\"\n settingName={SettingName.OPERATIONS.STATISTICS_AGGREGATION_TYPE}\n settingNS={NAMESPACES.OPERATIONS}\n items={AGGREGATOR_RADIO_ITEMS}\n />,\n ),\n ]),\n makePage(\n 'Navigation',\n navigationIcon,\n _compact([\n clusterNS &&\n makeItem(\n 'Default path',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter default navigation path...\"\n description=\"Cluster specific path that will be opened by default in the the Navigation page.\"\n validator={navigationPathValidator}\n settingName={SettingName.LOCAL.NAVIGATION_DEFAULT_PATH}\n settingNS={clusterNS}\n />,\n ),\n makeItem(\n 'Default chyt alias',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter default chyt alias...\"\n description=\"User alias for the YQL Kit default query string in ClickHouse mode.\"\n validator={chytAliasValidator}\n settingName={SettingName.NAVIGATION.DEFAULT_CHYT_ALIAS}\n settingNS={NAMESPACES.NAVIGATION}\n />,\n ),\n makeItem(\n 'Use smart sort',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.USE_SMART_SORT}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Nodes with names that represent dates will be sorted from newest date to ' +\n 'oldest, while other nodes will be sorted alphabetically.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Group nodes by type',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.GROUP_NODES}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Nodes will be grouped by type and each type will be sorted independently, ' +\n 'folders first, then tables, then files.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Use smart filter',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.USE_SMART_FILTER}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={'Use logical operators in filter like \"and\" and \"or\"'}\n oneLine\n />,\n ),\n makeItem(\n 'Path autocorrection',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.ENABLE_PATH_AUTO_CORRECTION}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Autocorrect erroneous path if possible. ' +\n docsUrl(\n 'For details see ' +\n `<a class=\"link link_theme_normal\" href=\"${UIFactory.docsUrls['faq:enablepathautocorrection']}\" target=\"_blank\">FAQ</a>` +\n '.',\n )\n }\n oneLine\n />,\n ),\n ]),\n ),\n makePage('Components', componentsIcon, [\n makeItem(\n 'Enable side bar',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.COMPONENTS.ENABLE_SIDE_BAR}\n settingNS={NAMESPACES.COMPONENTS}\n annotation=\"Display node data in the side bar when clicked.\"\n oneLine={true}\n />,\n ),\n ]),\n\n makePage(\n 'Table',\n tableIcon,\n _compact([\n makeItem(\n 'YQL V3 types',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.DEVELOPMENT.YQL_TYPES}\n settingNS={NAMESPACES.DEVELOPMENT}\n oneLine\n />,\n ),\n makeItem(\n 'Rows per page',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default number of rows to display on one table page.\n The number can be changed for the specific table using table settings button.\"\n settingName={SettingName.NAVIGATION.ROWS_PER_TABLE_PAGE}\n settingNS={NAMESPACES.NAVIGATION}\n items={[\n {\n value: String(10),\n text: '10',\n },\n {\n value: String(50),\n text: '50',\n },\n {\n value: String(100),\n text: '100',\n },\n {\n value: String(200),\n text: '200',\n },\n ]}\n convertValue={Number}\n />,\n ),\n makeItem(\n 'Cell size limit',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default cell size limit for tables.\n The cell size limit for the specific table can be changed using table settings button.\"\n settingName={SettingName.NAVIGATION.MAXIMUM_TABLE_STRING_SIZE}\n settingNS={NAMESPACES.NAVIGATION}\n items={cellSizeRadioButtonItems}\n convertValue={Number}\n />,\n ),\n makeItem(\n 'Default column limit',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default column limit for tables. In other words, how many columns will be shown\n when no column has even been hidden using ColumnSelector for the particular table or (if table\n similarity is enabled) for the similar table.\"\n settingName={SettingName.NAVIGATION.DEFAULT_TABLE_COLUMN_LIMIT}\n settingNS={NAMESPACES.NAVIGATION}\n items={pageSizeRadioButtonItems}\n convertValue={Number}\n />,\n ),\n makeItem(\n 'Guess visible columns',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.ENABLE_TABLE_SIMILARITY}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Use table similarity for guessing visible columns. ' +\n 'Show same visible columns in table A as in table B if these tables are similar ' +\n 'and those columns have been previously set as visible for table B.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Allow raw string-values',\n 'top',\n <SettingsMenuItem\n annotation=\"Cells with string values will be displayed without escaping.\"\n settingName={SettingName.NAVIGATION.TABLE_DISPLAY_RAW_STRINGS}\n settingNS={NAMESPACES.NAVIGATION}\n oneLine\n />,\n ),\n ]),\n ),\n\n oauthTokenUrl &&\n makePage('Auth', shieldIcon, [\n makeItem(\n 'YT OAuth token',\n undefined,\n <Link url={oauthTokenUrl} target=\"_blank\">\n <Button size={'s'}>Show my token</Button>\n </Link>,\n ),\n ]),\n\n makePage(\n 'About',\n infoIcon,\n _compact([\n Boolean(cluster) && makeItem('HTTP proxy version', undefined, httpProxyVersion),\n Boolean(cluster) && makeItem('Scheduler version', undefined, schedulerVersion),\n Boolean(cluster) && makeItem('Master version', undefined, masterVersion),\n makeItem('Interface version', undefined, YT.parameters.interface.version),\n ]),\n ),\n ]);\n}\n\nexport function makePage(\n title: string,\n icon: IconProps | undefined,\n items: Array<SettingsItem>,\n): SettingsPage {\n return {title, icon: icon || generalIcon, sections: [{title, items}]};\n}\n\nexport function makeItem(\n title: string,\n align?: SettingsItem['align'],\n content?: React.ReactNode,\n): SettingsItem {\n return {title, align, content};\n}\n\nexport function useSettingsDescription(): Array<SettingsPage> {\n const isAdmin = useSelector(isDeveloperSettings) || true;\n const cluster = useClusterFromLocation();\n const login = useSelector(getCurrentUserName);\n\n const settings = useSettings(cluster, isAdmin);\n const externalSettings = UIFactory.getExternalSettings({cluster, isAdmin, login});\n\n const res = React.useMemo(() => {\n const extPages: Record<string, SettingsPage> = hashByTitle(externalSettings);\n return produce(settings, (pages) => {\n _forEach(pages, (page) => {\n const extPage = extPages[page.title];\n if (extPage) {\n delete extPages[page.title];\n const extSections = hashByTitle(extPage.sections);\n _forEach(page.sections, (section) => {\n const s = extSections[section.title];\n if (s) {\n delete extSections[section.title];\n section.items.push(...s.items);\n }\n });\n _forEach(extSections, (section) => {\n page.sections.push(section);\n });\n }\n });\n _forEach(extPages, (page) => {\n pages.splice(pages.length - 1, 0, page);\n });\n });\n }, [settings, externalSettings]);\n\n return res;\n}\n\nfunction hashByTitle<T extends {title: string}>(data: Array<T>) {\n return _reduce(\n data,\n (acc, item) => {\n acc[item.title] = item;\n return acc;\n },\n {} as Record<string, T>,\n );\n}\n\nfunction StartPageSetting() {\n const {all} = useSelector(getRecentPagesInfo);\n\n const pageItems = React.useMemo(() => {\n const headerPages = _filter(all, (page) => Boolean(page.header));\n return _map(headerPages, (page) => ({\n value: page.id,\n text: page.name,\n }));\n }, [all]);\n\n return (\n <SettingsMenuRadio\n settingName={SettingName.MENU.STARTING_PAGE}\n settingNS={NAMESPACES.MENU}\n items={pageItems}\n />\n );\n}\n\nfunction navigationPathValidator(value = '/') {\n if (!value) {\n return null;\n }\n\n try {\n ypath.YPath.create(value, 'absolute');\n return undefined;\n } catch (err) {\n return (err as Error)?.message || 'invalid path';\n }\n}\n\nfunction chytAliasValidator(value: string) {\n if (!value.startsWith('*') && value.length > 0) {\n return \"The alias should be started with a character '*'\";\n }\n\n return undefined;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactRedux","_compact2","_filter2","_forEach2","_map2","_reduce2","_immer","_UIFactory","_toolsIcon","_paletteIcon","_closeTagIcon","_dataIcon","_pageSystem","_masters","_pageOperations","_pageComponents","_pageNavigation","_shieldIcon","_tableIcon","_infoIcon","_useCluster","_index","_uiSettings","_ypath","_statistics","_settings","_slideoutMenu","_SettingsMenuItem","_SettingsMenuRadio","_SettingsMenuInput","_global","_table","_ytConfig","_Link","_Button","_jsxRuntime","obj","__esModule","default","oauthTokenUrl","uiSettings","StartPageSettingMemo","React","memo","StartPageSetting","wrapEscapeText","text","concat","useSettings","cluster","isAdmin","clusterNS","useSelector","getCurrentClusterNS","httpProxyVersion","getHttpProxyVersion","schedulerVersion","getGlobalSchedulerVersion","masterVersion","getGlobalMasterVersion","_compact","makePage","generalIcon","makeItem","_jsx","SettingsMenuItem","settingName","SettingName","GLOBAL","AUTO_REFRESH","settingNS","NAMESPACES","annotation","oneLine","MENU","RECENT_CLUSTER_FIRST","RECENT_PAGE_FIRST","paletteIcon","SettingsMenuRadio","THEME","items","value","A11Y","USE_SAFE_COLORS","convertValue","closeTagIcon","DEVELOPMENT","REGULAR_USER_UI","label","SettingsMenuInput","placeholder","description","QUERY_TRACKER","STAGE","YQL_AGENT_STAGE","dataIcon","YSON","FORMAT","SHOW_DECODED","annotationHighlight","BINARY_AS_HEX","ESCAPE_WHITESPACES","COMPACT","systemIcon","SYSTEM","MASTERS_HOST_TYPE","mastersRadioButtonItems","operationsIcon","OPERATIONS","STATISTICS_AGGREGATION_TYPE","AGGREGATOR_RADIO_ITEMS","navigationIcon","validator","navigationPathValidator","LOCAL","NAVIGATION_DEFAULT_PATH","chytAliasValidator","NAVIGATION","DEFAULT_CHYT_ALIAS","USE_SMART_SORT","GROUP_NODES","USE_SMART_FILTER","ENABLE_PATH_AUTO_CORRECTION","docsUrl","UIFactory","docsUrls","componentsIcon","COMPONENTS","ENABLE_SIDE_BAR","tableIcon","YQL_TYPES","ROWS_PER_TABLE_PAGE","String","Number","MAXIMUM_TABLE_STRING_SIZE","cellSizeRadioButtonItems","DEFAULT_TABLE_COLUMN_LIMIT","pageSizeRadioButtonItems","ENABLE_TABLE_SIMILARITY","TABLE_DISPLAY_RAW_STRINGS","shieldIcon","undefined","Link","url","target","children","Button","size","infoIcon","Boolean","YT","parameters","version","title","icon","sections","align","content","useSettingsDescription","isDeveloperOrWatchMen","useClusterFromLocation","login","getCurrentUserName","settings","externalSettings","getExternalSettings","res","useMemo","extPages","hashByTitle","produce","pages","_forEach","page","extPage","extSections","section","s","_section$items","push","apply","_toConsumableArray","splice","length","data","_reduce","acc","item","_useSelector","getRecentPagesInfo","all","pageItems","headerPages","_filter","header","_map","id","name","STARTING_PAGE","arguments","ypath","YPath","create","err","message","startsWith"],"sources":["settings-description.tsx"],"sourcesContent":["import React from 'react';\nimport {useSelector} from 'react-redux';\nimport {IconProps} from '@gravity-ui/uikit';\nimport _compact from 'lodash/compact';\nimport _filter from 'lodash/filter';\nimport _forEach from 'lodash/forEach';\nimport _map from 'lodash/map';\nimport _reduce from 'lodash/reduce';\nimport produce from 'immer';\n\nimport UIFactory from '../../UIFactory';\n\nimport generalIcon from '../../../../img/svg/tools-icon.svg';\nimport paletteIcon from '../../../../img/svg/palette-icon.svg';\nimport closeTagIcon from '../../../../img/svg/close-tag-icon.svg';\nimport dataIcon from '../../../../img/svg/data-icon.svg';\nimport systemIcon from '../../../../img/svg/page-system.svg';\nimport {mastersRadioButtonItems} from '../../constants/system/masters';\nimport operationsIcon from '../../../../img/svg/page-operations.svg';\nimport componentsIcon from '../../../../img/svg/page-components.svg';\nimport navigationIcon from '../../../../img/svg/page-navigation.svg';\nimport shieldIcon from '../../../../img/svg/shield-icon.svg';\nimport tableIcon from '../../../../img/svg/table-icon.svg';\nimport infoIcon from '../../../../img/svg/info-icon.svg';\nimport {useClusterFromLocation} from '../../hooks/use-cluster';\nimport {docsUrl} from '../../config/index';\nimport {uiSettings} from '../../config/ui-settings';\n\nimport ypath from '../../common/thor/ypath';\n\nimport {AGGREGATOR_RADIO_ITEMS} from '../../constants/operations/statistics';\nimport {NAMESPACES, SettingName} from '../../../shared/constants/settings';\nimport {getRecentPagesInfo} from '../../store/selectors/slideoutMenu';\nimport SettingsMenuItem from '../../containers/SettingsMenu/SettingsMenuItem';\nimport SettingsMenuRadio from '../../containers/SettingsMenu/SettingsMenuRadio';\nimport SettingsMenuInput from '../SettingsMenu/SettingsMenuInput';\nimport {\n getCurrentClusterNS,\n getCurrentUserName,\n getGlobalMasterVersion,\n getGlobalSchedulerVersion,\n getHttpProxyVersion,\n isDeveloperOrWatchMen,\n} from '../../store/selectors/global';\nimport {\n cellSizeRadioButtonItems,\n pageSizeRadioButtonItems,\n} from '../../constants/navigation/content/table';\nimport YT from '../../config/yt-config';\nimport Link from '../../components/Link/Link';\nimport Button from '../../components/Button/Button';\n\nexport interface SettingsPage {\n title: string;\n icon: IconProps;\n sections: Array<SettingsSection>;\n}\n\nexport interface SettingsSection {\n title: string;\n items: Array<SettingsItem>;\n}\n\nexport interface SettingsItem {\n title: string;\n align?: 'top' | 'center';\n content: React.ReactNode;\n}\n\nconst {oauthTokenUrl} = uiSettings;\n\nconst StartPageSettingMemo = React.memo(StartPageSetting);\n\nfunction wrapEscapeText(text: string) {\n return `<span class=\"unipika\"><span class=\"escape\">${text}</span></span>`;\n}\n\nfunction useSettings(cluster: string, isAdmin: boolean): Array<SettingsPage> {\n const clusterNS = useSelector(getCurrentClusterNS);\n\n const httpProxyVersion: string = useSelector(getHttpProxyVersion);\n const schedulerVersion: string = useSelector(getGlobalSchedulerVersion);\n const masterVersion: string = useSelector(getGlobalMasterVersion);\n\n return _compact([\n makePage('General', generalIcon, [\n makeItem('Start page', 'top', <StartPageSettingMemo />),\n makeItem(\n 'Use auto refresh',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.GLOBAL.AUTO_REFRESH}\n settingNS={NAMESPACES.GLOBAL}\n annotation=\"Automatically update pages with highly dynamic content\"\n oneLine={true}\n />,\n ),\n makeItem(\n 'Use recent clusters',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.MENU.RECENT_CLUSTER_FIRST}\n settingNS={NAMESPACES.MENU}\n annotation={'Recently visited clusters appear at the top of cluster menu.'}\n oneLine\n />,\n ),\n makeItem(\n 'Use recent pages',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.MENU.RECENT_PAGE_FIRST}\n settingNS={NAMESPACES.MENU}\n annotation={'Recently visited pages appear at the top of pages menu.'}\n oneLine\n />,\n ),\n ]),\n makePage('Appearance', paletteIcon, [\n makeItem(\n 'Theme',\n 'top',\n <SettingsMenuRadio\n settingName={SettingName.GLOBAL.THEME}\n settingNS={NAMESPACES.GLOBAL}\n items={[\n {value: 'light', text: 'Light'},\n {value: 'dark', text: 'Dark'},\n {value: 'system', text: 'System'},\n ]}\n />,\n ),\n makeItem(\n 'Contrast',\n 'top',\n <SettingsMenuRadio\n settingName={SettingName.A11Y.USE_SAFE_COLORS}\n settingNS={NAMESPACES.A11Y}\n convertValue={(value) => value === 'true'}\n items={[\n {value: 'false', text: 'Normal'},\n {value: 'true', text: 'High'},\n ]}\n />,\n ),\n ]),\n makePage(\n 'Development',\n closeTagIcon,\n _compact([\n isAdmin &&\n makeItem(\n \"Show regular user's UI\",\n 'top',\n <SettingsMenuItem\n settingName={SettingName.DEVELOPMENT.REGULAR_USER_UI}\n settingNS={NAMESPACES.DEVELOPMENT}\n label={\"Show regular user's UI\"}\n annotation={\n 'There is some difference in UI for development-team and regular users, ' +\n 'enabling of the option allows to see exactly the same what see a regular user.'\n }\n />,\n ),\n makeItem(\n 'Query Tracker Stage',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter stage...\"\n description=\"Default Query Tracker stage is 'production'. But you can reassign it with this setting.\"\n settingName={SettingName.QUERY_TRACKER.STAGE}\n settingNS={NAMESPACES.QUERY_TRACKER}\n />,\n ),\n makeItem(\n 'YQL agent stage',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter YQL agent stage...\"\n settingName={SettingName.QUERY_TRACKER.YQL_AGENT_STAGE}\n settingNS={NAMESPACES.QUERY_TRACKER}\n />,\n ),\n ]),\n ),\n\n makePage('Data', dataIcon, [\n makeItem(\n 'Data format',\n 'top',\n <SettingsMenuRadio\n settingName={SettingName.YSON.FORMAT}\n settingNS={NAMESPACES.YSON}\n items={[\n {\n value: 'yson',\n text: 'YSON',\n },\n {\n value: 'json',\n text: 'JSON',\n },\n {\n value: 'raw-json',\n text: 'Raw JSON',\n },\n ]}\n />,\n ),\n makeItem(\n 'Decode data as UTF8',\n 'top',\n <SettingsMenuItem\n oneLine={true}\n settingName={SettingName.YSON.SHOW_DECODED}\n settingNS={NAMESPACES.YSON}\n annotation={\n 'Attempt to decode UTF-8 strings. Show Unicode symbols upon success and mark ' +\n 'data as binary otherwise.'\n }\n annotationHighlight={\n 'Please note that YSON does not natively support Unicode symbols ' +\n '&mdash; therefore you would not be able to copy-paste presented YSON as is.'\n }\n />,\n ),\n makeItem(\n 'Binary as HEX',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.YSON.BINARY_AS_HEX}\n settingNS={NAMESPACES.YSON}\n annotation={\n 'Display binary strings as HEX sequences. Strings that were not decoded as UTF8 are therefore considered binary and ' +\n 'displayed as HEX sequences.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Escape and highlight',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.YSON.ESCAPE_WHITESPACES}\n settingNS={NAMESPACES.YSON}\n annotation={\n `Symbols ${wrapEscapeText('\\\\n')} and ${wrapEscapeText(\n '\\\\t',\n )} will be rendered as escape sequences, whitespaces will be ` +\n 'highlighted as neccessary. Does not affect Raw JSON format.'\n }\n annotationHighlight={\n 'Please note that JSON does not support unescaped control characters ' +\n '&mdash; therefore you would not be able to copy-paste presented JSON as is.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Compact view',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.YSON.COMPACT}\n settingNS={NAMESPACES.YSON}\n annotation={\n 'Single element lists are rendered inline, so are maps with one property. Does ' +\n 'not affect Raw JSON format.'\n }\n oneLine\n />,\n ),\n ]),\n makePage('System', systemIcon, [\n makeItem(\n 'Host type of Masters/Schedulers/Controller',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default view of host to display on in the Masters/Schedulers and Controller agents section.\"\n settingName={SettingName.SYSTEM.MASTERS_HOST_TYPE}\n settingNS={NAMESPACES.SYSTEM}\n items={mastersRadioButtonItems}\n />,\n ),\n ]),\n makePage('Operation', operationsIcon, [\n makeItem(\n \"Statistic's type\",\n 'top',\n <SettingsMenuRadio\n description=\"Select the default type of job aggregation.\"\n settingName={SettingName.OPERATIONS.STATISTICS_AGGREGATION_TYPE}\n settingNS={NAMESPACES.OPERATIONS}\n items={AGGREGATOR_RADIO_ITEMS}\n />,\n ),\n ]),\n makePage(\n 'Navigation',\n navigationIcon,\n _compact([\n clusterNS &&\n makeItem(\n 'Default path',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter default navigation path...\"\n description=\"Cluster specific path that will be opened by default in the the Navigation page.\"\n validator={navigationPathValidator}\n settingName={SettingName.LOCAL.NAVIGATION_DEFAULT_PATH}\n settingNS={clusterNS}\n />,\n ),\n makeItem(\n 'Default chyt alias',\n 'top',\n <SettingsMenuInput\n placeholder=\"Enter default chyt alias...\"\n description=\"User alias for the YQL Kit default query string in ClickHouse mode.\"\n validator={chytAliasValidator}\n settingName={SettingName.NAVIGATION.DEFAULT_CHYT_ALIAS}\n settingNS={NAMESPACES.NAVIGATION}\n />,\n ),\n makeItem(\n 'Use smart sort',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.USE_SMART_SORT}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Nodes with names that represent dates will be sorted from newest date to ' +\n 'oldest, while other nodes will be sorted alphabetically.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Group nodes by type',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.GROUP_NODES}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Nodes will be grouped by type and each type will be sorted independently, ' +\n 'folders first, then tables, then files.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Use smart filter',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.USE_SMART_FILTER}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={'Use logical operators in filter like \"and\" and \"or\"'}\n oneLine\n />,\n ),\n makeItem(\n 'Path autocorrection',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.ENABLE_PATH_AUTO_CORRECTION}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Autocorrect erroneous path if possible. ' +\n docsUrl(\n 'For details see ' +\n `<a class=\"link link_theme_normal\" href=\"${UIFactory.docsUrls['faq:enablepathautocorrection']}\" target=\"_blank\">FAQ</a>` +\n '.',\n )\n }\n oneLine\n />,\n ),\n ]),\n ),\n makePage('Components', componentsIcon, [\n makeItem(\n 'Enable side bar',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.COMPONENTS.ENABLE_SIDE_BAR}\n settingNS={NAMESPACES.COMPONENTS}\n annotation=\"Display node data in the side bar when clicked.\"\n oneLine={true}\n />,\n ),\n ]),\n\n makePage(\n 'Table',\n tableIcon,\n _compact([\n makeItem(\n 'YQL V3 types',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.DEVELOPMENT.YQL_TYPES}\n settingNS={NAMESPACES.DEVELOPMENT}\n oneLine\n />,\n ),\n makeItem(\n 'Rows per page',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default number of rows to display on one table page.\n The number can be changed for the specific table using table settings button.\"\n settingName={SettingName.NAVIGATION.ROWS_PER_TABLE_PAGE}\n settingNS={NAMESPACES.NAVIGATION}\n items={[\n {\n value: String(10),\n text: '10',\n },\n {\n value: String(50),\n text: '50',\n },\n {\n value: String(100),\n text: '100',\n },\n {\n value: String(200),\n text: '200',\n },\n ]}\n convertValue={Number}\n />,\n ),\n makeItem(\n 'Cell size limit',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default cell size limit for tables.\n The cell size limit for the specific table can be changed using table settings button.\"\n settingName={SettingName.NAVIGATION.MAXIMUM_TABLE_STRING_SIZE}\n settingNS={NAMESPACES.NAVIGATION}\n items={cellSizeRadioButtonItems}\n convertValue={Number}\n />,\n ),\n makeItem(\n 'Default column limit',\n 'top',\n <SettingsMenuRadio\n description=\"Select the default column limit for tables. In other words, how many columns will be shown\n when no column has even been hidden using ColumnSelector for the particular table or (if table\n similarity is enabled) for the similar table.\"\n settingName={SettingName.NAVIGATION.DEFAULT_TABLE_COLUMN_LIMIT}\n settingNS={NAMESPACES.NAVIGATION}\n items={pageSizeRadioButtonItems}\n convertValue={Number}\n />,\n ),\n makeItem(\n 'Guess visible columns',\n 'top',\n <SettingsMenuItem\n settingName={SettingName.NAVIGATION.ENABLE_TABLE_SIMILARITY}\n settingNS={NAMESPACES.NAVIGATION}\n annotation={\n 'Use table similarity for guessing visible columns. ' +\n 'Show same visible columns in table A as in table B if these tables are similar ' +\n 'and those columns have been previously set as visible for table B.'\n }\n oneLine\n />,\n ),\n makeItem(\n 'Allow raw string-values',\n 'top',\n <SettingsMenuItem\n annotation=\"Cells with string values will be displayed without escaping.\"\n settingName={SettingName.NAVIGATION.TABLE_DISPLAY_RAW_STRINGS}\n settingNS={NAMESPACES.NAVIGATION}\n oneLine\n />,\n ),\n ]),\n ),\n\n oauthTokenUrl &&\n makePage('Auth', shieldIcon, [\n makeItem(\n 'YT OAuth token',\n undefined,\n <Link url={oauthTokenUrl} target=\"_blank\">\n <Button size={'s'}>Show my token</Button>\n </Link>,\n ),\n ]),\n\n makePage(\n 'About',\n infoIcon,\n _compact([\n Boolean(cluster) && makeItem('HTTP proxy version', undefined, httpProxyVersion),\n Boolean(cluster) && makeItem('Scheduler version', undefined, schedulerVersion),\n Boolean(cluster) && makeItem('Master version', undefined, masterVersion),\n makeItem('Interface version', undefined, YT.parameters.interface.version),\n ]),\n ),\n ]);\n}\n\nexport function makePage(\n title: string,\n icon: IconProps | undefined,\n items: Array<SettingsItem>,\n): SettingsPage {\n return {title, icon: icon || generalIcon, sections: [{title, items}]};\n}\n\nexport function makeItem(\n title: string,\n align?: SettingsItem['align'],\n content?: React.ReactNode,\n): SettingsItem {\n return {title, align, content};\n}\n\nexport function useSettingsDescription(): Array<SettingsPage> {\n const isAdmin = useSelector(isDeveloperOrWatchMen) || true;\n const cluster = useClusterFromLocation();\n const login = useSelector(getCurrentUserName);\n\n const settings = useSettings(cluster, isAdmin);\n const externalSettings = UIFactory.getExternalSettings({cluster, isAdmin, login});\n\n const res = React.useMemo(() => {\n const extPages: Record<string, SettingsPage> = hashByTitle(externalSettings);\n return produce(settings, (pages) => {\n _forEach(pages, (page) => {\n const extPage = extPages[page.title];\n if (extPage) {\n delete extPages[page.title];\n const extSections = hashByTitle(extPage.sections);\n _forEach(page.sections, (section) => {\n const s = extSections[section.title];\n if (s) {\n delete extSections[section.title];\n section.items.push(...s.items);\n }\n });\n _forEach(extSections, (section) => {\n page.sections.push(section);\n });\n }\n });\n _forEach(extPages, (page) => {\n pages.splice(pages.length - 1, 0, page);\n });\n });\n }, [settings, externalSettings]);\n\n return res;\n}\n\nfunction hashByTitle<T extends {title: string}>(data: Array<T>) {\n return _reduce(\n data,\n (acc, item) => {\n acc[item.title] = item;\n return acc;\n },\n {} as Record<string, T>,\n );\n}\n\nfunction StartPageSetting() {\n const {all} = useSelector(getRecentPagesInfo);\n\n const pageItems = React.useMemo(() => {\n const headerPages = _filter(all, (page) => Boolean(page.header));\n return _map(headerPages, (page) => ({\n value: page.id,\n text: page.name,\n }));\n }, [all]);\n\n return (\n <SettingsMenuRadio\n settingName={SettingName.MENU.STARTING_PAGE}\n settingNS={NAMESPACES.MENU}\n items={pageItems}\n />\n );\n}\n\nfunction navigationPathValidator(value = '/') {\n if (!value) {\n return null;\n }\n\n try {\n ypath.YPath.create(value, 'absolute');\n return undefined;\n } catch (err) {\n return (err as Error)?.message || 'invalid path';\n }\n}\n\nfunction chytAliasValidator(value: string) {\n if (!value.startsWith('*') && value.length > 0) {\n return \"The alias should be started with a character '*'\";\n }\n\n return undefined;\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,SAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,KAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,QAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,MAAA,GAAAR,sBAAA,CAAAC,OAAA;AAEA,IAAAQ,UAAA,GAAAT,sBAAA,CAAAC,OAAA;AAEA,IAAAS,UAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,YAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,aAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,SAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,WAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,QAAA,GAAAd,OAAA;AACA,IAAAe,eAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,eAAA,GAAAjB,sBAAA,CAAAC,OAAA;AACA,IAAAiB,eAAA,GAAAlB,sBAAA,CAAAC,OAAA;AACA,IAAAkB,WAAA,GAAAnB,sBAAA,CAAAC,OAAA;AACA,IAAAmB,UAAA,GAAApB,sBAAA,CAAAC,OAAA;AACA,IAAAoB,SAAA,GAAArB,sBAAA,CAAAC,OAAA;AACA,IAAAqB,WAAA,GAAArB,OAAA;AACA,IAAAsB,MAAA,GAAAtB,OAAA;AACA,IAAAuB,WAAA,GAAAvB,OAAA;AAEA,IAAAwB,MAAA,GAAAzB,sBAAA,CAAAC,OAAA;AAEA,IAAAyB,WAAA,GAAAzB,OAAA;AACA,IAAA0B,SAAA,GAAA1B,OAAA;AACA,IAAA2B,aAAA,GAAA3B,OAAA;AACA,IAAA4B,iBAAA,GAAA7B,sBAAA,CAAAC,OAAA;AACA,IAAA6B,kBAAA,GAAA9B,sBAAA,CAAAC,OAAA;AACA,IAAA8B,kBAAA,GAAA/B,sBAAA,CAAAC,OAAA;AACA,IAAA+B,OAAA,GAAA/B,OAAA;AAQA,IAAAgC,MAAA,GAAAhC,OAAA;AAIA,IAAAiC,SAAA,GAAAlC,sBAAA,CAAAC,OAAA;AACA,IAAAkC,KAAA,GAAAnC,sBAAA,CAAAC,OAAA;AACA,IAAAmC,OAAA,GAAApC,sBAAA,CAAAC,OAAA;AAAoD,IAAAoC,WAAA,GAAApC,OAAA;AAAA,SAAAD,uBAAAsC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAmBpD,IAAOG,aAAa,GAAIC,sBAAU,CAA3BD,aAAa;AAEpB,IAAME,oBAAoB,gBAAGC,cAAK,CAACC,IAAI,CAACC,gBAAgB,CAAC;AAEzD,SAASC,cAAcA,CAACC,IAAY,EAAE;EAClC,yDAAAC,MAAA,CAAqDD,IAAI;AAC7D;AAEA,SAASE,WAAWA,CAACC,OAAe,EAAEC,OAAgB,EAAuB;EACzE,IAAMC,SAAS,GAAG,IAAAC,uBAAW,EAACC,2BAAmB,CAAC;EAElD,IAAMC,gBAAwB,GAAG,IAAAF,uBAAW,EAACG,2BAAmB,CAAC;EACjE,IAAMC,gBAAwB,GAAG,IAAAJ,uBAAW,EAACK,iCAAyB,CAAC;EACvE,IAAMC,aAAqB,GAAG,IAAAN,uBAAW,EAACO,8BAAsB,CAAC;EAEjE,OAAO,IAAAC,iBAAQ,EAAC,CACZC,QAAQ,CAAC,SAAS,EAAEC,kBAAW,EAAE,CAC7BC,QAAQ,CAAC,YAAY,EAAE,KAAK,eAAE,IAAAC,eAAA,EAACvB,oBAAoB,IAAE,CAAC,CAAC,EACvDsB,QAAQ,CACJ,kBAAkB,EAClB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACC,MAAM,CAACC,YAAa;IAC7CC,SAAS,EAAEC,oBAAU,CAACH,MAAO;IAC7BI,UAAU,EAAC,wDAAwD;IACnEC,OAAO,EAAE;EAAK,CACjB,CACL,CAAC,EACDV,QAAQ,CACJ,qBAAqB,EACrB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACO,IAAI,CAACC,oBAAqB;IACnDL,SAAS,EAAEC,oBAAU,CAACG,IAAK;IAC3BF,UAAU,EAAE,8DAA+D;IAC3EC,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,kBAAkB,EAClB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACO,IAAI,CAACE,iBAAkB;IAChDN,SAAS,EAAEC,oBAAU,CAACG,IAAK;IAC3BF,UAAU,EAAE,yDAA0D;IACtEC,OAAO;EAAA,CACV,CACL,CAAC,CACJ,CAAC,EACFZ,QAAQ,CAAC,YAAY,EAAEgB,oBAAW,EAAE,CAChCd,QAAQ,CACJ,OAAO,EACP,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACdZ,WAAW,EAAEC,qBAAW,CAACC,MAAM,CAACW,KAAM;IACtCT,SAAS,EAAEC,oBAAU,CAACH,MAAO;IAC7BY,KAAK,EAAE,CACH;MAACC,KAAK,EAAE,OAAO;MAAEnC,IAAI,EAAE;IAAO,CAAC,EAC/B;MAACmC,KAAK,EAAE,MAAM;MAAEnC,IAAI,EAAE;IAAM,CAAC,EAC7B;MAACmC,KAAK,EAAE,QAAQ;MAAEnC,IAAI,EAAE;IAAQ,CAAC;EACnC,CACL,CACL,CAAC,EACDiB,QAAQ,CACJ,UAAU,EACV,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACdZ,WAAW,EAAEC,qBAAW,CAACe,IAAI,CAACC,eAAgB;IAC9Cb,SAAS,EAAEC,oBAAU,CAACW,IAAK;IAC3BE,YAAY,EAAE,SAAAA,aAACH,KAAK;MAAA,OAAKA,KAAK,KAAK,MAAM;IAAA,CAAC;IAC1CD,KAAK,EAAE,CACH;MAACC,KAAK,EAAE,OAAO;MAAEnC,IAAI,EAAE;IAAQ,CAAC,EAChC;MAACmC,KAAK,EAAE,MAAM;MAAEnC,IAAI,EAAE;IAAM,CAAC;EAC/B,CACL,CACL,CAAC,CACJ,CAAC,EACFe,QAAQ,CACJ,aAAa,EACbwB,qBAAY,EACZ,IAAAzB,iBAAQ,EAAC,CACLV,OAAO,IACHa,QAAQ,CACJ,wBAAwB,EACxB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACmB,WAAW,CAACC,eAAgB;IACrDjB,SAAS,EAAEC,oBAAU,CAACe,WAAY;IAClCE,KAAK,EAAE,wBAAyB;IAChChB,UAAU,EACN,yEAAyE,GACzE;EACH,CACJ,CACL,CAAC,EACLT,QAAQ,CACJ,qBAAqB,EACrB,KAAK,eACL,IAAAC,eAAA,EAACyB,0BAAiB;IACdC,WAAW,EAAC,gBAAgB;IAC5BC,WAAW,EAAC,yFAAyF;IACrGzB,WAAW,EAAEC,qBAAW,CAACyB,aAAa,CAACC,KAAM;IAC7CvB,SAAS,EAAEC,oBAAU,CAACqB;EAAc,CACvC,CACL,CAAC,EACD7B,QAAQ,CACJ,iBAAiB,EACjB,KAAK,eACL,IAAAC,eAAA,EAACyB,0BAAiB;IACdC,WAAW,EAAC,0BAA0B;IACtCxB,WAAW,EAAEC,qBAAW,CAACyB,aAAa,CAACE,eAAgB;IACvDxB,SAAS,EAAEC,oBAAU,CAACqB;EAAc,CACvC,CACL,CAAC,CACJ,CACL,CAAC,EAED/B,QAAQ,CAAC,MAAM,EAAEkC,iBAAQ,EAAE,CACvBhC,QAAQ,CACJ,aAAa,EACb,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACdZ,WAAW,EAAEC,qBAAW,CAAC6B,IAAI,CAACC,MAAO;IACrC3B,SAAS,EAAEC,oBAAU,CAACyB,IAAK;IAC3BhB,KAAK,EAAE,CACH;MACIC,KAAK,EAAE,MAAM;MACbnC,IAAI,EAAE;IACV,CAAC,EACD;MACImC,KAAK,EAAE,MAAM;MACbnC,IAAI,EAAE;IACV,CAAC,EACD;MACImC,KAAK,EAAE,UAAU;MACjBnC,IAAI,EAAE;IACV,CAAC;EACH,CACL,CACL,CAAC,EACDiB,QAAQ,CACJ,qBAAqB,EACrB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbQ,OAAO,EAAE,IAAK;IACdP,WAAW,EAAEC,qBAAW,CAAC6B,IAAI,CAACE,YAAa;IAC3C5B,SAAS,EAAEC,oBAAU,CAACyB,IAAK;IAC3BxB,UAAU,EACN,8EAA8E,GAC9E,2BACH;IACD2B,mBAAmB,EACf,kEAAkE,GAClE;EACH,CACJ,CACL,CAAC,EACDpC,QAAQ,CACJ,eAAe,EACf,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAAC6B,IAAI,CAACI,aAAc;IAC5C9B,SAAS,EAAEC,oBAAU,CAACyB,IAAK;IAC3BxB,UAAU,EACN,qHAAqH,GACrH,6BACH;IACDC,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,sBAAsB,EACtB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAAC6B,IAAI,CAACK,kBAAmB;IACjD/B,SAAS,EAAEC,oBAAU,CAACyB,IAAK;IAC3BxB,UAAU,EACN,WAAAzB,MAAA,CAAWF,cAAc,CAAC,KAAK,CAAC,WAAAE,MAAA,CAAQF,cAAc,CAClD,KACJ,CAAC,mEACD,6DACH;IACDsD,mBAAmB,EACf,sEAAsE,GACtE,6EACH;IACD1B,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,cAAc,EACd,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAAC6B,IAAI,CAACM,OAAQ;IACtChC,SAAS,EAAEC,oBAAU,CAACyB,IAAK;IAC3BxB,UAAU,EACN,gFAAgF,GAChF,6BACH;IACDC,OAAO;EAAA,CACV,CACL,CAAC,CACJ,CAAC,EACFZ,QAAQ,CAAC,QAAQ,EAAE0C,mBAAU,EAAE,CAC3BxC,QAAQ,CACJ,4CAA4C,EAC5C,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACda,WAAW,EAAC,wGAAwG;IACpHzB,WAAW,EAAEC,qBAAW,CAACqC,MAAM,CAACC,iBAAkB;IAClDnC,SAAS,EAAEC,oBAAU,CAACiC,MAAO;IAC7BxB,KAAK,EAAE0B;EAAwB,CAClC,CACL,CAAC,CACJ,CAAC,EACF7C,QAAQ,CAAC,WAAW,EAAE8C,uBAAc,EAAE,CAClC5C,QAAQ,CACJ,kBAAkB,EAClB,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACda,WAAW,EAAC,6CAA6C;IACzDzB,WAAW,EAAEC,qBAAW,CAACyC,UAAU,CAACC,2BAA4B;IAChEvC,SAAS,EAAEC,oBAAU,CAACqC,UAAW;IACjC5B,KAAK,EAAE8B;EAAuB,CACjC,CACL,CAAC,CACJ,CAAC,EACFjD,QAAQ,CACJ,YAAY,EACZkD,uBAAc,EACd,IAAAnD,iBAAQ,EAAC,CACLT,SAAS,IACLY,QAAQ,CACJ,cAAc,EACd,KAAK,eACL,IAAAC,eAAA,EAACyB,0BAAiB;IACdC,WAAW,EAAC,kCAAkC;IAC9CC,WAAW,EAAC,kFAAkF;IAC9FqB,SAAS,EAAEC,uBAAwB;IACnC/C,WAAW,EAAEC,qBAAW,CAAC+C,KAAK,CAACC,uBAAwB;IACvD7C,SAAS,EAAEnB;EAAU,CACxB,CACL,CAAC,EACLY,QAAQ,CACJ,oBAAoB,EACpB,KAAK,eACL,IAAAC,eAAA,EAACyB,0BAAiB;IACdC,WAAW,EAAC,6BAA6B;IACzCC,WAAW,EAAC,qEAAqE;IACjFqB,SAAS,EAAEI,kBAAmB;IAC9BlD,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACC,kBAAmB;IACvDhD,SAAS,EAAEC,oBAAU,CAAC8C;EAAW,CACpC,CACL,CAAC,EACDtD,QAAQ,CACJ,gBAAgB,EAChB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACE,cAAe;IACnDjD,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjC7C,UAAU,EACN,2EAA2E,GAC3E,0DACH;IACDC,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,qBAAqB,EACrB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACG,WAAY;IAChDlD,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjC7C,UAAU,EACN,4EAA4E,GAC5E,yCACH;IACDC,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,kBAAkB,EAClB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACI,gBAAiB;IACrDnD,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjC7C,UAAU,EAAE,qDAAsD;IAClEC,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,qBAAqB,EACrB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACK,2BAA4B;IAChEpD,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjC7C,UAAU,EACN,0CAA0C,GAC1C,IAAAmD,cAAO,EACH,kBAAkB,iDAAA5E,MAAA,CAC6B6E,kBAAS,CAACC,QAAQ,CAAC,8BAA8B,CAAC,iCAA2B,GACxH,GACR,CACH;IACDpD,OAAO;EAAA,CACV,CACL,CAAC,CACJ,CACL,CAAC,EACDZ,QAAQ,CAAC,YAAY,EAAEiE,uBAAc,EAAE,CACnC/D,QAAQ,CACJ,iBAAiB,EACjB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAAC4D,UAAU,CAACC,eAAgB;IACpD1D,SAAS,EAAEC,oBAAU,CAACwD,UAAW;IACjCvD,UAAU,EAAC,iDAAiD;IAC5DC,OAAO,EAAE;EAAK,CACjB,CACL,CAAC,CACJ,CAAC,EAEFZ,QAAQ,CACJ,OAAO,EACPoE,kBAAS,EACT,IAAArE,iBAAQ,EAAC,CACLG,QAAQ,CACJ,cAAc,EACd,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACmB,WAAW,CAAC4C,SAAU;IAC/C5D,SAAS,EAAEC,oBAAU,CAACe,WAAY;IAClCb,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,eAAe,EACf,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACda,WAAW,EAAC,+IACkE;IAC9EzB,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACc,mBAAoB;IACxD7D,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjCrC,KAAK,EAAE,CACH;MACIC,KAAK,EAAEmD,MAAM,CAAC,EAAE,CAAC;MACjBtF,IAAI,EAAE;IACV,CAAC,EACD;MACImC,KAAK,EAAEmD,MAAM,CAAC,EAAE,CAAC;MACjBtF,IAAI,EAAE;IACV,CAAC,EACD;MACImC,KAAK,EAAEmD,MAAM,CAAC,GAAG,CAAC;MAClBtF,IAAI,EAAE;IACV,CAAC,EACD;MACImC,KAAK,EAAEmD,MAAM,CAAC,GAAG,CAAC;MAClBtF,IAAI,EAAE;IACV,CAAC,CACH;IACFsC,YAAY,EAAEiD;EAAO,CACxB,CACL,CAAC,EACDtE,QAAQ,CACJ,iBAAiB,EACjB,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACda,WAAW,EAAC,uIAC2E;IACvFzB,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACiB,yBAA0B;IAC9DhE,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjCrC,KAAK,EAAEuD,+BAAyB;IAChCnD,YAAY,EAAEiD;EAAO,CACxB,CACL,CAAC,EACDtE,QAAQ,CACJ,sBAAsB,EACtB,KAAK,eACL,IAAAC,eAAA,EAACc,0BAAiB;IACda,WAAW,EAAC,yOAEkC;IAC9CzB,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACmB,0BAA2B;IAC/DlE,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjCrC,KAAK,EAAEyD,+BAAyB;IAChCrD,YAAY,EAAEiD;EAAO,CACxB,CACL,CAAC,EACDtE,QAAQ,CACJ,uBAAuB,EACvB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbC,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACqB,uBAAwB;IAC5DpE,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjC7C,UAAU,EACN,qDAAqD,GACrD,iFAAiF,GACjF,oEACH;IACDC,OAAO;EAAA,CACV,CACL,CAAC,EACDV,QAAQ,CACJ,yBAAyB,EACzB,KAAK,eACL,IAAAC,eAAA,EAACC,yBAAgB;IACbO,UAAU,EAAC,8DAA8D;IACzEN,WAAW,EAAEC,qBAAW,CAACkD,UAAU,CAACsB,yBAA0B;IAC9DrE,SAAS,EAAEC,oBAAU,CAAC8C,UAAW;IACjC5C,OAAO;EAAA,CACV,CACL,CAAC,CACJ,CACL,CAAC,EAEDlC,aAAa,IACTsB,QAAQ,CAAC,MAAM,EAAE+E,mBAAU,EAAE,CACzB7E,QAAQ,CACJ,gBAAgB,EAChB8E,SAAS,eACT,IAAA7E,eAAA,EAAC8E,aAAI;IAACC,GAAG,EAAExG,aAAc;IAACyG,MAAM,EAAC,QAAQ;IAAAC,QAAA,eACrC,IAAAjF,eAAA,EAACkF,eAAM;MAACC,IAAI,EAAE,GAAI;MAAAF,QAAA,EAAC;IAAa,CAAQ;EAAC,CACvC,CACV,CAAC,CACJ,CAAC,EAENpF,QAAQ,CACJ,OAAO,EACPuF,iBAAQ,EACR,IAAAxF,iBAAQ,EAAC,CACLyF,OAAO,CAACpG,OAAO,CAAC,IAAIc,QAAQ,CAAC,oBAAoB,EAAE8E,SAAS,EAAEvF,gBAAgB,CAAC,EAC/E+F,OAAO,CAACpG,OAAO,CAAC,IAAIc,QAAQ,CAAC,mBAAmB,EAAE8E,SAAS,EAAErF,gBAAgB,CAAC,EAC9E6F,OAAO,CAACpG,OAAO,CAAC,IAAIc,QAAQ,CAAC,gBAAgB,EAAE8E,SAAS,EAAEnF,aAAa,CAAC,EACxEK,QAAQ,CAAC,mBAAmB,EAAE8E,SAAS,EAAES,iBAAE,CAACC,UAAU,aAAU,CAACC,OAAO,CAAC,CAC5E,CACL,CAAC,CACJ,CAAC;AACN;AAEO,SAAS3F,QAAQA,CACpB4F,KAAa,EACbC,IAA2B,EAC3B1E,KAA0B,EACd;EACZ,OAAO;IAACyE,KAAK,EAALA,KAAK;IAAEC,IAAI,EAAEA,IAAI,IAAI5F,kBAAW;IAAE6F,QAAQ,EAAE,CAAC;MAACF,KAAK,EAALA,KAAK;MAAEzE,KAAK,EAALA;IAAK,CAAC;EAAC,CAAC;AACzE;AAEO,SAASjB,QAAQA,CACpB0F,KAAa,EACbG,KAA6B,EAC7BC,OAAyB,EACb;EACZ,OAAO;IAACJ,KAAK,EAALA,KAAK;IAAEG,KAAK,EAALA,KAAK;IAAEC,OAAO,EAAPA;EAAO,CAAC;AAClC;AAEO,SAASC,sBAAsBA,CAAA,EAAwB;EAC1D,IAAM5G,OAAO,GAAG,IAAAE,uBAAW,EAAC2G,6BAAqB,CAAC,IAAI,IAAI;EAC1D,IAAM9G,OAAO,GAAG,IAAA+G,kCAAsB,EAAC,CAAC;EACxC,IAAMC,KAAK,GAAG,IAAA7G,uBAAW,EAAC8G,0BAAkB,CAAC;EAE7C,IAAMC,QAAQ,GAAGnH,WAAW,CAACC,OAAO,EAAEC,OAAO,CAAC;EAC9C,IAAMkH,gBAAgB,GAAGxC,kBAAS,CAACyC,mBAAmB,CAAC;IAACpH,OAAO,EAAPA,OAAO;IAAEC,OAAO,EAAPA,OAAO;IAAE+G,KAAK,EAALA;EAAK,CAAC,CAAC;EAEjF,IAAMK,GAAG,GAAG5H,cAAK,CAAC6H,OAAO,CAAC,YAAM;IAC5B,IAAMC,QAAsC,GAAGC,WAAW,CAACL,gBAAgB,CAAC;IAC5E,OAAO,IAAAM,cAAO,EAACP,QAAQ,EAAE,UAACQ,KAAK,EAAK;MAChC,IAAAC,iBAAQ,EAACD,KAAK,EAAE,UAACE,IAAI,EAAK;QACtB,IAAMC,OAAO,GAAGN,QAAQ,CAACK,IAAI,CAACpB,KAAK,CAAC;QACpC,IAAIqB,OAAO,EAAE;UACT,OAAON,QAAQ,CAACK,IAAI,CAACpB,KAAK,CAAC;UAC3B,IAAMsB,WAAW,GAAGN,WAAW,CAACK,OAAO,CAACnB,QAAQ,CAAC;UACjD,IAAAiB,iBAAQ,EAACC,IAAI,CAAClB,QAAQ,EAAE,UAACqB,OAAO,EAAK;YACjC,IAAMC,CAAC,GAAGF,WAAW,CAACC,OAAO,CAACvB,KAAK,CAAC;YACpC,IAAIwB,CAAC,EAAE;cAAA,IAAAC,cAAA;cACH,OAAOH,WAAW,CAACC,OAAO,CAACvB,KAAK,CAAC;cACjC,CAAAyB,cAAA,GAAAF,OAAO,CAAChG,KAAK,EAACmG,IAAI,CAAAC,KAAA,CAAAF,cAAA,MAAAG,2BAAA,EAAIJ,CAAC,CAACjG,KAAK,EAAC;YAClC;UACJ,CAAC,CAAC;UACF,IAAA4F,iBAAQ,EAACG,WAAW,EAAE,UAACC,OAAO,EAAK;YAC/BH,IAAI,CAAClB,QAAQ,CAACwB,IAAI,CAACH,OAAO,CAAC;UAC/B,CAAC,CAAC;QACN;MACJ,CAAC,CAAC;MACF,IAAAJ,iBAAQ,EAACJ,QAAQ,EAAE,UAACK,IAAI,EAAK;QACzBF,KAAK,CAACW,MAAM,CAACX,KAAK,CAACY,MAAM,GAAG,CAAC,EAAE,CAAC,EAAEV,IAAI,CAAC;MAC3C,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC,EAAE,CAACV,QAAQ,EAAEC,gBAAgB,CAAC,CAAC;EAEhC,OAAOE,GAAG;AACd;AAEA,SAASG,WAAWA,CAA4Be,IAAc,EAAE;EAC5D,OAAO,IAAAC,gBAAO,EACVD,IAAI,EACJ,UAACE,GAAG,EAAEC,IAAI,EAAK;IACXD,GAAG,CAACC,IAAI,CAAClC,KAAK,CAAC,GAAGkC,IAAI;IACtB,OAAOD,GAAG;EACd,CAAC,EACD,CAAC,CACL,CAAC;AACL;AAEA,SAAS9I,gBAAgBA,CAAA,EAAG;EACxB,IAAAgJ,YAAA,GAAc,IAAAxI,uBAAW,EAACyI,gCAAkB,CAAC;IAAtCC,GAAG,GAAAF,YAAA,CAAHE,GAAG;EAEV,IAAMC,SAAS,GAAGrJ,cAAK,CAAC6H,OAAO,CAAC,YAAM;IAClC,IAAMyB,WAAW,GAAG,IAAAC,gBAAO,EAACH,GAAG,EAAE,UAACjB,IAAI;MAAA,OAAKxB,OAAO,CAACwB,IAAI,CAACqB,MAAM,CAAC;IAAA,EAAC;IAChE,OAAO,IAAAC,aAAI,EAACH,WAAW,EAAE,UAACnB,IAAI;MAAA,OAAM;QAChC5F,KAAK,EAAE4F,IAAI,CAACuB,EAAE;QACdtJ,IAAI,EAAE+H,IAAI,CAACwB;MACf,CAAC;IAAA,CAAC,CAAC;EACP,CAAC,EAAE,CAACP,GAAG,CAAC,CAAC;EAET,oBACI,IAAA9H,eAAA,EAACc,0BAAiB;IACdZ,WAAW,EAAEC,qBAAW,CAACO,IAAI,CAAC4H,aAAc;IAC5ChI,SAAS,EAAEC,oBAAU,CAACG,IAAK;IAC3BM,KAAK,EAAE+G;EAAU,CACpB,CAAC;AAEV;AAEA,SAAS9E,uBAAuBA,CAAA,EAAc;EAAA,IAAbhC,KAAK,GAAAsH,SAAA,CAAAhB,MAAA,QAAAgB,SAAA,QAAA1D,SAAA,GAAA0D,SAAA,MAAG,GAAG;EACxC,IAAI,CAACtH,KAAK,EAAE;IACR,OAAO,IAAI;EACf;EAEA,IAAI;IACAuH,cAAK,CAACC,KAAK,CAACC,MAAM,CAACzH,KAAK,EAAE,UAAU,CAAC;IACrC,OAAO4D,SAAS;EACpB,CAAC,CAAC,OAAO8D,GAAG,EAAE;IACV,OAAO,CAACA,GAAG,aAAHA,GAAG,uBAAHA,GAAG,CAAYC,OAAO,KAAI,cAAc;EACpD;AACJ;AAEA,SAASxF,kBAAkBA,CAACnC,KAAa,EAAE;EACvC,IAAI,CAACA,KAAK,CAAC4H,UAAU,CAAC,GAAG,CAAC,IAAI5H,KAAK,CAACsG,MAAM,GAAG,CAAC,EAAE;IAC5C,OAAO,kDAAkD;EAC7D;EAEA,OAAO1C,SAAS;AACpB"}