ydb-embedded-ui 8.8.0 → 8.10.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 (95) hide show
  1. package/dist/components/AutoRefreshControl/AutoRefreshControl.d.ts +2 -1
  2. package/dist/components/AutoRefreshControl/AutoRefreshControl.js +2 -1
  3. package/dist/components/AutoRefreshControl/AutoRefreshControl.js.map +1 -1
  4. package/dist/components/AutoRefreshControl/i18n/index.d.ts +1 -1
  5. package/dist/components/EntityPageTitle/EntityPageTitle.d.ts +3 -3
  6. package/dist/components/EntityPageTitle/EntityPageTitle.js +2 -1
  7. package/dist/components/EntityPageTitle/EntityPageTitle.js.map +1 -1
  8. package/dist/components/FullNodeViewer/FullNodeViewer.d.ts +1 -1
  9. package/dist/components/FullNodeViewer/FullNodeViewer.js +32 -14
  10. package/dist/components/FullNodeViewer/FullNodeViewer.js.map +1 -1
  11. package/dist/components/FullNodeViewer/FullNodeViewer.scss +8 -8
  12. package/dist/components/FullNodeViewer/i18n/en.json +18 -0
  13. package/dist/components/FullNodeViewer/i18n/index.d.ts +2 -0
  14. package/dist/components/FullNodeViewer/i18n/index.js +5 -0
  15. package/dist/components/FullNodeViewer/i18n/index.js.map +1 -0
  16. package/dist/components/NodeHostWrapper/NodeHostWrapper.js +1 -1
  17. package/dist/components/NodeHostWrapper/NodeHostWrapper.js.map +1 -1
  18. package/dist/components/PDiskInfo/i18n/index.d.ts +1 -1
  19. package/dist/components/PageMeta/PageMeta.js +2 -1
  20. package/dist/components/PageMeta/PageMeta.js.map +1 -1
  21. package/dist/components/TabletsStatistic/TabletsStatistic.js +2 -2
  22. package/dist/components/TabletsStatistic/TabletsStatistic.js.map +1 -1
  23. package/dist/components/VDisk/utils.js +6 -5
  24. package/dist/components/VDisk/utils.js.map +1 -1
  25. package/dist/components/VDiskInfo/i18n/index.d.ts +1 -1
  26. package/dist/components/VDiskPopup/VDiskPopup.js +1 -1
  27. package/dist/components/VDiskPopup/VDiskPopup.js.map +1 -1
  28. package/dist/components/nodesColumns/i18n/index.d.ts +1 -1
  29. package/dist/containers/AppWithClusters/AppWithClusters.js +0 -3
  30. package/dist/containers/AppWithClusters/AppWithClusters.js.map +1 -1
  31. package/dist/containers/Header/breadcrumbs.js +2 -2
  32. package/dist/containers/Header/breadcrumbs.js.map +1 -1
  33. package/dist/containers/Node/Node.d.ts +1 -7
  34. package/dist/containers/Node/Node.js +70 -65
  35. package/dist/containers/Node/Node.js.map +1 -1
  36. package/dist/containers/Node/Node.scss +18 -44
  37. package/dist/containers/Node/NodePages.d.ts +25 -9
  38. package/dist/containers/Node/NodePages.js +24 -16
  39. package/dist/containers/Node/NodePages.js.map +1 -1
  40. package/dist/containers/Node/i18n/en.json +7 -1
  41. package/dist/containers/Node/i18n/index.d.ts +1 -1
  42. package/dist/containers/Node/i18n/index.js +1 -2
  43. package/dist/containers/Node/i18n/index.js.map +1 -1
  44. package/dist/containers/Tenant/Diagnostics/Diagnostics.js +5 -1
  45. package/dist/containers/Tenant/Diagnostics/Diagnostics.js.map +1 -1
  46. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js +26 -8
  47. package/dist/containers/Tenant/Diagnostics/TenantOverview/Healthcheck/HealthcheckPreview.js.map +1 -1
  48. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor.js +17 -30
  49. package/dist/containers/Tenant/Query/QueryEditor/YqlEditor.js.map +1 -1
  50. package/dist/containers/Tenant/Query/QueryEditor/helpers.d.ts +15 -9
  51. package/dist/containers/Tenant/Query/QueryEditor/helpers.js +39 -10
  52. package/dist/containers/Tenant/Query/QueryEditor/helpers.js.map +1 -1
  53. package/dist/containers/UserSettings/i18n/en.json +2 -0
  54. package/dist/containers/UserSettings/i18n/index.d.ts +1 -1
  55. package/dist/containers/UserSettings/settings.d.ts +3 -1
  56. package/dist/containers/UserSettings/settings.js +13 -3
  57. package/dist/containers/UserSettings/settings.js.map +1 -1
  58. package/dist/routes.d.ts +1 -2
  59. package/dist/routes.js +0 -1
  60. package/dist/routes.js.map +1 -1
  61. package/dist/services/settings.d.ts +1 -0
  62. package/dist/services/settings.js +2 -1
  63. package/dist/services/settings.js.map +1 -1
  64. package/dist/store/reducers/storage/utils.js +3 -1
  65. package/dist/store/reducers/storage/utils.js.map +1 -1
  66. package/dist/utils/constants.d.ts +1 -1
  67. package/dist/utils/constants.js +1 -1
  68. package/dist/utils/constants.js.map +1 -1
  69. package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js +7 -0
  70. package/dist/utils/disks/__test__/calculateVDiskSeverity.test.js.map +1 -1
  71. package/dist/utils/disks/calculateVDiskSeverity.js +1 -1
  72. package/dist/utils/disks/calculateVDiskSeverity.js.map +1 -1
  73. package/dist/utils/hooks/useNodeDeveloperUIHref.d.ts +2 -0
  74. package/dist/utils/hooks/useNodeDeveloperUIHref.js +23 -0
  75. package/dist/utils/hooks/useNodeDeveloperUIHref.js.map +1 -0
  76. package/dist/utils/monaco/yql/generateSuggestions.d.ts +16 -37
  77. package/dist/utils/monaco/yql/generateSuggestions.js +22 -379
  78. package/dist/utils/monaco/yql/generateSuggestions.js.map +1 -1
  79. package/dist/utils/monaco/yql/yql.completionItemProvider.js +55 -12
  80. package/dist/utils/monaco/yql/yql.completionItemProvider.js.map +1 -1
  81. package/package.json +6 -5
  82. package/dist/components/BasicNodeViewer/BasicNodeViewer.d.ts +0 -10
  83. package/dist/components/BasicNodeViewer/BasicNodeViewer.js +0 -28
  84. package/dist/components/BasicNodeViewer/BasicNodeViewer.js.map +0 -1
  85. package/dist/components/BasicNodeViewer/BasicNodeViewer.scss +0 -35
  86. package/dist/components/BasicNodeViewer/index.d.ts +0 -1
  87. package/dist/components/BasicNodeViewer/index.js +0 -2
  88. package/dist/components/BasicNodeViewer/index.js.map +0 -1
  89. package/dist/containers/AppWithClusters/ExtendedNode/ExtendedNode.d.ts +0 -4
  90. package/dist/containers/AppWithClusters/ExtendedNode/ExtendedNode.js +0 -9
  91. package/dist/containers/AppWithClusters/ExtendedNode/ExtendedNode.js.map +0 -1
  92. package/dist/containers/Node/i18n/ru.json +0 -4
  93. package/dist/utils/monaco/yql/yqlSuggestions.d.ts +0 -4
  94. package/dist/utils/monaco/yql/yqlSuggestions.js +0 -96
  95. package/dist/utils/monaco/yql/yqlSuggestions.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"calculateVDiskSeverity.js","sourceRoot":"","sources":["../../../src/utils/disks/calculateVDiskSeverity.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,oCAAoC,EACpC,sBAAsB,EACtB,oBAAoB,GACvB,MAAM,aAAa,CAAC;AAErB,MAAM,UAAU,sBAAsB,CAOpC,KAAQ;IACN,MAAM,EAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAC,GAAG,KAAK,CAAC;IAE/D,iGAAiG;IACjG,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAChC,oCAAoC,CAAC,MAAM,EAC3C,gBAAgB,CAAC,WAAW,CAAC,CAChC,CAAC;IAEF,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;IAEpF,yEAAyE;IACzE,IAAI,CAAC,UAAU,IAAI,QAAQ,KAAK,oCAAoC,CAAC,KAAK,EAAE,CAAC;QACzE,QAAQ,GAAG,oCAAoC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAwB;;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,OAAO,MAAA,oBAAoB,CAAC,UAAU,CAAC,mCAAI,sBAAsB,CAAC;AACtE,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;;IACnC,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,OAAO,MAAA,oCAAoC,CAAC,KAAK,CAAC,mCAAI,sBAAsB,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"calculateVDiskSeverity.js","sourceRoot":"","sources":["../../../src/utils/disks/calculateVDiskSeverity.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,oCAAoC,EACpC,sBAAsB,EACtB,oBAAoB,GACvB,MAAM,aAAa,CAAC;AAErB,MAAM,UAAU,sBAAsB,CAOpC,KAAQ;IACN,MAAM,EAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAC,GAAG,KAAK,CAAC;IAE/D,iGAAiG;IACjG,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAChC,oCAAoC,CAAC,MAAM,EAC3C,gBAAgB,CAAC,WAAW,CAAC,CAChC,CAAC;IAEF,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;IAEpF,yEAAyE;IACzE,IAAI,UAAU,KAAK,KAAK,IAAI,QAAQ,KAAK,oCAAoC,CAAC,KAAK,EAAE,CAAC;QAClF,QAAQ,GAAG,oCAAoC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAwB;;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,OAAO,MAAA,oBAAoB,CAAC,UAAU,CAAC,mCAAI,sBAAsB,CAAC;AACtE,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;;IACnC,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,OAAO,MAAA,oCAAoC,CAAC,KAAK,CAAC,mCAAI,sBAAsB,CAAC;AACjF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { PreparedNode } from '../../store/reducers/node/types';
2
+ export declare function useNodeDeveloperUIHref(node?: PreparedNode): string | undefined;
@@ -0,0 +1,23 @@
1
+ import { useAdditionalNodeProps } from '../../containers/AppWithClusters/useClusterData';
2
+ import { selectIsUserAllowedToMakeChanges } from '../../store/reducers/authentication/authentication';
3
+ import { useClusterBaseInfo } from '../../store/reducers/cluster/cluster';
4
+ import { createDeveloperUIInternalPageHref, createDeveloperUILinkWithNodeId, } from '../developerUI/developerUI';
5
+ import { useTypedSelector } from './useTypedSelector';
6
+ export function useNodeDeveloperUIHref(node) {
7
+ const { balancer } = useClusterBaseInfo();
8
+ const { additionalNodesProps } = useAdditionalNodeProps({ balancer });
9
+ const isUserAllowedToMakeChanges = useTypedSelector(selectIsUserAllowedToMakeChanges);
10
+ if (!isUserAllowedToMakeChanges) {
11
+ return undefined;
12
+ }
13
+ if (additionalNodesProps === null || additionalNodesProps === void 0 ? void 0 : additionalNodesProps.getNodeRef) {
14
+ const developerUIHref = additionalNodesProps.getNodeRef(node);
15
+ return developerUIHref ? createDeveloperUIInternalPageHref(developerUIHref) : undefined;
16
+ }
17
+ if (node === null || node === void 0 ? void 0 : node.NodeId) {
18
+ const developerUIHref = createDeveloperUILinkWithNodeId(node.NodeId);
19
+ return createDeveloperUIInternalPageHref(developerUIHref);
20
+ }
21
+ return undefined;
22
+ }
23
+ //# sourceMappingURL=useNodeDeveloperUIHref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNodeDeveloperUIHref.js","sourceRoot":"","sources":["../../../src/utils/hooks/useNodeDeveloperUIHref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,iDAAiD,CAAC;AACvF,OAAO,EAAC,gCAAgC,EAAC,MAAM,oDAAoD,CAAC;AACpG,OAAO,EAAC,kBAAkB,EAAC,MAAM,sCAAsC,CAAC;AAExE,OAAO,EACH,iCAAiC,EACjC,+BAA+B,GAClC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAEpD,MAAM,UAAU,sBAAsB,CAAC,IAAmB;IACtD,MAAM,EAAC,QAAQ,EAAC,GAAG,kBAAkB,EAAE,CAAC;IACxC,MAAM,EAAC,oBAAoB,EAAC,GAAG,sBAAsB,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC;IAClE,MAAM,0BAA0B,GAAG,gBAAgB,CAAC,gCAAgC,CAAC,CAAC;IAEtF,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,UAAU,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,OAAO,eAAe,CAAC,CAAC,CAAC,iCAAiC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,CAAC;IAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAC;QACf,MAAM,eAAe,GAAG,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrE,OAAO,iCAAiC,CAAC,eAAe,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC"}
@@ -1,37 +1,16 @@
1
- import type { ColumnAliasSuggestion, KeywordSuggestion, VariableSuggestion } from '@gravity-ui/websql-autocomplete/shared';
2
- import type { YQLEntity, YqlAutocompleteResult } from '@gravity-ui/websql-autocomplete/yql';
3
- import * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
4
- export declare function generateColumnsSuggestion(rangeToInsertSuggestion: monaco.IRange, suggestColumns: YqlAutocompleteResult['suggestColumns'], suggestVariables: YqlAutocompleteResult['suggestVariables'], database: string): Promise<monaco.languages.CompletionItem[]>;
5
- export declare function generateColumnAliasesSuggestion(rangeToInsertSuggestion: monaco.IRange, suggestColumnAliases?: ColumnAliasSuggestion[]): {
6
- label: string;
7
- insertText: string;
8
- kind: monaco.languages.CompletionItemKind;
9
- detail: string;
10
- range: monaco.IRange;
11
- sortText: string;
12
- }[];
13
- export declare function generateKeywordsSuggestion(rangeToInsertSuggestion: monaco.IRange, suggestKeywords?: KeywordSuggestion[]): {
14
- label: string;
15
- insertText: string;
16
- kind: monaco.languages.CompletionItemKind;
17
- detail: string;
18
- range: monaco.IRange;
19
- sortText: string;
20
- }[];
21
- export declare function generateVariableSuggestion(rangeToInsertSuggestion: monaco.IRange, suggestVariables?: VariableSuggestion[]): {
22
- label: string;
23
- insertText: string;
24
- kind: monaco.languages.CompletionItemKind;
25
- detail: string;
26
- range: monaco.IRange;
27
- sortText: string;
28
- }[];
29
- export declare function generateEntitiesSuggestion(rangeToInsertSuggestion: monaco.IRange, suggestEntities: YQLEntity[], database: string, prefix?: string): Promise<monaco.languages.CompletionItem[]>;
30
- export declare function generateSimpleFunctionsSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
31
- export declare function generateSimpleTypesSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
32
- export declare function generateUdfSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
33
- export declare function generateWindowFunctionsSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
34
- export declare function generateTableFunctionsSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
35
- export declare function generateAggregateFunctionsSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
36
- export declare function generatePragmasSuggestion(rangeToInsertSuggestion: monaco.IRange): Promise<monaco.languages.CompletionItem[]>;
37
- export declare function generateEntitySettingsSuggestion(rangeToInsertSuggestion: monaco.IRange, entityType: YQLEntity): Promise<monaco.languages.CompletionItem[]>;
1
+ import type { YQLEntity } from '@gravity-ui/websql-autocomplete/yql';
2
+ import type { AutocompleteColumn, AutocompleteEntityType, TAutocompleteEntity } from '../../../types/api/autocomplete';
3
+ export declare function checkIsDirectory(type: AutocompleteEntityType): boolean;
4
+ export declare function filterAutocompleteEntities(autocompleteEntities: TAutocompleteEntity[] | undefined, suggestions: YQLEntity[]): TAutocompleteEntity[] | undefined;
5
+ export declare function removeBackticks(value: string): string;
6
+ export declare function normalizeEntityPrefix(value: string | undefined, database: string): string;
7
+ export declare function getSimpleFunctions(): Promise<string[]>;
8
+ export declare function getWindowFunctions(): Promise<string[]>;
9
+ export declare function getTableFunctions(): Promise<never[]>;
10
+ export declare function getAggregateFunctions(): Promise<string[]>;
11
+ export declare function getPragmas(): Promise<string[]>;
12
+ export declare function getEntitySettings(entityType: YQLEntity): Promise<string[]>;
13
+ export declare function getUdfs(): Promise<string[]>;
14
+ export declare function getSimpleTypes(): Promise<string[]>;
15
+ export declare function getColumnDetails(col: AutocompleteColumn): string;
16
+ export declare function normalizeEntityNames(entities: string[], database: string): string[];
@@ -1,37 +1,4 @@
1
- import * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
2
- import { isAutocompleteColumn } from '../../../types/api/autocomplete';
3
1
  import { AggregateFunctions, EntitySettings, Pragmas, SimpleFunctions, SimpleTypes, TableFunction, Udfs, WindowFunctions, } from './constants';
4
- const CompletionItemKind = {
5
- Method: 0,
6
- Function: 1,
7
- Constructor: 2,
8
- Field: 3,
9
- Variable: 4,
10
- Class: 5,
11
- Struct: 6,
12
- Interface: 7,
13
- Module: 8,
14
- Property: 9,
15
- Event: 10,
16
- Operator: 11,
17
- Unit: 12,
18
- Value: 13,
19
- Constant: 14,
20
- Enum: 15,
21
- EnumMember: 16,
22
- Keyword: 17,
23
- Text: 18,
24
- Color: 19,
25
- File: 20,
26
- Reference: 21,
27
- Customcolor: 22,
28
- Folder: 23,
29
- TypeParameter: 24,
30
- User: 25,
31
- Issue: 26,
32
- Snippet: 27,
33
- };
34
- const re = /[\s'"-/@]/;
35
2
  const suggestionEntityToAutocomplete = {
36
3
  externalDataSource: ['external_data_source'],
37
4
  externalTable: ['external_table'],
@@ -44,7 +11,10 @@ const suggestionEntityToAutocomplete = {
44
11
  };
45
12
  const commonSuggestionEntities = ['dir', 'unknown', 'ext_sub_domain'];
46
13
  const directoryTypes = ['dir', 'ext_sub_domain'];
47
- function filterAutocompleteEntities(autocompleteEntities, suggestions) {
14
+ export function checkIsDirectory(type) {
15
+ return directoryTypes.includes(type);
16
+ }
17
+ export function filterAutocompleteEntities(autocompleteEntities, suggestions) {
48
18
  const suggestionsSet = suggestions.reduce((acc, el) => {
49
19
  const autocompleteEntity = suggestionEntityToAutocomplete[el];
50
20
  if (autocompleteEntity) {
@@ -54,14 +24,7 @@ function filterAutocompleteEntities(autocompleteEntities, suggestions) {
54
24
  }, new Set(commonSuggestionEntities));
55
25
  return autocompleteEntities === null || autocompleteEntities === void 0 ? void 0 : autocompleteEntities.filter(({ Type }) => suggestionsSet.has(Type));
56
26
  }
57
- function wrapStringToBackticks(value) {
58
- let result = value;
59
- if (value.match(re)) {
60
- result = `\`${value}\``;
61
- }
62
- return result;
63
- }
64
- function removeBackticks(value) {
27
+ export function removeBackticks(value) {
65
28
  let sliceStart = 0;
66
29
  let sliceEnd = value.length;
67
30
  if (value.startsWith('`')) {
@@ -72,16 +35,13 @@ function removeBackticks(value) {
72
35
  }
73
36
  return value.slice(sliceStart, sliceEnd);
74
37
  }
75
- function isVariable(value) {
76
- return value.startsWith('$');
77
- }
78
38
  function removeStartSlash(value) {
79
39
  if (value.startsWith('/')) {
80
40
  return value.slice(1);
81
41
  }
82
42
  return value;
83
43
  }
84
- function normalizeEntityPrefix(value = '', database) {
44
+ export function normalizeEntityPrefix(value = '', database) {
85
45
  const valueWithoutBackticks = removeBackticks(value);
86
46
  if (!valueWithoutBackticks.startsWith('/')) {
87
47
  return valueWithoutBackticks;
@@ -93,53 +53,31 @@ function normalizeEntityPrefix(value = '', database) {
93
53
  }
94
54
  return removeStartSlash(cleanedValue);
95
55
  }
96
- const SuggestionsWeight = {
97
- suggestTemplates: 0,
98
- suggestPragmas: 1,
99
- suggestEntity: 2,
100
- suggestAllColumns: 3,
101
- suggestColumns: 4,
102
- suggestColumnAliases: 5,
103
- suggestVariables: 6,
104
- suggestTableIndexes: 7,
105
- suggestTableHints: 8,
106
- suggestEntitySettings: 9,
107
- suggestKeywords: 10,
108
- suggestAggregateFunctions: 11,
109
- suggestTableFunctions: 12,
110
- suggestWindowFunctions: 13,
111
- suggestFunctions: 14,
112
- suggestSimpleTypes: 15,
113
- suggestUdfs: 16,
114
- };
115
- function getSuggestionIndex(suggestionType) {
116
- return SuggestionsWeight[suggestionType];
117
- }
118
- async function getSimpleFunctions() {
56
+ export async function getSimpleFunctions() {
119
57
  return SimpleFunctions;
120
58
  }
121
- async function getWindowFunctions() {
59
+ export async function getWindowFunctions() {
122
60
  return WindowFunctions;
123
61
  }
124
- async function getTableFunctions() {
62
+ export async function getTableFunctions() {
125
63
  return TableFunction;
126
64
  }
127
- async function getAggregateFunctions() {
65
+ export async function getAggregateFunctions() {
128
66
  return AggregateFunctions;
129
67
  }
130
- async function getPragmas() {
68
+ export async function getPragmas() {
131
69
  return Pragmas;
132
70
  }
133
- async function getEntitySettings(entityType) {
71
+ export async function getEntitySettings(entityType) {
134
72
  return EntitySettings[entityType];
135
73
  }
136
- async function getUdfs() {
74
+ export async function getUdfs() {
137
75
  return Udfs;
138
76
  }
139
- async function getSimpleTypes() {
77
+ export async function getSimpleTypes() {
140
78
  return SimpleTypes;
141
79
  }
142
- function getColumnDetails(col) {
80
+ export function getColumnDetails(col) {
143
81
  const { PKIndex, NotNull, Default } = col;
144
82
  const details = [];
145
83
  if (PKIndex !== undefined) {
@@ -155,309 +93,14 @@ function getColumnDetails(col) {
155
93
  // return `Column${detailsString}`;
156
94
  return detailsString;
157
95
  }
158
- export async function generateColumnsSuggestion(rangeToInsertSuggestion, suggestColumns, suggestVariables, database) {
159
- var _a, _b, _c, _d;
160
- if (!(suggestColumns === null || suggestColumns === void 0 ? void 0 : suggestColumns.tables)) {
161
- return [];
162
- }
163
- const suggestions = [];
164
- const normalizedColumns = suggestColumns.all ? [] : undefined;
165
- const multi = suggestColumns.tables.length > 1;
166
- const normalizedSuggestions = (_b = (_a = suggestColumns.tables) === null || _a === void 0 ? void 0 : _a.map((entity) => {
167
- let normalizedEntityName = removeBackticks(entity.name);
168
- if (!normalizedEntityName.endsWith('/') && !isVariable(normalizedEntityName)) {
96
+ export function normalizeEntityNames(entities, database) {
97
+ var _a;
98
+ return ((_a = entities.map((entity) => {
99
+ let normalizedEntityName = removeBackticks(entity);
100
+ if (!normalizedEntityName.endsWith('/')) {
169
101
  normalizedEntityName = `${normalizedEntityName}/`;
170
102
  }
171
- return { ...entity, name: normalizeEntityPrefix(normalizedEntityName, database) };
172
- })) !== null && _b !== void 0 ? _b : [];
173
- const normalizedTableNames = normalizedSuggestions.map((entity) => entity.name);
174
- // remove duplicates if any
175
- const filteredTableNames = Array.from(new Set(normalizedTableNames));
176
- const tableSources = filteredTableNames.filter((name) => !isVariable(name));
177
- let autocompleteEntities = [];
178
- if (tableSources.length) {
179
- const autocompleteResponse = await window.api.viewer.autocomplete({
180
- database,
181
- table: tableSources,
182
- limit: 1000,
183
- });
184
- if (autocompleteResponse.Success) {
185
- autocompleteEntities = (_c = autocompleteResponse.Result.Entities) !== null && _c !== void 0 ? _c : [];
186
- }
187
- }
188
- const variableSources = filteredTableNames.filter(isVariable);
189
- const columnsFromVariable = [];
190
- if (variableSources.length) {
191
- variableSources.forEach((source) => {
192
- var _a, _b, _c, _d;
193
- const newColumns = (_d = (_c = (_b = (_a = suggestVariables === null || suggestVariables === void 0 ? void 0 : suggestVariables
194
- // Variable name from suggestions doesn't include $ sign
195
- .find((variable) => source.slice(1) === variable.name)) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.columns) === null || _c === void 0 ? void 0 : _c.map((col) => ({
196
- Name: col,
197
- Type: 'column',
198
- Parent: source,
199
- }))) !== null && _d !== void 0 ? _d : [];
200
- columnsFromVariable.push(...newColumns);
201
- });
202
- }
203
- const predefinedColumns = normalizedSuggestions.reduce((acc, entity) => {
204
- const columns = entity.columns;
205
- if (columns) {
206
- acc.push(...columns.map((col) => ({
207
- Name: col,
208
- Type: 'column',
209
- Parent: entity.name,
210
- })));
211
- }
212
- return acc;
213
- }, []);
214
- const tableNameToAliasMap = (_d = suggestColumns.tables) === null || _d === void 0 ? void 0 : _d.reduce((acc, entity) => {
215
- var _a;
216
- const normalizedEntityName = normalizeEntityPrefix(removeBackticks(entity.name), database);
217
- const aliases = (_a = acc[normalizedEntityName]) !== null && _a !== void 0 ? _a : [];
218
- if (entity.alias) {
219
- aliases.push(entity.alias);
220
- }
221
- acc[normalizedEntityName] = aliases;
222
- return acc;
223
- }, {});
224
- [...autocompleteEntities, ...columnsFromVariable, ...predefinedColumns].forEach((col) => {
225
- if (!isAutocompleteColumn(col)) {
226
- return;
227
- }
228
- const columnDetails = getColumnDetails(col);
229
- const normalizedName = wrapStringToBackticks(col.Name);
230
- const normalizedParentName = normalizeEntityPrefix(col.Parent, database);
231
- const aliases = tableNameToAliasMap[normalizedParentName];
232
- const currentSuggestionIndex = suggestions.length;
233
- if (aliases === null || aliases === void 0 ? void 0 : aliases.length) {
234
- aliases.forEach((a) => {
235
- const columnNameSuggestion = `${a}.${normalizedName}`;
236
- suggestions.push({
237
- label: { label: columnNameSuggestion, description: columnDetails },
238
- insertText: columnNameSuggestion,
239
- kind: CompletionItemKind.Variable,
240
- detail: 'Column',
241
- range: rangeToInsertSuggestion,
242
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestColumns')) +
243
- suggestionIndexToWeight(currentSuggestionIndex),
244
- });
245
- normalizedColumns === null || normalizedColumns === void 0 ? void 0 : normalizedColumns.push(columnNameSuggestion);
246
- });
247
- }
248
- else {
249
- let columnNameSuggestion = normalizedName;
250
- if (multi) {
251
- columnNameSuggestion = `${wrapStringToBackticks(normalizedParentName)}.${normalizedName}`;
252
- }
253
- suggestions.push({
254
- label: {
255
- label: columnNameSuggestion,
256
- description: columnDetails,
257
- },
258
- insertText: columnNameSuggestion,
259
- kind: CompletionItemKind.Variable,
260
- detail: 'Column',
261
- range: rangeToInsertSuggestion,
262
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestColumns')) +
263
- suggestionIndexToWeight(currentSuggestionIndex),
264
- });
265
- normalizedColumns === null || normalizedColumns === void 0 ? void 0 : normalizedColumns.push(columnNameSuggestion);
266
- }
267
- });
268
- if (normalizedColumns && normalizedColumns.length > 1) {
269
- const allColumns = normalizedColumns.join(', ');
270
- suggestions.push({
271
- label: allColumns,
272
- insertText: allColumns,
273
- kind: CompletionItemKind.Variable,
274
- range: rangeToInsertSuggestion,
275
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestAllColumns')),
276
- });
277
- }
278
- return suggestions;
279
- }
280
- export function generateColumnAliasesSuggestion(rangeToInsertSuggestion, suggestColumnAliases) {
281
- if (!suggestColumnAliases) {
282
- return [];
283
- }
284
- return suggestColumnAliases === null || suggestColumnAliases === void 0 ? void 0 : suggestColumnAliases.map((columnAliasSuggestion) => ({
285
- label: columnAliasSuggestion.name,
286
- insertText: columnAliasSuggestion.name,
287
- kind: CompletionItemKind.Variable,
288
- detail: 'Column alias',
289
- range: rangeToInsertSuggestion,
290
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestColumnAliases')),
291
- }));
292
- }
293
- export function generateKeywordsSuggestion(rangeToInsertSuggestion, suggestKeywords) {
294
- if (!suggestKeywords) {
295
- return [];
296
- }
297
- return suggestKeywords.map((keywordSuggestion) => ({
298
- label: keywordSuggestion.value,
299
- insertText: keywordSuggestion.value,
300
- kind: CompletionItemKind.Keyword,
301
- detail: 'Keyword',
302
- range: rangeToInsertSuggestion,
303
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestKeywords')),
304
- }));
305
- }
306
- export function generateVariableSuggestion(rangeToInsertSuggestion, suggestVariables) {
307
- if (!suggestVariables) {
308
- return [];
309
- }
310
- return suggestVariables.map(({ name }) => {
311
- const variable = '$' + name;
312
- return {
313
- label: variable,
314
- insertText: variable,
315
- kind: CompletionItemKind.Variable,
316
- detail: 'Variable',
317
- range: rangeToInsertSuggestion,
318
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestVariables')),
319
- };
320
- });
321
- }
322
- export async function generateEntitiesSuggestion(rangeToInsertSuggestion, suggestEntities, database, prefix) {
323
- const normalizedPrefix = normalizeEntityPrefix(prefix, database);
324
- const data = await window.api.viewer.autocomplete({
325
- database,
326
- prefix: normalizedPrefix,
327
- limit: 1000,
328
- });
329
- const withBackticks = prefix === null || prefix === void 0 ? void 0 : prefix.startsWith('`');
330
- if (data.Success) {
331
- const filteredEntities = filterAutocompleteEntities(data.Result.Entities, suggestEntities);
332
- if (!filteredEntities) {
333
- return [];
334
- }
335
- return filteredEntities.reduce((acc, { Name, Type }) => {
336
- const isDir = directoryTypes.includes(Type);
337
- const label = isDir ? `${Name}/` : Name;
338
- let labelAsSnippet;
339
- if (isDir && !withBackticks) {
340
- labelAsSnippet = `\`${label}$0\``;
341
- }
342
- const suggestionIndex = acc.length;
343
- acc.push({
344
- label,
345
- insertText: labelAsSnippet !== null && labelAsSnippet !== void 0 ? labelAsSnippet : label,
346
- kind: isDir ? CompletionItemKind.Folder : CompletionItemKind.Text,
347
- insertTextRules: labelAsSnippet
348
- ? monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet
349
- : monaco.languages.CompletionItemInsertTextRule.None,
350
- detail: Type,
351
- range: rangeToInsertSuggestion,
352
- command: label.endsWith('/')
353
- ? { id: 'editor.action.triggerSuggest', title: '' }
354
- : undefined,
355
- // first argument is responsible for sorting groups of suggestions, the second - to preserve suggestions order returned from backend
356
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestEntity')) +
357
- suggestionIndexToWeight(suggestionIndex),
358
- });
359
- return acc;
360
- }, []);
361
- }
362
- return [];
363
- }
364
- export async function generateSimpleFunctionsSuggestion(rangeToInsertSuggestion) {
365
- const functions = await getSimpleFunctions();
366
- return functions.map((el) => ({
367
- label: el,
368
- insertText: el,
369
- kind: CompletionItemKind.Function,
370
- detail: 'Function',
371
- range: rangeToInsertSuggestion,
372
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestFunctions')),
373
- }));
374
- }
375
- export async function generateSimpleTypesSuggestion(rangeToInsertSuggestion) {
376
- const simpleTypes = await getSimpleTypes();
377
- return simpleTypes.map((el) => ({
378
- label: el,
379
- insertText: el,
380
- kind: CompletionItemKind.TypeParameter,
381
- detail: 'Type',
382
- range: rangeToInsertSuggestion,
383
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestSimpleTypes')),
384
- }));
385
- }
386
- export async function generateUdfSuggestion(rangeToInsertSuggestion) {
387
- const udfs = await getUdfs();
388
- return udfs.map((el) => ({
389
- label: el,
390
- insertText: el,
391
- kind: CompletionItemKind.Function,
392
- detail: 'UDF',
393
- range: rangeToInsertSuggestion,
394
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestUdfs')),
395
- }));
396
- }
397
- export async function generateWindowFunctionsSuggestion(rangeToInsertSuggestion) {
398
- const windowFunctions = await getWindowFunctions();
399
- return windowFunctions.map((el) => ({
400
- label: el,
401
- insertText: el,
402
- kind: CompletionItemKind.Function,
403
- detail: 'Window function',
404
- range: rangeToInsertSuggestion,
405
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestWindowFunctions')),
406
- }));
407
- }
408
- export async function generateTableFunctionsSuggestion(rangeToInsertSuggestion) {
409
- const tableFunctions = await getTableFunctions();
410
- return tableFunctions.map((el) => ({
411
- label: el,
412
- insertText: el,
413
- kind: CompletionItemKind.Function,
414
- detail: 'Table function',
415
- range: rangeToInsertSuggestion,
416
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestTableFunctions')),
417
- }));
418
- }
419
- export async function generateAggregateFunctionsSuggestion(rangeToInsertSuggestion) {
420
- const aggreagteFunctions = await getAggregateFunctions();
421
- return aggreagteFunctions.map((el) => ({
422
- label: el,
423
- insertText: el,
424
- kind: CompletionItemKind.Function,
425
- detail: 'Aggregate function',
426
- range: rangeToInsertSuggestion,
427
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestAggregateFunctions')),
428
- }));
429
- }
430
- export async function generatePragmasSuggestion(rangeToInsertSuggestion) {
431
- const pragmas = await getPragmas();
432
- return pragmas.map((el) => ({
433
- label: el,
434
- insertText: el,
435
- kind: CompletionItemKind.Module,
436
- detail: 'Pragma',
437
- range: rangeToInsertSuggestion,
438
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestPragmas')),
439
- }));
440
- }
441
- export async function generateEntitySettingsSuggestion(rangeToInsertSuggestion, entityType) {
442
- const entitySettings = await getEntitySettings(entityType);
443
- return entitySettings.map((el) => ({
444
- label: el,
445
- insertText: el,
446
- kind: CompletionItemKind.Property,
447
- detail: 'Setting',
448
- range: rangeToInsertSuggestion,
449
- sortText: suggestionIndexToWeight(getSuggestionIndex('suggestEntitySettings')),
450
- }));
451
- }
452
- const alphabet = 'abcdefghijklmnopqrstuvwxyz';
453
- function suggestionIndexToWeight(index) {
454
- const characterInsideAlphabet = alphabet[index];
455
- if (characterInsideAlphabet) {
456
- return characterInsideAlphabet;
457
- }
458
- const duplicateTimes = Math.floor(index / alphabet.length);
459
- const remains = index % alphabet.length;
460
- const lastCharacter = alphabet.slice(-1);
461
- return lastCharacter.repeat(duplicateTimes) + alphabet[remains];
103
+ return normalizeEntityPrefix(normalizedEntityName, database);
104
+ })) !== null && _a !== void 0 ? _a : []);
462
105
  }
463
106
  //# sourceMappingURL=generateSuggestions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateSuggestions.js","sourceRoot":"","sources":["../../../../src/utils/monaco/yql/generateSuggestions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateSuggestions.js","sourceRoot":"","sources":["../../../../src/utils/monaco/yql/generateSuggestions.ts"],"names":[],"mappings":"AAQA,OAAO,EACH,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,eAAe,EACf,WAAW,EACX,aAAa,EACb,IAAI,EACJ,eAAe,GAClB,MAAM,aAAa,CAAC;AAErB,MAAM,8BAA8B,GAAyD;IACzF,kBAAkB,EAAE,CAAC,sBAAsB,CAAC;IAC5C,aAAa,EAAE,CAAC,gBAAgB,CAAC;IACjC,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,KAAK,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC;IAChC,UAAU,EAAE,CAAC,cAAc,CAAC;IAC5B,KAAK,EAAE,CAAC,kBAAkB,CAAC;IAC3B,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,UAAU,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC;CACvC,CAAC;AAEF,MAAM,wBAAwB,GAA6B,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;AAEhG,MAAM,cAAc,GAA6B,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAE3E,MAAM,UAAU,gBAAgB,CAAC,IAA4B;IACzD,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,0BAA0B,CACtC,oBAAuD,EACvD,WAAwB;IAExB,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;QAClD,MAAM,kBAAkB,GAAG,8BAA8B,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,kBAAkB,EAAE,CAAC;YACrB,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC,EAAE,IAAI,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACtC,OAAO,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAa;IACzC,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,UAAU,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACnC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAK,GAAG,EAAE,EAAE,QAAgB;IAC9D,MAAM,qBAAqB,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,OAAO,qBAAqB,CAAC;IACjC,CAAC;IACD,IAAI,YAAY,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QAC3C,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACpC,OAAO,eAAe,CAAC;AAC3B,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACpC,OAAO,eAAe,CAAC;AAC3B,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACnC,OAAO,aAAa,CAAC;AACzB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACvC,OAAO,kBAAkB,CAAC;AAC9B,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,UAAU;IAC5B,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAAqB;IACzD,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC;AACtC,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,OAAO;IACzB,OAAO,IAAI,CAAC;AAChB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,cAAc;IAChC,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAuB;IACpD,MAAM,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAC,GAAG,GAAG,CAAC;IACxC,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,mCAAmC;IACnC,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAkB,EAAE,QAAgB;;IACrE,OAAO,CACH,MAAA,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACpB,IAAI,oBAAoB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,oBAAoB,GAAG,GAAG,oBAAoB,GAAG,CAAC;QACtD,CAAC;QACD,OAAO,qBAAqB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC,CAAC,mCAAI,EAAE,CACX,CAAC;AACN,CAAC"}