effect 3.18.3 → 3.18.5

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/dist/cjs/Graph.js CHANGED
@@ -1225,6 +1225,10 @@ const edgeCount = graph => graph.edges.size;
1225
1225
  */
1226
1226
  exports.edgeCount = edgeCount;
1227
1227
  const neighbors = (graph, nodeIndex) => {
1228
+ // For undirected graphs, use the specialized helper that returns the other endpoint
1229
+ if (graph.type === "undirected") {
1230
+ return getUndirectedNeighbors(graph, nodeIndex);
1231
+ }
1228
1232
  const adjacencyList = getMapSafe(graph.adjacency, nodeIndex);
1229
1233
  if (Option.isNone(adjacencyList)) {
1230
1234
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.js","names":["Data","_interopRequireWildcard","require","Equal","_Function","Hash","_Inspectable","Option","_Pipeable","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","getMapSafe","map","key","some","none","TypeId","exports","Edge","Class","ProtoGraph","Symbol","iterator","nodes","NodeInspectSymbol","toJSON","symbol","that","isGraph","size","edges","type","nodeIndex","nodeData","otherNodeData","equals","edgeIndex","edgeData","otherEdge","hash","string","number","_id","nodeCount","edgeCount","toString","format","pipe","pipeArguments","arguments","u","directed","mutate","graph","create","Map","adjacency","reverseAdjacency","nextNodeIndex","nextEdgeIndex","isAcyclic","mutable","beginMutation","endMutation","undirected","dual","addNode","data","getNode","hasNode","findNode","predicate","index","findNodes","results","push","findEdge","source","target","findEdges","updateNode","currentData","newData","updateEdge","currentEdge","mapNodes","mapEdges","reverse","clear","sourceEdges","targetEdges","filterMapNodes","nodesToRemove","result","isSome","value","removeNode","filterMapEdges","edgesToRemove","removeEdge","filterNodes","filterEdges","invalidateCycleFlagOnRemoval","invalidateCycleFlagOnAddition","addEdge","Error","sourceAdjacency","targetReverseAdjacency","targetAdjacency","sourceReverseAdjacency","outgoingEdges","edge","incomingEdges","removeEdgeInternal","delete","wasRemoved","isNone","indexOf","splice","getEdge","hasEdge","adjacencyList","neighbors","neighborsDirected","direction","adjacencyMap","neighborNode","toGraphViz","options","edgeLabel","String","graphName","nodeLabel","isDirected","graphType","edgeOperator","lines","label","replace","join","visited","Set","recursionStack","startNode","keys","stack","length","node","neighborIndex","isFirstVisit","pop","add","nodeNeighbors","Array","from","neighbor","isBipartite","coloring","discovered","isBipartiteGraph","queue","current","shift","currentColor","neighborColor","getUndirectedNeighbors","otherNode","connectedComponents","components","component","stronglyConnectedComponents","finishOrder","nodeNeighborsList","sccs","scc","predecessor","dijkstra","edgeWeight","path","distance","edgeWeights","distances","previous","Infinity","priorityQueue","minIndex","currentNode","currentDistance","weight","newDistance","neighborDistance","targetDistance","unshift","prev","floydWarshall","allNodes","dist","next","edgeMatrix","j","currentWeight","k","distIK","distKJ","distIJ","paths","resultEdgeWeights","weights","nextNode","astar","heuristic","targetNodeData","gScore","fScore","sourceNodeData","h","openSet","currentGScore","tentativeGScore","neighborGScore","neighborNodeData","targetGScore","bellmanFord","hasUpdate","sourceDistance","affectedNodes","Walker","visit","constructor","indices","walker","_","values","entries","dfs","config","startNodes","nextMapped","nodeDataOption","done","undefined","bfs","topo","initials","inDegree","remaining","currentInDegree","degree","newInDegree","dfsPostOrder","finished","visitedChildren","nodeToEmit","nodeMap","edgeMap","externals","nodeIterator"],"sources":["../../src/Graph.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Graph.js","names":["Data","_interopRequireWildcard","require","Equal","_Function","Hash","_Inspectable","Option","_Pipeable","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","getMapSafe","map","key","some","none","TypeId","exports","Edge","Class","ProtoGraph","Symbol","iterator","nodes","NodeInspectSymbol","toJSON","symbol","that","isGraph","size","edges","type","nodeIndex","nodeData","otherNodeData","equals","edgeIndex","edgeData","otherEdge","hash","string","number","_id","nodeCount","edgeCount","toString","format","pipe","pipeArguments","arguments","u","directed","mutate","graph","create","Map","adjacency","reverseAdjacency","nextNodeIndex","nextEdgeIndex","isAcyclic","mutable","beginMutation","endMutation","undirected","dual","addNode","data","getNode","hasNode","findNode","predicate","index","findNodes","results","push","findEdge","source","target","findEdges","updateNode","currentData","newData","updateEdge","currentEdge","mapNodes","mapEdges","reverse","clear","sourceEdges","targetEdges","filterMapNodes","nodesToRemove","result","isSome","value","removeNode","filterMapEdges","edgesToRemove","removeEdge","filterNodes","filterEdges","invalidateCycleFlagOnRemoval","invalidateCycleFlagOnAddition","addEdge","Error","sourceAdjacency","targetReverseAdjacency","targetAdjacency","sourceReverseAdjacency","outgoingEdges","edge","incomingEdges","removeEdgeInternal","delete","wasRemoved","isNone","indexOf","splice","getEdge","hasEdge","adjacencyList","neighbors","getUndirectedNeighbors","neighborsDirected","direction","adjacencyMap","neighborNode","toGraphViz","options","edgeLabel","String","graphName","nodeLabel","isDirected","graphType","edgeOperator","lines","label","replace","join","visited","Set","recursionStack","startNode","keys","stack","length","node","neighborIndex","isFirstVisit","pop","add","nodeNeighbors","Array","from","neighbor","isBipartite","coloring","discovered","isBipartiteGraph","queue","current","shift","currentColor","neighborColor","otherNode","connectedComponents","components","component","stronglyConnectedComponents","finishOrder","nodeNeighborsList","sccs","scc","predecessor","dijkstra","edgeWeight","path","distance","edgeWeights","distances","previous","Infinity","priorityQueue","minIndex","currentNode","currentDistance","weight","newDistance","neighborDistance","targetDistance","unshift","prev","floydWarshall","allNodes","dist","next","edgeMatrix","j","currentWeight","k","distIK","distKJ","distIJ","paths","resultEdgeWeights","weights","nextNode","astar","heuristic","targetNodeData","gScore","fScore","sourceNodeData","h","openSet","currentGScore","tentativeGScore","neighborGScore","neighborNodeData","targetGScore","bellmanFord","hasUpdate","sourceDistance","affectedNodes","Walker","visit","constructor","indices","walker","_","values","entries","dfs","config","startNodes","nextMapped","nodeDataOption","done","undefined","bfs","topo","initials","inDegree","remaining","currentInDegree","degree","newInDegree","dfsPostOrder","finished","visitedChildren","nodeToEmit","nodeMap","edgeMap","externals","nodeIterator"],"sources":["../../src/Graph.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.make = exports.fromAST = void 0;
6
+ exports.fromAST = void 0;
7
+ exports.getMetaSchemaUri = getMetaSchemaUri;
8
+ exports.make = void 0;
7
9
  var Arr = _interopRequireWildcard(require("./Array.js"));
8
10
  var errors_ = _interopRequireWildcard(require("./internal/schema/errors.js"));
9
11
  var schemaId_ = _interopRequireWildcard(require("./internal/schema/schemaId.js"));
@@ -30,7 +32,7 @@ const make = schema => {
30
32
  definitions
31
33
  });
32
34
  const out = {
33
- $schema,
35
+ $schema: getMetaSchemaUri("jsonSchema7"),
34
36
  $defs: {},
35
37
  ...jsonSchema
36
38
  };
@@ -41,6 +43,19 @@ const make = schema => {
41
43
  }
42
44
  return out;
43
45
  };
46
+ /** @internal */
47
+ exports.make = make;
48
+ function getMetaSchemaUri(target) {
49
+ switch (target) {
50
+ case "jsonSchema7":
51
+ return "http://json-schema.org/draft-07/schema#";
52
+ case "jsonSchema2019-09":
53
+ return "https://json-schema.org/draft/2019-09/schema";
54
+ case "jsonSchema2020-12":
55
+ case "openApi3.1":
56
+ return "https://json-schema.org/draft/2020-12/schema";
57
+ }
58
+ }
44
59
  /**
45
60
  * Returns a JSON Schema with additional options and definitions.
46
61
  *
@@ -69,7 +84,6 @@ const make = schema => {
69
84
  * @since 3.11.5
70
85
  * @experimental
71
86
  */
72
- exports.make = make;
73
87
  const fromAST = (ast, options) => {
74
88
  const definitionPath = options.definitionPath ?? "#/$defs/";
75
89
  const getRef = id => definitionPath + id;
@@ -113,7 +127,6 @@ const constEmptyStruct = {
113
127
  "type": "array"
114
128
  }]
115
129
  };
116
- const $schema = "http://json-schema.org/draft-07/schema#";
117
130
  function getRawDescription(annotated) {
118
131
  if (annotated !== undefined) return Option.getOrUndefined(AST.getDescriptionAnnotation(annotated));
119
132
  }
@@ -124,6 +137,10 @@ function getRawDefault(annotated) {
124
137
  if (annotated !== undefined) return AST.getDefaultAnnotation(annotated);
125
138
  return Option.none();
126
139
  }
140
+ function encodeDefault(ast, def) {
141
+ const getOption = ParseResult.getOption(ast, false);
142
+ return getOption(def);
143
+ }
127
144
  function getRawExamples(annotated) {
128
145
  if (annotated !== undefined) return Option.getOrUndefined(AST.getExamplesAnnotation(annotated));
129
146
  }
@@ -149,7 +166,12 @@ function pruneJsonSchemaAnnotations(ast, description, title, def, examples) {
149
166
  const out = {};
150
167
  if (description !== undefined) out.description = description;
151
168
  if (title !== undefined) out.title = title;
152
- if (Option.isSome(def)) out.default = def.value;
169
+ if (Option.isSome(def)) {
170
+ const o = encodeDefault(ast, def.value);
171
+ if (Option.isSome(o)) {
172
+ out.default = o.value;
173
+ }
174
+ }
153
175
  if (examples !== undefined) {
154
176
  const encodedExamples = encodeExamples(ast, examples);
155
177
  if (encodedExamples !== undefined) {
@@ -232,6 +254,7 @@ function isContentSchemaSupported(options) {
232
254
  case "jsonSchema7":
233
255
  return false;
234
256
  case "jsonSchema2019-09":
257
+ case "jsonSchema2020-12":
235
258
  case "openApi3.1":
236
259
  return true;
237
260
  }
@@ -424,7 +447,11 @@ function go(ast, $defs, identifier, path, options, annotation, errors) {
424
447
  const len = ast.elements.length;
425
448
  if (len > 0) {
426
449
  output.minItems = len - ast.elements.filter(element => element.isOptional).length;
427
- output.items = elements;
450
+ if (options.target === "jsonSchema7") {
451
+ output.items = elements;
452
+ } else {
453
+ output.prefixItems = elements;
454
+ }
428
455
  }
429
456
  // ---------------------------------------------
430
457
  // handle rest element
@@ -434,9 +461,18 @@ function go(ast, $defs, identifier, path, options, annotation, errors) {
434
461
  const head = rest[0];
435
462
  const isHomogeneous = restLength === 1 && ast.elements.every(e => e.type === ast.rest[0].type);
436
463
  if (isHomogeneous) {
437
- output.items = head;
464
+ if (options.target === "jsonSchema7") {
465
+ output.items = head;
466
+ } else {
467
+ output.items = head;
468
+ delete output.prefixItems;
469
+ }
438
470
  } else {
439
- output.additionalItems = head;
471
+ if (options.target === "jsonSchema7") {
472
+ output.additionalItems = head;
473
+ } else {
474
+ output.items = head;
475
+ }
440
476
  }
441
477
  // ---------------------------------------------
442
478
  // handle post rest elements
@@ -447,7 +483,11 @@ function go(ast, $defs, identifier, path, options, annotation, errors) {
447
483
  }
448
484
  } else {
449
485
  if (len > 0) {
450
- output.additionalItems = false;
486
+ if (options.target === "jsonSchema7") {
487
+ output.additionalItems = false;
488
+ } else {
489
+ output.items = false;
490
+ }
451
491
  } else {
452
492
  output.maxItems = 0;
453
493
  }
@@ -1 +1 @@
1
- {"version":3,"file":"JSONSchema.js","names":["Arr","_interopRequireWildcard","require","errors_","schemaId_","Option","ParseResult","Predicate","Record","AST","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","schema","definitions","ast","isTransformation","isParseJsonTransformation","from","to","jsonSchema","fromAST","out","$schema","$defs","isEmptyRecord","exports","options","definitionPath","getRef","id","target","topLevelReferenceStrategy","additionalPropertiesStrategy","go","constNever","$id","not","constAny","constUnknown","constVoid","constObject","constEmptyStruct","getRawDescription","annotated","undefined","getOrUndefined","getDescriptionAnnotation","getRawTitle","getTitleAnnotation","getRawDefault","getDefaultAnnotation","none","getRawExamples","getExamplesAnnotation","encodeExamples","examples","getOption","filterMap","length","filterBuiltIn","annotation","key","_tag","stringKeyword","annotations","numberKeyword","booleanKeyword","pruneJsonSchemaAnnotations","description","title","def","isSome","value","encodedExamples","keys","getContextJsonSchemaAnnotations","getJsonSchemaAnnotations","DescriptionAnnotationId","TitleAnnotationId","mergeJsonSchemaAnnotations","jsonSchemaAnnotations","allOf","pruneUndefined","isNone","getJSONSchemaAnnotation","SchemaIdAnnotationId","ParseJsonSchemaId","isOverrideAnnotation","isRefinement","schemaId","IntSchemaId","type","mergeRefinements","handle","name","filter","unshift","minLength","maxLength","pattern","minItems","maxItems","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","isContentSchemaSupported","getAdditionalProperties","addASTAnnotations","addAnnotations","getIdentifierAnnotation","identifier","getJSONIdentifier","isSuspend","isTypeLiteral","isDeclaration","surrogate","getSurrogateAnnotation","path","errors","escapedId","replace","$ref","hook","handler","getTransformationFrom","Error","getJSONSchemaMissingAnnotationErrorMessage","getJSONSchemaMissingIdentifierAnnotationErrorMessage","literal","isString","enum","isNumber","isBoolean","anyOf","enums","map","$comment","elements","concat","rest","output","len","element","isOptional","items","restLength","head","isHomogeneous","every","additionalItems","getJSONSchemaUnsupportedPostRestElementsErrorMessage","propertySignatures","indexSignatures","required","properties","additionalProperties","patternProperties","propertyNames","is","pruned","parameter","getTemplateLiteralRegExp","source","indexSignaturePath","ps","push","getJSONSchemaUnsupportedKeyErrorMessage","members","types","compactUnion","regex","String","transformation","isJsonSchema7Object","propertySignatureTransformations","toKey","fromKey","toProperty","isRecord","fromProperty","Array","isArray","hasOwn","isNeverWithoutCustomAnnotations","hasProperty","neverKeyword","isAny","isUnknown","isVoid","isCompactableLiteral","m","last"],"sources":["../../src/JSONSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"JSONSchema.js","names":["Arr","_interopRequireWildcard","require","errors_","schemaId_","Option","ParseResult","Predicate","Record","AST","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","schema","definitions","ast","isTransformation","isParseJsonTransformation","from","to","jsonSchema","fromAST","out","$schema","getMetaSchemaUri","$defs","isEmptyRecord","exports","target","options","definitionPath","getRef","id","topLevelReferenceStrategy","additionalPropertiesStrategy","go","constNever","$id","not","constAny","constUnknown","constVoid","constObject","constEmptyStruct","getRawDescription","annotated","undefined","getOrUndefined","getDescriptionAnnotation","getRawTitle","getTitleAnnotation","getRawDefault","getDefaultAnnotation","none","encodeDefault","def","getOption","getRawExamples","getExamplesAnnotation","encodeExamples","examples","filterMap","length","filterBuiltIn","annotation","key","_tag","stringKeyword","annotations","numberKeyword","booleanKeyword","pruneJsonSchemaAnnotations","description","title","isSome","value","encodedExamples","keys","getContextJsonSchemaAnnotations","getJsonSchemaAnnotations","DescriptionAnnotationId","TitleAnnotationId","mergeJsonSchemaAnnotations","jsonSchemaAnnotations","allOf","pruneUndefined","isNone","getJSONSchemaAnnotation","SchemaIdAnnotationId","ParseJsonSchemaId","isOverrideAnnotation","isRefinement","schemaId","IntSchemaId","type","mergeRefinements","handle","name","filter","unshift","minLength","maxLength","pattern","minItems","maxItems","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","isContentSchemaSupported","getAdditionalProperties","addASTAnnotations","addAnnotations","getIdentifierAnnotation","identifier","getJSONIdentifier","isSuspend","isTypeLiteral","isDeclaration","surrogate","getSurrogateAnnotation","path","errors","escapedId","replace","$ref","hook","handler","getTransformationFrom","Error","getJSONSchemaMissingAnnotationErrorMessage","getJSONSchemaMissingIdentifierAnnotationErrorMessage","literal","isString","enum","isNumber","isBoolean","anyOf","enums","map","$comment","elements","concat","rest","output","len","element","isOptional","items","prefixItems","restLength","head","isHomogeneous","every","additionalItems","getJSONSchemaUnsupportedPostRestElementsErrorMessage","propertySignatures","indexSignatures","required","properties","additionalProperties","patternProperties","propertyNames","is","pruned","parameter","getTemplateLiteralRegExp","source","indexSignaturePath","ps","push","getJSONSchemaUnsupportedKeyErrorMessage","members","types","compactUnion","regex","String","transformation","isJsonSchema7Object","propertySignatureTransformations","toKey","fromKey","toProperty","isRecord","fromProperty","Array","isArray","hasOwn","isNeverWithoutCustomAnnotations","hasProperty","neverKeyword","isAny","isUnknown","isVoid","isCompactableLiteral","m","last"],"sources":["../../src/JSONSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -274,15 +274,15 @@ class TestClockImpl {
274
274
  * @since 2.0.0
275
275
  */
276
276
  exports.TestClockImpl = TestClockImpl;
277
- const live = data => layer.scoped(TestClock, core.gen(function* ($) {
278
- const live = yield* $(Live.TestLive);
279
- const annotations = yield* $(Annotations.TestAnnotations);
280
- const clockState = yield* $(core.sync(() => ref.unsafeMake(data)));
281
- const warningState = yield* $(circular.makeSynchronized(WarningData.start));
282
- const suspendedWarningState = yield* $(circular.makeSynchronized(SuspendedWarningData.start));
277
+ const live = data => layer.scoped(TestClock, core.gen(function* () {
278
+ const live = yield* Live.TestLive;
279
+ const annotations = yield* Annotations.TestAnnotations;
280
+ const clockState = yield* core.sync(() => ref.unsafeMake(data));
281
+ const warningState = yield* circular.makeSynchronized(WarningData.start);
282
+ const suspendedWarningState = yield* circular.makeSynchronized(SuspendedWarningData.start);
283
283
  const testClock = new TestClockImpl(clockState, live, annotations, warningState, suspendedWarningState);
284
- yield* $(fiberRuntime.withClockScoped(testClock));
285
- yield* $(fiberRuntime.addFinalizer(() => core.zipRight(testClock.warningDone(), testClock.suspendedWarningDone())));
284
+ yield* fiberRuntime.withClockScoped(testClock);
285
+ yield* fiberRuntime.addFinalizer(() => core.zipRight(testClock.warningDone(), testClock.suspendedWarningDone()));
286
286
  return testClock;
287
287
  }));
288
288
  /**