UNPKG

dbl-components

Version:

Framework based on bootstrap 5

2 lines 2.02 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=useEventHandler;var _react=require("react");var _dblUtils=require("dbl-utils");function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return}finally{if(o)throw n}}return a}}function _arrayWithHoles(r){if(Array.isArray(r))return r}function useEventHandler(events,id){var eventNames=Object.values(events).map(function(_ref){var _ref2=_slicedToArray(_ref,1),name=_ref2[0];return name}).join(".");(0,_react.useEffect)(function(){Object.values(events).forEach(function(_ref3){var _ref4=_slicedToArray(_ref3,2),evtName=_ref4[0],evtCallback=_ref4[1];_dblUtils.eventHandler.subscribe(evtName,evtCallback,id)});return function(){Object.values(events).forEach(function(_ref5){var _ref6=_slicedToArray(_ref5,1),evtName=_ref6[0];_dblUtils.eventHandler.unsubscribe(evtName,id)})}},[eventNames,id])} //# sourceMappingURL=use-event-handler.js.map