UNPKG

@patchworkdev/pdk

Version:

Patchwork Development Kit

59 lines (58 loc) 2.72 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateServices = generateServices; const promises_1 = __importDefault(require("fs/promises")); const path_1 = __importDefault(require("path")); const logger_1 = require("../common/helpers/logger"); const _1 = require("./"); const typescriptSchemas_1 = require("./typescriptSchemas"); async function generateServices(configPath) { logger_1.logger.info('Generating all components...'); logger_1.logger.info('Using config file:', configPath); // Generate TypeScript ABIs logger_1.logger.info('Generating TypeScript ABIs...'); await (0, _1.generateABIs)(configPath); // Generate TypeScript ABIs logger_1.logger.info('Generating TypeScript contract schemas...'); await (0, typescriptSchemas_1.generateTypescriptSchemas)(configPath); // Generate Ponder Schema logger_1.logger.info('Generating Ponder schema...'); await (0, _1.generateSchema)(configPath); // Generate Event Hooks logger_1.logger.info('Generating Ponder events...'); await (0, _1.generateEventHooks)(configPath); // Generate Ponder Config logger_1.logger.info('Generating Ponder Config...'); await (0, _1.generatePonderConfig)(configPath); // Generate API logger_1.logger.info('Generating API...'); const schemaPath = path_1.default.join(path_1.default.dirname(configPath), 'ponder', 'ponder.schema.ts'); const apiOutputDir = path_1.default.join(path_1.default.dirname(configPath), 'ponder', 'src', 'generated'); try { await promises_1.default.access(apiOutputDir); } catch (error) { logger_1.logger.info(`API output directory does not exist. Creating ${apiOutputDir}`); await promises_1.default.mkdir(apiOutputDir, { recursive: true }); } await (0, _1.generateAPI)(schemaPath, apiOutputDir); // Generate React Hooks logger_1.logger.info('Generating React hooks...'); await (0, _1.generateReactHooks)(configPath); // generate www env logger_1.logger.info('Generating WWW Env file...'); await (0, _1.generateWWWEnv)(configPath); // generate ponder env logger_1.logger.info('Generating Ponder Env file...'); await (0, _1.generatePonderEnv)(configPath); // Generate React Components // console.log('Generating React Components...'); // await generateReactComponents(configPath); // Generate Demo Page // console.log('Generating Demo Page...'); // await generateDemoPage(configPath); logger_1.logger.info('All components generated successfully!'); }