@artel/artc 0.6.25280 → 0.6.25281

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 (30) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +2 -2
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +30 -19
  5. package/build/{chunk-YIFO3FBO.js → chunk-7OXU5662.js} +2 -2
  6. package/build/{chunk-W3UL6UED.js → chunk-NVHCHE3R.js} +3 -2
  7. package/build/{chunk-LLI2DYRX.js → chunk-TIWNEKIS.js} +398 -346
  8. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +3 -3
  9. package/build/types/analysis/Analyzer.d.ts +10 -15
  10. package/build/types/analysis/{PackageMemberNameConflictsValidator.d.ts → PackageMemberConflictsValidator.d.ts} +7 -3
  11. package/build/types/analysis/ResolvedTextTranslationPackage.d.ts +9 -0
  12. package/build/types/analysis/SourceFileMembers.d.ts +9 -2
  13. package/build/types/analysis/SourcePackageDependencyGraph.d.ts +4 -0
  14. package/build/types/analysis/semantic-context/SemanticContextBase.d.ts +1 -1
  15. package/build/types/analysis/semantic-context/SourceFileSemanticContext.d.ts +1 -1
  16. package/build/types/diagnostic/DiagnosticCode.d.ts +11 -11
  17. package/build/types/entities/Entity.d.ts +1 -1
  18. package/build/types/entities/EntityLocalizationContext.d.ts +2 -1
  19. package/build/types/entities/PackageMembers.d.ts +10 -3
  20. package/build/types/entities/interfaces/TextTranslationEntity.d.ts +2 -1
  21. package/build/types/entities/source/SourceTextTranslationEntity.d.ts +2 -1
  22. package/build/types/entities/source/SourceTypeExtensionEntity.d.ts +4 -0
  23. package/build/types/project/PackageContent.d.ts +1 -1
  24. package/build/types/project/SourcePackage.d.ts +3 -1
  25. package/build/types/project/configuration/ConfigurationConverter.d.ts +1 -1
  26. package/build/types/project/configuration/types/PackageConfigurationEn.d.ts +4 -4
  27. package/build/types/project/configuration/types/PackageConfigurationRu.d.ts +4 -4
  28. package/build/types/services/EvaluatableExpressionService.d.ts +1 -1
  29. package/package.json +1 -1
  30. package/build/types/analysis/AnalyzedTextTranslationPackage.d.ts +0 -20
@@ -1,6 +1,6 @@
1
1
  import { PackageLocale } from '../common/index.js';
2
2
  import { DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
3
- import { EntityLocalizationContext } from '../entities/EntityLocalizationContext.js';
3
+ import { EntityLocalizationContext, LocalizablePackageMemberEntity } from '../entities/EntityLocalizationContext.js';
4
4
  import { AnonymousTypeEntity, Entity, EntityContainingParameter, EntityContainingTypeParameter, PackageEntity, PackageEntityMembers, PackageMemberEntity, ParameterEntity, TypeEntityMembers, TypeMemberEntity, TypeParameterEntity, TypeWithMembersOrExtensionEntity } from '../entities/index.js';
5
5
  import { PackageName, SourceFile, TranslationPackage } from '../project/index.js';
6
6
  import * as tree from '../tree/index.js';
@@ -28,9 +28,9 @@ export declare class AnalyzedTranslationPackage {
28
28
  getTranslatedPackageMembers(): PackageEntityMembers;
29
29
  ensureAllLazyDiagnosticsReportedForSourceFile(sourceFile: SourceFile): void;
30
30
  accumulateDiagnosticForSourceFile(sourceFile: SourceFile, diagnostics: DiagnosticAcceptor): void;
31
- getPackageMemberTranslationTargets(node: tree.TranslationDeclaration): TranslationTargets<PackageMemberEntity> | undefined;
31
+ getPackageMemberTranslationTargets(node: tree.TranslationDeclaration): TranslationTargets<LocalizablePackageMemberEntity> | undefined;
32
32
  getTypeMemberTranslationTargets(node: tree.TypeMemberTranslation): TranslationTargets<TypeMemberEntity> | undefined;
33
- getTranslatedPackageMember(entity: PackageMemberEntity): PackageMemberEntity;
33
+ getTranslatedPackageMember(entity: LocalizablePackageMemberEntity): LocalizablePackageMemberEntity;
34
34
  getTranslatedTypeMember(entity: TypeMemberEntity): TypeMemberEntity;
35
35
  getTranslatedAnonymousTypeEntity(entity: AnonymousTypeEntity): AnonymousTypeEntity;
36
36
  getTranslatedTypeOrExtensionMembers(translatedTypeEntity: TypeWithMembersOrExtensionEntity): TypeEntityMembers;
@@ -13,7 +13,7 @@ import { TsInteropContext, TsProgramState } from '../ts-interop/TsInteropContext
13
13
  import * as types from '../types/index.js';
14
14
  import { TypeFactory } from '../types/index.js';
15
15
  import { AccessedFunction } from './AccessedFunction.js';
16
- import { AnalyzedTextTranslationPackage } from './AnalyzedTextTranslationPackage.js';
16
+ import { ResolvedTextTranslationPackage } from './ResolvedTextTranslationPackage.js';
17
17
  import { AnalyzedTranslationPackage } from './AnalyzedTranslationPackage.js';
18
18
  import { ArgumentToParameterMatchResult, MatchResultParameter } from './ArgumentToParameterMatchResult.js';
19
19
  import * as autotypeCallExpressionMeaning from './AutotypeCallExpressionMeaning.js';
@@ -93,13 +93,11 @@ export declare class Analyzer {
93
93
  private readonly prefixUnaryExpressionOperatorResolutionResults;
94
94
  private readonly binaryExpressionUserDefinableOperatorResolutionResults;
95
95
  private readonly assignmentStatementOperatorResolutionResults;
96
- private readonly extendedTypes;
97
96
  private readonly analyzedTranslationPackages;
98
- private readonly analyzedTextTranslationPackages;
97
+ private readonly resolvedTextTranslationPackages;
99
98
  private textTranslationPackagesByTargetPackage;
100
99
  private primaryTextTranslationPackageByTargetPackage;
101
- private primaryTextTranslationEntityByLocalizableText;
102
- private primaryTextTranslationEntityByLocalizableTextTemplate;
100
+ private resolvedLocalizableTexts;
103
101
  private readonly linkedMultiPlatformPackagesByPlatform;
104
102
  private readonly isFunctionGeneratorCheckResults;
105
103
  private readonly namedDeclarationsUsageCountResults;
@@ -261,20 +259,18 @@ export declare class Analyzer {
261
259
  excludeTypeFromUnion(initialType: types.Type, excludedType: types.Type): types.Type;
262
260
  isParameterVariadic(entity: e.VariableEntity): boolean;
263
261
  getDefaultTypeParameterConstraint(locale: PackageLocale): types.Type;
264
- getExtendedType(node: tree.TypeExtensionDeclaration): WithDiagnostics<e.NamedTypeEntity>;
265
262
  getAnalyzedTranslationPackageIfTargetResolved(package_: project.TranslationPackage): AnalyzedTranslationPackage | undefined;
266
- getAnalyzedTextTranslationPackageIfTargetResolved(package_: project.TextTranslationPackage): AnalyzedTextTranslationPackage | undefined;
263
+ resolveTextTranslationPackage(package_: project.TextTranslationPackage): ResolvedTextTranslationPackage | undefined;
267
264
  findAnalyzedTranslationPackageForLocale(entity: e.PackageEntity, locale: PackageLocale): AnalyzedTranslationPackage | undefined;
268
265
  getLocalizedPackageWithLocale(originalPackageEntity: e.PackageEntity, locale: PackageLocale): e.PackageEntity | undefined;
269
266
  enumerateAnalyzedTranslationPackages(): Query<AnalyzedTranslationPackage>;
270
- enumerateAnalyzedTextTranslationPackages(): Query<AnalyzedTextTranslationPackage>;
267
+ enumerateResolvedTextTranslationPackages(): Query<ResolvedTextTranslationPackage>;
271
268
  getLinkedMultiPlatformPackagesByPlatform(entity: e.PackageEntity): ReadonlyMap<PlatformKind, LinkedMultiPlatformPackage> | undefined;
272
269
  getLinkedMultiPlatformPackage(entity: e.PackageEntity, platform: PlatformKind): LinkedMultiPlatformPackage | undefined;
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;
270
+ getTextTranslationPackagesMap(): ReadonlyMap<e.PackageEntity, ResolvedTextTranslationPackage[]>;
271
+ getTextTranslationPackagesOfTargetPackage(targetPackage: e.PackageEntity): ResolvedTextTranslationPackage[] | undefined;
272
+ getPrimaryTextTranslationPackageOfTargetPackage(targetPackage: e.PackageEntity): ResolvedTextTranslationPackage | undefined;
273
+ resolveLocalizableTextOrTextTemplate(node: tree.LocalizableTextLiteral | tree.LocalizableTextTemplateLiteral): WithDiagnostics<e.TextTranslationEntity>;
278
274
  instantiateType(entity: e.TypeEntity, typeArguments: readonly types.Type[] | undefined): types.Type;
279
275
  instantiateTypeWithSubstitutions(entity: e.TypeEntity, substitutions: types.Substitutions): types.Type;
280
276
  instantiateTypeByIdentitySubstitution(entity: e.TypeEntity): types.Type;
@@ -309,7 +305,7 @@ export declare class Analyzer {
309
305
  addDiagnosticComputedLazily(diagnostic: Diagnostic): void;
310
306
  getAcceptorForDiagnosticsComputedLazily(): DiagnosticAcceptor;
311
307
  accumulateSourceFileDiagnosticsComputedLazily(sourceFile: project.SourceFile, diagnostics: DiagnosticAcceptor): void;
312
- validateSourcePackageMemberConflicts(pkg: project.ProgramPackage): readonly Diagnostic[];
308
+ validateSourcePackageMemberConflicts(pkg: project.ProgramOrTextTranslationPackage): readonly Diagnostic[];
313
309
  getNotExplicitlyImplementedAbstractMembers(typeEntity: e.TypeEntityWithMembers): readonly types.TypeMember[];
314
310
  getTypeMemberImplementationCheckResult(typeEntity: e.TypeEntityWithMembers): TypeMemberImplementationCheckResult;
315
311
  createEntityContextForTypeDeclaration(node: TypeDeclaration): e.EntityContext;
@@ -479,7 +475,6 @@ declare class Entity {
479
475
  private readonly setterEntities;
480
476
  private readonly typeExtensionEntities;
481
477
  private readonly packageAliasEntities;
482
- private readonly translationTextTemplateParameterEntities;
483
478
  private readonly textTranslationDeclarationEntities;
484
479
  private readonly functionLiteralEntities;
485
480
  private readonly functionBlockLiteralEntities;
@@ -1,23 +1,27 @@
1
1
  import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
2
  import { PackageEntityMembers } from '../entities/PackageMembers.js';
3
- import { ProgramPackage } from '../project/SourcePackage.js';
3
+ import { ProgramOrTextTranslationPackage } from '../project/SourcePackage.js';
4
4
  import { Analyzer } from './Analyzer.js';
5
- export declare class PackageMemberNameConflictsValidator {
5
+ export declare class PackageMemberConflictsValidator {
6
6
  private readonly analyzer;
7
7
  private readonly members;
8
8
  private readonly diagnostics;
9
9
  constructor(analyzer: Analyzer, members: PackageEntityMembers);
10
10
  validate(): readonly Diagnostic[];
11
+ private validateNameConflicts;
12
+ private validateTextConflicts;
11
13
  private validateFunctionNameConflicts;
12
14
  private validateTypeNameConflicts;
13
15
  private createAndAddNameConflictDiagnosticsForAllEntities;
16
+ private createAndAddTextConflictDiagnosticsForAllEntities;
14
17
  private shouldReportConflictWithMemberBasedOnHiding;
15
18
  private reportNameConflictDiagnostic;
19
+ private reportTextConflictDiagnostic;
16
20
  private getDiagnosticLocation;
17
21
  }
18
22
  export declare class SourcePackageMemberConflictsValidator {
19
23
  private readonly analyzer;
20
24
  private readonly package_;
21
- constructor(analyzer: Analyzer, package_: ProgramPackage);
25
+ constructor(analyzer: Analyzer, package_: ProgramOrTextTranslationPackage);
22
26
  validate(): readonly Diagnostic[];
23
27
  }
@@ -0,0 +1,9 @@
1
+ import { PackageEntity } from '../entities/index.js';
2
+ import { TextTranslationPackage } from '../project/index.js';
3
+ export declare class ResolvedTextTranslationPackage {
4
+ readonly sourcePackage: TextTranslationPackage;
5
+ readonly entity: PackageEntity;
6
+ readonly targetPackage: PackageEntity;
7
+ constructor(sourcePackage: TextTranslationPackage, entity: PackageEntity, targetPackage: PackageEntity);
8
+ isPrimary(): boolean;
9
+ }
@@ -1,21 +1,28 @@
1
1
  import { Name } from '../common/index.js';
2
2
  import { DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
3
- import { PackageAliasEntity, PackageFunctionEntity, PackageTypeEntity, PackageVariableEntity, TypeExtensionEntity } from '../entities/index.js';
3
+ import { PackageAliasEntity, PackageFunctionEntity, PackageTypeEntity, PackageVariableEntity, TextTranslationEntity, TypeExtensionEntity } from '../entities/index.js';
4
4
  import { Analyzer } from './Analyzer.js';
5
+ import { TextKey } from './TextIdentity.js';
5
6
  export declare class SourceFileMembers {
6
7
  private static readonly emptyNamedMembers;
7
8
  private static readonly emptyPackageAliases;
9
+ private static readonly emptyTextTranslations;
8
10
  private readonly analyzer;
9
11
  private readonly namedMembers;
10
12
  private readonly typeExtensions;
13
+ private readonly textTranslations;
11
14
  private readonly declarationsByName_;
15
+ private readonly textTranslationsByTextKey_;
12
16
  get declarationsByName(): ReadonlyMap<string, readonly NamedSourceFileMemberEntity[]>;
13
- constructor(analyzer: Analyzer, namedMembers: readonly NamedSourceFileMemberEntity[], typeExtensions: readonly TypeExtensionEntity[]);
17
+ get textTranslationsByTextKey(): ReadonlyMap<TextKey, readonly TextTranslationEntity[]>;
18
+ constructor(analyzer: Analyzer, namedMembers: readonly NamedSourceFileMemberEntity[], typeExtensions: readonly TypeExtensionEntity[], textTranslations: readonly TextTranslationEntity[]);
14
19
  getNamedDeclarations(): readonly NamedSourceFileMemberEntity[];
15
20
  getNamedDeclarationsByName(name: Name): readonly NamedSourceFileMemberEntity[];
16
21
  getPackageAliases(): readonly PackageAliasEntity[];
17
22
  getPackageAliasesByName(name: Name): readonly PackageAliasEntity[];
18
23
  getTypeExtensions(): readonly TypeExtensionEntity[];
24
+ getTextTranslations(): readonly TextTranslationEntity[];
25
+ getTextTranslationsByTextKey(key: TextKey): readonly TextTranslationEntity[];
19
26
  validateNameConflicts(diagnostics: DiagnosticAcceptor): void;
20
27
  private getDiagnosticLocation;
21
28
  }
@@ -23,6 +23,10 @@ export interface SourcePackageDependencyGraphNode {
23
23
  * Информация о подключаемых пакетах.
24
24
  */
25
25
  readonly links: readonly SourcePackageDependencyGraphLink[];
26
+ /**
27
+ * Пакеты перевода текстов на разные языки, для которых подключаемый пакет является целевым (источником текстов).
28
+ */
29
+ readonly textTranslationPackages: readonly SourcePackageDependencyGraphNode[];
26
30
  }
27
31
  export interface SourcePackageDependencyGraphLink {
28
32
  /**
@@ -37,7 +37,7 @@ export declare abstract class SemanticContextBase {
37
37
  getOperators(noInstanceMembers?: boolean): readonly types.Operator[];
38
38
  getOperatorsByKind(kind: OperatorKind, noInstanceMembers?: boolean): readonly types.Operator[];
39
39
  getTypeExtensionsByType(type: TypeEntity): readonly TypeExtensionEntity[];
40
- getPrimaryTextTranslationEntityByTextKey(key: TextKey): TextTranslationEntity | undefined;
40
+ getTextTranslationEntityByTextKey(key: TextKey): readonly TextTranslationEntity[];
41
41
  private semanticContexts;
42
42
  private getSourceFileContext;
43
43
  }
@@ -37,7 +37,7 @@ export declare class SourceFileSemanticContext extends SemanticContextBase {
37
37
  getOwnNamedDeclarations(_noInstanceMembers?: boolean, hidingMatcher?: IEntityHidingMatcher): NamedDeclaration[];
38
38
  getOwnNamedDeclarationsByName(name: Name, _noInstanceMembers?: boolean, hidingMatcher?: IEntityHidingMatcher): readonly NamedDeclaration[];
39
39
  getOwnTypeExtensionsByType(type: TypeEntity, hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
40
- getPrimaryTextTranslationEntityByTextKey(key: TextKey): TextTranslationEntity | undefined;
40
+ getTextTranslationEntityByTextKey(key: TextKey): readonly TextTranslationEntity[];
41
41
  private convertPackageMemberToNamedDeclaration;
42
42
  private convertPackageAliasToTypeOrContainerWithTypes;
43
43
  private convertPackageMemberToTypeOrContainerWithTypes;
@@ -220,17 +220,17 @@ export declare enum DiagnosticCode {
220
220
  RequiredTypeParametersCannotFollowTypeParametersWithDefaults = 382,
221
221
  RequiredParametersCannotFollowOptionalParameters = 383,
222
222
  ExpressionCannotBeReferenced = 384,
223
- TextIsMissingInPrimaryTextTranslationPackage = 385,
224
- TextTemplateIsMissingInPrimaryTextTranslationPackage = 386,
225
- DeclarationHasAlreadyBeenTranslated = 387,
226
- TheNumberOfTranslatedParametersMustBeEqualToTheNumberOfSourceParameters = 388,
227
- TheNumberOfTranslatedTypeParametersMustBeEqualToTheNumberOfSourceTypeParameters = 389,
228
- TheNameOfTheTranslatedOperatorMustMeTheSameAsSourceOperatorName = 390,
229
- TranslationOfFunctionTypeMustIncludeParameterList = 391,
230
- OnlyOneTextTranslationPackageShouldBeMarkedAsPrimary = 392,
231
- Declarations0And1HaveTheSameSourceNamesButDifferentTranslatedNames23 = 393,
232
- TranslatedDeclarations0And1HaveTheSameTranslatedNamesButDifferentSourceNames23 = 394,
233
- TranslatedOverridingMember0MustTheSameNameAsBaseMember1 = 395,
223
+ TextIsMissingAmongPrimaryTextTranslationDefinitions = 385,
224
+ DeclarationHasAlreadyBeenTranslated = 386,
225
+ TheNumberOfTranslatedParametersMustBeEqualToTheNumberOfSourceParameters = 387,
226
+ TheNumberOfTranslatedTypeParametersMustBeEqualToTheNumberOfSourceTypeParameters = 388,
227
+ TheNameOfTheTranslatedOperatorMustMeTheSameAsSourceOperatorName = 389,
228
+ TranslationOfFunctionTypeMustIncludeParameterList = 390,
229
+ OnlyOneTextTranslationPackageShouldBeMarkedAsPrimary = 391,
230
+ Declarations0And1HaveTheSameSourceNamesButDifferentTranslatedNames23 = 392,
231
+ TranslatedDeclarations0And1HaveTheSameTranslatedNamesButDifferentSourceNames23 = 393,
232
+ TranslatedOverridingMember0MustTheSameNameAsBaseMember1 = 394,
233
+ TextTranslationAlreadyExistsInTheTextTranslationPackage = 395,
234
234
  CannotFindTsLibDirectoryBaseSearchPaths0 = 401,
235
235
  SourceFile0IsNotPartOfThePackageAndWontBeLoaded = 402,
236
236
  ProgramWithoutMainPackageCannotBeCompiled = 403,
@@ -59,7 +59,7 @@ export declare namespace TypeWithMembersOrExtensionEntity {
59
59
  export declare function isTypeWithMembersOrExtensionEntity(entity: Entity): entity is TypeWithMembersOrExtensionEntity;
60
60
  export declare function isTypeEntity(entity: Entity): entity is TypeEntity;
61
61
  export declare function isNamedTypeEntity(entity: TypeEntity): entity is NamedTypeEntity;
62
- export type PackageMemberEntity = PackageVariableEntity | PackageFunctionEntity | PackageTypeEntity | TypeExtensionEntity;
62
+ export type PackageMemberEntity = PackageVariableEntity | PackageFunctionEntity | PackageTypeEntity | TypeExtensionEntity | TextTranslationEntity;
63
63
  export declare function isPackageMemberEntity(entity: Entity): entity is PackageMemberEntity;
64
64
  export type NamedPackageMemberEntity = PackageVariableEntity | PackageFunctionEntity | PackageTypeEntity;
65
65
  export declare function isNamedPackageMemberEntity(entity: Entity): entity is NamedPackageMemberEntity;
@@ -37,7 +37,7 @@ export declare class EntityLocalizationContext {
37
37
  getLocalizedPackageTypeEntity(entity: PackageTypeEntity): PackageTypeEntity;
38
38
  getLocalizedTypeEntity(entity: TypeEntity): TypeEntity;
39
39
  getLocalizedTypeWithMembersOrExtensionEntity(entity: TypeWithMembersOrExtensionEntity): TypeWithMembersOrExtensionEntity;
40
- getLocalizedPackageMemberEntity(entity: PackageMemberEntity): PackageMemberEntity;
40
+ getLocalizedPackageMemberEntity(entity: LocalizablePackageMemberEntity): LocalizablePackageMemberEntity;
41
41
  getLocalizedTypeMemberEntity(entity: TypeMemberEntity): TypeMemberEntity;
42
42
  getLocalizedEntity(entity: LocalizableEntity): LocalizableEntity;
43
43
  getLocalizedEntityForPossiblyNotLocalizableEntity(entity: Entity): Entity;
@@ -52,3 +52,4 @@ export declare class EntityLocalizationContext {
52
52
  }
53
53
  export type LocalizableEntity = PackageEntity | PackageVariableEntity | FieldEntity | ParameterEntity | PackageVariantTypeEntity | AnonymousVariantTypeEntity | GetterEntity | SetterEntity | PackageFunctionEntity | MethodEntity | TypeParameterEntity | OperatorEntity | IndexerEntity | DereferenceOperatorEntity | ConstructorEntity | DestructorEntity | PackageFunctionTypeEntity | AnonymousFunctionTypeEntity | PackageStructuredTypeEntity | AnonymousStructuredTypeEntity | AliasTypeEntity | TypeExtensionEntity;
54
54
  export declare function isLocalizableEntity(entity: Entity): entity is LocalizableEntity;
55
+ export type LocalizablePackageMemberEntity = PackageMemberEntity & LocalizableEntity;
@@ -1,15 +1,22 @@
1
+ import { TextKey } from '../analysis/TextIdentity.js';
1
2
  import { Name } from '../common/index.js';
2
- import { NamedPackageMemberEntity, PackageMemberEntity, TypeEntity, TypeExtensionEntity } from '../entities/index.js';
3
+ import { NamedPackageMemberEntity, TextTranslationEntity, TypeEntity, TypeExtensionEntity } from '../entities/index.js';
3
4
  export declare class PackageEntityMembers {
4
5
  private readonly namedMembers;
5
6
  private readonly typeExtensions;
7
+ private readonly textTranslations;
6
8
  private static readonly emptyNamedMembers;
9
+ private static readonly emptyTextTranslations;
7
10
  private readonly membersByNameKey_;
11
+ private readonly textTranslationsByTextKey_;
8
12
  private get membersByNameKey();
9
- constructor(namedMembers: readonly NamedPackageMemberEntity[], typeExtensions: readonly TypeExtensionEntity[]);
13
+ get textTranslationsByTextKey(): ReadonlyMap<TextKey, readonly TextTranslationEntity[]>;
14
+ constructor(namedMembers: readonly NamedPackageMemberEntity[], typeExtensions: readonly TypeExtensionEntity[], textTranslations: readonly TextTranslationEntity[]);
10
15
  getNamedMembers(): readonly NamedPackageMemberEntity[];
11
16
  getNamedMembersByName(name: Name): readonly NamedPackageMemberEntity[];
12
17
  getTypeExtensions(): readonly TypeExtensionEntity[];
13
18
  getTypeExtensionsByType(type: TypeEntity): readonly TypeExtensionEntity[];
14
- getAll(): readonly PackageMemberEntity[];
19
+ getTextTranslations(): readonly TextTranslationEntity[];
20
+ getTextTranslationsByTextKey(key: TextKey): readonly TextTranslationEntity[];
21
+ getNamedMembersAndTypeExtensions(): Iterable<NamedPackageMemberEntity | TypeExtensionEntity>;
15
22
  }
@@ -1,7 +1,7 @@
1
1
  import { TextKey } from '../../analysis/TextIdentity.js';
2
2
  import * as tree from '../../tree/index.js';
3
3
  import { IEntity } from '../IEntity.js';
4
- import { DefinitionKind, EntityKind, ParameterEntity } from '../index.js';
4
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterEntity } from '../index.js';
5
5
  export interface TextTranslationEntity extends IEntity {
6
6
  readonly kind: EntityKind.TextTranslation;
7
7
  isTextTemplate(): boolean;
@@ -11,6 +11,7 @@ export interface TextTranslationEntity extends IEntity {
11
11
  getComment(): string | undefined;
12
12
  getParameters(): readonly ParameterEntity[];
13
13
  getDefinition(): TextTranslationEntityDefinition;
14
+ isHidden(): EntityHidingLevel | undefined;
14
15
  }
15
16
  export type TextTranslationEntityDefinition = {
16
17
  kind: DefinitionKind.Source;
@@ -4,7 +4,7 @@ import { TextKey } from '../../analysis/TextIdentity.js';
4
4
  import { Translation } from '../../analysis/Translation.js';
5
5
  import { PackageDialect, PackageLocale } from '../../common/index.js';
6
6
  import * as tree from '../../tree/index.js';
7
- import { EntityKind, PackageEntity, ParameterEntity, TextTranslationEntity, TextTranslationEntityDefinition } from '../index.js';
7
+ import { EntityHidingLevel, EntityKind, PackageEntity, ParameterEntity, TextTranslationEntity, TextTranslationEntityDefinition } from '../index.js';
8
8
  export declare class TextTranslationDeclarationEntity implements TextTranslationEntity {
9
9
  private readonly analyzer;
10
10
  private readonly node;
@@ -27,4 +27,5 @@ export declare class TextTranslationDeclarationEntity implements TextTranslation
27
27
  getTranslation(): Translation | undefined;
28
28
  getLocale(): PackageLocale;
29
29
  getDialect(): PackageDialect;
30
+ isHidden(): EntityHidingLevel | undefined;
30
31
  }
@@ -11,7 +11,9 @@ export declare class SourceTypeExtensionEntity implements TypeExtensionEntity {
11
11
  private readonly node;
12
12
  private readonly members;
13
13
  private readonly hiding;
14
+ private readonly extendedType;
14
15
  private modifierFlags_;
16
+ private hasReportedAllDiagnostics;
15
17
  private get modifierFlags();
16
18
  constructor(analyzer: Analyzer, node: TypeExtensionDeclaration);
17
19
  getMembers(): TypeEntityMembers;
@@ -25,4 +27,6 @@ export declare class SourceTypeExtensionEntity implements TypeExtensionEntity {
25
27
  getLocale(): PackageLocale;
26
28
  getDialect(): PackageDialect;
27
29
  getOriginalEntity(): TypeExtensionEntity;
30
+ ensureAllDiagnosticsReported(): void;
31
+ private resolveExtendedType;
28
32
  }
@@ -1,6 +1,6 @@
1
1
  import * as configEn from './configuration/types/PackageConfigurationEn.js';
2
2
  import * as configRu from './configuration/types/PackageConfigurationRu.js';
3
- export type PackageOrTranslationsConfiguration = configEn.Package | configEn.Translations | configRu.Пакет | configRu.Переводы;
3
+ export type PackageOrTranslationsConfiguration = configEn.Package | configEn.NameTranslations | configEn.TextTranslations | configRu.Пакет | configRu.ПереводыИмён | configRu.ПереводыТекстов;
4
4
  export type PackageConfigurationLocale = 'en' | 'ru';
5
5
  export interface PackageContent {
6
6
  configuration: PackageOrTranslationsConfiguration;
@@ -2,6 +2,7 @@ import { Name, PackageDialect, PackageLocale, ReadonlyNonEmptyArray, Uri } from
2
2
  import { Compilation } from './Compilation.js';
3
3
  import { SourceFile } from './SourceFile.js';
4
4
  export type SourcePackage = ProgramPackage | TranslationPackage | TextTranslationPackage;
5
+ export type ProgramOrTextTranslationPackage = ProgramPackage | TextTranslationPackage;
5
6
  declare abstract class SourcePackageBase {
6
7
  readonly uri: Uri;
7
8
  readonly name: PackageName;
@@ -61,10 +62,11 @@ export declare class TextTranslationPackageConfiguration {
61
62
  readonly locale: PackageLocale;
62
63
  readonly dialect: PackageDialect;
63
64
  readonly version?: string | undefined;
65
+ readonly targetPlatform: TargetPlatformConfig;
64
66
  readonly packageImportLocales: readonly PackageImportLocaleConfig[];
65
67
  readonly automaticallyImportedPackages?: readonly PackageName[] | undefined;
66
68
  readonly name: PackageName;
67
- constructor(targetPackageName: PackageName, translationLocale: string, isPrimaryTranslation: boolean | undefined, locale: PackageLocale, dialect?: PackageDialect, version?: string | undefined, packageImportLocales?: readonly PackageImportLocaleConfig[], automaticallyImportedPackages?: readonly PackageName[] | undefined);
69
+ constructor(targetPackageName: PackageName, translationLocale: string, isPrimaryTranslation: boolean | undefined, locale: PackageLocale, dialect?: PackageDialect, version?: string | undefined, targetPlatform?: TargetPlatformConfig, packageImportLocales?: readonly PackageImportLocaleConfig[], automaticallyImportedPackages?: readonly PackageName[] | undefined);
68
70
  }
69
71
  export declare class ProgramPackageConfiguration {
70
72
  readonly name: PackageName;
@@ -8,7 +8,7 @@ export declare class ConfigurationConverter {
8
8
  static convert(configurations: readonly origin.Configuration[], packageOrGroupUri?: Uri, defaultLocale?: PackageLocale, defaultDialect?: PackageDialect): ConvertedConfiguration;
9
9
  static convertPackageConfiguration(configuration: origin.Package, packageOrGroupUri?: Uri, defaultLocale?: PackageLocale, defaultDialect?: PackageDialect): ProgramPackageConfiguration;
10
10
  static convertPackageGroupConfiguration(configuration: origin.PackageGroup): PackageGroupConfiguration;
11
- static convertTranslationsConfiguration(configuration: origin.Translations, defaultLocale?: PackageLocale, defaultDialect?: PackageDialect): TranslationPackageConfiguration;
11
+ static convertNameTranslationsConfiguration(configuration: origin.NameTranslations, defaultLocale?: PackageLocale, defaultDialect?: PackageDialect): TranslationPackageConfiguration;
12
12
  static convertTextTranslationsConfiguration(configuration: origin.TextTranslations, defaultLocale?: PackageLocale, defaultDialect?: PackageDialect): TextTranslationPackageConfiguration;
13
13
  private static convertTargetPlatform;
14
14
  private static convertRequiredPackages;
@@ -1,5 +1,5 @@
1
1
  export type ConfigurationArray = Configuration[];
2
- export type Configuration = Package | PackageGroup | Translations | TextTranslations;
2
+ export type Configuration = Package | PackageGroup | NameTranslations | TextTranslations;
3
3
  export interface Package {
4
4
  type: 'Package';
5
5
  name: string;
@@ -16,8 +16,8 @@ export interface Package {
16
16
  export interface PackageGroup {
17
17
  type: 'PackageGroup';
18
18
  }
19
- export interface Translations {
20
- type: 'Translations';
19
+ export interface NameTranslations {
20
+ type: 'NameTranslations';
21
21
  originalPackageName: string;
22
22
  translatedPackageName: string;
23
23
  translationLanguage: Language;
@@ -26,7 +26,7 @@ export interface Translations {
26
26
  }
27
27
  export interface TextTranslations {
28
28
  type: 'TextTranslations';
29
- originalPackageName: string;
29
+ targetPackageName: string;
30
30
  translationLanguage: string;
31
31
  isPrimaryTranslation?: boolean;
32
32
  language?: Language;
@@ -1,5 +1,5 @@
1
1
  export type МассивКонфигураций = Конфигурация[];
2
- export type Конфигурация = Пакет | ГруппаПакетов | Переводы | ПереводыТекстов;
2
+ export type Конфигурация = Пакет | ГруппаПакетов | ПереводыИмён | ПереводыТекстов;
3
3
  export interface Пакет {
4
4
  тип: 'Пакет';
5
5
  имя: string;
@@ -16,8 +16,8 @@ export interface Пакет {
16
16
  export interface ГруппаПакетов {
17
17
  тип: 'ГруппаПакетов';
18
18
  }
19
- export interface Переводы {
20
- тип: 'Переводы';
19
+ export interface ПереводыИмён {
20
+ тип: 'ПереводыИмён';
21
21
  имяПакетаИсходное: string;
22
22
  имяПакетаПереведённое: string;
23
23
  языкПеревода: Язык;
@@ -26,7 +26,7 @@ export interface Переводы {
26
26
  }
27
27
  export interface ПереводыТекстов {
28
28
  тип: 'ПереводыТекстов';
29
- имяПакетаИсходное: string;
29
+ имяПереводимогоПакета: string;
30
30
  языкПеревода: string;
31
31
  этоПервичныйПеревод?: ДаНет;
32
32
  язык?: Язык;
@@ -11,5 +11,5 @@ export declare class EvaluatableExpressionService {
11
11
  private convertEvaluatableExpressionToString;
12
12
  private getEvaluatableExpressionForIdentifier;
13
13
  private isEvaluatableReceiver;
14
- private isNamedDeclaration;
14
+ private ifNamedDeclarationThenName;
15
15
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artel/artc",
3
- "version": "0.6.25280",
3
+ "version": "0.6.25281",
4
4
  "description": "Артель Компилятор | Artel Compiler",
5
5
  "author": "Nezaboodka Team <contact@nezaboodka.com>",
6
6
  "license": "LGPL-3.0-or-later",
@@ -1,20 +0,0 @@
1
- import { PackageEntity, TextTranslationEntity } from '../entities/index.js';
2
- import { PackageName, TextTranslationPackage } from '../project/index.js';
3
- import { Analyzer } from './Analyzer.js';
4
- import { TextKey } from './TextIdentity.js';
5
- export declare class AnalyzedTextTranslationPackage {
6
- private readonly analyzer;
7
- private readonly package_;
8
- private readonly targetPackage;
9
- private readonly entitiesByTextKey;
10
- constructor(analyzer: Analyzer, package_: TextTranslationPackage, targetPackage: PackageEntity);
11
- isPrimary(): boolean;
12
- getTargetPackage(): PackageEntity;
13
- getDefinition(): TextTranslationPackage;
14
- getTargetPackageName(): PackageName;
15
- getTranslationLocale(): string;
16
- getEntitiesByTextKey(textKey: TextKey): readonly TextTranslationEntity[] | undefined;
17
- private createEntitiesByTextKey;
18
- private textTranslationDeclarations;
19
- private translationsDeclarations;
20
- }