{"version":3,"sources":["jsdelivr-header.js","/npm/fp-ts-laws@0.3.0/lib/index.js"],"names":[],"mappings":"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","file":"/npm/fp-ts-laws@0.3.0/lib/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/fp-ts-laws@0.3.0/lib/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n/**\n * @since 0.0.1\n */\nvar fc = require(\"fast-check\");\nvar Eq_1 = require(\"fp-ts/lib/Eq\");\nvar laws = require(\"./laws\");\n/**\n * Tests the `Eq` laws\n *\n * @since 0.0.1\n */\nexports.eq = function (E, arb) {\n    var reflexivity = fc.property(arb, laws.eq.reflexivity(E));\n    var symmetry = fc.property(arb, arb, laws.eq.simmetry(E));\n    var transitivity = fc.property(arb, arb, arb, laws.eq.transitivity(E));\n    fc.assert(reflexivity);\n    fc.assert(symmetry);\n    fc.assert(transitivity);\n};\n/**\n * Tests the `Ord` laws\n *\n * @since 0.0.1\n */\nexports.ord = function (O, arb) {\n    exports.eq(O, arb);\n    var totality = fc.property(arb, arb, laws.ord.totality(O));\n    var reflexivity = fc.property(arb, laws.ord.reflexivity(O));\n    var antisymmetry = fc.property(arb, arb, laws.ord.antisimmetry(O));\n    var transitivity = fc.property(arb, arb, arb, laws.ord.transitivity(O));\n    fc.assert(totality);\n    fc.assert(reflexivity);\n    fc.assert(antisymmetry);\n    fc.assert(transitivity);\n};\n/**\n * Tests the `Semigroup` laws\n *\n * @example\n * import * as laws from 'fp-ts-laws'\n * import * as fc from 'fast-check'\n * import { Semigroup } from 'fp-ts/lib/Semigroup'\n * import { eqString } from 'fp-ts/lib/Eq'\n *\n * const semigroupSpace: Semigroup<string> = {\n *   concat: (x, y) => x + ' ' + y\n * }\n * laws.semigroup(semigroupSpace, eqString, fc.string())\n *\n * @since 0.0.1\n */\nexports.semigroup = function (S, E, arb) {\n    var associativity = fc.property(arb, arb, arb, laws.semigroup.associativity(S, E));\n    fc.assert(associativity);\n};\n/**\n * Tests the `Monoid` laws\n *\n * @since 0.0.1\n */\nexports.monoid = function (M, E, arb) {\n    exports.semigroup(M, E, arb);\n    var rightIdentity = fc.property(arb, laws.monoid.rightIdentity(M, E));\n    var leftIdentity = fc.property(arb, laws.monoid.leftIdentity(M, E));\n    fc.assert(rightIdentity);\n    fc.assert(leftIdentity);\n};\n/**\n * Tests the `Semiring` laws\n *\n * @since 0.0.1\n */\nexports.semiring = function (S, E, arb, seed) {\n    var addAssociativity = fc.property(arb, arb, arb, laws.semiring.addAssociativity(S, E));\n    var addIdentity = fc.property(arb, laws.semiring.addIdentity(S, E));\n    var commutativity = fc.property(arb, arb, laws.semiring.commutativity(S, E));\n    var mulAssociativity = fc.property(arb, arb, arb, laws.semiring.mulAssociativity(S, E));\n    var mulIdentity = fc.property(arb, laws.semiring.mulIdentity(S, E));\n    var leftDistributivity = fc.property(arb, arb, arb, laws.semiring.leftDistributivity(S, E));\n    var rightDistributivity = fc.property(arb, arb, arb, laws.semiring.rightDistributivity(S, E));\n    var annihilation = fc.property(arb, laws.semiring.annihilation(S, E));\n    fc.assert(addAssociativity, { seed: seed });\n    fc.assert(addIdentity, { seed: seed });\n    fc.assert(commutativity, { seed: seed });\n    fc.assert(mulAssociativity, { seed: seed });\n    fc.assert(mulIdentity, { seed: seed });\n    fc.assert(leftDistributivity, { seed: seed });\n    fc.assert(rightDistributivity, { seed: seed });\n    fc.assert(annihilation, { seed: seed });\n};\n/**\n * Tests the `Ring` laws\n *\n * @since 0.0.1\n */\nexports.ring = function (R, S, arb, seed) {\n    exports.semiring(R, S, arb, seed);\n    var additiveInverse = fc.property(arb, laws.ring.additiveInverse(R, S));\n    fc.assert(additiveInverse);\n};\n/**\n * Tests the `Field` laws\n *\n * @since 0.0.1\n */\nexports.field = function (F, S, arb, seed) {\n    exports.ring(F, S, arb, seed);\n    if (S.equals(F.zero, F.one)) {\n        throw new Error(\"one should not be equal to zero\");\n    }\n    var commutativity = fc.property(arb, arb, laws.field.commutativity(F, S));\n    var integralDomain = fc.property(arb, arb, laws.field.integralDomain(F, S));\n    var nonNegativity = fc.property(arb, laws.field.nonNegativity(F, S));\n    var quotient = fc.property(arb, arb, laws.field.quotient(F, S));\n    var reminder = fc.property(arb, arb, laws.field.reminder(F, S));\n    var submultiplicative = fc.property(arb, arb, laws.field.submultiplicative(F, S));\n    var inverse = fc.property(arb, laws.field.inverse(F, S));\n    fc.assert(commutativity, { seed: seed });\n    fc.assert(integralDomain, { seed: seed });\n    fc.assert(nonNegativity, { seed: seed });\n    fc.assert(quotient, { seed: seed });\n    fc.assert(reminder, { seed: seed });\n    fc.assert(submultiplicative, { seed: seed });\n    fc.assert(inverse, { seed: seed });\n};\nfunction functor(F) {\n    return function (lift, liftEq) {\n        var arb = lift(fc.string());\n        var Sa = liftEq(Eq_1.eqString);\n        var Sc = liftEq(Eq_1.eqNumber);\n        var identity = fc.property(arb, laws.functor.identity(F, Sa));\n        var ab = function (s) { return (s.length === 1 ? undefined : s.length === 2 ? null : s.length); };\n        var bc = function (n) { return (n === undefined ? 1 : n === null ? 2 : n * 2); };\n        var composition = fc.property(arb, laws.functor.composition(F, Sc, ab, bc));\n        fc.assert(identity);\n        fc.assert(composition);\n    };\n}\nexports.functor = functor;\nfunction apply(F) {\n    var functorF = functor(F);\n    return function (lift, liftEq) {\n        functorF(lift, liftEq);\n        var Sc = liftEq(Eq_1.eqBoolean);\n        var arbFa = lift(fc.string());\n        var arbFab = lift(fc.constant(function (a) { return a.length; }));\n        var arbFbc = lift(fc.constant(function (b) { return b > 2; }));\n        var associativeComposition = fc.property(arbFa, arbFab, arbFbc, laws.apply.associativeComposition(F, Sc));\n        fc.assert(associativeComposition);\n    };\n}\nexports.apply = apply;\nfunction applicative(F) {\n    var applyF = apply(F);\n    return function (lift, liftEq) {\n        applyF(lift, liftEq);\n        var arbFa = lift(fc.string());\n        var Sa = liftEq(Eq_1.eqString);\n        var Sb = liftEq(Eq_1.eqNumber);\n        var identity = fc.property(arbFa, laws.applicative.identity(F, Sa));\n        var ab = function (s) { return s.length; };\n        var homomorphism = fc.property(fc.string(), laws.applicative.homomorphism(F, Sb, ab));\n        var arbFab = lift(fc.constant(ab));\n        var interchange = fc.property(fc.string(), arbFab, laws.applicative.interchange(F, Sb));\n        var derivedMap = fc.property(arbFa, laws.applicative.derivedMap(F, Sb, ab));\n        fc.assert(identity);\n        fc.assert(homomorphism);\n        fc.assert(interchange);\n        fc.assert(derivedMap);\n    };\n}\nexports.applicative = applicative;\nfunction monad(M) {\n    var applicativeM = applicative(M);\n    return function (liftEq) {\n        applicativeM(function (arb) { return arb.map(M.of); }, liftEq);\n        var Sc = liftEq(Eq_1.eqBoolean);\n        var arbFa = fc.string().map(M.of);\n        var afb = function (s) { return M.of(s.length); };\n        var bfc = function (n) { return M.of(n > 2); };\n        var associativity = fc.property(arbFa, laws.chain.associativity(M, Sc, afb, bfc));\n        var Sb = liftEq(Eq_1.eqNumber);\n        var fab = M.of(function (a) { return a.length; });\n        var derivedAp = fc.property(arbFa, laws.chain.derivedAp(M, Sb, fab));\n        fc.assert(associativity);\n        fc.assert(derivedAp);\n        var arb = fc.string().map(M.of);\n        var Sa = liftEq(Eq_1.eqString);\n        var leftIdentity = fc.property(fc.string(), laws.monad.leftIdentity(M, Sb, afb));\n        var rightIdentity = fc.property(arb, laws.monad.rightIdentity(M, Sa));\n        var ab = function (s) { return s.length; };\n        var derivedMap = fc.property(arb, laws.monad.derivedMap(M, Sb, ab));\n        fc.assert(leftIdentity);\n        fc.assert(rightIdentity);\n        fc.assert(derivedMap);\n    };\n}\nexports.monad = monad;\n"]}