@gobolt/genesis 0.6.1 → 0.6.2

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.
@@ -1,7 +1,7 @@
1
1
  import { default as React, MouseEvent } from 'react';
2
2
  import { ButtonProps as AntButtonProperties } from 'antd/es/button';
3
3
  import { STATE } from '../../constants';
4
- type ButtonThemeType = "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon";
4
+ type ButtonThemeType = "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon" | "password";
5
5
  export interface ButtonProps extends Omit<AntButtonProperties, "type" | "size"> {
6
6
  onClick?: (event: MouseEvent<HTMLButtonElement>) => void;
7
7
  children?: React.ReactNode;
@@ -1,7 +1,7 @@
1
1
  import { GenesisTheme } from '../../styles/theme/genesis-theme.types';
2
2
  interface StyledIconButtonProperties {
3
3
  theme?: GenesisTheme;
4
- $themeType?: "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon";
4
+ $themeType?: "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon" | "password";
5
5
  $state?: "active" | "hover" | "pressed" | "focus" | "disabled" | "selected";
6
6
  children?: React.ReactNode;
7
7
  $isIconButton?: boolean;
@@ -2,7 +2,7 @@ import { ButtonProps as AntButtonProperties } from 'antd/es/button';
2
2
  import { GenesisTheme } from '../../styles/theme/genesis-theme.types';
3
3
  interface StyledButtonProperties extends Omit<AntButtonProperties, "type" | "size"> {
4
4
  theme?: GenesisTheme;
5
- $themeType?: "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon";
5
+ $themeType?: "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon" | "password";
6
6
  $state?: "active" | "hover" | "pressed" | "focus" | "disabled" | "selected";
7
7
  children?: React.ReactNode;
8
8
  $isIconButton?: boolean;
@@ -8,6 +8,8 @@ export interface InputProps extends BaseInputProps {
8
8
  size?: "normal" | "small" | "large";
9
9
  onChange?: (actionEvent: InputEvent) => void;
10
10
  value?: string;
11
+ rest?: HTMLInputElement;
12
+ isPassword?: boolean;
11
13
  }
12
14
  declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<InputRef>>;
13
15
  export default Input;
@@ -0,0 +1,3 @@
1
+ export declare const StyledFormInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<Omit<import('..').InputProps & import('react').RefAttributes<import('rc-input').InputRef>, "ref"> & {
2
+ ref?: ((instance: import('rc-input').InputRef | null) => void | import('react').DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import('react').DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import('react').RefObject<import('rc-input').InputRef> | null | undefined;
3
+ }, never>> & string & Omit<import('react').ForwardRefExoticComponent<import('..').InputProps & import('react').RefAttributes<import('rc-input').InputRef>>, keyof import('react').Component<any, {}, any>>;
@@ -1,7 +1,7 @@
1
1
  import { default as React } from 'react';
2
2
  import { STATE } from '../../constants';
3
3
  import { GenesisTheme } from '../../styles/theme/genesis-theme.types';
4
- type ThemeType = "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon";
4
+ type ThemeType = "primary" | "secondary" | "tertiary" | "destructive" | "utility" | "icon" | "password";
5
5
  type Variant = "none" | "simple";
6
6
  interface SelectTriggerProperties {
7
7
  type?: ThemeType;
@@ -1,8 +1,12 @@
1
1
  import { Change } from '../Table';
2
2
  import { InfiniteScrollChangeEvent } from '../InfiniteScrollTable/types';
3
3
  import * as React from "react";
4
+ type Item = {
5
+ label: string;
6
+ value: unknown;
7
+ };
4
8
  export type Groups = {
5
- [key: string]: string[];
9
+ [key: string]: string[] | Item[];
6
10
  };
7
11
  export interface SecondaryTableControlsRowProps {
8
12
  groups: Groups | null;
@@ -1,6 +1,12 @@
1
1
  import { PrimaryTableControlsRowProps } from './PrimaryTableControlsRow';
2
2
  import { SecondaryTableControlsRowProps } from './SecondaryTableControlsRow';
3
3
  import { ActionEvent, TableEventPayload } from '../../../types/events';
4
+ export declare const TABLE_CONTROLS_EVENTS: {
5
+ GROUP_ITEM_CLICK: string;
6
+ ORDER_CLICK: string;
7
+ PRIMARY_SORT_CHANGE: string;
8
+ INPUT_CHANGE: string;
9
+ };
4
10
  export type TableControlsData = {
5
11
  primaryTableRowData: PrimaryTableControlsRowProps;
6
12
  secondaryTableRowData?: SecondaryTableControlsRowProps;
@@ -1,2 +1,2 @@
1
- export { default } from './TableControls';
1
+ export { default, TABLE_CONTROLS_EVENTS } from './TableControls';
2
2
  export type { TableControlsProps } from './TableControls';
@@ -5,7 +5,7 @@ interface TypographyStyledProperties {
5
5
  $themeType?: keyof typeof TYPE;
6
6
  variant?: string;
7
7
  state?: keyof typeof STATE;
8
- breakpoint?: string;
8
+ breakpoint?: keyof GenesisTheme["typography"];
9
9
  color?: string;
10
10
  fontWeight?: number;
11
11
  fontSize?: string;
@@ -68,6 +68,7 @@ export type { TableWithControlsProps } from './TableWithControls';
68
68
  export { useTable } from './Table';
69
69
  export { useTableWithControls } from './TableWithControls';
70
70
  export type { UseTableConfig } from './Table';
71
+ export { TABLE_CONTROLS_EVENTS } from './Table/TableControls';
71
72
  export { default as Tabs } from './Tabs';
72
73
  export type { TabsProps } from './Tabs';
73
74
  export { default as Tile } from './Tile';
@@ -5,6 +5,7 @@ export declare const TYPE: {
5
5
  destructive: string;
6
6
  utility: string;
7
7
  icon: string;
8
+ password: string;
8
9
  };
9
10
  export declare const BREAKPOINTS: {
10
11
  wide: string;
@@ -86,6 +87,7 @@ declare const _default: {
86
87
  destructive: string;
87
88
  utility: string;
88
89
  icon: string;
90
+ password: string;
89
91
  };
90
92
  BREAKPOINTS: {
91
93
  wide: string;
package/dist/index.cjs CHANGED
@@ -59296,35 +59296,35 @@ const Avatar$1 = styled(Avatar$2)`
59296
59296
  return getGenesisClass$d(theme, type4, state);
59297
59297
  }}
59298
59298
  `;
59299
- const getBreakpoint = (breakpoint) => {
59300
- {
59301
- return "medium";
59302
- }
59303
- };
59304
- const getVariant$2 = (typography2, variant, breakpoint) => {
59299
+ const getVariant$2 = (typography2, variant, breakpoint, fontSize, fontWeight) => {
59300
+ const typeClass = typography2["medium"];
59305
59301
  return `
59306
- font-size: ${typography2[getBreakpoint()][variant].fontSize}px !important;
59307
- line-height: ${typography2[getBreakpoint()][variant].lineHeight};
59308
- letter-spacing: ${typography2[getBreakpoint()][variant].letterSpacing}px;
59309
- font-weight: ${typography2[getBreakpoint()][variant].fontWeight};
59302
+ font-size: ${typeClass}.fontSize}px !important;
59303
+ line-height: ${typeClass.lineHeight};
59304
+ letter-spacing: ${typeClass.letterSpacing}px;
59305
+ font-weight: ${typeClass.fontWeight};
59310
59306
  `;
59311
59307
  };
59312
59308
  const getColor = (color2, colors2, $themeType) => {
59313
59309
  if (color2) {
59314
59310
  return color2;
59315
59311
  }
59316
- return colors2[$themeType].active.color;
59312
+ const themeColor = colors2[$themeType];
59313
+ if (themeColor?.active?.default) {
59314
+ return themeColor.active.default;
59315
+ }
59316
+ return colors2?.secondary?.active?.default || "#000000";
59317
59317
  };
59318
59318
  const getFontFamily = (variant) => {
59319
59319
  return `
59320
59320
  ${variant.includes("digits") ? "'Roboto Mono', sans-serif" : "'Inter', sans-serif"} !important;
59321
59321
  `;
59322
59322
  };
59323
- const getGenesisTypographyClass = ({ colors: colors2, typography: typography2 }, $themeType, variant, state, breakpoint, color2, fontSize, fontWeight, $isFullWidth) => `
59323
+ const getGenesisTypographyClass = ({ colors: colors2, typography: typography2 }, $themeType, variant, state, breakpoint, color2, $isFullWidth, fontSize, fontWeight) => `
59324
59324
  &.ant-typography {
59325
59325
  font-family: ${getFontFamily(variant)};
59326
59326
  color: ${getColor(color2, colors2, $themeType)} !important;
59327
- ${getVariant$2(typography2, variant)}
59327
+ ${getVariant$2(typography2)}
59328
59328
  margin-bottom: 0 !important;
59329
59329
  width: ${$isFullWidth ? "100%" : "auto"};
59330
59330
  font-weight: ${fontWeight} !important;
@@ -59385,9 +59385,9 @@ const Paragraph = styled(
59385
59385
  state,
59386
59386
  breakpoint,
59387
59387
  color2,
59388
+ $isFullWidth,
59388
59389
  fontSize,
59389
- fontWeight,
59390
- $isFullWidth
59390
+ fontWeight
59391
59391
  );
59392
59392
  }}
59393
59393
  `;
@@ -59399,9 +59399,9 @@ const Text = styled(Typography$1.Text)`
59399
59399
  state,
59400
59400
  breakpoint,
59401
59401
  color: color2,
59402
+ $isFullWidth,
59402
59403
  fontSize,
59403
- fontWeight,
59404
- $isFullWidth
59404
+ fontWeight
59405
59405
  }) => {
59406
59406
  return getGenesisTypographyClass(
59407
59407
  theme,
@@ -59410,9 +59410,9 @@ const Text = styled(Typography$1.Text)`
59410
59410
  state,
59411
59411
  breakpoint,
59412
59412
  color2,
59413
+ $isFullWidth,
59413
59414
  fontSize,
59414
- fontWeight,
59415
- $isFullWidth
59415
+ fontWeight
59416
59416
  );
59417
59417
  }}
59418
59418
  `;
@@ -59842,7 +59842,8 @@ const TYPE = {
59842
59842
  tertiary: "tertiary",
59843
59843
  destructive: "destructive",
59844
59844
  utility: "utility",
59845
- icon: "icon"
59845
+ icon: "icon",
59846
+ password: "primary"
59846
59847
  };
59847
59848
  const BREAKPOINTS = {
59848
59849
  wide: "wide",
@@ -74120,11 +74121,11 @@ const Message$1 = ({ message: message2, handle, isThinking = false }) => {
74120
74121
  /* @__PURE__ */ jsxRuntime.jsx(TextContainer, { $isBot: isBot, children: isThinking ? /* @__PURE__ */ jsxRuntime.jsx(ThinkingIndicator, {}) : handle === "bot" ? /* @__PURE__ */ jsxRuntime.jsx(Markdown, { children: message2 }) : /* @__PURE__ */ jsxRuntime.jsx(MessageText, { children: message2 }) })
74121
74122
  ] });
74122
74123
  };
74123
- const getStateColors = (colors2, type4, state) => {
74124
+ const getStateColors = (colors2, variant, state = "themeState") => {
74124
74125
  const filled = {
74125
74126
  color: colors2.inputs.onsurface.active,
74126
74127
  borderColor: colors2[TYPE.secondary].active.borderColor,
74127
- ringColor: colors2[type4]?.focussed?.ringColor
74128
+ ringColor: colors2[variant]?.focussed?.ringColor
74128
74129
  };
74129
74130
  const success = {
74130
74131
  color: colors2.status.success.default,
@@ -74140,7 +74141,7 @@ const getStateColors = (colors2, type4, state) => {
74140
74141
  color: colors2.inputs.onsurface.active,
74141
74142
  backgroundColor: colors2.inputs.surface.active,
74142
74143
  borderColor: colors2.inputs.surface.border,
74143
- ringColor: type4 && state ? colors2[type4]?.[state]?.ringColor : void 0
74144
+ ringColor: variant && state ? colors2[variant]?.[state]?.ringColor : void 0
74144
74145
  } : null;
74145
74146
  const stateMap = {
74146
74147
  filled,
@@ -74155,8 +74156,8 @@ const getStateColors = (colors2, type4, state) => {
74155
74156
  const css = stateMap[getValidKey(state)];
74156
74157
  return css;
74157
74158
  };
74158
- const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, components: components2, shadows: shadows2 }, type4, state, hasBeforeAddon, hasAfterAddon, size) => {
74159
- const stateColors = getStateColors(colors2, type4, state);
74159
+ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, components: components2, shadows: shadows2 }, type4, state, hasBeforeAddon, hasAfterAddon, size, variant) => {
74160
+ const stateColors = getStateColors(colors2, variant, state);
74160
74161
  const getBorderRadius = (hasBeforeAddon2, hasAfterAddon2) => {
74161
74162
  if (hasAfterAddon2 && !hasBeforeAddon2) {
74162
74163
  return `${borderRadius2.BorderRadiusMd}px 0px 0px ${borderRadius2.BorderRadiusMd}px`;
@@ -74180,8 +74181,8 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74180
74181
  &.ant-input.ant-input:focus-visible,
74181
74182
  &.ant-input.ant-input-focused {
74182
74183
  outline: none !important;
74183
- border-color: ${colors2[type4].focussed.borderColor} !important;
74184
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor} !important;
74184
+ border-color: ${colors2[variant].focussed.borderColor} !important;
74185
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor} !important;
74185
74186
  }
74186
74187
 
74187
74188
  &.ant-input-outlined {
@@ -74197,13 +74198,13 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74197
74198
  outline: none;
74198
74199
  color: ${stateColors.color};
74199
74200
  box-shadow: none;
74200
- border-color: ${colors2[type4].focussed.borderColor};
74201
+ border-color: ${colors2[variant].focussed.borderColor};
74201
74202
  }
74202
74203
  }
74203
74204
 
74204
74205
  .ant-input-group:focus-within {
74205
74206
  outline: none;
74206
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74207
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74207
74208
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74208
74209
  transition: box-shadow 0.2s ease-in-out;
74209
74210
 
@@ -74211,7 +74212,7 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74211
74212
  .ant-input:focus-within {
74212
74213
  box-shadow: none;
74213
74214
  border-radius: 0;
74214
- border-radius: ${getBorderRadius(hasBeforeAddon, hasAfterAddon)};
74215
+ border-radius: ${getBorderRadius(hasBeforeAddon || false, hasAfterAddon || false)};
74215
74216
  border-color: #ddd;
74216
74217
  }
74217
74218
  }
@@ -74222,13 +74223,13 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74222
74223
  .ant-input-group .ant-input:focus-within {
74223
74224
  outline: none;
74224
74225
  box-shadow: none;
74225
- border-color: ${colors2[type4].focussed.borderColor};
74226
+ border-color: ${colors2[variant].focussed.borderColor};
74226
74227
  }
74227
74228
 
74228
74229
  /* Single focus ring on group */
74229
74230
  .ant-input-group:focus-within {
74230
74231
  outline: none;
74231
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74232
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74232
74233
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74233
74234
  transition: box-shadow 0.2s ease-in-out;
74234
74235
  }
@@ -74237,18 +74238,18 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74237
74238
  &:not(.ant-input-group):focus-visible {
74238
74239
  outline: none;
74239
74240
  color: ${stateColors.color};
74240
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74241
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74241
74242
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74242
- border-color: ${colors2[type4].focussed.borderColor};
74243
+ border-color: ${colors2[variant].focussed.borderColor};
74243
74244
  transition: box-shadow 0.2s ease-in-out;
74244
74245
  }
74245
74246
 
74246
74247
  &:not(.ant-input-group .ant-input):focus-visible {
74247
74248
  outline: none;
74248
74249
  color: ${stateColors.color};
74249
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74250
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74250
74251
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74251
- border-color: ${colors2[type4].focussed.borderColor};
74252
+ border-color: ${colors2[variant].focussed.borderColor};
74252
74253
  transition: box-shadow 0.2s ease-in-out;
74253
74254
  }
74254
74255
 
@@ -74289,7 +74290,7 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74289
74290
  `;
74290
74291
  };
74291
74292
  const Input$1 = styled(Input$2)`
74292
- ${({ theme, state, type: type4 = TYPE.primary, size = "normal", ...rest }) => {
74293
+ ${({ theme, state, type: type4, size = "normal", ...rest }) => {
74293
74294
  const hasBeforeAddon = !!rest.addonBefore;
74294
74295
  const hasAfterAddon = !!rest.addonAfter;
74295
74296
  return getGenesisInputClass(
@@ -74298,7 +74299,8 @@ const Input$1 = styled(Input$2)`
74298
74299
  state,
74299
74300
  hasBeforeAddon,
74300
74301
  hasAfterAddon,
74301
- size
74302
+ size,
74303
+ TYPE.primary
74302
74304
  );
74303
74305
  }}
74304
74306
  `;
@@ -74330,9 +74332,9 @@ const Input2 = React.forwardRef(
74330
74332
  size = "normal",
74331
74333
  onChange,
74332
74334
  value: value2,
74335
+ isPassword,
74333
74336
  ...rest
74334
74337
  }, ref) => {
74335
- const { type: type4, ...validRest } = rest;
74336
74338
  const addonAfter = React.isValidElement(rest.addonAfter) && rest.addonAfter.type === Select$1 ? React.cloneElement(
74337
74339
  rest.addonAfter,
74338
74340
  {
@@ -74355,7 +74357,7 @@ const Input2 = React.forwardRef(
74355
74357
  return /* @__PURE__ */ jsxRuntime.jsx(
74356
74358
  Input$1,
74357
74359
  {
74358
- ...validRest,
74360
+ ...rest,
74359
74361
  ref,
74360
74362
  size,
74361
74363
  state,
@@ -74790,6 +74792,53 @@ const Solid = (properties) => /* @__PURE__ */ jsxRuntime.jsx(
74790
74792
  const UnitNumber = ({ variant }) => {
74791
74793
  return variant === "outline" ? /* @__PURE__ */ jsxRuntime.jsx(Outline, {}) : /* @__PURE__ */ jsxRuntime.jsx(Solid, {});
74792
74794
  };
74795
+ const StyledFormInput = styled(Input2)`
74796
+ /* Ensure the border color matches regular Input using Genesis theme token */
74797
+ &.ant-input,
74798
+ .ant-input-group .ant-input {
74799
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74800
+ }
74801
+
74802
+ /* Input group wrapper styling - most specific selector for addon scenarios */
74803
+ &.ant-input-group-wrapper .ant-input-group {
74804
+ .ant-input {
74805
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74806
+ }
74807
+
74808
+ .ant-input-group-addon {
74809
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74810
+ background-color: #f5f5f5;
74811
+ }
74812
+ }
74813
+
74814
+ /* When input is in a group wrapper */
74815
+ .ant-input-group-wrapper & {
74816
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74817
+ }
74818
+
74819
+ /* Direct targeting of input group elements */
74820
+ .ant-input-group .ant-input {
74821
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74822
+ }
74823
+
74824
+ .ant-input-group-addon {
74825
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74826
+ }
74827
+
74828
+ /* Hover and focus states should maintain the correct colors */
74829
+ &.ant-input:hover,
74830
+ &.ant-input:focus,
74831
+ .ant-input-group .ant-input:hover,
74832
+ .ant-input-group .ant-input:focus,
74833
+ .ant-input-group-wrapper .ant-input-group:hover .ant-input,
74834
+ .ant-input-group-wrapper .ant-input-group:focus-within .ant-input,
74835
+ .ant-input-group-wrapper .ant-input-group:hover .ant-input-group-addon,
74836
+ .ant-input-group-wrapper
74837
+ .ant-input-group:focus-within
74838
+ .ant-input-group-addon {
74839
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74840
+ }
74841
+ `;
74793
74842
  const defaultValidator = (_rule, value2) => {
74794
74843
  console.log(`Validating value: ${value2}, Type: ${typeof value2}`);
74795
74844
  if (!value2 || /^\d+$/.test(value2)) {
@@ -74810,7 +74859,7 @@ const FormInput = React.forwardRef((props, ref) => {
74810
74859
  const { addonBefore, addonAfter, placeholder } = inputProps;
74811
74860
  if (addonBefore && !addonAfter) {
74812
74861
  return /* @__PURE__ */ jsxRuntime.jsx(
74813
- Input2,
74862
+ StyledFormInput,
74814
74863
  {
74815
74864
  ...inputProps,
74816
74865
  ref,
@@ -74824,7 +74873,7 @@ const FormInput = React.forwardRef((props, ref) => {
74824
74873
  }
74825
74874
  if (addonAfter && !addonBefore) {
74826
74875
  return /* @__PURE__ */ jsxRuntime.jsx(
74827
- Input2,
74876
+ StyledFormInput,
74828
74877
  {
74829
74878
  ...inputProps,
74830
74879
  ref,
@@ -74837,7 +74886,7 @@ const FormInput = React.forwardRef((props, ref) => {
74837
74886
  );
74838
74887
  }
74839
74888
  return /* @__PURE__ */ jsxRuntime.jsx(
74840
- Input2,
74889
+ StyledFormInput,
74841
74890
  {
74842
74891
  ...inputProps,
74843
74892
  ref,
@@ -81696,10 +81745,18 @@ const Progress = ({
81696
81745
  alignItems: "center",
81697
81746
  width: percentDisplayWidth
81698
81747
  },
81699
- children: /* @__PURE__ */ jsxRuntime.jsxs(Typography, { color: overrideTextColor ?? textColor, variant: "digits3", children: [
81700
- overallPercent,
81701
- "%"
81702
- ] })
81748
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
81749
+ Typography,
81750
+ {
81751
+ color: overrideTextColor ?? textColor,
81752
+ variant: "digits3",
81753
+ fontWeight: 700,
81754
+ children: [
81755
+ overallPercent,
81756
+ "%"
81757
+ ]
81758
+ }
81759
+ )
81703
81760
  }
81704
81761
  )
81705
81762
  ] });
@@ -81758,10 +81815,18 @@ const Progress = ({
81758
81815
  alignItems: "center",
81759
81816
  width: percentDisplayWidth
81760
81817
  },
81761
- children: /* @__PURE__ */ jsxRuntime.jsxs(Typography, { color: overrideTextColor ?? textColor, variant: "digits3", children: [
81762
- combinedPercent,
81763
- "%"
81764
- ] })
81818
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
81819
+ Typography,
81820
+ {
81821
+ color: overrideTextColor ?? textColor,
81822
+ variant: "digits3",
81823
+ fontWeight: 700,
81824
+ children: [
81825
+ combinedPercent,
81826
+ "%"
81827
+ ]
81828
+ }
81829
+ )
81765
81830
  }
81766
81831
  )
81767
81832
  ] });
@@ -82546,6 +82611,7 @@ const TypographyWideFontSizeBody1 = 16;
82546
82611
  const TypographyMediumFontSizeBody1 = 16;
82547
82612
  const TypographyWideFontSizeHeading3 = Size4;
82548
82613
  const TypographyWideFontSizeSubHeading1 = 20;
82614
+ const TypographyWideFontSizeSubHeading2 = 16;
82549
82615
  const TypographyWideFontSizeSubHeading3 = 14;
82550
82616
  const TypographyWideFontSizeBody2 = 14;
82551
82617
  const TypographyWideFontSizeBody3 = 12;
@@ -82744,9 +82810,9 @@ const wideTypography = {
82744
82810
  letterSpacing: "0"
82745
82811
  },
82746
82812
  subHeading2: {
82747
- fontSize: "24px",
82748
- lineHeight: "32px",
82749
- fontWeight: 400,
82813
+ fontSize: TypographyWideFontSizeSubHeading2,
82814
+ lineHeight: "1.25rem",
82815
+ fontWeight: 600,
82750
82816
  letterSpacing: "0"
82751
82817
  },
82752
82818
  subHeading3: {
@@ -85766,7 +85832,7 @@ const GroupItem = ({
85766
85832
  onGroupItemClick,
85767
85833
  getCustomIcon
85768
85834
  }) => {
85769
- if (items.length === 0) return null;
85835
+ if (!items || items?.length === 0) return null;
85770
85836
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
85771
85837
  /* @__PURE__ */ jsxRuntime.jsx(Tooltip2, { tip: title, isAbsolutePositioned: false, children: /* @__PURE__ */ jsxRuntime.jsx(
85772
85838
  "div",
@@ -85781,18 +85847,21 @@ const GroupItem = ({
85781
85847
  children: getCustomIcon ? getCustomIcon(title) : getIcon$1(title)
85782
85848
  }
85783
85849
  ) }),
85784
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: { display: "flex", gap: 4 }, children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
85785
- Badge$1,
85786
- {
85787
- label: item,
85788
- hasClose: true,
85789
- hasIcon: false,
85790
- state: "generic",
85791
- size: "small",
85792
- onClick: () => onGroupItemClick(title, item)
85793
- },
85794
- item.toString()
85795
- )) })
85850
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: { display: "flex", gap: 4 }, children: items?.map((item) => {
85851
+ const isObjectItem = typeof item === "object" && item !== null && "label" in item && "value" in item;
85852
+ return /* @__PURE__ */ jsxRuntime.jsx(
85853
+ Badge$1,
85854
+ {
85855
+ label: isObjectItem ? item.label : item?.toString() || "Undefined",
85856
+ hasClose: true,
85857
+ hasIcon: false,
85858
+ state: "generic",
85859
+ size: "small",
85860
+ onClick: () => onGroupItemClick(title, item)
85861
+ },
85862
+ !item ? "Undefined" : item?.toString()
85863
+ );
85864
+ }) })
85796
85865
  ] });
85797
85866
  };
85798
85867
  const GroupsRow = ({
@@ -85809,7 +85878,7 @@ const GroupsRow = ({
85809
85878
  GroupItem,
85810
85879
  {
85811
85880
  title: group.title,
85812
- items: group.items,
85881
+ items: group?.items,
85813
85882
  onGroupItemClick,
85814
85883
  getCustomIcon
85815
85884
  },
@@ -85910,6 +85979,12 @@ const SecondaryTableControlsRow = ({
85910
85979
  }
85911
85980
  );
85912
85981
  };
85982
+ const TABLE_CONTROLS_EVENTS = {
85983
+ GROUP_ITEM_CLICK: "groupItemClick",
85984
+ ORDER_CLICK: "orderClick",
85985
+ PRIMARY_SORT_CHANGE: "primarySortChange",
85986
+ INPUT_CHANGE: "inputChange"
85987
+ };
85913
85988
  const TableControls = ({
85914
85989
  primaryTableRowData,
85915
85990
  secondaryTableRowData,
@@ -87409,6 +87484,7 @@ exports.SegmentedControls = SegmentedControls;
87409
87484
  exports.Select = Select;
87410
87485
  exports.Shapes = Shapes;
87411
87486
  exports.Switch = Switch;
87487
+ exports.TABLE_CONTROLS_EVENTS = TABLE_CONTROLS_EVENTS;
87412
87488
  exports.Table = TablePagination;
87413
87489
  exports.TableWithControls = TableWithControls;
87414
87490
  exports.Tabs = Tabs;
package/dist/index.js CHANGED
@@ -59278,35 +59278,35 @@ const Avatar$1 = styled(Avatar$2)`
59278
59278
  return getGenesisClass$d(theme, type4, state);
59279
59279
  }}
59280
59280
  `;
59281
- const getBreakpoint = (breakpoint) => {
59282
- {
59283
- return "medium";
59284
- }
59285
- };
59286
- const getVariant$2 = (typography2, variant, breakpoint) => {
59281
+ const getVariant$2 = (typography2, variant, breakpoint, fontSize, fontWeight) => {
59282
+ const typeClass = typography2["medium"];
59287
59283
  return `
59288
- font-size: ${typography2[getBreakpoint()][variant].fontSize}px !important;
59289
- line-height: ${typography2[getBreakpoint()][variant].lineHeight};
59290
- letter-spacing: ${typography2[getBreakpoint()][variant].letterSpacing}px;
59291
- font-weight: ${typography2[getBreakpoint()][variant].fontWeight};
59284
+ font-size: ${typeClass}.fontSize}px !important;
59285
+ line-height: ${typeClass.lineHeight};
59286
+ letter-spacing: ${typeClass.letterSpacing}px;
59287
+ font-weight: ${typeClass.fontWeight};
59292
59288
  `;
59293
59289
  };
59294
59290
  const getColor = (color2, colors2, $themeType) => {
59295
59291
  if (color2) {
59296
59292
  return color2;
59297
59293
  }
59298
- return colors2[$themeType].active.color;
59294
+ const themeColor = colors2[$themeType];
59295
+ if (themeColor?.active?.default) {
59296
+ return themeColor.active.default;
59297
+ }
59298
+ return colors2?.secondary?.active?.default || "#000000";
59299
59299
  };
59300
59300
  const getFontFamily = (variant) => {
59301
59301
  return `
59302
59302
  ${variant.includes("digits") ? "'Roboto Mono', sans-serif" : "'Inter', sans-serif"} !important;
59303
59303
  `;
59304
59304
  };
59305
- const getGenesisTypographyClass = ({ colors: colors2, typography: typography2 }, $themeType, variant, state, breakpoint, color2, fontSize, fontWeight, $isFullWidth) => `
59305
+ const getGenesisTypographyClass = ({ colors: colors2, typography: typography2 }, $themeType, variant, state, breakpoint, color2, $isFullWidth, fontSize, fontWeight) => `
59306
59306
  &.ant-typography {
59307
59307
  font-family: ${getFontFamily(variant)};
59308
59308
  color: ${getColor(color2, colors2, $themeType)} !important;
59309
- ${getVariant$2(typography2, variant)}
59309
+ ${getVariant$2(typography2)}
59310
59310
  margin-bottom: 0 !important;
59311
59311
  width: ${$isFullWidth ? "100%" : "auto"};
59312
59312
  font-weight: ${fontWeight} !important;
@@ -59367,9 +59367,9 @@ const Paragraph = styled(
59367
59367
  state,
59368
59368
  breakpoint,
59369
59369
  color2,
59370
+ $isFullWidth,
59370
59371
  fontSize,
59371
- fontWeight,
59372
- $isFullWidth
59372
+ fontWeight
59373
59373
  );
59374
59374
  }}
59375
59375
  `;
@@ -59381,9 +59381,9 @@ const Text = styled(Typography$1.Text)`
59381
59381
  state,
59382
59382
  breakpoint,
59383
59383
  color: color2,
59384
+ $isFullWidth,
59384
59385
  fontSize,
59385
- fontWeight,
59386
- $isFullWidth
59386
+ fontWeight
59387
59387
  }) => {
59388
59388
  return getGenesisTypographyClass(
59389
59389
  theme,
@@ -59392,9 +59392,9 @@ const Text = styled(Typography$1.Text)`
59392
59392
  state,
59393
59393
  breakpoint,
59394
59394
  color2,
59395
+ $isFullWidth,
59395
59396
  fontSize,
59396
- fontWeight,
59397
- $isFullWidth
59397
+ fontWeight
59398
59398
  );
59399
59399
  }}
59400
59400
  `;
@@ -59824,7 +59824,8 @@ const TYPE = {
59824
59824
  tertiary: "tertiary",
59825
59825
  destructive: "destructive",
59826
59826
  utility: "utility",
59827
- icon: "icon"
59827
+ icon: "icon",
59828
+ password: "primary"
59828
59829
  };
59829
59830
  const BREAKPOINTS = {
59830
59831
  wide: "wide",
@@ -74102,11 +74103,11 @@ const Message$1 = ({ message: message2, handle, isThinking = false }) => {
74102
74103
  /* @__PURE__ */ jsx(TextContainer, { $isBot: isBot, children: isThinking ? /* @__PURE__ */ jsx(ThinkingIndicator, {}) : handle === "bot" ? /* @__PURE__ */ jsx(Markdown, { children: message2 }) : /* @__PURE__ */ jsx(MessageText, { children: message2 }) })
74103
74104
  ] });
74104
74105
  };
74105
- const getStateColors = (colors2, type4, state) => {
74106
+ const getStateColors = (colors2, variant, state = "themeState") => {
74106
74107
  const filled = {
74107
74108
  color: colors2.inputs.onsurface.active,
74108
74109
  borderColor: colors2[TYPE.secondary].active.borderColor,
74109
- ringColor: colors2[type4]?.focussed?.ringColor
74110
+ ringColor: colors2[variant]?.focussed?.ringColor
74110
74111
  };
74111
74112
  const success = {
74112
74113
  color: colors2.status.success.default,
@@ -74122,7 +74123,7 @@ const getStateColors = (colors2, type4, state) => {
74122
74123
  color: colors2.inputs.onsurface.active,
74123
74124
  backgroundColor: colors2.inputs.surface.active,
74124
74125
  borderColor: colors2.inputs.surface.border,
74125
- ringColor: type4 && state ? colors2[type4]?.[state]?.ringColor : void 0
74126
+ ringColor: variant && state ? colors2[variant]?.[state]?.ringColor : void 0
74126
74127
  } : null;
74127
74128
  const stateMap = {
74128
74129
  filled,
@@ -74137,8 +74138,8 @@ const getStateColors = (colors2, type4, state) => {
74137
74138
  const css = stateMap[getValidKey(state)];
74138
74139
  return css;
74139
74140
  };
74140
- const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, components: components2, shadows: shadows2 }, type4, state, hasBeforeAddon, hasAfterAddon, size) => {
74141
- const stateColors = getStateColors(colors2, type4, state);
74141
+ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, components: components2, shadows: shadows2 }, type4, state, hasBeforeAddon, hasAfterAddon, size, variant) => {
74142
+ const stateColors = getStateColors(colors2, variant, state);
74142
74143
  const getBorderRadius = (hasBeforeAddon2, hasAfterAddon2) => {
74143
74144
  if (hasAfterAddon2 && !hasBeforeAddon2) {
74144
74145
  return `${borderRadius2.BorderRadiusMd}px 0px 0px ${borderRadius2.BorderRadiusMd}px`;
@@ -74162,8 +74163,8 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74162
74163
  &.ant-input.ant-input:focus-visible,
74163
74164
  &.ant-input.ant-input-focused {
74164
74165
  outline: none !important;
74165
- border-color: ${colors2[type4].focussed.borderColor} !important;
74166
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor} !important;
74166
+ border-color: ${colors2[variant].focussed.borderColor} !important;
74167
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor} !important;
74167
74168
  }
74168
74169
 
74169
74170
  &.ant-input-outlined {
@@ -74179,13 +74180,13 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74179
74180
  outline: none;
74180
74181
  color: ${stateColors.color};
74181
74182
  box-shadow: none;
74182
- border-color: ${colors2[type4].focussed.borderColor};
74183
+ border-color: ${colors2[variant].focussed.borderColor};
74183
74184
  }
74184
74185
  }
74185
74186
 
74186
74187
  .ant-input-group:focus-within {
74187
74188
  outline: none;
74188
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74189
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74189
74190
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74190
74191
  transition: box-shadow 0.2s ease-in-out;
74191
74192
 
@@ -74193,7 +74194,7 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74193
74194
  .ant-input:focus-within {
74194
74195
  box-shadow: none;
74195
74196
  border-radius: 0;
74196
- border-radius: ${getBorderRadius(hasBeforeAddon, hasAfterAddon)};
74197
+ border-radius: ${getBorderRadius(hasBeforeAddon || false, hasAfterAddon || false)};
74197
74198
  border-color: #ddd;
74198
74199
  }
74199
74200
  }
@@ -74204,13 +74205,13 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74204
74205
  .ant-input-group .ant-input:focus-within {
74205
74206
  outline: none;
74206
74207
  box-shadow: none;
74207
- border-color: ${colors2[type4].focussed.borderColor};
74208
+ border-color: ${colors2[variant].focussed.borderColor};
74208
74209
  }
74209
74210
 
74210
74211
  /* Single focus ring on group */
74211
74212
  .ant-input-group:focus-within {
74212
74213
  outline: none;
74213
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74214
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74214
74215
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74215
74216
  transition: box-shadow 0.2s ease-in-out;
74216
74217
  }
@@ -74219,18 +74220,18 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74219
74220
  &:not(.ant-input-group):focus-visible {
74220
74221
  outline: none;
74221
74222
  color: ${stateColors.color};
74222
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74223
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74223
74224
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74224
- border-color: ${colors2[type4].focussed.borderColor};
74225
+ border-color: ${colors2[variant].focussed.borderColor};
74225
74226
  transition: box-shadow 0.2s ease-in-out;
74226
74227
  }
74227
74228
 
74228
74229
  &:not(.ant-input-group .ant-input):focus-visible {
74229
74230
  outline: none;
74230
74231
  color: ${stateColors.color};
74231
- box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[type4].focussed.ringColor};
74232
+ box-shadow: 0 0 0 1px #fff, 0 0 0 3px ${colors2[variant].focussed.ringColor};
74232
74233
  border-radius: ${borderRadius2.BorderRadiusMd}px;
74233
- border-color: ${colors2[type4].focussed.borderColor};
74234
+ border-color: ${colors2[variant].focussed.borderColor};
74234
74235
  transition: box-shadow 0.2s ease-in-out;
74235
74236
  }
74236
74237
 
@@ -74271,7 +74272,7 @@ const getGenesisInputClass = ({ colors: colors2, borderRadius: borderRadius2, co
74271
74272
  `;
74272
74273
  };
74273
74274
  const Input$1 = styled(Input$2)`
74274
- ${({ theme, state, type: type4 = TYPE.primary, size = "normal", ...rest }) => {
74275
+ ${({ theme, state, type: type4, size = "normal", ...rest }) => {
74275
74276
  const hasBeforeAddon = !!rest.addonBefore;
74276
74277
  const hasAfterAddon = !!rest.addonAfter;
74277
74278
  return getGenesisInputClass(
@@ -74280,7 +74281,8 @@ const Input$1 = styled(Input$2)`
74280
74281
  state,
74281
74282
  hasBeforeAddon,
74282
74283
  hasAfterAddon,
74283
- size
74284
+ size,
74285
+ TYPE.primary
74284
74286
  );
74285
74287
  }}
74286
74288
  `;
@@ -74312,9 +74314,9 @@ const Input2 = React__default.forwardRef(
74312
74314
  size = "normal",
74313
74315
  onChange,
74314
74316
  value: value2,
74317
+ isPassword,
74315
74318
  ...rest
74316
74319
  }, ref) => {
74317
- const { type: type4, ...validRest } = rest;
74318
74320
  const addonAfter = React__default.isValidElement(rest.addonAfter) && rest.addonAfter.type === Select$1 ? React__default.cloneElement(
74319
74321
  rest.addonAfter,
74320
74322
  {
@@ -74337,7 +74339,7 @@ const Input2 = React__default.forwardRef(
74337
74339
  return /* @__PURE__ */ jsx(
74338
74340
  Input$1,
74339
74341
  {
74340
- ...validRest,
74342
+ ...rest,
74341
74343
  ref,
74342
74344
  size,
74343
74345
  state,
@@ -74772,6 +74774,53 @@ const Solid = (properties) => /* @__PURE__ */ jsx(
74772
74774
  const UnitNumber = ({ variant }) => {
74773
74775
  return variant === "outline" ? /* @__PURE__ */ jsx(Outline, {}) : /* @__PURE__ */ jsx(Solid, {});
74774
74776
  };
74777
+ const StyledFormInput = styled(Input2)`
74778
+ /* Ensure the border color matches regular Input using Genesis theme token */
74779
+ &.ant-input,
74780
+ .ant-input-group .ant-input {
74781
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74782
+ }
74783
+
74784
+ /* Input group wrapper styling - most specific selector for addon scenarios */
74785
+ &.ant-input-group-wrapper .ant-input-group {
74786
+ .ant-input {
74787
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74788
+ }
74789
+
74790
+ .ant-input-group-addon {
74791
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74792
+ background-color: #f5f5f5;
74793
+ }
74794
+ }
74795
+
74796
+ /* When input is in a group wrapper */
74797
+ .ant-input-group-wrapper & {
74798
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74799
+ }
74800
+
74801
+ /* Direct targeting of input group elements */
74802
+ .ant-input-group .ant-input {
74803
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74804
+ }
74805
+
74806
+ .ant-input-group-addon {
74807
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74808
+ }
74809
+
74810
+ /* Hover and focus states should maintain the correct colors */
74811
+ &.ant-input:hover,
74812
+ &.ant-input:focus,
74813
+ .ant-input-group .ant-input:hover,
74814
+ .ant-input-group .ant-input:focus,
74815
+ .ant-input-group-wrapper .ant-input-group:hover .ant-input,
74816
+ .ant-input-group-wrapper .ant-input-group:focus-within .ant-input,
74817
+ .ant-input-group-wrapper .ant-input-group:hover .ant-input-group-addon,
74818
+ .ant-input-group-wrapper
74819
+ .ant-input-group:focus-within
74820
+ .ant-input-group-addon {
74821
+ border-color: ${({ theme }) => theme.colors.inputs.surface.border} !important;
74822
+ }
74823
+ `;
74775
74824
  const defaultValidator = (_rule, value2) => {
74776
74825
  console.log(`Validating value: ${value2}, Type: ${typeof value2}`);
74777
74826
  if (!value2 || /^\d+$/.test(value2)) {
@@ -74792,7 +74841,7 @@ const FormInput = React__default.forwardRef((props, ref) => {
74792
74841
  const { addonBefore, addonAfter, placeholder } = inputProps;
74793
74842
  if (addonBefore && !addonAfter) {
74794
74843
  return /* @__PURE__ */ jsx(
74795
- Input2,
74844
+ StyledFormInput,
74796
74845
  {
74797
74846
  ...inputProps,
74798
74847
  ref,
@@ -74806,7 +74855,7 @@ const FormInput = React__default.forwardRef((props, ref) => {
74806
74855
  }
74807
74856
  if (addonAfter && !addonBefore) {
74808
74857
  return /* @__PURE__ */ jsx(
74809
- Input2,
74858
+ StyledFormInput,
74810
74859
  {
74811
74860
  ...inputProps,
74812
74861
  ref,
@@ -74819,7 +74868,7 @@ const FormInput = React__default.forwardRef((props, ref) => {
74819
74868
  );
74820
74869
  }
74821
74870
  return /* @__PURE__ */ jsx(
74822
- Input2,
74871
+ StyledFormInput,
74823
74872
  {
74824
74873
  ...inputProps,
74825
74874
  ref,
@@ -81678,10 +81727,18 @@ const Progress = ({
81678
81727
  alignItems: "center",
81679
81728
  width: percentDisplayWidth
81680
81729
  },
81681
- children: /* @__PURE__ */ jsxs(Typography, { color: overrideTextColor ?? textColor, variant: "digits3", children: [
81682
- overallPercent,
81683
- "%"
81684
- ] })
81730
+ children: /* @__PURE__ */ jsxs(
81731
+ Typography,
81732
+ {
81733
+ color: overrideTextColor ?? textColor,
81734
+ variant: "digits3",
81735
+ fontWeight: 700,
81736
+ children: [
81737
+ overallPercent,
81738
+ "%"
81739
+ ]
81740
+ }
81741
+ )
81685
81742
  }
81686
81743
  )
81687
81744
  ] });
@@ -81740,10 +81797,18 @@ const Progress = ({
81740
81797
  alignItems: "center",
81741
81798
  width: percentDisplayWidth
81742
81799
  },
81743
- children: /* @__PURE__ */ jsxs(Typography, { color: overrideTextColor ?? textColor, variant: "digits3", children: [
81744
- combinedPercent,
81745
- "%"
81746
- ] })
81800
+ children: /* @__PURE__ */ jsxs(
81801
+ Typography,
81802
+ {
81803
+ color: overrideTextColor ?? textColor,
81804
+ variant: "digits3",
81805
+ fontWeight: 700,
81806
+ children: [
81807
+ combinedPercent,
81808
+ "%"
81809
+ ]
81810
+ }
81811
+ )
81747
81812
  }
81748
81813
  )
81749
81814
  ] });
@@ -82528,6 +82593,7 @@ const TypographyWideFontSizeBody1 = 16;
82528
82593
  const TypographyMediumFontSizeBody1 = 16;
82529
82594
  const TypographyWideFontSizeHeading3 = Size4;
82530
82595
  const TypographyWideFontSizeSubHeading1 = 20;
82596
+ const TypographyWideFontSizeSubHeading2 = 16;
82531
82597
  const TypographyWideFontSizeSubHeading3 = 14;
82532
82598
  const TypographyWideFontSizeBody2 = 14;
82533
82599
  const TypographyWideFontSizeBody3 = 12;
@@ -82726,9 +82792,9 @@ const wideTypography = {
82726
82792
  letterSpacing: "0"
82727
82793
  },
82728
82794
  subHeading2: {
82729
- fontSize: "24px",
82730
- lineHeight: "32px",
82731
- fontWeight: 400,
82795
+ fontSize: TypographyWideFontSizeSubHeading2,
82796
+ lineHeight: "1.25rem",
82797
+ fontWeight: 600,
82732
82798
  letterSpacing: "0"
82733
82799
  },
82734
82800
  subHeading3: {
@@ -85748,7 +85814,7 @@ const GroupItem = ({
85748
85814
  onGroupItemClick,
85749
85815
  getCustomIcon
85750
85816
  }) => {
85751
- if (items.length === 0) return null;
85817
+ if (!items || items?.length === 0) return null;
85752
85818
  return /* @__PURE__ */ jsxs(Fragment, { children: [
85753
85819
  /* @__PURE__ */ jsx(Tooltip2, { tip: title, isAbsolutePositioned: false, children: /* @__PURE__ */ jsx(
85754
85820
  "div",
@@ -85763,18 +85829,21 @@ const GroupItem = ({
85763
85829
  children: getCustomIcon ? getCustomIcon(title) : getIcon$1(title)
85764
85830
  }
85765
85831
  ) }),
85766
- /* @__PURE__ */ jsx("div", { style: { display: "flex", gap: 4 }, children: items.map((item) => /* @__PURE__ */ jsx(
85767
- Badge$1,
85768
- {
85769
- label: item,
85770
- hasClose: true,
85771
- hasIcon: false,
85772
- state: "generic",
85773
- size: "small",
85774
- onClick: () => onGroupItemClick(title, item)
85775
- },
85776
- item.toString()
85777
- )) })
85832
+ /* @__PURE__ */ jsx("div", { style: { display: "flex", gap: 4 }, children: items?.map((item) => {
85833
+ const isObjectItem = typeof item === "object" && item !== null && "label" in item && "value" in item;
85834
+ return /* @__PURE__ */ jsx(
85835
+ Badge$1,
85836
+ {
85837
+ label: isObjectItem ? item.label : item?.toString() || "Undefined",
85838
+ hasClose: true,
85839
+ hasIcon: false,
85840
+ state: "generic",
85841
+ size: "small",
85842
+ onClick: () => onGroupItemClick(title, item)
85843
+ },
85844
+ !item ? "Undefined" : item?.toString()
85845
+ );
85846
+ }) })
85778
85847
  ] });
85779
85848
  };
85780
85849
  const GroupsRow = ({
@@ -85791,7 +85860,7 @@ const GroupsRow = ({
85791
85860
  GroupItem,
85792
85861
  {
85793
85862
  title: group.title,
85794
- items: group.items,
85863
+ items: group?.items,
85795
85864
  onGroupItemClick,
85796
85865
  getCustomIcon
85797
85866
  },
@@ -85892,6 +85961,12 @@ const SecondaryTableControlsRow = ({
85892
85961
  }
85893
85962
  );
85894
85963
  };
85964
+ const TABLE_CONTROLS_EVENTS = {
85965
+ GROUP_ITEM_CLICK: "groupItemClick",
85966
+ ORDER_CLICK: "orderClick",
85967
+ PRIMARY_SORT_CHANGE: "primarySortChange",
85968
+ INPUT_CHANGE: "inputChange"
85969
+ };
85895
85970
  const TableControls = ({
85896
85971
  primaryTableRowData,
85897
85972
  secondaryTableRowData,
@@ -87392,6 +87467,7 @@ export {
87392
87467
  Select,
87393
87468
  Shapes,
87394
87469
  Switch,
87470
+ TABLE_CONTROLS_EVENTS,
87395
87471
  TablePagination as Table,
87396
87472
  TableWithControls,
87397
87473
  Tabs,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gobolt/genesis",
3
- "version": "0.6.1",
3
+ "version": "0.6.2",
4
4
  "description": "genesis design system",
5
5
  "author": "gobolt",
6
6
  "license": "MIT",