@bigbinary/neeto-commons-frontend 4.13.92 → 4.13.94-beta.1
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/README.md +1 -0
- package/configs/esbuild/index.js +4 -0
- package/configs/esbuild/plugins/packageTranslations.js +16 -0
- package/configs/esbuild/plugins/preval.js +16 -6
- package/configs/esbuild/plugins/reactGiphy.js +1 -0
- package/configs/scripts/buildTranslationImports.js +21 -0
- package/configs/scripts/getEnglishTranslation.js +11 -0
- package/configs/utils/packageTranslations.js +90 -0
- package/configs/vite/index.js +5 -0
- package/configs/vite/plugins/packageTranslations.js +14 -0
- package/configs/vite/plugins/preval.js +17 -11
- package/dist/cjs/initializers/i18n.js +120 -183
- package/dist/cjs/initializers/i18n.js.map +1 -1
- package/dist/cjs/initializers/index.js +43 -19
- package/dist/cjs/initializers/index.js.map +1 -1
- package/dist/cjs/react-utils/PrivateRoute/PrivateRoute.js +17 -13
- package/dist/cjs/react-utils/PrivateRoute/PrivateRoute.js.map +1 -1
- package/dist/cjs/react-utils/PrivateRoute/constants.js +8 -0
- package/dist/cjs/react-utils/PrivateRoute/constants.js.map +1 -0
- package/dist/cjs/react-utils/PrivateRoute/index.js +2 -0
- package/dist/cjs/react-utils/PrivateRoute/index.js.map +1 -1
- package/dist/cjs/react-utils/PrivateRoute/utils.js +16 -0
- package/dist/cjs/react-utils/PrivateRoute/utils.js.map +1 -0
- package/dist/cjs/react-utils/index.js +5 -0
- package/dist/cjs/react-utils/index.js.map +1 -1
- package/dist/cjs/react-utils/mount/mount.js +68 -69
- package/dist/cjs/react-utils/mount/mount.js.map +1 -1
- package/dist/cjs/react-utils/usePrefersReducedMotion/constants.js +6 -0
- package/dist/cjs/react-utils/usePrefersReducedMotion/constants.js.map +1 -0
- package/dist/cjs/react-utils/usePrefersReducedMotion/index.js +12 -0
- package/dist/cjs/react-utils/usePrefersReducedMotion/index.js.map +1 -0
- package/dist/cjs/react-utils/usePrefersReducedMotion/usePrefersReducedMotion.js +46 -0
- package/dist/cjs/react-utils/usePrefersReducedMotion/usePrefersReducedMotion.js.map +1 -0
- package/dist/initializers/i18n.js +120 -183
- package/dist/initializers/i18n.js.map +1 -1
- package/dist/initializers/index.js +43 -19
- package/dist/initializers/index.js.map +1 -1
- package/dist/react-utils/PrivateRoute/PrivateRoute.js +17 -13
- package/dist/react-utils/PrivateRoute/PrivateRoute.js.map +1 -1
- package/dist/react-utils/PrivateRoute/constants.js +5 -0
- package/dist/react-utils/PrivateRoute/constants.js.map +1 -0
- package/dist/react-utils/PrivateRoute/index.js +2 -0
- package/dist/react-utils/PrivateRoute/index.js.map +1 -1
- package/dist/react-utils/PrivateRoute/utils.js +14 -0
- package/dist/react-utils/PrivateRoute/utils.js.map +1 -0
- package/dist/react-utils/index.js +4 -0
- package/dist/react-utils/index.js.map +1 -1
- package/dist/react-utils/mount/mount.js +68 -69
- package/dist/react-utils/mount/mount.js.map +1 -1
- package/dist/react-utils/usePrefersReducedMotion/constants.js +4 -0
- package/dist/react-utils/usePrefersReducedMotion/constants.js.map +1 -0
- package/dist/react-utils/usePrefersReducedMotion/index.js +6 -0
- package/dist/react-utils/usePrefersReducedMotion/index.js.map +1 -0
- package/dist/react-utils/usePrefersReducedMotion/usePrefersReducedMotion.js +44 -0
- package/dist/react-utils/usePrefersReducedMotion/usePrefersReducedMotion.js.map +1 -0
- package/initializers.d.ts +1 -1
- package/package.json +13 -7
- package/react-utils.d.ts +69 -3
- package/src/translations/ar.json +111 -0
- package/src/translations/bg.json +111 -0
- package/src/translations/ca.json +111 -0
- package/src/translations/cs.json +111 -0
- package/src/translations/da.json +111 -0
- package/src/translations/de.json +111 -0
- package/src/translations/en.json +111 -0
- package/src/translations/es-MX.json +111 -0
- package/src/translations/es.json +111 -0
- package/src/translations/et.json +111 -0
- package/src/translations/fi.json +111 -0
- package/src/translations/fil.json +111 -0
- package/src/translations/fr.json +111 -0
- package/src/translations/he.json +111 -0
- package/src/translations/hi.json +111 -0
- package/src/translations/hr.json +111 -0
- package/src/translations/id.json +111 -0
- package/src/translations/it.json +111 -0
- package/src/translations/ja.json +111 -0
- package/src/translations/ko.json +111 -0
- package/src/translations/nl.json +111 -0
- package/src/translations/pl.json +111 -0
- package/src/translations/pt-BR.json +111 -0
- package/src/translations/pt.json +111 -0
- package/src/translations/ro.json +111 -0
- package/src/translations/ru.json +111 -0
- package/src/translations/sk.json +111 -0
- package/src/translations/sl.json +111 -0
- package/src/translations/sv.json +111 -0
- package/src/translations/th.json +111 -0
- package/src/translations/tr.json +111 -0
- package/src/translations/uk.json +111 -0
- package/src/translations/vi.json +111 -0
- package/src/translations/zh-CN.json +111 -0
- package/src/translations/zh-TW.json +111 -0
- package/configs/scripts/getPkgTranslations.js +0 -45
|
@@ -5,10 +5,12 @@ var objectWithoutProperties = require('../../objectWithoutProperties-wSsbHFcG.js
|
|
|
5
5
|
var ErrorPage = require('@bigbinary/neeto-molecules/ErrorPage');
|
|
6
6
|
var ramda = require('ramda');
|
|
7
7
|
var reactRouterDom = require('react-router-dom');
|
|
8
|
+
var reactUtils_PrivateRoute_utils = require('./utils.js');
|
|
8
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
9
10
|
require('../../typeof-D4ZZ_FlZ.js');
|
|
11
|
+
require('./constants.js');
|
|
10
12
|
|
|
11
|
-
var _excluded = ["condition", "redirectRoute", "errorPage", "permissions"];
|
|
13
|
+
var _excluded = ["condition", "redirectRoute", "errorPage", "permissions", "homeUrl"];
|
|
12
14
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
15
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
16
|
var PrivateRoute = function PrivateRoute(_ref) {
|
|
@@ -20,29 +22,31 @@ var PrivateRoute = function PrivateRoute(_ref) {
|
|
|
20
22
|
errorPage = _ref$errorPage === void 0 ? undefined : _ref$errorPage,
|
|
21
23
|
_ref$permissions = _ref.permissions,
|
|
22
24
|
permissions = _ref$permissions === void 0 ? undefined : _ref$permissions,
|
|
25
|
+
_ref$homeUrl = _ref.homeUrl,
|
|
26
|
+
homeUrl = _ref$homeUrl === void 0 ? undefined : _ref$homeUrl,
|
|
23
27
|
props = objectWithoutProperties._objectWithoutProperties(_ref, _excluded);
|
|
28
|
+
var renderErrorPage = function renderErrorPage(errorPage, homeUrl, path) {
|
|
29
|
+
return errorPage || /*#__PURE__*/jsxRuntime.jsx(ErrorPage, {
|
|
30
|
+
homeUrl: homeUrl || reactUtils_PrivateRoute_utils.getHomeUrl(path),
|
|
31
|
+
status: 403
|
|
32
|
+
});
|
|
33
|
+
};
|
|
24
34
|
if (condition) {
|
|
25
35
|
if (permissions) {
|
|
26
36
|
return globalProps.permissions.some(ramda.includes(ramda.__, permissions)) ? /*#__PURE__*/jsxRuntime.jsx(reactRouterDom.Route, _objectSpread({}, props)) : /*#__PURE__*/jsxRuntime.jsx(reactRouterDom.Route, _objectSpread(_objectSpread({}, props), {}, {
|
|
27
37
|
component: function component() {
|
|
28
|
-
return errorPage
|
|
29
|
-
status: 403
|
|
30
|
-
});
|
|
38
|
+
return renderErrorPage(errorPage, homeUrl, props.path);
|
|
31
39
|
}
|
|
32
40
|
}));
|
|
33
41
|
}
|
|
34
42
|
return /*#__PURE__*/jsxRuntime.jsx(reactRouterDom.Route, _objectSpread({}, props));
|
|
35
43
|
}
|
|
36
|
-
if (redirectRoute) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
return errorPage || /*#__PURE__*/jsxRuntime.jsx(ErrorPage, {
|
|
44
|
-
status: 403
|
|
44
|
+
if (redirectRoute) return /*#__PURE__*/jsxRuntime.jsx(reactRouterDom.Redirect, {
|
|
45
|
+
to: {
|
|
46
|
+
pathname: redirectRoute
|
|
47
|
+
}
|
|
45
48
|
});
|
|
49
|
+
return renderErrorPage(errorPage, homeUrl, props.path);
|
|
46
50
|
};
|
|
47
51
|
|
|
48
52
|
module.exports = PrivateRoute;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrivateRoute.js","sources":["../../../../src/react-utils/PrivateRoute/PrivateRoute.jsx"],"sourcesContent":["import ErrorPage from \"neetomolecules/ErrorPage\";\nimport { __, includes } from \"ramda\";\nimport { Redirect, Route } from \"react-router-dom\";\n\nconst PrivateRoute = ({\n condition = globalProps.authenticated,\n redirectRoute = undefined,\n errorPage = undefined,\n permissions = undefined,\n ...props\n}) => {\n if (condition) {\n if (permissions) {\n return globalProps.permissions.some(includes(__, permissions)) ? (\n <Route {...props} />\n ) : (\n <Route\n {...props}\n component={() => errorPage
|
|
1
|
+
{"version":3,"file":"PrivateRoute.js","sources":["../../../../src/react-utils/PrivateRoute/PrivateRoute.jsx"],"sourcesContent":["import ErrorPage from \"neetomolecules/ErrorPage\";\nimport { __, includes } from \"ramda\";\nimport { Redirect, Route } from \"react-router-dom\";\n\nimport { getHomeUrl } from \"./utils\";\n\nconst PrivateRoute = ({\n condition = globalProps.authenticated,\n redirectRoute = undefined,\n errorPage = undefined,\n permissions = undefined,\n homeUrl = undefined,\n ...props\n}) => {\n const renderErrorPage = (errorPage, homeUrl, path) =>\n errorPage || (\n <ErrorPage homeUrl={homeUrl || getHomeUrl(path)} status={403} />\n );\n\n if (condition) {\n if (permissions) {\n return globalProps.permissions.some(includes(__, permissions)) ? (\n <Route {...props} />\n ) : (\n <Route\n {...props}\n component={() => renderErrorPage(errorPage, homeUrl, props.path)}\n />\n );\n }\n\n return <Route {...props} />;\n }\n\n if (redirectRoute) return <Redirect to={{ pathname: redirectRoute }} />;\n\n return renderErrorPage(errorPage, homeUrl, props.path);\n};\n\nexport default PrivateRoute;\n"],"names":["PrivateRoute","_ref","_ref$condition","condition","globalProps","authenticated","_ref$redirectRoute","redirectRoute","undefined","_ref$errorPage","errorPage","_ref$permissions","permissions","_ref$homeUrl","homeUrl","props","_objectWithoutProperties","_excluded","renderErrorPage","path","_jsx","ErrorPage","getHomeUrl","status","some","includes","__","Route","_objectSpread","component","Redirect","to","pathname"],"mappings":";;;;;;;;;;;;;;;AAMA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAOZ;AAAA,EAAA,IAAAC,cAAA,GAAAD,IAAA,CANJE,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAGE,WAAW,CAACC,aAAa,GAAAH,cAAA;IAAAI,kBAAA,GAAAL,IAAA,CACrCM,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAGE,MAAAA,GAAAA,SAAS,GAAAF,kBAAA;IAAAG,cAAA,GAAAR,IAAA,CACzBS,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAGD,MAAAA,GAAAA,SAAS,GAAAC,cAAA;IAAAE,gBAAA,GAAAV,IAAA,CACrBW,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAGH,MAAAA,GAAAA,SAAS,GAAAG,gBAAA;IAAAE,YAAA,GAAAZ,IAAA,CACvBa,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAGL,MAAAA,GAAAA,SAAS,GAAAK,YAAA;AAChBE,IAAAA,KAAK,GAAAC,gDAAA,CAAAf,IAAA,EAAAgB,SAAA,CAAA;EAER,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIR,SAAS,EAAEI,OAAO,EAAEK,IAAI,EAAA;AAAA,IAAA,OAC/CT,SAAS,iBACPU,cAAA,CAACC,SAAS,EAAA;AAACP,MAAAA,OAAO,EAAEA,OAAO,IAAIQ,wCAAU,CAACH,IAAI,CAAE;AAACI,MAAAA,MAAM,EAAE;AAAI,KAAE,CAChE;AAAA,GAAA;AAEH,EAAA,IAAIpB,SAAS,EAAE;AACb,IAAA,IAAIS,WAAW,EAAE;AACf,MAAA,OAAOR,WAAW,CAACQ,WAAW,CAACY,IAAI,CAACC,cAAQ,CAACC,QAAE,EAAEd,WAAW,CAAC,CAAC,gBAC5DQ,cAAA,CAACO,oBAAK,EAAAC,aAAA,CAAA,EAAA,EAAKb,KAAK,CAAG,CAAC,gBAEpBK,cAAA,CAACO,oBAAK,EAAAC,aAAA,CAAAA,aAAA,KACAb,KAAK,CAAA,EAAA,EAAA,EAAA;QACTc,SAAS,EAAE,SAAXA,SAASA,GAAA;UAAA,OAAQX,eAAe,CAACR,SAAS,EAAEI,OAAO,EAAEC,KAAK,CAACI,IAAI,CAAC;AAAA;AAAC,OAAA,CAClE,CACF;AACH;IAEA,oBAAOC,cAAA,CAACO,oBAAK,EAAAC,aAAA,CAAKb,EAAAA,EAAAA,KAAK,CAAG,CAAC;AAC7B;AAEA,EAAA,IAAIR,aAAa,EAAE,oBAAOa,cAAA,CAACU,uBAAQ,EAAA;AAACC,IAAAA,EAAE,EAAE;AAAEC,MAAAA,QAAQ,EAAEzB;AAAc;AAAE,GAAE,CAAC;EAEvE,OAAOW,eAAe,CAACR,SAAS,EAAEI,OAAO,EAAEC,KAAK,CAACI,IAAI,CAAC;AACxD;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/react-utils/PrivateRoute/constants.js"],"sourcesContent":["export const HOME_PATH = \"/\";\nexport const ADMIN_PATH = \"/admin\";\n"],"names":["HOME_PATH","ADMIN_PATH"],"mappings":";;AAAO,IAAMA,SAAS,GAAG;AAClB,IAAMC,UAAU,GAAG;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var reactUtils_PrivateRoute_constants = require('./constants.js');
|
|
4
|
+
|
|
5
|
+
var getHomeUrl = function getHomeUrl(path) {
|
|
6
|
+
if (!path) return reactUtils_PrivateRoute_constants.HOME_PATH;
|
|
7
|
+
if (Array.isArray(path)) {
|
|
8
|
+
return path.some(function (p) {
|
|
9
|
+
return p === null || p === void 0 ? void 0 : p.includes(reactUtils_PrivateRoute_constants.ADMIN_PATH);
|
|
10
|
+
}) ? reactUtils_PrivateRoute_constants.ADMIN_PATH : reactUtils_PrivateRoute_constants.HOME_PATH;
|
|
11
|
+
}
|
|
12
|
+
return path.includes(reactUtils_PrivateRoute_constants.ADMIN_PATH) ? reactUtils_PrivateRoute_constants.ADMIN_PATH : reactUtils_PrivateRoute_constants.HOME_PATH;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
exports.getHomeUrl = getHomeUrl;
|
|
16
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/react-utils/PrivateRoute/utils.js"],"sourcesContent":["import { ADMIN_PATH, HOME_PATH } from \"./constants\";\n\nexport const getHomeUrl = path => {\n if (!path) return HOME_PATH;\n\n if (Array.isArray(path)) {\n return path.some(p => p?.includes(ADMIN_PATH)) ? ADMIN_PATH : HOME_PATH;\n }\n\n return path.includes(ADMIN_PATH) ? ADMIN_PATH : HOME_PATH;\n};\n"],"names":["getHomeUrl","path","HOME_PATH","Array","isArray","some","p","includes","ADMIN_PATH"],"mappings":";;;;IAEaA,UAAU,GAAG,SAAbA,UAAUA,CAAGC,IAAI,EAAI;AAChC,EAAA,IAAI,CAACA,IAAI,EAAE,OAAOC,2CAAS;AAE3B,EAAA,IAAIC,KAAK,CAACC,OAAO,CAACH,IAAI,CAAC,EAAE;AACvB,IAAA,OAAOA,IAAI,CAACI,IAAI,CAAC,UAAAC,CAAC,EAAA;MAAA,OAAIA,CAAC,aAADA,CAAC,KAAA,MAAA,GAAA,MAAA,GAADA,CAAC,CAAEC,QAAQ,CAACC,4CAAU,CAAC;KAAC,CAAA,GAAGA,4CAAU,GAAGN,2CAAS;AACzE;EAEA,OAAOD,IAAI,CAACM,QAAQ,CAACC,4CAAU,CAAC,GAAGA,4CAAU,GAAGN,2CAAS;AAC3D;;;;"}
|
|
@@ -15,6 +15,7 @@ var reactUtils_useMutationWithInvalidation_useMutationWithInvalidation = require
|
|
|
15
15
|
var reactUtils_useOnClickOutside_useOnClickOutside = require('./useOnClickOutside/useOnClickOutside.js');
|
|
16
16
|
var reactUtils_usePersistedQuery_usePersistedQuery = require('./usePersistedQuery/usePersistedQuery.js');
|
|
17
17
|
var reactUtils_usePrevious_usePrevious = require('./usePrevious/usePrevious.js');
|
|
18
|
+
var reactUtils_usePrefersReducedMotion_usePrefersReducedMotion = require('./usePrefersReducedMotion/usePrefersReducedMotion.js');
|
|
18
19
|
var reactUtils_useQueryParams_useQueryParams = require('./useQueryParams/useQueryParams.js');
|
|
19
20
|
var reactUtils_useRegisterNavigationCheckpoint_useRegisterNavigationCheckpoint = require('./useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js');
|
|
20
21
|
var reactUtils_useStateWithDependency_useStateWithDependency = require('./useStateWithDependency/useStateWithDependency.js');
|
|
@@ -49,6 +50,8 @@ require('./HoneybadgerErrorBoundary/utils.js');
|
|
|
49
50
|
require('../objectWithoutProperties-wSsbHFcG.js');
|
|
50
51
|
require('@bigbinary/neeto-molecules/ErrorPage');
|
|
51
52
|
require('react-router-dom');
|
|
53
|
+
require('./PrivateRoute/utils.js');
|
|
54
|
+
require('./PrivateRoute/constants.js');
|
|
52
55
|
require('react-helmet');
|
|
53
56
|
require('../slicedToArray-BcL7fKuL.js');
|
|
54
57
|
require('../unsupportedIterableToArray-BoHMiKNA.js');
|
|
@@ -77,6 +80,7 @@ require('../lodash-yQg9l0eZ.js');
|
|
|
77
80
|
require('@bigbinary/neeto-time-zones');
|
|
78
81
|
require('ua-parser-js');
|
|
79
82
|
require('@tanstack/react-query');
|
|
83
|
+
require('./usePrefersReducedMotion/constants.js');
|
|
80
84
|
require('./useBreakpoints/utils.js');
|
|
81
85
|
require('./useColumnConfig/useConfigApi.js');
|
|
82
86
|
require('./useColumnConfig/api.js');
|
|
@@ -111,6 +115,7 @@ exports.useMutationWithInvalidation = reactUtils_useMutationWithInvalidation_use
|
|
|
111
115
|
exports.useOnClickOutside = reactUtils_useOnClickOutside_useOnClickOutside;
|
|
112
116
|
exports.usePersistedQuery = reactUtils_usePersistedQuery_usePersistedQuery;
|
|
113
117
|
exports.usePrevious = reactUtils_usePrevious_usePrevious;
|
|
118
|
+
exports.usePrefersReducedMotion = reactUtils_usePrefersReducedMotion_usePrefersReducedMotion;
|
|
114
119
|
exports.useQueryParams = reactUtils_useQueryParams_useQueryParams;
|
|
115
120
|
exports.useNavigationCheckpoints = reactUtils_useRegisterNavigationCheckpoint_useRegisterNavigationCheckpoint.useNavigationCheckpoints;
|
|
116
121
|
exports.useRegisterNavigationCheckpoint = reactUtils_useRegisterNavigationCheckpoint_useRegisterNavigationCheckpoint.default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -10,76 +10,75 @@ require('../../_commonjsHelpers-BJu3ubxk.js');
|
|
|
10
10
|
|
|
11
11
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
12
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
-
function
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var _ref2, reactClass, reactProps, importFn, props, module, Component, root;
|
|
20
|
-
return index._regeneratorRuntime.wrap(function _callee$(_context) {
|
|
21
|
-
while (1) switch (_context.prev = _context.next) {
|
|
22
|
-
case 0:
|
|
23
|
-
if (!(((_element$dataset = element.dataset) === null || _element$dataset === void 0 ? void 0 : _element$dataset.mounted) === "true")) {
|
|
24
|
-
_context.next = 2;
|
|
25
|
-
break;
|
|
26
|
-
}
|
|
27
|
-
return _context.abrupt("return");
|
|
28
|
-
case 2:
|
|
29
|
-
_ref2 = element.dataset || {}, reactClass = _ref2.reactClass, reactProps = _ref2.reactProps;
|
|
30
|
-
if (reactClass) {
|
|
31
|
-
_context.next = 5;
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
return _context.abrupt("return");
|
|
35
|
-
case 5:
|
|
36
|
-
importFn = components[reactClass];
|
|
37
|
-
if (importFn) {
|
|
38
|
-
_context.next = 9;
|
|
39
|
-
break;
|
|
40
|
-
}
|
|
41
|
-
console.warn("WARNING: No component found for:", reactClass, components);
|
|
42
|
-
return _context.abrupt("return");
|
|
43
|
-
case 9:
|
|
44
|
-
props = {};
|
|
45
|
-
if (reactProps) {
|
|
46
|
-
try {
|
|
47
|
-
props = JSON.parse(reactProps);
|
|
48
|
-
} catch (_unused) {
|
|
49
|
-
console.error("Invalid JSON in data-react-props:", reactProps);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
_context.prev = 11;
|
|
53
|
-
_context.next = 14;
|
|
54
|
-
return utils_retryImport(importFn);
|
|
55
|
-
case 14:
|
|
56
|
-
module = _context.sent;
|
|
57
|
-
Component = module["default"] || module;
|
|
58
|
-
root = ReactDOM.createRoot(element);
|
|
59
|
-
root.render(/*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread({}, props)));
|
|
60
|
-
if (element.dataset) element.dataset.mounted = "true";
|
|
61
|
-
_context.next = 24;
|
|
62
|
-
break;
|
|
63
|
-
case 21:
|
|
64
|
-
_context.prev = 21;
|
|
65
|
-
_context.t0 = _context["catch"](11);
|
|
66
|
-
console.error("Failed to load component \"".concat(reactClass, "\""), _context.t0);
|
|
67
|
-
case 24:
|
|
68
|
-
case "end":
|
|
69
|
-
return _context.stop();
|
|
70
|
-
}
|
|
71
|
-
}, _callee, null, [[11, 21]]);
|
|
72
|
-
}));
|
|
73
|
-
return function (_x) {
|
|
74
|
-
return _ref.apply(this, arguments);
|
|
75
|
-
};
|
|
76
|
-
}());
|
|
77
|
-
};
|
|
78
|
-
if (document.readyState === "loading") {
|
|
79
|
-
document.addEventListener("DOMContentLoaded", run);
|
|
80
|
-
} else {
|
|
81
|
-
run();
|
|
13
|
+
var jsonParse = function jsonParse(value) {
|
|
14
|
+
if (typeof value !== "string") return {};
|
|
15
|
+
try {
|
|
16
|
+
return JSON.parse(value);
|
|
17
|
+
} catch (_unused) {
|
|
18
|
+
return {};
|
|
82
19
|
}
|
|
20
|
+
};
|
|
21
|
+
function mount(_x) {
|
|
22
|
+
return _mount.apply(this, arguments);
|
|
23
|
+
}
|
|
24
|
+
function _mount() {
|
|
25
|
+
_mount = index._asyncToGenerator(/*#__PURE__*/index._regeneratorRuntime.mark(function _callee(componentMap) {
|
|
26
|
+
var _element$dataset;
|
|
27
|
+
var element, _ref, reactClass, reactProps, importFn, props, module, Component, root;
|
|
28
|
+
return index._regeneratorRuntime.wrap(function _callee$(_context) {
|
|
29
|
+
while (1) switch (_context.prev = _context.next) {
|
|
30
|
+
case 0:
|
|
31
|
+
element = document.querySelector("[data-react-class]");
|
|
32
|
+
if (element) {
|
|
33
|
+
_context.next = 3;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
return _context.abrupt("return");
|
|
37
|
+
case 3:
|
|
38
|
+
if (!(((_element$dataset = element.dataset) === null || _element$dataset === void 0 ? void 0 : _element$dataset.mounted) === "true")) {
|
|
39
|
+
_context.next = 5;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
return _context.abrupt("return");
|
|
43
|
+
case 5:
|
|
44
|
+
_ref = element.dataset || {}, reactClass = _ref.reactClass, reactProps = _ref.reactProps;
|
|
45
|
+
if (reactClass) {
|
|
46
|
+
_context.next = 8;
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
return _context.abrupt("return");
|
|
50
|
+
case 8:
|
|
51
|
+
importFn = componentMap[reactClass];
|
|
52
|
+
if (importFn) {
|
|
53
|
+
_context.next = 12;
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
console.warn("WARNING: No component found for:", reactClass, componentMap);
|
|
57
|
+
return _context.abrupt("return");
|
|
58
|
+
case 12:
|
|
59
|
+
props = jsonParse(reactProps);
|
|
60
|
+
_context.prev = 13;
|
|
61
|
+
_context.next = 16;
|
|
62
|
+
return utils_retryImport(importFn);
|
|
63
|
+
case 16:
|
|
64
|
+
module = _context.sent;
|
|
65
|
+
Component = module["default"] || module;
|
|
66
|
+
root = ReactDOM.createRoot(element);
|
|
67
|
+
root.render(/*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread({}, props)));
|
|
68
|
+
if (element.dataset) element.dataset.mounted = "true";
|
|
69
|
+
_context.next = 26;
|
|
70
|
+
break;
|
|
71
|
+
case 23:
|
|
72
|
+
_context.prev = 23;
|
|
73
|
+
_context.t0 = _context["catch"](13);
|
|
74
|
+
console.error("Failed to load component \"".concat(reactClass, "\""), _context.t0);
|
|
75
|
+
case 26:
|
|
76
|
+
case "end":
|
|
77
|
+
return _context.stop();
|
|
78
|
+
}
|
|
79
|
+
}, _callee, null, [[13, 23]]);
|
|
80
|
+
}));
|
|
81
|
+
return _mount.apply(this, arguments);
|
|
83
82
|
}
|
|
84
83
|
|
|
85
84
|
module.exports = mount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mount.js","sources":["../../../../src/react-utils/mount/mount.jsx"],"sourcesContent":["/* eslint-disable no-console */\nimport ReactDOM from \"react-dom/client\";\nimport retryImport from \"utils/retryImport\";\n\
|
|
1
|
+
{"version":3,"file":"mount.js","sources":["../../../../src/react-utils/mount/mount.jsx"],"sourcesContent":["/* eslint-disable no-console */\nimport ReactDOM from \"react-dom/client\";\nimport retryImport from \"utils/retryImport\";\n\nconst jsonParse = value => {\n if (typeof value !== \"string\") return {};\n\n try {\n return JSON.parse(value);\n } catch {\n return {};\n }\n};\n\nexport default async function mount(componentMap) {\n const element = document.querySelector(\"[data-react-class]\");\n if (!element) return;\n\n if (element.dataset?.mounted === \"true\") return;\n\n const { reactClass, reactProps } = element.dataset || {};\n if (!reactClass) return;\n\n const importFn = componentMap[reactClass];\n\n if (!importFn) {\n console.warn(\"WARNING: No component found for:\", reactClass, componentMap);\n\n return;\n }\n\n const props = jsonParse(reactProps);\n\n try {\n const module = await retryImport(importFn);\n const Component = module.default || module;\n\n const root = ReactDOM.createRoot(element);\n root.render(<Component {...props} />);\n\n if (element.dataset) element.dataset.mounted = \"true\";\n } catch (error) {\n console.error(`Failed to load component \"${reactClass}\"`, error);\n }\n}\n"],"names":["jsonParse","value","JSON","parse","_unused","mount","_x","_mount","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","componentMap","_element$dataset","element","_ref","reactClass","reactProps","importFn","props","module","Component","root","wrap","_callee$","_context","prev","next","document","querySelector","abrupt","dataset","mounted","console","warn","retryImport","sent","ReactDOM","createRoot","render","_jsx","_objectSpread","t0","error","concat","stop"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/react-utils/usePrefersReducedMotion/constants.js"],"sourcesContent":["export const QUERY = \"(prefers-reduced-motion: no-preference)\";\n"],"names":["QUERY"],"mappings":";;AAAO,IAAMA,KAAK,GAAG;;;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var reactUtils_usePrefersReducedMotion_usePrefersReducedMotion = require('./usePrefersReducedMotion.js');
|
|
4
|
+
require('../../slicedToArray-BcL7fKuL.js');
|
|
5
|
+
require('../../unsupportedIterableToArray-BoHMiKNA.js');
|
|
6
|
+
require('react');
|
|
7
|
+
require('./constants.js');
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
module.exports = reactUtils_usePrefersReducedMotion_usePrefersReducedMotion;
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var slicedToArray = require('../../slicedToArray-BcL7fKuL.js');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var reactUtils_usePrefersReducedMotion_constants = require('./constants.js');
|
|
6
|
+
require('../../unsupportedIterableToArray-BoHMiKNA.js');
|
|
7
|
+
|
|
8
|
+
var isRenderingOnServer = typeof window === "undefined";
|
|
9
|
+
var getInitialState = function getInitialState() {
|
|
10
|
+
return (
|
|
11
|
+
// For our initial server render, we won't know if the user
|
|
12
|
+
// prefers reduced motion, but it doesn't matter. This value
|
|
13
|
+
// will be overwritten on the client, before any animations
|
|
14
|
+
// occur.
|
|
15
|
+
isRenderingOnServer ? true : !window.matchMedia(reactUtils_usePrefersReducedMotion_constants.QUERY).matches
|
|
16
|
+
);
|
|
17
|
+
};
|
|
18
|
+
var usePrefersReducedMotion = function usePrefersReducedMotion() {
|
|
19
|
+
var _useState = React.useState(getInitialState),
|
|
20
|
+
_useState2 = slicedToArray._slicedToArray(_useState, 2),
|
|
21
|
+
prefersReducedMotion = _useState2[0],
|
|
22
|
+
setPrefersReducedMotion = _useState2[1];
|
|
23
|
+
React.useEffect(function () {
|
|
24
|
+
if (isRenderingOnServer) return undefined;
|
|
25
|
+
var mediaQueryList = window.matchMedia(reactUtils_usePrefersReducedMotion_constants.QUERY);
|
|
26
|
+
var listener = function listener(event) {
|
|
27
|
+
setPrefersReducedMotion(!event.matches);
|
|
28
|
+
};
|
|
29
|
+
if (mediaQueryList.addEventListener) {
|
|
30
|
+
mediaQueryList.addEventListener("change", listener);
|
|
31
|
+
} else {
|
|
32
|
+
mediaQueryList.addListener(listener);
|
|
33
|
+
}
|
|
34
|
+
return function () {
|
|
35
|
+
if (mediaQueryList.removeEventListener) {
|
|
36
|
+
mediaQueryList.removeEventListener("change", listener);
|
|
37
|
+
} else {
|
|
38
|
+
mediaQueryList.removeListener(listener);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}, []);
|
|
42
|
+
return prefersReducedMotion;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
module.exports = usePrefersReducedMotion;
|
|
46
|
+
//# sourceMappingURL=usePrefersReducedMotion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePrefersReducedMotion.js","sources":["../../../../src/react-utils/usePrefersReducedMotion/usePrefersReducedMotion.js"],"sourcesContent":["import { useState, useEffect } from \"react\";\n\nimport { QUERY } from \"./constants\";\n\nconst isRenderingOnServer = typeof window === \"undefined\";\n\nconst getInitialState = () =>\n // For our initial server render, we won't know if the user\n // prefers reduced motion, but it doesn't matter. This value\n // will be overwritten on the client, before any animations\n // occur.\n isRenderingOnServer ? true : !window.matchMedia(QUERY).matches;\n\nconst usePrefersReducedMotion = () => {\n const [prefersReducedMotion, setPrefersReducedMotion] =\n useState(getInitialState);\n\n useEffect(() => {\n if (isRenderingOnServer) return undefined;\n\n const mediaQueryList = window.matchMedia(QUERY);\n\n const listener = event => {\n setPrefersReducedMotion(!event.matches);\n };\n\n if (mediaQueryList.addEventListener) {\n mediaQueryList.addEventListener(\"change\", listener);\n } else {\n mediaQueryList.addListener(listener);\n }\n\n return () => {\n if (mediaQueryList.removeEventListener) {\n mediaQueryList.removeEventListener(\"change\", listener);\n } else {\n mediaQueryList.removeListener(listener);\n }\n };\n }, []);\n\n return prefersReducedMotion;\n};\n\nexport default usePrefersReducedMotion;\n"],"names":["isRenderingOnServer","window","getInitialState","matchMedia","QUERY","matches","usePrefersReducedMotion","_useState","useState","_useState2","_slicedToArray","prefersReducedMotion","setPrefersReducedMotion","useEffect","undefined","mediaQueryList","listener","event","addEventListener","addListener","removeEventListener","removeListener"],"mappings":";;;;;;;AAIA,IAAMA,mBAAmB,GAAG,OAAOC,MAAM,KAAK,WAAW;AAEzD,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,GAAA;AAAA,EAAA;AACnB;AACA;AACA;AACA;IACAF,mBAAmB,GAAG,IAAI,GAAG,CAACC,MAAM,CAACE,UAAU,CAACC,kDAAK,CAAC,CAACC;AAAO;AAAA,CAAA;AAEhE,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuBA,GAAS;AACpC,EAAA,IAAAC,SAAA,GACEC,cAAQ,CAACN,eAAe,CAAC;IAAAO,UAAA,GAAAC,4BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AADpBI,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,uBAAuB,GAAAH,UAAA,CAAA,CAAA,CAAA;AAGpDI,EAAAA,eAAS,CAAC,YAAM;IACd,IAAIb,mBAAmB,EAAE,OAAOc,SAAS;AAEzC,IAAA,IAAMC,cAAc,GAAGd,MAAM,CAACE,UAAU,CAACC,kDAAK,CAAC;AAE/C,IAAA,IAAMY,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,KAAK,EAAI;AACxBL,MAAAA,uBAAuB,CAAC,CAACK,KAAK,CAACZ,OAAO,CAAC;KACxC;IAED,IAAIU,cAAc,CAACG,gBAAgB,EAAE;AACnCH,MAAAA,cAAc,CAACG,gBAAgB,CAAC,QAAQ,EAAEF,QAAQ,CAAC;AACrD,KAAC,MAAM;AACLD,MAAAA,cAAc,CAACI,WAAW,CAACH,QAAQ,CAAC;AACtC;AAEA,IAAA,OAAO,YAAM;MACX,IAAID,cAAc,CAACK,mBAAmB,EAAE;AACtCL,QAAAA,cAAc,CAACK,mBAAmB,CAAC,QAAQ,EAAEJ,QAAQ,CAAC;AACxD,OAAC,MAAM;AACLD,QAAAA,cAAc,CAACM,cAAc,CAACL,QAAQ,CAAC;AACzC;KACD;GACF,EAAE,EAAE,CAAC;AAEN,EAAA,OAAOL,oBAAoB;AAC7B;;;;"}
|