From b956e29728eb738b0e3125598e7306899ab95d5b Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 3 Jan 2023 14:31:53 -0500 Subject: [PATCH] focus on mjs --- Taskfile.yaml | 6 +- commonjs/constant.d.ts | 34 ------- commonjs/constant.d.ts.map | 1 - commonjs/constant.js | 44 --------- commonjs/constant.js.map | 1 - commonjs/constant.test.d.ts | 2 - commonjs/constant.test.d.ts.map | 1 - commonjs/constant.test.js | 18 ---- commonjs/constant.test.js.map | 1 - commonjs/freeze.d.ts | 19 ---- commonjs/freeze.d.ts.map | 1 - commonjs/freeze.js | 57 ------------ commonjs/freeze.js.map | 1 - commonjs/freeze.test.d.ts | 2 - commonjs/freeze.test.d.ts.map | 1 - commonjs/freeze.test.js | 61 ------------- commonjs/freeze.test.js.map | 1 - commonjs/if.d.ts | 7 -- commonjs/if.d.ts.map | 1 - commonjs/if.js | 13 --- commonjs/if.js.map | 1 - commonjs/if.test.d.ts | 2 - commonjs/if.test.d.ts.map | 1 - commonjs/if.test.js | 32 ------- commonjs/if.test.js.map | 1 - commonjs/ifElse.d.ts | 8 -- commonjs/ifElse.d.ts.map | 1 - commonjs/ifElse.js | 14 --- commonjs/ifElse.js.map | 1 - commonjs/ifElse.test.d.ts | 2 - commonjs/ifElse.test.d.ts.map | 1 - commonjs/ifElse.test.js | 43 --------- commonjs/ifElse.test.js.map | 1 - commonjs/index.d.ts | 3 - commonjs/index.d.ts.map | 1 - commonjs/index.js | 46 ---------- commonjs/index.js.map | 1 - commonjs/is.d.ts | 7 -- commonjs/is.d.ts.map | 1 - commonjs/is.js | 21 ----- commonjs/is.js.map | 1 - commonjs/is.test.d.ts | 2 - commonjs/is.test.d.ts.map | 1 - commonjs/is.test.js | 52 ----------- commonjs/is.test.js.map | 1 - commonjs/map.d.ts | 7 -- commonjs/map.d.ts.map | 1 - commonjs/map.js | 24 ----- commonjs/map.js.map | 1 - commonjs/map.test.d.ts | 2 - commonjs/map.test.d.ts.map | 1 - commonjs/map.test.js | 51 ----------- commonjs/map.test.js.map | 1 - commonjs/update.d.ts | 10 --- commonjs/update.d.ts.map | 1 - commonjs/update.js | 78 ---------------- commonjs/update.js.map | 1 - commonjs/updateIn.d.ts | 7 -- commonjs/updateIn.d.ts.map | 1 - commonjs/updateIn.js | 26 ------ commonjs/updateIn.js.map | 1 - commonjs/updateIn.test.d.ts | 2 - commonjs/updateIn.test.d.ts.map | 1 - commonjs/updateIn.test.js | 57 ------------ commonjs/updateIn.test.js.map | 1 - commonjs/updeep.bench.d.ts | 2 - commonjs/updeep.bench.d.ts.map | 1 - commonjs/updeep.bench.js | 15 ---- commonjs/updeep.bench.js.map | 1 - commonjs/updeep.test.d.ts | 2 - commonjs/updeep.test.d.ts.map | 1 - commonjs/updeep.test.js | 113 ----------------------- commonjs/updeep.test.js.map | 1 - commonjs/util/curry.d.ts | 7 -- commonjs/util/curry.d.ts.map | 1 - commonjs/util/curry.js | 123 -------------------------- commonjs/util/curry.js.map | 1 - commonjs/util/splitPath.d.ts | 2 - commonjs/util/splitPath.d.ts.map | 1 - commonjs/util/splitPath.js | 11 --- commonjs/util/splitPath.js.map | 1 - commonjs/util/splitPath.test.d.ts | 2 - commonjs/util/splitPath.test.d.ts.map | 1 - commonjs/util/splitPath.test.js | 23 ----- commonjs/util/splitPath.test.js.map | 1 - commonjs/wrap.d.ts | 3 - commonjs/wrap.d.ts.map | 1 - commonjs/wrap.js | 18 ---- commonjs/wrap.js.map | 1 - esm/if.d.ts | 2 +- esm/if.d.ts.map | 2 +- esm/ifElse.d.ts | 2 +- esm/ifElse.d.ts.map | 2 +- esm/index.d.ts | 17 +++- esm/index.d.ts.map | 2 +- esm/index.js | 23 ++--- esm/index.js.map | 2 +- esm/is.d.ts | 2 +- esm/is.d.ts.map | 2 +- esm/is.js.map | 2 +- esm/update.d.ts | 2 +- esm/update.d.ts.map | 2 +- esm/updateIn.d.ts | 2 +- esm/updateIn.d.ts.map | 2 +- package.json | 4 +- src/if.ts | 2 +- src/ifElse.ts | 2 +- src/index.ts | 24 ++--- src/is.ts | 30 +++---- src/update.ts | 2 +- src/updateIn.ts | 2 +- tsconfig-base.json | 102 +++++++++++++++++++++ tsconfig-cjs.json | 2 +- tsconfig.json | 105 +--------------------- 114 files changed, 186 insertions(+), 1279 deletions(-) delete mode 100644 commonjs/constant.d.ts delete mode 100644 commonjs/constant.d.ts.map delete mode 100644 commonjs/constant.js delete mode 100644 commonjs/constant.js.map delete mode 100644 commonjs/constant.test.d.ts delete mode 100644 commonjs/constant.test.d.ts.map delete mode 100644 commonjs/constant.test.js delete mode 100644 commonjs/constant.test.js.map delete mode 100644 commonjs/freeze.d.ts delete mode 100644 commonjs/freeze.d.ts.map delete mode 100644 commonjs/freeze.js delete mode 100644 commonjs/freeze.js.map delete mode 100644 commonjs/freeze.test.d.ts delete mode 100644 commonjs/freeze.test.d.ts.map delete mode 100644 commonjs/freeze.test.js delete mode 100644 commonjs/freeze.test.js.map delete mode 100644 commonjs/if.d.ts delete mode 100644 commonjs/if.d.ts.map delete mode 100644 commonjs/if.js delete mode 100644 commonjs/if.js.map delete mode 100644 commonjs/if.test.d.ts delete mode 100644 commonjs/if.test.d.ts.map delete mode 100644 commonjs/if.test.js delete mode 100644 commonjs/if.test.js.map delete mode 100644 commonjs/ifElse.d.ts delete mode 100644 commonjs/ifElse.d.ts.map delete mode 100644 commonjs/ifElse.js delete mode 100644 commonjs/ifElse.js.map delete mode 100644 commonjs/ifElse.test.d.ts delete mode 100644 commonjs/ifElse.test.d.ts.map delete mode 100644 commonjs/ifElse.test.js delete mode 100644 commonjs/ifElse.test.js.map delete mode 100644 commonjs/index.d.ts delete mode 100644 commonjs/index.d.ts.map delete mode 100644 commonjs/index.js delete mode 100644 commonjs/index.js.map delete mode 100644 commonjs/is.d.ts delete mode 100644 commonjs/is.d.ts.map delete mode 100644 commonjs/is.js delete mode 100644 commonjs/is.js.map delete mode 100644 commonjs/is.test.d.ts delete mode 100644 commonjs/is.test.d.ts.map delete mode 100644 commonjs/is.test.js delete mode 100644 commonjs/is.test.js.map delete mode 100644 commonjs/map.d.ts delete mode 100644 commonjs/map.d.ts.map delete mode 100644 commonjs/map.js delete mode 100644 commonjs/map.js.map delete mode 100644 commonjs/map.test.d.ts delete mode 100644 commonjs/map.test.d.ts.map delete mode 100644 commonjs/map.test.js delete mode 100644 commonjs/map.test.js.map delete mode 100644 commonjs/update.d.ts delete mode 100644 commonjs/update.d.ts.map delete mode 100644 commonjs/update.js delete mode 100644 commonjs/update.js.map delete mode 100644 commonjs/updateIn.d.ts delete mode 100644 commonjs/updateIn.d.ts.map delete mode 100644 commonjs/updateIn.js delete mode 100644 commonjs/updateIn.js.map delete mode 100644 commonjs/updateIn.test.d.ts delete mode 100644 commonjs/updateIn.test.d.ts.map delete mode 100644 commonjs/updateIn.test.js delete mode 100644 commonjs/updateIn.test.js.map delete mode 100644 commonjs/updeep.bench.d.ts delete mode 100644 commonjs/updeep.bench.d.ts.map delete mode 100644 commonjs/updeep.bench.js delete mode 100644 commonjs/updeep.bench.js.map delete mode 100644 commonjs/updeep.test.d.ts delete mode 100644 commonjs/updeep.test.d.ts.map delete mode 100644 commonjs/updeep.test.js delete mode 100644 commonjs/updeep.test.js.map delete mode 100644 commonjs/util/curry.d.ts delete mode 100644 commonjs/util/curry.d.ts.map delete mode 100644 commonjs/util/curry.js delete mode 100644 commonjs/util/curry.js.map delete mode 100644 commonjs/util/splitPath.d.ts delete mode 100644 commonjs/util/splitPath.d.ts.map delete mode 100644 commonjs/util/splitPath.js delete mode 100644 commonjs/util/splitPath.js.map delete mode 100644 commonjs/util/splitPath.test.d.ts delete mode 100644 commonjs/util/splitPath.test.d.ts.map delete mode 100644 commonjs/util/splitPath.test.js delete mode 100644 commonjs/util/splitPath.test.js.map delete mode 100644 commonjs/wrap.d.ts delete mode 100644 commonjs/wrap.d.ts.map delete mode 100644 commonjs/wrap.js delete mode 100644 commonjs/wrap.js.map create mode 100644 tsconfig-base.json diff --git a/Taskfile.yaml b/Taskfile.yaml index de4c5a3..208a3c5 100644 --- a/Taskfile.yaml +++ b/Taskfile.yaml @@ -6,12 +6,12 @@ vars: GREETING: Hello, World! tasks: + test: vitest run build: + deps: [test] cmds: - - rm -fr types/ esm/ commonjs/ + - rm -fr esm/ - tsc -p tsconfig.json - - tsc -p tsconfig-cjs.json - - tsc -p tsconfig-types.json default: cmds: - echo "{{.GREETING}}" diff --git a/commonjs/constant.d.ts b/commonjs/constant.d.ts deleted file mode 100644 index 0e17823..0000000 --- a/commonjs/constant.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -/** - * Returns a function that always returns the supplied value. - * - * Useful for replacing an object outright rather than merging it. - * - * @function - * @sig a -> (* -> a) - * @memberOf u - * @param {*} value what to return from returned function. - * @return {function} a new function that will always return value. - * - * @example - * var alwaysFour = u.constant(4); - * expect(alwaysFour(32)).toEqual(4); - * - * @example - * var user = { - * name: 'Mitch', - * favorites: { - * band: 'Nirvana', - * movie: 'The Matrix' - * } - * }; - * - * var newFavorites = { - * band: 'Coldplay' - * }; - * - * var result = u({ favorites: u.constant(newFavorites) }, user); - * - * expect(result).toEqual({ name: 'Mitch', favorites: { band: 'Coldplay' } }); - */ -export default function constant(value: T): () => Readonly; -//# sourceMappingURL=constant.d.ts.map \ No newline at end of file diff --git a/commonjs/constant.d.ts.map b/commonjs/constant.d.ts.map deleted file mode 100644 index 5a1fb8b..0000000 --- a/commonjs/constant.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"constant.d.ts","sourceRoot":"","sources":["../src/constant.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,qBAG3C"} \ No newline at end of file diff --git a/commonjs/constant.js b/commonjs/constant.js deleted file mode 100644 index 1547754..0000000 --- a/commonjs/constant.js +++ /dev/null @@ -1,44 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const freeze_js_1 = __importDefault(require("./freeze.js")); -/** - * Returns a function that always returns the supplied value. - * - * Useful for replacing an object outright rather than merging it. - * - * @function - * @sig a -> (* -> a) - * @memberOf u - * @param {*} value what to return from returned function. - * @return {function} a new function that will always return value. - * - * @example - * var alwaysFour = u.constant(4); - * expect(alwaysFour(32)).toEqual(4); - * - * @example - * var user = { - * name: 'Mitch', - * favorites: { - * band: 'Nirvana', - * movie: 'The Matrix' - * } - * }; - * - * var newFavorites = { - * band: 'Coldplay' - * }; - * - * var result = u({ favorites: u.constant(newFavorites) }, user); - * - * expect(result).toEqual({ name: 'Mitch', favorites: { band: 'Coldplay' } }); - */ -function constant(value) { - const frozen = (0, freeze_js_1.default)(value); - return () => frozen; -} -exports.default = constant; -//# sourceMappingURL=constant.js.map \ No newline at end of file diff --git a/commonjs/constant.js.map b/commonjs/constant.js.map deleted file mode 100644 index 3b5b2bc..0000000 --- a/commonjs/constant.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"constant.js","sourceRoot":"","sources":["../src/constant.ts"],"names":[],"mappings":";;;;;AAAA,4DAAiC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,SAAwB,QAAQ,CAAI,KAAQ;IAC1C,MAAM,MAAM,GAAG,IAAA,mBAAM,EAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC;AACtB,CAAC;AAHD,2BAGC"} \ No newline at end of file diff --git a/commonjs/constant.test.d.ts b/commonjs/constant.test.d.ts deleted file mode 100644 index 7a91645..0000000 --- a/commonjs/constant.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=constant.test.d.ts.map \ No newline at end of file diff --git a/commonjs/constant.test.d.ts.map b/commonjs/constant.test.d.ts.map deleted file mode 100644 index 9efc588..0000000 --- a/commonjs/constant.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"constant.test.d.ts","sourceRoot":"","sources":["../src/constant.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/constant.test.js b/commonjs/constant.test.js deleted file mode 100644 index f5653fb..0000000 --- a/commonjs/constant.test.js +++ /dev/null @@ -1,18 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const constant_js_1 = __importDefault(require("./constant.js")); -(0, vitest_1.test)("returns what it is given... constantly", () => { - const func = (0, constant_js_1.default)(4); - (0, vitest_1.expect)(func()).to.equal(4); - (0, vitest_1.expect)(func("hi")).to.equal(4); - (0, vitest_1.expect)(func("hi", 8)).to.equal(4); - (0, vitest_1.expect)(func(4)).to.equal(4); -}); -(0, vitest_1.test)("freezes the result", () => { - (0, vitest_1.expect)(Object.isFrozen((0, constant_js_1.default)({})())).toBeTruthy(); -}); -//# sourceMappingURL=constant.test.js.map \ No newline at end of file diff --git a/commonjs/constant.test.js.map b/commonjs/constant.test.js.map deleted file mode 100644 index 6b10fb5..0000000 --- a/commonjs/constant.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"constant.test.js","sourceRoot":"","sources":["../src/constant.test.ts"],"names":[],"mappings":";;;;;AAAA,mCAAgD;AAChD,gEAAqC;AAErC,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;IAChD,MAAM,IAAI,GAAQ,IAAA,qBAAQ,EAAC,CAAC,CAAC,CAAC;IAE9B,IAAA,eAAM,EAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,oBAAoB,EAAE,GAAG,EAAE;IAC5B,IAAA,eAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAA,qBAAQ,EAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;AACzD,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/freeze.d.ts b/commonjs/freeze.d.ts deleted file mode 100644 index 7ae399c..0000000 --- a/commonjs/freeze.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Deeply freeze a plain javascript object. - * - * If `process.env.NODE_ENV === 'production'`, this returns the original object - * without freezing. - * - * Or if `process.env.UPDEEP_MODE === 'dangerously_never_freeze'`, this returns the original object - * without freezing. - * - * If in a browser and built without replacing process, never freeze. - * - * @function - * @sig a -> a - * @param object Object to freeze. - * @return Frozen object, unless in production, then the same object. - */ -declare function freeze(object: T): Readonly; -export default freeze; -//# sourceMappingURL=freeze.d.ts.map \ No newline at end of file diff --git a/commonjs/freeze.d.ts.map b/commonjs/freeze.d.ts.map deleted file mode 100644 index 6057a76..0000000 --- a/commonjs/freeze.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"freeze.d.ts","sourceRoot":"","sources":["../src/freeze.ts"],"names":[],"mappings":"AAyBA;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAkBzC;AAED,eAAe,MAAM,CAAC"} \ No newline at end of file diff --git a/commonjs/freeze.js b/commonjs/freeze.js deleted file mode 100644 index c50d4f8..0000000 --- a/commonjs/freeze.js +++ /dev/null @@ -1,57 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -function isFreezable(object) { - if (object === null) - return false; - if (object instanceof RegExp) - return false; - if (object instanceof ArrayBuffer) - return false; - return Array.isArray(object) || typeof object === "object"; -} -function needsFreezing(object) { - return isFreezable(object) && !Object.isFrozen(object); -} -function recur(object) { - Object.freeze(object); - Object.keys(object).forEach((key) => { - const value = object[key]; - if (needsFreezing(value)) { - recur(value); - } - }); - return object; -} -/** - * Deeply freeze a plain javascript object. - * - * If `process.env.NODE_ENV === 'production'`, this returns the original object - * without freezing. - * - * Or if `process.env.UPDEEP_MODE === 'dangerously_never_freeze'`, this returns the original object - * without freezing. - * - * If in a browser and built without replacing process, never freeze. - * - * @function - * @sig a -> a - * @param object Object to freeze. - * @return Frozen object, unless in production, then the same object. - */ -function freeze(object) { - if (typeof process === "undefined") { - return object; - } - if (process.env.NODE_ENV === "production") { - return object; - } - if (process.env.UPDEEP_MODE === "dangerously_never_freeze") { - return object; - } - if (needsFreezing(object)) { - recur(object); - } - return object; -} -exports.default = freeze; -//# sourceMappingURL=freeze.js.map \ No newline at end of file diff --git a/commonjs/freeze.js.map b/commonjs/freeze.js.map deleted file mode 100644 index 4af9f05..0000000 --- a/commonjs/freeze.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"freeze.js","sourceRoot":"","sources":["../src/freeze.ts"],"names":[],"mappings":";;AAAA,SAAS,WAAW,CAAC,MAAe;IAClC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,MAAM,YAAY,MAAM;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,MAAM,YAAY,WAAW;QAAE,OAAO,KAAK,CAAC;IAEhD,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC;AAC7D,CAAC;AAED,SAAS,aAAa,CAAC,MAAe;IACpC,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,KAAK,CAAC,MAAM;IACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEtB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE;YACxB,KAAK,CAAC,KAAK,CAAC,CAAC;SACd;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,MAAM,CAAI,MAAS;IAC1B,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;QAClC,OAAO,MAAM,CAAC;KACf;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;QACzC,OAAO,MAAM,CAAC;KACf;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,0BAA0B,EAAE;QAC1D,OAAO,MAAM,CAAC;KACf;IAED,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE;QACzB,KAAK,CAAC,MAAM,CAAC,CAAC;KACf;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kBAAe,MAAM,CAAC"} \ No newline at end of file diff --git a/commonjs/freeze.test.d.ts b/commonjs/freeze.test.d.ts deleted file mode 100644 index ecc5984..0000000 --- a/commonjs/freeze.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=freeze.test.d.ts.map \ No newline at end of file diff --git a/commonjs/freeze.test.d.ts.map b/commonjs/freeze.test.d.ts.map deleted file mode 100644 index 07a38c1..0000000 --- a/commonjs/freeze.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"freeze.test.d.ts","sourceRoot":"","sources":["../src/freeze.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/freeze.test.js b/commonjs/freeze.test.js deleted file mode 100644 index 61e2d76..0000000 --- a/commonjs/freeze.test.js +++ /dev/null @@ -1,61 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const freeze_js_1 = __importDefault(require("./freeze.js")); -(0, vitest_1.describe)("freeze", () => { - (0, vitest_1.afterEach)(() => { - delete process.env.NODE_ENV; - }); - (0, vitest_1.test)("freezes objects", () => { - const object = {}; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object)).to.be.true; - }); - (0, vitest_1.test)("freezes nested objects", () => { - const object = { foo: { bar: 3 } }; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object.foo)).to.be.true; - }); - (0, vitest_1.test)("freezes nested arrays", () => { - const object = [[0]]; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object)).to.be.true; - (0, vitest_1.expect)(Object.isFrozen(object[0])).to.be.true; - }); - (0, vitest_1.test)("ignores functions", () => { - const object = { foo: () => 1 }; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object.foo)).to.be.false; - }); - (0, vitest_1.test)("ignores regexps", () => { - const object = { foo: /\d/ }; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object.foo)).to.be.false; - }); - (0, vitest_1.test)("does not freeze children if the parent is already frozen", () => { - const object = { foo: {} }; - Object.freeze(object); - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object.foo)).to.be.false; - }); - (0, vitest_1.test)("does not freeze in production", () => { - process.env.NODE_ENV = "production"; - const object = {}; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object)).to.be.false; - }); - (0, vitest_1.test)("handles null objects", () => { - const object = { foo: null }; - (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(Object.isFrozen(object)).to.be.true; - }); - (0, vitest_1.test)("returns the same object", () => { - const object = {}; - const result = (0, freeze_js_1.default)(object); - (0, vitest_1.expect)(result).to.equal(object); - }); -}); -//# sourceMappingURL=freeze.test.js.map \ No newline at end of file diff --git a/commonjs/freeze.test.js.map b/commonjs/freeze.test.js.map deleted file mode 100644 index dc3a672..0000000 --- a/commonjs/freeze.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"freeze.test.js","sourceRoot":"","sources":["../src/freeze.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/if.d.ts b/commonjs/if.d.ts deleted file mode 100644 index f11eafc..0000000 --- a/commonjs/if.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -interface If { - (object: any, predicate: any, trueUpdates: any): unknown; - (predicate: any, trueUpdates: any): (unknown: any) => unknown; -} -declare const _default: If; -export default _default; -//# sourceMappingURL=if.d.ts.map \ No newline at end of file diff --git a/commonjs/if.d.ts.map b/commonjs/if.d.ts.map deleted file mode 100644 index af7f764..0000000 --- a/commonjs/if.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"if.d.ts","sourceRoot":"","sources":["../src/if.ts"],"names":[],"mappings":"AAKA,UAAU,EAAE;IACV,CAAC,MAAM,KAAA,EAAE,SAAS,KAAA,EAAE,WAAW,KAAA,GAAG,OAAO,CAAC;IAC1C,CAAC,SAAS,KAAA,EAAE,WAAW,KAAA,GAAG,CAAC,OAAO,KAAA,KAAK,OAAO,CAAC;CAChD;;AAMD,wBAA+B"} \ No newline at end of file diff --git a/commonjs/if.js b/commonjs/if.js deleted file mode 100644 index 532dcd0..0000000 --- a/commonjs/if.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const remeda_1 = require("remeda"); -const ifElse_js_1 = __importDefault(require("./ifElse.js")); -const wrap_js_1 = __importDefault(require("./wrap.js")); -function _if(object, predicate, trueUpdates) { - return (0, ifElse_js_1.default)(object, predicate, trueUpdates, remeda_1.identity); -} -exports.default = (0, wrap_js_1.default)(_if); -//# sourceMappingURL=if.js.map \ No newline at end of file diff --git a/commonjs/if.js.map b/commonjs/if.js.map deleted file mode 100644 index 2b130a3..0000000 --- a/commonjs/if.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"if.js","sourceRoot":"","sources":["../src/if.ts"],"names":[],"mappings":";;;;;AAAA,mCAAkC;AAElC,4DAAiC;AACjC,wDAA6B;AAO7B,SAAS,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW;IACzC,OAAO,IAAA,mBAAM,EAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAQ,CAAC,CAAC;AAC1D,CAAC;AAED,kBAAe,IAAA,iBAAI,EAAC,GAAG,CAAO,CAAC"} \ No newline at end of file diff --git a/commonjs/if.test.d.ts b/commonjs/if.test.d.ts deleted file mode 100644 index d034164..0000000 --- a/commonjs/if.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=if.test.d.ts.map \ No newline at end of file diff --git a/commonjs/if.test.d.ts.map b/commonjs/if.test.d.ts.map deleted file mode 100644 index 1d2dd89..0000000 --- a/commonjs/if.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"if.test.d.ts","sourceRoot":"","sources":["../src/if.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/if.test.js b/commonjs/if.test.js deleted file mode 100644 index 6737398..0000000 --- a/commonjs/if.test.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const if_js_1 = __importDefault(require("./if.js")); -(0, vitest_1.describe)("if", () => { - (0, vitest_1.test)("does not update if the predicate is false", () => { - const object = { a: 0 }; - let result = (0, if_js_1.default)(false, { b: 1 }, object); - (0, vitest_1.expect)(result).to.eql(object); - result = (0, if_js_1.default)(0, false, 1); - (0, vitest_1.expect)(result).to.eql(0); - }); - (0, vitest_1.test)("does update if the predicate is true", () => { - const object = { a: 0 }; - const result = (0, if_js_1.default)(true, { b: 1 })(object); - (0, vitest_1.expect)(result).to.eql({ a: 0, b: 1 }); - }); - (0, vitest_1.test)("will use the result of a function passed as a predicate", () => { - const object = { a: 0 }; - const aIsThree = (x) => x.a === 3; - const result = (0, if_js_1.default)(aIsThree, { b: 1 }, object); - (0, vitest_1.expect)(result).to.eql({ a: 0 }); - }); - (0, vitest_1.test)("freezes the result", () => { - (0, vitest_1.expect)(Object.isFrozen((0, if_js_1.default)(true, {})({}))).to.be.true; - (0, vitest_1.expect)(Object.isFrozen((0, if_js_1.default)(false, {})({}))).to.be.true; - }); -}); -//# sourceMappingURL=if.test.js.map \ No newline at end of file diff --git a/commonjs/if.test.js.map b/commonjs/if.test.js.map deleted file mode 100644 index 9686fbf..0000000 --- a/commonjs/if.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"if.test.js","sourceRoot":"","sources":["../src/if.test.ts"],"names":[],"mappings":";;;;;AAAA,mCAAgD;AAEhD,oDAA0B;AAE1B,IAAA,iBAAQ,EAAC,IAAI,EAAE,GAAG,EAAE;IAClB,IAAA,aAAI,EAAC,2CAA2C,EAAE,GAAG,EAAE;QACrD,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,IAAI,MAAM,GAAG,IAAA,eAAG,EAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE9B,MAAM,GAAG,IAAA,eAAG,EAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,eAAG,EAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,yDAAyD,EAAE,GAAG,EAAE;QACnE,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,IAAA,eAAG,EAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAE/C,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,oBAAoB,EAAE,GAAG,EAAE;QAC9B,IAAA,eAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAA,eAAG,EAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACtD,IAAA,eAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAA,eAAG,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/ifElse.d.ts b/commonjs/ifElse.d.ts deleted file mode 100644 index e748197..0000000 --- a/commonjs/ifElse.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -type Predicate = ((source: any) => boolean) | boolean; -interface IfElse { - (object: any, predicate: Predicate, trueUpdates: any, falseUpdates: any): unknown; - (predicate: Predicate, trueUpdates: any, falseUpdates: any): (unknown: any) => unknown; -} -declare const _default: IfElse; -export default _default; -//# sourceMappingURL=ifElse.d.ts.map \ No newline at end of file diff --git a/commonjs/ifElse.d.ts.map b/commonjs/ifElse.d.ts.map deleted file mode 100644 index c085b20..0000000 --- a/commonjs/ifElse.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ifElse.d.ts","sourceRoot":"","sources":["../src/ifElse.ts"],"names":[],"mappings":"AAWA,KAAK,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,OAAO,CAAC;AAEtD,UAAU,MAAM;IACd,CAAC,MAAM,KAAA,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,KAAA,EAAE,YAAY,KAAA,GAAG,OAAO,CAAC;IACnE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,KAAA,EAAE,YAAY,KAAA,GAAG,CAAC,OAAO,KAAA,KAAK,OAAO,CAAC;CACzE;;AAED,wBAA4C"} \ No newline at end of file diff --git a/commonjs/ifElse.js b/commonjs/ifElse.js deleted file mode 100644 index 9232db9..0000000 --- a/commonjs/ifElse.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const update_js_1 = __importDefault(require("./update.js")); -const wrap_js_1 = __importDefault(require("./wrap.js")); -function updateIfElse(object, predicate, trueUpdates, falseUpdates) { - const test = typeof predicate === "function" ? predicate(object) : predicate; - const updates = test ? trueUpdates : falseUpdates; - return (0, update_js_1.default)(object, updates); -} -exports.default = (0, wrap_js_1.default)(updateIfElse); -//# sourceMappingURL=ifElse.js.map \ No newline at end of file diff --git a/commonjs/ifElse.js.map b/commonjs/ifElse.js.map deleted file mode 100644 index 4a872b9..0000000 --- a/commonjs/ifElse.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ifElse.js","sourceRoot":"","sources":["../src/ifElse.ts"],"names":[],"mappings":";;;;;AAAA,4DAAiC;AACjC,wDAA6B;AAE7B,SAAS,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY;IAChE,MAAM,IAAI,GAAG,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7E,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;IAElD,OAAO,IAAA,mBAAM,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC;AASD,kBAAe,IAAA,iBAAI,EAAC,YAAY,CAAW,CAAC"} \ No newline at end of file diff --git a/commonjs/ifElse.test.d.ts b/commonjs/ifElse.test.d.ts deleted file mode 100644 index d8022ab..0000000 --- a/commonjs/ifElse.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=ifElse.test.d.ts.map \ No newline at end of file diff --git a/commonjs/ifElse.test.d.ts.map b/commonjs/ifElse.test.d.ts.map deleted file mode 100644 index 6ed44d0..0000000 --- a/commonjs/ifElse.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ifElse.test.d.ts","sourceRoot":"","sources":["../src/ifElse.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/ifElse.test.js b/commonjs/ifElse.test.js deleted file mode 100644 index 824763e..0000000 --- a/commonjs/ifElse.test.js +++ /dev/null @@ -1,43 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const ifElse_js_1 = __importDefault(require("./ifElse.js")); -const if_js_1 = __importDefault(require("./if.js")); -(0, vitest_1.describe)("ifElse", () => { - (0, vitest_1.test)("does updates with the else if the predicate is false", () => { - const object = { a: 0 }; - const result = (0, ifElse_js_1.default)(false, { b: 1 }, { b: 2 })(object); - (0, vitest_1.expect)(result).to.eql({ a: 0, b: 2 }); - }); - (0, vitest_1.test)("updates with the true update if the predicate is true", () => { - const object = { a: 0 }; - const result = (0, ifElse_js_1.default)(true, { b: 1 }, { b: 4 })(object); - (0, vitest_1.expect)(result).to.eql({ a: 0, b: 1 }); - }); - (0, vitest_1.test)("will use the result of a function passed as a predicate", () => { - const object = { a: 0 }; - const aIsThree = (x) => x.a === 3; - const result = (0, ifElse_js_1.default)(aIsThree, { b: 1 }, { b: 4 })(object); - (0, vitest_1.expect)(result).to.eql({ a: 0, b: 4 }); - }); - (0, vitest_1.test)("freezes the result", () => { - (0, vitest_1.expect)(Object.isFrozen((0, ifElse_js_1.default)(true, {}, {})({}))).to.be.true; - (0, vitest_1.expect)(Object.isFrozen((0, ifElse_js_1.default)(false, {}, {})({}))).to.be.true; - }); -}); -(0, vitest_1.describe)("if", () => { - (0, vitest_1.test)("does updates with the else if the predicate is false", () => { - const object = { a: 0 }; - const result = (0, if_js_1.default)(false, { b: 1 })(object); - (0, vitest_1.expect)(result).not.toHaveProperty("b"); - }); - (0, vitest_1.test)("updates with the true update if the predicate is true", () => { - const object = { a: 0 }; - const result = (0, if_js_1.default)(true, { b: 1 })(object); - (0, vitest_1.expect)(result).to.eql({ a: 0, b: 1 }); - }); -}); -//# sourceMappingURL=ifElse.test.js.map \ No newline at end of file diff --git a/commonjs/ifElse.test.js.map b/commonjs/ifElse.test.js.map deleted file mode 100644 index 4af4dda..0000000 --- a/commonjs/ifElse.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ifElse.test.js","sourceRoot":"","sources":["../src/ifElse.test.ts"],"names":[],"mappings":";;;;;AAAA,mCAAgD;AAEhD,4DAAiC;AACjC,oDAA0B;AAE1B,IAAA,iBAAQ,EAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,IAAA,aAAI,EAAC,sDAAsD,EAAE,GAAG,EAAE;QAChE,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACzD,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,uDAAuD,EAAE,GAAG,EAAE;QACjE,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,mBAAM,EAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACxD,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,yDAAyD,EAAE,GAAG,EAAE;QACnE,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,IAAA,mBAAM,EAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAE5D,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,oBAAoB,EAAE,GAAG,EAAE;QAC9B,IAAA,eAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAA,mBAAM,EAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC7D,IAAA,eAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAA,mBAAM,EAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,iBAAQ,EAAC,IAAI,EAAE,GAAG,EAAE;IAClB,IAAA,aAAI,EAAC,sDAAsD,EAAE,GAAG,EAAE;QAChE,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,eAAG,EAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,uDAAuD,EAAE,GAAG,EAAE;QACjE,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAA,eAAG,EAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/index.d.ts b/commonjs/index.d.ts deleted file mode 100644 index 49c130d..0000000 --- a/commonjs/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare const u: any; -export default u; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/commonjs/index.d.ts.map b/commonjs/index.d.ts.map deleted file mode 100644 index e29798d..0000000 --- a/commonjs/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,CAAC,EAAE,GAAY,CAAC;AAWtB,eAAe,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/index.js b/commonjs/index.js deleted file mode 100644 index 75b0886..0000000 --- a/commonjs/index.js +++ /dev/null @@ -1,46 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const freeze_js_1 = __importDefault(require("./freeze.js")); -const is_js_1 = __importDefault(require("./is.js")); -const if_js_1 = __importDefault(require("./if.js")); -const ifElse_js_1 = __importDefault(require("./ifElse.js")); -const update_js_1 = __importStar(require("./update.js")); -const updateIn_js_1 = __importDefault(require("./updateIn.js")); -const constant_js_1 = __importDefault(require("./constant.js")); -const u = update_js_1.default; -u.constant = constant_js_1.default; -u.if = if_js_1.default; -u.ifElse = ifElse_js_1.default; -u.is = is_js_1.default; -u.freeze = freeze_js_1.default; -u.update = update_js_1.default; -u.updateIn = updateIn_js_1.default; -u.omitted = update_js_1.omitted; -exports.default = u; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/commonjs/index.js.map b/commonjs/index.js.map deleted file mode 100644 index fc5b3d3..0000000 --- a/commonjs/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAAiC;AACjC,oDAAyB;AACzB,oDAA0B;AAC1B,4DAAiC;AACjC,yDAA8C;AAC9C,gEAAqC;AACrC,gEAAqC;AAErC,MAAM,CAAC,GAAQ,mBAAM,CAAC;AAEtB,CAAC,CAAC,QAAQ,GAAG,qBAAQ,CAAC;AACtB,CAAC,CAAC,EAAE,GAAG,eAAG,CAAC;AACX,CAAC,CAAC,MAAM,GAAG,mBAAM,CAAC;AAClB,CAAC,CAAC,EAAE,GAAG,eAAE,CAAC;AACV,CAAC,CAAC,MAAM,GAAG,mBAAM,CAAC;AAClB,CAAC,CAAC,MAAM,GAAG,mBAAM,CAAC;AAClB,CAAC,CAAC,QAAQ,GAAG,qBAAQ,CAAC;AACtB,CAAC,CAAC,OAAO,GAAG,mBAAO,CAAC;AAEpB,kBAAe,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/is.d.ts b/commonjs/is.d.ts deleted file mode 100644 index bb1ddfd..0000000 --- a/commonjs/is.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -interface Is { - (object: any, path: string | number | (number | string)[], predicate: any): boolean; - (path: string | number | (number | string)[], predicate: any): (object: any) => boolean; -} -declare const _default: Is; -export default _default; -//# sourceMappingURL=is.d.ts.map \ No newline at end of file diff --git a/commonjs/is.d.ts.map b/commonjs/is.d.ts.map deleted file mode 100644 index 25c05b7..0000000 --- a/commonjs/is.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"is.d.ts","sourceRoot":"","sources":["../src/is.ts"],"names":[],"mappings":"AAsBA,UAAU,EAAE;IACR,CAAC,MAAM,KAAA,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,SAAS,KAAA,GAAG,OAAO,CAAC;IAC1E,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,SAAS,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,OAAO,CAAC;CACjF;;AAED,wBAA+B"} \ No newline at end of file diff --git a/commonjs/is.js b/commonjs/is.js deleted file mode 100644 index 38aef16..0000000 --- a/commonjs/is.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const splitPath_js_1 = __importDefault(require("./util/splitPath.js")); -const wrap_js_1 = __importDefault(require("./wrap.js")); -function _is(object, path, predicate) { - const parts = (0, splitPath_js_1.default)(path); - for (const part of parts) { - if (typeof object === "undefined") - return false; - object = object[part]; - } - if (typeof predicate === "function") { - return predicate(object); - } - return predicate === object; -} -exports.default = (0, wrap_js_1.default)(_is); -//# sourceMappingURL=is.js.map \ No newline at end of file diff --git a/commonjs/is.js.map b/commonjs/is.js.map deleted file mode 100644 index 6587f62..0000000 --- a/commonjs/is.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"is.js","sourceRoot":"","sources":["../src/is.ts"],"names":[],"mappings":";;;;;AAAA,uEAA4C;AAC5C,wDAA6B;AAE7B,SAAS,GAAG,CACR,MAAM,EACN,IAA2C,EAC3C,SAAS;IAET,MAAM,KAAK,GAAG,IAAA,sBAAS,EAAC,IAAI,CAAC,CAAC;IAE9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;KACzB;IAED,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;QACjC,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;KAC5B;IAED,OAAO,SAAS,KAAK,MAAM,CAAC;AAChC,CAAC;AAOD,kBAAe,IAAA,iBAAI,EAAC,GAAG,CAAO,CAAC"} \ No newline at end of file diff --git a/commonjs/is.test.d.ts b/commonjs/is.test.d.ts deleted file mode 100644 index ed225e5..0000000 --- a/commonjs/is.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=is.test.d.ts.map \ No newline at end of file diff --git a/commonjs/is.test.d.ts.map b/commonjs/is.test.d.ts.map deleted file mode 100644 index 1e7cd13..0000000 --- a/commonjs/is.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"is.test.d.ts","sourceRoot":"","sources":["../src/is.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/is.test.js b/commonjs/is.test.js deleted file mode 100644 index 99dc03a..0000000 --- a/commonjs/is.test.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const is_js_1 = __importDefault(require("./is.js")); -(0, vitest_1.test)("returns true if path matches a value predicate", () => { - const result = (0, is_js_1.default)({ a: { b: 4 } }, "a.b", 4); - (0, vitest_1.expect)(result).to.be.true; -}); -(0, vitest_1.test)("returns true if path matches a function predicate", () => { - const isEven = (x) => x % 2 === 0; - const result = (0, is_js_1.default)("a.b", isEven)({ a: { b: 6 } }); - (0, vitest_1.expect)(result).to.be.true; -}); -(0, vitest_1.test)("returns false if path matches a value predicate", () => { - const result = (0, is_js_1.default)("a.b", 4)({ a: { b: 5 } }); - (0, vitest_1.expect)(result).to.be.false; -}); -(0, vitest_1.test)("returns false if path matches a function predicate", () => { - const isEven = (x) => x % 2 === 0; - const result = (0, is_js_1.default)("a.b", isEven)({ a: { b: 7 } }); - (0, vitest_1.expect)(result).to.be.false; -}); -(0, vitest_1.test)("returns false if the path does not exist", () => { - const result = (0, is_js_1.default)("a.b.c.d", 4)({ a: { b: {} } }); - (0, vitest_1.expect)(result).to.be.false; -}); -(0, vitest_1.test)("can test for undefined", () => { - const result = (0, is_js_1.default)("a.b.c", undefined)({ a: { b: {} } }); - (0, vitest_1.expect)(result).to.be.true; -}); -(0, vitest_1.test)("tests the actual object if a blank path is given", () => { - const result = (0, is_js_1.default)(4, "", 4); - (0, vitest_1.expect)(result).toBeTruthy(); -}); -(0, vitest_1.test)("can use arrays as paths", () => { - const result = (0, is_js_1.default)(["a", "b"], 4)({ a: { b: 4 } }); - (0, vitest_1.expect)(result).to.be.true; -}); -(0, vitest_1.test)("can include array indexes in paths", () => { - let result = (0, is_js_1.default)("a.1.b", 4)({ a: [{}, { b: 4 }] }); - (0, vitest_1.expect)(result).to.be.true; - result = (0, is_js_1.default)(["a", 1, "b"], 4)({ a: [{}, { b: 4 }] }); - (0, vitest_1.expect)(result).to.be.true; -}); -(0, vitest_1.test)("can be partially applied", () => { - const result = (0, is_js_1.default)("a.b", 4)({ a: { b: 4 } }); - (0, vitest_1.expect)(result).to.be.true; -}); -//# sourceMappingURL=is.test.js.map \ No newline at end of file diff --git a/commonjs/is.test.js.map b/commonjs/is.test.js.map deleted file mode 100644 index d7e4cc6..0000000 --- a/commonjs/is.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"is.test.js","sourceRoot":"","sources":["../src/is.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/map.d.ts b/commonjs/map.d.ts deleted file mode 100644 index a4e9f5a..0000000 --- a/commonjs/map.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -interface Map { - (object: any, iteratee: any): any; - (iteratee: any): (object: any) => any; -} -declare const _default: Map; -export default _default; -//# sourceMappingURL=map.d.ts.map \ No newline at end of file diff --git a/commonjs/map.d.ts.map b/commonjs/map.d.ts.map deleted file mode 100644 index f7f85d8..0000000 --- a/commonjs/map.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":"AAuBA,UAAU,GAAG;IACX,CAAC,MAAM,KAAA,EAAE,QAAQ,KAAA,GAAG,GAAG,CAAC;IACxB,CAAC,QAAQ,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CAC7B;;AAED,wBAAgC"} \ No newline at end of file diff --git a/commonjs/map.js b/commonjs/map.js deleted file mode 100644 index e1998fc..0000000 --- a/commonjs/map.js +++ /dev/null @@ -1,24 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const remeda_1 = require("remeda"); -const update_js_1 = __importDefault(require("./update.js")); -const wrap_js_1 = __importDefault(require("./wrap.js")); -function shallowEqual(object, otherObject) { - for (const k in otherObject) { - if (otherObject[k] !== object[k]) - return false; - } - return true; -} -function map(object, iteratee) { - const updater = typeof iteratee === "function" ? iteratee : (0, update_js_1.default)(iteratee); - const mapper = Array.isArray(object) ? remeda_1.map.indexed : remeda_1.mapValues; - const newObject = mapper(object, updater); - const equal = shallowEqual(object, newObject); - return equal ? object : newObject; -} -exports.default = (0, wrap_js_1.default)(map); -//# sourceMappingURL=map.js.map \ No newline at end of file diff --git a/commonjs/map.js.map b/commonjs/map.js.map deleted file mode 100644 index d643afa..0000000 --- a/commonjs/map.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"map.js","sourceRoot":"","sources":["../src/map.ts"],"names":[],"mappings":";;;;;AAAA,mCAAgD;AAEhD,4DAAiC;AACjC,wDAA6B;AAE7B,SAAS,YAAY,CAAC,MAAM,EAAE,WAAW;IACvC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE;QAC3B,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;KAChD;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,GAAG,CAAC,MAAM,EAAE,QAAQ;IAC3B,MAAM,OAAO,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,mBAAM,EAAC,QAAQ,CAAC,CAAC;IAE7E,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAI,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAS,CAAC;IAEhE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpC,CAAC;AAOD,kBAAe,IAAA,iBAAI,EAAC,GAAG,CAAQ,CAAC"} \ No newline at end of file diff --git a/commonjs/map.test.d.ts b/commonjs/map.test.d.ts deleted file mode 100644 index 3be85f6..0000000 --- a/commonjs/map.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=map.test.d.ts.map \ No newline at end of file diff --git a/commonjs/map.test.d.ts.map b/commonjs/map.test.d.ts.map deleted file mode 100644 index ef09e8b..0000000 --- a/commonjs/map.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"map.test.d.ts","sourceRoot":"","sources":["../src/map.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/map.test.js b/commonjs/map.test.js deleted file mode 100644 index 1c17be1..0000000 --- a/commonjs/map.test.js +++ /dev/null @@ -1,51 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const map_js_1 = __importDefault(require("./map.js")); -(0, vitest_1.describe)("map", () => { - (0, vitest_1.test)("applies updates to each item in an array", () => { - const object = [0, 1, 2]; - const inc = (x) => x + 1; - const result = (0, map_js_1.default)(object, inc); - (0, vitest_1.expect)(result).to.eql([1, 2, 3]); - }); - (0, vitest_1.test)("applies updates to each value in an object", () => { - const object = { a: 0, b: 1, c: 2 }; - const inc = (x) => x + 1; - const result = (0, map_js_1.default)(inc)(object); - (0, vitest_1.expect)(result).to.eql({ a: 1, b: 2, c: 3 }); - }); - (0, vitest_1.test)("can update with a regular updates object", () => { - const object = [{ a: 0 }, { a: 0 }]; - const result = (0, map_js_1.default)({ a: 1 })(object); - (0, vitest_1.expect)(result).to.eql([{ a: 1 }, { a: 1 }]); - }); - (0, vitest_1.test)("returns the same object if no updates are made", () => { - const array = [0, 1]; - const ident = (x) => x; - let result = (0, map_js_1.default)(ident)(array); - (0, vitest_1.expect)(result).to.equal(array); - const object = { a: 0 }; - result = (0, map_js_1.default)(ident)(object); - (0, vitest_1.expect)(result).to.equal(object); - }); - (0, vitest_1.test)("passes the key or index as the second parameter to the iteratee", () => { - const object = { - a: { x: 0 }, - b: [3, 3], - }; - const setToKey = (_, key) => key; - const result = (0, map_js_1.default)(object, (0, map_js_1.default)(setToKey)); - (0, vitest_1.expect)(result).to.eql({ - a: { x: "x" }, - b: [0, 1], - }); - }); - (0, vitest_1.test)("freezes the result", () => { - (0, vitest_1.expect)(Object.isFrozen((0, map_js_1.default)({}, {}))).to.be.true; - }); -}); -//# sourceMappingURL=map.test.js.map \ No newline at end of file diff --git a/commonjs/map.test.js.map b/commonjs/map.test.js.map deleted file mode 100644 index ecbc6cd..0000000 --- a/commonjs/map.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"map.test.js","sourceRoot":"","sources":["../src/map.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/update.d.ts b/commonjs/update.d.ts deleted file mode 100644 index 8c488f3..0000000 --- a/commonjs/update.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare const omitted: () => Readonly<{ - __omitted: boolean; -}>; -interface Update { - (object: any, func: any): any; - (func: any): (object: any) => any; -} -declare const _default: Update; -export default _default; -//# sourceMappingURL=update.d.ts.map \ No newline at end of file diff --git a/commonjs/update.d.ts.map b/commonjs/update.d.ts.map deleted file mode 100644 index d6c776f..0000000 --- a/commonjs/update.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO;;EAAyB,CAAC;AAkG9C,UAAU,MAAM;IACd,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,GAAG,GAAG,CAAC;IACpB,CAAC,IAAI,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CACzB;;AAED,wBAAsC"} \ No newline at end of file diff --git a/commonjs/update.js b/commonjs/update.js deleted file mode 100644 index 2667f61..0000000 --- a/commonjs/update.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.omitted = void 0; -const wrap_js_1 = __importDefault(require("./wrap.js")); -const constant_js_1 = __importDefault(require("./constant.js")); -const remeda_1 = require("remeda"); -const innerOmitted = { __omitted: true }; -exports.omitted = (0, constant_js_1.default)(innerOmitted); -function isEmpty(object) { - return !Object.keys(object).length; -} -function reduce(object, callback, initialValue) { - return Object.keys(object).reduce((acc, key) => callback(acc, object[key], key), initialValue); -} -function resolveUpdates(updates, object) { - return reduce(updates, (acc, value, key) => { - let updatedValue = value; - if (!Array.isArray(value) && - value !== null && - typeof value === "object") { - updatedValue = update(object[key], value); // eslint-disable-line no-use-before-define - } - else if (typeof value === "function") { - updatedValue = value(object[key]); - } - if (object[key] !== updatedValue) { - acc[key] = updatedValue; // eslint-disable-line no-param-reassign - } - return acc; - }, {}); -} -function updateArray(updates, object) { - const newArray = [...object]; - Object.keys(updates).forEach((key) => { - newArray[key] = updates[key]; - }); - return newArray; -} -const isPlainObject = (value) => (value === null || value === void 0 ? void 0 : value.constructor) === Object; -/** - * Recursively update an object or array. - * - * Can update with values: - * update({ foo: 3 }, { foo: 1, bar: 2 }); - * // => { foo: 3, bar: 2 } - * - * Or with a function: - * update({ foo: x => (x + 1) }, { foo: 2 }); - * // => { foo: 3 } - * - * @function - * @name update - * @param {Object|Function} updates - * @param {Object|Array} object to update - * @return {Object|Array} new object with modifications - */ -function update(object, updates) { - if (typeof updates === "function") { - return updates(object); - } - if (!isPlainObject(updates)) { - return updates; - } - const defaultedObject = typeof object === "undefined" || object === null ? {} : object; - const resolvedUpdates = resolveUpdates(updates, defaultedObject); - if (isEmpty(resolvedUpdates)) { - return defaultedObject; - } - if (Array.isArray(defaultedObject)) { - return updateArray(resolvedUpdates, defaultedObject).filter((value) => value !== innerOmitted); - } - return (0, remeda_1.omitBy)(Object.assign(Object.assign({}, defaultedObject), resolvedUpdates), (value) => value === innerOmitted); -} -exports.default = (0, wrap_js_1.default)(update); -//# sourceMappingURL=update.js.map \ No newline at end of file diff --git a/commonjs/update.js.map b/commonjs/update.js.map deleted file mode 100644 index b6b210d..0000000 --- a/commonjs/update.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"update.js","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/updateIn.d.ts b/commonjs/updateIn.d.ts deleted file mode 100644 index f559b67..0000000 --- a/commonjs/updateIn.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -interface UpdateIn { - (object: any, path: any, value: any): any; - (path: any, value: any): (object: any) => any; -} -declare const _default: UpdateIn; -export default _default; -//# sourceMappingURL=updateIn.d.ts.map \ No newline at end of file diff --git a/commonjs/updateIn.d.ts.map b/commonjs/updateIn.d.ts.map deleted file mode 100644 index 488ee8e..0000000 --- a/commonjs/updateIn.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updateIn.d.ts","sourceRoot":"","sources":["../src/updateIn.ts"],"names":[],"mappings":"AA4BA,UAAU,QAAQ;IAChB,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,KAAK,KAAA,GAAG,GAAG,CAAC;IAC3B,CAAC,IAAI,KAAA,EAAE,KAAK,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CAChC;;AAED,wBAA0C"} \ No newline at end of file diff --git a/commonjs/updateIn.js b/commonjs/updateIn.js deleted file mode 100644 index 5b95e31..0000000 --- a/commonjs/updateIn.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const update_js_1 = __importDefault(require("./update.js")); -const splitPath_js_1 = __importDefault(require("./util/splitPath.js")); -const wrap_js_1 = __importDefault(require("./wrap.js")); -const map_js_1 = __importDefault(require("./map.js")); -const wildcard = "*"; -function reducePath(acc, key) { - if (key === wildcard) { - return (value) => Object.prototype.hasOwnProperty.call(value, wildcard) - ? // If we actually have wildcard as a property, update that - (0, update_js_1.default)(value, { [wildcard]: acc }) - : // Otherwise map over all properties - (0, map_js_1.default)(value, acc); - } - return { [key]: acc }; -} -function updateIn(object, path, value) { - const updates = (0, splitPath_js_1.default)(path).reduceRight(reducePath, value); - return (0, update_js_1.default)(object, updates); -} -exports.default = (0, wrap_js_1.default)(updateIn); -//# sourceMappingURL=updateIn.js.map \ No newline at end of file diff --git a/commonjs/updateIn.js.map b/commonjs/updateIn.js.map deleted file mode 100644 index 5e8fadc..0000000 --- a/commonjs/updateIn.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updateIn.js","sourceRoot":"","sources":["../src/updateIn.ts"],"names":[],"mappings":";;;;;AAEA,4DAAiC;AACjC,uEAA4C;AAC5C,wDAA6B;AAC7B,sDAA2B;AAE3B,MAAM,QAAQ,GAAG,GAAG,CAAC;AAErB,SAAS,UAAU,CAAC,GAAG,EAAE,GAAG;IAC1B,IAAI,GAAG,KAAK,QAAQ,EAAE;QACpB,OAAO,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC;YACnD,CAAC,CAAC,0DAA0D;gBAC1D,IAAA,mBAAM,EAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;YACpC,CAAC,CAAC,oCAAoC;gBACpC,IAAA,gBAAG,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC;KACvB;IAED,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK;IACnC,MAAM,OAAO,GAAG,IAAA,sBAAS,EAAC,IAAI,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAE/D,OAAO,IAAA,mBAAM,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC;AAOD,kBAAe,IAAA,iBAAI,EAAC,QAAQ,CAAa,CAAC"} \ No newline at end of file diff --git a/commonjs/updateIn.test.d.ts b/commonjs/updateIn.test.d.ts deleted file mode 100644 index 6a23d85..0000000 --- a/commonjs/updateIn.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=updateIn.test.d.ts.map \ No newline at end of file diff --git a/commonjs/updateIn.test.d.ts.map b/commonjs/updateIn.test.d.ts.map deleted file mode 100644 index 6be947e..0000000 --- a/commonjs/updateIn.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updateIn.test.d.ts","sourceRoot":"","sources":["../src/updateIn.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/updateIn.test.js b/commonjs/updateIn.test.js deleted file mode 100644 index 0b38733..0000000 --- a/commonjs/updateIn.test.js +++ /dev/null @@ -1,57 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const updateIn_js_1 = __importDefault(require("./updateIn.js")); -(0, vitest_1.describe)("updateIn", () => { - (0, vitest_1.test)("can update a single path described with a string", () => { - const object = { a: { b: 0 } }; - const result = (0, updateIn_js_1.default)("a.b", 3)(object); - (0, vitest_1.expect)(result).to.eql({ a: { b: 3 } }); - }); - (0, vitest_1.test)("can update a single path described with a string with a function", () => { - const inc = (x) => x + 1; - const object = { a: { b: 0 } }; - const result = (0, updateIn_js_1.default)("a.b", inc)(object); - (0, vitest_1.expect)(result).to.eql({ a: { b: 1 } }); - }); - (0, vitest_1.test)("can update a single path described with an array", () => { - const object = { a: { b: 0 } }; - const result = (0, updateIn_js_1.default)(["a", "b"], 3)(object); - (0, vitest_1.expect)(result).to.eql({ a: { b: 3 } }); - }); - (0, vitest_1.test)("can update arrays", () => { - const object = { a: [0, 0, 0] }; - const result = (0, updateIn_js_1.default)("a.1", 3)(object); - (0, vitest_1.expect)(result).to.eql({ a: [0, 3, 0] }); - }); - (0, vitest_1.test)("can be partially applied", () => { - const object = { a: { b: 0 } }; - const result = (0, updateIn_js_1.default)("a.b", 3)(object); - (0, vitest_1.expect)(result).to.eql({ a: { b: 3 } }); - }); - (0, vitest_1.test)("replaces the object outright if the path is empty", () => { - const object = {}; - const result = (0, updateIn_js_1.default)("", 3)(object); - (0, vitest_1.expect)(result).to.equal(3); - }); - (0, vitest_1.test)("freezes the result", () => { - (0, vitest_1.expect)(Object.isFrozen((0, updateIn_js_1.default)("a", 0)({}))).to.be.true; - }); - (0, vitest_1.test)("can multiple elements of an array with *", () => { - let object = { a: [{ b: 0 }, { b: 1 }, { b: 2 }] }; - let result = (0, updateIn_js_1.default)("a.*.b", (x) => x + 1)(object); - (0, vitest_1.expect)(result).to.eql({ a: [{ b: 1 }, { b: 2 }, { b: 3 }] }); - object = { a: [0, 1, 2] }; - result = (0, updateIn_js_1.default)(["a", "*"], (x) => x + 1)(object); - (0, vitest_1.expect)(result).to.eql({ a: [1, 2, 3] }); - }); - (0, vitest_1.test)("can update properties named *", () => { - const object = { "*": 1, x: 1 }; - const result = (0, updateIn_js_1.default)("*", (x) => x + 1)(object); - (0, vitest_1.expect)(result).to.eql({ "*": 2, x: 1 }); - }); -}); -//# sourceMappingURL=updateIn.test.js.map \ No newline at end of file diff --git a/commonjs/updateIn.test.js.map b/commonjs/updateIn.test.js.map deleted file mode 100644 index 64bfef6..0000000 --- a/commonjs/updateIn.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updateIn.test.js","sourceRoot":"","sources":["../src/updateIn.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/updeep.bench.d.ts b/commonjs/updeep.bench.d.ts deleted file mode 100644 index 87237b2..0000000 --- a/commonjs/updeep.bench.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=updeep.bench.d.ts.map \ No newline at end of file diff --git a/commonjs/updeep.bench.d.ts.map b/commonjs/updeep.bench.d.ts.map deleted file mode 100644 index 393d6cf..0000000 --- a/commonjs/updeep.bench.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updeep.bench.d.ts","sourceRoot":"","sources":["../src/updeep.bench.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/updeep.bench.js b/commonjs/updeep.bench.js deleted file mode 100644 index c182b6f..0000000 --- a/commonjs/updeep.bench.js +++ /dev/null @@ -1,15 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const updeep_1 = __importDefault(require("updeep")); -const index_js_1 = __importDefault(require("./index.js")); -const vitest_1 = require("vitest"); -(0, vitest_1.bench)("original, simple update", () => { - updeep_1.default({ a: 1 })({ a: 2, b: 3 }); -}); -(0, vitest_1.bench)("contender, simple update", () => { - (0, index_js_1.default)({ a: 1 })({ a: 2, b: 3 }); -}); -//# sourceMappingURL=updeep.bench.js.map \ No newline at end of file diff --git a/commonjs/updeep.bench.js.map b/commonjs/updeep.bench.js.map deleted file mode 100644 index af08aea..0000000 --- a/commonjs/updeep.bench.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updeep.bench.js","sourceRoot":"","sources":["../src/updeep.bench.ts"],"names":[],"mappings":";;;;;AAAA,oDAA8B;AAC9B,0DAAmC;AAEnC,mCAA+B;AAE/B,IAAA,cAAK,EAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,IAAA,cAAK,EAAC,0BAA0B,EAAE,GAAG,EAAE;IACrC,IAAA,kBAAS,EAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/updeep.test.d.ts b/commonjs/updeep.test.d.ts deleted file mode 100644 index c9a3e6b..0000000 --- a/commonjs/updeep.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=updeep.test.d.ts.map \ No newline at end of file diff --git a/commonjs/updeep.test.d.ts.map b/commonjs/updeep.test.d.ts.map deleted file mode 100644 index 96f1294..0000000 --- a/commonjs/updeep.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updeep.test.d.ts","sourceRoot":"","sources":["../src/updeep.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/updeep.test.js b/commonjs/updeep.test.js deleted file mode 100644 index c7ed2ad..0000000 --- a/commonjs/updeep.test.js +++ /dev/null @@ -1,113 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const index_js_1 = __importDefault(require("./index.js")); -(0, vitest_1.it)("does not change anything if no updates are specified", () => { - const object = { foo: 3, bar: [7, 5] }; - const result = (0, index_js_1.default)(object, {}); - (0, vitest_1.expect)(result).to.equal(object); -}); -(0, vitest_1.it)("can update with fixed values", () => { - const object = { foo: 3, bar: [7, 5] }; - const result = (0, index_js_1.default)(object, { foo: 4 }); - (0, vitest_1.expect)(result).to.deep.equal({ foo: 4, bar: [7, 5] }); -}); -(0, vitest_1.it)("returns the same instance if an update doesn't make changes", () => { - const object = { foo: 3 }; - const result = (0, index_js_1.default)({ foo: 3 })(object); - (0, vitest_1.expect)(result).to.equal(object); -}); -(0, vitest_1.it)("can update a nested structure", () => { - const object = { foo: { bar: 7, bam: 3 }, baz: 32 }; - const result = (0, index_js_1.default)({ foo: { bar: 8 } })(object); - (0, vitest_1.expect)(result).to.deep.equal({ foo: { bar: 8, bam: 3 }, baz: 32 }); -}); -(0, vitest_1.it)("can update arrays", () => { - const object = [1, 2, 3]; - const result = (0, index_js_1.default)({ 1: 7 })(object); - (0, vitest_1.expect)(result).to.deep.equal([1, 7, 3]); -}); -(0, vitest_1.it)("replaces the object outright if updates are a constant", () => { - (0, vitest_1.expect)((0, index_js_1.default)(3)({})).to.equal(3); - (0, vitest_1.expect)((0, index_js_1.default)(null)({})).to.be.null; -}); -(0, vitest_1.it)("can add an element to an array", () => { - const object = []; - const result = (0, index_js_1.default)({ 0: 3 })(object); - (0, vitest_1.expect)(result).to.eql([3]); -}); -(0, vitest_1.it)("can update nested arrays", () => { - const object = { foo: [1, 2, 3], bar: 9 }; - const result = (0, index_js_1.default)({ foo: { 1: 7 } })(object); - (0, vitest_1.expect)(result).to.deep.equal({ foo: [1, 7, 3], bar: 9 }); -}); -(0, vitest_1.it)("can use functions to update values", () => { - const inc = (i) => i + 1; - const object = { foo: 3, bar: 4, baz: 7 }; - const result = (0, index_js_1.default)({ foo: inc, bar: inc })(object); - (0, vitest_1.expect)(result).to.deep.equal({ foo: 4, bar: 5, baz: 7 }); -}); -(0, vitest_1.it)("can be partially applied", () => { - const inc = (i) => i + 1; - const object = { foo: 3 }; - const incFoo = (0, index_js_1.default)({ foo: inc }); - const result = incFoo(object); - (0, vitest_1.expect)(result).to.deep.equal({ foo: 4 }); -}); -(0, vitest_1.it)("can update if the value is an array", () => { - const object = {}; - const result = (0, index_js_1.default)({ foo: [0, 1] })(object); - (0, vitest_1.expect)(result).to.deep.equal({ foo: [0, 1] }); -}); -(0, vitest_1.it)("can update when original object is undefined", () => { - const result = (0, index_js_1.default)({ foo: [0, 1] })(undefined); - (0, vitest_1.expect)(result).to.deep.equal({ foo: [0, 1] }); -}); -(0, vitest_1.it)("can take a function as the updater", () => { - const result = (0, index_js_1.default)((i) => i + 1)(7); - (0, vitest_1.expect)(result).to.eql(8); -}); -(0, vitest_1.it)("deeply freezes the result", () => { - const result = (0, index_js_1.default)({ foo: { bar: 3 } }, { foo: { bar: 0 } }); - (0, vitest_1.expect)(Object.isFrozen(result)).to.be.true; - (0, vitest_1.expect)(Object.isFrozen(result.foo)).to.be.true; -}); -(0, vitest_1.it)("assigns null values", () => { - (0, vitest_1.expect)((0, index_js_1.default)({ isNull: null }, {})).to.eql({ isNull: null }); -}); -(0, vitest_1.it)("defaults to an empty object when null or undefined", () => { - let result = (0, index_js_1.default)({ a: { b: 0 } })({ a: null }); - (0, vitest_1.expect)(result).to.eql({ a: { b: 0 } }); - result = (0, index_js_1.default)({ a: { b: 0 } })({ a: undefined }); - (0, vitest_1.expect)(result).to.eql({ a: { b: 0 } }); - result = (0, index_js_1.default)({ a: { b: 0 } })({}); - (0, vitest_1.expect)(result).to.eql({ a: { b: 0 } }); -}); -(0, vitest_1.it)("preserves empty objects when empty updates are specified", () => { - const result = (0, index_js_1.default)({ a: {} })({}); - (0, vitest_1.expect)(result).to.eql({ a: {} }); -}); -(0, vitest_1.it)("works with date objects", () => { - const date = new Date(); - const result = (0, index_js_1.default)({ created: date })({}); - (0, vitest_1.expect)(result).toEqual({ created: date }); -}); -const expectU = (update, orig, expected) => (0, vitest_1.expect)(update(orig)).to.eql(expected); -(0, vitest_1.describe)("u.omitted", () => { - (0, vitest_1.it)("omit properties via u.omitted", () => { - expectU((0, index_js_1.default)({ a: index_js_1.default.omitted, b: (i) => i + 1 }), { a: 1, b: 2 }, { b: 3 }); - }); - (0, vitest_1.it)("omit array and object properties", () => { - expectU((0, index_js_1.default)({ a: index_js_1.default.omitted, b: "stuff", c: index_js_1.default.omitted }), { a: [1, 2, 3], b: "orig", c: { z: "bar" } }, { b: "stuff" }); - }); - (0, vitest_1.it)("deep omit", () => { - expectU((0, index_js_1.default)({ a: { b: index_js_1.default.omitted, c: "stuff" } }), { a: { b: "foo", z: "bar" } }, { a: { z: "bar", c: "stuff" } }); - }); - (0, vitest_1.it)("omitting an array item filters it out", () => { - expectU((0, index_js_1.default)({ 1: index_js_1.default.omitted }), ["a", "b", "c"], ["a", "c"]); - }); -}); -//# sourceMappingURL=updeep.test.js.map \ No newline at end of file diff --git a/commonjs/updeep.test.js.map b/commonjs/updeep.test.js.map deleted file mode 100644 index 9f8bfd6..0000000 --- a/commonjs/updeep.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"updeep.test.js","sourceRoot":"","sources":["../src/updeep.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/util/curry.d.ts b/commonjs/util/curry.d.ts deleted file mode 100644 index d6daf4a..0000000 --- a/commonjs/util/curry.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export function curry1(fn: any): (a: any, ...args: any[]) => any; -export function curry2(fn: any): (a: any, b: any, ...args: any[]) => any; -export function curry3(fn: any): (a: any, b: any, c: any, ...args: any[]) => any; -export function curry4(fn: any): (a: any, b: any, c: any, d: any, ...args: any[]) => any; -export default function curry(fn: any, length?: any): any; -export const _: "@@updeep/placeholder"; -//# sourceMappingURL=curry.d.ts.map \ No newline at end of file diff --git a/commonjs/util/curry.d.ts.map b/commonjs/util/curry.d.ts.map deleted file mode 100644 index 06c88c6..0000000 --- a/commonjs/util/curry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"curry.d.ts","sourceRoot":"","sources":["../../src/util/curry.js"],"names":[],"mappings":"AAcA,iEAQC;AAED,yEAmBC;AAED,iFA6BC;AAED,yFA6CC;AAED,0DAEC;AA5HD,uCAAuC"} \ No newline at end of file diff --git a/commonjs/util/curry.js b/commonjs/util/curry.js deleted file mode 100644 index 3dba6ea..0000000 --- a/commonjs/util/curry.js +++ /dev/null @@ -1,123 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.curry4 = exports.curry3 = exports.curry2 = exports.curry1 = exports._ = void 0; -/* eslint no-shadow:0, no-param-reassign:0 prefer-rest-params:0 */ -exports._ = '@@updeep/placeholder'; -function countArguments(args, max) { - let n = args.length; - if (n > max) - n = max; - while (args[n - 1] === exports._) { - n -= 1; - } - return n; -} -function curry1(fn) { - return function curried(a, ...args) { - const [b, c] = args; - const n = countArguments(arguments); - if (n >= 1) - return fn(a, b, c); - return curried; - }; -} -exports.curry1 = curry1; -function curry2(fn) { - return function curried(a, b, ...args) { - const [c, d] = args; - const n = countArguments(arguments, 2); - if (b === exports._ || c === exports._ || d === exports._) { - throw new Error('Can only use placeholder on first argument of this function.'); - } - if (n >= 2) { - if (a === exports._) - return curry1((a, c, d) => fn(a, b, c, d)); - return fn(a, b, c, d); - } - if (n === 1) - return curry1((b, c, d) => fn(a, b, c, d)); - return curried; - }; -} -exports.curry2 = curry2; -function curry3(fn) { - return function curried(a, b, c, ...args) { - const [d, e] = args; - const n = countArguments(arguments, 3); - if (c === exports._ || d === exports._ || e === exports._) { - throw new Error('Can only use placeholder on first or second argument of this function.'); - } - if (n >= 3) { - if (a === exports._) { - if (b === exports._) - return curry2((a, b, d, e) => fn(a, b, c, d, e)); - return curry1((a, d, e) => fn(a, b, c, d, e)); - } - if (b === exports._) - return curry1((b, d, e) => fn(a, b, c, d, e)); - return fn(a, b, c, d, e); - } - if (n === 2) { - if (a === exports._) - return curry2((a, c, d, e) => fn(a, b, c, d, e)); - return curry1((c, d, e) => fn(a, b, c, d, e)); - } - if (n === 1) - return curry2((b, c, d, e) => fn(a, b, c, d, e)); - return curried; - }; -} -exports.curry3 = curry3; -function curry4(fn) { - return function curried(a, b, c, d, ...args) { - const [e, f] = args; - const n = countArguments(arguments, 4); - if (d === exports._ || e === exports._ || f === exports._) { - throw new Error('Can only use placeholder on first, second or third argument of this function.'); - } - if (n >= 4) { - if (a === exports._) { - if (b === exports._) { - if (c === exports._) - return curry3((a, b, c, e, f) => fn(a, b, c, d, e, f)); - return curry2((a, b, e, f) => fn(a, b, c, d, e, f)); - } - if (c === exports._) - return curry2((a, c, e, f) => fn(a, b, c, d, e, f)); - return curry1((a, e, f) => fn(a, b, c, d, e, f)); - } - if (b === exports._) { - if (c === exports._) - return curry2((b, c, e, f) => fn(a, b, c, d, e, f)); - return curry1((b, e, f) => fn(a, b, c, d, e, f)); - } - if (c === exports._) - return curry1((c, e, f) => fn(a, b, c, d, e, f)); - return fn(a, b, c, d, e, f); - } - if (n === 3) { - if (a === exports._) { - if (b === exports._) - return curry3((a, b, d, e, f) => fn(a, b, c, d, e, f)); - return curry2((a, d, e, f) => fn(a, b, c, d, e, f)); - } - if (b === exports._) - return curry2((b, d, e, f) => fn(a, b, c, d, e, f)); - return curry1((d, e, f) => fn(a, b, c, d, e, f)); - } - if (n === 2) { - if (a === exports._) - return curry3((a, c, d, e, f) => fn(a, b, c, d, e, f)); - return curry2((c, d, e, f) => fn(a, b, c, d, e, f)); - } - if (n === 1) - return curry3((b, c, d, e, f) => fn(a, b, c, d, e, f)); - return curried; - }; -} -exports.curry4 = curry4; -function curry(fn, length = fn.length) { - return [fn, curry1, curry2, curry3, curry4][length](fn); -} -exports.default = curry; -//# sourceMappingURL=curry.js.map \ No newline at end of file diff --git a/commonjs/util/curry.js.map b/commonjs/util/curry.js.map deleted file mode 100644 index 75a80dc..0000000 --- a/commonjs/util/curry.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"curry.js","sourceRoot":"","sources":["../../src/util/curry.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/commonjs/util/splitPath.d.ts b/commonjs/util/splitPath.d.ts deleted file mode 100644 index 6daeb5e..0000000 --- a/commonjs/util/splitPath.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function splitPath(path: string | number | (number | string)[]): (string | number)[]; -//# sourceMappingURL=splitPath.d.ts.map \ No newline at end of file diff --git a/commonjs/util/splitPath.d.ts.map b/commonjs/util/splitPath.d.ts.map deleted file mode 100644 index 686b455..0000000 --- a/commonjs/util/splitPath.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"splitPath.d.ts","sourceRoot":"","sources":["../../src/util/splitPath.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,uBAM5E"} \ No newline at end of file diff --git a/commonjs/util/splitPath.js b/commonjs/util/splitPath.js deleted file mode 100644 index f1c7639..0000000 --- a/commonjs/util/splitPath.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -function splitPath(path) { - if (typeof path === "number") - path = new String(path); - return Array.isArray(path) - ? path - : path.split(".").filter((x) => x !== ""); -} -exports.default = splitPath; -//# sourceMappingURL=splitPath.js.map \ No newline at end of file diff --git a/commonjs/util/splitPath.js.map b/commonjs/util/splitPath.js.map deleted file mode 100644 index 07024f1..0000000 --- a/commonjs/util/splitPath.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"splitPath.js","sourceRoot":"","sources":["../../src/util/splitPath.ts"],"names":[],"mappings":";;AAAA,SAAwB,SAAS,CAAC,IAA2C;IAC3E,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAQ,CAAC;IAE7D,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACxB,CAAC,CAAC,IAAI;QACN,CAAC,CAAE,IAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;AAC1D,CAAC;AAND,4BAMC"} \ No newline at end of file diff --git a/commonjs/util/splitPath.test.d.ts b/commonjs/util/splitPath.test.d.ts deleted file mode 100644 index daa51d7..0000000 --- a/commonjs/util/splitPath.test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=splitPath.test.d.ts.map \ No newline at end of file diff --git a/commonjs/util/splitPath.test.d.ts.map b/commonjs/util/splitPath.test.d.ts.map deleted file mode 100644 index 2866cd6..0000000 --- a/commonjs/util/splitPath.test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"splitPath.test.d.ts","sourceRoot":"","sources":["../../src/util/splitPath.test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/commonjs/util/splitPath.test.js b/commonjs/util/splitPath.test.js deleted file mode 100644 index 8478a1d..0000000 --- a/commonjs/util/splitPath.test.js +++ /dev/null @@ -1,23 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const vitest_1 = require("vitest"); -const splitPath_js_1 = __importDefault(require("./splitPath.js")); -(0, vitest_1.it)("treats a number as a single step path", () => { - const path = 1; - const result = (0, splitPath_js_1.default)(path); - (0, vitest_1.expect)(result).to.deep.equal(["1"]); -}); -(0, vitest_1.it)("handles arrays", () => { - const path = ["foo", "bar", "x"]; - const result = (0, splitPath_js_1.default)(path); - (0, vitest_1.expect)(result).to.equal(path); -}); -(0, vitest_1.it)("handles strings separated by dots", () => { - const path = "bar.0.y"; - const result = (0, splitPath_js_1.default)(path); - (0, vitest_1.expect)(result).to.deep.equal(["bar", "0", "y"]); -}); -//# sourceMappingURL=splitPath.test.js.map \ No newline at end of file diff --git a/commonjs/util/splitPath.test.js.map b/commonjs/util/splitPath.test.js.map deleted file mode 100644 index e32404a..0000000 --- a/commonjs/util/splitPath.test.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"splitPath.test.js","sourceRoot":"","sources":["../../src/util/splitPath.test.ts"],"names":[],"mappings":";;;;;AAAA,mCAAoC;AACpC,kEAAuC;AAEvC,IAAA,WAAE,EAAC,uCAAuC,EAAE,GAAG,EAAE;IAC/C,MAAM,IAAI,GAAG,CAAC,CAAC;IACf,MAAM,MAAM,GAAG,IAAA,sBAAS,EAAC,IAAI,CAAC,CAAC;IAC/B,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAA,WAAE,EAAC,gBAAgB,EAAE,GAAG,EAAE;IACxB,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,IAAA,sBAAS,EAAC,IAAI,CAAC,CAAC;IAC/B,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAA,WAAE,EAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,IAAI,GAAG,SAAS,CAAC;IACvB,MAAM,MAAM,GAAG,IAAA,sBAAS,EAAC,IAAI,CAAC,CAAC;IAC/B,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/commonjs/wrap.d.ts b/commonjs/wrap.d.ts deleted file mode 100644 index aa294b7..0000000 --- a/commonjs/wrap.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare const wrap: (fn: any) => (...args: any[]) => Readonly; -export default wrap; -//# sourceMappingURL=wrap.d.ts.map \ No newline at end of file diff --git a/commonjs/wrap.d.ts.map b/commonjs/wrap.d.ts.map deleted file mode 100644 index 5061f46..0000000 --- a/commonjs/wrap.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"wrap.d.ts","sourceRoot":"","sources":["../src/wrap.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,IAAI,gDAWP,CAAC;AAEJ,eAAe,IAAI,CAAC"} \ No newline at end of file diff --git a/commonjs/wrap.js b/commonjs/wrap.js deleted file mode 100644 index 2daef0c..0000000 --- a/commonjs/wrap.js +++ /dev/null @@ -1,18 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const freeze_js_1 = __importDefault(require("./freeze.js")); -const wrap = (fn) => (...args) => { - const diff = fn.length - args.length; - if (diff === 0) { - return (0, freeze_js_1.default)(fn(...args)); - } - if (diff === 1) { - return (data) => (0, freeze_js_1.default)(fn(data, ...args)); - } - throw new Error("Wrong number of arguments"); -}; -exports.default = wrap; -//# sourceMappingURL=wrap.js.map \ No newline at end of file diff --git a/commonjs/wrap.js.map b/commonjs/wrap.js.map deleted file mode 100644 index 0958336..0000000 --- a/commonjs/wrap.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"wrap.js","sourceRoot":"","sources":["../src/wrap.ts"],"names":[],"mappings":";;;;;AAAA,4DAAiC;AAGjC,MAAM,IAAI,GACR,CAAC,EAAE,EAAE,EAAE,CACP,CAAC,GAAG,IAAI,EAAE,EAAE;IACV,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACrC,IAAI,IAAI,KAAK,CAAC,EAAE;QACd,OAAO,IAAA,mBAAM,EAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KAC5B;IACD,IAAI,IAAI,KAAK,CAAC,EAAE;QACd,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,mBAAM,EAAC,EAAE,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;KAC5C;IACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEJ,kBAAe,IAAI,CAAC"} \ No newline at end of file diff --git a/esm/if.d.ts b/esm/if.d.ts index f11eafc..0886c22 100644 --- a/esm/if.d.ts +++ b/esm/if.d.ts @@ -1,4 +1,4 @@ -interface If { +export interface If { (object: any, predicate: any, trueUpdates: any): unknown; (predicate: any, trueUpdates: any): (unknown: any) => unknown; } diff --git a/esm/if.d.ts.map b/esm/if.d.ts.map index af7f764..5a86c7e 100644 --- a/esm/if.d.ts.map +++ b/esm/if.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"if.d.ts","sourceRoot":"","sources":["../src/if.ts"],"names":[],"mappings":"AAKA,UAAU,EAAE;IACV,CAAC,MAAM,KAAA,EAAE,SAAS,KAAA,EAAE,WAAW,KAAA,GAAG,OAAO,CAAC;IAC1C,CAAC,SAAS,KAAA,EAAE,WAAW,KAAA,GAAG,CAAC,OAAO,KAAA,KAAK,OAAO,CAAC;CAChD;;AAMD,wBAA+B"} \ No newline at end of file +{"version":3,"file":"if.d.ts","sourceRoot":"","sources":["../src/if.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,EAAE;IACjB,CAAC,MAAM,KAAA,EAAE,SAAS,KAAA,EAAE,WAAW,KAAA,GAAG,OAAO,CAAC;IAC1C,CAAC,SAAS,KAAA,EAAE,WAAW,KAAA,GAAG,CAAC,OAAO,KAAA,KAAK,OAAO,CAAC;CAChD;;AAMD,wBAA+B"} \ No newline at end of file diff --git a/esm/ifElse.d.ts b/esm/ifElse.d.ts index e748197..9b61fe9 100644 --- a/esm/ifElse.d.ts +++ b/esm/ifElse.d.ts @@ -1,5 +1,5 @@ type Predicate = ((source: any) => boolean) | boolean; -interface IfElse { +export interface IfElse { (object: any, predicate: Predicate, trueUpdates: any, falseUpdates: any): unknown; (predicate: Predicate, trueUpdates: any, falseUpdates: any): (unknown: any) => unknown; } diff --git a/esm/ifElse.d.ts.map b/esm/ifElse.d.ts.map index c085b20..a5f3a2b 100644 --- a/esm/ifElse.d.ts.map +++ b/esm/ifElse.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"ifElse.d.ts","sourceRoot":"","sources":["../src/ifElse.ts"],"names":[],"mappings":"AAWA,KAAK,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,OAAO,CAAC;AAEtD,UAAU,MAAM;IACd,CAAC,MAAM,KAAA,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,KAAA,EAAE,YAAY,KAAA,GAAG,OAAO,CAAC;IACnE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,KAAA,EAAE,YAAY,KAAA,GAAG,CAAC,OAAO,KAAA,KAAK,OAAO,CAAC;CACzE;;AAED,wBAA4C"} \ No newline at end of file +{"version":3,"file":"ifElse.d.ts","sourceRoot":"","sources":["../src/ifElse.ts"],"names":[],"mappings":"AAWA,KAAK,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,OAAO,CAAC;AAEtD,MAAM,WAAW,MAAM;IACrB,CAAC,MAAM,KAAA,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,KAAA,EAAE,YAAY,KAAA,GAAG,OAAO,CAAC;IACnE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,KAAA,EAAE,YAAY,KAAA,GAAG,CAAC,OAAO,KAAA,KAAK,OAAO,CAAC;CACzE;;AAED,wBAA4C"} \ No newline at end of file diff --git a/esm/index.d.ts b/esm/index.d.ts index 49c130d..431ed87 100644 --- a/esm/index.d.ts +++ b/esm/index.d.ts @@ -1,3 +1,16 @@ -declare const u: any; -export default u; +import freeze from "./freeze.js"; +import constant from "./constant.js"; +declare const _default: import("./update.js").Update & { + constant: typeof constant; + if: import("./if.js").If; + ifElse: import("./ifElse.js").IfElse; + is: import("./is.js").Is; + freeze: typeof freeze; + update: import("./update.js").Update; + updateIn: import("./updateIn.js").UpdateIn; + omitted: () => Readonly<{ + __omitted: boolean; + }>; +}; +export default _default; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/esm/index.d.ts.map b/esm/index.d.ts.map index e29798d..03d22b5 100644 --- a/esm/index.d.ts.map +++ b/esm/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,CAAC,EAAE,GAAY,CAAC;AAWtB,eAAe,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAMjC,OAAO,QAAQ,MAAM,eAAe,CAAC;;;;;;;;;;;;;AAiBrC,wBAA0D"} \ No newline at end of file diff --git a/esm/index.js b/esm/index.js index 0ba381d..18d8c7e 100644 --- a/esm/index.js +++ b/esm/index.js @@ -5,14 +5,17 @@ import ifElse from "./ifElse.js"; import update, { omitted } from "./update.js"; import updateIn from "./updateIn.js"; import constant from "./constant.js"; -const u = update; -u.constant = constant; -u.if = _if; -u.ifElse = ifElse; -u.is = is; -u.freeze = freeze; -u.update = update; -u.updateIn = updateIn; -u.omitted = omitted; -export default u; +const functions = { + constant, + if: _if, + ifElse, + is, + freeze, + update, + updateIn, + omitted, +}; +const merged = update; +Object.entries(functions).forEach(([k, v]) => (merged[k] = v)); +export default merged; //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/esm/index.js.map b/esm/index.js.map index 5cae3d4..818a1bf 100644 --- a/esm/index.js.map +++ b/esm/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,GAAG,MAAM,SAAS,CAAC;AAC1B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,GAAQ,MAAM,CAAC;AAEtB,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACtB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC;AACX,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;AAClB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;AACV,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;AAClB,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;AAClB,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACtB,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;AAEpB,eAAe,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,GAAG,MAAM,SAAS,CAAC;AAC1B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,SAAS,GAAG;IAChB,QAAQ;IACR,EAAE,EAAE,GAAG;IACP,MAAM;IACN,EAAE;IACF,MAAM;IACN,MAAM;IACN,QAAQ;IACR,OAAO;CACR,CAAC;AAEF,MAAM,MAAM,GAAG,MAAM,CAAC;AAEtB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE/D,eAAe,MAA0C,CAAC"} \ No newline at end of file diff --git a/esm/is.d.ts b/esm/is.d.ts index bb1ddfd..ea295f2 100644 --- a/esm/is.d.ts +++ b/esm/is.d.ts @@ -1,4 +1,4 @@ -interface Is { +export interface Is { (object: any, path: string | number | (number | string)[], predicate: any): boolean; (path: string | number | (number | string)[], predicate: any): (object: any) => boolean; } diff --git a/esm/is.d.ts.map b/esm/is.d.ts.map index 25c05b7..34cccb3 100644 --- a/esm/is.d.ts.map +++ b/esm/is.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"is.d.ts","sourceRoot":"","sources":["../src/is.ts"],"names":[],"mappings":"AAsBA,UAAU,EAAE;IACR,CAAC,MAAM,KAAA,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,SAAS,KAAA,GAAG,OAAO,CAAC;IAC1E,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,SAAS,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,OAAO,CAAC;CACjF;;AAED,wBAA+B"} \ No newline at end of file +{"version":3,"file":"is.d.ts","sourceRoot":"","sources":["../src/is.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,EAAE;IACjB,CAAC,MAAM,KAAA,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,SAAS,KAAA,GAAG,OAAO,CAAC;IAC1E,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,SAAS,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,OAAO,CAAC;CAC/E;;AAED,wBAA+B"} \ No newline at end of file diff --git a/esm/is.js.map b/esm/is.js.map index fc045d3..d4ee1fa 100644 --- a/esm/is.js.map +++ b/esm/is.js.map @@ -1 +1 @@ -{"version":3,"file":"is.js","sourceRoot":"","sources":["../src/is.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,SAAS,GAAG,CACR,MAAM,EACN,IAA2C,EAC3C,SAAS;IAET,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAE9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;KACzB;IAED,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;QACjC,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;KAC5B;IAED,OAAO,SAAS,KAAK,MAAM,CAAC;AAChC,CAAC;AAOD,eAAe,IAAI,CAAC,GAAG,CAAO,CAAC"} \ No newline at end of file +{"version":3,"file":"is.js","sourceRoot":"","sources":["../src/is.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,SAAS,GAAG,CACV,MAAM,EACN,IAA2C,EAC3C,SAAS;IAET,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAE9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;KACvB;IAED,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;QACnC,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;KAC1B;IAED,OAAO,SAAS,KAAK,MAAM,CAAC;AAC9B,CAAC;AAOD,eAAe,IAAI,CAAC,GAAG,CAAO,CAAC"} \ No newline at end of file diff --git a/esm/update.d.ts b/esm/update.d.ts index 8c488f3..cea9a08 100644 --- a/esm/update.d.ts +++ b/esm/update.d.ts @@ -1,7 +1,7 @@ export declare const omitted: () => Readonly<{ __omitted: boolean; }>; -interface Update { +export interface Update { (object: any, func: any): any; (func: any): (object: any) => any; } diff --git a/esm/update.d.ts.map b/esm/update.d.ts.map index d6c776f..28596fc 100644 --- a/esm/update.d.ts.map +++ b/esm/update.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO;;EAAyB,CAAC;AAkG9C,UAAU,MAAM;IACd,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,GAAG,GAAG,CAAC;IACpB,CAAC,IAAI,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CACzB;;AAED,wBAAsC"} \ No newline at end of file +{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO;;EAAyB,CAAC;AAkG9C,MAAM,WAAW,MAAM;IACrB,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,GAAG,GAAG,CAAC;IACpB,CAAC,IAAI,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CACzB;;AAED,wBAAsC"} \ No newline at end of file diff --git a/esm/updateIn.d.ts b/esm/updateIn.d.ts index f559b67..ff961b3 100644 --- a/esm/updateIn.d.ts +++ b/esm/updateIn.d.ts @@ -1,4 +1,4 @@ -interface UpdateIn { +export interface UpdateIn { (object: any, path: any, value: any): any; (path: any, value: any): (object: any) => any; } diff --git a/esm/updateIn.d.ts.map b/esm/updateIn.d.ts.map index 488ee8e..9752b42 100644 --- a/esm/updateIn.d.ts.map +++ b/esm/updateIn.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"updateIn.d.ts","sourceRoot":"","sources":["../src/updateIn.ts"],"names":[],"mappings":"AA4BA,UAAU,QAAQ;IAChB,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,KAAK,KAAA,GAAG,GAAG,CAAC;IAC3B,CAAC,IAAI,KAAA,EAAE,KAAK,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CAChC;;AAED,wBAA0C"} \ No newline at end of file +{"version":3,"file":"updateIn.d.ts","sourceRoot":"","sources":["../src/updateIn.ts"],"names":[],"mappings":"AA4BA,MAAM,WAAW,QAAQ;IACvB,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,KAAK,KAAA,GAAG,GAAG,CAAC;IAC3B,CAAC,IAAI,KAAA,EAAE,KAAK,KAAA,GAAG,CAAC,MAAM,KAAA,KAAK,GAAG,CAAC;CAChC;;AAED,wBAA0C"} \ No newline at end of file diff --git a/package.json b/package.json index 062216e..21c4a58 100644 --- a/package.json +++ b/package.json @@ -20,13 +20,13 @@ "declarative" ], "source": "./src/index.ts", - "main": "./commonjs/index.cjs", + "main": "./commonjs/index.js", "types": "./esm/index.d.ts", "exports": { ".": { "types": "./esm/index.d.ts", "import": "./esm/index.js", - "require": "./commonjs/index.cjs" + "require": "./commonjs/index.js" } }, "license": "MIT", diff --git a/src/if.ts b/src/if.ts index bff68e8..5979521 100644 --- a/src/if.ts +++ b/src/if.ts @@ -3,7 +3,7 @@ import { identity } from "remeda"; import ifElse from "./ifElse.js"; import wrap from "./wrap.js"; -interface If { +export interface If { (object, predicate, trueUpdates): unknown; (predicate, trueUpdates): (unknown) => unknown; } diff --git a/src/ifElse.ts b/src/ifElse.ts index 09b7d61..ea71ec8 100644 --- a/src/ifElse.ts +++ b/src/ifElse.ts @@ -11,7 +11,7 @@ function updateIfElse(object, predicate, trueUpdates, falseUpdates) { type Predicate = ((source: any) => boolean) | boolean; -interface IfElse { +export interface IfElse { (object, predicate: Predicate, trueUpdates, falseUpdates): unknown; (predicate: Predicate, trueUpdates, falseUpdates): (unknown) => unknown; } diff --git a/src/index.ts b/src/index.ts index b02655d..f487b50 100644 --- a/src/index.ts +++ b/src/index.ts @@ -6,15 +6,19 @@ import update, { omitted } from "./update.js"; import updateIn from "./updateIn.js"; import constant from "./constant.js"; -const u: any = update; +const functions = { + constant, + if: _if, + ifElse, + is, + freeze, + update, + updateIn, + omitted, +}; -u.constant = constant; -u.if = _if; -u.ifElse = ifElse; -u.is = is; -u.freeze = freeze; -u.update = update; -u.updateIn = updateIn; -u.omitted = omitted; +const merged = update; -export default u; +Object.entries(functions).forEach(([k, v]) => (merged[k] = v)); + +export default merged as typeof merged & typeof functions; diff --git a/src/is.ts b/src/is.ts index 4dacb40..3b48197 100644 --- a/src/is.ts +++ b/src/is.ts @@ -2,27 +2,27 @@ import splitPath from "./util/splitPath.js"; import wrap from "./wrap.js"; function _is( - object, - path: number | string | (number | string)[], - predicate + object, + path: number | string | (number | string)[], + predicate ): boolean { - const parts = splitPath(path); + const parts = splitPath(path); - for (const part of parts) { - if (typeof object === "undefined") return false; - object = object[part]; - } + for (const part of parts) { + if (typeof object === "undefined") return false; + object = object[part]; + } - if (typeof predicate === "function") { - return predicate(object); - } + if (typeof predicate === "function") { + return predicate(object); + } - return predicate === object; + return predicate === object; } -interface Is { - (object, path: string | number | (number | string)[], predicate): boolean; - (path: string | number | (number | string)[], predicate): (object) => boolean; +export interface Is { + (object, path: string | number | (number | string)[], predicate): boolean; + (path: string | number | (number | string)[], predicate): (object) => boolean; } export default wrap(_is) as Is; diff --git a/src/update.ts b/src/update.ts index ffaea1e..04b380a 100644 --- a/src/update.ts +++ b/src/update.ts @@ -102,7 +102,7 @@ function update(object, updates) { ); } -interface Update { +export interface Update { (object, func): any; (func): (object) => any; } diff --git a/src/updateIn.ts b/src/updateIn.ts index c416bbf..5c9c1ea 100644 --- a/src/updateIn.ts +++ b/src/updateIn.ts @@ -26,7 +26,7 @@ function updateIn(object, path, value) { return update(object, updates); } -interface UpdateIn { +export interface UpdateIn { (object, path, value): any; (path, value): (object) => any; } diff --git a/tsconfig-base.json b/tsconfig-base.json new file mode 100644 index 0000000..4ed0cfc --- /dev/null +++ b/tsconfig-base.json @@ -0,0 +1,102 @@ +{ + "exclude": ["test"], + "include": ["src/"], + "compilerOptions": { + /* Visit https://aka.ms/tsconfig to read more about this file */ + + /* Projects */ + "incremental": false /* Save .tsbuildinfo files to allow for incremental compilation of projects. */, + // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ + // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */ + // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */ + // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ + // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ + + /* Language and Environment */ + // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ + // "jsx": "preserve", /* Specify what JSX code is generated. */ + // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */ + // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ + // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */ + // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ + // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */ + // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */ + // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ + // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ + // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ + + /* Modules */ + "rootDir": "./src" /* Specify the root folder within your source files. */, + // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */ + // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ + // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ + // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ + // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */ + // "types": [], /* Specify type package names to be included without being referenced in a source file. */ + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ + // "resolveJsonModule": true, /* Enable importing .json files. */ + // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */ + + /* JavaScript Support */ + "allowJs": true /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */, + "checkJs": true /* Enable error reporting in type-checked JavaScript files. */, + // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ + + /* Emit */ + "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */, + "declarationMap": true /* Create sourcemaps for d.ts files. */, + // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ + "sourceMap": true /* Create source map files for emitted JavaScript files. */, + // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ + // "removeComments": true, /* Disable emitting comments. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ + // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ + // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types. */ + // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ + // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ + // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ + // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ + // "newLine": "crlf", /* Set the newline character for emitting files. */ + // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */ + // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */ + // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ + // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */ + // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ + // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */ + + /* Interop Constraints */ + // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ + // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ + "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */, + // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ + "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */, + + /* Type Checking */ + "strict": false /* Enable all strict type-checking options. */, + // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ + // "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */ + // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ + // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */ + // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ + // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */ + // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */ + // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ + // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */ + // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */ + // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */ + // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */ + // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */ + // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */ + // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */ + // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */ + // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */ + // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */ + + /* Completeness */ + // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ + "skipLibCheck": true /* Skip type checking all .d.ts files. */ + } +} diff --git a/tsconfig-cjs.json b/tsconfig-cjs.json index 1cf722f..801ea9a 100644 --- a/tsconfig-cjs.json +++ b/tsconfig-cjs.json @@ -1,5 +1,5 @@ { - "extends": "./tsconfig.json", + "extends": "./tsconfig-base.json", "compilerOptions": { "module": "commonjs", "outDir": "commonjs/", diff --git a/tsconfig.json b/tsconfig.json index e4c4270..7e3bbd7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,105 +1,8 @@ { - "exclude": ["test"], - "include": ["src/"], + "extends": "./tsconfig-base.json", "compilerOptions": { - /* Visit https://aka.ms/tsconfig to read more about this file */ - - /* Projects */ - "incremental": true /* Save .tsbuildinfo files to allow for incremental compilation of projects. */, - // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ - // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */ - // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */ - // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ - // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ - - /* Language and Environment */ - "target": "es2016" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */, - // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ - // "jsx": "preserve", /* Specify what JSX code is generated. */ - // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */ - // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ - // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */ - // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ - // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */ - // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */ - // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ - // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ - // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ - - /* Modules */ - "module": "nodenext" /* Specify what module code is generated. */, - "rootDir": "./src" /* Specify the root folder within your source files. */, - // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */ - // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ - // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ - // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ - // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */ - // "types": [], /* Specify type package names to be included without being referenced in a source file. */ - // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ - // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ - // "resolveJsonModule": true, /* Enable importing .json files. */ - // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */ - - /* JavaScript Support */ - "allowJs": true /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */, - "checkJs": true /* Enable error reporting in type-checked JavaScript files. */, - // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ - - /* Emit */ - "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */, - "declarationMap": true /* Create sourcemaps for d.ts files. */, - // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ - "sourceMap": true /* Create source map files for emitted JavaScript files. */, - // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ - "outDir": "./esm" /* Specify an output folder for all emitted files. */, - // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ - // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ - // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types. */ - // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ - // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ - // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ - // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ - // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ - // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ - // "newLine": "crlf", /* Set the newline character for emitting files. */ - // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */ - // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */ - // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ - // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */ - // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ - // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */ - - /* Interop Constraints */ - // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ - // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ - "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */, - // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ - "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */, - - /* Type Checking */ - "strict": false /* Enable all strict type-checking options. */, - // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ - // "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */ - // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ - // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */ - // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ - // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */ - // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */ - // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ - // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */ - // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */ - // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */ - // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */ - // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */ - // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */ - // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */ - // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */ - // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */ - // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */ - - /* Completeness */ - // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ - "skipLibCheck": true /* Skip type checking all .d.ts files. */ + "module": "nodenext", + "outDir": "esm/", + "target": "es2016" } }