Socket
Socket
Sign inDemoInstall

@effect/data

Package Overview
Dependencies
Maintainers
3
Versions
79
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@effect/data - npm Package Compare versions

Comparing version 0.17.1 to 0.17.2

LICENSE

6

Either.d.ts

@@ -7,2 +7,3 @@ /**

import type { LazyArg } from "@effect/data/Function";
import * as Gen from "@effect/data/Gen";
import type { TypeLambda } from "@effect/data/HKT";

@@ -417,2 +418,7 @@ import type { Option } from "@effect/data/Option";

export declare const reverse: <E, A>(self: Either<E, A>) => Either<A, E>;
/**
* @category generators
* @since 1.0.0
*/
export declare const gen: Gen.Gen<EitherTypeLambda, Gen.Adapter<EitherTypeLambda>>;
//# sourceMappingURL=Either.d.ts.map

31

Either.js

@@ -6,5 +6,6 @@ "use strict";

});
exports.try = exports.right = exports.reverse = exports.merge = exports.match = exports.mapRight = exports.mapLeft = exports.mapBoth = exports.left = exports.isRight = exports.isLeft = exports.isEither = exports.getRight = exports.getOrUndefined = exports.getOrThrowWith = exports.getOrThrow = exports.getOrNull = exports.getOrElse = exports.getLeft = exports.getEquivalence = exports.fromOption = exports.fromNullable = exports.flatMap = exports.all = exports.TypeId = void 0;
exports.try = exports.right = exports.reverse = exports.merge = exports.match = exports.mapRight = exports.mapLeft = exports.mapBoth = exports.left = exports.isRight = exports.isLeft = exports.isEither = exports.getRight = exports.getOrUndefined = exports.getOrThrowWith = exports.getOrThrow = exports.getOrNull = exports.getOrElse = exports.getLeft = exports.getEquivalence = exports.gen = exports.fromOption = exports.fromNullable = exports.flatMap = exports.all = exports.TypeId = void 0;
var Equivalence = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Equivalence"));
var _Function = /*#__PURE__*/require("@effect/data/Function");
var Gen = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Gen"));
var either = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/internal/Either"));

@@ -375,2 +376,30 @@ var _Predicate = /*#__PURE__*/require("@effect/data/Predicate");

exports.reverse = reverse;
const adapter = /*#__PURE__*/Gen.adapter();
/**
* @category generators
* @since 1.0.0
*/
const gen = f => {
const iterator = f(adapter);
let state = iterator.next();
if (state.done) {
return right(void 0);
} else {
let current = state.value.value;
if (isLeft(current)) {
return current;
}
while (!state.done) {
state = iterator.next(current.right);
if (!state.done) {
current = state.value.value;
if (isLeft(current)) {
return current;
}
}
}
return right(state.value);
}
};
exports.gen = gen;
//# sourceMappingURL=Either.js.map

@@ -83,2 +83,7 @@ import type { TypeLambda } from "@effect/data/HKT";

/**
* @category instances
* @since 1.0.0
*/
export declare const Date: Equivalence<Date>;
/**
* @category combining

@@ -85,0 +90,0 @@ * @since 1.0.0

10

Equivalence.js

@@ -6,3 +6,3 @@ "use strict";

});
exports.tuple = exports.symbol = exports.struct = exports.string = exports.strict = exports.productMany = exports.product = exports.number = exports.mapInput = exports.make = exports.combineMany = exports.combineAll = exports.combine = exports.boolean = exports.bigint = exports.array = exports.all = void 0;
exports.tuple = exports.symbol = exports.struct = exports.string = exports.strict = exports.productMany = exports.product = exports.number = exports.mapInput = exports.make = exports.combineMany = exports.combineAll = exports.combine = exports.boolean = exports.bigint = exports.array = exports.all = exports.Date = void 0;
var _Function = /*#__PURE__*/require("@effect/data/Function");

@@ -97,6 +97,12 @@ /**

/**
* @category instances
* @since 1.0.0
*/
exports.mapInput = mapInput;
const Date = /*#__PURE__*/mapInput(number, date => date.getTime());
/**
* @category combining
* @since 1.0.0
*/
exports.mapInput = mapInput;
exports.Date = Date;
const product = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => make(([xa, xb], [ya, yb]) => self(xa, ya) && that(xb, yb)));

@@ -103,0 +109,0 @@ /**

@@ -18,3 +18,3 @@ /**

*/
export interface HashMap<Key, Value> extends Iterable<readonly [Key, Value]>, Equal, Pipeable {
export interface HashMap<Key, Value> extends Iterable<[Key, Value]>, Equal, Pipeable {
readonly _id: TypeId;

@@ -319,3 +319,14 @@ }

};
/**
* Returns the first element that satisfies the specified
* predicate, or `None` if no such element exists.
*
* @category elements
* @since 1.0.0
*/
export declare const findFirst: {
<K, A>(predicate: (k: K, a: A) => boolean): (self: HashMap<K, A>) => Option<[K, A]>;
<K, A>(self: HashMap<K, A>, predicate: (k: K, a: A) => boolean): Option<[K, A]>;
};
export {};
//# sourceMappingURL=HashMap.d.ts.map

@@ -6,3 +6,3 @@ "use strict";

});
exports.values = exports.unsafeGet = exports.union = exports.size = exports.set = exports.removeMany = exports.remove = exports.reduce = exports.mutate = exports.modifyHash = exports.modifyAt = exports.modify = exports.map = exports.make = exports.keys = exports.keySet = exports.isHashMap = exports.isEmpty = exports.hasHash = exports.has = exports.getHash = exports.get = exports.fromIterable = exports.forEach = exports.flatMap = exports.filterMap = exports.filter = exports.endMutation = exports.empty = exports.compact = exports.beginMutation = void 0;
exports.values = exports.unsafeGet = exports.union = exports.size = exports.set = exports.removeMany = exports.remove = exports.reduce = exports.mutate = exports.modifyHash = exports.modifyAt = exports.modify = exports.map = exports.make = exports.keys = exports.keySet = exports.isHashMap = exports.isEmpty = exports.hasHash = exports.has = exports.getHash = exports.get = exports.fromIterable = exports.forEach = exports.flatMap = exports.findFirst = exports.filterMap = exports.filter = exports.endMutation = exports.empty = exports.compact = exports.beginMutation = void 0;
var HM = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/internal/HashMap"));

@@ -272,3 +272,12 @@ var _keySet = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/internal/HashMap/keySet"));

const filterMap = HM.filterMap;
/**
* Returns the first element that satisfies the specified
* predicate, or `None` if no such element exists.
*
* @category elements
* @since 1.0.0
*/
exports.filterMap = filterMap;
const findFirst = HM.findFirst;
exports.findFirst = findFirst;
//# sourceMappingURL=HashMap.js.map

@@ -6,3 +6,3 @@ "use strict";

});
exports.values = exports.unsafeGet = exports.union = exports.size = exports.setTree = exports.set = exports.removeMany = exports.remove = exports.reduce = exports.mutate = exports.modifyHash = exports.modifyAt = exports.modify = exports.map = exports.make = exports.keys = exports.isHashMap = exports.isEmpty = exports.hasHash = exports.has = exports.getHash = exports.get = exports.fromIterable = exports.forEach = exports.flatMap = exports.filterMap = exports.filter = exports.endMutation = exports.empty = exports.compact = exports.beginMutation = exports.HashMapTypeId = exports.HashMapImpl = void 0;
exports.values = exports.unsafeGet = exports.union = exports.size = exports.setTree = exports.set = exports.removeMany = exports.remove = exports.reduce = exports.mutate = exports.modifyHash = exports.modifyAt = exports.modify = exports.map = exports.make = exports.keys = exports.isHashMap = exports.isEmpty = exports.hasHash = exports.has = exports.getHash = exports.get = exports.fromIterable = exports.forEach = exports.flatMap = exports.findFirst = exports.filterMap = exports.filter = exports.endMutation = exports.empty = exports.compact = exports.beginMutation = exports.HashMapTypeId = exports.HashMapImpl = void 0;
var Equal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Equal"));

@@ -360,3 +360,13 @@ var Dual = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Function"));

}));
/** @internal */
exports.filterMap = filterMap;
const findFirst = /*#__PURE__*/Dual.dual(2, (self, predicate) => {
for (const ka of self) {
if (predicate(ka[0], ka[1])) {
return Option.some(ka);
}
}
return Option.none();
});
exports.findFirst = findFirst;
//# sourceMappingURL=HashMap.js.map

@@ -8,2 +8,3 @@ /**

import type { LazyArg } from "@effect/data/Function";
import * as Gen from "@effect/data/Gen";
import type { TypeLambda } from "@effect/data/HKT";

@@ -1023,2 +1024,7 @@ import type { Order } from "@effect/data/Order";

export declare const Do: Option<{}>;
/**
* @category generators
* @since 1.0.0
*/
export declare const gen: Gen.Gen<OptionTypeLambda, Gen.Adapter<OptionTypeLambda>>;
//# sourceMappingURL=Option.d.ts.map

@@ -6,6 +6,7 @@ "use strict";

});
exports.zipWith = exports.zipRight = exports.zipLeft = exports.unit = exports.toRefinement = exports.toArray = exports.tap = exports.sumCompact = exports.sum = exports.subtract = exports.some = exports.reduceCompact = exports.productMany = exports.product = exports.partitionMap = exports.orElseEither = exports.orElse = exports.none = exports.multiplyCompact = exports.multiply = exports.match = exports.map = exports.liftThrowable = exports.liftPredicate = exports.liftNullable = exports.lift2 = exports.let = exports.isSome = exports.isOption = exports.isNone = exports.getRight = exports.getOrder = exports.getOrUndefined = exports.getOrThrowWith = exports.getOrThrow = exports.getOrNull = exports.getOrElse = exports.getLeft = exports.getEquivalence = exports.fromNullable = exports.fromIterable = exports.flatten = exports.flatMapNullable = exports.flatMap = exports.firstSomeOf = exports.filterMap = exports.filter = exports.exists = exports.divide = exports.containsWith = exports.contains = exports.composeK = exports.bindTo = exports.bind = exports.asUnit = exports.as = exports.ap = exports.all = exports.TypeId = exports.Do = void 0;
exports.zipWith = exports.zipRight = exports.zipLeft = exports.unit = exports.toRefinement = exports.toArray = exports.tap = exports.sumCompact = exports.sum = exports.subtract = exports.some = exports.reduceCompact = exports.productMany = exports.product = exports.partitionMap = exports.orElseEither = exports.orElse = exports.none = exports.multiplyCompact = exports.multiply = exports.match = exports.map = exports.liftThrowable = exports.liftPredicate = exports.liftNullable = exports.lift2 = exports.let = exports.isSome = exports.isOption = exports.isNone = exports.getRight = exports.getOrder = exports.getOrUndefined = exports.getOrThrowWith = exports.getOrThrow = exports.getOrNull = exports.getOrElse = exports.getLeft = exports.getEquivalence = exports.gen = exports.fromNullable = exports.fromIterable = exports.flatten = exports.flatMapNullable = exports.flatMap = exports.firstSomeOf = exports.filterMap = exports.filter = exports.exists = exports.divide = exports.containsWith = exports.contains = exports.composeK = exports.bindTo = exports.bind = exports.asUnit = exports.as = exports.ap = exports.all = exports.TypeId = exports.Do = void 0;
var Equal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Equal"));
var Equivalence = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Equivalence"));
var _Function = /*#__PURE__*/require("@effect/data/Function");
var Gen = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Gen"));
var either = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/internal/Either"));

@@ -1011,2 +1012,30 @@ var option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/internal/Option"));

exports.Do = Do;
const adapter = /*#__PURE__*/Gen.adapter();
/**
* @category generators
* @since 1.0.0
*/
const gen = f => {
const iterator = f(adapter);
let state = iterator.next();
if (state.done) {
return some(void 0);
} else {
let current = state.value.value;
if (isNone(current)) {
return current;
}
while (!state.done) {
state = iterator.next(current.value);
if (!state.done) {
current = state.value.value;
if (isNone(current)) {
return current;
}
}
}
return some(state.value);
}
};
exports.gen = gen;
//# sourceMappingURL=Option.js.map

@@ -79,2 +79,7 @@ import type { TypeLambda } from "@effect/data/HKT";

/**
* @category instances
* @since 1.0.0
*/
export declare const Date: Order<Date>;
/**
* @category combining

@@ -81,0 +86,0 @@ * @since 1.0.0

@@ -6,3 +6,3 @@ "use strict";

});
exports.tuple = exports.struct = exports.string = exports.reverse = exports.productMany = exports.product = exports.number = exports.min = exports.max = exports.mapInput = exports.make = exports.lessThanOrEqualTo = exports.lessThan = exports.greaterThanOrEqualTo = exports.greaterThan = exports.empty = exports.combineMany = exports.combineAll = exports.combine = exports.clamp = exports.boolean = exports.bigint = exports.between = exports.array = exports.all = void 0;
exports.tuple = exports.struct = exports.string = exports.reverse = exports.productMany = exports.product = exports.number = exports.min = exports.max = exports.mapInput = exports.make = exports.lessThanOrEqualTo = exports.lessThan = exports.greaterThanOrEqualTo = exports.greaterThan = exports.empty = exports.combineMany = exports.combineAll = exports.combine = exports.clamp = exports.boolean = exports.bigint = exports.between = exports.array = exports.all = exports.Date = void 0;
var _Function = /*#__PURE__*/require("@effect/data/Function");

@@ -95,6 +95,12 @@ /**

/**
* @category instances
* @since 1.0.0
*/
exports.mapInput = mapInput;
const Date = /*#__PURE__*/mapInput(number, date => date.getTime());
/**
* @category combining
* @since 1.0.0
*/
exports.mapInput = mapInput;
exports.Date = Date;
const product = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => make(([xa, xb], [ya, yb]) => {

@@ -101,0 +107,0 @@ const o = self(xa, ya);

{
"name": "@effect/data",
"version": "0.17.1",
"version": "0.17.2",
"description": "Functional programming in TypeScript",
"license": "MIT",

@@ -12,3 +13,2 @@ "repository": {

},
"sideEffects": [],
"exports": {

@@ -25,3 +25,5 @@ "./*": {

}
}
},
"sideEffects": [],
"author": "Michael Arnaldi <ma@matechs.com>"
}

@@ -265,2 +265,29 @@ import type { TypeLambda } from "@effect/data/HKT";

/**
* Tests if a value is an `object` with a property `_tag` that matches the given tag.
*
* @param input - The value to test.
* @param tag - The tag to test for.
*
* @example
* import { isTagged } from "@effect/data/Predicate"
*
* assert.deepStrictEqual(isTagged(1, "a"), false)
* assert.deepStrictEqual(isTagged(null, "a"), false)
* assert.deepStrictEqual(isTagged({}, "a"), false)
* assert.deepStrictEqual(isTagged({ a: "a" }, "a"), false)
* assert.deepStrictEqual(isTagged({ _tag: "a" }, "a"), true)
* assert.deepStrictEqual(isTagged("a")({ _tag: "a" }), true)
*
* @category guards
* @since 1.0.0
*/
export declare const isTagged: {
<K extends string>(tag: K): (self: unknown) => self is {
_tag: K;
};
<K extends string>(self: unknown, tag: K): self is {
_tag: K;
};
};
/**
* A guard that succeeds when the input is `null` or `undefined`.

@@ -267,0 +294,0 @@ *

@@ -6,3 +6,3 @@ "use strict";

});
exports.xor = exports.tuple = exports.struct = exports.some = exports.productMany = exports.product = exports.or = exports.not = exports.nor = exports.nand = exports.mapInput = exports.isUnknown = exports.isUndefined = exports.isSymbol = exports.isString = exports.isRecord = exports.isReadonlyRecord = exports.isObject = exports.isNumber = exports.isNullable = exports.isNull = exports.isNotUndefined = exports.isNotNullable = exports.isNotNull = exports.isNever = exports.isIterable = exports.isFunction = exports.isError = exports.isDate = exports.isBoolean = exports.isBigint = exports.implies = exports.every = exports.eqv = exports.compose = exports.and = exports.all = void 0;
exports.xor = exports.tuple = exports.struct = exports.some = exports.productMany = exports.product = exports.or = exports.not = exports.nor = exports.nand = exports.mapInput = exports.isUnknown = exports.isUndefined = exports.isTagged = exports.isSymbol = exports.isString = exports.isRecord = exports.isReadonlyRecord = exports.isObject = exports.isNumber = exports.isNullable = exports.isNull = exports.isNotUndefined = exports.isNotNullable = exports.isNotNull = exports.isNever = exports.isIterable = exports.isFunction = exports.isError = exports.isDate = exports.isBoolean = exports.isBigint = exports.implies = exports.every = exports.eqv = exports.compose = exports.and = exports.all = void 0;
var _Function = /*#__PURE__*/require("@effect/data/Function");

@@ -265,2 +265,23 @@ /**

/**
* Tests if a value is an `object` with a property `_tag` that matches the given tag.
*
* @param input - The value to test.
* @param tag - The tag to test for.
*
* @example
* import { isTagged } from "@effect/data/Predicate"
*
* assert.deepStrictEqual(isTagged(1, "a"), false)
* assert.deepStrictEqual(isTagged(null, "a"), false)
* assert.deepStrictEqual(isTagged({}, "a"), false)
* assert.deepStrictEqual(isTagged({ a: "a" }, "a"), false)
* assert.deepStrictEqual(isTagged({ _tag: "a" }, "a"), true)
* assert.deepStrictEqual(isTagged("a")({ _tag: "a" }), true)
*
* @category guards
* @since 1.0.0
*/
exports.isObject = isObject;
const isTagged = /*#__PURE__*/(0, _Function.dual)(2, (self, tag) => isObject(self) && "_tag" in self && self["_tag"] === tag);
/**
* A guard that succeeds when the input is `null` or `undefined`.

@@ -282,3 +303,3 @@ *

*/
exports.isObject = isObject;
exports.isTagged = isTagged;
const isNullable = input => input === null || input === undefined;

@@ -285,0 +306,0 @@ /**

@@ -135,7 +135,7 @@ /**

export type Brands<P> = P extends Brand<any> ? Brand.UnionToIntersection<
{
[k in keyof P[BrandTypeId]]: k extends string | symbol ? Brand<k>
: never
}[keyof P[BrandTypeId]]
>
{
[k in keyof P[BrandTypeId]]: k extends string | symbol ? Brand<k>
: never
}[keyof P[BrandTypeId]]
>
: never

@@ -142,0 +142,0 @@

@@ -105,4 +105,4 @@ /**

const _case = <A extends Case>(): Case.Constructor<A> =>
(args) => (args === undefined ? struct({}) : struct(args)) as any
const _case = <A extends Case>(): Case.Constructor<A> => (args) =>
(args === undefined ? struct({}) : struct(args)) as any

@@ -128,4 +128,4 @@ export {

): Case.Constructor<A, "_tag"> =>
// @ts-expect-error
(args) => args === undefined ? struct({ _tag: tag }) : struct({ ...args, _tag: tag })
// @ts-expect-error
(args) => args === undefined ? struct({ _tag: tag }) : struct({ ...args, _tag: tag })

@@ -132,0 +132,0 @@ /**

@@ -9,2 +9,3 @@ /**

import { constNull, constUndefined, dual, identity } from "@effect/data/Function"
import * as Gen from "@effect/data/Gen"
import type { TypeLambda } from "@effect/data/HKT"

@@ -510,7 +511,10 @@ import * as either from "@effect/data/internal/Either"

) => [I] extends [ReadonlyArray<Either<any, any>>] ? Either<
I[number] extends never ? never : [I[number]] extends [Either<infer E, any>] ? E : never,
{ -readonly [K in keyof I]: [I[K]] extends [Either<any, infer A>] ? A : never }
>
I[number] extends never ? never : [I[number]] extends [Either<infer E, any>] ? E : never,
{ -readonly [K in keyof I]: [I[K]] extends [Either<any, infer A>] ? A : never }
>
: [I] extends [Iterable<Either<infer E, infer A>>] ? Either<E, Array<A>>
: Either<I[keyof I] extends never ? never : [I[keyof I]] extends [Either<infer E, any>] ? E : never, { -readonly [K in keyof I]: [I[K]] extends [Either<any, infer A>] ? A : never }> = (
: Either<
I[keyof I] extends never ? never : [I[keyof I]] extends [Either<infer E, any>] ? E : never,
{ -readonly [K in keyof I]: [I[K]] extends [Either<any, infer A>] ? A : never }
> = (
input: Iterable<Either<any, any>> | Record<string, Either<any, any>>

@@ -544,1 +548,30 @@ ): Either<any, any> => {

export const reverse = <E, A>(self: Either<E, A>): Either<A, E> => isLeft(self) ? right(self.left) : left(self.right)
const adapter = Gen.adapter<EitherTypeLambda>()
/**
* @category generators
* @since 1.0.0
*/
export const gen: Gen.Gen<EitherTypeLambda, Gen.Adapter<EitherTypeLambda>> = (f) => {
const iterator = f(adapter)
let state: IteratorYieldResult<any> | IteratorReturnResult<any> = iterator.next()
if (state.done) {
return right(void 0) as any
} else {
let current = state.value.value
if (isLeft(current)) {
return current
}
while (!state.done) {
state = iterator.next(current.right)
if (!state.done) {
current = state.value.value
if (isLeft(current)) {
return current
}
}
}
return right(state.value)
}
}

@@ -68,3 +68,3 @@ /**

*/
export const equivalence: <A>() => Equivalence<A> = () =>
(self, that) => Hash.hash(self) === Hash.hash(that) && equals(self, that)
export const equivalence: <A>() => Equivalence<A> = () => (self, that) =>
Hash.hash(self) === Hash.hash(that) && equals(self, that)

@@ -31,4 +31,4 @@ /**

*/
export const make = <A>(isEquivalent: (self: A, that: A) => boolean): Equivalence<A> =>
(self: A, that: A): boolean => self === that || isEquivalent(self, that)
export const make = <A>(isEquivalent: (self: A, that: A) => boolean): Equivalence<A> => (self: A, that: A): boolean =>
self === that || isEquivalent(self, that)

@@ -126,2 +126,8 @@ const isStrictEquivalent = (x: unknown, y: unknown) => x === y

/**
* @category instances
* @since 1.0.0
*/
export const Date: Equivalence<Date> = mapInput(number, (date) => date.getTime())
/**
* @category combining

@@ -128,0 +134,0 @@ * @since 1.0.0

@@ -324,3 +324,5 @@ /**

f: (...a: A) => (...b: B) => C
): ((...b: B) => (...a: A) => C) => (...b) => (...a) => f(...a)(...b)
): (...b: B) => (...a: A) => C =>
(...b) =>
(...a) => f(...a)(...b)

@@ -373,3 +375,3 @@ /**

*/
export const tupled = <A extends ReadonlyArray<unknown>, B>(f: (...a: A) => B): ((a: A) => B) => (a) => f(...a)
export const tupled = <A extends ReadonlyArray<unknown>, B>(f: (...a: A) => B): (a: A) => B => (a) => f(...a)

@@ -388,3 +390,3 @@ /**

*/
export const untupled = <A extends ReadonlyArray<unknown>, B>(f: (a: A) => B): ((...a: A) => B) => (...a) => f(a)
export const untupled = <A extends ReadonlyArray<unknown>, B>(f: (a: A) => B): (...a: A) => B => (...a) => f(a)

@@ -391,0 +393,0 @@ /**

@@ -24,3 +24,3 @@ /**

*/
export interface HashMap<Key, Value> extends Iterable<readonly [Key, Value]>, Equal, Pipeable {
export interface HashMap<Key, Value> extends Iterable<[Key, Value]>, Equal, Pipeable {
readonly _id: TypeId

@@ -362,1 +362,13 @@ }

} = HM.filterMap
/**
* Returns the first element that satisfies the specified
* predicate, or `None` if no such element exists.
*
* @category elements
* @since 1.0.0
*/
export const findFirst: {
<K, A>(predicate: (k: K, a: A) => boolean): (self: HashMap<K, A>) => Option<[K, A]>
<K, A>(self: HashMap<K, A>, predicate: (k: K, a: A) => boolean): Option<[K, A]>
} = HM.findFirst

@@ -33,7 +33,7 @@ /**

} ? (F & {
readonly In: In
readonly Out2: Out2
readonly Out1: Out1
readonly Target: Target
})["type"]
readonly In: In
readonly Out2: Out2
readonly Out1: Out1
readonly Target: Target
})["type"]
: {

@@ -40,0 +40,0 @@ readonly F: F

@@ -176,3 +176,4 @@ import type * as C from "@effect/data/Context"

/** @internal */
export const pick = <Services, S extends Array<C.ValidTagsById<Services>>>(...tags: S) =>
export const pick =
<Services, S extends Array<C.ValidTagsById<Services>>>(...tags: S) =>
(self: C.Context<Services>): C.Context<

@@ -192,3 +193,4 @@ { [k in keyof S]: C.Tag.Identifier<S[k]> }[number]

/** @internal */
export const omit = <Services, S extends Array<C.ValidTagsById<Services>>>(...tags: S) =>
export const omit =
<Services, S extends Array<C.ValidTagsById<Services>>>(...tags: S) =>
(self: C.Context<Services>): C.Context<

@@ -195,0 +197,0 @@ Exclude<Services, { [k in keyof S]: C.Tag.Identifier<S[k]> }[keyof S]>

@@ -43,3 +43,3 @@ import * as Equal from "@effect/data/Equal"

[Symbol.iterator](): Iterator<readonly [K, V]> {
[Symbol.iterator](): Iterator<[K, V]> {
return new HashMapIterator(this, (k, v) => [k, v])

@@ -509,1 +509,17 @@ }

}))
/** @internal */
export const findFirst: {
<K, A>(predicate: (k: K, a: A) => boolean): (self: HM.HashMap<K, A>) => Option.Option<[K, A]>
<K, A>(self: HM.HashMap<K, A>, predicate: (k: K, a: A) => boolean): Option.Option<[K, A]>
} = Dual.dual(
2,
<K, A>(self: HM.HashMap<K, A>, predicate: (k: K, a: A) => boolean): Option.Option<[K, A]> => {
for (const ka of self) {
if (predicate(ka[0], ka[1])) {
return Option.some(ka)
}
}
return Option.none()
}
)

@@ -83,4 +83,4 @@ import * as Chunk from "@effect/data/Chunk"

/** @internal */
export const fromIterable = <K, V>(ord: Order.Order<K>) =>
(entries: Iterable<readonly [K, V]>): RBT.RedBlackTree<K, V> => {
export const fromIterable =
<K, V>(ord: Order.Order<K>) => (entries: Iterable<readonly [K, V]>): RBT.RedBlackTree<K, V> => {
let tree = empty<K, V>(ord)

@@ -94,3 +94,4 @@ for (const [key, value] of entries) {

/** @internal */
export const make = <K>(ord: Order.Order<K>) =>
export const make =
<K>(ord: Order.Order<K>) =>
<Entries extends Array<readonly [K, any]>>(...entries: Entries): RBT.RedBlackTree<

@@ -97,0 +98,0 @@ K,

@@ -10,2 +10,3 @@ /**

import { constNull, constUndefined, dual, identity } from "@effect/data/Function"
import * as Gen from "@effect/data/Gen"
import type { TypeLambda } from "@effect/data/HKT"

@@ -438,3 +439,4 @@ import * as either from "@effect/data/internal/Either"

f: (...a: A) => B | null | undefined
): ((...a: A) => Option<NonNullable<B>>) => (...a) => fromNullable(f(...a))
): (...a: A) => Option<NonNullable<B>> =>
(...a) => fromNullable(f(...a))

@@ -494,10 +496,10 @@ /**

f: (...a: A) => B
): ((...a: A) => Option<B>) =>
(...a) => {
try {
return some(f(...a))
} catch (e) {
return none()
}
): (...a: A) => Option<B> =>
(...a) => {
try {
return some(f(...a))
} catch (e) {
return none()
}
}

@@ -775,4 +777,4 @@ /**

) => [I] extends [ReadonlyArray<Option<any>>] ? Option<
{ -readonly [K in keyof I]: [I[K]] extends [Option<infer A>] ? A : never }
>
{ -readonly [K in keyof I]: [I[K]] extends [Option<infer A>] ? A : never }
>
: [I] extends [Iterable<Option<infer A>>] ? Option<Array<A>>

@@ -1282,1 +1284,30 @@ : Option<{ -readonly [K in keyof I]: [I[K]] extends [Option<infer A>] ? A : never }> = (

export const Do: Option<{}> = some({})
const adapter = Gen.adapter<OptionTypeLambda>()
/**
* @category generators
* @since 1.0.0
*/
export const gen: Gen.Gen<OptionTypeLambda, Gen.Adapter<OptionTypeLambda>> = (f) => {
const iterator = f(adapter)
let state: IteratorYieldResult<any> | IteratorReturnResult<any> = iterator.next()
if (state.done) {
return some(void 0)
} else {
let current = state.value.value
if (isNone(current)) {
return current
}
while (!state.done) {
state = iterator.next(current.value)
if (!state.done) {
current = state.value.value
if (isNone(current)) {
return current
}
}
}
return some(state.value)
}
}

@@ -29,3 +29,4 @@ /**

compare: (self: A, that: A) => -1 | 0 | 1
): Order<A> => (self, that) => self === that ? 0 : compare(self, that)
): Order<A> =>
(self, that) => self === that ? 0 : compare(self, that)

@@ -123,2 +124,8 @@ /**

/**
* @category instances
* @since 1.0.0
*/
export const Date: Order<Date> = mapInput(number, (date) => date.getTime())
/**
* @category combining

@@ -125,0 +132,0 @@ * @since 1.0.0

@@ -288,2 +288,30 @@ /**

/**
* Tests if a value is an `object` with a property `_tag` that matches the given tag.
*
* @param input - The value to test.
* @param tag - The tag to test for.
*
* @example
* import { isTagged } from "@effect/data/Predicate"
*
* assert.deepStrictEqual(isTagged(1, "a"), false)
* assert.deepStrictEqual(isTagged(null, "a"), false)
* assert.deepStrictEqual(isTagged({}, "a"), false)
* assert.deepStrictEqual(isTagged({ a: "a" }, "a"), false)
* assert.deepStrictEqual(isTagged({ _tag: "a" }, "a"), true)
* assert.deepStrictEqual(isTagged("a")({ _tag: "a" }), true)
*
* @category guards
* @since 1.0.0
*/
export const isTagged: {
<K extends string>(tag: K): (self: unknown) => self is { _tag: K }
<K extends string>(self: unknown, tag: K): self is { _tag: K }
} = dual(
2,
<K extends string>(self: unknown, tag: K): self is { _tag: K } =>
isObject(self) && "_tag" in self && self["_tag"] === tag
)
/**
* A guard that succeeds when the input is `null` or `undefined`.

@@ -434,4 +462,4 @@ *

2,
<A, B extends A, C extends B>(ab: Refinement<A, B>, bc: Refinement<B, C>): Refinement<A, C> =>
(a): a is C => ab(a) && bc(a)
<A, B extends A, C extends B>(ab: Refinement<A, B>, bc: Refinement<B, C>): Refinement<A, C> => (a): a is C =>
ab(a) && bc(a)
)

@@ -443,4 +471,4 @@

*/
export const product = <A, B>(self: Predicate<A>, that: Predicate<B>): Predicate<readonly [A, B]> =>
([a, b]) => self(a) && that(b)
export const product = <A, B>(self: Predicate<A>, that: Predicate<B>): Predicate<readonly [A, B]> => ([a, b]) =>
self(a) && that(b)

@@ -641,11 +669,10 @@ /**

*/
export const every = <A>(collection: Iterable<Predicate<A>>): Predicate<A> =>
(a: A) => {
for (const p of collection) {
if (!p(a)) {
return false
}
export const every = <A>(collection: Iterable<Predicate<A>>): Predicate<A> => (a: A) => {
for (const p of collection) {
if (!p(a)) {
return false
}
return true
}
return true
}

@@ -656,10 +683,9 @@ /**

*/
export const some = <A>(collection: Iterable<Predicate<A>>): Predicate<A> =>
(a) => {
for (const p of collection) {
if (p(a)) {
return true
}
export const some = <A>(collection: Iterable<Predicate<A>>): Predicate<A> => (a) => {
for (const p of collection) {
if (p(a)) {
return true
}
return false
}
return false
}

@@ -905,7 +905,6 @@ /**

*/
export const sortBy = <B>(...orders: ReadonlyArray<Order.Order<B>>) =>
<A extends B>(self: Iterable<A>): Array<A> => {
const input = fromIterable(self)
return (isNonEmptyReadonlyArray(input) ? sortByNonEmpty(...orders)(input) : [])
}
export const sortBy = <B>(...orders: ReadonlyArray<Order.Order<B>>) => <A extends B>(self: Iterable<A>): Array<A> => {
const input = fromIterable(self)
return (isNonEmptyReadonlyArray(input) ? sortByNonEmpty(...orders)(input) : [])
}

@@ -918,3 +917,3 @@ /**

...orders: ReadonlyArray<Order.Order<B>>
): (<A extends B>(as: NonEmptyReadonlyArray<A>) => NonEmptyArray<A>) => sortNonEmpty(Order.combineAll(orders))
): <A extends B>(as: NonEmptyReadonlyArray<A>) => NonEmptyArray<A> => sortNonEmpty(Order.combineAll(orders))

@@ -1766,3 +1765,4 @@ /**

f: (...a: A) => Option<B>
) => (...a: A): Array<B> => fromOption(f(...a))
) =>
(...a: A): Array<B> => fromOption(f(...a))

@@ -1781,3 +1781,4 @@ /**

f: (...a: A) => B | null | undefined
): (...a: A) => Array<NonNullable<B>> => (...a) => fromNullable(f(...a))
): (...a: A) => Array<NonNullable<B>> =>
(...a) => fromNullable(f(...a))

@@ -1804,6 +1805,6 @@ /**

) =>
(...a: A): Array<B> => {
const e = f(...a)
return E.isLeft(e) ? [] : [e.right]
}
(...a: A): Array<B> => {
const e = f(...a)
return E.isLeft(e) ? [] : [e.right]
}

@@ -1810,0 +1811,0 @@ /**

@@ -90,4 +90,4 @@ /**

*/
export const fromIterable = <K>(ord: Order<K>) =>
<V>(iterable: Iterable<readonly [K, V]>): SortedMap<K, V> => new SortedMapImpl(RBT.fromIterable<K, V>(ord)(iterable))
export const fromIterable = <K>(ord: Order<K>) => <V>(iterable: Iterable<readonly [K, V]>): SortedMap<K, V> =>
new SortedMapImpl(RBT.fromIterable<K, V>(ord)(iterable))

@@ -98,3 +98,4 @@ /**

*/
export const make = <K>(ord: Order<K>) =>
export const make =
<K>(ord: Order<K>) =>
<Entries extends ReadonlyArray<readonly [K, any]>>(...entries: Entries): SortedMap<

@@ -101,0 +102,0 @@ K,

@@ -91,5 +91,5 @@ /**

export const fromIterable = <K>(ord: Order<K>) =>
(
iterable: Iterable<K>
): SortedSet<K> => new SortedSetImpl(RBT.fromIterable<K, boolean>(ord)(Array.from(iterable).map((k) => [k, true])))
(
iterable: Iterable<K>
): SortedSet<K> => new SortedSetImpl(RBT.fromIterable<K, boolean>(ord)(Array.from(iterable).map((k) => [k, true])))

@@ -100,4 +100,5 @@ /**

*/
export const make = <K>(ord: Order<K>) =>
<Entries extends ReadonlyArray<K>>(...entries: Entries): SortedSet<Entries[number]> => fromIterable(ord)(entries)
export const make =
<K>(ord: Order<K>) => <Entries extends ReadonlyArray<K>>(...entries: Entries): SortedSet<Entries[number]> =>
fromIterable(ord)(entries)

@@ -104,0 +105,0 @@ /**

@@ -94,4 +94,4 @@ /**

*/
export const replace = (searchValue: string | RegExp, replaceValue: string) =>
(self: string): string => self.replace(searchValue, replaceValue)
export const replace = (searchValue: string | RegExp, replaceValue: string) => (self: string): string =>
self.replace(searchValue, replaceValue)

@@ -195,4 +195,4 @@ /**

*/
export const includes = (searchString: string, position?: number) =>
(self: string): boolean => self.includes(searchString, position)
export const includes = (searchString: string, position?: number) => (self: string): boolean =>
self.includes(searchString, position)

@@ -202,4 +202,4 @@ /**

*/
export const startsWith = (searchString: string, position?: number) =>
(self: string): boolean => self.startsWith(searchString, position)
export const startsWith = (searchString: string, position?: number) => (self: string): boolean =>
self.startsWith(searchString, position)

@@ -209,4 +209,4 @@ /**

*/
export const endsWith = (searchString: string, position?: number) =>
(self: string): boolean => self.endsWith(searchString, position)
export const endsWith = (searchString: string, position?: number) => (self: string): boolean =>
self.endsWith(searchString, position)

@@ -305,5 +305,4 @@ /**

*/
export const indexOf = (searchString: string) =>
(self: string): Option.Option<number> =>
Option.filter(Option.some(self.indexOf(searchString)), number.greaterThanOrEqualTo(0))
export const indexOf = (searchString: string) => (self: string): Option.Option<number> =>
Option.filter(Option.some(self.indexOf(searchString)), number.greaterThanOrEqualTo(0))

@@ -321,5 +320,4 @@ /**

*/
export const lastIndexOf = (searchString: string) =>
(self: string): Option.Option<number> =>
Option.filter(Option.some(self.lastIndexOf(searchString)), number.greaterThanOrEqualTo(0))
export const lastIndexOf = (searchString: string) => (self: string): Option.Option<number> =>
Option.filter(Option.some(self.lastIndexOf(searchString)), number.greaterThanOrEqualTo(0))

@@ -337,4 +335,5 @@ /**

*/
export const localeCompare = (that: string, locales?: Array<string>, options?: Intl.CollatorOptions) =>
(self: string): Ordering.Ordering => number.sign(self.localeCompare(that, locales, options))
export const localeCompare =
(that: string, locales?: Array<string>, options?: Intl.CollatorOptions) => (self: string): Ordering.Ordering =>
number.sign(self.localeCompare(that, locales, options))

@@ -346,4 +345,4 @@ /**

*/
export const match = (regexp: RegExp | string) =>
(self: string): Option.Option<RegExpMatchArray> => Option.fromNullable(self.match(regexp))
export const match = (regexp: RegExp | string) => (self: string): Option.Option<RegExpMatchArray> =>
Option.fromNullable(self.match(regexp))

@@ -383,4 +382,4 @@ /**

*/
export const padEnd = (maxLength: number, fillString?: string) =>
(self: string): string => self.padEnd(maxLength, fillString)
export const padEnd = (maxLength: number, fillString?: string) => (self: string): string =>
self.padEnd(maxLength, fillString)

@@ -397,4 +396,4 @@ /**

*/
export const padStart = (maxLength: number, fillString?: string) =>
(self: string): string => self.padStart(maxLength, fillString)
export const padStart = (maxLength: number, fillString?: string) => (self: string): string =>
self.padStart(maxLength, fillString)

@@ -422,4 +421,4 @@ /**

*/
export const replaceAll = (searchValue: string | RegExp, replaceValue: string) =>
(self: string): string => self.replaceAll(searchValue, replaceValue)
export const replaceAll = (searchValue: string | RegExp, replaceValue: string) => (self: string): string =>
self.replaceAll(searchValue, replaceValue)

@@ -457,4 +456,4 @@ /**

*/
export const toLocaleLowerCase = (locale?: string | Array<string>) =>
(self: string): string => self.toLocaleLowerCase(locale)
export const toLocaleLowerCase = (locale?: string | Array<string>) => (self: string): string =>
self.toLocaleLowerCase(locale)

@@ -471,4 +470,4 @@ /**

*/
export const toLocaleUpperCase = (locale?: string | Array<string>) =>
(self: string): string => self.toLocaleUpperCase(locale)
export const toLocaleUpperCase = (locale?: string | Array<string>) => (self: string): string =>
self.toLocaleUpperCase(locale)

@@ -475,0 +474,0 @@ /**

@@ -25,9 +25,9 @@ /**

) =>
(s: S): { [K in Keys[number]]: S[K] } => {
const out: any = {}
for (const k of keys) {
out[k] = s[k]
}
return out
(s: S): { [K in Keys[number]]: S[K] } => {
const out: any = {}
for (const k of keys) {
out[k] = s[k]
}
return out
}

@@ -48,9 +48,9 @@ /**

) =>
(s: S): { [K in Exclude<keyof S, Keys[number]>]: S[K] } => {
const out: any = { ...s }
for (const k of keys) {
delete out[k]
}
return out
(s: S): { [K in Exclude<keyof S, Keys[number]>]: S[K] } => {
const out: any = { ...s }
for (const k of keys) {
delete out[k]
}
return out
}

@@ -57,0 +57,0 @@ /**

@@ -54,5 +54,5 @@ /**

> = X extends any ? [
NonNullable<X[unifySymbol]>,
Blacklist<X>
]
NonNullable<X[unifySymbol]>,
Blacklist<X>
]
: never

@@ -59,0 +59,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc