@duely/client
Advanced tools
Comparing version 0.0.8 to 0.0.9
@@ -28,2 +28,8 @@ "use strict"; | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var initialState = { | ||
@@ -56,3 +62,10 @@ loading: false, | ||
function useMutation(mutationDef) { | ||
var defaultOptions = { | ||
resetErrorMs: 6000 | ||
}; | ||
function useMutation(mutationDef, options) { | ||
var _defaultOptions$optio = _objectSpread(_objectSpread({}, defaultOptions), options), | ||
resetErrorMs = _defaultOptions$optio.resetErrorMs; | ||
var _useState = (0, _react.useState)(initialState), | ||
@@ -82,5 +95,11 @@ _useState2 = _slicedToArray(_useState, 2), | ||
setState(createCompletedState(res)); | ||
if (resetErrorMs > 0) { | ||
setTimeout(function () { | ||
return setState(initialState); | ||
}, resetErrorMs); | ||
} | ||
} | ||
_context.next = 11; | ||
_context.next = 12; | ||
break; | ||
@@ -93,3 +112,9 @@ | ||
case 11: | ||
if (resetErrorMs > 0) { | ||
setTimeout(function () { | ||
return setState(initialState); | ||
}, resetErrorMs); | ||
} | ||
case 12: | ||
case "end": | ||
@@ -105,5 +130,5 @@ return _context.stop(); | ||
}; | ||
}(), [mutationDef]); | ||
}(), [mutationDef, resetErrorMs]); | ||
return [mutate, state]; | ||
} | ||
//# sourceMappingURL=useMutation.js.map |
{ | ||
"name": "@duely/client", | ||
"type": "module", | ||
"version": "0.0.8", | ||
"version": "0.0.9", | ||
"repository": "github:uoleevi/duely", | ||
@@ -6,0 +6,0 @@ "description": "GraphQL client by Duely (wrapper for @apollo/client)", |
@@ -28,3 +28,8 @@ import { useCallback, useState } from 'react'; | ||
export function useMutation(mutationDef) { | ||
const defaultOptions = { | ||
resetErrorMs: 6000 | ||
}; | ||
export function useMutation(mutationDef, options) { | ||
const { resetErrorMs } = { ...defaultOptions, ...options }; | ||
const [state, setState] = useState(initialState); | ||
@@ -41,2 +46,6 @@ const mutate = useCallback(async (variables, options) => { | ||
setState(createCompletedState(res)); | ||
if (resetErrorMs > 0) { | ||
setTimeout(() => setState(initialState), resetErrorMs); | ||
} | ||
} | ||
@@ -46,6 +55,10 @@ | ||
setState(createErrorState(error)); | ||
if (resetErrorMs > 0) { | ||
setTimeout(() => setState(initialState), resetErrorMs); | ||
} | ||
} | ||
}, [mutationDef]); | ||
}, [mutationDef, resetErrorMs]); | ||
return [mutate, state]; | ||
} |
Sorry, the diff of this file is not supported yet
120112
2237