UNPKG

@foxy.io/sdk

Version:

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

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