effect 4.0.0-beta.79 → 4.0.0-beta.80

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/Graph.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.js","names":["Data","Equal","dual","Hash","NodeInspectSymbol","Option","pipeArguments","hasProperty","TypeId","Edge","Class","ProtoGraph","Symbol","iterator","nodes","toJSON","symbol","that","isGraph","size","edges","type","nodeIndex","nodeData","has","otherNodeData","get","equals","edgeIndex","edgeData","otherEdge","hash","string","number","_id","nodeCount","edgeCount","toString","pipe","arguments","GraphError","TaggedError","missingNode","node","message","u","directed","mutate","graph","Object","create","Map","adjacency","reverseAdjacency","nextNodeIndex","nextEdgeIndex","acyclic","some","mutable","beginMutation","endMutation","undirected","set","f","addNode","data","getNode","none","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","_tag","invalidateCycleFlagOnAddition","addEdge","sourceAdjacency","undefined","targetReverseAdjacency","targetAdjacency","sourceReverseAdjacency","outgoingEdges","edge","incomingEdges","removeEdgeInternal","delete","wasRemoved","indexOf","splice","getEdge","fromUndefinedOr","hasEdge","adjacencyList","neighbors","getUndirectedNeighbors","neighborsDirected","direction","adjacencyMap","neighborNode","toGraphViz","args","options","edgeLabel","String","graphName","nodeLabel","isDirected","graphType","edgeOperator","lines","label","replace","join","escapeMermaidLabel","formatMermaidNode","nodeId","shape","toMermaid","diagramType","nodeShape","finalDiagramType","formattedNode","sourceId","targetId","isAcyclic","visited","Set","startNode","keys","add","stack","parent","length","pop","nodeNeighbors","neighbor","recursionStack","neighborIndex","isFirstVisit","Array","from","isBipartite","coloring","discovered","isBipartiteGraph","queue","current","shift","currentColor","neighborColor","otherNode","getTraversalNeighbors","getTraversableNeighbor","connectedComponents","components","component","stronglyConnectedComponents","finishOrder","nodeNeighborsList","sccs","i","scc","predecessor","dijkstra","config","path","distance","costs","distances","previous","Infinity","priorityQueue","minIndex","currentNode","currentDistance","cost","newDistance","neighborDistance","unshift","prev","floydWarshall","allNodes","next","edgeMatrix","j","weight","currentWeight","reverseWeight","k","distIK","distKJ","distIJ","paths","weights","nextNode","astar","targetNodeData","isNone","gScore","fScore","sourceNodeData","h","heuristic","openSet","currentGScore","tentativeGScore","neighborGScore","neighborNodeData","bellmanFord","hasUpdate","sourceDistance","targetDistance","affectedNodes","Walker","visit","constructor","indices","walker","_","values","entries","dfs","start","nextMapped","nodeDataOption","done","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","Equal","dual","Hash","NodeInspectSymbol","Option","pipeArguments","hasProperty","TypeId","Edge","Class","ProtoGraph","Symbol","iterator","nodes","toJSON","symbol","that","isGraph","size","edges","type","nodeIndex","nodeData","has","otherNodeData","get","equals","edgeIndex","edgeData","otherEdge","hash","string","number","_id","nodeCount","edgeCount","toString","pipe","arguments","GraphError","TaggedError","missingNode","node","message","u","directed","mutate","graph","Object","create","Map","adjacency","reverseAdjacency","nextNodeIndex","nextEdgeIndex","acyclic","some","mutable","beginMutation","endMutation","undirected","set","f","addNode","data","getNode","none","hasNode","findNode","predicate","index","findNodes","results","push","findEdge","source","target","findEdges","updateNode","currentData","newData","updateEdge","currentEdge","mapNodes","mapEdges","rebuildAdjacency","clear","keys","reverse","filterMapNodes","nodesToRemove","result","isSome","value","removeNode","filterMapEdges","edgesToRemove","removeEdge","filterNodes","filterEdges","invalidateCycleFlagOnRemoval","_tag","invalidateCycleFlagOnAddition","addEdge","sourceAdjacency","undefined","targetReverseAdjacency","targetAdjacency","sourceReverseAdjacency","outgoingEdges","edge","incomingEdges","removeEdgeInternal","delete","wasRemoved","indexOf","splice","getEdge","fromUndefinedOr","hasEdge","adjacencyList","neighbor","getDirectedNeighbors","direction","adjacencyMap","neighbors","getUndirectedNeighbors","successors","predecessors","neighborsDirected","toGraphViz","args","options","edgeLabel","String","graphName","nodeLabel","isDirected","graphType","edgeOperator","lines","label","replace","join","escapeMermaidLabel","formatMermaidNode","nodeId","shape","toMermaid","diagramType","nodeShape","finalDiagramType","formattedNode","sourceId","targetId","isAcyclic","visited","Set","startNode","add","stack","parent","length","pop","nodeNeighbors","recursionStack","neighborIndex","isFirstVisit","isBipartite","coloring","discovered","isBipartiteGraph","queue","current","shift","currentColor","neighborColor","otherNode","Array","from","getTraversalNeighbors","getTraversableNeighbor","connectedComponents","components","component","stronglyConnectedComponents","finishOrder","nodeNeighborsList","sccs","i","scc","predecessor","validateNonNegativeEdgeWeights","cost","algorithm","edgeWeights","weight","Number","isNaN","dijkstra","config","path","distance","costs","distances","previous","Infinity","priorityQueue","minIndex","currentNode","currentDistance","newDistance","neighborDistance","unshift","prev","floydWarshall","allNodes","next","edgeMatrix","j","currentWeight","reverseWeight","k","distIK","distKJ","distIJ","paths","weights","nextNode","astar","targetNodeData","isNone","gScore","fScore","sourceNodeData","h","heuristic","openSet","currentGScore","tentativeGScore","neighborGScore","neighborNodeData","bellmanFord","hasUpdate","sourceDistance","targetDistance","affectedNodes","Walker","visit","constructor","indices","walker","_","values","entries","dfs","start","nextMapped","nodeDataOption","done","bfs","topo","initials","inDegree","remaining","initialSet","currentInDegree","degree","newInDegree","dfsPostOrder","finished","visitedChildren","nodeToEmit","nodeMap","edgeMap","externals","nodeIterator"],"sources":["../src/Graph.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/Schema.d.ts CHANGED
@@ -8626,6 +8626,13 @@ export interface ToJsonSchemaOptions {
8626
8626
  * properties and synthesized check descriptions; it does not change the draft
8627
8627
  * target.
8628
8628
  *
8629
+ * **Gotchas**
8630
+ *
8631
+ * JSON Schema generation is best-effort. Some Effect schema semantics cannot
8632
+ * be represented exactly in JSON Schema, and importing an emitted JSON Schema
8633
+ * may produce an equivalent approximation rather than the original schema
8634
+ * shape.
8635
+ *
8629
8636
  * @category converting
8630
8637
  * @since 4.0.0
8631
8638
  */