@topthink/components 1.0.78 → 1.0.80
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/es/image-dGVTfSpy.js +1 -0
- package/es/index-5if674Am.js +72 -0
- package/es/index-G1E7EOIF.js +4 -0
- package/es/{index-ay0UACAO.js → index-iNklwZKy.js} +1 -1
- package/es/index-mDUhFN2o.js +1 -0
- package/es/index.js +1 -1
- package/es/infinite-scroller-LLpQVUWb.js +1 -0
- package/es/slider-KuqHu6UH.js +39 -0
- package/package.json +6 -2
- package/types/components/card-list.d.ts +1 -0
- package/types/components/infinite-scroller.d.ts +4 -0
- package/types/components/lazy/infinite-scroller.d.ts +25 -0
- package/types/components/lazy/lightbox/image.d.ts +5 -1
- package/types/components/lazy/lightbox/index.d.ts +4 -1
- package/types/components/lazy/slider.d.ts +4 -0
- package/types/components/request-button.d.ts +2 -2
- package/types/components/slider.d.ts +4 -0
- package/types/index.d.ts +3 -0
- package/es/image-GvVhZYp9.js +0 -1
- package/es/index-7FvyDh2h.js +0 -1
- package/es/index-gYTBuYWX.js +0 -1
- package/es/index-kWp6EVXg.js +0 -72
- package/types/components/lightbox.d.ts +0 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useContext as r,useState as t,useEffect as i}from"react";import{I as s}from"./context-jiLXU49j.js";import{useInView as o}from"react-intersection-observer";let c=0;function n(n){let{lazy:m=!0,...a}=n;const{registerImage:g,setShow:f,setCurrent:h}=r(s),{ref:l,inView:w}=o({threshold:.1,skip:!m}),[p]=t((()=>(c+=1,c)));return i((()=>{if(a.src)return g(p,a.src)}),[]),e("img",{ref:l,...a,src:!w&&m?"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='1' height='1'%3e %3crect width='1' height='1' fill='none'/%3e%3c/svg%3e":a.src,onClick:()=>{h(p),f(!0)}})}export{n as default};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import e from"sweetalert2/dist/sweetalert2.js";import t from"sweetalert2-react-content";import{jsx as n,jsxs as r,Fragment as o}from"react/jsx-runtime";import{useRef as i,useState as a,useEffect as c,createContext as s,Fragment as l,useContext as d,useCallback as u,useMemo as f,forwardRef as m,Children as h,lazy as p,Suspense as g,createElement as y,useImperativeHandle as b,memo as x}from"react";import{OverlayTrigger as v,Tooltip as w,Spinner as k,Button as C,Modal as N,Alert as S,Card as j,Pagination as z,Offcanvas as T,Row as B,Col as P}from"react-bootstrap";import{uniqueId as $,values as H,debounce as E}from"lodash";import F from"axios";import A from"query-string";import*as L from"retry-axios";import D from"rc-notification";import M from"path";import O,{css as _}from"styled-components";import I from"classnames";import{useUrlSearchParams as U}from"use-url-search-params";import R from"copy-to-clipboard";import{useAsyncCallback as q}from"react-async-hook";import{freeze as G,produce as V}from"immer";import"react-intersection-observer";const K=t(e),J={confirmButtonText:"确定",cancelButtonText:"取消"},Y={confirm:async e=>{const{isConfirmed:t}=await K.fire({...J,icon:"warning",showCancelButton:!0,...e,async preConfirm(t){if(e.preConfirm)try{return await e.preConfirm(t)}catch(e){return e instanceof Error&&K.showValidationMessage(e.message),!1}return!0}});return t},success:e=>{K.fire({...J,toast:!0,position:"top",icon:"success",timer:2e3,showConfirmButton:!1,...e})},error:e=>{K.fire({...J,toast:!0,position:"top",icon:"error",timer:5e3,showConfirmButton:!1,...e})},close:e=>{K.close(e)},defaults:J};const Q=s({});function W(e){return t=>{let{resolve:r,destroy:o,message:s}=t;const[l,m]=function(e){const t=i(null),[n,r]=a(e);return c((()=>{t.current&&(t.current(),t.current=null)}),[n]),[n,(e,n)=>{t.current="function"==typeof n?n:null,r(e)}]}(!0),h=d(Q),p=u((e=>{m(!1,(()=>{r(e)}))}),[m,r]),g=f((()=>({show:l,onHide:()=>p(),onExited:()=>o(),container:h.container})),[l,p,o]);return n(e,{resolve:p,state:g,message:s})}}function X(e){return t=>new Promise((r=>{const o=n(e,{resolve:r,destroy:()=>{ne(o)},message:t});te(o)}))}let Z=()=>{},ee=new Set;const te=e=>{ee=new Set(ee),ee.add(e),Z(ee)},ne=e=>{ee=new Set(ee),ee.delete(e),Z(ee)};function re(e,t){return X(W(e))(t)}function oe(e){let{tooltip:t,children:r,placement:o="bottom"}=e;return n(v,{placement:o,overlay:n(w,{id:$(),children:t}),children:r})}const ie=s(!1),ae=m(((e,t)=>{let{loading:i,percent:a,disabled:c,children:s,tooltip:l,variant:u,...f}=e;d(ie)&&!u&&(u="link"),i&&(c=!0,s=r(o,{children:[n(k,{ref:t,as:"span",size:"sm",role:"status","aria-hidden":"true",animation:"border"}),a?r("span",{className:"ms-2",children:[a,"%"]}):null]}));const m=n(C,{ref:t,...f,variant:u,disabled:c,children:s});return l?n(oe,{tooltip:l,children:n("span",{className:"d-inline-block",children:m})}):m})),ce=function(e){let{state:t,message:{title:o,message:i,okText:a,cancelText:c},resolve:s}=e;return r(N,{...t,children:[n(N.Header,{children:n(N.Title,{as:"h5",children:o||"确认"})}),n(N.Body,{children:i}),r(N.Footer,{children:[n(ae,{variant:"secondary",onClick:()=>s(),children:c||"取消"}),n(ae,{onClick:()=>s(!0),children:a||"确定"})]})]})};const se=e=>{let{header:t,children:i,footer:c,closable:s=!0,show:l,cancelText:d="取消",okText:u="确定",onOk:m,onCancel:h,onHide:p,okButtonProps:g,bodyAs:y,headerAs:b="h5",confirmLoading:x=!1,...v}=e;const[w,k]=a(!1),C=f((()=>n(ae,{loading:w||x,variant:"primary",onClick:async e=>{k(!0);try{await(m?.(e)),e.defaultPrevented||p?.()}finally{k(!1)}},...g,children:u})),[g,u,m,p,w,x]),S=f((()=>n(ae,{variant:"secondary",onClick:e=>{h?.(e),e.defaultPrevented||p?.()},children:d})),[h,p,d]);switch(typeof c){case"undefined":c=r(o,{children:[S,C]});break;case"function":c=c({okButton:C,cancelButton:S})}return r(N,{...v,onHide:p,show:l,children:[t&&n(N.Header,{closeButton:s,children:n(N.Title,{as:b,children:t})}),n(N.Body,{as:y,children:i}),c&&n(N.Footer,{children:c})]})};let le;se.Message=function(e){const[t,r]=a(ee);return c((()=>{Z=r}),[]),n(Q.Provider,{value:e,children:Array.from(t).map(((e,t)=>n(l,{children:e},`message-${t}`)))})},se.confirm=function(e){return X(W(ce))(e)},se.show=re;const de={};const ue=e=>{let{type:t,...r}=e;!function(e){if(le)return e(le);D.newInstance({...de,prefixCls:"notification",maxCount:5,style:{top:20,right:20}},(t=>{le?e(le):(le=t,e(t))}))}((e=>{r.duration=3;let o=t;if("error"===t)o="danger",r.duration=r.closable?0:5;r.content=n(S,{variant:o,children:r.content}),e.notice(r)}))},fe=["error","success","info"].reduce(((e,t)=>(e[t]=(e,n)=>{ue({...n,type:t,content:e})},e)),{});function me(e){return e&&"object"==typeof e}fe.defaults=de,L.attach(),F.defaults.raxConfig={retryDelay:2e3,backoffType:"static",shouldRetry:e=>{let{config:t,response:n}=e;return!(t.raxConfig?.retryDecider&&!t.raxConfig.retryDecider())&&("GET"===t.method?.toUpperCase()&&449===n?.status)}},F.defaults.maxContentLength=1/0,F.defaults.maxBodyLength=1/0,F.defaults.baseURL="/api",F.defaults.authTokenName="authorization",F.interceptors.request.use((e=>{const t=e.authTokenName;if(t){const n=localStorage.getItem(t);n&&(e.headers={Authorization:`Bearer ${n}`,...e.headers})}return e}),(e=>Promise.reject(e))),F.interceptors.response.use((e=>(201===e.status&&e.data.location&&(window.location.href=e.data.location,e.data=void 0),e)),(e=>{if(F.isAxiosError(e)&&e.response){const{data:t,status:n}=e.response;401===n?(e.errors="Unauthorized",fe.error("Unauthorized")):me(t)?422===n?e.errors=t:"message"in t&&(e.errors=t.message):e.errors=t}return Promise.reject(e)}));const he=F.isAxiosError,pe=e=>{if(!F.isAxiosError(e))throw e;{let t=e.errors;"string"!=typeof e.errors&&(t=Object.values(e.errors).join("<br />")),fe.error(t)}},ge=async function(e){e="string"==typeof e?{url:e}:e;const{data:t}=await F.request({paramsSerializer:function(e){return A.stringify(e,{sort:!1,skipNull:!0,skipEmptyString:!0,arrayFormat:"bracket"})},...e});return t};ge.defaults=F.defaults,ge.interceptors=F.interceptors;function ye(e){const t=(()=>{const e=i(!1);return c((()=>(e.current=!1,()=>{e.current=!0})),[]),e})(),[n,r]=a(e);return[n,u((e=>{t.current||r(e)}),[])]}const be=function(e){let{state:t,message:r,resolve:o}=e;const a=i(!0),{result:s,checkUrl:l,onComplete:d}=r,[u,f]=ye(!1);return c((()=>{ge({url:l,method:"post",data:{order_no:s.order_no},raxConfig:{shouldRetry:e=>a.current&&449===e.response?.status}}).then((()=>{d?.(),o()})).catch((()=>null))}),[]),n(se,{...t,centered:!0,onHide:()=>{a.current=!1,t.onHide()},backdrop:"static",header:"支付结果",okText:"已完成支付",okButtonProps:{loading:u},onOk:async e=>{e.preventDefault();try{f(!0),await ge({url:l,method:"post",data:{order_no:s.order_no},raxConfig:{shouldRetry:()=>!1}}),d?.(),o()}catch{}finally{f(!1)}},cancelText:"取消",children:"请在新打开的页面上进行支付,支付完成后再关闭此窗口"})};function xe(e){const{result:t}=e;window.open(t.pay_url),re(be,e)}function ve(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return e>=1024**3?(e/1024**3).toFixed(t)+"G":e>=1048576?(e/1048576).toFixed(t)+"M":(e/1024).toFixed(t)+"K"}function we(e){const t=M.extname(e);return!(!/^data:image\//.test(e)&&!/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico)$/i.test(t))||!/^data:/.test(e)&&!t}function ke(e){const t=document.createElement("a");return t.href=e,t.href}const Ce=O.div`
|
|
2
|
+
padding: 48px 32px;
|
|
3
|
+
`,Ne=O.div`
|
|
4
|
+
margin-bottom: 24px;
|
|
5
|
+
text-align: center;
|
|
6
|
+
font-size: 72px;
|
|
7
|
+
`,Se=O.div`
|
|
8
|
+
color: rgba(0, 0, 0, .85);
|
|
9
|
+
font-size: 24px;
|
|
10
|
+
line-height: 1.8;
|
|
11
|
+
text-align: center;
|
|
12
|
+
`,je=O.div`
|
|
13
|
+
margin-top: 32px;
|
|
14
|
+
text-align: center;
|
|
15
|
+
`,ze={success:n("i",{className:"bi bi-check-circle-fill text-success"}),error:n("i",{className:"bi bi-exclamation-circle-fill text-danger"}),info:n("i",{className:"bi bi-info-circle-fill text-info"}),warning:n("i",{className:"bi bi-exclamation-triangle-fill text-warning"})};function Te(e){let{status:t,title:o,icon:i,extra:a}=e;return!i&&t&&(i=ze[t]),r(Ce,{children:[i&&n(Ne,{children:i}),o&&n(Se,{children:o}),a&&n(je,{children:a})]})}O.div`
|
|
16
|
+
position: relative;
|
|
17
|
+
`;const Be=O.div`
|
|
18
|
+
display: ${e=>e.active?"flex":"none"};
|
|
19
|
+
position: absolute;
|
|
20
|
+
top: 0 !important;
|
|
21
|
+
left: 0 !important;
|
|
22
|
+
width: 100%;
|
|
23
|
+
height: 100%;
|
|
24
|
+
text-align: center;
|
|
25
|
+
vertical-align: middle;
|
|
26
|
+
padding: 1em;
|
|
27
|
+
background-color: ${e=>e.inverted?"rgba(255, 255, 255, .85)":"rgba(0, 0, 0, .85)"};
|
|
28
|
+
opacity: ${e=>e.active?1:0};
|
|
29
|
+
line-height: 1;
|
|
30
|
+
animation-fill-mode: both;
|
|
31
|
+
animation-duration: .5s;
|
|
32
|
+
transition: background-color .5s linear;
|
|
33
|
+
flex-direction: column;
|
|
34
|
+
align-items: center;
|
|
35
|
+
justify-content: center;
|
|
36
|
+
user-select: none;
|
|
37
|
+
will-change: opacity;
|
|
38
|
+
z-index: 990;
|
|
39
|
+
`;function Pe(e){let{loading:t=!0,children:o,variant:i="primary",animation:a="border",wrap:c,...s}=e;return t?(o&&(o=n("p",{className:"mt-3 text-secondary",children:o})),o=r(Be,{inverted:!0,active:!0,children:[n(k,{animation:a,variant:i,...s}),o]}),c?n($e,{$height:"number"==typeof c?c:150,children:o}):o):null}const $e=O.div`
|
|
40
|
+
position: relative;
|
|
41
|
+
height: ${e=>`${e.$height}px`};
|
|
42
|
+
`;function He(e){let{children:t,title:i,className:a,...c}=e;return n(j,{className:I("border-0 shadow-sm mb-3",a),...c,children:r("div",{className:"card-body",children:[i&&r(o,{children:[n("h5",{children:i}),n("hr",{})]}),t]})})}function Ee(e){let{errors:t}=e;return t?n(S,{variant:"danger",children:n("ul",{className:"mb-0",children:"string"==typeof t?n("li",{children:t}):Object.entries(t).map((e=>{let[t,r]=e;return n("li",{children:r},t)}))})}):null}function Fe(e){let{children:t,className:r,size:o="small",direction:i="horizontal"}=e;"string"==typeof o&&(o={small:8,middle:16,large:24}[o]);const a=h.map(t,(e=>{if(e)return n(Le,{children:e})}));return n(Ae,{className:r,$direction:i,$size:o,children:a})}const Ae=O.div`
|
|
43
|
+
display: inline-flex;
|
|
44
|
+
align-items: center;
|
|
45
|
+
gap: ${e=>e.$size}px;
|
|
46
|
+
|
|
47
|
+
${e=>"vertical"===e.$direction&&_`
|
|
48
|
+
display: flex;
|
|
49
|
+
flex-direction: column;
|
|
50
|
+
align-items: inherit;
|
|
51
|
+
`}
|
|
52
|
+
`,Le=O.div`
|
|
53
|
+
|
|
54
|
+
`,De=p((()=>import("./steps-b_BcYIwk.js"))),Me=p((()=>import("./steps-b_BcYIwk.js").then((e=>{let{Step:t}=e;return{default:t}}))));function Oe(e){return n(g,{fallback:null,children:n(De,{...e})})}const _e=function(e){return n(g,{fallback:null,children:n(Me,{...e})})};function Ie(e){let{title:t,content:o,footer:i}=e;return r(He,{children:[n(qe,{children:t}),n(Re,{children:o}),i&&n(Ue,{children:i})]})}Oe.Step=_e;const Ue=O.div`
|
|
55
|
+
margin-top: 9px;
|
|
56
|
+
padding-top: 10px;
|
|
57
|
+
border-top: 1px solid #f0f0f0;
|
|
58
|
+
color: rgba(0, 0, 0, .65);
|
|
59
|
+
`,Re=O.div`
|
|
60
|
+
color: rgba(0, 0, 0, .85);
|
|
61
|
+
font-size: 24px;
|
|
62
|
+
`,qe=O.div`
|
|
63
|
+
margin-bottom: 4px;
|
|
64
|
+
color: rgba(0, 0, 0, .45);
|
|
65
|
+
font-size: 1.1rem;
|
|
66
|
+
`;function Ge(){}function Ve(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}function Ke(e){return"current_page"in e}function Je(e){let{total:t=0,onChange:r=Ge,defaultCurrent:o=1,defaultPageSize:i=10,className:s,...l}=e;const[d,m]=a(o),[h,p]=a(i);c((()=>{Ve(l.current)&&m(l.current)}),[l.current]),c((()=>{Ve(l.pageSize)&&p(l.pageSize)}),[l.pageSize]);const g=f((()=>Math.floor((t-1)/h)+1),[t,h]),y=u((e=>()=>{e!==d&&(m(e),r(e,h))}),[r,d,h]),b=d-1>0?d-1:0,x=d+1<g?d+1:g,v=[];let w=null,k=null,C=null,N=null;if(g<=7)for(let e=1;e<=g;e+=1){const t=d===e;v.push(n(z.Item,{active:t,onClick:y(e),children:e},e))}else{N=n(z.Last,{onClick:y(g)},"last"),C=n(z.First,{onClick:y(1)},"first"),w=n(z.Prev,{onClick:y(b)},"prev"),k=n(z.Next,{onClick:y(x)},"next");let e=Math.max(1,d-2),t=Math.min(d+2,g);d-1<=2&&(t=5),g-d<=2&&(e=g-4);for(let r=e;r<=t;r+=1){const e=d===r;v.push(n(z.Item,{active:e,onClick:y(r),children:r},r))}d-1>=4&&3!==d&&v.unshift(w),g-d>=4&&d!==g-2&&v.push(k),1!==e&&v.unshift(C),t!==g&&v.push(N)}return n(z,{className:s,children:v})}function Ye(e){let{className:t,value:r,locale:i="zh-CN",currency:a=!0,options:c={}}=e;const s=f((()=>{let e;return e=a?{style:"currency",currency:"CNY"}:{minimumFractionDigits:2},new Intl.NumberFormat(i,{...e,...c})}),[a,i,c]);return t?n("span",{className:t,children:s.format(r)}):n(o,{children:s.format(r)})}function Qe(e){let{loading:t,disabled:r,children:o,...i}=e;return n(C,{...i,disabled:t||r,children:t?"Loading…":o})}const We=p((()=>import("./image-zoom-OrIPGqh0.js")));function Xe(e){return n(g,{fallback:null,children:n(We,{...e})})}const Ze=m(((e,t)=>{let{url:n,method:r,confirm:o,onSuccess:i,children:a,disabled:c,as:s=ae,...l}=e;const[d,f]=ye(!1),m=u((async e=>{e.preventDefault();try{if(f(!0),o&&!await se.confirm({message:o}))return;const e="string"==typeof n?{url:n,method:r}:{method:r,...n},t=await ge(e);i&&i(t)}catch(e){pe(e)}finally{f(!1)}}),[n,r,f]);return y(s,{...l,disabled:c||d,onClick:m,ref:t},a)})),et=p((()=>import("./index-mDUhFN2o.js"))),tt=m(((e,t)=>n(g,{fallback:null,children:n(et,{...e,ref:t})}))),nt=p((()=>import("./index-iNklwZKy.js"))),rt=m(((e,t)=>n(g,{fallback:null,children:n(nt,{...e,ref:t})})));let ot=0;function it(){let{onHide:e,onShow:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const[n,r]=a(!1),[o,i]=a(`visible-${ot}`),c=u((()=>{r(!1),e&&e()}),[r,e]),s=u((()=>{i("visible-"+ ++ot)}),[i,ot]);return{visible:n,show:u((()=>{r(!0),t&&t()}),[r,t]),hide:c,state:{show:n,onHide:c,onExited:s,key:o}}}const at=m(((e,t)=>{let{text:i,onOk:a,modalProps:c,children:s,onShow:l,onHide:d,confirmLoading:u,as:f=ae,...m}=e;const{state:h,show:p,hide:g}=it({onShow:l,onHide:d});b(t,(()=>({close:g})));const x=y(f,{...m,onClick:p},i);return r(o,{children:[x,n(se,{header:i,...c,...h,confirmLoading:u,onOk:async e=>{if(a){!1===await a()&&e.preventDefault()}},children:s})]})})),ct=m(((e,t)=>{let{text:o,onSuccess:c,onSubmit:s,buttonProps:l,modalProps:d,children:f,...m}=e;const[h,p]=a(!1),g=i(null),y=i(null);b(t,(()=>({close:()=>{g.current?.close()}})));const x=u((()=>(y.current?.submit(),!1)),[]),v=u((e=>{c&&c(e),g.current?.close()}),[c]),w=u((async(e,t)=>{s&&await s(e,t)&&g.current?.close()}),[s]);return n(at,{ref:g,text:o,...l,modalProps:d,onOk:x,confirmLoading:h,children:r(tt,{...m,onSubmitting:p,ref:y,onSuccess:v,onSubmit:w,children:[f,n("input",{type:"submit",hidden:!0})]})})}));function st(e){let{header:t,children:o,closable:i=!0,show:a,onHide:c,bodyAs:s,headerAs:l="h5",...d}=e;return r(T,{...d,onHide:c,show:a,children:[t&&n(T.Header,{closeButton:i,children:n(T.Title,{as:l,children:t})}),n(T.Body,{as:s,children:o})]})}const lt=m(((e,t)=>{let{text:i,offcanvasProps:a,children:c,onShow:s,onHide:l,as:d=ae,...u}=e;const{state:f,show:m,hide:h}=it({onShow:s,onHide:l});b(t,(()=>({close:h})));const p=y(d,{...u,onClick:m},i);return r(o,{children:[p,n(st,{header:i,...a,...f,children:c})]})}));function dt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const n=i(e);return c((()=>{n.current=e})),u((function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return n.current?.(...t)}),t)}function ut(e){const{value:t,defaultValue:n,onChange:r,shouldUpdate:o=((e,t)=>e!==t)}=e,i=dt(r),c=dt(o),[s,l]=a(n),d=void 0!==t,u=d?t:s,f=dt((e=>{const t="function"==typeof e?e(u):e;c(u,t)&&(d||l(t),i(t))}),[d,i,u,c]);return[u,f]}const ft=m(((e,t)=>{let{className:o,rowClassName:s,paginate:l=!0,sync:d=!1,columns:f=3,source:m,renderItem:h,renderEmpty:p}=e;const[g,y]=a([]),[x,v]=a(l?{total:0,current:1,pageSize:10}:null),[w,k]=a(!0),[C,N]=U({}),[S,j]=ut({value:d?C.page||1:void 0,defaultValue:1,onChange:e=>{d&&N({page:e||void 0})}}),z=u((async function(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]||k(!0);try{let e;const t={page:S>1?S:void 0};e="string"==typeof m?await ge({url:m,params:t}):await m(t),l&&Ke(e)&&(e.last_page>1&&v({total:e.total,current:e.current_page,pageSize:e.per_page}),e=e.data),y(e)}catch(e){}finally{k(!1)}}),[m,y,S]);c((()=>{z()}),[S]),c((()=>{T.current={reload:z}}),[z]);const T=i({reload:z});return b(t,(()=>T.current)),r(mt,{className:o,children:[n(Pe,{wrap:!0,loading:w}),0===g.length&&!w&&p?.(),n(B,{className:s,children:g.map(((e,t)=>n(P,{className:"d-flex",md:12/f,children:h(e)},`card-${t}`)))}),x&&n(ht,{...x,onChange:j})]})})),mt=O.div`
|
|
67
|
+
|
|
68
|
+
`,ht=O(Je)`
|
|
69
|
+
margin-bottom: 0;
|
|
70
|
+
justify-content: flex-end;
|
|
71
|
+
margin-top: 1rem;
|
|
72
|
+
`;var pt=x(ft);function gt(e){let{as:t="div",className:r,content:o,tooltip:s=!0,placement:l}=e;const[d,u]=a(!1),f=i();c((()=>()=>{f.current&&clearTimeout(f.current)}),[]);const m=s?n("i",d?{className:"bi bi-clipboard-check"}:{className:"bi bi-clipboard"}):d?"已复制":"复制",h=y(t,{role:"button",className:r,onClick:()=>{"function"==typeof o&&(o=o()),R(o),u(!0),f.current&&clearTimeout(f.current),f.current=setTimeout((()=>{u(!1),f.current=void 0}),3e3)}},m);return s?n(oe,{tooltip:d?"已复制":"复制",placement:l,children:h}):h}const yt=p((()=>import("./index-G1E7EOIF.js"))),bt=p((()=>import("./image-dGVTfSpy.js")));function xt(e){return n(g,{fallback:null,children:n(yt,{...e})})}xt.Image=function(e){return n(g,{fallback:null,children:n(bt,{...e})})};const vt=p((()=>import("./infinite-scroller-LLpQVUWb.js"))),wt=m(((e,t)=>n(g,{fallback:null,children:n(vt,{...e,ref:t})}))),kt=p((()=>import("./slider-KuqHu6UH.js")));function Ct(e){return n(g,{fallback:null,children:n(kt,{...e})})}function Nt(e){let{manual:t,refreshDeps:n,...r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{execute:o,currentParams:i,error:a,...s}=q((async t=>(e="string"==typeof e?{url:e}:e,await ge({...e,...t}))),r);c((()=>{if(!t&&!n)try{o()}catch{}}),[]),c((()=>{n&&l()}),n);const l=u((async()=>{try{i?await o(...i):await o()}catch{}}),[o,i]);if(a&&he(a)){const e=a.errors;a=new Error("string"==typeof e?e:H(e).join(""))}return{refresh:l,execute:o,error:a,...s}}function St(e,t,n){const r=i(e),o=i(E(e,t,n));return c((()=>{r.current=e})),c((()=>{o.current=E((function(){r.current(...arguments)}),t,n)}),[t,n]),o.current}function jt(e){const[t,n]=a((()=>G("function"==typeof e?e():e,!0)));return[t,u((e=>{n("function"==typeof e?V(e):G(e))}),[])]}export{wt as A,ae as B,He as C,Ct as D,Ee as E,tt as F,Nt as G,it as H,Xe as I,he as J,pe as K,Pe as L,Y as M,Ye as N,lt as O,Je as P,Te as R,Fe as S,ie as T,ut as a,ye as b,jt as c,fe as d,me as e,ve as f,we as g,ke as h,Ke as i,Oe as j,_e as k,Ie as l,Qe as m,Ze as n,rt as o,ct as p,at as q,ge as r,se as s,st as t,St as u,oe as v,xe as w,pt as x,gt as y,xt as z};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{jsxs as t,jsx as o}from"react/jsx-runtime";import{useState as r,useCallback as e}from"react";import n from"yet-another-react-lightbox";import i from"yet-another-react-lightbox/plugins/counter";import l from"yet-another-react-lightbox/plugins/download";import a from"yet-another-react-lightbox/plugins/zoom";import s from"yet-another-react-lightbox/plugins/thumbnails";import"yet-another-react-lightbox/styles.css";import"yet-another-react-lightbox/plugins/counter.css";import"yet-another-react-lightbox/plugins/thumbnails.css";import"yet-another-react-lightbox/plugins/captions.css";import{I as c}from"./context-jiLXU49j.js";import m from"styled-components";const p={counter:i,zoom:a,download:l,thumbnails:s};function u(n){let{children:i,plugins:l=["counter","zoom","download"]}=n;const[a,s]=r((()=>new Map)),[m,u]=r(),[h,d]=r(!1),b=e(((t,o)=>(s((r=>new Map(r).set(t,o))),()=>{s((o=>{const r=new Map(o);return r.delete(t)?r:o}))})),[]),x=Array.from(a.keys()),y=x.indexOf(m),f=x.map((t=>({src:a.get(t)})));return t(c.Provider,{value:{images:a,current:m,setCurrent:u,setShow:d,registerImage:b},children:[i,o(g,{plugins:l.map((t=>p[t])),open:h,index:y,close:()=>d(!1),slides:f,carousel:{finite:!0,preload:3},render:{buttonPrev:f.length<=1?()=>null:void 0,buttonNext:f.length<=1?()=>null:void 0},controller:{closeOnBackdropClick:!0}})]})}const g=m(n)`
|
|
2
|
+
--yarl__color_backdrop: rgba(0, 0, 0, .7);
|
|
3
|
+
--yarl__thumbnails_container_background_color: rgba(0, 0, 0, .9);
|
|
4
|
+
`;export{u as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import n from"rc-table";import{unstable_batchedUpdates as o}from"react-dom";import{FormControl as a,Table as i}from"react-bootstrap";import{useUrlSearchParams as c}from"use-url-search-params";import{isEqual as l,omit as s}from"lodash";import*as d from"react";import{useState as p,useCallback as u,useRef as m,useEffect as h,useMemo as f,memo as g,forwardRef as v,useImperativeHandle as y}from"react";import{B as b,u as x,P as w,a as j,r as C,i as k,N as S,L as E,T as O,C as V,S as z}from"./index-
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import n from"rc-table";import{unstable_batchedUpdates as o}from"react-dom";import{FormControl as a,Table as i}from"react-bootstrap";import{useUrlSearchParams as c}from"use-url-search-params";import{isEqual as l,omit as s}from"lodash";import*as d from"react";import{useState as p,useCallback as u,useRef as m,useEffect as h,useMemo as f,memo as g,forwardRef as v,useImperativeHandle as y}from"react";import{B as b,u as x,P as w,a as j,r as C,i as k,N as S,L as E,T as O,C as V,S as z}from"./index-5if674Am.js";import N from"styled-components";import H from"./index-mDUhFN2o.js";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"axios";import"query-string";import"retry-axios";import"rc-notification";import"path";import"classnames";import"copy-to-clipboard";import"react-async-hook";import"immer";import"react-intersection-observer";import"@topthink/json-form";const q=function(t){let{indeterminate:r=!1,...n}=t;const o=m(null);return h((()=>{o.current&&(o.current.indeterminate=r)}),[r]),e("input",{ref:o,...n,className:"form-check-input",type:"checkbox"})};var K;function M(){return M=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},M.apply(this,arguments)}const B=e=>d.createElement("svg",M({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"currentColor",viewBox:"0 0 1024 1024"},e),K||(K=d.createElement("path",{d:"M252.069 906.496h520.283c89.582 0 134.144-44.562 134.144-132.846V250.331c0-88.283-44.562-132.845-134.144-132.845H252.069c-89.143 0-134.583 44.141-134.583 132.845V773.67c0 88.704 45.44 132.845 134.583 132.845zm1.28-68.992c-42.844 0-66.853-22.71-66.853-67.291V253.806c0-44.58 24.01-67.292 66.853-67.292h517.723c42.423 0 66.432 22.711 66.432 67.292v516.388c0 44.58-24.01 67.292-66.432 67.292zM511.78 714.496c22.71 0 36.425-15.854 36.425-40.704V547.365H682.35c24.009 0 40.722-12.874 40.722-35.584 0-23.132-15.854-36.426-40.722-36.426H548.206V340.773c0-24.85-13.715-40.704-36.425-40.704s-35.566 16.713-35.566 40.722v134.583H342.49c-24.85 0-41.142 13.275-41.142 36.407 0 22.71 17.152 35.584 41.142 35.584h133.724v126.427c0 23.99 12.855 40.704 35.566 40.704"})));var P;function F(){return F=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},F.apply(this,arguments)}const T=e=>d.createElement("svg",F({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"currentColor",viewBox:"0 0 1024 1024"},e),P||(P=d.createElement("path",{d:"M252.069 906.496h520.283c89.582 0 134.144-44.562 134.144-132.846V250.331c0-88.283-44.562-132.845-134.144-132.845H252.069c-89.143 0-134.583 44.141-134.583 132.845V773.67c0 88.704 45.44 132.845 134.583 132.845zm1.28-68.992c-42.844 0-66.853-22.71-66.853-67.291V253.806c0-44.58 24.01-67.292 66.853-67.292h517.723c42.423 0 66.432 22.711 66.432 67.292v516.388c0 44.58-24.01 67.292-66.432 67.292zm86.582-289.719h344.576c23.991 0 40.704-12.855 40.704-35.566 0-23.15-15.433-36.425-40.704-36.425H339.931c-24.868 0-40.722 13.276-40.722 36.425 0 22.711 16.713 35.566 40.722 35.566"})));function D(r){let{data:n,options:o,columns:a,onSearch:i}=r;const[c,s]=p(0),[d,m]=p(n);h((()=>{l(n,d)||(m(n),s((e=>e+1)))}),[n]);const[g,v,y]=f((()=>{const e={"ui:col":10,"ui:order":o.order},t={},r={};o.fields.forEach((n=>{const i=a.find((e=>e.dataIndex===n));if(i){const a=i.title;if("string"==typeof a){if(e[n]={"ui:col":4,"ui:labelCol":3,"ui:placeholder":"请输入",...o.ui?.[n]},i.valueEnum){const t=i.valueEnum;return e[n]["ui:placeholder"]="请选择",r[n]={title:a,type:"string",enum:Object.keys(t).flatMap((e=>"string"==typeof t[e].text?[e]:[])),enumNames:Object.keys(t).flatMap((e=>{const r=t[e].text;return"string"==typeof r?[r]:[]}))}}t[n]=void 0,r[n]={title:a,type:"string"}}}})),o.extraFields&&Object.entries(o.extraFields).forEach((n=>{let[a,i]=n;e[a]={"ui:col":4,"ui:labelCol":3,"ui:placeholder":"请输入",...o.ui?.[a]},t[a]=void 0,r[a]={title:i,type:"string"}}));return[{type:"object",properties:r},e,t]}),[o.fields,o.extraFields]),x=u((e=>{let{formData:t}=e;m(t),i({...y,...t})}),[i,y]),w=u((()=>{i(y)}),[i,y]);return e(I,{children:e(H,{formContext:{layout:"horizontal"},schema:g,uiSchema:v,onSubmit:x,formData:d,children:e("div",{className:"col-2 ms-auto mt-auto",children:t("div",{className:"justify-content-end d-flex gap-2 ",children:[e(b,{className:"px-4",onClick:w,variant:"secondary",children:"重置"}),e(b,{className:"px-4",type:"submit",variant:"primary",children:"查询"})]})})})},c)}const I=N.div`
|
|
2
2
|
margin-bottom: 1rem;
|
|
3
3
|
`;function R(t){let{keyword:r,onKeywordChange:n}=t;const[o,i]=p(r),c=x(n,500);h((()=>{i(r)}),[r]);const l=u((e=>{i(e.target.value),c(e.target.value)}),[c,i]);return e(a,{value:o,onChange:l,type:"search",placeholder:"Search..."})}const _=N.thead`
|
|
4
4
|
th {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import o,{getRegistry as r}from"@topthink/json-form";import*as a from"react";import{forwardRef as e,useState as n,useCallback as i}from"react";import s from"axios";import{b as p,r as m,B as l}from"./index-5if674Am.js";import{mapValues as c}from"lodash";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react-bootstrap";import"query-string";import"retry-axios";import"rc-notification";import"path";import"styled-components";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"react-async-hook";import"immer";import"react-intersection-observer";const d=require("ajv-i18n/localize/zh"),u=a.lazy((()=>import("./editor-widget-CQ3zv-Xu.js"))),f=o=>t(a.Suspense,{fallback:null,children:t(u,{...o})}),h={upload:function(o){let{options:a,...e}=o;const{widgets:n}=r();return a.endpoint&&(a.onUpload=async t=>{const o=new FormData;o.set("file",t);const{url:r,value:e}=await m({url:a.endpoint,method:"post",data:o});return{url:r,value:e}}),t(n.upload,{...e,options:a})},avatar:function(o){let{options:a,...e}=o;const{widgets:n}=r();return a.endpoint&&(a.onUpload=async t=>{const o=new FormData;o.set("file",t);const{url:r}=await m({url:a.endpoint,method:"post",data:o});return r}),t(n.avatar,{...e,options:a})},editor:function(o){let{options:r,...a}=o;return r.endpoint&&(r.onUpload=async t=>{const o=new FormData;o.set("file",t);const{url:a}=await m({url:r.endpoint,method:"post",data:o});return a}),t(f,{...a,options:r})},typeahead:function(o){let{options:a,...e}=o;const{widgets:n}=r();return a.endpoint&&(a.onSearch=async t=>{let{value:o,query:r}=t;return await m({url:a.endpoint,params:{value:o,query:r}})}),t(n.typeahead,{...e,options:a})}},y=e(((r,a)=>{let{action:e,method:u="post",onSuccess:f,formData:y,onSubmitting:w,onSubmit:g,onChange:b,submitText:v="提交",transformData:x,children:D,...j}=r;const[S,k]=n(),[q,_]=p(!1),[z,E]=n(y),F=i((async(t,o)=>{if(!q)try{if(_(!0),w&&w(!0),e){let{formData:o}=t;x&&(o=x(o));try{const t=await m({url:e,method:u,data:o});return k(void 0),f&&await f(t),t}catch(t){if(!s.isAxiosError(t))throw t;k((t=>{const o=t.errors;return"string"==typeof o?{__errors:[o]}:c(o,(t=>({__errors:[t]})))})(t))}}else if(g)return await g(t,o)}finally{_(!1),w&&w(!1)}}),[e,u,g]),U=i((t=>{const{formData:o}=t;E(o),b&&b(t)}),[E,b]),C=i((t=>(t=t.map((t=>({keyword:t.name,dataPath:t.property,...t}))),d(t),t)),[]),N=t(l,{className:"px-4",loading:q,type:"submit",variant:"primary",children:v});return"function"==typeof D&&(D=D({submit:N,loading:q})),t(o,{ref:a,extraErrors:S,onSubmit:F,transformErrors:C,noHtml5Validate:!0,noValidate:!0,...j,formData:z,onChange:U,widgets:h,children:D||t("div",{className:"col-12",children:N})})}));export{y as default};
|
package/es/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{B as Button,C as Card,
|
|
1
|
+
export{B as Button,C as Card,x as CardList,y as Clipboard,E as Error,F as Form,I as ImageZoom,A as InfiniteScroller,z as Lightbox,L as Loader,m as LoadingButton,M as Message,s as Modal,q as ModalButton,p as ModalForm,N as NumberFormat,t as Offcanvas,O as OffcanvasButton,P as Pagination,n as RequestButton,R as Result,D as Slider,S as Space,l as Statistic,k as Step,j as Steps,o as Table,d as Toast,v as Tooltip,f as formatSize,h as getAbsoluteUrl,g as isImageUrl,e as isRecord,J as isRequestError,r as request,K as showRequestError,a as useControllableState,u as useDebounce,c as useImmer,H as useOverlayState,G as useRequest,b as useSafeState,w as waitPayComplete}from"./index-5if674Am.js";export{StyleSheetManager,ThemeProvider,createGlobalStyle,css,keyframes,default as styled}from"styled-components";export{useAsync,useAsyncCallback}from"react-async-hook";export{useInView}from"react-intersection-observer";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react/jsx-runtime";import"react";import"react-bootstrap";import"lodash";import"axios";import"query-string";import"retry-axios";import"rc-notification";import"path";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"immer";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{memo as t,forwardRef as e,useState as a,useRef as o,useCallback as i,useImperativeHandle as s}from"react";import m from"react-infinite-scroller";import{c as p,r as n,i as c}from"./index-5if674Am.js";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react-bootstrap";import"lodash";import"axios";import"query-string";import"retry-axios";import"rc-notification";import"path";import"styled-components";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"react-async-hook";import"immer";import"react-intersection-observer";var l=t(e(((t,e)=>{let{source:l,render:d,as:u,useWindow:f,className:y}=t;const[g,w]=a(!1),[h,x]=a(!1),[b,j]=p([]),v=o(0),M=i((async r=>{if(!g){w(!0),v.current=r;try{let t;const e={page:r>1?r:void 0};t="string"==typeof l?await n({url:l,params:e}):await l(e),c(t)?(x(t.current_page>=t.last_page),t=t.data):x(!0),j(1==r?t:[...b,...t])}finally{w(!1)}}}),[l,b,v,g]),N=i((()=>{M(1)}),[M]);return s(e,(()=>({reload:N})),[N]),r(m,{className:y,hasMore:!h,pageStart:0,loadMore:()=>{M(v.current+1)},useWindow:f,element:u,children:d({data:b,setData:j,end:h,loading:g,action:{reload:N}})})})));export{l as default};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import a from"rc-slider";import"rc-slider/assets/index.css";import o from"styled-components";function s(a){const o={};return a.min&&(o[a.min]=a.min),a.max&&(o[a.max]=a.max),r("div",{className:"pb-4 px-2",children:r(b,{marks:o,...a})})}const b=o(a)`
|
|
2
|
+
.rc-slider-track,
|
|
3
|
+
.rc-slider-tracks {
|
|
4
|
+
background-color: rgba(var(--bs-primary-rgb), 1);
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.rc-slider-handle {
|
|
8
|
+
border: solid 2px rgba(var(--bs-primary-rgb), 1);
|
|
9
|
+
opacity: 1;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging {
|
|
13
|
+
border-color: rgba(var(--bs-primary-rgb), .8);
|
|
14
|
+
box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), .6);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.rc-slider-handle:focus-visible {
|
|
18
|
+
border-color: rgba(var(--bs-primary-rgb), 1);
|
|
19
|
+
box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), .7);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.rc-slider-handle-click-focused:focus {
|
|
23
|
+
border-color: rgba(var(--bs-primary-rgb), .7);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.rc-slider-handle:hover {
|
|
27
|
+
border-color: rgba(var(--bs-primary-rgb), .8);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.rc-slider-handle:active {
|
|
31
|
+
border-color: rgba(var(--bs-primary-rgb), 1);
|
|
32
|
+
box-shadow: 0 0 5px rgba(var(--bs-primary-rgb), 1);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.rc-slider-dot-active {
|
|
36
|
+
border-color: rgba(var(--bs-primary-rgb), 1);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
`;export{s as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@topthink/components",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.80",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"prebuild": "rimraf es types",
|
|
6
6
|
"build": "rollup -c --environment NODE_ENV:production",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"@toast-ui/react-editor": "^3.2.3",
|
|
22
22
|
"@topthink/bootstrap": "^1.0.23",
|
|
23
23
|
"@topthink/json-form": "^1.0.52",
|
|
24
|
+
"@types/react-infinite-scroller": "^1.2.5",
|
|
24
25
|
"@types/styled-components": "^5.1.11",
|
|
25
26
|
"ajv-i18n": "^4.0.0",
|
|
26
27
|
"axios": "^0.27.2",
|
|
@@ -29,9 +30,12 @@
|
|
|
29
30
|
"immer": "^9.0.6",
|
|
30
31
|
"query-string": "^8.1.0",
|
|
31
32
|
"rc-notification": "^4.5.2",
|
|
33
|
+
"rc-slider": "^10.6.2",
|
|
32
34
|
"rc-steps": "^4.1.4",
|
|
33
35
|
"rc-table": "^7.31.1",
|
|
34
36
|
"react-async-hook": "^4.0.0",
|
|
37
|
+
"react-infinite-scroller": "^1.2.6",
|
|
38
|
+
"react-intersection-observer": "^9.10.2",
|
|
35
39
|
"react-medium-image-zoom": "^5.1.6",
|
|
36
40
|
"retry-axios": "^2.6.0",
|
|
37
41
|
"styled-components": "^5.3.0",
|
|
@@ -67,5 +71,5 @@
|
|
|
67
71
|
},
|
|
68
72
|
"author": "yunwuxin <tzzhangyajun@qq.com> (https://github.com/yunwuxin)",
|
|
69
73
|
"license": "MIT",
|
|
70
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "c5d46cd8fec49031876543d4b94f5300085e98ec"
|
|
71
75
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ForwardRefExoticComponent, PropsWithChildren, PropsWithoutRef, ReactNode, RefAttributes } from 'react';
|
|
2
|
+
import { Updater } from '../../hooks/use-immer';
|
|
3
|
+
type Params = {
|
|
4
|
+
page?: number;
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
};
|
|
7
|
+
export interface InfiniteScrollerType {
|
|
8
|
+
reload: () => void;
|
|
9
|
+
}
|
|
10
|
+
interface Props<RecordType> {
|
|
11
|
+
source: string | ((params: Params) => Promise<RecordType>);
|
|
12
|
+
render: (props: {
|
|
13
|
+
data: RecordType[];
|
|
14
|
+
setData: Updater<RecordType[]>;
|
|
15
|
+
end: boolean;
|
|
16
|
+
loading: boolean;
|
|
17
|
+
action: InfiniteScrollerType;
|
|
18
|
+
}) => ReactNode;
|
|
19
|
+
as?: ReactNode | string;
|
|
20
|
+
className?: string;
|
|
21
|
+
useWindow?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export type CustomInfiniteScrollerType<T = any> = ForwardRefExoticComponent<PropsWithoutRef<PropsWithChildren<Props<T>>> & RefAttributes<InfiniteScrollerType>>;
|
|
24
|
+
declare const _default: CustomInfiniteScrollerType<any>;
|
|
25
|
+
export default _default;
|
|
@@ -1,2 +1,6 @@
|
|
|
1
1
|
import { ImgHTMLAttributes } from 'react';
|
|
2
|
-
|
|
2
|
+
interface Props extends ImgHTMLAttributes<HTMLImageElement> {
|
|
3
|
+
lazy?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export default function Image({ lazy, ...props }: Props): JSX.Element;
|
|
6
|
+
export {};
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import 'yet-another-react-lightbox/styles.css';
|
|
3
3
|
import 'yet-another-react-lightbox/plugins/counter.css';
|
|
4
|
+
import 'yet-another-react-lightbox/plugins/thumbnails.css';
|
|
5
|
+
import 'yet-another-react-lightbox/plugins/captions.css';
|
|
4
6
|
interface Props {
|
|
5
7
|
children: ReactNode;
|
|
8
|
+
plugins?: ('counter' | 'zoom' | 'download' | 'thumbnails')[];
|
|
6
9
|
}
|
|
7
|
-
export default function Lightbox({ children }: Props): JSX.Element;
|
|
10
|
+
export default function Lightbox({ children, plugins }: Props): JSX.Element;
|
|
8
11
|
export {};
|
|
@@ -9,5 +9,5 @@ interface Props extends Omit<ButtonProps, 'as'> {
|
|
|
9
9
|
onSuccess?: (result: any) => void;
|
|
10
10
|
as?: ElementType | ButtonProps['as'];
|
|
11
11
|
}
|
|
12
|
-
|
|
13
|
-
export
|
|
12
|
+
declare const RequestButton: import("react").ForwardRefExoticComponent<Props & import("react").RefAttributes<any>>;
|
|
13
|
+
export default RequestButton;
|
package/types/index.d.ts
CHANGED
|
@@ -30,6 +30,8 @@ export { default as Tooltip } from './components/tooltip';
|
|
|
30
30
|
export { default as CardList, CardListType } from './components/card-list';
|
|
31
31
|
export { default as Clipboard } from './components/clipboard';
|
|
32
32
|
export { default as Lightbox } from './components/lightbox';
|
|
33
|
+
export { default as InfiniteScroller, InfiniteScrollerType } from './components/infinite-scroller';
|
|
34
|
+
export { default as Slider } from './components/slider';
|
|
33
35
|
export { default as useRequest } from './hooks/use-request';
|
|
34
36
|
export { default as useOverlayState } from './hooks/use-overlay-state';
|
|
35
37
|
export { default as useControllableState } from './hooks/use-controllable-state';
|
|
@@ -40,3 +42,4 @@ export { default as request, RequestConfig, RequestInstance, isRequestError, sho
|
|
|
40
42
|
export type { UiSchema as FormUiSchema, Schema as FormSchema, WidgetProps as FormWidgetProps, Widget as FormWidget, IChangeEvent as FormChangeEvent, ISubmitEvent as FormSubmitEvent } from '@topthink/json-form';
|
|
41
43
|
export { default as styled, css, keyframes, createGlobalStyle, StyleSheetManager, ThemeProvider } from 'styled-components';
|
|
42
44
|
export { useAsync, useAsyncCallback } from 'react-async-hook';
|
|
45
|
+
export { useInView } from 'react-intersection-observer';
|
package/es/image-GvVhZYp9.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{useContext as t,useState as e,useEffect as o}from"react";import{I as s}from"./context-jiLXU49j.js";let i=0;function m(m){const{registerImage:n,setShow:c,setCurrent:a}=t(s),[f]=e((()=>(i+=1,i)));return o((()=>{if(m.src)return n(f,m.src)}),[]),r("img",{...m,onClick:()=>{a(f),c(!0)}})}export{m as default};
|
package/es/index-7FvyDh2h.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import o,{getRegistry as r}from"@topthink/json-form";import*as a from"react";import{forwardRef as e,useState as n,useCallback as i}from"react";import s from"axios";import{b as p,r as m,B as l}from"./index-kWp6EVXg.js";import{mapValues as c}from"lodash";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react-bootstrap";import"query-string";import"retry-axios";import"rc-notification";import"path";import"styled-components";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"react-async-hook";import"immer";const d=require("ajv-i18n/localize/zh"),u=a.lazy((()=>import("./editor-widget-CQ3zv-Xu.js"))),f=o=>t(a.Suspense,{fallback:null,children:t(u,{...o})}),h={upload:function(o){let{options:a,...e}=o;const{widgets:n}=r();return a.endpoint&&(a.onUpload=async t=>{const o=new FormData;o.set("file",t);const{url:r,value:e}=await m({url:a.endpoint,method:"post",data:o});return{url:r,value:e}}),t(n.upload,{...e,options:a})},avatar:function(o){let{options:a,...e}=o;const{widgets:n}=r();return a.endpoint&&(a.onUpload=async t=>{const o=new FormData;o.set("file",t);const{url:r}=await m({url:a.endpoint,method:"post",data:o});return r}),t(n.avatar,{...e,options:a})},editor:function(o){let{options:r,...a}=o;return r.endpoint&&(r.onUpload=async t=>{const o=new FormData;o.set("file",t);const{url:a}=await m({url:r.endpoint,method:"post",data:o});return a}),t(f,{...a,options:r})},typeahead:function(o){let{options:a,...e}=o;const{widgets:n}=r();return a.endpoint&&(a.onSearch=async t=>{let{value:o,query:r}=t;return await m({url:a.endpoint,params:{value:o,query:r}})}),t(n.typeahead,{...e,options:a})}},y=e(((r,a)=>{let{action:e,method:u="post",onSuccess:f,formData:y,onSubmitting:w,onSubmit:g,onChange:b,submitText:v="提交",transformData:x,children:D,...j}=r;const[S,k]=n(),[q,_]=p(!1),[z,E]=n(y),F=i((async(t,o)=>{if(!q)try{if(_(!0),w&&w(!0),e){let{formData:o}=t;x&&(o=x(o));try{const t=await m({url:e,method:u,data:o});return k(void 0),f&&await f(t),t}catch(t){if(!s.isAxiosError(t))throw t;k((t=>{const o=t.errors;return"string"==typeof o?{__errors:[o]}:c(o,(t=>({__errors:[t]})))})(t))}}else if(g)return await g(t,o)}finally{_(!1),w&&w(!1)}}),[e,u,g]),U=i((t=>{const{formData:o}=t;E(o),b&&b(t)}),[E,b]),C=i((t=>(t=t.map((t=>({keyword:t.name,dataPath:t.property,...t}))),d(t),t)),[]),N=t(l,{className:"px-4",loading:q,type:"submit",variant:"primary",children:v});return"function"==typeof D&&(D=D({submit:N,loading:q})),t(o,{ref:a,extraErrors:S,onSubmit:F,transformErrors:C,noHtml5Validate:!0,noValidate:!0,...j,formData:z,onChange:U,widgets:h,children:D||t("div",{className:"col-12",children:N})})}));export{y as default};
|
package/es/index-gYTBuYWX.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsxs as t,jsx as e}from"react/jsx-runtime";import{useState as r,useCallback as o}from"react";import n from"yet-another-react-lightbox";import i from"yet-another-react-lightbox/plugins/counter";import l from"yet-another-react-lightbox/plugins/download";import a from"yet-another-react-lightbox/plugins/zoom";import"yet-another-react-lightbox/styles.css";import"yet-another-react-lightbox/plugins/counter.css";import{I as s}from"./context-jiLXU49j.js";function c(c){let{children:m}=c;const[p,u]=r((()=>new Map)),[g,h]=r(),[d,x]=r(!1),f=o(((t,e)=>(u((r=>new Map(r).set(t,e))),()=>{u((e=>{const r=new Map(e);return r.delete(t)?r:e}))})),[]),b=Array.from(p.keys()),y=b.indexOf(g),v=b.map((t=>({src:p.get(t)})));return t(s.Provider,{value:{images:p,current:g,setCurrent:h,setShow:x,registerImage:f},children:[m,e(n,{styles:{container:{backgroundColor:"rgba(0, 0, 0, .7)"}},plugins:[i,l,a],open:d,index:y,close:()=>x(!1),slides:v,render:{buttonPrev:v.length<=1?()=>null:void 0,buttonNext:v.length<=1?()=>null:void 0},controller:{closeOnBackdropClick:!0}})]})}export{c as default};
|
package/es/index-kWp6EVXg.js
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import e from"sweetalert2/dist/sweetalert2.js";import t from"sweetalert2-react-content";import{jsx as n,jsxs as r,Fragment as o}from"react/jsx-runtime";import{useRef as i,useState as a,useEffect as c,createContext as s,Fragment as l,useContext as d,useCallback as u,useMemo as f,forwardRef as m,Children as h,lazy as p,Suspense as g,createElement as y,useImperativeHandle as b,memo as x}from"react";import{OverlayTrigger as v,Tooltip as w,Spinner as k,Button as C,Modal as N,Alert as S,Card as z,Pagination as j,Offcanvas as T,Row as B,Col as P}from"react-bootstrap";import{uniqueId as $,values as H,debounce as E}from"lodash";import F from"axios";import A from"query-string";import*as L from"retry-axios";import D from"rc-notification";import M from"path";import O,{css as _}from"styled-components";import I from"classnames";import{useUrlSearchParams as U}from"use-url-search-params";import R from"copy-to-clipboard";import{useAsyncCallback as q}from"react-async-hook";import{freeze as G,produce as V}from"immer";const K=t(e),Y={confirmButtonText:"确定",cancelButtonText:"取消"},J={confirm:async e=>{const{isConfirmed:t}=await K.fire({...Y,icon:"warning",showCancelButton:!0,...e,async preConfirm(t){if(e.preConfirm)try{return await e.preConfirm(t)}catch(e){return e instanceof Error&&K.showValidationMessage(e.message),!1}return!0}});return t},success:e=>{K.fire({...Y,toast:!0,position:"top",icon:"success",timer:2e3,showConfirmButton:!1,...e})},error:e=>{K.fire({...Y,toast:!0,position:"top",icon:"error",timer:5e3,showConfirmButton:!1,...e})},close:e=>{K.close(e)},defaults:Y};const Q=s({});function W(e){return t=>{let{resolve:r,destroy:o,message:s}=t;const[l,m]=function(e){const t=i(null),[n,r]=a(e);return c((()=>{t.current&&(t.current(),t.current=null)}),[n]),[n,(e,n)=>{t.current="function"==typeof n?n:null,r(e)}]}(!0),h=d(Q),p=u((e=>{m(!1,(()=>{r(e)}))}),[m,r]),g=f((()=>({show:l,onHide:()=>p(),onExited:()=>o(),container:h.container})),[l,p,o]);return n(e,{resolve:p,state:g,message:s})}}function X(e){return t=>new Promise((r=>{const o=n(e,{resolve:r,destroy:()=>{ne(o)},message:t});te(o)}))}let Z=()=>{},ee=new Set;const te=e=>{ee=new Set(ee),ee.add(e),Z(ee)},ne=e=>{ee=new Set(ee),ee.delete(e),Z(ee)};function re(e,t){return X(W(e))(t)}function oe(e){let{tooltip:t,children:r,placement:o="bottom"}=e;return n(v,{placement:o,overlay:n(w,{id:$(),children:t}),children:r})}const ie=s(!1),ae=m(((e,t)=>{let{loading:i,percent:a,disabled:c,children:s,tooltip:l,variant:u,...f}=e;d(ie)&&!u&&(u="link"),i&&(c=!0,s=r(o,{children:[n(k,{ref:t,as:"span",size:"sm",role:"status","aria-hidden":"true",animation:"border"}),a?r("span",{className:"ms-2",children:[a,"%"]}):null]}));const m=n(C,{ref:t,...f,variant:u,disabled:c,children:s});return l?n(oe,{tooltip:l,children:n("span",{className:"d-inline-block",children:m})}):m})),ce=function(e){let{state:t,message:{title:o,message:i,okText:a,cancelText:c},resolve:s}=e;return r(N,{...t,children:[n(N.Header,{children:n(N.Title,{as:"h5",children:o||"确认"})}),n(N.Body,{children:i}),r(N.Footer,{children:[n(ae,{variant:"secondary",onClick:()=>s(),children:c||"取消"}),n(ae,{onClick:()=>s(!0),children:a||"确定"})]})]})};const se=e=>{let{header:t,children:i,footer:c,closable:s=!0,show:l,cancelText:d="取消",okText:u="确定",onOk:m,onCancel:h,onHide:p,okButtonProps:g,bodyAs:y,headerAs:b="h5",confirmLoading:x=!1,...v}=e;const[w,k]=a(!1),C=f((()=>n(ae,{loading:w||x,variant:"primary",onClick:async e=>{k(!0);try{await(m?.(e)),e.defaultPrevented||p?.()}finally{k(!1)}},...g,children:u})),[g,u,m,p,w,x]),S=f((()=>n(ae,{variant:"secondary",onClick:e=>{h?.(e),e.defaultPrevented||p?.()},children:d})),[h,p,d]);switch(typeof c){case"undefined":c=r(o,{children:[S,C]});break;case"function":c=c({okButton:C,cancelButton:S})}return r(N,{...v,onHide:p,show:l,children:[t&&n(N.Header,{closeButton:s,children:n(N.Title,{as:b,children:t})}),n(N.Body,{as:y,children:i}),c&&n(N.Footer,{children:c})]})};let le;se.Message=function(e){const[t,r]=a(ee);return c((()=>{Z=r}),[]),n(Q.Provider,{value:e,children:Array.from(t).map(((e,t)=>n(l,{children:e},`message-${t}`)))})},se.confirm=function(e){return X(W(ce))(e)},se.show=re;const de={};const ue=e=>{let{type:t,...r}=e;!function(e){if(le)return e(le);D.newInstance({...de,prefixCls:"notification",maxCount:5,style:{top:20,right:20}},(t=>{le?e(le):(le=t,e(t))}))}((e=>{r.duration=3;let o=t;if("error"===t)o="danger",r.duration=r.closable?0:5;r.content=n(S,{variant:o,children:r.content}),e.notice(r)}))},fe=["error","success","info"].reduce(((e,t)=>(e[t]=(e,n)=>{ue({...n,type:t,content:e})},e)),{});function me(e){return e&&"object"==typeof e}fe.defaults=de,L.attach(),F.defaults.raxConfig={retryDelay:2e3,backoffType:"static",shouldRetry:e=>{let{config:t,response:n}=e;return!(t.raxConfig?.retryDecider&&!t.raxConfig.retryDecider())&&("GET"===t.method?.toUpperCase()&&449===n?.status)}},F.defaults.maxContentLength=1/0,F.defaults.maxBodyLength=1/0,F.defaults.baseURL="/api",F.defaults.authTokenName="authorization",F.interceptors.request.use((e=>{const t=e.authTokenName;if(t){const n=localStorage.getItem(t);n&&(e.headers={Authorization:`Bearer ${n}`,...e.headers})}return e}),(e=>Promise.reject(e))),F.interceptors.response.use((e=>(201===e.status&&e.data.location&&(window.location.href=e.data.location,e.data=void 0),e)),(e=>{if(F.isAxiosError(e)&&e.response){const{data:t,status:n}=e.response;401===n?(e.errors="Unauthorized",fe.error("Unauthorized")):me(t)?422===n?e.errors=t:"message"in t&&(e.errors=t.message):e.errors=t}return Promise.reject(e)}));const he=F.isAxiosError,pe=e=>{if(!F.isAxiosError(e))throw e;{let t=e.errors;"string"!=typeof e.errors&&(t=Object.values(e.errors).join("<br />")),fe.error(t)}},ge=async function(e){e="string"==typeof e?{url:e}:e;const{data:t}=await F.request({paramsSerializer:function(e){return A.stringify(e,{sort:!1,skipNull:!0,skipEmptyString:!0,arrayFormat:"bracket"})},...e});return t};ge.defaults=F.defaults,ge.interceptors=F.interceptors;const ye=()=>{const e=i(!1);return c((()=>(e.current=!1,()=>{e.current=!0})),[]),e};function be(e){const t=ye(),[n,r]=a(e);return[n,u((e=>{t.current||r(e)}),[])]}const xe=function(e){let{state:t,message:r,resolve:o}=e;const a=i(!0),{result:s,checkUrl:l,onComplete:d}=r,[u,f]=be(!1);return c((()=>{ge({url:l,method:"post",data:{order_no:s.order_no},raxConfig:{shouldRetry:e=>a.current&&449===e.response?.status}}).then((()=>{d?.(),o()})).catch((()=>null))}),[]),n(se,{...t,centered:!0,onHide:()=>{a.current=!1,t.onHide()},backdrop:"static",header:"支付结果",okText:"已完成支付",okButtonProps:{loading:u},onOk:async e=>{e.preventDefault();try{f(!0),await ge({url:l,method:"post",data:{order_no:s.order_no},raxConfig:{shouldRetry:()=>!1}}),d?.(),o()}catch{}finally{f(!1)}},cancelText:"取消",children:"请在新打开的页面上进行支付,支付完成后再关闭此窗口"})};function ve(e){const{result:t}=e;window.open(t.pay_url),re(xe,e)}function we(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return e>=1024**3?(e/1024**3).toFixed(t)+"G":e>=1048576?(e/1048576).toFixed(t)+"M":(e/1024).toFixed(t)+"K"}function ke(e){const t=M.extname(e);return!(!/^data:image\//.test(e)&&!/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico)$/i.test(t))||!/^data:/.test(e)&&!t}function Ce(e){const t=document.createElement("a");return t.href=e,t.href}const Ne=O.div`
|
|
2
|
-
padding: 48px 32px;
|
|
3
|
-
`,Se=O.div`
|
|
4
|
-
margin-bottom: 24px;
|
|
5
|
-
text-align: center;
|
|
6
|
-
font-size: 72px;
|
|
7
|
-
`,ze=O.div`
|
|
8
|
-
color: rgba(0, 0, 0, .85);
|
|
9
|
-
font-size: 24px;
|
|
10
|
-
line-height: 1.8;
|
|
11
|
-
text-align: center;
|
|
12
|
-
`,je=O.div`
|
|
13
|
-
margin-top: 32px;
|
|
14
|
-
text-align: center;
|
|
15
|
-
`,Te={success:n("i",{className:"bi bi-check-circle-fill text-success"}),error:n("i",{className:"bi bi-exclamation-circle-fill text-danger"}),info:n("i",{className:"bi bi-info-circle-fill text-info"}),warning:n("i",{className:"bi bi-exclamation-triangle-fill text-warning"})};function Be(e){let{status:t,title:o,icon:i,extra:a}=e;return!i&&t&&(i=Te[t]),r(Ne,{children:[i&&n(Se,{children:i}),o&&n(ze,{children:o}),a&&n(je,{children:a})]})}O.div`
|
|
16
|
-
position: relative;
|
|
17
|
-
`;const Pe=O.div`
|
|
18
|
-
display: ${e=>e.active?"flex":"none"};
|
|
19
|
-
position: absolute;
|
|
20
|
-
top: 0 !important;
|
|
21
|
-
left: 0 !important;
|
|
22
|
-
width: 100%;
|
|
23
|
-
height: 100%;
|
|
24
|
-
text-align: center;
|
|
25
|
-
vertical-align: middle;
|
|
26
|
-
padding: 1em;
|
|
27
|
-
background-color: ${e=>e.inverted?"rgba(255, 255, 255, .85)":"rgba(0, 0, 0, .85)"};
|
|
28
|
-
opacity: ${e=>e.active?1:0};
|
|
29
|
-
line-height: 1;
|
|
30
|
-
animation-fill-mode: both;
|
|
31
|
-
animation-duration: .5s;
|
|
32
|
-
transition: background-color .5s linear;
|
|
33
|
-
flex-direction: column;
|
|
34
|
-
align-items: center;
|
|
35
|
-
justify-content: center;
|
|
36
|
-
user-select: none;
|
|
37
|
-
will-change: opacity;
|
|
38
|
-
z-index: 990;
|
|
39
|
-
`;function $e(e){let{loading:t=!0,children:o,variant:i="primary",animation:a="border",wrap:c,...s}=e;return t?(o&&(o=n("p",{className:"mt-3 text-secondary",children:o})),o=r(Pe,{inverted:!0,active:!0,children:[n(k,{animation:a,variant:i,...s}),o]}),c?n(He,{$height:"number"==typeof c?c:150,children:o}):o):null}const He=O.div`
|
|
40
|
-
position: relative;
|
|
41
|
-
height: ${e=>`${e.$height}px`};
|
|
42
|
-
`;function Ee(e){let{children:t,title:i,className:a,...c}=e;return n(z,{className:I("border-0 shadow-sm mb-3",a),...c,children:r("div",{className:"card-body",children:[i&&r(o,{children:[n("h5",{children:i}),n("hr",{})]}),t]})})}function Fe(e){let{errors:t}=e;return t?n(S,{variant:"danger",children:n("ul",{className:"mb-0",children:"string"==typeof t?n("li",{children:t}):Object.entries(t).map((e=>{let[t,r]=e;return n("li",{children:r},t)}))})}):null}function Ae(e){let{children:t,className:r,size:o="small",direction:i="horizontal"}=e;"string"==typeof o&&(o={small:8,middle:16,large:24}[o]);const a=h.map(t,(e=>{if(e)return n(De,{children:e})}));return n(Le,{className:r,$direction:i,$size:o,children:a})}const Le=O.div`
|
|
43
|
-
display: inline-flex;
|
|
44
|
-
align-items: center;
|
|
45
|
-
gap: ${e=>e.$size}px;
|
|
46
|
-
|
|
47
|
-
${e=>"vertical"===e.$direction&&_`
|
|
48
|
-
display: flex;
|
|
49
|
-
flex-direction: column;
|
|
50
|
-
align-items: inherit;
|
|
51
|
-
`}
|
|
52
|
-
`,De=O.div`
|
|
53
|
-
|
|
54
|
-
`,Me=p((()=>import("./steps-b_BcYIwk.js"))),Oe=p((()=>import("./steps-b_BcYIwk.js").then((e=>{let{Step:t}=e;return{default:t}}))));function _e(e){return n(g,{fallback:null,children:n(Me,{...e})})}const Ie=function(e){return n(g,{fallback:null,children:n(Oe,{...e})})};function Ue(e){let{title:t,content:o,footer:i}=e;return r(Ee,{children:[n(Ge,{children:t}),n(qe,{children:o}),i&&n(Re,{children:i})]})}_e.Step=Ie;const Re=O.div`
|
|
55
|
-
margin-top: 9px;
|
|
56
|
-
padding-top: 10px;
|
|
57
|
-
border-top: 1px solid #f0f0f0;
|
|
58
|
-
color: rgba(0, 0, 0, .65);
|
|
59
|
-
`,qe=O.div`
|
|
60
|
-
color: rgba(0, 0, 0, .85);
|
|
61
|
-
font-size: 24px;
|
|
62
|
-
`,Ge=O.div`
|
|
63
|
-
margin-bottom: 4px;
|
|
64
|
-
color: rgba(0, 0, 0, .45);
|
|
65
|
-
font-size: 1.1rem;
|
|
66
|
-
`;function Ve(){}function Ke(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}function Ye(e){return"current_page"in e}function Je(e){let{total:t=0,onChange:r=Ve,defaultCurrent:o=1,defaultPageSize:i=10,className:s,...l}=e;const[d,m]=a(o),[h,p]=a(i);c((()=>{Ke(l.current)&&m(l.current)}),[l.current]),c((()=>{Ke(l.pageSize)&&p(l.pageSize)}),[l.pageSize]);const g=f((()=>Math.floor((t-1)/h)+1),[t,h]),y=u((e=>()=>{e!==d&&(m(e),r(e,h))}),[r,d,h]),b=d-1>0?d-1:0,x=d+1<g?d+1:g,v=[];let w=null,k=null,C=null,N=null;if(g<=7)for(let e=1;e<=g;e+=1){const t=d===e;v.push(n(j.Item,{active:t,onClick:y(e),children:e},e))}else{N=n(j.Last,{onClick:y(g)},"last"),C=n(j.First,{onClick:y(1)},"first"),w=n(j.Prev,{onClick:y(b)},"prev"),k=n(j.Next,{onClick:y(x)},"next");let e=Math.max(1,d-2),t=Math.min(d+2,g);d-1<=2&&(t=5),g-d<=2&&(e=g-4);for(let r=e;r<=t;r+=1){const e=d===r;v.push(n(j.Item,{active:e,onClick:y(r),children:r},r))}d-1>=4&&3!==d&&v.unshift(w),g-d>=4&&d!==g-2&&v.push(k),1!==e&&v.unshift(C),t!==g&&v.push(N)}return n(j,{className:s,children:v})}function Qe(e){let{className:t,value:r,locale:i="zh-CN",currency:a=!0,options:c={}}=e;const s=f((()=>{let e;return e=a?{style:"currency",currency:"CNY"}:{minimumFractionDigits:2},new Intl.NumberFormat(i,{...e,...c})}),[a,i,c]);return t?n("span",{className:t,children:s.format(r)}):n(o,{children:s.format(r)})}function We(e){let{loading:t,disabled:r,children:o,...i}=e;return n(C,{...i,disabled:t||r,children:t?"Loading…":o})}const Xe=p((()=>import("./image-zoom-OrIPGqh0.js")));function Ze(e){return n(g,{fallback:null,children:n(Xe,{...e})})}function et(e){let{url:t,method:n,confirm:r,onSuccess:o,children:i,disabled:a,as:c=ae,...s}=e;const[l,d]=be(!1),f=u((async e=>{e.preventDefault();try{if(d(!0),r&&!await se.confirm({message:r}))return;const e="string"==typeof t?{url:t,method:n}:{method:n,...t},i=await ge(e);o&&o(i)}catch(e){pe(e)}finally{d(!1)}}),[t,n,d]);return y(c,{...s,disabled:a||l,onClick:f},i)}const tt=p((()=>import("./index-7FvyDh2h.js"))),nt=m(((e,t)=>n(g,{fallback:null,children:n(tt,{...e,ref:t})}))),rt=p((()=>import("./index-ay0UACAO.js"))),ot=m(((e,t)=>n(g,{fallback:null,children:n(rt,{...e,ref:t})})));let it=0;function at(){let{onHide:e,onShow:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const[n,r]=a(!1),[o,i]=a(`visible-${it}`),c=u((()=>{r(!1),e&&e()}),[r,e]),s=u((()=>{i("visible-"+ ++it)}),[i,it]);return{visible:n,show:u((()=>{r(!0),t&&t()}),[r,t]),hide:c,state:{show:n,onHide:c,onExited:s,key:o}}}const ct=m(((e,t)=>{let{text:i,onOk:a,modalProps:c,children:s,onShow:l,onHide:d,confirmLoading:u,as:f=ae,...m}=e;const{state:h,show:p,hide:g}=at({onShow:l,onHide:d});b(t,(()=>({close:g})));const x=y(f,{...m,onClick:p},i);return r(o,{children:[x,n(se,{header:i,...c,...h,confirmLoading:u,onOk:async e=>{if(a){!1===await a()&&e.preventDefault()}},children:s})]})})),st=m(((e,t)=>{let{text:o,onSuccess:c,onSubmit:s,buttonProps:l,modalProps:d,children:f,...m}=e;const[h,p]=a(!1),g=i(null),y=i(null);b(t,(()=>({close:()=>{g.current?.close()}})));const x=u((()=>(y.current?.submit(),!1)),[]),v=u((e=>{c&&c(e),g.current?.close()}),[c]),w=u((async(e,t)=>{s&&await s(e,t)&&g.current?.close()}),[s]);return n(ct,{ref:g,text:o,...l,modalProps:d,onOk:x,confirmLoading:h,children:r(nt,{...m,onSubmitting:p,ref:y,onSuccess:v,onSubmit:w,children:[f,n("input",{type:"submit",hidden:!0})]})})}));function lt(e){let{header:t,children:o,closable:i=!0,show:a,onHide:c,bodyAs:s,headerAs:l="h5",...d}=e;return r(T,{...d,onHide:c,show:a,children:[t&&n(T.Header,{closeButton:i,children:n(T.Title,{as:l,children:t})}),n(T.Body,{as:s,children:o})]})}const dt=m(((e,t)=>{let{text:i,offcanvasProps:a,children:c,onShow:s,onHide:l,as:d=ae,...u}=e;const{state:f,show:m,hide:h}=at({onShow:s,onHide:l});b(t,(()=>({close:h})));const p=y(d,{...u,onClick:m},i);return r(o,{children:[p,n(lt,{header:i,...a,...f,children:c})]})}));function ut(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const n=i(e);return c((()=>{n.current=e})),u((function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return n.current?.(...t)}),t)}function ft(e){const{value:t,defaultValue:n,onChange:r,shouldUpdate:o=((e,t)=>e!==t)}=e,i=ut(r),c=ut(o),[s,l]=a(n),d=void 0!==t,u=d?t:s,f=ut((e=>{const t="function"==typeof e?e(u):e;c(u,t)&&(d||l(t),i(t))}),[d,i,u,c]);return[u,f]}const mt=m(((e,t)=>{let{className:o,paginate:s=!0,sync:l=!1,columns:d=3,source:f,renderItem:m,renderEmpty:h}=e;const[p,g]=a([]),[y,x]=a(s?{total:0,current:1,pageSize:10}:null),[v,w]=a(!0),[k,C]=U({}),[N,S]=ft({value:l?k.page||1:void 0,defaultValue:1,onChange:e=>{l&&C({page:e||void 0})}}),z=u((async function(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]||w(!0);try{let e;const t={page:N>1?N:void 0};e="string"==typeof f?await ge({url:f,params:t}):await f(t),s&&Ye(e)&&(e.last_page>1&&x({total:e.total,current:e.current_page,pageSize:e.per_page}),e=e.data),g(e)}catch(e){}finally{w(!1)}}),[f,g,N]);c((()=>{z()}),[N]),c((()=>{j.current={reload:z}}),[z]);const j=i({reload:z});return b(t,(()=>j.current)),r(ht,{className:o,children:[n($e,{wrap:!0,loading:v}),0===p.length&&!v&&h?.(),n(B,{children:p.map(((e,t)=>n(P,{className:"d-flex",md:12/d,children:m(e)},`card-${t}`)))}),y&&n(pt,{...y,onChange:S})]})})),ht=O.div`
|
|
67
|
-
|
|
68
|
-
`,pt=O(Je)`
|
|
69
|
-
margin-bottom: 0;
|
|
70
|
-
justify-content: flex-end;
|
|
71
|
-
margin-top: 1rem;
|
|
72
|
-
`;var gt=x(mt);function yt(e){let{as:t="div",className:r,content:o,tooltip:s=!0,placement:l}=e;const[d,u]=a(!1),f=i();c((()=>()=>{f.current&&clearTimeout(f.current)}),[]);const m=s?n("i",d?{className:"bi bi-clipboard-check"}:{className:"bi bi-clipboard"}):d?"已复制":"复制",h=y(t,{role:"button",className:r,onClick:()=>{"function"==typeof o&&(o=o()),R(o),u(!0),f.current&&clearTimeout(f.current),f.current=setTimeout((()=>{u(!1),f.current=void 0}),3e3)}},m);return s?n(oe,{tooltip:d?"已复制":"复制",placement:l,children:h}):h}const bt=p((()=>import("./index-gYTBuYWX.js"))),xt=p((()=>import("./image-GvVhZYp9.js")));function vt(e){return n(g,{fallback:null,children:n(bt,{...e})})}function wt(e){let{manual:t,refreshDeps:n,...r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{execute:o,currentParams:i,error:a,...s}=q((async t=>(e="string"==typeof e?{url:e}:e,await ge({...e,...t}))),r);c((()=>{if(!t&&!n)try{o()}catch{}}),[]),c((()=>{n&&l()}),n);const l=u((async()=>{try{i?await o(...i):await o()}catch{}}),[o,i]);if(a&&he(a)){const e=a.errors;a=new Error("string"==typeof e?e:H(e).join(""))}return{refresh:l,execute:o,error:a,...s}}function kt(e,t,n){const r=i(e),o=i(E(e,t,n));return c((()=>{r.current=e})),c((()=>{o.current=E((function(){r.current(...arguments)}),t,n)}),[t,n]),o.current}function Ct(e){const[t,n]=a((()=>G("function"==typeof e?e():e,!0)));return[t,u((e=>{n("function"==typeof e?V(e):G(e))}),[])]}vt.Image=function(e){return n(g,{fallback:null,children:n(xt,{...e})})};export{at as A,ae as B,Ee as C,Ct as D,Fe as E,nt as F,he as G,pe as H,Ze as I,$e as L,J as M,Qe as N,dt as O,Je as P,Be as R,Ae as S,ie as T,ft as a,be as b,fe as c,me as d,ke as e,we as f,Ce as g,_e as h,Ye as i,Ie as j,Ue as k,We as l,et as m,ot as n,st as o,ct as p,se as q,ge as r,lt as s,oe as t,kt as u,gt as v,ve as w,yt as x,vt as y,wt as z};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ComponentProps } from 'react';
|
|
2
|
-
declare const LazyLightbox: import("react").LazyExoticComponent<typeof import("./lazy/lightbox").default>;
|
|
3
|
-
declare function Lightbox(props: ComponentProps<typeof LazyLightbox>): JSX.Element;
|
|
4
|
-
declare namespace Lightbox {
|
|
5
|
-
var Image: (props: import("react").ImgHTMLAttributes<HTMLImageElement>) => JSX.Element;
|
|
6
|
-
}
|
|
7
|
-
export default Lightbox;
|