@tamagui/cli 1.32.3 → 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.
Files changed (218) hide show
  1. package/dist/build.js +83 -0
  2. package/dist/build.js.map +6 -0
  3. package/dist/cjs/cli.js +18 -18
  4. package/dist/cjs/cli.js.map +1 -1
  5. package/dist/cjs/dev/createDevServer.js.map +1 -1
  6. package/dist/cjs/dev.js +4 -4
  7. package/dist/cjs/dev.js.map +1 -1
  8. package/dist/cjs/generate-themes.js +0 -0
  9. package/dist/cjs/index.js +2 -1
  10. package/dist/cjs/index.js.map +1 -1
  11. package/dist/cli.js +196 -0
  12. package/dist/cli.js.map +6 -0
  13. package/dist/create.js +2 -0
  14. package/dist/create.js.map +6 -0
  15. package/dist/dev/createDevServer.js +165 -0
  16. package/dist/dev/createDevServer.js.map +6 -0
  17. package/dist/dev.js +188 -0
  18. package/dist/dev.js.map +6 -0
  19. package/dist/esm/build.mjs +48 -0
  20. package/dist/esm/build.mjs.map +6 -0
  21. package/dist/esm/cli.js +18 -18
  22. package/dist/esm/cli.js.map +1 -1
  23. package/dist/esm/cli.mjs +173 -0
  24. package/dist/esm/cli.mjs.map +6 -0
  25. package/dist/esm/create.mjs +1 -0
  26. package/dist/esm/create.mjs.map +6 -0
  27. package/dist/esm/dev/createDevServer.js.map +1 -1
  28. package/dist/esm/dev/createDevServer.mjs +141 -0
  29. package/dist/esm/dev/createDevServer.mjs.map +6 -0
  30. package/dist/esm/dev.js +4 -4
  31. package/dist/esm/dev.js.map +1 -1
  32. package/dist/esm/dev.mjs +154 -0
  33. package/dist/esm/dev.mjs.map +6 -0
  34. package/dist/esm/generate-themes.js +0 -0
  35. package/dist/esm/generate-themes.mjs +113 -0
  36. package/dist/esm/generate-themes.mjs.map +6 -0
  37. package/dist/esm/generate.mjs +52 -0
  38. package/dist/esm/generate.mjs.map +6 -0
  39. package/dist/esm/index.js +2 -1
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/esm/index.mjs +3 -0
  42. package/dist/esm/index.mjs.map +6 -0
  43. package/dist/esm/studio.mjs +73 -0
  44. package/dist/esm/studio.mjs.map +6 -0
  45. package/dist/esm/test.mjs +9 -0
  46. package/dist/esm/test.mjs.map +6 -0
  47. package/dist/esm/update.mjs +6 -0
  48. package/dist/esm/update.mjs.map +6 -0
  49. package/dist/esm/utils/constants.mjs +5 -0
  50. package/dist/esm/utils/constants.mjs.map +6 -0
  51. package/dist/esm/utils.mjs +86 -0
  52. package/dist/esm/utils.mjs.map +6 -0
  53. package/dist/esm/vendor/debugger-app/index.mjs +6 -0
  54. package/dist/esm/vendor/debugger-app/index.mjs.map +6 -0
  55. package/dist/esm/vendor/debugger-app/src/debuggerWorker.mjs +63 -0
  56. package/dist/esm/vendor/debugger-app/src/debuggerWorker.mjs.map +6 -0
  57. package/dist/esm/vendor/debugger-app/src/index.mjs +142 -0
  58. package/dist/esm/vendor/debugger-app/src/index.mjs.map +6 -0
  59. package/dist/esm/vendor/repack/dev-server/src/createServer.mjs +95 -0
  60. package/dist/esm/vendor/repack/dev-server/src/createServer.mjs.map +6 -0
  61. package/dist/esm/vendor/repack/dev-server/src/index.mjs +3 -0
  62. package/dist/esm/vendor/repack/dev-server/src/index.mjs.map +6 -0
  63. package/dist/esm/vendor/repack/dev-server/src/plugins/api/apiPlugin.mjs +37 -0
  64. package/dist/esm/vendor/repack/dev-server/src/plugins/api/apiPlugin.mjs.map +6 -0
  65. package/dist/esm/vendor/repack/dev-server/src/plugins/api/index.mjs +5 -0
  66. package/dist/esm/vendor/repack/dev-server/src/plugins/api/index.mjs.map +6 -0
  67. package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.mjs +67 -0
  68. package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.mjs.map +6 -0
  69. package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/index.mjs +6 -0
  70. package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/index.mjs.map +6 -0
  71. package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/types.mjs +1 -0
  72. package/dist/esm/vendor/repack/dev-server/src/plugins/compiler/types.mjs.map +6 -0
  73. package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.mjs +87 -0
  74. package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.mjs.map +6 -0
  75. package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/index.mjs +5 -0
  76. package/dist/esm/vendor/repack/dev-server/src/plugins/devtools/index.mjs.map +6 -0
  77. package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.mjs +13 -0
  78. package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.mjs.map +6 -0
  79. package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/index.mjs +5 -0
  80. package/dist/esm/vendor/repack/dev-server/src/plugins/favicon/index.mjs.map +6 -0
  81. package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/index.mjs +6 -0
  82. package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/index.mjs.map +6 -0
  83. package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.mjs +50 -0
  84. package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.mjs.map +6 -0
  85. package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/types.mjs +1 -0
  86. package/dist/esm/vendor/repack/dev-server/src/plugins/multipart/types.mjs.map +6 -0
  87. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.mjs +186 -0
  88. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.mjs.map +6 -0
  89. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/index.mjs +7 -0
  90. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/index.mjs.map +6 -0
  91. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.mjs +35 -0
  92. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.mjs.map +6 -0
  93. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/types.mjs +1 -0
  94. package/dist/esm/vendor/repack/dev-server/src/plugins/symbolicate/types.mjs.map +6 -0
  95. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.mjs +50 -0
  96. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.mjs.map +6 -0
  97. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.mjs +32 -0
  98. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.mjs.map +6 -0
  99. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/index.mjs +7 -0
  100. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/index.mjs.map +6 -0
  101. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.mjs +110 -0
  102. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.mjs.map +6 -0
  103. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.mjs +52 -0
  104. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.mjs.map +6 -0
  105. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.mjs +106 -0
  106. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.mjs.map +6 -0
  107. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.mjs +62 -0
  108. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.mjs.map +6 -0
  109. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.mjs +154 -0
  110. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.mjs.map +6 -0
  111. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.mjs +76 -0
  112. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.mjs.map +6 -0
  113. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.mjs +330 -0
  114. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.mjs.map +6 -0
  115. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/types.mjs +1 -0
  116. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/types.mjs.map +6 -0
  117. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/wssPlugin.mjs +46 -0
  118. package/dist/esm/vendor/repack/dev-server/src/plugins/wss/wssPlugin.mjs.map +6 -0
  119. package/dist/esm/vendor/repack/dev-server/src/types.mjs +13 -0
  120. package/dist/esm/vendor/repack/dev-server/src/types.mjs.map +6 -0
  121. package/dist/esm/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.mjs +5 -0
  122. package/dist/esm/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.mjs.map +6 -0
  123. package/dist/generate-themes.js +147 -0
  124. package/dist/generate-themes.js.map +6 -0
  125. package/dist/generate.js +87 -0
  126. package/dist/generate.js.map +6 -0
  127. package/dist/index.js +5 -0
  128. package/dist/index.js.map +6 -0
  129. package/dist/studio.js +108 -0
  130. package/dist/studio.js.map +6 -0
  131. package/dist/test.js +43 -0
  132. package/dist/test.js.map +6 -0
  133. package/dist/update.js +30 -0
  134. package/dist/update.js.map +6 -0
  135. package/dist/utils/constants.js +29 -0
  136. package/dist/utils/constants.js.map +6 -0
  137. package/dist/utils.js +124 -0
  138. package/dist/utils.js.map +6 -0
  139. package/dist/vendor/debugger-app/index.js +27 -0
  140. package/dist/vendor/debugger-app/index.js.map +6 -0
  141. package/dist/vendor/debugger-app/src/debuggerWorker.js +64 -0
  142. package/dist/vendor/debugger-app/src/debuggerWorker.js.map +6 -0
  143. package/dist/vendor/debugger-app/src/index.css +41 -0
  144. package/dist/vendor/debugger-app/src/index.css.map +6 -0
  145. package/dist/vendor/debugger-app/src/index.js +165 -0
  146. package/dist/vendor/debugger-app/src/index.js.map +6 -0
  147. package/dist/vendor/repack/dev-server/src/createServer.js +129 -0
  148. package/dist/vendor/repack/dev-server/src/createServer.js.map +6 -0
  149. package/dist/vendor/repack/dev-server/src/index.js +25 -0
  150. package/dist/vendor/repack/dev-server/src/index.js.map +6 -0
  151. package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.js +57 -0
  152. package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.js.map +6 -0
  153. package/dist/vendor/repack/dev-server/src/plugins/api/index.js +35 -0
  154. package/dist/vendor/repack/dev-server/src/plugins/api/index.js.map +6 -0
  155. package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.js +97 -0
  156. package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.js.map +6 -0
  157. package/dist/vendor/repack/dev-server/src/plugins/compiler/index.js +41 -0
  158. package/dist/vendor/repack/dev-server/src/plugins/compiler/index.js.map +6 -0
  159. package/dist/vendor/repack/dev-server/src/plugins/compiler/types.js +17 -0
  160. package/dist/vendor/repack/dev-server/src/plugins/compiler/types.js.map +6 -0
  161. package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.js +117 -0
  162. package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.js.map +6 -0
  163. package/dist/vendor/repack/dev-server/src/plugins/devtools/index.js +35 -0
  164. package/dist/vendor/repack/dev-server/src/plugins/devtools/index.js.map +6 -0
  165. package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.js +44 -0
  166. package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.js.map +6 -0
  167. package/dist/vendor/repack/dev-server/src/plugins/favicon/index.js +35 -0
  168. package/dist/vendor/repack/dev-server/src/plugins/favicon/index.js.map +6 -0
  169. package/dist/vendor/repack/dev-server/src/plugins/multipart/index.js +41 -0
  170. package/dist/vendor/repack/dev-server/src/plugins/multipart/index.js.map +6 -0
  171. package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.js +80 -0
  172. package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.js.map +6 -0
  173. package/dist/vendor/repack/dev-server/src/plugins/multipart/types.js +17 -0
  174. package/dist/vendor/repack/dev-server/src/plugins/multipart/types.js.map +6 -0
  175. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.js +210 -0
  176. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.js.map +6 -0
  177. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.js +43 -0
  178. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.js.map +6 -0
  179. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.js +65 -0
  180. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.js.map +6 -0
  181. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.js +17 -0
  182. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.js.map +6 -0
  183. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.js +74 -0
  184. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.js.map +6 -0
  185. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.js +56 -0
  186. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.js.map +6 -0
  187. package/dist/vendor/repack/dev-server/src/plugins/wss/index.js +43 -0
  188. package/dist/vendor/repack/dev-server/src/plugins/wss/index.js.map +6 -0
  189. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.js +144 -0
  190. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.js.map +6 -0
  191. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.js +76 -0
  192. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.js.map +6 -0
  193. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.js +130 -0
  194. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.js.map +6 -0
  195. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.js +86 -0
  196. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.js.map +6 -0
  197. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.js +188 -0
  198. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.js.map +6 -0
  199. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.js +100 -0
  200. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.js.map +6 -0
  201. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.js +354 -0
  202. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.js.map +6 -0
  203. package/dist/vendor/repack/dev-server/src/plugins/wss/types.js +17 -0
  204. package/dist/vendor/repack/dev-server/src/plugins/wss/types.js.map +6 -0
  205. package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.js +76 -0
  206. package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.js.map +6 -0
  207. package/dist/vendor/repack/dev-server/src/types.js +37 -0
  208. package/dist/vendor/repack/dev-server/src/types.js.map +6 -0
  209. package/dist/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.js +35 -0
  210. package/dist/vendor/repack/dev-server/vendor/metro-inspector-proxy/src/Device.js.map +6 -0
  211. package/package.json +9 -10
  212. package/src/cli.ts +19 -17
  213. package/src/dev/createDevServer.ts +0 -2
  214. package/src/dev.ts +4 -4
  215. package/src/index.ts +2 -1
  216. package/types/dev/createDevServer.d.ts.map +1 -1
  217. package/types/index.d.ts +0 -1
  218. package/types/index.d.ts.map +1 -1
@@ -0,0 +1,141 @@
1
+ import { DEFAULT_PORT } from "../utils/constants";
2
+ import { createServer } from "../vendor/repack/dev-server/src";
3
+ async function createDevServer(options, {
4
+ indexJson,
5
+ getIndexBundle
6
+ }) {
7
+ const { start, stop } = await createServer({
8
+ options: {
9
+ rootDir: options.root,
10
+ host: options.host,
11
+ port: options.port ?? DEFAULT_PORT
12
+ // https: args.https
13
+ // ? {
14
+ // cert: args.cert,
15
+ // key: args.key,
16
+ // }
17
+ // : undefined,
18
+ },
19
+ delegate: (ctx) => {
20
+ return {
21
+ compiler: {
22
+ getAsset: async (filename, platform, sendProgress) => {
23
+ console.log("get asset", filename);
24
+ if (filename === "index.bundle") {
25
+ return await getIndexBundle();
26
+ }
27
+ return "";
28
+ },
29
+ getMimeType: (filename) => {
30
+ console.log("getMimeType", filename);
31
+ return "application/javascript";
32
+ },
33
+ inferPlatform: (uri) => {
34
+ return "ios";
35
+ const url = new URL(uri, "protocol://domain");
36
+ if (!url.searchParams.get("platform")) {
37
+ const [, platform] = /^\/(.+)\/.+$/.exec(url.pathname) ?? [];
38
+ return platform;
39
+ }
40
+ return void 0;
41
+ }
42
+ },
43
+ symbolicator: {
44
+ getSource: async (fileUrl) => {
45
+ console.log("get source", fileUrl);
46
+ return "";
47
+ },
48
+ getSourceMap: async (fileUrl) => {
49
+ console.log("get source map", fileUrl);
50
+ return "";
51
+ },
52
+ shouldIncludeFrame: (frame) => {
53
+ return !/webpack[/\\]runtime[/\\].+\s/.test(frame.file);
54
+ }
55
+ },
56
+ hmr: {
57
+ getUriPath: () => "/__hmr",
58
+ onClientConnected: (platform, clientId) => {
59
+ const lastStats = {};
60
+ ctx.broadcastToHmrClients(
61
+ { action: "sync", body: createHmrBody(lastStats) },
62
+ platform,
63
+ [clientId]
64
+ );
65
+ }
66
+ },
67
+ messages: {
68
+ getHello: () => indexJson,
69
+ getStatus: () => "packager-status:running"
70
+ },
71
+ logger: {
72
+ onMessage: (log) => {
73
+ const logEntry = makeLogEntryFromFastifyLog(log);
74
+ logEntry.issuer = "DevServer";
75
+ console.log(
76
+ logEntry.type,
77
+ logEntry.issuer,
78
+ JSON.stringify(logEntry.message, null, 2)
79
+ );
80
+ }
81
+ },
82
+ api: {
83
+ // getPlatforms: async () => Object.keys(compiler.workers),
84
+ getPlatforms: async () => ["ios"],
85
+ getAssets: async (platform) => {
86
+ console.log("get assets", platform);
87
+ return [];
88
+ },
89
+ getCompilationStats: async (platform) => {
90
+ return null;
91
+ }
92
+ }
93
+ };
94
+ }
95
+ });
96
+ await start();
97
+ return async () => {
98
+ await stop();
99
+ };
100
+ }
101
+ function createHmrBody(stats) {
102
+ if (!stats) {
103
+ return null;
104
+ }
105
+ const modules = {};
106
+ for (const module of stats.modules ?? []) {
107
+ const { identifier, name } = module;
108
+ if (identifier !== void 0 && name) {
109
+ modules[identifier] = name;
110
+ }
111
+ }
112
+ return {
113
+ name: stats.name ?? "",
114
+ time: stats.time ?? 0,
115
+ hash: stats.hash ?? "",
116
+ warnings: stats.warnings || [],
117
+ errors: stats.errors || [],
118
+ modules
119
+ };
120
+ }
121
+ function makeLogEntryFromFastifyLog(data) {
122
+ const { level, time, pid, hostname, ...rest } = data;
123
+ const levelToTypeMapping = {
124
+ 10: "debug",
125
+ 20: "debug",
126
+ 30: "info",
127
+ 40: "warn",
128
+ 50: "error",
129
+ 60: "error"
130
+ };
131
+ return {
132
+ type: levelToTypeMapping[level],
133
+ timestamp: time,
134
+ issuer: "",
135
+ message: [rest]
136
+ };
137
+ }
138
+ export {
139
+ createDevServer
140
+ };
141
+ //# sourceMappingURL=createDevServer.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/dev/createDevServer.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
package/dist/esm/dev.js CHANGED
@@ -29,7 +29,7 @@ const dev = async (options) => {
29
29
  // @ts-ignore
30
30
  plugins,
31
31
  appType: "custom",
32
- root: join(root, "src/index.ts"),
32
+ root: join(root, "src/test-tamagui-stack.tsx"),
33
33
  build: {
34
34
  ssr: true
35
35
  },
@@ -48,9 +48,9 @@ const dev = async (options) => {
48
48
  throw `\u274C`;
49
49
  }
50
50
  const [react, reactJsxRuntime, reactNative] = await Promise.all([
51
- readFile(join(process.cwd(), "react.js"), "utf-8"),
52
- readFile(join(process.cwd(), "react-jsx-runtime.js"), "utf-8"),
53
- readFile(join(process.cwd(), "react-native.js"), "utf-8")
51
+ readFile(join(process.cwd(), "testing-area", "react.js"), "utf-8"),
52
+ readFile(join(process.cwd(), "testing-area", "react-jsx-runtime.js"), "utf-8"),
53
+ readFile(join(process.cwd(), "testing-area", "react-native.js"), "utf-8")
54
54
  ]);
55
55
  const reactCode = react.replace(
56
56
  `module.exports = require_react_development();`,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/dev.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["res", "_a"]
6
6
  }
@@ -0,0 +1,154 @@
1
+ import { readFile } from "fs/promises";
2
+ import { join } from "path";
3
+ import { watchTamaguiConfig } from "@tamagui/static";
4
+ import chalk from "chalk";
5
+ import fs, { ensureDir } from "fs-extra";
6
+ import { build, createServer } from "vite";
7
+ import { createDevServer } from "./dev/createDevServer";
8
+ import { registerDispose } from "./utils";
9
+ const dev = async (options) => {
10
+ var _a;
11
+ const { root, mode, paths } = options;
12
+ process.chdir(process.cwd());
13
+ const { tamaguiPlugin, nativePlugin, nativePrebuild } = await import("@tamagui/vite-plugin");
14
+ await nativePrebuild();
15
+ const plugins = [
16
+ tamaguiPlugin({
17
+ components: ["tamagui"]
18
+ }),
19
+ nativePlugin()
20
+ ];
21
+ async function getBundle() {
22
+ const outputJsPath = join(process.cwd(), ".tamagui", "bundle.js");
23
+ const outputCode = await getBundleCode();
24
+ fs.writeFile(outputJsPath, outputCode);
25
+ return outputCode;
26
+ }
27
+ async function getBundleCode() {
28
+ const buildOutput = await build({
29
+ // @ts-ignore
30
+ plugins,
31
+ appType: "custom",
32
+ root: join(root, "src/test-tamagui-stack.tsx"),
33
+ build: {
34
+ ssr: true
35
+ },
36
+ ssr: {
37
+ format: "cjs",
38
+ target: "node"
39
+ },
40
+ mode: "development",
41
+ define: {
42
+ __DEV__: "true",
43
+ "process.env.NODE_ENV": `"development"`
44
+ }
45
+ });
46
+ const appCode = "output" in buildOutput ? buildOutput.output[0].code : null;
47
+ if (!appCode) {
48
+ throw `\u274C`;
49
+ }
50
+ const [react, reactJsxRuntime, reactNative] = await Promise.all([
51
+ readFile(join(process.cwd(), "testing-area", "react.js"), "utf-8"),
52
+ readFile(join(process.cwd(), "testing-area", "react-jsx-runtime.js"), "utf-8"),
53
+ readFile(join(process.cwd(), "testing-area", "react-native.js"), "utf-8")
54
+ ]);
55
+ const reactCode = react.replace(
56
+ `module.exports = require_react_development();`,
57
+ `return require_react_development()`
58
+ );
59
+ const reactJSXRuntimeCode = reactJsxRuntime.replace(
60
+ `module.exports = require_react_jsx_runtime_production_min();`,
61
+ `return require_react_jsx_runtime_production_min()`
62
+ );
63
+ const reactNativeCode = reactNative.replace(
64
+ `module.exports = require_react_native();`,
65
+ `return require_react_native()`
66
+ ).replace(
67
+ `renderable = /* @__PURE__ */ react(RootComponentWithMeaningfulName, null, renderable);`,
68
+ ``
69
+ );
70
+ return (await readFile("template.js", "utf-8")).replace(`// -- react --`, reactCode).replace(`// -- react-native --`, reactNativeCode).replace(`// -- react/jsx-runtime --`, reactJSXRuntimeCode).replace(`// -- app --`, appCode);
71
+ }
72
+ const server = await createServer({
73
+ root,
74
+ mode: "development",
75
+ plugins,
76
+ server: {
77
+ port: options.port,
78
+ host: options.host || "localhost"
79
+ }
80
+ });
81
+ await server.listen();
82
+ await ensureDir(options.paths.dotDir);
83
+ const res = await watchTamaguiConfig(options.tamaguiOptions);
84
+ const info = (_a = server.httpServer) == null ? void 0 : _a.address();
85
+ const port = 8081;
86
+ const defaultResponse = {
87
+ name: "myapp",
88
+ slug: "myapp",
89
+ scheme: "myapp",
90
+ version: "1.0.0",
91
+ jsEngine: "jsc",
92
+ orientation: "portrait",
93
+ icon: "./assets/icon.png",
94
+ userInterfaceStyle: "light",
95
+ splash: {
96
+ image: "./assets/splash.png",
97
+ resizeMode: "contain",
98
+ backgroundColor: "#ffffff",
99
+ imageUrl: "http://127.0.0.1:8081/assets/./assets/splash.png"
100
+ },
101
+ updates: { fallbackToCacheTimeout: 0 },
102
+ assetBundlePatterns: ["**/*"],
103
+ ios: { supportsTablet: true, bundleIdentifier: "com.natew.myapp" },
104
+ android: {
105
+ package: "com.tamagui.myapp",
106
+ adaptiveIcon: {
107
+ foregroundImage: "./assets/adaptive-icon.png",
108
+ backgroundColor: "#FFFFFF",
109
+ foregroundImageUrl: "http://127.0.0.1:8081/assets/./assets/adaptive-icon.png"
110
+ }
111
+ },
112
+ web: { favicon: "./assets/favicon.png" },
113
+ extra: { eas: { projectId: "061b4470-78c7-4d6a-b850-8167fb0a3434" } },
114
+ _internal: {
115
+ isDebug: false,
116
+ projectRoot: "/Users/n8/tamagui/apps/kitchen-sink",
117
+ dynamicConfigPath: null,
118
+ staticConfigPath: "/Users/n8/tamagui/apps/kitchen-sink/app.json",
119
+ packageJsonPath: "/Users/n8/tamagui/apps/kitchen-sink/package.json"
120
+ },
121
+ sdkVersion: "47.0.0",
122
+ platforms: ["ios", "android", "web"],
123
+ iconUrl: `http://127.0.0.1:${port}/assets/./assets/icon.png`,
124
+ debuggerHost: `127.0.0.1:${port}`,
125
+ logUrl: `http://127.0.0.1:${port}/logs`,
126
+ developer: { tool: "expo-cli", projectRoot: "/Users/n8/tamagui/apps/kitchen-sink" },
127
+ packagerOpts: { dev: true },
128
+ mainModuleName: "index",
129
+ __flipperHack: "React Native packager is running",
130
+ hostUri: `127.0.0.1:${port}`,
131
+ bundleUrl: `http://127.0.0.1:${port}/index.bundle?platform=ios&dev=true&hot=false`,
132
+ id: "@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78"
133
+ };
134
+ const dispose = await createDevServer(options, {
135
+ getIndexBundle: getBundle,
136
+ indexJson: defaultResponse
137
+ });
138
+ console.log(`Listening on:`, chalk.green(`http://localhost:${port}`));
139
+ server.printUrls();
140
+ registerDispose(() => {
141
+ dispose();
142
+ server.close();
143
+ });
144
+ await new Promise((res2) => {
145
+ var _a2;
146
+ return (_a2 = server.httpServer) == null ? void 0 : _a2.on("close", res2);
147
+ });
148
+ await (res == null ? void 0 : res.context.dispose());
149
+ console.log("closed");
150
+ };
151
+ export {
152
+ dev
153
+ };
154
+ //# sourceMappingURL=dev.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/dev.ts"],
4
+ "mappings": "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",
5
+ "names": ["res", "_a"]
6
+ }
File without changes
@@ -0,0 +1,113 @@
1
+ #!/usr/bin/env node
2
+ import Module from "module";
3
+ import fs from "fs-extra";
4
+ async function generateThemes(options) {
5
+ require("esbuild-register/dist/node").register();
6
+ let promise = null;
7
+ const ogRequire = Module.prototype.require;
8
+ Module.prototype.require = function(id) {
9
+ const out = ogRequire.apply(this, arguments);
10
+ if (id === "@tamagui/create-theme/theme-builder") {
11
+ if (!promise) {
12
+ let resolve;
13
+ promise = new Promise((res) => {
14
+ resolve = res;
15
+ });
16
+ return createThemeIntercept(out, {
17
+ onComplete: (result) => {
18
+ resolve == null ? void 0 : resolve(result.themeBuilder);
19
+ }
20
+ });
21
+ }
22
+ }
23
+ return out;
24
+ };
25
+ const requiredThemes = require(options.inPath);
26
+ const themes = requiredThemes["default"] || requiredThemes["themes"];
27
+ const generatedThemes = generatedThemesToTypescript(themes);
28
+ const themeBuilder = promise ? await promise : null;
29
+ await Promise.all([
30
+ fs.writeFile(options.outPath, generatedThemes),
31
+ (themeBuilder == null ? void 0 : themeBuilder.state) ? fs.writeFile(
32
+ `${options.outPath}.theme-builder.json`,
33
+ JSON.stringify(themeBuilder == null ? void 0 : themeBuilder.state)
34
+ ) : null
35
+ ]);
36
+ }
37
+ function generatedThemesToTypescript(themes) {
38
+ const deduped = /* @__PURE__ */ new Map();
39
+ const dedupedToNames = /* @__PURE__ */ new Map();
40
+ for (const name in themes) {
41
+ const theme = themes[name];
42
+ const key = JSON.stringify(theme);
43
+ if (deduped.has(key)) {
44
+ dedupedToNames.set(key, [...dedupedToNames.get(key), name]);
45
+ } else {
46
+ deduped.set(key, theme);
47
+ dedupedToNames.set(key, [name]);
48
+ }
49
+ }
50
+ const baseTypeString = `type Theme = {
51
+ ${Object.entries(themes.light || themes[Object.keys(themes)[0]]).map(([k]) => {
52
+ return ` ${k}: string;
53
+ `;
54
+ }).join("")}
55
+ }`;
56
+ let themesString = `${baseTypeString}
57
+ `;
58
+ deduped.forEach((theme) => {
59
+ const key = JSON.stringify(theme);
60
+ const [baseName, ...restNames] = dedupedToNames.get(key);
61
+ const baseTheme = `export const ${baseName} = ${objectToJsString(theme)} as Theme`;
62
+ themesString += `
63
+ ${baseTheme}`;
64
+ if (restNames.length) {
65
+ const duplicateThemes = restNames.map(
66
+ (name) => `export const ${name} = ${baseName} as Theme`
67
+ );
68
+ themesString += `
69
+
70
+ ` + duplicateThemes.join("\n");
71
+ }
72
+ });
73
+ return themesString;
74
+ }
75
+ function objectToJsString(obj, indent = 4) {
76
+ const whitespace = new Array(indent).fill(" ").join("");
77
+ return `{
78
+ ${Object.entries(obj).map(([k, v]) => `${whitespace}${k}: '${v}'`).join(",\n")}
79
+ }`;
80
+ }
81
+ function createThemeIntercept(createThemeExport, themeBuilderInterceptOpts) {
82
+ return new Proxy(createThemeExport, {
83
+ get(target, key) {
84
+ const out = Reflect.get(target, key);
85
+ if (key === "createThemeBuilder") {
86
+ return new Proxy(out, {
87
+ apply(target2, thisArg, argArray) {
88
+ const builder = Reflect.apply(target2, thisArg, argArray);
89
+ return themeBuilderIntercept(builder, themeBuilderInterceptOpts);
90
+ }
91
+ });
92
+ }
93
+ return out;
94
+ }
95
+ });
96
+ }
97
+ function themeBuilderIntercept(themeBuilder, themeBuilderInterceptOpts) {
98
+ return new Proxy(themeBuilder, {
99
+ get(target, key) {
100
+ const out = Reflect.get(target, key);
101
+ if (key === "build") {
102
+ themeBuilderInterceptOpts.onComplete({
103
+ themeBuilder
104
+ });
105
+ }
106
+ return out;
107
+ }
108
+ });
109
+ }
110
+ export {
111
+ generateThemes
112
+ };
113
+ //# sourceMappingURL=generate-themes.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/generate-themes.ts"],
4
+ "mappings": "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",
5
+ "names": ["target"]
6
+ }
@@ -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
@@ -1,3 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import "./cli";
2
+ process.env.TAMAGUI_TARGET = "web";
3
+ require("./cli");
3
4
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": ";AAGA,OAAO;",
4
+ "mappings": ";AAEA,QAAQ,IAAI,iBAAiB;AAE7B,QAAQ,OAAO;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ import "./cli";
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/index.ts"],
4
+ "mappings": ";AAGA,OAAO;",
5
+ "names": []
6
+ }
@@ -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
+ }