UNPKG

rescript-relay

Version:
44 lines (39 loc) 2.22 kB
// Generated by ReScript, PLEASE EDIT WITH CARE 'use strict'; let React = require("react"); let ReactRelay = require("react-relay"); let RelayRuntime = require("relay-runtime"); let Primitive_option = require("@rescript/runtime/lib/js/Primitive_option.js"); function commitMutation(convertVariables, node, convertResponse, convertWrapRawResponse) { return (environment, variables, optimisticUpdater, optimisticResponse, updater, onCompleted, onError, uploadables) => RelayRuntime.commitMutation(environment, { mutation: node, variables: convertVariables(variables), onCompleted: onCompleted !== undefined ? (res, err) => onCompleted(convertResponse(res), (err == null) ? undefined : Primitive_option.some(err)) : undefined, onError: onError, optimisticResponse: optimisticResponse !== undefined ? Primitive_option.some(convertWrapRawResponse(Primitive_option.valFromOption(optimisticResponse))) : undefined, optimisticUpdater: optimisticUpdater, updater: updater !== undefined ? (store, response) => updater(store, convertResponse(response)) : undefined, uploadables: uploadables }); } function useMutation(convertVariables, node, convertResponse, convertWrapRawResponse) { return () => { let match = ReactRelay.useMutation(node); let mutate = match[0]; return [ React.useMemo(() => ((variables, optimisticUpdater, optimisticResponse, updater, onCompleted, onError, uploadables) => mutate({ onError: onError, onCompleted: onCompleted !== undefined ? (res, err) => onCompleted(convertResponse(res), (err == null) ? undefined : Primitive_option.some(err)) : undefined, optimisticResponse: optimisticResponse !== undefined ? Primitive_option.some(convertWrapRawResponse(Primitive_option.valFromOption(optimisticResponse))) : undefined, optimisticUpdater: optimisticUpdater, updater: updater !== undefined ? (store, response) => updater(store, convertResponse(response)) : undefined, variables: convertVariables(variables), uploadables: uploadables })), [mutate]), match[1] ]; }; } exports.commitMutation = commitMutation; exports.useMutation = useMutation; /* react Not a pure module */