@effect/language-service 0.47.3 → 0.49.0

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/language-service",
3
- "version": "0.47.3",
3
+ "version": "0.49.0",
4
4
  "description": "A Language-Service Plugin to Refactor and Diagnostic effect-ts projects",
5
5
  "main": "index.cjs",
6
6
  "bin": {
package/transform.js CHANGED
@@ -24,7 +24,7 @@ __export(transform_exports, {
24
24
  });
25
25
  module.exports = __toCommonJS(transform_exports);
26
26
 
27
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Function.js
27
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Function.js
28
28
  var isFunction = (input) => typeof input === "function";
29
29
  var dual = function(arity, body) {
30
30
  if (typeof arity === "function") {
@@ -118,7 +118,7 @@ function pipe(a, ab, bc, cd, de, ef, fg, gh, hi) {
118
118
  }
119
119
  }
120
120
 
121
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/GlobalValue.js
121
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/GlobalValue.js
122
122
  var globalStoreId = `effect/GlobalValue`;
123
123
  var globalStore;
124
124
  var globalValue = (id, compute) => {
@@ -132,7 +132,7 @@ var globalValue = (id, compute) => {
132
132
  return globalStore.get(id);
133
133
  };
134
134
 
135
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Predicate.js
135
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Predicate.js
136
136
  var isString = (input) => typeof input === "string";
137
137
  var isNumber = (input) => typeof input === "number";
138
138
  var isBoolean = (input) => typeof input === "boolean";
@@ -142,7 +142,7 @@ var isObject = (input) => isRecordOrArray(input) || isFunction2(input);
142
142
  var hasProperty = /* @__PURE__ */ dual(2, (self, property) => isObject(self) && property in self);
143
143
  var isRecord = (input) => isRecordOrArray(input) && !Array.isArray(input);
144
144
 
145
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Utils.js
145
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Utils.js
146
146
  var GenKindTypeId = /* @__PURE__ */ Symbol.for("effect/Gen/GenKind");
147
147
  var GenKindImpl = class {
148
148
  value;
@@ -264,7 +264,7 @@ var internalCall = isNotOptimizedAway ? standard.effect_internal_function : forc
264
264
  var genConstructor = function* () {
265
265
  }.constructor;
266
266
 
267
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Hash.js
267
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Hash.js
268
268
  var randomHashCache = /* @__PURE__ */ globalValue(/* @__PURE__ */ Symbol.for("effect/Hash/randomHashCache"), () => /* @__PURE__ */ new WeakMap());
269
269
  var symbol = /* @__PURE__ */ Symbol.for("effect/Hash");
270
270
  var hash = (self) => {
@@ -363,7 +363,7 @@ var cached = function() {
363
363
  return hash2;
364
364
  };
365
365
 
366
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Equal.js
366
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Equal.js
367
367
  var symbol2 = /* @__PURE__ */ Symbol.for("effect/Equal");
368
368
  function equals() {
369
369
  if (arguments.length === 1) {
@@ -417,7 +417,7 @@ function compareBoth(self, that) {
417
417
  var isEqual = (u) => hasProperty(u, symbol2);
418
418
  var equivalence = () => equals;
419
419
 
420
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Inspectable.js
420
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Inspectable.js
421
421
  var NodeInspectSymbol = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom");
422
422
  var toJSON = (x) => {
423
423
  try {
@@ -469,7 +469,7 @@ var redact = (u) => {
469
469
  return u;
470
470
  };
471
471
 
472
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Pipeable.js
472
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Pipeable.js
473
473
  var pipeArguments = (self, args2) => {
474
474
  switch (args2.length) {
475
475
  case 0:
@@ -502,14 +502,14 @@ var pipeArguments = (self, args2) => {
502
502
  }
503
503
  };
504
504
 
505
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/internal/opCodes/effect.js
505
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/internal/opCodes/effect.js
506
506
  var OP_COMMIT = "Commit";
507
507
 
508
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/internal/version.js
508
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/internal/version.js
509
509
  var moduleVersion = "3.18.4";
510
510
  var getCurrentVersion = () => moduleVersion;
511
511
 
512
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/internal/effectable.js
512
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/internal/effectable.js
513
513
  var EffectTypeId = /* @__PURE__ */ Symbol.for("effect/Effect");
514
514
  var StreamTypeId = /* @__PURE__ */ Symbol.for("effect/Stream");
515
515
  var SinkTypeId = /* @__PURE__ */ Symbol.for("effect/Sink");
@@ -596,7 +596,7 @@ var StructuralCommitPrototype = {
596
596
  ...StructuralPrototype
597
597
  };
598
598
 
599
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/internal/option.js
599
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/internal/option.js
600
600
  var TypeId = /* @__PURE__ */ Symbol.for("effect/Option");
601
601
  var CommonProto = {
602
602
  ...EffectPrototype,
@@ -654,7 +654,7 @@ var some = (value) => {
654
654
  return a;
655
655
  };
656
656
 
657
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/internal/either.js
657
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/internal/either.js
658
658
  var TypeId2 = /* @__PURE__ */ Symbol.for("effect/Either");
659
659
  var CommonProto2 = {
660
660
  ...EffectPrototype,
@@ -716,7 +716,7 @@ var right = (right3) => {
716
716
  return a;
717
717
  };
718
718
 
719
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Either.js
719
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Either.js
720
720
  var right2 = right;
721
721
  var left2 = left;
722
722
  var isLeft2 = isLeft;
@@ -724,14 +724,14 @@ var isRight2 = isRight;
724
724
  var map = /* @__PURE__ */ dual(2, (self, f) => isRight2(self) ? right2(f(self.right)) : left2(self.left));
725
725
  var getOrElse = /* @__PURE__ */ dual(2, (self, onLeft) => isLeft2(self) ? onLeft(self.left) : self.right);
726
726
 
727
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/internal/array.js
727
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/internal/array.js
728
728
  var isNonEmptyArray = (self) => self.length > 0;
729
729
 
730
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Order.js
730
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Order.js
731
731
  var make = (compare) => (self, that) => self === that ? 0 : compare(self, that);
732
732
  var string2 = /* @__PURE__ */ make((self, that) => self < that ? -1 : 1);
733
733
 
734
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Option.js
734
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Option.js
735
735
  var none2 = () => none;
736
736
  var some2 = some;
737
737
  var isNone2 = isNone;
@@ -739,7 +739,7 @@ var isSome2 = isSome;
739
739
  var orElse = /* @__PURE__ */ dual(2, (self, that) => isNone2(self) ? that() : self);
740
740
  var fromNullable = (nullableValue) => nullableValue == null ? none2() : some2(nullableValue);
741
741
 
742
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Record.js
742
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Record.js
743
743
  var map2 = /* @__PURE__ */ dual(2, (self, f) => {
744
744
  const out = {
745
745
  ...self
@@ -751,7 +751,7 @@ var map2 = /* @__PURE__ */ dual(2, (self, f) => {
751
751
  });
752
752
  var keys = (self) => Object.keys(self);
753
753
 
754
- // node_modules/.pnpm/effect@3.18.4/node_modules/effect/dist/esm/Array.js
754
+ // node_modules/.pnpm/@pkg.pr.new+Effect-TS+effect@97ff1dc_6ntygjheib5kdugabxjhox4fte/node_modules/effect/dist/esm/Array.js
755
755
  var fromIterable = (collection) => Array.isArray(collection) ? collection : Array.from(collection);
756
756
  var append = /* @__PURE__ */ dual(2, (self, last) => [...self, last]);
757
757
  var appendAll = /* @__PURE__ */ dual(2, (self, that) => fromIterable(self).concat(fromIterable(that)));
@@ -1210,7 +1210,7 @@ function parseKeyPatterns(patterns) {
1210
1210
  if (!isObject(entry)) continue;
1211
1211
  result.push({
1212
1212
  target: hasProperty(entry, "target") && isString(entry.target) && ["service", "error", "custom"].includes(entry.target.toLowerCase()) ? entry.target.toLowerCase() : "service",
1213
- pattern: hasProperty(entry, "pattern") && isString(entry.pattern) && ["package-identifier", "default"].includes(entry.pattern.toLowerCase()) ? entry.pattern.toLowerCase() : "default",
1213
+ pattern: hasProperty(entry, "pattern") && isString(entry.pattern) && ["package-identifier", "default", "default-hashed"].includes(entry.pattern.toLowerCase()) ? entry.pattern.toLowerCase() : "default",
1214
1214
  skipLeadingPath: hasProperty(entry, "skipLeadingPath") && isArray(entry.skipLeadingPath) && entry.skipLeadingPath.every(isString) ? entry.skipLeadingPath : ["src/"]
1215
1215
  });
1216
1216
  }
@@ -2361,17 +2361,21 @@ function makeTypeCheckerUtils(ts, typeChecker, tsUtils) {
2361
2361
  return result;
2362
2362
  };
2363
2363
  function typeToSimplifiedTypeNode(type, enclosingNode, flags) {
2364
+ return typeToSimplifiedTypeNodeWorker(type, enclosingNode, flags, 0);
2365
+ }
2366
+ function typeToSimplifiedTypeNodeWorker(type, enclosingNode, flags, depth) {
2364
2367
  const fallbackStandard = () => {
2365
2368
  const typeNode = typeChecker.typeToTypeNode(type, enclosingNode, flags);
2366
2369
  if (!typeNode) return void 0;
2367
2370
  return tsUtils.simplifyTypeNode(typeNode);
2368
2371
  };
2372
+ if (depth > 20) return fallbackStandard();
2369
2373
  const members = unrollUnionMembers(type);
2370
- if (members.length > 1) {
2374
+ if (members.length > 1 && !(type.flags & ts.TypeFlags.Boolean)) {
2371
2375
  const typeNodes = [];
2372
2376
  members.sort(deterministicTypeOrder);
2373
2377
  for (const member of members) {
2374
- const memberNode = typeToSimplifiedTypeNode(member, enclosingNode, flags);
2378
+ const memberNode = typeToSimplifiedTypeNodeWorker(member, enclosingNode, flags, depth + 1);
2375
2379
  if (!memberNode) return fallbackStandard();
2376
2380
  typeNodes.push(memberNode);
2377
2381
  }
@@ -2381,7 +2385,7 @@ function makeTypeCheckerUtils(ts, typeChecker, tsUtils) {
2381
2385
  const intersectionType = type;
2382
2386
  const typeNodes = [];
2383
2387
  for (const member of intersectionType.types) {
2384
- const memberNode = typeToSimplifiedTypeNode(member, enclosingNode, flags);
2388
+ const memberNode = typeToSimplifiedTypeNodeWorker(member, enclosingNode, flags, depth + 1);
2385
2389
  if (!memberNode) return fallbackStandard();
2386
2390
  typeNodes.push(memberNode);
2387
2391
  }
@@ -2417,7 +2421,7 @@ function makeTypeCheckerUtils(ts, typeChecker, tsUtils) {
2417
2421
  if (signatures.length !== 1) return standard2;
2418
2422
  const returnType = typeChecker.getReturnTypeOfSignature(signatures[0]);
2419
2423
  if (!returnType) return standard2;
2420
- const returnTypeNode = typeToSimplifiedTypeNode(returnType, enclosingNode, flags);
2424
+ const returnTypeNode = typeToSimplifiedTypeNodeWorker(returnType, enclosingNode, flags, depth + 1);
2421
2425
  if (!returnTypeNode) return standard2;
2422
2426
  return tsUtils.simplifyTypeNode(ts.factory.updateFunctionTypeNode(
2423
2427
  standard2,
@@ -3616,7 +3620,8 @@ var makeKeyBuilder = fn("KeyBuilder")(
3616
3620
  parts = parts.map((part) => part.startsWith("/") ? part.slice(1) : part).map(
3617
3621
  (part) => part.endsWith("/") ? part.slice(0, -1) : part
3618
3622
  );
3619
- return parts.filter((_) => String(_).trim().length > 0).join("/");
3623
+ const fullKey = parts.filter((_) => String(_).trim().length > 0).join("/");
3624
+ return keyPattern.pattern === "default-hashed" ? cyrb53(fullKey) : fullKey;
3620
3625
  }
3621
3626
  }
3622
3627
  return {
@@ -5562,7 +5567,7 @@ var tryCatchInEffectGen = createDiagnostic({
5562
5567
  while (nodeToVisit.length > 0) {
5563
5568
  const node = nodeToVisit.shift();
5564
5569
  ts.forEachChild(node, appendNodeToVisit);
5565
- if (ts.isTryStatement(node)) {
5570
+ if (ts.isTryStatement(node) && node.catchClause) {
5566
5571
  const generatorOrRegularFunction = ts.findAncestor(
5567
5572
  node,
5568
5573
  (_) => ts.isFunctionExpression(_) || ts.isFunctionDeclaration(_) || ts.isMethodDeclaration(_) || ts.isArrowFunction(_) || ts.isGetAccessor(_) || ts.isFunctionLike(_)