Closed MohammadPCh closed 1 month ago
This update brings significant enhancements to the project management system, including the addition of slug
and image
fields to the Project
type in the database and GraphQL schema. It also introduces new functionalities for importing and processing project data from the Giveth platform. Helper functions for database management and GraphQL requests are included to streamline data handling, with the main application now seamlessly integrating these changes by calling the import function.
File(s) | Change Summary |
---|---|
db/migrations/1716207083370-Data.js |
Added migration to update the project table with slug and image fields. |
schema.graphql |
Updated Project type to include slug and image fields. |
src/features/import-projects/index.ts |
Introduced functions for updating/creating projects, processing batches, and importing projects. |
src/features/import-projects/service.ts |
Added functions to fetch Giveth projects in batches and all projects. |
src/features/import-projects/type.ts |
Introduced GivethProjectInfo type with fields id , title , descriptionSummary , slug , image . |
src/helpers/db.ts |
Added functions to manage data source and create an entity manager using TypeORM. |
src/helpers/request.ts |
Introduced graphQLRequest function for sending GraphQL queries. |
src/main.ts |
Imported and called the importProjects function from the import-projects feature. |
src/model/generated/project.model.ts |
Added slug and image properties to the Project class. |
src/features/import-projects/standalone.ts |
Introduced standalone.ts file executing the task function within the import-projects feature. |
.env.template |
Added GIVETH_API_URL configuration variable with a specific value. |
.github/workflows/pipeline-develop.yml |
Updated Docker-related commands in the workflow file. |
package.json |
Added dependencies for node-cron and @types/node-cron . |
src/features/import-projects/config.ts |
Introduced CRON_SCHEDULE constant set to "0 0 * * *" in UTC time. |
src/features/import-projects/giveth/constants.ts |
Added GIVETH_API_URL constant with a default URL if not provided via environment variable. |
src/features/import-projects/giveth/helpers.ts |
Added functions for updating/creating projects based on Giveth project info. |
src/features/import-projects/giveth/service.ts |
Introduced functions to fetch Giveth projects using GraphQL requests. |
src/features/import-projects/giveth/type.ts |
Defined GivethProjectInfo type with properties for Giveth project information. |
In the code, new fields take flight,
slug
andimage
shine bright. Giveth projects now import with grace, Enhancing our data's embrace. With TypeORM and GraphQL in sync, Our projects evolve in a blink. 🐇✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
2
Summary by CodeRabbit
New Features
slug
andimage
fields to projects.Enhancements
Utilities