@tamagui/cli 1.32.2 → 1.32.4
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/build.js +83 -0
- package/dist/build.js.map +6 -0
- package/dist/cjs/cli.js +18 -18
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/dev/createDevServer.js.map +1 -1
- package/dist/cjs/dev.js +4 -4
- package/dist/cjs/dev.js.map +1 -1
- package/dist/cjs/generate-themes.js +57 -1
- package/dist/cjs/generate-themes.js.map +2 -2
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cli.js +196 -0
- package/dist/cli.js.map +6 -0
- package/dist/create.js +2 -0
- package/dist/create.js.map +6 -0
- package/dist/dev/createDevServer.js +165 -0
- package/dist/dev/createDevServer.js.map +6 -0
- package/dist/dev.js +188 -0
- package/dist/dev.js.map +6 -0
- package/dist/esm/build.mjs +48 -0
- package/dist/esm/build.mjs.map +6 -0
- package/dist/esm/cli.js +18 -18
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/cli.mjs +173 -0
- package/dist/esm/cli.mjs.map +6 -0
- package/dist/esm/create.mjs +1 -0
- package/dist/esm/create.mjs.map +6 -0
- package/dist/esm/dev/createDevServer.js.map +1 -1
- package/dist/esm/dev/createDevServer.mjs +141 -0
- package/dist/esm/dev/createDevServer.mjs.map +6 -0
- package/dist/esm/dev.js +4 -4
- package/dist/esm/dev.js.map +1 -1
- package/dist/esm/dev.mjs +154 -0
- package/dist/esm/dev.mjs.map +6 -0
- package/dist/esm/generate-themes.js +57 -1
- package/dist/esm/generate-themes.js.map +2 -2
- package/dist/esm/generate-themes.mjs +113 -0
- package/dist/esm/generate-themes.mjs.map +6 -0
- package/dist/esm/generate.mjs +52 -0
- package/dist/esm/generate.mjs.map +6 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +3 -0
- package/dist/esm/index.mjs.map +6 -0
- package/dist/esm/studio.mjs +73 -0
- package/dist/esm/studio.mjs.map +6 -0
- package/dist/esm/test.mjs +9 -0
- package/dist/esm/test.mjs.map +6 -0
- package/dist/esm/update.mjs +6 -0
- package/dist/esm/update.mjs.map +6 -0
- package/dist/esm/utils/constants.mjs +5 -0
- package/dist/esm/utils/constants.mjs.map +6 -0
- package/dist/esm/utils.mjs +86 -0
- package/dist/esm/utils.mjs.map +6 -0
- package/dist/esm/vendor/debugger-app/index.mjs +6 -0
- package/dist/esm/vendor/debugger-app/index.mjs.map +6 -0
- package/dist/esm/vendor/debugger-app/src/debuggerWorker.mjs +63 -0
- package/dist/esm/vendor/debugger-app/src/debuggerWorker.mjs.map +6 -0
- package/dist/esm/vendor/debugger-app/src/index.mjs +142 -0
- package/dist/esm/vendor/debugger-app/src/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/createServer.mjs +95 -0
- package/dist/esm/vendor/repack/dev-server/src/createServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/index.mjs +3 -0
- package/dist/esm/vendor/repack/dev-server/src/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/api/apiPlugin.mjs +37 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/api/apiPlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/api/index.mjs +5 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/api/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.mjs +67 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/index.mjs +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/types.mjs +1 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/types.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.mjs +87 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/index.mjs +5 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.mjs +13 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/index.mjs +5 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/index.mjs +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.mjs +50 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/types.mjs +1 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/types.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.mjs +186 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/index.mjs +7 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.mjs +35 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/types.mjs +1 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/types.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.mjs +50 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.mjs +32 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/index.mjs +7 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/index.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.mjs +110 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.mjs +52 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.mjs +106 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.mjs +62 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.mjs +154 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.mjs +76 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.mjs +330 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/types.mjs +1 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/types.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/wssPlugin.mjs +46 -0
- package/dist/esm/vendor/repack/dev-server/src/plugins/wss/wssPlugin.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/src/types.mjs +13 -0
- package/dist/esm/vendor/repack/dev-server/src/types.mjs.map +6 -0
- package/dist/esm/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.mjs +5 -0
- package/dist/esm/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.mjs.map +6 -0
- package/dist/generate-themes.js +147 -0
- package/dist/generate-themes.js.map +6 -0
- package/dist/generate.js +87 -0
- package/dist/generate.js.map +6 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +6 -0
- package/dist/studio.js +108 -0
- package/dist/studio.js.map +6 -0
- package/dist/test.js +43 -0
- package/dist/test.js.map +6 -0
- package/dist/update.js +30 -0
- package/dist/update.js.map +6 -0
- package/dist/utils/constants.js +29 -0
- package/dist/utils/constants.js.map +6 -0
- package/dist/utils.js +124 -0
- package/dist/utils.js.map +6 -0
- package/dist/vendor/debugger-app/index.js +27 -0
- package/dist/vendor/debugger-app/index.js.map +6 -0
- package/dist/vendor/debugger-app/src/debuggerWorker.js +64 -0
- package/dist/vendor/debugger-app/src/debuggerWorker.js.map +6 -0
- package/dist/vendor/debugger-app/src/index.css +41 -0
- package/dist/vendor/debugger-app/src/index.css.map +6 -0
- package/dist/vendor/debugger-app/src/index.js +165 -0
- package/dist/vendor/debugger-app/src/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/createServer.js +129 -0
- package/dist/vendor/repack/dev-server/src/createServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/index.js +25 -0
- package/dist/vendor/repack/dev-server/src/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.js +57 -0
- package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/api/index.js +35 -0
- package/dist/vendor/repack/dev-server/src/plugins/api/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.js +97 -0
- package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/compiler/index.js +41 -0
- package/dist/vendor/repack/dev-server/src/plugins/compiler/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/compiler/types.js +17 -0
- package/dist/vendor/repack/dev-server/src/plugins/compiler/types.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.js +117 -0
- package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/devtools/index.js +35 -0
- package/dist/vendor/repack/dev-server/src/plugins/devtools/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.js +44 -0
- package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/favicon/index.js +35 -0
- package/dist/vendor/repack/dev-server/src/plugins/favicon/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/multipart/index.js +41 -0
- package/dist/vendor/repack/dev-server/src/plugins/multipart/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.js +80 -0
- package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/multipart/types.js +17 -0
- package/dist/vendor/repack/dev-server/src/plugins/multipart/types.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.js +210 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.js +43 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.js +65 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.js +17 -0
- package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.js +74 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.js +56 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/index.js +43 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/index.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.js +144 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.js +76 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.js +130 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.js +86 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.js +188 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.js +100 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.js +354 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/types.js +17 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/types.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.js +76 -0
- package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.js.map +6 -0
- package/dist/vendor/repack/dev-server/src/types.js +37 -0
- package/dist/vendor/repack/dev-server/src/types.js.map +6 -0
- package/dist/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.js +35 -0
- package/dist/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.js.map +6 -0
- package/package.json +9 -9
- package/src/cli.ts +19 -17
- package/src/dev/createDevServer.ts +0 -2
- package/src/dev.ts +4 -4
- package/src/generate-themes.ts +81 -1
- package/src/index.ts +2 -1
- package/types/dev/createDevServer.d.ts.map +1 -1
- package/types/generate-themes.d.ts.map +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import fs from "fs-extra";
|
|
3
|
+
import { Project } from "ts-morph";
|
|
4
|
+
import { loadTamagui } from "./utils";
|
|
5
|
+
async function generateTypes(options) {
|
|
6
|
+
const types = await getTypes(options);
|
|
7
|
+
await fs.writeJSON(options.paths.types, types, {
|
|
8
|
+
spaces: 2
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
async function getTypes(options) {
|
|
12
|
+
const tamagui = await loadTamagui(options.tamaguiOptions);
|
|
13
|
+
if (!tamagui) {
|
|
14
|
+
throw new Error(`No tamagui config`);
|
|
15
|
+
}
|
|
16
|
+
const uniqueViewExportingPaths = new Set(
|
|
17
|
+
Object.keys(tamagui.nameToPaths).map((name) => {
|
|
18
|
+
return `${[...tamagui.nameToPaths[name]][0]}.ts*`;
|
|
19
|
+
})
|
|
20
|
+
);
|
|
21
|
+
const project = new Project({
|
|
22
|
+
compilerOptions: {
|
|
23
|
+
noEmit: false,
|
|
24
|
+
declaration: true,
|
|
25
|
+
emitDeclarationOnly: true
|
|
26
|
+
},
|
|
27
|
+
skipAddingFilesFromTsConfig: true,
|
|
28
|
+
tsConfigFilePath: options.tsconfigPath
|
|
29
|
+
});
|
|
30
|
+
const files = project.addSourceFilesAtPaths([...uniqueViewExportingPaths]);
|
|
31
|
+
return Object.fromEntries(
|
|
32
|
+
files.flatMap((x) => {
|
|
33
|
+
return [...x.getExportedDeclarations()].map(([k, v]) => {
|
|
34
|
+
return [
|
|
35
|
+
k,
|
|
36
|
+
v[0].getType().getApparentType().getProperties().map((prop) => {
|
|
37
|
+
var _a;
|
|
38
|
+
return [
|
|
39
|
+
prop.getEscapedName(),
|
|
40
|
+
(_a = prop.getValueDeclaration()) == null ? void 0 : _a.getType().getText()
|
|
41
|
+
];
|
|
42
|
+
})
|
|
43
|
+
];
|
|
44
|
+
});
|
|
45
|
+
})
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
export {
|
|
49
|
+
generateTypes,
|
|
50
|
+
getTypes
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=generate.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/generate.ts"],
|
|
4
|
+
"mappings": ";AAGA,OAAO,QAAQ;AACf,SAAS,eAAe;AAExB,SAAS,mBAAmB;AAE5B,eAAsB,cAAc,SAA6B;AAC/D,QAAM,QAAQ,MAAM,SAAS,OAAO;AACpC,QAAM,GAAG,UAAU,QAAQ,MAAM,OAAO,OAAO;AAAA,IAC7C,QAAQ;AAAA,EACV,CAAC;AACH;AAEA,eAAsB,SAAS,SAA6B;AAC1D,QAAM,UAAU,MAAM,YAAY,QAAQ,cAAc;AAExD,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,mBAAmB;AAAA,EACrC;AAEA,QAAM,2BAA2B,IAAI;AAAA,IACnC,OAAO,KAAK,QAAQ,WAAW,EAAE,IAAI,CAAC,SAAS;AAC7C,aAAO,GAAG,CAAC,GAAG,QAAQ,YAAY,IAAI,CAAC,EAAE,CAAC;AAAA,IAC5C,CAAC;AAAA,EACH;AAEA,QAAM,UAAU,IAAI,QAAQ;AAAA,IAC1B,iBAAiB;AAAA,MACf,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,qBAAqB;AAAA,IACvB;AAAA,IACA,6BAA6B;AAAA,IAC7B,kBAAkB,QAAQ;AAAA,EAC5B,CAAC;AAED,QAAM,QAAQ,QAAQ,sBAAsB,CAAC,GAAG,wBAAwB,CAAC;AAEzE,SAAO,OAAO;AAAA,IACZ,MAAM,QAAQ,CAAC,MAAM;AACnB,aAAO,CAAC,GAAG,EAAE,wBAAwB,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM;AACtD,eAAO;AAAA,UACL;AAAA,UACA,EAAE,CAAC,EACA,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,IAAI,CAAC,SAAS;AAjD3B;AAkDc,mBAAO;AAAA,cACL,KAAK,eAAe;AAAA,eACpB,UAAK,oBAAoB,MAAzB,mBAA4B,UAAU;AAAA,YACxC;AAAA,UACF,CAAC;AAAA,QACL;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAiBF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/esm/index.js
CHANGED
package/dist/esm/index.js.map
CHANGED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { createRequire } from "module";
|
|
2
|
+
import { dirname } from "path";
|
|
3
|
+
import { watchTamaguiConfig } from "@tamagui/static";
|
|
4
|
+
import { tamaguiPlugin } from "@tamagui/vite-plugin";
|
|
5
|
+
import viteReactPlugin from "@vitejs/plugin-react-swc";
|
|
6
|
+
import chalk from "chalk";
|
|
7
|
+
import express from "express";
|
|
8
|
+
import proxy from "express-http-proxy";
|
|
9
|
+
import fs, { ensureDir } from "fs-extra";
|
|
10
|
+
import { createServer } from "vite";
|
|
11
|
+
const resolve = "url" in import.meta ? createRequire(import.meta.url).resolve : require.resolve;
|
|
12
|
+
const studio = async (options, isRemote = true) => {
|
|
13
|
+
var _a;
|
|
14
|
+
process.env.TAMAGUI_TARGET = "web";
|
|
15
|
+
await ensureDir(options.paths.dotDir);
|
|
16
|
+
const configWatchPromise = watchTamaguiConfig(options.tamaguiOptions);
|
|
17
|
+
let localServerPromise = new Promise(() => {
|
|
18
|
+
});
|
|
19
|
+
if (!isRemote) {
|
|
20
|
+
process.env.VITE_IS_LOCAL = "1";
|
|
21
|
+
process.stdout.on("error", function(err) {
|
|
22
|
+
if (err.code == "EPIPE") {
|
|
23
|
+
process.exit(0);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
const { default: getPort } = await import("get-port");
|
|
27
|
+
const { paths } = options;
|
|
28
|
+
const root = dirname(resolve("@takeout/studio/entry"));
|
|
29
|
+
const [serverPort, vitePort] = await Promise.all([
|
|
30
|
+
getPort({
|
|
31
|
+
port: 1421
|
|
32
|
+
}),
|
|
33
|
+
getPort({
|
|
34
|
+
port: 1422
|
|
35
|
+
})
|
|
36
|
+
]);
|
|
37
|
+
const server = await createServer({
|
|
38
|
+
root,
|
|
39
|
+
server: {
|
|
40
|
+
host: options.host,
|
|
41
|
+
port: vitePort,
|
|
42
|
+
hmr: true,
|
|
43
|
+
cors: true
|
|
44
|
+
},
|
|
45
|
+
plugins: [
|
|
46
|
+
tamaguiPlugin({
|
|
47
|
+
components: ["tamagui"]
|
|
48
|
+
}),
|
|
49
|
+
viteReactPlugin()
|
|
50
|
+
]
|
|
51
|
+
});
|
|
52
|
+
await server.listen();
|
|
53
|
+
const info = (_a = server.httpServer) == null ? void 0 : _a.address();
|
|
54
|
+
const app = express();
|
|
55
|
+
app.disable("x-powered-by");
|
|
56
|
+
app.use(express.static(paths.dotDir, { maxAge: "2h" }));
|
|
57
|
+
app.get("/conf.json", async (req, res) => {
|
|
58
|
+
const conf = await fs.readJSON(paths.conf);
|
|
59
|
+
res.status(200).json(conf);
|
|
60
|
+
});
|
|
61
|
+
app.use("/", proxy(`${info.address}:${vitePort}`));
|
|
62
|
+
const appServer = app.listen(serverPort);
|
|
63
|
+
localServerPromise = new Promise((res) => appServer.on("close", res));
|
|
64
|
+
console.log(`Listening on`, chalk.green(`http://localhost:${serverPort}`));
|
|
65
|
+
} else {
|
|
66
|
+
console.log(`Open `, chalk.green(`https://studio.tamagui.dev`), ` to load studio`);
|
|
67
|
+
}
|
|
68
|
+
await Promise.allSettled([configWatchPromise, localServerPromise]);
|
|
69
|
+
};
|
|
70
|
+
export {
|
|
71
|
+
studio
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=studio.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/studio.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,qBAAqB;AAE9B,SAAS,eAAe;AAExB,SAAS,0BAA0B;AAEnC,SAAS,qBAAqB;AAC9B,OAAO,qBAAqB;AAC5B,OAAO,WAAW;AAClB,OAAO,aAAa;AACpB,OAAO,WAAW;AAClB,OAAO,MAAM,iBAAiB;AAC9B,SAAS,oBAAoB;AAE7B,MAAM,UACJ,SAAS,cAAc,cAAc,YAAY,GAAG,EAAE,UAAU,QAAQ;AAEnE,MAAM,SAAS,OAAO,SAA6B,WAAW,SAAS;AAjB9E;AAkBE,UAAQ,IAAI,iBAAiB;AAE7B,QAAM,UAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,qBAAqB,mBAAmB,QAAQ,cAAc;AAEpE,MAAI,qBAAqB,IAAI,QAAQ,MAAM;AAAA,EAAC,CAAC;AAC7C,MAAI,CAAC,UAAU;AACb,YAAQ,IAAI,gBAAgB;AAE5B,YAAQ,OAAO,GAAG,SAAS,SAAU,KAAK;AACxC,UAAI,IAAI,QAAQ,SAAS;AACvB,gBAAQ,KAAK,CAAC;AAAA,MAChB;AAAA,IACF,CAAC;AACD,UAAM,EAAE,SAAS,QAAQ,IAAI,MAAM,OAAO,UAAU;AACpD,UAAM,EAAE,MAAM,IAAI;AAClB,UAAM,OAAO,QAAQ,QAAQ,uBAAuB,CAAC;AAErD,UAAM,CAAC,YAAY,QAAQ,IAAI,MAAM,QAAQ,IAAI;AAAA,MAC/C,QAAQ;AAAA,QACN,MAAM;AAAA,MACR,CAAC;AAAA,MACD,QAAQ;AAAA,QACN,MAAM;AAAA,MACR,CAAC;AAAA,IACH,CAAC;AAED,UAAM,SAAS,MAAM,aAAa;AAAA,MAChC;AAAA,MACA,QAAQ;AAAA,QACN,MAAM,QAAQ;AAAA,QACd,MAAM;AAAA,QACN,KAAK;AAAA,QACL,MAAM;AAAA,MACR;AAAA,MACA,SAAS;AAAA,QACP,cAAc;AAAA,UACZ,YAAY,CAAC,SAAS;AAAA,QACxB,CAAC;AAAA,QACD,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AAGD,UAAM,OAAO,OAAO;AAEpB,UAAM,QAAO,YAAO,eAAP,mBAAmB;AAEhC,UAAM,MAAM,QAAQ;AAEpB,QAAI,QAAQ,cAAc;AAC1B,QAAI,IAAI,QAAQ,OAAO,MAAM,QAAQ,EAAE,QAAQ,KAAK,CAAC,CAAC;AAGtD,QAAI,IAAI,cAAc,OAAO,KAAK,QAAQ;AACxC,YAAM,OAAO,MAAM,GAAG,SAAS,MAAM,IAAI;AACzC,UAAI,OAAO,GAAG,EAAE,KAAK,IAAI;AAAA,IAC3B,CAAC;AAED,QAAI,IAAI,KAAK,MAAM,GAAG,KAAK,WAAW,UAAU,CAAC;AAEjD,UAAM,YAAY,IAAI,OAAO,UAAU;AAEvC,yBAAqB,IAAI,QAAQ,CAAC,QAAQ,UAAU,GAAG,SAAS,GAAG,CAAC;AAEpE,YAAQ,IAAI,gBAAgB,MAAM,MAAM,oBAAoB,YAAY,CAAC;AAAA,EAC3E,OAAO;AACL,YAAQ,IAAI,SAAS,MAAM,MAAM,4BAA4B,GAAG,iBAAiB;AAAA,EACnF;AAEA,QAAM,QAAQ,WAAW,CAAC,oBAAoB,kBAAkB,CAAC;AACnE;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { join } from "path";
|
|
2
|
+
import { loadTamagui as loadTamaguiStatic } from "@tamagui/static";
|
|
3
|
+
import chalk from "chalk";
|
|
4
|
+
import fs, { pathExists, readJSON } from "fs-extra";
|
|
5
|
+
async function getOptions({
|
|
6
|
+
root = process.cwd(),
|
|
7
|
+
tsconfigPath = "tsconfig.json",
|
|
8
|
+
tamaguiOptions,
|
|
9
|
+
host,
|
|
10
|
+
debug
|
|
11
|
+
} = {}) {
|
|
12
|
+
const tsConfigFilePath = join(root, tsconfigPath);
|
|
13
|
+
ensure(await fs.pathExists(tsConfigFilePath), `No tsconfig found: ${tsConfigFilePath}`);
|
|
14
|
+
const dotDir = join(root, ".tamagui");
|
|
15
|
+
const pkgJson = await readJSON(join(root, "package.json"));
|
|
16
|
+
let config = "";
|
|
17
|
+
try {
|
|
18
|
+
config = await getDefaultTamaguiConfigPath();
|
|
19
|
+
} catch {
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
mode: process.env.NODE_ENV === "production" ? "production" : "development",
|
|
23
|
+
root,
|
|
24
|
+
host: host || "127.0.0.1",
|
|
25
|
+
pkgJson,
|
|
26
|
+
debug,
|
|
27
|
+
tsconfigPath,
|
|
28
|
+
tamaguiOptions: {
|
|
29
|
+
components: ["tamagui"],
|
|
30
|
+
config,
|
|
31
|
+
...tamaguiOptions
|
|
32
|
+
},
|
|
33
|
+
paths: {
|
|
34
|
+
dotDir,
|
|
35
|
+
conf: join(dotDir, "tamagui.config.json"),
|
|
36
|
+
types: join(dotDir, "types.json")
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function ensure(condition, message) {
|
|
41
|
+
if (!condition) {
|
|
42
|
+
console.error(chalk.red.bold("Error:"), chalk.yellow(`${message}`));
|
|
43
|
+
process.exit(1);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const defaultPaths = ["tamagui.config.ts", join("src", "tamagui.config.ts")];
|
|
47
|
+
let cachedPath = "";
|
|
48
|
+
async function getDefaultTamaguiConfigPath() {
|
|
49
|
+
if (cachedPath)
|
|
50
|
+
return cachedPath;
|
|
51
|
+
const existingPaths = await Promise.all(defaultPaths.map((path) => pathExists(path)));
|
|
52
|
+
const existing = existingPaths.findIndex((x) => !!x);
|
|
53
|
+
const found = defaultPaths[existing];
|
|
54
|
+
if (!found) {
|
|
55
|
+
throw new Error(`No found tamagui.config.ts`);
|
|
56
|
+
}
|
|
57
|
+
cachedPath = found;
|
|
58
|
+
return found;
|
|
59
|
+
}
|
|
60
|
+
let cached = null;
|
|
61
|
+
const loadTamagui = async (opts) => {
|
|
62
|
+
const loaded = await loadTamaguiStatic({
|
|
63
|
+
config: await getDefaultTamaguiConfigPath(),
|
|
64
|
+
components: ["tamagui"],
|
|
65
|
+
...opts
|
|
66
|
+
});
|
|
67
|
+
if (loaded) {
|
|
68
|
+
cached = loaded;
|
|
69
|
+
}
|
|
70
|
+
return loaded;
|
|
71
|
+
};
|
|
72
|
+
const disposers = /* @__PURE__ */ new Set();
|
|
73
|
+
function registerDispose(cb) {
|
|
74
|
+
disposers.add(cb);
|
|
75
|
+
}
|
|
76
|
+
function disposeAll() {
|
|
77
|
+
disposers.forEach((cb) => cb());
|
|
78
|
+
}
|
|
79
|
+
export {
|
|
80
|
+
disposeAll,
|
|
81
|
+
ensure,
|
|
82
|
+
getOptions,
|
|
83
|
+
loadTamagui,
|
|
84
|
+
registerDispose
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=utils.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/utils.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,YAAY;AAGrB,SAAS,eAAe,yBAAyB;AAEjD,OAAO,WAAW;AAClB,OAAO,MAAM,YAAY,gBAAgB;AAEzC,eAAsB,WAAW;AAAA,EAC/B,OAAO,QAAQ,IAAI;AAAA,EACnB,eAAe;AAAA,EACf;AAAA,EACA;AAAA,EACA;AACF,IAA6B,CAAC,GAAgC;AAC5D,QAAM,mBAAmB,KAAK,MAAM,YAAY;AAChD,SAAO,MAAM,GAAG,WAAW,gBAAgB,GAAG,sBAAsB,kBAAkB;AACtF,QAAM,SAAS,KAAK,MAAM,UAAU;AACpC,QAAM,UAAU,MAAM,SAAS,KAAK,MAAM,cAAc,CAAC;AACzD,MAAI,SAAS;AACb,MAAI;AACF,aAAS,MAAM,4BAA4B;AAAA,EAC7C,QAAE;AAAA,EAEF;AAEA,SAAO;AAAA,IACL,MAAM,QAAQ,IAAI,aAAa,eAAe,eAAe;AAAA,IAC7D;AAAA,IACA,MAAM,QAAQ;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,MACd,YAAY,CAAC,SAAS;AAAA,MACtB;AAAA,MACA,GAAG;AAAA,IACL;AAAA,IACA,OAAO;AAAA,MACL;AAAA,MACA,MAAM,KAAK,QAAQ,qBAAqB;AAAA,MACxC,OAAO,KAAK,QAAQ,YAAY;AAAA,IAClC;AAAA,EACF;AACF;AAEO,SAAS,OAAO,WAAoB,SAAiB;AAC1D,MAAI,CAAC,WAAW;AACd,YAAQ,MAAM,MAAM,IAAI,KAAK,QAAQ,GAAG,MAAM,OAAO,GAAG,SAAS,CAAC;AAClE,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;AAEA,MAAM,eAAe,CAAC,qBAAqB,KAAK,OAAO,mBAAmB,CAAC;AAC3E,IAAI,aAAa;AACjB,eAAe,8BAA8B;AAC3C,MAAI;AAAY,WAAO;AACvB,QAAM,gBAAgB,MAAM,QAAQ,IAAI,aAAa,IAAI,CAAC,SAAS,WAAW,IAAI,CAAC,CAAC;AACpF,QAAM,WAAW,cAAc,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACnD,QAAM,QAAQ,aAAa,QAAQ;AACnC,MAAI,CAAC,OAAO;AACV,UAAM,IAAI,MAAM,4BAA4B;AAAA,EAC9C;AACA,eAAa;AACb,SAAO;AACT;AAEA,IAAI,SAAoC;AACjC,MAAM,cAAc,OACzB,SACuC;AACvC,QAAM,SAAS,MAAM,kBAAkB;AAAA,IACrC,QAAQ,MAAM,4BAA4B;AAAA,IAC1C,YAAY,CAAC,SAAS;AAAA,IACtB,GAAG;AAAA,EACL,CAAC;AACD,MAAI,QAAQ;AACV,aAAS;AAAA,EACX;AACA,SAAO;AACT;AAEA,MAAM,YAAY,oBAAI,IAAc;AAE7B,SAAS,gBAAgB,IAAgB;AAC9C,YAAU,IAAI,EAAE;AAClB;AAEO,SAAS,aAAa;AAC3B,YAAU,QAAQ,CAAC,OAAO,GAAG,CAAC;AAChC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
onmessage = function() {
|
|
2
|
+
var visibilityState;
|
|
3
|
+
var showVisibilityWarning = function() {
|
|
4
|
+
var hasWarned = false;
|
|
5
|
+
return function() {
|
|
6
|
+
if (hasWarned || console.warn.toString().includes("[native code]")) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
hasWarned = true;
|
|
10
|
+
console.warn(
|
|
11
|
+
"Remote debugger is in a background tab which may cause apps to perform slowly. Fix this by foregrounding the tab (or opening it in a separate window)."
|
|
12
|
+
);
|
|
13
|
+
};
|
|
14
|
+
}();
|
|
15
|
+
var messageHandlers = {
|
|
16
|
+
executeApplicationScript: function(message, sendReply) {
|
|
17
|
+
for (var key in message.inject) {
|
|
18
|
+
self[key] = JSON.parse(message.inject[key]);
|
|
19
|
+
}
|
|
20
|
+
var error;
|
|
21
|
+
try {
|
|
22
|
+
importScripts(message.url);
|
|
23
|
+
} catch (err) {
|
|
24
|
+
error = err.message;
|
|
25
|
+
}
|
|
26
|
+
sendReply(null, error);
|
|
27
|
+
},
|
|
28
|
+
setDebuggerVisibility: function(message) {
|
|
29
|
+
visibilityState = message.visibilityState;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
return function(message) {
|
|
33
|
+
if (visibilityState === "hidden") {
|
|
34
|
+
showVisibilityWarning();
|
|
35
|
+
}
|
|
36
|
+
var object = message.data;
|
|
37
|
+
var sendReply = function(result, error2) {
|
|
38
|
+
postMessage({ replyID: object.id, result, error: error2 });
|
|
39
|
+
};
|
|
40
|
+
var handler = messageHandlers[object.method];
|
|
41
|
+
if (handler) {
|
|
42
|
+
handler(object, sendReply);
|
|
43
|
+
} else {
|
|
44
|
+
var returnValue = [[], [], [], 0];
|
|
45
|
+
var error;
|
|
46
|
+
try {
|
|
47
|
+
if (typeof __fbBatchedBridge === "object") {
|
|
48
|
+
returnValue = __fbBatchedBridge[object.method].apply(
|
|
49
|
+
null,
|
|
50
|
+
object.arguments
|
|
51
|
+
);
|
|
52
|
+
} else {
|
|
53
|
+
error = "Failed to call function, __fbBatchedBridge is undefined";
|
|
54
|
+
}
|
|
55
|
+
} catch (err) {
|
|
56
|
+
error = err.message;
|
|
57
|
+
} finally {
|
|
58
|
+
sendReply(JSON.stringify(returnValue), error);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}();
|
|
63
|
+
//# sourceMappingURL=debuggerWorker.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/vendor/debugger-app/src/debuggerWorker.js"],
|
|
4
|
+
"mappings": "AAYA,YAAa,WAAY;AACvB,MAAI;AACJ,MAAI,wBAAyB,WAAY;AACvC,QAAI,YAAY;AAChB,WAAO,WAAY;AAEjB,UAAI,aAAa,QAAQ,KAAK,SAAS,EAAE,SAAS,eAAe,GAAG;AAClE;AAAA,MACF;AACA,kBAAY;AACZ,cAAQ;AAAA,QACN;AAAA,MAGF;AAAA,IACF;AAAA,EACF,EAAG;AAEH,MAAI,kBAAkB;AAAA,IACpB,0BAA0B,SAAU,SAAS,WAAW;AACtD,eAAS,OAAO,QAAQ,QAAQ;AAC9B,aAAK,GAAG,IAAI,KAAK,MAAM,QAAQ,OAAO,GAAG,CAAC;AAAA,MAC5C;AACA,UAAI;AACJ,UAAI;AACF,sBAAc,QAAQ,GAAG;AAAA,MAC3B,SAAS,KAAP;AACA,gBAAQ,IAAI;AAAA,MACd;AACA,gBAAU,MAAmB,KAAK;AAAA,IACpC;AAAA,IACA,uBAAuB,SAAU,SAAS;AACxC,wBAAkB,QAAQ;AAAA,IAC5B;AAAA,EACF;AAEA,SAAO,SAAU,SAAS;AACxB,QAAI,oBAAoB,UAAU;AAChC,4BAAsB;AAAA,IACxB;AAEA,QAAI,SAAS,QAAQ;AAErB,QAAI,YAAY,SAAU,QAAQA,QAAO;AACvC,kBAAY,EAAE,SAAS,OAAO,IAAI,QAAgB,OAAOA,OAAM,CAAC;AAAA,IAClE;AAEA,QAAI,UAAU,gBAAgB,OAAO,MAAM;AAC3C,QAAI,SAAS;AAEX,cAAQ,QAAQ,SAAS;AAAA,IAC3B,OAAO;AAEL,UAAI,cAAc,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AAChC,UAAI;AACJ,UAAI;AACF,YAAI,OAAO,sBAAsB,UAAU;AACzC,wBAAc,kBAAkB,OAAO,MAAM,EAAE;AAAA,YAC7C;AAAA,YACA,OAAO;AAAA,UACT;AAAA,QACF,OAAO;AACL,kBAAQ;AAAA,QACV;AAAA,MACF,SAAS,KAAP;AACA,gBAAQ,IAAI;AAAA,MACd,UAAE;AACA,kBAAU,KAAK,UAAU,WAAW,GAAG,KAAK;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AACF,EAAG;",
|
|
5
|
+
"names": ["error"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import "./index.css";
|
|
2
|
+
import blueIcon from "./assets/blue-icon.png";
|
|
3
|
+
import grayIcon from "./assets/gray-icon.png";
|
|
4
|
+
import orangeIcon from "./assets/orange-icon.png";
|
|
5
|
+
import DebuggerWorker from "./debuggerWorker.js";
|
|
6
|
+
const isMacLike = /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform);
|
|
7
|
+
const refreshShortcut = isMacLike ? "\u2318R" : "Ctrl R";
|
|
8
|
+
window.onload = function() {
|
|
9
|
+
if (!isMacLike) {
|
|
10
|
+
document.getElementById("shortcut").innerHTML = "Ctrl\u21E7J";
|
|
11
|
+
}
|
|
12
|
+
Page.render();
|
|
13
|
+
};
|
|
14
|
+
window.onReloadClicked = function() {
|
|
15
|
+
var xhr = new XMLHttpRequest();
|
|
16
|
+
xhr.open("GET", `${window.location.origin}/reload`, true);
|
|
17
|
+
xhr.send();
|
|
18
|
+
};
|
|
19
|
+
const Page = window.Page = {
|
|
20
|
+
state: {
|
|
21
|
+
isDark: localStorage.getItem("darkTheme") === null ? window.matchMedia("(prefers-color-scheme: dark)").matches : localStorage.getItem("darkTheme") === "on",
|
|
22
|
+
isPriorityMaintained: localStorage.getItem("maintainPriority") === "on",
|
|
23
|
+
status: { type: "disconnected" },
|
|
24
|
+
visibilityState: document.visibilityState
|
|
25
|
+
},
|
|
26
|
+
setState(partialState) {
|
|
27
|
+
Page.state = Object.assign({}, Page.state, partialState);
|
|
28
|
+
Page.render();
|
|
29
|
+
},
|
|
30
|
+
render() {
|
|
31
|
+
const { isDark, isPriorityMaintained, status, visibilityState } = Page.state;
|
|
32
|
+
const statusNode = document.getElementById("status");
|
|
33
|
+
switch (status.type) {
|
|
34
|
+
case "connected":
|
|
35
|
+
statusNode.innerHTML = "Debugger session #" + status.id + " active.";
|
|
36
|
+
break;
|
|
37
|
+
case "error":
|
|
38
|
+
statusNode.innerHTML = status.error.reason || "Disconnected from proxy. Attempting reconnection. Is node server running?";
|
|
39
|
+
break;
|
|
40
|
+
case "connecting":
|
|
41
|
+
case "disconnected":
|
|
42
|
+
default:
|
|
43
|
+
statusNode.innerHTML = 'Waiting, press <span class="shortcut">' + refreshShortcut + "</span> in simulator to reload and connect.";
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
const linkNode = document.querySelector("link[rel=icon]");
|
|
47
|
+
if (status.type === "disconnected" || status.type === "error") {
|
|
48
|
+
linkNode.href = grayIcon;
|
|
49
|
+
} else {
|
|
50
|
+
if (visibilityState === "visible" || isPriorityMaintained) {
|
|
51
|
+
linkNode.href = blueIcon;
|
|
52
|
+
} else {
|
|
53
|
+
linkNode.href = orangeIcon;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
const darkCheckbox = document.getElementById("dark");
|
|
57
|
+
document.body.classList.toggle("dark", isDark);
|
|
58
|
+
darkCheckbox.checked = isDark;
|
|
59
|
+
localStorage.setItem("darkTheme", isDark ? "on" : "");
|
|
60
|
+
const maintainPriorityCheckbox = document.getElementById("maintain-priority");
|
|
61
|
+
maintainPriorityCheckbox.checked = isPriorityMaintained;
|
|
62
|
+
localStorage.setItem("maintainPriority", isPriorityMaintained ? "on" : "");
|
|
63
|
+
},
|
|
64
|
+
toggleDarkTheme() {
|
|
65
|
+
Page.setState({ isDark: !Page.state.isDark });
|
|
66
|
+
},
|
|
67
|
+
togglePriorityMaintenance() {
|
|
68
|
+
Page.setState({ isPriorityMaintained: !Page.state.isPriorityMaintained });
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
function connectToDebuggerProxy() {
|
|
72
|
+
const ws = new WebSocket(
|
|
73
|
+
"ws://" + window.location.host + "/debugger-proxy?role=debugger&name=Chrome"
|
|
74
|
+
);
|
|
75
|
+
let worker;
|
|
76
|
+
function createJSRuntime() {
|
|
77
|
+
worker = new DebuggerWorker();
|
|
78
|
+
worker.onmessage = function(message) {
|
|
79
|
+
ws.send(JSON.stringify(message.data));
|
|
80
|
+
};
|
|
81
|
+
window.onbeforeunload = function() {
|
|
82
|
+
return "If you reload this page, it is going to break the debugging session. Press " + refreshShortcut + " on the device to reload.";
|
|
83
|
+
};
|
|
84
|
+
updateVisibility();
|
|
85
|
+
}
|
|
86
|
+
function shutdownJSRuntime() {
|
|
87
|
+
if (worker) {
|
|
88
|
+
worker.terminate();
|
|
89
|
+
worker = null;
|
|
90
|
+
window.onbeforeunload = null;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
function updateVisibility() {
|
|
94
|
+
if (worker && !Page.state.isPriorityMaintained) {
|
|
95
|
+
worker.postMessage({
|
|
96
|
+
method: "setDebuggerVisibility",
|
|
97
|
+
visibilityState: document.visibilityState
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
Page.setState({ visibilityState: document.visibilityState });
|
|
101
|
+
}
|
|
102
|
+
ws.onopen = function() {
|
|
103
|
+
Page.setState({ status: { type: "connecting" } });
|
|
104
|
+
};
|
|
105
|
+
ws.onmessage = function(message) {
|
|
106
|
+
if (!message.data) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const object = JSON.parse(message.data);
|
|
110
|
+
if (object.$event === "client-disconnected") {
|
|
111
|
+
shutdownJSRuntime();
|
|
112
|
+
Page.setState({ status: { type: "disconnected" } });
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
if (!object.method) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
if (object.method === "prepareJSRuntime") {
|
|
119
|
+
shutdownJSRuntime();
|
|
120
|
+
console.clear();
|
|
121
|
+
createJSRuntime();
|
|
122
|
+
ws.send(JSON.stringify({ replyID: object.id }));
|
|
123
|
+
Page.setState({ status: { type: "connected", id: object.id } });
|
|
124
|
+
} else if (object.method === "$disconnected") {
|
|
125
|
+
shutdownJSRuntime();
|
|
126
|
+
Page.setState({ status: { type: "disconnected" } });
|
|
127
|
+
} else {
|
|
128
|
+
worker.postMessage(object);
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
ws.onclose = function(error) {
|
|
132
|
+
shutdownJSRuntime();
|
|
133
|
+
Page.setState({ status: { type: "error", error } });
|
|
134
|
+
if (error.reason) {
|
|
135
|
+
console.warn(error.reason);
|
|
136
|
+
}
|
|
137
|
+
setTimeout(connectToDebuggerProxy, 500);
|
|
138
|
+
};
|
|
139
|
+
document.addEventListener("visibilitychange", updateVisibility, false);
|
|
140
|
+
}
|
|
141
|
+
connectToDebuggerProxy();
|
|
142
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/vendor/debugger-app/src/index.js"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { Writable } from "stream";
|
|
2
|
+
import fastifySensible from "@fastify/sensible";
|
|
3
|
+
import Fastify from "fastify";
|
|
4
|
+
import apiPlugin from "./plugins/api";
|
|
5
|
+
import compilerPlugin from "./plugins/compiler";
|
|
6
|
+
import devtoolsPlugin from "./plugins/devtools";
|
|
7
|
+
import multipartPlugin from "./plugins/multipart";
|
|
8
|
+
import symbolicatePlugin from "./plugins/symbolicate";
|
|
9
|
+
import wssPlugin from "./plugins/wss";
|
|
10
|
+
import { Internal } from "./types";
|
|
11
|
+
async function createServer(config) {
|
|
12
|
+
let delegate;
|
|
13
|
+
const instance = Fastify({
|
|
14
|
+
logger: {
|
|
15
|
+
level: "trace",
|
|
16
|
+
stream: new Writable({
|
|
17
|
+
write: (chunk, _encoding, callback) => {
|
|
18
|
+
var _a;
|
|
19
|
+
const log = JSON.parse(chunk.toString());
|
|
20
|
+
delegate == null ? void 0 : delegate.logger.onMessage(log);
|
|
21
|
+
(_a = instance.wss) == null ? void 0 : _a.apiServer.send(log);
|
|
22
|
+
callback();
|
|
23
|
+
}
|
|
24
|
+
})
|
|
25
|
+
},
|
|
26
|
+
...config.options.https ? { https: config.options.https } : void 0
|
|
27
|
+
});
|
|
28
|
+
delegate = config.delegate({
|
|
29
|
+
log: instance.log,
|
|
30
|
+
notifyBuildStart: (platform) => {
|
|
31
|
+
instance.wss.apiServer.send({
|
|
32
|
+
event: Internal.EventTypes.BuildStart,
|
|
33
|
+
platform
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
notifyBuildEnd: (platform) => {
|
|
37
|
+
instance.wss.apiServer.send({
|
|
38
|
+
event: Internal.EventTypes.BuildEnd,
|
|
39
|
+
platform
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
broadcastToHmrClients: (event, platform, clientIds) => {
|
|
43
|
+
instance.wss.hmrServer.send(event, platform, clientIds);
|
|
44
|
+
},
|
|
45
|
+
broadcastToMessageClients: ({ method, params }) => {
|
|
46
|
+
instance.wss.messageServer.broadcast(method, params);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
await instance.register(fastifySensible);
|
|
50
|
+
await instance.register(wssPlugin, {
|
|
51
|
+
options: config.options,
|
|
52
|
+
delegate
|
|
53
|
+
});
|
|
54
|
+
await instance.register(multipartPlugin);
|
|
55
|
+
await instance.register(apiPlugin, {
|
|
56
|
+
delegate,
|
|
57
|
+
prefix: "/api"
|
|
58
|
+
});
|
|
59
|
+
await instance.register(compilerPlugin, {
|
|
60
|
+
delegate
|
|
61
|
+
});
|
|
62
|
+
await instance.register(symbolicatePlugin, {
|
|
63
|
+
delegate
|
|
64
|
+
});
|
|
65
|
+
await instance.register(devtoolsPlugin, {
|
|
66
|
+
options: config.options
|
|
67
|
+
});
|
|
68
|
+
console.warn("disable debugger-ui + favicon for now");
|
|
69
|
+
instance.addHook("onSend", async (request, reply, payload) => {
|
|
70
|
+
reply.header("X-Content-Type-Options", "nosniff");
|
|
71
|
+
const [pathname] = request.url.split("?");
|
|
72
|
+
if (pathname.endsWith(".map")) {
|
|
73
|
+
reply.header("Access-Control-Allow-Origin", "devtools://devtools");
|
|
74
|
+
}
|
|
75
|
+
return payload;
|
|
76
|
+
});
|
|
77
|
+
instance.head("/", async () => "");
|
|
78
|
+
instance.get("/", async () => delegate.messages.getHello());
|
|
79
|
+
instance.get("/status", async () => delegate.messages.getStatus());
|
|
80
|
+
async function start() {
|
|
81
|
+
await instance.listen(config.options.port, config.options.host);
|
|
82
|
+
}
|
|
83
|
+
async function stop() {
|
|
84
|
+
await instance.close();
|
|
85
|
+
}
|
|
86
|
+
return {
|
|
87
|
+
start,
|
|
88
|
+
stop,
|
|
89
|
+
instance
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
export {
|
|
93
|
+
createServer
|
|
94
|
+
};
|
|
95
|
+
//# sourceMappingURL=createServer.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../src/vendor/repack/dev-server/src/createServer.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,gBAAgB;AAGzB,OAAO,qBAAqB;AAE5B,OAAO,aAAa;AAEpB,OAAO,eAAe;AACtB,OAAO,oBAAoB;AAC3B,OAAO,oBAAoB;AAE3B,OAAO,qBAAqB;AAC5B,OAAO,uBAAuB;AAC9B,OAAO,eAAe;AACtB,SAAS,gBAAwB;AAQjC,eAAsB,aAAa,QAAuB;AACxD,MAAI;AAGJ,QAAM,WAAW,QAAQ;AAAA,IACvB,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,QAAQ,IAAI,SAAS;AAAA,QACnB,OAAO,CAAC,OAAO,WAAW,aAAa;AA9B/C;AA+BU,gBAAM,MAAM,KAAK,MAAM,MAAM,SAAS,CAAC;AACvC,+CAAU,OAAO,UAAU;AAC3B,yBAAS,QAAT,mBAAc,UAAU,KAAK;AAC7B,mBAAS;AAAA,QACX;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,GAAI,OAAO,QAAQ,QAAQ,EAAE,OAAO,OAAO,QAAQ,MAAM,IAAI;AAAA,EAC/D,CAAC;AAED,aAAW,OAAO,SAAS;AAAA,IACzB,KAAK,SAAS;AAAA,IACd,kBAAkB,CAAC,aAAa;AAC9B,eAAS,IAAI,UAAU,KAAK;AAAA,QAC1B,OAAO,SAAS,WAAW;AAAA,QAC3B;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,gBAAgB,CAAC,aAAa;AAC5B,eAAS,IAAI,UAAU,KAAK;AAAA,QAC1B,OAAO,SAAS,WAAW;AAAA,QAC3B;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,uBAAuB,CAAC,OAAO,UAAU,cAAc;AACrD,eAAS,IAAI,UAAU,KAAK,OAAO,UAAU,SAAS;AAAA,IACxD;AAAA,IACA,2BAA2B,CAAC,EAAE,QAAQ,OAAO,MAAM;AACjD,eAAS,IAAI,cAAc,UAAU,QAAQ,MAAM;AAAA,IACrD;AAAA,EACF,CAAC;AAGD,QAAM,SAAS,SAAS,eAAe;AACvC,QAAM,SAAS,SAAS,WAAW;AAAA,IACjC,SAAS,OAAO;AAAA,IAChB;AAAA,EACF,CAAC;AACD,QAAM,SAAS,SAAS,eAAe;AACvC,QAAM,SAAS,SAAS,WAAW;AAAA,IACjC;AAAA,IACA,QAAQ;AAAA,EACV,CAAC;AACD,QAAM,SAAS,SAAS,gBAAgB;AAAA,IACtC;AAAA,EACF,CAAC;AACD,QAAM,SAAS,SAAS,mBAAmB;AAAA,IACzC;AAAA,EACF,CAAC;AACD,QAAM,SAAS,SAAS,gBAAgB;AAAA,IACtC,SAAS,OAAO;AAAA,EAClB,CAAC;AAED,UAAQ,KAAK,uCAAuC;AAWpD,WAAS,QAAQ,UAAU,OAAO,SAAS,OAAO,YAAY;AAC5D,UAAM,OAAO,0BAA0B,SAAS;AAEhD,UAAM,CAAC,QAAQ,IAAI,QAAQ,IAAI,MAAM,GAAG;AACxC,QAAI,SAAS,SAAS,MAAM,GAAG;AAC7B,YAAM,OAAO,+BAA+B,qBAAqB;AAAA,IACnE;AAEA,WAAO;AAAA,EACT,CAAC;AAGD,WAAS,KAAK,KAAK,YAAY,EAAE;AACjC,WAAS,IAAI,KAAK,YAAY,SAAS,SAAS,SAAS,CAAC;AAC1D,WAAS,IAAI,WAAW,YAAY,SAAS,SAAS,UAAU,CAAC;AAGjE,iBAAe,QAAQ;AACrB,UAAM,SAAS,OAAO,OAAO,QAAQ,MAAM,OAAO,QAAQ,IAAI;AAAA,EAChE;AAGA,iBAAe,OAAO;AACpB,UAAM,SAAS,MAAM;AAAA,EACvB;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|