@times-design-system/components-react 0.4.0 → 0.5.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/CHANGELOG.md +11 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +11 -2
- package/src/Text/Text.tsx +1 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.5.0](https://github.com/newsuk/times-design-system/compare/@times-design-system/components-react@0.4.0...@times-design-system/components-react@0.5.0) (2026-03-05)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- **components-react:** add exports field for Vite dev resolution ([293f81f](https://github.com/newsuk/times-design-system/commit/293f81f651d7f984926ce480bee91d9054a445f7))
|
|
11
|
+
- **TDS-000:** remove npmrc file ([#39](https://github.com/newsuk/times-design-system/issues/39)) ([3ba8e4c](https://github.com/newsuk/times-design-system/commit/3ba8e4c13b6c0be54ff5714f7df04f5a23b41b9f))
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
- **TDS-36:** update of tokens for storybook and better alignment ([#38](https://github.com/newsuk/times-design-system/issues/38)) ([b96be55](https://github.com/newsuk/times-design-system/commit/b96be55b9012c81bba20a03fceb7437e09f7e084))
|
|
16
|
+
|
|
6
17
|
# 0.4.0 (2026-02-05)
|
|
7
18
|
|
|
8
19
|
### Features
|
package/dist/index.cjs.js
CHANGED
|
@@ -65,7 +65,7 @@ const Text = ({
|
|
|
65
65
|
const TextComponent = as || 'p';
|
|
66
66
|
const transformedTypographyStyle = typographyStyle?.replaceAll('.', '-').toLowerCase() ?? '';
|
|
67
67
|
return React.createElement(TextComponent, {
|
|
68
|
-
className: cn(classes, typographyStyle ? `--tds
|
|
68
|
+
className: cn(classes, typographyStyle ? `--tds-${transformedTypographyStyle}` : undefined),
|
|
69
69
|
style: styles ? styles : undefined
|
|
70
70
|
}, children);
|
|
71
71
|
};
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../src/Button/Button.tsx","../src/utils/cn.tsx","../src/Text/Text.tsx","../src/AdContainer/AdContainer.tsx","../src/CommentsDisabled/CommentsDisabled.tsx","../src/Input/Input.tsx","../src/Divider/Divider.tsx","../src/Link/Link.tsx","../src/Article/UpNextArticles/UpNextArticles.tsx","../src/utils/hooks.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport './styles.css';\n\ninterface ButtonProps {\n /** Is this the principal call to action on the page? */\n primary?: boolean;\n /** How large should the button be? */\n size?: 'small' | 'medium' | 'large';\n /** Button contents */\n label: string;\n /** Optional click handler */\n onClick?: () => void;\n}\n\n/** Primary UI component for user interaction */\nexport const Button: React.FC<ButtonProps> = ({\n primary,\n size,\n label,\n ...props\n}) => {\n const mode = primary\n ? 'storybook-button--primary'\n : 'storybook-button--secondary';\n return (\n <button\n type=\"button\"\n className={['storybook-button', `storybook-button--${size}`, mode].join(\n ' '\n )}\n {...props}\n >\n {label}\n </button>\n );\n};\n","export const cn = (...classNames: (string | undefined)[]) => {\n return classNames.filter(Boolean).join(' ');\n};\n","import React from 'react';\nimport './styles.css';\nimport './typographyStyles.css';\nimport { cn } from '../utils/cn';\n\ninterface TextProps {\n as?: 'p' | 'span' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5';\n typographyStyle?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\nexport const Text: React.FC<TextProps> = ({\n as,\n typographyStyle,\n styles,\n classes,\n children\n}) => {\n const TextComponent = as || 'p';\n const transformedTypographyStyle =\n typographyStyle?.replaceAll('.', '-').toLowerCase() ?? '';\n\n return (\n <TextComponent\n className={cn(\n classes,\n typographyStyle\n ? `--tds-typography-tokens-${transformedTypographyStyle}`\n : undefined\n )}\n style={styles ? styles : undefined}\n >\n {children}\n </TextComponent>\n );\n};\n","import React from 'react';\nimport { Text } from '../Text/Text';\nimport './styles.css';\n\ninterface AdContainerProps {\n type?: 'header' | 'inline';\n slotID?: string;\n}\n\n/** Primary AdContainer UI component for user interaction */\n\nexport const AdContainer: React.FC<AdContainerProps> = ({\n type = 'inline',\n slotID\n}) => {\n return (\n <div\n className={`ad-${type}-container`}\n data-testid={`ad-${type}-container`}\n >\n {type === 'inline' && (\n <Text as=\"span\" classes=\"ad-label\">\n Advertisement\n </Text>\n )}\n <div className={`ad-${type}-wrapper`}>\n <div id={type === 'header' ? 'ad-header' : slotID}></div>\n </div>\n </div>\n );\n};\n","import React, { HTMLAttributes } from 'react';\nimport './styles.css';\nimport { Text } from '../Text/Text';\n\nexport interface CommentsDisabledProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'content'> {\n heading?: string;\n contentText?: React.ReactNode;\n guidelinesUrl?: string;\n guidelinesLinkText?: string;\n className?: string;\n}\n\nexport const CommentsDisabled = React.forwardRef<\n HTMLDivElement,\n CommentsDisabledProps\n>(\n (\n {\n heading = 'Comments are not enabled for this article',\n contentText = 'Comments are subject to our community guidelines, which can be viewed',\n guidelinesUrl = '#',\n guidelinesLinkText = 'here',\n className = '',\n ...props\n },\n ref\n ) => {\n return (\n <div\n ref={ref}\n className={`tds-comments-disabled ${className}`.trim()}\n {...props}\n >\n <Text\n as=\"h3\"\n typographyStyle=\"brand-heading-fluid-light-xsmall\"\n classes=\"tds-comments-disabled__heading\"\n >\n {heading}\n </Text>\n <hr className=\"tds-comments-disabled__divider\" />\n <Text\n typographyStyle=\"utility-body-regular-medium\"\n classes=\"tds-comments-disabled__content\"\n >\n {contentText}{' '}\n <a\n href={guidelinesUrl}\n className=\"tds-comments-disabled__link\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {guidelinesLinkText}\n </a>\n .\n </Text>\n </div>\n );\n }\n);\n\nCommentsDisabled.displayName = 'CommentsDisabled';\n","import React from 'react';\nimport './styles.css';\n\ninterface InputProps {\n /** Label text for the input */\n label?: string;\n /** Input placeholder text */\n placeholder?: string;\n /** Input type */\n type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';\n /** Input value */\n value?: string;\n /** Change handler */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Disabled state */\n disabled?: boolean;\n /** Required state */\n required?: boolean;\n /** Input name attribute */\n name?: string;\n /** Input id attribute */\n id?: string;\n}\n\n/** Input component with label using design tokens */\nexport const Input: React.FC<InputProps> = ({\n label,\n placeholder,\n type = 'text',\n value,\n onChange,\n disabled = false,\n required = false,\n name,\n id,\n ...props\n}) => {\n const inputId = id || name;\n\n return (\n <div className=\"tds-input-wrapper\">\n {label && (\n <label htmlFor={inputId} className=\"tds-input-label\">\n {label}\n {required && <span className=\"tds-input-required\">*</span>}\n </label>\n )}\n <input\n id={inputId}\n type={type}\n name={name}\n className=\"tds-input\"\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n disabled={disabled}\n required={required}\n {...props}\n />\n </div>\n );\n};\n","import React from 'react';\nimport './styles.css';\n\ninterface DividerProps {\n /** Whether the divider should span full width of its container */\n fullWidth?: boolean;\n /** Orientation of the divider */\n orientation?: 'horizontal' | 'vertical';\n /** Custom spacing/margin */\n spacing?: 'small' | 'medium' | 'large';\n /** CSS class for additional styling */\n className?: string;\n}\n\n/** Divider component that uses design tokens for styling */\nexport const Divider: React.FC<DividerProps> = ({\n fullWidth = true,\n orientation = 'horizontal',\n spacing = 'medium',\n className = '',\n ...props\n}) => {\n const baseClass = 'tds-divider';\n const orientationClass = `tds-divider--${orientation}`;\n const spacingClass = `tds-divider--spacing-${spacing}`;\n const widthClass = fullWidth\n ? 'tds-divider--full-width'\n : 'tds-divider--constrained';\n\n const classes = [\n baseClass,\n orientationClass,\n spacingClass,\n widthClass,\n className\n ]\n .filter(Boolean)\n .join(' ');\n\n return <div className={classes} data-node-id=\"4042:14179\" {...props} />;\n};\n","import React from 'react';\nimport './styles.css';\nimport { cn } from '../utils/cn';\n\ninterface LinkProps {\n href: string;\n variant?: 'primary' | 'secondary' | 'danger';\n onClick?: (e: React.MouseEvent<HTMLAnchorElement>) => void;\n target?: '_self' | '_blank' | '_parent' | '_top';\n rel?: string;\n className?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\n/** Link UI component for navigation and interactive linking */\nexport const Link: React.FC<LinkProps> = ({\n href,\n variant = 'primary',\n onClick,\n target,\n rel,\n className,\n classes,\n styles,\n children\n}) => {\n // If target is _blank, set rel to noopener noreferrer for security\n const linkRel =\n target === '_blank'\n ? rel\n ? `${rel} noopener noreferrer`\n : 'noopener noreferrer'\n : rel;\n\n return (\n <a\n href={href}\n onClick={onClick}\n target={target}\n rel={linkRel}\n className={cn('tds-link', `tds-link--${variant}`, className || classes)}\n style={styles ? styles : undefined}\n >\n {children}\n </a>\n );\n};\n","import React from 'react';\nimport { Text } from '../../Text/Text';\nimport './styles.css';\n\ninterface UpNextArticlesProps {\n upNextArticles: {\n url: string;\n headline: string;\n duration?: string;\n thumbnail: string;\n }[];\n}\n\n/** Primary UpNextArticles UI component for user interaction */\n\nexport const UpNextArticles: React.FC<UpNextArticlesProps> = ({\n upNextArticles\n}) => {\n if (!upNextArticles || upNextArticles.length === 0) {\n return;\n }\n\n return (\n <div className=\"video-article-up-next\">\n <div className=\"vertical-divider\"></div>\n <div className=\"up-next-articles-container show-right-overlay\">\n <Text as=\"h4\" classes=\"video-heading video-category\">\n Up Next\n </Text>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-left\"></div>\n <div className=\"up-next-articles-scroll\">\n <div className=\"up-next-articles\">\n {upNextArticles.map((up_next_article, index) => (\n <div className=\"up-next-article\" key={index}>\n <a href={up_next_article.url}>\n <div className=\"up-next-article-image-container\">\n <Text classes=\"up-next-article-duration video-heading\">\n {up_next_article.duration}\n </Text>\n <div className=\"up-next-article-image-overlay\"></div>\n <div className=\"up-next-article-image\">\n {up_next_article.thumbnail !== '' && (\n <picture>\n <source\n srcSet={up_next_article.thumbnail}\n type=\"image/webp\"\n />\n <img\n loading=\"lazy\"\n src={up_next_article.thumbnail}\n alt={up_next_article.headline}\n />\n </picture>\n )}\n </div>\n </div>\n <Text as=\"span\" classes=\"article-heading\">\n {up_next_article.headline}\n </Text>\n </a>\n </div>\n ))}\n </div>\n </div>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-right\"></div>\n </div>\n </div>\n );\n};\n","// function possibly for future use with typography tokens.\n// takes a token and tokens object, returns media query string referencing typography token values.\ntype UseTypographyToken = (\n typographyToken: string,\n tokens: {\n breakpoints: { [key: string]: number };\n [key: string]: any; // eslint-disable-line @typescript-eslint/no-explicit-any\n }\n) => string;\n\nexport const useTypographyToken: UseTypographyToken = (\n typographyToken,\n tokens\n) => `\n .${typographyToken} {\n font: ${typographyToken}\n\n @media (min-width: ${tokens.breakpoints.sm}px) {\n fontSize: ${tokens['Viewport/ Small'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.md}px) {\n fontSize: ${tokens['Viewport/ Medium'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.lg}px) {\n fontSize: ${tokens['Viewport/ Large'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.xl}px) {\n fontSize: ${tokens['Viewport/ XLarge'].typography[typographyToken].fontSize};\n }\n }\n`;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","Button","primary","size","label","props","mode","React","className","join","cn","classNames","filter","Boolean","Text","as","typographyStyle","styles","classes","children","TextComponent","transformedTypographyStyle","replaceAll","toLowerCase","undefined","AdContainer","slotID","id","CommentsDisabled","forwardRef","heading","contentText","guidelinesUrl","guidelinesLinkText","trim","href","target","rel","displayName","Input","placeholder","value","onChange","disabled","required","name","inputId","htmlFor","Divider","fullWidth","orientation","spacing","baseClass","orientationClass","spacingClass","widthClass","Link","variant","onClick","linkRel","UpNextArticles","upNextArticles","length","map","up_next_article","index","key","url","duration","thumbnail","srcSet","loading","src","alt","headline","useTypographyToken","typographyToken","tokens","breakpoints","sm","typography","fontSize","md","lg","xl"],"mappings":";;;;AAAA,SAASA,WAAWA,CAACC,GAAG,EAAEC,GAAG,EAAE;EAC7B,IAAKA,GAAG,KAAK,MAAM,EAAGA,GAAG,GAAG,EAAE;AAC9B,EAAA,IAAIC,QAAQ,GAAGD,GAAG,CAACC,QAAQ;AAE3B,EAAA,IAAI,CAACF,GAAG,IAAI,OAAOG,QAAQ,KAAK,WAAW,EAAE;AAAE,IAAA;AAAQ,EAAA;AAEvD,EAAA,IAAIC,IAAI,GAAGD,QAAQ,CAACC,IAAI,IAAID,QAAQ,CAACE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACpE,EAAA,IAAIC,KAAK,GAAGH,QAAQ,CAACI,aAAa,CAAC,OAAO,CAAC;EAC3CD,KAAK,CAACE,IAAI,GAAG,UAAU;EAEvB,IAAIN,QAAQ,KAAK,KAAK,EAAE;IACtB,IAAIE,IAAI,CAACK,UAAU,EAAE;MACnBL,IAAI,CAACM,YAAY,CAACJ,KAAK,EAAEF,IAAI,CAACK,UAAU,CAAC;AAC3C,IAAA,CAAC,MAAM;AACLL,MAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC;AACzB,IAAA;AACF,EAAA,CAAC,MAAM;AACLF,IAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC;AACzB,EAAA;EAEA,IAAIA,KAAK,CAACM,UAAU,EAAE;AACpBN,IAAAA,KAAK,CAACM,UAAU,CAACC,OAAO,GAAGb,GAAG;AAChC,EAAA,CAAC,MAAM;IACLM,KAAK,CAACK,WAAW,CAACR,QAAQ,CAACW,cAAc,CAACd,GAAG,CAAC,CAAC;AACjD,EAAA;AACF;;;;;ACXA;AACO,MAAMe,MAAM,GAA0BA,CAAC;EAC5CC,OAAO;EACPC,IAAI;EACJC,KAAK;EACL,GAAGC;AAAK,CACT,KAAI;AACH,EAAA,MAAMC,IAAI,GAAGJ,OAAO,GAChB,2BAA2B,GAC3B,6BAA6B;AACjC,EAAA,OACEK,KAAA,CAAAd,aAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,IAAI,EAAC,QAAQ;AACbc,IAAAA,SAAS,EAAE,CAAC,kBAAkB,EAAE,qBAAqBL,IAAI,CAAA,CAAE,EAAEG,IAAI,CAAC,CAACG,IAAI,CACrE,GAAG,CACJ;IAAA,GACGJ;GAAK,EAERD,KAAK,CACC;AAEb;;;;;;;;ACnCO,MAAMM,EAAE,GAAGA,CAAC,GAAGC,UAAkC,KAAI;EAC1D,OAAOA,UAAU,CAACC,MAAM,CAACC,OAAO,CAAC,CAACJ,IAAI,CAAC,GAAG,CAAC;AAC7C,CAAC;;ACWM,MAAMK,IAAI,GAAwBA,CAAC;EACxCC,EAAE;EACFC,eAAe;EACfC,MAAM;EACNC,OAAO;AACPC,EAAAA;AAAQ,CACT,KAAI;AACH,EAAA,MAAMC,aAAa,GAAGL,EAAE,IAAI,GAAG;AAC/B,EAAA,MAAMM,0BAA0B,GAC9BL,eAAe,EAAEM,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAACC,WAAW,EAAE,IAAI,EAAE;AAE3D,EAAA,OACEhB,KAAA,CAAAd,aAAA,CAAC2B,aAAa,EAAA;AACZZ,IAAAA,SAAS,EAAEE,EAAE,CACXQ,OAAO,EACPF,eAAe,GACX,CAAA,wBAAA,EAA2BK,0BAA0B,CAAA,CAAE,GACvDG,SAAS,CACd;AACDhC,IAAAA,KAAK,EAAEyB,MAAM,GAAGA,MAAM,GAAGO;KAExBL,QAAQ,CACK;AAEpB;;;;;AC5BA;AAEO,MAAMM,WAAW,GAA+BA,CAAC;AACtD/B,EAAAA,IAAI,GAAG,QAAQ;AACfgC,EAAAA;AAAM,CACP,KAAI;AACH,EAAA,OACEnB,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;IACEe,SAAS,EAAE,CAAA,GAAA,EAAMd,IAAI,CAAA,UAAA,CAAY;IAAA,aAAA,EACpB,MAAMA,IAAI,CAAA,UAAA;GAAY,EAElCA,IAAI,KAAK,QAAQ,IAChBa,oBAACO,IAAI,EAAA;AAACC,IAAAA,EAAE,EAAC,MAAM;AAACG,IAAAA,OAAO,EAAC;qBAGzB,EACDX,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;IAAKe,SAAS,EAAE,MAAMd,IAAI,CAAA,QAAA;AAAU,GAAA,EAClCa,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKkC,IAAAA,EAAE,EAAEjC,IAAI,KAAK,QAAQ,GAAG,WAAW,GAAGgC;IAAc,CACrD,CACF;AAEV;;;;;MCjBaE,gBAAgB,GAAGrB,KAAK,CAACsB,UAAU,CAI9C,CACE;AACEC,EAAAA,OAAO,GAAG,2CAA2C;AACrDC,EAAAA,WAAW,GAAG,uEAAuE;AACrFC,EAAAA,aAAa,GAAG,GAAG;AACnBC,EAAAA,kBAAkB,GAAG,MAAM;AAC3BzB,EAAAA,SAAS,GAAG,EAAE;EACd,GAAGH;AAAK,CACT,EACDlB,GAAG,KACD;AACF,EAAA,OACEoB,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AACEN,IAAAA,GAAG,EAAEA,GAAG;AACRqB,IAAAA,SAAS,EAAE,CAAA,sBAAA,EAAyBA,SAAS,EAAE,CAAC0B,IAAI,EAAE;OAClD7B;AAAK,GAAA,EAETE,KAAA,CAAAd,aAAA,CAACqB,IAAI,EAAA;AACHC,IAAAA,EAAE,EAAC,IAAI;AACPC,IAAAA,eAAe,EAAC,kCAAkC;AAClDE,IAAAA,OAAO,EAAC;GAAgC,EAEvCY,OAAO,CACH,EACPvB,KAAA,CAAAd,aAAA,CAAA,IAAA,EAAA;AAAIe,IAAAA,SAAS,EAAC;AAAgC,GAAA,CAAG,EACjDD,KAAA,CAAAd,aAAA,CAACqB,IAAI;AACHE,IAAAA,eAAe,EAAC,6BAA6B;AAC7CE,IAAAA,OAAO,EAAC;GAAgC,EAEvCa,WAAW,EAAE,GAAG,EACjBxB,KAAA,CAAAd,aAAA,CAAA,GAAA,EAAA;AACE0C,IAAAA,IAAI,EAAEH,aAAa;AACnBxB,IAAAA,SAAS,EAAC,6BAA6B;AACvC4B,IAAAA,MAAM,EAAC,QAAQ;AACfC,IAAAA,GAAG,EAAC;AAAqB,GAAA,EAExBJ,kBAAkB,CACjB,EAEC,GAAA,CAAA,CACH;AAEV,CAAC;AAGHL,gBAAgB,CAACU,WAAW,GAAG,kBAAkB;;;;;ACtCjD;AACO,MAAMC,KAAK,GAAyBA,CAAC;EAC1CnC,KAAK;EACLoC,WAAW;AACX9C,EAAAA,IAAI,GAAG,MAAM;EACb+C,KAAK;EACLC,QAAQ;AACRC,EAAAA,QAAQ,GAAG,KAAK;AAChBC,EAAAA,QAAQ,GAAG,KAAK;EAChBC,IAAI;EACJlB,EAAE;EACF,GAAGtB;AAAK,CACT,KAAI;AACH,EAAA,MAAMyC,OAAO,GAAGnB,EAAE,IAAIkB,IAAI;AAE1B,EAAA,OACEtC,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;GAAmB,EAC/BJ,KAAK,IACJG,KAAA,CAAAd,aAAA,CAAA,OAAA,EAAA;AAAOsD,IAAAA,OAAO,EAAED,OAAO;AAAEtC,IAAAA,SAAS,EAAC;GAAiB,EACjDJ,KAAK,EACLwC,QAAQ,IAAIrC,KAAA,CAAAd,aAAA,CAAA,MAAA,EAAA;AAAMe,IAAAA,SAAS,EAAC;GAAoB,EAAA,GAAA,CAAS,CAE7D,EACDD,KAAA,CAAAd,aAAA,CAAA,OAAA,EAAA;AACEkC,IAAAA,EAAE,EAAEmB,OAAO;AACXpD,IAAAA,IAAI,EAAEA,IAAI;AACVmD,IAAAA,IAAI,EAAEA,IAAI;AACVrC,IAAAA,SAAS,EAAC,WAAW;AACrBgC,IAAAA,WAAW,EAAEA,WAAW;AACxBC,IAAAA,KAAK,EAAEA,KAAK;AACZC,IAAAA,QAAQ,EAAEA,QAAQ;AAClBC,IAAAA,QAAQ,EAAEA,QAAQ;AAClBC,IAAAA,QAAQ,EAAEA,QAAQ;IAAA,GACdvC;AAAK,GAAA,CACT,CACE;AAEV;;;;;AC/CA;AACO,MAAM2C,OAAO,GAA2BA,CAAC;AAC9CC,EAAAA,SAAS,GAAG,IAAI;AAChBC,EAAAA,WAAW,GAAG,YAAY;AAC1BC,EAAAA,OAAO,GAAG,QAAQ;AAClB3C,EAAAA,SAAS,GAAG,EAAE;EACd,GAAGH;AAAK,CACT,KAAI;EACH,MAAM+C,SAAS,GAAG,aAAa;AAC/B,EAAA,MAAMC,gBAAgB,GAAG,CAAA,aAAA,EAAgBH,WAAW,CAAA,CAAE;AACtD,EAAA,MAAMI,YAAY,GAAG,CAAA,qBAAA,EAAwBH,OAAO,CAAA,CAAE;AACtD,EAAA,MAAMI,UAAU,GAAGN,SAAS,GACxB,yBAAyB,GACzB,0BAA0B;EAE9B,MAAM/B,OAAO,GAAG,CACdkC,SAAS,EACTC,gBAAgB,EAChBC,YAAY,EACZC,UAAU,EACV/C,SAAS,CACV,CACEI,MAAM,CAACC,OAAO,CAAC,CACfJ,IAAI,CAAC,GAAG,CAAC;AAEZ,EAAA,OAAOF,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAEU,OAAO;oBAAe,YAAY;IAAA,GAAKb;AAAK,GAAA,CAAI;AACzE;;;;;ACxBA;AACO,MAAMmD,IAAI,GAAwBA,CAAC;EACxCrB,IAAI;AACJsB,EAAAA,OAAO,GAAG,SAAS;EACnBC,OAAO;EACPtB,MAAM;EACNC,GAAG;EACH7B,SAAS;EACTU,OAAO;EACPD,MAAM;AACNE,EAAAA;AAAQ,CACT,KAAI;AACH;AACA,EAAA,MAAMwC,OAAO,GACXvB,MAAM,KAAK,QAAQ,GACfC,GAAG,GACD,CAAA,EAAGA,GAAG,CAAA,oBAAA,CAAsB,GAC5B,qBAAqB,GACvBA,GAAG;AAET,EAAA,OACE9B;AACE4B,IAAAA,IAAI,EAAEA,IAAI;AACVuB,IAAAA,OAAO,EAAEA,OAAO;AAChBtB,IAAAA,MAAM,EAAEA,MAAM;AACdC,IAAAA,GAAG,EAAEsB,OAAO;AACZnD,IAAAA,SAAS,EAAEE,EAAE,CAAC,UAAU,EAAE,CAAA,UAAA,EAAa+C,OAAO,CAAA,CAAE,EAAEjD,SAAS,IAAIU,OAAO,CAAC;AACvE1B,IAAAA,KAAK,EAAEyB,MAAM,GAAGA,MAAM,GAAGO;GAAS,EAEjCL,QAAQ,CACP;AAER;;;;;ACnCA;AAEO,MAAMyC,cAAc,GAAkCA,CAAC;AAC5DC,EAAAA;AAAc,CACf,KAAI;EACH,IAAI,CAACA,cAAc,IAAIA,cAAc,CAACC,MAAM,KAAK,CAAC,EAAE;AAClD,IAAA;AACF,EAAA;AAEA,EAAA,OACEvD,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAAuB,GAAA,EACpCD,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAAkB,GAAA,CAAO,EACxCD,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAA+C,GAAA,EAC5DD,KAAA,CAAAd,aAAA,CAACqB,IAAI;AAACC,IAAAA,EAAE,EAAC,IAAI;AAACG,IAAAA,OAAO,EAAC;GAA8B,EAAA,SAAA,CAE7C,EACPX,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAAwD,GAAA,CAAO,EAC9ED,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAAyB,GAAA,EACtCD,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAAkB,GAAA,EAC9BqD,cAAc,CAACE,GAAG,CAAC,CAACC,eAAe,EAAEC,KAAK,KACzC1D,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC,iBAAiB;AAAC0D,IAAAA,GAAG,EAAED;AAAK,GAAA,EACzC1D,KAAA,CAAAd,aAAA,CAAA,GAAA,EAAA;IAAG0C,IAAI,EAAE6B,eAAe,CAACG;AAAG,GAAA,EAC1B5D,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAAiC,GAAA,EAC9CD,KAAA,CAAAd,aAAA,CAACqB,IAAI;AAACI,IAAAA,OAAO,EAAC;GAAwC,EACnD8C,eAAe,CAACI,QAAQ,CACpB,EACP7D,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;AAA+B,GAAA,CAAO,EACrDD,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;GAAuB,EACnCwD,eAAe,CAACK,SAAS,KAAK,EAAE,IAC/B9D,KAAA,CAAAd,aAAA,CAAA,SAAA,EAAA,IAAA,EACEc,KAAA,CAAAd,aAAA,CAAA,QAAA,EAAA;IACE6E,MAAM,EAAEN,eAAe,CAACK,SAAS;AACjC3E,IAAAA,IAAI,EAAC;AAAY,GAAA,CACjB,EACFa,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AACE8E,IAAAA,OAAO,EAAC,MAAM;IACdC,GAAG,EAAER,eAAe,CAACK,SAAS;IAC9BI,GAAG,EAAET,eAAe,CAACU;IACrB,CAEL,CACG,CACF,EACNnE,KAAA,CAAAd,aAAA,CAACqB,IAAI,EAAA;AAACC,IAAAA,EAAE,EAAC,MAAM;AAACG,IAAAA,OAAO,EAAC;KACrB8C,eAAe,CAACU,QAAQ,CACpB,CACL,CAEP,CAAC,CACE,CACF,EACNnE,KAAA,CAAAd,aAAA,CAAA,KAAA,EAAA;AAAKe,IAAAA,SAAS,EAAC;IAAgE,CAC3E,CACF;AAEV;;MC1DamE,kBAAkB,GAAuBA,CACpDC,eAAe,EACfC,MAAM,KACH;KACAD,eAAe,CAAA;YACRA,eAAe;;yBAEFC,MAAM,CAACC,WAAW,CAACC,EAAE,CAAA;kBAC5BF,MAAM,CAAC,iBAAiB,CAAC,CAACG,UAAU,CAACJ,eAAe,CAAC,CAACK,QAAQ,CAAA;;;yBAGvDJ,MAAM,CAACC,WAAW,CAACI,EAAE,CAAA;kBAC5BL,MAAM,CAAC,kBAAkB,CAAC,CAACG,UAAU,CAACJ,eAAe,CAAC,CAACK,QAAQ,CAAA;;;yBAGxDJ,MAAM,CAACC,WAAW,CAACK,EAAE,CAAA;kBAC5BN,MAAM,CAAC,iBAAiB,CAAC,CAACG,UAAU,CAACJ,eAAe,CAAC,CAACK,QAAQ,CAAA;;;yBAGvDJ,MAAM,CAACC,WAAW,CAACM,EAAE,CAAA;kBAC5BP,MAAM,CAAC,kBAAkB,CAAC,CAACG,UAAU,CAACJ,eAAe,CAAC,CAACK,QAAQ,CAAA;;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../src/Button/Button.tsx","../src/utils/cn.tsx","../src/Text/Text.tsx","../src/AdContainer/AdContainer.tsx","../src/CommentsDisabled/CommentsDisabled.tsx","../src/Input/Input.tsx","../src/Divider/Divider.tsx","../src/Link/Link.tsx","../src/Article/UpNextArticles/UpNextArticles.tsx","../src/utils/hooks.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport './styles.css';\n\ninterface ButtonProps {\n /** Is this the principal call to action on the page? */\n primary?: boolean;\n /** How large should the button be? */\n size?: 'small' | 'medium' | 'large';\n /** Button contents */\n label: string;\n /** Optional click handler */\n onClick?: () => void;\n}\n\n/** Primary UI component for user interaction */\nexport const Button: React.FC<ButtonProps> = ({\n primary,\n size,\n label,\n ...props\n}) => {\n const mode = primary\n ? 'storybook-button--primary'\n : 'storybook-button--secondary';\n return (\n <button\n type=\"button\"\n className={['storybook-button', `storybook-button--${size}`, mode].join(\n ' '\n )}\n {...props}\n >\n {label}\n </button>\n );\n};\n","export const cn = (...classNames: (string | undefined)[]) => {\n return classNames.filter(Boolean).join(' ');\n};\n","import React from 'react';\nimport './styles.css';\nimport './typographyStyles.css';\nimport { cn } from '../utils/cn';\n\ninterface TextProps {\n as?: 'p' | 'span' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5';\n typographyStyle?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\nexport const Text: React.FC<TextProps> = ({\n as,\n typographyStyle,\n styles,\n classes,\n children\n}) => {\n const TextComponent = as || 'p';\n const transformedTypographyStyle =\n typographyStyle?.replaceAll('.', '-').toLowerCase() ?? '';\n\n return (\n <TextComponent\n className={cn(\n classes,\n typographyStyle ? `--tds-${transformedTypographyStyle}` : undefined\n )}\n style={styles ? styles : undefined}\n >\n {children}\n </TextComponent>\n );\n};\n","import React from 'react';\nimport { Text } from '../Text/Text';\nimport './styles.css';\n\ninterface AdContainerProps {\n type?: 'header' | 'inline';\n slotID?: string;\n}\n\n/** Primary AdContainer UI component for user interaction */\n\nexport const AdContainer: React.FC<AdContainerProps> = ({\n type = 'inline',\n slotID\n}) => {\n return (\n <div\n className={`ad-${type}-container`}\n data-testid={`ad-${type}-container`}\n >\n {type === 'inline' && (\n <Text as=\"span\" classes=\"ad-label\">\n Advertisement\n </Text>\n )}\n <div className={`ad-${type}-wrapper`}>\n <div id={type === 'header' ? 'ad-header' : slotID}></div>\n </div>\n </div>\n );\n};\n","import React, { HTMLAttributes } from 'react';\nimport './styles.css';\nimport { Text } from '../Text/Text';\n\nexport interface CommentsDisabledProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'content'> {\n heading?: string;\n contentText?: React.ReactNode;\n guidelinesUrl?: string;\n guidelinesLinkText?: string;\n className?: string;\n}\n\nexport const CommentsDisabled = React.forwardRef<\n HTMLDivElement,\n CommentsDisabledProps\n>(\n (\n {\n heading = 'Comments are not enabled for this article',\n contentText = 'Comments are subject to our community guidelines, which can be viewed',\n guidelinesUrl = '#',\n guidelinesLinkText = 'here',\n className = '',\n ...props\n },\n ref\n ) => {\n return (\n <div\n ref={ref}\n className={`tds-comments-disabled ${className}`.trim()}\n {...props}\n >\n <Text\n as=\"h3\"\n typographyStyle=\"brand-heading-fluid-light-xsmall\"\n classes=\"tds-comments-disabled__heading\"\n >\n {heading}\n </Text>\n <hr className=\"tds-comments-disabled__divider\" />\n <Text\n typographyStyle=\"utility-body-regular-medium\"\n classes=\"tds-comments-disabled__content\"\n >\n {contentText}{' '}\n <a\n href={guidelinesUrl}\n className=\"tds-comments-disabled__link\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {guidelinesLinkText}\n </a>\n .\n </Text>\n </div>\n );\n }\n);\n\nCommentsDisabled.displayName = 'CommentsDisabled';\n","import React from 'react';\nimport './styles.css';\n\ninterface InputProps {\n /** Label text for the input */\n label?: string;\n /** Input placeholder text */\n placeholder?: string;\n /** Input type */\n type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';\n /** Input value */\n value?: string;\n /** Change handler */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Disabled state */\n disabled?: boolean;\n /** Required state */\n required?: boolean;\n /** Input name attribute */\n name?: string;\n /** Input id attribute */\n id?: string;\n}\n\n/** Input component with label using design tokens */\nexport const Input: React.FC<InputProps> = ({\n label,\n placeholder,\n type = 'text',\n value,\n onChange,\n disabled = false,\n required = false,\n name,\n id,\n ...props\n}) => {\n const inputId = id || name;\n\n return (\n <div className=\"tds-input-wrapper\">\n {label && (\n <label htmlFor={inputId} className=\"tds-input-label\">\n {label}\n {required && <span className=\"tds-input-required\">*</span>}\n </label>\n )}\n <input\n id={inputId}\n type={type}\n name={name}\n className=\"tds-input\"\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n disabled={disabled}\n required={required}\n {...props}\n />\n </div>\n );\n};\n","import React from 'react';\nimport './styles.css';\n\ninterface DividerProps {\n /** Whether the divider should span full width of its container */\n fullWidth?: boolean;\n /** Orientation of the divider */\n orientation?: 'horizontal' | 'vertical';\n /** Custom spacing/margin */\n spacing?: 'small' | 'medium' | 'large';\n /** CSS class for additional styling */\n className?: string;\n}\n\n/** Divider component that uses design tokens for styling */\nexport const Divider: React.FC<DividerProps> = ({\n fullWidth = true,\n orientation = 'horizontal',\n spacing = 'medium',\n className = '',\n ...props\n}) => {\n const baseClass = 'tds-divider';\n const orientationClass = `tds-divider--${orientation}`;\n const spacingClass = `tds-divider--spacing-${spacing}`;\n const widthClass = fullWidth\n ? 'tds-divider--full-width'\n : 'tds-divider--constrained';\n\n const classes = [\n baseClass,\n orientationClass,\n spacingClass,\n widthClass,\n className\n ]\n .filter(Boolean)\n .join(' ');\n\n return <div className={classes} data-node-id=\"4042:14179\" {...props} />;\n};\n","import React from 'react';\nimport './styles.css';\nimport { cn } from '../utils/cn';\n\ninterface LinkProps {\n href: string;\n variant?: 'primary' | 'secondary' | 'danger';\n onClick?: (e: React.MouseEvent<HTMLAnchorElement>) => void;\n target?: '_self' | '_blank' | '_parent' | '_top';\n rel?: string;\n className?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\n/** Link UI component for navigation and interactive linking */\nexport const Link: React.FC<LinkProps> = ({\n href,\n variant = 'primary',\n onClick,\n target,\n rel,\n className,\n classes,\n styles,\n children\n}) => {\n // If target is _blank, set rel to noopener noreferrer for security\n const linkRel =\n target === '_blank'\n ? rel\n ? `${rel} noopener noreferrer`\n : 'noopener noreferrer'\n : rel;\n\n return (\n <a\n href={href}\n onClick={onClick}\n target={target}\n rel={linkRel}\n className={cn('tds-link', `tds-link--${variant}`, className || classes)}\n style={styles ? styles : undefined}\n >\n {children}\n </a>\n );\n};\n","import React from 'react';\nimport { Text } from '../../Text/Text';\nimport './styles.css';\n\ninterface UpNextArticlesProps {\n upNextArticles: {\n url: string;\n headline: string;\n duration?: string;\n thumbnail: string;\n }[];\n}\n\n/** Primary UpNextArticles UI component for user interaction */\n\nexport const UpNextArticles: React.FC<UpNextArticlesProps> = ({\n upNextArticles\n}) => {\n if (!upNextArticles || upNextArticles.length === 0) {\n return;\n }\n\n return (\n <div className=\"video-article-up-next\">\n <div className=\"vertical-divider\"></div>\n <div className=\"up-next-articles-container show-right-overlay\">\n <Text as=\"h4\" classes=\"video-heading video-category\">\n Up Next\n </Text>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-left\"></div>\n <div className=\"up-next-articles-scroll\">\n <div className=\"up-next-articles\">\n {upNextArticles.map((up_next_article, index) => (\n <div className=\"up-next-article\" key={index}>\n <a href={up_next_article.url}>\n <div className=\"up-next-article-image-container\">\n <Text classes=\"up-next-article-duration video-heading\">\n {up_next_article.duration}\n </Text>\n <div className=\"up-next-article-image-overlay\"></div>\n <div className=\"up-next-article-image\">\n {up_next_article.thumbnail !== '' && (\n <picture>\n <source\n srcSet={up_next_article.thumbnail}\n type=\"image/webp\"\n />\n <img\n loading=\"lazy\"\n src={up_next_article.thumbnail}\n alt={up_next_article.headline}\n />\n </picture>\n )}\n </div>\n </div>\n <Text as=\"span\" classes=\"article-heading\">\n {up_next_article.headline}\n </Text>\n </a>\n </div>\n ))}\n </div>\n </div>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-right\"></div>\n </div>\n </div>\n );\n};\n","// function possibly for future use with typography tokens.\n// takes a token and tokens object, returns media query string referencing typography token values.\ntype UseTypographyToken = (\n typographyToken: string,\n tokens: {\n breakpoints: { [key: string]: number };\n [key: string]: any; // eslint-disable-line @typescript-eslint/no-explicit-any\n }\n) => string;\n\nexport const useTypographyToken: UseTypographyToken = (\n typographyToken,\n tokens\n) => `\n .${typographyToken} {\n font: ${typographyToken}\n\n @media (min-width: ${tokens.breakpoints.sm}px) {\n fontSize: ${tokens['Viewport/ Small'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.md}px) {\n fontSize: ${tokens['Viewport/ Medium'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.lg}px) {\n fontSize: ${tokens['Viewport/ Large'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.xl}px) {\n fontSize: ${tokens['Viewport/ XLarge'].typography[typographyToken].fontSize};\n }\n }\n`;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","Button","primary","size","label","props","mode","React","className","join","cn","classNames","filter","Boolean","Text","as","typographyStyle","styles","classes","children","TextComponent","transformedTypographyStyle","replaceAll","toLowerCase","undefined","AdContainer","slotID","id","CommentsDisabled","forwardRef","heading","contentText","guidelinesUrl","guidelinesLinkText","trim","href","target","rel","displayName","Input","placeholder","value","onChange","disabled","required","name","inputId","htmlFor","Divider","fullWidth","orientation","spacing","baseClass","orientationClass","spacingClass","widthClass","Link","variant","onClick","linkRel","UpNextArticles","upNextArticles","length","map","up_next_article","index","key","url","duration","thumbnail","srcSet","loading","src","alt","headline","useTypographyToken","typographyToken","tokens","breakpoints","sm","typography","fontSize","md","lg","xl"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/index.js
CHANGED
|
@@ -63,7 +63,7 @@ const Text = ({
|
|
|
63
63
|
const TextComponent = as || 'p';
|
|
64
64
|
const transformedTypographyStyle = typographyStyle?.replaceAll('.', '-').toLowerCase() ?? '';
|
|
65
65
|
return React.createElement(TextComponent, {
|
|
66
|
-
className: cn(classes, typographyStyle ? `--tds
|
|
66
|
+
className: cn(classes, typographyStyle ? `--tds-${transformedTypographyStyle}` : undefined),
|
|
67
67
|
style: styles ? styles : undefined
|
|
68
68
|
}, children);
|
|
69
69
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../src/Button/Button.tsx","../src/utils/cn.tsx","../src/Text/Text.tsx","../src/AdContainer/AdContainer.tsx","../src/CommentsDisabled/CommentsDisabled.tsx","../src/Input/Input.tsx","../src/Divider/Divider.tsx","../src/Link/Link.tsx","../src/Article/UpNextArticles/UpNextArticles.tsx","../src/utils/hooks.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport './styles.css';\n\ninterface ButtonProps {\n /** Is this the principal call to action on the page? */\n primary?: boolean;\n /** How large should the button be? */\n size?: 'small' | 'medium' | 'large';\n /** Button contents */\n label: string;\n /** Optional click handler */\n onClick?: () => void;\n}\n\n/** Primary UI component for user interaction */\nexport const Button: React.FC<ButtonProps> = ({\n primary,\n size,\n label,\n ...props\n}) => {\n const mode = primary\n ? 'storybook-button--primary'\n : 'storybook-button--secondary';\n return (\n <button\n type=\"button\"\n className={['storybook-button', `storybook-button--${size}`, mode].join(\n ' '\n )}\n {...props}\n >\n {label}\n </button>\n );\n};\n","export const cn = (...classNames: (string | undefined)[]) => {\n return classNames.filter(Boolean).join(' ');\n};\n","import React from 'react';\nimport './styles.css';\nimport './typographyStyles.css';\nimport { cn } from '../utils/cn';\n\ninterface TextProps {\n as?: 'p' | 'span' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5';\n typographyStyle?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\nexport const Text: React.FC<TextProps> = ({\n as,\n typographyStyle,\n styles,\n classes,\n children\n}) => {\n const TextComponent = as || 'p';\n const transformedTypographyStyle =\n typographyStyle?.replaceAll('.', '-').toLowerCase() ?? '';\n\n return (\n <TextComponent\n className={cn(\n classes,\n typographyStyle\n ? `--tds-typography-tokens-${transformedTypographyStyle}`\n : undefined\n )}\n style={styles ? styles : undefined}\n >\n {children}\n </TextComponent>\n );\n};\n","import React from 'react';\nimport { Text } from '../Text/Text';\nimport './styles.css';\n\ninterface AdContainerProps {\n type?: 'header' | 'inline';\n slotID?: string;\n}\n\n/** Primary AdContainer UI component for user interaction */\n\nexport const AdContainer: React.FC<AdContainerProps> = ({\n type = 'inline',\n slotID\n}) => {\n return (\n <div\n className={`ad-${type}-container`}\n data-testid={`ad-${type}-container`}\n >\n {type === 'inline' && (\n <Text as=\"span\" classes=\"ad-label\">\n Advertisement\n </Text>\n )}\n <div className={`ad-${type}-wrapper`}>\n <div id={type === 'header' ? 'ad-header' : slotID}></div>\n </div>\n </div>\n );\n};\n","import React, { HTMLAttributes } from 'react';\nimport './styles.css';\nimport { Text } from '../Text/Text';\n\nexport interface CommentsDisabledProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'content'> {\n heading?: string;\n contentText?: React.ReactNode;\n guidelinesUrl?: string;\n guidelinesLinkText?: string;\n className?: string;\n}\n\nexport const CommentsDisabled = React.forwardRef<\n HTMLDivElement,\n CommentsDisabledProps\n>(\n (\n {\n heading = 'Comments are not enabled for this article',\n contentText = 'Comments are subject to our community guidelines, which can be viewed',\n guidelinesUrl = '#',\n guidelinesLinkText = 'here',\n className = '',\n ...props\n },\n ref\n ) => {\n return (\n <div\n ref={ref}\n className={`tds-comments-disabled ${className}`.trim()}\n {...props}\n >\n <Text\n as=\"h3\"\n typographyStyle=\"brand-heading-fluid-light-xsmall\"\n classes=\"tds-comments-disabled__heading\"\n >\n {heading}\n </Text>\n <hr className=\"tds-comments-disabled__divider\" />\n <Text\n typographyStyle=\"utility-body-regular-medium\"\n classes=\"tds-comments-disabled__content\"\n >\n {contentText}{' '}\n <a\n href={guidelinesUrl}\n className=\"tds-comments-disabled__link\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {guidelinesLinkText}\n </a>\n .\n </Text>\n </div>\n );\n }\n);\n\nCommentsDisabled.displayName = 'CommentsDisabled';\n","import React from 'react';\nimport './styles.css';\n\ninterface InputProps {\n /** Label text for the input */\n label?: string;\n /** Input placeholder text */\n placeholder?: string;\n /** Input type */\n type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';\n /** Input value */\n value?: string;\n /** Change handler */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Disabled state */\n disabled?: boolean;\n /** Required state */\n required?: boolean;\n /** Input name attribute */\n name?: string;\n /** Input id attribute */\n id?: string;\n}\n\n/** Input component with label using design tokens */\nexport const Input: React.FC<InputProps> = ({\n label,\n placeholder,\n type = 'text',\n value,\n onChange,\n disabled = false,\n required = false,\n name,\n id,\n ...props\n}) => {\n const inputId = id || name;\n\n return (\n <div className=\"tds-input-wrapper\">\n {label && (\n <label htmlFor={inputId} className=\"tds-input-label\">\n {label}\n {required && <span className=\"tds-input-required\">*</span>}\n </label>\n )}\n <input\n id={inputId}\n type={type}\n name={name}\n className=\"tds-input\"\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n disabled={disabled}\n required={required}\n {...props}\n />\n </div>\n );\n};\n","import React from 'react';\nimport './styles.css';\n\ninterface DividerProps {\n /** Whether the divider should span full width of its container */\n fullWidth?: boolean;\n /** Orientation of the divider */\n orientation?: 'horizontal' | 'vertical';\n /** Custom spacing/margin */\n spacing?: 'small' | 'medium' | 'large';\n /** CSS class for additional styling */\n className?: string;\n}\n\n/** Divider component that uses design tokens for styling */\nexport const Divider: React.FC<DividerProps> = ({\n fullWidth = true,\n orientation = 'horizontal',\n spacing = 'medium',\n className = '',\n ...props\n}) => {\n const baseClass = 'tds-divider';\n const orientationClass = `tds-divider--${orientation}`;\n const spacingClass = `tds-divider--spacing-${spacing}`;\n const widthClass = fullWidth\n ? 'tds-divider--full-width'\n : 'tds-divider--constrained';\n\n const classes = [\n baseClass,\n orientationClass,\n spacingClass,\n widthClass,\n className\n ]\n .filter(Boolean)\n .join(' ');\n\n return <div className={classes} data-node-id=\"4042:14179\" {...props} />;\n};\n","import React from 'react';\nimport './styles.css';\nimport { cn } from '../utils/cn';\n\ninterface LinkProps {\n href: string;\n variant?: 'primary' | 'secondary' | 'danger';\n onClick?: (e: React.MouseEvent<HTMLAnchorElement>) => void;\n target?: '_self' | '_blank' | '_parent' | '_top';\n rel?: string;\n className?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\n/** Link UI component for navigation and interactive linking */\nexport const Link: React.FC<LinkProps> = ({\n href,\n variant = 'primary',\n onClick,\n target,\n rel,\n className,\n classes,\n styles,\n children\n}) => {\n // If target is _blank, set rel to noopener noreferrer for security\n const linkRel =\n target === '_blank'\n ? rel\n ? `${rel} noopener noreferrer`\n : 'noopener noreferrer'\n : rel;\n\n return (\n <a\n href={href}\n onClick={onClick}\n target={target}\n rel={linkRel}\n className={cn('tds-link', `tds-link--${variant}`, className || classes)}\n style={styles ? styles : undefined}\n >\n {children}\n </a>\n );\n};\n","import React from 'react';\nimport { Text } from '../../Text/Text';\nimport './styles.css';\n\ninterface UpNextArticlesProps {\n upNextArticles: {\n url: string;\n headline: string;\n duration?: string;\n thumbnail: string;\n }[];\n}\n\n/** Primary UpNextArticles UI component for user interaction */\n\nexport const UpNextArticles: React.FC<UpNextArticlesProps> = ({\n upNextArticles\n}) => {\n if (!upNextArticles || upNextArticles.length === 0) {\n return;\n }\n\n return (\n <div className=\"video-article-up-next\">\n <div className=\"vertical-divider\"></div>\n <div className=\"up-next-articles-container show-right-overlay\">\n <Text as=\"h4\" classes=\"video-heading video-category\">\n Up Next\n </Text>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-left\"></div>\n <div className=\"up-next-articles-scroll\">\n <div className=\"up-next-articles\">\n {upNextArticles.map((up_next_article, index) => (\n <div className=\"up-next-article\" key={index}>\n <a href={up_next_article.url}>\n <div className=\"up-next-article-image-container\">\n <Text classes=\"up-next-article-duration video-heading\">\n {up_next_article.duration}\n </Text>\n <div className=\"up-next-article-image-overlay\"></div>\n <div className=\"up-next-article-image\">\n {up_next_article.thumbnail !== '' && (\n <picture>\n <source\n srcSet={up_next_article.thumbnail}\n type=\"image/webp\"\n />\n <img\n loading=\"lazy\"\n src={up_next_article.thumbnail}\n alt={up_next_article.headline}\n />\n </picture>\n )}\n </div>\n </div>\n <Text as=\"span\" classes=\"article-heading\">\n {up_next_article.headline}\n </Text>\n </a>\n </div>\n ))}\n </div>\n </div>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-right\"></div>\n </div>\n </div>\n );\n};\n","// function possibly for future use with typography tokens.\n// takes a token and tokens object, returns media query string referencing typography token values.\ntype UseTypographyToken = (\n typographyToken: string,\n tokens: {\n breakpoints: { [key: string]: number };\n [key: string]: any; // eslint-disable-line @typescript-eslint/no-explicit-any\n }\n) => string;\n\nexport const useTypographyToken: UseTypographyToken = (\n typographyToken,\n tokens\n) => `\n .${typographyToken} {\n font: ${typographyToken}\n\n @media (min-width: ${tokens.breakpoints.sm}px) {\n fontSize: ${tokens['Viewport/ Small'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.md}px) {\n fontSize: ${tokens['Viewport/ Medium'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.lg}px) {\n fontSize: ${tokens['Viewport/ Large'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.xl}px) {\n fontSize: ${tokens['Viewport/ XLarge'].typography[typographyToken].fontSize};\n }\n }\n`;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","Button","primary","size","label","props","mode","React","className","join","cn","classNames","filter","Boolean","Text","as","typographyStyle","styles","classes","children","TextComponent","transformedTypographyStyle","replaceAll","toLowerCase","undefined","AdContainer","slotID","id","CommentsDisabled","forwardRef","heading","contentText","guidelinesUrl","guidelinesLinkText","trim","href","target","rel","displayName","Input","placeholder","value","onChange","disabled","required","name","inputId","htmlFor","Divider","fullWidth","orientation","spacing","baseClass","orientationClass","spacingClass","widthClass","Link","variant","onClick","linkRel","UpNextArticles","upNextArticles","length","map","up_next_article","index","key","url","duration","thumbnail","srcSet","loading","src","alt","headline","useTypographyToken","typographyToken","tokens","breakpoints","sm","typography","fontSize","md","lg","xl"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../src/Button/Button.tsx","../src/utils/cn.tsx","../src/Text/Text.tsx","../src/AdContainer/AdContainer.tsx","../src/CommentsDisabled/CommentsDisabled.tsx","../src/Input/Input.tsx","../src/Divider/Divider.tsx","../src/Link/Link.tsx","../src/Article/UpNextArticles/UpNextArticles.tsx","../src/utils/hooks.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport './styles.css';\n\ninterface ButtonProps {\n /** Is this the principal call to action on the page? */\n primary?: boolean;\n /** How large should the button be? */\n size?: 'small' | 'medium' | 'large';\n /** Button contents */\n label: string;\n /** Optional click handler */\n onClick?: () => void;\n}\n\n/** Primary UI component for user interaction */\nexport const Button: React.FC<ButtonProps> = ({\n primary,\n size,\n label,\n ...props\n}) => {\n const mode = primary\n ? 'storybook-button--primary'\n : 'storybook-button--secondary';\n return (\n <button\n type=\"button\"\n className={['storybook-button', `storybook-button--${size}`, mode].join(\n ' '\n )}\n {...props}\n >\n {label}\n </button>\n );\n};\n","export const cn = (...classNames: (string | undefined)[]) => {\n return classNames.filter(Boolean).join(' ');\n};\n","import React from 'react';\nimport './styles.css';\nimport './typographyStyles.css';\nimport { cn } from '../utils/cn';\n\ninterface TextProps {\n as?: 'p' | 'span' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5';\n typographyStyle?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\nexport const Text: React.FC<TextProps> = ({\n as,\n typographyStyle,\n styles,\n classes,\n children\n}) => {\n const TextComponent = as || 'p';\n const transformedTypographyStyle =\n typographyStyle?.replaceAll('.', '-').toLowerCase() ?? '';\n\n return (\n <TextComponent\n className={cn(\n classes,\n typographyStyle ? `--tds-${transformedTypographyStyle}` : undefined\n )}\n style={styles ? styles : undefined}\n >\n {children}\n </TextComponent>\n );\n};\n","import React from 'react';\nimport { Text } from '../Text/Text';\nimport './styles.css';\n\ninterface AdContainerProps {\n type?: 'header' | 'inline';\n slotID?: string;\n}\n\n/** Primary AdContainer UI component for user interaction */\n\nexport const AdContainer: React.FC<AdContainerProps> = ({\n type = 'inline',\n slotID\n}) => {\n return (\n <div\n className={`ad-${type}-container`}\n data-testid={`ad-${type}-container`}\n >\n {type === 'inline' && (\n <Text as=\"span\" classes=\"ad-label\">\n Advertisement\n </Text>\n )}\n <div className={`ad-${type}-wrapper`}>\n <div id={type === 'header' ? 'ad-header' : slotID}></div>\n </div>\n </div>\n );\n};\n","import React, { HTMLAttributes } from 'react';\nimport './styles.css';\nimport { Text } from '../Text/Text';\n\nexport interface CommentsDisabledProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'content'> {\n heading?: string;\n contentText?: React.ReactNode;\n guidelinesUrl?: string;\n guidelinesLinkText?: string;\n className?: string;\n}\n\nexport const CommentsDisabled = React.forwardRef<\n HTMLDivElement,\n CommentsDisabledProps\n>(\n (\n {\n heading = 'Comments are not enabled for this article',\n contentText = 'Comments are subject to our community guidelines, which can be viewed',\n guidelinesUrl = '#',\n guidelinesLinkText = 'here',\n className = '',\n ...props\n },\n ref\n ) => {\n return (\n <div\n ref={ref}\n className={`tds-comments-disabled ${className}`.trim()}\n {...props}\n >\n <Text\n as=\"h3\"\n typographyStyle=\"brand-heading-fluid-light-xsmall\"\n classes=\"tds-comments-disabled__heading\"\n >\n {heading}\n </Text>\n <hr className=\"tds-comments-disabled__divider\" />\n <Text\n typographyStyle=\"utility-body-regular-medium\"\n classes=\"tds-comments-disabled__content\"\n >\n {contentText}{' '}\n <a\n href={guidelinesUrl}\n className=\"tds-comments-disabled__link\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {guidelinesLinkText}\n </a>\n .\n </Text>\n </div>\n );\n }\n);\n\nCommentsDisabled.displayName = 'CommentsDisabled';\n","import React from 'react';\nimport './styles.css';\n\ninterface InputProps {\n /** Label text for the input */\n label?: string;\n /** Input placeholder text */\n placeholder?: string;\n /** Input type */\n type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';\n /** Input value */\n value?: string;\n /** Change handler */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Disabled state */\n disabled?: boolean;\n /** Required state */\n required?: boolean;\n /** Input name attribute */\n name?: string;\n /** Input id attribute */\n id?: string;\n}\n\n/** Input component with label using design tokens */\nexport const Input: React.FC<InputProps> = ({\n label,\n placeholder,\n type = 'text',\n value,\n onChange,\n disabled = false,\n required = false,\n name,\n id,\n ...props\n}) => {\n const inputId = id || name;\n\n return (\n <div className=\"tds-input-wrapper\">\n {label && (\n <label htmlFor={inputId} className=\"tds-input-label\">\n {label}\n {required && <span className=\"tds-input-required\">*</span>}\n </label>\n )}\n <input\n id={inputId}\n type={type}\n name={name}\n className=\"tds-input\"\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n disabled={disabled}\n required={required}\n {...props}\n />\n </div>\n );\n};\n","import React from 'react';\nimport './styles.css';\n\ninterface DividerProps {\n /** Whether the divider should span full width of its container */\n fullWidth?: boolean;\n /** Orientation of the divider */\n orientation?: 'horizontal' | 'vertical';\n /** Custom spacing/margin */\n spacing?: 'small' | 'medium' | 'large';\n /** CSS class for additional styling */\n className?: string;\n}\n\n/** Divider component that uses design tokens for styling */\nexport const Divider: React.FC<DividerProps> = ({\n fullWidth = true,\n orientation = 'horizontal',\n spacing = 'medium',\n className = '',\n ...props\n}) => {\n const baseClass = 'tds-divider';\n const orientationClass = `tds-divider--${orientation}`;\n const spacingClass = `tds-divider--spacing-${spacing}`;\n const widthClass = fullWidth\n ? 'tds-divider--full-width'\n : 'tds-divider--constrained';\n\n const classes = [\n baseClass,\n orientationClass,\n spacingClass,\n widthClass,\n className\n ]\n .filter(Boolean)\n .join(' ');\n\n return <div className={classes} data-node-id=\"4042:14179\" {...props} />;\n};\n","import React from 'react';\nimport './styles.css';\nimport { cn } from '../utils/cn';\n\ninterface LinkProps {\n href: string;\n variant?: 'primary' | 'secondary' | 'danger';\n onClick?: (e: React.MouseEvent<HTMLAnchorElement>) => void;\n target?: '_self' | '_blank' | '_parent' | '_top';\n rel?: string;\n className?: string;\n classes?: string;\n styles?: { [key: string]: string };\n children?: React.ReactNode;\n}\n\n/** Link UI component for navigation and interactive linking */\nexport const Link: React.FC<LinkProps> = ({\n href,\n variant = 'primary',\n onClick,\n target,\n rel,\n className,\n classes,\n styles,\n children\n}) => {\n // If target is _blank, set rel to noopener noreferrer for security\n const linkRel =\n target === '_blank'\n ? rel\n ? `${rel} noopener noreferrer`\n : 'noopener noreferrer'\n : rel;\n\n return (\n <a\n href={href}\n onClick={onClick}\n target={target}\n rel={linkRel}\n className={cn('tds-link', `tds-link--${variant}`, className || classes)}\n style={styles ? styles : undefined}\n >\n {children}\n </a>\n );\n};\n","import React from 'react';\nimport { Text } from '../../Text/Text';\nimport './styles.css';\n\ninterface UpNextArticlesProps {\n upNextArticles: {\n url: string;\n headline: string;\n duration?: string;\n thumbnail: string;\n }[];\n}\n\n/** Primary UpNextArticles UI component for user interaction */\n\nexport const UpNextArticles: React.FC<UpNextArticlesProps> = ({\n upNextArticles\n}) => {\n if (!upNextArticles || upNextArticles.length === 0) {\n return;\n }\n\n return (\n <div className=\"video-article-up-next\">\n <div className=\"vertical-divider\"></div>\n <div className=\"up-next-articles-container show-right-overlay\">\n <Text as=\"h4\" classes=\"video-heading video-category\">\n Up Next\n </Text>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-left\"></div>\n <div className=\"up-next-articles-scroll\">\n <div className=\"up-next-articles\">\n {upNextArticles.map((up_next_article, index) => (\n <div className=\"up-next-article\" key={index}>\n <a href={up_next_article.url}>\n <div className=\"up-next-article-image-container\">\n <Text classes=\"up-next-article-duration video-heading\">\n {up_next_article.duration}\n </Text>\n <div className=\"up-next-article-image-overlay\"></div>\n <div className=\"up-next-article-image\">\n {up_next_article.thumbnail !== '' && (\n <picture>\n <source\n srcSet={up_next_article.thumbnail}\n type=\"image/webp\"\n />\n <img\n loading=\"lazy\"\n src={up_next_article.thumbnail}\n alt={up_next_article.headline}\n />\n </picture>\n )}\n </div>\n </div>\n <Text as=\"span\" classes=\"article-heading\">\n {up_next_article.headline}\n </Text>\n </a>\n </div>\n ))}\n </div>\n </div>\n <div className=\"up-next-articles-overlay up-next-articles-overlay-right\"></div>\n </div>\n </div>\n );\n};\n","// function possibly for future use with typography tokens.\n// takes a token and tokens object, returns media query string referencing typography token values.\ntype UseTypographyToken = (\n typographyToken: string,\n tokens: {\n breakpoints: { [key: string]: number };\n [key: string]: any; // eslint-disable-line @typescript-eslint/no-explicit-any\n }\n) => string;\n\nexport const useTypographyToken: UseTypographyToken = (\n typographyToken,\n tokens\n) => `\n .${typographyToken} {\n font: ${typographyToken}\n\n @media (min-width: ${tokens.breakpoints.sm}px) {\n fontSize: ${tokens['Viewport/ Small'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.md}px) {\n fontSize: ${tokens['Viewport/ Medium'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.lg}px) {\n fontSize: ${tokens['Viewport/ Large'].typography[typographyToken].fontSize};\n }\n\n @media (min-width: ${tokens.breakpoints.xl}px) {\n fontSize: ${tokens['Viewport/ XLarge'].typography[typographyToken].fontSize};\n }\n }\n`;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","Button","primary","size","label","props","mode","React","className","join","cn","classNames","filter","Boolean","Text","as","typographyStyle","styles","classes","children","TextComponent","transformedTypographyStyle","replaceAll","toLowerCase","undefined","AdContainer","slotID","id","CommentsDisabled","forwardRef","heading","contentText","guidelinesUrl","guidelinesLinkText","trim","href","target","rel","displayName","Input","placeholder","value","onChange","disabled","required","name","inputId","htmlFor","Divider","fullWidth","orientation","spacing","baseClass","orientationClass","spacingClass","widthClass","Link","variant","onClick","linkRel","UpNextArticles","upNextArticles","length","map","up_next_article","index","key","url","duration","thumbnail","srcSet","loading","src","alt","headline","useTypographyToken","typographyToken","tokens","breakpoints","sm","typography","fontSize","md","lg","xl"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@times-design-system/components-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Times Design System components",
|
|
6
6
|
"keywords": [],
|
|
7
7
|
"author": "douglasmik <michael@viaverso.co.uk>",
|
|
8
8
|
"license": "ISC",
|
|
9
9
|
"main": "dist/index",
|
|
10
|
+
"module": "src/index.js",
|
|
11
|
+
"source": "src/index.js",
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"development": "./src/index.js",
|
|
15
|
+
"default": "./dist/index.js"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
10
18
|
"dev": "src/index",
|
|
11
19
|
"directories": {
|
|
12
20
|
"test": "__tests__"
|
|
@@ -19,6 +27,7 @@
|
|
|
19
27
|
"build": "npm run clean && npm run build:rollup",
|
|
20
28
|
"build:rollup": "rollup -c",
|
|
21
29
|
"clean": "rimraf dist",
|
|
30
|
+
"clean:figma": "rimraf dist-figma",
|
|
22
31
|
"dev": "rollup -c --watch",
|
|
23
32
|
"prepublishOnly": "npm run build",
|
|
24
33
|
"test": "node ./__tests__/*.test.js"
|
|
@@ -38,5 +47,5 @@
|
|
|
38
47
|
"postcss": "^8.4.31",
|
|
39
48
|
"typescript": "^5.0.0"
|
|
40
49
|
},
|
|
41
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "f25409fd6e3ff150717c1e631b9c20d102c0fbef"
|
|
42
51
|
}
|
package/src/Text/Text.tsx
CHANGED
|
@@ -26,9 +26,7 @@ export const Text: React.FC<TextProps> = ({
|
|
|
26
26
|
<TextComponent
|
|
27
27
|
className={cn(
|
|
28
28
|
classes,
|
|
29
|
-
typographyStyle
|
|
30
|
-
? `--tds-typography-tokens-${transformedTypographyStyle}`
|
|
31
|
-
: undefined
|
|
29
|
+
typographyStyle ? `--tds-${transformedTypographyStyle}` : undefined
|
|
32
30
|
)}
|
|
33
31
|
style={styles ? styles : undefined}
|
|
34
32
|
>
|