@eagami/ui 5.50.0 → 5.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/fesm2022/eagami-ui.mjs +2688 -48
- package/fesm2022/eagami-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/src/styles/tokens/_colors.scss +21 -0
- package/src/styles/type-scale.spec.ts +72 -0
- package/types/eagami-ui.d.ts +876 -1
package/types/eagami-ui.d.ts
CHANGED
|
@@ -57,6 +57,23 @@ export interface EagamiMessages {
|
|
|
57
57
|
breadcrumbs: {
|
|
58
58
|
label: string;
|
|
59
59
|
};
|
|
60
|
+
chart: {
|
|
61
|
+
/** Announced role of a chart's plot, in place of the generic "group". */
|
|
62
|
+
roleDescription: string;
|
|
63
|
+
lineChart: string;
|
|
64
|
+
barChart: string;
|
|
65
|
+
pieChart: string;
|
|
66
|
+
/** Header of the data table's label column. */
|
|
67
|
+
category: string;
|
|
68
|
+
value: string;
|
|
69
|
+
/** Header of a pie chart's percentage column. */
|
|
70
|
+
share: string;
|
|
71
|
+
noData: string;
|
|
72
|
+
/** Announces the highlighted point of a line or bar chart. */
|
|
73
|
+
point: (series: string, label: string, value: string) => string;
|
|
74
|
+
/** Announces the highlighted slice of a pie chart. */
|
|
75
|
+
slice: (label: string, value: string, percent: string) => string;
|
|
76
|
+
};
|
|
60
77
|
codeInput: {
|
|
61
78
|
groupLabel: (length: number) => string;
|
|
62
79
|
digitLabel: (index: number, length: number) => string;
|
|
@@ -604,6 +621,8 @@ export declare class AccordionItemComponent implements OnInit, OnDestroy {
|
|
|
604
621
|
private readonly accordion;
|
|
605
622
|
readonly value: import("@angular/core").InputSignal<string>;
|
|
606
623
|
readonly label: import("@angular/core").InputSignal<string>;
|
|
624
|
+
/** Optional icon component rendered before the label in the header button. */
|
|
625
|
+
readonly icon: import("@angular/core").InputSignal<Type<unknown> | undefined>;
|
|
607
626
|
readonly disabled: import("@angular/core").InputSignal<boolean>;
|
|
608
627
|
readonly id: import("@angular/core").InputSignal<string>;
|
|
609
628
|
readonly isExpanded: import("@angular/core").Signal<boolean>;
|
|
@@ -624,6 +643,11 @@ export declare class AccordionItemComponent implements OnInit, OnDestroy {
|
|
|
624
643
|
"required": true;
|
|
625
644
|
"isSignal": true;
|
|
626
645
|
};
|
|
646
|
+
"icon": {
|
|
647
|
+
"alias": "icon";
|
|
648
|
+
"required": false;
|
|
649
|
+
"isSignal": true;
|
|
650
|
+
};
|
|
627
651
|
"disabled": {
|
|
628
652
|
"alias": "disabled";
|
|
629
653
|
"required": false;
|
|
@@ -1273,6 +1297,322 @@ export declare class BadgeComponent {
|
|
|
1273
1297
|
};
|
|
1274
1298
|
}, {}, never, ["*"], true, never>;
|
|
1275
1299
|
}
|
|
1300
|
+
/** Visual size of a chart; scales its axis, legend, and tooltip text. */
|
|
1301
|
+
type ChartSize = EaSize;
|
|
1302
|
+
/** One named run of values plotted by a line or bar chart. */
|
|
1303
|
+
interface ChartSeries {
|
|
1304
|
+
/** Name shown in the legend, tooltip, and data table. */
|
|
1305
|
+
name: string;
|
|
1306
|
+
/** One value per label; `null` leaves a gap. */
|
|
1307
|
+
data: (number | null)[];
|
|
1308
|
+
/** Any CSS color; defaults to the next slot of the `--color-chart-*` palette. */
|
|
1309
|
+
color?: string;
|
|
1310
|
+
}
|
|
1311
|
+
/** Payload describing a single plotted value of a line or bar chart. */
|
|
1312
|
+
interface ChartPointEvent {
|
|
1313
|
+
seriesIndex: number;
|
|
1314
|
+
seriesName: string;
|
|
1315
|
+
/** Position of the value within its series (and of its label within `labels`). */
|
|
1316
|
+
index: number;
|
|
1317
|
+
label: string;
|
|
1318
|
+
value: number;
|
|
1319
|
+
}
|
|
1320
|
+
/** Number of categorical colors in the `--color-chart-*` palette. */
|
|
1321
|
+
declare const CHART_COLOR_COUNT = 8;
|
|
1322
|
+
/** Resolves a series' color, falling back to its slot of the chart palette. */
|
|
1323
|
+
declare function chartColor(index: number, override?: string): string;
|
|
1324
|
+
/** A value axis extended to round numbers, with the ticks drawn along it. */
|
|
1325
|
+
interface NiceScale {
|
|
1326
|
+
min: number;
|
|
1327
|
+
max: number;
|
|
1328
|
+
ticks: number[];
|
|
1329
|
+
}
|
|
1330
|
+
/** Extends `[min, max]` outward to round tick values, about `maxTicks` of them. */
|
|
1331
|
+
declare function niceScale(min: number, max: number, maxTicks?: number): NiceScale;
|
|
1332
|
+
/** Rough rendered width of `text` in px, for reserving axis room without a layout pass. */
|
|
1333
|
+
declare function estimateTextWidth(text: string, fontPx: number): number;
|
|
1334
|
+
/** Live size of a chart's host, re-measured on resize and whenever `size` changes. */
|
|
1335
|
+
interface ChartViewport {
|
|
1336
|
+
width: Signal<number>;
|
|
1337
|
+
fontSize: Signal<number>;
|
|
1338
|
+
}
|
|
1339
|
+
/**
|
|
1340
|
+
* Measures the host's width and font-size so the chart can lay out its SVG in
|
|
1341
|
+
* real pixels, keeping text and stroke widths crisp at every width.
|
|
1342
|
+
*/
|
|
1343
|
+
declare function injectChartViewport(size: Signal<ChartSize>): ChartViewport;
|
|
1344
|
+
/** Localized value formatter honouring a consumer's own `formatValue`. */
|
|
1345
|
+
declare function injectChartFormatter(formatValue: Signal<((value: number) => string) | null>): Signal<(value: number) => string>;
|
|
1346
|
+
/** Keeps a value inside `[min, max]`. */
|
|
1347
|
+
declare function clamp(value: number, min: number, max: number): number;
|
|
1348
|
+
/**
|
|
1349
|
+
* How category or x-axis labels are set: level, at 45 degrees, at 90 degrees, or
|
|
1350
|
+
* `auto`, which stays level while the labels fit and turns them 45 then 90 degrees
|
|
1351
|
+
* as they crowd.
|
|
1352
|
+
*/
|
|
1353
|
+
type ChartLabelOrientation = 'horizontal' | 'diagonal' | 'vertical' | 'auto';
|
|
1354
|
+
declare const CHART_LABEL_ANGLES: Record<Exclude<ChartLabelOrientation, 'auto'>, number>;
|
|
1355
|
+
declare const TICK_EXTRA_PX = 2;
|
|
1356
|
+
declare const TICK_LABEL_GAP_PX = 2;
|
|
1357
|
+
declare const BREAK_CLEARANCE = 6;
|
|
1358
|
+
declare const BREAK_HEIGHT = 2.5;
|
|
1359
|
+
/** Length of a tick mark below the axis. */
|
|
1360
|
+
declare function tickLength(axisPx: number): number;
|
|
1361
|
+
/** Room along the axis a label needs: its width when level, a line's height when turned. */
|
|
1362
|
+
declare function labelRoom(text: string, angle: number, axisPx: number): number;
|
|
1363
|
+
/** Space below the plot for the axis labels, turned to `angle` degrees, and their ticks. */
|
|
1364
|
+
declare function labelBand(widest: number, angle: number, axisPx: number, height: number): number;
|
|
1365
|
+
/** Baseline of the axis labels below an axis at `axisY`. */
|
|
1366
|
+
declare function labelLine(axisY: number, angle: number, axisPx: number): number;
|
|
1367
|
+
interface AxisBreak {
|
|
1368
|
+
axis: string;
|
|
1369
|
+
slashes: string;
|
|
1370
|
+
gap: {
|
|
1371
|
+
x: number;
|
|
1372
|
+
y: number;
|
|
1373
|
+
width: number;
|
|
1374
|
+
height: number;
|
|
1375
|
+
};
|
|
1376
|
+
}
|
|
1377
|
+
/** A y-axis line up the plot's left edge, cut where two parallel slashes cross it. */
|
|
1378
|
+
declare function axisBreak(x: number, top: number, bottom: number, y: number, axisPx: number): AxisBreak;
|
|
1379
|
+
/** Direction the bars extend from the baseline. */
|
|
1380
|
+
export type BarChartOrientation = 'vertical' | 'horizontal';
|
|
1381
|
+
/**
|
|
1382
|
+
* Entrance animation, replayed whenever the data changes. `grow` extends every
|
|
1383
|
+
* bar out of the baseline together, `cascade` grows them one category after
|
|
1384
|
+
* another, and `fade` fades the bars in.
|
|
1385
|
+
*/
|
|
1386
|
+
export type BarChartAnimation = 'grow' | 'cascade' | 'fade' | 'none';
|
|
1387
|
+
interface PlotBar {
|
|
1388
|
+
series: number;
|
|
1389
|
+
index: number;
|
|
1390
|
+
value: number;
|
|
1391
|
+
color: string;
|
|
1392
|
+
path: string;
|
|
1393
|
+
delay: number;
|
|
1394
|
+
}
|
|
1395
|
+
interface PlotValueLabel {
|
|
1396
|
+
key: string;
|
|
1397
|
+
x: number;
|
|
1398
|
+
y: number;
|
|
1399
|
+
text: string;
|
|
1400
|
+
anchor: 'start' | 'middle' | 'end';
|
|
1401
|
+
}
|
|
1402
|
+
interface ActiveBar {
|
|
1403
|
+
series: number;
|
|
1404
|
+
index: number;
|
|
1405
|
+
}
|
|
1406
|
+
/**
|
|
1407
|
+
* Compares values across labels as vertical columns or horizontal bars, with
|
|
1408
|
+
* several series grouped side by side or stacked. Hovering or arrowing through
|
|
1409
|
+
* the chart reveals each label's values in a tooltip, and a visually hidden
|
|
1410
|
+
* table carries the full data for screen readers.
|
|
1411
|
+
*/
|
|
1412
|
+
export declare class BarChartComponent {
|
|
1413
|
+
protected readonly i18n: EagamiI18nService;
|
|
1414
|
+
/** Category labels along the category axis, one per value. */
|
|
1415
|
+
readonly labels: import("@angular/core").InputSignal<string[]>;
|
|
1416
|
+
/** The series to plot. */
|
|
1417
|
+
readonly series: import("@angular/core").InputSignal<ChartSeries[]>;
|
|
1418
|
+
/** Direction the bars extend from the baseline. */
|
|
1419
|
+
readonly orientation: import("@angular/core").InputSignal<BarChartOrientation>;
|
|
1420
|
+
/** Stacks the series of each label into one bar instead of grouping them side by side. */
|
|
1421
|
+
readonly stacked: import("@angular/core").InputSignal<boolean>;
|
|
1422
|
+
/** Draws gridlines at each value-axis tick. */
|
|
1423
|
+
readonly showGrid: import("@angular/core").InputSignal<boolean>;
|
|
1424
|
+
/** Shows a legend beneath the chart when it plots more than one series. */
|
|
1425
|
+
readonly showLegend: import("@angular/core").InputSignal<boolean>;
|
|
1426
|
+
/** Prints each bar's value at its end, or each stack's total when stacked. */
|
|
1427
|
+
readonly showValues: import("@angular/core").InputSignal<boolean>;
|
|
1428
|
+
/** How the category labels under a vertical chart are set; `auto` turns them as they run out of room. */
|
|
1429
|
+
readonly xLabelOrientation: import("@angular/core").InputSignal<ChartLabelOrientation>;
|
|
1430
|
+
/**
|
|
1431
|
+
* Starts the value axis of a vertical chart near its shortest bar instead of at
|
|
1432
|
+
* zero, when every value is positive, and marks the cut with a break symbol.
|
|
1433
|
+
*/
|
|
1434
|
+
readonly showAxisBreak: import("@angular/core").InputSignal<boolean>;
|
|
1435
|
+
/** Height of the plot in pixels; the width fills the container. */
|
|
1436
|
+
readonly height: import("@angular/core").InputSignal<number>;
|
|
1437
|
+
/** Visual size; scales the axis, legend, and tooltip text and the bar thickness cap. */
|
|
1438
|
+
readonly size: import("@angular/core").InputSignal<import("@eagami/ui").EaSize>;
|
|
1439
|
+
/** Entrance animation, replayed whenever the data changes. */
|
|
1440
|
+
readonly animation: import("@angular/core").InputSignal<BarChartAnimation>;
|
|
1441
|
+
/** Length of the entrance animation in milliseconds. */
|
|
1442
|
+
readonly animationDuration: import("@angular/core").InputSignal<number>;
|
|
1443
|
+
/** Formats values on the axis, tooltip, and data table; locale-grouped by default. */
|
|
1444
|
+
readonly formatValue: import("@angular/core").InputSignal<((value: number) => string) | null>;
|
|
1445
|
+
/** Accessible name for the chart; defaults to a localized "Bar chart". */
|
|
1446
|
+
readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
|
|
1447
|
+
/** Fires when a bar is clicked, or chosen with Enter or Space. */
|
|
1448
|
+
readonly pointClick: import("@angular/core").OutputEmitterRef<ChartPointEvent>;
|
|
1449
|
+
/** Fires when the highlighted bar changes by pointer or keyboard, with `null` once cleared. */
|
|
1450
|
+
readonly activePointChange: import("@angular/core").OutputEmitterRef<ChartPointEvent | null>;
|
|
1451
|
+
private readonly viewport;
|
|
1452
|
+
private readonly format;
|
|
1453
|
+
protected readonly active: import("@angular/core").WritableSignal<ActiveBar | null>;
|
|
1454
|
+
protected readonly label: import("@angular/core").Signal<string>;
|
|
1455
|
+
protected readonly count: import("@angular/core").Signal<number>;
|
|
1456
|
+
protected readonly hasData: import("@angular/core").Signal<boolean>;
|
|
1457
|
+
protected readonly renderPass: import("@angular/core").Signal<{}[]>;
|
|
1458
|
+
protected readonly hostClasses: import("@angular/core").Signal<{
|
|
1459
|
+
[x: string]: boolean;
|
|
1460
|
+
}>;
|
|
1461
|
+
protected readonly layout: import("@angular/core").Signal<{
|
|
1462
|
+
vertical: boolean;
|
|
1463
|
+
width: number;
|
|
1464
|
+
height: number;
|
|
1465
|
+
top: number;
|
|
1466
|
+
left: number;
|
|
1467
|
+
plotWidth: number;
|
|
1468
|
+
plotHeight: number;
|
|
1469
|
+
baseline: number;
|
|
1470
|
+
band: number;
|
|
1471
|
+
categoryStart: number;
|
|
1472
|
+
groupWidth: number;
|
|
1473
|
+
thickness: number;
|
|
1474
|
+
axisPx: number;
|
|
1475
|
+
ticks: {
|
|
1476
|
+
value: number;
|
|
1477
|
+
text: string;
|
|
1478
|
+
pos: number;
|
|
1479
|
+
}[];
|
|
1480
|
+
categories: {
|
|
1481
|
+
text: string;
|
|
1482
|
+
index: number;
|
|
1483
|
+
pos: number;
|
|
1484
|
+
}[];
|
|
1485
|
+
bars: PlotBar[];
|
|
1486
|
+
valueLabels: PlotValueLabel[];
|
|
1487
|
+
valuePos: (v: number) => number;
|
|
1488
|
+
axisY: number;
|
|
1489
|
+
tickEndY: number;
|
|
1490
|
+
labelAngle: number;
|
|
1491
|
+
labelY: number;
|
|
1492
|
+
axisBreak: AxisBreak | null;
|
|
1493
|
+
}>;
|
|
1494
|
+
protected readonly tooltip: import("@angular/core").Signal<{
|
|
1495
|
+
x: number;
|
|
1496
|
+
y: number;
|
|
1497
|
+
title: string;
|
|
1498
|
+
rows: {
|
|
1499
|
+
name: string;
|
|
1500
|
+
color: string;
|
|
1501
|
+
value: string;
|
|
1502
|
+
active: boolean;
|
|
1503
|
+
}[];
|
|
1504
|
+
key: string;
|
|
1505
|
+
} | null>;
|
|
1506
|
+
protected readonly tooltips: import("@angular/core").Signal<{
|
|
1507
|
+
x: number;
|
|
1508
|
+
y: number;
|
|
1509
|
+
title: string;
|
|
1510
|
+
rows: {
|
|
1511
|
+
name: string;
|
|
1512
|
+
color: string;
|
|
1513
|
+
value: string;
|
|
1514
|
+
active: boolean;
|
|
1515
|
+
}[];
|
|
1516
|
+
key: string;
|
|
1517
|
+
}[]>;
|
|
1518
|
+
protected readonly announcement: import("@angular/core").Signal<string>;
|
|
1519
|
+
protected readonly showsLegend: import("@angular/core").Signal<boolean>;
|
|
1520
|
+
protected seriesColor(index: number): string;
|
|
1521
|
+
protected isDimmed(bar: PlotBar): boolean;
|
|
1522
|
+
protected tableValue(value: number | null | undefined): string;
|
|
1523
|
+
protected onPointerMove(event: PointerEvent): void;
|
|
1524
|
+
protected onPointerLeave(): void;
|
|
1525
|
+
protected onClick(): void;
|
|
1526
|
+
protected onFocus(): void;
|
|
1527
|
+
protected onBlur(): void;
|
|
1528
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
1529
|
+
private valueAt;
|
|
1530
|
+
private stackEnd;
|
|
1531
|
+
private firstIn;
|
|
1532
|
+
private eventFor;
|
|
1533
|
+
private setActive;
|
|
1534
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BarChartComponent, never>;
|
|
1535
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BarChartComponent, "ea-bar-chart", never, {
|
|
1536
|
+
"labels": {
|
|
1537
|
+
"alias": "labels";
|
|
1538
|
+
"required": false;
|
|
1539
|
+
"isSignal": true;
|
|
1540
|
+
};
|
|
1541
|
+
"series": {
|
|
1542
|
+
"alias": "series";
|
|
1543
|
+
"required": false;
|
|
1544
|
+
"isSignal": true;
|
|
1545
|
+
};
|
|
1546
|
+
"orientation": {
|
|
1547
|
+
"alias": "orientation";
|
|
1548
|
+
"required": false;
|
|
1549
|
+
"isSignal": true;
|
|
1550
|
+
};
|
|
1551
|
+
"stacked": {
|
|
1552
|
+
"alias": "stacked";
|
|
1553
|
+
"required": false;
|
|
1554
|
+
"isSignal": true;
|
|
1555
|
+
};
|
|
1556
|
+
"showGrid": {
|
|
1557
|
+
"alias": "showGrid";
|
|
1558
|
+
"required": false;
|
|
1559
|
+
"isSignal": true;
|
|
1560
|
+
};
|
|
1561
|
+
"showLegend": {
|
|
1562
|
+
"alias": "showLegend";
|
|
1563
|
+
"required": false;
|
|
1564
|
+
"isSignal": true;
|
|
1565
|
+
};
|
|
1566
|
+
"showValues": {
|
|
1567
|
+
"alias": "showValues";
|
|
1568
|
+
"required": false;
|
|
1569
|
+
"isSignal": true;
|
|
1570
|
+
};
|
|
1571
|
+
"xLabelOrientation": {
|
|
1572
|
+
"alias": "xLabelOrientation";
|
|
1573
|
+
"required": false;
|
|
1574
|
+
"isSignal": true;
|
|
1575
|
+
};
|
|
1576
|
+
"showAxisBreak": {
|
|
1577
|
+
"alias": "showAxisBreak";
|
|
1578
|
+
"required": false;
|
|
1579
|
+
"isSignal": true;
|
|
1580
|
+
};
|
|
1581
|
+
"height": {
|
|
1582
|
+
"alias": "height";
|
|
1583
|
+
"required": false;
|
|
1584
|
+
"isSignal": true;
|
|
1585
|
+
};
|
|
1586
|
+
"size": {
|
|
1587
|
+
"alias": "size";
|
|
1588
|
+
"required": false;
|
|
1589
|
+
"isSignal": true;
|
|
1590
|
+
};
|
|
1591
|
+
"animation": {
|
|
1592
|
+
"alias": "animation";
|
|
1593
|
+
"required": false;
|
|
1594
|
+
"isSignal": true;
|
|
1595
|
+
};
|
|
1596
|
+
"animationDuration": {
|
|
1597
|
+
"alias": "animationDuration";
|
|
1598
|
+
"required": false;
|
|
1599
|
+
"isSignal": true;
|
|
1600
|
+
};
|
|
1601
|
+
"formatValue": {
|
|
1602
|
+
"alias": "formatValue";
|
|
1603
|
+
"required": false;
|
|
1604
|
+
"isSignal": true;
|
|
1605
|
+
};
|
|
1606
|
+
"ariaLabel": {
|
|
1607
|
+
"alias": "aria-label";
|
|
1608
|
+
"required": false;
|
|
1609
|
+
"isSignal": true;
|
|
1610
|
+
};
|
|
1611
|
+
}, {
|
|
1612
|
+
"pointClick": "pointClick";
|
|
1613
|
+
"activePointChange": "activePointChange";
|
|
1614
|
+
}, never, never, true, never>;
|
|
1615
|
+
}
|
|
1276
1616
|
/** Visual style of the separator rendered between breadcrumb items. */
|
|
1277
1617
|
export type BreadcrumbsSeparator = 'chevron' | 'slash';
|
|
1278
1618
|
/** Visual size of the breadcrumb trail. */
|
|
@@ -3993,6 +4333,352 @@ export declare class InputComponent implements ControlValueAccessor {
|
|
|
3993
4333
|
"blurred": "blurred";
|
|
3994
4334
|
}, never, ["[slot=prefix]", "[slot=suffix]"], true, never>;
|
|
3995
4335
|
}
|
|
4336
|
+
/** How the line bends between points. */
|
|
4337
|
+
export type LineChartCurve = 'linear' | 'smooth' | 'step';
|
|
4338
|
+
/**
|
|
4339
|
+
* Entrance animation, replayed whenever the data changes. `draw` traces each
|
|
4340
|
+
* line along its length, `reveal` wipes every line in together from left to
|
|
4341
|
+
* right, `fade` fades the plot in, and `rise` grows it up from the baseline.
|
|
4342
|
+
*/
|
|
4343
|
+
export type LineChartAnimation = 'draw' | 'reveal' | 'fade' | 'rise' | 'none';
|
|
4344
|
+
/** A labelled mark along the x-axis, placed on the same scale as `xValues`. */
|
|
4345
|
+
export interface LineChartTick {
|
|
4346
|
+
value: number;
|
|
4347
|
+
label: string;
|
|
4348
|
+
}
|
|
4349
|
+
/** The stretch of the x scale a windowed line chart currently shows. */
|
|
4350
|
+
export interface LineChartVisibleRange {
|
|
4351
|
+
start: number;
|
|
4352
|
+
end: number;
|
|
4353
|
+
}
|
|
4354
|
+
interface PlotPoint {
|
|
4355
|
+
x: number;
|
|
4356
|
+
y: number;
|
|
4357
|
+
index: number;
|
|
4358
|
+
value: number;
|
|
4359
|
+
}
|
|
4360
|
+
interface PlotSeries {
|
|
4361
|
+
name: string;
|
|
4362
|
+
color: string;
|
|
4363
|
+
paths: string[];
|
|
4364
|
+
areas: string[];
|
|
4365
|
+
points: PlotPoint[];
|
|
4366
|
+
}
|
|
4367
|
+
interface ActivePoint {
|
|
4368
|
+
series: number;
|
|
4369
|
+
index: number;
|
|
4370
|
+
}
|
|
4371
|
+
interface XLabel {
|
|
4372
|
+
key: number;
|
|
4373
|
+
text: string;
|
|
4374
|
+
x: number;
|
|
4375
|
+
}
|
|
4376
|
+
interface PlacedXLabel extends XLabel {
|
|
4377
|
+
textX: number;
|
|
4378
|
+
}
|
|
4379
|
+
interface XDomain {
|
|
4380
|
+
/** First and last positions on the x scale. */
|
|
4381
|
+
first: number;
|
|
4382
|
+
last: number;
|
|
4383
|
+
/** Positions at the plot's left and right edges. */
|
|
4384
|
+
start: number;
|
|
4385
|
+
end: number;
|
|
4386
|
+
/** Width of the visible window, set only when the data outgrows it. */
|
|
4387
|
+
span: number | null;
|
|
4388
|
+
}
|
|
4389
|
+
/**
|
|
4390
|
+
* Plots one or more series of values as lines, with optional points and area
|
|
4391
|
+
* fills. Points are spaced evenly by default, or placed along a numeric scale
|
|
4392
|
+
* by `xValues`, with the x-axis labelled per point or by `xTicks`. A
|
|
4393
|
+
* `visibleXSpan` window makes a long run of data pannable. Hovering or
|
|
4394
|
+
* arrowing through the chart reveals each point's values in a tooltip, and a
|
|
4395
|
+
* visually hidden table carries the full data for screen readers.
|
|
4396
|
+
*/
|
|
4397
|
+
export declare class LineChartComponent {
|
|
4398
|
+
protected readonly i18n: EagamiI18nService;
|
|
4399
|
+
/**
|
|
4400
|
+
* Each point's name, one per value, titling its tooltip and its row in the
|
|
4401
|
+
* data table. Also labels the x-axis, unless `xTicks` is set.
|
|
4402
|
+
*/
|
|
4403
|
+
readonly labels: import("@angular/core").InputSignal<string[]>;
|
|
4404
|
+
/** The series to plot. */
|
|
4405
|
+
readonly series: import("@angular/core").InputSignal<ChartSeries[]>;
|
|
4406
|
+
/**
|
|
4407
|
+
* Position of each point along the x-axis, one per value in ascending
|
|
4408
|
+
* order, so points sit proportionally apart. Spaced evenly by index when
|
|
4409
|
+
* unset.
|
|
4410
|
+
*/
|
|
4411
|
+
readonly xValues: import("@angular/core").InputSignal<readonly number[] | null>;
|
|
4412
|
+
/**
|
|
4413
|
+
* Marks drawn along the x-axis in place of the per-point labels, each at its
|
|
4414
|
+
* value on the x scale (`xValues`, or the index when unset). They need not
|
|
4415
|
+
* line up with any point, and the axis widens to take in any beyond the points.
|
|
4416
|
+
*/
|
|
4417
|
+
readonly xTicks: import("@angular/core").InputSignal<readonly LineChartTick[] | null>;
|
|
4418
|
+
/**
|
|
4419
|
+
* Width of the x range shown at once, in the units of `xValues` (or of
|
|
4420
|
+
* indices when unset). When the data spans more, the chart opens on its
|
|
4421
|
+
* latest stretch and pans by trackpad, Shift + wheel, drag, or the arrow
|
|
4422
|
+
* keys, and a trackpad pinch or Ctrl + wheel widens or narrows the window,
|
|
4423
|
+
* fitting the y-axis to the points in view. `null` shows everything.
|
|
4424
|
+
*/
|
|
4425
|
+
readonly visibleXSpan: import("@angular/core").InputSignal<number | null>;
|
|
4426
|
+
/** How the line bends between points. */
|
|
4427
|
+
readonly curve: import("@angular/core").InputSignal<LineChartCurve>;
|
|
4428
|
+
/** Fills the area beneath each line with a light wash of its color. */
|
|
4429
|
+
readonly showArea: import("@angular/core").InputSignal<boolean>;
|
|
4430
|
+
/** Marks every value with a point. */
|
|
4431
|
+
readonly showPoints: import("@angular/core").InputSignal<boolean>;
|
|
4432
|
+
/** Draws horizontal gridlines at each y-axis tick. */
|
|
4433
|
+
readonly showGrid: import("@angular/core").InputSignal<boolean>;
|
|
4434
|
+
/** Shows a legend beneath the chart when it plots more than one series. */
|
|
4435
|
+
readonly showLegend: import("@angular/core").InputSignal<boolean>;
|
|
4436
|
+
/** Lower bound of the y-axis; derived from the data when unset. */
|
|
4437
|
+
readonly yMin: import("@angular/core").InputSignal<number | undefined>;
|
|
4438
|
+
/** Upper bound of the y-axis; derived from the data when unset. */
|
|
4439
|
+
readonly yMax: import("@angular/core").InputSignal<number | undefined>;
|
|
4440
|
+
/** How the x-axis labels are set; `auto` turns them as they run out of room. */
|
|
4441
|
+
readonly xLabelOrientation: import("@angular/core").InputSignal<ChartLabelOrientation>;
|
|
4442
|
+
/** Marks the foot of a y-axis that stops short of zero with a break symbol. */
|
|
4443
|
+
readonly showAxisBreak: import("@angular/core").InputSignal<boolean>;
|
|
4444
|
+
/** Height of the plot in pixels; the width fills the container. */
|
|
4445
|
+
readonly height: import("@angular/core").InputSignal<number>;
|
|
4446
|
+
/** Visual size; scales the axis, legend, and tooltip text. */
|
|
4447
|
+
readonly size: import("@angular/core").InputSignal<import("@eagami/ui").EaSize>;
|
|
4448
|
+
/** Entrance animation, replayed whenever the data changes. */
|
|
4449
|
+
readonly animation: import("@angular/core").InputSignal<LineChartAnimation>;
|
|
4450
|
+
/** Length of the entrance animation in milliseconds. */
|
|
4451
|
+
readonly animationDuration: import("@angular/core").InputSignal<number>;
|
|
4452
|
+
/** Formats values on the axis, tooltip, and data table; locale-grouped by default. */
|
|
4453
|
+
readonly formatValue: import("@angular/core").InputSignal<((value: number) => string) | null>;
|
|
4454
|
+
/** Accessible name for the chart; defaults to a localized "Line chart". */
|
|
4455
|
+
readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
|
|
4456
|
+
/** Fires when a point is clicked, or chosen with Enter or Space. */
|
|
4457
|
+
readonly pointClick: import("@angular/core").OutputEmitterRef<ChartPointEvent>;
|
|
4458
|
+
/** Fires when the highlighted point changes by pointer or keyboard, with `null` once cleared. */
|
|
4459
|
+
readonly activePointChange: import("@angular/core").OutputEmitterRef<ChartPointEvent | null>;
|
|
4460
|
+
/** Fires with the newly visible x range whenever a windowed chart pans or zooms. */
|
|
4461
|
+
readonly visibleRangeChange: import("@angular/core").OutputEmitterRef<LineChartVisibleRange>;
|
|
4462
|
+
private readonly viewport;
|
|
4463
|
+
private readonly format;
|
|
4464
|
+
protected readonly active: import("@angular/core").WritableSignal<ActivePoint | null>;
|
|
4465
|
+
protected readonly clipId: string;
|
|
4466
|
+
protected readonly breakMaskId: string;
|
|
4467
|
+
private readonly panEnd;
|
|
4468
|
+
private readonly zoomSpan;
|
|
4469
|
+
private gestureSpan;
|
|
4470
|
+
protected readonly panning: import("@angular/core").WritableSignal<boolean>;
|
|
4471
|
+
private drag;
|
|
4472
|
+
private suppressClick;
|
|
4473
|
+
protected readonly label: import("@angular/core").Signal<string>;
|
|
4474
|
+
protected readonly count: import("@angular/core").Signal<number>;
|
|
4475
|
+
protected readonly hasData: import("@angular/core").Signal<boolean>;
|
|
4476
|
+
private readonly positions;
|
|
4477
|
+
protected readonly domain: import("@angular/core").Signal<XDomain>;
|
|
4478
|
+
protected readonly windowed: import("@angular/core").Signal<boolean>;
|
|
4479
|
+
protected readonly renderPass: import("@angular/core").Signal<{}[]>;
|
|
4480
|
+
protected readonly hostClasses: import("@angular/core").Signal<{
|
|
4481
|
+
[x: string]: boolean;
|
|
4482
|
+
'ea-line-chart--pannable': boolean;
|
|
4483
|
+
'ea-line-chart--panning': boolean;
|
|
4484
|
+
}>;
|
|
4485
|
+
private readonly runs;
|
|
4486
|
+
private readonly visibleValues;
|
|
4487
|
+
protected readonly layout: import("@angular/core").Signal<{
|
|
4488
|
+
width: number;
|
|
4489
|
+
height: number;
|
|
4490
|
+
top: number;
|
|
4491
|
+
left: number;
|
|
4492
|
+
plotWidth: number;
|
|
4493
|
+
plotHeight: number;
|
|
4494
|
+
baselineY: number;
|
|
4495
|
+
windowed: boolean;
|
|
4496
|
+
axisBreak: AxisBreak | null;
|
|
4497
|
+
axisY: number;
|
|
4498
|
+
tickEndY: number;
|
|
4499
|
+
labelAngle: number;
|
|
4500
|
+
labelY: number;
|
|
4501
|
+
tickX: number;
|
|
4502
|
+
ticks: {
|
|
4503
|
+
y: number;
|
|
4504
|
+
value: number;
|
|
4505
|
+
text: string;
|
|
4506
|
+
}[];
|
|
4507
|
+
xLabels: PlacedXLabel[];
|
|
4508
|
+
series: PlotSeries[];
|
|
4509
|
+
x: (i: number) => number;
|
|
4510
|
+
y: (v: number) => number;
|
|
4511
|
+
}>;
|
|
4512
|
+
private plotArea;
|
|
4513
|
+
protected readonly tooltip: import("@angular/core").Signal<{
|
|
4514
|
+
x: number;
|
|
4515
|
+
y: number;
|
|
4516
|
+
title: string;
|
|
4517
|
+
rows: {
|
|
4518
|
+
name: string;
|
|
4519
|
+
color: string;
|
|
4520
|
+
value: string;
|
|
4521
|
+
active: boolean;
|
|
4522
|
+
}[];
|
|
4523
|
+
key: string;
|
|
4524
|
+
} | null>;
|
|
4525
|
+
protected readonly tooltips: import("@angular/core").Signal<{
|
|
4526
|
+
x: number;
|
|
4527
|
+
y: number;
|
|
4528
|
+
title: string;
|
|
4529
|
+
rows: {
|
|
4530
|
+
name: string;
|
|
4531
|
+
color: string;
|
|
4532
|
+
value: string;
|
|
4533
|
+
active: boolean;
|
|
4534
|
+
}[];
|
|
4535
|
+
key: string;
|
|
4536
|
+
}[]>;
|
|
4537
|
+
protected readonly announcement: import("@angular/core").Signal<string>;
|
|
4538
|
+
protected readonly showsLegend: import("@angular/core").Signal<boolean>;
|
|
4539
|
+
protected seriesColor(index: number): string;
|
|
4540
|
+
protected isDimmed(index: number): boolean;
|
|
4541
|
+
protected isActivePoint(seriesIndex: number, index: number): boolean;
|
|
4542
|
+
protected tableValue(value: number | null | undefined): string;
|
|
4543
|
+
protected onPointerDown(event: PointerEvent): void;
|
|
4544
|
+
protected onPointerMove(event: PointerEvent): void;
|
|
4545
|
+
protected onPointerUp(event: PointerEvent): void;
|
|
4546
|
+
protected onPointerLeave(): void;
|
|
4547
|
+
protected onWheel(event: WheelEvent): void;
|
|
4548
|
+
protected onClick(): void;
|
|
4549
|
+
protected onFocus(): void;
|
|
4550
|
+
protected onBlur(): void;
|
|
4551
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
4552
|
+
private isValue;
|
|
4553
|
+
private yScale;
|
|
4554
|
+
private atPosition;
|
|
4555
|
+
private xLabelCandidates;
|
|
4556
|
+
private labelsFit;
|
|
4557
|
+
private xLabels;
|
|
4558
|
+
private widestXLabel;
|
|
4559
|
+
protected onGestureStart(event: Event): void;
|
|
4560
|
+
protected onGestureChange(event: Event): void;
|
|
4561
|
+
protected onGestureEnd(): void;
|
|
4562
|
+
private zoomTo;
|
|
4563
|
+
private minSpan;
|
|
4564
|
+
private unitsPerPx;
|
|
4565
|
+
private panTo;
|
|
4566
|
+
private endDrag;
|
|
4567
|
+
private reveal;
|
|
4568
|
+
private indexAt;
|
|
4569
|
+
private valueAt;
|
|
4570
|
+
private firstPoint;
|
|
4571
|
+
private nearestValid;
|
|
4572
|
+
private eventFor;
|
|
4573
|
+
private setActive;
|
|
4574
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LineChartComponent, never>;
|
|
4575
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LineChartComponent, "ea-line-chart", never, {
|
|
4576
|
+
"labels": {
|
|
4577
|
+
"alias": "labels";
|
|
4578
|
+
"required": false;
|
|
4579
|
+
"isSignal": true;
|
|
4580
|
+
};
|
|
4581
|
+
"series": {
|
|
4582
|
+
"alias": "series";
|
|
4583
|
+
"required": false;
|
|
4584
|
+
"isSignal": true;
|
|
4585
|
+
};
|
|
4586
|
+
"xValues": {
|
|
4587
|
+
"alias": "xValues";
|
|
4588
|
+
"required": false;
|
|
4589
|
+
"isSignal": true;
|
|
4590
|
+
};
|
|
4591
|
+
"xTicks": {
|
|
4592
|
+
"alias": "xTicks";
|
|
4593
|
+
"required": false;
|
|
4594
|
+
"isSignal": true;
|
|
4595
|
+
};
|
|
4596
|
+
"visibleXSpan": {
|
|
4597
|
+
"alias": "visibleXSpan";
|
|
4598
|
+
"required": false;
|
|
4599
|
+
"isSignal": true;
|
|
4600
|
+
};
|
|
4601
|
+
"curve": {
|
|
4602
|
+
"alias": "curve";
|
|
4603
|
+
"required": false;
|
|
4604
|
+
"isSignal": true;
|
|
4605
|
+
};
|
|
4606
|
+
"showArea": {
|
|
4607
|
+
"alias": "showArea";
|
|
4608
|
+
"required": false;
|
|
4609
|
+
"isSignal": true;
|
|
4610
|
+
};
|
|
4611
|
+
"showPoints": {
|
|
4612
|
+
"alias": "showPoints";
|
|
4613
|
+
"required": false;
|
|
4614
|
+
"isSignal": true;
|
|
4615
|
+
};
|
|
4616
|
+
"showGrid": {
|
|
4617
|
+
"alias": "showGrid";
|
|
4618
|
+
"required": false;
|
|
4619
|
+
"isSignal": true;
|
|
4620
|
+
};
|
|
4621
|
+
"showLegend": {
|
|
4622
|
+
"alias": "showLegend";
|
|
4623
|
+
"required": false;
|
|
4624
|
+
"isSignal": true;
|
|
4625
|
+
};
|
|
4626
|
+
"yMin": {
|
|
4627
|
+
"alias": "yMin";
|
|
4628
|
+
"required": false;
|
|
4629
|
+
"isSignal": true;
|
|
4630
|
+
};
|
|
4631
|
+
"yMax": {
|
|
4632
|
+
"alias": "yMax";
|
|
4633
|
+
"required": false;
|
|
4634
|
+
"isSignal": true;
|
|
4635
|
+
};
|
|
4636
|
+
"xLabelOrientation": {
|
|
4637
|
+
"alias": "xLabelOrientation";
|
|
4638
|
+
"required": false;
|
|
4639
|
+
"isSignal": true;
|
|
4640
|
+
};
|
|
4641
|
+
"showAxisBreak": {
|
|
4642
|
+
"alias": "showAxisBreak";
|
|
4643
|
+
"required": false;
|
|
4644
|
+
"isSignal": true;
|
|
4645
|
+
};
|
|
4646
|
+
"height": {
|
|
4647
|
+
"alias": "height";
|
|
4648
|
+
"required": false;
|
|
4649
|
+
"isSignal": true;
|
|
4650
|
+
};
|
|
4651
|
+
"size": {
|
|
4652
|
+
"alias": "size";
|
|
4653
|
+
"required": false;
|
|
4654
|
+
"isSignal": true;
|
|
4655
|
+
};
|
|
4656
|
+
"animation": {
|
|
4657
|
+
"alias": "animation";
|
|
4658
|
+
"required": false;
|
|
4659
|
+
"isSignal": true;
|
|
4660
|
+
};
|
|
4661
|
+
"animationDuration": {
|
|
4662
|
+
"alias": "animationDuration";
|
|
4663
|
+
"required": false;
|
|
4664
|
+
"isSignal": true;
|
|
4665
|
+
};
|
|
4666
|
+
"formatValue": {
|
|
4667
|
+
"alias": "formatValue";
|
|
4668
|
+
"required": false;
|
|
4669
|
+
"isSignal": true;
|
|
4670
|
+
};
|
|
4671
|
+
"ariaLabel": {
|
|
4672
|
+
"alias": "aria-label";
|
|
4673
|
+
"required": false;
|
|
4674
|
+
"isSignal": true;
|
|
4675
|
+
};
|
|
4676
|
+
}, {
|
|
4677
|
+
"pointClick": "pointClick";
|
|
4678
|
+
"activePointChange": "activePointChange";
|
|
4679
|
+
"visibleRangeChange": "visibleRangeChange";
|
|
4680
|
+
}, never, never, true, never>;
|
|
4681
|
+
}
|
|
3996
4682
|
/** Placement of the menu list relative to its trigger. */
|
|
3997
4683
|
export type MenuPlacement = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';
|
|
3998
4684
|
/** Visual size of the menu, shared by all of its items. */
|
|
@@ -5030,6 +5716,183 @@ export declare class PaginatorComponent {
|
|
|
5030
5716
|
"changed": "changed";
|
|
5031
5717
|
}, never, never, true, never>;
|
|
5032
5718
|
}
|
|
5719
|
+
/** A solid pie, or a ring with an empty center. */
|
|
5720
|
+
export type PieChartVariant = 'pie' | 'donut';
|
|
5721
|
+
/**
|
|
5722
|
+
* Entrance animation, replayed whenever the data changes. `sweep` reveals the
|
|
5723
|
+
* slices clockwise from twelve o'clock, `grow` scales the chart out from its
|
|
5724
|
+
* center, and `fade` fades it in.
|
|
5725
|
+
*/
|
|
5726
|
+
export type PieChartAnimation = 'sweep' | 'grow' | 'fade' | 'none';
|
|
5727
|
+
/** One slice of an `<ea-pie-chart>`. */
|
|
5728
|
+
export interface PieChartSlice {
|
|
5729
|
+
/** Name shown in the legend, tooltip, and data table. */
|
|
5730
|
+
label: string;
|
|
5731
|
+
/** Size of the slice; negative values count as zero. */
|
|
5732
|
+
value: number;
|
|
5733
|
+
/** Any CSS color; defaults to the next slot of the `--color-chart-*` palette. */
|
|
5734
|
+
color?: string;
|
|
5735
|
+
}
|
|
5736
|
+
/** Payload describing a single slice of a pie chart. */
|
|
5737
|
+
export interface PieChartSliceEvent {
|
|
5738
|
+
index: number;
|
|
5739
|
+
label: string;
|
|
5740
|
+
value: number;
|
|
5741
|
+
/** Share of the total, from 0 to 100. */
|
|
5742
|
+
percent: number;
|
|
5743
|
+
}
|
|
5744
|
+
interface PlotSlice {
|
|
5745
|
+
index: number;
|
|
5746
|
+
path: string;
|
|
5747
|
+
color: string;
|
|
5748
|
+
midAngle: number;
|
|
5749
|
+
start: number;
|
|
5750
|
+
end: number;
|
|
5751
|
+
}
|
|
5752
|
+
/**
|
|
5753
|
+
* Shows how parts make up a whole as slices of a pie or donut, with a legend
|
|
5754
|
+
* of labels and shares. Hovering or arrowing through the slices reveals each
|
|
5755
|
+
* one's value in a tooltip, and a visually hidden table carries the full data
|
|
5756
|
+
* for screen readers.
|
|
5757
|
+
*/
|
|
5758
|
+
export declare class PieChartComponent {
|
|
5759
|
+
protected readonly i18n: EagamiI18nService;
|
|
5760
|
+
/** The slices to draw, clockwise from twelve o'clock. */
|
|
5761
|
+
readonly data: import("@angular/core").InputSignal<PieChartSlice[]>;
|
|
5762
|
+
/** A solid pie, or a ring with an empty center. */
|
|
5763
|
+
readonly variant: import("@angular/core").InputSignal<PieChartVariant>;
|
|
5764
|
+
/** Shows a legend of every slice beside the chart. */
|
|
5765
|
+
readonly showLegend: import("@angular/core").InputSignal<boolean>;
|
|
5766
|
+
/** Adds each slice's share of the total to its legend entry. */
|
|
5767
|
+
readonly showPercentages: import("@angular/core").InputSignal<boolean>;
|
|
5768
|
+
/** Largest diameter of the chart in pixels; it shrinks to fit a narrower container. */
|
|
5769
|
+
readonly height: import("@angular/core").InputSignal<number>;
|
|
5770
|
+
/** Visual size; scales the legend and tooltip text. */
|
|
5771
|
+
readonly size: import("@angular/core").InputSignal<import("@eagami/ui").EaSize>;
|
|
5772
|
+
/** Entrance animation, replayed whenever the data changes. */
|
|
5773
|
+
readonly animation: import("@angular/core").InputSignal<PieChartAnimation>;
|
|
5774
|
+
/** Length of the entrance animation in milliseconds. */
|
|
5775
|
+
readonly animationDuration: import("@angular/core").InputSignal<number>;
|
|
5776
|
+
/** Formats values in the tooltip and data table; locale-grouped by default. */
|
|
5777
|
+
readonly formatValue: import("@angular/core").InputSignal<((value: number) => string) | null>;
|
|
5778
|
+
/** Accessible name for the chart; defaults to a localized "Pie chart". */
|
|
5779
|
+
readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
|
|
5780
|
+
/** Fires when a slice is clicked, or chosen with Enter or Space. */
|
|
5781
|
+
readonly sliceClick: import("@angular/core").OutputEmitterRef<PieChartSliceEvent>;
|
|
5782
|
+
/** Fires when the highlighted slice changes by pointer or keyboard, with `null` once cleared. */
|
|
5783
|
+
readonly activeSliceChange: import("@angular/core").OutputEmitterRef<PieChartSliceEvent | null>;
|
|
5784
|
+
private readonly viewport;
|
|
5785
|
+
private readonly format;
|
|
5786
|
+
protected readonly active: import("@angular/core").WritableSignal<number | null>;
|
|
5787
|
+
protected readonly label: import("@angular/core").Signal<string>;
|
|
5788
|
+
protected readonly total: import("@angular/core").Signal<number>;
|
|
5789
|
+
protected readonly hasData: import("@angular/core").Signal<boolean>;
|
|
5790
|
+
protected readonly renderPass: import("@angular/core").Signal<{}[]>;
|
|
5791
|
+
protected readonly hostClasses: import("@angular/core").Signal<{
|
|
5792
|
+
[x: string]: boolean;
|
|
5793
|
+
}>;
|
|
5794
|
+
protected readonly layout: import("@angular/core").Signal<{
|
|
5795
|
+
diameter: number;
|
|
5796
|
+
cx: number;
|
|
5797
|
+
cy: number;
|
|
5798
|
+
outer: number;
|
|
5799
|
+
inner: number;
|
|
5800
|
+
slices: PlotSlice[];
|
|
5801
|
+
}>;
|
|
5802
|
+
protected readonly legend: import("@angular/core").Signal<{
|
|
5803
|
+
label: string;
|
|
5804
|
+
color: string;
|
|
5805
|
+
percent: string;
|
|
5806
|
+
}[]>;
|
|
5807
|
+
protected readonly tooltip: import("@angular/core").Signal<{
|
|
5808
|
+
x: number;
|
|
5809
|
+
y: number;
|
|
5810
|
+
title: string;
|
|
5811
|
+
color: string;
|
|
5812
|
+
detail: string;
|
|
5813
|
+
key: number;
|
|
5814
|
+
} | null>;
|
|
5815
|
+
protected readonly tooltips: import("@angular/core").Signal<{
|
|
5816
|
+
x: number;
|
|
5817
|
+
y: number;
|
|
5818
|
+
title: string;
|
|
5819
|
+
color: string;
|
|
5820
|
+
detail: string;
|
|
5821
|
+
key: number;
|
|
5822
|
+
}[]>;
|
|
5823
|
+
protected readonly announcement: import("@angular/core").Signal<string>;
|
|
5824
|
+
protected tableValue(slice: PieChartSlice): string;
|
|
5825
|
+
protected tablePercent(index: number): string;
|
|
5826
|
+
protected isDimmed(index: number): boolean;
|
|
5827
|
+
protected offset(slice: PlotSlice): string | null;
|
|
5828
|
+
protected onPointerMove(event: PointerEvent): void;
|
|
5829
|
+
protected onPointerLeave(): void;
|
|
5830
|
+
protected onClick(): void;
|
|
5831
|
+
protected onFocus(): void;
|
|
5832
|
+
protected onBlur(): void;
|
|
5833
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
5834
|
+
private sliceValue;
|
|
5835
|
+
private percentOf;
|
|
5836
|
+
private formatPercent;
|
|
5837
|
+
private eventFor;
|
|
5838
|
+
private setActive;
|
|
5839
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PieChartComponent, never>;
|
|
5840
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PieChartComponent, "ea-pie-chart", never, {
|
|
5841
|
+
"data": {
|
|
5842
|
+
"alias": "data";
|
|
5843
|
+
"required": false;
|
|
5844
|
+
"isSignal": true;
|
|
5845
|
+
};
|
|
5846
|
+
"variant": {
|
|
5847
|
+
"alias": "variant";
|
|
5848
|
+
"required": false;
|
|
5849
|
+
"isSignal": true;
|
|
5850
|
+
};
|
|
5851
|
+
"showLegend": {
|
|
5852
|
+
"alias": "showLegend";
|
|
5853
|
+
"required": false;
|
|
5854
|
+
"isSignal": true;
|
|
5855
|
+
};
|
|
5856
|
+
"showPercentages": {
|
|
5857
|
+
"alias": "showPercentages";
|
|
5858
|
+
"required": false;
|
|
5859
|
+
"isSignal": true;
|
|
5860
|
+
};
|
|
5861
|
+
"height": {
|
|
5862
|
+
"alias": "height";
|
|
5863
|
+
"required": false;
|
|
5864
|
+
"isSignal": true;
|
|
5865
|
+
};
|
|
5866
|
+
"size": {
|
|
5867
|
+
"alias": "size";
|
|
5868
|
+
"required": false;
|
|
5869
|
+
"isSignal": true;
|
|
5870
|
+
};
|
|
5871
|
+
"animation": {
|
|
5872
|
+
"alias": "animation";
|
|
5873
|
+
"required": false;
|
|
5874
|
+
"isSignal": true;
|
|
5875
|
+
};
|
|
5876
|
+
"animationDuration": {
|
|
5877
|
+
"alias": "animationDuration";
|
|
5878
|
+
"required": false;
|
|
5879
|
+
"isSignal": true;
|
|
5880
|
+
};
|
|
5881
|
+
"formatValue": {
|
|
5882
|
+
"alias": "formatValue";
|
|
5883
|
+
"required": false;
|
|
5884
|
+
"isSignal": true;
|
|
5885
|
+
};
|
|
5886
|
+
"ariaLabel": {
|
|
5887
|
+
"alias": "aria-label";
|
|
5888
|
+
"required": false;
|
|
5889
|
+
"isSignal": true;
|
|
5890
|
+
};
|
|
5891
|
+
}, {
|
|
5892
|
+
"sliceClick": "sliceClick";
|
|
5893
|
+
"activeSliceChange": "activeSliceChange";
|
|
5894
|
+
}, never, never, true, never>;
|
|
5895
|
+
}
|
|
5033
5896
|
/** Semantic colour scheme of the progress bar. */
|
|
5034
5897
|
export type ProgressBarVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
5035
5898
|
/** Visual height of the progress bar. */
|
|
@@ -6387,6 +7250,12 @@ export declare class TooltipDirective implements OnDestroy {
|
|
|
6387
7250
|
* reach its scrollbar. Bubbles that fit hide immediately.
|
|
6388
7251
|
*/
|
|
6389
7252
|
readonly dismissDelay: import("@angular/core").InputSignal<number>;
|
|
7253
|
+
/**
|
|
7254
|
+
* Shows or hides the bubble programmatically, for a trigger whose moment to
|
|
7255
|
+
* explain itself is not a hover or focus of its own (a chart's highlighted
|
|
7256
|
+
* point, say). `null` leaves it to hover and focus. Escape still dismisses it.
|
|
7257
|
+
*/
|
|
7258
|
+
readonly tooltipOpen: import("@angular/core").InputSignal<boolean | null>;
|
|
6390
7259
|
private tooltipEl;
|
|
6391
7260
|
/** Side the open bubble settled on, held across repositions while it fits. */
|
|
6392
7261
|
private placedPosition;
|
|
@@ -6411,6 +7280,7 @@ export declare class TooltipDirective implements OnDestroy {
|
|
|
6411
7280
|
private readonly scrollListenerOptions;
|
|
6412
7281
|
private resizeObserver;
|
|
6413
7282
|
constructor();
|
|
7283
|
+
private controlled;
|
|
6414
7284
|
ngOnDestroy(): void;
|
|
6415
7285
|
private syncPointerListeners;
|
|
6416
7286
|
private show;
|
|
@@ -6458,6 +7328,11 @@ export declare class TooltipDirective implements OnDestroy {
|
|
|
6458
7328
|
"required": false;
|
|
6459
7329
|
"isSignal": true;
|
|
6460
7330
|
};
|
|
7331
|
+
"tooltipOpen": {
|
|
7332
|
+
"alias": "tooltipOpen";
|
|
7333
|
+
"required": false;
|
|
7334
|
+
"isSignal": true;
|
|
7335
|
+
};
|
|
6461
7336
|
}, {}, never, never, true, never>;
|
|
6462
7337
|
}
|
|
6463
7338
|
/** Semantic colour scheme of a tag. */
|
|
@@ -11365,4 +12240,4 @@ export declare class ZoomOutIconComponent extends IconComponentBase {
|
|
|
11365
12240
|
static ɵfac: i0.ɵɵFactoryDeclaration<ZoomOutIconComponent, never>;
|
|
11366
12241
|
static ɵcmp: i0.ɵɵComponentDeclaration<ZoomOutIconComponent, "ea-icon-zoom-out", never, {}, {}, never, never, true, never>;
|
|
11367
12242
|
}
|
|
11368
|
-
export type { EaErrorMessages, EaValidationErrorKey };
|
|
12243
|
+
export type { ChartLabelOrientation, ChartPointEvent, ChartSeries, ChartSize, EaErrorMessages, EaValidationErrorKey };
|