How to use the graphql-relay.connectionFromPromisedArray function in graphql-relay

To help you get started, we’ve selected a few graphql-relay examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github artsy / metaphysics / src / schema / v1 / gene_families.ts View on Github external
resolve: (_root, options, { geneFamiliesLoader }) => {
    const gravityOptions = Object.assign(
      {},
      convertConnectionArgsToGravityArgs(options),
      {
        sort: "position",
      }
    )
    return connectionFromPromisedArray(
      geneFamiliesLoader(gravityOptions),
      // FIXME: Need to type properly
      // @ts-ignore
      gravityOptions
    )
  },
}
github carlipa / aurora-graphql / src / factories / classes.fields.factory / getQueryFields.js View on Github external
// TODO better implementation
          if (safeFilter.eq) {
            safeFilter.in = [safeFilter.eq];
            delete safeFilter.eq;
          }

          query[`data.${fieldName}`] = mapKeys(safeFilter, (value, key) => `$${key}`);
        });

        // Merge orderBy's
        const sort = reduce(args.orderBy, (soFar, value) => Object.assign(soFar, value), {});

        // Get all the data (ids only), using the optional sort
        const getDataPromise = classesFieldsHelper._getAllClassData(className, { query, sort });
        // Apply "connectionFromPromisedArray" to the result, which will filter the results
        return connectionFromPromisedArray(getDataPromise, args)
          .then((result) => {
            // Then, we query the real data
            const classesIds = map(result.edges, (edge) => edge.node._id);
            const edgesPromise = classesFieldsHelper._getManyClassDataByIds(className, classesIds)
              .then((results) => map(result.edges, (edge) => ({
                ...edge,
                node: find(results, { mongoId: edge.node._id.toString() }),
              })));

            // Total count
            const countPromise = getDataPromise.then((results) => results.length);

            return Promise.props({ edges: edgesPromise, totalCount: countPromise })
              .then(({ edges, totalCount }) => ({
                ...result,
                edges,
github MattMcFarland / sequelize-relay / src / data / __tests__ / connections.js View on Github external
resolve: (root, args) =>
        connectionFromPromisedArray(resolveArrayByClass(Person, true), args)
    },
github Pathgather / smashgather / server / server / data / schema.js View on Github external
      resolve: (_, args) => connectionFromPromisedArray(getCharacters(), args),
    },
github doabit / react-relay-graphql-starter-kit / server / data / schema.js View on Github external
resolve: (person, args) => {
          return connectionFromPromisedArray(
            resolveArrayData(person.getPosts(), true), args
          )
        }
      }
github joshblack / build-a-graphql-server / index.js View on Github external
      resolve: (_, args) => connectionFromPromisedArray(
        getVideos(),
        args
      ),
    },
github bitriddler / VineRelayStore / server / graphql / resolvers / categoriesResolver.js View on Github external
  resolve: (_, { slug, ...args }, { viewer }) => connectionFromPromisedArray(
    categoryRepository.query(viewer, { slug }),
    args
  ),
});
github patrickshaughnessy / PokeAPI-GraphQL / data / schema.js View on Github external
resolve: (obj, args) => {
        return connectionFromPromisedArray(generateResolvedPromisedArray(obj, 'games', 'game'), args);
      }
    },
github drupal-graphql / drupal-decoupled-app / server / schema / queries / article.js View on Github external
resolve : async (_, { title, ...args }) => {

    const conditions = {
      title,
    };

    const [
      connection,
      count,
    ] = await Promise.all([
      connectionFromPromisedArray(getAllTagsByChar(conditions), args),
    ]);

    return ({
      ...connection,
      count,
    });
  },
};
github yahoohung / loopback-graphql-starter / modules / loopback-graphql-relay / src / schema / mutation / getRemoteMethodMutations.js View on Github external
.then(() => {

                                let ctxOptions = { accessToken: context.req.accessToken }
                                let wrap = promisify(model[method.name](params, ctxOptions));

                                if (typeObj.list) {
                                    return connectionFromPromisedArray(wrap, args, model);
                                } else {
                                    return wrap;
                                }

                            })
                            .catch((err) => {