@common-origin/design-system 1.5.0 → 1.7.0

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.js CHANGED
@@ -760,14 +760,14 @@ var AvatarImage = styled.img.withConfig({
760
760
  },
761
761
  displayName: "Avatar__AvatarImage",
762
762
  componentId: "sc-ezn4ax-1"
763
- })(templateObject_2$9 || (templateObject_2$9 = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: ", ";\n /* Remove the img role since the container already has role=\"img\" */\n"], ["\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: ", ";\n /* Remove the img role since the container already has role=\"img\" */\n"])), tokens.base.border.radius.circle);
763
+ })(templateObject_2$a || (templateObject_2$a = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: ", ";\n /* Remove the img role since the container already has role=\"img\" */\n"], ["\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: ", ";\n /* Remove the img role since the container already has role=\"img\" */\n"])), tokens.base.border.radius.circle);
764
764
  var AvatarInitials = styled.span.withConfig({
765
765
  shouldForwardProp: function shouldForwardProp(prop) {
766
766
  return !prop.startsWith('$');
767
767
  },
768
768
  displayName: "Avatar__AvatarInitials",
769
769
  componentId: "sc-ezn4ax-2"
770
- })(templateObject_3$7 || (templateObject_3$7 = __makeTemplateObject(["\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n color: ", ";\n line-height: 1;\n text-transform: uppercase;\n user-select: none;\n"], ["\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n color: ", ";\n line-height: 1;\n text-transform: uppercase;\n user-select: none;\n"
770
+ })(templateObject_3$8 || (templateObject_3$8 = __makeTemplateObject(["\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n color: ", ";\n line-height: 1;\n text-transform: uppercase;\n user-select: none;\n"], ["\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n color: ", ";\n line-height: 1;\n text-transform: uppercase;\n user-select: none;\n"
771
771
  // Helper function to get initials from name
772
772
  ])), tokens.base.fontFamily.body, tokens.base.fontWeight[3], function (_a) {
773
773
  var $size = _a.$size;
@@ -830,7 +830,7 @@ var Avatar = function Avatar(_a) {
830
830
  "aria-hidden": "true"
831
831
  }, initials));
832
832
  };
833
- var templateObject_1$l, templateObject_2$9, templateObject_3$7;
833
+ var templateObject_1$l, templateObject_2$a, templateObject_3$8;
834
834
 
835
835
  React.createElement;
836
836
  var StyledBox = styled.div.withConfig({
@@ -844,9 +844,9 @@ var StyledBox = styled.div.withConfig({
844
844
  ])), function (props) {
845
845
  return props.$display && styled.css(templateObject_1$k || (templateObject_1$k = __makeTemplateObject(["display: ", ";"], ["display: ", ";"])), props.$display);
846
846
  }, function (props) {
847
- return props.$flexDirection && styled.css(templateObject_2$8 || (templateObject_2$8 = __makeTemplateObject(["flex-direction: ", ";"], ["flex-direction: ", ";"])), props.$flexDirection);
847
+ return props.$flexDirection && styled.css(templateObject_2$9 || (templateObject_2$9 = __makeTemplateObject(["flex-direction: ", ";"], ["flex-direction: ", ";"])), props.$flexDirection);
848
848
  }, function (props) {
849
- return props.$justifyContent && styled.css(templateObject_3$6 || (templateObject_3$6 = __makeTemplateObject(["justify-content: ", ";"], ["justify-content: ", ";"])), props.$justifyContent);
849
+ return props.$justifyContent && styled.css(templateObject_3$7 || (templateObject_3$7 = __makeTemplateObject(["justify-content: ", ";"], ["justify-content: ", ";"])), props.$justifyContent);
850
850
  }, function (props) {
851
851
  return props.$alignItems && styled.css(templateObject_4$5 || (templateObject_4$5 = __makeTemplateObject(["align-items: ", ";"], ["align-items: ", ";"])), props.$alignItems);
852
852
  }, function (props) {
@@ -1032,7 +1032,7 @@ var BoxTransform = function BoxTransform(props) {
1032
1032
  }, rest), children);
1033
1033
  };
1034
1034
  var Box = BoxTransform;
1035
- var templateObject_1$k, templateObject_2$8, templateObject_3$6, templateObject_4$5, templateObject_5$4, templateObject_6$2, templateObject_7$2, templateObject_8$1, templateObject_9$1, templateObject_10$1, templateObject_11$1, templateObject_12$1, templateObject_13$1, templateObject_14$1, templateObject_15$1, templateObject_16$1, templateObject_17$1, templateObject_18$1, templateObject_19$1, templateObject_20$1, templateObject_21$1, templateObject_22$1, templateObject_23$1, templateObject_24$1, templateObject_25$1, templateObject_26$1, templateObject_27$1, templateObject_28$1, templateObject_29$1, templateObject_30$1, templateObject_31$1, templateObject_32$1, templateObject_33$1, templateObject_34$1, templateObject_35$1, templateObject_36, templateObject_37, templateObject_38, templateObject_39, templateObject_40, templateObject_41, templateObject_42, templateObject_43;
1035
+ var templateObject_1$k, templateObject_2$9, templateObject_3$7, templateObject_4$5, templateObject_5$4, templateObject_6$2, templateObject_7$2, templateObject_8$1, templateObject_9$1, templateObject_10$1, templateObject_11$1, templateObject_12$1, templateObject_13$1, templateObject_14$1, templateObject_15$1, templateObject_16$1, templateObject_17$1, templateObject_18$1, templateObject_19$1, templateObject_20$1, templateObject_21$1, templateObject_22$1, templateObject_23$1, templateObject_24$1, templateObject_25$1, templateObject_26$1, templateObject_27$1, templateObject_28$1, templateObject_29$1, templateObject_30$1, templateObject_31$1, templateObject_32$1, templateObject_33$1, templateObject_34$1, templateObject_35$1, templateObject_36, templateObject_37, templateObject_38, templateObject_39, templateObject_40, templateObject_41, templateObject_42, templateObject_43;
1036
1036
 
1037
1037
  var add = {
1038
1038
  path: "M13 11H19V13H13V19H11V13H5V11H11V5H13V11Z",
@@ -1062,6 +1062,10 @@ var caret = {
1062
1062
  path: "m14.77 11.808-4.458-3.715A.8.8 0 0 0 9 8.708v6.584a.8.8 0 0 0 1.312.614l4.458-3.714a.25.25 0 0 0 0-.384Z",
1063
1063
  name: "caret"
1064
1064
  };
1065
+ var check = {
1066
+ path: "M9.16699 18.375L4.40039 14.7998L5.59961 13.2002L8.83301 15.625L17.2256 5.36719L18.7744 6.63281L9.16699 18.375Z",
1067
+ name: "check"
1068
+ };
1065
1069
  var close = {
1066
1070
  path: "M19.4141 6L13.4141 12L19.4141 18L18 19.4141L12 13.4141L6 19.4141L4.58594 18L10.5859 12L4.58594 6L6 4.58594L12 10.5859L18 4.58594L19.4141 6Z",
1067
1071
  name: "close"
@@ -1102,6 +1106,10 @@ var link = {
1102
1106
  path: "M10 7C10.5523 7 11 7.44772 11 8C11 8.55228 10.5523 9 10 9H7C5.34315 9 4 10.3431 4 12C4 13.6569 5.34315 15 7 15H10C10.5523 15 11 15.4477 11 16C11 16.5523 10.5523 17 10 17H7C4.23858 17 2 14.7614 2 12C2 9.23858 4.23858 7 7 7H10Z M17 7C19.7614 7 22 9.23858 22 12C22 14.7614 19.7614 17 17 17H14C13.4477 17 13 16.5523 13 16C13 15.4477 13.4477 15 14 15H17C18.6569 15 20 13.6569 20 12C20 10.3431 18.6569 9 17 9H14C13.4477 9 13 8.55228 13 8C13 7.44772 13.4477 7 14 7H17Z M16 11C16.5523 11 17 11.4477 17 12C17 12.5523 16.5523 13 16 13H8C7.44772 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11H16Z",
1103
1107
  name: "link"
1104
1108
  };
1109
+ var table = {
1110
+ path: "M20 10H16V19H19C19.4995 19 19.7737 18.9982 19.9639 18.9727C19.9662 18.9724 19.9685 18.971 19.9707 18.9707C19.971 18.9685 19.9724 18.9662 19.9727 18.9639C19.9982 18.7737 20 18.4995 20 18V10ZM22 18C22 18.4431 22.0018 18.876 21.9541 19.2305C21.9026 19.6137 21.7773 20.0509 21.4141 20.4141C21.0509 20.7773 20.6137 20.9026 20.2305 20.9541C19.876 21.0018 19.4431 21 19 21H14V8.00001H22V18Z M10 8.00001V21H5.00001C4.55687 21 4.12397 21.0018 3.76954 20.9541C3.38634 20.9026 2.94916 20.7773 2.58595 20.4141C2.22273 20.0509 2.09743 19.6137 2.04591 19.2305C1.99825 18.876 2.00001 18.4431 2.00001 18V8.00001H10ZM4.00001 18C4.00001 18.4995 4.00181 18.7737 4.02735 18.9639C4.02766 18.9661 4.02803 18.9685 4.02833 18.9707C4.03085 18.9711 4.03351 18.9723 4.03614 18.9727C4.22633 18.9982 4.50051 19 5.00001 19H8.00001V10H4.00001V18Z M16 8.00001V21H8.00001V8.00001H16ZM10 19H14V10H10V19Z M20 6.00001C20 5.50051 19.9982 5.22633 19.9727 5.03614C19.9723 5.03351 19.9711 5.03085 19.9707 5.02833C19.9685 5.02803 19.9661 5.02766 19.9639 5.02735C19.7737 5.00181 19.4995 5.00001 19 5.00001H5.00001C4.50051 5.00001 4.22633 5.00181 4.03614 5.02735C4.03355 5.0277 4.03081 5.02798 4.02833 5.02833C4.02798 5.03081 4.0277 5.03355 4.02735 5.03614C4.00181 5.22633 4.00001 5.50051 4.00001 6.00001V8.00001H20V6.00001ZM22 10H2.00001V6.00001C2.00001 5.55687 1.99825 5.12397 2.04591 4.76954C2.09743 4.38634 2.22273 3.94916 2.58595 3.58595C2.94916 3.22273 3.38634 3.09743 3.76954 3.04591C4.12397 2.99825 4.55687 3.00001 5.00001 3.00001H19C19.4431 3.00001 19.876 2.99825 20.2305 3.04591C20.6137 3.09743 21.0509 3.22273 21.4141 3.58595C21.7773 3.94916 21.9026 4.38634 21.9541 4.76954C22.0018 5.12397 22 5.55687 22 6.00001V10Z",
1111
+ name: "table"
1112
+ };
1105
1113
  var userBox = {
1106
1114
  path: "M12 6C14.2091 6 16 7.79086 16 10C16 12.2091 14.2091 14 12 14C9.79086 14 8 12.2091 8 10C8 7.79086 9.79086 6 12 6ZM12 8C10.8954 8 10 8.89543 10 10C10 11.1046 10.8954 12 12 12C13.1046 12 14 11.1046 14 10C14 8.89543 13.1046 8 12 8Z M14 2C17.7712 2 19.6566 2.0003 20.8281 3.17188C21.9997 4.34345 22 6.22876 22 10V14C22 17.7712 21.9997 19.6566 20.8281 20.8281C19.803 21.8533 18.2315 21.982 15.3281 21.998L14 22H10L8.67188 21.998C5.8719 21.9826 4.31033 21.8625 3.2832 20.9346L3.17188 20.8281C2.14675 19.803 2.01797 18.2315 2.00195 15.3281L2 14V10C2 6.34627 2 4.46248 3.06543 3.2832L3.17188 3.17188C4.34345 2.0003 6.22876 2 10 2H14ZM12 18C10.8577 18 9.76263 18.3153 8.88574 18.876C8.39459 19.1901 7.99492 19.5688 7.69043 19.9834C8.33459 19.9972 9.09233 20 10 20H14C14.9072 20 15.6646 19.9971 16.3086 19.9834C16.0041 19.5689 15.6052 19.19 15.1143 18.876C14.2374 18.3153 13.1423 18 12 18ZM10 4C8.05784 4 6.80197 4.00454 5.87695 4.12891C5.00986 4.24554 4.73816 4.43372 4.58594 4.58594C4.43372 4.73816 4.24554 5.00986 4.12891 5.87695C4.00454 6.80197 4 8.05784 4 10V14C4 15.9422 4.00454 17.198 4.12891 18.123C4.24554 18.9901 4.43372 19.2618 4.58594 19.4141C4.71234 19.5405 4.92163 19.6893 5.48535 19.8037C5.96679 18.7505 6.77822 17.8493 7.80859 17.1904C9.02742 16.4111 10.5007 16 12 16C13.4993 16 14.9726 16.4111 16.1914 17.1904C17.2217 17.8492 18.0322 18.7507 18.5137 19.8037C19.0781 19.6893 19.2876 19.5405 19.4141 19.4141C19.5663 19.2618 19.7545 18.9901 19.8711 18.123C19.9955 17.198 20 15.9422 20 14V10C20 8.05784 19.9955 6.80197 19.8711 5.87695C19.7545 5.00986 19.5663 4.73816 19.4141 4.58594C19.2618 4.43372 18.9901 4.24554 18.123 4.12891C17.198 4.00454 15.9422 4 14 4H10Z",
1107
1115
  name: "userBox"
@@ -1114,8 +1122,13 @@ var iconsData = {
1114
1122
  arrowRight: arrowRight,
1115
1123
  back: back,
1116
1124
  caret: caret,
1125
+ check: check,
1117
1126
  close: close,
1118
1127
  directionRight: directionRight,
1128
+ "export": {
1129
+ path: "M7.70703 10.707L11 7.41406L11 14C11 14.5523 11.4477 15 12 15C12.5523 15 13 14.5523 13 14V7.41406L16.293 10.707L17.707 9.29297L12 3.58594L6.29297 9.29297L7.70703 10.707Z M4 17V16H6V17C6 17.5523 6.44772 18 7 18H17C17.5523 18 18 17.5523 18 17V16H20V17C20 18.6051 18.7394 19.9158 17.1543 19.9961L17 20H7C5.34315 20 4 18.6569 4 17Z",
1130
+ name: "export"
1131
+ },
1119
1132
  menu: menu,
1120
1133
  pause: pause,
1121
1134
  play: play,
@@ -1124,6 +1137,7 @@ var iconsData = {
1124
1137
  message: message,
1125
1138
  copy: copy,
1126
1139
  link: link,
1140
+ table: table,
1127
1141
  userBox: userBox
1128
1142
  };
1129
1143
 
@@ -1237,7 +1251,7 @@ var StyledLink = styled.a.withConfig({
1237
1251
  },
1238
1252
  displayName: "Button__StyledLink",
1239
1253
  componentId: "sc-1eiuum9-1"
1240
- })(templateObject_2$7 || (templateObject_2$7 = __makeTemplateObject(["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"], ["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"
1254
+ })(templateObject_2$8 || (templateObject_2$8 = __makeTemplateObject(["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"], ["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"
1241
1255
  // Helper function to get icon size based on button size
1242
1256
  ])), baseButtonStyles, button.primary.borderRadius, getVariantStyles, getSizeStyles);
1243
1257
  // Helper function to get icon size based on button size
@@ -1330,12 +1344,18 @@ var Button = function Button(_a) {
1330
1344
  "data-testid": dataTestId
1331
1345
  }, buttonProps), renderButtonContent(children, iconName, size));
1332
1346
  };
1333
- var templateObject_1$i, templateObject_2$7;
1347
+ var templateObject_1$i, templateObject_2$8;
1334
1348
 
1335
- React.createElement;
1336
1349
  var chip = tokens.component.chip;
1337
- // Helper functions to get styles as objects for CSS custom properties
1338
- var getVariantStylesAsObject = function getVariantStylesAsObject(variant) {
1350
+ // Helper function to get variant styles as objects for CSS custom properties
1351
+ var getVariantStylesAsObject = function getVariantStylesAsObject(variant, selected) {
1352
+ // Boolean chips with selected state get special background
1353
+ if (selected) {
1354
+ return {
1355
+ backgroundColor: tokens.semantic.color.background['interactive-subtle'],
1356
+ color: chip["default"].textColor
1357
+ };
1358
+ }
1339
1359
  switch (variant) {
1340
1360
  case 'emphasis':
1341
1361
  return {
@@ -1360,6 +1380,7 @@ var getVariantStylesAsObject = function getVariantStylesAsObject(variant) {
1360
1380
  };
1361
1381
  }
1362
1382
  };
1383
+ // Helper function to get size styles as objects for CSS custom properties
1363
1384
  var getSizeStylesAsObject = function getSizeStylesAsObject(size) {
1364
1385
  switch (size) {
1365
1386
  case 'small':
@@ -1367,11 +1388,6 @@ var getSizeStylesAsObject = function getSizeStylesAsObject(size) {
1367
1388
  font: chip.sizes.small.font,
1368
1389
  padding: chip.sizes.small.padding
1369
1390
  };
1370
- case 'large':
1371
- return {
1372
- font: chip.sizes.large.font,
1373
- padding: chip.sizes.large.padding
1374
- };
1375
1391
  case 'medium':
1376
1392
  default:
1377
1393
  return {
@@ -1380,27 +1396,51 @@ var getSizeStylesAsObject = function getSizeStylesAsObject(size) {
1380
1396
  };
1381
1397
  }
1382
1398
  };
1399
+
1400
+ React.createElement;
1383
1401
  // Base styled component using CSS variables to avoid prop leaking
1384
- var BaseChip = styled.span.withConfig({
1402
+ var BaseChipStyled = styled.span.withConfig({
1403
+ shouldForwardProp: function shouldForwardProp(prop) {
1404
+ return !prop.startsWith('$');
1405
+ },
1406
+ displayName: "ChipBase__BaseChipStyled",
1407
+ componentId: "sc-moa6zc-0"
1408
+ })(templateObject_1$h || (templateObject_1$h = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: fit-content;\n height: max-content;\n border-radius: 12px;\n box-sizing: border-box;\n user-select: none;\n white-space: nowrap;\n transition: ", ";\n \n /* Use CSS custom properties set by wrapper */\n background-color: var(--chip-bg-color);\n color: var(--chip-text-color);\n font: var(--chip-font);\n padding: var(--chip-padding);\n opacity: var(--chip-opacity, 1);\n cursor: var(--chip-cursor, default);\n \n &:hover {\n opacity: var(--chip-hover-opacity, var(--chip-opacity, 1));\n }\n \n &:active {\n opacity: var(--chip-active-opacity, var(--chip-opacity, 1));\n }\n \n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n }\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: fit-content;\n height: max-content;\n border-radius: 12px;\n box-sizing: border-box;\n user-select: none;\n white-space: nowrap;\n transition: ", ";\n \n /* Use CSS custom properties set by wrapper */\n background-color: var(--chip-bg-color);\n color: var(--chip-text-color);\n font: var(--chip-font);\n padding: var(--chip-padding);\n opacity: var(--chip-opacity, 1);\n cursor: var(--chip-cursor, default);\n \n &:hover {\n opacity: var(--chip-hover-opacity, var(--chip-opacity, 1));\n }\n \n &:active {\n opacity: var(--chip-active-opacity, var(--chip-opacity, 1));\n }\n \n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n }\n"
1409
+ // Icon container for selected indicator or leading icons
1410
+ ])), tokens.semantic.motion.interactive, chip.variants.interactive.backgroundColor);
1411
+ // Icon container for selected indicator or leading icons
1412
+ var IconContainer = styled.span.withConfig({
1413
+ displayName: "ChipBase__IconContainer",
1414
+ componentId: "sc-moa6zc-1"
1415
+ })(templateObject_2$7 || (templateObject_2$7 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n margin-right: ", ";\n"], ["\n display: inline-flex;\n align-items: center;\n margin-right: ", ";\n"
1416
+ // Close button for dismissible chips
1417
+ ])), tokens.semantic.spacing.layout.sm);
1418
+ // Close button for dismissible chips
1419
+ var CloseButton = styled.button.withConfig({
1385
1420
  shouldForwardProp: function shouldForwardProp(prop) {
1386
1421
  return !prop.startsWith('$');
1387
1422
  },
1388
- displayName: "Chip__BaseChip",
1389
- componentId: "sc-fvu2t0-0"
1390
- })(templateObject_1$h || (templateObject_1$h = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: fit-content;\n height: max-content;\n border-radius: ", ";\n box-sizing: border-box;\n user-select: none;\n white-space: nowrap;\n transition: ", ";\n \n /* Use CSS custom properties set by wrapper */\n background-color: var(--chip-bg-color);\n color: var(--chip-text-color);\n font: var(--chip-font);\n padding: var(--chip-padding);\n opacity: var(--chip-opacity, 1);\n cursor: var(--chip-cursor, default);\n \n &:hover {\n opacity: var(--chip-hover-opacity, var(--chip-opacity, 1));\n }\n \n &:active {\n opacity: var(--chip-active-opacity, var(--chip-opacity, 1));\n }\n \n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n }\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: fit-content;\n height: max-content;\n border-radius: ", ";\n box-sizing: border-box;\n user-select: none;\n white-space: nowrap;\n transition: ", ";\n \n /* Use CSS custom properties set by wrapper */\n background-color: var(--chip-bg-color);\n color: var(--chip-text-color);\n font: var(--chip-font);\n padding: var(--chip-padding);\n opacity: var(--chip-opacity, 1);\n cursor: var(--chip-cursor, default);\n \n &:hover {\n opacity: var(--chip-hover-opacity, var(--chip-opacity, 1));\n }\n \n &:active {\n opacity: var(--chip-active-opacity, var(--chip-opacity, 1));\n }\n \n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n }\n"
1423
+ displayName: "ChipBase__CloseButton",
1424
+ componentId: "sc-moa6zc-2"
1425
+ })(templateObject_3$6 || (templateObject_3$6 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: ", ";\n background: transparent;\n border: none;\n padding: 0;\n cursor: ", ";\n opacity: ", ";\n color: inherit;\n transition: ", ";\n \n &:hover:not(:disabled) {\n opacity: 0.7;\n }\n \n &:active:not(:disabled) {\n opacity: 0.9;\n }\n \n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n border-radius: 2px;\n }\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: ", ";\n background: transparent;\n border: none;\n padding: 0;\n cursor: ", ";\n opacity: ", ";\n color: inherit;\n transition: ", ";\n \n &:hover:not(:disabled) {\n opacity: 0.7;\n }\n \n &:active:not(:disabled) {\n opacity: 0.9;\n }\n \n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n border-radius: 2px;\n }\n"
1391
1426
  // Wrapper component that applies styles via CSS custom properties
1392
- ])), chip["default"].borderRadius, tokens.semantic.motion.interactive, chip.variants.interactive.backgroundColor);
1427
+ ])), tokens.semantic.spacing.layout.sm, function (props) {
1428
+ return props.$disabled ? 'not-allowed' : 'pointer';
1429
+ }, function (props) {
1430
+ return props.$disabled ? '0.6' : '1';
1431
+ }, tokens.semantic.motion.transition.fast, chip.variants.interactive.backgroundColor);
1393
1432
  // Wrapper component that applies styles via CSS custom properties
1394
- var StyledChip = function StyledChip(_a) {
1433
+ var StyledChipWrapper = function StyledChipWrapper(_a) {
1395
1434
  var $variant = _a.$variant,
1396
1435
  $size = _a.$size,
1397
1436
  $disabled = _a.$disabled,
1398
1437
  $clickable = _a.$clickable,
1438
+ $selected = _a.$selected,
1399
1439
  children = _a.children,
1400
1440
  style = _a.style,
1401
- htmlProps = __rest(_a, ["$variant", "$size", "$disabled", "$clickable", "children", "style"]);
1441
+ htmlProps = __rest(_a, ["$variant", "$size", "$disabled", "$clickable", "$selected", "children", "style"]);
1402
1442
  // Get styles for variant and size
1403
- var variantStyles = getVariantStylesAsObject($variant);
1443
+ var variantStyles = getVariantStylesAsObject($variant, $selected);
1404
1444
  var sizeStyles = getSizeStylesAsObject($size);
1405
1445
  // Create CSS custom properties object
1406
1446
  var cssProps = {
@@ -1413,38 +1453,47 @@ var StyledChip = function StyledChip(_a) {
1413
1453
  '--chip-hover-opacity': $disabled ? '0.6' : $clickable ? '0.8' : '1',
1414
1454
  '--chip-active-opacity': $disabled ? '0.6' : $clickable ? '0.9' : '1'
1415
1455
  };
1416
- return /*#__PURE__*/React.createElement(BaseChip, _extends({
1456
+ return /*#__PURE__*/React.createElement(BaseChipStyled, _extends({
1417
1457
  style: __assign(__assign({}, cssProps), style)
1418
1458
  }, htmlProps), children);
1419
1459
  };
1460
+ var templateObject_1$h, templateObject_2$7, templateObject_3$6;
1461
+
1462
+ React.createElement;
1463
+ /**
1464
+ * Chip - Compact element for displaying tags, categories, and labels
1465
+ *
1466
+ * Use this component for static display chips or simple interactive chips.
1467
+ * For specialized filtering patterns, use:
1468
+ * - FilterChip: Dismissible chips for showing applied filters
1469
+ * - BooleanChip: Toggleable chips for quick filter controls
1470
+ *
1471
+ * Variants:
1472
+ * - default: Standard gray background
1473
+ * - emphasis: High-contrast dark background
1474
+ * - subtle: Light background for secondary info
1475
+ * - interactive: Blue background with hover states
1476
+ */
1420
1477
  var Chip = function Chip(_a) {
1421
1478
  var children = _a.children,
1422
1479
  _b = _a.variant,
1423
1480
  variant = _b === void 0 ? 'default' : _b,
1424
- _e = _a.size,
1425
- size = _e === void 0 ? 'medium' : _e,
1481
+ _c = _a.size,
1482
+ size = _c === void 0 ? 'medium' : _c,
1426
1483
  onClick = _a.onClick,
1427
- _f = _a.disabled,
1428
- disabled = _f === void 0 ? false : _f,
1484
+ _d = _a.disabled,
1485
+ disabled = _d === void 0 ? false : _d,
1429
1486
  dataTestId = _a["data-testid"],
1430
1487
  ariaLabel = _a["aria-label"],
1431
1488
  ariaDescribedBy = _a["aria-describedby"],
1432
1489
  role = _a.role,
1433
1490
  title = _a.title,
1434
- // Legacy prop support
1435
1491
  props = __rest(_a, ["children", "variant", "size", "onClick", "disabled", 'data-testid', 'aria-label', 'aria-describedby', "role", "title"]);
1436
1492
  var isClickable = Boolean(onClick && !disabled);
1437
- // Map legacy variants to new variants for backward compatibility
1493
+ // Map legacy variants to new variants
1438
1494
  var normalizedVariant = variant === 'light' ? 'default' : variant === 'dark' ? 'emphasis' : variant;
1439
- // Support legacy title prop - prioritize children over title
1495
+ // Support legacy title prop
1440
1496
  var content = children !== undefined ? children : title;
1441
- // Remove styled-only props from the rest
1442
- var _g = props;
1443
- _g.variant;
1444
- _g.size;
1445
- _g.disabled;
1446
- _g.clickable;
1447
- var htmlProps = __rest(_g, ["variant", "size", "disabled", "clickable"]);
1448
1497
  var handleClick = function handleClick() {
1449
1498
  if (onClick && !disabled) {
1450
1499
  onClick();
@@ -1456,33 +1505,177 @@ var Chip = function Chip(_a) {
1456
1505
  handleClick();
1457
1506
  }
1458
1507
  };
1459
- return /*#__PURE__*/React.createElement(StyledChip, _extends({
1508
+ return /*#__PURE__*/React.createElement(StyledChipWrapper, _extends({
1460
1509
  $variant: normalizedVariant,
1461
1510
  $size: size,
1462
1511
  $disabled: disabled || undefined,
1463
1512
  $clickable: isClickable || undefined,
1464
1513
  onClick: isClickable ? handleClick : undefined,
1465
- onKeyDown: isClickable ? handleKeyDown : undefined,
1514
+ onKeyDown: handleKeyDown,
1466
1515
  tabIndex: isClickable ? 0 : undefined,
1467
1516
  role: role || (isClickable ? 'button' : undefined),
1468
1517
  "aria-label": ariaLabel,
1469
1518
  "aria-describedby": ariaDescribedBy,
1470
1519
  "aria-disabled": disabled ? 'true' : undefined,
1471
1520
  "data-testid": dataTestId
1472
- }, htmlProps), content);
1521
+ }, props), content);
1473
1522
  };
1474
- // Legacy component for backward compatibility
1475
1523
  var LegacyChip = function LegacyChip(_a) {
1476
1524
  var title = _a.title,
1477
1525
  _b = _a.variant,
1478
1526
  variant = _b === void 0 ? 'light' : _b;
1479
- // Map legacy variants to new variants
1480
1527
  var newVariant = variant === 'dark' ? 'emphasis' : 'default';
1481
1528
  return /*#__PURE__*/React.createElement(Chip, {
1482
1529
  variant: newVariant
1483
1530
  }, title);
1484
1531
  };
1485
- var templateObject_1$h;
1532
+
1533
+ React.createElement;
1534
+ /**
1535
+ * FilterChip - Chip for displaying filters with selected state and optional dismissal
1536
+ *
1537
+ * Use this component to show filters that can be selected/deselected.
1538
+ * When selected, displays a checkmark and light blue background.
1539
+ * Optionally dismissible when onDismiss is provided.
1540
+ *
1541
+ * Features:
1542
+ * - Shows checkmark icon when selected
1543
+ * - Light blue background when selected
1544
+ * - Optional close (×) button when onDismiss is provided
1545
+ * - Keyboard dismissal with Delete or Backspace keys (when dismissible)
1546
+ * - Non-clickable body (only close button is interactive when present)
1547
+ * - Uses subtle/interactive background styling based on selected state
1548
+ * - Announces as "status" to screen readers
1549
+ */
1550
+ var FilterChip = function FilterChip(_a) {
1551
+ var children = _a.children,
1552
+ _b = _a.selected,
1553
+ selected = _b === void 0 ? false : _b,
1554
+ onDismiss = _a.onDismiss,
1555
+ _c = _a.size,
1556
+ size = _c === void 0 ? 'medium' : _c,
1557
+ _d = _a.disabled,
1558
+ disabled = _d === void 0 ? false : _d,
1559
+ dataTestId = _a["data-testid"],
1560
+ ariaLabel = _a["aria-label"],
1561
+ ariaDescribedBy = _a["aria-describedby"],
1562
+ role = _a.role,
1563
+ props = __rest(_a, ["children", "selected", "onDismiss", "size", "disabled", 'data-testid', 'aria-label', 'aria-describedby', "role"]);
1564
+ var isDismissible = Boolean(onDismiss);
1565
+ var handleDismiss = function handleDismiss(event) {
1566
+ event.stopPropagation(); // Prevent event bubbling
1567
+ if (!disabled && onDismiss) {
1568
+ onDismiss();
1569
+ }
1570
+ };
1571
+ var handleKeyDown = function handleKeyDown(event) {
1572
+ // Handle dismiss with Delete or Backspace (only when dismissible)
1573
+ if (!disabled && isDismissible && onDismiss && (event.key === 'Delete' || event.key === 'Backspace')) {
1574
+ event.preventDefault();
1575
+ onDismiss();
1576
+ }
1577
+ };
1578
+ var handleCloseKeyDown = function handleCloseKeyDown(event) {
1579
+ if (event.key === 'Enter' || event.key === ' ') {
1580
+ event.preventDefault();
1581
+ if (!disabled && onDismiss) onDismiss();
1582
+ }
1583
+ };
1584
+ // Generate accessible label for close button
1585
+ var closeButtonLabel = typeof children === 'string' ? "Remove ".concat(children) : 'Remove filter';
1586
+ return /*#__PURE__*/React.createElement(StyledChipWrapper, _extends({
1587
+ $variant: "subtle",
1588
+ $size: size,
1589
+ $disabled: disabled || undefined,
1590
+ $clickable: false,
1591
+ $selected: selected,
1592
+ onKeyDown: handleKeyDown,
1593
+ role: role || 'status',
1594
+ "aria-label": ariaLabel,
1595
+ "aria-describedby": ariaDescribedBy,
1596
+ "aria-disabled": disabled ? 'true' : undefined,
1597
+ "data-testid": dataTestId
1598
+ }, props), selected && /*#__PURE__*/React.createElement(IconContainer, {
1599
+ "aria-hidden": "true"
1600
+ }, /*#__PURE__*/React.createElement(Icon, {
1601
+ name: "check",
1602
+ size: "sm"
1603
+ })), children, isDismissible && /*#__PURE__*/React.createElement(CloseButton, {
1604
+ type: "button",
1605
+ onClick: handleDismiss,
1606
+ onKeyDown: handleCloseKeyDown,
1607
+ disabled: disabled,
1608
+ $disabled: disabled,
1609
+ "aria-label": closeButtonLabel,
1610
+ tabIndex: 0,
1611
+ "data-testid": dataTestId ? "".concat(dataTestId, "-close") : undefined
1612
+ }, /*#__PURE__*/React.createElement(Icon, {
1613
+ name: "close",
1614
+ size: "sm"
1615
+ })));
1616
+ };
1617
+
1618
+ React.createElement;
1619
+ /**
1620
+ * BooleanChip - Toggleable chip for quick filter controls
1621
+ *
1622
+ * Use this component for multi-select filter controls where users can
1623
+ * see which options are active. Common in table filtering patterns where
1624
+ * users toggle filters on/off.
1625
+ *
1626
+ * Features:
1627
+ * - Shows checkmark icon when selected
1628
+ * - Entire chip is clickable to toggle
1629
+ * - Keyboard activation with Space or Enter
1630
+ * - Uses checkbox role with aria-checked
1631
+ * - Visual background change when selected
1632
+ */
1633
+ var BooleanChip = function BooleanChip(_a) {
1634
+ var children = _a.children,
1635
+ selected = _a.selected,
1636
+ onClick = _a.onClick,
1637
+ _b = _a.size,
1638
+ size = _b === void 0 ? 'medium' : _b,
1639
+ _c = _a.disabled,
1640
+ disabled = _c === void 0 ? false : _c,
1641
+ dataTestId = _a["data-testid"],
1642
+ ariaLabel = _a["aria-label"],
1643
+ ariaDescribedBy = _a["aria-describedby"],
1644
+ props = __rest(_a, ["children", "selected", "onClick", "size", "disabled", 'data-testid', 'aria-label', 'aria-describedby']);
1645
+ var handleClick = function handleClick() {
1646
+ if (!disabled) {
1647
+ onClick();
1648
+ }
1649
+ };
1650
+ var handleKeyDown = function handleKeyDown(event) {
1651
+ // Handle activation with Space or Enter
1652
+ if (event.key === 'Enter' || event.key === ' ') {
1653
+ event.preventDefault();
1654
+ handleClick();
1655
+ }
1656
+ };
1657
+ return /*#__PURE__*/React.createElement(StyledChipWrapper, _extends({
1658
+ $variant: "subtle",
1659
+ $size: size,
1660
+ $disabled: disabled || undefined,
1661
+ $clickable: !disabled,
1662
+ $selected: selected,
1663
+ onClick: handleClick,
1664
+ onKeyDown: handleKeyDown,
1665
+ tabIndex: disabled ? undefined : 0,
1666
+ role: "checkbox",
1667
+ "aria-checked": selected ? 'true' : 'false',
1668
+ "aria-label": ariaLabel,
1669
+ "aria-describedby": ariaDescribedBy,
1670
+ "aria-disabled": disabled ? 'true' : undefined,
1671
+ "data-testid": dataTestId
1672
+ }, props), selected && /*#__PURE__*/React.createElement(IconContainer, {
1673
+ "aria-hidden": "true"
1674
+ }, /*#__PURE__*/React.createElement(Icon, {
1675
+ name: "check",
1676
+ size: "sm"
1677
+ })), children);
1678
+ };
1486
1679
 
1487
1680
  // Breakpoints using base tokens
1488
1681
  var breakpoints$1 = {
@@ -1770,49 +1963,78 @@ var ProgressBar = function ProgressBar(_a) {
1770
1963
  var templateObject_1$c, templateObject_2$5, templateObject_3$4, templateObject_4$3, templateObject_5$3, templateObject_6$1, templateObject_7$1;
1771
1964
 
1772
1965
  React.createElement;
1773
- var StyledSeparator = styled.div.withConfig({
1966
+ var StyledDivider = styled.div.withConfig({
1774
1967
  shouldForwardProp: function shouldForwardProp(prop) {
1775
1968
  return !prop.startsWith('$');
1776
1969
  },
1777
- displayName: "SectionSeparator__StyledSeparator",
1778
- componentId: "sc-ynv482-0"
1779
- })(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n border: none;\n border-top: 1px solid;\n \n /* Apply variant styles */\n ", "\n \n /* Apply size styles */\n ", "\n"], ["\n border: none;\n border-top: 1px solid;\n \n /* Apply variant styles */\n ", "\n \n /* Apply size styles */\n ", "\n"
1970
+ displayName: "Divider__StyledDivider",
1971
+ componentId: "sc-1l0c8ja-0"
1972
+ })(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n border: none;\n \n /* Apply orientation */\n ", "\n \n /* Apply variant styles */\n ", "\n \n /* Apply size styles (spacing) */\n ", "\n"], ["\n border: none;\n \n /* Apply orientation */\n ", "\n \n /* Apply variant styles */\n ", "\n \n /* Apply size styles (spacing) */\n ", "\n"
1780
1973
  /**
1781
- * SectionSeparator is an atomic component that provides visual separation between content sections.
1974
+ * Divider is an atomic component that provides visual separation between content sections.
1782
1975
  *
1783
1976
  * Features:
1784
1977
  * - Multiple variants (default, strong, minimal)
1785
1978
  * - Size variations for different spacing needs
1979
+ * - Horizontal and vertical orientations
1786
1980
  * - Semantic token usage for consistent styling
1787
1981
  * - Full accessibility support
1788
1982
  *
1789
1983
  * @example
1790
1984
  * ```tsx
1791
- * <SectionSeparator />
1792
- * <SectionSeparator variant="strong" size="xlarge" />
1793
- * <SectionSeparator variant="minimal" />
1985
+ * <Divider />
1986
+ * <Divider variant="strong" size="xlarge" />
1987
+ * <Divider variant="minimal" />
1988
+ * <Divider orientation="vertical" />
1794
1989
  * ```
1795
1990
  */])), function (_a) {
1991
+ var _b = _a.$orientation,
1992
+ $orientation = _b === void 0 ? 'horizontal' : _b;
1993
+ if ($orientation === 'vertical') {
1994
+ return "\n display: inline-block;\n height: auto;\n align-self: stretch;\n border-left: 1px solid;\n border-top: none;\n ";
1995
+ }
1996
+ return "border-top: 1px solid;";
1997
+ }, function (_a) {
1796
1998
  var _b = _a.$variant,
1797
- $variant = _b === void 0 ? 'default' : _b;
1999
+ $variant = _b === void 0 ? 'default' : _b,
2000
+ _c = _a.$orientation,
2001
+ $orientation = _c === void 0 ? 'horizontal' : _c;
2002
+ var borderProperty = $orientation === 'vertical' ? 'border-left' : 'border-top';
1798
2003
  switch ($variant) {
1799
2004
  case 'strong':
1800
- return "border-top: ".concat(tokens.component.separator.variants.strong.border, ";");
2005
+ return "".concat(borderProperty, ": ").concat(tokens.component.separator.variants.strong.border, ";");
1801
2006
  case 'minimal':
1802
- return "border-top: ".concat(tokens.component.separator.variants.minimal.border, ";");
2007
+ return "".concat(borderProperty, ": ").concat(tokens.component.separator.variants.minimal.border, ";");
1803
2008
  case 'default':
1804
2009
  default:
1805
- return "border-top: ".concat(tokens.component.separator.variants["default"].border, ";");
2010
+ return "".concat(borderProperty, ": ").concat(tokens.component.separator.variants["default"].border, ";");
1806
2011
  }
1807
2012
  }, function (_a) {
1808
2013
  var _b = _a.$size,
1809
2014
  $size = _b === void 0 ? 'large' : _b,
1810
2015
  _c = _a.$variant,
1811
- $variant = _c === void 0 ? 'default' : _c;
1812
- if ($variant === 'minimal') {
1813
- // Minimal variant always uses its predefined spacing
2016
+ $variant = _c === void 0 ? 'default' : _c,
2017
+ _d = _a.$orientation,
2018
+ $orientation = _d === void 0 ? 'horizontal' : _d;
2019
+ if ($variant === 'minimal' && $orientation === 'horizontal') {
2020
+ // Minimal variant always uses its predefined spacing for horizontal
1814
2021
  return "margin: ".concat(tokens.component.separator.variants.minimal.margin, ";");
1815
2022
  }
2023
+ if ($orientation === 'vertical') {
2024
+ // Vertical orientation uses horizontal margins (left/right)
2025
+ switch ($size) {
2026
+ case 'small':
2027
+ return "margin: 0 ".concat(tokens.semantic.spacing.separator.sm, ";");
2028
+ case 'medium':
2029
+ return "margin: 0 ".concat(tokens.semantic.spacing.separator.md, ";");
2030
+ case 'xlarge':
2031
+ return "margin: 0 ".concat(tokens.semantic.spacing.separator.xl, ";");
2032
+ case 'large':
2033
+ default:
2034
+ return "margin: 0 ".concat(tokens.semantic.spacing.separator.lg, ";");
2035
+ }
2036
+ }
2037
+ // Horizontal orientation uses vertical margins (top/bottom)
1816
2038
  switch ($size) {
1817
2039
  case 'small':
1818
2040
  return "margin: ".concat(tokens.component.separator.sizes.small.margin, ";");
@@ -1826,33 +2048,38 @@ var StyledSeparator = styled.div.withConfig({
1826
2048
  }
1827
2049
  });
1828
2050
  /**
1829
- * SectionSeparator is an atomic component that provides visual separation between content sections.
2051
+ * Divider is an atomic component that provides visual separation between content sections.
1830
2052
  *
1831
2053
  * Features:
1832
2054
  * - Multiple variants (default, strong, minimal)
1833
2055
  * - Size variations for different spacing needs
2056
+ * - Horizontal and vertical orientations
1834
2057
  * - Semantic token usage for consistent styling
1835
2058
  * - Full accessibility support
1836
2059
  *
1837
2060
  * @example
1838
2061
  * ```tsx
1839
- * <SectionSeparator />
1840
- * <SectionSeparator variant="strong" size="xlarge" />
1841
- * <SectionSeparator variant="minimal" />
2062
+ * <Divider />
2063
+ * <Divider variant="strong" size="xlarge" />
2064
+ * <Divider variant="minimal" />
2065
+ * <Divider orientation="vertical" />
1842
2066
  * ```
1843
2067
  */
1844
- var SectionSeparator = function SectionSeparator(_a) {
2068
+ var Divider = function Divider(_a) {
1845
2069
  var _b = _a.variant,
1846
2070
  variant = _b === void 0 ? 'default' : _b,
1847
2071
  _c = _a.size,
1848
2072
  size = _c === void 0 ? 'large' : _c,
2073
+ _d = _a.orientation,
2074
+ orientation = _d === void 0 ? 'horizontal' : _d,
1849
2075
  dataTestId = _a["data-testid"];
1850
- return /*#__PURE__*/React.createElement(StyledSeparator, {
2076
+ return /*#__PURE__*/React.createElement(StyledDivider, {
1851
2077
  $variant: variant,
1852
2078
  $size: size,
2079
+ $orientation: orientation,
1853
2080
  "data-testid": dataTestId,
1854
2081
  role: "separator",
1855
- "aria-orientation": "horizontal"
2082
+ "aria-orientation": orientation
1856
2083
  });
1857
2084
  };
1858
2085
  var templateObject_1$b;
@@ -2312,7 +2539,7 @@ var DesignCard = function DesignCard(_a) {
2312
2539
  url: readMoreHref
2313
2540
  }, readMoreText) : /*#__PURE__*/React.createElement(Button, {
2314
2541
  onClick: onReadMore
2315
- }, readMoreText)))))), /*#__PURE__*/React.createElement(SectionSeparator, null));
2542
+ }, readMoreText)))))), /*#__PURE__*/React.createElement(Divider, null));
2316
2543
  }
2317
2544
  return null;
2318
2545
  };
@@ -2813,6 +3040,7 @@ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, temp
2813
3040
 
2814
3041
  exports.ArtCard = ArtCard;
2815
3042
  exports.Avatar = Avatar;
3043
+ exports.BooleanChip = BooleanChip;
2816
3044
  exports.Box = Box;
2817
3045
  exports.Breadcrumbs = Breadcrumbs;
2818
3046
  exports.Button = Button;
@@ -2822,7 +3050,9 @@ exports.CodeBlock = CodeBlock;
2822
3050
  exports.Container = Container;
2823
3051
  exports.DateFormatter = DateFormatter;
2824
3052
  exports.DesignCard = DesignCard;
3053
+ exports.Divider = Divider;
2825
3054
  exports.Dropdown = Dropdown;
3055
+ exports.FilterChip = FilterChip;
2826
3056
  exports.Grid = Grid;
2827
3057
  exports.GridCol = GridCol;
2828
3058
  exports.Icon = Icon;
@@ -2833,7 +3063,6 @@ exports.Picture = Picture;
2833
3063
  exports.ProgressBar = ProgressBar;
2834
3064
  exports.ReleaseCard = ReleaseCard;
2835
3065
  exports.ResponsiveGrid = ResponsiveGrid;
2836
- exports.SectionSeparator = SectionSeparator;
2837
3066
  exports.Stack = Stack;
2838
3067
  exports.Typography = Typography;
2839
3068
  exports.iconsData = iconsData;