@visuno/angular 0.0.0-stage → 0.1.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/LICENSE +24 -0
- package/README.md +56 -2
- package/account-table/account-table.component.d.ts +72 -0
- package/action-log/action-log.component.d.ts +41 -0
- package/activity-heatmap/activity-heatmap.component.d.ts +67 -0
- package/agent-inbox/agent-inbox.component.d.ts +75 -0
- package/agent-lanes/agent-lanes.component.d.ts +152 -0
- package/agent-phases/agent-phases.component.d.ts +62 -0
- package/agent-run-timeline/agent-run-timeline.component.d.ts +113 -0
- package/agent-tree/agent-tree.component.d.ts +80 -0
- package/answer-action-bar/answer-action-bar.component.d.ts +110 -0
- package/artifact-card/artifact-card.component.d.ts +145 -0
- package/attachment-tray/attachment-tray.component.d.ts +84 -0
- package/badge/badge.component.d.ts +25 -0
- package/bar-chart/bar-chart.component.d.ts +87 -0
- package/browser-session/browser-session.component.d.ts +70 -0
- package/buttons/buttons.component.d.ts +63 -0
- package/card/card.component.d.ts +21 -0
- package/change-review/change-review.component.d.ts +97 -0
- package/citation-hover-card/citation-hover-card.component.d.ts +95 -0
- package/code-viewer/code-viewer.component.d.ts +86 -0
- package/composer/composer.component.d.ts +114 -0
- package/context-meter/context-meter.component.d.ts +60 -0
- package/core/icon.component.d.ts +10 -0
- package/core/reduced-motion.service.d.ts +15 -0
- package/decision-prompt/decision-prompt.component.d.ts +56 -0
- package/design-review/design-review.component.d.ts +108 -0
- package/design-tuner/design-tuner.component.d.ts +75 -0
- package/details-panel/details-panel.component.d.ts +150 -0
- package/donut-chart/donut-chart.component.d.ts +63 -0
- package/draft-review/draft-review.component.d.ts +128 -0
- package/error-recovery/error-recovery.component.d.ts +59 -0
- package/esm2022/account-table/account-table.component.mjs +399 -0
- package/esm2022/action-log/action-log.component.mjs +177 -0
- package/esm2022/activity-heatmap/activity-heatmap.component.mjs +285 -0
- package/esm2022/agent-inbox/agent-inbox.component.mjs +284 -0
- package/esm2022/agent-lanes/agent-lanes.component.mjs +600 -0
- package/esm2022/agent-phases/agent-phases.component.mjs +300 -0
- package/esm2022/agent-run-timeline/agent-run-timeline.component.mjs +412 -0
- package/esm2022/agent-tree/agent-tree.component.mjs +393 -0
- package/esm2022/answer-action-bar/answer-action-bar.component.mjs +636 -0
- package/esm2022/artifact-card/artifact-card.component.mjs +916 -0
- package/esm2022/attachment-tray/attachment-tray.component.mjs +402 -0
- package/esm2022/badge/badge.component.mjs +97 -0
- package/esm2022/bar-chart/bar-chart.component.mjs +300 -0
- package/esm2022/browser-session/browser-session.component.mjs +352 -0
- package/esm2022/buttons/buttons.component.mjs +215 -0
- package/esm2022/card/card.component.mjs +107 -0
- package/esm2022/change-review/change-review.component.mjs +398 -0
- package/esm2022/citation-hover-card/citation-hover-card.component.mjs +360 -0
- package/esm2022/code-viewer/code-viewer.component.mjs +291 -0
- package/esm2022/composer/composer.component.mjs +743 -0
- package/esm2022/context-meter/context-meter.component.mjs +275 -0
- package/esm2022/core/icon.component.mjs +111 -0
- package/esm2022/core/reduced-motion.service.mjs +34 -0
- package/esm2022/decision-prompt/decision-prompt.component.mjs +259 -0
- package/esm2022/design-review/design-review.component.mjs +428 -0
- package/esm2022/design-tuner/design-tuner.component.mjs +341 -0
- package/esm2022/details-panel/details-panel.component.mjs +537 -0
- package/esm2022/donut-chart/donut-chart.component.mjs +240 -0
- package/esm2022/draft-review/draft-review.component.mjs +549 -0
- package/esm2022/error-recovery/error-recovery.component.mjs +231 -0
- package/esm2022/eval-results/eval-results.component.mjs +368 -0
- package/esm2022/feedback-sheet/feedback-sheet.component.mjs +411 -0
- package/esm2022/field-extraction/field-extraction.component.mjs +368 -0
- package/esm2022/funnel-chart/funnel-chart.component.mjs +258 -0
- package/esm2022/grid/grid.component.mjs +66 -0
- package/esm2022/health-score/health-score.component.mjs +420 -0
- package/esm2022/human-handoff/human-handoff.component.mjs +676 -0
- package/esm2022/image-generation/image-generation.component.mjs +1028 -0
- package/esm2022/inline-text-diff/inline-text-diff.component.mjs +390 -0
- package/esm2022/launch-checklist/launch-checklist.component.mjs +229 -0
- package/esm2022/line-chart/line-chart.component.mjs +417 -0
- package/esm2022/live-answer/live-answer.component.mjs +411 -0
- package/esm2022/metric-insight/metric-insight.component.mjs +511 -0
- package/esm2022/modal/modal.component.mjs +202 -0
- package/esm2022/model-picker/model-picker.component.mjs +491 -0
- package/esm2022/permission-gate/permission-gate.component.mjs +498 -0
- package/esm2022/plan-review/plan-review.component.mjs +432 -0
- package/esm2022/progress/progress.component.mjs +503 -0
- package/esm2022/prompt-library/prompt-library.component.mjs +453 -0
- package/esm2022/prompt-starters/prompt-starters.component.mjs +272 -0
- package/esm2022/proposal-card/proposal-card.component.mjs +402 -0
- package/esm2022/public-api.mjs +88 -0
- package/esm2022/radar-chart/radar-chart.component.mjs +500 -0
- package/esm2022/radial-goals/radial-goals.component.mjs +418 -0
- package/esm2022/reasoning-trail/reasoning-trail.component.mjs +284 -0
- package/esm2022/response-versions/response-versions.component.mjs +288 -0
- package/esm2022/rewrite-toolbar/rewrite-toolbar.component.mjs +397 -0
- package/esm2022/rich-text-editor/rich-text-editor.component.mjs +1755 -0
- package/esm2022/run-cost/run-cost.component.mjs +215 -0
- package/esm2022/run-queue/run-queue.component.mjs +481 -0
- package/esm2022/run-summary/run-summary.component.mjs +331 -0
- package/esm2022/scatter-chart/scatter-chart.component.mjs +705 -0
- package/esm2022/score-breakdown/score-breakdown.component.mjs +460 -0
- package/esm2022/segmented-control/segmented-control.component.mjs +180 -0
- package/esm2022/source-stack/source-stack.component.mjs +245 -0
- package/esm2022/stat-cards/stat-cards.component.mjs +258 -0
- package/esm2022/status-pill/status-pill.component.mjs +305 -0
- package/esm2022/steering/steering.component.mjs +343 -0
- package/esm2022/step-loader/step-loader.component.mjs +209 -0
- package/esm2022/task-table/task-table.component.mjs +534 -0
- package/esm2022/terminal-stream/terminal-stream.component.mjs +583 -0
- package/esm2022/thinking/thinking.component.mjs +276 -0
- package/esm2022/thinking-states/thinking-states.component.mjs +333 -0
- package/esm2022/thread-panel/thread-panel.component.mjs +271 -0
- package/esm2022/toast/toast.component.mjs +195 -0
- package/esm2022/toast-stack/toast-stack.component.mjs +301 -0
- package/esm2022/tool-call/tool-call.component.mjs +273 -0
- package/esm2022/tooltip/tooltip.component.mjs +417 -0
- package/esm2022/top-pages/top-pages.component.mjs +240 -0
- package/esm2022/trace-view/trace-view.component.mjs +440 -0
- package/esm2022/visuno-angular.mjs +5 -0
- package/esm2022/voice-capture/voice-capture.component.mjs +650 -0
- package/esm2022/voice-orb/voice-orb.component.mjs +538 -0
- package/esm2022/web-search/web-search.component.mjs +374 -0
- package/eval-results/eval-results.component.d.ts +67 -0
- package/feedback-sheet/feedback-sheet.component.d.ts +74 -0
- package/fesm2022/visuno-angular.mjs +31992 -0
- package/fesm2022/visuno-angular.mjs.map +1 -0
- package/field-extraction/field-extraction.component.d.ts +82 -0
- package/funnel-chart/funnel-chart.component.d.ts +70 -0
- package/grid/grid.component.d.ts +22 -0
- package/health-score/health-score.component.d.ts +87 -0
- package/human-handoff/human-handoff.component.d.ts +125 -0
- package/image-generation/image-generation.component.d.ts +253 -0
- package/index.d.ts +5 -0
- package/inline-text-diff/inline-text-diff.component.d.ts +76 -0
- package/launch-checklist/launch-checklist.component.d.ts +46 -0
- package/line-chart/line-chart.component.d.ts +89 -0
- package/live-answer/live-answer.component.d.ts +110 -0
- package/metric-insight/metric-insight.component.d.ts +110 -0
- package/modal/modal.component.d.ts +37 -0
- package/model-picker/model-picker.component.d.ts +97 -0
- package/package.json +51 -4
- package/permission-gate/permission-gate.component.d.ts +100 -0
- package/plan-review/plan-review.component.d.ts +86 -0
- package/progress/progress.component.d.ts +91 -0
- package/prompt-library/prompt-library.component.d.ts +121 -0
- package/prompt-starters/prompt-starters.component.d.ts +65 -0
- package/proposal-card/proposal-card.component.d.ts +101 -0
- package/public-api.d.ts +82 -0
- package/radar-chart/radar-chart.component.d.ts +110 -0
- package/radial-goals/radial-goals.component.d.ts +90 -0
- package/reasoning-trail/reasoning-trail.component.d.ts +73 -0
- package/response-versions/response-versions.component.d.ts +54 -0
- package/rewrite-toolbar/rewrite-toolbar.component.d.ts +92 -0
- package/rich-text-editor/rich-text-editor.component.d.ts +180 -0
- package/run-cost/run-cost.component.d.ts +43 -0
- package/run-queue/run-queue.component.d.ts +93 -0
- package/run-summary/run-summary.component.d.ts +81 -0
- package/scatter-chart/scatter-chart.component.d.ts +139 -0
- package/score-breakdown/score-breakdown.component.d.ts +107 -0
- package/segmented-control/segmented-control.component.d.ts +44 -0
- package/source-stack/source-stack.component.d.ts +60 -0
- package/stat-cards/stat-cards.component.d.ts +86 -0
- package/status-pill/status-pill.component.d.ts +64 -0
- package/steering/steering.component.d.ts +75 -0
- package/step-loader/step-loader.component.d.ts +40 -0
- package/styles.css +424 -0
- package/task-table/task-table.component.d.ts +114 -0
- package/terminal-stream/terminal-stream.component.d.ts +110 -0
- package/thinking/thinking.component.d.ts +63 -0
- package/thinking-states/thinking-states.component.d.ts +51 -0
- package/thread-panel/thread-panel.component.d.ts +75 -0
- package/toast/toast.component.d.ts +56 -0
- package/toast-stack/toast-stack.component.d.ts +72 -0
- package/tokens.css +424 -0
- package/tool-call/tool-call.component.d.ts +61 -0
- package/tooltip/tooltip.component.d.ts +89 -0
- package/top-pages/top-pages.component.d.ts +75 -0
- package/trace-view/trace-view.component.d.ts +95 -0
- package/voice-capture/voice-capture.component.d.ts +103 -0
- package/voice-orb/voice-orb.component.d.ts +78 -0
- package/web-search/web-search.component.d.ts +77 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { ElementRef, EventEmitter, OnChanges, OnDestroy, QueryList, SimpleChanges } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/** A field the agent read off the page, with how sure it is. */
|
|
4
|
+
export interface ExtractedField {
|
|
5
|
+
/** Ties the field to the zone it was read from. */
|
|
6
|
+
key: string;
|
|
7
|
+
/** Like "Invoice no." */
|
|
8
|
+
label: string;
|
|
9
|
+
value: string;
|
|
10
|
+
/** 0 to 1. Under 0.6 the field asks the person to check it. */
|
|
11
|
+
confidence: number;
|
|
12
|
+
/** What the value starts as when the person checks it, like the value without its unsure digit. */
|
|
13
|
+
suggestion?: string;
|
|
14
|
+
/** The person has checked it. Shows "Fixed" with a full bar. */
|
|
15
|
+
fixed?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/** idle shows sendLabel, sending a spinner, sent a check and sentLabel. */
|
|
18
|
+
export type FieldSendState = 'idle' | 'sending' | 'sent';
|
|
19
|
+
/**
|
|
20
|
+
* A part of the page a field was read from. It lights up while its field is read,
|
|
21
|
+
* hovered or checked. Host element carries the zone classes so projected markup
|
|
22
|
+
* keeps its own structure.
|
|
23
|
+
*/
|
|
24
|
+
export declare class VoFieldZoneComponent {
|
|
25
|
+
/** The field key this zone belongs to. */
|
|
26
|
+
field: string;
|
|
27
|
+
scan: boolean;
|
|
28
|
+
warn: boolean;
|
|
29
|
+
lit: boolean;
|
|
30
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<VoFieldZoneComponent, never>;
|
|
31
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<VoFieldZoneComponent, "[vo-field-zone]", never, { "field": { "alias": "field"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
32
|
+
}
|
|
33
|
+
export declare class FieldExtractionComponent implements OnChanges, OnDestroy {
|
|
34
|
+
/** The fields found so far, in order. Each new one slides in and its zone lights up for a moment. */
|
|
35
|
+
fields: ExtractedField[];
|
|
36
|
+
/** A scan line passes down the page each time this turns true, and Send waits while it is true. */
|
|
37
|
+
reading: boolean;
|
|
38
|
+
/** The quiet line by the title, like "Reading page 1". */
|
|
39
|
+
status: string;
|
|
40
|
+
/** Replaces the status while a field is being checked. */
|
|
41
|
+
checkHint: string;
|
|
42
|
+
title: string;
|
|
43
|
+
/** The button under the fields. It waits until every field is sure or checked. */
|
|
44
|
+
sendLabel: string;
|
|
45
|
+
/** idle shows sendLabel, sending a spinner, sent a check and sentLabel. */
|
|
46
|
+
sendState: FieldSendState;
|
|
47
|
+
sentLabel: string;
|
|
48
|
+
className: string;
|
|
49
|
+
/** Called when a checked field is confirmed with Enter or by clicking away. */
|
|
50
|
+
fix: EventEmitter<{
|
|
51
|
+
key: string;
|
|
52
|
+
value: string;
|
|
53
|
+
}>;
|
|
54
|
+
onSend: EventEmitter<void>;
|
|
55
|
+
zones: QueryList<VoFieldZoneComponent>;
|
|
56
|
+
editEl?: ElementRef<HTMLSpanElement>;
|
|
57
|
+
private readonly motion;
|
|
58
|
+
hover: string | null;
|
|
59
|
+
editing: string | null;
|
|
60
|
+
/** A scan line pass count; each new value restarts the beam animation. */
|
|
61
|
+
passes: number;
|
|
62
|
+
private scan;
|
|
63
|
+
private known;
|
|
64
|
+
private timers;
|
|
65
|
+
private finished;
|
|
66
|
+
/** Extra classes from `className`, merged onto the static `vo-fex`. */
|
|
67
|
+
get classMap(): Record<string, boolean>;
|
|
68
|
+
needsCheck(f: ExtractedField): boolean;
|
|
69
|
+
pct(f: ExtractedField): number;
|
|
70
|
+
get ready(): boolean;
|
|
71
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
72
|
+
/** Push the current lit/scan/warn state onto the projected zones. */
|
|
73
|
+
sync(): void;
|
|
74
|
+
onLeave(key: string): void;
|
|
75
|
+
startCheck(f: ExtractedField): void;
|
|
76
|
+
onKey(e: KeyboardEvent, f: ExtractedField): void;
|
|
77
|
+
finish(f: ExtractedField): void;
|
|
78
|
+
send(): void;
|
|
79
|
+
ngOnDestroy(): void;
|
|
80
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FieldExtractionComponent, never>;
|
|
81
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FieldExtractionComponent, "vo-field-extraction", never, { "fields": { "alias": "fields"; "required": false; }; "reading": { "alias": "reading"; "required": false; }; "status": { "alias": "status"; "required": false; }; "checkHint": { "alias": "checkHint"; "required": false; }; "title": { "alias": "title"; "required": false; }; "sendLabel": { "alias": "sendLabel"; "required": false; }; "sendState": { "alias": "sendState"; "required": false; }; "sentLabel": { "alias": "sentLabel"; "required": false; }; "className": { "alias": "className"; "required": false; }; }, { "fix": "fix"; "onSend": "onSend"; }, ["zones"], ["*"], true, never>;
|
|
82
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy } from '@angular/core';
|
|
2
|
+
import { ReducedMotionService } from '../core/reduced-motion.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/** One set of numbers, picked by the switch. */
|
|
5
|
+
export interface FunnelChartView {
|
|
6
|
+
key: string;
|
|
7
|
+
/** On the switch, like "Teams". */
|
|
8
|
+
label: string;
|
|
9
|
+
/** How many reached each stage, in order. */
|
|
10
|
+
values: number[];
|
|
11
|
+
/** The agent's note under the funnel for this view. */
|
|
12
|
+
insight?: string;
|
|
13
|
+
}
|
|
14
|
+
/** Internal per-stage render state. */
|
|
15
|
+
interface RowView {
|
|
16
|
+
stage: string;
|
|
17
|
+
index: number;
|
|
18
|
+
fc: string;
|
|
19
|
+
width: number;
|
|
20
|
+
count: string;
|
|
21
|
+
out: boolean;
|
|
22
|
+
drop: boolean;
|
|
23
|
+
change: string;
|
|
24
|
+
tip: string;
|
|
25
|
+
}
|
|
26
|
+
export declare class FunnelChartComponent implements AfterViewInit, OnDestroy {
|
|
27
|
+
private readonly reduced;
|
|
28
|
+
private readonly cdr;
|
|
29
|
+
private readonly host;
|
|
30
|
+
/** Like "Signup to paid". */
|
|
31
|
+
title: string;
|
|
32
|
+
/** The stages in order, like "Signed up" then "Opened a file". */
|
|
33
|
+
stages: string[];
|
|
34
|
+
/** One set of numbers per view. With more than one, a switch picks between them. */
|
|
35
|
+
views: FunnelChartView[];
|
|
36
|
+
/** Key of the view shown. Leave it out to let the switch change it. */
|
|
37
|
+
set view(value: string | undefined);
|
|
38
|
+
/** Defaults to the first view. */
|
|
39
|
+
defaultView?: string;
|
|
40
|
+
/** Ends a stage's tip, like "of signups" in "51.8% of signups". */
|
|
41
|
+
shareLabel: string;
|
|
42
|
+
/** The first stage's tip. */
|
|
43
|
+
startLabel: string;
|
|
44
|
+
/** Writes a count. Defaults to whole numbers like 12,400. */
|
|
45
|
+
format: (n: number) => string;
|
|
46
|
+
viewChange: EventEmitter<string>;
|
|
47
|
+
cur: string;
|
|
48
|
+
rows: RowView[];
|
|
49
|
+
knobLeft: number;
|
|
50
|
+
knobWidth: number;
|
|
51
|
+
note: string;
|
|
52
|
+
noteOut: boolean;
|
|
53
|
+
hasInsight: boolean;
|
|
54
|
+
private controlled;
|
|
55
|
+
private ready;
|
|
56
|
+
private noteId;
|
|
57
|
+
private timers;
|
|
58
|
+
constructor(reduced: ReducedMotionService, cdr: ChangeDetectorRef, host: ElementRef<HTMLElement>);
|
|
59
|
+
ngAfterViewInit(): void;
|
|
60
|
+
select(key: string): void;
|
|
61
|
+
private byKey;
|
|
62
|
+
private draw;
|
|
63
|
+
private say;
|
|
64
|
+
private placeKnob;
|
|
65
|
+
private later;
|
|
66
|
+
ngOnDestroy(): void;
|
|
67
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FunnelChartComponent, never>;
|
|
68
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FunnelChartComponent, "vo-funnel-chart", never, { "title": { "alias": "title"; "required": true; }; "stages": { "alias": "stages"; "required": true; }; "views": { "alias": "views"; "required": true; }; "view": { "alias": "view"; "required": false; }; "defaultView": { "alias": "defaultView"; "required": false; }; "shareLabel": { "alias": "shareLabel"; "required": false; }; "startLabel": { "alias": "startLabel"; "required": false; }; "format": { "alias": "format"; "required": false; }; }, { "viewChange": "viewChange"; }, never, never, true, never>;
|
|
69
|
+
}
|
|
70
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
/** A core spacing token (1–8) for the gutter, or a raw CSS length. */
|
|
3
|
+
export type GridGap = 1 | 2 | 3 | 4 | 5 | 6 | 8 | string;
|
|
4
|
+
export declare class GridComponent {
|
|
5
|
+
/** A fixed column count. Ignored when `fit` is set. 3 by default. */
|
|
6
|
+
cols: number;
|
|
7
|
+
/** Pack as many columns as fit at `min` width, reflowing with no column count. */
|
|
8
|
+
fit: boolean;
|
|
9
|
+
/** Minimum column width when `fit` is set. '200px' by default. */
|
|
10
|
+
min: string;
|
|
11
|
+
/** The gutter: a core spacing step (1–8) or a raw CSS length. 4 by default. */
|
|
12
|
+
gap: GridGap;
|
|
13
|
+
get gapVar(): string;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GridComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GridComponent, "vo-grid", never, { "cols": { "alias": "cols"; "required": false; }; "fit": { "alias": "fit"; "required": false; }; "min": { "alias": "min"; "required": false; }; "gap": { "alias": "gap"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
16
|
+
}
|
|
17
|
+
/** A grid child that spans more than one column (2, 3, 4) or the full row ('full'). */
|
|
18
|
+
export declare class GridItemDirective {
|
|
19
|
+
span: 2 | 3 | 4 | 'full' | '';
|
|
20
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GridItemDirective, never>;
|
|
21
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<GridItemDirective, "[voGridItem]", never, { "span": { "alias": "voGridItem"; "required": false; }; }, {}, never, never, true, never>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy } from '@angular/core';
|
|
2
|
+
import { ReducedMotionService } from '../core/reduced-motion.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/** One check behind the score. */
|
|
5
|
+
export interface HealthScoreCheck {
|
|
6
|
+
/** Identifies the check. Defaults to its label. */
|
|
7
|
+
key?: string;
|
|
8
|
+
/** Like "Contrast". */
|
|
9
|
+
label: string;
|
|
10
|
+
/** 0 to 100. From 90 it is green, from 80 the accent, below that red. */
|
|
11
|
+
score: number;
|
|
12
|
+
/** One line under the check when it is open, like "2 text pairs below AA on the pricing page". */
|
|
13
|
+
detail: string;
|
|
14
|
+
/** Adds a Fix button to the open check. */
|
|
15
|
+
fixable?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/** Per-check render state. */
|
|
18
|
+
interface CheckView {
|
|
19
|
+
check: HealthScoreCheck;
|
|
20
|
+
index: number;
|
|
21
|
+
key: string;
|
|
22
|
+
open: boolean;
|
|
23
|
+
/** The bar has filled (staggered in after the card appears). */
|
|
24
|
+
filled: boolean;
|
|
25
|
+
/** The rolling number shown in the row. */
|
|
26
|
+
shown: number;
|
|
27
|
+
busy: boolean;
|
|
28
|
+
}
|
|
29
|
+
export declare class HealthScoreComponent implements AfterViewInit, OnDestroy {
|
|
30
|
+
private readonly reduced;
|
|
31
|
+
private readonly cdr;
|
|
32
|
+
/** The checks behind the score. */
|
|
33
|
+
set checks(value: HealthScoreCheck[]);
|
|
34
|
+
get checks(): HealthScoreCheck[];
|
|
35
|
+
/** Beside the gauge, like "Design system health". */
|
|
36
|
+
title: string;
|
|
37
|
+
/** The score in the gauge. Defaults to the average of the checks. */
|
|
38
|
+
score?: number;
|
|
39
|
+
/** The line under the title. Defaults to "Good, 2 checks need work" from the checks. */
|
|
40
|
+
status?: string;
|
|
41
|
+
/** The open checks, by key. Leave it out to let each row toggle itself. */
|
|
42
|
+
set open(value: string[] | undefined);
|
|
43
|
+
defaultOpen: string[];
|
|
44
|
+
/** Emitted when the set of open checks changes. */
|
|
45
|
+
openChange: EventEmitter<string[]>;
|
|
46
|
+
/** Called by a check's Fix button. Return a promise and the button spins
|
|
47
|
+
* until it settles; then update the check's score and detail. */
|
|
48
|
+
onFix?: (check: HealthScoreCheck, index: number) => void | Promise<unknown>;
|
|
49
|
+
tone: (v: number) => string;
|
|
50
|
+
views: CheckView[];
|
|
51
|
+
opened: string[];
|
|
52
|
+
drawn: boolean;
|
|
53
|
+
dial: number;
|
|
54
|
+
value: number;
|
|
55
|
+
arcOffset: number;
|
|
56
|
+
titleText: string;
|
|
57
|
+
titleOut: boolean;
|
|
58
|
+
lineText: string;
|
|
59
|
+
lineOut: boolean;
|
|
60
|
+
hot: CheckView | null;
|
|
61
|
+
private _checks;
|
|
62
|
+
private controlled;
|
|
63
|
+
private ready;
|
|
64
|
+
private timers;
|
|
65
|
+
private frames;
|
|
66
|
+
constructor(reduced: ReducedMotionService, cdr: ChangeDetectorRef);
|
|
67
|
+
get hasFix(): boolean;
|
|
68
|
+
ngAfterViewInit(): void;
|
|
69
|
+
private rebuild;
|
|
70
|
+
private syncOpen;
|
|
71
|
+
private get total_();
|
|
72
|
+
round(n: number): number;
|
|
73
|
+
toggle(v: CheckView): void;
|
|
74
|
+
onPoint(v: CheckView, e: PointerEvent | null): void;
|
|
75
|
+
onListLeave(): void;
|
|
76
|
+
onFocusOut(e: FocusEvent): void;
|
|
77
|
+
private show;
|
|
78
|
+
private total;
|
|
79
|
+
private gauge;
|
|
80
|
+
runFix(v: CheckView): Promise<void>;
|
|
81
|
+
private swap;
|
|
82
|
+
private later;
|
|
83
|
+
ngOnDestroy(): void;
|
|
84
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<HealthScoreComponent, never>;
|
|
85
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<HealthScoreComponent, "vo-health-score", never, { "checks": { "alias": "checks"; "required": true; }; "title": { "alias": "title"; "required": false; }; "score": { "alias": "score"; "required": false; }; "status": { "alias": "status"; "required": false; }; "open": { "alias": "open"; "required": false; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; }; "onFix": { "alias": "onFix"; "required": false; }; }, { "openChange": "openChange"; }, never, never, true, never>;
|
|
86
|
+
}
|
|
87
|
+
export {};
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { AfterViewInit, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/** A person the conversation can go to. */
|
|
4
|
+
export interface HandoffPerson {
|
|
5
|
+
/** Used as the key, so keep it unique. */
|
|
6
|
+
name: string;
|
|
7
|
+
initials?: string;
|
|
8
|
+
/** The avatar's colour, like 'var(--vo-av-m)'. */
|
|
9
|
+
color?: string;
|
|
10
|
+
/** Like "Billing". */
|
|
11
|
+
team?: string;
|
|
12
|
+
/** Whether they can take it now, like "Available", "In a call" or "Out until 2pm". */
|
|
13
|
+
presence?: string;
|
|
14
|
+
/** ok puts a green dot before the presence, warn turns it orange. */
|
|
15
|
+
tone?: 'ok' | 'warn';
|
|
16
|
+
}
|
|
17
|
+
/** One key fact passed along, as a label and value row. */
|
|
18
|
+
export interface HandoffFact {
|
|
19
|
+
label: string;
|
|
20
|
+
value: string;
|
|
21
|
+
}
|
|
22
|
+
/** A link to the whole conversation. */
|
|
23
|
+
export interface HandoffLink {
|
|
24
|
+
label: string;
|
|
25
|
+
href?: string;
|
|
26
|
+
onClick?: () => void;
|
|
27
|
+
tip?: string;
|
|
28
|
+
}
|
|
29
|
+
/** The two lines shown while no one has it yet. */
|
|
30
|
+
export interface HandoffFinding {
|
|
31
|
+
title: string;
|
|
32
|
+
detail?: string;
|
|
33
|
+
}
|
|
34
|
+
/** The row at the foot that says where it stands. */
|
|
35
|
+
export interface HandoffStatus {
|
|
36
|
+
/** wait is neutral with a spinner, warn orange with an alert, ok green. */
|
|
37
|
+
tone?: 'wait' | 'warn' | 'ok';
|
|
38
|
+
title: string;
|
|
39
|
+
detail?: string;
|
|
40
|
+
/** Shown in place of the icon, like the person who just joined. */
|
|
41
|
+
person?: HandoffPerson;
|
|
42
|
+
}
|
|
43
|
+
/** Overridable labels. */
|
|
44
|
+
export interface HandoffLabels {
|
|
45
|
+
assignedTo?: string;
|
|
46
|
+
context?: string;
|
|
47
|
+
reassign?: string;
|
|
48
|
+
reassignTo?: string;
|
|
49
|
+
target?: string;
|
|
50
|
+
edit?: string;
|
|
51
|
+
save?: string;
|
|
52
|
+
cancel?: string;
|
|
53
|
+
edited?: string;
|
|
54
|
+
}
|
|
55
|
+
/** The agent hands a conversation to a person, with what they need to pick it up. */
|
|
56
|
+
export declare class HumanHandoffComponent implements OnChanges, AfterViewInit, OnDestroy {
|
|
57
|
+
/** The card's heading. */
|
|
58
|
+
title: string;
|
|
59
|
+
/** Why the agent handed off, like "Refund over $500 needs a person". */
|
|
60
|
+
reason: string;
|
|
61
|
+
/** Who has it, or null while the agent is still finding someone. */
|
|
62
|
+
assignee: HandoffPerson | null;
|
|
63
|
+
/** The two lines shown while assignee is null. */
|
|
64
|
+
finding: HandoffFinding;
|
|
65
|
+
/** The people it can go to instead. Leave it out to hide Reassign. */
|
|
66
|
+
people?: HandoffPerson[];
|
|
67
|
+
/** Seconds left until the reply is due. Whole minutes; orange under five; overdue at 0 or less. */
|
|
68
|
+
secondsLeft: number;
|
|
69
|
+
/** The whole window, for the bar and the line beside it ("15 min target"). */
|
|
70
|
+
targetSeconds: number;
|
|
71
|
+
/** What the person needs to pick it up. */
|
|
72
|
+
summary: string;
|
|
73
|
+
/** A few key facts, as label and value rows. */
|
|
74
|
+
facts: HandoffFact[];
|
|
75
|
+
/** A link to the whole conversation. */
|
|
76
|
+
link?: HandoffLink;
|
|
77
|
+
/** What the agent told the customer. */
|
|
78
|
+
message: string;
|
|
79
|
+
/** The label over the message, like "Sent to Dana". */
|
|
80
|
+
messageLabel: string;
|
|
81
|
+
/** Set to true to add Edit: the message turns editable, and Save emits messageChange. */
|
|
82
|
+
editable: boolean;
|
|
83
|
+
/** Adds "· edited" to the label. */
|
|
84
|
+
edited: boolean;
|
|
85
|
+
/** The row at the foot that says where it stands. */
|
|
86
|
+
status: HandoffStatus;
|
|
87
|
+
/** Overridable labels. */
|
|
88
|
+
labels: HandoffLabels;
|
|
89
|
+
className?: string;
|
|
90
|
+
/** Emitted when a row is picked in Reassign. */
|
|
91
|
+
reassign: EventEmitter<HandoffPerson>;
|
|
92
|
+
/** Emitted by Save with the new message text (only when editable). */
|
|
93
|
+
messageChange: EventEmitter<string>;
|
|
94
|
+
private box;
|
|
95
|
+
private reassignBtn?;
|
|
96
|
+
private pop?;
|
|
97
|
+
private readonly motion;
|
|
98
|
+
editing: boolean;
|
|
99
|
+
menuOpen: boolean;
|
|
100
|
+
private closeTimer?;
|
|
101
|
+
L: Required<HandoffLabels>;
|
|
102
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
103
|
+
ngAfterViewInit(): void;
|
|
104
|
+
ngOnDestroy(): void;
|
|
105
|
+
private resolveLabels;
|
|
106
|
+
initials(p: HandoffPerson): string;
|
|
107
|
+
whoLine(p: HandoffPerson): string;
|
|
108
|
+
metaLine(p: HandoffPerson): string;
|
|
109
|
+
get hasMessageChange(): boolean;
|
|
110
|
+
get left(): number;
|
|
111
|
+
get due(): string;
|
|
112
|
+
get slaTone(): string;
|
|
113
|
+
get barWidth(): number;
|
|
114
|
+
get st(): 'wait' | 'warn' | 'ok';
|
|
115
|
+
toggleMenu(): void;
|
|
116
|
+
choose(p: HandoffPerson): void;
|
|
117
|
+
private closeMenuSoon;
|
|
118
|
+
startEdit(): void;
|
|
119
|
+
save(): void;
|
|
120
|
+
cancelEdit(): void;
|
|
121
|
+
onKeydown(e: KeyboardEvent): void;
|
|
122
|
+
private readonly onOutside;
|
|
123
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<HumanHandoffComponent, never>;
|
|
124
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<HumanHandoffComponent, "vo-human-handoff", never, { "title": { "alias": "title"; "required": false; }; "reason": { "alias": "reason"; "required": false; }; "assignee": { "alias": "assignee"; "required": false; }; "finding": { "alias": "finding"; "required": false; }; "people": { "alias": "people"; "required": false; }; "secondsLeft": { "alias": "secondsLeft"; "required": false; }; "targetSeconds": { "alias": "targetSeconds"; "required": false; }; "summary": { "alias": "summary"; "required": false; }; "facts": { "alias": "facts"; "required": false; }; "link": { "alias": "link"; "required": false; }; "message": { "alias": "message"; "required": false; }; "messageLabel": { "alias": "messageLabel"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "edited": { "alias": "edited"; "required": false; }; "status": { "alias": "status"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "className": { "alias": "className"; "required": false; }; }, { "reassign": "reassign"; "messageChange": "messageChange"; }, never, never, true, never>;
|
|
125
|
+
}
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
import { AfterViewInit, ElementRef, EventEmitter, OnDestroy } from '@angular/core';
|
|
2
|
+
import { type VoIconName } from '../core/icon.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/** A picture: one made by your model, or an earlier one in the gallery. */
|
|
5
|
+
export interface GeneratedImage {
|
|
6
|
+
key: string;
|
|
7
|
+
/** The picture. Without it, `placeholder` stands in. */
|
|
8
|
+
src?: string;
|
|
9
|
+
/** What the picture shows, for screen readers. */
|
|
10
|
+
alt: string;
|
|
11
|
+
/** A CSS background drawn under the picture while it loads (or instead of it), like a gradient of its colours. */
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
/** Its width over its height, like 0.75 for 3:4 (1 by default). */
|
|
14
|
+
ratio?: number;
|
|
15
|
+
/** The prompt it was made from, shown in the larger view. */
|
|
16
|
+
prompt?: string;
|
|
17
|
+
/** The styles it was made with. */
|
|
18
|
+
styles?: string[];
|
|
19
|
+
}
|
|
20
|
+
export type ImageShape = '1:1' | '3:4' | '16:9';
|
|
21
|
+
/** What Generate asks your model for. */
|
|
22
|
+
export interface GenerateRequest {
|
|
23
|
+
prompt: string;
|
|
24
|
+
/** The style chips that are on. */
|
|
25
|
+
styles: string[];
|
|
26
|
+
shape: ImageShape;
|
|
27
|
+
/** How many pictures, 1 to 4. */
|
|
28
|
+
count: number;
|
|
29
|
+
/** The model's key. */
|
|
30
|
+
model: string;
|
|
31
|
+
/** Pictures added with Use as reference. */
|
|
32
|
+
references: GeneratedImage[];
|
|
33
|
+
/** Set for Vary: the picture to make a variation of (count is 1). */
|
|
34
|
+
variationOf?: GeneratedImage;
|
|
35
|
+
/** Set for Retry: which picture of the run is being made again (count is 1, updates go to slot 0). */
|
|
36
|
+
retry?: number;
|
|
37
|
+
}
|
|
38
|
+
/** What your model reports for one picture. */
|
|
39
|
+
export interface GenerationUpdate {
|
|
40
|
+
progress?: number;
|
|
41
|
+
image?: GeneratedImage;
|
|
42
|
+
error?: string;
|
|
43
|
+
}
|
|
44
|
+
/** A style preset: a picture and the style chips it turns on. */
|
|
45
|
+
export interface ImageStylePreset {
|
|
46
|
+
key: string;
|
|
47
|
+
label: string;
|
|
48
|
+
description?: string;
|
|
49
|
+
/** The style chips it turns on (the others go off). */
|
|
50
|
+
styles: string[];
|
|
51
|
+
image?: GeneratedImage;
|
|
52
|
+
}
|
|
53
|
+
export interface ImageModel {
|
|
54
|
+
key: string;
|
|
55
|
+
label: string;
|
|
56
|
+
/** Like "Most detail, about 6s a picture". */
|
|
57
|
+
description?: string;
|
|
58
|
+
icon?: VoIconName;
|
|
59
|
+
}
|
|
60
|
+
export type ImageAction = 'upscale' | 'download' | 'reference' | 'like' | 'dislike' | 'copy';
|
|
61
|
+
/** The callback that makes the pictures: call `update(slot, …)` for each one. */
|
|
62
|
+
export type GenerateFn = (request: GenerateRequest, update: (slot: number, update: GenerationUpdate) => void) => void | Promise<void>;
|
|
63
|
+
type Status = 'wait' | 'gen' | 'done' | 'fail';
|
|
64
|
+
interface Slot {
|
|
65
|
+
key: string;
|
|
66
|
+
progress: number;
|
|
67
|
+
image?: GeneratedImage;
|
|
68
|
+
error?: string;
|
|
69
|
+
el?: HTMLElement;
|
|
70
|
+
}
|
|
71
|
+
interface Run {
|
|
72
|
+
id: number;
|
|
73
|
+
request: GenerateRequest;
|
|
74
|
+
ratio: number;
|
|
75
|
+
slots: Slot[];
|
|
76
|
+
t0: number;
|
|
77
|
+
done?: number;
|
|
78
|
+
}
|
|
79
|
+
export declare class ImageGenerationComponent implements AfterViewInit, OnDestroy {
|
|
80
|
+
/** The project, shown after "Images" in the header, like "Spring lookbook". */
|
|
81
|
+
title: string;
|
|
82
|
+
/** The first part of the header. Defaults to "Images". */
|
|
83
|
+
section: string;
|
|
84
|
+
/** The style chips under the prompt. */
|
|
85
|
+
styles: string[];
|
|
86
|
+
/** The models in the model menu. Leave it out to hide the menu. */
|
|
87
|
+
models?: ImageModel[];
|
|
88
|
+
/** Earlier pictures, newest first. Pictures made here join them at the top. */
|
|
89
|
+
gallery: GeneratedImage[];
|
|
90
|
+
/** The Styles tab. Picking one sets the style chips. */
|
|
91
|
+
presets: ImageStylePreset[];
|
|
92
|
+
className: string;
|
|
93
|
+
set prompt(v: string | undefined);
|
|
94
|
+
get prompt(): string;
|
|
95
|
+
defaultPrompt: string;
|
|
96
|
+
set selectedStyles(v: string[] | undefined);
|
|
97
|
+
defaultSelectedStyles: string[];
|
|
98
|
+
set shape(v: ImageShape | undefined);
|
|
99
|
+
get shape(): ImageShape;
|
|
100
|
+
defaultShape: ImageShape;
|
|
101
|
+
set count(v: number | undefined);
|
|
102
|
+
get count(): number;
|
|
103
|
+
defaultCount: number;
|
|
104
|
+
set model(v: string | undefined);
|
|
105
|
+
get model(): string;
|
|
106
|
+
defaultModel?: string;
|
|
107
|
+
set tab(v: 'gallery' | 'styles' | undefined);
|
|
108
|
+
get tab(): 'gallery' | 'styles';
|
|
109
|
+
defaultTab: 'gallery' | 'styles';
|
|
110
|
+
/** Makes the pictures: call `update(slot, …)` for each one as it goes. */
|
|
111
|
+
generate?: GenerateFn;
|
|
112
|
+
promptChange: EventEmitter<string>;
|
|
113
|
+
selectedStylesChange: EventEmitter<string[]>;
|
|
114
|
+
shapeChange: EventEmitter<ImageShape>;
|
|
115
|
+
countChange: EventEmitter<number>;
|
|
116
|
+
modelChange: EventEmitter<string>;
|
|
117
|
+
tabChange: EventEmitter<"gallery" | "styles">;
|
|
118
|
+
/** Called for each action on a picture. For 'upscale', return a promise. */
|
|
119
|
+
action: EventEmitter<{
|
|
120
|
+
action: ImageAction;
|
|
121
|
+
image: GeneratedImage;
|
|
122
|
+
}>;
|
|
123
|
+
root: ElementRef<HTMLElement>;
|
|
124
|
+
tiles?: ElementRef<HTMLElement>;
|
|
125
|
+
ta?: ElementRef<HTMLTextAreaElement>;
|
|
126
|
+
lbEl?: ElementRef<HTMLElement>;
|
|
127
|
+
private readonly motion;
|
|
128
|
+
readonly STAGES: string[];
|
|
129
|
+
readonly shapeOpts: ImageShape[];
|
|
130
|
+
readonly countOpts: number[];
|
|
131
|
+
readonly viewOpts: ({
|
|
132
|
+
value: "create";
|
|
133
|
+
label: string;
|
|
134
|
+
} | {
|
|
135
|
+
value: "gallery";
|
|
136
|
+
label: string;
|
|
137
|
+
} | {
|
|
138
|
+
value: "styles";
|
|
139
|
+
label: string;
|
|
140
|
+
})[];
|
|
141
|
+
readonly statusOf: (s: Slot) => Status;
|
|
142
|
+
promptState: string;
|
|
143
|
+
pickedState: string[];
|
|
144
|
+
shapeState: ImageShape;
|
|
145
|
+
countState: number;
|
|
146
|
+
modelState: string;
|
|
147
|
+
tabState: 'gallery' | 'styles';
|
|
148
|
+
view: 'create' | 'gallery' | 'styles';
|
|
149
|
+
run: Run | null;
|
|
150
|
+
made: GeneratedImage[];
|
|
151
|
+
fresh: Set<string>;
|
|
152
|
+
refs: GeneratedImage[];
|
|
153
|
+
rating: Record<string, 1 | -1>;
|
|
154
|
+
upped: Record<string, 'up' | 'upping'>;
|
|
155
|
+
lb: {
|
|
156
|
+
list: GeneratedImage[];
|
|
157
|
+
key: string;
|
|
158
|
+
from: HTMLElement | null;
|
|
159
|
+
mine: boolean;
|
|
160
|
+
} | null;
|
|
161
|
+
said: string;
|
|
162
|
+
runRate: 0 | 1 | -1;
|
|
163
|
+
hl: string[];
|
|
164
|
+
flash: {
|
|
165
|
+
id: string;
|
|
166
|
+
label: string;
|
|
167
|
+
} | null;
|
|
168
|
+
copied: boolean;
|
|
169
|
+
pop: 'set' | 'model' | null;
|
|
170
|
+
grid: {
|
|
171
|
+
cols: number;
|
|
172
|
+
rows: number;
|
|
173
|
+
};
|
|
174
|
+
noise: string;
|
|
175
|
+
private runs;
|
|
176
|
+
private timers;
|
|
177
|
+
private ro?;
|
|
178
|
+
private pendingLbFocus;
|
|
179
|
+
get picked(): string[];
|
|
180
|
+
ngAfterViewInit(): void;
|
|
181
|
+
ngOnDestroy(): void;
|
|
182
|
+
private after;
|
|
183
|
+
get busy(): boolean;
|
|
184
|
+
get all(): GeneratedImage[];
|
|
185
|
+
get n(): number;
|
|
186
|
+
get nDone(): number;
|
|
187
|
+
get nBad(): number;
|
|
188
|
+
get pics(): string;
|
|
189
|
+
get capPics(): string;
|
|
190
|
+
get live(): Slot[];
|
|
191
|
+
get total(): number;
|
|
192
|
+
get pctTotal(): number;
|
|
193
|
+
get stage(): number;
|
|
194
|
+
get secs(): number;
|
|
195
|
+
get modelLabel(): string;
|
|
196
|
+
get modelIcon(): VoIconName;
|
|
197
|
+
get runMeta(): string;
|
|
198
|
+
get doneList(): GeneratedImage[];
|
|
199
|
+
get cols(): GeneratedImage[][];
|
|
200
|
+
get tabOpts(): {
|
|
201
|
+
value: 'gallery' | 'styles';
|
|
202
|
+
label: string;
|
|
203
|
+
}[];
|
|
204
|
+
get lbAt(): number;
|
|
205
|
+
get lbImg(): GeneratedImage | undefined;
|
|
206
|
+
imgBg(im?: GeneratedImage): string | null;
|
|
207
|
+
pct(s: Slot): number;
|
|
208
|
+
metaOf(im: GeneratedImage): string;
|
|
209
|
+
flashed(id: string, icon: VoIconName): VoIconName;
|
|
210
|
+
presetOn(p: ImageStylePreset): boolean;
|
|
211
|
+
doneImg(s: Slot): GeneratedImage | undefined;
|
|
212
|
+
look(s: Slot): Record<string, string | number>;
|
|
213
|
+
private setPrompt;
|
|
214
|
+
private setPicked;
|
|
215
|
+
setShape(v: ImageShape): void;
|
|
216
|
+
setCount(v: number): void;
|
|
217
|
+
pickModel(key: string): void;
|
|
218
|
+
showTab(t: 'gallery' | 'styles'): void;
|
|
219
|
+
showView(v: 'create' | 'gallery' | 'styles'): void;
|
|
220
|
+
onPrompt(e: Event): void;
|
|
221
|
+
onKey(e: KeyboardEvent): void;
|
|
222
|
+
submit(e: Event): void;
|
|
223
|
+
togglePop(p: 'set' | 'model'): void;
|
|
224
|
+
private update;
|
|
225
|
+
private afterUpdate;
|
|
226
|
+
private announce;
|
|
227
|
+
private start;
|
|
228
|
+
private doGenerate;
|
|
229
|
+
retry(i: number): void;
|
|
230
|
+
vary(im: GeneratedImage): void;
|
|
231
|
+
upscale(im: GeneratedImage): void;
|
|
232
|
+
private note;
|
|
233
|
+
download(im: GeneratedImage, id: string): void;
|
|
234
|
+
private reference;
|
|
235
|
+
useAsRef(im: GeneratedImage): void;
|
|
236
|
+
removeRef(im: GeneratedImage): void;
|
|
237
|
+
rate(im: GeneratedImage, v: 1 | -1): void;
|
|
238
|
+
rateRun(v: 1 | -1): void;
|
|
239
|
+
copyPrompt(): void;
|
|
240
|
+
toggleStyle(s: string): void;
|
|
241
|
+
pickPreset(p: ImageStylePreset): void;
|
|
242
|
+
openFromTile(s: Slot, e: Event): void;
|
|
243
|
+
openGallery(im: GeneratedImage, e: Event): void;
|
|
244
|
+
private open;
|
|
245
|
+
private focusLb;
|
|
246
|
+
closeLb(back: boolean): void;
|
|
247
|
+
step(d: number): void;
|
|
248
|
+
lbKeys(e: KeyboardEvent): void;
|
|
249
|
+
private observeTiles;
|
|
250
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ImageGenerationComponent, never>;
|
|
251
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ImageGenerationComponent, "vo-image-generation", never, { "title": { "alias": "title"; "required": false; }; "section": { "alias": "section"; "required": false; }; "styles": { "alias": "styles"; "required": false; }; "models": { "alias": "models"; "required": false; }; "gallery": { "alias": "gallery"; "required": false; }; "presets": { "alias": "presets"; "required": false; }; "className": { "alias": "className"; "required": false; }; "prompt": { "alias": "prompt"; "required": false; }; "defaultPrompt": { "alias": "defaultPrompt"; "required": false; }; "selectedStyles": { "alias": "selectedStyles"; "required": false; }; "defaultSelectedStyles": { "alias": "defaultSelectedStyles"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "defaultShape": { "alias": "defaultShape"; "required": false; }; "count": { "alias": "count"; "required": false; }; "defaultCount": { "alias": "defaultCount"; "required": false; }; "model": { "alias": "model"; "required": false; }; "defaultModel": { "alias": "defaultModel"; "required": false; }; "tab": { "alias": "tab"; "required": false; }; "defaultTab": { "alias": "defaultTab"; "required": false; }; "generate": { "alias": "generate"; "required": false; }; }, { "promptChange": "promptChange"; "selectedStylesChange": "selectedStylesChange"; "shapeChange": "shapeChange"; "countChange": "countChange"; "modelChange": "modelChange"; "tabChange": "tabChange"; "action": "action"; }, never, never, true, never>;
|
|
252
|
+
}
|
|
253
|
+
export {};
|