@granite-js/mpack 0.1.34 → 1.0.0
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/CHANGELOG.md +6 -360
- package/dist/bundler/internal/presets.d.ts +4 -1
- package/dist/bundler/internal/presets.js +16 -11
- package/dist/bundler/plugins/transformPlugin/steps/createFlowStripStep.d.ts +2 -0
- package/dist/{vendors/@react-native-community/cli-server-api/createWebSocketEndpoints.js → bundler/plugins/transformPlugin/steps/createFlowStripStep.js} +28 -13
- package/dist/bundler/plugins/transformPlugin/steps/createFullyTransformStep.js +0 -1
- package/dist/bundler/plugins/transformPlugin/steps/createTransformCodegenStep.d.ts +2 -0
- package/dist/bundler/plugins/transformPlugin/steps/createTransformCodegenStep.js +70 -0
- package/dist/bundler/plugins/transformPlugin/steps/createTransformToHermesSyntaxStep.d.ts +1 -2
- package/dist/bundler/plugins/transformPlugin/steps/createTransformToHermesSyntaxStep.js +5 -19
- package/dist/bundler/plugins/transformPlugin/transformPlugin.js +11 -5
- package/dist/experimental/index.d.ts +2 -0
- package/dist/{server/debugger/parseDomain.js → experimental/index.js} +9 -8
- package/dist/{operations/experimental → experimental/operations}/serve.js +19 -67
- package/dist/{server → experimental/server}/DevServer.d.ts +3 -3
- package/dist/{server → experimental/server}/DevServer.js +58 -41
- package/dist/{server → experimental/server}/debugger/DebuggerEventHandler.d.ts +1 -0
- package/dist/{server → experimental/server}/debugger/DebuggerEventHandler.js +8 -4
- package/dist/{vendors/@react-native/dev-middleware → experimental/server/debugger}/types.d.ts +1 -1
- package/dist/{server → experimental/server}/helpers/createBundlerForDevServer.d.ts +1 -1
- package/dist/{server → experimental/server}/helpers/createBundlerForDevServer.js +2 -2
- package/dist/{server → experimental/server}/helpers/mergeBundles.js +3 -3
- package/dist/{server → experimental/server}/middlewares/createLiveReloadMiddleware.js +1 -1
- package/dist/{server → experimental/server}/plugins/index.d.ts +0 -1
- package/dist/{server → experimental/server}/plugins/index.js +0 -2
- package/dist/{server → experimental/server}/plugins/indexPagePlugin.js +1 -1
- package/dist/{server → experimental/server}/plugins/reply.js +1 -1
- package/dist/{server → experimental/server}/plugins/serveBundlePlugin.js +2 -2
- package/dist/{server → experimental/server}/plugins/symbolicatePlugin/symbolicatePlugin.js +2 -2
- package/dist/{server → experimental/server}/types.d.ts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +3 -3
- package/dist/logger/clientLogger.d.ts +3 -2
- package/dist/metro/getMetroConfig.js +5 -5
- package/dist/operations/OpenDebuggerKeyboardHandler.d.ts +17 -0
- package/dist/operations/OpenDebuggerKeyboardHandler.js +129 -0
- package/dist/operations/attachKeyHandlers.d.ts +15 -0
- package/dist/operations/attachKeyHandlers.js +132 -0
- package/dist/operations/index.d.ts +0 -1
- package/dist/operations/index.js +1 -3
- package/dist/operations/keyReporter.d.ts +6 -0
- package/dist/operations/keyReporter.js +57 -0
- package/dist/operations/serve.d.ts +1 -2
- package/dist/operations/serve.js +38 -36
- package/dist/transformer/AsyncTransformPipeline.js +24 -7
- package/dist/transformer/TransformPipeline.d.ts +17 -12
- package/dist/transformer/TransformPipeline.js +6 -2
- package/dist/utils/getDefaultReactNativePath.d.ts +1 -0
- package/dist/utils/getDefaultReactNativePath.js +45 -0
- package/dist/utils/getId.js +3 -1
- package/dist/vendors/metro/src/DeltaBundler/Serializers/helpers/getSourceMapInfo.js +2 -1
- package/dist/vendors/metro/src/DeltaBundler/Serializers/sourceMapGenerator.js +3 -1
- package/dist/vendors/metro/src/Server.js +119 -11
- package/package.json +19 -16
- package/src/lib.d.ts +90 -0
- package/dist/bundler/plugins/transformPlugin/steps/createStripFlowStep.d.ts +0 -6
- package/dist/bundler/plugins/transformPlugin/steps/createStripFlowStep.js +0 -91
- package/dist/operations/constants.d.ts +0 -3
- package/dist/operations/constants.js +0 -34
- package/dist/operations/createDebuggerMiddleware.d.ts +0 -10
- package/dist/operations/createDebuggerMiddleware.js +0 -128
- package/dist/operations/experimental/StartMenuHandler.d.ts +0 -13
- package/dist/operations/experimental/StartMenuHandler.js +0 -86
- package/dist/operations/openDebugger.d.ts +0 -1
- package/dist/operations/openDebugger.js +0 -74
- package/dist/server/debugger/parseDomain.d.ts +0 -1
- package/dist/server/plugins/debuggerPlugin.d.ts +0 -7
- package/dist/server/plugins/debuggerPlugin.js +0 -68
- package/dist/vendors/@react-native/dev-middleware/Device.d.ts +0 -5
- package/dist/vendors/@react-native/dev-middleware/Device.js +0 -33
- package/dist/vendors/@react-native/dev-middleware/InspectorProxy.d.ts +0 -31
- package/dist/vendors/@react-native/dev-middleware/InspectorProxy.js +0 -169
- package/dist/vendors/@react-native/dev-middleware/index.d.ts +0 -3
- package/dist/vendors/@react-native/dev-middleware/index.js +0 -26
- package/dist/vendors/@react-native-community/cli-server-api/createWebSocketEndpoints.d.ts +0 -23
- package/dist/vendors/@react-native-community/cli-server-api/index.d.ts +0 -1
- package/dist/vendors/@react-native-community/cli-server-api/index.js +0 -22
- /package/dist/{operations/experimental → experimental/operations}/serve.d.ts +0 -0
- /package/dist/{server → experimental/server}/constants.d.ts +0 -0
- /package/dist/{server → experimental/server}/constants.js +0 -0
- /package/dist/{server → experimental/server/debugger}/types.js +0 -0
- /package/dist/{server → experimental/server}/helpers/mergeBundles.d.ts +0 -0
- /package/dist/{server → experimental/server}/index.d.ts +0 -0
- /package/dist/{server → experimental/server}/index.js +0 -0
- /package/dist/{server → experimental/server}/middlewares/createLiveReloadMiddleware.d.ts +0 -0
- /package/dist/{server → experimental/server}/middlewares/index.d.ts +0 -0
- /package/dist/{server → experimental/server}/middlewares/index.js +0 -0
- /package/dist/{server → experimental/server}/plugins/indexPagePlugin.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/reply.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/serveBundlePlugin.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/statusPlugin.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/statusPlugin.js +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/index.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/index.js +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/parseStackFrame.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/parseStackFrame.js +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/symbolicate.d.ts +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/symbolicate.js +0 -0
- /package/dist/{server → experimental/server}/plugins/symbolicatePlugin/symbolicatePlugin.d.ts +0 -0
- /package/dist/{vendors/@react-native/dev-middleware → experimental/server}/types.js +0 -0
- /package/dist/{server → experimental/server}/wss/WebSocketServerDelegate.d.ts +0 -0
- /package/dist/{server → experimental/server}/wss/WebSocketServerDelegate.js +0 -0
- /package/dist/{server → experimental/server}/wss/WebSocketServerRouter.d.ts +0 -0
- /package/dist/{server → experimental/server}/wss/WebSocketServerRouter.js +0 -0
- /package/dist/{server → experimental/server}/wss/index.d.ts +0 -0
- /package/dist/{server → experimental/server}/wss/index.js +0 -0
|
@@ -32,15 +32,13 @@ __export(serve_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(serve_exports);
|
|
34
34
|
var import_plugin_core = require("@granite-js/plugin-core");
|
|
35
|
-
var import_prompts = require("@inquirer/prompts");
|
|
36
|
-
var import_debug = __toESM(require("debug"));
|
|
37
|
-
var import_StartMenuHandler = require("./StartMenuHandler");
|
|
38
35
|
var import_constants = require("../../constants");
|
|
39
|
-
var
|
|
36
|
+
var import_attachKeyHandlers = __toESM(require("../../operations/attachKeyHandlers"));
|
|
37
|
+
var import_keyReporter = require("../../operations/keyReporter");
|
|
40
38
|
var import_printLogo = require("../../utils/printLogo");
|
|
41
|
-
var
|
|
42
|
-
|
|
43
|
-
|
|
39
|
+
var import_printServerUrl = require("../../utils/printServerUrl");
|
|
40
|
+
var import_DevServer = require("../server/DevServer");
|
|
41
|
+
let keyHandlersAttached = false;
|
|
44
42
|
async function EXPERIMENTAL__server({
|
|
45
43
|
config,
|
|
46
44
|
host = import_constants.DEV_SERVER_DEFAULT_HOST,
|
|
@@ -62,69 +60,23 @@ async function EXPERIMENTAL__server({
|
|
|
62
60
|
await server.initialize();
|
|
63
61
|
await server.listen();
|
|
64
62
|
await driver.devServer.post({ host, port });
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
console.log("Opening developer menu...");
|
|
80
|
-
server.broadcastCommand("devMenu");
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
key: "j",
|
|
85
|
-
description: "Open Debugger",
|
|
86
|
-
action: async () => {
|
|
87
|
-
const devices = server.getInspectorProxy()?.getDevices();
|
|
88
|
-
const connectedDevices = Array.from(devices?.entries() ?? []);
|
|
89
|
-
let targetDevice;
|
|
90
|
-
for (const [id, device] of connectedDevices) {
|
|
91
|
-
debug(`[${id}] ${device.getName()}`);
|
|
92
|
-
}
|
|
93
|
-
if (connectedDevices.length === 0) {
|
|
94
|
-
console.log("No compatible apps connected");
|
|
95
|
-
return;
|
|
96
|
-
} else if (connectedDevices.length === 1) {
|
|
97
|
-
const [id, device] = connectedDevices[0];
|
|
98
|
-
const name = device.getName();
|
|
99
|
-
targetDevice = { id, name };
|
|
100
|
-
} else {
|
|
101
|
-
const deviceInfo = await (0, import_prompts.select)({
|
|
102
|
-
message: "Select a device to connect",
|
|
103
|
-
choices: connectedDevices.map(([id, device]) => ({
|
|
104
|
-
value: { id, name: device.getName() },
|
|
105
|
-
name: device.getName()
|
|
106
|
-
}))
|
|
107
|
-
});
|
|
108
|
-
process.stdin.resume();
|
|
109
|
-
targetDevice = deviceInfo;
|
|
110
|
-
}
|
|
111
|
-
console.log(`Opening debugger for '${targetDevice.name}'...`);
|
|
112
|
-
chromeInstanceMap.get(targetDevice.id)?.kill();
|
|
113
|
-
(0, import_openDebugger.openDebugger)(server.port, targetDevice.id).then((chrome) => {
|
|
114
|
-
chromeInstanceMap.set(targetDevice.id, chrome);
|
|
115
|
-
}).catch((error) => {
|
|
116
|
-
if (error.message.includes("ECONNREFUSED")) {
|
|
117
|
-
return;
|
|
118
|
-
}
|
|
119
|
-
console.error(error);
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
]).attach();
|
|
63
|
+
(0, import_printServerUrl.printServerUrl)({ host, port });
|
|
64
|
+
if (!keyHandlersAttached) {
|
|
65
|
+
keyHandlersAttached = true;
|
|
66
|
+
const devServerHostname = host === "0.0.0.0" ? "localhost" : host;
|
|
67
|
+
const devServerUrl = new URL(`http://${devServerHostname}:${port}`).origin;
|
|
68
|
+
(0, import_attachKeyHandlers.default)({
|
|
69
|
+
devServerUrl,
|
|
70
|
+
messageSocket: {
|
|
71
|
+
broadcast: (command, params) => server.broadcastCommand(command, params ?? void 0)
|
|
72
|
+
},
|
|
73
|
+
reporter: import_keyReporter.keyReporter
|
|
74
|
+
});
|
|
75
|
+
await onServerReady?.();
|
|
76
|
+
}
|
|
124
77
|
return {
|
|
125
78
|
cleanup: async () => {
|
|
126
79
|
await server.close();
|
|
127
|
-
menuHandler.close();
|
|
128
80
|
}
|
|
129
81
|
};
|
|
130
82
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { BroadcastCommand, DevServerOptions } from './types';
|
|
2
|
-
import { InspectorProxy } from '../vendors/@react-native/dev-middleware';
|
|
3
2
|
export declare class DevServer {
|
|
4
3
|
private devServerOptions;
|
|
5
4
|
host: string;
|
|
@@ -8,13 +7,14 @@ export declare class DevServer {
|
|
|
8
7
|
private context;
|
|
9
8
|
private inspectorProxy?;
|
|
10
9
|
private wssDelegate?;
|
|
10
|
+
private setupTask;
|
|
11
11
|
constructor(devServerOptions: DevServerOptions);
|
|
12
12
|
initialize(): Promise<void>;
|
|
13
13
|
listen(): Promise<void>;
|
|
14
14
|
close(): Promise<undefined>;
|
|
15
|
-
getInspectorProxy():
|
|
15
|
+
getInspectorProxy(): unknown;
|
|
16
16
|
getBaseUrl(): string;
|
|
17
|
-
broadcastCommand(command: BroadcastCommand): void;
|
|
17
|
+
broadcastCommand(command: BroadcastCommand, params?: Record<string, unknown>): void;
|
|
18
18
|
private getContext;
|
|
19
19
|
private setup;
|
|
20
20
|
private setCommonHeaders;
|
|
@@ -32,21 +32,21 @@ __export(DevServer_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(DevServer_exports);
|
|
34
34
|
var import_assert = __toESM(require("assert"));
|
|
35
|
+
var import_middie = __toESM(require("@fastify/middie"));
|
|
36
|
+
var import_dev_middleware = require("@react-native/dev-middleware");
|
|
37
|
+
var import_cli_server_api = require("@react-native-community/cli-server-api");
|
|
35
38
|
var import_fastify = __toESM(require("fastify"));
|
|
36
|
-
var import_backend = require("react-native-devtools-standalone/backend");
|
|
37
39
|
var import_DebuggerEventHandler = require("./debugger/DebuggerEventHandler");
|
|
38
40
|
var import_createBundlerForDevServer = require("./helpers/createBundlerForDevServer");
|
|
39
41
|
var import_mergeBundles = require("./helpers/mergeBundles");
|
|
40
42
|
var import_middlewares = require("./middlewares");
|
|
41
43
|
var serverPlugins = __toESM(require("./plugins"));
|
|
42
44
|
var import_wss = require("./wss");
|
|
43
|
-
var import_constants = require("
|
|
44
|
-
var import_logger = require("
|
|
45
|
-
var import_statusPlugin = require("
|
|
46
|
-
var import_isDebugMode = require("
|
|
47
|
-
var import_progressBar = require("
|
|
48
|
-
var import_dev_middleware = require("../vendors/@react-native/dev-middleware");
|
|
49
|
-
var import_cli_server_api = require("../vendors/@react-native-community/cli-server-api");
|
|
45
|
+
var import_constants = require("../../constants");
|
|
46
|
+
var import_logger = require("../../logger");
|
|
47
|
+
var import_statusPlugin = require("../../plugins/statusPlugin");
|
|
48
|
+
var import_isDebugMode = require("../../utils/isDebugMode");
|
|
49
|
+
var import_progressBar = require("../../utils/progressBar");
|
|
50
50
|
class DevServer {
|
|
51
51
|
constructor(devServerOptions) {
|
|
52
52
|
this.devServerOptions = devServerOptions;
|
|
@@ -61,7 +61,7 @@ class DevServer {
|
|
|
61
61
|
}
|
|
62
62
|
});
|
|
63
63
|
this.app = app;
|
|
64
|
-
this.setup(app);
|
|
64
|
+
this.setupTask = this.setup(app);
|
|
65
65
|
}
|
|
66
66
|
host;
|
|
67
67
|
port;
|
|
@@ -69,13 +69,16 @@ class DevServer {
|
|
|
69
69
|
context = null;
|
|
70
70
|
inspectorProxy;
|
|
71
71
|
wssDelegate;
|
|
72
|
+
setupTask;
|
|
72
73
|
async initialize() {
|
|
73
74
|
import_logger.logger.trace("DevServer.initialize");
|
|
75
|
+
await this.setupTask;
|
|
74
76
|
const { rootDir, buildConfig } = this.devServerOptions;
|
|
75
77
|
this.context = await this.createDevServerContext(rootDir, buildConfig);
|
|
76
78
|
}
|
|
77
|
-
listen() {
|
|
79
|
+
async listen() {
|
|
78
80
|
import_logger.logger.trace("DevServer.listen");
|
|
81
|
+
await this.setupTask;
|
|
79
82
|
return this.app.listen({ host: this.host, port: this.port }).then(() => {
|
|
80
83
|
import_logger.logger.info(`\uAC1C\uBC1C \uC11C\uBC84 \uC2E4\uD589 \uC911 - ${this.getBaseUrl()}`);
|
|
81
84
|
});
|
|
@@ -89,31 +92,45 @@ class DevServer {
|
|
|
89
92
|
getBaseUrl() {
|
|
90
93
|
return `http://${this.host}:${this.port}`;
|
|
91
94
|
}
|
|
92
|
-
broadcastCommand(command) {
|
|
93
|
-
this.wssDelegate?.broadcastCommand?.(command);
|
|
95
|
+
broadcastCommand(command, params) {
|
|
96
|
+
this.wssDelegate?.broadcastCommand?.(command, params);
|
|
94
97
|
}
|
|
95
98
|
getContext() {
|
|
96
99
|
(0, import_assert.default)(this.context, "\uCD08\uAE30\uD654\uAC00 \uC644\uB8CC\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4");
|
|
97
100
|
return this.context;
|
|
98
101
|
}
|
|
99
102
|
async setup(app) {
|
|
100
|
-
const
|
|
101
|
-
const serverBaseUrl = this.
|
|
103
|
+
const devServerHostname = this.host === "0.0.0.0" ? "localhost" : this.host;
|
|
104
|
+
const serverBaseUrl = new URL(`http://${devServerHostname}:${this.port}`).origin;
|
|
105
|
+
await app.register(import_middie.default);
|
|
106
|
+
const {
|
|
107
|
+
middleware: devServerMiddleware,
|
|
108
|
+
websocketEndpoints: serverWebsocketEndpoints,
|
|
109
|
+
eventsSocketEndpoint,
|
|
110
|
+
messageSocketEndpoint
|
|
111
|
+
} = (0, import_cli_server_api.createDevServerMiddleware)({
|
|
112
|
+
host: this.host,
|
|
113
|
+
port: this.port,
|
|
114
|
+
watchFolders: [this.devServerOptions.rootDir]
|
|
115
|
+
});
|
|
116
|
+
const devMiddleware = (0, import_dev_middleware.createDevMiddleware)({ serverBaseUrl });
|
|
117
|
+
const devtoolsWebsocketEndpoints = devMiddleware.websocketEndpoints ?? {};
|
|
118
|
+
this.inspectorProxy = devMiddleware.inspectorProxy;
|
|
119
|
+
devServerMiddleware.use(devMiddleware.middleware);
|
|
120
|
+
app.use(devServerMiddleware);
|
|
102
121
|
const debuggerEventHandler = new import_DebuggerEventHandler.DebuggerEventHandler(this.devServerOptions.inspectorProxy?.delegate);
|
|
103
|
-
const
|
|
104
|
-
|
|
105
|
-
|
|
122
|
+
const deviceSocket = devtoolsWebsocketEndpoints["/inspector/device"];
|
|
123
|
+
if (deviceSocket) {
|
|
124
|
+
deviceSocket.on("connection", (socket) => {
|
|
106
125
|
debuggerEventHandler.setDeviceWebSocketHandler(socket);
|
|
107
|
-
}
|
|
108
|
-
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
const debuggerSocket = devtoolsWebsocketEndpoints["/inspector/debug"];
|
|
129
|
+
if (debuggerSocket) {
|
|
130
|
+
debuggerSocket.on("connection", (socket) => {
|
|
109
131
|
debuggerEventHandler.setDebuggerWebSocketHandler(socket);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
const { debuggerProxySocket, eventsSocket, messageSocket } = (0, import_cli_server_api.createWebSocketEndpoints)({
|
|
113
|
-
broadcast: (command, params) => {
|
|
114
|
-
this.wssDelegate?.broadcastCommand(command, params);
|
|
115
|
-
}
|
|
116
|
-
});
|
|
132
|
+
});
|
|
133
|
+
}
|
|
117
134
|
const liveReloadMiddleware = (0, import_middlewares.createLiveReloadMiddleware)({
|
|
118
135
|
onClientLog: (event) => {
|
|
119
136
|
this.wssDelegate?.sendEvent(event);
|
|
@@ -123,32 +140,32 @@ class DevServer {
|
|
|
123
140
|
}
|
|
124
141
|
});
|
|
125
142
|
const wssDelegate = new import_wss.WebSocketServerDelegate({
|
|
126
|
-
eventReporter: (event) =>
|
|
127
|
-
messageBroadcaster: (command, params) =>
|
|
143
|
+
eventReporter: (event) => eventsSocketEndpoint.reportEvent(event),
|
|
144
|
+
messageBroadcaster: (command, params) => messageSocketEndpoint.broadcast(command, params),
|
|
128
145
|
hmr: {
|
|
129
146
|
updateStart: () => liveReloadMiddleware.updateStart(),
|
|
130
147
|
updateDone: () => liveReloadMiddleware.updateDone(),
|
|
131
148
|
reload: () => liveReloadMiddleware.liveReload()
|
|
132
149
|
}
|
|
133
150
|
});
|
|
134
|
-
app.register(serverPlugins.statusPlugin, { rootDir: this.devServerOptions.rootDir }).register(serverPlugins.
|
|
151
|
+
app.register(serverPlugins.statusPlugin, { rootDir: this.devServerOptions.rootDir }).register(serverPlugins.serveBundlePlugin, { getBundle: this.getBundle.bind(this) }).register(serverPlugins.symbolicatePlugin, { getBundle: this.getBundle.bind(this) }).register(serverPlugins.indexPagePlugin).addHook("onSend", this.setCommonHeaders);
|
|
135
152
|
for (const plugin of this.devServerOptions.middlewares ?? []) {
|
|
136
153
|
app.register(plugin);
|
|
137
154
|
}
|
|
138
|
-
new import_wss.WebSocketServerRouter().register("/hot", liveReloadMiddleware.server)
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
},
|
|
145
|
-
devtools: {
|
|
146
|
-
delegate: {
|
|
147
|
-
onError: (error) => import_logger.logger.error("React DevTools frontend error", error)
|
|
155
|
+
const webSocketRouter = new import_wss.WebSocketServerRouter().register("/hot", liveReloadMiddleware.server);
|
|
156
|
+
const registeredPaths = /* @__PURE__ */ new Set(["/hot"]);
|
|
157
|
+
const registerEndpoints = (endpoints) => {
|
|
158
|
+
for (const [path, endpoint] of Object.entries(endpoints)) {
|
|
159
|
+
if (registeredPaths.has(path)) {
|
|
160
|
+
continue;
|
|
148
161
|
}
|
|
162
|
+
webSocketRouter.register(path, endpoint);
|
|
163
|
+
registeredPaths.add(path);
|
|
149
164
|
}
|
|
150
|
-
}
|
|
151
|
-
|
|
165
|
+
};
|
|
166
|
+
registerEndpoints(serverWebsocketEndpoints ?? {});
|
|
167
|
+
registerEndpoints(devtoolsWebsocketEndpoints ?? {});
|
|
168
|
+
webSocketRouter.setup(app);
|
|
152
169
|
this.wssDelegate = wssDelegate;
|
|
153
170
|
}
|
|
154
171
|
setCommonHeaders(_request, reply, _payload, next) {
|
|
@@ -28,11 +28,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
var DebuggerEventHandler_exports = {};
|
|
30
30
|
__export(DebuggerEventHandler_exports, {
|
|
31
|
-
DebuggerEventHandler: () => DebuggerEventHandler
|
|
31
|
+
DebuggerEventHandler: () => DebuggerEventHandler,
|
|
32
|
+
parseDomain: () => parseDomain
|
|
32
33
|
});
|
|
33
34
|
module.exports = __toCommonJS(DebuggerEventHandler_exports);
|
|
34
35
|
var import_debug = __toESM(require("debug"));
|
|
35
|
-
|
|
36
|
+
function parseDomain(method) {
|
|
37
|
+
return method.split(".")[0];
|
|
38
|
+
}
|
|
36
39
|
const debug = (0, import_debug.default)("dev-server:debugger");
|
|
37
40
|
class DebuggerEventHandler {
|
|
38
41
|
constructor(delegate) {
|
|
@@ -69,7 +72,7 @@ class DebuggerEventHandler {
|
|
|
69
72
|
const parsedMessage = JSON.parse(message.toString());
|
|
70
73
|
if (parsedMessage.event === "wrappedEvent") {
|
|
71
74
|
const wrappedEventPayload = JSON.parse(parsedMessage?.payload?.wrappedEvent);
|
|
72
|
-
const domain =
|
|
75
|
+
const domain = parseDomain(wrappedEventPayload.method);
|
|
73
76
|
if (domain === "Bedrock" || domain === "Granite") {
|
|
74
77
|
return wrappedEventPayload;
|
|
75
78
|
}
|
|
@@ -176,5 +179,6 @@ class DebuggerEventHandler {
|
|
|
176
179
|
}
|
|
177
180
|
// Annotate the CommonJS export names for ESM import in node:
|
|
178
181
|
0 && (module.exports = {
|
|
179
|
-
DebuggerEventHandler
|
|
182
|
+
DebuggerEventHandler,
|
|
183
|
+
parseDomain
|
|
180
184
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BuildConfig } from '@granite-js/plugin-core';
|
|
2
|
-
import { Bundler } from '
|
|
2
|
+
import { Bundler } from '../../../bundler';
|
|
3
3
|
import { Platform } from '../types';
|
|
4
4
|
export declare function createBundlerForDevServer({ rootDir, platform, buildConfig, }: {
|
|
5
5
|
rootDir: string;
|
|
@@ -21,8 +21,8 @@ __export(createBundlerForDevServer_exports, {
|
|
|
21
21
|
createBundlerForDevServer: () => createBundlerForDevServer
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(createBundlerForDevServer_exports);
|
|
24
|
-
var import_bundler = require("
|
|
25
|
-
var import_getBundleName = require("
|
|
24
|
+
var import_bundler = require("../../../bundler");
|
|
25
|
+
var import_getBundleName = require("../../../utils/getBundleName");
|
|
26
26
|
var import_constants = require("../constants");
|
|
27
27
|
async function createBundlerForDevServer({
|
|
28
28
|
rootDir,
|
|
@@ -32,9 +32,9 @@ __export(mergeBundles_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(mergeBundles_exports);
|
|
34
34
|
var esbuild = __toESM(require("esbuild"));
|
|
35
|
-
var import_constants = require("
|
|
36
|
-
var import_getBundleName = require("
|
|
37
|
-
var import_getSourcemapName = require("
|
|
35
|
+
var import_constants = require("../../../constants");
|
|
36
|
+
var import_getBundleName = require("../../../utils/getBundleName");
|
|
37
|
+
var import_getSourcemapName = require("../../../utils/getSourcemapName");
|
|
38
38
|
var import_constants2 = require("../constants");
|
|
39
39
|
const INTERNAL_SOURCE = "mpack:internal";
|
|
40
40
|
const IMPORT_SOURCE = "mpack:remote";
|
|
@@ -32,7 +32,7 @@ __export(createLiveReloadMiddleware_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(createLiveReloadMiddleware_exports);
|
|
34
34
|
var ws = __toESM(require("ws"));
|
|
35
|
-
var import_logger = require("
|
|
35
|
+
var import_logger = require("../../../logger");
|
|
36
36
|
const getReloadByDevSettingsProxy = () => `(function () {
|
|
37
37
|
var moduleName = "DevSettings";
|
|
38
38
|
(window.__turboModuleProxy
|
|
@@ -15,14 +15,12 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
|
|
|
15
15
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
16
16
|
var plugins_exports = {};
|
|
17
17
|
module.exports = __toCommonJS(plugins_exports);
|
|
18
|
-
__reExport(plugins_exports, require("./debuggerPlugin"), module.exports);
|
|
19
18
|
__reExport(plugins_exports, require("./indexPagePlugin"), module.exports);
|
|
20
19
|
__reExport(plugins_exports, require("./serveBundlePlugin"), module.exports);
|
|
21
20
|
__reExport(plugins_exports, require("./statusPlugin"), module.exports);
|
|
22
21
|
__reExport(plugins_exports, require("./symbolicatePlugin"), module.exports);
|
|
23
22
|
// Annotate the CommonJS export names for ESM import in node:
|
|
24
23
|
0 && (module.exports = {
|
|
25
|
-
...require("./debuggerPlugin"),
|
|
26
24
|
...require("./indexPagePlugin"),
|
|
27
25
|
...require("./serveBundlePlugin"),
|
|
28
26
|
...require("./statusPlugin"),
|
|
@@ -32,7 +32,7 @@ __export(indexPagePlugin_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(indexPagePlugin_exports);
|
|
34
34
|
var import_fastify_plugin = __toESM(require("fastify-plugin"));
|
|
35
|
-
var import_logger = require("
|
|
35
|
+
var import_logger = require("../../../logger");
|
|
36
36
|
async function _indexPagePlugin(app) {
|
|
37
37
|
app.route({
|
|
38
38
|
method: ["GET"],
|
|
@@ -22,7 +22,7 @@ __export(reply_exports, {
|
|
|
22
22
|
notFound: () => notFound
|
|
23
23
|
});
|
|
24
24
|
module.exports = __toCommonJS(reply_exports);
|
|
25
|
-
var import_Logger = require("
|
|
25
|
+
var import_Logger = require("../../../logger/Logger");
|
|
26
26
|
function invalidRequest(reply, logMessage) {
|
|
27
27
|
import_Logger.logger.warn(`invalid request: ${logMessage}`);
|
|
28
28
|
return reply.code(400);
|
|
@@ -34,8 +34,8 @@ module.exports = __toCommonJS(serveBundlePlugin_exports);
|
|
|
34
34
|
var import_path = __toESM(require("path"));
|
|
35
35
|
var import_fastify_plugin = __toESM(require("fastify-plugin"));
|
|
36
36
|
var import_reply = require("./reply");
|
|
37
|
-
var import_logger = require("
|
|
38
|
-
var import_stripExtension = require("
|
|
37
|
+
var import_logger = require("../../../logger");
|
|
38
|
+
var import_stripExtension = require("../../../utils/stripExtension");
|
|
39
39
|
var import_constants = require("../constants");
|
|
40
40
|
var BundleResourceType = /* @__PURE__ */ ((BundleResourceType2) => {
|
|
41
41
|
BundleResourceType2["Bundle"] = "bundle";
|
|
@@ -35,8 +35,8 @@ var url = __toESM(require("url"));
|
|
|
35
35
|
var import_fastify_plugin = __toESM(require("fastify-plugin"));
|
|
36
36
|
var import_parseStackFrame = require("./parseStackFrame");
|
|
37
37
|
var import_symbolicate = require("./symbolicate");
|
|
38
|
-
var import_logger = require("
|
|
39
|
-
var import_stripExtension = require("
|
|
38
|
+
var import_logger = require("../../../../logger");
|
|
39
|
+
var import_stripExtension = require("../../../../utils/stripExtension");
|
|
40
40
|
var import_constants = require("../../constants");
|
|
41
41
|
var import_reply = require("../reply");
|
|
42
42
|
async function symbolicatePluginImpl(app, { getBundle }) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Middleware, BuildConfig, InspectorProxyConfig } from '@granite-js/plugin-core';
|
|
2
|
-
import type { Bundler } from '
|
|
3
|
-
import type { BuildStatusProgressBar } from '
|
|
2
|
+
import type { Bundler } from '../../bundler';
|
|
3
|
+
import type { BuildStatusProgressBar } from '../../utils/progressBar';
|
|
4
4
|
export type Platform = 'android' | 'ios';
|
|
5
5
|
export interface DevServerOptions {
|
|
6
6
|
rootDir: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { Bundler } from './bundler';
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
2
|
+
export { BuildUtils, runServer } from './operations';
|
|
3
|
+
export { EXPERIMENTAL__server, DevServer } from './experimental';
|
|
4
4
|
export { getMetroConfig, MetroBuildUtils } from './metro';
|
|
5
5
|
export { DEV_SERVER_DEFAULT_HOST, DEV_SERVER_DEFAULT_PORT, SHARED_BUNDLE_NAME, SERVICE_BUNDLE_NAME, BUNDLE_NAME, } from './constants';
|
|
6
6
|
export type * from './types';
|
package/dist/index.js
CHANGED
|
@@ -23,8 +23,8 @@ __export(index_exports, {
|
|
|
23
23
|
Bundler: () => import_bundler.Bundler,
|
|
24
24
|
DEV_SERVER_DEFAULT_HOST: () => import_constants.DEV_SERVER_DEFAULT_HOST,
|
|
25
25
|
DEV_SERVER_DEFAULT_PORT: () => import_constants.DEV_SERVER_DEFAULT_PORT,
|
|
26
|
-
DevServer: () =>
|
|
27
|
-
EXPERIMENTAL__server: () =>
|
|
26
|
+
DevServer: () => import_experimental.DevServer,
|
|
27
|
+
EXPERIMENTAL__server: () => import_experimental.EXPERIMENTAL__server,
|
|
28
28
|
MetroBuildUtils: () => import_metro.MetroBuildUtils,
|
|
29
29
|
SERVICE_BUNDLE_NAME: () => import_constants.SERVICE_BUNDLE_NAME,
|
|
30
30
|
SHARED_BUNDLE_NAME: () => import_constants.SHARED_BUNDLE_NAME,
|
|
@@ -33,8 +33,8 @@ __export(index_exports, {
|
|
|
33
33
|
});
|
|
34
34
|
module.exports = __toCommonJS(index_exports);
|
|
35
35
|
var import_bundler = require("./bundler");
|
|
36
|
-
var import_server = require("./server");
|
|
37
36
|
var import_operations = require("./operations");
|
|
37
|
+
var import_experimental = require("./experimental");
|
|
38
38
|
var import_metro = require("./metro");
|
|
39
39
|
var import_constants = require("./constants");
|
|
40
40
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const clientLogger: (level:
|
|
1
|
+
type ClientLogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'log' | 'group' | 'groupCollapsed' | 'groupEnd';
|
|
2
|
+
export declare const clientLogger: (level: ClientLogLevel, data: any[]) => void;
|
|
3
|
+
export {};
|
|
@@ -36,6 +36,7 @@ var import_utils = require("@granite-js/utils");
|
|
|
36
36
|
var import_enhancedResolver = require("./enhancedResolver");
|
|
37
37
|
var import_getMonorepoRoot = require("./getMonorepoRoot");
|
|
38
38
|
var import_constants = require("../constants");
|
|
39
|
+
var import_getDefaultReactNativePath = require("../utils/getDefaultReactNativePath");
|
|
39
40
|
var import_defaults = require("../vendors/metro-config/src/defaults");
|
|
40
41
|
var import_exclusionList = __toESM(require("../vendors/metro-config/src/defaults/exclusionList"));
|
|
41
42
|
var import_loadConfig = require("../vendors/metro-config/src/loadConfig");
|
|
@@ -60,7 +61,7 @@ const INTERNAL_CALLSITES_REGEX = new RegExp(
|
|
|
60
61
|
);
|
|
61
62
|
async function getMetroConfig({ rootPath }, additionalConfig) {
|
|
62
63
|
const defaultConfig = (0, import_defaults.getDefaultValues)(rootPath);
|
|
63
|
-
const reactNativePath =
|
|
64
|
+
const reactNativePath = additionalConfig?.reactNativePath ?? (0, import_getDefaultReactNativePath.getDefaultReactNativePath)(rootPath);
|
|
64
65
|
const resolvedRootPath = await (0, import_getMonorepoRoot.getMonorepoRoot)(rootPath);
|
|
65
66
|
const packageRootPath = await (0, import_utils.getPackageRoot)();
|
|
66
67
|
const resolveRequest = additionalConfig?.resolver?.resolveRequest ?? (0, import_enhancedResolver.createResolver)(rootPath, {
|
|
@@ -109,7 +110,9 @@ async function getMetroConfig({ rootPath }, additionalConfig) {
|
|
|
109
110
|
resolverMainFields: additionalConfig?.resolver?.resolverMainFields ?? import_constants.RESOLVER_MAIN_FIELDS
|
|
110
111
|
},
|
|
111
112
|
serializer: {
|
|
112
|
-
getModulesRunBeforeMainModule: () => [
|
|
113
|
+
getModulesRunBeforeMainModule: () => [
|
|
114
|
+
require.resolve(import_path.default.resolve(reactNativePath, "Libraries/Core/InitializeCore"))
|
|
115
|
+
],
|
|
113
116
|
getPolyfills: () => [
|
|
114
117
|
...require(import_path.default.join(reactNativePath, "rn-get-polyfills"))(),
|
|
115
118
|
...additionalConfig?.serializer?.getPolyfills?.() ?? []
|
|
@@ -128,9 +131,6 @@ async function getMetroConfig({ rootPath }, additionalConfig) {
|
|
|
128
131
|
...process.env.METRO_RESET_CACHE !== "false" ? { resetCache: true } : {}
|
|
129
132
|
});
|
|
130
133
|
}
|
|
131
|
-
function resolveFromRoot(source, rootPath) {
|
|
132
|
-
return require.resolve(source, { paths: [rootPath] });
|
|
133
|
-
}
|
|
134
134
|
function resolveVendors(source) {
|
|
135
135
|
const vendorsBase = import_path.default.resolve(__dirname, "../vendors");
|
|
136
136
|
return require.resolve(import_path.default.join(vendorsBase, source));
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
type Reporter = {
|
|
2
|
+
update: (event: {
|
|
3
|
+
type: string;
|
|
4
|
+
[key: string]: unknown;
|
|
5
|
+
}) => void;
|
|
6
|
+
};
|
|
7
|
+
export default class OpenDebuggerKeyboardHandler {
|
|
8
|
+
#private;
|
|
9
|
+
constructor({ devServerUrl, reporter }: {
|
|
10
|
+
devServerUrl: string;
|
|
11
|
+
reporter: Reporter;
|
|
12
|
+
});
|
|
13
|
+
handleOpenDebugger(): Promise<void>;
|
|
14
|
+
maybeHandleTargetSelection(keyName: string): boolean;
|
|
15
|
+
dismiss(): void;
|
|
16
|
+
}
|
|
17
|
+
export {};
|