@hh.ru/magritte-ui-link 7.1.6 → 7.1.8
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/CustomElementExample.js.map +1 -1
- package/Link.js +1 -1
- package/Link.js.map +1 -1
- package/VerticallyCenteredIcon.js +1 -1
- package/VerticallyCenteredIcon.js.map +1 -1
- package/index.css +1176 -1176
- package/package.json +8 -8
- package/types.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomElementExample.js","sources":["
|
|
1
|
+
{"version":3,"file":"CustomElementExample.js","sources":["src/CustomElementExample.tsx"],"sourcesContent":["import { MouseEventHandler, forwardRef } from 'react';\n\nconst CustomElementExample = forwardRef<HTMLSpanElement, { customElementTitle?: string }>(\n ({ customElementTitle, ...props }, ref) => {\n const handleClick: MouseEventHandler = () => {\n // custom follow logic\n };\n return <span title={customElementTitle} onClick={handleClick} {...props} ref={ref} />;\n }\n);\n\nCustomElementExample.displayName = 'CustomElementExample';\n\nexport default CustomElementExample;\n"],"names":["_jsx"],"mappings":";;;AAEA,MAAM,oBAAoB,GAAG,UAAU,CACnC,CAAC,EAAE,kBAAkB,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAI;IACtC,MAAM,WAAW,GAAsB,MAAK;;AAE5C,KAAC,CAAC;AACF,IAAA,OAAOA,GAAM,CAAA,MAAA,EAAA,EAAA,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAA,GAAM,KAAK,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;AAC1F,CAAC,EACH;AAEF,oBAAoB,CAAC,WAAW,GAAG,sBAAsB;;;;"}
|
package/Link.js
CHANGED
|
@@ -8,7 +8,7 @@ import { isIconElement, IconDynamic } from '@hh.ru/magritte-ui-icon';
|
|
|
8
8
|
import VerticallyCenteredIcon from './VerticallyCenteredIcon.js';
|
|
9
9
|
import { Text } from '@hh.ru/magritte-ui-typography';
|
|
10
10
|
|
|
11
|
-
var styles = {"link":"magritte-link___b4rEM_7-1-
|
|
11
|
+
var styles = {"link":"magritte-link___b4rEM_7-1-8","link_enable-visited":"magritte-link_enable-visited___Biyib_7-1-8","linkEnableVisited":"magritte-link_enable-visited___Biyib_7-1-8","link_block":"magritte-link_block___Lk0iO_7-1-8","linkBlock":"magritte-link_block___Lk0iO_7-1-8","link__icon-left":"magritte-link__icon-left___1v4WO_7-1-8","linkIconLeft":"magritte-link__icon-left___1v4WO_7-1-8","link__icon-right":"magritte-link__icon-right___VVZpb_7-1-8","linkIconRight":"magritte-link__icon-right___VVZpb_7-1-8","link_big-icon":"magritte-link_big-icon___Z485G_7-1-8","linkBigIcon":"magritte-link_big-icon___Z485G_7-1-8","link_mode_primary":"magritte-link_mode_primary___l6una_7-1-8","linkModePrimary":"magritte-link_mode_primary___l6una_7-1-8","link_style_neutral":"magritte-link_style_neutral___iqoW0_7-1-8","linkStyleNeutral":"magritte-link_style_neutral___iqoW0_7-1-8","icon-without-color":"magritte-icon-without-color___P5ivQ_7-1-8","iconWithoutColor":"magritte-icon-without-color___P5ivQ_7-1-8","link_underlined":"magritte-link_underlined___OBHqe_7-1-8","linkUnderlined":"magritte-link_underlined___OBHqe_7-1-8","link_disabled":"magritte-link_disabled___sbFrN_7-1-8","linkDisabled":"magritte-link_disabled___sbFrN_7-1-8","text":"magritte-text___tkzIl_7-1-8","link_mode_secondary":"magritte-link_mode_secondary___91WgT_7-1-8","linkModeSecondary":"magritte-link_mode_secondary___91WgT_7-1-8","link_mode_tertiary":"magritte-link_mode_tertiary___5IWmJ_7-1-8","linkModeTertiary":"magritte-link_mode_tertiary___5IWmJ_7-1-8","link_style_accent":"magritte-link_style_accent___r-MW4_7-1-8","linkStyleAccent":"magritte-link_style_accent___r-MW4_7-1-8","link_style_positive":"magritte-link_style_positive___LF2So_7-1-8","linkStylePositive":"magritte-link_style_positive___LF2So_7-1-8","link_style_negative":"magritte-link_style_negative___BFuGj_7-1-8","linkStyleNegative":"magritte-link_style_negative___BFuGj_7-1-8","link_style_warning":"magritte-link_style_warning___pYAyP_7-1-8","linkStyleWarning":"magritte-link_style_warning___pYAyP_7-1-8","link_style_constant":"magritte-link_style_constant___w9ENv_7-1-8","linkStyleConstant":"magritte-link_style_constant___w9ENv_7-1-8","link_style_special":"magritte-link_style_special___Egc8j_7-1-8","linkStyleSpecial":"magritte-link_style_special___Egc8j_7-1-8"};
|
|
12
12
|
|
|
13
13
|
const TYPOGRAPHY_WITH_ICON = ['subtitle-1-semibold', 'label-2-regular', 'label-3-regular'];
|
|
14
14
|
const TYPOGRAPHY_WITH_BIG_ICON = ['subtitle-1-semibold'];
|
package/Link.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sources":["
|
|
1
|
+
{"version":3,"file":"Link.js","sources":["src/Link.tsx"],"sourcesContent":["import { forwardRef, useRef } from 'react';\nimport classnames from 'classnames';\n\nimport { keyboardMatch, keyboardKeys } from '@hh.ru/magritte-common-keyboard';\nimport { useDisabled, DisabledContext } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { IconDynamic, isIconElement } from '@hh.ru/magritte-ui-icon';\nimport VerticallyCenteredIcon from '@hh.ru/magritte-ui-link/VerticallyCenteredIcon';\nimport type { LinkProps } from '@hh.ru/magritte-ui-link/types';\nimport { Text } from '@hh.ru/magritte-ui-typography';\n\nimport styles from './link.less';\n\nconst TYPOGRAPHY_WITH_ICON = ['subtitle-1-semibold', 'label-2-regular', 'label-3-regular'];\n\nconst TYPOGRAPHY_WITH_BIG_ICON = ['subtitle-1-semibold'];\n\nexport const LinkForwardRefRenderFunc: PolymorphicForwardRefRenderFunc<LinkProps, 'a'> = (props, ref) => {\n const {\n Element = 'a',\n children,\n mode = 'primary',\n style: _style = 'accent',\n inline = false,\n disabled = false,\n iconLeft,\n iconRight,\n href,\n typography = 'label-2-regular',\n enableVisited = false,\n underlined = false,\n 'data-qa': dataQa = 'link',\n 'aria-label': ariaLabel,\n overflowWrap,\n ...otherProps\n } = props;\n\n const textRef = useRef<HTMLSpanElement>(null);\n const forceDisabled = useDisabled();\n const isComponentDisabled = forceDisabled || disabled;\n const withIcon = TYPOGRAPHY_WITH_ICON.includes(typography);\n const withBigIcon = TYPOGRAPHY_WITH_BIG_ICON.includes(typography);\n // Для mode 'tertiary' доступен только style 'neutral'\n const style = mode === 'tertiary' ? 'neutral' : _style;\n const iconLeftWithColor =\n iconLeft &&\n isIconElement(iconLeft) &&\n (!!iconLeft.props.initialColor || !!iconLeft.props.highlightedColor || !!iconLeft.props.disabledColor);\n\n const iconRightWithColor =\n iconRight &&\n isIconElement(iconRight) &&\n (!!iconRight.props.initialColor || !!iconRight.props.highlightedColor || !!iconRight.props.disabledColor);\n\n let additionalAttributes: Record<string, unknown>;\n\n if (Element === 'button') {\n additionalAttributes = {\n type: 'button',\n };\n } else {\n additionalAttributes = {\n tabIndex: isComponentDisabled ? -1 : 0,\n href,\n };\n }\n\n if (ref) {\n additionalAttributes.ref = ref;\n }\n\n const handleKeyDown: React.KeyboardEventHandler = (e) => {\n // Поддержка перехода по ссылке при нажатии Enter в случае кастомного элемента\n if (keyboardMatch(e.nativeEvent, keyboardKeys.Enter)) {\n // Кликаю не по кастомному элементу, а внутри него, тк кастомный может не поддерживать ни ref, ни onClick\n textRef.current?.click();\n e.stopPropagation();\n e.preventDefault();\n }\n };\n\n const renderTextAndRightIcon = () => (\n <>\n <span ref={textRef} data-qa={`${dataQa}-text`} className={styles.text}>\n {children}\n </span>\n {withIcon && iconRight && (\n <span\n className={classnames(styles.linkIconRight, {\n [styles.iconWithoutColor]: !iconRightWithColor,\n })}\n >\n <VerticallyCenteredIcon icon={iconRight} data-qa={`${dataQa}-icon-external`} />\n </span>\n )}\n </>\n );\n\n const render = () => (\n <Element\n className={classnames(styles.link, styles[`link_mode_${mode}`], styles[`link_style_${style}`], {\n [styles.link_disabled]: isComponentDisabled,\n [styles.linkBigIcon]: withBigIcon,\n [styles.linkBlock]: !inline,\n [styles.linkEnableVisited]: enableVisited,\n [styles.linkUnderlined]: underlined,\n })}\n data-qa={dataQa}\n disabled={isComponentDisabled}\n aria-label={ariaLabel}\n onKeyDown={handleKeyDown}\n style={{ overflowWrap }}\n {...additionalAttributes}\n {...otherProps}\n >\n <DisabledContext.Provider value={isComponentDisabled}>\n <IconDynamic Element=\"span\">\n <Text Element=\"span\" typography={typography}>\n {withIcon && iconLeft ? (\n <>\n <span\n className={classnames(styles.linkIconLeft, {\n [styles.iconWithoutColor]: !iconLeftWithColor,\n })}\n >\n <VerticallyCenteredIcon icon={iconLeft} data-qa={`${dataQa}-icon-left`} />\n </span>\n <span>{renderTextAndRightIcon()}</span>\n </>\n ) : (\n renderTextAndRightIcon()\n )}\n </Text>\n </IconDynamic>\n </DisabledContext.Provider>\n </Element>\n );\n\n return inline ? render() : <div>{render()}</div>;\n};\n\nexport const Link = forwardRef(LinkForwardRefRenderFunc) as PolymorphicComponentWithRef<LinkProps, 'a'>;\nconst LinkWithFlag = Link as typeof Link & { isLink: true };\nLinkWithFlag.isLink = true;\n"],"names":["_jsxs","_Fragment","_jsx"],"mappings":";;;;;;;;;;;AAaA,MAAM,oBAAoB,GAAG,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;AAE3F,MAAM,wBAAwB,GAAG,CAAC,qBAAqB,CAAC,CAAC;MAE5C,wBAAwB,GAAoD,CAAC,KAAK,EAAE,GAAG,KAAI;AACpG,IAAA,MAAM,EACF,OAAO,GAAG,GAAG,EACb,QAAQ,EACR,IAAI,GAAG,SAAS,EAChB,KAAK,EAAE,MAAM,GAAG,QAAQ,EACxB,MAAM,GAAG,KAAK,EACd,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,UAAU,GAAG,iBAAiB,EAC9B,aAAa,GAAG,KAAK,EACrB,UAAU,GAAG,KAAK,EAClB,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,YAAY,EAAE,SAAS,EACvB,YAAY,EACZ,GAAG,UAAU,EAChB,GAAG,KAAK,CAAC;AAEV,IAAA,MAAM,OAAO,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;AAC9C,IAAA,MAAM,aAAa,GAAG,WAAW,EAAE,CAAC;AACpC,IAAA,MAAM,mBAAmB,GAAG,aAAa,IAAI,QAAQ,CAAC;IACtD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,wBAAwB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;;AAElE,IAAA,MAAM,KAAK,GAAG,IAAI,KAAK,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IACvD,MAAM,iBAAiB,GACnB,QAAQ;QACR,aAAa,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAE3G,MAAM,kBAAkB,GACpB,SAAS;QACT,aAAa,CAAC,SAAS,CAAC;SACvB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;AAE9G,IAAA,IAAI,oBAA6C,CAAC;AAElD,IAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;AACtB,QAAA,oBAAoB,GAAG;AACnB,YAAA,IAAI,EAAE,QAAQ;SACjB,CAAC;KACL;SAAM;AACH,QAAA,oBAAoB,GAAG;YACnB,QAAQ,EAAE,mBAAmB,GAAG,CAAC,CAAC,GAAG,CAAC;YACtC,IAAI;SACP,CAAC;KACL;IAED,IAAI,GAAG,EAAE;AACL,QAAA,oBAAoB,CAAC,GAAG,GAAG,GAAG,CAAC;KAClC;AAED,IAAA,MAAM,aAAa,GAA+B,CAAC,CAAC,KAAI;;QAEpD,IAAI,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE;;AAElD,YAAA,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YACzB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,CAAC,CAAC,cAAc,EAAE,CAAC;SACtB;AACL,KAAC,CAAC;AAEF,IAAA,MAAM,sBAAsB,GAAG,OAC3BA,IACI,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CAAAC,GAAA,CAAA,MAAA,EAAA,EAAM,GAAG,EAAE,OAAO,EAAW,SAAA,EAAA,CAAA,EAAG,MAAM,CAAO,KAAA,CAAA,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,YAChE,QAAQ,EAAA,CACN,EACN,QAAQ,IAAI,SAAS,KAClBA,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE;AACxC,oBAAA,CAAC,MAAM,CAAC,gBAAgB,GAAG,CAAC,kBAAkB;AACjD,iBAAA,CAAC,YAEFA,GAAC,CAAA,sBAAsB,EAAC,EAAA,IAAI,EAAE,SAAS,EAAA,SAAA,EAAW,CAAG,EAAA,MAAM,gBAAgB,EAAI,CAAA,EAAA,CAC5E,CACV,CAAA,EAAA,CACF,CACN,CAAC;AAEF,IAAA,MAAM,MAAM,GAAG,OACXA,GAAC,CAAA,OAAO,EACJ,EAAA,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAa,UAAA,EAAA,IAAI,CAAE,CAAA,CAAC,EAAE,MAAM,CAAC,CAAA,WAAA,EAAc,KAAK,CAAA,CAAE,CAAC,EAAE;AAC3F,YAAA,CAAC,MAAM,CAAC,aAAa,GAAG,mBAAmB;AAC3C,YAAA,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW;AACjC,YAAA,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,MAAM;AAC3B,YAAA,CAAC,MAAM,CAAC,iBAAiB,GAAG,aAAa;AACzC,YAAA,CAAC,MAAM,CAAC,cAAc,GAAG,UAAU;AACtC,SAAA,CAAC,EACO,SAAA,EAAA,MAAM,EACf,QAAQ,EAAE,mBAAmB,EACjB,YAAA,EAAA,SAAS,EACrB,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,EAAE,YAAY,EAAE,EAAA,GACnB,oBAAoB,EAAA,GACpB,UAAU,EAEd,QAAA,EAAAA,GAAA,CAAC,eAAe,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,mBAAmB,EAChD,QAAA,EAAAA,GAAA,CAAC,WAAW,EAAA,EAAC,OAAO,EAAC,MAAM,EAAA,QAAA,EACvBA,GAAC,CAAA,IAAI,EAAC,EAAA,OAAO,EAAC,MAAM,EAAC,UAAU,EAAE,UAAU,EAAA,QAAA,EACtC,QAAQ,IAAI,QAAQ,IACjBF,IACI,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,CAAAC,GAAA,CAAA,MAAA,EAAA,EACI,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE;AACvC,oCAAA,CAAC,MAAM,CAAC,gBAAgB,GAAG,CAAC,iBAAiB;AAChD,iCAAA,CAAC,EAEF,QAAA,EAAAA,GAAA,CAAC,sBAAsB,EAAA,EAAC,IAAI,EAAE,QAAQ,EAAW,SAAA,EAAA,CAAA,EAAG,MAAM,CAAA,UAAA,CAAY,EAAI,CAAA,EAAA,CACvE,EACPA,GAAO,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,sBAAsB,EAAE,EAAA,CAAQ,CACxC,EAAA,CAAA,KAEH,sBAAsB,EAAE,CAC3B,EACE,CAAA,EAAA,CACG,EACS,CAAA,EAAA,CACrB,CACb,CAAC;AAEF,IAAA,OAAO,MAAM,GAAG,MAAM,EAAE,GAAGA,GAAA,CAAA,KAAA,EAAA,EAAA,QAAA,EAAM,MAAM,EAAE,GAAO,CAAC;AACrD,EAAE;MAEW,IAAI,GAAG,UAAU,CAAC,wBAAwB,EAAiD;AACxG,MAAM,YAAY,GAAG,IAAsC,CAAC;AAC5D,YAAY,CAAC,MAAM,GAAG,IAAI;;;;"}
|
|
@@ -2,7 +2,7 @@ import './index.css';
|
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
|
|
5
|
-
var styles = {"vertically-centered-icon":"magritte-vertically-centered-icon___Zstk8_7-1-
|
|
5
|
+
var styles = {"vertically-centered-icon":"magritte-vertically-centered-icon___Zstk8_7-1-8","verticallyCenteredIcon":"magritte-vertically-centered-icon___Zstk8_7-1-8"};
|
|
6
6
|
|
|
7
7
|
const VerticallyCenteredIcon = ({ icon, 'data-qa': dataQa }) => {
|
|
8
8
|
return (jsx("span", { className: styles.verticallyCenteredIcon, children: React.cloneElement(icon, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VerticallyCenteredIcon.js","sources":["
|
|
1
|
+
{"version":3,"file":"VerticallyCenteredIcon.js","sources":["src/VerticallyCenteredIcon.tsx"],"sourcesContent":["import React, { FC, ReactElement } from 'react';\n\nimport styles from './vertically-centered-icon.less';\n\ninterface VerticallyCenteredIconProps {\n icon: ReactElement;\n 'data-qa'?: string;\n}\n\nconst VerticallyCenteredIcon: FC<VerticallyCenteredIconProps> = ({ icon, 'data-qa': dataQa }) => {\n return (\n <span className={styles.verticallyCenteredIcon}>\n {React.cloneElement(icon, {\n 'data-qa': dataQa,\n })}\n </span>\n );\n};\nexport default VerticallyCenteredIcon;\n"],"names":["_jsx"],"mappings":";;;;;AASM,MAAA,sBAAsB,GAAoC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAI;AAC5F,IAAA,QACIA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,sBAAsB,EAAA,QAAA,EACzC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE;AACtB,YAAA,SAAS,EAAE,MAAM;SACpB,CAAC,EAAA,CACC,EACT;AACN;;;;"}
|