@memberjunction/ng-skip-chat 2.27.0 → 2.27.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -14,18 +14,19 @@ import * as i12 from "@progress/kendo-angular-inputs";
14
14
  import * as i13 from "@progress/kendo-angular-label";
15
15
  import * as i14 from "@memberjunction/ng-container-directives";
16
16
  import * as i15 from "@progress/kendo-angular-listview";
17
- import * as i16 from "@progress/kendo-angular-dropdowns";
18
- import * as i17 from "@progress/kendo-angular-grid";
19
- import * as i18 from "@progress/kendo-angular-buttons";
20
- import * as i19 from "angular-plotly.js";
21
- import * as i20 from "@memberjunction/ng-data-context";
22
- import * as i21 from "@angular/cdk/overlay";
23
- import * as i22 from "@progress/kendo-angular-excel-export";
24
- import * as i23 from "@memberjunction/ng-resource-permissions";
25
- import * as i24 from "ngx-markdown";
17
+ import * as i16 from "@memberjunction/ng-notifications";
18
+ import * as i17 from "@progress/kendo-angular-dropdowns";
19
+ import * as i18 from "@progress/kendo-angular-grid";
20
+ import * as i19 from "@progress/kendo-angular-buttons";
21
+ import * as i20 from "angular-plotly.js";
22
+ import * as i21 from "@memberjunction/ng-data-context";
23
+ import * as i22 from "@angular/cdk/overlay";
24
+ import * as i23 from "@progress/kendo-angular-excel-export";
25
+ import * as i24 from "@memberjunction/ng-resource-permissions";
26
+ import * as i25 from "ngx-markdown";
26
27
  export declare class SkipChatModule {
27
28
  static ɵfac: i0.ɵɵFactoryDeclaration<SkipChatModule, never>;
28
- static ɵmod: i0.ɵɵNgModuleDeclaration<SkipChatModule, [typeof i1.SkipChatComponent, typeof i2.SkipSingleMessageComponent, typeof i3.SkipDynamicLinearReportComponent, typeof i4.SkipDynamicReportWrapperComponent, typeof i5.SkipDynamicChartComponent, typeof i6.SkipDynamicGridComponent], [typeof i7.CommonModule, typeof i8.LayoutModule, typeof i9.FormsModule, typeof i10.IndicatorsModule, typeof i11.DialogsModule, typeof i12.InputsModule, typeof i13.LabelModule, typeof i14.ContainerDirectivesModule, typeof i15.ListViewModule, typeof i16.DropDownsModule, typeof i17.GridModule, typeof i18.ButtonsModule, typeof i19.PlotlyViaCDNModule, typeof i20.DataContextModule, typeof i21.OverlayModule, typeof i22.ExcelExportModule, typeof i23.ResourcePermissionsModule, typeof i24.MarkdownModule], [typeof i1.SkipChatComponent, typeof i2.SkipSingleMessageComponent, typeof i3.SkipDynamicLinearReportComponent, typeof i4.SkipDynamicReportWrapperComponent, typeof i5.SkipDynamicChartComponent, typeof i6.SkipDynamicGridComponent]>;
29
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SkipChatModule, [typeof i1.SkipChatComponent, typeof i2.SkipSingleMessageComponent, typeof i3.SkipDynamicLinearReportComponent, typeof i4.SkipDynamicReportWrapperComponent, typeof i5.SkipDynamicChartComponent, typeof i6.SkipDynamicGridComponent], [typeof i7.CommonModule, typeof i8.LayoutModule, typeof i9.FormsModule, typeof i10.IndicatorsModule, typeof i11.DialogsModule, typeof i12.InputsModule, typeof i13.LabelModule, typeof i14.ContainerDirectivesModule, typeof i15.ListViewModule, typeof i16.MJNotificationsModule, typeof i17.DropDownsModule, typeof i18.GridModule, typeof i19.ButtonsModule, typeof i20.PlotlyViaCDNModule, typeof i21.DataContextModule, typeof i22.OverlayModule, typeof i23.ExcelExportModule, typeof i24.ResourcePermissionsModule, typeof i25.MarkdownModule], [typeof i1.SkipChatComponent, typeof i2.SkipSingleMessageComponent, typeof i3.SkipDynamicLinearReportComponent, typeof i4.SkipDynamicReportWrapperComponent, typeof i5.SkipDynamicChartComponent, typeof i6.SkipDynamicGridComponent]>;
29
30
  static ɵinj: i0.ɵɵInjectorDeclaration<SkipChatModule>;
30
31
  }
31
32
  //# sourceMappingURL=module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,qBAsCa,cAAc;yCAAd,cAAc;0CAAd,cAAc;0CAAd,cAAc;CAC1B"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,qBAuCa,cAAc;yCAAd,cAAc;0CAAd,cAAc;0CAAd,cAAc;CAC1B"}
@@ -31,6 +31,7 @@ import { SkipDynamicReportWrapperComponent } from './dynamic-report/skip-dynamic
31
31
  import { SkipDynamicLinearReportComponent } from './dynamic-report/linear-report';
32
32
  import { SkipDynamicChartComponent } from './dynamic-report/dynamic-chart';
33
33
  import { SkipDynamicGridComponent } from './dynamic-report/dynamic-grid';
34
+ import { MJNotificationsModule } from '@memberjunction/ng-notifications';
34
35
  import * as i0 from "@angular/core";
35
36
  import * as i1 from "ngx-markdown";
36
37
  PlotlyViaCDNModule.setPlotlyVersion('latest'); // can be `latest` or any version number (i.e.: '1.40.0')
@@ -48,6 +49,7 @@ SkipChatModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMod
48
49
  LabelModule,
49
50
  ContainerDirectivesModule,
50
51
  ListViewModule,
52
+ MJNotificationsModule,
51
53
  DropDownsModule,
52
54
  GridModule,
53
55
  ButtonsModule,
@@ -78,6 +80,7 @@ SkipChatModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMod
78
80
  LabelModule,
79
81
  ContainerDirectivesModule,
80
82
  ListViewModule,
83
+ MJNotificationsModule,
81
84
  DropDownsModule,
82
85
  GridModule,
83
86
  ButtonsModule,
@@ -112,6 +115,7 @@ SkipChatModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonMod
112
115
  LabelModule,
113
116
  ContainerDirectivesModule,
114
117
  ListViewModule,
118
+ MJNotificationsModule,
115
119
  DropDownsModule,
116
120
  GridModule,
117
121
  ButtonsModule,
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,+CAA+C;AAC/C,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,+CAA+C;AAC/C,SAAS;AACT,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAKvD,+CAA+C;AAC/C,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,KAAK;AACL,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAEpF,QAAQ;AACR,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;;;AAnBzE,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,yDAAyD;AACxG,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,6GAA6G;AA2DvJ,MAAM,OAAO,cAAc;;4EAAd,cAAc;gEAAd,cAAc;oEA5BvB,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,gBAAgB;QAChB,aAAa;QACb,YAAY;QACZ,WAAW;QACX,yBAAyB;QACzB,cAAc;QACd,eAAe;QACf,UAAU;QACV,aAAa;QACb,kBAAkB;QAClB,iBAAiB;QACjB,aAAa;QACb,iBAAiB;QACjB,yBAAyB;QACzB,cAAc,CAAC,OAAO,EAAE;iFAWf,cAAc;cAtC1B,QAAQ;eAAC;gBACR,YAAY,EAAE;oBACZ,iBAAiB;oBACjB,0BAA0B;oBAC1B,gCAAgC;oBAChC,iCAAiC;oBACjC,yBAAyB;oBACzB,wBAAwB;iBACzB;gBACD,OAAO,EAAE;oBACP,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,gBAAgB;oBAChB,aAAa;oBACb,YAAY;oBACZ,WAAW;oBACX,yBAAyB;oBACzB,cAAc;oBACd,eAAe;oBACf,UAAU;oBACV,aAAa;oBACb,kBAAkB;oBAClB,iBAAiB;oBACjB,aAAa;oBACb,iBAAiB;oBACjB,yBAAyB;oBACzB,cAAc,CAAC,OAAO,EAAE;iBACzB;gBACD,OAAO,EAAE;oBACP,iBAAiB;oBACjB,0BAA0B;oBAC1B,gCAAgC;oBAChC,iCAAiC;oBACjC,yBAAyB;oBACzB,wBAAwB;iBACzB;aACF;;wFACY,cAAc,mBApCvB,iBAAiB;QACjB,0BAA0B;QAC1B,gCAAgC;QAChC,iCAAiC;QACjC,yBAAyB;QACzB,wBAAwB,aAGxB,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,gBAAgB;QAChB,aAAa;QACb,YAAY;QACZ,WAAW;QACX,yBAAyB;QACzB,cAAc;QACd,eAAe;QACf,UAAU;QACV,aAAa;QACb,kBAAkB;QAClB,iBAAiB;QACjB,aAAa;QACb,iBAAiB;QACjB,yBAAyB,gCAIzB,iBAAiB;QACjB,0BAA0B;QAC1B,gCAAgC;QAChC,iCAAiC;QACjC,yBAAyB;QACzB,wBAAwB"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,+CAA+C;AAC/C,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,+CAA+C;AAC/C,SAAS;AACT,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAKvD,+CAA+C;AAC/C,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,KAAK;AACL,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAEpF,QAAQ;AACR,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;;;AApBzE,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,yDAAyD;AACxG,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,6GAA6G;AA6DvJ,MAAM,OAAO,cAAc;;4EAAd,cAAc;gEAAd,cAAc;oEA7BvB,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,gBAAgB;QAChB,aAAa;QACb,YAAY;QACZ,WAAW;QACX,yBAAyB;QACzB,cAAc;QACd,qBAAqB;QACrB,eAAe;QACf,UAAU;QACV,aAAa;QACb,kBAAkB;QAClB,iBAAiB;QACjB,aAAa;QACb,iBAAiB;QACjB,yBAAyB;QACzB,cAAc,CAAC,OAAO,EAAE;iFAWf,cAAc;cAvC1B,QAAQ;eAAC;gBACR,YAAY,EAAE;oBACZ,iBAAiB;oBACjB,0BAA0B;oBAC1B,gCAAgC;oBAChC,iCAAiC;oBACjC,yBAAyB;oBACzB,wBAAwB;iBACzB;gBACD,OAAO,EAAE;oBACP,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,gBAAgB;oBAChB,aAAa;oBACb,YAAY;oBACZ,WAAW;oBACX,yBAAyB;oBACzB,cAAc;oBACd,qBAAqB;oBACrB,eAAe;oBACf,UAAU;oBACV,aAAa;oBACb,kBAAkB;oBAClB,iBAAiB;oBACjB,aAAa;oBACb,iBAAiB;oBACjB,yBAAyB;oBACzB,cAAc,CAAC,OAAO,EAAE;iBACzB;gBACD,OAAO,EAAE;oBACP,iBAAiB;oBACjB,0BAA0B;oBAC1B,gCAAgC;oBAChC,iCAAiC;oBACjC,yBAAyB;oBACzB,wBAAwB;iBACzB;aACF;;wFACY,cAAc,mBArCvB,iBAAiB;QACjB,0BAA0B;QAC1B,gCAAgC;QAChC,iCAAiC;QACjC,yBAAyB;QACzB,wBAAwB,aAGxB,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,gBAAgB;QAChB,aAAa;QACb,YAAY;QACZ,WAAW;QACX,yBAAyB;QACzB,cAAc;QACd,qBAAqB;QACrB,eAAe;QACf,UAAU;QACV,aAAa;QACb,kBAAkB;QAClB,iBAAiB;QACjB,aAAa;QACb,iBAAiB;QACjB,yBAAyB,gCAIzB,iBAAiB;QACjB,0BAA0B;QAC1B,gCAAgC;QAChC,iCAAiC;QACjC,yBAAyB;QACzB,wBAAwB"}
@@ -4,9 +4,11 @@ import { ConversationDetailEntity, ConversationEntity } from '@memberjunction/co
4
4
  import { SkipAPIAnalysisCompleteResponse } from '@memberjunction/skip-types';
5
5
  import { DataContext } from '@memberjunction/data-context';
6
6
  import { BaseAngularComponent } from '@memberjunction/ng-base-types';
7
+ import { MJNotificationService } from '@memberjunction/ng-notifications';
7
8
  import * as i0 from "@angular/core";
8
9
  export declare class SkipSingleMessageComponent extends BaseAngularComponent implements AfterViewInit {
9
10
  private cdRef;
11
+ private notificationService;
10
12
  ConversationRecord: ConversationEntity;
11
13
  ConversationDetailRecord: ConversationDetailEntity;
12
14
  ConversationUser: UserInfo;
@@ -34,6 +36,18 @@ export declare class SkipSingleMessageComponent extends BaseAngularComponent imp
34
36
  * If set to true, user messages will be shown with a button to allow delete/edit
35
37
  */
36
38
  ShowMessageEditPanel: boolean;
39
+ /**
40
+ * If set to true, AI messages that are the last in the conversation will show thumbs up/down rating
41
+ */
42
+ ShowMessageRating: boolean;
43
+ /**
44
+ * Indicates if the message is currently being rated and saved to the database
45
+ */
46
+ RatingBeingSaved: boolean;
47
+ /**
48
+ * This is an internal property that is turned on just after a user succesfully rates a message, and is never true otherwise. This allows the UI to show a thank you message for the rating.
49
+ */
50
+ UserJustRated: boolean;
37
51
  SuggestedQuestionSelected: EventEmitter<string>;
38
52
  SuggestedAnswerSelected: EventEmitter<string>;
39
53
  /**
@@ -60,7 +74,7 @@ export declare class SkipSingleMessageComponent extends BaseAngularComponent imp
60
74
  HideSuggestedAnswersAfterClick: boolean;
61
75
  SuggestedQuestionsClicked: boolean;
62
76
  SuggestedAnswersClicked: boolean;
63
- constructor(cdRef: ChangeDetectorRef);
77
+ constructor(cdRef: ChangeDetectorRef, notificationService: MJNotificationService);
64
78
  reportContainerRef: ViewContainerRef;
65
79
  private static _detailHtml;
66
80
  private _loadTime;
@@ -85,13 +99,26 @@ export declare class SkipSingleMessageComponent extends BaseAngularComponent imp
85
99
  RaiseSuggestedAnswerSelectedEvent(question: string): void;
86
100
  RaiseMessageDeleteRequest(): void;
87
101
  RaiseMessageEditRequest(): void;
102
+ /**
103
+ * Rate the AI response with either thumbs up (10) or thumbs down (0)
104
+ * @param rating The rating to assign, 10 for thumbs up, 0 for thumbs down
105
+ */
106
+ RateMessage(rating: number): Promise<void>;
88
107
  protected AddReportToConversation(): void;
89
108
  GetUserImageSource(): string | Blob | undefined;
90
109
  GetMessageRowCssClass(): string;
91
110
  get IsTemporaryMessage(): boolean;
92
111
  get IsFirstMessageInConversation(): boolean;
93
112
  get IsLastMessageInConversation(): boolean;
113
+ /**
114
+ * Determines if we should show the rating UI for this message
115
+ */
116
+ get ShouldShowRating(): boolean;
117
+ /**
118
+ * Gets a descriptive string based on the user rating
119
+ */
120
+ get RatingStatusText(): string;
94
121
  static ɵfac: i0.ɵɵFactoryDeclaration<SkipSingleMessageComponent, never>;
95
- static ɵcmp: i0.ɵɵComponentDeclaration<SkipSingleMessageComponent, "mj-skip-single-message", never, { "ConversationRecord": { "alias": "ConversationRecord"; "required": false; }; "ConversationDetailRecord": { "alias": "ConversationDetailRecord"; "required": false; }; "ConversationUser": { "alias": "ConversationUser"; "required": false; }; "DataContext": { "alias": "DataContext"; "required": false; }; "ConversationMessages": { "alias": "ConversationMessages"; "required": false; }; "ConversationProcessing": { "alias": "ConversationProcessing"; "required": false; }; "SkipMarkOnlyLogoURL": { "alias": "SkipMarkOnlyLogoURL"; "required": false; }; "UserImage": { "alias": "UserImage"; "required": false; }; "DefaultUserImage": { "alias": "DefaultUserImage"; "required": false; }; "ShowMessageEditPanel": { "alias": "ShowMessageEditPanel"; "required": false; }; "ShowSuggestedQuestions": { "alias": "ShowSuggestedQuestions"; "required": false; }; "HideSuggestedQuestionsAfterClick": { "alias": "HideSuggestedQuestionsAfterClick"; "required": false; }; "ShowSuggestedAnswers": { "alias": "ShowSuggestedAnswers"; "required": false; }; "HideSuggestedAnswersAfterClick": { "alias": "HideSuggestedAnswersAfterClick"; "required": false; }; }, { "SuggestedQuestionSelected": "SuggestedQuestionSelected"; "SuggestedAnswerSelected": "SuggestedAnswerSelected"; "NavigateToMatchingReport": "NavigateToMatchingReport"; "NewReportCreated": "NewReportCreated"; "EditMessageRequested": "EditMessageRequested"; "DeleteMessageRequested": "DeleteMessageRequested"; }, never, never, false, never>;
122
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkipSingleMessageComponent, "mj-skip-single-message", never, { "ConversationRecord": { "alias": "ConversationRecord"; "required": false; }; "ConversationDetailRecord": { "alias": "ConversationDetailRecord"; "required": false; }; "ConversationUser": { "alias": "ConversationUser"; "required": false; }; "DataContext": { "alias": "DataContext"; "required": false; }; "ConversationMessages": { "alias": "ConversationMessages"; "required": false; }; "ConversationProcessing": { "alias": "ConversationProcessing"; "required": false; }; "SkipMarkOnlyLogoURL": { "alias": "SkipMarkOnlyLogoURL"; "required": false; }; "UserImage": { "alias": "UserImage"; "required": false; }; "DefaultUserImage": { "alias": "DefaultUserImage"; "required": false; }; "ShowMessageEditPanel": { "alias": "ShowMessageEditPanel"; "required": false; }; "ShowMessageRating": { "alias": "ShowMessageRating"; "required": false; }; "ShowSuggestedQuestions": { "alias": "ShowSuggestedQuestions"; "required": false; }; "HideSuggestedQuestionsAfterClick": { "alias": "HideSuggestedQuestionsAfterClick"; "required": false; }; "ShowSuggestedAnswers": { "alias": "ShowSuggestedAnswers"; "required": false; }; "HideSuggestedAnswersAfterClick": { "alias": "HideSuggestedAnswersAfterClick"; "required": false; }; }, { "SuggestedQuestionSelected": "SuggestedQuestionSelected"; "SuggestedAnswerSelected": "SuggestedAnswerSelected"; "NavigateToMatchingReport": "NavigateToMatchingReport"; "NewReportCreated": "NewReportCreated"; "EditMessageRequested": "EditMessageRequested"; "DeleteMessageRequested": "DeleteMessageRequested"; }, never, never, false, never>;
96
123
  }
97
124
  //# sourceMappingURL=skip-single-message.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skip-single-message.component.d.ts","sourceRoot":"","sources":["../../../src/lib/skip-single-message/skip-single-message.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAa,YAAY,EAA4B,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtI,OAAO,EAA+B,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC7F,OAAO,EAAE,+BAA+B,EAAyE,MAAM,4BAA4B,CAAC;AAEpJ,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;;AAGrE,qBAKa,0BAA4B,SAAQ,oBAAqB,YAAW,aAAa;IAgE7E,OAAO,CAAC,KAAK;IA/DV,kBAAkB,EAAG,kBAAkB,CAAC;IACxC,wBAAwB,EAAG,wBAAwB,CAAC;IACpD,gBAAgB,EAAG,QAAQ,CAAC;IAC5B,WAAW,EAAG,WAAW,CAAC;IAC1B,oBAAoB,EAAG,wBAAwB,EAAE,CAAC;IAClE;;;;OAIG;IACa,sBAAsB,EAAE,OAAO,CAAS;IACxD;;OAEG;IACa,mBAAmB,EAAE,MAAM,CAAyC;IACpF;;OAEG;IACa,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAa;IACjE;;OAEG;IACa,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAa;IAExE;;OAEG;IACa,oBAAoB,EAAE,OAAO,CAAQ;IAGpC,yBAAyB,uBAA8B;IACvD,uBAAuB,uBAA8B;IACtE;;OAEG;IACO,wBAAwB,uBAA8B;IAEhE;;OAEG;IACO,gBAAgB,uBAA8B;IAExD;;OAEG;IACO,oBAAoB,yCAAgD;IAC9E;;OAEG;IACO,sBAAsB,yCAAgD;IAEzE,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAClC,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAEvB,sBAAsB,EAAE,OAAO,CAAQ;IACvC,gCAAgC,EAAE,OAAO,CAAQ;IAEjD,oBAAoB,EAAE,OAAO,CAAQ;IACrC,8BAA8B,EAAE,OAAO,CAAQ;IAExD,yBAAyB,EAAE,OAAO,CAAS;IAC3C,uBAAuB,EAAE,OAAO,CAAS;gBAE3B,KAAK,EAAE,iBAAiB;IAIa,kBAAkB,EAAG,gBAAgB,CAAC;IAEhG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAW;IAGrC,OAAO,CAAC,SAAS,CAAa;IAC9B,IAAW,oBAAoB,IAAI,MAAM,CAExC;IAED;;;OAGG;IACH,IAAW,6BAA6B,IAAI,MAAM,CAQjD;IAED,OAAO,CAAC,qBAAqB,CAAc;IAC3C,OAAO,CAAC,oBAAoB,CAAa;IACzC,SAAS,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAUxD,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,SAAS;IAMjB,eAAe;IAcR,cAAc;IAGrB,OAAO,CAAC,cAAc,CAAuB;IAC7C,IAAW,OAAO,IAAI,MAAM,CA6B3B;IAED,IAAW,cAAc,IAAI,+BAA+B,GAAG,SAAS,CAOvE;IAED,IAAW,WAAW,IAAI,OAAO,CAEhC;IAEM,mCAAmC,CAAC,QAAQ,EAAE,MAAM;IAIpD,iCAAiC,CAAC,QAAQ,EAAE,MAAM;IAIlD,yBAAyB;IAGzB,uBAAuB;IAI9B,SAAS,CAAC,uBAAuB;IAuC1B,kBAAkB,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS;IAK/C,qBAAqB,IAAI,MAAM;IActC,IAAW,kBAAkB,IAAI,OAAO,CASvC;IAED,IAAW,4BAA4B,IAAI,OAAO,CAGjD;IACD,IAAW,2BAA2B,IAAI,OAAO,CAGhD;yCA/QQ,0BAA0B;2CAA1B,0BAA0B;CAgRtC"}
1
+ {"version":3,"file":"skip-single-message.component.d.ts","sourceRoot":"","sources":["../../../src/lib/skip-single-message/skip-single-message.component.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,21 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  import { Component, EventEmitter, Input, Output, ViewChild, ViewContainerRef } from '@angular/core';
11
+ import { LogError } from '@memberjunction/core';
2
12
  import { SkipResponsePhase } from '@memberjunction/skip-types';
3
13
  import { SkipDynamicReportWrapperComponent } from '../dynamic-report/skip-dynamic-report-wrapper';
4
14
  import { BaseAngularComponent } from '@memberjunction/ng-base-types';
5
15
  import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@progress/kendo-angular-indicators";
16
+ import * as i1 from "@memberjunction/ng-notifications";
17
+ import * as i2 from "@angular/common";
18
+ import * as i3 from "@progress/kendo-angular-indicators";
8
19
  const _c0 = ["reportContainer"];
9
20
  function SkipSingleMessageComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
10
21
  i0.ɵɵelement(0, "img", 3);
@@ -17,7 +28,7 @@ function SkipSingleMessageComponent_Conditional_4_Template(rf, ctx) { if (rf & 1
17
28
  } }
18
29
  function SkipSingleMessageComponent_Conditional_9_Template(rf, ctx) { if (rf & 1) {
19
30
  i0.ɵɵelement(0, "kendo-loader");
20
- i0.ɵɵelementStart(1, "span", 9);
31
+ i0.ɵɵelementStart(1, "span", 11);
21
32
  i0.ɵɵtext(2);
22
33
  i0.ɵɵelementEnd();
23
34
  } if (rf & 2) {
@@ -27,16 +38,16 @@ function SkipSingleMessageComponent_Conditional_9_Template(rf, ctx) { if (rf & 1
27
38
  } }
28
39
  function SkipSingleMessageComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
29
40
  const _r2 = i0.ɵɵgetCurrentView();
30
- i0.ɵɵelementStart(0, "div", 7)(1, "span", 10);
41
+ i0.ɵɵelementStart(0, "div", 7)(1, "span", 12);
31
42
  i0.ɵɵlistener("click", function SkipSingleMessageComponent_Conditional_11_Template_span_click_1_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.RaiseMessageEditRequest()); });
32
43
  i0.ɵɵelementEnd();
33
- i0.ɵɵelementStart(2, "span", 11);
44
+ i0.ɵɵelementStart(2, "span", 13);
34
45
  i0.ɵɵlistener("click", function SkipSingleMessageComponent_Conditional_11_Template_span_click_2_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.RaiseMessageDeleteRequest()); });
35
46
  i0.ɵɵelementEnd()();
36
47
  } }
37
48
  function SkipSingleMessageComponent_div_14_div_4_Template(rf, ctx) { if (rf & 1) {
38
49
  const _r3 = i0.ɵɵgetCurrentView();
39
- i0.ɵɵelementStart(0, "div", 16);
50
+ i0.ɵɵelementStart(0, "div", 18);
40
51
  i0.ɵɵlistener("click", function SkipSingleMessageComponent_div_14_div_4_Template_div_click_0_listener() { const question_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.RaiseSuggestedQuestionSelectedEvent(question_r4)); });
41
52
  i0.ɵɵtext(1);
42
53
  i0.ɵɵelementEnd();
@@ -46,11 +57,11 @@ function SkipSingleMessageComponent_div_14_div_4_Template(rf, ctx) { if (rf & 1)
46
57
  i0.ɵɵtextInterpolate1(" ", question_r4, " ");
47
58
  } }
48
59
  function SkipSingleMessageComponent_div_14_Template(rf, ctx) { if (rf & 1) {
49
- i0.ɵɵelementStart(0, "div", 12)(1, "div", 13);
60
+ i0.ɵɵelementStart(0, "div", 14)(1, "div", 15);
50
61
  i0.ɵɵtext(2, "Suggested Questions");
51
62
  i0.ɵɵelementEnd();
52
- i0.ɵɵelementStart(3, "div", 14);
53
- i0.ɵɵtemplate(4, SkipSingleMessageComponent_div_14_div_4_Template, 2, 1, "div", 15);
63
+ i0.ɵɵelementStart(3, "div", 16);
64
+ i0.ɵɵtemplate(4, SkipSingleMessageComponent_div_14_div_4_Template, 2, 1, "div", 17);
54
65
  i0.ɵɵelementEnd()();
55
66
  } if (rf & 2) {
56
67
  const ctx_r0 = i0.ɵɵnextContext();
@@ -59,7 +70,7 @@ function SkipSingleMessageComponent_div_14_Template(rf, ctx) { if (rf & 1) {
59
70
  } }
60
71
  function SkipSingleMessageComponent_div_15_div_2_Template(rf, ctx) { if (rf & 1) {
61
72
  const _r5 = i0.ɵɵgetCurrentView();
62
- i0.ɵɵelementStart(0, "div", 16);
73
+ i0.ɵɵelementStart(0, "div", 18);
63
74
  i0.ɵɵlistener("click", function SkipSingleMessageComponent_div_15_div_2_Template_div_click_0_listener() { const answer_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.RaiseSuggestedAnswerSelectedEvent(answer_r6)); });
64
75
  i0.ɵɵtext(1);
65
76
  i0.ɵɵelementEnd();
@@ -69,18 +80,50 @@ function SkipSingleMessageComponent_div_15_div_2_Template(rf, ctx) { if (rf & 1)
69
80
  i0.ɵɵtextInterpolate1(" ", answer_r6, " ");
70
81
  } }
71
82
  function SkipSingleMessageComponent_div_15_Template(rf, ctx) { if (rf & 1) {
72
- i0.ɵɵelementStart(0, "div", 12)(1, "div", 17);
73
- i0.ɵɵtemplate(2, SkipSingleMessageComponent_div_15_div_2_Template, 2, 1, "div", 15);
83
+ i0.ɵɵelementStart(0, "div", 14)(1, "div", 19);
84
+ i0.ɵɵtemplate(2, SkipSingleMessageComponent_div_15_div_2_Template, 2, 1, "div", 17);
74
85
  i0.ɵɵelementEnd()();
75
86
  } if (rf & 2) {
76
87
  const ctx_r0 = i0.ɵɵnextContext();
77
88
  i0.ɵɵadvance(2);
78
89
  i0.ɵɵproperty("ngForOf", ctx_r0.SuggestedAnswers);
79
90
  } }
91
+ function SkipSingleMessageComponent_Conditional_16_Template(rf, ctx) { if (rf & 1) {
92
+ const _r7 = i0.ɵɵgetCurrentView();
93
+ i0.ɵɵelementStart(0, "div", 9)(1, "div", 20);
94
+ i0.ɵɵtext(2, "Was this response helpful?");
95
+ i0.ɵɵelementEnd();
96
+ i0.ɵɵelementStart(3, "div", 21)(4, "span", 22);
97
+ i0.ɵɵlistener("click", function SkipSingleMessageComponent_Conditional_16_Template_span_click_4_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.RateMessage(10)); });
98
+ i0.ɵɵelementEnd();
99
+ i0.ɵɵelementStart(5, "span", 23);
100
+ i0.ɵɵlistener("click", function SkipSingleMessageComponent_Conditional_16_Template_span_click_5_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.RateMessage(0)); });
101
+ i0.ɵɵelementEnd()()();
102
+ } }
103
+ function SkipSingleMessageComponent_Conditional_17_Conditional_3_Template(rf, ctx) { if (rf & 1) {
104
+ i0.ɵɵelement(0, "span", 25);
105
+ } }
106
+ function SkipSingleMessageComponent_Conditional_17_Conditional_4_Template(rf, ctx) { if (rf & 1) {
107
+ i0.ɵɵelement(0, "span", 26);
108
+ } }
109
+ function SkipSingleMessageComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
110
+ i0.ɵɵelementStart(0, "div", 10)(1, "span", 24);
111
+ i0.ɵɵtext(2);
112
+ i0.ɵɵelementEnd();
113
+ i0.ɵɵtemplate(3, SkipSingleMessageComponent_Conditional_17_Conditional_3_Template, 1, 0, "span", 25)(4, SkipSingleMessageComponent_Conditional_17_Conditional_4_Template, 1, 0, "span", 26);
114
+ i0.ɵɵelementEnd();
115
+ } if (rf & 2) {
116
+ const ctx_r0 = i0.ɵɵnextContext();
117
+ i0.ɵɵadvance(2);
118
+ i0.ɵɵtextInterpolate(ctx_r0.RatingStatusText);
119
+ i0.ɵɵadvance();
120
+ i0.ɵɵconditional(ctx_r0.ConversationDetailRecord.UserRating === 10 ? 3 : 4);
121
+ } }
80
122
  export class SkipSingleMessageComponent extends BaseAngularComponent {
81
- constructor(cdRef) {
123
+ constructor(cdRef, notificationService) {
82
124
  super();
83
125
  this.cdRef = cdRef;
126
+ this.notificationService = notificationService;
84
127
  /**
85
128
  * This variable should be set by the component instantiating this one, it should be bound to the state
86
129
  * of the conversation processing, so that this component can handle its internal functionality correctly,
@@ -103,6 +146,18 @@ export class SkipSingleMessageComponent extends BaseAngularComponent {
103
146
  * If set to true, user messages will be shown with a button to allow delete/edit
104
147
  */
105
148
  this.ShowMessageEditPanel = true;
149
+ /**
150
+ * If set to true, AI messages that are the last in the conversation will show thumbs up/down rating
151
+ */
152
+ this.ShowMessageRating = true;
153
+ /**
154
+ * Indicates if the message is currently being rated and saved to the database
155
+ */
156
+ this.RatingBeingSaved = false;
157
+ /**
158
+ * This is an internal property that is turned on just after a user succesfully rates a message, and is never true otherwise. This allows the UI to show a thank you message for the rating.
159
+ */
160
+ this.UserJustRated = false;
106
161
  this.SuggestedQuestionSelected = new EventEmitter();
107
162
  this.SuggestedAnswerSelected = new EventEmitter();
108
163
  /**
@@ -239,6 +294,51 @@ export class SkipSingleMessageComponent extends BaseAngularComponent {
239
294
  RaiseMessageEditRequest() {
240
295
  this.EditMessageRequested.emit(this.ConversationDetailRecord);
241
296
  }
297
+ /**
298
+ * Rate the AI response with either thumbs up (10) or thumbs down (0)
299
+ * @param rating The rating to assign, 10 for thumbs up, 0 for thumbs down
300
+ */
301
+ RateMessage(rating) {
302
+ return __awaiter(this, void 0, void 0, function* () {
303
+ if (!this.ConversationDetailRecord || !this.IsAIMessage) {
304
+ return;
305
+ }
306
+ try {
307
+ this.RatingBeingSaved = true;
308
+ // Update the UserRating property in the local object
309
+ this.ConversationDetailRecord.UserRating = rating;
310
+ let objToSave = this.ConversationDetailRecord;
311
+ if (undefined === this.ConversationDetailRecord.Save) {
312
+ // this means that the current object is not a ConversationDetailEntity, so we can't save it directly, we must load an object first
313
+ const p = this.ProviderToUse;
314
+ const savedID = this.ConversationDetailRecord.ID;
315
+ objToSave = yield p.GetEntityObject("Conversation Details", p.CurrentUser);
316
+ yield objToSave.Load(savedID);
317
+ objToSave.UserRating = rating;
318
+ // now we have a real object, we can save it below
319
+ }
320
+ // Save the updated record
321
+ if (yield objToSave.Save()) {
322
+ // Force change detection
323
+ this.UserJustRated = true; // show the thank you message
324
+ // set a timer to wait for 10 seconds and after that we'll set the UserJustRated to false
325
+ setTimeout(() => {
326
+ this.UserJustRated = false;
327
+ }, 10000);
328
+ }
329
+ else {
330
+ throw objToSave.LatestResult.Message;
331
+ }
332
+ }
333
+ catch (error) {
334
+ LogError('Error rating message:' + error);
335
+ this.notificationService.CreateSimpleNotification('Error rating message', "error", 3500);
336
+ }
337
+ finally {
338
+ this.RatingBeingSaved = false;
339
+ }
340
+ });
341
+ }
242
342
  AddReportToConversation() {
243
343
  var _a;
244
344
  const detail = this.ConversationDetailRecord;
@@ -311,15 +411,41 @@ export class SkipSingleMessageComponent extends BaseAngularComponent {
311
411
  const result = this.ConversationMessages.indexOf(this.ConversationDetailRecord) === this.ConversationMessages.length - 1;
312
412
  return result;
313
413
  }
414
+ /**
415
+ * Determines if we should show the rating UI for this message
416
+ */
417
+ get ShouldShowRating() {
418
+ return this.ShowMessageRating &&
419
+ this.IsAIMessage &&
420
+ this.IsLastMessageInConversation &&
421
+ !this.ConversationProcessing &&
422
+ this.ConversationDetailRecord.UserRating === null &&
423
+ !!this.AnalysisResult && // only show this if we have an analysis result meaning this is a message that shows a report. we don't want to ask for ratings in other AI messages
424
+ !this.RatingBeingSaved;
425
+ }
426
+ /**
427
+ * Gets a descriptive string based on the user rating
428
+ */
429
+ get RatingStatusText() {
430
+ if (this.ConversationDetailRecord.UserRating === null) {
431
+ return '';
432
+ }
433
+ else if (this.ConversationDetailRecord.UserRating === 10) {
434
+ return 'Thanks for the positive feedback!';
435
+ }
436
+ else {
437
+ return 'Thanks for your feedback!';
438
+ }
439
+ }
314
440
  }
315
441
  SkipSingleMessageComponent._detailHtml = {};
316
- SkipSingleMessageComponent.ɵfac = function SkipSingleMessageComponent_Factory(t) { return new (t || SkipSingleMessageComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
442
+ SkipSingleMessageComponent.ɵfac = function SkipSingleMessageComponent_Factory(t) { return new (t || SkipSingleMessageComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.MJNotificationService)); };
317
443
  SkipSingleMessageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SkipSingleMessageComponent, selectors: [["mj-skip-single-message"]], viewQuery: function SkipSingleMessageComponent_Query(rf, ctx) { if (rf & 1) {
318
444
  i0.ɵɵviewQuery(_c0, 5, ViewContainerRef);
319
445
  } if (rf & 2) {
320
446
  let _t;
321
447
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.reportContainerRef = _t.first);
322
- } }, inputs: { ConversationRecord: "ConversationRecord", ConversationDetailRecord: "ConversationDetailRecord", ConversationUser: "ConversationUser", DataContext: "DataContext", ConversationMessages: "ConversationMessages", ConversationProcessing: "ConversationProcessing", SkipMarkOnlyLogoURL: "SkipMarkOnlyLogoURL", UserImage: "UserImage", DefaultUserImage: "DefaultUserImage", ShowMessageEditPanel: "ShowMessageEditPanel", ShowSuggestedQuestions: "ShowSuggestedQuestions", HideSuggestedQuestionsAfterClick: "HideSuggestedQuestionsAfterClick", ShowSuggestedAnswers: "ShowSuggestedAnswers", HideSuggestedAnswersAfterClick: "HideSuggestedAnswersAfterClick" }, outputs: { SuggestedQuestionSelected: "SuggestedQuestionSelected", SuggestedAnswerSelected: "SuggestedAnswerSelected", NavigateToMatchingReport: "NavigateToMatchingReport", NewReportCreated: "NewReportCreated", EditMessageRequested: "EditMessageRequested", DeleteMessageRequested: "DeleteMessageRequested" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 16, vars: 9, consts: [["reportContainer", ""], [1, "message-row", 3, "ngClass"], [1, "message-image"], [1, "avatar", 3, "src"], [1, "fa-solid", "fa-user", "default-user-image"], [1, "message", 3, "id"], [1, "message-user-name"], [1, "message-actions"], ["class", "suggested-container", 4, "ngIf"], [1, "elapsed-time"], [1, "fa-solid", "fa-edit", 3, "click"], [1, "fa-solid", "fa-trash", 3, "click"], [1, "suggested-container"], [1, "suggested-header"], [1, "suggested-questions-list"], ["class", "suggested-item", 3, "click", 4, "ngFor", "ngForOf"], [1, "suggested-item", 3, "click"], [1, "suggested-answers-list"]], template: function SkipSingleMessageComponent_Template(rf, ctx) { if (rf & 1) {
448
+ } }, inputs: { ConversationRecord: "ConversationRecord", ConversationDetailRecord: "ConversationDetailRecord", ConversationUser: "ConversationUser", DataContext: "DataContext", ConversationMessages: "ConversationMessages", ConversationProcessing: "ConversationProcessing", SkipMarkOnlyLogoURL: "SkipMarkOnlyLogoURL", UserImage: "UserImage", DefaultUserImage: "DefaultUserImage", ShowMessageEditPanel: "ShowMessageEditPanel", ShowMessageRating: "ShowMessageRating", ShowSuggestedQuestions: "ShowSuggestedQuestions", HideSuggestedQuestionsAfterClick: "HideSuggestedQuestionsAfterClick", ShowSuggestedAnswers: "ShowSuggestedAnswers", HideSuggestedAnswersAfterClick: "HideSuggestedAnswersAfterClick" }, outputs: { SuggestedQuestionSelected: "SuggestedQuestionSelected", SuggestedAnswerSelected: "SuggestedAnswerSelected", NavigateToMatchingReport: "NavigateToMatchingReport", NewReportCreated: "NewReportCreated", EditMessageRequested: "EditMessageRequested", DeleteMessageRequested: "DeleteMessageRequested" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 18, vars: 11, consts: [["reportContainer", ""], [1, "message-row", 3, "ngClass"], [1, "message-image"], [1, "avatar", 3, "src"], [1, "fa-solid", "fa-user", "default-user-image"], [1, "message", 3, "id"], [1, "message-user-name"], [1, "message-actions"], ["class", "suggested-container", 4, "ngIf"], [1, "message-rating"], [1, "rating-feedback"], [1, "elapsed-time"], [1, "fa-solid", "fa-edit", 3, "click"], [1, "fa-solid", "fa-trash", 3, "click"], [1, "suggested-container"], [1, "suggested-header"], [1, "suggested-questions-list"], ["class", "suggested-item", 3, "click", 4, "ngFor", "ngForOf"], [1, "suggested-item", 3, "click"], [1, "suggested-answers-list"], [1, "rating-prompt"], [1, "rating-buttons"], ["title", "This was helpful", 1, "fa-solid", "fa-thumbs-up", 3, "click"], ["title", "This wasn't helpful", 1, "fa-solid", "fa-thumbs-down", 3, "click"], [1, "rating-status-text"], [1, "fa-solid", "fa-thumbs-up", "rating-icon-selected"], [1, "fa-solid", "fa-thumbs-down", "rating-icon-selected"]], template: function SkipSingleMessageComponent_Template(rf, ctx) { if (rf & 1) {
323
449
  i0.ɵɵelementStart(0, "div")(1, "div", 1)(2, "div", 2);
324
450
  i0.ɵɵtemplate(3, SkipSingleMessageComponent_Conditional_3_Template, 1, 1, "img", 3)(4, SkipSingleMessageComponent_Conditional_4_Template, 1, 0, "span", 4);
325
451
  i0.ɵɵelementEnd();
@@ -332,7 +458,7 @@ SkipSingleMessageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
332
458
  i0.ɵɵtemplate(11, SkipSingleMessageComponent_Conditional_11_Template, 3, 0, "div", 7);
333
459
  i0.ɵɵelementEnd();
334
460
  i0.ɵɵelement(12, "div", null, 0);
335
- i0.ɵɵtemplate(14, SkipSingleMessageComponent_div_14_Template, 5, 1, "div", 8)(15, SkipSingleMessageComponent_div_15_Template, 3, 1, "div", 8);
461
+ i0.ɵɵtemplate(14, SkipSingleMessageComponent_div_14_Template, 5, 1, "div", 8)(15, SkipSingleMessageComponent_div_15_Template, 3, 1, "div", 8)(16, SkipSingleMessageComponent_Conditional_16_Template, 6, 0, "div", 9)(17, SkipSingleMessageComponent_Conditional_17_Template, 5, 2, "div", 10);
336
462
  i0.ɵɵelementEnd()()();
337
463
  } if (rf & 2) {
338
464
  i0.ɵɵadvance();
@@ -353,11 +479,15 @@ SkipSingleMessageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
353
479
  i0.ɵɵproperty("ngIf", ctx.IsAIMessage && ctx.SuggestedQuestions.length > 0 && ctx.IsLastMessageInConversation && ctx.ShowSuggestedQuestions && (!ctx.HideSuggestedQuestionsAfterClick || !ctx.SuggestedQuestionsClicked));
354
480
  i0.ɵɵadvance();
355
481
  i0.ɵɵproperty("ngIf", ctx.IsAIMessage && ctx.SuggestedAnswers.length > 0 && ctx.IsLastMessageInConversation && ctx.ShowSuggestedAnswers && (!ctx.HideSuggestedAnswersAfterClick || !ctx.SuggestedAnswersClicked));
356
- } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i2.LoaderComponent], styles: [".message-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: start; \n\n \n\n justify-content: center; \n\n \n padding: 10px;\n}\n\n.message[_ngcontent-%COMP%] {\n word-wrap: break-word;\n width: 100%;\n margin-right: 20px;\n padding-bottom: 25px;\n @media (min-width: 1280px) {\n max-width: 48rem;\n }\n}\n\n.message-actions[_ngcontent-%COMP%] {\n margin-top: 5px;\n top: 0; \n\n left: 0; \n\n display: none; \n\n}\n\n.message[_ngcontent-%COMP%]:hover .message-actions[_ngcontent-%COMP%] {\n display: flex; \n\n}\n \n.message-actions[_ngcontent-%COMP%] > span[_ngcontent-%COMP%] {\n margin-right: 5px;\n color: #6e7072;\n cursor: pointer;\n}\n\n.message-image[_ngcontent-%COMP%] {\n max-width: 24px;\n max-height: 24px;\n margin-right: 10px;\n margin-left: 5px;\n margin-bottom: 10px;\n}\n.message-image[_ngcontent-%COMP%] > img[_ngcontent-%COMP%] {\n max-width: 100%;\n max-height: 100%;\n}\n\n\n\n.error-message[_ngcontent-%COMP%] {\n background-color:lightpink;\n}\n\n.ai-message-in-progress[_ngcontent-%COMP%] {\n \n\n opacity: 0.9;\n}\n\n.elapsed-time[_ngcontent-%COMP%] {\n font-style: regular;\n font-size: 0.8rem;\n color: #124be7;\n margin-left: 5px;\n margin-right: 5px;\n}\n\n.message-user-name[_ngcontent-%COMP%] {\n font-weight: 600;\n margin-top: 0px;\n margin-bottom: 10px;\n padding-bottom: 7px;\n height: .5rem;\n}\n\n.suggested-container[_ngcontent-%COMP%] {\n margin-right: 20px; \n\n display: flex;\n flex-direction: column;\n align-items: left;\n justify-content: left;\n padding: 10px;\n margin-top: 10px;\n margin-bottom: 10px;\n border: solid 1px rgba(28, 103, 202, 0.08);\n background-color: rgb(241, 236, 227);\n}\n.suggested-header[_ngcontent-%COMP%] {\n font-weight: 600;\n margin-bottom: 10px;\n}\n.suggested-questions-list[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n}\n.suggested-answers-list[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: none;\n}\n.suggested-item[_ngcontent-%COMP%] {\n margin: 5px;\n padding: 5px 10px;\n border-radius: 5px;\n background-color: #f5f5f5;\n cursor: pointer;\n transition: background-color 0.3s;\n}\n.suggested-item[_ngcontent-%COMP%]:hover {\n background-color: #96d0f1;\n}\n\n.default-user-image[_ngcontent-%COMP%] {\n width: 24px;\n font-size: 22px;\n}"] });
482
+ i0.ɵɵadvance();
483
+ i0.ɵɵconditional(!ctx.IsTemporaryMessage && ctx.ShouldShowRating ? 16 : -1);
484
+ i0.ɵɵadvance();
485
+ i0.ɵɵconditional(!ctx.IsTemporaryMessage && ctx.IsAIMessage && ctx.ConversationDetailRecord.UserRating !== null && ctx.UserJustRated ? 17 : -1);
486
+ } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.LoaderComponent], styles: [".message-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: start; \n\n \n\n justify-content: center; \n\n \n padding: 10px;\n}\n\n.message[_ngcontent-%COMP%] {\n word-wrap: break-word;\n width: 100%;\n margin-right: 20px;\n padding-bottom: 25px;\n @media (min-width: 1280px) {\n max-width: 48rem;\n }\n}\n\n.message-actions[_ngcontent-%COMP%] {\n margin-top: 5px;\n top: 0; \n\n left: 0; \n\n display: none; \n\n}\n\n.message[_ngcontent-%COMP%]:hover .message-actions[_ngcontent-%COMP%] {\n display: flex; \n\n}\n \n.message-actions[_ngcontent-%COMP%] > span[_ngcontent-%COMP%] {\n margin-right: 5px;\n color: #6e7072;\n cursor: pointer;\n}\n\n.message-image[_ngcontent-%COMP%] {\n max-width: 24px;\n max-height: 24px;\n margin-right: 10px;\n margin-left: 5px;\n margin-bottom: 10px;\n}\n.message-image[_ngcontent-%COMP%] > img[_ngcontent-%COMP%] {\n max-width: 100%;\n max-height: 100%;\n}\n\n\n\n.error-message[_ngcontent-%COMP%] {\n background-color:lightpink;\n}\n\n.ai-message-in-progress[_ngcontent-%COMP%] {\n \n\n opacity: 0.9;\n}\n\n.elapsed-time[_ngcontent-%COMP%] {\n font-style: regular;\n font-size: 0.8rem;\n color: #124be7;\n margin-left: 5px;\n margin-right: 5px;\n}\n\n.message-user-name[_ngcontent-%COMP%] {\n font-weight: 600;\n margin-top: 0px;\n margin-bottom: 10px;\n padding-bottom: 7px;\n height: .5rem;\n}\n\n.suggested-container[_ngcontent-%COMP%] {\n margin-right: 20px; \n\n display: flex;\n flex-direction: column;\n align-items: left;\n justify-content: left;\n padding: 10px;\n margin-top: 10px;\n margin-bottom: 10px;\n border: solid 1px rgba(28, 103, 202, 0.08);\n background-color: rgb(241, 236, 227);\n}\n.suggested-header[_ngcontent-%COMP%] {\n font-weight: 600;\n margin-bottom: 10px;\n}\n.suggested-questions-list[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n}\n.suggested-answers-list[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: none;\n}\n.suggested-item[_ngcontent-%COMP%] {\n margin: 5px;\n padding: 5px 10px;\n border-radius: 5px;\n background-color: #f5f5f5;\n cursor: pointer;\n transition: background-color 0.3s;\n}\n.suggested-item[_ngcontent-%COMP%]:hover {\n background-color: #96d0f1;\n}\n\n.default-user-image[_ngcontent-%COMP%] {\n width: 24px;\n font-size: 22px;\n}\n\n\n\n.message-rating[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n margin-top: 15px;\n padding: 8px 12px;\n background-color: #f5f5f5;\n border-radius: 8px;\n width: fit-content;\n}\n\n.rating-prompt[_ngcontent-%COMP%] {\n font-size: 0.9rem;\n margin-bottom: 8px;\n color: #555;\n}\n\n.rating-buttons[_ngcontent-%COMP%] {\n display: flex;\n gap: 15px;\n}\n\n.rating-buttons[_ngcontent-%COMP%] span[_ngcontent-%COMP%] {\n font-size: 1.2rem;\n cursor: pointer;\n padding: 5px;\n border-radius: 4px;\n transition: all 0.2s ease;\n}\n\n.fa-thumbs-up[_ngcontent-%COMP%] {\n color: #4caf50;\n}\n\n.fa-thumbs-up[_ngcontent-%COMP%]:hover {\n background-color: rgba(76, 175, 80, 0.1);\n transform: scale(1.1);\n}\n\n.fa-thumbs-down[_ngcontent-%COMP%] {\n color: #f44336;\n}\n\n.fa-thumbs-down[_ngcontent-%COMP%]:hover {\n background-color: rgba(244, 67, 54, 0.1);\n transform: scale(1.1);\n}\n\n.rating-feedback[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n margin-top: 12px;\n color: #666;\n font-size: 0.85rem;\n font-style: italic;\n}\n\n.rating-status-text[_ngcontent-%COMP%] {\n margin-right: 8px;\n}\n\n.rating-icon-selected[_ngcontent-%COMP%] {\n font-size: 0.9rem;\n}"] });
357
487
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SkipSingleMessageComponent, [{
358
488
  type: Component,
359
- args: [{ selector: 'mj-skip-single-message', template: "<div>\n <div class=\"message-row\" [ngClass]=\"GetMessageRowCssClass()\" > \n <div class=\"message-image\">\n @if (GetUserImageSource()) {\n <img [src]=\"GetUserImageSource()\" class=\"avatar\" />\n }\n @else {\n <span class=\"fa-solid fa-user default-user-image\"></span>\n }\n </div>\n <div class=\"message\" \n [id]=\"'skip_message_' + ConversationDetailRecord.ID\">\n <div class=\"message-user-name\">{{IsAIMessage ? 'Skip' : (ConversationUser ? ConversationUser.FirstName + ' ' + ConversationUser.LastName : 'You')}}</div>\n <div>\n @if(IsTemporaryMessage) {\n <kendo-loader></kendo-loader>\n <span class=\"elapsed-time\">{{ElapsedTimeSinceLoadFormatted}}</span>\n }\n {{Message}}\n @if(!IsTemporaryMessage && !IsAIMessage && ShowMessageEditPanel && !ConversationProcessing) {\n <!-- this is a user message, so we need to offer the ability to edit/delete the message. -->\n <div class=\"message-actions\">\n <span class=\"fa-solid fa-edit\" (click)=\"RaiseMessageEditRequest()\"></span>\n <span class=\"fa-solid fa-trash\" (click)=\"RaiseMessageDeleteRequest()\"></span>\n </div>\n }\n </div>\n <div #reportContainer>\n <!-- this is where the report will go - dynamically instantiated -->\n </div>\n <div *ngIf=\"IsAIMessage && \n SuggestedQuestions.length > 0 && \n IsLastMessageInConversation && \n ShowSuggestedQuestions && \n (!HideSuggestedQuestionsAfterClick || !SuggestedQuestionsClicked)\" class=\"suggested-container\">\n <div class=\"suggested-header\">Suggested Questions</div>\n <div class=\"suggested-questions-list\">\n <div class=\"suggested-item\" *ngFor=\"let question of SuggestedQuestions\" (click)=\"RaiseSuggestedQuestionSelectedEvent(question)\">\n {{question}}\n </div>\n </div>\n </div>\n <div *ngIf=\"IsAIMessage && \n SuggestedAnswers.length > 0 && \n IsLastMessageInConversation &&\n ShowSuggestedAnswers && \n (!HideSuggestedAnswersAfterClick || !SuggestedAnswersClicked)\" class=\"suggested-container\">\n <div class=\"suggested-answers-list\">\n <div class=\"suggested-item\" *ngFor=\"let answer of SuggestedAnswers\" (click)=\"RaiseSuggestedAnswerSelectedEvent(answer)\">\n {{answer}}\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: [".message-row {\n display: flex;\n align-items: start; /* if you want to align them at the top */\n /* border-bottom: solid 1px rgba(0, 0, 0, 0.08); */\n justify-content: center; /* Center align horizontally */\n \n padding: 10px;\n}\n\n.message {\n word-wrap: break-word;\n width: 100%;\n margin-right: 20px;\n padding-bottom: 25px;\n @media (min-width: 1280px) {\n max-width: 48rem;\n }\n}\n\n.message-actions {\n margin-top: 5px;\n top: 0; /* Align to the top of the parent container */\n left: 0; /* Align to the right edge */\n display: none; /* Hide by default */\n}\n\n.message:hover .message-actions {\n display: flex; /* Show the actions when the message is hovered */\n}\n \n.message-actions > span {\n margin-right: 5px;\n color: #6e7072;\n cursor: pointer;\n}\n\n.message-image {\n max-width: 24px;\n max-height: 24px;\n margin-right: 10px;\n margin-left: 5px;\n margin-bottom: 10px;\n}\n.message-image > img {\n max-width: 100%;\n max-height: 100%;\n}\n\n\n\n.error-message {\n background-color:lightpink;\n}\n\n.ai-message-in-progress {\n /* font-style: italic; */\n opacity: 0.9;\n}\n\n.elapsed-time {\n font-style: regular;\n font-size: 0.8rem;\n color: #124be7;\n margin-left: 5px;\n margin-right: 5px;\n}\n\n.message-user-name {\n font-weight: 600;\n margin-top: 0px;\n margin-bottom: 10px;\n padding-bottom: 7px;\n height: .5rem;\n}\n\n.suggested-container {\n margin-right: 20px; /*match the message class*/\n display: flex;\n flex-direction: column;\n align-items: left;\n justify-content: left;\n padding: 10px;\n margin-top: 10px;\n margin-bottom: 10px;\n border: solid 1px rgba(28, 103, 202, 0.08);\n background-color: rgb(241, 236, 227);\n}\n.suggested-header {\n font-weight: 600;\n margin-bottom: 10px;\n}\n.suggested-questions-list {\n display: flex;\n flex-wrap: wrap;\n}\n.suggested-answers-list {\n display: flex;\n flex-wrap: none;\n}\n.suggested-item {\n margin: 5px;\n padding: 5px 10px;\n border-radius: 5px;\n background-color: #f5f5f5;\n cursor: pointer;\n transition: background-color 0.3s;\n}\n.suggested-item:hover {\n background-color: #96d0f1;\n}\n\n.default-user-image {\n width: 24px;\n font-size: 22px;\n}"] }]
360
- }], () => [{ type: i0.ChangeDetectorRef }], { ConversationRecord: [{
489
+ args: [{ selector: 'mj-skip-single-message', template: "<div>\n <div class=\"message-row\" [ngClass]=\"GetMessageRowCssClass()\" > \n <div class=\"message-image\">\n @if (GetUserImageSource()) {\n <img [src]=\"GetUserImageSource()\" class=\"avatar\" />\n }\n @else {\n <span class=\"fa-solid fa-user default-user-image\"></span>\n }\n </div>\n <div class=\"message\" \n [id]=\"'skip_message_' + ConversationDetailRecord.ID\">\n <div class=\"message-user-name\">{{IsAIMessage ? 'Skip' : (ConversationUser ? ConversationUser.FirstName + ' ' + ConversationUser.LastName : 'You')}}</div>\n <div>\n @if(IsTemporaryMessage) {\n <kendo-loader></kendo-loader>\n <span class=\"elapsed-time\">{{ElapsedTimeSinceLoadFormatted}}</span>\n }\n {{Message}}\n @if(!IsTemporaryMessage && !IsAIMessage && ShowMessageEditPanel && !ConversationProcessing) {\n <!-- this is a user message, so we need to offer the ability to edit/delete the message. -->\n <div class=\"message-actions\">\n <span class=\"fa-solid fa-edit\" (click)=\"RaiseMessageEditRequest()\"></span>\n <span class=\"fa-solid fa-trash\" (click)=\"RaiseMessageDeleteRequest()\"></span>\n </div>\n }\n </div>\n <div #reportContainer>\n <!-- this is where the report will go - dynamically instantiated -->\n </div>\n <div *ngIf=\"IsAIMessage && \n SuggestedQuestions.length > 0 && \n IsLastMessageInConversation && \n ShowSuggestedQuestions && \n (!HideSuggestedQuestionsAfterClick || !SuggestedQuestionsClicked)\" class=\"suggested-container\">\n <div class=\"suggested-header\">Suggested Questions</div>\n <div class=\"suggested-questions-list\">\n <div class=\"suggested-item\" *ngFor=\"let question of SuggestedQuestions\" (click)=\"RaiseSuggestedQuestionSelectedEvent(question)\">\n {{question}}\n </div>\n </div>\n </div>\n <div *ngIf=\"IsAIMessage && \n SuggestedAnswers.length > 0 && \n IsLastMessageInConversation &&\n ShowSuggestedAnswers && \n (!HideSuggestedAnswersAfterClick || !SuggestedAnswersClicked)\" class=\"suggested-container\">\n <div class=\"suggested-answers-list\">\n <div class=\"suggested-item\" *ngFor=\"let answer of SuggestedAnswers\" (click)=\"RaiseSuggestedAnswerSelectedEvent(answer)\">\n {{answer}}\n </div>\n </div>\n </div>\n\n <!-- Rating UI for AI messages that haven't been rated yet -->\n @if(!IsTemporaryMessage && ShouldShowRating) {\n <div class=\"message-rating\">\n <div class=\"rating-prompt\">Was this response helpful?</div>\n <div class=\"rating-buttons\">\n <span class=\"fa-solid fa-thumbs-up\" (click)=\"RateMessage(10)\" title=\"This was helpful\"></span>\n <span class=\"fa-solid fa-thumbs-down\" (click)=\"RateMessage(0)\" title=\"This wasn't helpful\"></span>\n </div>\n </div>\n }\n <!-- Show rating feedback after user has rated - ONLY AFTER THE USER JUST FINISHED RATING, never in future refreshes of the window -->\n @if(!IsTemporaryMessage && IsAIMessage && ConversationDetailRecord.UserRating !== null && UserJustRated) {\n <div class=\"rating-feedback\">\n <span class=\"rating-status-text\">{{RatingStatusText}}</span>\n @if(ConversationDetailRecord.UserRating === 10) {\n <span class=\"fa-solid fa-thumbs-up rating-icon-selected\"></span>\n } @else {\n <span class=\"fa-solid fa-thumbs-down rating-icon-selected\"></span>\n }\n </div>\n }\n </div>\n </div>\n</div>", styles: [".message-row {\n display: flex;\n align-items: start; /* if you want to align them at the top */\n /* border-bottom: solid 1px rgba(0, 0, 0, 0.08); */\n justify-content: center; /* Center align horizontally */\n \n padding: 10px;\n}\n\n.message {\n word-wrap: break-word;\n width: 100%;\n margin-right: 20px;\n padding-bottom: 25px;\n @media (min-width: 1280px) {\n max-width: 48rem;\n }\n}\n\n.message-actions {\n margin-top: 5px;\n top: 0; /* Align to the top of the parent container */\n left: 0; /* Align to the right edge */\n display: none; /* Hide by default */\n}\n\n.message:hover .message-actions {\n display: flex; /* Show the actions when the message is hovered */\n}\n \n.message-actions > span {\n margin-right: 5px;\n color: #6e7072;\n cursor: pointer;\n}\n\n.message-image {\n max-width: 24px;\n max-height: 24px;\n margin-right: 10px;\n margin-left: 5px;\n margin-bottom: 10px;\n}\n.message-image > img {\n max-width: 100%;\n max-height: 100%;\n}\n\n\n\n.error-message {\n background-color:lightpink;\n}\n\n.ai-message-in-progress {\n /* font-style: italic; */\n opacity: 0.9;\n}\n\n.elapsed-time {\n font-style: regular;\n font-size: 0.8rem;\n color: #124be7;\n margin-left: 5px;\n margin-right: 5px;\n}\n\n.message-user-name {\n font-weight: 600;\n margin-top: 0px;\n margin-bottom: 10px;\n padding-bottom: 7px;\n height: .5rem;\n}\n\n.suggested-container {\n margin-right: 20px; /*match the message class*/\n display: flex;\n flex-direction: column;\n align-items: left;\n justify-content: left;\n padding: 10px;\n margin-top: 10px;\n margin-bottom: 10px;\n border: solid 1px rgba(28, 103, 202, 0.08);\n background-color: rgb(241, 236, 227);\n}\n.suggested-header {\n font-weight: 600;\n margin-bottom: 10px;\n}\n.suggested-questions-list {\n display: flex;\n flex-wrap: wrap;\n}\n.suggested-answers-list {\n display: flex;\n flex-wrap: none;\n}\n.suggested-item {\n margin: 5px;\n padding: 5px 10px;\n border-radius: 5px;\n background-color: #f5f5f5;\n cursor: pointer;\n transition: background-color 0.3s;\n}\n.suggested-item:hover {\n background-color: #96d0f1;\n}\n\n.default-user-image {\n width: 24px;\n font-size: 22px;\n}\n\n/* Message rating styles */\n.message-rating {\n display: flex;\n flex-direction: column;\n margin-top: 15px;\n padding: 8px 12px;\n background-color: #f5f5f5;\n border-radius: 8px;\n width: fit-content;\n}\n\n.rating-prompt {\n font-size: 0.9rem;\n margin-bottom: 8px;\n color: #555;\n}\n\n.rating-buttons {\n display: flex;\n gap: 15px;\n}\n\n.rating-buttons span {\n font-size: 1.2rem;\n cursor: pointer;\n padding: 5px;\n border-radius: 4px;\n transition: all 0.2s ease;\n}\n\n.fa-thumbs-up {\n color: #4caf50;\n}\n\n.fa-thumbs-up:hover {\n background-color: rgba(76, 175, 80, 0.1);\n transform: scale(1.1);\n}\n\n.fa-thumbs-down {\n color: #f44336;\n}\n\n.fa-thumbs-down:hover {\n background-color: rgba(244, 67, 54, 0.1);\n transform: scale(1.1);\n}\n\n.rating-feedback {\n display: flex;\n align-items: center;\n margin-top: 12px;\n color: #666;\n font-size: 0.85rem;\n font-style: italic;\n}\n\n.rating-status-text {\n margin-right: 8px;\n}\n\n.rating-icon-selected {\n font-size: 0.9rem;\n}"] }]
490
+ }], () => [{ type: i0.ChangeDetectorRef }, { type: i1.MJNotificationService }], { ConversationRecord: [{
361
491
  type: Input
362
492
  }], ConversationDetailRecord: [{
363
493
  type: Input
@@ -377,6 +507,8 @@ SkipSingleMessageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
377
507
  type: Input
378
508
  }], ShowMessageEditPanel: [{
379
509
  type: Input
510
+ }], ShowMessageRating: [{
511
+ type: Input
380
512
  }], SuggestedQuestionSelected: [{
381
513
  type: Output
382
514
  }], SuggestedAnswerSelected: [{
@@ -401,5 +533,5 @@ SkipSingleMessageComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
401
533
  type: ViewChild,
402
534
  args: ['reportContainer', { read: ViewContainerRef }]
403
535
  }] }); })();
404
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SkipSingleMessageComponent, { className: "SkipSingleMessageComponent", filePath: "src/lib/skip-single-message/skip-single-message.component.ts", lineNumber: 16 }); })();
536
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SkipSingleMessageComponent, { className: "SkipSingleMessageComponent", filePath: "src/lib/skip-single-message/skip-single-message.component.ts", lineNumber: 18 }); })();
405
537
  //# sourceMappingURL=skip-single-message.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skip-single-message.component.js","sourceRoot":"","sources":["../../../src/lib/skip-single-message/skip-single-message.component.ts","../../../src/lib/skip-single-message/skip-single-message.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skip-single-message.component.js","sourceRoot":"","sources":["../../../src/lib/skip-single-message/skip-single-message.component.ts","../../../src/lib/skip-single-message/skip-single-message.component.html"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-skip-chat",
3
- "version": "2.27.0",
3
+ "version": "2.27.1",
4
4
  "description": "MemberJunction: Simple Skip Chat components usable in any Angular project",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -25,17 +25,17 @@
25
25
  "@angular/platform-browser": "18.0.2"
26
26
  },
27
27
  "dependencies": {
28
- "@memberjunction/core-entities": "2.27.0",
29
- "@memberjunction/core": "2.27.0",
30
- "@memberjunction/global": "2.27.0",
31
- "@memberjunction/graphql-dataprovider": "2.27.0",
32
- "@memberjunction/skip-types": "2.27.0",
33
- "@memberjunction/data-context": "2.27.0",
34
- "@memberjunction/ng-container-directives": "2.27.0",
35
- "@memberjunction/ng-data-context": "2.27.0",
36
- "@memberjunction/ng-base-types": "2.27.0",
37
- "@memberjunction/ng-notifications": "2.27.0",
38
- "@memberjunction/ng-resource-permissions": "2.27.0",
28
+ "@memberjunction/core-entities": "2.27.1",
29
+ "@memberjunction/core": "2.27.1",
30
+ "@memberjunction/global": "2.27.1",
31
+ "@memberjunction/graphql-dataprovider": "2.27.1",
32
+ "@memberjunction/skip-types": "2.27.1",
33
+ "@memberjunction/data-context": "2.27.1",
34
+ "@memberjunction/ng-container-directives": "2.27.1",
35
+ "@memberjunction/ng-data-context": "2.27.1",
36
+ "@memberjunction/ng-base-types": "2.27.1",
37
+ "@memberjunction/ng-notifications": "2.27.1",
38
+ "@memberjunction/ng-resource-permissions": "2.27.1",
39
39
  "@progress/kendo-angular-grid": "16.2.0",
40
40
  "@progress/kendo-angular-listview": "16.2.0",
41
41
  "@progress/kendo-angular-notification": "16.2.0",