@toptal/picasso 30.0.1 → 30.0.2

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.
@@ -9,7 +9,7 @@ var __rest = (this && this.__rest) || function (s, e) {
9
9
  }
10
10
  return t;
11
11
  };
12
- import React, { forwardRef, useMemo, useState } from 'react';
12
+ import React, { forwardRef, useMemo, useCallback, useState, } from 'react';
13
13
  import cx from 'classnames';
14
14
  import { makeStyles } from '@material-ui/core/styles';
15
15
  import Truncate from 'react-truncate';
@@ -23,14 +23,16 @@ export const ShowMore = forwardRef(function ShowMore(props, ref) {
23
23
  const { children, rows = 4, initialExpanded = false, disableToggle = false, moreText = 'Show more', lessText = 'Show less', onToggle = () => { }, className, style, testIds } = props, rest = __rest(props, ["children", "rows", "initialExpanded", "disableToggle", "moreText", "lessText", "onToggle", "className", "style", "testIds"]);
24
24
  const classes = useStyles();
25
25
  const [shownMore, setShownMore] = useState(initialExpanded);
26
+ const [needsTruncation, setNeedsTruncation] = useState(true);
26
27
  const content = useMemo(() => typeof children === 'string'
27
28
  ? replaceLineBreaksWithTags(children)
28
29
  : children, [children]);
30
+ const handleNeedsTruncation = useCallback((truncated) => setNeedsTruncation(truncated), [setNeedsTruncation]);
29
31
  const isContentVisible = rows !== 0 || shownMore;
30
- const lines = shownMore ? -1 : rows;
32
+ const formattedContent = shownMore ? (content) : (React.createElement(Truncate, { onTruncate: handleNeedsTruncation, lines: rows }, content));
31
33
  return (React.createElement(React.Fragment, null,
32
- React.createElement(Typography, Object.assign({}, rest, { ref: ref, size: 'medium', color: 'dark-grey', className: className, style: style, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.contentWrapper }), isContentVisible && React.createElement(Truncate, { lines: lines }, content)),
33
- !disableToggle && (React.createElement(ButtonAction, { onClick: () => {
34
+ React.createElement(Typography, Object.assign({}, rest, { ref: ref, size: 'medium', color: 'dark-grey', className: className, style: style, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.contentWrapper }), isContentVisible && formattedContent),
35
+ !disableToggle && needsTruncation && (React.createElement(ButtonAction, { onClick: () => {
34
36
  setShownMore(!shownMore);
35
37
  onToggle();
36
38
  }, className: classes.toggleText, icon: React.createElement("div", { className: classes.iconWrapper },
@@ -1 +1 @@
1
- {"version":3,"file":"ShowMore.js","sourceRoot":"","sources":["../../src/ShowMore/ShowMore.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAa,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAS,MAAM,0BAA0B,CAAA;AAC5D,OAAO,QAAQ,MAAM,gBAAgB,CAAA;AAGrC,OAAO,kBAAkB,MAAM,wBAAwB,CAAA;AACvD,OAAO,UAAU,MAAM,eAAe,CAAA;AACtC,OAAO,MAAM,MAAM,UAAU,CAAA;AAC7B,OAAO,YAAY,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAuBnD,MAAM,SAAS,GAAG,UAAU,CAAQ,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;AAExE,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAyB,SAAS,QAAQ,CAC1E,KAAK,EACL,GAAG;IAEH,MAAM,EACJ,QAAQ,EACR,IAAI,GAAG,CAAC,EACR,eAAe,GAAG,KAAK,EACvB,aAAa,GAAG,KAAK,EACrB,QAAQ,GAAG,WAAW,EACtB,QAAQ,GAAG,WAAW,EACtB,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,EACnB,SAAS,EACT,KAAK,EACL,OAAO,KAEL,KAAK,EADJ,IAAI,UACL,KAAK,EAZH,6HAYL,CAAQ,CAAA;IACT,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAC3B,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAA;IAC3D,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE,CACH,OAAO,QAAQ,KAAK,QAAQ;QAC1B,CAAC,CAAC,yBAAyB,CAAC,QAAQ,CAAC;QACrC,CAAC,CAAC,QAAQ,EACd,CAAC,QAAQ,CAAC,CACX,CAAA;IAED,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAC,IAAI,SAAS,CAAA;IAChD,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAEnC,OAAO,CACL;QACE,oBAAC,UAAU,oBACL,IAAI,IACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,WAAW,EACjB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,iBACC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,KAEnC,gBAAgB,IAAI,oBAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IAAG,OAAO,CAAY,CACtD;QACZ,CAAC,aAAa,IAAI,CACjB,oBAAC,YAAY,IACX,OAAO,EAAE,GAAG,EAAE;gBACZ,YAAY,CAAC,CAAC,SAAS,CAAC,CAAA;gBACxB,QAAQ,EAAE,CAAA;YACZ,CAAC,EACD,SAAS,EAAE,OAAO,CAAC,UAAU,EAC7B,IAAI,EACF,6BAAK,SAAS,EAAE,OAAO,CAAC,WAAW;gBACjC,oBAAC,kBAAkB,IACjB,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;wBAC1B,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,SAAS;qBAClC,CAAC,GACF,CACE,EAER,YAAY,EAAC,OAAO,iBACP,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,IAEjC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CACnB,CAChB,CACA,CACJ,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAA;AAEjC,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"ShowMore.js","sourceRoot":"","sources":["../../src/ShowMore/ShowMore.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toptal/picasso",
3
- "version": "30.0.1",
3
+ "version": "30.0.2",
4
4
  "description": "Toptal UI components library",
5
5
  "publishConfig": {
6
6
  "access": "public",