@artel/artc 0.6.25275 → 0.6.25277

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 (54) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +22 -26
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +282 -143
  5. package/build/{chunk-TYQHZ7HH.js → chunk-DKZTCPRN.js} +1 -1
  6. package/build/{chunk-DB2CJDOL.js → chunk-EVYL6VFM.js} +30646 -30435
  7. package/build/{chunk-ORP2UF4D.js → chunk-QK3TWMY2.js} +2 -2
  8. package/build/types/analysis/AnalyzedTextTranslationPackage.d.ts +1 -1
  9. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +49 -125
  10. package/build/types/analysis/Analyzer.d.ts +9 -2
  11. package/build/types/analysis/DiagnosticCollector.d.ts +0 -8
  12. package/build/types/analysis/semantic-context/SemanticContextBase.d.ts +3 -1
  13. package/build/types/analysis/semantic-context/SemanticContextBasedEntityHidingMatcher.d.ts +1 -2
  14. package/build/types/analysis/semantic-context/SourceFileSemanticContext.d.ts +5 -1
  15. package/build/types/common/Name.d.ts +3 -1
  16. package/build/types/common/Query.d.ts +3 -0
  17. package/build/types/diagnostic/DiagnosticCode.d.ts +184 -173
  18. package/build/types/emitter/Emitter.d.ts +0 -1
  19. package/build/types/emitter/Entities.d.ts +1 -0
  20. package/build/types/emitter/IrFactory.d.ts +1 -1
  21. package/build/types/entities/Entity.d.ts +16 -9
  22. package/build/types/entities/EntityLocalizationContext.d.ts +11 -10
  23. package/build/types/entities/PackageMembers.d.ts +2 -1
  24. package/build/types/entities/index.d.ts +4 -0
  25. package/build/types/entities/interfaces/AliasTypeEntity.d.ts +1 -0
  26. package/build/types/entities/interfaces/FunctionTypeEntity.d.ts +1 -0
  27. package/build/types/entities/interfaces/PackageEntity.d.ts +1 -0
  28. package/build/types/entities/interfaces/StructuredTypeEntity.d.ts +1 -0
  29. package/build/types/entities/interfaces/TypeExtensionEntity.d.ts +1 -0
  30. package/build/types/entities/interfaces/VariantTypeEntity.d.ts +1 -0
  31. package/build/types/entities/translated/TranslatedAliasTypeEntity.d.ts +9 -6
  32. package/build/types/entities/translated/TranslatedConstructorEntity.d.ts +21 -9
  33. package/build/types/entities/translated/TranslatedDereferenceOperatorEntity.d.ts +4 -4
  34. package/build/types/entities/translated/TranslatedDestructorEntity.d.ts +4 -4
  35. package/build/types/entities/translated/TranslatedFunctionEntity.d.ts +10 -8
  36. package/build/types/entities/translated/TranslatedFunctionTypeEntity.d.ts +11 -11
  37. package/build/types/entities/translated/TranslatedGetterEntity.d.ts +5 -5
  38. package/build/types/entities/translated/TranslatedIndexerEntity.d.ts +5 -3
  39. package/build/types/entities/translated/TranslatedOperatorEntity.d.ts +5 -3
  40. package/build/types/entities/translated/TranslatedPackageEntity.d.ts +4 -3
  41. package/build/types/entities/translated/TranslatedSetterEntity.d.ts +5 -5
  42. package/build/types/entities/translated/TranslatedStructuredTypeEntity.d.ts +9 -8
  43. package/build/types/entities/translated/TranslatedTypeExtensionEntity.d.ts +4 -5
  44. package/build/types/entities/translated/TranslatedTypeParameterEntity.d.ts +6 -5
  45. package/build/types/entities/translated/TranslatedVariableEntity.d.ts +10 -11
  46. package/build/types/entities/translated/TranslatedVariantTypeEntity.d.ts +11 -11
  47. package/build/types/project/SourcePackage.d.ts +2 -1
  48. package/build/types/services/NodeSemanticInfo.d.ts +6 -0
  49. package/build/types/tree/Nodes.d.ts +3 -3
  50. package/build/types/ts-interop/Entities.d.ts +1 -2
  51. package/build/types/ts-interop/TsInteropContext.d.ts +1 -2
  52. package/build/types/ts-interop/TsPackageContents.d.ts +1 -2
  53. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +1 -2
  54. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Compiler
3
- } from "./chunk-TYQHZ7HH.js";
3
+ } from "./chunk-DKZTCPRN.js";
4
4
  import {
5
5
  ArtelVersion,
6
6
  Cached,
@@ -14,7 +14,7 @@ import {
14
14
  __async,
15
15
  performanceMeasurementStageNames,
16
16
  performanceMeasurementStages
17
- } from "./chunk-DB2CJDOL.js";
17
+ } from "./chunk-EVYL6VFM.js";
18
18
 
19
19
  // source/executor/FileSystemUri.ts
20
20
  import { platform } from "os";
@@ -8,7 +8,7 @@ export declare class AnalyzedTextTranslationPackage {
8
8
  private readonly targetPackage;
9
9
  private readonly entitiesByTextKey;
10
10
  constructor(analyzer: Analyzer, package_: TextTranslationPackage, targetPackage: PackageEntity);
11
- isPrimaryTranslation(): boolean;
11
+ isPrimary(): boolean;
12
12
  getTargetPackage(): PackageEntity;
13
13
  getDefinition(): TextTranslationPackage;
14
14
  getTargetPackageName(): PackageName;
@@ -1,143 +1,67 @@
1
- import { Name, PackageLocale } from '../common/index.js';
2
- import { Diagnostic } from '../diagnostic/Diagnostic.js';
1
+ import { PackageLocale } from '../common/index.js';
2
+ import { DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
3
3
  import { EntityLocalizationContext } from '../entities/EntityLocalizationContext.js';
4
- import { AliasTypeEntity, ConstructorEntity, DestructorEntity, FieldEntity, FunctionEntity, FunctionTypeEntity, IndexerEntity, MethodEntity, NamedEntity, NamedPackageMemberEntity, NamedTypeMemberEntity, OperatorEntity, PackageEntity, PackageFunctionEntity, PackageFunctionTypeEntity, PackageTypeEntity, PackageVariableEntity, ParameterEntity, StructuredTypeEntity, TypeParameterEntity, VariantTypeEntity } from '../entities/index.js';
5
- import { PackageName, TranslationPackage } from '../project/index.js';
4
+ import { AnonymousTypeEntity, Entity, EntityContainingParameter, EntityContainingTypeParameter, PackageEntity, PackageEntityMembers, PackageMemberEntity, ParameterEntity, TypeEntityMembers, TypeMemberEntity, TypeParameterEntity, TypeWithMembersOrExtensionEntity } from '../entities/index.js';
5
+ import { PackageName, SourceFile, TranslationPackage } from '../project/index.js';
6
6
  import * as tree from '../tree/index.js';
7
7
  import { Analyzer } from './Analyzer.js';
8
- import { Translation } from './Translation.js';
9
8
  export declare class AnalyzedTranslationPackage {
9
+ private static readonly maxDisplayedNotTranslatedEntitiesCount;
10
+ readonly localizationContext: EntityLocalizationContext;
11
+ readonly translatedTargetPackage: PackageEntity;
10
12
  private readonly analyzer;
11
13
  private readonly package_;
12
14
  private readonly targetPackage;
13
- readonly entityLocalizationContext: EntityLocalizationContext;
15
+ private readonly diagnostics;
14
16
  private readonly localizedPackageByOriginalReferencedPackage;
15
- private readonly members;
16
- private readonly translatedTypeEntityMembers;
17
- private readonly functionSignatureTranslations;
18
- private readonly operatorSignatureTranslations;
19
- private readonly functionTypeSignatureTranslations;
20
- private readonly constructorSignatureTranslations;
21
- private readonly indexerSignatureTranslations;
22
- private readonly translatedTypeHeaders;
23
- private readonly typeTranslationByEntity;
17
+ private readonly translatedEntityByOriginal;
18
+ private hasCreatedPackageMembers;
19
+ private readonly typesOrExtensionsWithCreatedMembers;
20
+ private readonly packageMemberTranslationTargetsByNode;
21
+ private readonly typeMemberTranslationTargetsByNode;
24
22
  constructor(analyzer: Analyzer, package_: TranslationPackage, targetPackage: PackageEntity);
25
23
  getTargetPackage(): PackageEntity;
26
- getTranslatedTargetPackage(): PackageEntity;
27
24
  getDefinition(): TranslationPackage;
28
25
  getTranslatedName(): PackageName;
29
26
  getTranslationLocale(): PackageLocale;
30
27
  getLocalizedPackageByOriginalReferencedPackage(): ReadonlyMap<PackageEntity, PackageEntity>;
31
- getMembers(): TranslatedPackageMembers;
32
- getTypeEntityMembers(typeEntity: PackageTypeEntity): TranslatedTypeEntityMembers | undefined;
33
- getPackageVariableTranslationTarget(node: tree.PackageVariableTranslationDeclaration): GetSingleTranslationTargetResult<PackageVariableEntity>;
34
- getPackageFunctionTranslationTargets(node: tree.PackageFunctionTranslationDeclaration): GetMultipleTranslationTargetsResult<PackageFunctionEntity>;
35
- getFunctionTypeTranslationTarget(node: tree.FunctionTypeTranslationDeclaration): GetSingleTranslationTargetResult<PackageFunctionTypeEntity>;
36
- getTypeTranslationTarget(node: tree.TypeTranslationDeclaration): GetSingleTranslationTargetResult<PackageTypeEntity>;
37
- /**
38
- * В случае, когда имя переменной экземпляра совпадает с именем статической переменной, перевод будет иметь две цели.
39
- */
40
- getFieldOrVariantTranslationTargets(node: tree.FieldOrVariantTranslation): GetMultipleTranslationTargetsResult<FieldEntity>;
41
- getMethodTranslationTargets(node: tree.MethodTranslation): GetMultipleTranslationTargetsResult<MethodEntity>;
42
- getConstructorTranslationTargets(node: tree.ConstructorTranslation): GetMultipleTranslationTargetsResult<ConstructorEntity>;
43
- getIndexerTranslationTargets(node: tree.IndexerTranslation): GetMultipleTranslationTargetsResult<IndexerEntity>;
44
- getFunctionSignature(entity: FunctionEntity): TranslatedSubprogramSignature | undefined;
45
- getOperatorSignature(entity: OperatorEntity): TranslatedSubprogramSignature | undefined;
46
- getPackageFunctionSignature(entity: PackageFunctionEntity): TranslatedSubprogramSignature | undefined;
47
- getMethodSignature(entity: MethodEntity): TranslatedSubprogramSignature | undefined;
48
- getFunctionTypeSignature(entity: FunctionTypeEntity): TranslatedSubprogramSignature | undefined;
49
- getConstructorSignature(entity: ConstructorEntity): TranslatedSubprogramSignature | undefined;
50
- getDestructorSignature(entity: DestructorEntity): TranslatedSubprogramSignature | undefined;
51
- getIndexerSignature(entity: IndexerEntity): TranslatedSubprogramSignature | undefined;
52
- getTypeHeader(entity: TypeEntityWithHeaderLocalization): TranslatedTypeHeader | undefined;
53
- getEntityName(entity: NamedEntity): TranslatedName | undefined;
28
+ accumulateDiagnosticsForSourceFile(sourceFile: SourceFile, diagnostics: DiagnosticAcceptor): void;
29
+ getPackageMemberTranslationTargets(node: tree.TranslationDeclaration): TranslationTargets<PackageMemberEntity> | undefined;
30
+ getTypeMemberTranslationTargets(node: tree.TypeMemberTranslation): TranslationTargets<TypeMemberEntity> | undefined;
31
+ getTranslatedPackageMember(entity: PackageMemberEntity): PackageMemberEntity;
32
+ getTranslatedTypeMember(entity: TypeMemberEntity): TypeMemberEntity;
33
+ getTranslatedAnonymousTypeEntity(entity: AnonymousTypeEntity): AnonymousTypeEntity;
34
+ createTranslatedPackageMembers(): PackageEntityMembers;
35
+ createTranslatedTypeOrExtensionMembers(translatedTypeEntity: TypeWithMembersOrExtensionEntity, typeTranslationDeclaration: tree.TypeTranslationDeclaration | undefined): TypeEntityMembers;
36
+ createTranslatedTypeParameters(original: readonly TypeParameterEntity[], node: tree.TranslationTypeParameterList | undefined, containingEntity: EntityContainingTypeParameter): readonly TypeParameterEntity[];
37
+ createTranslatedParameters(original: readonly ParameterEntity[], node: tree.TranslationParameterList | undefined, containingEntity: EntityContainingParameter): readonly ParameterEntity[];
38
+ static isPackageMemberEntityThatShouldBeTranslatedByUser(entity: PackageMemberEntity): boolean;
39
+ static isTypeMemberEntityThatShouldBeTranslatedByUser(entity: TypeMemberEntity): boolean;
40
+ private ensurePackageMembersHaveBeenCreated;
41
+ private ensureTypeMembersHaveBeenCreated;
42
+ private reportPackageMemberHasAlreadyBeenTranslatedDiagnostic;
43
+ private reportTypeMemberHasAlreadyBeenTranslatedDiagnostic;
44
+ private createTranslatedNamedPackageMemberEntityWithMissingTranslation;
45
+ private createTranslatedTypeMemberEntityWithMissingTranslation;
46
+ private getPackageVariableTranslationTargets;
47
+ private getPackageFunctionTranslationTargets;
48
+ private getFunctionTypeTranslationTargets;
49
+ private getTypeTranslationTargets;
50
+ private getFieldOrVariantTranslationTargets;
51
+ private getMethodTranslationTargets;
52
+ private tryGetOperatorTranslationTargets;
53
+ private getConstructorTranslationTargets;
54
+ private getIndexerTranslationTargets;
55
+ private checkTranslatedTypeParameterCount;
56
+ private checkTranslatedParameterCount;
57
+ private areTypeParameterEntitiesEqualToTranslationTypeParameters;
58
+ private areParameterEntitiesEqualToTranslationParameters;
59
+ private createNotTranslatedEntitiesDiagnostic;
54
60
  private createLocalizedPackageByOriginalReferencedPackage;
55
- private createPackageMembers;
56
- private createTypeEntityMembers;
57
- private createTranslatedSubprogramSignatureFromPackageFunctionTranslation;
58
- private createTranslatedSubprogramSignatureFromMethodTranslation;
59
- private createTranslatedSubprogramSignatureFromFunctionTypeTranslation;
60
- private createTranslatedSubprogramSignatureFromConstructorTranslation;
61
- private createTranslatedSubprogramSignatureFromIndexerTranslation;
62
- private createTranslatedSubprogramSignatureForDefaultConstructor;
63
- private createTranslatedTypeSignature;
61
+ private createTranslatedDefaultConstructorEntity;
64
62
  private enumerateTranslationsDeclarations;
65
- private getTypeEntityTranslationNode;
66
63
  }
67
- export declare class TranslatedPackageMembers {
68
- private readonly namedMembers;
69
- private readonly nameByEntity_;
70
- private get nameByEntity();
71
- constructor(namedMembers: readonly TranslatedNamedPackageMember[]);
72
- getNamedMembers(): readonly TranslatedNamedPackageMember[];
73
- getMemberName(entity: NamedPackageMemberEntity): TranslatedName | undefined;
74
- }
75
- export declare class TranslatedNamedPackageMember {
76
- readonly value: NamedPackageMemberEntity;
77
- readonly name: TranslatedName;
78
- constructor(value: NamedPackageMemberEntity, name: TranslatedName);
79
- }
80
- export declare class TranslatedTypeEntityMembers {
81
- private readonly namedMembers;
82
- readonly translationPackage: AnalyzedTranslationPackage;
83
- private readonly nameByEntity_;
84
- private get nameByEntity();
85
- constructor(namedMembers: readonly TranslatedNamedTypeEntityMember[], translationPackage: AnalyzedTranslationPackage);
86
- getNamedMembers(): readonly TranslatedNamedTypeEntityMember[];
87
- getMemberName(entity: NamedTypeMemberEntity): TranslatedName | undefined;
88
- }
89
- export declare class TranslatedNamedTypeEntityMember {
90
- readonly value: NamedTypeMemberEntity;
91
- readonly name: TranslatedName;
92
- constructor(value: NamedTypeMemberEntity, name: TranslatedName);
93
- }
94
- export declare class TranslatedSubprogramSignature {
95
- readonly translation: Translation;
96
- readonly typeParameters: readonly TranslatedTypeParameter[];
97
- readonly parameters: readonly TranslatedParameter[];
98
- constructor(translation: Translation, typeParameters: readonly TranslatedTypeParameter[], parameters: readonly TranslatedParameter[]);
99
- getTypeParameterName(entity: TypeParameterEntity): TranslatedName | undefined;
100
- getParameterName(entity: ParameterEntity): TranslatedName | undefined;
101
- }
102
- export declare class TranslatedTypeParameter {
103
- readonly value: TypeParameterEntity;
104
- readonly name: TranslatedName;
105
- constructor(value: TypeParameterEntity, name: TranslatedName);
106
- }
107
- export declare class TranslatedParameter {
108
- readonly value: ParameterEntity;
109
- readonly name: TranslatedName;
110
- constructor(value: ParameterEntity, name: TranslatedName);
111
- }
112
- export declare class TranslatedTypeHeader {
113
- readonly translation: Translation;
114
- readonly typeParameters: readonly TranslatedTypeParameter[];
115
- constructor(translation: Translation, typeParameters: readonly TranslatedTypeParameter[]);
116
- getTypeParameterName(entity: TypeParameterEntity): TranslatedName | undefined;
117
- }
118
- export type TypeEntityWithHeaderLocalization = StructuredTypeEntity | VariantTypeEntity | AliasTypeEntity;
119
- export declare class GetSingleTranslationTargetResult<T> {
120
- readonly target: T | undefined;
121
- readonly diagnostics: readonly Diagnostic[];
122
- readonly isValid: boolean;
123
- get validTarget(): T | undefined;
124
- constructor(target: T | undefined, diagnostics: readonly Diagnostic[], isValid: boolean);
125
- static valid<T>(target: T): GetSingleTranslationTargetResult<T>;
126
- static invalid<T>(diagnostics: readonly Diagnostic[]): GetSingleTranslationTargetResult<T>;
127
- }
128
- export declare class GetMultipleTranslationTargetsResult<T> {
129
- readonly targets: readonly T[];
130
- readonly diagnostics: readonly Diagnostic[];
131
- readonly isAmbiguous: boolean;
132
- readonly isValid: boolean;
133
- get validUnambiguousTargets(): readonly T[];
134
- constructor(targets: readonly T[], diagnostics: readonly Diagnostic[], isAmbiguous: boolean, isValid: boolean);
135
- static valid<T>(targets: readonly T[]): GetMultipleTranslationTargetsResult<T>;
136
- static invalid<T>(diagnostics: readonly Diagnostic[]): GetMultipleTranslationTargetsResult<T>;
137
- static invalid<T>(diagnostics: readonly Diagnostic[], targets: readonly T[], isAmbiguous: boolean): GetMultipleTranslationTargetsResult<T>;
138
- }
139
- export declare class TranslatedName {
140
- readonly value: Name;
141
- readonly translation: Translation;
142
- constructor(value: Name, translation: Translation);
64
+ export interface TranslationTargets<T extends Entity = Entity> {
65
+ readonly values: readonly T[];
66
+ readonly areSuitable: boolean;
143
67
  }
@@ -95,7 +95,10 @@ export declare class Analyzer {
95
95
  private readonly extendedTypes;
96
96
  private readonly analyzedTranslationPackages;
97
97
  private readonly analyzedTextTranslationPackages;
98
- private textTranslationPackagesMap;
98
+ private textTranslationPackagesByTargetPackage;
99
+ private primaryTextTranslationPackageByTargetPackage;
100
+ private primaryTextTranslationEntityByLocalizableText;
101
+ private primaryTextTranslationEntityByLocalizableTextTemplate;
99
102
  private readonly linkedMultiPlatformPackagesByPlatform;
100
103
  private readonly isFunctionGeneratorCheckResults;
101
104
  private readonly namedDeclarationsUsageCountResults;
@@ -267,7 +270,11 @@ export declare class Analyzer {
267
270
  enumerateAnalyzedTextTranslationPackages(): Query<AnalyzedTextTranslationPackage>;
268
271
  getLinkedMultiPlatformPackagesByPlatform(entity: e.PackageEntity): ReadonlyMap<PlatformKind, LinkedMultiPlatformPackage> | undefined;
269
272
  getLinkedMultiPlatformPackage(entity: e.PackageEntity, platform: PlatformKind): LinkedMultiPlatformPackage | undefined;
270
- getTextTranslationPackagesMap(): ReadonlyMap<e.PackageEntity, ReadonlyMap<string, AnalyzedTextTranslationPackage>>;
273
+ getTextTranslationPackagesMap(): ReadonlyMap<e.PackageEntity, AnalyzedTextTranslationPackage[]>;
274
+ getTextTranslationPackagesOfTargetPackage(targetPackage: e.PackageEntity): AnalyzedTextTranslationPackage[] | undefined;
275
+ getPrimaryTextTranslationPackageOfTargetPackage(targetPackage: e.PackageEntity): AnalyzedTextTranslationPackage | undefined;
276
+ getPrimaryTextTranslationEntityByLocalizableText(node: tree.LocalizableTextLiteral): e.TextTranslationEntity | undefined;
277
+ getPrimaryTextTranslationEntityByLocalizableTextTemplate(node: tree.LocalizableTextTemplateLiteral): e.TextTranslationEntity | undefined;
271
278
  instantiateType(entity: e.TypeEntity, typeArguments: readonly types.Type[] | undefined): types.Type;
272
279
  instantiateTypeWithSubstitutions(entity: e.TypeEntity, substitutions: types.Substitutions): types.Type;
273
280
  instantiateTypeByIdentitySubstitution(entity: e.TypeEntity): types.Type;
@@ -9,7 +9,6 @@ export declare class DiagnosticCollector {
9
9
  private readonly diagnosticArgumentFactory;
10
10
  private readonly translationPackage_;
11
11
  private readonly textTranslationPackage_;
12
- private readonly primaryTextTranslationPackage_;
13
12
  private readonly diagnostics;
14
13
  private readonly diagnosticAcceptor;
15
14
  private namedDeclarationsUsageMap;
@@ -17,7 +16,6 @@ export declare class DiagnosticCollector {
17
16
  private readonly standardTypes_;
18
17
  private get translationPackage();
19
18
  private get textTranslationPackage();
20
- private get primaryTextTranslationPackage();
21
19
  private get isInterfacePackageFile();
22
20
  private get standardTypes();
23
21
  constructor(analyzer: Analyzer, sourceFile: project.SourceFile);
@@ -30,12 +28,6 @@ export declare class DiagnosticCollector {
30
28
  private checkDereferenceExpression;
31
29
  private checkIndexedAccessExpression;
32
30
  private checkCallExpression;
33
- private addNotTranslatedPackageMembersDiagnostics;
34
- private collectNotTranslatedPackageMembers;
35
- private addNotTranslatedTypeMembersDiagnostics;
36
- private collectNotTranslatedTypeMembers;
37
- private isNotTranslatedEntity;
38
- private createNotTranslatedEntitiesDiagnostic;
39
31
  private addNotTranslatedTextsDiagnostics;
40
32
  private collectNotTranslatedTexts;
41
33
  private createNotTranslatedTextsDiagnostic;
@@ -1,12 +1,13 @@
1
1
  import { Name } from '../../common/index.js';
2
2
  import { IEntityHidingMatcher } from '../../entities/EntityHiding.js';
3
- import { ConstructorEntity, OperatorKind, PackageEntity, TypeEntity, TypeEntityWithMembers, TypeExtensionEntity } from '../../entities/index.js';
3
+ import { ConstructorEntity, OperatorKind, PackageEntity, TextTranslationEntity, TypeEntity, TypeEntityWithMembers, TypeExtensionEntity } from '../../entities/index.js';
4
4
  import { SourceFile } from '../../project/SourceFile.js';
5
5
  import * as tree from '../../tree/index.js';
6
6
  import * as types from '../../types/index.js';
7
7
  import { Analyzer } from '../Analyzer.js';
8
8
  import { DiagnosticArgumentFactory } from '../DiagnosticArgumentFactory.js';
9
9
  import { FunctionDeclaration, GetterDeclaration, RegularOrBlockFunctionLiteral, SetterDeclaration, SubprogramDeclarationOrLiteral } from '../NodeTypeUtils.js';
10
+ import { TextKey } from '../TextIdentity.js';
10
11
  import { NamedDeclaration, TypeOrContainerWithTypes } from './Declarations.js';
11
12
  import { SemanticContext } from './SemanticContext.js';
12
13
  export declare abstract class SemanticContextBase {
@@ -36,6 +37,7 @@ export declare abstract class SemanticContextBase {
36
37
  getOperators(noInstanceMembers?: boolean): readonly types.Operator[];
37
38
  getOperatorsByKind(kind: OperatorKind, noInstanceMembers?: boolean): readonly types.Operator[];
38
39
  getTypeExtensionsByType(type: TypeEntity): readonly TypeExtensionEntity[];
40
+ getPrimaryTextTranslationEntityByTextKey(key: TextKey): TextTranslationEntity | undefined;
39
41
  private enumerateSemanticContexts;
40
42
  private getSourceFileContext;
41
43
  }
@@ -1,5 +1,4 @@
1
- import { BaseEntityHidingMatcher } from '../../entities/BaseEntityHidingMatcher.js';
2
- import { PackageEntity } from '../../entities/index.js';
1
+ import { BaseEntityHidingMatcher, PackageEntity } from '../../entities/index.js';
3
2
  import { TypeEntity } from '../../entities/TypeEntity.js';
4
3
  import { SourceFile } from '../../project/SourceFile.js';
5
4
  import { SemanticContext } from './SemanticContext.js';
@@ -1,10 +1,11 @@
1
1
  import { Name } from '../../common/index.js';
2
2
  import { IEntityHidingMatcher } from '../../entities/EntityHiding.js';
3
- import { PackageEntity, TypeEntity, TypeExtensionEntity } from '../../entities/index.js';
3
+ import { PackageEntity, TextTranslationEntity, TypeEntity, TypeExtensionEntity } from '../../entities/index.js';
4
4
  import { SourceFile } from '../../project/SourceFile.js';
5
5
  import * as tree from '../../tree/index.js';
6
6
  import { Analyzer } from '../Analyzer.js';
7
7
  import { DiagnosticArgumentFactory } from '../DiagnosticArgumentFactory.js';
8
+ import { TextKey } from '../TextIdentity.js';
8
9
  import { NamedDeclaration, TypeOrContainerWithTypes } from './Declarations.js';
9
10
  import { SemanticContext } from './SemanticContext.js';
10
11
  import { SemanticContextBase, SubprogramInfo, TryStatementContextKind, TypeOrTypeExtension } from './SemanticContextBase.js';
@@ -20,7 +21,9 @@ export declare class SourceFileSemanticContext extends SemanticContextBase {
20
21
  private readonly packageNameSegments;
21
22
  private readonly packageNameSegmentsByKey_;
22
23
  private readonly diagnosticArgumentFactory;
24
+ private readonly primaryTextTranslationPackage_;
23
25
  private get packageNameSegmentsByKey();
26
+ private get primaryTextTranslationPackage();
24
27
  constructor(analyzer: Analyzer, node: tree.SourceFile);
25
28
  getContainingSubprogram(): SubprogramInfo | undefined;
26
29
  getContainingTypeOrTypeExtension(): TypeOrTypeExtension | undefined;
@@ -34,6 +37,7 @@ export declare class SourceFileSemanticContext extends SemanticContextBase {
34
37
  getOwnNamedDeclarations(_noInstanceMembers?: boolean, hidingMatcher?: IEntityHidingMatcher): NamedDeclaration[];
35
38
  getOwnNamedDeclarationsByName(name: Name, _noInstanceMembers?: boolean, hidingMatcher?: IEntityHidingMatcher): readonly NamedDeclaration[];
36
39
  getOwnTypeExtensionsByType(type: TypeEntity, hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
40
+ getPrimaryTextTranslationEntityByTextKey(key: TextKey): TextTranslationEntity | undefined;
37
41
  private convertPackageMemberToNamedDeclaration;
38
42
  private convertPackageAliasToTypeOrContainerWithTypes;
39
43
  private convertPackageMemberToTypeOrContainerWithTypes;
@@ -1,3 +1,4 @@
1
+ import { Displayable } from './Displayable.js';
1
2
  export declare const enum NameFlags {
2
3
  /**
3
4
  * Обычное имя, например: имя, имя-первое, имяПервое, имя-1, имя_первое.
@@ -26,7 +27,7 @@ export declare const enum NameFlags {
26
27
  */
27
28
  PreferKebabCase = 32
28
29
  }
29
- export declare class Name {
30
+ export declare class Name implements Displayable {
30
31
  /**
31
32
  * Исходное имя без одиночных кавычек и без символов '\`' в конце.
32
33
  */
@@ -65,6 +66,7 @@ export declare class Name {
65
66
  considerEqual(other: Name, considerBackQuotes?: boolean): boolean;
66
67
  toString(): string;
67
68
  getPreferredUnescapedOriginal(flags: NameFlags): string;
69
+ getDisplayText(): string;
68
70
  static parse(original: string, initialFlags?: NameFlags): Name;
69
71
  private static toUnescapedOriginal;
70
72
  }
@@ -15,6 +15,7 @@ export declare abstract class Query<T> implements Iterable<T> {
15
15
  static mapAndFilter<T, K>(source: Iterable<T>, fn: (t: T) => K | undefined): Query<K>;
16
16
  static zip<T, TRight, TResult>(source: Iterable<T>, other: Iterable<TRight>, fn: (left: T, right: TRight) => TResult): Query<TResult>;
17
17
  static zipLongest<T, TRight, TResult>(source: Iterable<T>, other: Iterable<TRight>, fn: (left: T | undefined, right: TRight | undefined) => TResult): Query<TResult>;
18
+ static zipLeft<T, TRight, TResult>(source: Iterable<T>, other: Iterable<TRight> | undefined, fn: (left: T, right: TRight | undefined) => TResult): Query<TResult>;
18
19
  static all<T>(source: Iterable<T>, fn: (t: T) => boolean): boolean;
19
20
  static any<T>(source: Iterable<T>, fn: (t: T) => boolean): boolean;
20
21
  static groupByToMap<T, K>(source: Iterable<T>, keySelector: (t: T) => K): Map<K, T[]>;
@@ -40,12 +41,14 @@ export declare abstract class Query<T> implements Iterable<T> {
40
41
  mapAndFilter<K>(fn: (t: T) => K | undefined): Query<K>;
41
42
  zip<TRight, TResult>(other: Iterable<TRight>, fn: (left: T, right: TRight) => TResult): Query<TResult>;
42
43
  zipLongest<TRight, TResult>(other: Iterable<TRight>, fn: (left: T | undefined, right: TRight | undefined) => TResult): Query<TResult>;
44
+ zipLeft<TRight, TResult>(other: Iterable<TRight> | undefined, fn: (left: T, right: TRight | undefined) => TResult): Query<TResult>;
43
45
  unzip(): T extends readonly [infer TLeft, infer TRight] ? [TLeft[], TRight[]] : never;
44
46
  toNullable(): ([T] extends [(infer K) | undefined] ? K[] : never) | undefined;
45
47
  all(fn: (t: T) => boolean): boolean;
46
48
  any(fn: (t: T) => boolean): boolean;
47
49
  skipWhile(fn: (t: T) => boolean): Query<T>;
48
50
  skip(count: number): Query<T>;
51
+ take(n: number): Query<T>;
49
52
  takeWhile(fn: (t: T) => boolean): Query<T>;
50
53
  scan<TState, K>(initial: TState, fn: (state: TState, t: T) => K | undefined): Query<K>;
51
54
  reduce<K>(initial: K, fn: (state: K, t: T) => K): K;