@ruiapp/rapid-core 0.1.41 → 0.1.43
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/dataAccess/dataAccessTypes.d.ts +63 -0
- package/dist/dataAccess/dataAccessor.d.ts +5 -4
- package/dist/dataAccess/entityMapper.d.ts +7 -2
- package/dist/dataAccess/metaHelper.d.ts +6 -0
- package/dist/index.js +576 -324
- package/dist/plugins/sequence/SequencePluginTypes.d.ts +1 -0
- package/dist/queryBuilder/queryBuilder.d.ts +12 -22
- package/dist/types.d.ts +34 -5
- package/dist/utilities/errorUtility.d.ts +3 -0
- package/package.json +1 -1
- package/rollup.config.js +13 -17
- package/src/bootstrapApplicationConfig.ts +25 -4
- package/src/core/actionHandler.ts +2 -5
- package/src/core/eventManager.ts +1 -4
- package/src/core/facility.ts +1 -1
- package/src/core/http/formDataParser.ts +31 -43
- package/src/core/pluginManager.ts +13 -39
- package/src/core/providers/runtimeProvider.ts +1 -1
- package/src/core/request.ts +3 -3
- package/src/core/response.ts +2 -7
- package/src/core/routeContext.ts +2 -6
- package/src/core/routesBuilder.ts +46 -55
- package/src/core/server.ts +8 -34
- package/src/dataAccess/dataAccessTypes.ts +86 -0
- package/src/dataAccess/dataAccessor.ts +46 -24
- package/src/dataAccess/entityManager.ts +294 -245
- package/src/dataAccess/entityMapper.ts +32 -15
- package/src/dataAccess/filterHelper.ts +1 -3
- package/src/dataAccess/metaHelper.ts +45 -0
- package/src/dataAccess/propertyMapper.ts +3 -3
- package/src/deno-std/datetime/to_imf.ts +2 -17
- package/src/deno-std/encoding/base64.ts +1 -5
- package/src/deno-std/http/cookie.ts +26 -59
- package/src/facilities/log/LogFacility.ts +0 -1
- package/src/helpers/entityHelpers.ts +1 -4
- package/src/helpers/runCollectionEntityActionHandler.ts +2 -10
- package/src/plugins/auth/AuthPlugin.ts +2 -5
- package/src/plugins/auth/actionHandlers/changePassword.ts +6 -10
- package/src/plugins/auth/actionHandlers/createSession.ts +14 -15
- package/src/plugins/auth/actionHandlers/deleteSession.ts +1 -5
- package/src/plugins/auth/actionHandlers/getMyProfile.ts +5 -9
- package/src/plugins/auth/actionHandlers/index.ts +1 -7
- package/src/plugins/auth/actionHandlers/resetPassword.ts +3 -7
- package/src/plugins/auth/models/AccessToken.ts +2 -2
- package/src/plugins/auth/models/index.ts +1 -3
- package/src/plugins/auth/routes/changePassword.ts +1 -1
- package/src/plugins/auth/routes/getMyProfile.ts +1 -1
- package/src/plugins/auth/routes/index.ts +1 -7
- package/src/plugins/auth/routes/resetPassword.ts +1 -1
- package/src/plugins/auth/routes/signin.ts +1 -1
- package/src/plugins/auth/routes/signout.ts +1 -1
- package/src/plugins/cronJob/CronJobPlugin.ts +12 -21
- package/src/plugins/cronJob/CronJobPluginTypes.ts +9 -9
- package/src/plugins/cronJob/actionHandlers/index.ts +1 -3
- package/src/plugins/cronJob/actionHandlers/runCronJob.ts +3 -8
- package/src/plugins/cronJob/routes/index.ts +1 -3
- package/src/plugins/cronJob/routes/runCronJob.ts +1 -1
- package/src/plugins/dataManage/DataManagePlugin.ts +5 -11
- package/src/plugins/dataManage/actionHandlers/addEntityRelations.ts +1 -5
- package/src/plugins/dataManage/actionHandlers/countCollectionEntities.ts +5 -14
- package/src/plugins/dataManage/actionHandlers/createCollectionEntitiesBatch.ts +8 -9
- package/src/plugins/dataManage/actionHandlers/createCollectionEntity.ts +7 -8
- package/src/plugins/dataManage/actionHandlers/deleteCollectionEntityById.ts +1 -5
- package/src/plugins/dataManage/actionHandlers/findCollectionEntities.ts +15 -24
- package/src/plugins/dataManage/actionHandlers/findCollectionEntityById.ts +1 -5
- package/src/plugins/dataManage/actionHandlers/queryDatabase.ts +1 -5
- package/src/plugins/dataManage/actionHandlers/removeEntityRelations.ts +1 -5
- package/src/plugins/dataManage/actionHandlers/updateCollectionEntityById.ts +1 -5
- package/src/plugins/entityAccessControl/EntityAccessControlPlugin.ts +5 -6
- package/src/plugins/entityWatch/EntityWatchPlugin.ts +18 -17
- package/src/plugins/entityWatch/EntityWatchPluginTypes.ts +3 -10
- package/src/plugins/fileManage/FileManagePlugin.ts +1 -3
- package/src/plugins/fileManage/actionHandlers/downloadDocument.ts +2 -6
- package/src/plugins/fileManage/actionHandlers/downloadFile.ts +2 -6
- package/src/plugins/fileManage/actionHandlers/uploadFile.ts +3 -7
- package/src/plugins/fileManage/routes/downloadDocument.ts +1 -1
- package/src/plugins/fileManage/routes/downloadFile.ts +1 -1
- package/src/plugins/fileManage/routes/index.ts +1 -5
- package/src/plugins/fileManage/routes/uploadFile.ts +1 -1
- package/src/plugins/metaManage/MetaManagePlugin.ts +45 -92
- package/src/plugins/metaManage/actionHandlers/getMetaModelDetail.ts +1 -5
- package/src/plugins/metaManage/actionHandlers/listMetaModels.ts +1 -5
- package/src/plugins/metaManage/actionHandlers/listMetaRoutes.ts +1 -5
- package/src/plugins/routeManage/RouteManagePlugin.ts +2 -7
- package/src/plugins/routeManage/actionHandlers/httpProxy.ts +1 -5
- package/src/plugins/sequence/SequencePlugin.ts +14 -16
- package/src/plugins/sequence/SequencePluginTypes.ts +20 -29
- package/src/plugins/sequence/SequenceService.ts +16 -15
- package/src/plugins/sequence/actionHandlers/generateSn.ts +2 -7
- package/src/plugins/sequence/actionHandlers/index.ts +1 -3
- package/src/plugins/sequence/models/SequenceAutoIncrementRecord.ts +2 -2
- package/src/plugins/sequence/models/SequenceRule.ts +2 -2
- package/src/plugins/sequence/models/index.ts +1 -4
- package/src/plugins/sequence/routes/generateSn.ts +1 -1
- package/src/plugins/sequence/routes/index.ts +1 -3
- package/src/plugins/sequence/segment-utility.ts +1 -1
- package/src/plugins/sequence/segments/autoIncrement.ts +4 -8
- package/src/plugins/sequence/segments/dayOfMonth.ts +3 -7
- package/src/plugins/sequence/segments/index.ts +1 -8
- package/src/plugins/sequence/segments/literal.ts +1 -1
- package/src/plugins/sequence/segments/month.ts +3 -7
- package/src/plugins/sequence/segments/parameter.ts +3 -7
- package/src/plugins/sequence/segments/year.ts +3 -7
- package/src/plugins/serverOperation/ServerOperationPlugin.ts +12 -22
- package/src/plugins/serverOperation/ServerOperationPluginTypes.ts +1 -1
- package/src/plugins/serverOperation/actionHandlers/index.ts +1 -3
- package/src/plugins/stateMachine/StateMachinePlugin.ts +19 -22
- package/src/plugins/stateMachine/StateMachinePluginTypes.ts +6 -7
- package/src/plugins/stateMachine/actionHandlers/index.ts +1 -3
- package/src/plugins/stateMachine/actionHandlers/sendStateMachineEvent.ts +3 -7
- package/src/plugins/stateMachine/models/StateMachine.ts +2 -2
- package/src/plugins/stateMachine/models/index.ts +1 -3
- package/src/plugins/stateMachine/routes/index.ts +1 -3
- package/src/plugins/stateMachine/routes/sendStateMachineEvent.ts +1 -1
- package/src/plugins/webhooks/WebhooksPlugin.ts +9 -41
- package/src/polyfill.ts +1 -1
- package/src/proxy/mod.ts +4 -13
- package/src/queryBuilder/queryBuilder.ts +149 -106
- package/src/server.ts +19 -44
- package/src/types.ts +54 -79
- package/src/utilities/accessControlUtility.ts +4 -4
- package/src/utilities/errorUtility.ts +17 -0
- package/src/utilities/fsUtility.ts +12 -13
- package/src/utilities/httpUtility.ts +1 -5
- package/src/utilities/jwtUtility.ts +6 -10
- package/tsconfig.json +1 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export type RowFilterRelationalOperators = "eq" | "ne" | "lt" | "lte" | "gt" | "gte" | "contains" | "notContains" | "containsCS" | "notContainsCS" | "startsWith" | "notStartsWith" | "endsWith" | "notEndsWith";
|
|
2
|
+
export type RowFilterSetOperators = "in" | "notIn";
|
|
3
|
+
export type RowFilterLogicalOperators = "or" | "and";
|
|
4
|
+
export type RowFilterUnaryOperators = "null" | "notNull";
|
|
5
|
+
export type RowFilterExistenceOperators = "exists" | "notExists";
|
|
6
|
+
export type RowFilterOperators = RowFilterRelationalOperators | RowFilterSetOperators | RowFilterLogicalOperators | RowFilterUnaryOperators | RowFilterExistenceOperators;
|
|
7
|
+
export type RowFilterOptions = FindRowRelationalFilterOptions | FindRowSetFilterOptions | FindRowLogicalFilterOptions | FindRowUnaryFilterOptions | FindRowExistenceFilterOptions;
|
|
8
|
+
export type RowNonRelationPropertyFilterOptions = FindRowRelationalFilterOptions | FindRowSetFilterOptions | FindRowUnaryFilterOptions;
|
|
9
|
+
export type ColumnQueryOptions = string | ColumnNameWithTableName;
|
|
10
|
+
export type ColumnNameWithTableName = {
|
|
11
|
+
name: string;
|
|
12
|
+
tableName?: string;
|
|
13
|
+
};
|
|
14
|
+
export interface FindRowOptions {
|
|
15
|
+
filters?: RowFilterOptions[];
|
|
16
|
+
orderBy?: FindRowOrderByOptions[];
|
|
17
|
+
pagination?: FindRowPaginationOptions;
|
|
18
|
+
fields?: ColumnQueryOptions[];
|
|
19
|
+
keepNonPropertyFields?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface FindRowRelationalFilterOptions {
|
|
22
|
+
field: ColumnQueryOptions;
|
|
23
|
+
operator: RowFilterRelationalOperators;
|
|
24
|
+
value: any;
|
|
25
|
+
}
|
|
26
|
+
export interface FindRowSetFilterOptions {
|
|
27
|
+
field: ColumnQueryOptions;
|
|
28
|
+
operator: RowFilterSetOperators;
|
|
29
|
+
value: any[];
|
|
30
|
+
itemType?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface FindRowLogicalFilterOptions {
|
|
33
|
+
operator: RowFilterLogicalOperators;
|
|
34
|
+
filters: RowFilterOptions[];
|
|
35
|
+
}
|
|
36
|
+
export interface FindRowUnaryFilterOptions {
|
|
37
|
+
field: ColumnQueryOptions;
|
|
38
|
+
operator: RowFilterUnaryOperators;
|
|
39
|
+
}
|
|
40
|
+
export interface FindRowExistenceFilterOptions {
|
|
41
|
+
field: ColumnQueryOptions;
|
|
42
|
+
operator: RowFilterExistenceOperators;
|
|
43
|
+
filters: RowFilterOptions[];
|
|
44
|
+
}
|
|
45
|
+
export interface FindRowPaginationOptions {
|
|
46
|
+
offset: number;
|
|
47
|
+
limit: number;
|
|
48
|
+
withoutTotal?: boolean;
|
|
49
|
+
}
|
|
50
|
+
export interface FindRowOrderByOptions {
|
|
51
|
+
field: ColumnQueryOptions;
|
|
52
|
+
desc?: boolean;
|
|
53
|
+
}
|
|
54
|
+
export interface CountRowOptions {
|
|
55
|
+
filters?: RowFilterOptions[];
|
|
56
|
+
}
|
|
57
|
+
export interface UpdateRowOptions {
|
|
58
|
+
filters?: RowFilterOptions[];
|
|
59
|
+
entity: any;
|
|
60
|
+
}
|
|
61
|
+
export interface DeleteRowOptions {
|
|
62
|
+
filters?: RowFilterOptions[];
|
|
63
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IRpdDataAccessor, RpdDataModel, IDatabaseAccessor } from "../types";
|
|
2
2
|
import QueryBuilder from "../queryBuilder/queryBuilder";
|
|
3
3
|
import { IRpdServer } from "../core/server";
|
|
4
|
+
import { CountRowOptions, FindRowOptions } from "./dataAccessTypes";
|
|
4
5
|
export interface IDataAccessorOptions {
|
|
5
6
|
model: RpdDataModel;
|
|
6
7
|
queryBuilder: QueryBuilder;
|
|
@@ -13,9 +14,9 @@ export default class DataAccessor<T = any> implements IRpdDataAccessor<T> {
|
|
|
13
14
|
updateById(id: any, entity: Partial<T>): Promise<{
|
|
14
15
|
count: number;
|
|
15
16
|
}>;
|
|
16
|
-
find(options:
|
|
17
|
-
findOne(options:
|
|
17
|
+
find(options: FindRowOptions): Promise<T[]>;
|
|
18
|
+
findOne(options: FindRowOptions): Promise<T>;
|
|
18
19
|
findById(id: any): Promise<T | null>;
|
|
19
|
-
count(options:
|
|
20
|
+
count(options: CountRowOptions): Promise<any>;
|
|
20
21
|
deleteById(id: any): Promise<void>;
|
|
21
22
|
}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import type { IRpdServer } from "../core/server";
|
|
1
2
|
import { RpdDataModel } from "../types";
|
|
2
|
-
export declare function mapDbRowToEntity(model: RpdDataModel, row: any, keepNonPropertyFields: boolean): any;
|
|
3
|
-
export
|
|
3
|
+
export declare function mapDbRowToEntity(server: IRpdServer, model: RpdDataModel, row: any, keepNonPropertyFields: boolean): any;
|
|
4
|
+
export type DbRowWithBaseRow = {
|
|
5
|
+
row?: Record<string, any>;
|
|
6
|
+
baseRow?: Record<string, any>;
|
|
7
|
+
};
|
|
8
|
+
export declare function mapEntityToDbRow(server: IRpdServer, model: RpdDataModel, entity: any): DbRowWithBaseRow;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IRpdServer } from "../core/server";
|
|
2
|
+
import { RpdDataModel, RpdDataModelProperty } from "../types";
|
|
3
|
+
export declare function getEntityProperties(server: IRpdServer, model: RpdDataModel): RpdDataModelProperty[];
|
|
4
|
+
export declare function getEntityPropertiesIncludingBase(server: IRpdServer, model: RpdDataModel): RpdDataModelProperty[];
|
|
5
|
+
export declare function getEntityPropertyByCode(server: IRpdServer, model: RpdDataModel, propertyCode: string): RpdDataModelProperty;
|
|
6
|
+
export declare function getEntityProperty(server: IRpdServer, model: RpdDataModel, predicate: (item: RpdDataModelProperty) => boolean): RpdDataModelProperty;
|