@ssa-ui-kit/core 2.9.0-canary-4b2c248-20250414 → 2.9.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.
@@ -0,0 +1,6 @@
1
+ import { BarGaugeChartProps } from './types';
2
+ export declare const BarGaugeChartComponent: ({ title, widgetCardProps, bars, features, }: BarGaugeChartProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export declare const BarGaugeChart: {
4
+ (props: BarGaugeChartProps): import("@emotion/react/jsx-runtime").JSX.Element;
5
+ displayName: string;
6
+ };
@@ -0,0 +1,5 @@
1
+ import { BarGaugeChartHeaderProps } from '../types';
2
+ export declare const FullScreenButton: import("@emotion/styled").StyledComponent<import("../../../Button/types").ButtonProps & import("react").RefAttributes<HTMLButtonElement> & {
3
+ theme?: import("@emotion/react").Theme;
4
+ }, {}, {}>;
5
+ export declare const BarGaugeChartHeader: <F extends string[]>({ features, }: BarGaugeChartHeaderProps<F>) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,8 @@
1
+ export declare const Brick: import("@emotion/styled").StyledComponent<{
2
+ theme?: import("@emotion/react").Theme;
3
+ as?: React.ElementType;
4
+ } & {
5
+ $width: number;
6
+ $color: string;
7
+ $inactive: boolean;
8
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -0,0 +1,2 @@
1
+ import { GaugeBarProps } from '../types';
2
+ export declare const GaugeBar: ({ title, value, min, max, gap, brickWidth, thresholds, valueFormatter, }: GaugeBarProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export * from './BarGaugeChartHeader';
2
+ export * from './GaugeBar';
3
+ export * from './Brick';
@@ -0,0 +1,2 @@
1
+ export * from './BarGaugeChart';
2
+ export * from './types';
@@ -0,0 +1,27 @@
1
+ import { MustInclude } from '@ssa-ui-kit/utils';
2
+ import { WidgetCardProps } from '../../WidgetCard';
3
+ export type BarGaugeChartFeature = 'header' | 'fullscreenMode';
4
+ export type GaugeBarThreshold = {
5
+ value: number;
6
+ color: string;
7
+ };
8
+ export type GaugeBarValueFormatter = (value: number, color: string) => React.ReactNode;
9
+ export interface BarGaugeChartHeaderProps<T extends string[]> {
10
+ features: MustInclude<T, 'fullscreenMode'>;
11
+ }
12
+ export interface GaugeBarProps {
13
+ value: number;
14
+ valueFormatter?: GaugeBarValueFormatter;
15
+ title?: React.ReactNode;
16
+ thresholds?: GaugeBarThreshold[];
17
+ gap?: number;
18
+ brickWidth?: number;
19
+ min?: number;
20
+ max?: number;
21
+ }
22
+ export interface BarGaugeChartProps {
23
+ title?: string;
24
+ widgetCardProps?: WidgetCardProps;
25
+ bars?: GaugeBarProps[];
26
+ features?: BarGaugeChartFeature[];
27
+ }
@@ -5,3 +5,4 @@ export * from './TreeMapChart';
5
5
  export * from './common';
6
6
  export * from './hooks';
7
7
  export * from './GaugeChart';
8
+ export * from './BarGaugeChart';
@@ -0,0 +1,18 @@
1
+ import { NumberFormatOptions } from '@react-input/number-format';
2
+ import { InputProps } from '../Input/types';
3
+ import { FieldRootProps } from '../Field/FieldRoot';
4
+ export interface NumberFieldProps extends InputProps {
5
+ id?: string;
6
+ value?: number;
7
+ defaultValue?: number;
8
+ description?: React.ReactNode;
9
+ label?: React.ReactNode;
10
+ success?: React.ReactNode;
11
+ error?: React.ReactNode;
12
+ status?: FieldRootProps['status'];
13
+ numberFormat?: NumberFormatOptions & {
14
+ locales?: Intl.LocalesArgument;
15
+ };
16
+ onChange?: (value: number) => void;
17
+ }
18
+ export declare const NumberField: ({ id, value, defaultValue, description, label, success, error, status, numberFormat, onChange, ...inputProps }: NumberFieldProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './NumberField';
@@ -1,4 +1,6 @@
1
1
  export * from './Typeahead';
2
+ export * from './types';
3
+ export { useTypeaheadContext } from './Typeahead.context';
2
4
  export * from './components/TypeaheadOptions';
3
5
  export * from './components/TypeaheadOption';
4
6
  export * from './components/TypeaheadItem';
@@ -99,6 +99,7 @@ export * from './TableFilters';
99
99
  export * from './Tag';
100
100
  export * from './Textarea';
101
101
  export * from './TextField';
102
+ export * from './NumberField';
102
103
  export * from './Tooltip';
103
104
  export * from './Typeahead';
104
105
  export * from './Typography';
package/dist/index.js CHANGED
@@ -70,6 +70,8 @@ __webpack_require__.d(__webpack_exports__, {
70
70
  AddNewAccountCard: () => (/* reexport */ AddNewAccountCard),
71
71
  Avatar: () => (/* reexport */ Avatar_Avatar),
72
72
  Badge: () => (/* reexport */ Badge_Badge),
73
+ BarGaugeChart: () => (/* reexport */ BarGaugeChart),
74
+ BarGaugeChartComponent: () => (/* reexport */ BarGaugeChartComponent),
73
75
  BarLineComplexChart: () => (/* reexport */ BarLineComplexChart),
74
76
  Button: () => (/* reexport */ Button_Button),
75
77
  ButtonGroup: () => (/* reexport */ ButtonGroup),
@@ -137,6 +139,7 @@ __webpack_require__.d(__webpack_exports__, {
137
139
  NestedTableRowProvider: () => (/* reexport */ NestedTableRowProvider),
138
140
  NotificationCard: () => (/* reexport */ NotificationCard),
139
141
  NotificationMenu: () => (/* reexport */ NotificationMenu),
142
+ NumberField: () => (/* reexport */ NumberField),
140
143
  Pagination: () => (/* reexport */ Pagination_Pagination),
141
144
  PaginationContext: () => (/* reexport */ PaginationContext),
142
145
  PaginationContextProvider: () => (/* reexport */ PaginationContextProvider),
@@ -254,7 +257,8 @@ __webpack_require__.d(__webpack_exports__, {
254
257
  useTabBarContext: () => (/* reexport */ useTabBarContext),
255
258
  useTooltip: () => (/* reexport */ useTooltip),
256
259
  useTooltipContext: () => (/* reexport */ useTooltipContext),
257
- useTranslation: () => (/* reexport */ useTranslation)
260
+ useTranslation: () => (/* reexport */ useTranslation),
261
+ useTypeaheadContext: () => (/* reexport */ useTypeaheadContext)
258
262
  });
259
263
 
260
264
  // NAMESPACE OBJECT: ./src/styles/global.ts
@@ -16204,6 +16208,188 @@ const GaugeChartComponent = ({
16204
16208
  const GaugeChart = WithFullscreenMode(GaugeChartComponent);
16205
16209
  ;// ./src/components/Charts/GaugeChart/index.ts
16206
16210
 
16211
+ ;// ./src/components/Charts/BarGaugeChart/components/BarGaugeChartHeader.tsx
16212
+
16213
+ function BarGaugeChartHeader_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
16214
+
16215
+
16216
+
16217
+
16218
+ const BarGaugeChartHeader_FullScreenButton = /*#__PURE__*/base_default()(Button_Button, true ? {
16219
+ target: "e1kdngqn0"
16220
+ } : 0)("height:auto;padding:0;background:none;box-shadow:none;&:hover,&:focus{background:none;box-shadow:none;&::before{display:none;}}&:hover{svg path{fill:", ({
16221
+ theme
16222
+ }) => theme.colors.greyDarker, ";}}" + ( true ? "" : 0));
16223
+ var BarGaugeChartHeader_ref = true ? {
16224
+ name: "1pqzlpx",
16225
+ styles: "width:auto;margin-left:auto"
16226
+ } : 0;
16227
+ var BarGaugeChartHeader_ref2 = true ? {
16228
+ name: "e0dnmk",
16229
+ styles: "cursor:pointer"
16230
+ } : 0;
16231
+ const BarGaugeChartHeader = ({
16232
+ features = []
16233
+ }) => {
16234
+ const {
16235
+ isFullscreenMode,
16236
+ toggleFullscreenMode
16237
+ } = useFullscreenMode();
16238
+ const theme = (0,react_namespaceObject.useTheme)();
16239
+ return (0,jsx_runtime_namespaceObject.jsx)(Wrapper_Wrapper, {
16240
+ css: BarGaugeChartHeader_ref,
16241
+ children: features.includes('fullscreenMode') && (0,jsx_runtime_namespaceObject.jsx)(BarGaugeChartHeader_FullScreenButton, {
16242
+ variant: "tertiary",
16243
+ onClick: toggleFullscreenMode,
16244
+ children: (0,jsx_runtime_namespaceObject.jsx)(Icon_Icon, {
16245
+ name: isFullscreenMode ? 'cross' : 'maximize',
16246
+ css: BarGaugeChartHeader_ref2,
16247
+ tooltip: isFullscreenMode ? 'Close' : 'Maximize',
16248
+ size: 18,
16249
+ color: theme.colors.greyFilterIcon
16250
+ })
16251
+ })
16252
+ });
16253
+ };
16254
+ ;// ./src/components/Charts/BarGaugeChart/components/Brick.tsx
16255
+
16256
+ const Brick = /*#__PURE__*/base_default()('div', true ? {
16257
+ shouldForwardProp: propName => !propName.startsWith('$'),
16258
+ target: "e1v2was00"
16259
+ } : 0)("position:relative;height:100%;width:", ({
16260
+ $width
16261
+ }) => `${$width}px`, ";background:", ({
16262
+ $color
16263
+ }) => $color, ";border-radius:12px;overflow:hidden;opacity:", ({
16264
+ $inactive
16265
+ }) => $inactive ? 0.4 : 1, ";&::after{content:'';position:absolute;inset:0;background:rgba(85, 87, 90, 0.1);opacity:", ({
16266
+ $inactive
16267
+ }) => $inactive ? 1 : 0, ";transition:opacity 0.2s;}" + ( true ? "" : 0));
16268
+ ;// ./src/components/Charts/BarGaugeChart/components/GaugeBar.tsx
16269
+ function GaugeBar_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
16270
+
16271
+
16272
+
16273
+
16274
+
16275
+ var GaugeBar_ref = true ? {
16276
+ name: "11upmbz",
16277
+ styles: "flex:1;width:100%;display:flex;flex-direction:column"
16278
+ } : 0;
16279
+ var GaugeBar_ref2 = true ? {
16280
+ name: "1iczwj8",
16281
+ styles: "font-weight:500;font-size:12px"
16282
+ } : 0;
16283
+ var GaugeBar_ref3 = true ? {
16284
+ name: "1r965ij",
16285
+ styles: "flex:1;gap:10px"
16286
+ } : 0;
16287
+ var GaugeBar_ref4 = true ? {
16288
+ name: "xvarew",
16289
+ styles: "font-weight:700;font-size:18px"
16290
+ } : 0;
16291
+ const GaugeBar = ({
16292
+ title,
16293
+ value,
16294
+ min = 0,
16295
+ max = 100,
16296
+ gap = 2,
16297
+ brickWidth = 6,
16298
+ thresholds = [],
16299
+ valueFormatter
16300
+ }) => {
16301
+ const {
16302
+ ref,
16303
+ width
16304
+ } = (0,hooks_namespaceObject.useElementSize)();
16305
+ const {
16306
+ ref: valueRef,
16307
+ width: valueWidth
16308
+ } = (0,hooks_namespaceObject.useElementSize)();
16309
+ const theme = (0,react_namespaceObject.useTheme)();
16310
+ const baseThreshold = {
16311
+ value: 0,
16312
+ color: theme.colors.green
16313
+ };
16314
+ const _thresholds = thresholds.slice().sort((a, b) => b.value - a.value);
16315
+ const activeThreshold = _thresholds.find(threshold => value >= threshold.value) || baseThreshold;
16316
+ const totalBricks = Math.max(0, Math.floor((width - valueWidth) / (brickWidth + gap)) - 1);
16317
+ const percentagePerBrick = (max - min) / totalBricks;
16318
+ const bricks = new Array(totalBricks).fill(0).map((_, index) => {
16319
+ const brickValue = min + index * percentagePerBrick;
16320
+ const threshold = _thresholds.find(threshold => brickValue >= threshold.value) || baseThreshold;
16321
+ const inactive = value < brickValue;
16322
+ return (0,jsx_runtime_namespaceObject.jsx)(Brick, {
16323
+ $width: brickWidth,
16324
+ $color: threshold.color,
16325
+ $inactive: inactive
16326
+ }, index);
16327
+ });
16328
+ return (0,jsx_runtime_namespaceObject.jsxs)("div", {
16329
+ css: GaugeBar_ref,
16330
+ children: [(0,jsx_runtime_namespaceObject.jsx)("div", {
16331
+ css: GaugeBar_ref2,
16332
+ children: title
16333
+ }), (0,jsx_runtime_namespaceObject.jsxs)(Wrapper_Wrapper, {
16334
+ ref: ref,
16335
+ css: GaugeBar_ref3,
16336
+ children: [(0,jsx_runtime_namespaceObject.jsx)("div", {
16337
+ css: /*#__PURE__*/(0,react_namespaceObject.css)({
16338
+ flex: 1,
16339
+ height: '100%',
16340
+ padding: '10px 0',
16341
+ display: 'flex',
16342
+ gap: `${gap}px`
16343
+ }, true ? "" : 0, true ? "" : 0),
16344
+ children: bricks
16345
+ }), (0,jsx_runtime_namespaceObject.jsx)("div", {
16346
+ ref: valueRef,
16347
+ style: {
16348
+ color: activeThreshold.color
16349
+ },
16350
+ css: GaugeBar_ref4,
16351
+ children: valueFormatter?.(value, activeThreshold.color) || value
16352
+ })]
16353
+ })]
16354
+ });
16355
+ };
16356
+ ;// ./src/components/Charts/BarGaugeChart/BarGaugeChart.tsx
16357
+ function BarGaugeChart_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
16358
+
16359
+
16360
+
16361
+
16362
+ var BarGaugeChart_ref = true ? {
16363
+ name: "s3tb3c",
16364
+ styles: "height:100%;gap:12px"
16365
+ } : 0;
16366
+ const BarGaugeChartComponent = ({
16367
+ title,
16368
+ widgetCardProps,
16369
+ bars = [],
16370
+ features = []
16371
+ }) => (0,jsx_runtime_namespaceObject.jsx)(WithWidgetCard, {
16372
+ features: features,
16373
+ cardProps: {
16374
+ title,
16375
+ headerContent: (0,jsx_runtime_namespaceObject.jsx)(BarGaugeChartHeader, {
16376
+ features: features
16377
+ }),
16378
+ ...widgetCardProps
16379
+ },
16380
+ children: (0,jsx_runtime_namespaceObject.jsx)(Wrapper_Wrapper, {
16381
+ direction: "column",
16382
+ alignItems: "start",
16383
+ css: BarGaugeChart_ref,
16384
+ children: bars.map((barProps, index) => (0,jsx_runtime_namespaceObject.jsx)(GaugeBar, {
16385
+ ...barProps
16386
+ }, index))
16387
+ })
16388
+ });
16389
+ const BarGaugeChart = WithFullscreenMode(BarGaugeChartComponent);
16390
+ ;// ./src/components/Charts/BarGaugeChart/index.ts
16391
+
16392
+
16207
16393
  ;// ./src/components/Charts/index.ts
16208
16394
 
16209
16395
 
@@ -16212,6 +16398,7 @@ const GaugeChart = WithFullscreenMode(GaugeChartComponent);
16212
16398
 
16213
16399
 
16214
16400
 
16401
+
16215
16402
  ;// ./src/components/Popover/hooks/index.ts
16216
16403
 
16217
16404
 
@@ -16366,6 +16553,83 @@ const SearchBox = ({
16366
16553
 
16367
16554
 
16368
16555
 
16556
+ ;// external "@react-input/number-format"
16557
+ const number_format_namespaceObject = require("@react-input/number-format");
16558
+ ;// ./src/components/NumberField/NumberField.tsx
16559
+ function NumberField_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
16560
+
16561
+
16562
+
16563
+
16564
+ var NumberField_ref = true ? {
16565
+ name: "t1bvca",
16566
+ styles: "padding:0 14px"
16567
+ } : 0;
16568
+ var NumberField_ref2 = true ? {
16569
+ name: "chpy5q",
16570
+ styles: "with:auto;border:0 !important;padding:2px 0;height:32px;border-radius:0"
16571
+ } : 0;
16572
+ const NumberField = ({
16573
+ id,
16574
+ value,
16575
+ defaultValue,
16576
+ description,
16577
+ label,
16578
+ success,
16579
+ error,
16580
+ status,
16581
+ numberFormat,
16582
+ onChange,
16583
+ ...inputProps
16584
+ }) => {
16585
+ const {
16586
+ disabled
16587
+ } = inputProps;
16588
+ const formattedValue = value == null ? value : (0,number_format_namespaceObject.format)(value, numberFormat);
16589
+ const formattedDefaultValue = defaultValue == null ? defaultValue : (0,number_format_namespaceObject.format)(defaultValue, numberFormat);
16590
+ const [_value, setValue] = (0,hooks_namespaceObject.useUncontrolled)({
16591
+ value: formattedValue,
16592
+ defaultValue: formattedDefaultValue,
16593
+ finalValue: undefined,
16594
+ onChange: value => {
16595
+ const number = Number((0,number_format_namespaceObject.unformat)(value, numberFormat?.locales));
16596
+ onChange?.(number);
16597
+ }
16598
+ });
16599
+ const inputRef = (0,number_format_namespaceObject.useNumberFormat)(numberFormat);
16600
+ const handleChange = event => {
16601
+ setValue(event.target.value);
16602
+ };
16603
+ return (0,jsx_runtime_namespaceObject.jsxs)(FieldRoot, {
16604
+ disabled: disabled,
16605
+ status: status,
16606
+ children: [label && (0,jsx_runtime_namespaceObject.jsx)(FieldLabel, {
16607
+ htmlFor: id,
16608
+ children: label
16609
+ }), (0,jsx_runtime_namespaceObject.jsx)(FieldControl, {
16610
+ css: NumberField_ref,
16611
+ children: (0,jsx_runtime_namespaceObject.jsx)(Input_Input, {
16612
+ ref: inputRef,
16613
+ css: NumberField_ref2,
16614
+ inputProps: {
16615
+ autoComplete: 'off',
16616
+ value: _value,
16617
+ onChange: handleChange
16618
+ },
16619
+ status: "custom",
16620
+ ...inputProps
16621
+ })
16622
+ }), description && (0,jsx_runtime_namespaceObject.jsx)(FieldDescription, {
16623
+ children: description
16624
+ }), success && (0,jsx_runtime_namespaceObject.jsx)(FieldSuccess, {
16625
+ children: success
16626
+ }), error && (0,jsx_runtime_namespaceObject.jsx)(FieldError, {
16627
+ children: error
16628
+ })]
16629
+ });
16630
+ };
16631
+ ;// ./src/components/NumberField/index.ts
16632
+
16369
16633
  ;// ./src/components/Tooltip/SimpleChartTooltip.tsx
16370
16634
 
16371
16635
 
@@ -16564,7 +16828,7 @@ const useTypeahead = ({
16564
16828
  setInputValue('');
16565
16829
  setFirstSuggestion('');
16566
16830
  } else {
16567
- setValue?.(name, selected.length ? selected[0] : undefined, {
16831
+ setValue?.(name, selected.length ? selected[0] : [], {
16568
16832
  shouldDirty: !isFirstRender
16569
16833
  });
16570
16834
  }
@@ -16588,26 +16852,25 @@ const useTypeahead = ({
16588
16852
  }
16589
16853
  }, [error]);
16590
16854
  (0,external_react_namespaceObject.useEffect)(() => {
16591
- const keyedOptions = {};
16592
- const childItems = external_react_default().Children.toArray(children).filter(Boolean).map((child, index) => {
16593
- keyedOptions[child.props.value] = {
16594
- ...child.props
16595
- };
16596
- return /*#__PURE__*/external_react_default().cloneElement(child, {
16597
- index,
16598
- ...child.props
16599
- });
16855
+ processChildren({
16856
+ selectedLocal: selected
16600
16857
  });
16601
- setOptionsWithKey(keyedOptions);
16602
- setItems(childItems);
16603
- setFirstRender(false);
16604
- }, [selectedItems, children]);
16858
+ }, [children]);
16605
16859
  (0,external_react_namespaceObject.useEffect)(() => {
16606
16860
  setSelected(selectedItems || []);
16607
- if (!selectedItems?.length) {
16861
+ if (selectedItems?.length) {
16862
+ if (!isMultiple) {
16863
+ const currentOption = optionsWithKey[selectedItems[0]];
16864
+ const optionText = currentOption && (currentOption.children || currentOption.label || currentOption.value);
16865
+ setInputValue(`${optionText}`);
16866
+ }
16867
+ } else {
16608
16868
  setInputValue('');
16609
16869
  setFirstSuggestion('');
16610
16870
  }
16871
+ processChildren({
16872
+ selectedLocal: selectedItems || []
16873
+ });
16611
16874
  }, [selectedItems]);
16612
16875
  (0,external_react_namespaceObject.useEffect)(() => {
16613
16876
  const childrenArray = external_react_default().Children.toArray(children).filter(Boolean);
@@ -16651,17 +16914,16 @@ const useTypeahead = ({
16651
16914
  setSelected([]);
16652
16915
  }
16653
16916
  if (foundItem && !selected.includes(foundItem?.value)) {
16654
- setSelected([foundItem?.value]);
16917
+ setSelected([foundItem.value]);
16655
16918
  }
16656
16919
  }
16657
16920
  }, [optionsWithKey, inputValue]);
16658
16921
  (0,external_react_namespaceObject.useEffect)(() => {
16659
- if (!isMultiple && selected.length && Object.keys(optionsWithKey).length) {
16660
- const currentOption = optionsWithKey[selected[0]];
16661
- const optionText = currentOption && (currentOption.children || currentOption.label || currentOption.value);
16662
- setInputValue(`${optionText}`);
16663
- }
16664
- }, [selected, optionsWithKey]);
16922
+ processSingleSelected({
16923
+ optionsWithKeyLocal: optionsWithKey,
16924
+ selectedLocal: selected
16925
+ });
16926
+ }, [selected]);
16665
16927
  (0,external_react_namespaceObject.useEffect)(() => {
16666
16928
  if (inputValue) {
16667
16929
  const newFirstSuggestion = Object.values(optionsWithKey)?.find(item => {
@@ -16678,12 +16940,41 @@ const useTypeahead = ({
16678
16940
  }
16679
16941
  }
16680
16942
  }, [inputValue, items, selected]);
16681
- (0,external_react_namespaceObject.useEffect)(() => {
16682
- onEmptyChange?.(isEmpty);
16683
- }, [isEmpty]);
16943
+ const processSingleSelected = ({
16944
+ optionsWithKeyLocal = {},
16945
+ selectedLocal = []
16946
+ }) => {
16947
+ if (!isMultiple && selectedLocal.length && Object.keys(optionsWithKeyLocal).length) {
16948
+ const currentOption = optionsWithKeyLocal[selectedLocal[0]];
16949
+ const optionText = currentOption && (currentOption.children || currentOption.label || currentOption.value);
16950
+ setInputValue(`${optionText}`);
16951
+ }
16952
+ };
16953
+ const processChildren = ({
16954
+ selectedLocal
16955
+ }) => {
16956
+ const keyedOptions = {};
16957
+ const childItems = external_react_default().Children.toArray(children).filter(Boolean).map((child, index) => {
16958
+ keyedOptions[child.props.value] = {
16959
+ ...child.props
16960
+ };
16961
+ return /*#__PURE__*/external_react_default().cloneElement(child, {
16962
+ index,
16963
+ ...child.props
16964
+ });
16965
+ });
16966
+ setOptionsWithKey(keyedOptions);
16967
+ setItems(childItems);
16968
+ processSingleSelected({
16969
+ optionsWithKeyLocal: keyedOptions,
16970
+ selectedLocal
16971
+ });
16972
+ setFirstRender(false);
16973
+ };
16684
16974
  const handleOnEmptyChange = newIsEmptyValue => {
16685
16975
  if (newIsEmptyValue !== isEmpty) {
16686
16976
  setIsEmpty(newIsEmptyValue);
16977
+ onEmptyChange?.(newIsEmptyValue);
16687
16978
  }
16688
16979
  };
16689
16980
  const handleOpenChange = open => {
@@ -16947,6 +17238,7 @@ const MultipleTrigger = () => {
16947
17238
  name: context.inputName,
16948
17239
  status: 'custom',
16949
17240
  disabled: context.isDisabled,
17241
+ validationSchema: context.validationSchema,
16950
17242
  inputProps: {
16951
17243
  onClick: context.handleInputClick,
16952
17244
  onKeyDown: context.handleInputKeyDown,
@@ -17007,6 +17299,7 @@ const SingleTrigger = () => {
17007
17299
  name: context.inputName,
17008
17300
  status: 'custom',
17009
17301
  disabled: context.isDisabled,
17302
+ validationSchema: context.validationSchema,
17010
17303
  inputProps: {
17011
17304
  onClick: context.handleInputClick,
17012
17305
  onKeyDown: context.handleInputKeyDown,
@@ -17291,6 +17584,8 @@ const highlightInputMatch = (item, keyword) => {
17291
17584
 
17292
17585
 
17293
17586
 
17587
+
17588
+
17294
17589
  ;// ./src/components/UserProfile/styles.ts
17295
17590
  function UserProfile_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
17296
17591
 
@@ -18604,6 +18899,7 @@ const JsonSchemaForm_Form = /*#__PURE__*/base_default()(UnstyledForm, true ? {
18604
18899
 
18605
18900
 
18606
18901
 
18902
+
18607
18903
 
18608
18904
 
18609
18905
  ;// ./src/contexts/Translation/config.ts