@rimori/playwright-testing 0.3.21-next.1 → 0.3.21-next.2
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/dist/core/RimoriTestEnvironment.d.ts +29 -0
- package/dist/core/RimoriTestEnvironment.js +147 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare___mf_0_rimori_mf_1_client__loadShare__.js.js +1 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare___mf_0_rimori_mf_1_react_mf_2_client__loadShare__.js.js +1 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react__loadShare__.js.js +1 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react__loadShare__.js_commonjs-proxy.js +1 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js.js +1 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react_mf_2_dom__loadShare__.js.js +1 -0
- package/dist/harness/__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react_mf_2_dom__loadShare__.js_commonjs-proxy.js +1 -0
- package/dist/harness/hostInit.js +1 -0
- package/dist/harness/html2canvas.esm.js +22 -0
- package/dist/harness/index.html +24 -0
- package/dist/harness/index.js +25 -0
- package/dist/harness/index2.js +8 -0
- package/dist/harness/index3.js +148 -0
- package/dist/harness/index4.js +1 -0
- package/dist/harness/index5.js +9 -0
- package/dist/harness/index6.js +9 -0
- package/dist/harness/index7.js +1 -0
- package/dist/harness/jsx-dev-runtime.js +9 -0
- package/dist/harness/jsx-runtime.js +9 -0
- package/dist/harness/localSharedImportMap.js +1 -0
- package/dist/harness/preload-helper.js +1 -0
- package/dist/harness/remoteEntry.js +1 -0
- package/dist/harness/virtualExposes.js +1 -0
- package/dist/harness/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__rimori-scenario-host__remoteEntry-_hash_.js +8 -0
- package/package.json +17 -5
|
@@ -41,12 +41,24 @@ interface MockOptions {
|
|
|
41
41
|
export declare class RimoriTestEnvironment {
|
|
42
42
|
private readonly page;
|
|
43
43
|
private readonly pluginId;
|
|
44
|
+
private readonly pluginUrl;
|
|
44
45
|
private rimoriInfo;
|
|
45
46
|
private backendRoutes;
|
|
46
47
|
private supabaseRoutes;
|
|
47
48
|
private messageChannelSimulator;
|
|
48
49
|
private settingsManager;
|
|
49
50
|
constructor(options: RimoriTestEnvironmentOptions);
|
|
51
|
+
/**
|
|
52
|
+
* Fetches the plugin's standalone `dist/index.html` over HTTP (served by the plugin
|
|
53
|
+
* dev server's middleware at `/__rimori_dist_index__.html`) and extracts its
|
|
54
|
+
* `<link rel="stylesheet">` tags. The hrefs already point at `/assets/*` which the
|
|
55
|
+
* same dev server serves from `dist/`, so the harness page picks up the plugin's
|
|
56
|
+
* Tailwind base + theme without any filesystem path resolution.
|
|
57
|
+
*
|
|
58
|
+
* Returns empty string if the plugin hasn't been built (`yarn build:scenario`)
|
|
59
|
+
* or the dev server doesn't expose `/__rimori_dist_index__.html`.
|
|
60
|
+
*/
|
|
61
|
+
private collectPluginStylesheets;
|
|
50
62
|
private interceptRoutes;
|
|
51
63
|
setup(): Promise<void>;
|
|
52
64
|
private getRimoriInfo;
|
|
@@ -466,6 +478,23 @@ export declare class RimoriTestEnvironment {
|
|
|
466
478
|
};
|
|
467
479
|
readonly navigation: {
|
|
468
480
|
mockToDashboard: () => void;
|
|
481
|
+
/**
|
|
482
|
+
* Navigates to a path inside the federated plugin via the scenario harness.
|
|
483
|
+
* The harness URL (`<pluginUrl>/__rimori_harness__.html`) is the base; whatever
|
|
484
|
+
* is passed in `route` is appended verbatim. Tests are responsible for the
|
|
485
|
+
* leading `#/` (HashRouter) or `/` (future BrowserRouter) so the same helper
|
|
486
|
+
* works regardless of which router the plugin uses.
|
|
487
|
+
*
|
|
488
|
+
* @param route - Suffix appended to the harness URL (e.g. `#/`, `#/deck/1`).
|
|
489
|
+
*/
|
|
490
|
+
to: (route?: string) => Promise<void>;
|
|
491
|
+
/**
|
|
492
|
+
* Returns the part of the current URL that follows the harness base
|
|
493
|
+
* (`<pluginUrl>/__rimori_harness__.html`). For HashRouter this includes the
|
|
494
|
+
* leading `#/...`; for BrowserRouter it would be the path/query.
|
|
495
|
+
* Returns an empty string if the page isn't currently on the harness URL.
|
|
496
|
+
*/
|
|
497
|
+
get: () => string;
|
|
469
498
|
};
|
|
470
499
|
}
|
|
471
500
|
export {};
|
|
@@ -1,9 +1,50 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.RimoriTestEnvironment = void 0;
|
|
4
37
|
const default_user_info_1 = require("../fixtures/default-user-info");
|
|
5
38
|
const MessageChannelSimulator_1 = require("./MessageChannelSimulator");
|
|
6
39
|
const SettingsStateManager_1 = require("./SettingsStateManager");
|
|
40
|
+
const fs = __importStar(require("fs"));
|
|
41
|
+
const path = __importStar(require("path"));
|
|
42
|
+
// Harness served by interceptRoutes so scenario tests can exercise the real
|
|
43
|
+
// federation boundary (./MainPanel expose + singleton dedup) instead of the
|
|
44
|
+
// standalone App.tsx. Built from src/harness/ via harness.vite.config.ts.
|
|
45
|
+
const HARNESS_DIR = path.resolve(__dirname, '..', '..', 'dist', 'harness');
|
|
46
|
+
const HARNESS_HTML_URL = '/__rimori_harness__.html';
|
|
47
|
+
const HARNESS_ASSETS_PREFIX = '/__rimori_harness__/';
|
|
7
48
|
class RimoriTestEnvironment {
|
|
8
49
|
constructor(options) {
|
|
9
50
|
this.backendRoutes = {};
|
|
@@ -556,15 +597,121 @@ class RimoriTestEnvironment {
|
|
|
556
597
|
};
|
|
557
598
|
this.navigation = {
|
|
558
599
|
mockToDashboard: () => { },
|
|
600
|
+
/**
|
|
601
|
+
* Navigates to a path inside the federated plugin via the scenario harness.
|
|
602
|
+
* The harness URL (`<pluginUrl>/__rimori_harness__.html`) is the base; whatever
|
|
603
|
+
* is passed in `route` is appended verbatim. Tests are responsible for the
|
|
604
|
+
* leading `#/` (HashRouter) or `/` (future BrowserRouter) so the same helper
|
|
605
|
+
* works regardless of which router the plugin uses.
|
|
606
|
+
*
|
|
607
|
+
* @param route - Suffix appended to the harness URL (e.g. `#/`, `#/deck/1`).
|
|
608
|
+
*/
|
|
609
|
+
to: async (route = '') => {
|
|
610
|
+
await this.page.goto(`${this.pluginUrl}/__rimori_harness__.html${route}`);
|
|
611
|
+
},
|
|
612
|
+
/**
|
|
613
|
+
* Returns the part of the current URL that follows the harness base
|
|
614
|
+
* (`<pluginUrl>/__rimori_harness__.html`). For HashRouter this includes the
|
|
615
|
+
* leading `#/...`; for BrowserRouter it would be the path/query.
|
|
616
|
+
* Returns an empty string if the page isn't currently on the harness URL.
|
|
617
|
+
*/
|
|
618
|
+
get: () => {
|
|
619
|
+
const url = this.page.url();
|
|
620
|
+
const base = `${this.pluginUrl}/__rimori_harness__.html`;
|
|
621
|
+
return url.startsWith(base) ? url.slice(base.length) : '';
|
|
622
|
+
},
|
|
559
623
|
};
|
|
560
624
|
this.page = options.page;
|
|
561
625
|
this.pluginId = options.pluginId;
|
|
626
|
+
this.pluginUrl = options.pluginUrl;
|
|
562
627
|
this.rimoriInfo = this.getRimoriInfo(options);
|
|
563
628
|
// Initialize settings state manager
|
|
564
629
|
this.settingsManager = new SettingsStateManager_1.SettingsStateManager(options.settings || null, options.pluginId, this.rimoriInfo.guild.id);
|
|
565
630
|
this.interceptRoutes(options.pluginUrl);
|
|
566
631
|
}
|
|
632
|
+
/**
|
|
633
|
+
* Fetches the plugin's standalone `dist/index.html` over HTTP (served by the plugin
|
|
634
|
+
* dev server's middleware at `/__rimori_dist_index__.html`) and extracts its
|
|
635
|
+
* `<link rel="stylesheet">` tags. The hrefs already point at `/assets/*` which the
|
|
636
|
+
* same dev server serves from `dist/`, so the harness page picks up the plugin's
|
|
637
|
+
* Tailwind base + theme without any filesystem path resolution.
|
|
638
|
+
*
|
|
639
|
+
* Returns empty string if the plugin hasn't been built (`yarn build:scenario`)
|
|
640
|
+
* or the dev server doesn't expose `/__rimori_dist_index__.html`.
|
|
641
|
+
*/
|
|
642
|
+
async collectPluginStylesheets(pluginUrl) {
|
|
643
|
+
const indexUrl = `${pluginUrl}/__rimori_dist_index__.html`;
|
|
644
|
+
try {
|
|
645
|
+
const response = await fetch(indexUrl);
|
|
646
|
+
if (!response.ok) {
|
|
647
|
+
console.warn(`[rimori-harness] Plugin index.html not served at ${indexUrl} (status ${response.status}). ` +
|
|
648
|
+
`Ensure the plugin's vite.config.ts middleware serves it from dist/, and that ` +
|
|
649
|
+
`\`yarn build:scenario\` has been run.`);
|
|
650
|
+
return '';
|
|
651
|
+
}
|
|
652
|
+
const html = await response.text();
|
|
653
|
+
const linkRegex = /<link[^>]*rel=["']stylesheet["'][^>]*>/gi;
|
|
654
|
+
const links = html.match(linkRegex) ?? [];
|
|
655
|
+
const rewritten = links
|
|
656
|
+
.map((tag) => tag.replace(/href=["']\.?\/?(assets\/[^"']+)["']/i, 'href="/$1"'))
|
|
657
|
+
.join('\n ');
|
|
658
|
+
// console.log(`[rimori-harness] Injecting ${links.length} plugin stylesheet(s) from ${indexUrl}`);
|
|
659
|
+
return rewritten;
|
|
660
|
+
}
|
|
661
|
+
catch (err) {
|
|
662
|
+
console.warn(`[rimori-harness] Failed to fetch ${indexUrl}:`, err.message);
|
|
663
|
+
return '';
|
|
664
|
+
}
|
|
665
|
+
}
|
|
567
666
|
interceptRoutes(pluginUrl) {
|
|
667
|
+
// HTML entry — inject the runtime config and serve the built index.html.
|
|
668
|
+
// Script references already use absolute paths (base: '/__rimori_harness__/')
|
|
669
|
+
// so the browser fetches them via the assets wildcard handler below.
|
|
670
|
+
this.page.route(`${pluginUrl}${HARNESS_HTML_URL}`, async (route) => {
|
|
671
|
+
try {
|
|
672
|
+
const htmlPath = path.join(HARNESS_DIR, 'index.html');
|
|
673
|
+
if (!fs.existsSync(htmlPath)) {
|
|
674
|
+
throw new Error(`Harness bundle missing at ${HARNESS_DIR}. Run \`yarn --cwd plugins/playwright-testing build:harness\` first.`);
|
|
675
|
+
}
|
|
676
|
+
const configScript = `<script>window.__RIMORI_HARNESS__ = ${JSON.stringify({
|
|
677
|
+
pluginId: this.pluginId,
|
|
678
|
+
remoteUrl: `${pluginUrl}/remoteEntry.js`,
|
|
679
|
+
})};</script>`;
|
|
680
|
+
// Lift `<link rel="stylesheet">` tags from the plugin's standalone dist/index.html
|
|
681
|
+
// so the harness page picks up the same Tailwind base + theme variables that
|
|
682
|
+
// production rimori-main provides. The plugin's vite dev-server middleware already
|
|
683
|
+
// serves /assets/* from dist/, so the (rewritten-to-absolute) hrefs resolve same-origin.
|
|
684
|
+
const pluginStylesheets = await this.collectPluginStylesheets(pluginUrl);
|
|
685
|
+
const html = fs.readFileSync(htmlPath, 'utf-8')
|
|
686
|
+
.replace('<!-- RIMORI_HARNESS_CONFIG_INJECTION -->', configScript)
|
|
687
|
+
.replace('</head>', `${pluginStylesheets}\n</head>`);
|
|
688
|
+
await route.fulfill({ status: 200, headers: { 'Content-Type': 'text/html; charset=utf-8' }, body: html });
|
|
689
|
+
}
|
|
690
|
+
catch (error) {
|
|
691
|
+
await route.fulfill({ status: 500, headers: { 'Content-Type': 'text/plain' }, body: String(error?.message ?? error) });
|
|
692
|
+
}
|
|
693
|
+
});
|
|
694
|
+
// Assets wildcard — serve any JS/CSS chunk that the federation host build emitted.
|
|
695
|
+
// Vite emits files like bootstrap.js, vendor chunks, CSS, etc. all into dist/harness/.
|
|
696
|
+
this.page.route(`${pluginUrl}${HARNESS_ASSETS_PREFIX}**`, async (route) => {
|
|
697
|
+
try {
|
|
698
|
+
const url = new URL(route.request().url());
|
|
699
|
+
const fileName = url.pathname.slice(HARNESS_ASSETS_PREFIX.length);
|
|
700
|
+
const filePath = path.join(HARNESS_DIR, fileName);
|
|
701
|
+
if (!fs.existsSync(filePath)) {
|
|
702
|
+
await route.continue();
|
|
703
|
+
return;
|
|
704
|
+
}
|
|
705
|
+
const ext = path.extname(fileName);
|
|
706
|
+
const contentType = ext === '.js' ? 'application/javascript; charset=utf-8'
|
|
707
|
+
: ext === '.css' ? 'text/css; charset=utf-8'
|
|
708
|
+
: 'application/octet-stream';
|
|
709
|
+
await route.fulfill({ status: 200, headers: { 'Content-Type': contentType }, body: fs.readFileSync(filePath) });
|
|
710
|
+
}
|
|
711
|
+
catch (error) {
|
|
712
|
+
await route.fulfill({ status: 500, headers: { 'Content-Type': 'text/plain' }, body: String(error?.message ?? error) });
|
|
713
|
+
}
|
|
714
|
+
});
|
|
568
715
|
// Intercept all /locales requests and fetch from the dev server
|
|
569
716
|
this.page.route(`${pluginUrl}/locales/**`, async (route) => {
|
|
570
717
|
const request = route.request();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const n="__mf_init____mf__virtual/__mfe_internal__rimori_mf_2_scenario_mf_2_host__mf_v__runtimeInit__mf_v__.js__";let i=globalThis[n];if(!i){let e,t;const o=new Promise((r,f)=>{e=r,t=f});i=globalThis[n]={initPromise:o,initResolve:e,initReject:t},typeof window>"u"&&e({loadRemote:function(){return Promise.resolve(void 0)},loadShare:function(){return Promise.resolve(void 0)}})}const s=i.initPromise,m=s.then(e=>e.loadShare("@rimori/client",{customShareInfo:{shareConfig:{singleton:!0,strictVersion:!1,requiredVersion:"^2.5.34-next.0"}}})),_=await m.then(e=>typeof e=="function"?e():e);_.__esModule?_.default:_.default;const{setupWorker:l,AudioController:a,Translator:u,TIER_ORDER:d,ROLE_ORDER:c,StorageModule:g,EventBusHandler:v,EventBus:R,RimoriClient:h,StandaloneClient:P,MessageSender:S,getDifficultyLevel:b,getDifficultyLabel:p,getNeighborDifficultyLevel:E,compareLanguageLevels:L,RimoriCommunicationHandler:C}=_;export{P as _,h as a,v as b,R as c,a as d,S as e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const o="__mf_init____mf__virtual/__mfe_internal__rimori_mf_2_scenario_mf_2_host__mf_v__runtimeInit__mf_v__.js__";let i=globalThis[o];if(!i){let _,t;const n=new Promise((r,s)=>{_=r,t=s});i=globalThis[o]={initPromise:n,initResolve:_,initReject:t},typeof window>"u"&&_({loadRemote:function(){return Promise.resolve(void 0)},loadShare:function(){return Promise.resolve(void 0)}})}const m=i.initPromise,f=m.then(_=>_.loadShare("@rimori/react-client",{customShareInfo:{shareConfig:{singleton:!0,strictVersion:!1,requiredVersion:"^0.4.21"}}})),e=await f.then(_=>typeof _=="function"?_():_);e.__esModule?e.default:e.default;const{useTranslation:a,Avatar:l,BuddyAssistant:u,VoiceRecorder:d,MarkdownEditor:c,extractImageUrls:P,injectFederationCss:h,useChat:v,useSettings:g,useExerciseTracker:p,PluginProvider:w,useRimori:R,AudioPlayOptions:S,AudioPlayer:x}=e;export{w as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function i(e,n){for(var f=0;f<n.length;f++){const _=n[f];if(typeof _!="string"&&!Array.isArray(_)){for(const t in _)if(t!=="default"&&!(t in e)){const r=Object.getOwnPropertyDescriptor(_,t);r&&Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:()=>_[t]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}const a="__mf_init____mf__virtual/__mfe_internal__rimori_mf_2_scenario_mf_2_host__mf_v__runtimeInit__mf_v__.js__";let o=globalThis[a];if(!o){let e,n;const f=new Promise((_,t)=>{e=_,n=t});o=globalThis[a]={initPromise:f,initResolve:e,initReject:n},typeof window>"u"&&e({loadRemote:function(){return Promise.resolve(void 0)},loadShare:function(){return Promise.resolve(void 0)}})}const m=o.initPromise,u=m.then(e=>e.loadShare("react",{customShareInfo:{shareConfig:{singleton:!0,strictVersion:!1,requiredVersion:"^19.2.5"}}})),s=await u.then(e=>typeof e=="function"?e():e),c=s,l=s.__esModule?s.default:s.default??s,{Activity:d,Children:E,Component:S,Fragment:R,Profiler:h,PureComponent:p,StrictMode:C,Suspense:g,__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE:P,__COMPILER_RUNTIME:T,cache:N,cacheSignal:O,cloneElement:b,createContext:v,createElement:y,createRef:I,forwardRef:A,isValidElement:M,lazy:x,memo:D,startTransition:L,unstable_useCacheRefresh:U,use:V,useActionState:j,useCallback:w,useContext:k,useDebugValue:H,useDeferredValue:z,useEffect:G,useEffectEvent:F,useId:W,useImperativeHandle:Y,useInsertionEffect:q,useLayoutEffect:K,useMemo:B,useOptimistic:J,useReducer:Q,useRef:X,useState:Z,useSyncExternalStore:$,useTransition:ee,version:_e}=s,te=i({__proto__:null,Activity:d,Children:E,Component:S,Fragment:R,Profiler:h,PureComponent:p,StrictMode:C,Suspense:g,__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE:P,__COMPILER_RUNTIME:T,cache:N,cacheSignal:O,cloneElement:b,createContext:v,createElement:y,createRef:I,default:l,forwardRef:A,isValidElement:M,lazy:x,memo:D,startTransition:L,unstable_useCacheRefresh:U,use:V,useActionState:j,useCallback:w,useContext:k,useDebugValue:H,useDeferredValue:z,useEffect:G,useEffectEvent:F,useId:W,useImperativeHandle:Y,useInsertionEffect:q,useLayoutEffect:K,useMemo:B,useOptimistic:J,useReducer:Q,useRef:X,useState:Z,useSyncExternalStore:$,useTransition:ee,version:_e},[c]);export{l as R,te as _,Z as a,X as b,G as c,k as d,v as e,w as f,K as g,A as h,Y as i,B as j,H as k,$ as l};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as u}from"./__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react__loadShare__.js.js";function c(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function a(e){if(e.__esModule)return e;var o=e.default;if(typeof o=="function"){var t=function r(){return this instanceof r?Reflect.construct(o,arguments,this.constructor):o.apply(this,arguments)};t.prototype=o.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}),t}const f=a(u);export{c as a,a as g,f as r};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const t="__mf_init____mf__virtual/__mfe_internal__rimori_mf_2_scenario_mf_2_host__mf_v__runtimeInit__mf_v__.js__";let i=globalThis[t];if(!i){let e,n;const o=new Promise((s,r)=>{e=s,n=r});i=globalThis[t]={initPromise:o,initResolve:e,initReject:n},typeof window>"u"&&e({loadRemote:function(){return Promise.resolve(void 0)},loadShare:function(){return Promise.resolve(void 0)}})}const m=i.initPromise,f=m.then(e=>e.loadShare("react/jsx-runtime",{customShareInfo:{shareConfig:{singleton:!0,strictVersion:!1,requiredVersion:"^19.2.5"}}})),_=await f.then(e=>typeof e=="function"?e():e);_.__esModule?_.default:_.default;const{Fragment:a,jsx:l,jsxs:u}=_;export{l as _,u as a,a as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function f(e,o){for(var n=0;n<o.length;n++){const _=o[n];if(typeof _!="string"&&!Array.isArray(_)){for(const t in _)if(t!=="default"&&!(t in e)){const i=Object.getOwnPropertyDescriptor(_,t);i&&Object.defineProperty(e,t,i.get?i:{enumerable:!0,get:()=>_[t]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}const a="__mf_init____mf__virtual/__mfe_internal__rimori_mf_2_scenario_mf_2_host__mf_v__runtimeInit__mf_v__.js__";let s=globalThis[a];if(!s){let e,o;const n=new Promise((_,t)=>{e=_,o=t});s=globalThis[a]={initPromise:n,initResolve:e,initReject:o},typeof window>"u"&&e({loadRemote:function(){return Promise.resolve(void 0)},loadShare:function(){return Promise.resolve(void 0)}})}const m=s.initPromise,l=m.then(e=>e.loadShare("react-dom",{customShareInfo:{shareConfig:{singleton:!0,strictVersion:!1,requiredVersion:"^19.2.5"}}})),r=await l.then(e=>typeof e=="function"?e():e),u=r,c=r.__esModule?r.default:r.default??r,{__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE:d,createPortal:p,flushSync:S,preconnect:h,prefetchDNS:R,preinit:O,preinitModule:N,preload:P,preloadModule:b,requestFormReset:g,unstable_batchedUpdates:E,useFormState:T,useFormStatus:v,version:y}=r,A=f({__proto__:null,__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE:d,createPortal:p,default:c,flushSync:S,preconnect:h,prefetchDNS:R,preinit:O,preinitModule:N,preload:P,preloadModule:b,requestFormReset:g,unstable_batchedUpdates:E,useFormState:T,useFormStatus:v,version:y},[u]);export{c as R,A as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as _}from"./__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react__loadShare__.js_commonjs-proxy.js";import{_ as r}from"./__mfe_internal__rimori_mf_2_scenario_mf_2_host__loadShare__react_mf_2_dom__loadShare__.js.js";const m=_(r);export{m as r};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as t}from"./preload-helper.js";const i=await t(()=>import("./remoteEntry.js"),[]);await i.init();
|