@topthink/components 1.0.92 → 1.0.93
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-lQBgXuJA.js +1 -0
- package/es/{index-tt9lHF8m.js → index-MBvQQsv0.js} +1 -1
- package/es/{index-ZvlISatR.js → index-_gVao0YS.js} +8 -8
- package/es/index-f_wX2Wts.js +4 -0
- package/es/{index-krM2-Fs-.js → index-qsPOzQ-L.js} +1 -1
- package/es/index.js +1 -1
- package/es/{infinite-scroller-neVBOn2H.js → infinite-scroller-X7wIYJqo.js} +1 -1
- package/package.json +2 -2
- package/types/components/lazy/lightbox/context.d.ts +5 -5
- package/types/components/lazy/lightbox/index.d.ts +7 -0
- package/types/components/lightbox.d.ts +3 -1
- package/es/context-jiLXU49j.js +0 -1
- package/es/image-KNOpXTlx.js +0 -1
- package/es/index-G1E7EOIF.js +0 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as t,Fragment as r}from"react/jsx-runtime";import{memo as e,useContext as i,useState as o,useEffect as s}from"react";import{I as a}from"./index-_gVao0YS.js";import{useInView as m}from"react-intersection-observer";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react-bootstrap";import"lodash";import"axios";import"query-string";import"retry-axios";import"notistack";import"path";import"styled-components";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"react-async-hook";import"immer";var n=e((e=>{let{lazy:n=!0,...c}=e;const{registerImage:p,setShow:l,setCurrent:h,getId:g}=i(a),[d,w]=o(),[u,f]=o(!1),{ref:v,inView:x}=m({threshold:.2,skip:!n,initialInView:!0}),[y]=o(g);if(s((()=>{if(c.src)return p(y,c.src)}),[]),u)return t(r,{children:c.alt?`[图片加载失败:${c.alt}]`:" "});const k=!x&&n&&d?"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e %3crect width='1' height='1' fill='none'/%3e%3c/svg%3e":c.src;return t("img",{width:d?.[0],height:d?.[1],onLoad:t=>{d||w([t.currentTarget.clientWidth,t.currentTarget.clientHeight])},onError:()=>{f(!0)},ref:v,...c,alt:void 0,src:k,onClick:()=>{h(y),l(!0)}})}));export{n as default};
|
|
@@ -1 +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-
|
|
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-_gVao0YS.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"notistack";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};
|
|
@@ -1,4 +1,4 @@
|
|
|
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 s,createContext as c,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 v}from"react";import{OverlayTrigger as x,Tooltip as w,Spinner as k,Button as C,Modal as N,Card as S,Alert as j,Pagination as z,Offcanvas as T,Row as P,Col as B}from"react-bootstrap";import{uniqueId as H,values as $,debounce as E}from"lodash";import D from"axios";import F from"query-string";import*as
|
|
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 s,createContext as c,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 v}from"react";import{OverlayTrigger as x,Tooltip as w,Spinner as k,Button as C,Modal as N,Card as S,Alert as j,Pagination as z,Offcanvas as T,Row as P,Col as B}from"react-bootstrap";import{uniqueId as H,values as $,debounce as E}from"lodash";import D from"axios";import F from"query-string";import*as M from"retry-axios";import{enqueueSnackbar as A}from"notistack";import L from"path";import O,{css as I}from"styled-components";import _ 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:"取消"},Q={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 Y=c({});function W(e){return t=>{let{resolve:r,destroy:o,message:c}=t;const[l,m]=function(e){const t=i(null),[n,r]=a(e);return s((()=>{t.current&&(t.current(),t.current=null)}),[n]),[n,(e,n)=>{t.current="function"==typeof n?n:null,r(e)}]}(!0),h=d(Y),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:c})}}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(x,{placement:o,overlay:n(w,{id:H(),children:t}),children:r})}const ie=c(!1),ae=m(((e,t)=>{let{loading:i,percent:a,disabled:s,children:c,tooltip:l,variant:u,...f}=e;d(ie)&&!u&&(u="link"),i&&(s=!0,c=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:s,children:c});return l?n(oe,{tooltip:l,children:n("span",{className:"d-inline-block",children:m})}):m})),se=function(e){let{state:t,message:{title:o,message:i,okText:a,cancelText:s},resolve:c}=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:()=>c(),children:s||"取消"}),n(ae,{onClick:()=>c(!0),children:a||"确定"})]})]})};const ce=e=>{let{header:t,children:i,footer:s,closable:c=!0,show:l,cancelText:d="取消",okText:u="确定",onOk:m,onCancel:h,onHide:p,okButtonProps:g,bodyAs:y,headerAs:b="h5",confirmLoading:v=!1,...x}=e;const[w,k]=a(!1),C=f((()=>n(ae,{loading:w||v,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,v]),S=f((()=>n(ae,{variant:"secondary",onClick:e=>{h?.(e),e.defaultPrevented||p?.()},children:d})),[h,p,d]),j={close:()=>{p?.()}};switch(typeof s){case"undefined":s=r(o,{children:[S,C]});break;case"function":s=s({okButton:C,cancelButton:S,action:j})}return r(N,{...x,onHide:p,show:l,children:[t&&n(N.Header,{closeButton:c,children:n(N.Title,{as:b,children:t})}),n(N.Body,{as:y,children:i}),s&&n(N.Footer,{children:s})]})};ce.Message=function(e){const[t,r]=a(ee);return s((()=>{Z=r}),[]),n(Y.Provider,{value:e,children:Array.from(t).map(((e,t)=>n(l,{children:e},`message-${t}`)))})},ce.confirm=function(e){return X(W(se))(e)},ce.show=re;const le=["default","error","warning","success","info"].reduce(((e,t)=>(e[t]=(e,n)=>A(e,{variant:t,autoHideDuration:3e3,anchorOrigin:{vertical:"top",horizontal:"center"},...n}),e)),{});function de(e){return e&&"object"==typeof e}M.attach(),D.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)}},D.defaults.maxContentLength=1/0,D.defaults.maxBodyLength=1/0,D.defaults.baseURL="/api",D.defaults.authTokenName="authorization",D.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))),D.interceptors.response.use((e=>(201===e.status&&e.data.location&&(window.location.href=e.data.location,e.data=void 0),e)),(e=>{if(D.isAxiosError(e)&&e.response){const{data:t,status:n}=e.response;401===n?e.errors="Unauthorized":de(t)?422===n?e.errors=t:"message"in t&&(e.errors=t.message):e.errors=t,"string"!=typeof e.errors?e.message=Object.values(e.errors).join("<br />"):e.message=e.errors}return Promise.reject(e)}));const ue=D.isAxiosError,fe=e=>{if(!D.isAxiosError(e))throw e;le.error(e.message)},me=async function(e){if(e="string"==typeof e?{url:e}:e,(e={paramsSerializer:function(e){return F.stringify(e,{sort:!1,skipNull:!0,skipEmptyString:!0,arrayFormat:"bracket"})},...e}).onMessage){let t=0,n="",r=null;const o=e.onMessage;e.onDownloadProgress=e=>{const i=e.target,{responseText:a}=i;for(;t<e.loaded;){const e=a.substring(t,++t);if(n+=e,"\n"===e){if(r||(r={id:"",event:"",data:""}),"\n"===n)o(r),r=null;else{const e=n.match(/^data:(?<data>.*)/);e&&(r.data=e.groups.data.trim())}n=""}}}}const{data:t}=await D.request(e);return t};me.defaults=D.defaults,me.interceptors=D.interceptors;function he(e){const t=(()=>{const e=i(!1);return s((()=>(e.current=!1,()=>{e.current=!0})),[]),e})(),[n,r]=a(e);return[n,u((e=>{t.current||r(e)}),[])]}const pe=function(e){let{state:t,message:r,resolve:o}=e;const a=i(!0),{result:c,checkUrl:l,onComplete:d}=r,[u,f]=he(!1);return s((()=>{me({url:l,method:"post",data:{order_no:c.order_no},raxConfig:{shouldRetry:e=>a.current&&449===e.response?.status}}).then((()=>{d?.(),o()})).catch((()=>null))}),[]),n(ce,{...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 me({url:l,method:"post",data:{order_no:c.order_no},raxConfig:{shouldRetry:()=>!1}}),d?.(),o()}catch{}finally{f(!1)}},cancelText:"取消",children:"请在新打开的页面上进行支付,支付完成后再关闭此窗口"})};function ge(e){const{result:t}=e;window.open(t.pay_url),re(pe,e)}function ye(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 be(e){const t=L.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 ve(e){const t=document.createElement("a");return t.href=e,t.href}const xe=O.div`
|
|
2
2
|
padding: 48px 32px;
|
|
3
3
|
`,we=O.div`
|
|
4
4
|
margin-bottom: 24px;
|
|
@@ -39,34 +39,34 @@ import e from"sweetalert2/dist/sweetalert2.js";import t from"sweetalert2-react-c
|
|
|
39
39
|
`;function ze(e){let{loading:t=!0,children:o,variant:i="primary",animation:a="border",wrap:s,...c}=e;return t?(o&&(o=n("p",{className:"mt-3 text-secondary",children:o})),o=r(je,{inverted:!0,active:!0,children:[n(k,{animation:a,variant:i,...c}),o]}),s?n(Te,{$height:"number"==typeof s?s:150,children:o}):o):null}const Te=O.div`
|
|
40
40
|
position: relative;
|
|
41
41
|
height: ${e=>`${e.$height}px`};
|
|
42
|
-
`;function Pe(e){let{children:t,title:i,className:a,...s}=e;return n(S,{className:
|
|
42
|
+
`;function Pe(e){let{children:t,title:i,className:a,...s}=e;return n(S,{className:_("border-0 shadow-sm mb-3",a),...s,children:r("div",{className:"card-body",children:[i&&r(o,{children:[n("h5",{children:i}),n("hr",{})]}),t]})})}function Be(e){let{errors:t}=e;return t?n(j,{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 He(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(Ee,{children:e})}));return n($e,{className:r,$direction:i,$size:o,children:a})}const $e=O.div`
|
|
43
43
|
display: inline-flex;
|
|
44
44
|
align-items: center;
|
|
45
45
|
gap: ${e=>e.$size}px;
|
|
46
46
|
|
|
47
|
-
${e=>"vertical"===e.$direction&&
|
|
47
|
+
${e=>"vertical"===e.$direction&&I`
|
|
48
48
|
display: flex;
|
|
49
49
|
flex-direction: column;
|
|
50
50
|
align-items: inherit;
|
|
51
51
|
`}
|
|
52
52
|
`,Ee=O.div`
|
|
53
53
|
|
|
54
|
-
`,De=p((()=>import("./steps-b_BcYIwk.js"))),Fe=p((()=>import("./steps-b_BcYIwk.js").then((e=>{let{Step:t}=e;return{default:t}}))));function
|
|
54
|
+
`,De=p((()=>import("./steps-b_BcYIwk.js"))),Fe=p((()=>import("./steps-b_BcYIwk.js").then((e=>{let{Step:t}=e;return{default:t}}))));function Me(e){return n(g,{fallback:null,children:n(De,{...e})})}const Ae=function(e){return n(g,{fallback:null,children:n(Fe,{...e})})};function Le(e){let{title:t,content:o,footer:i}=e;return r(Pe,{children:[n(_e,{children:t}),n(Ie,{children:o}),i&&n(Oe,{children:i})]})}Me.Step=Ae;const Oe=O.div`
|
|
55
55
|
margin-top: 9px;
|
|
56
56
|
padding-top: 10px;
|
|
57
57
|
border-top: 1px solid #f0f0f0;
|
|
58
58
|
color: rgba(0, 0, 0, .65);
|
|
59
|
-
`,
|
|
59
|
+
`,Ie=O.div`
|
|
60
60
|
color: rgba(0, 0, 0, .85);
|
|
61
61
|
font-size: 24px;
|
|
62
|
-
`,
|
|
62
|
+
`,_e=O.div`
|
|
63
63
|
margin-bottom: 4px;
|
|
64
64
|
color: rgba(0, 0, 0, .45);
|
|
65
65
|
font-size: 1.1rem;
|
|
66
|
-
`;function
|
|
66
|
+
`;function Ue(){}function Re(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}function qe(e){return"current_page"in e}function Ge(e){let{total:t=0,onChange:r=Ue,defaultCurrent:o=1,defaultPageSize:i=10,className:c,...l}=e;const[d,m]=a(o),[h,p]=a(i);s((()=>{Re(l.current)&&m(l.current)}),[l.current]),s((()=>{Re(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,v=d+1<g?d+1:g,x=[];let w=null,k=null,C=null,N=null;if(g<=7)for(let e=1;e<=g;e+=1){const t=d===e;x.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(v)},"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;x.push(n(z.Item,{active:e,onClick:y(r),children:r},r))}d-1>=4&&3!==d&&x.unshift(w),g-d>=4&&d!==g-2&&x.push(k),1!==e&&x.unshift(C),t!==g&&x.push(N)}return n(z,{className:c,children:x})}function Ve(e){let{className:t,value:r,locale:i="zh-CN",currency:a=!0,options:s={}}=e;const c=f((()=>{let e;return e=a?{style:"currency",currency:"CNY"}:{minimumFractionDigits:2},new Intl.NumberFormat(i,{...e,...s})}),[a,i,s]);return t?n("span",{className:t,children:c.format(r)}):n(o,{children:c.format(r)})}function Ke(e){let{loading:t,disabled:r,children:o,...i}=e;return n(C,{...i,disabled:t||r,children:t?"Loading…":o})}const Je=p((()=>import("./image-zoom-OrIPGqh0.js")));function Qe(e){return n(g,{fallback:null,children:n(Je,{...e})})}const Ye=m(((e,t)=>{let{url:n,method:r,confirm:o,onSuccess:i,children:a,disabled:s,as:c=ae,onError:l,...d}=e;const[f,m]=he(!1),h=u((async e=>{e.preventDefault(),e.stopPropagation();try{if(m(!0),o&&!await ce.confirm({message:o}))return;const e="string"==typeof n?{url:n,method:r}:{method:r,...n},t=await me(e);i&&i(t)}catch(e){if(!(e instanceof Error))throw e;l?l(e):le.error(e.message,{preventDuplicate:!0})}finally{m(!1)}}),[n,r,m]);return y(c,{...d,disabled:s||f,onClick:h,ref:t},a)})),We=p((()=>import("./index-MBvQQsv0.js"))),Xe=m(((e,t)=>n(g,{fallback:null,children:n(We,{...e,ref:t})}))),Ze=p((()=>import("./index-qsPOzQ-L.js"))),et=m(((e,t)=>n(g,{fallback:null,children:n(Ze,{...e,ref:t})})));let tt=0;function nt(){let{onHide:e,onShow:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const[n,r]=a(!1),[o,i]=a(`visible-${tt}`),s=u((()=>{r(!1),e&&e()}),[r,e]),c=u((()=>{i("visible-"+ ++tt)}),[i,tt]);return{visible:n,show:u((()=>{r(!0),t&&t()}),[r,t]),hide:s,state:{show:n,onHide:s,onExited:c,key:o}}}const rt=m(((e,t)=>{let{text:i,onOk:a,modalProps:s,children:c,onShow:l,onHide:d,confirmLoading:u,as:f=ae,...m}=e;const{state:h,show:p,hide:g}=nt({onShow:l,onHide:d});b(t,(()=>({close:g})));const v=y(f,{...m,onClick:p},i);return r(o,{children:[v,n(ce,{header:i,...s,...h,confirmLoading:u,onOk:async e=>{if(a){!1===await a()&&e.preventDefault()}},children:c})]})})),ot=m(((e,t)=>{let{text:o,onSuccess:s,onSubmit:c,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 v=u((()=>(y.current?.submit(),!1)),[]),x=u((e=>{s&&s(e),g.current?.close()}),[s]),w=u((async(e,t)=>{c&&await c(e,t)&&g.current?.close()}),[c]);return n(rt,{ref:g,text:o,...l,modalProps:d,onOk:v,confirmLoading:h,children:r(Xe,{...m,onSubmitting:p,ref:y,onSuccess:x,onSubmit:w,children:[f,n("input",{type:"submit",hidden:!0})]})})}));function it(e){let{header:t,children:o,closable:i=!0,show:a,onHide:s,bodyAs:c,headerAs:l="h5",...d}=e;return r(T,{...d,onHide:s,show:a,children:[t&&n(T.Header,{closeButton:i,children:n(T.Title,{as:l,children:t})}),n(T.Body,{as:c,children:o})]})}const at=m(((e,t)=>{let{text:i,offcanvasProps:a,children:s,onShow:c,onHide:l,as:d=ae,...u}=e;const{state:f,show:m,hide:h}=nt({onShow:c,onHide:l});b(t,(()=>({close:h})));const p=y(d,{...u,onClick:m},i);return r(o,{children:[p,n(it,{header:i,...a,...f,children:s})]})}));function st(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const n=i(e);return s((()=>{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 ct(e){const{value:t,defaultValue:n,onChange:r,shouldUpdate:o=((e,t)=>e!==t)}=e,i=st(r),s=st(o),[c,l]=a(n),d=void 0!==t,u=d?t:c,f=st((e=>{const t="function"==typeof e?e(u):e;s(u,t)&&(d||l(t),i(t))}),[d,i,u,s]);return[u,f]}const lt=m(((e,t)=>{let{className:o,rowClassName:c,paginate:l=!0,sync:d=!1,columns:f=3,source:m,renderItem:h,renderEmpty:p}=e;const[g,y]=a([]),[v,x]=a(l?{total:0,current:1,pageSize:10}:null),[w,k]=a(!0),[C,N]=U({}),[S,j]=ct({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 me({url:m,params:t}):await m(t),l&&qe(e)&&(e.last_page>1&&x({total:e.total,current:e.current_page,pageSize:e.per_page}),e=e.data),y(e)}catch(e){}finally{k(!1)}}),[m,y,S]);s((()=>{z()}),[S]),s((()=>{T.current={reload:z}}),[z]);const T=i({reload:z});return b(t,(()=>T.current)),r(dt,{className:o,children:[n(ze,{wrap:!0,loading:w}),0===g.length&&!w&&p?.(),n(P,{className:c,children:g.map(((e,t)=>n(B,{className:"d-flex",md:12/f,children:h(e)},`card-${t}`)))}),v&&n(ut,{...v,onChange:j})]})})),dt=O.div`
|
|
67
67
|
|
|
68
68
|
`,ut=O(Ge)`
|
|
69
69
|
margin-bottom: 0;
|
|
70
70
|
justify-content: flex-end;
|
|
71
71
|
margin-top: 1rem;
|
|
72
|
-
`;var ft=v(lt);function mt(){const[e,t]=a(!1),n=i();return s((()=>()=>{n.current&&clearTimeout(n.current)}),[]),{copied:e,copy:u((e=>{
|
|
72
|
+
`;var ft=v(lt);function mt(){const[e,t]=a(!1),n=i();return s((()=>()=>{n.current&&clearTimeout(n.current)}),[]),{copied:e,copy:u((e=>{R(e),t(!0),n.current&&clearTimeout(n.current),n.current=setTimeout((()=>{t(!1),n.current=void 0}),3e3)}),[])}}function ht(e){let{as:t="div",className:r,content:o,tooltip:i=!0,placement:a}=e;const{copy:s,copied:c}=mt(),l=i?n("i",c?{className:"bi bi-clipboard-check"}:{className:"bi bi-clipboard"}):c?"已复制":"复制",d=y(t,{role:"button",className:r,onClick:()=>{"function"==typeof o&&(o=o()),s(o)}},l);return i?n(oe,{tooltip:c?"已复制":"复制",placement:a,children:d}):d}const pt=c({images:new Map,current:0,setCurrent:()=>null,setShow:()=>null,registerImage:()=>()=>null,getId:()=>0}),gt=p((()=>import("./index-f_wX2Wts.js"))),yt=p((()=>import("./image-lQBgXuJA.js")));function bt(e){return n(g,{fallback:null,children:n(gt,{...e})})}bt.Image=function(e){return n(g,{fallback:null,children:n(yt,{...e})})},bt.Context=pt;const vt=p((()=>import("./infinite-scroller-X7wIYJqo.js"))),xt=m(((e,t)=>n(g,{fallback:null,children:n(vt,{...e,ref:t})}))),wt=p((()=>import("./slider-KuqHu6UH.js")));function kt(e){return n(g,{fallback:null,children:n(wt,{...e})})}function Ct(e){let{manual:t,refreshDeps:n,...r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{execute:o,currentParams:i,error:a,...c}=q((async t=>(e="string"==typeof e?{url:e}:e,await me({...e,...t}))),r);s((()=>{if(!t&&!n)try{o()}catch{}}),[]),s((()=>{n&&l()}),n);const l=u((async()=>{try{i?await o(...i):await o()}catch{}}),[o,i]);if(a&&ue(a)){const e=a.errors;a=new Error("string"==typeof e?e:$(e).join(""))}return{refresh:l,execute:o,error:a,...c}}function Nt(e,t,n){const r=i(e),o=i(E(e,t,n));return s((()=>{r.current=e})),s((()=>{o.current=E((function(){r.current(...arguments)}),t,n)}),[t,n]),o.current}function St(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{bt as A,ae as B,Pe as C,xt as D,Be as E,Xe as F,kt as G,Ct as H,pt as I,nt as J,mt as K,ze as L,Q as M,Ve as N,at as O,Ge as P,ue as Q,Se as R,He as S,ie as T,fe as U,ct as a,he as b,St as c,le as d,de as e,ye as f,be as g,ve as h,qe as i,Me as j,Ae as k,Le as l,Ke as m,Qe as n,Ye as o,et as p,ot as q,me as r,rt as s,ce as t,Nt as u,it as v,ge as w,oe as x,ft as y,ht as z};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{jsxs as t,jsx as r}from"react/jsx-runtime";import{useState as e,useCallback as o}from"react";import i from"yet-another-react-lightbox";import n from"yet-another-react-lightbox/plugins/counter";import a from"yet-another-react-lightbox/plugins/download";import s from"yet-another-react-lightbox/plugins/zoom";import l 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 m}from"./index-_gVao0YS.js";import p from"styled-components";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react-bootstrap";import"lodash";import"axios";import"query-string";import"retry-axios";import"notistack";import"path";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"react-async-hook";import"immer";import"react-intersection-observer";const c={counter:n,zoom:s,download:a,thumbnails:l};let u=0;function d(i){let{children:n,plugins:a=["counter","zoom","download"]}=i;const[s,l]=e((()=>new Map)),[p,d]=e(),[g,b]=e(!1),y=o(((t,r)=>(l((e=>new Map(e).set(t,r))),()=>{l((r=>{const e=new Map(r);return e.delete(t)?e:r}))})),[]),x=Array.from(s.keys()),f=x.indexOf(p),w=x.map((t=>{const r=s.get(t);return"string"==typeof r?{src:r}:{render:r}})),_=o((()=>u++),[]);return t(m.Provider,{value:{images:s,current:p,setCurrent:d,setShow:b,registerImage:y,getId:_},children:[n,r(h,{plugins:a.map((t=>c[t])),open:g,index:f,close:()=>b(!1),slides:w,carousel:{finite:!0,preload:3},render:{buttonPrev:w.length<=1?()=>null:void 0,buttonNext:w.length<=1?()=>null:void 0,slide:t=>{let{slide:r}=t;if("render"in r)return r.render()}},controller:{closeOnBackdropClick:!0}})]})}const h=p(i)`
|
|
2
|
+
--yarl__color_backdrop: rgba(0, 0, 0, .7);
|
|
3
|
+
--yarl__thumbnails_container_background_color: rgba(0, 0, 0, .9);
|
|
4
|
+
`;export{d 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-_gVao0YS.js";import N from"styled-components";import H from"./index-MBvQQsv0.js";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"axios";import"query-string";import"retry-axios";import"notistack";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 {
|
package/es/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{B as Button,C as Card,
|
|
1
|
+
export{B as Button,C as Card,y as CardList,z as Clipboard,E as Error,F as Form,n as ImageZoom,D as InfiniteScroller,A as Lightbox,L as Loader,m as LoadingButton,M as Message,t as Modal,s as ModalButton,q as ModalForm,N as NumberFormat,v as Offcanvas,O as OffcanvasButton,P as Pagination,o as RequestButton,R as Result,G as Slider,S as Space,l as Statistic,k as Step,j as Steps,p as Table,d as Toast,x as Tooltip,f as formatSize,h as getAbsoluteUrl,g as isImageUrl,e as isRecord,Q as isRequestError,r as request,U as showRequestError,K as useClipboard,a as useControllableState,u as useDebounce,c as useImmer,J as useOverlayState,H as useRequest,b as useSafeState,w as waitPayComplete}from"./index-_gVao0YS.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";export{SnackbarProvider as ToastProvider}from"notistack";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"path";import"classnames";import"use-url-search-params";import"copy-to-clipboard";import"immer";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{memo as e,forwardRef as a,useState as o,useCallback as r,useImperativeHandle as s}from"react";import i from"react-infinite-scroller";import{c as n,r as m}from"./index-
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{memo as e,forwardRef as a,useState as o,useCallback as r,useImperativeHandle as s}from"react";import i from"react-infinite-scroller";import{c as n,r as m}from"./index-_gVao0YS.js";import{last as d}from"lodash";import"sweetalert2/dist/sweetalert2.js";import"sweetalert2-react-content";import"react-bootstrap";import"axios";import"query-string";import"retry-axios";import"notistack";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 c=e(a(((e,a)=>{let{source:c,render:p,as:l,useWindow:f,className:u,getState:h,limit:y=10}=e;const[g,w]=o(!1),[v,x]=n({offset:void 0,end:!1,data:[]}),b=r((async function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!g){w(!0);try{let e;const a={offset:t?void 0:v.offset};e="string"==typeof c?await m({url:c,params:a}):await c(a),h||(h=t=>({offset:d(t)?.id,end:t.length<y,data:t}));const{offset:o,end:r,data:s}=h(e);x({offset:o,end:r,data:t?s:[...v.data,...s]})}catch{x({...v,end:!0})}finally{w(!1)}}}),[c,v,h,g]),j=r((()=>{b(!0)}),[b]);s(a,(()=>({reload:j})),[j]);const k=r((t=>{x((e=>{const a=t(e.data);a&&(e.data=a)}))}),[x]);return t(i,{className:u,hasMore:!v.end,pageStart:0,loadMore:()=>{b()},useWindow:f,element:l,children:p({data:v.data,setData:k,end:v.end,loading:g,action:{reload:j}})})})));export{c 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.93",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"prebuild": "rimraf es types",
|
|
6
6
|
"build": "rollup -c --environment NODE_ENV:production",
|
|
@@ -71,5 +71,5 @@
|
|
|
71
71
|
},
|
|
72
72
|
"author": "yunwuxin <tzzhangyajun@qq.com> (https://github.com/yunwuxin)",
|
|
73
73
|
"license": "MIT",
|
|
74
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "cbab38428fb6fbf05357c229cf3b5d49f80cfd3d"
|
|
75
75
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Dispatch, SetStateAction } from 'react';
|
|
2
|
-
interface ImageContextType {
|
|
3
|
-
images: Map<number, string>;
|
|
1
|
+
import { Dispatch, ReactNode, SetStateAction } from 'react';
|
|
2
|
+
export interface ImageContextType {
|
|
3
|
+
images: Map<number, string | (() => ReactNode)>;
|
|
4
4
|
current: number | undefined;
|
|
5
5
|
setCurrent: Dispatch<SetStateAction<number | undefined>>;
|
|
6
6
|
setShow: Dispatch<SetStateAction<boolean>>;
|
|
7
|
-
registerImage: (id: number, url: string) => () => void;
|
|
7
|
+
registerImage: (id: number, url: string | (() => ReactNode)) => () => void;
|
|
8
|
+
getId: () => number;
|
|
8
9
|
}
|
|
9
10
|
export declare const ImageContext: import("react").Context<ImageContextType>;
|
|
10
|
-
export {};
|
|
@@ -7,5 +7,12 @@ interface Props {
|
|
|
7
7
|
children: ReactNode;
|
|
8
8
|
plugins?: ('counter' | 'zoom' | 'download' | 'thumbnails')[];
|
|
9
9
|
}
|
|
10
|
+
declare module 'yet-another-react-lightbox' {
|
|
11
|
+
interface SlideTypes {
|
|
12
|
+
custom: {
|
|
13
|
+
render: () => ReactNode;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
}
|
|
10
17
|
export default function Lightbox({ children, plugins }: Props): JSX.Element;
|
|
11
18
|
export {};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { ComponentProps } from 'react';
|
|
2
|
+
import { ImageContext as Context } from './lazy/lightbox/context';
|
|
2
3
|
declare const LazyLightbox: import("react").LazyExoticComponent<typeof import("./lazy/lightbox").default>;
|
|
3
4
|
declare const LazyImage: import("react").LazyExoticComponent<import("react").MemoExoticComponent<({ lazy, ...props }: import("./lazy/lightbox/image").Props) => JSX.Element>>;
|
|
4
5
|
declare function Lightbox(props: ComponentProps<typeof LazyLightbox>): JSX.Element;
|
|
5
6
|
declare namespace Lightbox {
|
|
6
7
|
var Image: (props: import("./lazy/lightbox/image").Props) => JSX.Element;
|
|
8
|
+
var Context: import("react").Context<import("./lazy/lightbox/context").ImageContextType>;
|
|
7
9
|
}
|
|
8
10
|
export default Lightbox;
|
|
9
11
|
declare const Image: (props: ComponentProps<typeof LazyImage>) => JSX.Element;
|
|
10
|
-
export { Image };
|
|
12
|
+
export { Image, Context };
|
package/es/context-jiLXU49j.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{createContext as e}from"react";const r=e({images:new Map,current:0,setCurrent:()=>null,setShow:()=>null,registerImage:()=>()=>null});export{r as I};
|
package/es/image-KNOpXTlx.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as t,Fragment as r}from"react/jsx-runtime";import{memo as e,useContext as i,useState as n,useEffect as o}from"react";import{I as s}from"./context-jiLXU49j.js";import{useInView as c}from"react-intersection-observer";let a=0;var l=e((e=>{let{lazy:l=!0,...h}=e;const{registerImage:g,setShow:m,setCurrent:d}=i(s),[f,w]=n(),[u,p]=n(!1),{ref:v,inView:x}=c({threshold:.2,skip:!l,initialInView:!0}),[I]=n((()=>(a+=1,a)));if(o((()=>{if(h.src)return g(I,h.src)}),[]),u)return t(r,{children:h.alt?`[图片加载失败:${h.alt}]`:" "});const b=!x&&l&&f?"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e %3crect width='1' height='1' fill='none'/%3e%3c/svg%3e":h.src;return t("img",{width:f?.[0],height:f?.[1],onLoad:t=>{f||w([t.currentTarget.clientWidth,t.currentTarget.clientHeight])},onError:()=>{p(!0)},ref:v,...h,alt:void 0,src:b,onClick:()=>{d(I),m(!0)}})}));export{l as default};
|
package/es/index-G1E7EOIF.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
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};
|