@activecollab/components 1.0.198 → 1.0.200

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.
@@ -1,20 +1,26 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.Link = void 0;
7
9
 
8
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
9
11
 
10
12
  var _classnames = _interopRequireDefault(require("classnames"));
11
13
 
12
14
  var _Styles = require("./Styles");
13
15
 
14
- var _excluded = ["children", "variant", "size", "disabled", "className"];
16
+ var _excluded = ["as", "children", "variant", "size", "disabled", "className"];
15
17
 
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
18
24
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19
25
 
20
26
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
@@ -24,8 +30,9 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
24
30
  /**
25
31
  * Link component
26
32
  */
27
- var Link = function Link(_ref) {
28
- var children = _ref.children,
33
+ var Link = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
34
+ var as = _ref.as,
35
+ children = _ref.children,
29
36
  _ref$variant = _ref.variant,
30
37
  variant = _ref$variant === void 0 ? "contained" : _ref$variant,
31
38
  size = _ref.size,
@@ -34,7 +41,10 @@ var Link = function Link(_ref) {
34
41
  className = _ref.className,
35
42
  args = _objectWithoutProperties(_ref, _excluded);
36
43
 
44
+ var Component = as || "a";
37
45
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledLink, _extends({
46
+ ref: ref,
47
+ as: Component,
38
48
  disabled: disabled,
39
49
  className: (0, _classnames.default)("c-link", className, {
40
50
  "c-link--contained": variant === "primary" || variant === "contained",
@@ -59,8 +69,7 @@ var Link = function Link(_ref) {
59
69
  key: index
60
70
  }, value) : null;
61
71
  })) : children);
62
- };
63
-
72
+ });
64
73
  exports.Link = Link;
65
74
  Link.displayName = "Link";
66
75
  //# sourceMappingURL=Link.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Links/Link.tsx"],"names":["Link","children","variant","size","disabled","className","args","Object","Array","map","value","index","displayName"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;AAyBA;AACA;AACA;AACO,IAAMA,IAAoB,GAAG,SAAvBA,IAAuB,OAO9B;AAAA,MANJC,QAMI,QANJA,QAMI;AAAA,0BALJC,OAKI;AAAA,MALJA,OAKI,6BALM,WAKN;AAAA,MAJJC,IAII,QAJJA,IAII;AAAA,2BAHJC,QAGI;AAAA,MAHJA,QAGI,8BAHO,KAGP;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADDC,IACC;;AACJ,sBACE,6BAAC,kBAAD;AACE,IAAA,QAAQ,EAAEF,QADZ;AAEE,IAAA,SAAS,EAAE,yBAAW,QAAX,EAAqBC,SAArB,EAAgC;AACzC,2BAAqBH,OAAO,KAAK,SAAZ,IAAyBA,OAAO,KAAK,WADjB;AAEzC,0BAAoBA,OAAO,KAAK,WAAZ,IAA2BA,OAAO,KAAK,UAFlB;AAGzC,8BACEA,OAAO,KAAK,UAAZ,IAA0BA,OAAO,KAAK,cAJC;AAKzC,2BAAqBA,OAAO,KAAK,QAAZ,IAAwBA,OAAO,KAAK,WALhB;AAMzC,kCAA4BA,OAAO,KAAK,kBANC;AAOzC,+BAAyBA,OAAO,KAAK,eAPI;AAQzC,qBAAeC,IAAI,KAAK,KARiB;AASzC,uBAAiBA,IAAI,KAAK,OATe;AAUzC,2BACEF,QAAQ,YAAYM,MAApB,IAA8B,EAAEN,QAAQ,YAAYO,KAAtB,CAXS;AAYzC,0BAAoBJ;AAZqB,KAAhC,CAFb;AAgBE,IAAA,OAAO,EAAEF,OAhBX;AAiBE,IAAA,IAAI,EAAEC,IAjBR;AAkBE,IAAA,QAAQ,EAAEF,QAAQ,YAAYM,MAApB,IAA8B,EAAEN,QAAQ,YAAYO,KAAtB;AAlB1C,KAmBMF,IAnBN,GAqBGL,QAAQ,YAAYO,KAApB,gBACC,6BAAC,0BAAD;AAAoB,IAAA,SAAS,EAAC;AAA9B,KACGP,QAAQ,CAACQ,GAAT,CAAa,UAACC,KAAD,EAAQC,KAAR;AAAA,WACZD,KAAK,gBACH,6BAAC,yBAAD;AACE,MAAA,SAAS,EAAC,2BADZ;AAEE,MAAA,GAAG,EAAEC;AAFP,OAIGD,KAJH,CADG,GAOD,IARQ;AAAA,GAAb,CADH,CADD,GAcCT,QAnCJ,CADF;AAwCD,CAhDM;;;AAkDPD,IAAI,CAACY,WAAL,GAAmB,MAAnB","sourcesContent":["import React, { FC, BaseHTMLAttributes, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { StyledLink, StyledLinkElement, StyledLinkElements } from \"./Styles\";\n\nexport interface ILinkProps extends BaseHTMLAttributes<HTMLAnchorElement> {\n /** Children type of node or string */\n children: ReactNode | string;\n /** Variant Buttons */\n variant?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"option\"\n | \"contained\"\n | \"outlined\"\n | \"text colored\"\n | \"text gray\"\n | \"dark transparent\"\n | \"circle raised\";\n /** Button size can be big, medium or small */\n size?: \"big\" | \"small\";\n /** Disabled prop */\n disabled?: boolean;\n /** CSS classes */\n className?: string;\n}\n\n/**\n * Link component\n */\nexport const Link: FC<ILinkProps> = ({\n children,\n variant = \"contained\",\n size,\n disabled = false,\n className,\n ...args\n}) => {\n return (\n <StyledLink\n disabled={disabled}\n className={classNames(\"c-link\", className, {\n \"c-link--contained\": variant === \"primary\" || variant === \"contained\",\n \"c-link--outlined\": variant === \"secondary\" || variant === \"outlined\",\n \"c-link--text_colored\":\n variant === \"tertiary\" || variant === \"text colored\",\n \"c-link--text_gray\": variant === \"option\" || variant === \"text gray\",\n \"c-link--dark_transparent\": variant === \"dark transparent\",\n \"c-link--circle_raised\": variant === \"circle raised\",\n \"c-link--big\": size === \"big\",\n \"c-link--small\": size === \"small\",\n \"c-link--icon-only\":\n children instanceof Object && !(children instanceof Array),\n \"c-link--disabled\": disabled,\n })}\n variant={variant}\n size={size}\n iconOnly={children instanceof Object && !(children instanceof Array)}\n {...args}\n >\n {children instanceof Array ? (\n <StyledLinkElements className=\"c-link__elements\">\n {children.map((value, index) =>\n value ? (\n <StyledLinkElement\n className=\"c-link__elements__element\"\n key={index}\n >\n {value}\n </StyledLinkElement>\n ) : null\n )}\n </StyledLinkElements>\n ) : (\n children\n )}\n </StyledLink>\n );\n};\n\nLink.displayName = \"Link\";\n"],"file":"Link.js"}
1
+ {"version":3,"sources":["../../../../src/components/Links/Link.tsx"],"names":["Link","ref","as","children","variant","size","disabled","className","args","Component","Object","Array","map","value","index","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;AAoCA;AACA;AACA;AACO,IAAMA,IAA8C,gBAAG,uBAC5D,gBAUEC,GAVF,EAWK;AAAA,MATDC,EASC,QATDA,EASC;AAAA,MARDC,QAQC,QARDA,QAQC;AAAA,0BAPDC,OAOC;AAAA,MAPDA,OAOC,6BAPS,WAOT;AAAA,MANDC,IAMC,QANDA,IAMC;AAAA,2BALDC,QAKC;AAAA,MALDA,QAKC,8BALU,KAKV;AAAA,MAJDC,SAIC,QAJDA,SAIC;AAAA,MAHEC,IAGF;;AACH,MAAMC,SAAS,GAAGP,EAAE,IAAI,GAAxB;AAEA,sBACE,6BAAC,kBAAD;AACE,IAAA,GAAG,EAAED,GADP;AAEE,IAAA,EAAE,EAAEQ,SAFN;AAGE,IAAA,QAAQ,EAAEH,QAHZ;AAIE,IAAA,SAAS,EAAE,yBAAW,QAAX,EAAqBC,SAArB,EAAgC;AACzC,2BAAqBH,OAAO,KAAK,SAAZ,IAAyBA,OAAO,KAAK,WADjB;AAEzC,0BAAoBA,OAAO,KAAK,WAAZ,IAA2BA,OAAO,KAAK,UAFlB;AAGzC,8BACEA,OAAO,KAAK,UAAZ,IAA0BA,OAAO,KAAK,cAJC;AAKzC,2BAAqBA,OAAO,KAAK,QAAZ,IAAwBA,OAAO,KAAK,WALhB;AAMzC,kCAA4BA,OAAO,KAAK,kBANC;AAOzC,+BAAyBA,OAAO,KAAK,eAPI;AAQzC,qBAAeC,IAAI,KAAK,KARiB;AASzC,uBAAiBA,IAAI,KAAK,OATe;AAUzC,2BACEF,QAAQ,YAAYO,MAApB,IAA8B,EAAEP,QAAQ,YAAYQ,KAAtB,CAXS;AAYzC,0BAAoBL;AAZqB,KAAhC,CAJb;AAkBE,IAAA,OAAO,EAAEF,OAlBX;AAmBE,IAAA,IAAI,EAAEC,IAnBR;AAoBE,IAAA,QAAQ,EAAEF,QAAQ,YAAYO,MAApB,IAA8B,EAAEP,QAAQ,YAAYQ,KAAtB;AApB1C,KAqBMH,IArBN,GAuBGL,QAAQ,YAAYQ,KAApB,gBACC,6BAAC,0BAAD;AAAoB,IAAA,SAAS,EAAC;AAA9B,KACGR,QAAQ,CAACS,GAAT,CAAa,UAACC,KAAD,EAAQC,KAAR;AAAA,WACZD,KAAK,gBACH,6BAAC,yBAAD;AACE,MAAA,SAAS,EAAC,2BADZ;AAEE,MAAA,GAAG,EAAEC;AAFP,OAIGD,KAJH,CADG,GAOD,IARQ;AAAA,GAAb,CADH,CADD,GAcCV,QArCJ,CADF;AA0CD,CAzD2D,CAAvD;;AA4DPH,IAAI,CAACe,WAAL,GAAmB,MAAnB","sourcesContent":["import React, { BaseHTMLAttributes, ReactNode, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport { StyledLink, StyledLinkElement, StyledLinkElements } from \"./Styles\";\nimport {\n PolymorphicComponentPropsWithRef,\n PolymorphicRef,\n} from \"../../utils/types\";\n\nexport interface ILinkProps extends BaseHTMLAttributes<HTMLElement> {\n /** Children type of node or string */\n children: ReactNode | string;\n /** Variant Buttons */\n variant?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"option\"\n | \"contained\"\n | \"outlined\"\n | \"text colored\"\n | \"text gray\"\n | \"dark transparent\"\n | \"circle raised\";\n /** Button size can be big, medium or small */\n size?: \"big\" | \"small\";\n /** Disabled prop */\n disabled?: boolean;\n /** CSS classes */\n className?: string;\n}\n\nexport type LinkProps<C extends React.ElementType> =\n PolymorphicComponentPropsWithRef<C, ILinkProps>;\n\nexport type LinkComponent = <C extends React.ElementType = \"a\">(\n props: LinkProps<C>\n) => React.ReactElement | null;\n\n/**\n * Link component\n */\nexport const Link: LinkComponent & { displayName?: string } = forwardRef(\n <C extends React.ElementType = \"a\">(\n {\n as,\n children,\n variant = \"contained\",\n size,\n disabled = false,\n className,\n ...args\n }: LinkProps<C>,\n ref?: PolymorphicRef<C>\n ) => {\n const Component = as || \"a\";\n\n return (\n <StyledLink\n ref={ref}\n as={Component}\n disabled={disabled}\n className={classNames(\"c-link\", className, {\n \"c-link--contained\": variant === \"primary\" || variant === \"contained\",\n \"c-link--outlined\": variant === \"secondary\" || variant === \"outlined\",\n \"c-link--text_colored\":\n variant === \"tertiary\" || variant === \"text colored\",\n \"c-link--text_gray\": variant === \"option\" || variant === \"text gray\",\n \"c-link--dark_transparent\": variant === \"dark transparent\",\n \"c-link--circle_raised\": variant === \"circle raised\",\n \"c-link--big\": size === \"big\",\n \"c-link--small\": size === \"small\",\n \"c-link--icon-only\":\n children instanceof Object && !(children instanceof Array),\n \"c-link--disabled\": disabled,\n })}\n variant={variant}\n size={size}\n iconOnly={children instanceof Object && !(children instanceof Array)}\n {...args}\n >\n {children instanceof Array ? (\n <StyledLinkElements className=\"c-link__elements\">\n {children.map((value, index) =>\n value ? (\n <StyledLinkElement\n className=\"c-link__elements__element\"\n key={index}\n >\n {value}\n </StyledLinkElement>\n ) : null\n )}\n </StyledLinkElements>\n ) : (\n children\n )}\n </StyledLink>\n );\n }\n);\n\nLink.displayName = \"Link\";\n"],"file":"Link.js"}
@@ -114,11 +114,21 @@ var Tooltip = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
114
114
  setOpen(false);
115
115
  };
116
116
 
117
+ var handleClick = function handleClick(event) {
118
+ var onClick = children.props.onClick;
119
+ event.stopPropagation();
120
+
121
+ if (typeof onClick === "function") {
122
+ onClick(event);
123
+ }
124
+ };
125
+
117
126
  var handleOwnRef = (0, _useForkRef.default)(children.ref, ref);
118
127
  var handleRef = (0, _useForkRef.default)(setChildNode, handleOwnRef);
119
128
  var childrenProps = {
120
129
  onMouseOver: handleEnter,
121
130
  onMouseLeave: handleLeave,
131
+ onClick: handleClick,
122
132
  ref: handleRef
123
133
  };
124
134
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.cloneElement(children, childrenProps), !disable && /*#__PURE__*/_react.default.createElement(_helpers.Portal, null, /*#__PURE__*/_react.default.createElement(_Popper.Popper, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":["TooltipAnimation","children","props","Tooltip","ref","title","className","style","isLight","placement","TransitionComponent","popperTooltipStyle","popperTooltipClassName","disable","zIndex","layers","skyscraper","open","setOpen","childNode","setChildNode","handleEnter","event","childrenProps","type","onMouseOver","removeAttribute","handleLeave","onMouseLeave","currentTarget","handleOwnRef","handleRef","React","cloneElement","transitionProps","displayName"],"mappings":"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","sourcesContent":["import React, {\n ReactElement,\n useState,\n CSSProperties,\n MouseEvent,\n forwardRef,\n Ref,\n FC,\n} from \"react\";\nimport classnames from \"classnames\";\nimport { Popper, Placement } from \"../Popper\";\nimport { FromElement } from \"../Transitions/FromElement\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { TransitionProps } from \"../Transitions\";\nimport { Portal, useLayerContext } from \"../../helpers\";\nimport { StyledTooltip } from \"./Styles\";\nimport { layers } from \"../../utils\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ITooltipProps {\n /** Children element. */\n children: ElementWithRef<HTMLElement>;\n /** Title element. */\n title: ReactElement | string;\n /** Applies passed styles */\n style?: CSSProperties;\n /** Applies passed classes */\n className?: string;\n /** Open */\n open?: boolean;\n /** Placement */\n placement?: Placement;\n /** Transition component */\n TransitionComponent?: React.FC<TransitionProps>;\n /** Light tooltip */\n isLight?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Remove tooltip */\n disable?: boolean;\n}\n\ninterface ITooltipAnimation extends TransitionProps {\n children: ReactElement;\n}\n\nconst TooltipAnimation: FC<ITooltipAnimation> = ({ children, ...props }) => {\n return (\n <FromElement timeout={0} {...props}>\n {children}\n </FromElement>\n );\n};\n\nexport const Tooltip = forwardRef<HTMLElement, ITooltipProps>(\n (\n {\n children,\n title,\n className,\n style,\n isLight = false,\n placement = \"top\",\n TransitionComponent = TooltipAnimation,\n popperTooltipStyle,\n popperTooltipClassName,\n disable,\n },\n ref\n ) => {\n const { zIndex = layers.skyscraper } = useLayerContext();\n const [open, setOpen] = useState(false);\n const [childNode, setChildNode] = useState<HTMLElement | null>();\n\n const handleEnter = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (event.type === \"mouseover\" && childrenProps.onMouseOver) {\n childrenProps.onMouseOver(event);\n }\n\n childNode && childNode.removeAttribute(\"title\");\n\n setOpen(true);\n };\n\n const handleLeave = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (\n event.type === \"mouseleave\" &&\n childrenProps.onMouseLeave &&\n event.currentTarget === childNode\n ) {\n childrenProps.onMouseLeave(event);\n }\n\n setOpen(false);\n };\n\n const handleOwnRef = useForkRef(children.ref, ref);\n const handleRef = useForkRef(setChildNode, handleOwnRef);\n\n const childrenProps = {\n onMouseOver: handleEnter,\n onMouseLeave: handleLeave,\n ref: handleRef,\n };\n\n return (\n <>\n {React.cloneElement(children, childrenProps)}\n {!disable && (\n <Portal>\n <Popper\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={placement}\n transition\n className={popperTooltipClassName}\n style={{ zIndex, ...popperTooltipStyle }}\n role=\"tooltip\"\n >\n {({ transitionProps = {} }): ReactElement => (\n <TransitionComponent {...transitionProps} style={style}>\n <StyledTooltip\n className={classnames(\"c-tooltip-ds\", className)}\n $isLight={isLight}\n >\n {title}\n </StyledTooltip>\n </TransitionComponent>\n )}\n </Popper>\n </Portal>\n )}\n </>\n );\n }\n);\n\nTooltip.displayName = \"Tooltip\";\n"],"file":"Tooltip.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":["TooltipAnimation","children","props","Tooltip","ref","title","className","style","isLight","placement","TransitionComponent","popperTooltipStyle","popperTooltipClassName","disable","zIndex","layers","skyscraper","open","setOpen","childNode","setChildNode","handleEnter","event","childrenProps","type","onMouseOver","removeAttribute","handleLeave","onMouseLeave","currentTarget","handleClick","onClick","stopPropagation","handleOwnRef","handleRef","React","cloneElement","transitionProps","displayName"],"mappings":"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","sourcesContent":["import React, {\n ReactElement,\n useState,\n CSSProperties,\n MouseEvent,\n forwardRef,\n Ref,\n FC,\n} from \"react\";\nimport classnames from \"classnames\";\nimport { Popper, Placement } from \"../Popper\";\nimport { FromElement } from \"../Transitions/FromElement\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { TransitionProps } from \"../Transitions\";\nimport { Portal, useLayerContext } from \"../../helpers\";\nimport { StyledTooltip } from \"./Styles\";\nimport { layers } from \"../../utils\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ITooltipProps {\n /** Children element. */\n children: ElementWithRef<HTMLElement>;\n /** Title element. */\n title: ReactElement | string;\n /** Applies passed styles */\n style?: CSSProperties;\n /** Applies passed classes */\n className?: string;\n /** Open */\n open?: boolean;\n /** Placement */\n placement?: Placement;\n /** Transition component */\n TransitionComponent?: React.FC<TransitionProps>;\n /** Light tooltip */\n isLight?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Remove tooltip */\n disable?: boolean;\n}\n\ninterface ITooltipAnimation extends TransitionProps {\n children: ReactElement;\n}\n\nconst TooltipAnimation: FC<ITooltipAnimation> = ({ children, ...props }) => {\n return (\n <FromElement timeout={0} {...props}>\n {children}\n </FromElement>\n );\n};\n\nexport const Tooltip = forwardRef<HTMLElement, ITooltipProps>(\n (\n {\n children,\n title,\n className,\n style,\n isLight = false,\n placement = \"top\",\n TransitionComponent = TooltipAnimation,\n popperTooltipStyle,\n popperTooltipClassName,\n disable,\n },\n ref\n ) => {\n const { zIndex = layers.skyscraper } = useLayerContext();\n const [open, setOpen] = useState(false);\n const [childNode, setChildNode] = useState<HTMLElement | null>();\n\n const handleEnter = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (event.type === \"mouseover\" && childrenProps.onMouseOver) {\n childrenProps.onMouseOver(event);\n }\n\n childNode && childNode.removeAttribute(\"title\");\n\n setOpen(true);\n };\n\n const handleLeave = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (\n event.type === \"mouseleave\" &&\n childrenProps.onMouseLeave &&\n event.currentTarget === childNode\n ) {\n childrenProps.onMouseLeave(event);\n }\n\n setOpen(false);\n };\n\n const handleClick = (event: MouseEvent<HTMLElement>): void => {\n const { onClick } = children.props;\n event.stopPropagation();\n if (typeof onClick === \"function\") {\n onClick(event);\n }\n };\n\n const handleOwnRef = useForkRef(children.ref, ref);\n const handleRef = useForkRef(setChildNode, handleOwnRef);\n\n const childrenProps = {\n onMouseOver: handleEnter,\n onMouseLeave: handleLeave,\n onClick: handleClick,\n ref: handleRef,\n };\n\n return (\n <>\n {React.cloneElement(children, childrenProps)}\n {!disable && (\n <Portal>\n <Popper\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={placement}\n transition\n className={popperTooltipClassName}\n style={{ zIndex, ...popperTooltipStyle }}\n role=\"tooltip\"\n >\n {({ transitionProps = {} }): ReactElement => (\n <TransitionComponent {...transitionProps} style={style}>\n <StyledTooltip\n className={classnames(\"c-tooltip-ds\", className)}\n $isLight={isLight}\n >\n {title}\n </StyledTooltip>\n </TransitionComponent>\n )}\n </Popper>\n </Portal>\n )}\n </>\n );\n }\n);\n\nTooltip.displayName = \"Tooltip\";\n"],"file":"Tooltip.js"}
@@ -1,10 +1,15 @@
1
- import { FC, BaseHTMLAttributes, ReactNode } from "react";
2
- export interface ILinkProps extends BaseHTMLAttributes<HTMLAnchorElement> {
1
+ import React, { BaseHTMLAttributes, ReactNode } from "react";
2
+ import { PolymorphicComponentPropsWithRef } from "../../utils/types";
3
+ export interface ILinkProps extends BaseHTMLAttributes<HTMLElement> {
3
4
  children: ReactNode | string;
4
5
  variant?: "primary" | "secondary" | "tertiary" | "option" | "contained" | "outlined" | "text colored" | "text gray" | "dark transparent" | "circle raised";
5
6
  size?: "big" | "small";
6
7
  disabled?: boolean;
7
8
  className?: string;
8
9
  }
9
- export declare const Link: FC<ILinkProps>;
10
+ export declare type LinkProps<C extends React.ElementType> = PolymorphicComponentPropsWithRef<C, ILinkProps>;
11
+ export declare type LinkComponent = <C extends React.ElementType = "a">(props: LinkProps<C>) => React.ReactElement | null;
12
+ export declare const Link: LinkComponent & {
13
+ displayName?: string;
14
+ };
10
15
  //# sourceMappingURL=Link.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../../src/components/Links/Link.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIjE,MAAM,WAAW,UAAW,SAAQ,kBAAkB,CAAC,iBAAiB,CAAC;IAEvE,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC;IAE7B,OAAO,CAAC,EACJ,SAAS,GACT,WAAW,GACX,UAAU,GACV,QAAQ,GACR,WAAW,GACX,UAAU,GACV,cAAc,GACd,WAAW,GACX,kBAAkB,GAClB,eAAe,CAAC;IAEpB,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAEvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAKD,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,UAAU,CAgD/B,CAAC"}
1
+ {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../../src/components/Links/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,kBAAkB,EAAE,SAAS,EAAc,MAAM,OAAO,CAAC;AAGzE,OAAO,EACL,gCAAgC,EAEjC,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,UAAW,SAAQ,kBAAkB,CAAC,WAAW,CAAC;IAEjE,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC;IAE7B,OAAO,CAAC,EACJ,SAAS,GACT,WAAW,GACX,UAAU,GACV,QAAQ,GACR,WAAW,GACX,UAAU,GACV,cAAc,GACd,WAAW,GACX,kBAAkB,GAClB,eAAe,CAAC;IAEpB,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAEvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oBAAY,SAAS,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,IAC/C,gCAAgC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;AAElD,oBAAY,aAAa,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,GAAG,EAC5D,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAChB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;AAK/B,eAAO,MAAM,IAAI,EAAE,aAAa,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CA0DxD,CAAC"}
@@ -1,15 +1,16 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- var _excluded = ["children", "variant", "size", "disabled", "className"];
4
- import React from "react";
3
+ var _excluded = ["as", "children", "variant", "size", "disabled", "className"];
4
+ import React, { forwardRef } from "react";
5
5
  import classNames from "classnames";
6
6
  import { StyledLink, StyledLinkElement, StyledLinkElements } from "./Styles";
7
7
 
8
8
  /**
9
9
  * Link component
10
10
  */
11
- export var Link = function Link(_ref) {
12
- var children = _ref.children,
11
+ export var Link = /*#__PURE__*/forwardRef(function (_ref, ref) {
12
+ var as = _ref.as,
13
+ children = _ref.children,
13
14
  _ref$variant = _ref.variant,
14
15
  variant = _ref$variant === void 0 ? "contained" : _ref$variant,
15
16
  size = _ref.size,
@@ -18,7 +19,10 @@ export var Link = function Link(_ref) {
18
19
  className = _ref.className,
19
20
  args = _objectWithoutPropertiesLoose(_ref, _excluded);
20
21
 
22
+ var Component = as || "a";
21
23
  return /*#__PURE__*/React.createElement(StyledLink, _extends({
24
+ ref: ref,
25
+ as: Component,
22
26
  disabled: disabled,
23
27
  className: classNames("c-link", className, {
24
28
  "c-link--contained": variant === "primary" || variant === "contained",
@@ -43,6 +47,6 @@ export var Link = function Link(_ref) {
43
47
  key: index
44
48
  }, value) : null;
45
49
  })) : children);
46
- };
50
+ });
47
51
  Link.displayName = "Link";
48
52
  //# sourceMappingURL=Link.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Links/Link.tsx"],"names":["React","classNames","StyledLink","StyledLinkElement","StyledLinkElements","Link","children","variant","size","disabled","className","args","Object","Array","map","value","index","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,MAAyD,OAAzD;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,UAAT,EAAqBC,iBAArB,EAAwCC,kBAAxC,QAAkE,UAAlE;;AAyBA;AACA;AACA;AACA,OAAO,IAAMC,IAAoB,GAAG,SAAvBA,IAAuB,OAO9B;AAAA,MANJC,QAMI,QANJA,QAMI;AAAA,0BALJC,OAKI;AAAA,MALJA,OAKI,6BALM,WAKN;AAAA,MAJJC,IAII,QAJJA,IAII;AAAA,2BAHJC,QAGI;AAAA,MAHJA,QAGI,8BAHO,KAGP;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADDC,IACC;;AACJ,sBACE,oBAAC,UAAD;AACE,IAAA,QAAQ,EAAEF,QADZ;AAEE,IAAA,SAAS,EAAER,UAAU,CAAC,QAAD,EAAWS,SAAX,EAAsB;AACzC,2BAAqBH,OAAO,KAAK,SAAZ,IAAyBA,OAAO,KAAK,WADjB;AAEzC,0BAAoBA,OAAO,KAAK,WAAZ,IAA2BA,OAAO,KAAK,UAFlB;AAGzC,8BACEA,OAAO,KAAK,UAAZ,IAA0BA,OAAO,KAAK,cAJC;AAKzC,2BAAqBA,OAAO,KAAK,QAAZ,IAAwBA,OAAO,KAAK,WALhB;AAMzC,kCAA4BA,OAAO,KAAK,kBANC;AAOzC,+BAAyBA,OAAO,KAAK,eAPI;AAQzC,qBAAeC,IAAI,KAAK,KARiB;AASzC,uBAAiBA,IAAI,KAAK,OATe;AAUzC,2BACEF,QAAQ,YAAYM,MAApB,IAA8B,EAAEN,QAAQ,YAAYO,KAAtB,CAXS;AAYzC,0BAAoBJ;AAZqB,KAAtB,CAFvB;AAgBE,IAAA,OAAO,EAAEF,OAhBX;AAiBE,IAAA,IAAI,EAAEC,IAjBR;AAkBE,IAAA,QAAQ,EAAEF,QAAQ,YAAYM,MAApB,IAA8B,EAAEN,QAAQ,YAAYO,KAAtB;AAlB1C,KAmBMF,IAnBN,GAqBGL,QAAQ,YAAYO,KAApB,gBACC,oBAAC,kBAAD;AAAoB,IAAA,SAAS,EAAC;AAA9B,KACGP,QAAQ,CAACQ,GAAT,CAAa,UAACC,KAAD,EAAQC,KAAR;AAAA,WACZD,KAAK,gBACH,oBAAC,iBAAD;AACE,MAAA,SAAS,EAAC,2BADZ;AAEE,MAAA,GAAG,EAAEC;AAFP,OAIGD,KAJH,CADG,GAOD,IARQ;AAAA,GAAb,CADH,CADD,GAcCT,QAnCJ,CADF;AAwCD,CAhDM;AAkDPD,IAAI,CAACY,WAAL,GAAmB,MAAnB","sourcesContent":["import React, { FC, BaseHTMLAttributes, ReactNode } from \"react\";\nimport classNames from \"classnames\";\nimport { StyledLink, StyledLinkElement, StyledLinkElements } from \"./Styles\";\n\nexport interface ILinkProps extends BaseHTMLAttributes<HTMLAnchorElement> {\n /** Children type of node or string */\n children: ReactNode | string;\n /** Variant Buttons */\n variant?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"option\"\n | \"contained\"\n | \"outlined\"\n | \"text colored\"\n | \"text gray\"\n | \"dark transparent\"\n | \"circle raised\";\n /** Button size can be big, medium or small */\n size?: \"big\" | \"small\";\n /** Disabled prop */\n disabled?: boolean;\n /** CSS classes */\n className?: string;\n}\n\n/**\n * Link component\n */\nexport const Link: FC<ILinkProps> = ({\n children,\n variant = \"contained\",\n size,\n disabled = false,\n className,\n ...args\n}) => {\n return (\n <StyledLink\n disabled={disabled}\n className={classNames(\"c-link\", className, {\n \"c-link--contained\": variant === \"primary\" || variant === \"contained\",\n \"c-link--outlined\": variant === \"secondary\" || variant === \"outlined\",\n \"c-link--text_colored\":\n variant === \"tertiary\" || variant === \"text colored\",\n \"c-link--text_gray\": variant === \"option\" || variant === \"text gray\",\n \"c-link--dark_transparent\": variant === \"dark transparent\",\n \"c-link--circle_raised\": variant === \"circle raised\",\n \"c-link--big\": size === \"big\",\n \"c-link--small\": size === \"small\",\n \"c-link--icon-only\":\n children instanceof Object && !(children instanceof Array),\n \"c-link--disabled\": disabled,\n })}\n variant={variant}\n size={size}\n iconOnly={children instanceof Object && !(children instanceof Array)}\n {...args}\n >\n {children instanceof Array ? (\n <StyledLinkElements className=\"c-link__elements\">\n {children.map((value, index) =>\n value ? (\n <StyledLinkElement\n className=\"c-link__elements__element\"\n key={index}\n >\n {value}\n </StyledLinkElement>\n ) : null\n )}\n </StyledLinkElements>\n ) : (\n children\n )}\n </StyledLink>\n );\n};\n\nLink.displayName = \"Link\";\n"],"file":"Link.js"}
1
+ {"version":3,"sources":["../../../../src/components/Links/Link.tsx"],"names":["React","forwardRef","classNames","StyledLink","StyledLinkElement","StyledLinkElements","Link","ref","as","children","variant","size","disabled","className","args","Component","Object","Array","map","value","index","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,IAA+CC,UAA/C,QAAiE,OAAjE;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,UAAT,EAAqBC,iBAArB,EAAwCC,kBAAxC,QAAkE,UAAlE;;AAoCA;AACA;AACA;AACA,OAAO,IAAMC,IAA8C,gBAAGL,UAAU,CACtE,gBAUEM,GAVF,EAWK;AAAA,MATDC,EASC,QATDA,EASC;AAAA,MARDC,QAQC,QARDA,QAQC;AAAA,0BAPDC,OAOC;AAAA,MAPDA,OAOC,6BAPS,WAOT;AAAA,MANDC,IAMC,QANDA,IAMC;AAAA,2BALDC,QAKC;AAAA,MALDA,QAKC,8BALU,KAKV;AAAA,MAJDC,SAIC,QAJDA,SAIC;AAAA,MAHEC,IAGF;;AACH,MAAMC,SAAS,GAAGP,EAAE,IAAI,GAAxB;AAEA,sBACE,oBAAC,UAAD;AACE,IAAA,GAAG,EAAED,GADP;AAEE,IAAA,EAAE,EAAEQ,SAFN;AAGE,IAAA,QAAQ,EAAEH,QAHZ;AAIE,IAAA,SAAS,EAAEV,UAAU,CAAC,QAAD,EAAWW,SAAX,EAAsB;AACzC,2BAAqBH,OAAO,KAAK,SAAZ,IAAyBA,OAAO,KAAK,WADjB;AAEzC,0BAAoBA,OAAO,KAAK,WAAZ,IAA2BA,OAAO,KAAK,UAFlB;AAGzC,8BACEA,OAAO,KAAK,UAAZ,IAA0BA,OAAO,KAAK,cAJC;AAKzC,2BAAqBA,OAAO,KAAK,QAAZ,IAAwBA,OAAO,KAAK,WALhB;AAMzC,kCAA4BA,OAAO,KAAK,kBANC;AAOzC,+BAAyBA,OAAO,KAAK,eAPI;AAQzC,qBAAeC,IAAI,KAAK,KARiB;AASzC,uBAAiBA,IAAI,KAAK,OATe;AAUzC,2BACEF,QAAQ,YAAYO,MAApB,IAA8B,EAAEP,QAAQ,YAAYQ,KAAtB,CAXS;AAYzC,0BAAoBL;AAZqB,KAAtB,CAJvB;AAkBE,IAAA,OAAO,EAAEF,OAlBX;AAmBE,IAAA,IAAI,EAAEC,IAnBR;AAoBE,IAAA,QAAQ,EAAEF,QAAQ,YAAYO,MAApB,IAA8B,EAAEP,QAAQ,YAAYQ,KAAtB;AApB1C,KAqBMH,IArBN,GAuBGL,QAAQ,YAAYQ,KAApB,gBACC,oBAAC,kBAAD;AAAoB,IAAA,SAAS,EAAC;AAA9B,KACGR,QAAQ,CAACS,GAAT,CAAa,UAACC,KAAD,EAAQC,KAAR;AAAA,WACZD,KAAK,gBACH,oBAAC,iBAAD;AACE,MAAA,SAAS,EAAC,2BADZ;AAEE,MAAA,GAAG,EAAEC;AAFP,OAIGD,KAJH,CADG,GAOD,IARQ;AAAA,GAAb,CADH,CADD,GAcCV,QArCJ,CADF;AA0CD,CAzDqE,CAAjE;AA4DPH,IAAI,CAACe,WAAL,GAAmB,MAAnB","sourcesContent":["import React, { BaseHTMLAttributes, ReactNode, forwardRef } from \"react\";\nimport classNames from \"classnames\";\nimport { StyledLink, StyledLinkElement, StyledLinkElements } from \"./Styles\";\nimport {\n PolymorphicComponentPropsWithRef,\n PolymorphicRef,\n} from \"../../utils/types\";\n\nexport interface ILinkProps extends BaseHTMLAttributes<HTMLElement> {\n /** Children type of node or string */\n children: ReactNode | string;\n /** Variant Buttons */\n variant?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"option\"\n | \"contained\"\n | \"outlined\"\n | \"text colored\"\n | \"text gray\"\n | \"dark transparent\"\n | \"circle raised\";\n /** Button size can be big, medium or small */\n size?: \"big\" | \"small\";\n /** Disabled prop */\n disabled?: boolean;\n /** CSS classes */\n className?: string;\n}\n\nexport type LinkProps<C extends React.ElementType> =\n PolymorphicComponentPropsWithRef<C, ILinkProps>;\n\nexport type LinkComponent = <C extends React.ElementType = \"a\">(\n props: LinkProps<C>\n) => React.ReactElement | null;\n\n/**\n * Link component\n */\nexport const Link: LinkComponent & { displayName?: string } = forwardRef(\n <C extends React.ElementType = \"a\">(\n {\n as,\n children,\n variant = \"contained\",\n size,\n disabled = false,\n className,\n ...args\n }: LinkProps<C>,\n ref?: PolymorphicRef<C>\n ) => {\n const Component = as || \"a\";\n\n return (\n <StyledLink\n ref={ref}\n as={Component}\n disabled={disabled}\n className={classNames(\"c-link\", className, {\n \"c-link--contained\": variant === \"primary\" || variant === \"contained\",\n \"c-link--outlined\": variant === \"secondary\" || variant === \"outlined\",\n \"c-link--text_colored\":\n variant === \"tertiary\" || variant === \"text colored\",\n \"c-link--text_gray\": variant === \"option\" || variant === \"text gray\",\n \"c-link--dark_transparent\": variant === \"dark transparent\",\n \"c-link--circle_raised\": variant === \"circle raised\",\n \"c-link--big\": size === \"big\",\n \"c-link--small\": size === \"small\",\n \"c-link--icon-only\":\n children instanceof Object && !(children instanceof Array),\n \"c-link--disabled\": disabled,\n })}\n variant={variant}\n size={size}\n iconOnly={children instanceof Object && !(children instanceof Array)}\n {...args}\n >\n {children instanceof Array ? (\n <StyledLinkElements className=\"c-link__elements\">\n {children.map((value, index) =>\n value ? (\n <StyledLinkElement\n className=\"c-link__elements__element\"\n key={index}\n >\n {value}\n </StyledLinkElement>\n ) : null\n )}\n </StyledLinkElements>\n ) : (\n children\n )}\n </StyledLink>\n );\n }\n);\n\nLink.displayName = \"Link\";\n"],"file":"Link.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,YAAY,EAEZ,aAAa,EAGb,GAAG,EAEJ,MAAM,OAAO,CAAC;AAEf,OAAO,EAAU,SAAS,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAKjD,UAAU,cAAc,CAAC,CAAC,CAAE,SAAQ,YAAY;IAC9C,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAE5B,QAAQ,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IAEtC,KAAK,EAAE,YAAY,GAAG,MAAM,CAAC;IAE7B,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,mBAAmB,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;IAEhD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,kBAAkB,CAAC,EAAE,aAAa,CAAC;IAEnC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAcD,eAAO,MAAM,OAAO,mFAqFnB,CAAC"}
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,YAAY,EAEZ,aAAa,EAGb,GAAG,EAEJ,MAAM,OAAO,CAAC;AAEf,OAAO,EAAU,SAAS,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAKjD,UAAU,cAAc,CAAC,CAAC,CAAE,SAAQ,YAAY;IAC9C,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAE5B,QAAQ,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IAEtC,KAAK,EAAE,YAAY,GAAG,MAAM,CAAC;IAE7B,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,mBAAmB,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;IAEhD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,kBAAkB,CAAC,EAAE,aAAa,CAAC;IAEnC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAcD,eAAO,MAAM,OAAO,mFA8FnB,CAAC"}
@@ -67,11 +67,21 @@ export var Tooltip = /*#__PURE__*/forwardRef(function (_ref2, ref) {
67
67
  setOpen(false);
68
68
  };
69
69
 
70
+ var handleClick = function handleClick(event) {
71
+ var onClick = children.props.onClick;
72
+ event.stopPropagation();
73
+
74
+ if (typeof onClick === "function") {
75
+ onClick(event);
76
+ }
77
+ };
78
+
70
79
  var handleOwnRef = useForkRef(children.ref, ref);
71
80
  var handleRef = useForkRef(setChildNode, handleOwnRef);
72
81
  var childrenProps = {
73
82
  onMouseOver: handleEnter,
74
83
  onMouseLeave: handleLeave,
84
+ onClick: handleClick,
75
85
  ref: handleRef
76
86
  };
77
87
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.cloneElement(children, childrenProps), !disable && /*#__PURE__*/React.createElement(Portal, null, /*#__PURE__*/React.createElement(Popper, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":["React","useState","forwardRef","classnames","Popper","FromElement","useForkRef","Portal","useLayerContext","StyledTooltip","layers","TooltipAnimation","children","props","Tooltip","ref","title","className","style","isLight","placement","TransitionComponent","popperTooltipStyle","popperTooltipClassName","disable","zIndex","skyscraper","open","setOpen","childNode","setChildNode","handleEnter","event","childrenProps","type","onMouseOver","removeAttribute","handleLeave","onMouseLeave","currentTarget","handleOwnRef","handleRef","cloneElement","transitionProps","displayName"],"mappings":"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","sourcesContent":["import React, {\n ReactElement,\n useState,\n CSSProperties,\n MouseEvent,\n forwardRef,\n Ref,\n FC,\n} from \"react\";\nimport classnames from \"classnames\";\nimport { Popper, Placement } from \"../Popper\";\nimport { FromElement } from \"../Transitions/FromElement\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { TransitionProps } from \"../Transitions\";\nimport { Portal, useLayerContext } from \"../../helpers\";\nimport { StyledTooltip } from \"./Styles\";\nimport { layers } from \"../../utils\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ITooltipProps {\n /** Children element. */\n children: ElementWithRef<HTMLElement>;\n /** Title element. */\n title: ReactElement | string;\n /** Applies passed styles */\n style?: CSSProperties;\n /** Applies passed classes */\n className?: string;\n /** Open */\n open?: boolean;\n /** Placement */\n placement?: Placement;\n /** Transition component */\n TransitionComponent?: React.FC<TransitionProps>;\n /** Light tooltip */\n isLight?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Remove tooltip */\n disable?: boolean;\n}\n\ninterface ITooltipAnimation extends TransitionProps {\n children: ReactElement;\n}\n\nconst TooltipAnimation: FC<ITooltipAnimation> = ({ children, ...props }) => {\n return (\n <FromElement timeout={0} {...props}>\n {children}\n </FromElement>\n );\n};\n\nexport const Tooltip = forwardRef<HTMLElement, ITooltipProps>(\n (\n {\n children,\n title,\n className,\n style,\n isLight = false,\n placement = \"top\",\n TransitionComponent = TooltipAnimation,\n popperTooltipStyle,\n popperTooltipClassName,\n disable,\n },\n ref\n ) => {\n const { zIndex = layers.skyscraper } = useLayerContext();\n const [open, setOpen] = useState(false);\n const [childNode, setChildNode] = useState<HTMLElement | null>();\n\n const handleEnter = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (event.type === \"mouseover\" && childrenProps.onMouseOver) {\n childrenProps.onMouseOver(event);\n }\n\n childNode && childNode.removeAttribute(\"title\");\n\n setOpen(true);\n };\n\n const handleLeave = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (\n event.type === \"mouseleave\" &&\n childrenProps.onMouseLeave &&\n event.currentTarget === childNode\n ) {\n childrenProps.onMouseLeave(event);\n }\n\n setOpen(false);\n };\n\n const handleOwnRef = useForkRef(children.ref, ref);\n const handleRef = useForkRef(setChildNode, handleOwnRef);\n\n const childrenProps = {\n onMouseOver: handleEnter,\n onMouseLeave: handleLeave,\n ref: handleRef,\n };\n\n return (\n <>\n {React.cloneElement(children, childrenProps)}\n {!disable && (\n <Portal>\n <Popper\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={placement}\n transition\n className={popperTooltipClassName}\n style={{ zIndex, ...popperTooltipStyle }}\n role=\"tooltip\"\n >\n {({ transitionProps = {} }): ReactElement => (\n <TransitionComponent {...transitionProps} style={style}>\n <StyledTooltip\n className={classnames(\"c-tooltip-ds\", className)}\n $isLight={isLight}\n >\n {title}\n </StyledTooltip>\n </TransitionComponent>\n )}\n </Popper>\n </Portal>\n )}\n </>\n );\n }\n);\n\nTooltip.displayName = \"Tooltip\";\n"],"file":"Tooltip.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":["React","useState","forwardRef","classnames","Popper","FromElement","useForkRef","Portal","useLayerContext","StyledTooltip","layers","TooltipAnimation","children","props","Tooltip","ref","title","className","style","isLight","placement","TransitionComponent","popperTooltipStyle","popperTooltipClassName","disable","zIndex","skyscraper","open","setOpen","childNode","setChildNode","handleEnter","event","childrenProps","type","onMouseOver","removeAttribute","handleLeave","onMouseLeave","currentTarget","handleClick","onClick","stopPropagation","handleOwnRef","handleRef","cloneElement","transitionProps","displayName"],"mappings":"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","sourcesContent":["import React, {\n ReactElement,\n useState,\n CSSProperties,\n MouseEvent,\n forwardRef,\n Ref,\n FC,\n} from \"react\";\nimport classnames from \"classnames\";\nimport { Popper, Placement } from \"../Popper\";\nimport { FromElement } from \"../Transitions/FromElement\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { TransitionProps } from \"../Transitions\";\nimport { Portal, useLayerContext } from \"../../helpers\";\nimport { StyledTooltip } from \"./Styles\";\nimport { layers } from \"../../utils\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ITooltipProps {\n /** Children element. */\n children: ElementWithRef<HTMLElement>;\n /** Title element. */\n title: ReactElement | string;\n /** Applies passed styles */\n style?: CSSProperties;\n /** Applies passed classes */\n className?: string;\n /** Open */\n open?: boolean;\n /** Placement */\n placement?: Placement;\n /** Transition component */\n TransitionComponent?: React.FC<TransitionProps>;\n /** Light tooltip */\n isLight?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Remove tooltip */\n disable?: boolean;\n}\n\ninterface ITooltipAnimation extends TransitionProps {\n children: ReactElement;\n}\n\nconst TooltipAnimation: FC<ITooltipAnimation> = ({ children, ...props }) => {\n return (\n <FromElement timeout={0} {...props}>\n {children}\n </FromElement>\n );\n};\n\nexport const Tooltip = forwardRef<HTMLElement, ITooltipProps>(\n (\n {\n children,\n title,\n className,\n style,\n isLight = false,\n placement = \"top\",\n TransitionComponent = TooltipAnimation,\n popperTooltipStyle,\n popperTooltipClassName,\n disable,\n },\n ref\n ) => {\n const { zIndex = layers.skyscraper } = useLayerContext();\n const [open, setOpen] = useState(false);\n const [childNode, setChildNode] = useState<HTMLElement | null>();\n\n const handleEnter = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (event.type === \"mouseover\" && childrenProps.onMouseOver) {\n childrenProps.onMouseOver(event);\n }\n\n childNode && childNode.removeAttribute(\"title\");\n\n setOpen(true);\n };\n\n const handleLeave = (event: MouseEvent<HTMLElement>): void => {\n const childrenProps = children.props;\n\n if (\n event.type === \"mouseleave\" &&\n childrenProps.onMouseLeave &&\n event.currentTarget === childNode\n ) {\n childrenProps.onMouseLeave(event);\n }\n\n setOpen(false);\n };\n\n const handleClick = (event: MouseEvent<HTMLElement>): void => {\n const { onClick } = children.props;\n event.stopPropagation();\n if (typeof onClick === \"function\") {\n onClick(event);\n }\n };\n\n const handleOwnRef = useForkRef(children.ref, ref);\n const handleRef = useForkRef(setChildNode, handleOwnRef);\n\n const childrenProps = {\n onMouseOver: handleEnter,\n onMouseLeave: handleLeave,\n onClick: handleClick,\n ref: handleRef,\n };\n\n return (\n <>\n {React.cloneElement(children, childrenProps)}\n {!disable && (\n <Portal>\n <Popper\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={placement}\n transition\n className={popperTooltipClassName}\n style={{ zIndex, ...popperTooltipStyle }}\n role=\"tooltip\"\n >\n {({ transitionProps = {} }): ReactElement => (\n <TransitionComponent {...transitionProps} style={style}>\n <StyledTooltip\n className={classnames(\"c-tooltip-ds\", className)}\n $isLight={isLight}\n >\n {title}\n </StyledTooltip>\n </TransitionComponent>\n )}\n </Popper>\n </Portal>\n )}\n </>\n );\n }\n);\n\nTooltip.displayName = \"Tooltip\";\n"],"file":"Tooltip.js"}
package/dist/index.js CHANGED
@@ -4247,11 +4247,21 @@
4247
4247
  setOpen(false);
4248
4248
  };
4249
4249
 
4250
+ var handleClick = function handleClick(event) {
4251
+ var onClick = children.props.onClick;
4252
+ event.stopPropagation();
4253
+
4254
+ if (typeof onClick === "function") {
4255
+ onClick(event);
4256
+ }
4257
+ };
4258
+
4250
4259
  var handleOwnRef = useForkRef(children.ref, ref);
4251
4260
  var handleRef = useForkRef(setChildNode, handleOwnRef);
4252
4261
  var childrenProps = {
4253
4262
  onMouseOver: handleEnter,
4254
4263
  onMouseLeave: handleLeave,
4264
+ onClick: handleClick,
4255
4265
  ref: handleRef
4256
4266
  };
4257
4267
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].cloneElement(children, childrenProps), !disable && /*#__PURE__*/React__default["default"].createElement(Portal, null, /*#__PURE__*/React__default["default"].createElement(Popper, {
@@ -9460,13 +9470,14 @@
9460
9470
  };
9461
9471
  BackLink.displayName = "BackLink";
9462
9472
 
9463
- var _excluded$n = ["children", "variant", "size", "disabled", "className"];
9473
+ var _excluded$n = ["as", "children", "variant", "size", "disabled", "className"];
9464
9474
 
9465
9475
  /**
9466
9476
  * Link component
9467
9477
  */
9468
- var Link = function Link(_ref) {
9469
- var children = _ref.children,
9478
+ var Link = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
9479
+ var as = _ref.as,
9480
+ children = _ref.children,
9470
9481
  _ref$variant = _ref.variant,
9471
9482
  variant = _ref$variant === void 0 ? "contained" : _ref$variant,
9472
9483
  size = _ref.size,
@@ -9475,7 +9486,10 @@
9475
9486
  className = _ref.className,
9476
9487
  args = _objectWithoutProperties(_ref, _excluded$n);
9477
9488
 
9489
+ var Component = as || "a";
9478
9490
  return /*#__PURE__*/React__default["default"].createElement(StyledLink, _extends({
9491
+ ref: ref,
9492
+ as: Component,
9479
9493
  disabled: disabled,
9480
9494
  className: classNames__default["default"]("c-link", className, {
9481
9495
  "c-link--contained": variant === "primary" || variant === "contained",
@@ -9500,7 +9514,7 @@
9500
9514
  key: index
9501
9515
  }, value) : null;
9502
9516
  })) : children);
9503
- };
9517
+ });
9504
9518
  Link.displayName = "Link";
9505
9519
 
9506
9520
  var defaultStyle$2 = {