@adaptabletools/adaptable 23.0.0-canary.7 → 23.0.0-canary.8
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/index.css +75 -9
- package/package.json +1 -1
- package/src/AdaptableState/StyledColumnState.d.ts +8 -850
- package/src/AdaptableState/StyledColumnState.js +1 -9
- package/src/AdaptableState/StyledColumns/BadgeStyle.d.ts +143 -0
- package/src/AdaptableState/StyledColumns/BadgeStyle.js +9 -0
- package/src/AdaptableState/StyledColumns/BulletChartStyle.d.ts +147 -0
- package/src/AdaptableState/StyledColumns/BulletChartStyle.js +1 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartCellText.d.ts +60 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartCellText.js +6 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartMarker.d.ts +24 -0
- package/src/AdaptableState/StyledColumns/Common/BarChartMarker.js +5 -0
- package/src/AdaptableState/StyledColumns/Common/CellTextOptions.d.ts +13 -0
- package/src/AdaptableState/StyledColumns/Common/CellTextOptions.js +6 -0
- package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.d.ts +79 -0
- package/src/AdaptableState/StyledColumns/Common/NumericStyledColumn.js +9 -0
- package/src/AdaptableState/StyledColumns/GradientStyle.d.ts +48 -0
- package/src/AdaptableState/StyledColumns/GradientStyle.js +1 -0
- package/src/AdaptableState/StyledColumns/IconStyle.d.ts +158 -0
- package/src/AdaptableState/StyledColumns/IconStyle.js +1 -0
- package/src/AdaptableState/StyledColumns/PercentBarStyle.d.ts +32 -0
- package/src/AdaptableState/StyledColumns/PercentBarStyle.js +1 -0
- package/src/AdaptableState/StyledColumns/RangeBarStyle.d.ts +155 -0
- package/src/AdaptableState/StyledColumns/RangeBarStyle.js +1 -0
- package/src/AdaptableState/StyledColumns/RatingStyle.d.ts +111 -0
- package/src/AdaptableState/StyledColumns/RatingStyle.js +1 -0
- package/src/AdaptableState/StyledColumns/SparklineStyle.d.ts +21 -0
- package/src/AdaptableState/StyledColumns/SparklineStyle.js +1 -0
- package/src/Api/ColumnScopeApi.d.ts +1 -1
- package/src/Api/Implementation/ColumnScopeApiImpl.d.ts +1 -1
- package/src/Api/Internal/StyledColumnInternalApi.d.ts +3 -1
- package/src/Utilities/Helpers/IconStylePresets.d.ts +1 -1
- package/src/Utilities/Helpers/StyledColumnGradientHelper.d.ts +3 -1
- package/src/Utilities/Helpers/barChartCellText.d.ts +63 -0
- package/src/Utilities/Helpers/barChartCellText.js +316 -0
- package/src/Utilities/Helpers/percentBarPreviewHelper.d.ts +2 -1
- package/src/Utilities/Helpers/percentBarPreviewHelper.js +3 -8
- package/src/View/Alert/Wizard/AlertButtonsEditor.js +159 -126
- package/src/View/Alert/Wizard/AlertNotificationWizardSection.js +1 -1
- package/src/View/Alert/Wizard/AlertWizard.js +9 -1
- package/src/View/Components/AdaptableObjectList/AdaptableObjectCompactList.js +3 -2
- package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +3 -2
- package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.d.ts +2 -0
- package/src/View/Components/AdaptableObjectList/objectListActionButtonStyles.js +2 -0
- package/src/View/Components/Buttons/EntityListActionButtons.js +1 -1
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.d.ts +1 -0
- package/src/View/Components/Buttons/SuspendToggleButton/SuspendToggleButton.js +8 -8
- package/src/View/Components/ColumnFilter/ColumnFilter.js +14 -1
- package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupModuleView.js +1 -1
- package/src/View/Components/RangesComponent.d.ts +2 -1
- package/src/View/Export/ExportSchedulesTab.js +3 -4
- package/src/View/Filter/FilterViewPanel.js +1 -1
- package/src/View/Layout/Wizard/sections/RowSummarySection.js +129 -103
- package/src/View/StyledColumn/Wizard/BadgePillStyleEditor.d.ts +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +36 -30
- package/src/View/StyledColumn/Wizard/StyledColumnSliceStyleEditors.d.ts +1 -3
- package/src/View/StyledColumn/Wizard/StyledColumnWizardBulletSection.js +73 -58
- package/src/View/StyledColumn/Wizard/StyledColumnWizardIconSection.js +38 -11
- package/src/View/StyledColumn/Wizard/StyledColumnWizardRangeBarSection.js +86 -44
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.d.ts +9 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextLayoutEditor.js +35 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextPreview.d.ts +23 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BarChartCellTextPreview.js +57 -0
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/BulletRangesSummaryPreview.d.ts +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/GradientSummaryPreview.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/RangeBarRangesSummaryPreview.d.ts +1 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +3 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBulletPreview.js +13 -17
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnChartListPreviews.js +5 -5
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnIconPreview.js +2 -2
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnPercentBarPreview.js +14 -7
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRangeBarPreview.js +11 -17
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnRatingPreview.d.ts +2 -1
- package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/StyledColumnWizardStyleSection.js +18 -54
- package/src/agGrid/AgGridColumnAdapter.js +2 -1
- package/src/agGrid/cellRenderers/BadgeRenderer.js +7 -5
- package/src/agGrid/cellRenderers/BulletChartRenderer.js +43 -42
- package/src/agGrid/cellRenderers/IconRenderer.d.ts +2 -1
- package/src/agGrid/cellRenderers/IconRenderer.js +13 -11
- package/src/agGrid/cellRenderers/PercentBarRenderer.js +24 -96
- package/src/agGrid/cellRenderers/RangeBarRenderer.js +49 -46
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +80 -14
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/VersionUpgrade23.d.ts +27 -31
- package/src/migration/VersionUpgrade23.js +110 -29
- package/src/types.d.ts +12 -1
- package/tsconfig.esm.tsbuildinfo +1 -1
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { AdaptableIcon } from '../Common/AdaptableIcon';
|
|
2
|
+
import { CellBoxStyle, CellFontStyle } from '../Common/AdaptableStyle';
|
|
3
|
+
/**
|
|
4
|
+
* Built-in mapping presets for Icons (Flags, Currencies, Trend, Status)
|
|
5
|
+
*/
|
|
6
|
+
export type IconStyleBuiltInPreset = 'Flags' | 'Currencies' | 'Trend' | 'Status';
|
|
7
|
+
/**
|
|
8
|
+
* How the cell value should be matched against {@link IconStyleMapping.Key}.
|
|
9
|
+
*
|
|
10
|
+
* - `'Exact'` (default) — strict `===` equality. Numbers, booleans and
|
|
11
|
+
* strings are matched as-is; useful when keys are tightly controlled.
|
|
12
|
+
* - `'CaseInsensitive'` — string keys are matched case-insensitively
|
|
13
|
+
* (cell value and key are both lowercased before comparison). Useful
|
|
14
|
+
* for free-typed columns where the same logical value can appear as
|
|
15
|
+
* `'GBP'` or `'gbp'`.
|
|
16
|
+
*/
|
|
17
|
+
export type IconStyleMatchMode = 'Exact' | 'CaseInsensitive';
|
|
18
|
+
/**
|
|
19
|
+
* Behaviour when the cell value does not match any mapping key.
|
|
20
|
+
*
|
|
21
|
+
* - `'Hide'` (default) — render nothing.
|
|
22
|
+
* - `'ShowText'` — render the raw cell value (so the cell still shows
|
|
23
|
+
* *something* meaningful instead of an empty cell).
|
|
24
|
+
* - `'Icon'` — render a fallback icon defined by
|
|
25
|
+
* {@link IconFallbackProperties.Icon}.
|
|
26
|
+
*/
|
|
27
|
+
export type IconStyleFallback = 'Hide' | 'ShowText' | 'Icon';
|
|
28
|
+
/**
|
|
29
|
+
* What the renderer draws for a single matched mapping.
|
|
30
|
+
*
|
|
31
|
+
* - An {@link AdaptableIcon} — a system icon (`{ name: 'flag' }`), a URL
|
|
32
|
+
* (`{ src: '/img/us.svg' }`) or an HTML element / fragment.
|
|
33
|
+
* - A plain `string` — rendered verbatim, intended for emoji glyphs
|
|
34
|
+
* (e.g. `'🇺🇸'`, `'$'`, `'⬆'`). Strings are *not* HTML-parsed so they
|
|
35
|
+
* are safe to author from data sources.
|
|
36
|
+
*/
|
|
37
|
+
export type IconStyleSpec = AdaptableIcon | string;
|
|
38
|
+
/**
|
|
39
|
+
* Fallback settings for {@link IconStyle} — what the renderer draws when
|
|
40
|
+
* no mapping matches the cell value (`Mode`), and the icon used when
|
|
41
|
+
* `Mode === 'Icon'` (`Icon`).
|
|
42
|
+
*/
|
|
43
|
+
export interface IconFallbackProperties {
|
|
44
|
+
/**
|
|
45
|
+
* Behaviour when no mapping matches the cell value (Hide, ShowText, Icon).
|
|
46
|
+
*
|
|
47
|
+
* @defaultValue `'Hide'`
|
|
48
|
+
*/
|
|
49
|
+
Mode?: IconStyleFallback;
|
|
50
|
+
/**
|
|
51
|
+
* Icon used when `Mode: 'Icon'` (ignored otherwise).
|
|
52
|
+
*/
|
|
53
|
+
Icon?: IconStyleSpec;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Companion text settings for {@link IconStyle} — what to render alongside
|
|
57
|
+
* a matched icon (`CellText`) and where it sits relative to the icon
|
|
58
|
+
* (`CellTextPosition`).
|
|
59
|
+
*/
|
|
60
|
+
export interface IconCellTextProperties {
|
|
61
|
+
/**
|
|
62
|
+
* Text to render alongside a matched icon (CellValue and/or the matched
|
|
63
|
+
* mapping's Description).
|
|
64
|
+
*/
|
|
65
|
+
CellText?: ('CellValue' | 'IconDescription')[];
|
|
66
|
+
/**
|
|
67
|
+
* Where the cell text sits relative to the icon (Before, After, Above, Below).
|
|
68
|
+
*
|
|
69
|
+
* @defaultValue `'After'`
|
|
70
|
+
*/
|
|
71
|
+
CellTextPosition?: 'Before' | 'After' | 'Above' | 'Below';
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* One mapping in an {@link IconStyle} — `Key` is matched against the
|
|
75
|
+
* cell's raw value, `Icon` is what gets drawn when it matches.
|
|
76
|
+
*/
|
|
77
|
+
export interface IconStyleMapping {
|
|
78
|
+
/**
|
|
79
|
+
* Cell value that triggers this mapping. Compared using the parent
|
|
80
|
+
* {@link IconStyle.MatchMode} (defaults to strict equality).
|
|
81
|
+
*
|
|
82
|
+
* Booleans and numbers are accepted to support typed columns (e.g.
|
|
83
|
+
* `Key: true` for an `isLive` flag, `Key: 0` for a status code).
|
|
84
|
+
*/
|
|
85
|
+
Key: string | number | boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Icon to render when `Key` matches the cell value.
|
|
88
|
+
*
|
|
89
|
+
* See {@link IconStyleSpec} — accepts an `AdaptableIcon` (system /
|
|
90
|
+
* URL / element) or a plain string for emoji.
|
|
91
|
+
*/
|
|
92
|
+
Icon: IconStyleSpec;
|
|
93
|
+
/**
|
|
94
|
+
* Optional human-readable description of this mapping (e.g. the full
|
|
95
|
+
* country name when `Key` is an ISO code). Surfaced in the tooltip and
|
|
96
|
+
* by the wizard's mappings list.
|
|
97
|
+
*/
|
|
98
|
+
Description?: string;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Renders cell values as icons by looking up the cell value in a list of key → icon mappings; designed for one-glyph-per-cell visual recognition
|
|
102
|
+
*/
|
|
103
|
+
export interface IconStyle {
|
|
104
|
+
/**
|
|
105
|
+
* Custom mappings for style (layered on top of a preset); leave undefined to use preset as-is
|
|
106
|
+
*/
|
|
107
|
+
Mappings?: IconStyleMapping[];
|
|
108
|
+
/**
|
|
109
|
+
* Built-in mappings to use for the Icon Style
|
|
110
|
+
*/
|
|
111
|
+
Preset?: IconStyleBuiltInPreset;
|
|
112
|
+
/**
|
|
113
|
+
* How `Key` is compared with the cell value (Exact or Case Insensitive)
|
|
114
|
+
*
|
|
115
|
+
* @defaultValue `'Exact'`
|
|
116
|
+
*/
|
|
117
|
+
MatchMode?: IconStyleMatchMode;
|
|
118
|
+
/**
|
|
119
|
+
* Behaviour when no mapping matches the cell value, plus the icon used
|
|
120
|
+
* by `Mode: 'Icon'`.
|
|
121
|
+
*
|
|
122
|
+
* Defaults to `{ Mode: 'Hide' }` when omitted.
|
|
123
|
+
*/
|
|
124
|
+
FallbackProperties?: IconFallbackProperties;
|
|
125
|
+
/**
|
|
126
|
+
* Companion text to render alongside a matched icon (Cell Value and/or
|
|
127
|
+
* the matched mapping's Description) and where it sits relative to the
|
|
128
|
+
* icon (Before / After / Above / Below).
|
|
129
|
+
*
|
|
130
|
+
* Mirrors the `CellTextProperties` grouping used by `PercentBarStyle`,
|
|
131
|
+
* `BulletChartStyle` and `RangeBarStyle` for consistency.
|
|
132
|
+
*/
|
|
133
|
+
CellTextProperties?: IconCellTextProperties;
|
|
134
|
+
/**
|
|
135
|
+
* Pixel size of icon glyph (square)
|
|
136
|
+
*
|
|
137
|
+
* @defaultValue `18`
|
|
138
|
+
*/
|
|
139
|
+
Size?: number;
|
|
140
|
+
/**
|
|
141
|
+
* Pixel gap between the icon and the cell text (when shown).
|
|
142
|
+
*
|
|
143
|
+
* @defaultValue `4`
|
|
144
|
+
*/
|
|
145
|
+
Gap?: number;
|
|
146
|
+
/**
|
|
147
|
+
* Tooltip content: `CellValue` (raw cell value) or `IconDescription` (matched mapping's `Description`)
|
|
148
|
+
*/
|
|
149
|
+
ToolTipText?: ('CellValue' | 'IconDescription')[];
|
|
150
|
+
/**
|
|
151
|
+
* Optional cell-text styling applied to the companion text
|
|
152
|
+
*/
|
|
153
|
+
Font?: CellFontStyle;
|
|
154
|
+
/**
|
|
155
|
+
* Optional stying (background / border / radius) for Cell behind the Icon
|
|
156
|
+
*/
|
|
157
|
+
Cell?: CellBoxStyle;
|
|
158
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { CellFontStyle } from '../Common/AdaptableStyle';
|
|
2
|
+
import { BarChartCellTextProperties } from './Common/BarChartCellText';
|
|
3
|
+
import { CellTextOptions } from './Common/CellTextOptions';
|
|
4
|
+
import { NumericStyledColumn } from './Common/NumericStyledColumn';
|
|
5
|
+
/**
|
|
6
|
+
* Style used to display Percent Bars in Special Column Style
|
|
7
|
+
*/
|
|
8
|
+
export interface PercentBarStyle extends NumericStyledColumn {
|
|
9
|
+
/**
|
|
10
|
+
* Optional cell-text overlay configuration (display tokens, position, layout, alignment).
|
|
11
|
+
*/
|
|
12
|
+
CellTextProperties?: BarChartCellTextProperties;
|
|
13
|
+
/**
|
|
14
|
+
* Whether Tooltip shows Cell Value, Percent Value, both or none
|
|
15
|
+
*/
|
|
16
|
+
ToolTipText?: CellTextOptions;
|
|
17
|
+
/**
|
|
18
|
+
* Background colour for 'Percent Bar'; leave unset if none required
|
|
19
|
+
* @defaultValue undefined
|
|
20
|
+
*/
|
|
21
|
+
BackColor?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Origin of the bar - i.e. the value the bar grows from Auto, Zero, Min or fixed number
|
|
24
|
+
*
|
|
25
|
+
* @defaultValue 'Auto'
|
|
26
|
+
*/
|
|
27
|
+
Origin?: 'Auto' | 'Zero' | 'Min' | number;
|
|
28
|
+
/**
|
|
29
|
+
* Optional cell-text styling applied to `CellText` overlay
|
|
30
|
+
*/
|
|
31
|
+
Font?: CellFontStyle;
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { BarChartCellTextProperties } from './Common/BarChartCellText';
|
|
2
|
+
import { BarChartMarker } from './Common/BarChartMarker';
|
|
3
|
+
import { CellTextOptions } from './Common/CellTextOptions';
|
|
4
|
+
import { DynamicRangeEndpoint, NumericStyledColumn } from './Common/NumericStyledColumn';
|
|
5
|
+
/**
|
|
6
|
+
* Resolvable value used by a Range Bar's `Min`, `Max` or `Reference.Value`.
|
|
7
|
+
*
|
|
8
|
+
* - `number` — a hard-coded value
|
|
9
|
+
* - `string` — a column id; the row's value in that column is used
|
|
10
|
+
* - `'Col-Min' | 'Col-Max' | 'Col-Avg' | 'Col-Median'` — a column-wide
|
|
11
|
+
* aggregate computed across visible rows
|
|
12
|
+
*/
|
|
13
|
+
export type RangeBarBound = number | string | DynamicRangeEndpoint;
|
|
14
|
+
/**
|
|
15
|
+
* Configures a Range Bar Styled Column.
|
|
16
|
+
*
|
|
17
|
+
* A Range Bar shows where a row's value sits inside a per-row (or
|
|
18
|
+
* column-wide) numeric range. The range endpoints (`Min` / `Max`) are
|
|
19
|
+
* resolved per row — they can be hard-coded numbers, the value of another
|
|
20
|
+
* column on the same row, or a column-wide aggregate (`Col-Min`, `Col-Max`,
|
|
21
|
+
* `Col-Avg`, `Col-Median`).
|
|
22
|
+
*
|
|
23
|
+
* Common scenarios:
|
|
24
|
+
* - Stock price relative to its 52-week low / 52-week high
|
|
25
|
+
* - Today's value relative to bid / ask quotes
|
|
26
|
+
* - Forecast within an upper / lower confidence interval
|
|
27
|
+
* - Measured value within an SLA `[lowerBound, upperBound]`
|
|
28
|
+
*
|
|
29
|
+
* Visually the cell renders as a thin track between `Min` and `Max`, with
|
|
30
|
+
* a marker at the cell value. An optional `Reference` value renders as a
|
|
31
|
+
* second marker (e.g. previous close, target, midpoint).
|
|
32
|
+
*
|
|
33
|
+
* Background bands (`CellRanges`) are drawn behind the track using the same
|
|
34
|
+
* conventions as Bullet Chart, and are useful for qualitative scales such
|
|
35
|
+
* as poor / acceptable / good (or red / amber / green SLA bands).
|
|
36
|
+
*/
|
|
37
|
+
export interface RangeBarStyle extends NumericStyledColumn {
|
|
38
|
+
/**
|
|
39
|
+
* Lower bound of the track for each row.
|
|
40
|
+
*
|
|
41
|
+
* Can be:
|
|
42
|
+
* - `number` — a fixed lower bound shared by every row
|
|
43
|
+
* - `string` — a column id; the row's value in that column is used
|
|
44
|
+
* - `'Col-Min' | 'Col-Max' | 'Col-Avg' | 'Col-Median'` — a column-wide
|
|
45
|
+
* aggregate computed across the visible rows
|
|
46
|
+
*/
|
|
47
|
+
Min: RangeBarBound;
|
|
48
|
+
/**
|
|
49
|
+
* Upper bound of the track for each row.
|
|
50
|
+
*
|
|
51
|
+
* See `Min` for the supported value forms.
|
|
52
|
+
*/
|
|
53
|
+
Max: RangeBarBound;
|
|
54
|
+
/**
|
|
55
|
+
* Optional reference value (e.g. previous close, target, midpoint) drawn
|
|
56
|
+
* as a *second* marker on the track, together with its marker styling.
|
|
57
|
+
* Leave unset to draw only the cell-value marker.
|
|
58
|
+
*/
|
|
59
|
+
Reference?: RangeBarReferenceProperties;
|
|
60
|
+
/**
|
|
61
|
+
* Visual style of the cell-value marker.
|
|
62
|
+
*
|
|
63
|
+
* @defaultValue `{ Shape: 'Diamond', Color: 'var(--ab-color-accent)', Size: 8 }`
|
|
64
|
+
*/
|
|
65
|
+
Marker?: BarChartMarker;
|
|
66
|
+
/**
|
|
67
|
+
* Behaviour when the cell value falls outside `[Min, Max]`, plus the
|
|
68
|
+
* optional marker colour override used by `Mode: 'Clamp'`.
|
|
69
|
+
*
|
|
70
|
+
* Defaults to `{ Mode: 'Clamp' }` when omitted.
|
|
71
|
+
*/
|
|
72
|
+
OutOfRange?: RangeBarOutOfRangeProperties;
|
|
73
|
+
/**
|
|
74
|
+
* Visual properties of the track (the line representing the `[Min, Max]`
|
|
75
|
+
* interval).
|
|
76
|
+
*/
|
|
77
|
+
Track?: RangeBarTrackProperties;
|
|
78
|
+
/**
|
|
79
|
+
* Background colour for the chart area when no `CellRanges` are supplied.
|
|
80
|
+
*/
|
|
81
|
+
BackColor?: string;
|
|
82
|
+
/**
|
|
83
|
+
* Orientation of the range bar.
|
|
84
|
+
*
|
|
85
|
+
* @defaultValue `'Horizontal'`
|
|
86
|
+
*/
|
|
87
|
+
Orientation?: 'Horizontal' | 'Vertical';
|
|
88
|
+
/**
|
|
89
|
+
* Optional cell-text overlay configuration.
|
|
90
|
+
*/
|
|
91
|
+
CellTextProperties?: BarChartCellTextProperties;
|
|
92
|
+
/**
|
|
93
|
+
* Tooltip content — same tokens (`'CellValue'`, `'PercentageValue'`)
|
|
94
|
+
* as Percent Bar / Bullet Chart.
|
|
95
|
+
*/
|
|
96
|
+
ToolTipText?: CellTextOptions;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Optional reference value drawn as a *second* marker on a Range Bar track,
|
|
100
|
+
* together with its marker styling.
|
|
101
|
+
*/
|
|
102
|
+
export interface RangeBarReferenceProperties {
|
|
103
|
+
/**
|
|
104
|
+
* Resolvable reference value (number / column id / `'Col-Min' | 'Col-Max'
|
|
105
|
+
* | 'Col-Avg' | 'Col-Median'`). Same forms as `RangeBarStyle.Min` / `Max`.
|
|
106
|
+
*/
|
|
107
|
+
Value: RangeBarBound;
|
|
108
|
+
/**
|
|
109
|
+
* Visual style of the reference marker.
|
|
110
|
+
*
|
|
111
|
+
* @defaultValue `{ Shape: 'Line', Color: 'var(--ab-color-foreground)', Size: 2 }`
|
|
112
|
+
*/
|
|
113
|
+
Marker?: BarChartMarker;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Out-of-range behaviour for a Range Bar.
|
|
117
|
+
*/
|
|
118
|
+
export interface RangeBarOutOfRangeProperties {
|
|
119
|
+
/**
|
|
120
|
+
* Behaviour when the cell value falls outside `[Min, Max]`.
|
|
121
|
+
*
|
|
122
|
+
* - `'Clamp'` (default) — clamp the marker to the nearest end of the
|
|
123
|
+
* track and (optionally) re-colour it via `Color`
|
|
124
|
+
* - `'Overflow'` — draw the marker outside the track at its true position
|
|
125
|
+
* - `'Hide'` — omit the cell-value marker entirely
|
|
126
|
+
*
|
|
127
|
+
* @defaultValue `'Clamp'`
|
|
128
|
+
*/
|
|
129
|
+
Mode?: 'Clamp' | 'Overflow' | 'Hide';
|
|
130
|
+
/**
|
|
131
|
+
* Marker colour override applied when the cell value is out of range
|
|
132
|
+
* (only used with `Mode: 'Clamp'`). Useful to draw attention to
|
|
133
|
+
* "off-scale" rows.
|
|
134
|
+
*/
|
|
135
|
+
Color?: string;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Visual properties of the Range Bar track (the line representing the
|
|
139
|
+
* `[Min, Max]` interval).
|
|
140
|
+
*/
|
|
141
|
+
export interface RangeBarTrackProperties {
|
|
142
|
+
/**
|
|
143
|
+
* Track colour.
|
|
144
|
+
*
|
|
145
|
+
* @defaultValue 'var(--ab-color-foreground, #999)' at low alpha
|
|
146
|
+
*/
|
|
147
|
+
Color?: string;
|
|
148
|
+
/**
|
|
149
|
+
* Track thickness in px (the *short* axis — height in horizontal,
|
|
150
|
+
* width in vertical).
|
|
151
|
+
*
|
|
152
|
+
* @defaultValue 4
|
|
153
|
+
*/
|
|
154
|
+
Height?: number;
|
|
155
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { CellBoxStyle } from '../Common/AdaptableStyle';
|
|
2
|
+
import { CellTextOptions } from './Common/CellTextOptions';
|
|
3
|
+
/**
|
|
4
|
+
* Icon used by a Rating Style
|
|
5
|
+
*/
|
|
6
|
+
export type RatingIconShape = 'Star' | 'Heart' | 'Circle' | 'Thumb';
|
|
7
|
+
/**
|
|
8
|
+
* Styles a numeric column as a row of icons whose fill represents the
|
|
9
|
+
* cell value on a 0..`Max` scale.
|
|
10
|
+
*
|
|
11
|
+
* Conceptually similar to a Percent Bar but with a discrete, instantly
|
|
12
|
+
* legible visual idiom (★★★☆☆) commonly used for ratings, satisfaction
|
|
13
|
+
* scores and review-style cells.
|
|
14
|
+
*
|
|
15
|
+
* The cell value is clamped to `[0, Max]`. When `AllowHalf` is true (the
|
|
16
|
+
* default) the icon at the boundary is rendered with a partial fill that
|
|
17
|
+
* matches the fractional part of the value; otherwise the value is
|
|
18
|
+
* rounded to the nearest whole icon.
|
|
19
|
+
*/
|
|
20
|
+
export interface RatingStyle {
|
|
21
|
+
/**
|
|
22
|
+
* Number of icons per cell **and** the upper bound of the rating scale,
|
|
23
|
+
* in the **same numeric units as the cell value**.
|
|
24
|
+
*
|
|
25
|
+
* The renderer clamps the cell value to `[0, Max]` and maps that number
|
|
26
|
+
* directly to filled icons (e.g. `Max: 5` and value `4` → four units of
|
|
27
|
+
* fill across five icons — roughly four stars, not “4 out of 10 scaled
|
|
28
|
+
* to five stars”). Values above `Max` show as fully filled; values below
|
|
29
|
+
* `0` show as empty.
|
|
30
|
+
*
|
|
31
|
+
* To show a 1–10 score as five stars, use a calculated column (e.g.
|
|
32
|
+
* `value / 2`) or set `Max` to match your data range (e.g. `Max: 10`
|
|
33
|
+
* for ten icons), unless a future `ScaleMin` / `ScaleMax` option is added.
|
|
34
|
+
*
|
|
35
|
+
* @defaultValue 5
|
|
36
|
+
*/
|
|
37
|
+
Max?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Icon used for each rating mark.
|
|
40
|
+
*
|
|
41
|
+
* @defaultValue 'Star'
|
|
42
|
+
*/
|
|
43
|
+
Icon?: RatingIconShape;
|
|
44
|
+
/**
|
|
45
|
+
* Fill colour for the active (filled) portion of the rating.
|
|
46
|
+
*
|
|
47
|
+
* @defaultValue 'var(--ab-color-warn, #f5a623)' — a warm amber that
|
|
48
|
+
* reads well on both light and dark themes.
|
|
49
|
+
*/
|
|
50
|
+
FilledColor?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Outline / fill colour for the inactive portion of the rating.
|
|
53
|
+
*
|
|
54
|
+
* Drawn as a subtle background icon so the user can see the maximum
|
|
55
|
+
* possible rating at a glance even when the cell value is low.
|
|
56
|
+
*
|
|
57
|
+
* @defaultValue a low-opacity tint of the current text colour.
|
|
58
|
+
*/
|
|
59
|
+
EmptyColor?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Icon size in pixels (each icon is square). The renderer keeps the
|
|
62
|
+
* row of icons vertically centred regardless of cell height.
|
|
63
|
+
*
|
|
64
|
+
* @defaultValue 14
|
|
65
|
+
*/
|
|
66
|
+
Size?: number;
|
|
67
|
+
/**
|
|
68
|
+
* Pixel gap between adjacent icons.
|
|
69
|
+
*
|
|
70
|
+
* @defaultValue 2
|
|
71
|
+
*/
|
|
72
|
+
Gap?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Controls **partial icons** for fractional values after clamping to
|
|
75
|
+
* `[0, Max]` — not scaling between different ranges (e.g. 10-point vs
|
|
76
|
+
* 5-star).
|
|
77
|
+
*
|
|
78
|
+
* When `true`, the decimal part fills part of the next icon (e.g. `3.5`
|
|
79
|
+
* with `Max: 5` → three full icons + one half-filled + one empty).
|
|
80
|
+
* When `false`, the clamped value is rounded with `Math.round` before
|
|
81
|
+
* drawing, so only whole icons appear.
|
|
82
|
+
*
|
|
83
|
+
* @defaultValue true
|
|
84
|
+
*/
|
|
85
|
+
AllowHalf?: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* When `true`, the numeric cell value is also displayed alongside the
|
|
88
|
+
* icons (e.g. `★★★★☆ 4.2`). Useful when precise scores matter beyond
|
|
89
|
+
* the visual approximation.
|
|
90
|
+
*
|
|
91
|
+
* @defaultValue false
|
|
92
|
+
*/
|
|
93
|
+
ShowValue?: boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Optional AG Grid tooltip content — `CellValue` and/or `PercentageValue`.
|
|
96
|
+
* `PercentageValue` is the clamped cell value as a percent of `Max`
|
|
97
|
+
* (`clamp(value, 0, Max) / Max`, same scale as the icon fill).
|
|
98
|
+
*/
|
|
99
|
+
ToolTipText?: CellTextOptions;
|
|
100
|
+
/**
|
|
101
|
+
* Optional cell box styling (background colour, border, border radius)
|
|
102
|
+
* applied to the cell behind the rating icons.
|
|
103
|
+
*
|
|
104
|
+
* When set, this property "claims" the Cell slice for the column: any
|
|
105
|
+
* Format Column matching this column has its Cell-box properties stripped
|
|
106
|
+
* (so a Format Column `BackColor` cannot tint the cell behind a Rating).
|
|
107
|
+
* When unset, Format Column Cell properties inherit through normally —
|
|
108
|
+
* useful for tinting a row of stars to match a Format Column theme.
|
|
109
|
+
*/
|
|
110
|
+
Cell?: CellBoxStyle;
|
|
111
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AgSparklineOptions } from 'ag-charts-types';
|
|
2
|
+
import { CellBoxStyle } from '../Common/AdaptableStyle';
|
|
3
|
+
/**
|
|
4
|
+
* Style to show for a Sparkline Column
|
|
5
|
+
*/
|
|
6
|
+
export interface SparklineStyle {
|
|
7
|
+
/**
|
|
8
|
+
* AG Grid Sparkline Options
|
|
9
|
+
*/
|
|
10
|
+
options?: AgSparklineOptions;
|
|
11
|
+
/**
|
|
12
|
+
* Optional cell box styling applied to the cell behind the sparkline chart.
|
|
13
|
+
*
|
|
14
|
+
* When set, this property "claims" the Cell slice for the column: any
|
|
15
|
+
* Format Column matching this column has its Cell-box properties stripped.
|
|
16
|
+
* When unset, Format Column Cell properties inherit through normally —
|
|
17
|
+
* useful for letting a row's themed background show through behind the
|
|
18
|
+
* sparkline.
|
|
19
|
+
*/
|
|
20
|
+
Cell?: CellBoxStyle;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AdaptableColumn } from '../AdaptableState/Common/AdaptableColumn';
|
|
2
2
|
import { ColumnScope, ScopeDataType } from '../AdaptableState/Common/ColumnScope';
|
|
3
|
-
import { CellColorRange } from '../AdaptableState/
|
|
3
|
+
import { CellColorRange } from '../AdaptableState/StyledColumns/Common/NumericStyledColumn';
|
|
4
4
|
/**
|
|
5
5
|
* Provides access to a suite of functions related to the `Column Scope` object
|
|
6
6
|
*/
|
|
@@ -2,7 +2,7 @@ import { ApiBase } from './ApiBase';
|
|
|
2
2
|
import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
|
|
3
3
|
import { ColumnScope, ScopeDataType } from '../../AdaptableState/Common/ColumnScope';
|
|
4
4
|
import { ColumnScopeApi } from '../ColumnScopeApi';
|
|
5
|
-
import { CellColorRange } from '../../AdaptableState/
|
|
5
|
+
import { CellColorRange } from '../../AdaptableState/StyledColumns/Common/NumericStyledColumn';
|
|
6
6
|
export declare class ColumnScopeApiImpl extends ApiBase implements ColumnScopeApi {
|
|
7
7
|
isColumnInScope(column: AdaptableColumn | undefined, scope: ColumnScope | undefined): boolean;
|
|
8
8
|
getColumnsInScope(scope: ColumnScope): AdaptableColumn[];
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ApiBase } from '../Implementation/ApiBase';
|
|
2
2
|
import { AdaptableColumn } from '../../AdaptableState/Common/AdaptableColumn';
|
|
3
|
-
import {
|
|
3
|
+
import { StyledColumn } from '../../AdaptableState/StyledColumnState';
|
|
4
|
+
import { CellColorRange, ColumnComparison, NumericStyledColumn } from '../../AdaptableState/StyledColumns/Common/NumericStyledColumn';
|
|
5
|
+
import { BadgeStyle, BadgeStyleDefinition } from '../../AdaptableState/StyledColumns/BadgeStyle';
|
|
4
6
|
import { IRowNode } from 'ag-grid-enterprise';
|
|
5
7
|
import { PredicateDefHandlerContext } from '../../types';
|
|
6
8
|
export declare class StyledColumnInternalApi extends ApiBase {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IconStyleBuiltInPreset, IconStyleMapping } from '../../AdaptableState/
|
|
1
|
+
import { IconStyleBuiltInPreset, IconStyleMapping } from '../../AdaptableState/StyledColumns/IconStyle';
|
|
2
2
|
export declare const ICON_STYLE_PRESETS: Record<IconStyleBuiltInPreset, IconStyleMapping[]>;
|
|
3
3
|
/** Returns a fresh copy of the mappings for a given preset. */
|
|
4
4
|
export declare const getIconStylePresetMappings: (preset: IconStyleBuiltInPreset) => IconStyleMapping[];
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { CSSProperties } from 'react';
|
|
2
2
|
import type { IRowNode } from 'ag-grid-community';
|
|
3
|
-
import {
|
|
3
|
+
import { StyledColumn } from '../../AdaptableState/StyledColumnState';
|
|
4
|
+
import { CellColorRange, NumericStyledColumn } from '../../AdaptableState/StyledColumns/Common/NumericStyledColumn';
|
|
5
|
+
import { GradientStyle } from '../../AdaptableState/StyledColumns/GradientStyle';
|
|
4
6
|
import { AdaptableApi } from '../../Api/AdaptableApi';
|
|
5
7
|
/**
|
|
6
8
|
* Default alpha at the **low** end of a Gradient range when `MinAlpha` is unset.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { BarChartCellTextHorizontalAlignment, BarChartCellTextLayout, BarChartCellTextPlacement, BarChartCellTextProperties, BarChartCellTextVerticalAlignment } from '../../AdaptableState/StyledColumns/Common/BarChartCellText';
|
|
2
|
+
import { CellTextOption, CellTextOptions } from '../../AdaptableState/StyledColumns/Common/CellTextOptions';
|
|
3
|
+
export type BarChartCellTextLabels = {
|
|
4
|
+
cellValue?: string;
|
|
5
|
+
percentage?: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const resolveBarChartCellTextLayout: (props: BarChartCellTextProperties | undefined) => BarChartCellTextLayout;
|
|
8
|
+
/** True when any value is configured for display. */
|
|
9
|
+
export declare const hasBarChartCellTextConfigured: (props: BarChartCellTextProperties | undefined) => boolean;
|
|
10
|
+
/** Set of value tokens that currently have a placement. */
|
|
11
|
+
export declare const getActiveBarChartCellTextTokens: (props: BarChartCellTextProperties | undefined) => CellTextOptions;
|
|
12
|
+
export declare const mergeBarChartCellTextProperties: (current: BarChartCellTextProperties | undefined, patch: Partial<BarChartCellTextProperties>) => BarChartCellTextProperties | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Set or clear a value's placement. Passing `placement: undefined` removes the value.
|
|
15
|
+
*/
|
|
16
|
+
export declare const setBarChartCellTextPlacement: (current: BarChartCellTextProperties | undefined, token: CellTextOption, placement: BarChartCellTextPlacement | undefined) => BarChartCellTextProperties | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Patch a single axis of a value's placement (creating the value with defaults if
|
|
19
|
+
* needed). Used by the wizard's placement pickers.
|
|
20
|
+
*/
|
|
21
|
+
export declare const patchBarChartCellTextPlacement: (current: BarChartCellTextProperties | undefined, token: CellTextOption, patch: Partial<BarChartCellTextPlacement>) => BarChartCellTextProperties | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Toggle whether a value is displayed. When turning on a previously-hidden
|
|
24
|
+
* value we use the default placement (Left / Below).
|
|
25
|
+
*/
|
|
26
|
+
export declare const toggleBarChartCellTextToken: (current: BarChartCellTextProperties | undefined, token: CellTextOption, show: boolean) => {
|
|
27
|
+
CellTextProperties: BarChartCellTextProperties | undefined;
|
|
28
|
+
};
|
|
29
|
+
export declare const buildBarChartCellTextLabels: (props: BarChartCellTextProperties | undefined, cellValueLabel: string | undefined, percentageLabel: string | undefined) => BarChartCellTextLabels;
|
|
30
|
+
export declare const hasBarChartCellTextLabels: (labels: BarChartCellTextLabels) => boolean;
|
|
31
|
+
/** Join active labels with a space, Cell Value first then Percent Value. */
|
|
32
|
+
export declare const joinBarChartCellTextLabels: (labels: BarChartCellTextLabels) => string;
|
|
33
|
+
export type BarChartCellTextSlotEntry = {
|
|
34
|
+
vertical: BarChartCellTextVerticalAlignment;
|
|
35
|
+
horizontal: BarChartCellTextHorizontalAlignment;
|
|
36
|
+
/** Labels in render order (Cell Value first, then Percent Value). */
|
|
37
|
+
parts: string[];
|
|
38
|
+
/** The joined text, ready to render. */
|
|
39
|
+
text: string;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Resolve which placements are populated and what text goes in each cell of
|
|
43
|
+
* the 3 × 3 grid. Empty slots are omitted. Two values landing on the same
|
|
44
|
+
* (vertical, horizontal) slot are concatenated with a single space, Cell
|
|
45
|
+
* Value before Percent Value.
|
|
46
|
+
*/
|
|
47
|
+
export declare const resolveBarChartCellTextSlots: (props: BarChartCellTextProperties | undefined, labels: BarChartCellTextLabels) => BarChartCellTextSlotEntry[];
|
|
48
|
+
export type BarChartCellTextSlotPresence = {
|
|
49
|
+
hasAbove: boolean;
|
|
50
|
+
hasBelow: boolean;
|
|
51
|
+
hasMerged: boolean;
|
|
52
|
+
};
|
|
53
|
+
export declare const getBarChartCellTextSlotPresence: (props: BarChartCellTextProperties | undefined) => BarChartCellTextSlotPresence;
|
|
54
|
+
export declare const formatBarChartCellTextLayoutSummary: (layout: BarChartCellTextLayout) => string | undefined;
|
|
55
|
+
export type MountBarChartCellTextArgs = {
|
|
56
|
+
wrapperEl: HTMLElement;
|
|
57
|
+
mergedOverlayEl?: HTMLElement;
|
|
58
|
+
textClassName: string;
|
|
59
|
+
cellTextProperties?: BarChartCellTextProperties;
|
|
60
|
+
labels: BarChartCellTextLabels;
|
|
61
|
+
mergedPointerEventsNone?: boolean;
|
|
62
|
+
};
|
|
63
|
+
export declare const mountBarChartCellText: (args: MountBarChartCellTextArgs) => void;
|