@memberjunction/server 5.14.0 → 5.15.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/config.d.ts +37 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -0
- package/dist/config.js.map +1 -1
- package/dist/generated/generated.d.ts +169 -0
- package/dist/generated/generated.d.ts.map +1 -1
- package/dist/generated/generated.js +909 -1
- package/dist/generated/generated.js.map +1 -1
- package/package.json +59 -59
- package/src/config.ts +8 -0
- package/src/generated/generated.ts +635 -2
|
@@ -18,7 +18,7 @@ import { mj_core_schema } from '../config.js';
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
import { MJAccessControlRuleEntity, MJActionAuthorizationEntity, MJActionCategoryEntity, MJActionContextTypeEntity, MJActionContextEntity, MJActionExecutionLogEntity, MJActionFilterEntity, MJActionLibraryEntity, MJActionParamEntity, MJActionResultCodeEntity, MJActionEntity, MJAIActionEntity, MJAIAgentActionEntity, MJAIAgentArtifactTypeEntity, MJAIAgentCategoryEntity, MJAIAgentConfigurationEntity, MJAIAgentDataSourceEntity, MJAIAgentExampleEntity, MJAIAgentLearningCycleEntity, MJAIAgentModalityEntity, MJAIAgentModelEntity, MJAIAgentNoteTypeEntity, MJAIAgentNoteEntity, MJAIAgentPermissionEntity, MJAIAgentPromptEntity, MJAIAgentRelationshipEntity, MJAIAgentRequestTypeEntity, MJAIAgentRequestEntity, MJAIAgentRunMediaEntity, MJAIAgentRunStepEntity, MJAIAgentRunEntity, MJAIAgentStepPathEntity, MJAIAgentStepEntity, MJAIAgentTypeEntity, MJAIAgentEntity, MJAIArchitectureEntity, MJAIConfigurationParamEntity, MJAIConfigurationEntity, MJAICredentialBindingEntity, MJAIModalityEntity, MJAIModelActionEntity, MJAIModelArchitectureEntity, MJAIModelCostEntity, MJAIModelModalityEntity, MJAIModelPriceTypeEntity, MJAIModelPriceUnitTypeEntity, MJAIModelTypeEntity, MJAIModelVendorEntity, MJAIModelEntity, MJAIPromptCategoryEntity, MJAIPromptModelEntity, MJAIPromptRunMediaEntity, MJAIPromptRunEntity, MJAIPromptTypeEntity, MJAIPromptEntity, MJAIResultCacheEntity, MJAIVendorTypeDefinitionEntity, MJAIVendorTypeEntity, MJAIVendorEntity, MJAPIApplicationScopeEntity, MJAPIApplicationEntity, MJAPIKeyApplicationEntity, MJAPIKeyScopeEntity, MJAPIKeyUsageLogEntity, MJAPIKeyEntity, MJAPIScopeEntity, MJApplicationEntityEntity, MJApplicationSettingEntity, MJApplicationEntity, MJArtifactPermissionEntity, MJArtifactTypeEntity, MJArtifactUseEntity, MJArtifactVersionAttributeEntity, MJArtifactVersionEntity, MJArtifactEntity, MJAuditLogTypeEntity, MJAuditLogEntity, MJAuthorizationRoleEntity, MJAuthorizationEntity, MJCollectionArtifactEntity, MJCollectionPermissionEntity, MJCollectionEntity, MJCommunicationBaseMessageTypeEntity, MJCommunicationLogEntity, MJCommunicationProviderMessageTypeEntity, MJCommunicationProviderEntity, MJCommunicationRunEntity, MJCompanyEntity, MJCompanyIntegrationEntityMapEntity, MJCompanyIntegrationFieldMapEntity, MJCompanyIntegrationRecordMapEntity, MJCompanyIntegrationRunAPILogEntity, MJCompanyIntegrationRunDetailEntity, MJCompanyIntegrationRunEntity, MJCompanyIntegrationSyncWatermarkEntity, MJCompanyIntegrationEntity, MJComponentDependencyEntity, MJComponentLibraryEntity, MJComponentLibraryLinkEntity, MJComponentRegistryEntity, MJComponentEntity, MJContentFileTypeEntity, MJContentItemAttributeEntity, MJContentItemTagEntity, MJContentItemEntity, MJContentProcessRunEntity, MJContentSourceParamEntity, MJContentSourceTypeParamEntity, MJContentSourceTypeEntity, MJContentSourceEntity, MJContentTypeAttributeEntity, MJContentTypeEntity, MJConversationArtifactPermissionEntity, MJConversationArtifactVersionEntity, MJConversationArtifactEntity, MJConversationDetailArtifactEntity, MJConversationDetailAttachmentEntity, MJConversationDetailRatingEntity, MJConversationDetailEntity, MJConversationEntity, MJCredentialCategoryEntity, MJCredentialTypeEntity, MJCredentialEntity, MJDashboardCategoryEntity, MJDashboardCategoryLinkEntity, MJDashboardCategoryPermissionEntity, MJDashboardPartTypeEntity, MJDashboardPermissionEntity, MJDashboardUserPreferenceEntity, MJDashboardUserStateEntity, MJDashboardEntity, MJDataContextItemEntity, MJDataContextEntity, MJDatasetItemEntity, MJDatasetEntity, MJDuplicateRunDetailMatchEntity, MJDuplicateRunDetailEntity, MJDuplicateRunEntity, MJEmployeeCompanyIntegrationEntity, MJEmployeeRoleEntity, MJEmployeeSkillEntity, MJEmployeeEntity, MJEncryptionAlgorithmEntity, MJEncryptionKeySourceEntity, MJEncryptionKeyEntity, MJEntityEntity, MJEntityActionFilterEntity, MJEntityActionInvocationTypeEntity, MJEntityActionInvocationEntity, MJEntityActionParamEntity, MJEntityActionEntity, MJEntityAIActionEntity, MJEntityCommunicationFieldEntity, MJEntityCommunicationMessageTypeEntity, MJEntityDocumentRunEntity, MJEntityDocumentSettingEntity, MJEntityDocumentTypeEntity, MJEntityDocumentEntity, MJEntityFieldValueEntity, MJEntityFieldEntity, MJEntityPermissionEntity, MJEntityRecordDocumentEntity, MJEntityRelationshipDisplayComponentEntity, MJEntityRelationshipEntity, MJEntitySettingEntity, MJEnvironmentEntity, MJErrorLogEntity, MJExplorerNavigationItemEntity, MJFileCategoryEntity, MJFileEntityRecordLinkEntity, MJFileStorageAccountEntity, MJFileStorageProviderEntity, MJFileEntity, MJGeneratedCodeCategoryEntity, MJGeneratedCodeEntity, MJIntegrationObjectFieldEntity, MJIntegrationObjectEntity, MJIntegrationSourceTypeEntity, MJIntegrationURLFormatEntity, MJIntegrationEntity, MJLibraryEntity, MJLibraryItemEntity, MJListCategoryEntity, MJListDetailEntity, MJListInvitationEntity, MJListShareEntity, MJListEntity, MJMCPServerConnectionPermissionEntity, MJMCPServerConnectionToolEntity, MJMCPServerConnectionEntity, MJMCPServerToolEntity, MJMCPServerEntity, MJMCPToolExecutionLogEntity, MJOAuthAuthServerMetadataCacheEntity, MJOAuthAuthorizationStateEntity, MJOAuthClientRegistrationEntity, MJOAuthTokenEntity, MJOpenAppDependencyEntity, MJOpenAppInstallHistoryEntity, MJOpenAppEntity, MJOutputDeliveryTypeEntity, MJOutputFormatTypeEntity, MJOutputTriggerTypeEntity, MJProjectEntity, MJPublicLinkEntity, MJQueryEntity, MJQueryCategoryEntity, MJQueryDependencyEntity, MJQueryEntityEntity, MJQueryFieldEntity, MJQueryParameterEntity, MJQueryPermissionEntity, MJQuerySQLEntity, MJQueueTaskEntity, MJQueueTypeEntity, MJQueueEntity, MJRecommendationItemEntity, MJRecommendationProviderEntity, MJRecommendationRunEntity, MJRecommendationEntity, MJRecordChangeReplayRunEntity, MJRecordChangeEntity, MJRecordLinkEntity, MJRecordMergeDeletionLogEntity, MJRecordMergeLogEntity, MJReportCategoryEntity, MJReportSnapshotEntity, MJReportUserStateEntity, MJReportVersionEntity, MJReportEntity, MJResourceLinkEntity, MJResourcePermissionEntity, MJResourceTypeEntity, MJRoleEntity, MJRowLevelSecurityFilterEntity, MJScheduledActionParamEntity, MJScheduledActionEntity, MJScheduledJobRunEntity, MJScheduledJobTypeEntity, MJScheduledJobEntity, MJSchemaInfoEntity, MJSkillEntity, MJSQLDialectEntity, MJTaggedItemEntity, MJTagEntity, MJTaskDependencyEntity, MJTaskTypeEntity, MJTaskEntity, MJTemplateCategoryEntity, MJTemplateContentTypeEntity, MJTemplateContentEntity, MJTemplateParamEntity, MJTemplateEntity, MJTestRubricEntity, MJTestRunFeedbackEntity, MJTestRunOutputTypeEntity, MJTestRunOutputEntity, MJTestRunEntity, MJTestSuiteRunEntity, MJTestSuiteTestEntity, MJTestSuiteEntity, MJTestTypeEntity, MJTestEntity, MJUserApplicationEntityEntity, MJUserApplicationEntity, MJUserFavoriteEntity, MJUserNotificationPreferenceEntity, MJUserNotificationTypeEntity, MJUserNotificationEntity, MJUserRecordLogEntity, MJUserRoleEntity, MJUserSettingEntity, MJUserViewCategoryEntity, MJUserViewRunDetailEntity, MJUserViewRunEntity, MJUserViewEntity, MJUserEntity, MJVectorDatabaseEntity, MJVectorIndexEntity, MJVersionInstallationEntity, MJVersionLabelItemEntity, MJVersionLabelRestoreEntity, MJVersionLabelEntity, MJWorkflowEngineEntity, MJWorkflowRunEntity, MJWorkflowEntity, MJWorkspaceItemEntity, MJWorkspaceEntity } from '@memberjunction/core-entities';
|
|
21
|
+
import { MJAccessControlRuleEntity, MJActionAuthorizationEntity, MJActionCategoryEntity, MJActionContextTypeEntity, MJActionContextEntity, MJActionExecutionLogEntity, MJActionFilterEntity, MJActionLibraryEntity, MJActionParamEntity, MJActionResultCodeEntity, MJActionEntity, MJAIActionEntity, MJAIAgentActionEntity, MJAIAgentArtifactTypeEntity, MJAIAgentCategoryEntity, MJAIAgentConfigurationEntity, MJAIAgentDataSourceEntity, MJAIAgentExampleEntity, MJAIAgentLearningCycleEntity, MJAIAgentModalityEntity, MJAIAgentModelEntity, MJAIAgentNoteTypeEntity, MJAIAgentNoteEntity, MJAIAgentPermissionEntity, MJAIAgentPromptEntity, MJAIAgentRelationshipEntity, MJAIAgentRequestTypeEntity, MJAIAgentRequestEntity, MJAIAgentRunMediaEntity, MJAIAgentRunStepEntity, MJAIAgentRunEntity, MJAIAgentStepPathEntity, MJAIAgentStepEntity, MJAIAgentTypeEntity, MJAIAgentEntity, MJAIArchitectureEntity, MJAIConfigurationParamEntity, MJAIConfigurationEntity, MJAICredentialBindingEntity, MJAIModalityEntity, MJAIModelActionEntity, MJAIModelArchitectureEntity, MJAIModelCostEntity, MJAIModelModalityEntity, MJAIModelPriceTypeEntity, MJAIModelPriceUnitTypeEntity, MJAIModelTypeEntity, MJAIModelVendorEntity, MJAIModelEntity, MJAIPromptCategoryEntity, MJAIPromptModelEntity, MJAIPromptRunMediaEntity, MJAIPromptRunEntity, MJAIPromptTypeEntity, MJAIPromptEntity, MJAIResultCacheEntity, MJAIVendorTypeDefinitionEntity, MJAIVendorTypeEntity, MJAIVendorEntity, MJAPIApplicationScopeEntity, MJAPIApplicationEntity, MJAPIKeyApplicationEntity, MJAPIKeyScopeEntity, MJAPIKeyUsageLogEntity, MJAPIKeyEntity, MJAPIScopeEntity, MJApplicationEntityEntity, MJApplicationSettingEntity, MJApplicationEntity, MJArtifactPermissionEntity, MJArtifactTypeEntity, MJArtifactUseEntity, MJArtifactVersionAttributeEntity, MJArtifactVersionEntity, MJArtifactEntity, MJAuditLogTypeEntity, MJAuditLogEntity, MJAuthorizationRoleEntity, MJAuthorizationEntity, MJCollectionArtifactEntity, MJCollectionPermissionEntity, MJCollectionEntity, MJCommunicationBaseMessageTypeEntity, MJCommunicationLogEntity, MJCommunicationProviderMessageTypeEntity, MJCommunicationProviderEntity, MJCommunicationRunEntity, MJCompanyEntity, MJCompanyIntegrationEntityMapEntity, MJCompanyIntegrationFieldMapEntity, MJCompanyIntegrationRecordMapEntity, MJCompanyIntegrationRunAPILogEntity, MJCompanyIntegrationRunDetailEntity, MJCompanyIntegrationRunEntity, MJCompanyIntegrationSyncWatermarkEntity, MJCompanyIntegrationEntity, MJComponentDependencyEntity, MJComponentLibraryEntity, MJComponentLibraryLinkEntity, MJComponentRegistryEntity, MJComponentEntity, MJContentFileTypeEntity, MJContentItemAttributeEntity, MJContentItemTagEntity, MJContentItemEntity, MJContentProcessRunEntity, MJContentSourceParamEntity, MJContentSourceTypeParamEntity, MJContentSourceTypeEntity, MJContentSourceEntity, MJContentTypeAttributeEntity, MJContentTypeEntity, MJConversationArtifactPermissionEntity, MJConversationArtifactVersionEntity, MJConversationArtifactEntity, MJConversationDetailArtifactEntity, MJConversationDetailAttachmentEntity, MJConversationDetailRatingEntity, MJConversationDetailEntity, MJConversationEntity, MJCredentialCategoryEntity, MJCredentialTypeEntity, MJCredentialEntity, MJDashboardCategoryEntity, MJDashboardCategoryLinkEntity, MJDashboardCategoryPermissionEntity, MJDashboardPartTypeEntity, MJDashboardPermissionEntity, MJDashboardUserPreferenceEntity, MJDashboardUserStateEntity, MJDashboardEntity, MJDataContextItemEntity, MJDataContextEntity, MJDatasetItemEntity, MJDatasetEntity, MJDuplicateRunDetailMatchEntity, MJDuplicateRunDetailEntity, MJDuplicateRunEntity, MJEmployeeCompanyIntegrationEntity, MJEmployeeRoleEntity, MJEmployeeSkillEntity, MJEmployeeEntity, MJEncryptionAlgorithmEntity, MJEncryptionKeySourceEntity, MJEncryptionKeyEntity, MJEntityEntity, MJEntityActionFilterEntity, MJEntityActionInvocationTypeEntity, MJEntityActionInvocationEntity, MJEntityActionParamEntity, MJEntityActionEntity, MJEntityAIActionEntity, MJEntityCommunicationFieldEntity, MJEntityCommunicationMessageTypeEntity, MJEntityDocumentRunEntity, MJEntityDocumentSettingEntity, MJEntityDocumentTypeEntity, MJEntityDocumentEntity, MJEntityFieldValueEntity, MJEntityFieldEntity, MJEntityOrganicKeyRelatedEntityEntity, MJEntityOrganicKeyEntity, MJEntityPermissionEntity, MJEntityRecordDocumentEntity, MJEntityRelationshipDisplayComponentEntity, MJEntityRelationshipEntity, MJEntitySettingEntity, MJEnvironmentEntity, MJErrorLogEntity, MJExplorerNavigationItemEntity, MJFileCategoryEntity, MJFileEntityRecordLinkEntity, MJFileStorageAccountEntity, MJFileStorageProviderEntity, MJFileEntity, MJGeneratedCodeCategoryEntity, MJGeneratedCodeEntity, MJIntegrationObjectFieldEntity, MJIntegrationObjectEntity, MJIntegrationSourceTypeEntity, MJIntegrationURLFormatEntity, MJIntegrationEntity, MJLibraryEntity, MJLibraryItemEntity, MJListCategoryEntity, MJListDetailEntity, MJListInvitationEntity, MJListShareEntity, MJListEntity, MJMCPServerConnectionPermissionEntity, MJMCPServerConnectionToolEntity, MJMCPServerConnectionEntity, MJMCPServerToolEntity, MJMCPServerEntity, MJMCPToolExecutionLogEntity, MJOAuthAuthServerMetadataCacheEntity, MJOAuthAuthorizationStateEntity, MJOAuthClientRegistrationEntity, MJOAuthTokenEntity, MJOpenAppDependencyEntity, MJOpenAppInstallHistoryEntity, MJOpenAppEntity, MJOutputDeliveryTypeEntity, MJOutputFormatTypeEntity, MJOutputTriggerTypeEntity, MJProjectEntity, MJPublicLinkEntity, MJQueryEntity, MJQueryCategoryEntity, MJQueryDependencyEntity, MJQueryEntityEntity, MJQueryFieldEntity, MJQueryParameterEntity, MJQueryPermissionEntity, MJQuerySQLEntity, MJQueueTaskEntity, MJQueueTypeEntity, MJQueueEntity, MJRecommendationItemEntity, MJRecommendationProviderEntity, MJRecommendationRunEntity, MJRecommendationEntity, MJRecordChangeReplayRunEntity, MJRecordChangeEntity, MJRecordLinkEntity, MJRecordMergeDeletionLogEntity, MJRecordMergeLogEntity, MJReportCategoryEntity, MJReportSnapshotEntity, MJReportUserStateEntity, MJReportVersionEntity, MJReportEntity, MJResourceLinkEntity, MJResourcePermissionEntity, MJResourceTypeEntity, MJRoleEntity, MJRowLevelSecurityFilterEntity, MJScheduledActionParamEntity, MJScheduledActionEntity, MJScheduledJobRunEntity, MJScheduledJobTypeEntity, MJScheduledJobEntity, MJSchemaInfoEntity, MJSkillEntity, MJSQLDialectEntity, MJTaggedItemEntity, MJTagEntity, MJTaskDependencyEntity, MJTaskTypeEntity, MJTaskEntity, MJTemplateCategoryEntity, MJTemplateContentTypeEntity, MJTemplateContentEntity, MJTemplateParamEntity, MJTemplateEntity, MJTestRubricEntity, MJTestRunFeedbackEntity, MJTestRunOutputTypeEntity, MJTestRunOutputEntity, MJTestRunEntity, MJTestSuiteRunEntity, MJTestSuiteTestEntity, MJTestSuiteEntity, MJTestTypeEntity, MJTestEntity, MJUserApplicationEntityEntity, MJUserApplicationEntity, MJUserFavoriteEntity, MJUserNotificationPreferenceEntity, MJUserNotificationTypeEntity, MJUserNotificationEntity, MJUserRecordLogEntity, MJUserRoleEntity, MJUserSettingEntity, MJUserViewCategoryEntity, MJUserViewRunDetailEntity, MJUserViewRunEntity, MJUserViewEntity, MJUserEntity, MJVectorDatabaseEntity, MJVectorIndexEntity, MJVersionInstallationEntity, MJVersionLabelItemEntity, MJVersionLabelRestoreEntity, MJVersionLabelEntity, MJWorkflowEngineEntity, MJWorkflowRunEntity, MJWorkflowEntity, MJWorkspaceItemEntity, MJWorkspaceEntity } from '@memberjunction/core-entities';
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
//****************************************************************************
|
|
@@ -10241,7 +10241,7 @@ export class MJAICredentialBinding_ {
|
|
|
10241
10241
|
AIVendor?: string;
|
|
10242
10242
|
|
|
10243
10243
|
@Field({nullable: true})
|
|
10244
|
-
@MaxLength(
|
|
10244
|
+
@MaxLength(100)
|
|
10245
10245
|
AIModelVendor?: string;
|
|
10246
10246
|
|
|
10247
10247
|
@Field({nullable: true})
|
|
@@ -11883,6 +11883,12 @@ export class MJAIModelType_ {
|
|
|
11883
11883
|
@MaxLength(36)
|
|
11884
11884
|
DefaultOutputModalityID: string;
|
|
11885
11885
|
|
|
11886
|
+
@Field(() => Boolean, {description: `Whether models of this type generally support assistant prefill. This is a default value that individual AI Model Vendor records can override. For LLM types, many providers support prefill; for image/audio types, this is typically false.`})
|
|
11887
|
+
SupportsPrefill: boolean;
|
|
11888
|
+
|
|
11889
|
+
@Field({nullable: true, description: `Default fallback instruction text used when PrefillFallbackMode is SystemInstruction and the provider does not support native prefill. Use {{prefill}} as a placeholder for the actual prefill text. Example: "IMPORTANT: You must begin your response with exactly: {{prefill}}". Individual AI Model Vendor records can override this. If null, a generic fallback is used.`})
|
|
11890
|
+
PrefillFallbackText?: string;
|
|
11891
|
+
|
|
11886
11892
|
@Field()
|
|
11887
11893
|
@MaxLength(50)
|
|
11888
11894
|
DefaultInputModality: string;
|
|
@@ -11918,6 +11924,12 @@ export class CreateMJAIModelTypeInput {
|
|
|
11918
11924
|
|
|
11919
11925
|
@Field({ nullable: true })
|
|
11920
11926
|
DefaultOutputModalityID?: string;
|
|
11927
|
+
|
|
11928
|
+
@Field(() => Boolean, { nullable: true })
|
|
11929
|
+
SupportsPrefill?: boolean;
|
|
11930
|
+
|
|
11931
|
+
@Field({ nullable: true })
|
|
11932
|
+
PrefillFallbackText: string | null;
|
|
11921
11933
|
}
|
|
11922
11934
|
|
|
11923
11935
|
|
|
@@ -11941,6 +11953,12 @@ export class UpdateMJAIModelTypeInput {
|
|
|
11941
11953
|
@Field({ nullable: true })
|
|
11942
11954
|
DefaultOutputModalityID?: string;
|
|
11943
11955
|
|
|
11956
|
+
@Field(() => Boolean, { nullable: true })
|
|
11957
|
+
SupportsPrefill?: boolean;
|
|
11958
|
+
|
|
11959
|
+
@Field({ nullable: true })
|
|
11960
|
+
PrefillFallbackText?: string | null;
|
|
11961
|
+
|
|
11944
11962
|
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
11945
11963
|
OldValues___?: KeyValuePairInput[];
|
|
11946
11964
|
}
|
|
@@ -12123,6 +12141,12 @@ export class MJAIModelVendor_ {
|
|
|
12123
12141
|
@MaxLength(36)
|
|
12124
12142
|
TypeID: string;
|
|
12125
12143
|
|
|
12144
|
+
@Field(() => Boolean, {nullable: true, description: `Whether this specific model-vendor implementation supports assistant prefill. Overrides the AI Model Type default when set. NULL means inherit from the AI Model Type. For example, Claude via Anthropic supports prefill (true), but GPT-4 via OpenAI does not (false).`})
|
|
12145
|
+
SupportsPrefill?: boolean;
|
|
12146
|
+
|
|
12147
|
+
@Field({nullable: true, description: `Model-specific fallback instruction text used when PrefillFallbackMode is SystemInstruction and the provider does not support native prefill. Overrides the AI Model Type default. Use {{prefill}} as a placeholder. Allows tuning the fallback instruction per model since different models respond better to different phrasing.`})
|
|
12148
|
+
PrefillFallbackText?: string;
|
|
12149
|
+
|
|
12126
12150
|
@Field()
|
|
12127
12151
|
@MaxLength(50)
|
|
12128
12152
|
Model: string;
|
|
@@ -12186,6 +12210,12 @@ export class CreateMJAIModelVendorInput {
|
|
|
12186
12210
|
|
|
12187
12211
|
@Field({ nullable: true })
|
|
12188
12212
|
TypeID?: string;
|
|
12213
|
+
|
|
12214
|
+
@Field(() => Boolean, { nullable: true })
|
|
12215
|
+
SupportsPrefill: boolean | null;
|
|
12216
|
+
|
|
12217
|
+
@Field({ nullable: true })
|
|
12218
|
+
PrefillFallbackText: string | null;
|
|
12189
12219
|
}
|
|
12190
12220
|
|
|
12191
12221
|
|
|
@@ -12236,6 +12266,12 @@ export class UpdateMJAIModelVendorInput {
|
|
|
12236
12266
|
@Field({ nullable: true })
|
|
12237
12267
|
TypeID?: string;
|
|
12238
12268
|
|
|
12269
|
+
@Field(() => Boolean, { nullable: true })
|
|
12270
|
+
SupportsPrefill?: boolean | null;
|
|
12271
|
+
|
|
12272
|
+
@Field({ nullable: true })
|
|
12273
|
+
PrefillFallbackText?: string | null;
|
|
12274
|
+
|
|
12239
12275
|
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
12240
12276
|
OldValues___?: KeyValuePairInput[];
|
|
12241
12277
|
}
|
|
@@ -12384,6 +12420,12 @@ export class MJAIModel_ {
|
|
|
12384
12420
|
@MaxLength(36)
|
|
12385
12421
|
PriorVersionID?: string;
|
|
12386
12422
|
|
|
12423
|
+
@Field(() => Boolean, {nullable: true, description: `Whether this model supports assistant prefill. Overrides the AI Model Type default when set. NULL means inherit from the AI Model Type. Can be further overridden per-vendor in AI Model Vendor.`})
|
|
12424
|
+
SupportsPrefill?: boolean;
|
|
12425
|
+
|
|
12426
|
+
@Field({nullable: true, description: `Model-level fallback instruction text used when PrefillFallbackMode is SystemInstruction and the provider does not support native prefill. Overrides the AI Model Type default, can be further overridden per-vendor in AI Model Vendor. Use {{prefill}} as a placeholder.`})
|
|
12427
|
+
PrefillFallbackText?: string;
|
|
12428
|
+
|
|
12387
12429
|
@Field()
|
|
12388
12430
|
@MaxLength(50)
|
|
12389
12431
|
AIModelType: string;
|
|
@@ -12517,6 +12559,12 @@ export class CreateMJAIModelInput {
|
|
|
12517
12559
|
@Field({ nullable: true })
|
|
12518
12560
|
PriorVersionID: string | null;
|
|
12519
12561
|
|
|
12562
|
+
@Field(() => Boolean, { nullable: true })
|
|
12563
|
+
SupportsPrefill: boolean | null;
|
|
12564
|
+
|
|
12565
|
+
@Field({ nullable: true })
|
|
12566
|
+
PrefillFallbackText: string | null;
|
|
12567
|
+
|
|
12520
12568
|
@Field({ nullable: true })
|
|
12521
12569
|
Vendor: string | null;
|
|
12522
12570
|
|
|
@@ -12578,6 +12626,12 @@ export class UpdateMJAIModelInput {
|
|
|
12578
12626
|
@Field({ nullable: true })
|
|
12579
12627
|
PriorVersionID?: string | null;
|
|
12580
12628
|
|
|
12629
|
+
@Field(() => Boolean, { nullable: true })
|
|
12630
|
+
SupportsPrefill?: boolean | null;
|
|
12631
|
+
|
|
12632
|
+
@Field({ nullable: true })
|
|
12633
|
+
PrefillFallbackText?: string | null;
|
|
12634
|
+
|
|
12581
12635
|
@Field({ nullable: true })
|
|
12582
12636
|
Vendor?: string | null;
|
|
12583
12637
|
|
|
@@ -13928,6 +13982,9 @@ export class MJAIPromptRun_ {
|
|
|
13928
13982
|
@MaxLength(36)
|
|
13929
13983
|
TestRunID?: string;
|
|
13930
13984
|
|
|
13985
|
+
@Field({nullable: true, description: `The assistant prefill text that was used during this prompt execution. Records whether native prefill or fallback was applied. NULL means no prefill was used.`})
|
|
13986
|
+
AssistantPrefill?: string;
|
|
13987
|
+
|
|
13931
13988
|
@Field()
|
|
13932
13989
|
@MaxLength(255)
|
|
13933
13990
|
Prompt: string;
|
|
@@ -14248,6 +14305,9 @@ export class CreateMJAIPromptRunInput {
|
|
|
14248
14305
|
|
|
14249
14306
|
@Field({ nullable: true })
|
|
14250
14307
|
TestRunID: string | null;
|
|
14308
|
+
|
|
14309
|
+
@Field({ nullable: true })
|
|
14310
|
+
AssistantPrefill: string | null;
|
|
14251
14311
|
}
|
|
14252
14312
|
|
|
14253
14313
|
|
|
@@ -14502,6 +14562,9 @@ export class UpdateMJAIPromptRunInput {
|
|
|
14502
14562
|
@Field({ nullable: true })
|
|
14503
14563
|
TestRunID?: string | null;
|
|
14504
14564
|
|
|
14565
|
+
@Field({ nullable: true })
|
|
14566
|
+
AssistantPrefill?: string | null;
|
|
14567
|
+
|
|
14505
14568
|
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
14506
14569
|
OldValues___?: KeyValuePairInput[];
|
|
14507
14570
|
}
|
|
@@ -14970,6 +15033,13 @@ export class MJAIPrompt_ {
|
|
|
14970
15033
|
@Field(() => Int, {nullable: true, description: `Effort level for this specific prompt (1-100, where 1=minimal effort, 100=maximum effort). Higher values request more thorough reasoning and analysis. Can be overridden by agent DefaultPromptEffortLevel or runtime parameters.`})
|
|
14971
15034
|
EffortLevel?: number;
|
|
14972
15035
|
|
|
15036
|
+
@Field({nullable: true, description: `Optional text to prefill the assistant response. The model will continue generating from where this text ends. Used with StopSequences for structured output extraction (e.g., prefill with \`\`\`json to get raw JSON). Only effective with providers that support prefill natively; see PrefillFallbackMode for non-supporting providers.`})
|
|
15037
|
+
AssistantPrefill?: string;
|
|
15038
|
+
|
|
15039
|
+
@Field({description: `Controls behavior when the selected provider does not support native assistant prefill. Ignore = silently skip prefill, SystemInstruction = inject a system message instructing the model to start its response with the prefill text (uses fallback text from AI Model Vendor or AI Model Type), None = no fallback (prefill only works with supported providers).`})
|
|
15040
|
+
@MaxLength(20)
|
|
15041
|
+
PrefillFallbackMode: string;
|
|
15042
|
+
|
|
14973
15043
|
@Field()
|
|
14974
15044
|
@MaxLength(255)
|
|
14975
15045
|
Template: string;
|
|
@@ -15189,6 +15259,12 @@ export class CreateMJAIPromptInput {
|
|
|
15189
15259
|
|
|
15190
15260
|
@Field(() => Int, { nullable: true })
|
|
15191
15261
|
EffortLevel: number | null;
|
|
15262
|
+
|
|
15263
|
+
@Field({ nullable: true })
|
|
15264
|
+
AssistantPrefill: string | null;
|
|
15265
|
+
|
|
15266
|
+
@Field({ nullable: true })
|
|
15267
|
+
PrefillFallbackMode?: string;
|
|
15192
15268
|
}
|
|
15193
15269
|
|
|
15194
15270
|
|
|
@@ -15344,6 +15420,12 @@ export class UpdateMJAIPromptInput {
|
|
|
15344
15420
|
@Field(() => Int, { nullable: true })
|
|
15345
15421
|
EffortLevel?: number | null;
|
|
15346
15422
|
|
|
15423
|
+
@Field({ nullable: true })
|
|
15424
|
+
AssistantPrefill?: string | null;
|
|
15425
|
+
|
|
15426
|
+
@Field({ nullable: true })
|
|
15427
|
+
PrefillFallbackMode?: string;
|
|
15428
|
+
|
|
15347
15429
|
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
15348
15430
|
OldValues___?: KeyValuePairInput[];
|
|
15349
15431
|
}
|
|
@@ -23861,6 +23943,10 @@ export class MJCompanyIntegrationRun_ {
|
|
|
23861
23943
|
@Field({nullable: true, description: `Optional configuration data in JSON format for the request that started the integration run for audit purposes.`})
|
|
23862
23944
|
ConfigData?: string;
|
|
23863
23945
|
|
|
23946
|
+
@Field({nullable: true, description: `Links to the scheduled job run that triggered this integration sync. NULL for manually-triggered syncs.`})
|
|
23947
|
+
@MaxLength(36)
|
|
23948
|
+
ScheduledJobRunID?: string;
|
|
23949
|
+
|
|
23864
23950
|
@Field()
|
|
23865
23951
|
@MaxLength(100)
|
|
23866
23952
|
Integration: string;
|
|
@@ -23918,6 +24004,9 @@ export class CreateMJCompanyIntegrationRunInput {
|
|
|
23918
24004
|
|
|
23919
24005
|
@Field({ nullable: true })
|
|
23920
24006
|
ConfigData: string | null;
|
|
24007
|
+
|
|
24008
|
+
@Field({ nullable: true })
|
|
24009
|
+
ScheduledJobRunID: string | null;
|
|
23921
24010
|
}
|
|
23922
24011
|
|
|
23923
24012
|
|
|
@@ -23956,6 +24045,9 @@ export class UpdateMJCompanyIntegrationRunInput {
|
|
|
23956
24045
|
@Field({ nullable: true })
|
|
23957
24046
|
ConfigData?: string | null;
|
|
23958
24047
|
|
|
24048
|
+
@Field({ nullable: true })
|
|
24049
|
+
ScheduledJobRunID?: string | null;
|
|
24050
|
+
|
|
23959
24051
|
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
23960
24052
|
OldValues___?: KeyValuePairInput[];
|
|
23961
24053
|
}
|
|
@@ -24370,6 +24462,10 @@ export class MJCompanyIntegration_ {
|
|
|
24370
24462
|
@Field({nullable: true, description: `When the lock should be considered stale and eligible for cleanup`})
|
|
24371
24463
|
LockExpiresAt?: Date;
|
|
24372
24464
|
|
|
24465
|
+
@Field({nullable: true, description: `Associates this company integration with a scheduled job for automatic sync execution. NULL if no schedule is configured.`})
|
|
24466
|
+
@MaxLength(36)
|
|
24467
|
+
ScheduledJobID?: string;
|
|
24468
|
+
|
|
24373
24469
|
@Field()
|
|
24374
24470
|
@MaxLength(50)
|
|
24375
24471
|
Company: string;
|
|
@@ -24498,6 +24594,9 @@ export class CreateMJCompanyIntegrationInput {
|
|
|
24498
24594
|
|
|
24499
24595
|
@Field({ nullable: true })
|
|
24500
24596
|
LockExpiresAt: Date | null;
|
|
24597
|
+
|
|
24598
|
+
@Field({ nullable: true })
|
|
24599
|
+
ScheduledJobID: string | null;
|
|
24501
24600
|
}
|
|
24502
24601
|
|
|
24503
24602
|
|
|
@@ -24587,6 +24686,9 @@ export class UpdateMJCompanyIntegrationInput {
|
|
|
24587
24686
|
@Field({ nullable: true })
|
|
24588
24687
|
LockExpiresAt?: Date | null;
|
|
24589
24688
|
|
|
24689
|
+
@Field({ nullable: true })
|
|
24690
|
+
ScheduledJobID?: string | null;
|
|
24691
|
+
|
|
24590
24692
|
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
24591
24693
|
OldValues___?: KeyValuePairInput[];
|
|
24592
24694
|
}
|
|
@@ -35656,6 +35758,12 @@ export class MJEntity_ {
|
|
|
35656
35758
|
@Field(() => [MJEntityRelationship_])
|
|
35657
35759
|
MJEntityRelationships_RelatedEntityIDArray: MJEntityRelationship_[]; // Link to MJEntityRelationships
|
|
35658
35760
|
|
|
35761
|
+
@Field(() => [MJEntityOrganicKeyRelatedEntity_])
|
|
35762
|
+
MJEntityOrganicKeyRelatedEntities_RelatedEntityIDArray: MJEntityOrganicKeyRelatedEntity_[]; // Link to MJEntityOrganicKeyRelatedEntities
|
|
35763
|
+
|
|
35764
|
+
@Field(() => [MJEntityOrganicKey_])
|
|
35765
|
+
MJEntityOrganicKeys_EntityIDArray: MJEntityOrganicKey_[]; // Link to MJEntityOrganicKeys
|
|
35766
|
+
|
|
35659
35767
|
@Field(() => [MJGeneratedCode_])
|
|
35660
35768
|
MJGeneratedCodes_LinkedEntityIDArray: MJGeneratedCode_[]; // Link to MJGeneratedCodes
|
|
35661
35769
|
|
|
@@ -36526,6 +36634,26 @@ export class MJEntityResolverBase extends ResolverBase {
|
|
|
36526
36634
|
return result;
|
|
36527
36635
|
}
|
|
36528
36636
|
|
|
36637
|
+
@FieldResolver(() => [MJEntityOrganicKeyRelatedEntity_])
|
|
36638
|
+
async MJEntityOrganicKeyRelatedEntities_RelatedEntityIDArray(@Root() mjentity_: MJEntity_, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
36639
|
+
this.CheckUserReadPermissions('MJ: Entity Organic Key Related Entities', userPayload);
|
|
36640
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
36641
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwEntityOrganicKeyRelatedEntities')} WHERE ${provider.QuoteIdentifier('RelatedEntityID')}='${mjentity_.ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Entity Organic Key Related Entities', userPayload, EntityPermissionType.Read, 'AND');
|
|
36642
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
36643
|
+
const result = await this.ArrayMapFieldNamesToCodeNames('MJ: Entity Organic Key Related Entities', rows, this.GetUserFromPayload(userPayload));
|
|
36644
|
+
return result;
|
|
36645
|
+
}
|
|
36646
|
+
|
|
36647
|
+
@FieldResolver(() => [MJEntityOrganicKey_])
|
|
36648
|
+
async MJEntityOrganicKeys_EntityIDArray(@Root() mjentity_: MJEntity_, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
36649
|
+
this.CheckUserReadPermissions('MJ: Entity Organic Keys', userPayload);
|
|
36650
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
36651
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwEntityOrganicKeys')} WHERE ${provider.QuoteIdentifier('EntityID')}='${mjentity_.ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Entity Organic Keys', userPayload, EntityPermissionType.Read, 'AND');
|
|
36652
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
36653
|
+
const result = await this.ArrayMapFieldNamesToCodeNames('MJ: Entity Organic Keys', rows, this.GetUserFromPayload(userPayload));
|
|
36654
|
+
return result;
|
|
36655
|
+
}
|
|
36656
|
+
|
|
36529
36657
|
@FieldResolver(() => [MJGeneratedCode_])
|
|
36530
36658
|
async MJGeneratedCodes_LinkedEntityIDArray(@Root() mjentity_: MJEntity_, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
36531
36659
|
this.CheckUserReadPermissions('MJ: Generated Codes', userPayload);
|
|
@@ -39692,6 +39820,485 @@ export class MJEntityFieldResolver extends ResolverBase {
|
|
|
39692
39820
|
|
|
39693
39821
|
}
|
|
39694
39822
|
|
|
39823
|
+
//****************************************************************************
|
|
39824
|
+
// ENTITY CLASS for MJ: Entity Organic Key Related Entities
|
|
39825
|
+
//****************************************************************************
|
|
39826
|
+
@ObjectType({ description: `Maps a related entity to an organic key, defining how records are matched — either by direct field comparison or transitively via a SQL view/table that bridges multiple hops.` })
|
|
39827
|
+
export class MJEntityOrganicKeyRelatedEntity_ {
|
|
39828
|
+
@Field()
|
|
39829
|
+
@MaxLength(36)
|
|
39830
|
+
ID: string;
|
|
39831
|
+
|
|
39832
|
+
@Field()
|
|
39833
|
+
@MaxLength(36)
|
|
39834
|
+
EntityOrganicKeyID: string;
|
|
39835
|
+
|
|
39836
|
+
@Field()
|
|
39837
|
+
@MaxLength(36)
|
|
39838
|
+
RelatedEntityID: string;
|
|
39839
|
+
|
|
39840
|
+
@Field({nullable: true, description: `Comma-delimited field names in the related entity, positionally matching MatchFieldNames on the parent key. NULL when using transitive matching.`})
|
|
39841
|
+
@MaxLength(500)
|
|
39842
|
+
RelatedEntityFieldNames?: string;
|
|
39843
|
+
|
|
39844
|
+
@Field({nullable: true, description: `Schema-qualified name of a SQL view or table that bridges the organic key to the related entity (e.g., "dbo.vwContactRecipientBridge"). This object encapsulates any number of join hops. NULL for direct matches.`})
|
|
39845
|
+
@MaxLength(500)
|
|
39846
|
+
TransitiveObjectName?: string;
|
|
39847
|
+
|
|
39848
|
+
@Field({nullable: true, description: `Comma-delimited field names in the transitive object that match the organic key values, positionally aligned with MatchFieldNames. NULL for direct matches.`})
|
|
39849
|
+
@MaxLength(500)
|
|
39850
|
+
TransitiveObjectMatchFieldNames?: string;
|
|
39851
|
+
|
|
39852
|
+
@Field({nullable: true, description: `The field in the transitive object that produces the value to join against the related entity. NULL for direct matches.`})
|
|
39853
|
+
@MaxLength(255)
|
|
39854
|
+
TransitiveObjectOutputFieldName?: string;
|
|
39855
|
+
|
|
39856
|
+
@Field({nullable: true, description: `The field in the related entity that matches TransitiveObjectOutputFieldName. NULL for direct matches.`})
|
|
39857
|
+
@MaxLength(255)
|
|
39858
|
+
RelatedEntityJoinFieldName?: string;
|
|
39859
|
+
|
|
39860
|
+
@Field({nullable: true, description: `Tab/section label override. If NULL, defaults to the related entity's display name.`})
|
|
39861
|
+
@MaxLength(255)
|
|
39862
|
+
DisplayName?: string;
|
|
39863
|
+
|
|
39864
|
+
@Field({description: `Where to render the organic key tab relative to FK relationship tabs. After Field Tabs or Before Field Tabs.`})
|
|
39865
|
+
@MaxLength(50)
|
|
39866
|
+
DisplayLocation: string;
|
|
39867
|
+
|
|
39868
|
+
@Field({nullable: true, description: `FK to component registry for a custom display component. NULL uses the default EntityDataGrid.`})
|
|
39869
|
+
@MaxLength(36)
|
|
39870
|
+
DisplayComponentID?: string;
|
|
39871
|
+
|
|
39872
|
+
@Field({nullable: true, description: `JSON configuration passed to the display component.`})
|
|
39873
|
+
DisplayComponentConfiguration?: string;
|
|
39874
|
+
|
|
39875
|
+
@Field(() => Int, {description: `Tab ordering within this organic key's related entities. Lower values appear first.`})
|
|
39876
|
+
Sequence: number;
|
|
39877
|
+
|
|
39878
|
+
@Field()
|
|
39879
|
+
_mj__CreatedAt: Date;
|
|
39880
|
+
|
|
39881
|
+
@Field()
|
|
39882
|
+
_mj__UpdatedAt: Date;
|
|
39883
|
+
|
|
39884
|
+
@Field()
|
|
39885
|
+
@MaxLength(255)
|
|
39886
|
+
EntityOrganicKey: string;
|
|
39887
|
+
|
|
39888
|
+
@Field()
|
|
39889
|
+
@MaxLength(255)
|
|
39890
|
+
RelatedEntity: string;
|
|
39891
|
+
|
|
39892
|
+
}
|
|
39893
|
+
|
|
39894
|
+
//****************************************************************************
|
|
39895
|
+
// INPUT TYPE for MJ: Entity Organic Key Related Entities
|
|
39896
|
+
//****************************************************************************
|
|
39897
|
+
@InputType()
|
|
39898
|
+
export class CreateMJEntityOrganicKeyRelatedEntityInput {
|
|
39899
|
+
@Field({ nullable: true })
|
|
39900
|
+
ID?: string;
|
|
39901
|
+
|
|
39902
|
+
@Field({ nullable: true })
|
|
39903
|
+
EntityOrganicKeyID?: string;
|
|
39904
|
+
|
|
39905
|
+
@Field({ nullable: true })
|
|
39906
|
+
RelatedEntityID?: string;
|
|
39907
|
+
|
|
39908
|
+
@Field({ nullable: true })
|
|
39909
|
+
RelatedEntityFieldNames: string | null;
|
|
39910
|
+
|
|
39911
|
+
@Field({ nullable: true })
|
|
39912
|
+
TransitiveObjectName: string | null;
|
|
39913
|
+
|
|
39914
|
+
@Field({ nullable: true })
|
|
39915
|
+
TransitiveObjectMatchFieldNames: string | null;
|
|
39916
|
+
|
|
39917
|
+
@Field({ nullable: true })
|
|
39918
|
+
TransitiveObjectOutputFieldName: string | null;
|
|
39919
|
+
|
|
39920
|
+
@Field({ nullable: true })
|
|
39921
|
+
RelatedEntityJoinFieldName: string | null;
|
|
39922
|
+
|
|
39923
|
+
@Field({ nullable: true })
|
|
39924
|
+
DisplayName: string | null;
|
|
39925
|
+
|
|
39926
|
+
@Field({ nullable: true })
|
|
39927
|
+
DisplayLocation?: string;
|
|
39928
|
+
|
|
39929
|
+
@Field({ nullable: true })
|
|
39930
|
+
DisplayComponentID: string | null;
|
|
39931
|
+
|
|
39932
|
+
@Field({ nullable: true })
|
|
39933
|
+
DisplayComponentConfiguration: string | null;
|
|
39934
|
+
|
|
39935
|
+
@Field(() => Int, { nullable: true })
|
|
39936
|
+
Sequence?: number;
|
|
39937
|
+
}
|
|
39938
|
+
|
|
39939
|
+
|
|
39940
|
+
//****************************************************************************
|
|
39941
|
+
// INPUT TYPE for MJ: Entity Organic Key Related Entities
|
|
39942
|
+
//****************************************************************************
|
|
39943
|
+
@InputType()
|
|
39944
|
+
export class UpdateMJEntityOrganicKeyRelatedEntityInput {
|
|
39945
|
+
@Field()
|
|
39946
|
+
ID: string;
|
|
39947
|
+
|
|
39948
|
+
@Field({ nullable: true })
|
|
39949
|
+
EntityOrganicKeyID?: string;
|
|
39950
|
+
|
|
39951
|
+
@Field({ nullable: true })
|
|
39952
|
+
RelatedEntityID?: string;
|
|
39953
|
+
|
|
39954
|
+
@Field({ nullable: true })
|
|
39955
|
+
RelatedEntityFieldNames?: string | null;
|
|
39956
|
+
|
|
39957
|
+
@Field({ nullable: true })
|
|
39958
|
+
TransitiveObjectName?: string | null;
|
|
39959
|
+
|
|
39960
|
+
@Field({ nullable: true })
|
|
39961
|
+
TransitiveObjectMatchFieldNames?: string | null;
|
|
39962
|
+
|
|
39963
|
+
@Field({ nullable: true })
|
|
39964
|
+
TransitiveObjectOutputFieldName?: string | null;
|
|
39965
|
+
|
|
39966
|
+
@Field({ nullable: true })
|
|
39967
|
+
RelatedEntityJoinFieldName?: string | null;
|
|
39968
|
+
|
|
39969
|
+
@Field({ nullable: true })
|
|
39970
|
+
DisplayName?: string | null;
|
|
39971
|
+
|
|
39972
|
+
@Field({ nullable: true })
|
|
39973
|
+
DisplayLocation?: string;
|
|
39974
|
+
|
|
39975
|
+
@Field({ nullable: true })
|
|
39976
|
+
DisplayComponentID?: string | null;
|
|
39977
|
+
|
|
39978
|
+
@Field({ nullable: true })
|
|
39979
|
+
DisplayComponentConfiguration?: string | null;
|
|
39980
|
+
|
|
39981
|
+
@Field(() => Int, { nullable: true })
|
|
39982
|
+
Sequence?: number;
|
|
39983
|
+
|
|
39984
|
+
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
39985
|
+
OldValues___?: KeyValuePairInput[];
|
|
39986
|
+
}
|
|
39987
|
+
|
|
39988
|
+
//****************************************************************************
|
|
39989
|
+
// RESOLVER for MJ: Entity Organic Key Related Entities
|
|
39990
|
+
//****************************************************************************
|
|
39991
|
+
@ObjectType()
|
|
39992
|
+
export class RunMJEntityOrganicKeyRelatedEntityViewResult {
|
|
39993
|
+
@Field(() => [MJEntityOrganicKeyRelatedEntity_])
|
|
39994
|
+
Results: MJEntityOrganicKeyRelatedEntity_[];
|
|
39995
|
+
|
|
39996
|
+
@Field(() => String, {nullable: true})
|
|
39997
|
+
UserViewRunID?: string;
|
|
39998
|
+
|
|
39999
|
+
@Field(() => Int, {nullable: true})
|
|
40000
|
+
RowCount: number;
|
|
40001
|
+
|
|
40002
|
+
@Field(() => Int, {nullable: true})
|
|
40003
|
+
TotalRowCount: number;
|
|
40004
|
+
|
|
40005
|
+
@Field(() => Int, {nullable: true})
|
|
40006
|
+
ExecutionTime: number;
|
|
40007
|
+
|
|
40008
|
+
@Field({nullable: true})
|
|
40009
|
+
ErrorMessage?: string;
|
|
40010
|
+
|
|
40011
|
+
@Field(() => Boolean, {nullable: false})
|
|
40012
|
+
Success: boolean;
|
|
40013
|
+
}
|
|
40014
|
+
|
|
40015
|
+
@Resolver(MJEntityOrganicKeyRelatedEntity_)
|
|
40016
|
+
export class MJEntityOrganicKeyRelatedEntityResolver extends ResolverBase {
|
|
40017
|
+
@Query(() => RunMJEntityOrganicKeyRelatedEntityViewResult)
|
|
40018
|
+
async RunMJEntityOrganicKeyRelatedEntityViewByID(@Arg('input', () => RunViewByIDInput) input: RunViewByIDInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40019
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40020
|
+
return super.RunViewByIDGeneric(input, provider, userPayload, pubSub);
|
|
40021
|
+
}
|
|
40022
|
+
|
|
40023
|
+
@Query(() => RunMJEntityOrganicKeyRelatedEntityViewResult)
|
|
40024
|
+
async RunMJEntityOrganicKeyRelatedEntityViewByName(@Arg('input', () => RunViewByNameInput) input: RunViewByNameInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40025
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40026
|
+
return super.RunViewByNameGeneric(input, provider, userPayload, pubSub);
|
|
40027
|
+
}
|
|
40028
|
+
|
|
40029
|
+
@Query(() => RunMJEntityOrganicKeyRelatedEntityViewResult)
|
|
40030
|
+
async RunMJEntityOrganicKeyRelatedEntityDynamicView(@Arg('input', () => RunDynamicViewInput) input: RunDynamicViewInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40031
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40032
|
+
input.EntityName = 'MJ: Entity Organic Key Related Entities';
|
|
40033
|
+
return super.RunDynamicViewGeneric(input, provider, userPayload, pubSub);
|
|
40034
|
+
}
|
|
40035
|
+
@Query(() => MJEntityOrganicKeyRelatedEntity_, { nullable: true })
|
|
40036
|
+
async MJEntityOrganicKeyRelatedEntity(@Arg('ID', () => String) ID: string, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine): Promise<MJEntityOrganicKeyRelatedEntity_ | null> {
|
|
40037
|
+
this.CheckUserReadPermissions('MJ: Entity Organic Key Related Entities', userPayload);
|
|
40038
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40039
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwEntityOrganicKeyRelatedEntities')} WHERE ${provider.QuoteIdentifier('ID')}='${ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Entity Organic Key Related Entities', userPayload, EntityPermissionType.Read, 'AND');
|
|
40040
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
40041
|
+
const result = await this.MapFieldNamesToCodeNames('MJ: Entity Organic Key Related Entities', rows && rows.length > 0 ? rows[0] : null, this.GetUserFromPayload(userPayload));
|
|
40042
|
+
return result;
|
|
40043
|
+
}
|
|
40044
|
+
|
|
40045
|
+
@Mutation(() => MJEntityOrganicKeyRelatedEntity_)
|
|
40046
|
+
async CreateMJEntityOrganicKeyRelatedEntity(
|
|
40047
|
+
@Arg('input', () => CreateMJEntityOrganicKeyRelatedEntityInput) input: CreateMJEntityOrganicKeyRelatedEntityInput,
|
|
40048
|
+
@Ctx() { providers, userPayload }: AppContext,
|
|
40049
|
+
@PubSub() pubSub: PubSubEngine
|
|
40050
|
+
) {
|
|
40051
|
+
const provider = GetReadWriteProvider(providers);
|
|
40052
|
+
return this.CreateRecord('MJ: Entity Organic Key Related Entities', input, provider, userPayload, pubSub)
|
|
40053
|
+
}
|
|
40054
|
+
|
|
40055
|
+
@Mutation(() => MJEntityOrganicKeyRelatedEntity_)
|
|
40056
|
+
async UpdateMJEntityOrganicKeyRelatedEntity(
|
|
40057
|
+
@Arg('input', () => UpdateMJEntityOrganicKeyRelatedEntityInput) input: UpdateMJEntityOrganicKeyRelatedEntityInput,
|
|
40058
|
+
@Ctx() { providers, userPayload }: AppContext,
|
|
40059
|
+
@PubSub() pubSub: PubSubEngine
|
|
40060
|
+
) {
|
|
40061
|
+
const provider = GetReadWriteProvider(providers);
|
|
40062
|
+
return this.UpdateRecord('MJ: Entity Organic Key Related Entities', input, provider, userPayload, pubSub);
|
|
40063
|
+
}
|
|
40064
|
+
|
|
40065
|
+
@Mutation(() => MJEntityOrganicKeyRelatedEntity_)
|
|
40066
|
+
async DeleteMJEntityOrganicKeyRelatedEntity(@Arg('ID', () => String) ID: string, @Arg('options___', () => DeleteOptionsInput) options: DeleteOptionsInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40067
|
+
const provider = GetReadWriteProvider(providers);
|
|
40068
|
+
const key = new CompositeKey([{FieldName: 'ID', Value: ID}]);
|
|
40069
|
+
return this.DeleteRecord('MJ: Entity Organic Key Related Entities', key, options, provider, userPayload, pubSub);
|
|
40070
|
+
}
|
|
40071
|
+
|
|
40072
|
+
}
|
|
40073
|
+
|
|
40074
|
+
//****************************************************************************
|
|
40075
|
+
// ENTITY CLASS for MJ: Entity Organic Keys
|
|
40076
|
+
//****************************************************************************
|
|
40077
|
+
@ObjectType({ description: `Defines organic keys on entities — sets of fields that constitute natural identifiers for cross-system matching (e.g., email, phone, SSN). Enables related record views across integration boundaries without foreign keys.` })
|
|
40078
|
+
export class MJEntityOrganicKey_ {
|
|
40079
|
+
@Field()
|
|
40080
|
+
@MaxLength(36)
|
|
40081
|
+
ID: string;
|
|
40082
|
+
|
|
40083
|
+
@Field()
|
|
40084
|
+
@MaxLength(36)
|
|
40085
|
+
EntityID: string;
|
|
40086
|
+
|
|
40087
|
+
@Field({description: `Human-readable label for this organic key (e.g., "Email Match", "SSN Match"). Must be unique per entity.`})
|
|
40088
|
+
@MaxLength(255)
|
|
40089
|
+
Name: string;
|
|
40090
|
+
|
|
40091
|
+
@Field({nullable: true, description: `Optional explanation of the key's purpose and matching semantics.`})
|
|
40092
|
+
Description?: string;
|
|
40093
|
+
|
|
40094
|
+
@Field({description: `Comma-delimited field names in the owning entity that constitute the key. Single value for simple keys (e.g., "EmailAddress"), multiple for compound keys (e.g., "FirstName,LastName,DateOfBirth"). Field names must match EntityField.Name values.`})
|
|
40095
|
+
@MaxLength(500)
|
|
40096
|
+
MatchFieldNames: string;
|
|
40097
|
+
|
|
40098
|
+
@Field({description: `How field values are normalized before comparison. LowerCaseTrim = LOWER(TRIM(x)), Trim = TRIM(x), ExactMatch = no transformation, Custom = uses CustomNormalizationExpression.`})
|
|
40099
|
+
@MaxLength(50)
|
|
40100
|
+
NormalizationStrategy: string;
|
|
40101
|
+
|
|
40102
|
+
@Field({nullable: true, description: `SQL expression template when NormalizationStrategy is Custom. Uses {{FieldName}} as placeholder. Example: "REPLACE(REPLACE({{FieldName}}, '-', ''), ' ', '')" for phone number normalization.`})
|
|
40103
|
+
CustomNormalizationExpression?: string;
|
|
40104
|
+
|
|
40105
|
+
@Field(() => Boolean, {description: `When true, a future discovery process will automatically scan entities and create EntityOrganicKeyRelatedEntity rows for entities with matching field patterns.`})
|
|
40106
|
+
AutoCreateRelatedViewOnForm: boolean;
|
|
40107
|
+
|
|
40108
|
+
@Field(() => Int, {description: `Ordering when an entity has multiple organic keys. Lower values = higher priority.`})
|
|
40109
|
+
Sequence: number;
|
|
40110
|
+
|
|
40111
|
+
@Field({description: `Active or Disabled. Disabled keys are ignored at runtime.`})
|
|
40112
|
+
@MaxLength(20)
|
|
40113
|
+
Status: string;
|
|
40114
|
+
|
|
40115
|
+
@Field()
|
|
40116
|
+
_mj__CreatedAt: Date;
|
|
40117
|
+
|
|
40118
|
+
@Field()
|
|
40119
|
+
_mj__UpdatedAt: Date;
|
|
40120
|
+
|
|
40121
|
+
@Field()
|
|
40122
|
+
@MaxLength(255)
|
|
40123
|
+
Entity: string;
|
|
40124
|
+
|
|
40125
|
+
@Field(() => [MJEntityOrganicKeyRelatedEntity_])
|
|
40126
|
+
MJEntityOrganicKeyRelatedEntities_EntityOrganicKeyIDArray: MJEntityOrganicKeyRelatedEntity_[]; // Link to MJEntityOrganicKeyRelatedEntities
|
|
40127
|
+
|
|
40128
|
+
}
|
|
40129
|
+
|
|
40130
|
+
//****************************************************************************
|
|
40131
|
+
// INPUT TYPE for MJ: Entity Organic Keys
|
|
40132
|
+
//****************************************************************************
|
|
40133
|
+
@InputType()
|
|
40134
|
+
export class CreateMJEntityOrganicKeyInput {
|
|
40135
|
+
@Field({ nullable: true })
|
|
40136
|
+
ID?: string;
|
|
40137
|
+
|
|
40138
|
+
@Field({ nullable: true })
|
|
40139
|
+
EntityID?: string;
|
|
40140
|
+
|
|
40141
|
+
@Field({ nullable: true })
|
|
40142
|
+
Name?: string;
|
|
40143
|
+
|
|
40144
|
+
@Field({ nullable: true })
|
|
40145
|
+
Description: string | null;
|
|
40146
|
+
|
|
40147
|
+
@Field({ nullable: true })
|
|
40148
|
+
MatchFieldNames?: string;
|
|
40149
|
+
|
|
40150
|
+
@Field({ nullable: true })
|
|
40151
|
+
NormalizationStrategy?: string;
|
|
40152
|
+
|
|
40153
|
+
@Field({ nullable: true })
|
|
40154
|
+
CustomNormalizationExpression: string | null;
|
|
40155
|
+
|
|
40156
|
+
@Field(() => Boolean, { nullable: true })
|
|
40157
|
+
AutoCreateRelatedViewOnForm?: boolean;
|
|
40158
|
+
|
|
40159
|
+
@Field(() => Int, { nullable: true })
|
|
40160
|
+
Sequence?: number;
|
|
40161
|
+
|
|
40162
|
+
@Field({ nullable: true })
|
|
40163
|
+
Status?: string;
|
|
40164
|
+
}
|
|
40165
|
+
|
|
40166
|
+
|
|
40167
|
+
//****************************************************************************
|
|
40168
|
+
// INPUT TYPE for MJ: Entity Organic Keys
|
|
40169
|
+
//****************************************************************************
|
|
40170
|
+
@InputType()
|
|
40171
|
+
export class UpdateMJEntityOrganicKeyInput {
|
|
40172
|
+
@Field()
|
|
40173
|
+
ID: string;
|
|
40174
|
+
|
|
40175
|
+
@Field({ nullable: true })
|
|
40176
|
+
EntityID?: string;
|
|
40177
|
+
|
|
40178
|
+
@Field({ nullable: true })
|
|
40179
|
+
Name?: string;
|
|
40180
|
+
|
|
40181
|
+
@Field({ nullable: true })
|
|
40182
|
+
Description?: string | null;
|
|
40183
|
+
|
|
40184
|
+
@Field({ nullable: true })
|
|
40185
|
+
MatchFieldNames?: string;
|
|
40186
|
+
|
|
40187
|
+
@Field({ nullable: true })
|
|
40188
|
+
NormalizationStrategy?: string;
|
|
40189
|
+
|
|
40190
|
+
@Field({ nullable: true })
|
|
40191
|
+
CustomNormalizationExpression?: string | null;
|
|
40192
|
+
|
|
40193
|
+
@Field(() => Boolean, { nullable: true })
|
|
40194
|
+
AutoCreateRelatedViewOnForm?: boolean;
|
|
40195
|
+
|
|
40196
|
+
@Field(() => Int, { nullable: true })
|
|
40197
|
+
Sequence?: number;
|
|
40198
|
+
|
|
40199
|
+
@Field({ nullable: true })
|
|
40200
|
+
Status?: string;
|
|
40201
|
+
|
|
40202
|
+
@Field(() => [KeyValuePairInput], { nullable: true })
|
|
40203
|
+
OldValues___?: KeyValuePairInput[];
|
|
40204
|
+
}
|
|
40205
|
+
|
|
40206
|
+
//****************************************************************************
|
|
40207
|
+
// RESOLVER for MJ: Entity Organic Keys
|
|
40208
|
+
//****************************************************************************
|
|
40209
|
+
@ObjectType()
|
|
40210
|
+
export class RunMJEntityOrganicKeyViewResult {
|
|
40211
|
+
@Field(() => [MJEntityOrganicKey_])
|
|
40212
|
+
Results: MJEntityOrganicKey_[];
|
|
40213
|
+
|
|
40214
|
+
@Field(() => String, {nullable: true})
|
|
40215
|
+
UserViewRunID?: string;
|
|
40216
|
+
|
|
40217
|
+
@Field(() => Int, {nullable: true})
|
|
40218
|
+
RowCount: number;
|
|
40219
|
+
|
|
40220
|
+
@Field(() => Int, {nullable: true})
|
|
40221
|
+
TotalRowCount: number;
|
|
40222
|
+
|
|
40223
|
+
@Field(() => Int, {nullable: true})
|
|
40224
|
+
ExecutionTime: number;
|
|
40225
|
+
|
|
40226
|
+
@Field({nullable: true})
|
|
40227
|
+
ErrorMessage?: string;
|
|
40228
|
+
|
|
40229
|
+
@Field(() => Boolean, {nullable: false})
|
|
40230
|
+
Success: boolean;
|
|
40231
|
+
}
|
|
40232
|
+
|
|
40233
|
+
@Resolver(MJEntityOrganicKey_)
|
|
40234
|
+
export class MJEntityOrganicKeyResolver extends ResolverBase {
|
|
40235
|
+
@Query(() => RunMJEntityOrganicKeyViewResult)
|
|
40236
|
+
async RunMJEntityOrganicKeyViewByID(@Arg('input', () => RunViewByIDInput) input: RunViewByIDInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40237
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40238
|
+
return super.RunViewByIDGeneric(input, provider, userPayload, pubSub);
|
|
40239
|
+
}
|
|
40240
|
+
|
|
40241
|
+
@Query(() => RunMJEntityOrganicKeyViewResult)
|
|
40242
|
+
async RunMJEntityOrganicKeyViewByName(@Arg('input', () => RunViewByNameInput) input: RunViewByNameInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40243
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40244
|
+
return super.RunViewByNameGeneric(input, provider, userPayload, pubSub);
|
|
40245
|
+
}
|
|
40246
|
+
|
|
40247
|
+
@Query(() => RunMJEntityOrganicKeyViewResult)
|
|
40248
|
+
async RunMJEntityOrganicKeyDynamicView(@Arg('input', () => RunDynamicViewInput) input: RunDynamicViewInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40249
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40250
|
+
input.EntityName = 'MJ: Entity Organic Keys';
|
|
40251
|
+
return super.RunDynamicViewGeneric(input, provider, userPayload, pubSub);
|
|
40252
|
+
}
|
|
40253
|
+
@Query(() => MJEntityOrganicKey_, { nullable: true })
|
|
40254
|
+
async MJEntityOrganicKey(@Arg('ID', () => String) ID: string, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine): Promise<MJEntityOrganicKey_ | null> {
|
|
40255
|
+
this.CheckUserReadPermissions('MJ: Entity Organic Keys', userPayload);
|
|
40256
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40257
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwEntityOrganicKeys')} WHERE ${provider.QuoteIdentifier('ID')}='${ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Entity Organic Keys', userPayload, EntityPermissionType.Read, 'AND');
|
|
40258
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
40259
|
+
const result = await this.MapFieldNamesToCodeNames('MJ: Entity Organic Keys', rows && rows.length > 0 ? rows[0] : null, this.GetUserFromPayload(userPayload));
|
|
40260
|
+
return result;
|
|
40261
|
+
}
|
|
40262
|
+
|
|
40263
|
+
@FieldResolver(() => [MJEntityOrganicKeyRelatedEntity_])
|
|
40264
|
+
async MJEntityOrganicKeyRelatedEntities_EntityOrganicKeyIDArray(@Root() mjentityorganickey_: MJEntityOrganicKey_, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40265
|
+
this.CheckUserReadPermissions('MJ: Entity Organic Key Related Entities', userPayload);
|
|
40266
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
40267
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwEntityOrganicKeyRelatedEntities')} WHERE ${provider.QuoteIdentifier('EntityOrganicKeyID')}='${mjentityorganickey_.ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Entity Organic Key Related Entities', userPayload, EntityPermissionType.Read, 'AND');
|
|
40268
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
40269
|
+
const result = await this.ArrayMapFieldNamesToCodeNames('MJ: Entity Organic Key Related Entities', rows, this.GetUserFromPayload(userPayload));
|
|
40270
|
+
return result;
|
|
40271
|
+
}
|
|
40272
|
+
|
|
40273
|
+
@Mutation(() => MJEntityOrganicKey_)
|
|
40274
|
+
async CreateMJEntityOrganicKey(
|
|
40275
|
+
@Arg('input', () => CreateMJEntityOrganicKeyInput) input: CreateMJEntityOrganicKeyInput,
|
|
40276
|
+
@Ctx() { providers, userPayload }: AppContext,
|
|
40277
|
+
@PubSub() pubSub: PubSubEngine
|
|
40278
|
+
) {
|
|
40279
|
+
const provider = GetReadWriteProvider(providers);
|
|
40280
|
+
return this.CreateRecord('MJ: Entity Organic Keys', input, provider, userPayload, pubSub)
|
|
40281
|
+
}
|
|
40282
|
+
|
|
40283
|
+
@Mutation(() => MJEntityOrganicKey_)
|
|
40284
|
+
async UpdateMJEntityOrganicKey(
|
|
40285
|
+
@Arg('input', () => UpdateMJEntityOrganicKeyInput) input: UpdateMJEntityOrganicKeyInput,
|
|
40286
|
+
@Ctx() { providers, userPayload }: AppContext,
|
|
40287
|
+
@PubSub() pubSub: PubSubEngine
|
|
40288
|
+
) {
|
|
40289
|
+
const provider = GetReadWriteProvider(providers);
|
|
40290
|
+
return this.UpdateRecord('MJ: Entity Organic Keys', input, provider, userPayload, pubSub);
|
|
40291
|
+
}
|
|
40292
|
+
|
|
40293
|
+
@Mutation(() => MJEntityOrganicKey_)
|
|
40294
|
+
async DeleteMJEntityOrganicKey(@Arg('ID', () => String) ID: string, @Arg('options___', () => DeleteOptionsInput) options: DeleteOptionsInput, @Ctx() { providers, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
40295
|
+
const provider = GetReadWriteProvider(providers);
|
|
40296
|
+
const key = new CompositeKey([{FieldName: 'ID', Value: ID}]);
|
|
40297
|
+
return this.DeleteRecord('MJ: Entity Organic Keys', key, options, provider, userPayload, pubSub);
|
|
40298
|
+
}
|
|
40299
|
+
|
|
40300
|
+
}
|
|
40301
|
+
|
|
39695
40302
|
//****************************************************************************
|
|
39696
40303
|
// ENTITY CLASS for MJ: Entity Permissions
|
|
39697
40304
|
//****************************************************************************
|
|
@@ -57162,6 +57769,9 @@ export class MJScheduledJobRun_ {
|
|
|
57162
57769
|
@Field(() => [MJAIAgentRun_])
|
|
57163
57770
|
MJAIAgentRuns_ScheduledJobRunIDArray: MJAIAgentRun_[]; // Link to MJAIAgentRuns
|
|
57164
57771
|
|
|
57772
|
+
@Field(() => [MJCompanyIntegrationRun_])
|
|
57773
|
+
MJCompanyIntegrationRuns_ScheduledJobRunIDArray: MJCompanyIntegrationRun_[]; // Link to MJCompanyIntegrationRuns
|
|
57774
|
+
|
|
57165
57775
|
}
|
|
57166
57776
|
|
|
57167
57777
|
//****************************************************************************
|
|
@@ -57307,6 +57917,16 @@ export class MJScheduledJobRunResolver extends ResolverBase {
|
|
|
57307
57917
|
return result;
|
|
57308
57918
|
}
|
|
57309
57919
|
|
|
57920
|
+
@FieldResolver(() => [MJCompanyIntegrationRun_])
|
|
57921
|
+
async MJCompanyIntegrationRuns_ScheduledJobRunIDArray(@Root() mjscheduledjobrun_: MJScheduledJobRun_, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
57922
|
+
this.CheckUserReadPermissions('MJ: Company Integration Runs', userPayload);
|
|
57923
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
57924
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwCompanyIntegrationRuns')} WHERE ${provider.QuoteIdentifier('ScheduledJobRunID')}='${mjscheduledjobrun_.ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Company Integration Runs', userPayload, EntityPermissionType.Read, 'AND');
|
|
57925
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
57926
|
+
const result = await this.ArrayMapFieldNamesToCodeNames('MJ: Company Integration Runs', rows, this.GetUserFromPayload(userPayload));
|
|
57927
|
+
return result;
|
|
57928
|
+
}
|
|
57929
|
+
|
|
57310
57930
|
@Mutation(() => MJScheduledJobRun_)
|
|
57311
57931
|
async CreateMJScheduledJobRun(
|
|
57312
57932
|
@Arg('input', () => CreateMJScheduledJobRunInput) input: CreateMJScheduledJobRunInput,
|
|
@@ -57647,6 +58267,9 @@ export class MJScheduledJob_ {
|
|
|
57647
58267
|
@Field(() => [MJScheduledJobRun_])
|
|
57648
58268
|
MJScheduledJobRuns_ScheduledJobIDArray: MJScheduledJobRun_[]; // Link to MJScheduledJobRuns
|
|
57649
58269
|
|
|
58270
|
+
@Field(() => [MJCompanyIntegration_])
|
|
58271
|
+
MJCompanyIntegrations_ScheduledJobIDArray: MJCompanyIntegration_[]; // Link to MJCompanyIntegrations
|
|
58272
|
+
|
|
57650
58273
|
}
|
|
57651
58274
|
|
|
57652
58275
|
//****************************************************************************
|
|
@@ -57888,6 +58511,16 @@ export class MJScheduledJobResolver extends ResolverBase {
|
|
|
57888
58511
|
return result;
|
|
57889
58512
|
}
|
|
57890
58513
|
|
|
58514
|
+
@FieldResolver(() => [MJCompanyIntegration_])
|
|
58515
|
+
async MJCompanyIntegrations_ScheduledJobIDArray(@Root() mjscheduledjob_: MJScheduledJob_, @Ctx() { userPayload, providers }: AppContext, @PubSub() pubSub: PubSubEngine) {
|
|
58516
|
+
this.CheckUserReadPermissions('MJ: Company Integrations', userPayload);
|
|
58517
|
+
const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
|
|
58518
|
+
const sSQL = `SELECT * FROM ${provider.QuoteSchemaAndView(Metadata.Provider.ConfigData.MJCoreSchemaName, 'vwCompanyIntegrations')} WHERE ${provider.QuoteIdentifier('ScheduledJobID')}='${mjscheduledjob_.ID}' ` + this.getRowLevelSecurityWhereClause(provider, 'MJ: Company Integrations', userPayload, EntityPermissionType.Read, 'AND');
|
|
58519
|
+
const rows = await provider.ExecuteSQL(sSQL, undefined, undefined, this.GetUserFromPayload(userPayload));
|
|
58520
|
+
const result = await this.ArrayMapFieldNamesToCodeNames('MJ: Company Integrations', rows, this.GetUserFromPayload(userPayload));
|
|
58521
|
+
return result;
|
|
58522
|
+
}
|
|
58523
|
+
|
|
57891
58524
|
@Mutation(() => MJScheduledJob_)
|
|
57892
58525
|
async CreateMJScheduledJob(
|
|
57893
58526
|
@Arg('input', () => CreateMJScheduledJobInput) input: CreateMJScheduledJobInput,
|