@common-origin/design-system 1.9.6 → 1.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ export interface TagProps {
3
+ /**
4
+ * Text content to display in the tag
5
+ */
6
+ children: React.ReactNode;
7
+ /**
8
+ * Visual variant of the tag based on semantic meaning
9
+ * @default 'default'
10
+ */
11
+ variant?: 'default' | 'interactive' | 'success' | 'warning' | 'error' | 'emphasis';
12
+ /**
13
+ * Whether to show a border
14
+ * @default true
15
+ */
16
+ border?: boolean;
17
+ /**
18
+ * Test identifier for automated testing
19
+ */
20
+ 'data-testid'?: string;
21
+ }
22
+ /**
23
+ * Tag component for categorizing and labeling content
24
+ *
25
+ * A static, non-interactive label used to categorize elements or objects in the UI.
26
+ * Tags help users quickly identify and understand content classification.
27
+ */
28
+ export declare const Tag: React.FC<TagProps>;
@@ -0,0 +1,2 @@
1
+ export { Tag } from './Tag';
2
+ export type { TagProps } from './Tag';
@@ -11,4 +11,5 @@ export * from './IconButton';
11
11
  export * from './ProgressBar';
12
12
  export * from './Divider';
13
13
  export * from './Stack';
14
+ export * from './Tag';
14
15
  export * from './Typography';
package/dist/index.esm.js CHANGED
@@ -595,7 +595,7 @@ var component = {
595
595
  },
596
596
  $ref: "./component/index.json"
597
597
  };
598
- var semantic$1 = {
598
+ var semantic$2 = {
599
599
  border: {
600
600
  "default": "0.0625rem solid #e9ecef",
601
601
  subtle: "0.0625rem solid #dee2e6",
@@ -734,7 +734,7 @@ var semantic$1 = {
734
734
  var tokensData = {
735
735
  base: base$1,
736
736
  component: component,
737
- semantic: semantic$1
737
+ semantic: semantic$2
738
738
  };
739
739
 
740
740
  React.createElement;
@@ -744,7 +744,7 @@ var AvatarContainer = styled.div.withConfig({
744
744
  },
745
745
  displayName: "Avatar__AvatarContainer",
746
746
  componentId: "sc-ezn4ax-0"
747
- })(templateObject_1$m || (templateObject_1$m = __makeTemplateObject(["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n border-radius: ", ";\n background-color: ", ";\n overflow: hidden;\n flex-shrink: 0;\n"], ["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n border-radius: ", ";\n background-color: ", ";\n overflow: hidden;\n flex-shrink: 0;\n"])), function (_a) {
747
+ })(templateObject_1$n || (templateObject_1$n = __makeTemplateObject(["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n border-radius: ", ";\n background-color: ", ";\n overflow: hidden;\n flex-shrink: 0;\n"], ["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n border-radius: ", ";\n background-color: ", ";\n overflow: hidden;\n flex-shrink: 0;\n"])), function (_a) {
748
748
  var $size = _a.$size;
749
749
  return tokensData.semantic.size.avatar[$size];
750
750
  }, function (_a) {
@@ -827,7 +827,7 @@ var Avatar = function Avatar(_a) {
827
827
  "aria-hidden": "true"
828
828
  }, initials));
829
829
  };
830
- var templateObject_1$m, templateObject_2$b, templateObject_3$9;
830
+ var templateObject_1$n, templateObject_2$b, templateObject_3$9;
831
831
 
832
832
  React.createElement;
833
833
  var _a$5 = tokensData.semantic,
@@ -895,7 +895,7 @@ var StyledTypography = styled.span.withConfig({
895
895
  },
896
896
  displayName: "Typography__StyledTypography",
897
897
  componentId: "sc-17mqo4k-0"
898
- })(templateObject_1$l || (templateObject_1$l = __makeTemplateObject(["\n ", "\n color: ", ";\n margin: 0;\n \n /* Ensure proper line height for readability */\n ", "\n"], ["\n ", "\n color: ", ";\n margin: 0;\n \n /* Ensure proper line height for readability */\n ", "\n"
898
+ })(templateObject_1$m || (templateObject_1$m = __makeTemplateObject(["\n ", "\n color: ", ";\n margin: 0;\n \n /* Ensure proper line height for readability */\n ", "\n"], ["\n ", "\n color: ", ";\n margin: 0;\n \n /* Ensure proper line height for readability */\n ", "\n"
899
899
  /**
900
900
  * Typography is an atomic component for rendering text with semantic meaning and consistent styling.
901
901
  *
@@ -962,12 +962,12 @@ var Typography = function Typography(_a) {
962
962
  "data-testid": dataTestId
963
963
  }, children);
964
964
  };
965
- var templateObject_1$l;
965
+ var templateObject_1$m;
966
966
 
967
967
  React.createElement;
968
968
  var color$3 = tokensData.semantic.color;
969
969
  tokensData.base.shadow;
970
- var scaleIn = keyframes(templateObject_1$k || (templateObject_1$k = __makeTemplateObject(["\n from {\n transform: scale(0.8);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n"], ["\n from {\n transform: scale(0.8);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n"])));
970
+ var scaleIn = keyframes(templateObject_1$l || (templateObject_1$l = __makeTemplateObject(["\n from {\n transform: scale(0.8);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n"], ["\n from {\n transform: scale(0.8);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n"])));
971
971
  var BadgeWrapper = styled.span.withConfig({
972
972
  displayName: "Badge__BadgeWrapper",
973
973
  componentId: "sc-tjz4pp-0"
@@ -1034,7 +1034,7 @@ var Badge = function Badge(_a) {
1034
1034
  color: "inverse"
1035
1035
  }, displayCount), /*#__PURE__*/React.createElement(ScreenReaderOnly, null, label)));
1036
1036
  };
1037
- var templateObject_1$k, templateObject_2$a, templateObject_3$8, templateObject_4$6;
1037
+ var templateObject_1$l, templateObject_2$a, templateObject_3$8, templateObject_4$6;
1038
1038
 
1039
1039
  React.createElement;
1040
1040
  var StyledBox = styled.div.withConfig({
@@ -1046,7 +1046,7 @@ var StyledBox = styled.div.withConfig({
1046
1046
  })(templateObject_43 || (templateObject_43 = __makeTemplateObject(["\n ", "\n \n // Flexbox\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Margin\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Padding\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Size\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Position\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Borders\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Background & Color\n ", "\n ", "\n \n // Overflow\n ", "\n ", "\n ", "\n"], ["\n ", "\n \n // Flexbox\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Margin\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Padding\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Size\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Position\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Borders\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n // Background & Color\n ", "\n ", "\n \n // Overflow\n ", "\n ", "\n ", "\n"
1047
1047
  // Transform component that maps clean props to $-prefixed props for styled-components
1048
1048
  ])), function (props) {
1049
- return props.$display && css(templateObject_1$j || (templateObject_1$j = __makeTemplateObject(["display: ", ";"], ["display: ", ";"])), props.$display);
1049
+ return props.$display && css(templateObject_1$k || (templateObject_1$k = __makeTemplateObject(["display: ", ";"], ["display: ", ";"])), props.$display);
1050
1050
  }, function (props) {
1051
1051
  return props.$flexDirection && css(templateObject_2$9 || (templateObject_2$9 = __makeTemplateObject(["flex-direction: ", ";"], ["flex-direction: ", ";"])), props.$flexDirection);
1052
1052
  }, function (props) {
@@ -1236,7 +1236,7 @@ var BoxTransform = function BoxTransform(props) {
1236
1236
  }, rest), children);
1237
1237
  };
1238
1238
  var Box = BoxTransform;
1239
- var templateObject_1$j, 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;
1239
+ 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;
1240
1240
 
1241
1241
  var add = {
1242
1242
  path: "M13 11H19V13H13V19H11V13H5V11H11V5H13V11Z",
@@ -1357,7 +1357,7 @@ var IconStyled = styled.span.withConfig({
1357
1357
  },
1358
1358
  displayName: "Icon__IconStyled",
1359
1359
  componentId: "sc-1105czq-0"
1360
- })(templateObject_1$i || (templateObject_1$i = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n \n svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n \n /* Use semantic icon colors */\n color: ", ";\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n \n svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n \n /* Use semantic icon colors */\n color: ", ";\n"])), function (_a) {
1360
+ })(templateObject_1$j || (templateObject_1$j = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n \n svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n \n /* Use semantic icon colors */\n color: ", ";\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n \n svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n \n /* Use semantic icon colors */\n color: ", ";\n"])), function (_a) {
1361
1361
  var $size = _a.$size;
1362
1362
  return tokensData.semantic.size.icon[$size];
1363
1363
  }, function (_a) {
@@ -1421,13 +1421,13 @@ var Icon = function Icon(_a) {
1421
1421
  d: iconData.path
1422
1422
  })));
1423
1423
  };
1424
- var templateObject_1$i;
1424
+ var templateObject_1$j;
1425
1425
 
1426
1426
  React.createElement;
1427
1427
  var button = tokensData.component.button,
1428
- semantic = tokensData.semantic;
1428
+ semantic$1 = tokensData.semantic;
1429
1429
  // Base styles shared between button and link
1430
- var baseButtonStyles = "\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: ".concat(tokensData.semantic.spacing.layout.xs, ";\n height: max-content;\n cursor: pointer;\n border: none;\n text-decoration: none;\n transition: ").concat(semantic.motion.hover, ";\n white-space: nowrap;\n user-select: none;\n \n &:focus {\n outline: ").concat(button.focus.outline, ";\n outline-offset: ").concat(button.focus.outlineOffset, ";\n }\n\n &:disabled {\n cursor: not-allowed;\n }\n");
1430
+ var baseButtonStyles = "\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: ".concat(tokensData.semantic.spacing.layout.xs, ";\n height: max-content;\n cursor: pointer;\n border: none;\n text-decoration: none;\n transition: ").concat(semantic$1.motion.hover, ";\n white-space: nowrap;\n user-select: none;\n \n &:focus {\n outline: ").concat(button.focus.outline, ";\n outline-offset: ").concat(button.focus.outlineOffset, ";\n }\n\n &:disabled {\n cursor: not-allowed;\n }\n");
1431
1431
  // Dynamic variant styles using component tokens
1432
1432
  var getVariantStyles = function getVariantStyles(_a) {
1433
1433
  var $variant = _a.$variant;
@@ -1453,7 +1453,7 @@ var StyledButton = styled.button.withConfig({
1453
1453
  },
1454
1454
  displayName: "Button__StyledButton",
1455
1455
  componentId: "sc-1eiuum9-0"
1456
- })(templateObject_1$h || (templateObject_1$h = __makeTemplateObject(["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"], ["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"])), baseButtonStyles, button.primary.borderRadius, getVariantStyles, getSizeStyles);
1456
+ })(templateObject_1$i || (templateObject_1$i = __makeTemplateObject(["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"], ["\n ", "\n border-radius: ", ";\n \n ", "\n ", "\n"])), baseButtonStyles, button.primary.borderRadius, getVariantStyles, getSizeStyles);
1457
1457
  var StyledLink = styled.a.withConfig({
1458
1458
  shouldForwardProp: function shouldForwardProp(prop) {
1459
1459
  return !prop.startsWith('$');
@@ -1553,7 +1553,7 @@ var Button = function Button(_a) {
1553
1553
  "data-testid": dataTestId
1554
1554
  }, buttonProps), renderButtonContent(children, iconName, size));
1555
1555
  };
1556
- var templateObject_1$h, templateObject_2$8;
1556
+ var templateObject_1$i, templateObject_2$8;
1557
1557
 
1558
1558
  var chip = tokensData.component.chip;
1559
1559
  // Helper function to get variant styles as objects for CSS custom properties
@@ -1614,7 +1614,7 @@ var BaseChipStyled = styled.span.withConfig({
1614
1614
  },
1615
1615
  displayName: "ChipBase__BaseChipStyled",
1616
1616
  componentId: "sc-moa6zc-0"
1617
- })(templateObject_1$g || (templateObject_1$g = __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: width ", ";\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: width ", ";\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"
1617
+ })(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: width ", ";\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: width ", ";\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"
1618
1618
  // Icon container for selected indicator or leading icons
1619
1619
  ])), tokensData.semantic.motion.interactive, chip.variants.interactive.backgroundColor);
1620
1620
  // Icon container for selected indicator or leading icons
@@ -1666,7 +1666,7 @@ var StyledChipWrapper = function StyledChipWrapper(_a) {
1666
1666
  style: __assign(__assign({}, cssProps), style)
1667
1667
  }, htmlProps), children);
1668
1668
  };
1669
- var templateObject_1$g, templateObject_2$7, templateObject_3$6;
1669
+ var templateObject_1$h, templateObject_2$7, templateObject_3$6;
1670
1670
 
1671
1671
  React.createElement;
1672
1672
  /**
@@ -1910,20 +1910,20 @@ var spacing$3 = tokensData.semantic.spacing;
1910
1910
  var StyledContainer = styled.div.withConfig({
1911
1911
  displayName: "Container__StyledContainer",
1912
1912
  componentId: "sc-17dbj6n-0"
1913
- })(templateObject_1$f || (templateObject_1$f = __makeTemplateObject(["\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n padding-left: ", ";\n padding-right: ", ";\n \n ", " {\n max-width: 640px;\n }\n \n ", " {\n max-width: 768px;\n }\n \n ", " {\n max-width: 1024px;\n }\n \n ", " {\n max-width: 1280px;\n }\n \n ", " {\n max-width: 1536px;\n }\n"], ["\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n padding-left: ", ";\n padding-right: ", ";\n \n ", " {\n max-width: 640px;\n }\n \n ", " {\n max-width: 768px;\n }\n \n ", " {\n max-width: 1024px;\n }\n \n ", " {\n max-width: 1280px;\n }\n \n ", " {\n max-width: 1536px;\n }\n"])), spacing$3.layout['2xl'], spacing$3.layout['2xl'], media$1.sm, media$1.md, media$1.lg, media$1.xl, media$1['2xl']);
1913
+ })(templateObject_1$g || (templateObject_1$g = __makeTemplateObject(["\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n padding-left: ", ";\n padding-right: ", ";\n \n ", " {\n max-width: 640px;\n }\n \n ", " {\n max-width: 768px;\n }\n \n ", " {\n max-width: 1024px;\n }\n \n ", " {\n max-width: 1280px;\n }\n \n ", " {\n max-width: 1536px;\n }\n"], ["\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n padding-left: ", ";\n padding-right: ", ";\n \n ", " {\n max-width: 640px;\n }\n \n ", " {\n max-width: 768px;\n }\n \n ", " {\n max-width: 1024px;\n }\n \n ", " {\n max-width: 1280px;\n }\n \n ", " {\n max-width: 1536px;\n }\n"])), spacing$3.layout['2xl'], spacing$3.layout['2xl'], media$1.sm, media$1.md, media$1.lg, media$1.xl, media$1['2xl']);
1914
1914
  var Container = function Container(_a) {
1915
1915
  var children = _a.children,
1916
1916
  props = __rest(_a, ["children"]);
1917
1917
  return /*#__PURE__*/React.createElement(StyledContainer, props, children);
1918
1918
  };
1919
- var templateObject_1$f;
1919
+ var templateObject_1$g;
1920
1920
 
1921
1921
  React.createElement;
1922
1922
  var base = tokensData.base;
1923
1923
  var PictureWrapper = styled.div.withConfig({
1924
1924
  displayName: "Picture__PictureWrapper",
1925
1925
  componentId: "sc-11d9tei-0"
1926
- })(templateObject_1$e || (templateObject_1$e = __makeTemplateObject(["\n margin: 0 auto;\n \n ", " {\n margin-left: 0;\n margin-right: 0;\n }\n"], ["\n margin: 0 auto;\n \n ", " {\n margin-left: 0;\n margin-right: 0;\n }\n"])), media$1.sm);
1926
+ })(templateObject_1$f || (templateObject_1$f = __makeTemplateObject(["\n margin: 0 auto;\n \n ", " {\n margin-left: 0;\n margin-right: 0;\n }\n"], ["\n margin: 0 auto;\n \n ", " {\n margin-left: 0;\n margin-right: 0;\n }\n"])), media$1.sm);
1927
1927
  var ImageLink = styled.a.withConfig({
1928
1928
  displayName: "Picture__ImageLink",
1929
1929
  componentId: "sc-11d9tei-1"
@@ -1962,7 +1962,7 @@ var Picture = function Picture(_a) {
1962
1962
  "aria-label": "Read more about ".concat(title)
1963
1963
  }, image) : image);
1964
1964
  };
1965
- var templateObject_1$e, templateObject_2$6, templateObject_3$5, templateObject_4$4;
1965
+ var templateObject_1$f, templateObject_2$6, templateObject_3$5, templateObject_4$4;
1966
1966
 
1967
1967
  React.createElement;
1968
1968
  var _a$4 = tokensData.semantic,
@@ -1971,7 +1971,7 @@ var _a$4 = tokensData.semantic,
1971
1971
  var TimeStyled = styled.time.withConfig({
1972
1972
  displayName: "DateFormatter__TimeStyled",
1973
1973
  componentId: "sc-5464cc-0"
1974
- })(templateObject_1$d || (templateObject_1$d = __makeTemplateObject(["\n font: ", ";\n color: ", ";\n"], ["\n font: ", ";\n color: ", ";\n"])), typography$1.label, color$2.text.subdued);
1974
+ })(templateObject_1$e || (templateObject_1$e = __makeTemplateObject(["\n font: ", ";\n color: ", ";\n"], ["\n font: ", ";\n color: ", ";\n"])), typography$1.label, color$2.text.subdued);
1975
1975
  var DateFormatter = function DateFormatter(_a) {
1976
1976
  var dateString = _a.dateString,
1977
1977
  _b = _a.formatString,
@@ -1983,7 +1983,7 @@ var DateFormatter = function DateFormatter(_a) {
1983
1983
  "data-testid": dataTestId
1984
1984
  }, format(date, formatString));
1985
1985
  };
1986
- var templateObject_1$d;
1986
+ var templateObject_1$e;
1987
1987
 
1988
1988
  React.createElement;
1989
1989
  var motion = tokensData.semantic.motion,
@@ -1994,7 +1994,7 @@ var IconButtonStyled = styled.button.withConfig({
1994
1994
  },
1995
1995
  displayName: "IconButton__IconButtonStyled",
1996
1996
  componentId: "sc-k8b14t-0"
1997
- })(templateObject_1$c || (templateObject_1$c = __makeTemplateObject(["\n background-color: ", ";\n border: none;\n border-radius: ", ";\n transition: ", ";\n box-sizing: border-box;\n display: ", ";\n justify-content: ", ";\n align-items: ", ";\n height: max-content;\n cursor: pointer;\n position: relative;\n\n /* Size-specific dimensions from component tokens */\n min-width: ", ";\n min-height: ", ";\n padding: ", ";\n\n &:hover {\n background-color: ", ";\n }\n\n &:active {\n background-color: ", ";\n }\n\n &:focus {\n outline: ", ";\n outline-offset: ", ";\n }\n\n &:disabled {\n background-color: ", ";\n cursor: not-allowed;\n }\n\n /* High contrast mode support */\n @media (prefers-contrast: high) {\n border: 1px solid;\n }\n\n /* Reduced motion support */\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n"], ["\n background-color: ", ";\n border: none;\n border-radius: ", ";\n transition: ", ";\n box-sizing: border-box;\n display: ", ";\n justify-content: ", ";\n align-items: ", ";\n height: max-content;\n cursor: pointer;\n position: relative;\n\n /* Size-specific dimensions from component tokens */\n min-width: ", ";\n min-height: ", ";\n padding: ", ";\n\n &:hover {\n background-color: ", ";\n }\n\n &:active {\n background-color: ", ";\n }\n\n &:focus {\n outline: ", ";\n outline-offset: ", ";\n }\n\n &:disabled {\n background-color: ", ";\n cursor: not-allowed;\n }\n\n /* High contrast mode support */\n @media (prefers-contrast: high) {\n border: 1px solid;\n }\n\n /* Reduced motion support */\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n"])), function (_a) {
1997
+ })(templateObject_1$d || (templateObject_1$d = __makeTemplateObject(["\n background-color: ", ";\n border: none;\n border-radius: ", ";\n transition: ", ";\n box-sizing: border-box;\n display: ", ";\n justify-content: ", ";\n align-items: ", ";\n height: max-content;\n cursor: pointer;\n position: relative;\n\n /* Size-specific dimensions from component tokens */\n min-width: ", ";\n min-height: ", ";\n padding: ", ";\n\n &:hover {\n background-color: ", ";\n }\n\n &:active {\n background-color: ", ";\n }\n\n &:focus {\n outline: ", ";\n outline-offset: ", ";\n }\n\n &:disabled {\n background-color: ", ";\n cursor: not-allowed;\n }\n\n /* High contrast mode support */\n @media (prefers-contrast: high) {\n border: 1px solid;\n }\n\n /* Reduced motion support */\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n"], ["\n background-color: ", ";\n border: none;\n border-radius: ", ";\n transition: ", ";\n box-sizing: border-box;\n display: ", ";\n justify-content: ", ";\n align-items: ", ";\n height: max-content;\n cursor: pointer;\n position: relative;\n\n /* Size-specific dimensions from component tokens */\n min-width: ", ";\n min-height: ", ";\n padding: ", ";\n\n &:hover {\n background-color: ", ";\n }\n\n &:active {\n background-color: ", ";\n }\n\n &:focus {\n outline: ", ";\n outline-offset: ", ";\n }\n\n &:disabled {\n background-color: ", ";\n cursor: not-allowed;\n }\n\n /* High contrast mode support */\n @media (prefers-contrast: high) {\n border: 1px solid;\n }\n\n /* Reduced motion support */\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n"])), function (_a) {
1998
1998
  var $variant = _a.$variant;
1999
1999
  switch ($variant) {
2000
2000
  case 'primary':
@@ -2105,7 +2105,7 @@ var IconButton = function IconButton(_a) {
2105
2105
  "aria-hidden": "true" // Hide icon from screen readers since button has aria-label
2106
2106
  }));
2107
2107
  };
2108
- var templateObject_1$c;
2108
+ var templateObject_1$d;
2109
2109
 
2110
2110
  React.createElement;
2111
2111
  var ProgressBarContainer = styled.div.withConfig({
@@ -2115,7 +2115,7 @@ var ProgressBarContainer = styled.div.withConfig({
2115
2115
  displayName: "ProgressBar__ProgressBarContainer",
2116
2116
  componentId: "sc-1nco33q-0"
2117
2117
  })(templateObject_3$4 || (templateObject_3$4 = __makeTemplateObject(["\n background-color: ", ";\n border-radius: ", ";\n overflow: hidden;\n\n ", "\n\n ", "\n"], ["\n background-color: ", ";\n border-radius: ", ";\n overflow: hidden;\n\n ", "\n\n ", "\n"])), tokensData.semantic.color.background.disabled, tokensData.base.border.radius[1], function (props) {
2118
- return props.$variant === 'horizontal' && css(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n width: 100%;\n height: ", ";\n "], ["\n width: 100%;\n height: ", ";\n "])), props.$height ? tokensData.component.progressBar.sizes[props.$height].height : tokensData.component.progressBar.sizes.md.height);
2118
+ return props.$variant === 'horizontal' && css(templateObject_1$c || (templateObject_1$c = __makeTemplateObject(["\n width: 100%;\n height: ", ";\n "], ["\n width: 100%;\n height: ", ";\n "])), props.$height ? tokensData.component.progressBar.sizes[props.$height].height : tokensData.component.progressBar.sizes.md.height);
2119
2119
  }, function (props) {
2120
2120
  return props.$variant === 'vertical' && css(templateObject_2$5 || (templateObject_2$5 = __makeTemplateObject(["\n width: ", ";\n height: 100%;\n "], ["\n width: ", ";\n height: 100%;\n "])), props.$width ? tokensData.component.progressBar.sizes[props.$width].height : tokensData.component.progressBar.sizes.md.height);
2121
2121
  });
@@ -2169,7 +2169,7 @@ var ProgressBar = function ProgressBar(_a) {
2169
2169
  $color: color
2170
2170
  }));
2171
2171
  };
2172
- var templateObject_1$b, templateObject_2$5, templateObject_3$4, templateObject_4$3, templateObject_5$3, templateObject_6$1, templateObject_7$1;
2172
+ var templateObject_1$c, templateObject_2$5, templateObject_3$4, templateObject_4$3, templateObject_5$3, templateObject_6$1, templateObject_7$1;
2173
2173
 
2174
2174
  React.createElement;
2175
2175
  var StyledDivider = styled.div.withConfig({
@@ -2178,7 +2178,7 @@ var StyledDivider = styled.div.withConfig({
2178
2178
  },
2179
2179
  displayName: "Divider__StyledDivider",
2180
2180
  componentId: "sc-1l0c8ja-0"
2181
- })(templateObject_1$a || (templateObject_1$a = __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"
2181
+ })(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"
2182
2182
  /**
2183
2183
  * Divider is an atomic component that provides visual separation between content sections.
2184
2184
  *
@@ -2291,7 +2291,7 @@ var Divider = function Divider(_a) {
2291
2291
  "aria-orientation": orientation
2292
2292
  });
2293
2293
  };
2294
- var templateObject_1$a;
2294
+ var templateObject_1$b;
2295
2295
 
2296
2296
  React.createElement;
2297
2297
  var StyledStack = styled.div.withConfig({
@@ -2300,7 +2300,7 @@ var StyledStack = styled.div.withConfig({
2300
2300
  },
2301
2301
  displayName: "Stack__StyledStack",
2302
2302
  componentId: "sc-1ehkxgy-0"
2303
- })(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n display: flex;\n flex-direction: var(--stack-direction);\n align-items: var(--stack-align-items);\n justify-content: var(--stack-justify-content);\n gap: var(--stack-gap);\n flex-wrap: var(--stack-wrap);\n"], ["\n display: flex;\n flex-direction: var(--stack-direction);\n align-items: var(--stack-align-items);\n justify-content: var(--stack-justify-content);\n gap: var(--stack-gap);\n flex-wrap: var(--stack-wrap);\n"
2303
+ })(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n display: flex;\n flex-direction: var(--stack-direction);\n align-items: var(--stack-align-items);\n justify-content: var(--stack-justify-content);\n gap: var(--stack-gap);\n flex-wrap: var(--stack-wrap);\n"], ["\n display: flex;\n flex-direction: var(--stack-direction);\n align-items: var(--stack-align-items);\n justify-content: var(--stack-justify-content);\n gap: var(--stack-gap);\n flex-wrap: var(--stack-wrap);\n"
2304
2304
  // Helper function to convert gap prop to CSS value
2305
2305
  ])));
2306
2306
  // Helper function to convert gap prop to CSS value
@@ -2338,6 +2338,97 @@ var Stack = function Stack(_a) {
2338
2338
  "data-testid": dataTestId
2339
2339
  }, children);
2340
2340
  };
2341
+ var templateObject_1$a;
2342
+
2343
+ React.createElement;
2344
+ var semantic = tokensData.semantic;
2345
+ var StyledTag = styled.span.withConfig({
2346
+ shouldForwardProp: function shouldForwardProp(prop) {
2347
+ return !prop.startsWith('$');
2348
+ },
2349
+ displayName: "Tag__StyledTag",
2350
+ componentId: "sc-lzfmti-0"
2351
+ })(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: ", ";\n user-select: none;\n white-space: nowrap;\n max-height: ", ";\n \n /* Size - fixed to small */\n padding: ", " ", ";\n font: ", ";\n \n /* Variant styles */\n background-color: ", ";\n \n color: ", ";\n \n border: ", ";\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: ", ";\n user-select: none;\n white-space: nowrap;\n max-height: ", ";\n \n /* Size - fixed to small */\n padding: ", " ", ";\n font: ", ";\n \n /* Variant styles */\n background-color: ", ";\n \n color: ", ";\n \n border: ", ";\n"
2352
+ /**
2353
+ * Tag component for categorizing and labeling content
2354
+ *
2355
+ * A static, non-interactive label used to categorize elements or objects in the UI.
2356
+ * Tags help users quickly identify and understand content classification.
2357
+ */])), tokensData.base.border.radius[2], tokensData.semantic.size.icon.lg || '2rem', tokensData.base.spacing[1], tokensData.base.spacing[2], tokensData.semantic.typography.button3, function (_a) {
2358
+ var $variant = _a.$variant;
2359
+ switch ($variant) {
2360
+ case 'interactive':
2361
+ return semantic.color.background['interactive-subtle'];
2362
+ case 'success':
2363
+ return semantic.color.background['success-subtle'];
2364
+ case 'warning':
2365
+ return semantic.color.background['warning-subtle'];
2366
+ case 'error':
2367
+ return semantic.color.background['error-subtle'];
2368
+ case 'emphasis':
2369
+ return semantic.color.background.emphasis;
2370
+ default:
2371
+ return semantic.color.background.surface;
2372
+ }
2373
+ }, function (_a) {
2374
+ var $variant = _a.$variant;
2375
+ switch ($variant) {
2376
+ case 'interactive':
2377
+ return semantic.color.text.interactive;
2378
+ case 'success':
2379
+ return semantic.color.text.success;
2380
+ case 'warning':
2381
+ return semantic.color.text.warning;
2382
+ case 'error':
2383
+ return semantic.color.text.error;
2384
+ case 'emphasis':
2385
+ return semantic.color.text.inverse;
2386
+ default:
2387
+ return semantic.color.text["default"];
2388
+ }
2389
+ }, function (_a) {
2390
+ var $variant = _a.$variant,
2391
+ $border = _a.$border;
2392
+ if (!$border) return 'none';
2393
+ switch ($variant) {
2394
+ case 'interactive':
2395
+ return "1px solid ".concat(semantic.color.border.interactive);
2396
+ case 'success':
2397
+ return "1px solid ".concat(semantic.color.border.success);
2398
+ case 'warning':
2399
+ return "1px solid ".concat(semantic.color.border.warning);
2400
+ case 'error':
2401
+ return "1px solid ".concat(semantic.color.border.error);
2402
+ case 'emphasis':
2403
+ return "1px solid ".concat(semantic.color.background.emphasis);
2404
+ default:
2405
+ return "1px solid ".concat(semantic.color.border["default"]);
2406
+ }
2407
+ });
2408
+ /**
2409
+ * Tag component for categorizing and labeling content
2410
+ *
2411
+ * A static, non-interactive label used to categorize elements or objects in the UI.
2412
+ * Tags help users quickly identify and understand content classification.
2413
+ */
2414
+ var Tag = function Tag(_a) {
2415
+ var children = _a.children,
2416
+ _b = _a.variant,
2417
+ variant = _b === void 0 ? 'default' : _b,
2418
+ _c = _a.border,
2419
+ border = _c === void 0 ? true : _c,
2420
+ dataTestId = _a["data-testid"],
2421
+ props = __rest(_a, ["children", "variant", "border", 'data-testid']);
2422
+ return /*#__PURE__*/React.createElement(StyledTag, _extends({
2423
+ $variant: variant,
2424
+ $border: border,
2425
+ "data-testid": dataTestId,
2426
+ "data-variant": variant,
2427
+ "data-border": border,
2428
+ role: "status",
2429
+ "aria-label": typeof children === 'string' ? "Tag: ".concat(children) : undefined
2430
+ }, props), children);
2431
+ };
2341
2432
  var templateObject_1$9;
2342
2433
 
2343
2434
  React.createElement;
@@ -3107,5 +3198,5 @@ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, temp
3107
3198
  // Main design system exports
3108
3199
  var tokens = tokensData;
3109
3200
 
3110
- export { Avatar, Badge, BooleanChip, Box, Breadcrumbs, Button, CardLarge, CardSmall, Chip, ChipGroup, CodeBlock, Container, DateFormatter, Divider, Dropdown, FeatureBlock, FilterChip, Grid, GridCol, Icon, IconButton, LegacyChip, PageTitle, Picture, ProgressBar, ResponsiveGrid, Stack, Typography, iconsData, tokens };
3201
+ export { Avatar, Badge, BooleanChip, Box, Breadcrumbs, Button, CardLarge, CardSmall, Chip, ChipGroup, CodeBlock, Container, DateFormatter, Divider, Dropdown, FeatureBlock, FilterChip, Grid, GridCol, Icon, IconButton, LegacyChip, PageTitle, Picture, ProgressBar, ResponsiveGrid, Stack, Tag, Typography, iconsData, tokens };
3111
3202
  //# sourceMappingURL=index.esm.js.map