@artel/artc 0.6.25207 → 0.6.25209

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 (101) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +36 -20
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +9923 -9250
  5. package/build/{chunk-FYWHIGGV.js → chunk-4EDLYSNW.js} +11 -8
  6. package/build/{chunk-F6DF37J3.js → chunk-5SWGY25I.js} +39172 -46399
  7. package/build/{chunk-OORYH37I.js → chunk-GKEW2LBL.js} +27 -14
  8. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +14 -10
  9. package/build/types/analysis/Analyzer.d.ts +27 -11
  10. package/build/types/analysis/AutotypeCallExpressionMeaning.d.ts +17 -1
  11. package/build/types/analysis/BaseExpressionMeaning.d.ts +17 -1
  12. package/build/types/analysis/CallExpressionMeaning.d.ts +17 -1
  13. package/build/types/analysis/DereferenceExpressionMeaning.d.ts +6 -1
  14. package/build/types/analysis/DereferencedVariableAccess.d.ts +14 -0
  15. package/build/types/analysis/DiagnosticCollector.d.ts +3 -0
  16. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +2 -5
  17. package/build/types/analysis/IndexedAccess.d.ts +14 -0
  18. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +6 -3
  19. package/build/types/analysis/ObjectExpressionMeaning.d.ts +19 -3
  20. package/build/types/analysis/PropertyAccessExpressionMeaning.d.ts +2 -4
  21. package/build/types/analysis/SemanticContext.d.ts +4 -4
  22. package/build/types/analysis/VariableAccess.d.ts +6 -2
  23. package/build/types/analysis/WellKnownDeclarations.d.ts +1 -0
  24. package/build/types/analysis/index.d.ts +4 -2
  25. package/build/types/api/Api.d.ts +2 -2
  26. package/build/types/common/AccessKind.d.ts +2 -1
  27. package/build/types/common/Constants.d.ts +1 -1
  28. package/build/types/common/JavaScriptIdentifier.d.ts +6 -0
  29. package/build/types/common/Logger.d.ts +1 -0
  30. package/build/types/common/Name.d.ts +18 -21
  31. package/build/types/common/Query.d.ts +6 -1
  32. package/build/types/common/TreeQuery.d.ts +0 -2
  33. package/build/types/common/index.d.ts +2 -1
  34. package/build/types/emitter/Emitter.d.ts +50 -16
  35. package/build/types/emitter/EmitterContext.d.ts +42 -337
  36. package/build/types/emitter/EmitterGeneratedDeclarationKind.d.ts +55 -17
  37. package/build/types/emitter/Entities.d.ts +144 -0
  38. package/build/types/emitter/EntityMap.d.ts +45 -0
  39. package/build/types/emitter/ExpressionTransformationResult.d.ts +1 -1
  40. package/build/types/emitter/GeneralLowering.d.ts +4 -68
  41. package/build/types/emitter/Internal.d.ts +0 -1
  42. package/build/types/emitter/IrBuilder.d.ts +27 -17
  43. package/build/types/emitter/IrToJs.d.ts +17 -11
  44. package/build/types/emitter/StatementTransformationResult.d.ts +5 -2
  45. package/build/types/emitter/Transformer.d.ts +21 -93
  46. package/build/types/emitter/ir/AccessedEntities.d.ts +5 -11
  47. package/build/types/emitter/ir/ComputedAccess.d.ts +19 -0
  48. package/build/types/emitter/ir/LoweringState.d.ts +25 -0
  49. package/build/types/emitter/ir/Nodes.d.ts +531 -1109
  50. package/build/types/emitter/ir/index.d.ts +3 -1
  51. package/build/types/emitter/ir/types.d.ts +6 -7
  52. package/build/types/entities/BinaryOperatorEntity.d.ts +3 -0
  53. package/build/types/entities/ConstructorEntity.d.ts +17 -21
  54. package/build/types/entities/PackageMembers.d.ts +2 -2
  55. package/build/types/entities/TypeEntityMembers.d.ts +2 -2
  56. package/build/types/entities/UnaryOperatorEntity.d.ts +3 -0
  57. package/build/types/entities/Variants.d.ts +2 -2
  58. package/build/types/entities/index.d.ts +4 -2
  59. package/build/types/executor/Compiler.d.ts +6 -1
  60. package/build/types/executor/NodeCompiler.d.ts +7 -3
  61. package/build/types/parser/Scanner.d.ts +1 -0
  62. package/build/types/project/CompilationLoader.d.ts +17 -22
  63. package/build/types/project/PackageContent.d.ts +16 -0
  64. package/build/types/project/PackageContentCreator.d.ts +3 -0
  65. package/build/types/project/SourceFile.d.ts +1 -1
  66. package/build/types/project/SourcePackage.d.ts +3 -3
  67. package/build/types/project/configuration/ConfigurationConverter.d.ts +2 -3
  68. package/build/types/project/configuration/ConfigurationTranslator.d.ts +23 -0
  69. package/build/types/project/configuration/PackageConfigurationInterpreter.d.ts +1 -27
  70. package/build/types/project/index.d.ts +3 -1
  71. package/build/types/services/AddPropertyAssignmentService.d.ts +2 -2
  72. package/build/types/services/CodeActionsService.d.ts +22 -0
  73. package/build/types/services/DefinitionService.d.ts +2 -2
  74. package/build/types/services/LanguageServer.d.ts +11 -2
  75. package/build/types/services/NodeSemanticInfo.d.ts +13 -7
  76. package/build/types/services/ReferencesService.d.ts +1 -3
  77. package/build/types/services/TranslationsGenerationService.d.ts +7 -0
  78. package/build/types/services/Types.d.ts +10 -0
  79. package/build/types/services/source-generation/SourceGenerationService.d.ts +6 -4
  80. package/build/types/services/workspace/CompilationController.d.ts +4 -3
  81. package/build/types/services/workspace/FileSystemTreeProviderBasedOnWatchedFileSystem.d.ts +5 -2
  82. package/build/types/services/workspace/ManuallyUpdatedFileSystemTreeProvider.d.ts +1 -1
  83. package/build/types/services/workspace/Workspace.d.ts +6 -2
  84. package/build/types/services/workspace/WorkspaceFiles.d.ts +2 -2
  85. package/build/types/tree/KeywordKind.d.ts +47 -46
  86. package/build/types/tree/green/SyntaxToCode.d.ts +4 -3
  87. package/build/types/ts-interop/TsInteropContext.d.ts +2 -2
  88. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +3 -3
  89. package/build/types/ts-interop/Utils.d.ts +39 -33
  90. package/package.json +6 -6
  91. package/build/types/analysis/IndexerAccess.d.ts +0 -10
  92. package/build/types/emitter/EmitterPackage.d.ts +0 -60
  93. package/build/types/emitter/EntityNameProviders.d.ts +0 -33
  94. package/build/types/generated/BuiltInSystemPackages.d.ts +0 -3
  95. package/build/types/old/Executor.d.ts +0 -14
  96. package/build/types/old/JavaScriptEmittingVisitor.d.ts +0 -1
  97. package/build/types/old/NzonParser.d.ts +0 -1
  98. package/build/types/old/NzonScanner.d.ts +0 -1
  99. package/build/types/old/NzonSyntax.d.ts +0 -1
  100. package/build/types/old/RemoteWorkspaceFileSystem.d.ts +0 -1
  101. /package/build/types/{old/JavaScriptEmitter.d.ts → emitter/EmitterContextOld.d.ts} +0 -0
@@ -1,5 +1,7 @@
1
1
  export * from './AccessedEntities.js';
2
+ export * from './ComputedAccess.js';
3
+ export * from './LoweringOptions.js';
4
+ export * from './LoweringState.js';
2
5
  export * from './Nodes.js';
3
6
  export * from './SourceLocation.js';
4
7
  export * from './types.js';
5
- export * from './LoweringOptions.js';
@@ -1,10 +1,9 @@
1
1
  import * as ir from './Nodes.js';
2
- export type Node = ir.ArrayLiteral | ir.AsExpression | ir.AssertionExpression | ir.AssumptionExpression | ir.AssignmentExpression | ir.AssignmentStatement | ir.BaseConstructorCallExpression | ir.BinaryExpression | ir.BlockStatement | ir.BooleanLiteral | ir.BreakLoopStatement | ir.CallExpression | ir.CharLiteral | ir.CommaExpression | ir.ConstructorCallExpression | ir.ContinueLoopStatement | ir.DisposeStatement | ir.RunStatement | ir.NoneLiteral | ir.EmptyStatement | ir.ErrorStatement | ir.ExpressionStatement | ir.FinallyClause | ir.ForStatement | ir.PackageConstructorDeclaration | ir.PackageEntryPointDeclaration | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration | ir.HelperMethodCallExpression | ir.IfStatement | ir.ImplicitVariantAccessExpression | ir.IndexedAccessExpression | ir.InlineJsExpression | ir.TypeMethodAccessExpression | ir.TypeVariableAccessExpression | ir.IntegerLiteral | ir.IsExpression | ir.JsIndexedAccessExpression | ir.NestedMethodDeclaration | ir.NestedMethodDeclarationStatement | ir.LocalVariableDeclaration | ir.LocalVariableDeclarationStatement | ir.NotExpression | ir.NumericLiteral | ir.OnErrorClause | ir.MethodAccessExpression | ir.MethodLiteral | ir.PrefixUnaryExpression | ir.PropertyDeclaration | ir.MeasureLiteral | ir.ReferenceExpression | ir.LoopStatement | ir.ReturnStatement | ir.SourceFile | ir.TextLiteral | ir.TextTemplateLiteral | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeExtensionDeclaration | ir.TypeIndexerDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.SwitchStatement | ir.TernaryExpression | ir.ThisExpression | ir.TryCatchFinallyStatement | ir.TypeAccessExpression | ir.ValueParameterDeclaration | ir.VariableAccessExpression | ir.VariantAccessExpression | ir.VariantDeclaration | ir.WhileStatement | ir.YieldStatement | ir.JsObjectLiteral | ir.JsObjectLiteralProperty | ir.JsPropertyAccessExpression | ir.JsFunctionLiteral | ir.ImplicitConversionExpression | ir.JsTypeOfExpression | ir.JsInstanceOfExpression | ir.UnobservableStatement | ir.TransactionalStatement | ir.TransactionalExpression | ir.UnobservableExpression | ir.JsIdentifierExpression | ir.DereferenceExpression | ir.BaseExpression | ir.OwnConstructorCallExpression | ir.EsModuleImportDirectiveStatement | ir.CjsModuleImportDirectiveStatement | ir.JsNamespaceDestructuringStatement;
3
- export type Declaration = ir.PackageConstructorDeclaration | ir.PackageEntryPointDeclaration | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration | ir.NestedMethodDeclaration | ir.LocalVariableDeclaration | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeExtensionDeclaration | ir.TypeIndexerDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.ValueParameterDeclaration | ir.VariantDeclaration | ir.PropertyDeclaration;
4
- export type Statement = ir.AssignmentStatement | ir.BlockStatement | ir.BreakLoopStatement | ir.ContinueLoopStatement | ir.DisposeStatement | ir.RunStatement | ir.EmptyStatement | ir.ErrorStatement | ir.ExpressionStatement | ir.ForStatement | ir.IfStatement | ir.NestedMethodDeclarationStatement | ir.LocalVariableDeclarationStatement | ir.LoopStatement | ir.ReturnStatement | ir.SwitchStatement | ir.TryCatchFinallyStatement | ir.WhileStatement | ir.YieldStatement | ir.UnobservableStatement | ir.TransactionalStatement | ir.EsModuleImportDirectiveStatement | ir.CjsModuleImportDirectiveStatement | ir.JsNamespaceDestructuringStatement;
5
- export type Expression = ir.ArrayLiteral | ir.AsExpression | ir.AssertionExpression | ir.AssumptionExpression | ir.AssignmentExpression | ir.BinaryExpression | ir.BooleanLiteral | ir.CallExpression | ir.CharLiteral | ir.CommaExpression | ir.ConstructorCallExpression | ir.NoneLiteral | ir.HelperMethodCallExpression | ir.ImplicitVariantAccessExpression | ir.IndexedAccessExpression | ir.InlineJsExpression | ir.TypeMethodAccessExpression | ir.TypeVariableAccessExpression | ir.IntegerLiteral | ir.IsExpression | ir.NotExpression | ir.NumericLiteral | ir.MethodAccessExpression | ir.MethodLiteral | ir.PrefixUnaryExpression | ir.MeasureLiteral | ir.ReferenceExpression | ir.DereferenceExpression | ir.TextLiteral | ir.TextTemplateLiteral | ir.TernaryExpression | ir.ThisExpression | ir.TypeAccessExpression | ir.VariableAccessExpression | ir.VariantAccessExpression | ir.BaseConstructorCallExpression | ir.JsIndexedAccessExpression | ir.JsObjectLiteral | ir.JsPropertyAccessExpression | ir.JsFunctionLiteral | ir.ImplicitConversionExpression | ir.JsTypeOfExpression | ir.JsInstanceOfExpression | ir.TransactionalExpression | ir.UnobservableExpression | ir.JsIdentifierExpression | ir.BaseExpression | ir.OwnConstructorCallExpression;
6
- export type BlockStatementClause = ir.OnErrorClause | ir.FinallyClause;
7
- export type TypeMemberDeclaration = ir.TypeVariableDeclaration | ir.TypeMethodDeclaration | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeIndexerDeclaration | ir.TypeDereferenceOperatorDeclaration | ir.PropertyDeclaration;
8
- export type PackageMemberDeclaration = ir.PackageConstructorDeclaration | ir.PackageEntryPointDeclaration | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariantTypeDeclaration | ir.TypeExtensionDeclaration;
2
+ export type Node = ir.ArrayLiteral | ir.AsExpression | ir.AssertionExpression | ir.AssumptionExpression | ir.AssignmentExpression | ir.AssignmentStatement | ir.BaseConstructorCallExpression | ir.BinaryExpression | ir.BlockStatement | ir.BooleanLiteral | ir.BreakLoopStatement | ir.CallExpression | ir.CharLiteral | ir.CommaExpression | ir.ConstructorCallExpression | ir.ContinueLoopStatement | ir.DisposeStatement | ir.RunStatement | ir.NoneLiteral | ir.EmptyStatement | ir.ErrorStatement | ir.ExpressionStatement | ir.FinallyClause | ir.ForStatement | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration | ir.HelperMethodCallExpression | ir.IfStatement | ir.IndexedAccessExpression | ir.InlineJsExpression | ir.TypeMethodAccessExpression | ir.TypeVariableAccessExpression | ir.IntegerLiteral | ir.IsExpression | ir.JsIndexedAccessExpression | ir.NestedMethodDeclaration | ir.NestedMethodDeclarationStatement | ir.LocalVariableDeclaration | ir.LocalVariableDeclarationStatement | ir.NotExpression | ir.NumericLiteral | ir.OnErrorClause | ir.MethodAccessExpression | ir.MethodLiteral | ir.PrefixUnaryExpression | ir.MeasureLiteral | ir.ReferenceExpression | ir.LoopStatement | ir.Package | ir.ReturnStatement | ir.TextLiteral | ir.TextTemplateLiteral | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.SwitchStatement | ir.TernaryExpression | ir.ThisExpression | ir.TryCatchFinallyStatement | ir.TypeAccessExpression | ir.ValueParameterDeclaration | ir.VariableAccessExpression | ir.VariantAccessExpression | ir.VariantDeclaration | ir.WhileStatement | ir.YieldStatement | ir.JsObjectLiteral | ir.JsObjectLiteralProperty | ir.JsPropertyAccessExpression | ir.JsFunctionLiteral | ir.JsTypeOfExpression | ir.JsInstanceOfExpression | ir.JsIdentifierExpression | ir.DereferenceExpression | ir.BaseExpression | ir.OwnConstructorCallExpression | ir.EsModuleImportDirectiveStatement | ir.CjsModuleImportDirectiveStatement | ir.JsNamespaceDestructuringStatement | ir.TypeDereferencedVariableGetterDeclaration | ir.TypeDereferencedVariableSetterDeclaration;
3
+ export type Declaration = ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration | ir.NestedMethodDeclaration | ir.LocalVariableDeclaration | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.ValueParameterDeclaration | ir.VariantDeclaration | ir.TypeDereferencedVariableGetterDeclaration | ir.TypeDereferencedVariableSetterDeclaration;
4
+ export type Statement = ir.AssignmentStatement | ir.BlockStatement | ir.BreakLoopStatement | ir.ContinueLoopStatement | ir.DisposeStatement | ir.RunStatement | ir.EmptyStatement | ir.ErrorStatement | ir.ExpressionStatement | ir.ForStatement | ir.IfStatement | ir.NestedMethodDeclarationStatement | ir.LocalVariableDeclarationStatement | ir.LoopStatement | ir.ReturnStatement | ir.SwitchStatement | ir.TryCatchFinallyStatement | ir.WhileStatement | ir.YieldStatement | ir.EsModuleImportDirectiveStatement | ir.CjsModuleImportDirectiveStatement | ir.JsNamespaceDestructuringStatement;
5
+ export type Expression = ir.ArrayLiteral | ir.AsExpression | ir.AssertionExpression | ir.AssumptionExpression | ir.AssignmentExpression | ir.BinaryExpression | ir.BooleanLiteral | ir.CallExpression | ir.CharLiteral | ir.CommaExpression | ir.ConstructorCallExpression | ir.NoneLiteral | ir.HelperMethodCallExpression | ir.IndexedAccessExpression | ir.InlineJsExpression | ir.TypeMethodAccessExpression | ir.TypeVariableAccessExpression | ir.IntegerLiteral | ir.IsExpression | ir.NotExpression | ir.NumericLiteral | ir.MethodAccessExpression | ir.MethodLiteral | ir.PrefixUnaryExpression | ir.MeasureLiteral | ir.ReferenceExpression | ir.DereferenceExpression | ir.TextLiteral | ir.TextTemplateLiteral | ir.TernaryExpression | ir.ThisExpression | ir.TypeAccessExpression | ir.VariableAccessExpression | ir.VariantAccessExpression | ir.BaseConstructorCallExpression | ir.JsIndexedAccessExpression | ir.JsObjectLiteral | ir.JsPropertyAccessExpression | ir.JsFunctionLiteral | ir.JsTypeOfExpression | ir.JsInstanceOfExpression | ir.JsIdentifierExpression | ir.BaseExpression | ir.OwnConstructorCallExpression;
6
+ export type TypeMemberDeclaration = ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeDereferencedVariableGetterDeclaration | ir.TypeDereferencedVariableSetterDeclaration;
7
+ export type PackageMemberDeclaration = ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration;
9
8
  export type LValueExpression = ir.VariableAccessExpression | ir.TypeVariableAccessExpression | ir.IndexedAccessExpression | ir.JsIndexedAccessExpression | ir.JsPropertyAccessExpression | ir.ThisExpression | ir.DereferenceExpression;
10
9
  export declare function isLValueExpression(node: Expression): node is LValueExpression;
@@ -1,3 +1,4 @@
1
+ import { Tag } from '../analysis/Tags.js';
1
2
  import * as types from '../types/index.js';
2
3
  import { DefinitionKind, EntityHidingLevel, EntityKind, TypeMemberEntityContainer } from './index.js';
3
4
  export interface BinaryOperatorEntity {
@@ -9,6 +10,7 @@ export interface BinaryOperatorEntity {
9
10
  getDefinition(): BinaryOperatorDefinition;
10
11
  getContainer(): TypeMemberEntityContainer;
11
12
  isHidden(): EntityHidingLevel | undefined;
13
+ getTags(): readonly Tag[];
12
14
  }
13
15
  export type BinaryOperatorDefinition = {
14
16
  kind: DefinitionKind.Intrinsic;
@@ -45,4 +47,5 @@ export declare class IntrinsicBinaryOperatorEntity implements BinaryOperatorEnti
45
47
  getDefinition(): BinaryOperatorDefinition;
46
48
  getContainer(): TypeMemberEntityContainer;
47
49
  isHidden(): EntityHidingLevel | undefined;
50
+ getTags(): readonly Tag[];
48
51
  }
@@ -3,7 +3,7 @@ import { Tag } from '../analysis/Tags.js';
3
3
  import { Analyzer } from '../analysis/index.js';
4
4
  import { TypeConstructorDeclaration } from '../tree/index.js';
5
5
  import * as types from '../types/index.js';
6
- import type { AliasTypeEntity, TypeEntityWithMembers } from './index.js';
6
+ import type { TypeEntityWithMembers } from './index.js';
7
7
  import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterVariableEntity, TypeMemberEntityContainer, TypeVariableEntity } from './index.js';
8
8
  export interface ConstructorEntity {
9
9
  readonly kind: EntityKind.Constructor;
@@ -17,9 +17,20 @@ export interface ConstructorEntity {
17
17
  }
18
18
  export declare class DefaultConstructorEntityInfo {
19
19
  readonly baseConstructor: types.Constructor | undefined;
20
- readonly orderedParametersForBaseConstructor: readonly ParameterVariableEntity[];
20
+ readonly orderedParametersForBaseConstructor: readonly DefaultConstructorParameterForBaseConstructorInfo[];
21
21
  readonly hasParametersForFieldInitialization: boolean;
22
- constructor(baseConstructor: types.Constructor | undefined, orderedParametersForBaseConstructor: readonly ParameterVariableEntity[], hasParametersForFieldInitialization: boolean);
22
+ readonly parametersForOwnFieldsInitialization: readonly ConstructorParameterInitializingFieldInfo[] | undefined;
23
+ constructor(baseConstructor: types.Constructor | undefined, orderedParametersForBaseConstructor: readonly DefaultConstructorParameterForBaseConstructorInfo[], hasParametersForFieldInitialization: boolean, parametersForOwnFieldsInitialization: readonly ConstructorParameterInitializingFieldInfo[] | undefined);
24
+ }
25
+ export declare class DefaultConstructorParameterForBaseConstructorInfo {
26
+ readonly parameter: ParameterVariableEntity;
27
+ readonly baseConstructorParameter: ParameterVariableEntity;
28
+ constructor(parameter: ParameterVariableEntity, baseConstructorParameter: ParameterVariableEntity);
29
+ }
30
+ export declare class ConstructorParameterInitializingFieldInfo {
31
+ readonly parameter: ParameterVariableEntity;
32
+ readonly field: TypeVariableEntity;
33
+ constructor(parameter: ParameterVariableEntity, field: TypeVariableEntity);
23
34
  }
24
35
  export type ConstructorEntityDefinition = {
25
36
  kind: DefinitionKind.Source;
@@ -65,8 +76,7 @@ export declare class DefaultConstructorEntity implements ConstructorEntity {
65
76
  private readonly _variablesToInitialize;
66
77
  private readonly _baseConstructor;
67
78
  readonly kind = EntityKind.Constructor;
68
- private readonly _valueParameters;
69
- private readonly _orderedParametersForBaseConstructor;
79
+ private readonly _parametersInfo;
70
80
  constructor(_analyzer: Analyzer, _containingType: TypeEntityWithMembers, _variablesToInitialize: readonly VariableToInitialize[], _baseConstructor: FoundAnonymousDeclaration<types.Constructor> | undefined);
71
81
  getValueParameters(): readonly ParameterVariableEntity[];
72
82
  getDefinition(): ConstructorEntityDefinition;
@@ -75,25 +85,11 @@ export declare class DefaultConstructorEntity implements ConstructorEntity {
75
85
  isHidden(): EntityHidingLevel | undefined;
76
86
  isAbstract(): boolean;
77
87
  getTags(): readonly Tag[];
78
- private getOrderedParametersForBaseConstructor;
88
+ private getParametersInfo;
89
+ private createOrderedParametersForBaseConstructor;
79
90
  }
80
91
  export declare class VariableToInitialize {
81
92
  readonly entity: TypeVariableEntity;
82
93
  readonly hasInitializer: boolean;
83
94
  constructor(entity: TypeVariableEntity, hasInitializer: boolean);
84
95
  }
85
- export declare class SynthesizedAliasTypeConstructor implements ConstructorEntity {
86
- private readonly _analyzer;
87
- private readonly _originalConstructor;
88
- private readonly _aliasTypeEntity;
89
- readonly kind = EntityKind.Constructor;
90
- private readonly _valueParameters;
91
- constructor(_analyzer: Analyzer, _originalConstructor: types.Constructor, _aliasTypeEntity: AliasTypeEntity);
92
- getValueParameters(): readonly ParameterVariableEntity[];
93
- getDefinition(): ConstructorEntityDefinition;
94
- getContainer(): TypeMemberEntityContainer;
95
- isDefault(): DefaultConstructorEntityInfo | undefined;
96
- isHidden(): EntityHidingLevel | undefined;
97
- isAbstract(): boolean;
98
- getTags(): readonly Tag[];
99
- }
@@ -5,8 +5,8 @@ import * as types from '../types/index.js';
5
5
  export declare class OriginalPackageMembers {
6
6
  private readonly _namedMembers;
7
7
  private readonly _typeExtensions;
8
- private readonly _membersByUniversalName;
9
- private get membersByUniversalName();
8
+ private readonly _membersByNameKey;
9
+ private get membersByNameKey();
10
10
  constructor(_namedMembers: readonly NamedMember[], _typeExtensions: readonly TypeExtensionEntity[]);
11
11
  getNamedMembers(): readonly NamedMember[];
12
12
  getNamedMembersByName(name: Name): readonly NamedMember[];
@@ -15,10 +15,10 @@ export declare class OriginalTypeEntityMembers {
15
15
  private readonly _referenceOperators;
16
16
  private readonly _unaryOperators;
17
17
  private readonly _binaryOperators;
18
- private readonly _membersByUniversalName;
18
+ private readonly _membersByNameKey;
19
19
  private readonly _unaryOperatorsByKind;
20
20
  private readonly _binaryOperatorsByKind;
21
- private get membersByUniversalName();
21
+ private get membersByNameKey();
22
22
  private get unaryOperatorByKind();
23
23
  private get binaryOperatorByKind();
24
24
  constructor(_namedMembers: readonly NamedTypeMemberEntity[], _constructors: readonly ConstructorEntity[], _destructors: readonly DestructorEntity[], _indexers: readonly IndexerEntity[], _referenceOperators: readonly DereferenceOperatorEntity[], _unaryOperators: readonly UnaryOperatorEntity[], _binaryOperators: readonly BinaryOperatorEntity[]);
@@ -1,3 +1,4 @@
1
+ import { Tag } from '../analysis/Tags.js';
1
2
  import * as types from '../types/index.js';
2
3
  import { DefinitionKind, EntityHidingLevel, EntityKind, TypeMemberEntityContainer } from './index.js';
3
4
  export interface UnaryOperatorEntity {
@@ -8,6 +9,7 @@ export interface UnaryOperatorEntity {
8
9
  getDefinition(): UnaryOperatorDefinition;
9
10
  getContainer(): TypeMemberEntityContainer;
10
11
  isHidden(): EntityHidingLevel | undefined;
12
+ getTags(): readonly Tag[];
11
13
  }
12
14
  export type UnaryOperatorDefinition = {
13
15
  kind: DefinitionKind.Intrinsic;
@@ -30,4 +32,5 @@ export declare class IntrinsicUnaryOperatorEntity implements UnaryOperatorEntity
30
32
  getDefinition(): UnaryOperatorDefinition;
31
33
  getContainer(): TypeMemberEntityContainer;
32
34
  isHidden(): EntityHidingLevel | undefined;
35
+ getTags(): readonly Tag[];
33
36
  }
@@ -2,8 +2,8 @@ import { Name } from '../common/index.js';
2
2
  import { VariantEntity } from './VariantEntity.js';
3
3
  export declare class OriginalVariants {
4
4
  private readonly _variants;
5
- private readonly _variantsByUniversalName;
6
- private get variantsByUniversalName();
5
+ private readonly _variantsByNameKey;
6
+ private get variantsByNameKey();
7
7
  constructor(_variants: readonly VariantEntity[]);
8
8
  get(): readonly VariantEntity[];
9
9
  getByName(name: Name): readonly VariantEntity[];
@@ -75,8 +75,10 @@ export type TypeEntityWithMembers = MethodTypeEntity | StructuredTypeEntity | Va
75
75
  export declare function isTypeEntityWithMembers(entity: TypeEntity): entity is TypeEntityWithMembers;
76
76
  export declare function isTypeEntity(entity: Entity): entity is TypeEntity;
77
77
  export declare function isNamedTypeEntity(entity: TypeEntity): entity is NamedTypeEntity;
78
- export type PackageMemberEntity = PackageVariableEntity | PackageMethodEntity | PackageTypeEntity;
79
- export type EntityWithTags = AliasTypeEntity | ConstructorEntity | DestructorEntity | IndexerEntity | DereferenceOperatorEntity | MethodEntity | MethodTypeEntity | StructuredTypeEntity | VariableEntity | VariantEntity | VariantTypeEntity;
78
+ export type PackageMemberEntity = PackageVariableEntity | PackageMethodEntity | PackageTypeEntity | TypeExtensionEntity;
79
+ export declare function isPackageMemberEntity(entity: Entity): entity is PackageMemberEntity;
80
+ export type NamedPackageMemberEntity = PackageVariableEntity | PackageMethodEntity | PackageTypeEntity;
81
+ export type EntityWithTags = AliasTypeEntity | ConstructorEntity | DestructorEntity | IndexerEntity | DereferenceOperatorEntity | MethodEntity | MethodTypeEntity | StructuredTypeEntity | VariableEntity | VariantEntity | VariantTypeEntity | GetterEntity | SetterEntity;
80
82
  export declare function isEntityWithTags(entity: Entity): entity is EntityWithTags;
81
83
  export type TypeMemberEntity = TypeVariableEntity | TypeMethodEntity | ConstructorEntity | DestructorEntity | IndexerEntity | DereferenceOperatorEntity | UnaryOperatorEntity | BinaryOperatorEntity;
82
84
  export declare function isTypeMemberEntity(entity: Entity): entity is TypeMemberEntity;
@@ -7,9 +7,14 @@ import { SourcesProvider } from '../project/CompilationLoader.js';
7
7
  import { TypeScriptLibrariesProvider } from '../ts-interop/TsLibrariesProvider.js';
8
8
  export type LaunchUri = Uri;
9
9
  export declare class Compiler {
10
- static loadCompilation(projectUri: Uri, sourcesProvider: SourcesProvider, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, workspaceUri?: Uri, standardPackagesUri?: Uri, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
10
+ static loadCompilation(projectUri: Uri, sourcesProvider: SourcesProvider, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, options?: LoadCompilationOptions, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
11
11
  static createAnalyzer(compilation: Compilation, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, _cancellationToken?: CancellationToken): Promise<Analyzer | undefined>;
12
12
  static analyze(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<boolean>;
13
13
  static emit(analyzer: Analyzer, outputUri: Uri, outputAcceptor: OutputAcceptor, _diagnostics: DiagnosticAcceptor | undefined, emitOptions?: EmitOptions, cancellationToken?: CancellationToken): Promise<LaunchUri | undefined>;
14
14
  static emitToString(analyzer: Analyzer, _diagnostics: DiagnosticAcceptor | undefined, emitOptions?: EmitOptions, cancellationToken?: CancellationToken): Promise<string>;
15
15
  }
16
+ export interface LoadCompilationOptions {
17
+ workspaceUri?: Uri;
18
+ builtInsStandardPackagesUri?: Uri;
19
+ userStandardPackagesUri?: Uri;
20
+ }
@@ -10,19 +10,23 @@ export declare class NodeCompiler {
10
10
  private static get fileSystem();
11
11
  static findStandardTypeScriptLibrary(nodeModulesSearchPaths: readonly string[], defaultTsLibraryPath?: string): Promise<Uri | undefined>;
12
12
  static createTypeScriptLibrariesProvider(nodeModulesSearchPaths: readonly string[], defaultTsLibraryPath: string | undefined, diagnostics: DiagnosticAcceptor | undefined): Promise<TypeScriptLibrariesProvider | undefined>;
13
- static loadCompilation(projectPath: string, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, workspacePath?: string, standardPackagesPath?: string, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
13
+ static loadCompilation(projectPath: string, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, options?: NodeCompilerLoadCompilationOptions, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
14
14
  static createAnalyzer(compilation: Compilation, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<Analyzer | undefined>;
15
15
  static analyze(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<boolean>;
16
16
  static emit(analyzer: Analyzer, outputPath: string, diagnostics: DiagnosticAcceptor | undefined, emitOptions?: EmitOptions, cancellationToken?: CancellationToken): Promise<LaunchPath | undefined>;
17
17
  static compile(task: NodeCompilerTask): Promise<LaunchPath | undefined>;
18
18
  }
19
+ export interface NodeCompilerLoadCompilationOptions {
20
+ workspacePath?: string;
21
+ builtInsStandardPackagesPath?: string;
22
+ userStandardPackagesPath?: string;
23
+ }
19
24
  export interface NodeCompilerTask {
20
25
  nodeModulesWithTypeScriptSearchPaths: readonly string[];
21
26
  projectPath: string;
22
27
  outputPath: string;
23
- workspacePath?: string;
24
- standardPackagesPath?: string;
25
28
  diagnostics: DiagnosticAcceptor | undefined;
29
+ loadCompilationOptions?: NodeCompilerLoadCompilationOptions;
26
30
  defaultTsLibraryPath?: string;
27
31
  emitOptions?: EmitOptions;
28
32
  cancellationToken?: CancellationToken;
@@ -57,4 +57,5 @@ export declare class Scanner {
57
57
  static isIdentifierPart(char: number): boolean;
58
58
  static isMeasureUnit(char: number): boolean;
59
59
  static isPlainIdentifier(textWithoutQuotes: string): boolean;
60
+ static isIdentifier(text: string): boolean;
60
61
  }
@@ -1,25 +1,24 @@
1
1
  import { CancellationToken, Uri } from '../common/index.js';
2
2
  import { Diagnostic, DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
3
3
  import { Compilation } from './Compilation.js';
4
+ import { ConvertedConfiguration } from './configuration/ConfigurationConverter.js';
4
5
  import * as fsTree from './FileSystemTree.js';
6
+ import * as packageContent from './PackageContent.js';
5
7
  import { PackageName, ProgramPackageConfiguration } from './SourcePackage.js';
6
- import { ConvertedConfiguration } from './configuration/ConfigurationConverter.js';
7
8
  export declare class CompilationLoader {
8
9
  static readonly artelSystemPackageName: PackageName;
9
- private readonly _rootDirectory;
10
- private readonly _fileSystemTree;
10
+ private readonly _source;
11
11
  private readonly _config;
12
12
  private readonly _diagnostics;
13
13
  private readonly _cancellationToken;
14
14
  private _configurationsByPackageOrGroupUri;
15
- private readonly _userPackages;
16
- private readonly _libraryPackages;
17
15
  private constructor();
18
- static loadUsingSourcesProvider(uri: Uri, sourcesProvider: SourcesProvider, config: CompilationLoadConfig, diagnostics: DiagnosticAcceptor | undefined, workspaceUri?: Uri, namesOfDirectoriesToIgnore?: readonly string[], cancellationToken?: CancellationToken): Promise<{
16
+ static loadUsingSourcesProvider(uri: Uri, sourcesProvider: SourcesProvider, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, workspaceUri?: Uri, namesOfDirectoriesToIgnore?: readonly string[], cancellationToken?: CancellationToken): Promise<{
19
17
  loadResult: CompilationLoadResult;
20
18
  fileSystemTree: fsTree.FileSystemTree;
21
19
  }>;
22
- static loadFromFileSystemTree(rootDirectory: fsTree.Directory, fileSystemTree: fsTree.ReadonlyFileSystemTree | undefined, config: CompilationLoadConfig, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<CompilationLoadResult>;
20
+ static loadFromFileSystemTree(rootDirectory: fsTree.Directory, fileSystemTree: fsTree.ReadonlyFileSystemTree, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, cancellationToken?: CancellationToken): Promise<CompilationLoadResult>;
21
+ static loadFromPackageContents(contents: readonly packageContent.PackageContent[], options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, cancellationToken?: CancellationToken): Promise<CompilationLoadResult>;
23
22
  /**
24
23
  * Ищет папку с конфигурацией (папку '.артель') в переданной папке.
25
24
  */
@@ -38,20 +37,9 @@ export declare class CompilationLoader {
38
37
  * Проверяет, содержит ли папка конфигурационную папку (папку с именем '.артель').
39
38
  */
40
39
  static checkIfDirectoryContainsArtelConfigurationUsingSourcesProvider(uri: Uri, sourcesProvider: SourcesProvider): Promise<boolean>;
41
- private static convertConfig;
40
+ private static convertOptions;
42
41
  private static loadArtelFiles;
43
42
  private load;
44
- private loadSystemPackages;
45
- private loadPackagesFromAllAccessibleNodeModulesDirectories;
46
- private loadAndAccumulatePackagesFromSingleNodeModulesDirectory;
47
- private loadPackageGroupRecursively;
48
- private loadDirectoryWithUnprocessedConfiguration;
49
- private loadDirectoryWithProcessedConfiguration;
50
- private loadPackage;
51
- private loadPackageDirectoryAndAccumulateFilesRecursively;
52
- private createOrReuseSourceFile;
53
- private processOrReuseConfiguration;
54
- private processConfiguration;
55
43
  }
56
44
  export declare class DirectoryEntry {
57
45
  readonly uri: Uri;
@@ -68,7 +56,7 @@ export interface SourcesProvider {
68
56
  readDirectory(uri: Uri, fileNameExtensions?: Set<string>): Promise<readonly DirectoryEntry[]>;
69
57
  readFile(uri: Uri): Promise<string | undefined>;
70
58
  }
71
- export interface CompilationLoadConfig {
59
+ export interface CompilationLoaderOptions {
72
60
  previousLoadResult?: CompilationLoadResult;
73
61
  treatRootAsPackageIfConfigIsMissing?: boolean;
74
62
  /**
@@ -76,9 +64,16 @@ export interface CompilationLoadConfig {
76
64
  */
77
65
  getMainPackageConfigurationIfAbsent?: MainPackageConfigurationProvider;
78
66
  compilationKind?: CompilationKind;
79
- systemProjectDirectoriesOverride?: readonly fsTree.Directory[];
80
67
  provideConfiguration?: ConfigurationProvider;
81
- standardPackagesUri?: Uri;
68
+ /**
69
+ * Путь к папке со стандартными пакетами, указанный в конфигурации пользователем.
70
+ */
71
+ userStandardPackagesUri?: Uri;
72
+ /**
73
+ * Путь к папке со стандартными пакетами, поставляемыми вместе с компилятором.
74
+ */
75
+ builtInStandardPackagesUri?: Uri;
76
+ additionalPackageContents?: readonly packageContent.PackageContent[];
82
77
  enableLogging?: boolean;
83
78
  }
84
79
  export declare enum CompilationKind {
@@ -0,0 +1,16 @@
1
+ import * as configEn from './configuration/types/PackageConfigurationEn.js';
2
+ import * as configRu from './configuration/types/PackageConfigurationRu.js';
3
+ export type PackageOrTranslationsConfiguration = configEn.Package | configEn.Translations | configRu.Пакет | configRu.Переводы;
4
+ export type PackageConfigurationLocale = 'en' | 'ru';
5
+ export interface PackageContent {
6
+ configuration: PackageOrTranslationsConfiguration;
7
+ configurationLocale: PackageConfigurationLocale;
8
+ fileContents: FileContent[];
9
+ }
10
+ export interface FileContent {
11
+ /**
12
+ * Сегменты пути должны быть разделены символом `/`.
13
+ */
14
+ relativePath: string;
15
+ text: string;
16
+ }
@@ -0,0 +1,3 @@
1
+ import { Directory, ReadonlyFileSystemTree } from './FileSystemTree.js';
2
+ import { PackageContent } from './PackageContent.js';
3
+ export declare function createPackageContentsFromFSTree(rootDirectory: Directory, fileSystemTree: ReadonlyFileSystemTree): Promise<PackageContent[]>;
@@ -8,7 +8,7 @@ export declare class SourceFile extends TextFile {
8
8
  private readonly _node;
9
9
  get package(): SourcePackage;
10
10
  private constructor();
11
- static create(text: string, uri: Uri, name: string, version: number): SourceFile;
11
+ static create(text: string, uri: Uri, version: number): SourceFile;
12
12
  /**
13
13
  * Данный метод должен вызываться только пакетом этого исходного файла.
14
14
  */
@@ -38,6 +38,7 @@ export declare class TranslationPackageConfiguration {
38
38
  readonly targetPackageName: PackageName;
39
39
  readonly translatedName: PackageName;
40
40
  readonly translationLocale: PackageLocale;
41
+ get name(): PackageName;
41
42
  constructor(targetPackageName: PackageName, translatedName: PackageName, translationLocale: PackageLocale);
42
43
  }
43
44
  export declare class ProgramPackageConfiguration {
@@ -56,10 +57,9 @@ export declare class ProgramPackageConfiguration {
56
57
  }
57
58
  export declare class PackageName {
58
59
  readonly segments: ReadonlyNonEmptyArray<Name>;
59
- get lastSegment(): Name;
60
60
  constructor(segments: ReadonlyNonEmptyArray<Name>);
61
- static fromOriginalSegments(segments: ReadonlyNonEmptyArray<string>): PackageName;
62
- universallyEquals(name: PackageName): boolean;
61
+ static parse(name: string): PackageName;
62
+ considerEqual(name: PackageName): boolean;
63
63
  toString(original?: boolean): string;
64
64
  }
65
65
  export type RequiredPackageConfig = RequiredPackageConfig.Npm | RequiredPackageConfig.NuGet;
@@ -2,13 +2,13 @@ import { PackageDialect } from '../../common/index.js';
2
2
  import { PackageLocale } from '../../common/PackageLocale.js';
3
3
  import { Uri } from '../../common/Uri.js';
4
4
  import * as origin from '../configuration/types/PackageConfigurationEn.js';
5
- import { PackageConfiguration, PackageName, ProgramPackageConfiguration, TranslationPackageConfiguration } from '../SourcePackage.js';
5
+ import { PackageConfiguration, ProgramPackageConfiguration, TranslationPackageConfiguration } from '../SourcePackage.js';
6
6
  export declare class ConfigurationConverter {
7
7
  private static readonly _uriRegexp;
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): TranslationPackageConfiguration | undefined;
11
+ static convertTranslationsConfiguration(configuration: origin.Translations): TranslationPackageConfiguration;
12
12
  private static convertJavaScriptImplementation;
13
13
  private static convertLanguage;
14
14
  private static convertDialect;
@@ -21,5 +21,4 @@ export interface ConvertedConfiguration {
21
21
  }
22
22
  export declare class PackageGroupConfiguration {
23
23
  }
24
- export declare function parsePackageName(text: string): PackageName | undefined;
25
24
  export declare function createDefaultPackageConfiguration(packageUri: Uri | undefined, locale?: PackageLocale, dialect?: PackageDialect): ProgramPackageConfiguration;
@@ -0,0 +1,23 @@
1
+ import { PackageLocale } from '../../common/PackageLocale.js';
2
+ import * as configEn from '../configuration/types/PackageConfigurationEn.js';
3
+ import * as configRu from '../configuration/types/PackageConfigurationRu.js';
4
+ export type ConfigurationArray = configEn.ConfigurationArray | configRu.МассивКонфигураций;
5
+ export type Configuration = configEn.Configuration | configRu.Конфигурация;
6
+ /**
7
+ * Заменяет ключи объектов конфигурации на ключи на английском языке.
8
+ *
9
+ * @example
10
+ * [{
11
+ * "тип": "Пакет",
12
+ * "имя": "МойПакет"
13
+ * }]
14
+ * ->
15
+ * [{
16
+ * "type": "Package",
17
+ * "name": "МойПакет"
18
+ * }]
19
+ */
20
+ export declare class ConfigurationTranslator {
21
+ static translate(configuration: ConfigurationArray, locale: PackageLocale): configEn.ConfigurationArray;
22
+ static translateConfiguration(configuration: Configuration, locale: PackageLocale): configEn.Configuration;
23
+ }
@@ -1,27 +1 @@
1
- import { Analyzer, TsInteropInputs } from '../../analysis/index.js';
2
- import { CancellationToken, Result, Uri } from '../../common/index.js';
3
- import { Diagnostic, DiagnosticAcceptor } from '../../diagnostic/Diagnostic.js';
4
- import { TypeScriptLibrariesProvider } from '../../ts-interop/TsLibrariesProvider.js';
5
- import { Compilation } from '../Compilation.js';
6
- import { CompilationLoadResult } from '../CompilationLoader.js';
7
- import * as fsTree from '../FileSystemTree.js';
8
- import * as buildScript from './BuildPackageApi.js';
9
- export declare class PackageConfigurationInterpreter {
10
- static readonly artelPackageUri: Uri;
11
- static readonly buildPackageUri: Uri;
12
- static readonly platformJavaScriptPackageUri: Uri;
13
- static readonly availablePackageUris: Uri[];
14
- static readonly asyncFunctionConstructor: any;
15
- static interpret(configurationDirectory: fsTree.Directory, tsInteropInputs: TsInteropInputs, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<Result<buildScript.Package | undefined, undefined>>;
16
- static createTsInteropInputsForInterpretation(librariesProvider: TypeScriptLibrariesProvider): TsInteropInputs;
17
- static loadConfigurationCompilation(configurationDirectory: fsTree.Directory, diagnostics: DiagnosticAcceptor | undefined, previousLoadResult?: CompilationLoadResult, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
18
- static compileAndExecuteConfiguration(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<Result<buildScript.Package | undefined, undefined>>;
19
- private static analyze;
20
- private static executeConfigurationCode;
21
- }
22
- export declare class RawInterpretationResult {
23
- readonly configuration: buildScript.Package | undefined;
24
- readonly isSuccessful: boolean;
25
- readonly diagnostics: readonly Diagnostic[];
26
- constructor(configuration: buildScript.Package | undefined, isSuccessful: boolean, diagnostics: readonly Diagnostic[]);
27
- }
1
+ export {};
@@ -1,11 +1,13 @@
1
1
  export * from './Compilation.js';
2
2
  export * from './CompilationLoader.js';
3
+ export * from './configuration/ConfigurationConverter.js';
3
4
  export * from './configuration/ConfigurationFileParser.js';
4
5
  export * from './configuration/PackageConfigurationInterpreter.js';
5
- export * from './configuration/ConfigurationConverter.js';
6
6
  export * as config from './configuration/types/PackageConfigurationEn.js';
7
7
  export * as configRu from './configuration/types/PackageConfigurationRu.js';
8
8
  export * as fsTree from './FileSystemTree.js';
9
+ export * as packageContent from './PackageContent.js';
10
+ export * from './PackageContentCreator.js';
9
11
  export * from './Position.js';
10
12
  export * from './SourceFile.js';
11
13
  export * from './SourcePackage.js';
@@ -9,7 +9,7 @@ export declare class AddPropertyAssignmentService {
9
9
  * Если предыдущее присваивание не вложено ни в какие конструкции ветвления, присваивание нового значение можно
10
10
  * расположить сразу после. Иначе присваивание необходимо расположить в конце подпрограммы (после всех ветвлений).
11
11
  */
12
- private ifShouldBeAssignedAtTheEndOfSubProgramThenBody;
13
- private getContainingSubProgram;
12
+ private ifShouldBeAssignedAtTheEndOfSubprogramThenBody;
13
+ private getContainingSubprogram;
14
14
  private detectNewLine;
15
15
  }
@@ -0,0 +1,22 @@
1
+ import { Analyzer } from '../analysis/Analyzer.js';
2
+ import { DiagnosticCode } from '../diagnostic/DiagnosticCode.js';
3
+ import { SourceFile } from '../project/SourceFile.js';
4
+ import { SourceFileEdit } from './Types.js';
5
+ export declare class CodeActionsService {
6
+ private readonly _translationsGeneratorService;
7
+ getCodeActions(analyzer: Analyzer, sourceFile: SourceFile, offset: number, diagnosticCodes: readonly DiagnosticCode[] | undefined): CodeAction[] | undefined;
8
+ resolveEdits(analyzer: Analyzer, sourceFile: SourceFile, offset: number, name: string, data: any): SourceFileEdit[] | undefined;
9
+ }
10
+ export declare class CodeAction {
11
+ readonly title: string;
12
+ readonly name: string;
13
+ readonly kind: CodeActionKind;
14
+ readonly edits: readonly SourceFileEdit[] | undefined;
15
+ readonly data: any | undefined;
16
+ constructor(title: string, name: string, kind: CodeActionKind, edits: readonly SourceFileEdit[] | undefined, data: any | undefined);
17
+ static resolved(title: string, name: string, kind: CodeActionKind, edits: readonly SourceFileEdit[]): CodeAction;
18
+ static unresolved(title: string, name: string, kind: CodeActionKind, data: any): CodeAction;
19
+ }
20
+ export declare enum CodeActionKind {
21
+ QuickFix = 0
22
+ }
@@ -1,12 +1,12 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
- import { Range } from '../common/index.js';
2
+ import { CancellationToken, Range } from '../common/index.js';
3
3
  import { SourceFile } from '../project/index.js';
4
4
  import { SourceGenerationService } from './source-generation/SourceGenerationService.js';
5
5
  import { SourceLocation } from './Types.js';
6
6
  export declare class DefinitionService {
7
7
  private readonly _sourceGenerationService;
8
8
  constructor(sourceGenerationService: SourceGenerationService | undefined);
9
- getDefinition(analyzer: Analyzer, sourceFile: SourceFile, offset: number): Promise<DefinitionsAndReferenceInfo | undefined>;
9
+ getDefinition(analyzer: Analyzer, sourceFile: SourceFile, offset: number, cancellationToken: CancellationToken | undefined): Promise<DefinitionsAndReferenceInfo | undefined>;
10
10
  private getDefinitionOfReference;
11
11
  private getReferenceTargetSourceLocation;
12
12
  private getReferenceTargetEntity;
@@ -1,5 +1,6 @@
1
1
  import * as ls from 'vscode-languageserver';
2
- import { CancellationToken } from '../common/index.js';
2
+ import { CancellationToken, Uri } from '../common/index.js';
3
+ import { PackageContent } from '../project/PackageContent.js';
3
4
  import { TypeScriptLibrariesProvider } from '../ts-interop/TsLibrariesProvider.js';
4
5
  import { WorkspaceFileSystem } from './workspace/index.js';
5
6
  export declare class LanguageServer {
@@ -32,6 +33,7 @@ export declare class LanguageServer {
32
33
  private readonly _fileSystemTreeDisplayService;
33
34
  private readonly _selectionRangeService;
34
35
  private readonly _addPropertyAssignmentService;
36
+ private readonly _codeActionsService;
35
37
  constructor(config: LanguageServerConfig);
36
38
  start(): void;
37
39
  dispose(): void;
@@ -60,6 +62,7 @@ export declare class LanguageServer {
60
62
  private onExecuteCommand;
61
63
  private onAddPropertyAssignment;
62
64
  private convertSourceFileEdit;
65
+ private convertSourceFileEditsToWorkspaceEdit;
63
66
  private onGetNodeRange;
64
67
  private onCreateOrUpdateSourceFile;
65
68
  private onDeleteSourceFile;
@@ -84,6 +87,10 @@ export declare class LanguageServer {
84
87
  private onSignatureHelp;
85
88
  private onSelectionRanges;
86
89
  private convertSelectionRange;
90
+ private onCodeAction;
91
+ private onCodeActionResolve;
92
+ private convertCodeAction;
93
+ private convertCodeActionKind;
87
94
  private onRawPackageConfigurationsChanged;
88
95
  private convertSourceFileRange;
89
96
  private getSourceFileContext;
@@ -96,13 +103,15 @@ export interface LanguageServerConfig {
96
103
  readonly connection: ls.Connection;
97
104
  readonly fileSystemSynchronizationMode: FileSystemSynchronizationMode;
98
105
  readonly tsLibrariesProvider: TypeScriptLibrariesProvider;
106
+ readonly additionalPackageContents?: PackageContent[];
99
107
  }
100
108
  export type FileSystemSynchronizationMode = FileSystemSynchronizationMode.ClientSideFSWatcher | FileSystemSynchronizationMode.ClientToServerRequests;
101
109
  export declare namespace FileSystemSynchronizationMode {
102
110
  class ClientSideFSWatcher {
103
111
  readonly fileSystem: WorkspaceFileSystem;
112
+ readonly builtInStandardPackagesUri?: Uri | undefined;
104
113
  readonly kind = "client-side-fs-watcher";
105
- constructor(fileSystem: WorkspaceFileSystem);
114
+ constructor(fileSystem: WorkspaceFileSystem, builtInStandardPackagesUri?: Uri | undefined);
106
115
  }
107
116
  class ClientToServerRequests {
108
117
  readonly kind = "client-to-server-requests";