@azure-tools/typespec-go 0.17.7-dev.7 → 0.18.0-dev.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/codemodel/type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/codemodel/type.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,5 @@
1
1
  import { type EmitContext } from "@typespec/compiler";
2
2
  import { type GoEmitterOptions } from "./lib.js";
3
+ export { cleanupGeneratedFiles } from "./node-runner.js";
3
4
  export declare function $onEmit(context: EmitContext<GoEmitterOptions>): Promise<void>;
4
- /**
5
- * Clean up existing generated Go files in the output directory.
6
- * Removes any .go files that contain the Microsoft code generator comment.
7
- *
8
- * exported for testing purposes only.
9
- *
10
- * @param outputDir the directory to clean up
11
- */
12
- export declare function cleanupGeneratedFiles(outputDir: string): void;
13
5
  //# sourceMappingURL=emitter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2B,KAAK,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAOzF,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,UAAU,CAAC;AAInE,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,iBAqPnE;AAqED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,QAmBtD"}
1
+ {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,KAAK,WAAW,EAIjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,UAAU,CAAC;AAKnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,iBAuJnE"}
@@ -2,18 +2,17 @@
2
2
  * Copyright (c) Microsoft Corporation. All rights reserved.
3
3
  * Licensed under the MIT License. See License.txt in the project root for license information.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- import { NoTarget } from "@typespec/compiler";
6
- import { execSync } from "child_process";
7
- import { existsSync, opendirSync, readFileSync, unlinkSync } from "fs";
8
- import { mkdir, readFile, writeFile } from "fs/promises";
9
- import * as path from "path";
5
+ import { getDirectoryPath, joinPaths, NoTarget, } from "@typespec/compiler";
10
6
  import * as codegen from "./codegen/index.js";
11
7
  import { CodeModelError } from "./codemodel/errors.js";
12
8
  import { reportDiagnostic } from "./lib.js";
9
+ import { cleanupGeneratedFiles, runGoTools } from "./node-runner.js";
13
10
  import { Adapter, ExternalError } from "./tcgcadapter/adapter.js";
14
11
  import { AdapterError } from "./tcgcadapter/errors.js";
12
+ export { cleanupGeneratedFiles } from "./node-runner.js";
15
13
  export async function $onEmit(context) {
16
14
  try {
15
+ const host = context.program.host;
17
16
  // if there's an existing go.mod file, we'll use its module
18
17
  // identity instead of the provided value. this ensures we
19
18
  // get the correct major version suffix (if any). if there's
@@ -22,9 +21,9 @@ export async function $onEmit(context) {
22
21
  let moduleIdentity;
23
22
  let currentDir = context.emitterOutputDir;
24
23
  while (true) {
25
- const goModFile = path.join(currentDir, "go.mod");
26
- if (existsSync(goModFile)) {
27
- const goModFileContent = readFileSync(goModFile, "utf8");
24
+ const goModFile = joinPaths(currentDir, "go.mod");
25
+ if (await fileExists(host, goModFile)) {
26
+ const goModFileContent = (await host.readFile(goModFile)).text;
28
27
  // the module identity is specified on the "module" directive, e.g.
29
28
  // module github.com/Azure/azure-sdk-for-go/sdk/foo/v2
30
29
  const match = goModFileContent.match(/^module\s+(\S+)/m);
@@ -41,7 +40,7 @@ export async function $onEmit(context) {
41
40
  break;
42
41
  }
43
42
  // move to the parent directory
44
- const parentDir = path.dirname(currentDir);
43
+ const parentDir = getDirectoryPath(currentDir);
45
44
  if (parentDir === currentDir) {
46
45
  // we've reached the filesystem root without finding a go.mod.
47
46
  // this is expected the first time an SDK is generated, in which
@@ -81,7 +80,7 @@ export async function $onEmit(context) {
81
80
  }
82
81
  const adapter = await Adapter.create(context);
83
82
  const codeModel = adapter.tcgcToGoCodeModel();
84
- await mkdir(context.emitterOutputDir, { recursive: true });
83
+ await host.mkdirp(context.emitterOutputDir);
85
84
  // clean up existing generated Go files
86
85
  cleanupGeneratedFiles(context.emitterOutputDir);
87
86
  let filePrefix;
@@ -93,13 +92,12 @@ export async function $onEmit(context) {
93
92
  }
94
93
  }
95
94
  const emitter = new codegen.Emitter(codeModel, {
96
- exists: (name) => {
97
- return Promise.resolve(existsSync(`${context.emitterOutputDir}/${name}`));
98
- },
99
- read: (name) => readFile(`${context.emitterOutputDir}/${name}`, "utf8"),
95
+ exists: (name) => fileExists(host, joinPaths(context.emitterOutputDir, name)),
96
+ read: async (name) => (await host.readFile(joinPaths(context.emitterOutputDir, name))).text,
100
97
  write: async (name, content) => {
101
- await mkdir(path.dirname(`${context.emitterOutputDir}/${name}`), { recursive: true });
102
- return writeFile(`${context.emitterOutputDir}/${name}`, content);
98
+ const filePath = joinPaths(context.emitterOutputDir, name);
99
+ await host.mkdirp(getDirectoryPath(filePath));
100
+ return host.writeFile(filePath, content);
103
101
  },
104
102
  }, { filePrefix });
105
103
  await emitter.emit("tsp");
@@ -107,91 +105,7 @@ export async function $onEmit(context) {
107
105
  await emitter.emitExamples();
108
106
  await emitter.emitLicenseFile();
109
107
  await emitter.emitMetadataFile();
110
- const goGenerateFile = context.options["go-generate"];
111
- const goGenerateFileExists = goGenerateFile
112
- ? existsSync(`${context.emitterOutputDir}/${goGenerateFile}`)
113
- : false;
114
- if (goGenerateFile && !goGenerateFileExists) {
115
- // go-generate was specified but we didn't find the file, so error and exit
116
- context.program.reportDiagnostic({
117
- code: "gogenerate",
118
- severity: "error",
119
- message: `the go-generate file wasn't found. the complete path is ${context.emitterOutputDir}/${goGenerateFile}`,
120
- target: NoTarget,
121
- });
122
- // don't continue so the state of the SDK can be inspected without any additional changes
123
- return;
124
- }
125
- // probe to see if Go tools are on the path
126
- try {
127
- execSync("go version", { stdio: ["ignore", "ignore", "ignore"] });
128
- }
129
- catch {
130
- // if the transforms file exists and we don't have Go
131
- // on the path then make this an error as it means we
132
- // expect to transform the generated code but were unable
133
- // to do so.
134
- let severity = "warning";
135
- let message = "skip executing post emitter steps (is go on the path?)";
136
- if (goGenerateFileExists) {
137
- severity = "error";
138
- message =
139
- "unable to execute post emitter transformations due to missing go tool (is go on the path?)";
140
- }
141
- context.program.reportDiagnostic({
142
- code: "GoVersion",
143
- severity: severity,
144
- message: message,
145
- target: NoTarget,
146
- });
147
- // no Go tools available so exit
148
- return;
149
- }
150
- // if we have a post-generation transforms file then "go generate" it
151
- if (goGenerateFileExists) {
152
- try {
153
- execSync(`go generate ${goGenerateFile}`, {
154
- cwd: context.emitterOutputDir,
155
- encoding: "ascii",
156
- });
157
- }
158
- catch (err) {
159
- context.program.reportDiagnostic({
160
- code: "gogenerate",
161
- severity: "error",
162
- message: postEmitToolErrorMessage(`go generate ${goGenerateFile}`, err, context.emitterOutputDir),
163
- target: NoTarget,
164
- });
165
- // don't continue so the state of the SDK can be inspected without any additional changes
166
- return;
167
- }
168
- }
169
- // format after transforms in case any formatting gets munged
170
- try {
171
- execSync("gofmt -s -w .", { cwd: context.emitterOutputDir, encoding: "ascii" });
172
- }
173
- catch (err) {
174
- context.program.reportDiagnostic({
175
- code: "gofmt",
176
- severity: "error",
177
- message: postEmitToolErrorMessage("gofmt -s -w .", err, context.emitterOutputDir),
178
- target: NoTarget,
179
- });
180
- return;
181
- }
182
- // now go mod tidy
183
- try {
184
- execSync("go mod tidy", { cwd: context.emitterOutputDir, encoding: "ascii" });
185
- }
186
- catch (err) {
187
- context.program.reportDiagnostic({
188
- code: "gomodtidy",
189
- severity: "error",
190
- message: postEmitToolErrorMessage("go mod tidy", err, context.emitterOutputDir),
191
- target: NoTarget,
192
- });
193
- return;
194
- }
108
+ runGoTools(context);
195
109
  }
196
110
  catch (error) {
197
111
  if (error instanceof AdapterError) {
@@ -241,35 +155,16 @@ export async function $onEmit(context) {
241
155
  }
242
156
  }
243
157
  }
244
- /**
245
- * The Windows maximum path length. A process's current directory cannot exceed
246
- * this, so launching a Go tool with a longer working directory fails.
247
- */
248
- const WINDOWS_MAX_PATH = 260;
249
- /**
250
- * Build the diagnostic message for a post-emit Go tool that failed to run.
251
- *
252
- * When a tool cannot be launched because the emitter output directory exceeds
253
- * the Windows maximum path length, the underlying failure surfaces as a
254
- * spurious ENOENT against the command shell rather than anything mentioning the
255
- * path. In that case, replace the opaque error with an actionable explanation.
256
- *
257
- * @param command the command that was executed (for context in the message)
258
- * @param err the error thrown by execSync
259
- * @param outputDir the emitter output directory used as the working directory
260
- * @returns the diagnostic message
261
- */
262
- function postEmitToolErrorMessage(command, err, outputDir) {
263
- const error = err;
264
- if (process.platform === "win32" &&
265
- error.code === "ENOENT" &&
266
- outputDir.length > WINDOWS_MAX_PATH) {
267
- return (`unable to run '${command}': the tool could not be launched. This is typically caused by the ` +
268
- `emitter output directory path (${outputDir.length} characters) exceeding the Windows maximum ` +
269
- `path length of ${WINDOWS_MAX_PATH}; Windows cannot use a working directory longer than this. ` +
270
- `Emit to a shorter output directory. (output directory: ${outputDir})`);
158
+ async function fileExists(host, path) {
159
+ try {
160
+ return (await host.stat(path)).isFile();
161
+ }
162
+ catch (error) {
163
+ if (error.code === "ENOENT") {
164
+ return false;
165
+ }
166
+ throw error;
271
167
  }
272
- return error.message;
273
168
  }
274
169
  /**
275
170
  * drop frames after the specified frame.
@@ -300,32 +195,4 @@ function majorVersion(identity) {
300
195
  const match = identity.match(/\/v(\d+)$/);
301
196
  return match ? parseInt(match[1], 10) : 1;
302
197
  }
303
- /**
304
- * Clean up existing generated Go files in the output directory.
305
- * Removes any .go files that contain the Microsoft code generator comment.
306
- *
307
- * exported for testing purposes only.
308
- *
309
- * @param outputDir the directory to clean up
310
- */
311
- export function cleanupGeneratedFiles(outputDir) {
312
- if (!existsSync(outputDir)) {
313
- return;
314
- }
315
- const dir = opendirSync(outputDir);
316
- while (true) {
317
- const dirEnt = dir.readSync();
318
- if (dirEnt === null) {
319
- break;
320
- }
321
- if (dirEnt.isFile() && dirEnt.name.endsWith(".go")) {
322
- const content = readFileSync(dir.path + "/" + dirEnt.name, "utf8");
323
- if (codegen.doNotEditRegex.test(content)) {
324
- unlinkSync(dir.path + "/" + dirEnt.name);
325
- }
326
- }
327
- }
328
- dir.closeSync();
329
- cleanupGeneratedFiles(outputDir + "/fake");
330
- }
331
198
  //# sourceMappingURL=emitter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function cleanupGeneratedFiles(_outputDir: string): void;
2
+ export declare function runGoTools(): void;
3
+ //# sourceMappingURL=node-runner.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-runner.browser.d.ts","sourceRoot":"","sources":["../../src/node-runner.browser.ts"],"names":[],"mappings":"AAIA,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,QAAI;AAC5D,wBAAgB,UAAU,SAAK"}
@@ -0,0 +1,6 @@
1
+ // Copyright (c) Microsoft Corporation. All rights reserved.
2
+ // Licensed under the MIT License. See License.txt in the project root for license information.
3
+ // The playground owns its virtual output tree and cannot run native Go tools.
4
+ export function cleanupGeneratedFiles(_outputDir) { }
5
+ export function runGoTools() { }
6
+ //# sourceMappingURL=node-runner.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-runner.browser.js","sourceRoot":"","sources":["../../src/node-runner.browser.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,8EAA8E;AAC9E,MAAM,UAAU,qBAAqB,CAAC,UAAkB,IAAG,CAAC;AAC5D,MAAM,UAAU,UAAU,KAAI,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type EmitContext } from "@typespec/compiler";
2
+ import type { GoEmitterOptions } from "./lib.js";
3
+ export declare function runGoTools(context: EmitContext<GoEmitterOptions>): void;
4
+ export declare function cleanupGeneratedFiles(outputDir: string): void;
5
+ //# sourceMappingURL=node-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-runner.d.ts","sourceRoot":"","sources":["../../src/node-runner.ts"],"names":[],"mappings":"AAGA,OAAO,EAA2B,KAAK,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAIzF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,wBAAgB,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,QAuDhE;AAmBD,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,QAmBtD"}
@@ -0,0 +1,96 @@
1
+ // Copyright (c) Microsoft Corporation. All rights reserved.
2
+ // Licensed under the MIT License. See License.txt in the project root for license information.
3
+ import { NoTarget } from "@typespec/compiler";
4
+ import { execSync } from "child_process";
5
+ import { existsSync, opendirSync, readFileSync, unlinkSync } from "fs";
6
+ import { doNotEditRegex } from "./codegen/index.js";
7
+ export function runGoTools(context) {
8
+ const goGenerateFile = context.options["go-generate"];
9
+ const goGenerateFileExists = goGenerateFile
10
+ ? existsSync(`${context.emitterOutputDir}/${goGenerateFile}`)
11
+ : false;
12
+ if (goGenerateFile && !goGenerateFileExists) {
13
+ context.program.reportDiagnostic({
14
+ code: "gogenerate",
15
+ severity: "error",
16
+ message: `the go-generate file wasn't found. the complete path is ${context.emitterOutputDir}/${goGenerateFile}`,
17
+ target: NoTarget,
18
+ });
19
+ return;
20
+ }
21
+ try {
22
+ execSync("go version", { stdio: ["ignore", "ignore", "ignore"] });
23
+ }
24
+ catch {
25
+ let severity = "warning";
26
+ let message = "skip executing post emitter steps (is go on the path?)";
27
+ if (goGenerateFileExists) {
28
+ severity = "error";
29
+ message =
30
+ "unable to execute post emitter transformations due to missing go tool (is go on the path?)";
31
+ }
32
+ context.program.reportDiagnostic({
33
+ code: "GoVersion",
34
+ severity,
35
+ message,
36
+ target: NoTarget,
37
+ });
38
+ return;
39
+ }
40
+ const commands = [
41
+ ...(goGenerateFileExists
42
+ ? [[`go generate ${goGenerateFile}`, "gogenerate"]]
43
+ : []),
44
+ ["gofmt -s -w .", "gofmt"],
45
+ ["go mod tidy", "gomodtidy"],
46
+ ];
47
+ for (const [command, code] of commands) {
48
+ try {
49
+ execSync(command, { cwd: context.emitterOutputDir, encoding: "ascii" });
50
+ }
51
+ catch (err) {
52
+ context.program.reportDiagnostic({
53
+ code,
54
+ severity: "error",
55
+ message: postEmitToolErrorMessage(command, err, context.emitterOutputDir),
56
+ target: NoTarget,
57
+ });
58
+ return;
59
+ }
60
+ }
61
+ }
62
+ /**
63
+ * When Windows cannot launch a tool because its working directory is too long,
64
+ * replace the misleading ENOENT error with an actionable diagnostic.
65
+ */
66
+ function postEmitToolErrorMessage(command, err, outputDir) {
67
+ const error = err;
68
+ if (process.platform === "win32" && error.code === "ENOENT" && outputDir.length > 260) {
69
+ return (`unable to run '${command}': the tool could not be launched. This is typically caused by the ` +
70
+ `emitter output directory path (${outputDir.length} characters) exceeding the Windows maximum ` +
71
+ `path length of 260; Windows cannot use a working directory longer than this. ` +
72
+ `Emit to a shorter output directory. (output directory: ${outputDir})`);
73
+ }
74
+ return error.message;
75
+ }
76
+ export function cleanupGeneratedFiles(outputDir) {
77
+ if (!existsSync(outputDir)) {
78
+ return;
79
+ }
80
+ const dir = opendirSync(outputDir);
81
+ while (true) {
82
+ const dirEnt = dir.readSync();
83
+ if (dirEnt === null) {
84
+ break;
85
+ }
86
+ if (dirEnt.isFile() && dirEnt.name.endsWith(".go")) {
87
+ const content = readFileSync(dir.path + "/" + dirEnt.name, "utf8");
88
+ if (doNotEditRegex.test(content)) {
89
+ unlinkSync(dir.path + "/" + dirEnt.name);
90
+ }
91
+ }
92
+ }
93
+ dir.closeSync();
94
+ cleanupGeneratedFiles(outputDir + "/fake");
95
+ }
96
+ //# sourceMappingURL=node-runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-runner.js","sourceRoot":"","sources":["../../src/node-runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/metadata.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AA+BpE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,GAC3D,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzB"}
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/metadata.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AAGpE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,GAC3D,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzB"}
@@ -3,34 +3,7 @@
3
3
  * Licensed under the MIT License. See License.txt in the project root for license information.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as tcgc from "@azure-tools/typespec-client-generator-core";
6
- import { existsSync } from "fs";
7
- import { createRequire } from "module";
8
- import { dirname, join } from "path";
9
- import { fileURLToPath } from "url";
10
- /**
11
- * Locates this emitter's own package.json version by walking up from the current
12
- * module directory. Walking up (rather than using a fixed relative path) keeps
13
- * this working across both the built layout and when the emitter is loaded from
14
- * source (for example under vitest).
15
- */
16
- function getEmitterVersion() {
17
- const require = createRequire(import.meta.url);
18
- let dir = dirname(fileURLToPath(import.meta.url));
19
- for (;;) {
20
- const candidate = join(dir, "package.json");
21
- if (existsSync(candidate)) {
22
- const pkg = require(candidate);
23
- if (pkg["name"] === "@azure-tools/typespec-go") {
24
- return pkg["version"];
25
- }
26
- }
27
- const parent = dirname(dir);
28
- if (parent === dir) {
29
- return undefined;
30
- }
31
- dir = parent;
32
- }
33
- }
6
+ import packageJson from "../../package.json" with { type: "json" };
34
7
  /**
35
8
  * Build the package metadata from the TCGC SDK package metadata.
36
9
  *
@@ -42,7 +15,7 @@ export function buildMetadata(metadata) {
42
15
  if (metadata.apiVersions && metadata.apiVersions.size > 0) {
43
16
  result.apiVersions = Object.fromEntries(metadata.apiVersions);
44
17
  }
45
- result.emitterVersion = getEmitterVersion();
18
+ result.emitterVersion = packageJson.version;
46
19
  return result;
47
20
  }
48
21
  //# sourceMappingURL=metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/tcgcadapter/metadata.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC;;;;;GAKG;AACH,SAAS,iBAAiB;IACxB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/C,IAAI,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,SAAS,CAAC;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC5C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAA4B,CAAC;YAC1D,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,0BAA0B,EAAE,CAAC;gBAC/C,OAAO,GAAG,CAAC,SAAS,CAAuB,CAAC;YAC9C,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,QAA4D;IAE5D,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE5C,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/tcgcadapter/metadata.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AACpE,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,QAA4D;IAE5D,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC;IAE5C,OAAO,MAAM,CAAC;AAChB,CAAC"}