UNPKG

@davstack/openapi-react-query-codegen

Version:

OpenAPI React Query Codegen using --useOptions (fork from @7nohe/openapi-react-query-codegen)

43 lines (42 loc) 3.31 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createImports = void 0; const typescript_1 = __importDefault(require("typescript")); const glob_1 = require("glob"); const path_1 = require("path"); const factory = typescript_1.default.factory; const createImports = (generatedClientsPath) => { const models = (0, glob_1.sync)((0, path_1.join)(generatedClientsPath, 'models', '*.ts').replace(/\\/g, '/')); const services = (0, glob_1.sync)((0, path_1.join)(generatedClientsPath, 'services', '*.ts').replace(/\\/g, '/')); return [ typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, undefined, typescript_1.default.factory.createNamedImports([ typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier('useQuery')), typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier('useMutation')), typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier('UseQueryOptions')), typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier('UseMutationOptions')), ])), typescript_1.default.factory.createStringLiteral('@tanstack/react-query'), undefined), ...models.map((model) => { const modelName = (0, path_1.basename)(model, (0, path_1.extname)(model)); return typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, undefined, typescript_1.default.factory.createNamedImports([ typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier(modelName)), ])), typescript_1.default.factory.createStringLiteral(`../requests/models/${modelName}`), // ts.factory.createStringLiteral(join('../requests/models/', modelName)), undefined); }), ...services.map((service) => { const serviceName = (0, path_1.basename)(service, (0, path_1.extname)(service)); return typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, undefined, typescript_1.default.factory.createNamedImports([ typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier(serviceName)), ])), typescript_1.default.factory.createStringLiteral('../requests/services/' + serviceName // join('../requests/services', serviceName) ), undefined); }), factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([ factory.createImportSpecifier(false, undefined, factory.createIdentifier('prefetchQuery')), ])), factory.createStringLiteral('./prefetch-query'), undefined), ]; }; exports.createImports = createImports;