@dbcdk/react-components 0.0.102 → 0.0.103

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.
@@ -10,6 +10,7 @@ type BaseProps = {
10
10
  asChild?: boolean;
11
11
  variant?: 'primary' | 'secondary';
12
12
  inline?: boolean;
13
+ disabled?: boolean;
13
14
  };
14
15
  type AnchorProps = BaseProps & React.AnchorHTMLAttributes<HTMLAnchorElement> & {
15
16
  as?: 'a';
package/dist/index.cjs CHANGED
@@ -1356,6 +1356,48 @@ var InputContainer_default = {
1356
1356
  messageRow: "InputContainer_messageRow",
1357
1357
  inputContainer: "InputContainer_inputContainer"
1358
1358
  };
1359
+
1360
+ // src/components/inline-status/InlineStatus.module.css
1361
+ var InlineStatus_default = {
1362
+ container: "InlineStatus_container",
1363
+ fullWidth: "InlineStatus_fullWidth",
1364
+ leading: "InlineStatus_leading",
1365
+ body: "InlineStatus_body",
1366
+ sm: "InlineStatus_sm",
1367
+ md: "InlineStatus_md",
1368
+ neutral: "InlineStatus_neutral",
1369
+ success: "InlineStatus_success",
1370
+ warning: "InlineStatus_warning",
1371
+ error: "InlineStatus_error",
1372
+ info: "InlineStatus_info",
1373
+ brand: "InlineStatus_brand"
1374
+ };
1375
+ function InlineStatus({
1376
+ children,
1377
+ severity = "neutral",
1378
+ customIcon,
1379
+ disableIcon = false,
1380
+ fullWidth = false,
1381
+ size = "sm"
1382
+ }) {
1383
+ const hasLeading = Boolean(customIcon) || !disableIcon;
1384
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1385
+ "div",
1386
+ {
1387
+ className: [
1388
+ InlineStatus_default.container,
1389
+ InlineStatus_default[severity],
1390
+ InlineStatus_default[size],
1391
+ fullWidth ? InlineStatus_default.fullWidth : "",
1392
+ hasLeading ? InlineStatus_default.hasLeading : ""
1393
+ ].filter(Boolean).join(" "),
1394
+ children: [
1395
+ hasLeading ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: InlineStatus_default.leading, children: customIcon != null ? customIcon : /* @__PURE__ */ jsxRuntime.jsx(Icon, { severity }) }) : null,
1396
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: InlineStatus_default.body, children })
1397
+ ]
1398
+ }
1399
+ );
1400
+ }
1359
1401
  function InputContainer({
1360
1402
  label,
1361
1403
  labelAction,
@@ -1371,8 +1413,6 @@ function InputContainer({
1371
1413
  labelWidth = "160px",
1372
1414
  modified = false
1373
1415
  }) {
1374
- const message = error != null ? error : helpText;
1375
- const messageClass = error ? InputContainer_default.errorText : InputContainer_default.helpText;
1376
1416
  const renderLabelRow = (label || labelAction) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${InputContainer_default.labelRow} dbc-flex dbc-items-center dbc-gap-md`, children: [
1377
1417
  label && /* @__PURE__ */ jsxRuntime.jsxs("label", { className: InputContainer_default.label, htmlFor, children: [
1378
1418
  label,
@@ -1380,10 +1420,10 @@ function InputContainer({
1380
1420
  ] }),
1381
1421
  labelAction && /* @__PURE__ */ jsxRuntime.jsx("div", { className: InputContainer_default.labelAction, children: labelAction })
1382
1422
  ] });
1383
- const renderMessageRow = (message || helpTextAddition) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${messageClass} ${InputContainer_default.messageRow}`, children: [
1384
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: message }),
1423
+ const renderMessageRow = (error || helpText || helpTextAddition) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${error ? InputContainer_default.errorText : InputContainer_default.helpText} ${InputContainer_default.messageRow}`, children: error ? /* @__PURE__ */ jsxRuntime.jsx(InlineStatus, { severity: "error", disableIcon: true, children: error }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1424
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: helpText }),
1385
1425
  helpTextAddition && /* @__PURE__ */ jsxRuntime.jsx("span", { className: InputContainer_default.helpTextAddition, children: helpTextAddition })
1386
- ] });
1426
+ ] }) });
1387
1427
  if (orientation === "vertical") {
1388
1428
  return /* @__PURE__ */ jsxRuntime.jsxs(
1389
1429
  "div",
@@ -2755,6 +2795,7 @@ var Hyperlink_default = {
2755
2795
  primary: "Hyperlink_primary",
2756
2796
  block: "Hyperlink_block",
2757
2797
  content: "Hyperlink_content",
2798
+ disabled: "Hyperlink_disabled",
2758
2799
  icon: "Hyperlink_icon"
2759
2800
  };
2760
2801
  function cx2(...parts) {
@@ -2776,13 +2817,15 @@ function Hyperlink(props) {
2776
2817
  as = "a",
2777
2818
  variant = "primary",
2778
2819
  inline = true,
2820
+ disabled = false,
2779
2821
  ...rest
2780
2822
  } = props;
2781
2823
  const linkClassName = cx2(
2782
2824
  Hyperlink_default.link,
2783
2825
  className,
2784
2826
  variant === "secondary" ? Hyperlink_default.secondary : Hyperlink_default.primary,
2785
- inline ? "" : Hyperlink_default.block
2827
+ inline ? "" : Hyperlink_default.block,
2828
+ disabled ? Hyperlink_default.disabled : ""
2786
2829
  );
2787
2830
  if (asChild) {
2788
2831
  const child = React19__namespace.Children.only(children);
@@ -2795,6 +2838,7 @@ function Hyperlink(props) {
2795
2838
  ...rest,
2796
2839
  className: cx2(childProps.className, linkClassName),
2797
2840
  children: renderInner(childProps.children, icon),
2841
+ "aria-disabled": disabled || void 0,
2798
2842
  onClick: (e) => {
2799
2843
  e.stopPropagation();
2800
2844
  if (childProps.onClick) {
@@ -2809,6 +2853,7 @@ function Hyperlink(props) {
2809
2853
  {
2810
2854
  type: "button",
2811
2855
  className: linkClassName,
2856
+ disabled,
2812
2857
  ...rest,
2813
2858
  children: renderInner(children, icon)
2814
2859
  }
@@ -2817,8 +2862,12 @@ function Hyperlink(props) {
2817
2862
  return /* @__PURE__ */ jsxRuntime.jsx(
2818
2863
  "a",
2819
2864
  {
2820
- onClick: (e) => e.stopPropagation(),
2865
+ onClick: (e) => {
2866
+ e.stopPropagation();
2867
+ if (disabled) e.preventDefault();
2868
+ },
2821
2869
  className: linkClassName,
2870
+ "aria-disabled": disabled || void 0,
2822
2871
  ...rest,
2823
2872
  children: renderInner(children, icon)
2824
2873
  }
@@ -12778,48 +12827,6 @@ function Alert({
12778
12827
  );
12779
12828
  }
12780
12829
 
12781
- // src/components/inline-status/InlineStatus.module.css
12782
- var InlineStatus_default = {
12783
- container: "InlineStatus_container",
12784
- fullWidth: "InlineStatus_fullWidth",
12785
- leading: "InlineStatus_leading",
12786
- body: "InlineStatus_body",
12787
- sm: "InlineStatus_sm",
12788
- md: "InlineStatus_md",
12789
- neutral: "InlineStatus_neutral",
12790
- success: "InlineStatus_success",
12791
- warning: "InlineStatus_warning",
12792
- error: "InlineStatus_error",
12793
- info: "InlineStatus_info",
12794
- brand: "InlineStatus_brand"
12795
- };
12796
- function InlineStatus({
12797
- children,
12798
- severity = "neutral",
12799
- customIcon,
12800
- disableIcon = false,
12801
- fullWidth = false,
12802
- size = "sm"
12803
- }) {
12804
- const hasLeading = Boolean(customIcon) || !disableIcon;
12805
- return /* @__PURE__ */ jsxRuntime.jsxs(
12806
- "div",
12807
- {
12808
- className: [
12809
- InlineStatus_default.container,
12810
- InlineStatus_default[severity],
12811
- InlineStatus_default[size],
12812
- fullWidth ? InlineStatus_default.fullWidth : "",
12813
- hasLeading ? InlineStatus_default.hasLeading : ""
12814
- ].filter(Boolean).join(" "),
12815
- children: [
12816
- hasLeading ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: InlineStatus_default.leading, children: customIcon != null ? customIcon : /* @__PURE__ */ jsxRuntime.jsx(Icon, { severity }) }) : null,
12817
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: InlineStatus_default.body, children })
12818
- ]
12819
- }
12820
- );
12821
- }
12822
-
12823
12830
  exports.Accordion = Accordion;
12824
12831
  exports.Alert = Alert;
12825
12832
  exports.AppHeader = AppHeader;
package/dist/index.css CHANGED
@@ -171,12 +171,16 @@
171
171
  .Button_button:disabled,
172
172
  .Button_button[aria-disabled=true] {
173
173
  cursor: not-allowed;
174
- pointer-events: none;
175
174
  background-color: var(--color-disabled-bg);
176
175
  border-color: transparent;
177
176
  color: var(--color-disabled-fg);
178
177
  opacity: 0.5;
179
178
  }
179
+ .Button_button:is(:disabled, [aria-disabled=true]):hover {
180
+ background-color: var(--color-disabled-bg);
181
+ border-color: transparent;
182
+ color: var(--color-disabled-fg);
183
+ }
180
184
  .Button_link {
181
185
  text-decoration: none;
182
186
  font-size: var(--font-size-sm);
@@ -1214,6 +1218,85 @@
1214
1218
  border-radius: var(--border-radius-default);
1215
1219
  }
1216
1220
 
1221
+ /* src/components/inline-status/InlineStatus.module.css */
1222
+ .InlineStatus_container {
1223
+ --inline-status-bg: var(--color-bg-toolbar);
1224
+ --inline-status-fg: var(--color-fg-default);
1225
+ --inline-status-border: var(--color-border-subtle);
1226
+ display: inline-flex;
1227
+ align-items: flex-start;
1228
+ gap: var(--spacing-xs);
1229
+ max-inline-size: 100%;
1230
+ padding: var(--spacing-2xs) var(--spacing-sm);
1231
+ border: 1px solid var(--inline-status-border);
1232
+ border-radius: var(--border-radius-default);
1233
+ background: var(--inline-status-bg);
1234
+ color: var(--inline-status-fg);
1235
+ font-family: var(--font-family);
1236
+ font-size: var(--font-size-sm);
1237
+ font-weight: var(--font-weight-default);
1238
+ line-height: var(--line-height-normal);
1239
+ box-sizing: border-box;
1240
+ }
1241
+ .InlineStatus_fullWidth {
1242
+ display: flex;
1243
+ inline-size: 100%;
1244
+ }
1245
+ .InlineStatus_leading {
1246
+ display: inline-flex;
1247
+ align-items: center;
1248
+ justify-content: center;
1249
+ flex: 0 0 auto;
1250
+ block-size: 1lh;
1251
+ }
1252
+ .InlineStatus_leading svg {
1253
+ inline-size: var(--icon-size-sm);
1254
+ block-size: var(--icon-size-sm);
1255
+ color: currentColor;
1256
+ }
1257
+ .InlineStatus_body {
1258
+ min-width: 0;
1259
+ overflow-wrap: anywhere;
1260
+ word-break: break-word;
1261
+ white-space: normal;
1262
+ }
1263
+ .InlineStatus_sm {
1264
+ font-size: var(--font-size-xs);
1265
+ }
1266
+ .InlineStatus_md {
1267
+ font-size: var(--font-size-sm);
1268
+ }
1269
+ .InlineStatus_neutral {
1270
+ --inline-status-bg: var(--color-bg-toolbar);
1271
+ --inline-status-fg: var(--color-fg-default);
1272
+ --inline-status-border: transparent;
1273
+ }
1274
+ .InlineStatus_success {
1275
+ --inline-status-bg: var(--color-status-success-bg);
1276
+ --inline-status-fg: var(--color-status-success-fg);
1277
+ --inline-status-border: var(--color-status-success-border);
1278
+ }
1279
+ .InlineStatus_warning {
1280
+ --inline-status-bg: var(--color-status-warning-bg);
1281
+ --inline-status-fg: var(--color-status-warning-fg);
1282
+ --inline-status-border: var(--color-status-warning-border);
1283
+ }
1284
+ .InlineStatus_error {
1285
+ --inline-status-bg: var(--color-status-error-bg);
1286
+ --inline-status-fg: var(--color-status-error-fg);
1287
+ --inline-status-border: var(--color-status-error-border);
1288
+ }
1289
+ .InlineStatus_info {
1290
+ --inline-status-bg: var(--color-status-info-bg);
1291
+ --inline-status-fg: var(--color-status-info-fg);
1292
+ --inline-status-border: var(--color-status-info-border);
1293
+ }
1294
+ .InlineStatus_brand {
1295
+ --inline-status-bg: color-mix(in srgb, var(--color-brand) 10%, var(--color-bg-surface));
1296
+ --inline-status-fg: var(--color-brand);
1297
+ --inline-status-border: color-mix(in srgb, var(--color-brand) 35%, transparent);
1298
+ }
1299
+
1217
1300
  /* src/components/forms/radio-buttons/RadioButtons.module.css */
1218
1301
  .RadioButtons_container {
1219
1302
  display: inline-flex;
@@ -2026,6 +2109,17 @@
2026
2109
  outline: 2px solid var(--color-brand);
2027
2110
  outline-offset: 2px;
2028
2111
  }
2112
+ .Hyperlink_link:is(.Hyperlink_disabled, :disabled, [aria-disabled=true]) {
2113
+ color: var(--color-disabled-fg);
2114
+ opacity: 0.5;
2115
+ cursor: not-allowed;
2116
+ }
2117
+ .Hyperlink_link:is(.Hyperlink_disabled, :disabled, [aria-disabled=true]):hover {
2118
+ color: var(--color-disabled-fg);
2119
+ }
2120
+ .Hyperlink_link:is(.Hyperlink_disabled, :disabled, [aria-disabled=true])::after {
2121
+ display: none;
2122
+ }
2029
2123
  .Hyperlink_icon {
2030
2124
  display: flex;
2031
2125
  align-items: center;
@@ -2801,7 +2895,7 @@
2801
2895
  display: flex;
2802
2896
  align-items: flex-start;
2803
2897
  padding: var(--spacing-lg) 0;
2804
- padding-block-end: var(--spacing-xl);
2898
+ padding-block-end: var(--spacing-lg);
2805
2899
  gap: var(--spacing-md);
2806
2900
  min-width: 0;
2807
2901
  flex: 0 0 auto;
@@ -5878,85 +5972,6 @@
5878
5972
  --alert-border: color-mix(in srgb, var(--color-brand) 35%, transparent);
5879
5973
  }
5880
5974
 
5881
- /* src/components/inline-status/InlineStatus.module.css */
5882
- .InlineStatus_container {
5883
- --inline-status-bg: var(--color-bg-toolbar);
5884
- --inline-status-fg: var(--color-fg-default);
5885
- --inline-status-border: var(--color-border-subtle);
5886
- display: inline-flex;
5887
- align-items: flex-start;
5888
- gap: var(--spacing-xs);
5889
- max-inline-size: 100%;
5890
- padding: var(--spacing-2xs) var(--spacing-sm);
5891
- border: 1px solid var(--inline-status-border);
5892
- border-radius: var(--border-radius-default);
5893
- background: var(--inline-status-bg);
5894
- color: var(--inline-status-fg);
5895
- font-family: var(--font-family);
5896
- font-size: var(--font-size-sm);
5897
- font-weight: var(--font-weight-default);
5898
- line-height: var(--line-height-normal);
5899
- box-sizing: border-box;
5900
- }
5901
- .InlineStatus_fullWidth {
5902
- display: flex;
5903
- inline-size: 100%;
5904
- }
5905
- .InlineStatus_leading {
5906
- display: inline-flex;
5907
- align-items: center;
5908
- justify-content: center;
5909
- flex: 0 0 auto;
5910
- padding-block-start: 1px;
5911
- }
5912
- .InlineStatus_leading svg {
5913
- inline-size: var(--icon-size-sm);
5914
- block-size: var(--icon-size-sm);
5915
- color: currentColor;
5916
- }
5917
- .InlineStatus_body {
5918
- min-width: 0;
5919
- overflow-wrap: anywhere;
5920
- word-break: break-word;
5921
- white-space: normal;
5922
- }
5923
- .InlineStatus_sm {
5924
- font-size: var(--font-size-xs);
5925
- }
5926
- .InlineStatus_md {
5927
- font-size: var(--font-size-sm);
5928
- }
5929
- .InlineStatus_neutral {
5930
- --inline-status-bg: var(--color-bg-toolbar);
5931
- --inline-status-fg: var(--color-fg-default);
5932
- --inline-status-border: transparent;
5933
- }
5934
- .InlineStatus_success {
5935
- --inline-status-bg: var(--color-status-success-bg);
5936
- --inline-status-fg: var(--color-status-success-fg);
5937
- --inline-status-border: var(--color-status-success-border);
5938
- }
5939
- .InlineStatus_warning {
5940
- --inline-status-bg: var(--color-status-warning-bg);
5941
- --inline-status-fg: var(--color-status-warning-fg);
5942
- --inline-status-border: var(--color-status-warning-border);
5943
- }
5944
- .InlineStatus_error {
5945
- --inline-status-bg: var(--color-status-error-bg);
5946
- --inline-status-fg: var(--color-status-error-fg);
5947
- --inline-status-border: var(--color-status-error-border);
5948
- }
5949
- .InlineStatus_info {
5950
- --inline-status-bg: var(--color-status-info-bg);
5951
- --inline-status-fg: var(--color-status-info-fg);
5952
- --inline-status-border: var(--color-status-info-border);
5953
- }
5954
- .InlineStatus_brand {
5955
- --inline-status-bg: color-mix(in srgb, var(--color-brand) 10%, var(--color-bg-surface));
5956
- --inline-status-fg: var(--color-brand);
5957
- --inline-status-border: color-mix(in srgb, var(--color-brand) 35%, transparent);
5958
- }
5959
-
5960
5975
  /* src/components/table/components/column-resizer/ColumnResizer.module.css */
5961
5976
  .ColumnResizer_resizer {
5962
5977
  position: absolute;
@@ -6127,12 +6142,16 @@
6127
6142
  .Button_button2:disabled,
6128
6143
  .Button_button2[aria-disabled=true] {
6129
6144
  cursor: not-allowed;
6130
- pointer-events: none;
6131
6145
  background-color: var(--color-disabled-bg);
6132
6146
  border-color: transparent;
6133
6147
  color: var(--color-disabled-fg);
6134
6148
  opacity: 0.5;
6135
6149
  }
6150
+ .Button_button2:is(:disabled, [aria-disabled=true]):hover {
6151
+ background-color: var(--color-disabled-bg);
6152
+ border-color: transparent;
6153
+ color: var(--color-disabled-fg);
6154
+ }
6136
6155
  .Button_link2 {
6137
6156
  text-decoration: none;
6138
6157
  font-size: var(--font-size-sm);
@@ -6591,6 +6610,116 @@
6591
6610
  border-radius: var(--border-radius-default);
6592
6611
  }
6593
6612
 
6613
+ /* src/components/inline-status/InlineStatus.module.css */
6614
+ .InlineStatus_container2 {
6615
+ --inline-status-bg: var(--color-bg-toolbar);
6616
+ --inline-status-fg: var(--color-fg-default);
6617
+ --inline-status-border: var(--color-border-subtle);
6618
+ display: inline-flex;
6619
+ align-items: flex-start;
6620
+ gap: var(--spacing-xs);
6621
+ max-inline-size: 100%;
6622
+ padding: var(--spacing-2xs) var(--spacing-sm);
6623
+ border: 1px solid var(--inline-status-border);
6624
+ border-radius: var(--border-radius-default);
6625
+ background: var(--inline-status-bg);
6626
+ color: var(--inline-status-fg);
6627
+ font-family: var(--font-family);
6628
+ font-size: var(--font-size-sm);
6629
+ font-weight: var(--font-weight-default);
6630
+ line-height: var(--line-height-normal);
6631
+ box-sizing: border-box;
6632
+ }
6633
+ .InlineStatus_fullWidth2 {
6634
+ display: flex;
6635
+ inline-size: 100%;
6636
+ }
6637
+ .InlineStatus_leading2 {
6638
+ display: inline-flex;
6639
+ align-items: center;
6640
+ justify-content: center;
6641
+ flex: 0 0 auto;
6642
+ block-size: 1lh;
6643
+ }
6644
+ .InlineStatus_leading2 svg {
6645
+ inline-size: var(--icon-size-sm);
6646
+ block-size: var(--icon-size-sm);
6647
+ color: currentColor;
6648
+ }
6649
+ .InlineStatus_body2 {
6650
+ min-width: 0;
6651
+ overflow-wrap: anywhere;
6652
+ word-break: break-word;
6653
+ white-space: normal;
6654
+ }
6655
+ .InlineStatus_sm2 {
6656
+ font-size: var(--font-size-xs);
6657
+ }
6658
+ .InlineStatus_md2 {
6659
+ font-size: var(--font-size-sm);
6660
+ }
6661
+ .InlineStatus_neutral2 {
6662
+ --inline-status-bg: var(--color-bg-toolbar);
6663
+ --inline-status-fg: var(--color-fg-default);
6664
+ --inline-status-border: transparent;
6665
+ }
6666
+ .InlineStatus_success2 {
6667
+ --inline-status-bg: var(--color-status-success-bg);
6668
+ --inline-status-fg: var(--color-status-success-fg);
6669
+ --inline-status-border: var(--color-status-success-border);
6670
+ }
6671
+ .InlineStatus_warning2 {
6672
+ --inline-status-bg: var(--color-status-warning-bg);
6673
+ --inline-status-fg: var(--color-status-warning-fg);
6674
+ --inline-status-border: var(--color-status-warning-border);
6675
+ }
6676
+ .InlineStatus_error2 {
6677
+ --inline-status-bg: var(--color-status-error-bg);
6678
+ --inline-status-fg: var(--color-status-error-fg);
6679
+ --inline-status-border: var(--color-status-error-border);
6680
+ }
6681
+ .InlineStatus_info2 {
6682
+ --inline-status-bg: var(--color-status-info-bg);
6683
+ --inline-status-fg: var(--color-status-info-fg);
6684
+ --inline-status-border: var(--color-status-info-border);
6685
+ }
6686
+ .InlineStatus_brand2 {
6687
+ --inline-status-bg: color-mix(in srgb, var(--color-brand) 10%, var(--color-bg-surface));
6688
+ --inline-status-fg: var(--color-brand);
6689
+ --inline-status-border: color-mix(in srgb, var(--color-brand) 35%, transparent);
6690
+ }
6691
+
6692
+ /* src/components/icon/Icon.module.css */
6693
+ .Icon_container2 {
6694
+ display: inline-flex;
6695
+ align-items: center;
6696
+ vertical-align: middle;
6697
+ gap: var(--spacing-xxs);
6698
+ color: var(--color-fg-subtle);
6699
+ font-size: var(--font-size-sm);
6700
+ }
6701
+ .Icon_icon2 {
6702
+ display: flex;
6703
+ }
6704
+ .Icon_icon2 svg {
6705
+ height: var(--icon-size-md);
6706
+ }
6707
+ .Icon_success2 {
6708
+ color: var(--color-status-success);
6709
+ }
6710
+ .Icon_error2 {
6711
+ color: var(--color-status-error);
6712
+ }
6713
+ .Icon_warning2 {
6714
+ color: var(--color-status-warning);
6715
+ }
6716
+ .Icon_info2 {
6717
+ color: var(--color-status-info);
6718
+ }
6719
+ .Icon_brand2 {
6720
+ color: var(--color-fg-on-brand);
6721
+ }
6722
+
6594
6723
  /* src/components/forms/radio-buttons/RadioButtons.module.css */
6595
6724
  .RadioButtons_container2 {
6596
6725
  display: inline-flex;
package/dist/index.js CHANGED
@@ -1335,6 +1335,48 @@ var InputContainer_default = {
1335
1335
  messageRow: "InputContainer_messageRow",
1336
1336
  inputContainer: "InputContainer_inputContainer"
1337
1337
  };
1338
+
1339
+ // src/components/inline-status/InlineStatus.module.css
1340
+ var InlineStatus_default = {
1341
+ container: "InlineStatus_container",
1342
+ fullWidth: "InlineStatus_fullWidth",
1343
+ leading: "InlineStatus_leading",
1344
+ body: "InlineStatus_body",
1345
+ sm: "InlineStatus_sm",
1346
+ md: "InlineStatus_md",
1347
+ neutral: "InlineStatus_neutral",
1348
+ success: "InlineStatus_success",
1349
+ warning: "InlineStatus_warning",
1350
+ error: "InlineStatus_error",
1351
+ info: "InlineStatus_info",
1352
+ brand: "InlineStatus_brand"
1353
+ };
1354
+ function InlineStatus({
1355
+ children,
1356
+ severity = "neutral",
1357
+ customIcon,
1358
+ disableIcon = false,
1359
+ fullWidth = false,
1360
+ size = "sm"
1361
+ }) {
1362
+ const hasLeading = Boolean(customIcon) || !disableIcon;
1363
+ return /* @__PURE__ */ jsxs(
1364
+ "div",
1365
+ {
1366
+ className: [
1367
+ InlineStatus_default.container,
1368
+ InlineStatus_default[severity],
1369
+ InlineStatus_default[size],
1370
+ fullWidth ? InlineStatus_default.fullWidth : "",
1371
+ hasLeading ? InlineStatus_default.hasLeading : ""
1372
+ ].filter(Boolean).join(" "),
1373
+ children: [
1374
+ hasLeading ? /* @__PURE__ */ jsx("span", { className: InlineStatus_default.leading, children: customIcon != null ? customIcon : /* @__PURE__ */ jsx(Icon, { severity }) }) : null,
1375
+ /* @__PURE__ */ jsx("span", { className: InlineStatus_default.body, children })
1376
+ ]
1377
+ }
1378
+ );
1379
+ }
1338
1380
  function InputContainer({
1339
1381
  label,
1340
1382
  labelAction,
@@ -1350,8 +1392,6 @@ function InputContainer({
1350
1392
  labelWidth = "160px",
1351
1393
  modified = false
1352
1394
  }) {
1353
- const message = error != null ? error : helpText;
1354
- const messageClass = error ? InputContainer_default.errorText : InputContainer_default.helpText;
1355
1395
  const renderLabelRow = (label || labelAction) && /* @__PURE__ */ jsxs("div", { className: `${InputContainer_default.labelRow} dbc-flex dbc-items-center dbc-gap-md`, children: [
1356
1396
  label && /* @__PURE__ */ jsxs("label", { className: InputContainer_default.label, htmlFor, children: [
1357
1397
  label,
@@ -1359,10 +1399,10 @@ function InputContainer({
1359
1399
  ] }),
1360
1400
  labelAction && /* @__PURE__ */ jsx("div", { className: InputContainer_default.labelAction, children: labelAction })
1361
1401
  ] });
1362
- const renderMessageRow = (message || helpTextAddition) && /* @__PURE__ */ jsxs("div", { className: `${messageClass} ${InputContainer_default.messageRow}`, children: [
1363
- /* @__PURE__ */ jsx("span", { children: message }),
1402
+ const renderMessageRow = (error || helpText || helpTextAddition) && /* @__PURE__ */ jsx("div", { className: `${error ? InputContainer_default.errorText : InputContainer_default.helpText} ${InputContainer_default.messageRow}`, children: error ? /* @__PURE__ */ jsx(InlineStatus, { severity: "error", disableIcon: true, children: error }) : /* @__PURE__ */ jsxs(Fragment, { children: [
1403
+ /* @__PURE__ */ jsx("span", { children: helpText }),
1364
1404
  helpTextAddition && /* @__PURE__ */ jsx("span", { className: InputContainer_default.helpTextAddition, children: helpTextAddition })
1365
- ] });
1405
+ ] }) });
1366
1406
  if (orientation === "vertical") {
1367
1407
  return /* @__PURE__ */ jsxs(
1368
1408
  "div",
@@ -2734,6 +2774,7 @@ var Hyperlink_default = {
2734
2774
  primary: "Hyperlink_primary",
2735
2775
  block: "Hyperlink_block",
2736
2776
  content: "Hyperlink_content",
2777
+ disabled: "Hyperlink_disabled",
2737
2778
  icon: "Hyperlink_icon"
2738
2779
  };
2739
2780
  function cx2(...parts) {
@@ -2755,13 +2796,15 @@ function Hyperlink(props) {
2755
2796
  as = "a",
2756
2797
  variant = "primary",
2757
2798
  inline = true,
2799
+ disabled = false,
2758
2800
  ...rest
2759
2801
  } = props;
2760
2802
  const linkClassName = cx2(
2761
2803
  Hyperlink_default.link,
2762
2804
  className,
2763
2805
  variant === "secondary" ? Hyperlink_default.secondary : Hyperlink_default.primary,
2764
- inline ? "" : Hyperlink_default.block
2806
+ inline ? "" : Hyperlink_default.block,
2807
+ disabled ? Hyperlink_default.disabled : ""
2765
2808
  );
2766
2809
  if (asChild) {
2767
2810
  const child = React19.Children.only(children);
@@ -2774,6 +2817,7 @@ function Hyperlink(props) {
2774
2817
  ...rest,
2775
2818
  className: cx2(childProps.className, linkClassName),
2776
2819
  children: renderInner(childProps.children, icon),
2820
+ "aria-disabled": disabled || void 0,
2777
2821
  onClick: (e) => {
2778
2822
  e.stopPropagation();
2779
2823
  if (childProps.onClick) {
@@ -2788,6 +2832,7 @@ function Hyperlink(props) {
2788
2832
  {
2789
2833
  type: "button",
2790
2834
  className: linkClassName,
2835
+ disabled,
2791
2836
  ...rest,
2792
2837
  children: renderInner(children, icon)
2793
2838
  }
@@ -2796,8 +2841,12 @@ function Hyperlink(props) {
2796
2841
  return /* @__PURE__ */ jsx(
2797
2842
  "a",
2798
2843
  {
2799
- onClick: (e) => e.stopPropagation(),
2844
+ onClick: (e) => {
2845
+ e.stopPropagation();
2846
+ if (disabled) e.preventDefault();
2847
+ },
2800
2848
  className: linkClassName,
2849
+ "aria-disabled": disabled || void 0,
2801
2850
  ...rest,
2802
2851
  children: renderInner(children, icon)
2803
2852
  }
@@ -12757,46 +12806,4 @@ function Alert({
12757
12806
  );
12758
12807
  }
12759
12808
 
12760
- // src/components/inline-status/InlineStatus.module.css
12761
- var InlineStatus_default = {
12762
- container: "InlineStatus_container",
12763
- fullWidth: "InlineStatus_fullWidth",
12764
- leading: "InlineStatus_leading",
12765
- body: "InlineStatus_body",
12766
- sm: "InlineStatus_sm",
12767
- md: "InlineStatus_md",
12768
- neutral: "InlineStatus_neutral",
12769
- success: "InlineStatus_success",
12770
- warning: "InlineStatus_warning",
12771
- error: "InlineStatus_error",
12772
- info: "InlineStatus_info",
12773
- brand: "InlineStatus_brand"
12774
- };
12775
- function InlineStatus({
12776
- children,
12777
- severity = "neutral",
12778
- customIcon,
12779
- disableIcon = false,
12780
- fullWidth = false,
12781
- size = "sm"
12782
- }) {
12783
- const hasLeading = Boolean(customIcon) || !disableIcon;
12784
- return /* @__PURE__ */ jsxs(
12785
- "div",
12786
- {
12787
- className: [
12788
- InlineStatus_default.container,
12789
- InlineStatus_default[severity],
12790
- InlineStatus_default[size],
12791
- fullWidth ? InlineStatus_default.fullWidth : "",
12792
- hasLeading ? InlineStatus_default.hasLeading : ""
12793
- ].filter(Boolean).join(" "),
12794
- children: [
12795
- hasLeading ? /* @__PURE__ */ jsx("span", { className: InlineStatus_default.leading, children: customIcon != null ? customIcon : /* @__PURE__ */ jsx(Icon, { severity }) }) : null,
12796
- /* @__PURE__ */ jsx("span", { className: InlineStatus_default.body, children })
12797
- ]
12798
- }
12799
- );
12800
- }
12801
-
12802
12809
  export { Accordion, Alert, AppHeader, AttributeChip, Avatar, Breadcrumbs, Button, ButtonSelect, Card, CardContainer, ChartSemanticColorVar, Checkbox, CheckboxGroup, Chip, ChipMultiToggle, Circle, CodeBlock, CollapsibleHeadline, CopyButton, DateTimePicker, Divider, FadeOverlay, FilterField, Footer, Grid, GridItem, Headline, Hyperlink, Icon, InlineStatus, Input, InputContainer, IntervalSelect, JsonViewer, Menu, MetaBar, Modal, ModalProvider, MultiSelect, NUMBER_OPERATORS, NavBar, Page, PageLayout, Pagination, Panel, Popover, RadioButton, RadioButtonGroup, SearchBox, SegmentedProgressBar, Select, SeverityIcon, SidePanel, Sidebar, SkeletonLoader, SkeletonLoaderItem, SplitButton, SplitPane, SplitPaneGutter, SplitPanePrimary, SplitPaneSecondary, Stack, StatePage, StickyFooterLayout, Table, Tabs, Textarea, ThemeButton, ThemeMenuSection, Toast, ToastProvider, Tooltip, TooltipContext, TooltipProvider, Typeahead, UserDisplay, formatDate, nestedFiltering, useDeviceSize, useModal, useOptionalToast, usePagination, useSidePanel, useSorting, useTableData, useTableSelection, useTheme, useTimeDuration, useToast, useTooltipTrigger, useViewportFill };
package/dist/tanstack.cjs CHANGED
@@ -342,6 +342,73 @@ var InputContainer_default = {
342
342
  messageRow: "InputContainer_messageRow2",
343
343
  inputContainer: "InputContainer_inputContainer2"
344
344
  };
345
+
346
+ // src/components/inline-status/InlineStatus.module.css
347
+ var InlineStatus_default = {
348
+ container: "InlineStatus_container2",
349
+ fullWidth: "InlineStatus_fullWidth2",
350
+ leading: "InlineStatus_leading2",
351
+ body: "InlineStatus_body2",
352
+ sm: "InlineStatus_sm2",
353
+ md: "InlineStatus_md2",
354
+ neutral: "InlineStatus_neutral2",
355
+ success: "InlineStatus_success2",
356
+ warning: "InlineStatus_warning2",
357
+ error: "InlineStatus_error2",
358
+ info: "InlineStatus_info2",
359
+ brand: "InlineStatus_brand2"
360
+ };
361
+
362
+ // src/components/icon/Icon.module.css
363
+ var Icon_default = {
364
+ container: "Icon_container2",
365
+ icon: "Icon_icon2",
366
+ success: "Icon_success2",
367
+ error: "Icon_error2",
368
+ warning: "Icon_warning2",
369
+ info: "Icon_info2",
370
+ brand: "Icon_brand2"
371
+ };
372
+ var SeverityIcon = {
373
+ neutral: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleCheck, {}),
374
+ success: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleCheck, {}),
375
+ error: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleX, {}),
376
+ info: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Info, {}),
377
+ warning: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleAlert, {}),
378
+ brand: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Building2, {})
379
+ };
380
+ function Icon({ severity, label, customIcon }) {
381
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${Icon_default.container}`, children: [
382
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: `${Icon_default.icon} ${severity ? Icon_default[severity] : ""} dbc-icon`, children: customIcon ? customIcon : severity ? SeverityIcon[severity] : null }),
383
+ label && /* @__PURE__ */ jsxRuntime.jsx("span", { children: label })
384
+ ] });
385
+ }
386
+ function InlineStatus({
387
+ children,
388
+ severity = "neutral",
389
+ customIcon,
390
+ disableIcon = false,
391
+ fullWidth = false,
392
+ size = "sm"
393
+ }) {
394
+ const hasLeading = Boolean(customIcon) || !disableIcon;
395
+ return /* @__PURE__ */ jsxRuntime.jsxs(
396
+ "div",
397
+ {
398
+ className: [
399
+ InlineStatus_default.container,
400
+ InlineStatus_default[severity],
401
+ InlineStatus_default[size],
402
+ fullWidth ? InlineStatus_default.fullWidth : "",
403
+ hasLeading ? InlineStatus_default.hasLeading : ""
404
+ ].filter(Boolean).join(" "),
405
+ children: [
406
+ hasLeading ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: InlineStatus_default.leading, children: customIcon != null ? customIcon : /* @__PURE__ */ jsxRuntime.jsx(Icon, { severity }) }) : null,
407
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: InlineStatus_default.body, children })
408
+ ]
409
+ }
410
+ );
411
+ }
345
412
  function InputContainer({
346
413
  label,
347
414
  labelAction,
@@ -357,8 +424,6 @@ function InputContainer({
357
424
  labelWidth = "160px",
358
425
  modified = false
359
426
  }) {
360
- const message = error != null ? error : helpText;
361
- const messageClass = error ? InputContainer_default.errorText : InputContainer_default.helpText;
362
427
  const renderLabelRow = (label || labelAction) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${InputContainer_default.labelRow} dbc-flex dbc-items-center dbc-gap-md`, children: [
363
428
  label && /* @__PURE__ */ jsxRuntime.jsxs("label", { className: InputContainer_default.label, htmlFor, children: [
364
429
  label,
@@ -366,10 +431,10 @@ function InputContainer({
366
431
  ] }),
367
432
  labelAction && /* @__PURE__ */ jsxRuntime.jsx("div", { className: InputContainer_default.labelAction, children: labelAction })
368
433
  ] });
369
- const renderMessageRow = (message || helpTextAddition) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${messageClass} ${InputContainer_default.messageRow}`, children: [
370
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: message }),
434
+ const renderMessageRow = (error || helpText || helpTextAddition) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${error ? InputContainer_default.errorText : InputContainer_default.helpText} ${InputContainer_default.messageRow}`, children: error ? /* @__PURE__ */ jsxRuntime.jsx(InlineStatus, { severity: "error", disableIcon: true, children: error }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
435
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: helpText }),
371
436
  helpTextAddition && /* @__PURE__ */ jsxRuntime.jsx("span", { className: InputContainer_default.helpTextAddition, children: helpTextAddition })
372
- ] });
437
+ ] }) });
373
438
  if (orientation === "vertical") {
374
439
  return /* @__PURE__ */ jsxRuntime.jsxs(
375
440
  "div",
package/dist/tanstack.css CHANGED
@@ -168,12 +168,16 @@
168
168
  .Button_button2:disabled,
169
169
  .Button_button2[aria-disabled=true] {
170
170
  cursor: not-allowed;
171
- pointer-events: none;
172
171
  background-color: var(--color-disabled-bg);
173
172
  border-color: transparent;
174
173
  color: var(--color-disabled-fg);
175
174
  opacity: 0.5;
176
175
  }
176
+ .Button_button2:is(:disabled, [aria-disabled=true]):hover {
177
+ background-color: var(--color-disabled-bg);
178
+ border-color: transparent;
179
+ color: var(--color-disabled-fg);
180
+ }
177
181
  .Button_link2 {
178
182
  text-decoration: none;
179
183
  font-size: var(--font-size-sm);
@@ -632,6 +636,116 @@
632
636
  border-radius: var(--border-radius-default);
633
637
  }
634
638
 
639
+ /* src/components/inline-status/InlineStatus.module.css */
640
+ .InlineStatus_container2 {
641
+ --inline-status-bg: var(--color-bg-toolbar);
642
+ --inline-status-fg: var(--color-fg-default);
643
+ --inline-status-border: var(--color-border-subtle);
644
+ display: inline-flex;
645
+ align-items: flex-start;
646
+ gap: var(--spacing-xs);
647
+ max-inline-size: 100%;
648
+ padding: var(--spacing-2xs) var(--spacing-sm);
649
+ border: 1px solid var(--inline-status-border);
650
+ border-radius: var(--border-radius-default);
651
+ background: var(--inline-status-bg);
652
+ color: var(--inline-status-fg);
653
+ font-family: var(--font-family);
654
+ font-size: var(--font-size-sm);
655
+ font-weight: var(--font-weight-default);
656
+ line-height: var(--line-height-normal);
657
+ box-sizing: border-box;
658
+ }
659
+ .InlineStatus_fullWidth2 {
660
+ display: flex;
661
+ inline-size: 100%;
662
+ }
663
+ .InlineStatus_leading2 {
664
+ display: inline-flex;
665
+ align-items: center;
666
+ justify-content: center;
667
+ flex: 0 0 auto;
668
+ block-size: 1lh;
669
+ }
670
+ .InlineStatus_leading2 svg {
671
+ inline-size: var(--icon-size-sm);
672
+ block-size: var(--icon-size-sm);
673
+ color: currentColor;
674
+ }
675
+ .InlineStatus_body2 {
676
+ min-width: 0;
677
+ overflow-wrap: anywhere;
678
+ word-break: break-word;
679
+ white-space: normal;
680
+ }
681
+ .InlineStatus_sm2 {
682
+ font-size: var(--font-size-xs);
683
+ }
684
+ .InlineStatus_md2 {
685
+ font-size: var(--font-size-sm);
686
+ }
687
+ .InlineStatus_neutral2 {
688
+ --inline-status-bg: var(--color-bg-toolbar);
689
+ --inline-status-fg: var(--color-fg-default);
690
+ --inline-status-border: transparent;
691
+ }
692
+ .InlineStatus_success2 {
693
+ --inline-status-bg: var(--color-status-success-bg);
694
+ --inline-status-fg: var(--color-status-success-fg);
695
+ --inline-status-border: var(--color-status-success-border);
696
+ }
697
+ .InlineStatus_warning2 {
698
+ --inline-status-bg: var(--color-status-warning-bg);
699
+ --inline-status-fg: var(--color-status-warning-fg);
700
+ --inline-status-border: var(--color-status-warning-border);
701
+ }
702
+ .InlineStatus_error2 {
703
+ --inline-status-bg: var(--color-status-error-bg);
704
+ --inline-status-fg: var(--color-status-error-fg);
705
+ --inline-status-border: var(--color-status-error-border);
706
+ }
707
+ .InlineStatus_info2 {
708
+ --inline-status-bg: var(--color-status-info-bg);
709
+ --inline-status-fg: var(--color-status-info-fg);
710
+ --inline-status-border: var(--color-status-info-border);
711
+ }
712
+ .InlineStatus_brand2 {
713
+ --inline-status-bg: color-mix(in srgb, var(--color-brand) 10%, var(--color-bg-surface));
714
+ --inline-status-fg: var(--color-brand);
715
+ --inline-status-border: color-mix(in srgb, var(--color-brand) 35%, transparent);
716
+ }
717
+
718
+ /* src/components/icon/Icon.module.css */
719
+ .Icon_container2 {
720
+ display: inline-flex;
721
+ align-items: center;
722
+ vertical-align: middle;
723
+ gap: var(--spacing-xxs);
724
+ color: var(--color-fg-subtle);
725
+ font-size: var(--font-size-sm);
726
+ }
727
+ .Icon_icon2 {
728
+ display: flex;
729
+ }
730
+ .Icon_icon2 svg {
731
+ height: var(--icon-size-md);
732
+ }
733
+ .Icon_success2 {
734
+ color: var(--color-status-success);
735
+ }
736
+ .Icon_error2 {
737
+ color: var(--color-status-error);
738
+ }
739
+ .Icon_warning2 {
740
+ color: var(--color-status-warning);
741
+ }
742
+ .Icon_info2 {
743
+ color: var(--color-status-info);
744
+ }
745
+ .Icon_brand2 {
746
+ color: var(--color-fg-on-brand);
747
+ }
748
+
635
749
  /* src/components/forms/radio-buttons/RadioButtons.module.css */
636
750
  .RadioButtons_container2 {
637
751
  display: inline-flex;
package/dist/tanstack.js CHANGED
@@ -2,7 +2,7 @@ import { useReactTable, getSortedRowModel, getCoreRowModel } from '@tanstack/rea
2
2
  import * as React8 from 'react';
3
3
  import { createContext, forwardRef, useId, useState, useRef, useEffect, useCallback, useImperativeHandle, useLayoutEffect, useContext, useMemo } from 'react';
4
4
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
5
- import { LoaderCircle, ChevronUp, ChevronDown, Check, ListChevronsDownUp, Settings, ChevronsLeft, ArrowLeft, ArrowRight, ChevronsRight, ArrowUp, ArrowDown } from 'lucide-react';
5
+ import { LoaderCircle, ChevronUp, ChevronDown, Check, Building2, CircleAlert, Info, CircleX, CircleCheck, ListChevronsDownUp, Settings, ChevronsLeft, ArrowLeft, ArrowRight, ChevronsRight, ArrowUp, ArrowDown } from 'lucide-react';
6
6
  import { createPortal } from 'react-dom';
7
7
 
8
8
  // src/components/table/components/column-resizer/ColumnResizer.module.css
@@ -321,6 +321,73 @@ var InputContainer_default = {
321
321
  messageRow: "InputContainer_messageRow2",
322
322
  inputContainer: "InputContainer_inputContainer2"
323
323
  };
324
+
325
+ // src/components/inline-status/InlineStatus.module.css
326
+ var InlineStatus_default = {
327
+ container: "InlineStatus_container2",
328
+ fullWidth: "InlineStatus_fullWidth2",
329
+ leading: "InlineStatus_leading2",
330
+ body: "InlineStatus_body2",
331
+ sm: "InlineStatus_sm2",
332
+ md: "InlineStatus_md2",
333
+ neutral: "InlineStatus_neutral2",
334
+ success: "InlineStatus_success2",
335
+ warning: "InlineStatus_warning2",
336
+ error: "InlineStatus_error2",
337
+ info: "InlineStatus_info2",
338
+ brand: "InlineStatus_brand2"
339
+ };
340
+
341
+ // src/components/icon/Icon.module.css
342
+ var Icon_default = {
343
+ container: "Icon_container2",
344
+ icon: "Icon_icon2",
345
+ success: "Icon_success2",
346
+ error: "Icon_error2",
347
+ warning: "Icon_warning2",
348
+ info: "Icon_info2",
349
+ brand: "Icon_brand2"
350
+ };
351
+ var SeverityIcon = {
352
+ neutral: /* @__PURE__ */ jsx(CircleCheck, {}),
353
+ success: /* @__PURE__ */ jsx(CircleCheck, {}),
354
+ error: /* @__PURE__ */ jsx(CircleX, {}),
355
+ info: /* @__PURE__ */ jsx(Info, {}),
356
+ warning: /* @__PURE__ */ jsx(CircleAlert, {}),
357
+ brand: /* @__PURE__ */ jsx(Building2, {})
358
+ };
359
+ function Icon({ severity, label, customIcon }) {
360
+ return /* @__PURE__ */ jsxs("div", { className: `${Icon_default.container}`, children: [
361
+ /* @__PURE__ */ jsx("span", { className: `${Icon_default.icon} ${severity ? Icon_default[severity] : ""} dbc-icon`, children: customIcon ? customIcon : severity ? SeverityIcon[severity] : null }),
362
+ label && /* @__PURE__ */ jsx("span", { children: label })
363
+ ] });
364
+ }
365
+ function InlineStatus({
366
+ children,
367
+ severity = "neutral",
368
+ customIcon,
369
+ disableIcon = false,
370
+ fullWidth = false,
371
+ size = "sm"
372
+ }) {
373
+ const hasLeading = Boolean(customIcon) || !disableIcon;
374
+ return /* @__PURE__ */ jsxs(
375
+ "div",
376
+ {
377
+ className: [
378
+ InlineStatus_default.container,
379
+ InlineStatus_default[severity],
380
+ InlineStatus_default[size],
381
+ fullWidth ? InlineStatus_default.fullWidth : "",
382
+ hasLeading ? InlineStatus_default.hasLeading : ""
383
+ ].filter(Boolean).join(" "),
384
+ children: [
385
+ hasLeading ? /* @__PURE__ */ jsx("span", { className: InlineStatus_default.leading, children: customIcon != null ? customIcon : /* @__PURE__ */ jsx(Icon, { severity }) }) : null,
386
+ /* @__PURE__ */ jsx("span", { className: InlineStatus_default.body, children })
387
+ ]
388
+ }
389
+ );
390
+ }
324
391
  function InputContainer({
325
392
  label,
326
393
  labelAction,
@@ -336,8 +403,6 @@ function InputContainer({
336
403
  labelWidth = "160px",
337
404
  modified = false
338
405
  }) {
339
- const message = error != null ? error : helpText;
340
- const messageClass = error ? InputContainer_default.errorText : InputContainer_default.helpText;
341
406
  const renderLabelRow = (label || labelAction) && /* @__PURE__ */ jsxs("div", { className: `${InputContainer_default.labelRow} dbc-flex dbc-items-center dbc-gap-md`, children: [
342
407
  label && /* @__PURE__ */ jsxs("label", { className: InputContainer_default.label, htmlFor, children: [
343
408
  label,
@@ -345,10 +410,10 @@ function InputContainer({
345
410
  ] }),
346
411
  labelAction && /* @__PURE__ */ jsx("div", { className: InputContainer_default.labelAction, children: labelAction })
347
412
  ] });
348
- const renderMessageRow = (message || helpTextAddition) && /* @__PURE__ */ jsxs("div", { className: `${messageClass} ${InputContainer_default.messageRow}`, children: [
349
- /* @__PURE__ */ jsx("span", { children: message }),
413
+ const renderMessageRow = (error || helpText || helpTextAddition) && /* @__PURE__ */ jsx("div", { className: `${error ? InputContainer_default.errorText : InputContainer_default.helpText} ${InputContainer_default.messageRow}`, children: error ? /* @__PURE__ */ jsx(InlineStatus, { severity: "error", disableIcon: true, children: error }) : /* @__PURE__ */ jsxs(Fragment, { children: [
414
+ /* @__PURE__ */ jsx("span", { children: helpText }),
350
415
  helpTextAddition && /* @__PURE__ */ jsx("span", { className: InputContainer_default.helpTextAddition, children: helpTextAddition })
351
- ] });
416
+ ] }) });
352
417
  if (orientation === "vertical") {
353
418
  return /* @__PURE__ */ jsxs(
354
419
  "div",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dbcdk/react-components",
3
- "version": "0.0.102",
3
+ "version": "0.0.103",
4
4
  "description": "Reusable React components for DBC projects",
5
5
  "license": "ISC",
6
6
  "author": "",