@@ -13,8 +13,8 @@ const DEFAULTS = {
1313
1414/* --- Functional Utilities --- */
1515const map = fn => x => ( x . map ? x . map ( fn ) : fn ( x ) ) // FIXME remove check
16- const chain = fn => m => m . chain ( fn )
1716const join = m => m . join ( )
17+ // const chain = fn => m => m.chain(fn)
1818const compose = ( ...fns ) => ( res , ...args ) =>
1919 fns . reduceRight ( ( accum , next ) => next ( accum , ...args ) , res )
2020
@@ -28,29 +28,24 @@ const createRootObj = compose(
2828 Number
2929)
3030
31- const normalizeField = delimiter =>
32- compose (
33- join ,
34- chain ( m =>
35- Maybe . of ( m )
36- . map ( m => m . indexOf ( delimiter ) > - 1 )
37- . map ( b => ( b ? m : m + delimiter + m ) )
38- . map ( split ( delimiter ) )
39- ) ,
40- Maybe . of
41- )
31+ const normalizeField = delimiter => m =>
32+ Maybe . of ( m )
33+ . map ( m => m . indexOf ( delimiter ) > - 1 )
34+ . map ( b => ( b ? m : m + delimiter + m ) )
35+ . map ( split ( delimiter ) )
4236
4337const getMapSpec = delimiter => mapping =>
4438 Maybe . of ( mapping )
4539 . map ( Array . isArray )
4640 . map ( b => ( b ? Either . of ( mapping ) : left ( mapping ) ) )
4741 . map (
4842 either (
49- normalizeField ( delimiter ) ,
50- reduce ( ( spec , field ) => {
51- const [ source , target ] = normalizeField ( delimiter ) ( field )
52- return [ [ ...spec [ 0 ] , source ] , target ]
53- } ) ( [ [ ] , null ] )
43+ compose ( join , normalizeField ( delimiter ) ) ,
44+ reduce ( ( spec , field ) =>
45+ normalizeField ( delimiter ) ( field )
46+ . map ( ( [ source , target ] ) => [ [ ...spec [ 0 ] , source ] , target ] )
47+ . join ( )
48+ ) ( [ [ ] , null ] )
5449 )
5550 )
5651
0 commit comments