@memberjunction/server 2.13.4 → 2.14.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/server",
3
- "version": "2.13.4",
3
+ "version": "2.14.0",
4
4
  "description": "MemberJunction: This project provides API access via GraphQL to the common data store.",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./src/index.ts",
@@ -22,27 +22,27 @@
22
22
  "dependencies": {
23
23
  "@apollo/server": "^4.9.1",
24
24
  "@graphql-tools/utils": "^10.0.1",
25
- "@memberjunction/actions": "2.13.4",
26
- "@memberjunction/ai": "2.13.4",
27
- "@memberjunction/ai-mistral": "2.13.4",
28
- "@memberjunction/ai-openai": "2.13.4",
29
- "@memberjunction/ai-vectors-pinecone": "2.13.4",
30
- "@memberjunction/aiengine": "2.13.4",
31
- "@memberjunction/core": "2.13.4",
32
- "@memberjunction/core-actions": "2.13.4",
33
- "@memberjunction/core-entities": "2.13.4",
34
- "@memberjunction/data-context": "2.13.4",
35
- "@memberjunction/data-context-server": "2.13.4",
36
- "@memberjunction/doc-utils": "2.13.4",
37
- "@memberjunction/entity-communications-server": "2.13.4",
38
- "@memberjunction/external-change-detection": "2.13.4",
39
- "@memberjunction/global": "2.13.4",
40
- "@memberjunction/queue": "2.13.4",
41
- "@memberjunction/skip-types": "2.13.4",
42
- "@memberjunction/sqlserver-dataprovider": "2.13.4",
43
- "@memberjunction/graphql-dataprovider": "2.13.4",
44
- "@memberjunction/storage": "2.13.4",
45
- "@memberjunction/templates": "2.13.4",
25
+ "@memberjunction/actions": "2.14.0",
26
+ "@memberjunction/ai": "2.14.0",
27
+ "@memberjunction/ai-mistral": "2.14.0",
28
+ "@memberjunction/ai-openai": "2.14.0",
29
+ "@memberjunction/ai-vectors-pinecone": "2.14.0",
30
+ "@memberjunction/aiengine": "2.14.0",
31
+ "@memberjunction/core": "2.14.0",
32
+ "@memberjunction/core-actions": "2.14.0",
33
+ "@memberjunction/core-entities": "2.14.0",
34
+ "@memberjunction/data-context": "2.14.0",
35
+ "@memberjunction/data-context-server": "2.14.0",
36
+ "@memberjunction/doc-utils": "2.14.0",
37
+ "@memberjunction/entity-communications-server": "2.14.0",
38
+ "@memberjunction/external-change-detection": "2.14.0",
39
+ "@memberjunction/global": "2.14.0",
40
+ "@memberjunction/queue": "2.14.0",
41
+ "@memberjunction/skip-types": "2.14.0",
42
+ "@memberjunction/sqlserver-dataprovider": "2.14.0",
43
+ "@memberjunction/graphql-dataprovider": "2.14.0",
44
+ "@memberjunction/storage": "2.14.0",
45
+ "@memberjunction/templates": "2.14.0",
46
46
  "@types/cors": "^2.8.13",
47
47
  "@types/jsonwebtoken": "9.0.6",
48
48
  "@types/node": "20.14.2",
@@ -18,7 +18,7 @@ import { mj_core_schema } from '../config.js';
18
18
 
19
19
 
20
20
 
21
- import { ScheduledActionEntity, ScheduledActionParamEntity, ExplorerNavigationItemEntity, flyway_schema_historyEntity, AIPromptEntity, AIResultCacheEntity, AIPromptCategoryEntity, AIPromptTypeEntity, CompanyEntity, EmployeeEntity, UserFavoriteEntity, EmployeeCompanyIntegrationEntity, EmployeeRoleEntity, EmployeeSkillEntity, RoleEntity, SkillEntity, IntegrationURLFormatEntity, IntegrationEntity, CompanyIntegrationEntity, EntityFieldEntity, EntityEntity, UserEntity, EntityRelationshipEntity, UserRecordLogEntity, UserViewEntity, CompanyIntegrationRunEntity, CompanyIntegrationRunDetailEntity, ErrorLogEntity, ApplicationEntity, ApplicationEntityEntity, EntityPermissionEntity, UserApplicationEntityEntity, UserApplicationEntity, CompanyIntegrationRunAPILogEntity, ListEntity, ListDetailEntity, UserViewRunEntity, UserViewRunDetailEntity, WorkflowRunEntity, WorkflowEntity, WorkflowEngineEntity, RecordChangeEntity, UserRoleEntity, RowLevelSecurityFilterEntity, AuditLogEntity, AuthorizationEntity, AuthorizationRoleEntity, AuditLogTypeEntity, EntityFieldValueEntity, AIModelEntity, AIActionEntity, AIModelActionEntity, EntityAIActionEntity, AIModelTypeEntity, QueueTypeEntity, QueueEntity, QueueTaskEntity, DashboardEntity, OutputTriggerTypeEntity, OutputFormatTypeEntity, OutputDeliveryTypeEntity, ReportEntity, ReportSnapshotEntity, ResourceTypeEntity, TagEntity, TaggedItemEntity, WorkspaceEntity, WorkspaceItemEntity, DatasetEntity, DatasetItemEntity, ConversationDetailEntity, ConversationEntity, UserNotificationEntity, SchemaInfoEntity, CompanyIntegrationRecordMapEntity, RecordMergeLogEntity, RecordMergeDeletionLogEntity, QueryFieldEntity, QueryCategoryEntity, QueryEntity, QueryPermissionEntity, VectorIndexEntity, EntityDocumentTypeEntity, EntityDocumentRunEntity, VectorDatabaseEntity, EntityRecordDocumentEntity, EntityDocumentEntity, DataContextItemEntity, DataContextEntity, UserViewCategoryEntity, DashboardCategoryEntity, ReportCategoryEntity, FileStorageProviderEntity, FileEntity, FileCategoryEntity, FileEntityRecordLinkEntity, VersionInstallationEntity, DuplicateRunDetailMatchEntity, EntityDocumentSettingEntity, EntitySettingEntity, DuplicateRunEntity, DuplicateRunDetailEntity, ApplicationSettingEntity, ActionCategoryEntity, EntityActionEntity, EntityActionInvocationEntity, ActionAuthorizationEntity, EntityActionInvocationTypeEntity, ActionEntity, EntityActionFilterEntity, ActionFilterEntity, ActionContextTypeEntity, ActionResultCodeEntity, ActionContextEntity, ActionExecutionLogEntity, ActionParamEntity, ActionLibraryEntity, LibraryEntity, ListCategoryEntity, CommunicationProviderEntity, CommunicationRunEntity, CommunicationProviderMessageTypeEntity, CommunicationLogEntity, CommunicationBaseMessageTypeEntity, TemplateEntity, TemplateCategoryEntity, TemplateContentEntity, TemplateParamEntity, TemplateContentTypeEntity, RecommendationEntity, RecommendationProviderEntity, RecommendationRunEntity, RecommendationItemEntity, EntityCommunicationMessageTypeEntity, EntityCommunicationFieldEntity, RecordChangeReplayRunEntity, LibraryItemEntity, EntityRelationshipDisplayComponentEntity, EntityActionParamEntity, ResourcePermissionEntity, ResourceLinkEntity, ContentProcessRunEntity, ContentSourceEntity, ContentSourceParamEntity, ContentSourceTypeEntity, ContentSourceTypeParamEntity, ContentTypeEntity, ContentTypeAttributeEntity, ContentFileTypeEntity, ContentItemEntity, ContentItemAttributeEntity, ContentItemTagEntity } from '@memberjunction/core-entities';
21
+ import { ScheduledActionEntity, ScheduledActionParamEntity, ExplorerNavigationItemEntity, AIPromptEntity, AIResultCacheEntity, AIPromptCategoryEntity, AIPromptTypeEntity, CompanyEntity, EmployeeEntity, UserFavoriteEntity, EmployeeCompanyIntegrationEntity, EmployeeRoleEntity, EmployeeSkillEntity, RoleEntity, SkillEntity, IntegrationURLFormatEntity, IntegrationEntity, CompanyIntegrationEntity, EntityFieldEntity, EntityEntity, UserEntity, EntityRelationshipEntity, UserRecordLogEntity, UserViewEntity, CompanyIntegrationRunEntity, CompanyIntegrationRunDetailEntity, ErrorLogEntity, ApplicationEntity, ApplicationEntityEntity, EntityPermissionEntity, UserApplicationEntityEntity, UserApplicationEntity, CompanyIntegrationRunAPILogEntity, ListEntity, ListDetailEntity, UserViewRunEntity, UserViewRunDetailEntity, WorkflowRunEntity, WorkflowEntity, WorkflowEngineEntity, RecordChangeEntity, UserRoleEntity, RowLevelSecurityFilterEntity, AuditLogEntity, AuthorizationEntity, AuthorizationRoleEntity, AuditLogTypeEntity, EntityFieldValueEntity, AIModelEntity, AIActionEntity, AIModelActionEntity, EntityAIActionEntity, AIModelTypeEntity, QueueTypeEntity, QueueEntity, QueueTaskEntity, DashboardEntity, OutputTriggerTypeEntity, OutputFormatTypeEntity, OutputDeliveryTypeEntity, ReportEntity, ReportSnapshotEntity, ResourceTypeEntity, TagEntity, TaggedItemEntity, WorkspaceEntity, WorkspaceItemEntity, DatasetEntity, DatasetItemEntity, ConversationDetailEntity, ConversationEntity, UserNotificationEntity, SchemaInfoEntity, CompanyIntegrationRecordMapEntity, RecordMergeLogEntity, RecordMergeDeletionLogEntity, QueryFieldEntity, QueryCategoryEntity, QueryEntity, QueryPermissionEntity, VectorIndexEntity, EntityDocumentTypeEntity, EntityDocumentRunEntity, VectorDatabaseEntity, EntityRecordDocumentEntity, EntityDocumentEntity, DataContextItemEntity, DataContextEntity, UserViewCategoryEntity, DashboardCategoryEntity, ReportCategoryEntity, FileStorageProviderEntity, FileEntity, FileCategoryEntity, FileEntityRecordLinkEntity, VersionInstallationEntity, DuplicateRunDetailMatchEntity, EntityDocumentSettingEntity, EntitySettingEntity, DuplicateRunEntity, DuplicateRunDetailEntity, ApplicationSettingEntity, ActionCategoryEntity, EntityActionEntity, EntityActionInvocationEntity, ActionAuthorizationEntity, EntityActionInvocationTypeEntity, ActionEntity, EntityActionFilterEntity, ActionFilterEntity, ActionContextTypeEntity, ActionResultCodeEntity, ActionContextEntity, ActionExecutionLogEntity, ActionParamEntity, ActionLibraryEntity, LibraryEntity, ListCategoryEntity, CommunicationProviderEntity, CommunicationRunEntity, CommunicationProviderMessageTypeEntity, CommunicationLogEntity, CommunicationBaseMessageTypeEntity, TemplateEntity, TemplateCategoryEntity, TemplateContentEntity, TemplateParamEntity, TemplateContentTypeEntity, RecommendationEntity, RecommendationProviderEntity, RecommendationRunEntity, RecommendationItemEntity, EntityCommunicationMessageTypeEntity, EntityCommunicationFieldEntity, RecordChangeReplayRunEntity, LibraryItemEntity, EntityRelationshipDisplayComponentEntity, EntityActionParamEntity, ResourcePermissionEntity, ResourceLinkEntity, ContentProcessRunEntity, ContentSourceEntity, ContentSourceParamEntity, ContentSourceTypeEntity, ContentSourceTypeParamEntity, ContentTypeEntity, ContentTypeAttributeEntity, ContentFileTypeEntity, ContentItemEntity, ContentItemAttributeEntity, ContentItemTagEntity, flyway_schema_historyEntity } from '@memberjunction/core-entities';
22
22
 
23
23
 
24
24
  //****************************************************************************
@@ -655,211 +655,6 @@ export class ExplorerNavigationItemResolver extends ResolverBase {
655
655
 
656
656
  }
657
657
 
658
- //****************************************************************************
659
- // ENTITY CLASS for flyway _schema _histories
660
- //****************************************************************************
661
- @ObjectType()
662
- export class flyway_schema_history_ {
663
- @Field(() => Int)
664
- installed_rank: number;
665
-
666
- @Field({nullable: true})
667
- @MaxLength(100)
668
- version?: string;
669
-
670
- @Field({nullable: true})
671
- @MaxLength(400)
672
- description?: string;
673
-
674
- @Field()
675
- @MaxLength(40)
676
- type: string;
677
-
678
- @Field()
679
- @MaxLength(2000)
680
- script: string;
681
-
682
- @Field(() => Int, {nullable: true})
683
- checksum?: number;
684
-
685
- @Field()
686
- @MaxLength(200)
687
- installed_by: string;
688
-
689
- @Field()
690
- @MaxLength(8)
691
- installed_on: Date;
692
-
693
- @Field(() => Int)
694
- execution_time: number;
695
-
696
- @Field(() => Boolean)
697
- success: boolean;
698
-
699
- @Field()
700
- @MaxLength(10)
701
- _mj__CreatedAt: Date;
702
-
703
- @Field()
704
- @MaxLength(10)
705
- _mj__UpdatedAt: Date;
706
-
707
- }
708
-
709
- //****************************************************************************
710
- // INPUT TYPE for flyway _schema _histories
711
- //****************************************************************************
712
- @InputType()
713
- export class Createflyway_schema_historyInput {
714
- @Field(() => Int)
715
- installed_rank: number;
716
-
717
- @Field({ nullable: true })
718
- version?: string;
719
-
720
- @Field({ nullable: true })
721
- description?: string;
722
-
723
- @Field()
724
- type: string;
725
-
726
- @Field()
727
- script: string;
728
-
729
- @Field(() => Int, { nullable: true })
730
- checksum?: number;
731
-
732
- @Field()
733
- installed_by: string;
734
-
735
- @Field()
736
- installed_on: Date;
737
-
738
- @Field(() => Int)
739
- execution_time: number;
740
-
741
- @Field(() => Boolean)
742
- success: boolean;
743
- }
744
-
745
-
746
- //****************************************************************************
747
- // INPUT TYPE for flyway _schema _histories
748
- //****************************************************************************
749
- @InputType()
750
- export class Updateflyway_schema_historyInput {
751
- @Field(() => Int)
752
- installed_rank: number;
753
-
754
- @Field({ nullable: true })
755
- version?: string;
756
-
757
- @Field({ nullable: true })
758
- description?: string;
759
-
760
- @Field()
761
- type: string;
762
-
763
- @Field()
764
- script: string;
765
-
766
- @Field(() => Int, { nullable: true })
767
- checksum?: number;
768
-
769
- @Field()
770
- installed_by: string;
771
-
772
- @Field()
773
- installed_on: Date;
774
-
775
- @Field(() => Int)
776
- execution_time: number;
777
-
778
- @Field(() => Boolean)
779
- success: boolean;
780
-
781
- @Field(() => [KeyValuePairInput], { nullable: true })
782
- OldValues___?: KeyValuePairInput[];
783
- }
784
-
785
- //****************************************************************************
786
- // RESOLVER for flyway _schema _histories
787
- //****************************************************************************
788
- @ObjectType()
789
- export class Runflyway_schema_historyViewResult {
790
- @Field(() => [flyway_schema_history_])
791
- Results: flyway_schema_history_[];
792
-
793
- @Field(() => String, {nullable: true})
794
- UserViewRunID?: string;
795
-
796
- @Field(() => Int, {nullable: true})
797
- RowCount: number;
798
-
799
- @Field(() => Int, {nullable: true})
800
- TotalRowCount: number;
801
-
802
- @Field(() => Int, {nullable: true})
803
- ExecutionTime: number;
804
-
805
- @Field({nullable: true})
806
- ErrorMessage?: string;
807
-
808
- @Field(() => Boolean, {nullable: false})
809
- Success: boolean;
810
- }
811
-
812
- @Resolver(flyway_schema_history_)
813
- export class flyway_schema_historyResolver extends ResolverBase {
814
- @Query(() => Runflyway_schema_historyViewResult)
815
- async Runflyway_schema_historyViewByID(@Arg('input', () => RunViewByIDInput) input: RunViewByIDInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
816
- return super.RunViewByIDGeneric(input, dataSource, userPayload, pubSub);
817
- }
818
-
819
- @Query(() => Runflyway_schema_historyViewResult)
820
- async Runflyway_schema_historyViewByName(@Arg('input', () => RunViewByNameInput) input: RunViewByNameInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
821
- return super.RunViewByNameGeneric(input, dataSource, userPayload, pubSub);
822
- }
823
-
824
- @Query(() => Runflyway_schema_historyViewResult)
825
- async Runflyway_schema_historyDynamicView(@Arg('input', () => RunDynamicViewInput) input: RunDynamicViewInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
826
- input.EntityName = 'flyway _schema _histories';
827
- return super.RunDynamicViewGeneric(input, dataSource, userPayload, pubSub);
828
- }
829
- @Query(() => flyway_schema_history_, { nullable: true })
830
- async flyway_schema_history(@Arg('installed_rank', () => Int) installed_rank: number, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine): Promise<flyway_schema_history_ | null> {
831
- this.CheckUserReadPermissions('flyway _schema _histories', userPayload);
832
- const sSQL = `SELECT * FROM [${Metadata.Provider.ConfigData.MJCoreSchemaName}].[vwflyway_schema_histories] WHERE [installed_rank]=${installed_rank} ` + this.getRowLevelSecurityWhereClause('flyway _schema _histories', userPayload, EntityPermissionType.Read, 'AND');
833
- const result = this.MapFieldNamesToCodeNames('flyway _schema _histories', await dataSource.query(sSQL).then((r) => r && r.length > 0 ? r[0] : {}))
834
- return result;
835
- }
836
-
837
- @Mutation(() => flyway_schema_history_)
838
- async Createflyway_schema_history(
839
- @Arg('input', () => Createflyway_schema_historyInput) input: Createflyway_schema_historyInput,
840
- @Ctx() { dataSource, userPayload }: AppContext,
841
- @PubSub() pubSub: PubSubEngine
842
- ) {
843
- return this.CreateRecord('flyway _schema _histories', input, dataSource, userPayload, pubSub)
844
- }
845
-
846
- @Mutation(() => flyway_schema_history_)
847
- async Updateflyway_schema_history(
848
- @Arg('input', () => Updateflyway_schema_historyInput) input: Updateflyway_schema_historyInput,
849
- @Ctx() { dataSource, userPayload }: AppContext,
850
- @PubSub() pubSub: PubSubEngine
851
- ) {
852
- return this.UpdateRecord('flyway _schema _histories', input, dataSource, userPayload, pubSub);
853
- }
854
-
855
- @Mutation(() => flyway_schema_history_)
856
- async Deleteflyway_schema_history(@Arg('installed_rank', () => Int) installed_rank: number, @Arg('options___', () => DeleteOptionsInput) options: DeleteOptionsInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
857
- const key = new CompositeKey([{FieldName: 'installed_rank', Value: installed_rank}]);
858
- return this.DeleteRecord('flyway _schema _histories', key, options, dataSource, userPayload, pubSub);
859
- }
860
-
861
- }
862
-
863
658
  //****************************************************************************
864
659
  // ENTITY CLASS for AI Prompts
865
660
  //****************************************************************************
@@ -1300,12 +1095,12 @@ export class AIPromptCategory_ {
1300
1095
  @MaxLength(510)
1301
1096
  Parent?: string;
1302
1097
 
1303
- @Field(() => [AIPromptCategory_])
1304
- AIPromptCategories_ParentIDArray: AIPromptCategory_[]; // Link to AIPromptCategories
1305
-
1306
1098
  @Field(() => [AIPrompt_])
1307
1099
  AIPrompts_CategoryIDArray: AIPrompt_[]; // Link to AIPrompts
1308
1100
 
1101
+ @Field(() => [AIPromptCategory_])
1102
+ AIPromptCategories_ParentIDArray: AIPromptCategory_[]; // Link to AIPromptCategories
1103
+
1309
1104
  }
1310
1105
 
1311
1106
  //****************************************************************************
@@ -1397,14 +1192,6 @@ export class AIPromptCategoryResolver extends ResolverBase {
1397
1192
  return result;
1398
1193
  }
1399
1194
 
1400
- @FieldResolver(() => [AIPromptCategory_])
1401
- async AIPromptCategories_ParentIDArray(@Root() aipromptcategory_: AIPromptCategory_, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
1402
- this.CheckUserReadPermissions('AI Prompt Categories', userPayload);
1403
- const sSQL = `SELECT * FROM [${Metadata.Provider.ConfigData.MJCoreSchemaName}].[vwAIPromptCategories] WHERE [ParentID]='${aipromptcategory_.ID}' ` + this.getRowLevelSecurityWhereClause('AI Prompt Categories', userPayload, EntityPermissionType.Read, 'AND');
1404
- const result = this.ArrayMapFieldNamesToCodeNames('AI Prompt Categories', await dataSource.query(sSQL));
1405
- return result;
1406
- }
1407
-
1408
1195
  @FieldResolver(() => [AIPrompt_])
1409
1196
  async AIPrompts_CategoryIDArray(@Root() aipromptcategory_: AIPromptCategory_, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
1410
1197
  this.CheckUserReadPermissions('AI Prompts', userPayload);
@@ -1413,6 +1200,14 @@ export class AIPromptCategoryResolver extends ResolverBase {
1413
1200
  return result;
1414
1201
  }
1415
1202
 
1203
+ @FieldResolver(() => [AIPromptCategory_])
1204
+ async AIPromptCategories_ParentIDArray(@Root() aipromptcategory_: AIPromptCategory_, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
1205
+ this.CheckUserReadPermissions('AI Prompt Categories', userPayload);
1206
+ const sSQL = `SELECT * FROM [${Metadata.Provider.ConfigData.MJCoreSchemaName}].[vwAIPromptCategories] WHERE [ParentID]='${aipromptcategory_.ID}' ` + this.getRowLevelSecurityWhereClause('AI Prompt Categories', userPayload, EntityPermissionType.Read, 'AND');
1207
+ const result = this.ArrayMapFieldNamesToCodeNames('AI Prompt Categories', await dataSource.query(sSQL));
1208
+ return result;
1209
+ }
1210
+
1416
1211
  @Mutation(() => AIPromptCategory_)
1417
1212
  async CreateAIPromptCategory(
1418
1213
  @Arg('input', () => CreateAIPromptCategoryInput) input: CreateAIPromptCategoryInput,
@@ -10516,12 +10311,12 @@ export class AIModel_ {
10516
10311
  @Field(() => [ContentType_])
10517
10312
  ContentTypes_AIModelIDArray: ContentType_[]; // Link to ContentTypes
10518
10313
 
10519
- @Field(() => [EntityAIAction_])
10520
- EntityAIActions_AIModelIDArray: EntityAIAction_[]; // Link to EntityAIActions
10521
-
10522
10314
  @Field(() => [AIResultCache_])
10523
10315
  AIResultCache_AIModelIDArray: AIResultCache_[]; // Link to AIResultCache
10524
10316
 
10317
+ @Field(() => [EntityAIAction_])
10318
+ EntityAIActions_AIModelIDArray: EntityAIAction_[]; // Link to EntityAIActions
10319
+
10525
10320
  }
10526
10321
 
10527
10322
  //****************************************************************************
@@ -10721,14 +10516,6 @@ export class AIModelResolver extends ResolverBase {
10721
10516
  return result;
10722
10517
  }
10723
10518
 
10724
- @FieldResolver(() => [EntityAIAction_])
10725
- async EntityAIActions_AIModelIDArray(@Root() aimodel_: AIModel_, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
10726
- this.CheckUserReadPermissions('Entity AI Actions', userPayload);
10727
- const sSQL = `SELECT * FROM [${Metadata.Provider.ConfigData.MJCoreSchemaName}].[vwEntityAIActions] WHERE [AIModelID]='${aimodel_.ID}' ` + this.getRowLevelSecurityWhereClause('Entity AI Actions', userPayload, EntityPermissionType.Read, 'AND');
10728
- const result = this.ArrayMapFieldNamesToCodeNames('Entity AI Actions', await dataSource.query(sSQL));
10729
- return result;
10730
- }
10731
-
10732
10519
  @FieldResolver(() => [AIResultCache_])
10733
10520
  async AIResultCache_AIModelIDArray(@Root() aimodel_: AIModel_, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
10734
10521
  this.CheckUserReadPermissions('AI Result Cache', userPayload);
@@ -10737,6 +10524,14 @@ export class AIModelResolver extends ResolverBase {
10737
10524
  return result;
10738
10525
  }
10739
10526
 
10527
+ @FieldResolver(() => [EntityAIAction_])
10528
+ async EntityAIActions_AIModelIDArray(@Root() aimodel_: AIModel_, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
10529
+ this.CheckUserReadPermissions('Entity AI Actions', userPayload);
10530
+ const sSQL = `SELECT * FROM [${Metadata.Provider.ConfigData.MJCoreSchemaName}].[vwEntityAIActions] WHERE [AIModelID]='${aimodel_.ID}' ` + this.getRowLevelSecurityWhereClause('Entity AI Actions', userPayload, EntityPermissionType.Read, 'AND');
10531
+ const result = this.ArrayMapFieldNamesToCodeNames('Entity AI Actions', await dataSource.query(sSQL));
10532
+ return result;
10533
+ }
10534
+
10740
10535
  @Mutation(() => AIModel_)
10741
10536
  async CreateAIModel(
10742
10537
  @Arg('input', () => CreateAIModelInput) input: CreateAIModelInput,
@@ -13957,6 +13752,18 @@ export class ConversationDetail_ {
13957
13752
  @MaxLength(10)
13958
13753
  _mj__UpdatedAt: Date;
13959
13754
 
13755
+ @Field(() => Int, {nullable: true, description: 'This column is used to capture user feedback as a rating scale. The scale ranges from 1 to 10, where 1 might represent thumbs down, and 10 might represent thumbs up or the highest rating in a star-based scale.'})
13756
+ UserRating?: number;
13757
+
13758
+ @Field({nullable: true, description: 'This column is used to store user text feedback about a given AI response, describing what they liked or disliked.'})
13759
+ UserFeedback?: string;
13760
+
13761
+ @Field({nullable: true, description: 'This column stores human or AI-generated reflections on how to improve future responses based on the user feedback and the AI output generated for prior messages in the conversation.'})
13762
+ ReflectionInsights?: string;
13763
+
13764
+ @Field({nullable: true, description: 'This column optionally stores a summary of the entire conversation leading up to this particular conversation detail record. It is used in long-running conversations to optimize performance by summarizing earlier parts.'})
13765
+ SummaryOfEarlierConversation?: string;
13766
+
13960
13767
  @Field({nullable: true})
13961
13768
  @MaxLength(510)
13962
13769
  Conversation?: string;
@@ -13988,6 +13795,18 @@ export class CreateConversationDetailInput {
13988
13795
 
13989
13796
  @Field(() => Boolean)
13990
13797
  HiddenToUser: boolean;
13798
+
13799
+ @Field(() => Int, { nullable: true })
13800
+ UserRating?: number;
13801
+
13802
+ @Field({ nullable: true })
13803
+ UserFeedback?: string;
13804
+
13805
+ @Field({ nullable: true })
13806
+ ReflectionInsights?: string;
13807
+
13808
+ @Field({ nullable: true })
13809
+ SummaryOfEarlierConversation?: string;
13991
13810
  }
13992
13811
 
13993
13812
 
@@ -14017,6 +13836,18 @@ export class UpdateConversationDetailInput {
14017
13836
  @Field(() => Boolean)
14018
13837
  HiddenToUser: boolean;
14019
13838
 
13839
+ @Field(() => Int, { nullable: true })
13840
+ UserRating?: number;
13841
+
13842
+ @Field({ nullable: true })
13843
+ UserFeedback?: string;
13844
+
13845
+ @Field({ nullable: true })
13846
+ ReflectionInsights?: string;
13847
+
13848
+ @Field({ nullable: true })
13849
+ SummaryOfEarlierConversation?: string;
13850
+
14020
13851
  @Field(() => [KeyValuePairInput], { nullable: true })
14021
13852
  OldValues___?: KeyValuePairInput[];
14022
13853
  }
@@ -26490,7 +26321,7 @@ export class ResourcePermission_ {
26490
26321
  @MaxLength(10)
26491
26322
  _mj__UpdatedAt: Date;
26492
26323
 
26493
- @Field({description: 'Status of the resource permission request. Possible values are Pending, Approved, Rejected, Revoked, or Requested.'})
26324
+ @Field({description: 'Status of the resource permission request. Possible values are Requested, Approved, Rejected, or Revoked.'})
26494
26325
  @MaxLength(40)
26495
26326
  Status: string;
26496
26327
 
@@ -28703,4 +28534,209 @@ export class ContentItemTagResolver extends ResolverBase {
28703
28534
  return this.DeleteRecord('Content Item Tags', key, options, dataSource, userPayload, pubSub);
28704
28535
  }
28705
28536
 
28537
+ }
28538
+
28539
+ //****************************************************************************
28540
+ // ENTITY CLASS for flyway _schema _histories
28541
+ //****************************************************************************
28542
+ @ObjectType()
28543
+ export class flyway_schema_history_ {
28544
+ @Field(() => Int)
28545
+ installed_rank: number;
28546
+
28547
+ @Field({nullable: true})
28548
+ @MaxLength(100)
28549
+ version?: string;
28550
+
28551
+ @Field({nullable: true})
28552
+ @MaxLength(400)
28553
+ description?: string;
28554
+
28555
+ @Field()
28556
+ @MaxLength(40)
28557
+ type: string;
28558
+
28559
+ @Field()
28560
+ @MaxLength(2000)
28561
+ script: string;
28562
+
28563
+ @Field(() => Int, {nullable: true})
28564
+ checksum?: number;
28565
+
28566
+ @Field()
28567
+ @MaxLength(200)
28568
+ installed_by: string;
28569
+
28570
+ @Field()
28571
+ @MaxLength(8)
28572
+ installed_on: Date;
28573
+
28574
+ @Field(() => Int)
28575
+ execution_time: number;
28576
+
28577
+ @Field(() => Boolean)
28578
+ success: boolean;
28579
+
28580
+ @Field()
28581
+ @MaxLength(10)
28582
+ _mj__CreatedAt: Date;
28583
+
28584
+ @Field()
28585
+ @MaxLength(10)
28586
+ _mj__UpdatedAt: Date;
28587
+
28588
+ }
28589
+
28590
+ //****************************************************************************
28591
+ // INPUT TYPE for flyway _schema _histories
28592
+ //****************************************************************************
28593
+ @InputType()
28594
+ export class Createflyway_schema_historyInput {
28595
+ @Field(() => Int)
28596
+ installed_rank: number;
28597
+
28598
+ @Field({ nullable: true })
28599
+ version?: string;
28600
+
28601
+ @Field({ nullable: true })
28602
+ description?: string;
28603
+
28604
+ @Field()
28605
+ type: string;
28606
+
28607
+ @Field()
28608
+ script: string;
28609
+
28610
+ @Field(() => Int, { nullable: true })
28611
+ checksum?: number;
28612
+
28613
+ @Field()
28614
+ installed_by: string;
28615
+
28616
+ @Field()
28617
+ installed_on: Date;
28618
+
28619
+ @Field(() => Int)
28620
+ execution_time: number;
28621
+
28622
+ @Field(() => Boolean)
28623
+ success: boolean;
28624
+ }
28625
+
28626
+
28627
+ //****************************************************************************
28628
+ // INPUT TYPE for flyway _schema _histories
28629
+ //****************************************************************************
28630
+ @InputType()
28631
+ export class Updateflyway_schema_historyInput {
28632
+ @Field(() => Int)
28633
+ installed_rank: number;
28634
+
28635
+ @Field({ nullable: true })
28636
+ version?: string;
28637
+
28638
+ @Field({ nullable: true })
28639
+ description?: string;
28640
+
28641
+ @Field()
28642
+ type: string;
28643
+
28644
+ @Field()
28645
+ script: string;
28646
+
28647
+ @Field(() => Int, { nullable: true })
28648
+ checksum?: number;
28649
+
28650
+ @Field()
28651
+ installed_by: string;
28652
+
28653
+ @Field()
28654
+ installed_on: Date;
28655
+
28656
+ @Field(() => Int)
28657
+ execution_time: number;
28658
+
28659
+ @Field(() => Boolean)
28660
+ success: boolean;
28661
+
28662
+ @Field(() => [KeyValuePairInput], { nullable: true })
28663
+ OldValues___?: KeyValuePairInput[];
28664
+ }
28665
+
28666
+ //****************************************************************************
28667
+ // RESOLVER for flyway _schema _histories
28668
+ //****************************************************************************
28669
+ @ObjectType()
28670
+ export class Runflyway_schema_historyViewResult {
28671
+ @Field(() => [flyway_schema_history_])
28672
+ Results: flyway_schema_history_[];
28673
+
28674
+ @Field(() => String, {nullable: true})
28675
+ UserViewRunID?: string;
28676
+
28677
+ @Field(() => Int, {nullable: true})
28678
+ RowCount: number;
28679
+
28680
+ @Field(() => Int, {nullable: true})
28681
+ TotalRowCount: number;
28682
+
28683
+ @Field(() => Int, {nullable: true})
28684
+ ExecutionTime: number;
28685
+
28686
+ @Field({nullable: true})
28687
+ ErrorMessage?: string;
28688
+
28689
+ @Field(() => Boolean, {nullable: false})
28690
+ Success: boolean;
28691
+ }
28692
+
28693
+ @Resolver(flyway_schema_history_)
28694
+ export class flyway_schema_historyResolver extends ResolverBase {
28695
+ @Query(() => Runflyway_schema_historyViewResult)
28696
+ async Runflyway_schema_historyViewByID(@Arg('input', () => RunViewByIDInput) input: RunViewByIDInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
28697
+ return super.RunViewByIDGeneric(input, dataSource, userPayload, pubSub);
28698
+ }
28699
+
28700
+ @Query(() => Runflyway_schema_historyViewResult)
28701
+ async Runflyway_schema_historyViewByName(@Arg('input', () => RunViewByNameInput) input: RunViewByNameInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
28702
+ return super.RunViewByNameGeneric(input, dataSource, userPayload, pubSub);
28703
+ }
28704
+
28705
+ @Query(() => Runflyway_schema_historyViewResult)
28706
+ async Runflyway_schema_historyDynamicView(@Arg('input', () => RunDynamicViewInput) input: RunDynamicViewInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
28707
+ input.EntityName = 'flyway _schema _histories';
28708
+ return super.RunDynamicViewGeneric(input, dataSource, userPayload, pubSub);
28709
+ }
28710
+ @Query(() => flyway_schema_history_, { nullable: true })
28711
+ async flyway_schema_history(@Arg('installed_rank', () => Int) installed_rank: number, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine): Promise<flyway_schema_history_ | null> {
28712
+ this.CheckUserReadPermissions('flyway _schema _histories', userPayload);
28713
+ const sSQL = `SELECT * FROM [${Metadata.Provider.ConfigData.MJCoreSchemaName}].[vwflyway_schema_histories] WHERE [installed_rank]=${installed_rank} ` + this.getRowLevelSecurityWhereClause('flyway _schema _histories', userPayload, EntityPermissionType.Read, 'AND');
28714
+ const result = this.MapFieldNamesToCodeNames('flyway _schema _histories', await dataSource.query(sSQL).then((r) => r && r.length > 0 ? r[0] : {}))
28715
+ return result;
28716
+ }
28717
+
28718
+ @Mutation(() => flyway_schema_history_)
28719
+ async Createflyway_schema_history(
28720
+ @Arg('input', () => Createflyway_schema_historyInput) input: Createflyway_schema_historyInput,
28721
+ @Ctx() { dataSource, userPayload }: AppContext,
28722
+ @PubSub() pubSub: PubSubEngine
28723
+ ) {
28724
+ return this.CreateRecord('flyway _schema _histories', input, dataSource, userPayload, pubSub)
28725
+ }
28726
+
28727
+ @Mutation(() => flyway_schema_history_)
28728
+ async Updateflyway_schema_history(
28729
+ @Arg('input', () => Updateflyway_schema_historyInput) input: Updateflyway_schema_historyInput,
28730
+ @Ctx() { dataSource, userPayload }: AppContext,
28731
+ @PubSub() pubSub: PubSubEngine
28732
+ ) {
28733
+ return this.UpdateRecord('flyway _schema _histories', input, dataSource, userPayload, pubSub);
28734
+ }
28735
+
28736
+ @Mutation(() => flyway_schema_history_)
28737
+ async Deleteflyway_schema_history(@Arg('installed_rank', () => Int) installed_rank: number, @Arg('options___', () => DeleteOptionsInput) options: DeleteOptionsInput, @Ctx() { dataSource, userPayload }: AppContext, @PubSub() pubSub: PubSubEngine) {
28738
+ const key = new CompositeKey([{FieldName: 'installed_rank', Value: installed_rank}]);
28739
+ return this.DeleteRecord('flyway _schema _histories', key, options, dataSource, userPayload, pubSub);
28740
+ }
28741
+
28706
28742
  }