@drax/crud-back 3.18.0 → 3.20.0
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/dist/crud-saved-query/controllers/CrudSavedQueryController.js +22 -0
- package/dist/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.js +27 -0
- package/dist/crud-saved-query/interfaces/ICrudSavedQuery.js +1 -0
- package/dist/crud-saved-query/interfaces/ICrudSavedQueryRepository.js +1 -0
- package/dist/crud-saved-query/models/CrudSavedQueryModel.js +40 -0
- package/dist/crud-saved-query/permissions/CrudSavedQueryPermissions.js +10 -0
- package/dist/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.js +12 -0
- package/dist/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.js +29 -0
- package/dist/crud-saved-query/routes/CrudSavedQueryRoutes.js +20 -0
- package/dist/crud-saved-query/schemas/CrudSavedQuerySchema.js +36 -0
- package/dist/crud-saved-query/services/CrudSavedQueryService.js +8 -0
- package/dist/index.js +11 -1
- package/dist/modules/crud-saved-query/controllers/CrudSavedQueryController.js +23 -0
- package/dist/modules/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.js +27 -0
- package/dist/modules/crud-saved-query/interfaces/ICrudSavedQuery.js +1 -0
- package/dist/modules/crud-saved-query/interfaces/ICrudSavedQueryRepository.js +1 -0
- package/dist/modules/crud-saved-query/models/CrudSavedQueryModel.js +40 -0
- package/dist/modules/crud-saved-query/permissions/CrudSavedQueryPermissions.js +14 -0
- package/dist/modules/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.js +12 -0
- package/dist/modules/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.js +29 -0
- package/dist/modules/crud-saved-query/routes/CrudSavedQueryRoutes.js +20 -0
- package/dist/modules/crud-saved-query/schemas/CrudSavedQuerySchema.js +36 -0
- package/dist/modules/crud-saved-query/services/CrudSavedQueryService.js +8 -0
- package/package.json +3 -3
- package/src/crud-saved-query/controllers/CrudSavedQueryController.ts +32 -0
- package/src/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.ts +41 -0
- package/src/crud-saved-query/interfaces/ICrudSavedQuery.ts +20 -0
- package/src/crud-saved-query/interfaces/ICrudSavedQueryRepository.ts +7 -0
- package/src/crud-saved-query/models/CrudSavedQueryModel.ts +54 -0
- package/src/crud-saved-query/permissions/CrudSavedQueryPermissions.ts +10 -0
- package/src/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.ts +19 -0
- package/src/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.ts +34 -0
- package/src/crud-saved-query/routes/CrudSavedQueryRoutes.ts +31 -0
- package/src/crud-saved-query/schemas/CrudSavedQuerySchema.ts +41 -0
- package/src/crud-saved-query/services/CrudSavedQueryService.ts +13 -0
- package/src/index.ts +19 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/types/crud-saved-query/controllers/CrudSavedQueryController.d.ts +11 -0
- package/types/crud-saved-query/controllers/CrudSavedQueryController.d.ts.map +1 -0
- package/types/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.d.ts +8 -0
- package/types/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.d.ts.map +1 -0
- package/types/crud-saved-query/interfaces/ICrudSavedQuery.d.ts +18 -0
- package/types/crud-saved-query/interfaces/ICrudSavedQuery.d.ts.map +1 -0
- package/types/crud-saved-query/interfaces/ICrudSavedQueryRepository.d.ts +6 -0
- package/types/crud-saved-query/interfaces/ICrudSavedQueryRepository.d.ts.map +1 -0
- package/types/crud-saved-query/models/CrudSavedQueryModel.d.ts +15 -0
- package/types/crud-saved-query/models/CrudSavedQueryModel.d.ts.map +1 -0
- package/types/crud-saved-query/permissions/CrudSavedQueryPermissions.d.ts +10 -0
- package/types/crud-saved-query/permissions/CrudSavedQueryPermissions.d.ts.map +1 -0
- package/types/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.d.ts +9 -0
- package/types/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.d.ts.map +1 -0
- package/types/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.d.ts +20 -0
- package/types/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.d.ts.map +1 -0
- package/types/crud-saved-query/routes/CrudSavedQueryRoutes.d.ts +4 -0
- package/types/crud-saved-query/routes/CrudSavedQueryRoutes.d.ts.map +1 -0
- package/types/crud-saved-query/schemas/CrudSavedQuerySchema.d.ts +63 -0
- package/types/crud-saved-query/schemas/CrudSavedQuerySchema.d.ts.map +1 -0
- package/types/crud-saved-query/services/CrudSavedQueryService.d.ts +10 -0
- package/types/crud-saved-query/services/CrudSavedQueryService.d.ts.map +1 -0
- package/types/index.d.ts +9 -1
- package/types/index.d.ts.map +1 -1
- package/types/modules/crud-saved-query/controllers/CrudSavedQueryController.d.ts +11 -0
- package/types/modules/crud-saved-query/controllers/CrudSavedQueryController.d.ts.map +1 -0
- package/types/modules/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.d.ts +8 -0
- package/types/modules/crud-saved-query/factory/services/CrudSavedQueryServiceFactory.d.ts.map +1 -0
- package/types/modules/crud-saved-query/interfaces/ICrudSavedQuery.d.ts +18 -0
- package/types/modules/crud-saved-query/interfaces/ICrudSavedQuery.d.ts.map +1 -0
- package/types/modules/crud-saved-query/interfaces/ICrudSavedQueryRepository.d.ts +6 -0
- package/types/modules/crud-saved-query/interfaces/ICrudSavedQueryRepository.d.ts.map +1 -0
- package/types/modules/crud-saved-query/models/CrudSavedQueryModel.d.ts +15 -0
- package/types/modules/crud-saved-query/models/CrudSavedQueryModel.d.ts.map +1 -0
- package/types/modules/crud-saved-query/permissions/CrudSavedQueryPermissions.d.ts +14 -0
- package/types/modules/crud-saved-query/permissions/CrudSavedQueryPermissions.d.ts.map +1 -0
- package/types/modules/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.d.ts +9 -0
- package/types/modules/crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.d.ts.map +1 -0
- package/types/modules/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.d.ts +20 -0
- package/types/modules/crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.d.ts.map +1 -0
- package/types/modules/crud-saved-query/routes/CrudSavedQueryRoutes.d.ts +4 -0
- package/types/modules/crud-saved-query/routes/CrudSavedQueryRoutes.d.ts.map +1 -0
- package/types/modules/crud-saved-query/schemas/CrudSavedQuerySchema.d.ts +63 -0
- package/types/modules/crud-saved-query/schemas/CrudSavedQuerySchema.d.ts.map +1 -0
- package/types/modules/crud-saved-query/services/CrudSavedQueryService.d.ts +10 -0
- package/types/modules/crud-saved-query/services/CrudSavedQueryService.d.ts.map +1 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import {mongoose} from "@drax/common-back";
|
|
2
|
+
import type {PaginateModel} from "mongoose";
|
|
3
|
+
import mongoosePaginate from "mongoose-paginate-v2";
|
|
4
|
+
import type {ICrudSavedQuery} from "../interfaces/ICrudSavedQuery";
|
|
5
|
+
|
|
6
|
+
const FieldFilterSchema = new mongoose.Schema({
|
|
7
|
+
field: {type: String, required: true},
|
|
8
|
+
operator: {type: String, required: false, default: "eq"},
|
|
9
|
+
value: {type: mongoose.Schema.Types.Mixed, required: false},
|
|
10
|
+
orGroup: {type: String, required: false}
|
|
11
|
+
}, {_id: false});
|
|
12
|
+
|
|
13
|
+
const DynamicFilterSchema = new mongoose.Schema({
|
|
14
|
+
default: {type: mongoose.Schema.Types.Mixed, required: false},
|
|
15
|
+
label: {type: String, required: false},
|
|
16
|
+
name: {type: String, required: true},
|
|
17
|
+
operator: {type: String, required: false, default: "eq"},
|
|
18
|
+
type: {type: String, required: false, default: "string"},
|
|
19
|
+
permission: {type: String, required: false},
|
|
20
|
+
value: {type: mongoose.Schema.Types.Mixed, required: false},
|
|
21
|
+
ref: {type: String, required: false},
|
|
22
|
+
refDisplay: {type: String, required: false},
|
|
23
|
+
enum: {type: [mongoose.Schema.Types.Mixed], required: false}
|
|
24
|
+
}, {_id: false, strict: false});
|
|
25
|
+
|
|
26
|
+
const CrudSavedQuerySchema = new mongoose.Schema<ICrudSavedQuery>({
|
|
27
|
+
entity: {type: String, required: true, index: true},
|
|
28
|
+
name: {type: String, required: true, index: true},
|
|
29
|
+
shared: {type: Boolean, required: false, default: false, index: true},
|
|
30
|
+
columns: [{type: String, required: true}],
|
|
31
|
+
staticFilters: {type: [FieldFilterSchema], required: false, default: []},
|
|
32
|
+
dynamicFilters: {type: [DynamicFilterSchema], required: false, default: []},
|
|
33
|
+
tenant: {type: mongoose.Schema.Types.ObjectId, ref: "Tenant", required: false, index: true},
|
|
34
|
+
user: {type: mongoose.Schema.Types.ObjectId, ref: "User", required: false, index: true}
|
|
35
|
+
}, {timestamps: true});
|
|
36
|
+
|
|
37
|
+
CrudSavedQuerySchema.index({entity: 1, name: 1, tenant: 1, user: 1});
|
|
38
|
+
CrudSavedQuerySchema.plugin(mongoosePaginate);
|
|
39
|
+
|
|
40
|
+
CrudSavedQuerySchema.virtual("id").get(function () {
|
|
41
|
+
return this._id.toString();
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
CrudSavedQuerySchema.set("toJSON", {getters: true, virtuals: true});
|
|
45
|
+
CrudSavedQuerySchema.set("toObject", {getters: true, virtuals: true});
|
|
46
|
+
|
|
47
|
+
const CrudSavedQueryModel = mongoose.model<ICrudSavedQuery, PaginateModel<ICrudSavedQuery>>(
|
|
48
|
+
"CrudSavedQuery",
|
|
49
|
+
CrudSavedQuerySchema,
|
|
50
|
+
"CrudSavedQuery"
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
export {CrudSavedQuerySchema, CrudSavedQueryModel};
|
|
54
|
+
export default CrudSavedQueryModel;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
enum CrudSavedQueryPermissions {
|
|
2
|
+
Create = "crudSavedQuery:create",
|
|
3
|
+
Update = "crudSavedQuery:update",
|
|
4
|
+
Delete = "crudSavedQuery:delete",
|
|
5
|
+
View = "crudSavedQuery:view",
|
|
6
|
+
Manage = "crudSavedQuery:manage",
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export {CrudSavedQueryPermissions};
|
|
10
|
+
export default CrudSavedQueryPermissions;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import AbstractMongoRepository from "../../../repository/AbstractMongoRepository.js";
|
|
2
|
+
import {CrudSavedQueryModel} from "../../models/CrudSavedQueryModel.js";
|
|
3
|
+
import type {ICrudSavedQueryRepository} from "../../interfaces/ICrudSavedQueryRepository";
|
|
4
|
+
import type {ICrudSavedQuery, ICrudSavedQueryBase} from "../../interfaces/ICrudSavedQuery";
|
|
5
|
+
|
|
6
|
+
class CrudSavedQueryMongoRepository
|
|
7
|
+
extends AbstractMongoRepository<ICrudSavedQuery, ICrudSavedQueryBase, ICrudSavedQueryBase>
|
|
8
|
+
implements ICrudSavedQueryRepository {
|
|
9
|
+
|
|
10
|
+
constructor() {
|
|
11
|
+
super();
|
|
12
|
+
this._model = CrudSavedQueryModel;
|
|
13
|
+
this._searchFields = ["name", "entity"];
|
|
14
|
+
this._populateFields = ["tenant", "user"];
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export default CrudSavedQueryMongoRepository;
|
|
19
|
+
export {CrudSavedQueryMongoRepository};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import AbstractSqliteRepository from "../../../repository/AbstractSqliteRepository.js";
|
|
2
|
+
import type {ICrudSavedQueryRepository} from "../../interfaces/ICrudSavedQueryRepository";
|
|
3
|
+
import type {ICrudSavedQuery, ICrudSavedQueryBase} from "../../interfaces/ICrudSavedQuery";
|
|
4
|
+
import {SqliteTableField} from "@drax/common-back";
|
|
5
|
+
|
|
6
|
+
class CrudSavedQuerySqliteRepository
|
|
7
|
+
extends AbstractSqliteRepository<ICrudSavedQuery, ICrudSavedQueryBase, ICrudSavedQueryBase>
|
|
8
|
+
implements ICrudSavedQueryRepository {
|
|
9
|
+
|
|
10
|
+
protected tableName: string = "CrudSavedQuery";
|
|
11
|
+
protected searchFields: string[] = ["name", "entity"];
|
|
12
|
+
protected booleanFields: string[] = ["shared"];
|
|
13
|
+
protected jsonFields: string[] = ["columns", "staticFilters", "dynamicFilters"];
|
|
14
|
+
protected identifier: string = "_id";
|
|
15
|
+
protected populateFields = [
|
|
16
|
+
{field: "tenant", table: "Tenant", identifier: "_id"},
|
|
17
|
+
{field: "user", table: "User", identifier: "_id"}
|
|
18
|
+
];
|
|
19
|
+
protected tableFields: SqliteTableField[] = [
|
|
20
|
+
{name: "entity", type: "TEXT", unique: false, primary: false},
|
|
21
|
+
{name: "name", type: "TEXT", unique: false, primary: false},
|
|
22
|
+
{name: "shared", type: "INTEGER", unique: false, primary: false},
|
|
23
|
+
{name: "columns", type: "TEXT", unique: false, primary: false},
|
|
24
|
+
{name: "staticFilters", type: "TEXT", unique: false, primary: false},
|
|
25
|
+
{name: "dynamicFilters", type: "TEXT", unique: false, primary: false},
|
|
26
|
+
{name: "tenant", type: "TEXT", unique: false, primary: false},
|
|
27
|
+
{name: "user", type: "TEXT", unique: false, primary: false},
|
|
28
|
+
{name: "createdAt", type: "TEXT", unique: false, primary: false},
|
|
29
|
+
{name: "updatedAt", type: "TEXT", unique: false, primary: false}
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export default CrudSavedQuerySqliteRepository;
|
|
34
|
+
export {CrudSavedQuerySqliteRepository};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import CrudSavedQueryController from "../controllers/CrudSavedQueryController.js";
|
|
2
|
+
import {CrudSchemaBuilder} from "../../builders/CrudSchemaBuilder.js";
|
|
3
|
+
import {CrudSavedQuerySchema, CrudSavedQueryBaseSchema} from "../schemas/CrudSavedQuerySchema.js";
|
|
4
|
+
|
|
5
|
+
async function CrudSavedQueryFastifyRoutes(fastify, options) {
|
|
6
|
+
const controller = new CrudSavedQueryController();
|
|
7
|
+
const schemas = new CrudSchemaBuilder(
|
|
8
|
+
CrudSavedQuerySchema,
|
|
9
|
+
CrudSavedQueryBaseSchema,
|
|
10
|
+
CrudSavedQueryBaseSchema,
|
|
11
|
+
"CrudSavedQuery",
|
|
12
|
+
"openapi-3.0",
|
|
13
|
+
["crud-saved-queries"]
|
|
14
|
+
);
|
|
15
|
+
|
|
16
|
+
fastify.get("/api/crud-saved-queries", {schema: schemas.paginateSchema}, (req, rep) => controller.paginate(req, rep));
|
|
17
|
+
fastify.get("/api/crud-saved-queries/find", {schema: schemas.findSchema}, (req, rep) => controller.find(req, rep));
|
|
18
|
+
fastify.get("/api/crud-saved-queries/search", {schema: schemas.searchSchema}, (req, rep) => controller.search(req, rep));
|
|
19
|
+
fastify.get("/api/crud-saved-queries/:id", {schema: schemas.findByIdSchema}, (req, rep) => controller.findById(req, rep));
|
|
20
|
+
fastify.get("/api/crud-saved-queries/find-one", {schema: schemas.findOneSchema}, (req, rep) => controller.findOne(req, rep));
|
|
21
|
+
fastify.get("/api/crud-saved-queries/find-by/:field/:value", {schema: schemas.findBySchema}, (req, rep) => controller.findBy(req, rep));
|
|
22
|
+
fastify.get("/api/crud-saved-queries/find-one-by/:field/:value", {schema: schemas.findOneBySchema}, (req, rep) => controller.findOneBy(req, rep));
|
|
23
|
+
|
|
24
|
+
fastify.post("/api/crud-saved-queries", {schema: schemas.createSchema}, (req, rep) => controller.create(req, rep));
|
|
25
|
+
fastify.put("/api/crud-saved-queries/:id", {schema: schemas.updateSchema}, (req, rep) => controller.update(req, rep));
|
|
26
|
+
fastify.patch("/api/crud-saved-queries/:id", {schema: schemas.updateSchema}, (req, rep) => controller.updatePartial(req, rep));
|
|
27
|
+
fastify.delete("/api/crud-saved-queries/:id", {schema: schemas.deleteSchema}, (req, rep) => controller.delete(req, rep));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export default CrudSavedQueryFastifyRoutes;
|
|
31
|
+
export {CrudSavedQueryFastifyRoutes};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import {z} from "zod";
|
|
2
|
+
|
|
3
|
+
const CrudSavedQueryFieldFilterSchema = z.object({
|
|
4
|
+
field: z.string().min(1, "validation.required"),
|
|
5
|
+
operator: z.string().optional().default("eq"),
|
|
6
|
+
value: z.any().optional().nullable(),
|
|
7
|
+
orGroup: z.string().optional()
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
const CrudSavedQueryDynamicFilterSchema = z.object({
|
|
11
|
+
default: z.any().optional().nullable(),
|
|
12
|
+
label: z.string().optional(),
|
|
13
|
+
name: z.string().min(1, "validation.required"),
|
|
14
|
+
operator: z.string().optional().default("eq"),
|
|
15
|
+
type: z.string().optional().default("string"),
|
|
16
|
+
permission: z.string().optional(),
|
|
17
|
+
value: z.any().optional().nullable(),
|
|
18
|
+
ref: z.string().optional(),
|
|
19
|
+
refDisplay: z.string().optional(),
|
|
20
|
+
enum: z.array(z.any()).optional()
|
|
21
|
+
}).catchall(z.any());
|
|
22
|
+
|
|
23
|
+
const CrudSavedQueryBaseSchema = z.object({
|
|
24
|
+
entity: z.string().min(1, "validation.required"),
|
|
25
|
+
name: z.string().min(1, "validation.required"),
|
|
26
|
+
shared: z.boolean().optional().default(false),
|
|
27
|
+
columns: z.array(z.string()).optional().default([]),
|
|
28
|
+
staticFilters: z.array(CrudSavedQueryFieldFilterSchema).optional().default([]),
|
|
29
|
+
dynamicFilters: z.array(CrudSavedQueryDynamicFilterSchema).optional().default([]),
|
|
30
|
+
tenant: z.coerce.string().optional().nullable(),
|
|
31
|
+
user: z.coerce.string().optional().nullable()
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
const CrudSavedQuerySchema = CrudSavedQueryBaseSchema.extend({
|
|
35
|
+
_id: z.coerce.string(),
|
|
36
|
+
tenant: z.object({_id: z.coerce.string(), name: z.string()}).nullable().optional(),
|
|
37
|
+
user: z.object({_id: z.coerce.string(), username: z.string()}).nullable().optional()
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
export default CrudSavedQuerySchema;
|
|
41
|
+
export {CrudSavedQuerySchema, CrudSavedQueryBaseSchema};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import AbstractService from "../../services/AbstractService.js";
|
|
2
|
+
import type {ZodObject, ZodRawShape} from "zod";
|
|
3
|
+
import type {ICrudSavedQueryRepository} from "../interfaces/ICrudSavedQueryRepository";
|
|
4
|
+
import type {ICrudSavedQuery, ICrudSavedQueryBase} from "../interfaces/ICrudSavedQuery";
|
|
5
|
+
|
|
6
|
+
class CrudSavedQueryService extends AbstractService<ICrudSavedQuery, ICrudSavedQueryBase, ICrudSavedQueryBase> {
|
|
7
|
+
constructor(repository: ICrudSavedQueryRepository, baseSchema?: ZodObject<ZodRawShape>, fullSchema?: ZodObject<ZodRawShape>) {
|
|
8
|
+
super(repository, baseSchema, fullSchema);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export default CrudSavedQueryService;
|
|
13
|
+
export {CrudSavedQueryService};
|
package/src/index.ts
CHANGED
|
@@ -18,6 +18,15 @@ import {ExportBodyResponseSchema} from "./schemas/ExportBodyResponseSchema.js"
|
|
|
18
18
|
import {ErrorBodyResponseSchema, ValidationErrorBodyResponseSchema} from "./schemas/ErrorBodyResponseSchema.js"
|
|
19
19
|
import {CrudSchemaBuilder} from "./builders/CrudSchemaBuilder.js";
|
|
20
20
|
|
|
21
|
+
import CrudSavedQueryFastifyRoutes from "./crud-saved-query/routes/CrudSavedQueryRoutes.js";
|
|
22
|
+
import {CrudSavedQueryController} from "./crud-saved-query/controllers/CrudSavedQueryController.js";
|
|
23
|
+
import {CrudSavedQueryService} from "./crud-saved-query/services/CrudSavedQueryService.js";
|
|
24
|
+
import {CrudSavedQueryServiceFactory} from "./crud-saved-query/factory/services/CrudSavedQueryServiceFactory.js";
|
|
25
|
+
import CrudSavedQueryMongoRepository from "./crud-saved-query/repository/mongo/CrudSavedQueryMongoRepository.js";
|
|
26
|
+
import CrudSavedQuerySqliteRepository from "./crud-saved-query/repository/sqlite/CrudSavedQuerySqliteRepository.js";
|
|
27
|
+
import CrudSavedQueryPermissions from "./crud-saved-query/permissions/CrudSavedQueryPermissions.js";
|
|
28
|
+
import {CrudSavedQueryModel, CrudSavedQuerySchema} from "./crud-saved-query/models/CrudSavedQueryModel.js";
|
|
29
|
+
|
|
21
30
|
export type {
|
|
22
31
|
CustomRequest
|
|
23
32
|
}
|
|
@@ -50,5 +59,15 @@ export {
|
|
|
50
59
|
//Builder
|
|
51
60
|
CrudSchemaBuilder,
|
|
52
61
|
|
|
62
|
+
//Crud saved queries
|
|
63
|
+
CrudSavedQueryFastifyRoutes,
|
|
64
|
+
CrudSavedQueryController,
|
|
65
|
+
CrudSavedQueryService,
|
|
66
|
+
CrudSavedQueryServiceFactory,
|
|
67
|
+
CrudSavedQueryMongoRepository,
|
|
68
|
+
CrudSavedQuerySqliteRepository,
|
|
69
|
+
CrudSavedQueryPermissions,
|
|
70
|
+
CrudSavedQueryModel,
|
|
71
|
+
CrudSavedQuerySchema,
|
|
53
72
|
|
|
54
73
|
}
|