UNPKG

@mic-rexjs/usecases-react

Version:

React-based solution for use usecases of Clean Architecture

23 lines (22 loc) 924 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useContext = void 0; var _useConstant = require("../useConstant"); var _ahooks = require("ahooks"); var _ArgumentTypes = require("../../enums/ArgumentTypes"); var _useContextUseCase2 = require("../useContextUseCase"); var useContext = exports.useContext = function useContext(usecase) { var argumentTypes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _ArgumentTypes.ArgumentTypes.None; var _useContextUseCase = (0, _useContextUseCase2.useContextUseCase)(), registerUseCase = _useContextUseCase.registerUseCase, unregisterUseCase = _useContextUseCase.unregisterUseCase; var context = (0, _useConstant.useConstant)(function () { return registerUseCase(usecase, argumentTypes); }); (0, _ahooks.useUnmount)(function () { unregisterUseCase(usecase, argumentTypes); }); return context; };