Socket
Socket
Sign inDemoInstall

react-dynamic-multi-render

Package Overview
Dependencies
6
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.2.0 to 0.2.1

17

build/react-dynamic-multi-render.umd.min.js

@@ -1,2 +0,15 @@

/*! For license information please see react-dynamic-multi-render.umd.min.js.LICENSE.txt */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("React")):"function"==typeof define&&define.amd?define(["React"],t):"object"==typeof exports?exports.ReactDynamicMultiRender=t(require("React")):e.ReactDynamicMultiRender=t(e.React)}(self,(function(e){return(()=>{"use strict";var t={933:e=>{var t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(e,c){for(var i,a,s=o(e),u=1;u<arguments.length;u++){for(var p in i=Object(arguments[u]))r.call(i,p)&&(s[p]=i[p]);if(t){a=t(i);for(var l=0;l<a.length;l++)n.call(i,a[l])&&(s[a[l]]=i[a[l]])}}return s}},209:(e,t,r)=>{r(933);var n=r(804),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var c=Symbol.for;o=c("react.element"),t.Fragment=c("react.fragment")}var i=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function u(e,t,r){var n,c={},u=null,p=null;for(n in void 0!==r&&(u=""+r),void 0!==t.key&&(u=""+t.key),void 0!==t.ref&&(p=t.ref),t)a.call(t,n)&&!s.hasOwnProperty(n)&&(c[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===c[n]&&(c[n]=t[n]);return{$$typeof:o,type:e,key:u,ref:p,props:c,_owner:i.current}}t.jsx=u,t.jsxs=u},455:(e,t,r)=>{e.exports=r(209)},804:t=>{t.exports=e}},r={};function n(e){if(r[e])return r[e].exports;var o=r[e]={exports:{}};return t[e](o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};return(()=>{n.r(o),n.d(o,{DynamicMultiRenderProvider:()=>b,default:()=>P,useDynamicMultiRenderConfig:()=>m});var e=n(804),t=n.n(e);function r({componentName:e,templateConfig:t}){var r;return`${e}/${null!==(r=t?Array.isArray(t[e])?t[e][0]:t[e]:void 0)&&void 0!==r?r:"standard"}/index.tsx`}var c=n(455);const i=new Map;function a(e){var t;const{componentName:r,importFactory:n,templateConfig:o}=e,c=o?o[r]:"";return JSON.stringify({[r]:c,importFactory:null!==(t=null==n?void 0:n.toString())&&void 0!==t?t:""})}function s(e){const{componentName:t,templateConfig:n,importFactory:o}=e;if(void 0===n||void 0===o)return;const c=a(e);(async()=>{const e=r({componentName:t,templateConfig:n,importFactory:o}),{default:a}=await o(e);i.has(c)?console.log("React.lazy was already created",t):(console.log("Init cache for",t),i.set(c,a))})()}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){l(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const O=(0,e.createContext)(void 0),b=t=>((0,e.useEffect)((()=>{t.value&&function(e){const t=Object.keys(e.templateConfig);for(const o of t){const t=e.templateConfig[o];let c=!0;var r,n;"string"!=typeof t&&(c=null===(r=null===(n=t[1])||void 0===n?void 0:n.preload)||void 0===r||r),c&&window.requestAnimationFrame((()=>{s(p(p({},e),{},{componentName:o}))}))}}(t.value)}),[t.value]),(0,c.jsx)(O.Provider,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?f(Object(r),!0).forEach((function(t){y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},t)));function m(){return(0,e.useContext)(O)}class d extends t().Component{constructor(e){super(e),this.state={}}static getDerivedStateFromError(e){return console.error(e),"MODULE_NOT_FOUND"===e.code?{missingComponent:e.message.split("'")[1].replace("'","")}:{}}render(){return this.state.missingComponent?(0,c.jsxs)("span",{children:['Component "',this.state.missingComponent,'" does not exist']}):this.props.children}}function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const P=t=>{let{componentName:n}=t,o=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},c=Object.keys(e);for(n=0;n<c.length;n++)r=c[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(n=0;n<c.length;n++)r=c[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,["componentName"]);const s=m(),u=function(t){const n=a(t);if(i.has(n))return i.get(n);const o=function({componentName:t,templateConfig:n,importFactory:o}){if(void 0===t||void 0===o||void 0===n)return()=>(0,c.jsx)(c.Fragment,{});const i=r({componentName:t,templateConfig:n,importFactory:o});return(0,e.lazy)((()=>o(i)))}(t);return i.set(n,o),o}({componentName:n,importFactory:null==s?void 0:s.importFactory,templateConfig:null==s?void 0:s.templateConfig});return(0,c.jsx)(d,{children:(0,c.jsx)(u,j({},o))})}})(),o})()}));
/*! filename:main */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("React")):"function"==typeof define&&define.amd?define(["React"],t):"object"==typeof exports?exports.ReactDynamicMultiRender=t(require("React")):e.ReactDynamicMultiRender=t(e.React)}(window,(function(e){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=4)}([function(e,t,r){"use strict";e.exports=r(2)},function(t,r){t.exports=e},function(e,t,r){"use strict";
/** @license React v17.0.1
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/r(3);var n=r(1),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var c=Symbol.for;o=c("react.element"),t.Fragment=c("react.fragment")}var i=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,u=Object.prototype.hasOwnProperty,a={key:!0,ref:!0,__self:!0,__source:!0};function f(e,t,r){var n,c={},f=null,s=null;for(n in void 0!==r&&(f=""+r),void 0!==t.key&&(f=""+t.key),void 0!==t.ref&&(s=t.ref),t)u.call(t,n)&&!a.hasOwnProperty(n)&&(c[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===c[n]&&(c[n]=t[n]);return{$$typeof:o,type:e,key:f,ref:s,props:c,_owner:i.current}}t.jsx=f,t.jsxs=f},function(e,t,r){"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/var n=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var r,u,a=i(e),f=1;f<arguments.length;f++){for(var s in r=Object(arguments[f]))o.call(r,s)&&(a[s]=r[s]);if(n){u=n(r);for(var p=0;p<u.length;p++)c.call(r,u[p])&&(a[u[p]]=r[u[p]])}}return a}},function(e,t,r){"use strict";r.r(t),r.d(t,"DynamicMultiRenderProvider",(function(){return d})),r.d(t,"useDynamicMultiRenderConfig",(function(){return j}));var n=r(1),o=r.n(n);function c({componentName:e,templateConfig:t}){var r;return`${e}/${""+(null!==(r=t?Array.isArray(t[e])?t[e][0]:t[e]:void 0)&&void 0!==r?r:"standard")}`}var i=r(0);const u=new Map;function a(e){var t;const{componentName:r,importFactory:n,templateConfig:o}=e,c=o?o[r]:"";return JSON.stringify({[r]:c,importFactory:null!==(t=null==n?void 0:n.toString())&&void 0!==t?t:""})}function f(e){const{componentName:t,templateConfig:r,importFactory:n}=e;if(void 0===r||void 0===n)return;const o=a(e);(async()=>{const e=c({componentName:t,templateConfig:r,importFactory:n}),{default:i}=await n(e);u.has(o)||u.set(o,i)})()}function s(e){const t=a(e);if(u.has(t))return u.get(t);const r=function({componentName:e,templateConfig:t,importFactory:r}){if(void 0===e||void 0===r||void 0===t)return()=>Object(i.jsx)(i.Fragment,{});const o=c({componentName:e,templateConfig:t,importFactory:r});return Object(n.lazy)(()=>r(o))}(e);return u.set(t,r),r}function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p(Object(r),!0).forEach((function(t){b(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function b(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const m=Object(n.createContext)(void 0),d=e=>(Object(n.useEffect)(()=>{e.value&&function(e){const t=Object.keys(e.templateConfig);for(const o of t){const t=e.templateConfig[o];let c=!0;var r,n;if("string"!=typeof t)c=null===(r=null===(n=t[1])||void 0===n?void 0:n.preload)||void 0===r||r;c&&window.requestAnimationFrame(()=>{f(l(l({},e),{},{componentName:o}))})}}(e.value)},[e.value]),Object(i.jsx)(m.Provider,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?O(Object(r),!0).forEach((function(t){y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e)));function j(){return Object(n.useContext)(m)}class g extends o.a.Component{constructor(e){super(e),this.state={}}static getDerivedStateFromError(e){if(console.error(e),"MODULE_NOT_FOUND"===e.code){return{missingComponent:e.message.split("'")[1].replace("'","")}}return{}}render(){return this.state.missingComponent?Object(i.jsxs)("span",{children:['Component "',this.state.missingComponent,'" does not exist']}):this.props.children}}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function P(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach((function(t){w(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function w(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function h(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},c=Object.keys(e);for(n=0;n<c.length;n++)r=c[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(n=0;n<c.length;n++)r=c[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}t.default=e=>{let{componentName:t}=e,r=h(e,["componentName"]);const n=j(),o=s({componentName:t,importFactory:null==n?void 0:n.importFactory,templateConfig:null==n?void 0:n.templateConfig});return Object(i.jsx)(g,{children:Object(i.jsx)(o,P({},r))})}}])}));

@@ -1,2 +0,374 @@

/*! For license information please see index.js.LICENSE.txt */
(()=>{"use strict";var e={n:t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return e.d(r,{a:r}),r},d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{DynamicMultiRenderProvider:()=>y,default:()=>P,useDynamicMultiRenderConfig:()=>b});const r=require("react");var n=e.n(r);function o({componentName:e,templateConfig:t}){var r;return`${e}/${null!==(r=t?Array.isArray(t[e])?t[e][0]:t[e]:void 0)&&void 0!==r?r:"standard"}/index.tsx`}const i=require("react/jsx-runtime"),c=new Map;function a(e){var t;const{componentName:r,importFactory:n,templateConfig:o}=e,i=o?o[r]:"";return JSON.stringify({[r]:i,importFactory:null!==(t=null==n?void 0:n.toString())&&void 0!==t?t:""})}function s(e){const{componentName:t,templateConfig:r,importFactory:n}=e;if(void 0===r||void 0===n)return;const i=a(e);(async()=>{const e=o({componentName:t,templateConfig:r,importFactory:n}),{default:a}=await n(e);c.has(i)?console.log("React.lazy was already created",t):(console.log("Init cache for",t),c.set(i,a))})()}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function p(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const O=(0,r.createContext)(void 0),y=e=>((0,r.useEffect)((()=>{e.value&&function(e){const t=Object.keys(e.templateConfig);for(const o of t){const t=e.templateConfig[o];let i=!0;var r,n;"string"!=typeof t&&(i=null===(r=null===(n=t[1])||void 0===n?void 0:n.preload)||void 0===r||r),i&&window.requestAnimationFrame((()=>{s(l(l({},e),{},{componentName:o}))}))}}(e.value)}),[e.value]),(0,i.jsx)(O.Provider,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?f(Object(r),!0).forEach((function(t){m(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e)));function b(){return(0,r.useContext)(O)}class d extends n().Component{constructor(e){super(e),this.state={}}static getDerivedStateFromError(e){return console.error(e),"MODULE_NOT_FOUND"===e.code?{missingComponent:e.message.split("'")[1].replace("'","")}:{}}render(){return this.state.missingComponent?(0,i.jsxs)("span",{children:['Component "',this.state.missingComponent,'" does not exist']}):this.props.children}}function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const P=e=>{let{componentName:t}=e,n=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["componentName"]);const s=b(),u=function(e){const t=a(e);if(c.has(t))return c.get(t);const n=function({componentName:e,templateConfig:t,importFactory:n}){if(void 0===e||void 0===n||void 0===t)return()=>(0,i.jsx)(i.Fragment,{});const c=o({componentName:e,templateConfig:t,importFactory:n});return(0,r.lazy)((()=>n(c)))}(e);return c.set(t,n),n}({componentName:t,importFactory:null==s?void 0:s.importFactory,templateConfig:null==s?void 0:s.templateConfig});return(0,i.jsx)(d,{children:(0,i.jsx)(u,j({},n))})};module.exports=t})();
/*! filename:main */
module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 2);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports) {
module.exports = require("react/jsx-runtime");
/***/ }),
/* 1 */
/***/ (function(module, exports) {
module.exports = require("react");
/***/ }),
/* 2 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, "DynamicMultiRenderProvider", function() { return /* reexport */ DynamicMultiRenderProvider; });
__webpack_require__.d(__webpack_exports__, "useDynamicMultiRenderConfig", function() { return /* reexport */ useDynamicMultiRenderConfig; });
// EXTERNAL MODULE: external "react"
var external_react_ = __webpack_require__(1);
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
// CONCATENATED MODULE: /home/runner/work/react-dynamic-multi-render/react-dynamic-multi-render/packages/react-dynamic-multi-render/src/util.ts
function getComponentIndexFilePath({
componentName,
templateConfig
}) {
var _ref;
const templateName = (_ref = templateConfig ? Array.isArray(templateConfig[componentName]) ? templateConfig[componentName][0] : templateConfig[componentName] : undefined) !== null && _ref !== void 0 ? _ref : 'standard';
const indexFilePath = `${templateName}`;
const fullRelativeIndexPath = `${componentName}/${indexFilePath}`;
return fullRelativeIndexPath;
}
// EXTERNAL MODULE: external "react/jsx-runtime"
var jsx_runtime_ = __webpack_require__(0);
// CONCATENATED MODULE: /home/runner/work/react-dynamic-multi-render/react-dynamic-multi-render/packages/react-dynamic-multi-render/src/load-component.tsx
const componentCache = new Map();
function getCacheKey(parameters) {
var _importFactory$toStri;
const {
componentName,
importFactory,
templateConfig
} = parameters;
const componentTemplateConfig = templateConfig ? templateConfig[componentName] : '';
const cacheKey = JSON.stringify({
[componentName]: componentTemplateConfig,
importFactory: (_importFactory$toStri = importFactory === null || importFactory === void 0 ? void 0 : importFactory.toString()) !== null && _importFactory$toStri !== void 0 ? _importFactory$toStri : ''
});
return cacheKey;
}
/**
* Will be called when the app
* starts and preloading is enabled
* for a component. Initializes the cache
* with the fully loaded component
* if the lazy loaded wasn't requested
* before.
*/
function preloadComponent(parameters) {
const {
componentName,
templateConfig,
importFactory
} = parameters;
if (templateConfig === undefined || importFactory === undefined) {
return;
}
const cacheKey = getCacheKey(parameters);
const startPreload = async () => {
const fullRelativeIndexPath = getComponentIndexFilePath({
componentName,
templateConfig,
importFactory
});
const {
default: Component
} = await importFactory(fullRelativeIndexPath);
if (!componentCache.has(cacheKey)) {
// 'loadComponent' wasn't yet called
componentCache.set(cacheKey, Component);
}
};
startPreload();
}
/**
* Returns a cached version
* of the component if available,
* or returns a new React.lazy
* component
*/
function loadComponent(parameters) {
const cacheKey = getCacheKey(parameters);
if (componentCache.has(cacheKey)) {
return componentCache.get(cacheKey);
}
const Component = getReactLazyComponent(parameters);
componentCache.set(cacheKey, Component);
return Component;
}
/**
* Returns a React.lazy component
* which gets imported dynamically.
* It caches loaded components
* based on the input parameters.
* It does this independently
* of a component's lifecycle.
*/
function getReactLazyComponent({
componentName,
templateConfig,
importFactory
}) {
if (componentName === undefined || importFactory === undefined || templateConfig === undefined) return () => /*#__PURE__*/Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"], {});
const fullRelativeIndexPath = getComponentIndexFilePath({
componentName,
templateConfig,
importFactory
});
const Component = /*#__PURE__*/Object(external_react_["lazy"])(() => importFactory(fullRelativeIndexPath));
return Component;
}
// CONCATENATED MODULE: /home/runner/work/react-dynamic-multi-render/react-dynamic-multi-render/packages/react-dynamic-multi-render/src/prefetch.ts
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
/**
* Prefetches all components
* when first initialized,
* based on the selected
* version.
* Components which
* are not present in the templateConfig
* will not get prefetched.
*/
function prefetchComponents(config) {
const allComponentNames = Object.keys(config.templateConfig);
for (const componentName of allComponentNames) {
const componentConfig = config.templateConfig[componentName];
let shouldPreload = true;
if (typeof componentConfig !== 'string') {
var _componentConfig$1$pr, _componentConfig$;
shouldPreload = (_componentConfig$1$pr = (_componentConfig$ = componentConfig[1]) === null || _componentConfig$ === void 0 ? void 0 : _componentConfig$.preload) !== null && _componentConfig$1$pr !== void 0 ? _componentConfig$1$pr : true;
}
if (shouldPreload) {
// This prefetches the component
window.requestAnimationFrame(() => {
// prefetch component and initialize cache
preloadComponent(_objectSpread(_objectSpread({}, config), {}, {
componentName
}));
});
}
}
}
// CONCATENATED MODULE: /home/runner/work/react-dynamic-multi-render/react-dynamic-multi-render/packages/react-dynamic-multi-render/src/config.tsx
function config_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function config_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { config_ownKeys(Object(source), true).forEach(function (key) { config_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { config_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function config_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
const DynamicMultiRenderContext = /*#__PURE__*/Object(external_react_["createContext"])(undefined);
const DynamicMultiRenderProvider = props => {
Object(external_react_["useEffect"])(() => {
if (props.value) {
prefetchComponents(props.value);
}
}, [props.value]);
return /*#__PURE__*/Object(jsx_runtime_["jsx"])(DynamicMultiRenderContext.Provider, config_objectSpread({}, props));
};
function useDynamicMultiRenderConfig() {
const context = Object(external_react_["useContext"])(DynamicMultiRenderContext);
return context;
}
// CONCATENATED MODULE: /home/runner/work/react-dynamic-multi-render/react-dynamic-multi-render/packages/react-dynamic-multi-render/src/ErrorBounday/index.tsx
class ErrorBounday_ErrorBoundary extends external_react_default.a.Component {
constructor(props) {
super(props);
this.state = {};
}
static getDerivedStateFromError(error) {
// Update state so the next render will show the fallback UI.
console.error(error);
if (error.code === 'MODULE_NOT_FOUND') {
const missingComponent = error.message.split("'")[1].replace("'", '');
return {
missingComponent
};
}
return {};
}
render() {
if (this.state.missingComponent) {
// You can render any custom fallback UI
return /*#__PURE__*/Object(jsx_runtime_["jsxs"])("span", {
children: ["Component \"", this.state.missingComponent, "\" does not exist"]
});
}
return this.props.children;
}
}
// CONCATENATED MODULE: /home/runner/work/react-dynamic-multi-render/react-dynamic-multi-render/packages/react-dynamic-multi-render/src/index.tsx
function src_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function src_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { src_ownKeys(Object(source), true).forEach(function (key) { src_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { src_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function src_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
const DynamicMultiRender = (_ref) => {
let {
componentName
} = _ref,
props = _objectWithoutProperties(_ref, ["componentName"]);
const config = useDynamicMultiRenderConfig();
const Component = loadComponent({
componentName,
importFactory: config === null || config === void 0 ? void 0 : config.importFactory,
templateConfig: config === null || config === void 0 ? void 0 : config.templateConfig
});
return /*#__PURE__*/Object(jsx_runtime_["jsx"])(ErrorBounday_ErrorBoundary, {
children: /*#__PURE__*/Object(jsx_runtime_["jsx"])(Component, src_objectSpread({}, props))
});
};
/* harmony default export */ var src = __webpack_exports__["default"] = (DynamicMultiRender);
/***/ })
/******/ ]);

@@ -6,2 +6,13 @@ # Change Log

## [0.2.1](https://github.com/scriptify/react-dynamic-multi-render/compare/react-dynamic-multi-render@0.2.0...react-dynamic-multi-render@0.2.1) (2021-03-03)
### Bug Fixes
* resolve index path dynamically ([1264a1b](https://github.com/scriptify/react-dynamic-multi-render/commit/1264a1b81c2e2171af43cd822e2e9d04fdabd83d))
# [0.2.0](https://github.com/scriptify/react-dynamic-multi-render/compare/react-dynamic-multi-render@0.1.2...react-dynamic-multi-render@0.2.0) (2021-02-26)

@@ -8,0 +19,0 @@

4

package.json
{
"name": "react-dynamic-multi-render",
"version": "0.2.0",
"version": "0.2.1",
"main": "./build/react-dynamic-multi-render/src/index.js",

@@ -16,3 +16,3 @@ "license": "MIT",

},
"gitHead": "8cbd78b47730808ea16bd5d17a688f0afa7389d3"
"gitHead": "5dc5d813debff28835dcf3280fb23ff963f61bac"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc