@ts-fns/stdlib 0.2.0 → 0.3.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/array/index.cjs +63 -5
- package/dist/array/index.cjs.map +1 -1
- package/dist/array/index.d.cts +49 -9
- package/dist/array/index.d.cts.map +1 -1
- package/dist/array/index.d.mts +49 -9
- package/dist/array/index.d.mts.map +1 -1
- package/dist/array/index.mjs +62 -6
- package/dist/array/index.mjs.map +1 -1
- package/dist/function/index.cjs +3 -3
- package/dist/function/index.d.cts +29 -27
- package/dist/function/index.d.cts.map +1 -1
- package/dist/function/index.d.mts +29 -27
- package/dist/function/index.d.mts.map +1 -1
- package/dist/function/index.mjs +2 -2
- package/dist/{function-CYHPhQCQ.mjs → function-DI38qfqp.mjs} +6 -8
- package/dist/function-DI38qfqp.mjs.map +1 -0
- package/dist/{function-DYPifnmg.cjs → function-Dn9QtmOy.cjs} +19 -15
- package/dist/function-Dn9QtmOy.cjs.map +1 -0
- package/dist/lens/index.cjs +18 -2
- package/dist/lens/index.cjs.map +1 -1
- package/dist/lens/index.d.cts +30 -1
- package/dist/lens/index.d.cts.map +1 -1
- package/dist/lens/index.d.mts +30 -1
- package/dist/lens/index.d.mts.map +1 -1
- package/dist/lens/index.mjs +18 -3
- package/dist/lens/index.mjs.map +1 -1
- package/dist/object/index.cjs +4 -3
- package/dist/object/index.cjs.map +1 -1
- package/dist/object/index.d.cts +1 -5
- package/dist/object/index.d.cts.map +1 -1
- package/dist/object/index.d.mts +1 -5
- package/dist/object/index.d.mts.map +1 -1
- package/dist/object/index.mjs +4 -3
- package/dist/object/index.mjs.map +1 -1
- package/dist/string/index.cjs +1 -1
- package/dist/string/index.mjs +1 -1
- package/package.json +57 -128
- package/dist/function-CYHPhQCQ.mjs.map +0 -1
- package/dist/function-DYPifnmg.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/lens/internal/_lens.ts","../../src/lens/idx.ts","../../src/lens/iso.ts","../../src/lens/lens.ts","../../src/lens/over.ts","../../src/lens/internal/_path.ts","../../src/lens/path.ts","../../src/lens/pathUnsafe.ts","../../src/lens/pathOr.ts","../../src/lens/pathOrUnsafe.ts","../../src/lens/prop.ts","../../src/lens/set.ts","../../src/lens/tuple.ts","../../src/lens/view.ts"],"mappings":";;;UAEiB,OAAA;EACf,GAAA,IAAO,EAAA,GAAK,CAAA,EAAG,CAAA,KAAM,CAAA,GAAI,OAAA,CAAQ,CAAA;EAAA,IAC7B,KAAA,IAAS,CAAA;AAAA;AAAA,KAGH,IAAA,mBACV,cAAA,GAAiB,KAAA,EAAO,KAAA,KAAU,OAAA,CAAQ,KAAA,OACtC,MAAA,EAAQ,MAAA,KAAW,OAAA,CAAQ,MAAA;;;iBCDjB,GAAA,IAAO,KAAA,WAAgB,IAAA,CAAK,CAAA,IAAK,QAAA,CAAS,CAAA;AAAA,kBAA1C,GAAA;EAAA,eAAG,KAAA;AAAA;AAAA,iBAkBV,KAAA,IAAS,KAAA,UAAe,YAAA,EAAc,CAAA,GAAI,IAAA,CAAK,CAAA,IAAK,CAAA;;;iBCvB7C,GAAA,OAAU,EAAA,GAAK,CAAA,EAAG,CAAA,KAAM,CAAA,EAAG,IAAA,GAAO,CAAA,EAAG,CAAA,KAAM,CAAA,GAAI,IAAA,CAAK,CAAA,EAAG,CAAA;;;iBCDvD,IAAA,gBACd,MAAA,GAAS,MAAA,EAAQ,MAAA,KAAW,KAAA,EAC5B,MAAA,GAAS,KAAA,EAAO,KAAA,EAAO,MAAA,EAAQ,MAAA,KAAW,MAAA,GACzC,IAAA,CAAK,MAAA,EAAQ,KAAA;;;iBCAA,IAAA,gBACd,IAAA,EAAM,IAAA,CAAK,MAAA,EAAQ,KAAA;EAAA,CAElB,QAAA,GAAW,KAAA,EAAO,KAAA,KAAU,KAAA,IAAS,MAAA,EAAQ,MAAA,KAAW,MAAA;EAAA,CACxD,MAAA,EAAQ,MAAA,EAAQ,QAAA,GAAW,KAAA,EAAO,KAAA,KAAU,KAAA,GAAQ,MAAA;AAAA;;;KCL3C,WAAA,6BAAwC,WAAA,MAAiB,KAAA,8CACjE,KAAA,6CACE,GAAA,eAAkB,GAAA,GAChB,IAAA,cACE,WAAA,CAAY,GAAA,CAAI,GAAA,KAChB,IAAA,kBAAsB,WAAA,KACpB,WAAA,CAAY,WAAA,CAAY,QAAA,CAAS,GAAA,EAAK,GAAA,IAAO,IAAA;;;;;ALRzD;;iBMOgB,IAAA,CAAK,IAAiB;AAAA,iBACtB,IAAA,sCAA0C,QAAA,CAAS,GAAA,GACjE,IAAA,YAAgB,EAAA,KACd,IAAA,EAAM,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA;AAAA,iBACpB,IAAA,uBAA2B,QAAA,CAAS,GAAA,oBAAuB,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,KACvG,IAAA,YAAgB,EAAA,EAAI,EAAA,KAClB,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA;AAAA,iBACvB,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,KACnD,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,KAAO,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACxD,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,KACvD,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAAO,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAChE,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC3D,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAAO,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACxE,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC/D,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAAO,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAChF,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KACnE,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAAO,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACxF,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAEvE,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC1C,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC/C,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE3E,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC9C,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACnD,IAAA,0BAA8B,WAAA,IAC5C,IAAA,EAAM,CAAA,sBACc,IAAA,EAAM,CAAA,mBAAoB,WAAA,CAAY,CAAA,EAAG,CAAA,IAAK,WAAA,CAAY,CAAA,EAAG,CAAA;AAAA,iBAEnE,IAAA,CAAK,GAAA,WAAc,IAAiB;AAAA,iBACpC,IAAA,uBAA2B,QAAA,CAAS,GAAA,GAAM,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA;AAAA,iBAC5F,IAAA,uBAA2B,QAAA,CAAS,GAAA,oBAAuB,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,KACvG,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,IACnB,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA;AAAA,iBACT,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,KACnD,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACpD,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,KACvD,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC5D,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC3D,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACpE,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC/D,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC5E,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KACnE,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACpF,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KACvE,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,IAAM,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC5F,IAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE3E,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,IAC/C,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;;;iBC1JrC,UAAA,cAAwB,IAAA,WAAe,WAAA,MAAiB,IAAA,aAAiB,CAAC;AAAA,iBAC1E,UAAA,cAAwB,IAAA,UAAc,IAAA,WAAe,WAAA,KAAgB,CAAC;;;iBCAtE,MAAA,CAAO,IAAA,eAAmB,YAAqB;AAAA,iBAC/C,MAAA,sCAA4C,QAAA,CAAS,GAAA,GACnE,IAAA,YAAgB,EAAA,GAChB,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,MAC9B,IAAA,EAAM,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA;AAAA,iBACpB,MAAA,uBAA6B,QAAA,CAAS,GAAA,oBAAuB,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,KACzG,IAAA,YAAgB,EAAA,EAAI,EAAA,GACpB,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,MAClC,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA;AAAA,iBACvB,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,KAEnD,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,GACxB,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,MACtC,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC3B,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,KAEvD,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAC5B,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,MAC1C,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC/B,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE3D,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAChC,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,MAC9C,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACnC,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE/D,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GACpC,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,MAClD,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACvC,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAEnE,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GACxC,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,MACtD,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC3C,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAEvE,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAC5C,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,MAC1D,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC/C,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE3E,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAChD,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,MAC9D,GAAA,EAAK,GAAA,KAAQ,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACnD,MAAA,6BAAmC,WAAA,WACjD,OAAA,EAAS,IAAA,EACT,YAAA,EAAc,KAAA,wBACQ,GAAA,EAAK,KAAA,SAAc,WAAA,CAAY,GAAA,EAAK,IAAA,IAAQ,GAAA,aAAgB,WAAA,CAAY,GAAA,EAAK,IAAA;AAAA,iBAErF,MAAA,CAAO,GAAA,WAAc,IAAA,eAAmB,YAAA;AAAA,iBACxC,MAAA,uBAA6B,QAAA,CAAS,GAAA,GACpD,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,GAChB,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,KAC/B,WAAA,CAAY,GAAA,GAAM,EAAA;AAAA,iBACL,MAAA,uBAA6B,QAAA,CAAS,GAAA,oBAAuB,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,KACzG,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,GACpB,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,KACnC,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA;AAAA,iBACT,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,KACnD,GAAA,EAAK,GAAA,EAAK,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,GAAK,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,KAAO,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAClG,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,KAEvD,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAC5B,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC3C,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACjB,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE3D,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAChC,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC/C,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACrB,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE/D,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GACpC,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KACnD,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACzB,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAEnE,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GACxC,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KACvD,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBAC7B,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAEvE,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAC5C,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC3D,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;AAAA,iBACjC,MAAA,uBAEG,QAAA,CAAS,GAAA,oBACT,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,sBAC9B,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,sBAClC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtC,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC1C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAC9C,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBAClD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,sBACtD,WAAA,CAAY,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAE3E,GAAA,EAAK,GAAA,EACL,IAAA,YAAgB,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,GAChD,YAAA,EAAc,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,KAC/D,WAAA,CAAY,GAAA,GAAM,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAA;;;iBCpMrC,YAAA,cAA0B,IAAA,WAAe,WAAA,IAAe,YAAA,EAAc,CAAA,IAAK,IAAA,aAAiB,CAAA;AAAA,iBAC5F,YAAA,cAA0B,IAAA,UAAc,IAAA,WAAe,WAAA,IAAe,YAAA,EAAc,CAAA,GAAI,CAAA;;;iBCFxF,IAAA,aAAiB,MAAA,qCAA2C,GAAA,EAC1E,GAAA,uBAA0B,GAAA,WAAc,GAAA,GACvC,IAAA,CAAK,GAAA,EAAK,GAAA,CAAI,GAAA;AAAA,iBACD,IAAA,aAAiB,MAAA,mBAAyB,GAAA,WAAc,IAAA,CAAK,GAAA,EAAK,GAAA;AAAA,kBAAlE,IAAA;EAAA,+CAcgD,GAAA,EAAG,GAAA,EAAO,GAAA,EAAG,YAAA,EAAgB,WAAA,CAAY,GAAA,CAAI,GAAA,OAAK,IAAA,CAAA,GAAA,EAAA,WAAA,CAAA,GAAA,CAAA,GAAA;AAAA;;;iBCTlG,GAAA,gBAAmB,IAAA,EAAM,IAAA,CAAK,MAAA,EAAQ,KAAA,KAAU,MAAA,EAAQ,MAAA,EAAQ,KAAA,EAAO,KAAA,KAAU,MAAA;AAAA,iBACjF,GAAA,gBAAmB,IAAA,EAAM,IAAA,CAAK,MAAA,EAAQ,KAAA,GAAQ,MAAA,EAAQ,MAAA,EAAQ,KAAA,EAAO,KAAA,GAAQ,MAAA;;;iBCT7E,KAAA,OAAY,KAAA,MAAW,IAAA,EAAM,CAAA,EAAG,CAAA,GAAI,CAAA;AAAA,iBACpC,KAAA,OAAY,KAAA,MAAW,IAAA,EAAM,CAAA,EAAG,CAAA,GAAI,CAAA;;;iBCDpC,IAAA,gBAAoB,IAAA,EAAM,IAAA,CAAK,MAAA,EAAQ,KAAA,KAAU,MAAA,EAAQ,MAAA,KAAW,KAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/lens/internal/_lens.ts","../../src/lens/compose.ts","../../src/lens/idx.ts","../../src/lens/iso.ts","../../src/lens/lens.ts","../../src/lens/over.ts","../../src/lens/internal/_path.ts","../../src/lens/path.ts","../../src/lens/pathUnsafe.ts","../../src/lens/pathOr.ts","../../src/lens/pathOrUnsafe.ts","../../src/lens/prop.ts","../../src/lens/set.ts","../../src/lens/tuple.ts","../../src/lens/view.ts"],"mappings":"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"}
|
package/dist/lens/index.mjs
CHANGED
|
@@ -1,8 +1,20 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { a as pipe, f as composeImplementation } from "../function-DI38qfqp.mjs";
|
|
2
2
|
import { t as purry } from "../purry-DXnhXie9.mjs";
|
|
3
3
|
import { i as NotFoundError, r as NilError } from "../errors-Dw1kitu_.mjs";
|
|
4
4
|
import { at, insert } from "../array/index.mjs";
|
|
5
5
|
import { t as get } from "../get-Dv6ejLZg.mjs";
|
|
6
|
+
//#region src/lens/compose.ts
|
|
7
|
+
function compose(...pipeline) {
|
|
8
|
+
return (input) => composeImplementation(input, ...pipeline);
|
|
9
|
+
}
|
|
10
|
+
function composeFrom() {
|
|
11
|
+
return compose;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
16
|
+
compose.from = composeFrom;
|
|
17
|
+
//#endregion
|
|
6
18
|
//#region src/lens/lens.ts
|
|
7
19
|
function lens(getter, setter) {
|
|
8
20
|
return (toFunctorFn) => {
|
|
@@ -82,7 +94,7 @@ function Identity(value) {
|
|
|
82
94
|
}
|
|
83
95
|
function overImplementation(lens) {
|
|
84
96
|
return function innerOverOntoLens(source, updateFn) {
|
|
85
|
-
return lens(
|
|
97
|
+
return lens(pipe.create(updateFn, Identity))(source).value;
|
|
86
98
|
};
|
|
87
99
|
}
|
|
88
100
|
//#endregion
|
|
@@ -157,6 +169,9 @@ prop.or = function propOr(key, defaultValue) {
|
|
|
157
169
|
};
|
|
158
170
|
return lens(getter, setter);
|
|
159
171
|
};
|
|
172
|
+
prop.assert = function propAssert(key) {
|
|
173
|
+
return prop(key);
|
|
174
|
+
};
|
|
160
175
|
//#endregion
|
|
161
176
|
//#region src/lens/set.ts
|
|
162
177
|
function setImplementation(lens) {
|
|
@@ -182,6 +197,6 @@ function view(lens) {
|
|
|
182
197
|
};
|
|
183
198
|
}
|
|
184
199
|
//#endregion
|
|
185
|
-
export { idx, iso, lens, over, path, pathOr, pathOrUnsafe, pathUnsafe, prop, set, tuple, view };
|
|
200
|
+
export { compose, idx, iso, lens, over, path, pathOr, pathOrUnsafe, pathUnsafe, prop, set, tuple, view };
|
|
186
201
|
|
|
187
202
|
//# sourceMappingURL=index.mjs.map
|
package/dist/lens/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["Arr.at","Arr.insert","Arr.at","Arr.insert"],"sources":["../../src/lens/lens.ts","../../src/lens/internal/_idx.ts","../../src/lens/idx.ts","../../src/lens/iso.ts","../../src/lens/internal/_lens.ts","../../src/lens/over.ts","../../src/lens/internal/_path.ts","../../src/lens/path.ts","../../src/lens/pathUnsafe.ts","../../src/lens/pathOr.ts","../../src/lens/pathOrUnsafe.ts","../../src/lens/prop.ts","../../src/lens/set.ts","../../src/lens/tuple.ts","../../src/lens/view.ts"],"sourcesContent":["import type { Functor, Lens } from './internal/_lens';\n\nexport function lens<Source, Focus>(\n getter: (source: Source) => Focus,\n setter: (focus: Focus, source: Source) => Source,\n): Lens<Source, Focus> {\n return (toFunctorFn: (focus: Focus) => Functor<Focus>): ((source: Source) => Functor<Source>) => {\n return (source: Source): Functor<Source> => {\n const got = getter(source);\n return toFunctorFn(got).map(focus => {\n return setter(focus, source);\n });\n };\n };\n}\n","import * as Arr from '../../array';\nimport { lens } from '../lens';\n\nimport type { Lens } from './_lens';\n\nexport function idxImplementation<T>(index: number): Lens<T[], T> {\n const getter = (source: T[]): T => {\n const value = Arr.at(source, index);\n return value as T;\n };\n\n const setter = (focus: T, source: T[]): T[] => {\n const updatedSource = Arr.insert(source, index, focus);\n return updatedSource;\n };\n\n return lens(getter, setter);\n}\n","import * as Arr from '../array';\nimport { purry } from '../function';\nimport type { Accessed } from '../types';\n\nimport { idxImplementation } from './internal/_idx';\nimport type { Lens } from './internal/_lens';\nimport { lens } from './lens';\n\nexport function idx<T>(index: number): Lens<T[], Accessed<T>> {\n return idxImplementation(index) as Lens<T[], Accessed<T>>;\n}\n\nfunction idxOrImplementation<T>(index: number, defaultValue: T): Lens<T[], T> {\n const getter = (source: T[]): T => {\n const value = Arr.at(source, index);\n return (value as T) ?? defaultValue;\n };\n\n const setter = (focus: T, source: T[]): T[] => {\n const updatedSource = Arr.insert(source, index, focus);\n return updatedSource;\n };\n\n return lens(getter, setter);\n}\n\nfunction idxOr<T>(index: number, defaultValue: T): Lens<T[], T>;\nfunction idxOr(...args: readonly unknown[]): unknown {\n return purry(idxOrImplementation, args);\n}\n\nidx.or = idxOr;\n","import type { Lens } from './internal/_lens';\nimport { lens } from './lens';\n\nexport function iso<A, B>(to: (a: A) => B, from: (b: B) => A): Lens<A, B> {\n // by ignoring `source` in the setter, we are effectively transforming on _self_\n return lens(to, focus => from(focus));\n}\n","import { piped } from '../../function/piped';\n\nexport interface Functor<A> {\n map<B>(fn: (a: A) => B): Functor<B>;\n get value(): A;\n}\n\nexport type Lens<Source, Focus> = (\n functorFactory: (focus: Focus) => Functor<Focus>,\n) => (source: Source) => Functor<Source>;\n\n/**\n * Function constructor for a Const functor.\n * Const's map func ignores it's given fn, returning itself.\n * In other words, the value contained is constant from initial construction)\n *\n * Typing for this is impossible with Higher-Kinded-Types\n */\nexport function Const(value: unknown): Functor<unknown> {\n const functor: Functor<unknown> = {\n map(this: Functor<unknown>, _fn: (value: unknown) => unknown): Functor<any> {\n return this;\n },\n get value() {\n return value;\n },\n };\n return functor;\n}\n\n/**\n * Function constructor for an Identity Functor\n * This is the most basic functor you can map, simply changing the value contained per the map fn it receives\n */\nexport function Identity<A>(value: A): Functor<A> {\n return {\n map<B>(fn: (value: A) => B): Functor<B> {\n return Identity(fn(value));\n },\n get value() {\n return value;\n },\n };\n}\n\nexport function overImplementation<Source, Focus>(\n lens: Lens<Source, Focus>,\n): (source: Source, updateFn: (value: Focus) => Focus) => Source {\n return function innerOverOntoLens(source, updateFn) {\n const temp = piped(updateFn, Identity);\n // @ts-expect-error - types will never be correct here because of how Identity works\n return lens(temp)(source).value;\n };\n}\n","import { purry } from '../function';\n\nimport type { Lens } from './internal/_lens';\nimport { overImplementation } from './internal/_lens';\n\nexport function over<Source, Focus>(\n lens: Lens<Source, Focus>,\n): {\n (updateFn: (value: Focus) => Focus): (source: Source) => Source;\n (source: Source, updateFn: (value: Focus) => Focus): Source;\n};\nexport function over<Source, Focus>(lens: Lens<Source, Focus>): unknown {\n return function overOntoLens(...args: unknown[]): unknown {\n return purry(overImplementation(lens), args);\n };\n}\n","import { at } from '../../array/at';\nimport { NilError, NotFoundError } from '../../errors';\nimport { get } from '../../object/get';\n\nexport type ValueAtPath<Obj, Tuple extends readonly PropertyKey[]> = Tuple extends readonly [infer Key, ...unknown[]]\n ? Tuple extends readonly [unknown, ...infer Rest]\n ? Key extends keyof Obj\n ? Rest extends []\n ? NonNullable<Obj[Key]>\n : Rest extends readonly PropertyKey[]\n ? ValueAtPath<NonNullable<Required<Obj>[Key]>, Rest>\n : never\n : never\n : never\n : never;\n\nexport function pathImplementation(obj: object | null | undefined, keys: (number | string)[]): unknown {\n const len = keys.length;\n if (len === 0) {\n throw new RangeError('Lens.path does not support passing in an empty keys array');\n }\n\n if (obj == null) {\n throw new NilError('Lens.path does not support passing null or undefined');\n }\n\n let result: unknown = obj;\n\n for (let i = 0; i < len; i += 1) {\n const key = keys[i]!;\n\n if (typeof key === 'number') {\n result = at(result as any[], key);\n } else {\n result = get(result as Record<string, unknown>, key);\n }\n }\n\n return result;\n}\n\nexport function pathOrImplementation(obj: object, pathway: (number | string)[], defaultValue: unknown): unknown {\n const result = pathImplementation(obj, pathway);\n if (result instanceof NotFoundError) {\n return defaultValue;\n }\n return result;\n}\n","import { purry } from '../function/purry';\n\nimport type { ValueAtPath } from './internal/_path';\nimport { pathImplementation } from './internal/_path';\n\n/**\n *\n * @throws RangeError\n */\nexport function path(path: readonly []): never;\nexport function path<Obj extends object, K1 extends keyof Required<Obj>>(\n path: readonly [K1],\n): (data: Obj) => ValueAtPath<Obj, [K1]> | null;\nexport function path<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n path: readonly [K1, K2],\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(path: readonly [K1, K2, K3]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(path: readonly [K1, K2, K3, K4]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(path: readonly [K1, K2, K3, K4, K5]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(path: readonly [K1, K2, K3, K4, K5, K6]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(path: readonly [K1, K2, K3, K4, K5, K6, K7]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8],\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]> | null;\nexport function path<const P extends readonly PropertyKey[]>(\n path: P,\n): <S extends object>(data: S) => never extends ValueAtPath<S, P> ? ValueAtPath<S, P> | null : never;\n\nexport function path(obj: unknown, path: readonly []): never;\nexport function path<Obj, K1 extends keyof Required<Obj>>(obj: Obj, path: readonly [K1]): ValueAtPath<Obj, [K1]> | null;\nexport function path<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n obj: Obj,\n path: readonly [K1, K2],\n): ValueAtPath<Obj, [K1, K2]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(obj: Obj, path: readonly [K1, K2, K3]): ValueAtPath<Obj, [K1, K2, K3]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4]): ValueAtPath<Obj, [K1, K2, K3, K4]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5]): ValueAtPath<Obj, [K1, K2, K3, K4, K5]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5, K6]): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5, K6, K7]): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5, K6, K7, K8]): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]> | null;\nexport function path(...args: unknown[]): unknown {\n return purry(pathImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nimport { pathImplementation } from './internal/_path';\n\nexport function pathUnsafe<T = unknown>(path: readonly PropertyKey[]): (data: object) => T | null;\nexport function pathUnsafe<T = unknown>(data: object, path: readonly PropertyKey[]): T | null;\nexport function pathUnsafe(...args: unknown[]): unknown {\n return purry(pathImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nimport type { ValueAtPath } from './internal/_path';\nimport { pathOrImplementation } from './internal/_path';\n\nexport function pathOr(path: readonly [], defaultValue: unknown): never;\nexport function pathOr<Obj extends object, K1 extends keyof Required<Obj>>(\n path: readonly [K1],\n defaultValue: ValueAtPath<Obj, [K1]>,\n): (data: Obj) => ValueAtPath<Obj, [K1]>;\nexport function pathOr<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n path: readonly [K1, K2],\n defaultValue: ValueAtPath<Obj, [K1, K2]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(\n path: readonly [K1, K2, K3],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(\n path: readonly [K1, K2, K3, K4],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>;\nexport function pathOr<const Path extends readonly PropertyKey[], Value>(\n pathway: Path,\n defaultValue: Value,\n): <Obj extends object>(obj: Value extends ValueAtPath<Obj, Path> ? Obj : never) => ValueAtPath<Obj, Path>;\n\nexport function pathOr(obj: unknown, path: readonly [], defaultValue: unknown): never;\nexport function pathOr<Obj, K1 extends keyof Required<Obj>>(\n obj: Obj,\n path: readonly [K1],\n defaultValue: ValueAtPath<Obj, [K1]>,\n): ValueAtPath<Obj, [K1]>;\nexport function pathOr<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n obj: Obj,\n path: readonly [K1, K2],\n defaultValue: ValueAtPath<Obj, [K1, K2]>,\n): ValueAtPath<Obj, [K1, K2]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(obj: Obj, path: readonly [K1, K2, K3], defaultValue: ValueAtPath<Obj, [K1, K2, K3]>): ValueAtPath<Obj, [K1, K2, K3]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>;\nexport function pathOr(...args: unknown[]): unknown {\n return purry(pathOrImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nimport { pathOrImplementation } from './internal/_path';\n\nexport function pathOrUnsafe<T = unknown>(path: readonly PropertyKey[], defaultValue: T): (data: object) => T;\nexport function pathOrUnsafe<T = unknown>(data: object, path: readonly PropertyKey[], defaultValue: T): T;\nexport function pathOrUnsafe(...args: unknown[]): unknown {\n return purry(pathOrImplementation, args);\n}\n","import type { Lens } from './internal/_lens';\nimport { lens } from './lens';\n\nexport function prop<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n key: string extends keyof Obj ? never : Key,\n): Lens<Obj, Obj[Key]>;\nexport function prop<Obj extends Record<string, unknown>>(key: string): Lens<Obj, Obj[string] | undefined>;\nexport function prop<Obj extends Record<string, unknown>>(key: string): Lens<Obj, Obj[string] | undefined> {\n const getter = (data: Obj): Obj[string] | undefined => {\n return data[key] as Obj[string] | undefined;\n };\n\n const setter = (value: Obj[string] | undefined, data: Obj): Obj => {\n return { ...data, [key]: value };\n };\n\n const theLens = lens(getter, setter);\n return theLens;\n}\n\nprop.or = function propOr<Obj extends object, Key extends keyof Obj>(key: Key, defaultValue: NonNullable<Obj[Key]>) {\n const getter = (data: Obj): NonNullable<Obj[Key]> => {\n return data[key] ?? defaultValue;\n };\n const setter = (value: Obj[Key], data: Obj): Obj => {\n return { ...data, [key]: value };\n };\n\n return lens(getter, setter);\n};\n","import { purry } from '../function/purry';\n\nimport type { Lens } from './internal/_lens';\nimport { overImplementation } from './internal/_lens';\n\nfunction setImplementation<Source, Focus>(lens: Lens<Source, Focus>): (source: Source, value: Focus) => Source {\n return function innerSetOntoLens(source, value) {\n return overImplementation(lens)(source, () => value);\n };\n}\n\nexport function set<Source, Focus>(lens: Lens<Source, Focus>): (source: Source, value: Focus) => Source;\nexport function set<Source, Focus>(lens: Lens<Source, Focus>, source: Source, value: Focus): Source;\nexport function set<Source, Focus>(lens: Lens<Source, Focus>): unknown {\n return function setOntoLens(...args: unknown[]): unknown {\n return purry(setImplementation(lens), args);\n };\n}\n","import { idxImplementation } from './internal/_idx';\nimport type { Lens } from './internal/_lens';\n\nexport function tuple<A, B>(index: 0): Lens<[A, B], A>;\nexport function tuple<A, B>(index: 1): Lens<[A, B], B>;\nexport function tuple(index: number): unknown {\n return idxImplementation(index);\n}\n","import type { Lens } from './internal/_lens';\nimport { Const } from './internal/_lens';\n\nexport function view<Source, Focus>(lens: Lens<Source, Focus>): (source: Source) => Focus {\n return function viewOntoLens(source: Source): Focus {\n // @ts-expect-error - types will never be correct here because of how Const works\n return lens(Const)(source).value;\n };\n}\n"],"mappings":";;;;;;AAEA,SAAgB,KACd,QACA,QACqB;CACrB,QAAQ,gBAAyF;EAC/F,QAAQ,WAAoC;GAE1C,OAAO,YADK,OAAO,MACE,CAAC,CAAC,CAAC,KAAI,UAAS;IACnC,OAAO,OAAO,OAAO,MAAM;GAC7B,CAAC;EACH;CACF;AACF;;;ACTA,SAAgB,kBAAqB,OAA6B;CAChE,MAAM,UAAU,WAAmB;EAEjC,OADcA,GAAO,QAAQ,KAClB;CACb;CAEA,MAAM,UAAU,OAAU,WAAqB;EAE7C,OADsBC,OAAW,QAAQ,OAAO,KAC7B;CACrB;CAEA,OAAO,KAAK,QAAQ,MAAM;AAC5B;;;ACTA,SAAgB,IAAO,OAAuC;CAC5D,OAAO,kBAAkB,KAAK;AAChC;AAEA,SAAS,oBAAuB,OAAe,cAA+B;CAC5E,MAAM,UAAU,WAAmB;EAEjC,OADcC,GAAO,QAAQ,KACjB,KAAW;CACzB;CAEA,MAAM,UAAU,OAAU,WAAqB;EAE7C,OADsBC,OAAW,QAAQ,OAAO,KAC7B;CACrB;CAEA,OAAO,KAAK,QAAQ,MAAM;AAC5B;AAGA,SAAS,MAAM,GAAG,MAAmC;CACnD,OAAO,MAAM,qBAAqB,IAAI;AACxC;AAEA,IAAI,KAAK;;;AC5BT,SAAgB,IAAU,IAAiB,MAA+B;CAExE,OAAO,KAAK,KAAI,UAAS,KAAK,KAAK,CAAC;AACtC;;;;;;;;;;ACYA,SAAgB,MAAM,OAAkC;CAStD,OAAO;EAPL,IAA4B,KAAgD;GAC1E,OAAO;EACT;EACA,IAAI,QAAQ;GACV,OAAO;EACT;CAEW;AACf;;;;;AAMA,SAAgB,SAAY,OAAsB;CAChD,OAAO;EACL,IAAO,IAAiC;GACtC,OAAO,SAAS,GAAG,KAAK,CAAC;EAC3B;EACA,IAAI,QAAQ;GACV,OAAO;EACT;CACF;AACF;AAEA,SAAgB,mBACd,MAC+D;CAC/D,OAAO,SAAS,kBAAkB,QAAQ,UAAU;EAGlD,OAAO,KAFM,MAAM,UAAU,QAEd,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;CAC5B;AACF;;;AC1CA,SAAgB,KAAoB,MAAoC;CACtE,OAAO,SAAS,aAAa,GAAG,MAA0B;EACxD,OAAO,MAAM,mBAAmB,IAAI,GAAG,IAAI;CAC7C;AACF;;;ACCA,SAAgB,mBAAmB,KAAgC,MAAoC;CACrG,MAAM,MAAM,KAAK;CACjB,IAAI,QAAQ,GACV,MAAM,IAAI,WAAW,2DAA2D;CAGlF,IAAI,OAAO,MACT,MAAM,IAAI,SAAS,sDAAsD;CAG3E,IAAI,SAAkB;CAEtB,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;EAC/B,MAAM,MAAM,KAAK;EAEjB,IAAI,OAAO,QAAQ,UACjB,SAAS,GAAG,QAAiB,GAAG;OAEhC,SAAS,IAAI,QAAmC,GAAG;CAEvD;CAEA,OAAO;AACT;AAEA,SAAgB,qBAAqB,KAAa,SAA8B,cAAgC;CAC9G,MAAM,SAAS,mBAAmB,KAAK,OAAO;CAC9C,IAAI,kBAAkB,eACpB,OAAO;CAET,OAAO;AACT;;;ACgHA,SAAgB,KAAK,GAAG,MAA0B;CAChD,OAAO,MAAM,oBAAoB,IAAI;AACvC;;;AC3JA,SAAgB,WAAW,GAAG,MAA0B;CACtD,OAAO,MAAM,oBAAoB,IAAI;AACvC;;;ACiMA,SAAgB,OAAO,GAAG,MAA0B;CAClD,OAAO,MAAM,sBAAsB,IAAI;AACzC;;;ACrMA,SAAgB,aAAa,GAAG,MAA0B;CACxD,OAAO,MAAM,sBAAsB,IAAI;AACzC;;;ACDA,SAAgB,KAA0C,KAAiD;CACzG,MAAM,UAAU,SAAuC;EACrD,OAAO,KAAK;CACd;CAEA,MAAM,UAAU,OAAgC,SAAmB;EACjE,OAAO;GAAE,GAAG;IAAO,MAAM;EAAM;CACjC;CAGA,OADgB,KAAK,QAAQ,MAChB;AACf;AAEA,KAAK,KAAK,SAAS,OAAkD,KAAU,cAAqC;CAClH,MAAM,UAAU,SAAqC;EACnD,OAAO,KAAK,QAAQ;CACtB;CACA,MAAM,UAAU,OAAiB,SAAmB;EAClD,OAAO;GAAE,GAAG;IAAO,MAAM;EAAM;CACjC;CAEA,OAAO,KAAK,QAAQ,MAAM;AAC5B;;;ACxBA,SAAS,kBAAiC,MAAqE;CAC7G,OAAO,SAAS,iBAAiB,QAAQ,OAAO;EAC9C,OAAO,mBAAmB,IAAI,CAAC,CAAC,cAAc,KAAK;CACrD;AACF;AAIA,SAAgB,IAAmB,MAAoC;CACrE,OAAO,SAAS,YAAY,GAAG,MAA0B;EACvD,OAAO,MAAM,kBAAkB,IAAI,GAAG,IAAI;CAC5C;AACF;;;ACZA,SAAgB,MAAM,OAAwB;CAC5C,OAAO,kBAAkB,KAAK;AAChC;;;ACJA,SAAgB,KAAoB,MAAsD;CACxF,OAAO,SAAS,aAAa,QAAuB;EAElD,OAAO,KAAK,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;CAC7B;AACF"}
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["Arr.at","Arr.insert","Arr.at","Arr.insert"],"sources":["../../src/lens/compose.ts","../../src/lens/lens.ts","../../src/lens/internal/_idx.ts","../../src/lens/idx.ts","../../src/lens/iso.ts","../../src/lens/internal/_lens.ts","../../src/lens/over.ts","../../src/lens/internal/_path.ts","../../src/lens/path.ts","../../src/lens/pathUnsafe.ts","../../src/lens/pathOr.ts","../../src/lens/pathOrUnsafe.ts","../../src/lens/prop.ts","../../src/lens/set.ts","../../src/lens/tuple.ts","../../src/lens/view.ts"],"sourcesContent":["import { composeImplementation } from '../function/internal/_compose';\n\nimport type { Lens } from './internal/_lens';\n\n/**\n * Compose Lenses\n */\nexport function compose<A, B>(lens1: Lens<A, B>): Lens<A, B>;\nexport function compose<A, B, C>(lens1: Lens<A, B>, lens2: Lens<B, C>): Lens<A, C>;\nexport function compose<A, B, C, D>(lens1: Lens<A, B>, lens2: Lens<B, C>, lens3: Lens<C, D>): Lens<A, D>;\nexport function compose<A, B, C, D, E>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n): Lens<A, E>;\nexport function compose<A, B, C, D, E, F>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n): Lens<A, F>;\nexport function compose<A, B, C, D, E, F, G>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n): Lens<A, G>;\nexport function compose<A, B, C, D, E, F, G, H>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n lens7: Lens<G, H>,\n): Lens<A, H>;\nexport function compose<A, B, C, D, E, F, G, H, I>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n lens7: Lens<G, H>,\n lens8: Lens<G, I>,\n): Lens<A, I>;\nexport function compose<A, B, C, D, E, F, G, H, I, J>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n lens7: Lens<G, H>,\n lens8: Lens<G, I>,\n lens9: Lens<I, J>,\n): Lens<A, J>;\nexport function compose(...pipeline: readonly Lens<unknown, unknown>[]): (input: unknown) => any {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return (input: unknown) => composeImplementation(input, ...pipeline);\n}\n\nfunction composeFrom<A>(): {\n <B>(lens1: Lens<A, B>): Lens<A, B>;\n <B, C>(lens1: Lens<A, B>, lens2: Lens<B, C>): Lens<A, C>;\n <B, C, D>(lens1: Lens<A, B>, lens2: Lens<B, C>, lens3: Lens<C, D>): Lens<A, D>;\n <B, C, D, E>(lens1: Lens<A, B>, lens2: Lens<B, C>, lens3: Lens<C, D>, lens4: Lens<D, E>): Lens<A, E>;\n <B, C, D, E, F>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n ): Lens<A, F>;\n <B, C, D, E, F, G>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n ): Lens<A, G>;\n <B, C, D, E, F, G, H>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n lens7: Lens<G, H>,\n ): Lens<A, H>;\n <B, C, D, E, F, G, H, I>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n lens7: Lens<G, H>,\n lens8: Lens<G, I>,\n ): Lens<A, I>;\n <B, C, D, E, F, G, H, I, J>(\n lens1: Lens<A, B>,\n lens2: Lens<B, C>,\n lens3: Lens<C, D>,\n lens4: Lens<D, E>,\n lens5: Lens<E, F>,\n lens6: Lens<F, G>,\n lens7: Lens<G, H>,\n lens8: Lens<G, I>,\n lens9: Lens<I, J>,\n ): Lens<A, J>;\n} {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return compose as any;\n}\n\n/**\n *\n */\ncompose.from = composeFrom;\n","import type { Functor, Lens } from './internal/_lens';\n\nexport function lens<Source, Focus>(\n getter: (source: Source) => Focus,\n setter: (focus: Focus, source: Source) => Source,\n): Lens<Source, Focus> {\n return (toFunctorFn: (focus: Focus) => Functor<Focus>): ((source: Source) => Functor<Source>) => {\n return (source: Source): Functor<Source> => {\n const got = getter(source);\n return toFunctorFn(got).map(focus => {\n return setter(focus, source);\n });\n };\n };\n}\n","import * as Arr from '../../array';\nimport { lens } from '../lens';\n\nimport type { Lens } from './_lens';\n\nexport function idxImplementation<T>(index: number): Lens<T[], T> {\n const getter = (source: T[]): T => {\n const value = Arr.at(source, index);\n return value as T;\n };\n\n const setter = (focus: T, source: T[]): T[] => {\n const updatedSource = Arr.insert(source, index, focus);\n return updatedSource;\n };\n\n return lens(getter, setter);\n}\n","import * as Arr from '../array';\nimport { purry } from '../function';\nimport type { Accessed } from '../types';\n\nimport { idxImplementation } from './internal/_idx';\nimport type { Lens } from './internal/_lens';\nimport { lens } from './lens';\n\nexport function idx<T>(index: number): Lens<T[], Accessed<T>> {\n return idxImplementation(index) as Lens<T[], Accessed<T>>;\n}\n\nfunction idxOrImplementation<T>(index: number, defaultValue: T): Lens<T[], T> {\n const getter = (source: T[]): T => {\n const value = Arr.at(source, index);\n return (value as T) ?? defaultValue;\n };\n\n const setter = (focus: T, source: T[]): T[] => {\n const updatedSource = Arr.insert(source, index, focus);\n return updatedSource;\n };\n\n return lens(getter, setter);\n}\n\nfunction idxOr<T>(index: number, defaultValue: T): Lens<T[], T>;\nfunction idxOr(...args: readonly unknown[]): unknown {\n return purry(idxOrImplementation, args);\n}\n\nidx.or = idxOr;\n","import type { Lens } from './internal/_lens';\nimport { lens } from './lens';\n\nexport function iso<A, B>(to: (a: A) => B, from: (b: B) => A): Lens<A, B> {\n // by ignoring `source` in the setter, we are effectively transforming on _self_\n return lens(to, focus => from(focus));\n}\n","import { pipe } from '../../function/pipe';\n\nexport interface Functor<A> {\n map<B>(fn: (a: A) => B): Functor<B>;\n get value(): A;\n}\n\nexport type Lens<Source, Focus> = (\n functorFactory: (focus: Focus) => Functor<Focus>,\n) => (source: Source) => Functor<Source>;\n\n/**\n * Function constructor for a Const functor.\n * Const's map func ignores it's given fn, returning itself.\n * In other words, the value contained is constant from initial construction)\n *\n * Typing for this is impossible with Higher-Kinded-Types\n */\nexport function Const(value: unknown): Functor<unknown> {\n const functor: Functor<unknown> = {\n map(this: Functor<unknown>, _fn: (value: unknown) => unknown): Functor<any> {\n return this;\n },\n get value() {\n return value;\n },\n };\n return functor;\n}\n\n/**\n * Function constructor for an Identity Functor\n * This is the most basic functor you can map, simply changing the value contained per the map fn it receives\n */\nexport function Identity<A>(value: A): Functor<A> {\n return {\n map<B>(fn: (value: A) => B): Functor<B> {\n return Identity(fn(value));\n },\n get value() {\n return value;\n },\n };\n}\n\nexport function overImplementation<Source, Focus>(\n lens: Lens<Source, Focus>,\n): (source: Source, updateFn: (value: Focus) => Focus) => Source {\n return function innerOverOntoLens(source, updateFn) {\n const temp = pipe.create(updateFn, Identity);\n // @ts-expect-error - types will never be correct here because of how Identity works\n return lens(temp)(source).value;\n };\n}\n","import { purry } from '../function';\n\nimport type { Lens } from './internal/_lens';\nimport { overImplementation } from './internal/_lens';\n\nexport function over<Source, Focus>(\n lens: Lens<Source, Focus>,\n): {\n (updateFn: (value: Focus) => Focus): (source: Source) => Source;\n (source: Source, updateFn: (value: Focus) => Focus): Source;\n};\nexport function over<Source, Focus>(lens: Lens<Source, Focus>): unknown {\n return function overOntoLens(...args: unknown[]): unknown {\n return purry(overImplementation(lens), args);\n };\n}\n","import { at } from '../../array/at';\nimport { NilError, NotFoundError } from '../../errors';\nimport { get } from '../../object/get';\n\nexport type ValueAtPath<Obj, Tuple extends readonly PropertyKey[]> = Tuple extends readonly [infer Key, ...unknown[]]\n ? Tuple extends readonly [unknown, ...infer Rest]\n ? Key extends keyof Obj\n ? Rest extends []\n ? NonNullable<Obj[Key]>\n : Rest extends readonly PropertyKey[]\n ? ValueAtPath<NonNullable<Required<Obj>[Key]>, Rest>\n : never\n : never\n : never\n : never;\n\nexport function pathImplementation(obj: object | null | undefined, keys: (number | string)[]): unknown {\n const len = keys.length;\n if (len === 0) {\n throw new RangeError('Lens.path does not support passing in an empty keys array');\n }\n\n if (obj == null) {\n throw new NilError('Lens.path does not support passing null or undefined');\n }\n\n let result: unknown = obj;\n\n for (let i = 0; i < len; i += 1) {\n const key = keys[i]!;\n\n if (typeof key === 'number') {\n result = at(result as any[], key);\n } else {\n result = get(result as Record<string, unknown>, key);\n }\n }\n\n return result;\n}\n\nexport function pathOrImplementation(obj: object, pathway: (number | string)[], defaultValue: unknown): unknown {\n const result = pathImplementation(obj, pathway);\n if (result instanceof NotFoundError) {\n return defaultValue;\n }\n return result;\n}\n","import { purry } from '../function/purry';\n\nimport type { ValueAtPath } from './internal/_path';\nimport { pathImplementation } from './internal/_path';\n\n/**\n *\n * @throws RangeError\n */\nexport function path(path: readonly []): never;\nexport function path<Obj extends object, K1 extends keyof Required<Obj>>(\n path: readonly [K1],\n): (data: Obj) => ValueAtPath<Obj, [K1]> | null;\nexport function path<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n path: readonly [K1, K2],\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(path: readonly [K1, K2, K3]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(path: readonly [K1, K2, K3, K4]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(path: readonly [K1, K2, K3, K4, K5]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(path: readonly [K1, K2, K3, K4, K5, K6]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(path: readonly [K1, K2, K3, K4, K5, K6, K7]): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8],\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]> | null;\nexport function path<const P extends readonly PropertyKey[]>(\n path: P,\n): <S extends object>(data: S) => never extends ValueAtPath<S, P> ? ValueAtPath<S, P> | null : never;\n\nexport function path(obj: unknown, path: readonly []): never;\nexport function path<Obj, K1 extends keyof Required<Obj>>(obj: Obj, path: readonly [K1]): ValueAtPath<Obj, [K1]> | null;\nexport function path<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n obj: Obj,\n path: readonly [K1, K2],\n): ValueAtPath<Obj, [K1, K2]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(obj: Obj, path: readonly [K1, K2, K3]): ValueAtPath<Obj, [K1, K2, K3]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4]): ValueAtPath<Obj, [K1, K2, K3, K4]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5]): ValueAtPath<Obj, [K1, K2, K3, K4, K5]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5, K6]): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5, K6, K7]): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(obj: Obj, path: readonly [K1, K2, K3, K4, K5, K6, K7, K8]): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]> | null;\nexport function path<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]> | null;\nexport function path(...args: unknown[]): unknown {\n return purry(pathImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nimport { pathImplementation } from './internal/_path';\n\nexport function pathUnsafe<T = unknown>(path: readonly PropertyKey[]): (data: object) => T | null;\nexport function pathUnsafe<T = unknown>(data: object, path: readonly PropertyKey[]): T | null;\nexport function pathUnsafe(...args: unknown[]): unknown {\n return purry(pathImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nimport type { ValueAtPath } from './internal/_path';\nimport { pathOrImplementation } from './internal/_path';\n\nexport function pathOr(path: readonly [], defaultValue: unknown): never;\nexport function pathOr<Obj extends object, K1 extends keyof Required<Obj>>(\n path: readonly [K1],\n defaultValue: ValueAtPath<Obj, [K1]>,\n): (data: Obj) => ValueAtPath<Obj, [K1]>;\nexport function pathOr<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n path: readonly [K1, K2],\n defaultValue: ValueAtPath<Obj, [K1, K2]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(\n path: readonly [K1, K2, K3],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(\n path: readonly [K1, K2, K3, K4],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>,\n): (obj: Obj) => ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>;\nexport function pathOr<const Path extends readonly PropertyKey[], Value>(\n pathway: Path,\n defaultValue: Value,\n): <Obj extends object>(obj: Value extends ValueAtPath<Obj, Path> ? Obj : never) => ValueAtPath<Obj, Path>;\n\nexport function pathOr(obj: unknown, path: readonly [], defaultValue: unknown): never;\nexport function pathOr<Obj, K1 extends keyof Required<Obj>>(\n obj: Obj,\n path: readonly [K1],\n defaultValue: ValueAtPath<Obj, [K1]>,\n): ValueAtPath<Obj, [K1]>;\nexport function pathOr<Obj, K1 extends keyof Required<Obj>, K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>>(\n obj: Obj,\n path: readonly [K1, K2],\n defaultValue: ValueAtPath<Obj, [K1, K2]>,\n): ValueAtPath<Obj, [K1, K2]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n>(obj: Obj, path: readonly [K1, K2, K3], defaultValue: ValueAtPath<Obj, [K1, K2, K3]>): ValueAtPath<Obj, [K1, K2, K3]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>;\nexport function pathOr<\n Obj,\n K1 extends keyof Required<Obj>,\n K2 extends keyof NonNullable<ValueAtPath<Obj, [K1]>>,\n K3 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2]>>,\n K4 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3]>>,\n K5 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4]>>,\n K6 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5]>>,\n K7 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6]>>,\n K8 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7]>>,\n K9 extends keyof NonNullable<ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8]>>,\n>(\n obj: Obj,\n path: readonly [K1, K2, K3, K4, K5, K6, K7, K8, K9],\n defaultValue: ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>,\n): ValueAtPath<Obj, [K1, K2, K3, K4, K5, K6, K7, K8, K9]>;\nexport function pathOr(...args: unknown[]): unknown {\n return purry(pathOrImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nimport { pathOrImplementation } from './internal/_path';\n\nexport function pathOrUnsafe<T = unknown>(path: readonly PropertyKey[], defaultValue: T): (data: object) => T;\nexport function pathOrUnsafe<T = unknown>(data: object, path: readonly PropertyKey[], defaultValue: T): T;\nexport function pathOrUnsafe(...args: unknown[]): unknown {\n return purry(pathOrImplementation, args);\n}\n","import type { Lens } from './internal/_lens';\nimport { lens } from './lens';\n\nexport function prop<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n key: string extends keyof Obj ? never : Key,\n): Lens<Obj, Obj[Key]>;\nexport function prop<Obj extends Record<string, unknown>>(key: string): Lens<Obj, Obj[string] | undefined>;\nexport function prop<Obj extends Record<string, unknown>>(key: string): Lens<Obj, Obj[string] | undefined> {\n const getter = (data: Obj): Obj[string] | undefined => {\n return data[key] as Obj[string] | undefined;\n };\n\n const setter = (value: Obj[string] | undefined, data: Obj): Obj => {\n return { ...data, [key]: value };\n };\n\n const theLens = lens(getter, setter);\n return theLens;\n}\n\nprop.or = function propOr<Obj extends object, Key extends keyof Obj>(key: Key, defaultValue: NonNullable<Obj[Key]>) {\n const getter = (data: Obj): NonNullable<Obj[Key]> => {\n return data[key] ?? defaultValue;\n };\n const setter = (value: Obj[Key], data: Obj): Obj => {\n return { ...data, [key]: value };\n };\n\n return lens(getter, setter);\n};\n\nprop.assert = function propAssert<Obj extends Record<string, unknown>>(key: string): Lens<Obj, Obj[string]> {\n return prop(key) as Lens<Obj, Obj[string]>;\n};\n","import { purry } from '../function/purry';\n\nimport type { Lens } from './internal/_lens';\nimport { overImplementation } from './internal/_lens';\n\nfunction setImplementation<Source, Focus>(lens: Lens<Source, Focus>): (source: Source, value: Focus) => Source {\n return function innerSetOntoLens(source, value) {\n return overImplementation(lens)(source, () => value);\n };\n}\n\nexport function set<Source, Focus>(lens: Lens<Source, Focus>): (source: Source, value: Focus) => Source;\nexport function set<Source, Focus>(lens: Lens<Source, Focus>, source: Source, value: Focus): Source;\nexport function set<Source, Focus>(lens: Lens<Source, Focus>): unknown {\n return function setOntoLens(...args: unknown[]): unknown {\n return purry(setImplementation(lens), args);\n };\n}\n","import { idxImplementation } from './internal/_idx';\nimport type { Lens } from './internal/_lens';\n\nexport function tuple<A, B>(index: 0): Lens<[A, B], A>;\nexport function tuple<A, B>(index: 1): Lens<[A, B], B>;\nexport function tuple(index: number): unknown {\n return idxImplementation(index);\n}\n","import type { Lens } from './internal/_lens';\nimport { Const } from './internal/_lens';\n\nexport function view<Source, Focus>(lens: Lens<Source, Focus>): (source: Source) => Focus {\n return function viewOntoLens(source: Source): Focus {\n // @ts-expect-error - types will never be correct here because of how Const works\n return lens(Const)(source).value;\n };\n}\n"],"mappings":"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"}
|
package/dist/object/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
require("../function-
|
|
2
|
+
require("../function-Dn9QtmOy.cjs");
|
|
3
3
|
const require_purry = require("../purry-Dqp_F64t.cjs");
|
|
4
4
|
const require_get = require("../get-1kqkxPFX.cjs");
|
|
5
5
|
//#region src/object/_globalAliases.ts
|
|
@@ -37,14 +37,15 @@ const hasOwn = Object.hasOwn;
|
|
|
37
37
|
const is = Object.is;
|
|
38
38
|
/**
|
|
39
39
|
* Returns an array of an object's own enumerable string-keyed property names.
|
|
40
|
-
* @function
|
|
41
40
|
*
|
|
42
41
|
* @example
|
|
43
42
|
* ```ts
|
|
44
43
|
* keys({ a: 1, b: 2 }); // ['a', 'b']
|
|
45
44
|
* ```
|
|
46
45
|
*/
|
|
47
|
-
|
|
46
|
+
function keys(obj) {
|
|
47
|
+
return Object.keys(obj);
|
|
48
|
+
}
|
|
48
49
|
/**
|
|
49
50
|
* Returns an array of an object's own enumerable property values.
|
|
50
51
|
* @function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":["purry","purry","purry","purry","purry","purry","purry","purry","purry","purry","purry"],"sources":["../../src/object/_globalAliases.ts","../../src/object/clone.ts","../../src/object/evolve.ts","../../src/object/forEach.ts","../../src/object/groupBy.ts","../../src/object/indexBy.ts","../../src/object/map.ts","../../src/object/merge.ts","../../src/object/mergeDeep.ts","../../src/object/omit.ts","../../src/object/pick.ts","../../src/object/set.ts","../../src/object/upsert.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/prefer-destructuring */\n\n/**\n * Creates an object from an iterable of key-value pairs.\n * @function\n *\n * @example\n * ```ts\n * fromEntries([['a', 1], ['b', 2]]); // { a: 1, b: 2 }\n * ```\n */\nexport const fromEntries = Object.fromEntries;\n\n/**\n * Checks whether an object has the specified property as its own property.\n * @function\n *\n * @example\n * ```ts\n * hasOwn({ a: 1 }, 'a'); // true\n * hasOwn({ a: 1 }, 'toString'); // false\n * ```\n */\nexport const hasOwn = Object.hasOwn;\n\n/**\n * Determines whether two values are the same value.\n * @function\n *\n * @example\n * ```ts\n * is(NaN, NaN); // true\n * is(0, -0); // false\n * ```\n */\nexport const is = Object.is;\n\n/**\n * Returns an array of an object's own enumerable string-keyed property names.\n * @function\n *\n * @example\n * ```ts\n * keys({ a: 1, b: 2 }); // ['a', 'b']\n * ```\n */\nexport const keys = Object.keys;\n\n/**\n * Returns an array of an object's own enumerable property values.\n * @function\n *\n * @example\n * ```ts\n * values({ a: 1, b: 2 }); // [1, 2]\n * ```\n */\nexport const values = Object.values;\n\n/**\n * Returns an array of an object's own enumerable string-keyed property key-value pairs.\n * @function\n *\n * @example\n * ```ts\n * entries({ a: 1, b: 2 }); // [['a', 1], ['b', 2]]\n * ```\n */\nexport const entries = Object.entries;\n","/**\n * Creates a deep clone of a value using `structuredClone`.\n *\n * @example\n * ```ts\n * clone({ a: 1, b: { c: 2 } }); // { a: 1, b: { c: 2 } }\n * ```\n */\nexport function clone<T>(data: T): T {\n return globalThis.structuredClone(data);\n}\n","import type { Simplify } from 'type-fest';\n\nimport { purry } from '../function';\n\ntype Evolved<Obj extends object, Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown }> = {\n [K in keyof Obj]: Obj extends Record<K, infer T>\n ? Evolver extends Record<K, (value: Obj[K]) => infer R>\n ? R extends T\n ? T\n : unknown\n : never\n : never;\n};\n\nfunction evolveImplementation<\n Obj extends object,\n Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown },\n>(obj: Obj, evolver: Evolver): Simplify<Evolved<Obj, Evolver>> {\n const evolved = (Object.entries(evolver) as [keyof Obj, (value: unknown) => unknown][]).reduce<\n Partial<Record<keyof Obj, any>>\n >((acc, [k, fn]) => {\n // key must exist on obj, otherwise no value\n if (Object.hasOwn(obj, k)) {\n acc[k] = fn(obj[k]);\n }\n return acc;\n }, {});\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return { ...obj, ...evolved } as any;\n}\n\n/**\n * Transforms selected properties of an object using per-key functions.\n * Only keys present on the object are evolved.\n *\n * @example\n * ```ts\n * evolve({ count: n => n + 1 })({ count: 1, name: 'Ada' }); // { count: 2, name: 'Ada' }\n * evolve({ count: 1, name: 'Ada' }, { count: n => n + 1 }); // { count: 2, name: 'Ada' }\n * ```\n */\nexport function evolve<Obj extends object, Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown }>(\n evolver: Evolver,\n): (obj: Obj) => Simplify<Evolved<Obj, Evolver>>;\nexport function evolve<Obj extends object, Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown }>(\n obj: Obj,\n evolver: Evolver,\n): Simplify<Evolved<Obj, Evolver>>;\nexport function evolve(...args: unknown[]): unknown {\n return purry(evolveImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction forEachImplementation<T>(\n data: Record<string, T>,\n callbackfn: (value: T, key: string) => void,\n): Record<string, T> {\n for (const [k, v] of Object.entries(data)) {\n callbackfn(v, k);\n }\n return data;\n}\n\n/**\n * Iterates over an object's own enumerable properties, invoking a callback for each entry.\n * Returns the original object.\n *\n * @example\n * ```ts\n * forEach((v, k) => console.log(k, v))({ a: 1, b: 2 });\n * forEach({ a: 1, b: 2 }, (v, k) => console.log(k, v));\n * ```\n */\nexport function forEach<T>(callbackfn: (value: T, key: string) => void): (data: Record<string, T>) => Record<string, T>;\nexport function forEach<T>(data: Record<string, T>, callbackfn: (value: T, key: string) => void): Record<string, T>;\nexport function forEach(...args: readonly unknown[]): unknown {\n return purry(forEachImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction groupByImplementation<T>(\n items: Iterable<T>,\n keySelector: (item: T, index: number) => string,\n): Partial<Record<string, T[]>> {\n return Object.groupBy(items, keySelector);\n}\n\n/**\n * Groups iterable items into arrays keyed by a selector function.\n *\n * @example\n * ```ts\n * groupBy(x => String(x.length), ['a', 'bb', 'ccc']); // { '1': ['a'], '2': ['bb'], '3': ['ccc'] }\n * groupBy(x => String(x.length))(['a', 'bb', 'ccc']); // { '1': ['a'], '2': ['bb'], '3': ['ccc'] }\n * ```\n */\nexport function groupBy<T>(\n keySelector: (item: T, index: number) => string,\n): (items: Iterable<T>) => Partial<Record<string, T[]>>;\nexport function groupBy<T>(\n items: Iterable<T>,\n keySelector: (item: T, index: number) => string,\n): Partial<Record<string, T[]>>;\nexport function groupBy(...args: readonly unknown[]): unknown {\n return purry(groupByImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction indexByImplementation<T>(\n data: Iterable<T>,\n keySelector: (item: T, index: number) => string,\n): Record<string, T> {\n const asArray = [...data];\n const len = asArray.length;\n const rtnObj: Record<string, T> = {};\n for (let i = 0; i < len; i += 1) {\n const value = asArray[i]!;\n rtnObj[keySelector(value, i)] = value;\n }\n return rtnObj;\n}\n\n/**\n * Indexes iterable items into an object keyed by a selector function.\n * Later items overwrite earlier ones that share the same key.\n *\n * @example\n * ```ts\n * indexBy(x => x.id, [{ id: 'a', v: 1 }, { id: 'b', v: 2 }]); // { a: { id: 'a', v: 1 }, b: { id: 'b', v: 2 } }\n * indexBy(x => x.id)([{ id: 'a', v: 1 }]); // { a: { id: 'a', v: 1 } }\n * ```\n */\nexport function indexBy<T>(keySelector: (item: T, index: number) => string): (data: Iterable<T>) => Record<string, T>;\nexport function indexBy<T>(data: Iterable<T>, keySelector: (item: T, index: number) => string): Record<string, T>;\nexport function indexBy(...args: readonly unknown[]): unknown {\n return purry(indexByImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction mapImplementation<T, U>(data: Record<string, T>, callbackfn: (value: T, key: string) => U): Record<string, U> {\n const entries = Object.entries(data);\n const len = entries.length;\n const newObj: Record<string, U> = {};\n for (let i = 0; i < len; i += 1) {\n const [k, v] = entries[i]!;\n newObj[k] = callbackfn(v, k);\n }\n return newObj;\n}\n\n/**\n * Maps over an object's own enumerable properties, transforming each value.\n *\n * @example\n * ```ts\n * map((v, k) => v * 2, { a: 1, b: 2 }); // { a: 2, b: 4 }\n * map(v => v * 2)({ a: 1, b: 2 }); // { a: 2, b: 4 }\n * ```\n */\nexport function map<T, U>(callbackfn: (value: T, key: string) => U): (data: Record<string, T>) => Record<string, U>;\nexport function map<T, U>(data: Record<string, T>, callbackfn: (value: T, key: string) => U): Record<string, U>;\nexport function map(...args: readonly unknown[]): unknown {\n return purry(mapImplementation, args);\n}\n","import type { Merge } from 'type-fest';\n\nimport { purry } from '../function';\n\nfunction mergeImplementation<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Obj, Other> {\n return { ...left, ...right } as unknown as Merge<Obj, Other>;\n}\n\n/**\n * Merges two objects, with properties from the right object taking precedence.\n *\n * @example\n * ```ts\n * merge({ a: 1 }, { b: 2 }); // { a: 1, b: 2 }\n * merge({ b: 3 })({ a: 1, b: 2 }); // { a: 1, b: 3 }\n * ```\n */\nexport function merge<Obj extends object, Other extends object>(right: Other): (left: Obj) => Merge<Obj, Other>;\nexport function merge<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Obj, Other>;\nexport function merge(...args: unknown[]): unknown {\n return purry(mergeImplementation, args);\n}\n\nfunction mergeLeftImplementation<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Other, Obj> {\n return { ...right, ...left } as unknown as Merge<Other, Obj>;\n}\n\nexport function mergeLeft<Obj extends object, Other extends object>(right: Other): (left: Obj) => Merge<Other, Obj>;\nexport function mergeLeft<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Other, Obj>;\nexport function mergeLeft(...args: unknown[]): unknown {\n return purry(mergeLeftImplementation, args);\n}\n\n/**\n * Like `merge`, but gives precedence to properties from the left object.\n *\n * @example\n * ```ts\n * merge.left({ a: 1 }, { b: 2 }); // { a: 1, b: 2 }\n * merge.left({ b: 3 })({ a: 1, b: 2 }); // { a: 1, b: 3 }\n * ```\n */\nmerge.left = mergeLeft;\n","import type { MergeDeep } from 'type-fest';\n\nimport { purry } from '../function';\n\n// TODO: move this somewhere common\nfunction isObjectType(data: unknown): data is object {\n return typeof data === 'object' && data !== null;\n}\n\nfunction mergeDeepImplementation<Left extends object, Right extends object>(\n left: Left,\n right: Right,\n): MergeDeep<Left, Right> {\n // start in the reverse direction so the keys in other that don't exist on obj are there to start with\n const nextObj = { ...right, ...left } as Record<string, unknown>;\n\n // then go through all the keys in obj\n for (const key of Object.keys(left)) {\n // skipping in no present on other\n // eslint-disable-next-line no-continue\n if (!Object.hasOwn(right, key)) continue;\n\n // apply recursively if both objects\n // @ts-expect-error\n const leftVal: unknown = left[key];\n // @ts-expect-error\n const rightVal: unknown = right[key];\n\n // but not if either is an array\n if (isObjectType(leftVal) && isObjectType(rightVal) && !Array.isArray(leftVal) && !Array.isArray(rightVal)) {\n nextObj[key] = mergeDeepImplementation(leftVal, rightVal);\n } else {\n // @ts-expect-error\n nextObj[key] = right[key];\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return nextObj as any;\n}\n\n/**\n * Recursively merges two objects, with properties from the right object taking precedence.\n *\n * @example\n * ```ts\n * mergeDeep({ a: { x: 1 } }, { a: { y: 2 }, b: 3 }); // { a: { x: 1, y: 2 }, b: 3 }\n * mergeDeep({ b: 3 })({ a: { x: 1 }, b: { y: 2 } }); // { a: { x: 1 }, b: 3 }\n * ```\n */\nexport function mergeDeep<Left extends object, Right extends object>(\n right: Right,\n): (left: Left) => MergeDeep<Left, Right>;\nexport function mergeDeep<Left extends object, Right extends object>(left: Left, right: Right): MergeDeep<Left, Right>;\nexport function mergeDeep(...args: unknown[]): unknown {\n return purry(mergeDeepImplementation, args);\n}\n\nfunction mergeDeepLeftImplementation<Left extends object, Right extends object>(\n left: Left,\n right: Right,\n): MergeDeep<Right, Left> {\n return mergeDeepImplementation(right, left);\n}\n\nfunction mergeDeepLeft<Left extends object, Right extends object>(right: Right): (left: Left) => MergeDeep<Right, Left>;\nfunction mergeDeepLeft<Left extends object, Right extends object>(left: Left, right: Right): MergeDeep<Right, Left>;\nfunction mergeDeepLeft(...args: unknown[]): unknown {\n return purry(mergeDeepLeftImplementation, args);\n}\n\n/**\n * Like `mergeDeep`, but gives precedence to properties from the left object.\n *\n * @example\n * ```ts\n * mergeDeep.left({ a: { x: 1 } }, { a: { y: 2 }, b: 3 }); // { a: { x: 1, y: 2 }, b: 3 }\n * mergeDeep.left({ b: 3 })({ a: { x: 1 }, b: { y: 2 } }); // { a: { x: 1 }, b: 3 }\n * ```\n */\nmergeDeep.left = mergeDeepLeft;\n","import { purry } from '../function/purry';\n\nfunction omitImplementation(data: Record<string, unknown>, keys: Iterable<string>): Record<string, unknown> {\n const keysSet = new Set(keys);\n\n const newObj: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (!keysSet.has(key)) {\n newObj[key] = value;\n }\n }\n\n return newObj;\n}\n\n/**\n * Creates a new object without the specified keys.\n *\n * @example\n * ```ts\n * omit(['b'], { a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * omit(['b'])({ a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * ```\n */\nexport function omit<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n keys: Iterable<Key>,\n): (data: Obj) => Omit<Obj, Key>;\nexport function omit<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n data: Obj,\n keys: Iterable<Key>,\n): Omit<Obj, Key>;\nexport function omit(...args: readonly unknown[]): unknown {\n return purry(omitImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction pickImplementation(data: Record<string, unknown>, keys: Iterable<string>): Record<string, unknown> {\n const keysSet = new Set(keys);\n\n const newObj: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (keysSet.has(key)) {\n newObj[key] = value;\n }\n }\n\n return newObj;\n}\n\n/**\n * Creates a new object containing only the specified keys.\n *\n * @example\n * ```ts\n * pick(['a', 'c'], { a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * pick(['a', 'c'])({ a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * ```\n */\nexport function pick<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n keys: Iterable<Key>,\n): (data: Obj) => Pick<Obj, Key>;\nexport function pick<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n data: Obj,\n keys: Iterable<Key>,\n): Pick<Obj, Key>;\nexport function pick(...args: readonly unknown[]): unknown {\n return purry(pickImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nexport function setImplementation<Obj extends object, Key extends keyof Obj>(obj: Obj, key: Key, value: Obj[Key]): Obj {\n return { ...obj, [key]: value };\n}\n\n/**\n * Returns a new object with a single property updated.\n *\n * @example\n * ```ts\n * set('b', 2, { a: 1 }); // { a: 1, b: 2 }\n * set('b', 2)({ a: 1 }); // { a: 1, b: 2 }\n * ```\n */\nexport function set<Obj extends object, Key extends keyof Obj>(key: Key, value: Obj[Key]): (obj: Obj) => Obj;\nexport function set<Obj extends object, Key extends keyof Obj>(obj: Obj, key: Key, value: Obj[Key]): Obj;\nexport function set(...args: readonly unknown[]): unknown {\n return purry(setImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction upsertImplementation<T>(\n data: Record<string, T>,\n key: string,\n fn: (value: T | null | undefined) => T,\n): Record<string, T> {\n if (!(key in data)) {\n const updatedValue = fn(undefined);\n return { ...data, [key]: updatedValue };\n }\n\n const value = data[key];\n\n // this checks for both `undefined` and `null`\n if (value == null) {\n const updatedValue = fn(null);\n return { ...data, [key]: updatedValue };\n }\n\n const updatedValue = fn(value);\n return { ...data, [key]: updatedValue };\n}\n\n/**\n * Updates or inserts a value in a record.\n * The callback receives the current value, `null` when the key exists but is nullish, or `undefined` when the key is absent.\n *\n * @example\n * ```ts\n * upsert('a', v => (v ?? 0) + 1, { a: 1 }); // { a: 2 }\n * upsert('b', () => 0)({ a: 1 }); // { a: 1, b: 0 }\n * ```\n */\nexport function upsert<T>(\n key: string,\n fn: (value: T | null | undefined) => T,\n): (data: Record<string, T>) => Record<string, T>;\nexport function upsert<T>(\n data: Record<string, T>,\n key: string,\n fn: (value: T | null | undefined) => T,\n): Record<string, T>;\nexport function upsert(...args: readonly unknown[]): unknown {\n return purry(upsertImplementation, args);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["purry","purry","purry","purry","purry","purry","purry","purry","purry","purry","purry"],"sources":["../../src/object/_globalAliases.ts","../../src/object/clone.ts","../../src/object/evolve.ts","../../src/object/forEach.ts","../../src/object/groupBy.ts","../../src/object/indexBy.ts","../../src/object/map.ts","../../src/object/merge.ts","../../src/object/mergeDeep.ts","../../src/object/omit.ts","../../src/object/pick.ts","../../src/object/set.ts","../../src/object/upsert.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/prefer-destructuring */\n\n/**\n * Creates an object from an iterable of key-value pairs.\n * @function\n *\n * @example\n * ```ts\n * fromEntries([['a', 1], ['b', 2]]); // { a: 1, b: 2 }\n * ```\n */\nexport const fromEntries = Object.fromEntries;\n\n/**\n * Checks whether an object has the specified property as its own property.\n * @function\n *\n * @example\n * ```ts\n * hasOwn({ a: 1 }, 'a'); // true\n * hasOwn({ a: 1 }, 'toString'); // false\n * ```\n */\nexport const hasOwn = Object.hasOwn;\n\n/**\n * Determines whether two values are the same value.\n * @function\n *\n * @example\n * ```ts\n * is(NaN, NaN); // true\n * is(0, -0); // false\n * ```\n */\nexport const is = Object.is;\n\n/**\n * Returns an array of an object's own enumerable string-keyed property names.\n *\n * @example\n * ```ts\n * keys({ a: 1, b: 2 }); // ['a', 'b']\n * ```\n */\nexport function keys(obj: object): string[] {\n // Object.keys takes `{}` and not `object`, which is not ideal\n return Object.keys(obj);\n}\n\n/**\n * Returns an array of an object's own enumerable property values.\n * @function\n *\n * @example\n * ```ts\n * values({ a: 1, b: 2 }); // [1, 2]\n * ```\n */\nexport const values = Object.values;\n\n/**\n * Returns an array of an object's own enumerable string-keyed property key-value pairs.\n * @function\n *\n * @example\n * ```ts\n * entries({ a: 1, b: 2 }); // [['a', 1], ['b', 2]]\n * ```\n */\nexport const entries = Object.entries;\n","/**\n * Creates a deep clone of a value using `structuredClone`.\n *\n * @example\n * ```ts\n * clone({ a: 1, b: { c: 2 } }); // { a: 1, b: { c: 2 } }\n * ```\n */\nexport function clone<T>(data: T): T {\n return globalThis.structuredClone(data);\n}\n","import type { Simplify } from 'type-fest';\n\nimport { purry } from '../function';\n\ntype Evolved<Obj extends object, Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown }> = {\n [K in keyof Obj]: Obj extends Record<K, infer T>\n ? Evolver extends Record<K, (value: Obj[K]) => infer R>\n ? R extends T\n ? T\n : unknown\n : never\n : never;\n};\n\nfunction evolveImplementation<\n Obj extends object,\n Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown },\n>(obj: Obj, evolver: Evolver): Simplify<Evolved<Obj, Evolver>> {\n const evolved = (Object.entries(evolver) as [keyof Obj, (value: unknown) => unknown][]).reduce<\n Partial<Record<keyof Obj, any>>\n >((acc, [k, fn]) => {\n // key must exist on obj, otherwise no value\n if (Object.hasOwn(obj, k)) {\n acc[k] = fn(obj[k]);\n }\n return acc;\n }, {});\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return { ...obj, ...evolved } as any;\n}\n\n/**\n * Transforms selected properties of an object using per-key functions.\n * Only keys present on the object are evolved.\n *\n * @example\n * ```ts\n * evolve({ count: n => n + 1 })({ count: 1, name: 'Ada' }); // { count: 2, name: 'Ada' }\n * evolve({ count: 1, name: 'Ada' }, { count: n => n + 1 }); // { count: 2, name: 'Ada' }\n * ```\n */\nexport function evolve<Obj extends object, Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown }>(\n evolver: Evolver,\n): (obj: Obj) => Simplify<Evolved<Obj, Evolver>>;\nexport function evolve<Obj extends object, Evolver extends { [K in keyof Partial<Obj>]: (value: Obj[K]) => unknown }>(\n obj: Obj,\n evolver: Evolver,\n): Simplify<Evolved<Obj, Evolver>>;\nexport function evolve(...args: unknown[]): unknown {\n return purry(evolveImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction forEachImplementation<T>(\n data: Record<string, T>,\n callbackfn: (value: T, key: string) => void,\n): Record<string, T> {\n for (const [k, v] of Object.entries(data)) {\n callbackfn(v, k);\n }\n return data;\n}\n\n/**\n * Iterates over an object's own enumerable properties, invoking a callback for each entry.\n * Returns the original object.\n *\n * @example\n * ```ts\n * forEach((v, k) => console.log(k, v))({ a: 1, b: 2 });\n * forEach({ a: 1, b: 2 }, (v, k) => console.log(k, v));\n * ```\n */\nexport function forEach<T>(callbackfn: (value: T, key: string) => void): (data: Record<string, T>) => Record<string, T>;\nexport function forEach<T>(data: Record<string, T>, callbackfn: (value: T, key: string) => void): Record<string, T>;\nexport function forEach(...args: readonly unknown[]): unknown {\n return purry(forEachImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction groupByImplementation<T>(\n items: Iterable<T>,\n keySelector: (item: T, index: number) => string,\n): Partial<Record<string, T[]>> {\n return Object.groupBy(items, keySelector);\n}\n\n/**\n * Groups iterable items into arrays keyed by a selector function.\n *\n * @example\n * ```ts\n * groupBy(x => String(x.length), ['a', 'bb', 'ccc']); // { '1': ['a'], '2': ['bb'], '3': ['ccc'] }\n * groupBy(x => String(x.length))(['a', 'bb', 'ccc']); // { '1': ['a'], '2': ['bb'], '3': ['ccc'] }\n * ```\n */\nexport function groupBy<T>(\n keySelector: (item: T, index: number) => string,\n): (items: Iterable<T>) => Partial<Record<string, T[]>>;\nexport function groupBy<T>(\n items: Iterable<T>,\n keySelector: (item: T, index: number) => string,\n): Partial<Record<string, T[]>>;\nexport function groupBy(...args: readonly unknown[]): unknown {\n return purry(groupByImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction indexByImplementation<T>(\n data: Iterable<T>,\n keySelector: (item: T, index: number) => string,\n): Record<string, T> {\n const asArray = [...data];\n const len = asArray.length;\n const rtnObj: Record<string, T> = {};\n for (let i = 0; i < len; i += 1) {\n const value = asArray[i]!;\n rtnObj[keySelector(value, i)] = value;\n }\n return rtnObj;\n}\n\n/**\n * Indexes iterable items into an object keyed by a selector function.\n * Later items overwrite earlier ones that share the same key.\n *\n * @example\n * ```ts\n * indexBy(x => x.id, [{ id: 'a', v: 1 }, { id: 'b', v: 2 }]); // { a: { id: 'a', v: 1 }, b: { id: 'b', v: 2 } }\n * indexBy(x => x.id)([{ id: 'a', v: 1 }]); // { a: { id: 'a', v: 1 } }\n * ```\n */\nexport function indexBy<T>(keySelector: (item: T, index: number) => string): (data: Iterable<T>) => Record<string, T>;\nexport function indexBy<T>(data: Iterable<T>, keySelector: (item: T, index: number) => string): Record<string, T>;\nexport function indexBy(...args: readonly unknown[]): unknown {\n return purry(indexByImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction mapImplementation<T, U>(data: Record<string, T>, callbackfn: (value: T, key: string) => U): Record<string, U> {\n const entries = Object.entries(data);\n const len = entries.length;\n const newObj: Record<string, U> = {};\n for (let i = 0; i < len; i += 1) {\n const [k, v] = entries[i]!;\n newObj[k] = callbackfn(v, k);\n }\n return newObj;\n}\n\n/**\n * Maps over an object's own enumerable properties, transforming each value.\n *\n * @example\n * ```ts\n * map((v, k) => v * 2, { a: 1, b: 2 }); // { a: 2, b: 4 }\n * map(v => v * 2)({ a: 1, b: 2 }); // { a: 2, b: 4 }\n * ```\n */\nexport function map<T, U>(callbackfn: (value: T, key: string) => U): (data: Record<string, T>) => Record<string, U>;\nexport function map<T, U>(data: Record<string, T>, callbackfn: (value: T, key: string) => U): Record<string, U>;\nexport function map(...args: readonly unknown[]): unknown {\n return purry(mapImplementation, args);\n}\n","import type { Merge } from 'type-fest';\n\nimport { purry } from '../function';\n\nfunction mergeImplementation<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Obj, Other> {\n return { ...left, ...right } as unknown as Merge<Obj, Other>;\n}\n\n/**\n * Merges two objects, with properties from the right object taking precedence.\n *\n * @example\n * ```ts\n * merge({ a: 1 }, { b: 2 }); // { a: 1, b: 2 }\n * merge({ b: 3 })({ a: 1, b: 2 }); // { a: 1, b: 3 }\n * ```\n */\nexport function merge<Obj extends object, Other extends object>(right: Other): (left: Obj) => Merge<Obj, Other>;\nexport function merge<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Obj, Other>;\nexport function merge(...args: unknown[]): unknown {\n return purry(mergeImplementation, args);\n}\n\nfunction mergeLeftImplementation<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Other, Obj> {\n return { ...right, ...left } as unknown as Merge<Other, Obj>;\n}\n\nexport function mergeLeft<Obj extends object, Other extends object>(right: Other): (left: Obj) => Merge<Other, Obj>;\nexport function mergeLeft<Obj extends object, Other extends object>(left: Obj, right: Other): Merge<Other, Obj>;\nexport function mergeLeft(...args: unknown[]): unknown {\n return purry(mergeLeftImplementation, args);\n}\n\n/**\n * Like `merge`, but gives precedence to properties from the left object.\n *\n * @example\n * ```ts\n * merge.left({ a: 1 }, { b: 2 }); // { a: 1, b: 2 }\n * merge.left({ b: 3 })({ a: 1, b: 2 }); // { a: 1, b: 3 }\n * ```\n */\nmerge.left = mergeLeft;\n","import type { MergeDeep } from 'type-fest';\n\nimport { purry } from '../function';\n\n// TODO: move this somewhere common\nfunction isObjectType(data: unknown): data is object {\n return typeof data === 'object' && data !== null;\n}\n\nfunction mergeDeepImplementation<Left extends object, Right extends object>(\n left: Left,\n right: Right,\n): MergeDeep<Left, Right> {\n // start in the reverse direction so the keys in other that don't exist on obj are there to start with\n const nextObj = { ...right, ...left } as Record<string, unknown>;\n\n // then go through all the keys in obj\n for (const key of Object.keys(left)) {\n // skipping in no present on other\n // eslint-disable-next-line no-continue\n if (!Object.hasOwn(right, key)) continue;\n\n // apply recursively if both objects\n // @ts-expect-error\n const leftVal: unknown = left[key];\n // @ts-expect-error\n const rightVal: unknown = right[key];\n\n // but not if either is an array\n if (isObjectType(leftVal) && isObjectType(rightVal) && !Array.isArray(leftVal) && !Array.isArray(rightVal)) {\n nextObj[key] = mergeDeepImplementation(leftVal, rightVal);\n } else {\n // @ts-expect-error\n nextObj[key] = right[key];\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return nextObj as any;\n}\n\n/**\n * Recursively merges two objects, with properties from the right object taking precedence.\n *\n * @example\n * ```ts\n * mergeDeep({ a: { x: 1 } }, { a: { y: 2 }, b: 3 }); // { a: { x: 1, y: 2 }, b: 3 }\n * mergeDeep({ b: 3 })({ a: { x: 1 }, b: { y: 2 } }); // { a: { x: 1 }, b: 3 }\n * ```\n */\nexport function mergeDeep<Left extends object, Right extends object>(\n right: Right,\n): (left: Left) => MergeDeep<Left, Right>;\nexport function mergeDeep<Left extends object, Right extends object>(left: Left, right: Right): MergeDeep<Left, Right>;\nexport function mergeDeep(...args: unknown[]): unknown {\n return purry(mergeDeepImplementation, args);\n}\n\nfunction mergeDeepLeftImplementation<Left extends object, Right extends object>(\n left: Left,\n right: Right,\n): MergeDeep<Right, Left> {\n return mergeDeepImplementation(right, left);\n}\n\nfunction mergeDeepLeft<Left extends object, Right extends object>(right: Right): (left: Left) => MergeDeep<Right, Left>;\nfunction mergeDeepLeft<Left extends object, Right extends object>(left: Left, right: Right): MergeDeep<Right, Left>;\nfunction mergeDeepLeft(...args: unknown[]): unknown {\n return purry(mergeDeepLeftImplementation, args);\n}\n\n/**\n * Like `mergeDeep`, but gives precedence to properties from the left object.\n *\n * @example\n * ```ts\n * mergeDeep.left({ a: { x: 1 } }, { a: { y: 2 }, b: 3 }); // { a: { x: 1, y: 2 }, b: 3 }\n * mergeDeep.left({ b: 3 })({ a: { x: 1 }, b: { y: 2 } }); // { a: { x: 1 }, b: 3 }\n * ```\n */\nmergeDeep.left = mergeDeepLeft;\n","import { purry } from '../function/purry';\n\nfunction omitImplementation(data: Record<string, unknown>, keys: Iterable<string>): Record<string, unknown> {\n const keysSet = new Set(keys);\n\n const newObj: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (!keysSet.has(key)) {\n newObj[key] = value;\n }\n }\n\n return newObj;\n}\n\n/**\n * Creates a new object without the specified keys.\n *\n * @example\n * ```ts\n * omit(['b'], { a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * omit(['b'])({ a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * ```\n */\nexport function omit<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n keys: Iterable<Key>,\n): (data: Obj) => Omit<Obj, Key>;\nexport function omit<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n data: Obj,\n keys: Iterable<Key>,\n): Omit<Obj, Key>;\nexport function omit(...args: readonly unknown[]): unknown {\n return purry(omitImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction pickImplementation(data: Record<string, unknown>, keys: Iterable<string>): Record<string, unknown> {\n const keysSet = new Set(keys);\n\n const newObj: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (keysSet.has(key)) {\n newObj[key] = value;\n }\n }\n\n return newObj;\n}\n\n/**\n * Creates a new object containing only the specified keys.\n *\n * @example\n * ```ts\n * pick(['a', 'c'], { a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * pick(['a', 'c'])({ a: 1, b: 2, c: 3 }); // { a: 1, c: 3 }\n * ```\n */\nexport function pick<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n keys: Iterable<Key>,\n): (data: Obj) => Pick<Obj, Key>;\nexport function pick<Obj extends Record<string, unknown>, Key extends keyof Obj>(\n data: Obj,\n keys: Iterable<Key>,\n): Pick<Obj, Key>;\nexport function pick(...args: readonly unknown[]): unknown {\n return purry(pickImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nexport function setImplementation<Obj extends object, Key extends keyof Obj>(obj: Obj, key: Key, value: Obj[Key]): Obj {\n return { ...obj, [key]: value };\n}\n\n/**\n * Returns a new object with a single property updated.\n *\n * @example\n * ```ts\n * set('b', 2, { a: 1 }); // { a: 1, b: 2 }\n * set('b', 2)({ a: 1 }); // { a: 1, b: 2 }\n * ```\n */\nexport function set<Obj extends object, Key extends keyof Obj>(key: Key, value: Obj[Key]): (obj: Obj) => Obj;\nexport function set<Obj extends object, Key extends keyof Obj>(obj: Obj, key: Key, value: Obj[Key]): Obj;\nexport function set(...args: readonly unknown[]): unknown {\n return purry(setImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction upsertImplementation<T>(\n data: Record<string, T>,\n key: string,\n fn: (value: T | null | undefined) => T,\n): Record<string, T> {\n if (!(key in data)) {\n const updatedValue = fn(undefined);\n return { ...data, [key]: updatedValue };\n }\n\n const value = data[key];\n\n // this checks for both `undefined` and `null`\n if (value == null) {\n const updatedValue = fn(null);\n return { ...data, [key]: updatedValue };\n }\n\n const updatedValue = fn(value);\n return { ...data, [key]: updatedValue };\n}\n\n/**\n * Updates or inserts a value in a record.\n * The callback receives the current value, `null` when the key exists but is nullish, or `undefined` when the key is absent.\n *\n * @example\n * ```ts\n * upsert('a', v => (v ?? 0) + 1, { a: 1 }); // { a: 2 }\n * upsert('b', () => 0)({ a: 1 }); // { a: 1, b: 0 }\n * ```\n */\nexport function upsert<T>(\n key: string,\n fn: (value: T | null | undefined) => T,\n): (data: Record<string, T>) => Record<string, T>;\nexport function upsert<T>(\n data: Record<string, T>,\n key: string,\n fn: (value: T | null | undefined) => T,\n): Record<string, T>;\nexport function upsert(...args: readonly unknown[]): unknown {\n return purry(upsertImplementation, args);\n}\n"],"mappings":"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"}
|
package/dist/object/index.d.cts
CHANGED
|
@@ -41,17 +41,13 @@ declare const hasOwn: (o: object, v: PropertyKey) => boolean;
|
|
|
41
41
|
declare const is: (value1: any, value2: any) => boolean;
|
|
42
42
|
/**
|
|
43
43
|
* Returns an array of an object's own enumerable string-keyed property names.
|
|
44
|
-
* @function
|
|
45
44
|
*
|
|
46
45
|
* @example
|
|
47
46
|
* ```ts
|
|
48
47
|
* keys({ a: 1, b: 2 }); // ['a', 'b']
|
|
49
48
|
* ```
|
|
50
49
|
*/
|
|
51
|
-
declare
|
|
52
|
-
(o: object): string[];
|
|
53
|
-
(o: {}): string[];
|
|
54
|
-
};
|
|
50
|
+
declare function keys(obj: object): string[];
|
|
55
51
|
/**
|
|
56
52
|
* Returns an array of an object's own enumerable property values.
|
|
57
53
|
* @function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/object/_globalAliases.ts","../../src/object/clone.ts","../../src/object/evolve.ts","../../src/object/forEach.ts","../../src/object/get.ts","../../src/object/groupBy.ts","../../src/object/indexBy.ts","../../src/object/map.ts","../../src/object/merge.ts","../../src/object/mergeDeep.ts","../../src/object/omit.ts","../../src/object/pick.ts","../../src/object/set.ts","../../src/object/upsert.ts"],"mappings":";;;;;;;;AAWA;;;;;cAAa,WAAA;EAAA;;;;;;;;;;;;;;;cAYA,MAAA,GAAM,CAAA,UAAA,CAAA,EAAA,WAAA;;;;;;;;AAAA;AAYnB;;cAAa,EAAA,GAAE,MAAA,OAAA,MAAA;;AAAA;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/object/_globalAliases.ts","../../src/object/clone.ts","../../src/object/evolve.ts","../../src/object/forEach.ts","../../src/object/get.ts","../../src/object/groupBy.ts","../../src/object/indexBy.ts","../../src/object/map.ts","../../src/object/merge.ts","../../src/object/mergeDeep.ts","../../src/object/omit.ts","../../src/object/pick.ts","../../src/object/set.ts","../../src/object/upsert.ts"],"mappings":"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"}
|
package/dist/object/index.d.mts
CHANGED
|
@@ -41,17 +41,13 @@ declare const hasOwn: (o: object, v: PropertyKey) => boolean;
|
|
|
41
41
|
declare const is: (value1: any, value2: any) => boolean;
|
|
42
42
|
/**
|
|
43
43
|
* Returns an array of an object's own enumerable string-keyed property names.
|
|
44
|
-
* @function
|
|
45
44
|
*
|
|
46
45
|
* @example
|
|
47
46
|
* ```ts
|
|
48
47
|
* keys({ a: 1, b: 2 }); // ['a', 'b']
|
|
49
48
|
* ```
|
|
50
49
|
*/
|
|
51
|
-
declare
|
|
52
|
-
(o: object): string[];
|
|
53
|
-
(o: {}): string[];
|
|
54
|
-
};
|
|
50
|
+
declare function keys(obj: object): string[];
|
|
55
51
|
/**
|
|
56
52
|
* Returns an array of an object's own enumerable property values.
|
|
57
53
|
* @function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/object/_globalAliases.ts","../../src/object/clone.ts","../../src/object/evolve.ts","../../src/object/forEach.ts","../../src/object/get.ts","../../src/object/groupBy.ts","../../src/object/indexBy.ts","../../src/object/map.ts","../../src/object/merge.ts","../../src/object/mergeDeep.ts","../../src/object/omit.ts","../../src/object/pick.ts","../../src/object/set.ts","../../src/object/upsert.ts"],"mappings":";;;;;;;;AAWA;;;;;cAAa,WAAA;EAAA;;;;;;;;;;;;;;;cAYA,MAAA,GAAM,CAAA,UAAA,CAAA,EAAA,WAAA;;;;;;;;AAAA;AAYnB;;cAAa,EAAA,GAAE,MAAA,OAAA,MAAA;;AAAA;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/object/_globalAliases.ts","../../src/object/clone.ts","../../src/object/evolve.ts","../../src/object/forEach.ts","../../src/object/get.ts","../../src/object/groupBy.ts","../../src/object/indexBy.ts","../../src/object/map.ts","../../src/object/merge.ts","../../src/object/mergeDeep.ts","../../src/object/omit.ts","../../src/object/pick.ts","../../src/object/set.ts","../../src/object/upsert.ts"],"mappings":"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"}
|
package/dist/object/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../function-
|
|
1
|
+
import "../function-DI38qfqp.mjs";
|
|
2
2
|
import { t as purry } from "../purry-DXnhXie9.mjs";
|
|
3
3
|
import { t as get } from "../get-Dv6ejLZg.mjs";
|
|
4
4
|
//#region src/object/_globalAliases.ts
|
|
@@ -36,14 +36,15 @@ const hasOwn = Object.hasOwn;
|
|
|
36
36
|
const is = Object.is;
|
|
37
37
|
/**
|
|
38
38
|
* Returns an array of an object's own enumerable string-keyed property names.
|
|
39
|
-
* @function
|
|
40
39
|
*
|
|
41
40
|
* @example
|
|
42
41
|
* ```ts
|
|
43
42
|
* keys({ a: 1, b: 2 }); // ['a', 'b']
|
|
44
43
|
* ```
|
|
45
44
|
*/
|
|
46
|
-
|
|
45
|
+
function keys(obj) {
|
|
46
|
+
return Object.keys(obj);
|
|
47
|
+
}
|
|
47
48
|
/**
|
|
48
49
|
* Returns an array of an object's own enumerable property values.
|
|
49
50
|
* @function
|