npm.io
0.0.2 • Published 9 years ago

resolve-object

Licence
MIT
Version
0.0.2
Deps
0
Vulns
0
Weekly
0
Stars
2

graphql-like schemaless object resolver

const resolver = {
  a: {
    b: function () {
      return Promise.resolve({
        c: function() {
          return Promise.resolve(42);
        },
      });
    }
  },
};

const resolveObject = require('.');
const assert = require('assert');

resolveObject(resolver, [
  {
    name: 'a',
    include: [
      {
        name: 'b',
        include: [ 'c' ]
      }
    ]
  }
]).then(obj => assert.deepEqual(obj, {
  a: {
    b: {
      c: 42
    },
  },
}));

More: examples.

License: MIT