@vinicunca/perkakas 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/add-CbtGbPU8.cjs +1 -0
- package/dist/add-D2WnMolJ.d.cts +34 -0
- package/dist/add-D2WnMolJ.d.cts.map +1 -0
- package/dist/add-XyDHfOBw.js +2 -0
- package/dist/add-XyDHfOBw.js.map +1 -0
- package/dist/add-im980AO9.d.ts +34 -0
- package/dist/add-im980AO9.d.ts.map +1 -0
- package/dist/add-prop-BxqZdgPd.cjs +1 -0
- package/dist/add-prop-CMZauInB.d.ts +46 -0
- package/dist/add-prop-CMZauInB.d.ts.map +1 -0
- package/dist/add-prop-CX56m6sR.js +2 -0
- package/dist/add-prop-CX56m6sR.js.map +1 -0
- package/dist/add-prop-tIjpXGRH.d.cts +46 -0
- package/dist/add-prop-tIjpXGRH.d.cts.map +1 -0
- package/dist/add-prop.cjs +1 -1
- package/dist/add-prop.d.cts +4 -45
- package/dist/add-prop.d.ts +4 -45
- package/dist/add-prop.js +1 -1
- package/dist/add.cjs +1 -1
- package/dist/add.d.cts +2 -32
- package/dist/add.d.ts +2 -32
- package/dist/add.js +1 -1
- package/dist/all-pass-BCivJ27h.d.cts +37 -0
- package/dist/all-pass-BCivJ27h.d.cts.map +1 -0
- package/dist/all-pass-DXpE2AMI.d.ts +37 -0
- package/dist/all-pass-DXpE2AMI.d.ts.map +1 -0
- package/dist/all-pass-Dm8Dnhq7.cjs +1 -0
- package/dist/all-pass-TOwgGHEo.js +2 -0
- package/dist/all-pass-TOwgGHEo.js.map +1 -0
- package/dist/all-pass.cjs +1 -1
- package/dist/all-pass.d.cts +2 -35
- package/dist/all-pass.d.ts +2 -35
- package/dist/all-pass.js +1 -1
- package/dist/any-pass-B1tqZ-S8.js +2 -0
- package/dist/any-pass-B1tqZ-S8.js.map +1 -0
- package/dist/any-pass-BUlFAsyd.d.cts +37 -0
- package/dist/any-pass-BUlFAsyd.d.cts.map +1 -0
- package/dist/any-pass-DODvFXfM.d.ts +37 -0
- package/dist/any-pass-DODvFXfM.d.ts.map +1 -0
- package/dist/any-pass-UiZWZkzr.cjs +1 -0
- package/dist/any-pass.cjs +1 -1
- package/dist/any-pass.d.cts +2 -35
- package/dist/any-pass.d.ts +2 -35
- package/dist/any-pass.js +1 -1
- package/dist/array-required-prefix-BeSNHH4G.d.ts +26 -0
- package/dist/array-required-prefix-BeSNHH4G.d.ts.map +1 -0
- package/dist/array-required-prefix-FSH3Acx8.d.cts +26 -0
- package/dist/array-required-prefix-FSH3Acx8.d.cts.map +1 -0
- package/dist/binary-search-cutoff-index-B3xuP0oe.cjs +1 -0
- package/dist/binary-search-cutoff-index-QhLfC_4-.js +2 -0
- package/dist/binary-search-cutoff-index-QhLfC_4-.js.map +1 -0
- package/dist/bounded-partial-A89bt7Kj.d.cts +17 -0
- package/dist/bounded-partial-A89bt7Kj.d.cts.map +1 -0
- package/dist/bounded-partial-TshEjJC1.d.ts +17 -0
- package/dist/bounded-partial-TshEjJC1.d.ts.map +1 -0
- package/dist/case.transform-0QyAGkjI.js +2 -0
- package/dist/case.transform-0QyAGkjI.js.map +1 -0
- package/dist/case.transform-UvmY1E5L.cjs +1 -0
- package/dist/case.types-C4kGtbSS.d.cts +19 -0
- package/dist/case.types-C4kGtbSS.d.cts.map +1 -0
- package/dist/case.types-DegX_-fY.d.ts +19 -0
- package/dist/case.types-DegX_-fY.d.ts.map +1 -0
- package/dist/ceil--cMT2iUp.js +2 -0
- package/dist/ceil--cMT2iUp.js.map +1 -0
- package/dist/ceil-3wC2QOvT.d.ts +39 -0
- package/dist/ceil-3wC2QOvT.d.ts.map +1 -0
- package/dist/ceil-BfPd1zim.d.cts +39 -0
- package/dist/ceil-BfPd1zim.d.cts.map +1 -0
- package/dist/ceil-CgjlA1iG.cjs +1 -0
- package/dist/ceil.cjs +1 -1
- package/dist/ceil.d.cts +2 -37
- package/dist/ceil.d.ts +2 -37
- package/dist/ceil.js +1 -1
- package/dist/chunk-21HuGLAn.d.ts +76 -0
- package/dist/chunk-21HuGLAn.d.ts.map +1 -0
- package/dist/chunk-C__yw06N.d.cts +76 -0
- package/dist/chunk-C__yw06N.d.cts.map +1 -0
- package/dist/chunk-_kldYmb1.cjs +1 -0
- package/dist/chunk-dIPp871Q.js +2 -0
- package/dist/chunk-dIPp871Q.js.map +1 -0
- package/dist/chunk.cjs +1 -1
- package/dist/chunk.d.cts +9 -115
- package/dist/chunk.d.ts +9 -115
- package/dist/chunk.js +1 -1
- package/dist/clamp-Cnh0Qg03.cjs +1 -0
- package/dist/clamp-DMX7Ua7I.d.cts +37 -0
- package/dist/clamp-DMX7Ua7I.d.cts.map +1 -0
- package/dist/clamp-V39NgixZ.d.ts +37 -0
- package/dist/clamp-V39NgixZ.d.ts.map +1 -0
- package/dist/clamp-zR5XX002.js +2 -0
- package/dist/clamp-zR5XX002.js.map +1 -0
- package/dist/clamp.cjs +1 -1
- package/dist/clamp.d.cts +2 -35
- package/dist/clamp.d.ts +2 -35
- package/dist/clamp.js +1 -1
- package/dist/clamped-integer-subtract-CQL8aT__.d.ts +11 -0
- package/dist/clamped-integer-subtract-CQL8aT__.d.ts.map +1 -0
- package/dist/clamped-integer-subtract-DId0tRjp.d.cts +11 -0
- package/dist/clamped-integer-subtract-DId0tRjp.d.cts.map +1 -0
- package/dist/clone-1QjPrzdD.d.cts +35 -0
- package/dist/clone-1QjPrzdD.d.cts.map +1 -0
- package/dist/clone-BcAGB1C1.js +2 -0
- package/dist/clone-BcAGB1C1.js.map +1 -0
- package/dist/clone-DyRAAJkh.cjs +1 -0
- package/dist/clone-UasIry83.d.ts +35 -0
- package/dist/clone-UasIry83.d.ts.map +1 -0
- package/dist/clone.cjs +1 -1
- package/dist/clone.d.cts +2 -33
- package/dist/clone.d.ts +2 -33
- package/dist/clone.js +1 -1
- package/dist/coerced-array-DyA0Yc12.d.ts +17 -0
- package/dist/coerced-array-DyA0Yc12.d.ts.map +1 -0
- package/dist/coerced-array-kVJtBrMl.d.cts +17 -0
- package/dist/coerced-array-kVJtBrMl.d.cts.map +1 -0
- package/dist/concat-BdgaaV6q.d.cts +41 -0
- package/dist/concat-BdgaaV6q.d.cts.map +1 -0
- package/dist/concat-CVEXmYnw.js +2 -0
- package/dist/concat-CVEXmYnw.js.map +1 -0
- package/dist/concat-Cg3I4d7x.cjs +1 -0
- package/dist/concat-DeyDusex.d.ts +41 -0
- package/dist/concat-DeyDusex.d.ts.map +1 -0
- package/dist/concat.cjs +1 -1
- package/dist/concat.d.cts +3 -38
- package/dist/concat.d.ts +3 -38
- package/dist/concat.js +1 -1
- package/dist/conditional-81kit9Lg.cjs +1 -0
- package/dist/conditional-BivA0O7M.d.cts +221 -0
- package/dist/conditional-BivA0O7M.d.cts.map +1 -0
- package/dist/conditional-ClGfJoeu.js +2 -0
- package/dist/conditional-ClGfJoeu.js.map +1 -0
- package/dist/conditional-DeaF48-8.d.ts +221 -0
- package/dist/conditional-DeaF48-8.d.ts.map +1 -0
- package/dist/conditional.cjs +1 -1
- package/dist/conditional.d.cts +2 -217
- package/dist/conditional.d.ts +2 -217
- package/dist/conditional.js +1 -1
- package/dist/constant-BuIJ9GIn.cjs +1 -0
- package/dist/constant-DD3Fj3xH.d.cts +32 -0
- package/dist/constant-DD3Fj3xH.d.cts.map +1 -0
- package/dist/constant-DrpDXHc7.js +2 -0
- package/dist/constant-DrpDXHc7.js.map +1 -0
- package/dist/constant-XCH8hVM0.d.ts +32 -0
- package/dist/constant-XCH8hVM0.d.ts.map +1 -0
- package/dist/constant.cjs +1 -1
- package/dist/constant.d.cts +2 -30
- package/dist/constant.d.ts +2 -30
- package/dist/constant.js +1 -1
- package/dist/count-by-CYv2OHvx.d.cts +42 -0
- package/dist/count-by-CYv2OHvx.d.cts.map +1 -0
- package/dist/count-by-DUtzS9CI.cjs +1 -0
- package/dist/count-by-DZwTr8U_.js +2 -0
- package/dist/count-by-DZwTr8U_.js.map +1 -0
- package/dist/count-by-oQGTg_br.d.ts +42 -0
- package/dist/count-by-oQGTg_br.d.ts.map +1 -0
- package/dist/count-by.cjs +1 -1
- package/dist/count-by.d.cts +4 -42
- package/dist/count-by.d.ts +4 -42
- package/dist/count-by.js +1 -1
- package/dist/curry-B-8l-0vq.d.ts +68 -0
- package/dist/curry-B-8l-0vq.d.ts.map +1 -0
- package/dist/curry-BPVIsvo3.cjs +1 -0
- package/dist/curry-CzZjDrpv.js +2 -0
- package/dist/curry-CzZjDrpv.js.map +1 -0
- package/dist/curry-from-lazy-BDH06qZ-.cjs +1 -0
- package/dist/curry-from-lazy-BR-hoRDR.js +2 -0
- package/dist/curry-from-lazy-BR-hoRDR.js.map +1 -0
- package/dist/curry-gLBYaLmk.d.cts +68 -0
- package/dist/curry-gLBYaLmk.d.cts.map +1 -0
- package/dist/curry-order-rules-1zjlAgqa.d.cts +48 -0
- package/dist/curry-order-rules-1zjlAgqa.d.cts.map +1 -0
- package/dist/curry-order-rules-BuA7D1F4.js +2 -0
- package/dist/curry-order-rules-BuA7D1F4.js.map +1 -0
- package/dist/curry-order-rules-Cthu8rj4.d.ts +48 -0
- package/dist/curry-order-rules-Cthu8rj4.d.ts.map +1 -0
- package/dist/curry-order-rules-UcuuWkKd.cjs +1 -0
- package/dist/curry.cjs +1 -1
- package/dist/curry.d.cts +2 -64
- package/dist/curry.d.ts +2 -64
- package/dist/curry.js +1 -1
- package/dist/debounce-6x-eQzOn.cjs +1 -0
- package/dist/debounce-BNkJBFrQ.d.cts +96 -0
- package/dist/debounce-BNkJBFrQ.d.cts.map +1 -0
- package/dist/debounce-BtqBDYXu.d.ts +96 -0
- package/dist/debounce-BtqBDYXu.d.ts.map +1 -0
- package/dist/debounce-C9xIAomT.js +2 -0
- package/dist/debounce-C9xIAomT.js.map +1 -0
- package/dist/debounce.cjs +1 -1
- package/dist/debounce.d.cts +2 -94
- package/dist/debounce.d.ts +2 -94
- package/dist/debounce.js +1 -1
- package/dist/deduped-BpPNbB_u.d.cts +23 -0
- package/dist/deduped-BpPNbB_u.d.cts.map +1 -0
- package/dist/deduped-C1IQABjb.d.ts +23 -0
- package/dist/deduped-C1IQABjb.d.ts.map +1 -0
- package/dist/difference-B5WQzd-Z.cjs +1 -0
- package/dist/difference-C1tclXTn.d.cts +37 -0
- package/dist/difference-C1tclXTn.d.cts.map +1 -0
- package/dist/difference-DM8qEnVj.d.ts +37 -0
- package/dist/difference-DM8qEnVj.d.ts.map +1 -0
- package/dist/difference-Dgeqsjn_.js +2 -0
- package/dist/difference-Dgeqsjn_.js.map +1 -0
- package/dist/difference-with-BqLSomQj.d.ts +48 -0
- package/dist/difference-with-BqLSomQj.d.ts.map +1 -0
- package/dist/difference-with-CNN8MVj2.cjs +1 -0
- package/dist/difference-with-CTy1JWpg.d.cts +48 -0
- package/dist/difference-with-CTy1JWpg.d.cts.map +1 -0
- package/dist/difference-with-CiySHDr9.js +2 -0
- package/dist/difference-with-CiySHDr9.js.map +1 -0
- package/dist/difference-with.cjs +1 -1
- package/dist/difference-with.d.cts +2 -46
- package/dist/difference-with.d.ts +2 -46
- package/dist/difference-with.js +1 -1
- package/dist/difference.cjs +1 -1
- package/dist/difference.d.cts +2 -35
- package/dist/difference.d.ts +2 -35
- package/dist/difference.js +1 -1
- package/dist/dist-BQGZfjDS.js +291 -0
- package/dist/dist-BQGZfjDS.js.map +1 -0
- package/dist/dist-gvJoKj_M.cjs +343 -0
- package/dist/divide-BI9ShWGE.js +2 -0
- package/dist/divide-BI9ShWGE.js.map +1 -0
- package/dist/divide-Bsz0OPIK.d.ts +33 -0
- package/dist/divide-Bsz0OPIK.d.ts.map +1 -0
- package/dist/divide-C8COFm-b.d.cts +33 -0
- package/dist/divide-C8COFm-b.d.cts.map +1 -0
- package/dist/divide-ZFT5ZqJ0.cjs +1 -0
- package/dist/divide.cjs +1 -1
- package/dist/divide.d.cts +2 -31
- package/dist/divide.d.ts +2 -31
- package/dist/divide.js +1 -1
- package/dist/do-nothing-Be29JGDG.js +2 -0
- package/dist/do-nothing-Be29JGDG.js.map +1 -0
- package/dist/do-nothing-BvLrwjB7.d.ts +28 -0
- package/dist/do-nothing-BvLrwjB7.d.ts.map +1 -0
- package/dist/do-nothing-Cc1faYu6.cjs +1 -0
- package/dist/do-nothing-xUCzRm4m.d.cts +28 -0
- package/dist/do-nothing-xUCzRm4m.d.cts.map +1 -0
- package/dist/do-nothing.cjs +1 -1
- package/dist/do-nothing.d.cts +2 -26
- package/dist/do-nothing.d.ts +2 -26
- package/dist/do-nothing.js +1 -1
- package/dist/drop-Bmm5QDJI.d.cts +40 -0
- package/dist/drop-Bmm5QDJI.d.cts.map +1 -0
- package/dist/drop-BvsV-rBc.js +2 -0
- package/dist/drop-BvsV-rBc.js.map +1 -0
- package/dist/drop-C-tVyU4K.cjs +1 -0
- package/dist/drop-DTeHYc-D.d.ts +40 -0
- package/dist/drop-DTeHYc-D.d.ts.map +1 -0
- package/dist/drop-first-by-CSqeAzwS.d.cts +41 -0
- package/dist/drop-first-by-CSqeAzwS.d.cts.map +1 -0
- package/dist/drop-first-by-Cclqg5G_.js +2 -0
- package/dist/drop-first-by-Cclqg5G_.js.map +1 -0
- package/dist/drop-first-by-DJOgP-yE.cjs +1 -0
- package/dist/drop-first-by-dH-OI2It.d.ts +41 -0
- package/dist/drop-first-by-dH-OI2It.d.ts.map +1 -0
- package/dist/drop-first-by.cjs +1 -1
- package/dist/drop-first-by.d.cts +4 -38
- package/dist/drop-first-by.d.ts +4 -38
- package/dist/drop-first-by.js +1 -1
- package/dist/drop-last-CX8JXA1b.cjs +1 -0
- package/dist/drop-last-CuCKuM4n.js +2 -0
- package/dist/drop-last-CuCKuM4n.js.map +1 -0
- package/dist/drop-last-oiDr5Owj.d.cts +32 -0
- package/dist/drop-last-oiDr5Owj.d.cts.map +1 -0
- package/dist/drop-last-vbp5oZaK.d.ts +32 -0
- package/dist/drop-last-vbp5oZaK.d.ts.map +1 -0
- package/dist/drop-last-while-BbasDoJh.d.ts +36 -0
- package/dist/drop-last-while-BbasDoJh.d.ts.map +1 -0
- package/dist/drop-last-while-C_hHfAhU.d.cts +36 -0
- package/dist/drop-last-while-C_hHfAhU.d.cts.map +1 -0
- package/dist/drop-last-while-DMzZWC3Y.cjs +1 -0
- package/dist/drop-last-while-StSGe_bf.js +2 -0
- package/dist/drop-last-while-StSGe_bf.js.map +1 -0
- package/dist/drop-last-while.cjs +1 -1
- package/dist/drop-last-while.d.cts +3 -33
- package/dist/drop-last-while.d.ts +3 -33
- package/dist/drop-last-while.js +1 -1
- package/dist/drop-last.cjs +1 -1
- package/dist/drop-last.d.cts +3 -29
- package/dist/drop-last.d.ts +3 -29
- package/dist/drop-last.js +1 -1
- package/dist/drop-while-BCln-hAn.js +2 -0
- package/dist/drop-while-BCln-hAn.js.map +1 -0
- package/dist/drop-while-BGbJsU8z.cjs +1 -0
- package/dist/drop-while-CzvSV4z7.d.ts +36 -0
- package/dist/drop-while-CzvSV4z7.d.ts.map +1 -0
- package/dist/drop-while-T3z_MbtJ.d.cts +36 -0
- package/dist/drop-while-T3z_MbtJ.d.cts.map +1 -0
- package/dist/drop-while.cjs +1 -1
- package/dist/drop-while.d.cts +3 -33
- package/dist/drop-while.d.ts +3 -33
- package/dist/drop-while.js +1 -1
- package/dist/drop.cjs +1 -1
- package/dist/drop.d.cts +8 -51
- package/dist/drop.d.ts +8 -51
- package/dist/drop.js +1 -1
- package/dist/entries--JP88NsB.d.cts +31 -0
- package/dist/entries--JP88NsB.d.cts.map +1 -0
- package/dist/entries-B1cH8giK.cjs +1 -0
- package/dist/entries-Bsl_GQTu.js +2 -0
- package/dist/entries-Bsl_GQTu.js.map +1 -0
- package/dist/entries-YDG-Mx3J.d.ts +31 -0
- package/dist/entries-YDG-Mx3J.d.ts.map +1 -0
- package/dist/entries.cjs +1 -1
- package/dist/entries.d.cts +3 -34
- package/dist/entries.d.ts +3 -34
- package/dist/entries.js +1 -1
- package/dist/enumerable-string-key-of-D2OpyD6n.d.cts +17 -0
- package/dist/enumerable-string-key-of-D2OpyD6n.d.cts.map +1 -0
- package/dist/enumerable-string-key-of-DKzYIarp.d.ts +17 -0
- package/dist/enumerable-string-key-of-DKzYIarp.d.ts.map +1 -0
- package/dist/enumerable-string-keyed-value-of-Bf_owt8O.d.ts +12 -0
- package/dist/enumerable-string-keyed-value-of-Bf_owt8O.d.ts.map +1 -0
- package/dist/enumerable-string-keyed-value-of-aov5dXss.d.cts +12 -0
- package/dist/enumerable-string-keyed-value-of-aov5dXss.d.cts.map +1 -0
- package/dist/evolve-BReerpSa.js +2 -0
- package/dist/evolve-BReerpSa.js.map +1 -0
- package/dist/evolve-CVvPsVxM.d.ts +101 -0
- package/dist/evolve-CVvPsVxM.d.ts.map +1 -0
- package/dist/evolve-DOxUNkYX.d.cts +101 -0
- package/dist/evolve-DOxUNkYX.d.cts.map +1 -0
- package/dist/evolve-DtSJxJiM.cjs +1 -0
- package/dist/evolve.cjs +1 -1
- package/dist/evolve.d.cts +3 -102
- package/dist/evolve.d.ts +3 -102
- package/dist/evolve.js +1 -1
- package/dist/filter-CH_YQe9A.js +2 -0
- package/dist/filter-CH_YQe9A.js.map +1 -0
- package/dist/filter-CkFzFT5Q.d.cts +50 -0
- package/dist/filter-CkFzFT5Q.d.cts.map +1 -0
- package/dist/filter-Dlsk63lj.d.ts +50 -0
- package/dist/filter-Dlsk63lj.d.ts.map +1 -0
- package/dist/filter-DsjklegV.cjs +1 -0
- package/dist/filter.cjs +1 -1
- package/dist/filter.d.cts +7 -51
- package/dist/filter.d.ts +7 -51
- package/dist/filter.js +1 -1
- package/dist/filtered-array-BGEkFwrv.d.ts +13 -0
- package/dist/filtered-array-BGEkFwrv.d.ts.map +1 -0
- package/dist/filtered-array-DQcAXQDD.d.cts +13 -0
- package/dist/filtered-array-DQcAXQDD.d.cts.map +1 -0
- package/dist/find-7ahTlXcE.d.ts +64 -0
- package/dist/find-7ahTlXcE.d.ts.map +1 -0
- package/dist/find-Bc-wGZYR.d.cts +64 -0
- package/dist/find-Bc-wGZYR.d.cts.map +1 -0
- package/dist/find-BuO4hH8Z.cjs +1 -0
- package/dist/find-DR6lM3gh.js +2 -0
- package/dist/find-DR6lM3gh.js.map +1 -0
- package/dist/find-index-BO_tEYVo.d.ts +50 -0
- package/dist/find-index-BO_tEYVo.d.ts.map +1 -0
- package/dist/find-index-CojMwOU1.cjs +1 -0
- package/dist/find-index-CzHRd1Ey.js +2 -0
- package/dist/find-index-CzHRd1Ey.js.map +1 -0
- package/dist/find-index-mVR2WVAJ.d.cts +50 -0
- package/dist/find-index-mVR2WVAJ.d.cts.map +1 -0
- package/dist/find-index.cjs +1 -1
- package/dist/find-index.d.cts +2 -48
- package/dist/find-index.d.ts +2 -48
- package/dist/find-index.js +1 -1
- package/dist/find-last-CekkNCww.d.ts +62 -0
- package/dist/find-last-CekkNCww.d.ts.map +1 -0
- package/dist/find-last-DqGxSxQ-.d.cts +62 -0
- package/dist/find-last-DqGxSxQ-.d.cts.map +1 -0
- package/dist/find-last-gCcPzwJP.js +2 -0
- package/dist/find-last-gCcPzwJP.js.map +1 -0
- package/dist/find-last-index-C-wdKiKp.cjs +1 -0
- package/dist/find-last-index-C4il48Y6.d.cts +50 -0
- package/dist/find-last-index-C4il48Y6.d.cts.map +1 -0
- package/dist/find-last-index-DuYnKTXJ.js +2 -0
- package/dist/find-last-index-DuYnKTXJ.js.map +1 -0
- package/dist/find-last-index-XB_3-4xj.d.ts +50 -0
- package/dist/find-last-index-XB_3-4xj.d.ts.map +1 -0
- package/dist/find-last-index.cjs +1 -1
- package/dist/find-last-index.d.cts +2 -48
- package/dist/find-last-index.d.ts +2 -48
- package/dist/find-last-index.js +1 -1
- package/dist/find-last-yrb1RLMJ.cjs +1 -0
- package/dist/find-last.cjs +1 -1
- package/dist/find-last.d.cts +2 -60
- package/dist/find-last.d.ts +2 -60
- package/dist/find-last.js +1 -1
- package/dist/find.cjs +1 -1
- package/dist/find.d.cts +2 -62
- package/dist/find.d.ts +2 -62
- package/dist/find.js +1 -1
- package/dist/first-1NtfTucX.d.ts +40 -0
- package/dist/first-1NtfTucX.d.ts.map +1 -0
- package/dist/first-C3rp67g0.d.cts +40 -0
- package/dist/first-C3rp67g0.d.cts.map +1 -0
- package/dist/first-DDQc8owl.js +2 -0
- package/dist/first-DDQc8owl.js.map +1 -0
- package/dist/first-Dbxt3OEg.cjs +1 -0
- package/dist/first-by-B5IsCexF.js +2 -0
- package/dist/first-by-B5IsCexF.js.map +1 -0
- package/dist/first-by-BzxRBZ5J.cjs +1 -0
- package/dist/first-by-C0qf5rwh.d.ts +60 -0
- package/dist/first-by-C0qf5rwh.d.ts.map +1 -0
- package/dist/first-by-Dm9iyhMz.d.cts +60 -0
- package/dist/first-by-Dm9iyhMz.d.cts.map +1 -0
- package/dist/first-by.cjs +1 -1
- package/dist/first-by.d.cts +5 -58
- package/dist/first-by.d.ts +5 -58
- package/dist/first-by.js +1 -1
- package/dist/first.cjs +1 -1
- package/dist/first.d.cts +3 -38
- package/dist/first.d.ts +3 -38
- package/dist/first.js +1 -1
- package/dist/flat-BayJJsR-.cjs +1 -0
- package/dist/flat-BbBf5kJs.d.ts +53 -0
- package/dist/flat-BbBf5kJs.d.ts.map +1 -0
- package/dist/flat-CJrZ3ALE.d.cts +53 -0
- package/dist/flat-CJrZ3ALE.d.cts.map +1 -0
- package/dist/flat-Cd7pIXar.js +2 -0
- package/dist/flat-Cd7pIXar.js.map +1 -0
- package/dist/flat-map-1WAgW39N.js +2 -0
- package/dist/flat-map-1WAgW39N.js.map +1 -0
- package/dist/flat-map-BI-sJd2B.cjs +1 -0
- package/dist/flat-map-Do5YLueq.d.cts +47 -0
- package/dist/flat-map-Do5YLueq.d.cts.map +1 -0
- package/dist/flat-map-Ok5sZOb2.d.ts +47 -0
- package/dist/flat-map-Ok5sZOb2.d.ts.map +1 -0
- package/dist/flat-map.cjs +1 -1
- package/dist/flat-map.d.cts +2 -45
- package/dist/flat-map.d.ts +2 -45
- package/dist/flat-map.js +1 -1
- package/dist/flat.cjs +1 -1
- package/dist/flat.d.cts +3 -57
- package/dist/flat.d.ts +3 -57
- package/dist/flat.js +1 -1
- package/dist/floor-Bj0O0YjY.cjs +1 -0
- package/dist/floor-C9us6h14.d.ts +39 -0
- package/dist/floor-C9us6h14.d.ts.map +1 -0
- package/dist/floor-C_xareFD.js +2 -0
- package/dist/floor-C_xareFD.js.map +1 -0
- package/dist/floor-bA1oX38x.d.cts +39 -0
- package/dist/floor-bA1oX38x.d.cts.map +1 -0
- package/dist/floor.cjs +1 -1
- package/dist/floor.d.cts +2 -37
- package/dist/floor.d.ts +2 -37
- package/dist/floor.js +1 -1
- package/dist/for-each-BtbPzNDc.cjs +1 -0
- package/dist/for-each-CYTR5H9O.d.cts +54 -0
- package/dist/for-each-CYTR5H9O.d.cts.map +1 -0
- package/dist/for-each-ClKbAv3A.js +2 -0
- package/dist/for-each-ClKbAv3A.js.map +1 -0
- package/dist/for-each-DIxtfnNY.d.ts +54 -0
- package/dist/for-each-DIxtfnNY.d.ts.map +1 -0
- package/dist/for-each-obj-B6BJwtgs.cjs +1 -0
- package/dist/for-each-obj-CJFU3pj_.js +2 -0
- package/dist/for-each-obj-CJFU3pj_.js.map +1 -0
- package/dist/for-each-obj-DRgFFti8.d.ts +47 -0
- package/dist/for-each-obj-DRgFFti8.d.ts.map +1 -0
- package/dist/for-each-obj-yV90UbvE.d.cts +47 -0
- package/dist/for-each-obj-yV90UbvE.d.cts.map +1 -0
- package/dist/for-each-obj.cjs +1 -1
- package/dist/for-each-obj.d.cts +5 -46
- package/dist/for-each-obj.d.ts +5 -46
- package/dist/for-each-obj.js +1 -1
- package/dist/for-each.cjs +1 -1
- package/dist/for-each.d.cts +3 -51
- package/dist/for-each.d.ts +3 -51
- package/dist/for-each.js +1 -1
- package/dist/from-entries-BqW53CyR.d.ts +68 -0
- package/dist/from-entries-BqW53CyR.d.ts.map +1 -0
- package/dist/from-entries-CToFI5yO.d.cts +68 -0
- package/dist/from-entries-CToFI5yO.d.cts.map +1 -0
- package/dist/from-entries-D6f6Bd0l.js +2 -0
- package/dist/from-entries-D6f6Bd0l.js.map +1 -0
- package/dist/from-entries-DDkKcu-p.cjs +1 -0
- package/dist/from-entries.cjs +1 -1
- package/dist/from-entries.d.cts +4 -74
- package/dist/from-entries.d.ts +4 -74
- package/dist/from-entries.js +1 -1
- package/dist/from-keys-BYHfvCLR.d.ts +60 -0
- package/dist/from-keys-BYHfvCLR.d.ts.map +1 -0
- package/dist/from-keys-CI2PJlIM.cjs +1 -0
- package/dist/from-keys-DJe8xU7b.js +2 -0
- package/dist/from-keys-DJe8xU7b.js.map +1 -0
- package/dist/from-keys-Ds1mndVk.d.cts +60 -0
- package/dist/from-keys-Ds1mndVk.d.cts.map +1 -0
- package/dist/from-keys.cjs +1 -1
- package/dist/from-keys.d.cts +5 -62
- package/dist/from-keys.d.ts +5 -62
- package/dist/from-keys.js +1 -1
- package/dist/funnel-1FhwR-u9.d.ts +155 -0
- package/dist/funnel-1FhwR-u9.d.ts.map +1 -0
- package/dist/funnel-CEbURcmp.js +2 -0
- package/dist/funnel-CEbURcmp.js.map +1 -0
- package/dist/funnel-CL-QFpGk.cjs +1 -0
- package/dist/funnel-DRrT4WPx.d.cts +155 -0
- package/dist/funnel-DRrT4WPx.d.cts.map +1 -0
- package/dist/funnel.cjs +1 -1
- package/dist/funnel.d.cts +2 -147
- package/dist/funnel.d.ts +2 -147
- package/dist/funnel.js +1 -1
- package/dist/funnel.lodash-debounce-with-cached-value.test.cjs +1 -1
- package/dist/funnel.lodash-debounce-with-cached-value.test.d.cts +1 -2
- package/dist/funnel.lodash-debounce-with-cached-value.test.d.ts +1 -2
- package/dist/funnel.lodash-debounce-with-cached-value.test.js +2 -1
- package/dist/funnel.lodash-debounce-with-cached-value.test.js.map +1 -0
- package/dist/funnel.lodash-debounce.test.cjs +1 -1
- package/dist/funnel.lodash-debounce.test.d.cts +1 -2
- package/dist/funnel.lodash-debounce.test.d.ts +1 -2
- package/dist/funnel.lodash-debounce.test.js +2 -1
- package/dist/funnel.lodash-debounce.test.js.map +1 -0
- package/dist/funnel.lodash-throttle-with-cached-value.test.cjs +1 -1
- package/dist/funnel.lodash-throttle-with-cached-value.test.d.cts +1 -2
- package/dist/funnel.lodash-throttle-with-cached-value.test.d.ts +1 -2
- package/dist/funnel.lodash-throttle-with-cached-value.test.js +2 -1
- package/dist/funnel.lodash-throttle-with-cached-value.test.js.map +1 -0
- package/dist/funnel.lodash-throttle.test.cjs +1 -1
- package/dist/funnel.lodash-throttle.test.d.cts +1 -2
- package/dist/funnel.lodash-throttle.test.d.ts +1 -2
- package/dist/funnel.lodash-throttle.test.js +2 -1
- package/dist/funnel.lodash-throttle.test.js.map +1 -0
- package/dist/funnel.perkakas-debounce.test.cjs +1 -1
- package/dist/funnel.perkakas-debounce.test.d.cts +1 -2
- package/dist/funnel.perkakas-debounce.test.d.ts +1 -2
- package/dist/funnel.perkakas-debounce.test.js +2 -1
- package/dist/funnel.perkakas-debounce.test.js.map +1 -0
- package/dist/funnel.reference-batch.test.cjs +1 -1
- package/dist/funnel.reference-batch.test.d.cts +1 -2
- package/dist/funnel.reference-batch.test.d.ts +1 -2
- package/dist/funnel.reference-batch.test.js +2 -1
- package/dist/funnel.reference-batch.test.js.map +1 -0
- package/dist/funnel.test-d.cjs +1 -1
- package/dist/funnel.test-d.d.cts +1 -2
- package/dist/funnel.test-d.d.ts +1 -2
- package/dist/funnel.test-d.js +2 -1
- package/dist/funnel.test-d.js.map +1 -0
- package/dist/funnel.test.cjs +1 -1
- package/dist/funnel.test.d.cts +1 -2
- package/dist/funnel.test.d.ts +1 -2
- package/dist/funnel.test.js +2 -1
- package/dist/funnel.test.js.map +1 -0
- package/dist/group-by-057Glgkg.cjs +1 -0
- package/dist/group-by-8exEDbij.js +2 -0
- package/dist/group-by-8exEDbij.js.map +1 -0
- package/dist/group-by-DDS1NPHf.d.cts +69 -0
- package/dist/group-by-DDS1NPHf.d.cts.map +1 -0
- package/dist/group-by-prop--MehVKql.d.ts +89 -0
- package/dist/group-by-prop--MehVKql.d.ts.map +1 -0
- package/dist/group-by-prop-ByeUoeXV.cjs +1 -0
- package/dist/group-by-prop-CcSzCSuu.d.cts +89 -0
- package/dist/group-by-prop-CcSzCSuu.d.cts.map +1 -0
- package/dist/group-by-prop-Gi66eXCp.js +2 -0
- package/dist/group-by-prop-Gi66eXCp.js.map +1 -0
- package/dist/group-by-prop.cjs +1 -1
- package/dist/group-by-prop.d.cts +11 -93
- package/dist/group-by-prop.d.ts +11 -93
- package/dist/group-by-prop.js +1 -1
- package/dist/group-by-schxH1QR.d.ts +69 -0
- package/dist/group-by-schxH1QR.d.ts.map +1 -0
- package/dist/group-by.cjs +1 -1
- package/dist/group-by.d.cts +5 -69
- package/dist/group-by.d.ts +5 -69
- package/dist/group-by.js +1 -1
- package/dist/has-at-least-6iRvhsST.js +2 -0
- package/dist/has-at-least-6iRvhsST.js.map +1 -0
- package/dist/has-at-least-BbYfXc8L.d.cts +59 -0
- package/dist/has-at-least-BbYfXc8L.d.cts.map +1 -0
- package/dist/has-at-least-D-ahiJB6.cjs +1 -0
- package/dist/has-at-least-D1A8i5J3.d.ts +59 -0
- package/dist/has-at-least-D1A8i5J3.d.ts.map +1 -0
- package/dist/has-at-least.cjs +1 -1
- package/dist/has-at-least.d.cts +8 -60
- package/dist/has-at-least.d.ts +8 -60
- package/dist/has-at-least.js +1 -1
- package/dist/has-sub-object-C7LwzJ88.js +2 -0
- package/dist/has-sub-object-C7LwzJ88.js.map +1 -0
- package/dist/has-sub-object-DPcKaDk7.d.ts +44 -0
- package/dist/has-sub-object-DPcKaDk7.d.ts.map +1 -0
- package/dist/has-sub-object-DjlCWSUi.cjs +1 -0
- package/dist/has-sub-object-oUnH6b7a.d.cts +44 -0
- package/dist/has-sub-object-oUnH6b7a.d.cts.map +1 -0
- package/dist/has-sub-object.cjs +1 -1
- package/dist/has-sub-object.d.cts +2 -52
- package/dist/has-sub-object.d.ts +2 -52
- package/dist/has-sub-object.js +1 -1
- package/dist/heap-BrQEhV5W.js +2 -0
- package/dist/heap-BrQEhV5W.js.map +1 -0
- package/dist/heap-CpdbyWAN.cjs +1 -0
- package/dist/human-readable-file-size-BtprvwQj.cjs +1 -0
- package/dist/human-readable-file-size-C2gHuBVX.d.ts +17 -0
- package/dist/human-readable-file-size-C2gHuBVX.d.ts.map +1 -0
- package/dist/human-readable-file-size-CPeHO1Te.js +2 -0
- package/dist/human-readable-file-size-CPeHO1Te.js.map +1 -0
- package/dist/human-readable-file-size-DtwHNZes.d.cts +17 -0
- package/dist/human-readable-file-size-DtwHNZes.d.cts.map +1 -0
- package/dist/human-readable-file-size.cjs +1 -1
- package/dist/human-readable-file-size.d.cts +2 -15
- package/dist/human-readable-file-size.d.ts +2 -15
- package/dist/human-readable-file-size.js +1 -1
- package/dist/identity-BAryUWbs.cjs +1 -0
- package/dist/identity-BwbmOFJX.d.ts +22 -0
- package/dist/identity-BwbmOFJX.d.ts.map +1 -0
- package/dist/identity-CPDLj9Cq.d.cts +22 -0
- package/dist/identity-CPDLj9Cq.d.cts.map +1 -0
- package/dist/identity-D7NWGnLw.js +2 -0
- package/dist/identity-D7NWGnLw.js.map +1 -0
- package/dist/identity.cjs +1 -1
- package/dist/identity.d.cts +2 -20
- package/dist/identity.d.ts +2 -20
- package/dist/identity.js +1 -1
- package/dist/index-by-BJH9P6kU.cjs +1 -0
- package/dist/index-by-CJj3L6wv.d.ts +53 -0
- package/dist/index-by-CJj3L6wv.d.ts.map +1 -0
- package/dist/index-by-CNa3p-Is.d.cts +53 -0
- package/dist/index-by-CNa3p-Is.d.cts.map +1 -0
- package/dist/index-by-adSf-XkW.js +2 -0
- package/dist/index-by-adSf-XkW.js.map +1 -0
- package/dist/index-by.cjs +1 -1
- package/dist/index-by.d.cts +4 -53
- package/dist/index-by.d.ts +4 -53
- package/dist/index-by.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +186 -185
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +186 -185
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -0
- package/dist/int-range-inclusive-BSXuRjMO.d.ts +15 -0
- package/dist/int-range-inclusive-BSXuRjMO.d.ts.map +1 -0
- package/dist/int-range-inclusive-DZG3R2Xl.d.cts +15 -0
- package/dist/int-range-inclusive-DZG3R2Xl.d.cts.map +1 -0
- package/dist/intersection-CaBWENw7.d.cts +37 -0
- package/dist/intersection-CaBWENw7.d.cts.map +1 -0
- package/dist/intersection-Crt0YdjH.js +2 -0
- package/dist/intersection-Crt0YdjH.js.map +1 -0
- package/dist/intersection-DJQJxp9k.d.ts +37 -0
- package/dist/intersection-DJQJxp9k.d.ts.map +1 -0
- package/dist/intersection-pxjmHAj1.cjs +1 -0
- package/dist/intersection-with-COmRebRq.d.ts +54 -0
- package/dist/intersection-with-COmRebRq.d.ts.map +1 -0
- package/dist/intersection-with-DlHJvAUn.js +2 -0
- package/dist/intersection-with-DlHJvAUn.js.map +1 -0
- package/dist/intersection-with-Dre9A1oC.d.cts +54 -0
- package/dist/intersection-with-Dre9A1oC.d.cts.map +1 -0
- package/dist/intersection-with-X3fvRkLr.cjs +1 -0
- package/dist/intersection-with.cjs +1 -1
- package/dist/intersection-with.d.cts +2 -52
- package/dist/intersection-with.d.ts +2 -52
- package/dist/intersection-with.js +1 -1
- package/dist/intersection.cjs +1 -1
- package/dist/intersection.d.cts +2 -35
- package/dist/intersection.d.ts +2 -35
- package/dist/intersection.js +1 -1
- package/dist/invert-DMSQXxyb.d.ts +33 -0
- package/dist/invert-DMSQXxyb.d.ts.map +1 -0
- package/dist/invert-DhET3F4O.cjs +1 -0
- package/dist/invert-DsEwwjea.js +2 -0
- package/dist/invert-DsEwwjea.js.map +1 -0
- package/dist/invert-W6EUYMws.d.cts +33 -0
- package/dist/invert-W6EUYMws.d.cts.map +1 -0
- package/dist/invert.cjs +1 -1
- package/dist/invert.d.cts +3 -33
- package/dist/invert.d.ts +3 -33
- package/dist/invert.js +1 -1
- package/dist/is-array-DAz7gkMm.d.cts +21 -0
- package/dist/is-array-DAz7gkMm.d.cts.map +1 -0
- package/dist/is-array-DWFX2okh.js +2 -0
- package/dist/is-array-DWFX2okh.js.map +1 -0
- package/dist/is-array-KzYs6pgh.cjs +1 -0
- package/dist/is-array-prXR4sUC.d.ts +21 -0
- package/dist/is-array-prXR4sUC.d.ts.map +1 -0
- package/dist/is-array.cjs +1 -1
- package/dist/is-array.d.cts +3 -19
- package/dist/is-array.d.ts +3 -19
- package/dist/is-array.js +1 -1
- package/dist/is-big-int-Cgisg7DN.cjs +1 -0
- package/dist/is-big-int-CnWK6SmP.js +2 -0
- package/dist/is-big-int-CnWK6SmP.js.map +1 -0
- package/dist/is-big-int-Dow1Lswh.d.cts +22 -0
- package/dist/is-big-int-Dow1Lswh.d.cts.map +1 -0
- package/dist/is-big-int-e123CwI2.d.ts +22 -0
- package/dist/is-big-int-e123CwI2.d.ts.map +1 -0
- package/dist/is-big-int.cjs +1 -1
- package/dist/is-big-int.d.cts +3 -20
- package/dist/is-big-int.d.ts +3 -20
- package/dist/is-big-int.js +1 -1
- package/dist/is-boolean-CZKz4ij3.js +2 -0
- package/dist/is-boolean-CZKz4ij3.js.map +1 -0
- package/dist/is-boolean-DADmOIbu.cjs +1 -0
- package/dist/is-boolean-DWuHhrIe.d.ts +21 -0
- package/dist/is-boolean-DWuHhrIe.d.ts.map +1 -0
- package/dist/is-boolean-NhoGl1jZ.d.cts +21 -0
- package/dist/is-boolean-NhoGl1jZ.d.cts.map +1 -0
- package/dist/is-boolean.cjs +1 -1
- package/dist/is-boolean.d.cts +3 -19
- package/dist/is-boolean.d.ts +3 -19
- package/dist/is-boolean.js +1 -1
- package/dist/is-bounded-record-DCEYRY41.d.ts +34 -0
- package/dist/is-bounded-record-DCEYRY41.d.ts.map +1 -0
- package/dist/is-bounded-record-kpsb1wQA.d.cts +34 -0
- package/dist/is-bounded-record-kpsb1wQA.d.cts.map +1 -0
- package/dist/is-date--gIC--NA.d.cts +17 -0
- package/dist/is-date--gIC--NA.d.cts.map +1 -0
- package/dist/is-date-BgcZ3-ed.d.ts +17 -0
- package/dist/is-date-BgcZ3-ed.d.ts.map +1 -0
- package/dist/is-date-CNebQb0Y.cjs +1 -0
- package/dist/is-date-DKKVtHVY.js +2 -0
- package/dist/is-date-DKKVtHVY.js.map +1 -0
- package/dist/is-date.cjs +1 -1
- package/dist/is-date.d.cts +2 -15
- package/dist/is-date.d.ts +2 -15
- package/dist/is-date.js +1 -1
- package/dist/is-deep-equal-B_XN4vCU.d.ts +71 -0
- package/dist/is-deep-equal-B_XN4vCU.d.ts.map +1 -0
- package/dist/is-deep-equal-CtBdM4eT.d.cts +71 -0
- package/dist/is-deep-equal-CtBdM4eT.d.cts.map +1 -0
- package/dist/is-deep-equal-D7dqs3e2.js +2 -0
- package/dist/is-deep-equal-D7dqs3e2.js.map +1 -0
- package/dist/is-deep-equal-DR9xJg8D.cjs +1 -0
- package/dist/is-deep-equal.cjs +1 -1
- package/dist/is-deep-equal.d.cts +2 -69
- package/dist/is-deep-equal.d.ts +2 -69
- package/dist/is-deep-equal.js +1 -1
- package/dist/is-defined-3Qp6lmQw.d.cts +19 -0
- package/dist/is-defined-3Qp6lmQw.d.cts.map +1 -0
- package/dist/is-defined-BnbPFPUx.cjs +1 -0
- package/dist/is-defined-DESIOXqX.d.ts +19 -0
- package/dist/is-defined-DESIOXqX.d.ts.map +1 -0
- package/dist/is-defined-bdl8LRyD.js +2 -0
- package/dist/is-defined-bdl8LRyD.js.map +1 -0
- package/dist/is-defined.cjs +1 -1
- package/dist/is-defined.d.cts +2 -17
- package/dist/is-defined.d.ts +2 -17
- package/dist/is-defined.js +1 -1
- package/dist/is-empty-BSkgk0sE.js +2 -0
- package/dist/is-empty-BSkgk0sE.js.map +1 -0
- package/dist/is-empty-CFT22qg4.d.cts +35 -0
- package/dist/is-empty-CFT22qg4.d.cts.map +1 -0
- package/dist/is-empty-qOplNC63.d.ts +35 -0
- package/dist/is-empty-qOplNC63.d.ts.map +1 -0
- package/dist/is-empty-s3B43K38.cjs +1 -0
- package/dist/is-empty.cjs +1 -1
- package/dist/is-empty.d.cts +3 -32
- package/dist/is-empty.d.ts +3 -32
- package/dist/is-empty.js +1 -1
- package/dist/is-error-7hLjNT9B.d.cts +18 -0
- package/dist/is-error-7hLjNT9B.d.cts.map +1 -0
- package/dist/is-error-C0Qr0E3U.js +2 -0
- package/dist/is-error-C0Qr0E3U.js.map +1 -0
- package/dist/is-error-CjiajQ5C.d.ts +18 -0
- package/dist/is-error-CjiajQ5C.d.ts.map +1 -0
- package/dist/is-error-bQ2IwWHj.cjs +1 -0
- package/dist/is-error.cjs +1 -1
- package/dist/is-error.d.cts +2 -16
- package/dist/is-error.d.ts +2 -16
- package/dist/is-error.js +1 -1
- package/dist/is-function-DaoOpTFE.cjs +1 -0
- package/dist/is-function-DpNu_iYN.d.ts +18 -0
- package/dist/is-function-DpNu_iYN.d.ts.map +1 -0
- package/dist/is-function-o1ixw9eS.d.cts +18 -0
- package/dist/is-function-o1ixw9eS.d.cts.map +1 -0
- package/dist/is-function-r9PVEQ1p.js +2 -0
- package/dist/is-function-r9PVEQ1p.js.map +1 -0
- package/dist/is-function.cjs +1 -1
- package/dist/is-function.d.cts +2 -16
- package/dist/is-function.d.ts +2 -16
- package/dist/is-function.js +1 -1
- package/dist/is-included-in-B1CoqHXo.cjs +1 -0
- package/dist/is-included-in-BeJz7gyj.js +2 -0
- package/dist/is-included-in-BeJz7gyj.js.map +1 -0
- package/dist/is-included-in-CPnrdiNI.d.ts +110 -0
- package/dist/is-included-in-CPnrdiNI.d.ts.map +1 -0
- package/dist/is-included-in-ciZ0ThQh.d.cts +110 -0
- package/dist/is-included-in-ciZ0ThQh.d.cts.map +1 -0
- package/dist/is-included-in.cjs +1 -1
- package/dist/is-included-in.d.cts +4 -107
- package/dist/is-included-in.d.ts +4 -107
- package/dist/is-included-in.js +1 -1
- package/dist/is-non-null-BaxoBfPo.js +2 -0
- package/dist/is-non-null-BaxoBfPo.js.map +1 -0
- package/dist/is-non-null-DnDE6zDD.cjs +1 -0
- package/dist/is-non-null-DtN0OIEX.d.cts +19 -0
- package/dist/is-non-null-DtN0OIEX.d.cts.map +1 -0
- package/dist/is-non-null-Y3FhczVS.d.ts +19 -0
- package/dist/is-non-null-Y3FhczVS.d.ts.map +1 -0
- package/dist/is-non-null.cjs +1 -1
- package/dist/is-non-null.d.cts +2 -17
- package/dist/is-non-null.d.ts +2 -17
- package/dist/is-non-null.js +1 -1
- package/dist/is-non-nullish-BW-uIWkn.d.cts +20 -0
- package/dist/is-non-nullish-BW-uIWkn.d.cts.map +1 -0
- package/dist/is-non-nullish-C7zZvb8c.d.ts +20 -0
- package/dist/is-non-nullish-C7zZvb8c.d.ts.map +1 -0
- package/dist/is-non-nullish-CgmLeA39.cjs +1 -0
- package/dist/is-non-nullish-CsmQhBq1.js +2 -0
- package/dist/is-non-nullish-CsmQhBq1.js.map +1 -0
- package/dist/is-non-nullish.cjs +1 -1
- package/dist/is-non-nullish.d.cts +2 -18
- package/dist/is-non-nullish.d.ts +2 -18
- package/dist/is-non-nullish.js +1 -1
- package/dist/is-not-C2o5RmWD.cjs +1 -0
- package/dist/is-not-CBCnEdKF.js +2 -0
- package/dist/is-not-CBCnEdKF.js.map +1 -0
- package/dist/is-not-DYVAMLBs.d.cts +19 -0
- package/dist/is-not-DYVAMLBs.d.cts.map +1 -0
- package/dist/is-not-VNjzMFnp.d.ts +19 -0
- package/dist/is-not-VNjzMFnp.d.ts.map +1 -0
- package/dist/is-not.cjs +1 -1
- package/dist/is-not.d.cts +2 -17
- package/dist/is-not.d.ts +2 -17
- package/dist/is-not.js +1 -1
- package/dist/is-nullish-CEDQo8Hn.d.ts +23 -0
- package/dist/is-nullish-CEDQo8Hn.d.ts.map +1 -0
- package/dist/is-nullish-DSaUMZZs.js +2 -0
- package/dist/is-nullish-DSaUMZZs.js.map +1 -0
- package/dist/is-nullish-Dd6vFJuS.cjs +1 -0
- package/dist/is-nullish-Djw8KpQn.d.cts +23 -0
- package/dist/is-nullish-Djw8KpQn.d.cts.map +1 -0
- package/dist/is-nullish.cjs +1 -1
- package/dist/is-nullish.d.cts +3 -21
- package/dist/is-nullish.d.ts +3 -21
- package/dist/is-nullish.js +1 -1
- package/dist/is-number-CTdFYf2z.d.cts +22 -0
- package/dist/is-number-CTdFYf2z.d.cts.map +1 -0
- package/dist/is-number-CZ5Eb2Cm.d.ts +22 -0
- package/dist/is-number-CZ5Eb2Cm.d.ts.map +1 -0
- package/dist/is-number-DRJ5I-tT.js +2 -0
- package/dist/is-number-DRJ5I-tT.js.map +1 -0
- package/dist/is-number-Dh9GBANx.cjs +1 -0
- package/dist/is-number.cjs +1 -1
- package/dist/is-number.d.cts +3 -20
- package/dist/is-number.d.ts +3 -20
- package/dist/is-number.js +1 -1
- package/dist/is-object-type-4fvedNiu.d.ts +35 -0
- package/dist/is-object-type-4fvedNiu.d.ts.map +1 -0
- package/dist/is-object-type-8OtwCXgl.cjs +1 -0
- package/dist/is-object-type-BWyBChB5.js +2 -0
- package/dist/is-object-type-BWyBChB5.js.map +1 -0
- package/dist/is-object-type-D5u6pYGC.d.cts +35 -0
- package/dist/is-object-type-D5u6pYGC.d.cts.map +1 -0
- package/dist/is-object-type.cjs +1 -1
- package/dist/is-object-type.d.cts +3 -33
- package/dist/is-object-type.d.ts +3 -33
- package/dist/is-object-type.js +1 -1
- package/dist/is-plain-object-BlyD-E-m.d.ts +33 -0
- package/dist/is-plain-object-BlyD-E-m.d.ts.map +1 -0
- package/dist/is-plain-object-BvL_W8IP.d.cts +33 -0
- package/dist/is-plain-object-BvL_W8IP.d.cts.map +1 -0
- package/dist/is-plain-object-Cnx_x0Ei.js +2 -0
- package/dist/is-plain-object-Cnx_x0Ei.js.map +1 -0
- package/dist/is-plain-object-ufeXFQks.cjs +1 -0
- package/dist/is-plain-object.cjs +1 -1
- package/dist/is-plain-object.d.cts +3 -31
- package/dist/is-plain-object.d.ts +3 -31
- package/dist/is-plain-object.js +1 -1
- package/dist/is-promise-BVzvJRjb.cjs +1 -0
- package/dist/is-promise-CcLSSGQE.d.ts +18 -0
- package/dist/is-promise-CcLSSGQE.d.ts.map +1 -0
- package/dist/is-promise-DbVIpcYL.js +2 -0
- package/dist/is-promise-DbVIpcYL.js.map +1 -0
- package/dist/is-promise-VSzOkl6R.d.cts +18 -0
- package/dist/is-promise-VSzOkl6R.d.cts.map +1 -0
- package/dist/is-promise.cjs +1 -1
- package/dist/is-promise.d.cts +2 -16
- package/dist/is-promise.d.ts +2 -16
- package/dist/is-promise.js +1 -1
- package/dist/is-shallow-equal-BygWppM-.js +2 -0
- package/dist/is-shallow-equal-BygWppM-.js.map +1 -0
- package/dist/is-shallow-equal-CSDwHXxr.cjs +1 -0
- package/dist/is-shallow-equal-DQCnwLNk.d.ts +71 -0
- package/dist/is-shallow-equal-DQCnwLNk.d.ts.map +1 -0
- package/dist/is-shallow-equal-DuVbTG3f.d.cts +71 -0
- package/dist/is-shallow-equal-DuVbTG3f.d.cts.map +1 -0
- package/dist/is-shallow-equal.cjs +1 -1
- package/dist/is-shallow-equal.d.cts +2 -69
- package/dist/is-shallow-equal.d.ts +2 -69
- package/dist/is-shallow-equal.js +1 -1
- package/dist/is-strict-equal-2zT4bfOn.js +2 -0
- package/dist/is-strict-equal-2zT4bfOn.js.map +1 -0
- package/dist/is-strict-equal-5yvkDn8Q.d.ts +67 -0
- package/dist/is-strict-equal-5yvkDn8Q.d.ts.map +1 -0
- package/dist/is-strict-equal-Ct5kAZ5_.d.cts +67 -0
- package/dist/is-strict-equal-Ct5kAZ5_.d.cts.map +1 -0
- package/dist/is-strict-equal-sxCmPWrn.cjs +1 -0
- package/dist/is-strict-equal.cjs +1 -1
- package/dist/is-strict-equal.d.cts +2 -65
- package/dist/is-strict-equal.d.ts +2 -65
- package/dist/is-strict-equal.js +1 -1
- package/dist/is-string-A-koYYS3.js +2 -0
- package/dist/is-string-A-koYYS3.js.map +1 -0
- package/dist/is-string-DAe_2BJR.d.ts +20 -0
- package/dist/is-string-DAe_2BJR.d.ts.map +1 -0
- package/dist/is-string-DiT0W6sZ.cjs +1 -0
- package/dist/is-string-wfqO0Lag.d.cts +20 -0
- package/dist/is-string-wfqO0Lag.d.cts.map +1 -0
- package/dist/is-string.cjs +1 -1
- package/dist/is-string.d.cts +3 -18
- package/dist/is-string.d.ts +3 -18
- package/dist/is-string.js +1 -1
- package/dist/is-symbol-CIR-W22K.d.cts +20 -0
- package/dist/is-symbol-CIR-W22K.d.cts.map +1 -0
- package/dist/is-symbol-CVwn3meF.d.ts +20 -0
- package/dist/is-symbol-CVwn3meF.d.ts.map +1 -0
- package/dist/is-symbol-DFWPkgNV.cjs +1 -0
- package/dist/is-symbol-Vzo5mVUM.js +2 -0
- package/dist/is-symbol-Vzo5mVUM.js.map +1 -0
- package/dist/is-symbol.cjs +1 -1
- package/dist/is-symbol.d.cts +3 -18
- package/dist/is-symbol.d.ts +3 -18
- package/dist/is-symbol.js +1 -1
- package/dist/is-truthy-CJgAM1AZ.cjs +1 -0
- package/dist/is-truthy-CoTXzAuK.d.cts +21 -0
- package/dist/is-truthy-CoTXzAuK.d.cts.map +1 -0
- package/dist/is-truthy-Ctdf-v7U.d.ts +21 -0
- package/dist/is-truthy-Ctdf-v7U.d.ts.map +1 -0
- package/dist/is-truthy-ZWo_GERD.js +2 -0
- package/dist/is-truthy-ZWo_GERD.js.map +1 -0
- package/dist/is-truthy.cjs +1 -1
- package/dist/is-truthy.d.cts +2 -19
- package/dist/is-truthy.d.ts +2 -19
- package/dist/is-truthy.js +1 -1
- package/dist/is-union-BEGCMhOi.d.cts +8 -0
- package/dist/is-union-BEGCMhOi.d.cts.map +1 -0
- package/dist/is-union-CBVcM_uW.d.ts +8 -0
- package/dist/is-union-CBVcM_uW.d.ts.map +1 -0
- package/dist/iterable-container-V5sa0V_H.d.cts +17 -0
- package/dist/iterable-container-V5sa0V_H.d.cts.map +1 -0
- package/dist/iterable-container-wtkYslN_.d.ts +17 -0
- package/dist/iterable-container-wtkYslN_.d.ts.map +1 -0
- package/dist/join-BXqvyin6.cjs +1 -0
- package/dist/join-D0iujfDN.d.cts +46 -0
- package/dist/join-D0iujfDN.d.cts.map +1 -0
- package/dist/join-E8OrzoQ8.d.ts +46 -0
- package/dist/join-E8OrzoQ8.d.ts.map +1 -0
- package/dist/join-nCY8bATt.js +2 -0
- package/dist/join-nCY8bATt.js.map +1 -0
- package/dist/join.cjs +1 -1
- package/dist/join.d.cts +2 -44
- package/dist/join.d.ts +2 -44
- package/dist/join.js +1 -1
- package/dist/key-codes-3lqUuEMs.d.cts +29 -0
- package/dist/key-codes-3lqUuEMs.d.cts.map +1 -0
- package/dist/key-codes-ChQrhdSG.js +2 -0
- package/dist/key-codes-ChQrhdSG.js.map +1 -0
- package/dist/key-codes-Do_lEvpi.d.ts +29 -0
- package/dist/key-codes-Do_lEvpi.d.ts.map +1 -0
- package/dist/key-codes-DofSlv3v.cjs +1 -0
- package/dist/key-codes.cjs +1 -1
- package/dist/key-codes.d.cts +2 -27
- package/dist/key-codes.d.ts +2 -27
- package/dist/key-codes.js +1 -1
- package/dist/keys-BOIca6L1.d.cts +38 -0
- package/dist/keys-BOIca6L1.d.cts.map +1 -0
- package/dist/keys-CeZxsvdJ.js +2 -0
- package/dist/keys-CeZxsvdJ.js.map +1 -0
- package/dist/keys-DQwPfo__.cjs +1 -0
- package/dist/keys-fX8vI-uH.d.ts +38 -0
- package/dist/keys-fX8vI-uH.d.ts.map +1 -0
- package/dist/keys.cjs +1 -1
- package/dist/keys.d.cts +5 -38
- package/dist/keys.d.ts +5 -38
- package/dist/keys.js +1 -1
- package/dist/last-BoVh9Bgz.d.ts +37 -0
- package/dist/last-BoVh9Bgz.d.ts.map +1 -0
- package/dist/last-BsvhqAkE.js +2 -0
- package/dist/last-BsvhqAkE.js.map +1 -0
- package/dist/last-Cy_0pMbz.d.cts +37 -0
- package/dist/last-Cy_0pMbz.d.cts.map +1 -0
- package/dist/last-DCnS88X2.cjs +1 -0
- package/dist/last.cjs +1 -1
- package/dist/last.d.cts +3 -35
- package/dist/last.d.ts +3 -35
- package/dist/last.js +1 -1
- package/dist/lazy-data-last-impl-3PAFkslW.cjs +1 -0
- package/dist/lazy-data-last-impl-7QfM1xXg.js +2 -0
- package/dist/lazy-data-last-impl-7QfM1xXg.js.map +1 -0
- package/dist/length-BKo5HUVo.d.ts +28 -0
- package/dist/length-BKo5HUVo.d.ts.map +1 -0
- package/dist/length-BtKC_n_k.js +2 -0
- package/dist/length-BtKC_n_k.js.map +1 -0
- package/dist/length-Cch-gs0T.cjs +1 -0
- package/dist/length-DQCuaUy9.d.cts +28 -0
- package/dist/length-DQCuaUy9.d.cts.map +1 -0
- package/dist/length.cjs +1 -1
- package/dist/length.d.cts +2 -26
- package/dist/length.d.ts +2 -26
- package/dist/length.js +1 -1
- package/dist/magic-string.es-Dlejmjth.cjs +15 -0
- package/dist/magic-string.es-bOkeFdlI.js +15 -0
- package/dist/magic-string.es-bOkeFdlI.js.map +1 -0
- package/dist/map-2CmGA3HQ.cjs +1 -0
- package/dist/map-D2kXyrhE.d.ts +47 -0
- package/dist/map-D2kXyrhE.d.ts.map +1 -0
- package/dist/map-hbl-e0fs.d.cts +47 -0
- package/dist/map-hbl-e0fs.d.cts.map +1 -0
- package/dist/map-keys-5JqEYSRn.js +2 -0
- package/dist/map-keys-5JqEYSRn.js.map +1 -0
- package/dist/map-keys-B636MLly.cjs +1 -0
- package/dist/map-keys-BMF5TTCT.d.cts +34 -0
- package/dist/map-keys-BMF5TTCT.d.cts.map +1 -0
- package/dist/map-keys-DTuz2AU9.d.ts +34 -0
- package/dist/map-keys-DTuz2AU9.d.ts.map +1 -0
- package/dist/map-keys.cjs +1 -1
- package/dist/map-keys.d.cts +7 -35
- package/dist/map-keys.d.ts +7 -35
- package/dist/map-keys.js +1 -1
- package/dist/map-t5kkqRLl.js +2 -0
- package/dist/map-t5kkqRLl.js.map +1 -0
- package/dist/map-to-obj-C3TvW3Zq.d.ts +68 -0
- package/dist/map-to-obj-C3TvW3Zq.d.ts.map +1 -0
- package/dist/map-to-obj-D5MFa8lB.d.cts +68 -0
- package/dist/map-to-obj-D5MFa8lB.d.cts.map +1 -0
- package/dist/map-to-obj-D8GiFVoH.cjs +1 -0
- package/dist/map-to-obj-DSoMzAgs.js +2 -0
- package/dist/map-to-obj-DSoMzAgs.js.map +1 -0
- package/dist/map-to-obj.cjs +1 -1
- package/dist/map-to-obj.d.cts +2 -66
- package/dist/map-to-obj.d.ts +2 -66
- package/dist/map-to-obj.js +1 -1
- package/dist/map-values-Bj4nhj3r.js +2 -0
- package/dist/map-values-Bj4nhj3r.js.map +1 -0
- package/dist/map-values-CXFe39-O.d.ts +42 -0
- package/dist/map-values-CXFe39-O.d.ts.map +1 -0
- package/dist/map-values-CbOf72JF.cjs +1 -0
- package/dist/map-values-DgFd9qsH.d.cts +42 -0
- package/dist/map-values-DgFd9qsH.d.cts.map +1 -0
- package/dist/map-values.cjs +1 -1
- package/dist/map-values.d.cts +5 -43
- package/dist/map-values.d.ts +5 -43
- package/dist/map-values.js +1 -1
- package/dist/map-with-feedback-Bjyq9-ss.d.cts +54 -0
- package/dist/map-with-feedback-Bjyq9-ss.d.cts.map +1 -0
- package/dist/map-with-feedback-BwvFVDYW.cjs +1 -0
- package/dist/map-with-feedback-DV8xKpjj.d.ts +54 -0
- package/dist/map-with-feedback-DV8xKpjj.d.ts.map +1 -0
- package/dist/map-with-feedback-l2Hn2I08.js +2 -0
- package/dist/map-with-feedback-l2Hn2I08.js.map +1 -0
- package/dist/map-with-feedback.cjs +1 -1
- package/dist/map-with-feedback.d.cts +4 -51
- package/dist/map-with-feedback.d.ts +4 -51
- package/dist/map-with-feedback.js +1 -1
- package/dist/map.cjs +1 -1
- package/dist/map.d.cts +4 -44
- package/dist/map.d.ts +4 -44
- package/dist/map.js +1 -1
- package/dist/mapped-CywWFD6s.d.ts +7 -0
- package/dist/mapped-CywWFD6s.d.ts.map +1 -0
- package/dist/mapped-DdfSDQ5D.d.cts +7 -0
- package/dist/mapped-DdfSDQ5D.d.cts.map +1 -0
- package/dist/mean-by-CSUU6ZRi.d.cts +35 -0
- package/dist/mean-by-CSUU6ZRi.d.cts.map +1 -0
- package/dist/mean-by-D6OE3lEe.cjs +1 -0
- package/dist/mean-by-D6OGvOgW.js +2 -0
- package/dist/mean-by-D6OGvOgW.js.map +1 -0
- package/dist/mean-by-DiH-QI0U.d.ts +35 -0
- package/dist/mean-by-DiH-QI0U.d.ts.map +1 -0
- package/dist/mean-by.cjs +1 -1
- package/dist/mean-by.d.cts +2 -33
- package/dist/mean-by.d.ts +2 -33
- package/dist/mean-by.js +1 -1
- package/dist/merge-BKrUYniy.cjs +1 -0
- package/dist/merge-CXnHl0ti.d.cts +57 -0
- package/dist/merge-CXnHl0ti.d.cts.map +1 -0
- package/dist/merge-DM3LuCr8.js +2 -0
- package/dist/merge-DM3LuCr8.js.map +1 -0
- package/dist/merge-EO0Q1QPA.d.ts +57 -0
- package/dist/merge-EO0Q1QPA.d.ts.map +1 -0
- package/dist/merge-all-BbdTIlUo.js +2 -0
- package/dist/merge-all-BbdTIlUo.js.map +1 -0
- package/dist/merge-all-DA-xZzpl.d.ts +42 -0
- package/dist/merge-all-DA-xZzpl.d.ts.map +1 -0
- package/dist/merge-all-DkmSC0ri.d.cts +42 -0
- package/dist/merge-all-DkmSC0ri.d.cts.map +1 -0
- package/dist/merge-all-MOlMBgeb.cjs +1 -0
- package/dist/merge-all.cjs +1 -1
- package/dist/merge-all.d.cts +6 -42
- package/dist/merge-all.d.ts +6 -42
- package/dist/merge-all.js +1 -1
- package/dist/merge-deep-A4Cgd47e.d.ts +37 -0
- package/dist/merge-deep-A4Cgd47e.d.ts.map +1 -0
- package/dist/merge-deep-BcekJf0s.cjs +1 -0
- package/dist/merge-deep-DAfbgx82.d.cts +37 -0
- package/dist/merge-deep-DAfbgx82.d.cts.map +1 -0
- package/dist/merge-deep-Dn1sRc5z.js +2 -0
- package/dist/merge-deep-Dn1sRc5z.js.map +1 -0
- package/dist/merge-deep.cjs +1 -1
- package/dist/merge-deep.d.cts +2 -34
- package/dist/merge-deep.d.ts +2 -34
- package/dist/merge-deep.js +1 -1
- package/dist/merge.cjs +1 -1
- package/dist/merge.d.cts +2 -54
- package/dist/merge.d.ts +2 -54
- package/dist/merge.js +1 -1
- package/dist/multiply-BI2VvlFd.js +2 -0
- package/dist/multiply-BI2VvlFd.js.map +1 -0
- package/dist/multiply-CTfXAoM_.cjs +1 -0
- package/dist/multiply-UBFQYNUD.d.ts +33 -0
- package/dist/multiply-UBFQYNUD.d.ts.map +1 -0
- package/dist/multiply-gDDdmofq.d.cts +33 -0
- package/dist/multiply-gDDdmofq.d.cts.map +1 -0
- package/dist/multiply.cjs +1 -1
- package/dist/multiply.d.cts +2 -31
- package/dist/multiply.d.ts +2 -31
- package/dist/multiply.js +1 -1
- package/dist/n-tuple-BELi5yRe.d.ts +12 -0
- package/dist/n-tuple-BELi5yRe.d.ts.map +1 -0
- package/dist/n-tuple-Co_jgwEn.d.cts +12 -0
- package/dist/n-tuple-Co_jgwEn.d.cts.map +1 -0
- package/dist/narrowed-to-BTrqm7Xt.d.cts +15 -0
- package/dist/narrowed-to-BTrqm7Xt.d.cts.map +1 -0
- package/dist/narrowed-to-C6wP224-.d.ts +15 -0
- package/dist/narrowed-to-C6wP224-.d.ts.map +1 -0
- package/dist/non-empty-array-D3HWDPMt.d.ts +5 -0
- package/dist/non-empty-array-D3HWDPMt.d.ts.map +1 -0
- package/dist/non-empty-array-D3ZRHApS.d.cts +5 -0
- package/dist/non-empty-array-D3ZRHApS.d.cts.map +1 -0
- package/dist/nth-by-BLlYxw3C.cjs +1 -0
- package/dist/nth-by-BR1fcwCZ.js +2 -0
- package/dist/nth-by-BR1fcwCZ.js.map +1 -0
- package/dist/nth-by-CKFOiBHp.d.cts +42 -0
- package/dist/nth-by-CKFOiBHp.d.cts.map +1 -0
- package/dist/nth-by-DX2PBdEe.d.ts +42 -0
- package/dist/nth-by-DX2PBdEe.d.ts.map +1 -0
- package/dist/nth-by.cjs +1 -1
- package/dist/nth-by.d.cts +5 -39
- package/dist/nth-by.d.ts +5 -39
- package/dist/nth-by.js +1 -1
- package/dist/obj-of-B7t_1Jdi.d.ts +27 -0
- package/dist/obj-of-B7t_1Jdi.d.ts.map +1 -0
- package/dist/obj-of-CXD9MOPS.js +2 -0
- package/dist/obj-of-CXD9MOPS.js.map +1 -0
- package/dist/obj-of-DE7eb-D1.cjs +1 -0
- package/dist/obj-of-OgSK6d9I.d.cts +27 -0
- package/dist/obj-of-OgSK6d9I.d.cts.map +1 -0
- package/dist/obj-of.cjs +1 -1
- package/dist/obj-of.d.cts +2 -29
- package/dist/obj-of.d.ts +2 -29
- package/dist/obj-of.js +1 -1
- package/dist/omit-Bpyv8_An.d.ts +29 -0
- package/dist/omit-Bpyv8_An.d.ts.map +1 -0
- package/dist/omit-DB0YVkss.d.cts +29 -0
- package/dist/omit-DB0YVkss.d.cts.map +1 -0
- package/dist/omit-DDC-zMp9.cjs +1 -0
- package/dist/omit-Dgi9IFmV.js +2 -0
- package/dist/omit-Dgi9IFmV.js.map +1 -0
- package/dist/omit-by-6UKJmELm.d.cts +52 -0
- package/dist/omit-by-6UKJmELm.d.cts.map +1 -0
- package/dist/omit-by-BUnyJURX.js +2 -0
- package/dist/omit-by-BUnyJURX.js.map +1 -0
- package/dist/omit-by-BwOILpho.d.ts +52 -0
- package/dist/omit-by-BwOILpho.d.ts.map +1 -0
- package/dist/omit-by-DODiMBly.cjs +1 -0
- package/dist/omit-by.cjs +1 -1
- package/dist/omit-by.d.cts +6 -60
- package/dist/omit-by.d.ts +6 -60
- package/dist/omit-by.js +1 -1
- package/dist/omit.cjs +1 -1
- package/dist/omit.d.cts +2 -27
- package/dist/omit.d.ts +2 -27
- package/dist/omit.js +1 -1
- package/dist/once-CDA15oHo.js +2 -0
- package/dist/once-CDA15oHo.js.map +1 -0
- package/dist/once-CKjmehD8.d.cts +17 -0
- package/dist/once-CKjmehD8.d.cts.map +1 -0
- package/dist/once-DBa0D-t8.d.ts +17 -0
- package/dist/once-DBa0D-t8.d.ts.map +1 -0
- package/dist/once-ndNMC6PL.cjs +1 -0
- package/dist/once.cjs +1 -1
- package/dist/once.d.cts +2 -15
- package/dist/once.d.ts +2 -15
- package/dist/once.js +1 -1
- package/dist/only-DRLNxyIr.d.cts +34 -0
- package/dist/only-DRLNxyIr.d.cts.map +1 -0
- package/dist/only-IIcEVYAb.cjs +1 -0
- package/dist/only-Kwk1k50y.js +2 -0
- package/dist/only-Kwk1k50y.js.map +1 -0
- package/dist/only-iY0lPSED.d.ts +34 -0
- package/dist/only-iY0lPSED.d.ts.map +1 -0
- package/dist/only.cjs +1 -1
- package/dist/only.d.cts +3 -32
- package/dist/only.d.ts +3 -32
- package/dist/only.js +1 -1
- package/dist/partial-array-CzOnr197.d.cts +12 -0
- package/dist/partial-array-CzOnr197.d.cts.map +1 -0
- package/dist/partial-array-IoGI5gCo.d.ts +12 -0
- package/dist/partial-array-IoGI5gCo.d.ts.map +1 -0
- package/dist/partition-BAwbSsom.cjs +1 -0
- package/dist/partition-BRCPpbRh.d.cts +51 -0
- package/dist/partition-BRCPpbRh.d.cts.map +1 -0
- package/dist/partition-BmC5u4fI.js +2 -0
- package/dist/partition-BmC5u4fI.js.map +1 -0
- package/dist/partition-TVQP5mCe.d.ts +51 -0
- package/dist/partition-TVQP5mCe.d.ts.map +1 -0
- package/dist/partition.cjs +1 -1
- package/dist/partition.d.cts +2 -49
- package/dist/partition.d.ts +2 -49
- package/dist/partition.js +1 -1
- package/dist/path-or-BY4Gf2OC.js +2 -0
- package/dist/path-or-BY4Gf2OC.js.map +1 -0
- package/dist/path-or-CVvftsB5.cjs +1 -0
- package/dist/path-or-Cly_jEXS.d.ts +87 -0
- package/dist/path-or-Cly_jEXS.d.ts.map +1 -0
- package/dist/path-or-mXO0iY19.d.cts +87 -0
- package/dist/path-or-mXO0iY19.d.cts.map +1 -0
- package/dist/path-or.cjs +1 -1
- package/dist/path-or.d.cts +2 -79
- package/dist/path-or.d.ts +2 -79
- package/dist/path-or.js +1 -1
- package/dist/perkakas-type-error-0tHtaPbi.d.cts +19 -0
- package/dist/perkakas-type-error-0tHtaPbi.d.cts.map +1 -0
- package/dist/perkakas-type-error-Da3ni385.d.ts +19 -0
- package/dist/perkakas-type-error-Da3ni385.d.ts.map +1 -0
- package/dist/pick--K1QxTFe.cjs +1 -0
- package/dist/pick-BeGmtZCr.d.ts +66 -0
- package/dist/pick-BeGmtZCr.d.ts.map +1 -0
- package/dist/pick-BuIVJICv.js +2 -0
- package/dist/pick-BuIVJICv.js.map +1 -0
- package/dist/pick-CsXZS_Xe.d.cts +66 -0
- package/dist/pick-CsXZS_Xe.d.cts.map +1 -0
- package/dist/pick-by-CVILzj6i.cjs +1 -0
- package/dist/pick-by-CmgAp9Gv.d.ts +68 -0
- package/dist/pick-by-CmgAp9Gv.d.ts.map +1 -0
- package/dist/pick-by-D6ACT8QA.js +2 -0
- package/dist/pick-by-D6ACT8QA.js.map +1 -0
- package/dist/pick-by-DVekF8fN.d.cts +68 -0
- package/dist/pick-by-DVekF8fN.d.cts.map +1 -0
- package/dist/pick-by.cjs +1 -1
- package/dist/pick-by.d.cts +6 -73
- package/dist/pick-by.d.ts +6 -73
- package/dist/pick-by.js +1 -1
- package/dist/pick.cjs +1 -1
- package/dist/pick.d.cts +7 -70
- package/dist/pick.d.ts +7 -70
- package/dist/pick.js +1 -1
- package/dist/pipe-CjmXKJLt.d.ts +34 -0
- package/dist/pipe-CjmXKJLt.d.ts.map +1 -0
- package/dist/pipe-CtsfTnqv.js +2 -0
- package/dist/pipe-CtsfTnqv.js.map +1 -0
- package/dist/pipe-DGVP9PCt.d.cts +34 -0
- package/dist/pipe-DGVP9PCt.d.cts.map +1 -0
- package/dist/pipe-DlFjc4Wf.cjs +1 -0
- package/dist/pipe.cjs +1 -1
- package/dist/pipe.d.cts +2 -32
- package/dist/pipe.d.ts +2 -32
- package/dist/pipe.js +1 -1
- package/dist/piped-7IMVVz1U.d.ts +31 -0
- package/dist/piped-7IMVVz1U.d.ts.map +1 -0
- package/dist/piped-Bj0X7cQT.js +2 -0
- package/dist/piped-Bj0X7cQT.js.map +1 -0
- package/dist/piped-Brc8b_TJ.d.cts +31 -0
- package/dist/piped-Brc8b_TJ.d.cts.map +1 -0
- package/dist/piped-Dk4o0Pdm.cjs +1 -0
- package/dist/piped.cjs +1 -1
- package/dist/piped.d.cts +2 -29
- package/dist/piped.d.ts +2 -29
- package/dist/piped.js +1 -1
- package/dist/product-BHRT4Aan.cjs +1 -0
- package/dist/product-D3OVy5Sj.js +2 -0
- package/dist/product-D3OVy5Sj.js.map +1 -0
- package/dist/product-DKaFnVZj.d.cts +52 -0
- package/dist/product-DKaFnVZj.d.cts.map +1 -0
- package/dist/product-DSfUTpxQ.d.ts +52 -0
- package/dist/product-DSfUTpxQ.d.ts.map +1 -0
- package/dist/product.cjs +1 -1
- package/dist/product.d.cts +3 -50
- package/dist/product.d.ts +3 -50
- package/dist/product.js +1 -1
- package/dist/prop-1ZO514Bp.d.cts +88 -0
- package/dist/prop-1ZO514Bp.d.cts.map +1 -0
- package/dist/prop-BAo3Mk2v.js +2 -0
- package/dist/prop-BAo3Mk2v.js.map +1 -0
- package/dist/prop-BMBSfMKq.d.ts +88 -0
- package/dist/prop-BMBSfMKq.d.ts.map +1 -0
- package/dist/prop-BRP9y5gY.cjs +1 -0
- package/dist/prop.cjs +1 -1
- package/dist/prop.d.cts +7 -29
- package/dist/prop.d.ts +7 -29
- package/dist/prop.js +1 -1
- package/dist/pull-object-CmpUbuXg.d.ts +70 -0
- package/dist/pull-object-CmpUbuXg.d.ts.map +1 -0
- package/dist/pull-object-s5cSNZGP.js +2 -0
- package/dist/pull-object-s5cSNZGP.js.map +1 -0
- package/dist/pull-object-svkB0qoh.d.cts +70 -0
- package/dist/pull-object-svkB0qoh.d.cts.map +1 -0
- package/dist/pull-object-xYSFzkv6.cjs +1 -0
- package/dist/pull-object.cjs +1 -1
- package/dist/pull-object.d.cts +5 -70
- package/dist/pull-object.d.ts +5 -70
- package/dist/pull-object.js +1 -1
- package/dist/random-integer-6M2bFpGx.d.cts +23 -0
- package/dist/random-integer-6M2bFpGx.d.cts.map +1 -0
- package/dist/random-integer-6gYh92ze.cjs +1 -0
- package/dist/random-integer-BschXumd.d.ts +23 -0
- package/dist/random-integer-BschXumd.d.ts.map +1 -0
- package/dist/random-integer-D27vFslT.js +2 -0
- package/dist/random-integer-D27vFslT.js.map +1 -0
- package/dist/random-integer.cjs +1 -1
- package/dist/random-integer.d.cts +3 -21
- package/dist/random-integer.d.ts +3 -21
- package/dist/random-integer.js +1 -1
- package/dist/random-string-B49LA01O.js +2 -0
- package/dist/random-string-B49LA01O.js.map +1 -0
- package/dist/random-string-DBUea-au.d.ts +29 -0
- package/dist/random-string-DBUea-au.d.ts.map +1 -0
- package/dist/random-string-DlACN4ZV.d.cts +29 -0
- package/dist/random-string-DlACN4ZV.d.cts.map +1 -0
- package/dist/random-string-LG5QFZXR.cjs +1 -0
- package/dist/random-string.cjs +1 -1
- package/dist/random-string.d.cts +2 -27
- package/dist/random-string.d.ts +2 -27
- package/dist/random-string.js +1 -1
- package/dist/range-BNpqskPd.d.ts +27 -0
- package/dist/range-BNpqskPd.d.ts.map +1 -0
- package/dist/range-BYm8b8OO.cjs +1 -0
- package/dist/range-BtCOvN_L.js +2 -0
- package/dist/range-BtCOvN_L.js.map +1 -0
- package/dist/range-EauFMBl4.d.cts +27 -0
- package/dist/range-EauFMBl4.d.cts.map +1 -0
- package/dist/range.cjs +1 -1
- package/dist/range.d.cts +2 -25
- package/dist/range.d.ts +2 -25
- package/dist/range.js +1 -1
- package/dist/rank-by-B5nxlwg6.d.cts +45 -0
- package/dist/rank-by-B5nxlwg6.d.cts.map +1 -0
- package/dist/rank-by-B778jLnu.cjs +1 -0
- package/dist/rank-by-D3jUXMA3.js +2 -0
- package/dist/rank-by-D3jUXMA3.js.map +1 -0
- package/dist/rank-by-urjGYBfY.d.ts +45 -0
- package/dist/rank-by-urjGYBfY.d.ts.map +1 -0
- package/dist/rank-by.cjs +1 -1
- package/dist/rank-by.d.cts +4 -42
- package/dist/rank-by.d.ts +4 -42
- package/dist/rank-by.js +1 -1
- package/dist/reduce-BXmHWGo2.cjs +1 -0
- package/dist/reduce-DYv-piI7.d.cts +53 -0
- package/dist/reduce-DYv-piI7.d.cts.map +1 -0
- package/dist/reduce-RFXB_tDG.d.ts +53 -0
- package/dist/reduce-RFXB_tDG.d.ts.map +1 -0
- package/dist/reduce-RxP5hmH5.js +2 -0
- package/dist/reduce-RxP5hmH5.js.map +1 -0
- package/dist/reduce.cjs +1 -1
- package/dist/reduce.d.cts +2 -51
- package/dist/reduce.d.ts +2 -51
- package/dist/reduce.js +1 -1
- package/dist/reordered-array-BJtughHE.d.ts +7 -0
- package/dist/reordered-array-BJtughHE.d.ts.map +1 -0
- package/dist/reordered-array-CNK-grX0.d.cts +7 -0
- package/dist/reordered-array-CNK-grX0.d.cts.map +1 -0
- package/dist/reverse-Bu350kg_.d.cts +29 -0
- package/dist/reverse-Bu350kg_.d.cts.map +1 -0
- package/dist/reverse-DZc8DCPA.js +2 -0
- package/dist/reverse-DZc8DCPA.js.map +1 -0
- package/dist/reverse-l_bD9Y9C.cjs +1 -0
- package/dist/reverse-w5Ru5uLJ.d.ts +29 -0
- package/dist/reverse-w5Ru5uLJ.d.ts.map +1 -0
- package/dist/reverse.cjs +1 -1
- package/dist/reverse.d.cts +2 -27
- package/dist/reverse.d.ts +2 -27
- package/dist/reverse.js +1 -1
- package/dist/round-BDhuebcp.d.ts +39 -0
- package/dist/round-BDhuebcp.d.ts.map +1 -0
- package/dist/round-CBhbfa_y.cjs +1 -0
- package/dist/round-DhclizH1.js +2 -0
- package/dist/round-DhclizH1.js.map +1 -0
- package/dist/round-rQiLyN4w.d.cts +39 -0
- package/dist/round-rQiLyN4w.d.cts.map +1 -0
- package/dist/round.cjs +1 -1
- package/dist/round.d.cts +2 -37
- package/dist/round.d.ts +2 -37
- package/dist/round.js +1 -1
- package/dist/sample-9vI5EmCM.d.cts +69 -0
- package/dist/sample-9vI5EmCM.d.cts.map +1 -0
- package/dist/sample-BHIZQL57.d.ts +69 -0
- package/dist/sample-BHIZQL57.d.ts.map +1 -0
- package/dist/sample-DEt8y7NC.js +2 -0
- package/dist/sample-DEt8y7NC.js.map +1 -0
- package/dist/sample-arGcBCIK.cjs +1 -0
- package/dist/sample.cjs +1 -1
- package/dist/sample.d.cts +8 -53
- package/dist/sample.d.ts +8 -53
- package/dist/sample.js +1 -1
- package/dist/set-B-FVFS41.cjs +1 -0
- package/dist/set-C3uDSGtA.d.cts +40 -0
- package/dist/set-C3uDSGtA.d.cts.map +1 -0
- package/dist/set-DXK1kRjm.js +2 -0
- package/dist/set-DXK1kRjm.js.map +1 -0
- package/dist/set-Dg5x0drC.d.ts +40 -0
- package/dist/set-Dg5x0drC.d.ts.map +1 -0
- package/dist/set-path-B7WmM4pj.cjs +1 -0
- package/dist/set-path-BBiEMMBi.d.cts +47 -0
- package/dist/set-path-BBiEMMBi.d.cts.map +1 -0
- package/dist/set-path-BIWA01lW.d.ts +47 -0
- package/dist/set-path-BIWA01lW.d.ts.map +1 -0
- package/dist/set-path-DpNQC1fV.js +2 -0
- package/dist/set-path-DpNQC1fV.js.map +1 -0
- package/dist/set-path.cjs +1 -1
- package/dist/set-path.d.cts +3 -50
- package/dist/set-path.d.ts +3 -50
- package/dist/set-path.js +1 -1
- package/dist/set.cjs +1 -1
- package/dist/set.d.cts +4 -39
- package/dist/set.d.ts +4 -39
- package/dist/set.js +1 -1
- package/dist/shuffle-0bfhzGGR.cjs +1 -0
- package/dist/shuffle-BLhbIQQt.js +2 -0
- package/dist/shuffle-BLhbIQQt.js.map +1 -0
- package/dist/shuffle-BzeqMrKZ.d.ts +31 -0
- package/dist/shuffle-BzeqMrKZ.d.ts.map +1 -0
- package/dist/shuffle-CaSQtM8e.d.cts +31 -0
- package/dist/shuffle-CaSQtM8e.d.cts.map +1 -0
- package/dist/shuffle.cjs +1 -1
- package/dist/shuffle.d.cts +4 -28
- package/dist/shuffle.d.ts +4 -28
- package/dist/shuffle.js +1 -1
- package/dist/sleep-1rGV3wAg.cjs +1 -0
- package/dist/sleep-BCki6kgY.d.cts +16 -0
- package/dist/sleep-BCki6kgY.d.cts.map +1 -0
- package/dist/sleep-BtY6g8Yq.d.ts +16 -0
- package/dist/sleep-BtY6g8Yq.d.ts.map +1 -0
- package/dist/sleep-DvzRMgY-.js +2 -0
- package/dist/sleep-DvzRMgY-.js.map +1 -0
- package/dist/sleep.cjs +1 -1
- package/dist/sleep.d.cts +2 -14
- package/dist/sleep.d.ts +2 -14
- package/dist/sleep.js +1 -1
- package/dist/slice-string-BwFQg4Yf.d.ts +41 -0
- package/dist/slice-string-BwFQg4Yf.d.ts.map +1 -0
- package/dist/slice-string-DejPzRCB.js +2 -0
- package/dist/slice-string-DejPzRCB.js.map +1 -0
- package/dist/slice-string-LJL__fcW.d.cts +41 -0
- package/dist/slice-string-LJL__fcW.d.cts.map +1 -0
- package/dist/slice-string-q-zH_WUu.cjs +1 -0
- package/dist/slice-string.cjs +1 -1
- package/dist/slice-string.d.cts +2 -39
- package/dist/slice-string.d.ts +2 -39
- package/dist/slice-string.js +1 -1
- package/dist/slugify-5J_YiC6S.js +2 -0
- package/dist/slugify-5J_YiC6S.js.map +1 -0
- package/dist/slugify-CAFKQvdB.cjs +1 -0
- package/dist/slugify-D7YgZAoM.d.cts +15 -0
- package/dist/slugify-D7YgZAoM.d.cts.map +1 -0
- package/dist/slugify-DXOLjypc.d.ts +15 -0
- package/dist/slugify-DXOLjypc.d.ts.map +1 -0
- package/dist/slugify.cjs +1 -1
- package/dist/slugify.d.cts +2 -13
- package/dist/slugify.d.ts +2 -13
- package/dist/slugify.js +1 -1
- package/dist/sort-CTZy6xBq.d.cts +39 -0
- package/dist/sort-CTZy6xBq.d.cts.map +1 -0
- package/dist/sort-CVjvrZjo.d.ts +39 -0
- package/dist/sort-CVjvrZjo.d.ts.map +1 -0
- package/dist/sort-CaAnTT3F.cjs +1 -0
- package/dist/sort-D8s8kRLr.js +2 -0
- package/dist/sort-D8s8kRLr.js.map +1 -0
- package/dist/sort-by-CrMqBzvd.d.cts +88 -0
- package/dist/sort-by-CrMqBzvd.d.cts.map +1 -0
- package/dist/sort-by-DBCZSbb4.cjs +1 -0
- package/dist/sort-by-DPlbBz7L.js +2 -0
- package/dist/sort-by-DPlbBz7L.js.map +1 -0
- package/dist/sort-by-ovbQMg9U.d.ts +88 -0
- package/dist/sort-by-ovbQMg9U.d.ts.map +1 -0
- package/dist/sort-by.cjs +1 -1
- package/dist/sort-by.d.cts +6 -85
- package/dist/sort-by.d.ts +6 -85
- package/dist/sort-by.js +1 -1
- package/dist/sort.cjs +1 -1
- package/dist/sort.d.cts +4 -36
- package/dist/sort.d.ts +4 -36
- package/dist/sort.js +1 -1
- package/dist/sorted-index-BFrWiZn3.cjs +1 -0
- package/dist/sorted-index-Bmn5VLYJ.d.ts +45 -0
- package/dist/sorted-index-Bmn5VLYJ.d.ts.map +1 -0
- package/dist/sorted-index-CTM_l6te.d.cts +45 -0
- package/dist/sorted-index-CTM_l6te.d.cts.map +1 -0
- package/dist/sorted-index-DMcONUoc.js +2 -0
- package/dist/sorted-index-DMcONUoc.js.map +1 -0
- package/dist/sorted-index-by-CEUsUJdi.d.cts +70 -0
- package/dist/sorted-index-by-CEUsUJdi.d.cts.map +1 -0
- package/dist/sorted-index-by-CLUr58al.js +2 -0
- package/dist/sorted-index-by-CLUr58al.js.map +1 -0
- package/dist/sorted-index-by-CyQx_bQb.d.ts +70 -0
- package/dist/sorted-index-by-CyQx_bQb.d.ts.map +1 -0
- package/dist/sorted-index-by-ywbBQhCr.cjs +1 -0
- package/dist/sorted-index-by.cjs +1 -1
- package/dist/sorted-index-by.d.cts +2 -68
- package/dist/sorted-index-by.d.ts +2 -68
- package/dist/sorted-index-by.js +1 -1
- package/dist/sorted-index-with-CGyMmjPN.d.ts +72 -0
- package/dist/sorted-index-with-CGyMmjPN.d.ts.map +1 -0
- package/dist/sorted-index-with-Cy9W9sdh.d.cts +72 -0
- package/dist/sorted-index-with-Cy9W9sdh.d.cts.map +1 -0
- package/dist/sorted-index-with-D5BcwSL_.cjs +1 -0
- package/dist/sorted-index-with-kTK8prmw.js +2 -0
- package/dist/sorted-index-with-kTK8prmw.js.map +1 -0
- package/dist/sorted-index-with.cjs +1 -1
- package/dist/sorted-index-with.d.cts +2 -70
- package/dist/sorted-index-with.d.ts +2 -70
- package/dist/sorted-index-with.js +1 -1
- package/dist/sorted-index.cjs +1 -1
- package/dist/sorted-index.d.cts +2 -43
- package/dist/sorted-index.d.ts +2 -43
- package/dist/sorted-index.js +1 -1
- package/dist/sorted-last-index-B4zg__sQ.js +2 -0
- package/dist/sorted-last-index-B4zg__sQ.js.map +1 -0
- package/dist/sorted-last-index-CHvbfpBS.d.cts +45 -0
- package/dist/sorted-last-index-CHvbfpBS.d.cts.map +1 -0
- package/dist/sorted-last-index-CdPROn6x.cjs +1 -0
- package/dist/sorted-last-index-DnqTn-Ev.d.ts +45 -0
- package/dist/sorted-last-index-DnqTn-Ev.d.ts.map +1 -0
- package/dist/sorted-last-index-by-B-IP-O5g.cjs +1 -0
- package/dist/sorted-last-index-by-BGr5WioW.js +2 -0
- package/dist/sorted-last-index-by-BGr5WioW.js.map +1 -0
- package/dist/sorted-last-index-by-BipSOnBS.d.ts +72 -0
- package/dist/sorted-last-index-by-BipSOnBS.d.ts.map +1 -0
- package/dist/sorted-last-index-by-u7mPctkh.d.cts +72 -0
- package/dist/sorted-last-index-by-u7mPctkh.d.cts.map +1 -0
- package/dist/sorted-last-index-by.cjs +1 -1
- package/dist/sorted-last-index-by.d.cts +2 -70
- package/dist/sorted-last-index-by.d.ts +2 -70
- package/dist/sorted-last-index-by.js +1 -1
- package/dist/sorted-last-index.cjs +1 -1
- package/dist/sorted-last-index.d.cts +2 -43
- package/dist/sorted-last-index.d.ts +2 -43
- package/dist/sorted-last-index.js +1 -1
- package/dist/splice-BwsAFdV8.cjs +1 -0
- package/dist/splice-CR6DLiFm.d.cts +35 -0
- package/dist/splice-CR6DLiFm.d.cts.map +1 -0
- package/dist/splice-CRabhu-x.d.ts +35 -0
- package/dist/splice-CRabhu-x.d.ts.map +1 -0
- package/dist/splice-DCOBlrIJ.js +2 -0
- package/dist/splice-DCOBlrIJ.js.map +1 -0
- package/dist/splice.cjs +1 -1
- package/dist/splice.d.cts +2 -33
- package/dist/splice.d.ts +2 -33
- package/dist/splice.js +1 -1
- package/dist/split-BMnz50TJ.d.ts +62 -0
- package/dist/split-BMnz50TJ.d.ts.map +1 -0
- package/dist/split-BSiis5Fh.d.cts +62 -0
- package/dist/split-BSiis5Fh.d.cts.map +1 -0
- package/dist/split-Bs-frJ_a.cjs +1 -0
- package/dist/split-D1qUxipp.js +2 -0
- package/dist/split-D1qUxipp.js.map +1 -0
- package/dist/split-at-B3v6wCCc.d.ts +31 -0
- package/dist/split-at-B3v6wCCc.d.ts.map +1 -0
- package/dist/split-at-CU-3otme.d.cts +31 -0
- package/dist/split-at-CU-3otme.d.cts.map +1 -0
- package/dist/split-at-DUSqIHw-.cjs +1 -0
- package/dist/split-at-vzCujYHL.js +2 -0
- package/dist/split-at-vzCujYHL.js.map +1 -0
- package/dist/split-at.cjs +1 -1
- package/dist/split-at.d.cts +2 -29
- package/dist/split-at.d.ts +2 -29
- package/dist/split-at.js +1 -1
- package/dist/split-when-BTekNxF-.d.ts +29 -0
- package/dist/split-when-BTekNxF-.d.ts.map +1 -0
- package/dist/split-when-C7OSEoW3.js +2 -0
- package/dist/split-when-C7OSEoW3.js.map +1 -0
- package/dist/split-when-CCi2Wq1B.cjs +1 -0
- package/dist/split-when-DaTD5jVa.d.cts +29 -0
- package/dist/split-when-DaTD5jVa.d.cts.map +1 -0
- package/dist/split-when.cjs +1 -1
- package/dist/split-when.d.cts +2 -27
- package/dist/split-when.d.ts +2 -27
- package/dist/split-when.js +1 -1
- package/dist/split.cjs +1 -1
- package/dist/split.d.cts +2 -60
- package/dist/split.d.ts +2 -60
- package/dist/split.js +1 -1
- package/dist/string-to-path-C7H_9SeW.d.cts +39 -0
- package/dist/string-to-path-C7H_9SeW.d.cts.map +1 -0
- package/dist/string-to-path-CS10CXKM.d.ts +39 -0
- package/dist/string-to-path-CS10CXKM.d.ts.map +1 -0
- package/dist/string-to-path-D4HSg6rf.js +2 -0
- package/dist/string-to-path-D4HSg6rf.js.map +1 -0
- package/dist/string-to-path-Q_OMxElX.cjs +1 -0
- package/dist/string-to-path.cjs +1 -1
- package/dist/string-to-path.d.cts +2 -44
- package/dist/string-to-path.d.ts +2 -44
- package/dist/string-to-path.js +1 -1
- package/dist/subtract-CktIeIei.js +2 -0
- package/dist/subtract-CktIeIei.js.map +1 -0
- package/dist/subtract-Crhaj882.cjs +1 -0
- package/dist/subtract-DxrBj9Ir.d.ts +35 -0
- package/dist/subtract-DxrBj9Ir.d.ts.map +1 -0
- package/dist/subtract-WxyebhP-.d.cts +35 -0
- package/dist/subtract-WxyebhP-.d.cts.map +1 -0
- package/dist/subtract.cjs +1 -1
- package/dist/subtract.d.cts +2 -33
- package/dist/subtract.d.ts +2 -33
- package/dist/subtract.js +1 -1
- package/dist/sum-BL8tGYgI.cjs +1 -0
- package/dist/sum-CcpwR68x.d.cts +50 -0
- package/dist/sum-CcpwR68x.d.cts.map +1 -0
- package/dist/sum-bjQo9S5Q.d.ts +50 -0
- package/dist/sum-bjQo9S5Q.d.ts.map +1 -0
- package/dist/sum-by-BLqXTrME.d.ts +57 -0
- package/dist/sum-by-BLqXTrME.d.ts.map +1 -0
- package/dist/sum-by-CIOYhCgY.cjs +1 -0
- package/dist/sum-by-CqGEkkyR.d.cts +57 -0
- package/dist/sum-by-CqGEkkyR.d.cts.map +1 -0
- package/dist/sum-by-eeHiHAej.js +2 -0
- package/dist/sum-by-eeHiHAej.js.map +1 -0
- package/dist/sum-by.cjs +1 -1
- package/dist/sum-by.d.cts +3 -55
- package/dist/sum-by.d.ts +3 -55
- package/dist/sum-by.js +1 -1
- package/dist/sum-lEJNA4zT.js +2 -0
- package/dist/sum-lEJNA4zT.js.map +1 -0
- package/dist/sum.cjs +1 -1
- package/dist/sum.d.cts +3 -48
- package/dist/sum.d.ts +3 -48
- package/dist/sum.js +1 -1
- package/dist/swap-in-place-BBqaxzzG.js +2 -0
- package/dist/swap-in-place-BBqaxzzG.js.map +1 -0
- package/dist/swap-in-place-CJrU2n1_.cjs +1 -0
- package/dist/swap-indices-CMgMD_dW.js +2 -0
- package/dist/swap-indices-CMgMD_dW.js.map +1 -0
- package/dist/swap-indices-CRAsQaXi.cjs +1 -0
- package/dist/swap-indices-CdclLgV-.d.ts +61 -0
- package/dist/swap-indices-CdclLgV-.d.ts.map +1 -0
- package/dist/swap-indices-KQ4fsLkb.d.cts +61 -0
- package/dist/swap-indices-KQ4fsLkb.d.cts.map +1 -0
- package/dist/swap-indices.cjs +1 -1
- package/dist/swap-indices.d.cts +3 -64
- package/dist/swap-indices.d.ts +3 -64
- package/dist/swap-indices.js +1 -1
- package/dist/swap-props-BQ2a9nZO.cjs +1 -0
- package/dist/swap-props-D-buo88H.d.ts +34 -0
- package/dist/swap-props-D-buo88H.d.ts.map +1 -0
- package/dist/swap-props-D7be4C3M.d.cts +34 -0
- package/dist/swap-props-D7be4C3M.d.cts.map +1 -0
- package/dist/swap-props-sxLIvQ4Y.js +2 -0
- package/dist/swap-props-sxLIvQ4Y.js.map +1 -0
- package/dist/swap-props.cjs +1 -1
- package/dist/swap-props.d.cts +2 -34
- package/dist/swap-props.d.ts +2 -34
- package/dist/swap-props.js +1 -1
- package/dist/take-BV-ctBqK.d.cts +34 -0
- package/dist/take-BV-ctBqK.d.cts.map +1 -0
- package/dist/take-Cn0xLGe4.js +2 -0
- package/dist/take-Cn0xLGe4.js.map +1 -0
- package/dist/take-CnVckkWV.d.ts +34 -0
- package/dist/take-CnVckkWV.d.ts.map +1 -0
- package/dist/take-DwT7ymnA.cjs +1 -0
- package/dist/take-first-by-BGSUzX61.js +2 -0
- package/dist/take-first-by-BGSUzX61.js.map +1 -0
- package/dist/take-first-by-BgONSKvT.d.ts +41 -0
- package/dist/take-first-by-BgONSKvT.d.ts.map +1 -0
- package/dist/take-first-by-Cpgu4Dll.d.cts +41 -0
- package/dist/take-first-by-Cpgu4Dll.d.cts.map +1 -0
- package/dist/take-first-by-CtrznSxG.cjs +1 -0
- package/dist/take-first-by.cjs +1 -1
- package/dist/take-first-by.d.cts +4 -38
- package/dist/take-first-by.d.ts +4 -38
- package/dist/take-first-by.js +1 -1
- package/dist/take-last-8PzLMvw3.js +2 -0
- package/dist/take-last-8PzLMvw3.js.map +1 -0
- package/dist/take-last-BnF7ADxy.d.ts +32 -0
- package/dist/take-last-BnF7ADxy.d.ts.map +1 -0
- package/dist/take-last-BvjeJFre.d.cts +32 -0
- package/dist/take-last-BvjeJFre.d.cts.map +1 -0
- package/dist/take-last-DT3U0fro.cjs +1 -0
- package/dist/take-last-while-7hpO-w-n.cjs +1 -0
- package/dist/take-last-while-CGrVFpA9.d.ts +36 -0
- package/dist/take-last-while-CGrVFpA9.d.ts.map +1 -0
- package/dist/take-last-while-CNlwvmIf.d.cts +36 -0
- package/dist/take-last-while-CNlwvmIf.d.cts.map +1 -0
- package/dist/take-last-while-D4D1elUu.js +2 -0
- package/dist/take-last-while-D4D1elUu.js.map +1 -0
- package/dist/take-last-while.cjs +1 -1
- package/dist/take-last-while.d.cts +3 -33
- package/dist/take-last-while.d.ts +3 -33
- package/dist/take-last-while.js +1 -1
- package/dist/take-last.cjs +1 -1
- package/dist/take-last.d.cts +3 -29
- package/dist/take-last.d.ts +3 -29
- package/dist/take-last.js +1 -1
- package/dist/take-while-BoYdbQRK.cjs +1 -0
- package/dist/take-while-CPEBQO5f.d.cts +34 -0
- package/dist/take-while-CPEBQO5f.d.cts.map +1 -0
- package/dist/take-while-D7M5vbwg.js +2 -0
- package/dist/take-while-D7M5vbwg.js.map +1 -0
- package/dist/take-while-e4aa4Rzo.d.ts +34 -0
- package/dist/take-while-e4aa4Rzo.d.ts.map +1 -0
- package/dist/take-while.cjs +1 -1
- package/dist/take-while.d.cts +3 -31
- package/dist/take-while.d.ts +3 -31
- package/dist/take-while.js +1 -1
- package/dist/take.cjs +1 -1
- package/dist/take.d.cts +3 -31
- package/dist/take.d.ts +3 -31
- package/dist/take.js +1 -1
- package/dist/tap-2SHLmCBm.cjs +1 -0
- package/dist/tap-BjWhN6y_.d.ts +42 -0
- package/dist/tap-BjWhN6y_.d.ts.map +1 -0
- package/dist/tap-GLPlAKCD.js +2 -0
- package/dist/tap-GLPlAKCD.js.map +1 -0
- package/dist/tap-gF124Yhn.d.cts +42 -0
- package/dist/tap-gF124Yhn.d.cts.map +1 -0
- package/dist/tap.cjs +1 -1
- package/dist/tap.d.cts +2 -40
- package/dist/tap.d.ts +2 -40
- package/dist/tap.js +1 -1
- package/dist/times-BoE5WrNr.d.cts +48 -0
- package/dist/times-BoE5WrNr.d.cts.map +1 -0
- package/dist/times-C4txaWWG.js +2 -0
- package/dist/times-C4txaWWG.js.map +1 -0
- package/dist/times-ChlK_wAM.cjs +1 -0
- package/dist/times-CzRXDAnV.d.ts +48 -0
- package/dist/times-CzRXDAnV.d.ts.map +1 -0
- package/dist/times.cjs +1 -1
- package/dist/times.d.cts +2 -46
- package/dist/times.d.ts +2 -46
- package/dist/times.js +1 -1
- package/dist/to-camel-case-5ZN25UuZ.d.cts +32 -0
- package/dist/to-camel-case-5ZN25UuZ.d.cts.map +1 -0
- package/dist/to-camel-case-DJ5dmboH.d.ts +32 -0
- package/dist/to-camel-case-DJ5dmboH.d.ts.map +1 -0
- package/dist/to-camel-case-JdiHeuUd.js +2 -0
- package/dist/to-camel-case-JdiHeuUd.js.map +1 -0
- package/dist/to-camel-case-MCv0xSE_.cjs +1 -0
- package/dist/to-camel-case.cjs +1 -1
- package/dist/to-camel-case.d.cts +3 -29
- package/dist/to-camel-case.d.ts +3 -29
- package/dist/to-camel-case.js +1 -1
- package/dist/to-capital-case-BBTx9xpN.d.cts +31 -0
- package/dist/to-capital-case-BBTx9xpN.d.cts.map +1 -0
- package/dist/to-capital-case-BD9MIiKM.cjs +1 -0
- package/dist/to-capital-case-BDs8sikX.d.ts +31 -0
- package/dist/to-capital-case-BDs8sikX.d.ts.map +1 -0
- package/dist/to-capital-case-DFgHWUP7.js +2 -0
- package/dist/to-capital-case-DFgHWUP7.js.map +1 -0
- package/dist/to-capital-case.cjs +1 -1
- package/dist/to-capital-case.d.cts +3 -28
- package/dist/to-capital-case.d.ts +3 -28
- package/dist/to-capital-case.js +1 -1
- package/dist/to-constant-case-Bobbz_hT.d.cts +31 -0
- package/dist/to-constant-case-Bobbz_hT.d.cts.map +1 -0
- package/dist/to-constant-case-Bs1J4UNN.js +2 -0
- package/dist/to-constant-case-Bs1J4UNN.js.map +1 -0
- package/dist/to-constant-case-C6XG49MZ.cjs +1 -0
- package/dist/to-constant-case-DlZZVrYx.d.ts +31 -0
- package/dist/to-constant-case-DlZZVrYx.d.ts.map +1 -0
- package/dist/to-constant-case.cjs +1 -1
- package/dist/to-constant-case.d.cts +3 -28
- package/dist/to-constant-case.d.ts +3 -28
- package/dist/to-constant-case.js +1 -1
- package/dist/to-kebab-case-BKdi-Rk7.d.ts +31 -0
- package/dist/to-kebab-case-BKdi-Rk7.d.ts.map +1 -0
- package/dist/to-kebab-case-BRVFPXE9.d.cts +31 -0
- package/dist/to-kebab-case-BRVFPXE9.d.cts.map +1 -0
- package/dist/to-kebab-case-Cud7RCjt.cjs +1 -0
- package/dist/to-kebab-case-z5oAWVif.js +2 -0
- package/dist/to-kebab-case-z5oAWVif.js.map +1 -0
- package/dist/to-kebab-case.cjs +1 -1
- package/dist/to-kebab-case.d.cts +3 -28
- package/dist/to-kebab-case.d.ts +3 -28
- package/dist/to-kebab-case.js +1 -1
- package/dist/to-no-case-BDX0619s.cjs +1 -0
- package/dist/to-no-case-Bt57ASib.js +2 -0
- package/dist/to-no-case-Bt57ASib.js.map +1 -0
- package/dist/to-no-case-D6nPbja8.d.cts +31 -0
- package/dist/to-no-case-D6nPbja8.d.cts.map +1 -0
- package/dist/to-no-case-ctaqyxQN.d.ts +31 -0
- package/dist/to-no-case-ctaqyxQN.d.ts.map +1 -0
- package/dist/to-no-case.cjs +1 -1
- package/dist/to-no-case.d.cts +3 -28
- package/dist/to-no-case.d.ts +3 -28
- package/dist/to-no-case.js +1 -1
- package/dist/to-pascal-case-7nVKvcNg.d.cts +32 -0
- package/dist/to-pascal-case-7nVKvcNg.d.cts.map +1 -0
- package/dist/to-pascal-case-BSZrgkTx.cjs +1 -0
- package/dist/to-pascal-case-COG25kzw.js +2 -0
- package/dist/to-pascal-case-COG25kzw.js.map +1 -0
- package/dist/to-pascal-case-DUupmGjS.d.ts +32 -0
- package/dist/to-pascal-case-DUupmGjS.d.ts.map +1 -0
- package/dist/to-pascal-case.cjs +1 -1
- package/dist/to-pascal-case.d.cts +3 -29
- package/dist/to-pascal-case.d.ts +3 -29
- package/dist/to-pascal-case.js +1 -1
- package/dist/to-pascal-snake-case-BVvnru7G.d.ts +31 -0
- package/dist/to-pascal-snake-case-BVvnru7G.d.ts.map +1 -0
- package/dist/to-pascal-snake-case-C360MTFV.d.cts +31 -0
- package/dist/to-pascal-snake-case-C360MTFV.d.cts.map +1 -0
- package/dist/to-pascal-snake-case-C38j94Cu.cjs +1 -0
- package/dist/to-pascal-snake-case-C64pBLFr.js +2 -0
- package/dist/to-pascal-snake-case-C64pBLFr.js.map +1 -0
- package/dist/to-pascal-snake-case.cjs +1 -1
- package/dist/to-pascal-snake-case.d.cts +3 -28
- package/dist/to-pascal-snake-case.d.ts +3 -28
- package/dist/to-pascal-snake-case.js +1 -1
- package/dist/to-sentence-case--9p0YnHo.js +2 -0
- package/dist/to-sentence-case--9p0YnHo.js.map +1 -0
- package/dist/to-sentence-case-7mo0QXqC.d.cts +31 -0
- package/dist/to-sentence-case-7mo0QXqC.d.cts.map +1 -0
- package/dist/to-sentence-case-BTrqI21a.d.ts +31 -0
- package/dist/to-sentence-case-BTrqI21a.d.ts.map +1 -0
- package/dist/to-sentence-case-C2TveqdZ.cjs +1 -0
- package/dist/to-sentence-case.cjs +1 -1
- package/dist/to-sentence-case.d.cts +3 -28
- package/dist/to-sentence-case.d.ts +3 -28
- package/dist/to-sentence-case.js +1 -1
- package/dist/to-single-Bnq9l8Zp.cjs +1 -0
- package/dist/to-single-bHVECPzX.js +2 -0
- package/dist/to-single-bHVECPzX.js.map +1 -0
- package/dist/to-snake-case-BuWvjluH.cjs +1 -0
- package/dist/to-snake-case-Ddi9YNyo.d.ts +31 -0
- package/dist/to-snake-case-Ddi9YNyo.d.ts.map +1 -0
- package/dist/to-snake-case-IHXwNjtp.js +2 -0
- package/dist/to-snake-case-IHXwNjtp.js.map +1 -0
- package/dist/to-snake-case-e2ooEcFB.d.cts +31 -0
- package/dist/to-snake-case-e2ooEcFB.d.cts.map +1 -0
- package/dist/to-snake-case.cjs +1 -1
- package/dist/to-snake-case.d.cts +3 -28
- package/dist/to-snake-case.d.ts +3 -28
- package/dist/to-snake-case.js +1 -1
- package/dist/to-string-RweoJgSy.d.ts +13 -0
- package/dist/to-string-RweoJgSy.d.ts.map +1 -0
- package/dist/to-string-gK5yUyfp.d.cts +13 -0
- package/dist/to-string-gK5yUyfp.d.cts.map +1 -0
- package/dist/to-train-case-B03OndqT.d.cts +31 -0
- package/dist/to-train-case-B03OndqT.d.cts.map +1 -0
- package/dist/to-train-case-B06CqIxe.js +2 -0
- package/dist/to-train-case-B06CqIxe.js.map +1 -0
- package/dist/to-train-case-CLDlt-Y6.d.ts +31 -0
- package/dist/to-train-case-CLDlt-Y6.d.ts.map +1 -0
- package/dist/to-train-case-CsRLhQ9b.cjs +1 -0
- package/dist/to-train-case.cjs +1 -1
- package/dist/to-train-case.d.cts +3 -28
- package/dist/to-train-case.d.ts +3 -28
- package/dist/to-train-case.js +1 -1
- package/dist/tuple-parts-BIyABPYv.d.cts +89 -0
- package/dist/tuple-parts-BIyABPYv.d.cts.map +1 -0
- package/dist/tuple-parts-BxpZLJ7r.d.ts +89 -0
- package/dist/tuple-parts-BxpZLJ7r.d.ts.map +1 -0
- package/dist/type.helpers-C0eszdCH.d.cts +10 -0
- package/dist/type.helpers-C0eszdCH.d.cts.map +1 -0
- package/dist/type.helpers-CRhd_JIH.js +0 -0
- package/dist/type.helpers-CrSxBVxJ.d.ts +10 -0
- package/dist/type.helpers-CrSxBVxJ.d.ts.map +1 -0
- package/dist/type.helpers.cjs +1 -1
- package/dist/type.helpers.d.cts +2 -10
- package/dist/type.helpers.d.ts +2 -10
- package/dist/type.helpers.js +1 -1
- package/dist/unique-4ky12IzI.d.cts +39 -0
- package/dist/unique-4ky12IzI.d.cts.map +1 -0
- package/dist/unique-DMbDhoaS.js +2 -0
- package/dist/unique-DMbDhoaS.js.map +1 -0
- package/dist/unique-Dx_8Tg2u.d.ts +39 -0
- package/dist/unique-Dx_8Tg2u.d.ts.map +1 -0
- package/dist/unique-Na2E_cV5.cjs +1 -0
- package/dist/unique-by-927ymOrT.js +2 -0
- package/dist/unique-by-927ymOrT.js.map +1 -0
- package/dist/unique-by-B1t_QxyV.d.ts +44 -0
- package/dist/unique-by-B1t_QxyV.d.ts.map +1 -0
- package/dist/unique-by-BYeRvKkn.cjs +1 -0
- package/dist/unique-by-D4r9b-C2.d.cts +44 -0
- package/dist/unique-by-D4r9b-C2.d.cts.map +1 -0
- package/dist/unique-by.cjs +1 -1
- package/dist/unique-by.d.cts +5 -42
- package/dist/unique-by.d.ts +5 -42
- package/dist/unique-by.js +1 -1
- package/dist/unique-with-B0Atc1ch.d.cts +46 -0
- package/dist/unique-with-B0Atc1ch.d.cts.map +1 -0
- package/dist/unique-with-DN7oz8DS.js +2 -0
- package/dist/unique-with-DN7oz8DS.js.map +1 -0
- package/dist/unique-with-DODXeZJO.cjs +1 -0
- package/dist/unique-with-_6gjzVmk.d.ts +46 -0
- package/dist/unique-with-_6gjzVmk.d.ts.map +1 -0
- package/dist/unique-with.cjs +1 -1
- package/dist/unique-with.d.cts +5 -45
- package/dist/unique-with.d.ts +5 -45
- package/dist/unique-with.js +1 -1
- package/dist/unique.cjs +1 -1
- package/dist/unique.d.cts +5 -37
- package/dist/unique.d.ts +5 -37
- package/dist/unique.js +1 -1
- package/dist/upsert-prop-CE7fi_mP.d.ts +9 -0
- package/dist/upsert-prop-CE7fi_mP.d.ts.map +1 -0
- package/dist/upsert-prop-Dtu5xY0L.d.cts +9 -0
- package/dist/upsert-prop-Dtu5xY0L.d.cts.map +1 -0
- package/dist/utility-evaluators-CnQVdcZv.js +2 -0
- package/dist/utility-evaluators-CnQVdcZv.js.map +1 -0
- package/dist/utility-evaluators-DqJcWENu.cjs +1 -0
- package/dist/values-BXlzhi3A.cjs +1 -0
- package/dist/values-CIS32AYx.d.cts +38 -0
- package/dist/values-CIS32AYx.d.cts.map +1 -0
- package/dist/values-DUzzQ-p6.d.ts +38 -0
- package/dist/values-DUzzQ-p6.d.ts.map +1 -0
- package/dist/values-Dsgo6Wke.js +2 -0
- package/dist/values-Dsgo6Wke.js.map +1 -0
- package/dist/values.cjs +1 -1
- package/dist/values.d.cts +4 -37
- package/dist/values.d.ts +4 -37
- package/dist/values.js +1 -1
- package/dist/with-precision-BgF-Y_mF.cjs +1 -0
- package/dist/with-precision-BoiuafbM.js +2 -0
- package/dist/with-precision-BoiuafbM.js.map +1 -0
- package/dist/zip-CA2if4ix.cjs +1 -0
- package/dist/zip-CoEM-79C.d.cts +38 -0
- package/dist/zip-CoEM-79C.d.cts.map +1 -0
- package/dist/zip-DhsVpwcO.js +2 -0
- package/dist/zip-DhsVpwcO.js.map +1 -0
- package/dist/zip-with-BRpfRkdc.js +2 -0
- package/dist/zip-with-BRpfRkdc.js.map +1 -0
- package/dist/zip-with-CABk7jf5.d.ts +50 -0
- package/dist/zip-with-CABk7jf5.d.ts.map +1 -0
- package/dist/zip-with-D0Ey6gSU.d.cts +50 -0
- package/dist/zip-with-D0Ey6gSU.d.cts.map +1 -0
- package/dist/zip-with-D7HfIW7V.cjs +1 -0
- package/dist/zip-with.cjs +1 -1
- package/dist/zip-with.d.cts +3 -48
- package/dist/zip-with.d.ts +3 -48
- package/dist/zip-with.js +1 -1
- package/dist/zip-xjUg1DcS.d.ts +38 -0
- package/dist/zip-xjUg1DcS.d.ts.map +1 -0
- package/dist/zip.cjs +1 -1
- package/dist/zip.d.cts +3 -42
- package/dist/zip.d.ts +3 -42
- package/dist/zip.js +1 -1
- package/package.json +12 -9
- package/dist/array-required-prefix-Ck4lHkbA.d.cts +0 -33
- package/dist/array-required-prefix-DXv_WnmG.d.ts +0 -33
- package/dist/bounded-partial-BqwRN49U.d.cts +0 -15
- package/dist/bounded-partial-BzynYDVs.d.ts +0 -15
- package/dist/case.types-C6kHRY4f.d.cts +0 -16
- package/dist/case.types-C6kHRY4f.d.ts +0 -16
- package/dist/chunk-22AQJBPW.cjs +0 -1
- package/dist/chunk-243K2CZR.js +0 -1
- package/dist/chunk-25CFIH7L.cjs +0 -1
- package/dist/chunk-2CBHJMXW.cjs +0 -1
- package/dist/chunk-2GPOH4MN.js +0 -1
- package/dist/chunk-2H7RTCCP.js +0 -1
- package/dist/chunk-2HQM73IT.cjs +0 -1
- package/dist/chunk-2IO5CTEV.js +0 -1
- package/dist/chunk-2KMUA3WC.js +0 -1
- package/dist/chunk-2MHE6M7V.cjs +0 -1
- package/dist/chunk-2N3HEQTG.js +0 -1
- package/dist/chunk-2XGSSTCA.js +0 -1
- package/dist/chunk-32JKKR4M.js +0 -1
- package/dist/chunk-33W5GL27.js +0 -1
- package/dist/chunk-37ONVI2M.cjs +0 -1
- package/dist/chunk-3DOG24FJ.cjs +0 -1
- package/dist/chunk-3I7FLADN.js +0 -1
- package/dist/chunk-3LC3CLYE.cjs +0 -1
- package/dist/chunk-3WCOFJCS.cjs +0 -1
- package/dist/chunk-442DWBIM.cjs +0 -1
- package/dist/chunk-44LUF6RO.js +0 -1
- package/dist/chunk-46GBCFAG.js +0 -1
- package/dist/chunk-4BTTPOEU.cjs +0 -1
- package/dist/chunk-4MZDYEVQ.js +0 -1
- package/dist/chunk-4Y6KJJOW.js +0 -1
- package/dist/chunk-4YJCXB4Y.js +0 -1
- package/dist/chunk-54MVGVJC.js +0 -1
- package/dist/chunk-54P3FZNG.cjs +0 -1
- package/dist/chunk-5GI4OEUM.cjs +0 -1
- package/dist/chunk-5OPUQ5T6.js +0 -1
- package/dist/chunk-5PMGMODH.js +0 -1
- package/dist/chunk-5T6DY3SA.js +0 -1
- package/dist/chunk-5XH2VMVF.cjs +0 -1
- package/dist/chunk-5XOATIT7.js +0 -1
- package/dist/chunk-63GGX2BS.cjs +0 -1
- package/dist/chunk-64BZAONG.cjs +0 -1
- package/dist/chunk-66JP4PUG.cjs +0 -1
- package/dist/chunk-6AFNPQW2.js +0 -1
- package/dist/chunk-6BKLAQWR.js +0 -1
- package/dist/chunk-6G5YNQXD.js +0 -1
- package/dist/chunk-6GEID3HE.js +0 -1
- package/dist/chunk-6LM7XJ2A.js +0 -1
- package/dist/chunk-6M4IYQFZ.js +0 -1
- package/dist/chunk-6OO2SBYL.cjs +0 -1
- package/dist/chunk-6SYP2DRD.js +0 -1
- package/dist/chunk-6UVARJ55.cjs +0 -1
- package/dist/chunk-75K2QEB3.js +0 -1
- package/dist/chunk-76VE5EC6.cjs +0 -1
- package/dist/chunk-7AN7XHLU.js +0 -1
- package/dist/chunk-7C7R7JNX.cjs +0 -1
- package/dist/chunk-7EMQYM4A.js +0 -1
- package/dist/chunk-7GAGU65U.cjs +0 -1
- package/dist/chunk-7HFKYJCK.cjs +0 -1
- package/dist/chunk-7JKUI675.js +0 -1
- package/dist/chunk-7KBK2RWQ.js +0 -1
- package/dist/chunk-7RUINKY7.js +0 -1
- package/dist/chunk-7TDMV2GO.cjs +0 -1
- package/dist/chunk-7V7IBWP5.js +0 -1
- package/dist/chunk-7XMQFPW7.cjs +0 -1
- package/dist/chunk-7Y6PT4GT.cjs +0 -1
- package/dist/chunk-A3EBULR7.cjs +0 -1
- package/dist/chunk-A4KJAQNY.js +0 -1
- package/dist/chunk-ACPTAGS3.cjs +0 -1
- package/dist/chunk-AFO7BV2X.js +0 -1
- package/dist/chunk-APO7U7HG.cjs +0 -1
- package/dist/chunk-AQRYBCA3.cjs +0 -1
- package/dist/chunk-ARGHV7HW.cjs +0 -1
- package/dist/chunk-AZUJCNUP.js +0 -1
- package/dist/chunk-B6SBIS6W.js +0 -1
- package/dist/chunk-BASNU4JY.cjs +0 -1
- package/dist/chunk-BBPC5RWJ.cjs +0 -1
- package/dist/chunk-BEMQAYI5.cjs +0 -1
- package/dist/chunk-BFOH2ZUR.js +0 -1
- package/dist/chunk-BJQJOCQG.js +0 -1
- package/dist/chunk-BKBHW2XJ.js +0 -1
- package/dist/chunk-BO34ARLY.cjs +0 -1
- package/dist/chunk-BQA4B5JX.js +0 -1
- package/dist/chunk-BSNCALDT.cjs +0 -1
- package/dist/chunk-BUOTA64P.cjs +0 -1
- package/dist/chunk-BUVPABRX.js +0 -1
- package/dist/chunk-BX7F2U4P.cjs +0 -1
- package/dist/chunk-C6IMN7SF.js +0 -1
- package/dist/chunk-CA4X5NZI.js +0 -1
- package/dist/chunk-CL7YONGV.js +0 -1
- package/dist/chunk-CMAETGEV.js +0 -1
- package/dist/chunk-CP5LRZUF.cjs +0 -1
- package/dist/chunk-CQ7LGCRX.js +0 -1
- package/dist/chunk-CR5H624Z.js +0 -1
- package/dist/chunk-CTGIT5TY.js +0 -1
- package/dist/chunk-D4PZEQEG.js +0 -1
- package/dist/chunk-D4TUHKBA.cjs +0 -1
- package/dist/chunk-DAFN5EJR.cjs +0 -1
- package/dist/chunk-DNSXSQCO.js +0 -1
- package/dist/chunk-DZRYZ45X.js +0 -1
- package/dist/chunk-EBS4GCKX.js +0 -1
- package/dist/chunk-EFMVPY3K.js +0 -1
- package/dist/chunk-EFSZB7SJ.js +0 -1
- package/dist/chunk-EHJK4JRF.cjs +0 -1
- package/dist/chunk-EK7ODJWE.js +0 -1
- package/dist/chunk-ENPSKQUH.js +0 -1
- package/dist/chunk-EP626HCI.cjs +0 -1
- package/dist/chunk-EPU4K3DD.js +0 -1
- package/dist/chunk-EQDLLESZ.cjs +0 -1
- package/dist/chunk-EROXO3T4.cjs +0 -1
- package/dist/chunk-ESNMSCOM.js +0 -1
- package/dist/chunk-EXZZ6RPP.js +0 -1
- package/dist/chunk-EYPNBGK5.js +0 -1
- package/dist/chunk-F3EZ6NQM.js +0 -1
- package/dist/chunk-F6RF27Z3.cjs +0 -1
- package/dist/chunk-FDRXRFRK.js +0 -1
- package/dist/chunk-FGMSPUSF.cjs +0 -1
- package/dist/chunk-FGVDZJ7U.js +0 -1
- package/dist/chunk-FIO5FNV2.js +0 -1
- package/dist/chunk-FN6OUY2P.cjs +0 -1
- package/dist/chunk-FOUZI2Q3.cjs +0 -1
- package/dist/chunk-G57ZPKMR.js +0 -1
- package/dist/chunk-G73S4IVJ.js +0 -1
- package/dist/chunk-G74G5PZT.cjs +0 -1
- package/dist/chunk-GRKRFDIL.js +0 -1
- package/dist/chunk-GSBNZGMO.cjs +0 -1
- package/dist/chunk-GSFIDOPZ.cjs +0 -1
- package/dist/chunk-GW4KDK3D.cjs +0 -1
- package/dist/chunk-GWXILWA5.cjs +0 -1
- package/dist/chunk-GZJMERDJ.cjs +0 -1
- package/dist/chunk-H45R7G32.cjs +0 -1
- package/dist/chunk-H5KJ7ULU.js +0 -1
- package/dist/chunk-H6WDSTL3.cjs +0 -1
- package/dist/chunk-HC3HZK4Q.cjs +0 -1
- package/dist/chunk-HFNVS6OX.js +0 -1
- package/dist/chunk-HG6ZJDZX.cjs +0 -1
- package/dist/chunk-HIEVTRB4.cjs +0 -1
- package/dist/chunk-HJ2H6KUH.cjs +0 -1
- package/dist/chunk-HL3QPU5J.cjs +0 -1
- package/dist/chunk-HN4S6V2I.js +0 -1
- package/dist/chunk-HR2LFFYB.js +0 -1
- package/dist/chunk-HSNPZS6R.cjs +0 -1
- package/dist/chunk-I27XCDDI.cjs +0 -1
- package/dist/chunk-I2T3T7TN.js +0 -1
- package/dist/chunk-I2Z6A55T.js +0 -1
- package/dist/chunk-IRWDTBZT.cjs +0 -1
- package/dist/chunk-ITDJLXHO.js +0 -1
- package/dist/chunk-IVO53H3J.cjs +0 -1
- package/dist/chunk-IZWZPKOA.js +0 -1
- package/dist/chunk-J6WPJH72.js +0 -1
- package/dist/chunk-JHFSYEXB.cjs +0 -1
- package/dist/chunk-JI5FJX2E.js +0 -1
- package/dist/chunk-JMK2TCXJ.cjs +0 -1
- package/dist/chunk-JNB74WWB.cjs +0 -1
- package/dist/chunk-JNQXGRDN.js +0 -1
- package/dist/chunk-JPW7GBE2.cjs +0 -1
- package/dist/chunk-JQ76WO4H.js +0 -1
- package/dist/chunk-JRDQRETR.cjs +0 -1
- package/dist/chunk-JUPDV6DZ.cjs +0 -1
- package/dist/chunk-JYWIRZ2Z.js +0 -1
- package/dist/chunk-JZ463SIK.js +0 -1
- package/dist/chunk-K26HQR4Y.cjs +0 -1
- package/dist/chunk-K7T2WOD7.js +0 -1
- package/dist/chunk-KGPDVVVV.js +0 -1
- package/dist/chunk-KGWDTRVR.cjs +0 -1
- package/dist/chunk-KJOG333D.cjs +0 -1
- package/dist/chunk-KM5XOWVG.cjs +0 -1
- package/dist/chunk-KYMVIFAW.cjs +0 -1
- package/dist/chunk-KZJPXI6A.js +0 -1
- package/dist/chunk-L3FG6LLM.js +0 -1
- package/dist/chunk-L3VSMTOZ.cjs +0 -1
- package/dist/chunk-L4S5OAPG.js +0 -1
- package/dist/chunk-L4ZCRIBG.js +0 -1
- package/dist/chunk-L5CACS4O.cjs +0 -1
- package/dist/chunk-L65Z6PP7.cjs +0 -1
- package/dist/chunk-L7WDY53I.cjs +0 -1
- package/dist/chunk-LPNHLDEA.cjs +0 -1
- package/dist/chunk-LSODZ3GY.js +0 -1
- package/dist/chunk-LT2AWHBC.cjs +0 -1
- package/dist/chunk-LTDI6TR7.cjs +0 -1
- package/dist/chunk-M22GUUVY.cjs +0 -1
- package/dist/chunk-MBGSSEZN.cjs +0 -1
- package/dist/chunk-MFSRIHWE.js +0 -1
- package/dist/chunk-MH6AS6QU.js +0 -1
- package/dist/chunk-MKWSPETJ.js +0 -1
- package/dist/chunk-MPWQN3WY.js +0 -1
- package/dist/chunk-MRHAQMCH.cjs +0 -1
- package/dist/chunk-MVQUPUF7.js +0 -1
- package/dist/chunk-MZEHWQF3.js +0 -1
- package/dist/chunk-N2NQKHB3.js +0 -1
- package/dist/chunk-N4LC5TR2.js +0 -1
- package/dist/chunk-N5JE6642.cjs +0 -1
- package/dist/chunk-N6GBVESU.js +0 -1
- package/dist/chunk-N74J5NJE.js +0 -1
- package/dist/chunk-N7AESA4W.cjs +0 -1
- package/dist/chunk-NBUEBREG.cjs +0 -1
- package/dist/chunk-NC2AGJET.cjs +0 -1
- package/dist/chunk-NEIICTWC.js +0 -1
- package/dist/chunk-NHTBBY2L.js +0 -1
- package/dist/chunk-NQUTCPKD.js +0 -1
- package/dist/chunk-NVCXF5UR.cjs +0 -1
- package/dist/chunk-O74TUGYF.js +0 -1
- package/dist/chunk-OBX5B27B.cjs +0 -1
- package/dist/chunk-OCVPUGMZ.cjs +0 -1
- package/dist/chunk-OFLOVIU2.cjs +0 -1
- package/dist/chunk-OKBFQ7B6.js +0 -1
- package/dist/chunk-OLZEQGPJ.cjs +0 -1
- package/dist/chunk-OMHZCALN.cjs +0 -1
- package/dist/chunk-OMJYEGBX.cjs +0 -1
- package/dist/chunk-OPJJI442.cjs +0 -1
- package/dist/chunk-ORBI2CZ3.js +0 -1
- package/dist/chunk-ORWRUK3K.cjs +0 -1
- package/dist/chunk-OT55MXTZ.js +0 -1
- package/dist/chunk-OV6ESBSQ.cjs +0 -1
- package/dist/chunk-P4HDHWKF.js +0 -1
- package/dist/chunk-P7RCAO7P.cjs +0 -438
- package/dist/chunk-PEJ74NWA.js +0 -1
- package/dist/chunk-PHYBTFYH.js +0 -1
- package/dist/chunk-PJM2VP2C.js +0 -1
- package/dist/chunk-PJX2BJHU.cjs +0 -1
- package/dist/chunk-PM4GAQSE.cjs +0 -1
- package/dist/chunk-PNTFWNQB.cjs +0 -1
- package/dist/chunk-PSKQ45PX.js +0 -1
- package/dist/chunk-PZSBVMJ5.cjs +0 -1
- package/dist/chunk-Q2HW4RVT.js +0 -1
- package/dist/chunk-QDXJKXGO.cjs +0 -1
- package/dist/chunk-QGF2XNZS.cjs +0 -1
- package/dist/chunk-QHBVEZSR.js +0 -1
- package/dist/chunk-QID4F4QT.js +0 -1
- package/dist/chunk-QPP664N4.js +0 -1
- package/dist/chunk-QZ3KOXCB.js +0 -1
- package/dist/chunk-R3TYGYBQ.cjs +0 -1
- package/dist/chunk-R4O7XE2F.cjs +0 -1
- package/dist/chunk-RAHS5RJS.cjs +0 -1
- package/dist/chunk-RBODUO3Q.js +0 -1
- package/dist/chunk-RFHE6DOJ.js +0 -1
- package/dist/chunk-RLJFMTDS.js +0 -1
- package/dist/chunk-RLUXP6U4.cjs +0 -1
- package/dist/chunk-RMOD5JNB.cjs +0 -1
- package/dist/chunk-RT7PP32J.cjs +0 -1
- package/dist/chunk-RTFVY5D4.cjs +0 -1
- package/dist/chunk-RW5FFMRB.js +0 -1
- package/dist/chunk-RXUYF4A4.cjs +0 -1
- package/dist/chunk-SAYBB6XF.cjs +0 -1
- package/dist/chunk-SE4JHXNT.js +0 -1
- package/dist/chunk-SEHYNMWP.cjs +0 -1
- package/dist/chunk-SG2YWG6U.cjs +0 -1
- package/dist/chunk-SGK2IP3C.js +0 -1
- package/dist/chunk-SJMGQLYS.cjs +0 -1
- package/dist/chunk-SM7MR26C.cjs +0 -1
- package/dist/chunk-SNYQNW6T.cjs +0 -1
- package/dist/chunk-SOPOELNU.cjs +0 -1
- package/dist/chunk-SRWN2GDP.js +0 -1
- package/dist/chunk-SW62SX4Y.cjs +0 -1
- package/dist/chunk-SWZW76TE.js +0 -1
- package/dist/chunk-SXNRBENP.cjs +0 -1
- package/dist/chunk-T56X44VO.js +0 -1
- package/dist/chunk-T5XG33UI.js +0 -1
- package/dist/chunk-TFN3JWPS.cjs +0 -1
- package/dist/chunk-TOIDL7XA.cjs +0 -1
- package/dist/chunk-TRIZIXDA.cjs +0 -1
- package/dist/chunk-TSP3FU72.cjs +0 -1
- package/dist/chunk-TUZHNOSG.cjs +0 -1
- package/dist/chunk-TVMG2NYC.js +0 -1
- package/dist/chunk-TWCEO47X.cjs +0 -1
- package/dist/chunk-TXPRX236.cjs +0 -1
- package/dist/chunk-U3OEHN5P.cjs +0 -1
- package/dist/chunk-U6ZJSHFS.js +0 -1
- package/dist/chunk-UMTYOMHF.cjs +0 -1
- package/dist/chunk-UTMQRL7N.cjs +0 -1
- package/dist/chunk-UURK6I3D.cjs +0 -1
- package/dist/chunk-UVAWCZB6.js +0 -1
- package/dist/chunk-UWMBE6BM.js +0 -1
- package/dist/chunk-UXW7KBAK.js +0 -1
- package/dist/chunk-UYLVIAK4.js +0 -1
- package/dist/chunk-UZOTODQ4.js +0 -1
- package/dist/chunk-V4GNLMRD.cjs +0 -1
- package/dist/chunk-V57XYQTX.cjs +0 -1
- package/dist/chunk-VAU7HZPO.cjs +0 -1
- package/dist/chunk-VEPS2HPD.js +0 -1
- package/dist/chunk-VHOWC6UM.cjs +0 -1
- package/dist/chunk-VI2QG3FU.js +0 -1
- package/dist/chunk-VJUK4I7J.js +0 -1
- package/dist/chunk-VNI4VRFM.cjs +0 -1
- package/dist/chunk-VOFKZP4G.js +0 -1
- package/dist/chunk-VOILRHZ5.cjs +0 -1
- package/dist/chunk-VPHS3T3W.js +0 -1
- package/dist/chunk-VQ3GU3JR.js +0 -1
- package/dist/chunk-WAYI2SEB.js +0 -1
- package/dist/chunk-WFR3HBYR.cjs +0 -1
- package/dist/chunk-WKNGQQYL.js +0 -1
- package/dist/chunk-WLNQOMKL.cjs +0 -1
- package/dist/chunk-WM4KSO6C.cjs +0 -1
- package/dist/chunk-WVTQN2AI.cjs +0 -1
- package/dist/chunk-WYRK6YJU.cjs +0 -1
- package/dist/chunk-X7EK7EDZ.cjs +0 -1
- package/dist/chunk-X7PFDZGQ.js +0 -1
- package/dist/chunk-XCG2UC6T.js +0 -1
- package/dist/chunk-XEAAXO7F.js +0 -1
- package/dist/chunk-XJFQUA2U.cjs +0 -1
- package/dist/chunk-XKFU3EHP.cjs +0 -1
- package/dist/chunk-XR2MB57Z.cjs +0 -1
- package/dist/chunk-XR72I63W.cjs +0 -1
- package/dist/chunk-XROZFTOX.js +0 -1
- package/dist/chunk-XSIE5W4C.js +0 -1
- package/dist/chunk-XSSRBOMF.js +0 -1
- package/dist/chunk-XWQ3IM2J.js +0 -1
- package/dist/chunk-XY7YER5N.cjs +0 -1
- package/dist/chunk-Y5LDV42I.cjs +0 -1
- package/dist/chunk-Y7RFTHSR.cjs +0 -1
- package/dist/chunk-YBJMFRB6.js +0 -1
- package/dist/chunk-YCSQX2SY.js +0 -1
- package/dist/chunk-YHDBKFF6.js +0 -1
- package/dist/chunk-YJDSLML5.cjs +0 -1
- package/dist/chunk-YJEN2CYE.cjs +0 -1
- package/dist/chunk-YJWH5VIJ.cjs +0 -1
- package/dist/chunk-YN6OVP7D.cjs +0 -1
- package/dist/chunk-YQNLUCDL.cjs +0 -1
- package/dist/chunk-YRVN4PYH.js +0 -1
- package/dist/chunk-YSTUBBOJ.cjs +0 -1
- package/dist/chunk-YWIXN5BR.js +0 -1
- package/dist/chunk-YWTY4X2R.cjs +0 -1
- package/dist/chunk-YXKPCISK.cjs +0 -1
- package/dist/chunk-YXVTDTHY.js +0 -1
- package/dist/chunk-YYEJOSR3.js +0 -1
- package/dist/chunk-Z23BZCCD.js +0 -438
- package/dist/chunk-Z33G2D3N.js +0 -1
- package/dist/chunk-Z3F6RC7S.cjs +0 -1
- package/dist/chunk-Z5EOW435.js +0 -1
- package/dist/chunk-Z5YZYBC2.js +0 -1
- package/dist/chunk-Z5Z4ADBO.cjs +0 -1
- package/dist/chunk-Z6K5VISM.cjs +0 -1
- package/dist/chunk-Z6OOXW67.cjs +0 -1
- package/dist/chunk-Z7D7Q6U3.js +0 -1
- package/dist/chunk-Z7DYKN6W.js +0 -1
- package/dist/chunk-ZAZDS3SB.js +0 -1
- package/dist/chunk-ZCCHYKDG.cjs +0 -1
- package/dist/chunk-ZH3SGWIA.cjs +0 -1
- package/dist/chunk-ZIGQWNCG.js +0 -1
- package/dist/chunk-ZIGQZNHP.js +0 -1
- package/dist/chunk-ZITGCTSW.js +0 -1
- package/dist/chunk-ZLNSRDW7.cjs +0 -1
- package/dist/chunk-ZMG3NQDL.js +0 -1
- package/dist/chunk-ZSKQIU2G.js +0 -1
- package/dist/chunk-ZX5QTVEJ.js +0 -1
- package/dist/clamped-integer-subtract-DZ7rsJE4.d.cts +0 -15
- package/dist/clamped-integer-subtract-DZ7rsJE4.d.ts +0 -15
- package/dist/coerced-array-DRz3tqda.d.cts +0 -14
- package/dist/coerced-array-DRz3tqda.d.ts +0 -14
- package/dist/curry-order-rules-BKXCPBNx.d.cts +0 -37
- package/dist/curry-order-rules-BKXCPBNx.d.ts +0 -37
- package/dist/deduped-CagGlWg1.d.cts +0 -23
- package/dist/deduped-DWYYywHn.d.ts +0 -23
- package/dist/enumerable-string-key-of-C4gsorXe.d.ts +0 -14
- package/dist/enumerable-string-key-of-D8w_3Yg8.d.cts +0 -14
- package/dist/enumerable-string-keyed-value-of-BU9R_cEk.d.cts +0 -9
- package/dist/enumerable-string-keyed-value-of-BU9R_cEk.d.ts +0 -9
- package/dist/filtered-array-BCjySbC6.d.cts +0 -18
- package/dist/filtered-array-JKATL39M.d.ts +0 -18
- package/dist/if-D4QIikQ1.d.cts +0 -5
- package/dist/if-D4QIikQ1.d.ts +0 -5
- package/dist/int-range-inclusive-Cn-qsrAN.d.cts +0 -12
- package/dist/int-range-inclusive-Cn-qsrAN.d.ts +0 -12
- package/dist/is-bounded-record-C9WAwfA8.d.cts +0 -30
- package/dist/is-bounded-record-C9WAwfA8.d.ts +0 -30
- package/dist/is-union-Bx34mF34.d.cts +0 -6
- package/dist/is-union-Bx34mF34.d.ts +0 -6
- package/dist/iterable-container-BTpDVdNc.d.cts +0 -15
- package/dist/iterable-container-BTpDVdNc.d.ts +0 -15
- package/dist/magic-string.es-2ADFIHOO.cjs +0 -13
- package/dist/magic-string.es-PNCTE22R.js +0 -13
- package/dist/mapped-C0LN24rT.d.ts +0 -7
- package/dist/mapped-D9hCE2LX.d.cts +0 -7
- package/dist/narrowed-to-CDIykNaN.d.cts +0 -12
- package/dist/narrowed-to-CDIykNaN.d.ts +0 -12
- package/dist/non-empty-array-C9Od1wmF.d.cts +0 -3
- package/dist/non-empty-array-C9Od1wmF.d.ts +0 -3
- package/dist/partial-array-Vnf1fBtl.d.cts +0 -10
- package/dist/partial-array-Vnf1fBtl.d.ts +0 -10
- package/dist/perkakas-type-error-8wPb8T2y.d.cts +0 -17
- package/dist/perkakas-type-error-8wPb8T2y.d.ts +0 -17
- package/dist/reordered-array-DTkM8K3n.d.cts +0 -7
- package/dist/reordered-array-DVguhAmZ.d.ts +0 -7
- package/dist/to-string-DO8zw6jS.d.cts +0 -11
- package/dist/to-string-DO8zw6jS.d.ts +0 -11
- package/dist/tuple-parts-BTivqbtT.d.ts +0 -86
- package/dist/tuple-parts-v6av7LMU.d.cts +0 -86
- package/dist/upsert-prop-Cc3jEW9l.d.cts +0 -11
- package/dist/upsert-prop-CdUtD50i.d.ts +0 -11
- /package/dist/{chunk-QFJ3I53F.js → type.helpers-CNVsSXtV.cjs} +0 -0
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{describe as e,globalExpect as t,it as n,vi as r}from"./dist-BQGZfjDS.js";import{constant as i}from"./constant-DrpDXHc7.js";import{funnel as a}from"./funnel-CEbURcmp.js";import{identity as o}from"./identity-D7NWGnLw.js";import{sleep as s}from"./sleep-DvzRMgY-.js";function c(e,t=0,{leading:n=!0,trailing:r=!0}={}){let i,{call:o,flush:s,cancel:c}=a(t=>{!n&&!r||(i=e(...t))},{reducer:(e,...t)=>t,minQuietPeriodMs:t,maxBurstDurationMs:t,...r?n?{triggerAt:`both`}:{triggerAt:`end`}:{triggerAt:`start`}});return Object.assign((...e)=>(o(...e),i),{flush:()=>(s(),i),cancel:c})}e(`https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L22768`,()=>{n(`subsequent calls should return the result of the first call`,async()=>{let e=c(o(),16);t(e(`a`)).toBe(`a`),t(e(`b`)).toBe(`a`),await s(32);let n=e(`c`),r=e(`d`);t(n).not.toBe(`a`),t(n).toBeDefined(),t(r).not.toBe(`d`),t(r).toBeDefined()}),n("should support a `leading` option",()=>{let e=c(o(),16,{leading:!0}),n=c(o(),16,{leading:!1});t(e(`a`)).toBe(`a`),t(n(`a`)).toBeUndefined()}),n("should support a `trailing` option",async()=>{let e=r.fn(o()),n=r.fn(o()),i=c(e,32,{trailing:!0}),a=c(n,32,{trailing:!1});t(i(`a`)).toBe(`a`),t(i(`b`)).toBe(`a`),t(a(`a`)).toBe(`a`),t(a(`b`)).toBe(`a`),await s(128),t(e).toHaveBeenCalledTimes(2),t(n).toHaveBeenCalledTimes(1)})}),e(`https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L23038`,()=>{n("should reset `lastCalled` after cancelling",async()=>{let e=0,n=c(()=>(e+=1,e),16,{leading:!0});t(n()).toBe(1),n.cancel(),t(n()).toBe(2),n(),await s(32),t(e).toBe(3)}),n(`should support flushing delayed calls`,async()=>{let e=0,n=c(()=>(e+=1,e),16,{leading:!1});n(),t(n.flush()).toBe(1),await s(32),t(e).toBe(1)}),n("should noop `cancel` and `flush` when nothing is queued",async()=>{let e=r.fn(i(`hello`)),n=c(e,16);n.cancel(),t(n.flush()).toBeUndefined(),await s(32),t(e).toHaveBeenCalledTimes(0)})}),e(`features not tested by Lodash`,()=>{n(`does nothing when neither leading nor trailing are enabled`,async()=>{let e=c(o(),16,{leading:!1,trailing:!1});t(e(`hello`)).toBeUndefined(),t(e(`world`)).toBeUndefined(),await s(64),t(e(`goodbye`)).toBeUndefined()})});
|
|
2
|
+
//# sourceMappingURL=funnel.lodash-throttle-with-cached-value.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funnel.lodash-throttle-with-cached-value.test.js","names":["cachedValue: ReturnType<F> | undefined"],"sources":["../src/funnel.lodash-throttle-with-cached-value.test.ts"],"sourcesContent":["/* eslint-disable no-nested-ternary, function-paren-newline, ts/explicit-function-return-type, ts/no-explicit-any --\n * These aren't useful for a reference implementation for a legacy library!\n */\n\nimport { describe, expect, it, vi } from 'vitest';\nimport { constant } from './constant';\nimport { funnel } from './funnel';\nimport { identity } from './identity';\nimport { sleep } from './sleep';\n\n/**\n * A reference implementation of the Lodash `throttle` function using the\n * Our `funnel` function. While migrating from Lodash you can copy this\n * function as-is into your codebase and use it as a drop-in replacement; but\n * we recommend eventually inlining the call to `funnel` so you can adjust the\n * function to your specific needs.\n *\n * This is a more complex implementation which respects Lodash capability to\n * track the return value of the callback function. In most cases you are more\n * likely to prefer the simpler reference implementation `throttle` which can\n * be found in the other test file.\n *\n * The following tests in this file are based on the Lodash tests for throttle.\n * They have been adapted to work with our testing framework, have been fixed\n * or expanded slightly were it felt necessary, and have been modernized for\n * better readability. The names of the test cases have been preserved to ease\n * comparing them to the original tests. Tests that are unrelated to the cache\n * capability have been removed to avoid duplication with the other test file.\n *\n * Note that this means that whenever Lodash offered a concrete spec, we made\n * sure our reference implementation respects it, but there might be untested\n * use-cases that would have differing runtime behaviors.\n *\n * @see Lodash Documentation: https://lodash.com/docs/4.17.15#throttle\n * @see Lodash Implementation: https://github.com/lodash/lodash/blob/4.17.21/lodash.js#L10965\n * @see Lodash Tests: https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L22768\n * @see Lodash Typing: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/lodash/common/function.d.ts#L1347\n */\nfunction throttleWithCachedValue<F extends (...args: any) => any>(\n func: F,\n wait = 0,\n {\n leading = true,\n trailing = true,\n }: { readonly leading?: boolean; readonly trailing?: boolean } = {},\n) {\n let cachedValue: ReturnType<F> | undefined;\n\n const { call, flush, cancel } = funnel(\n (args: Parameters<F>) => {\n if (!leading && !trailing) {\n /**\n * In Lodash you can disable both the trailing and leading edges of the\n * throttle window, effectively causing the function to never be\n * invoked. Our's uses the invokedAt enum exactly to prevent such a\n * situation; so to simulate Lodash we need to only pass the callback\n * when at least one of them is enabled.\n */\n return;\n }\n\n /**\n * Funnel provides more control over the args, but lodash simply passes\n * them through, to replicate this behavior we need to spread the args\n * array maintained via the reducer below.\n * Also, every time the function is invoked the cached value is updated.\n */\n cachedValue = func(...args) as ReturnType<F>;\n },\n {\n // Throttle stores the latest args it was called with for the next invocation of the callback.\n reducer: (_, ...args: Parameters<F>) => args,\n minQuietPeriodMs: wait,\n maxBurstDurationMs: wait,\n ...(trailing\n ? leading\n ? { triggerAt: 'both' }\n : { triggerAt: 'end' }\n : { triggerAt: 'start' }),\n },\n );\n\n /**\n * Lodash uses a legacy JS-isms to attach helper functions to the main\n * callback of `throttle`. In our's we return a proper object where the\n * callback is one of the available properties. Here we destructure and then\n * reconstruct the object to fit the Lodash API.\n */\n return Object.assign(\n (...args: Parameters<F>) => {\n call(...args);\n return cachedValue;\n },\n {\n flush: () => {\n flush();\n return cachedValue;\n },\n\n cancel,\n },\n );\n}\n\n/**\n * We need some non-trivial duration to use in all our tests, to abstract the\n * actual chosen value we use this UnitOfTime (UT) constant. As long as it is a\n * positive integer, the actual value doesn't matter (but the larger it is,\n * the longer the tests would take to run); the value used by Lodash is 32.\n * The number is in milliseconds.\n */\nconst UT = 16;\n\ndescribe('https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L22768', () => {\n it('subsequent calls should return the result of the first call', async () => {\n const throttled = throttleWithCachedValue(identity(), UT);\n\n expect(throttled('a')).toBe('a');\n expect(throttled('b')).toBe('a');\n\n await sleep(2 * UT);\n const resultC = throttled('c');\n const resultD = throttled('d');\n\n expect(resultC).not.toBe('a');\n expect(resultC).toBeDefined();\n expect(resultD).not.toBe('d');\n expect(resultD).toBeDefined();\n });\n\n it('should support a `leading` option', () => {\n const withLeading = throttleWithCachedValue(identity(), UT, {\n leading: true,\n });\n const withoutLeading = throttleWithCachedValue(identity(), UT, {\n leading: false,\n });\n\n expect(withLeading('a')).toBe('a');\n expect(withoutLeading('a')).toBeUndefined();\n });\n\n it('should support a `trailing` option', async () => {\n const mockWith = vi.fn<<T>(x: T) => T>(identity());\n const mockWithout = vi.fn<<T>(x: T) => T>(identity());\n const withTrailing = throttleWithCachedValue(mockWith, 2 * UT, {\n trailing: true,\n });\n const withoutTrailing = throttleWithCachedValue(mockWithout, 2 * UT, {\n trailing: false,\n });\n\n expect(withTrailing('a')).toBe('a');\n expect(withTrailing('b')).toBe('a');\n expect(withoutTrailing('a')).toBe('a');\n expect(withoutTrailing('b')).toBe('a');\n\n await sleep(8 * UT);\n\n expect(mockWith).toHaveBeenCalledTimes(2);\n expect(mockWithout).toHaveBeenCalledTimes(1);\n });\n});\n\ndescribe('https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L23038', () => {\n it('should reset `lastCalled` after cancelling', async () => {\n let callCount = 0;\n const throttled = throttleWithCachedValue(\n () => {\n callCount += 1;\n return callCount;\n },\n UT,\n { leading: true },\n );\n\n expect(throttled()).toBe(1);\n\n throttled.cancel();\n\n expect(throttled()).toBe(2);\n\n throttled();\n await sleep(2 * UT);\n\n expect(callCount).toBe(3);\n });\n\n it('should support flushing delayed calls', async () => {\n let callCount = 0;\n const throttled = throttleWithCachedValue(\n () => {\n callCount += 1;\n return callCount;\n },\n UT,\n { leading: false },\n );\n throttled();\n\n expect(throttled.flush()).toBe(1);\n\n await sleep(2 * UT);\n\n expect(callCount).toBe(1);\n });\n\n it('should noop `cancel` and `flush` when nothing is queued', async () => {\n const mockFn = vi.fn<() => string>(constant('hello'));\n const throttled = throttleWithCachedValue(mockFn, UT);\n throttled.cancel();\n\n expect(throttled.flush()).toBeUndefined();\n\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n });\n});\n\ndescribe('features not tested by Lodash', () => {\n it('does nothing when neither leading nor trailing are enabled', async () => {\n const throttled = throttleWithCachedValue(identity(), UT, {\n leading: false,\n trailing: false,\n });\n\n expect(throttled('hello')).toBeUndefined();\n expect(throttled('world')).toBeUndefined();\n\n await sleep(4 * UT);\n\n expect(throttled('goodbye')).toBeUndefined();\n });\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`./dist-gvJoKj_M.cjs`),t=require(`./funnel-CL-QFpGk.cjs`),n=require(`./sleep-1rGV3wAg.cjs`);function r(e,n=0,{leading:r=!0,trailing:i=!0}={}){let{call:a,isIdle:o,...s}=t.funnel(t=>{!r&&!i||e(...t)},{reducer:(e,...t)=>t,minQuietPeriodMs:n,maxBurstDurationMs:n,...i?r?{triggerAt:`both`}:{triggerAt:`end`}:{triggerAt:`start`}});return Object.assign(a,s)}const i=16;e.describe(`https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L22768`,()=>{e.it(`should throttle a function`,async()=>{let t=e.vi.fn(),i=r(t,16);i(),i(),i();let a=t.mock.calls.length;e.globalExpect(a).toBeGreaterThan(0),await n.sleep(32),e.globalExpect(t.mock.calls.length).toBeGreaterThan(a)}),e.it("should clear timeout when `func` is called",async()=>{let t=e.vi.fn(),i=r(t,16);i(),e.globalExpect(t).toHaveBeenCalledTimes(1),await n.sleep(32),i(),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it(`should not trigger a trailing call when invoked once`,async()=>{let t=e.vi.fn();r(t,16)(),e.globalExpect(t).toHaveBeenCalledTimes(1),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(1)}),e.it(`should trigger a call when invoked repeatedly`,()=>{let t=e.vi.fn(),n=r(t,16),i=Date.now()+160;for(;Date.now()<i;)n();e.globalExpect(t).toHaveBeenCalledExactlyOnceWith()}),e.it("should trigger a call when invoked repeatedly and `leading` is `false`",async()=>{let t=e.vi.fn(),i=r(t,16,{leading:!1}),a=Date.now()+160;for(;Date.now()<a;)i();await n.sleep(0),e.globalExpect(t).toHaveBeenCalledExactlyOnceWith()}),e.it(`should trigger a second throttled call as soon as possible`,async()=>{let t=e.vi.fn(),i=r(t,64,{leading:!1});i(),await n.sleep(96),e.globalExpect(t).toHaveBeenCalledTimes(1),i(),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(1),await n.sleep(64),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it(`should apply default options`,async()=>{let t=e.vi.fn(),i=r(t,16,{});i(),i(),e.globalExpect(t).toHaveBeenCalledTimes(1),await n.sleep(64),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it("should support a `leading` option",()=>{let t=e.vi.fn(),n=e.vi.fn(),i=r(t,16,{leading:!0}),a=r(n,16,{leading:!1});i(),a(),e.globalExpect(t).toHaveBeenCalledTimes(1),e.globalExpect(n).toHaveBeenCalledTimes(0)}),e.it("should support a `trailing` option",async()=>{let t=e.vi.fn(),i=e.vi.fn(),a=r(t,32,{trailing:!0}),o=r(i,32,{trailing:!1});a(`a`),a(`b`),o(`a`),o(`b`),e.globalExpect(t).toHaveBeenCalledExactlyOnceWith(`a`),e.globalExpect(i).toHaveBeenCalledExactlyOnceWith(`a`),await n.sleep(128),e.globalExpect(t).toHaveBeenCalledTimes(2),e.globalExpect(i).toHaveBeenCalledTimes(1)}),e.it("should not update `lastCalled`, at the end of the timeout, when `trailing` is `false`",async()=>{let t=e.vi.fn(),i=r(t,64,{trailing:!1});i(),i(),await n.sleep(48),i(),i(),await n.sleep(48),e.globalExpect(t).toHaveBeenCalledExactlyOnceWith()})}),e.describe(`https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L23038`,()=>{e.it("should use a default `wait` of `0`",async()=>{let t=e.vi.fn(),i=r(t);i(),await n.sleep(16),i(),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it(`supports recursive calls`,async()=>{let t=[],i=[`a`,`b`,`c`],a=r(e=>{t.push(e);let n=i.shift();n!==void 0&&a(n)},16);a(i.shift()),e.globalExpect(t).toStrictEqual([`a`]),await n.sleep(128),e.globalExpect(t).toStrictEqual([`a`,`b`,`c`])}),e.it(`should support cancelling delayed calls`,async()=>{let t=e.vi.fn(),i=r(t,16,{leading:!1});i(),i.cancel(),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(0)}),e.it("should reset `lastCalled` after cancelling",async()=>{let t=e.vi.fn(),i=r(t,16,{leading:!0});i(),e.globalExpect(t).toHaveBeenCalledTimes(1),i.cancel(),i(),e.globalExpect(t).toHaveBeenCalledTimes(2),i(),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(3)}),e.it(`should support flushing delayed calls`,async()=>{let t=e.vi.fn(),i=r(t,16,{leading:!1});i(),i.flush(),e.globalExpect(t).toHaveBeenCalledTimes(1),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(1)}),e.it("should noop `cancel` and `flush` when nothing is queued",async()=>{let t=e.vi.fn(),i=r(t,16);i.cancel(),i.flush(),e.globalExpect(t).toHaveBeenCalledTimes(0),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(0)})}),e.describe(`not tested by Lodash`,()=>{e.it("should do nothing when `leading` and `trailing` are both `disabled`",async()=>{let t=e.vi.fn(),i=r(t,16,{leading:!1,trailing:!1});i(),i(),i(),e.globalExpect(t).toHaveBeenCalledTimes(0),await n.sleep(32),e.globalExpect(t).toHaveBeenCalledTimes(0)})});
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{describe as e,globalExpect as t,it as n,vi as r}from"./dist-BQGZfjDS.js";import{funnel as i}from"./funnel-CEbURcmp.js";import{sleep as a}from"./sleep-DvzRMgY-.js";function o(e,t=0,{leading:n=!0,trailing:r=!0}={}){let{call:a,isIdle:o,...s}=i(t=>{!n&&!r||e(...t)},{reducer:(e,...t)=>t,minQuietPeriodMs:t,maxBurstDurationMs:t,...r?n?{triggerAt:`both`}:{triggerAt:`end`}:{triggerAt:`start`}});return Object.assign(a,s)}e(`https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L22768`,()=>{n(`should throttle a function`,async()=>{let e=r.fn(),n=o(e,16);n(),n(),n();let i=e.mock.calls.length;t(i).toBeGreaterThan(0),await a(32),t(e.mock.calls.length).toBeGreaterThan(i)}),n("should clear timeout when `func` is called",async()=>{let e=r.fn(),n=o(e,16);n(),t(e).toHaveBeenCalledTimes(1),await a(32),n(),t(e).toHaveBeenCalledTimes(2)}),n(`should not trigger a trailing call when invoked once`,async()=>{let e=r.fn();o(e,16)(),t(e).toHaveBeenCalledTimes(1),await a(32),t(e).toHaveBeenCalledTimes(1)}),n(`should trigger a call when invoked repeatedly`,()=>{let e=r.fn(),n=o(e,16),i=Date.now()+160;for(;Date.now()<i;)n();t(e).toHaveBeenCalledExactlyOnceWith()}),n("should trigger a call when invoked repeatedly and `leading` is `false`",async()=>{let e=r.fn(),n=o(e,16,{leading:!1}),i=Date.now()+160;for(;Date.now()<i;)n();await a(0),t(e).toHaveBeenCalledExactlyOnceWith()}),n(`should trigger a second throttled call as soon as possible`,async()=>{let e=r.fn(),n=o(e,64,{leading:!1});n(),await a(96),t(e).toHaveBeenCalledTimes(1),n(),await a(32),t(e).toHaveBeenCalledTimes(1),await a(64),t(e).toHaveBeenCalledTimes(2)}),n(`should apply default options`,async()=>{let e=r.fn(),n=o(e,16,{});n(),n(),t(e).toHaveBeenCalledTimes(1),await a(64),t(e).toHaveBeenCalledTimes(2)}),n("should support a `leading` option",()=>{let e=r.fn(),n=r.fn(),i=o(e,16,{leading:!0}),a=o(n,16,{leading:!1});i(),a(),t(e).toHaveBeenCalledTimes(1),t(n).toHaveBeenCalledTimes(0)}),n("should support a `trailing` option",async()=>{let e=r.fn(),n=r.fn(),i=o(e,32,{trailing:!0}),s=o(n,32,{trailing:!1});i(`a`),i(`b`),s(`a`),s(`b`),t(e).toHaveBeenCalledExactlyOnceWith(`a`),t(n).toHaveBeenCalledExactlyOnceWith(`a`),await a(128),t(e).toHaveBeenCalledTimes(2),t(n).toHaveBeenCalledTimes(1)}),n("should not update `lastCalled`, at the end of the timeout, when `trailing` is `false`",async()=>{let e=r.fn(),n=o(e,64,{trailing:!1});n(),n(),await a(48),n(),n(),await a(48),t(e).toHaveBeenCalledExactlyOnceWith()})}),e(`https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L23038`,()=>{n("should use a default `wait` of `0`",async()=>{let e=r.fn(),n=o(e);n(),await a(16),n(),t(e).toHaveBeenCalledTimes(2)}),n(`supports recursive calls`,async()=>{let e=[],n=[`a`,`b`,`c`],r=o(t=>{e.push(t);let i=n.shift();i!==void 0&&r(i)},16);r(n.shift()),t(e).toStrictEqual([`a`]),await a(128),t(e).toStrictEqual([`a`,`b`,`c`])}),n(`should support cancelling delayed calls`,async()=>{let e=r.fn(),n=o(e,16,{leading:!1});n(),n.cancel(),await a(32),t(e).toHaveBeenCalledTimes(0)}),n("should reset `lastCalled` after cancelling",async()=>{let e=r.fn(),n=o(e,16,{leading:!0});n(),t(e).toHaveBeenCalledTimes(1),n.cancel(),n(),t(e).toHaveBeenCalledTimes(2),n(),await a(32),t(e).toHaveBeenCalledTimes(3)}),n(`should support flushing delayed calls`,async()=>{let e=r.fn(),n=o(e,16,{leading:!1});n(),n.flush(),t(e).toHaveBeenCalledTimes(1),await a(32),t(e).toHaveBeenCalledTimes(1)}),n("should noop `cancel` and `flush` when nothing is queued",async()=>{let e=r.fn(),n=o(e,16);n.cancel(),n.flush(),t(e).toHaveBeenCalledTimes(0),await a(32),t(e).toHaveBeenCalledTimes(0)})}),e(`not tested by Lodash`,()=>{n("should do nothing when `leading` and `trailing` are both `disabled`",async()=>{let e=r.fn(),n=o(e,16,{leading:!1,trailing:!1});n(),n(),n(),t(e).toHaveBeenCalledTimes(0),await a(32),t(e).toHaveBeenCalledTimes(0)})});
|
|
2
|
+
//# sourceMappingURL=funnel.lodash-throttle.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funnel.lodash-throttle.test.js","names":[],"sources":["../src/funnel.lodash-throttle.test.ts"],"sourcesContent":["/* eslint-disable function-paren-newline, no-nested-ternary, ts/explicit-function-return-type, ts/no-explicit-any --\n * These aren't useful for a reference implementation for a legacy library!\n */\n\nimport { describe, expect, it, vi } from 'vitest';\nimport { funnel } from './funnel';\nimport { sleep } from './sleep';\n\n/**\n * A reference implementation of the Lodash `throttle` function using the\n * Our `funnel` function. While migrating from Lodash you can copy this\n * function as-is into your code base and use it as a drop-in replacement; but\n * we recommend eventually inlining the call to `funnel` so you can adjust the\n * function to your specific needs.\n *\n * This is a simplified implementation which ignores the Lodash capability to\n * track the return value of the callback function, but it is most likely the\n * more common use-case. For a more complete (and more complex) implementation\n * that also does that see the reference implementation for\n * `throttleWithCachedValue` in the other test file.\n *\n * The following tests in this file are based on the Lodash tests for throttle.\n * They have been adapted to work with our testing framework, have been fixed\n * or expanded slightly were it felt necessary, and have been modernized for\n * better readability. The names of the test cases have been preserved to ease\n * comparing them to the original tests.\n *\n * Note that this means that whenever Lodash offered a concrete spec, we made\n * sure our reference implementation respects it, but there might be untested\n * use-cases that would have differing runtime behaviors.\n *\n * @see Lodash Documentation: https://lodash.com/docs/4.17.15#throttle\n * @see Lodash Implementation: https://github.com/lodash/lodash/blob/4.17.21/lodash.js#L10965\n * @see Lodash Typing: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/lodash/common/function.d.ts#L1347\n */\nfunction throttle<F extends (...args: any) => void>(\n func: F,\n wait = 0,\n {\n leading = true,\n trailing = true,\n }: { readonly leading?: boolean; readonly trailing?: boolean } = {},\n) {\n const {\n call,\n // Lodash v4 doesn't provide access to the `isIdle` (called `pending` in Lodash v5) information.\n isIdle: _isIdle,\n ...rest\n } = funnel(\n (args: Parameters<F>) => {\n if (!leading && !trailing) {\n /**\n * In Lodash you can disable both the trailing and leading edges of the\n * throttle window, effectively causing the function to never be\n * invoked. Our's uses the invokedAt enum exactly to prevent such a\n * situation; so to simulate Lodash we need to only pass the callback\n * when at least one of them is enabled.\n */\n return;\n }\n\n /**\n * Funnel provides more control over the args, but lodash simply passes\n * them through, to replicate this behavior we need to spread the args\n * array maintained via the reducer below.\n */\n func(...args);\n },\n {\n // Throttle stores the latest args it was called with for the next invocation of the callback.\n reducer: (_, ...args: Parameters<F>) => args,\n minQuietPeriodMs: wait,\n maxBurstDurationMs: wait,\n ...(trailing\n ? leading\n ? { triggerAt: 'both' }\n : { triggerAt: 'end' }\n : { triggerAt: 'start' }),\n },\n );\n /**\n * Lodash uses a legacy JS-ism to attach helper functions to the main\n * callback of `throttle`. In our's we return a proper object where the\n * callback is one of the available properties. Here we destructure and then\n * reconstruct the object to fit the Lodash API.\n */\n return Object.assign(call, rest);\n}\n\n/**\n * We need some non-trivial duration to use in all our tests, to abstract the\n * actual chosen value we use this UnitOfTime (UT) constant. As long as it is a\n * positive integer, the actual value doesn't matter (but the larger it is,\n * the longer the tests would take to run); the value used by Lodash is 32.\n * The number is in milliseconds.\n */\nconst UT = 16;\n\ndescribe('https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L22768', () => {\n it('should throttle a function', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT);\n throttled();\n throttled();\n throttled();\n const callCount = mockFn.mock.calls.length;\n\n expect(callCount).toBeGreaterThan(0);\n\n await sleep(2 * UT);\n\n expect(mockFn.mock.calls.length).toBeGreaterThan(callCount);\n });\n\n it('should clear timeout when `func` is called', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT);\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(2 * UT);\n\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('should not trigger a trailing call when invoked once', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT);\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n\n it('should trigger a call when invoked repeatedly', () => {\n const mockFn = vi.fn<() => void>();\n\n const throttled = throttle(mockFn, UT);\n\n const end = Date.now() + 10 * UT;\n while (Date.now() < end) {\n throttled();\n }\n\n expect(mockFn).toHaveBeenCalledExactlyOnceWith();\n });\n\n it('should trigger a call when invoked repeatedly and `leading` is `false`', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT, { leading: false });\n const end = Date.now() + 10 * UT;\n while (Date.now() < end) {\n throttled();\n }\n // Yield execution to allow timeouts to run\n await sleep(0);\n\n expect(mockFn).toHaveBeenCalledExactlyOnceWith();\n });\n\n it('should trigger a second throttled call as soon as possible', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, 4 * UT, { leading: false });\n throttled();\n await sleep(6 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n throttled();\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(4 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('should apply default options', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT, {});\n throttled();\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(4 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('should support a `leading` option', () => {\n const mockWith = vi.fn<() => void>();\n const mockWithout = vi.fn<() => void>();\n const withLeading = throttle(mockWith, UT, { leading: true });\n const withoutLeading = throttle(mockWithout, UT, { leading: false });\n\n withLeading();\n withoutLeading();\n\n expect(mockWith).toHaveBeenCalledTimes(1);\n expect(mockWithout).toHaveBeenCalledTimes(0);\n });\n\n it('should support a `trailing` option', async () => {\n const mockWith = vi.fn<(x: string) => void>();\n const mockWithout = vi.fn<(x: string) => void>();\n const withTrailing = throttle(mockWith, 2 * UT, { trailing: true });\n const withoutTrailing = throttle(mockWithout, 2 * UT, { trailing: false });\n withTrailing('a');\n withTrailing('b');\n withoutTrailing('a');\n withoutTrailing('b');\n\n expect(mockWith).toHaveBeenCalledExactlyOnceWith('a');\n expect(mockWithout).toHaveBeenCalledExactlyOnceWith('a');\n\n await sleep(8 * UT);\n\n expect(mockWith).toHaveBeenCalledTimes(2);\n expect(mockWithout).toHaveBeenCalledTimes(1);\n });\n\n it('should not update `lastCalled`, at the end of the timeout, when `trailing` is `false`', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, 64, { trailing: false });\n throttled();\n throttled();\n await sleep(3 * UT);\n throttled();\n throttled();\n await sleep(3 * UT);\n\n expect(mockFn).toHaveBeenCalledExactlyOnceWith();\n });\n});\n\ndescribe('https://github.com/lodash/lodash/blob/4.17.21/test/test.js#L23038', () => {\n it('should use a default `wait` of `0`', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn);\n throttled();\n await sleep(UT);\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('supports recursive calls', async () => {\n const actual = [] as Array<string>;\n const queue = ['a', 'b', 'c'];\n const throttled = throttle((chr: string) => {\n actual.push(chr);\n const next = queue.shift();\n if (next !== undefined) {\n throttled(next);\n }\n }, UT);\n throttled(queue.shift()!);\n\n expect(actual).toStrictEqual(['a']);\n\n await sleep(8 * UT);\n\n expect(actual).toStrictEqual(['a', 'b', 'c']);\n });\n\n it('should support cancelling delayed calls', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT, { leading: false });\n throttled();\n throttled.cancel();\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n });\n\n it('should reset `lastCalled` after cancelling', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT, { leading: true });\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n throttled.cancel();\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n\n throttled();\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(3);\n });\n\n it('should support flushing delayed calls', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT, { leading: false });\n throttled();\n throttled.flush();\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n\n it('should noop `cancel` and `flush` when nothing is queued', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT);\n throttled.cancel();\n throttled.flush();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n });\n});\n\ndescribe('not tested by Lodash', () => {\n it('should do nothing when `leading` and `trailing` are both `disabled`', async () => {\n const mockFn = vi.fn<() => void>();\n const throttled = throttle(mockFn, UT, { leading: false, trailing: false });\n throttled();\n throttled();\n throttled();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(2 * UT);\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n });\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict"; function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }var _chunkAQRYBCA3cjs = require('./chunk-AQRYBCA3.cjs');var _chunkHC3HZK4Qcjs = require('./chunk-HC3HZK4Q.cjs');var _chunkP7RCAO7Pcjs = require('./chunk-P7RCAO7P.cjs');var _chunkRMOD5JNBcjs = require('./chunk-RMOD5JNB.cjs');var _chunkWLNQOMKLcjs = require('./chunk-WLNQOMKL.cjs');require('./chunk-MBGSSEZN.cjs');function l(e,{timing:n,waitMs:d,maxWaitMs:s}){if(s!==void 0&&d!==void 0&&s<d)throw new Error(`debounce: maxWaitMs (${s.toString()}) cannot be less than waitMs (${d.toString()})`);let r,m=_chunkRMOD5JNBcjs.a.call(void 0, w=>{r=e(...w)},{reducer:(w,...b)=>b,minQuietPeriodMs:_nullishCoalesce(_nullishCoalesce(d, () => (s)), () => (0)),...s!==void 0&&{maxBurstDurationMs:s},...n==="leading"?{triggerAt:"start"}:n==="both"?{triggerAt:"both"}:{triggerAt:"end"}});return{call:(...w)=>(m.call(...w),r),flush:()=>(m.flush(),r),cancel:()=>{m.cancel()},get isPending(){return!m.isIdle},get cachedValue(){return r}}}_chunkP7RCAO7Pcjs.a.call(void 0, "main functionality",()=>{_chunkP7RCAO7Pcjs.b.call(void 0, "should debounce a function",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(_chunkAQRYBCA3cjs.a.call(void 0, )),n=l(e,{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, [n.call("a"),n.call("b"),n.call("c")]).toStrictEqual([void 0,void 0,void 0]),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 128),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1),_chunkP7RCAO7Pcjs.c.call(void 0, [n.call("d"),n.call("e"),n.call("f")]).toStrictEqual(["c","c","c"]),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1),await _chunkHC3HZK4Qcjs.a.call(void 0, 256),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(2)}),_chunkP7RCAO7Pcjs.b.call(void 0, "subsequent debounced calls return the last `func` result",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});e.call("a"),await _chunkHC3HZK4Qcjs.a.call(void 0, 64),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("b")).toBe("a"),await _chunkHC3HZK4Qcjs.a.call(void 0, 128),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("c")).toBe("b")}),_chunkP7RCAO7Pcjs.b.call(void 0, "should not immediately call `func` when `wait` is `0`",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=l(e,{});n.call(),n.call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 5),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1)}),_chunkP7RCAO7Pcjs.b.call(void 0, "should apply default options",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn();l(e,{waitMs:32}).call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 64),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1)}),_chunkP7RCAO7Pcjs.b.call(void 0, "should support a `leading` option",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=_chunkP7RCAO7Pcjs.d.fn(),d=l(e,{waitMs:32,timing:"leading"});d.call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1);let s=l(n,{waitMs:32,timing:"both"});s.call(),s.call(),_chunkP7RCAO7Pcjs.c.call(void 0, n).toHaveBeenCalledTimes(1),await _chunkHC3HZK4Qcjs.a.call(void 0, 64),_chunkP7RCAO7Pcjs.c.call(void 0, n).toHaveBeenCalledTimes(2),d.call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(2)}),_chunkP7RCAO7Pcjs.b.call(void 0, "subsequent leading debounced calls return the last `func` result",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32,timing:"leading"});_chunkP7RCAO7Pcjs.c.call(void 0, [e.call("a"),e.call("b")]).toStrictEqual(["a","a"]),await _chunkHC3HZK4Qcjs.a.call(void 0, 64),_chunkP7RCAO7Pcjs.c.call(void 0, [e.call("c"),e.call("d")]).toStrictEqual(["c","c"])}),_chunkP7RCAO7Pcjs.b.call(void 0, "should support a `trailing` option",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn();l(e,{waitMs:32,timing:"trailing"}).call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 64),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1)})});_chunkP7RCAO7Pcjs.a.call(void 0, "optional param maxWaitMs",()=>{_chunkP7RCAO7Pcjs.b.call(void 0, "should support a `maxWait` option",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=l(e,{waitMs:32,maxWaitMs:64});n.call("a"),n.call("b"),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 128),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1),n.call("c"),n.call("d"),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1),await _chunkHC3HZK4Qcjs.a.call(void 0, 256),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(2)}),_chunkP7RCAO7Pcjs.b.call(void 0, "should support `maxWait` in a tight loop",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=_chunkP7RCAO7Pcjs.d.fn(),d=l(e,{waitMs:32,maxWaitMs:128}),s=l(n,{waitMs:96}),r=Date.now();for(;Date.now()-r<320;)d.call(),s.call();await _chunkHC3HZK4Qcjs.a.call(void 0, 1),_chunkP7RCAO7Pcjs.c.call(void 0, n).toHaveBeenCalledTimes(0),_chunkP7RCAO7Pcjs.c.call(void 0, e).not.toHaveBeenCalledTimes(0)}),_chunkP7RCAO7Pcjs.b.call(void 0, "should queue a trailing call for subsequent debounced calls after `maxWait`",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=l(e,{waitMs:200,maxWaitMs:200});n.call(),setTimeout(()=>{n.call()},190),setTimeout(()=>{n.call()},200),setTimeout(()=>{n.call()},210),await _chunkHC3HZK4Qcjs.a.call(void 0, 500),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(2)}),_chunkP7RCAO7Pcjs.b.call(void 0, "should cancel `maxDelayed` when `delayed` is invoked",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=l(e,{waitMs:32,maxWaitMs:64});n.call(),await _chunkHC3HZK4Qcjs.a.call(void 0, 128),n.call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1),await _chunkHC3HZK4Qcjs.a.call(void 0, 192),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(2)}),_chunkP7RCAO7Pcjs.b.call(void 0, "works like a leaky bucket when only maxWaitMs is set",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(),n=l(e,{maxWaitMs:32});n.call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 16),n.call(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 17),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1)})});_chunkP7RCAO7Pcjs.a.call(void 0, "additional functionality",()=>{_chunkP7RCAO7Pcjs.b.call(void 0, "can cancel before the timer starts",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, ()=>{e.cancel()}).not.toThrow(),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("world")).toBe("hello")}),_chunkP7RCAO7Pcjs.b.call(void 0, "can cancel the timer",async()=>{let e=_chunkP7RCAO7Pcjs.d.fn(_chunkWLNQOMKLcjs.a.call(void 0, "Hello, World!")),n=l(e,{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, n.call()).toBeUndefined(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 1),_chunkP7RCAO7Pcjs.c.call(void 0, n.call()).toBeUndefined(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),n.cancel(),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, n.call()).toBeUndefined(),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(0),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, n.call()).toBe("Hello, World!"),_chunkP7RCAO7Pcjs.c.call(void 0, e).toHaveBeenCalledTimes(1)}),_chunkP7RCAO7Pcjs.b.call(void 0, "can cancel after the timer ends",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("world")).toBe("hello"),_chunkP7RCAO7Pcjs.c.call(void 0, ()=>{e.cancel()}).not.toThrow()}),_chunkP7RCAO7Pcjs.b.call(void 0, "can cancel maxWait timer",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:16,maxWaitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 1),e.cancel(),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("world")).toBeUndefined()}),_chunkP7RCAO7Pcjs.b.call(void 0, "can return a cached value",()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{timing:"leading",waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.cachedValue).toBeUndefined(),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBe("hello"),_chunkP7RCAO7Pcjs.c.call(void 0, e.cachedValue).toBe("hello")}),_chunkP7RCAO7Pcjs.b.call(void 0, "can check for inflight timers (trailing)",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!1),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!0),await _chunkHC3HZK4Qcjs.a.call(void 0, 1),_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!0),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!1)}),_chunkP7RCAO7Pcjs.b.call(void 0, "can check for inflight timers (leading)",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{timing:"leading",waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!1),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBe("hello"),_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!0),await _chunkHC3HZK4Qcjs.a.call(void 0, 1),_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!0),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.isPending).toBe(!1)}),_chunkP7RCAO7Pcjs.b.call(void 0, "can flush before a cool-down",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.flush()).toBeUndefined(),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("world")).toBe("hello")}),_chunkP7RCAO7Pcjs.b.call(void 0, "can flush during a cool-down",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 1),_chunkP7RCAO7Pcjs.c.call(void 0, e.call("world")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 1),_chunkP7RCAO7Pcjs.c.call(void 0, e.flush()).toBe("world")}),_chunkP7RCAO7Pcjs.b.call(void 0, "can flush after a cool-down",async()=>{let e=l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32});_chunkP7RCAO7Pcjs.c.call(void 0, e.call("hello")).toBeUndefined(),await _chunkHC3HZK4Qcjs.a.call(void 0, 32),_chunkP7RCAO7Pcjs.c.call(void 0, e.flush()).toBe("hello")})});_chunkP7RCAO7Pcjs.a.call(void 0, "errors",()=>{_chunkP7RCAO7Pcjs.b.call(void 0, "prevents maxWaitMs to be less then waitMs",()=>{_chunkP7RCAO7Pcjs.c.call(void 0, ()=>l(_chunkAQRYBCA3cjs.a.call(void 0, ),{waitMs:32,maxWaitMs:16})).toThrow("debounce: maxWaitMs (16) cannot be less than waitMs (32)")})});
|
|
1
|
+
const e=require(`./dist-gvJoKj_M.cjs`),t=require(`./constant-BuIJ9GIn.cjs`),n=require(`./funnel-CL-QFpGk.cjs`),r=require(`./identity-BAryUWbs.cjs`),i=require(`./sleep-1rGV3wAg.cjs`);function a(e,{timing:t,waitMs:r,maxWaitMs:i}){if(i!==void 0&&r!==void 0&&i<r)throw Error(`debounce: maxWaitMs (${i.toString()}) cannot be less than waitMs (${r.toString()})`);let a,o=n.funnel(t=>{a=e(...t)},{reducer:(e,...t)=>t,minQuietPeriodMs:r??i??0,...i!==void 0&&{maxBurstDurationMs:i},...t===`leading`?{triggerAt:`start`}:t===`both`?{triggerAt:`both`}:{triggerAt:`end`}});return{call:(...e)=>(o.call(...e),a),flush:()=>(o.flush(),a),cancel:()=>{o.cancel()},get isPending(){return!o.isIdle},get cachedValue(){return a}}}e.describe(`main functionality`,()=>{e.it(`should debounce a function`,async()=>{let t=e.vi.fn(r.identity()),n=a(t,{waitMs:32});e.globalExpect([n.call(`a`),n.call(`b`),n.call(`c`)]).toStrictEqual([void 0,void 0,void 0]),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(128),e.globalExpect(t).toHaveBeenCalledTimes(1),e.globalExpect([n.call(`d`),n.call(`e`),n.call(`f`)]).toStrictEqual([`c`,`c`,`c`]),e.globalExpect(t).toHaveBeenCalledTimes(1),await i.sleep(256),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it("subsequent debounced calls return the last `func` result",async()=>{let t=a(r.identity(),{waitMs:32});t.call(`a`),await i.sleep(64),e.globalExpect(t.call(`b`)).toBe(`a`),await i.sleep(128),e.globalExpect(t.call(`c`)).toBe(`b`)}),e.it("should not immediately call `func` when `wait` is `0`",async()=>{let t=e.vi.fn(),n=a(t,{});n.call(),n.call(),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(5),e.globalExpect(t).toHaveBeenCalledTimes(1)}),e.it(`should apply default options`,async()=>{let t=e.vi.fn();a(t,{waitMs:32}).call(),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(64),e.globalExpect(t).toHaveBeenCalledTimes(1)}),e.it("should support a `leading` option",async()=>{let t=e.vi.fn(),n=e.vi.fn(),r=a(t,{waitMs:32,timing:`leading`});r.call(),e.globalExpect(t).toHaveBeenCalledTimes(1);let o=a(n,{waitMs:32,timing:`both`});o.call(),o.call(),e.globalExpect(n).toHaveBeenCalledTimes(1),await i.sleep(64),e.globalExpect(n).toHaveBeenCalledTimes(2),r.call(),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it("subsequent leading debounced calls return the last `func` result",async()=>{let t=a(r.identity(),{waitMs:32,timing:`leading`});e.globalExpect([t.call(`a`),t.call(`b`)]).toStrictEqual([`a`,`a`]),await i.sleep(64),e.globalExpect([t.call(`c`),t.call(`d`)]).toStrictEqual([`c`,`c`])}),e.it("should support a `trailing` option",async()=>{let t=e.vi.fn();a(t,{waitMs:32,timing:`trailing`}).call(),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(64),e.globalExpect(t).toHaveBeenCalledTimes(1)})}),e.describe(`optional param maxWaitMs`,()=>{e.it("should support a `maxWait` option",async()=>{let t=e.vi.fn(),n=a(t,{waitMs:32,maxWaitMs:64});n.call(`a`),n.call(`b`),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(128),e.globalExpect(t).toHaveBeenCalledTimes(1),n.call(`c`),n.call(`d`),e.globalExpect(t).toHaveBeenCalledTimes(1),await i.sleep(256),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it("should support `maxWait` in a tight loop",async()=>{let t=e.vi.fn(),n=e.vi.fn(),r=a(t,{waitMs:32,maxWaitMs:128}),o=a(n,{waitMs:96}),s=Date.now();for(;Date.now()-s<320;)r.call(),o.call();await i.sleep(1),e.globalExpect(n).toHaveBeenCalledTimes(0),e.globalExpect(t).not.toHaveBeenCalledTimes(0)}),e.it("should queue a trailing call for subsequent debounced calls after `maxWait`",async()=>{let t=e.vi.fn(),n=a(t,{waitMs:200,maxWaitMs:200});n.call(),setTimeout(()=>{n.call()},190),setTimeout(()=>{n.call()},200),setTimeout(()=>{n.call()},210),await i.sleep(500),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it("should cancel `maxDelayed` when `delayed` is invoked",async()=>{let t=e.vi.fn(),n=a(t,{waitMs:32,maxWaitMs:64});n.call(),await i.sleep(128),n.call(),e.globalExpect(t).toHaveBeenCalledTimes(1),await i.sleep(192),e.globalExpect(t).toHaveBeenCalledTimes(2)}),e.it(`works like a leaky bucket when only maxWaitMs is set`,async()=>{let t=e.vi.fn(),n=a(t,{maxWaitMs:32});n.call(),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(16),n.call(),e.globalExpect(t).toHaveBeenCalledTimes(0),await i.sleep(17),e.globalExpect(t).toHaveBeenCalledTimes(1)})}),e.describe(`additional functionality`,()=>{e.it(`can cancel before the timer starts`,async()=>{let t=a(r.identity(),{waitMs:32});e.globalExpect(()=>{t.cancel()}).not.toThrow(),e.globalExpect(t.call(`hello`)).toBeUndefined(),await i.sleep(32),e.globalExpect(t.call(`world`)).toBe(`hello`)}),e.it(`can cancel the timer`,async()=>{let n=e.vi.fn(t.constant(`Hello, World!`)),r=a(n,{waitMs:32});e.globalExpect(r.call()).toBeUndefined(),e.globalExpect(n).toHaveBeenCalledTimes(0),await i.sleep(1),e.globalExpect(r.call()).toBeUndefined(),e.globalExpect(n).toHaveBeenCalledTimes(0),r.cancel(),await i.sleep(32),e.globalExpect(r.call()).toBeUndefined(),e.globalExpect(n).toHaveBeenCalledTimes(0),await i.sleep(32),e.globalExpect(r.call()).toBe(`Hello, World!`),e.globalExpect(n).toHaveBeenCalledTimes(1)}),e.it(`can cancel after the timer ends`,async()=>{let t=a(r.identity(),{waitMs:32});e.globalExpect(t.call(`hello`)).toBeUndefined(),await i.sleep(32),e.globalExpect(t.call(`world`)).toBe(`hello`),e.globalExpect(()=>{t.cancel()}).not.toThrow()}),e.it(`can cancel maxWait timer`,async()=>{let t=a(r.identity(),{waitMs:16,maxWaitMs:32});e.globalExpect(t.call(`hello`)).toBeUndefined(),await i.sleep(1),t.cancel(),await i.sleep(32),e.globalExpect(t.call(`world`)).toBeUndefined()}),e.it(`can return a cached value`,()=>{let t=a(r.identity(),{timing:`leading`,waitMs:32});e.globalExpect(t.cachedValue).toBeUndefined(),e.globalExpect(t.call(`hello`)).toBe(`hello`),e.globalExpect(t.cachedValue).toBe(`hello`)}),e.it(`can check for inflight timers (trailing)`,async()=>{let t=a(r.identity(),{waitMs:32});e.globalExpect(t.isPending).toBe(!1),e.globalExpect(t.call(`hello`)).toBeUndefined(),e.globalExpect(t.isPending).toBe(!0),await i.sleep(1),e.globalExpect(t.isPending).toBe(!0),await i.sleep(32),e.globalExpect(t.isPending).toBe(!1)}),e.it(`can check for inflight timers (leading)`,async()=>{let t=a(r.identity(),{timing:`leading`,waitMs:32});e.globalExpect(t.isPending).toBe(!1),e.globalExpect(t.call(`hello`)).toBe(`hello`),e.globalExpect(t.isPending).toBe(!0),await i.sleep(1),e.globalExpect(t.isPending).toBe(!0),await i.sleep(32),e.globalExpect(t.isPending).toBe(!1)}),e.it(`can flush before a cool-down`,async()=>{let t=a(r.identity(),{waitMs:32});e.globalExpect(t.flush()).toBeUndefined(),e.globalExpect(t.call(`hello`)).toBeUndefined(),await i.sleep(32),e.globalExpect(t.call(`world`)).toBe(`hello`)}),e.it(`can flush during a cool-down`,async()=>{let t=a(r.identity(),{waitMs:32});e.globalExpect(t.call(`hello`)).toBeUndefined(),await i.sleep(1),e.globalExpect(t.call(`world`)).toBeUndefined(),await i.sleep(1),e.globalExpect(t.flush()).toBe(`world`)}),e.it(`can flush after a cool-down`,async()=>{let t=a(r.identity(),{waitMs:32});e.globalExpect(t.call(`hello`)).toBeUndefined(),await i.sleep(32),e.globalExpect(t.flush()).toBe(`hello`)})}),e.describe(`errors`,()=>{e.it(`prevents maxWaitMs to be less then waitMs`,()=>{e.globalExpect(()=>a(r.identity(),{waitMs:32,maxWaitMs:16})).toThrow(`debounce: maxWaitMs (16) cannot be less than waitMs (32)`)})});
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{describe as e,globalExpect as t,it as n,vi as r}from"./dist-BQGZfjDS.js";import{constant as i}from"./constant-DrpDXHc7.js";import{funnel as a}from"./funnel-CEbURcmp.js";import{identity as o}from"./identity-D7NWGnLw.js";import{sleep as s}from"./sleep-DvzRMgY-.js";function c(e,{timing:t,waitMs:n,maxWaitMs:r}){if(r!==void 0&&n!==void 0&&r<n)throw Error(`debounce: maxWaitMs (${r.toString()}) cannot be less than waitMs (${n.toString()})`);let i,o=a(t=>{i=e(...t)},{reducer:(e,...t)=>t,minQuietPeriodMs:n??r??0,...r!==void 0&&{maxBurstDurationMs:r},...t===`leading`?{triggerAt:`start`}:t===`both`?{triggerAt:`both`}:{triggerAt:`end`}});return{call:(...e)=>(o.call(...e),i),flush:()=>(o.flush(),i),cancel:()=>{o.cancel()},get isPending(){return!o.isIdle},get cachedValue(){return i}}}e(`main functionality`,()=>{n(`should debounce a function`,async()=>{let e=r.fn(o()),n=c(e,{waitMs:32});t([n.call(`a`),n.call(`b`),n.call(`c`)]).toStrictEqual([void 0,void 0,void 0]),t(e).toHaveBeenCalledTimes(0),await s(128),t(e).toHaveBeenCalledTimes(1),t([n.call(`d`),n.call(`e`),n.call(`f`)]).toStrictEqual([`c`,`c`,`c`]),t(e).toHaveBeenCalledTimes(1),await s(256),t(e).toHaveBeenCalledTimes(2)}),n("subsequent debounced calls return the last `func` result",async()=>{let e=c(o(),{waitMs:32});e.call(`a`),await s(64),t(e.call(`b`)).toBe(`a`),await s(128),t(e.call(`c`)).toBe(`b`)}),n("should not immediately call `func` when `wait` is `0`",async()=>{let e=r.fn(),n=c(e,{});n.call(),n.call(),t(e).toHaveBeenCalledTimes(0),await s(5),t(e).toHaveBeenCalledTimes(1)}),n(`should apply default options`,async()=>{let e=r.fn();c(e,{waitMs:32}).call(),t(e).toHaveBeenCalledTimes(0),await s(64),t(e).toHaveBeenCalledTimes(1)}),n("should support a `leading` option",async()=>{let e=r.fn(),n=r.fn(),i=c(e,{waitMs:32,timing:`leading`});i.call(),t(e).toHaveBeenCalledTimes(1);let a=c(n,{waitMs:32,timing:`both`});a.call(),a.call(),t(n).toHaveBeenCalledTimes(1),await s(64),t(n).toHaveBeenCalledTimes(2),i.call(),t(e).toHaveBeenCalledTimes(2)}),n("subsequent leading debounced calls return the last `func` result",async()=>{let e=c(o(),{waitMs:32,timing:`leading`});t([e.call(`a`),e.call(`b`)]).toStrictEqual([`a`,`a`]),await s(64),t([e.call(`c`),e.call(`d`)]).toStrictEqual([`c`,`c`])}),n("should support a `trailing` option",async()=>{let e=r.fn();c(e,{waitMs:32,timing:`trailing`}).call(),t(e).toHaveBeenCalledTimes(0),await s(64),t(e).toHaveBeenCalledTimes(1)})}),e(`optional param maxWaitMs`,()=>{n("should support a `maxWait` option",async()=>{let e=r.fn(),n=c(e,{waitMs:32,maxWaitMs:64});n.call(`a`),n.call(`b`),t(e).toHaveBeenCalledTimes(0),await s(128),t(e).toHaveBeenCalledTimes(1),n.call(`c`),n.call(`d`),t(e).toHaveBeenCalledTimes(1),await s(256),t(e).toHaveBeenCalledTimes(2)}),n("should support `maxWait` in a tight loop",async()=>{let e=r.fn(),n=r.fn(),i=c(e,{waitMs:32,maxWaitMs:128}),a=c(n,{waitMs:96}),o=Date.now();for(;Date.now()-o<320;)i.call(),a.call();await s(1),t(n).toHaveBeenCalledTimes(0),t(e).not.toHaveBeenCalledTimes(0)}),n("should queue a trailing call for subsequent debounced calls after `maxWait`",async()=>{let e=r.fn(),n=c(e,{waitMs:200,maxWaitMs:200});n.call(),setTimeout(()=>{n.call()},190),setTimeout(()=>{n.call()},200),setTimeout(()=>{n.call()},210),await s(500),t(e).toHaveBeenCalledTimes(2)}),n("should cancel `maxDelayed` when `delayed` is invoked",async()=>{let e=r.fn(),n=c(e,{waitMs:32,maxWaitMs:64});n.call(),await s(128),n.call(),t(e).toHaveBeenCalledTimes(1),await s(192),t(e).toHaveBeenCalledTimes(2)}),n(`works like a leaky bucket when only maxWaitMs is set`,async()=>{let e=r.fn(),n=c(e,{maxWaitMs:32});n.call(),t(e).toHaveBeenCalledTimes(0),await s(16),n.call(),t(e).toHaveBeenCalledTimes(0),await s(17),t(e).toHaveBeenCalledTimes(1)})}),e(`additional functionality`,()=>{n(`can cancel before the timer starts`,async()=>{let e=c(o(),{waitMs:32});t(()=>{e.cancel()}).not.toThrow(),t(e.call(`hello`)).toBeUndefined(),await s(32),t(e.call(`world`)).toBe(`hello`)}),n(`can cancel the timer`,async()=>{let e=r.fn(i(`Hello, World!`)),n=c(e,{waitMs:32});t(n.call()).toBeUndefined(),t(e).toHaveBeenCalledTimes(0),await s(1),t(n.call()).toBeUndefined(),t(e).toHaveBeenCalledTimes(0),n.cancel(),await s(32),t(n.call()).toBeUndefined(),t(e).toHaveBeenCalledTimes(0),await s(32),t(n.call()).toBe(`Hello, World!`),t(e).toHaveBeenCalledTimes(1)}),n(`can cancel after the timer ends`,async()=>{let e=c(o(),{waitMs:32});t(e.call(`hello`)).toBeUndefined(),await s(32),t(e.call(`world`)).toBe(`hello`),t(()=>{e.cancel()}).not.toThrow()}),n(`can cancel maxWait timer`,async()=>{let e=c(o(),{waitMs:16,maxWaitMs:32});t(e.call(`hello`)).toBeUndefined(),await s(1),e.cancel(),await s(32),t(e.call(`world`)).toBeUndefined()}),n(`can return a cached value`,()=>{let e=c(o(),{timing:`leading`,waitMs:32});t(e.cachedValue).toBeUndefined(),t(e.call(`hello`)).toBe(`hello`),t(e.cachedValue).toBe(`hello`)}),n(`can check for inflight timers (trailing)`,async()=>{let e=c(o(),{waitMs:32});t(e.isPending).toBe(!1),t(e.call(`hello`)).toBeUndefined(),t(e.isPending).toBe(!0),await s(1),t(e.isPending).toBe(!0),await s(32),t(e.isPending).toBe(!1)}),n(`can check for inflight timers (leading)`,async()=>{let e=c(o(),{timing:`leading`,waitMs:32});t(e.isPending).toBe(!1),t(e.call(`hello`)).toBe(`hello`),t(e.isPending).toBe(!0),await s(1),t(e.isPending).toBe(!0),await s(32),t(e.isPending).toBe(!1)}),n(`can flush before a cool-down`,async()=>{let e=c(o(),{waitMs:32});t(e.flush()).toBeUndefined(),t(e.call(`hello`)).toBeUndefined(),await s(32),t(e.call(`world`)).toBe(`hello`)}),n(`can flush during a cool-down`,async()=>{let e=c(o(),{waitMs:32});t(e.call(`hello`)).toBeUndefined(),await s(1),t(e.call(`world`)).toBeUndefined(),await s(1),t(e.flush()).toBe(`world`)}),n(`can flush after a cool-down`,async()=>{let e=c(o(),{waitMs:32});t(e.call(`hello`)).toBeUndefined(),await s(32),t(e.flush()).toBe(`hello`)})}),e(`errors`,()=>{n(`prevents maxWaitMs to be less then waitMs`,()=>{t(()=>c(o(),{waitMs:32,maxWaitMs:16})).toThrow(`debounce: maxWaitMs (16) cannot be less than waitMs (32)`)})});
|
|
2
|
+
//# sourceMappingURL=funnel.perkakas-debounce.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funnel.perkakas-debounce.test.js","names":["cachedValue: ReturnType<F> | undefined"],"sources":["../src/funnel.perkakas-debounce.test.ts"],"sourcesContent":["/* eslint-disable function-paren-newline, no-nested-ternary, ts/explicit-function-return-type, ts/no-explicit-any --\n * These aren't useful for a reference implementation!\n */\n\nimport { describe, expect, it, vi } from 'vitest';\nimport { constant } from './constant';\nimport { funnel } from './funnel';\nimport { identity } from './identity';\nimport { sleep } from './sleep';\n\ninterface Debouncer<\n F extends (...args: any) => unknown,\n IsNullable extends boolean = true,\n> {\n readonly call: (\n ...args: Parameters<F>\n ) => ReturnType<F> | (true extends IsNullable ? undefined : never);\n readonly cancel: () => void;\n readonly flush: () => ReturnType<F> | undefined;\n readonly isPending: boolean;\n readonly cachedValue: ReturnType<F> | undefined;\n}\n\ninterface DebounceOptions {\n readonly waitMs?: number;\n readonly maxWaitMs?: number;\n}\n\n/**\n * A reference implementation of the now deprecated `debounce` function using\n * the `funnel` function instead. While you update your codebase you can copy\n * this function as-is and use it as a drop-in replacement; but we recommend\n * eventually inlining the call to `funnel` so you can adjust the function to\n * your specific needs.\n *\n * The following tests in this file are the original tests for debounce.\n *\n * @see debounce\n */\nfunction debounce<F extends (...args: any) => any>(\n func: F,\n options: DebounceOptions & { readonly timing?: 'trailing' },\n): Debouncer<F>;\nfunction debounce<F extends (...args: any) => any>(\n func: F,\n options:\n | (DebounceOptions & { readonly timing: 'both' })\n | (Omit<DebounceOptions, 'maxWaitMs'> & { readonly timing: 'leading' }),\n): Debouncer<F, false>;\nfunction debounce<F extends (...args: any) => any>(\n func: F,\n {\n timing,\n waitMs,\n maxWaitMs,\n }: DebounceOptions & {\n readonly timing?: 'both' | 'leading' | 'trailing';\n },\n) {\n if (maxWaitMs !== undefined && waitMs !== undefined && maxWaitMs < waitMs) {\n throw new Error(\n `debounce: maxWaitMs (${maxWaitMs.toString()}) cannot be less than waitMs (${waitMs.toString()})`,\n );\n }\n\n let cachedValue: ReturnType<F> | undefined;\n\n const debouncingFunnel = funnel(\n (args: Parameters<F>) => {\n // Every time the function is invoked the cached value is updated.\n cachedValue = func(...args) as ReturnType<F>;\n },\n {\n // Debounce stores the latest args it was called with for the next invocation of the callback.\n reducer: (_, ...args: Parameters<F>) => args,\n minQuietPeriodMs: waitMs ?? maxWaitMs ?? 0,\n ...(maxWaitMs !== undefined && { maxBurstDurationMs: maxWaitMs }),\n ...(timing === 'leading'\n ? { triggerAt: 'start' }\n : timing === 'both'\n ? { triggerAt: 'both' }\n : { triggerAt: 'end' }),\n },\n );\n\n return {\n call: (...args: Parameters<F>) => {\n debouncingFunnel.call(...args);\n return cachedValue;\n },\n\n flush: () => {\n debouncingFunnel.flush();\n return cachedValue;\n },\n\n cancel: () => {\n debouncingFunnel.cancel();\n },\n\n get isPending() {\n return !debouncingFunnel.isIdle;\n },\n\n get cachedValue() {\n return cachedValue;\n },\n };\n}\n\ndescribe('main functionality', () => {\n it('should debounce a function', async () => {\n const mockFn = vi.fn<(x: string) => string>(identity());\n const debouncer = debounce(mockFn, { waitMs: 32 });\n\n expect([\n debouncer.call('a'),\n debouncer.call('b'),\n debouncer.call('c'),\n ]).toStrictEqual([undefined, undefined, undefined]);\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(128);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n expect([\n debouncer.call('d'),\n debouncer.call('e'),\n debouncer.call('f'),\n ]).toStrictEqual(['c', 'c', 'c']);\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(256);\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('subsequent debounced calls return the last `func` result', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n debouncer.call('a');\n await sleep(64);\n\n expect(debouncer.call('b')).toBe('a');\n\n await sleep(128);\n\n expect(debouncer.call('c')).toBe('b');\n });\n\n it('should not immediately call `func` when `wait` is `0`', async () => {\n const mockFn = vi.fn<() => void>();\n const debouncer = debounce(mockFn, {});\n debouncer.call();\n debouncer.call();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(5);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n\n it('should apply default options', async () => {\n const mockFn = vi.fn<() => void>();\n const debouncer = debounce(mockFn, { waitMs: 32 });\n debouncer.call();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(64);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n\n it('should support a `leading` option', async () => {\n const leadingMockFn = vi.fn<() => void>();\n const bothMockFn = vi.fn<() => void>();\n const withLeading = debounce(leadingMockFn, {\n waitMs: 32,\n timing: 'leading',\n });\n withLeading.call();\n\n expect(leadingMockFn).toHaveBeenCalledTimes(1);\n\n const withLeadingAndTrailing = debounce(bothMockFn, {\n waitMs: 32,\n timing: 'both',\n });\n withLeadingAndTrailing.call();\n withLeadingAndTrailing.call();\n\n expect(bothMockFn).toHaveBeenCalledTimes(1);\n\n await sleep(64);\n\n expect(bothMockFn).toHaveBeenCalledTimes(2);\n\n withLeading.call();\n\n expect(leadingMockFn).toHaveBeenCalledTimes(2);\n });\n\n it('subsequent leading debounced calls return the last `func` result', async () => {\n const debouncer = debounce(identity(), { waitMs: 32, timing: 'leading' });\n\n expect([debouncer.call('a'), debouncer.call('b')]).toStrictEqual([\n 'a',\n 'a',\n ]);\n\n await sleep(64);\n\n expect([debouncer.call('c'), debouncer.call('d')]).toStrictEqual([\n 'c',\n 'c',\n ]);\n });\n\n it('should support a `trailing` option', async () => {\n const mockFn = vi.fn<() => void>();\n const withTrailing = debounce(mockFn, { waitMs: 32, timing: 'trailing' });\n withTrailing.call();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(64);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n});\n\ndescribe('optional param maxWaitMs', () => {\n it('should support a `maxWait` option', async () => {\n const mockFn = vi.fn<(x: string) => void>();\n const debouncer = debounce(mockFn, { waitMs: 32, maxWaitMs: 64 });\n debouncer.call('a');\n debouncer.call('b');\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(128);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n debouncer.call('c');\n debouncer.call('d');\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(256);\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('should support `maxWait` in a tight loop', async () => {\n const withMockFn = vi.fn<() => void>();\n const withoutMockFn = vi.fn<() => void>();\n const withMaxWait = debounce(withMockFn, { waitMs: 32, maxWaitMs: 128 });\n const withoutMaxWait = debounce(withoutMockFn, { waitMs: 96 });\n const start = Date.now();\n while (Date.now() - start < 320) {\n withMaxWait.call();\n withoutMaxWait.call();\n }\n await sleep(1);\n\n expect(withoutMockFn).toHaveBeenCalledTimes(0);\n expect(withMockFn).not.toHaveBeenCalledTimes(0);\n });\n\n it('should queue a trailing call for subsequent debounced calls after `maxWait`', async () => {\n const mockFn = vi.fn<() => void>();\n const debouncer = debounce(mockFn, { waitMs: 200, maxWaitMs: 200 });\n debouncer.call();\n setTimeout(() => {\n debouncer.call();\n }, 190);\n setTimeout(() => {\n debouncer.call();\n }, 200);\n setTimeout(() => {\n debouncer.call();\n }, 210);\n await sleep(500);\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('should cancel `maxDelayed` when `delayed` is invoked', async () => {\n const mockFn = vi.fn<() => void>();\n const debouncer = debounce(mockFn, { waitMs: 32, maxWaitMs: 64 });\n debouncer.call();\n await sleep(128);\n debouncer.call();\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n\n await sleep(192);\n\n expect(mockFn).toHaveBeenCalledTimes(2);\n });\n\n it('works like a leaky bucket when only maxWaitMs is set', async () => {\n const mockFn = vi.fn<() => void>();\n const debouncer = debounce(mockFn, { maxWaitMs: 32 });\n debouncer.call();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(16);\n // Without maxWaitMs this call would cause the actual invocation to be\n // postponed for a full window.\n debouncer.call();\n\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(17);\n\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n});\n\ndescribe('additional functionality', () => {\n it('can cancel before the timer starts', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n\n expect(() => {\n debouncer.cancel();\n }).not.toThrow();\n expect(debouncer.call('hello')).toBeUndefined();\n\n await sleep(32);\n\n expect(debouncer.call('world')).toBe('hello');\n });\n\n it('can cancel the timer', async () => {\n const mockFn = vi.fn<() => string>(constant('Hello, World!'));\n const debouncer = debounce(mockFn, { waitMs: 32 });\n\n expect(debouncer.call()).toBeUndefined();\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(1);\n\n expect(debouncer.call()).toBeUndefined();\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n debouncer.cancel();\n await sleep(32);\n\n expect(debouncer.call()).toBeUndefined();\n expect(mockFn).toHaveBeenCalledTimes(0);\n\n await sleep(32);\n\n expect(debouncer.call()).toBe('Hello, World!');\n expect(mockFn).toHaveBeenCalledTimes(1);\n });\n\n it('can cancel after the timer ends', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n\n expect(debouncer.call('hello')).toBeUndefined();\n\n await sleep(32);\n\n expect(debouncer.call('world')).toBe('hello');\n expect(() => {\n debouncer.cancel();\n }).not.toThrow();\n });\n\n it('can cancel maxWait timer', async () => {\n const debouncer = debounce(identity(), { waitMs: 16, maxWaitMs: 32 });\n\n expect(debouncer.call('hello')).toBeUndefined();\n\n await sleep(1);\n debouncer.cancel();\n await sleep(32);\n\n expect(debouncer.call('world')).toBeUndefined();\n });\n\n it('can return a cached value', () => {\n const debouncer = debounce(identity(), { timing: 'leading', waitMs: 32 });\n\n expect(debouncer.cachedValue).toBeUndefined();\n expect(debouncer.call('hello')).toBe('hello');\n expect(debouncer.cachedValue).toBe('hello');\n });\n\n it('can check for inflight timers (trailing)', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n\n expect(debouncer.isPending).toBe(false);\n expect(debouncer.call('hello')).toBeUndefined();\n expect(debouncer.isPending).toBe(true);\n\n await sleep(1);\n\n expect(debouncer.isPending).toBe(true);\n\n await sleep(32);\n\n expect(debouncer.isPending).toBe(false);\n });\n\n it('can check for inflight timers (leading)', async () => {\n const debouncer = debounce(identity(), { timing: 'leading', waitMs: 32 });\n\n expect(debouncer.isPending).toBe(false);\n expect(debouncer.call('hello')).toBe('hello');\n expect(debouncer.isPending).toBe(true);\n\n await sleep(1);\n\n expect(debouncer.isPending).toBe(true);\n\n await sleep(32);\n\n expect(debouncer.isPending).toBe(false);\n });\n\n it('can flush before a cool-down', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n\n expect(debouncer.flush()).toBeUndefined();\n expect(debouncer.call('hello')).toBeUndefined();\n\n await sleep(32);\n\n expect(debouncer.call('world')).toBe('hello');\n });\n\n it('can flush during a cool-down', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n\n expect(debouncer.call('hello')).toBeUndefined();\n\n await sleep(1);\n\n expect(debouncer.call('world')).toBeUndefined();\n\n await sleep(1);\n\n expect(debouncer.flush()).toBe('world');\n });\n\n it('can flush after a cool-down', async () => {\n const debouncer = debounce(identity(), { waitMs: 32 });\n\n expect(debouncer.call('hello')).toBeUndefined();\n\n await sleep(32);\n\n expect(debouncer.flush()).toBe('hello');\n });\n});\n\ndescribe('errors', () => {\n it('prevents maxWaitMs to be less then waitMs', () => {\n expect(() => debounce(identity(), { waitMs: 32, maxWaitMs: 16 })).toThrow(\n 'debounce: maxWaitMs (16) cannot be less than waitMs (32)',\n );\n });\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`./dist-gvJoKj_M.cjs`);require(`./lazy-data-last-impl-3PAFkslW.cjs`),require(`./curry-BPVIsvo3.cjs`);const t=require(`./do-nothing-Cc1faYu6.cjs`),n=require(`./from-keys-CI2PJlIM.cjs`),r=require(`./funnel-CL-QFpGk.cjs`);function i(e,t,n=0){let i=r.funnel(n=>{e(n.map(({params:e})=>e)).then(e=>{for(let[r,{params:i,promiseCallbacks:[a]}]of n.entries())a(t(e,r,...i))}).catch(e=>{for(let{promiseCallbacks:[,t]}of n)t(e)})},{reducer:(e,t)=>[...e??[],t],maxBurstDurationMs:n,triggerAt:`end`});return{...i,call:async(...e)=>new Promise((...t)=>{i.call({promiseCallbacks:t,params:e})})}}e.describe(`showcase`,()=>{e.it(`results as object`,async()=>{let t=e.vi.fn(async e=>n.fromKeys(e,e=>e.length)),r=i(async e=>await t(e.flat()),(e,t,n)=>e[n]),a=[r.call(`short`),r.call(`medium`),r.call(`loooooooooooooong`)];e.globalExpect(t).toHaveBeenCalledTimes(0);let[o,s,c]=await Promise.all(a);e.globalExpect(t).toHaveBeenCalledTimes(1),e.globalExpect(t).toHaveBeenLastCalledWith([`short`,`medium`,`loooooooooooooong`]),e.globalExpect(t).toHaveLastResolvedWith({short:5,medium:6,loooooooooooooong:17}),e.globalExpect(o).toBe(5),e.globalExpect(s).toBe(6),e.globalExpect(c).toBe(17)}),e.it(`results as array`,async()=>{let t=e.vi.fn(async e=>e.map(e=>e.length)),n=i(async e=>await t(e.flat()),(e,t)=>e[t]),r=[n.call(`short`),n.call(`medium`),n.call(`loooooooooooooong`)];e.globalExpect(t).toHaveBeenCalledTimes(0);let[a,o,s]=await Promise.all(r);e.globalExpect(t).toHaveBeenCalledTimes(1),e.globalExpect(t).toHaveBeenLastCalledWith([`short`,`medium`,`loooooooooooooong`]),e.globalExpect(t).toHaveLastResolvedWith([5,6,17]),e.globalExpect(a).toBe(5),e.globalExpect(o).toBe(6),e.globalExpect(s).toBe(17)}),e.it(`error handling`,async()=>{let n=i(async e=>{if(e.length>1)throw Error(`Batch too big! ${JSON.stringify(e)}`)},t.doNothing());await e.globalExpect(n.call(`a`)).resolves.toBeUndefined(),await e.globalExpect(Promise.all([n.call(`hello`),n.call(`world`)])).rejects.toThrow(`Batch too big! [["hello"],["world"]]`)})});
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{describe as e,globalExpect as t,it as n,vi as r}from"./dist-BQGZfjDS.js";import"./lazy-data-last-impl-7QfM1xXg.js";import"./curry-CzZjDrpv.js";import{doNothing as i}from"./do-nothing-Be29JGDG.js";import{fromKeys as a}from"./from-keys-DJe8xU7b.js";import{funnel as o}from"./funnel-CEbURcmp.js";function s(e,t,n=0){let r=o(n=>{e(n.map(({params:e})=>e)).then(e=>{for(let[r,{params:i,promiseCallbacks:[a]}]of n.entries())a(t(e,r,...i))}).catch(e=>{for(let{promiseCallbacks:[,t]}of n)t(e)})},{reducer:(e,t)=>[...e??[],t],maxBurstDurationMs:n,triggerAt:`end`});return{...r,call:async(...e)=>new Promise((...t)=>{r.call({promiseCallbacks:t,params:e})})}}e(`showcase`,()=>{n(`results as object`,async()=>{let e=r.fn(async e=>a(e,e=>e.length)),n=s(async t=>await e(t.flat()),(e,t,n)=>e[n]),i=[n.call(`short`),n.call(`medium`),n.call(`loooooooooooooong`)];t(e).toHaveBeenCalledTimes(0);let[o,c,l]=await Promise.all(i);t(e).toHaveBeenCalledTimes(1),t(e).toHaveBeenLastCalledWith([`short`,`medium`,`loooooooooooooong`]),t(e).toHaveLastResolvedWith({short:5,medium:6,loooooooooooooong:17}),t(o).toBe(5),t(c).toBe(6),t(l).toBe(17)}),n(`results as array`,async()=>{let e=r.fn(async e=>e.map(e=>e.length)),n=s(async t=>await e(t.flat()),(e,t)=>e[t]),i=[n.call(`short`),n.call(`medium`),n.call(`loooooooooooooong`)];t(e).toHaveBeenCalledTimes(0);let[a,o,c]=await Promise.all(i);t(e).toHaveBeenCalledTimes(1),t(e).toHaveBeenLastCalledWith([`short`,`medium`,`loooooooooooooong`]),t(e).toHaveLastResolvedWith([5,6,17]),t(a).toBe(5),t(o).toBe(6),t(c).toBe(17)}),n(`error handling`,async()=>{let e=s(async e=>{if(e.length>1)throw Error(`Batch too big! ${JSON.stringify(e)}`)},i());await t(e.call(`a`)).resolves.toBeUndefined(),await t(Promise.all([e.call(`hello`),e.call(`world`)])).rejects.toThrow(`Batch too big! [["hello"],["world"]]`)})});
|
|
2
|
+
//# sourceMappingURL=funnel.reference-batch.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funnel.reference-batch.test.js","names":["expect"],"sources":["../src/funnel.reference-batch.test.ts"],"sourcesContent":["/* eslint-disable ts/explicit-function-return-type, ts/no-explicit-any --\n * These aren't useful for a reference implementation!\n */\n\nimport { describe, expect, it, vi } from 'vitest';\nimport { doNothing } from './do-nothing';\nimport { fromKeys } from './from-keys';\nimport { funnel } from './funnel';\n\ninterface BatchRequest<Params extends Array<any>, Result> {\n readonly params: Params;\n readonly promiseCallbacks: Readonly<\n Parameters<ConstructorParameters<typeof Promise<Result>>[0]>\n >;\n}\n\n/**\n * A reference implementation for an async batching utility function built on\n * top of the `funnel` general purpose execution utility function. It will\n * accumulate all params passed to an async `call` method within the defined\n * burst duration and then use an async executor to process them in one\n * invocation. It then extracts an individual result for each call which is\n * used to resolve the original call.\n *\n * This allows synchronizing multiple async calls while keeping each call site\n * isolated from the rest (for example, as react components).\n *\n * This reference implementation can be copied into your project as-is, or you\n * can use it as the basis for a more complex implementation with additional\n * features.\n *\n * @param callback - The main function that takes a batch and returns an\n * aggregated response. The typing for the it's parameters will derive the\n * typing for the extractor and the `call` method.\n * @param extractor - A function that takes the aggregated response and extracts\n * from it the result for each individual call. The function is called with both\n * the index in the batch, and the params passed to the `call` method. This\n * allows handling APIs that return batch results as both objects and arrays.\n * @param maxBurstDurationMs - The period of time where the batcher would\n * collect params before triggering the executor. When set to 0 the batcher\n * does not incur any additional delays to the execution and would trigger at\n * the next tick, just like a regular async function would. This is also the\n * default value.\n * @returns A Funnel object with the `call` method augmented to support async\n * response.\n */\nfunction batch<Params extends Array<any>, BatchResponse, Result>(\n callback: (requests: ReadonlyArray<Params>) => Promise<BatchResponse>,\n extractor: (\n response: BatchResponse,\n index: number,\n ...params: Params\n ) => Result,\n maxBurstDurationMs = 0,\n) {\n const batchFunnel = funnel(\n // Passes all accumulated parameters to the callback and then extracts the response for each individual call via the extractor.\n (requests: ReadonlyArray<BatchRequest<Params, Result>>) => {\n callback(requests.map(({ params }) => params))\n // On success we iterate again over all calls and allow the extractor to pull a value out of the aggregated response for each one.\n .then((response) => {\n for (const [\n index,\n {\n params,\n promiseCallbacks: [resolve],\n },\n ] of requests.entries()) {\n const result = extractor(response, index, ...params);\n resolve(result);\n }\n })\n\n // On error we simply pass the error along to all reject callbacks.\n .catch((error) => {\n for (const {\n promiseCallbacks: [, reject],\n } of requests) {\n reject(error);\n }\n });\n },\n {\n // Reducer: Accumulates the parameters for each call, together with the promise executor callbacks needed to resolve or reject the call.\n reducer: (requests, request: BatchRequest<Params, Result>) => [\n ...(requests ?? []),\n request,\n ],\n maxBurstDurationMs,\n triggerAt: 'end',\n },\n );\n\n return {\n ...batchFunnel,\n\n call: async (...params: Params) =>\n new Promise<Result>((...promiseCallbacks) => {\n batchFunnel.call({ promiseCallbacks, params });\n }),\n };\n}\n\ndescribe('showcase', () => {\n it('results as object', async () => {\n const mockApi = vi.fn<\n (words: ReadonlyArray<string>) => Promise<Record<string, number>>\n >(async (words) => fromKeys(words, (word) => word.length));\n\n const countLettersApi = batch(\n // We only need to type the `requests` param of the `executor` callback.\n // All other types are derived from it.\n async (requests: ReadonlyArray<[word: string]>) =>\n await mockApi(requests.flat()),\n (response, _, word) => response[word],\n );\n\n const prepared = [\n countLettersApi.call('short'),\n countLettersApi.call('medium'),\n countLettersApi.call('loooooooooooooong'),\n ];\n\n expect(mockApi).toHaveBeenCalledTimes(0);\n\n const [shortResult, mediumResult, longResult] = await Promise.all(prepared);\n\n expect(mockApi).toHaveBeenCalledTimes(1);\n expect(mockApi).toHaveBeenLastCalledWith([\n 'short',\n 'medium',\n 'loooooooooooooong',\n ]);\n expect(mockApi).toHaveLastResolvedWith({\n short: 5,\n medium: 6,\n loooooooooooooong: 17,\n });\n expect(shortResult).toBe(5);\n expect(mediumResult).toBe(6);\n expect(longResult).toBe(17);\n });\n\n it('results as array', async () => {\n const mockApi = vi.fn<\n (words: ReadonlyArray<string>) => Promise<ReadonlyArray<number>>\n >(async (words) => words.map((word) => word.length));\n\n const countLettersApi = batch(\n // We only need to type the `requests` param of the `executor` callback.\n // All other types are derived from it.\n async (requests: ReadonlyArray<[word: string]>) =>\n await mockApi(requests.flat()),\n (response, index) => response[index],\n );\n\n const prepared = [\n countLettersApi.call('short'),\n countLettersApi.call('medium'),\n countLettersApi.call('loooooooooooooong'),\n ];\n\n expect(mockApi).toHaveBeenCalledTimes(0);\n\n const [shortResult, mediumResult, longResult] = await Promise.all(prepared);\n\n expect(mockApi).toHaveBeenCalledTimes(1);\n expect(mockApi).toHaveBeenLastCalledWith([\n 'short',\n 'medium',\n 'loooooooooooooong',\n ]);\n expect(mockApi).toHaveLastResolvedWith([5, 6, 17]);\n expect(shortResult).toBe(5);\n expect(mediumResult).toBe(6);\n expect(longResult).toBe(17);\n });\n\n it('error handling', async () => {\n const failingApi = batch(\n // We only need to type the `requests` param of the `executor` callback.\n // All other types are derived from it.\n async (requests: ReadonlyArray<[id: string]>) => {\n if (requests.length > 1) {\n throw new Error(`Batch too big! ${JSON.stringify(requests)}`);\n }\n },\n doNothing(),\n );\n\n await expect(failingApi.call('a')).resolves.toBeUndefined();\n\n await expect(\n Promise.all([failingApi.call('hello'), failingApi.call('world')]),\n ).rejects.toThrow('Batch too big! [[\"hello\"],[\"world\"]]');\n });\n});\n"],"mappings":"4SA8CA,SAAS,EACP,EACA,EAKA,EAAqB,EACrB,CACA,IAAM,EAAc,EAEjB,GAA0D,CACzD,EAAS,EAAS,KAAK,CAAE,YAAa,EAAO,CAAC,CAE3C,KAAM,GAAa,CAClB,IAAK,GAAM,CACT,EACA,CACE,SACA,iBAAkB,CAAC,OAElB,EAAS,SAAS,CAErB,EADe,EAAU,EAAU,EAAO,GAAG,EAAO,CACrC,EAEjB,CAGD,MAAO,GAAU,CAChB,IAAK,GAAM,CACT,iBAAkB,EAAG,MAClB,EACH,EAAO,EAAM,EAEf,EAEN,CAEE,SAAU,EAAU,IAA0C,CAC5D,GAAI,GAAY,EAAE,CAClB,EACD,CACD,qBACA,UAAW,MACZ,CACF,CAED,MAAO,CACL,GAAG,EAEH,KAAM,MAAO,GAAG,IACd,IAAI,SAAiB,GAAG,IAAqB,CAC3C,EAAY,KAAK,CAAE,mBAAkB,SAAQ,CAAC,EAC9C,CACL,CAGH,EAAS,eAAkB,CACzB,EAAG,oBAAqB,SAAY,CAClC,IAAM,EAAU,EAAG,GAEb,KAAO,IAAU,EAAS,EAAQ,GAAS,EAAK,OAAO,CAAC,CAExD,EAAkB,EAGtB,KAAO,IACL,MAAM,EAAQ,EAAS,MAAM,CAAC,EAC/B,EAAU,EAAG,IAAS,EAAS,GACjC,CAEK,EAAW,CACf,EAAgB,KAAK,QAAQ,CAC7B,EAAgB,KAAK,SAAS,CAC9B,EAAgB,KAAK,oBAAoB,CAC1C,CAED,EAAO,EAAQ,CAAC,sBAAsB,EAAE,CAExC,GAAM,CAAC,EAAa,EAAc,GAAc,MAAM,QAAQ,IAAI,EAAS,CAE3E,EAAO,EAAQ,CAAC,sBAAsB,EAAE,CACxC,EAAO,EAAQ,CAAC,yBAAyB,CACvC,QACA,SACA,oBACD,CAAC,CACF,EAAO,EAAQ,CAAC,uBAAuB,CACrC,MAAO,EACP,OAAQ,EACR,kBAAmB,GACpB,CAAC,CACF,EAAO,EAAY,CAAC,KAAK,EAAE,CAC3B,EAAO,EAAa,CAAC,KAAK,EAAE,CAC5B,EAAO,EAAW,CAAC,KAAK,GAAG,EAC3B,CAEF,EAAG,mBAAoB,SAAY,CACjC,IAAM,EAAU,EAAG,GAEb,KAAO,IAAU,EAAM,IAAK,GAAS,EAAK,OAAO,CAAC,CAElD,EAAkB,EAGtB,KAAO,IACL,MAAM,EAAQ,EAAS,MAAM,CAAC,EAC/B,EAAU,IAAU,EAAS,GAC/B,CAEK,EAAW,CACf,EAAgB,KAAK,QAAQ,CAC7B,EAAgB,KAAK,SAAS,CAC9B,EAAgB,KAAK,oBAAoB,CAC1C,CAED,EAAO,EAAQ,CAAC,sBAAsB,EAAE,CAExC,GAAM,CAAC,EAAa,EAAc,GAAc,MAAM,QAAQ,IAAI,EAAS,CAE3E,EAAO,EAAQ,CAAC,sBAAsB,EAAE,CACxC,EAAO,EAAQ,CAAC,yBAAyB,CACvC,QACA,SACA,oBACD,CAAC,CACF,EAAO,EAAQ,CAAC,uBAAuB,CAAC,EAAG,EAAG,GAAG,CAAC,CAClD,EAAO,EAAY,CAAC,KAAK,EAAE,CAC3B,EAAO,EAAa,CAAC,KAAK,EAAE,CAC5B,EAAO,EAAW,CAAC,KAAK,GAAG,EAC3B,CAEF,EAAG,iBAAkB,SAAY,CAC/B,IAAM,EAAa,EAGjB,KAAO,IAA0C,CAC/C,GAAI,EAAS,OAAS,EACpB,MAAU,MAAM,kBAAkB,KAAK,UAAU,EAAS,GAAG,EAGjE,GAAW,CACZ,CAED,MAAMA,EAAO,EAAW,KAAK,IAAI,CAAC,CAAC,SAAS,eAAe,CAE3D,MAAMA,EACJ,QAAQ,IAAI,CAAC,EAAW,KAAK,QAAQ,CAAE,EAAW,KAAK,QAAQ,CAAC,CAAC,CAClE,CAAC,QAAQ,QAAQ,uCAAuC,EACzD,EACF"}
|
package/dist/funnel.test-d.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`./dist-gvJoKj_M.cjs`),t=require(`./do-nothing-Cc1faYu6.cjs`),n=require(`./funnel-CL-QFpGk.cjs`);e.describe(`'call' method args`,()=>{e.it(`no args`,()=>{(0,e.import_dist.expectTypeOf)(n.funnel(t.doNothing(),{reducer:e=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()}),e.it(`non-optional args`,()=>{(0,e.import_dist.expectTypeOf)(n.funnel(t.doNothing(),{reducer:(e,t,n,r)=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()}),e.it(`optional args`,()=>{(0,e.import_dist.expectTypeOf)(n.funnel(t.doNothing(),{reducer:(e,t)=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()}),e.it(`rest args`,()=>{(0,e.import_dist.expectTypeOf)(n.funnel(t.doNothing(),{reducer:(e,...t)=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()})}),e.describe(`derive the reducer accumulator type from the executor param`,()=>{e.it(`simple types`,()=>{n.funnel(e=>{},{reducer:t=>((0,e.import_dist.expectTypeOf)(t).toEqualTypeOf(),t),triggerAt:`start`})}),e.it(`arrays`,()=>{n.funnel(e=>{},{reducer:t=>((0,e.import_dist.expectTypeOf)(t).toEqualTypeOf(),t),triggerAt:`start`})}),e.it(`objects`,()=>{n.funnel(e=>{},{reducer:t=>((0,e.import_dist.expectTypeOf)(t).toEqualTypeOf(),t),triggerAt:`start`})})}),e.describe(`prevent bad options`,()=>{e.it(`minGapMs cannot be the only option with timing: end`,()=>{n.funnel(t.doNothing(),{minGapMs:100}),n.funnel(t.doNothing(),{triggerAt:`end`,minGapMs:100}),n.funnel(t.doNothing(),{triggerAt:`start`,minGapMs:100}),n.funnel(t.doNothing(),{triggerAt:`both`,minGapMs:100})})});
|
package/dist/funnel.test-d.d.cts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
package/dist/funnel.test-d.d.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
export { };
|
package/dist/funnel.test-d.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{describe as e,expectTypeOf as t,it as n}from"./dist-BQGZfjDS.js";import{doNothing as r}from"./do-nothing-Be29JGDG.js";import{funnel as i}from"./funnel-CEbURcmp.js";e(`'call' method args`,()=>{n(`no args`,()=>{t(i(r(),{reducer:e=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()}),n(`non-optional args`,()=>{t(i(r(),{reducer:(e,t,n,r)=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()}),n(`optional args`,()=>{t(i(r(),{reducer:(e,t)=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()}),n(`rest args`,()=>{t(i(r(),{reducer:(e,...t)=>`test`,triggerAt:`start`}).call).parameters.toEqualTypeOf()})}),e(`derive the reducer accumulator type from the executor param`,()=>{n(`simple types`,()=>{i(e=>{},{reducer:e=>(t(e).toEqualTypeOf(),e),triggerAt:`start`})}),n(`arrays`,()=>{i(e=>{},{reducer:e=>(t(e).toEqualTypeOf(),e),triggerAt:`start`})}),n(`objects`,()=>{i(e=>{},{reducer:e=>(t(e).toEqualTypeOf(),e),triggerAt:`start`})})}),e(`prevent bad options`,()=>{n(`minGapMs cannot be the only option with timing: end`,()=>{i(r(),{minGapMs:100}),i(r(),{triggerAt:`end`,minGapMs:100}),i(r(),{triggerAt:`start`,minGapMs:100}),i(r(),{triggerAt:`both`,minGapMs:100})})});
|
|
2
|
+
//# sourceMappingURL=funnel.test-d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"funnel.test-d.js","names":[],"sources":["../src/funnel.test-d.ts"],"sourcesContent":["/* eslint-disable ts/no-unused-vars -- We just want to build types, we don't care about using the params... */\n\nimport { describe, expectTypeOf, it } from 'vitest';\nimport { doNothing } from './do-nothing';\nimport { funnel } from './funnel';\n\ndescribe('\\'call\\' method args', () => {\n it('no args', () => {\n const foo = funnel(doNothing(), {\n reducer: (_: 'test' | undefined) => 'test' as const,\n triggerAt: 'start',\n });\n\n expectTypeOf(foo.call).parameters.toEqualTypeOf<[]>();\n });\n\n it('non-optional args', () => {\n const foo = funnel(doNothing(), {\n // @ts-expect-error [ts(6133)] -- We want to use explicit names, not prefixed with _\n reducer: (_: 'test' | undefined, a: string, b: number, c: boolean) =>\n 'test' as const,\n\n triggerAt: 'start',\n });\n\n expectTypeOf(foo.call).parameters.toEqualTypeOf<\n [a: string, b: number, c: boolean]\n >();\n });\n\n it('optional args', () => {\n const foo = funnel(doNothing(), {\n // @ts-expect-error [ts(6133)] -- We want to use explicit names, not prefixed with _\n reducer: (_: 'test' | undefined, a?: string) => 'test' as const,\n triggerAt: 'start',\n });\n\n expectTypeOf(foo.call).parameters.toEqualTypeOf<[a?: string | undefined]>();\n });\n\n it('rest args', () => {\n const foo = funnel(doNothing(), {\n reducer:\n // @ts-expect-error [ts(6133)] -- We want to use explicit names, not prefixed with _\n (_: 'test' | undefined, ...as: Array<string>) => 'test' as const,\n\n triggerAt: 'start',\n });\n\n expectTypeOf(foo.call).parameters.toEqualTypeOf<Array<string>>();\n });\n});\n\ndescribe('derive the reducer accumulator type from the executor param', () => {\n it('simple types', () => {\n funnel(\n (_: number) => {\n // do nothing\n },\n {\n reducer: (reduced) => {\n expectTypeOf(reduced).toEqualTypeOf<number | undefined>();\n\n return reduced!;\n },\n triggerAt: 'start',\n },\n );\n });\n\n it('arrays', () => {\n funnel(\n (_: ReadonlyArray<number>) => {\n // do nothing,\n },\n {\n reducer: (reduced) => {\n expectTypeOf(reduced).toEqualTypeOf<\n ReadonlyArray<number> | undefined\n >();\n\n return reduced!;\n },\n triggerAt: 'start',\n },\n );\n });\n\n it('objects', () => {\n funnel(\n (_: { readonly a: number }) => {\n // do nothing\n },\n {\n reducer: (reduced) => {\n expectTypeOf(reduced).toEqualTypeOf<\n { readonly a: number } | undefined\n >();\n\n return reduced!;\n },\n triggerAt: 'start',\n },\n );\n });\n});\n\ndescribe('prevent bad options', () => {\n it('minGapMs cannot be the only option with timing: end', () => {\n funnel(\n doNothing(),\n // @ts-expect-error [ts(2345)] -- minGapMs cannot be set alone]\n { minGapMs: 100 },\n );\n\n funnel(\n doNothing(),\n // @ts-expect-error [ts(2345)] -- minGapMs cannot be set alone]\n { triggerAt: 'end', minGapMs: 100 },\n );\n\n // But it works with \"start\" and \"both\"\n\n funnel(doNothing(), { triggerAt: 'start', minGapMs: 100 });\n funnel(doNothing(), { triggerAt: 'both', minGapMs: 100 });\n });\n});\n"],"mappings":"2KAMA,EAAS,yBAA8B,CACrC,EAAG,cAAiB,CAMlB,EALY,EAAO,GAAW,CAAE,CAC9B,QAAU,GAA0B,OACpC,UAAW,QACZ,CAAC,CAEe,KAAK,CAAC,WAAW,eAAmB,EACrD,CAEF,EAAG,wBAA2B,CAS5B,EARY,EAAO,GAAW,CAAE,CAE9B,SAAU,EAAuB,EAAW,EAAW,IACrD,OAEF,UAAW,QACZ,CAAC,CAEe,KAAK,CAAC,WAAW,eAE/B,EACH,CAEF,EAAG,oBAAuB,CAOxB,EANY,EAAO,GAAW,CAAE,CAE9B,SAAU,EAAuB,IAAe,OAChD,UAAW,QACZ,CAAC,CAEe,KAAK,CAAC,WAAW,eAAyC,EAC3E,CAEF,EAAG,gBAAmB,CASpB,EARY,EAAO,GAAW,CAAE,CAC9B,SAEG,EAAuB,GAAG,IAAsB,OAEnD,UAAW,QACZ,CAAC,CAEe,KAAK,CAAC,WAAW,eAA8B,EAChE,EACF,CAEF,EAAS,kEAAqE,CAC5E,EAAG,mBAAsB,CACvB,EACG,GAAc,GAGf,CACE,QAAU,IACR,EAAa,EAAQ,CAAC,eAAmC,CAElD,GAET,UAAW,QACZ,CACF,EACD,CAEF,EAAG,aAAgB,CACjB,EACG,GAA6B,GAG9B,CACE,QAAU,IACR,EAAa,EAAQ,CAAC,eAEnB,CAEI,GAET,UAAW,QACZ,CACF,EACD,CAEF,EAAG,cAAiB,CAClB,EACG,GAA8B,GAG/B,CACE,QAAU,IACR,EAAa,EAAQ,CAAC,eAEnB,CAEI,GAET,UAAW,QACZ,CACF,EACD,EACF,CAEF,EAAS,0BAA6B,CACpC,EAAG,0DAA6D,CAC9D,EACE,GAAW,CAEX,CAAE,SAAU,IAAK,CAClB,CAED,EACE,GAAW,CAEX,CAAE,UAAW,MAAO,SAAU,IAAK,CACpC,CAID,EAAO,GAAW,CAAE,CAAE,UAAW,QAAS,SAAU,IAAK,CAAC,CAC1D,EAAO,GAAW,CAAE,CAAE,UAAW,OAAQ,SAAU,IAAK,CAAC,EACzD,EACF"}
|