@nest-yalc-2/omnikernel-module 2.2.2 → 2.2.4
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/package.json +17 -15
- package/src/__tests__/omni-collection.entity.spec.ts +49 -49
- package/src/__tests__/omni-collection.service.spec.ts +83 -83
- package/src/__tests__/omni-document.entity.spec.ts +55 -55
- package/src/__tests__/omni-document.service.spec.ts +83 -83
- package/src/__tests__/omni-extension-projection-constraints.spec.ts +518 -518
- package/src/__tests__/omni-extension-projection.registration.spec.ts +947 -946
- package/src/__tests__/omni-extension-projection.service.spec.ts +806 -806
- package/src/__tests__/omni-external-ref.entity.spec.ts +36 -36
- package/src/__tests__/omni-external-ref.service.spec.ts +252 -252
- package/src/__tests__/omni-named.entity.spec.ts +33 -33
- package/src/__tests__/omni-record.entity.spec.ts +32 -32
- package/src/__tests__/omni-record.service.spec.ts +107 -107
- package/src/__tests__/omni-relation-semantics.spec.ts +102 -102
- package/src/__tests__/omni-relation.entity.spec.ts +38 -38
- package/src/__tests__/omni-scope-substrate.spec.ts +81 -81
- package/src/__tests__/omni-scoped.backend.spec.ts +115 -115
- package/src/__tests__/omni-scoped.service.spec.ts +354 -354
- package/src/__tests__/omnikernel.diagnostics.spec.ts +94 -94
- package/src/__tests__/omnikernel.module.spec.ts +38 -40
- package/src/__tests__/omnikernel.persistence.spec.ts +154 -154
- package/src/__tests__/omnikernel.public-api.spec.ts +238 -238
- package/src/__tests__/omnikernel.query.service.spec.ts +155 -155
- package/src/base/omni-base.entity.ts +41 -41
- package/src/base/omni-external-ref.entity.ts +53 -53
- package/src/base/omni-named.entity.ts +16 -16
- package/src/base/omni-record.entity.ts +51 -51
- package/src/base/omni-relation.entity.ts +72 -72
- package/src/index.ts +49 -49
- package/src/omni-collection-kind.enum.ts +10 -10
- package/src/omni-collection.backend.ts +16 -16
- package/src/omni-collection.dto.ts +170 -170
- package/src/omni-collection.entity.ts +21 -21
- package/src/omni-collection.service.ts +75 -75
- package/src/omni-document-kind.enum.ts +12 -12
- package/src/omni-document.backend.ts +16 -16
- package/src/omni-document.dto.ts +198 -198
- package/src/omni-document.entity.ts +30 -30
- package/src/omni-document.service.ts +75 -75
- package/src/omni-dto.helpers.ts +21 -21
- package/src/omni-extension-projection.definition.ts +294 -294
- package/src/omni-extension-projection.resource.ts +274 -274
- package/src/omni-extension-projection.service.ts +452 -452
- package/src/omni-external-ref-binding.validator.ts +53 -53
- package/src/omni-external-ref-internal-type.enum.ts +11 -11
- package/src/omni-external-ref.backend.ts +25 -25
- package/src/omni-external-ref.dto.ts +128 -128
- package/src/omni-external-ref.service.ts +255 -255
- package/src/omni-migration.ts +365 -365
- package/src/omni-named.backend.ts +11 -11
- package/src/omni-named.dto.ts +86 -86
- package/src/omni-projection.catalog.ts +345 -345
- package/src/omni-projection.lifecycle.ts +53 -53
- package/src/omni-record-status.enum.ts +11 -11
- package/src/omni-record.backend.ts +19 -19
- package/src/omni-record.dto.ts +157 -157
- package/src/omni-record.service.ts +113 -113
- package/src/omni-relation-kind.contract.ts +49 -49
- package/src/omni-relation-kind.enum.ts +12 -12
- package/src/omni-relation-projection.definition.ts +166 -166
- package/src/omni-relation-projection.resource.ts +360 -360
- package/src/omni-relation-projection.service.ts +610 -610
- package/src/omni-relation-semantics.ts +52 -52
- package/src/omni-relation-status.enum.ts +11 -11
- package/src/omni-relation.backend.ts +21 -21
- package/src/omni-relation.dto.ts +142 -142
- package/src/omni-relation.service.ts +159 -159
- package/src/omni-scope.ts +161 -161
- package/src/omni-scoped.backend.ts +110 -110
- package/src/omni-scoped.repository.ts +34 -34
- package/src/omni-scoped.service.ts +338 -338
- package/src/omnikernel.diagnostics.ts +83 -83
- package/src/omnikernel.module.ts +97 -97
- package/src/omnikernel.query.service.ts +108 -108
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
import { BadRequestException, NotFoundException } from '@nestjs/common';
|
|
2
|
-
import { IsNull, type Repository } from 'typeorm';
|
|
3
|
-
import { OmniRecordEntity } from './base/omni-record.entity.js';
|
|
4
|
-
import { OmniExternalRefInternalType } from './omni-external-ref-internal-type.enum.js';
|
|
5
|
-
import type { OmniScope } from './omni-scope.js';
|
|
6
|
-
|
|
7
|
-
export interface OmniExternalRefBinding {
|
|
8
|
-
internalId: string;
|
|
9
|
-
internalType: OmniExternalRefInternalType;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Reusable validation for an external reference whose declared target is an
|
|
14
|
-
* Omni record identity. Other internal types remain legacy application-owned
|
|
15
|
-
* identities and are intentionally not passed to this validator.
|
|
16
|
-
*/
|
|
17
|
-
export class OmniExternalRefBindingValidator {
|
|
18
|
-
constructor(
|
|
19
|
-
private readonly recordRepository: Repository<OmniRecordEntity>,
|
|
20
|
-
private readonly scope: OmniScope,
|
|
21
|
-
) {}
|
|
22
|
-
|
|
23
|
-
async assertTarget(
|
|
24
|
-
binding: OmniExternalRefBinding,
|
|
25
|
-
): Promise<OmniRecordEntity> {
|
|
26
|
-
if (binding.internalType !== OmniExternalRefInternalType.Record) {
|
|
27
|
-
throw new BadRequestException(
|
|
28
|
-
'Omni external record binding must declare internalType record.',
|
|
29
|
-
);
|
|
30
|
-
}
|
|
31
|
-
if (
|
|
32
|
-
typeof binding.internalId !== 'string' ||
|
|
33
|
-
binding.internalId.trim().length === 0
|
|
34
|
-
) {
|
|
35
|
-
throw new BadRequestException(
|
|
36
|
-
'Omni external reference internalId must be a non-empty record identity.',
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
const record = await this.recordRepository.findOne({
|
|
40
|
-
where: {
|
|
41
|
-
scopeId: this.scope.scopeId,
|
|
42
|
-
guid: binding.internalId,
|
|
43
|
-
deletedAt: IsNull(),
|
|
44
|
-
},
|
|
45
|
-
});
|
|
46
|
-
if (!record) {
|
|
47
|
-
throw new NotFoundException(
|
|
48
|
-
'Omni external reference target was not found in this scope.',
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
return record;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
1
|
+
import { BadRequestException, NotFoundException } from '@nestjs/common';
|
|
2
|
+
import { IsNull, type Repository } from 'typeorm';
|
|
3
|
+
import { OmniRecordEntity } from './base/omni-record.entity.js';
|
|
4
|
+
import { OmniExternalRefInternalType } from './omni-external-ref-internal-type.enum.js';
|
|
5
|
+
import type { OmniScope } from './omni-scope.js';
|
|
6
|
+
|
|
7
|
+
export interface OmniExternalRefBinding {
|
|
8
|
+
internalId: string;
|
|
9
|
+
internalType: OmniExternalRefInternalType;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Reusable validation for an external reference whose declared target is an
|
|
14
|
+
* Omni record identity. Other internal types remain legacy application-owned
|
|
15
|
+
* identities and are intentionally not passed to this validator.
|
|
16
|
+
*/
|
|
17
|
+
export class OmniExternalRefBindingValidator {
|
|
18
|
+
constructor(
|
|
19
|
+
private readonly recordRepository: Repository<OmniRecordEntity>,
|
|
20
|
+
private readonly scope: OmniScope,
|
|
21
|
+
) {}
|
|
22
|
+
|
|
23
|
+
async assertTarget(
|
|
24
|
+
binding: OmniExternalRefBinding,
|
|
25
|
+
): Promise<OmniRecordEntity> {
|
|
26
|
+
if (binding.internalType !== OmniExternalRefInternalType.Record) {
|
|
27
|
+
throw new BadRequestException(
|
|
28
|
+
'Omni external record binding must declare internalType record.',
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
if (
|
|
32
|
+
typeof binding.internalId !== 'string' ||
|
|
33
|
+
binding.internalId.trim().length === 0
|
|
34
|
+
) {
|
|
35
|
+
throw new BadRequestException(
|
|
36
|
+
'Omni external reference internalId must be a non-empty record identity.',
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
const record = await this.recordRepository.findOne({
|
|
40
|
+
where: {
|
|
41
|
+
scopeId: this.scope.scopeId,
|
|
42
|
+
guid: binding.internalId,
|
|
43
|
+
deletedAt: IsNull(),
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
if (!record) {
|
|
47
|
+
throw new NotFoundException(
|
|
48
|
+
'Omni external reference target was not found in this scope.',
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
return record;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { registerEnumType } from '@nestjs/graphql';
|
|
2
|
-
|
|
3
|
-
export enum OmniExternalRefInternalType {
|
|
4
|
-
Record = 'record',
|
|
5
|
-
Document = 'document',
|
|
6
|
-
Collection = 'collection',
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
registerEnumType(OmniExternalRefInternalType, {
|
|
10
|
-
name: 'OmniExternalRefInternalType',
|
|
11
|
-
});
|
|
1
|
+
import { registerEnumType } from '@nestjs/graphql';
|
|
2
|
+
|
|
3
|
+
export enum OmniExternalRefInternalType {
|
|
4
|
+
Record = 'record',
|
|
5
|
+
Document = 'document',
|
|
6
|
+
Collection = 'collection',
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
registerEnumType(OmniExternalRefInternalType, {
|
|
10
|
+
name: 'OmniExternalRefInternalType',
|
|
11
|
+
});
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { getRepositoryToken } from '@nestjs/typeorm';
|
|
2
|
-
import { OmniRecordEntity } from './base/omni-record.entity.js';
|
|
3
|
-
import { OmniExternalRefEntity } from './base/omni-external-ref.entity.js';
|
|
4
|
-
import { OmniExternalRefBindingValidator } from './omni-external-ref-binding.validator.js';
|
|
5
|
-
import { OmniExternalRefService } from './omni-external-ref.service.js';
|
|
6
|
-
import {
|
|
7
|
-
omniBackendServiceToken,
|
|
8
|
-
omniScopedBackendProvidersFactory,
|
|
9
|
-
} from './omni-scoped.backend.js';
|
|
10
|
-
|
|
11
|
-
export const omniExternalRefBackendProvidersFactory = (dbConnection: string) =>
|
|
12
|
-
omniScopedBackendProvidersFactory<OmniExternalRefEntity>({
|
|
13
|
-
entityModel: OmniExternalRefEntity,
|
|
14
|
-
dbConnection,
|
|
15
|
-
serviceToken: omniBackendServiceToken(OmniExternalRefService),
|
|
16
|
-
serviceProvider: OmniExternalRefService,
|
|
17
|
-
additionalInject: [getRepositoryToken(OmniRecordEntity, dbConnection)],
|
|
18
|
-
createService: (repository, scope, options, recordRepository) =>
|
|
19
|
-
new OmniExternalRefService(
|
|
20
|
-
repository,
|
|
21
|
-
scope,
|
|
22
|
-
options.deletion.externalRef,
|
|
23
|
-
new OmniExternalRefBindingValidator(recordRepository as never, scope),
|
|
24
|
-
),
|
|
25
|
-
});
|
|
1
|
+
import { getRepositoryToken } from '@nestjs/typeorm';
|
|
2
|
+
import { OmniRecordEntity } from './base/omni-record.entity.js';
|
|
3
|
+
import { OmniExternalRefEntity } from './base/omni-external-ref.entity.js';
|
|
4
|
+
import { OmniExternalRefBindingValidator } from './omni-external-ref-binding.validator.js';
|
|
5
|
+
import { OmniExternalRefService } from './omni-external-ref.service.js';
|
|
6
|
+
import {
|
|
7
|
+
omniBackendServiceToken,
|
|
8
|
+
omniScopedBackendProvidersFactory,
|
|
9
|
+
} from './omni-scoped.backend.js';
|
|
10
|
+
|
|
11
|
+
export const omniExternalRefBackendProvidersFactory = (dbConnection: string) =>
|
|
12
|
+
omniScopedBackendProvidersFactory<OmniExternalRefEntity>({
|
|
13
|
+
entityModel: OmniExternalRefEntity,
|
|
14
|
+
dbConnection,
|
|
15
|
+
serviceToken: omniBackendServiceToken(OmniExternalRefService),
|
|
16
|
+
serviceProvider: OmniExternalRefService,
|
|
17
|
+
additionalInject: [getRepositoryToken(OmniRecordEntity, dbConnection)],
|
|
18
|
+
createService: (repository, scope, options, recordRepository) =>
|
|
19
|
+
new OmniExternalRefService(
|
|
20
|
+
repository,
|
|
21
|
+
scope,
|
|
22
|
+
options.deletion.externalRef,
|
|
23
|
+
new OmniExternalRefBindingValidator(recordRepository as never, scope),
|
|
24
|
+
),
|
|
25
|
+
});
|
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
import {
|
|
2
|
-
InputType,
|
|
3
|
-
Int,
|
|
4
|
-
ObjectType,
|
|
5
|
-
OmitType,
|
|
6
|
-
PartialType,
|
|
7
|
-
} from '@nestjs/graphql';
|
|
8
|
-
import {
|
|
9
|
-
ModelField,
|
|
10
|
-
ModelObject,
|
|
11
|
-
} from '@nest-yalc-2/crud-gen/object.decorator.js';
|
|
12
|
-
import { UUIDScalar } from '@nest-yalc-2/graphql/scalars/uuid.scalar.js';
|
|
13
|
-
import returnValue from '@node-yalc/utils/returnValue.js';
|
|
14
|
-
import {
|
|
15
|
-
IsEnum,
|
|
16
|
-
IsInt,
|
|
17
|
-
IsObject,
|
|
18
|
-
IsOptional,
|
|
19
|
-
IsString,
|
|
20
|
-
IsUUID,
|
|
21
|
-
MaxLength,
|
|
22
|
-
} from 'class-validator';
|
|
23
|
-
import { GraphQLJSONObject } from 'graphql-type-json';
|
|
24
|
-
import { OmniExternalRefEntity } from './base/omni-external-ref.entity.js';
|
|
25
|
-
import { assignOmniPublicDto } from './omni-dto.helpers.js';
|
|
26
|
-
import { OmniExternalRefInternalType } from './omni-external-ref-internal-type.enum.js';
|
|
27
|
-
|
|
28
|
-
@ObjectType()
|
|
29
|
-
@ModelObject()
|
|
30
|
-
export class OmniExternalRefType extends OmniExternalRefEntity {
|
|
31
|
-
constructor(data?: Partial<OmniExternalRefType>) {
|
|
32
|
-
super();
|
|
33
|
-
if (data) {
|
|
34
|
-
assignOmniPublicDto(this, data);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
@ModelField({ gqlType: returnValue(UUIDScalar), isRequired: true })
|
|
39
|
-
@IsUUID()
|
|
40
|
-
guid!: string;
|
|
41
|
-
|
|
42
|
-
@ModelField({ gqlType: returnValue(Int) })
|
|
43
|
-
@IsInt()
|
|
44
|
-
revision!: number;
|
|
45
|
-
|
|
46
|
-
@ModelField({ gqlType: returnValue(OmniExternalRefInternalType) })
|
|
47
|
-
@IsEnum(OmniExternalRefInternalType)
|
|
48
|
-
internalType!: OmniExternalRefInternalType;
|
|
49
|
-
|
|
50
|
-
@ModelField({ gqlType: returnValue(UUIDScalar), isRequired: true })
|
|
51
|
-
@IsUUID()
|
|
52
|
-
internalId!: string;
|
|
53
|
-
|
|
54
|
-
@ModelField({ gqlType: returnValue(String) })
|
|
55
|
-
@IsString()
|
|
56
|
-
@MaxLength(128)
|
|
57
|
-
provider!: string;
|
|
58
|
-
|
|
59
|
-
@ModelField({
|
|
60
|
-
gqlType: returnValue(String),
|
|
61
|
-
gqlOptions: { nullable: true },
|
|
62
|
-
})
|
|
63
|
-
@IsOptional()
|
|
64
|
-
@IsString()
|
|
65
|
-
@MaxLength(128)
|
|
66
|
-
account?: string | null;
|
|
67
|
-
|
|
68
|
-
@ModelField({
|
|
69
|
-
gqlType: returnValue(String),
|
|
70
|
-
gqlOptions: { nullable: true },
|
|
71
|
-
})
|
|
72
|
-
@IsOptional()
|
|
73
|
-
@IsString()
|
|
74
|
-
@MaxLength(128)
|
|
75
|
-
container?: string | null;
|
|
76
|
-
|
|
77
|
-
@ModelField({ gqlType: returnValue(String) })
|
|
78
|
-
@IsString()
|
|
79
|
-
@MaxLength(255)
|
|
80
|
-
externalId!: string;
|
|
81
|
-
|
|
82
|
-
@ModelField({
|
|
83
|
-
gqlType: returnValue(GraphQLJSONObject),
|
|
84
|
-
gqlOptions: { nullable: true },
|
|
85
|
-
})
|
|
86
|
-
@IsOptional()
|
|
87
|
-
@IsObject()
|
|
88
|
-
payload?: Record<string, unknown> | null;
|
|
89
|
-
|
|
90
|
-
@ModelField({
|
|
91
|
-
gqlType: returnValue(String),
|
|
92
|
-
gqlOptions: { nullable: true },
|
|
93
|
-
})
|
|
94
|
-
@IsOptional()
|
|
95
|
-
@IsString()
|
|
96
|
-
@MaxLength(128)
|
|
97
|
-
payloadSchemaId?: string | null;
|
|
98
|
-
|
|
99
|
-
@ModelField({
|
|
100
|
-
gqlType: returnValue(Int),
|
|
101
|
-
gqlOptions: { nullable: true },
|
|
102
|
-
})
|
|
103
|
-
@IsOptional()
|
|
104
|
-
@IsInt()
|
|
105
|
-
payloadSchemaVersion?: number | null;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
@InputType()
|
|
109
|
-
@ModelObject()
|
|
110
|
-
export class OmniExternalRefCreateInput extends OmitType(
|
|
111
|
-
OmniExternalRefType,
|
|
112
|
-
['createdAt', 'updatedAt', 'revision'] as const,
|
|
113
|
-
InputType,
|
|
114
|
-
) {}
|
|
115
|
-
|
|
116
|
-
@InputType()
|
|
117
|
-
@ModelObject({ copyFrom: OmniExternalRefType })
|
|
118
|
-
export class OmniExternalRefCondition extends PartialType(
|
|
119
|
-
OmniExternalRefCreateInput,
|
|
120
|
-
InputType,
|
|
121
|
-
) {}
|
|
122
|
-
|
|
123
|
-
@InputType()
|
|
124
|
-
@ModelObject({ copyFrom: OmniExternalRefType })
|
|
125
|
-
export class OmniExternalRefUpdateInput extends PartialType(
|
|
126
|
-
OmniExternalRefCreateInput,
|
|
127
|
-
InputType,
|
|
128
|
-
) {}
|
|
1
|
+
import {
|
|
2
|
+
InputType,
|
|
3
|
+
Int,
|
|
4
|
+
ObjectType,
|
|
5
|
+
OmitType,
|
|
6
|
+
PartialType,
|
|
7
|
+
} from '@nestjs/graphql';
|
|
8
|
+
import {
|
|
9
|
+
ModelField,
|
|
10
|
+
ModelObject,
|
|
11
|
+
} from '@nest-yalc-2/crud-gen/object.decorator.js';
|
|
12
|
+
import { UUIDScalar } from '@nest-yalc-2/graphql/scalars/uuid.scalar.js';
|
|
13
|
+
import returnValue from '@node-yalc/utils/returnValue.js';
|
|
14
|
+
import {
|
|
15
|
+
IsEnum,
|
|
16
|
+
IsInt,
|
|
17
|
+
IsObject,
|
|
18
|
+
IsOptional,
|
|
19
|
+
IsString,
|
|
20
|
+
IsUUID,
|
|
21
|
+
MaxLength,
|
|
22
|
+
} from 'class-validator';
|
|
23
|
+
import { GraphQLJSONObject } from 'graphql-type-json';
|
|
24
|
+
import { OmniExternalRefEntity } from './base/omni-external-ref.entity.js';
|
|
25
|
+
import { assignOmniPublicDto } from './omni-dto.helpers.js';
|
|
26
|
+
import { OmniExternalRefInternalType } from './omni-external-ref-internal-type.enum.js';
|
|
27
|
+
|
|
28
|
+
@ObjectType()
|
|
29
|
+
@ModelObject()
|
|
30
|
+
export class OmniExternalRefType extends OmniExternalRefEntity {
|
|
31
|
+
constructor(data?: Partial<OmniExternalRefType>) {
|
|
32
|
+
super();
|
|
33
|
+
if (data) {
|
|
34
|
+
assignOmniPublicDto(this, data);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
@ModelField({ gqlType: returnValue(UUIDScalar), isRequired: true })
|
|
39
|
+
@IsUUID()
|
|
40
|
+
guid!: string;
|
|
41
|
+
|
|
42
|
+
@ModelField({ gqlType: returnValue(Int) })
|
|
43
|
+
@IsInt()
|
|
44
|
+
revision!: number;
|
|
45
|
+
|
|
46
|
+
@ModelField({ gqlType: returnValue(OmniExternalRefInternalType) })
|
|
47
|
+
@IsEnum(OmniExternalRefInternalType)
|
|
48
|
+
internalType!: OmniExternalRefInternalType;
|
|
49
|
+
|
|
50
|
+
@ModelField({ gqlType: returnValue(UUIDScalar), isRequired: true })
|
|
51
|
+
@IsUUID()
|
|
52
|
+
internalId!: string;
|
|
53
|
+
|
|
54
|
+
@ModelField({ gqlType: returnValue(String) })
|
|
55
|
+
@IsString()
|
|
56
|
+
@MaxLength(128)
|
|
57
|
+
provider!: string;
|
|
58
|
+
|
|
59
|
+
@ModelField({
|
|
60
|
+
gqlType: returnValue(String),
|
|
61
|
+
gqlOptions: { nullable: true },
|
|
62
|
+
})
|
|
63
|
+
@IsOptional()
|
|
64
|
+
@IsString()
|
|
65
|
+
@MaxLength(128)
|
|
66
|
+
account?: string | null;
|
|
67
|
+
|
|
68
|
+
@ModelField({
|
|
69
|
+
gqlType: returnValue(String),
|
|
70
|
+
gqlOptions: { nullable: true },
|
|
71
|
+
})
|
|
72
|
+
@IsOptional()
|
|
73
|
+
@IsString()
|
|
74
|
+
@MaxLength(128)
|
|
75
|
+
container?: string | null;
|
|
76
|
+
|
|
77
|
+
@ModelField({ gqlType: returnValue(String) })
|
|
78
|
+
@IsString()
|
|
79
|
+
@MaxLength(255)
|
|
80
|
+
externalId!: string;
|
|
81
|
+
|
|
82
|
+
@ModelField({
|
|
83
|
+
gqlType: returnValue(GraphQLJSONObject),
|
|
84
|
+
gqlOptions: { nullable: true },
|
|
85
|
+
})
|
|
86
|
+
@IsOptional()
|
|
87
|
+
@IsObject()
|
|
88
|
+
payload?: Record<string, unknown> | null;
|
|
89
|
+
|
|
90
|
+
@ModelField({
|
|
91
|
+
gqlType: returnValue(String),
|
|
92
|
+
gqlOptions: { nullable: true },
|
|
93
|
+
})
|
|
94
|
+
@IsOptional()
|
|
95
|
+
@IsString()
|
|
96
|
+
@MaxLength(128)
|
|
97
|
+
payloadSchemaId?: string | null;
|
|
98
|
+
|
|
99
|
+
@ModelField({
|
|
100
|
+
gqlType: returnValue(Int),
|
|
101
|
+
gqlOptions: { nullable: true },
|
|
102
|
+
})
|
|
103
|
+
@IsOptional()
|
|
104
|
+
@IsInt()
|
|
105
|
+
payloadSchemaVersion?: number | null;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@InputType()
|
|
109
|
+
@ModelObject()
|
|
110
|
+
export class OmniExternalRefCreateInput extends OmitType(
|
|
111
|
+
OmniExternalRefType,
|
|
112
|
+
['createdAt', 'updatedAt', 'revision'] as const,
|
|
113
|
+
InputType,
|
|
114
|
+
) {}
|
|
115
|
+
|
|
116
|
+
@InputType()
|
|
117
|
+
@ModelObject({ copyFrom: OmniExternalRefType })
|
|
118
|
+
export class OmniExternalRefCondition extends PartialType(
|
|
119
|
+
OmniExternalRefCreateInput,
|
|
120
|
+
InputType,
|
|
121
|
+
) {}
|
|
122
|
+
|
|
123
|
+
@InputType()
|
|
124
|
+
@ModelObject({ copyFrom: OmniExternalRefType })
|
|
125
|
+
export class OmniExternalRefUpdateInput extends PartialType(
|
|
126
|
+
OmniExternalRefCreateInput,
|
|
127
|
+
InputType,
|
|
128
|
+
) {}
|