@azure-tools/typespec-go 0.8.7 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/codegen.go/src/core/clientFactory.js +5 -5
- package/dist/codegen.go/src/core/clientFactory.js.map +1 -1
- package/dist/codegen.go/src/core/cloudConfig.js +1 -1
- package/dist/codegen.go/src/core/cloudConfig.js.map +1 -1
- package/dist/codegen.go/src/core/constants.js +1 -1
- package/dist/codegen.go/src/core/constants.js.map +1 -1
- package/dist/codegen.go/src/core/example.d.ts +1 -1
- package/dist/codegen.go/src/core/example.d.ts.map +1 -1
- package/dist/codegen.go/src/core/example.js +34 -36
- package/dist/codegen.go/src/core/example.js.map +1 -1
- package/dist/codegen.go/src/core/helpers.d.ts +4 -13
- package/dist/codegen.go/src/core/helpers.d.ts.map +1 -1
- package/dist/codegen.go/src/core/helpers.js +16 -37
- package/dist/codegen.go/src/core/helpers.js.map +1 -1
- package/dist/codegen.go/src/core/imports.d.ts +39 -3
- package/dist/codegen.go/src/core/imports.d.ts.map +1 -1
- package/dist/codegen.go/src/core/imports.js +69 -18
- package/dist/codegen.go/src/core/imports.js.map +1 -1
- package/dist/codegen.go/src/core/interfaces.d.ts.map +1 -1
- package/dist/codegen.go/src/core/interfaces.js +1 -2
- package/dist/codegen.go/src/core/interfaces.js.map +1 -1
- package/dist/codegen.go/src/core/models.d.ts +0 -1
- package/dist/codegen.go/src/core/models.d.ts.map +1 -1
- package/dist/codegen.go/src/core/models.js +163 -84
- package/dist/codegen.go/src/core/models.js.map +1 -1
- package/dist/codegen.go/src/core/operations.d.ts.map +1 -1
- package/dist/codegen.go/src/core/operations.js +63 -31
- package/dist/codegen.go/src/core/operations.js.map +1 -1
- package/dist/codegen.go/src/core/options.js +14 -6
- package/dist/codegen.go/src/core/options.js.map +1 -1
- package/dist/codegen.go/src/core/polymorphics.d.ts +1 -2
- package/dist/codegen.go/src/core/polymorphics.d.ts.map +1 -1
- package/dist/codegen.go/src/core/polymorphics.js +13 -12
- package/dist/codegen.go/src/core/polymorphics.js.map +1 -1
- package/dist/codegen.go/src/core/responses.js +35 -12
- package/dist/codegen.go/src/core/responses.js.map +1 -1
- package/dist/codegen.go/src/core/time.d.ts +1 -2
- package/dist/codegen.go/src/core/time.d.ts.map +1 -1
- package/dist/codegen.go/src/core/time.js +51 -18
- package/dist/codegen.go/src/core/time.js.map +1 -1
- package/dist/codegen.go/src/core/version.js +1 -1
- package/dist/codegen.go/src/core/version.js.map +1 -1
- package/dist/codegen.go/src/core/xmlAdditionalProps.js +2 -2
- package/dist/codegen.go/src/core/xmlAdditionalProps.js.map +1 -1
- package/dist/codegen.go/src/emitter.js +12 -11
- package/dist/codegen.go/src/emitter.js.map +1 -1
- package/dist/codegen.go/src/fake/factory.d.ts +1 -1
- package/dist/codegen.go/src/fake/factory.d.ts.map +1 -1
- package/dist/codegen.go/src/fake/factory.js +9 -8
- package/dist/codegen.go/src/fake/factory.js.map +1 -1
- package/dist/codegen.go/src/fake/internal.d.ts +1 -1
- package/dist/codegen.go/src/fake/internal.d.ts.map +1 -1
- package/dist/codegen.go/src/fake/internal.js +3 -3
- package/dist/codegen.go/src/fake/internal.js.map +1 -1
- package/dist/codegen.go/src/fake/servers.d.ts +1 -1
- package/dist/codegen.go/src/fake/servers.d.ts.map +1 -1
- package/dist/codegen.go/src/fake/servers.js +131 -81
- package/dist/codegen.go/src/fake/servers.js.map +1 -1
- package/dist/codemodel.go/src/client.d.ts +19 -10
- package/dist/codemodel.go/src/client.d.ts.map +1 -1
- package/dist/codemodel.go/src/client.js +14 -9
- package/dist/codemodel.go/src/client.js.map +1 -1
- package/dist/codemodel.go/src/module.d.ts +29 -0
- package/dist/codemodel.go/src/module.d.ts.map +1 -1
- package/dist/codemodel.go/src/module.js +36 -0
- package/dist/codemodel.go/src/module.js.map +1 -1
- package/dist/codemodel.go/src/param.d.ts +4 -1
- package/dist/codemodel.go/src/param.d.ts.map +1 -1
- package/dist/codemodel.go/src/param.js +2 -1
- package/dist/codemodel.go/src/param.js.map +1 -1
- package/dist/codemodel.go/src/result.d.ts +1 -0
- package/dist/codemodel.go/src/result.d.ts.map +1 -1
- package/dist/codemodel.go/src/result.js +1 -0
- package/dist/codemodel.go/src/result.js.map +1 -1
- package/dist/codemodel.go/src/type.d.ts +23 -13
- package/dist/codemodel.go/src/type.d.ts.map +1 -1
- package/dist/codemodel.go/src/type.js +50 -28
- package/dist/codemodel.go/src/type.js.map +1 -1
- package/dist/typespec-go/src/emitter.d.ts.map +1 -1
- package/dist/typespec-go/src/emitter.js +9 -2
- package/dist/typespec-go/src/emitter.js.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/adapter.d.ts +23 -2
- package/dist/typespec-go/src/tcgcadapter/adapter.d.ts.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/adapter.js +96 -67
- package/dist/typespec-go/src/tcgcadapter/adapter.js.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/clients.d.ts +20 -16
- package/dist/typespec-go/src/tcgcadapter/clients.d.ts.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/clients.js +187 -119
- package/dist/typespec-go/src/tcgcadapter/clients.js.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/errors.d.ts +1 -1
- package/dist/typespec-go/src/tcgcadapter/errors.d.ts.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/errors.js +2 -1
- package/dist/typespec-go/src/tcgcadapter/errors.js.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/types.d.ts +14 -7
- package/dist/typespec-go/src/tcgcadapter/types.d.ts.map +1 -1
- package/dist/typespec-go/src/tcgcadapter/types.js +38 -33
- package/dist/typespec-go/src/tcgcadapter/types.js.map +1 -1
- package/package.json +8 -8
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
import { GoEmitterOptions } from '../lib.js';
|
|
2
2
|
import * as go from '../../../codemodel.go/src/index.js';
|
|
3
|
-
import
|
|
4
|
-
|
|
3
|
+
import * as tsp from '@typespec/compiler';
|
|
4
|
+
/**
|
|
5
|
+
* ExternalError is thrown when an external component reports a
|
|
6
|
+
* diagnostic error that would prevent the emitter from proceeding.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ExternalError extends Error {
|
|
9
|
+
}
|
|
10
|
+
/** Adapter converts the tcgc code model to an instance of the Go code model */
|
|
11
|
+
export declare class Adapter {
|
|
12
|
+
/**
|
|
13
|
+
* Creates an Adapter for the specified EmitContext.
|
|
14
|
+
*
|
|
15
|
+
* @param context the compiler context from which to create the Adapter
|
|
16
|
+
* @returns a new Adapter for the provided context
|
|
17
|
+
*/
|
|
18
|
+
static create(context: tsp.EmitContext<GoEmitterOptions>): Promise<Adapter>;
|
|
19
|
+
private readonly ctx;
|
|
20
|
+
private readonly options;
|
|
21
|
+
private readonly codeModel;
|
|
22
|
+
private constructor();
|
|
23
|
+
/** performs all the steps to convert tcgc to the Go code model */
|
|
24
|
+
tcgcToGoCodeModel(): go.CodeModel;
|
|
25
|
+
}
|
|
5
26
|
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAGzD,OAAO,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAGzD,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAG1C;;;GAGG;AACH,qBAAa,aAAc,SAAQ,KAAK;CAAI;AAE5C,+EAA+E;AAC/E,qBAAa,OAAO;IAClB;;;;;OAKG;WACU,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBjF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IAEzC,OAAO;IA8CP,kEAAkE;IAClE,iBAAiB,IAAI,EAAE,CAAC,SAAS;CAalC"}
|
|
@@ -2,79 +2,108 @@
|
|
|
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 {
|
|
5
|
+
import { ClientAdapter } from './clients.js';
|
|
6
6
|
import { AdapterError } from './errors.js';
|
|
7
|
-
import {
|
|
7
|
+
import { TypeAdapter } from './types.js';
|
|
8
8
|
import * as go from '../../../codemodel.go/src/index.js';
|
|
9
9
|
import * as naming from '../../../naming.go/src/index.js';
|
|
10
10
|
import * as tcgc from '@azure-tools/typespec-client-generator-core';
|
|
11
|
-
import { NoTarget } from '@typespec/compiler';
|
|
12
11
|
import { createRequire } from 'module';
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
12
|
+
/**
|
|
13
|
+
* ExternalError is thrown when an external component reports a
|
|
14
|
+
* diagnostic error that would prevent the emitter from proceeding.
|
|
15
|
+
*/
|
|
16
|
+
export class ExternalError extends Error {
|
|
17
|
+
}
|
|
18
|
+
/** Adapter converts the tcgc code model to an instance of the Go code model */
|
|
19
|
+
export class Adapter {
|
|
20
|
+
/**
|
|
21
|
+
* Creates an Adapter for the specified EmitContext.
|
|
22
|
+
*
|
|
23
|
+
* @param context the compiler context from which to create the Adapter
|
|
24
|
+
* @returns a new Adapter for the provided context
|
|
25
|
+
*/
|
|
26
|
+
static async create(context) {
|
|
27
|
+
naming.CommonAcronyms.push('^iso\\d+$');
|
|
28
|
+
// @encodedName can be used in XML scenarios, it
|
|
29
|
+
// is effectively the same as TypeSpec.Xml.@name.
|
|
30
|
+
// however, it's filtered out by default so we need
|
|
31
|
+
// to add it to the allow list of decorators
|
|
32
|
+
const ctx = await tcgc.createSdkContext(context, '@azure-tools/typespec-go', {
|
|
33
|
+
additionalDecorators: ['TypeSpec\\.@encodedName'],
|
|
34
|
+
disableUsageAccessPropagationToBase: true,
|
|
35
|
+
});
|
|
36
|
+
context.program.reportDiagnostics(ctx.diagnostics);
|
|
37
|
+
for (const diag of ctx.diagnostics) {
|
|
38
|
+
if (diag.severity === 'error') {
|
|
39
|
+
// there's no point in continuing if tcgc
|
|
40
|
+
// has reported diagnostic errors, so exit.
|
|
41
|
+
// this prevents spurious crashes in the
|
|
42
|
+
// emitter as our input state is invalid.
|
|
43
|
+
throw new ExternalError();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return new Adapter(ctx, context.options, context.emitterOutputDir);
|
|
47
|
+
}
|
|
48
|
+
ctx;
|
|
49
|
+
options;
|
|
50
|
+
codeModel;
|
|
51
|
+
constructor(ctx, options, emitterOutputDir) {
|
|
52
|
+
this.ctx = ctx;
|
|
53
|
+
this.options = options;
|
|
54
|
+
if (this.options['containing-module'] && this.options.module) {
|
|
55
|
+
throw new AdapterError('InvalidArgument', 'module and containing-module are mutually exclusive');
|
|
56
|
+
}
|
|
57
|
+
const goOptions = new go.Options(this.options['generate-fakes'] === true, this.options['inject-spans'] === true, this.options['disallow-unknown-fields'] === true,
|
|
58
|
+
// generate-examples has been deprecated, for compat we still support it.
|
|
59
|
+
this.options['generate-examples'] === true || this.options['generate-samples'] === true);
|
|
60
|
+
goOptions.headerText = this.ctx.sdkPackage.licenseInfo?.header;
|
|
61
|
+
goOptions.licenseText = this.ctx.sdkPackage.licenseInfo?.description;
|
|
62
|
+
goOptions.azcoreVersion = this.options['azcore-version'];
|
|
63
|
+
goOptions.omitConstructors = this.options['omit-constructors'] ?? false;
|
|
64
|
+
let root;
|
|
65
|
+
if (this.options.module) {
|
|
66
|
+
root = new go.Module(this.options.module);
|
|
67
|
+
}
|
|
68
|
+
else if (this.options['containing-module']) {
|
|
69
|
+
root = new go.ContainingModule(this.options['containing-module']);
|
|
70
|
+
root.package = new go.Package(naming.packageNameFromOutputFolder(emitterOutputDir), root);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
throw new AdapterError('InvalidArgument', 'missing argument module or containing-module');
|
|
74
|
+
}
|
|
75
|
+
const info = new go.Info(this.ctx.sdkPackage.crossLanguagePackageId);
|
|
76
|
+
const codeModelType = this.ctx.arm === true ? 'azure-arm' : 'data-plane';
|
|
77
|
+
this.codeModel = new go.CodeModel(info, codeModelType, goOptions, root);
|
|
78
|
+
// get the emitter version from our package.json
|
|
79
|
+
const packageJson = createRequire(import.meta.url)('../../../../package.json');
|
|
80
|
+
this.codeModel.metadata = {
|
|
81
|
+
...this.ctx.sdkPackage.metadata,
|
|
82
|
+
emitterVersion: packageJson['version']
|
|
83
|
+
};
|
|
84
|
+
this.codeModel.options.rawJSONAsBytes = this.options['rawjson-as-bytes'] ?? false;
|
|
85
|
+
this.codeModel.options.sliceElementsByval = this.options['slice-elements-byval'] ?? false;
|
|
86
|
+
this.codeModel.options.factoryGatherAllParams = this.options['factory-gather-all-params'] ?? true;
|
|
87
|
+
}
|
|
88
|
+
/** performs all the steps to convert tcgc to the Go code model */
|
|
89
|
+
tcgcToGoCodeModel() {
|
|
90
|
+
// TODO: stuttering fix-ups will need some rethinking for namespaces
|
|
91
|
+
const packageName = this.codeModel.root.kind === 'containingModule' ? this.codeModel.root.package.name : naming.packageNameFromOutputFolder(this.ctx.emitContext.emitterOutputDir);
|
|
92
|
+
fixStutteringTypeNames(this.ctx.sdkPackage, packageName, this.options);
|
|
93
|
+
const ta = new TypeAdapter(this.ctx, this.codeModel);
|
|
94
|
+
ta.adaptTypes();
|
|
95
|
+
const ca = new ClientAdapter(ta);
|
|
96
|
+
ca.adaptClients();
|
|
97
|
+
return this.codeModel;
|
|
68
98
|
}
|
|
69
|
-
// TODO: stuttering fix-ups will need some rethinking for namespaces
|
|
70
|
-
const packageName = codeModel.root.kind === 'containingModule' ? codeModel.root.package.name : naming.packageNameFromOutputFolder(codeModel.root.identity);
|
|
71
|
-
fixStutteringTypeNames(sdkContext.sdkPackage, packageName, context.options);
|
|
72
|
-
const ta = new typeAdapter(codeModel);
|
|
73
|
-
ta.adaptTypes(sdkContext);
|
|
74
|
-
const ca = new clientAdapter(ta, context);
|
|
75
|
-
ca.adaptClients(sdkContext.sdkPackage);
|
|
76
|
-
return codeModel;
|
|
77
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* fixes up names in the tcgc model to avoid stuttering.
|
|
102
|
+
*
|
|
103
|
+
* @param sdkPackage the tcgc data model
|
|
104
|
+
* @param packageName the package name used to remove stuttering
|
|
105
|
+
* @param options the Go emitter options
|
|
106
|
+
*/
|
|
78
107
|
function fixStutteringTypeNames(sdkPackage, packageName, options) {
|
|
79
108
|
let stutteringPrefix = packageName;
|
|
80
109
|
if (options.stutter) {
|
|
@@ -152,7 +181,7 @@ function fixStutteringTypeNames(sdkPackage, packageName, options) {
|
|
|
152
181
|
modelType.name = renameType(modelType.name);
|
|
153
182
|
}
|
|
154
183
|
if (collisions.length > 0) {
|
|
155
|
-
throw new AdapterError('NameCollision', collisions.join('\n')
|
|
184
|
+
throw new AdapterError('NameCollision', collisions.join('\n'));
|
|
156
185
|
}
|
|
157
186
|
}
|
|
158
187
|
//# sourceMappingURL=adapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AACzD,OAAO,KAAK,MAAM,MAAM,iCAAiC,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export declare class
|
|
6
|
-
private ta;
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
constructor(ta: typeAdapter, ctx: EmitContext<GoEmitterOptions>);
|
|
10
|
-
adaptClients(sdkPackage: tcgc.SdkPackage<tcgc.SdkHttpOperation>): void;
|
|
1
|
+
import { TypeAdapter } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* used to convert tcgc clients and their methods to Go code model types
|
|
4
|
+
*/
|
|
5
|
+
export declare class ClientAdapter {
|
|
6
|
+
private readonly ta;
|
|
7
|
+
private readonly clientParams;
|
|
8
|
+
constructor(ta: TypeAdapter);
|
|
11
9
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* NOTE: this is temporary and will go away with namespaces.
|
|
15
|
-
* @returns the module or package to contain the adapted tcgc model
|
|
10
|
+
* converts all clients and their methods to Go code model types.
|
|
11
|
+
* this includes parameter groups/options types and response envelopes.
|
|
16
12
|
*/
|
|
17
|
-
|
|
13
|
+
adaptClients(): void;
|
|
18
14
|
private recursiveAdaptClient;
|
|
19
15
|
/**
|
|
20
16
|
* creates a new Go client constructor using token credential authentication
|
|
@@ -24,6 +20,15 @@ export declare class clientAdapter {
|
|
|
24
20
|
* @returns a new Go client constructor using token credential authentication
|
|
25
21
|
*/
|
|
26
22
|
private createTokenCredentialCtor;
|
|
23
|
+
/**
|
|
24
|
+
* converts a tcgc client accessor method to a Go client accessor method
|
|
25
|
+
*
|
|
26
|
+
* @param sdkParent the tcgc client that contains the accessor method
|
|
27
|
+
* @param sdkChild the tcgc client accessor method to convert
|
|
28
|
+
* @param goClient the client to which the method belongs
|
|
29
|
+
* @param subClient the sub-client type that the method returns
|
|
30
|
+
*/
|
|
31
|
+
private adaptClientAccessor;
|
|
27
32
|
/**
|
|
28
33
|
* creates a new Go URI parameter from the specified tcgc path parameter
|
|
29
34
|
*
|
|
@@ -33,7 +38,6 @@ export declare class clientAdapter {
|
|
|
33
38
|
*/
|
|
34
39
|
private adaptURIParam;
|
|
35
40
|
private adaptMethod;
|
|
36
|
-
private hasDecorator;
|
|
37
41
|
private populateMethod;
|
|
38
42
|
private adaptMethodParameters;
|
|
39
43
|
private adaptContentType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/clients.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/clients.ts"],"names":[],"mappings":"AAYA,OAAO,EAAuB,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAc;IAKjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;gBAEnD,EAAE,EAAE,WAAW;IAK3B;;;OAGG;IACH,YAAY;IAYZ,OAAO,CAAC,oBAAoB;IAqS5B;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IAajC;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAyB3B;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,WAAW;IAqGnB,OAAO,CAAC,cAAc;IAiDtB,OAAO,CAAC,qBAAqB;IAoQ7B,OAAO,CAAC,gBAAgB;IAcxB;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAgI5B,OAAO,CAAC,0BAA0B;IAiBlC,OAAO,CAAC,qBAAqB;IAoI7B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,iBAAiB;IAoDzB,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,6BAA6B;IAQrC,OAAO,CAAC,mBAAmB;IAsC3B,OAAO,CAAC,0BAA0B;IAoFlC,OAAO,CAAC,gBAAgB;CAqGzB"}
|