@artel/artc 0.6.25237 → 0.6.25238

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.
@@ -620,7 +620,7 @@ var UniqueWithComparatorQuery = class extends Query {
620
620
  };
621
621
 
622
622
  // source/common/Constants.ts
623
- var ArtelVersion = true ? "0.6.25237" : "";
623
+ var ArtelVersion = true ? "0.6.25238" : "";
624
624
  var ArtelSourceFileExtensions = [".\u0430\u0440\u0442", ".\u0430\u0440\u0442\u0435\u043B\u044C", ".art", ".artel"];
625
625
  var ArtelSourceFileExtensionSet = new Set(ArtelSourceFileExtensions);
626
626
  var ArtelSourceAndConfigurationFileExtensionSet = new Set(ArtelSourceFileExtensionSet).add(".json");
@@ -1338,14 +1338,14 @@ var NodeKind = /* @__PURE__ */ ((NodeKind3) => {
1338
1338
  NodeKind3[NodeKind3["AssumptionExpression"] = 62] = "AssumptionExpression";
1339
1339
  NodeKind3[NodeKind3["AsExpression"] = 63] = "AsExpression";
1340
1340
  NodeKind3[NodeKind3["BinaryExpression"] = 64] = "BinaryExpression";
1341
- NodeKind3[NodeKind3["FunctionBlockLiteral"] = 65] = "FunctionBlockLiteral";
1342
- NodeKind3[NodeKind3["ArgumentList"] = 66] = "ArgumentList";
1343
- NodeKind3[NodeKind3["CallExpression"] = 67] = "CallExpression";
1344
- NodeKind3[NodeKind3["AutotypeCallExpression"] = 68] = "AutotypeCallExpression";
1345
- NodeKind3[NodeKind3["IndexedAccessExpression"] = 69] = "IndexedAccessExpression";
1346
- NodeKind3[NodeKind3["InvalidExpression"] = 70] = "InvalidExpression";
1347
- NodeKind3[NodeKind3["IsExpression"] = 71] = "IsExpression";
1348
- NodeKind3[NodeKind3["FunctionLiteral"] = 72] = "FunctionLiteral";
1341
+ NodeKind3[NodeKind3["FunctionLiteral"] = 65] = "FunctionLiteral";
1342
+ NodeKind3[NodeKind3["FunctionBlockLiteral"] = 66] = "FunctionBlockLiteral";
1343
+ NodeKind3[NodeKind3["ArgumentList"] = 67] = "ArgumentList";
1344
+ NodeKind3[NodeKind3["CallExpression"] = 68] = "CallExpression";
1345
+ NodeKind3[NodeKind3["AutotypeCallExpression"] = 69] = "AutotypeCallExpression";
1346
+ NodeKind3[NodeKind3["IndexedAccessExpression"] = 70] = "IndexedAccessExpression";
1347
+ NodeKind3[NodeKind3["InvalidExpression"] = 71] = "InvalidExpression";
1348
+ NodeKind3[NodeKind3["IsExpression"] = 72] = "IsExpression";
1349
1349
  NodeKind3[NodeKind3["ParenthesizedExpression"] = 73] = "ParenthesizedExpression";
1350
1350
  NodeKind3[NodeKind3["ConditionalExpression"] = 74] = "ConditionalExpression";
1351
1351
  NodeKind3[NodeKind3["PrefixUnaryExpression"] = 75] = "PrefixUnaryExpression";
@@ -6501,10 +6501,46 @@ var BinaryExpression = class extends BaseNode {
6501
6501
  ];
6502
6502
  }
6503
6503
  };
6504
+ var FunctionLiteral = class extends BaseNode {
6505
+ constructor(green, rangeStart, parent) {
6506
+ super(green, rangeStart, parent);
6507
+ this.kind = 65 /* FunctionLiteral */;
6508
+ }
6509
+ get children() {
6510
+ return this._children ??= this.createChildren();
6511
+ }
6512
+ get asyncKeyword() {
6513
+ return this.children[0];
6514
+ }
6515
+ get functionKeyword() {
6516
+ return this.children[1];
6517
+ }
6518
+ get parameterClause() {
6519
+ return this.children[2];
6520
+ }
6521
+ get returnTypeAnnotation() {
6522
+ return this.children[3];
6523
+ }
6524
+ get block() {
6525
+ return this.children[4];
6526
+ }
6527
+ get thisAsNode() {
6528
+ return this;
6529
+ }
6530
+ createChildren() {
6531
+ return [
6532
+ this.green.asyncKeyword?.toRed(childRangeStart(this, 0), this),
6533
+ this.green.functionKeyword.toRed(childRangeStart(this, 1), this),
6534
+ this.green.parameterClause.toRed(childRangeStart(this, 2), this),
6535
+ this.green.returnTypeAnnotation?.toRed(childRangeStart(this, 3), this),
6536
+ this.green.block.toRed(childRangeStart(this, 4), this)
6537
+ ];
6538
+ }
6539
+ };
6504
6540
  var FunctionBlockLiteral = class extends BaseNode {
6505
6541
  constructor(green, rangeStart, parent) {
6506
6542
  super(green, rangeStart, parent);
6507
- this.kind = 65 /* FunctionBlockLiteral */;
6543
+ this.kind = 66 /* FunctionBlockLiteral */;
6508
6544
  }
6509
6545
  get children() {
6510
6546
  return this._children ??= this.createChildren();
@@ -6522,7 +6558,7 @@ var FunctionBlockLiteral = class extends BaseNode {
6522
6558
  var ArgumentList = class extends BaseNode {
6523
6559
  constructor(green, rangeStart, parent) {
6524
6560
  super(green, rangeStart, parent);
6525
- this.kind = 66 /* ArgumentList */;
6561
+ this.kind = 67 /* ArgumentList */;
6526
6562
  }
6527
6563
  get children() {
6528
6564
  return this._children ??= this.createChildren();
@@ -6543,7 +6579,7 @@ var ArgumentList = class extends BaseNode {
6543
6579
  var CallExpression = class extends BaseNode {
6544
6580
  constructor(green, rangeStart, parent) {
6545
6581
  super(green, rangeStart, parent);
6546
- this.kind = 67 /* CallExpression */;
6582
+ this.kind = 68 /* CallExpression */;
6547
6583
  }
6548
6584
  get children() {
6549
6585
  return this._children ??= this.createChildren();
@@ -6575,7 +6611,7 @@ var CallExpression = class extends BaseNode {
6575
6611
  var AutotypeCallExpression = class extends BaseNode {
6576
6612
  constructor(green, rangeStart, parent) {
6577
6613
  super(green, rangeStart, parent);
6578
- this.kind = 68 /* AutotypeCallExpression */;
6614
+ this.kind = 69 /* AutotypeCallExpression */;
6579
6615
  }
6580
6616
  get children() {
6581
6617
  return this._children ??= this.createChildren();
@@ -6607,7 +6643,7 @@ var AutotypeCallExpression = class extends BaseNode {
6607
6643
  var IndexedAccessExpression = class extends BaseNode {
6608
6644
  constructor(green, rangeStart, parent) {
6609
6645
  super(green, rangeStart, parent);
6610
- this.kind = 69 /* IndexedAccessExpression */;
6646
+ this.kind = 70 /* IndexedAccessExpression */;
6611
6647
  }
6612
6648
  get children() {
6613
6649
  return this._children ??= this.createChildren();
@@ -6639,7 +6675,7 @@ var IndexedAccessExpression = class extends BaseNode {
6639
6675
  var InvalidExpression = class extends BaseNode {
6640
6676
  constructor(green, rangeStart, parent) {
6641
6677
  super(green, rangeStart, parent);
6642
- this.kind = 70 /* InvalidExpression */;
6678
+ this.kind = 71 /* InvalidExpression */;
6643
6679
  this.children = [];
6644
6680
  }
6645
6681
  get thisAsNode() {
@@ -6649,7 +6685,7 @@ var InvalidExpression = class extends BaseNode {
6649
6685
  var IsExpression = class extends BaseNode {
6650
6686
  constructor(green, rangeStart, parent) {
6651
6687
  super(green, rangeStart, parent);
6652
- this.kind = 71 /* IsExpression */;
6688
+ this.kind = 72 /* IsExpression */;
6653
6689
  }
6654
6690
  get children() {
6655
6691
  return this._children ??= this.createChildren();
@@ -6674,42 +6710,6 @@ var IsExpression = class extends BaseNode {
6674
6710
  ];
6675
6711
  }
6676
6712
  };
6677
- var FunctionLiteral = class extends BaseNode {
6678
- constructor(green, rangeStart, parent) {
6679
- super(green, rangeStart, parent);
6680
- this.kind = 72 /* FunctionLiteral */;
6681
- }
6682
- get children() {
6683
- return this._children ??= this.createChildren();
6684
- }
6685
- get asyncKeyword() {
6686
- return this.children[0];
6687
- }
6688
- get functionKeyword() {
6689
- return this.children[1];
6690
- }
6691
- get parameterClause() {
6692
- return this.children[2];
6693
- }
6694
- get returnTypeAnnotation() {
6695
- return this.children[3];
6696
- }
6697
- get block() {
6698
- return this.children[4];
6699
- }
6700
- get thisAsNode() {
6701
- return this;
6702
- }
6703
- createChildren() {
6704
- return [
6705
- this.green.asyncKeyword?.toRed(childRangeStart(this, 0), this),
6706
- this.green.functionKeyword.toRed(childRangeStart(this, 1), this),
6707
- this.green.parameterClause.toRed(childRangeStart(this, 2), this),
6708
- this.green.returnTypeAnnotation?.toRed(childRangeStart(this, 3), this),
6709
- this.green.block.toRed(childRangeStart(this, 4), this)
6710
- ];
6711
- }
6712
- };
6713
6713
  var ParenthesizedExpression = class extends BaseNode {
6714
6714
  constructor(green, rangeStart, parent) {
6715
6715
  super(green, rangeStart, parent);
@@ -8467,13 +8467,13 @@ var TextLiteralTranslation = class extends BaseNode {
8467
8467
  get children() {
8468
8468
  return this._children ??= this.createChildren();
8469
8469
  }
8470
- get sourceTextLiteral() {
8470
+ get sourceText() {
8471
8471
  return this.children[0];
8472
8472
  }
8473
8473
  get minusGreaterThanToken() {
8474
8474
  return this.children[1];
8475
8475
  }
8476
- get translatedTextLiteral() {
8476
+ get translatedText() {
8477
8477
  return this.children[2];
8478
8478
  }
8479
8479
  get thisAsNode() {
@@ -8481,9 +8481,9 @@ var TextLiteralTranslation = class extends BaseNode {
8481
8481
  }
8482
8482
  createChildren() {
8483
8483
  return [
8484
- this.green.sourceTextLiteral.toRed(childRangeStart(this, 0), this),
8484
+ this.green.sourceText.toRed(childRangeStart(this, 0), this),
8485
8485
  this.green.minusGreaterThanToken.toRed(childRangeStart(this, 1), this),
8486
- this.green.translatedTextLiteral.toRed(childRangeStart(this, 2), this)
8486
+ this.green.translatedText.toRed(childRangeStart(this, 2), this)
8487
8487
  ];
8488
8488
  }
8489
8489
  };
@@ -8495,27 +8495,23 @@ var TextTemplateLiteralTranslation = class extends BaseNode {
8495
8495
  get children() {
8496
8496
  return this._children ??= this.createChildren();
8497
8497
  }
8498
- get sourceTextTemplateLiteral() {
8498
+ get sourceText() {
8499
8499
  return this.children[0];
8500
8500
  }
8501
8501
  get minusGreaterThanToken() {
8502
8502
  return this.children[1];
8503
8503
  }
8504
- get translatedTextTemplateLiteral() {
8504
+ get translatedTextOrTranslationFunction() {
8505
8505
  return this.children[2];
8506
8506
  }
8507
- get functionBlockLiteral() {
8508
- return this.children[3];
8509
- }
8510
8507
  get thisAsNode() {
8511
8508
  return this;
8512
8509
  }
8513
8510
  createChildren() {
8514
8511
  return [
8515
- this.green.sourceTextTemplateLiteral.toRed(childRangeStart(this, 0), this),
8512
+ this.green.sourceText.toRed(childRangeStart(this, 0), this),
8516
8513
  this.green.minusGreaterThanToken.toRed(childRangeStart(this, 1), this),
8517
- this.green.translatedTextTemplateLiteral?.toRed(childRangeStart(this, 2), this),
8518
- this.green.functionBlockLiteral?.toRed(childRangeStart(this, 3), this)
8514
+ this.green.translatedTextOrTranslationFunction.toRed(childRangeStart(this, 2), this)
8519
8515
  ];
8520
8516
  }
8521
8517
  };
@@ -10564,10 +10560,38 @@ var BinaryExpression2 = class extends BaseNode2 {
10564
10560
  return new BinaryExpression(this, rangeStart, parent);
10565
10561
  }
10566
10562
  };
10563
+ var FunctionLiteral2 = class extends BaseNode2 {
10564
+ constructor(asyncKeyword, functionKeyword, parameterClause, returnTypeAnnotation, block) {
10565
+ super();
10566
+ this.kind = 65 /* FunctionLiteral */;
10567
+ this.children = [asyncKeyword, functionKeyword, parameterClause, returnTypeAnnotation, block];
10568
+ }
10569
+ get asyncKeyword() {
10570
+ return this.children[0];
10571
+ }
10572
+ get functionKeyword() {
10573
+ return this.children[1];
10574
+ }
10575
+ get parameterClause() {
10576
+ return this.children[2];
10577
+ }
10578
+ get returnTypeAnnotation() {
10579
+ return this.children[3];
10580
+ }
10581
+ get block() {
10582
+ return this.children[4];
10583
+ }
10584
+ get thisAsNode() {
10585
+ return this;
10586
+ }
10587
+ toRed(rangeStart, parent) {
10588
+ return new FunctionLiteral(this, rangeStart, parent);
10589
+ }
10590
+ };
10567
10591
  var FunctionBlockLiteral2 = class extends BaseNode2 {
10568
10592
  constructor(block) {
10569
10593
  super();
10570
- this.kind = 65 /* FunctionBlockLiteral */;
10594
+ this.kind = 66 /* FunctionBlockLiteral */;
10571
10595
  this.children = [block];
10572
10596
  }
10573
10597
  get block() {
@@ -10583,7 +10607,7 @@ var FunctionBlockLiteral2 = class extends BaseNode2 {
10583
10607
  var ArgumentList2 = class extends BaseNode2 {
10584
10608
  constructor(elements) {
10585
10609
  super();
10586
- this.kind = 66 /* ArgumentList */;
10610
+ this.kind = 67 /* ArgumentList */;
10587
10611
  this.children = elements;
10588
10612
  }
10589
10613
  get elements() {
@@ -10599,7 +10623,7 @@ var ArgumentList2 = class extends BaseNode2 {
10599
10623
  var CallExpression2 = class extends BaseNode2 {
10600
10624
  constructor(expression, openParenthesisToken, argumentList, closeParenthesisToken) {
10601
10625
  super();
10602
- this.kind = 67 /* CallExpression */;
10626
+ this.kind = 68 /* CallExpression */;
10603
10627
  this.children = [expression, openParenthesisToken, argumentList, closeParenthesisToken];
10604
10628
  }
10605
10629
  get expression() {
@@ -10624,7 +10648,7 @@ var CallExpression2 = class extends BaseNode2 {
10624
10648
  var AutotypeCallExpression2 = class extends BaseNode2 {
10625
10649
  constructor(autotypeKeyword, openParenthesisToken, argumentList, closeParenthesisToken) {
10626
10650
  super();
10627
- this.kind = 68 /* AutotypeCallExpression */;
10651
+ this.kind = 69 /* AutotypeCallExpression */;
10628
10652
  this.children = [autotypeKeyword, openParenthesisToken, argumentList, closeParenthesisToken];
10629
10653
  }
10630
10654
  get autotypeKeyword() {
@@ -10649,7 +10673,7 @@ var AutotypeCallExpression2 = class extends BaseNode2 {
10649
10673
  var IndexedAccessExpression2 = class extends BaseNode2 {
10650
10674
  constructor(expression, openSquareBracketToken, argumentList, closeSquareBracketToken) {
10651
10675
  super();
10652
- this.kind = 69 /* IndexedAccessExpression */;
10676
+ this.kind = 70 /* IndexedAccessExpression */;
10653
10677
  this.children = [expression, openSquareBracketToken, argumentList, closeSquareBracketToken];
10654
10678
  }
10655
10679
  get expression() {
@@ -10674,7 +10698,7 @@ var IndexedAccessExpression2 = class extends BaseNode2 {
10674
10698
  var InvalidExpression2 = class extends BaseNode2 {
10675
10699
  constructor() {
10676
10700
  super();
10677
- this.kind = 70 /* InvalidExpression */;
10701
+ this.kind = 71 /* InvalidExpression */;
10678
10702
  this.children = [];
10679
10703
  }
10680
10704
  get thisAsNode() {
@@ -10687,7 +10711,7 @@ var InvalidExpression2 = class extends BaseNode2 {
10687
10711
  var IsExpression2 = class extends BaseNode2 {
10688
10712
  constructor(expression, isKeyword2, typeSpecifier) {
10689
10713
  super();
10690
- this.kind = 71 /* IsExpression */;
10714
+ this.kind = 72 /* IsExpression */;
10691
10715
  this.children = [expression, isKeyword2, typeSpecifier];
10692
10716
  }
10693
10717
  get expression() {
@@ -10706,34 +10730,6 @@ var IsExpression2 = class extends BaseNode2 {
10706
10730
  return new IsExpression(this, rangeStart, parent);
10707
10731
  }
10708
10732
  };
10709
- var FunctionLiteral2 = class extends BaseNode2 {
10710
- constructor(asyncKeyword, functionKeyword, parameterClause, returnTypeAnnotation, block) {
10711
- super();
10712
- this.kind = 72 /* FunctionLiteral */;
10713
- this.children = [asyncKeyword, functionKeyword, parameterClause, returnTypeAnnotation, block];
10714
- }
10715
- get asyncKeyword() {
10716
- return this.children[0];
10717
- }
10718
- get functionKeyword() {
10719
- return this.children[1];
10720
- }
10721
- get parameterClause() {
10722
- return this.children[2];
10723
- }
10724
- get returnTypeAnnotation() {
10725
- return this.children[3];
10726
- }
10727
- get block() {
10728
- return this.children[4];
10729
- }
10730
- get thisAsNode() {
10731
- return this;
10732
- }
10733
- toRed(rangeStart, parent) {
10734
- return new FunctionLiteral(this, rangeStart, parent);
10735
- }
10736
- };
10737
10733
  var ParenthesizedExpression2 = class extends BaseNode2 {
10738
10734
  constructor(openParenthesisToken, expression, closeParenthesisToken) {
10739
10735
  super();
@@ -12134,18 +12130,18 @@ var TypeTranslation2 = class extends BaseNode2 {
12134
12130
  }
12135
12131
  };
12136
12132
  var TextLiteralTranslation2 = class extends BaseNode2 {
12137
- constructor(sourceTextLiteral, minusGreaterThanToken, translatedTextLiteral) {
12133
+ constructor(sourceText, minusGreaterThanToken, translatedText) {
12138
12134
  super();
12139
12135
  this.kind = 140 /* TextLiteralTranslation */;
12140
- this.children = [sourceTextLiteral, minusGreaterThanToken, translatedTextLiteral];
12136
+ this.children = [sourceText, minusGreaterThanToken, translatedText];
12141
12137
  }
12142
- get sourceTextLiteral() {
12138
+ get sourceText() {
12143
12139
  return this.children[0];
12144
12140
  }
12145
12141
  get minusGreaterThanToken() {
12146
12142
  return this.children[1];
12147
12143
  }
12148
- get translatedTextLiteral() {
12144
+ get translatedText() {
12149
12145
  return this.children[2];
12150
12146
  }
12151
12147
  get thisAsNode() {
@@ -12156,23 +12152,20 @@ var TextLiteralTranslation2 = class extends BaseNode2 {
12156
12152
  }
12157
12153
  };
12158
12154
  var TextTemplateLiteralTranslation2 = class extends BaseNode2 {
12159
- constructor(sourceTextTemplateLiteral, minusGreaterThanToken, translatedTextTemplateLiteral, functionBlockLiteral) {
12155
+ constructor(sourceText, minusGreaterThanToken, translatedTextOrTranslationFunction) {
12160
12156
  super();
12161
12157
  this.kind = 141 /* TextTemplateLiteralTranslation */;
12162
- this.children = [sourceTextTemplateLiteral, minusGreaterThanToken, translatedTextTemplateLiteral, functionBlockLiteral];
12158
+ this.children = [sourceText, minusGreaterThanToken, translatedTextOrTranslationFunction];
12163
12159
  }
12164
- get sourceTextTemplateLiteral() {
12160
+ get sourceText() {
12165
12161
  return this.children[0];
12166
12162
  }
12167
12163
  get minusGreaterThanToken() {
12168
12164
  return this.children[1];
12169
12165
  }
12170
- get translatedTextTemplateLiteral() {
12166
+ get translatedTextOrTranslationFunction() {
12171
12167
  return this.children[2];
12172
12168
  }
12173
- get functionBlockLiteral() {
12174
- return this.children[3];
12175
- }
12176
12169
  get thisAsNode() {
12177
12170
  return this;
12178
12171
  }
@@ -18145,6 +18138,23 @@ var TranslationPackage = class extends SourcePackageBase {
18145
18138
  return this.configuration.dialect;
18146
18139
  }
18147
18140
  };
18141
+ var TextTranslationPackage = class extends SourcePackageBase {
18142
+ constructor(uri, configuration, sourceFiles) {
18143
+ const name = configuration.name;
18144
+ super(uri, name, sourceFiles);
18145
+ this.kind = "text-translation";
18146
+ this.configuration = configuration;
18147
+ }
18148
+ get asPackage() {
18149
+ return this;
18150
+ }
18151
+ get locale() {
18152
+ return this.configuration.locale;
18153
+ }
18154
+ get dialect() {
18155
+ return this.configuration.dialect;
18156
+ }
18157
+ };
18148
18158
  var TranslationPackageConfiguration = class {
18149
18159
  constructor(targetPackageName, translatedName, translationLocale, locale, dialect = DefaultDialect) {
18150
18160
  this.targetPackageName = targetPackageName;
@@ -18157,6 +18167,17 @@ var TranslationPackageConfiguration = class {
18157
18167
  return new PackageName3([...this.targetPackageName.segments, new Name(localeToString(this.translationLocale))]);
18158
18168
  }
18159
18169
  };
18170
+ var TextTranslationPackageConfiguration = class {
18171
+ constructor(targetPackageName, translationLocale, locale, dialect = DefaultDialect) {
18172
+ this.targetPackageName = targetPackageName;
18173
+ this.translationLocale = translationLocale;
18174
+ this.locale = locale;
18175
+ this.dialect = dialect;
18176
+ }
18177
+ get name() {
18178
+ return new PackageName3([...this.targetPackageName.segments, new Name(localeToString(this.translationLocale))]);
18179
+ }
18180
+ };
18160
18181
  var ProgramPackageConfiguration = class {
18161
18182
  constructor(name, locale, dialect = DefaultDialect, version, targetPlatform = new TargetPlatformConfig.Any(), requiredPackages = [], implementedInterfacePackageName, jsProjectRootUri, packageImportLocales = [], automaticallyImportedPackages) {
18162
18183
  this.name = name;
@@ -18327,6 +18348,9 @@ var ConfigurationConverter = class {
18327
18348
  case "Translations":
18328
18349
  packageConfiguration = this.convertTranslationsConfiguration(configuration, defaultLocale, defaultDialect);
18329
18350
  break;
18351
+ case "TextTranslations":
18352
+ packageConfiguration = this.convertTextTranslationsConfiguration(configuration, defaultLocale, defaultDialect);
18353
+ break;
18330
18354
  default:
18331
18355
  Debug.never(configuration);
18332
18356
  }
@@ -18439,6 +18463,13 @@ var ConfigurationConverter = class {
18439
18463
  const dialect = configuration.dialect !== void 0 ? this.convertDialect(configuration.dialect) : defaultDialect ?? DefaultDialect;
18440
18464
  return new TranslationPackageConfiguration(targetPackageName, translatedName, translationLocale, locale, dialect);
18441
18465
  }
18466
+ static convertTextTranslationsConfiguration(configuration, defaultLocale, defaultDialect) {
18467
+ const targetPackageName = PackageName3.parse(configuration.originalPackageName);
18468
+ const translationLocale = this.convertLanguage(configuration.translationLanguage);
18469
+ const locale = configuration.language !== void 0 ? this.convertLanguage(configuration.language) : defaultLocale ?? DefaultLocale;
18470
+ const dialect = configuration.dialect !== void 0 ? this.convertDialect(configuration.dialect) : defaultDialect ?? DefaultDialect;
18471
+ return new TextTranslationPackageConfiguration(targetPackageName, translationLocale, locale, dialect);
18472
+ }
18442
18473
  static convertJavaScriptImplementation(implementation) {
18443
18474
  switch (implementation.type) {
18444
18475
  case "JavaScriptModule":
@@ -18552,6 +18583,9 @@ var config_en_schema_default = {
18552
18583
  },
18553
18584
  {
18554
18585
  $ref: "#/definitions/Translations"
18586
+ },
18587
+ {
18588
+ $ref: "#/definitions/TextTranslations"
18555
18589
  }
18556
18590
  ]
18557
18591
  },
@@ -18995,6 +19029,33 @@ var config_en_schema_default = {
18995
19029
  "translationLanguage"
18996
19030
  ],
18997
19031
  additionalProperties: false
19032
+ },
19033
+ TextTranslations: {
19034
+ type: "object",
19035
+ properties: {
19036
+ type: {
19037
+ type: "string",
19038
+ const: "TextTranslations"
19039
+ },
19040
+ originalPackageName: {
19041
+ type: "string"
19042
+ },
19043
+ translationLanguage: {
19044
+ $ref: "#/definitions/Language"
19045
+ },
19046
+ language: {
19047
+ $ref: "#/definitions/Language"
19048
+ },
19049
+ dialect: {
19050
+ $ref: "#/definitions/Dialect"
19051
+ }
19052
+ },
19053
+ required: [
19054
+ "type",
19055
+ "originalPackageName",
19056
+ "translationLanguage"
19057
+ ],
19058
+ additionalProperties: false
18998
19059
  }
18999
19060
  }
19000
19061
  };
@@ -19020,6 +19081,9 @@ var config_ru_schema_default = {
19020
19081
  },
19021
19082
  {
19022
19083
  $ref: "#/definitions/\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B"
19084
+ },
19085
+ {
19086
+ $ref: "#/definitions/\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B\u0422\u0435\u043A\u0441\u0442\u043E\u0432"
19023
19087
  }
19024
19088
  ]
19025
19089
  },
@@ -19470,6 +19534,33 @@ var config_ru_schema_default = {
19470
19534
  "\u044F\u0437\u044B\u043A\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0430"
19471
19535
  ],
19472
19536
  additionalProperties: false
19537
+ },
19538
+ \u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B\u0422\u0435\u043A\u0441\u0442\u043E\u0432: {
19539
+ type: "object",
19540
+ properties: {
19541
+ \u0442\u0438\u043F: {
19542
+ type: "string",
19543
+ const: "\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B\u0422\u0435\u043A\u0441\u0442\u043E\u0432"
19544
+ },
19545
+ \u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430\u0418\u0441\u0445\u043E\u0434\u043D\u043E\u0435: {
19546
+ type: "string"
19547
+ },
19548
+ \u044F\u0437\u044B\u043A\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0430: {
19549
+ $ref: "#/definitions/\u042F\u0437\u044B\u043A"
19550
+ },
19551
+ \u044F\u0437\u044B\u043A: {
19552
+ $ref: "#/definitions/\u042F\u0437\u044B\u043A"
19553
+ },
19554
+ \u0434\u0438\u0430\u043B\u0435\u043A\u0442: {
19555
+ $ref: "#/definitions/\u0414\u0438\u0430\u043B\u0435\u043A\u0442"
19556
+ }
19557
+ },
19558
+ required: [
19559
+ "\u0442\u0438\u043F",
19560
+ "\u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430\u0418\u0441\u0445\u043E\u0434\u043D\u043E\u0435",
19561
+ "\u044F\u0437\u044B\u043A\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0430"
19562
+ ],
19563
+ additionalProperties: false
19473
19564
  }
19474
19565
  }
19475
19566
  };
@@ -19533,6 +19624,8 @@ var RussianConfigurationTranslator = class {
19533
19624
  return this.translatePackageGroup(value);
19534
19625
  case "\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B":
19535
19626
  return this.translateTranslations(value);
19627
+ case "\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B\u0422\u0435\u043A\u0441\u0442\u043E\u0432":
19628
+ return this.translateTextTranslations(value);
19536
19629
  default:
19537
19630
  Debug.never(value);
19538
19631
  }
@@ -19565,6 +19658,15 @@ var RussianConfigurationTranslator = class {
19565
19658
  dialect: value.\u0434\u0438\u0430\u043B\u0435\u043A\u0442 !== void 0 ? this.translateDialect(value.\u0434\u0438\u0430\u043B\u0435\u043A\u0442) : void 0
19566
19659
  };
19567
19660
  }
19661
+ static translateTextTranslations(value) {
19662
+ return {
19663
+ type: "TextTranslations",
19664
+ originalPackageName: value.\u0438\u043C\u044F\u041F\u0430\u043A\u0435\u0442\u0430\u0418\u0441\u0445\u043E\u0434\u043D\u043E\u0435,
19665
+ translationLanguage: this.translateLanguage(value.\u044F\u0437\u044B\u043A\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u0430),
19666
+ language: value.\u044F\u0437\u044B\u043A !== void 0 ? this.translateLanguage(value.\u044F\u0437\u044B\u043A) : void 0,
19667
+ dialect: value.\u0434\u0438\u0430\u043B\u0435\u043A\u0442 !== void 0 ? this.translateDialect(value.\u0434\u0438\u0430\u043B\u0435\u043A\u0442) : void 0
19668
+ };
19669
+ }
19568
19670
  static translateLanguage(value) {
19569
19671
  switch (value) {
19570
19672
  case "\u0440\u0443\u0441\u0441\u043A\u0438\u0439" /* Русский */:
@@ -21412,7 +21514,7 @@ var StatementParser = class {
21412
21514
  result = new AssignmentStatement2(expression, operator, right);
21413
21515
  } else {
21414
21516
  result = new ExpressionStatement2(expression);
21415
- if (this.parser.dialect === 1 /* ArtelA */ && expression.kind !== 67 /* CallExpression */ && expression.kind !== 70 /* InvalidExpression */) {
21517
+ if (this.parser.dialect === 1 /* ArtelA */ && expression.kind !== 68 /* CallExpression */ && expression.kind !== 71 /* InvalidExpression */) {
21416
21518
  const expressionStart = startTokenOrKeyword.getRangeWithoutTrivia().start;
21417
21519
  const triviaLength = expressionStart - statementStart;
21418
21520
  const diagnosticRange = new Range(expressionStart, expressionStart + expression.rangeLength - triviaLength);
@@ -22091,7 +22193,7 @@ var PackageMemberDeclarationParser = class {
22091
22193
  const declarationStart = this.parser.tokenOrKeywordStartPosition();
22092
22194
  const tagList = this.parser.tagParser.parseTagList();
22093
22195
  const modifierList = this.parser.modifierParser.parseModifierList();
22094
- const allowGroupDeclaration = modifierList.modifiers.length > 0;
22196
+ const allowGroupDeclaration = tagList.tags.length > 0 || modifierList.modifiers.length > 0;
22095
22197
  const parsingFunction = this.getPackageMemberDeclarationParsingFunction(allowGroupDeclaration);
22096
22198
  if (parsingFunction === void 0) {
22097
22199
  this.parser.tryReportDiagnosticAtCurrentRange(105 /* PackageMemberDeclarationExpected */);
@@ -22386,7 +22488,7 @@ var TypeMemberDeclarationParser = class {
22386
22488
  const declarationStart = this.parser.tokenOrKeywordStartPosition();
22387
22489
  const tagList = this.parser.tagParser.parseTagList();
22388
22490
  const modifierList = this.parser.modifierParser.parseModifierList();
22389
- const allowGroupDeclaration = modifierList.modifiers.length > 0;
22491
+ const allowGroupDeclaration = tagList.tags.length > 0 || modifierList.modifiers.length > 0;
22390
22492
  const parsingFunction = this.getTypeMemberDeclarationParsingFunction(
22391
22493
  allowGroupDeclaration,
22392
22494
  parseVariantInsteadOfVariable
@@ -23334,45 +23436,41 @@ var TranslationsDeclarationParser = class {
23334
23436
  }
23335
23437
  parseTextLiteralTranslation() {
23336
23438
  const translationStart = this.parser.tokenOrKeywordStartPosition();
23337
- const sourceTextLiteral = this.parser.parseExpectedToken(6 /* TextLiteral */);
23439
+ const sourceText = this.parser.parseExpectedToken(6 /* TextLiteral */);
23338
23440
  const minusGreaterThanToken = this.parser.parseExpectedToken(43 /* MinusGreaterThan */);
23339
- const translatedTextLiteral = this.parser.parseExpectedToken(6 /* TextLiteral */);
23340
- const result = new TextLiteralTranslation2(
23341
- sourceTextLiteral,
23342
- minusGreaterThanToken,
23343
- translatedTextLiteral
23344
- );
23441
+ const translatedText = this.parser.parseExpectedToken(6 /* TextLiteral */);
23442
+ const result = new TextLiteralTranslation2(sourceText, minusGreaterThanToken, translatedText);
23345
23443
  return this.parser.intern(result, translationStart);
23346
23444
  }
23347
23445
  parseTextTemplateLiteralTranslation() {
23348
23446
  const translationStart = this.parser.tokenOrKeywordStartPosition();
23349
23447
  const sourceTextTemplateLiteral = this.parser.expressionParser.parseTextTemplateLiteral();
23350
23448
  const minusGreaterThanToken = this.parser.parseExpectedToken(43 /* MinusGreaterThan */);
23351
- let translatedTextTemplateLiteral;
23352
- let functionBlockLiteral;
23449
+ let translatedTextOrTranslationFunction;
23353
23450
  if (this.parser.currentTokenOrKeyword.kind === "token") {
23354
23451
  switch (this.parser.currentTokenOrKeyword.tokenKind) {
23355
23452
  case 7 /* TextTemplateHead */: {
23356
- translatedTextTemplateLiteral = this.parser.expressionParser.parseTextTemplateLiteral();
23453
+ translatedTextOrTranslationFunction = this.parser.expressionParser.parseTextTemplateLiteral();
23357
23454
  break;
23358
23455
  }
23359
23456
  case 44 /* OpenBrace */: {
23360
- functionBlockLiteral = this.parser.expressionParser.parseFunctionBlockLiteral();
23361
- break;
23362
- }
23363
- default: {
23364
- this.parser.tryReportDiagnosticAtCurrentRange(
23365
- 133 /* TranslatedTextTemplateOrTranslationFunctionBlockExpected */
23366
- );
23457
+ translatedTextOrTranslationFunction = this.parser.expressionParser.parseFunctionBlockLiteral();
23367
23458
  break;
23368
23459
  }
23369
23460
  }
23461
+ } else if (this.parser.currentTokenOrKeyword.isKeyword(12 /* Function */)) {
23462
+ translatedTextOrTranslationFunction = this.parser.expressionParser.parseFunctionLiteral();
23463
+ }
23464
+ if (translatedTextOrTranslationFunction === void 0) {
23465
+ translatedTextOrTranslationFunction = new InvalidExpression2();
23466
+ this.parser.tryReportDiagnosticAtCurrentRange(
23467
+ 133 /* TranslatedTextTemplateOrTranslationFunctionBlockExpected */
23468
+ );
23370
23469
  }
23371
23470
  const result = new TextTemplateLiteralTranslation2(
23372
23471
  sourceTextTemplateLiteral,
23373
23472
  minusGreaterThanToken,
23374
- translatedTextTemplateLiteral,
23375
- functionBlockLiteral
23473
+ translatedTextOrTranslationFunction
23376
23474
  );
23377
23475
  return this.parser.intern(result, translationStart);
23378
23476
  }
@@ -24433,8 +24531,10 @@ var FSTreeCompilationLoader = class {
24433
24531
  if (this._config.enableLogging) {
24434
24532
  if (configuration instanceof ProgramPackageConfiguration) {
24435
24533
  Logger.info(`\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044F \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u043D\u044B\u0439 \u043F\u0430\u043A\u0435\u0442 '${configuration.name}' \u043F\u043E \u043F\u0443\u0442\u0438 '${directory.uri}'.`);
24436
- } else {
24534
+ } else if (configuration instanceof TranslationPackageConfiguration) {
24437
24535
  Logger.info(`\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044F \u043F\u0430\u043A\u0435\u0442 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u043E\u0432 \u0434\u043B\u044F \u043F\u0430\u043A\u0435\u0442\u0430 '${configuration.targetPackageName}' \u043D\u0430 \u044F\u0437\u044B\u043A '${localeToString(configuration.translationLocale)}' \u043F\u043E \u043F\u0443\u0442\u0438 '${directory.uri}'.`);
24536
+ } else if (configuration instanceof TextTranslationPackageConfiguration) {
24537
+ Logger.info(`\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044F \u043F\u0430\u043A\u0435\u0442 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u043E\u0432 \u0442\u0435\u043A\u0441\u0442\u043E\u0432 \u0434\u043B\u044F \u043F\u0430\u043A\u0435\u0442\u0430 '${configuration.targetPackageName}' \u043D\u0430 \u044F\u0437\u044B\u043A '${localeToString(configuration.translationLocale)}' \u043F\u043E \u043F\u0443\u0442\u0438 '${directory.uri}'.`);
24438
24538
  }
24439
24539
  }
24440
24540
  const sourceFiles = new Array();
@@ -24451,6 +24551,8 @@ var FSTreeCompilationLoader = class {
24451
24551
  pkg = new ProgramPackage(directory.uri, configuration, sourceFiles);
24452
24552
  } else if (configuration instanceof TranslationPackageConfiguration) {
24453
24553
  pkg = new TranslationPackage(directory.uri, configuration, sourceFiles);
24554
+ } else if (configuration instanceof TextTranslationPackageConfiguration) {
24555
+ pkg = new TextTranslationPackage(directory.uri, configuration, sourceFiles);
24454
24556
  } else {
24455
24557
  Debug.never(configuration);
24456
24558
  }
@@ -24568,6 +24670,9 @@ var PackageContentsCompilationLoader = class {
24568
24670
  case "Translations":
24569
24671
  configuration = ConfigurationConverter.convertTranslationsConfiguration(rawConfiguration);
24570
24672
  break;
24673
+ case "TextTranslations":
24674
+ configuration = ConfigurationConverter.convertTextTranslationsConfiguration(rawConfiguration);
24675
+ break;
24571
24676
  case "PackageGroup":
24572
24677
  Debug.unreachable("\u0412 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u043C\u043E\u043C \u043F\u0430\u043A\u0435\u0442\u0430 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0437\u0430\u0434\u0430\u043D\u0430 \u0442\u043E\u043B\u044C\u043A\u043E \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u043F\u0430\u043A\u0435\u0442\u043E\u0432 \u0438\u043B\u0438 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u043E\u0432.");
24573
24678
  default:
@@ -24583,6 +24688,8 @@ var PackageContentsCompilationLoader = class {
24583
24688
  result = new ProgramPackage(packageUri, configuration, sourceFiles);
24584
24689
  } else if (configuration instanceof TranslationPackageConfiguration) {
24585
24690
  result = new TranslationPackage(packageUri, configuration, sourceFiles);
24691
+ } else if (configuration instanceof TextTranslationPackageConfiguration) {
24692
+ result = new TextTranslationPackage(packageUri, configuration, sourceFiles);
24586
24693
  } else {
24587
24694
  Debug.never(configuration);
24588
24695
  }
@@ -29124,17 +29231,17 @@ var NodeTypeUtils = class {
29124
29231
  case 62 /* AssumptionExpression */:
29125
29232
  case 85 /* BaseExpression */:
29126
29233
  case 64 /* BinaryExpression */:
29127
- case 65 /* FunctionBlockLiteral */:
29128
- case 67 /* CallExpression */:
29234
+ case 66 /* FunctionBlockLiteral */:
29235
+ case 68 /* CallExpression */:
29129
29236
  case 84 /* ObjectExpression */:
29130
29237
  case 88 /* DefaultMatchExpression */:
29131
29238
  case 86 /* IdentifierExpression */:
29132
- case 68 /* AutotypeCallExpression */:
29133
- case 69 /* IndexedAccessExpression */:
29134
- case 70 /* InvalidExpression */:
29135
- case 71 /* IsExpression */:
29239
+ case 69 /* AutotypeCallExpression */:
29240
+ case 70 /* IndexedAccessExpression */:
29241
+ case 71 /* InvalidExpression */:
29242
+ case 72 /* IsExpression */:
29136
29243
  case 83 /* KeywordExpression */:
29137
- case 72 /* FunctionLiteral */:
29244
+ case 65 /* FunctionLiteral */:
29138
29245
  case 73 /* ParenthesizedExpression */:
29139
29246
  case 75 /* PrefixUnaryExpression */:
29140
29247
  case 76 /* MemberAccessExpression */:
@@ -29249,8 +29356,8 @@ var NodeTypeUtils = class {
29249
29356
  case 50 /* MethodDeclaration */:
29250
29357
  case 51 /* OperatorDeclaration */:
29251
29358
  case 56 /* NestedFunctionDeclaration */:
29252
- case 72 /* FunctionLiteral */:
29253
- case 65 /* FunctionBlockLiteral */:
29359
+ case 65 /* FunctionLiteral */:
29360
+ case 66 /* FunctionBlockLiteral */:
29254
29361
  case 23 /* PackageConstructorDeclaration */:
29255
29362
  case 24 /* PackageEntryPointDeclaration */:
29256
29363
  case 43 /* ConstructorDeclaration */:
@@ -29400,7 +29507,7 @@ var PackageVariableDeclarationEntity = class {
29400
29507
  return void 0;
29401
29508
  }
29402
29509
  getTags() {
29403
- return this._analyzer.tags.ofTagList(this._node.tagList);
29510
+ return this._analyzer.tags.ofNodeWithTags(this._node);
29404
29511
  }
29405
29512
  ensureAllDiagnosticsReported() {
29406
29513
  if (!this._hasReportedAllDiagnostics) {
@@ -29556,7 +29663,7 @@ var FieldDeclarationEntity = class {
29556
29663
  return void 0;
29557
29664
  }
29558
29665
  getTags() {
29559
- return this._analyzer.tags.ofTagList(this._node.tagList);
29666
+ return this._analyzer.tags.ofNodeWithTags(this._node);
29560
29667
  }
29561
29668
  getContainer() {
29562
29669
  return this._analyzer.getTypeMemberEntityContainer(this._node);
@@ -29739,7 +29846,7 @@ var VariantDeclarationEntity = class {
29739
29846
  return void 0;
29740
29847
  }
29741
29848
  getTags() {
29742
- return this._analyzer.tags.ofTagList(this._node.tagList);
29849
+ return this._analyzer.tags.ofNodeWithTags(this._node);
29743
29850
  }
29744
29851
  getContainer() {
29745
29852
  return this._analyzer.getTypeMemberEntityContainer(this._node);
@@ -30001,7 +30108,7 @@ var ParameterDeclarationEntity = class {
30001
30108
  return void 0;
30002
30109
  }
30003
30110
  getTags() {
30004
- return this._analyzer.tags.ofTagList(this._node.tagList);
30111
+ return this._analyzer.tags.ofNodeWithTags(this._node);
30005
30112
  }
30006
30113
  getContainer() {
30007
30114
  const containingDeclaration = this._node.parent.parent.parent;
@@ -30042,7 +30149,7 @@ var ParameterDeclarationEntity = class {
30042
30149
  this._analyzer.entity.ofOperatorDeclaration(containingDeclaration)
30043
30150
  );
30044
30151
  }
30045
- case 72 /* FunctionLiteral */: {
30152
+ case 65 /* FunctionLiteral */: {
30046
30153
  const containingEntity = TreeQuery.fromNode(this._node).containingEntity(this._analyzer);
30047
30154
  return new ParameterVariableEntityContainer.FunctionLiteral(containingEntity);
30048
30155
  }
@@ -30134,7 +30241,7 @@ var IndexParameterDeclarationEntity = class {
30134
30241
  return void 0;
30135
30242
  }
30136
30243
  getTags() {
30137
- return this._analyzer.tags.ofTagList(this._getterOrSetterParameterDeclaration.tagList);
30244
+ return this._analyzer.tags.ofNodeWithTags(this._getterOrSetterParameterDeclaration);
30138
30245
  }
30139
30246
  getContainer() {
30140
30247
  return new ParameterVariableEntityContainer.Entity(this._indexerEntity);
@@ -30202,7 +30309,7 @@ var FunctionLiteralParameterDeclarationEntity = class {
30202
30309
  return void 0;
30203
30310
  }
30204
30311
  getTags() {
30205
- return this._analyzer.tags.ofTagList(this._node.tagList);
30312
+ return this._analyzer.tags.ofNodeWithTags(this._node);
30206
30313
  }
30207
30314
  getContainer() {
30208
30315
  const containingEntity = TreeQuery.fromNode(this._node).containingEntity(this._analyzer);
@@ -32792,7 +32899,7 @@ var Resolver3 = class {
32792
32899
  this._node = node;
32793
32900
  }
32794
32901
  resolve() {
32795
- if (this._node.parent.kind === 67 /* CallExpression */) {
32902
+ if (this._node.parent.kind === 68 /* CallExpression */) {
32796
32903
  return this.resolveBaseConstructorOrMethodAccess(this._node.parent);
32797
32904
  }
32798
32905
  return this.resolveBaseObjectAccess();
@@ -33611,13 +33718,13 @@ var Resolver7 = class {
33611
33718
  );
33612
33719
  }
33613
33720
  resolveFunctionOverload(candidates) {
33614
- if (this._node.parent.kind === 67 /* CallExpression */) {
33721
+ if (this._node.parent.kind === 68 /* CallExpression */) {
33615
33722
  return {
33616
33723
  suitableFunctions: this._analyzer.resolveFunctionOverloadByCallExpression(candidates, this._node.parent),
33617
33724
  dependsOnTargetType: false
33618
33725
  };
33619
33726
  }
33620
- if (this._node.parent.kind === 87 /* GenericSpecializationExpression */ && this._node.parent.parent.kind === 67 /* CallExpression */) {
33727
+ if (this._node.parent.kind === 87 /* GenericSpecializationExpression */ && this._node.parent.parent.kind === 68 /* CallExpression */) {
33621
33728
  return {
33622
33729
  suitableFunctions: this._analyzer.resolveFunctionOverloadByCallExpression(candidates, this._node.parent.parent),
33623
33730
  dependsOnTargetType: false
@@ -34533,13 +34640,13 @@ var Resolver9 = class {
34533
34640
  );
34534
34641
  }
34535
34642
  resolveFunctionOverload(candidates) {
34536
- if (this._node.parent.kind === 67 /* CallExpression */) {
34643
+ if (this._node.parent.kind === 68 /* CallExpression */) {
34537
34644
  return {
34538
34645
  suitableFunctions: this._analyzer.resolveFunctionOverloadByCallExpression(candidates, this._node.parent),
34539
34646
  dependsOnTargetType: false
34540
34647
  };
34541
34648
  }
34542
- if (this._node.parent.kind === 87 /* GenericSpecializationExpression */ && this._node.parent.parent.kind === 67 /* CallExpression */) {
34649
+ if (this._node.parent.kind === 87 /* GenericSpecializationExpression */ && this._node.parent.parent.kind === 68 /* CallExpression */) {
34543
34650
  return {
34544
34651
  suitableFunctions: this._analyzer.resolveFunctionOverloadByCallExpression(candidates, this._node.parent.parent),
34545
34652
  dependsOnTargetType: false
@@ -35059,7 +35166,7 @@ var Resolver10 = class {
35059
35166
  this._node = node;
35060
35167
  }
35061
35168
  resolve() {
35062
- if (this._node.parent.kind === 67 /* CallExpression */) {
35169
+ if (this._node.parent.kind === 68 /* CallExpression */) {
35063
35170
  return this.resolveOwnConstructorAccess(this._node.parent);
35064
35171
  }
35065
35172
  return this.resolveContextAccess();
@@ -36415,7 +36522,7 @@ var GraphBuilder = class {
36415
36522
  case 75 /* PrefixUnaryExpression */:
36416
36523
  this.visitPrefixUnaryExpressionInCondition(node, conditionTargets);
36417
36524
  break;
36418
- case 71 /* IsExpression */:
36525
+ case 72 /* IsExpression */:
36419
36526
  this.visitIsExpressionInCondition(node, conditionTargets);
36420
36527
  break;
36421
36528
  case 73 /* ParenthesizedExpression */:
@@ -36610,8 +36717,8 @@ function isNodeStartingNewFlow(node) {
36610
36717
  case 53 /* FieldGetterDeclaration */:
36611
36718
  case 54 /* FieldSetterDeclaration */:
36612
36719
  case 56 /* NestedFunctionDeclaration */:
36613
- case 65 /* FunctionBlockLiteral */:
36614
- case 72 /* FunctionLiteral */:
36720
+ case 66 /* FunctionBlockLiteral */:
36721
+ case 65 /* FunctionLiteral */:
36615
36722
  return true;
36616
36723
  default:
36617
36724
  Debug.typeIsAssignableTo();
@@ -36954,7 +37061,7 @@ var TypeNarrower = class {
36954
37061
  }
36955
37062
  return typeAtPredecessor;
36956
37063
  }
36957
- case 71 /* IsExpression */:
37064
+ case 72 /* IsExpression */:
36958
37065
  return this.getTypeAtIsExpression(typeAtPredecessor, node.syntaxNode, node.isTrue);
36959
37066
  default:
36960
37067
  Debug.never(node.syntaxNode);
@@ -37907,9 +38014,9 @@ var SubprogramInfo;
37907
38014
  }
37908
38015
  getSignatureType() {
37909
38016
  switch (this._node.kind) {
37910
- case 65 /* FunctionBlockLiteral */:
38017
+ case 66 /* FunctionBlockLiteral */:
37911
38018
  return this._analyzer.type.ofFunctionBlockLiteral(this._node);
37912
- case 72 /* FunctionLiteral */:
38019
+ case 65 /* FunctionLiteral */:
37913
38020
  return this._analyzer.type.ofFunctionLiteral(this._node);
37914
38021
  default:
37915
38022
  Debug.never(this._node);
@@ -38204,14 +38311,14 @@ var SemanticContextBuilder = class {
38204
38311
  if (result === void 0) {
38205
38312
  const outer = this.outermostSemanticContextOfRegularOrBlockFunctionLiteral(node);
38206
38313
  switch (node.kind) {
38207
- case 72 /* FunctionLiteral */:
38314
+ case 65 /* FunctionLiteral */:
38208
38315
  result = new ExplicitSubprogramParameterSemanticContext(
38209
38316
  this._analyzer,
38210
38317
  node.parameterClause.parameterList,
38211
38318
  outer
38212
38319
  );
38213
38320
  break;
38214
- case 65 /* FunctionBlockLiteral */:
38321
+ case 66 /* FunctionBlockLiteral */:
38215
38322
  result = new FunctionBlockLiteralParameterSemanticContext(this._analyzer, node, outer);
38216
38323
  break;
38217
38324
  default:
@@ -38331,8 +38438,8 @@ var SemanticContextBuilder = class {
38331
38438
  case 51 /* OperatorDeclaration */:
38332
38439
  outer = this.ofOperatorDeclarationParameters(node.parent);
38333
38440
  break;
38334
- case 65 /* FunctionBlockLiteral */:
38335
- case 72 /* FunctionLiteral */:
38441
+ case 66 /* FunctionBlockLiteral */:
38442
+ case 65 /* FunctionLiteral */:
38336
38443
  outer = this.ofRegularOrBlockFunctionLiteralParameters(node.parent);
38337
38444
  break;
38338
38445
  default:
@@ -38459,8 +38566,8 @@ var SemanticContextBuilder = class {
38459
38566
  return this.outermostSemanticContextOfIndexedElementAccessorDeclaration(node);
38460
38567
  case 51 /* OperatorDeclaration */:
38461
38568
  return this.outermostSemanticContextOfOperatorDeclaration(node);
38462
- case 65 /* FunctionBlockLiteral */:
38463
- case 72 /* FunctionLiteral */:
38569
+ case 66 /* FunctionBlockLiteral */:
38570
+ case 65 /* FunctionLiteral */:
38464
38571
  return this.outermostSemanticContextOfRegularOrBlockFunctionLiteral(node);
38465
38572
  default:
38466
38573
  Debug.never(node);
@@ -38525,9 +38632,9 @@ var SemanticContextBuilder = class {
38525
38632
  return offset === void 0 ? this.ofFunctionTypeDeclarationParameters(cursor) : this.ofChildOfFunctionTypeDeclarationBody(cursor, offset);
38526
38633
  case 38 /* TypeExtensionDeclaration */:
38527
38634
  return offset === void 0 ? this.ofTypeExtensionDeclarationBody(cursor) : this.ofChildOfTypeExtensionDeclaration(cursor, offset);
38528
- case 72 /* FunctionLiteral */:
38635
+ case 65 /* FunctionLiteral */:
38529
38636
  return offset === void 0 ? this.ofRegularOrBlockFunctionLiteralParameters(cursor) : this.ofChildOfFunctionLiteral(cursor, offset);
38530
- case 65 /* FunctionBlockLiteral */:
38637
+ case 66 /* FunctionBlockLiteral */:
38531
38638
  if (offset === void 0) {
38532
38639
  return this.ofRegularOrBlockFunctionLiteralParameters(cursor);
38533
38640
  } else if (this.isOffsetInsideFunctionBlock(offset, cursor.block)) {
@@ -39141,9 +39248,9 @@ var SpecialLocalDeclarationsBuilder = class {
39141
39248
  return this.buildForMethodDeclaration(analyzer, node.parent);
39142
39249
  case 56 /* NestedFunctionDeclaration */:
39143
39250
  return this.buildForNestedFunctionDeclaration(analyzer, node.parent);
39144
- case 65 /* FunctionBlockLiteral */:
39251
+ case 66 /* FunctionBlockLiteral */:
39145
39252
  return this.buildForFunctionBlockLiteral(analyzer, node.parent);
39146
- case 72 /* FunctionLiteral */:
39253
+ case 65 /* FunctionLiteral */:
39147
39254
  return this.buildForFunctionLiteral(analyzer, node.parent);
39148
39255
  case 51 /* OperatorDeclaration */:
39149
39256
  return this.buildForOperatorDeclaration(analyzer, node.parent);
@@ -39972,7 +40079,7 @@ var Analyzer = class _Analyzer {
39972
40079
  let result = false;
39973
40080
  const visitor = (node2) => {
39974
40081
  switch (node2.kind) {
39975
- case 67 /* CallExpression */: {
40082
+ case 68 /* CallExpression */: {
39976
40083
  const meaning = this.getCallExpressionMeaning(node2);
39977
40084
  if (meaning.kind === "function-call" && meaning.func.value.getEntity().isAsync()) {
39978
40085
  result = true;
@@ -39981,8 +40088,8 @@ var Analyzer = class _Analyzer {
39981
40088
  }
39982
40089
  break;
39983
40090
  }
39984
- case 72 /* FunctionLiteral */:
39985
- case 65 /* FunctionBlockLiteral */:
40091
+ case 65 /* FunctionLiteral */:
40092
+ case 66 /* FunctionBlockLiteral */:
39986
40093
  case 56 /* NestedFunctionDeclaration */:
39987
40094
  case 15 /* AnonymousTypeSpecifier */:
39988
40095
  break;
@@ -40138,16 +40245,16 @@ var Analyzer = class _Analyzer {
40138
40245
  getRespectiveParameter(node) {
40139
40246
  let matchResult;
40140
40247
  switch (node.parent.parent.kind) {
40141
- case 67 /* CallExpression */:
40248
+ case 68 /* CallExpression */:
40142
40249
  matchResult = this.argumentToParameterMatchResult.ofCallExpression(node.parent.parent);
40143
40250
  break;
40144
- case 68 /* AutotypeCallExpression */:
40251
+ case 69 /* AutotypeCallExpression */:
40145
40252
  matchResult = this.argumentToParameterMatchResult.ofAutotypeCallExpression(node.parent.parent);
40146
40253
  break;
40147
40254
  case 147 /* Tag */:
40148
40255
  matchResult = this.argumentToParameterMatchResult.ofTag(node.parent.parent);
40149
40256
  break;
40150
- case 69 /* IndexedAccessExpression */:
40257
+ case 70 /* IndexedAccessExpression */:
40151
40258
  matchResult = this.argumentToParameterMatchResult.ofIndexedAccessExpression(node.parent.parent);
40152
40259
  break;
40153
40260
  default:
@@ -40239,8 +40346,8 @@ var Analyzer = class _Analyzer {
40239
40346
  isExpressionValidOptionalChaining(node) {
40240
40347
  switch (node.kind) {
40241
40348
  case 76 /* MemberAccessExpression */:
40242
- case 67 /* CallExpression */:
40243
- case 69 /* IndexedAccessExpression */:
40349
+ case 68 /* CallExpression */:
40350
+ case 70 /* IndexedAccessExpression */:
40244
40351
  case 78 /* DereferenceExpression */: {
40245
40352
  if (node.expression.kind === 62 /* AssumptionExpression */) {
40246
40353
  const type = this.type.ofExpression(node.expression.expression);
@@ -40273,8 +40380,8 @@ var Analyzer = class _Analyzer {
40273
40380
  isExpressionOptionalChainingSyntactically(node) {
40274
40381
  switch (node.kind) {
40275
40382
  case 76 /* MemberAccessExpression */:
40276
- case 67 /* CallExpression */:
40277
- case 69 /* IndexedAccessExpression */:
40383
+ case 68 /* CallExpression */:
40384
+ case 70 /* IndexedAccessExpression */:
40278
40385
  case 78 /* DereferenceExpression */: {
40279
40386
  if (node.expression.kind === 62 /* AssumptionExpression */) {
40280
40387
  return true;
@@ -40483,8 +40590,8 @@ var Analyzer = class _Analyzer {
40483
40590
  switch (child.kind) {
40484
40591
  case 15 /* AnonymousTypeSpecifier */:
40485
40592
  case 56 /* NestedFunctionDeclaration */:
40486
- case 72 /* FunctionLiteral */:
40487
- case 65 /* FunctionBlockLiteral */:
40593
+ case 65 /* FunctionLiteral */:
40594
+ case 66 /* FunctionBlockLiteral */:
40488
40595
  return;
40489
40596
  default:
40490
40597
  visitChildren(child, visitor);
@@ -41007,8 +41114,8 @@ var Analyzer = class _Analyzer {
41007
41114
  case 53 /* FieldGetterDeclaration */:
41008
41115
  case 54 /* FieldSetterDeclaration */:
41009
41116
  case 56 /* NestedFunctionDeclaration */:
41010
- case 65 /* FunctionBlockLiteral */:
41011
- case 72 /* FunctionLiteral */:
41117
+ case 66 /* FunctionBlockLiteral */:
41118
+ case 65 /* FunctionLiteral */:
41012
41119
  isInTopLevelStatementBlockOfSubprogram = true;
41013
41120
  break;
41014
41121
  case 96 /* RunStatement */:
@@ -41223,7 +41330,7 @@ var Analyzer = class _Analyzer {
41223
41330
  } else {
41224
41331
  expression = block.expressionOrStatementList;
41225
41332
  }
41226
- if (expression.kind !== 67 /* CallExpression */) {
41333
+ if (expression.kind !== 68 /* CallExpression */) {
41227
41334
  diagnostics?.addDiagnostic(this.createNodeDiagnostic(
41228
41335
  277 /* IncorrectBodyOfBasicAliasTypeMethod */,
41229
41336
  node.block.openBraceToken
@@ -41652,19 +41759,19 @@ var Type4 = class {
41652
41759
  return this.ofAsExpression(node);
41653
41760
  case 64 /* BinaryExpression */:
41654
41761
  return this.ofBinaryExpression(node, targetTypeHint);
41655
- case 65 /* FunctionBlockLiteral */:
41762
+ case 66 /* FunctionBlockLiteral */:
41656
41763
  return this.ofFunctionBlockLiteral(node, targetTypeHint);
41657
- case 67 /* CallExpression */:
41764
+ case 68 /* CallExpression */:
41658
41765
  return this.ofCallExpression(node);
41659
- case 68 /* AutotypeCallExpression */:
41766
+ case 69 /* AutotypeCallExpression */:
41660
41767
  return this.ofAutotypeCallExpression(node, targetTypeHint);
41661
- case 69 /* IndexedAccessExpression */:
41768
+ case 70 /* IndexedAccessExpression */:
41662
41769
  return this.ofIndexedAccessExpression(node);
41663
- case 70 /* InvalidExpression */:
41770
+ case 71 /* InvalidExpression */:
41664
41771
  return this.ofInvalidExpression(node);
41665
- case 71 /* IsExpression */:
41772
+ case 72 /* IsExpression */:
41666
41773
  return this.ofIsExpression(node);
41667
- case 72 /* FunctionLiteral */:
41774
+ case 65 /* FunctionLiteral */:
41668
41775
  return this.ofFunctionLiteral(node, targetTypeHint);
41669
41776
  case 73 /* ParenthesizedExpression */:
41670
41777
  return this.ofParenthesizedExpression(node, targetTypeHint);
@@ -42313,7 +42420,7 @@ var TargetType = class {
42313
42420
  return this.getTargetTypeOfChildOfBinaryExpression(node.parent, node);
42314
42421
  case 145 /* Argument */:
42315
42422
  return this.getTargetTypeOfChildOfArgument(node.parent, node);
42316
- case 67 /* CallExpression */:
42423
+ case 68 /* CallExpression */:
42317
42424
  return this.getTargetTypeOfChildOfCallExpression(node.parent, node);
42318
42425
  case 95 /* DisposeStatement */:
42319
42426
  return this.getTargetTypeOfChildOfDisposeStatement(node.parent, node);
@@ -42329,9 +42436,9 @@ var TargetType = class {
42329
42436
  return this.getTargetTypeOfChildOfPackageVariableDeclaration(node.parent, node);
42330
42437
  case 107 /* IfStatement */:
42331
42438
  return this.getTargetTypeOfChildOfIfStatement(node.parent, node);
42332
- case 69 /* IndexedAccessExpression */:
42439
+ case 70 /* IndexedAccessExpression */:
42333
42440
  return this.getTargetTypeOfChildOfIndexedAccessExpression(node.parent, node);
42334
- case 71 /* IsExpression */:
42441
+ case 72 /* IsExpression */:
42335
42442
  return this.getTargetTypeOfChildOfIsExpression(node.parent, node);
42336
42443
  case 57 /* LocalVariableDeclaration */:
42337
42444
  return this.getTargetTypeOfChildOfLocalVariableDeclaration(node.parent, node);
@@ -42760,7 +42867,7 @@ var Entity4 = class {
42760
42867
  let result = this._parameterVariableEntities.get(node);
42761
42868
  if (result === void 0) {
42762
42869
  const owner = node.parent.parent.parent;
42763
- if (owner.kind === 72 /* FunctionLiteral */) {
42870
+ if (owner.kind === 65 /* FunctionLiteral */) {
42764
42871
  result = new FunctionLiteralParameterDeclarationEntity(this._analyzer, node, owner);
42765
42872
  } else if (owner.kind === 45 /* IndexedElementGetterDeclaration */ || owner.kind === 46 /* IndexedElementSetterDeclaration */) {
42766
42873
  const indexer = this.ofIndexerDeclaration(owner);
@@ -43562,10 +43669,10 @@ var OverriddenMember = class {
43562
43669
  this._overriddenAndShadowedOperators = /* @__PURE__ */ new Map();
43563
43670
  this._overriddenAndShadowedIndexers = /* @__PURE__ */ new Map();
43564
43671
  this._overriddenAndShadowedDereferenceOperators = /* @__PURE__ */ new Map();
43565
- this._namedMemberFinder = this.findOverriddenOrShadowedNamedMemberInType.bind(this);
43566
- this._operatorFinder = this.findOverriddenOrShadowedOperatorInType.bind(this);
43567
- this._indexerFinder = this.findOverriddenOrShadowedIndexerInType.bind(this);
43568
- this._dereferenceOperatorFinder = this.findOverriddenOrShadowedDereferenceOperatorInType.bind(this);
43672
+ this._namedMemberFinder = this.findOverriddenOrShadowedNamedMembersInType.bind(this);
43673
+ this._operatorFinder = this.findOverriddenOrShadowedOperatorsInType.bind(this);
43674
+ this._indexerFinder = this.findOverriddenOrShadowedIndexersInType.bind(this);
43675
+ this._dereferenceOperatorFinder = this.findOverriddenOrShadowedDereferenceOperatorsInType.bind(this);
43569
43676
  this._isField = (m) => m.kind === "field";
43570
43677
  this._isMethod = (m) => m.kind === "method";
43571
43678
  this._isOperator = (m) => m.kind === "operator";
@@ -43657,8 +43764,8 @@ var OverriddenMember = class {
43657
43764
  const shadowedMembers = new Array();
43658
43765
  if (this.entityCanOverrideOrShadow(entity)) {
43659
43766
  for (const lookup of this.enumerateTypeMemberLookups(entity, contextualNode)) {
43660
- const overriddenOrShadowedMember = overriddenOrShadowedMemberFinder(entity, lookup);
43661
- if (overriddenOrShadowedMember !== void 0) {
43767
+ const overriddenOrShadowedMembers = overriddenOrShadowedMemberFinder(entity, lookup);
43768
+ for (const overriddenOrShadowedMember of overriddenOrShadowedMembers) {
43662
43769
  if (!isMemberOfCorrectKind(overriddenOrShadowedMember)) {
43663
43770
  if (!shadowedMembers.some((m) => m.value.equals(overriddenOrShadowedMember))) {
43664
43771
  shadowedMembers.push(new ShadowedMemberInfo(
@@ -43697,25 +43804,25 @@ var OverriddenMember = class {
43697
43804
  }
43698
43805
  return new OverriddenAndShadowedMembers(overriddenMembers, shadowedMembers);
43699
43806
  }
43700
- findOverriddenOrShadowedNamedMemberInType(entity, typeMemberLookup) {
43807
+ findOverriddenOrShadowedNamedMembersInType(entity, typeMemberLookup) {
43701
43808
  return typeMemberLookup.getNamedMembersByName(new SearchName(
43702
43809
  entity.getName(),
43703
43810
  (entity.getName().flags & 2 /* OriginalName */) !== 0
43704
- )).find((m) => {
43811
+ )).filter((m) => {
43705
43812
  if (entity.kind === 1 /* Function */ && m.value.kind === "method") {
43706
43813
  return this.checkMethodOverridesOrShadowsMethod(entity, m.value);
43707
43814
  }
43708
43815
  return true;
43709
- })?.value;
43816
+ }).map((d) => d.value);
43710
43817
  }
43711
- findOverriddenOrShadowedOperatorInType(operator, typeMemberLookup) {
43712
- return typeMemberLookup.getOperatorsByKind(operator.getOperatorKind()).find((o) => this.checkOperatorOverridesOrShadowsOperator(operator, o.value))?.value;
43818
+ findOverriddenOrShadowedOperatorsInType(operator, typeMemberLookup) {
43819
+ return typeMemberLookup.getOperatorsByKind(operator.getOperatorKind()).filter((o) => this.checkOperatorOverridesOrShadowsOperator(operator, o.value)).map((d) => d.value);
43713
43820
  }
43714
- findOverriddenOrShadowedIndexerInType(indexer, typeMemberLookup) {
43715
- return typeMemberLookup.getIndexers().find((m) => this.checkIndexerOverridesOrShadowsIndexer(indexer, m.value))?.value;
43821
+ findOverriddenOrShadowedIndexersInType(indexer, typeMemberLookup) {
43822
+ return typeMemberLookup.getIndexers().filter((m) => this.checkIndexerOverridesOrShadowsIndexer(indexer, m.value)).map((d) => d.value);
43716
43823
  }
43717
- findOverriddenOrShadowedDereferenceOperatorInType(dereferenceOperator, typeMemberLookup) {
43718
- return typeMemberLookup.getDereferenceOperators().at(0)?.value;
43824
+ findOverriddenOrShadowedDereferenceOperatorsInType(dereferenceOperator, typeMemberLookup) {
43825
+ return typeMemberLookup.getDereferenceOperators().map((d) => d.value);
43719
43826
  }
43720
43827
  checkMethodOverridesOrShadowsMethod(methodFromDerivedType, methodFromBaseType) {
43721
43828
  const derivedMethodParameters = methodFromDerivedType.getValueParameters();
@@ -43847,45 +43954,64 @@ function isOverridableTypeMember(entity) {
43847
43954
  var Tags = class {
43848
43955
  constructor(_analyzer) {
43849
43956
  this._analyzer = _analyzer;
43850
- this._tags = /* @__PURE__ */ new Map();
43957
+ this._tagsByNodeWithTags = /* @__PURE__ */ new Map();
43851
43958
  }
43852
- ofTagList(tagList) {
43853
- let result = this._tags.get(tagList);
43959
+ ofNodeWithTags(node) {
43960
+ let result = this._tagsByNodeWithTags.get(node);
43854
43961
  if (result === void 0) {
43855
- result = this.createTags(tagList);
43856
- this._tags.set(tagList, result);
43962
+ result = this.createTagsOfNodeWithTags(node);
43963
+ this._tagsByNodeWithTags.set(node, result);
43857
43964
  }
43858
43965
  return result;
43859
43966
  }
43860
- createTags(tagList) {
43861
- const result = [];
43862
- for (const nodeTag of tagList.tags) {
43863
- const meaning = this._analyzer.resolveTag(nodeTag).meaning;
43864
- if (meaning.kind === "unresolved") {
43865
- continue;
43967
+ createTagsOfNodeWithTags(node) {
43968
+ const result = new Array();
43969
+ for (const tagNode of node.tagList.tags) {
43970
+ const tag = this.createTagFromNode(tagNode);
43971
+ if (tag !== void 0) {
43972
+ result.push(tag);
43866
43973
  }
43867
- const matchResult = this._analyzer.argumentToParameterMatchResult.ofTag(nodeTag);
43868
- if (matchResult === void 0) {
43869
- continue;
43974
+ }
43975
+ if (node.parent.kind === 2 /* PackageMemberDeclarationList */) {
43976
+ const parent = node.parent.parent;
43977
+ if (parent.kind === 22 /* PackageMemberGroupDeclaration */) {
43978
+ result.push(...this.ofNodeWithTags(parent));
43870
43979
  }
43871
- switch (meaning.kind) {
43872
- case "tag-type": {
43873
- if (meaning.singleSuitableConstructor !== void 0) {
43874
- const argumentsByParameters = Query.from(matchResult.parameterByArgument).toMap((e) => e[1].entity, (e) => this.argumentToTagArgument(e[0]));
43875
- result.push(new TagType(meaning.type, meaning.singleSuitableConstructor.value, argumentsByParameters));
43876
- }
43877
- break;
43980
+ } else if (node.parent.kind === 29 /* TypeMemberDeclarationList */) {
43981
+ const parent = node.parent.parent.parent;
43982
+ if (parent.kind === 42 /* TypeMemberGroupDeclaration */) {
43983
+ result.push(...this.ofNodeWithTags(parent));
43984
+ }
43985
+ }
43986
+ return result;
43987
+ }
43988
+ createTagFromNode(node) {
43989
+ const meaning = this._analyzer.resolveTag(node).meaning;
43990
+ if (meaning.kind === "unresolved") {
43991
+ return void 0;
43992
+ }
43993
+ const matchResult = this._analyzer.argumentToParameterMatchResult.ofTag(node);
43994
+ if (matchResult === void 0) {
43995
+ return void 0;
43996
+ }
43997
+ let result;
43998
+ switch (meaning.kind) {
43999
+ case "tag-type": {
44000
+ if (meaning.singleSuitableConstructor !== void 0) {
44001
+ const argumentsByParameters = Query.from(matchResult.parameterByArgument).toMap((e) => e[1].entity, (e) => this.argumentToTagArgument(e[0]));
44002
+ result = new TagType(meaning.type, meaning.singleSuitableConstructor.value, argumentsByParameters);
43878
44003
  }
43879
- case "tag-function": {
43880
- if (meaning.singleSuitableFunction !== void 0) {
43881
- const argumentsByParameters = Query.from(matchResult.parameterByArgument).toMap((e) => e[1].entity, (e) => this.argumentToTagArgument(e[0]));
43882
- result.push(new TagFunction(meaning.singleSuitableFunction.value, argumentsByParameters));
43883
- }
43884
- break;
44004
+ break;
44005
+ }
44006
+ case "tag-function": {
44007
+ if (meaning.singleSuitableFunction !== void 0) {
44008
+ const argumentsByParameters = Query.from(matchResult.parameterByArgument).toMap((e) => e[1].entity, (e) => this.argumentToTagArgument(e[0]));
44009
+ result = new TagFunction(meaning.singleSuitableFunction.value, argumentsByParameters);
43885
44010
  }
43886
- default:
43887
- Debug.never(meaning);
44011
+ break;
43888
44012
  }
44013
+ default:
44014
+ Debug.never(meaning);
43889
44015
  }
43890
44016
  return result;
43891
44017
  }
@@ -44381,7 +44507,7 @@ var OwningPlainObjectModificationCheck = class {
44381
44507
  }
44382
44508
  }
44383
44509
  }
44384
- if (child.kind === 67 /* CallExpression */) {
44510
+ if (child.kind === 68 /* CallExpression */) {
44385
44511
  const callee = unwrapParenthesizedExpressions(child.expression);
44386
44512
  switch (callee.kind) {
44387
44513
  case 86 /* IdentifierExpression */: {
@@ -44410,8 +44536,8 @@ var OwningPlainObjectModificationCheck = class {
44410
44536
  switch (child.kind) {
44411
44537
  case 15 /* AnonymousTypeSpecifier */:
44412
44538
  case 56 /* NestedFunctionDeclaration */:
44413
- case 72 /* FunctionLiteral */:
44414
- case 65 /* FunctionBlockLiteral */:
44539
+ case 65 /* FunctionLiteral */:
44540
+ case 66 /* FunctionBlockLiteral */:
44415
44541
  return;
44416
44542
  default:
44417
44543
  visitChildren(child, visitor);
@@ -46007,11 +46133,11 @@ var DiagnosticCollector = class _DiagnosticCollector {
46007
46133
  case 86 /* IdentifierExpression */:
46008
46134
  this.checkIdentifierExpression(node);
46009
46135
  break;
46010
- case 67 /* CallExpression */: {
46136
+ case 68 /* CallExpression */: {
46011
46137
  this.checkCallExpression(node);
46012
46138
  break;
46013
46139
  }
46014
- case 68 /* AutotypeCallExpression */: {
46140
+ case 69 /* AutotypeCallExpression */: {
46015
46141
  const meaning = this._analyzer.getAutotypeCallExpressionMeaning(node);
46016
46142
  if (meaning.kind === "unresolved") {
46017
46143
  this.addDiagnostics(meaning.diagnostics);
@@ -46026,7 +46152,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
46026
46152
  }
46027
46153
  break;
46028
46154
  }
46029
- case 69 /* IndexedAccessExpression */: {
46155
+ case 70 /* IndexedAccessExpression */: {
46030
46156
  this.checkIndexedAccessExpression(node);
46031
46157
  break;
46032
46158
  }
@@ -46418,7 +46544,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
46418
46544
  if (parent.kind === 63 /* AsExpression */) {
46419
46545
  parent = getParentSkippingParenthesizedExpressions(parent);
46420
46546
  }
46421
- if (!(parent.kind === 76 /* MemberAccessExpression */ || parent.kind === 69 /* IndexedAccessExpression */ || parent.kind === 78 /* DereferenceExpression */)) {
46547
+ if (!(parent.kind === 76 /* MemberAccessExpression */ || parent.kind === 70 /* IndexedAccessExpression */ || parent.kind === 78 /* DereferenceExpression */)) {
46422
46548
  this.addDiagnostic(this._analyzer.createNodeDiagnostic(
46423
46549
  247 /* BaseCannotBeUsedAsAnExpressionInItself */,
46424
46550
  node
@@ -46493,11 +46619,11 @@ var DiagnosticCollector = class _DiagnosticCollector {
46493
46619
  this.checkParameterDeclaration(node);
46494
46620
  break;
46495
46621
  }
46496
- case 72 /* FunctionLiteral */: {
46622
+ case 65 /* FunctionLiteral */: {
46497
46623
  this.checkFunctionLiteral(node);
46498
46624
  break;
46499
46625
  }
46500
- case 65 /* FunctionBlockLiteral */: {
46626
+ case 66 /* FunctionBlockLiteral */: {
46501
46627
  this.checkFunctionBlockLiteral(node);
46502
46628
  break;
46503
46629
  }
@@ -47186,10 +47312,10 @@ var DiagnosticCollector = class _DiagnosticCollector {
47186
47312
  this.checkTypeArgumentCount(0, entity.getTypeParameters(), node);
47187
47313
  }
47188
47314
  }
47189
- if (node.parent.kind === 67 /* CallExpression */) {
47315
+ if (node.parent.kind === 68 /* CallExpression */) {
47190
47316
  break;
47191
47317
  }
47192
- if (node.parent.kind === 87 /* GenericSpecializationExpression */ && node.parent.parent.kind === 67 /* CallExpression */) {
47318
+ if (node.parent.kind === 87 /* GenericSpecializationExpression */ && node.parent.parent.kind === 68 /* CallExpression */) {
47193
47319
  break;
47194
47320
  }
47195
47321
  if (node.parent.kind === 76 /* MemberAccessExpression */) {
@@ -47427,7 +47553,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
47427
47553
  case 76 /* MemberAccessExpression */:
47428
47554
  this.checkAssignmentToMemberAccessExpression(node.left, node);
47429
47555
  break;
47430
- case 69 /* IndexedAccessExpression */:
47556
+ case 70 /* IndexedAccessExpression */:
47431
47557
  this.checkAssignmentToIndexedAccessExpression(node.left);
47432
47558
  break;
47433
47559
  case 84 /* ObjectExpression */:
@@ -47784,7 +47910,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
47784
47910
  case 50 /* MethodDeclaration */:
47785
47911
  case 51 /* OperatorDeclaration */:
47786
47912
  case 56 /* NestedFunctionDeclaration */:
47787
- case 72 /* FunctionLiteral */:
47913
+ case 65 /* FunctionLiteral */:
47788
47914
  parentHasBody = parent.block !== void 0;
47789
47915
  break;
47790
47916
  case 27 /* FunctionTypeDeclarationBody */:
@@ -48302,7 +48428,7 @@ var PackageAliasTypeDeclarationEntity = class {
48302
48428
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
48303
48429
  }
48304
48430
  getTags() {
48305
- return this._analyzer.tags.ofTagList(this._node.tagList);
48431
+ return this._analyzer.tags.ofNodeWithTags(this._node);
48306
48432
  }
48307
48433
  getSubstitutionApplicationMode() {
48308
48434
  return 0 /* SubstituteOwnSubstitutions */;
@@ -48368,7 +48494,7 @@ var ConstructorDeclarationEntity = class {
48368
48494
  return (this.modifierFlags & 64 /* Abstract */) !== 0;
48369
48495
  }
48370
48496
  getTags() {
48371
- return this._analyzer.tags.ofTagList(this._node.tagList);
48497
+ return this._analyzer.tags.ofNodeWithTags(this._node);
48372
48498
  }
48373
48499
  };
48374
48500
  ConstructorDeclarationEntity = __decorateClass([
@@ -48636,7 +48762,7 @@ var DestructorDeclarationEntity = class {
48636
48762
  return (this.modifierFlags & 64 /* Abstract */) !== 0;
48637
48763
  }
48638
48764
  getTags() {
48639
- return this._analyzer.tags.ofTagList(this._node.tagList);
48765
+ return this._analyzer.tags.ofNodeWithTags(this._node);
48640
48766
  }
48641
48767
  };
48642
48768
  DestructorDeclarationEntity = __decorateClass([
@@ -48737,7 +48863,7 @@ var PackageFunctionDeclarationEntity = class {
48737
48863
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
48738
48864
  }
48739
48865
  getTags() {
48740
- return this._analyzer.tags.ofTagList(this._node.tagList);
48866
+ return this._analyzer.tags.ofNodeWithTags(this._node);
48741
48867
  }
48742
48868
  getTypeParametersArity() {
48743
48869
  return this.getTypeParameters().length;
@@ -48794,7 +48920,7 @@ var MethodDeclarationEntity = class {
48794
48920
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
48795
48921
  }
48796
48922
  getTags() {
48797
- return this._analyzer.tags.ofTagList(this._node.tagList);
48923
+ return this._analyzer.tags.ofNodeWithTags(this._node);
48798
48924
  }
48799
48925
  getTypeParametersArity() {
48800
48926
  return this.getTypeParameters().length;
@@ -49077,7 +49203,7 @@ var PackageFunctionTypeDeclarationEntity = class {
49077
49203
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
49078
49204
  }
49079
49205
  getTags() {
49080
- return this._analyzer.tags.ofTagList(this._node.tagList);
49206
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49081
49207
  }
49082
49208
  getSubstitutionApplicationMode() {
49083
49209
  return 0 /* SubstituteOwnSubstitutions */;
@@ -49376,7 +49502,7 @@ var PackageVariableGetterDeclarationEntity = class {
49376
49502
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
49377
49503
  }
49378
49504
  getTags() {
49379
- return this._analyzer.tags.ofTagList(this._node.tagList);
49505
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49380
49506
  }
49381
49507
  };
49382
49508
  PackageVariableGetterDeclarationEntity = __decorateClass([
@@ -49411,7 +49537,7 @@ var FieldGetterDeclarationEntity = class {
49411
49537
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
49412
49538
  }
49413
49539
  getTags() {
49414
- return this._analyzer.tags.ofTagList(this._node.tagList);
49540
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49415
49541
  }
49416
49542
  };
49417
49543
  FieldGetterDeclarationEntity = __decorateClass([
@@ -49446,7 +49572,7 @@ var IndexedElementGetterDeclarationEntity = class {
49446
49572
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
49447
49573
  }
49448
49574
  getTags() {
49449
- return this._analyzer.tags.ofTagList(this._node.tagList);
49575
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49450
49576
  }
49451
49577
  };
49452
49578
  IndexedElementGetterDeclarationEntity = __decorateClass([
@@ -49481,7 +49607,7 @@ var DereferencedVariableGetterDeclarationEntity = class {
49481
49607
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
49482
49608
  }
49483
49609
  getTags() {
49484
- return this._analyzer.tags.ofTagList(this._node.tagList);
49610
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49485
49611
  }
49486
49612
  };
49487
49613
  DereferencedVariableGetterDeclarationEntity = __decorateClass([
@@ -49691,7 +49817,7 @@ var OperatorDeclarationEntity = class {
49691
49817
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
49692
49818
  }
49693
49819
  getTags() {
49694
- return this._analyzer.tags.ofTagList(this._node.tagList);
49820
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49695
49821
  }
49696
49822
  getOverriddenMembers() {
49697
49823
  return this._analyzer.overriddenMember.getOverriddenAndShadowedOperators(this._node).overriddenMembers;
@@ -49906,7 +50032,7 @@ var PackageVariableSetterDeclarationEntity = class {
49906
50032
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
49907
50033
  }
49908
50034
  getTags() {
49909
- return this._analyzer.tags.ofTagList(this._node.tagList);
50035
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49910
50036
  }
49911
50037
  };
49912
50038
  PackageVariableSetterDeclarationEntity = __decorateClass([
@@ -49938,7 +50064,7 @@ var FieldSetterDeclarationEntity = class {
49938
50064
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
49939
50065
  }
49940
50066
  getTags() {
49941
- return this._analyzer.tags.ofTagList(this._node.tagList);
50067
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49942
50068
  }
49943
50069
  };
49944
50070
  FieldSetterDeclarationEntity = __decorateClass([
@@ -49970,7 +50096,7 @@ var IndexedElementSetterDeclarationEntity = class {
49970
50096
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
49971
50097
  }
49972
50098
  getTags() {
49973
- return this._analyzer.tags.ofTagList(this._node.tagList);
50099
+ return this._analyzer.tags.ofNodeWithTags(this._node);
49974
50100
  }
49975
50101
  };
49976
50102
  IndexedElementSetterDeclarationEntity = __decorateClass([
@@ -50002,7 +50128,7 @@ var DereferencedVariableSetterDeclarationEntity = class {
50002
50128
  return this._analyzer.createTypeMemberHiding(this._node, this.modifierFlags);
50003
50129
  }
50004
50130
  getTags() {
50005
- return this._analyzer.tags.ofTagList(this._node.tagList);
50131
+ return this._analyzer.tags.ofNodeWithTags(this._node);
50006
50132
  }
50007
50133
  };
50008
50134
  DereferencedVariableSetterDeclarationEntity = __decorateClass([
@@ -50321,7 +50447,7 @@ var SourcePackageStructuredTypeDeclarationData = class {
50321
50447
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
50322
50448
  }
50323
50449
  getTags() {
50324
- return this._analyzer.tags.ofTagList(this._node.tagList);
50450
+ return this._analyzer.tags.ofNodeWithTags(this._node);
50325
50451
  }
50326
50452
  getSubstitutionApplicationMode() {
50327
50453
  return 0 /* SubstituteOwnSubstitutions */;
@@ -50794,7 +50920,7 @@ var SourceTypeExtensionEntity = class {
50794
50920
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
50795
50921
  }
50796
50922
  getTags() {
50797
- return this._analyzer.tags.ofTagList(this._node.tagList);
50923
+ return this._analyzer.tags.ofNodeWithTags(this._node);
50798
50924
  }
50799
50925
  };
50800
50926
  SourceTypeExtensionEntity = __decorateClass([
@@ -51179,7 +51305,7 @@ var PackageVariantTypeDeclarationEntity = class {
51179
51305
  return this._analyzer.createPackageMemberHiding(this._node, this.modifierFlags);
51180
51306
  }
51181
51307
  getTags() {
51182
- return this._analyzer.tags.ofTagList(this._node.tagList);
51308
+ return this._analyzer.tags.ofNodeWithTags(this._node);
51183
51309
  }
51184
51310
  getSubstitutionApplicationMode() {
51185
51311
  return 0 /* SubstituteOwnSubstitutions */;
@@ -61055,26 +61181,26 @@ var IrBuilder = class {
61055
61181
  case 64 /* BinaryExpression */:
61056
61182
  result = this.buildBinaryExpression(expression);
61057
61183
  break;
61058
- case 65 /* FunctionBlockLiteral */:
61184
+ case 66 /* FunctionBlockLiteral */:
61059
61185
  result = this.buildFunctionBlockLiteral(expression);
61060
61186
  break;
61061
- case 67 /* CallExpression */:
61187
+ case 68 /* CallExpression */:
61062
61188
  result = this.buildCallExpression(expression);
61063
61189
  break;
61064
- case 68 /* AutotypeCallExpression */:
61190
+ case 69 /* AutotypeCallExpression */:
61065
61191
  result = this.buildAutotypeCallExpression(expression);
61066
61192
  break;
61067
- case 69 /* IndexedAccessExpression */:
61193
+ case 70 /* IndexedAccessExpression */:
61068
61194
  result = this.buildIndexedAccessExpression(expression);
61069
61195
  break;
61070
- case 70 /* InvalidExpression */:
61196
+ case 71 /* InvalidExpression */:
61071
61197
  Logger.errorAtNode("Unexpected invalid expression.", expression);
61072
61198
  result = new TextLiteral("Unexpected invalid expression.", void 0);
61073
61199
  break;
61074
- case 71 /* IsExpression */:
61200
+ case 72 /* IsExpression */:
61075
61201
  result = this.buildIsExpression(expression);
61076
61202
  break;
61077
- case 72 /* FunctionLiteral */:
61203
+ case 65 /* FunctionLiteral */:
61078
61204
  result = this.buildFunctionLiteral(expression);
61079
61205
  break;
61080
61206
  case 73 /* ParenthesizedExpression */:
@@ -61180,12 +61306,12 @@ var IrBuilder = class {
61180
61306
  case 62 /* AssumptionExpression */:
61181
61307
  case 63 /* AsExpression */:
61182
61308
  case 64 /* BinaryExpression */:
61183
- case 65 /* FunctionBlockLiteral */:
61184
- case 67 /* CallExpression */:
61185
- case 68 /* AutotypeCallExpression */:
61186
- case 69 /* IndexedAccessExpression */:
61187
- case 71 /* IsExpression */:
61188
- case 72 /* FunctionLiteral */:
61309
+ case 66 /* FunctionBlockLiteral */:
61310
+ case 68 /* CallExpression */:
61311
+ case 69 /* AutotypeCallExpression */:
61312
+ case 70 /* IndexedAccessExpression */:
61313
+ case 72 /* IsExpression */:
61314
+ case 65 /* FunctionLiteral */:
61189
61315
  case 74 /* ConditionalExpression */:
61190
61316
  case 75 /* PrefixUnaryExpression */:
61191
61317
  case 76 /* MemberAccessExpression */:
@@ -61199,7 +61325,7 @@ var IrBuilder = class {
61199
61325
  case 83 /* KeywordExpression */:
61200
61326
  return true;
61201
61327
  case 88 /* DefaultMatchExpression */:
61202
- case 70 /* InvalidExpression */:
61328
+ case 71 /* InvalidExpression */:
61203
61329
  case 73 /* ParenthesizedExpression */:
61204
61330
  case 85 /* BaseExpression */:
61205
61331
  return false;
@@ -62188,7 +62314,7 @@ var IrBuilder = class {
62188
62314
  if (parent.kind === 87 /* GenericSpecializationExpression */) {
62189
62315
  parent = getParentSkippingParenthesizedExpressions(parent);
62190
62316
  }
62191
- return parent.kind === 67 /* CallExpression */;
62317
+ return parent.kind === 68 /* CallExpression */;
62192
62318
  }
62193
62319
  generateLoopLabel() {
62194
62320
  return `lb${this._id++}`;
@@ -64843,7 +64969,9 @@ export {
64843
64969
  PackageConfigurationEn_exports,
64844
64970
  ProgramPackage,
64845
64971
  TranslationPackage,
64972
+ TextTranslationPackage,
64846
64973
  TranslationPackageConfiguration,
64974
+ TextTranslationPackageConfiguration,
64847
64975
  ProgramPackageConfiguration,
64848
64976
  PackageName3 as PackageName2,
64849
64977
  RequiredPackageConfig,