@itera-web/react-ui-textoverflow 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +0 -0
- package/README.md +1 -0
- package/es/TextOverflow.d.ts +10 -0
- package/es/index.d.ts +1 -0
- package/es/index.js +1 -0
- package/package.json +28 -0
package/LICENSE.md
ADDED
|
File without changes
|
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
### [使用文档](http://iterative.keyboardecho.com/)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface TextOverflowProps {
|
|
3
|
+
className?: string;
|
|
4
|
+
lines?: number;
|
|
5
|
+
lineHeight?: number;
|
|
6
|
+
controlButton?: React.ReactNode | string;
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export declare function TextOverflow({ className, lines, lineHeight, controlButton, children, }: TextOverflowProps): React.JSX.Element;
|
|
10
|
+
export {};
|
package/es/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { TextOverflow } from './TextOverflow';
|
package/es/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as e from"react";import*as t from"@itera-web/hooks-setstate";import*as r from"@itera-web/react-ui-button";import*as n from"@itera-web/utils-cn";var o={d:(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},a={};o.d(a,{l:()=>l});const c=(e=>{var t={};return o.d(t,e),t})({default:()=>e.default,useEffect:()=>e.useEffect,useMemo:()=>e.useMemo,useRef:()=>e.useRef,useState:()=>e.useState});const u=(e=>{var t={};return o.d(t,e),t})({useSetState:()=>t.useSetState});const i=(e=>{var t={};return o.d(t,e),t})({Button:()=>r.Button});const s=(e=>{var t={};return o.d(t,e),t})({cn:()=>n.cn});function l(e){var t=e.className,r=e.lines,n=void 0===r?1:r,o=e.lineHeight,a=void 0===o?1.5:o,l=e.controlButton,f=void 0===l?"":l,m=e.children,d=(0,u.useSetState)(!1),v=d[0],b=d[1],h=d[2],p=(0,c.useState)(!1),g=p[0],E=p[1],S=(0,c.useRef)(null),w=(0,c.useMemo)(function(){return"".concat((n-1)*a,"em")},[n,a]),x=function(){var e=S.current;e&&E(e.scrollHeight>e.clientHeight)},y=function(){b(!h())};return(0,c.useEffect)(function(){x()},[m,n,a,v]),(0,c.useEffect)(function(){var e=S.current;if(e){var t=new ResizeObserver(function(){x()});return t.observe(e),function(){return t.disconnect()}}},[]),c.default.createElement("div",{className:(0,s.cn)('relative text-font text-sm break-words overflow-hidden transition-all before:content-[""] before:block before:h-[var(--before-height)]',t),ref:S,style:{lineHeight:a,maxHeight:v?"none":"".concat(n*a,"em"),"--before-height":w}},c.default.createElement("div",{className:"float-right"},g&&"...",!v&&g&&(f||c.default.createElement(i.Button,{className:"ml-1",color:"primary",onClick:function(){return y()},variant:"text"},"展开"))),c.default.createElement("div",{style:{marginTop:"-".concat(w)}},m,v&&(f||c.default.createElement(i.Button,{className:"ml-1",color:"primary",onClick:function(){return y()},variant:"text"},"收起"))))}var f=a.l;export{f as TextOverflow};
|
package/package.json
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@itera-web/react-ui-textoverflow",
|
|
3
|
+
"description": "多行文本溢出展开收缩",
|
|
4
|
+
"version": "1.1.0",
|
|
5
|
+
"main": "es/index.js",
|
|
6
|
+
"types": "es/index.d.ts",
|
|
7
|
+
"publishConfig": {
|
|
8
|
+
"access": "public"
|
|
9
|
+
},
|
|
10
|
+
"license": "MIT",
|
|
11
|
+
"scripts": {
|
|
12
|
+
"build": "itera-cli package",
|
|
13
|
+
"up": "npm publish"
|
|
14
|
+
},
|
|
15
|
+
"dependencies": {
|
|
16
|
+
"@itera-web/hooks-setstate": "^1.22.0",
|
|
17
|
+
"@itera-web/react-ui-button": "^1.28.1",
|
|
18
|
+
"@itera-web/utils-cn": "^1.22.0"
|
|
19
|
+
},
|
|
20
|
+
"peerDependencies": {
|
|
21
|
+
"react": ">=17.0.0",
|
|
22
|
+
"react-dom": ">=17.0.0"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@itera-web/cli": "^1.1.54"
|
|
26
|
+
},
|
|
27
|
+
"gitHead": "dfd4b68b5b22d838a9b71e170dd46e32312538c0"
|
|
28
|
+
}
|