design-zystem 1.0.285 → 1.0.286

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/index.d.mts CHANGED
@@ -36,6 +36,22 @@ interface BoxProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
36
36
  borderColor?: string;
37
37
  /** Colored halo around the box, for transient states (unsaved, selected, in error). */
38
38
  shadowColor?: string;
39
+ /** Explicit width, wins over `fullWidth`. The box stays in `content-box`, so a border adds to it. */
40
+ width?: string;
41
+ /** Explicit min-width, wins over `fullWidth`. Pair with `width` for a column that must not shrink. */
42
+ minWidth?: string;
43
+ /** Floor height of a flex child; `minHeight="0"` lets it shrink below its content so an inner area can scroll. */
44
+ minHeight?: string;
45
+ /** `flex` shorthand when the box is itself a flex child (e.g. `0 0 250px`, `1 1 auto`). */
46
+ flex?: string;
47
+ /** Stacking direction of the box's own children — the box is a `row` by default. */
48
+ flexDirection?: string;
49
+ /** Clips or scrolls the content (`hidden`, `auto`…); the box shows overflowing content by default. */
50
+ overflow?: string;
51
+ /** Positioning scheme; the box is `relative` by default, so children can already be absolute against it. */
52
+ position?: string;
53
+ /** `inset` shorthand, meaningful with `position="absolute"` (e.g. `0` to fill the positioned ancestor). */
54
+ inset?: string;
39
55
  style?: CSSProperties;
40
56
  }
41
57
  declare const Box: ({ children, hasShadow, ...rest }: BoxProps) => react_jsx_runtime.JSX.Element;
@@ -70,6 +86,18 @@ interface RowProps extends HTMLAttributes<HTMLDivElement> {
70
86
  width?: string;
71
87
  wrap?: string;
72
88
  backgroundColor?: string;
89
+ /** `flex` shorthand when the row is itself a flex child (e.g. `1 1 auto` to absorb the leftover height). */
90
+ flex?: string;
91
+ /** Floor height of a flex child; `minHeight="0"` lets it shrink below its content so an inner area can scroll. */
92
+ minHeight?: string;
93
+ /** Ceiling height — the row is capped at `100%` of its parent by default; `none` releases that cap. */
94
+ maxHeight?: string;
95
+ /** Horizontal overflow, e.g. `auto` for a horizontally scrollable board. */
96
+ overflowX?: string;
97
+ /** Vertical overflow, e.g. `auto` to make the row own its scroll region. */
98
+ overflowY?: string;
99
+ /** Positioning scheme; `relative` makes the row the anchor of an absolutely positioned child. */
100
+ position?: string;
73
101
  style?: CSSProperties;
74
102
  className?: string;
75
103
  }
@@ -86,6 +114,28 @@ interface ColProps extends HTMLAttributes<HTMLDivElement> {
86
114
  fullHeight?: boolean;
87
115
  fullWidth?: boolean;
88
116
  flex?: string;
117
+ /** Explicit width, wins over `fullWidth` and `size` (e.g. a 12px gutter column). */
118
+ width?: string;
119
+ /** Explicit min-width. `minWidth="0"` lets a flex column shrink below its content, like a `minmax(0, 1fr)` grid track. */
120
+ minWidth?: string;
121
+ /** Explicit height, wins over `fullHeight`. `height="auto"` beats the default `fit-content` so the column can stretch. */
122
+ height?: string;
123
+ /** Floor height of a flex child; `minHeight="0"` lets it shrink below its content so an inner area can scroll. */
124
+ minHeight?: string;
125
+ /** Cross-axis alignment of the column itself, e.g. `stretch` to match the height of its siblings. */
126
+ alignSelf?: string;
127
+ /** Horizontal overflow; the column shows overflowing content by default. */
128
+ overflowX?: string;
129
+ /** Vertical overflow; `overflowY="auto"` makes the column own its scroll region. */
130
+ overflowY?: string;
131
+ /** `scrollbar-gutter`, e.g. `stable` so the content keeps the same width whether or not a scrollbar shows. */
132
+ scrollbarGutter?: string;
133
+ /** Hides the scrollbar chrome while keeping the column scrollable. */
134
+ hideScrollbar?: boolean;
135
+ /** `overflow-wrap` — inherited, so `anywhere` also protects the whole subtree from an unbreakable token. */
136
+ overflowWrap?: string;
137
+ /** Positioning scheme; `relative` makes the column the anchor of an absolutely positioned child. */
138
+ position?: string;
89
139
  style?: CSSProperties;
90
140
  className?: string;
91
141
  }
@@ -112,10 +162,12 @@ interface DividerProps {
112
162
  color?: string;
113
163
  thickness?: string;
114
164
  ySpacing?: string;
165
+ /** `flex-shrink` when the divider is a flex child — `0` stops a column flex box from crushing its 1px to nothing. */
166
+ flexShrink?: string | number;
115
167
  className?: string;
116
168
  style?: CSSProperties;
117
169
  }
118
- declare const Divider: ({ orientation, color, thickness, ySpacing, className, ...rest }: DividerProps) => react_jsx_runtime.JSX.Element;
170
+ declare const Divider: ({ orientation, color, thickness, ySpacing, flexShrink, className, ...rest }: DividerProps) => react_jsx_runtime.JSX.Element;
119
171
 
120
172
  interface CollapseProps {
121
173
  open: boolean;
@@ -198,8 +250,10 @@ interface DrawerProps {
198
250
  leftOutline?: boolean;
199
251
  rightOutline?: boolean;
200
252
  footer?: ReactNode;
253
+ /** Stretches the content wrapper to the full height of the scrollable area. Off by default: the wrapper is `fit-content`, so a panel that must pin something to its bottom needs this. */
254
+ stretchContent?: boolean;
201
255
  }
202
- declare const Drawer: ({ showDrawer, closeDrawer, title, width, children, leftButtonLabel, leftButtonAction, leftButtonDisabled, rightButtonLabel, rightButtonAction, rightButtonDisabled, isLoading, leftVariant, variant, leftOutline, rightOutline, footer, }: DrawerProps) => react_jsx_runtime.JSX.Element | null;
256
+ declare const Drawer: ({ showDrawer, closeDrawer, title, width, children, leftButtonLabel, leftButtonAction, leftButtonDisabled, rightButtonLabel, rightButtonAction, rightButtonDisabled, isLoading, leftVariant, variant, leftOutline, rightOutline, footer, stretchContent, }: DrawerProps) => react_jsx_runtime.JSX.Element | null;
203
257
 
204
258
  declare const Toaster: () => react.ReactPortal | null;
205
259
 
@@ -254,6 +308,8 @@ interface BubbleProps {
254
308
  width?: string;
255
309
  /** Looping pulse to draw the eye to a critical bubble. Ring colour follows `backgroundColor`, content is centred on the cross axis, and the animation is dropped under `prefers-reduced-motion`. Spacing between children stays the caller's job. */
256
310
  pulse?: boolean;
311
+ /** Shows the hand cursor. Pair it with `onClick` so an actionable bubble (a tag that opens a file) looks actionable. */
312
+ pointer?: boolean;
257
313
  style?: CSSProperties;
258
314
  onClick?: () => void;
259
315
  }
@@ -295,6 +351,7 @@ interface TextProps extends Omit<HTMLAttributes<HTMLElement>, 'color'> {
295
351
  max?: number | string;
296
352
  wrap?: string;
297
353
  lineClamp?: number;
354
+ overflowWrap?: string;
298
355
  onClick?: (e: MouseEvent) => void;
299
356
  style?: CSSProperties;
300
357
  className?: string;
@@ -352,10 +409,12 @@ interface ButtonProps extends HTMLAttributes<HTMLButtonElement> {
352
409
  onClick?: () => void;
353
410
  disabled?: boolean;
354
411
  noHover?: boolean;
412
+ /** Square side of an icon-only button (no `label`). Defaults to 36px, the historical hardcoded size. */
413
+ iconOnlySize?: string;
355
414
  style?: CSSProperties;
356
415
  className?: string;
357
416
  }
358
- declare const Button: ({ label, children, iconLeft, iconRight, iconColor, variant, outline, size, width, isLoading, fontWeight, onClick, disabled, noHover, ...rest }: ButtonProps) => react_jsx_runtime.JSX.Element;
417
+ declare const Button: ({ label, children, iconLeft, iconRight, iconColor, variant, outline, size, width, isLoading, fontWeight, onClick, disabled, noHover, iconOnlySize, ...rest }: ButtonProps) => react_jsx_runtime.JSX.Element;
359
418
 
360
419
  interface SelectOption<T> {
361
420
  value: T;
@@ -409,6 +468,8 @@ interface InputProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | '
409
468
  borderRadius?: string;
410
469
  gap?: string;
411
470
  marginTop?: string;
471
+ /** Type scale of the field and of its placeholder (the placeholder stays at 12px when unset). */
472
+ fontSize?: string;
412
473
  style?: CSSProperties;
413
474
  className?: string;
414
475
  isSearch?: boolean;
@@ -916,8 +977,10 @@ interface CardProps {
916
977
  backgroundColor?: string;
917
978
  padding?: string;
918
979
  borderRadius?: string;
980
+ /** `flex-shrink` when the card is a flex child — `0` keeps its natural height inside a scrolling column instead of being squashed. */
981
+ flexShrink?: string | number;
919
982
  }
920
- declare const Card: ({ children, onClick, accentColor, backgroundColor, padding, borderRadius, }: CardProps) => react_jsx_runtime.JSX.Element;
983
+ declare const Card: ({ children, onClick, accentColor, backgroundColor, padding, borderRadius, flexShrink, }: CardProps) => react_jsx_runtime.JSX.Element;
921
984
 
922
985
  interface BannerAction {
923
986
  label: string;
package/dist/index.d.ts CHANGED
@@ -36,6 +36,22 @@ interface BoxProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
36
36
  borderColor?: string;
37
37
  /** Colored halo around the box, for transient states (unsaved, selected, in error). */
38
38
  shadowColor?: string;
39
+ /** Explicit width, wins over `fullWidth`. The box stays in `content-box`, so a border adds to it. */
40
+ width?: string;
41
+ /** Explicit min-width, wins over `fullWidth`. Pair with `width` for a column that must not shrink. */
42
+ minWidth?: string;
43
+ /** Floor height of a flex child; `minHeight="0"` lets it shrink below its content so an inner area can scroll. */
44
+ minHeight?: string;
45
+ /** `flex` shorthand when the box is itself a flex child (e.g. `0 0 250px`, `1 1 auto`). */
46
+ flex?: string;
47
+ /** Stacking direction of the box's own children — the box is a `row` by default. */
48
+ flexDirection?: string;
49
+ /** Clips or scrolls the content (`hidden`, `auto`…); the box shows overflowing content by default. */
50
+ overflow?: string;
51
+ /** Positioning scheme; the box is `relative` by default, so children can already be absolute against it. */
52
+ position?: string;
53
+ /** `inset` shorthand, meaningful with `position="absolute"` (e.g. `0` to fill the positioned ancestor). */
54
+ inset?: string;
39
55
  style?: CSSProperties;
40
56
  }
41
57
  declare const Box: ({ children, hasShadow, ...rest }: BoxProps) => react_jsx_runtime.JSX.Element;
@@ -70,6 +86,18 @@ interface RowProps extends HTMLAttributes<HTMLDivElement> {
70
86
  width?: string;
71
87
  wrap?: string;
72
88
  backgroundColor?: string;
89
+ /** `flex` shorthand when the row is itself a flex child (e.g. `1 1 auto` to absorb the leftover height). */
90
+ flex?: string;
91
+ /** Floor height of a flex child; `minHeight="0"` lets it shrink below its content so an inner area can scroll. */
92
+ minHeight?: string;
93
+ /** Ceiling height — the row is capped at `100%` of its parent by default; `none` releases that cap. */
94
+ maxHeight?: string;
95
+ /** Horizontal overflow, e.g. `auto` for a horizontally scrollable board. */
96
+ overflowX?: string;
97
+ /** Vertical overflow, e.g. `auto` to make the row own its scroll region. */
98
+ overflowY?: string;
99
+ /** Positioning scheme; `relative` makes the row the anchor of an absolutely positioned child. */
100
+ position?: string;
73
101
  style?: CSSProperties;
74
102
  className?: string;
75
103
  }
@@ -86,6 +114,28 @@ interface ColProps extends HTMLAttributes<HTMLDivElement> {
86
114
  fullHeight?: boolean;
87
115
  fullWidth?: boolean;
88
116
  flex?: string;
117
+ /** Explicit width, wins over `fullWidth` and `size` (e.g. a 12px gutter column). */
118
+ width?: string;
119
+ /** Explicit min-width. `minWidth="0"` lets a flex column shrink below its content, like a `minmax(0, 1fr)` grid track. */
120
+ minWidth?: string;
121
+ /** Explicit height, wins over `fullHeight`. `height="auto"` beats the default `fit-content` so the column can stretch. */
122
+ height?: string;
123
+ /** Floor height of a flex child; `minHeight="0"` lets it shrink below its content so an inner area can scroll. */
124
+ minHeight?: string;
125
+ /** Cross-axis alignment of the column itself, e.g. `stretch` to match the height of its siblings. */
126
+ alignSelf?: string;
127
+ /** Horizontal overflow; the column shows overflowing content by default. */
128
+ overflowX?: string;
129
+ /** Vertical overflow; `overflowY="auto"` makes the column own its scroll region. */
130
+ overflowY?: string;
131
+ /** `scrollbar-gutter`, e.g. `stable` so the content keeps the same width whether or not a scrollbar shows. */
132
+ scrollbarGutter?: string;
133
+ /** Hides the scrollbar chrome while keeping the column scrollable. */
134
+ hideScrollbar?: boolean;
135
+ /** `overflow-wrap` — inherited, so `anywhere` also protects the whole subtree from an unbreakable token. */
136
+ overflowWrap?: string;
137
+ /** Positioning scheme; `relative` makes the column the anchor of an absolutely positioned child. */
138
+ position?: string;
89
139
  style?: CSSProperties;
90
140
  className?: string;
91
141
  }
@@ -112,10 +162,12 @@ interface DividerProps {
112
162
  color?: string;
113
163
  thickness?: string;
114
164
  ySpacing?: string;
165
+ /** `flex-shrink` when the divider is a flex child — `0` stops a column flex box from crushing its 1px to nothing. */
166
+ flexShrink?: string | number;
115
167
  className?: string;
116
168
  style?: CSSProperties;
117
169
  }
118
- declare const Divider: ({ orientation, color, thickness, ySpacing, className, ...rest }: DividerProps) => react_jsx_runtime.JSX.Element;
170
+ declare const Divider: ({ orientation, color, thickness, ySpacing, flexShrink, className, ...rest }: DividerProps) => react_jsx_runtime.JSX.Element;
119
171
 
120
172
  interface CollapseProps {
121
173
  open: boolean;
@@ -198,8 +250,10 @@ interface DrawerProps {
198
250
  leftOutline?: boolean;
199
251
  rightOutline?: boolean;
200
252
  footer?: ReactNode;
253
+ /** Stretches the content wrapper to the full height of the scrollable area. Off by default: the wrapper is `fit-content`, so a panel that must pin something to its bottom needs this. */
254
+ stretchContent?: boolean;
201
255
  }
202
- declare const Drawer: ({ showDrawer, closeDrawer, title, width, children, leftButtonLabel, leftButtonAction, leftButtonDisabled, rightButtonLabel, rightButtonAction, rightButtonDisabled, isLoading, leftVariant, variant, leftOutline, rightOutline, footer, }: DrawerProps) => react_jsx_runtime.JSX.Element | null;
256
+ declare const Drawer: ({ showDrawer, closeDrawer, title, width, children, leftButtonLabel, leftButtonAction, leftButtonDisabled, rightButtonLabel, rightButtonAction, rightButtonDisabled, isLoading, leftVariant, variant, leftOutline, rightOutline, footer, stretchContent, }: DrawerProps) => react_jsx_runtime.JSX.Element | null;
203
257
 
204
258
  declare const Toaster: () => react.ReactPortal | null;
205
259
 
@@ -254,6 +308,8 @@ interface BubbleProps {
254
308
  width?: string;
255
309
  /** Looping pulse to draw the eye to a critical bubble. Ring colour follows `backgroundColor`, content is centred on the cross axis, and the animation is dropped under `prefers-reduced-motion`. Spacing between children stays the caller's job. */
256
310
  pulse?: boolean;
311
+ /** Shows the hand cursor. Pair it with `onClick` so an actionable bubble (a tag that opens a file) looks actionable. */
312
+ pointer?: boolean;
257
313
  style?: CSSProperties;
258
314
  onClick?: () => void;
259
315
  }
@@ -295,6 +351,7 @@ interface TextProps extends Omit<HTMLAttributes<HTMLElement>, 'color'> {
295
351
  max?: number | string;
296
352
  wrap?: string;
297
353
  lineClamp?: number;
354
+ overflowWrap?: string;
298
355
  onClick?: (e: MouseEvent) => void;
299
356
  style?: CSSProperties;
300
357
  className?: string;
@@ -352,10 +409,12 @@ interface ButtonProps extends HTMLAttributes<HTMLButtonElement> {
352
409
  onClick?: () => void;
353
410
  disabled?: boolean;
354
411
  noHover?: boolean;
412
+ /** Square side of an icon-only button (no `label`). Defaults to 36px, the historical hardcoded size. */
413
+ iconOnlySize?: string;
355
414
  style?: CSSProperties;
356
415
  className?: string;
357
416
  }
358
- declare const Button: ({ label, children, iconLeft, iconRight, iconColor, variant, outline, size, width, isLoading, fontWeight, onClick, disabled, noHover, ...rest }: ButtonProps) => react_jsx_runtime.JSX.Element;
417
+ declare const Button: ({ label, children, iconLeft, iconRight, iconColor, variant, outline, size, width, isLoading, fontWeight, onClick, disabled, noHover, iconOnlySize, ...rest }: ButtonProps) => react_jsx_runtime.JSX.Element;
359
418
 
360
419
  interface SelectOption<T> {
361
420
  value: T;
@@ -409,6 +468,8 @@ interface InputProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | '
409
468
  borderRadius?: string;
410
469
  gap?: string;
411
470
  marginTop?: string;
471
+ /** Type scale of the field and of its placeholder (the placeholder stays at 12px when unset). */
472
+ fontSize?: string;
412
473
  style?: CSSProperties;
413
474
  className?: string;
414
475
  isSearch?: boolean;
@@ -916,8 +977,10 @@ interface CardProps {
916
977
  backgroundColor?: string;
917
978
  padding?: string;
918
979
  borderRadius?: string;
980
+ /** `flex-shrink` when the card is a flex child — `0` keeps its natural height inside a scrolling column instead of being squashed. */
981
+ flexShrink?: string | number;
919
982
  }
920
- declare const Card: ({ children, onClick, accentColor, backgroundColor, padding, borderRadius, }: CardProps) => react_jsx_runtime.JSX.Element;
983
+ declare const Card: ({ children, onClick, accentColor, backgroundColor, padding, borderRadius, flexShrink, }: CardProps) => react_jsx_runtime.JSX.Element;
921
984
 
922
985
  interface BannerAction {
923
986
  label: string;
package/dist/index.js CHANGED
@@ -376,11 +376,23 @@ var shouldForwardProp2 = (prop) => ![
376
376
  "border",
377
377
  "borderColor",
378
378
  "shadowColor",
379
- "height"
379
+ "height",
380
+ "width",
381
+ "minWidth",
382
+ "minHeight",
383
+ "flex",
384
+ "flexDirection",
385
+ "overflow",
386
+ "position",
387
+ "inset"
380
388
  ].includes(prop);
381
389
  var StyledBox = import_styled_components2.default.div.withConfig({ shouldForwardProp: shouldForwardProp2 })`
382
- position: relative;
390
+ position: ${(props) => props.position || "relative"};
391
+ ${(props) => props.inset ? `inset: ${props.inset};` : ""}
383
392
  display: flex;
393
+ ${(props) => props.flexDirection ? `flex-direction: ${props.flexDirection};` : ""}
394
+ ${(props) => props.flex ? `flex: ${props.flex};` : ""}
395
+ ${(props) => props.overflow ? `overflow: ${props.overflow};` : ""}
384
396
  border: ${(props) => {
385
397
  var _a;
386
398
  return (_a = props.border) != null ? _a : `1px solid ${colors.grey_300}`;
@@ -396,9 +408,10 @@ var StyledBox = import_styled_components2.default.div.withConfig({ shouldForward
396
408
  return base ? `${halo}, ${base}` : halo;
397
409
  }};
398
410
 
399
- width: ${(props) => props.fullWidth ? "100%" : "auto"};
400
- min-width: ${(props) => props.fullWidth ? "100%" : "auto"};
411
+ width: ${(props) => props.width || (props.fullWidth ? "100%" : "auto")};
412
+ min-width: ${(props) => props.minWidth || (props.fullWidth ? "100%" : "auto")};
401
413
  height: ${(props) => props.height || (props.fullHeight ? "100%" : "auto")};
414
+ ${(props) => props.minHeight ? `min-height: ${props.minHeight};` : ""}
402
415
  padding: ${(props) => props.padding || "16px"};
403
416
  margin: ${(props) => props.margin || "0"};
404
417
  color: ${(props) => colors[props.color] || props.color || "inherit"};
@@ -473,15 +486,26 @@ var shouldForwardPropRow = (prop) => ![
473
486
  "margin",
474
487
  "width",
475
488
  "wrap",
476
- "backgroundColor"
489
+ "backgroundColor",
490
+ "flex",
491
+ "minHeight",
492
+ "maxHeight",
493
+ "overflowX",
494
+ "overflowY",
495
+ "position"
477
496
  ].includes(prop);
478
497
  var StyledRow = import_styled_components4.default.div.withConfig({
479
498
  shouldForwardProp: shouldForwardPropRow
480
499
  })`
481
500
  display: flex;
482
501
  flex-wrap: ${(props) => props.wrap || "nowrap"};
502
+ ${(props) => props.flex ? `flex: ${props.flex};` : ""}
503
+ ${(props) => props.position ? `position: ${props.position};` : ""}
504
+ ${(props) => props.overflowX ? `overflow-x: ${props.overflowX};` : ""}
505
+ ${(props) => props.overflowY ? `overflow-y: ${props.overflowY};` : ""}
483
506
  width: ${(props) => props.width || "100%"};
484
- max-height: 100%;
507
+ max-height: ${(props) => props.maxHeight || "100%"};
508
+ ${(props) => props.minHeight ? `min-height: ${props.minHeight};` : ""}
485
509
  background-color: ${(props) => props.backgroundColor || "transparent"};
486
510
  margin: ${(props) => props.margin || "0"};
487
511
  height: ${(props) => props.fullHeight ? `100%` : "auto"};
@@ -512,7 +536,18 @@ var shouldForwardPropCol = (prop) => ![
512
536
  "padding",
513
537
  "fullHeight",
514
538
  "fullWidth",
515
- "flex"
539
+ "flex",
540
+ "width",
541
+ "minWidth",
542
+ "height",
543
+ "minHeight",
544
+ "alignSelf",
545
+ "overflowX",
546
+ "overflowY",
547
+ "scrollbarGutter",
548
+ "hideScrollbar",
549
+ "overflowWrap",
550
+ "position"
516
551
  ].includes(prop);
517
552
  var StyledCol = import_styled_components5.default.div.withConfig({
518
553
  shouldForwardProp: shouldForwardPropCol
@@ -520,9 +555,24 @@ var StyledCol = import_styled_components5.default.div.withConfig({
520
555
  display: flex;
521
556
  flex-direction: column;
522
557
  overflow: visible;
558
+ overflow-x: ${(props) => props.overflowX || "visible"};
559
+ overflow-y: ${(props) => props.overflowY || "visible"};
560
+ ${(props) => props.scrollbarGutter ? `scrollbar-gutter: ${props.scrollbarGutter};` : ""}
561
+ ${(props) => props.hideScrollbar ? `
562
+ scrollbar-width: none;
563
+ -ms-overflow-style: none;
564
+ &::-webkit-scrollbar {
565
+ display: none;
566
+ }
567
+ ` : ""}
568
+ ${(props) => props.overflowWrap ? `overflow-wrap: ${props.overflowWrap};` : ""}
569
+ ${(props) => props.position ? `position: ${props.position};` : ""}
523
570
  max-height: 100%;
524
- height: ${(props) => props.fullHeight ? "100%" : "fit-content"};
525
- width: ${(props) => props.fullWidth ? "100%" : props.size ? `${props.size / 12 * 100}%` : "fit-content"};
571
+ height: ${(props) => props.height || (props.fullHeight ? "100%" : "fit-content")};
572
+ ${(props) => props.minHeight ? `min-height: ${props.minHeight};` : ""}
573
+ width: ${(props) => props.width || (props.fullWidth ? "100%" : props.size ? `${props.size / 12 * 100}%` : "fit-content")};
574
+ ${(props) => props.minWidth ? `min-width: ${props.minWidth};` : ""}
575
+ ${(props) => props.alignSelf ? `align-self: ${props.alignSelf};` : ""}
526
576
  flex: ${(props) => {
527
577
  var _a;
528
578
  return (_a = props.flex) != null ? _a : props.size ? `1 1 ${props.size / 12 * 100}%` : "auto";
@@ -571,6 +621,7 @@ var Text = (props) => {
571
621
  max,
572
622
  wrap,
573
623
  lineClamp,
624
+ overflowWrap,
574
625
  onClick
575
626
  } = _a, rest = __objRest(_a, [
576
627
  "size",
@@ -589,6 +640,7 @@ var Text = (props) => {
589
640
  "max",
590
641
  "wrap",
591
642
  "lineClamp",
643
+ "overflowWrap",
592
644
  "onClick"
593
645
  ]);
594
646
  const textStyle = __spreadValues({
@@ -606,7 +658,8 @@ var Text = (props) => {
606
658
  display: lineClamp ? "-webkit-box" : max ? "inline-block" : "",
607
659
  overflow: "hidden",
608
660
  textOverflow: max ? "ellipsis" : "",
609
- whiteSpace: wrap || ""
661
+ whiteSpace: wrap || "",
662
+ overflowWrap: overflowWrap || ""
610
663
  }, lineClamp ? {
611
664
  WebkitLineClamp: lineClamp,
612
665
  WebkitBoxOrient: "vertical",
@@ -707,6 +760,7 @@ var StyledDivider = import_styled_components7.default.div`
707
760
  height: ${$thickness || "1px"};
708
761
  width: 100%;
709
762
  `}
763
+ ${({ $flexShrink }) => $flexShrink !== void 0 ? `flex-shrink: ${$flexShrink};` : ""}
710
764
  margin-top: ${({ $ySpacing }) => $ySpacing || "0px"};
711
765
  margin-bottom: ${({ $ySpacing }) => $ySpacing || "0px"};
712
766
  border: none;
@@ -717,12 +771,14 @@ var Divider = (_a) => {
717
771
  color = "#DCDCDC",
718
772
  thickness = "1px",
719
773
  ySpacing = "0px",
774
+ flexShrink,
720
775
  className = ""
721
776
  } = _b, rest = __objRest(_b, [
722
777
  "orientation",
723
778
  "color",
724
779
  "thickness",
725
780
  "ySpacing",
781
+ "flexShrink",
726
782
  "className"
727
783
  ]);
728
784
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
@@ -732,6 +788,7 @@ var Divider = (_a) => {
732
788
  $color: resolveColor(color),
733
789
  $thickness: thickness,
734
790
  $ySpacing: ySpacing,
791
+ $flexShrink: flexShrink,
735
792
  className,
736
793
  role: "separator"
737
794
  }, rest)
@@ -896,6 +953,7 @@ var shouldForwardProp4 = (p) => ![
896
953
  "isLoading",
897
954
  "sizeConfig",
898
955
  "iconOnly",
956
+ "iconOnlySize",
899
957
  "noHover"
900
958
  ].includes(p);
901
959
  var StyledButton = import_styled_components9.default.button.withConfig({
@@ -984,8 +1042,8 @@ var StyledButton = import_styled_components9.default.button.withConfig({
984
1042
  `}
985
1043
 
986
1044
  ${(p) => p.iconOnly && `
987
- width: 36px !important;
988
- height: 36px !important;
1045
+ width: ${p.iconOnlySize || "36px"} !important;
1046
+ height: ${p.iconOnlySize || "36px"} !important;
989
1047
  padding: 0 !important;
990
1048
  border-radius: 6px;
991
1049
  `}
@@ -1022,7 +1080,8 @@ var Button = (_a) => {
1022
1080
  fontWeight,
1023
1081
  onClick,
1024
1082
  disabled,
1025
- noHover = false
1083
+ noHover = false,
1084
+ iconOnlySize
1026
1085
  } = _b, rest = __objRest(_b, [
1027
1086
  "label",
1028
1087
  "children",
@@ -1037,7 +1096,8 @@ var Button = (_a) => {
1037
1096
  "fontWeight",
1038
1097
  "onClick",
1039
1098
  "disabled",
1040
- "noHover"
1099
+ "noHover",
1100
+ "iconOnlySize"
1041
1101
  ]);
1042
1102
  const ref = (0, import_react4.useRef)(null);
1043
1103
  const sizeConfig = defaultSizes[size];
@@ -1064,7 +1124,8 @@ var Button = (_a) => {
1064
1124
  sizeConfig,
1065
1125
  disabled: disabled || isLoading,
1066
1126
  "aria-busy": isLoading ? "true" : void 0,
1067
- iconOnly: Boolean(iconLeft || iconRight) && !label
1127
+ iconOnly: Boolean(iconLeft || iconRight) && !label,
1128
+ iconOnlySize
1068
1129
  }, rest), {
1069
1130
  children: [
1070
1131
  isLoading && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Loader, {}),
@@ -1259,7 +1320,8 @@ var shouldForwardProp6 = (prop) => ![
1259
1320
  "borderRadius",
1260
1321
  "boxShadow",
1261
1322
  "width",
1262
- "pulse"
1323
+ "pulse",
1324
+ "pointer"
1263
1325
  ].includes(prop);
1264
1326
  var StyledBubble = import_styled_components11.default.span.withConfig({
1265
1327
  shouldForwardProp: shouldForwardProp6
@@ -1272,6 +1334,7 @@ var StyledBubble = import_styled_components11.default.span.withConfig({
1272
1334
  margin: ${(props) => props.margin || "0"};
1273
1335
  padding: ${(props) => props.padding || paddingSizes[props.size] || "5px 10px"};
1274
1336
  font-weight: 600;
1337
+ ${(props) => props.pointer ? "cursor: pointer;" : ""}
1275
1338
  width: ${(props) => props.width ? props.width : "fit-content"};
1276
1339
  overflow: hidden;
1277
1340
  text-overflow: ellipsis;
@@ -1602,7 +1665,8 @@ var Drawer = ({
1602
1665
  variant = "blue_700",
1603
1666
  leftOutline = true,
1604
1667
  rightOutline = false,
1605
- footer
1668
+ footer,
1669
+ stretchContent = false
1606
1670
  }) => {
1607
1671
  const [isRendered, setIsRendered] = (0, import_react7.useState)(showDrawer);
1608
1672
  const [isVisible, setIsVisible] = (0, import_react7.useState)(false);
@@ -1642,7 +1706,7 @@ var Drawer = ({
1642
1706
  )
1643
1707
  ] }),
1644
1708
  title && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Divider, { orientation: "horizontal", thickness: "1px" }),
1645
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ScrollableContent, { children: children && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Col, { fullWidth: true, children }) }),
1709
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ScrollableContent, { children: children && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Col, { fullWidth: true, fullHeight: stretchContent, children }) }),
1646
1710
  /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Divider, { orientation: "horizontal", thickness: "1px" }),
1647
1711
  footer,
1648
1712
  (leftButtonLabel || rightButtonLabel) && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Row, { gap: "12", fullWidth: true, children: [
@@ -2512,7 +2576,8 @@ var shouldForwardProp8 = (prop) => ![
2512
2576
  "borderRadius",
2513
2577
  "gap",
2514
2578
  "marginTop",
2515
- "asTextArea"
2579
+ "asTextArea",
2580
+ "fontSize"
2516
2581
  ].includes(prop);
2517
2582
  var StyledContainer2 = import_styled_components20.default.div.withConfig({
2518
2583
  shouldForwardProp: shouldForwardProp8
@@ -2530,6 +2595,7 @@ var StyledInput = import_styled_components20.default.input.withConfig({
2530
2595
  max-width: ${(props) => props.width || "100%"};
2531
2596
  width: ${(props) => props.width || "100%"};
2532
2597
  height: 36px;
2598
+ ${(props) => props.fontSize ? `font-size: ${props.fontSize};` : ""}
2533
2599
  padding: ${(props) => props.padding || "8px"};
2534
2600
  border-radius: ${(props) => props.borderRadius || "5px"};
2535
2601
  background-color: ${(props) => props.disabled ? colors.grey_200 : props.transparent ? "transparent" : colors.white};
@@ -2546,7 +2612,7 @@ var StyledInput = import_styled_components20.default.input.withConfig({
2546
2612
 
2547
2613
  &::placeholder {
2548
2614
  font-family: 'Open Sans', sans-serif;
2549
- font-size: 12px;
2615
+ font-size: ${(props) => props.fontSize || "12px"};
2550
2616
  font-weight: 400;
2551
2617
  color: ${colors.grey_500};
2552
2618
  }
@@ -2560,6 +2626,7 @@ var StyledTextarea = import_styled_components20.default.textarea.withConfig({
2560
2626
  })`
2561
2627
  max-width: ${(props) => props.width || "100%"};
2562
2628
  width: ${(props) => props.width || "100%"};
2629
+ ${(props) => props.fontSize ? `font-size: ${props.fontSize};` : ""}
2563
2630
  padding: ${(props) => props.padding || "8px"};
2564
2631
  border-radius: ${(props) => props.borderRadius || "5px"};
2565
2632
  background-color: ${(props) => props.disabled ? colors.grey_200 : props.transparent ? "transparent" : colors.white};
@@ -2576,7 +2643,7 @@ var StyledTextarea = import_styled_components20.default.textarea.withConfig({
2576
2643
 
2577
2644
  &::placeholder {
2578
2645
  font-family: 'Open Sans', sans-serif;
2579
- font-size: 12px;
2646
+ font-size: ${(props) => props.fontSize || "12px"};
2580
2647
  font-weight: 400;
2581
2648
  color: ${colors.grey_500};
2582
2649
  }
@@ -5224,6 +5291,7 @@ var import_jsx_runtime53 = require("react/jsx-runtime");
5224
5291
  var StyledCard = import_styled_components44.default.div`
5225
5292
  overflow: hidden;
5226
5293
  transition: box-shadow 0.15s ease;
5294
+ ${(p) => p.$flexShrink !== void 0 ? `flex-shrink: ${p.$flexShrink};` : ""}
5227
5295
  background-color: ${(p) => p.$backgroundColor};
5228
5296
  border-radius: ${(p) => p.$borderRadius};
5229
5297
  ${(p) => p.$accentColor ? `border-left: 2px solid ${p.$accentColor};` : ""}
@@ -5240,7 +5308,8 @@ var Card2 = ({
5240
5308
  accentColor,
5241
5309
  backgroundColor = "#F8FAFC",
5242
5310
  padding = "10px 12px",
5243
- borderRadius = "8px"
5311
+ borderRadius = "8px",
5312
+ flexShrink
5244
5313
  }) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
5245
5314
  StyledCard,
5246
5315
  {
@@ -5248,6 +5317,7 @@ var Card2 = ({
5248
5317
  $backgroundColor: backgroundColor,
5249
5318
  $borderRadius: borderRadius,
5250
5319
  $accentColor: accentColor,
5320
+ $flexShrink: flexShrink,
5251
5321
  onClick,
5252
5322
  children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(StyledCardInner, { $padding: padding, children })
5253
5323
  }
package/dist/index.mjs CHANGED
@@ -237,11 +237,23 @@ var shouldForwardProp2 = (prop) => ![
237
237
  "border",
238
238
  "borderColor",
239
239
  "shadowColor",
240
- "height"
240
+ "height",
241
+ "width",
242
+ "minWidth",
243
+ "minHeight",
244
+ "flex",
245
+ "flexDirection",
246
+ "overflow",
247
+ "position",
248
+ "inset"
241
249
  ].includes(prop);
242
250
  var StyledBox = styled2.div.withConfig({ shouldForwardProp: shouldForwardProp2 })`
243
- position: relative;
251
+ position: ${(props) => props.position || "relative"};
252
+ ${(props) => props.inset ? `inset: ${props.inset};` : ""}
244
253
  display: flex;
254
+ ${(props) => props.flexDirection ? `flex-direction: ${props.flexDirection};` : ""}
255
+ ${(props) => props.flex ? `flex: ${props.flex};` : ""}
256
+ ${(props) => props.overflow ? `overflow: ${props.overflow};` : ""}
245
257
  border: ${(props) => {
246
258
  var _a;
247
259
  return (_a = props.border) != null ? _a : `1px solid ${colors.grey_300}`;
@@ -257,9 +269,10 @@ var StyledBox = styled2.div.withConfig({ shouldForwardProp: shouldForwardProp2 }
257
269
  return base ? `${halo}, ${base}` : halo;
258
270
  }};
259
271
 
260
- width: ${(props) => props.fullWidth ? "100%" : "auto"};
261
- min-width: ${(props) => props.fullWidth ? "100%" : "auto"};
272
+ width: ${(props) => props.width || (props.fullWidth ? "100%" : "auto")};
273
+ min-width: ${(props) => props.minWidth || (props.fullWidth ? "100%" : "auto")};
262
274
  height: ${(props) => props.height || (props.fullHeight ? "100%" : "auto")};
275
+ ${(props) => props.minHeight ? `min-height: ${props.minHeight};` : ""}
263
276
  padding: ${(props) => props.padding || "16px"};
264
277
  margin: ${(props) => props.margin || "0"};
265
278
  color: ${(props) => colors[props.color] || props.color || "inherit"};
@@ -334,15 +347,26 @@ var shouldForwardPropRow = (prop) => ![
334
347
  "margin",
335
348
  "width",
336
349
  "wrap",
337
- "backgroundColor"
350
+ "backgroundColor",
351
+ "flex",
352
+ "minHeight",
353
+ "maxHeight",
354
+ "overflowX",
355
+ "overflowY",
356
+ "position"
338
357
  ].includes(prop);
339
358
  var StyledRow = styled4.div.withConfig({
340
359
  shouldForwardProp: shouldForwardPropRow
341
360
  })`
342
361
  display: flex;
343
362
  flex-wrap: ${(props) => props.wrap || "nowrap"};
363
+ ${(props) => props.flex ? `flex: ${props.flex};` : ""}
364
+ ${(props) => props.position ? `position: ${props.position};` : ""}
365
+ ${(props) => props.overflowX ? `overflow-x: ${props.overflowX};` : ""}
366
+ ${(props) => props.overflowY ? `overflow-y: ${props.overflowY};` : ""}
344
367
  width: ${(props) => props.width || "100%"};
345
- max-height: 100%;
368
+ max-height: ${(props) => props.maxHeight || "100%"};
369
+ ${(props) => props.minHeight ? `min-height: ${props.minHeight};` : ""}
346
370
  background-color: ${(props) => props.backgroundColor || "transparent"};
347
371
  margin: ${(props) => props.margin || "0"};
348
372
  height: ${(props) => props.fullHeight ? `100%` : "auto"};
@@ -373,7 +397,18 @@ var shouldForwardPropCol = (prop) => ![
373
397
  "padding",
374
398
  "fullHeight",
375
399
  "fullWidth",
376
- "flex"
400
+ "flex",
401
+ "width",
402
+ "minWidth",
403
+ "height",
404
+ "minHeight",
405
+ "alignSelf",
406
+ "overflowX",
407
+ "overflowY",
408
+ "scrollbarGutter",
409
+ "hideScrollbar",
410
+ "overflowWrap",
411
+ "position"
377
412
  ].includes(prop);
378
413
  var StyledCol = styled5.div.withConfig({
379
414
  shouldForwardProp: shouldForwardPropCol
@@ -381,9 +416,24 @@ var StyledCol = styled5.div.withConfig({
381
416
  display: flex;
382
417
  flex-direction: column;
383
418
  overflow: visible;
419
+ overflow-x: ${(props) => props.overflowX || "visible"};
420
+ overflow-y: ${(props) => props.overflowY || "visible"};
421
+ ${(props) => props.scrollbarGutter ? `scrollbar-gutter: ${props.scrollbarGutter};` : ""}
422
+ ${(props) => props.hideScrollbar ? `
423
+ scrollbar-width: none;
424
+ -ms-overflow-style: none;
425
+ &::-webkit-scrollbar {
426
+ display: none;
427
+ }
428
+ ` : ""}
429
+ ${(props) => props.overflowWrap ? `overflow-wrap: ${props.overflowWrap};` : ""}
430
+ ${(props) => props.position ? `position: ${props.position};` : ""}
384
431
  max-height: 100%;
385
- height: ${(props) => props.fullHeight ? "100%" : "fit-content"};
386
- width: ${(props) => props.fullWidth ? "100%" : props.size ? `${props.size / 12 * 100}%` : "fit-content"};
432
+ height: ${(props) => props.height || (props.fullHeight ? "100%" : "fit-content")};
433
+ ${(props) => props.minHeight ? `min-height: ${props.minHeight};` : ""}
434
+ width: ${(props) => props.width || (props.fullWidth ? "100%" : props.size ? `${props.size / 12 * 100}%` : "fit-content")};
435
+ ${(props) => props.minWidth ? `min-width: ${props.minWidth};` : ""}
436
+ ${(props) => props.alignSelf ? `align-self: ${props.alignSelf};` : ""}
387
437
  flex: ${(props) => {
388
438
  var _a;
389
439
  return (_a = props.flex) != null ? _a : props.size ? `1 1 ${props.size / 12 * 100}%` : "auto";
@@ -432,6 +482,7 @@ var Text = (props) => {
432
482
  max,
433
483
  wrap,
434
484
  lineClamp,
485
+ overflowWrap,
435
486
  onClick
436
487
  } = _a, rest = __objRest(_a, [
437
488
  "size",
@@ -450,6 +501,7 @@ var Text = (props) => {
450
501
  "max",
451
502
  "wrap",
452
503
  "lineClamp",
504
+ "overflowWrap",
453
505
  "onClick"
454
506
  ]);
455
507
  const textStyle = __spreadValues({
@@ -467,7 +519,8 @@ var Text = (props) => {
467
519
  display: lineClamp ? "-webkit-box" : max ? "inline-block" : "",
468
520
  overflow: "hidden",
469
521
  textOverflow: max ? "ellipsis" : "",
470
- whiteSpace: wrap || ""
522
+ whiteSpace: wrap || "",
523
+ overflowWrap: overflowWrap || ""
471
524
  }, lineClamp ? {
472
525
  WebkitLineClamp: lineClamp,
473
526
  WebkitBoxOrient: "vertical",
@@ -568,6 +621,7 @@ var StyledDivider = styled7.div`
568
621
  height: ${$thickness || "1px"};
569
622
  width: 100%;
570
623
  `}
624
+ ${({ $flexShrink }) => $flexShrink !== void 0 ? `flex-shrink: ${$flexShrink};` : ""}
571
625
  margin-top: ${({ $ySpacing }) => $ySpacing || "0px"};
572
626
  margin-bottom: ${({ $ySpacing }) => $ySpacing || "0px"};
573
627
  border: none;
@@ -578,12 +632,14 @@ var Divider = (_a) => {
578
632
  color = "#DCDCDC",
579
633
  thickness = "1px",
580
634
  ySpacing = "0px",
635
+ flexShrink,
581
636
  className = ""
582
637
  } = _b, rest = __objRest(_b, [
583
638
  "orientation",
584
639
  "color",
585
640
  "thickness",
586
641
  "ySpacing",
642
+ "flexShrink",
587
643
  "className"
588
644
  ]);
589
645
  return /* @__PURE__ */ jsx8(
@@ -593,6 +649,7 @@ var Divider = (_a) => {
593
649
  $color: resolveColor(color),
594
650
  $thickness: thickness,
595
651
  $ySpacing: ySpacing,
652
+ $flexShrink: flexShrink,
596
653
  className,
597
654
  role: "separator"
598
655
  }, rest)
@@ -757,6 +814,7 @@ var shouldForwardProp4 = (p) => ![
757
814
  "isLoading",
758
815
  "sizeConfig",
759
816
  "iconOnly",
817
+ "iconOnlySize",
760
818
  "noHover"
761
819
  ].includes(p);
762
820
  var StyledButton = styled9.button.withConfig({
@@ -845,8 +903,8 @@ var StyledButton = styled9.button.withConfig({
845
903
  `}
846
904
 
847
905
  ${(p) => p.iconOnly && `
848
- width: 36px !important;
849
- height: 36px !important;
906
+ width: ${p.iconOnlySize || "36px"} !important;
907
+ height: ${p.iconOnlySize || "36px"} !important;
850
908
  padding: 0 !important;
851
909
  border-radius: 6px;
852
910
  `}
@@ -883,7 +941,8 @@ var Button = (_a) => {
883
941
  fontWeight,
884
942
  onClick,
885
943
  disabled,
886
- noHover = false
944
+ noHover = false,
945
+ iconOnlySize
887
946
  } = _b, rest = __objRest(_b, [
888
947
  "label",
889
948
  "children",
@@ -898,7 +957,8 @@ var Button = (_a) => {
898
957
  "fontWeight",
899
958
  "onClick",
900
959
  "disabled",
901
- "noHover"
960
+ "noHover",
961
+ "iconOnlySize"
902
962
  ]);
903
963
  const ref = useRef2(null);
904
964
  const sizeConfig = defaultSizes[size];
@@ -925,7 +985,8 @@ var Button = (_a) => {
925
985
  sizeConfig,
926
986
  disabled: disabled || isLoading,
927
987
  "aria-busy": isLoading ? "true" : void 0,
928
- iconOnly: Boolean(iconLeft || iconRight) && !label
988
+ iconOnly: Boolean(iconLeft || iconRight) && !label,
989
+ iconOnlySize
929
990
  }, rest), {
930
991
  children: [
931
992
  isLoading && /* @__PURE__ */ jsx11(Loader, {}),
@@ -1120,7 +1181,8 @@ var shouldForwardProp6 = (prop) => ![
1120
1181
  "borderRadius",
1121
1182
  "boxShadow",
1122
1183
  "width",
1123
- "pulse"
1184
+ "pulse",
1185
+ "pointer"
1124
1186
  ].includes(prop);
1125
1187
  var StyledBubble = styled11.span.withConfig({
1126
1188
  shouldForwardProp: shouldForwardProp6
@@ -1133,6 +1195,7 @@ var StyledBubble = styled11.span.withConfig({
1133
1195
  margin: ${(props) => props.margin || "0"};
1134
1196
  padding: ${(props) => props.padding || paddingSizes[props.size] || "5px 10px"};
1135
1197
  font-weight: 600;
1198
+ ${(props) => props.pointer ? "cursor: pointer;" : ""}
1136
1199
  width: ${(props) => props.width ? props.width : "fit-content"};
1137
1200
  overflow: hidden;
1138
1201
  text-overflow: ellipsis;
@@ -1463,7 +1526,8 @@ var Drawer = ({
1463
1526
  variant = "blue_700",
1464
1527
  leftOutline = true,
1465
1528
  rightOutline = false,
1466
- footer
1529
+ footer,
1530
+ stretchContent = false
1467
1531
  }) => {
1468
1532
  const [isRendered, setIsRendered] = useState3(showDrawer);
1469
1533
  const [isVisible, setIsVisible] = useState3(false);
@@ -1503,7 +1567,7 @@ var Drawer = ({
1503
1567
  )
1504
1568
  ] }),
1505
1569
  title && /* @__PURE__ */ jsx16(Divider, { orientation: "horizontal", thickness: "1px" }),
1506
- /* @__PURE__ */ jsx16(ScrollableContent, { children: children && /* @__PURE__ */ jsx16(Col, { fullWidth: true, children }) }),
1570
+ /* @__PURE__ */ jsx16(ScrollableContent, { children: children && /* @__PURE__ */ jsx16(Col, { fullWidth: true, fullHeight: stretchContent, children }) }),
1507
1571
  /* @__PURE__ */ jsx16(Divider, { orientation: "horizontal", thickness: "1px" }),
1508
1572
  footer,
1509
1573
  (leftButtonLabel || rightButtonLabel) && /* @__PURE__ */ jsxs6(Row, { gap: "12", fullWidth: true, children: [
@@ -2379,7 +2443,8 @@ var shouldForwardProp8 = (prop) => ![
2379
2443
  "borderRadius",
2380
2444
  "gap",
2381
2445
  "marginTop",
2382
- "asTextArea"
2446
+ "asTextArea",
2447
+ "fontSize"
2383
2448
  ].includes(prop);
2384
2449
  var StyledContainer2 = styled20.div.withConfig({
2385
2450
  shouldForwardProp: shouldForwardProp8
@@ -2397,6 +2462,7 @@ var StyledInput = styled20.input.withConfig({
2397
2462
  max-width: ${(props) => props.width || "100%"};
2398
2463
  width: ${(props) => props.width || "100%"};
2399
2464
  height: 36px;
2465
+ ${(props) => props.fontSize ? `font-size: ${props.fontSize};` : ""}
2400
2466
  padding: ${(props) => props.padding || "8px"};
2401
2467
  border-radius: ${(props) => props.borderRadius || "5px"};
2402
2468
  background-color: ${(props) => props.disabled ? colors.grey_200 : props.transparent ? "transparent" : colors.white};
@@ -2413,7 +2479,7 @@ var StyledInput = styled20.input.withConfig({
2413
2479
 
2414
2480
  &::placeholder {
2415
2481
  font-family: 'Open Sans', sans-serif;
2416
- font-size: 12px;
2482
+ font-size: ${(props) => props.fontSize || "12px"};
2417
2483
  font-weight: 400;
2418
2484
  color: ${colors.grey_500};
2419
2485
  }
@@ -2427,6 +2493,7 @@ var StyledTextarea = styled20.textarea.withConfig({
2427
2493
  })`
2428
2494
  max-width: ${(props) => props.width || "100%"};
2429
2495
  width: ${(props) => props.width || "100%"};
2496
+ ${(props) => props.fontSize ? `font-size: ${props.fontSize};` : ""}
2430
2497
  padding: ${(props) => props.padding || "8px"};
2431
2498
  border-radius: ${(props) => props.borderRadius || "5px"};
2432
2499
  background-color: ${(props) => props.disabled ? colors.grey_200 : props.transparent ? "transparent" : colors.white};
@@ -2443,7 +2510,7 @@ var StyledTextarea = styled20.textarea.withConfig({
2443
2510
 
2444
2511
  &::placeholder {
2445
2512
  font-family: 'Open Sans', sans-serif;
2446
- font-size: 12px;
2513
+ font-size: ${(props) => props.fontSize || "12px"};
2447
2514
  font-weight: 400;
2448
2515
  color: ${colors.grey_500};
2449
2516
  }
@@ -5105,6 +5172,7 @@ import { jsx as jsx53 } from "react/jsx-runtime";
5105
5172
  var StyledCard = styled44.div`
5106
5173
  overflow: hidden;
5107
5174
  transition: box-shadow 0.15s ease;
5175
+ ${(p) => p.$flexShrink !== void 0 ? `flex-shrink: ${p.$flexShrink};` : ""}
5108
5176
  background-color: ${(p) => p.$backgroundColor};
5109
5177
  border-radius: ${(p) => p.$borderRadius};
5110
5178
  ${(p) => p.$accentColor ? `border-left: 2px solid ${p.$accentColor};` : ""}
@@ -5121,7 +5189,8 @@ var Card2 = ({
5121
5189
  accentColor,
5122
5190
  backgroundColor = "#F8FAFC",
5123
5191
  padding = "10px 12px",
5124
- borderRadius = "8px"
5192
+ borderRadius = "8px",
5193
+ flexShrink
5125
5194
  }) => /* @__PURE__ */ jsx53(
5126
5195
  StyledCard,
5127
5196
  {
@@ -5129,6 +5198,7 @@ var Card2 = ({
5129
5198
  $backgroundColor: backgroundColor,
5130
5199
  $borderRadius: borderRadius,
5131
5200
  $accentColor: accentColor,
5201
+ $flexShrink: flexShrink,
5132
5202
  onClick,
5133
5203
  children: /* @__PURE__ */ jsx53(StyledCardInner, { $padding: padding, children })
5134
5204
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "design-zystem",
3
- "version": "1.0.285",
3
+ "version": "1.0.286",
4
4
  "description": "A React design system of importable components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",