@artel/artc 0.6.26035 → 0.6.26037

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.
@@ -270,6 +270,22 @@ var Query = class _Query {
270
270
  }
271
271
  return minElement;
272
272
  }
273
+ static single(source, fn) {
274
+ let result;
275
+ let hasValue = false;
276
+ for (const e of source) {
277
+ if (fn === void 0 || fn(e)) {
278
+ if (!hasValue) {
279
+ result = e;
280
+ hasValue = true;
281
+ } else {
282
+ result = void 0;
283
+ break;
284
+ }
285
+ }
286
+ }
287
+ return result;
288
+ }
273
289
  map(fn) {
274
290
  return new MapQuery(this, fn);
275
291
  }
@@ -764,7 +780,7 @@ var UniqueWithComparatorQuery = class extends Query {
764
780
  };
765
781
 
766
782
  // source/common/Constants.ts
767
- var ArtelVersion = true ? "0.6.26035" : "";
783
+ var ArtelVersion = true ? "0.6.26037" : "";
768
784
  var ArtelSourceFileExtensions = [".\u0430\u0440\u0442", ".\u0430\u0440\u0442\u0435\u043B\u044C", ".art", ".artel", ".\u0430\u0440\u0442\u043C", ".\u0430\u0440\u0442\u0435\u043B\u044C\u043C", ".artm", ".artelm"];
769
785
  var ArtelSourceFileExtensionSet = new Set(ArtelSourceFileExtensions);
770
786
  var ArtelSourceAndConfigurationFileExtensionSet = new Set(ArtelSourceFileExtensionSet).add(".json");
@@ -12256,6 +12272,10 @@ var DiagnosticCode = /* @__PURE__ */ ((DiagnosticCode2) => {
12256
12272
  DiagnosticCode2[DiagnosticCode2["CannotAssignValueBecauseWriteFunctionIsHidden"] = 2244] = "CannotAssignValueBecauseWriteFunctionIsHidden";
12257
12273
  DiagnosticCode2[DiagnosticCode2["ReadFunctionMustHaveTheSameTypeAsWriteFunction"] = 2245] = "ReadFunctionMustHaveTheSameTypeAsWriteFunction";
12258
12274
  DiagnosticCode2[DiagnosticCode2["AspectHasAlreadyBeenExtendedWithDifferentTypeArguments0"] = 2246] = "AspectHasAlreadyBeenExtendedWithDifferentTypeArguments0";
12275
+ DiagnosticCode2[DiagnosticCode2["ObjectCannotBeAccessedBeforeOwnOrBaseConstructorCall"] = 2247] = "ObjectCannotBeAccessedBeforeOwnOrBaseConstructorCall";
12276
+ DiagnosticCode2[DiagnosticCode2["BaseCannotBeAccessedBeforeOwnOrBaseConstructorCall"] = 2248] = "BaseCannotBeAccessedBeforeOwnOrBaseConstructorCall";
12277
+ DiagnosticCode2[DiagnosticCode2["InstanceMemberCannotBeAccessedBeforeOwnOrBaseConstructorCall"] = 2249] = "InstanceMemberCannotBeAccessedBeforeOwnOrBaseConstructorCall";
12278
+ DiagnosticCode2[DiagnosticCode2["Type0CannotBeExtendedBecauseItDoesNotHaveAccessibleConstructors"] = 2250] = "Type0CannotBeExtendedBecauseItDoesNotHaveAccessibleConstructors";
12259
12279
  DiagnosticCode2[DiagnosticCode2["CannotFindTsLibDirectoryBaseSearchPaths0"] = 3e3] = "CannotFindTsLibDirectoryBaseSearchPaths0";
12260
12280
  DiagnosticCode2[DiagnosticCode2["SourceFile0IsNotPartOfThePackageAndWontBeLoaded"] = 3001] = "SourceFile0IsNotPartOfThePackageAndWontBeLoaded";
12261
12281
  DiagnosticCode2[DiagnosticCode2["ProgramWithoutMainPackageCannotBeCompiled"] = 3002] = "ProgramWithoutMainPackageCannotBeCompiled";
@@ -12602,6 +12622,10 @@ var englishErrorMessages = {
12602
12622
  [2244 /* CannotAssignValueBecauseWriteFunctionIsHidden */]: "Cannot assign value because write function is hidden.",
12603
12623
  [2245 /* ReadFunctionMustHaveTheSameTypeAsWriteFunction */]: "Read function must have the same type as write function.",
12604
12624
  [2246 /* AspectHasAlreadyBeenExtendedWithDifferentTypeArguments0 */]: "Aspect has already been extended with different type arguments: '{0}'.",
12625
+ [2247 /* ObjectCannotBeAccessedBeforeOwnOrBaseConstructorCall */]: "'object' cannot be accessed before own or base constructor call.",
12626
+ [2248 /* BaseCannotBeAccessedBeforeOwnOrBaseConstructorCall */]: "'base' cannot be accessed before own or base constructor call.",
12627
+ [2249 /* InstanceMemberCannotBeAccessedBeforeOwnOrBaseConstructorCall */]: "Instance member cannot be accessed before own or base constructor call.",
12628
+ [2250 /* Type0CannotBeExtendedBecauseItDoesNotHaveAccessibleConstructors */]: "Type '{0}' cannot be extended because it does not have accessible constructors.",
12605
12629
  [3e3 /* CannotFindTsLibDirectoryBaseSearchPaths0 */]: "Can not find directory with TypeScript library. Base search paths: {0}.",
12606
12630
  [3001 /* SourceFile0IsNotPartOfThePackageAndWontBeLoaded */]: "Source file '{0}' is not part of the package and won't be loaded.",
12607
12631
  [3002 /* ProgramWithoutMainPackageCannotBeCompiled */]: "Program without main package cannot be compiled.",
@@ -12758,7 +12782,7 @@ var russianErrorMessages = {
12758
12782
  [2101 /* CorrespondingBasicReadFunctionNotFound */]: "\u041D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0430\u044F \u0431\u0430\u0437\u043E\u0432\u0430\u044F \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0447\u0442\u0435\u043D\u0438\u044F.",
12759
12783
  [2102 /* CorrespondingBasicWriteFunctionNotFound */]: "\u041D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0430\u044F \u0431\u0430\u0437\u043E\u0432\u0430\u044F \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438.",
12760
12784
  [2103 /* BasicVariableDoesNotHaveAWriteFunctionBecauseItIsAConstant */]: "\u0423 \u0431\u0430\u0437\u043E\u0432\u043E\u0439 \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0439 \u043D\u0435\u0442 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0437\u0430\u043F\u0438\u0441\u0438, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u043E\u043D\u0430 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u043A\u043E\u043D\u0441\u0442\u0430\u043D\u0442\u043E\u0439.",
12761
- [2104 /* AsyncFunctionCanOnlyBeCalledFromFunctionMarkedWithAsyncModifier */]: "\u0410\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u0430\u044F \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0432\u044B\u0437\u0432\u0430\u043D\u0430 \u0442\u043E\u043B\u044C\u043A\u043E \u0438\u0437 \u0444\u0443\u043D\u043A\u0446\u0438\u0438, \u043F\u043E\u043C\u0435\u0447\u0435\u043D\u043D\u043E\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u0430\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u043E'.",
12785
+ [2104 /* AsyncFunctionCanOnlyBeCalledFromFunctionMarkedWithAsyncModifier */]: "\u0410\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u0430\u044F \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0432\u044B\u0437\u0432\u0430\u043D\u0430 \u0442\u043E\u043B\u044C\u043A\u043E \u0438\u0437 \u0444\u0443\u043D\u043A\u0446\u0438\u0438, \u043F\u043E\u043C\u0435\u0447\u0435\u043D\u043D\u043E\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u0430\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u0430\u044F'.",
12762
12786
  [1123 /* TagNameExpected */]: "\u041E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u0438\u043C\u044F \u0442\u0435\u0433\u0430.",
12763
12787
  [2105 /* TagNotFound */]: "\u0422\u0435\u0433 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D.",
12764
12788
  [2106 /* TypeOrFunctionNameExpected */]: "\u041E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u0438\u043C\u044F \u0442\u0438\u043F\u0430 \u0438\u043B\u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438.",
@@ -12902,6 +12926,10 @@ var russianErrorMessages = {
12902
12926
  [2244 /* CannotAssignValueBecauseWriteFunctionIsHidden */]: "\u041D\u0435\u043B\u044C\u0437\u044F \u043F\u0440\u0438\u0441\u0432\u043E\u0438\u0442\u044C \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438 \u0441\u043A\u0440\u044B\u0442\u0430.",
12903
12927
  [2245 /* ReadFunctionMustHaveTheSameTypeAsWriteFunction */]: "\u0424\u0443\u043D\u043A\u0446\u0438\u044F \u0447\u0442\u0435\u043D\u0438\u044F \u0434\u043E\u043B\u0436\u043D\u0430 \u0438\u043C\u0435\u0442\u044C \u0442\u0430\u043A\u043E\u0439 \u0436\u0435 \u0442\u0438\u043F, \u043A\u0430\u043A \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438.",
12904
12928
  [2246 /* AspectHasAlreadyBeenExtendedWithDifferentTypeArguments0 */]: "\u0410\u0441\u043F\u0435\u043A\u0442 \u0443\u0436\u0435 \u0431\u044B\u043B \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D \u0441 \u0434\u0440\u0443\u0433\u0438\u043C\u0438 \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442\u0430\u043C\u0438 \u0442\u0438\u043F\u0430: '{0}'.",
12929
+ [2247 /* ObjectCannotBeAccessedBeforeOwnOrBaseConstructorCall */]: "\u041A \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0439 '\u043E\u0431\u044A\u0435\u043A\u0442' \u043D\u0435\u043B\u044C\u0437\u044F \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u0434\u043E \u0432\u044B\u0437\u043E\u0432\u0430 \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0433\u043E \u0438\u043B\u0438 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u0430.",
12930
+ [2248 /* BaseCannotBeAccessedBeforeOwnOrBaseConstructorCall */]: "\u041A \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0439 '\u043E\u0441\u043D\u043E\u0432\u0430' \u043D\u0435\u043B\u044C\u0437\u044F \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u0434\u043E \u0432\u044B\u0437\u043E\u0432\u0430 \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0433\u043E \u0438\u043B\u0438 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u0430.",
12931
+ [2249 /* InstanceMemberCannotBeAccessedBeforeOwnOrBaseConstructorCall */]: "\u041A \u0447\u043B\u0435\u043D\u0443 \u044D\u043A\u0437\u0435\u043C\u043F\u043B\u044F\u0440\u0430 \u043D\u0435\u043B\u044C\u0437\u044F \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u0434\u043E \u0432\u044B\u0437\u043E\u0432\u0430 \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0433\u043E \u0438\u043B\u0438 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u0430.",
12932
+ [2250 /* Type0CannotBeExtendedBecauseItDoesNotHaveAccessibleConstructors */]: "\u0422\u0438\u043F '{0}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0443 \u043D\u0435\u0433\u043E \u043D\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u043E\u0432.",
12905
12933
  [3e3 /* CannotFindTsLibDirectoryBaseSearchPaths0 */]: "\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043D\u0430\u0439\u0442\u0438 \u043F\u0430\u043F\u043A\u0443 \u0441\u043E \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0439 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u043E\u0439 TypeScript. \u041F\u0443\u0442\u0438, \u043E\u0442\u043D\u043E\u0441\u0438\u0442\u0435\u043B\u044C\u043D\u043E \u043A\u043E\u0442\u043E\u0440\u044B\u0445 \u043E\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043B\u044F\u043B\u0441\u044F \u043F\u043E\u0438\u0441\u043A: {0}.",
12906
12934
  [3001 /* SourceFile0IsNotPartOfThePackageAndWontBeLoaded */]: "\u0418\u0441\u0445\u043E\u0434\u043D\u044B\u0439 \u0444\u0430\u0439\u043B '{0}' \u043D\u0435 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0447\u0430\u0441\u0442\u044C\u044E \u043F\u0430\u043A\u0435\u0442\u0430 \u0438 \u043D\u0435 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D.",
12907
12935
  [3002 /* ProgramWithoutMainPackageCannotBeCompiled */]: "\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0430 \u0431\u0435\u0437 \u0433\u043B\u0430\u0432\u043D\u043E\u0433\u043E \u043F\u0430\u043A\u0435\u0442\u0430 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0441\u043A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u043E\u0432\u0430\u043D\u0430.",
@@ -20963,6 +20991,7 @@ var TypeMemberKindFlags = /* @__PURE__ */ ((TypeMemberKindFlags6) => {
20963
20991
  TypeMemberKindFlags6[TypeMemberKindFlags6["FieldOrOrdinaryMethod"] = 3] = "FieldOrOrdinaryMethod";
20964
20992
  TypeMemberKindFlags6[TypeMemberKindFlags6["NamedA"] = 19] = "NamedA";
20965
20993
  TypeMemberKindFlags6[TypeMemberKindFlags6["NamedM"] = 15] = "NamedM";
20994
+ TypeMemberKindFlags6[TypeMemberKindFlags6["CanOverrideOrShadow"] = 243] = "CanOverrideOrShadow";
20966
20995
  return TypeMemberKindFlags6;
20967
20996
  })(TypeMemberKindFlags || {});
20968
20997
 
@@ -24016,7 +24045,7 @@ function createPackageNameBasedOnUri(uri) {
24016
24045
  var PackageConfigurationRu_exports = {};
24017
24046
  __export(PackageConfigurationRu_exports, {
24018
24047
  \u0414\u0438\u0430\u043B\u0435\u043A\u0442: () => \u0414\u0438\u0430\u043B\u0435\u043A\u0442,
24019
- \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript: () => \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript,
24048
+ \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: () => \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442,
24020
24049
  \u042F\u0437\u044B\u043A: () => \u042F\u0437\u044B\u043A
24021
24050
  });
24022
24051
  var \u042F\u0437\u044B\u043A = /* @__PURE__ */ ((\u042F\u0437\u044B\u043A2) => {
@@ -24029,11 +24058,11 @@ var \u0414\u0438\u0430\u043B\u0435\u043A\u0442 = /* @__PURE__ */ ((\u0414\u0438\
24029
24058
  \u0414\u0438\u0430\u043B\u0435\u043A\u04422["\u0410\u0440\u0442\u0435\u043B\u044C\u041C"] = "\u0410\u0440\u0442\u0435\u043B\u044C-\u041C";
24030
24059
  return \u0414\u0438\u0430\u043B\u0435\u043A\u04422;
24031
24060
  })(\u0414\u0438\u0430\u043B\u0435\u043A\u0442 || {});
24032
- var \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript = /* @__PURE__ */ ((\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript2) => {
24033
- \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript2["Esm"] = "esm";
24034
- \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript2["Cjs"] = "cjs";
24035
- return \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript2;
24036
- })(\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript || {});
24061
+ var \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442 = /* @__PURE__ */ ((\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u04422) => {
24062
+ \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u04422["Esm"] = "esm";
24063
+ \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u04422["Cjs"] = "cjs";
24064
+ return \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u04422;
24065
+ })(\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442 || {});
24037
24066
 
24038
24067
  // source/project/configuration/ConfigurationFileParser.ts
24039
24068
  import * as jsoncParser from "jsonc-parser";
@@ -24638,30 +24667,30 @@ var config_ru_schema_default = {
24638
24667
  \u0426\u0435\u043B\u0435\u0432\u0430\u044F\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430: {
24639
24668
  anyOf: [
24640
24669
  {
24641
- $ref: "#/definitions/\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430JavaScript"
24670
+ $ref: "#/definitions/\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24642
24671
  },
24643
24672
  {
24644
- $ref: "#/definitions/\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430DotNet"
24673
+ $ref: "#/definitions/\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u043E\u0442\u041D\u0435\u0442"
24645
24674
  },
24646
24675
  {
24647
24676
  $ref: "#/definitions/\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u041B\u044E\u0431\u0430\u044F"
24648
24677
  }
24649
24678
  ]
24650
24679
  },
24651
- \u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430JavaScript: {
24680
+ \u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24652
24681
  type: "object",
24653
24682
  properties: {
24654
24683
  \u0442\u0438\u043F: {
24655
24684
  type: "string",
24656
- const: "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430JavaScript"
24685
+ const: "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24657
24686
  },
24658
24687
  \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430: {
24659
- $ref: "#/definitions/\u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430\u041D\u0430JavaScript"
24688
+ $ref: "#/definitions/\u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430\u041D\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24660
24689
  },
24661
- \u043F\u0430\u043A\u0435\u0442\u044B\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C\u044B\u0435\u0418\u0437Dts: {
24690
+ \u043F\u0430\u043A\u0435\u0442\u044B\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C\u044B\u0435\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts: {
24662
24691
  type: "array",
24663
24692
  items: {
24664
- $ref: "#/definitions/\u041F\u0430\u043A\u0435\u0442\u0418\u0437Dts"
24693
+ $ref: "#/definitions/\u041F\u0430\u043A\u0435\u0442\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts"
24665
24694
  }
24666
24695
  }
24667
24696
  },
@@ -24670,18 +24699,18 @@ var config_ru_schema_default = {
24670
24699
  ],
24671
24700
  additionalProperties: false
24672
24701
  },
24673
- \u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430\u041D\u0430JavaScript: {
24702
+ \u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430\u041D\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24674
24703
  anyOf: [
24675
24704
  {
24676
24705
  type: "object",
24677
24706
  additionalProperties: false,
24678
24707
  properties: {
24679
- \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437Dts: {
24708
+ \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts: {
24680
24709
  $ref: "#/definitions/\u0414\u0430\u041D\u0435\u0442"
24681
24710
  },
24682
24711
  \u0442\u0438\u043F: {
24683
24712
  type: "string",
24684
- const: "\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24713
+ const: "\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24685
24714
  },
24686
24715
  \u0438\u043C\u044F\u041C\u043E\u0434\u0443\u043B\u044F: {
24687
24716
  type: "string"
@@ -24690,7 +24719,7 @@ var config_ru_schema_default = {
24690
24719
  type: "string"
24691
24720
  },
24692
24721
  \u0444\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F: {
24693
- $ref: "#/definitions/\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript"
24722
+ $ref: "#/definitions/\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24694
24723
  }
24695
24724
  },
24696
24725
  required: [
@@ -24704,12 +24733,12 @@ var config_ru_schema_default = {
24704
24733
  type: "object",
24705
24734
  additionalProperties: false,
24706
24735
  properties: {
24707
- \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437Dts: {
24736
+ \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts: {
24708
24737
  $ref: "#/definitions/\u0414\u0430\u041D\u0435\u0442"
24709
24738
  },
24710
24739
  \u0442\u0438\u043F: {
24711
24740
  type: "string",
24712
- const: "\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044FJavaScript"
24741
+ const: "\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24713
24742
  },
24714
24743
  \u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430Npm: {
24715
24744
  type: "string"
@@ -24730,18 +24759,18 @@ var config_ru_schema_default = {
24730
24759
  type: "object",
24731
24760
  additionalProperties: false,
24732
24761
  properties: {
24733
- \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437Dts: {
24762
+ \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts: {
24734
24763
  $ref: "#/definitions/\u0414\u0430\u041D\u0435\u0442"
24735
24764
  },
24736
24765
  \u0442\u0438\u043F: {
24737
24766
  type: "string",
24738
- const: "\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24767
+ const: "\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24739
24768
  },
24740
24769
  \u043E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C: {
24741
24770
  type: "string"
24742
24771
  },
24743
24772
  \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0412\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0430: {
24744
- $ref: "#/definitions/\u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u043E\u0433\u043E\u041C\u043E\u0434\u0443\u043B\u044FJavaScript"
24773
+ $ref: "#/definitions/\u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u043E\u0433\u043E\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24745
24774
  }
24746
24775
  },
24747
24776
  required: [
@@ -24759,29 +24788,29 @@ var config_ru_schema_default = {
24759
24788
  "\u043D\u0435\u0442"
24760
24789
  ]
24761
24790
  },
24762
- \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript: {
24791
+ \u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24763
24792
  type: "string",
24764
24793
  enum: [
24765
24794
  "esm",
24766
24795
  "cjs"
24767
24796
  ]
24768
24797
  },
24769
- \u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u043E\u0433\u043E\u041C\u043E\u0434\u0443\u043B\u044FJavaScript: {
24798
+ \u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u043E\u0433\u043E\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24770
24799
  anyOf: [
24771
24800
  {
24772
- $ref: "#/definitions/\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24801
+ $ref: "#/definitions/\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24773
24802
  },
24774
24803
  {
24775
- $ref: "#/definitions/\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044FJavaScript"
24804
+ $ref: "#/definitions/\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24776
24805
  }
24777
24806
  ]
24778
24807
  },
24779
- \u041C\u043E\u0434\u0443\u043B\u044CJavaScript: {
24808
+ \u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24780
24809
  type: "object",
24781
24810
  properties: {
24782
24811
  \u0442\u0438\u043F: {
24783
24812
  type: "string",
24784
- const: "\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24813
+ const: "\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24785
24814
  },
24786
24815
  \u0438\u043C\u044F\u041C\u043E\u0434\u0443\u043B\u044F: {
24787
24816
  type: "string"
@@ -24790,7 +24819,7 @@ var config_ru_schema_default = {
24790
24819
  type: "string"
24791
24820
  },
24792
24821
  \u0444\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F: {
24793
- $ref: "#/definitions/\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044FJavaScript"
24822
+ $ref: "#/definitions/\u0424\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24794
24823
  }
24795
24824
  },
24796
24825
  required: [
@@ -24801,12 +24830,12 @@ var config_ru_schema_default = {
24801
24830
  ],
24802
24831
  additionalProperties: false
24803
24832
  },
24804
- \u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044FJavaScript: {
24833
+ \u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24805
24834
  type: "object",
24806
24835
  properties: {
24807
24836
  \u0442\u0438\u043F: {
24808
24837
  type: "string",
24809
- const: "\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044FJavaScript"
24838
+ const: "\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24810
24839
  },
24811
24840
  \u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430Npm: {
24812
24841
  type: "string"
@@ -24824,14 +24853,14 @@ var config_ru_schema_default = {
24824
24853
  ],
24825
24854
  additionalProperties: false
24826
24855
  },
24827
- \u041F\u0430\u043A\u0435\u0442\u0418\u0437Dts: {
24856
+ \u041F\u0430\u043A\u0435\u0442\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts: {
24828
24857
  type: "object",
24829
24858
  properties: {
24830
24859
  \u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430\u0410\u0440\u0442\u0435\u043B\u044C: {
24831
24860
  type: "string"
24832
24861
  },
24833
24862
  \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F: {
24834
- $ref: "#/definitions/\u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u041D\u0430JavaScript"
24863
+ $ref: "#/definitions/\u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u041D\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24835
24864
  }
24836
24865
  },
24837
24866
  required: [
@@ -24840,31 +24869,31 @@ var config_ru_schema_default = {
24840
24869
  ],
24841
24870
  additionalProperties: false
24842
24871
  },
24843
- \u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u041D\u0430JavaScript: {
24872
+ \u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u041D\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24844
24873
  anyOf: [
24845
24874
  {
24846
- $ref: "#/definitions/\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24875
+ $ref: "#/definitions/\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24847
24876
  },
24848
24877
  {
24849
- $ref: "#/definitions/\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044FJavaScript"
24878
+ $ref: "#/definitions/\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24850
24879
  },
24851
24880
  {
24852
- $ref: "#/definitions/\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24881
+ $ref: "#/definitions/\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24853
24882
  }
24854
24883
  ]
24855
24884
  },
24856
- \u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044CJavaScript: {
24885
+ \u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442: {
24857
24886
  type: "object",
24858
24887
  properties: {
24859
24888
  \u0442\u0438\u043F: {
24860
24889
  type: "string",
24861
- const: "\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044CJavaScript"
24890
+ const: "\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24862
24891
  },
24863
24892
  \u043E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C: {
24864
24893
  type: "string"
24865
24894
  },
24866
24895
  \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0412\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u0430: {
24867
- $ref: "#/definitions/\u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u043E\u0433\u043E\u041C\u043E\u0434\u0443\u043B\u044FJavaScript"
24896
+ $ref: "#/definitions/\u0412\u043B\u0430\u0434\u0435\u043B\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u043E\u0433\u043E\u041C\u043E\u0434\u0443\u043B\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442"
24868
24897
  }
24869
24898
  },
24870
24899
  required: [
@@ -24874,12 +24903,12 @@ var config_ru_schema_default = {
24874
24903
  ],
24875
24904
  additionalProperties: false
24876
24905
  },
24877
- \u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430DotNet: {
24906
+ \u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u043E\u0442\u041D\u0435\u0442: {
24878
24907
  type: "object",
24879
24908
  properties: {
24880
24909
  \u0442\u0438\u043F: {
24881
24910
  type: "string",
24882
- const: "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430DotNet"
24911
+ const: "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u043E\u0442\u041D\u0435\u0442"
24883
24912
  }
24884
24913
  },
24885
24914
  required: [
@@ -25190,16 +25219,16 @@ var RussianConfigurationTranslator = class {
25190
25219
  }
25191
25220
  static translateTargetPlatform(value) {
25192
25221
  switch (value.\u0442\u0438\u043F) {
25193
- case "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430JavaScript":
25222
+ case "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442":
25194
25223
  return {
25195
25224
  type: "JavaScriptPlatform",
25196
25225
  interfacePackageImplementation: value.\u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430 !== void 0 ? {
25197
25226
  ...this.translateJavascriptImplementation(value.\u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430),
25198
- loadFromDts: this.translateYesNo(value.\u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430.\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437Dts)
25227
+ loadFromDts: this.translateYesNo(value.\u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043D\u043E\u0433\u043E\u041F\u0430\u043A\u0435\u0442\u0430.\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts)
25199
25228
  } : void 0,
25200
- packagesLoadedFromDts: value.\u043F\u0430\u043A\u0435\u0442\u044B\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C\u044B\u0435\u0418\u0437Dts !== void 0 ? value.\u043F\u0430\u043A\u0435\u0442\u044B\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C\u044B\u0435\u0418\u0437Dts.map((v) => this.translatePackageFromDts(v)) : void 0
25229
+ packagesLoadedFromDts: value.\u043F\u0430\u043A\u0435\u0442\u044B\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C\u044B\u0435\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts !== void 0 ? value.\u043F\u0430\u043A\u0435\u0442\u044B\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C\u044B\u0435\u0418\u0437\u0424\u0430\u0439\u043B\u043E\u0432Dts.map((v) => this.translatePackageFromDts(v)) : void 0
25201
25230
  };
25202
- case "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430DotNet":
25231
+ case "\u041F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430\u0414\u043E\u0442\u041D\u0435\u0442":
25203
25232
  return {
25204
25233
  type: "DotNetPlatform"
25205
25234
  };
@@ -25214,20 +25243,20 @@ var RussianConfigurationTranslator = class {
25214
25243
  }
25215
25244
  static translateJavascriptImplementation(value) {
25216
25245
  switch (value.\u0442\u0438\u043F) {
25217
- case "\u041C\u043E\u0434\u0443\u043B\u044CJavaScript":
25246
+ case "\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442":
25218
25247
  return {
25219
25248
  type: "JavaScriptModule",
25220
25249
  moduleName: value.\u0438\u043C\u044F\u041C\u043E\u0434\u0443\u043B\u044F,
25221
25250
  npmPackageName: value.\u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430Npm,
25222
25251
  moduleFormat: this.translateJavaScriptModuleFormat(value.\u0444\u043E\u0440\u043C\u0430\u0442\u041C\u043E\u0434\u0443\u043B\u044F)
25223
25252
  };
25224
- case "\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044FJavaScript":
25253
+ case "\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442":
25225
25254
  return {
25226
25255
  type: "JavaScriptGlobals",
25227
25256
  npmPackageName: value.\u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430Npm,
25228
25257
  standardLibraryFiles: value.\u0444\u0430\u0439\u043B\u044B\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0439\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438
25229
25258
  };
25230
- case "\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044CJavaScript":
25259
+ case "\u041E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442":
25231
25260
  return {
25232
25261
  type: "JavaScriptNamespaceOrSubModule",
25233
25262
  namespaceOrSubModule: value.\u043E\u0431\u043B\u0430\u0441\u0442\u044C\u0418\u043C\u0451\u043D\u0418\u043B\u0438\u0412\u043B\u043E\u0436\u0435\u043D\u043D\u044B\u0439\u041C\u043E\u0434\u0443\u043B\u044C,
@@ -28994,16 +29023,16 @@ var WellKnownDeclarationKeys = class {
28994
29023
  this.referenceConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0420\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F.\u0414\u0436\u0430\u0432\u0430\u0421\u043A\u0440\u0438\u043F\u0442.\u0421\u0441\u044B\u043B\u043A\u0430";
28995
29024
  }
28996
29025
  static {
28997
- this.textTemplateConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430";
29026
+ this.textTemplateConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430(\u0444\u0440\u0430\u0433\u043C\u0435\u043D\u0442\u044B,\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F)";
28998
29027
  }
28999
29028
  static {
29000
- this.textTemplateToTextMethod = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430.\u0432-\u0442\u0435\u043A\u0441\u0442";
29029
+ this.textTemplateToTextMethod = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430.\u0432-\u0442\u0435\u043A\u0441\u0442()";
29001
29030
  }
29002
29031
  static {
29003
- this.localizableTextTemplateConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0438\u043C\u044B\u0439";
29032
+ this.localizableTextTemplateConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0438\u043C\u044B\u0439(\u0444\u0440\u0430\u0433\u043C\u0435\u043D\u0442\u044B,\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F,\u043A\u043B\u044E\u0447,\u043F\u0430\u043A\u0435\u0442)";
29004
29033
  }
29005
29034
  static {
29006
- this.localizableTextTemplateTranslateMethod = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0438\u043C\u044B\u0439.\u043F\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438";
29035
+ this.localizableTextTemplateTranslateMethod = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0428\u0430\u0431\u043B\u043E\u043D\u0422\u0435\u043A\u0441\u0442\u0430\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0438\u043C\u044B\u0439.\u043F\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438()";
29007
29036
  }
29008
29037
  static {
29009
29038
  this.symbolIteratorField = "\u0432\u0441\u0435\u043E\u0431\u0449\u0435\u0435 Platform.JavaScript.Symbol.iterator";
@@ -29018,7 +29047,7 @@ var WellKnownDeclarationKeys = class {
29018
29047
  this.dictionaryType = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0421\u043B\u043E\u0432\u0430\u0440\u044C";
29019
29048
  }
29020
29049
  static {
29021
- this.dictionaryConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0421\u043B\u043E\u0432\u0430\u0440\u044C";
29050
+ this.dictionaryConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0421\u043B\u043E\u0432\u0430\u0440\u044C()";
29022
29051
  }
29023
29052
  static {
29024
29053
  this.dictionaryAddMethod = "\u0410\u0440\u0442\u0435\u043B\u044C.\u0421\u043B\u043E\u0432\u0430\u0440\u044C.\u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C";
@@ -29027,7 +29056,7 @@ var WellKnownDeclarationKeys = class {
29027
29056
  this.packageType = "\u0410\u0440\u0442\u0435\u043B\u044C.\u041F\u0430\u043A\u0435\u0442";
29028
29057
  }
29029
29058
  static {
29030
- this.packageConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u041F\u0430\u043A\u0435\u0442";
29059
+ this.packageConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u041F\u0430\u043A\u0435\u0442(\u0438\u043C\u044F)";
29031
29060
  }
29032
29061
  static {
29033
29062
  this.packageThisPackageField = "\u0432\u0441\u0435\u043E\u0431\u0449\u0435\u0435 \u0410\u0440\u0442\u0435\u043B\u044C.\u041F\u0430\u043A\u0435\u0442.\u0441\u0432\u043E\u0439-\u043F\u0430\u043A\u0435\u0442";
@@ -29036,7 +29065,7 @@ var WellKnownDeclarationKeys = class {
29036
29065
  this.packageMainPackageField = "\u0432\u0441\u0435\u043E\u0431\u0449\u0435\u0435 \u0410\u0440\u0442\u0435\u043B\u044C.\u041F\u0430\u043A\u0435\u0442.\u0433\u043B\u0430\u0432\u043D\u044B\u0439-\u043F\u0430\u043A\u0435\u0442";
29037
29066
  }
29038
29067
  static {
29039
- this.errorConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u041E\u0448\u0438\u0431\u043A\u0430";
29068
+ this.errorConstructor = "\u0410\u0440\u0442\u0435\u043B\u044C.\u041E\u0448\u0438\u0431\u043A\u0430(\u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435)";
29040
29069
  }
29041
29070
  static {
29042
29071
  this.translatorAddTranslationToLocaleMethod = "\u0432\u0441\u0435\u043E\u0431\u0449\u0435\u0435 \u0410\u0440\u0442\u0435\u043B\u044C.\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0447\u0438\u043A.\u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C-\u043F\u0435\u0440\u0435\u0432\u043E\u0434-\u043D\u0430-\u044F\u0437\u044B\u043A";
@@ -29297,7 +29326,7 @@ var EntityFinder = class _EntityFinder {
29297
29326
  if (key.parameterNames !== void 0) {
29298
29327
  methodEntities = methodEntities.filter((m) => {
29299
29328
  const parameters = m.getParameters();
29300
- return parameters.length === key.parameterNames?.length && Query.zip(parameters, key.parameterNames, (p, n) => p.getName().considerEqual(new Name(n))).all((v) => v);
29329
+ return parameters.length === key.parameterNames?.length && (parameters.length === 0 || Query.zip(parameters, key.parameterNames, (p, n) => p.getName().considerEqual(new Name(n))).all((v) => v));
29301
29330
  });
29302
29331
  }
29303
29332
  if (methodEntities.length === 0) {
@@ -29317,7 +29346,7 @@ var EntityFinder = class _EntityFinder {
29317
29346
  if (key.parameterNames !== void 0) {
29318
29347
  constructorEntities = constructorEntities.filter((m) => {
29319
29348
  const parameters = m.getParameters();
29320
- return parameters.length === key.parameterNames?.length && Query.zip(parameters, key.parameterNames, (p, n) => p.getName().considerEqual(new Name(n))).all((v) => v);
29349
+ return parameters.length === key.parameterNames?.length && (parameters.length === 0 || Query.zip(parameters, key.parameterNames, (p, n) => p.getName().considerEqual(new Name(n))).all((v) => v));
29321
29350
  });
29322
29351
  }
29323
29352
  if (constructorEntities.length === 0) {
@@ -29412,7 +29441,16 @@ var EntityFinder = class _EntityFinder {
29412
29441
  }
29413
29442
  let parameterNames;
29414
29443
  if (nameMatch[4] !== void 0) {
29415
- parameterNames = nameMatch[5]?.split(",").map((n) => n.trim()) ?? [];
29444
+ if (nameMatch[5] !== void 0) {
29445
+ const parametersText = nameMatch[5].trim();
29446
+ if (parametersText.length > 0) {
29447
+ parameterNames = parametersText.split(",").map((n) => n.trim());
29448
+ } else {
29449
+ parameterNames = [];
29450
+ }
29451
+ } else {
29452
+ parameterNames = [];
29453
+ }
29416
29454
  }
29417
29455
  return { isStatic, typeKey, name, arity, parameterNames };
29418
29456
  }
@@ -29423,7 +29461,12 @@ var EntityFinder = class _EntityFinder {
29423
29461
  let parameterNames;
29424
29462
  if (openParenthesisIndex !== -1) {
29425
29463
  Debug.assert(keyText.endsWith(")"), `\u041D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u043A\u043B\u044E\u0447\u0430 \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u0430: '${keyText}'.`);
29426
- parameterNames = keyText.substring(openParenthesisIndex + 1, keyText.length - 1).split(",").map((n) => n.trim());
29464
+ const parametersText = keyText.substring(openParenthesisIndex + 1, keyText.length - 1).trim();
29465
+ if (parametersText.length > 0) {
29466
+ parameterNames = parametersText.split(",").map((n) => n.trim());
29467
+ } else {
29468
+ parameterNames = [];
29469
+ }
29427
29470
  }
29428
29471
  return { typeKey, parameterNames };
29429
29472
  }
@@ -33280,6 +33323,29 @@ var GeneralLoweringContext = class {
33280
33323
  sourceLocation
33281
33324
  );
33282
33325
  }
33326
+ moveAssignmentOfDefaultParameterValuesToBody(parameters, body) {
33327
+ if (parameters.every((p) => p.defaultValue === void 0)) {
33328
+ return;
33329
+ }
33330
+ const statements = new Array();
33331
+ for (const parameter of parameters) {
33332
+ if (parameter.defaultValue === void 0) {
33333
+ continue;
33334
+ }
33335
+ const defaultValue = parameter.defaultValue;
33336
+ parameter.defaultValue = void 0;
33337
+ const isEmptyCheck = binaryExpression(
33338
+ this.ectx,
33339
+ variableGetAccess(parameter.entity),
33340
+ 4 /* Equals */,
33341
+ nullLiteral()
33342
+ );
33343
+ const assignmentStatement2 = assignmentStatement(variableSetAccess(parameter.entity), defaultValue);
33344
+ const ifStatement3 = ifStatement(isEmptyCheck, blockStatement([assignmentStatement2]), void 0);
33345
+ statements.push(ifStatement3);
33346
+ }
33347
+ body.statements = statements.concat(body.statements.concat());
33348
+ }
33283
33349
  isExpressionThatDoesNotNeedToBeCached(node) {
33284
33350
  switch (node.kind) {
33285
33351
  case 60 /* ThisExpression */:
@@ -34660,7 +34726,7 @@ var OverloadedConstructorsLowering = class {
34660
34726
  );
34661
34727
  this.lowerOwnConstructorCalls(constructorDeclarations);
34662
34728
  for (const constructor of constructorDeclarations) {
34663
- this.lowerParametersWithDefaultValue(constructor);
34729
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(constructor.parameters, constructor.body);
34664
34730
  }
34665
34731
  const mergedConstructor = this.mergeOverloadedConstructors(constructorDeclarations, constructorGroup);
34666
34732
  const members = declaration.members.filter((m) => m.kind !== 50 /* ConstructorDeclaration */);
@@ -34716,29 +34782,6 @@ var OverloadedConstructorsLowering = class {
34716
34782
  }
34717
34783
  }
34718
34784
  }
34719
- lowerParametersWithDefaultValue(declaration) {
34720
- if (declaration.parameters.every((p) => p.defaultValue === void 0)) {
34721
- return;
34722
- }
34723
- const statements = new Array();
34724
- for (const parameter of declaration.parameters) {
34725
- if (parameter.defaultValue === void 0) {
34726
- continue;
34727
- }
34728
- const defaultValue = parameter.defaultValue;
34729
- parameter.defaultValue = void 0;
34730
- const isEmptyCheck = binaryExpression(
34731
- this.ctx.ectx,
34732
- variableGetAccess(parameter.entity),
34733
- 4 /* Equals */,
34734
- nullLiteral()
34735
- );
34736
- const assignmentStatement2 = assignmentStatement(variableSetAccess(parameter.entity), defaultValue);
34737
- const ifStatement3 = ifStatement(isEmptyCheck, blockStatement([assignmentStatement2]), void 0);
34738
- statements.push(ifStatement3);
34739
- }
34740
- declaration.body.statements = statements.concat(declaration.body.statements.concat());
34741
- }
34742
34785
  mergeOverloadedConstructors(constructorDeclarations, constructorGroup) {
34743
34786
  const constructorEntity = constructorGroup.mergedConstructor;
34744
34787
  const constructorParameters = constructorEntity.parameters;
@@ -35495,12 +35538,17 @@ var UsagesLowering = class _UsagesLowering extends ExecutableCodeLowering {
35495
35538
  }
35496
35539
  return replaceExpression(expression);
35497
35540
  },
35541
+ transformConstructorDeclaration: (node) => {
35542
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35543
+ return preserveTypeMember();
35544
+ },
35498
35545
  transformMethodDeclaration: (node) => {
35499
35546
  const nameKeySymbolDeclaration = this.getSymbolOfComputedNameForMemberDeclaration(node.entity);
35500
35547
  if (nameKeySymbolDeclaration !== void 0) {
35501
35548
  node.ifComputedThenKey = this.ctx.createKeyForComputedNameWithSymbolKey(nameKeySymbolDeclaration);
35502
35549
  }
35503
35550
  this.objectParameterLowering.tryRemoveObjectParameterFromMethod(node);
35551
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35504
35552
  return preserveTypeMember();
35505
35553
  },
35506
35554
  transformFieldDeclaration: (node) => {
@@ -35650,14 +35698,17 @@ var UsagesLowering = class _UsagesLowering extends ExecutableCodeLowering {
35650
35698
  if (result !== void 0) {
35651
35699
  return result;
35652
35700
  }
35701
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35653
35702
  return preserveExpression();
35654
35703
  },
35655
35704
  transformPackageFunctionDeclaration: (node) => {
35656
35705
  this.objectParameterLowering.tryRemoveObjectParameterFromPackageFunction(node);
35706
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35657
35707
  return preservePackageMember();
35658
35708
  },
35659
35709
  transformNestedFunctionDeclaration: (node) => {
35660
35710
  this.objectParameterLowering.tryRemoveObjectParameterFromNestedFunction(node);
35711
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35661
35712
  return preserveNode();
35662
35713
  },
35663
35714
  transformNestedFunctionDeclarationStatement: (node) => {
@@ -35668,8 +35719,13 @@ var UsagesLowering = class _UsagesLowering extends ExecutableCodeLowering {
35668
35719
  },
35669
35720
  transformFunctionJsObjectLiteralProperty: (node) => {
35670
35721
  this.objectParameterLowering.tryRemoveObjectParameterFromFunctionJsObjectLiteralProperty(node);
35722
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35671
35723
  return preserveNode();
35672
35724
  },
35725
+ transformJsFunctionLiteral: (node) => {
35726
+ this.ctx.moveAssignmentOfDefaultParameterValuesToBody(node.parameters, node.body);
35727
+ return preserveExpression();
35728
+ },
35673
35729
  transformBlockStatement: (node) => {
35674
35730
  this.moveNestedFunctionsToTheBeginningOfTheBlock(node);
35675
35731
  return preserveStatement();
@@ -37257,22 +37313,16 @@ var IrBuilderA = class {
37257
37313
  const decorators = this.buildDecorators(declaration.tagList);
37258
37314
  const parameters = this.buildParameterList(declaration.parameterClause.parameterList);
37259
37315
  const body = this.buildFunctionBlockOfFunctionWithoutResult(declaration.block);
37260
- const firstStatement = body.statements[0];
37261
- if (!(firstStatement === void 0 || firstStatement.kind === 19 /* ExpressionStatement */ && (firstStatement.expression.kind === 92 /* OwnConstructorCallExpression */ || firstStatement.expression.kind === 77 /* BaseConstructorCallExpression */))) {
37262
- const containingDeclaration = TypeMemberQuery.getContainingDeclaration(declaration);
37263
- if (isTypeDeclaration(containingDeclaration)) {
37264
- const baseConstructorCalls = this.analyzer.getOwnAndBaseConstructorCallsCheckResult(containingDeclaration).baseConstructorCalls;
37265
- const calledBaseConstructor = baseConstructorCalls.get(originalEntity);
37266
- if (calledBaseConstructor !== void 0) {
37267
- Debug.assert(
37268
- calledBaseConstructor.getParameters().length === 0,
37269
- "\u0411\u0430\u0437\u043E\u0432\u044B\u0439 \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440, \u0432\u044B\u0437\u044B\u0432\u0430\u0435\u043C\u044B\u0439 \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E, \u043D\u0435 \u0434\u043E\u043B\u0436\u0435\u043D \u0438\u043C\u0435\u0442\u044C \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u043E\u0432."
37270
- );
37271
- const calledBaseConstructorEntity = this.entityMap.getNamedFunctionEntity(calledBaseConstructor.getEntity());
37272
- Debug.assertNotNull(calledBaseConstructorEntity.ifTypeMemberThenContainingType);
37273
- const baseConstructorCall = baseConstructorCallExpression(calledBaseConstructorEntity, []);
37274
- body.statements = [expressionStatement(baseConstructorCall), ...body.statements];
37275
- }
37316
+ const containingDeclaration = TypeMemberQuery.getContainingDeclaration(declaration);
37317
+ if (isTypeDeclaration(containingDeclaration)) {
37318
+ const checkResults = this.analyzer.getOwnAndBaseConstructorCallsCheckResult(containingDeclaration);
37319
+ const ownOrBaseConstructorCallInfo = checkResults.ownOrBaseConstructorCallInfos.get(declaration);
37320
+ if (ownOrBaseConstructorCallInfo !== void 0 && ownOrBaseConstructorCallInfo.node === void 0) {
37321
+ const calledBaseConstructorEntity = this.entityMap.getNamedFunctionEntity(
37322
+ ownOrBaseConstructorCallInfo.constructor_.getEntity()
37323
+ );
37324
+ const baseConstructorCall = baseConstructorCallExpression(calledBaseConstructorEntity, []);
37325
+ body.statements = [expressionStatement(baseConstructorCall), ...body.statements];
37276
37326
  }
37277
37327
  }
37278
37328
  return constructorDeclaration(entity, parameters, body, this.getSourceLocation(declaration)).withDecorators(decorators);
@@ -47051,6 +47101,11 @@ var TypeMemberLookup = class _TypeMemberLookup {
47051
47101
  const lookup = new NamedTypeMemberLookup(this.analyzer, this.typeOrExtension, context, kinds);
47052
47102
  return lookup.getMembersByName(name, this.typeOrExtension, options);
47053
47103
  }
47104
+ getMatchingNamedMembersByName(name, memberToMatch, context, options = 0 /* None */) {
47105
+ const flagOfMemberToMatch = memberToMatch.kindFlag;
47106
+ const kinds = (flagOfMemberToMatch & 3 /* FieldOrOrdinaryMethod */) !== 0 ? 3 /* FieldOrOrdinaryMethod */ : flagOfMemberToMatch;
47107
+ return this.getNamedMembersByName(name, context, kinds, options);
47108
+ }
47054
47109
  getConstructors(context, options = 0 /* None */) {
47055
47110
  const lookup = new ConstructorLookup(this.analyzer, this.typeOrExtension, context);
47056
47111
  return lookup.getConstructors(this.typeOrExtension, options);
@@ -47098,6 +47153,9 @@ var BoundTypeMemberLookup = class _BoundTypeMemberLookup {
47098
47153
  getNamedMembersByName(name) {
47099
47154
  return this.lookup.getNamedMembersByName(name, this.context, this.kinds, this.options);
47100
47155
  }
47156
+ getMatchingNamedMembersByName(name, memberToMatch) {
47157
+ return this.lookup.getMatchingNamedMembersByName(name, memberToMatch, this.context, this.options);
47158
+ }
47101
47159
  getConstructors() {
47102
47160
  return this.lookup.getConstructors(this.context);
47103
47161
  }
@@ -47131,7 +47189,7 @@ var TypeMemberLookupOptions = /* @__PURE__ */ ((TypeMemberLookupOptions2) => {
47131
47189
  TypeMemberLookupOptions2[TypeMemberLookupOptions2["CheckAccessibilityIgnoringReceiverType"] = 8] = "CheckAccessibilityIgnoringReceiverType";
47132
47190
  TypeMemberLookupOptions2[TypeMemberLookupOptions2["NoBaseTypeMembers"] = 16] = "NoBaseTypeMembers";
47133
47191
  TypeMemberLookupOptions2[TypeMemberLookupOptions2["OnlyInstanceOrOnlyStaticMembers"] = 3] = "OnlyInstanceOrOnlyStaticMembers";
47134
- TypeMemberLookupOptions2[TypeMemberLookupOptions2["OnlyOwnMembers"] = 20] = "OnlyOwnMembers";
47192
+ TypeMemberLookupOptions2[TypeMemberLookupOptions2["NoBaseTypeAndExtensionMembers"] = 20] = "NoBaseTypeAndExtensionMembers";
47135
47193
  return TypeMemberLookupOptions2;
47136
47194
  })(TypeMemberLookupOptions || {});
47137
47195
  var TypeMemberLookupBase = class {
@@ -58031,7 +58089,20 @@ var TsPackageSymbols;
58031
58089
  }
58032
58090
  getItems() {
58033
58091
  return this.items.getOrInsertWith(() => {
58034
- return Query.from(this.sourceFiles).flatMap((f) => f.locals?.values() ?? []).map((s) => new SymbolFromTs(this.tsctx.tsChecker.getMergedSymbol(s), false)).unique((s) => s.value).toArray();
58092
+ return Query.from(this.sourceFiles).flatMap((f) => {
58093
+ let result;
58094
+ if (!ts6.isExternalOrCommonJsModule(f) && f.locals !== void 0) {
58095
+ result = Query.from(f.locals.values());
58096
+ }
58097
+ for (const augmentation of f.moduleAugmentations) {
58098
+ const moduleAugmentation = augmentation.parent;
58099
+ if (ts6.isModuleDeclaration(moduleAugmentation) && ts6.isGlobalScopeAugmentation(moduleAugmentation) && moduleAugmentation.symbol.exports !== void 0) {
58100
+ result ??= Query.empty();
58101
+ result = result.chain(moduleAugmentation.symbol.exports.values());
58102
+ }
58103
+ }
58104
+ return result ?? [];
58105
+ }).map((s) => new SymbolFromTs(this.tsctx.tsChecker.getMergedSymbol(s), false)).unique((s) => s.value).toArray();
58035
58106
  });
58036
58107
  }
58037
58108
  }
@@ -60560,6 +60631,9 @@ var TypeMemberLookupA = class _TypeMemberLookupA {
60560
60631
  getNamedMembersByName(name, context, options = 0 /* None */) {
60561
60632
  return this.typeMemberLookup.getNamedMembersByName(name, context, 19 /* NamedA */, options);
60562
60633
  }
60634
+ getMatchingNamedMembersByName(name, memberToMatch, context, options = 0 /* None */) {
60635
+ return this.typeMemberLookup.getMatchingNamedMembersByName(name, memberToMatch, context, options);
60636
+ }
60563
60637
  getConstructors(context, options = 0 /* None */) {
60564
60638
  return this.typeMemberLookup.getConstructors(context, options);
60565
60639
  }
@@ -60613,6 +60687,9 @@ var BoundTypeMemberLookupA = class _BoundTypeMemberLookupA {
60613
60687
  getNamedMembersByName(name) {
60614
60688
  return this.typeMemberLookup.getNamedMembersByName(name);
60615
60689
  }
60690
+ getMatchingNamedMembersByName(name, memberToMatch) {
60691
+ return this.typeMemberLookup.getMatchingNamedMembersByName(name, memberToMatch);
60692
+ }
60616
60693
  getConstructors() {
60617
60694
  return this.typeMemberLookup.getConstructors();
60618
60695
  }
@@ -61154,6 +61231,7 @@ var SourceFileAnalyzer = class {
61154
61231
  this.analyzer.semanticContext.ofTypeDeclarationTypeParameters(node, node.typeParameterClause).validateNameConflicts(this.diagnosticAcceptor);
61155
61232
  }
61156
61233
  const entity = this.analyzer.entity.ofPackageVariantDeclaration(node);
61234
+ this.checkBaseObjectTypeHasAccessibleConstructors(entity, node, node.extendsClause?.baseTypeList, node.name);
61157
61235
  if (node.extendsClause !== void 0) {
61158
61236
  this.checkAspectsHaveNotBeenExtendedWithDifferentTypeArguments(entity, node.extendsClause.baseTypeList, node.name);
61159
61237
  }
@@ -61191,6 +61269,7 @@ var SourceFileAnalyzer = class {
61191
61269
  if (node.typeParameterClause !== void 0) {
61192
61270
  this.analyzer.semanticContext.ofTypeDeclarationTypeParameters(node, node.typeParameterClause).validateNameConflicts(this.diagnosticAcceptor);
61193
61271
  }
61272
+ this.checkBaseObjectTypeHasAccessibleConstructors(entity, node, node.extendsClause?.baseTypeList, node.name);
61194
61273
  if (node.extendsClause !== void 0) {
61195
61274
  this.checkAspectsHaveNotBeenExtendedWithDifferentTypeArguments(entity, node.extendsClause.baseTypeList, node.name);
61196
61275
  }
@@ -61382,7 +61461,7 @@ var SourceFileAnalyzer = class {
61382
61461
  const typeMemberLookup = TypeMemberLookupA.ofType(this.analyzer, fieldType);
61383
61462
  const namedMembers = typeMemberLookup.getNamedMembers(
61384
61463
  void 0,
61385
- 20 /* OnlyOwnMembers */ | 1 /* OnlyInstanceMembers */
61464
+ 20 /* NoBaseTypeAndExtensionMembers */ | 1 /* OnlyInstanceMembers */
61386
61465
  );
61387
61466
  for (const namedMember of namedMembers) {
61388
61467
  if (namedMember.kind === "field" && !isVariableEntityWithExplicitAccessors(namedMember.getEntity())) {
@@ -61433,6 +61512,31 @@ var SourceFileAnalyzer = class {
61433
61512
  return result;
61434
61513
  });
61435
61514
  }
61515
+ checkBaseObjectTypeHasAccessibleConstructors(entity, typeDeclaration, baseTypeList, fallbackDiagnosticLocation) {
61516
+ const baseType = this.analyzer.typeUtils.getPossiblyAliasedBaseObjectTypeOfEntity(entity);
61517
+ if (baseType === void 0) {
61518
+ return;
61519
+ }
61520
+ const unaliasedBaseType = baseType.unalias();
61521
+ if (unaliasedBaseType.getEntity()?.getOriginalEntity() === this.analyzer.originalWellKnownDeclarations.object) {
61522
+ return;
61523
+ }
61524
+ const semanticContext = this.analyzer.semanticContext.outermostSemanticContextOfTypeDeclaration(typeDeclaration);
61525
+ const typeMemberLookup = TypeMemberLookup.ofType(this.analyzer, baseType);
61526
+ const typeMemberLookupContext = semanticContext.getTypeMemberLookupContext();
61527
+ const constructors = typeMemberLookup.getConstructors(
61528
+ typeMemberLookupContext,
61529
+ 4 /* NoTypeExtensionMembers */
61530
+ );
61531
+ if (constructors.length === 0) {
61532
+ const diagnosticLocation = baseTypeList?.baseTypes.first((n) => this.analyzer.type.ofTypeSpecifier(n).equals(baseType)) ?? fallbackDiagnosticLocation;
61533
+ this.createAndAddDiagnostic(
61534
+ 2250 /* Type0CannotBeExtendedBecauseItDoesNotHaveAccessibleConstructors */,
61535
+ diagnosticLocation,
61536
+ [this.diagnosticArgumentFactory.createDisplayableType(baseType)]
61537
+ );
61538
+ }
61539
+ }
61436
61540
  checkAspectsHaveNotBeenExtendedWithDifferentTypeArguments(entity, baseTypeList, fallbackDiagnosticLocation) {
61437
61541
  const type = this.analyzer.instantiateTypeByIdentitySubstitution(entity);
61438
61542
  const baseAspectTypes = this.analyzer.typeUtils.getPossiblyAliasedBaseAspectTypes(type);
@@ -61907,6 +62011,7 @@ var SourceFileAnalyzer = class {
61907
62011
  }
61908
62012
  checkAnonymousClassDeclaration(node) {
61909
62013
  const entity = this.analyzer.entity.ofAnonymousStructuredTypeDeclaration(node);
62014
+ this.checkBaseObjectTypeHasAccessibleConstructors(entity, node, node.extendsClause?.baseTypeList, node.classKeyword);
61910
62015
  if (node.extendsClause !== void 0) {
61911
62016
  this.checkAspectsHaveNotBeenExtendedWithDifferentTypeArguments(
61912
62017
  entity,
@@ -62109,8 +62214,24 @@ var SourceFileAnalyzer = class {
62109
62214
  if (parent.kind === 60 /* AsExpression */) {
62110
62215
  parent = parent.getParentSkippingParenthesizedExpressions();
62111
62216
  }
62217
+ let hasReportedDiagnostic = false;
62112
62218
  if (!(parent.kind === 73 /* MemberAccessExpression */ || parent.kind === 67 /* IndexedAccessExpression */ || parent.kind === 75 /* DereferenceExpression */)) {
62113
62219
  this.createAndAddDiagnostic(2059 /* BaseCannotBeUsedAsAnExpressionInItself */, node);
62220
+ hasReportedDiagnostic = true;
62221
+ }
62222
+ if (!hasReportedDiagnostic) {
62223
+ const containingSubprogram = this.analyzer.semanticContext.containing(node).getContainingSubprogram();
62224
+ if (containingSubprogram?.kind === "constructor") {
62225
+ const constructorDeclaration2 = containingSubprogram.getNode();
62226
+ const declarationContainingConstructor = TypeMemberQuery.getContainingDeclaration(constructorDeclaration2);
62227
+ if (isTypeDeclaration(declarationContainingConstructor)) {
62228
+ const checkResults = this.analyzer.getOwnAndBaseConstructorCallsCheckResult(declarationContainingConstructor);
62229
+ const callInfo = checkResults.ownOrBaseConstructorCallInfos.get(constructorDeclaration2);
62230
+ if (callInfo?.node !== void 0 && !(node.rangeWithoutTrivia.start >= callInfo.node.rangeWithoutTrivia.end)) {
62231
+ this.createAndAddDiagnostic(2248 /* BaseCannotBeAccessedBeforeOwnOrBaseConstructorCall */, node);
62232
+ }
62233
+ }
62234
+ }
62114
62235
  }
62115
62236
  } else if (meaning.kind === "overridden-method-access" && meaning.method.kind === "substituted-function") {
62116
62237
  const typeArgumentClause = getParentGenericSpecializationExpression(node)?.typeArgumentClause;
@@ -62124,6 +62245,18 @@ var SourceFileAnalyzer = class {
62124
62245
  }
62125
62246
  checkObjectExpression(node) {
62126
62247
  this.analyzer.resolveObjectExpression(node);
62248
+ const containingSubprogram = this.analyzer.semanticContext.containing(node).getContainingSubprogram();
62249
+ if (containingSubprogram?.kind === "constructor") {
62250
+ const constructorDeclaration2 = containingSubprogram.getNode();
62251
+ const declarationContainingConstructor = TypeMemberQuery.getContainingDeclaration(constructorDeclaration2);
62252
+ if (isTypeDeclaration(declarationContainingConstructor)) {
62253
+ const checkResults = this.analyzer.getOwnAndBaseConstructorCallsCheckResult(declarationContainingConstructor);
62254
+ const callInfo = checkResults.ownOrBaseConstructorCallInfos.get(constructorDeclaration2);
62255
+ if (callInfo?.node !== void 0 && !(node.rangeWithoutTrivia.start >= callInfo.node.rangeWithoutTrivia.end)) {
62256
+ this.createAndAddDiagnostic(2247 /* ObjectCannotBeAccessedBeforeOwnOrBaseConstructorCall */, node);
62257
+ }
62258
+ }
62259
+ }
62127
62260
  }
62128
62261
  checkAssignmentStatement(node) {
62129
62262
  if (this.checkAssignmentIsValid(node)) {
@@ -62515,14 +62648,20 @@ var SourceFileAnalyzer = class {
62515
62648
  }
62516
62649
  case "function-access": {
62517
62650
  const func = meaning.suitableOrSingleFunction;
62518
- if (func !== void 0 && func.kind === "substituted-function") {
62519
- const typeArgumentClause = getParentGenericSpecializationExpression(node);
62520
- this.checkTypeArgumentTypesAreAssignableToConstraints(
62521
- func.getTypeParameters(),
62522
- func.value.getSubstitutions(),
62523
- func.value.getOuterSubstitutions(),
62524
- typeArgumentClause ?? node
62525
- );
62651
+ if (func !== void 0) {
62652
+ if (func.kind === "substituted-function") {
62653
+ const typeArgumentClause = getParentGenericSpecializationExpression(node);
62654
+ this.checkTypeArgumentTypesAreAssignableToConstraints(
62655
+ func.getTypeParameters(),
62656
+ func.value.getSubstitutions(),
62657
+ func.value.getOuterSubstitutions(),
62658
+ typeArgumentClause ?? node
62659
+ );
62660
+ }
62661
+ const entity = func.getEntity();
62662
+ if (entity.subkind === "method") {
62663
+ this.checkMethodAccessWithImplicitReceiver(func, meaning.objectParameterContainingFunctions, node);
62664
+ }
62526
62665
  }
62527
62666
  break;
62528
62667
  }
@@ -62543,6 +62682,13 @@ var SourceFileAnalyzer = class {
62543
62682
  } else if ((meaning.access.kind === 0 /* Get */ || meaning.access.kind === 2 /* GetSet */) && this.checkLocalVariableIsUsedBeforeBeingAssigned(node, entity)) {
62544
62683
  this.createAndAddDiagnostic(2128 /* VariableMayNotHasBeenAssignedBeforeUsage */, node);
62545
62684
  }
62685
+ } else if (meaning.variable.kind === "type-member") {
62686
+ this.checkFieldAccessWithImplicitReceiver(
62687
+ meaning.variable.value,
62688
+ meaning.access,
62689
+ meaning.objectParameterContainingVariable,
62690
+ node
62691
+ );
62546
62692
  }
62547
62693
  break;
62548
62694
  }
@@ -62554,6 +62700,85 @@ var SourceFileAnalyzer = class {
62554
62700
  Debug.never(meaning);
62555
62701
  }
62556
62702
  }
62703
+ checkFieldAccessWithImplicitReceiver(field, access, objectParameterContainingVariable, node) {
62704
+ if (!field.isStatic() && objectParameterContainingVariable === void 0) {
62705
+ const containingSubprogram = this.analyzer.semanticContext.containing(node).getContainingSubprogram();
62706
+ if (containingSubprogram?.kind === "constructor") {
62707
+ const constructorDeclaration2 = containingSubprogram.getNode();
62708
+ const declarationContainingConstructor = TypeMemberQuery.getContainingDeclaration(constructorDeclaration2);
62709
+ if (isTypeDeclaration(declarationContainingConstructor)) {
62710
+ let hasReportedDiagnostic = false;
62711
+ const checkResults = this.analyzer.getOwnAndBaseConstructorCallsCheckResult(declarationContainingConstructor);
62712
+ const callInfo = checkResults.ownOrBaseConstructorCallInfos.get(constructorDeclaration2);
62713
+ if (callInfo?.node !== void 0) {
62714
+ if (!(node.rangeWithoutTrivia.start >= callInfo.node.rangeWithoutTrivia.end)) {
62715
+ this.createAndAddDiagnostic(
62716
+ 2249 /* InstanceMemberCannotBeAccessedBeforeOwnOrBaseConstructorCall */,
62717
+ node
62718
+ );
62719
+ hasReportedDiagnostic = true;
62720
+ }
62721
+ }
62722
+ if (!hasReportedDiagnostic) {
62723
+ if (this.analyzer.entity.ofTypeWithMembersDeclaration(declarationContainingConstructor) === field.getEntity().getContainingEntity().getOriginalEntity() && (access.kind === 0 /* Get */ || access.kind === 2 /* GetSet */) && this.checkOwnFieldAccessedInConstructorIsUsedBeforeBeingAssigned(node, field.getEntity())) {
62724
+ this.createAndAddDiagnostic(2128 /* VariableMayNotHasBeenAssignedBeforeUsage */, node);
62725
+ }
62726
+ }
62727
+ }
62728
+ }
62729
+ }
62730
+ }
62731
+ checkMethodAccessWithImplicitReceiver(method, objectParameterContainingVariable, node) {
62732
+ const entity = method.getEntity();
62733
+ if (!(entity.subkind === "method" && entity.isStatic()) && objectParameterContainingVariable === void 0) {
62734
+ const containingSubprogram = this.analyzer.semanticContext.containing(node).getContainingSubprogram();
62735
+ if (containingSubprogram?.kind === "constructor") {
62736
+ const constructorDeclaration2 = containingSubprogram.getNode();
62737
+ const declarationContainingConstructor = TypeMemberQuery.getContainingDeclaration(constructorDeclaration2);
62738
+ if (isTypeDeclaration(declarationContainingConstructor)) {
62739
+ const checkResults = this.analyzer.getOwnAndBaseConstructorCallsCheckResult(declarationContainingConstructor);
62740
+ const callInfo = checkResults.ownOrBaseConstructorCallInfos.get(constructorDeclaration2);
62741
+ if (callInfo?.node !== void 0) {
62742
+ if (!(node.rangeWithoutTrivia.start >= callInfo.node.rangeWithoutTrivia.end)) {
62743
+ this.createAndAddDiagnostic(
62744
+ 2249 /* InstanceMemberCannotBeAccessedBeforeOwnOrBaseConstructorCall */,
62745
+ node
62746
+ );
62747
+ }
62748
+ }
62749
+ }
62750
+ }
62751
+ }
62752
+ }
62753
+ checkOwnFieldAccessedInConstructorIsUsedBeforeBeingAssigned(usage, entity) {
62754
+ if (isVariableEntityWithExplicitAccessors(entity)) {
62755
+ return false;
62756
+ }
62757
+ if (this.isStoredFieldConsideredInitializedAtDeclaration(entity)) {
62758
+ return false;
62759
+ }
62760
+ const controlFlowNode = this.analyzer.getControlFlowGraph(this.sourceFile).controlFlowNodeByReference.get(usage);
62761
+ if (controlFlowNode === void 0) {
62762
+ return false;
62763
+ }
62764
+ const reference = new NarrowableReference.InstanceField(
62765
+ this.analyzer,
62766
+ entity,
62767
+ new NarrowableReference.ObjectAutoVariable()
62768
+ );
62769
+ const assignmentChecker = new VariableIsAssignedChecker(this.analyzer, reference, controlFlowNode);
62770
+ return !assignmentChecker.checkVariableIsAssigned();
62771
+ }
62772
+ isStoredFieldConsideredInitializedAtDeclaration(entity) {
62773
+ const definition = entity.getDefinition();
62774
+ if (definition.kind !== 0 /* Source */) {
62775
+ return false;
62776
+ }
62777
+ if (!(definition.value.kind === "single" && definition.value.node.kind === 49 /* FieldDeclaration */)) {
62778
+ return true;
62779
+ }
62780
+ return definition.value.node.initializer !== void 0;
62781
+ }
62557
62782
  checkLocalVariableUsedBeforeDeclaration(usage, entity) {
62558
62783
  const entityDefinition = entity.getDefinition();
62559
62784
  if (!(entityDefinition.kind === 0 /* Source */ && entityDefinition.value.kind === "single" && entityDefinition.value.node.kind === 54 /* LocalVariableDeclaration */)) {
@@ -62667,6 +62892,18 @@ var SourceFileAnalyzer = class {
62667
62892
  if (this.isReceiverBaseAutoVariableAccess(node.expression) && TypeMemberEntity.isAbstract(entity)) {
62668
62893
  this.createAndAddDiagnostic(2169 /* CannotAccessAbstractMemberOfBaseType */, node.memberName);
62669
62894
  }
62895
+ if ((meaning.access.kind === 0 /* Get */ || meaning.access.kind === 2 /* GetSet */) && node.expression.unwrapParenthesizedExpressions().kind === 84 /* ObjectExpression */) {
62896
+ const containingSubprogram = this.analyzer.semanticContext.containing(node).getContainingSubprogram();
62897
+ if (containingSubprogram?.kind === "constructor") {
62898
+ const constructorDeclaration2 = containingSubprogram.getNode();
62899
+ const declarationContainingConstructor = TypeMemberQuery.getContainingDeclaration(constructorDeclaration2);
62900
+ if (isTypeDeclaration(declarationContainingConstructor) && this.analyzer.entity.ofTypeWithMembersDeclaration(declarationContainingConstructor) === meaning.field.getEntity().getContainingEntity().getOriginalEntity()) {
62901
+ if (this.checkOwnFieldAccessedInConstructorIsUsedBeforeBeingAssigned(node, meaning.field.getEntity())) {
62902
+ this.createAndAddDiagnostic(2128 /* VariableMayNotHasBeenAssignedBeforeUsage */, node.memberName);
62903
+ }
62904
+ }
62905
+ }
62906
+ }
62670
62907
  break;
62671
62908
  }
62672
62909
  case "package-variable-access":
@@ -63205,6 +63442,9 @@ var BoundTypeMemberLookupM = class _BoundTypeMemberLookupM {
63205
63442
  getNamedMembersByName(name) {
63206
63443
  return this.typeMemberLookup.getNamedMembersByName(name);
63207
63444
  }
63445
+ getMatchingNamedMembersByName(name, memberToMatch) {
63446
+ return this.typeMemberLookup.getMatchingNamedMembersByName(name, memberToMatch);
63447
+ }
63208
63448
  getConstructors() {
63209
63449
  return this.typeMemberLookup.getConstructors();
63210
63450
  }
@@ -64290,27 +64530,7 @@ var TypeMemberImplementationChecker = class {
64290
64530
  );
64291
64531
  }
64292
64532
  isTypeMemberThatCanBeImplicitlyImplemented(member) {
64293
- switch (member.kind) {
64294
- case "field":
64295
- case "indexer":
64296
- case "dereference-operator":
64297
- return true;
64298
- case "method": {
64299
- switch (member.methodKind) {
64300
- case 0 /* Ordinary */:
64301
- case 3 /* Operator */:
64302
- case 4 /* Accessor */:
64303
- return true;
64304
- case 1 /* Constructor */:
64305
- case 2 /* Destructor */:
64306
- return false;
64307
- default:
64308
- Debug.never(member.methodKind);
64309
- }
64310
- }
64311
- default:
64312
- Debug.never(member);
64313
- }
64533
+ return (member.getEntity().kindFlag & 243 /* CanOverrideOrShadow */) !== 0;
64314
64534
  }
64315
64535
  };
64316
64536
  var TypeMemberImplementationCheckResult = class {
@@ -64372,9 +64592,9 @@ var ImplicitImplementationUtils = class {
64372
64592
  );
64373
64593
  switch (member.kind) {
64374
64594
  case "field":
64375
- return typeMemberLookup.getNamedMembersByName(member.getSpecialNameOrName()).filter((m) => m.kind === "field");
64595
+ return typeMemberLookup.getMatchingNamedMembersByName(member.getSpecialNameOrName(), member.getEntity()).filter((m) => m.kind === "field");
64376
64596
  case "method":
64377
- return typeMemberLookup.getNamedMembersByName(member.getSpecialNameOrName()).filter((m) => m.kind === "method" && this.areMatchingMembers(member, m));
64597
+ return typeMemberLookup.getMatchingNamedMembersByName(member.getSpecialNameOrName(), member.getEntity()).filter((m) => m.kind === "method" && this.areMatchingMembers(member, m));
64378
64598
  case "indexer":
64379
64599
  return typeMemberLookup.getIndexers().filter((m) => this.areMatchingMembers(member, m));
64380
64600
  case "dereference-operator":
@@ -66018,7 +66238,7 @@ var OverriddenMember = class _OverriddenMember {
66018
66238
  }
66019
66239
  }
66020
66240
  findOverriddenOrShadowedNamedMembersInType(member, typeMemberLookup) {
66021
- return typeMemberLookup.getNamedMembersByName(member.getSpecialNameOrName()).filter((m) => {
66241
+ return typeMemberLookup.getMatchingNamedMembersByName(member.getSpecialNameOrName(), member.getEntity()).filter((m) => {
66022
66242
  if (member.kind === "method" && m.kind === "method") {
66023
66243
  return this.checkMethodOverridesOrShadowsMethod(member, m);
66024
66244
  }
@@ -66100,11 +66320,14 @@ var OverriddenMember = class _OverriddenMember {
66100
66320
  }
66101
66321
  }
66102
66322
  entityCanOverrideOrShadow(entity) {
66103
- if (entity.isStatic()) {
66104
- return false;
66323
+ let result;
66324
+ if (entity.isStatic() || (entity.kindFlag & 243 /* CanOverrideOrShadow */) === 0) {
66325
+ result = false;
66326
+ } else {
66327
+ const container = entity.getContainingEntity();
66328
+ result = container.kind === 2 /* Type */;
66105
66329
  }
66106
- const container = entity.getContainingEntity();
66107
- return container.kind === 2 /* Type */;
66330
+ return result;
66108
66331
  }
66109
66332
  };
66110
66333
  var OverriddenAndShadowedMembers = class {
@@ -66799,6 +67022,22 @@ var TypeUtils2 = class {
66799
67022
  Debug.never(type);
66800
67023
  }
66801
67024
  }
67025
+ getPossiblyAliasedBaseObjectTypeOfEntity(type) {
67026
+ switch (type.typeEntityKind) {
67027
+ case 1 /* Structured */:
67028
+ return type.getBaseObjectType().cycleFree;
67029
+ case 0 /* Function */:
67030
+ return type.getBaseObjectType().cycleFree;
67031
+ case 3 /* Variant */:
67032
+ return type.getBaseObjectType().cycleFree;
67033
+ case 2 /* Parameter */:
67034
+ case 4 /* Alias */:
67035
+ case 5 /* Reduced */:
67036
+ return void 0;
67037
+ default:
67038
+ Debug.never(type);
67039
+ }
67040
+ }
66802
67041
  getPossiblyAliasedBaseAspectTypes(type) {
66803
67042
  switch (type.kind) {
66804
67043
  case "function":
@@ -71535,6 +71774,7 @@ var FirstStageResolver = class {
71535
71774
  this.diagnostics?.addDiagnostic(this.invalidContextDiagnostic());
71536
71775
  return new Meaning_unresolved2();
71537
71776
  }
71777
+ const unaliasedBaseType = baseType.unalias();
71538
71778
  if (containingTypeOrExtension.value.typeEntityKind !== 4 /* Alias */) {
71539
71779
  if (!(node.parent.kind === 104 /* ExpressionStatement */ && node.parent.parent.parent.kind === 93 /* FunctionBlock */ && node.parent.parent.statements.first() === node.parent)) {
71540
71780
  this.diagnostics?.addDiagnostic(this.analyzer.createDiagnostic(
@@ -71544,8 +71784,11 @@ var FirstStageResolver = class {
71544
71784
  }
71545
71785
  }
71546
71786
  const typeMemberLookupContext = semanticContext.getTypeMemberLookupContext();
71547
- const typeMemberLookup = TypeMemberLookupA.ofType(this.analyzer, baseType);
71548
- const constructors = typeMemberLookup.getConstructors(typeMemberLookupContext);
71787
+ const typeMemberLookup = TypeMemberLookupA.ofType(this.analyzer, unaliasedBaseType);
71788
+ const constructors = typeMemberLookup.getConstructors(
71789
+ typeMemberLookupContext,
71790
+ 4 /* NoTypeExtensionMembers */
71791
+ );
71549
71792
  if (constructors.length === 0) {
71550
71793
  this.diagnostics?.addDiagnostic(this.analyzer.createDiagnostic(
71551
71794
  2006 /* ConstructorNotFound */,
@@ -73963,8 +74206,8 @@ var OwnAndBaseConstructorCallsChecker = class {
73963
74206
  this.semanticContext = semanticContext;
73964
74207
  }
73965
74208
  check() {
74209
+ const callInfos = /* @__PURE__ */ new Map();
73966
74210
  const ownConstructorCalls = /* @__PURE__ */ new Map();
73967
- const baseConstructorCalls = /* @__PURE__ */ new Map();
73968
74211
  const diagnostics = new Array();
73969
74212
  const baseType = this.getUnaliasedBaseObjectType(this.typeEntity);
73970
74213
  let baseConstructorWithoutParameters;
@@ -73995,6 +74238,12 @@ var OwnAndBaseConstructorCallsChecker = class {
73995
74238
  firstStatement,
73996
74239
  diagnostics
73997
74240
  );
74241
+ const callInfo = new OwnOrBaseConstructorCallInfo(
74242
+ true,
74243
+ this.analyzer.instantiateTypeMemberByIdentitySubstitution(entity),
74244
+ expression
74245
+ );
74246
+ callInfos.set(constructorDeclaration2, callInfo);
73998
74247
  }
73999
74248
  }
74000
74249
  if (!isFirstStatementOwnOrBaseConstructorCall) {
@@ -74004,8 +74253,12 @@ var OwnAndBaseConstructorCallsChecker = class {
74004
74253
  isFirstStatementOwnOrBaseConstructorCall = true;
74005
74254
  const meaning = this.analyzer.resolveBaseExpression(callee);
74006
74255
  if (meaning.kind === "base-constructor-access" && meaning.suitableOrSingleConstructor !== void 0) {
74007
- const entity = this.analyzer.entity.ofConstructorDeclaration(constructorDeclaration2);
74008
- baseConstructorCalls.set(entity, meaning.suitableOrSingleConstructor);
74256
+ const callInfo = new OwnOrBaseConstructorCallInfo(
74257
+ false,
74258
+ meaning.suitableOrSingleConstructor,
74259
+ expression
74260
+ );
74261
+ callInfos.set(constructorDeclaration2, callInfo);
74009
74262
  }
74010
74263
  }
74011
74264
  }
@@ -74013,8 +74266,12 @@ var OwnAndBaseConstructorCallsChecker = class {
74013
74266
  }
74014
74267
  if (!isFirstStatementOwnOrBaseConstructorCall) {
74015
74268
  if (baseConstructorWithoutParameters !== void 0) {
74016
- const entity = this.analyzer.entity.ofConstructorDeclaration(constructorDeclaration2);
74017
- baseConstructorCalls.set(entity, baseConstructorWithoutParameters);
74269
+ const callInfo = new OwnOrBaseConstructorCallInfo(
74270
+ false,
74271
+ baseConstructorWithoutParameters,
74272
+ void 0
74273
+ );
74274
+ callInfos.set(constructorDeclaration2, callInfo);
74018
74275
  } else if (baseTypeHasAccessibleConstructors) {
74019
74276
  diagnostics.push(this.analyzer.createDiagnostic(
74020
74277
  2172 /* TheFirstStatementOfConstructorBlockMustBeEitherBaseOrOwnConstructorCall */,
@@ -74023,7 +74280,12 @@ var OwnAndBaseConstructorCallsChecker = class {
74023
74280
  }
74024
74281
  }
74025
74282
  }
74026
- return new OwnAndBaseConstructorCallsCheckResult(ownConstructorCalls, baseConstructorCalls, diagnostics);
74283
+ const typeRequiresExplicitOwnOrBaseConstructorCalls = baseTypeHasAccessibleConstructors && baseConstructorWithoutParameters === void 0;
74284
+ return new OwnAndBaseConstructorCallsCheckResult(
74285
+ typeRequiresExplicitOwnOrBaseConstructorCalls,
74286
+ callInfos,
74287
+ diagnostics
74288
+ );
74027
74289
  }
74028
74290
  addOwnConstructorCallOrReportCycleDiagnostic(constructorContainingCall, calledConstructor, ownConstructorCalls, diagnosticLocation, diagnostics) {
74029
74291
  if (calledConstructor.getOriginalEntity() === constructorContainingCall.getOriginalEntity()) {
@@ -74049,56 +74311,37 @@ var OwnAndBaseConstructorCallsChecker = class {
74049
74311
  }
74050
74312
  }
74051
74313
  getUnaliasedBaseObjectType(entity) {
74052
- let result;
74053
- switch (entity.typeEntityKind) {
74054
- case 0 /* Function */:
74055
- result = entity.getBaseObjectType().cycleFree;
74056
- break;
74057
- case 1 /* Structured */:
74058
- result = entity.getBaseObjectType().cycleFree;
74059
- break;
74060
- case 3 /* Variant */:
74061
- result = entity.getBaseObjectType().cycleFree;
74062
- break;
74063
- case 4 /* Alias */:
74064
- case 5 /* Reduced */:
74065
- result = void 0;
74066
- break;
74067
- default:
74068
- Debug.never(entity);
74069
- }
74070
- result = result?.unalias();
74314
+ const result = this.analyzer.typeUtils.getPossiblyAliasedBaseObjectTypeOfEntity(entity)?.unalias();
74071
74315
  return result?.kind === "structured" ? result : void 0;
74072
74316
  }
74073
74317
  findAccessibleConstructorWithoutParameters(type) {
74074
- let constructorWithoutParameters;
74075
- let hasAccessibleConstructors = false;
74076
74318
  const lookupContext = this.semanticContext.getTypeMemberLookupContext();
74077
- for (const constructor of type.getEntity().getMembers().getConstructors()) {
74078
- if (AccessibilityCheck.isTypeMemberAccessible(constructor, lookupContext, void 0, true)) {
74079
- hasAccessibleConstructors ||= true;
74080
- if (constructor.getParameters().length === 0) {
74081
- if (constructorWithoutParameters === void 0) {
74082
- constructorWithoutParameters = new Method(
74083
- this.analyzer,
74084
- constructor,
74085
- type.getSubstitutions()
74086
- );
74087
- break;
74088
- }
74089
- }
74090
- }
74319
+ const lookup = TypeMemberLookup.ofType(this.analyzer, type);
74320
+ const constructors = lookup.getConstructors(lookupContext, 4 /* NoTypeExtensionMembers */);
74321
+ if (constructors.length === 0) {
74322
+ return { constructor: void 0, hasAccessibleConstructors: false };
74323
+ }
74324
+ let constructor = constructors.find((c) => c.getParameters().length === 0);
74325
+ if (constructor === void 0) {
74326
+ constructor = Query.single(constructors, (c) => c.getParameters().every((p) => p.isOptional()));
74091
74327
  }
74092
- return { constructor: constructorWithoutParameters, hasAccessibleConstructors };
74328
+ return { constructor, hasAccessibleConstructors: true };
74093
74329
  }
74094
74330
  };
74095
74331
  var OwnAndBaseConstructorCallsCheckResult = class {
74096
- constructor(ownConstructorCalls, baseConstructorCalls, diagnostics) {
74097
- this.ownConstructorCalls = ownConstructorCalls;
74098
- this.baseConstructorCalls = baseConstructorCalls;
74332
+ constructor(typeRequiresExplicitOwnOrBaseConstructorCalls, ownOrBaseConstructorCallInfos, diagnostics) {
74333
+ this.typeRequiresExplicitOwnOrBaseConstructorCalls = typeRequiresExplicitOwnOrBaseConstructorCalls;
74334
+ this.ownOrBaseConstructorCallInfos = ownOrBaseConstructorCallInfos;
74099
74335
  this.diagnostics = diagnostics;
74100
74336
  }
74101
74337
  };
74338
+ var OwnOrBaseConstructorCallInfo = class {
74339
+ constructor(isOwnConstructorCall, constructor_, node) {
74340
+ this.isOwnConstructorCall = isOwnConstructorCall;
74341
+ this.constructor_ = constructor_;
74342
+ this.node = node;
74343
+ }
74344
+ };
74102
74345
 
74103
74346
  // source/analysis/a/OwnConstructorCallExpressionMeaning.ts
74104
74347
  var Resolver9 = class {
@@ -74137,7 +74380,10 @@ var Resolver9 = class {
74137
74380
  const type = this.analyzer.instantiateTypeByIdentitySubstitution(typeEntity);
74138
74381
  const typeMemberLookupContext = semanticContext.getTypeMemberLookupContext();
74139
74382
  const typeMemberLookup = TypeMemberLookupA.ofType(this.analyzer, type);
74140
- const constructors = typeMemberLookup.getConstructors(typeMemberLookupContext);
74383
+ const constructors = typeMemberLookup.getConstructors(
74384
+ typeMemberLookupContext,
74385
+ 4 /* NoTypeExtensionMembers */
74386
+ );
74141
74387
  if (constructors.length === 0) {
74142
74388
  this.diagnostics?.addDiagnostic(this.analyzer.createDiagnostic(
74143
74389
  2006 /* ConstructorNotFound */,
@@ -76303,7 +76549,7 @@ var Analyzer3 = class extends Analyzer {
76303
76549
  let result = this.ownAndBaseConstructorCallsCheckResults.get(node);
76304
76550
  if (result === void 0) {
76305
76551
  if (node.kind === 19 /* PackageAliasTypeDeclaration */) {
76306
- result = new OwnAndBaseConstructorCallsCheckResult(/* @__PURE__ */ new Map(), /* @__PURE__ */ new Map(), []);
76552
+ result = new OwnAndBaseConstructorCallsCheckResult(false, /* @__PURE__ */ new Map(), []);
76307
76553
  } else {
76308
76554
  const checker = new OwnAndBaseConstructorCallsChecker(
76309
76555
  this,