@dr.pogodin/react-utils 1.12.0 → 1.12.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/development/shared/components/CodeSplit/ServerSide.js +6 -0
- package/build/development/shared/components/CodeSplit/ServerSide.js.map +1 -1
- package/build/development/web.bundle.js +5 -5
- package/build/production/shared/components/CodeSplit/ServerSide.js +2 -2
- package/build/production/shared/components/CodeSplit/ServerSide.js.map +1 -1
- package/package.json +29 -30
|
@@ -13,6 +13,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
13
13
|
|
|
14
14
|
var _reactGlobalState = require("@dr.pogodin/react-global-state");
|
|
15
15
|
|
|
16
|
+
var _reactRouterDom = require("react-router-dom");
|
|
17
|
+
|
|
16
18
|
var _server2 = require("react-router-dom/server");
|
|
17
19
|
|
|
18
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -83,10 +85,14 @@ function ServerSide({
|
|
|
83
85
|
/* eslint-enable react-hooks/rules-of-hooks */
|
|
84
86
|
}
|
|
85
87
|
const globalState = (0, _reactGlobalState.getGlobalState)();
|
|
88
|
+
const {
|
|
89
|
+
pathname
|
|
90
|
+
} = (0, _reactRouterDom.useResolvedPath)('');
|
|
86
91
|
|
|
87
92
|
const html = _server.default.renderToString( /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactGlobalState.GlobalStateProvider, {
|
|
88
93
|
stateProxy: globalState,
|
|
89
94
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_server2.StaticRouter, {
|
|
95
|
+
basename: pathname,
|
|
90
96
|
location: globalState.ssrContext.req.url,
|
|
91
97
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Scene, { ...rest
|
|
92
98
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/shared/components/CodeSplit/ServerSide.jsx"],"names":["resolveRequire","base","path","p","require","resolve","paths","default","def","named","Object","entries","forEach","key","value","Error","ServerSide","chunkName","getComponentAsync","getComponentServer","placeholder","rest","Scene","data","globalState","html","ReactDom","renderToString","ssrContext","req","url","chunks","includes","push","__html","propTypes","PT","string","isRequired","func","elementType","defaultProps"],"mappings":";;;;;;;;;AAKA;;AACA;;AAEA;;
|
|
1
|
+
{"version":3,"sources":["../../../../../src/shared/components/CodeSplit/ServerSide.jsx"],"names":["resolveRequire","base","path","p","require","resolve","paths","default","def","named","Object","entries","forEach","key","value","Error","ServerSide","chunkName","getComponentAsync","getComponentServer","placeholder","rest","Scene","data","globalState","pathname","html","ReactDom","renderToString","ssrContext","req","url","chunks","includes","push","__html","propTypes","PT","string","isRequired","func","elementType","defaultProps"],"mappings":";;;;;;;;;AAKA;;AACA;;AAEA;;AAMA;;AACA;;;;AAfA;AACA;AACA;;AACA;;AAcA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,cAAT,CAAwBC,IAAxB,EAA8BC,IAA9B,EAAoC;AAClC;AACA;AACA;AACA;AACA,QAAMC,CAAC,GAAGC,OAAO,CAACC,OAAR,CAAgBH,IAAhB,EAAsB;AAAEI,IAAAA,KAAK,EAAE,CAACL,IAAD;AAAT,GAAtB,CAAV;AACA;;;AACA,QAAM;AAAEM,IAAAA,OAAO,EAAEC,GAAX;AAAgB,OAAGC;AAAnB,MAA6BL,OAAO,CAACD,CAAD,CAA1C;AACA;;;AACA,MAAI,CAACK,GAAL,EAAU,OAAOC,KAAP;AAEVC,EAAAA,MAAM,CAACC,OAAP,CAAeF,KAAf,EAAsBG,OAAtB,CAA8B,CAAC,CAACC,GAAD,EAAMC,KAAN,CAAD,KAAkB;AAC9C,QAAIN,GAAG,CAACK,GAAD,CAAP,EAAc,MAAME,KAAK,CAAC,4CAAD,CAAX;AACdP,IAAAA,GAAG,CAACK,GAAD,CAAH,GAAWC,KAAX;AACD,GAHD;AAIA,SAAON,GAAP;AACD;;AAEc,SAASQ,UAAT,CAAoB;AACjCC,EAAAA,SADiC;AAEjCC,EAAAA,iBAFiC;AAGjCC,EAAAA,kBAHiC;AAIjCC,EAAAA,WAJiC;AAKjC,KAAGC;AAL8B,CAApB,EAMZ;AACD;AACF;AACA;AACA;AACA;AACA;AACE,MAAIC,KAAJ;AACA,MAAIH,kBAAJ,EAAwBG,KAAK,GAAGH,kBAAkB,CAACnB,cAAD,CAA1B,CAAxB,KACK;AACH;AACA;;AACA;AACA,UAAM;AAAEuB,MAAAA;AAAF,QAAW,oCACd,6CAA4CN,SAAU,EADxC,EAEfC,iBAFe,CAAjB;AAIAI,IAAAA,KAAK,GAAGC,IAAI,GAAIA,IAAI,CAAChB,OAAL,IAAgBgB,IAApB,GAA6BH,WAAW,KAAK,MAAM,IAAX,CAApD;AACA;AACD;AAED,QAAMI,WAAW,GAAG,uCAApB;AACA,QAAM;AAAEC,IAAAA;AAAF,MAAe,qCAAgB,EAAhB,CAArB;;AACA,QAAMC,IAAI,GAAGC,gBAASC,cAAT,eACX,qBAAC,qCAAD;AAAqB,IAAA,UAAU,EAAEJ,WAAjC;AAAA,2BACE,qBAAC,qBAAD;AACE,MAAA,QAAQ,EAAEC,QADZ;AAEE,MAAA,QAAQ,EAAED,WAAW,CAACK,UAAZ,CAAuBC,GAAvB,CAA2BC,GAFvC;AAAA,6BAIE,qBAAC,KAAD,OAAWV;AAAX;AAJF;AADF,IADW,CAAb;AAWA;;;AACA,QAAM;AAAEW,IAAAA;AAAF,MAAaR,WAAW,CAACK,UAA/B;;AACA,MAAIG,MAAM,CAACC,QAAP,CAAgBhB,SAAhB,CAAJ,EAAgC;AAC9B,UAAM,IAAIF,KAAJ,CAAW,oCAAmCE,SAAU,GAAxD,CAAN;AACD,GAFD,MAEOe,MAAM,CAACE,IAAP,CAAYjB,SAAZ;AAEP;AACF;AACA;;AACE;;;AACA,sBACE;AACE,IAAA,uBAAuB,EAAE;AAAEkB,MAAAA,MAAM,EAAET;AAAV,KAD3B;AAEE,uBAAiBT;AAFnB,IADF;AAMA;AACD;;AAEDD,UAAU,CAACoB,SAAX,GAAuB;AACrBnB,EAAAA,SAAS,EAAEoB,mBAAGC,MAAH,CAAUC,UADA;AAErBrB,EAAAA,iBAAiB,EAAEmB,mBAAGG,IAFD;AAGrBrB,EAAAA,kBAAkB,EAAEkB,mBAAGG,IAHF;AAIrBpB,EAAAA,WAAW,EAAEiB,mBAAGI;AAJK,CAAvB;AAOAzB,UAAU,CAAC0B,YAAX,GAA0B;AACxBxB,EAAAA,iBAAiB,EAAE,IADK;AAExBC,EAAAA,kBAAkB,EAAE,IAFI;AAGxBC,EAAAA,WAAW,EAAE;AAHW,CAA1B","sourcesContent":["/**\n * Server-side implementation.\n */\n/* eslint-disable react/jsx-props-no-spreading */\n\nimport ReactDom from 'react-dom/server';\nimport PT from 'prop-types';\n\nimport {\n getGlobalState,\n GlobalStateProvider,\n useAsyncData,\n} from '@dr.pogodin/react-global-state';\n\nimport { useResolvedPath } from 'react-router-dom';\nimport { StaticRouter } from 'react-router-dom/server';\n\n/**\n * A specially wrapped `require()`, which is passed as an argument into\n * the optional `getComponentServer` prop of <{@link CodeSplit}> component.\n * @param {string} base Path resolution base, you want to pass in `__dirname`\n * value from the host module using `<CodeSplit>`.\n * @param {string} path The path of module to require.\n * @return {object} Required module.\n */\nfunction resolveRequire(base, path) {\n // NOTE: A part of code here attempts to correctly load ES6 modules\n // transformed by Babel; namely if required module has \"default\" field,\n // all other fields (presumed to be named exports) are attached to\n // the \"default\".\n const p = require.resolve(path, { paths: [base] });\n /* eslint-disable global-require, import/no-dynamic-require */\n const { default: def, ...named } = require(p);\n /* eslint-enable global-require, import/no-dynamic-require */\n if (!def) return named;\n\n Object.entries(named).forEach(([key, value]) => {\n if (def[key]) throw Error('Conflict between default and named exports');\n def[key] = value;\n });\n return def;\n}\n\nexport default function ServerSide({\n chunkName,\n getComponentAsync,\n getComponentServer,\n placeholder,\n ...rest\n}) {\n /* 1. The component, or its placeholder is rendered into HTML string.\n * The component is wrapped into <GlobalStateProvider>, and <StaticRouter>\n * to ensure that global state, and react router will work inside\n * the component, if present there. Also, if no server-side (sync) way\n * to load the component is provider, `useAsyncData(..)` is used to\n * attempt to load and use the component via SSR mechanics. */\n let Scene;\n if (getComponentServer) Scene = getComponentServer(resolveRequire);\n else {\n // In this case we are sure the condition won't change during the rendering\n // loop, thus we can ignore the rule.\n /* eslint-disable react-hooks/rules-of-hooks */\n const { data } = useAsyncData(\n `dr_pogodin_react_utils___split_components.${chunkName}`,\n getComponentAsync,\n );\n Scene = data ? (data.default || data) : (placeholder || (() => null));\n /* eslint-enable react-hooks/rules-of-hooks */\n }\n\n const globalState = getGlobalState();\n const { pathname } = useResolvedPath('');\n const html = ReactDom.renderToString((\n <GlobalStateProvider stateProxy={globalState}>\n <StaticRouter\n basename={pathname}\n location={globalState.ssrContext.req.url}\n >\n <Scene {...rest} />\n </StaticRouter>\n </GlobalStateProvider>\n ));\n\n /* 2. `chunks` array is used to record CSS chunks to inject. */\n const { chunks } = globalState.ssrContext;\n if (chunks.includes(chunkName)) {\n throw new Error(`CodeSplit: chunk name clash for (${chunkName})`);\n } else chunks.push(chunkName);\n\n /* The result is rendered using the container with `dangerouslySetInnerHTML`\n * to allow reproduce the same rendering result at the client side, even prior\n * to the async loading of the split code. */\n /* eslint-disable react/no-danger */\n return (\n <div\n dangerouslySetInnerHTML={{ __html: html }}\n data-chunk-name={chunkName}\n />\n );\n /* eslint-enable react/no-danger */\n}\n\nServerSide.propTypes = {\n chunkName: PT.string.isRequired,\n getComponentAsync: PT.func,\n getComponentServer: PT.func,\n placeholder: PT.elementType,\n};\n\nServerSide.defaultProps = {\n getComponentAsync: null,\n getComponentServer: null,\n placeholder: null,\n};\n"],"file":"ServerSide.js"}
|
|
@@ -66,7 +66,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var prop
|
|
|
66
66
|
\********************************************************/
|
|
67
67
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
68
68
|
|
|
69
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ ClientSide; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"@babel/runtime/helpers/slicedToArray\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"@babel/runtime/helpers/objectWithoutProperties\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @dr.pogodin/react-global-state */ \"@dr.pogodin/react-global-state\");\n/* harmony import */ var _dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils */ \"./src/shared/utils/index.js\");\n/* harmony import */ var _utils_isomorphy__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/isomorphy */ \"./src/shared/utils/isomorphy.js\");\n/* harmony import */ var _utils_time__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/time */ \"./src/shared/utils/time.js\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\n\nvar _excluded = [\"chunkName\", \"getComponentAsync\", \"placeholder\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
69
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ ClientSide; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"@babel/runtime/helpers/slicedToArray\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"@babel/runtime/helpers/objectWithoutProperties\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @dr.pogodin/react-global-state */ \"@dr.pogodin/react-global-state\");\n/* harmony import */ var _dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils */ \"./src/shared/utils/index.js\");\n/* harmony import */ var _utils_isomorphy__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/isomorphy */ \"./src/shared/utils/isomorphy.js\");\n/* harmony import */ var _utils_time__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/time */ \"./src/shared/utils/time.js\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\n\nvar _excluded = [\"chunkName\", \"getComponentAsync\", \"placeholder\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n/**\n * Client-side implementation of a split code chunk.\n */\n\n/* global document, window */\n\n/* eslint-disable react/jsx-props-no-spreading */\n\n\n\n\n\n\nfunction ClientSide(_ref) {\n var chunkName = _ref.chunkName,\n getComponentAsync = _ref.getComponentAsync,\n placeholder = _ref.placeholder,\n rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2___default()(_ref, _excluded);\n\n var _useRef = (0,react__WEBPACK_IMPORTED_MODULE_3__.useRef)({\n pendingStyles: [],\n renderInitialized: false,\n stylesInitialized: false\n }),\n heap = _useRef.current; // publicPath from buildInfo does not have a trailing slash at the end.\n\n\n var _getBuildInfo = (0,_utils_isomorphy__WEBPACK_IMPORTED_MODULE_6__.getBuildInfo)(),\n publicPath = _getBuildInfo.publicPath; // This code block initiates style loading as soon as possible; it collects\n // into heap.pendingStyles all style load promises; and heap.stylesInitialized\n // flag remains set until the styles are teared down upon unmounting.\n\n\n if (!heap.stylesInitialized) {\n heap.stylesInitialized = true;\n window.CHUNK_GROUPS[chunkName].forEach(function (asset) {\n if (!asset.endsWith('.css')) return;\n var path = \"\".concat(publicPath, \"/\").concat(asset);\n var link = document.querySelector(\"link[href=\\\"\".concat(path, \"\\\"]\"));\n\n if (!link) {\n link = document.createElement('link');\n link.setAttribute('href', path);\n link.setAttribute('rel', 'stylesheet');\n var barrier = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.newBarrier)();\n link.onload = barrier.resolve;\n heap.pendingStyles.push(barrier);\n var head = document.querySelector('head');\n head.appendChild(link);\n }\n\n if (!link.dependants) link.dependants = new Set([chunkName]);else link.dependants.add(chunkName);\n });\n } // Async loading of React component necessary to render the chunk.\n\n\n var _useAsyncData = (0,_dr_pogodin_react_global_state__WEBPACK_IMPORTED_MODULE_4__.useAsyncData)(\"dr_pogodin_react_utils___split_components.\".concat(chunkName), getComponentAsync, {\n maxage: _utils_time__WEBPACK_IMPORTED_MODULE_7__[\"default\"].YEAR_MS\n }),\n data = _useAsyncData.data;\n\n var createRender = function createRender() {\n var Scene = data.default || data;\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(\"div\", {\n \"data-chunk-name\": chunkName,\n children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(Scene, _objectSpread({}, rest))\n });\n };\n\n var _useState = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)(function () {\n // No need to await anything, we can render the final component right away.\n if (data && !heap.pendingStyles.length) {\n heap.renderInitialized = true;\n return createRender();\n } // Try to reuse the markup rendered during SSR.\n\n\n // Try to reuse the markup rendered during SSR.\n var node = document.querySelector(\"[data-chunk-name=\".concat(chunkName, \"]\"));\n\n if (node) {\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(\"div\", {\n /* eslint-disable react/no-danger */\n dangerouslySetInnerHTML: {\n __html: node.innerHTML || ''\n }\n /* eslint-disable react/no-danger */\n ,\n\n /* eslint-disable react/no-danger */\n \"data-chunk-name\": chunkName\n });\n } // Else render placeholder, or empty div.\n\n\n // Else render placeholder, or empty div.\n var Scene = placeholder || function () {\n return null;\n };\n\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(\"div\", {\n children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(Scene, {})\n });\n }),\n _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_useState, 2),\n render = _useState2[0],\n setRender = _useState2[1]; // At this point, if we have data, the absense of heap.renderInitialized flag\n // means we have to await styles loading; once it is done, and if we are still\n // mounted, we can set the final render.\n\n\n if (data && !heap.renderInitialized) {\n heap.renderInitialized = true;\n Promise.all(heap.pendingStyles).then(function () {\n if (heap.stylesInitialized) setRender(createRender());\n });\n } // This effectively fires only once, just before the component unmounts.\n\n\n (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(function () {\n return function () {\n heap.stylesInitialized = false;\n window.CHUNK_GROUPS[chunkName].forEach(function (item) {\n if (!item.endsWith('.css')) return;\n var path = \"\".concat(publicPath, \"/\").concat(item);\n var link = document.querySelector(\"link[href=\\\"\".concat(path, \"\\\"]\"));\n link.dependants.delete(chunkName);\n\n if (!link.dependants.size) {\n var head = document.querySelector('head');\n head.removeChild(link);\n }\n });\n };\n }, [chunkName, heap, publicPath]);\n return render;\n}\n\n//# sourceURL=webpack://@dr.pogodin/react-utils/./src/shared/components/CodeSplit/ClientSide.jsx?");
|
|
70
70
|
|
|
71
71
|
/***/ }),
|
|
72
72
|
|
|
@@ -96,7 +96,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var loda
|
|
|
96
96
|
\*****************************************************/
|
|
97
97
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
98
98
|
|
|
99
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ GenericLink; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"@babel/runtime/helpers/objectWithoutProperties\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! prop-types */ \"prop-types\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style.scss */ \"./src/shared/components/GenericLink/style.scss\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nvar _excluded = [\"children\", \"className\", \"disabled\", \"enforceA\", \"keepScrollPosition\", \"onClick\", \"onMouseDown\", \"openNewTab\", \"replace\", \"routerLinkType\", \"to\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
99
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ GenericLink; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"@babel/runtime/helpers/objectWithoutProperties\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! prop-types */ \"prop-types\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style.scss */ \"./src/shared/components/GenericLink/style.scss\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nvar _excluded = [\"children\", \"className\", \"disabled\", \"enforceA\", \"keepScrollPosition\", \"onClick\", \"onMouseDown\", \"openNewTab\", \"replace\", \"routerLinkType\", \"to\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n/* global window */\n\n\n\n/**\n * The `<Link>` component, and almost identical `<NavLink>` component, are\n * auxiliary wrappers around\n * [React Router](https://github.com/ReactTraining/react-router)'s\n * `<Link>` and `<NavLink>` components; they help to handle external and\n * internal links in uniform manner.\n *\n * @param {object} [props] Component properties.\n * @param {string} [props.className] CSS classes to apply to the link.\n * @param {boolean} [props.disabled] Disables the link.\n * @param {boolean} [props.enforceA] `true` enforces rendering of the link as\n * a simple `<a>` element.\n * @param {boolean} [props.keepScrollPosition] If `true`, and the link is\n * rendered as a React Router's component, it won't reset the viewport scrolling\n * position to the origin when clicked.\n * @param {function} [props.onClick] Event handler to trigger upon click.\n * @param {function} [props.onMouseDown] Event handler to trigger on MouseDown\n * event.\n * @param {boolean} [props.openNewTab] If `true` the link opens in a new tab.\n * @param {boolean} [props.replace] When `true`, the link will replace current\n * entry in the history stack instead of adding a new one.\n * @param {string} [props.to] Link URL.\n * @param {string} [props.activeClassName] **`<NavLink>`** only: CSS class(es)\n * to apply to rendered link when it is active.\n * @param {string} [props.activeStyle] **`<NavLink>`** only: CSS styles\n * to apply to the rendered link when it is active.\n * @param {boolean} [props.exact] **`<NavLink>`** only: if `true`, the active\n * class/style will only be applied if the location is matched exactly.\n * @param {function} [props.isActive] **`<NavLink>`** only: Add extra\n * logic for determining whether the link is active. This should be used if you\n * want to do more than verify that the link’s pathname matches the current URL\n * pathname.\n * @param {object} [props.location] **`<NavLink>`** only: `isActive` compares\n * current history location (usually the current browser URL). To compare to\n * a different location, a custom `location` can be passed.\n * @param {boolean} [props.strict] **`<NavLink>`** only: . When `true`, trailing\n * slash on a location’s pathname will be taken into consideration when\n * determining if the location matches the current URL. See the `<Route strict>`\n * documentation for more information.\n */\n\n\nfunction GenericLink(_ref) {\n var children = _ref.children,\n className = _ref.className,\n disabled = _ref.disabled,\n enforceA = _ref.enforceA,\n keepScrollPosition = _ref.keepScrollPosition,\n _onClick = _ref.onClick,\n onMouseDown = _ref.onMouseDown,\n openNewTab = _ref.openNewTab,\n replace = _ref.replace,\n routerLinkType = _ref.routerLinkType,\n to = _ref.to,\n rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref, _excluded);\n\n /* Renders Link as <a> element if:\n * - It is opted explicitely by `enforceA` prop;\n * - It should be opened in a new tab;\n * - It is an absolte URL (starts with http:// or https://);\n * - It is anchor link (starts with #). */\n if (disabled || enforceA || openNewTab || to.match(/^(#|(https?|mailto):)/)) {\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(\"a\", {\n className: (className ? className + \" \" : \"\") + \"-dr-pogodin-react-utils___src-shared-components-GenericLink-style___link___zH52sA\",\n disabled: disabled,\n href: to,\n onClick: disabled ? function (e) {\n return e.preventDefault();\n } : _onClick,\n onMouseDown: disabled ? function (e) {\n return e.preventDefault();\n } : onMouseDown,\n rel: \"noopener noreferrer\",\n target: openNewTab ? '_blank' : '',\n children: children\n });\n }\n /* Otherwise we render the link as React Router's Link or NavLink element. */\n\n\n return /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_3__.createElement)(routerLinkType, _objectSpread({\n className: className,\n disabled: disabled,\n onMouseDown: onMouseDown,\n replace: replace,\n to: to,\n onClick: function onClick(e) {\n // Executes the user-provided event handler, if any.\n if (_onClick) _onClick(e); // By default, clicking the link scrolls the page to beginning.\n\n if (!keepScrollPosition) window.scroll(0, 0);\n }\n }, rest), children);\n}\nGenericLink.defaultProps = {\n children: null,\n className: null,\n disabled: false,\n enforceA: false,\n keepScrollPosition: false,\n onClick: null,\n onMouseDown: null,\n openNewTab: false,\n replace: false,\n to: ''\n};\nGenericLink.propTypes = {\n children: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().node),\n className: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().string),\n disabled: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().bool),\n enforceA: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().bool),\n keepScrollPosition: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().bool),\n onClick: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().func),\n onMouseDown: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().func),\n openNewTab: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().bool),\n replace: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().bool),\n routerLinkType: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().elementType.isRequired),\n to: prop_types__WEBPACK_IMPORTED_MODULE_2___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_2___default().object), (prop_types__WEBPACK_IMPORTED_MODULE_2___default().string)])\n};\n\n//# sourceURL=webpack://@dr.pogodin/react-utils/./src/shared/components/GenericLink/index.jsx?");
|
|
100
100
|
|
|
101
101
|
/***/ }),
|
|
102
102
|
|
|
@@ -106,7 +106,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
106
106
|
\***********************************************/
|
|
107
107
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
108
108
|
|
|
109
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"@babel/runtime/helpers/objectWithoutProperties\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! prop-types */ \"prop-types\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils */ \"./src/shared/utils/index.js\");\n/* harmony import */ var _theme_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./theme.scss */ \"./src/shared/components/Input/theme.scss\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nvar _excluded = [\"label\", \"theme\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
109
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"@babel/runtime/helpers/objectWithoutProperties\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! prop-types */ \"prop-types\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils */ \"./src/shared/utils/index.js\");\n/* harmony import */ var _theme_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./theme.scss */ \"./src/shared/components/Input/theme.scss\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nvar _excluded = [\"label\", \"theme\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n/**\n * Themeable input field, based on the standard HTML `<input>` element.\n * @param {object} [props]\n * @param {string} [props.label] Input label.\n * @param {InputTheme} [props.theme] _Ad hoc_ theme.\n * @param {...any} [props....] [Other theming properties](https://www.npmjs.com/package/@dr.pogodin/react-themes#themed-component-properties)\n * @param {...any} [props....] Any other properties are passed to the underlying\n * `<input>` element.\n */\n\n\n\n\nfunction Input(_ref) {\n var label = _ref.label,\n theme = _ref.theme,\n rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref, _excluded);\n\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(\"div\", {\n className: theme.container,\n children: [label === undefined ? null : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(\"p\", {\n className: theme.label,\n children: label\n }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(\"input\", _objectSpread({\n className: theme.input\n }, rest))]\n });\n}\n\nvar ThemedInput = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.themed)('Input', ['container', 'input', 'label'], _theme_scss__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(Input);\nInput.propTypes = {\n label: (prop_types__WEBPACK_IMPORTED_MODULE_2___default().string),\n theme: ThemedInput.themeType.isRequired\n};\nInput.defaultProps = {\n label: undefined\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (ThemedInput);\n\n//# sourceURL=webpack://@dr.pogodin/react-utils/./src/shared/components/Input/index.jsx?");
|
|
110
110
|
|
|
111
111
|
/***/ }),
|
|
112
112
|
|
|
@@ -116,7 +116,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _bab
|
|
|
116
116
|
\****************************************/
|
|
117
117
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
118
118
|
|
|
119
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ Link; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-router-dom */ \"react-router-dom\");\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _GenericLink__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./GenericLink */ \"./src/shared/components/GenericLink/index.jsx\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
119
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ Link; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-router-dom */ \"react-router-dom\");\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _GenericLink__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./GenericLink */ \"./src/shared/components/GenericLink/index.jsx\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n/**\n * The Link wraps around React Router's Link component, to automatically replace\n * it by the regular <a> element when:\n * - The target reference points to another domain;\n * - User opts to open the reference in a new tab;\n * - User explicitely opts to use <a>.\n */\n\n\n\nfunction Link(props) {\n /* eslint-disable react/jsx-props-no-spreading */\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_GenericLink__WEBPACK_IMPORTED_MODULE_2__[\"default\"], _objectSpread(_objectSpread({}, props), {}, {\n routerLinkType: react_router_dom__WEBPACK_IMPORTED_MODULE_1__.Link\n }));\n /* eslint-enable react/jsx-props-no-spreading */\n}\n\n//# sourceURL=webpack://@dr.pogodin/react-utils/./src/shared/components/Link.jsx?");
|
|
120
120
|
|
|
121
121
|
/***/ }),
|
|
122
122
|
|
|
@@ -146,7 +146,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
146
146
|
\*******************************************/
|
|
147
147
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
148
148
|
|
|
149
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ NavLink; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-router-dom */ \"react-router-dom\");\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _GenericLink__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./GenericLink */ \"./src/shared/components/GenericLink/index.jsx\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
149
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ NavLink; }\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"@babel/runtime/helpers/defineProperty\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-router-dom */ \"react-router-dom\");\n/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _GenericLink__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./GenericLink */ \"./src/shared/components/GenericLink/index.jsx\");\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\nfunction NavLink(props) {\n /* eslint-disable react/jsx-props-no-spreading */\n return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_GenericLink__WEBPACK_IMPORTED_MODULE_2__[\"default\"], _objectSpread(_objectSpread({}, props), {}, {\n routerLinkType: react_router_dom__WEBPACK_IMPORTED_MODULE_1__.NavLink\n }));\n /* eslint-enable react/jsx-props-no-spreading */\n}\n\n//# sourceURL=webpack://@dr.pogodin/react-utils/./src/shared/components/NavLink.jsx?");
|
|
150
150
|
|
|
151
151
|
/***/ }),
|
|
152
152
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=ServerSide;var _server=_interopRequireDefault(require("react-dom/server"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactGlobalState=require("@dr.pogodin/react-global-state");var _server2=require("react-router-dom/server");var _jsxRuntime=require("react/jsx-runtime");/**
|
|
1
|
+
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=ServerSide;var _server=_interopRequireDefault(require("react-dom/server"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactGlobalState=require("@dr.pogodin/react-global-state");var _reactRouterDom=require("react-router-dom");var _server2=require("react-router-dom/server");var _jsxRuntime=require("react/jsx-runtime");/**
|
|
2
2
|
* Server-side implementation.
|
|
3
3
|
*/ /* eslint-disable react/jsx-props-no-spreading */ /**
|
|
4
4
|
* A specially wrapped `require()`, which is passed as an argument into
|
|
@@ -18,7 +18,7 @@ const p=require.resolve(path,{paths:[base]});/* eslint-disable global-require, i
|
|
|
18
18
|
* to load the component is provider, `useAsyncData(..)` is used to
|
|
19
19
|
* attempt to load and use the component via SSR mechanics. */let Scene;if(getComponentServer)Scene=getComponentServer(resolveRequire);else{// In this case we are sure the condition won't change during the rendering
|
|
20
20
|
// loop, thus we can ignore the rule.
|
|
21
|
-
/* eslint-disable react-hooks/rules-of-hooks */const{data}=(0,_reactGlobalState.useAsyncData)(`dr_pogodin_react_utils___split_components.${chunkName}`,getComponentAsync);Scene=data?data.default||data:placeholder||(()=>null);/* eslint-enable react-hooks/rules-of-hooks */}const globalState=(0,_reactGlobalState.getGlobalState)();const html=_server.default.renderToString(/*#__PURE__*/(0,_jsxRuntime.jsx)(_reactGlobalState.GlobalStateProvider,{stateProxy:globalState,children:/*#__PURE__*/(0,_jsxRuntime.jsx)(_server2.StaticRouter,{location:globalState.ssrContext.req.url,children:/*#__PURE__*/(0,_jsxRuntime.jsx)(Scene,{...rest})})}));/* 2. `chunks` array is used to record CSS chunks to inject. */const{chunks}=globalState.ssrContext;if(chunks.includes(chunkName)){throw new Error(`CodeSplit: chunk name clash for (${chunkName})`)}else chunks.push(chunkName);/* The result is rendered using the container with `dangerouslySetInnerHTML`
|
|
21
|
+
/* eslint-disable react-hooks/rules-of-hooks */const{data}=(0,_reactGlobalState.useAsyncData)(`dr_pogodin_react_utils___split_components.${chunkName}`,getComponentAsync);Scene=data?data.default||data:placeholder||(()=>null);/* eslint-enable react-hooks/rules-of-hooks */}const globalState=(0,_reactGlobalState.getGlobalState)();const{pathname}=(0,_reactRouterDom.useResolvedPath)("");const html=_server.default.renderToString(/*#__PURE__*/(0,_jsxRuntime.jsx)(_reactGlobalState.GlobalStateProvider,{stateProxy:globalState,children:/*#__PURE__*/(0,_jsxRuntime.jsx)(_server2.StaticRouter,{basename:pathname,location:globalState.ssrContext.req.url,children:/*#__PURE__*/(0,_jsxRuntime.jsx)(Scene,{...rest})})}));/* 2. `chunks` array is used to record CSS chunks to inject. */const{chunks}=globalState.ssrContext;if(chunks.includes(chunkName)){throw new Error(`CodeSplit: chunk name clash for (${chunkName})`)}else chunks.push(chunkName);/* The result is rendered using the container with `dangerouslySetInnerHTML`
|
|
22
22
|
* to allow reproduce the same rendering result at the client side, even prior
|
|
23
23
|
* to the async loading of the split code. */ /* eslint-disable react/no-danger */return/*#__PURE__*/(0,_jsxRuntime.jsx)("div",{dangerouslySetInnerHTML:{__html:html},"data-chunk-name":chunkName});/* eslint-enable react/no-danger */}ServerSide.propTypes={chunkName:_propTypes.default.string.isRequired,getComponentAsync:_propTypes.default.func,getComponentServer:_propTypes.default.func,placeholder:_propTypes.default.elementType};ServerSide.defaultProps={getComponentAsync:null,getComponentServer:null,placeholder:null};
|
|
24
24
|
//# sourceMappingURL=ServerSide.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/shared/components/CodeSplit/ServerSide.jsx"],"names":["resolveRequire","base","path","p","require","resolve","paths","default","def","named","Object","entries","forEach","key","value","Error","ServerSide","chunkName","getComponentAsync","getComponentServer","placeholder","rest","Scene","data","globalState","html","ReactDom","renderToString","ssrContext","req","url","chunks","includes","push","__html","propTypes","PT","string","isRequired","func","elementType","defaultProps"],"mappings":"oLAKA,gEACA,6DAEA,
|
|
1
|
+
{"version":3,"sources":["../../../../../src/shared/components/CodeSplit/ServerSide.jsx"],"names":["resolveRequire","base","path","p","require","resolve","paths","default","def","named","Object","entries","forEach","key","value","Error","ServerSide","chunkName","getComponentAsync","getComponentServer","placeholder","rest","Scene","data","globalState","pathname","html","ReactDom","renderToString","ssrContext","req","url","chunks","includes","push","__html","propTypes","PT","string","isRequired","func","elementType","defaultProps"],"mappings":"oLAKA,gEACA,6DAEA,gEAMA,gDACA,gD,6CAfA;AACA;AACA,G,CACA,iD,CAcA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GACA,QAASA,CAAAA,cAAT,CAAwBC,IAAxB,CAA8BC,IAA9B,CAAoC,CAClC;AACA;AACA;AACA;AACA,KAAMC,CAAAA,CAAC,CAAGC,OAAO,CAACC,OAAR,CAAgBH,IAAhB,CAAsB,CAAEI,KAAK,CAAE,CAACL,IAAD,CAAT,CAAtB,CAAV,CACA,8DACA,KAAM,CAAEM,OAAO,CAAEC,GAAX,CAAgB,GAAGC,KAAnB,EAA6BL,OAAO,CAACD,CAAD,CAA1C,CACA,6DACA,GAAI,CAACK,GAAL,CAAU,MAAOC,CAAAA,KAAP,CAEVC,MAAM,CAACC,OAAP,CAAeF,KAAf,EAAsBG,OAAtB,CAA8B,CAAC,CAACC,GAAD,CAAMC,KAAN,CAAD,GAAkB,CAC9C,GAAIN,GAAG,CAACK,GAAD,CAAP,CAAc,KAAME,CAAAA,KAAK,CAAC,4CAAD,CAAX,CACdP,GAAG,CAACK,GAAD,CAAH,CAAWC,KACZ,CAHD,EAIA,MAAON,CAAAA,GACR,CAEc,QAASQ,CAAAA,UAAT,CAAoB,CACjCC,SADiC,CAEjCC,iBAFiC,CAGjCC,kBAHiC,CAIjCC,WAJiC,CAKjC,GAAGC,IAL8B,CAApB,CAMZ,CACD;AACF;AACA;AACA;AACA;AACA,mEACE,GAAIC,CAAAA,KAAJ,CACA,GAAIH,kBAAJ,CAAwBG,KAAK,CAAGH,kBAAkB,CAACnB,cAAD,CAA1B,CAAxB,IACK,CACH;AACA;AACA,+CACA,KAAM,CAAEuB,IAAF,EAAW,mCACd,6CAA4CN,SAAU,EADxC,CAEfC,iBAFe,CAAjB,CAIAI,KAAK,CAAGC,IAAI,CAAIA,IAAI,CAAChB,OAAL,EAAgBgB,IAApB,CAA6BH,WAAW,GAAK,IAAM,IAAX,CAApD,CACA,8CACD,CAED,KAAMI,CAAAA,WAAW,CAAG,sCAApB,CACA,KAAM,CAAEC,QAAF,EAAe,oCAAgB,EAAhB,CAArB,CACA,KAAMC,CAAAA,IAAI,CAAGC,gBAASC,cAAT,cACX,oBAAC,qCAAD,EAAqB,UAAU,CAAEJ,WAAjC,uBACE,oBAAC,qBAAD,EACE,QAAQ,CAAEC,QADZ,CAEE,QAAQ,CAAED,WAAW,CAACK,UAAZ,CAAuBC,GAAvB,CAA2BC,GAFvC,uBAIE,oBAAC,KAAD,KAAWV,IAAX,EAJF,EADF,EADW,CAAb,CAWA,+DACA,KAAM,CAAEW,MAAF,EAAaR,WAAW,CAACK,UAA/B,CACA,GAAIG,MAAM,CAACC,QAAP,CAAgBhB,SAAhB,CAAJ,CAAgC,CAC9B,KAAM,IAAIF,CAAAA,KAAJ,CAAW,oCAAmCE,SAAU,GAAxD,CACP,CAFD,IAEOe,CAAAA,MAAM,CAACE,IAAP,CAAYjB,SAAZ,EAEP;AACF;AACA,+CA1CG,CA2CD,oCACA,mBACE,2BACE,uBAAuB,CAAE,CAAEkB,MAAM,CAAET,IAAV,CAD3B,CAEE,kBAAiBT,SAFnB,EADF,CAMA,mCACD,CAEDD,UAAU,CAACoB,SAAX,CAAuB,CACrBnB,SAAS,CAAEoB,mBAAGC,MAAH,CAAUC,UADA,CAErBrB,iBAAiB,CAAEmB,mBAAGG,IAFD,CAGrBrB,kBAAkB,CAAEkB,mBAAGG,IAHF,CAIrBpB,WAAW,CAAEiB,mBAAGI,WAJK,CAAvB,CAOAzB,UAAU,CAAC0B,YAAX,CAA0B,CACxBxB,iBAAiB,CAAE,IADK,CAExBC,kBAAkB,CAAE,IAFI,CAGxBC,WAAW,CAAE,IAHW,CAA1B","sourcesContent":["/**\n * Server-side implementation.\n */\n/* eslint-disable react/jsx-props-no-spreading */\n\nimport ReactDom from 'react-dom/server';\nimport PT from 'prop-types';\n\nimport {\n getGlobalState,\n GlobalStateProvider,\n useAsyncData,\n} from '@dr.pogodin/react-global-state';\n\nimport { useResolvedPath } from 'react-router-dom';\nimport { StaticRouter } from 'react-router-dom/server';\n\n/**\n * A specially wrapped `require()`, which is passed as an argument into\n * the optional `getComponentServer` prop of <{@link CodeSplit}> component.\n * @param {string} base Path resolution base, you want to pass in `__dirname`\n * value from the host module using `<CodeSplit>`.\n * @param {string} path The path of module to require.\n * @return {object} Required module.\n */\nfunction resolveRequire(base, path) {\n // NOTE: A part of code here attempts to correctly load ES6 modules\n // transformed by Babel; namely if required module has \"default\" field,\n // all other fields (presumed to be named exports) are attached to\n // the \"default\".\n const p = require.resolve(path, { paths: [base] });\n /* eslint-disable global-require, import/no-dynamic-require */\n const { default: def, ...named } = require(p);\n /* eslint-enable global-require, import/no-dynamic-require */\n if (!def) return named;\n\n Object.entries(named).forEach(([key, value]) => {\n if (def[key]) throw Error('Conflict between default and named exports');\n def[key] = value;\n });\n return def;\n}\n\nexport default function ServerSide({\n chunkName,\n getComponentAsync,\n getComponentServer,\n placeholder,\n ...rest\n}) {\n /* 1. The component, or its placeholder is rendered into HTML string.\n * The component is wrapped into <GlobalStateProvider>, and <StaticRouter>\n * to ensure that global state, and react router will work inside\n * the component, if present there. Also, if no server-side (sync) way\n * to load the component is provider, `useAsyncData(..)` is used to\n * attempt to load and use the component via SSR mechanics. */\n let Scene;\n if (getComponentServer) Scene = getComponentServer(resolveRequire);\n else {\n // In this case we are sure the condition won't change during the rendering\n // loop, thus we can ignore the rule.\n /* eslint-disable react-hooks/rules-of-hooks */\n const { data } = useAsyncData(\n `dr_pogodin_react_utils___split_components.${chunkName}`,\n getComponentAsync,\n );\n Scene = data ? (data.default || data) : (placeholder || (() => null));\n /* eslint-enable react-hooks/rules-of-hooks */\n }\n\n const globalState = getGlobalState();\n const { pathname } = useResolvedPath('');\n const html = ReactDom.renderToString((\n <GlobalStateProvider stateProxy={globalState}>\n <StaticRouter\n basename={pathname}\n location={globalState.ssrContext.req.url}\n >\n <Scene {...rest} />\n </StaticRouter>\n </GlobalStateProvider>\n ));\n\n /* 2. `chunks` array is used to record CSS chunks to inject. */\n const { chunks } = globalState.ssrContext;\n if (chunks.includes(chunkName)) {\n throw new Error(`CodeSplit: chunk name clash for (${chunkName})`);\n } else chunks.push(chunkName);\n\n /* The result is rendered using the container with `dangerouslySetInnerHTML`\n * to allow reproduce the same rendering result at the client side, even prior\n * to the async loading of the split code. */\n /* eslint-disable react/no-danger */\n return (\n <div\n dangerouslySetInnerHTML={{ __html: html }}\n data-chunk-name={chunkName}\n />\n );\n /* eslint-enable react/no-danger */\n}\n\nServerSide.propTypes = {\n chunkName: PT.string.isRequired,\n getComponentAsync: PT.func,\n getComponentServer: PT.func,\n placeholder: PT.elementType,\n};\n\nServerSide.defaultProps = {\n getComponentAsync: null,\n getComponentServer: null,\n placeholder: null,\n};\n"],"file":"ServerSide.js"}
|
package/package.json
CHANGED
|
@@ -7,11 +7,10 @@
|
|
|
7
7
|
"url": "https://github.com/birdofpreyru/react-utils/issues"
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@babel/runtime": "^7.16.
|
|
11
|
-
"@dr.pogodin/babel-plugin-react-css-modules": "^6.5.
|
|
12
|
-
"@dr.pogodin/react-global-state": "^0.6.
|
|
10
|
+
"@babel/runtime": "^7.16.5",
|
|
11
|
+
"@dr.pogodin/babel-plugin-react-css-modules": "^6.5.4",
|
|
12
|
+
"@dr.pogodin/react-global-state": "^0.6.5",
|
|
13
13
|
"@dr.pogodin/react-themes": "^1.3.3",
|
|
14
|
-
"autoprefix": "^1.0.1",
|
|
15
14
|
"axios": "^0.24.0",
|
|
16
15
|
"commander": "^8.3.0",
|
|
17
16
|
"compression": "^1.7.4",
|
|
@@ -22,7 +21,7 @@
|
|
|
22
21
|
"express": "^4.17.1",
|
|
23
22
|
"helmet": "^4.6.0",
|
|
24
23
|
"http-status-codes": "^2.1.4",
|
|
25
|
-
"joi": "^17.
|
|
24
|
+
"joi": "^17.5.0",
|
|
26
25
|
"lodash": "^4.17.21",
|
|
27
26
|
"morgan": "^1.10.0",
|
|
28
27
|
"node-forge": "^0.10.0",
|
|
@@ -32,7 +31,7 @@
|
|
|
32
31
|
"react": "^17.0.2",
|
|
33
32
|
"react-dom": "^17.0.2",
|
|
34
33
|
"react-helmet": "^6.1.0",
|
|
35
|
-
"react-router-dom": "^6.
|
|
34
|
+
"react-router-dom": "^6.1.1",
|
|
36
35
|
"request-ip": "^2.1.3",
|
|
37
36
|
"rimraf": "^3.0.2",
|
|
38
37
|
"serialize-javascript": "^6.0.0",
|
|
@@ -45,60 +44,60 @@
|
|
|
45
44
|
"description": "Collection of generic ReactJS components and utils",
|
|
46
45
|
"devDependencies": {
|
|
47
46
|
"@babel/cli": "^7.16.0",
|
|
48
|
-
"@babel/core": "^7.16.
|
|
49
|
-
"@babel/eslint-parser": "^7.16.
|
|
50
|
-
"@babel/eslint-plugin": "^7.
|
|
51
|
-
"@babel/node": "^7.16.
|
|
47
|
+
"@babel/core": "^7.16.5",
|
|
48
|
+
"@babel/eslint-parser": "^7.16.5",
|
|
49
|
+
"@babel/eslint-plugin": "^7.16.5",
|
|
50
|
+
"@babel/node": "^7.16.5",
|
|
52
51
|
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
|
|
53
|
-
"@babel/plugin-transform-runtime": "^7.16.
|
|
54
|
-
"@babel/preset-env": "^7.16.
|
|
55
|
-
"@babel/preset-react": "^7.16.
|
|
52
|
+
"@babel/plugin-transform-runtime": "^7.16.5",
|
|
53
|
+
"@babel/preset-env": "^7.16.5",
|
|
54
|
+
"@babel/preset-react": "^7.16.5",
|
|
56
55
|
"@babel/types": "^7.16.0",
|
|
57
56
|
"@dr.pogodin/babel-plugin-css-modules-transform": "^1.10.0",
|
|
58
57
|
"@dr.pogodin/babel-plugin-transform-assets": "^1.1.1",
|
|
59
|
-
"@dr.pogodin/babel-preset-svgr": "^1.
|
|
60
|
-
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.
|
|
58
|
+
"@dr.pogodin/babel-preset-svgr": "^1.4.0",
|
|
59
|
+
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.3",
|
|
61
60
|
"autoprefixer": "^10.4.0",
|
|
62
|
-
"babel-jest": "^27.
|
|
61
|
+
"babel-jest": "^27.4.5",
|
|
63
62
|
"babel-loader": "^8.2.3",
|
|
64
63
|
"babel-plugin-module-resolver": "^4.1.0",
|
|
65
|
-
"core-js": "^3.19.
|
|
64
|
+
"core-js": "^3.19.3",
|
|
66
65
|
"css-loader": "^6.5.1",
|
|
67
|
-
"css-minimizer-webpack-plugin": "^3.
|
|
68
|
-
"eslint": "^8.
|
|
69
|
-
"eslint-config-airbnb": "^19.0.
|
|
66
|
+
"css-minimizer-webpack-plugin": "^3.2.0",
|
|
67
|
+
"eslint": "^8.4.1",
|
|
68
|
+
"eslint-config-airbnb": "^19.0.2",
|
|
70
69
|
"eslint-import-resolver-babel-module": "^5.3.1",
|
|
71
70
|
"eslint-plugin-import": "^2.25.3",
|
|
72
|
-
"eslint-plugin-jest": "^25.
|
|
71
|
+
"eslint-plugin-jest": "^25.3.0",
|
|
73
72
|
"eslint-plugin-jsx-a11y": "^6.5.1",
|
|
74
73
|
"eslint-plugin-react": "^7.27.1",
|
|
75
74
|
"eslint-plugin-react-hooks": "^4.3.0",
|
|
76
75
|
"identity-obj-proxy": "^3.0.0",
|
|
77
|
-
"jest": "^27.
|
|
76
|
+
"jest": "^27.4.5",
|
|
78
77
|
"mini-css-extract-plugin": "^2.4.5",
|
|
79
78
|
"mockdate": "^3.0.5",
|
|
80
79
|
"nodelist-foreach-polyfill": "^1.2.0",
|
|
81
80
|
"postcss": "^8.3.11",
|
|
82
|
-
"postcss-loader": "^6.2.
|
|
81
|
+
"postcss-loader": "^6.2.1",
|
|
83
82
|
"postcss-scss": "^4.0.2",
|
|
84
83
|
"pretty": "^2.0.0",
|
|
85
84
|
"react-refresh": "^0.11.0",
|
|
86
85
|
"react-test-renderer": "^17.0.2",
|
|
87
86
|
"regenerator-runtime": "^0.13.9",
|
|
88
87
|
"resolve-url-loader": "^4.0.0",
|
|
89
|
-
"sass": "^1.
|
|
90
|
-
"sass-loader": "^12.
|
|
88
|
+
"sass": "^1.45.0",
|
|
89
|
+
"sass-loader": "^12.4.0",
|
|
91
90
|
"sitemap": "^7.0.0",
|
|
92
91
|
"stylelint": "^14.1.0",
|
|
93
92
|
"stylelint-config-standard-scss": "^3.0.0",
|
|
94
93
|
"supertest": "^6.1.6",
|
|
95
|
-
"webpack": "^5.
|
|
94
|
+
"webpack": "^5.65.0",
|
|
96
95
|
"webpack-dev-middleware": "^5.2.2",
|
|
97
96
|
"webpack-hot-middleware": "^2.25.1",
|
|
98
97
|
"webpack-merge": "^5.8.0",
|
|
99
|
-
"workbox-core": "^6.4.
|
|
100
|
-
"workbox-precaching": "^6.4.
|
|
101
|
-
"workbox-webpack-plugin": "^6.4.
|
|
98
|
+
"workbox-core": "^6.4.2",
|
|
99
|
+
"workbox-precaching": "^6.4.2",
|
|
100
|
+
"workbox-webpack-plugin": "^6.4.2"
|
|
102
101
|
},
|
|
103
102
|
"engines": {
|
|
104
103
|
"node": ">=14.x",
|
|
@@ -132,5 +131,5 @@
|
|
|
132
131
|
"lint:scss": "stylelint -- **/*.{css,scss}",
|
|
133
132
|
"test": "npm run lint && npm run jest"
|
|
134
133
|
},
|
|
135
|
-
"version": "1.12.
|
|
134
|
+
"version": "1.12.4"
|
|
136
135
|
}
|