@revisium/core 2.1.0 → 2.2.0-alpha.1
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/package.json +3 -1
- package/dist/src/__tests__/utils/queryTest.d.ts +1 -1
- package/dist/src/__tests__/utils/queryTest.js +1 -1
- package/dist/src/__tests__/utils/queryTest.js.map +1 -1
- package/dist/src/api/graphql-api/graphql-api.module.js +2 -0
- package/dist/src/api/graphql-api/graphql-api.module.js.map +1 -1
- package/dist/src/api/graphql-api/row/row.resolver.d.ts +9 -11
- package/dist/src/api/graphql-api/row/row.resolver.js +14 -16
- package/dist/src/api/graphql-api/row/row.resolver.js.map +1 -1
- package/dist/src/api/graphql-api/table/table.resolver.d.ts +5 -3
- package/dist/src/api/graphql-api/table/table.resolver.js +7 -6
- package/dist/src/api/graphql-api/table/table.resolver.js.map +1 -1
- package/dist/src/api/rest-api/rest-api.module.js +2 -0
- package/dist/src/api/rest-api/rest-api.module.js.map +1 -1
- package/dist/src/api/rest-api/row/row-by-id.controller.d.ts +5 -3
- package/dist/src/api/rest-api/row/row-by-id.controller.js +20 -10
- package/dist/src/api/rest-api/row/row-by-id.controller.js.map +1 -1
- package/dist/src/api/rest-api/share/model/order-by.model.d.ts +21 -1
- package/dist/src/api/rest-api/share/model/order-by.model.js +38 -1
- package/dist/src/api/rest-api/share/model/order-by.model.js.map +1 -1
- package/dist/src/api/rest-api/share/utils/mapToPrismaOrderBy.d.ts +2 -2
- package/dist/src/api/rest-api/share/utils/mapToPrismaOrderBy.js +15 -3
- package/dist/src/api/rest-api/share/utils/mapToPrismaOrderBy.js.map +1 -1
- package/dist/src/api/rest-api/share/validators/is-valid-data-field-order.validator.d.ts +2 -0
- package/dist/src/api/rest-api/share/validators/is-valid-data-field-order.validator.js +30 -0
- package/dist/src/api/rest-api/share/validators/is-valid-data-field-order.validator.js.map +1 -0
- package/dist/src/api/rest-api/table/dto/get-table-rows.dto.js +4 -0
- package/dist/src/api/rest-api/table/dto/get-table-rows.dto.js.map +1 -1
- package/dist/src/api/rest-api/table/table-by-id.controller.d.ts +3 -1
- package/dist/src/api/rest-api/table/table-by-id.controller.js +7 -7
- package/dist/src/api/rest-api/table/table-by-id.controller.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/__tests__/utils.js +6 -4
- package/dist/src/features/draft/commands/handlers/__tests__/utils.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-base-row.handler.d.ts +4 -3
- package/dist/src/features/draft/commands/handlers/api-base-row.handler.js +4 -4
- package/dist/src/features/draft/commands/handlers/api-base-row.handler.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-create-revision.handler.js +1 -1
- package/dist/src/features/draft/commands/handlers/api-create-revision.handler.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-create-row.handler.d.ts +3 -1
- package/dist/src/features/draft/commands/handlers/api-create-row.handler.js +6 -3
- package/dist/src/features/draft/commands/handlers/api-create-row.handler.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-patch-row.handler.d.ts +3 -1
- package/dist/src/features/draft/commands/handlers/api-patch-row.handler.js +6 -3
- package/dist/src/features/draft/commands/handlers/api-patch-row.handler.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-rename-row.handler.d.ts +3 -1
- package/dist/src/features/draft/commands/handlers/api-rename-row.handler.js +6 -3
- package/dist/src/features/draft/commands/handlers/api-rename-row.handler.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-update-row.handler.d.ts +3 -1
- package/dist/src/features/draft/commands/handlers/api-update-row.handler.js +6 -3
- package/dist/src/features/draft/commands/handlers/api-update-row.handler.js.map +1 -1
- package/dist/src/features/draft/commands/handlers/api-upload-file.handler.d.ts +3 -1
- package/dist/src/features/draft/commands/handlers/api-upload-file.handler.js +6 -3
- package/dist/src/features/draft/commands/handlers/api-upload-file.handler.js.map +1 -1
- package/dist/src/features/draft/commands/impl/api-patch-row.command.d.ts +2 -2
- package/dist/src/features/draft/commands/impl/api-rename-row.command.d.ts +2 -2
- package/dist/src/features/draft/commands/impl/api-upload-file.command.d.ts +2 -2
- package/dist/src/features/draft/commands/types/api-create-row.handler.types.d.ts +2 -2
- package/dist/src/features/draft/commands/types/api-update-row.handler.types.d.ts +2 -2
- package/dist/src/features/draft/draft.module.js +2 -0
- package/dist/src/features/draft/draft.module.js.map +1 -1
- package/dist/src/features/endpoint/commands/handlers/create-endpoint.handler.d.ts +2 -2
- package/dist/src/features/endpoint/commands/handlers/create-endpoint.handler.js +2 -2
- package/dist/src/features/endpoint/commands/handlers/create-endpoint.handler.js.map +1 -1
- package/dist/src/features/endpoint/commands/handlers/delete-endpoint.handler.js +1 -1
- package/dist/src/features/endpoint/commands/handlers/delete-endpoint.handler.js.map +1 -1
- package/dist/src/features/endpoint/commands/impl/create-endpoint.command.d.ts +2 -0
- package/dist/src/features/plugin/file/utils/validate-file-data-for-restore.js +1 -1
- package/dist/src/features/plugin/file/utils/validate-file-data-for-restore.js.map +1 -1
- package/dist/src/features/project/commands/handlers/delete-project.handler.js +3 -3
- package/dist/src/features/project/commands/handlers/delete-project.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/get-row-by-id.handler.d.ts +2 -3
- package/dist/src/features/row/queries/handlers/get-row-by-id.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/get-row.handler.d.ts +3 -4
- package/dist/src/features/row/queries/handlers/get-row.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/get-rows.handler.d.ts +21 -5
- package/dist/src/features/row/queries/handlers/get-rows.handler.js +23 -20
- package/dist/src/features/row/queries/handlers/get-rows.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/resolve-row-count-foreign-keys-by.handler.d.ts +3 -4
- package/dist/src/features/row/queries/handlers/resolve-row-count-foreign-keys-by.handler.js +2 -2
- package/dist/src/features/row/queries/handlers/resolve-row-count-foreign-keys-by.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/resolve-row-count-foreign-keys-to.handler.d.ts +2 -2
- package/dist/src/features/row/queries/handlers/resolve-row-count-foreign-keys-to.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/resolve-row-foreign-keys-by.handler.d.ts +1 -2
- package/dist/src/features/row/queries/handlers/resolve-row-foreign-keys-by.handler.js.map +1 -1
- package/dist/src/features/row/queries/handlers/resolve-row-foreign-keys-to.handler.d.ts +1 -2
- package/dist/src/features/row/queries/handlers/resolve-row-foreign-keys-to.handler.js.map +1 -1
- package/dist/src/features/row/queries/impl/get-row-by-id.query.d.ts +3 -0
- package/dist/src/features/row/queries/impl/get-row-by-id.query.js.map +1 -1
- package/dist/src/features/row/queries/impl/get-row.query.d.ts +3 -0
- package/dist/src/features/row/queries/impl/get-row.query.js.map +1 -1
- package/dist/src/features/row/queries/impl/get-rows.query.d.ts +15 -2
- package/dist/src/features/row/queries/impl/get-rows.query.js.map +1 -1
- package/dist/src/features/row/queries/impl/resolve-row-count-foreign-keys-by.query.d.ts +2 -0
- package/dist/src/features/row/queries/impl/resolve-row-count-foreign-keys-to.query.d.ts +2 -0
- package/dist/src/features/row/queries/impl/resolve-row-foreign-keys-by.query.d.ts +4 -0
- package/dist/src/features/row/queries/impl/resolve-row-foreign-keys-by.query.js.map +1 -1
- package/dist/src/features/row/queries/impl/resolve-row-foreign-keys-to.query.d.ts +4 -0
- package/dist/src/features/row/queries/impl/resolve-row-foreign-keys-to.query.js.map +1 -1
- package/dist/src/features/row/row-api.service.d.ts +13 -0
- package/dist/src/features/row/row-api.service.js +47 -0
- package/dist/src/features/row/row-api.service.js.map +1 -0
- package/dist/src/features/row/row.module.js +3 -1
- package/dist/src/features/row/row.module.js.map +1 -1
- package/dist/src/features/share/commands/handlers/notify-endpoints.handler.js +1 -1
- package/dist/src/features/share/commands/handlers/notify-endpoints.handler.js.map +1 -1
- package/dist/src/features/share/foreign-keys.service.d.ts +7 -4
- package/dist/src/features/share/foreign-keys.service.js +77 -38
- package/dist/src/features/share/foreign-keys.service.js.map +1 -1
- package/dist/src/features/share/queries/handlers/transactional/find-table-in-revision-or-throw.handler.d.ts +1 -1
- package/dist/src/features/share/queries/handlers/transactional/find-table-in-revision-or-throw.handler.js +3 -3
- package/dist/src/features/share/queries/handlers/transactional/find-table-in-revision-or-throw.handler.js.map +1 -1
- package/dist/src/features/table/queries/handlers/index.d.ts +1 -2
- package/dist/src/features/table/queries/handlers/index.js +0 -2
- package/dist/src/features/table/queries/handlers/index.js.map +1 -1
- package/dist/src/infrastructure/database/database.module.js +3 -0
- package/dist/src/infrastructure/database/database.module.js.map +1 -1
- package/dist/src/infrastructure/database/postgresql-notification.service.d.ts +7 -0
- package/dist/src/infrastructure/database/postgresql-notification.service.js +33 -0
- package/dist/src/infrastructure/database/postgresql-notification.service.js.map +1 -0
- package/dist/src/infrastructure/database/transaction-prisma.service.d.ts +1 -0
- package/dist/src/infrastructure/database/transaction-prisma.service.js +3 -0
- package/dist/src/infrastructure/database/transaction-prisma.service.js.map +1 -1
- package/dist/src/infrastructure/notification/endpoint-notification.service.d.ts +7 -7
- package/dist/src/infrastructure/notification/endpoint-notification.service.js +15 -15
- package/dist/src/infrastructure/notification/endpoint-notification.service.js.map +1 -1
- package/dist/src/infrastructure/notification/notification.module.js +2 -1
- package/dist/src/infrastructure/notification/notification.module.js.map +1 -1
- package/dist/src/utils/prisma-sql-generator/__tests__/shared-helpers.d.ts +16 -0
- package/dist/src/utils/prisma-sql-generator/__tests__/shared-helpers.js +70 -0
- package/dist/src/utils/prisma-sql-generator/__tests__/shared-helpers.js.map +1 -0
- package/dist/src/utils/prisma-sql-generator/__tests__/test-helpers.d.ts +52 -0
- package/dist/src/utils/prisma-sql-generator/__tests__/test-helpers.js +531 -0
- package/dist/src/utils/prisma-sql-generator/__tests__/test-helpers.js.map +1 -0
- package/dist/src/utils/prisma-sql-generator/index.d.ts +2 -0
- package/dist/src/{features/row/queries/types → utils/prisma-sql-generator}/index.js +5 -5
- package/dist/src/utils/prisma-sql-generator/index.js.map +1 -0
- package/dist/src/utils/prisma-sql-generator/json-path.d.ts +14 -0
- package/dist/src/utils/prisma-sql-generator/json-path.js +121 -0
- package/dist/src/utils/prisma-sql-generator/json-path.js.map +1 -0
- package/dist/src/utils/prisma-sql-generator/types.d.ts +105 -0
- package/dist/src/{features/row/queries/types/get-row.types.js → utils/prisma-sql-generator/types.js} +1 -1
- package/dist/src/utils/prisma-sql-generator/types.js.map +1 -0
- package/dist/src/utils/prisma-sql-generator/where-generator.prisma.d.ts +21 -0
- package/dist/src/utils/prisma-sql-generator/where-generator.prisma.js +499 -0
- package/dist/src/utils/prisma-sql-generator/where-generator.prisma.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +3 -1
- package/dist/src/__tests__/utils/createMocks.d.ts +0 -19
- package/dist/src/__tests__/utils/createMocks.js +0 -30
- package/dist/src/__tests__/utils/createMocks.js.map +0 -1
- package/dist/src/features/row/queries/types/get-row-by-id.types.d.ts +0 -2
- package/dist/src/features/row/queries/types/get-row-by-id.types.js +0 -3
- package/dist/src/features/row/queries/types/get-row-by-id.types.js.map +0 -1
- package/dist/src/features/row/queries/types/get-row.types.d.ts +0 -2
- package/dist/src/features/row/queries/types/get-row.types.js.map +0 -1
- package/dist/src/features/row/queries/types/get-rows.types.d.ts +0 -3
- package/dist/src/features/row/queries/types/get-rows.types.js +0 -3
- package/dist/src/features/row/queries/types/get-rows.types.js.map +0 -1
- package/dist/src/features/row/queries/types/index.d.ts +0 -5
- package/dist/src/features/row/queries/types/index.js.map +0 -1
- package/dist/src/features/row/queries/types/resolve-row-foreign-keys-by.types.d.ts +0 -3
- package/dist/src/features/row/queries/types/resolve-row-foreign-keys-by.types.js +0 -3
- package/dist/src/features/row/queries/types/resolve-row-foreign-keys-by.types.js.map +0 -1
- package/dist/src/features/row/queries/types/resolve-row-foreign-keys-to.types.d.ts +0 -3
- package/dist/src/features/row/queries/types/resolve-row-foreign-keys-to.types.js +0 -3
- package/dist/src/features/row/queries/types/resolve-row-foreign-keys-to.types.js.map +0 -1
- package/dist/src/features/table/queries/handlers/get-rows-by-table.handler.d.ts +0 -30
- package/dist/src/features/table/queries/handlers/get-rows-by-table.handler.js +0 -70
- package/dist/src/features/table/queries/handlers/get-rows-by-table.handler.js.map +0 -1
- package/dist/src/features/table/queries/impl/get-rows-by-table.query.d.ts +0 -21
- package/dist/src/features/table/queries/impl/get-rows-by-table.query.js +0 -10
- package/dist/src/features/table/queries/impl/get-rows-by-table.query.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-row-foreign-keys-to.handler.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/handlers/resolve-row-foreign-keys-to.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA2D;AAC3D,2CAAwC;AACxC,mEAAmE;AACnE,wFAAsF;AACtF,+GAAkG;AAClG,
|
|
1
|
+
{"version":3,"file":"resolve-row-foreign-keys-to.handler.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/handlers/resolve-row-foreign-keys-to.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RowWithContext } from '../../../../features/share/types/row-with-context.types';
|
|
1
2
|
export declare class GetRowByIdQuery {
|
|
2
3
|
readonly data: {
|
|
3
4
|
readonly revisionId: string;
|
|
@@ -10,3 +11,5 @@ export declare class GetRowByIdQuery {
|
|
|
10
11
|
readonly rowVersionId: string;
|
|
11
12
|
});
|
|
12
13
|
}
|
|
14
|
+
export type GetRowByIdQueryData = GetRowByIdQuery['data'];
|
|
15
|
+
export type GetRowByIdQueryReturnType = RowWithContext | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-row-by-id.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/get-row-by-id.query.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"get-row-by-id.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/get-row-by-id.query.ts"],"names":[],"mappings":";;;AAEA,MAAa,eAAe;IAC1B,YACkB,IAIf;QAJe,SAAI,GAAJ,IAAI,CAInB;IACA,CAAC;CACL;AARD,0CAQC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RowWithContext } from '../../../../features/share/types/row-with-context.types';
|
|
1
2
|
export declare class GetRowQuery {
|
|
2
3
|
readonly data: {
|
|
3
4
|
revisionId: string;
|
|
@@ -10,3 +11,5 @@ export declare class GetRowQuery {
|
|
|
10
11
|
rowId: string;
|
|
11
12
|
});
|
|
12
13
|
}
|
|
14
|
+
export type GetRowQueryData = GetRowQuery['data'];
|
|
15
|
+
export type GetRowQueryReturnType = RowWithContext | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-row.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/get-row.query.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"get-row.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/get-row.query.ts"],"names":[],"mappings":";;;AAEA,MAAa,WAAW;IACtB,YACkB,IAIf;QAJe,SAAI,GAAJ,IAAI,CAInB;IACA,CAAC;CACL;AARD,kCAQC"}
|
|
@@ -1,11 +1,22 @@
|
|
|
1
1
|
import { Prisma } from '@prisma/client';
|
|
2
|
+
import { IPaginatedType } from '../../../../features/share/pagination.interface';
|
|
3
|
+
import { RowWithContext } from '../../../../features/share/types/row-with-context.types';
|
|
4
|
+
import { JsonAggregation, JsonValueType } from '../../../../utils/prisma-sql-generator';
|
|
5
|
+
export type JsonOrder = {
|
|
6
|
+
data: {
|
|
7
|
+
path: string;
|
|
8
|
+
direction: 'asc' | 'desc';
|
|
9
|
+
type: JsonValueType;
|
|
10
|
+
aggregation?: JsonAggregation;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
2
13
|
export declare class GetRowsQuery {
|
|
3
14
|
readonly data: {
|
|
4
15
|
readonly revisionId: string;
|
|
5
16
|
readonly tableId: string;
|
|
6
17
|
readonly first: number;
|
|
7
18
|
readonly after?: string;
|
|
8
|
-
readonly orderBy?: Prisma.RowOrderByWithRelationInput[];
|
|
19
|
+
readonly orderBy?: (Prisma.RowOrderByWithRelationInput | JsonOrder)[];
|
|
9
20
|
readonly where?: Prisma.RowWhereInput;
|
|
10
21
|
};
|
|
11
22
|
constructor(data: {
|
|
@@ -13,7 +24,9 @@ export declare class GetRowsQuery {
|
|
|
13
24
|
readonly tableId: string;
|
|
14
25
|
readonly first: number;
|
|
15
26
|
readonly after?: string;
|
|
16
|
-
readonly orderBy?: Prisma.RowOrderByWithRelationInput[];
|
|
27
|
+
readonly orderBy?: (Prisma.RowOrderByWithRelationInput | JsonOrder)[];
|
|
17
28
|
readonly where?: Prisma.RowWhereInput;
|
|
18
29
|
});
|
|
19
30
|
}
|
|
31
|
+
export type GetRowsQueryData = GetRowsQuery['data'];
|
|
32
|
+
export type GetRowsQueryReturnType = IPaginatedType<RowWithContext>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-rows.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/get-rows.query.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"get-rows.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/get-rows.query.ts"],"names":[],"mappings":";;;AAcA,MAAa,YAAY;IACvB,YACkB,IAOf;QAPe,SAAI,GAAJ,IAAI,CAOnB;IACA,CAAC;CACL;AAXD,oCAWC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { IPaginatedType } from '../../../../features/share/pagination.interface';
|
|
2
|
+
import { RowWithContext } from '../../../../features/share/types/row-with-context.types';
|
|
1
3
|
export declare class ResolveRowForeignKeysByQuery {
|
|
2
4
|
readonly data: {
|
|
3
5
|
readonly revisionId: string;
|
|
@@ -16,3 +18,5 @@ export declare class ResolveRowForeignKeysByQuery {
|
|
|
16
18
|
readonly after?: string;
|
|
17
19
|
});
|
|
18
20
|
}
|
|
21
|
+
export type ResolveRowForeignKeysByQueryData = ResolveRowForeignKeysByQuery['data'];
|
|
22
|
+
export type ResolveRowForeignKeysByReturnType = IPaginatedType<RowWithContext>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-row-foreign-keys-by.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/resolve-row-foreign-keys-by.query.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"resolve-row-foreign-keys-by.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/resolve-row-foreign-keys-by.query.ts"],"names":[],"mappings":";;;AAGA,MAAa,4BAA4B;IACvC,YACkB,IAOf;QAPe,SAAI,GAAJ,IAAI,CAOnB;IACA,CAAC;CACL;AAXD,oEAWC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { IPaginatedType } from '../../../../features/share/pagination.interface';
|
|
2
|
+
import { RowWithContext } from '../../../../features/share/types/row-with-context.types';
|
|
1
3
|
export declare class ResolveRowForeignKeysToQuery {
|
|
2
4
|
readonly data: {
|
|
3
5
|
readonly revisionId: string;
|
|
@@ -16,3 +18,5 @@ export declare class ResolveRowForeignKeysToQuery {
|
|
|
16
18
|
readonly after?: string;
|
|
17
19
|
});
|
|
18
20
|
}
|
|
21
|
+
export type ResolveRowForeignKeysToQueryData = ResolveRowForeignKeysToQuery['data'];
|
|
22
|
+
export type ResolveRowForeignKeysToReturnType = IPaginatedType<RowWithContext>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-row-foreign-keys-to.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/resolve-row-foreign-keys-to.query.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"resolve-row-foreign-keys-to.query.js","sourceRoot":"","sources":["../../../../../../src/features/row/queries/impl/resolve-row-foreign-keys-to.query.ts"],"names":[],"mappings":";;;AAGA,MAAa,4BAA4B;IACvC,YACkB,IAOf;QAPe,SAAI,GAAJ,IAAI,CAOnB;IACA,CAAC;CACL;AAXD,oEAWC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { QueryBus } from '@nestjs/cqrs';
|
|
2
|
+
import { GetRowByIdQueryData, GetRowByIdQueryReturnType, GetRowQueryData, GetRowQueryReturnType, GetRowsQueryData, GetRowsQueryReturnType, ResolveRowCountForeignKeysByQueryData, ResolveRowCountForeignKeysToQueryData, ResolveRowForeignKeysByQueryData, ResolveRowForeignKeysByReturnType, ResolveRowForeignKeysToQueryData, ResolveRowForeignKeysToReturnType } from '../../features/row/queries/impl';
|
|
3
|
+
export declare class RowApiService {
|
|
4
|
+
private readonly queryBus;
|
|
5
|
+
constructor(queryBus: QueryBus);
|
|
6
|
+
getRow(data: GetRowQueryData): Promise<GetRowQueryReturnType>;
|
|
7
|
+
getRowById(data: GetRowByIdQueryData): Promise<GetRowByIdQueryReturnType>;
|
|
8
|
+
getRows(data: GetRowsQueryData): Promise<GetRowsQueryReturnType>;
|
|
9
|
+
resolveRowCountForeignKeysBy(data: ResolveRowCountForeignKeysByQueryData): Promise<number>;
|
|
10
|
+
resolveRowCountForeignKeysTo(data: ResolveRowCountForeignKeysToQueryData): Promise<number>;
|
|
11
|
+
resolveRowForeignKeysBy(data: ResolveRowForeignKeysByQueryData): Promise<ResolveRowForeignKeysByReturnType>;
|
|
12
|
+
resolveRowForeignKeysTo(data: ResolveRowForeignKeysToQueryData): Promise<ResolveRowForeignKeysToReturnType>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.RowApiService = void 0;
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const cqrs_1 = require("@nestjs/cqrs");
|
|
15
|
+
const impl_1 = require("./queries/impl");
|
|
16
|
+
let RowApiService = class RowApiService {
|
|
17
|
+
constructor(queryBus) {
|
|
18
|
+
this.queryBus = queryBus;
|
|
19
|
+
}
|
|
20
|
+
getRow(data) {
|
|
21
|
+
return this.queryBus.execute(new impl_1.GetRowQuery(data));
|
|
22
|
+
}
|
|
23
|
+
getRowById(data) {
|
|
24
|
+
return this.queryBus.execute(new impl_1.GetRowByIdQuery(data));
|
|
25
|
+
}
|
|
26
|
+
getRows(data) {
|
|
27
|
+
return this.queryBus.execute(new impl_1.GetRowsQuery(data));
|
|
28
|
+
}
|
|
29
|
+
resolveRowCountForeignKeysBy(data) {
|
|
30
|
+
return this.queryBus.execute(new impl_1.ResolveRowCountForeignKeysByQuery(data));
|
|
31
|
+
}
|
|
32
|
+
resolveRowCountForeignKeysTo(data) {
|
|
33
|
+
return this.queryBus.execute(new impl_1.ResolveRowCountForeignKeysToQuery(data));
|
|
34
|
+
}
|
|
35
|
+
resolveRowForeignKeysBy(data) {
|
|
36
|
+
return this.queryBus.execute(new impl_1.ResolveRowForeignKeysByQuery(data));
|
|
37
|
+
}
|
|
38
|
+
resolveRowForeignKeysTo(data) {
|
|
39
|
+
return this.queryBus.execute(new impl_1.ResolveRowForeignKeysToQuery(data));
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
exports.RowApiService = RowApiService;
|
|
43
|
+
exports.RowApiService = RowApiService = __decorate([
|
|
44
|
+
(0, common_1.Injectable)(),
|
|
45
|
+
__metadata("design:paramtypes", [cqrs_1.QueryBus])
|
|
46
|
+
], RowApiService);
|
|
47
|
+
//# sourceMappingURL=row-api.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-api.service.js","sourceRoot":"","sources":["../../../../src/features/row/row-api.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,uCAAwC;AACxC,yCAsBuC;AAGhC,IAAM,aAAa,GAAnB,MAAM,aAAa;IACxB,YAA6B,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IAAG,CAAC;IAE5C,MAAM,CAAC,IAAqB;QACjC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC1B,IAAI,kBAAW,CAAC,IAAI,CAAC,CACtB,CAAC;IACJ,CAAC;IAEM,UAAU,CAAC,IAAyB;QACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC1B,IAAI,sBAAe,CAAC,IAAI,CAAC,CAC1B,CAAC;IACJ,CAAC;IAEM,OAAO,CAAC,IAAsB;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC1B,IAAI,mBAAY,CAAC,IAAI,CAAC,CACvB,CAAC;IACJ,CAAC;IAEM,4BAA4B,CACjC,IAA2C;QAE3C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAG1B,IAAI,wCAAiC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAEM,4BAA4B,CACjC,IAA2C;QAE3C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAG1B,IAAI,wCAAiC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAEM,uBAAuB,CAAC,IAAsC;QACnE,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAG1B,IAAI,mCAA4B,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEM,uBAAuB,CAAC,IAAsC;QACnE,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAG1B,IAAI,mCAA4B,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;CACF,CAAA;AApDY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAE4B,eAAQ;GADpC,aAAa,CAoDzB"}
|
|
@@ -10,6 +10,7 @@ exports.RowModule = void 0;
|
|
|
10
10
|
const common_1 = require("@nestjs/common");
|
|
11
11
|
const cqrs_1 = require("@nestjs/cqrs");
|
|
12
12
|
const plugin_module_1 = require("../plugin/plugin.module");
|
|
13
|
+
const row_api_service_1 = require("./row-api.service");
|
|
13
14
|
const database_module_1 = require("../../infrastructure/database/database.module");
|
|
14
15
|
const handlers_1 = require("./queries/handlers");
|
|
15
16
|
const share_module_1 = require("../share/share.module");
|
|
@@ -19,7 +20,8 @@ exports.RowModule = RowModule;
|
|
|
19
20
|
exports.RowModule = RowModule = __decorate([
|
|
20
21
|
(0, common_1.Module)({
|
|
21
22
|
imports: [database_module_1.DatabaseModule, cqrs_1.CqrsModule, share_module_1.ShareModule, plugin_module_1.PluginModule],
|
|
22
|
-
providers: [...handlers_1.ROW_QUERIES_HANDLERS],
|
|
23
|
+
providers: [row_api_service_1.RowApiService, ...handlers_1.ROW_QUERIES_HANDLERS],
|
|
24
|
+
exports: [row_api_service_1.RowApiService],
|
|
23
25
|
})
|
|
24
26
|
], RowModule);
|
|
25
27
|
//# sourceMappingURL=row.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"row.module.js","sourceRoot":"","sources":["../../../../src/features/row/row.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uCAA0C;AAC1C,2DAAiE;AACjE,mFAA6E;AAC7E,iDAAyE;AACzE,wDAA8D;
|
|
1
|
+
{"version":3,"file":"row.module.js","sourceRoot":"","sources":["../../../../src/features/row/row.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,uCAA0C;AAC1C,2DAAiE;AACjE,uDAAiE;AACjE,mFAA6E;AAC7E,iDAAyE;AACzE,wDAA8D;AAOvD,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IALrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,gCAAc,EAAE,iBAAU,EAAE,0BAAW,EAAE,4BAAY,CAAC;QAChE,SAAS,EAAE,CAAC,+BAAa,EAAE,GAAG,+BAAoB,CAAC;QACnD,OAAO,EAAE,CAAC,+BAAa,CAAC;KACzB,CAAC;GACW,SAAS,CAAG"}
|
|
@@ -25,7 +25,7 @@ let NotifyEndpointsHandler = class NotifyEndpointsHandler {
|
|
|
25
25
|
async notifyEndpoints(revisionId) {
|
|
26
26
|
const endpointIds = await this.getEndpointIds(revisionId);
|
|
27
27
|
for (const endpointId of endpointIds) {
|
|
28
|
-
this.endpointNotification.update(endpointId);
|
|
28
|
+
await this.endpointNotification.update(endpointId);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
async getEndpointIds(revisionId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notify-endpoints.handler.js","sourceRoot":"","sources":["../../../../../../src/features/share/commands/handlers/notify-endpoints.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA+D;AAC/D,uFAA2E;AAC3E,yHAA4G;AAC5G,kCAA0E;AAGnE,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAGjC,YACmB,MAAqB,EACrB,oBAAiD;QADjD,WAAM,GAAN,MAAM,CAAe;QACrB,yBAAoB,GAApB,oBAAoB,CAA6B;IACjE,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAA0B;QAC5C,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,UAAkB;QAC9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC1D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"notify-endpoints.handler.js","sourceRoot":"","sources":["../../../../../../src/features/share/commands/handlers/notify-endpoints.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAA+D;AAC/D,uFAA2E;AAC3E,yHAA4G;AAC5G,kCAA0E;AAGnE,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAGjC,YACmB,MAAqB,EACrB,oBAAiD;QADjD,WAAM,GAAN,MAAM,CAAe;QACrB,yBAAoB,GAApB,oBAAoB,CAA6B;IACjE,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAA0B;QAC5C,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,UAAkB;QAC9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC1D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,UAAkB;QAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ;aACxB,iBAAiB,CAAC;YACjB,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;SAC1B,CAAC;aACD,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;aAChE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAA;AA3BY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,qBAAc,EAAC,6BAAsB,CAAC;qCAKV,8BAAa;QACC,2DAA2B;GALzD,sBAAsB,CA2BlC"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
import { Prisma } from '@prisma/client';
|
|
1
2
|
import { TransactionPrismaService } from '../../infrastructure/database/transaction-prisma.service';
|
|
2
3
|
export declare class ForeignKeysService {
|
|
3
4
|
private readonly transactionService;
|
|
4
5
|
constructor(transactionService: TransactionPrismaService);
|
|
5
6
|
private get transaction();
|
|
7
|
+
private validateJsonKey;
|
|
8
|
+
private validateJsonPath;
|
|
6
9
|
findRowsByKeyValueInData(tableVersionId: string, key: string, value: string, limit?: number, offset?: number): Promise<{
|
|
7
|
-
data:
|
|
10
|
+
data: Prisma.JsonValue;
|
|
8
11
|
id: string;
|
|
9
12
|
createdId: string;
|
|
10
13
|
createdAt: Date;
|
|
@@ -12,13 +15,13 @@ export declare class ForeignKeysService {
|
|
|
12
15
|
readonly: boolean;
|
|
13
16
|
updatedAt: Date;
|
|
14
17
|
hash: string;
|
|
15
|
-
meta:
|
|
18
|
+
meta: Prisma.JsonValue;
|
|
16
19
|
publishedAt: Date;
|
|
17
20
|
schemaHash: string;
|
|
18
21
|
}[]>;
|
|
19
22
|
countRowsByKeyValueInData(tableVersionId: string, key: string, value: string): Promise<number>;
|
|
20
23
|
findRowsByPathsAndValueInData(tableVersionId: string, jsonPaths: string[], value: string, limit?: number, offset?: number): Promise<{
|
|
21
|
-
data:
|
|
24
|
+
data: Prisma.JsonValue;
|
|
22
25
|
id: string;
|
|
23
26
|
createdId: string;
|
|
24
27
|
createdAt: Date;
|
|
@@ -26,7 +29,7 @@ export declare class ForeignKeysService {
|
|
|
26
29
|
readonly: boolean;
|
|
27
30
|
updatedAt: Date;
|
|
28
31
|
hash: string;
|
|
29
|
-
meta:
|
|
32
|
+
meta: Prisma.JsonValue;
|
|
30
33
|
publishedAt: Date;
|
|
31
34
|
schemaHash: string;
|
|
32
35
|
}[]>;
|
|
@@ -11,78 +11,117 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.ForeignKeysService = void 0;
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
|
+
const client_1 = require("@prisma/client");
|
|
14
15
|
const transaction_prisma_service_1 = require("../../infrastructure/database/transaction-prisma.service");
|
|
15
16
|
let ForeignKeysService = class ForeignKeysService {
|
|
16
17
|
constructor(transactionService) {
|
|
17
18
|
this.transactionService = transactionService;
|
|
18
19
|
}
|
|
19
20
|
get transaction() {
|
|
20
|
-
return this.transactionService.
|
|
21
|
+
return this.transactionService.getTransactionOrPrisma();
|
|
22
|
+
}
|
|
23
|
+
validateJsonKey(input, label = 'key') {
|
|
24
|
+
if (input.includes('\0')) {
|
|
25
|
+
throw new Error(`Invalid ${label}: contains null byte`);
|
|
26
|
+
}
|
|
27
|
+
if (input.length > 1000) {
|
|
28
|
+
throw new Error(`Invalid ${label}: too long (max 1000 characters)`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
validateJsonPath(path) {
|
|
32
|
+
if (!path.startsWith('$')) {
|
|
33
|
+
throw new Error(`Invalid JSON path: must start with $ - got: ${path}`);
|
|
34
|
+
}
|
|
35
|
+
if (path.includes('\0')) {
|
|
36
|
+
throw new Error('Invalid JSON path: contains null byte');
|
|
37
|
+
}
|
|
21
38
|
}
|
|
22
39
|
async findRowsByKeyValueInData(tableVersionId, key, value, limit = 100, offset = 0) {
|
|
23
|
-
|
|
40
|
+
this.validateJsonKey(key, 'key');
|
|
41
|
+
const path = `$.**."${key}" ? (@ == $val)`;
|
|
42
|
+
return this.transaction.$queryRaw `
|
|
24
43
|
SELECT *
|
|
25
44
|
FROM "Row"
|
|
26
45
|
WHERE "versionId" IN (
|
|
27
46
|
SELECT "A"
|
|
28
47
|
FROM "_RowToTable"
|
|
29
|
-
WHERE "B" =
|
|
48
|
+
WHERE "B" = ${tableVersionId}
|
|
49
|
+
)
|
|
50
|
+
AND jsonb_path_exists(
|
|
51
|
+
"data",
|
|
52
|
+
${path}::jsonpath,
|
|
53
|
+
jsonb_build_object('val', to_jsonb(${value}::text))
|
|
30
54
|
)
|
|
31
|
-
AND jsonb_path_exists("data", '$.**.${key} ? (@ == "${value}")')
|
|
32
55
|
ORDER BY "id" ASC
|
|
33
56
|
LIMIT ${limit}
|
|
34
57
|
OFFSET ${offset};
|
|
35
58
|
`;
|
|
36
|
-
return this.transaction.$queryRawUnsafe(query);
|
|
37
59
|
}
|
|
38
60
|
async countRowsByKeyValueInData(tableVersionId, key, value) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
SELECT
|
|
44
|
-
FROM "
|
|
45
|
-
WHERE "
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
61
|
+
this.validateJsonKey(key, 'key');
|
|
62
|
+
const path = `$.**."${key}" ? (@ == $val)`;
|
|
63
|
+
const result = await this
|
|
64
|
+
.transaction.$queryRaw `
|
|
65
|
+
SELECT count(*)
|
|
66
|
+
FROM "Row"
|
|
67
|
+
WHERE "versionId" IN (
|
|
68
|
+
SELECT "A"
|
|
69
|
+
FROM "_RowToTable"
|
|
70
|
+
WHERE "B" = ${tableVersionId}
|
|
71
|
+
)
|
|
72
|
+
AND jsonb_path_exists(
|
|
73
|
+
"data",
|
|
74
|
+
${path}::jsonpath,
|
|
75
|
+
jsonb_build_object('val', to_jsonb(${value}::text))
|
|
76
|
+
);
|
|
77
|
+
`;
|
|
50
78
|
return Number(result[0].count);
|
|
51
79
|
}
|
|
52
80
|
async findRowsByPathsAndValueInData(tableVersionId, jsonPaths, value, limit = 100, offset = 0) {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
81
|
+
if (jsonPaths.length === 0) {
|
|
82
|
+
return [];
|
|
83
|
+
}
|
|
84
|
+
jsonPaths.forEach((path) => this.validateJsonPath(path));
|
|
85
|
+
const conditions = client_1.Prisma.join(jsonPaths.map((path) => client_1.Prisma.sql `
|
|
86
|
+
jsonb_path_exists(
|
|
87
|
+
"data",
|
|
88
|
+
${`${path} ? (@ == $val)`}::jsonpath,
|
|
89
|
+
jsonb_build_object('val', to_jsonb(${value}::text))
|
|
90
|
+
)
|
|
91
|
+
`), ' OR ');
|
|
92
|
+
return this.transaction.$queryRaw `
|
|
57
93
|
SELECT *
|
|
58
94
|
FROM "Row"
|
|
59
95
|
WHERE "versionId" IN (
|
|
60
|
-
SELECT "A"
|
|
61
|
-
FROM "_RowToTable"
|
|
62
|
-
WHERE "B" = '${tableVersionId}'
|
|
96
|
+
SELECT "A" FROM "_RowToTable" WHERE "B" = ${tableVersionId}
|
|
63
97
|
)
|
|
64
98
|
AND (${conditions})
|
|
65
99
|
ORDER BY "id" ASC
|
|
66
100
|
LIMIT ${limit}
|
|
67
101
|
OFFSET ${offset};
|
|
68
102
|
`;
|
|
69
|
-
return this.transaction.$queryRawUnsafe(query);
|
|
70
103
|
}
|
|
71
104
|
async countRowsByPathsAndValueInData(tableVersionId, jsonPaths, value) {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
105
|
+
if (jsonPaths.length === 0) {
|
|
106
|
+
return 0;
|
|
107
|
+
}
|
|
108
|
+
jsonPaths.forEach((path) => this.validateJsonPath(path));
|
|
109
|
+
const conditions = client_1.Prisma.join(jsonPaths.map((path) => client_1.Prisma.sql `
|
|
110
|
+
jsonb_path_exists(
|
|
111
|
+
"data",
|
|
112
|
+
${`${path} ? (@ == $val)`}::jsonpath,
|
|
113
|
+
jsonb_build_object('val', to_jsonb(${value}::text))
|
|
114
|
+
)
|
|
115
|
+
`), ' OR ');
|
|
116
|
+
const result = await this
|
|
117
|
+
.transaction.$queryRaw `
|
|
118
|
+
SELECT count(*)
|
|
119
|
+
FROM "Row"
|
|
120
|
+
WHERE "versionId" IN (
|
|
121
|
+
SELECT "A" FROM "_RowToTable" WHERE "B" = ${tableVersionId}
|
|
122
|
+
)
|
|
123
|
+
AND (${conditions});
|
|
124
|
+
`;
|
|
86
125
|
return Number(result[0].count);
|
|
87
126
|
}
|
|
88
127
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foreign-keys.service.js","sourceRoot":"","sources":["../../../../src/features/share/foreign-keys.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;
|
|
1
|
+
{"version":3,"file":"foreign-keys.service.js","sourceRoot":"","sources":["../../../../src/features/share/foreign-keys.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,6 @@ import { FindTableInRevisionType } from '../../../../../features/share/queries/t
|
|
|
5
5
|
export declare class FindTableInRevisionOrThrowHandler implements IQueryHandler<FindTableInRevisionOrThrowQuery> {
|
|
6
6
|
private readonly transactionService;
|
|
7
7
|
constructor(transactionService: TransactionPrismaService);
|
|
8
|
-
private get
|
|
8
|
+
private get prisma();
|
|
9
9
|
execute({ data, }: FindTableInRevisionOrThrowQuery): Promise<FindTableInRevisionType>;
|
|
10
10
|
}
|
|
@@ -18,11 +18,11 @@ let FindTableInRevisionOrThrowHandler = class FindTableInRevisionOrThrowHandler
|
|
|
18
18
|
constructor(transactionService) {
|
|
19
19
|
this.transactionService = transactionService;
|
|
20
20
|
}
|
|
21
|
-
get
|
|
22
|
-
return this.transactionService.
|
|
21
|
+
get prisma() {
|
|
22
|
+
return this.transactionService.getTransactionOrPrisma();
|
|
23
23
|
}
|
|
24
24
|
async execute({ data, }) {
|
|
25
|
-
const existingTable = await this.
|
|
25
|
+
const existingTable = await this.prisma.table.findFirst({
|
|
26
26
|
where: {
|
|
27
27
|
id: data.tableId,
|
|
28
28
|
revisions: { some: { id: data.revisionId } },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-table-in-revision-or-throw.handler.js","sourceRoot":"","sources":["../../../../../../../src/features/share/queries/handlers/transactional/find-table-in-revision-or-throw.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAqD;AACrD,uCAA2D;AAC3D,kHAAkG;AAClG,0HAAsI;AAI/H,IAAM,iCAAiC,GAAvC,MAAM,iCAAiC;IAG5C,YAA6B,kBAA4C;QAA5C,uBAAkB,GAAlB,kBAAkB,CAA0B;IAAG,CAAC;IAE7E,IAAY,
|
|
1
|
+
{"version":3,"file":"find-table-in-revision-or-throw.handler.js","sourceRoot":"","sources":["../../../../../../../src/features/share/queries/handlers/transactional/find-table-in-revision-or-throw.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAqD;AACrD,uCAA2D;AAC3D,kHAAkG;AAClG,0HAAsI;AAI/H,IAAM,iCAAiC,GAAvC,MAAM,iCAAiC;IAG5C,YAA6B,kBAA4C;QAA5C,uBAAkB,GAAlB,kBAAkB,CAA0B;IAAG,CAAC;IAE7E,IAAY,MAAM;QAChB,OAAO,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EACZ,IAAI,GAC4B;QAChC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;YACtD,KAAK,EAAE;gBACL,EAAE,EAAE,IAAI,CAAC,OAAO;gBAChB,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE;aAC7C;YACD,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,4BAAmB,CAC3B,uDAAuD,CACxD,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;CACF,CAAA;AAnCY,8EAAiC;4CAAjC,iCAAiC;IAD7C,IAAA,mBAAY,EAAC,uEAA+B,CAAC;qCAIK,qDAAwB;GAH9D,iCAAiC,CAmC7C"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { GetCountRowsInTableHandler } from '../../../../features/table/queries/handlers/get-count-rows-in-table.handler';
|
|
2
|
-
import { GetRowsByTableHandler } from '../../../../features/table/queries/handlers/get-rows-by-table.handler';
|
|
3
2
|
import { GetTableByIdHandler } from '../../../../features/table/queries/handlers/get-table-by-id.handler';
|
|
4
3
|
import { GetTableHandler } from '../../../../features/table/queries/handlers/get-table.handler';
|
|
5
4
|
import { GetTablesHandler } from '../../../../features/table/queries/handlers/get-tables.handler';
|
|
@@ -8,4 +7,4 @@ import { ResolveTableCountForeignKeysToHandler } from '../../../../features/tabl
|
|
|
8
7
|
import { ResolveTableForeignKeysByHandler } from '../../../../features/table/queries/handlers/resolve-table-foreign-keys-by.handler';
|
|
9
8
|
import { ResolveTableForeignKeysToHandler } from '../../../../features/table/queries/handlers/resolve-table-foreign-keys-to.handler';
|
|
10
9
|
import { ResolveTableSchemaHandler } from '../../../../features/table/queries/handlers/resolve-table-schema.handler';
|
|
11
|
-
export declare const TABLE_QUERIES_HANDLERS: (typeof GetCountRowsInTableHandler | typeof
|
|
10
|
+
export declare const TABLE_QUERIES_HANDLERS: (typeof GetCountRowsInTableHandler | typeof GetTableByIdHandler | typeof GetTableHandler | typeof GetTablesHandler | typeof ResolveTableCountForeignKeysByHandler | typeof ResolveTableCountForeignKeysToHandler | typeof ResolveTableForeignKeysByHandler | typeof ResolveTableForeignKeysToHandler | typeof ResolveTableSchemaHandler)[];
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TABLE_QUERIES_HANDLERS = void 0;
|
|
4
4
|
const get_count_rows_in_table_handler_1 = require("./get-count-rows-in-table.handler");
|
|
5
|
-
const get_rows_by_table_handler_1 = require("./get-rows-by-table.handler");
|
|
6
5
|
const get_table_by_id_handler_1 = require("./get-table-by-id.handler");
|
|
7
6
|
const get_table_handler_1 = require("./get-table.handler");
|
|
8
7
|
const get_tables_handler_1 = require("./get-tables.handler");
|
|
@@ -14,7 +13,6 @@ const resolve_table_schema_handler_1 = require("./resolve-table-schema.handler")
|
|
|
14
13
|
exports.TABLE_QUERIES_HANDLERS = [
|
|
15
14
|
get_table_handler_1.GetTableHandler,
|
|
16
15
|
get_table_by_id_handler_1.GetTableByIdHandler,
|
|
17
|
-
get_rows_by_table_handler_1.GetRowsByTableHandler,
|
|
18
16
|
get_tables_handler_1.GetTablesHandler,
|
|
19
17
|
get_count_rows_in_table_handler_1.GetCountRowsInTableHandler,
|
|
20
18
|
resolve_table_schema_handler_1.ResolveTableSchemaHandler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/features/table/queries/handlers/index.ts"],"names":[],"mappings":";;;AAAA,uFAAiH;AACjH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/features/table/queries/handlers/index.ts"],"names":[],"mappings":";;;AAAA,uFAAiH;AACjH,uEAAkG;AAClG,2DAAwF;AACxF,6DAA0F;AAC1F,+GAAwI;AACxI,+GAAwI;AACxI,mGAA6H;AAC7H,mGAA6H;AAC7H,iFAA6G;AAEhG,QAAA,sBAAsB,GAAG;IACpC,mCAAe;IACf,6CAAmB;IACnB,qCAAgB;IAChB,4DAA0B;IAC1B,wDAAyB;IACzB,wEAAgC;IAChC,mFAAqC;IACrC,wEAAgC;IAChC,mFAAqC;CACtC,CAAC"}
|
|
@@ -11,6 +11,7 @@ const common_1 = require("@nestjs/common");
|
|
|
11
11
|
const config_1 = require("@nestjs/config");
|
|
12
12
|
const hash_service_1 = require("./hash.service");
|
|
13
13
|
const id_service_1 = require("./id.service");
|
|
14
|
+
const postgresql_notification_service_1 = require("./postgresql-notification.service");
|
|
14
15
|
const prisma_service_1 = require("./prisma.service");
|
|
15
16
|
const s3_service_1 = require("./s3.service");
|
|
16
17
|
const transaction_prisma_service_1 = require("./transaction-prisma.service");
|
|
@@ -22,6 +23,7 @@ exports.DatabaseModule = DatabaseModule = __decorate([
|
|
|
22
23
|
imports: [config_1.ConfigModule],
|
|
23
24
|
providers: [
|
|
24
25
|
prisma_service_1.PrismaService,
|
|
26
|
+
postgresql_notification_service_1.PostgresqlNotificationService,
|
|
25
27
|
id_service_1.IdService,
|
|
26
28
|
transaction_prisma_service_1.TransactionPrismaService,
|
|
27
29
|
hash_service_1.HashService,
|
|
@@ -29,6 +31,7 @@ exports.DatabaseModule = DatabaseModule = __decorate([
|
|
|
29
31
|
],
|
|
30
32
|
exports: [
|
|
31
33
|
prisma_service_1.PrismaService,
|
|
34
|
+
postgresql_notification_service_1.PostgresqlNotificationService,
|
|
32
35
|
id_service_1.IdService,
|
|
33
36
|
transaction_prisma_service_1.TransactionPrismaService,
|
|
34
37
|
hash_service_1.HashService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.module.js","sourceRoot":"","sources":["../../../../src/infrastructure/database/database.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,2CAA8C;AAC9C,iDAAuE;AACvE,6CAAmE;AACnE,qDAA2E;AAC3E,6CAAmE;AACnE,6EAAkG;
|
|
1
|
+
{"version":3,"file":"database.module.js","sourceRoot":"","sources":["../../../../src/infrastructure/database/database.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,2CAA8C;AAC9C,iDAAuE;AACvE,6CAAmE;AACnE,uFAA4G;AAC5G,qDAA2E;AAC3E,6CAAmE;AACnE,6EAAkG;AAqB3F,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,wCAAc;yBAAd,cAAc;IAnB1B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,qBAAY,CAAC;QACvB,SAAS,EAAE;YACT,8BAAa;YACb,+DAA6B;YAC7B,sBAAS;YACT,qDAAwB;YACxB,0BAAW;YACX,sBAAS;SACV;QACD,OAAO,EAAE;YACP,8BAAa;YACb,+DAA6B;YAC7B,sBAAS;YACT,qDAAwB;YACxB,0BAAW;YACX,sBAAS;SACV;KACF,CAAC;GACW,cAAc,CAAG"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Prisma } from '@prisma/client';
|
|
2
|
+
import { PrismaService } from '../../infrastructure/database/prisma.service';
|
|
3
|
+
export declare class PostgresqlNotificationService {
|
|
4
|
+
private readonly prismaService;
|
|
5
|
+
constructor(prismaService: PrismaService);
|
|
6
|
+
notify(notification: string, payload: Prisma.JsonValue): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PostgresqlNotificationService = void 0;
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const prisma_service_1 = require("./prisma.service");
|
|
15
|
+
let PostgresqlNotificationService = class PostgresqlNotificationService {
|
|
16
|
+
constructor(prismaService) {
|
|
17
|
+
this.prismaService = prismaService;
|
|
18
|
+
}
|
|
19
|
+
async notify(notification, payload) {
|
|
20
|
+
await this.prismaService.$executeRaw `
|
|
21
|
+
SELECT pg_notify(
|
|
22
|
+
${notification},
|
|
23
|
+
${JSON.stringify(payload)}
|
|
24
|
+
)
|
|
25
|
+
`;
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
exports.PostgresqlNotificationService = PostgresqlNotificationService;
|
|
29
|
+
exports.PostgresqlNotificationService = PostgresqlNotificationService = __decorate([
|
|
30
|
+
(0, common_1.Injectable)(),
|
|
31
|
+
__metadata("design:paramtypes", [prisma_service_1.PrismaService])
|
|
32
|
+
], PostgresqlNotificationService);
|
|
33
|
+
//# sourceMappingURL=postgresql-notification.service.js.map
|