@copilotkitnext/angular 1.52.0-next.7 → 1.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +225 -432
- package/dist/README.md +225 -432
- package/dist/fesm2022/copilotkitnext-angular.mjs +312 -161
- package/dist/fesm2022/copilotkitnext-angular.mjs.map +1 -1
- package/dist/lib/agent.d.ts +20 -20
- package/dist/lib/components/chat/copilot-chat-assistant-message.d.ts +46 -46
- package/dist/lib/components/chat/copilot-chat-message-view.d.ts +126 -126
- package/dist/lib/components/chat/copilot-chat-tool-calls-view.d.ts +23 -23
- package/dist/lib/components/chat/copilot-chat-user-message-branch-navigation.d.ts +6 -6
- package/dist/lib/components/chat/copilot-chat-user-message.d.ts +6 -6
- package/dist/lib/components/chat/copilot-chat-view-scroll-view.d.ts +18 -18
- package/dist/lib/components/chat/copilot-chat-view.d.ts +54 -54
- package/dist/lib/components/chat/copilot-chat.d.ts +18 -18
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/copilotkit.d.ts +6 -1
- package/dist/lib/license-watermark.d.ts +1 -0
- package/dist/lib/render-tool-calls.d.ts +23 -23
- package/dist/styles.css +3 -0
- package/package.json +18 -18
- package/dist/esm2022/copilotkitnext-angular.mjs +0 -5
- package/dist/esm2022/index.mjs +0 -2
- package/dist/esm2022/lib/agent-context.mjs +0 -25
- package/dist/esm2022/lib/agent.mjs +0 -73
- package/dist/esm2022/lib/chat-config.mjs +0 -35
- package/dist/esm2022/lib/chat-state.mjs +0 -18
- package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message-buttons.mjs +0 -344
- package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message-renderer.mjs +0 -260
- package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message-toolbar.mjs +0 -22
- package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message.mjs +0 -415
- package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message.types.mjs +0 -2
- package/dist/esm2022/lib/components/chat/copilot-chat-audio-recorder.mjs +0 -196
- package/dist/esm2022/lib/components/chat/copilot-chat-buttons.mjs +0 -299
- package/dist/esm2022/lib/components/chat/copilot-chat-input-defaults.mjs +0 -39
- package/dist/esm2022/lib/components/chat/copilot-chat-input.mjs +0 -634
- package/dist/esm2022/lib/components/chat/copilot-chat-input.types.mjs +0 -10
- package/dist/esm2022/lib/components/chat/copilot-chat-message-view-cursor.mjs +0 -27
- package/dist/esm2022/lib/components/chat/copilot-chat-message-view.mjs +0 -269
- package/dist/esm2022/lib/components/chat/copilot-chat-message-view.types.mjs +0 -2
- package/dist/esm2022/lib/components/chat/copilot-chat-textarea.mjs +0 -139
- package/dist/esm2022/lib/components/chat/copilot-chat-tool-calls-view.mjs +0 -36
- package/dist/esm2022/lib/components/chat/copilot-chat-toolbar.mjs +0 -20
- package/dist/esm2022/lib/components/chat/copilot-chat-tools-menu.mjs +0 -203
- package/dist/esm2022/lib/components/chat/copilot-chat-user-message-branch-navigation.mjs +0 -118
- package/dist/esm2022/lib/components/chat/copilot-chat-user-message-buttons.mjs +0 -182
- package/dist/esm2022/lib/components/chat/copilot-chat-user-message-renderer.mjs +0 -28
- package/dist/esm2022/lib/components/chat/copilot-chat-user-message-toolbar.mjs +0 -25
- package/dist/esm2022/lib/components/chat/copilot-chat-user-message.mjs +0 -328
- package/dist/esm2022/lib/components/chat/copilot-chat-user-message.types.mjs +0 -2
- package/dist/esm2022/lib/components/chat/copilot-chat-view-disclaimer.mjs +0 -48
- package/dist/esm2022/lib/components/chat/copilot-chat-view-feather.mjs +0 -41
- package/dist/esm2022/lib/components/chat/copilot-chat-view-handlers.mjs +0 -19
- package/dist/esm2022/lib/components/chat/copilot-chat-view-input-container.mjs +0 -96
- package/dist/esm2022/lib/components/chat/copilot-chat-view-scroll-to-bottom-button.mjs +0 -89
- package/dist/esm2022/lib/components/chat/copilot-chat-view-scroll-view.mjs +0 -456
- package/dist/esm2022/lib/components/chat/copilot-chat-view.mjs +0 -404
- package/dist/esm2022/lib/components/chat/copilot-chat-view.types.mjs +0 -2
- package/dist/esm2022/lib/components/chat/copilot-chat.mjs +0 -165
- package/dist/esm2022/lib/config.mjs +0 -9
- package/dist/esm2022/lib/copilotkit.mjs +0 -125
- package/dist/esm2022/lib/directives/copilotkit-agent-context.mjs +0 -130
- package/dist/esm2022/lib/directives/stick-to-bottom.mjs +0 -170
- package/dist/esm2022/lib/directives/tooltip.mjs +0 -217
- package/dist/esm2022/lib/human-in-the-loop.mjs +0 -19
- package/dist/esm2022/lib/render-tool-calls.mjs +0 -167
- package/dist/esm2022/lib/resize-observer.mjs +0 -152
- package/dist/esm2022/lib/scroll-position.mjs +0 -123
- package/dist/esm2022/lib/slots/copilot-slot.mjs +0 -156
- package/dist/esm2022/lib/slots/index.mjs +0 -4
- package/dist/esm2022/lib/slots/slot.types.mjs +0 -6
- package/dist/esm2022/lib/slots/slot.utils.mjs +0 -235
- package/dist/esm2022/lib/tools.mjs +0 -31
- package/dist/esm2022/lib/utils.mjs +0 -10
- package/dist/esm2022/public-api.mjs +0 -48
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
import { Component, input, computed, ChangeDetectionStrategy, ViewEncapsulation, } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { CdkMenuModule } from "@angular/cdk/menu";
|
|
4
|
-
import { OverlayModule } from "@angular/cdk/overlay";
|
|
5
|
-
import { LucideAngularModule, Settings2, ChevronRight } from "lucide-angular";
|
|
6
|
-
import { cn } from "../../utils";
|
|
7
|
-
import { injectChatLabels } from "../../chat-config";
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/cdk/menu";
|
|
10
|
-
import * as i2 from "lucide-angular";
|
|
11
|
-
export class CopilotChatToolsMenu {
|
|
12
|
-
Settings2Icon = Settings2;
|
|
13
|
-
ChevronRightIcon = ChevronRight;
|
|
14
|
-
inputToolsMenu = input();
|
|
15
|
-
inputDisabled = input();
|
|
16
|
-
inputClass = input();
|
|
17
|
-
labels = injectChatLabels();
|
|
18
|
-
// Derive state from inputs
|
|
19
|
-
toolsMenu = computed(() => this.inputToolsMenu() ?? []);
|
|
20
|
-
disabled = computed(() => this.inputDisabled() ?? false);
|
|
21
|
-
customClass = computed(() => this.inputClass());
|
|
22
|
-
hasItems = computed(() => this.toolsMenu().length > 0);
|
|
23
|
-
label = this.labels.chatInputToolbarToolsButtonLabel;
|
|
24
|
-
buttonClass = computed(() => {
|
|
25
|
-
const baseClasses = cn(
|
|
26
|
-
// Base button styles
|
|
27
|
-
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full text-sm font-medium", "transition-all disabled:pointer-events-none disabled:opacity-50", "shrink-0 outline-none", "focus-visible:ring-[3px]",
|
|
28
|
-
// chatInputToolbarSecondary variant
|
|
29
|
-
"cursor-pointer", "bg-transparent text-[#444444]", "dark:text-white dark:border-[#404040]", "transition-colors", "focus:outline-none", "hover:bg-[#f8f8f8] hover:text-[#333333]", "dark:hover:bg-[#404040] dark:hover:text-[#FFFFFF]", "disabled:cursor-not-allowed disabled:opacity-50", "disabled:hover:bg-transparent disabled:hover:text-[#444444]", "dark:disabled:hover:bg-transparent dark:disabled:hover:text-[#CCCCCC]",
|
|
30
|
-
// Size
|
|
31
|
-
"h-9 px-3 gap-2 font-normal");
|
|
32
|
-
return cn(baseClasses, this.customClass());
|
|
33
|
-
});
|
|
34
|
-
isMenuItem(item) {
|
|
35
|
-
return item && typeof item === "object" && "label" in item;
|
|
36
|
-
}
|
|
37
|
-
handleItemClick(item) {
|
|
38
|
-
if (item.action) {
|
|
39
|
-
item.action();
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatToolsMenu, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CopilotChatToolsMenu, isStandalone: true, selector: "copilot-chat-tools-menu", inputs: { inputToolsMenu: { classPropertyName: "inputToolsMenu", publicName: "inputToolsMenu", isSignal: true, isRequired: false, transformFunction: null }, inputDisabled: { classPropertyName: "inputDisabled", publicName: "inputDisabled", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
44
|
-
@if (hasItems()) {
|
|
45
|
-
<button
|
|
46
|
-
type="button"
|
|
47
|
-
[disabled]="disabled()"
|
|
48
|
-
[class]="buttonClass()"
|
|
49
|
-
[cdkMenuTriggerFor]="menu"
|
|
50
|
-
>
|
|
51
|
-
<lucide-angular [img]="Settings2Icon" [size]="18"></lucide-angular>
|
|
52
|
-
<span class="text-sm font-normal">{{ label }}</span>
|
|
53
|
-
</button>
|
|
54
|
-
|
|
55
|
-
<ng-template #menu>
|
|
56
|
-
<div
|
|
57
|
-
class="min-w-[200px] bg-white dark:bg-[#1F1F1F] border border-gray-200 dark:border-gray-700 rounded-lg shadow-lg p-1"
|
|
58
|
-
cdkMenu
|
|
59
|
-
>
|
|
60
|
-
@for (item of toolsMenu(); track $index) {
|
|
61
|
-
@if (item === "-") {
|
|
62
|
-
<div class="h-px bg-gray-200 dark:bg-gray-700 my-1"></div>
|
|
63
|
-
} @else if (isMenuItem(item)) {
|
|
64
|
-
@if (item.items && item.items.length > 0) {
|
|
65
|
-
<!-- Submenu trigger -->
|
|
66
|
-
<button
|
|
67
|
-
type="button"
|
|
68
|
-
class="w-full px-3 py-2 text-left bg-transparent border-none rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer text-sm flex items-center justify-between"
|
|
69
|
-
[cdkMenuTriggerFor]="submenu"
|
|
70
|
-
cdkMenuItem
|
|
71
|
-
>
|
|
72
|
-
{{ item.label }}
|
|
73
|
-
<lucide-angular
|
|
74
|
-
[img]="ChevronRightIcon"
|
|
75
|
-
[size]="12"
|
|
76
|
-
class="ml-auto"
|
|
77
|
-
></lucide-angular>
|
|
78
|
-
</button>
|
|
79
|
-
|
|
80
|
-
<!-- Submenu template -->
|
|
81
|
-
<ng-template #submenu>
|
|
82
|
-
<div
|
|
83
|
-
class="min-w-[200px] bg-white dark:bg-[#1F1F1F] border border-gray-200 dark:border-gray-700 rounded-lg shadow-lg p-1"
|
|
84
|
-
cdkMenu
|
|
85
|
-
>
|
|
86
|
-
@for (subItem of item.items; track $index) {
|
|
87
|
-
@if (subItem === "-") {
|
|
88
|
-
<div
|
|
89
|
-
class="h-px bg-gray-200 dark:bg-gray-700 my-1"
|
|
90
|
-
></div>
|
|
91
|
-
} @else if (isMenuItem(subItem)) {
|
|
92
|
-
<button
|
|
93
|
-
type="button"
|
|
94
|
-
class="w-full px-3 py-2 text-left bg-transparent border-none rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer text-sm"
|
|
95
|
-
(click)="handleItemClick(subItem)"
|
|
96
|
-
cdkMenuItem
|
|
97
|
-
>
|
|
98
|
-
{{ subItem.label }}
|
|
99
|
-
</button>
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
</div>
|
|
103
|
-
</ng-template>
|
|
104
|
-
} @else {
|
|
105
|
-
<!-- Regular menu item -->
|
|
106
|
-
<button
|
|
107
|
-
type="button"
|
|
108
|
-
class="w-full px-3 py-2 text-left bg-transparent border-none rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer text-sm"
|
|
109
|
-
(click)="handleItemClick(item)"
|
|
110
|
-
cdkMenuItem
|
|
111
|
-
>
|
|
112
|
-
{{ item.label }}
|
|
113
|
-
</button>
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
</div>
|
|
118
|
-
</ng-template>
|
|
119
|
-
}
|
|
120
|
-
`, isInline: true, styles: [".cdk-overlay-pane{position:absolute;pointer-events:auto;z-index:1000}.cdk-overlay-container{position:fixed;z-index:1000}[cdkMenu]{animation:menuFadeIn .15s ease-out}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: CdkMenuModule }, { kind: "directive", type: i1.CdkMenu, selector: "[cdkMenu]", outputs: ["closed"], exportAs: ["cdkMenu"] }, { kind: "directive", type: i1.CdkMenuItem, selector: "[cdkMenuItem]", inputs: ["cdkMenuItemDisabled", "cdkMenuitemTypeaheadLabel"], outputs: ["cdkMenuItemTriggered"], exportAs: ["cdkMenuItem"] }, { kind: "directive", type: i1.CdkMenuTrigger, selector: "[cdkMenuTriggerFor]", inputs: ["cdkMenuTriggerFor", "cdkMenuPosition", "cdkMenuTriggerData"], outputs: ["cdkMenuOpened", "cdkMenuClosed"], exportAs: ["cdkMenuTriggerFor"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: LucideAngularModule }, { kind: "component", type: i2.LucideAngularComponent, selector: "lucide-angular, lucide-icon, i-lucide, span-lucide", inputs: ["class", "name", "img", "color", "absoluteStrokeWidth", "size", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
121
|
-
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatToolsMenu, decorators: [{
|
|
123
|
-
type: Component,
|
|
124
|
-
args: [{ selector: "copilot-chat-tools-menu", standalone: true, imports: [CommonModule, CdkMenuModule, OverlayModule, LucideAngularModule], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: `
|
|
125
|
-
@if (hasItems()) {
|
|
126
|
-
<button
|
|
127
|
-
type="button"
|
|
128
|
-
[disabled]="disabled()"
|
|
129
|
-
[class]="buttonClass()"
|
|
130
|
-
[cdkMenuTriggerFor]="menu"
|
|
131
|
-
>
|
|
132
|
-
<lucide-angular [img]="Settings2Icon" [size]="18"></lucide-angular>
|
|
133
|
-
<span class="text-sm font-normal">{{ label }}</span>
|
|
134
|
-
</button>
|
|
135
|
-
|
|
136
|
-
<ng-template #menu>
|
|
137
|
-
<div
|
|
138
|
-
class="min-w-[200px] bg-white dark:bg-[#1F1F1F] border border-gray-200 dark:border-gray-700 rounded-lg shadow-lg p-1"
|
|
139
|
-
cdkMenu
|
|
140
|
-
>
|
|
141
|
-
@for (item of toolsMenu(); track $index) {
|
|
142
|
-
@if (item === "-") {
|
|
143
|
-
<div class="h-px bg-gray-200 dark:bg-gray-700 my-1"></div>
|
|
144
|
-
} @else if (isMenuItem(item)) {
|
|
145
|
-
@if (item.items && item.items.length > 0) {
|
|
146
|
-
<!-- Submenu trigger -->
|
|
147
|
-
<button
|
|
148
|
-
type="button"
|
|
149
|
-
class="w-full px-3 py-2 text-left bg-transparent border-none rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer text-sm flex items-center justify-between"
|
|
150
|
-
[cdkMenuTriggerFor]="submenu"
|
|
151
|
-
cdkMenuItem
|
|
152
|
-
>
|
|
153
|
-
{{ item.label }}
|
|
154
|
-
<lucide-angular
|
|
155
|
-
[img]="ChevronRightIcon"
|
|
156
|
-
[size]="12"
|
|
157
|
-
class="ml-auto"
|
|
158
|
-
></lucide-angular>
|
|
159
|
-
</button>
|
|
160
|
-
|
|
161
|
-
<!-- Submenu template -->
|
|
162
|
-
<ng-template #submenu>
|
|
163
|
-
<div
|
|
164
|
-
class="min-w-[200px] bg-white dark:bg-[#1F1F1F] border border-gray-200 dark:border-gray-700 rounded-lg shadow-lg p-1"
|
|
165
|
-
cdkMenu
|
|
166
|
-
>
|
|
167
|
-
@for (subItem of item.items; track $index) {
|
|
168
|
-
@if (subItem === "-") {
|
|
169
|
-
<div
|
|
170
|
-
class="h-px bg-gray-200 dark:bg-gray-700 my-1"
|
|
171
|
-
></div>
|
|
172
|
-
} @else if (isMenuItem(subItem)) {
|
|
173
|
-
<button
|
|
174
|
-
type="button"
|
|
175
|
-
class="w-full px-3 py-2 text-left bg-transparent border-none rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer text-sm"
|
|
176
|
-
(click)="handleItemClick(subItem)"
|
|
177
|
-
cdkMenuItem
|
|
178
|
-
>
|
|
179
|
-
{{ subItem.label }}
|
|
180
|
-
</button>
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
</div>
|
|
184
|
-
</ng-template>
|
|
185
|
-
} @else {
|
|
186
|
-
<!-- Regular menu item -->
|
|
187
|
-
<button
|
|
188
|
-
type="button"
|
|
189
|
-
class="w-full px-3 py-2 text-left bg-transparent border-none rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer text-sm"
|
|
190
|
-
(click)="handleItemClick(item)"
|
|
191
|
-
cdkMenuItem
|
|
192
|
-
>
|
|
193
|
-
{{ item.label }}
|
|
194
|
-
</button>
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
</div>
|
|
199
|
-
</ng-template>
|
|
200
|
-
}
|
|
201
|
-
`, styles: [".cdk-overlay-pane{position:absolute;pointer-events:auto;z-index:1000}.cdk-overlay-container{position:fixed;z-index:1000}[cdkMenu]{animation:menuFadeIn .15s ease-out}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}\n"] }]
|
|
202
|
-
}] });
|
|
203
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29waWxvdC1jaGF0LXRvb2xzLW1lbnUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvY2hhdC9jb3BpbG90LWNoYXQtdG9vbHMtbWVudS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxRQUFRLEVBQ1IsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTlFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUF1SHJELE1BQU0sT0FBTyxvQkFBb0I7SUFDdEIsYUFBYSxHQUFHLFNBQVMsQ0FBQztJQUMxQixnQkFBZ0IsR0FBRyxZQUFZLENBQUM7SUFDekMsY0FBYyxHQUFHLEtBQUssRUFBdUMsQ0FBQztJQUM5RCxhQUFhLEdBQUcsS0FBSyxFQUF1QixDQUFDO0lBQzdDLFVBQVUsR0FBRyxLQUFLLEVBQXNCLENBQUM7SUFFakMsTUFBTSxHQUFHLGdCQUFnQixFQUFFLENBQUM7SUFFcEMsMkJBQTJCO0lBQzNCLFNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ3pELFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFFaEQsUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRTlDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGdDQUFnQyxDQUFDO0lBRTlELFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQzFCLE1BQU0sV0FBVyxHQUFHLEVBQUU7UUFDcEIscUJBQXFCO1FBQ3JCLGtHQUFrRyxFQUNsRyxpRUFBaUUsRUFDakUsdUJBQXVCLEVBQ3ZCLDBCQUEwQjtRQUMxQixvQ0FBb0M7UUFDcEMsZ0JBQWdCLEVBQ2hCLCtCQUErQixFQUMvQix1Q0FBdUMsRUFDdkMsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQix5Q0FBeUMsRUFDekMsbURBQW1ELEVBQ25ELGlEQUFpRCxFQUNqRCw2REFBNkQsRUFDN0QsdUVBQXVFO1FBQ3ZFLE9BQU87UUFDUCw0QkFBNEIsQ0FDN0IsQ0FBQztRQUNGLE9BQU8sRUFBRSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDLENBQUMsQ0FBQztJQUVILFVBQVUsQ0FBQyxJQUFTO1FBQ2xCLE9BQU8sSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxPQUFPLElBQUksSUFBSSxDQUFDO0lBQzdELENBQUM7SUFFRCxlQUFlLENBQUMsSUFBbUI7UUFDakMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDO3dHQWxEVSxvQkFBb0I7NEZBQXBCLG9CQUFvQix5Z0JBL0dyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2RVQsbVZBaEZTLFlBQVksOEJBQUUsYUFBYSxxakJBQUUsYUFBYSw4QkFBRSxtQkFBbUI7OzRGQWtIOUQsb0JBQW9CO2tCQXJIaEMsU0FBUzsrQkFDRSx5QkFBeUIsY0FDdkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLENBQUMsbUJBQ3pELHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksWUFDM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkVUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgY29tcHV0ZWQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IENka01lbnVNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL21lbnVcIjtcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbmltcG9ydCB7IEx1Y2lkZUFuZ3VsYXJNb2R1bGUsIFNldHRpbmdzMiwgQ2hldnJvblJpZ2h0IH0gZnJvbSBcImx1Y2lkZS1hbmd1bGFyXCI7XG5pbXBvcnQgdHlwZSB7IFRvb2xzTWVudUl0ZW0gfSBmcm9tIFwiLi9jb3BpbG90LWNoYXQtaW5wdXQudHlwZXNcIjtcbmltcG9ydCB7IGNuIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XG5pbXBvcnQgeyBpbmplY3RDaGF0TGFiZWxzIH0gZnJvbSBcIi4uLy4uL2NoYXQtY29uZmlnXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJjb3BpbG90LWNoYXQtdG9vbHMtbWVudVwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDZGtNZW51TW9kdWxlLCBPdmVybGF5TW9kdWxlLCBMdWNpZGVBbmd1bGFyTW9kdWxlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmIChoYXNJdGVtcygpKSB7XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAgIFtjbGFzc109XCJidXR0b25DbGFzcygpXCJcbiAgICAgICAgW2Nka01lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIlxuICAgICAgPlxuICAgICAgICA8bHVjaWRlLWFuZ3VsYXIgW2ltZ109XCJTZXR0aW5nczJJY29uXCIgW3NpemVdPVwiMThcIj48L2x1Y2lkZS1hbmd1bGFyPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc20gZm9udC1ub3JtYWxcIj57eyBsYWJlbCB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI21lbnU+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1pbi13LVsyMDBweF0gYmctd2hpdGUgZGFyazpiZy1bIzFGMUYxRl0gYm9yZGVyIGJvcmRlci1ncmF5LTIwMCBkYXJrOmJvcmRlci1ncmF5LTcwMCByb3VuZGVkLWxnIHNoYWRvdy1sZyBwLTFcIlxuICAgICAgICAgIGNka01lbnVcbiAgICAgICAgPlxuICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgdG9vbHNNZW51KCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgQGlmIChpdGVtID09PSBcIi1cIikge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaC1weCBiZy1ncmF5LTIwMCBkYXJrOmJnLWdyYXktNzAwIG15LTFcIj48L2Rpdj5cbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKGlzTWVudUl0ZW0oaXRlbSkpIHtcbiAgICAgICAgICAgICAgQGlmIChpdGVtLml0ZW1zICYmIGl0ZW0uaXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIDwhLS0gU3VibWVudSB0cmlnZ2VyIC0tPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LWZ1bGwgcHgtMyBweS0yIHRleHQtbGVmdCBiZy10cmFuc3BhcmVudCBib3JkZXItbm9uZSByb3VuZGVkIGhvdmVyOmJnLWdyYXktMTAwIGRhcms6aG92ZXI6YmctZ3JheS04MDAgY3Vyc29yLXBvaW50ZXIgdGV4dC1zbSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIlxuICAgICAgICAgICAgICAgICAgW2Nka01lbnVUcmlnZ2VyRm9yXT1cInN1Ym1lbnVcIlxuICAgICAgICAgICAgICAgICAgY2RrTWVudUl0ZW1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICA8bHVjaWRlLWFuZ3VsYXJcbiAgICAgICAgICAgICAgICAgICAgW2ltZ109XCJDaGV2cm9uUmlnaHRJY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW3NpemVdPVwiMTJcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLWF1dG9cIlxuICAgICAgICAgICAgICAgICAgPjwvbHVjaWRlLWFuZ3VsYXI+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8IS0tIFN1Ym1lbnUgdGVtcGxhdGUgLS0+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzdWJtZW51PlxuICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1pbi13LVsyMDBweF0gYmctd2hpdGUgZGFyazpiZy1bIzFGMUYxRl0gYm9yZGVyIGJvcmRlci1ncmF5LTIwMCBkYXJrOmJvcmRlci1ncmF5LTcwMCByb3VuZGVkLWxnIHNoYWRvdy1sZyBwLTFcIlxuICAgICAgICAgICAgICAgICAgICBjZGtNZW51XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKHN1Ykl0ZW0gb2YgaXRlbS5pdGVtczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChzdWJJdGVtID09PSBcIi1cIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImgtcHggYmctZ3JheS0yMDAgZGFyazpiZy1ncmF5LTcwMCBteS0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIGlmIChpc01lbnVJdGVtKHN1Ykl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInctZnVsbCBweC0zIHB5LTIgdGV4dC1sZWZ0IGJnLXRyYW5zcGFyZW50IGJvcmRlci1ub25lIHJvdW5kZWQgaG92ZXI6YmctZ3JheS0xMDAgZGFyazpob3ZlcjpiZy1ncmF5LTgwMCBjdXJzb3ItcG9pbnRlciB0ZXh0LXNtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUl0ZW1DbGljayhzdWJJdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNka01lbnVJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHN1Ykl0ZW0ubGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgPCEtLSBSZWd1bGFyIG1lbnUgaXRlbSAtLT5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidy1mdWxsIHB4LTMgcHktMiB0ZXh0LWxlZnQgYmctdHJhbnNwYXJlbnQgYm9yZGVyLW5vbmUgcm91bmRlZCBob3ZlcjpiZy1ncmF5LTEwMCBkYXJrOmhvdmVyOmJnLWdyYXktODAwIGN1cnNvci1wb2ludGVyIHRleHQtc21cIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUl0ZW1DbGljayhpdGVtKVwiXG4gICAgICAgICAgICAgICAgICBjZGtNZW51SXRlbVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIH1cbiAgYCxcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgICAgLyogQ0RLIE92ZXJsYXkgc3R5bGVzIGZvciBwb3NpdGlvbmluZyAqL1xuICAgICAgLmNkay1vdmVybGF5LXBhbmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgfVxuXG4gICAgICAvKiBFbnN1cmUgbWVudSBhcHBlYXJzIGFib3ZlIG90aGVyIGNvbnRlbnQgKi9cbiAgICAgIC5jZGstb3ZlcmxheS1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB9XG5cbiAgICAgIC8qIE1lbnUgYW5pbWF0aW9uICovXG4gICAgICBbY2RrTWVudV0ge1xuICAgICAgICBhbmltYXRpb246IG1lbnVGYWRlSW4gMC4xNXMgZWFzZS1vdXQ7XG4gICAgICB9XG5cbiAgICAgIEBrZXlmcmFtZXMgbWVudUZhZGVJbiB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgIH1cbiAgICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29waWxvdENoYXRUb29sc01lbnUge1xuICByZWFkb25seSBTZXR0aW5nczJJY29uID0gU2V0dGluZ3MyO1xuICByZWFkb25seSBDaGV2cm9uUmlnaHRJY29uID0gQ2hldnJvblJpZ2h0O1xuICBpbnB1dFRvb2xzTWVudSA9IGlucHV0PChUb29sc01lbnVJdGVtIHwgXCItXCIpW10gfCB1bmRlZmluZWQ+KCk7XG4gIGlucHV0RGlzYWJsZWQgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkPigpO1xuICBpbnB1dENsYXNzID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gIHByaXZhdGUgbGFiZWxzID0gaW5qZWN0Q2hhdExhYmVscygpO1xuXG4gIC8vIERlcml2ZSBzdGF0ZSBmcm9tIGlucHV0c1xuICB0b29sc01lbnUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmlucHV0VG9vbHNNZW51KCkgPz8gW10pO1xuICBkaXNhYmxlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaW5wdXREaXNhYmxlZCgpID8/IGZhbHNlKTtcbiAgY3VzdG9tQ2xhc3MgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmlucHV0Q2xhc3MoKSk7XG5cbiAgaGFzSXRlbXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnRvb2xzTWVudSgpLmxlbmd0aCA+IDApO1xuXG4gIHJlYWRvbmx5IGxhYmVsID0gdGhpcy5sYWJlbHMuY2hhdElucHV0VG9vbGJhclRvb2xzQnV0dG9uTGFiZWw7XG5cbiAgYnV0dG9uQ2xhc3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYmFzZUNsYXNzZXMgPSBjbihcbiAgICAgIC8vIEJhc2UgYnV0dG9uIHN0eWxlc1xuICAgICAgXCJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLTIgd2hpdGVzcGFjZS1ub3dyYXAgcm91bmRlZC1mdWxsIHRleHQtc20gZm9udC1tZWRpdW1cIixcbiAgICAgIFwidHJhbnNpdGlvbi1hbGwgZGlzYWJsZWQ6cG9pbnRlci1ldmVudHMtbm9uZSBkaXNhYmxlZDpvcGFjaXR5LTUwXCIsXG4gICAgICBcInNocmluay0wIG91dGxpbmUtbm9uZVwiLFxuICAgICAgXCJmb2N1cy12aXNpYmxlOnJpbmctWzNweF1cIixcbiAgICAgIC8vIGNoYXRJbnB1dFRvb2xiYXJTZWNvbmRhcnkgdmFyaWFudFxuICAgICAgXCJjdXJzb3ItcG9pbnRlclwiLFxuICAgICAgXCJiZy10cmFuc3BhcmVudCB0ZXh0LVsjNDQ0NDQ0XVwiLFxuICAgICAgXCJkYXJrOnRleHQtd2hpdGUgZGFyazpib3JkZXItWyM0MDQwNDBdXCIsXG4gICAgICBcInRyYW5zaXRpb24tY29sb3JzXCIsXG4gICAgICBcImZvY3VzOm91dGxpbmUtbm9uZVwiLFxuICAgICAgXCJob3ZlcjpiZy1bI2Y4ZjhmOF0gaG92ZXI6dGV4dC1bIzMzMzMzM11cIixcbiAgICAgIFwiZGFyazpob3ZlcjpiZy1bIzQwNDA0MF0gZGFyazpob3Zlcjp0ZXh0LVsjRkZGRkZGXVwiLFxuICAgICAgXCJkaXNhYmxlZDpjdXJzb3Itbm90LWFsbG93ZWQgZGlzYWJsZWQ6b3BhY2l0eS01MFwiLFxuICAgICAgXCJkaXNhYmxlZDpob3ZlcjpiZy10cmFuc3BhcmVudCBkaXNhYmxlZDpob3Zlcjp0ZXh0LVsjNDQ0NDQ0XVwiLFxuICAgICAgXCJkYXJrOmRpc2FibGVkOmhvdmVyOmJnLXRyYW5zcGFyZW50IGRhcms6ZGlzYWJsZWQ6aG92ZXI6dGV4dC1bI0NDQ0NDQ11cIixcbiAgICAgIC8vIFNpemVcbiAgICAgIFwiaC05IHB4LTMgZ2FwLTIgZm9udC1ub3JtYWxcIixcbiAgICApO1xuICAgIHJldHVybiBjbihiYXNlQ2xhc3NlcywgdGhpcy5jdXN0b21DbGFzcygpKTtcbiAgfSk7XG5cbiAgaXNNZW51SXRlbShpdGVtOiBhbnkpOiBpdGVtIGlzIFRvb2xzTWVudUl0ZW0ge1xuICAgIHJldHVybiBpdGVtICYmIHR5cGVvZiBpdGVtID09PSBcIm9iamVjdFwiICYmIFwibGFiZWxcIiBpbiBpdGVtO1xuICB9XG5cbiAgaGFuZGxlSXRlbUNsaWNrKGl0ZW06IFRvb2xzTWVudUl0ZW0pOiB2b2lkIHtcbiAgICBpZiAoaXRlbS5hY3Rpb24pIHtcbiAgICAgIGl0ZW0uYWN0aW9uKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
import { Component, input, output, ChangeDetectionStrategy, ViewEncapsulation, computed, } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { LucideAngularModule, ChevronLeft, ChevronRight } from "lucide-angular";
|
|
4
|
-
import { cn } from "../../utils";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "lucide-angular";
|
|
7
|
-
export class CopilotChatUserMessageBranchNavigation {
|
|
8
|
-
currentBranch = input(0);
|
|
9
|
-
numberOfBranches = input(1);
|
|
10
|
-
message = input();
|
|
11
|
-
inputClass = input();
|
|
12
|
-
switchToBranch = output();
|
|
13
|
-
ChevronLeftIcon = ChevronLeft;
|
|
14
|
-
ChevronRightIcon = ChevronRight;
|
|
15
|
-
buttonClass = cn(
|
|
16
|
-
// Flex centering
|
|
17
|
-
"inline-flex items-center justify-center",
|
|
18
|
-
// Cursor
|
|
19
|
-
"cursor-pointer",
|
|
20
|
-
// Background and text
|
|
21
|
-
"p-0 text-[rgb(93,93,93)] hover:bg-[#E8E8E8]",
|
|
22
|
-
// Dark mode
|
|
23
|
-
"dark:text-[rgb(243,243,243)] dark:hover:bg-[#303030]",
|
|
24
|
-
// Shape and sizing
|
|
25
|
-
"h-6 w-6 rounded-md",
|
|
26
|
-
// Interactions
|
|
27
|
-
"transition-colors",
|
|
28
|
-
// Disabled state
|
|
29
|
-
"disabled:opacity-50 disabled:cursor-not-allowed");
|
|
30
|
-
showNavigation = computed(() => this.numberOfBranches() > 1);
|
|
31
|
-
canGoPrev = computed(() => this.currentBranch() > 0);
|
|
32
|
-
canGoNext = computed(() => this.currentBranch() < this.numberOfBranches() - 1);
|
|
33
|
-
computedClass = computed(() => {
|
|
34
|
-
return cn("flex items-center gap-1", this.inputClass());
|
|
35
|
-
});
|
|
36
|
-
handlePrevious() {
|
|
37
|
-
if (this.canGoPrev()) {
|
|
38
|
-
const newIndex = this.currentBranch() - 1;
|
|
39
|
-
this.switchToBranch.emit({
|
|
40
|
-
branchIndex: newIndex,
|
|
41
|
-
numberOfBranches: this.numberOfBranches(),
|
|
42
|
-
message: this.message(),
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
handleNext() {
|
|
47
|
-
if (this.canGoNext()) {
|
|
48
|
-
const newIndex = this.currentBranch() + 1;
|
|
49
|
-
this.switchToBranch.emit({
|
|
50
|
-
branchIndex: newIndex,
|
|
51
|
-
numberOfBranches: this.numberOfBranches(),
|
|
52
|
-
message: this.message(),
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageBranchNavigation, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
57
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CopilotChatUserMessageBranchNavigation, isStandalone: true, selector: "copilot-chat-user-message-branch-navigation", inputs: { currentBranch: { classPropertyName: "currentBranch", publicName: "currentBranch", isSignal: true, isRequired: false, transformFunction: null }, numberOfBranches: { classPropertyName: "numberOfBranches", publicName: "numberOfBranches", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { switchToBranch: "switchToBranch" }, ngImport: i0, template: `
|
|
58
|
-
@if (showNavigation()) {
|
|
59
|
-
<div [class]="computedClass()">
|
|
60
|
-
<button
|
|
61
|
-
type="button"
|
|
62
|
-
[class]="buttonClass"
|
|
63
|
-
[disabled]="!canGoPrev()"
|
|
64
|
-
(click)="handlePrevious()"
|
|
65
|
-
>
|
|
66
|
-
<lucide-angular [img]="ChevronLeftIcon" [size]="20"></lucide-angular>
|
|
67
|
-
</button>
|
|
68
|
-
<span class="text-sm text-muted-foreground px-0 font-medium">
|
|
69
|
-
{{ currentBranch() + 1 }}/{{ numberOfBranches() }}
|
|
70
|
-
</span>
|
|
71
|
-
<button
|
|
72
|
-
type="button"
|
|
73
|
-
[class]="buttonClass"
|
|
74
|
-
[disabled]="!canGoNext()"
|
|
75
|
-
(click)="handleNext()"
|
|
76
|
-
>
|
|
77
|
-
<lucide-angular [img]="ChevronRightIcon" [size]="20"></lucide-angular>
|
|
78
|
-
</button>
|
|
79
|
-
</div>
|
|
80
|
-
}
|
|
81
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: LucideAngularModule }, { kind: "component", type: i1.LucideAngularComponent, selector: "lucide-angular, lucide-icon, i-lucide, span-lucide", inputs: ["class", "name", "img", "color", "absoluteStrokeWidth", "size", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
82
|
-
}
|
|
83
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageBranchNavigation, decorators: [{
|
|
84
|
-
type: Component,
|
|
85
|
-
args: [{
|
|
86
|
-
standalone: true,
|
|
87
|
-
selector: "copilot-chat-user-message-branch-navigation",
|
|
88
|
-
imports: [CommonModule, LucideAngularModule],
|
|
89
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
90
|
-
encapsulation: ViewEncapsulation.None,
|
|
91
|
-
template: `
|
|
92
|
-
@if (showNavigation()) {
|
|
93
|
-
<div [class]="computedClass()">
|
|
94
|
-
<button
|
|
95
|
-
type="button"
|
|
96
|
-
[class]="buttonClass"
|
|
97
|
-
[disabled]="!canGoPrev()"
|
|
98
|
-
(click)="handlePrevious()"
|
|
99
|
-
>
|
|
100
|
-
<lucide-angular [img]="ChevronLeftIcon" [size]="20"></lucide-angular>
|
|
101
|
-
</button>
|
|
102
|
-
<span class="text-sm text-muted-foreground px-0 font-medium">
|
|
103
|
-
{{ currentBranch() + 1 }}/{{ numberOfBranches() }}
|
|
104
|
-
</span>
|
|
105
|
-
<button
|
|
106
|
-
type="button"
|
|
107
|
-
[class]="buttonClass"
|
|
108
|
-
[disabled]="!canGoNext()"
|
|
109
|
-
(click)="handleNext()"
|
|
110
|
-
>
|
|
111
|
-
<lucide-angular [img]="ChevronRightIcon" [size]="20"></lucide-angular>
|
|
112
|
-
</button>
|
|
113
|
-
</div>
|
|
114
|
-
}
|
|
115
|
-
`,
|
|
116
|
-
}]
|
|
117
|
-
}] });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS1icmFuY2gtbmF2aWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9jaGF0L2NvcGlsb3QtY2hhdC11c2VyLW1lc3NhZ2UtYnJhbmNoLW5hdmlnYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQW1DakMsTUFBTSxPQUFPLHNDQUFzQztJQUNqRCxhQUFhLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLGdCQUFnQixHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztJQUNwQyxPQUFPLEdBQUcsS0FBSyxFQUFlLENBQUM7SUFDL0IsVUFBVSxHQUFHLEtBQUssRUFBc0IsQ0FBQztJQUN6QyxjQUFjLEdBQUcsTUFBTSxFQUErQyxDQUFDO0lBRTlELGVBQWUsR0FBRyxXQUFXLENBQUM7SUFDOUIsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDO0lBRWhDLFdBQVcsR0FBRyxFQUFFO0lBQ3ZCLGlCQUFpQjtJQUNqQix5Q0FBeUM7SUFDekMsU0FBUztJQUNULGdCQUFnQjtJQUNoQixzQkFBc0I7SUFDdEIsNkNBQTZDO0lBQzdDLFlBQVk7SUFDWixzREFBc0Q7SUFDdEQsbUJBQW1CO0lBQ25CLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2YsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixpREFBaUQsQ0FDbEQsQ0FBQztJQUVGLGNBQWMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFN0QsU0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFckQsU0FBUyxHQUFHLFFBQVEsQ0FDbEIsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsQ0FDekQsQ0FBQztJQUVGLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQzVCLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUMsQ0FBQyxDQUFDO0lBRUgsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDckIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztnQkFDdkIsV0FBVyxFQUFFLFFBQVE7Z0JBQ3JCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDekMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUc7YUFDekIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUNyQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO2dCQUN2QixXQUFXLEVBQUUsUUFBUTtnQkFDckIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUN6QyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRzthQUN6QixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzt3R0EzRFUsc0NBQXNDOzRGQUF0QyxzQ0FBc0MsZ3RCQTFCdkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCVCwyREEzQlMsWUFBWSw4QkFBRSxtQkFBbUI7OzRGQTZCaEMsc0NBQXNDO2tCQWhDbEQsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLDZDQUE2QztvQkFDdkQsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDO29CQUM1QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0JUO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGNvbXB1dGVkLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgTHVjaWRlQW5ndWxhck1vZHVsZSwgQ2hldnJvbkxlZnQsIENoZXZyb25SaWdodCB9IGZyb20gXCJsdWNpZGUtYW5ndWxhclwiO1xuaW1wb3J0IHsgdHlwZSBDb3BpbG90Q2hhdFVzZXJNZXNzYWdlT25Td2l0Y2hUb0JyYW5jaFByb3BzIH0gZnJvbSBcIi4vY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS50eXBlc1wiO1xuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcbmltcG9ydCB7IFVzZXJNZXNzYWdlIH0gZnJvbSBcIkBhZy11aS9jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogXCJjb3BpbG90LWNoYXQtdXNlci1tZXNzYWdlLWJyYW5jaC1uYXZpZ2F0aW9uXCIsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEx1Y2lkZUFuZ3VsYXJNb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYgKHNob3dOYXZpZ2F0aW9uKCkpIHtcbiAgICAgIDxkaXYgW2NsYXNzXT1cImNvbXB1dGVkQ2xhc3MoKVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW2NsYXNzXT1cImJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWNhbkdvUHJldigpXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlUHJldmlvdXMoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bHVjaWRlLWFuZ3VsYXIgW2ltZ109XCJDaGV2cm9uTGVmdEljb25cIiBbc2l6ZV09XCIyMFwiPjwvbHVjaWRlLWFuZ3VsYXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIHB4LTAgZm9udC1tZWRpdW1cIj5cbiAgICAgICAgICB7eyBjdXJyZW50QnJhbmNoKCkgKyAxIH19L3t7IG51bWJlck9mQnJhbmNoZXMoKSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbY2xhc3NdPVwiYnV0dG9uQ2xhc3NcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhY2FuR29OZXh0KClcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVOZXh0KClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGx1Y2lkZS1hbmd1bGFyIFtpbWddPVwiQ2hldnJvblJpZ2h0SWNvblwiIFtzaXplXT1cIjIwXCI+PC9sdWNpZGUtYW5ndWxhcj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIENvcGlsb3RDaGF0VXNlck1lc3NhZ2VCcmFuY2hOYXZpZ2F0aW9uIHtcbiAgY3VycmVudEJyYW5jaCA9IGlucHV0PG51bWJlcj4oMCk7XG4gIG51bWJlck9mQnJhbmNoZXMgPSBpbnB1dDxudW1iZXI+KDEpO1xuICBtZXNzYWdlID0gaW5wdXQ8VXNlck1lc3NhZ2U+KCk7XG4gIGlucHV0Q2xhc3MgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIHN3aXRjaFRvQnJhbmNoID0gb3V0cHV0PENvcGlsb3RDaGF0VXNlck1lc3NhZ2VPblN3aXRjaFRvQnJhbmNoUHJvcHM+KCk7XG5cbiAgcmVhZG9ubHkgQ2hldnJvbkxlZnRJY29uID0gQ2hldnJvbkxlZnQ7XG4gIHJlYWRvbmx5IENoZXZyb25SaWdodEljb24gPSBDaGV2cm9uUmlnaHQ7XG5cbiAgcmVhZG9ubHkgYnV0dG9uQ2xhc3MgPSBjbihcbiAgICAvLyBGbGV4IGNlbnRlcmluZ1xuICAgIFwiaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCIsXG4gICAgLy8gQ3Vyc29yXG4gICAgXCJjdXJzb3ItcG9pbnRlclwiLFxuICAgIC8vIEJhY2tncm91bmQgYW5kIHRleHRcbiAgICBcInAtMCB0ZXh0LVtyZ2IoOTMsOTMsOTMpXSBob3ZlcjpiZy1bI0U4RThFOF1cIixcbiAgICAvLyBEYXJrIG1vZGVcbiAgICBcImRhcms6dGV4dC1bcmdiKDI0MywyNDMsMjQzKV0gZGFyazpob3ZlcjpiZy1bIzMwMzAzMF1cIixcbiAgICAvLyBTaGFwZSBhbmQgc2l6aW5nXG4gICAgXCJoLTYgdy02IHJvdW5kZWQtbWRcIixcbiAgICAvLyBJbnRlcmFjdGlvbnNcbiAgICBcInRyYW5zaXRpb24tY29sb3JzXCIsXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICBcImRpc2FibGVkOm9wYWNpdHktNTAgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkXCIsXG4gICk7XG5cbiAgc2hvd05hdmlnYXRpb24gPSBjb21wdXRlZCgoKSA9PiB0aGlzLm51bWJlck9mQnJhbmNoZXMoKSA+IDEpO1xuXG4gIGNhbkdvUHJldiA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY3VycmVudEJyYW5jaCgpID4gMCk7XG5cbiAgY2FuR29OZXh0ID0gY29tcHV0ZWQoXG4gICAgKCkgPT4gdGhpcy5jdXJyZW50QnJhbmNoKCkgPCB0aGlzLm51bWJlck9mQnJhbmNoZXMoKSAtIDEsXG4gICk7XG5cbiAgY29tcHV0ZWRDbGFzcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gY24oXCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMVwiLCB0aGlzLmlucHV0Q2xhc3MoKSk7XG4gIH0pO1xuXG4gIGhhbmRsZVByZXZpb3VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNhbkdvUHJldigpKSB7XG4gICAgICBjb25zdCBuZXdJbmRleCA9IHRoaXMuY3VycmVudEJyYW5jaCgpIC0gMTtcbiAgICAgIHRoaXMuc3dpdGNoVG9CcmFuY2guZW1pdCh7XG4gICAgICAgIGJyYW5jaEluZGV4OiBuZXdJbmRleCxcbiAgICAgICAgbnVtYmVyT2ZCcmFuY2hlczogdGhpcy5udW1iZXJPZkJyYW5jaGVzKCksXG4gICAgICAgIG1lc3NhZ2U6IHRoaXMubWVzc2FnZSgpISxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZU5leHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2FuR29OZXh0KCkpIHtcbiAgICAgIGNvbnN0IG5ld0luZGV4ID0gdGhpcy5jdXJyZW50QnJhbmNoKCkgKyAxO1xuICAgICAgdGhpcy5zd2l0Y2hUb0JyYW5jaC5lbWl0KHtcbiAgICAgICAgYnJhbmNoSW5kZXg6IG5ld0luZGV4LFxuICAgICAgICBudW1iZXJPZkJyYW5jaGVzOiB0aGlzLm51bWJlck9mQnJhbmNoZXMoKSxcbiAgICAgICAgbWVzc2FnZTogdGhpcy5tZXNzYWdlKCkhLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
import { Component, input, output, signal, computed, ChangeDetectionStrategy, ViewEncapsulation, } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { LucideAngularModule, Copy, Check, Edit } from "lucide-angular";
|
|
4
|
-
import { CopilotTooltip } from "../../directives/tooltip";
|
|
5
|
-
import { cn } from "../../utils";
|
|
6
|
-
import { injectChatLabels } from "../../chat-config";
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../../directives/tooltip";
|
|
9
|
-
import * as i2 from "lucide-angular";
|
|
10
|
-
// Base toolbar button component
|
|
11
|
-
export class CopilotChatUserMessageToolbarButton {
|
|
12
|
-
title = input("");
|
|
13
|
-
disabled = input(false);
|
|
14
|
-
inputClass = input();
|
|
15
|
-
computedClass = computed(() => {
|
|
16
|
-
return cn(
|
|
17
|
-
// Flex centering
|
|
18
|
-
"inline-flex items-center justify-center",
|
|
19
|
-
// Cursor
|
|
20
|
-
"cursor-pointer",
|
|
21
|
-
// Background and text
|
|
22
|
-
"p-0 text-[rgb(93,93,93)] hover:bg-[#E8E8E8]",
|
|
23
|
-
// Dark mode
|
|
24
|
-
"dark:text-[rgb(243,243,243)] dark:hover:bg-[#303030]",
|
|
25
|
-
// Shape and sizing
|
|
26
|
-
"h-8 w-8 rounded-md",
|
|
27
|
-
// Interactions
|
|
28
|
-
"transition-colors",
|
|
29
|
-
// Hover states
|
|
30
|
-
"hover:text-[rgb(93,93,93)]", "dark:hover:text-[rgb(243,243,243)]",
|
|
31
|
-
// Focus states
|
|
32
|
-
"focus:outline-none focus:ring-2 focus:ring-offset-2",
|
|
33
|
-
// Disabled state
|
|
34
|
-
"disabled:opacity-50 disabled:cursor-not-allowed", this.inputClass());
|
|
35
|
-
});
|
|
36
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageToolbarButton, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CopilotChatUserMessageToolbarButton, isStandalone: true, selector: "button[copilotChatUserMessageToolbarButton]", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "type": "button" }, properties: { "class": "computedClass()", "attr.disabled": "disabled() ? true : null", "attr.aria-label": "title()" } }, hostDirectives: [{ directive: i1.CopilotTooltip, inputs: ["copilotTooltip", "title", "tooltipPosition", "tooltipPosition", "tooltipDelay", "tooltipDelay"] }], ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
38
|
-
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageToolbarButton, decorators: [{
|
|
40
|
-
type: Component,
|
|
41
|
-
args: [{
|
|
42
|
-
selector: "button[copilotChatUserMessageToolbarButton]",
|
|
43
|
-
standalone: true,
|
|
44
|
-
imports: [CommonModule],
|
|
45
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
46
|
-
encapsulation: ViewEncapsulation.None,
|
|
47
|
-
template: ` <ng-content></ng-content> `,
|
|
48
|
-
host: {
|
|
49
|
-
"[class]": "computedClass()",
|
|
50
|
-
"[attr.disabled]": "disabled() ? true : null",
|
|
51
|
-
type: "button",
|
|
52
|
-
"[attr.aria-label]": "title()",
|
|
53
|
-
},
|
|
54
|
-
hostDirectives: [
|
|
55
|
-
{
|
|
56
|
-
directive: CopilotTooltip,
|
|
57
|
-
inputs: ["copilotTooltip: title", "tooltipPosition", "tooltipDelay"],
|
|
58
|
-
},
|
|
59
|
-
],
|
|
60
|
-
}]
|
|
61
|
-
}] });
|
|
62
|
-
// Copy button component
|
|
63
|
-
export class CopilotChatUserMessageCopyButton {
|
|
64
|
-
title = input();
|
|
65
|
-
disabled = input(false);
|
|
66
|
-
inputClass = input();
|
|
67
|
-
content = input();
|
|
68
|
-
clicked = output();
|
|
69
|
-
CopyIcon = Copy;
|
|
70
|
-
CheckIcon = Check;
|
|
71
|
-
copied = signal(false);
|
|
72
|
-
labels = injectChatLabels();
|
|
73
|
-
handleCopy() {
|
|
74
|
-
if (!this.content())
|
|
75
|
-
return;
|
|
76
|
-
// Set copied immediately for instant feedback
|
|
77
|
-
this.copied.set(true);
|
|
78
|
-
setTimeout(() => this.copied.set(false), 2000);
|
|
79
|
-
// Copy to clipboard (fire and forget)
|
|
80
|
-
navigator.clipboard.writeText(this.content()).then(() => this.clicked.emit(), (err) => {
|
|
81
|
-
console.error("Failed to copy message:", err);
|
|
82
|
-
this.copied.set(false);
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageCopyButton, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CopilotChatUserMessageCopyButton, isStandalone: true, selector: "copilot-chat-user-message-copy-button", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked" }, ngImport: i0, template: `
|
|
87
|
-
<button
|
|
88
|
-
copilotChatUserMessageToolbarButton
|
|
89
|
-
[title]="title() || labels.userMessageToolbarCopyMessageLabel"
|
|
90
|
-
[disabled]="disabled()"
|
|
91
|
-
[inputClass]="inputClass()"
|
|
92
|
-
(click)="handleCopy()"
|
|
93
|
-
>
|
|
94
|
-
@if (copied()) {
|
|
95
|
-
<lucide-angular [img]="CheckIcon" [size]="18"></lucide-angular>
|
|
96
|
-
} @else {
|
|
97
|
-
<lucide-angular [img]="CopyIcon" [size]="18"></lucide-angular>
|
|
98
|
-
}
|
|
99
|
-
</button>
|
|
100
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: LucideAngularModule }, { kind: "component", type: i2.LucideAngularComponent, selector: "lucide-angular, lucide-icon, i-lucide, span-lucide", inputs: ["class", "name", "img", "color", "absoluteStrokeWidth", "size", "strokeWidth"] }, { kind: "component", type: CopilotChatUserMessageToolbarButton, selector: "button[copilotChatUserMessageToolbarButton]", inputs: ["title", "disabled", "inputClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
101
|
-
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageCopyButton, decorators: [{
|
|
103
|
-
type: Component,
|
|
104
|
-
args: [{
|
|
105
|
-
standalone: true,
|
|
106
|
-
selector: "copilot-chat-user-message-copy-button",
|
|
107
|
-
imports: [
|
|
108
|
-
CommonModule,
|
|
109
|
-
LucideAngularModule,
|
|
110
|
-
CopilotChatUserMessageToolbarButton,
|
|
111
|
-
],
|
|
112
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
113
|
-
encapsulation: ViewEncapsulation.None,
|
|
114
|
-
template: `
|
|
115
|
-
<button
|
|
116
|
-
copilotChatUserMessageToolbarButton
|
|
117
|
-
[title]="title() || labels.userMessageToolbarCopyMessageLabel"
|
|
118
|
-
[disabled]="disabled()"
|
|
119
|
-
[inputClass]="inputClass()"
|
|
120
|
-
(click)="handleCopy()"
|
|
121
|
-
>
|
|
122
|
-
@if (copied()) {
|
|
123
|
-
<lucide-angular [img]="CheckIcon" [size]="18"></lucide-angular>
|
|
124
|
-
} @else {
|
|
125
|
-
<lucide-angular [img]="CopyIcon" [size]="18"></lucide-angular>
|
|
126
|
-
}
|
|
127
|
-
</button>
|
|
128
|
-
`,
|
|
129
|
-
}]
|
|
130
|
-
}] });
|
|
131
|
-
// Edit button component
|
|
132
|
-
export class CopilotChatUserMessageEditButton {
|
|
133
|
-
title = input();
|
|
134
|
-
disabled = input(false);
|
|
135
|
-
inputClass = input();
|
|
136
|
-
clicked = output();
|
|
137
|
-
EditIcon = Edit;
|
|
138
|
-
labels = injectChatLabels();
|
|
139
|
-
handleEdit() {
|
|
140
|
-
if (!this.disabled()) {
|
|
141
|
-
this.clicked.emit();
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageEditButton, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
145
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CopilotChatUserMessageEditButton, isStandalone: true, selector: "copilot-chat-user-message-edit-button", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "clicked" }, ngImport: i0, template: `
|
|
146
|
-
<button
|
|
147
|
-
copilotChatUserMessageToolbarButton
|
|
148
|
-
[title]="title() || labels.userMessageToolbarEditMessageLabel"
|
|
149
|
-
[disabled]="disabled()"
|
|
150
|
-
[inputClass]="inputClass()"
|
|
151
|
-
(click)="handleEdit()"
|
|
152
|
-
>
|
|
153
|
-
<lucide-angular [img]="EditIcon" [size]="18"></lucide-angular>
|
|
154
|
-
</button>
|
|
155
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: LucideAngularModule }, { kind: "component", type: i2.LucideAngularComponent, selector: "lucide-angular, lucide-icon, i-lucide, span-lucide", inputs: ["class", "name", "img", "color", "absoluteStrokeWidth", "size", "strokeWidth"] }, { kind: "component", type: CopilotChatUserMessageToolbarButton, selector: "button[copilotChatUserMessageToolbarButton]", inputs: ["title", "disabled", "inputClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
156
|
-
}
|
|
157
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageEditButton, decorators: [{
|
|
158
|
-
type: Component,
|
|
159
|
-
args: [{
|
|
160
|
-
selector: "copilot-chat-user-message-edit-button",
|
|
161
|
-
standalone: true,
|
|
162
|
-
imports: [
|
|
163
|
-
CommonModule,
|
|
164
|
-
LucideAngularModule,
|
|
165
|
-
CopilotChatUserMessageToolbarButton,
|
|
166
|
-
],
|
|
167
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
168
|
-
encapsulation: ViewEncapsulation.None,
|
|
169
|
-
template: `
|
|
170
|
-
<button
|
|
171
|
-
copilotChatUserMessageToolbarButton
|
|
172
|
-
[title]="title() || labels.userMessageToolbarEditMessageLabel"
|
|
173
|
-
[disabled]="disabled()"
|
|
174
|
-
[inputClass]="inputClass()"
|
|
175
|
-
(click)="handleEdit()"
|
|
176
|
-
>
|
|
177
|
-
<lucide-angular [img]="EditIcon" [size]="18"></lucide-angular>
|
|
178
|
-
</button>
|
|
179
|
-
`,
|
|
180
|
-
}]
|
|
181
|
-
}] });
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS1idXR0b25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2NoYXQvY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS1idXR0b25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sUUFBUSxFQUNSLHVCQUF1QixFQUN2QixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBRXJELGdDQUFnQztBQXFCaEMsTUFBTSxPQUFPLG1DQUFtQztJQUM5QyxLQUFLLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLFFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7SUFDakMsVUFBVSxHQUFHLEtBQUssRUFBc0IsQ0FBQztJQUV6QyxhQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUM1QixPQUFPLEVBQUU7UUFDUCxpQkFBaUI7UUFDakIseUNBQXlDO1FBQ3pDLFNBQVM7UUFDVCxnQkFBZ0I7UUFDaEIsc0JBQXNCO1FBQ3RCLDZDQUE2QztRQUM3QyxZQUFZO1FBQ1osc0RBQXNEO1FBQ3RELG1CQUFtQjtRQUNuQixvQkFBb0I7UUFDcEIsZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsNEJBQTRCLEVBQzVCLG9DQUFvQztRQUNwQyxlQUFlO1FBQ2YscURBQXFEO1FBQ3JELGlCQUFpQjtRQUNqQixpREFBaUQsRUFDakQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUNsQixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7d0dBNUJRLG1DQUFtQzs0RkFBbkMsbUNBQW1DLHF6QkFkcEMsNkJBQTZCLDJEQUg3QixZQUFZOzs0RkFpQlgsbUNBQW1DO2tCQXBCL0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNkNBQTZDO29CQUN2RCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLElBQUksRUFBRTt3QkFDSixTQUFTLEVBQUUsaUJBQWlCO3dCQUM1QixpQkFBaUIsRUFBRSwwQkFBMEI7d0JBQzdDLElBQUksRUFBRSxRQUFRO3dCQUNkLG1CQUFtQixFQUFFLFNBQVM7cUJBQy9CO29CQUNELGNBQWMsRUFBRTt3QkFDZDs0QkFDRSxTQUFTLEVBQUUsY0FBYzs0QkFDekIsTUFBTSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxDQUFDO3lCQUNyRTtxQkFDRjtpQkFDRjs7QUFnQ0Qsd0JBQXdCO0FBMkJ4QixNQUFNLE9BQU8sZ0NBQWdDO0lBQ2xDLEtBQUssR0FBRyxLQUFLLEVBQXNCLENBQUM7SUFDcEMsUUFBUSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUNqQyxVQUFVLEdBQUcsS0FBSyxFQUFzQixDQUFDO0lBQ3pDLE9BQU8sR0FBRyxLQUFLLEVBQXNCLENBQUM7SUFDdEMsT0FBTyxHQUFHLE1BQU0sRUFBUSxDQUFDO0lBQ3pCLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDaEIsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLE1BQU0sR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO0lBRXJDLFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUFFLE9BQU87UUFFNUIsOENBQThDO1FBQzlDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUUvQyxzQ0FBc0M7UUFDdEMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRyxDQUFDLENBQUMsSUFBSSxDQUNqRCxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUN6QixDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7d0dBMUJVLGdDQUFnQzs0RkFBaEMsZ0NBQWdDLDRvQkFoQmpDOzs7Ozs7Ozs7Ozs7OztHQWNULDJEQXBCQyxZQUFZLDhCQUNaLG1CQUFtQixnUEFyQ1YsbUNBQW1DOzs0RkEwRG5DLGdDQUFnQztrQkExQjVDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSx1Q0FBdUM7b0JBQ2pELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsbUNBQW1DO3FCQUNwQztvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7R0FjVDtpQkFDRjs7QUE4QkQsd0JBQXdCO0FBdUJ4QixNQUFNLE9BQU8sZ0NBQWdDO0lBQzNDLEtBQUssR0FBRyxLQUFLLEVBQXNCLENBQUM7SUFDcEMsUUFBUSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUNqQyxVQUFVLEdBQUcsS0FBSyxFQUFzQixDQUFDO0lBQ3pDLE9BQU8sR0FBRyxNQUFNLEVBQVEsQ0FBQztJQUVoQixRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ2hCLE1BQU0sR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO0lBRXJDLFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixDQUFDO0lBQ0gsQ0FBQzt3R0FiVSxnQ0FBZ0M7NEZBQWhDLGdDQUFnQyw4Z0JBWmpDOzs7Ozs7Ozs7O0dBVVQsMkRBaEJDLFlBQVksOEJBQ1osbUJBQW1CLGdQQTdGVixtQ0FBbUM7OzRGQThHbkMsZ0NBQWdDO2tCQXRCNUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUNBQXVDO29CQUNqRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixtQ0FBbUM7cUJBQ3BDO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7O0dBVVQ7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbiAgY29tcHV0ZWQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IEx1Y2lkZUFuZ3VsYXJNb2R1bGUsIENvcHksIENoZWNrLCBFZGl0IH0gZnJvbSBcImx1Y2lkZS1hbmd1bGFyXCI7XG5pbXBvcnQgeyBDb3BpbG90VG9vbHRpcCB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL3Rvb2x0aXBcIjtcbmltcG9ydCB7IGNuIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XG5pbXBvcnQgeyBpbmplY3RDaGF0TGFiZWxzIH0gZnJvbSBcIi4uLy4uL2NoYXQtY29uZmlnXCI7XG5cbi8vIEJhc2UgdG9vbGJhciBidXR0b24gY29tcG9uZW50XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYnV0dG9uW2NvcGlsb3RDaGF0VXNlck1lc3NhZ2VUb29sYmFyQnV0dG9uXVwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOiBgIDxuZy1jb250ZW50PjwvbmctY29udGVudD4gYCxcbiAgaG9zdDoge1xuICAgIFwiW2NsYXNzXVwiOiBcImNvbXB1dGVkQ2xhc3MoKVwiLFxuICAgIFwiW2F0dHIuZGlzYWJsZWRdXCI6IFwiZGlzYWJsZWQoKSA/IHRydWUgOiBudWxsXCIsXG4gICAgdHlwZTogXCJidXR0b25cIixcbiAgICBcIlthdHRyLmFyaWEtbGFiZWxdXCI6IFwidGl0bGUoKVwiLFxuICB9LFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIHtcbiAgICAgIGRpcmVjdGl2ZTogQ29waWxvdFRvb2x0aXAsXG4gICAgICBpbnB1dHM6IFtcImNvcGlsb3RUb29sdGlwOiB0aXRsZVwiLCBcInRvb2x0aXBQb3NpdGlvblwiLCBcInRvb2x0aXBEZWxheVwiXSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3BpbG90Q2hhdFVzZXJNZXNzYWdlVG9vbGJhckJ1dHRvbiB7XG4gIHRpdGxlID0gaW5wdXQ8c3RyaW5nPihcIlwiKTtcbiAgZGlzYWJsZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIGlucHV0Q2xhc3MgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG5cbiAgY29tcHV0ZWRDbGFzcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gY24oXG4gICAgICAvLyBGbGV4IGNlbnRlcmluZ1xuICAgICAgXCJpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJcIixcbiAgICAgIC8vIEN1cnNvclxuICAgICAgXCJjdXJzb3ItcG9pbnRlclwiLFxuICAgICAgLy8gQmFja2dyb3VuZCBhbmQgdGV4dFxuICAgICAgXCJwLTAgdGV4dC1bcmdiKDkzLDkzLDkzKV0gaG92ZXI6YmctWyNFOEU4RThdXCIsXG4gICAgICAvLyBEYXJrIG1vZGVcbiAgICAgIFwiZGFyazp0ZXh0LVtyZ2IoMjQzLDI0MywyNDMpXSBkYXJrOmhvdmVyOmJnLVsjMzAzMDMwXVwiLFxuICAgICAgLy8gU2hhcGUgYW5kIHNpemluZ1xuICAgICAgXCJoLTggdy04IHJvdW5kZWQtbWRcIixcbiAgICAgIC8vIEludGVyYWN0aW9uc1xuICAgICAgXCJ0cmFuc2l0aW9uLWNvbG9yc1wiLFxuICAgICAgLy8gSG92ZXIgc3RhdGVzXG4gICAgICBcImhvdmVyOnRleHQtW3JnYig5Myw5Myw5MyldXCIsXG4gICAgICBcImRhcms6aG92ZXI6dGV4dC1bcmdiKDI0MywyNDMsMjQzKV1cIixcbiAgICAgIC8vIEZvY3VzIHN0YXRlc1xuICAgICAgXCJmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctb2Zmc2V0LTJcIixcbiAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICBcImRpc2FibGVkOm9wYWNpdHktNTAgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkXCIsXG4gICAgICB0aGlzLmlucHV0Q2xhc3MoKSxcbiAgICApO1xuICB9KTtcbn1cblxuLy8gQ29weSBidXR0b24gY29tcG9uZW50XG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6IFwiY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS1jb3B5LWJ1dHRvblwiLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEx1Y2lkZUFuZ3VsYXJNb2R1bGUsXG4gICAgQ29waWxvdENoYXRVc2VyTWVzc2FnZVRvb2xiYXJCdXR0b24sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxidXR0b25cbiAgICAgIGNvcGlsb3RDaGF0VXNlck1lc3NhZ2VUb29sYmFyQnV0dG9uXG4gICAgICBbdGl0bGVdPVwidGl0bGUoKSB8fCBsYWJlbHMudXNlck1lc3NhZ2VUb29sYmFyQ29weU1lc3NhZ2VMYWJlbFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICBbaW5wdXRDbGFzc109XCJpbnB1dENsYXNzKClcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZUNvcHkoKVwiXG4gICAgPlxuICAgICAgQGlmIChjb3BpZWQoKSkge1xuICAgICAgICA8bHVjaWRlLWFuZ3VsYXIgW2ltZ109XCJDaGVja0ljb25cIiBbc2l6ZV09XCIxOFwiPjwvbHVjaWRlLWFuZ3VsYXI+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGx1Y2lkZS1hbmd1bGFyIFtpbWddPVwiQ29weUljb25cIiBbc2l6ZV09XCIxOFwiPjwvbHVjaWRlLWFuZ3VsYXI+XG4gICAgICB9XG4gICAgPC9idXR0b24+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIENvcGlsb3RDaGF0VXNlck1lc3NhZ2VDb3B5QnV0dG9uIHtcbiAgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIHJlYWRvbmx5IGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBpbnB1dENsYXNzID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICByZWFkb25seSBjb250ZW50ID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICByZWFkb25seSBjbGlja2VkID0gb3V0cHV0PHZvaWQ+KCk7XG4gIHJlYWRvbmx5IENvcHlJY29uID0gQ29weTtcbiAgcmVhZG9ubHkgQ2hlY2tJY29uID0gQ2hlY2s7XG4gIHJlYWRvbmx5IGNvcGllZCA9IHNpZ25hbChmYWxzZSk7XG4gIHJlYWRvbmx5IGxhYmVscyA9IGluamVjdENoYXRMYWJlbHMoKTtcblxuICBoYW5kbGVDb3B5KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb250ZW50KCkpIHJldHVybjtcblxuICAgIC8vIFNldCBjb3BpZWQgaW1tZWRpYXRlbHkgZm9yIGluc3RhbnQgZmVlZGJhY2tcbiAgICB0aGlzLmNvcGllZC5zZXQodHJ1ZSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNvcGllZC5zZXQoZmFsc2UpLCAyMDAwKTtcblxuICAgIC8vIENvcHkgdG8gY2xpcGJvYXJkIChmaXJlIGFuZCBmb3JnZXQpXG4gICAgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQodGhpcy5jb250ZW50KCkhKS50aGVuKFxuICAgICAgKCkgPT4gdGhpcy5jbGlja2VkLmVtaXQoKSxcbiAgICAgIChlcnIpID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkZhaWxlZCB0byBjb3B5IG1lc3NhZ2U6XCIsIGVycik7XG4gICAgICAgIHRoaXMuY29waWVkLnNldChmYWxzZSk7XG4gICAgICB9LFxuICAgICk7XG4gIH1cbn1cblxuLy8gRWRpdCBidXR0b24gY29tcG9uZW50XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS1lZGl0LWJ1dHRvblwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEx1Y2lkZUFuZ3VsYXJNb2R1bGUsXG4gICAgQ29waWxvdENoYXRVc2VyTWVzc2FnZVRvb2xiYXJCdXR0b24sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxidXR0b25cbiAgICAgIGNvcGlsb3RDaGF0VXNlck1lc3NhZ2VUb29sYmFyQnV0dG9uXG4gICAgICBbdGl0bGVdPVwidGl0bGUoKSB8fCBsYWJlbHMudXNlck1lc3NhZ2VUb29sYmFyRWRpdE1lc3NhZ2VMYWJlbFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICBbaW5wdXRDbGFzc109XCJpbnB1dENsYXNzKClcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZUVkaXQoKVwiXG4gICAgPlxuICAgICAgPGx1Y2lkZS1hbmd1bGFyIFtpbWddPVwiRWRpdEljb25cIiBbc2l6ZV09XCIxOFwiPjwvbHVjaWRlLWFuZ3VsYXI+XG4gICAgPC9idXR0b24+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIENvcGlsb3RDaGF0VXNlck1lc3NhZ2VFZGl0QnV0dG9uIHtcbiAgdGl0bGUgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpbnB1dENsYXNzID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICBjbGlja2VkID0gb3V0cHV0PHZvaWQ+KCk7XG5cbiAgcmVhZG9ubHkgRWRpdEljb24gPSBFZGl0O1xuICByZWFkb25seSBsYWJlbHMgPSBpbmplY3RDaGF0TGFiZWxzKCk7XG5cbiAgaGFuZGxlRWRpdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSkge1xuICAgICAgdGhpcy5jbGlja2VkLmVtaXQoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Component, input, ChangeDetectionStrategy, ViewEncapsulation, computed, } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { cn } from "../../utils";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class CopilotChatUserMessageRenderer {
|
|
6
|
-
content = input("");
|
|
7
|
-
inputClass = input();
|
|
8
|
-
computedClass = computed(() => {
|
|
9
|
-
return cn("prose dark:prose-invert bg-muted relative max-w-[80%] rounded-[18px] px-4 py-1.5 data-[multiline]:py-3 inline-block whitespace-pre-wrap", this.inputClass());
|
|
10
|
-
});
|
|
11
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CopilotChatUserMessageRenderer, isStandalone: true, selector: "copilot-chat-user-message-renderer", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "computedClass()" } }, ngImport: i0, template: `{{ content() }}`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageRenderer, decorators: [{
|
|
15
|
-
type: Component,
|
|
16
|
-
args: [{
|
|
17
|
-
selector: "copilot-chat-user-message-renderer",
|
|
18
|
-
standalone: true,
|
|
19
|
-
imports: [CommonModule],
|
|
20
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
21
|
-
encapsulation: ViewEncapsulation.None,
|
|
22
|
-
host: {
|
|
23
|
-
"[class]": "computedClass()",
|
|
24
|
-
},
|
|
25
|
-
template: `{{ content() }}`,
|
|
26
|
-
}]
|
|
27
|
-
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9jaGF0L2NvcGlsb3QtY2hhdC11c2VyLW1lc3NhZ2UtcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBYWpDLE1BQU0sT0FBTyw4QkFBOEI7SUFDaEMsT0FBTyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUM1QixVQUFVLEdBQUcsS0FBSyxFQUFzQixDQUFDO0lBRXpDLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ3JDLE9BQU8sRUFBRSxDQUNQLHlJQUF5SSxFQUN6SSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQ2xCLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQzt3R0FUUSw4QkFBOEI7NEZBQTlCLDhCQUE4QixxYUFGL0IsaUJBQWlCLDJEQU5qQixZQUFZOzs0RkFRWCw4QkFBOEI7a0JBWDFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9DQUFvQztvQkFDOUMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxJQUFJLEVBQUU7d0JBQ0osU0FBUyxFQUFFLGlCQUFpQjtxQkFDN0I7b0JBQ0QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGNvbXB1dGVkLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImNvcGlsb3QtY2hhdC11c2VyLW1lc3NhZ2UtcmVuZGVyZXJcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgXCJbY2xhc3NdXCI6IFwiY29tcHV0ZWRDbGFzcygpXCIsXG4gIH0sXG4gIHRlbXBsYXRlOiBge3sgY29udGVudCgpIH19YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29waWxvdENoYXRVc2VyTWVzc2FnZVJlbmRlcmVyIHtcbiAgcmVhZG9ubHkgY29udGVudCA9IGlucHV0PHN0cmluZz4oXCJcIik7XG4gIHJlYWRvbmx5IGlucHV0Q2xhc3MgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG5cbiAgcmVhZG9ubHkgY29tcHV0ZWRDbGFzcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gY24oXG4gICAgICBcInByb3NlIGRhcms6cHJvc2UtaW52ZXJ0IGJnLW11dGVkIHJlbGF0aXZlIG1heC13LVs4MCVdIHJvdW5kZWQtWzE4cHhdIHB4LTQgcHktMS41IGRhdGEtW211bHRpbGluZV06cHktMyBpbmxpbmUtYmxvY2sgd2hpdGVzcGFjZS1wcmUtd3JhcFwiLFxuICAgICAgdGhpcy5pbnB1dENsYXNzKCksXG4gICAgKTtcbiAgfSk7XG59XG4iXX0=
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Component, input, computed, ChangeDetectionStrategy, ViewEncapsulation, } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { cn } from "../../utils";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class CopilotChatUserMessageToolbar {
|
|
6
|
-
inputClass = input();
|
|
7
|
-
computedClass = computed(() => cn("w-full bg-transparent flex items-center justify-end mt-[4px] invisible group-hover:visible", this.inputClass()));
|
|
8
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageToolbar, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CopilotChatUserMessageToolbar, isStandalone: true, selector: "div[copilotChatUserMessageToolbar]", inputs: { inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "computedClass()" } }, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CopilotChatUserMessageToolbar, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{
|
|
14
|
-
selector: "div[copilotChatUserMessageToolbar]",
|
|
15
|
-
standalone: true,
|
|
16
|
-
imports: [CommonModule],
|
|
17
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18
|
-
encapsulation: ViewEncapsulation.None,
|
|
19
|
-
template: ` <ng-content></ng-content> `,
|
|
20
|
-
host: {
|
|
21
|
-
"[class]": "computedClass()",
|
|
22
|
-
},
|
|
23
|
-
}]
|
|
24
|
-
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS10b29sYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2NoYXQvY29waWxvdC1jaGF0LXVzZXItbWVzc2FnZS10b29sYmFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFFBQVEsRUFDUix1QkFBdUIsRUFDdkIsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQWFqQyxNQUFNLE9BQU8sNkJBQTZCO0lBQy9CLFVBQVUsR0FBRyxLQUFLLEVBQXNCLENBQUM7SUFFekMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDckMsRUFBRSxDQUNBLDRGQUE0RixFQUM1RixJQUFJLENBQUMsVUFBVSxFQUFFLENBQ2xCLENBQ0YsQ0FBQzt3R0FSUyw2QkFBNkI7NEZBQTdCLDZCQUE2Qix1U0FMOUIsNkJBQTZCLDJEQUg3QixZQUFZOzs0RkFRWCw2QkFBNkI7a0JBWHpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9DQUFvQztvQkFDOUMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxRQUFRLEVBQUUsNkJBQTZCO29CQUN2QyxJQUFJLEVBQUU7d0JBQ0osU0FBUyxFQUFFLGlCQUFpQjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBjb21wdXRlZCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgY24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImRpdltjb3BpbG90Q2hhdFVzZXJNZXNzYWdlVG9vbGJhcl1cIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZTogYCA8bmctY29udGVudD48L25nLWNvbnRlbnQ+IGAsXG4gIGhvc3Q6IHtcbiAgICBcIltjbGFzc11cIjogXCJjb21wdXRlZENsYXNzKClcIixcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ29waWxvdENoYXRVc2VyTWVzc2FnZVRvb2xiYXIge1xuICByZWFkb25seSBpbnB1dENsYXNzID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gIHJlYWRvbmx5IGNvbXB1dGVkQ2xhc3MgPSBjb21wdXRlZCgoKSA9PlxuICAgIGNuKFxuICAgICAgXCJ3LWZ1bGwgYmctdHJhbnNwYXJlbnQgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1lbmQgbXQtWzRweF0gaW52aXNpYmxlIGdyb3VwLWhvdmVyOnZpc2libGVcIixcbiAgICAgIHRoaXMuaW5wdXRDbGFzcygpLFxuICAgICksXG4gICk7XG59XG4iXX0=
|