@ojiepermana/angular 22.1.14 → 22.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -6
- package/SUPPORT.md +3 -3
- package/chart/README.md +1 -1
- package/component/README.md +2 -2
- package/component/calendar/README.md +3 -15
- package/component/drawer/README.md +1 -2
- package/fesm2022/ojiepermana-angular-chart-area.mjs +352 -137
- package/fesm2022/ojiepermana-angular-chart-bar.mjs +744 -524
- package/fesm2022/ojiepermana-angular-chart-core.mjs +1140 -1344
- package/fesm2022/ojiepermana-angular-chart-line.mjs +393 -147
- package/fesm2022/ojiepermana-angular-chart-pie.mjs +408 -179
- package/fesm2022/ojiepermana-angular-chart-primitives.mjs +1262 -920
- package/fesm2022/ojiepermana-angular-chart-radar.mjs +473 -205
- package/fesm2022/ojiepermana-angular-chart-radial.mjs +425 -182
- package/fesm2022/ojiepermana-angular-chart-scatter.mjs +386 -210
- package/fesm2022/ojiepermana-angular-chart.mjs +3 -19
- package/fesm2022/ojiepermana-angular-component-accordion.mjs +485 -243
- package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +963 -325
- package/fesm2022/ojiepermana-angular-component-alert.mjs +266 -103
- package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +80 -35
- package/fesm2022/ojiepermana-angular-component-avatar.mjs +402 -135
- package/fesm2022/ojiepermana-angular-component-badge.mjs +109 -59
- package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +410 -142
- package/fesm2022/ojiepermana-angular-component-button-group.mjs +249 -96
- package/fesm2022/ojiepermana-angular-component-button.mjs +153 -75
- package/fesm2022/ojiepermana-angular-component-calendar.mjs +531 -418
- package/fesm2022/ojiepermana-angular-component-card.mjs +457 -171
- package/fesm2022/ojiepermana-angular-component-carousel.mjs +642 -272
- package/fesm2022/ojiepermana-angular-component-checkbox.mjs +312 -108
- package/fesm2022/ojiepermana-angular-component-collapsible.mjs +299 -115
- package/fesm2022/ojiepermana-angular-component-combobox.mjs +396 -183
- package/fesm2022/ojiepermana-angular-component-command.mjs +807 -347
- package/fesm2022/ojiepermana-angular-component-composer.mjs +807 -330
- package/fesm2022/ojiepermana-angular-component-context-menu.mjs +196 -161
- package/fesm2022/ojiepermana-angular-component-date-picker.mjs +650 -338
- package/fesm2022/ojiepermana-angular-component-dialog.mjs +710 -316
- package/fesm2022/ojiepermana-angular-component-drawer.mjs +1 -5
- package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +1212 -646
- package/fesm2022/ojiepermana-angular-component-editor.mjs +987 -502
- package/fesm2022/ojiepermana-angular-component-empty.mjs +350 -137
- package/fesm2022/ojiepermana-angular-component-form.mjs +813 -434
- package/fesm2022/ojiepermana-angular-component-hover-card.mjs +486 -277
- package/fesm2022/ojiepermana-angular-component-icon.mjs +241 -140
- package/fesm2022/ojiepermana-angular-component-input-group.mjs +449 -176
- package/fesm2022/ojiepermana-angular-component-input-otp.mjs +891 -488
- package/fesm2022/ojiepermana-angular-component-input.mjs +86 -55
- package/fesm2022/ojiepermana-angular-component-item.mjs +713 -261
- package/fesm2022/ojiepermana-angular-component-kanban.mjs +714 -216
- package/fesm2022/ojiepermana-angular-component-kbd.mjs +124 -52
- package/fesm2022/ojiepermana-angular-component-label.mjs +82 -31
- package/fesm2022/ojiepermana-angular-component-menubar.mjs +479 -329
- package/fesm2022/ojiepermana-angular-component-native-select.mjs +167 -65
- package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +683 -380
- package/fesm2022/ojiepermana-angular-component-pagination.mjs +277 -94
- package/fesm2022/ojiepermana-angular-component-pillbox.mjs +1283 -607
- package/fesm2022/ojiepermana-angular-component-popover.mjs +291 -204
- package/fesm2022/ojiepermana-angular-component-progress.mjs +176 -53
- package/fesm2022/ojiepermana-angular-component-radio.mjs +449 -142
- package/fesm2022/ojiepermana-angular-component-resizable.mjs +659 -453
- package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +117 -39
- package/fesm2022/ojiepermana-angular-component-segmented-control.mjs +351 -172
- package/fesm2022/ojiepermana-angular-component-select.mjs +475 -345
- package/fesm2022/ojiepermana-angular-component-separator.mjs +102 -35
- package/fesm2022/ojiepermana-angular-component-sheet.mjs +797 -347
- package/fesm2022/ojiepermana-angular-component-skeleton.mjs +62 -29
- package/fesm2022/ojiepermana-angular-component-slider.mjs +592 -376
- package/fesm2022/ojiepermana-angular-component-spinner.mjs +135 -38
- package/fesm2022/ojiepermana-angular-component-switch.mjs +315 -103
- package/fesm2022/ojiepermana-angular-component-table.mjs +440 -153
- package/fesm2022/ojiepermana-angular-component-tabs.mjs +590 -317
- package/fesm2022/ojiepermana-angular-component-textarea.mjs +85 -50
- package/fesm2022/ojiepermana-angular-component-timeline.mjs +609 -231
- package/fesm2022/ojiepermana-angular-component-toast.mjs +229 -243
- package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +573 -288
- package/fesm2022/ojiepermana-angular-component-toggle.mjs +187 -78
- package/fesm2022/ojiepermana-angular-component-tooltip.mjs +798 -517
- package/fesm2022/ojiepermana-angular-component-utils-core.mjs +159 -292
- package/fesm2022/ojiepermana-angular-component-utils-overlay.mjs +46 -58
- package/fesm2022/ojiepermana-angular-component-utils-scale.mjs +76 -38
- package/fesm2022/ojiepermana-angular-component-utils.mjs +2 -8
- package/fesm2022/ojiepermana-angular-component.mjs +0 -10
- package/fesm2022/ojiepermana-angular-navigation-core.mjs +13 -23
- package/fesm2022/ojiepermana-angular-navigation-icon.mjs +35 -24
- package/fesm2022/ojiepermana-angular-navigation-navigation-badge-count.component-DYuysKVf.mjs +129 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-dockbar-menu.component-COiTaw34.mjs +812 -0
- package/fesm2022/{ojiepermana-angular-navigation-navigation-entry-grid.component-COQ-60DS.mjs → ojiepermana-angular-navigation-navigation-entry-grid.component-YIz0IsIb.mjs} +392 -207
- package/fesm2022/ojiepermana-angular-navigation-navigation-flyout-menu.component-D2vwEwBY.mjs +650 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-horizontal.component-B5D7yXfb.mjs +662 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-item.component-CUb68MZH.mjs +1219 -0
- package/fesm2022/ojiepermana-angular-navigation-navigation-list.component-CrK16trj.mjs +327 -0
- package/fesm2022/ojiepermana-angular-navigation-service.mjs +544 -724
- package/fesm2022/ojiepermana-angular-navigation-types.mjs +139 -56
- package/fesm2022/ojiepermana-angular-navigation.mjs +3256 -4
- package/fesm2022/ojiepermana-angular-sdk.mjs +91 -201
- package/fesm2022/ojiepermana-angular-theme-component-settings.mjs +1125 -737
- package/fesm2022/ojiepermana-angular-theme-layout-services.mjs +245 -328
- package/fesm2022/ojiepermana-angular-theme-layout-types.mjs +35 -38
- package/fesm2022/ojiepermana-angular-theme-layout-wrapper.mjs +1928 -553
- package/fesm2022/ojiepermana-angular-theme-layout.mjs +847 -496
- package/fesm2022/ojiepermana-angular-theme-page-core.mjs +288 -358
- package/fesm2022/ojiepermana-angular-theme-page-filter.mjs +362 -224
- package/fesm2022/ojiepermana-angular-theme-page-overview.mjs +88 -0
- package/fesm2022/ojiepermana-angular-theme-page-root.mjs +576 -254
- package/fesm2022/ojiepermana-angular-theme-page-side.mjs +317 -177
- package/fesm2022/ojiepermana-angular-theme-page-slots.mjs +256 -112
- package/fesm2022/ojiepermana-angular-theme-page.mjs +7 -12
- package/fesm2022/ojiepermana-angular-theme-shell-services.mjs +215 -326
- package/fesm2022/ojiepermana-angular-theme-shell-types.mjs +68 -129
- package/fesm2022/ojiepermana-angular-theme-shell.mjs +907 -378
- package/fesm2022/ojiepermana-angular-theme-styles.mjs +521 -720
- package/fesm2022/ojiepermana-angular-theme.mjs +0 -10
- package/fesm2022/ojiepermana-angular.mjs +5 -24
- package/navigation/README.md +69 -18
- package/package.json +16 -12
- package/sdk/README.md +1 -1
- package/sdk/src/writer/index.js +2 -2
- package/theme/README.md +1 -1
- package/theme/layout/README.md +2 -4
- package/theme/page/README.md +50 -0
- package/theme/styles/README.md +10 -10
- package/theme/styles/css/base/prefers-dark.css +1 -1
- package/theme/styles/css/base/status.css +1 -1
- package/theme/styles/css/color/amber.css +1 -1
- package/theme/styles/css/color/blue.css +1 -1
- package/theme/styles/css/color/cyan.css +1 -1
- package/theme/styles/css/color/emerald.css +1 -1
- package/theme/styles/css/color/fuchsia.css +1 -1
- package/theme/styles/css/color/green.css +1 -1
- package/theme/styles/css/color/indigo.css +1 -1
- package/theme/styles/css/color/lime.css +1 -1
- package/theme/styles/css/color/orange.css +1 -1
- package/theme/styles/css/color/pink.css +1 -1
- package/theme/styles/css/color/purple.css +1 -1
- package/theme/styles/css/color/red.css +1 -1
- package/theme/styles/css/color/rose.css +1 -1
- package/theme/styles/css/color/sky.css +1 -1
- package/theme/styles/css/color/teal.css +1 -1
- package/theme/styles/css/color/violet.css +1 -1
- package/theme/styles/css/color/yellow.css +1 -1
- package/theme/styles/css/neutral/gray.css +1 -1
- package/theme/styles/css/neutral/mauve.css +1 -1
- package/theme/styles/css/neutral/mist.css +1 -1
- package/theme/styles/css/neutral/neutral.css +1 -1
- package/theme/styles/css/neutral/olive.css +1 -1
- package/theme/styles/css/neutral/slate.css +1 -1
- package/theme/styles/css/neutral/stone.css +1 -1
- package/theme/styles/css/neutral/taupe.css +1 -1
- package/theme/styles/css/neutral/zinc.css +1 -1
- package/types/ojiepermana-angular-chart-area.d.ts +126 -63
- package/types/ojiepermana-angular-chart-bar.d.ts +244 -154
- package/types/ojiepermana-angular-chart-core.d.ts +409 -398
- package/types/ojiepermana-angular-chart-line.d.ts +141 -68
- package/types/ojiepermana-angular-chart-pie.d.ts +192 -121
- package/types/ojiepermana-angular-chart-primitives.d.ts +283 -214
- package/types/ojiepermana-angular-chart-radar.d.ts +189 -108
- package/types/ojiepermana-angular-chart-radial.d.ts +177 -106
- package/types/ojiepermana-angular-chart-scatter.d.ts +166 -110
- package/types/ojiepermana-angular-chart.d.ts +3 -2
- package/types/ojiepermana-angular-component-accordion.d.ts +135 -81
- package/types/ojiepermana-angular-component-alert-dialog.d.ts +271 -123
- package/types/ojiepermana-angular-component-alert.d.ts +69 -39
- package/types/ojiepermana-angular-component-aspect-ratio.d.ts +20 -12
- package/types/ojiepermana-angular-component-avatar.d.ts +103 -49
- package/types/ojiepermana-angular-component-badge.d.ts +36 -24
- package/types/ojiepermana-angular-component-breadcrumb.d.ts +79 -40
- package/types/ojiepermana-angular-component-button-group.d.ts +48 -24
- package/types/ojiepermana-angular-component-button.d.ts +44 -27
- package/types/ojiepermana-angular-component-calendar.d.ts +145 -107
- package/types/ojiepermana-angular-component-card.d.ts +112 -63
- package/types/ojiepermana-angular-component-carousel.d.ts +150 -81
- package/types/ojiepermana-angular-component-checkbox.d.ts +96 -38
- package/types/ojiepermana-angular-component-collapsible.d.ts +65 -39
- package/types/ojiepermana-angular-component-combobox.d.ts +100 -55
- package/types/ojiepermana-angular-component-command.d.ts +206 -121
- package/types/ojiepermana-angular-component-composer.d.ts +184 -84
- package/types/ojiepermana-angular-component-context-menu.d.ts +51 -41
- package/types/ojiepermana-angular-component-date-picker.d.ts +199 -109
- package/types/ojiepermana-angular-component-dialog.d.ts +200 -105
- package/types/ojiepermana-angular-component-drawer.d.ts +2 -1
- package/types/ojiepermana-angular-component-dropdown-menu.d.ts +324 -202
- package/types/ojiepermana-angular-component-editor.d.ts +215 -117
- package/types/ojiepermana-angular-component-empty.d.ts +80 -45
- package/types/ojiepermana-angular-component-form.d.ts +185 -121
- package/types/ojiepermana-angular-component-hover-card.d.ts +130 -72
- package/types/ojiepermana-angular-component-icon.d.ts +87 -57
- package/types/ojiepermana-angular-component-input-group.d.ts +93 -46
- package/types/ojiepermana-angular-component-input-otp.d.ts +243 -150
- package/types/ojiepermana-angular-component-input.d.ts +27 -17
- package/types/ojiepermana-angular-component-item.d.ts +160 -84
- package/types/ojiepermana-angular-component-kanban.d.ts +157 -62
- package/types/ojiepermana-angular-component-kbd.d.ts +24 -15
- package/types/ojiepermana-angular-component-label.d.ts +19 -11
- package/types/ojiepermana-angular-component-menubar.d.ts +120 -90
- package/types/ojiepermana-angular-component-native-select.d.ts +37 -24
- package/types/ojiepermana-angular-component-navigation-menu.d.ts +157 -98
- package/types/ojiepermana-angular-component-pagination.d.ts +78 -28
- package/types/ojiepermana-angular-component-pillbox.d.ts +361 -204
- package/types/ojiepermana-angular-component-popover.d.ts +94 -64
- package/types/ojiepermana-angular-component-progress.d.ts +45 -17
- package/types/ojiepermana-angular-component-radio.d.ts +129 -53
- package/types/ojiepermana-angular-component-resizable.d.ts +160 -112
- package/types/ojiepermana-angular-component-scroll-area.d.ts +33 -15
- package/types/ojiepermana-angular-component-segmented-control.d.ts +94 -50
- package/types/ojiepermana-angular-component-select.d.ts +94 -77
- package/types/ojiepermana-angular-component-separator.d.ts +26 -14
- package/types/ojiepermana-angular-component-sheet.d.ts +226 -116
- package/types/ojiepermana-angular-component-skeleton.d.ts +13 -10
- package/types/ojiepermana-angular-component-slider.d.ts +140 -75
- package/types/ojiepermana-angular-component-spinner.d.ts +31 -13
- package/types/ojiepermana-angular-component-switch.d.ts +97 -40
- package/types/ojiepermana-angular-component-table.d.ts +102 -50
- package/types/ojiepermana-angular-component-tabs.d.ts +174 -115
- package/types/ojiepermana-angular-component-textarea.d.ts +27 -17
- package/types/ojiepermana-angular-component-timeline.d.ts +141 -59
- package/types/ojiepermana-angular-component-toast.d.ts +51 -55
- package/types/ojiepermana-angular-component-toggle-group.d.ts +159 -88
- package/types/ojiepermana-angular-component-toggle.d.ts +47 -25
- package/types/ojiepermana-angular-component-tooltip.d.ts +222 -132
- package/types/ojiepermana-angular-component-utils-core.d.ts +81 -90
- package/types/ojiepermana-angular-component-utils-overlay.d.ts +7 -11
- package/types/ojiepermana-angular-component-utils-scale.d.ts +20 -12
- package/types/ojiepermana-angular-component-utils.d.ts +2 -2
- package/types/ojiepermana-angular-component.d.ts +1 -2
- package/types/ojiepermana-angular-navigation-core.d.ts +46 -50
- package/types/ojiepermana-angular-navigation-icon.d.ts +9 -12
- package/types/ojiepermana-angular-navigation-service.d.ts +112 -115
- package/types/ojiepermana-angular-navigation-types.d.ts +166 -125
- package/types/ojiepermana-angular-navigation.d.ts +708 -375
- package/types/ojiepermana-angular-sdk.d.ts +69 -71
- package/types/ojiepermana-angular-theme-component-settings.d.ts +120 -86
- package/types/ojiepermana-angular-theme-layout-services.d.ts +119 -124
- package/types/ojiepermana-angular-theme-layout-types.d.ts +27 -31
- package/types/ojiepermana-angular-theme-layout-wrapper.d.ts +446 -187
- package/types/ojiepermana-angular-theme-layout.d.ts +201 -113
- package/types/ojiepermana-angular-theme-page-core.d.ts +136 -142
- package/types/ojiepermana-angular-theme-page-filter.d.ts +112 -62
- package/types/ojiepermana-angular-theme-page-overview.d.ts +28 -0
- package/types/ojiepermana-angular-theme-page-root.d.ts +172 -88
- package/types/ojiepermana-angular-theme-page-side.d.ts +89 -49
- package/types/ojiepermana-angular-theme-page-slots.d.ts +58 -37
- package/types/ojiepermana-angular-theme-page.d.ts +7 -5
- package/types/ojiepermana-angular-theme-shell-services.d.ts +119 -125
- package/types/ojiepermana-angular-theme-shell-types.d.ts +38 -41
- package/types/ojiepermana-angular-theme-shell.d.ts +139 -61
- package/types/ojiepermana-angular-theme-styles.d.ts +184 -196
- package/types/ojiepermana-angular-theme.d.ts +1 -2
- package/types/ojiepermana-angular.d.ts +5 -5
- package/fesm2022/ojiepermana-angular-navigation-navigation-badge-count.component-Be3IqzG4.mjs +0 -91
- package/fesm2022/ojiepermana-angular-navigation-navigation-dockbar-menu.component-Bc7DWK3R.mjs +0 -522
- package/fesm2022/ojiepermana-angular-navigation-navigation-flyout-menu.component-DA8VPEn7.mjs +0 -404
- package/fesm2022/ojiepermana-angular-navigation-navigation-horizontal.component-U2TJTzlW.mjs +0 -466
- package/fesm2022/ojiepermana-angular-navigation-ojiepermana-angular-navigation-CIUhmytH.mjs +0 -2668
|
@@ -1,50 +1,46 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import * as _angular_core from '@angular/core';
|
|
5
|
-
import { scaleBand, scaleLinear } from 'd3-scale';
|
|
6
|
-
|
|
1
|
+
import { ChartDatum, ChartMargin, ChartOrientation, ChartPointClickEvent, ChartStyleVariant } from "@ojiepermana/angular/chart/core";
|
|
2
|
+
import { scaleBand, scaleLinear } from "d3-scale";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
7
4
|
/** Bar-chart layout variant. */
|
|
8
|
-
type BarVariant = 'grouped' | 'stacked';
|
|
5
|
+
export type BarVariant = 'grouped' | 'stacked';
|
|
9
6
|
/** A single bar rectangle ready to render. */
|
|
10
|
-
interface BarRect {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
7
|
+
export interface BarRect {
|
|
8
|
+
readonly key: string;
|
|
9
|
+
readonly seriesKey: string;
|
|
10
|
+
readonly datumIndex: number;
|
|
11
|
+
readonly category: string;
|
|
12
|
+
readonly value: number;
|
|
13
|
+
readonly x: number;
|
|
14
|
+
readonly y: number;
|
|
15
|
+
readonly width: number;
|
|
16
|
+
readonly height: number;
|
|
17
|
+
readonly color: string;
|
|
18
|
+
readonly active: boolean;
|
|
22
19
|
}
|
|
23
20
|
/** Inputs required to compute bar-chart geometry. */
|
|
24
|
-
interface BarLayoutInput {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
21
|
+
export interface BarLayoutInput {
|
|
22
|
+
readonly data: readonly ChartDatum[];
|
|
23
|
+
readonly xKey: string;
|
|
24
|
+
readonly seriesKeys: readonly string[];
|
|
25
|
+
readonly variant: BarVariant;
|
|
26
|
+
readonly orientation: ChartOrientation;
|
|
27
|
+
readonly innerWidth: number;
|
|
28
|
+
readonly innerHeight: number;
|
|
29
|
+
readonly bandPadding: number;
|
|
30
|
+
readonly groupPadding: number;
|
|
31
|
+
readonly colorKey?: string;
|
|
32
|
+
readonly activeKey?: string;
|
|
33
|
+
readonly activeValue?: string | number;
|
|
37
34
|
}
|
|
38
35
|
/** Computed layout: bars + scales. */
|
|
39
|
-
interface BarLayoutResult {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
36
|
+
export interface BarLayoutResult {
|
|
37
|
+
readonly bars: readonly BarRect[];
|
|
38
|
+
readonly categoryScale: ReturnType<typeof scaleBand<string>>;
|
|
39
|
+
readonly valueScale: ReturnType<typeof scaleLinear<number, number>>;
|
|
40
|
+
readonly categories: readonly string[];
|
|
44
41
|
}
|
|
45
42
|
/** Build all bar rectangles for the given config. */
|
|
46
|
-
declare function computeBarLayout(input: BarLayoutInput): BarLayoutResult;
|
|
47
|
-
|
|
43
|
+
export declare function computeBarLayout(input: BarLayoutInput): BarLayoutResult;
|
|
48
44
|
/**
|
|
49
45
|
* Styles supported by the bar family.
|
|
50
46
|
*
|
|
@@ -54,39 +50,39 @@ declare function computeBarLayout(input: BarLayoutInput): BarLayoutResult;
|
|
|
54
50
|
* theme CSS variables (`--color-<key>` per series, `--muted` for the track),
|
|
55
51
|
* so the style follows the active theme without touching the theme library.
|
|
56
52
|
*/
|
|
57
|
-
type BarChartStyle = ChartStyleVariant | 'dot';
|
|
53
|
+
export type BarChartStyle = ChartStyleVariant | 'dot';
|
|
58
54
|
/** A faint background cell of the dot-matrix track. */
|
|
59
|
-
interface BarDotTrackCell {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
55
|
+
export interface BarDotTrackCell {
|
|
56
|
+
readonly key: string;
|
|
57
|
+
readonly x: number;
|
|
58
|
+
readonly y: number;
|
|
59
|
+
readonly width: number;
|
|
60
|
+
readonly height: number;
|
|
65
61
|
}
|
|
66
62
|
/** A filled (value) cell of the dot-matrix style. */
|
|
67
|
-
interface BarDotValueCell extends BarDotTrackCell {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
63
|
+
export interface BarDotValueCell extends BarDotTrackCell {
|
|
64
|
+
readonly seriesKey: string;
|
|
65
|
+
readonly datumIndex: number;
|
|
66
|
+
readonly color: string;
|
|
67
|
+
readonly active: boolean;
|
|
72
68
|
}
|
|
73
69
|
/** Inputs required to compute the dot-matrix cell layout. */
|
|
74
|
-
interface BarDotLayoutInput {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
70
|
+
export interface BarDotLayoutInput {
|
|
71
|
+
readonly bars: readonly BarRect[];
|
|
72
|
+
readonly orientation: ChartOrientation;
|
|
73
|
+
readonly innerWidth: number;
|
|
74
|
+
readonly innerHeight: number;
|
|
75
|
+
/** Pixel position of value 0 on the value axis (`valueScale(0)`). */
|
|
76
|
+
readonly baseline: number;
|
|
77
|
+
/** Cell length along the value axis. Defaults to the bar thickness (square cells). */
|
|
78
|
+
readonly dotSize?: number;
|
|
79
|
+
/** Gap between consecutive cells along the value axis. */
|
|
80
|
+
readonly dotGap: number;
|
|
85
81
|
}
|
|
86
82
|
/** Computed dot-matrix layout: faint track cells + filled value cells. */
|
|
87
|
-
interface BarDotLayoutResult {
|
|
88
|
-
|
|
89
|
-
|
|
83
|
+
export interface BarDotLayoutResult {
|
|
84
|
+
readonly track: readonly BarDotTrackCell[];
|
|
85
|
+
readonly values: readonly BarDotValueCell[];
|
|
90
86
|
}
|
|
91
87
|
/**
|
|
92
88
|
* Build the dot-matrix cells for the `dot` bar style.
|
|
@@ -96,15 +92,14 @@ interface BarDotLayoutResult {
|
|
|
96
92
|
* whose center lies inside its value range; bars too short to cover a center
|
|
97
93
|
* still claim the cell nearest their midpoint when it is free.
|
|
98
94
|
*/
|
|
99
|
-
declare function computeBarDotCells(input: BarDotLayoutInput): BarDotLayoutResult;
|
|
100
|
-
|
|
95
|
+
export declare function computeBarDotCells(input: BarDotLayoutInput): BarDotLayoutResult;
|
|
101
96
|
/** Event emitted when a user clicks a bar. */
|
|
102
97
|
/**
|
|
103
98
|
* @deprecated Use `ChartPointClickEvent` from
|
|
104
99
|
* `@ojiepermana/angular/chart/core`. Kept so existing handlers keep compiling;
|
|
105
100
|
* the shape is identical.
|
|
106
101
|
*/
|
|
107
|
-
type BarClickEvent = ChartPointClickEvent;
|
|
102
|
+
export type BarClickEvent = ChartPointClickEvent;
|
|
108
103
|
/**
|
|
109
104
|
* Bar chart — composable within `<Chart>`.
|
|
110
105
|
*
|
|
@@ -113,89 +108,184 @@ type BarClickEvent = ChartPointClickEvent;
|
|
|
113
108
|
* - `variant`: `'grouped'` (default) or `'stacked'`
|
|
114
109
|
* - `styles`: `'base'` (default) or `'dot'` (dot-matrix cells)
|
|
115
110
|
*/
|
|
116
|
-
declare class BarChart {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
111
|
+
export declare class BarChart {
|
|
112
|
+
private readonly root;
|
|
113
|
+
private readonly cart;
|
|
114
|
+
private readonly themeRadius;
|
|
115
|
+
readonly data: import("@angular/core").InputSignal<readonly Readonly<Record<string, unknown>>[]>;
|
|
116
|
+
readonly xKey: import("@angular/core").InputSignal<string>;
|
|
117
|
+
readonly orientation: import("@angular/core").InputSignal<ChartOrientation>;
|
|
118
|
+
readonly variant: import("@angular/core").InputSignal<BarVariant>;
|
|
119
|
+
/**
|
|
120
|
+
* Presentational style of the chart.
|
|
121
|
+
*
|
|
122
|
+
* Replaces `styles`, which read like a CSS styles bag rather than a single
|
|
123
|
+
* variant. Named `styleVariant` and not `variant` because `ChartBar` already
|
|
124
|
+
* publishes a `variant` input for its grouped versus stacked axis, and one
|
|
125
|
+
* name cannot mean two things across the family.
|
|
126
|
+
*/
|
|
127
|
+
readonly styleVariant: import("@angular/core").InputSignal<BarChartStyle | undefined>;
|
|
128
|
+
/**
|
|
129
|
+
* @deprecated Use `styleVariant`. Still fully supported; when both are bound,
|
|
130
|
+
* `styleVariant` wins. Due for removal in the next major.
|
|
131
|
+
*/
|
|
132
|
+
readonly styles: import("@angular/core").InputSignal<BarChartStyle>;
|
|
133
|
+
/** The style actually in effect. Bind this, never `styles()`. */
|
|
134
|
+
protected readonly chartStyle: import("@angular/core").Signal<BarChartStyle>;
|
|
135
|
+
private readonly themeSpace;
|
|
136
|
+
/**
|
|
137
|
+
* Plot gutters. Leave it unset and they follow the theme-space density
|
|
138
|
+
* axis; set it and your numbers win, unchanged, whatever the axis says.
|
|
139
|
+
*/
|
|
140
|
+
readonly margin: import("@angular/core").InputSignal<ChartMargin | null>;
|
|
141
|
+
/** The margin actually in effect. Bind this, never `margin()`. */
|
|
142
|
+
protected readonly plotMargin: import("@angular/core").Signal<ChartMargin>;
|
|
143
|
+
readonly bandPadding: import("@angular/core").InputSignal<number>;
|
|
144
|
+
readonly groupPadding: import("@angular/core").InputSignal<number>;
|
|
145
|
+
readonly cornerRadius: import("@angular/core").InputSignal<number | null>;
|
|
146
|
+
readonly colorKey: import("@angular/core").InputSignal<string | undefined>;
|
|
147
|
+
readonly activeKey: import("@angular/core").InputSignal<string | undefined>;
|
|
148
|
+
readonly activeValue: import("@angular/core").InputSignal<string | number | undefined>;
|
|
149
|
+
readonly showValueLabels: import("@angular/core").InputSignal<boolean>;
|
|
150
|
+
readonly valueLabelFormat: import("@angular/core").InputSignal<(value: number) => string>;
|
|
151
|
+
/** Cell length along the value axis for the `dot` style; defaults to the bar thickness. */
|
|
152
|
+
readonly dotSize: import("@angular/core").InputSignal<number | undefined>;
|
|
153
|
+
/** Gap between consecutive cells along the value axis for the `dot` style. */
|
|
154
|
+
readonly dotGap: import("@angular/core").InputSignal<number>;
|
|
155
|
+
/** Corner radius of each `dot` cell. */
|
|
156
|
+
readonly dotCornerRadius: import("@angular/core").InputSignal<number | null>;
|
|
157
|
+
/** Render the faint full-height cell track behind the `dot` values. */
|
|
158
|
+
readonly showDotTrack: import("@angular/core").InputSignal<boolean>;
|
|
159
|
+
readonly barClick: import("@angular/core").OutputEmitterRef<BarClickEvent>;
|
|
160
|
+
/**
|
|
161
|
+
* The shared cartesian scaffolding: geometry, the layout effect, and the click
|
|
162
|
+
* plus active-point plus aria-label handlers. No `viewport` here, so the bar
|
|
163
|
+
* chart always renders its whole dataset and `resolveDatumIndex` is the
|
|
164
|
+
* identity.
|
|
165
|
+
*
|
|
166
|
+
* Declared before `layout` because the layout computed reads its geometry.
|
|
167
|
+
*/
|
|
168
|
+
protected readonly cx: import("@ojiepermana/angular/chart/core").CartesianChartSetup<BarRect>;
|
|
169
|
+
/** Bar corner radius; an unset input follows the live theme-radius axis. */
|
|
170
|
+
protected readonly resolvedCornerRadius: import("@angular/core").Signal<number>;
|
|
171
|
+
/** Dot-cell corner radius; an unset input follows the theme-radius axis (smaller, SVG clamps to half the cell). */
|
|
172
|
+
protected readonly resolvedDotCornerRadius: import("@angular/core").Signal<number>;
|
|
173
|
+
protected readonly layout: import("@angular/core").Signal<import("@ojiepermana/angular/chart/bar").BarLayoutResult>;
|
|
174
|
+
protected readonly bars: import("@angular/core").Signal<readonly BarRect[]>;
|
|
175
|
+
protected readonly dotLayout: import("@angular/core").Signal<BarDotLayoutResult | null>;
|
|
176
|
+
protected readonly dotTrackCells: import("@angular/core").Signal<readonly import("@ojiepermana/angular/chart/bar").BarDotTrackCell[]>;
|
|
177
|
+
protected readonly dotValueCells: import("@angular/core").Signal<readonly BarDotValueCell[]>;
|
|
178
|
+
protected readonly ariaSummary: import("@angular/core").Signal<string>;
|
|
179
|
+
protected readonly visibleSeriesKeys: import("@angular/core").Signal<readonly string[]>;
|
|
180
|
+
protected readonly dataColumns: import("@angular/core").Signal<string[]>;
|
|
181
|
+
protected barOpacity(bar: BarRect): number;
|
|
182
|
+
protected dotCellOpacity(cell: BarDotValueCell): number;
|
|
183
|
+
/** In `dot` style the bar rect stays as an invisible interaction target. */
|
|
184
|
+
protected barFill(bar: BarRect): string;
|
|
185
|
+
private emphasisOpacity;
|
|
186
|
+
protected formatValueLabel(bar: BarRect): string;
|
|
187
|
+
protected barLabelX(bar: BarRect): number;
|
|
188
|
+
protected barLabelY(bar: BarRect): number;
|
|
189
|
+
protected barLabelAnchor(bar: BarRect): 'middle' | 'start' | 'end';
|
|
190
|
+
protected onKeydown(event: KeyboardEvent, index: number): void;
|
|
191
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BarChart, never>;
|
|
192
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BarChart, "ChartBar", never, {
|
|
193
|
+
"data": {
|
|
194
|
+
"alias": "data";
|
|
195
|
+
"required": true;
|
|
196
|
+
"isSignal": true;
|
|
197
|
+
};
|
|
198
|
+
"xKey": {
|
|
199
|
+
"alias": "xKey";
|
|
200
|
+
"required": true;
|
|
201
|
+
"isSignal": true;
|
|
202
|
+
};
|
|
203
|
+
"orientation": {
|
|
204
|
+
"alias": "orientation";
|
|
205
|
+
"required": false;
|
|
206
|
+
"isSignal": true;
|
|
207
|
+
};
|
|
208
|
+
"variant": {
|
|
209
|
+
"alias": "variant";
|
|
210
|
+
"required": false;
|
|
211
|
+
"isSignal": true;
|
|
212
|
+
};
|
|
213
|
+
"styleVariant": {
|
|
214
|
+
"alias": "styleVariant";
|
|
215
|
+
"required": false;
|
|
216
|
+
"isSignal": true;
|
|
217
|
+
};
|
|
218
|
+
"styles": {
|
|
219
|
+
"alias": "styles";
|
|
220
|
+
"required": false;
|
|
221
|
+
"isSignal": true;
|
|
222
|
+
};
|
|
223
|
+
"margin": {
|
|
224
|
+
"alias": "margin";
|
|
225
|
+
"required": false;
|
|
226
|
+
"isSignal": true;
|
|
227
|
+
};
|
|
228
|
+
"bandPadding": {
|
|
229
|
+
"alias": "bandPadding";
|
|
230
|
+
"required": false;
|
|
231
|
+
"isSignal": true;
|
|
232
|
+
};
|
|
233
|
+
"groupPadding": {
|
|
234
|
+
"alias": "groupPadding";
|
|
235
|
+
"required": false;
|
|
236
|
+
"isSignal": true;
|
|
237
|
+
};
|
|
238
|
+
"cornerRadius": {
|
|
239
|
+
"alias": "cornerRadius";
|
|
240
|
+
"required": false;
|
|
241
|
+
"isSignal": true;
|
|
242
|
+
};
|
|
243
|
+
"colorKey": {
|
|
244
|
+
"alias": "colorKey";
|
|
245
|
+
"required": false;
|
|
246
|
+
"isSignal": true;
|
|
247
|
+
};
|
|
248
|
+
"activeKey": {
|
|
249
|
+
"alias": "activeKey";
|
|
250
|
+
"required": false;
|
|
251
|
+
"isSignal": true;
|
|
252
|
+
};
|
|
253
|
+
"activeValue": {
|
|
254
|
+
"alias": "activeValue";
|
|
255
|
+
"required": false;
|
|
256
|
+
"isSignal": true;
|
|
257
|
+
};
|
|
258
|
+
"showValueLabels": {
|
|
259
|
+
"alias": "showValueLabels";
|
|
260
|
+
"required": false;
|
|
261
|
+
"isSignal": true;
|
|
262
|
+
};
|
|
263
|
+
"valueLabelFormat": {
|
|
264
|
+
"alias": "valueLabelFormat";
|
|
265
|
+
"required": false;
|
|
266
|
+
"isSignal": true;
|
|
267
|
+
};
|
|
268
|
+
"dotSize": {
|
|
269
|
+
"alias": "dotSize";
|
|
270
|
+
"required": false;
|
|
271
|
+
"isSignal": true;
|
|
272
|
+
};
|
|
273
|
+
"dotGap": {
|
|
274
|
+
"alias": "dotGap";
|
|
275
|
+
"required": false;
|
|
276
|
+
"isSignal": true;
|
|
277
|
+
};
|
|
278
|
+
"dotCornerRadius": {
|
|
279
|
+
"alias": "dotCornerRadius";
|
|
280
|
+
"required": false;
|
|
281
|
+
"isSignal": true;
|
|
282
|
+
};
|
|
283
|
+
"showDotTrack": {
|
|
284
|
+
"alias": "showDotTrack";
|
|
285
|
+
"required": false;
|
|
286
|
+
"isSignal": true;
|
|
287
|
+
};
|
|
288
|
+
}, {
|
|
289
|
+
"barClick": "barClick";
|
|
290
|
+
}, never, ["svg\\:g[ChartGrid]", "svg\\:g[ChartAxisX]", "svg\\:g[ChartAxisY]", "svg\\:g[ChartCrosshair]", "*", "ChartTooltip", "ChartLegend"], true, never>;
|
|
291
|
+
}
|