Load partial values from multiple sources (files, packages, memory) into a single Jsonic parse result.
![]() |
This open source module is sponsored and supported by Voxgig. |
|---|
Documentation is available for both language implementations:
- TypeScript:
doc/multisource-ts.md - Go:
doc/multisource-go.md
// file: foo.jsonic
// a:1
import { Jsonic } from 'jsonic'
import MultiSource from '@jsonic/multisource'
import { makeFileResolver } from '@jsonic/multisource/resolver/file'
const j = Jsonic.make().use(MultiSource, {
resolver: makeFileResolver(),
})
j('@"foo.jsonic" b:2')
// => { a: 1, b: 2 }import (
jsonic "github.com/jsonicjs/jsonic/go"
multisource "github.com/jsonicjs/multisource/go"
)
files := map[string]string{"foo.jsonic": "a:1"}
j := multisource.MakeJsonic(multisource.MultiSourceOptions{
Resolver: multisource.MakeMemResolver(files),
})
out, _ := j.Parse(`{@foo.jsonic, b:2}`)
// => map[a:1 b:2]MIT © Richard Rodger and contributors.
