4.0.1 • Published 1 month ago

@qiwi/uniconfig-plugin-api-file v4.0.1

Weekly downloads
17
License
MIT
Repository
github
Last release
1 month ago

@qiwi/uniconfig-plugin-api-file

Uniconfig File API plugin

Install

  npm i @qiwi/uniconfig-plugin-api-file
  yarn add @qiwi/uniconfig-plugin-api-file

Usage

import uniconfig, {rollupPlugin} from '@qiwi/uniconfig-core'
import uniconfigFileApiPlugin from '@qiwi/uniconfig-plugin-api-file'
import uniconfigJsonParserPlugin from '@qiwi/uniconfig-plugin-parser-json'
    
rollupPlugin(uniconfigFileApiPlugin)
rollupPlugin(uniconfigJsonParserPlugin)

const target = './foo.json'
/** foo.json content:
{
  "foo": "bar"
}
*/

const config = uniconfig({
  data: {
    someParam: '$fromFile:foo'
  },
  source: {
    fromFile: {
      data: '<some path>',
      pipeline: 'file>json'
    }
  }
}, {
  mode: 'sync',
  pipeline: 'datatree'
})    

config.get('someParam') // "bar"

const missingTarget = './foo-missing.json' // this file does not exist
const target2 = './foo2.json'
/** foo2.json content:
 {
  "foo2": "bar2"
}
 */

const config = uniconfig({
  data: {
    someParam: '$fromFile:foo'
  },
  source: {
    fromFile: {
      data: [missingTarget, target2, target], // in this mode the content of the first existing file is returned
      pipeline: 'file>json'
    }
  }
}, {
  mode: 'sync',
  pipeline: 'datatree'
})

config.get('someParam') // "bar2"
4.0.1

1 month ago

3.6.0

8 months ago

4.0.0

8 months ago

3.5.5

2 years ago

3.5.4

2 years ago

3.5.3

3 years ago

3.5.2

3 years ago

3.5.1

4 years ago

3.3.1

4 years ago

3.3.0

4 years ago

3.2.2

4 years ago

3.2.1

5 years ago

3.0.1

5 years ago

3.0.0

5 years ago

2.22.2

5 years ago

2.22.1

5 years ago

2.21.1

5 years ago

2.1.1

6 years ago

2.1.0

6 years ago

2.0.2

6 years ago

2.0.1

6 years ago

2.0.0

6 years ago

1.21.0

6 years ago

1.20.0

6 years ago

1.19.0

6 years ago