@memberjunction/ng-conversations 2.128.0 → 2.129.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.
Files changed (43) hide show
  1. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +2 -1
  2. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
  3. package/dist/lib/components/conversation/conversation-chat-area.component.js +166 -138
  4. package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
  5. package/dist/lib/components/conversation/conversation-list.component.d.ts +11 -1
  6. package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -1
  7. package/dist/lib/components/conversation/conversation-list.component.js +225 -119
  8. package/dist/lib/components/conversation/conversation-list.component.js.map +1 -1
  9. package/dist/lib/components/message/agent-response-form.component.d.ts +18 -0
  10. package/dist/lib/components/message/agent-response-form.component.d.ts.map +1 -1
  11. package/dist/lib/components/message/agent-response-form.component.js +149 -26
  12. package/dist/lib/components/message/agent-response-form.component.js.map +1 -1
  13. package/dist/lib/components/message/form-question.component.js +3 -3
  14. package/dist/lib/components/message/message-input.component.d.ts +4 -1
  15. package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
  16. package/dist/lib/components/message/message-input.component.js +78 -61
  17. package/dist/lib/components/message/message-input.component.js.map +1 -1
  18. package/dist/lib/components/message/message-item.component.d.ts +7 -2
  19. package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
  20. package/dist/lib/components/message/message-item.component.js +56 -13
  21. package/dist/lib/components/message/message-item.component.js.map +1 -1
  22. package/dist/lib/components/message/message-list.component.d.ts +3 -1
  23. package/dist/lib/components/message/message-list.component.d.ts.map +1 -1
  24. package/dist/lib/components/message/message-list.component.js +7 -3
  25. package/dist/lib/components/message/message-list.component.js.map +1 -1
  26. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts +7 -1
  27. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts.map +1 -1
  28. package/dist/lib/components/sidebar/conversation-sidebar.component.js +28 -6
  29. package/dist/lib/components/sidebar/conversation-sidebar.component.js.map +1 -1
  30. package/dist/lib/components/workspace/conversation-workspace.component.d.ts +42 -0
  31. package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
  32. package/dist/lib/components/workspace/conversation-workspace.component.js +253 -40
  33. package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
  34. package/dist/lib/models/conversation-state.model.d.ts +2 -1
  35. package/dist/lib/models/conversation-state.model.d.ts.map +1 -1
  36. package/dist/lib/services/conversation-agent.service.d.ts +2 -1
  37. package/dist/lib/services/conversation-agent.service.d.ts.map +1 -1
  38. package/dist/lib/services/conversation-agent.service.js.map +1 -1
  39. package/dist/lib/services/mention-autocomplete.service.d.ts +1 -1
  40. package/dist/lib/services/mention-autocomplete.service.d.ts.map +1 -1
  41. package/dist/lib/services/mention-parser.service.d.ts +1 -1
  42. package/dist/lib/services/mention-parser.service.d.ts.map +1 -1
  43. package/package.json +17 -17
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-list.component.js","sourceRoot":"","sources":["../../../../src/lib/components/conversation/conversation-list.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation-list.component.js","sourceRoot":"","sources":["../../../../src/lib/components/conversation/conversation-list.component.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,19 @@ export declare class AgentResponseFormComponent implements OnInit {
22
22
  * Simple choices render as buttons only, complex forms render as full forms
23
23
  */
24
24
  get isSimpleChoice(): boolean;
25
+ /**
26
+ * Get the choice question that should be rendered in the footer (if any)
27
+ * Forms with a buttongroup/radio question have those buttons in the footer instead of Submit
28
+ */
29
+ get footerChoiceQuestion(): FormQuestion | null;
30
+ /**
31
+ * Get questions to render in the main form area (excludes footer choice question)
32
+ */
33
+ get mainQuestions(): FormQuestion[];
34
+ /**
35
+ * Check if we should show the standard Submit button (no footer choice question)
36
+ */
37
+ get showSubmitButton(): boolean;
25
38
  /**
26
39
  * Check if component should be visible
27
40
  */
@@ -46,6 +59,11 @@ export declare class AgentResponseFormComponent implements OnInit {
46
59
  * Handle simple choice button click (for single question forms)
47
60
  */
48
61
  onSimpleChoiceClick(value: any): void;
62
+ /**
63
+ * Handle footer choice button click (for forms with choice buttons in footer)
64
+ * Submits the form with all field values plus the selected choice
65
+ */
66
+ onFooterChoiceClick(value: any): void;
49
67
  /**
50
68
  * Handle full form submission
51
69
  */
@@ -1 +1 @@
1
- {"version":3,"file":"agent-response-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/message/agent-response-form.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;;AAE/E;;;GAGG;AACH,qBAKa,0BAA2B,YAAW,MAAM;IAW3C,OAAO,CAAC,GAAG;IAVd,YAAY,EAAG,iBAAiB,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAS;IAC1B,aAAa,EAAE,OAAO,CAAS;IAC/B,mBAAmB,EAAE,OAAO,CAAS;IAEpC,aAAa,oCAA2C;IAE3D,SAAS,EAAG,SAAS,CAAC;IACtB,YAAY,EAAE,OAAO,CAAS;gBAEjB,GAAG,EAAE,iBAAiB;IAE1C,QAAQ,IAAI,IAAI;IAahB;;;OAGG;IACH,IAAW,cAAc,IAAI,OAAO,CAQnC;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,OAAO,CAO9B;IAED;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0CtB;;OAEG;IACI,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW;IAIlD;;OAEG;IACI,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAc5C;;OAEG;IACI,QAAQ,IAAI,IAAI;IAsBvB;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,YAAY,GAAG,GAAG,EAAE;IAOhD;;OAEG;IACI,OAAO,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO;IAIpC;;OAEG;IACI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;IAIvE;;OAEG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG;yCA5LzC,0BAA0B;2CAA1B,0BAA0B;CA+LtC"}
1
+ {"version":3,"file":"agent-response-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/message/agent-response-form.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;;AAE/E;;;GAGG;AACH,qBAKa,0BAA2B,YAAW,MAAM;IAW3C,OAAO,CAAC,GAAG;IAVd,YAAY,EAAG,iBAAiB,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAS;IAC1B,aAAa,EAAE,OAAO,CAAS;IAC/B,mBAAmB,EAAE,OAAO,CAAS;IAEpC,aAAa,oCAA2C;IAE3D,SAAS,EAAG,SAAS,CAAC;IACtB,YAAY,EAAE,OAAO,CAAS;gBAEjB,GAAG,EAAE,iBAAiB;IAE1C,QAAQ,IAAI,IAAI;IAahB;;;OAGG;IACH,IAAW,cAAc,IAAI,OAAO,CAQnC;IAED;;;OAGG;IACH,IAAW,oBAAoB,IAAI,YAAY,GAAG,IAAI,CAMrD;IAED;;OAEG;IACH,IAAW,aAAa,IAAI,YAAY,EAAE,CAOzC;IAED;;OAEG;IACH,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,OAAO,CAO9B;IAED;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0CtB;;OAEG;IACI,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW;IAIlD;;OAEG;IACI,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAc5C;;;OAGG;IACI,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAmC5C;;OAEG;IACI,QAAQ,IAAI,IAAI;IAsBvB;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,YAAY,GAAG,GAAG,EAAE;IAOhD;;OAEG;IACI,OAAO,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO;IAIpC;;OAEG;IACI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;IAIvE;;OAEG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG;yCAlQzC,0BAA0B;2CAA1B,0BAA0B;CAqQtC"}
@@ -37,7 +37,7 @@ function AgentResponseFormComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1)
37
37
  i0.ɵɵproperty("ngForOf", ctx_r2.getOptions(ctx_r2.responseForm.questions[0]))("ngForTrackBy", ctx_r2.trackByValue);
38
38
  } }
39
39
  function AgentResponseFormComponent_div_0_form_2_h3_1_Template(rf, ctx) { if (rf & 1) {
40
- i0.ɵɵelementStart(0, "h3", 17);
40
+ i0.ɵɵelementStart(0, "h3", 16);
41
41
  i0.ɵɵtext(1);
42
42
  i0.ɵɵelementEnd();
43
43
  } if (rf & 2) {
@@ -46,7 +46,7 @@ function AgentResponseFormComponent_div_0_form_2_h3_1_Template(rf, ctx) { if (rf
46
46
  i0.ɵɵtextInterpolate(ctx_r2.responseForm.title);
47
47
  } }
48
48
  function AgentResponseFormComponent_div_0_form_2_p_2_Template(rf, ctx) { if (rf & 1) {
49
- i0.ɵɵelementStart(0, "p", 18);
49
+ i0.ɵɵelementStart(0, "p", 17);
50
50
  i0.ɵɵtext(1);
51
51
  i0.ɵɵelementEnd();
52
52
  } if (rf & 2) {
@@ -54,40 +54,105 @@ function AgentResponseFormComponent_div_0_form_2_p_2_Template(rf, ctx) { if (rf
54
54
  i0.ɵɵadvance();
55
55
  i0.ɵɵtextInterpolate(ctx_r2.responseForm.description);
56
56
  } }
57
- function AgentResponseFormComponent_div_0_form_2_mj_form_question_4_Template(rf, ctx) { if (rf & 1) {
58
- i0.ɵɵelement(0, "mj-form-question", 19);
57
+ function AgentResponseFormComponent_div_0_form_2_div_3_mj_form_question_1_Template(rf, ctx) { if (rf & 1) {
58
+ i0.ɵɵelement(0, "mj-form-question", 20);
59
59
  } if (rf & 2) {
60
60
  const question_r5 = ctx.$implicit;
61
- const ctx_r2 = i0.ɵɵnextContext(3);
61
+ const ctx_r2 = i0.ɵɵnextContext(4);
62
62
  i0.ɵɵproperty("question", question_r5)("control", ctx_r2.getControl(question_r5.id))("formControlName", question_r5.id);
63
63
  } }
64
- function AgentResponseFormComponent_div_0_form_2_span_7_Template(rf, ctx) { if (rf & 1) {
64
+ function AgentResponseFormComponent_div_0_form_2_div_3_Template(rf, ctx) { if (rf & 1) {
65
+ i0.ɵɵelementStart(0, "div", 18);
66
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_div_3_mj_form_question_1_Template, 1, 3, "mj-form-question", 19);
67
+ i0.ɵɵelementEnd();
68
+ } if (rf & 2) {
69
+ const ctx_r2 = i0.ɵɵnextContext(3);
70
+ i0.ɵɵadvance();
71
+ i0.ɵɵproperty("ngForOf", ctx_r2.mainQuestions)("ngForTrackBy", ctx_r2.trackByQuestionId);
72
+ } }
73
+ function AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_span_1_i_1_Template(rf, ctx) { if (rf & 1) {
74
+ i0.ɵɵelement(0, "i", 8);
75
+ } if (rf & 2) {
76
+ const option_r7 = i0.ɵɵnextContext(2).$implicit;
77
+ i0.ɵɵclassMapInterpolate1("fa ", option_r7.icon, "");
78
+ } }
79
+ function AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_span_1_Template(rf, ctx) { if (rf & 1) {
65
80
  i0.ɵɵelementStart(0, "span");
66
- i0.ɵɵelement(1, "i", 20);
81
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_span_1_i_1_Template, 1, 3, "i", 7);
67
82
  i0.ɵɵtext(2);
68
83
  i0.ɵɵelementEnd();
84
+ } if (rf & 2) {
85
+ const option_r7 = i0.ɵɵnextContext().$implicit;
86
+ const ctx_r2 = i0.ɵɵnextContext(4);
87
+ i0.ɵɵadvance();
88
+ i0.ɵɵproperty("ngIf", ctx_r2.hasIcon(option_r7));
89
+ i0.ɵɵadvance();
90
+ i0.ɵɵtextInterpolate1(" ", option_r7.label, " ");
91
+ } }
92
+ function AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_span_2_Template(rf, ctx) { if (rf & 1) {
93
+ i0.ɵɵelementStart(0, "span");
94
+ i0.ɵɵelement(1, "span", 23);
95
+ i0.ɵɵelementEnd();
96
+ } }
97
+ function AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_Template(rf, ctx) { if (rf & 1) {
98
+ const _r6 = i0.ɵɵgetCurrentView();
99
+ i0.ɵɵelementStart(0, "button", 22);
100
+ i0.ɵɵlistener("click", function AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_Template_button_click_0_listener() { const option_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.onFooterChoiceClick(option_r7.value)); });
101
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_span_1_Template, 3, 2, "span", 14)(2, AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_span_2_Template, 2, 0, "span", 14);
102
+ i0.ɵɵelementEnd();
103
+ } if (rf & 2) {
104
+ const ctx_r2 = i0.ɵɵnextContext(4);
105
+ i0.ɵɵproperty("themeColor", "primary")("disabled", ctx_r2.disabled || ctx_r2.isSubmitting);
106
+ i0.ɵɵadvance();
107
+ i0.ɵɵproperty("ngIf", !ctx_r2.isSubmitting);
108
+ i0.ɵɵadvance();
109
+ i0.ɵɵproperty("ngIf", ctx_r2.isSubmitting);
110
+ } }
111
+ function AgentResponseFormComponent_div_0_form_2_ng_container_5_Template(rf, ctx) { if (rf & 1) {
112
+ i0.ɵɵelementContainerStart(0);
113
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_ng_container_5_button_1_Template, 3, 4, "button", 21);
114
+ i0.ɵɵelementContainerEnd();
69
115
  } if (rf & 2) {
70
116
  const ctx_r2 = i0.ɵɵnextContext(3);
117
+ i0.ɵɵadvance();
118
+ i0.ɵɵproperty("ngForOf", ctx_r2.getOptions(ctx_r2.footerChoiceQuestion))("ngForTrackBy", ctx_r2.trackByValue);
119
+ } }
120
+ function AgentResponseFormComponent_div_0_form_2_button_6_span_1_Template(rf, ctx) { if (rf & 1) {
121
+ i0.ɵɵelementStart(0, "span");
122
+ i0.ɵɵelement(1, "i", 25);
123
+ i0.ɵɵtext(2);
124
+ i0.ɵɵelementEnd();
125
+ } if (rf & 2) {
126
+ const ctx_r2 = i0.ɵɵnextContext(4);
71
127
  i0.ɵɵadvance(2);
72
128
  i0.ɵɵtextInterpolate1(" ", ctx_r2.submitLabel, " ");
73
129
  } }
74
- function AgentResponseFormComponent_div_0_form_2_span_8_Template(rf, ctx) { if (rf & 1) {
130
+ function AgentResponseFormComponent_div_0_form_2_button_6_span_2_Template(rf, ctx) { if (rf & 1) {
75
131
  i0.ɵɵelementStart(0, "span");
76
- i0.ɵɵelement(1, "span", 21);
132
+ i0.ɵɵelement(1, "span", 23);
77
133
  i0.ɵɵtext(2, " Submitting... ");
78
134
  i0.ɵɵelementEnd();
79
135
  } }
136
+ function AgentResponseFormComponent_div_0_form_2_button_6_Template(rf, ctx) { if (rf & 1) {
137
+ i0.ɵɵelementStart(0, "button", 24);
138
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_button_6_span_1_Template, 3, 1, "span", 14)(2, AgentResponseFormComponent_div_0_form_2_button_6_span_2_Template, 3, 0, "span", 14);
139
+ i0.ɵɵelementEnd();
140
+ } if (rf & 2) {
141
+ const ctx_r2 = i0.ɵɵnextContext(3);
142
+ i0.ɵɵproperty("themeColor", "primary")("disabled", ctx_r2.disabled || ctx_r2.isSubmitting || ctx_r2.formGroup.invalid);
143
+ i0.ɵɵadvance();
144
+ i0.ɵɵproperty("ngIf", !ctx_r2.isSubmitting);
145
+ i0.ɵɵadvance();
146
+ i0.ɵɵproperty("ngIf", ctx_r2.isSubmitting);
147
+ } }
80
148
  function AgentResponseFormComponent_div_0_form_2_Template(rf, ctx) { if (rf & 1) {
81
149
  const _r4 = i0.ɵɵgetCurrentView();
82
150
  i0.ɵɵelementStart(0, "form", 9);
83
151
  i0.ɵɵlistener("ngSubmit", function AgentResponseFormComponent_div_0_form_2_Template_form_ngSubmit_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onSubmit()); });
84
- i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_h3_1_Template, 2, 1, "h3", 10)(2, AgentResponseFormComponent_div_0_form_2_p_2_Template, 2, 1, "p", 11);
85
- i0.ɵɵelementStart(3, "div", 12);
86
- i0.ɵɵtemplate(4, AgentResponseFormComponent_div_0_form_2_mj_form_question_4_Template, 1, 3, "mj-form-question", 13);
87
- i0.ɵɵelementEnd();
88
- i0.ɵɵelementStart(5, "div", 14)(6, "button", 15);
89
- i0.ɵɵtemplate(7, AgentResponseFormComponent_div_0_form_2_span_7_Template, 3, 1, "span", 16)(8, AgentResponseFormComponent_div_0_form_2_span_8_Template, 3, 0, "span", 16);
90
- i0.ɵɵelementEnd()()();
152
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_form_2_h3_1_Template, 2, 1, "h3", 10)(2, AgentResponseFormComponent_div_0_form_2_p_2_Template, 2, 1, "p", 11)(3, AgentResponseFormComponent_div_0_form_2_div_3_Template, 2, 2, "div", 12);
153
+ i0.ɵɵelementStart(4, "div", 13);
154
+ i0.ɵɵtemplate(5, AgentResponseFormComponent_div_0_form_2_ng_container_5_Template, 2, 2, "ng-container", 14)(6, AgentResponseFormComponent_div_0_form_2_button_6_Template, 3, 4, "button", 15);
155
+ i0.ɵɵelementEnd()();
91
156
  } if (rf & 2) {
92
157
  const ctx_r2 = i0.ɵɵnextContext(2);
93
158
  i0.ɵɵproperty("formGroup", ctx_r2.formGroup);
@@ -95,18 +160,16 @@ function AgentResponseFormComponent_div_0_form_2_Template(rf, ctx) { if (rf & 1)
95
160
  i0.ɵɵproperty("ngIf", ctx_r2.responseForm.title);
96
161
  i0.ɵɵadvance();
97
162
  i0.ɵɵproperty("ngIf", ctx_r2.responseForm.description);
98
- i0.ɵɵadvance(2);
99
- i0.ɵɵproperty("ngForOf", ctx_r2.responseForm.questions)("ngForTrackBy", ctx_r2.trackByQuestionId);
100
- i0.ɵɵadvance(2);
101
- i0.ɵɵproperty("themeColor", "primary")("disabled", ctx_r2.disabled || ctx_r2.isSubmitting || ctx_r2.formGroup.invalid);
102
163
  i0.ɵɵadvance();
103
- i0.ɵɵproperty("ngIf", !ctx_r2.isSubmitting);
164
+ i0.ɵɵproperty("ngIf", ctx_r2.mainQuestions.length > 0);
165
+ i0.ɵɵadvance(2);
166
+ i0.ɵɵproperty("ngIf", ctx_r2.footerChoiceQuestion);
104
167
  i0.ɵɵadvance();
105
- i0.ɵɵproperty("ngIf", ctx_r2.isSubmitting);
168
+ i0.ɵɵproperty("ngIf", ctx_r2.showSubmitButton);
106
169
  } }
107
170
  function AgentResponseFormComponent_div_0_Template(rf, ctx) { if (rf & 1) {
108
171
  i0.ɵɵelementStart(0, "div", 1);
109
- i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_div_1_Template, 2, 2, "div", 2)(2, AgentResponseFormComponent_div_0_form_2_Template, 9, 9, "form", 3);
172
+ i0.ɵɵtemplate(1, AgentResponseFormComponent_div_0_div_1_Template, 2, 2, "div", 2)(2, AgentResponseFormComponent_div_0_form_2_Template, 7, 6, "form", 3);
110
173
  i0.ɵɵelementEnd();
111
174
  } if (rf & 2) {
112
175
  const ctx_r2 = i0.ɵɵnextContext();
@@ -154,6 +217,34 @@ export class AgentResponseFormComponent {
154
217
  !this.responseForm.title &&
155
218
  this.isChoiceQuestion(this.responseForm.questions[0]));
156
219
  }
220
+ /**
221
+ * Get the choice question that should be rendered in the footer (if any)
222
+ * Forms with a buttongroup/radio question have those buttons in the footer instead of Submit
223
+ */
224
+ get footerChoiceQuestion() {
225
+ if (!this.responseForm || this.isSimpleChoice)
226
+ return null;
227
+ // Find the last buttongroup/radio question - it becomes the footer action
228
+ const choiceQuestions = this.responseForm.questions.filter(q => this.isChoiceQuestion(q));
229
+ return choiceQuestions.length > 0 ? choiceQuestions[choiceQuestions.length - 1] : null;
230
+ }
231
+ /**
232
+ * Get questions to render in the main form area (excludes footer choice question)
233
+ */
234
+ get mainQuestions() {
235
+ if (!this.responseForm)
236
+ return [];
237
+ const footerChoice = this.footerChoiceQuestion;
238
+ if (!footerChoice)
239
+ return this.responseForm.questions;
240
+ return this.responseForm.questions.filter(q => q.id !== footerChoice.id);
241
+ }
242
+ /**
243
+ * Check if we should show the standard Submit button (no footer choice question)
244
+ */
245
+ get showSubmitButton() {
246
+ return !this.footerChoiceQuestion;
247
+ }
157
248
  /**
158
249
  * Check if component should be visible
159
250
  */
@@ -236,6 +327,38 @@ export class AgentResponseFormComponent {
236
327
  }, 1000);
237
328
  }
238
329
  }
330
+ /**
331
+ * Handle footer choice button click (for forms with choice buttons in footer)
332
+ * Submits the form with all field values plus the selected choice
333
+ */
334
+ onFooterChoiceClick(value) {
335
+ if (!this.disabled && !this.isSubmitting && this.footerChoiceQuestion) {
336
+ // First validate any required fields in the main form
337
+ const mainControlKeys = this.mainQuestions.map(q => q.id);
338
+ let hasInvalidFields = false;
339
+ for (const key of mainControlKeys) {
340
+ const control = this.formGroup.get(key);
341
+ if (control?.invalid) {
342
+ control.markAsTouched();
343
+ hasInvalidFields = true;
344
+ }
345
+ }
346
+ if (hasInvalidFields) {
347
+ return;
348
+ }
349
+ this.isSubmitting = true;
350
+ // Gather all form values and add the choice value
351
+ const formData = { ...this.formGroup.value };
352
+ formData[this.footerChoiceQuestion.id] = value;
353
+ this.formSubmitted.emit(formData);
354
+ // Reset form and submitting state
355
+ Promise.resolve().then(() => {
356
+ this.formGroup.reset();
357
+ this.isSubmitting = false;
358
+ this.cdr.detectChanges();
359
+ });
360
+ }
361
+ }
239
362
  /**
240
363
  * Handle full form submission
241
364
  */
@@ -286,15 +409,15 @@ export class AgentResponseFormComponent {
286
409
  return option.value;
287
410
  }
288
411
  static ɵfac = function AgentResponseFormComponent_Factory(t) { return new (t || AgentResponseFormComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
289
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AgentResponseFormComponent, selectors: [["mj-agent-response-form"]], inputs: { responseForm: "responseForm", disabled: "disabled", isLastMessage: "isLastMessage", isConversationOwner: "isConversationOwner" }, outputs: { formSubmitted: "formSubmitted" }, decls: 1, vars: 1, consts: [["class", "agent-response-form", 4, "ngIf"], [1, "agent-response-form"], ["class", "simple-choice-buttons", 4, "ngIf"], ["class", "response-form", 3, "formGroup", "ngSubmit", 4, "ngIf"], [1, "simple-choice-buttons"], ["kendoButton", "", "class", "choice-button", 3, "disabled", "click", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["kendoButton", "", 1, "choice-button", 3, "click", "disabled"], ["aria-hidden", "true", 3, "class", 4, "ngIf"], ["aria-hidden", "true"], [1, "response-form", 3, "ngSubmit", "formGroup"], ["class", "form-title", 4, "ngIf"], ["class", "form-description", 4, "ngIf"], [1, "form-questions"], [3, "question", "control", "formControlName", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "form-actions"], ["kendoButton", "", "type", "submit", 1, "submit-button", 3, "themeColor", "disabled"], [4, "ngIf"], [1, "form-title"], [1, "form-description"], [3, "question", "control", "formControlName"], ["aria-hidden", "true", 1, "fa", "fa-check"], [1, "k-icon", "k-i-loading"]], template: function AgentResponseFormComponent_Template(rf, ctx) { if (rf & 1) {
412
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AgentResponseFormComponent, selectors: [["mj-agent-response-form"]], inputs: { responseForm: "responseForm", disabled: "disabled", isLastMessage: "isLastMessage", isConversationOwner: "isConversationOwner" }, outputs: { formSubmitted: "formSubmitted" }, decls: 1, vars: 1, consts: [["class", "agent-response-form", 4, "ngIf"], [1, "agent-response-form"], ["class", "simple-choice-buttons", 4, "ngIf"], ["class", "response-form", 3, "formGroup", "ngSubmit", 4, "ngIf"], [1, "simple-choice-buttons"], ["kendoButton", "", "class", "choice-button", 3, "disabled", "click", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["kendoButton", "", 1, "choice-button", 3, "click", "disabled"], ["aria-hidden", "true", 3, "class", 4, "ngIf"], ["aria-hidden", "true"], [1, "response-form", 3, "ngSubmit", "formGroup"], ["class", "form-title", 4, "ngIf"], ["class", "form-description", 4, "ngIf"], ["class", "form-questions", 4, "ngIf"], [1, "form-actions"], [4, "ngIf"], ["kendoButton", "", "type", "submit", "class", "submit-button", 3, "themeColor", "disabled", 4, "ngIf"], [1, "form-title"], [1, "form-description"], [1, "form-questions"], [3, "question", "control", "formControlName", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "question", "control", "formControlName"], ["kendoButton", "", "type", "button", "class", "footer-choice-button", 3, "themeColor", "disabled", "click", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["kendoButton", "", "type", "button", 1, "footer-choice-button", 3, "click", "themeColor", "disabled"], [1, "k-icon", "k-i-loading"], ["kendoButton", "", "type", "submit", 1, "submit-button", 3, "themeColor", "disabled"], ["aria-hidden", "true", 1, "fa", "fa-check"]], template: function AgentResponseFormComponent_Template(rf, ctx) { if (rf & 1) {
290
413
  i0.ɵɵtemplate(0, AgentResponseFormComponent_div_0_Template, 3, 2, "div", 0);
291
414
  } if (rf & 2) {
292
415
  i0.ɵɵproperty("ngIf", ctx.isVisible);
293
- } }, dependencies: [i1.NgForOf, i1.NgIf, i2.ɵNgNoValidate, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i3.ButtonComponent, i4.FormQuestionComponent], styles: [".agent-response-form[_ngcontent-%COMP%] {\n margin-top: 16px;\n display: inline-block;\n max-width: min(800px, 100%);\n min-width: 400px;\n width: auto;\n}\n\n\n\n.simple-choice-buttons[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n margin-top: 12px;\n}\n\n.choice-button[_ngcontent-%COMP%] {\n padding: 8px 16px;\n font-size: 14px;\n}\n\n.choice-button[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n margin-right: 6px;\n}\n\n\n\n.response-form[_ngcontent-%COMP%] {\n background: rgba(16, 185, 129, 0.03);\n border: 2px solid rgba(16, 185, 129, 0.3);\n border-radius: 12px;\n padding: 0;\n margin-top: 12px;\n box-shadow: 0 2px 8px rgba(16, 185, 129, 0.1);\n overflow: hidden;\n}\n\n.form-title[_ngcontent-%COMP%] {\n margin: 0;\n padding: 12px 16px;\n font-size: 14px;\n font-weight: 600;\n color: white;\n background: linear-gradient(135deg, #10b981 0%, #059669 100%);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-title[_ngcontent-%COMP%]::before {\n content: \"\\f044\";\n font-family: \"Font Awesome 6 Free\";\n font-weight: 900;\n font-size: 13px;\n opacity: 0.95;\n}\n\n.form-description[_ngcontent-%COMP%] {\n margin: 0;\n padding: 12px 16px;\n font-size: 13px;\n color: #059669;\n background: rgba(16, 185, 129, 0.08);\n border-bottom: 1px solid rgba(16, 185, 129, 0.15);\n font-style: italic;\n}\n\n.form-questions[_ngcontent-%COMP%] {\n padding: 16px;\n background: white;\n}\n\n.form-actions[_ngcontent-%COMP%] {\n display: flex;\n justify-content: flex-end;\n padding: 12px 16px;\n background: rgba(16, 185, 129, 0.05);\n border-top: 1px solid rgba(16, 185, 129, 0.15);\n}\n\n.submit-button[_ngcontent-%COMP%] {\n min-width: 120px;\n}\n\n.submit-button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%] {\n margin-right: 6px;\n}\n\n.submit-button[_ngcontent-%COMP%] .k-icon[_ngcontent-%COMP%] {\n margin-right: 6px;\n animation: _ngcontent-%COMP%_spin 1s linear infinite;\n}\n\n@keyframes _ngcontent-%COMP%_spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n\n\n@media (max-width: 600px) {\n .agent-response-form[_ngcontent-%COMP%] {\n min-width: 300px;\n }\n\n .form-questions[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .simple-choice-buttons[_ngcontent-%COMP%] {\n flex-direction: column;\n }\n\n .choice-button[_ngcontent-%COMP%] {\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n .agent-response-form[_ngcontent-%COMP%] {\n min-width: 100%;\n }\n\n .form-title[_ngcontent-%COMP%] {\n font-size: 13px;\n padding: 10px 12px;\n }\n\n .form-description[_ngcontent-%COMP%] {\n font-size: 12px;\n padding: 10px 12px;\n }\n}"] });
416
+ } }, dependencies: [i1.NgForOf, i1.NgIf, i2.ɵNgNoValidate, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i3.ButtonComponent, i4.FormQuestionComponent], styles: [".agent-response-form[_ngcontent-%COMP%] {\n margin-top: 16px;\n display: block;\n width: fit-content;\n max-width: 600px;\n}\n\n\n\n.simple-choice-buttons[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-top: 12px;\n}\n\n.choice-button[_ngcontent-%COMP%] {\n padding: 8px 16px;\n font-size: 14px;\n}\n\n.choice-button[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n margin-right: 6px;\n}\n\n\n\n.response-form[_ngcontent-%COMP%] {\n background: rgba(16, 185, 129, 0.03);\n border: 2px solid rgba(16, 185, 129, 0.3);\n border-radius: 12px;\n padding: 0;\n margin-top: 12px;\n box-shadow: 0 2px 8px rgba(16, 185, 129, 0.1);\n overflow: hidden;\n}\n\n.form-title[_ngcontent-%COMP%] {\n margin: 0;\n padding: 12px 16px;\n font-size: 14px;\n font-weight: 600;\n color: white;\n background: linear-gradient(135deg, #10b981 0%, #059669 100%);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-title[_ngcontent-%COMP%]::before {\n content: \"\\f044\";\n font-family: \"Font Awesome 6 Free\";\n font-weight: 900;\n font-size: 13px;\n opacity: 0.95;\n}\n\n.form-description[_ngcontent-%COMP%] {\n margin: 0;\n padding: 12px 16px;\n font-size: 13px;\n color: #059669;\n background: rgba(16, 185, 129, 0.08);\n border-bottom: 1px solid rgba(16, 185, 129, 0.15);\n font-style: italic;\n}\n\n.form-questions[_ngcontent-%COMP%] {\n padding: 16px;\n background: white;\n}\n\n.form-actions[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n justify-content: flex-start;\n padding: 12px 16px;\n background: rgba(16, 185, 129, 0.05);\n border-top: 1px solid rgba(16, 185, 129, 0.15);\n}\n\n.submit-button[_ngcontent-%COMP%] {\n min-width: 120px;\n}\n\n\n\n.footer-choice-button[_ngcontent-%COMP%] {\n min-width: 120px;\n max-width: 100%;\n white-space: normal;\n text-align: left;\n line-height: 1.3;\n padding: 10px 16px;\n}\n\n.footer-choice-button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%] {\n margin-right: 6px;\n flex-shrink: 0;\n}\n\n.footer-choice-button[_ngcontent-%COMP%] .k-icon[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_spin 1s linear infinite;\n}\n\n.submit-button[_ngcontent-%COMP%] i.fa[_ngcontent-%COMP%] {\n margin-right: 6px;\n}\n\n.submit-button[_ngcontent-%COMP%] .k-icon[_ngcontent-%COMP%] {\n margin-right: 6px;\n animation: _ngcontent-%COMP%_spin 1s linear infinite;\n}\n\n@keyframes _ngcontent-%COMP%_spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n\n\n@media (max-width: 768px) {\n .agent-response-form[_ngcontent-%COMP%] {\n margin-top: 12px;\n }\n\n .response-form[_ngcontent-%COMP%] {\n border-radius: 10px;\n }\n\n .form-questions[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .form-actions[_ngcontent-%COMP%] {\n padding: 10px 12px;\n }\n\n .simple-choice-buttons[_ngcontent-%COMP%] {\n gap: 8px;\n }\n\n .choice-button[_ngcontent-%COMP%] {\n padding: 10px 14px;\n font-size: 13px;\n }\n}\n\n@media (max-width: 480px) {\n .agent-response-form[_ngcontent-%COMP%] {\n margin-top: 10px;\n width: 100%;\n max-width: 100%;\n }\n\n .response-form[_ngcontent-%COMP%] {\n border-radius: 8px;\n border-width: 1.5px;\n }\n\n .form-title[_ngcontent-%COMP%] {\n font-size: 13px;\n padding: 10px 12px;\n }\n\n .form-description[_ngcontent-%COMP%] {\n font-size: 12px;\n padding: 10px 12px;\n }\n\n .form-questions[_ngcontent-%COMP%] {\n padding: 10px;\n }\n\n .form-actions[_ngcontent-%COMP%] {\n padding: 8px 10px;\n flex-direction: column;\n }\n\n .choice-button[_ngcontent-%COMP%] {\n width: 100%;\n min-height: 44px;\n padding: 12px 16px;\n font-size: 14px;\n }\n\n .footer-choice-button[_ngcontent-%COMP%] {\n width: 100%;\n min-height: 44px;\n font-size: 14px;\n }\n\n .submit-button[_ngcontent-%COMP%] {\n width: 100%;\n min-height: 44px;\n font-size: 13px;\n }\n}"] });
294
417
  }
295
418
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AgentResponseFormComponent, [{
296
419
  type: Component,
297
- args: [{ selector: 'mj-agent-response-form', template: "<div *ngIf=\"isVisible\" class=\"agent-response-form\">\n <!-- Simple Choice Mode (single question, no title, buttongroup/radio) -->\n <div *ngIf=\"isSimpleChoice\" class=\"simple-choice-buttons\">\n <button\n *ngFor=\"let option of getOptions(responseForm.questions[0]); trackBy: trackByValue\"\n kendoButton\n [disabled]=\"disabled || isSubmitting\"\n (click)=\"onSimpleChoiceClick(option.value)\"\n class=\"choice-button\"\n >\n <i *ngIf=\"hasIcon(option)\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </button>\n </div>\n\n <!-- Full Form Mode (complex forms) -->\n <form *ngIf=\"!isSimpleChoice\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\" class=\"response-form\">\n <!-- Form Title -->\n <h3 *ngIf=\"responseForm.title\" class=\"form-title\">{{ responseForm.title }}</h3>\n\n <!-- Form Description -->\n <p *ngIf=\"responseForm.description\" class=\"form-description\">{{ responseForm.description }}</p>\n\n <!-- Questions -->\n <div class=\"form-questions\">\n <mj-form-question\n *ngFor=\"let question of responseForm.questions; trackBy: trackByQuestionId\"\n [question]=\"question\"\n [control]=\"getControl(question.id)\"\n [formControlName]=\"question.id\"\n ></mj-form-question>\n </div>\n\n <!-- Submit Button -->\n <div class=\"form-actions\">\n <button\n kendoButton\n type=\"submit\"\n [themeColor]=\"'primary'\"\n [disabled]=\"disabled || isSubmitting || formGroup.invalid\"\n class=\"submit-button\"\n >\n <span *ngIf=\"!isSubmitting\">\n <i class=\"fa fa-check\" aria-hidden=\"true\"></i>\n {{ submitLabel }}\n </span>\n <span *ngIf=\"isSubmitting\">\n <span class=\"k-icon k-i-loading\"></span>\n Submitting...\n </span>\n </button>\n </div>\n </form>\n</div>\n", styles: [".agent-response-form {\n margin-top: 16px;\n display: inline-block;\n max-width: min(800px, 100%);\n min-width: 400px;\n width: auto;\n}\n\n/* Simple Choice Mode */\n.simple-choice-buttons {\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n margin-top: 12px;\n}\n\n.choice-button {\n padding: 8px 16px;\n font-size: 14px;\n}\n\n.choice-button i {\n margin-right: 6px;\n}\n\n/* Full Form Mode - Styled to match response cards but clearly active */\n.response-form {\n background: rgba(16, 185, 129, 0.03);\n border: 2px solid rgba(16, 185, 129, 0.3);\n border-radius: 12px;\n padding: 0;\n margin-top: 12px;\n box-shadow: 0 2px 8px rgba(16, 185, 129, 0.1);\n overflow: hidden;\n}\n\n.form-title {\n margin: 0;\n padding: 12px 16px;\n font-size: 14px;\n font-weight: 600;\n color: white;\n background: linear-gradient(135deg, #10b981 0%, #059669 100%);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-title::before {\n content: \"\\f044\";\n font-family: \"Font Awesome 6 Free\";\n font-weight: 900;\n font-size: 13px;\n opacity: 0.95;\n}\n\n.form-description {\n margin: 0;\n padding: 12px 16px;\n font-size: 13px;\n color: #059669;\n background: rgba(16, 185, 129, 0.08);\n border-bottom: 1px solid rgba(16, 185, 129, 0.15);\n font-style: italic;\n}\n\n.form-questions {\n padding: 16px;\n background: white;\n}\n\n.form-actions {\n display: flex;\n justify-content: flex-end;\n padding: 12px 16px;\n background: rgba(16, 185, 129, 0.05);\n border-top: 1px solid rgba(16, 185, 129, 0.15);\n}\n\n.submit-button {\n min-width: 120px;\n}\n\n.submit-button i.fa {\n margin-right: 6px;\n}\n\n.submit-button .k-icon {\n margin-right: 6px;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* Responsive Design */\n@media (max-width: 600px) {\n .agent-response-form {\n min-width: 300px;\n }\n\n .form-questions {\n padding: 12px;\n }\n\n .simple-choice-buttons {\n flex-direction: column;\n }\n\n .choice-button {\n width: 100%;\n }\n}\n\n@media (max-width: 400px) {\n .agent-response-form {\n min-width: 100%;\n }\n\n .form-title {\n font-size: 13px;\n padding: 10px 12px;\n }\n\n .form-description {\n font-size: 12px;\n padding: 10px 12px;\n }\n}\n"] }]
420
+ args: [{ selector: 'mj-agent-response-form', template: "<div *ngIf=\"isVisible\" class=\"agent-response-form\">\n <!-- Simple Choice Mode (single question, no title, buttongroup/radio) -->\n <div *ngIf=\"isSimpleChoice\" class=\"simple-choice-buttons\">\n <button\n *ngFor=\"let option of getOptions(responseForm.questions[0]); trackBy: trackByValue\"\n kendoButton\n [disabled]=\"disabled || isSubmitting\"\n (click)=\"onSimpleChoiceClick(option.value)\"\n class=\"choice-button\"\n >\n <i *ngIf=\"hasIcon(option)\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </button>\n </div>\n\n <!-- Full Form Mode (complex forms) -->\n <form *ngIf=\"!isSimpleChoice\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\" class=\"response-form\">\n <!-- Form Title -->\n <h3 *ngIf=\"responseForm.title\" class=\"form-title\">{{ responseForm.title }}</h3>\n\n <!-- Form Description -->\n <p *ngIf=\"responseForm.description\" class=\"form-description\">{{ responseForm.description }}</p>\n\n <!-- Questions (excludes footer choice question) -->\n <div class=\"form-questions\" *ngIf=\"mainQuestions.length > 0\">\n <mj-form-question\n *ngFor=\"let question of mainQuestions; trackBy: trackByQuestionId\"\n [question]=\"question\"\n [control]=\"getControl(question.id)\"\n [formControlName]=\"question.id\"\n ></mj-form-question>\n </div>\n\n <!-- Footer Actions -->\n <div class=\"form-actions\">\n <!-- Footer Choice Buttons (replaces Submit when present) -->\n <ng-container *ngIf=\"footerChoiceQuestion\">\n <button\n *ngFor=\"let option of getOptions(footerChoiceQuestion); trackBy: trackByValue\"\n kendoButton\n type=\"button\"\n [themeColor]=\"'primary'\"\n [disabled]=\"disabled || isSubmitting\"\n (click)=\"onFooterChoiceClick(option.value)\"\n class=\"footer-choice-button\"\n >\n <span *ngIf=\"!isSubmitting\">\n <i *ngIf=\"hasIcon(option)\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </span>\n <span *ngIf=\"isSubmitting\">\n <span class=\"k-icon k-i-loading\"></span>\n </span>\n </button>\n </ng-container>\n\n <!-- Standard Submit Button (when no footer choice) -->\n <button\n *ngIf=\"showSubmitButton\"\n kendoButton\n type=\"submit\"\n [themeColor]=\"'primary'\"\n [disabled]=\"disabled || isSubmitting || formGroup.invalid\"\n class=\"submit-button\"\n >\n <span *ngIf=\"!isSubmitting\">\n <i class=\"fa fa-check\" aria-hidden=\"true\"></i>\n {{ submitLabel }}\n </span>\n <span *ngIf=\"isSubmitting\">\n <span class=\"k-icon k-i-loading\"></span>\n Submitting...\n </span>\n </button>\n </div>\n </form>\n</div>\n", styles: [".agent-response-form {\n margin-top: 16px;\n display: block;\n width: fit-content;\n max-width: 600px;\n}\n\n/* Simple Choice Mode */\n.simple-choice-buttons {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-top: 12px;\n}\n\n.choice-button {\n padding: 8px 16px;\n font-size: 14px;\n}\n\n.choice-button i {\n margin-right: 6px;\n}\n\n/* Full Form Mode - Styled to match response cards but clearly active */\n.response-form {\n background: rgba(16, 185, 129, 0.03);\n border: 2px solid rgba(16, 185, 129, 0.3);\n border-radius: 12px;\n padding: 0;\n margin-top: 12px;\n box-shadow: 0 2px 8px rgba(16, 185, 129, 0.1);\n overflow: hidden;\n}\n\n.form-title {\n margin: 0;\n padding: 12px 16px;\n font-size: 14px;\n font-weight: 600;\n color: white;\n background: linear-gradient(135deg, #10b981 0%, #059669 100%);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-title::before {\n content: \"\\f044\";\n font-family: \"Font Awesome 6 Free\";\n font-weight: 900;\n font-size: 13px;\n opacity: 0.95;\n}\n\n.form-description {\n margin: 0;\n padding: 12px 16px;\n font-size: 13px;\n color: #059669;\n background: rgba(16, 185, 129, 0.08);\n border-bottom: 1px solid rgba(16, 185, 129, 0.15);\n font-style: italic;\n}\n\n.form-questions {\n padding: 16px;\n background: white;\n}\n\n.form-actions {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n justify-content: flex-start;\n padding: 12px 16px;\n background: rgba(16, 185, 129, 0.05);\n border-top: 1px solid rgba(16, 185, 129, 0.15);\n}\n\n.submit-button {\n min-width: 120px;\n}\n\n/* Footer choice buttons - horizontal on desktop with text wrapping */\n.footer-choice-button {\n min-width: 120px;\n max-width: 100%;\n white-space: normal;\n text-align: left;\n line-height: 1.3;\n padding: 10px 16px;\n}\n\n.footer-choice-button i.fa {\n margin-right: 6px;\n flex-shrink: 0;\n}\n\n.footer-choice-button .k-icon {\n animation: spin 1s linear infinite;\n}\n\n.submit-button i.fa {\n margin-right: 6px;\n}\n\n.submit-button .k-icon {\n margin-right: 6px;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n .agent-response-form {\n margin-top: 12px;\n }\n\n .response-form {\n border-radius: 10px;\n }\n\n .form-questions {\n padding: 12px;\n }\n\n .form-actions {\n padding: 10px 12px;\n }\n\n .simple-choice-buttons {\n gap: 8px;\n }\n\n .choice-button {\n padding: 10px 14px;\n font-size: 13px;\n }\n}\n\n@media (max-width: 480px) {\n .agent-response-form {\n margin-top: 10px;\n width: 100%;\n max-width: 100%;\n }\n\n .response-form {\n border-radius: 8px;\n border-width: 1.5px;\n }\n\n .form-title {\n font-size: 13px;\n padding: 10px 12px;\n }\n\n .form-description {\n font-size: 12px;\n padding: 10px 12px;\n }\n\n .form-questions {\n padding: 10px;\n }\n\n .form-actions {\n padding: 8px 10px;\n flex-direction: column;\n }\n\n .choice-button {\n width: 100%;\n min-height: 44px;\n padding: 12px 16px;\n font-size: 14px;\n }\n\n .footer-choice-button {\n width: 100%;\n min-height: 44px;\n font-size: 14px;\n }\n\n .submit-button {\n width: 100%;\n min-height: 44px;\n font-size: 13px;\n }\n}\n"] }]
298
421
  }], () => [{ type: i0.ChangeDetectorRef }], { responseForm: [{
299
422
  type: Input
300
423
  }], disabled: [{
@@ -1 +1 @@
1
- {"version":3,"file":"agent-response-form.component.js","sourceRoot":"","sources":["../../../../src/lib/components/message/agent-response-form.component.ts","../../../../src/lib/components/message/agent-response-form.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-response-form.component.js","sourceRoot":"","sources":["../../../../src/lib/components/message/agent-response-form.component.ts","../../../../src/lib/components/message/agent-response-form.component.html"],"names":[],"mappings":"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"}
@@ -555,7 +555,7 @@ export class FormQuestionComponent {
555
555
  useExisting: forwardRef(() => FormQuestionComponent),
556
556
  multi: true
557
557
  }
558
- ])], decls: 19, vars: 20, consts: [[1, "form-question"], ["class", "question-label", 4, "ngIf"], ["class", "help-text", 4, "ngIf"], [1, "input-container", 3, "ngClass"], ["type", "text", "kendoTextBox", "", "class", "question-input", 3, "value", "placeholder", "disabled", "input", 4, "ngIf"], ["type", "email", "kendoTextBox", "", "class", "question-input", 3, "value", "placeholder", "disabled", "input", 4, "ngIf"], ["kendoTextArea", "", "class", "question-textarea", "rows", "3", 3, "value", "placeholder", "disabled", "input", 4, "ngIf"], ["class", "question-input", 3, "value", "min", "max", "step", "disabled", "valueChange", 4, "ngIf"], ["class", "question-input", 3, "value", "min", "max", "step", "format", "disabled", "valueChange", 4, "ngIf"], ["class", "question-input", 3, "value", "disabled", "valueChange", 4, "ngIf"], ["class", "question-buttongroup", 3, "selection", 4, "ngIf"], ["class", "question-radio-group", 4, "ngIf"], ["class", "question-dropdown", 3, "formControl", "disabled", 4, "ngIf"], ["class", "question-slider-container", 4, "ngIf"], ["class", "question-daterange", 4, "ngIf"], ["class", "question-input", 3, "value", "disabled", "format", "valueChange", 4, "ngIf"], ["class", "question-checkbox-group", 4, "ngIf"], ["class", "validation-error", 4, "ngIf"], [1, "question-label"], ["class", "required-indicator", 4, "ngIf"], [1, "required-indicator"], [1, "help-text"], ["type", "text", "kendoTextBox", "", 1, "question-input", 3, "input", "value", "placeholder", "disabled"], ["type", "email", "kendoTextBox", "", 1, "question-input", 3, "input", "value", "placeholder", "disabled"], ["kendoTextArea", "", "rows", "3", 1, "question-textarea", 3, "input", "value", "placeholder", "disabled"], [1, "question-input", 3, "valueChange", "value", "min", "max", "step", "disabled"], [1, "question-input", 3, "valueChange", "value", "min", "max", "step", "format", "disabled"], [1, "question-input", 3, "valueChange", "value", "disabled"], [1, "question-buttongroup", 3, "selection"], ["kendoButton", "", "class", "buttongroup-option", 3, "toggleable", "selected", "disabled", "click", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["kendoButton", "", 1, "buttongroup-option", 3, "click", "toggleable", "selected", "disabled"], ["aria-hidden", "true", 3, "class", 4, "ngIf"], ["aria-hidden", "true"], [1, "question-radio-group"], ["class", "radio-option", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "radio-option"], ["type", "radio", "kendoRadioButton", "", 3, "change", "name", "value", "checked", "disabled", "id"], [1, "radio-label", 3, "for"], [1, "question-dropdown", 3, "formControl", "disabled"], ["value", ""], [3, "value", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "value"], [1, "question-slider-container"], [1, "question-slider", 3, "valueChange", "min", "max", "smallStep", "value", "disabled"], [1, "slider-value"], [1, "question-daterange"], ["placeholder", "Start Date", 1, "daterange-start", 3, "valueChange", "value", "disabled"], [1, "daterange-separator"], ["placeholder", "End Date", 1, "daterange-end", 3, "valueChange", "value", "disabled"], [1, "question-input", 3, "valueChange", "value", "disabled", "format"], [1, "question-checkbox-group"], ["class", "checkbox-option", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "checkbox-option"], ["type", "checkbox", "kendoCheckBox", "", 3, "change", "checked", "disabled", "id"], [1, "checkbox-label", 3, "for"], [1, "validation-error"], [4, "ngIf"]], template: function FormQuestionComponent_Template(rf, ctx) { if (rf & 1) {
558
+ ])], decls: 19, vars: 20, consts: [[1, "form-question"], ["class", "question-label", 4, "ngIf"], ["class", "help-text", 4, "ngIf"], [1, "input-container", 3, "ngClass"], ["type", "text", "kendoTextBox", "", "class", "question-input", 3, "value", "placeholder", "disabled", "input", 4, "ngIf"], ["type", "email", "kendoTextBox", "", "class", "question-input", 3, "value", "placeholder", "disabled", "input", 4, "ngIf"], ["kendoTextArea", "", "class", "question-textarea", "rows", "5", 3, "value", "placeholder", "disabled", "input", 4, "ngIf"], ["class", "question-input", 3, "value", "min", "max", "step", "disabled", "valueChange", 4, "ngIf"], ["class", "question-input", 3, "value", "min", "max", "step", "format", "disabled", "valueChange", 4, "ngIf"], ["class", "question-input", 3, "value", "disabled", "valueChange", 4, "ngIf"], ["class", "question-buttongroup", 3, "selection", 4, "ngIf"], ["class", "question-radio-group", 4, "ngIf"], ["class", "question-dropdown", 3, "formControl", "disabled", 4, "ngIf"], ["class", "question-slider-container", 4, "ngIf"], ["class", "question-daterange", 4, "ngIf"], ["class", "question-input", 3, "value", "disabled", "format", "valueChange", 4, "ngIf"], ["class", "question-checkbox-group", 4, "ngIf"], ["class", "validation-error", 4, "ngIf"], [1, "question-label"], ["class", "required-indicator", 4, "ngIf"], [1, "required-indicator"], [1, "help-text"], ["type", "text", "kendoTextBox", "", 1, "question-input", 3, "input", "value", "placeholder", "disabled"], ["type", "email", "kendoTextBox", "", 1, "question-input", 3, "input", "value", "placeholder", "disabled"], ["kendoTextArea", "", "rows", "5", 1, "question-textarea", 3, "input", "value", "placeholder", "disabled"], [1, "question-input", 3, "valueChange", "value", "min", "max", "step", "disabled"], [1, "question-input", 3, "valueChange", "value", "min", "max", "step", "format", "disabled"], [1, "question-input", 3, "valueChange", "value", "disabled"], [1, "question-buttongroup", 3, "selection"], ["kendoButton", "", "class", "buttongroup-option", 3, "toggleable", "selected", "disabled", "click", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["kendoButton", "", 1, "buttongroup-option", 3, "click", "toggleable", "selected", "disabled"], ["aria-hidden", "true", 3, "class", 4, "ngIf"], ["aria-hidden", "true"], [1, "question-radio-group"], ["class", "radio-option", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "radio-option"], ["type", "radio", "kendoRadioButton", "", 3, "change", "name", "value", "checked", "disabled", "id"], [1, "radio-label", 3, "for"], [1, "question-dropdown", 3, "formControl", "disabled"], ["value", ""], [3, "value", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "value"], [1, "question-slider-container"], [1, "question-slider", 3, "valueChange", "min", "max", "smallStep", "value", "disabled"], [1, "slider-value"], [1, "question-daterange"], ["placeholder", "Start Date", 1, "daterange-start", 3, "valueChange", "value", "disabled"], [1, "daterange-separator"], ["placeholder", "End Date", 1, "daterange-end", 3, "valueChange", "value", "disabled"], [1, "question-input", 3, "valueChange", "value", "disabled", "format"], [1, "question-checkbox-group"], ["class", "checkbox-option", 4, "ngFor", "ngForOf", "ngForTrackBy"], [1, "checkbox-option"], ["type", "checkbox", "kendoCheckBox", "", 3, "change", "checked", "disabled", "id"], [1, "checkbox-label", 3, "for"], [1, "validation-error"], [4, "ngIf"]], template: function FormQuestionComponent_Template(rf, ctx) { if (rf & 1) {
559
559
  i0.ɵɵelementStart(0, "div", 0);
560
560
  i0.ɵɵtemplate(1, FormQuestionComponent_label_1_Template, 3, 2, "label", 1)(2, FormQuestionComponent_div_2_Template, 2, 1, "div", 2);
561
561
  i0.ɵɵelementStart(3, "div", 3);
@@ -601,7 +601,7 @@ export class FormQuestionComponent {
601
601
  i0.ɵɵproperty("ngIf", ctx.questionType === "checkbox");
602
602
  i0.ɵɵadvance();
603
603
  i0.ɵɵproperty("ngIf", (ctx.control == null ? null : ctx.control.invalid) && (ctx.control == null ? null : ctx.control.touched));
604
- } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i2.NgSelectOption, i2.ɵNgSelectMultipleOption, i2.SelectControlValueAccessor, i2.NgControlStatus, i2.FormControlDirective, i3.ButtonGroupComponent, i3.ButtonComponent, i4.TextAreaDirective, i4.TextBoxDirective, i4.SliderComponent, i4.NumericTextBoxComponent, i4.CheckBoxDirective, i4.RadioButtonDirective, i5.DatePickerComponent, i5.TimePickerComponent, i5.DateTimePickerComponent], styles: [".form-question[_ngcontent-%COMP%] {\n margin-bottom: 16px;\n}\n\n.question-label[_ngcontent-%COMP%] {\n display: block;\n font-weight: 500;\n margin-bottom: 6px;\n color: #333;\n font-size: 14px;\n}\n\n.required-indicator[_ngcontent-%COMP%] {\n color: #d9534f;\n margin-left: 2px;\n}\n\n.help-text[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #666;\n margin-bottom: 8px;\n font-style: italic;\n}\n\n\n\n.question-input[_ngcontent-%COMP%], \n.question-textarea[_ngcontent-%COMP%], \n.question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n max-width: 100%;\n}\n\n.question-dropdown[_ngcontent-%COMP%] {\n padding: 8px 12px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n font-size: 14px;\n font-family: inherit;\n background-color: white;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: right 8px center;\n background-size: 12px;\n padding-right: 32px;\n cursor: pointer;\n transition: border-color 0.2s ease, box-shadow 0.2s ease;\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n.question-dropdown[_ngcontent-%COMP%]:hover {\n border-color: #9ca3af;\n}\n\n.question-dropdown[_ngcontent-%COMP%]:focus {\n outline: none;\n border-color: #667eea;\n box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);\n}\n\n.question-dropdown[_ngcontent-%COMP%]:disabled {\n background-color: #f3f4f6;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.question-textarea[_ngcontent-%COMP%] {\n resize: vertical;\n min-height: 60px;\n}\n\n.question-buttongroup[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: nowrap;\n gap: 8px;\n overflow-x: auto;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: thin;\n scrollbar-color: rgba(16, 185, 129, 0.3) transparent;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar {\n height: 6px;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar-thumb {\n background: rgba(16, 185, 129, 0.3);\n border-radius: 3px;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover {\n background: rgba(16, 185, 129, 0.5);\n}\n\n.buttongroup-option[_ngcontent-%COMP%] {\n flex: 0 0 auto;\n white-space: nowrap;\n}\n\n.buttongroup-option[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n margin-right: 6px;\n}\n\n.question-radio-group[_ngcontent-%COMP%], \n.question-checkbox-group[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n gap: 12px 16px;\n}\n\n.radio-option[_ngcontent-%COMP%], \n.checkbox-option[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 120px;\n flex: 0 0 auto;\n}\n\n.radio-label[_ngcontent-%COMP%], \n.checkbox-label[_ngcontent-%COMP%] {\n cursor: pointer;\n user-select: none;\n margin: 0;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.radio-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.checkbox-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #666;\n}\n\n.validation-error[_ngcontent-%COMP%] {\n color: #d9534f;\n font-size: 12px;\n margin-top: 4px;\n}\n\n\n\n.form-question.required[_ngcontent-%COMP%] .question-label[_ngcontent-%COMP%] {\n font-weight: 600;\n}\n\n\n\n.question-slider-container[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n.question-slider[_ngcontent-%COMP%] {\n width: 100%;\n margin-bottom: 8px;\n}\n\n.slider-value[_ngcontent-%COMP%] {\n text-align: center;\n font-size: 16px;\n font-weight: 600;\n color: #10b981;\n padding: 4px 0;\n}\n\n\n\n.question-daterange[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.daterange-start[_ngcontent-%COMP%], \n.daterange-end[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 150px;\n}\n\n.daterange-separator[_ngcontent-%COMP%] {\n font-weight: 500;\n color: #666;\n white-space: nowrap;\n}\n\n\n\n@media (max-width: 480px) {\n .question-daterange[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: stretch;\n }\n\n .daterange-separator[_ngcontent-%COMP%] {\n text-align: center;\n padding: 4px 0;\n }\n}\n\n\n\n\n\n\n.input-container[_ngcontent-%COMP%] {\n display: block;\n}\n\n\n\n.input-container.width-narrow[_ngcontent-%COMP%] {\n max-width: 200px;\n}\n\n.input-container.width-narrow[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-narrow[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-medium[_ngcontent-%COMP%] {\n max-width: 350px;\n}\n\n.input-container.width-medium[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-medium[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-wide[_ngcontent-%COMP%] {\n max-width: 500px;\n}\n\n.input-container.width-wide[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-wide[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-full[_ngcontent-%COMP%] {\n max-width: 100%;\n}\n\n.input-container.width-full[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-full[_ngcontent-%COMP%] .question-textarea[_ngcontent-%COMP%], \n.input-container.width-full[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-auto[_ngcontent-%COMP%] {\n max-width: 350px;\n min-width: 150px;\n width: auto;\n}\n\n.input-container.width-auto[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n@media (max-width: 600px) {\n .input-container.width-narrow[_ngcontent-%COMP%], \n .input-container.width-medium[_ngcontent-%COMP%], \n .input-container.width-wide[_ngcontent-%COMP%], \n .input-container.width-auto[_ngcontent-%COMP%] {\n max-width: 100%;\n }\n}"] });
604
+ } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i2.NgSelectOption, i2.ɵNgSelectMultipleOption, i2.SelectControlValueAccessor, i2.NgControlStatus, i2.FormControlDirective, i3.ButtonGroupComponent, i3.ButtonComponent, i4.TextAreaDirective, i4.TextBoxDirective, i4.SliderComponent, i4.NumericTextBoxComponent, i4.CheckBoxDirective, i4.RadioButtonDirective, i5.DatePickerComponent, i5.TimePickerComponent, i5.DateTimePickerComponent], styles: [".form-question[_ngcontent-%COMP%] {\n margin-bottom: 16px;\n}\n\n.question-label[_ngcontent-%COMP%] {\n display: block;\n font-weight: 500;\n margin-bottom: 6px;\n color: #333;\n font-size: 14px;\n}\n\n.required-indicator[_ngcontent-%COMP%] {\n color: #d9534f;\n margin-left: 2px;\n}\n\n.help-text[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #666;\n margin-bottom: 8px;\n font-style: italic;\n}\n\n\n\n.question-input[_ngcontent-%COMP%], \n.question-textarea[_ngcontent-%COMP%], \n.question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n max-width: 100%;\n}\n\n.question-dropdown[_ngcontent-%COMP%] {\n padding: 8px 12px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n font-size: 14px;\n font-family: inherit;\n background-color: white;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: right 8px center;\n background-size: 12px;\n padding-right: 32px;\n cursor: pointer;\n transition: border-color 0.2s ease, box-shadow 0.2s ease;\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n.question-dropdown[_ngcontent-%COMP%]:hover {\n border-color: #9ca3af;\n}\n\n.question-dropdown[_ngcontent-%COMP%]:focus {\n outline: none;\n border-color: #667eea;\n box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);\n}\n\n.question-dropdown[_ngcontent-%COMP%]:disabled {\n background-color: #f3f4f6;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.question-textarea[_ngcontent-%COMP%] {\n resize: vertical;\n min-height: 100px;\n}\n\n.question-buttongroup[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: nowrap;\n gap: 8px;\n overflow-x: auto;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: thin;\n scrollbar-color: rgba(16, 185, 129, 0.3) transparent;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar {\n height: 6px;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar-thumb {\n background: rgba(16, 185, 129, 0.3);\n border-radius: 3px;\n}\n\n.question-buttongroup[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover {\n background: rgba(16, 185, 129, 0.5);\n}\n\n.buttongroup-option[_ngcontent-%COMP%] {\n flex: 0 0 auto;\n white-space: nowrap;\n}\n\n.buttongroup-option[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n margin-right: 6px;\n}\n\n.question-radio-group[_ngcontent-%COMP%], \n.question-checkbox-group[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n gap: 12px 16px;\n}\n\n.radio-option[_ngcontent-%COMP%], \n.checkbox-option[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 120px;\n flex: 0 0 auto;\n}\n\n.radio-label[_ngcontent-%COMP%], \n.checkbox-label[_ngcontent-%COMP%] {\n cursor: pointer;\n user-select: none;\n margin: 0;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.radio-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.checkbox-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #666;\n}\n\n.validation-error[_ngcontent-%COMP%] {\n color: #d9534f;\n font-size: 12px;\n margin-top: 4px;\n}\n\n\n\n.form-question.required[_ngcontent-%COMP%] .question-label[_ngcontent-%COMP%] {\n font-weight: 600;\n}\n\n\n\n.question-slider-container[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n.question-slider[_ngcontent-%COMP%] {\n width: 100%;\n margin-bottom: 8px;\n}\n\n.slider-value[_ngcontent-%COMP%] {\n text-align: center;\n font-size: 16px;\n font-weight: 600;\n color: #10b981;\n padding: 4px 0;\n}\n\n\n\n.question-daterange[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.daterange-start[_ngcontent-%COMP%], \n.daterange-end[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 150px;\n}\n\n.daterange-separator[_ngcontent-%COMP%] {\n font-weight: 500;\n color: #666;\n white-space: nowrap;\n}\n\n\n\n@media (max-width: 480px) {\n .question-daterange[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: stretch;\n }\n\n .daterange-separator[_ngcontent-%COMP%] {\n text-align: center;\n padding: 4px 0;\n }\n}\n\n\n\n\n\n\n.input-container[_ngcontent-%COMP%] {\n display: block;\n}\n\n\n\n.input-container.width-narrow[_ngcontent-%COMP%] {\n max-width: 200px;\n}\n\n.input-container.width-narrow[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-narrow[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-medium[_ngcontent-%COMP%] {\n max-width: 450px;\n}\n\n.input-container.width-medium[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-medium[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-wide[_ngcontent-%COMP%] {\n max-width: 100%;\n}\n\n.input-container.width-wide[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-wide[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-full[_ngcontent-%COMP%] {\n max-width: 100%;\n}\n\n.input-container.width-full[_ngcontent-%COMP%] .question-input[_ngcontent-%COMP%], \n.input-container.width-full[_ngcontent-%COMP%] .question-textarea[_ngcontent-%COMP%], \n.input-container.width-full[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.input-container.width-auto[_ngcontent-%COMP%] {\n max-width: 350px;\n min-width: 150px;\n width: auto;\n}\n\n.input-container.width-auto[_ngcontent-%COMP%] .question-dropdown[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n@media (max-width: 600px) {\n .input-container.width-narrow[_ngcontent-%COMP%], \n .input-container.width-medium[_ngcontent-%COMP%], \n .input-container.width-wide[_ngcontent-%COMP%], \n .input-container.width-auto[_ngcontent-%COMP%] {\n max-width: 100%;\n }\n}"] });
605
605
  }
606
606
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormQuestionComponent, [{
607
607
  type: Component,
@@ -611,7 +611,7 @@ export class FormQuestionComponent {
611
611
  useExisting: forwardRef(() => FormQuestionComponent),
612
612
  multi: true
613
613
  }
614
- ], template: "<div class=\"form-question\" [class.required]=\"question.required\">\n <!-- Label -->\n <label *ngIf=\"question.label\" class=\"question-label\">\n {{ question.label }}\n <span *ngIf=\"question.required\" class=\"required-indicator\">*</span>\n </label>\n\n <!-- Help Text -->\n <div *ngIf=\"question.helpText\" class=\"help-text\">\n {{ question.helpText }}\n </div>\n\n <!-- Input Container with width class -->\n <div class=\"input-container\" [ngClass]=\"widthClass\">\n\n <!-- Text Input -->\n <input\n *ngIf=\"questionType === 'text'\"\n type=\"text\"\n kendoTextBox\n [value]=\"value || ''\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onValueChange($any($event.target).value)\"\n class=\"question-input\"\n />\n\n <!-- Email Input -->\n <input\n *ngIf=\"questionType === 'email'\"\n type=\"email\"\n kendoTextBox\n [value]=\"value || ''\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onValueChange($any($event.target).value)\"\n class=\"question-input\"\n />\n\n <!-- Textarea -->\n <textarea\n *ngIf=\"questionType === 'textarea'\"\n kendoTextArea\n [value]=\"value || ''\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onValueChange($any($event.target).value)\"\n class=\"question-textarea\"\n rows=\"3\"\n ></textarea>\n\n <!-- Number Input -->\n <kendo-numerictextbox\n *ngIf=\"questionType === 'number'\"\n [value]=\"value\"\n [min]=\"min || 0\"\n [max]=\"max || 999999999\"\n [step]=\"step || 1\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-numerictextbox>\n\n <!-- Currency Input -->\n <kendo-numerictextbox\n *ngIf=\"questionType === 'currency'\"\n [value]=\"value\"\n [min]=\"min || 0\"\n [max]=\"max || 999999999\"\n [step]=\"step || 0.01\"\n [format]=\"'c2'\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-numerictextbox>\n\n <!-- Date Picker -->\n <kendo-datepicker\n *ngIf=\"questionType === 'date'\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-datepicker>\n\n <!-- DateTime Picker -->\n <kendo-datetimepicker\n *ngIf=\"questionType === 'datetime'\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-datetimepicker>\n\n <!-- Button Group -->\n <kendo-buttongroup\n *ngIf=\"questionType === 'buttongroup'\"\n [selection]=\"'single'\"\n class=\"question-buttongroup\"\n >\n <button\n *ngFor=\"let option of options; trackBy: trackByValue\"\n kendoButton\n [toggleable]=\"true\"\n [selected]=\"value === option.value\"\n [disabled]=\"disabled\"\n (click)=\"onValueChange(option.value)\"\n class=\"buttongroup-option\"\n >\n <i *ngIf=\"option.icon\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </button>\n </kendo-buttongroup>\n\n <!-- Radio Buttons -->\n <div *ngIf=\"questionType === 'radio'\" class=\"question-radio-group\">\n <div *ngFor=\"let option of options; trackBy: trackByValue\" class=\"radio-option\">\n <input\n type=\"radio\"\n kendoRadioButton\n [name]=\"question.id\"\n [value]=\"option.value\"\n [checked]=\"value === option.value\"\n [disabled]=\"disabled\"\n (change)=\"onValueChange(option.value)\"\n [id]=\"question.id + '_' + option.value\"\n />\n <label [for]=\"question.id + '_' + option.value\" class=\"radio-label\">\n <i *ngIf=\"option.icon\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </label>\n </div>\n </div>\n\n <!-- Dropdown -->\n <select\n *ngIf=\"questionType === 'dropdown'\"\n [formControl]=\"control\"\n [disabled]=\"disabled\"\n class=\"question-dropdown\"\n >\n <option value=\"\">Select an option...</option>\n <option *ngFor=\"let option of options; trackBy: trackByValue\" [value]=\"option.value\">\n {{ option.label }}\n </option>\n </select>\n\n <!-- Slider -->\n <div *ngIf=\"questionType === 'slider'\" class=\"question-slider-container\">\n <kendo-slider\n [min]=\"getSliderConfig().min\"\n [max]=\"getSliderConfig().max\"\n [smallStep]=\"getSliderConfig().step || 1\"\n [value]=\"value || getSliderConfig().min\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-slider\"\n ></kendo-slider>\n <div class=\"slider-value\">\n {{ value || getSliderConfig().min }}{{ getSliderConfig().suffix || '' }}\n </div>\n </div>\n\n <!-- Date Range -->\n <div *ngIf=\"questionType === 'daterange'\" class=\"question-daterange\">\n <kendo-datepicker\n [value]=\"value?.start\"\n [disabled]=\"disabled\"\n (valueChange)=\"onDateRangeStartChange($event)\"\n placeholder=\"Start Date\"\n class=\"daterange-start\"\n ></kendo-datepicker>\n <span class=\"daterange-separator\">to</span>\n <kendo-datepicker\n [value]=\"value?.end\"\n [disabled]=\"disabled\"\n (valueChange)=\"onDateRangeEndChange($event)\"\n placeholder=\"End Date\"\n class=\"daterange-end\"\n ></kendo-datepicker>\n </div>\n\n <!-- Time Picker -->\n <kendo-timepicker\n *ngIf=\"questionType === 'time'\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n [format]=\"'h:mm a'\"\n class=\"question-input\"\n ></kendo-timepicker>\n\n <!-- Checkboxes -->\n <div *ngIf=\"questionType === 'checkbox'\" class=\"question-checkbox-group\">\n <div *ngFor=\"let option of options; trackBy: trackByValue\" class=\"checkbox-option\">\n <input\n type=\"checkbox\"\n kendoCheckBox\n [checked]=\"isChecked(option)\"\n [disabled]=\"disabled\"\n (change)=\"toggleCheckbox(option)\"\n [id]=\"question.id + '_' + option.value\"\n />\n <label [for]=\"question.id + '_' + option.value\" class=\"checkbox-label\">\n <i *ngIf=\"option.icon\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </label>\n </div>\n </div>\n </div><!-- end input-container -->\n\n <!-- Validation Error -->\n <div *ngIf=\"control?.invalid && control?.touched\" class=\"validation-error\">\n <span *ngIf=\"control?.errors?.['required']\">This field is required</span>\n <span *ngIf=\"control?.errors?.['email']\">Please enter a valid email address</span>\n <span *ngIf=\"control?.errors?.['min']\">Value must be at least {{ min }}</span>\n <span *ngIf=\"control?.errors?.['max']\">Value must be at most {{ max }}</span>\n </div>\n</div>\n", styles: [".form-question {\n margin-bottom: 16px;\n}\n\n.question-label {\n display: block;\n font-weight: 500;\n margin-bottom: 6px;\n color: #333;\n font-size: 14px;\n}\n\n.required-indicator {\n color: #d9534f;\n margin-left: 2px;\n}\n\n.help-text {\n font-size: 12px;\n color: #666;\n margin-bottom: 8px;\n font-style: italic;\n}\n\n/* Default widths - controlled by input-container width classes */\n.question-input,\n.question-textarea,\n.question-dropdown {\n width: 100%;\n max-width: 100%;\n}\n\n.question-dropdown {\n padding: 8px 12px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n font-size: 14px;\n font-family: inherit;\n background-color: white;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: right 8px center;\n background-size: 12px;\n padding-right: 32px;\n cursor: pointer;\n transition: border-color 0.2s ease, box-shadow 0.2s ease;\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n.question-dropdown:hover {\n border-color: #9ca3af;\n}\n\n.question-dropdown:focus {\n outline: none;\n border-color: #667eea;\n box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);\n}\n\n.question-dropdown:disabled {\n background-color: #f3f4f6;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.question-textarea {\n resize: vertical;\n min-height: 60px;\n}\n\n.question-buttongroup {\n display: flex;\n flex-wrap: nowrap;\n gap: 8px;\n overflow-x: auto;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: thin;\n scrollbar-color: rgba(16, 185, 129, 0.3) transparent;\n}\n\n.question-buttongroup::-webkit-scrollbar {\n height: 6px;\n}\n\n.question-buttongroup::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.question-buttongroup::-webkit-scrollbar-thumb {\n background: rgba(16, 185, 129, 0.3);\n border-radius: 3px;\n}\n\n.question-buttongroup::-webkit-scrollbar-thumb:hover {\n background: rgba(16, 185, 129, 0.5);\n}\n\n.buttongroup-option {\n flex: 0 0 auto;\n white-space: nowrap;\n}\n\n.buttongroup-option i {\n margin-right: 6px;\n}\n\n.question-radio-group,\n.question-checkbox-group {\n display: flex;\n flex-wrap: wrap;\n gap: 12px 16px;\n}\n\n.radio-option,\n.checkbox-option {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 120px;\n flex: 0 0 auto;\n}\n\n.radio-label,\n.checkbox-label {\n cursor: pointer;\n user-select: none;\n margin: 0;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.radio-label i,\n.checkbox-label i {\n color: #666;\n}\n\n.validation-error {\n color: #d9534f;\n font-size: 12px;\n margin-top: 4px;\n}\n\n/* Required field styling */\n.form-question.required .question-label {\n font-weight: 600;\n}\n\n/* Slider styling */\n.question-slider-container {\n width: 100%;\n}\n\n.question-slider {\n width: 100%;\n margin-bottom: 8px;\n}\n\n.slider-value {\n text-align: center;\n font-size: 16px;\n font-weight: 600;\n color: #10b981;\n padding: 4px 0;\n}\n\n/* Date range styling */\n.question-daterange {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.daterange-start,\n.daterange-end {\n flex: 1;\n min-width: 150px;\n}\n\n.daterange-separator {\n font-weight: 500;\n color: #666;\n white-space: nowrap;\n}\n\n/* Mobile adjustments for date range */\n@media (max-width: 480px) {\n .question-daterange {\n flex-direction: column;\n align-items: stretch;\n }\n\n .daterange-separator {\n text-align: center;\n padding: 4px 0;\n }\n}\n\n/* ===== Semantic Width Classes ===== */\n/* Controls field width based on expected content length */\n\n.input-container {\n display: block;\n}\n\n/* Narrow fields - for numbers, dates, times, short codes */\n.input-container.width-narrow {\n max-width: 200px;\n}\n\n.input-container.width-narrow .question-input,\n.input-container.width-narrow .question-dropdown {\n width: 100%;\n}\n\n/* Medium fields - for names, cities, phone numbers (DEFAULT) */\n.input-container.width-medium {\n max-width: 350px;\n}\n\n.input-container.width-medium .question-input,\n.input-container.width-medium .question-dropdown {\n width: 100%;\n}\n\n/* Wide fields - for emails, URLs, long text */\n.input-container.width-wide {\n max-width: 500px;\n}\n\n.input-container.width-wide .question-input,\n.input-container.width-wide .question-dropdown {\n width: 100%;\n}\n\n/* Full width - for textarea, search fields */\n.input-container.width-full {\n max-width: 100%;\n}\n\n.input-container.width-full .question-input,\n.input-container.width-full .question-textarea,\n.input-container.width-full .question-dropdown {\n width: 100%;\n}\n\n/* Auto-width - for dropdowns, radio, checkbox (sizes to content) */\n.input-container.width-auto {\n max-width: 350px;\n min-width: 150px;\n width: auto;\n}\n\n.input-container.width-auto .question-dropdown {\n width: 100%;\n}\n\n/* Responsive adjustments for smaller screens */\n@media (max-width: 600px) {\n .input-container.width-narrow,\n .input-container.width-medium,\n .input-container.width-wide,\n .input-container.width-auto {\n max-width: 100%;\n }\n}\n"] }]
614
+ ], template: "<div class=\"form-question\" [class.required]=\"question.required\">\n <!-- Label -->\n <label *ngIf=\"question.label\" class=\"question-label\">\n {{ question.label }}\n <span *ngIf=\"question.required\" class=\"required-indicator\">*</span>\n </label>\n\n <!-- Help Text -->\n <div *ngIf=\"question.helpText\" class=\"help-text\">\n {{ question.helpText }}\n </div>\n\n <!-- Input Container with width class -->\n <div class=\"input-container\" [ngClass]=\"widthClass\">\n\n <!-- Text Input -->\n <input\n *ngIf=\"questionType === 'text'\"\n type=\"text\"\n kendoTextBox\n [value]=\"value || ''\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onValueChange($any($event.target).value)\"\n class=\"question-input\"\n />\n\n <!-- Email Input -->\n <input\n *ngIf=\"questionType === 'email'\"\n type=\"email\"\n kendoTextBox\n [value]=\"value || ''\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onValueChange($any($event.target).value)\"\n class=\"question-input\"\n />\n\n <!-- Textarea -->\n <textarea\n *ngIf=\"questionType === 'textarea'\"\n kendoTextArea\n [value]=\"value || ''\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n (input)=\"onValueChange($any($event.target).value)\"\n class=\"question-textarea\"\n rows=\"5\"\n ></textarea>\n\n <!-- Number Input -->\n <kendo-numerictextbox\n *ngIf=\"questionType === 'number'\"\n [value]=\"value\"\n [min]=\"min || 0\"\n [max]=\"max || 999999999\"\n [step]=\"step || 1\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-numerictextbox>\n\n <!-- Currency Input -->\n <kendo-numerictextbox\n *ngIf=\"questionType === 'currency'\"\n [value]=\"value\"\n [min]=\"min || 0\"\n [max]=\"max || 999999999\"\n [step]=\"step || 0.01\"\n [format]=\"'c2'\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-numerictextbox>\n\n <!-- Date Picker -->\n <kendo-datepicker\n *ngIf=\"questionType === 'date'\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-datepicker>\n\n <!-- DateTime Picker -->\n <kendo-datetimepicker\n *ngIf=\"questionType === 'datetime'\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-input\"\n ></kendo-datetimepicker>\n\n <!-- Button Group -->\n <kendo-buttongroup\n *ngIf=\"questionType === 'buttongroup'\"\n [selection]=\"'single'\"\n class=\"question-buttongroup\"\n >\n <button\n *ngFor=\"let option of options; trackBy: trackByValue\"\n kendoButton\n [toggleable]=\"true\"\n [selected]=\"value === option.value\"\n [disabled]=\"disabled\"\n (click)=\"onValueChange(option.value)\"\n class=\"buttongroup-option\"\n >\n <i *ngIf=\"option.icon\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </button>\n </kendo-buttongroup>\n\n <!-- Radio Buttons -->\n <div *ngIf=\"questionType === 'radio'\" class=\"question-radio-group\">\n <div *ngFor=\"let option of options; trackBy: trackByValue\" class=\"radio-option\">\n <input\n type=\"radio\"\n kendoRadioButton\n [name]=\"question.id\"\n [value]=\"option.value\"\n [checked]=\"value === option.value\"\n [disabled]=\"disabled\"\n (change)=\"onValueChange(option.value)\"\n [id]=\"question.id + '_' + option.value\"\n />\n <label [for]=\"question.id + '_' + option.value\" class=\"radio-label\">\n <i *ngIf=\"option.icon\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </label>\n </div>\n </div>\n\n <!-- Dropdown -->\n <select\n *ngIf=\"questionType === 'dropdown'\"\n [formControl]=\"control\"\n [disabled]=\"disabled\"\n class=\"question-dropdown\"\n >\n <option value=\"\">Select an option...</option>\n <option *ngFor=\"let option of options; trackBy: trackByValue\" [value]=\"option.value\">\n {{ option.label }}\n </option>\n </select>\n\n <!-- Slider -->\n <div *ngIf=\"questionType === 'slider'\" class=\"question-slider-container\">\n <kendo-slider\n [min]=\"getSliderConfig().min\"\n [max]=\"getSliderConfig().max\"\n [smallStep]=\"getSliderConfig().step || 1\"\n [value]=\"value || getSliderConfig().min\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n class=\"question-slider\"\n ></kendo-slider>\n <div class=\"slider-value\">\n {{ value || getSliderConfig().min }}{{ getSliderConfig().suffix || '' }}\n </div>\n </div>\n\n <!-- Date Range -->\n <div *ngIf=\"questionType === 'daterange'\" class=\"question-daterange\">\n <kendo-datepicker\n [value]=\"value?.start\"\n [disabled]=\"disabled\"\n (valueChange)=\"onDateRangeStartChange($event)\"\n placeholder=\"Start Date\"\n class=\"daterange-start\"\n ></kendo-datepicker>\n <span class=\"daterange-separator\">to</span>\n <kendo-datepicker\n [value]=\"value?.end\"\n [disabled]=\"disabled\"\n (valueChange)=\"onDateRangeEndChange($event)\"\n placeholder=\"End Date\"\n class=\"daterange-end\"\n ></kendo-datepicker>\n </div>\n\n <!-- Time Picker -->\n <kendo-timepicker\n *ngIf=\"questionType === 'time'\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n (valueChange)=\"onValueChange($event)\"\n [format]=\"'h:mm a'\"\n class=\"question-input\"\n ></kendo-timepicker>\n\n <!-- Checkboxes -->\n <div *ngIf=\"questionType === 'checkbox'\" class=\"question-checkbox-group\">\n <div *ngFor=\"let option of options; trackBy: trackByValue\" class=\"checkbox-option\">\n <input\n type=\"checkbox\"\n kendoCheckBox\n [checked]=\"isChecked(option)\"\n [disabled]=\"disabled\"\n (change)=\"toggleCheckbox(option)\"\n [id]=\"question.id + '_' + option.value\"\n />\n <label [for]=\"question.id + '_' + option.value\" class=\"checkbox-label\">\n <i *ngIf=\"option.icon\" class=\"fa {{ option.icon }}\" aria-hidden=\"true\"></i>\n {{ option.label }}\n </label>\n </div>\n </div>\n </div><!-- end input-container -->\n\n <!-- Validation Error -->\n <div *ngIf=\"control?.invalid && control?.touched\" class=\"validation-error\">\n <span *ngIf=\"control?.errors?.['required']\">This field is required</span>\n <span *ngIf=\"control?.errors?.['email']\">Please enter a valid email address</span>\n <span *ngIf=\"control?.errors?.['min']\">Value must be at least {{ min }}</span>\n <span *ngIf=\"control?.errors?.['max']\">Value must be at most {{ max }}</span>\n </div>\n</div>\n", styles: [".form-question {\n margin-bottom: 16px;\n}\n\n.question-label {\n display: block;\n font-weight: 500;\n margin-bottom: 6px;\n color: #333;\n font-size: 14px;\n}\n\n.required-indicator {\n color: #d9534f;\n margin-left: 2px;\n}\n\n.help-text {\n font-size: 12px;\n color: #666;\n margin-bottom: 8px;\n font-style: italic;\n}\n\n/* Default widths - controlled by input-container width classes */\n.question-input,\n.question-textarea,\n.question-dropdown {\n width: 100%;\n max-width: 100%;\n}\n\n.question-dropdown {\n padding: 8px 12px;\n border: 1px solid #d1d5db;\n border-radius: 4px;\n font-size: 14px;\n font-family: inherit;\n background-color: white;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: right 8px center;\n background-size: 12px;\n padding-right: 32px;\n cursor: pointer;\n transition: border-color 0.2s ease, box-shadow 0.2s ease;\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n.question-dropdown:hover {\n border-color: #9ca3af;\n}\n\n.question-dropdown:focus {\n outline: none;\n border-color: #667eea;\n box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);\n}\n\n.question-dropdown:disabled {\n background-color: #f3f4f6;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.question-textarea {\n resize: vertical;\n min-height: 100px;\n}\n\n.question-buttongroup {\n display: flex;\n flex-wrap: nowrap;\n gap: 8px;\n overflow-x: auto;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: thin;\n scrollbar-color: rgba(16, 185, 129, 0.3) transparent;\n}\n\n.question-buttongroup::-webkit-scrollbar {\n height: 6px;\n}\n\n.question-buttongroup::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.question-buttongroup::-webkit-scrollbar-thumb {\n background: rgba(16, 185, 129, 0.3);\n border-radius: 3px;\n}\n\n.question-buttongroup::-webkit-scrollbar-thumb:hover {\n background: rgba(16, 185, 129, 0.5);\n}\n\n.buttongroup-option {\n flex: 0 0 auto;\n white-space: nowrap;\n}\n\n.buttongroup-option i {\n margin-right: 6px;\n}\n\n.question-radio-group,\n.question-checkbox-group {\n display: flex;\n flex-wrap: wrap;\n gap: 12px 16px;\n}\n\n.radio-option,\n.checkbox-option {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 120px;\n flex: 0 0 auto;\n}\n\n.radio-label,\n.checkbox-label {\n cursor: pointer;\n user-select: none;\n margin: 0;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.radio-label i,\n.checkbox-label i {\n color: #666;\n}\n\n.validation-error {\n color: #d9534f;\n font-size: 12px;\n margin-top: 4px;\n}\n\n/* Required field styling */\n.form-question.required .question-label {\n font-weight: 600;\n}\n\n/* Slider styling */\n.question-slider-container {\n width: 100%;\n}\n\n.question-slider {\n width: 100%;\n margin-bottom: 8px;\n}\n\n.slider-value {\n text-align: center;\n font-size: 16px;\n font-weight: 600;\n color: #10b981;\n padding: 4px 0;\n}\n\n/* Date range styling */\n.question-daterange {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.daterange-start,\n.daterange-end {\n flex: 1;\n min-width: 150px;\n}\n\n.daterange-separator {\n font-weight: 500;\n color: #666;\n white-space: nowrap;\n}\n\n/* Mobile adjustments for date range */\n@media (max-width: 480px) {\n .question-daterange {\n flex-direction: column;\n align-items: stretch;\n }\n\n .daterange-separator {\n text-align: center;\n padding: 4px 0;\n }\n}\n\n/* ===== Semantic Width Classes ===== */\n/* Controls field width based on expected content length */\n\n.input-container {\n display: block;\n}\n\n/* Narrow fields - for numbers, dates, times, short codes */\n.input-container.width-narrow {\n max-width: 200px;\n}\n\n.input-container.width-narrow .question-input,\n.input-container.width-narrow .question-dropdown {\n width: 100%;\n}\n\n/* Medium fields - for names, cities, phone numbers (DEFAULT) */\n.input-container.width-medium {\n max-width: 450px;\n}\n\n.input-container.width-medium .question-input,\n.input-container.width-medium .question-dropdown {\n width: 100%;\n}\n\n/* Wide fields - for emails, URLs, long text */\n.input-container.width-wide {\n max-width: 100%;\n}\n\n.input-container.width-wide .question-input,\n.input-container.width-wide .question-dropdown {\n width: 100%;\n}\n\n/* Full width - for textarea, search fields */\n.input-container.width-full {\n max-width: 100%;\n}\n\n.input-container.width-full .question-input,\n.input-container.width-full .question-textarea,\n.input-container.width-full .question-dropdown {\n width: 100%;\n}\n\n/* Auto-width - for dropdowns, radio, checkbox (sizes to content) */\n.input-container.width-auto {\n max-width: 350px;\n min-width: 150px;\n width: auto;\n}\n\n.input-container.width-auto .question-dropdown {\n width: 100%;\n}\n\n/* Responsive adjustments for smaller screens */\n@media (max-width: 600px) {\n .input-container.width-narrow,\n .input-container.width-medium,\n .input-container.width-wide,\n .input-container.width-auto {\n max-width: 100%;\n }\n}\n"] }]
615
615
  }], null, { question: [{
616
616
  type: Input
617
617
  }], control: [{
@@ -1,6 +1,7 @@
1
1
  import { EventEmitter, OnInit, OnDestroy, OnChanges, SimpleChanges, AfterViewInit } from '@angular/core';
2
2
  import { UserInfo } from '@memberjunction/core';
3
- import { ConversationDetailEntity, AIAgentEntityExtended, AIAgentRunEntityExtended } from '@memberjunction/core-entities';
3
+ import { ConversationDetailEntity } from '@memberjunction/core-entities';
4
+ import { AIAgentEntityExtended, AIAgentRunEntityExtended } from "@memberjunction/ai-core-plus";
4
5
  import { DialogService } from '../../services/dialog.service';
5
6
  import { ToastService } from '../../services/toast.service';
6
7
  import { ConversationAgentService } from '../../services/conversation-agent.service';
@@ -208,6 +209,8 @@ export declare class MessageInputComponent implements OnInit, OnDestroy, OnChang
208
209
  protected updateConversationDetail(convoDetail: ConversationDetailEntity, message: string, status: 'In-Progress' | 'Complete' | 'Error', result?: ExecuteAgentResult): Promise<void>;
209
210
  /**
210
211
  * Load previous payload for an agent from its most recent OUTPUT artifact.
212
+ * Searches backwards through all messages from this agent until an artifact is found.
213
+ * This ensures payload continuity even after clarifying exchanges without artifacts.
211
214
  * Checks both user-visible and system artifacts to support agents like Agent Manager.
212
215
  */
213
216
  private loadPreviousPayloadForAgent;