@hh.ru/magritte-ui-card 8.7.4 → 8.7.6

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/Between.js CHANGED
@@ -2,13 +2,13 @@ import './index.css';
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { useCardContext } from './cardContext.js';
4
4
  import { Divider } from '@hh.ru/magritte-ui-divider';
5
- import { s as styles } from './card-Btnm12EM.js';
5
+ import { s as styles } from './card-DgIEckrx.js';
6
6
  import 'react';
7
7
 
8
8
  const Between = ({ children }) => {
9
- const { direction, borderStyle } = useCardContext();
10
- const content = children ?? jsx(Divider, { mode: direction === 'row' ? 'vertical' : 'horizontal', color: borderStyle });
11
- return jsx("div", { className: styles.between, children: content });
9
+ const { direction, borderStyle } = useCardContext();
10
+ const content = children ?? /* @__PURE__ */ jsx(Divider, { mode: direction === "row" ? "vertical" : "horizontal", color: borderStyle });
11
+ return /* @__PURE__ */ jsx("div", { className: styles.between, children: content });
12
12
  };
13
13
 
14
14
  export { Between };
package/Between.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Between.js","sources":["src/Between.tsx"],"sourcesContent":["import { FC, PropsWithChildren } from 'react';\n\nimport { useCardContext } from '@hh.ru/magritte-ui-card/cardContext';\nimport { Divider } from '@hh.ru/magritte-ui-divider';\n\nimport styles from './card.less';\n\nexport const Between: FC<PropsWithChildren> = ({ children }) => {\n const { direction, borderStyle } = useCardContext();\n const content = children ?? <Divider mode={direction === 'row' ? 'vertical' : 'horizontal'} color={borderStyle} />;\n\n return <div className={styles.between}>{content}</div>;\n};\n"],"names":["_jsx"],"mappings":";;;;;;MAOa,OAAO,GAA0B,CAAC,EAAE,QAAQ,EAAE,KAAI;IAC3D,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,CAAC;IACpD,MAAM,OAAO,GAAG,QAAQ,IAAIA,GAAA,CAAC,OAAO,EAAC,EAAA,IAAI,EAAE,SAAS,KAAK,KAAK,GAAG,UAAU,GAAG,YAAY,EAAE,KAAK,EAAE,WAAW,EAAA,CAAI,CAAC;IAEnH,OAAOA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,OAAO,EAAA,QAAA,EAAG,OAAO,EAAA,CAAO,CAAC;AAC3D;;;;"}
1
+ {"version":3,"file":"Between.js","sources":["src/Between.tsx"],"sourcesContent":["import { FC, PropsWithChildren } from 'react';\n\nimport { useCardContext } from '@hh.ru/magritte-ui-card/cardContext';\nimport { Divider } from '@hh.ru/magritte-ui-divider';\n\nimport styles from './card.less';\n\nexport const Between: FC<PropsWithChildren> = ({ children }) => {\n const { direction, borderStyle } = useCardContext();\n const content = children ?? <Divider mode={direction === 'row' ? 'vertical' : 'horizontal'} color={borderStyle} />;\n\n return <div className={styles.between}>{content}</div>;\n};\n"],"names":[],"mappings":";;;;;;AAOO,MAAM,OAAiC,GAAA,CAAC,EAAE,QAAA,EAAe,KAAA;AAC5D,EAAA,MAAM,EAAE,SAAA,EAAW,WAAY,EAAA,GAAI,cAAe,EAAA,CAAA;AAClD,EAAM,MAAA,OAAA,GAAU,QAAY,oBAAA,GAAA,CAAC,OAAQ,EAAA,EAAA,IAAA,EAAM,cAAc,KAAQ,GAAA,UAAA,GAAa,YAAc,EAAA,KAAA,EAAO,WAAa,EAAA,CAAA,CAAA;AAEhH,EAAA,uBAAQ,GAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,SAAU,QAAQ,EAAA,OAAA,EAAA,CAAA,CAAA;AACpD;;;;"}
package/Card.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { type FC, type PropsWithChildren } from 'react';
2
2
  import type { PolymorphicComponentWithRef } from '@hh.ru/magritte-types';
3
- import { type CardSegmentProps } from '@hh.ru/magritte-ui-card/CardSegment';
4
- import type { CardProps } from '@hh.ru/magritte-ui-card/types';
3
+ import { type CardSegmentProps } from './CardSegment';
4
+ import type { CardProps } from './types';
5
5
  export declare const Card: import("@hh.ru/magritte-ui-skeleton").ComponentWithSkeleton<PolymorphicComponentWithRef<CardProps, "div"> & {
6
- Segment: PolymorphicComponentWithRef<CardSegmentProps, "div">;
6
+ Segment: PolymorphicComponentWithRef<CardSegmentProps, 'div'>;
7
7
  Between: FC<PropsWithChildren>;
8
8
  }, CardProps>;
package/Card.js CHANGED
@@ -11,73 +11,130 @@ import { useCardActivation } from './useCardActivation.js';
11
11
  import { IconDynamic } from '@hh.ru/magritte-ui-icon';
12
12
  import { enrichWithSkeleton } from '@hh.ru/magritte-ui-skeleton';
13
13
  import { TextDynamic } from '@hh.ru/magritte-ui-typography';
14
- import { s as styles } from './card-Btnm12EM.js';
14
+ import { s as styles } from './card-DgIEckrx.js';
15
15
  import '@hh.ru/magritte-ui-divider';
16
16
  import '@hh.ru/magritte-ui-layout';
17
17
  import '@hh.ru/magritte-common-keyboard';
18
18
  import '@hh.ru/magritte-common-mouse';
19
19
 
20
- const borderSides = ['top-left', 'top-right', 'bottom-right', 'bottom-left'];
20
+ const borderSides = ["top-left", "top-right", "bottom-right", "bottom-left"];
21
21
  const genBorderRadiusProp = (radiusProps) => {
22
- const isHalfHeight = Object.values(radiusProps).includes('halfHeight');
23
- const borderRadius = isHalfHeight ? 99999 : radiusProps.borderRadius;
24
- const { borderTopLeftRadius, borderTopRightRadius, borderBottomLeftRadius, borderBottomRightRadius } = Object.fromEntries(Object.entries(radiusProps)
25
- .map((radius) => (isHalfHeight ? [radius[0], undefined] : radius))
26
- .filter((radius) => radius[1] !== undefined));
27
- const radius = [borderTopLeftRadius, borderTopRightRadius, borderBottomRightRadius, borderBottomLeftRadius];
28
- const radiusVariables = radius.reduce((acc, val, index) => val === undefined
29
- ? acc
30
- : {
31
- ...acc,
32
- [`--magritte-card-border-radius-${borderSides[index]}`]: `${val}px`,
33
- }, {});
34
- return {
35
- '--magritte-card-border-radius': `${borderRadius}px`,
36
- ...radiusVariables,
37
- };
22
+ const isHalfHeight = Object.values(radiusProps).includes("halfHeight");
23
+ const borderRadius = isHalfHeight ? 99999 : radiusProps.borderRadius;
24
+ const { borderTopLeftRadius, borderTopRightRadius, borderBottomLeftRadius, borderBottomRightRadius } = Object.fromEntries(
25
+ Object.entries(radiusProps).map((radius2) => isHalfHeight ? [radius2[0], void 0] : radius2).filter((radius2) => radius2[1] !== void 0)
26
+ );
27
+ const radius = [borderTopLeftRadius, borderTopRightRadius, borderBottomRightRadius, borderBottomLeftRadius];
28
+ const radiusVariables = radius.reduce(
29
+ (acc, val, index) => val === void 0 ? acc : {
30
+ ...acc,
31
+ [`--magritte-card-border-radius-${borderSides[index]}`]: `${val}px`
32
+ },
33
+ {}
34
+ );
35
+ return {
36
+ "--magritte-card-border-radius": `${borderRadius}px`,
37
+ ...radiusVariables
38
+ };
38
39
  };
39
- const genPaddingProps = (paddingProps) => Object.entries(paddingProps).reduce((acc, [key, value]) => (value !== undefined ? { ...acc, [`padding${key}`]: value } : acc), {});
40
- const CardForwardRefRenderFunc = ({ Element = 'div', stretched = false, verticalStretched = false, hoverEnabled = false, pressEnabled = false, shadow = 'level-0', increaseShadow = false, onClick, style = 'primary', hoverStyle, disabled = false, padding = 0, paddingLeft, paddingRight, paddingTop, paddingBottom, borderRadius = 0, borderTopLeftRadius, borderTopRightRadius, borderBottomLeftRadius, borderBottomRightRadius, children, borderStyle, borderWidth = 'none', borderLayer = 'above-content', direction, ...restProps }, ref) => {
41
- const forceDisabled = useDisabled();
42
- const activationProps = useCardActivation({
43
- onClick,
44
- disabled,
45
- hasExplicitRole: 'role' in restProps,
46
- hasExplicitTabIndex: 'tabIndex' in restProps,
47
- });
48
- const isPressEnabled = pressEnabled || !!onClick;
49
- const isHoverEnabled = hoverEnabled || isPressEnabled;
50
- const paddingProps = genPaddingProps({
51
- Left: paddingLeft ?? padding,
52
- Right: paddingRight ?? padding,
53
- Top: paddingTop ?? padding,
54
- Bottom: paddingBottom ?? padding,
55
- });
56
- // порядок отрисовки рамки задаётся её положением среди детей карточки: последним потомком — поверх всего
57
- // содержимого, первым — под спозиционированным, чтобы выходящие за карточку абсолютно спозиционированные
58
- // элементы (например, картинки) перекрывали рамку, а не наоборот
59
- const isBorderBelowContent = borderLayer === 'below-content';
60
- const borderElement = jsx("div", { className: styles.borderElement });
61
- const radiusProps = genBorderRadiusProp({
62
- borderRadius,
63
- borderBottomLeftRadius,
64
- borderBottomRightRadius,
65
- borderTopLeftRadius,
66
- borderTopRightRadius,
67
- });
68
- return (jsx(DisabledContext.Provider, { value: forceDisabled || !!disabled, children: jsxs(Element, { ...restProps, ...(ref ? { ref } : {}), ...activationProps, style: { ...paddingProps, ...radiusProps }, className: classnames(styles.card, styles[`card-style-${style}`], !!hoverStyle && styles[`card-hover-style-${hoverStyle}`], !!borderStyle && styles[`card-border-style-${borderStyle}`], styles[`card-shadow-${shadow}`], {
69
- [styles.cardStretched]: stretched,
70
- [styles.cardVerticalStretched]: verticalStretched,
71
- [styles.cardPressEnabled]: isPressEnabled,
72
- [styles.cardHoverEnabled]: isHoverEnabled,
73
- [styles.increaseShadow]: increaseShadow,
74
- [styles.cardDisabled]: !!disabled,
75
- [styles.borderSelected]: borderWidth === 'selected',
76
- [styles.borderDefault]: borderWidth === 'default',
77
- }), children: [isBorderBelowContent && borderElement, jsx(IconDynamic, { stretched: true, hoverEnabled: isHoverEnabled, pressEnabled: isPressEnabled, children: jsx("div", { className: styles.flexContainer, children: jsx(TextDynamic, { stretched: true, className: classnames({
78
- [styles.layoutVertical]: direction === 'column',
79
- [styles.layoutHorizontal]: direction === 'row',
80
- }), children: jsx(CardContext.Provider, { value: { direction: direction ?? 'row', borderStyle }, children: children }) }) }) }), !isBorderBelowContent && borderElement] }) }));
40
+ const genPaddingProps = (paddingProps) => Object.entries(paddingProps).reduce(
41
+ (acc, [key, value]) => value !== void 0 ? { ...acc, [`padding${key}`]: value } : acc,
42
+ {}
43
+ );
44
+ const CardForwardRefRenderFunc = ({
45
+ Element = "div",
46
+ stretched = false,
47
+ verticalStretched = false,
48
+ hoverEnabled = false,
49
+ pressEnabled = false,
50
+ shadow = "level-0",
51
+ increaseShadow = false,
52
+ onClick,
53
+ style = "primary",
54
+ hoverStyle,
55
+ disabled = false,
56
+ padding = 0,
57
+ paddingLeft,
58
+ paddingRight,
59
+ paddingTop,
60
+ paddingBottom,
61
+ borderRadius = 0,
62
+ borderTopLeftRadius,
63
+ borderTopRightRadius,
64
+ borderBottomLeftRadius,
65
+ borderBottomRightRadius,
66
+ children,
67
+ borderStyle,
68
+ borderWidth = "none",
69
+ borderLayer = "above-content",
70
+ direction,
71
+ ...restProps
72
+ }, ref) => {
73
+ const forceDisabled = useDisabled();
74
+ const activationProps = useCardActivation({
75
+ onClick,
76
+ disabled,
77
+ hasExplicitRole: "role" in restProps,
78
+ hasExplicitTabIndex: "tabIndex" in restProps
79
+ });
80
+ const isPressEnabled = pressEnabled || !!onClick;
81
+ const isHoverEnabled = hoverEnabled || isPressEnabled;
82
+ const paddingProps = genPaddingProps({
83
+ Left: paddingLeft ?? padding,
84
+ Right: paddingRight ?? padding,
85
+ Top: paddingTop ?? padding,
86
+ Bottom: paddingBottom ?? padding
87
+ });
88
+ const isBorderBelowContent = borderLayer === "below-content";
89
+ const borderElement = /* @__PURE__ */ jsx("div", { className: styles.borderElement });
90
+ const radiusProps = genBorderRadiusProp({
91
+ borderRadius,
92
+ borderBottomLeftRadius,
93
+ borderBottomRightRadius,
94
+ borderTopLeftRadius,
95
+ borderTopRightRadius
96
+ });
97
+ return /* @__PURE__ */ jsx(DisabledContext.Provider, { value: forceDisabled || !!disabled, children: /* @__PURE__ */ jsxs(
98
+ Element,
99
+ {
100
+ ...restProps,
101
+ ...ref ? { ref } : {},
102
+ ...activationProps,
103
+ style: { ...paddingProps, ...radiusProps },
104
+ className: classnames(
105
+ styles.card,
106
+ styles[`card-style-${style}`],
107
+ !!hoverStyle && styles[`card-hover-style-${hoverStyle}`],
108
+ !!borderStyle && styles[`card-border-style-${borderStyle}`],
109
+ styles[`card-shadow-${shadow}`],
110
+ {
111
+ [styles.cardStretched]: stretched,
112
+ [styles.cardVerticalStretched]: verticalStretched,
113
+ [styles.cardPressEnabled]: isPressEnabled,
114
+ [styles.cardHoverEnabled]: isHoverEnabled,
115
+ [styles.increaseShadow]: increaseShadow,
116
+ [styles.cardDisabled]: !!disabled,
117
+ [styles.borderSelected]: borderWidth === "selected",
118
+ [styles.borderDefault]: borderWidth === "default"
119
+ }
120
+ ),
121
+ children: [
122
+ isBorderBelowContent && borderElement,
123
+ /* @__PURE__ */ jsx(IconDynamic, { stretched: true, hoverEnabled: isHoverEnabled, pressEnabled: isPressEnabled, children: /* @__PURE__ */ jsx("div", { className: styles.flexContainer, children: /* @__PURE__ */ jsx(
124
+ TextDynamic,
125
+ {
126
+ stretched: true,
127
+ className: classnames({
128
+ [styles.layoutVertical]: direction === "column",
129
+ [styles.layoutHorizontal]: direction === "row"
130
+ }),
131
+ children: /* @__PURE__ */ jsx(CardContext.Provider, { value: { direction: direction ?? "row", borderStyle }, children })
132
+ }
133
+ ) }) }),
134
+ !isBorderBelowContent && borderElement
135
+ ]
136
+ }
137
+ ) });
81
138
  };
82
139
  const CardComponent = forwardRef(CardForwardRefRenderFunc);
83
140
  CardComponent.Segment = CardSegment;
package/Card.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","sources":["src/Card.tsx"],"sourcesContent":["import { type CSSProperties, forwardRef, type FC, type PropsWithChildren } from 'react';\nimport classnames from 'classnames';\n\nimport { DisabledContext, useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { Between } from '@hh.ru/magritte-ui-card/Between';\nimport { CardSegment, type CardSegmentProps } from '@hh.ru/magritte-ui-card/CardSegment';\nimport { CardSkeleton } from '@hh.ru/magritte-ui-card/Skeleton';\nimport { CardContext } from '@hh.ru/magritte-ui-card/cardContext';\nimport type { CardBorderRadius, CardPadding, CardProps } from '@hh.ru/magritte-ui-card/types';\nimport { useCardActivation } from '@hh.ru/magritte-ui-card/useCardActivation';\nimport { IconDynamic } from '@hh.ru/magritte-ui-icon';\nimport { enrichWithSkeleton } from '@hh.ru/magritte-ui-skeleton';\nimport { TextDynamic } from '@hh.ru/magritte-ui-typography';\n\nimport styles from './card.less';\n\nconst borderSides = ['top-left', 'top-right', 'bottom-right', 'bottom-left'] as const;\n\nconst genBorderRadiusProp = (radiusProps: {\n borderRadius: CardBorderRadius;\n borderTopLeftRadius?: CardBorderRadius;\n borderTopRightRadius?: CardBorderRadius;\n borderBottomLeftRadius?: CardBorderRadius;\n borderBottomRightRadius?: CardBorderRadius;\n}): CSSProperties => {\n const isHalfHeight = Object.values(radiusProps).includes('halfHeight');\n const borderRadius = isHalfHeight ? 99999 : radiusProps.borderRadius;\n const { borderTopLeftRadius, borderTopRightRadius, borderBottomLeftRadius, borderBottomRightRadius } =\n Object.fromEntries(\n Object.entries(radiusProps)\n .map((radius) => (isHalfHeight ? [radius[0], undefined] : radius))\n .filter((radius) => radius[1] !== undefined)\n ) as typeof radiusProps;\n\n const radius = [borderTopLeftRadius, borderTopRightRadius, borderBottomRightRadius, borderBottomLeftRadius];\n\n const radiusVariables = radius.reduce(\n (acc, val, index) =>\n val === undefined\n ? acc\n : {\n ...acc,\n [`--magritte-card-border-radius-${borderSides[index]}`]: `${val}px`,\n },\n {}\n );\n\n return {\n '--magritte-card-border-radius': `${borderRadius}px`,\n ...radiusVariables,\n } as CSSProperties;\n};\n\nconst genPaddingProps = (paddingProps: {\n Left?: CardPadding;\n Right?: CardPadding;\n Top?: CardPadding;\n Bottom?: CardPadding;\n}) =>\n Object.entries(paddingProps).reduce<Record<string, number>>(\n (acc, [key, value]) => (value !== undefined ? { ...acc, [`padding${key}`]: value } : acc),\n {}\n );\n\nconst CardForwardRefRenderFunc: PolymorphicForwardRefRenderFunc<CardProps, 'div'> = (\n {\n Element = 'div',\n stretched = false,\n verticalStretched = false,\n hoverEnabled = false,\n pressEnabled = false,\n shadow = 'level-0',\n increaseShadow = false,\n onClick,\n style = 'primary',\n hoverStyle,\n disabled = false,\n padding = 0,\n paddingLeft,\n paddingRight,\n paddingTop,\n paddingBottom,\n borderRadius = 0,\n borderTopLeftRadius,\n borderTopRightRadius,\n borderBottomLeftRadius,\n borderBottomRightRadius,\n children,\n borderStyle,\n borderWidth = 'none',\n borderLayer = 'above-content',\n direction,\n ...restProps\n },\n ref\n) => {\n const forceDisabled = useDisabled();\n const activationProps = useCardActivation({\n onClick,\n disabled,\n hasExplicitRole: 'role' in restProps,\n hasExplicitTabIndex: 'tabIndex' in restProps,\n });\n const isPressEnabled = pressEnabled || !!onClick;\n const isHoverEnabled = hoverEnabled || isPressEnabled;\n\n const paddingProps = genPaddingProps({\n Left: paddingLeft ?? padding,\n Right: paddingRight ?? padding,\n Top: paddingTop ?? padding,\n Bottom: paddingBottom ?? padding,\n });\n // порядок отрисовки рамки задаётся её положением среди детей карточки: последним потомком — поверх всего\n // содержимого, первым — под спозиционированным, чтобы выходящие за карточку абсолютно спозиционированные\n // элементы (например, картинки) перекрывали рамку, а не наоборот\n const isBorderBelowContent = borderLayer === 'below-content';\n const borderElement = <div className={styles.borderElement} />;\n const radiusProps = genBorderRadiusProp({\n borderRadius,\n borderBottomLeftRadius,\n borderBottomRightRadius,\n borderTopLeftRadius,\n borderTopRightRadius,\n });\n\n return (\n <DisabledContext.Provider value={forceDisabled || !!disabled}>\n <Element\n {...restProps}\n {...(ref ? { ref } : {})}\n {...activationProps}\n style={{ ...paddingProps, ...radiusProps }}\n className={classnames(\n styles.card,\n styles[`card-style-${style}`],\n !!hoverStyle && styles[`card-hover-style-${hoverStyle}`],\n !!borderStyle && styles[`card-border-style-${borderStyle}`],\n styles[`card-shadow-${shadow}`],\n {\n [styles.cardStretched]: stretched,\n [styles.cardVerticalStretched]: verticalStretched,\n [styles.cardPressEnabled]: isPressEnabled,\n [styles.cardHoverEnabled]: isHoverEnabled,\n [styles.increaseShadow]: increaseShadow,\n [styles.cardDisabled]: !!disabled,\n [styles.borderSelected]: borderWidth === 'selected',\n [styles.borderDefault]: borderWidth === 'default',\n }\n )}\n >\n {isBorderBelowContent && borderElement}\n <IconDynamic stretched hoverEnabled={isHoverEnabled} pressEnabled={isPressEnabled}>\n <div className={styles.flexContainer}>\n <TextDynamic\n stretched\n className={classnames({\n [styles.layoutVertical]: direction === 'column',\n [styles.layoutHorizontal]: direction === 'row',\n })}\n >\n <CardContext.Provider value={{ direction: direction ?? 'row', borderStyle }}>\n {children}\n </CardContext.Provider>\n </TextDynamic>\n </div>\n </IconDynamic>\n {!isBorderBelowContent && borderElement}\n </Element>\n </DisabledContext.Provider>\n );\n};\n\nconst CardComponent = forwardRef(CardForwardRefRenderFunc) as unknown as PolymorphicComponentWithRef<\n CardProps,\n 'div'\n> & {\n Segment: PolymorphicComponentWithRef<CardSegmentProps, 'div'>;\n Between: FC<PropsWithChildren>;\n};\n\nCardComponent.Segment = CardSegment;\nCardComponent.Between = Between;\n\nexport const Card = enrichWithSkeleton(CardComponent, CardSkeleton);\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","sources":["src/Card.tsx"],"sourcesContent":["import { type CSSProperties, forwardRef, type FC, type PropsWithChildren } from 'react';\nimport classnames from 'classnames';\n\nimport { DisabledContext, useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { Between } from '@hh.ru/magritte-ui-card/Between';\nimport { CardSegment, type CardSegmentProps } from '@hh.ru/magritte-ui-card/CardSegment';\nimport { CardSkeleton } from '@hh.ru/magritte-ui-card/Skeleton';\nimport { CardContext } from '@hh.ru/magritte-ui-card/cardContext';\nimport type { CardBorderRadius, CardPadding, CardProps } from '@hh.ru/magritte-ui-card/types';\nimport { useCardActivation } from '@hh.ru/magritte-ui-card/useCardActivation';\nimport { IconDynamic } from '@hh.ru/magritte-ui-icon';\nimport { enrichWithSkeleton } from '@hh.ru/magritte-ui-skeleton';\nimport { TextDynamic } from '@hh.ru/magritte-ui-typography';\n\nimport styles from './card.less';\n\nconst borderSides = ['top-left', 'top-right', 'bottom-right', 'bottom-left'] as const;\n\nconst genBorderRadiusProp = (radiusProps: {\n borderRadius: CardBorderRadius;\n borderTopLeftRadius?: CardBorderRadius;\n borderTopRightRadius?: CardBorderRadius;\n borderBottomLeftRadius?: CardBorderRadius;\n borderBottomRightRadius?: CardBorderRadius;\n}): CSSProperties => {\n const isHalfHeight = Object.values(radiusProps).includes('halfHeight');\n const borderRadius = isHalfHeight ? 99999 : radiusProps.borderRadius;\n const { borderTopLeftRadius, borderTopRightRadius, borderBottomLeftRadius, borderBottomRightRadius } =\n Object.fromEntries(\n Object.entries(radiusProps)\n .map((radius) => (isHalfHeight ? [radius[0], undefined] : radius))\n .filter((radius) => radius[1] !== undefined)\n ) as typeof radiusProps;\n\n const radius = [borderTopLeftRadius, borderTopRightRadius, borderBottomRightRadius, borderBottomLeftRadius];\n\n const radiusVariables = radius.reduce(\n (acc, val, index) =>\n val === undefined\n ? acc\n : {\n ...acc,\n [`--magritte-card-border-radius-${borderSides[index]}`]: `${val}px`,\n },\n {}\n );\n\n return {\n '--magritte-card-border-radius': `${borderRadius}px`,\n ...radiusVariables,\n } as CSSProperties;\n};\n\nconst genPaddingProps = (paddingProps: {\n Left?: CardPadding;\n Right?: CardPadding;\n Top?: CardPadding;\n Bottom?: CardPadding;\n}) =>\n Object.entries(paddingProps).reduce<Record<string, number>>(\n (acc, [key, value]) => (value !== undefined ? { ...acc, [`padding${key}`]: value } : acc),\n {}\n );\n\nconst CardForwardRefRenderFunc: PolymorphicForwardRefRenderFunc<CardProps, 'div'> = (\n {\n Element = 'div',\n stretched = false,\n verticalStretched = false,\n hoverEnabled = false,\n pressEnabled = false,\n shadow = 'level-0',\n increaseShadow = false,\n onClick,\n style = 'primary',\n hoverStyle,\n disabled = false,\n padding = 0,\n paddingLeft,\n paddingRight,\n paddingTop,\n paddingBottom,\n borderRadius = 0,\n borderTopLeftRadius,\n borderTopRightRadius,\n borderBottomLeftRadius,\n borderBottomRightRadius,\n children,\n borderStyle,\n borderWidth = 'none',\n borderLayer = 'above-content',\n direction,\n ...restProps\n },\n ref\n) => {\n const forceDisabled = useDisabled();\n const activationProps = useCardActivation({\n onClick,\n disabled,\n hasExplicitRole: 'role' in restProps,\n hasExplicitTabIndex: 'tabIndex' in restProps,\n });\n const isPressEnabled = pressEnabled || !!onClick;\n const isHoverEnabled = hoverEnabled || isPressEnabled;\n\n const paddingProps = genPaddingProps({\n Left: paddingLeft ?? padding,\n Right: paddingRight ?? padding,\n Top: paddingTop ?? padding,\n Bottom: paddingBottom ?? padding,\n });\n // порядок отрисовки рамки задаётся её положением среди детей карточки: последним потомком — поверх всего\n // содержимого, первым — под спозиционированным, чтобы выходящие за карточку абсолютно спозиционированные\n // элементы (например, картинки) перекрывали рамку, а не наоборот\n const isBorderBelowContent = borderLayer === 'below-content';\n const borderElement = <div className={styles.borderElement} />;\n const radiusProps = genBorderRadiusProp({\n borderRadius,\n borderBottomLeftRadius,\n borderBottomRightRadius,\n borderTopLeftRadius,\n borderTopRightRadius,\n });\n\n return (\n <DisabledContext.Provider value={forceDisabled || !!disabled}>\n <Element\n {...restProps}\n {...(ref ? { ref } : {})}\n {...activationProps}\n style={{ ...paddingProps, ...radiusProps }}\n className={classnames(\n styles.card,\n styles[`card-style-${style}`],\n !!hoverStyle && styles[`card-hover-style-${hoverStyle}`],\n !!borderStyle && styles[`card-border-style-${borderStyle}`],\n styles[`card-shadow-${shadow}`],\n {\n [styles.cardStretched]: stretched,\n [styles.cardVerticalStretched]: verticalStretched,\n [styles.cardPressEnabled]: isPressEnabled,\n [styles.cardHoverEnabled]: isHoverEnabled,\n [styles.increaseShadow]: increaseShadow,\n [styles.cardDisabled]: !!disabled,\n [styles.borderSelected]: borderWidth === 'selected',\n [styles.borderDefault]: borderWidth === 'default',\n }\n )}\n >\n {isBorderBelowContent && borderElement}\n <IconDynamic stretched hoverEnabled={isHoverEnabled} pressEnabled={isPressEnabled}>\n <div className={styles.flexContainer}>\n <TextDynamic\n stretched\n className={classnames({\n [styles.layoutVertical]: direction === 'column',\n [styles.layoutHorizontal]: direction === 'row',\n })}\n >\n <CardContext.Provider value={{ direction: direction ?? 'row', borderStyle }}>\n {children}\n </CardContext.Provider>\n </TextDynamic>\n </div>\n </IconDynamic>\n {!isBorderBelowContent && borderElement}\n </Element>\n </DisabledContext.Provider>\n );\n};\n\nconst CardComponent = forwardRef(CardForwardRefRenderFunc) as unknown as PolymorphicComponentWithRef<\n CardProps,\n 'div'\n> & {\n Segment: PolymorphicComponentWithRef<CardSegmentProps, 'div'>;\n Between: FC<PropsWithChildren>;\n};\n\nCardComponent.Segment = CardSegment;\nCardComponent.Between = Between;\n\nexport const Card = enrichWithSkeleton(CardComponent, CardSkeleton);\n"],"names":["radius"],"mappings":"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"}
package/CardSegment.d.ts CHANGED
@@ -8,4 +8,4 @@ export type CardSegmentProps = FlexProps & {
8
8
  /** Обработчик клика по сегменту */
9
9
  onClick?: MouseEventHandler<HTMLElement>;
10
10
  };
11
- export declare const CardSegment: PolymorphicComponentWithRef<CardSegmentProps, "div">;
11
+ export declare const CardSegment: PolymorphicComponentWithRef<CardSegmentProps, 'div'>;
package/CardSegment.js CHANGED
@@ -6,22 +6,33 @@ import { DisabledContext } from '@hh.ru/magritte-common-use-disabled';
6
6
  import { useCardContext, CardContext } from './cardContext.js';
7
7
  import { useCardActivation } from './useCardActivation.js';
8
8
  import { Flex } from '@hh.ru/magritte-ui-layout';
9
- import { s as styles } from './card-Btnm12EM.js';
9
+ import { s as styles } from './card-DgIEckrx.js';
10
10
  import '@hh.ru/magritte-common-keyboard';
11
11
  import '@hh.ru/magritte-common-mouse';
12
12
 
13
- const CardSegmentRenderFunc = ({ children, disabled = false, interactive = false, onClick, direction = 'column', ...flexProps }, ref) => {
14
- const activationProps = useCardActivation({ onClick, disabled: !!disabled });
15
- const { borderStyle } = useCardContext();
16
- return (
13
+ const CardSegmentRenderFunc = ({ children, disabled = false, interactive = false, onClick, direction = "column", ...flexProps }, ref) => {
14
+ const activationProps = useCardActivation({ onClick, disabled: !!disabled });
15
+ const { borderStyle } = useCardContext();
16
+ return (
17
17
  // @ts-expect-error — generic polymorphic props forwarding between nested polymorphic components
18
- jsx(Flex, { ...flexProps, ...(ref ? { ref: ref } : {}), direction: direction, className: classnames(styles.cardSegment, {
19
- [styles.interactive]: interactive || !!onClick,
20
- [styles.pressEnabled]: !!onClick,
21
- [styles.layoutHorizontal]: direction !== 'column',
22
- [styles.layoutVertical]: direction === 'column',
23
- [styles.segmentDisabled]: !!activationProps['aria-disabled'],
24
- }), ...activationProps, children: jsx(DisabledContext.Provider, { value: !!activationProps['aria-disabled'], children: jsx(CardContext.Provider, { value: { direction: direction === 'column' ? 'column' : 'row', borderStyle }, children: children }) }) }));
18
+ /* @__PURE__ */ jsx(
19
+ Flex,
20
+ {
21
+ ...flexProps,
22
+ ...ref ? { ref } : {},
23
+ direction,
24
+ className: classnames(styles.cardSegment, {
25
+ [styles.interactive]: interactive || !!onClick,
26
+ [styles.pressEnabled]: !!onClick,
27
+ [styles.layoutHorizontal]: direction !== "column",
28
+ [styles.layoutVertical]: direction === "column",
29
+ [styles.segmentDisabled]: !!activationProps["aria-disabled"]
30
+ }),
31
+ ...activationProps,
32
+ children: /* @__PURE__ */ jsx(DisabledContext.Provider, { value: !!activationProps["aria-disabled"], children: /* @__PURE__ */ jsx(CardContext.Provider, { value: { direction: direction === "column" ? "column" : "row", borderStyle }, children }) })
33
+ }
34
+ )
35
+ );
25
36
  };
26
37
  const CardSegment = forwardRef(CardSegmentRenderFunc);
27
38
 
@@ -1 +1 @@
1
- {"version":3,"file":"CardSegment.js","sources":["src/CardSegment.tsx"],"sourcesContent":["import { forwardRef, type MouseEventHandler, type Ref } from 'react';\nimport classNames from 'classnames';\n\nimport { DisabledContext } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { CardContext, useCardContext } from '@hh.ru/magritte-ui-card/cardContext';\nimport { useCardActivation } from '@hh.ru/magritte-ui-card/useCardActivation';\nimport { type FlexProps, Flex } from '@hh.ru/magritte-ui-layout';\n\nimport styles from './card.less';\n\nexport type CardSegmentProps = FlexProps & {\n /** Включает реакцию сегмента на hover. Реакция на нажатие включается если у карточки задан pressEnabled. Автоматически включается при наличии onClick на сегменте */\n interactive?: boolean;\n disabled?: boolean;\n /** Обработчик клика по сегменту */\n onClick?: MouseEventHandler<HTMLElement>;\n};\n\nconst CardSegmentRenderFunc: PolymorphicForwardRefRenderFunc<CardSegmentProps, 'div'> = (\n { children, disabled = false, interactive = false, onClick, direction = 'column', ...flexProps },\n ref\n) => {\n const activationProps = useCardActivation({ onClick, disabled: !!disabled });\n const { borderStyle } = useCardContext();\n\n return (\n // @ts-expect-error — generic polymorphic props forwarding between nested polymorphic components\n <Flex\n {...flexProps}\n {...(ref ? { ref: ref as Ref<never> } : {})}\n direction={direction}\n className={classNames(styles.cardSegment, {\n [styles.interactive]: interactive || !!onClick,\n [styles.pressEnabled]: !!onClick,\n [styles.layoutHorizontal]: direction !== 'column',\n [styles.layoutVertical]: direction === 'column',\n [styles.segmentDisabled]: !!activationProps['aria-disabled'],\n })}\n {...activationProps}\n >\n <DisabledContext.Provider value={!!activationProps['aria-disabled']}>\n <CardContext.Provider value={{ direction: direction === 'column' ? 'column' : 'row', borderStyle }}>\n {children}\n </CardContext.Provider>\n </DisabledContext.Provider>\n </Flex>\n );\n};\n\nexport const CardSegment = forwardRef(CardSegmentRenderFunc) as PolymorphicComponentWithRef<CardSegmentProps, 'div'>;\n"],"names":["_jsx","classNames"],"mappings":";;;;;;;;;;;AAmBA,MAAM,qBAAqB,GAA6D,CACpF,EAAE,QAAQ,EAAE,QAAQ,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE,OAAO,EAAE,SAAS,GAAG,QAAQ,EAAE,GAAG,SAAS,EAAE,EAChG,GAAG,KACH;AACA,IAAA,MAAM,eAAe,GAAG,iBAAiB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7E,IAAA,MAAM,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,CAAC;IAEzC;;AAEI,IAAAA,GAAA,CAAC,IAAI,EAAA,EAAA,GACG,SAAS,EAAA,IACR,GAAG,GAAG,EAAE,GAAG,EAAE,GAAiB,EAAE,GAAG,EAAE,GAC1C,SAAS,EAAE,SAAS,EACpB,SAAS,EAAEC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE;YACtC,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,IAAI,CAAC,CAAC,OAAO;AAC9C,YAAA,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,OAAO;AAChC,YAAA,CAAC,MAAM,CAAC,gBAAgB,GAAG,SAAS,KAAK,QAAQ;AACjD,YAAA,CAAC,MAAM,CAAC,cAAc,GAAG,SAAS,KAAK,QAAQ;YAC/C,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC;SAC/D,CAAC,EAAA,GACE,eAAe,EAEnB,QAAA,EAAAD,GAAA,CAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,YAC/DA,GAAC,CAAA,WAAW,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,KAAK,QAAQ,GAAG,QAAQ,GAAG,KAAK,EAAE,WAAW,EAAE,EAAA,QAAA,EAC7F,QAAQ,EACU,CAAA,EAAA,CACA,EACxB,CAAA,EACT;AACN,CAAC,CAAC;MAEW,WAAW,GAAG,UAAU,CAAC,qBAAqB;;;;"}
1
+ {"version":3,"file":"CardSegment.js","sources":["src/CardSegment.tsx"],"sourcesContent":["import { forwardRef, type MouseEventHandler, type Ref } from 'react';\nimport classNames from 'classnames';\n\nimport { DisabledContext } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { CardContext, useCardContext } from '@hh.ru/magritte-ui-card/cardContext';\nimport { useCardActivation } from '@hh.ru/magritte-ui-card/useCardActivation';\nimport { type FlexProps, Flex } from '@hh.ru/magritte-ui-layout';\n\nimport styles from './card.less';\n\nexport type CardSegmentProps = FlexProps & {\n /** Включает реакцию сегмента на hover. Реакция на нажатие включается если у карточки задан pressEnabled. Автоматически включается при наличии onClick на сегменте */\n interactive?: boolean;\n disabled?: boolean;\n /** Обработчик клика по сегменту */\n onClick?: MouseEventHandler<HTMLElement>;\n};\n\nconst CardSegmentRenderFunc: PolymorphicForwardRefRenderFunc<CardSegmentProps, 'div'> = (\n { children, disabled = false, interactive = false, onClick, direction = 'column', ...flexProps },\n ref\n) => {\n const activationProps = useCardActivation({ onClick, disabled: !!disabled });\n const { borderStyle } = useCardContext();\n\n return (\n // @ts-expect-error — generic polymorphic props forwarding between nested polymorphic components\n <Flex\n {...flexProps}\n {...(ref ? { ref: ref as Ref<never> } : {})}\n direction={direction}\n className={classNames(styles.cardSegment, {\n [styles.interactive]: interactive || !!onClick,\n [styles.pressEnabled]: !!onClick,\n [styles.layoutHorizontal]: direction !== 'column',\n [styles.layoutVertical]: direction === 'column',\n [styles.segmentDisabled]: !!activationProps['aria-disabled'],\n })}\n {...activationProps}\n >\n <DisabledContext.Provider value={!!activationProps['aria-disabled']}>\n <CardContext.Provider value={{ direction: direction === 'column' ? 'column' : 'row', borderStyle }}>\n {children}\n </CardContext.Provider>\n </DisabledContext.Provider>\n </Flex>\n );\n};\n\nexport const CardSegment = forwardRef(CardSegmentRenderFunc) as PolymorphicComponentWithRef<CardSegmentProps, 'div'>;\n"],"names":["classNames"],"mappings":";;;;;;;;;;;AAmBA,MAAM,qBAAkF,GAAA,CACpF,EAAE,QAAA,EAAU,WAAW,KAAO,EAAA,WAAA,GAAc,KAAO,EAAA,OAAA,EAAS,SAAY,GAAA,QAAA,EAAU,GAAG,SAAA,IACrF,GACC,KAAA;AACD,EAAM,MAAA,eAAA,GAAkB,kBAAkB,EAAE,OAAA,EAAS,UAAU,CAAC,CAAC,UAAU,CAAA,CAAA;AAC3E,EAAM,MAAA,EAAE,WAAY,EAAA,GAAI,cAAe,EAAA,CAAA;AAEvC,EAAA;AAAA;AAAA,oBAEI,GAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACI,GAAG,SAAA;AAAA,QACH,GAAI,GAAA,GAAM,EAAE,GAAA,KAA2B,EAAC;AAAA,QACzC,SAAA;AAAA,QACA,SAAA,EAAWA,UAAW,CAAA,MAAA,CAAO,WAAa,EAAA;AAAA,UACtC,CAAC,MAAO,CAAA,WAAW,GAAG,WAAA,IAAe,CAAC,CAAC,OAAA;AAAA,UACvC,CAAC,MAAA,CAAO,YAAY,GAAG,CAAC,CAAC,OAAA;AAAA,UACzB,CAAC,MAAA,CAAO,gBAAgB,GAAG,SAAc,KAAA,QAAA;AAAA,UACzC,CAAC,MAAA,CAAO,cAAc,GAAG,SAAc,KAAA,QAAA;AAAA,UACvC,CAAC,MAAO,CAAA,eAAe,GAAG,CAAC,CAAC,gBAAgB,eAAe,CAAA;AAAA,SAC9D,CAAA;AAAA,QACA,GAAG,eAAA;AAAA,QAEJ,QAAA,kBAAA,GAAA,CAAC,eAAgB,CAAA,QAAA,EAAhB,EAAyB,KAAA,EAAO,CAAC,CAAC,eAAA,CAAgB,eAAe,CAAA,EAC9D,QAAC,kBAAA,GAAA,CAAA,WAAA,CAAY,UAAZ,EAAqB,KAAA,EAAO,EAAE,SAAA,EAAW,SAAc,KAAA,QAAA,GAAW,WAAW,KAAO,EAAA,WAAA,EAChF,EAAA,QAAA,EACL,CACJ,EAAA,CAAA;AAAA,OAAA;AAAA,KACJ;AAAA,IAAA;AAER,CAAA,CAAA;AAEa,MAAA,WAAA,GAAc,WAAW,qBAAqB;;;;"}
package/Skeleton.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { CardProps } from '@hh.ru/magritte-ui-card/types';
1
+ import { CardProps } from './types';
2
2
  import { IncompleteSkeletonComponent } from '@hh.ru/magritte-ui-skeleton';
3
3
  export declare const CardSkeleton: IncompleteSkeletonComponent<CardProps>;
package/Skeleton.js CHANGED
@@ -3,14 +3,35 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef } from 'react';
4
4
  import { Skeleton } from '@hh.ru/magritte-ui-skeleton';
5
5
 
6
- const CardSkeleton = forwardRef(({ Component: Card,
7
- // skeleton props
8
- width, height,
9
- // borderRadius остается в cardProps
10
- inline, additionalClass, loading, ...cardProps }, ref) => {
11
- return (jsx(Skeleton, { width: cardProps.stretched ? `100%` : width, height: cardProps.verticalStretched ? `100%` : height, borderRadius: cardProps.borderRadius, borderTopLeftRadius: cardProps.borderTopLeftRadius, borderTopRightRadius: cardProps.borderTopRightRadius, borderBottomLeftRadius: cardProps.borderBottomLeftRadius, borderBottomRightRadius: cardProps.borderBottomRightRadius, loading: loading, children: jsx(Card, { ref: ref, ...cardProps }) }));
12
- });
13
- CardSkeleton.displayName = 'CardSkeleton';
6
+ const CardSkeleton = forwardRef(
7
+ ({
8
+ Component: Card,
9
+ // skeleton props
10
+ width,
11
+ height,
12
+ // borderRadius остается в cardProps
13
+ inline,
14
+ additionalClass,
15
+ loading,
16
+ ...cardProps
17
+ }, ref) => {
18
+ return /* @__PURE__ */ jsx(
19
+ Skeleton,
20
+ {
21
+ width: cardProps.stretched ? `100%` : width,
22
+ height: cardProps.verticalStretched ? `100%` : height,
23
+ borderRadius: cardProps.borderRadius,
24
+ borderTopLeftRadius: cardProps.borderTopLeftRadius,
25
+ borderTopRightRadius: cardProps.borderTopRightRadius,
26
+ borderBottomLeftRadius: cardProps.borderBottomLeftRadius,
27
+ borderBottomRightRadius: cardProps.borderBottomRightRadius,
28
+ loading,
29
+ children: /* @__PURE__ */ jsx(Card, { ref, ...cardProps })
30
+ }
31
+ );
32
+ }
33
+ );
34
+ CardSkeleton.displayName = "CardSkeleton";
14
35
 
15
36
  export { CardSkeleton };
16
37
  //# sourceMappingURL=Skeleton.js.map
package/Skeleton.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.js","sources":["src/Skeleton.tsx"],"sourcesContent":["import { forwardRef } from 'react';\n\nimport { CardProps } from '@hh.ru/magritte-ui-card/types';\nimport { IncompleteSkeletonComponent, IncompleteSkeletonPropsWithRef, Skeleton } from '@hh.ru/magritte-ui-skeleton';\n\nexport const CardSkeleton = forwardRef<HTMLDivElement, IncompleteSkeletonPropsWithRef<CardProps, HTMLDivElement>>(\n (\n {\n Component: Card,\n\n // skeleton props\n width,\n height,\n // borderRadius остается в cardProps\n inline,\n additionalClass,\n loading,\n\n ...cardProps\n },\n ref\n ) => {\n return (\n <Skeleton\n width={cardProps.stretched ? `100%` : width}\n height={cardProps.verticalStretched ? `100%` : height}\n borderRadius={cardProps.borderRadius}\n borderTopLeftRadius={cardProps.borderTopLeftRadius}\n borderTopRightRadius={cardProps.borderTopRightRadius}\n borderBottomLeftRadius={cardProps.borderBottomLeftRadius}\n borderBottomRightRadius={cardProps.borderBottomRightRadius}\n loading={loading}\n >\n <Card ref={ref} {...cardProps} />\n </Skeleton>\n );\n }\n) as IncompleteSkeletonComponent<CardProps>;\n\nCardSkeleton.displayName = 'CardSkeleton';\n"],"names":["_jsx"],"mappings":";;;;AAKa,MAAA,YAAY,GAAG,UAAU,CAClC,CACI,EACI,SAAS,EAAE,IAAI;AAEf;AACA,KAAK,EACL,MAAM;AACN;AACA,MAAM,EACN,eAAe,EACf,OAAO,EAEP,GAAG,SAAS,EACf,EACD,GAAG,KACH;AACA,IAAA,QACIA,GAAC,CAAA,QAAQ,EACL,EAAA,KAAK,EAAE,SAAS,CAAC,SAAS,GAAG,CAAA,IAAA,CAAM,GAAG,KAAK,EAC3C,MAAM,EAAE,SAAS,CAAC,iBAAiB,GAAG,CAAM,IAAA,CAAA,GAAG,MAAM,EACrD,YAAY,EAAE,SAAS,CAAC,YAAY,EACpC,mBAAmB,EAAE,SAAS,CAAC,mBAAmB,EAClD,oBAAoB,EAAE,SAAS,CAAC,oBAAoB,EACpD,sBAAsB,EAAE,SAAS,CAAC,sBAAsB,EACxD,uBAAuB,EAAE,SAAS,CAAC,uBAAuB,EAC1D,OAAO,EAAE,OAAO,YAEhBA,GAAC,CAAA,IAAI,EAAC,EAAA,GAAG,EAAE,GAAG,EAAA,GAAM,SAAS,EAAI,CAAA,EAAA,CAC1B,EACb;AACN,CAAC,EACuC;AAE5C,YAAY,CAAC,WAAW,GAAG,cAAc;;;;"}
1
+ {"version":3,"file":"Skeleton.js","sources":["src/Skeleton.tsx"],"sourcesContent":["import { forwardRef } from 'react';\n\nimport { CardProps } from '@hh.ru/magritte-ui-card/types';\nimport { IncompleteSkeletonComponent, IncompleteSkeletonPropsWithRef, Skeleton } from '@hh.ru/magritte-ui-skeleton';\n\nexport const CardSkeleton = forwardRef<HTMLDivElement, IncompleteSkeletonPropsWithRef<CardProps, HTMLDivElement>>(\n (\n {\n Component: Card,\n\n // skeleton props\n width,\n height,\n // borderRadius остается в cardProps\n inline,\n additionalClass,\n loading,\n\n ...cardProps\n },\n ref\n ) => {\n return (\n <Skeleton\n width={cardProps.stretched ? `100%` : width}\n height={cardProps.verticalStretched ? `100%` : height}\n borderRadius={cardProps.borderRadius}\n borderTopLeftRadius={cardProps.borderTopLeftRadius}\n borderTopRightRadius={cardProps.borderTopRightRadius}\n borderBottomLeftRadius={cardProps.borderBottomLeftRadius}\n borderBottomRightRadius={cardProps.borderBottomRightRadius}\n loading={loading}\n >\n <Card ref={ref} {...cardProps} />\n </Skeleton>\n );\n }\n) as IncompleteSkeletonComponent<CardProps>;\n\nCardSkeleton.displayName = 'CardSkeleton';\n"],"names":[],"mappings":";;;;AAKO,MAAM,YAAe,GAAA,UAAA;AAAA,EACxB,CACI;AAAA,IACI,SAAW,EAAA,IAAA;AAAA;AAAA,IAGX,KAAA;AAAA,IACA,MAAA;AAAA;AAAA,IAEA,MAAA;AAAA,IACA,eAAA;AAAA,IACA,OAAA;AAAA,IAEA,GAAG,SAAA;AAAA,KAEP,GACC,KAAA;AACD,IACI,uBAAA,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACG,KAAA,EAAO,SAAU,CAAA,SAAA,GAAY,CAAS,IAAA,CAAA,GAAA,KAAA;AAAA,QACtC,MAAA,EAAQ,SAAU,CAAA,iBAAA,GAAoB,CAAS,IAAA,CAAA,GAAA,MAAA;AAAA,QAC/C,cAAc,SAAU,CAAA,YAAA;AAAA,QACxB,qBAAqB,SAAU,CAAA,mBAAA;AAAA,QAC/B,sBAAsB,SAAU,CAAA,oBAAA;AAAA,QAChC,wBAAwB,SAAU,CAAA,sBAAA;AAAA,QAClC,yBAAyB,SAAU,CAAA,uBAAA;AAAA,QACnC,OAAA;AAAA,QAEA,QAAC,kBAAA,GAAA,CAAA,IAAA,EAAA,EAAK,GAAW,EAAA,GAAG,SAAW,EAAA,CAAA;AAAA,OAAA;AAAA,KACnC,CAAA;AAAA,GAER;AACJ,EAAA;AAEA,YAAA,CAAa,WAAc,GAAA,cAAA;;;;"}
@@ -0,0 +1,5 @@
1
+ import './index.css';
2
+ var styles = {"card":"magritte-card___bhGKz_8-7-6","card-segment":"magritte-card-segment___7LjJe_8-7-6","cardSegment":"magritte-card-segment___7LjJe_8-7-6","layout-vertical":"magritte-layout-vertical___9V-h-_8-7-6","layoutVertical":"magritte-layout-vertical___9V-h-_8-7-6","layout-horizontal":"magritte-layout-horizontal___HUAK3_8-7-6","layoutHorizontal":"magritte-layout-horizontal___HUAK3_8-7-6","border-element":"magritte-border-element___x7sZL_8-7-6","borderElement":"magritte-border-element___x7sZL_8-7-6","card-press-enabled":"magritte-card-press-enabled___kXfCl_8-7-6","cardPressEnabled":"magritte-card-press-enabled___kXfCl_8-7-6","interactive":"magritte-interactive___rmhl9_8-7-6","press-enabled":"magritte-press-enabled___dc53v_8-7-6","pressEnabled":"magritte-press-enabled___dc53v_8-7-6","card-disabled":"magritte-card-disabled___SMFnB_8-7-6","cardDisabled":"magritte-card-disabled___SMFnB_8-7-6","segment-disabled":"magritte-segment-disabled___FlWSu_8-7-6","segmentDisabled":"magritte-segment-disabled___FlWSu_8-7-6","card-stretched":"magritte-card-stretched___0Uc0J_8-7-6","cardStretched":"magritte-card-stretched___0Uc0J_8-7-6","card-vertical-stretched":"magritte-card-vertical-stretched___Lrxmc_8-7-6","cardVerticalStretched":"magritte-card-vertical-stretched___Lrxmc_8-7-6","border-selected":"magritte-border-selected___bGxVg_8-7-6","borderSelected":"magritte-border-selected___bGxVg_8-7-6","border-default":"magritte-border-default___eT8Lg_8-7-6","borderDefault":"magritte-border-default___eT8Lg_8-7-6","card-hover-enabled":"magritte-card-hover-enabled___-wolU_8-7-6","cardHoverEnabled":"magritte-card-hover-enabled___-wolU_8-7-6","card-shadow-level-3":"magritte-card-shadow-level-3___R34TB_8-7-6","cardShadowLevel3":"magritte-card-shadow-level-3___R34TB_8-7-6","card-shadow-level-2":"magritte-card-shadow-level-2___BgHDx_8-7-6","cardShadowLevel2":"magritte-card-shadow-level-2___BgHDx_8-7-6","card-shadow-level-1":"magritte-card-shadow-level-1___8-39e_8-7-6","cardShadowLevel1":"magritte-card-shadow-level-1___8-39e_8-7-6","card-shadow-level-0":"magritte-card-shadow-level-0___RNbQK_8-7-6","cardShadowLevel0":"magritte-card-shadow-level-0___RNbQK_8-7-6","increase-shadow":"magritte-increase-shadow___Lvfmm_8-7-6","increaseShadow":"magritte-increase-shadow___Lvfmm_8-7-6","card-style-primary":"magritte-card-style-primary___eZ6aX_8-7-6","cardStylePrimary":"magritte-card-style-primary___eZ6aX_8-7-6","card-style-secondary":"magritte-card-style-secondary___VmTqm_8-7-6","cardStyleSecondary":"magritte-card-style-secondary___VmTqm_8-7-6","card-style-tertiary":"magritte-card-style-tertiary___fE-jW_8-7-6","cardStyleTertiary":"magritte-card-style-tertiary___fE-jW_8-7-6","card-style-accent-secondary":"magritte-card-style-accent-secondary___Ra0PD_8-7-6","cardStyleAccentSecondary":"magritte-card-style-accent-secondary___Ra0PD_8-7-6","card-style-accent":"magritte-card-style-accent___Gd2T5_8-7-6","cardStyleAccent":"magritte-card-style-accent___Gd2T5_8-7-6","card-style-positive-secondary":"magritte-card-style-positive-secondary___BsXFI_8-7-6","cardStylePositiveSecondary":"magritte-card-style-positive-secondary___BsXFI_8-7-6","card-style-positive":"magritte-card-style-positive___4sgFq_8-7-6","cardStylePositive":"magritte-card-style-positive___4sgFq_8-7-6","card-style-negative-secondary":"magritte-card-style-negative-secondary___lN7i3_8-7-6","cardStyleNegativeSecondary":"magritte-card-style-negative-secondary___lN7i3_8-7-6","card-style-negative":"magritte-card-style-negative___Fk6xX_8-7-6","cardStyleNegative":"magritte-card-style-negative___Fk6xX_8-7-6","card-style-warning-secondary":"magritte-card-style-warning-secondary___m2Hpa_8-7-6","cardStyleWarningSecondary":"magritte-card-style-warning-secondary___m2Hpa_8-7-6","card-style-warning":"magritte-card-style-warning___NIuCV_8-7-6","cardStyleWarning":"magritte-card-style-warning___NIuCV_8-7-6","card-style-special-secondary":"magritte-card-style-special-secondary___oVULE_8-7-6","cardStyleSpecialSecondary":"magritte-card-style-special-secondary___oVULE_8-7-6","card-style-special":"magritte-card-style-special___GOdvY_8-7-6","cardStyleSpecial":"magritte-card-style-special___GOdvY_8-7-6","card-style-dreamy-secondary":"magritte-card-style-dreamy-secondary___8Wu4Z_8-7-6","cardStyleDreamySecondary":"magritte-card-style-dreamy-secondary___8Wu4Z_8-7-6","card-style-dreamy":"magritte-card-style-dreamy___-Az0l_8-7-6","cardStyleDreamy":"magritte-card-style-dreamy___-Az0l_8-7-6","card-style-lovely-secondary":"magritte-card-style-lovely-secondary___feuo0_8-7-6","cardStyleLovelySecondary":"magritte-card-style-lovely-secondary___feuo0_8-7-6","card-style-lovely":"magritte-card-style-lovely___fPKUi_8-7-6","cardStyleLovely":"magritte-card-style-lovely___fPKUi_8-7-6","card-style-vivid-secondary":"magritte-card-style-vivid-secondary___yqwVy_8-7-6","cardStyleVividSecondary":"magritte-card-style-vivid-secondary___yqwVy_8-7-6","card-style-vivid":"magritte-card-style-vivid___pmSCz_8-7-6","cardStyleVivid":"magritte-card-style-vivid___pmSCz_8-7-6","card-style-body":"magritte-card-style-body___TNxld_8-7-6","cardStyleBody":"magritte-card-style-body___TNxld_8-7-6","card-style-overlay":"magritte-card-style-overlay___urh3T_8-7-6","cardStyleOverlay":"magritte-card-style-overlay___urh3T_8-7-6","card-style-overlay-action":"magritte-card-style-overlay-action___-jVWT_8-7-6","cardStyleOverlayAction":"magritte-card-style-overlay-action___-jVWT_8-7-6","card-style-overlay-modal-action":"magritte-card-style-overlay-modal-action___z3trK_8-7-6","cardStyleOverlayModalAction":"magritte-card-style-overlay-modal-action___z3trK_8-7-6","card-style-overlay-bottom-sheet-action":"magritte-card-style-overlay-bottom-sheet-action___0PnSE_8-7-6","cardStyleOverlayBottomSheetAction":"magritte-card-style-overlay-bottom-sheet-action___0PnSE_8-7-6","card-style-overlay-viewer":"magritte-card-style-overlay-viewer___TdHGx_8-7-6","cardStyleOverlayViewer":"magritte-card-style-overlay-viewer___TdHGx_8-7-6","card-style-overlay-toolbar":"magritte-card-style-overlay-toolbar___KWyFM_8-7-6","cardStyleOverlayToolbar":"magritte-card-style-overlay-toolbar___KWyFM_8-7-6","card-style-transparent":"magritte-card-style-transparent___1h3h6_8-7-6","cardStyleTransparent":"magritte-card-style-transparent___1h3h6_8-7-6","card-style-constant":"magritte-card-style-constant___UluNp_8-7-6","cardStyleConstant":"magritte-card-style-constant___UluNp_8-7-6","card-style-constant-secondary":"magritte-card-style-constant-secondary___5HctC_8-7-6","cardStyleConstantSecondary":"magritte-card-style-constant-secondary___5HctC_8-7-6","card-style-inverse":"magritte-card-style-inverse___HWOHp_8-7-6","cardStyleInverse":"magritte-card-style-inverse___HWOHp_8-7-6","card-style-inverse-secondary":"magritte-card-style-inverse-secondary___3EIdn_8-7-6","cardStyleInverseSecondary":"magritte-card-style-inverse-secondary___3EIdn_8-7-6","card-hover-style-primary":"magritte-card-hover-style-primary___VgPLn_8-7-6","cardHoverStylePrimary":"magritte-card-hover-style-primary___VgPLn_8-7-6","card-hover-style-secondary":"magritte-card-hover-style-secondary___NQCxT_8-7-6","cardHoverStyleSecondary":"magritte-card-hover-style-secondary___NQCxT_8-7-6","card-hover-style-tertiary":"magritte-card-hover-style-tertiary___Hrgqb_8-7-6","cardHoverStyleTertiary":"magritte-card-hover-style-tertiary___Hrgqb_8-7-6","card-hover-style-accent-secondary":"magritte-card-hover-style-accent-secondary___o5URO_8-7-6","cardHoverStyleAccentSecondary":"magritte-card-hover-style-accent-secondary___o5URO_8-7-6","card-hover-style-accent":"magritte-card-hover-style-accent___n8Lb4_8-7-6","cardHoverStyleAccent":"magritte-card-hover-style-accent___n8Lb4_8-7-6","card-hover-style-positive-secondary":"magritte-card-hover-style-positive-secondary___Aw634_8-7-6","cardHoverStylePositiveSecondary":"magritte-card-hover-style-positive-secondary___Aw634_8-7-6","card-hover-style-positive":"magritte-card-hover-style-positive___zQ7MM_8-7-6","cardHoverStylePositive":"magritte-card-hover-style-positive___zQ7MM_8-7-6","card-hover-style-negative-secondary":"magritte-card-hover-style-negative-secondary___V7gmt_8-7-6","cardHoverStyleNegativeSecondary":"magritte-card-hover-style-negative-secondary___V7gmt_8-7-6","card-hover-style-negative":"magritte-card-hover-style-negative___1cL78_8-7-6","cardHoverStyleNegative":"magritte-card-hover-style-negative___1cL78_8-7-6","card-hover-style-warning-secondary":"magritte-card-hover-style-warning-secondary___4knLA_8-7-6","cardHoverStyleWarningSecondary":"magritte-card-hover-style-warning-secondary___4knLA_8-7-6","card-hover-style-warning":"magritte-card-hover-style-warning___Fw34b_8-7-6","cardHoverStyleWarning":"magritte-card-hover-style-warning___Fw34b_8-7-6","card-hover-style-special-secondary":"magritte-card-hover-style-special-secondary___ImyvT_8-7-6","cardHoverStyleSpecialSecondary":"magritte-card-hover-style-special-secondary___ImyvT_8-7-6","card-hover-style-special":"magritte-card-hover-style-special___og9oA_8-7-6","cardHoverStyleSpecial":"magritte-card-hover-style-special___og9oA_8-7-6","card-hover-style-dreamy-secondary":"magritte-card-hover-style-dreamy-secondary___8SOfV_8-7-6","cardHoverStyleDreamySecondary":"magritte-card-hover-style-dreamy-secondary___8SOfV_8-7-6","card-hover-style-dreamy":"magritte-card-hover-style-dreamy___9sxP7_8-7-6","cardHoverStyleDreamy":"magritte-card-hover-style-dreamy___9sxP7_8-7-6","card-hover-style-lovely-secondary":"magritte-card-hover-style-lovely-secondary___n2BrG_8-7-6","cardHoverStyleLovelySecondary":"magritte-card-hover-style-lovely-secondary___n2BrG_8-7-6","card-hover-style-lovely":"magritte-card-hover-style-lovely___Ml-R2_8-7-6","cardHoverStyleLovely":"magritte-card-hover-style-lovely___Ml-R2_8-7-6","card-hover-style-vivid-secondary":"magritte-card-hover-style-vivid-secondary___s4GVf_8-7-6","cardHoverStyleVividSecondary":"magritte-card-hover-style-vivid-secondary___s4GVf_8-7-6","card-hover-style-vivid":"magritte-card-hover-style-vivid___qyl-R_8-7-6","cardHoverStyleVivid":"magritte-card-hover-style-vivid___qyl-R_8-7-6","card-hover-style-body":"magritte-card-hover-style-body___pimB3_8-7-6","cardHoverStyleBody":"magritte-card-hover-style-body___pimB3_8-7-6","card-hover-style-overlay":"magritte-card-hover-style-overlay___rAPpl_8-7-6","cardHoverStyleOverlay":"magritte-card-hover-style-overlay___rAPpl_8-7-6","card-hover-style-overlay-action":"magritte-card-hover-style-overlay-action___6BpQw_8-7-6","cardHoverStyleOverlayAction":"magritte-card-hover-style-overlay-action___6BpQw_8-7-6","card-hover-style-overlay-modal-action":"magritte-card-hover-style-overlay-modal-action___dcC77_8-7-6","cardHoverStyleOverlayModalAction":"magritte-card-hover-style-overlay-modal-action___dcC77_8-7-6","card-hover-style-overlay-bottom-sheet-action":"magritte-card-hover-style-overlay-bottom-sheet-action___KCUtT_8-7-6","cardHoverStyleOverlayBottomSheetAction":"magritte-card-hover-style-overlay-bottom-sheet-action___KCUtT_8-7-6","card-hover-style-overlay-viewer":"magritte-card-hover-style-overlay-viewer___f5IDi_8-7-6","cardHoverStyleOverlayViewer":"magritte-card-hover-style-overlay-viewer___f5IDi_8-7-6","card-hover-style-overlay-toolbar":"magritte-card-hover-style-overlay-toolbar___wkaI6_8-7-6","cardHoverStyleOverlayToolbar":"magritte-card-hover-style-overlay-toolbar___wkaI6_8-7-6","card-hover-style-transparent":"magritte-card-hover-style-transparent___zXQGl_8-7-6","cardHoverStyleTransparent":"magritte-card-hover-style-transparent___zXQGl_8-7-6","card-hover-style-constant":"magritte-card-hover-style-constant___uH6-E_8-7-6","cardHoverStyleConstant":"magritte-card-hover-style-constant___uH6-E_8-7-6","card-hover-style-constant-secondary":"magritte-card-hover-style-constant-secondary___0vxDi_8-7-6","cardHoverStyleConstantSecondary":"magritte-card-hover-style-constant-secondary___0vxDi_8-7-6","card-hover-style-inverse":"magritte-card-hover-style-inverse___Db1kM_8-7-6","cardHoverStyleInverse":"magritte-card-hover-style-inverse___Db1kM_8-7-6","card-hover-style-inverse-secondary":"magritte-card-hover-style-inverse-secondary___BT8I-_8-7-6","cardHoverStyleInverseSecondary":"magritte-card-hover-style-inverse-secondary___BT8I-_8-7-6","flex-container":"magritte-flex-container___CVFEY_8-7-6","flexContainer":"magritte-flex-container___CVFEY_8-7-6","card-border-style-neutral":"magritte-card-border-style-neutral___611b0_8-7-6","cardBorderStyleNeutral":"magritte-card-border-style-neutral___611b0_8-7-6","card-border-style-phantom":"magritte-card-border-style-phantom___ezFSC_8-7-6","cardBorderStylePhantom":"magritte-card-border-style-phantom___ezFSC_8-7-6","card-border-style-phantom-alt":"magritte-card-border-style-phantom-alt___2IkKz_8-7-6","cardBorderStylePhantomAlt":"magritte-card-border-style-phantom-alt___2IkKz_8-7-6","card-border-style-overlay":"magritte-card-border-style-overlay___yOj6r_8-7-6","cardBorderStyleOverlay":"magritte-card-border-style-overlay___yOj6r_8-7-6","card-border-style-accent":"magritte-card-border-style-accent___D-2Wb_8-7-6","cardBorderStyleAccent":"magritte-card-border-style-accent___D-2Wb_8-7-6","card-border-style-positive":"magritte-card-border-style-positive___to7aa_8-7-6","cardBorderStylePositive":"magritte-card-border-style-positive___to7aa_8-7-6","card-border-style-negative":"magritte-card-border-style-negative___IenCT_8-7-6","cardBorderStyleNegative":"magritte-card-border-style-negative___IenCT_8-7-6","card-border-style-warning":"magritte-card-border-style-warning___Fax0h_8-7-6","cardBorderStyleWarning":"magritte-card-border-style-warning___Fax0h_8-7-6","card-border-style-special":"magritte-card-border-style-special___mgV7r_8-7-6","cardBorderStyleSpecial":"magritte-card-border-style-special___mgV7r_8-7-6","card-border-style-dreamy":"magritte-card-border-style-dreamy___vYIow_8-7-6","cardBorderStyleDreamy":"magritte-card-border-style-dreamy___vYIow_8-7-6","card-border-style-lovely":"magritte-card-border-style-lovely___d1dyh_8-7-6","cardBorderStyleLovely":"magritte-card-border-style-lovely___d1dyh_8-7-6","card-border-style-vivid":"magritte-card-border-style-vivid___UYrn3_8-7-6","cardBorderStyleVivid":"magritte-card-border-style-vivid___UYrn3_8-7-6","card-border-style-neutral-heavy":"magritte-card-border-style-neutral-heavy___VR1s4_8-7-6","cardBorderStyleNeutralHeavy":"magritte-card-border-style-neutral-heavy___VR1s4_8-7-6","card-border-style-constant":"magritte-card-border-style-constant___4DDKM_8-7-6","cardBorderStyleConstant":"magritte-card-border-style-constant___4DDKM_8-7-6","card-border-style-constant-alt":"magritte-card-border-style-constant-alt___wfnBK_8-7-6","cardBorderStyleConstantAlt":"magritte-card-border-style-constant-alt___wfnBK_8-7-6","between":"magritte-between___kuRsE_8-7-6"};
3
+
4
+ export { styles as s };
5
+ //# sourceMappingURL=card-DgIEckrx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-DgIEckrx.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
package/cardContext.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { TokenColorStroke } from '@hh.ru/magritte-design-tokens/types';
2
- import type { LayoutDirection } from '@hh.ru/magritte-ui-card/types';
2
+ import type { LayoutDirection } from './types';
3
3
  interface CardContextValue {
4
4
  direction: LayoutDirection;
5
5
  borderStyle?: TokenColorStroke;
package/cardContext.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import './index.css';
2
2
  import { createContext, useContext } from 'react';
3
3
 
4
- const defaultValue = { direction: 'row' };
4
+ const defaultValue = { direction: "row" };
5
5
  const CardContext = createContext(defaultValue);
6
6
  const useCardContext = () => useContext(CardContext);
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"cardContext.js","sources":["src/cardContext.ts"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nimport type { TokenColorStroke } from '@hh.ru/magritte-design-tokens/types';\nimport type { LayoutDirection } from '@hh.ru/magritte-ui-card/types';\n\ninterface CardContextValue {\n direction: LayoutDirection;\n borderStyle?: TokenColorStroke;\n}\n\nconst defaultValue: CardContextValue = { direction: 'row' };\n\nexport const CardContext = createContext<CardContextValue>(defaultValue);\nexport const useCardContext = (): CardContextValue => useContext(CardContext);\n"],"names":[],"mappings":";;AAUA,MAAM,YAAY,GAAqB,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;MAE/C,WAAW,GAAG,aAAa,CAAmB,YAAY,EAAE;AAC5D,MAAA,cAAc,GAAG,MAAwB,UAAU,CAAC,WAAW;;;;"}
1
+ {"version":3,"file":"cardContext.js","sources":["src/cardContext.ts"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nimport type { TokenColorStroke } from '@hh.ru/magritte-design-tokens/types';\nimport type { LayoutDirection } from '@hh.ru/magritte-ui-card/types';\n\ninterface CardContextValue {\n direction: LayoutDirection;\n borderStyle?: TokenColorStroke;\n}\n\nconst defaultValue: CardContextValue = { direction: 'row' };\n\nexport const CardContext = createContext<CardContextValue>(defaultValue);\nexport const useCardContext = (): CardContextValue => useContext(CardContext);\n"],"names":[],"mappings":";;AAUA,MAAM,YAAA,GAAiC,EAAE,SAAA,EAAW,KAAM,EAAA,CAAA;AAE7C,MAAA,WAAA,GAAc,cAAgC,YAAY,EAAA;AAC1D,MAAA,cAAA,GAAiB,MAAwB,UAAA,CAAW,WAAW;;;;"}