plan/react-rewrite #1
@@ -0,0 +1,17 @@
|
||||
import type { HostContract } from "@/host-contract";
|
||||
|
||||
/**
|
||||
* MF expose wrapper for the Flights Map feature.
|
||||
* Phase 4 (flights-map port) replaces the body with the real root.
|
||||
*/
|
||||
export interface FlightsMapRemoteProps {
|
||||
hostContract: HostContract;
|
||||
}
|
||||
|
||||
export default function FlightsMapRemote(_props: FlightsMapRemoteProps): JSX.Element {
|
||||
return (
|
||||
<div data-mf-expose="FlightsMap">
|
||||
<p>Flights Map remote — stub. Populated in Phase 4.</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
import type { HostContract } from "@/host-contract";
|
||||
|
||||
/**
|
||||
* MF expose wrapper for the Online Board feature.
|
||||
* Phase 2 (online-board port) replaces the body with:
|
||||
* `return <OnlineBoardRoot hostContract={hostContract} />;`
|
||||
* where `OnlineBoardRoot` comes from `@/features/online-board`.
|
||||
*/
|
||||
export interface OnlineBoardRemoteProps {
|
||||
hostContract: HostContract;
|
||||
}
|
||||
|
||||
export default function OnlineBoardRemote(_props: OnlineBoardRemoteProps): JSX.Element {
|
||||
return (
|
||||
<div data-mf-expose="OnlineBoard">
|
||||
<p>Online Board remote — stub. Populated in Phase 2.</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
import type { HostContract } from "@/host-contract";
|
||||
|
||||
/**
|
||||
* MF expose wrapper for the Popular Requests feature.
|
||||
* Phase 5 (popular-requests port) replaces the body with the real root.
|
||||
*/
|
||||
export interface PopularRequestsRemoteProps {
|
||||
hostContract: HostContract;
|
||||
}
|
||||
|
||||
export default function PopularRequestsRemote(_props: PopularRequestsRemoteProps): JSX.Element {
|
||||
return (
|
||||
<div data-mf-expose="PopularRequests">
|
||||
<p>Popular Requests remote — stub. Populated in Phase 5.</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
import type { HostContract } from "@/host-contract";
|
||||
|
||||
/**
|
||||
* MF expose wrapper for the Schedule feature.
|
||||
* Phase 3 (schedule port) replaces the body with the real root.
|
||||
*/
|
||||
export interface ScheduleRemoteProps {
|
||||
hostContract: HostContract;
|
||||
}
|
||||
|
||||
export default function ScheduleRemote(_props: ScheduleRemoteProps): JSX.Element {
|
||||
return (
|
||||
<div data-mf-expose="Schedule">
|
||||
<p>Schedule remote — stub. Populated in Phase 3.</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
// Remote-mode bundle entry. Does not render — hosts import individual
|
||||
// /expose/<name> modules directly via the MF manifest. This file exists
|
||||
// to give the remote bundle a single module root and a clear place for
|
||||
// one-time runtime bootstrap hooks (e.g., telemetry init) that must run
|
||||
// before any expose is loaded. Phase 2+ adds those hooks.
|
||||
|
||||
export const REMOTE_BUILD_MARKER = "aeroflot_flights_remote_v1" as const;
|
||||
Reference in New Issue
Block a user