transone-cli 0.6.1 → 0.6.3

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/README.md CHANGED
@@ -34,6 +34,8 @@ Scaffolds a new TransOne project in the current directory (refuses to overwrite
34
34
 
35
35
  Starts the development server (Web target only) with optional watch mode (`--no-watch` to disable), custom `--host` / `--port`, and a `--base` path.
36
36
 
37
+ Development bundles are written to `dist/dev/h5/<session>/<generation>`. After a successful rebuild, superseded generations and their resource URLs are removed after a five-second grace period; an in-flight page render delays that period until it finishes. Failed builds discard their temporary output and keep the last successful bundle. Stopping or restarting the server cleans up its own session directory.
38
+
37
39
  ### `transone build`
38
40
 
39
41
  Builds the app for a target:
package/dist/cli.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  createProject,
6
6
  isTargetType,
7
7
  startDevServer
8
- } from "./index-z1sm57t6.js";
8
+ } from "./index-8k9x2k6m.js";
9
9
  import"./index-k1qfvp0y.js";
10
10
  import"./index-yb2wsc7f.js";
11
11
 
package/dist/create.d.ts CHANGED
@@ -11,6 +11,6 @@ export interface CreateProjectResult {
11
11
  /** Published framework version referenced by generated projects. */
12
12
  export declare const TRANSONE_FRAMEWORK_VERSION = "0.4.0";
13
13
  /** Published CLI version referenced by generated projects. */
14
- export declare const TRANSONE_CLI_VERSION = "0.6.1";
14
+ export declare const TRANSONE_CLI_VERSION = "0.6.3";
15
15
  export declare const GITHUB_URL = "https://github.com/geektech-team/transone";
16
16
  export declare function createProject(options?: CreateProjectOptions): CreateProjectResult;
@@ -1369,7 +1369,7 @@ async function runTsc(root, tsconfig) {
1369
1369
  import { existsSync as existsSync4, mkdirSync, writeFileSync } from "fs";
1370
1370
  import { basename as basename2, join as join2 } from "path";
1371
1371
  var TRANSONE_FRAMEWORK_VERSION = "0.4.0";
1372
- var TRANSONE_CLI_VERSION = "0.6.1";
1372
+ var TRANSONE_CLI_VERSION = "0.6.3";
1373
1373
  var GITHUB_URL = "https://github.com/geektech-team/transone";
1374
1374
  function createProject(options = {}) {
1375
1375
  const root = options.root ?? process.cwd();
@@ -1523,6 +1523,7 @@ app.mount();
1523
1523
 
1524
1524
  // src/server.ts
1525
1525
  import { randomUUID } from "crypto";
1526
+ import { rm as rm4 } from "fs/promises";
1526
1527
  import {
1527
1528
  basename as basename3,
1528
1529
  extname,
@@ -1766,6 +1767,7 @@ function isRecursiveWatchUnsupported(error) {
1766
1767
  var DEVELOPMENT_URL_PREFIX = "/dev";
1767
1768
  var INVALID_DEVELOPMENT_DIRECTORY_MESSAGE = "Development output must be a subdirectory of the project root";
1768
1769
  var LIVE_RELOAD_PATH = "/__transone/reload";
1770
+ var DEVELOPMENT_OUTPUT_RETENTION_MS = 5000;
1769
1771
  var WATCHED_EXTENSIONS = new Set([
1770
1772
  ".ts",
1771
1773
  ".js",
@@ -1794,7 +1796,9 @@ async function startDevServer(options = {}) {
1794
1796
  return startWatchingDevServer(options);
1795
1797
  }
1796
1798
  const instance = await createServerInstance(options, false);
1797
- return instance.server;
1799
+ return createServerHandle(() => instance, () => {
1800
+ return;
1801
+ });
1798
1802
  }
1799
1803
  async function startWatchingDevServer(options) {
1800
1804
  let instance = await createServerInstance(options, true);
@@ -1822,7 +1826,8 @@ async function startWatchingDevServer(options) {
1822
1826
  }
1823
1827
  async function restart() {
1824
1828
  watcher.dispose();
1825
- instance.server.stop(true);
1829
+ await instance.server.stop(true);
1830
+ await instance.dispose();
1826
1831
  instance = await createServerInstance(options, true);
1827
1832
  watcher = createProjectWatcher(instance, onChange);
1828
1833
  console.log(`TransOne dev server restarted at http://${instance.server.hostname}:${instance.server.port}`);
@@ -1850,16 +1855,18 @@ async function createServerInstance(options, watch2) {
1850
1855
  const sessionId = createGenerationId();
1851
1856
  const sessionOutDir = resolve6(developmentOutDir, sessionId);
1852
1857
  const artifacts = new Map;
1853
- const buildProject = createDevelopmentBuilder(sessionId, sessionOutDir);
1858
+ const buildProject = createDevelopmentBuilder(sessionId, sessionOutDir, artifacts);
1854
1859
  const liveReload = watch2 ? createLiveReloadHub() : undefined;
1855
1860
  const bundles = new Map;
1856
1861
  const dirtyEntries = new Set;
1857
- const getBundle = async (entry) => {
1862
+ const getBundle = async (entry, acquire = false) => {
1858
1863
  const cached = bundles.get(entry);
1859
1864
  if (watch2 && cached !== undefined && !dirtyEntries.has(entry)) {
1865
+ if (acquire)
1866
+ cached.activeRequests += 1;
1860
1867
  return cached;
1861
1868
  }
1862
- const bundle = await buildProject(entry);
1869
+ const bundle = await buildProject.build(entry);
1863
1870
  if (bundle instanceof Response) {
1864
1871
  if (watch2) {
1865
1872
  dirtyEntries.add(entry);
@@ -1870,6 +1877,8 @@ async function createServerInstance(options, watch2) {
1870
1877
  bundles.set(entry, bundle);
1871
1878
  dirtyEntries.delete(entry);
1872
1879
  }
1880
+ if (acquire)
1881
+ bundle.activeRequests += 1;
1873
1882
  return bundle;
1874
1883
  };
1875
1884
  const server = Bun.serve({
@@ -1890,6 +1899,7 @@ async function createServerInstance(options, watch2) {
1890
1899
  markDirty: (entries) => {
1891
1900
  entries.forEach((entry) => dirtyEntries.add(entry));
1892
1901
  },
1902
+ dispose: buildProject.dispose,
1893
1903
  liveReload
1894
1904
  };
1895
1905
  }
@@ -1897,9 +1907,11 @@ function createServerHandle(getInstance, disposeWatcher) {
1897
1907
  return new Proxy({}, {
1898
1908
  get(_target, property) {
1899
1909
  if (property === "stop") {
1900
- return (closeActiveConnections) => {
1910
+ return async (closeActiveConnections) => {
1901
1911
  disposeWatcher();
1902
- getInstance().server.stop(closeActiveConnections);
1912
+ const instance = getInstance();
1913
+ await instance.server.stop(closeActiveConnections);
1914
+ await instance.dispose();
1903
1915
  };
1904
1916
  }
1905
1917
  const server = getInstance().server;
@@ -1913,7 +1925,7 @@ async function serveProjectRequest(request, config, pages, getBundle, artifacts,
1913
1925
  const route = pageRouteForPathname(pages, pathname);
1914
1926
  if (route !== undefined) {
1915
1927
  const entry = pages[route];
1916
- const bundle = await getBundle(entry);
1928
+ const bundle = await getBundle(entry, true);
1917
1929
  if (bundle instanceof Response) {
1918
1930
  return bundle;
1919
1931
  }
@@ -1936,10 +1948,12 @@ async function serveProjectRequest(request, config, pages, getBundle, artifacts,
1936
1948
  } catch (error) {
1937
1949
  console.error(error);
1938
1950
  return buildFailureResponse();
1951
+ } finally {
1952
+ releaseDevelopmentBundle(bundle);
1939
1953
  }
1940
1954
  }
1941
1955
  if (pathname === "/bundle.js") {
1942
- const bundle = await getBundle(config.entry);
1956
+ const bundle = await getBundle(config.entry, true);
1943
1957
  if (bundle instanceof Response) {
1944
1958
  return bundle;
1945
1959
  }
@@ -1955,6 +1969,8 @@ async function serveProjectRequest(request, config, pages, getBundle, artifacts,
1955
1969
  } catch (error) {
1956
1970
  console.error(error);
1957
1971
  return buildFailureResponse();
1972
+ } finally {
1973
+ releaseDevelopmentBundle(bundle);
1958
1974
  }
1959
1975
  }
1960
1976
  const artifact = artifacts.get(pathname);
@@ -1967,7 +1983,7 @@ async function serveProjectRequest(request, config, pages, getBundle, artifacts,
1967
1983
  });
1968
1984
  }
1969
1985
  if (pathname !== "/" && !pathname.startsWith("/api/") && !/\.[a-zA-Z0-9]+$/.test(pathname)) {
1970
- const bundle = await getBundle(config.entry);
1986
+ const bundle = await getBundle(config.entry, true);
1971
1987
  if (!(bundle instanceof Response)) {
1972
1988
  try {
1973
1989
  const { renderProjectHtml } = await import("./project-ybacfze8.js");
@@ -1988,6 +2004,8 @@ async function serveProjectRequest(request, config, pages, getBundle, artifacts,
1988
2004
  } catch (error) {
1989
2005
  console.error(error);
1990
2006
  return buildFailureResponse();
2007
+ } finally {
2008
+ releaseDevelopmentBundle(bundle);
1991
2009
  }
1992
2010
  }
1993
2011
  }
@@ -2100,17 +2118,73 @@ function isWithinOrEqual(parent, candidate) {
2100
2118
  const pathFromParent = relative4(parent, candidate);
2101
2119
  return pathFromParent === "" || pathFromParent !== ".." && !pathFromParent.startsWith(`..${sep3}`) && !isAbsolute4(pathFromParent);
2102
2120
  }
2103
- function createDevelopmentBuilder(sessionId, sessionOutDir) {
2121
+ function createDevelopmentBuilder(sessionId, sessionOutDir, artifacts) {
2104
2122
  let queue = Promise.resolve();
2105
- return (entry) => {
2106
- const result = queue.then(() => buildProjectBundle(entry, sessionId, sessionOutDir));
2123
+ let disposed = false;
2124
+ let disposal;
2125
+ const latestBundles = new Map;
2126
+ const retirementTimers = new Map;
2127
+ function retire(bundle) {
2128
+ bundle.retire = () => {
2129
+ const previousTimer = retirementTimers.get(bundle.outDir);
2130
+ if (previousTimer)
2131
+ clearTimeout(previousTimer);
2132
+ retirementTimers.delete(bundle.outDir);
2133
+ if (disposed || bundle.activeRequests > 0)
2134
+ return;
2135
+ const timer = setTimeout(() => {
2136
+ retirementTimers.delete(bundle.outDir);
2137
+ removeDevelopmentBundle(bundle, artifacts).catch((error) => console.error(error));
2138
+ }, DEVELOPMENT_OUTPUT_RETENTION_MS);
2139
+ timer.unref();
2140
+ retirementTimers.set(bundle.outDir, timer);
2141
+ };
2142
+ bundle.retire();
2143
+ }
2144
+ function build2(entry) {
2145
+ const result = queue.then(async () => {
2146
+ if (disposed)
2147
+ return buildFailureResponse();
2148
+ const bundle = await buildProjectBundle(entry, sessionId, sessionOutDir);
2149
+ if (!(bundle instanceof Response)) {
2150
+ const previous = latestBundles.get(entry);
2151
+ latestBundles.set(entry, bundle);
2152
+ if (previous)
2153
+ retire(previous);
2154
+ }
2155
+ return bundle;
2156
+ });
2107
2157
  queue = result.then(() => {
2108
2158
  return;
2109
2159
  }, () => {
2110
2160
  return;
2111
2161
  });
2112
2162
  return result;
2113
- };
2163
+ }
2164
+ function dispose() {
2165
+ if (disposal)
2166
+ return disposal;
2167
+ disposed = true;
2168
+ retirementTimers.forEach((timer) => clearTimeout(timer));
2169
+ retirementTimers.clear();
2170
+ disposal = queue.then(async () => {
2171
+ await rm4(sessionOutDir, { recursive: true, force: true });
2172
+ latestBundles.clear();
2173
+ artifacts.clear();
2174
+ });
2175
+ return disposal;
2176
+ }
2177
+ return { build: build2, dispose };
2178
+ }
2179
+ function releaseDevelopmentBundle(bundle) {
2180
+ bundle.activeRequests -= 1;
2181
+ bundle.retire?.();
2182
+ }
2183
+ async function removeDevelopmentBundle(bundle, artifacts) {
2184
+ await rm4(bundle.outDir, { recursive: true, force: true });
2185
+ for (const pathname of bundle.artifacts.keys()) {
2186
+ artifacts.delete(pathname);
2187
+ }
2114
2188
  }
2115
2189
  async function buildProjectBundle(entry, sessionId, sessionOutDir) {
2116
2190
  const generationId = createGenerationId();
@@ -2131,6 +2205,7 @@ async function buildProjectBundle(entry, sessionId, sessionOutDir) {
2131
2205
  asset: "assets/[name]-[hash].[ext]"
2132
2206
  }
2133
2207
  };
2208
+ let success = false;
2134
2209
  try {
2135
2210
  const result = await Bun.build(buildOptions);
2136
2211
  const entryArtifact = result.outputs.find(isEntryJavaScriptOutput);
@@ -2155,7 +2230,10 @@ async function buildProjectBundle(entry, sessionId, sessionOutDir) {
2155
2230
  if (!entry2) {
2156
2231
  throw new Error("Development entry output was not indexed");
2157
2232
  }
2233
+ success = true;
2158
2234
  return {
2235
+ outDir: generationOutDir,
2236
+ activeRequests: 0,
2159
2237
  entry: entry2,
2160
2238
  stylesheets: result.outputs.filter(isStylesheetOutput).map((output) => outputs.get(output)).filter((output) => output !== undefined),
2161
2239
  artifacts: pendingArtifacts
@@ -2163,6 +2241,10 @@ async function buildProjectBundle(entry, sessionId, sessionOutDir) {
2163
2241
  } catch (error) {
2164
2242
  console.error(error);
2165
2243
  return buildFailureResponse();
2244
+ } finally {
2245
+ if (!success) {
2246
+ await rm4(generationOutDir, { recursive: true, force: true });
2247
+ }
2166
2248
  }
2167
2249
  }
2168
2250
  function publishDevelopmentBundle(bundle, artifacts) {
@@ -2202,5 +2284,5 @@ function buildFailureResponse() {
2202
2284
 
2203
2285
  export { TARGET_TYPES, isTargetType, MP_TARGET_TYPES, isMpTargetType, defineConfig, resolveConfig, WebTarget, MpTarget, mpWeixinTarget, mpAlipayTarget, mpBytedanceTarget, mpXiaohongshuTarget, TargetRegistry, targetRegistry, build, createProject, startDevServer };
2204
2286
 
2205
- //# debugId=5C8800968D2B97E564756E2164756E21
2206
- //# sourceMappingURL=index-z1sm57t6.js.map
2287
+ //# debugId=8A1F36BF60A5A63464756E2164756E21
2288
+ //# sourceMappingURL=index-8k9x2k6m.js.map
@@ -16,12 +16,12 @@
16
16
  "import type { NativeDialect, NativeNode, NativeScreen, NativeTextPart } from './types';\n\nfunction text(parts: NativeTextPart[], language: 'swift' | 'kotlin' | 'ark'): string {\n if (language === 'swift') {\n const value = parts.map((part) => part.kind === 'literal' ? part.value : `\\\\(${part.key})`).join('');\n return `\"${value.replace(/\"/g, '\\\\\"')}\"`;\n }\n if (language === 'kotlin') {\n return JSON.stringify(parts.map((part) => part.kind === 'literal' ? part.value : `$${part.key}`).join(''));\n }\n return parts.map((part) => part.kind === 'literal' ? JSON.stringify(part.value) : `this.${part.key}`).join(' + ') || '\"\"';\n}\nfunction action(node: Extract<NativeNode, { kind: 'button' }>, language: 'swift' | 'kotlin' | 'ark'): string {\n const { action } = node;\n const target = language === 'ark' ? `this.${action.key}` : action.key;\n return action.kind === 'increment' ? `${target} ${action.by >= 0 ? '+=' : '-='} ${Math.abs(action.by)}` : `${target} = ${typeof action.value === 'string' ? JSON.stringify(action.value) : action.value}`;\n}\nfunction swiftNode(node: NativeNode, indent = ' '): string {\n if (node.kind === 'container') return `${indent}VStack {\\n${node.children.map((child) => swiftNode(child, `${indent} `)).join('\\n')}\\n${indent}}`;\n if (node.kind === 'text') return `${indent}Text(${text(node.parts, 'swift')})`;\n return `${indent}Button(${text(node.parts, 'swift')}) { ${action(node, 'swift')} }`;\n}\nfunction kotlinNode(node: NativeNode, indent = ' '): string {\n if (node.kind === 'container') return `${indent}Column {\\n${node.children.map((child) => kotlinNode(child, `${indent} `)).join('\\n')}\\n${indent}}`;\n if (node.kind === 'text') return `${indent}Text(${text(node.parts, 'kotlin')})`;\n return `${indent}Button(onClick = { ${action(node, 'kotlin')} }) { Text(${text(node.parts, 'kotlin')}) }`;\n}\nfunction arkNode(node: NativeNode, indent = ' '): string {\n if (node.kind === 'container') return `${indent}Column() {\\n${node.children.map((child) => arkNode(child, `${indent} `)).join('\\n')}\\n${indent}}`;\n if (node.kind === 'text') return `${indent}Text(${text(node.parts, 'ark')})`;\n return `${indent}Button(${text(node.parts, 'ark')}).onClick(() => { ${action(node, 'ark')} })`;\n}\nfunction swiftState(screen: NativeScreen): string { return screen.state.map((item) => ` @State private var ${item.key}: ${typeof item.value === 'number' ? 'Int' : typeof item.value === 'boolean' ? 'Bool' : 'String'} = ${JSON.stringify(item.value)}`).join('\\n'); }\nfunction kotlinState(screen: NativeScreen): string { return screen.state.map((item) => ` var ${item.key} by remember { mutableStateOf(${JSON.stringify(item.value)}) }`).join('\\n'); }\nfunction arkState(screen: NativeScreen): string { return screen.state.map((item) => ` @State ${item.key}: ${typeof item.value === 'number' ? 'number' : typeof item.value === 'boolean' ? 'boolean' : 'string'} = ${JSON.stringify(item.value)}`).join('\\n'); }\n\nexport const IOS_DIALECT: NativeDialect = {\n id: 'app-ios', label: 'iOS 原生 App(SwiftUI)', resourceDirectory: 'TransOneApp/Assets',\n generateProject(screen, config) {\n return {\n 'TransOneApp/TransOneApp.swift': `import SwiftUI\\n\\n@main struct TransOneApp: App { var body: some Scene { WindowGroup { ContentView() } } }\\n`,\n 'TransOneApp/ContentView.swift': `import SwiftUI\\n\\nstruct ContentView: View {\\n${swiftState(screen)}\\n var body: some View {\\n${swiftNode(screen.root)}\\n }\\n}\\n`,\n 'TransOneApp.xcodeproj/project.pbxproj': xcodeProject(config),\n 'TransOneApp/Assets.xcassets/Contents.json': '{\"info\":{\"author\":\"xcode\",\"version\":1}}\\n',\n };\n },\n};\n\nfunction xcodeProject(config: { appName: string; bundleId: string; minPlatformVersion: string }): string {\n const escapedName = config.appName.replace(/\"/g, '\\\\\"');\n return `// !$*UTF8*$!\n{\n archiveVersion = 1;\n classes = {};\n objectVersion = 56;\n objects = {\n\n/* Begin PBXBuildFile section */\n A00100000000000000000001 /* TransOneApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = A00100000000000000000011 /* TransOneApp.swift */; };\n A00100000000000000000002 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A00100000000000000000012 /* ContentView.swift */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n A00100000000000000000011 /* TransOneApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransOneApp.swift; sourceTree = \"<group>\"; };\n A00100000000000000000012 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = \"<group>\"; };\n A00100000000000000000013 /* TransOneApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TransOneApp.app; sourceTree = BUILT_PRODUCTS_DIR; };\n/* End PBXFileReference section */\n\n/* Begin PBXGroup section */\n A00100000000000000000021 = {isa = PBXGroup; children = (A00100000000000000000022 /* TransOneApp */, A00100000000000000000023 /* Products */, ); sourceTree = \"<group>\"; };\n A00100000000000000000022 /* TransOneApp */ = {isa = PBXGroup; children = (A00100000000000000000011 /* TransOneApp.swift */, A00100000000000000000012 /* ContentView.swift */, ); path = TransOneApp; sourceTree = \"<group>\"; };\n A00100000000000000000023 /* Products */ = {isa = PBXGroup; children = (A00100000000000000000013 /* TransOneApp.app */, ); name = Products; sourceTree = \"<group>\"; };\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n A00100000000000000000031 /* TransOneApp */ = {isa = PBXNativeTarget; buildConfigurationList = A00100000000000000000041 /* Build configuration list for PBXNativeTarget \"TransOneApp\" */; buildPhases = (A00100000000000000000032 /* Sources */, A00100000000000000000033 /* Frameworks */, A00100000000000000000034 /* Resources */, ); buildRules = (); dependencies = (); name = TransOneApp; productName = TransOneApp; productReference = A00100000000000000000013 /* TransOneApp.app */; productType = \"com.apple.product-type.application\"; };\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n A00100000000000000000051 /* Project object */ = {isa = PBXProject; attributes = { LastUpgradeCheck = 2700; TargetAttributes = { A00100000000000000000031 = { CreatedOnToolsVersion = 27.0; }; }; }; buildConfigurationList = A00100000000000000000052 /* Build configuration list for PBXProject \"TransOneApp\" */; compatibilityVersion = \"Xcode 14.0\"; developmentRegion = en; hasScannedForEncodings = 0; knownRegions = (en, Base, ); mainGroup = A00100000000000000000021; productRefGroup = A00100000000000000000023; projectDirPath = \"\"; projectRoot = \"\"; targets = (A00100000000000000000031 /* TransOneApp */, ); };\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n A00100000000000000000034 /* Resources */ = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = (); runOnlyForDeploymentPostprocessing = 0; };\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n A00100000000000000000032 /* Sources */ = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = (A00100000000000000000001 /* TransOneApp.swift in Sources */, A00100000000000000000002 /* ContentView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; };\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXFrameworksBuildPhase section */\n A00100000000000000000033 /* Frameworks */ = {isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = (); runOnlyForDeploymentPostprocessing = 0; };\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n A00100000000000000000061 /* Debug */ = {isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; SWIFT_VERSION = 5.0; }; name = Debug; };\n A00100000000000000000062 /* Release */ = {isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; SWIFT_VERSION = 5.0; }; name = Release; };\n A00100000000000000000063 /* Debug */ = {isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; CODE_SIGNING_ALLOWED = NO; GENERATE_INFOPLIST_FILE = YES; IPHONEOS_DEPLOYMENT_TARGET = ${config.minPlatformVersion}; PRODUCT_BUNDLE_IDENTIFIER = ${config.bundleId}; PRODUCT_NAME = \"${escapedName}\"; SDKROOT = iphoneos; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = \"1,2\"; }; name = Debug; };\n A00100000000000000000064 /* Release */ = {isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; CODE_SIGNING_ALLOWED = NO; GENERATE_INFOPLIST_FILE = YES; IPHONEOS_DEPLOYMENT_TARGET = ${config.minPlatformVersion}; PRODUCT_BUNDLE_IDENTIFIER = ${config.bundleId}; PRODUCT_NAME = \"${escapedName}\"; SDKROOT = iphoneos; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = \"1,2\"; }; name = Release; };\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n A00100000000000000000041 /* Build configuration list for PBXNativeTarget \"TransOneApp\" */ = {isa = XCConfigurationList; buildConfigurations = (A00100000000000000000063 /* Debug */, A00100000000000000000064 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; };\n A00100000000000000000052 /* Build configuration list for PBXProject \"TransOneApp\" */ = {isa = XCConfigurationList; buildConfigurations = (A00100000000000000000061 /* Debug */, A00100000000000000000062 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; };\n/* End XCConfigurationList section */\n };\n rootObject = A00100000000000000000051 /* Project object */;\n}\n`;\n}\n\nexport const ANDROID_DIALECT: NativeDialect = {\n id: 'app-android', label: 'Android 原生 App(Jetpack Compose)', resourceDirectory: 'app/src/main/assets',\n generateProject(screen, config) {\n const pkg = config.bundleId.replace(/[^A-Za-z0-9_.]/g, '_'); const path = pkg.replace(/\\./g, '/');\n return {\n 'settings.gradle.kts': `rootProject.name = \"${config.appName}\"\\ninclude(\":app\")\\n`,\n 'build.gradle.kts': 'plugins { }\\n',\n 'app/build.gradle.kts': `plugins { id(\"com.android.application\") version \"8.5.0\" apply false }\\n`,\n 'app/src/main/AndroidManifest.xml': `<manifest package=\"${pkg}\" xmlns:android=\"http://schemas.android.com/apk/res/android\"><application android:label=\"${config.appName}\"><activity android:name=\".MainActivity\" android:exported=\"true\"><intent-filter><action android:name=\"android.intent.action.MAIN\"/><category android:name=\"android.intent.category.LAUNCHER\"/></intent-filter></activity></application></manifest>\\n`,\n [`app/src/main/java/${path}/MainActivity.kt`]: `package ${pkg}\\n\\nimport androidx.activity.ComponentActivity\\nimport androidx.activity.compose.setContent\\nimport androidx.compose.runtime.*\\nimport androidx.compose.foundation.layout.Column\\nimport androidx.compose.material3.*\\n\\nclass MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: android.os.Bundle?) { super.onCreate(savedInstanceState); setContent {\\n${kotlinState(screen)}\\n${kotlinNode(screen.root)}\\n} } }\\n`,\n };\n },\n};\n\nexport const HARMONY_DIALECT: NativeDialect = {\n id: 'app-harmony', label: 'HarmonyOS 原生 App(ArkUI)', resourceDirectory: 'entry/src/main/resources/rawfile',\n generateProject(screen, config) {\n return {\n 'AppScope/app.json5': `{ \"app\": { \"bundleName\": \"${config.bundleId}\", \"vendor\": \"TransOne\", \"versionCode\": 1, \"versionName\": \"1.0.0\" } }\\n`,\n 'AppScope/resources/base/element/string.json': `{ \"string\": [{ \"name\": \"app_name\", \"value\": \"${config.appName}\" }] }\\n`,\n 'entry/src/main/module.json5': '{ \"module\": { \"name\": \"entry\", \"type\": \"entry\", \"mainElement\": \"EntryAbility\" } }\\n',\n 'entry/src/main/ets/entryability/EntryAbility.ets': 'import UIAbility from \\'@ohos.app.ability.UIAbility\\';\\nexport default class EntryAbility extends UIAbility {}\\n',\n 'entry/src/main/ets/pages/Index.ets': `@Entry\\n@Component\\nstruct Index {\\n${arkState(screen)}\\n build() {\\n${arkNode(screen.root)}\\n }\\n}\\n`,\n };\n },\n};\n",
17
17
  "import type { BuildTarget, TargetType } from './types';\nimport { WebTarget } from './web-target';\nimport {\n mpAlipayTarget,\n mpBytedanceTarget,\n mpWeixinTarget,\n mpXiaohongshuTarget,\n} from './mp-target';\nimport { AppTarget } from './app-target';\nimport { ANDROID_DIALECT, HARMONY_DIALECT, IOS_DIALECT } from '../app/dialects';\n\n/**\n * 目标端注册表:编译器按 Target 分发代码生成(positioning 7.3)。\n *\n * 注册 Web 与各小程序 target;\n * app-* 通过平台方言注册原生源码生成器。\n */\nexport class TargetRegistry {\n private readonly targets = new Map<TargetType, BuildTarget>();\n\n public constructor() {\n this.register(new WebTarget());\n this.register(mpWeixinTarget);\n this.register(mpAlipayTarget);\n this.register(mpBytedanceTarget);\n this.register(mpXiaohongshuTarget);\n this.register(new AppTarget(IOS_DIALECT));\n this.register(new AppTarget(ANDROID_DIALECT));\n this.register(new AppTarget(HARMONY_DIALECT));\n }\n\n public register(target: BuildTarget): void {\n this.targets.set(target.type, target);\n }\n\n public resolve(type: TargetType): BuildTarget {\n const target = this.targets.get(type);\n if (!target) {\n throw new Error(`Unknown build target: ${type}`);\n }\n return target;\n }\n\n public getAvailableTargets(): BuildTarget[] {\n return [...this.targets.values()];\n }\n}\n\nexport const targetRegistry = new TargetRegistry();\n",
18
18
  "import { mkdir, rm } from 'node:fs/promises';\nimport { dirname, resolve } from 'node:path';\nimport { resolveConfig } from './config';\nimport { targetRegistry } from './target/registry';\nimport type { BuildOptions, BuildResult } from './types';\n\n/**\n * TransOne 构建入口:解析配置后按 Target 分发到对应编译目标。\n *\n * 同一个入口文档,`transone build --target <端>` 产出对应平台原生产物\n * (positioning 1:一份源码,多端原生产物,零运行时桥接)。\n */\nexport async function build(options: BuildOptions = {}): Promise<BuildResult> {\n const config = await resolveConfig(options);\n\n // 库构建与目标端无关:直接产出可发布的 ESM bundle + .d.ts。\n if (options.library) {\n return buildLibrary(config);\n }\n\n const target = targetRegistry.resolve(config.target);\n return target.build(config, options);\n}\n\nasync function buildLibrary(\n config: Awaited<ReturnType<typeof resolveConfig>>\n): Promise<BuildResult> {\n const library = config.library;\n if (!library) {\n throw new Error('TransOne library build requires config.library');\n }\n\n await rm(library.outDir, { recursive: true, force: true });\n await mkdir(library.outDir, { recursive: true });\n\n if (library.dts) {\n for (const tsconfig of library.tsconfigs) {\n await runTsc(config.root, tsconfig);\n }\n }\n\n const minify = library.minify ?? process.env.TRANSONE_MINIFY !== '0';\n const result = await Bun.build({\n entrypoints: [library.entry],\n outdir: library.outDir,\n root: dirname(library.entry),\n target: 'browser',\n format: 'esm',\n sourcemap: library.sourcemap ? 'linked' : undefined,\n splitting: library.splitting,\n minify,\n external: library.external,\n throw: false,\n });\n\n if (!result.success || result.outputs.length === 0) {\n throw new Error(\n `Failed to build TransOne library:\\n${result.logs\n .map((log) => log.message)\n .join('\\n')}`\n );\n }\n\n const assetsBuilt = result.outputs.map((output) => resolve(output.path));\n return { root: config.root, outDir: library.outDir, assetsBuilt };\n}\n\nasync function runTsc(root: string, tsconfig: string): Promise<void> {\n const proc = Bun.spawn(['bunx', 'tsc', '--project', tsconfig], {\n cwd: root,\n stdout: 'inherit',\n stderr: 'inherit',\n });\n const exitCode = await proc.exited;\n if (exitCode !== 0) {\n throw new Error(\n `tsc --project ${tsconfig} failed with exit code ${exitCode}`\n );\n }\n}\n",
19
- "import { existsSync, mkdirSync, writeFileSync } from 'node:fs';\nimport { basename, join } from 'node:path';\n\nexport interface CreateProjectOptions {\n /** Target directory; defaults to the current working directory. */\n root?: string;\n /** Package name; defaults to the target directory basename. */\n name?: string;\n}\n\nexport interface CreateProjectResult {\n root: string;\n files: string[];\n}\n\n/** Published framework version referenced by generated projects. */\nexport const TRANSONE_FRAMEWORK_VERSION = '0.4.0';\n/** Published CLI version referenced by generated projects. */\nexport const TRANSONE_CLI_VERSION = '0.6.1';\n\nexport const GITHUB_URL = 'https://github.com/geektech-team/transone';\n\ninterface ScaffoldFile {\n path: string;\n content: string;\n}\n\nexport function createProject(\n options: CreateProjectOptions = {}\n): CreateProjectResult {\n const root = options.root ?? process.cwd();\n const name = options.name ?? basename(root);\n const files = scaffoldFiles(name);\n\n const existing = files.filter((file) => existsSync(join(root, file.path)));\n if (existing.length > 0) {\n throw new Error(\n `Refusing to overwrite existing TransOne project files: ${existing\n .map((file) => file.path)\n .join(', ')}`\n );\n }\n\n mkdirSync(join(root, 'src'), { recursive: true });\n const created: string[] = [];\n for (const file of files) {\n writeFileSync(join(root, file.path), file.content, 'utf8');\n created.push(file.path);\n }\n\n return { root, files: created };\n}\n\nfunction scaffoldFiles(name: string): ScaffoldFile[] {\n return [\n {\n path: 'package.json',\n content: `${JSON.stringify(\n {\n name,\n private: true,\n type: 'module',\n scripts: {\n dev: 'transone dev',\n build: 'transone build',\n typecheck: 'bunx tsc --noEmit',\n },\n dependencies: {\n 'transone': `^${TRANSONE_FRAMEWORK_VERSION}`,\n },\n devDependencies: {\n 'transone-cli': `^${TRANSONE_CLI_VERSION}`,\n },\n },\n null,\n 2\n )}\\n`,\n },\n {\n path: 'transone.config.ts',\n content: `import { defineConfig } from 'transone-cli';\\n\\nexport default defineConfig({\\n entry: 'src/main.ts',\\n});\\n`,\n },\n {\n path: 'tsconfig.json',\n content: `${JSON.stringify(\n {\n compilerOptions: {\n target: 'ESNext',\n module: 'ESNext',\n moduleResolution: 'Bundler',\n lib: ['ESNext', 'DOM', 'DOM.Iterable'],\n strict: true,\n noEmit: true,\n skipLibCheck: true,\n verbatimModuleSyntax: true,\n },\n include: ['src/**/*', 'transone.config.ts'],\n },\n null,\n 2\n )}\\n`,\n },\n {\n path: '.gitignore',\n content: 'node_modules/\\ndist/\\n',\n },\n {\n path: 'src/main.ts',\n content: `import { Component, createApp, h, type VNode } from 'transone';\\n\\nclass App extends Component<object, object> {\\n protected initState(): object {\\n return {};\\n }\\n\\n protected initStyles(): void {\\n this.styleManager.addStyle('app-body', {\\n selector: 'body',\\n properties: {\\n margin: 0,\\n background: '#f7fbf6',\\n color: '#142216',\\n fontFamily:\\n \"ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif\",\\n },\\n });\\n this.styleManager.addStyle('app-shell', {\\n selector: '.app-shell',\\n properties: {\\n alignItems: 'center',\\n display: 'flex',\\n flexDirection: 'column',\\n gap: '14px',\\n justifyContent: 'center',\\n minHeight: '100vh',\\n },\\n });\\n this.styleManager.addStyle('app-title', {\\n selector: '.app-title',\\n properties: {\\n fontSize: '64px',\\n letterSpacing: 0,\\n lineHeight: 1.05,\\n margin: 0,\\n },\\n });\\n this.styleManager.addStyle('app-link', {\\n selector: '.app-link',\\n properties: {\\n color: '#2f7c39',\\n fontSize: '16px',\\n textDecoration: 'none',\\n },\\n hover: {\\n textDecoration: 'underline',\\n },\\n });\\n }\\n\\n protected render(): VNode {\\n return h('main', { className: 'app-shell' }, [\\n h('h1', { className: 'app-title' }, ['TransOne']),\\n h(\\n 'a',\\n { className: 'app-link', href: '${GITHUB_URL}' },\\n ['GitHub']\\n ),\\n ]);\\n }\\n}\\n\\nexport const app = createApp({\\n root: App,\\n document: {\\n lang: 'zh-CN',\\n title: 'TransOne',\\n description: '轻量级纯 TypeScript 前端框架',\\n },\\n});\\n\\napp.mount();\\n`,\n },\n ];\n}\n",
20
- "import { randomUUID } from 'node:crypto';\nimport {\n basename,\n extname,\n isAbsolute,\n relative,\n resolve,\n sep,\n} from 'node:path';\nimport { isEntryJavaScriptOutput, isStylesheetOutput } from './build-output';\nimport { resolveConfig } from './config';\nimport { createProxyHandler } from './proxy';\nimport { assertSafeSubdirectory } from './safe-path';\nimport { createFileWatcher, type FileWatcher } from './watch';\nimport type { ResolveConfigOptions, ResolvedConfig } from './types';\n\nconst DEVELOPMENT_URL_PREFIX = '/dev';\nconst INVALID_DEVELOPMENT_DIRECTORY_MESSAGE =\n 'Development output must be a subdirectory of the project root';\nconst LIVE_RELOAD_PATH = '/__transone/reload';\nconst WATCHED_EXTENSIONS = new Set([\n '.ts',\n '.js',\n '.mjs',\n '.cjs',\n '.json',\n '.css',\n '.html',\n]);\nconst IGNORED_WATCH_SEGMENTS = new Set([\n 'dist',\n 'node_modules',\n '.git',\n '.worktrees',\n]);\nconst LIVE_RELOAD_CLIENT_SCRIPT = [\n '<script type=\"module\">',\n 'const transoneReloadSource=new EventSource(',\n JSON.stringify(LIVE_RELOAD_PATH),\n ');',\n 'transoneReloadSource.addEventListener(\"reload\",()=>location.reload());',\n '</script>',\n].join('');\n\ntype DevServer = ReturnType<typeof Bun.serve>;\n\nexport interface StartDevServerOptions extends ResolveConfigOptions {\n watch?: boolean;\n}\n\nexport async function startDevServer(\n options: StartDevServerOptions = {}\n): Promise<DevServer> {\n if (options.watch) {\n return startWatchingDevServer(options);\n }\n const instance = await createServerInstance(options, false);\n return instance.server;\n}\n\nasync function startWatchingDevServer(\n options: StartDevServerOptions\n): Promise<DevServer> {\n let instance = await createServerInstance(options, true);\n let watcher = createProjectWatcher(instance, onChange);\n\n async function onChange(changedPath: string): Promise<void> {\n const configFile = instance.config.configFile;\n const configRelativePath =\n configFile === undefined\n ? undefined\n : toRelativePath(instance.config.root, configFile);\n if (configRelativePath === changedPath) {\n await restart();\n return;\n }\n await rebuildAndReload();\n }\n\n async function rebuildAndReload(): Promise<void> {\n const entries = [...new Set(Object.values(instance.config.pages))];\n instance.markDirty(entries);\n for (const entry of entries) {\n const bundle = await instance.getBundle(entry);\n if (bundle instanceof Response) {\n console.error('TransOne rebuild failed; keeping the last working page.');\n return;\n }\n }\n instance.liveReload?.broadcast();\n }\n\n async function restart(): Promise<void> {\n watcher.dispose();\n instance.server.stop(true);\n instance = await createServerInstance(options, true);\n watcher = createProjectWatcher(instance, onChange);\n console.log(\n `TransOne dev server restarted at http://${instance.server.hostname}:${instance.server.port}`\n );\n }\n\n return createServerHandle(\n () => instance,\n () => watcher.dispose()\n );\n}\n\nfunction createProjectWatcher(\n instance: DevServerInstance,\n onChange: (changedPath: string) => Promise<void>\n): FileWatcher {\n return createFileWatcher({\n root: instance.config.root,\n isRelevant: (relativePath) => isWatchedFile(instance, relativePath),\n onChange: (changedPath) => {\n void onChange(changedPath);\n },\n });\n}\n\ninterface DevServerInstance {\n server: DevServer;\n config: ResolvedConfig;\n getBundle: (entry: string) => Promise<DevelopmentBundle | Response>;\n markDirty: (entries: string[]) => void;\n liveReload: LiveReloadHub | undefined;\n}\n\nasync function createServerInstance(\n options: StartDevServerOptions,\n watch: boolean\n): Promise<DevServerInstance> {\n const config = await resolveConfig(options);\n // 动态加载:project.ts 依赖 'transone/dom'(框架 dist 的 DOM 渲染\n // 模块),仅在需要预渲染页面 HTML 时加载,避免 dev/build 其他路径被拖累。\n const { renderProjectHtml } = await import('./project');\n for (const [route, entry] of Object.entries(config.pages)) {\n await renderProjectHtml(config, {}, entry, route);\n }\n const developmentOutDir = resolve(config.root, 'dist', 'dev', 'h5');\n await assertSafeSubdirectory(\n config.root,\n developmentOutDir,\n INVALID_DEVELOPMENT_DIRECTORY_MESSAGE\n );\n const proxy = createProxyHandler(config.server.proxy);\n const sessionId = createGenerationId();\n const sessionOutDir = resolve(developmentOutDir, sessionId);\n const artifacts = new Map<string, DevelopmentOutput>();\n const buildProject = createDevelopmentBuilder(sessionId, sessionOutDir);\n const liveReload = watch ? createLiveReloadHub() : undefined;\n const bundles = new Map<string, DevelopmentBundle>();\n const dirtyEntries = new Set<string>();\n\n const getBundle = async (\n entry: string\n ): Promise<DevelopmentBundle | Response> => {\n const cached = bundles.get(entry);\n if (watch && cached !== undefined && !dirtyEntries.has(entry)) {\n return cached;\n }\n const bundle = await buildProject(entry);\n if (bundle instanceof Response) {\n if (watch) {\n dirtyEntries.add(entry);\n }\n return bundle;\n }\n if (watch) {\n bundles.set(entry, bundle);\n dirtyEntries.delete(entry);\n }\n return bundle;\n };\n\n const server = Bun.serve({\n hostname: config.server.host,\n port: config.server.port,\n fetch: async (request) => {\n const reloadResponse = liveReload?.handleRequest(request);\n if (reloadResponse) {\n return reloadResponse;\n }\n return (\n (await proxy(request)) ??\n serveProjectRequest(\n request,\n config,\n config.pages,\n getBundle,\n artifacts,\n liveReload\n )\n );\n },\n });\n\n return {\n server,\n config,\n getBundle,\n markDirty: (entries) => {\n entries.forEach((entry) => dirtyEntries.add(entry));\n },\n liveReload,\n };\n}\n\nfunction createServerHandle(\n getInstance: () => DevServerInstance,\n disposeWatcher: () => void\n): DevServer {\n return new Proxy({} as DevServer, {\n get(_target, property) {\n if (property === 'stop') {\n return (closeActiveConnections?: boolean) => {\n disposeWatcher();\n getInstance().server.stop(closeActiveConnections);\n };\n }\n const server = getInstance().server as unknown as Record<\n PropertyKey,\n unknown\n >;\n const value = server[property];\n return typeof value === 'function'\n ? (value as (...args: unknown[]) => unknown).bind(server)\n : value;\n },\n });\n}\n\nasync function serveProjectRequest(\n request: Request,\n config: ResolvedConfig,\n pages: Record<string, string>,\n getBundle: (entry: string) => Promise<DevelopmentBundle | Response>,\n artifacts: Map<string, DevelopmentOutput>,\n liveReload: LiveReloadHub | undefined\n): Promise<Response> {\n const pathname = new URL(request.url).pathname;\n const route = pageRouteForPathname(pages, pathname);\n\n if (route !== undefined) {\n const entry = pages[route];\n const bundle = await getBundle(entry);\n if (bundle instanceof Response) {\n return bundle;\n }\n\n try {\n const { renderProjectHtml } = await import('./project');\n const html = await renderProjectHtml(\n config,\n {\n head: bundle.stylesheets.map(({ pathname: href }) => ({\n tag: 'link',\n attributes: { rel: 'stylesheet', href },\n })),\n scripts: [{ type: 'module', src: bundle.entry.pathname }],\n },\n entry,\n route\n );\n publishDevelopmentBundle(bundle, artifacts);\n return new Response(liveReload ? injectLiveReloadScript(html) : html, {\n headers: {\n 'content-type': 'text/html; charset=utf-8',\n 'cache-control': 'no-store',\n },\n });\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n }\n }\n\n if (pathname === '/bundle.js') {\n const bundle = await getBundle(config.entry);\n if (bundle instanceof Response) {\n return bundle;\n }\n\n try {\n publishDevelopmentBundle(bundle, artifacts);\n return new Response(null, {\n status: 307,\n headers: {\n location: bundle.entry.pathname,\n 'cache-control': 'no-store',\n },\n });\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n }\n }\n\n const artifact = artifacts.get(pathname);\n if (artifact) {\n return new Response(Bun.file(artifact.filePath), {\n headers: {\n 'content-type': artifact.type,\n 'cache-control': 'no-store',\n },\n });\n }\n\n // SPA history fallback:H5 端使用 history 模式路由时,刷新/直达深层路径\n // (如 /rankings/metro)在服务端没有对应页面,回落到入口页由前端路由接管。\n // 排除 API 路径与带扩展名的静态资源请求。\n if (\n pathname !== '/' &&\n !pathname.startsWith('/api/') &&\n !/\\.[a-zA-Z0-9]+$/.test(pathname)\n ) {\n const bundle = await getBundle(config.entry);\n if (!(bundle instanceof Response)) {\n try {\n const { renderProjectHtml } = await import('./project');\n const html = await renderProjectHtml(\n config,\n {\n head: bundle.stylesheets.map(({ pathname: href }) => ({\n tag: 'link',\n attributes: { rel: 'stylesheet', href },\n })),\n scripts: [{ type: 'module', src: bundle.entry.pathname }],\n },\n config.entry,\n '/'\n );\n publishDevelopmentBundle(bundle, artifacts);\n return new Response(liveReload ? injectLiveReloadScript(html) : html, {\n headers: {\n 'content-type': 'text/html; charset=utf-8',\n 'cache-control': 'no-store',\n },\n });\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n }\n }\n }\n\n return new Response('Not found', {\n status: 404,\n headers: { 'cache-control': 'no-store' },\n });\n}\n\nfunction pageRouteForPathname(\n pages: Record<string, string>,\n pathname: string\n): string | undefined {\n if (pages[pathname] !== undefined) {\n return pathname;\n }\n if (pathname === '/index.html') {\n return '/';\n }\n const candidate =\n pathname.length > 1 && pathname.endsWith('/')\n ? pathname.replace(/\\/+$/, '')\n : pathname;\n if (pages[candidate] !== undefined) {\n return candidate;\n }\n if (candidate.endsWith('/index.html')) {\n const base = candidate.slice(0, candidate.length - '/index.html'.length);\n if (base === '') {\n return '/';\n }\n if (pages[base] !== undefined) {\n return base;\n }\n }\n return undefined;\n}\n\nfunction injectLiveReloadScript(html: string): string {\n if (html.includes(LIVE_RELOAD_PATH)) {\n return html;\n }\n if (html.includes('</body>')) {\n return html.replace('</body>', `${LIVE_RELOAD_CLIENT_SCRIPT}</body>`);\n }\n return html + LIVE_RELOAD_CLIENT_SCRIPT;\n}\n\ninterface LiveReloadHub {\n handleRequest(request: Request): Response | undefined;\n broadcast(): void;\n}\n\nconst reloadEncoder = new TextEncoder();\n\nfunction createLiveReloadHub(): LiveReloadHub {\n const controllers = new Set<ReadableStreamDefaultController<Uint8Array>>();\n\n function handleRequest(request: Request): Response | undefined {\n if (new URL(request.url).pathname !== LIVE_RELOAD_PATH) {\n return undefined;\n }\n\n let streamController:\n ReadableStreamDefaultController<Uint8Array> | undefined;\n const stream = new ReadableStream<Uint8Array>({\n start: (controller) => {\n streamController = controller;\n controllers.add(controller);\n try {\n controller.enqueue(reloadEncoder.encode(': connected\\n\\n'));\n } catch {\n controllers.delete(controller);\n }\n },\n cancel: () => {\n if (streamController) {\n controllers.delete(streamController);\n }\n },\n });\n\n return new Response(stream, {\n headers: {\n 'content-type': 'text/event-stream',\n 'cache-control': 'no-store',\n },\n });\n }\n\n function broadcast(): void {\n const message = reloadEncoder.encode('event: reload\\ndata: {}\\n\\n');\n for (const controller of [...controllers]) {\n try {\n controller.enqueue(message);\n } catch {\n controllers.delete(controller);\n }\n }\n }\n\n return { handleRequest, broadcast };\n}\n\nfunction isWatchedFile(\n instance: DevServerInstance,\n relativePath: string\n): boolean {\n if (relativePath === '' || relativePath.startsWith('..')) {\n return false;\n }\n const segments = relativePath.split('/');\n if (segments.some((segment) => IGNORED_WATCH_SEGMENTS.has(segment))) {\n return false;\n }\n const absolutePath = resolve(instance.config.root, relativePath);\n if (isWithinOrEqual(instance.config.build.outDir, absolutePath)) {\n return false;\n }\n const base = basename(absolutePath);\n if (base.startsWith('.') && absolutePath !== instance.config.configFile) {\n return false;\n }\n return WATCHED_EXTENSIONS.has(extname(base).toLowerCase());\n}\n\nfunction toRelativePath(root: string, absolutePath: string): string {\n return relative(root, absolutePath).split(sep).join('/');\n}\n\nfunction isWithinOrEqual(parent: string, candidate: string): boolean {\n const pathFromParent = relative(parent, candidate);\n return (\n pathFromParent === '' ||\n (pathFromParent !== '..' &&\n !pathFromParent.startsWith(`..${sep}`) &&\n !isAbsolute(pathFromParent))\n );\n}\n\ninterface DevelopmentOutput {\n filePath: string;\n pathname: string;\n type: string;\n}\n\ninterface DevelopmentBundle {\n entry: DevelopmentOutput;\n stylesheets: DevelopmentOutput[];\n artifacts: ReadonlyMap<string, DevelopmentOutput>;\n}\n\nfunction createDevelopmentBuilder(\n sessionId: string,\n sessionOutDir: string\n): (entry: string) => Promise<DevelopmentBundle | Response> {\n let queue = Promise.resolve();\n\n return (entry) => {\n const result = queue.then(() =>\n buildProjectBundle(entry, sessionId, sessionOutDir)\n );\n queue = result.then(\n () => undefined,\n () => undefined\n );\n return result;\n };\n}\n\nasync function buildProjectBundle(\n entry: string,\n sessionId: string,\n sessionOutDir: string\n): Promise<DevelopmentBundle | Response> {\n const generationId = createGenerationId();\n const generationOutDir = resolve(sessionOutDir, generationId);\n const generationUrl = `${DEVELOPMENT_URL_PREFIX}/${sessionId}/${generationId}`;\n const buildOptions = {\n entrypoints: [entry],\n outdir: generationOutDir,\n target: 'browser' as const,\n format: 'esm' as const,\n sourcemap: 'inline' as const,\n write: true,\n throw: false,\n publicPath: `${generationUrl}/`,\n naming: {\n entry: '[name]-[hash].[ext]',\n chunk: '[name]-[hash].[ext]',\n asset: 'assets/[name]-[hash].[ext]',\n },\n };\n\n try {\n const result = await Bun.build(buildOptions);\n const entryArtifact = result.outputs.find(isEntryJavaScriptOutput);\n if (!result.success || !entryArtifact) {\n result.logs.forEach((log) => console.error(log));\n if (!entryArtifact) {\n console.error('Failed to build project bundle: no JavaScript output');\n }\n return buildFailureResponse();\n }\n\n const pendingArtifacts = new Map<string, DevelopmentOutput>();\n const outputs = new Map<\n Awaited<ReturnType<typeof Bun.build>>['outputs'][number],\n DevelopmentOutput\n >();\n\n for (const output of result.outputs) {\n const developmentOutput = createDevelopmentOutput(\n generationOutDir,\n generationUrl,\n output\n );\n if (pendingArtifacts.has(developmentOutput.pathname)) {\n throw new Error(\n `Development output URL collision: ${developmentOutput.pathname}`\n );\n }\n pendingArtifacts.set(developmentOutput.pathname, developmentOutput);\n outputs.set(output, developmentOutput);\n }\n\n const entry = outputs.get(entryArtifact);\n if (!entry) {\n throw new Error('Development entry output was not indexed');\n }\n\n return {\n entry,\n stylesheets: result.outputs\n .filter(isStylesheetOutput)\n .map((output) => outputs.get(output))\n .filter((output): output is DevelopmentOutput => output !== undefined),\n artifacts: pendingArtifacts,\n };\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n }\n}\n\nfunction publishDevelopmentBundle(\n bundle: DevelopmentBundle,\n artifacts: Map<string, DevelopmentOutput>\n): void {\n for (const [pathname, output] of bundle.artifacts) {\n const existing = artifacts.get(pathname);\n if (existing) {\n if (existing.filePath === output.filePath) {\n continue;\n }\n throw new Error(`Development output URL collision: ${pathname}`);\n }\n artifacts.set(pathname, output);\n }\n}\n\nfunction createDevelopmentOutput(\n generationOutDir: string,\n generationUrl: string,\n output: Awaited<ReturnType<typeof Bun.build>>['outputs'][number]\n): DevelopmentOutput {\n const filePath = resolve(output.path);\n const pathFromGeneration = relative(generationOutDir, filePath);\n if (\n pathFromGeneration === '' ||\n pathFromGeneration === '..' ||\n pathFromGeneration.startsWith(`..${sep}`) ||\n isAbsolute(pathFromGeneration)\n ) {\n throw new Error(\n `Development output must not escape outside its generation directory: ${output.path}`\n );\n }\n\n const urlPath = pathFromGeneration\n .split(sep)\n .map((segment) => encodeURIComponent(segment))\n .join('/');\n\n return {\n filePath,\n pathname: `${generationUrl}/${urlPath}`,\n type: output.type,\n };\n}\n\nfunction createGenerationId(): string {\n return randomUUID().replace(/-/g, '');\n}\n\nfunction buildFailureResponse(): Response {\n return new Response('Failed to build project bundle', {\n status: 500,\n headers: { 'cache-control': 'no-store' },\n });\n}\n",
19
+ "import { existsSync, mkdirSync, writeFileSync } from 'node:fs';\nimport { basename, join } from 'node:path';\n\nexport interface CreateProjectOptions {\n /** Target directory; defaults to the current working directory. */\n root?: string;\n /** Package name; defaults to the target directory basename. */\n name?: string;\n}\n\nexport interface CreateProjectResult {\n root: string;\n files: string[];\n}\n\n/** Published framework version referenced by generated projects. */\nexport const TRANSONE_FRAMEWORK_VERSION = '0.4.0';\n/** Published CLI version referenced by generated projects. */\nexport const TRANSONE_CLI_VERSION = '0.6.3';\n\nexport const GITHUB_URL = 'https://github.com/geektech-team/transone';\n\ninterface ScaffoldFile {\n path: string;\n content: string;\n}\n\nexport function createProject(\n options: CreateProjectOptions = {}\n): CreateProjectResult {\n const root = options.root ?? process.cwd();\n const name = options.name ?? basename(root);\n const files = scaffoldFiles(name);\n\n const existing = files.filter((file) => existsSync(join(root, file.path)));\n if (existing.length > 0) {\n throw new Error(\n `Refusing to overwrite existing TransOne project files: ${existing\n .map((file) => file.path)\n .join(', ')}`\n );\n }\n\n mkdirSync(join(root, 'src'), { recursive: true });\n const created: string[] = [];\n for (const file of files) {\n writeFileSync(join(root, file.path), file.content, 'utf8');\n created.push(file.path);\n }\n\n return { root, files: created };\n}\n\nfunction scaffoldFiles(name: string): ScaffoldFile[] {\n return [\n {\n path: 'package.json',\n content: `${JSON.stringify(\n {\n name,\n private: true,\n type: 'module',\n scripts: {\n dev: 'transone dev',\n build: 'transone build',\n typecheck: 'bunx tsc --noEmit',\n },\n dependencies: {\n 'transone': `^${TRANSONE_FRAMEWORK_VERSION}`,\n },\n devDependencies: {\n 'transone-cli': `^${TRANSONE_CLI_VERSION}`,\n },\n },\n null,\n 2\n )}\\n`,\n },\n {\n path: 'transone.config.ts',\n content: `import { defineConfig } from 'transone-cli';\\n\\nexport default defineConfig({\\n entry: 'src/main.ts',\\n});\\n`,\n },\n {\n path: 'tsconfig.json',\n content: `${JSON.stringify(\n {\n compilerOptions: {\n target: 'ESNext',\n module: 'ESNext',\n moduleResolution: 'Bundler',\n lib: ['ESNext', 'DOM', 'DOM.Iterable'],\n strict: true,\n noEmit: true,\n skipLibCheck: true,\n verbatimModuleSyntax: true,\n },\n include: ['src/**/*', 'transone.config.ts'],\n },\n null,\n 2\n )}\\n`,\n },\n {\n path: '.gitignore',\n content: 'node_modules/\\ndist/\\n',\n },\n {\n path: 'src/main.ts',\n content: `import { Component, createApp, h, type VNode } from 'transone';\\n\\nclass App extends Component<object, object> {\\n protected initState(): object {\\n return {};\\n }\\n\\n protected initStyles(): void {\\n this.styleManager.addStyle('app-body', {\\n selector: 'body',\\n properties: {\\n margin: 0,\\n background: '#f7fbf6',\\n color: '#142216',\\n fontFamily:\\n \"ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif\",\\n },\\n });\\n this.styleManager.addStyle('app-shell', {\\n selector: '.app-shell',\\n properties: {\\n alignItems: 'center',\\n display: 'flex',\\n flexDirection: 'column',\\n gap: '14px',\\n justifyContent: 'center',\\n minHeight: '100vh',\\n },\\n });\\n this.styleManager.addStyle('app-title', {\\n selector: '.app-title',\\n properties: {\\n fontSize: '64px',\\n letterSpacing: 0,\\n lineHeight: 1.05,\\n margin: 0,\\n },\\n });\\n this.styleManager.addStyle('app-link', {\\n selector: '.app-link',\\n properties: {\\n color: '#2f7c39',\\n fontSize: '16px',\\n textDecoration: 'none',\\n },\\n hover: {\\n textDecoration: 'underline',\\n },\\n });\\n }\\n\\n protected render(): VNode {\\n return h('main', { className: 'app-shell' }, [\\n h('h1', { className: 'app-title' }, ['TransOne']),\\n h(\\n 'a',\\n { className: 'app-link', href: '${GITHUB_URL}' },\\n ['GitHub']\\n ),\\n ]);\\n }\\n}\\n\\nexport const app = createApp({\\n root: App,\\n document: {\\n lang: 'zh-CN',\\n title: 'TransOne',\\n description: '轻量级纯 TypeScript 前端框架',\\n },\\n});\\n\\napp.mount();\\n`,\n },\n ];\n}\n",
20
+ "import { randomUUID } from 'node:crypto';\nimport { rm } from 'node:fs/promises';\nimport {\n basename,\n extname,\n isAbsolute,\n relative,\n resolve,\n sep,\n} from 'node:path';\nimport { isEntryJavaScriptOutput, isStylesheetOutput } from './build-output';\nimport { resolveConfig } from './config';\nimport { createProxyHandler } from './proxy';\nimport { assertSafeSubdirectory } from './safe-path';\nimport { createFileWatcher, type FileWatcher } from './watch';\nimport type { ResolveConfigOptions, ResolvedConfig } from './types';\n\nconst DEVELOPMENT_URL_PREFIX = '/dev';\nconst INVALID_DEVELOPMENT_DIRECTORY_MESSAGE =\n 'Development output must be a subdirectory of the project root';\nconst LIVE_RELOAD_PATH = '/__transone/reload';\nconst DEVELOPMENT_OUTPUT_RETENTION_MS = 5_000;\nconst WATCHED_EXTENSIONS = new Set([\n '.ts',\n '.js',\n '.mjs',\n '.cjs',\n '.json',\n '.css',\n '.html',\n]);\nconst IGNORED_WATCH_SEGMENTS = new Set([\n 'dist',\n 'node_modules',\n '.git',\n '.worktrees',\n]);\nconst LIVE_RELOAD_CLIENT_SCRIPT = [\n '<script type=\"module\">',\n 'const transoneReloadSource=new EventSource(',\n JSON.stringify(LIVE_RELOAD_PATH),\n ');',\n 'transoneReloadSource.addEventListener(\"reload\",()=>location.reload());',\n '</script>',\n].join('');\n\ntype DevServer = ReturnType<typeof Bun.serve>;\n\nexport interface StartDevServerOptions extends ResolveConfigOptions {\n watch?: boolean;\n}\n\nexport async function startDevServer(\n options: StartDevServerOptions = {}\n): Promise<DevServer> {\n if (options.watch) {\n return startWatchingDevServer(options);\n }\n const instance = await createServerInstance(options, false);\n return createServerHandle(\n () => instance,\n () => undefined\n );\n}\n\nasync function startWatchingDevServer(\n options: StartDevServerOptions\n): Promise<DevServer> {\n let instance = await createServerInstance(options, true);\n let watcher = createProjectWatcher(instance, onChange);\n\n async function onChange(changedPath: string): Promise<void> {\n const configFile = instance.config.configFile;\n const configRelativePath =\n configFile === undefined\n ? undefined\n : toRelativePath(instance.config.root, configFile);\n if (configRelativePath === changedPath) {\n await restart();\n return;\n }\n await rebuildAndReload();\n }\n\n async function rebuildAndReload(): Promise<void> {\n const entries = [...new Set(Object.values(instance.config.pages))];\n instance.markDirty(entries);\n for (const entry of entries) {\n const bundle = await instance.getBundle(entry);\n if (bundle instanceof Response) {\n console.error(\n 'TransOne rebuild failed; keeping the last working page.'\n );\n return;\n }\n }\n instance.liveReload?.broadcast();\n }\n\n async function restart(): Promise<void> {\n watcher.dispose();\n await instance.server.stop(true);\n await instance.dispose();\n instance = await createServerInstance(options, true);\n watcher = createProjectWatcher(instance, onChange);\n console.log(\n `TransOne dev server restarted at http://${instance.server.hostname}:${instance.server.port}`\n );\n }\n\n return createServerHandle(\n () => instance,\n () => watcher.dispose()\n );\n}\n\nfunction createProjectWatcher(\n instance: DevServerInstance,\n onChange: (changedPath: string) => Promise<void>\n): FileWatcher {\n return createFileWatcher({\n root: instance.config.root,\n isRelevant: (relativePath) => isWatchedFile(instance, relativePath),\n onChange: (changedPath) => {\n void onChange(changedPath);\n },\n });\n}\n\ninterface DevServerInstance {\n server: DevServer;\n config: ResolvedConfig;\n getBundle: (\n entry: string,\n acquire?: boolean\n ) => Promise<DevelopmentBundle | Response>;\n markDirty: (entries: string[]) => void;\n dispose: () => Promise<void>;\n liveReload: LiveReloadHub | undefined;\n}\n\nasync function createServerInstance(\n options: StartDevServerOptions,\n watch: boolean\n): Promise<DevServerInstance> {\n const config = await resolveConfig(options);\n // 动态加载:project.ts 依赖 'transone/dom'(框架 dist 的 DOM 渲染\n // 模块),仅在需要预渲染页面 HTML 时加载,避免 dev/build 其他路径被拖累。\n const { renderProjectHtml } = await import('./project');\n for (const [route, entry] of Object.entries(config.pages)) {\n await renderProjectHtml(config, {}, entry, route);\n }\n const developmentOutDir = resolve(config.root, 'dist', 'dev', 'h5');\n await assertSafeSubdirectory(\n config.root,\n developmentOutDir,\n INVALID_DEVELOPMENT_DIRECTORY_MESSAGE\n );\n const proxy = createProxyHandler(config.server.proxy);\n const sessionId = createGenerationId();\n const sessionOutDir = resolve(developmentOutDir, sessionId);\n const artifacts = new Map<string, DevelopmentOutput>();\n const buildProject = createDevelopmentBuilder(\n sessionId,\n sessionOutDir,\n artifacts\n );\n const liveReload = watch ? createLiveReloadHub() : undefined;\n const bundles = new Map<string, DevelopmentBundle>();\n const dirtyEntries = new Set<string>();\n\n const getBundle = async (\n entry: string,\n acquire = false\n ): Promise<DevelopmentBundle | Response> => {\n const cached = bundles.get(entry);\n if (watch && cached !== undefined && !dirtyEntries.has(entry)) {\n if (acquire) cached.activeRequests += 1;\n return cached;\n }\n const bundle = await buildProject.build(entry);\n if (bundle instanceof Response) {\n if (watch) {\n dirtyEntries.add(entry);\n }\n return bundle;\n }\n if (watch) {\n bundles.set(entry, bundle);\n dirtyEntries.delete(entry);\n }\n if (acquire) bundle.activeRequests += 1;\n return bundle;\n };\n\n const server = Bun.serve({\n hostname: config.server.host,\n port: config.server.port,\n fetch: async (request) => {\n const reloadResponse = liveReload?.handleRequest(request);\n if (reloadResponse) {\n return reloadResponse;\n }\n return (\n (await proxy(request)) ??\n serveProjectRequest(\n request,\n config,\n config.pages,\n getBundle,\n artifacts,\n liveReload\n )\n );\n },\n });\n\n return {\n server,\n config,\n getBundle,\n markDirty: (entries) => {\n entries.forEach((entry) => dirtyEntries.add(entry));\n },\n dispose: buildProject.dispose,\n liveReload,\n };\n}\n\nfunction createServerHandle(\n getInstance: () => DevServerInstance,\n disposeWatcher: () => void\n): DevServer {\n return new Proxy({} as DevServer, {\n get(_target, property) {\n if (property === 'stop') {\n return async (closeActiveConnections?: boolean) => {\n disposeWatcher();\n const instance = getInstance();\n await instance.server.stop(closeActiveConnections);\n await instance.dispose();\n };\n }\n const server = getInstance().server as unknown as Record<\n PropertyKey,\n unknown\n >;\n const value = server[property];\n return typeof value === 'function'\n ? (value as (...args: unknown[]) => unknown).bind(server)\n : value;\n },\n });\n}\n\nasync function serveProjectRequest(\n request: Request,\n config: ResolvedConfig,\n pages: Record<string, string>,\n getBundle: (\n entry: string,\n acquire?: boolean\n ) => Promise<DevelopmentBundle | Response>,\n artifacts: Map<string, DevelopmentOutput>,\n liveReload: LiveReloadHub | undefined\n): Promise<Response> {\n const pathname = new URL(request.url).pathname;\n const route = pageRouteForPathname(pages, pathname);\n\n if (route !== undefined) {\n const entry = pages[route];\n const bundle = await getBundle(entry, true);\n if (bundle instanceof Response) {\n return bundle;\n }\n\n try {\n const { renderProjectHtml } = await import('./project');\n const html = await renderProjectHtml(\n config,\n {\n head: bundle.stylesheets.map(({ pathname: href }) => ({\n tag: 'link',\n attributes: { rel: 'stylesheet', href },\n })),\n scripts: [{ type: 'module', src: bundle.entry.pathname }],\n },\n entry,\n route\n );\n publishDevelopmentBundle(bundle, artifacts);\n return new Response(liveReload ? injectLiveReloadScript(html) : html, {\n headers: {\n 'content-type': 'text/html; charset=utf-8',\n 'cache-control': 'no-store',\n },\n });\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n } finally {\n releaseDevelopmentBundle(bundle);\n }\n }\n\n if (pathname === '/bundle.js') {\n const bundle = await getBundle(config.entry, true);\n if (bundle instanceof Response) {\n return bundle;\n }\n\n try {\n publishDevelopmentBundle(bundle, artifacts);\n return new Response(null, {\n status: 307,\n headers: {\n location: bundle.entry.pathname,\n 'cache-control': 'no-store',\n },\n });\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n } finally {\n releaseDevelopmentBundle(bundle);\n }\n }\n\n const artifact = artifacts.get(pathname);\n if (artifact) {\n return new Response(Bun.file(artifact.filePath), {\n headers: {\n 'content-type': artifact.type,\n 'cache-control': 'no-store',\n },\n });\n }\n\n // SPA history fallback:H5 端使用 history 模式路由时,刷新/直达深层路径\n // (如 /rankings/metro)在服务端没有对应页面,回落到入口页由前端路由接管。\n // 排除 API 路径与带扩展名的静态资源请求。\n if (\n pathname !== '/' &&\n !pathname.startsWith('/api/') &&\n !/\\.[a-zA-Z0-9]+$/.test(pathname)\n ) {\n const bundle = await getBundle(config.entry, true);\n if (!(bundle instanceof Response)) {\n try {\n const { renderProjectHtml } = await import('./project');\n const html = await renderProjectHtml(\n config,\n {\n head: bundle.stylesheets.map(({ pathname: href }) => ({\n tag: 'link',\n attributes: { rel: 'stylesheet', href },\n })),\n scripts: [{ type: 'module', src: bundle.entry.pathname }],\n },\n config.entry,\n '/'\n );\n publishDevelopmentBundle(bundle, artifacts);\n return new Response(liveReload ? injectLiveReloadScript(html) : html, {\n headers: {\n 'content-type': 'text/html; charset=utf-8',\n 'cache-control': 'no-store',\n },\n });\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n } finally {\n releaseDevelopmentBundle(bundle);\n }\n }\n }\n\n return new Response('Not found', {\n status: 404,\n headers: { 'cache-control': 'no-store' },\n });\n}\n\nfunction pageRouteForPathname(\n pages: Record<string, string>,\n pathname: string\n): string | undefined {\n if (pages[pathname] !== undefined) {\n return pathname;\n }\n if (pathname === '/index.html') {\n return '/';\n }\n const candidate =\n pathname.length > 1 && pathname.endsWith('/')\n ? pathname.replace(/\\/+$/, '')\n : pathname;\n if (pages[candidate] !== undefined) {\n return candidate;\n }\n if (candidate.endsWith('/index.html')) {\n const base = candidate.slice(0, candidate.length - '/index.html'.length);\n if (base === '') {\n return '/';\n }\n if (pages[base] !== undefined) {\n return base;\n }\n }\n return undefined;\n}\n\nfunction injectLiveReloadScript(html: string): string {\n if (html.includes(LIVE_RELOAD_PATH)) {\n return html;\n }\n if (html.includes('</body>')) {\n return html.replace('</body>', `${LIVE_RELOAD_CLIENT_SCRIPT}</body>`);\n }\n return html + LIVE_RELOAD_CLIENT_SCRIPT;\n}\n\ninterface LiveReloadHub {\n handleRequest(request: Request): Response | undefined;\n broadcast(): void;\n}\n\nconst reloadEncoder = new TextEncoder();\n\nfunction createLiveReloadHub(): LiveReloadHub {\n const controllers = new Set<ReadableStreamDefaultController<Uint8Array>>();\n\n function handleRequest(request: Request): Response | undefined {\n if (new URL(request.url).pathname !== LIVE_RELOAD_PATH) {\n return undefined;\n }\n\n let streamController:\n ReadableStreamDefaultController<Uint8Array> | undefined;\n const stream = new ReadableStream<Uint8Array>({\n start: (controller) => {\n streamController = controller;\n controllers.add(controller);\n try {\n controller.enqueue(reloadEncoder.encode(': connected\\n\\n'));\n } catch {\n controllers.delete(controller);\n }\n },\n cancel: () => {\n if (streamController) {\n controllers.delete(streamController);\n }\n },\n });\n\n return new Response(stream, {\n headers: {\n 'content-type': 'text/event-stream',\n 'cache-control': 'no-store',\n },\n });\n }\n\n function broadcast(): void {\n const message = reloadEncoder.encode('event: reload\\ndata: {}\\n\\n');\n for (const controller of [...controllers]) {\n try {\n controller.enqueue(message);\n } catch {\n controllers.delete(controller);\n }\n }\n }\n\n return { handleRequest, broadcast };\n}\n\nfunction isWatchedFile(\n instance: DevServerInstance,\n relativePath: string\n): boolean {\n if (relativePath === '' || relativePath.startsWith('..')) {\n return false;\n }\n const segments = relativePath.split('/');\n if (segments.some((segment) => IGNORED_WATCH_SEGMENTS.has(segment))) {\n return false;\n }\n const absolutePath = resolve(instance.config.root, relativePath);\n if (isWithinOrEqual(instance.config.build.outDir, absolutePath)) {\n return false;\n }\n const base = basename(absolutePath);\n if (base.startsWith('.') && absolutePath !== instance.config.configFile) {\n return false;\n }\n return WATCHED_EXTENSIONS.has(extname(base).toLowerCase());\n}\n\nfunction toRelativePath(root: string, absolutePath: string): string {\n return relative(root, absolutePath).split(sep).join('/');\n}\n\nfunction isWithinOrEqual(parent: string, candidate: string): boolean {\n const pathFromParent = relative(parent, candidate);\n return (\n pathFromParent === '' ||\n (pathFromParent !== '..' &&\n !pathFromParent.startsWith(`..${sep}`) &&\n !isAbsolute(pathFromParent))\n );\n}\n\ninterface DevelopmentOutput {\n filePath: string;\n pathname: string;\n type: string;\n}\n\ninterface DevelopmentBundle {\n outDir: string;\n activeRequests: number;\n retire?: () => void;\n entry: DevelopmentOutput;\n stylesheets: DevelopmentOutput[];\n artifacts: ReadonlyMap<string, DevelopmentOutput>;\n}\n\nfunction createDevelopmentBuilder(\n sessionId: string,\n sessionOutDir: string,\n artifacts: Map<string, DevelopmentOutput>\n): {\n build: (entry: string) => Promise<DevelopmentBundle | Response>;\n dispose: () => Promise<void>;\n} {\n let queue = Promise.resolve();\n let disposed = false;\n let disposal: Promise<void> | undefined;\n const latestBundles = new Map<string, DevelopmentBundle>();\n const retirementTimers = new Map<string, ReturnType<typeof setTimeout>>();\n\n function retire(bundle: DevelopmentBundle): void {\n bundle.retire = () => {\n const previousTimer = retirementTimers.get(bundle.outDir);\n if (previousTimer) clearTimeout(previousTimer);\n retirementTimers.delete(bundle.outDir);\n if (disposed || bundle.activeRequests > 0) return;\n // Let the browser finish loading the HTML response's assets before\n // removing this generation, including when SSR took longer than usual.\n const timer = setTimeout(() => {\n retirementTimers.delete(bundle.outDir);\n void removeDevelopmentBundle(bundle, artifacts).catch(\n (error: unknown) => console.error(error)\n );\n }, DEVELOPMENT_OUTPUT_RETENTION_MS);\n timer.unref();\n retirementTimers.set(bundle.outDir, timer);\n };\n bundle.retire();\n }\n\n function build(entry: string): Promise<DevelopmentBundle | Response> {\n const result = queue.then(async () => {\n if (disposed) return buildFailureResponse();\n const bundle = await buildProjectBundle(entry, sessionId, sessionOutDir);\n if (!(bundle instanceof Response)) {\n const previous = latestBundles.get(entry);\n latestBundles.set(entry, bundle);\n if (previous) retire(previous);\n }\n return bundle;\n });\n queue = result.then(\n () => undefined,\n () => undefined\n );\n return result;\n }\n\n function dispose(): Promise<void> {\n if (disposal) return disposal;\n disposed = true;\n retirementTimers.forEach((timer) => clearTimeout(timer));\n retirementTimers.clear();\n disposal = queue.then(async () => {\n await rm(sessionOutDir, { recursive: true, force: true });\n latestBundles.clear();\n artifacts.clear();\n });\n return disposal;\n }\n\n return { build, dispose };\n}\n\nfunction releaseDevelopmentBundle(bundle: DevelopmentBundle): void {\n bundle.activeRequests -= 1;\n bundle.retire?.();\n}\n\nasync function removeDevelopmentBundle(\n bundle: DevelopmentBundle,\n artifacts: Map<string, DevelopmentOutput>\n): Promise<void> {\n await rm(bundle.outDir, { recursive: true, force: true });\n for (const pathname of bundle.artifacts.keys()) {\n artifacts.delete(pathname);\n }\n}\n\nasync function buildProjectBundle(\n entry: string,\n sessionId: string,\n sessionOutDir: string\n): Promise<DevelopmentBundle | Response> {\n const generationId = createGenerationId();\n const generationOutDir = resolve(sessionOutDir, generationId);\n const generationUrl = `${DEVELOPMENT_URL_PREFIX}/${sessionId}/${generationId}`;\n const buildOptions = {\n entrypoints: [entry],\n outdir: generationOutDir,\n target: 'browser' as const,\n format: 'esm' as const,\n sourcemap: 'inline' as const,\n write: true,\n throw: false,\n publicPath: `${generationUrl}/`,\n naming: {\n entry: '[name]-[hash].[ext]',\n chunk: '[name]-[hash].[ext]',\n asset: 'assets/[name]-[hash].[ext]',\n },\n };\n\n let success = false;\n try {\n const result = await Bun.build(buildOptions);\n const entryArtifact = result.outputs.find(isEntryJavaScriptOutput);\n if (!result.success || !entryArtifact) {\n result.logs.forEach((log) => console.error(log));\n if (!entryArtifact) {\n console.error('Failed to build project bundle: no JavaScript output');\n }\n return buildFailureResponse();\n }\n\n const pendingArtifacts = new Map<string, DevelopmentOutput>();\n const outputs = new Map<\n Awaited<ReturnType<typeof Bun.build>>['outputs'][number],\n DevelopmentOutput\n >();\n\n for (const output of result.outputs) {\n const developmentOutput = createDevelopmentOutput(\n generationOutDir,\n generationUrl,\n output\n );\n if (pendingArtifacts.has(developmentOutput.pathname)) {\n throw new Error(\n `Development output URL collision: ${developmentOutput.pathname}`\n );\n }\n pendingArtifacts.set(developmentOutput.pathname, developmentOutput);\n outputs.set(output, developmentOutput);\n }\n\n const entry = outputs.get(entryArtifact);\n if (!entry) {\n throw new Error('Development entry output was not indexed');\n }\n\n success = true;\n return {\n outDir: generationOutDir,\n activeRequests: 0,\n entry,\n stylesheets: result.outputs\n .filter(isStylesheetOutput)\n .map((output) => outputs.get(output))\n .filter((output): output is DevelopmentOutput => output !== undefined),\n artifacts: pendingArtifacts,\n };\n } catch (error: unknown) {\n console.error(error);\n return buildFailureResponse();\n } finally {\n if (!success) {\n await rm(generationOutDir, { recursive: true, force: true });\n }\n }\n}\n\nfunction publishDevelopmentBundle(\n bundle: DevelopmentBundle,\n artifacts: Map<string, DevelopmentOutput>\n): void {\n for (const [pathname, output] of bundle.artifacts) {\n const existing = artifacts.get(pathname);\n if (existing) {\n if (existing.filePath === output.filePath) {\n continue;\n }\n throw new Error(`Development output URL collision: ${pathname}`);\n }\n artifacts.set(pathname, output);\n }\n}\n\nfunction createDevelopmentOutput(\n generationOutDir: string,\n generationUrl: string,\n output: Awaited<ReturnType<typeof Bun.build>>['outputs'][number]\n): DevelopmentOutput {\n const filePath = resolve(output.path);\n const pathFromGeneration = relative(generationOutDir, filePath);\n if (\n pathFromGeneration === '' ||\n pathFromGeneration === '..' ||\n pathFromGeneration.startsWith(`..${sep}`) ||\n isAbsolute(pathFromGeneration)\n ) {\n throw new Error(\n `Development output must not escape outside its generation directory: ${output.path}`\n );\n }\n\n const urlPath = pathFromGeneration\n .split(sep)\n .map((segment) => encodeURIComponent(segment))\n .join('/');\n\n return {\n filePath,\n pathname: `${generationUrl}/${urlPath}`,\n type: output.type,\n };\n}\n\nfunction createGenerationId(): string {\n return randomUUID().replace(/-/g, '');\n}\n\nfunction buildFailureResponse(): Response {\n return new Response('Failed to build project bundle', {\n status: 500,\n headers: { 'cache-control': 'no-store' },\n });\n}\n",
21
21
  "import type { ProxyOptions, ServerConfig } from './types';\n\nconst HOP_BY_HOP_HEADERS = new Set([\n 'connection',\n 'keep-alive',\n 'proxy-authenticate',\n 'proxy-authorization',\n 'te',\n 'trailer',\n 'transfer-encoding',\n 'upgrade',\n]);\n\ninterface ProxyRule {\n prefix: string;\n target: URL;\n changeOrigin: boolean;\n rewrite?: (path: string) => string;\n}\n\nexport function createProxyHandler(\n proxy: ServerConfig['proxy']\n): (request: Request) => Promise<Response | undefined> {\n const rules = Object.entries(proxy ?? {})\n .map(([prefix, options]) => toProxyRule(prefix, options))\n .sort((first, second) => second.prefix.length - first.prefix.length);\n\n return async (request) => {\n const sourceUrl = new URL(request.url);\n const rule = rules.find(({ prefix }) =>\n sourceUrl.pathname.startsWith(prefix)\n );\n\n if (!rule) {\n return undefined;\n }\n\n const target = createTargetUrl(rule, sourceUrl);\n const headers = createRequestHeaders(request, sourceUrl, rule, target);\n const body =\n request.method === 'GET' || request.method === 'HEAD'\n ? undefined\n : request.body;\n\n try {\n const upstream = await fetch(target, {\n method: request.method,\n headers,\n body,\n signal: request.signal,\n redirect: 'manual',\n });\n\n return new Response(upstream.body, {\n status: upstream.status,\n statusText: upstream.statusText,\n headers: filterHeaders(upstream.headers),\n });\n } catch {\n return new Response('Bad Gateway', { status: 502 });\n }\n };\n}\n\nfunction toProxyRule(prefix: string, value: string | ProxyOptions): ProxyRule {\n const options = typeof value === 'string' ? { target: value } : value;\n\n return {\n prefix,\n target: new URL(options.target),\n changeOrigin: options.changeOrigin ?? false,\n ...(options.rewrite === undefined ? {} : { rewrite: options.rewrite }),\n };\n}\n\nfunction createTargetUrl(rule: ProxyRule, sourceUrl: URL): URL {\n const target = new URL(rule.target);\n const pathname = rule.rewrite?.(sourceUrl.pathname) ?? sourceUrl.pathname;\n\n target.pathname = joinPathnames(target.pathname, pathname);\n target.search = sourceUrl.search;\n return target;\n}\n\nfunction joinPathnames(basePathname: string, pathname: string): string {\n const base = basePathname === '/' ? '' : basePathname.replace(/\\/+$/, '');\n const path = pathname.startsWith('/') ? pathname : `/${pathname}`;\n\n return `${base}${path}` || '/';\n}\n\nfunction createRequestHeaders(\n request: Request,\n sourceUrl: URL,\n rule: ProxyRule,\n target: URL\n): Headers {\n const headers = filterHeaders(request.headers);\n const incomingHost = request.headers.get('host') ?? sourceUrl.host;\n\n headers.set('host', rule.changeOrigin ? target.host : incomingHost);\n return headers;\n}\n\nfunction filterHeaders(source: Headers): Headers {\n const headers = new Headers(source);\n const connection = headers.get('connection');\n\n if (connection) {\n connection.split(',').forEach((header) => {\n const name = header.trim();\n if (name) {\n headers.delete(name);\n }\n });\n }\n\n HOP_BY_HOP_HEADERS.forEach((header) => headers.delete(header));\n return headers;\n}\n",
22
22
  "import { watch, type FSWatcher } from 'node:fs';\nimport { readdir, stat } from 'node:fs/promises';\nimport { isAbsolute, join, relative } from 'node:path';\n\nconst RECURSIVE_WATCH_UNSUPPORTED_ERROR = 'ERR_FEATURE_UNAVAILABLE_ON_PLATFORM';\nconst DEFAULT_DEBOUNCE_MS = 100;\nconst DEFAULT_POLL_INTERVAL_MS = 300;\n\nexport interface FileWatcherOptions {\n root: string;\n isRelevant: (relativePath: string) => boolean;\n onChange: (changedPath: string) => void;\n debounceMs?: number;\n pollIntervalMs?: number;\n}\n\nexport interface FileWatcher {\n dispose: () => void;\n}\n\nexport function createFileWatcher(options: FileWatcherOptions): FileWatcher {\n const debounceMs = options.debounceMs ?? DEFAULT_DEBOUNCE_MS;\n let timer: ReturnType<typeof setTimeout> | undefined;\n const disposers: Array<() => void> = [];\n\n const scheduleChange = (relativePath: string): void => {\n if (timer) {\n clearTimeout(timer);\n }\n timer = setTimeout(() => {\n timer = undefined;\n options.onChange(relativePath);\n }, debounceMs);\n };\n\n disposers.push(() => {\n if (timer) {\n clearTimeout(timer);\n }\n });\n\n const nativeWatcher = tryCreateNativeWatcher(\n options.root,\n options.isRelevant,\n scheduleChange\n );\n if (nativeWatcher) {\n disposers.push(nativeWatcher);\n } else {\n disposers.push(\n createPollingWatcher(\n options.root,\n options.isRelevant,\n options.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS,\n scheduleChange\n )\n );\n }\n\n return {\n dispose: () => {\n disposers.splice(0).reverse().forEach((dispose) => dispose());\n },\n };\n}\n\nfunction tryCreateNativeWatcher(\n root: string,\n isRelevant: (relativePath: string) => boolean,\n onRelevantChange: (relativePath: string) => void\n): (() => void) | undefined {\n let watcher: FSWatcher;\n try {\n watcher = watch(root, { recursive: true }, (_event, filename) => {\n if (typeof filename !== 'string') {\n return;\n }\n const relativePath = toRelativePath(root, filename);\n if (relativePath === undefined || !isRelevant(relativePath)) {\n return;\n }\n onRelevantChange(relativePath);\n });\n } catch (error: unknown) {\n if (isRecursiveWatchUnsupported(error)) {\n return undefined;\n }\n throw error;\n }\n\n return () => watcher.close();\n}\n\nfunction createPollingWatcher(\n root: string,\n isRelevant: (relativePath: string) => boolean,\n intervalMs: number,\n onRelevantChange: (relativePath: string) => void\n): () => void {\n let running = true;\n let snapshot = new Map<string, FileSnapshot>();\n let timer: ReturnType<typeof setInterval> | undefined;\n\n const scan = async (): Promise<void> => {\n if (!running) {\n return;\n }\n const next = new Map<string, FileSnapshot>();\n try {\n await collectRelevantFiles(root, isRelevant, next);\n } catch {\n return;\n }\n\n let changedPath: string | undefined;\n for (const [relativePath, snapshotEntry] of next) {\n const previous = snapshot.get(relativePath);\n if (\n !previous ||\n previous.mtimeMs !== snapshotEntry.mtimeMs ||\n previous.size !== snapshotEntry.size\n ) {\n changedPath = relativePath;\n break;\n }\n }\n if (changedPath === undefined) {\n for (const relativePath of snapshot.keys()) {\n if (!next.has(relativePath)) {\n changedPath = relativePath;\n break;\n }\n }\n }\n snapshot = next;\n if (changedPath !== undefined) {\n onRelevantChange(changedPath);\n }\n };\n\n void scan();\n timer = setInterval(() => {\n void scan();\n }, intervalMs);\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n\n return () => {\n running = false;\n if (timer) {\n clearInterval(timer);\n }\n };\n}\n\ninterface FileSnapshot {\n mtimeMs: number;\n size: number;\n}\n\nasync function collectRelevantFiles(\n root: string,\n isRelevant: (relativePath: string) => boolean,\n output: Map<string, FileSnapshot>\n): Promise<void> {\n const pendingDirectories = [''];\n while (pendingDirectories.length > 0) {\n const relativeDirectory = pendingDirectories.pop();\n if (relativeDirectory === undefined) {\n break;\n }\n const absoluteDirectory = join(root, relativeDirectory);\n let entries;\n try {\n entries = await readdir(absoluteDirectory, { withFileTypes: true });\n } catch {\n continue;\n }\n\n for (const entry of entries) {\n const relativePath =\n relativeDirectory === '' ? entry.name : `${relativeDirectory}/${entry.name}`;\n if (entry.isDirectory()) {\n pendingDirectories.push(relativePath);\n continue;\n }\n if (!entry.isFile() || !isRelevant(relativePath)) {\n continue;\n }\n try {\n const info = await stat(join(root, relativePath));\n output.set(relativePath, { mtimeMs: info.mtimeMs, size: info.size });\n } catch {\n // The file vanished while the tree was being scanned.\n }\n }\n }\n}\n\nfunction toRelativePath(root: string, filename: string): string | undefined {\n const relativePath = isAbsolute(filename)\n ? relative(root, filename)\n : filename.split('\\\\').join('/');\n if (relativePath === '' || relativePath === '..' || relativePath.startsWith('../')) {\n return undefined;\n }\n return relativePath.split('\\\\').join('/');\n}\n\nfunction isRecursiveWatchUnsupported(error: unknown): boolean {\n return (\n typeof error === 'object' &&\n error !== null &&\n 'code' in error &&\n error.code === RECURSIVE_WATCH_UNSUPPORTED_ERROR\n );\n}\n"
23
23
  ],
24
- "mappings": ";;;;;;;;;AAcO,IAAM,eAAe;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAIO,SAAS,YAAY,CAAC,OAAqC;AAAA,EAChE,OACE,OAAO,UAAU,YAChB,aAAmC,SAAS,KAAK;AAAA;AAK/C,IAAM,kBAAkB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAKO,IAAM,mBAAmB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF;AAIO,SAAS,eAAe,CAAC,OAAwC;AAAA,EACtE,OACE,OAAO,UAAU,YAChB,iBAAuC,SAAS,KAAK;AAAA;AAInD,SAAS,cAAc,CAAC,OAAuC;AAAA,EACpE,OACE,OAAO,UAAU,YAChB,gBAAsC,SAAS,KAAK;AAAA;;;AC9DzD;AACA;AA+CA,IAAM,iBAA+B;AAAA,EACnC,OAAO;AAAA,EACP,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,OAAO,CAAC;AAAA,EACV;AAAA,EACA,OAAO;AAAA,IACL,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,gBAAgB;AAAA,EAClB;AACF;AAEO,SAAS,YAAY,CAAC,QAAgC;AAAA,EAC3D,OAAO;AAAA;AAGT,eAAsB,aAAa,CACjC,UAAgC,CAAC,GACR;AAAA,EACzB,MAAM,OAAO,QAAQ,QAAQ,QAAQ,QAAQ,IAAI,CAAC;AAAA,EAClD,MAAM,aAAa,QAAQ,MAAM,oBAAoB;AAAA,EACrD,MAAM,kBAAkB,QAAQ,WAAW;AAAA,EAC3C,MAAM,eAAqC,kBACvC,EAAE,QAAQ,MAAM,IAChB,MAAM,eAAe,UAAU;AAAA,EACnC,IAAI,aAAyB,CAAC;AAAA,EAC9B,IAAI,aAAa,QAAQ;AAAA,IACvB,MAAM,UAAS,aAAa;AAAA,IAC5B,mBAAmB,OAAM;AAAA,IACzB,aAAa;AAAA,EACf;AAAA,EACA,IAAI,iBAAiB;AAAA,IACnB,mBAAmB,QAAQ,MAAM;AAAA,EACnC;AAAA,EACA,MAAM,kBAAkB,kBAAkB,OAAO;AAAA,EACjD,mBAAmB,eAAe;AAAA,EAClC,MAAM,SAAS,YAAY,YAAY,QAAQ,UAAU,CAAC,GAAG,eAAe;AAAA,EAE5E,MAAM,QAAQ,QAAQ,MAAM,OAAO,KAAK;AAAA,EACxC,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,OAAO,SAAS;AAAA,IACzC,MAAM,IAAI,MAAM,8BAA8B,OAAO;AAAA,EACvD;AAAA,EACA,MAAM,QAAQ,MAAM,aAAa,MAAM,OAAO,OAAO,KAAK;AAAA,EAC1D,MAAM,SAAS,cAAc,QAAQ,MAAM;AAAA,EAE3C,MAAM,WAAW,aAAa,OAAO,IAAI,MAAM;AAAA,EAC/C,MAAM,UAAU,UAAU,QACtB,MAAM,aAAa,MAAM,OAAO,SAAS,OAAO;AAAA,IAC9C,cAAc;AAAA,IACd,WAAW;AAAA,EACb,CAAC,IACD;AAAA,EAEJ,MAAM,YAAY,OAAO,OAAO,aAAa,eAAe,MAAM;AAAA,EAClE,MAAM,YAAY,cAAc,OAAO,KAAK,MAAM;AAAA,EAElD,OAAO;AAAA,IACL;AAAA,OACI,aAAa,SAAS,EAAE,WAAW,IAAI,CAAC;AAAA,IAC5C;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,MACN,MAAM,OAAO,OAAO;AAAA,MACpB,MAAM,OAAO,OAAO;AAAA,MACpB,OAAO,OAAO,OAAO;AAAA,IACvB;AAAA,IACA,OAAO;AAAA,MACL,QAAQ,QAAQ,MAAM,OAAO,MAAM,MAAM;AAAA,MACzC,UAAU,kBAAkB,OAAO,MAAM,QAAQ;AAAA,MACjD,gBAAgB,OAAO,MAAM;AAAA,IAC/B;AAAA,OACI,OAAO,UACP,EAAE,SAAS,eAAe,MAAM,OAAO,OAAO,EAAE,IAChD,CAAC;AAAA,OACD,YACA;AAAA,MACE,IAAI,mBACF,MACA,QAAQ,UACR,YAAY,CAAC,GACb,SACA,MACF;AAAA,IACF,IACA,CAAC;AAAA,OACD,gBAAgB,MAAM,IACtB,EAAE,KAAK,MAAM,WAAW,MAAM,QAAQ,QAAQ,aAAa,CAAC,GAAG,QAAQ,KAAK,EAAE,IAC9E,CAAC;AAAA,EACP;AAAA;AAGF,SAAS,cAAc,CAAC,OAAuC;AAAA,EAC7D,OACE,SAAS,KAAK,KACd,iBAAiB,KAAK,CAAC,cAAa,YAAY,MAAK;AAAA;AAIzD,SAAS,aAAa,CACpB,KACA,QACuB;AAAA,EACvB,IAAI,QAAQ,WAAW;AAAA,IACrB;AAAA,EACF;AAAA,EACA,IAAI,eAAe,GAAG,GAAG;AAAA,IACvB,OAAO;AAAA,SAAM,IAAI,SAAS,YAAY,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;AAAA,SACtD,gBAAgB,MAAM,IAAI,IAAI,UAAU,CAAC;AAAA,IAAG;AAAA,EACpD;AAAA,EACA,OAAO;AAAA;AAGT,eAAe,UAAU,CACvB,MACA,gBACA,KACA,QACA,eAC4B;AAAA,EAC5B,OAAO;AAAA,OACD,IAAI,SAAS,YAAY,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;AAAA,IACnD,SAAS,IAAI,WAAW;AAAA,IACxB,UAAU,IAAI,YAAY;AAAA,IAC1B,QAAQ,QAAQ,MAAM,kBAAkB,IAAI,UAAU,cAAc,QAAQ;AAAA,IAC5E,oBAAoB,IAAI,sBAAsB;AAAA,IAC9C,WAAW,QAAQ,MAAM,IAAI,aAAa,QAAQ;AAAA,IAClD,OAAO,IAAI,QACP,MAAM,aAAa,MAAM,QAAQ,MAAM,IAAI,MAAM,QAAQ,aAAa,GAAG,IAAI,OAAO;AAAA,MAClF,cAAc;AAAA,MACd,WAAW;AAAA,IACb,CAAC,IACD;AAAA,EACN;AAAA;AAGF,IAAM,sBAA8C;AAAA,EAClD,aAAa;AAAA,EACb,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,kBAAkB;AACpB;AAGA,SAAS,YAAY,CACnB,IACA,QAC+B;AAAA,EAC/B,IAAI,OAAO,WAAW;AAAA,IACpB;AAAA,EACF;AAAA,EACA,MAAM,SAAS,OAAO,YACpB,OAAO,QAAQ,EAAE,EAAE,OACjB,EAAE,SAAS,CAAC,gBAAgB,SAAS,GAAqC,CAC5E,CACF;AAAA,EACA,MAAM,WAAW,eAAe,MAAM,IAAI,GAAG,UAAU;AAAA,EACvD,OAAO,eAAe,QAAQ,KAAK,SAAS,CAAC;AAAA;AAG/C,SAAS,cAAc,CACrB,QACA,WACyB;AAAA,EACzB,MAAM,SAAS,KAAK,OAAO;AAAA,EAC3B,YAAY,KAAK,UAAU,OAAO,QAAQ,SAAS,GAAG;AAAA,IACpD,IAAI,UAAU;AAAA,MAAW;AAAA,IACzB,MAAM,WAAW,OAAO,UAAU,eAAe,KAAK,QAAQ,GAAG,IAC7D,OAAO,OACP;AAAA,IACJ,MAAM,OAAO,SAAS,QAAQ,KAAK,SAAS,KAAK,IAC7C,eAAe,UAAU,KAAK,IAC9B;AAAA,IACJ,OAAO,eAAe,QAAQ,KAAK;AAAA,MACjC,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,cAAc;AAAA,MACd,UAAU;AAAA,IACZ,CAAC;AAAA,EACH;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,kBAAkB,CACzB,MACA,gBACA,IACA,OACA,QAC2B;AAAA,EAC3B,OAAO;AAAA,OACD,GAAG,SAAS,YAAY,EAAE,MAAM,GAAG,KAAK,IAAI,CAAC;AAAA,IACjD,OAAO,GAAG,SAAS;AAAA,IACnB,QAAQ,QACN,MACA,kBAAkB,GAAG,WAAW,oBAAoB,WAAW,uBACjE;AAAA,IACA,wBAAwB,GAAG,0BAA0B;AAAA,IACrD;AAAA,OACI,GAAG,WAAW,YAAY,EAAE,QAAQ,GAAG,OAAO,IAAI,CAAC;AAAA,OACnD,GAAG,WAAW,YAAY,EAAE,QAAQ,GAAG,OAAO,IAAI,CAAC;AAAA,OACnD,GAAG,aAAa,YAAY,EAAE,UAAU,GAAG,SAAS,IAAI,CAAC;AAAA,OACzD,GAAG,cAAc,YAAY,EAAE,WAAW,GAAG,UAAU,IAAI,CAAC;AAAA,IAChE,YAAY,GAAG,cAAc;AAAA,IAC7B,WAAW,QAAQ,MAAM,GAAG,aAAa,QAAQ;AAAA,OAC7C,GAAG,eAAe,YAAY,EAAE,YAAY,GAAG,WAAW,IAAI,CAAC;AAAA,EACrE;AAAA;AAGF,SAAS,cAAc,CACrB,MACA,SACuB;AAAA,EACvB,OAAO;AAAA,IACL,OAAO,QAAQ,MAAM,QAAQ,SAAS,cAAc;AAAA,IACpD,QAAQ,QAAQ,MAAM,QAAQ,UAAU,MAAM;AAAA,IAC9C,UAAU,QAAQ,YAAY,CAAC;AAAA,IAC/B,YAAY,QAAQ,aAAa,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAC7D,QAAQ,MAAM,IAAI,CACpB;AAAA,IACA,KAAK,QAAQ,OAAO;AAAA,IACpB,WAAW,QAAQ,aAAa;AAAA,IAChC,WAAW,QAAQ,aAAa;AAAA,IAChC,QAAQ,QAAQ;AAAA,EAClB;AAAA;AAGF,SAAS,iBAAiB,CAAC,MAAkC;AAAA,EAC3D,MAAM,WAAW,QAAQ,IAAI,KAAK;AAAA,EAClC,IAAI,CAAC,WAAW,YAAY,KAAK;AAAA,IAC/B,OAAO;AAAA,EACT;AAAA,EAEA,MAAM,cAAc,QAAQ,WAAW,GAAG,IAAI,UAAU,IAAI;AAAA,EAC5D,OAAO,YAAY,SAAS,GAAG,IAAI,YAAY,MAAM,GAAG,EAAE,IAAI;AAAA;AAGhE,SAAS,aAAa,CAAC,QAA2C;AAAA,EAChE,IAAI,WAAW,WAAW;AAAA,IACxB,OAAO;AAAA,EACT;AAAA,EACA,IAAI,aAAa,MAAM,GAAG;AAAA,IACxB,OAAO;AAAA,EACT;AAAA,EACA,MAAM,IAAI,MACR,yBAAyB,OAAO,MAAM,SACpC,iFACA,oCACJ;AAAA;AAGF,eAAe,YAAY,CACzB,MACA,OACA,OACA,UAA2D,CAAC,GAC3B;AAAA,EACjC,MAAM,WACJ,QAAQ,iBAAiB,QAAQ,CAAC,IAAI,EAAE,KAAK,MAAM;AAAA,EACrD,YAAY,OAAO,cAAc,OAAO,QAAQ,SAAS,CAAC,CAAC,GAAG;AAAA,IAC5D,MAAM,aAAa,mBAAmB,OAAO,QAAQ,SAAS;AAAA,IAC9D,MAAM,WAAW,QAAQ,MAAM,SAAS;AAAA,IACxC,IAAI,CAAC,WAAW,QAAQ,GAAG;AAAA,MACzB,MAAM,IAAI,MACR,uCAAuC,gBAAgB,UACzD;AAAA,IACF;AAAA,IACA,SAAS,cAAc;AAAA,EACzB;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,kBAAkB,CACzB,OACA,YAAY,OACJ;AAAA,EACR,IAAI,UAAU,KAAK;AAAA,IACjB,IAAI,WAAW;AAAA,MACb,OAAO;AAAA,IACT;AAAA,IACA,MAAM,IAAI,MACR,4EACF;AAAA,EACF;AAAA,EACA,MAAM,aAAa,MAAM,QAAQ,QAAQ,EAAE;AAAA,EAC3C,IAAI,eAAe,IAAI;AAAA,IACrB,MAAM,IAAI,MAAM,iCAAiC,OAAO;AAAA,EAC1D;AAAA,EACA,OAAO;AAAA;AAGT,IAAI,qBAAqB;AAEzB,eAAe,cAAc,CAC3B,YAC+B;AAAA,EAC/B,IAAI,CAAC,WAAW,UAAU,GAAG;AAAA,IAC3B,OAAO,EAAE,QAAQ,MAAM;AAAA,EACzB;AAAA,EAEA,sBAAsB;AAAA,EACtB,MAAM,SAAS,MACb,UAAG,8BAA8B;AAAA,EAEnC,OAAO,EAAE,QAAQ,MAAM,QAAQ,OAAO,QAAQ;AAAA;AAGhD,SAAS,iBAAiB,CAAC,SAA2C;AAAA,EACpE,MAAM,SAAuB,CAAC;AAAA,EAC9B,MAAM,QAAqB,CAAC;AAAA,EAE5B,IAAI,QAAQ,SAAS,WAAW;AAAA,IAC9B,OAAO,OAAO,QAAQ;AAAA,EACxB;AAAA,EACA,IAAI,QAAQ,SAAS,WAAW;AAAA,IAC9B,OAAO,OAAO,QAAQ;AAAA,EACxB;AAAA,EACA,IAAI,QAAQ,WAAW,WAAW;AAAA,IAChC,MAAM,SAAS,QAAQ;AAAA,EACzB;AAAA,EACA,IAAI,QAAQ,SAAS,WAAW;AAAA,IAC9B,MAAM,WAAW,QAAQ;AAAA,EAC3B;AAAA,EAEA,OAAO;AAAA,OACD,OAAO,KAAK,MAAM,EAAE,SAAS,IAAI,EAAE,OAAO,IAAI,CAAC;AAAA,OAC/C,OAAO,KAAK,KAAK,EAAE,SAAS,IAAI,EAAE,MAAM,IAAI,CAAC;AAAA,EACnD;AAAA;AAGF,SAAS,WAAW,IAAI,SAAqC;AAAA,EAC3D,OAAO,QAAQ,OAAqB,CAAC,QAAQ,WAAW;AAAA,IACtD,MAAM,SAAS,OAAO;AAAA,IACtB,MAAM,QAAQ,OAAO;AAAA,IAErB,OAAO;AAAA,MACL,OAAO,OAAO,SAAS,OAAO;AAAA,MAC9B,OAAO,OAAO,SAAS,OAAO;AAAA,MAC9B,QAAQ;AAAA,QACN,MAAM,QAAQ,QAAQ,OAAO,OAAO;AAAA,QACpC,MAAM,QAAQ,QAAQ,OAAO,OAAO;AAAA,QACpC,OAAO;AAAA,aACF,OAAO,OAAO;AAAA,aACd,QAAQ;AAAA,QACb;AAAA,MACF;AAAA,MACA,OAAO;AAAA,QACL,QAAQ,OAAO,UAAU,OAAO,MAAM;AAAA,QACtC,UAAU,OAAO,YAAY,OAAO,MAAM;AAAA,QAC1C,gBAAgB,OAAO,kBAAkB,OAAO,MAAM;AAAA,MACxD;AAAA,MACA,SAAS,OAAO,WAAW,OAAO;AAAA,MAClC,IAAI,OAAO,MAAM,OAAO;AAAA,MACxB,KAAK,OAAO,OAAO,OAAO;AAAA,IAC5B;AAAA,KACC,cAAc;AAAA;AAGnB,SAAS,kBAAkB,CAAC,QAA+C;AAAA,EACzE,aAAa,QAAQ,QAAQ;AAAA,EAE7B,IAAI,OAAO,UAAU,aAAa,OAAO,OAAO,UAAU,UAAU;AAAA,IAClE,MAAM,IAAI,MAAM,+BAA+B;AAAA,EACjD;AAAA,EACA,IAAI,OAAO,UAAU,WAAW;AAAA,IAC9B,oBAAoB,OAAO,KAAK;AAAA,EAClC;AAAA,EACA,IAAI,OAAO,WAAW,WAAW;AAAA,IAC/B,qBAAqB,OAAO,MAAM;AAAA,EACpC;AAAA,EACA,IAAI,OAAO,UAAU,WAAW;AAAA,IAC9B,oBAAoB,OAAO,KAAK;AAAA,EAClC;AAAA,EACA,IAAI,OAAO,YAAY,WAAW;AAAA,IAChC,sBAAsB,OAAO,OAAO;AAAA,EACtC;AAAA,EACA,IAAI,OAAO,OAAO,WAAW;AAAA,IAC3B,iBAAiB,OAAO,EAAE;AAAA,EAC5B;AAAA,EACA,IAAI,OAAO,QAAQ,WAAW;AAAA,IAC5B,kBAAkB,OAAO,GAAG;AAAA,EAC9B;AAAA;AAGF,SAAS,iBAAiB,CAAC,KAA4C;AAAA,EACrE,aAAa,KAAK,YAAY;AAAA,EAC9B,gBAAgB,IAAI,MAAM,iBAAiB;AAAA,EAC3C,IAAI,eAAe,GAAG,GAAG;AAAA,IACvB,MAAM,WAAW,CAAC,WAAW,YAAY,UAAU,sBAAsB,aAAa,OAAO;AAAA,IAC7F,IAAI,SAAS,KAAK,CAAC,SAAQ,OAAO,IAAG,GAAG;AAAA,MACtC,MAAM,IAAI,MAAM,sDAAsD;AAAA,IACxE;AAAA,IACA,WAAW,YAAY,kBAAkB;AAAA,MACvC,IAAI,IAAI,cAAc,WAAW;AAAA,QAC/B,wBAAwB,IAAI,WAAW,cAAc,UAAU;AAAA,MACjE;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAAA,EACA,wBAAwB,KAAK,YAAY;AAAA;AAG3C,SAAS,uBAAuB,CAC9B,KACA,OAC0B;AAAA,EAC1B,aAAa,KAAK,KAAK;AAAA,EACvB,gBAAgB,IAAI,MAAM,GAAG,YAAY;AAAA,EACzC,WAAW,OAAO,CAAC,WAAW,YAAY,UAAU,sBAAsB,WAAW,GAAY;AAAA,IAC/F,IAAI,IAAI,SAAS,aAAa,OAAO,IAAI,SAAS,UAAU;AAAA,MAC1D,MAAM,IAAI,MAAM,GAAG,SAAS,sBAAsB;AAAA,IACpD;AAAA,EACF;AAAA,EACA,IAAI,IAAI,UAAU,WAAW;AAAA,IAC3B,oBAAoB,IAAI,OAAO,GAAG,aAAa;AAAA,EACjD;AAAA;AAIF,SAAS,gBAAgB,CACvB,IACqC;AAAA,EACrC,aAAa,IAAI,WAAW;AAAA,EAC5B,0BAA0B,IAAI,WAAW;AAAA,EACzC,WAAW,YAAY,iBAAiB;AAAA,IACtC,IAAI,GAAG,cAAc,WAAW;AAAA,MAC9B,0BAA0B,GAAG,WAAW,aAAa,UAAU;AAAA,IACjE;AAAA,EACF;AAAA;AAGF,SAAS,yBAAyB,CAChC,IACA,OACiC;AAAA,EACjC,aAAa,IAAI,KAAK;AAAA,EACtB,gBAAgB,GAAG,MAAM,GAAG,YAAY;AAAA,EAExC,WAAW,OAAO,CAAC,SAAS,UAAU,0BAA0B,WAAW,GAAY;AAAA,IACrF,IAAI,GAAG,SAAS,aAAa,OAAO,GAAG,SAAS,UAAU;AAAA,MACxD,MAAM,IAAI,MAAM,GAAG,SAAS,sBAAsB;AAAA,IACpD;AAAA,EACF;AAAA,EACA,IAAI,GAAG,UAAU,WAAW;AAAA,IAC1B,oBAAoB,GAAG,OAAO,GAAG,aAAa;AAAA,EAChD;AAAA,EACA,WAAW,OAAO,CAAC,UAAU,UAAU,YAAY,YAAY,GAAY;AAAA,IACzE,IAAI,GAAG,SAAS,WAAW;AAAA,MACzB,aAAa,GAAG,MAAM,GAAG,SAAS,KAAK;AAAA,IACzC;AAAA,EACF;AAAA,EACA,IAAI,GAAG,cAAc,WAAW;AAAA,IAC9B,aAAa,GAAG,WAAW,GAAG,iBAAiB;AAAA,IAC/C,YAAY,OAAO,UAAU,OAAO,QAAQ,GAAG,SAAS,GAAG;AAAA,MACzD,aAAa,OAAO,GAAG,mBAAmB,OAAO;AAAA,IACnD;AAAA,EACF;AAAA,EACA,IACE,GAAG,eAAe,aAClB,GAAG,eAAe,QAClB,GAAG,eAAe,OAClB;AAAA,IACA,MAAM,IAAI,MAAM,GAAG,wCAAwC;AAAA,EAC7D;AAAA;AAGF,SAAS,qBAAqB,CAC5B,SACkC;AAAA,EAClC,aAAa,SAAS,gBAAgB;AAAA,EACtC,IAAI,QAAQ,UAAU,aAAa,OAAO,QAAQ,UAAU,UAAU;AAAA,IACpE,MAAM,IAAI,MAAM,uCAAuC;AAAA,EACzD;AAAA,EACA,IAAI,QAAQ,WAAW,aAAa,OAAO,QAAQ,WAAW,UAAU;AAAA,IACtE,MAAM,IAAI,MAAM,wCAAwC;AAAA,EAC1D;AAAA,EACA,IAAI,QAAQ,aAAa,WAAW;AAAA,IAClC,kBAAkB,QAAQ,UAAU,yBAAyB;AAAA,EAC/D;AAAA,EACA,IAAI,QAAQ,cAAc,WAAW;AAAA,IACnC,kBAAkB,QAAQ,WAAW,0BAA0B;AAAA,EACjE;AAAA,EACA,WAAW,OAAO,CAAC,OAAO,aAAa,aAAa,QAAQ,GAAY;AAAA,IACtE,IAAI,QAAQ,SAAS,aAAa,OAAO,QAAQ,SAAS,WAAW;AAAA,MACnE,MAAM,IAAI,MAAM,kBAAkB,uBAAuB;AAAA,IAC3D;AAAA,EACF;AAAA;AAGF,SAAS,iBAAiB,CAAC,OAAgB,MAAoB;AAAA,EAC7D,IAAI,CAAC,MAAM,QAAQ,KAAK,KAAK,MAAM,KAAK,CAAC,SAAS,OAAO,SAAS,QAAQ,GAAG;AAAA,IAC3E,MAAM,IAAI,MAAM,GAAG,kCAAkC;AAAA,EACvD;AAAA;AAGF,SAAS,mBAAmB,CAC1B,OACA,QAAQ,gBACiC;AAAA,EACzC,aAAa,OAAO,KAAK;AAAA,EAEzB,YAAY,OAAO,UAAU,OAAO,QAAQ,KAAK,GAAG;AAAA,IAClD,IAAI,CAAC,MAAM,WAAW,GAAG,GAAG;AAAA,MAC1B,MAAM,IAAI,MAAM,mCAAmC,OAAO;AAAA,IAC5D;AAAA,IACA,IAAI,OAAO,UAAU,UAAU;AAAA,MAC7B,MAAM,IAAI,MAAM,mBAAmB,yBAAyB;AAAA,IAC9D;AAAA,EACF;AAAA;AAGF,SAAS,oBAAoB,CAAC,QAAiD;AAAA,EAC7E,aAAa,QAAQ,eAAe;AAAA,EAEpC,IAAI,OAAO,SAAS,aAAa,OAAO,OAAO,SAAS,UAAU;AAAA,IAChE,MAAM,IAAI,MAAM,qCAAqC;AAAA,EACvD;AAAA,EACA,MAAM,OAAO,OAAO;AAAA,EACpB,IACE,SAAS,cACR,OAAO,SAAS,YACf,CAAC,OAAO,UAAU,IAAI,KACtB,OAAO,KACP,OAAO,QACT;AAAA,IACA,MAAM,IAAI,MACR,2DACF;AAAA,EACF;AAAA,EACA,IAAI,OAAO,UAAU,WAAW;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,aAAa,OAAO,OAAO,qBAAqB;AAAA,EAEhD,YAAY,QAAQ,UAAU,OAAO,QAAQ,OAAO,KAAK,GAAG;AAAA,IAC1D,IAAI,CAAC,OAAO,WAAW,GAAG,GAAG;AAAA,MAC3B,MAAM,IAAI,MAAM,qCAAqC,QAAQ;AAAA,IAC/D;AAAA,IAEA,MAAM,SAAS,eAAe,KAAK;AAAA,IACnC,oBAAoB,MAAM;AAAA,EAC5B;AAAA;AAGF,SAAS,mBAAmB,CAAC,OAA8C;AAAA,EACzE,aAAa,OAAO,cAAc;AAAA,EAClC,IAAI,MAAM,WAAW,aAAa,OAAO,MAAM,WAAW,UAAU;AAAA,IAClE,MAAM,IAAI,MAAM,sCAAsC;AAAA,EACxD;AAAA,EACA,IAAI,MAAM,aAAa,aAAa,OAAO,MAAM,aAAa,UAAU;AAAA,IACtE,MAAM,IAAI,MAAM,wCAAwC;AAAA,EAC1D;AAAA,EACA,IACE,MAAM,mBAAmB,aACzB,OAAO,MAAM,mBAAmB,WAChC;AAAA,IACA,MAAM,IAAI,MAAM,+CAA+C;AAAA,EACjE;AAAA;AAGF,SAAS,cAAc,CAAC,OAAwB;AAAA,EAC9C,IAAI,OAAO,UAAU,UAAU;AAAA,IAC7B,OAAO;AAAA,EACT;AAAA,EAEA,aAAa,OAAO,eAAe;AAAA,EACnC,IAAI,OAAO,MAAM,WAAW,UAAU;AAAA,IACpC,MAAM,IAAI,MAAM,+BAA+B;AAAA,EACjD;AAAA,EACA,IACE,MAAM,iBAAiB,aACvB,OAAO,MAAM,iBAAiB,WAC9B;AAAA,IACA,MAAM,IAAI,MAAM,sCAAsC;AAAA,EACxD;AAAA,EACA,IAAI,MAAM,YAAY,aAAa,OAAO,MAAM,YAAY,YAAY;AAAA,IACtE,MAAM,IAAI,MAAM,kCAAkC;AAAA,EACpD;AAAA,EAEA,OAAO,MAAM;AAAA;AAGf,SAAS,mBAAmB,CAAC,QAAsB;AAAA,EACjD,IAAI;AAAA,IACF,MAAM,MAAM,IAAI,IAAI,MAAM;AAAA,IAC1B,IAAI,IAAI,aAAa,WAAW,IAAI,aAAa,UAAU;AAAA,MACzD;AAAA,IACF;AAAA,IACA,MAAM;AAAA,EAIR,MAAM,IAAI,MAAM,wCAAwC,QAAQ;AAAA;AAGlE,SAAS,YAAY,CACnB,OACA,MAC0C;AAAA,EAC1C,IAAI,CAAC,SAAS,KAAK,GAAG;AAAA,IACpB,MAAM,IAAI,MAAM,GAAG,wBAAwB;AAAA,EAC7C;AAAA;AAGF,SAAS,QAAQ,CAAC,OAAkD;AAAA,EAClE,OACE,OAAO,UAAU,YACjB,UAAU,QACV,CAAC,MAAM,QAAQ,KAAK,MACnB,OAAO,eAAe,KAAK,MAAM,OAAO,aACvC,OAAO,eAAe,KAAK,MAAM;AAAA;AAIvC,SAAS,eAAe,CAAC,MAAe,OAAqB;AAAA,EAC3D,IAAI,SAAS;AAAA,IAAW;AAAA,EACxB,IAAI,OAAO,SAAS;AAAA,IAAU,MAAM,IAAI,MAAM,GAAG,wBAAwB;AAAA,EACzE,IAAI;AAAA,IACF,MAAM,MAAM,IAAI,IAAI,IAAI;AAAA,IACxB,IAAI,IAAI,aAAa,WAAW,IAAI,aAAa;AAAA,MAAU;AAAA,IAC3D,MAAM;AAAA,EACR,MAAM,IAAI,MAAM,GAAG,8BAA8B;AAAA;;;AChqBnD;AACA,oBAAS,wBAAS,yBAAY,sBAAU,iBAAS;;;ACI1C,SAAS,uBAAuB,CACrC,QACS;AAAA,EACT,OAAO,OAAO,SAAS,iBAAiB,iBAAiB,OAAO,IAAI;AAAA;AAG/D,SAAS,kBAAkB,CAAC,QAAmC;AAAA,EACpE,OAAO,UAAU,KAAK,OAAO,IAAI;AAAA;AAGnC,SAAS,gBAAgB,CAAC,MAAuB;AAAA,EAC/C,OAAO,kBAAkB,KAAK,IAAI;AAAA;;;AChBpC;AACA,mDAAwC;AAExC,eAAsB,sBAAsB,CAC1C,MACA,MACA,cACe;AAAA,EACf,IAAI;AAAA,IACF,MAAM,gBAAgB,MAAM,SAAS,IAAI;AAAA,IACzC,MAAM,gBAAgB,MAAM,0BAA0B,IAAI;AAAA,IAE1D,IAAI,CAAC,qBAAqB,eAAe,aAAa,GAAG;AAAA,MACvD,MAAM,IAAI,MAAM,YAAY;AAAA,IAC9B;AAAA,IACA,MAAM;AAAA,IACN,MAAM,IAAI,MAAM,YAAY;AAAA;AAAA;AAIhC,eAAsB,oCAAoC,CACxD,MACA,MACA,eACA,cACe;AAAA,EACf,IAAI;AAAA,IACF,MAAM,cAAc,SAAQ,IAAI;AAAA,IAChC,MAAM,uBAAuB,SAAQ,aAAa;AAAA,IAClD,MAAM,gBAAgB,MAAM,SAAS,IAAI;AAAA,IACzC,MAAM,gBAAgB,MAAM,0BAA0B,IAAI;AAAA,IAC1D,MAAM,yBAAyB,MAAM,SAAS,aAAa;AAAA,IAE3D,IACE,CAAC,qBAAqB,eAAe,aAAa,KAClD,oBAAoB,aAAa,oBAAoB,KACrD,oBAAoB,eAAe,sBAAsB,GACzD;AAAA,MACA,MAAM,IAAI,MAAM,YAAY;AAAA,IAC9B;AAAA,IACA,MAAM;AAAA,IACN,MAAM,IAAI,MAAM,YAAY;AAAA;AAAA;AAIhC,eAAe,yBAAyB,CAAC,MAA+B;AAAA,EACtE,MAAM,WAAW,MAAM,qBAAqB,IAAI;AAAA,EAChD,MAAM,oBAAoB,MAAM,SAAS,QAAQ;AAAA,EACjD,OAAO,SAAQ,mBAAmB,SAAS,UAAU,IAAI,CAAC;AAAA;AAG5D,eAAe,oBAAoB,CAAC,MAA+B;AAAA,EACjE,IAAI,YAAY;AAAA,EAEhB,OAAO,cAAc,QAAQ,SAAS,GAAG;AAAA,IACvC,IAAI;AAAA,MACF,MAAM,MAAM,SAAS;AAAA,MACrB,OAAO;AAAA,MACP,OAAO,OAAgB;AAAA,MACvB,IAAI,CAAC,mBAAmB,KAAK,GAAG;AAAA,QAC9B,MAAM;AAAA,MACR;AAAA;AAAA,IAGF,YAAY,QAAQ,SAAS;AAAA,EAC/B;AAAA,EAEA,MAAM,MAAM,SAAS;AAAA,EACrB,OAAO;AAAA;AAGT,SAAS,kBAAkB,CAAC,OAAyB;AAAA,EACnD,OACE,OAAO,UAAU,YACjB,UAAU,QACV,UAAU,SACV,MAAM,SAAS;AAAA;AAInB,SAAS,oBAAoB,CAAC,MAAc,MAAuB;AAAA,EACjE,MAAM,eAAe,SAAS,MAAM,IAAI;AAAA,EACxC,OACE,iBAAiB,MACjB,iBAAiB,QACjB,CAAC,aAAa,WAAW,KAAK,KAAK,KACnC,CAAC,WAAW,YAAY;AAAA;AAI5B,SAAS,mBAAmB,CAAC,QAAgB,WAA4B;AAAA,EACvE,MAAM,iBAAiB,SAAS,QAAQ,SAAS;AAAA,EACjD,OACE,mBAAmB,MAClB,mBAAmB,QAClB,CAAC,eAAe,WAAW,KAAK,KAAK,KACrC,CAAC,WAAW,cAAc;AAAA;;;AFzFhC,IAAM,mCACJ;AAAA;AAeK,MAAM,UAAiC;AAAA,EAC5B,OAAO;AAAA,EACP,QAAQ;AAAA,OAEX,MAAK,CAChB,QACA,UACsB;AAAA,IACtB,MAAM,UAAU,CAAC,GAAG,IAAI,IAAI,OAAO,OAAO,OAAO,KAAK,CAAC,CAAC;AAAA,IAExD,WAAW,SAAS,SAAS;AAAA,MAC3B,MAAM,qCACJ,OAAO,MACP,OAAO,MAAM,QACb,OACA,gCACF;AAAA,IACF;AAAA,IAGA,QAAQ,sBAAsB,MAAa;AAAA,IAC3C,YAAY,OAAO,UAAU,OAAO,QAAQ,OAAO,KAAK,GAAG;AAAA,MACzD,MAAM,kBAAkB,QAAQ,CAAC,GAAG,OAAO,KAAK;AAAA,IAClD;AAAA,IAEA,MAAM,GAAG,OAAO,MAAM,QAAQ,EAAE,WAAW,MAAM,OAAO,KAAK,CAAC;AAAA,IAC9D,MAAM,MAAM,OAAO,MAAM,QAAQ,EAAE,WAAW,KAAK,CAAC;AAAA,IAEpD,MAAM,eAAe,IAAI;AAAA,IACzB,MAAM,WAAqB,CAAC;AAAA,IAC5B,WAAW,SAAS,SAAS;AAAA,MAC3B,MAAM,QAAQ,MAAM,UAAU,QAAQ,KAAK;AAAA,MAC3C,IAAI,OAAO,UAAU,UAAU;AAAA,QAC7B,SAAS,KAAK,KAAK;AAAA,QACnB;AAAA,MACF;AAAA,MACA,aAAa,IAAI,OAAO,KAAK;AAAA,IAC/B;AAAA,IACA,IAAI,SAAS,SAAS,GAAG;AAAA,MACvB,MAAM,aAAa,QAAQ;AAAA,IAC7B;AAAA,IAEA,MAAM,cAAwB,CAAC;AAAA,IAC/B,YAAY,OAAO,UAAU,OAAO,QAAQ,OAAO,KAAK,GAAG;AAAA,MACzD,MAAM,OAAO,aAAa,IAAI,KAAK;AAAA,MACnC,IAAI,CAAC,MAAM;AAAA,QACT,MAAM,IAAI,MAAM,mCAAmC,OAAO;AAAA,MAC5D;AAAA,MACA,MAAM,eAAe,SAAS,QAAQ,KAAK;AAAA,MAC3C,MAAM,OAAO,MAAM,kBACjB,QACA;AAAA,QACE,MAAM,KAAK,iBAAiB,IAAI,CAAC,WAAW;AAAA,UAC1C,KAAK;AAAA,UACL,YAAY;AAAA,YACV,KAAK;AAAA,YACL,MAAM,WAAW,OAAO,MAAM,QAAQ,cAAc,KAAK;AAAA,UAC3D;AAAA,QACF,EAAE;AAAA,QACF,SAAS,KAAK,iBAAiB,IAAI,CAAC,WAAW;AAAA,UAC7C,MAAM;AAAA,UACN,KAAK,WAAW,OAAO,MAAM,QAAQ,cAAc,KAAK;AAAA,QAC1D,EAAE;AAAA,MACJ,GACA,KAAK,OACL,KACF;AAAA,MACA,MAAM,MAAM,SAAQ,YAAY,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,MACtD,MAAM,UAAU,cAAc,IAAI;AAAA,MAClC,YAAY,KAAK,GAAG,KAAK,QAAQ,YAAY;AAAA,IAC/C;AAAA,IAEA,OAAO;AAAA,MACL,MAAM,OAAO;AAAA,MACb,QAAQ,OAAO,MAAM;AAAA,MACrB;AAAA,IACF;AAAA;AAEJ;AAEA,eAAe,SAAS,CACtB,QACA,OAC6B;AAAA,EAC7B,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,SAAS,MAAM,IAAI,MAAM;AAAA,MACvB,aAAa,CAAC,KAAK;AAAA,MACnB,QAAQ,OAAO,MAAM;AAAA,MACrB,QAAQ;AAAA,MACR,QAAQ;AAAA,MAER,QAAQ,QAAQ,IAAI,oBAAoB;AAAA,MACxC,QAAQ,EAAE,OAAO,gBAAgB,OAAO,sBAAsB;AAAA,MAC9D,OAAO;AAAA,IACT,CAAC;AAAA,IACD,OAAO,OAAgB;AAAA,IACvB,OAAO,kBAAkB,OAAO,CAAC,aAAa,KAAK,CAAC,CAAC;AAAA;AAAA,EAEvD,MAAM,SAAS,OAAO,QAAQ,IAAI,CAAC,WAAW,SAAQ,OAAO,IAAI,CAAC;AAAA,EAClE,MAAM,mBAAmB,OAAO,QAC7B,OAAO,uBAAuB,EAC9B,IAAI,CAAC,WAAW,SAAQ,OAAO,IAAI,CAAC;AAAA,EACvC,MAAM,mBAAmB,OAAO,QAC7B,OAAO,kBAAkB,EACzB,IAAI,CAAC,WAAW,SAAQ,OAAO,IAAI,CAAC;AAAA,EAEvC,IAAI,CAAC,OAAO,WAAW,OAAO,WAAW,KAAK,iBAAiB,WAAW,GAAG;AAAA,IAC3E,OAAO,kBACL,OACA,OAAO,KAAK,IAAI,CAAC,QAAQ,IAAI,OAAO,GACpC;AAAA,MACE,SAAS,OAAO;AAAA,MAChB,WAAW,OAAO,SAAS;AAAA,MAC3B,eAAe,iBAAiB,SAAS;AAAA,IAC3C,CACF;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA;AAGF,SAAS,iBAAiB,CACxB,OACA,MACA,OACQ;AAAA,EACR,MAAM,UAAU;AAAA,IACd,SAAS,CAAC,MAAM,UAAU,+BAA+B;AAAA,IACzD,SAAS,CAAC,MAAM,YAAY,gCAAgC;AAAA,IAC5D,SAAS,CAAC,MAAM,gBAAgB,qCAAqC;AAAA,IACrE,GAAG;AAAA,EACL,EAAE,OAAO,CAAC,WAAW,WAAW,EAAE;AAAA,EAElC,OAAO,GAAG,UAAU,QAAQ,KAAK;AAAA,CAAI;AAAA;AAGvC,SAAS,YAAY,CAAC,UAA2B;AAAA,EAC/C,IAAI,SAAS,WAAW,GAAG;AAAA,IACzB,OAAO,IAAI,MAAM,yCAAyC,SAAS,IAAI;AAAA,EACzE;AAAA,EACA,OAAO,IAAI,MACT;AAAA,EAA0C,SACvC,IAAI,CAAC,YAAY,KAAK,SAAS,EAC/B,KAAK;AAAA,CAAI,GACd;AAAA;AAGF,SAAS,QAAQ,CAAC,QAAwB,OAAuB;AAAA,EAC/D,IAAI,UAAU,KAAK;AAAA,IACjB,OAAO,SAAQ,OAAO,MAAM,QAAQ,YAAY;AAAA,EAClD;AAAA,EACA,MAAM,gBAAgB,MAAM,QAAQ,QAAQ,EAAE;AAAA,EAC9C,IAAI,OAAO,MAAM,gBAAgB;AAAA,IAC/B,OAAO,SAAQ,OAAO,MAAM,QAAQ,eAAe,YAAY;AAAA,EACjE;AAAA,EACA,OAAO,SAAQ,OAAO,MAAM,QAAQ,GAAG,oBAAoB;AAAA;AAG7D,SAAS,UAAU,CACjB,QACA,cACA,OACQ;AAAA,EACR,MAAM,aAAa,UAAS,QAAQ,KAAK,EAAE,MAAM,IAAG,EAAE,KAAK,GAAG;AAAA,EAC9D,IACE,eAAe,MACf,eAAe,QACf,WAAW,WAAW,KAAK,KAC3B,YAAW,UAAU,GACrB;AAAA,IACA,MAAM,IAAI,MACR,oDAAoD,OACtD;AAAA,EACF;AAAA,EAEA,MAAM,cAAc,SAAQ,YAAY;AAAA,EACxC,MAAM,YAAY,UAAS,aAAa,KAAK,EAAE,MAAM,IAAG,EAAE,KAAK,GAAG;AAAA,EAClE,OAAO,KAAK;AAAA;AAGd,SAAS,YAAY,CAAC,OAAwB;AAAA,EAC5C,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA;;;AG/J9D,SAAS,WAAW,CAAC,WAA2B;AAAA,EAC9C,OAAO,UAAU,OAAO,CAAC,EAAE,YAAY,IAAI,UAAU,MAAM,CAAC;AAAA;AAG9D,IAAM,yBAAyB;AAAA,EAC7B,KAAK;AAAA,EACL,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AACZ;AAEO,IAAM,oBAA+B;AAAA,EAC1C,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,WAAW,CAAC,UAAU,OAAO;AAAA,EAC7B,YAAY,CAAC,UAAU,QAAQ;AAAA,EAC/B,mBAAmB;AAAA,EACnB,oBAAoB,CAAC,IAAI,iBAAiB;AAAA,IACxC,OAAO,GAAG;AAAA,IACV,aAAa;AAAA,IACb,aAAa;AAAA,IACb,SAAS,KAAK,uBAAuB;AAAA,EACvC;AAAA,EACA,gBAAgB,CAAC,WAAW;AAAA,IAC1B,wBAAwB;AAAA,IACxB,8BAA8B;AAAA,IAC9B,wBAAwB;AAAA,IACxB,qBAAqB;AAAA,EACvB;AAAA,EACA,eAAe,OAAO;AAAA,IACpB,iBAAiB;AAAA,IACjB,OAAO;AAAA,IACP,iBAAiB;AAAA,EACnB;AAAA,EACA,SAAS;AAAA,EACT,eAAe,CAAC,qBAAqB;AAAA,IACnC,WAAW;AAAA,IACX,eAAe;AAAA,IACf;AAAA,EACF;AACF;AAEO,IAAM,oBAA+B;AAAA,EAC1C,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,WAAW,CAAC,UAAU,KAAK,YAAY,KAAK;AAAA,EAC5C,YAAY,CAAC,UAAU,QAAQ,YAAY,KAAK;AAAA,EAChD,mBAAmB;AAAA,EACnB,oBAAoB,OAAO;AAAA,IACzB,iBAAiB;AAAA,IACjB,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,aAAa;AAAA,EACf;AAAA,EACA,gBAAgB,CAAC,WAAW;AAAA,IAC1B,cAAc;AAAA,IACd,eAAe;AAAA,EACjB;AAAA,EACA,eAAe,OAAO,CAAC;AAAA,EACvB,SAAS;AAAA,EACT,eAAe,CAAC,qBAAqB;AAAA,IACnC,WAAW;AAAA,IACX;AAAA,EACF;AACF;AAEO,IAAM,uBAAkC;AAAA,EAC7C,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,WAAW,CAAC,UAAU,OAAO;AAAA,EAC7B,YAAY,CAAC,UAAU,QAAQ;AAAA,EAC/B,mBAAmB;AAAA,EACnB,oBAAoB,CAAC,IAAI,iBAAiB;AAAA,IACxC,iBAAiB;AAAA,IACjB,aAAa;AAAA,IACb,aAAa;AAAA,IACb,OAAO,GAAG;AAAA,IACV,SAAS,KAAK,uBAAuB;AAAA,EACvC;AAAA,EACA,gBAAgB,CAAC,WAAW;AAAA,IAC1B,wBAAwB;AAAA,IACxB,8BAA8B;AAAA,IAC9B,wBAAwB;AAAA,IACxB,qBAAqB;AAAA,EACvB;AAAA,EACA,eAAe,OAAO,CAAC;AAAA,EACvB,SAAS;AAAA,EACT,eAAe,CAAC,qBAAqB;AAAA,IACnC,WAAW;AAAA,IACX;AAAA,EACF;AACF;AAEO,IAAM,yBAAoC;AAAA,EAC/C,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,WAAW,CAAC,UAAU,OAAO;AAAA,EAC7B,YAAY,CAAC,UAAU,QAAQ;AAAA,EAC/B,mBAAmB;AAAA,EACnB,oBAAoB,CAAC,IAAI,iBAAiB;AAAA,IACxC,OAAO,GAAG;AAAA,IACV,aAAa;AAAA,IACb,aAAa;AAAA,EACf;AAAA,EACA,gBAAgB,CAAC,WAAW;AAAA,IAC1B,wBAAwB;AAAA,IACxB,8BAA8B;AAAA,IAC9B,wBAAwB;AAAA,IACxB,qBAAqB;AAAA,EACvB;AAAA,EACA,eAAe,OAAO,CAAC;AAAA,EACvB,SAAS;AAAA,EACT,eAAe,CAAC,qBAAqB;AAAA,IACnC,WAAW;AAAA,IACX,eAAe;AAAA,IACf;AAAA,EACF;AACF;;;ACnKO,MAAM,SAAgC;AAAA,EACP;AAAA,EAA7B,WAAW,CAAkB,SAAoB;AAAA,IAApB;AAAA;AAAA,MAEzB,IAAI,GAAe;AAAA,IAC5B,OAAO,KAAK,QAAQ;AAAA;AAAA,MAGX,KAAK,GAAW;AAAA,IACzB,OAAO,KAAK,QAAQ;AAAA;AAAA,OAGT,MAAK,CAChB,QACA,UACsB;AAAA,IACtB,IAAI,CAAC,OAAO,IAAI;AAAA,MACd,MAAM,IAAI,MACR,kHACE,qCACJ;AAAA,IACF;AAAA,IAEA,QAAQ,qBAAqB,MAAa;AAAA,IAC1C,OAAO,iBAAiB,QAAQ,KAAK,OAAO;AAAA;AAEhD;AAEO,IAAM,iBAAiB,IAAI,SAAS,iBAAiB;AACrD,IAAM,iBAAiB,IAAI,SAAS,iBAAiB;AACrD,IAAM,oBAAoB,IAAI,SAAS,oBAAoB;AAC3D,IAAM,sBAAsB,IAAI,SAAS,sBAAsB;;;ACnDtE,sBAAa,cAAO,kBAAI;AACxB,uBAAS;AACT,oBAAS,2BAAe;;;ACFxB;AAEO,SAAS,WAAW,CAAC,UAAkB,SAAwB;AAAA,EACpE,OAAO,IAAI,MAAM,kBAAkB,SAAS,QAAQ,MAAM,SAAS;AAAA;;;ACHrE,uBAAS;AAMT,IAAM,aAAa,IAAI,IAAI,CAAC,QAAQ,QAAQ,KAAK,CAAC;AAClD,IAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,QAAQ,KAAK,IAAI,CAAC;AAChD,IAAM,aAAa,IAAI,IAAI,CAAC,SAAS,mBAAmB,YAAY,cAAc,WAAW,UAAU,SAAS,UAAU,gBAAgB,WAAW,CAAC;AAEtJ,eAAsB,mBAAmB,CAAC,OAAsC;AAAA,EAC9E,IAAI,CAAC,YAAW,KAAK;AAAA,IAAG,MAAM,YAAY,OAAO,sCAAQ;AAAA,EACzD,MAAM,KAAK,MAAM,eAAe;AAAA,EAChC,MAAM,SAAS,GAAG,iBAAiB,OAAO,aAAa,OAAO,MAAM,GAAG,GAAG,aAAa,QAAQ,IAAI;AAAA,EACnG,MAAM,YAAY,OAAO,WAAW,KAAK,CAAC,MAAqC,GAAG,mBAAmB,CAAC,CAAC;AAAA,EACvG,IAAI,CAAC;AAAA,IAAW,MAAM,YAAY,OAAO,qCAAiB;AAAA,EAC1D,MAAM,QAAQ,UAAU,IAAI,WAAW,KAAK;AAAA,EAC5C,MAAM,UAAU,IAAI;AAAA,EACpB,WAAW,UAAU,UAAU;AAAA,IAAS,IAAI,GAAG,oBAAoB,MAAM,KAAK,GAAG,aAAa,OAAO,IAAI,GAAG;AAAA,MAC1G,MAAM,SAAS,WAAW,IAAI,QAAQ,KAAK;AAAA,MAAG,IAAI;AAAA,QAAQ,QAAQ,IAAI,OAAO,KAAK,MAAM,MAAM;AAAA,IAChG;AAAA,EACA,MAAM,SAAS,UAAU,QAAQ,KAAK,CAAC,MAAsC,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,QAAQ,MAAM,MAAM,QAAQ;AAAA,EAC7I,MAAM,QAAQ,QAAQ,MAAM,WAAW,KAAK,GAAG,iBAAiB,GAAG;AAAA,EACnE,IAAI,CAAC,SAAS,CAAC,GAAG,0BAA0B,KAAK;AAAA,IAAG,MAAM,YAAY,OAAO,kEAA0B;AAAA,EACvG,MAAM,OAAO,SAAS,IAAI,OAAO,OAAO,IAAI,IAAI,MAAM,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,GAAG,OAAO;AAAA,EACvF,IAAI,KAAK,SAAS;AAAA,IAAa,MAAM,YAAY,OAAO,8DAAY;AAAA,EACpE,OAAO,EAAE,MAAM,UAAU,MAAM,QAAQ,OAAO,OAAO,KAAK;AAAA;AAG5D,SAAS,SAAS,CAAC,IAAoB,WAAqC,MAAkC;AAAA,EAC5G,MAAM,SAAS,UAAU,QAAQ,KAAK,CAAC,MAAsC,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,QAAQ,MAAM,WAAW;AAAA,EAC1I,MAAM,QAAQ,QAAQ,MAAM,WAAW,KAAK,GAAG,iBAAiB,GAAG;AAAA,EACnE,IAAI,CAAC;AAAA,IAAO,OAAO,CAAC;AAAA,EACpB,IAAI,CAAC,GAAG,0BAA0B,KAAK;AAAA,IAAG,MAAM,YAAY,MAAM,oEAAuB;AAAA,EACzF,OAAO,MAAM,WAAW,IAAI,CAAC,SAAS;AAAA,IACpC,IAAI,CAAC,GAAG,qBAAqB,IAAI,KAAK,CAAC,GAAG,aAAa,KAAK,IAAI;AAAA,MAAG,MAAM,YAAY,MAAM,8DAAiB;AAAA,IAC5G,MAAM,UAAU,aAAa,IAAI,KAAK,WAAW;AAAA,IACjD,IAAI,YAAY;AAAA,MAAW,MAAM,YAAY,MAAM,SAAS,KAAK,KAAK,2CAAa;AAAA,IACnF,OAAO,EAAE,KAAK,KAAK,KAAK,MAAM,OAAO,QAAQ;AAAA,GAC9C;AAAA;AAGH,SAAS,UAAU,CAAC,IAAoB,QAAmC,MAAwC;AAAA,EACjH,MAAM,aAAa,OAAO,MAAM,WAAW;AAAA,EAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,sBAAsB,UAAU,KAAK,CAAC,GAAG,mBAAmB,WAAW,UAAU;AAAA,IAAG;AAAA,EAC3G,MAAM,SAAS,WAAW;AAAA,EAC1B,IAAI,CAAC,GAAG,2BAA2B,OAAO,IAAI,KAAK,CAAC,GAAG,2BAA2B,OAAO,KAAK,UAAU,KAAK,OAAO,KAAK,WAAW,WAAW,SAAS,GAAG,WAAW,eAAe,OAAO,KAAK,WAAW,KAAK,SAAS;AAAA,IAAS;AAAA,EACnO,MAAM,QAAQ,aAAa,IAAI,OAAO,KAAK;AAAA,EAAG,MAAM,MAAM,OAAO,KAAK,KAAK;AAAA,EAC3E,KAAK,OAAO,cAAc,SAAS,GAAG,WAAW,mBAAmB,OAAO,cAAc,SAAS,GAAG,WAAW,qBAAqB,OAAO,UAAU;AAAA,IAAU,OAAO,EAAE,MAAM,aAAa,KAAK,IAAI,OAAO,cAAc,SAAS,GAAG,WAAW,mBAAmB,CAAC,QAAQ,MAAM;AAAA,EACnR,IAAI,OAAO,cAAc,SAAS,GAAG,WAAW,eAAe,UAAU;AAAA,IAAW,OAAO,EAAE,MAAM,eAAe,KAAK,MAAM;AAAA,EAC7H,MAAM,YAAY,MAAM,gBAAM,OAAO,KAAK,QAAQ,8CAAW;AAAA;AAG/D,SAAS,QAAQ,CAAC,IAAoB,MAAuC,MAAc,OAAoB,SAAgD;AAAA,EAC7J,MAAM,MAAM,YAAY,IAAI,IAAI,IAAI,MAAM,KAAK,GAAG,MAAM,WAAW;AAAA,EACnE,MAAM,QAAQ,UAAU,IAAI,IAAI,IAAI,MAAM,OAAO,GAAG,IAAI;AAAA,EACxD,MAAM,WAAW,IAAI,IAAI,MAAM,UAAU;AAAA,EACzC,MAAM,aAAa,YAAY,GAAG,yBAAyB,QAAQ,IAAI,CAAC,GAAG,SAAS,QAAQ,EAAE,OAAO,GAAG,YAAY,IAAI,CAAC;AAAA,EACzH,IAAI,WAAW,IAAI,GAAG;AAAA,IAAG,OAAO,EAAE,MAAM,aAAa,UAAU,WAAW,IAAI,CAAC,UAAU;AAAA,MACvF,IAAI,CAAC,GAAG,0BAA0B,KAAK;AAAA,QAAG,MAAM,YAAY,MAAM,4DAAyB;AAAA,MAC3F,OAAO,SAAS,IAAI,OAAO,MAAM,OAAO,OAAO;AAAA,KAChD,MAAO,QAAQ,EAAE,MAAM,IAAI,CAAC,EAAG;AAAA,EAChC,MAAM,QAAQ,WAAW,QAAQ,CAAC,UAAU,SAAS,IAAI,OAAO,MAAM,KAAK,CAAC;AAAA,EAC5E,IAAI,KAAK,IAAI,GAAG;AAAA,IAAG,OAAO,EAAE,MAAM,QAAQ,UAAW,QAAQ,EAAE,MAAM,IAAI,CAAC,EAAG;AAAA,EAC7E,IAAI,QAAQ;AAAA,IAAU,OAAO,EAAE,MAAM,UAAU,OAAO,QAAQ,UAAU,IAAI,IAAI,IAAI,MAAM,WAAW,GAAG,MAAM,OAAO,MAAO,QAAQ,EAAE,MAAM,IAAI,CAAC,EAAG;AAAA,EACpJ,MAAM,YAAY,MAAM,qDAAa,KAAK;AAAA;AAG5C,SAAS,QAAQ,CAAC,IAAoB,YAAgC,MAAc,OAAsC;AAAA,EACxH,MAAM,QAAQ,aAAa,IAAI,UAAU;AAAA,EAAG,IAAI,OAAO,UAAU;AAAA,IAAU,MAAM,YAAY,MAAM,8EAAuB;AAAA,EAC1H,MAAM,SAA2B,CAAC;AAAA,EAAG,MAAM,UAAU;AAAA,EAAgB,IAAI,SAAS;AAAA,EAAG,IAAI;AAAA,EACzF,OAAQ,QAAQ,QAAQ,KAAK,KAAK,GAAI;AAAA,IAAE,IAAI,MAAM,QAAQ;AAAA,MAAQ,OAAO,KAAK,EAAE,MAAM,WAAW,OAAO,MAAM,MAAM,QAAQ,MAAM,KAAK,EAAE,CAAC;AAAA,IAAG,MAAM,MAAM,MAAM;AAAA,IAAI,IAAI,CAAC,qBAAqB,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,GAAG;AAAA,MAAG,MAAM,YAAY,MAAM,wEAA2B;AAAA,IAAG,OAAO,KAAK,EAAE,MAAM,SAAS,IAAI,CAAC;AAAA,IAAG,SAAS,QAAQ;AAAA,EAAW;AAAA,EAClV,IAAI,SAAS,MAAM,UAAU,OAAO,WAAW;AAAA,IAAG,OAAO,KAAK,EAAE,MAAM,WAAW,OAAO,MAAM,MAAM,MAAM,EAAE,CAAC;AAAA,EAAG,OAAO;AAAA;AAGzH,SAAS,SAAS,CAAC,IAAoB,WAA2C,MAAc,SAAkD;AAAA,EAChJ,IAAI,CAAC,aAAa,CAAC,GAAG,0BAA0B,SAAS;AAAA,IAAG,MAAM,YAAY,MAAM,iDAA6B;AAAA,EACjH,MAAM,UAAU,IAAI,IAAI,WAAW,OAAO;AAAA,EAC1C,MAAM,OAAO,WAAW,GAAG,gBAAgB,OAAO,IAAI,QAAQ,OAAO;AAAA,EACrE,MAAM,aAAa,QAAQ,GAAG,iBAAiB,IAAI,IAAI,OAAO,QAAQ,GAAG,QAAQ,IAAI,KAAK,GAAG,sBAAsB,KAAK,WAAW,EAAE,IAAI,KAAK,WAAW,GAAG,aAAa;AAAA,EACzK,IAAI,CAAC,cAAc,CAAC,GAAG,iBAAiB,UAAU,KAAK,CAAC,GAAG,2BAA2B,WAAW,UAAU,KAAK,WAAW,WAAW,WAAW,SAAS,GAAG,WAAW;AAAA,IAAa,MAAM,YAAY,MAAM,oDAA2B;AAAA,EACxO,MAAM,SAAS,QAAQ,IAAI,WAAW,WAAW,KAAK,IAAI;AAAA,EAAG,IAAI,CAAC;AAAA,IAAQ,MAAM,YAAY,MAAM,sBAAY,WAAW,WAAW,KAAK,iDAAc;AAAA,EAAG,OAAO;AAAA;AAGnK,SAAS,SAAS,CAAC,IAAoB,OAAuC,MAAuC;AAAA,EACnH,IAAI,CAAC,SAAS,CAAC,GAAG,0BAA0B,KAAK;AAAA,IAAG;AAAA,EAAkB,MAAM,QAAQ,IAAI,IAAI,OAAO,OAAO;AAAA,EAAG,IAAI,CAAC,SAAS,CAAC,GAAG,0BAA0B,KAAK;AAAA,IAAG;AAAA,EACjK,MAAM,MAAuC,CAAC;AAAA,EAAG,WAAW,QAAQ,MAAM,YAAY;AAAA,IAAE,IAAI,CAAC,GAAG,qBAAqB,IAAI,KAAK,CAAC,GAAG,aAAa,KAAK,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,KAAK,IAAI;AAAA,MAAG,MAAM,YAAY,MAAM,8DAAY;AAAA,IAAG,MAAM,QAAQ,aAAa,IAAI,KAAK,WAAW;AAAA,IAAG,MAAM,UAAU,KAAK,KAAK,SAAS,WAAW,KAAK,KAAK,SAAS,qBAAqB,KAAK,KAAK,SAAS,gBAAgB,KAAK,KAAK,SAAS;AAAA,IAAa,IAAI,YAAY,OAAO,UAAU,YAAY,OAAO,UAAU,WAAW;AAAA,MAAE,IAAI,KAAK,KAAK,QAAQ;AAAA,MAAO;AAAA,IAAU;AAAA,IAAE,IAAI,OAAO,UAAU,YAAY,EAAE,OAAO,UAAU,YAAY,kBAAkB,KAAK,KAAK;AAAA,MAAI,MAAM,YAAY,MAAM,gBAAM,KAAK,KAAK,8CAAgB;AAAA,IAAG,IAAI,KAAK,KAAK,QAAQ,OAAO,UAAU,WAAW,OAAO,WAAW,KAAK,IAAI;AAAA,EAAO;AAAA,EAAE,OAAO;AAAA;AAG9xB,SAAS,GAAG,CAAC,IAAoB,MAAuC,MAA8C;AAAA,EAAE,MAAM,OAAO,KAAK,WAAW,KAAK,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,EAAE,KAAK,QAAQ,EAAE,QAAQ,SAAS,EAAE,MAAM,IAAI;AAAA,EAAG,OAAO,QAAQ,GAAG,qBAAqB,IAAI,IAAI,KAAK,cAAc;AAAA;AAClT,SAAS,WAAW,CAAC,IAAoB,YAA4C,MAAc,OAAuB;AAAA,EAAE,MAAM,QAAQ,cAAc,aAAa,IAAI,UAAU;AAAA,EAAG,IAAI,OAAO,UAAU;AAAA,IAAU,MAAM,YAAY,MAAM,GAAG,4CAAc;AAAA,EAAG,OAAO;AAAA;AACxQ,SAAS,YAAY,CAAC,IAAoB,OAAkE;AAAA,EAAE,IAAI,GAAG,gBAAgB,KAAK,KAAK,GAAG,gCAAgC,KAAK;AAAA,IAAG,OAAO,MAAM;AAAA,EAAM,IAAI,GAAG,iBAAiB,KAAK;AAAA,IAAG,OAAO,OAAO,MAAM,IAAI;AAAA,EAAG,IAAI,MAAM,SAAS,GAAG,WAAW;AAAA,IAAa,OAAO;AAAA,EAAM,IAAI,MAAM,SAAS,GAAG,WAAW;AAAA,IAAc,OAAO;AAAA,EAAO;AAAA;;;AFnFhY,eAAsB,cAAc,CAAC,QAAwB,SAA8C;AAAA,EACzG,IAAI,CAAC,OAAO;AAAA,IAAK,MAAM,IAAI,MAAM,sCAAsC;AAAA,EACvE,MAAM,UAAU,OAAO,OAAO,OAAO,IAAI,KAAK;AAAA,EAC9C,IAAI,QAAQ,WAAW;AAAA,IAAG,MAAM,YAAY,OAAO,OAAO,yEAAkB;AAAA,EAC5E,MAAM,SAAS,MAAM,oBAAoB,QAAQ,EAAE;AAAA,EACnD,MAAM,QAAQ,QAAQ,gBAAgB,QAAQ,OAAO,GAAG;AAAA,EACxD,IAAI,OAAO,IAAI,SAAS,WAAW;AAAA,IACjC,MAAM,GAAG,QAAQ,4CACf,GAAG,KAAK,UAAU,EAAE,MAAM,OAAO,IAAI,KAAK,GAAG,MAAM,CAAC;AAAA;AAAA,EACxD;AAAA,EACA,MAAM,IAAG,OAAO,IAAI,QAAQ,EAAE,WAAW,MAAM,OAAO,KAAK,CAAC;AAAA,EAC5D,MAAM,cAAwB,CAAC;AAAA,EAC/B,YAAY,WAAU,YAAY,OAAO,QAAQ,KAAK,EAAE,KAAK,EAAE,KAAK,OAAO,EAAE,cAAc,CAAC,CAAC,GAAG;AAAA,IAC9F,MAAM,SAAS,KAAK,OAAO,IAAI,QAAQ,SAAQ;AAAA,IAAG,MAAM,OAAM,SAAQ,MAAM,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,IAAG,MAAM,WAAU,QAAQ,SAAS,MAAM;AAAA,IAAG,YAAY,KAAK,MAAM;AAAA,EACxK;AAAA,EACA,IAAI,YAAW,OAAO,IAAI,SAAS;AAAA,IAAG,MAAM,GAAG,OAAO,IAAI,WAAW,KAAK,OAAO,IAAI,QAAQ,QAAQ,iBAAiB,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,EAC5I,OAAO,EAAE,MAAM,OAAO,MAAM,QAAQ,SAAQ,OAAO,IAAI,MAAM,GAAG,YAAY;AAAA;;;AGnBvE,MAAM,UAAiC;AAAA,EACR;AAAA,EAA7B,WAAW,CAAkB,SAAwB;AAAA,IAAxB;AAAA;AAAA,MACzB,IAAI,GAAe;AAAA,IAAE,OAAO,KAAK,QAAQ;AAAA;AAAA,MACzC,KAAK,GAAW;AAAA,IAAE,OAAO,KAAK,QAAQ;AAAA;AAAA,EAC1C,KAAK,CAAC,QAAwB,UAA8C;AAAA,IAAE,OAAO,eAAe,QAAQ,KAAK,OAAO;AAAA;AACjI;;;ACRA,SAAS,IAAI,CAAC,OAAyB,UAA8C;AAAA,EACnF,IAAI,aAAa,SAAS;AAAA,IACxB,MAAM,QAAQ,MAAM,IAAI,CAAC,SAAS,KAAK,SAAS,YAAY,KAAK,QAAQ,MAAM,KAAK,MAAM,EAAE,KAAK,EAAE;AAAA,IACnG,OAAO,IAAI,MAAM,QAAQ,MAAM,MAAK;AAAA,EACtC;AAAA,EACA,IAAI,aAAa,UAAU;AAAA,IACzB,OAAO,KAAK,UAAU,MAAM,IAAI,CAAC,SAAS,KAAK,SAAS,YAAY,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,KAAK,EAAE,CAAC;AAAA,EAC3G;AAAA,EACA,OAAO,MAAM,IAAI,CAAC,SAAS,KAAK,SAAS,YAAY,KAAK,UAAU,KAAK,KAAK,IAAI,QAAQ,KAAK,KAAK,EAAE,KAAK,KAAK,KAAK;AAAA;AAEvH,SAAS,MAAM,CAAC,MAA+C,UAA8C;AAAA,EAC3G,QAAQ,oBAAW;AAAA,EACnB,MAAM,SAAS,aAAa,QAAQ,QAAQ,QAAO,QAAQ,QAAO;AAAA,EAClE,OAAO,QAAO,SAAS,cAAc,GAAG,UAAU,QAAO,MAAM,IAAI,OAAO,QAAQ,KAAK,IAAI,QAAO,EAAE,MAAM,GAAG,YAAY,OAAO,QAAO,UAAU,WAAW,KAAK,UAAU,QAAO,KAAK,IAAI,QAAO;AAAA;AAEpM,SAAS,SAAS,CAAC,MAAkB,SAAS,QAAgB;AAAA,EAC5D,IAAI,KAAK,SAAS;AAAA,IAAa,OAAO,GAAG;AAAA,EAAmB,KAAK,SAAS,IAAI,CAAC,UAAU,UAAU,OAAO,GAAG,UAAU,CAAC,EAAE,KAAK;AAAA,CAAI;AAAA,EAAM;AAAA,EACzI,IAAI,KAAK,SAAS;AAAA,IAAQ,OAAO,GAAG,cAAc,KAAK,KAAK,OAAO,OAAO;AAAA,EAC1E,OAAO,GAAG,gBAAgB,KAAK,KAAK,OAAO,OAAO,QAAQ,OAAO,MAAM,OAAO;AAAA;AAEhF,SAAS,UAAU,CAAC,MAAkB,SAAS,QAAgB;AAAA,EAC7D,IAAI,KAAK,SAAS;AAAA,IAAa,OAAO,GAAG;AAAA,EAAmB,KAAK,SAAS,IAAI,CAAC,UAAU,WAAW,OAAO,GAAG,UAAU,CAAC,EAAE,KAAK;AAAA,CAAI;AAAA,EAAM;AAAA,EAC1I,IAAI,KAAK,SAAS;AAAA,IAAQ,OAAO,GAAG,cAAc,KAAK,KAAK,OAAO,QAAQ;AAAA,EAC3E,OAAO,GAAG,4BAA4B,OAAO,MAAM,QAAQ,eAAe,KAAK,KAAK,OAAO,QAAQ;AAAA;AAErG,SAAS,OAAO,CAAC,MAAkB,SAAS,QAAgB;AAAA,EAC1D,IAAI,KAAK,SAAS;AAAA,IAAa,OAAO,GAAG;AAAA,EAAqB,KAAK,SAAS,IAAI,CAAC,UAAU,QAAQ,OAAO,GAAG,UAAU,CAAC,EAAE,KAAK;AAAA,CAAI;AAAA,EAAM;AAAA,EACzI,IAAI,KAAK,SAAS;AAAA,IAAQ,OAAO,GAAG,cAAc,KAAK,KAAK,OAAO,KAAK;AAAA,EACxE,OAAO,GAAG,gBAAgB,KAAK,KAAK,OAAO,KAAK,sBAAsB,OAAO,MAAM,KAAK;AAAA;AAE1F,SAAS,UAAU,CAAC,QAA8B;AAAA,EAAE,OAAO,OAAO,MAAM,IAAI,CAAC,SAAS,wBAAwB,KAAK,QAAQ,OAAO,KAAK,UAAU,WAAW,QAAQ,OAAO,KAAK,UAAU,YAAY,SAAS,cAAc,KAAK,UAAU,KAAK,KAAK,GAAG,EAAE,KAAK;AAAA,CAAI;AAAA;AACpQ,SAAS,WAAW,CAAC,QAA8B;AAAA,EAAE,OAAO,OAAO,MAAM,IAAI,CAAC,SAAS,WAAW,KAAK,oCAAoC,KAAK,UAAU,KAAK,KAAK,MAAM,EAAE,KAAK;AAAA,CAAI;AAAA;AACrL,SAAS,QAAQ,CAAC,QAA8B;AAAA,EAAE,OAAO,OAAO,MAAM,IAAI,CAAC,SAAS,YAAY,KAAK,QAAQ,OAAO,KAAK,UAAU,WAAW,WAAW,OAAO,KAAK,UAAU,YAAY,YAAY,cAAc,KAAK,UAAU,KAAK,KAAK,GAAG,EAAE,KAAK;AAAA,CAAI;AAAA;AAErP,IAAM,cAA6B;AAAA,EACxC,IAAI;AAAA,EAAW,OAAO;AAAA,EAAuB,mBAAmB;AAAA,EAChE,eAAe,CAAC,QAAQ,QAAQ;AAAA,IAC9B,OAAO;AAAA,MACL,iCAAiC;AAAA;AAAA;AAAA;AAAA,MACjC,iCAAiC;AAAA;AAAA;AAAA,EAAiD,WAAW,MAAM;AAAA;AAAA,EAA+B,UAAU,OAAO,IAAI;AAAA;AAAA;AAAA;AAAA,MACvJ,yCAAyC,aAAa,MAAM;AAAA,MAC5D,6CAA6C;AAAA;AAAA,IAC/C;AAAA;AAEJ;AAEA,SAAS,YAAY,CAAC,QAAmF;AAAA,EACvG,MAAM,cAAc,OAAO,QAAQ,QAAQ,MAAM,MAAK;AAAA,EACtD,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uPA+C8O,OAAO,mDAAmD,OAAO,6BAA6B;AAAA,yPAC5F,OAAO,mDAAmD,OAAO,6BAA6B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAahV,IAAM,kBAAiC;AAAA,EAC5C,IAAI;AAAA,EAAe,OAAO;AAAA,EAAmC,mBAAmB;AAAA,EAChF,eAAe,CAAC,QAAQ,QAAQ;AAAA,IAC9B,MAAM,MAAM,OAAO,SAAS,QAAQ,mBAAmB,GAAG;AAAA,IAAG,MAAM,OAAO,IAAI,QAAQ,OAAO,GAAG;AAAA,IAChG,OAAO;AAAA,MACL,uBAAuB,uBAAuB,OAAO;AAAA;AAAA;AAAA,MACrD,oBAAoB;AAAA;AAAA,MACpB,wBAAwB;AAAA;AAAA,MACxB,oCAAoC,sBAAsB,+FAA+F,OAAO;AAAA;AAAA,OAC/J,qBAAqB,yBAAyB,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAA4X,YAAY,MAAM;AAAA,EAAM,WAAW,OAAO,IAAI;AAAA;AAAA;AAAA,IACte;AAAA;AAEJ;AAEO,IAAM,kBAAiC;AAAA,EAC5C,IAAI;AAAA,EAAe,OAAO;AAAA,EAA2B,mBAAmB;AAAA,EACxE,eAAe,CAAC,QAAQ,QAAQ;AAAA,IAC9B,OAAO;AAAA,MACL,sBAAsB,6BAA6B,OAAO;AAAA;AAAA,MAC1D,+CAA+C,gDAAgD,OAAO;AAAA;AAAA,MACtG,+BAA+B;AAAA;AAAA,MAC/B,oDAAoD;AAAA;AAAA;AAAA,MACpD,sCAAsC;AAAA;AAAA;AAAA,EAAuC,SAAS,MAAM;AAAA;AAAA,EAAmB,QAAQ,OAAO,IAAI;AAAA;AAAA;AAAA;AAAA,IACpI;AAAA;AAEJ;;;ACvHO,MAAM,eAAe;AAAA,EACT,UAAU,IAAI;AAAA,EAExB,WAAW,GAAG;AAAA,IACnB,KAAK,SAAS,IAAI,SAAW;AAAA,IAC7B,KAAK,SAAS,cAAc;AAAA,IAC5B,KAAK,SAAS,cAAc;AAAA,IAC5B,KAAK,SAAS,iBAAiB;AAAA,IAC/B,KAAK,SAAS,mBAAmB;AAAA,IACjC,KAAK,SAAS,IAAI,UAAU,WAAW,CAAC;AAAA,IACxC,KAAK,SAAS,IAAI,UAAU,eAAe,CAAC;AAAA,IAC5C,KAAK,SAAS,IAAI,UAAU,eAAe,CAAC;AAAA;AAAA,EAGvC,QAAQ,CAAC,QAA2B;AAAA,IACzC,KAAK,QAAQ,IAAI,OAAO,MAAM,MAAM;AAAA;AAAA,EAG/B,OAAO,CAAC,MAA+B;AAAA,IAC5C,MAAM,SAAS,KAAK,QAAQ,IAAI,IAAI;AAAA,IACpC,IAAI,CAAC,QAAQ;AAAA,MACX,MAAM,IAAI,MAAM,yBAAyB,MAAM;AAAA,IACjD;AAAA,IACA,OAAO;AAAA;AAAA,EAGF,mBAAmB,GAAkB;AAAA,IAC1C,OAAO,CAAC,GAAG,KAAK,QAAQ,OAAO,CAAC;AAAA;AAEpC;AAEO,IAAM,iBAAiB,IAAI;;;AChDlC,kBAAS,cAAO;AAChB,oBAAS,qBAAS;AAWlB,eAAsB,KAAK,CAAC,UAAwB,CAAC,GAAyB;AAAA,EAC5E,MAAM,SAAS,MAAM,cAAc,OAAO;AAAA,EAG1C,IAAI,QAAQ,SAAS;AAAA,IACnB,OAAO,aAAa,MAAM;AAAA,EAC5B;AAAA,EAEA,MAAM,SAAS,eAAe,QAAQ,OAAO,MAAM;AAAA,EACnD,OAAO,OAAO,MAAM,QAAQ,OAAO;AAAA;AAGrC,eAAe,YAAY,CACzB,QACsB;AAAA,EACtB,MAAM,UAAU,OAAO;AAAA,EACvB,IAAI,CAAC,SAAS;AAAA,IACZ,MAAM,IAAI,MAAM,gDAAgD;AAAA,EAClE;AAAA,EAEA,MAAM,IAAG,QAAQ,QAAQ,EAAE,WAAW,MAAM,OAAO,KAAK,CAAC;AAAA,EACzD,MAAM,OAAM,QAAQ,QAAQ,EAAE,WAAW,KAAK,CAAC;AAAA,EAE/C,IAAI,QAAQ,KAAK;AAAA,IACf,WAAW,YAAY,QAAQ,WAAW;AAAA,MACxC,MAAM,OAAO,OAAO,MAAM,QAAQ;AAAA,IACpC;AAAA,EACF;AAAA,EAEA,MAAM,SAAS,QAAQ,UAAU,QAAQ,IAAI,oBAAoB;AAAA,EACjE,MAAM,SAAS,MAAM,IAAI,MAAM;AAAA,IAC7B,aAAa,CAAC,QAAQ,KAAK;AAAA,IAC3B,QAAQ,QAAQ;AAAA,IAChB,MAAM,SAAQ,QAAQ,KAAK;AAAA,IAC3B,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW,QAAQ,YAAY,WAAW;AAAA,IAC1C,WAAW,QAAQ;AAAA,IACnB;AAAA,IACA,UAAU,QAAQ;AAAA,IAClB,OAAO;AAAA,EACT,CAAC;AAAA,EAED,IAAI,CAAC,OAAO,WAAW,OAAO,QAAQ,WAAW,GAAG;AAAA,IAClD,MAAM,IAAI,MACR;AAAA,EAAsC,OAAO,KAC1C,IAAI,CAAC,QAAQ,IAAI,OAAO,EACxB,KAAK;AAAA,CAAI,GACd;AAAA,EACF;AAAA,EAEA,MAAM,cAAc,OAAO,QAAQ,IAAI,CAAC,WAAW,SAAQ,OAAO,IAAI,CAAC;AAAA,EACvE,OAAO,EAAE,MAAM,OAAO,MAAM,QAAQ,QAAQ,QAAQ,YAAY;AAAA;AAGlE,eAAe,MAAM,CAAC,MAAc,UAAiC;AAAA,EACnE,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,OAAO,aAAa,QAAQ,GAAG;AAAA,IAC7D,KAAK;AAAA,IACL,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV,CAAC;AAAA,EACD,MAAM,WAAW,MAAM,KAAK;AAAA,EAC5B,IAAI,aAAa,GAAG;AAAA,IAClB,MAAM,IAAI,MACR,iBAAiB,kCAAkC,UACrD;AAAA,EACF;AAAA;;;AC9EF,uBAAS;AACT,qBAAS,mBAAU;AAeZ,IAAM,6BAA6B;AAEnC,IAAM,uBAAuB;AAE7B,IAAM,aAAa;AAOnB,SAAS,aAAa,CAC3B,UAAgC,CAAC,GACZ;AAAA,EACrB,MAAM,OAAO,QAAQ,QAAQ,QAAQ,IAAI;AAAA,EACzC,MAAM,OAAO,QAAQ,QAAQ,UAAS,IAAI;AAAA,EAC1C,MAAM,QAAQ,cAAc,IAAI;AAAA,EAEhC,MAAM,WAAW,MAAM,OAAO,CAAC,SAAS,YAAW,MAAK,MAAM,KAAK,IAAI,CAAC,CAAC;AAAA,EACzE,IAAI,SAAS,SAAS,GAAG;AAAA,IACvB,MAAM,IAAI,MACR,0DAA0D,SACvD,IAAI,CAAC,SAAS,KAAK,IAAI,EACvB,KAAK,IAAI,GACd;AAAA,EACF;AAAA,EAEA,UAAU,MAAK,MAAM,KAAK,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,EAChD,MAAM,UAAoB,CAAC;AAAA,EAC3B,WAAW,QAAQ,OAAO;AAAA,IACxB,cAAc,MAAK,MAAM,KAAK,IAAI,GAAG,KAAK,SAAS,MAAM;AAAA,IACzD,QAAQ,KAAK,KAAK,IAAI;AAAA,EACxB;AAAA,EAEA,OAAO,EAAE,MAAM,OAAO,QAAQ;AAAA;AAGhC,SAAS,aAAa,CAAC,MAA8B;AAAA,EACnD,OAAO;AAAA,IACL;AAAA,MACE,MAAM;AAAA,MACN,SAAS,GAAG,KAAK,UACf;AAAA,QACE;AAAA,QACA,SAAS;AAAA,QACT,MAAM;AAAA,QACN,SAAS;AAAA,UACP,KAAK;AAAA,UACL,OAAO;AAAA,UACP,WAAW;AAAA,QACb;AAAA,QACA,cAAc;AAAA,UACZ,UAAY,IAAI;AAAA,QAClB;AAAA,QACA,iBAAiB;AAAA,UACf,gBAAgB,IAAI;AAAA,QACtB;AAAA,MACF,GACA,MACA,CACF;AAAA;AAAA,IACF;AAAA,IACA;AAAA,MACE,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IACX;AAAA,IACA;AAAA,MACE,MAAM;AAAA,MACN,SAAS,GAAG,KAAK,UACf;AAAA,QACE,iBAAiB;AAAA,UACf,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR,kBAAkB;AAAA,UAClB,KAAK,CAAC,UAAU,OAAO,cAAc;AAAA,UACrC,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR,cAAc;AAAA,UACd,sBAAsB;AAAA,QACxB;AAAA,QACA,SAAS,CAAC,YAAY,oBAAoB;AAAA,MAC5C,GACA,MACA,CACF;AAAA;AAAA,IACF;AAAA,IACA;AAAA,MACE,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,IACX;AAAA,IACA;AAAA,MACE,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0CAAm9C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAC99C;AAAA,EACF;AAAA;;;AC9GF;AACA;AAAA,cACE;AAAA;AAAA,gBAEA;AAAA,cACA;AAAA,aACA;AAAA,SACA;AAAA;;;ACLF,IAAM,qBAAqB,IAAI,IAAI;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AASM,SAAS,kBAAkB,CAChC,OACqD;AAAA,EACrD,MAAM,QAAQ,OAAO,QAAQ,SAAS,CAAC,CAAC,EACrC,IAAI,EAAE,QAAQ,aAAa,YAAY,QAAQ,OAAO,CAAC,EACvD,KAAK,CAAC,OAAO,WAAW,OAAO,OAAO,SAAS,MAAM,OAAO,MAAM;AAAA,EAErE,OAAO,OAAO,YAAY;AAAA,IACxB,MAAM,YAAY,IAAI,IAAI,QAAQ,GAAG;AAAA,IACrC,MAAM,OAAO,MAAM,KAAK,GAAG,aACzB,UAAU,SAAS,WAAW,MAAM,CACtC;AAAA,IAEA,IAAI,CAAC,MAAM;AAAA,MACT;AAAA,IACF;AAAA,IAEA,MAAM,SAAS,gBAAgB,MAAM,SAAS;AAAA,IAC9C,MAAM,UAAU,qBAAqB,SAAS,WAAW,MAAM,MAAM;AAAA,IACrE,MAAM,OACJ,QAAQ,WAAW,SAAS,QAAQ,WAAW,SAC3C,YACA,QAAQ;AAAA,IAEd,IAAI;AAAA,MACF,MAAM,WAAW,MAAM,MAAM,QAAQ;AAAA,QACnC,QAAQ,QAAQ;AAAA,QAChB;AAAA,QACA;AAAA,QACA,QAAQ,QAAQ;AAAA,QAChB,UAAU;AAAA,MACZ,CAAC;AAAA,MAED,OAAO,IAAI,SAAS,SAAS,MAAM;AAAA,QACjC,QAAQ,SAAS;AAAA,QACjB,YAAY,SAAS;AAAA,QACrB,SAAS,cAAc,SAAS,OAAO;AAAA,MACzC,CAAC;AAAA,MACD,MAAM;AAAA,MACN,OAAO,IAAI,SAAS,eAAe,EAAE,QAAQ,IAAI,CAAC;AAAA;AAAA;AAAA;AAKxD,SAAS,WAAW,CAAC,QAAgB,OAAyC;AAAA,EAC5E,MAAM,UAAU,OAAO,UAAU,WAAW,EAAE,QAAQ,MAAM,IAAI;AAAA,EAEhE,OAAO;AAAA,IACL;AAAA,IACA,QAAQ,IAAI,IAAI,QAAQ,MAAM;AAAA,IAC9B,cAAc,QAAQ,gBAAgB;AAAA,OAClC,QAAQ,YAAY,YAAY,CAAC,IAAI,EAAE,SAAS,QAAQ,QAAQ;AAAA,EACtE;AAAA;AAGF,SAAS,eAAe,CAAC,MAAiB,WAAqB;AAAA,EAC7D,MAAM,SAAS,IAAI,IAAI,KAAK,MAAM;AAAA,EAClC,MAAM,WAAW,KAAK,UAAU,UAAU,QAAQ,KAAK,UAAU;AAAA,EAEjE,OAAO,WAAW,cAAc,OAAO,UAAU,QAAQ;AAAA,EACzD,OAAO,SAAS,UAAU;AAAA,EAC1B,OAAO;AAAA;AAGT,SAAS,aAAa,CAAC,cAAsB,UAA0B;AAAA,EACrE,MAAM,OAAO,iBAAiB,MAAM,KAAK,aAAa,QAAQ,QAAQ,EAAE;AAAA,EACxE,MAAM,OAAO,SAAS,WAAW,GAAG,IAAI,WAAW,IAAI;AAAA,EAEvD,OAAO,GAAG,OAAO,UAAU;AAAA;AAG7B,SAAS,oBAAoB,CAC3B,SACA,WACA,MACA,QACS;AAAA,EACT,MAAM,UAAU,cAAc,QAAQ,OAAO;AAAA,EAC7C,MAAM,eAAe,QAAQ,QAAQ,IAAI,MAAM,KAAK,UAAU;AAAA,EAE9D,QAAQ,IAAI,QAAQ,KAAK,eAAe,OAAO,OAAO,YAAY;AAAA,EAClE,OAAO;AAAA;AAGT,SAAS,aAAa,CAAC,QAA0B;AAAA,EAC/C,MAAM,UAAU,IAAI,QAAQ,MAAM;AAAA,EAClC,MAAM,aAAa,QAAQ,IAAI,YAAY;AAAA,EAE3C,IAAI,YAAY;AAAA,IACd,WAAW,MAAM,GAAG,EAAE,QAAQ,CAAC,WAAW;AAAA,MACxC,MAAM,OAAO,OAAO,KAAK;AAAA,MACzB,IAAI,MAAM;AAAA,QACR,QAAQ,OAAO,IAAI;AAAA,MACrB;AAAA,KACD;AAAA,EACH;AAAA,EAEA,mBAAmB,QAAQ,CAAC,WAAW,QAAQ,OAAO,MAAM,CAAC;AAAA,EAC7D,OAAO;AAAA;;;ACtHT;AACA;AACA,uBAAS,qBAAY,mBAAM;AAE3B,IAAM,oCAAoC;AAC1C,IAAM,sBAAsB;AAC5B,IAAM,2BAA2B;AAc1B,SAAS,iBAAiB,CAAC,SAA0C;AAAA,EAC1E,MAAM,aAAa,QAAQ,cAAc;AAAA,EACzC,IAAI;AAAA,EACJ,MAAM,YAA+B,CAAC;AAAA,EAEtC,MAAM,iBAAiB,CAAC,iBAA+B;AAAA,IACrD,IAAI,OAAO;AAAA,MACT,aAAa,KAAK;AAAA,IACpB;AAAA,IACA,QAAQ,WAAW,MAAM;AAAA,MACvB,QAAQ;AAAA,MACR,QAAQ,SAAS,YAAY;AAAA,OAC5B,UAAU;AAAA;AAAA,EAGf,UAAU,KAAK,MAAM;AAAA,IACnB,IAAI,OAAO;AAAA,MACT,aAAa,KAAK;AAAA,IACpB;AAAA,GACD;AAAA,EAED,MAAM,gBAAgB,uBACpB,QAAQ,MACR,QAAQ,YACR,cACF;AAAA,EACA,IAAI,eAAe;AAAA,IACjB,UAAU,KAAK,aAAa;AAAA,EAC9B,EAAO;AAAA,IACL,UAAU,KACR,qBACE,QAAQ,MACR,QAAQ,YACR,QAAQ,kBAAkB,0BAC1B,cACF,CACF;AAAA;AAAA,EAGF,OAAO;AAAA,IACL,SAAS,MAAM;AAAA,MACb,UAAU,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,YAAY,QAAQ,CAAC;AAAA;AAAA,EAEhE;AAAA;AAGF,SAAS,sBAAsB,CAC7B,MACA,YACA,kBAC0B;AAAA,EAC1B,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,UAAU,MAAM,MAAM,EAAE,WAAW,KAAK,GAAG,CAAC,QAAQ,aAAa;AAAA,MAC/D,IAAI,OAAO,aAAa,UAAU;AAAA,QAChC;AAAA,MACF;AAAA,MACA,MAAM,eAAe,eAAe,MAAM,QAAQ;AAAA,MAClD,IAAI,iBAAiB,aAAa,CAAC,WAAW,YAAY,GAAG;AAAA,QAC3D;AAAA,MACF;AAAA,MACA,iBAAiB,YAAY;AAAA,KAC9B;AAAA,IACD,OAAO,OAAgB;AAAA,IACvB,IAAI,4BAA4B,KAAK,GAAG;AAAA,MACtC;AAAA,IACF;AAAA,IACA,MAAM;AAAA;AAAA,EAGR,OAAO,MAAM,QAAQ,MAAM;AAAA;AAG7B,SAAS,oBAAoB,CAC3B,MACA,YACA,YACA,kBACY;AAAA,EACZ,IAAI,UAAU;AAAA,EACd,IAAI,WAAW,IAAI;AAAA,EACnB,IAAI;AAAA,EAEJ,MAAM,OAAO,YAA2B;AAAA,IACtC,IAAI,CAAC,SAAS;AAAA,MACZ;AAAA,IACF;AAAA,IACA,MAAM,OAAO,IAAI;AAAA,IACjB,IAAI;AAAA,MACF,MAAM,qBAAqB,MAAM,YAAY,IAAI;AAAA,MACjD,MAAM;AAAA,MACN;AAAA;AAAA,IAGF,IAAI;AAAA,IACJ,YAAY,cAAc,kBAAkB,MAAM;AAAA,MAChD,MAAM,WAAW,SAAS,IAAI,YAAY;AAAA,MAC1C,IACE,CAAC,YACD,SAAS,YAAY,cAAc,WACnC,SAAS,SAAS,cAAc,MAChC;AAAA,QACA,cAAc;AAAA,QACd;AAAA,MACF;AAAA,IACF;AAAA,IACA,IAAI,gBAAgB,WAAW;AAAA,MAC7B,WAAW,gBAAgB,SAAS,KAAK,GAAG;AAAA,QAC1C,IAAI,CAAC,KAAK,IAAI,YAAY,GAAG;AAAA,UAC3B,cAAc;AAAA,UACd;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,WAAW;AAAA,IACX,IAAI,gBAAgB,WAAW;AAAA,MAC7B,iBAAiB,WAAW;AAAA,IAC9B;AAAA;AAAA,EAGG,KAAK;AAAA,EACV,QAAQ,YAAY,MAAM;AAAA,IACnB,KAAK;AAAA,KACT,UAAU;AAAA,EACb,IAAI,OAAO,MAAM,UAAU,YAAY;AAAA,IACrC,MAAM,MAAM;AAAA,EACd;AAAA,EAEA,OAAO,MAAM;AAAA,IACX,UAAU;AAAA,IACV,IAAI,OAAO;AAAA,MACT,cAAc,KAAK;AAAA,IACrB;AAAA;AAAA;AASJ,eAAe,oBAAoB,CACjC,MACA,YACA,QACe;AAAA,EACf,MAAM,qBAAqB,CAAC,EAAE;AAAA,EAC9B,OAAO,mBAAmB,SAAS,GAAG;AAAA,IACpC,MAAM,oBAAoB,mBAAmB,IAAI;AAAA,IACjD,IAAI,sBAAsB,WAAW;AAAA,MACnC;AAAA,IACF;AAAA,IACA,MAAM,oBAAoB,MAAK,MAAM,iBAAiB;AAAA,IACtD,IAAI;AAAA,IACJ,IAAI;AAAA,MACF,UAAU,MAAM,QAAQ,mBAAmB,EAAE,eAAe,KAAK,CAAC;AAAA,MAClE,MAAM;AAAA,MACN;AAAA;AAAA,IAGF,WAAW,SAAS,SAAS;AAAA,MAC3B,MAAM,eACJ,sBAAsB,KAAK,MAAM,OAAO,GAAG,qBAAqB,MAAM;AAAA,MACxE,IAAI,MAAM,YAAY,GAAG;AAAA,QACvB,mBAAmB,KAAK,YAAY;AAAA,QACpC;AAAA,MACF;AAAA,MACA,IAAI,CAAC,MAAM,OAAO,KAAK,CAAC,WAAW,YAAY,GAAG;AAAA,QAChD;AAAA,MACF;AAAA,MACA,IAAI;AAAA,QACF,MAAM,OAAO,MAAM,KAAK,MAAK,MAAM,YAAY,CAAC;AAAA,QAChD,OAAO,IAAI,cAAc,EAAE,SAAS,KAAK,SAAS,MAAM,KAAK,KAAK,CAAC;AAAA,QACnE,MAAM;AAAA,IAGV;AAAA,EACF;AAAA;AAGF,SAAS,cAAc,CAAC,MAAc,UAAsC;AAAA,EAC1E,MAAM,eAAe,YAAW,QAAQ,IACpC,UAAS,MAAM,QAAQ,IACvB,SAAS,MAAM,IAAI,EAAE,KAAK,GAAG;AAAA,EACjC,IAAI,iBAAiB,MAAM,iBAAiB,QAAQ,aAAa,WAAW,KAAK,GAAG;AAAA,IAClF;AAAA,EACF;AAAA,EACA,OAAO,aAAa,MAAM,IAAI,EAAE,KAAK,GAAG;AAAA;AAG1C,SAAS,2BAA2B,CAAC,OAAyB;AAAA,EAC5D,OACE,OAAO,UAAU,YACjB,UAAU,QACV,UAAU,SACV,MAAM,SAAS;AAAA;;;AFvMnB,IAAM,yBAAyB;AAC/B,IAAM,wCACJ;AACF,IAAM,mBAAmB;AACzB,IAAM,qBAAqB,IAAI,IAAI;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,IAAM,yBAAyB,IAAI,IAAI;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,IAAM,4BAA4B;AAAA,EAChC;AAAA,EACA;AAAA,EACA,KAAK,UAAU,gBAAgB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACF,EAAE,KAAK,EAAE;AAQT,eAAsB,cAAc,CAClC,UAAiC,CAAC,GACd;AAAA,EACpB,IAAI,QAAQ,OAAO;AAAA,IACjB,OAAO,uBAAuB,OAAO;AAAA,EACvC;AAAA,EACA,MAAM,WAAW,MAAM,qBAAqB,SAAS,KAAK;AAAA,EAC1D,OAAO,SAAS;AAAA;AAGlB,eAAe,sBAAsB,CACnC,SACoB;AAAA,EACpB,IAAI,WAAW,MAAM,qBAAqB,SAAS,IAAI;AAAA,EACvD,IAAI,UAAU,qBAAqB,UAAU,QAAQ;AAAA,EAErD,eAAe,QAAQ,CAAC,aAAoC;AAAA,IAC1D,MAAM,aAAa,SAAS,OAAO;AAAA,IACnC,MAAM,qBACJ,eAAe,YACX,YACA,gBAAe,SAAS,OAAO,MAAM,UAAU;AAAA,IACrD,IAAI,uBAAuB,aAAa;AAAA,MACtC,MAAM,QAAQ;AAAA,MACd;AAAA,IACF;AAAA,IACA,MAAM,iBAAiB;AAAA;AAAA,EAGzB,eAAe,gBAAgB,GAAkB;AAAA,IAC/C,MAAM,UAAU,CAAC,GAAG,IAAI,IAAI,OAAO,OAAO,SAAS,OAAO,KAAK,CAAC,CAAC;AAAA,IACjE,SAAS,UAAU,OAAO;AAAA,IAC1B,WAAW,SAAS,SAAS;AAAA,MAC3B,MAAM,SAAS,MAAM,SAAS,UAAU,KAAK;AAAA,MAC7C,IAAI,kBAAkB,UAAU;AAAA,QAC9B,QAAQ,MAAM,yDAAyD;AAAA,QACvE;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS,YAAY,UAAU;AAAA;AAAA,EAGjC,eAAe,OAAO,GAAkB;AAAA,IACtC,QAAQ,QAAQ;AAAA,IAChB,SAAS,OAAO,KAAK,IAAI;AAAA,IACzB,WAAW,MAAM,qBAAqB,SAAS,IAAI;AAAA,IACnD,UAAU,qBAAqB,UAAU,QAAQ;AAAA,IACjD,QAAQ,IACN,2CAA2C,SAAS,OAAO,YAAY,SAAS,OAAO,MACzF;AAAA;AAAA,EAGF,OAAO,mBACL,MAAM,UACN,MAAM,QAAQ,QAAQ,CACxB;AAAA;AAGF,SAAS,oBAAoB,CAC3B,UACA,UACa;AAAA,EACb,OAAO,kBAAkB;AAAA,IACvB,MAAM,SAAS,OAAO;AAAA,IACtB,YAAY,CAAC,iBAAiB,cAAc,UAAU,YAAY;AAAA,IAClE,UAAU,CAAC,gBAAgB;AAAA,MACpB,SAAS,WAAW;AAAA;AAAA,EAE7B,CAAC;AAAA;AAWH,eAAe,oBAAoB,CACjC,SACA,QAC4B;AAAA,EAC5B,MAAM,SAAS,MAAM,cAAc,OAAO;AAAA,EAG1C,QAAQ,sBAAsB,MAAa;AAAA,EAC3C,YAAY,OAAO,UAAU,OAAO,QAAQ,OAAO,KAAK,GAAG;AAAA,IACzD,MAAM,kBAAkB,QAAQ,CAAC,GAAG,OAAO,KAAK;AAAA,EAClD;AAAA,EACA,MAAM,oBAAoB,SAAQ,OAAO,MAAM,QAAQ,OAAO,IAAI;AAAA,EAClE,MAAM,uBACJ,OAAO,MACP,mBACA,qCACF;AAAA,EACA,MAAM,QAAQ,mBAAmB,OAAO,OAAO,KAAK;AAAA,EACpD,MAAM,YAAY,mBAAmB;AAAA,EACrC,MAAM,gBAAgB,SAAQ,mBAAmB,SAAS;AAAA,EAC1D,MAAM,YAAY,IAAI;AAAA,EACtB,MAAM,eAAe,yBAAyB,WAAW,aAAa;AAAA,EACtE,MAAM,aAAa,SAAQ,oBAAoB,IAAI;AAAA,EACnD,MAAM,UAAU,IAAI;AAAA,EACpB,MAAM,eAAe,IAAI;AAAA,EAEzB,MAAM,YAAY,OAChB,UAC0C;AAAA,IAC1C,MAAM,SAAS,QAAQ,IAAI,KAAK;AAAA,IAChC,IAAI,UAAS,WAAW,aAAa,CAAC,aAAa,IAAI,KAAK,GAAG;AAAA,MAC7D,OAAO;AAAA,IACT;AAAA,IACA,MAAM,SAAS,MAAM,aAAa,KAAK;AAAA,IACvC,IAAI,kBAAkB,UAAU;AAAA,MAC9B,IAAI,QAAO;AAAA,QACT,aAAa,IAAI,KAAK;AAAA,MACxB;AAAA,MACA,OAAO;AAAA,IACT;AAAA,IACA,IAAI,QAAO;AAAA,MACT,QAAQ,IAAI,OAAO,MAAM;AAAA,MACzB,aAAa,OAAO,KAAK;AAAA,IAC3B;AAAA,IACA,OAAO;AAAA;AAAA,EAGT,MAAM,SAAS,IAAI,MAAM;AAAA,IACvB,UAAU,OAAO,OAAO;AAAA,IACxB,MAAM,OAAO,OAAO;AAAA,IACpB,OAAO,OAAO,YAAY;AAAA,MACxB,MAAM,iBAAiB,YAAY,cAAc,OAAO;AAAA,MACxD,IAAI,gBAAgB;AAAA,QAClB,OAAO;AAAA,MACT;AAAA,MACA,OACG,MAAM,MAAM,OAAO,KACpB,oBACE,SACA,QACA,OAAO,OACP,WACA,WACA,UACF;AAAA;AAAA,EAGN,CAAC;AAAA,EAED,OAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW,CAAC,YAAY;AAAA,MACtB,QAAQ,QAAQ,CAAC,UAAU,aAAa,IAAI,KAAK,CAAC;AAAA;AAAA,IAEpD;AAAA,EACF;AAAA;AAGF,SAAS,kBAAkB,CACzB,aACA,gBACW;AAAA,EACX,OAAO,IAAI,MAAM,CAAC,GAAgB;AAAA,IAChC,GAAG,CAAC,SAAS,UAAU;AAAA,MACrB,IAAI,aAAa,QAAQ;AAAA,QACvB,OAAO,CAAC,2BAAqC;AAAA,UAC3C,eAAe;AAAA,UACf,YAAY,EAAE,OAAO,KAAK,sBAAsB;AAAA;AAAA,MAEpD;AAAA,MACA,MAAM,SAAS,YAAY,EAAE;AAAA,MAI7B,MAAM,QAAQ,OAAO;AAAA,MACrB,OAAO,OAAO,UAAU,aACnB,MAA0C,KAAK,MAAM,IACtD;AAAA;AAAA,EAER,CAAC;AAAA;AAGH,eAAe,mBAAmB,CAChC,SACA,QACA,OACA,WACA,WACA,YACmB;AAAA,EACnB,MAAM,WAAW,IAAI,IAAI,QAAQ,GAAG,EAAE;AAAA,EACtC,MAAM,QAAQ,qBAAqB,OAAO,QAAQ;AAAA,EAElD,IAAI,UAAU,WAAW;AAAA,IACvB,MAAM,QAAQ,MAAM;AAAA,IACpB,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,IACpC,IAAI,kBAAkB,UAAU;AAAA,MAC9B,OAAO;AAAA,IACT;AAAA,IAEA,IAAI;AAAA,MACF,QAAQ,sBAAsB,MAAa;AAAA,MAC3C,MAAM,OAAO,MAAM,kBACjB,QACA;AAAA,QACE,MAAM,OAAO,YAAY,IAAI,GAAG,UAAU,YAAY;AAAA,UACpD,KAAK;AAAA,UACL,YAAY,EAAE,KAAK,cAAc,KAAK;AAAA,QACxC,EAAE;AAAA,QACF,SAAS,CAAC,EAAE,MAAM,UAAU,KAAK,OAAO,MAAM,SAAS,CAAC;AAAA,MAC1D,GACA,OACA,KACF;AAAA,MACA,yBAAyB,QAAQ,SAAS;AAAA,MAC1C,OAAO,IAAI,SAAS,aAAa,uBAAuB,IAAI,IAAI,MAAM;AAAA,QACpE,SAAS;AAAA,UACP,gBAAgB;AAAA,UAChB,iBAAiB;AAAA,QACnB;AAAA,MACF,CAAC;AAAA,MACD,OAAO,OAAgB;AAAA,MACvB,QAAQ,MAAM,KAAK;AAAA,MACnB,OAAO,qBAAqB;AAAA;AAAA,EAEhC;AAAA,EAEA,IAAI,aAAa,cAAc;AAAA,IAC7B,MAAM,SAAS,MAAM,UAAU,OAAO,KAAK;AAAA,IAC3C,IAAI,kBAAkB,UAAU;AAAA,MAC9B,OAAO;AAAA,IACT;AAAA,IAEA,IAAI;AAAA,MACF,yBAAyB,QAAQ,SAAS;AAAA,MAC1C,OAAO,IAAI,SAAS,MAAM;AAAA,QACxB,QAAQ;AAAA,QACR,SAAS;AAAA,UACP,UAAU,OAAO,MAAM;AAAA,UACvB,iBAAiB;AAAA,QACnB;AAAA,MACF,CAAC;AAAA,MACD,OAAO,OAAgB;AAAA,MACvB,QAAQ,MAAM,KAAK;AAAA,MACnB,OAAO,qBAAqB;AAAA;AAAA,EAEhC;AAAA,EAEA,MAAM,WAAW,UAAU,IAAI,QAAQ;AAAA,EACvC,IAAI,UAAU;AAAA,IACZ,OAAO,IAAI,SAAS,IAAI,KAAK,SAAS,QAAQ,GAAG;AAAA,MAC/C,SAAS;AAAA,QACP,gBAAgB,SAAS;AAAA,QACzB,iBAAiB;AAAA,MACnB;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAKA,IACE,aAAa,OACb,CAAC,SAAS,WAAW,OAAO,KAC5B,CAAC,kBAAkB,KAAK,QAAQ,GAChC;AAAA,IACA,MAAM,SAAS,MAAM,UAAU,OAAO,KAAK;AAAA,IAC3C,IAAI,EAAE,kBAAkB,WAAW;AAAA,MACjC,IAAI;AAAA,QACF,QAAQ,sBAAsB,MAAa;AAAA,QAC3C,MAAM,OAAO,MAAM,kBACjB,QACA;AAAA,UACE,MAAM,OAAO,YAAY,IAAI,GAAG,UAAU,YAAY;AAAA,YACpD,KAAK;AAAA,YACL,YAAY,EAAE,KAAK,cAAc,KAAK;AAAA,UACxC,EAAE;AAAA,UACF,SAAS,CAAC,EAAE,MAAM,UAAU,KAAK,OAAO,MAAM,SAAS,CAAC;AAAA,QAC1D,GACA,OAAO,OACP,GACF;AAAA,QACA,yBAAyB,QAAQ,SAAS;AAAA,QAC1C,OAAO,IAAI,SAAS,aAAa,uBAAuB,IAAI,IAAI,MAAM;AAAA,UACpE,SAAS;AAAA,YACP,gBAAgB;AAAA,YAChB,iBAAiB;AAAA,UACnB;AAAA,QACF,CAAC;AAAA,QACD,OAAO,OAAgB;AAAA,QACvB,QAAQ,MAAM,KAAK;AAAA,QACnB,OAAO,qBAAqB;AAAA;AAAA,IAEhC;AAAA,EACF;AAAA,EAEA,OAAO,IAAI,SAAS,aAAa;AAAA,IAC/B,QAAQ;AAAA,IACR,SAAS,EAAE,iBAAiB,WAAW;AAAA,EACzC,CAAC;AAAA;AAGH,SAAS,oBAAoB,CAC3B,OACA,UACoB;AAAA,EACpB,IAAI,MAAM,cAAc,WAAW;AAAA,IACjC,OAAO;AAAA,EACT;AAAA,EACA,IAAI,aAAa,eAAe;AAAA,IAC9B,OAAO;AAAA,EACT;AAAA,EACA,MAAM,YACJ,SAAS,SAAS,KAAK,SAAS,SAAS,GAAG,IACxC,SAAS,QAAQ,QAAQ,EAAE,IAC3B;AAAA,EACN,IAAI,MAAM,eAAe,WAAW;AAAA,IAClC,OAAO;AAAA,EACT;AAAA,EACA,IAAI,UAAU,SAAS,aAAa,GAAG;AAAA,IACrC,MAAM,OAAO,UAAU,MAAM,GAAG,UAAU,SAAS,cAAc,MAAM;AAAA,IACvE,IAAI,SAAS,IAAI;AAAA,MACf,OAAO;AAAA,IACT;AAAA,IACA,IAAI,MAAM,UAAU,WAAW;AAAA,MAC7B,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA;AAAA;AAGF,SAAS,sBAAsB,CAAC,MAAsB;AAAA,EACpD,IAAI,KAAK,SAAS,gBAAgB,GAAG;AAAA,IACnC,OAAO;AAAA,EACT;AAAA,EACA,IAAI,KAAK,SAAS,SAAS,GAAG;AAAA,IAC5B,OAAO,KAAK,QAAQ,WAAW,GAAG,kCAAkC;AAAA,EACtE;AAAA,EACA,OAAO,OAAO;AAAA;AAQhB,IAAM,gBAAgB,IAAI;AAE1B,SAAS,mBAAmB,GAAkB;AAAA,EAC5C,MAAM,cAAc,IAAI;AAAA,EAExB,SAAS,aAAa,CAAC,SAAwC;AAAA,IAC7D,IAAI,IAAI,IAAI,QAAQ,GAAG,EAAE,aAAa,kBAAkB;AAAA,MACtD;AAAA,IACF;AAAA,IAEA,IAAI;AAAA,IAEJ,MAAM,SAAS,IAAI,eAA2B;AAAA,MAC5C,OAAO,CAAC,eAAe;AAAA,QACrB,mBAAmB;AAAA,QACnB,YAAY,IAAI,UAAU;AAAA,QAC1B,IAAI;AAAA,UACF,WAAW,QAAQ,cAAc,OAAO;AAAA;AAAA,CAAiB,CAAC;AAAA,UAC1D,MAAM;AAAA,UACN,YAAY,OAAO,UAAU;AAAA;AAAA;AAAA,MAGjC,QAAQ,MAAM;AAAA,QACZ,IAAI,kBAAkB;AAAA,UACpB,YAAY,OAAO,gBAAgB;AAAA,QACrC;AAAA;AAAA,IAEJ,CAAC;AAAA,IAED,OAAO,IAAI,SAAS,QAAQ;AAAA,MAC1B,SAAS;AAAA,QACP,gBAAgB;AAAA,QAChB,iBAAiB;AAAA,MACnB;AAAA,IACF,CAAC;AAAA;AAAA,EAGH,SAAS,SAAS,GAAS;AAAA,IACzB,MAAM,UAAU,cAAc,OAAO;AAAA;AAAA;AAAA,CAA6B;AAAA,IAClE,WAAW,cAAc,CAAC,GAAG,WAAW,GAAG;AAAA,MACzC,IAAI;AAAA,QACF,WAAW,QAAQ,OAAO;AAAA,QAC1B,MAAM;AAAA,QACN,YAAY,OAAO,UAAU;AAAA;AAAA,IAEjC;AAAA;AAAA,EAGF,OAAO,EAAE,eAAe,UAAU;AAAA;AAGpC,SAAS,aAAa,CACpB,UACA,cACS;AAAA,EACT,IAAI,iBAAiB,MAAM,aAAa,WAAW,IAAI,GAAG;AAAA,IACxD,OAAO;AAAA,EACT;AAAA,EACA,MAAM,WAAW,aAAa,MAAM,GAAG;AAAA,EACvC,IAAI,SAAS,KAAK,CAAC,YAAY,uBAAuB,IAAI,OAAO,CAAC,GAAG;AAAA,IACnE,OAAO;AAAA,EACT;AAAA,EACA,MAAM,eAAe,SAAQ,SAAS,OAAO,MAAM,YAAY;AAAA,EAC/D,IAAI,gBAAgB,SAAS,OAAO,MAAM,QAAQ,YAAY,GAAG;AAAA,IAC/D,OAAO;AAAA,EACT;AAAA,EACA,MAAM,OAAO,UAAS,YAAY;AAAA,EAClC,IAAI,KAAK,WAAW,GAAG,KAAK,iBAAiB,SAAS,OAAO,YAAY;AAAA,IACvE,OAAO;AAAA,EACT;AAAA,EACA,OAAO,mBAAmB,IAAI,QAAQ,IAAI,EAAE,YAAY,CAAC;AAAA;AAG3D,SAAS,eAAc,CAAC,MAAc,cAA8B;AAAA,EAClE,OAAO,UAAS,MAAM,YAAY,EAAE,MAAM,IAAG,EAAE,KAAK,GAAG;AAAA;AAGzD,SAAS,eAAe,CAAC,QAAgB,WAA4B;AAAA,EACnE,MAAM,iBAAiB,UAAS,QAAQ,SAAS;AAAA,EACjD,OACE,mBAAmB,MAClB,mBAAmB,QAClB,CAAC,eAAe,WAAW,KAAK,MAAK,KACrC,CAAC,YAAW,cAAc;AAAA;AAgBhC,SAAS,wBAAwB,CAC/B,WACA,eAC0D;AAAA,EAC1D,IAAI,QAAQ,QAAQ,QAAQ;AAAA,EAE5B,OAAO,CAAC,UAAU;AAAA,IAChB,MAAM,SAAS,MAAM,KAAK,MACxB,mBAAmB,OAAO,WAAW,aAAa,CACpD;AAAA,IACA,QAAQ,OAAO,KACb,MAAG;AAAA,MAAG;AAAA,OACN,MAAG;AAAA,MAAG;AAAA,KACR;AAAA,IACA,OAAO;AAAA;AAAA;AAIX,eAAe,kBAAkB,CAC/B,OACA,WACA,eACuC;AAAA,EACvC,MAAM,eAAe,mBAAmB;AAAA,EACxC,MAAM,mBAAmB,SAAQ,eAAe,YAAY;AAAA,EAC5D,MAAM,gBAAgB,GAAG,0BAA0B,aAAa;AAAA,EAChE,MAAM,eAAe;AAAA,IACnB,aAAa,CAAC,KAAK;AAAA,IACnB,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,OAAO;AAAA,IACP,OAAO;AAAA,IACP,YAAY,GAAG;AAAA,IACf,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EAEA,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,IAAI,MAAM,YAAY;AAAA,IAC3C,MAAM,gBAAgB,OAAO,QAAQ,KAAK,uBAAuB;AAAA,IACjE,IAAI,CAAC,OAAO,WAAW,CAAC,eAAe;AAAA,MACrC,OAAO,KAAK,QAAQ,CAAC,QAAQ,QAAQ,MAAM,GAAG,CAAC;AAAA,MAC/C,IAAI,CAAC,eAAe;AAAA,QAClB,QAAQ,MAAM,sDAAsD;AAAA,MACtE;AAAA,MACA,OAAO,qBAAqB;AAAA,IAC9B;AAAA,IAEA,MAAM,mBAAmB,IAAI;AAAA,IAC7B,MAAM,UAAU,IAAI;AAAA,IAKpB,WAAW,UAAU,OAAO,SAAS;AAAA,MACnC,MAAM,oBAAoB,wBACxB,kBACA,eACA,MACF;AAAA,MACA,IAAI,iBAAiB,IAAI,kBAAkB,QAAQ,GAAG;AAAA,QACpD,MAAM,IAAI,MACR,qCAAqC,kBAAkB,UACzD;AAAA,MACF;AAAA,MACA,iBAAiB,IAAI,kBAAkB,UAAU,iBAAiB;AAAA,MAClE,QAAQ,IAAI,QAAQ,iBAAiB;AAAA,IACvC;AAAA,IAEA,MAAM,SAAQ,QAAQ,IAAI,aAAa;AAAA,IACvC,IAAI,CAAC,QAAO;AAAA,MACV,MAAM,IAAI,MAAM,0CAA0C;AAAA,IAC5D;AAAA,IAEA,OAAO;AAAA,MACL;AAAA,MACA,aAAa,OAAO,QACjB,OAAO,kBAAkB,EACzB,IAAI,CAAC,WAAW,QAAQ,IAAI,MAAM,CAAC,EACnC,OAAO,CAAC,WAAwC,WAAW,SAAS;AAAA,MACvE,WAAW;AAAA,IACb;AAAA,IACA,OAAO,OAAgB;AAAA,IACvB,QAAQ,MAAM,KAAK;AAAA,IACnB,OAAO,qBAAqB;AAAA;AAAA;AAIhC,SAAS,wBAAwB,CAC/B,QACA,WACM;AAAA,EACN,YAAY,UAAU,WAAW,OAAO,WAAW;AAAA,IACjD,MAAM,WAAW,UAAU,IAAI,QAAQ;AAAA,IACvC,IAAI,UAAU;AAAA,MACZ,IAAI,SAAS,aAAa,OAAO,UAAU;AAAA,QACzC;AAAA,MACF;AAAA,MACA,MAAM,IAAI,MAAM,qCAAqC,UAAU;AAAA,IACjE;AAAA,IACA,UAAU,IAAI,UAAU,MAAM;AAAA,EAChC;AAAA;AAGF,SAAS,uBAAuB,CAC9B,kBACA,eACA,QACmB;AAAA,EACnB,MAAM,WAAW,SAAQ,OAAO,IAAI;AAAA,EACpC,MAAM,qBAAqB,UAAS,kBAAkB,QAAQ;AAAA,EAC9D,IACE,uBAAuB,MACvB,uBAAuB,QACvB,mBAAmB,WAAW,KAAK,MAAK,KACxC,YAAW,kBAAkB,GAC7B;AAAA,IACA,MAAM,IAAI,MACR,wEAAwE,OAAO,MACjF;AAAA,EACF;AAAA,EAEA,MAAM,UAAU,mBACb,MAAM,IAAG,EACT,IAAI,CAAC,YAAY,mBAAmB,OAAO,CAAC,EAC5C,KAAK,GAAG;AAAA,EAEX,OAAO;AAAA,IACL;AAAA,IACA,UAAU,GAAG,iBAAiB;AAAA,IAC9B,MAAM,OAAO;AAAA,EACf;AAAA;AAGF,SAAS,kBAAkB,GAAW;AAAA,EACpC,OAAO,WAAW,EAAE,QAAQ,MAAM,EAAE;AAAA;AAGtC,SAAS,oBAAoB,GAAa;AAAA,EACxC,OAAO,IAAI,SAAS,kCAAkC;AAAA,IACpD,QAAQ;AAAA,IACR,SAAS,EAAE,iBAAiB,WAAW;AAAA,EACzC,CAAC;AAAA;",
25
- "debugId": "5C8800968D2B97E564756E2164756E21",
24
+ "mappings": "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",
25
+ "debugId": "8A1F36BF60A5A63464756E2164756E21",
26
26
  "names": []
27
27
  }
package/dist/index.js CHANGED
@@ -17,7 +17,7 @@ import {
17
17
  resolveConfig,
18
18
  startDevServer,
19
19
  targetRegistry
20
- } from "./index-z1sm57t6.js";
20
+ } from "./index-8k9x2k6m.js";
21
21
  import"./index-k1qfvp0y.js";
22
22
  import"./index-yb2wsc7f.js";
23
23
  // src/target/placeholder-target.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "transone-cli",
3
- "version": "0.6.1",
3
+ "version": "0.6.3",
4
4
  "description": "Bun-native multi-target compiler CLI for TransOne applications: 一份 TypeScript 源码,按 Target 静态转换为 Web 与多端小程序原生工程",
5
5
  "type": "module",
6
6
  "exports": {