@bleedingdev/modern-js-renderer-octane 0.0.0-stage → 3.9.3-ultramodern.10
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/LICENSE +21 -0
- package/bin/octane-tsc.mjs +4 -0
- package/dist/cjs/bootstrap.js +68 -0
- package/dist/cjs/client.js +421 -0
- package/dist/cjs/entry-application.js +88 -0
- package/dist/cjs/entry-client.js +95 -0
- package/dist/cjs/entry-server.js +135 -0
- package/dist/cjs/federation-context.js +72 -0
- package/dist/cjs/federation.js +205 -0
- package/dist/cjs/i18n/I18nProvider.js +59 -0
- package/dist/cjs/i18n/LocalizedLink.js +80 -0
- package/dist/cjs/i18n/context.js +41 -0
- package/dist/cjs/i18n/index.js +83 -0
- package/dist/cjs/i18n/languageSync.js +99 -0
- package/dist/cjs/i18n/types.js +18 -0
- package/dist/cjs/i18n/useI18n.js +110 -0
- package/dist/cjs/i18n-external-snapshot.js +645 -0
- package/dist/cjs/index.js +46 -0
- package/dist/cjs/manifest.js +167 -0
- package/dist/cjs/plugin/compiler.js +122 -0
- package/dist/cjs/plugin/create.js +266 -0
- package/dist/cjs/plugin/index.js +151 -0
- package/dist/cjs/plugin/profile.js +91 -0
- package/dist/cjs/plugin/source.js +56 -0
- package/dist/cjs/router-client.js +139 -0
- package/dist/cjs/router-external-snapshot.js +291 -0
- package/dist/cjs/router-handler.js +171 -0
- package/dist/cjs/router-server-cleanup.js +46 -0
- package/dist/cjs/router-server-snapshot.js +405 -0
- package/dist/cjs/router-server.js +100 -0
- package/dist/cjs/router-snapshot.js +270 -0
- package/dist/cjs/router.js +218 -0
- package/dist/cjs/routes.js +190 -0
- package/dist/cjs/server.js +245 -0
- package/dist/cjs/typecheck.js +615 -0
- package/dist/cjs/worker-federation-context.js +63 -0
- package/dist/cjs/worker-federation-contexts.js +97 -0
- package/dist/cjs/worker-federation.js +97 -0
- package/dist/esm/bootstrap.mjs +24 -0
- package/dist/esm/client.mjs +377 -0
- package/dist/esm/entry-application.mjs +44 -0
- package/dist/esm/entry-client.mjs +57 -0
- package/dist/esm/entry-server.mjs +91 -0
- package/dist/esm/federation-context.mjs +25 -0
- package/dist/esm/federation.mjs +167 -0
- package/dist/esm/i18n/I18nProvider.mjs +21 -0
- package/dist/esm/i18n/LocalizedLink.mjs +42 -0
- package/dist/esm/i18n/context.mjs +3 -0
- package/dist/esm/i18n/index.mjs +8 -0
- package/dist/esm/i18n/languageSync.mjs +61 -0
- package/dist/esm/i18n/types.mjs +0 -0
- package/dist/esm/i18n/useI18n.mjs +72 -0
- package/dist/esm/i18n-external-snapshot.mjs +576 -0
- package/dist/esm/index.mjs +8 -0
- package/dist/esm/manifest.mjs +117 -0
- package/dist/esm/router-client.mjs +98 -0
- package/dist/esm/router-external-snapshot.mjs +244 -0
- package/dist/esm/router-handler.mjs +133 -0
- package/dist/esm/router-server-cleanup.mjs +8 -0
- package/dist/esm/router-server-snapshot.mjs +367 -0
- package/dist/esm/router-server.mjs +11 -0
- package/dist/esm/router-snapshot.mjs +199 -0
- package/dist/esm/router.mjs +94 -0
- package/dist/esm/routes.mjs +134 -0
- package/dist/esm/server.mjs +204 -0
- package/dist/esm/worker-federation-context.mjs +19 -0
- package/dist/esm/worker-federation-contexts.mjs +47 -0
- package/dist/esm/worker-federation.mjs +59 -0
- package/dist/esm-node/bootstrap.mjs +24 -0
- package/dist/esm-node/manifest.mjs +117 -0
- package/dist/esm-node/plugin/compiler.mjs +67 -0
- package/dist/esm-node/plugin/create.mjs +228 -0
- package/dist/esm-node/plugin/index.mjs +103 -0
- package/dist/esm-node/plugin/profile.mjs +53 -0
- package/dist/esm-node/plugin/source.mjs +7 -0
- package/dist/esm-node/typecheck.mjs +560 -0
- package/dist/types/bootstrap.d.ts +10 -0
- package/dist/types/client.d.ts +40 -0
- package/dist/types/entry-application.d.ts +19 -0
- package/dist/types/entry-client.d.ts +10 -0
- package/dist/types/entry-server.d.ts +14 -0
- package/dist/types/federation-context.d.ts +28 -0
- package/dist/types/federation.d.ts +20 -0
- package/dist/types/i18n/I18nProvider.d.ts +8 -0
- package/dist/types/i18n/LocalizedLink.d.ts +14 -0
- package/dist/types/i18n/context.d.ts +9 -0
- package/dist/types/i18n/index.d.ts +9 -0
- package/dist/types/i18n/languageSync.d.ts +26 -0
- package/dist/types/i18n/types.d.ts +34 -0
- package/dist/types/i18n/useI18n.d.ts +21 -0
- package/dist/types/i18n-external-snapshot.d.ts +43 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/manifest.d.ts +34 -0
- package/dist/types/plugin/compiler-manifest.d.cts +10 -0
- package/dist/types/plugin/compiler.d.ts +5 -0
- package/dist/types/plugin/create.d.ts +23 -0
- package/dist/types/plugin/index.d.ts +3 -0
- package/dist/types/plugin/profile.d.ts +2 -0
- package/dist/types/plugin/source.d.ts +1 -0
- package/dist/types/plugin/svg-component-template.d.cts +6 -0
- package/dist/types/router-client.d.ts +12 -0
- package/dist/types/router-external-snapshot.d.ts +10 -0
- package/dist/types/router-handler.d.ts +13 -0
- package/dist/types/router-server-cleanup.d.ts +3 -0
- package/dist/types/router-server-snapshot.d.ts +15 -0
- package/dist/types/router-server.d.ts +11 -0
- package/dist/types/router-snapshot.d.ts +14 -0
- package/dist/types/router.d.ts +30 -0
- package/dist/types/routes.d.ts +20 -0
- package/dist/types/server.d.ts +47 -0
- package/dist/types/typecheck.d.ts +31 -0
- package/dist/types/worker-federation-context.d.ts +34 -0
- package/dist/types/worker-federation-contexts.d.ts +25 -0
- package/dist/types/worker-federation.d.ts +20 -0
- package/package.json +278 -4
- package/src/bootstrap.ts +60 -0
- package/src/client.ts +568 -0
- package/src/entry-application.ts +76 -0
- package/src/entry-client.ts +90 -0
- package/src/entry-server.ts +153 -0
- package/src/federation-context.ts +53 -0
- package/src/federation.ts +307 -0
- package/src/i18n/I18nProvider.ts +47 -0
- package/src/i18n/LocalizedLink.ts +86 -0
- package/src/i18n/context.ts +12 -0
- package/src/i18n/index.ts +31 -0
- package/src/i18n/languageSync.ts +132 -0
- package/src/i18n/types.ts +36 -0
- package/src/i18n/useI18n.ts +119 -0
- package/src/i18n-external-snapshot.ts +803 -0
- package/src/index.ts +10 -0
- package/src/manifest.ts +253 -0
- package/src/plugin/compiler-manifest.cjs +204 -0
- package/src/plugin/compiler.ts +104 -0
- package/src/plugin/create.ts +273 -0
- package/src/plugin/index.ts +107 -0
- package/src/plugin/profile.ts +50 -0
- package/src/plugin/source.ts +16 -0
- package/src/plugin/svg-component-template.cjs +17 -0
- package/src/router-client.ts +144 -0
- package/src/router-external-snapshot.ts +363 -0
- package/src/router-handler.ts +185 -0
- package/src/router-server-cleanup.ts +11 -0
- package/src/router-server-snapshot.ts +564 -0
- package/src/router-server.ts +21 -0
- package/src/router-snapshot.ts +251 -0
- package/src/router.ts +192 -0
- package/src/routes.ts +274 -0
- package/src/server.ts +340 -0
- package/src/typecheck.ts +723 -0
- package/src/worker-federation-context.ts +51 -0
- package/src/worker-federation-contexts.ts +91 -0
- package/src/worker-federation.ts +120 -0
- package/README.md +0 -3
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
I18nContext: ()=>I18nContext
|
|
32
|
+
});
|
|
33
|
+
const external_octane_namespaceObject = require("octane");
|
|
34
|
+
const I18nContext = (0, external_octane_namespaceObject.createContext)(null);
|
|
35
|
+
exports.I18nContext = __webpack_exports__.I18nContext;
|
|
36
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
37
|
+
"I18nContext"
|
|
38
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
39
|
+
Object.defineProperty(exports, '__esModule', {
|
|
40
|
+
value: true
|
|
41
|
+
});
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
I18N_SSR_HANDOFF_ELEMENT_ID: ()=>ssrLanguageHandoff_namespaceObject.I18N_SSR_HANDOFF_ELEMENT_ID,
|
|
32
|
+
I18nContext: ()=>external_context_js_namespaceObject.I18nContext,
|
|
33
|
+
I18nProvider: ()=>external_I18nProvider_js_namespaceObject.I18nProvider,
|
|
34
|
+
LocalizedLink: ()=>external_LocalizedLink_js_namespaceObject.LocalizedLink,
|
|
35
|
+
createI18nSsrHandoffInlineData: ()=>ssrLanguageHandoff_namespaceObject.createI18nSsrHandoffInlineData,
|
|
36
|
+
createI18nUrlRewrite: ()=>urlRewrite_namespaceObject.createI18nUrlRewrite,
|
|
37
|
+
createRequestLanguageRedirect: ()=>request_language_namespaceObject.createRequestLanguageRedirect,
|
|
38
|
+
detectRequestLanguage: ()=>request_language_namespaceObject.detectRequestLanguage,
|
|
39
|
+
languageFromPathname: ()=>request_language_namespaceObject.languageFromPathname,
|
|
40
|
+
readI18nSsrHandoff: ()=>ssrLanguageHandoff_namespaceObject.readI18nSsrHandoff,
|
|
41
|
+
resolveRequestLanguage: ()=>request_language_namespaceObject.resolveRequestLanguage,
|
|
42
|
+
useI18n: ()=>external_useI18n_js_namespaceObject.useI18n,
|
|
43
|
+
useLatestLanguageSync: ()=>external_languageSync_js_namespaceObject.useLatestLanguageSync
|
|
44
|
+
});
|
|
45
|
+
const request_language_namespaceObject = require("@modern-js/i18n-runtime-extensions/request-language");
|
|
46
|
+
const ssrLanguageHandoff_namespaceObject = require("@modern-js/i18n-runtime-extensions/ssrLanguageHandoff");
|
|
47
|
+
const urlRewrite_namespaceObject = require("@modern-js/i18n-runtime-extensions/urlRewrite");
|
|
48
|
+
const external_context_js_namespaceObject = require("./context.js");
|
|
49
|
+
const external_I18nProvider_js_namespaceObject = require("./I18nProvider.js");
|
|
50
|
+
const external_LocalizedLink_js_namespaceObject = require("./LocalizedLink.js");
|
|
51
|
+
const external_languageSync_js_namespaceObject = require("./languageSync.js");
|
|
52
|
+
const external_useI18n_js_namespaceObject = require("./useI18n.js");
|
|
53
|
+
exports.I18N_SSR_HANDOFF_ELEMENT_ID = __webpack_exports__.I18N_SSR_HANDOFF_ELEMENT_ID;
|
|
54
|
+
exports.I18nContext = __webpack_exports__.I18nContext;
|
|
55
|
+
exports.I18nProvider = __webpack_exports__.I18nProvider;
|
|
56
|
+
exports.LocalizedLink = __webpack_exports__.LocalizedLink;
|
|
57
|
+
exports.createI18nSsrHandoffInlineData = __webpack_exports__.createI18nSsrHandoffInlineData;
|
|
58
|
+
exports.createI18nUrlRewrite = __webpack_exports__.createI18nUrlRewrite;
|
|
59
|
+
exports.createRequestLanguageRedirect = __webpack_exports__.createRequestLanguageRedirect;
|
|
60
|
+
exports.detectRequestLanguage = __webpack_exports__.detectRequestLanguage;
|
|
61
|
+
exports.languageFromPathname = __webpack_exports__.languageFromPathname;
|
|
62
|
+
exports.readI18nSsrHandoff = __webpack_exports__.readI18nSsrHandoff;
|
|
63
|
+
exports.resolveRequestLanguage = __webpack_exports__.resolveRequestLanguage;
|
|
64
|
+
exports.useI18n = __webpack_exports__.useI18n;
|
|
65
|
+
exports.useLatestLanguageSync = __webpack_exports__.useLatestLanguageSync;
|
|
66
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
67
|
+
"I18N_SSR_HANDOFF_ELEMENT_ID",
|
|
68
|
+
"I18nContext",
|
|
69
|
+
"I18nProvider",
|
|
70
|
+
"LocalizedLink",
|
|
71
|
+
"createI18nSsrHandoffInlineData",
|
|
72
|
+
"createI18nUrlRewrite",
|
|
73
|
+
"createRequestLanguageRedirect",
|
|
74
|
+
"detectRequestLanguage",
|
|
75
|
+
"languageFromPathname",
|
|
76
|
+
"readI18nSsrHandoff",
|
|
77
|
+
"resolveRequestLanguage",
|
|
78
|
+
"useI18n",
|
|
79
|
+
"useLatestLanguageSync"
|
|
80
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
81
|
+
Object.defineProperty(exports, '__esModule', {
|
|
82
|
+
value: true
|
|
83
|
+
});
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
useLatestLanguageSync: ()=>useLatestLanguageSync
|
|
32
|
+
});
|
|
33
|
+
const controller_namespaceObject = require("@modern-js/i18n-runtime-extensions/language-sync/controller");
|
|
34
|
+
const external_octane_namespaceObject = require("octane");
|
|
35
|
+
const bindingSlot = Symbol((0, external_octane_namespaceObject.hookSlots)(1));
|
|
36
|
+
const callbacksSlot = Symbol((0, external_octane_namespaceObject.hookSlots)(1));
|
|
37
|
+
const activationSlot = Symbol((0, external_octane_namespaceObject.hookSlots)(1));
|
|
38
|
+
const requestSlot = Symbol((0, external_octane_namespaceObject.hookSlots)(1));
|
|
39
|
+
const retrySlot = Symbol((0, external_octane_namespaceObject.hookSlots)(1));
|
|
40
|
+
const requestCallbackSlot = Symbol((0, external_octane_namespaceObject.hookSlots)(1));
|
|
41
|
+
const useLatestLanguageSync = ({ changeLanguage, commitLanguage, desiredLanguage, enabled = true, policy, readLanguage, reportFailure, target })=>{
|
|
42
|
+
const bindingRef = (0, external_octane_namespaceObject.useRef)(null, bindingSlot);
|
|
43
|
+
if (null === bindingRef.current) bindingRef.current = (0, controller_namespaceObject.createLatestLanguageSyncBinding)(policy);
|
|
44
|
+
const binding = bindingRef.current;
|
|
45
|
+
(0, external_octane_namespaceObject.useEffect)(()=>{
|
|
46
|
+
binding.updateCallbacks({
|
|
47
|
+
changeLanguage,
|
|
48
|
+
commitLanguage,
|
|
49
|
+
readLanguage,
|
|
50
|
+
reportFailure
|
|
51
|
+
});
|
|
52
|
+
}, void 0, callbacksSlot);
|
|
53
|
+
(0, external_octane_namespaceObject.useEffect)(()=>{
|
|
54
|
+
if (!enabled || !target) return;
|
|
55
|
+
binding.activate(target);
|
|
56
|
+
return ()=>binding.deactivate();
|
|
57
|
+
}, [
|
|
58
|
+
binding,
|
|
59
|
+
enabled,
|
|
60
|
+
target
|
|
61
|
+
], activationSlot);
|
|
62
|
+
(0, external_octane_namespaceObject.useEffect)(()=>{
|
|
63
|
+
if (!enabled || !target || !desiredLanguage) return void binding.clearRequest();
|
|
64
|
+
binding.request(desiredLanguage);
|
|
65
|
+
}, [
|
|
66
|
+
binding,
|
|
67
|
+
desiredLanguage,
|
|
68
|
+
enabled,
|
|
69
|
+
target
|
|
70
|
+
], requestSlot);
|
|
71
|
+
(0, external_octane_namespaceObject.useEffect)(()=>{
|
|
72
|
+
if (!enabled || !target || !desiredLanguage || "u" < typeof window) return;
|
|
73
|
+
const retryCurrentIntent = ()=>binding.request(desiredLanguage);
|
|
74
|
+
const retryVisibleIntent = ()=>{
|
|
75
|
+
if ('visible' === document.visibilityState) retryCurrentIntent();
|
|
76
|
+
};
|
|
77
|
+
window.addEventListener('online', retryCurrentIntent);
|
|
78
|
+
document.addEventListener('visibilitychange', retryVisibleIntent);
|
|
79
|
+
return ()=>{
|
|
80
|
+
window.removeEventListener('online', retryCurrentIntent);
|
|
81
|
+
document.removeEventListener('visibilitychange', retryVisibleIntent);
|
|
82
|
+
};
|
|
83
|
+
}, [
|
|
84
|
+
binding,
|
|
85
|
+
desiredLanguage,
|
|
86
|
+
enabled,
|
|
87
|
+
target
|
|
88
|
+
], retrySlot);
|
|
89
|
+
return (0, external_octane_namespaceObject.useCallback)((language)=>binding.request(language), [
|
|
90
|
+
binding
|
|
91
|
+
], requestCallbackSlot);
|
|
92
|
+
};
|
|
93
|
+
exports.useLatestLanguageSync = __webpack_exports__.useLatestLanguageSync;
|
|
94
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
95
|
+
"useLatestLanguageSync"
|
|
96
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
97
|
+
Object.defineProperty(exports, '__esModule', {
|
|
98
|
+
value: true
|
|
99
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.r = (exports1)=>{
|
|
5
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
6
|
+
value: 'Module'
|
|
7
|
+
});
|
|
8
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
})();
|
|
13
|
+
var __webpack_exports__ = {};
|
|
14
|
+
__webpack_require__.r(__webpack_exports__);
|
|
15
|
+
for(var __rspack_i in __webpack_exports__)exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
16
|
+
Object.defineProperty(exports, '__esModule', {
|
|
17
|
+
value: true
|
|
18
|
+
});
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
(()=>{
|
|
16
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
17
|
+
})();
|
|
18
|
+
(()=>{
|
|
19
|
+
__webpack_require__.r = (exports1)=>{
|
|
20
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
21
|
+
value: 'Module'
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
24
|
+
value: true
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
})();
|
|
28
|
+
var __webpack_exports__ = {};
|
|
29
|
+
__webpack_require__.r(__webpack_exports__);
|
|
30
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
useI18n: ()=>useI18n
|
|
32
|
+
});
|
|
33
|
+
const paths_namespaceObject = require("@modern-js/i18n-runtime-extensions/paths");
|
|
34
|
+
const request_language_namespaceObject = require("@modern-js/i18n-runtime-extensions/request-language");
|
|
35
|
+
const external_octane_namespaceObject = require("octane");
|
|
36
|
+
const external_router_js_namespaceObject = require("../router.js");
|
|
37
|
+
const external_context_js_namespaceObject = require("./context.js");
|
|
38
|
+
const languageSwitches = new WeakMap();
|
|
39
|
+
function useI18n() {
|
|
40
|
+
const context = (0, external_octane_namespaceObject.useContext)(external_context_js_namespaceObject.I18nContext);
|
|
41
|
+
if (!context) throw new Error('[renderer-octane] useI18n() was called outside of an I18nProvider.');
|
|
42
|
+
const { instance, languages, localisedUrls, language } = context;
|
|
43
|
+
const t = (key, options)=>instance.t(key, options);
|
|
44
|
+
const router = (0, external_router_js_namespaceObject.useRouter)({
|
|
45
|
+
warn: false
|
|
46
|
+
});
|
|
47
|
+
const changeLanguage = (requested)=>{
|
|
48
|
+
let nextLanguage;
|
|
49
|
+
try {
|
|
50
|
+
nextLanguage = (0, paths_namespaceObject.configuredLanguage)(requested, languages);
|
|
51
|
+
} catch (error) {
|
|
52
|
+
return Promise.reject(error);
|
|
53
|
+
}
|
|
54
|
+
const state = languageSwitches.get(instance) ?? {
|
|
55
|
+
latest: 0,
|
|
56
|
+
queue: Promise.resolve()
|
|
57
|
+
};
|
|
58
|
+
languageSwitches.set(instance, state);
|
|
59
|
+
const generation = ++state.latest;
|
|
60
|
+
const run = state.queue.then(async ()=>{
|
|
61
|
+
if (state.latest !== generation) return;
|
|
62
|
+
const committed = instance.language;
|
|
63
|
+
const publicLanguage = ()=>router ? (0, request_language_namespaceObject.languageFromPathname)(new URL(router.state.location.publicHref, 'http://localhost').pathname, languages, router.options.basepath) : void 0;
|
|
64
|
+
const reconcile = async ()=>{
|
|
65
|
+
const language = publicLanguage() ?? committed;
|
|
66
|
+
if (instance.language !== language) await instance.changeLanguage?.(language);
|
|
67
|
+
};
|
|
68
|
+
try {
|
|
69
|
+
await instance.changeLanguage?.(nextLanguage);
|
|
70
|
+
} catch (error) {
|
|
71
|
+
await reconcile();
|
|
72
|
+
throw error;
|
|
73
|
+
}
|
|
74
|
+
if (!router) return;
|
|
75
|
+
const href = (0, paths_namespaceObject.localizePath)(router.state.location.href, nextLanguage, {
|
|
76
|
+
languages: [
|
|
77
|
+
...languages
|
|
78
|
+
],
|
|
79
|
+
localisedUrls
|
|
80
|
+
});
|
|
81
|
+
try {
|
|
82
|
+
await router.navigate({
|
|
83
|
+
to: '.',
|
|
84
|
+
href,
|
|
85
|
+
replace: true
|
|
86
|
+
});
|
|
87
|
+
} catch (error) {
|
|
88
|
+
await reconcile();
|
|
89
|
+
throw error;
|
|
90
|
+
}
|
|
91
|
+
if (publicLanguage() !== nextLanguage) await reconcile();
|
|
92
|
+
});
|
|
93
|
+
state.queue = run.catch(()=>{});
|
|
94
|
+
return run;
|
|
95
|
+
};
|
|
96
|
+
return {
|
|
97
|
+
t,
|
|
98
|
+
language,
|
|
99
|
+
languages,
|
|
100
|
+
instance,
|
|
101
|
+
changeLanguage
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
exports.useI18n = __webpack_exports__.useI18n;
|
|
105
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
106
|
+
"useI18n"
|
|
107
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
108
|
+
Object.defineProperty(exports, '__esModule', {
|
|
109
|
+
value: true
|
|
110
|
+
});
|