UNPKG

@foxy.io/sdk

Version:

Universal SDK for a full server-side and a limited in-browser access to Foxy hAPI.

31 lines (30 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.applyEdit = exports.setData = exports.setErrors = exports.setFailure = exports.validate = exports.clearData = exports.clearEdits = exports.clearErrors = exports.clearFailure = void 0; const xstate_1 = require("xstate"); /** XState action that clears last request's failure info. */ exports.clearFailure = xstate_1.assign({ failure: null }); /** XState action that clears all validation errors. */ exports.clearErrors = xstate_1.assign({ errors: [] }); /** XState action that undoes all local changes to the resource. */ exports.clearEdits = xstate_1.assign({ edits: null }); /** XState action that removes resource snapshot. */ exports.clearData = xstate_1.assign({ data: null }); /** Placeholder for XState action that validates data and changes to it, setting errors array. */ exports.validate = exports.clearErrors; /** XState action that stores non-v8n-related request rejection info in context. */ exports.setFailure = xstate_1.assign({ failure: (_, evt) => evt.data, }); /** XState action that stores v8n-related request rejection info in context. */ exports.setErrors = xstate_1.assign({ errors: (_, evt) => evt.data, }); /** XState action that stores resource data passed with SET_DATA event. */ exports.setData = xstate_1.assign({ data: (_, evt) => evt.data, }); /** XState action that updates context with values from partial resource passed with EDIT event. */ exports.applyEdit = xstate_1.assign({ edits: (ctx, evt) => (Object.assign(Object.assign({}, ctx.edits), evt.data)), });