@xiping/react-components 0.0.56 → 0.0.57
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/dist/cjs/App.d.ts +2 -0
- package/dist/cjs/components/button/Button.d.ts +24 -0
- package/dist/cjs/components/image-viewer/ImageViewer.d.ts +7 -0
- package/dist/cjs/components/image-viewer/ImageViewer.js +1 -0
- package/dist/cjs/components/image-viewer/index.d.ts +3 -0
- package/dist/cjs/components/pinch-content/PinchContent.d.ts +13 -0
- package/dist/{components → cjs/components}/pinch-content/PinchContent.js +1 -1
- package/dist/cjs/components/pinch-content/index.d.ts +4 -0
- package/dist/cjs/components/pinch-content/index.js +1 -0
- package/dist/cjs/components/translate/Translate.d.ts +5 -0
- package/dist/cjs/components/txt-reader/TxtReader.d.ts +14 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/{index.js → cjs/index.js} +1 -1
- package/dist/cjs/main.d.ts +0 -0
- package/dist/cjs/node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/io5/index.js +1 -0
- package/dist/cjs/node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/lib/iconBase.js +1 -0
- package/dist/cjs/node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/lib/iconContext.js +1 -0
- package/dist/cjs/pages/home/Home.d.ts +2 -0
- package/dist/cjs/react-components.css +1 -0
- package/dist/es/App.d.ts +2 -0
- package/dist/es/components/button/Button.d.ts +24 -0
- package/dist/es/components/button/Button.js +83 -0
- package/dist/es/components/image-viewer/ImageViewer.d.ts +7 -0
- package/dist/es/components/image-viewer/ImageViewer.js +39 -0
- package/dist/es/components/image-viewer/index.d.ts +3 -0
- package/dist/es/components/pinch-content/PinchContent.d.ts +13 -0
- package/dist/es/components/pinch-content/PinchContent.js +61 -0
- package/dist/es/components/pinch-content/index.d.ts +4 -0
- package/dist/es/components/pinch-content/index.js +5 -0
- package/dist/es/components/translate/Translate.d.ts +5 -0
- package/dist/es/components/txt-reader/TxtReader.d.ts +14 -0
- package/dist/es/components/txt-reader/TxtReader.js +68 -0
- package/dist/es/index.d.ts +4 -0
- package/dist/es/index.js +11 -0
- package/dist/es/main.d.ts +0 -0
- package/dist/es/node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/io5/index.js +8 -0
- package/dist/es/node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/lib/iconBase.js +108 -0
- package/dist/es/node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/lib/iconContext.js +12 -0
- package/dist/es/pages/home/Home.d.ts +2 -0
- package/dist/es/react-components.css +1 -0
- package/dist/es/vite.svg +1 -0
- package/package.json +11 -4
- package/dist/react-components.css +0 -1
- /package/dist/{components → cjs/components}/button/Button.js +0 -0
- /package/dist/{components → cjs/components}/txt-reader/TxtReader.js +0 -0
- /package/dist/{vite.svg → cjs/vite.svg} +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ReactNode, ButtonHTMLAttributes } from 'react';
|
|
2
|
+
export type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost';
|
|
3
|
+
export type ButtonSize = 'small' | 'medium' | 'large';
|
|
4
|
+
export interface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'disabled'> {
|
|
5
|
+
/** Button variant that changes the visual style */
|
|
6
|
+
variant?: ButtonVariant;
|
|
7
|
+
/** Size of the button */
|
|
8
|
+
size?: ButtonSize;
|
|
9
|
+
/** Custom class name */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** Button contents */
|
|
12
|
+
children: ReactNode;
|
|
13
|
+
/** Optional icon to show before the button text */
|
|
14
|
+
leftIcon?: ReactNode;
|
|
15
|
+
/** Optional icon to show after the button text */
|
|
16
|
+
rightIcon?: ReactNode;
|
|
17
|
+
/** Whether the button is in loading state */
|
|
18
|
+
isLoading?: boolean;
|
|
19
|
+
/** Whether the button is disabled */
|
|
20
|
+
isDisabled?: boolean;
|
|
21
|
+
/** Full width button */
|
|
22
|
+
fullWidth?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export declare const Button: ({ variant, size, className, children, leftIcon, rightIcon, isLoading, isDisabled, fullWidth, type, ...rest }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),l=require("@nextui-org/modal"),n=require("../../node_modules/.pnpm/react-icons@5.4.0_react@18.3.1/node_modules/react-icons/io5/index.js"),r=require("../pinch-content/PinchContent.js"),i=s=>{const{isOpen:o,onClose:t,imgSrc:a}=s;return e.jsx(l.Modal,{isOpen:o,size:"full",onClose:t,className:"pppp bg-black bg-opacity-70",hideCloseButton:!0,children:e.jsxs(l.ModalContent,{children:[e.jsx(l.ModalHeader,{className:"flex flex-col gap-1 relative",children:e.jsx(n.IoCloseSharp,{className:"absolute top-2 right-2 text-white",onClick:t})}),e.jsx(l.ModalBody,{className:"flex items-center justify-center",children:e.jsx(r.default,{children:e.jsx("img",{draggable:"false",src:a,alt:"",className:"w-full h-full object-contain pointer-events-none"})})}),e.jsx(l.ModalFooter,{})]})})};exports.default=i;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface PinchContentProps {
|
|
3
|
+
children?: ReactNode;
|
|
4
|
+
canDrag?: boolean;
|
|
5
|
+
canPinch?: boolean;
|
|
6
|
+
canRotate?: boolean;
|
|
7
|
+
scaleBounds?: {
|
|
8
|
+
min: number;
|
|
9
|
+
max: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
declare const PinchContent: (props: PinchContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export default PinchContent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("react/jsx-runtime"),v=require("@react-spring/web"),d=require("@use-gesture/react"),w=require("react"),h=require("ahooks"),A=d.createUseGesture([d.dragAction,d.pinchAction]),c=a=>a.preventDefault(),B=a=>{const{children:x,canPinch:y=!0,canDrag:p=!0,canRotate:b=!0,scaleBounds:E={min:.3,max:8}}=a,t=w.useRef(null);h.useMount(()=>{var r,e,n;(r=t.current)==null||r.addEventListener("gesturestart",c),(e=t.current)==null||e.addEventListener("gesturechange",c),(n=t.current)==null||n.addEventListener("gestureend",c)}),h.useUnmount(()=>{var r,e,n;(r=t.current)==null||r.removeEventListener("gesturestart",c),(e=t.current)==null||e.removeEventListener("gesturechange",c),(n=t.current)==null||n.removeEventListener("gestureend",c)});const[u,g]=v.useSpring(()=>({x:0,y:0,scale:1,rotateZ:0}));return A({onDrag:({pinching:r,cancel:e,offset:[n,o],...i})=>{if(console.log(i),!p||r)return e();g.start({x:n,y:o})},onPinch:({origin:[r,e],first:n,movement:[o],offset:[i,L],memo:s,cancel:q})=>{if(!y)return q();if(n){const{width:
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("react/jsx-runtime"),v=require("@react-spring/web"),d=require("@use-gesture/react"),w=require("react"),h=require("ahooks"),A=d.createUseGesture([d.dragAction,d.pinchAction]),c=a=>a.preventDefault(),B=a=>{const{children:x,canPinch:y=!0,canDrag:p=!0,canRotate:b=!0,scaleBounds:E={min:.3,max:8}}=a,t=w.useRef(null);h.useMount(()=>{var r,e,n;(r=t.current)==null||r.addEventListener("gesturestart",c),(e=t.current)==null||e.addEventListener("gesturechange",c),(n=t.current)==null||n.addEventListener("gestureend",c)}),h.useUnmount(()=>{var r,e,n;(r=t.current)==null||r.removeEventListener("gesturestart",c),(e=t.current)==null||e.removeEventListener("gesturechange",c),(n=t.current)==null||n.removeEventListener("gestureend",c)});const[u,g]=v.useSpring(()=>({x:0,y:0,scale:1,rotateZ:0}));return A({onDrag:({pinching:r,cancel:e,offset:[n,o],...i})=>{if(console.log(i),!p||r)return e();g.start({x:n,y:o})},onPinch:({origin:[r,e],first:n,movement:[o],offset:[i,L],memo:s,cancel:q})=>{if(!y)return q();if(n){const{width:P,height:m,x:D,y:M}=t.current.getBoundingClientRect(),S=r-(D+P/2),Z=e-(M+m/2);s=[u.x.get(),u.y.get(),S,Z]}const R=s[0]-(o-1)*s[2],j=s[1]-(o-1)*s[3],l={scale:i,rotateZ:0,x:R,y:j};return b&&(l.rotateZ=L),g.start(l),s}},{target:t,drag:{from:()=>[u.x.get(),u.y.get()]},pinch:{scaleBounds:E,rubberband:!0}}),f.jsx("div",{className:"flex fill center",children:f.jsx(v.animated.div,{className:"select-none",ref:t,style:u,children:x})})};exports.default=B;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./PinchContent.js");exports.PinchContent=e.default;exports.default=e.default;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CSSProperties, FC } from 'react';
|
|
2
|
+
interface TxtReaderProps {
|
|
3
|
+
content: string;
|
|
4
|
+
lineHeight?: number;
|
|
5
|
+
fontSize?: number;
|
|
6
|
+
fontWeight?: number | string;
|
|
7
|
+
className?: string;
|
|
8
|
+
style?: CSSProperties;
|
|
9
|
+
onProgressChange?: (progress: number) => void;
|
|
10
|
+
initialScrollPosition?: number;
|
|
11
|
+
cacheKey?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const TxtReader: FC<TxtReaderProps>;
|
|
14
|
+
export default TxtReader;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});;/* empty css */const e=require("./components/button/Button.js"),t=require("./components/txt-reader/TxtReader.js"),r=require("./components/pinch-content/PinchContent.js");exports.Button=e.Button;exports.TxtReader=t.TxtReader;exports.PinchContent=r.default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});;/* empty css */const e=require("./components/button/Button.js"),t=require("./components/txt-reader/TxtReader.js"),r=require("./components/pinch-content/PinchContent.js"),n=require("./components/image-viewer/ImageViewer.js");exports.Button=e.Button;exports.TxtReader=t.TxtReader;exports.PinchContent=r.default;exports.ImageViewer=n.default;
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../lib/iconBase.js");require("../lib/iconContext.js");function r(e){return t.GenIcon({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M400 145.49 366.51 112 256 222.51 145.49 112 112 145.49 222.51 256 112 366.51 145.49 400 256 289.49 366.51 400 400 366.51 289.49 256 400 145.49z"},child:[]}]})(e)}exports.IoCloseSharp=r;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),s=require("./iconContext.js");var O=["attr","size","title"];function v(e,t){if(e==null)return{};var r=y(e,t),n,i;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i<o.length;i++)n=o[i],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function y(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},c.apply(this,arguments)}function m(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?m(Object(r),!0).forEach(function(n){j(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function j(e,t,r){return t=P(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function P(e){var t=h(e,"string");return typeof t=="symbol"?t:t+""}function h(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function b(e){return e&&e.map((t,r)=>l.createElement(t.tag,u({key:r},t.attr),b(t.child)))}function d(e){return t=>l.createElement(p,c({attr:u({},e.attr)},t),b(e.child))}function p(e){var t=r=>{var{attr:n,size:i,title:o}=e,g=v(e,O),f=i||r.size||"1em",a;return r.className&&(a=r.className),e.className&&(a=(a?a+" ":"")+e.className),l.createElement("svg",c({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},r.attr,n,g,{className:a,style:u(u({color:e.color||r.color},r.style),e.style),height:f,width:f,xmlns:"http://www.w3.org/2000/svg"}),o&&l.createElement("title",null,o),e.children)};return s.IconContext!==void 0?l.createElement(s.IconContext.Consumer,null,r=>t(r)):t(s.DefaultContext)}exports.GenIcon=d;exports.IconBase=p;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react");var t={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},n=e.createContext&&e.createContext(t);exports.DefaultContext=t;exports.IconContext=n;
|