react-hooks-toolbox
Version:
React hooks toolbox
42 lines (32 loc) • 1.4 kB
JavaScript
;
exports.__esModule = true;
exports.useDymoFetchPrinters = useDymoFetchPrinters;
var _react = require("react");
var _dymo = require("../utils/dymo");
var _useAxiosGet2 = require("../useAxiosGet");
function useDymoFetchPrinters(statusDymoService) {
var modelPrinter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "LabelWriterPrinter";
var port = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 41951;
var _useState = (0, _react.useState)([]),
printers = _useState[0],
setPrinters = _useState[1];
var _useState2 = (0, _react.useState)("init"),
innerStatus = _useState2[0],
setInnerStatus = _useState2[1];
var _useAxiosGet = (0, _useAxiosGet2.useAxiosGet)({
url: (0, _dymo.getDymoUrl)("GetPrinters", port),
axiosInstance: _dymo.dymoAxios,
onlyDispatchIf: statusDymoService === "success"
}),
status = _useAxiosGet.status,
response = _useAxiosGet.response;
(0, _react.useEffect)(function () {
if (status === "success" && response) {
setPrinters((0, _dymo.getDymoPrintersFromXml)(response, modelPrinter));
setInnerStatus(status);
} else {
setInnerStatus(status);
}
}, [modelPrinter, response, status]);
return { statusDymoFetchPrinters: innerStatus, printers: printers };
}