UNPKG

@nlabs/gothamjs

Version:
20 lines (19 loc) 2.88 kB
import { Suspense, lazy } from "react"; import { Loader } from "../components/Loader/Loader.js"; import { jsx } from "react/jsx-runtime"; const lazyImport = (factory, name) => /* @__PURE__ */ Object.create({ [name]: lazy(() => factory().then((module) => ({ default: module[name] }))) }); const loadRemoteComponent = (url, exportName = "default") => { const { [exportName]: Component } = lazyImport( () => import( /* webpackIgnore: true */ url ).then((module) => ({ [exportName]: module[exportName] || module.default })), exportName ); return (props) => /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(Loader, {}), children: /* @__PURE__ */ jsx(Component, { ...props }) }); }; export { lazyImport, loadRemoteComponent }; //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2R5bmFtaWNVdGlscy50c3giXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge0NvbXBvbmVudFR5cGUsIFN1c3BlbnNlLCBsYXp5fSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7TG9hZGVyfSBmcm9tICcuLi9jb21wb25lbnRzL0xvYWRlci9Mb2FkZXIuanMnO1xuXG5leHBvcnQgY29uc3QgbGF6eUltcG9ydCA9IDxUIGV4dGVuZHMgQ29tcG9uZW50VHlwZTx1bmtub3duPiwgSSBleHRlbmRzIHtbSzIgaW4gS106IFR9LCBLIGV4dGVuZHMga2V5b2YgST4oXG4gIGZhY3Rvcnk6ICgpID0+IFByb21pc2U8ST4sXG4gIG5hbWU6IEtcbik6IEkgPT4gT2JqZWN0LmNyZWF0ZSh7W25hbWVdOiBsYXp5KCgpID0+IGZhY3RvcnkoKS50aGVuKChtb2R1bGUpID0+ICh7ZGVmYXVsdDogbW9kdWxlW25hbWVdfSkpKX0pO1xuXG5leHBvcnQgY29uc3QgbG9hZFJlbW90ZUNvbXBvbmVudCA9ICh1cmw6IHN0cmluZywgZXhwb3J0TmFtZTogc3RyaW5nID0gJ2RlZmF1bHQnKSA9PiB7XG4gIGNvbnN0IHtbZXhwb3J0TmFtZV06IENvbXBvbmVudH0gPSBsYXp5SW1wb3J0KFxuICAgICgpID0+IGltcG9ydCgvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovIHVybCkudGhlbihtb2R1bGUgPT4gKHtbZXhwb3J0TmFtZV06IG1vZHVsZVtleHBvcnROYW1lXSB8fCBtb2R1bGUuZGVmYXVsdH0pKSxcbiAgICBleHBvcnROYW1lXG4gICk7XG5cbiAgcmV0dXJuIChwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pID0+IChcbiAgICA8U3VzcGVuc2UgZmFsbGJhY2s9ezxMb2FkZXIgLz59PlxuICAgICAgPENvbXBvbmVudCB7Li4ucHJvcHN9IC8+XG4gICAgPC9TdXNwZW5zZT5cbiAgKTtcbn07Il0sCiAgIm1hcHBpbmdzIjogIkFBSUEsU0FBdUIsVUFBVSxZQUFXO0FBRTVDLFNBQVEsY0FBYTtBQWNHO0FBWmpCLE1BQU0sYUFBYSxDQUN4QixTQUNBLFNBQ00sdUJBQU8sT0FBTyxFQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssTUFBTSxRQUFRLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFBQyxTQUFTLE9BQU8sSUFBSSxFQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUM7QUFFMUYsTUFBTSxzQkFBc0IsQ0FBQyxLQUFhLGFBQXFCLGNBQWM7QUFDbEYsUUFBTSxFQUFDLENBQUMsVUFBVSxHQUFHLFVBQVMsSUFBSTtBQUFBLElBQ2hDLE1BQU07QUFBQTtBQUFBLE1BQWlDO0FBQUEsTUFBSyxLQUFLLGFBQVcsRUFBQyxDQUFDLFVBQVUsR0FBRyxPQUFPLFVBQVUsS0FBSyxPQUFPLFFBQU8sRUFBRTtBQUFBLElBQ2pIO0FBQUEsRUFDRjtBQUVBLFNBQU8sQ0FBQyxVQUNOLG9CQUFDLFlBQVMsVUFBVSxvQkFBQyxVQUFPLEdBQzFCLDhCQUFDLGFBQVcsR0FBRyxPQUFPLEdBQ3hCO0FBRUo7IiwKICAibmFtZXMiOiBbXQp9Cg==