@vaadin/hilla-generator-core 24.9.1 → 24.9.2
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/Generator.js.map +1 -1
- package/Plugin.js.map +1 -1
- package/PluginManager.js.map +1 -1
- package/ReferenceResolver.js.map +1 -1
- package/Schema.js.map +1 -1
- package/package.json +2 -2
package/Generator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAAA,OAAO,gDAAiD;AAGxD,OAAO,oBAAqB;AAE5B,OAAO,uCAAwC;AAC/C,OAAO,+CAAgD;AAQvD,eAAe,MAAM,UAAU;CAC7B,AAASA;CACT,AAASC;CACT,AAASC;CACT,AAASC;CAET,YAAYC,SAAuCC,SAA2B;AAC5E,OAAKH,UAAU,IAAI;AACnB,OAAKD,WAAW,IAAI,cAAc,SAAS,IAAI,kBAAkB,KAAKC,UAAU,QAAQ;AACxF,OAAKF,UAAU,QAAQ;AACvB,OAAKG,aAAa,QAAQ;CAC3B;CAED,MAAM,QAAQG,OAAyC;AACrD,OAAKN,QAAQ,OAAO,MAAM,qBAAqB;EAC/C,MAAM,MAAO,MAAM,KAAKE,QAAQ,OAAO,KAAK,MAAM,MAAM,CAAC;EAEzD,MAAMK,UAAyB;GAC7B;GACA,SAAS,KAAKL,QAAQ;GACtB,WAAW,KAAKC;GAChB,eAAe,IAAI;GACnB,SAAS,CAAE;GACX,eAAe,IAAI;EACpB;AAED,OAAKH,QAAQ,OAAO,MAAM,oBAAoB;AAC9C,QAAM,KAAKC,SAAS,QAAQ,QAAQ;AAEpC,OAAKD,QAAQ,OAAO,MAAM,iBAAiB;EAC3C,MAAM,UAAU,GAAG,cAAc,EAAE,SAAS,GAAG,YAAY,SAAU,EAAC;AAEtE,SAAO,QAAQ,QAAQ,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,UAAU,KAAK,AAAC,GAAE,KAAK,UAAU;CACzF;AACF","names":["#logger","#manager","#parser","#outputDir","plugins: readonly PluginConstructor[]","context: GeneratorContext","input: string","storage: SharedStorage"],"sources":["/opt/agent/work/
|
|
1
|
+
{"mappings":"AAAA,OAAO,gDAAiD;AAGxD,OAAO,oBAAqB;AAE5B,OAAO,uCAAwC;AAC/C,OAAO,+CAAgD;AAQvD,eAAe,MAAM,UAAU;CAC7B,AAASA;CACT,AAASC;CACT,AAASC;CACT,AAASC;CAET,YAAYC,SAAuCC,SAA2B;AAC5E,OAAKH,UAAU,IAAI;AACnB,OAAKD,WAAW,IAAI,cAAc,SAAS,IAAI,kBAAkB,KAAKC,UAAU,QAAQ;AACxF,OAAKF,UAAU,QAAQ;AACvB,OAAKG,aAAa,QAAQ;CAC3B;CAED,MAAM,QAAQG,OAAyC;AACrD,OAAKN,QAAQ,OAAO,MAAM,qBAAqB;EAC/C,MAAM,MAAO,MAAM,KAAKE,QAAQ,OAAO,KAAK,MAAM,MAAM,CAAC;EAEzD,MAAMK,UAAyB;GAC7B;GACA,SAAS,KAAKL,QAAQ;GACtB,WAAW,KAAKC;GAChB,eAAe,IAAI;GACnB,SAAS,CAAE;GACX,eAAe,IAAI;EACpB;AAED,OAAKH,QAAQ,OAAO,MAAM,oBAAoB;AAC9C,QAAM,KAAKC,SAAS,QAAQ,QAAQ;AAEpC,OAAKD,QAAQ,OAAO,MAAM,iBAAiB;EAC3C,MAAM,UAAU,GAAG,cAAc,EAAE,SAAS,GAAG,YAAY,SAAU,EAAC;AAEtE,SAAO,QAAQ,QAAQ,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,UAAU,KAAK,AAAC,GAAE,KAAK,UAAU;CACzF;AACF","names":["#logger","#manager","#parser","#outputDir","plugins: readonly PluginConstructor[]","context: GeneratorContext","input: string","storage: SharedStorage"],"sources":["/opt/agent/work/649c11185a3798db/packages/ts/generator-core/src/Generator.ts"],"sourcesContent":["import SwaggerParser from '@apidevtools/swagger-parser';\nimport type LoggerFactory from '@vaadin/hilla-generator-utils/LoggerFactory.js';\nimport type { OpenAPIV3 } from 'openapi-types';\nimport ts from 'typescript';\nimport type { PluginConstructor } from './Plugin.js';\nimport PluginManager from './PluginManager.js';\nimport ReferenceResolver from './ReferenceResolver.js';\nimport type { SharedStorage } from './SharedStorage.js';\n\nexport type GeneratorContext = Readonly<{\n logger: LoggerFactory;\n outputDir?: string;\n}>;\n\nexport default class Generator {\n readonly #logger: LoggerFactory;\n readonly #manager: PluginManager;\n readonly #parser: SwaggerParser;\n readonly #outputDir: string | undefined;\n\n constructor(plugins: readonly PluginConstructor[], context: GeneratorContext) {\n this.#parser = new SwaggerParser();\n this.#manager = new PluginManager(plugins, new ReferenceResolver(this.#parser), context.logger);\n this.#logger = context.logger;\n this.#outputDir = context.outputDir;\n }\n\n async process(input: string): Promise<readonly File[]> {\n this.#logger.global.debug('Processing OpenAPI');\n const api = (await this.#parser.bundle(JSON.parse(input))) as OpenAPIV3.Document;\n\n const storage: SharedStorage = {\n api,\n apiRefs: this.#parser.$refs,\n outputDir: this.#outputDir,\n pluginStorage: new Map(),\n sources: [],\n transferTypes: new Map(),\n };\n\n this.#logger.global.debug('Executing plugins');\n await this.#manager.execute(storage);\n\n this.#logger.global.debug('Printing files');\n const printer = ts.createPrinter({ newLine: ts.NewLineKind.LineFeed });\n\n return storage.sources.map((file) => new File([printer.printFile(file)], file.fileName));\n }\n}\n"],"version":3}
|
package/Plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAMA,eAAe,MAAe,OAAO;CACnC,AAAS;CACT,AAAS;CAET,YAAYA,UAA6BC,QAAuB;AAC9D,OAAK,SAAS,OAAO,IAAI,KAAK,YAAY,KAAK;AAC/C,OAAK,WAAW;CACjB;CAED,IAAI,OAAe;AACjB,SAAO,KAAK,YAAY;CACzB;AAKF","names":["resolver: ReferenceResolver","logger: LoggerFactory"],"sources":["/opt/agent/work/
|
|
1
|
+
{"mappings":"AAMA,eAAe,MAAe,OAAO;CACnC,AAAS;CACT,AAAS;CAET,YAAYA,UAA6BC,QAAuB;AAC9D,OAAK,SAAS,OAAO,IAAI,KAAK,YAAY,KAAK;AAC/C,OAAK,WAAW;CACjB;CAED,IAAI,OAAe;AACjB,SAAO,KAAK,YAAY;CACzB;AAKF","names":["resolver: ReferenceResolver","logger: LoggerFactory"],"sources":["/opt/agent/work/649c11185a3798db/packages/ts/generator-core/src/Plugin.ts"],"sourcesContent":["import type LoggerFactory from '@vaadin/hilla-generator-utils/LoggerFactory.js';\nimport type { Logger } from '@vaadin/hilla-generator-utils/LoggerFactory.js';\nimport type { Constructor } from 'type-fest';\nimport type ReferenceResolver from './ReferenceResolver.js';\nimport type { SharedStorage } from './SharedStorage.js';\n\nexport default abstract class Plugin {\n readonly resolver: ReferenceResolver;\n readonly logger: Logger;\n\n constructor(resolver: ReferenceResolver, logger: LoggerFactory) {\n this.logger = logger.for(this.constructor.name);\n this.resolver = resolver;\n }\n\n get name(): string {\n return this.constructor.name;\n }\n\n abstract get path(): string;\n\n abstract execute(storage: SharedStorage): Promise<void> | void;\n}\n\nexport type PluginConstructor = Constructor<Plugin, ConstructorParameters<typeof Plugin>>;\n"],"version":3}
|
package/PluginManager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAMA,eAAe,MAAM,cAAc;CACjC,AAASA;CAET,YAAYC,SAAuCC,UAA6BC,QAAuB;EACrG,MAAM,kBAAkB;GACtB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACD;EACD,MAAM,gBAAgB,QAAQ,OAAO,CAAC,OAAO,gBAAgB,SAAS,EAAE,KAAK,CAAC;AAC9E,MAAI,cAAc,SAAS,GAAG;AAC5B,UAAO,OAAO,MAAM,WAAW,QAAQ,IAAI,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE;EAC7E;AACD,OAAKH,WAAW,QAAQ,IAAI,CAAC,gBAAgB,IAAI,YAAY,UAAU,QAAQ;CAChF;CAED,MAAM,QAAQI,SAAuC;AAEnD,OAAK,MAAM,UAAU,KAAKJ,UAAU;GAClC,MAAM,EAAE,MAAM,MAAM,GAAG;AACvB,UAAO,OAAO,MAAM,EAAE,QAAQ;IAAE;IAAM;GAAM,EAAE,IAAG,oBAAoB,OAAO,KAAK,GAAG;AAEpF,SAAM,OAAO,QAAQ,QAAQ;EAC9B;CACF;AACF","names":["#plugins","plugins: readonly PluginConstructor[]","resolver: ReferenceResolver","logger: LoggerFactory","storage: SharedStorage"],"sources":["/opt/agent/work/
|
|
1
|
+
{"mappings":"AAMA,eAAe,MAAM,cAAc;CACjC,AAASA;CAET,YAAYC,SAAuCC,UAA6BC,QAAuB;EACrG,MAAM,kBAAkB;GACtB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACD;EACD,MAAM,gBAAgB,QAAQ,OAAO,CAAC,OAAO,gBAAgB,SAAS,EAAE,KAAK,CAAC;AAC9E,MAAI,cAAc,SAAS,GAAG;AAC5B,UAAO,OAAO,MAAM,WAAW,QAAQ,IAAI,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE;EAC7E;AACD,OAAKH,WAAW,QAAQ,IAAI,CAAC,gBAAgB,IAAI,YAAY,UAAU,QAAQ;CAChF;CAED,MAAM,QAAQI,SAAuC;AAEnD,OAAK,MAAM,UAAU,KAAKJ,UAAU;GAClC,MAAM,EAAE,MAAM,MAAM,GAAG;AACvB,UAAO,OAAO,MAAM,EAAE,QAAQ;IAAE;IAAM;GAAM,EAAE,IAAG,oBAAoB,OAAO,KAAK,GAAG;AAEpF,SAAM,OAAO,QAAQ,QAAQ;EAC9B;CACF;AACF","names":["#plugins","plugins: readonly PluginConstructor[]","resolver: ReferenceResolver","logger: LoggerFactory","storage: SharedStorage"],"sources":["/opt/agent/work/649c11185a3798db/packages/ts/generator-core/src/PluginManager.ts"],"sourcesContent":["import type LoggerFactory from '@vaadin/hilla-generator-utils/LoggerFactory.js';\nimport type Plugin from './Plugin.js';\nimport type { PluginConstructor } from './Plugin.js';\nimport type ReferenceResolver from './ReferenceResolver.js';\nimport type { SharedStorage } from './SharedStorage.js';\n\nexport default class PluginManager {\n readonly #plugins: Plugin[];\n\n constructor(plugins: readonly PluginConstructor[], resolver: ReferenceResolver, logger: LoggerFactory) {\n const standardPlugins = [\n 'TransferTypesPlugin',\n 'BackbonePlugin',\n 'ClientPlugin',\n 'BarrelPlugin',\n 'ModelPlugin',\n 'PushPlugin',\n 'SubTypesPlugin',\n 'SignalsPlugin',\n ];\n const customPlugins = plugins.filter((p) => !standardPlugins.includes(p.name));\n if (customPlugins.length > 0) {\n logger.global.info(`Plugins: ${plugins.map(({ name }) => name).join(', ')}`);\n }\n this.#plugins = plugins.map((PluginClass) => new PluginClass(resolver, logger));\n }\n\n async execute(storage: SharedStorage): Promise<void> {\n // We need to run plugins sequentially\n for (const plugin of this.#plugins) {\n const { name, path } = plugin;\n plugin.logger.debug({ plugin: { name, path } }, `Executing plugin '${plugin.name}'`);\n // eslint-disable-next-line no-await-in-loop\n await plugin.execute(storage);\n }\n }\n}\n"],"version":3}
|
package/ReferenceResolver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAGA,eAAe,MAAM,kBAAkB;CACrC,AAASA;CAET,YAAYC,QAAuB;AACjC,OAAKD,UAAU;CAChB;CAED,QAA0BE,KAAuC;AAC/D,SAAO,UAAU,MAAM,KAAKF,QAAQ,MAAM,IAAI,IAAI,KAAK,GAAG;CAC3D;AACF","names":["#parser","parser: SwaggerParser","obj: OpenAPIV3.ReferenceObject | T"],"sources":["/opt/agent/work/
|
|
1
|
+
{"mappings":"AAGA,eAAe,MAAM,kBAAkB;CACrC,AAASA;CAET,YAAYC,QAAuB;AACjC,OAAKD,UAAU;CAChB;CAED,QAA0BE,KAAuC;AAC/D,SAAO,UAAU,MAAM,KAAKF,QAAQ,MAAM,IAAI,IAAI,KAAK,GAAG;CAC3D;AACF","names":["#parser","parser: SwaggerParser","obj: OpenAPIV3.ReferenceObject | T"],"sources":["/opt/agent/work/649c11185a3798db/packages/ts/generator-core/src/ReferenceResolver.ts"],"sourcesContent":["import type SwaggerParser from '@apidevtools/swagger-parser';\nimport type { OpenAPIV3 } from 'openapi-types';\n\nexport default class ReferenceResolver {\n readonly #parser: SwaggerParser;\n\n constructor(parser: SwaggerParser) {\n this.#parser = parser;\n }\n\n resolve<T extends object>(obj: OpenAPIV3.ReferenceObject | T): T {\n return '$ref' in obj ? this.#parser.$refs.get(obj.$ref) : obj;\n }\n}\n"],"version":3}
|
package/Schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAqCA,OAAO,SAAS,kBAAkBA,QAA2C;AAC3E,QAAO,UAAU;AAClB;AAED,OAAO,SAAS,0BAA0BA,QAAmD;AAC3F,QAAO,WAAW;AACnB;AAED,OAAO,SAAS,0BAA0BA,QAAmD;AAC3F,QAAO,WAAW;AACnB;AAED,OAAO,SAAS,0BAA0BA,QAAmD;AAC3F,QAAO,WAAW;AACnB;AAED,OAAO,SAAS,wBAAwBA,QAAiD;AACvF,QAAO,SAAS;AACjB;AAED,OAAO,SAAS,iBAAiBA,QAA0C;AACzE,QACE,0BAA0B,OAAO,IACjC,0BAA0B,OAAO,IACjC,0BAA0B,OAAO,IACjC,wBAAwB,OAAO;AAElC;AAED,OAAO,SAAS,oBAAoBA,QAA6C;AAC/E,SAAQ,iBAAiB,OAAO;AACjC;AAED,OAAO,SAAS,2BAA2BA,QAAoD;AAC7F,QAAO,oBAAoB,OAAO,KAAK,kBAAkB,OAAO;AACjE;AAED,OAAO,SAAS,iBAAiBA,QAA0C;AACzE,SAAQ,kBAAkB,OAAO,MAAM,OAAO;AAC/C;AAED,OAAO,SAAS,gBAAgBC,QAA2C;AACzE,KAAI,0BAA0B,OAAO,EAAE;AACrC,SAAO,OAAO;CACf;AAED,KAAI,0BAA0B,OAAO,EAAE;AACrC,SAAO,OAAO;CACf;AAED,KAAI,0BAA0B,OAAO,EAAE;AACrC,SAAO,OAAO;CACf;AAED,QAAO,CAAC,OAAO,GAAI;AACpB;AAED,OAAO,SAAS,cAAcD,QAAuC;AACnE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,gBAAgBA,QAAyC;AACvE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,gBAAgBA,QAAyC;AACvE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,eAAeA,QAAwC;AACrE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,eAAeA,QAAwC;AACrE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,eAAeA,QAAwC;AACrE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,aAAaA,QAAsC;AACjE,QAAO,eAAe,OAAO,MAAM,OAAO;AAC3C;AAED,OAAO,SAAS,cAAcA,QAA6C;AACzE,QAAO,eAAe,OAAO,KAAK,OAAO;AAC1C;AAED,OAAO,SAAS,YAAYA,QAAqC;AAC/D,QAAO,cAAc,OAAO,MAAM,OAAO;AAC1C;AAED,OAAO,SAAS,2BAA2BE,MAAsB;AAC/D,QAAO,KAAK,UAAU,KAAK,YAAY,KAAK,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,GAAG,KAAK,OAAO;AACzF;AAED,OAAO,SAAS,kCAAkC,EAAE,MAAuB,EAAU;AACnF,QAAO,2BAA2B,KAAK;AACxC;AAED,MAAM,gCAAgC,wBAAwB;AAE9D,OAAO,SAAS,2CAA2C,EAAE,MAAuB,EAAU;AAC5F,QAAO,KAAK,UAAU,8BAA8B;AACrD;AAED,OAAO,SAAS,wCAAwCA,MAAsB;AAC5E,QAAO,KAAK,QAAQ,UAAU,IAAI;AACnC;AAED,OAAO,SAAS,6BAA6BC,QAAiC;AAC5E,QAAO,wCAAwC,2CAA2C,OAAO,CAAC;AACnG;AAED,OAAO,SAAS,iBACdC,SACA,EAAE,MAAuB,EACL;AACpB,KAAI,SAAS;AACX,OAAK,MAAM,CAAC,MAAM,OAAO,IAAI,OAAO,QAAQ,QAAQ,EAAE;AACpD,OAAI,KAAK,SAAS,KAAK,EAAE;AACvB,WAAO;GACR;EACF;CACF;AAED,QAAO;AACR","names":["schema: Schema","schema: ComposedSchema","name: string","schema: ReferenceSchema","schemas: OpenAPIV3.ComponentsObject['schemas']"],"sources":["/opt/agent/work/
|
|
1
|
+
{"mappings":"AAqCA,OAAO,SAAS,kBAAkBA,QAA2C;AAC3E,QAAO,UAAU;AAClB;AAED,OAAO,SAAS,0BAA0BA,QAAmD;AAC3F,QAAO,WAAW;AACnB;AAED,OAAO,SAAS,0BAA0BA,QAAmD;AAC3F,QAAO,WAAW;AACnB;AAED,OAAO,SAAS,0BAA0BA,QAAmD;AAC3F,QAAO,WAAW;AACnB;AAED,OAAO,SAAS,wBAAwBA,QAAiD;AACvF,QAAO,SAAS;AACjB;AAED,OAAO,SAAS,iBAAiBA,QAA0C;AACzE,QACE,0BAA0B,OAAO,IACjC,0BAA0B,OAAO,IACjC,0BAA0B,OAAO,IACjC,wBAAwB,OAAO;AAElC;AAED,OAAO,SAAS,oBAAoBA,QAA6C;AAC/E,SAAQ,iBAAiB,OAAO;AACjC;AAED,OAAO,SAAS,2BAA2BA,QAAoD;AAC7F,QAAO,oBAAoB,OAAO,KAAK,kBAAkB,OAAO;AACjE;AAED,OAAO,SAAS,iBAAiBA,QAA0C;AACzE,SAAQ,kBAAkB,OAAO,MAAM,OAAO;AAC/C;AAED,OAAO,SAAS,gBAAgBC,QAA2C;AACzE,KAAI,0BAA0B,OAAO,EAAE;AACrC,SAAO,OAAO;CACf;AAED,KAAI,0BAA0B,OAAO,EAAE;AACrC,SAAO,OAAO;CACf;AAED,KAAI,0BAA0B,OAAO,EAAE;AACrC,SAAO,OAAO;CACf;AAED,QAAO,CAAC,OAAO,GAAI;AACpB;AAED,OAAO,SAAS,cAAcD,QAAuC;AACnE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,gBAAgBA,QAAyC;AACvE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,gBAAgBA,QAAyC;AACvE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,eAAeA,QAAwC;AACrE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,eAAeA,QAAwC;AACrE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,eAAeA,QAAwC;AACrE,QAAO,2BAA2B,OAAO,IAAI,OAAO,SAAS;AAC9D;AAED,OAAO,SAAS,aAAaA,QAAsC;AACjE,QAAO,eAAe,OAAO,MAAM,OAAO;AAC3C;AAED,OAAO,SAAS,cAAcA,QAA6C;AACzE,QAAO,eAAe,OAAO,KAAK,OAAO;AAC1C;AAED,OAAO,SAAS,YAAYA,QAAqC;AAC/D,QAAO,cAAc,OAAO,MAAM,OAAO;AAC1C;AAED,OAAO,SAAS,2BAA2BE,MAAsB;AAC/D,QAAO,KAAK,UAAU,KAAK,YAAY,KAAK,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,GAAG,KAAK,OAAO;AACzF;AAED,OAAO,SAAS,kCAAkC,EAAE,MAAuB,EAAU;AACnF,QAAO,2BAA2B,KAAK;AACxC;AAED,MAAM,gCAAgC,wBAAwB;AAE9D,OAAO,SAAS,2CAA2C,EAAE,MAAuB,EAAU;AAC5F,QAAO,KAAK,UAAU,8BAA8B;AACrD;AAED,OAAO,SAAS,wCAAwCA,MAAsB;AAC5E,QAAO,KAAK,QAAQ,UAAU,IAAI;AACnC;AAED,OAAO,SAAS,6BAA6BC,QAAiC;AAC5E,QAAO,wCAAwC,2CAA2C,OAAO,CAAC;AACnG;AAED,OAAO,SAAS,iBACdC,SACA,EAAE,MAAuB,EACL;AACpB,KAAI,SAAS;AACX,OAAK,MAAM,CAAC,MAAM,OAAO,IAAI,OAAO,QAAQ,QAAQ,EAAE;AACpD,OAAI,KAAK,SAAS,KAAK,EAAE;AACvB,WAAO;GACR;EACF;CACF;AAED,QAAO;AACR","names":["schema: Schema","schema: ComposedSchema","name: string","schema: ReferenceSchema","schemas: OpenAPIV3.ComponentsObject['schemas']"],"sources":["/opt/agent/work/649c11185a3798db/packages/ts/generator-core/src/Schema.ts"],"sourcesContent":["import type { OpenAPIV3 } from 'openapi-types';\n\nexport type Nullified<T, K extends keyof T> = T & Record<K, undefined>;\n\nexport type ReferenceSchema = OpenAPIV3.ReferenceObject;\nexport type ArraySchema = OpenAPIV3.ArraySchemaObject;\nexport type NonArraySchema = OpenAPIV3.NonArraySchemaObject;\nexport type RegularSchema = ArraySchema | NonArraySchema;\n\nexport type NullableSchema = Readonly<Required<Pick<RegularSchema, 'nullable'>>> & RegularSchema;\n\nexport type AnyOfRuleComposedSchema = Readonly<Required<Pick<RegularSchema, 'anyOf'>>> & RegularSchema;\nexport type AllOfRuleComposedSchema = Readonly<Required<Pick<RegularSchema, 'allOf'>>> & RegularSchema;\nexport type OneOfRuleComposedSchema = Readonly<Required<Pick<RegularSchema, 'oneOf'>>> & RegularSchema;\nexport type NotRuleComposedSchema = Readonly<Required<Pick<RegularSchema, 'not'>>> & RegularSchema;\nexport type ComposedSchema =\n | AllOfRuleComposedSchema\n | AnyOfRuleComposedSchema\n | NotRuleComposedSchema\n | OneOfRuleComposedSchema;\n\nexport type NonComposedRegularSchema = Readonly<Nullified<RegularSchema, 'allOf' | 'anyOf' | 'oneOf'>> & RegularSchema;\nexport type NonComposedSchema = NonComposedRegularSchema | ReferenceSchema;\n\nexport type BooleanSchema = NonComposedRegularSchema & Readonly<{ type: 'boolean' }>;\nexport type IntegerSchema = NonComposedRegularSchema & Readonly<{ type: 'integer' }>;\nexport type NumberSchema = NonComposedRegularSchema & Readonly<{ type: 'number' }>;\nexport type ObjectSchema = NonComposedRegularSchema & Readonly<{ type: 'object' }>;\nexport type StringSchema = NonComposedRegularSchema & Readonly<{ type: 'string' }>;\n\nexport type EnumSchema = Readonly<Required<Pick<StringSchema, 'enum'>>> & StringSchema;\nexport type EmptyObjectSchema = ObjectSchema & Readonly<Nullified<ObjectSchema, 'properties'>>;\nexport type NonEmptyObjectSchema = ObjectSchema & Readonly<Required<Pick<ObjectSchema, 'properties'>>>;\nexport type MapSchema = EmptyObjectSchema & Readonly<Required<Pick<ObjectSchema, 'additionalProperties'>>>;\n\nexport type Schema = ReferenceSchema | RegularSchema;\n\nexport function isReferenceSchema(schema: Schema): schema is ReferenceSchema {\n return '$ref' in schema;\n}\n\nexport function isAnyOfRuleComposedSchema(schema: Schema): schema is AnyOfRuleComposedSchema {\n return 'anyOf' in schema;\n}\n\nexport function isAllOfRuleComposedSchema(schema: Schema): schema is AllOfRuleComposedSchema {\n return 'allOf' in schema;\n}\n\nexport function isOneOfRuleComposedSchema(schema: Schema): schema is OneOfRuleComposedSchema {\n return 'oneOf' in schema;\n}\n\nexport function isNotRuleComposedSchema(schema: Schema): schema is NotRuleComposedSchema {\n return 'not' in schema;\n}\n\nexport function isComposedSchema(schema: Schema): schema is ComposedSchema {\n return (\n isAnyOfRuleComposedSchema(schema) ||\n isAllOfRuleComposedSchema(schema) ||\n isOneOfRuleComposedSchema(schema) ||\n isNotRuleComposedSchema(schema)\n );\n}\n\nexport function isNonComposedSchema(schema: Schema): schema is NonComposedSchema {\n return !isComposedSchema(schema);\n}\n\nexport function isNonComposedRegularSchema(schema: Schema): schema is NonComposedRegularSchema {\n return isNonComposedSchema(schema) && !isReferenceSchema(schema);\n}\n\nexport function isNullableSchema(schema: Schema): schema is NullableSchema {\n return !isReferenceSchema(schema) && !!schema.nullable;\n}\n\nexport function decomposeSchema(schema: ComposedSchema): readonly Schema[] {\n if (isAnyOfRuleComposedSchema(schema)) {\n return schema.anyOf;\n }\n\n if (isAllOfRuleComposedSchema(schema)) {\n return schema.allOf;\n }\n\n if (isOneOfRuleComposedSchema(schema)) {\n return schema.oneOf;\n }\n\n return [schema.not];\n}\n\nexport function isArraySchema(schema: Schema): schema is ArraySchema {\n return isNonComposedRegularSchema(schema) && schema.type === 'array';\n}\n\nexport function isBooleanSchema(schema: Schema): schema is BooleanSchema {\n return isNonComposedRegularSchema(schema) && schema.type === 'boolean';\n}\n\nexport function isIntegerSchema(schema: Schema): schema is IntegerSchema {\n return isNonComposedRegularSchema(schema) && schema.type === 'integer';\n}\n\nexport function isNumberSchema(schema: Schema): schema is NumberSchema {\n return isNonComposedRegularSchema(schema) && schema.type === 'number';\n}\n\nexport function isObjectSchema(schema: Schema): schema is ObjectSchema {\n return isNonComposedRegularSchema(schema) && schema.type === 'object';\n}\n\nexport function isStringSchema(schema: Schema): schema is StringSchema {\n return isNonComposedRegularSchema(schema) && schema.type === 'string';\n}\n\nexport function isEnumSchema(schema: Schema): schema is EnumSchema {\n return isStringSchema(schema) && !!schema.enum;\n}\n\nexport function isEmptyObject(schema: Schema): schema is EmptyObjectSchema {\n return isObjectSchema(schema) && !schema.properties;\n}\n\nexport function isMapSchema(schema: Schema): schema is MapSchema {\n return isEmptyObject(schema) && !!schema.additionalProperties;\n}\n\nexport function simplifyFullyQualifiedName(name: string): string {\n return name.substring(name.lastIndexOf(name.includes('$') ? '$' : '.') + 1, name.length);\n}\n\nexport function convertReferenceSchemaToSpecifier({ $ref }: ReferenceSchema): string {\n return simplifyFullyQualifiedName($ref);\n}\n\nconst COMPONENTS_SCHEMAS_REF_LENGTH = '#/components/schemas/'.length;\n\nexport function convertReferenceSchemaToFullyQualifiedName({ $ref }: ReferenceSchema): string {\n return $ref.substring(COMPONENTS_SCHEMAS_REF_LENGTH);\n}\n\nexport function convertFullyQualifiedNameToRelativePath(name: string): string {\n return name.replace(/[$.]/gu, '/');\n}\n\nexport function convertReferenceSchemaToPath(schema: ReferenceSchema): string {\n return convertFullyQualifiedNameToRelativePath(convertReferenceSchemaToFullyQualifiedName(schema));\n}\n\nexport function resolveReference(\n schemas: OpenAPIV3.ComponentsObject['schemas'],\n { $ref }: ReferenceSchema,\n): Schema | undefined {\n if (schemas) {\n for (const [name, schema] of Object.entries(schemas)) {\n if ($ref.includes(name)) {\n return schema;\n }\n }\n }\n\n return undefined;\n}\n"],"version":3}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vaadin/hilla-generator-core",
|
|
3
|
-
"version": "24.9.
|
|
3
|
+
"version": "24.9.2",
|
|
4
4
|
"description": "A Hilla tool to generate TypeScript code from the OpenAPI document",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
69
|
"@apidevtools/swagger-parser": "10.1.1",
|
|
70
|
-
"@vaadin/hilla-generator-utils": "24.9.
|
|
70
|
+
"@vaadin/hilla-generator-utils": "24.9.2",
|
|
71
71
|
"meow": "13.2.0",
|
|
72
72
|
"openapi-types": "12.1.3",
|
|
73
73
|
"typescript": "5.8.3"
|