@artel/artc 0.6.25244 → 0.6.25245

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 (111) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +30 -22
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +500 -916
  5. package/build/{chunk-C7RKXERX.js → chunk-FVBS6MPY.js} +1 -1
  6. package/build/{chunk-BAAUJYMH.js → chunk-T7WG4Z7I.js} +21018 -19022
  7. package/build/{chunk-V7EU2U6Y.js → chunk-TVZEHLXD.js} +2 -2
  8. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +49 -80
  9. package/build/types/analysis/Analyzer.d.ts +59 -73
  10. package/build/types/analysis/ArgumentToParameterMatchResult.d.ts +8 -10
  11. package/build/types/analysis/AutotypeCallExpressionMeaning.d.ts +3 -4
  12. package/build/types/analysis/BaseExpressionMeaning.d.ts +3 -4
  13. package/build/types/analysis/BaseMemberConflictsValidator.d.ts +6 -6
  14. package/build/types/analysis/CallExpressionMeaning.d.ts +7 -9
  15. package/build/types/analysis/ConstructorOverloadResolver.d.ts +4 -7
  16. package/build/types/analysis/DeclarationsUsageCounter.d.ts +1 -2
  17. package/build/types/analysis/DereferenceExpressionMeaning.d.ts +2 -3
  18. package/build/types/analysis/DiagnosticCollector.d.ts +1 -0
  19. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +16 -17
  20. package/build/types/analysis/ImportedPackageNameTree.d.ts +1 -7
  21. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +4 -5
  22. package/build/types/analysis/Localization.d.ts +19 -25
  23. package/build/types/analysis/MemberAccessExpressionMeaning.d.ts +29 -31
  24. package/build/types/analysis/NamedTypeResolver.d.ts +6 -8
  25. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +3 -5
  26. package/build/types/analysis/ObjectExpressionMeaning.d.ts +3 -4
  27. package/build/types/analysis/PackageMemberLookup.d.ts +4 -9
  28. package/build/types/analysis/PackageMemberNameConflictsValidator.d.ts +2 -2
  29. package/build/types/analysis/SourceFileMembers.d.ts +3 -3
  30. package/build/types/analysis/TagMeaning.d.ts +18 -20
  31. package/build/types/analysis/Tags.d.ts +1 -1
  32. package/build/types/analysis/TypeMemberConflictsValidator.d.ts +2 -2
  33. package/build/types/analysis/TypeMemberLookup.d.ts +23 -31
  34. package/build/types/analysis/TypeNarrower.d.ts +1 -0
  35. package/build/types/analysis/UserDefinableBinaryOperatorResolver.d.ts +1 -2
  36. package/build/types/analysis/UserDefinableUnaryOperatorResolver.d.ts +1 -2
  37. package/build/types/analysis/WellKnownDeclarations.d.ts +100 -31
  38. package/build/types/analysis/semantic-context/FieldWithInitializerSemanticContext.d.ts +5 -6
  39. package/build/types/analysis/semantic-context/SemanticContextBase.d.ts +11 -14
  40. package/build/types/analysis/semantic-context/SemanticContextValidatingNameConflicts.d.ts +5 -6
  41. package/build/types/analysis/semantic-context/SourceFileSemanticContext.d.ts +5 -8
  42. package/build/types/analysis/semantic-context/SubprogramSemanticContext.d.ts +5 -6
  43. package/build/types/analysis/semantic-context/TypeSemanticContext.d.ts +11 -12
  44. package/build/types/api/Api.d.ts +0 -3
  45. package/build/types/common/Name.d.ts +9 -14
  46. package/build/types/common/TreeQuery.d.ts +2 -0
  47. package/build/types/common/index.d.ts +0 -1
  48. package/build/types/diagnostic/DiagnosticCode.d.ts +1 -1
  49. package/build/types/emitter/EntityMap.d.ts +1 -0
  50. package/build/types/entities/AliasTypeEntity.d.ts +9 -41
  51. package/build/types/entities/AliasedType.d.ts +62 -0
  52. package/build/types/entities/ConstructorEntity.d.ts +10 -2
  53. package/build/types/entities/DereferenceOperatorEntity.d.ts +5 -0
  54. package/build/types/entities/DestructorEntity.d.ts +6 -2
  55. package/build/types/entities/EntityLocalizationContext.d.ts +53 -0
  56. package/build/types/entities/FunctionEntity.d.ts +20 -0
  57. package/build/types/entities/FunctionTypeEntity.d.ts +15 -4
  58. package/build/types/entities/GetterEntity.d.ts +15 -2
  59. package/build/types/entities/IndexerEntity.d.ts +5 -0
  60. package/build/types/entities/OperatorEntity.d.ts +9 -3
  61. package/build/types/entities/PackageAliasEntity.d.ts +5 -0
  62. package/build/types/entities/PackageEntity.d.ts +8 -3
  63. package/build/types/entities/PackageMembers.d.ts +3 -2
  64. package/build/types/entities/SetterEntity.d.ts +15 -2
  65. package/build/types/entities/StructuredTypeEntity.d.ts +64 -15
  66. package/build/types/entities/TypeEntityMembers.d.ts +2 -5
  67. package/build/types/entities/TypeExtensionEntity.d.ts +9 -5
  68. package/build/types/entities/TypeMemberContainer.d.ts +2 -2
  69. package/build/types/entities/TypeParameterEntity.d.ts +26 -8
  70. package/build/types/entities/VariableEntity.d.ts +41 -1
  71. package/build/types/entities/VariantTypeEntity.d.ts +13 -4
  72. package/build/types/entities/index.d.ts +5 -4
  73. package/build/types/entities/translated/TranslatedAliasTypeEntity.d.ts +54 -0
  74. package/build/types/entities/translated/TranslatedConstructorEntity.d.ts +25 -0
  75. package/build/types/entities/translated/TranslatedDereferenceOperatorEntity.d.ts +34 -0
  76. package/build/types/entities/translated/TranslatedDestructorEntity.d.ts +24 -0
  77. package/build/types/entities/translated/TranslatedFunctionEntity.d.ts +75 -0
  78. package/build/types/entities/translated/TranslatedFunctionTypeEntity.d.ts +83 -0
  79. package/build/types/entities/translated/TranslatedGetterEntity.d.ts +25 -0
  80. package/build/types/entities/translated/TranslatedIndexerEntity.d.ts +37 -0
  81. package/build/types/entities/translated/TranslatedOperatorEntity.d.ts +35 -0
  82. package/build/types/entities/translated/TranslatedPackageEntity.d.ts +28 -0
  83. package/build/types/entities/translated/TranslatedSetterEntity.d.ts +22 -0
  84. package/build/types/entities/translated/TranslatedStructuredTypeEntity.d.ts +107 -0
  85. package/build/types/entities/translated/TranslatedTypeExtensionEntity.d.ts +28 -0
  86. package/build/types/entities/translated/TranslatedTypeParameterEntity.d.ts +46 -0
  87. package/build/types/entities/translated/TranslatedVariableEntity.d.ts +97 -0
  88. package/build/types/entities/translated/TranslatedVariantTypeEntity.d.ts +76 -0
  89. package/build/types/project/SourcePackage.d.ts +1 -0
  90. package/build/types/services/DefinitionService.d.ts +0 -1
  91. package/build/types/services/DisplayService.d.ts +39 -134
  92. package/build/types/services/NodeSemanticInfo.d.ts +7 -7
  93. package/build/types/services/ReferencesService.d.ts +5 -3
  94. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +7 -10
  95. package/build/types/services/source-generation/EntityToSyntax.d.ts +1 -3
  96. package/build/types/services/source-generation/SourceGenerationService.d.ts +1 -2
  97. package/build/types/tree/green/Token.d.ts +6 -7
  98. package/build/types/ts-interop/Entities.d.ts +64 -13
  99. package/build/types/ts-interop/TsInteropContext.d.ts +17 -5
  100. package/build/types/ts-interop/TsPackageContents.d.ts +2 -2
  101. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +3 -3
  102. package/build/types/ts-interop/TsTypeMembersCreator.d.ts +4 -4
  103. package/build/types/types/StandardTypes.d.ts +3 -2
  104. package/build/types/types/Substitutions.d.ts +3 -0
  105. package/build/types/types/Type.d.ts +3 -0
  106. package/package.json +1 -1
  107. package/build/types/analysis/EntityLocalizationHelper.d.ts +0 -17
  108. package/build/types/analysis/FoundDeclaration.d.ts +0 -19
  109. package/build/types/analysis/LocalizationContext.d.ts +0 -15
  110. package/build/types/common/SearchName.d.ts +0 -14
  111. package/build/types/types/Internal.d.ts +0 -1
@@ -1,6 +1,5 @@
1
1
  import { TriggeringObject } from 'reactronic';
2
2
  import { Analyzer } from '../../analysis/Analyzer.js';
3
- import { LocalizationContext } from '../../analysis/LocalizationContext.js';
4
3
  import { CancellationToken } from '../../common/index.js';
5
4
  import { Entity } from '../../entities/index.js';
6
5
  import { PackageContent } from '../../project/PackageContent.js';
@@ -14,7 +13,7 @@ export declare class SourceGenerationService extends TriggeringObject {
14
13
  private readonly _generatedPackageStates;
15
14
  get compilationControllers(): readonly CompilationController[];
16
15
  constructor(_trackedSourceFiles: ReadonlyClientTrackedSourceFiles, _tsLibrariesProvider: TypeScriptLibrariesProvider, _standardPackageContentsProviders: (cancellationToken: CancellationToken | undefined) => Promise<readonly PackageContent[] | undefined>);
17
- getDefinitionInGeneratedCode(analyzer: Analyzer, entity: Entity, localizationContext: LocalizationContext | undefined, cancellationToken: CancellationToken | undefined): Promise<SourceLocation[] | undefined>;
16
+ getDefinitionInGeneratedCode(analyzer: Analyzer, entity: Entity, cancellationToken: CancellationToken | undefined): Promise<SourceLocation[] | undefined>;
18
17
  entityDefinitionRequiresSourceGeneration(entity: Entity): boolean;
19
18
  protected onOpenedSourceFilesChanged(): void;
20
19
  private getOrGeneratePackageSource;
@@ -5,13 +5,12 @@ import { Node, NodeKind, TokenKind, TriviaKind } from './index.js';
5
5
  export declare const enum TokenFlags {
6
6
  None = 0,// обычная лексема
7
7
  Missing = 1,// лексема отсутствует в исходном тексте, но требуется по грамматике.
8
- OriginalName = 2,// ~имя
9
- QuotedName = 4,// 'имя', 'имя с пробелами', '+'
10
- RequiresQuotes = 8,// 'имя с пробелами', '+'
11
- EscapedKeyword = 16,// 'выполнить'
12
- HasBackQuotes = 32,// Имя с любым количеством апострофов: имя`, имя```
13
- ConflictResolvingParameterName = 64,// Имя с одним апострофом: имя`, выполнить`
14
- BackingVariableName = 128
8
+ QuotedName = 2,// 'имя', 'имя с пробелами', '+'
9
+ RequiresQuotes = 4,// 'имя с пробелами', '+'
10
+ EscapedKeyword = 8,// 'выполнить'
11
+ HasBackQuotes = 16,// Имя с любым количеством апострофов: имя`, имя```
12
+ ConflictResolvingParameterName = 32,// Имя с одним апострофом: имя`, выполнить`
13
+ BackingVariableName = 64
15
14
  }
16
15
  export declare class Token<TKind extends TokenKind = TokenKind> extends BaseNode {
17
16
  readonly kind = NodeKind.Token;
@@ -1,10 +1,11 @@
1
1
  import ts from 'typescript';
2
+ import { Localization } from '../analysis/Localization.js';
2
3
  import { Tag } from '../analysis/Tags.js';
3
4
  import { Lazy, Name, PackageDialect, PackageLocale } from '../common/index.js';
4
5
  import type { PackageEntity } from '../entities/PackageEntity.js';
5
6
  import { PackageEntityDefinition } from '../entities/PackageEntity.js';
6
- import { OriginalPackageMembers } from '../entities/PackageMembers.js';
7
- import { OriginalTypeEntityMembers } from '../entities/TypeEntityMembers.js';
7
+ import { PackageEntityMembers } from '../entities/PackageMembers.js';
8
+ import { TypeEntityMembers } from '../entities/TypeEntityMembers.js';
8
9
  import type { EntityContainingTypeParameter, EntityContainingValueParameter, EntityContext, EntityOwningGetter, TypeEntityWithMembers, VariantTypeEntity } from '../entities/index.js';
9
10
  import { AliasTypeEntity, AliasTypeEntityDefinition, AliasedType, AnonymousFunctionTypeEntity, AnonymousStructuredTypeEntity, BaseAspectTypes, BaseObjectType, ConstructorEntity, ConstructorEntityDefinition, DefaultConstructorEntityInfo, EntityHidingLevel, EntityKind, EntityNaming, EntityOwningSetter, FieldEntity, FunctionEntityDefinition, FunctionTypeEntityDefinition, GetterEntity, GetterEntityDefinition, IndexerEntity, IndexerEntityDefinition, InterfacePackageEntityInfo, MethodEntity, PackageFunctionEntity, PackageFunctionTypeEntity, PackageStructuredTypeEntity, PackageVariableEntity, PackageVariantTypeEntity, ParameterVariableEntity, ParameterVariableEntityContainer, SetterEntity, SetterEntityDefinition, SpecialVariableEntityInfo, StructuredTypeEntityDefinition, SubstitutionApplicationMode, TypeEntityKind, TypeMemberEntityContainer, TypeParameterConstraint, TypeParameterEntity, TypeParameterEntityDefinition, VariableEntityDefinition, VariantTypeEntityDefinition } from '../entities/index.js';
10
11
  import { JavaScriptImplementationConfig, PackageName, PlatformKind, ProgramPackage } from '../project/index.js';
@@ -22,11 +23,13 @@ export declare class TsPackageEntity implements PackageEntity {
22
23
  getName(): PackageName;
23
24
  getLocale(): PackageLocale;
24
25
  getDialect(): PackageDialect;
25
- getMembers(): OriginalPackageMembers;
26
+ getMembers(): PackageEntityMembers;
26
27
  isInterface(): InterfacePackageEntityInfo | undefined;
27
28
  getImplementedInterfacePackage(): PackageEntity | undefined;
28
29
  getSupportedPlatforms(): readonly PlatformKind[];
29
30
  getDefinition(): PackageEntityDefinition;
31
+ getLocalization(): Localization;
32
+ getOriginalEntity(): PackageEntity;
30
33
  }
31
34
  export declare class SourcePackageLoadedFromDtsEntity implements PackageEntity {
32
35
  readonly kind = EntityKind.Package;
@@ -38,7 +41,7 @@ export declare class SourcePackageLoadedFromDtsEntity implements PackageEntity {
38
41
  getName(): PackageName;
39
42
  getLocale(): PackageLocale;
40
43
  getDialect(): PackageDialect;
41
- getMembers(): OriginalPackageMembers;
44
+ getMembers(): PackageEntityMembers;
42
45
  isInterface(): InterfacePackageEntityInfo | undefined;
43
46
  getImplementedInterfacePackage(): PackageEntity | undefined;
44
47
  getSupportedPlatforms(): readonly PlatformKind[];
@@ -50,6 +53,8 @@ export declare class SourcePackageLoadedFromDtsEntity implements PackageEntity {
50
53
  getComputedPackageVariableDeclaration(node: tree.PackageVariableGetterDeclaration | tree.PackageVariableSetterDeclaration): PackageVariableEntity;
51
54
  getPackageVariantTypeDeclarationEntity(node: tree.PackageVariantTypeDeclaration): PackageVariantTypeEntity;
52
55
  getDefinition(): PackageEntityDefinition;
56
+ getLocalization(): Localization;
57
+ getOriginalEntity(): PackageEntity;
53
58
  }
54
59
  export declare class TsGlobalVariableEntity implements PackageVariableEntity {
55
60
  private readonly _tsctx;
@@ -71,6 +76,8 @@ export declare class TsGlobalVariableEntity implements PackageVariableEntity {
71
76
  isHidden(): EntityHidingLevel | undefined;
72
77
  isSpecial(): SpecialVariableEntityInfo | undefined;
73
78
  getTags(): readonly Tag[];
79
+ getLocalization(): Localization;
80
+ getOriginalEntity(): PackageVariableEntity;
74
81
  private getDeclaration;
75
82
  }
76
83
  export declare class TsGlobalFunctionEntity implements PackageFunctionEntity {
@@ -97,6 +104,8 @@ export declare class TsGlobalFunctionEntity implements PackageFunctionEntity {
97
104
  getTags(): readonly Tag[];
98
105
  getTypeParametersArity(): number;
99
106
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
107
+ getLocalization(): Localization;
108
+ getOriginalEntity(): PackageFunctionEntity;
100
109
  }
101
110
  /**
102
111
  * Сущность, представляющая классы и интерфейсы.
@@ -155,7 +164,7 @@ export declare class TsGlobalClassOrInterfaceEntity implements PackageStructured
155
164
  getName(): Name;
156
165
  getContainingPackage(): PackageEntity;
157
166
  getTypeParameters(): readonly TypeParameterEntity[];
158
- getMembers(): OriginalTypeEntityMembers;
167
+ getMembers(): TypeEntityMembers;
159
168
  getDefinition(): StructuredTypeEntityDefinition;
160
169
  markedBasic(): boolean;
161
170
  isAbstract(): boolean;
@@ -169,6 +178,8 @@ export declare class TsGlobalClassOrInterfaceEntity implements PackageStructured
169
178
  getTags(): readonly Tag[];
170
179
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
171
180
  getContext(): EntityContext;
181
+ getLocalization(): Localization;
182
+ getOriginalEntity(): PackageStructuredTypeEntity;
172
183
  private getDeclaration;
173
184
  private isClassOrInterfaceAndVariableMerge;
174
185
  }
@@ -187,7 +198,7 @@ export declare class SourceAndTsGlobalClassOrInterfaceMergeEntity implements Pac
187
198
  getName(): Name;
188
199
  getContainingPackage(): PackageEntity;
189
200
  getTypeParameters(): readonly TypeParameterEntity[];
190
- getMembers(): OriginalTypeEntityMembers;
201
+ getMembers(): TypeEntityMembers;
191
202
  getDefinition(): StructuredTypeEntityDefinition;
192
203
  markedBasic(): boolean;
193
204
  isAbstract(): boolean;
@@ -201,6 +212,8 @@ export declare class SourceAndTsGlobalClassOrInterfaceMergeEntity implements Pac
201
212
  getTags(): readonly Tag[];
202
213
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
203
214
  getContext(): EntityContext;
215
+ getLocalization(): Localization;
216
+ getOriginalEntity(): PackageStructuredTypeEntity;
204
217
  }
205
218
  export declare class TsTypeLiteralEntity implements AnonymousStructuredTypeEntity {
206
219
  private readonly _tsctx;
@@ -215,7 +228,7 @@ export declare class TsTypeLiteralEntity implements AnonymousStructuredTypeEntit
215
228
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _containingPackage: PackageEntity);
216
229
  getNaming(): EntityNaming;
217
230
  getTypeParameters(): readonly TypeParameterEntity[];
218
- getMembers(): OriginalTypeEntityMembers;
231
+ getMembers(): TypeEntityMembers;
219
232
  getDefinition(): StructuredTypeEntityDefinition;
220
233
  markedBasic(): boolean;
221
234
  isAbstract(): boolean;
@@ -230,6 +243,8 @@ export declare class TsTypeLiteralEntity implements AnonymousStructuredTypeEntit
230
243
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
231
244
  getContainingPackage(): PackageEntity;
232
245
  getContext(): EntityContext;
246
+ getLocalization(): Localization;
247
+ getOriginalEntity(): AnonymousStructuredTypeEntity;
233
248
  }
234
249
  export declare class TsNamedTypeLiteralEntity implements PackageStructuredTypeEntity {
235
250
  private readonly _tsctx;
@@ -251,7 +266,7 @@ export declare class TsNamedTypeLiteralEntity implements PackageStructuredTypeEn
251
266
  getName(): Name;
252
267
  getContainingPackage(): PackageEntity;
253
268
  getTypeParameters(): readonly TypeParameterEntity[];
254
- getMembers(): OriginalTypeEntityMembers;
269
+ getMembers(): TypeEntityMembers;
255
270
  getDefinition(): StructuredTypeEntityDefinition;
256
271
  markedBasic(): boolean;
257
272
  isAbstract(): boolean;
@@ -265,6 +280,8 @@ export declare class TsNamedTypeLiteralEntity implements PackageStructuredTypeEn
265
280
  getTags(): readonly Tag[];
266
281
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
267
282
  getContext(): EntityContext;
283
+ getLocalization(): Localization;
284
+ getOriginalEntity(): PackageStructuredTypeEntity;
268
285
  }
269
286
  export declare class SourceAndTsNamedTypeLiteralMergeEntity implements PackageStructuredTypeEntity {
270
287
  private readonly _tsctx;
@@ -281,7 +298,7 @@ export declare class SourceAndTsNamedTypeLiteralMergeEntity implements PackageSt
281
298
  getName(): Name;
282
299
  getContainingPackage(): PackageEntity;
283
300
  getTypeParameters(): readonly TypeParameterEntity[];
284
- getMembers(): OriginalTypeEntityMembers;
301
+ getMembers(): TypeEntityMembers;
285
302
  getDefinition(): StructuredTypeEntityDefinition;
286
303
  markedBasic(): boolean;
287
304
  isAbstract(): boolean;
@@ -295,6 +312,8 @@ export declare class SourceAndTsNamedTypeLiteralMergeEntity implements PackageSt
295
312
  getTags(): readonly Tag[];
296
313
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
297
314
  getContext(): EntityContext;
315
+ getLocalization(): Localization;
316
+ getOriginalEntity(): PackageStructuredTypeEntity;
298
317
  }
299
318
  export declare class TsPropertyEntity implements FieldEntity {
300
319
  private readonly _tsctx;
@@ -322,6 +341,8 @@ export declare class TsPropertyEntity implements FieldEntity {
322
341
  markedAbstract(): boolean;
323
342
  getOverriddenMembers(): readonly types.Field[];
324
343
  isVariant(): boolean;
344
+ getLocalization(): Localization;
345
+ getOriginalEntity(): FieldEntity;
325
346
  private getDeclaration;
326
347
  }
327
348
  export declare class TsAccessorEntity implements FieldEntity {
@@ -352,6 +373,8 @@ export declare class TsAccessorEntity implements FieldEntity {
352
373
  markedAbstract(): boolean;
353
374
  getOverriddenMembers(): readonly types.Field[];
354
375
  isVariant(): boolean;
376
+ getLocalization(): Localization;
377
+ getOriginalEntity(): FieldEntity;
355
378
  private getGetAccessorDeclaration;
356
379
  }
357
380
  export declare class TsGetAccessorEntity implements GetterEntity {
@@ -368,6 +391,8 @@ export declare class TsGetAccessorEntity implements GetterEntity {
368
391
  getOwningEntity(): EntityOwningGetter;
369
392
  isHidden(): EntityHidingLevel | undefined;
370
393
  getTags(): readonly Tag[];
394
+ getLocalization(): Localization;
395
+ getOriginalEntity(): GetterEntity;
371
396
  }
372
397
  export declare class TsSetAccessorEntity implements SetterEntity {
373
398
  private readonly _tsctx;
@@ -381,6 +406,8 @@ export declare class TsSetAccessorEntity implements SetterEntity {
381
406
  getOwningEntity(): EntityOwningSetter;
382
407
  isHidden(): EntityHidingLevel | undefined;
383
408
  getTags(): readonly Tag[];
409
+ getLocalization(): Localization;
410
+ getOriginalEntity(): SetterEntity;
384
411
  }
385
412
  export declare class TsMethodEntity implements MethodEntity {
386
413
  private readonly _tsctx;
@@ -413,6 +440,8 @@ export declare class TsMethodEntity implements MethodEntity {
413
440
  isFunctionTypeInvokeMethod(): boolean;
414
441
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
415
442
  getOverriddenMembers(): readonly types.Method[];
443
+ getLocalization(): Localization;
444
+ getOriginalEntity(): MethodEntity;
416
445
  }
417
446
  export declare class TsIteratorFunctionEntity implements MethodEntity {
418
447
  private readonly _tsctx;
@@ -441,6 +470,8 @@ export declare class TsIteratorFunctionEntity implements MethodEntity {
441
470
  isFunctionTypeInvokeMethod(): boolean;
442
471
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
443
472
  getOverriddenMembers(): readonly types.Method[];
473
+ getLocalization(): Localization;
474
+ getOriginalEntity(): MethodEntity;
444
475
  private getFirstDeclaration;
445
476
  }
446
477
  export declare class TsParameterEntity implements ParameterVariableEntity {
@@ -463,6 +494,8 @@ export declare class TsParameterEntity implements ParameterVariableEntity {
463
494
  getContainer(): ParameterVariableEntityContainer;
464
495
  isOptional(): boolean;
465
496
  isVariadic(): boolean;
497
+ getLocalization(): Localization;
498
+ getOriginalEntity(): ParameterVariableEntity;
466
499
  private getDeclaration;
467
500
  }
468
501
  export declare class TsTypeParameterEntity implements TypeParameterEntity {
@@ -484,6 +517,8 @@ export declare class TsTypeParameterEntity implements TypeParameterEntity {
484
517
  isHidden(): EntityHidingLevel | undefined;
485
518
  getTags(): readonly Tag[];
486
519
  getContext(): EntityContext;
520
+ getLocalization(): Localization;
521
+ getOriginalEntity(): TypeParameterEntity;
487
522
  private getDeclaration;
488
523
  }
489
524
  export declare class TsIndexSignatureEntity implements IndexerEntity {
@@ -512,6 +547,8 @@ export declare class TsIndexSignatureEntity implements IndexerEntity {
512
547
  markedAbstract(): boolean;
513
548
  getTags(): readonly Tag[];
514
549
  getOverriddenMembers(): readonly types.Indexer[];
550
+ getLocalization(): Localization;
551
+ getOriginalEntity(): IndexerEntity;
515
552
  }
516
553
  export declare class TsConstructorEntity implements ConstructorEntity {
517
554
  private readonly _tsctx;
@@ -528,6 +565,8 @@ export declare class TsConstructorEntity implements ConstructorEntity {
528
565
  isHidden(): EntityHidingLevel | undefined;
529
566
  markedAbstract(): boolean;
530
567
  getTags(): readonly Tag[];
568
+ getLocalization(): Localization;
569
+ getOriginalEntity(): ConstructorEntity;
531
570
  }
532
571
  export declare class TsSignatureBasedDefaultConstructorEntity implements ConstructorEntity {
533
572
  private readonly _tsctx;
@@ -543,6 +582,8 @@ export declare class TsSignatureBasedDefaultConstructorEntity implements Constru
543
582
  isHidden(): EntityHidingLevel | undefined;
544
583
  markedAbstract(): boolean;
545
584
  getTags(): readonly Tag[];
585
+ getLocalization(): Localization;
586
+ getOriginalEntity(): ConstructorEntity;
546
587
  }
547
588
  export declare class TsEnumEntity implements PackageVariantTypeEntity {
548
589
  private readonly _tsctx;
@@ -559,7 +600,7 @@ export declare class TsEnumEntity implements PackageVariantTypeEntity {
559
600
  getNaming(): EntityNaming;
560
601
  getName(): Name;
561
602
  getContainingPackage(): PackageEntity;
562
- getMembers(): OriginalTypeEntityMembers;
603
+ getMembers(): TypeEntityMembers;
563
604
  getUnderlyingType(): types.Type;
564
605
  getDefinition(): VariantTypeEntityDefinition;
565
606
  getArity(): number;
@@ -569,6 +610,8 @@ export declare class TsEnumEntity implements PackageVariantTypeEntity {
569
610
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
570
611
  getBaseObjectType(): BaseObjectType;
571
612
  getContext(): EntityContext;
613
+ getLocalization(): Localization;
614
+ getOriginalEntity(): PackageVariantTypeEntity;
572
615
  }
573
616
  export declare class TsEnumMemberEntity implements FieldEntity {
574
617
  private readonly _tsctx;
@@ -594,6 +637,8 @@ export declare class TsEnumMemberEntity implements FieldEntity {
594
637
  getDefinition(): VariableEntityDefinition;
595
638
  isHidden(): EntityHidingLevel | undefined;
596
639
  getTags(): readonly Tag[];
640
+ getLocalization(): Localization;
641
+ getOriginalEntity(): FieldEntity;
597
642
  }
598
643
  export declare class TsTypeAliasEntity implements AliasTypeEntity {
599
644
  private readonly _tsctx;
@@ -610,12 +655,14 @@ export declare class TsTypeAliasEntity implements AliasTypeEntity {
610
655
  getAliasedType(): AliasedType;
611
656
  getTypeParameters(): readonly TypeParameterEntity[];
612
657
  getDefinition(): AliasTypeEntityDefinition;
613
- getMembers(): OriginalTypeEntityMembers;
658
+ getMembers(): TypeEntityMembers;
614
659
  getArity(): number;
615
660
  isHidden(): EntityHidingLevel | undefined;
616
661
  getTags(): readonly Tag[];
617
662
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
618
663
  getContext(): EntityContext;
664
+ getLocalization(): Localization;
665
+ getOriginalEntity(): AliasTypeEntity;
619
666
  private getDeclaration;
620
667
  }
621
668
  export declare class TsAnonymousFunctionTypeEntity implements AnonymousFunctionTypeEntity {
@@ -635,7 +682,7 @@ export declare class TsAnonymousFunctionTypeEntity implements AnonymousFunctionT
635
682
  getTypeParameters(): readonly TypeParameterEntity[];
636
683
  getValueParameters(): readonly ParameterVariableEntity[];
637
684
  getReturnType(): types.Type;
638
- getMembers(): OriginalTypeEntityMembers;
685
+ getMembers(): TypeEntityMembers;
639
686
  getDefinition(): FunctionTypeEntityDefinition;
640
687
  isAsync(): boolean;
641
688
  getArity(): number;
@@ -645,6 +692,8 @@ export declare class TsAnonymousFunctionTypeEntity implements AnonymousFunctionT
645
692
  getContainingPackage(): PackageEntity;
646
693
  getBaseObjectType(): BaseObjectType;
647
694
  getContext(): EntityContext;
695
+ getLocalization(): Localization;
696
+ getOriginalEntity(): AnonymousFunctionTypeEntity;
648
697
  }
649
698
  /**
650
699
  * Представляет объявления следующего вида:
@@ -681,7 +730,7 @@ export declare class TsNamedFunctionTypeEntity implements PackageFunctionTypeEnt
681
730
  getTypeParameters(): readonly TypeParameterEntity[];
682
731
  getValueParameters(): readonly ParameterVariableEntity[];
683
732
  getReturnType(): types.Type;
684
- getMembers(): OriginalTypeEntityMembers;
733
+ getMembers(): TypeEntityMembers;
685
734
  getDefinition(): FunctionTypeEntityDefinition;
686
735
  isAsync(): boolean;
687
736
  getArity(): number;
@@ -690,4 +739,6 @@ export declare class TsNamedFunctionTypeEntity implements PackageFunctionTypeEnt
690
739
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
691
740
  getBaseObjectType(): BaseObjectType;
692
741
  getContext(): EntityContext;
742
+ getLocalization(): Localization;
743
+ getOriginalEntity(): PackageFunctionTypeEntity;
693
744
  }
@@ -1,10 +1,11 @@
1
1
  import ts from 'typescript';
2
- import { Analyzer } from '../analysis/index.js';
2
+ import { Analyzer, WellKnownDeclarations } from '../analysis/index.js';
3
+ import { Localization } from '../analysis/Localization.js';
3
4
  import { Tag } from '../analysis/Tags.js';
4
5
  import { Name, PackageDialect, PackageLocale } from '../common/index.js';
5
6
  import { EntityContext, EntityHidingLevel, EntityKind, InterfacePackageEntityInfo, TypeEntity, TypeEntityWithMembers } from '../entities/index.js';
6
7
  import { PackageEntity, PackageEntityDefinition } from '../entities/PackageEntity.js';
7
- import { OriginalPackageMembers } from '../entities/PackageMembers.js';
8
+ import { PackageEntityMembers } from '../entities/PackageMembers.js';
8
9
  import { JavaScriptImplementationConfig, PackageName, PlatformKind, ProgramPackage } from '../project/index.js';
9
10
  import * as types from '../types/index.js';
10
11
  import { SourcePackageLoadedFromDtsEntity, TsPackageEntity } from './Entities.js';
@@ -20,11 +21,21 @@ export declare class TsInteropContext {
20
21
  private readonly _config;
21
22
  private readonly _packagesCreationResult;
22
23
  private readonly _defaultExportTag;
24
+ private _wellKnownDeclarations;
25
+ private _standardTypes;
23
26
  get tsProgram(): ts.Program;
24
27
  get tsChecker(): ts.TypeChecker;
25
28
  get packageContentsByEntity(): ReadonlyMap<PackageEntity, TsPackageContents>;
29
+ /**
30
+ * Стандартные объявления на английском.
31
+ */
32
+ get wellKnownDeclarations(): WellKnownDeclarations;
33
+ /**
34
+ * Стандартные типы на английском.
35
+ */
36
+ get standardTypes(): types.StandardTypes;
26
37
  constructor(analyzer: Analyzer, config: TsInteropConfig);
27
- getPackageEntities(): readonly TsPackageEntity[];
38
+ getOriginalPackageEntities(): readonly TsPackageEntity[];
28
39
  getEntityOfSourcePackageLoadedFromDts(sourcePackage: ProgramPackage): SourcePackageLoadedFromDtsEntity | undefined;
29
40
  isSignatureAsync(node: ts.SignatureDeclaration): boolean;
30
41
  getSignatureReturnType(node: ts.SignatureDeclaration, replaceWithPromisedTypeIfPromise: boolean): types.Type;
@@ -89,7 +100,6 @@ declare class TypeContext {
89
100
  private readonly _packagesWithCreatedMembers;
90
101
  private readonly _esSymbolType;
91
102
  private get checker();
92
- private get standardTypes();
93
103
  private get refObjectOrNone();
94
104
  private get esSymbolType();
95
105
  private get analyzer();
@@ -173,10 +183,12 @@ declare class TsPackageEntityForSymbolsWithUnknownOrigin implements PackageEntit
173
183
  getName(): PackageName;
174
184
  getLocale(): PackageLocale;
175
185
  getDialect(): PackageDialect;
176
- getMembers(): OriginalPackageMembers;
186
+ getMembers(): PackageEntityMembers;
177
187
  isInterface(): InterfacePackageEntityInfo | undefined;
178
188
  getImplementedInterfacePackage(): PackageEntity | undefined;
179
189
  getSupportedPlatforms(): readonly PlatformKind[];
180
190
  getDefinition(): PackageEntityDefinition;
191
+ getLocalization(): Localization;
192
+ getOriginalEntity(): PackageEntity;
181
193
  }
182
194
  export {};
@@ -1,5 +1,5 @@
1
1
  import ts from 'typescript';
2
- import { OriginalPackageMembers } from '../entities/PackageMembers.js';
2
+ import { PackageEntityMembers } from '../entities/PackageMembers.js';
3
3
  import { PackageEntity } from '../entities/index.js';
4
4
  import { ProgramPackage } from '../project/SourcePackage.js';
5
5
  import { TsInteropContext } from './TsInteropContext.js';
@@ -13,7 +13,7 @@ export declare class TsPackageContents {
13
13
  private readonly _membersCreationResult;
14
14
  private readonly _tsSymbols;
15
15
  constructor(_tsctx: TsInteropContext, _symbols: TsPackageSymbols, _packageEntity: PackageEntity, _sourcePackageToMergeWith: ProgramPackage | undefined);
16
- getMembers(): OriginalPackageMembers;
16
+ getMembers(): PackageEntityMembers;
17
17
  containsGlobalSymbol(symbol: ts.Symbol): boolean;
18
18
  getMembersCreationResult(): TsPackageMembersCreationResult;
19
19
  }
@@ -1,5 +1,5 @@
1
1
  import ts from 'typescript';
2
- import { OriginalPackageMembers } from '../entities/PackageMembers.js';
2
+ import { PackageEntityMembers } from '../entities/PackageMembers.js';
3
3
  import { NamedPackageMemberEntity, PackageEntity, TypeEntity } from '../entities/index.js';
4
4
  import { SourcePackage } from '../project/index.js';
5
5
  import * as tree from '../tree/index.js';
@@ -61,8 +61,8 @@ export declare class TsPackageMembersCreator {
61
61
  }
62
62
  export type NamedPackageMemberDeclaration = tree.PackageAliasTypeDeclaration | tree.PackageFunctionDeclaration | tree.PackageFunctionTypeDeclaration | tree.PackageStructuredTypeDeclaration | tree.PackageVariableDeclaration | tree.PackageVariableGetterDeclaration | tree.PackageVariableSetterDeclaration | tree.PackageVariantTypeDeclaration;
63
63
  export declare class TsPackageMembersCreationResult {
64
- readonly members: OriginalPackageMembers;
64
+ readonly members: PackageEntityMembers;
65
65
  readonly typeEntityBySymbol: ReadonlyMap<ts.Symbol, TypeEntity>;
66
66
  readonly packageMemberEntityByNode: ReadonlyMap<tree.Node, NamedPackageMemberEntity>;
67
- constructor(members: OriginalPackageMembers, typeEntityBySymbol: ReadonlyMap<ts.Symbol, TypeEntity>, packageMemberEntityByNode: ReadonlyMap<tree.Node, NamedPackageMemberEntity>);
67
+ constructor(members: PackageEntityMembers, typeEntityBySymbol: ReadonlyMap<ts.Symbol, TypeEntity>, packageMemberEntityByNode: ReadonlyMap<tree.Node, NamedPackageMemberEntity>);
68
68
  }
@@ -1,6 +1,6 @@
1
1
  import ts from 'typescript';
2
2
  import { TypeEntityWithMembers, TypeParameterEntity } from '../entities/index.js';
3
- import { OriginalTypeEntityMembers } from '../entities/TypeEntityMembers.js';
3
+ import { TypeEntityMembers } from '../entities/TypeEntityMembers.js';
4
4
  import { TsInteropContext } from './TsInteropContext.js';
5
5
  export declare class TsTypeMembersCreator {
6
6
  private readonly _tsctx;
@@ -11,7 +11,7 @@ export declare class TsTypeMembersCreator {
11
11
  private readonly _symbolToTakeDefaultClassConstructorsFrom;
12
12
  private readonly _membersOfTypeToMergeWith;
13
13
  private readonly _typeParameterBySymbol;
14
- constructor(_tsctx: TsInteropContext, _symbols: Iterable<ts.Symbol>, _symbolsToForceStatic: Iterable<ts.Symbol> | undefined, _typeSymbolDeclarations: readonly ts.Declaration[] | undefined, _typeEntity: TypeEntityWithMembers, _symbolToTakeDefaultClassConstructorsFrom: ts.Symbol | undefined, _membersOfTypeToMergeWith: OriginalTypeEntityMembers | undefined);
14
+ constructor(_tsctx: TsInteropContext, _symbols: Iterable<ts.Symbol>, _symbolsToForceStatic: Iterable<ts.Symbol> | undefined, _typeSymbolDeclarations: readonly ts.Declaration[] | undefined, _typeEntity: TypeEntityWithMembers, _symbolToTakeDefaultClassConstructorsFrom: ts.Symbol | undefined, _membersOfTypeToMergeWith: TypeEntityMembers | undefined);
15
15
  create(): TsTypeMembersCreationResult;
16
16
  private createTypeMemberEntity;
17
17
  /**
@@ -39,7 +39,7 @@ export declare class TsTypeMembersCreator {
39
39
  private createDefaultConstructorsFromSignatures;
40
40
  }
41
41
  export declare class TsTypeMembersCreationResult {
42
- readonly members: OriginalTypeEntityMembers;
42
+ readonly members: TypeEntityMembers;
43
43
  readonly typeParameterBySymbol: ReadonlyMap<ts.Symbol, TypeParameterEntity>;
44
- constructor(members: OriginalTypeEntityMembers, typeParameterBySymbol: ReadonlyMap<ts.Symbol, TypeParameterEntity>);
44
+ constructor(members: TypeEntityMembers, typeParameterBySymbol: ReadonlyMap<ts.Symbol, TypeParameterEntity>);
45
45
  }
@@ -1,7 +1,8 @@
1
- import { Analyzer } from '../analysis/index.js';
1
+ import { Analyzer, WellKnownDeclarations } from '../analysis/index.js';
2
2
  import { StructuredType, UnresolvedType } from './index.js';
3
3
  export declare class StandardTypes {
4
4
  private readonly _analyzer;
5
+ private readonly _wellKnownDeclarations;
5
6
  private _refObject;
6
7
  private _plainObject;
7
8
  private _number;
@@ -20,7 +21,7 @@ export declare class StandardTypes {
20
21
  private _task;
21
22
  private _error;
22
23
  private _func;
23
- constructor(_analyzer: Analyzer);
24
+ constructor(_analyzer: Analyzer, _wellKnownDeclarations: WellKnownDeclarations);
24
25
  get refObject(): StructuredType;
25
26
  get plainObject(): StructuredType;
26
27
  get number(): StructuredType;
@@ -2,6 +2,9 @@ import { Analyzer } from '../analysis/index.js';
2
2
  import { TypeParameterEntity } from '../entities/index.js';
3
3
  import { Type } from './index.js';
4
4
  export declare class Substitutions {
5
+ /**
6
+ * Ключом `SubstitutionMap` всегда является параметр на языке оригинала.
7
+ */
5
8
  readonly map: SubstitutionMap;
6
9
  private readonly _analyzer;
7
10
  get size(): number;
@@ -11,6 +11,9 @@ export type Type = StructuredType | VariantType | FunctionType | AliasType | Unr
11
11
  export interface IType {
12
12
  getSubstitutions(): Substitutions;
13
13
  applySubstitutions(map: SubstitutionMap): Type;
14
+ /**
15
+ * Сравнивает типы без учёта языка.
16
+ */
14
17
  equals(other: Type): boolean;
15
18
  getEntity(): TypeEntity | undefined;
16
19
  getBaseObjectTypeOrAliasedType(): Type | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artel/artc",
3
- "version": "0.6.25244",
3
+ "version": "0.6.25245",
4
4
  "description": "Артель Компилятор | Artel Compiler",
5
5
  "author": "Nezaboodka Team <contact@nezaboodka.com>",
6
6
  "license": "LGPL-3.0-or-later",
@@ -1,17 +0,0 @@
1
- import { LocalizedSubprogramSignature, LocalizedTypeHeader, TypeEntityWithHeaderLocalization } from '../analysis/AnalyzedTranslationPackage.js';
2
- import { Analyzer } from '../analysis/index.js';
3
- import { Localization } from '../analysis/Localization.js';
4
- import { ConstructorEntity, DestructorEntity, FunctionEntity, FunctionTypeEntity, IndexerEntity, OperatorEntity } from '../entities/index.js';
5
- import * as types from '../types/index.js';
6
- export declare class EntityLocalizationHelper {
7
- static getLocalizedFunctionSignature(func: FunctionEntity, localization: Localization): LocalizedSubprogramSignature;
8
- static getLocalizedOperatorSignature(operator: OperatorEntity, localization: Localization): LocalizedSubprogramSignature;
9
- static getLocalizedFunctionTypeSignature(functionType: FunctionTypeEntity, localization: Localization): LocalizedSubprogramSignature;
10
- static getLocalizedConstructorSignature(constructor: ConstructorEntity, localization: Localization): LocalizedSubprogramSignature;
11
- static getLocalizedDestructorSignature(destructor: DestructorEntity, localization: Localization): LocalizedSubprogramSignature;
12
- static getLocalizedIndexerSignature(indexer: IndexerEntity, localization: Localization): LocalizedSubprogramSignature;
13
- static getLocalizedTypeHeader(type: TypeEntityWithHeaderLocalization, localization: Localization): LocalizedTypeHeader;
14
- static getLocalizedSignatureTypeOfFunction(analyzer: Analyzer, func: FunctionEntity, signatureType: types.FunctionType, localization: Localization): types.FunctionType;
15
- static getLocalizedSignatureTypeOfOperator(analyzer: Analyzer, operator: OperatorEntity, signatureType: types.FunctionType, localization: Localization): types.FunctionType;
16
- static localizeFunctionType(analyzer: Analyzer, type: types.FunctionType, localizedSignature: LocalizedSubprogramSignature): types.FunctionType;
17
- }
@@ -1,19 +0,0 @@
1
- import { PackageLocale, Name } from '../common/index.js';
2
- import { Localization, LocalizedName, Translation, WithLocalization } from './Localization.js';
3
- export declare class FoundNamedDeclaration<T> implements WithLocalization<T> {
4
- readonly value: T;
5
- readonly name: LocalizedName;
6
- readonly requiresExplicitOriginalName: boolean;
7
- get localization(): Localization;
8
- constructor(value: T, name: LocalizedName, requiresExplicitOriginalName: boolean);
9
- static original<T>(value: T, name: Name, locale: PackageLocale, requiresExplicitOriginalName: boolean): FoundNamedDeclaration<T>;
10
- static translated<T>(value: T, localizedName: LocalizedName.Translated): FoundNamedDeclaration<T>;
11
- withValue<T>(value: T): FoundNamedDeclaration<T>;
12
- }
13
- export declare class FoundAnonymousDeclaration<T> implements WithLocalization<T> {
14
- readonly value: T;
15
- readonly localization: Localization;
16
- constructor(value: T, localization: Localization);
17
- static original<T>(value: T, locale: PackageLocale): FoundAnonymousDeclaration<T>;
18
- static translated<T>(value: T, translation: Translation): FoundAnonymousDeclaration<T>;
19
- }
@@ -1,15 +0,0 @@
1
- import { PackageLocale } from '../common/index.js';
2
- import { AliasTypeEntity, FunctionEntity, PackageAliasEntity, PackageEntity, PackageFunctionTypeEntity, PackageStructuredTypeEntity, PackageVariantTypeEntity, TypeOrExtensionEntity, TypeParameterEntity, VariableEntity } from '../entities/index.js';
3
- import { AnalyzedTranslationPackage, TranslatedTypeEntityMembers } from './AnalyzedTranslationPackage.js';
4
- import { LocalizedName } from './Localization.js';
5
- export declare class LocalizationContext {
6
- readonly originalLocale: PackageLocale;
7
- private readonly _translationPackageByTranslated;
8
- get translationPackages(): Iterable<AnalyzedTranslationPackage>;
9
- constructor(translationPackages: readonly AnalyzedTranslationPackage[], originalLocale: PackageLocale);
10
- getTranslationPackage(packageEntity: PackageEntity): AnalyzedTranslationPackage | undefined;
11
- getTranslationLocale(packageEntity: PackageEntity): PackageLocale;
12
- getTranslatedTypeOrExtensionEntityMembers(entity: TypeOrExtensionEntity): TranslatedTypeEntityMembers | undefined;
13
- getEntityName(entity: NamedEntity): LocalizedName;
14
- }
15
- export type NamedEntity = VariableEntity | PackageVariantTypeEntity | FunctionEntity | TypeParameterEntity | PackageFunctionTypeEntity | PackageStructuredTypeEntity | PackageAliasEntity | AliasTypeEntity;
@@ -1,14 +0,0 @@
1
- import { Name } from './Name.js';
2
- export declare class SearchName {
3
- readonly value: Name;
4
- /**
5
- * Это имя, допускающее объявления только на языке оригинала? (прим.: ~имя)
6
- */
7
- readonly isStrictlyOriginal: boolean;
8
- constructor(value: Name,
9
- /**
10
- * Это имя, допускающее объявления только на языке оригинала? (прим.: ~имя)
11
- */
12
- isStrictlyOriginal: boolean);
13
- static fromName(name: Name): SearchName;
14
- }
@@ -1 +0,0 @@
1
- export * from './StandardTypes.js';