@tamagui/cli 1.1.12 → 1.2.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/dist/cjs/cli.js +8 -0
- package/dist/cjs/cli.js.map +2 -2
- package/dist/cjs/dev.js +76 -58
- package/dist/cjs/dev.js.map +3 -3
- package/dist/cjs/index.js +6 -0
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/studio.js +12 -9
- package/dist/cjs/studio.js.map +2 -2
- package/dist/cjs/tamaguiConfigUtils.js +14 -5
- package/dist/cjs/tamaguiConfigUtils.js.map +2 -2
- package/dist/cjs/utils.js +16 -18
- package/dist/cjs/utils.js.map +2 -2
- package/dist/esm/cli.js +9 -1
- package/dist/esm/cli.js.map +2 -2
- package/dist/esm/dev.js +75 -57
- package/dist/esm/dev.js.map +3 -3
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/studio.js +12 -9
- package/dist/esm/studio.js.map +2 -2
- package/dist/esm/tamaguiConfigUtils.js +14 -5
- package/dist/esm/tamaguiConfigUtils.js.map +2 -2
- package/dist/esm/utils.js +13 -16
- package/dist/esm/utils.js.map +2 -2
- package/package.json +19 -6
- package/src/cli.ts +9 -1
- package/src/dev/createDevServer.ts +239 -0
- package/src/dev.ts +94 -70
- package/src/index.ts +8 -0
- package/src/studio.ts +14 -9
- package/src/tamaguiConfigUtils.ts +16 -5
- package/src/utils/constants.ts +1 -0
- package/src/utils.ts +14 -15
- package/src/vendor/debugger-app/index.d.ts +2 -0
- package/src/vendor/debugger-app/index.js +3 -0
- package/src/vendor/debugger-app/public/index.html +49 -0
- package/src/vendor/debugger-app/src/assets/blue-icon.png +0 -0
- package/src/vendor/debugger-app/src/assets/gray-icon.png +0 -0
- package/src/vendor/debugger-app/src/assets/orange-icon.png +0 -0
- package/src/vendor/debugger-app/src/debuggerWorker.js +84 -0
- package/src/vendor/debugger-app/src/index.css +37 -0
- package/src/vendor/debugger-app/src/index.js +195 -0
- package/src/vendor/debugger-app/webpack.config.cjs +73 -0
- package/src/vendor/repack/dev-server/src/createServer.ts +127 -0
- package/src/vendor/repack/dev-server/src/img/favicon.ico +0 -0
- package/src/vendor/repack/dev-server/src/index.ts +2 -0
- package/src/vendor/repack/dev-server/src/plugins/api/apiPlugin.ts +50 -0
- package/src/vendor/repack/dev-server/src/plugins/api/index.ts +1 -0
- package/src/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.ts +84 -0
- package/src/vendor/repack/dev-server/src/plugins/compiler/index.ts +2 -0
- package/src/vendor/repack/dev-server/src/plugins/compiler/types.ts +37 -0
- package/src/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.ts +107 -0
- package/src/vendor/repack/dev-server/src/plugins/devtools/index.ts +1 -0
- package/src/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.ts +14 -0
- package/src/vendor/repack/dev-server/src/plugins/favicon/index.ts +1 -0
- package/src/vendor/repack/dev-server/src/plugins/multipart/index.ts +2 -0
- package/src/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.ts +77 -0
- package/src/vendor/repack/dev-server/src/plugins/multipart/types.ts +13 -0
- package/src/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.ts +233 -0
- package/src/vendor/repack/dev-server/src/plugins/symbolicate/index.ts +3 -0
- package/src/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.ts +48 -0
- package/src/vendor/repack/dev-server/src/plugins/symbolicate/types.ts +71 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.ts +67 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.ts +60 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/index.ts +3 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.ts +158 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.ts +66 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.ts +134 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.ts +74 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.ts +202 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.ts +97 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.ts +398 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/types.ts +17 -0
- package/src/vendor/repack/dev-server/src/plugins/wss/wssPlugin.ts +77 -0
- package/src/vendor/repack/dev-server/src/types.ts +202 -0
- package/src/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.cjs +1 -0
- package/src/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.js +1 -0
- package/types/build.d.ts.map +1 -0
- package/types/cli.d.ts.map +1 -0
- package/types/create.d.ts.map +1 -0
- package/types/dev/createDevServer.d.ts +28 -0
- package/types/dev/createDevServer.d.ts.map +1 -0
- package/types/dev/websocket-server/WebSocketRouter.d.ts +33 -0
- package/types/dev/websocket-server/WebSocketRouter.d.ts.map +1 -0
- package/types/dev/websocket-server/WebSocketServer.d.ts +38 -0
- package/types/dev/websocket-server/WebSocketServer.d.ts.map +1 -0
- package/types/dev/websocket-server/index.d.ts +4 -0
- package/types/dev/websocket-server/index.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/dev/websocket-server/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/WebSocketApiServer.d.ts +33 -0
- package/types/dev/websocket-server/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/dev/websocket-server/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/dev/websocket-server/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/dev/websocket-server/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/dev/websocket-server/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/dev/websocket-server/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/dev/websocket-server/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/dev/websocket-server/types.d.ts +17 -0
- package/types/dev/websocket-server/types.d.ts.map +1 -0
- package/types/dev/websocket-server/wssPlugin.d.ts +25 -0
- package/types/dev/websocket-server/wssPlugin.d.ts.map +1 -0
- package/types/dev/wss/WebSocketRouter.d.ts +33 -0
- package/types/dev/wss/WebSocketRouter.d.ts.map +1 -0
- package/types/dev/wss/WebSocketServer.d.ts +38 -0
- package/types/dev/wss/WebSocketServer.d.ts.map +1 -0
- package/types/dev/wss/index.d.ts +4 -0
- package/types/dev/wss/index.d.ts.map +1 -0
- package/types/dev/wss/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/dev/wss/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/dev/wss/servers/WebSocketApiServer.d.ts +33 -0
- package/types/dev/wss/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/dev/wss/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/dev/wss/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/dev/wss/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/dev/wss/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/dev/wss/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/dev/wss/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/dev/wss/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/dev/wss/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/dev/wss/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/dev/wss/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/dev/wss/types.d.ts +17 -0
- package/types/dev/wss/types.d.ts.map +1 -0
- package/types/dev/wss/wssPlugin.d.ts +25 -0
- package/types/dev/wss/wssPlugin.d.ts.map +1 -0
- package/types/dev-debugger-socket.d.ts +1 -0
- package/types/dev-debugger-socket.d.ts.map +1 -0
- package/types/dev.d.ts.map +1 -0
- package/types/generate.d.ts.map +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/studio.d.ts.map +1 -0
- package/types/tamaguiConfigUtils.d.ts.map +1 -0
- package/types/test.d.ts.map +1 -0
- package/types/types.d.ts.map +1 -0
- package/types/update.d.ts.map +1 -0
- package/types/utils/constants.d.ts +2 -0
- package/types/utils/constants.d.ts.map +1 -0
- package/types/utils.d.ts +2 -2
- package/types/utils.d.ts.map +1 -0
- package/types/vendor/repack/WebSocketRouter.d.ts +33 -0
- package/types/vendor/repack/WebSocketRouter.d.ts.map +1 -0
- package/types/vendor/repack/WebSocketServer.d.ts +38 -0
- package/types/vendor/repack/WebSocketServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/createServer.d.ts +14 -0
- package/types/vendor/repack/dev-server/src/createServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/index.d.ts +3 -0
- package/types/vendor/repack/dev-server/src/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/api/apiPlugin.d.ts +7 -0
- package/types/vendor/repack/dev-server/src/plugins/api/apiPlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/api/index.d.ts +2 -0
- package/types/vendor/repack/dev-server/src/plugins/api/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.d.ts +7 -0
- package/types/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/compiler/index.d.ts +3 -0
- package/types/vendor/repack/dev-server/src/plugins/compiler/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/compiler/types.d.ts +32 -0
- package/types/vendor/repack/dev-server/src/plugins/compiler/types.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.d.ts +7 -0
- package/types/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/devtools/index.d.ts +2 -0
- package/types/vendor/repack/dev-server/src/plugins/devtools/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.d.ts +4 -0
- package/types/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/favicon/index.d.ts +2 -0
- package/types/vendor/repack/dev-server/src/plugins/favicon/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/multipart/index.d.ts +3 -0
- package/types/vendor/repack/dev-server/src/plugins/multipart/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.d.ts +4 -0
- package/types/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/multipart/types.d.ts +13 -0
- package/types/vendor/repack/dev-server/src/plugins/multipart/types.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.d.ts +47 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/index.d.ts +4 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.d.ts +7 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/types.d.ts +66 -0
- package/types/vendor/repack/dev-server/src/plugins/symbolicate/types.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.d.ts +33 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.d.ts +38 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/index.d.ts +4 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/index.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.d.ts +33 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/types.d.ts +17 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/types.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/wssPlugin.d.ts +28 -0
- package/types/vendor/repack/dev-server/src/plugins/wss/wssPlugin.d.ts.map +1 -0
- package/types/vendor/repack/dev-server/src/types.d.ts +159 -0
- package/types/vendor/repack/dev-server/src/types.d.ts.map +1 -0
- package/types/vendor/repack/index.d.ts +4 -0
- package/types/vendor/repack/index.d.ts.map +1 -0
- package/types/vendor/repack/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/vendor/repack/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/vendor/repack/servers/WebSocketApiServer.d.ts +33 -0
- package/types/vendor/repack/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/vendor/repack/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/vendor/repack/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/vendor/repack/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/vendor/repack/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/vendor/repack/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/vendor/repack/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/vendor/repack/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/vendor/repack/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/vendor/repack/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/vendor/repack/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/vendor/repack/types.d.ts +159 -0
- package/types/vendor/repack/types.d.ts.map +1 -0
- package/types/vendor/repack/wss/WebSocketRouter.d.ts +33 -0
- package/types/vendor/repack/wss/WebSocketRouter.d.ts.map +1 -0
- package/types/vendor/repack/wss/WebSocketServer.d.ts +38 -0
- package/types/vendor/repack/wss/WebSocketServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/index.d.ts +4 -0
- package/types/vendor/repack/wss/index.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/vendor/repack/wss/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/WebSocketApiServer.d.ts +33 -0
- package/types/vendor/repack/wss/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/vendor/repack/wss/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/vendor/repack/wss/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/vendor/repack/wss/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/vendor/repack/wss/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/vendor/repack/wss/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/vendor/repack/wss/types.d.ts +17 -0
- package/types/vendor/repack/wss/types.d.ts.map +1 -0
- package/types/vendor/repack/wss/wssPlugin.d.ts +29 -0
- package/types/vendor/repack/wss/wssPlugin.d.ts.map +1 -0
- package/types/vendor/repack/wssPlugin.d.ts +25 -0
- package/types/vendor/repack/wssPlugin.d.ts.map +1 -0
- package/types/vendor/websocket-server/WebSocketRouter.d.ts +33 -0
- package/types/vendor/websocket-server/WebSocketRouter.d.ts.map +1 -0
- package/types/vendor/websocket-server/WebSocketServer.d.ts +38 -0
- package/types/vendor/websocket-server/WebSocketServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/index.d.ts +4 -0
- package/types/vendor/websocket-server/index.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/vendor/websocket-server/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/WebSocketApiServer.d.ts +33 -0
- package/types/vendor/websocket-server/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/vendor/websocket-server/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/vendor/websocket-server/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/vendor/websocket-server/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/vendor/websocket-server/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/vendor/websocket-server/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/vendor/websocket-server/types.d.ts +17 -0
- package/types/vendor/websocket-server/types.d.ts.map +1 -0
- package/types/vendor/websocket-server/wssPlugin.d.ts +25 -0
- package/types/vendor/websocket-server/wssPlugin.d.ts.map +1 -0
- package/types/vendor/wss/WebSocketRouter.d.ts +33 -0
- package/types/vendor/wss/WebSocketRouter.d.ts.map +1 -0
- package/types/vendor/wss/WebSocketServer.d.ts +38 -0
- package/types/vendor/wss/WebSocketServer.d.ts.map +1 -0
- package/types/vendor/wss/index.d.ts +4 -0
- package/types/vendor/wss/index.d.ts.map +1 -0
- package/types/vendor/wss/servers/HermesInspectorProxy.d.ts +25 -0
- package/types/vendor/wss/servers/HermesInspectorProxy.d.ts.map +1 -0
- package/types/vendor/wss/servers/WebSocketApiServer.d.ts +33 -0
- package/types/vendor/wss/servers/WebSocketApiServer.d.ts.map +1 -0
- package/types/vendor/wss/servers/WebSocketDebuggerServer.d.ts +65 -0
- package/types/vendor/wss/servers/WebSocketDebuggerServer.d.ts.map +1 -0
- package/types/vendor/wss/servers/WebSocketDevClientServer.d.ts +33 -0
- package/types/vendor/wss/servers/WebSocketDevClientServer.d.ts.map +1 -0
- package/types/vendor/wss/servers/WebSocketEventsServer.d.ts +76 -0
- package/types/vendor/wss/servers/WebSocketEventsServer.d.ts.map +1 -0
- package/types/vendor/wss/servers/WebSocketHMRServer.d.ts +39 -0
- package/types/vendor/wss/servers/WebSocketHMRServer.d.ts.map +1 -0
- package/types/vendor/wss/servers/WebSocketMessageServer.d.ts +141 -0
- package/types/vendor/wss/servers/WebSocketMessageServer.d.ts.map +1 -0
- package/types/vendor/wss/types.d.ts +17 -0
- package/types/vendor/wss/types.d.ts.map +1 -0
- package/types/vendor/wss/wssPlugin.d.ts +25 -0
- package/types/vendor/wss/wssPlugin.d.ts.map +1 -0
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { readFile } from 'fs/promises'
|
|
2
|
+
|
|
3
|
+
import { ResolvedOptions } from '../types.js'
|
|
4
|
+
import { DEFAULT_PORT } from '../utils/constants.js'
|
|
5
|
+
import { Server, createServer } from '../vendor/repack/dev-server/src'
|
|
6
|
+
|
|
7
|
+
export async function createDevServer(
|
|
8
|
+
options: ResolvedOptions,
|
|
9
|
+
{
|
|
10
|
+
indexJson,
|
|
11
|
+
getIndexBundle,
|
|
12
|
+
}: { indexJson: Object; getIndexBundle: () => Promise<string> }
|
|
13
|
+
) {
|
|
14
|
+
const { start, stop } = await createServer({
|
|
15
|
+
options: {
|
|
16
|
+
rootDir: options.root,
|
|
17
|
+
host: options.host,
|
|
18
|
+
port: options.port ?? DEFAULT_PORT,
|
|
19
|
+
// https: args.https
|
|
20
|
+
// ? {
|
|
21
|
+
// cert: args.cert,
|
|
22
|
+
// key: args.key,
|
|
23
|
+
// }
|
|
24
|
+
// : undefined,
|
|
25
|
+
},
|
|
26
|
+
|
|
27
|
+
delegate: (ctx): Server.Delegate => {
|
|
28
|
+
// if (args.interactive) {
|
|
29
|
+
// bindKeypressInput(ctx)
|
|
30
|
+
// }
|
|
31
|
+
|
|
32
|
+
// if (reversePort && args.port) {
|
|
33
|
+
// runAdbReverse(ctx, args.port)
|
|
34
|
+
// }
|
|
35
|
+
|
|
36
|
+
// let lastStats: webpack.StatsCompilation | undefined
|
|
37
|
+
|
|
38
|
+
// compiler.on('watchRun', ({ platform }) => {
|
|
39
|
+
// ctx.notifyBuildStart(platform)
|
|
40
|
+
// if (platform === 'android') {
|
|
41
|
+
// runAdbReverse(ctx, args.port ?? DEFAULT_PORT)
|
|
42
|
+
// }
|
|
43
|
+
// })
|
|
44
|
+
|
|
45
|
+
// compiler.on('invalid', ({ platform }) => {
|
|
46
|
+
// ctx.notifyBuildStart(platform)
|
|
47
|
+
// ctx.broadcastToHmrClients({ action: 'building' }, platform)
|
|
48
|
+
// })
|
|
49
|
+
|
|
50
|
+
// compiler.on(
|
|
51
|
+
// 'done',
|
|
52
|
+
// ({ platform, stats }: { platform: string; stats: webpack.StatsCompilation }) => {
|
|
53
|
+
// ctx.notifyBuildEnd(platform)
|
|
54
|
+
// lastStats = stats
|
|
55
|
+
// ctx.broadcastToHmrClients(
|
|
56
|
+
// { action: 'built', body: createHmrBody(stats) },
|
|
57
|
+
// platform
|
|
58
|
+
// )
|
|
59
|
+
// }
|
|
60
|
+
// )
|
|
61
|
+
|
|
62
|
+
return {
|
|
63
|
+
compiler: {
|
|
64
|
+
getAsset: async (filename, platform, sendProgress) => {
|
|
65
|
+
console.log('get asset', filename)
|
|
66
|
+
if (filename === 'index.bundle') {
|
|
67
|
+
return await getIndexBundle()
|
|
68
|
+
}
|
|
69
|
+
return ''
|
|
70
|
+
// return (await compiler.getAsset(filename, platform, sendProgress)).data
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
getMimeType: (filename) => {
|
|
74
|
+
console.log('getMimeType', filename)
|
|
75
|
+
return 'application/javascript'
|
|
76
|
+
// return compiler.getMimeType(filename)
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
inferPlatform: (uri) => {
|
|
80
|
+
return 'ios'
|
|
81
|
+
|
|
82
|
+
const url = new URL(uri, 'protocol://domain')
|
|
83
|
+
if (!url.searchParams.get('platform')) {
|
|
84
|
+
const [, platform] = /^\/(.+)\/.+$/.exec(url.pathname) ?? []
|
|
85
|
+
return platform
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return undefined
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
|
|
92
|
+
symbolicator: {
|
|
93
|
+
getSource: async (fileUrl) => {
|
|
94
|
+
console.log('get source', fileUrl)
|
|
95
|
+
// const { filename, platform } = parseFileUrl(fileUrl)
|
|
96
|
+
// return compiler.getSource(filename, platform)
|
|
97
|
+
return ''
|
|
98
|
+
},
|
|
99
|
+
getSourceMap: async (fileUrl) => {
|
|
100
|
+
console.log('get source map', fileUrl)
|
|
101
|
+
// const { filename, platform } = parseFileUrl(fileUrl)
|
|
102
|
+
// if (!platform) {
|
|
103
|
+
// throw new Error('Cannot infer platform for file URL')
|
|
104
|
+
// }
|
|
105
|
+
|
|
106
|
+
// return compiler.getSourceMap(filename, platform)
|
|
107
|
+
return ''
|
|
108
|
+
},
|
|
109
|
+
shouldIncludeFrame: (frame) => {
|
|
110
|
+
// If the frame points to internal bootstrap/module system logic, skip the code frame.
|
|
111
|
+
return !/webpack[/\\]runtime[/\\].+\s/.test(frame.file)
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
|
|
115
|
+
hmr: {
|
|
116
|
+
getUriPath: () => '/__hmr',
|
|
117
|
+
onClientConnected: (platform, clientId) => {
|
|
118
|
+
// todo
|
|
119
|
+
const lastStats = {}
|
|
120
|
+
|
|
121
|
+
ctx.broadcastToHmrClients(
|
|
122
|
+
{ action: 'sync', body: createHmrBody(lastStats) },
|
|
123
|
+
platform,
|
|
124
|
+
[clientId]
|
|
125
|
+
)
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
|
|
129
|
+
messages: {
|
|
130
|
+
getHello: () => indexJson,
|
|
131
|
+
getStatus: () => 'packager-status:running',
|
|
132
|
+
},
|
|
133
|
+
|
|
134
|
+
logger: {
|
|
135
|
+
onMessage: (log) => {
|
|
136
|
+
const logEntry = makeLogEntryFromFastifyLog(log)
|
|
137
|
+
logEntry.issuer = 'DevServer'
|
|
138
|
+
console.log(
|
|
139
|
+
logEntry.type,
|
|
140
|
+
logEntry.issuer,
|
|
141
|
+
JSON.stringify(logEntry.message, null, 2)
|
|
142
|
+
)
|
|
143
|
+
// reporter.process(logEntry)
|
|
144
|
+
},
|
|
145
|
+
},
|
|
146
|
+
|
|
147
|
+
api: {
|
|
148
|
+
// getPlatforms: async () => Object.keys(compiler.workers),
|
|
149
|
+
getPlatforms: async () => ['ios'],
|
|
150
|
+
getAssets: async (platform) => {
|
|
151
|
+
console.log('get assets', platform)
|
|
152
|
+
return []
|
|
153
|
+
// return Object.entries(compiler.assetsCache[platform] ?? {}).map(([name, asset]) => ({
|
|
154
|
+
// name,
|
|
155
|
+
// size: asset.info.size,
|
|
156
|
+
// })),
|
|
157
|
+
},
|
|
158
|
+
getCompilationStats: async (platform) => {
|
|
159
|
+
return null
|
|
160
|
+
// return compiler.statsCache[platform] ?? null
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
})
|
|
166
|
+
|
|
167
|
+
await start()
|
|
168
|
+
|
|
169
|
+
return async () => {
|
|
170
|
+
await stop()
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
function createHmrBody(stats?: any): HMRMessageBody | null {
|
|
175
|
+
if (!stats) {
|
|
176
|
+
return null
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
const modules: Record<string, string> = {}
|
|
180
|
+
for (const module of stats.modules ?? []) {
|
|
181
|
+
const { identifier, name } = module
|
|
182
|
+
if (identifier !== undefined && name) {
|
|
183
|
+
modules[identifier] = name
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
return {
|
|
188
|
+
name: stats.name ?? '',
|
|
189
|
+
time: stats.time ?? 0,
|
|
190
|
+
hash: stats.hash ?? '',
|
|
191
|
+
warnings: stats.warnings || [],
|
|
192
|
+
errors: stats.errors || [],
|
|
193
|
+
modules,
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* Represent Hot Module Replacement Update body.
|
|
199
|
+
*
|
|
200
|
+
* @internal
|
|
201
|
+
*/
|
|
202
|
+
export interface HMRMessageBody {
|
|
203
|
+
name: string
|
|
204
|
+
time: number
|
|
205
|
+
hash: string
|
|
206
|
+
warnings: any
|
|
207
|
+
errors: any
|
|
208
|
+
modules: Record<string, string>
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Represent Hot Module Replacement Update message.
|
|
213
|
+
*
|
|
214
|
+
* @internal
|
|
215
|
+
*/
|
|
216
|
+
export interface HMRMessage {
|
|
217
|
+
action: 'building' | 'built' | 'sync'
|
|
218
|
+
body: HMRMessageBody | null
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
function makeLogEntryFromFastifyLog(data: any): any {
|
|
222
|
+
const { level, time, pid, hostname, ...rest } = data
|
|
223
|
+
|
|
224
|
+
const levelToTypeMapping: Record<number, any> = {
|
|
225
|
+
10: 'debug',
|
|
226
|
+
20: 'debug',
|
|
227
|
+
30: 'info',
|
|
228
|
+
40: 'warn',
|
|
229
|
+
50: 'error',
|
|
230
|
+
60: 'error',
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
return {
|
|
234
|
+
type: levelToTypeMapping[level],
|
|
235
|
+
timestamp: time,
|
|
236
|
+
issuer: '',
|
|
237
|
+
message: [rest],
|
|
238
|
+
}
|
|
239
|
+
}
|
package/src/dev.ts
CHANGED
|
@@ -1,24 +1,28 @@
|
|
|
1
|
+
import { readFile } from 'fs/promises'
|
|
1
2
|
import { AddressInfo } from 'net'
|
|
2
3
|
import { join } from 'path'
|
|
3
4
|
|
|
4
|
-
import { nativePlugin, tamaguiPlugin } from '@tamagui/vite-plugin'
|
|
5
5
|
import chalk from 'chalk'
|
|
6
|
-
import express from 'express'
|
|
7
|
-
import proxy from 'express-http-proxy'
|
|
8
6
|
import fs from 'fs-extra'
|
|
9
|
-
import killPort from 'kill-port'
|
|
10
|
-
import morgan from 'morgan'
|
|
11
7
|
import { build, createServer } from 'vite'
|
|
12
8
|
|
|
9
|
+
import { createDevServer } from './dev/createDevServer.js'
|
|
13
10
|
import { watchTamaguiConfig } from './tamaguiConfigUtils.js'
|
|
14
11
|
import { ResolvedOptions } from './types.js'
|
|
15
|
-
import {
|
|
12
|
+
import { registerDispose } from './utils.js'
|
|
16
13
|
|
|
17
14
|
export const dev = async (options: ResolvedOptions) => {
|
|
18
15
|
const { root, mode, paths } = options
|
|
19
16
|
|
|
20
17
|
process.chdir(process.cwd())
|
|
21
18
|
|
|
19
|
+
const { tamaguiPlugin, nativePlugin, nativePrebuild } = await import(
|
|
20
|
+
'@tamagui/vite-plugin'
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
// build react-native
|
|
24
|
+
await nativePrebuild()
|
|
25
|
+
|
|
22
26
|
const plugins = [
|
|
23
27
|
tamaguiPlugin({
|
|
24
28
|
components: ['tamagui'],
|
|
@@ -26,74 +30,90 @@ export const dev = async (options: ResolvedOptions) => {
|
|
|
26
30
|
nativePlugin(),
|
|
27
31
|
]
|
|
28
32
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
async function getBundle() {
|
|
34
|
+
const outputJsPath = join(process.cwd(), '.tamagui', 'bundle.js')
|
|
35
|
+
const outputCode = await getBundleCode()
|
|
36
|
+
// debug out each time
|
|
37
|
+
fs.writeFile(outputJsPath, outputCode)
|
|
38
|
+
return outputCode
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
async function getBundleCode() {
|
|
42
|
+
// build app
|
|
43
|
+
const buildOutput = await build({
|
|
44
|
+
plugins,
|
|
45
|
+
appType: 'custom',
|
|
46
|
+
root: join(root, 'src/index.ts'),
|
|
47
|
+
build: {
|
|
48
|
+
ssr: true,
|
|
49
|
+
},
|
|
50
|
+
ssr: {
|
|
51
|
+
format: 'cjs',
|
|
52
|
+
target: 'node',
|
|
53
|
+
},
|
|
54
|
+
mode: 'development',
|
|
55
|
+
define: {
|
|
56
|
+
__DEV__: 'true',
|
|
57
|
+
'process.env.NODE_ENV': `"development"`,
|
|
58
|
+
},
|
|
59
|
+
})
|
|
60
|
+
|
|
61
|
+
const appCode = 'output' in buildOutput ? buildOutput.output[0].code : null
|
|
62
|
+
|
|
63
|
+
if (!appCode) {
|
|
64
|
+
throw `❌`
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
const [react, reactJsxRuntime, reactNative] = await Promise.all([
|
|
68
|
+
readFile(join(process.cwd(), 'react.js'), 'utf-8'),
|
|
69
|
+
readFile(join(process.cwd(), 'react-jsx-runtime.js'), 'utf-8'),
|
|
70
|
+
readFile(join(process.cwd(), 'react-native.js'), 'utf-8'),
|
|
71
|
+
])
|
|
72
|
+
|
|
73
|
+
const reactCode = react.replace(
|
|
74
|
+
`module.exports = require_react_development();`,
|
|
75
|
+
`return require_react_development()`
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
const reactJSXRuntimeCode = reactJsxRuntime.replace(
|
|
79
|
+
`module.exports = require_react_jsx_runtime_production_min();`,
|
|
80
|
+
`return require_react_jsx_runtime_production_min()`
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
const reactNativeCode = reactNative
|
|
84
|
+
.replace(
|
|
85
|
+
`module.exports = require_react_native();`,
|
|
86
|
+
`return require_react_native()`
|
|
87
|
+
)
|
|
88
|
+
.replace(
|
|
89
|
+
`renderable = /* @__PURE__ */ react(RootComponentWithMeaningfulName, null, renderable);`,
|
|
90
|
+
``
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
return (await readFile('template.js', 'utf-8'))
|
|
94
|
+
.replace(`// -- react --`, reactCode)
|
|
95
|
+
.replace(`// -- react-native --`, reactNativeCode)
|
|
96
|
+
.replace(`// -- react/jsx-runtime --`, reactJSXRuntimeCode)
|
|
97
|
+
.replace(`// -- app --`, appCode)
|
|
36
98
|
}
|
|
37
|
-
const outputJsPath = join(process.cwd(), 'dist', outputJsFile)
|
|
38
99
|
|
|
39
100
|
const server = await createServer({
|
|
40
|
-
root,
|
|
101
|
+
root: root,
|
|
102
|
+
mode: 'development',
|
|
103
|
+
plugins,
|
|
41
104
|
server: {
|
|
42
105
|
port: options.port,
|
|
43
106
|
host: options.host || 'localhost',
|
|
44
107
|
},
|
|
45
|
-
plugins,
|
|
46
108
|
})
|
|
47
109
|
|
|
48
|
-
|
|
49
|
-
await
|
|
50
|
-
server.listen(),
|
|
51
|
-
//
|
|
52
|
-
watchTamaguiConfig(options),
|
|
53
|
-
// generateTypes(options),
|
|
54
|
-
])
|
|
110
|
+
await server.listen()
|
|
111
|
+
await watchTamaguiConfig(options)
|
|
55
112
|
|
|
56
113
|
const info = server.httpServer?.address() as AddressInfo
|
|
57
|
-
const app = express()
|
|
58
|
-
|
|
59
|
-
const cleanup = async () => {
|
|
60
|
-
console.log('cleaning up')
|
|
61
|
-
await server.close()
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
process.on(`uncaughtException`, (e) => {
|
|
65
|
-
console.log('wtdf', e)
|
|
66
|
-
})
|
|
67
|
-
;[`exit`, `SIGINT`, `SIGUSR1`, `SIGUSR2`, `SIGTERM`].forEach((eventType) => {
|
|
68
|
-
process.on(eventType, cleanup)
|
|
69
|
-
})
|
|
70
114
|
|
|
71
115
|
// react native port (it scans 19000 +5)
|
|
72
|
-
const port =
|
|
73
|
-
|
|
74
|
-
app.disable('x-powered-by')
|
|
75
|
-
app.use(express.static(paths.dotDir, { maxAge: '2h' }))
|
|
76
|
-
app.use(morgan('tiny'))
|
|
77
|
-
|
|
78
|
-
// studio specific - move out eventually to studioPlugin
|
|
79
|
-
|
|
80
|
-
app.get('/status', (req, res) => {
|
|
81
|
-
res.status(200).send()
|
|
82
|
-
})
|
|
83
|
-
|
|
84
|
-
app.get('/conf', async (req, res) => {
|
|
85
|
-
const conf = await fs.readJSON(paths.conf)
|
|
86
|
-
res.status(200).json(conf)
|
|
87
|
-
})
|
|
88
|
-
|
|
89
|
-
// /index.bundle?platform=ios&dev=true&minify=false&modulesOnly=false&runModule=true&app=dish.motion:2811:36)
|
|
90
|
-
app.get('/index.bundle', async (req, res) => {
|
|
91
|
-
const output = (await fs.readFile(outputJsPath)).toString()
|
|
92
|
-
|
|
93
|
-
res.status(200)
|
|
94
|
-
res.header('Content-Type', 'text/javascript')
|
|
95
|
-
res.send(output)
|
|
96
|
-
})
|
|
116
|
+
const port = 8081
|
|
97
117
|
|
|
98
118
|
const defaultResponse = {
|
|
99
119
|
name: 'myapp',
|
|
@@ -144,18 +164,22 @@ export const dev = async (options: ResolvedOptions) => {
|
|
|
144
164
|
id: '@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78',
|
|
145
165
|
}
|
|
146
166
|
|
|
147
|
-
|
|
148
|
-
|
|
167
|
+
// new server
|
|
168
|
+
const dispose = await createDevServer(options, {
|
|
169
|
+
getIndexBundle: getBundle,
|
|
170
|
+
indexJson: defaultResponse,
|
|
149
171
|
})
|
|
150
172
|
|
|
151
|
-
// app.use('/', proxy(`${info.address}:${info.port}`))
|
|
152
|
-
|
|
153
|
-
await killPort(port)
|
|
154
|
-
app.listen(port)
|
|
155
|
-
|
|
156
173
|
// eslint-disable-next-line no-console
|
|
157
|
-
console.log(`Listening on
|
|
174
|
+
console.log(`Listening on:`, chalk.green(`http://localhost:${port}`))
|
|
158
175
|
server.printUrls()
|
|
159
176
|
|
|
160
|
-
|
|
177
|
+
registerDispose(() => {
|
|
178
|
+
dispose()
|
|
179
|
+
server.close()
|
|
180
|
+
})
|
|
181
|
+
|
|
182
|
+
await new Promise((res) => server.httpServer?.on('close', res))
|
|
183
|
+
|
|
184
|
+
console.log('closed')
|
|
161
185
|
}
|
package/src/index.ts
CHANGED
package/src/studio.ts
CHANGED
|
@@ -12,7 +12,6 @@ import { createServer } from 'vite'
|
|
|
12
12
|
|
|
13
13
|
import { watchTamaguiConfig } from './tamaguiConfigUtils.js'
|
|
14
14
|
import { ResolvedOptions } from './types.js'
|
|
15
|
-
import { closeEvent } from './utils.js'
|
|
16
15
|
|
|
17
16
|
const resolve =
|
|
18
17
|
'url' in import.meta ? createRequire(import.meta.url).resolve : require.resolve
|
|
@@ -36,12 +35,8 @@ export const studio = async (options: ResolvedOptions) => {
|
|
|
36
35
|
})
|
|
37
36
|
|
|
38
37
|
// these can be lazy loaded (eventually should put in own process)
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
//
|
|
42
|
-
watchTamaguiConfig(options),
|
|
43
|
-
// generateTypes(options),
|
|
44
|
-
])
|
|
38
|
+
const serverPromise = server.listen()
|
|
39
|
+
const configWatchPromise = watchTamaguiConfig(options)
|
|
45
40
|
|
|
46
41
|
const info = server.httpServer?.address() as AddressInfo
|
|
47
42
|
console.log('devServerInfo', info)
|
|
@@ -63,9 +58,19 @@ export const studio = async (options: ResolvedOptions) => {
|
|
|
63
58
|
|
|
64
59
|
app.use('/', proxy(`${info.address}:${info.port}`))
|
|
65
60
|
|
|
66
|
-
app.listen(port)
|
|
61
|
+
const appServer = app.listen(port)
|
|
67
62
|
|
|
68
63
|
console.log(`Listening on`, chalk.green(`http://localhost:${port}`))
|
|
69
64
|
|
|
70
|
-
|
|
65
|
+
const longRunning = [
|
|
66
|
+
serverPromise,
|
|
67
|
+
configWatchPromise,
|
|
68
|
+
new Promise((res) => appServer.on('close', res)),
|
|
69
|
+
]
|
|
70
|
+
|
|
71
|
+
setInterval(() => {
|
|
72
|
+
console.log(longRunning)
|
|
73
|
+
}, 10_000)
|
|
74
|
+
|
|
75
|
+
await Promise.allSettled(longRunning)
|
|
71
76
|
}
|
|
@@ -69,17 +69,28 @@ async function getTamaguiConfig(options: ResolvedOptions) {
|
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
export async function watchTamaguiConfig(options: ResolvedOptions) {
|
|
72
|
+
console.warn('❌ disabling watch conf')
|
|
73
|
+
return
|
|
72
74
|
if (!options.tamaguiOptions.config) return
|
|
73
75
|
await generateTamaguiConfig(options)
|
|
74
|
-
await esbuild.
|
|
76
|
+
const context = await esbuild.context({
|
|
75
77
|
entryPoints: [options.tamaguiOptions.config],
|
|
76
78
|
sourcemap: false,
|
|
77
79
|
// dont output just use esbuild as a watcher
|
|
78
80
|
write: false,
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
81
|
+
|
|
82
|
+
plugins: [
|
|
83
|
+
{
|
|
84
|
+
name: `on-rebuild`,
|
|
85
|
+
setup({ onEnd }) {
|
|
86
|
+
onEnd((res) => {
|
|
87
|
+
generateTamaguiConfig(options)
|
|
88
|
+
})
|
|
89
|
+
},
|
|
82
90
|
},
|
|
83
|
-
|
|
91
|
+
],
|
|
84
92
|
})
|
|
93
|
+
|
|
94
|
+
await context.watch()
|
|
95
|
+
console.log('done watching')
|
|
85
96
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const DEFAULT_PORT = 8081
|
package/src/utils.ts
CHANGED
|
@@ -16,17 +16,16 @@ export async function getOptions({
|
|
|
16
16
|
debug,
|
|
17
17
|
}: Partial<UserOptions> = {}): Promise<ResolvedOptions> {
|
|
18
18
|
const tsConfigFilePath = join(root, tsconfigPath)
|
|
19
|
-
ensure(
|
|
20
|
-
await fs.pathExists(tsConfigFilePath),
|
|
21
|
-
`No tsconfig found: ${tsConfigFilePath}`,
|
|
22
|
-
)
|
|
19
|
+
ensure(await fs.pathExists(tsConfigFilePath), `No tsconfig found: ${tsConfigFilePath}`)
|
|
23
20
|
const dotDir = join(root, '.tamagui')
|
|
24
21
|
const pkgJson = await readJSON(join(root, 'package.json'))
|
|
25
22
|
|
|
23
|
+
console.log('host', host)
|
|
24
|
+
|
|
26
25
|
return {
|
|
27
26
|
mode: process.env.NODE_ENV === 'production' ? 'production' : 'development',
|
|
28
27
|
root,
|
|
29
|
-
host,
|
|
28
|
+
host: host || '127.0.0.1',
|
|
30
29
|
pkgJson,
|
|
31
30
|
debug,
|
|
32
31
|
tsconfigPath,
|
|
@@ -54,9 +53,7 @@ const defaultPaths = ['tamagui.config.ts', join('src', 'tamagui.config.ts')]
|
|
|
54
53
|
let cachedPath = ''
|
|
55
54
|
async function getDefaultTamaguiConfigPath() {
|
|
56
55
|
if (cachedPath) return cachedPath
|
|
57
|
-
const existingPaths = await Promise.all(
|
|
58
|
-
defaultPaths.map((path) => pathExists(path)),
|
|
59
|
-
)
|
|
56
|
+
const existingPaths = await Promise.all(defaultPaths.map((path) => pathExists(path)))
|
|
60
57
|
const existing = existingPaths.findIndex((x) => !!x)
|
|
61
58
|
const found = defaultPaths[existing]
|
|
62
59
|
if (!found) {
|
|
@@ -68,7 +65,7 @@ async function getDefaultTamaguiConfigPath() {
|
|
|
68
65
|
|
|
69
66
|
let cached: TamaguiProjectInfo | null = null
|
|
70
67
|
export const loadTamagui = async (
|
|
71
|
-
opts: Partial<TamaguiOptions
|
|
68
|
+
opts: Partial<TamaguiOptions>
|
|
72
69
|
): Promise<TamaguiProjectInfo> => {
|
|
73
70
|
return (cached ??= await loadTamaguiStatic({
|
|
74
71
|
config: await getDefaultTamaguiConfigPath(),
|
|
@@ -77,10 +74,12 @@ export const loadTamagui = async (
|
|
|
77
74
|
}))
|
|
78
75
|
}
|
|
79
76
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
77
|
+
const disposers = new Set<Function>()
|
|
78
|
+
|
|
79
|
+
export function registerDispose(cb: () => void) {
|
|
80
|
+
disposers.add(cb)
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export function disposeAll() {
|
|
84
|
+
disposers.forEach((cb) => cb())
|
|
86
85
|
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<link rel="icon" href="data:;base64,iVBORw0KGgo=" />
|
|
7
|
+
<title>React Native Debugger</title>
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
<!-- <noscript>You need to enable JavaScript to run Learning Lab.</noscript>
|
|
11
|
+
<div id="root"></div> -->
|
|
12
|
+
<div class="content">
|
|
13
|
+
<label for="dark">
|
|
14
|
+
<input type="checkbox" id="dark" onclick="Page.toggleDarkTheme()" />
|
|
15
|
+
Dark Theme
|
|
16
|
+
</label>
|
|
17
|
+
<label for="maintain-priority">
|
|
18
|
+
<input
|
|
19
|
+
type="checkbox"
|
|
20
|
+
id="maintain-priority"
|
|
21
|
+
onclick="Page.togglePriorityMaintenance()"
|
|
22
|
+
/>
|
|
23
|
+
Maintain Priority
|
|
24
|
+
</label>
|
|
25
|
+
<p>
|
|
26
|
+
React Native JS code runs as a web worker inside this tab.
|
|
27
|
+
</p>
|
|
28
|
+
<p>
|
|
29
|
+
Press <kbd id="shortcut" class="shortcut">⌘⌥I</kbd> to open Developer
|
|
30
|
+
Tools. Enable
|
|
31
|
+
<a href="https://stackoverflow.com/a/17324511/232122" target="_blank"
|
|
32
|
+
>Pause On Caught Exceptions</a
|
|
33
|
+
>
|
|
34
|
+
for a better debugging experience.
|
|
35
|
+
</p>
|
|
36
|
+
<p>
|
|
37
|
+
You may also install
|
|
38
|
+
<a href="https://www.npmjs.com/package/react-devtools" target="_blank"
|
|
39
|
+
>the standalone version of React Developer Tools</a
|
|
40
|
+
>
|
|
41
|
+
to inspect the React component hierarchy, their props, and state.
|
|
42
|
+
</p>
|
|
43
|
+
<p>Status: <span id="status">Loading...</span></p>
|
|
44
|
+
<button class="reload-btn" onclick="window.onReloadClicked()">
|
|
45
|
+
Reload app
|
|
46
|
+
</button>
|
|
47
|
+
</div>
|
|
48
|
+
</body>
|
|
49
|
+
</html>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|