@selfcommunity/react-ui
Version:
React UI Components to integrate a Community created with SelfCommunity Platform.
23 lines (22 loc) • 928 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useIsDisabled = void 0;
const tslib_1 = require("tslib");
const react_1 = require("react");
const pubsub_js_1 = tslib_1.__importDefault(require("pubsub-js"));
const PubSub_1 = require("../../constants/PubSub");
const useIsDisabled = () => {
// STATES
const [isDisabled, setIsDisabled] = (0, react_1.useState)(false);
// REFS
const updateDragStatus = (0, react_1.useRef)(null);
// EFFECTS
(0, react_1.useEffect)(() => {
updateDragStatus.current = pubsub_js_1.default.subscribe(`${PubSub_1.SCTopicType.COURSE}.${PubSub_1.SCGroupEventType.UPDATE}`, (_msg, data) => setIsDisabled(data));
return () => {
updateDragStatus.current && pubsub_js_1.default.unsubscribe(updateDragStatus.current);
};
}, [setIsDisabled]);
return { isDisabled };
};
exports.useIsDisabled = useIsDisabled;