@juspay/blend-design-system 0.0.31-beta → 0.0.32-beta
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/dist/components/Charts/BlendChart.d.ts +3 -0
- package/dist/components/Charts/BlendChart.types.d.ts +28 -0
- package/dist/components/Charts/BlendChartContainer.d.ts +6 -0
- package/dist/components/Charts/BlendChartHeader.d.ts +6 -0
- package/dist/components/Charts/index.d.ts +4 -0
- package/dist/components/Charts/renderChart.d.ts +1 -1
- package/dist/components/Charts/types.d.ts +63 -6
- package/dist/components/Charts/utils.d.ts +4 -1
- package/dist/components/ChatInput/AttachmentFile.d.ts +11 -0
- package/dist/components/ChatInput/MobileChatInput.d.ts +14 -0
- package/dist/components/ChatInput/chatInput.tokens.d.ts +46 -0
- package/dist/components/ChatInput/utils.d.ts +5 -0
- package/dist/components/DataTable/DataTablePagination.d.ts +2 -1
- package/dist/components/DataTable/TableFooter/types.d.ts +1 -0
- package/dist/components/DataTable/TableHeader/FilterComponents.d.ts +1 -0
- package/dist/components/DataTable/TableHeader/handlers.d.ts +5 -4
- package/dist/components/DataTable/TableHeader/types.d.ts +3 -3
- package/dist/components/DataTable/types.d.ts +41 -0
- package/dist/components/Directory/Directory.d.ts +1 -1
- package/dist/components/Directory/NavItem.d.ts +1 -1
- package/dist/components/Directory/Section.d.ts +1 -1
- package/dist/components/Directory/types.d.ts +3 -0
- package/dist/components/Drawer/types.d.ts +5 -0
- package/dist/components/Inputs/NumberInput/utils.d.ts +81 -1
- package/dist/components/Inputs/TextArea/textarea.token.d.ts +4 -0
- package/dist/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/dist/components/MultiSelect/types.d.ts +2 -0
- package/dist/components/Primitives/PrimitiveTextArea.d.ts +80 -1
- package/dist/components/Sidebar/SidebarHeader.d.ts +1 -0
- package/dist/components/Sidebar/sidebar.tokens.d.ts +1 -0
- package/dist/components/Sidebar/types.d.ts +19 -0
- package/dist/components/Sidebar/utils.d.ts +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/Tooltip/types.d.ts +1 -0
- package/dist/components/VirtualList/VirtualList.d.ts +0 -4
- package/dist/components/common/TruncatedTextWithTooltip.d.ts +14 -0
- package/dist/components/common/index.d.ts +1 -0
- package/dist/context/ThemeContext.d.ts +2 -0
- package/dist/context/useComponentToken.d.ts +2 -1
- package/dist/main.js +47679 -40813
- package/dist/tokens/unit.tokens.d.ts +1 -0
- package/package.json +3 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { BlendChartProps } from './BlendChart.types';
|
|
2
|
+
declare const BlendChart: import('react').ForwardRefExoticComponent<Omit<BlendChartProps, "ref"> & import('react').RefAttributes<import('highcharts-react-official').HighchartsReactRefObject>>;
|
|
3
|
+
export default BlendChart;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { HighchartsReactProps, HighchartsReactRefObject } from 'highcharts-react-official';
|
|
2
|
+
import { default as Highcharts } from 'highcharts';
|
|
3
|
+
export declare const BlendChartBaseInstance: typeof Highcharts;
|
|
4
|
+
export type BlendChartType = typeof Highcharts;
|
|
5
|
+
export type BlendChartReactProps = HighchartsReactProps;
|
|
6
|
+
export type BlendChartProps = BlendChartReactProps & {
|
|
7
|
+
highcharts?: BlendChartType;
|
|
8
|
+
};
|
|
9
|
+
export type BlendChartOptions = Highcharts.Options;
|
|
10
|
+
export type BlendChartSeriesOptionsType = Highcharts.SeriesOptionsType;
|
|
11
|
+
export type BlendChartSeriesLineOptions = Highcharts.SeriesLineOptions;
|
|
12
|
+
export type BlendChartSeriesAreaOptions = Highcharts.SeriesAreaOptions;
|
|
13
|
+
export type BlendChartSeriesXrangeOptions = Highcharts.SeriesXrangeOptions;
|
|
14
|
+
export type BlendChartPoint = Highcharts.Point;
|
|
15
|
+
export type BlendChartPointMarkerOptionsObject = Highcharts.PointMarkerOptionsObject;
|
|
16
|
+
export type BlendChartXAxisOptions = Highcharts.XAxisOptions;
|
|
17
|
+
export type BlendChartYAxisOptions = Highcharts.YAxisOptions;
|
|
18
|
+
export type BlendChartChart = Highcharts.Chart;
|
|
19
|
+
export type BlendChartAxis = Highcharts.Axis;
|
|
20
|
+
export type BlendChartSeries = Highcharts.Series;
|
|
21
|
+
export type BlendChartSeriesZonesOptionsObject = Highcharts.SeriesZonesOptionsObject;
|
|
22
|
+
export type BlendChartReactRefObject = HighchartsReactRefObject;
|
|
23
|
+
export interface BlendChartContainerProps {
|
|
24
|
+
children: React.ReactNode;
|
|
25
|
+
}
|
|
26
|
+
export interface BlendChartHeaderProps {
|
|
27
|
+
children: React.ReactNode;
|
|
28
|
+
}
|
|
@@ -5,4 +5,8 @@ export { default as ChartHeader } from './ChartHeader';
|
|
|
5
5
|
export { default as ChartLegends } from './ChartLegend';
|
|
6
6
|
export { default as SankeyNode } from './SankeyNode';
|
|
7
7
|
export { default as SankeyLink } from './SankeyLink';
|
|
8
|
+
export { default as BlendChart } from './BlendChart';
|
|
9
|
+
export { default as BlendChartContainer } from './BlendChartContainer';
|
|
10
|
+
export { default as BlendChartHeader } from './BlendChartHeader';
|
|
8
11
|
export * from './types';
|
|
12
|
+
export * from './BlendChart.types';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { RenderChartProps } from './types';
|
|
2
|
-
export declare const renderChart: ({ chartName, flattenedData, chartType, hoveredKey, lineKeys, colors, setHoveredKey, data: originalData, selectedKeys, isSmallScreen, barsize, xAxis, yAxis, noData, height, }: RenderChartProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
export declare const renderChart: ({ chartName, flattenedData, chartType, hoveredKey, lineKeys, colors, setHoveredKey, data: originalData, selectedKeys, isSmallScreen, barsize, xAxis, yAxis, tooltip, noData, height, CustomizedDot, }: RenderChartProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -17,6 +17,13 @@ export type DataPoint = {
|
|
|
17
17
|
timeZone?: string;
|
|
18
18
|
hour12?: boolean;
|
|
19
19
|
}[];
|
|
20
|
+
error?: {
|
|
21
|
+
title: string;
|
|
22
|
+
errorData?: {
|
|
23
|
+
label: string;
|
|
24
|
+
value: string;
|
|
25
|
+
}[];
|
|
26
|
+
};
|
|
20
27
|
};
|
|
21
28
|
export declare enum ChartLegendPosition {
|
|
22
29
|
TOP = "top",
|
|
@@ -27,6 +34,7 @@ export declare enum ChartType {
|
|
|
27
34
|
BAR = "bar",
|
|
28
35
|
PIE = "pie",
|
|
29
36
|
SCATTER = "scatter",
|
|
37
|
+
AREA = "area",
|
|
30
38
|
SANKEY = "sankey"
|
|
31
39
|
}
|
|
32
40
|
export declare enum LegendsChangeType {
|
|
@@ -80,6 +88,24 @@ export type AxisConfig = {
|
|
|
80
88
|
};
|
|
81
89
|
export type XAxisConfig = AxisConfig;
|
|
82
90
|
export type YAxisConfig = AxisConfig;
|
|
91
|
+
export type TooltipConfig = {
|
|
92
|
+
position?: {
|
|
93
|
+
x?: number;
|
|
94
|
+
y?: number;
|
|
95
|
+
};
|
|
96
|
+
allowEscapeViewBox?: {
|
|
97
|
+
x?: boolean;
|
|
98
|
+
y?: boolean;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
export type DotItemDotProps = {
|
|
102
|
+
cx?: number;
|
|
103
|
+
cy?: number;
|
|
104
|
+
value?: number;
|
|
105
|
+
payload?: {
|
|
106
|
+
name?: string;
|
|
107
|
+
};
|
|
108
|
+
};
|
|
83
109
|
export type NewNestedDataPoint = {
|
|
84
110
|
name: string;
|
|
85
111
|
data: {
|
|
@@ -97,7 +123,10 @@ export type RenderChartProps = {
|
|
|
97
123
|
chartType: ChartType;
|
|
98
124
|
hoveredKey: string | null;
|
|
99
125
|
lineKeys: string[];
|
|
100
|
-
colors:
|
|
126
|
+
colors: {
|
|
127
|
+
key: string;
|
|
128
|
+
color: string;
|
|
129
|
+
}[];
|
|
101
130
|
setHoveredKey: (key: string | null) => void;
|
|
102
131
|
data: NewNestedDataPoint[];
|
|
103
132
|
selectedKeys: string[];
|
|
@@ -105,16 +134,22 @@ export type RenderChartProps = {
|
|
|
105
134
|
barsize?: number;
|
|
106
135
|
xAxis?: XAxisConfig;
|
|
107
136
|
yAxis?: YAxisConfig;
|
|
137
|
+
tooltip?: TooltipConfig;
|
|
108
138
|
noData?: NoDataProps;
|
|
109
139
|
height?: number | string;
|
|
140
|
+
CustomizedDot?: (props: DotItemDotProps) => React.ReactElement<SVGElement>;
|
|
110
141
|
};
|
|
111
142
|
export type CoreChartProps = {
|
|
112
143
|
chartType?: ChartType;
|
|
113
144
|
data: NewNestedDataPoint[];
|
|
114
|
-
colors?:
|
|
145
|
+
colors?: {
|
|
146
|
+
key: string;
|
|
147
|
+
color: string;
|
|
148
|
+
}[];
|
|
115
149
|
barsize?: number;
|
|
116
150
|
xAxis?: XAxisConfig;
|
|
117
151
|
yAxis?: YAxisConfig;
|
|
152
|
+
tooltip?: TooltipConfig;
|
|
118
153
|
height?: number | string;
|
|
119
154
|
width?: number | string;
|
|
120
155
|
isSmallScreen?: boolean;
|
|
@@ -130,7 +165,10 @@ export type ChartsSkeletonProps = {
|
|
|
130
165
|
export type ChartsProps = {
|
|
131
166
|
chartType?: ChartType;
|
|
132
167
|
data: NewNestedDataPoint[];
|
|
133
|
-
colors?:
|
|
168
|
+
colors?: {
|
|
169
|
+
key: string;
|
|
170
|
+
color: string;
|
|
171
|
+
}[];
|
|
134
172
|
slot1?: ReactNode;
|
|
135
173
|
slot2?: ReactNode;
|
|
136
174
|
slot3?: ReactNode;
|
|
@@ -141,6 +179,7 @@ export type ChartsProps = {
|
|
|
141
179
|
barsize?: number;
|
|
142
180
|
xAxis?: XAxisConfig;
|
|
143
181
|
yAxis?: YAxisConfig;
|
|
182
|
+
tooltip?: TooltipConfig;
|
|
144
183
|
noData?: NoDataProps;
|
|
145
184
|
height?: number;
|
|
146
185
|
showHeader?: boolean;
|
|
@@ -149,6 +188,11 @@ export type ChartsProps = {
|
|
|
149
188
|
onExpandedChange?: (isExpanded: boolean) => void;
|
|
150
189
|
chartName?: string;
|
|
151
190
|
skeleton?: ChartsSkeletonProps;
|
|
191
|
+
legends?: {
|
|
192
|
+
title: string;
|
|
193
|
+
total?: string;
|
|
194
|
+
}[];
|
|
195
|
+
CustomizedDot?: (props: DotItemDotProps) => React.ReactElement<SVGElement>;
|
|
152
196
|
};
|
|
153
197
|
export type FlattenedDataPoint = {
|
|
154
198
|
name: string;
|
|
@@ -171,7 +215,10 @@ export type ChartHeaderProps = {
|
|
|
171
215
|
export type ChartLegendsProps = {
|
|
172
216
|
chartContainerRef: React.RefObject<HTMLDivElement>;
|
|
173
217
|
keys: string[];
|
|
174
|
-
colors:
|
|
218
|
+
colors: {
|
|
219
|
+
key: string;
|
|
220
|
+
color: string;
|
|
221
|
+
}[];
|
|
175
222
|
handleLegendClick: (key: string) => void;
|
|
176
223
|
handleLegendEnter: (key: string) => void;
|
|
177
224
|
handleLegendLeave: () => void;
|
|
@@ -182,6 +229,10 @@ export type ChartLegendsProps = {
|
|
|
182
229
|
stacked?: boolean;
|
|
183
230
|
isSmallScreen?: boolean;
|
|
184
231
|
stackedLegendsData?: StackedLegendsDataPoint[];
|
|
232
|
+
legends?: {
|
|
233
|
+
title: string;
|
|
234
|
+
total?: string;
|
|
235
|
+
}[];
|
|
185
236
|
};
|
|
186
237
|
export type CustomTooltipProps = TooltipProps<ValueType, NameType> & {
|
|
187
238
|
hoveredKey: string | null;
|
|
@@ -230,7 +281,10 @@ export type SankeyNodeProps = {
|
|
|
230
281
|
value?: number;
|
|
231
282
|
};
|
|
232
283
|
containerWidth?: number;
|
|
233
|
-
nodeColors?: string
|
|
284
|
+
nodeColors?: (string | {
|
|
285
|
+
key: string;
|
|
286
|
+
color: string;
|
|
287
|
+
})[];
|
|
234
288
|
onMouseEnter?: (data: SankeyTooltipData, event: React.MouseEvent) => void;
|
|
235
289
|
onMouseLeave?: () => void;
|
|
236
290
|
};
|
|
@@ -244,7 +298,10 @@ export type SankeyLinkProps = {
|
|
|
244
298
|
linkWidth?: number;
|
|
245
299
|
index?: number;
|
|
246
300
|
payload?: SankeyLink;
|
|
247
|
-
linkColors?: string
|
|
301
|
+
linkColors?: (string | {
|
|
302
|
+
key: string;
|
|
303
|
+
color: string;
|
|
304
|
+
})[];
|
|
248
305
|
onMouseEnter?: (data: SankeyTooltipData, event: React.MouseEvent) => void;
|
|
249
306
|
onMouseLeave?: () => void;
|
|
250
307
|
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { AttachedFile, MenuProps } from '../../main';
|
|
3
|
+
type AttachmentFileProps = {
|
|
4
|
+
attachedFiles: AttachedFile[];
|
|
5
|
+
onFileRemove?: (fileId: string) => void;
|
|
6
|
+
onFileClick?: (file: AttachedFile) => void;
|
|
7
|
+
overflowMenuProps?: Partial<MenuProps>;
|
|
8
|
+
containerRef?: React.RefObject<HTMLDivElement | null>;
|
|
9
|
+
};
|
|
10
|
+
declare const AttachmentFile: ({ attachedFiles, onFileRemove, onFileClick, overflowMenuProps, containerRef, }: AttachmentFileProps) => false | import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export default AttachmentFile;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AttachedFile, MenuProps } from '../../main';
|
|
2
|
+
type MobileChatInputProps = {
|
|
3
|
+
value: string;
|
|
4
|
+
onChange?: (value: string) => void;
|
|
5
|
+
slot1?: React.ReactNode;
|
|
6
|
+
placeholder?: string;
|
|
7
|
+
attachedFiles?: AttachedFile[];
|
|
8
|
+
handleAttachClick?: () => void;
|
|
9
|
+
onFileRemove?: (fileId: string) => void;
|
|
10
|
+
onFileClick?: (file: AttachedFile) => void;
|
|
11
|
+
overflowMenuProps?: Partial<MenuProps>;
|
|
12
|
+
};
|
|
13
|
+
declare const MobileChatInput: React.FC<MobileChatInputProps>;
|
|
14
|
+
export default MobileChatInput;
|
|
@@ -13,6 +13,52 @@ import { FoundationTokenType } from '../../tokens/theme.token';
|
|
|
13
13
|
* - topQueries: Top queries section with header and items
|
|
14
14
|
*/
|
|
15
15
|
export type ChatInputTokensType = Readonly<{
|
|
16
|
+
backgroundColor: {
|
|
17
|
+
default: CSSObject['backgroundColor'];
|
|
18
|
+
hover: CSSObject['backgroundColor'];
|
|
19
|
+
disabled: CSSObject['backgroundColor'];
|
|
20
|
+
};
|
|
21
|
+
borderRadius: {
|
|
22
|
+
default: CSSObject['borderRadius'];
|
|
23
|
+
focus: CSSObject['borderRadius'];
|
|
24
|
+
};
|
|
25
|
+
border: {
|
|
26
|
+
default: CSSObject['border'];
|
|
27
|
+
focus: CSSObject['border'];
|
|
28
|
+
};
|
|
29
|
+
minHeight: CSSObject['minHeight'];
|
|
30
|
+
maxHeight: CSSObject['maxHeight'];
|
|
31
|
+
gap: CSSObject['gap'];
|
|
32
|
+
text: {
|
|
33
|
+
color: {
|
|
34
|
+
default: CSSObject['color'];
|
|
35
|
+
hover: CSSObject['color'];
|
|
36
|
+
focus: CSSObject['color'];
|
|
37
|
+
disabled: CSSObject['color'];
|
|
38
|
+
};
|
|
39
|
+
fontSize: {
|
|
40
|
+
default: CSSObject['fontSize'];
|
|
41
|
+
hover: CSSObject['fontSize'];
|
|
42
|
+
focus: CSSObject['fontSize'];
|
|
43
|
+
disabled: CSSObject['fontSize'];
|
|
44
|
+
};
|
|
45
|
+
fontWeight: {
|
|
46
|
+
default: CSSObject['fontWeight'];
|
|
47
|
+
hover: CSSObject['fontWeight'];
|
|
48
|
+
focus: CSSObject['fontWeight'];
|
|
49
|
+
disabled: CSSObject['fontWeight'];
|
|
50
|
+
};
|
|
51
|
+
lineHeight: {
|
|
52
|
+
default: CSSObject['lineHeight'];
|
|
53
|
+
hover: CSSObject['lineHeight'];
|
|
54
|
+
focus: CSSObject['lineHeight'];
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
resize: CSSObject['resize'];
|
|
58
|
+
overflow: CSSObject['overflow'];
|
|
59
|
+
paddingLeft: CSSObject['paddingLeft'];
|
|
60
|
+
paddingTop: CSSObject['paddingTop'];
|
|
61
|
+
paddingBottom: CSSObject['paddingBottom'];
|
|
16
62
|
container: {
|
|
17
63
|
backgroundColor: {
|
|
18
64
|
default: CSSObject['backgroundColor'];
|
|
@@ -30,3 +30,8 @@ export declare const filterDuplicateFiles: (files: File[], attachedFiles: Attach
|
|
|
30
30
|
newFiles: File[];
|
|
31
31
|
duplicateFiles: string[];
|
|
32
32
|
};
|
|
33
|
+
/**
|
|
34
|
+
* Simple utility to truncate placeholder text if it exceeds the textarea's available width
|
|
35
|
+
* Uses canvas to measure text width and truncates with ellipsis if needed
|
|
36
|
+
*/
|
|
37
|
+
export declare const truncatePlaceholder: (textarea: HTMLTextAreaElement | null, placeholder: string | undefined) => string | undefined;
|
|
@@ -5,8 +5,9 @@ type DataTablePaginationProps = {
|
|
|
5
5
|
pageSizeOptions: number[];
|
|
6
6
|
isLoading?: boolean;
|
|
7
7
|
hasData?: boolean;
|
|
8
|
+
isNarrowContainer?: boolean;
|
|
8
9
|
onPageChange: (page: number) => void;
|
|
9
10
|
onPageSizeChange: (pageSize: number) => void;
|
|
10
11
|
};
|
|
11
|
-
export declare function DataTablePagination({ currentPage, pageSize, totalRows, pageSizeOptions, isLoading, hasData, onPageChange, onPageSizeChange, }: DataTablePaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export declare function DataTablePagination({ currentPage, pageSize, totalRows, pageSizeOptions, isLoading, hasData, isNarrowContainer, onPageChange, onPageSizeChange, }: DataTablePaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
12
13
|
export {};
|
|
@@ -2,6 +2,7 @@ import { SortDirection, FilterType, ColumnDefinition } from '../types';
|
|
|
2
2
|
export type SortState = {
|
|
3
3
|
currentSortField: string | null;
|
|
4
4
|
currentSortDirection: SortDirection;
|
|
5
|
+
currentSortType?: string;
|
|
5
6
|
};
|
|
6
7
|
export type FilterState = {
|
|
7
8
|
columnSearchValues: Record<string, string>;
|
|
@@ -15,11 +16,11 @@ export type ColumnFilterHandler = (field: string, filterType: FilterType, value:
|
|
|
15
16
|
max: number;
|
|
16
17
|
}, operator?: 'endsWith' | 'startsWith' | 'equals' | 'contains' | 'gt' | 'lt' | 'gte' | 'lte' | 'range') => void;
|
|
17
18
|
export type SortHandlers = {
|
|
18
|
-
handleSort: (field: string) => void;
|
|
19
|
-
handleSortAscending: (field: string) => void;
|
|
20
|
-
handleSortDescending: (field: string) => void;
|
|
19
|
+
handleSort: (field: string, sortType?: string) => void;
|
|
20
|
+
handleSortAscending: (field: string, sortType?: string) => void;
|
|
21
|
+
handleSortDescending: (field: string, sortType?: string) => void;
|
|
21
22
|
};
|
|
22
|
-
export declare const createSortHandlers: (sortState: SortState, onSort: (field: keyof Record<string, unknown
|
|
23
|
+
export declare const createSortHandlers: (sortState: SortState, onSort: (field: keyof Record<string, unknown>, sortType?: string) => void, onSortAscending?: (field: keyof Record<string, unknown>, sortType?: string) => void, onSortDescending?: (field: keyof Record<string, unknown>, sortType?: string) => void) => SortHandlers;
|
|
23
24
|
export type FilterHandlers = {
|
|
24
25
|
handleSearchChange: (fieldKey: string, value: string) => void;
|
|
25
26
|
handleSelectFilter: (column: ColumnDefinition<Record<string, unknown>>, fieldKey: string, value: string, onColumnFilter?: ColumnFilterHandler) => void;
|
|
@@ -34,9 +34,9 @@ export type TableHeaderProps<T extends Record<string, unknown>> = {
|
|
|
34
34
|
mobileConfig?: MobileDataTableConfig;
|
|
35
35
|
mobileOverflowColumns?: ColumnDefinition<T>[];
|
|
36
36
|
onMobileOverflowClick?: (row: T) => void;
|
|
37
|
-
onSort: (field: keyof T) => void;
|
|
38
|
-
onSortAscending?: (field: keyof T) => void;
|
|
39
|
-
onSortDescending?: (field: keyof T) => void;
|
|
37
|
+
onSort: (field: keyof T, sortType?: string) => void;
|
|
38
|
+
onSortAscending?: (field: keyof T, sortType?: string) => void;
|
|
39
|
+
onSortDescending?: (field: keyof T, sortType?: string) => void;
|
|
40
40
|
onSelectAll: (checked: boolean | 'indeterminate') => void;
|
|
41
41
|
onColumnChange: (columns: ColumnDefinition<T>[]) => void;
|
|
42
42
|
onColumnReorder?: (columns: ColumnDefinition<T>[]) => void;
|
|
@@ -126,6 +126,46 @@ export type BaseColumnDefinition<T> = {
|
|
|
126
126
|
filterType?: FilterType;
|
|
127
127
|
showSkeleton?: boolean;
|
|
128
128
|
skeletonVariant?: SkeletonVariant;
|
|
129
|
+
/**
|
|
130
|
+
* Function to get the field to sort by. Allows sorting by a different field than the column's field.
|
|
131
|
+
* @param sortType - Optional sort type identifier (e.g., 'primary', 'delta', 'absolute')
|
|
132
|
+
* @returns The field name to sort by
|
|
133
|
+
* @example
|
|
134
|
+
* // Sort by delta_total_volume when sortType is 'delta'
|
|
135
|
+
* getSortField: (sortType) => sortType === 'delta' ? 'delta_total_volume' : 'total_volume'
|
|
136
|
+
*/
|
|
137
|
+
getSortField?: (sortType?: string) => string;
|
|
138
|
+
/**
|
|
139
|
+
* Enable delta sorting UI in the sorting popover. When true, shows "Value | Delta" sections.
|
|
140
|
+
* Requires getSortField to be provided for delta sorting to work.
|
|
141
|
+
* @default false
|
|
142
|
+
*/
|
|
143
|
+
isDeltaSortable?: boolean;
|
|
144
|
+
/**
|
|
145
|
+
* Optional function to format/transform values before comparison during sorting.
|
|
146
|
+
* Useful for custom sorting logic (e.g., extracting numbers from formatted strings like "INR 276").
|
|
147
|
+
* The sortType parameter allows you to apply different formatting logic for delta sorting vs primary sorting.
|
|
148
|
+
* @param value - The raw value from the data row
|
|
149
|
+
* @param row - The entire row data
|
|
150
|
+
* @param column - The column definition
|
|
151
|
+
* @param sortType - Optional sort type identifier (e.g., 'primary', 'delta', 'absolute') - same value passed to getSortField. Use this to determine if delta sorting is active and apply appropriate formatting.
|
|
152
|
+
* @returns The formatted value to use for comparison
|
|
153
|
+
* @example
|
|
154
|
+
* // Different formatting for delta vs primary sorting
|
|
155
|
+
* sortValueFormatter: (value, row, column, sortType) => {
|
|
156
|
+
* // For delta sorting, values might already be numbers
|
|
157
|
+
* if (sortType === 'delta') {
|
|
158
|
+
* return typeof value === 'number' ? value : 0
|
|
159
|
+
* }
|
|
160
|
+
* // For primary sorting, extract numeric value from formatted string
|
|
161
|
+
* if (typeof value === 'string') {
|
|
162
|
+
* const num = parseFloat(value.replace(/[^\d.-]/g, ''))
|
|
163
|
+
* return isNaN(num) ? 0 : num
|
|
164
|
+
* }
|
|
165
|
+
* return value
|
|
166
|
+
* }
|
|
167
|
+
*/
|
|
168
|
+
sortValueFormatter?: (value: unknown, row: T, column: ColumnDefinition<T>, sortType?: string) => unknown;
|
|
129
169
|
};
|
|
130
170
|
export type ColumnDefinition<T> = (BaseColumnDefinition<T> & {
|
|
131
171
|
type: ColumnType.TEXT;
|
|
@@ -172,6 +212,7 @@ export type ColumnDefinition<T> = (BaseColumnDefinition<T> & {
|
|
|
172
212
|
export type SortConfig = {
|
|
173
213
|
field: string;
|
|
174
214
|
direction: SortDirection;
|
|
215
|
+
sortType?: string;
|
|
175
216
|
};
|
|
176
217
|
export type SearchConfig = {
|
|
177
218
|
query: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DirectoryProps } from './types';
|
|
2
2
|
declare const Directory: {
|
|
3
|
-
({ directoryData, idPrefix, activeItem, onActiveItemChange, defaultActiveItem, }: DirectoryProps): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
({ directoryData, idPrefix, activeItem, onActiveItemChange, defaultActiveItem, iconOnlyMode, }: DirectoryProps): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
displayName: string;
|
|
5
5
|
};
|
|
6
6
|
export default Directory;
|
|
@@ -17,5 +17,5 @@ type ActiveItemProviderProps = {
|
|
|
17
17
|
defaultActiveItem?: string | null;
|
|
18
18
|
};
|
|
19
19
|
export declare const ActiveItemProvider: React.FC<ActiveItemProviderProps>;
|
|
20
|
-
declare const NavItem: ({ item, index, onNavigate, itemPath, }: NavItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
declare const NavItem: ({ item, index, onNavigate, itemPath, iconOnlyMode, }: NavItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
21
21
|
export default NavItem;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { SectionProps } from './types';
|
|
2
|
-
declare const Section: ({ section, sectionIndex, onNavigateBetweenSections, idPrefix, }: SectionProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const Section: ({ section, sectionIndex, onNavigateBetweenSections, idPrefix, iconOnlyMode, }: SectionProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default Section;
|
|
@@ -5,6 +5,7 @@ export type DirectoryProps = {
|
|
|
5
5
|
activeItem?: string | null;
|
|
6
6
|
onActiveItemChange?: (item: string | null) => void;
|
|
7
7
|
defaultActiveItem?: string | null;
|
|
8
|
+
iconOnlyMode?: boolean;
|
|
8
9
|
};
|
|
9
10
|
export type DirectoryData = {
|
|
10
11
|
label?: string;
|
|
@@ -31,10 +32,12 @@ export type SectionProps = {
|
|
|
31
32
|
sectionIndex: number;
|
|
32
33
|
onNavigateBetweenSections: (direction: 'up' | 'down', currentIndex: number) => void;
|
|
33
34
|
idPrefix?: string;
|
|
35
|
+
iconOnlyMode?: boolean;
|
|
34
36
|
};
|
|
35
37
|
export type NavItemProps = {
|
|
36
38
|
item: NavbarItem;
|
|
37
39
|
index: number;
|
|
38
40
|
onNavigate: (direction: 'up' | 'down', currentIndex: number) => void;
|
|
39
41
|
itemPath?: string;
|
|
42
|
+
iconOnlyMode?: boolean;
|
|
40
43
|
};
|
|
@@ -118,6 +118,11 @@ export type DrawerContentProps = {
|
|
|
118
118
|
* ID of the element describing the drawer content
|
|
119
119
|
*/
|
|
120
120
|
'aria-describedby'?: string;
|
|
121
|
+
/**
|
|
122
|
+
* Whether the drawer should take full screen (full height and width, no border radius)
|
|
123
|
+
* @default false
|
|
124
|
+
*/
|
|
125
|
+
fullScreen?: boolean;
|
|
121
126
|
};
|
|
122
127
|
export type DrawerHeaderProps = {
|
|
123
128
|
/**
|
|
@@ -7,6 +7,40 @@
|
|
|
7
7
|
* @returns Sanitized string value
|
|
8
8
|
*/
|
|
9
9
|
export declare const sanitizeNumberInput: (inputValue: string, allowNegative?: boolean) => string;
|
|
10
|
+
/**
|
|
11
|
+
* Clamps a numeric value to the nearest valid boundary (min or max)
|
|
12
|
+
* If value is less than min, returns min
|
|
13
|
+
* If value is greater than max, returns max
|
|
14
|
+
* Otherwise returns the value unchanged
|
|
15
|
+
*
|
|
16
|
+
* @param value - The numeric value to clamp
|
|
17
|
+
* @param min - Minimum allowed value
|
|
18
|
+
* @param max - Maximum allowed value
|
|
19
|
+
* @returns Clamped numeric value
|
|
20
|
+
*/
|
|
21
|
+
export declare const clampToBoundary: (value: number, min?: number, max?: number) => number;
|
|
22
|
+
/**
|
|
23
|
+
* Increments a value by step, respecting min/max constraints
|
|
24
|
+
*
|
|
25
|
+
* @param currentValue - Current numeric value (can be null)
|
|
26
|
+
* @param step - Step size
|
|
27
|
+
* @param min - Minimum allowed value
|
|
28
|
+
* @param max - Maximum allowed value
|
|
29
|
+
* @param preventNegative - Whether to prevent negative values
|
|
30
|
+
* @returns New incremented value, clamped to boundaries
|
|
31
|
+
*/
|
|
32
|
+
export declare const incrementValue: (currentValue: number | null, step?: number, min?: number, max?: number, preventNegative?: boolean) => number;
|
|
33
|
+
/**
|
|
34
|
+
* Decrements a value by step, respecting min/max constraints
|
|
35
|
+
*
|
|
36
|
+
* @param currentValue - Current numeric value (can be null)
|
|
37
|
+
* @param step - Step size
|
|
38
|
+
* @param min - Minimum allowed value
|
|
39
|
+
* @param max - Maximum allowed value
|
|
40
|
+
* @param preventNegative - Whether to prevent negative values
|
|
41
|
+
* @returns New decremented value, clamped to boundaries
|
|
42
|
+
*/
|
|
43
|
+
export declare const decrementValue: (currentValue: number | null, step?: number, min?: number, max?: number, preventNegative?: boolean) => number;
|
|
10
44
|
/**
|
|
11
45
|
* Clamps and sanitizes the value on blur
|
|
12
46
|
* Similar to Chakra UI's clampValueOnBlur behavior
|
|
@@ -15,9 +49,55 @@ export declare const sanitizeNumberInput: (inputValue: string, allowNegative?: b
|
|
|
15
49
|
* @param allowNegative - Whether negative numbers are allowed
|
|
16
50
|
* @param min - Minimum allowed value
|
|
17
51
|
* @param max - Maximum allowed value
|
|
18
|
-
* @returns Clamped and sanitized
|
|
52
|
+
* @returns Clamped and sanitized value string
|
|
19
53
|
*/
|
|
20
54
|
export declare const clampValueOnBlur: (inputValue: string, allowNegative?: boolean, min?: number, max?: number) => string;
|
|
55
|
+
/**
|
|
56
|
+
* Checks if a numeric value is outside the valid range
|
|
57
|
+
*
|
|
58
|
+
* @param value - The numeric value to check
|
|
59
|
+
* @param min - Minimum allowed value
|
|
60
|
+
* @param max - Maximum allowed value
|
|
61
|
+
* @returns True if value is outside the valid range
|
|
62
|
+
*/
|
|
63
|
+
export declare const isValueOutsideRange: (value: number, min?: number, max?: number) => boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Checks if incrementing would exceed max
|
|
66
|
+
*
|
|
67
|
+
* @param currentValue - Current numeric value (can be null)
|
|
68
|
+
* @param step - Step size
|
|
69
|
+
* @param min - Minimum allowed value
|
|
70
|
+
* @param max - Maximum allowed value
|
|
71
|
+
* @returns True if incrementing would exceed max
|
|
72
|
+
*/
|
|
73
|
+
export declare const wouldExceedMax: (currentValue: number | null, step: number, min?: number, max?: number) => boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Checks if decrementing would go below min
|
|
76
|
+
*
|
|
77
|
+
* @param currentValue - Current numeric value (can be null)
|
|
78
|
+
* @param step - Step size
|
|
79
|
+
* @param min - Minimum allowed value
|
|
80
|
+
* @param preventNegative - Whether to prevent negative values
|
|
81
|
+
* @returns True if decrementing would go below min
|
|
82
|
+
*/
|
|
83
|
+
export declare const wouldGoBelowMin: (currentValue: number | null, step: number, min?: number, preventNegative?: boolean) => boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Generates an error message for a value outside the valid range
|
|
86
|
+
*
|
|
87
|
+
* @param min - Minimum allowed value
|
|
88
|
+
* @param max - Maximum allowed value
|
|
89
|
+
* @returns Error message string
|
|
90
|
+
*/
|
|
91
|
+
export declare const getRangeErrorMessage: (min?: number, max?: number) => string;
|
|
92
|
+
/**
|
|
93
|
+
* Validates if a number value is within min/max bounds
|
|
94
|
+
*
|
|
95
|
+
* @param value - The number value to validate
|
|
96
|
+
* @param min - Minimum allowed value
|
|
97
|
+
* @param max - Maximum allowed value
|
|
98
|
+
* @returns True if value is within bounds, false otherwise
|
|
99
|
+
*/
|
|
100
|
+
export declare const isValueInRange: (value: number | null | undefined, min?: number, max?: number) => boolean;
|
|
21
101
|
/**
|
|
22
102
|
* Validates if a string represents a valid number
|
|
23
103
|
*
|
|
@@ -10,6 +10,10 @@ declare enum TextAreaState {
|
|
|
10
10
|
}
|
|
11
11
|
export type TextAreaTokensType = {
|
|
12
12
|
gap: CSSObject['gap'];
|
|
13
|
+
placeholder?: {
|
|
14
|
+
color?: CSSObject['color'];
|
|
15
|
+
fontWeight?: CSSObject['fontWeight'];
|
|
16
|
+
};
|
|
13
17
|
label: {
|
|
14
18
|
fontSize: CSSObject['fontSize'];
|
|
15
19
|
fontWeight: CSSObject['fontWeight'];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { MultiSelectProps } from './types';
|
|
2
|
-
declare const MultiSelect: ({ selectedValues, onChange, items, label, sublabel, disabled, helpIconHintText, name, required, variant, selectionTagType, slot, hintText, placeholder, size, enableSearch, searchPlaceholder, enableSelectAll, selectAllText, maxSelections, customTrigger, useDrawerOnMobile, minMenuWidth, maxMenuWidth, maxMenuHeight, alignment, side, sideOffset, alignOffset, inline, onBlur, onFocus, error, errorMessage, showActionButtons, primaryAction, secondaryAction, showItemDividers, showHeaderBorder, fullWidth, enableVirtualization, virtualListItemHeight, virtualListOverscan, itemsToRender, onEndReached, endReachedThreshold, hasMore, loadingComponent, skeleton, maxTriggerWidth, minTriggerWidth, allowCustomValue, customValueLabel, }: MultiSelectProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const MultiSelect: ({ selectedValues, onChange, items, label, sublabel, disabled, helpIconHintText, name, required, variant, selectionTagType, slot, hintText, placeholder, size, enableSearch, searchPlaceholder, enableSelectAll, selectAllText, maxSelections, customTrigger, useDrawerOnMobile, minMenuWidth, maxMenuWidth, maxMenuHeight, alignment, side, sideOffset, alignOffset, inline, onBlur, onFocus, error, errorMessage, showActionButtons, primaryAction, secondaryAction, showItemDividers, showHeaderBorder, fullWidth, enableVirtualization, virtualListItemHeight, virtualListOverscan, itemsToRender, onEndReached, endReachedThreshold, hasMore, loadingComponent, skeleton, maxTriggerWidth, minTriggerWidth, allowCustomValue, customValueLabel, showClearButton, onClearAllClick, }: MultiSelectProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default MultiSelect;
|
|
@@ -123,6 +123,8 @@ export type MultiSelectProps = {
|
|
|
123
123
|
skeleton?: MultiSelectSkeletonProps;
|
|
124
124
|
allowCustomValue?: boolean;
|
|
125
125
|
customValueLabel?: string;
|
|
126
|
+
showClearButton?: boolean;
|
|
127
|
+
onClearAllClick?: () => void;
|
|
126
128
|
};
|
|
127
129
|
export type MultiSelectMenuProps = {
|
|
128
130
|
items: MultiSelectMenuGroupType[];
|