-
Notifications
You must be signed in to change notification settings - Fork 59
feat(query-mikro-orm): add MikroORM adapter package #416
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(query-mikro-orm): add MikroORM adapter package #416
Conversation
Enable preview package releases on pull requests and workflow dispatch using pkg.pr.new. This allows testing packages before official release. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
feat(ci): add pkg.pr.new preview releases
Add `@ptc-org/nestjs-query-mikroorm` package that provides MikroORM integration: - MikroOrmQueryService implementing full QueryService interface - NestjsQueryMikroOrmModule.forFeature() for easy module registration - FilterQueryBuilder for converting nestjs-query filters to MikroORM queries - Support for all filter operations (eq, neq, gt, gte, lt, lte, in, notIn, like, iLike, is, isNot, and, or) - Support for sorting with nulls first/last - Support for pagination - Relation queries (queryRelations, countRelations, findRelation) - Relation mutations (addRelations, setRelations, setRelation, removeRelations, removeRelation) - Soft delete support - Comprehensive test suite with 62 tests 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
|
Caution Review failedThe pull request is closed. WalkthroughIntroduces a new MikroORM integration package for NestJS Query ecosystem. Adds complete implementation with NestJS dynamic module, query service supporting CRUD, filtering, sorting, relations, and soft-delete operations, filter query builder for query translation, comprehensive test suite, and supporting configuration files. Changes
Sequence DiagramsequenceDiagram
participant App as NestJS App
participant Module as NestjsQueryMikroOrmModule
participant Provider as QueryService<br/>Provider
participant Service as MikroOrmQueryService
participant FQB as FilterQueryBuilder
participant Repo as MikroORM<br/>Repository
participant DB as SQLite DB
App->>Module: forFeature([Entity])
Module->>Provider: createMikroOrmQueryServiceProviders
Provider->>Repo: getRepositoryToken(Entity)
Module->>App: returns DynamicModule
App->>Service: inject MikroOrmQueryService
App->>Service: query(QueryDSL)
Service->>FQB: buildQuery(QueryDSL)
FQB->>FQB: buildFilter + buildSorting
FQB-->>Service: { where, options }
Service->>Repo: find(where, options)
Repo->>DB: execute query
DB-->>Repo: results
Repo-->>Service: [Entities]
Service-->>App: [Entities]
Estimated Code Review Effort🎯 4 (Complex) | ⏱️ ~45 minutes
Poem
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (24)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Sorry, this was meant to be towards my repo. I'll submit a PR here once it's ready. |
|
@jtomaszewski cool!!! |
Summary
@ptc-org/nestjs-query-mikroormpackage that provides MikroORM integrationMikroOrmQueryServicefollowing theQueryServiceinterface from@ptc-org/nestjs-query-coreNestjsQueryMikroOrmModule.forFeature()for easy module registrationTest plan
🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Chores
✏️ Tip: You can customize this high-level summary in your review settings.