@atlaskit/editor-plugin-extension
Version:
editor-plugin-extension plugin for @atlaskit/editor-core
21 lines • 839 B
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import React from 'react';
import { useStateFromPromise } from './use-state-from-promise';
export function withExtensionManifest(WrappedComponent) {
return function WithExtensionManifest(props) {
const {
extensionKey,
extensionProvider,
extensionType,
...restProps
} = props;
const [extensionManifest] = useStateFromPromise(() => extensionProvider.getExtension(extensionType, extensionKey), [extensionProvider, extensionType, extensionKey]);
return extensionManifest ?
/*#__PURE__*/
// Ignored via go/ees005
// eslint-disable-next-line @typescript-eslint/no-explicit-any, react/jsx-props-no-spreading
React.createElement(WrappedComponent, _extends({
extensionManifest: extensionManifest
}, restProps)) : null;
};
}