@sats-group/ui-lib 81.2.0 → 81.4.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/package.json +1 -1
- package/react/expander/expander.js +1 -1
- package/react/expander/expander.js.map +3 -3
- package/react/expander/expander.scss +3 -0
- package/react/expander/expander.types.d.ts +2 -0
- package/react/expander/expander.types.js +1 -1
- package/react/expander/expander.types.js.map +2 -2
- package/react/icons/24/download.d.ts +3 -0
- package/react/icons/24/download.js +2 -0
- package/react/icons/24/download.js.map +7 -0
- package/react/link-card/link-card.js +1 -1
- package/react/link-card/link-card.js.map +3 -3
- package/react/link-card/link-card.scss +8 -9
- package/react/link-card/link-card.types.d.ts +6 -0
- package/react/link-card/link-card.types.js +1 -0
- package/react/link-card/link-card.types.js.map +4 -4
package/package.json
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";var
|
|
1
|
+
"use client";var C=Object.defineProperty,E=Object.defineProperties;var I=Object.getOwnPropertyDescriptors;var g=Object.getOwnPropertySymbols;var k=Object.prototype.hasOwnProperty,b=Object.prototype.propertyIsEnumerable;var c=(n,i,r)=>i in n?C(n,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):n[i]=r,o=(n,i)=>{for(var r in i||(i={}))k.call(i,r)&&c(n,r,i[r]);if(g)for(var r of g(i))b.call(i,r)&&c(n,r,i[r]);return n},u=(n,i)=>E(n,I(i));import _ from"classnames";import e,{useState as L}from"react";import A from"../icons/24/arrow-down";import O from"../link-button";import d from"../text";import f from"../badge";import{Types as S}from"../badge/badge.types";import P from"../link";import B from"../collapse";import h from"../tag";const F=({actions:n,contentType:i="article",defaultOpen:r=!1,faq:s,icon:p,id:m,links:a,children:T,metadata:v,tag:N,title:y,value:x})=>{const[t,z]=L(r),w=()=>z(!t);return e.createElement("div",{className:"expander__list-item",key:m,itemScope:s||void 0,itemProp:s?"mainEntity":void 0,itemType:s?"https://schema.org/Question":void 0},e.createElement("button",{"aria-controls":m,"aria-expanded":t,className:_("expander__trigger",{"expander__trigger--triggered":t,"expander__trigger--w-value":x}),onClick:w},p?e.createElement("div",{className:"expander__icon"},p):null,e.createElement("div",{className:"expander__trigger-title"},e.createElement(d,{elementName:"h3",itemProp:s?"name":void 0,tight:!0},y),N?e.createElement(h,o({size:h.sizes.s,variant:h.variants.positive},N)):null),x?e.createElement(f,{content:{content:x,type:S.Numerical},variant:f.variants.secondary}):null,e.createElement("div",{className:_("expander__icon",{"expander__icon--flipped":t})},e.createElement(A,null))),e.createElement("div",{className:_("expander__drawer",{"expander__drawer--open":t}),id:m},e.createElement(B,{isOpen:t},e.createElement("div",{className:_("expander__content",{[`expander__content--${i}`]:i}),itemScope:s||void 0,itemProp:s?"acceptedAnswer":void 0,itemType:s?"https://schema.org/Answer":void 0},e.createElement("div",{className:"expander__children",itemProp:s?"text":void 0},T),n.length?e.createElement("div",{className:"expander__actions"},n.map(l=>e.createElement("div",{className:"expander__action",key:l.href},e.createElement(O,o({},l))))):null,v||a&&a.length?e.createElement("div",{className:"expander__metadata"},e.createElement("hr",{className:"expander__divider"}),e.createElement("div",{className:"expander__meta-content"},v?e.createElement("div",{className:"expander__meta-text"},e.createElement(d,{elementName:"span",size:d.sizes.small},v)):null,a&&a.length?e.createElement("div",{className:"expander__links"},a.map(l=>e.createElement("div",{className:"expander__link",key:l.href},e.createElement(P,u(o({},l),{size:P.sizes.small}))))):null)):null))))},D=({description:n,faq:i,itemRenderer:r,items:s,title:p})=>e.createElement("div",{className:"expander"},p||n?e.createElement("div",{className:"expander__header"},p?e.createElement(d,{elementName:"h2",size:d.sizes.headline2,theme:d.themes.emphasis,tight:!0},p):null,n?e.createElement(d,{size:d.sizes.basic},n):null):null,e.createElement("div",null,s.map(m=>e.createElement(F,u(o({key:m.listItemProps.id},m.listItemProps),{faq:i}),e.createElement(r,m.props)))));var Y=D;export{Y as default};
|
|
2
2
|
//# sourceMappingURL=expander.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../react/expander/expander.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport cn from 'classnames';\nimport React, { useState } from 'react';\n\nimport ArrowDown from '../icons/24/arrow-down';\nimport LinkButton from '../link-button';\nimport Text from '../text';\n\nimport { type Expander as Props } from './expander.types';\nimport Badge from '../badge';\nimport { Types } from '../badge/badge.types';\nimport Link from '../link';\nimport Collapse from '../collapse';\n\nconst ExpanderListItem: React.FC<\n React.PropsWithChildren<Props<unknown>['items'][number]['listItemProps']>\n> = ({\n actions,\n contentType = 'article',\n defaultOpen = false,\n faq,\n icon,\n id,\n links,\n children,\n metadata,\n title,\n value,\n}) => {\n const [isOpen, setIsOpen] = useState(defaultOpen);\n\n const toggle = () => setIsOpen(!isOpen);\n\n return (\n <div\n className=\"expander__list-item\"\n key={id}\n itemScope={faq ? faq : undefined}\n itemProp={faq ? 'mainEntity' : undefined}\n itemType={faq ? 'https://schema.org/Question' : undefined}\n >\n <button\n aria-controls={id}\n aria-expanded={isOpen}\n className={cn('expander__trigger', {\n 'expander__trigger--triggered': isOpen,\n 'expander__trigger--w-value': value,\n })}\n onClick={toggle}\n >\n {icon ? <div className=\"expander__icon\">{icon}</div> : null}\n <div className=\"expander__trigger-title\">\n <Text elementName=\"h3\" itemProp={faq ? 'name' : undefined} tight>\n {title}\n </Text>\n </div>\n {value ? (\n <Badge\n content={{ content: value, type: Types.Numerical }}\n variant={Badge.variants.secondary}\n />\n ) : null}\n <div\n className={cn('expander__icon', {\n 'expander__icon--flipped': isOpen,\n })}\n >\n <ArrowDown />\n </div>\n </button>\n <div\n className={cn('expander__drawer', {\n 'expander__drawer--open': isOpen,\n })}\n id={id}\n >\n <Collapse isOpen={isOpen}>\n <div\n className={cn('expander__content', {\n [`expander__content--${contentType}`]: contentType,\n })}\n itemScope={faq ? faq : undefined}\n itemProp={faq ? 'acceptedAnswer' : undefined}\n itemType={faq ? 'https://schema.org/Answer' : undefined}\n >\n <div\n className=\"expander__children\"\n itemProp={faq ? 'text' : undefined}\n >\n {children}\n </div>\n {actions.length ? (\n <div className=\"expander__actions\">\n {actions.map(action => (\n <div className=\"expander__action\" key={action.href}>\n <LinkButton {...action} />\n </div>\n ))}\n </div>\n ) : null}\n {metadata || (links && links.length) ? (\n <div className=\"expander__metadata\">\n <hr className=\"expander__divider\" />\n <div className=\"expander__meta-content\">\n {metadata ? (\n <div className=\"expander__meta-text\">\n <Text elementName=\"span\" size={Text.sizes.small}>\n {metadata}\n </Text>\n </div>\n ) : null}\n {links && links.length ? (\n <div className=\"expander__links\">\n {links.map(link => (\n <div className=\"expander__link\" key={link.href}>\n <Link {...link} size={Link.sizes.small} />\n </div>\n ))}\n </div>\n ) : null}\n </div>\n </div>\n ) : null}\n </div>\n </Collapse>\n </div>\n </div>\n );\n};\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nconst Expander = <T extends {}>({\n description,\n faq,\n itemRenderer,\n items,\n title,\n}: Props<T> & { itemRenderer: React.FC<T> }) => (\n <div className=\"expander\">\n {title || description ? (\n <div className=\"expander__header\">\n {title ? (\n <Text\n elementName=\"h2\"\n size={Text.sizes.headline2}\n theme={Text.themes.emphasis}\n tight\n >\n {title}\n </Text>\n ) : null}\n {description ? (\n <Text size={Text.sizes.basic}>{description}</Text>\n ) : null}\n </div>\n ) : null}\n <div>\n {items.map(item => (\n <ExpanderListItem\n key={item.listItemProps.id}\n {...item.listItemProps}\n faq={faq}\n >\n {React.createElement(itemRenderer, item.props)}\n </ExpanderListItem>\n ))}\n </div>\n </div>\n);\n\nexport default Expander;\n"],
|
|
5
|
-
"mappings": "0bAEA,OAAOA,MAAQ,aACf,OAAOC,GAAS,YAAAC,MAAgB,QAEhC,OAAOC,MAAe,yBACtB,OAAOC,MAAgB,iBACvB,OAAOC,MAAU,UAGjB,OAAOC,MAAW,WAClB,OAAS,SAAAC,MAAa,uBACtB,OAAOC,MAAU,UACjB,OAAOC,MAAc,
|
|
6
|
-
"names": ["cn", "React", "useState", "ArrowDown", "LinkButton", "Text", "Badge", "Types", "Link", "Collapse", "ExpanderListItem", "actions", "contentType", "defaultOpen", "faq", "icon", "id", "links", "children", "metadata", "title", "value", "isOpen", "setIsOpen", "toggle", "
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport cn from 'classnames';\nimport React, { useState } from 'react';\n\nimport ArrowDown from '../icons/24/arrow-down';\nimport LinkButton from '../link-button';\nimport Text from '../text';\n\nimport { type Expander as Props } from './expander.types';\nimport Badge from '../badge';\nimport { Types } from '../badge/badge.types';\nimport Link from '../link';\nimport Collapse from '../collapse';\nimport Tag from '../tag';\n\nconst ExpanderListItem: React.FC<\n React.PropsWithChildren<Props<unknown>['items'][number]['listItemProps']>\n> = ({\n actions,\n contentType = 'article',\n defaultOpen = false,\n faq,\n icon,\n id,\n links,\n children,\n metadata,\n tag,\n title,\n value,\n}) => {\n const [isOpen, setIsOpen] = useState(defaultOpen);\n\n const toggle = () => setIsOpen(!isOpen);\n\n return (\n <div\n className=\"expander__list-item\"\n key={id}\n itemScope={faq ? faq : undefined}\n itemProp={faq ? 'mainEntity' : undefined}\n itemType={faq ? 'https://schema.org/Question' : undefined}\n >\n <button\n aria-controls={id}\n aria-expanded={isOpen}\n className={cn('expander__trigger', {\n 'expander__trigger--triggered': isOpen,\n 'expander__trigger--w-value': value,\n })}\n onClick={toggle}\n >\n {icon ? <div className=\"expander__icon\">{icon}</div> : null}\n <div className=\"expander__trigger-title\">\n <Text elementName=\"h3\" itemProp={faq ? 'name' : undefined} tight>\n {title}\n </Text>\n {tag ? (\n <Tag size={Tag.sizes.s} variant={Tag.variants.positive} {...tag} />\n ) : null}\n </div>\n {value ? (\n <Badge\n content={{ content: value, type: Types.Numerical }}\n variant={Badge.variants.secondary}\n />\n ) : null}\n <div\n className={cn('expander__icon', {\n 'expander__icon--flipped': isOpen,\n })}\n >\n <ArrowDown />\n </div>\n </button>\n <div\n className={cn('expander__drawer', {\n 'expander__drawer--open': isOpen,\n })}\n id={id}\n >\n <Collapse isOpen={isOpen}>\n <div\n className={cn('expander__content', {\n [`expander__content--${contentType}`]: contentType,\n })}\n itemScope={faq ? faq : undefined}\n itemProp={faq ? 'acceptedAnswer' : undefined}\n itemType={faq ? 'https://schema.org/Answer' : undefined}\n >\n <div\n className=\"expander__children\"\n itemProp={faq ? 'text' : undefined}\n >\n {children}\n </div>\n {actions.length ? (\n <div className=\"expander__actions\">\n {actions.map(action => (\n <div className=\"expander__action\" key={action.href}>\n <LinkButton {...action} />\n </div>\n ))}\n </div>\n ) : null}\n {metadata || (links && links.length) ? (\n <div className=\"expander__metadata\">\n <hr className=\"expander__divider\" />\n <div className=\"expander__meta-content\">\n {metadata ? (\n <div className=\"expander__meta-text\">\n <Text elementName=\"span\" size={Text.sizes.small}>\n {metadata}\n </Text>\n </div>\n ) : null}\n {links && links.length ? (\n <div className=\"expander__links\">\n {links.map(link => (\n <div className=\"expander__link\" key={link.href}>\n <Link {...link} size={Link.sizes.small} />\n </div>\n ))}\n </div>\n ) : null}\n </div>\n </div>\n ) : null}\n </div>\n </Collapse>\n </div>\n </div>\n );\n};\n\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nconst Expander = <T extends {}>({\n description,\n faq,\n itemRenderer,\n items,\n title,\n}: Props<T> & { itemRenderer: React.FC<T> }) => (\n <div className=\"expander\">\n {title || description ? (\n <div className=\"expander__header\">\n {title ? (\n <Text\n elementName=\"h2\"\n size={Text.sizes.headline2}\n theme={Text.themes.emphasis}\n tight\n >\n {title}\n </Text>\n ) : null}\n {description ? (\n <Text size={Text.sizes.basic}>{description}</Text>\n ) : null}\n </div>\n ) : null}\n <div>\n {items.map(item => (\n <ExpanderListItem\n key={item.listItemProps.id}\n {...item.listItemProps}\n faq={faq}\n >\n {React.createElement(itemRenderer, item.props)}\n </ExpanderListItem>\n ))}\n </div>\n </div>\n);\n\nexport default Expander;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["cn", "React", "useState", "ArrowDown", "LinkButton", "Text", "Badge", "Types", "Link", "Collapse", "Tag", "ExpanderListItem", "actions", "contentType", "defaultOpen", "faq", "icon", "id", "links", "children", "metadata", "tag", "title", "value", "isOpen", "setIsOpen", "toggle", "__spreadValues", "action", "link", "__spreadProps", "Expander", "description", "itemRenderer", "items", "item", "expander_default"]
|
|
7
7
|
}
|
|
@@ -2,6 +2,7 @@ import type { ReactNode } from 'react';
|
|
|
2
2
|
import type { Link } from '../link/link.types';
|
|
3
3
|
import type { LinkButton } from '../link-button/link-button.types';
|
|
4
4
|
import { ObjectValues } from '../types';
|
|
5
|
+
import { Tag } from '../tag/tag.types';
|
|
5
6
|
export declare const contentTypes: {
|
|
6
7
|
readonly article: "article";
|
|
7
8
|
readonly list: "list";
|
|
@@ -15,6 +16,7 @@ type ExpanderListItem = {
|
|
|
15
16
|
id: string;
|
|
16
17
|
links?: Pick<Link, 'href' | 'testId' | 'text'>[];
|
|
17
18
|
metadata?: string;
|
|
19
|
+
tag?: Tag;
|
|
18
20
|
title: string;
|
|
19
21
|
value?: number;
|
|
20
22
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const
|
|
1
|
+
const o={article:"article",list:"list"};export{o as contentTypes};
|
|
2
2
|
//# sourceMappingURL=expander.types.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../react/expander/expander.types.ts"],
|
|
4
|
-
"sourcesContent": ["import type { ReactNode } from 'react';\n\nimport type { Link } from '../link/link.types';\nimport type { LinkButton } from '../link-button/link-button.types';\nimport { ObjectValues } from '../types';\n\nexport const contentTypes = {\n article: 'article',\n list: 'list',\n} as const;\n\ntype ExpanderListItem = {\n actions: LinkButton[];\n contentType?: ObjectValues<typeof contentTypes>;\n defaultOpen?: boolean;\n faq?: boolean;\n icon?: ReactNode;\n id: string;\n links?: Pick<Link, 'href' | 'testId' | 'text'>[];\n metadata?: string;\n title: string;\n value?: number;\n};\n\nexport type Expander<T> = {\n description?: string;\n faq?: boolean;\n items: {\n listItemProps: ExpanderListItem;\n props: T;\n }[];\n title?: string;\n};\n"],
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import type { ReactNode } from 'react';\n\nimport type { Link } from '../link/link.types';\nimport type { LinkButton } from '../link-button/link-button.types';\nimport { ObjectValues } from '../types';\nimport { Tag } from '../tag/tag.types';\n\nexport const contentTypes = {\n article: 'article',\n list: 'list',\n} as const;\n\ntype ExpanderListItem = {\n actions: LinkButton[];\n contentType?: ObjectValues<typeof contentTypes>;\n defaultOpen?: boolean;\n faq?: boolean;\n icon?: ReactNode;\n id: string;\n links?: Pick<Link, 'href' | 'testId' | 'text'>[];\n metadata?: string;\n tag?: Tag;\n title: string;\n value?: number;\n};\n\nexport type Expander<T> = {\n description?: string;\n faq?: boolean;\n items: {\n listItemProps: ExpanderListItem;\n props: T;\n }[];\n title?: string;\n};\n"],
|
|
5
|
+
"mappings": "AAOO,MAAMA,EAAe,CAC1B,QAAS,UACT,KAAM,MACR",
|
|
6
6
|
"names": ["contentTypes"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import*as e from"react";const l=()=>e.createElement("svg",{width:24,height:24,fill:"none"},e.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 .25a.75.75 0 0 1 .75.75v14.19l4.72-4.72a.75.75 0 1 1 1.06 1.06L12 18.06l-6.53-6.53a.75.75 0 1 1 1.06-1.06l4.72 4.72V1A.75.75 0 0 1 12 .25M1.25 22a.75.75 0 0 1 .75-.75h20a.75.75 0 0 1 0 1.5H2a.75.75 0 0 1-.75-.75",clipRule:"evenodd"}));var a=l;export{a as default};
|
|
2
|
+
//# sourceMappingURL=download.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../react/icons/24/download.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nconst SvgDownload = () =>\n /* @__PURE__ */ React.createElement(\n 'svg',\n { width: 24, height: 24, fill: 'none' },\n /* @__PURE__ */ React.createElement('path', {\n fill: 'currentColor',\n fillRule: 'evenodd',\n d: 'M12 .25a.75.75 0 0 1 .75.75v14.19l4.72-4.72a.75.75 0 1 1 1.06 1.06L12 18.06l-6.53-6.53a.75.75 0 1 1 1.06-1.06l4.72 4.72V1A.75.75 0 0 1 12 .25M1.25 22a.75.75 0 0 1 .75-.75h20a.75.75 0 0 1 0 1.5H2a.75.75 0 0 1-.75-.75',\n clipRule: 'evenodd',\n }),\n );\nexport default SvgDownload;\n"],
|
|
5
|
+
"mappings": "AAAA,UAAYA,MAAW,QACvB,MAAMC,EAAc,IACFD,EAAM,cACpB,MACA,CAAE,MAAO,GAAI,OAAQ,GAAI,KAAM,MAAO,EACtBA,EAAM,cAAc,OAAQ,CAC1C,KAAM,eACN,SAAU,UACV,EAAG,0NACH,SAAU,SACZ,CAAC,CACH,EACF,IAAOE,EAAQD",
|
|
6
|
+
"names": ["React", "SvgDownload", "download_default"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as
|
|
1
|
+
import*as s from"react";import l from"../icons/24/arrow-right";import t from"../icons/24/download";import i from"../text";import{variants as a}from"./link-card.types";const d=({href:o,text:r,title:m,variant:e=a.link})=>s.createElement("a",{className:"link-card",href:o},s.createElement(i,{className:"link-card__title",theme:i.themes.emphasis,size:i.sizes.basic},m),e===a.download?s.createElement(t,null):s.createElement(l,null),r?s.createElement("div",{className:"link-card__text"},s.createElement(i,{size:i.sizes.small},r)):null);var c=d;export{c as default};
|
|
2
2
|
//# sourceMappingURL=link-card.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../react/link-card/link-card.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\n\nimport ArrowRight from '../icons/24/arrow-right';\nimport Text from '../text';\n\nimport { LinkCard as Props } from './link-card.types';\n\nconst LinkCard: React.FC<Props> = ({
|
|
5
|
-
"mappings": "AAAA,UAAYA,MAAW,QAEvB,OAAOC,MAAgB,0BACvB,OAAOC,MAAU,
|
|
6
|
-
"names": ["React", "ArrowRight", "Text", "LinkCard", "href", "text", "title", "link_card_default"]
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\n\nimport ArrowRight from '../icons/24/arrow-right';\nimport Download from '../icons/24/download';\nimport Text from '../text';\n\nimport { LinkCard as Props, variants } from './link-card.types';\n\nconst LinkCard: React.FC<Props> = ({\n href,\n text,\n title,\n variant = variants.link,\n}) => (\n <a className=\"link-card\" href={href}>\n <Text\n className=\"link-card__title\"\n theme={Text.themes.emphasis}\n size={Text.sizes.basic}\n >\n {title}\n </Text>\n {variant === variants.download ? <Download /> : <ArrowRight />}\n {text ? (\n <div className=\"link-card__text\">\n <Text size={Text.sizes.small}>{text}</Text>\n </div>\n ) : null}\n </a>\n);\n\nexport default LinkCard;\n"],
|
|
5
|
+
"mappings": "AAAA,UAAYA,MAAW,QAEvB,OAAOC,MAAgB,0BACvB,OAAOC,MAAc,uBACrB,OAAOC,MAAU,UAEjB,OAA4B,YAAAC,MAAgB,oBAE5C,MAAMC,EAA4B,CAAC,CACjC,KAAAC,EACA,KAAAC,EACA,MAAAC,EACA,QAAAC,EAAUL,EAAS,IACrB,IACEJ,EAAA,cAAC,KAAE,UAAU,YAAY,KAAMM,GAC7BN,EAAA,cAACG,EAAA,CACC,UAAU,mBACV,MAAOA,EAAK,OAAO,SACnB,KAAMA,EAAK,MAAM,OAEhBK,CACH,EACCC,IAAYL,EAAS,SAAWJ,EAAA,cAACE,EAAA,IAAS,EAAKF,EAAA,cAACC,EAAA,IAAW,EAC3DM,EACCP,EAAA,cAAC,OAAI,UAAU,mBACbA,EAAA,cAACG,EAAA,CAAK,KAAMA,EAAK,MAAM,OAAQI,CAAK,CACtC,EACE,IACN,EAGF,IAAOG,EAAQL",
|
|
6
|
+
"names": ["React", "ArrowRight", "Download", "Text", "variants", "LinkCard", "href", "text", "title", "variant", "link_card_default"]
|
|
7
7
|
}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
@use '../../tokens/corner-radius';
|
|
2
|
-
@use '../../tokens/elevation';
|
|
3
2
|
@use '../../tokens/colours';
|
|
4
3
|
@use '../../tokens/spacing';
|
|
5
4
|
|
|
6
5
|
.link-card {
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
align-items: center;
|
|
9
7
|
background: var(--surface-primary-default);
|
|
10
8
|
border-radius: corner-radius.$s;
|
|
11
|
-
|
|
9
|
+
border: 1px solid var(--ge-border-default);
|
|
10
|
+
color: var(--on-surface-primary-default);
|
|
12
11
|
display: grid;
|
|
13
12
|
gap: spacing.$s;
|
|
14
13
|
grid-template-columns: [first] [second];
|
|
15
14
|
padding: spacing.$m;
|
|
16
15
|
text-decoration: none;
|
|
17
16
|
|
|
17
|
+
> svg {
|
|
18
|
+
grid-column: 2;
|
|
19
|
+
justify-self: end;
|
|
20
|
+
}
|
|
21
|
+
|
|
18
22
|
@media (hover: hover) {
|
|
19
23
|
&:hover {
|
|
20
24
|
background: var(--surface-primary-hover);
|
|
@@ -26,11 +30,6 @@
|
|
|
26
30
|
grid-column: 1;
|
|
27
31
|
}
|
|
28
32
|
|
|
29
|
-
&__icon {
|
|
30
|
-
grid-column: 2;
|
|
31
|
-
justify-self: end;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
33
|
&__text {
|
|
35
34
|
grid-column: span 2;
|
|
36
35
|
}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
+
import type { ObjectValues } from '../types';
|
|
2
|
+
export declare const variants: {
|
|
3
|
+
readonly download: "download";
|
|
4
|
+
readonly link: "link";
|
|
5
|
+
};
|
|
1
6
|
export type LinkCard = {
|
|
2
7
|
href: string;
|
|
3
8
|
text?: string;
|
|
4
9
|
title: string;
|
|
10
|
+
variant?: ObjectValues<typeof variants>;
|
|
5
11
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [],
|
|
4
|
-
"sourcesContent": [],
|
|
5
|
-
"mappings": "",
|
|
6
|
-
"names": []
|
|
3
|
+
"sources": ["../../../react/link-card/link-card.types.ts"],
|
|
4
|
+
"sourcesContent": ["import type { ObjectValues } from '../types';\n\nexport const variants = {\n download: 'download',\n link: 'link',\n} as const;\n\nexport type LinkCard = {\n href: string;\n text?: string;\n title: string;\n variant?: ObjectValues<typeof variants>;\n};\n"],
|
|
5
|
+
"mappings": "AAEO,MAAMA,EAAW,CACtB,SAAU,WACV,KAAM,MACR",
|
|
6
|
+
"names": ["variants"]
|
|
7
7
|
}
|