UNPKG

@coveord/plasma-mantine

Version:

A Plasma flavoured Mantine theme

76 lines (75 loc) 2.67 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "useClickWithLoading", { enumerable: true, get: function() { return useClickWithLoading; } }); var _async_to_generator = require("@swc/helpers/_/_async_to_generator"); var _instanceof = require("@swc/helpers/_/_instanceof"); var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array"); var _ts_generator = require("@swc/helpers/_/_ts_generator"); var _react = require("react"); var useClickWithLoading = function(handler) { var _useState = _sliced_to_array._((0, _react.useState)(false), 2), isLoading = _useState[0], setIsLoading = _useState[1]; var handleClick = /*#__PURE__*/ function() { var _ref = _async_to_generator._(function(event) { var possiblePromise, err; return _ts_generator._(this, function(_state) { switch(_state.label){ case 0: possiblePromise = handler === null || handler === void 0 ? void 0 : handler(event); _state.label = 1; case 1: _state.trys.push([ 1, 4, , 5 ]); if (!_instanceof._(possiblePromise, Promise)) return [ 3, 3 ]; setIsLoading(true); return [ 4, possiblePromise ]; case 2: _state.sent(); setIsLoading(false); _state.label = 3; case 3: return [ 3, 5 ]; case 4: err = _state.sent(); setIsLoading(false); console.error(err); return [ 3, 5 ]; case 5: return [ 2 ]; } }); }); return function handleClick(event) { return _ref.apply(this, arguments); }; }(); return { isLoading: isLoading, handleClick: handleClick }; }; //# sourceMappingURL=useClickWithLoading.js.map