UNPKG

@zextras/carbonio-shell-ui

Version:

The Zextras Carbonio web client

32 lines 1.53 kB
"use strict"; /* * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com> * * SPDX-License-Identifier: AGPL-3.0-only */ Object.defineProperty(exports, "__esModule", { value: true }); exports.useAction = exports.useActions = exports.useIntegratedComponent = exports.useIntegratedFunction = void 0; const react_1 = require("react"); const store_1 = require("./store"); const utils_1 = require("./utils"); const useIntegratedFunction = (id) => { const integration = (0, store_1.useIntegrationsStore)((s) => s.functions?.[id]); return (0, utils_1.buildIntegrationFunction)(integration); }; exports.useIntegratedFunction = useIntegratedFunction; const useIntegratedComponent = (id) => { const integration = (0, store_1.useIntegrationsStore)((s) => s.components?.[id]); return (0, react_1.useMemo)(() => (0, utils_1.buildIntegrationComponent)(integration), [integration]); }; exports.useIntegratedComponent = useIntegratedComponent; const useActions = (context, type) => { const factories = (0, store_1.useIntegrationsStore)((s) => s.actions[type]); return (0, react_1.useMemo)(() => (0, utils_1.buildIntegrationActions)(factories, context), [factories, context]); }; exports.useActions = useActions; const useAction = (type, id, target) => { const factory = (0, store_1.useIntegrationsStore)((s) => s.actions[type][id]); return (0, react_1.useMemo)(() => (0, utils_1.buildIntegrationAction)(factory, target), [factory, target]); }; exports.useAction = useAction; //# sourceMappingURL=hooks.js.map