amotify 0.2.228 → 0.2.229
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/demo/next/src/app/(router)/page.tsx +2 -2
- package/dist/fn/Cropper.js +1 -1
- package/dist/fn/Sheet.js +1 -1
- package/dist/fn/Tooltips.d.ts +2 -0
- package/dist/fn/Tooltips.js +1 -1
- package/dist/fn/index.d.ts +0 -1
- package/dist/fn/index.js +1 -1
- package/dist/index.d.ts +0 -1
- package/package.json +1 -1
- package/dist/fn/Noticetips.d.ts +0 -9
- package/dist/fn/Noticetips.js +0 -1
- package/dist/fn/Sheet copy.d.ts +0 -95
- package/dist/fn/Sheet copy.js +0 -1
|
@@ -47,7 +47,6 @@ import {
|
|
|
47
47
|
StyleTags,
|
|
48
48
|
Roundness,
|
|
49
49
|
Card,
|
|
50
|
-
Noticetips
|
|
51
50
|
} from '../../../../../dist/index'
|
|
52
51
|
|
|
53
52
|
|
|
@@ -105,7 +104,8 @@ let Page = () => {
|
|
|
105
104
|
|
|
106
105
|
useEffect( () => {
|
|
107
106
|
|
|
108
|
-
|
|
107
|
+
Tooltips.notice( 'welcome to amotify!' )
|
|
108
|
+
|
|
109
109
|
// $$.interval.once( () => {
|
|
110
110
|
// set_selected( !select2 )
|
|
111
111
|
// set_value( '1996/05/11' )
|
package/dist/fn/Cropper.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as K,c as re,e as V}from"../chunk-C5N2D3ZX.js";import{Fragment as fe,jsx as o,jsxs as p}from"react/jsx-runtime";import x,{Filer as le,UUID as ne,useStore as O}from"jmini";import{$$fromRoot as ie}from"../@utils";import{useState as U,useEffect as ee}from"react";import{Box as z,FAI as X,Column as Z,FlexMargin as se}from"../atoms";import{Row as P,Literal as R}from"../mols";import{Button as k}from"./Button";import Y from"./Sheet";import J from"./Loader";import te from"./Input";import{faPalette as ce}from"@fortawesome/free-solid-svg-icons/faPalette";import{faBarsStaggered as he}from"@fortawesome/free-solid-svg-icons/faBarsStaggered";import{faRotateLeft as me}from"@fortawesome/free-solid-svg-icons/faRotateLeft";import{faRotateRight as pe}from"@fortawesome/free-solid-svg-icons/faRotateRight";import{CropperClasses as N}from"../@styles/componentClasses";import q from"./Tooltips";class ue{constructor(e){this.set_scale=e.set_scale,this.val_file=e.val_file,this.develops=e.develops;{let[h,s]=x.is.array(e.use)&&e.use||e.use.split(":").map(r=>Number(r)),m=h/s;this.usage={w:h,h:s,aspect:m}}this.componentId=e.componentId;let c=e.canvas,t=e.picture.image;this.Canvas={elm:c,ctx:c.getContext("2d")};let{width:a,height:i}=t,l=a/i;this.Picture={elm:t,originDataUrl:t.src,aspect:l,revisedAspect:1,rotate:e.picture.rotate,grayScale:e.picture.grayScale,tone:e.picture.tone},this.scale={current:e.scale.default,default:e.scale.default,min:e.scale.min,max:e.scale.max},this.usage.aspect<this.Picture.aspect?this.scale.min=100/l*this.usage.aspect:this.scale.min=100*l/this.usage.aspect,this.pst={frame:{x:0,y:0,w:0,h:0,aspect:1},outImage:{x:0,y:0,w:0,h:0},imageX:a/2,imageY:i/2,centerX:0,centerY:0},this.dragEffectInfo={origin:{x:0,y:0},frameExpandRate:{x:0,y:0}},this.pinchEffectInfo={origin:{x:0,y:0,scale:this.scale.current}},this.frameSizing(),this.modifyImage()}frameSizing(){let e=this.Canvas.elm,c=this.Picture.elm,t=0,a=0;{if(this.usage.aspect==1){let n=e.width*.6666666666666666,g=e.height*(2/3);a=t=Math.min(n,g)}else this.usage.aspect>1?(t=e.width*.9,a=t/this.usage.aspect):(a=e.height*.9,t=a*this.usage.aspect);let r=.85;a>e.height*r&&(a=e.height*r,t=a*this.usage.aspect),t>e.width*r&&(t=e.width*r,a=t/this.usage.aspect)}let{width:i,height:l}=c,h=(e.width-t)/2,s=(e.height-a)/2,m=t/a;this.pst={frame:{x:h,y:s,w:t,h:a,aspect:m},outImage:{x:0,y:0,w:0,h:0},imageX:i/2,imageY:l/2,centerX:e.width/2,centerY:e.height/2}}dragEffect(e){let{eventType:c,x:t,y:a}=e;if(c=="start"){let i=this.Canvas.elm.position();this.dragEffectInfo={origin:{x:t,y:a},frameExpandRate:{x:this.Canvas.elm.width/i.width,y:this.Canvas.elm.height/i.height}}}else{let{origin:i,frameExpandRate:l}=this.dragEffectInfo,h=i.x-t,s=i.y-a,m=this.scale.current*this.Picture.revisedAspect/100,r=h/m*l.x,n=s/m*l.y;c=="move"?this.drawImage(this.pst.imageX+r,this.pst.imageY+n):c=="end"&&this.drawImage(this.pst.imageX+=r,this.pst.imageY+=n)}}pinchEffect(e){let{eventType:c,event:t}=e,{x:a,y:i}=x.getCursor(t.touches[0]),{x:l,y:h}=x.getCursor(t.touches[1]),s=l-a,m=h-i;if(c=="start")this.pinchEffectInfo.origin={x:s,y:m,scale:this.scale.current};else if(c=="move"){let{origin:r}=this.pinchEffectInfo,n=Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2)),v=Math.sqrt(Math.pow(s,2)+Math.pow(m,2))/n,d=Number(r.scale*v);this.set_scale(d)}}updateScale(e){let c=e;c=Math.max(c,this.scale.min),c=Math.min(c,this.scale.max),this.scale.current=c,this.drawImage()}updateFilter(e){this.Picture.grayScale=e.grayScale,this.Picture.tone=e.tone,this.Picture.rotate=e.rotate,this.modifyImage()}modifyImage(){return V(this,null,function*(){let{grayScale:e,tone:c,rotate:t}=this.Picture;const a=document.createElement("canvas");let i=a.getContext("2d"),l=yield x.ImageLoader(this.Picture.originDataUrl),h=l.width,s=l.height;(t==90||t==270)&&(h=l.height,s=l.width),a.width=h,a.height=s,e&&(i.filter="grayscale("+e+"%)"),t&&(i.translate(h/2,s/2),i.rotate(t*Math.PI/180),[90,270].includes(t)?i.translate(-s/2,-h/2):i.translate(-h/2,-s/2)),i.drawImage(l,0,0,l.width,l.height);let m=i.getImageData(0,0,a.width,a.height),r=m.data;{e/=100;let d=[[255,255,255],[255,200,100],[170,170,255],[240,200,145],[128,255,255],[255,128,255],[255,255,128],[128,158,169],[128,112,162],[50,192,87],[246,100,140]][c],S=d[0]/255,C=d[1]/255,_=d[2]/255;for(let y=0;y<s;y++)for(let w=0;w<h;w++){var n=(y*h+w)*4;if(e){let B=.3*r[n]+.59*r[n+1]+.11*r[n+2];for(var g=0;g<3;g++){let E=r[n+g];r[n+g]=E+(B-E)*e}}r[n]*=S,r[n+1]*=C,r[n+2]*=_}}i.putImageData(m,0,0);let v=a.toDataURL("image/jpeg");{let d=yield x.ImageLoader(v),{width:S,height:C}=d,_=S/C;this.Picture=re(K({},this.Picture),{elm:d,aspect:_,revisedAspect:this.pst.frame.aspect>_?this.pst.frame.w/S:this.pst.frame.h/C})}this.drawImage()})}drawImage(e,c){let{Canvas:{ctx:t,elm:a},pst:{frame:i}}=this;t.clearRect(0,0,this.Canvas.elm.width,this.Canvas.elm.height);let l=e||this.pst.imageX,h=c||this.pst.imageY;{let s=this.scale.current/100,m=this.Picture.revisedAspect*s,r=this.pst.centerX-l*m,n=this.pst.centerY-h*m,g=this.Picture.elm.width*m,v=this.Picture.elm.height*m,d=0,S=0;this.usage.aspect<this.Picture.aspect?(d=g,S=d/this.usage.aspect):(S=v,d=S*this.usage.aspect);{let C=this.pst.frame.x-(g-d)/2,_=this.pst.frame.x+this.pst.frame.w-(g+d)/2,y=this.pst.frame.y-(v-S)/2,w=this.pst.frame.y+this.pst.frame.h-(v+S)/2,B=0;r<_&&(B=r-_),r>C&&(B=r-C);let E=0;n<w&&(E=n-w),n>y&&(E=n-y),this.dragEffectInfo.origin.x+=B/2/this.dragEffectInfo.frameExpandRate.x,this.dragEffectInfo.origin.y+=E/2/this.dragEffectInfo.frameExpandRate.y,r=Math.min(Math.max(r,_),C),n=Math.min(Math.max(n,w),y)}this.pst.outImage={x:r,y:n,w:g,h:v};{let C=1;t.lineWidth=C,t.strokeStyle="#ffffff66",t.strokeRect(r+(g-d)/2-C,n+(v-S)/2-C,d+C*2,S+C*2)}t.drawImage(this.Picture.elm,0,0,this.Picture.elm.width,this.Picture.elm.height,r,n,g,v)}{if(this.usage.aspect==1){t.fillStyle="rgba( 20,24,20,.5 )",t.beginPath();let s=a.width/3*2,m=a.height/3*2,r=Math.min(s,m),n=Math.max(s,m);t.arc(a.width/2,a.height/2,n*1.41,0,Math.PI*2,!0),t.arc(a.width/2,a.height/2,r/2,0,Math.PI*2,!1),t.closePath(),t.fill()}else t.fillStyle="rgba( 20,24,20,.5 )";{let m=x(document.body).getStyleProperty("--color-theme-hsl"),r=2;t.lineWidth=r,t.strokeStyle=`hsla( ${m},1 )`,t.strokeRect(i.x-r,i.y-r,i.w+r*2,i.h+r*2)}}}export(){return V(this,null,function*(){let{Canvas:e,develops:c,Picture:t,pst:{outImage:a,frame:i}}=this,l=a.w/t.elm.width,h=a.h/t.elm.height,s=(i.x-a.x)/l,m=i.w/l,r=(i.y-a.y)/h,n=i.h/h,g=Array.from({length:c.length}),v="image/jpeg";for(let d=0;d<c.length;d++){let{size:S,maxSize:C}=c[d];C=C||{S:1024*20,R:1024*100,L:1024*350}[S];let _={S:140,R:600,L:1200}[S],y=document.createElement("canvas");y.width=m,y.height=n;let w=document.createElement("canvas");w.width=_,w.height=_/this.usage.aspect;let B=y.getContext("2d");if(!B)return;let E=w.getContext("2d");if(!E)return;B.clearRect(0,0,y.width,y.height),B.drawImage(this.Picture.elm,s,r,m,n,0,0,m,n),E.fillStyle="black",E.drawImage(y,0,0,y.width,y.height,0,0,w.width,w.height);let j=w.toDataURL(v),f=yield j.toBlob(v);if(!f)return;if(f.size>=C){let D=C/f.size;if(j=w.toDataURL(v,D*.92),f=yield j.toBlob(v),!f)return}let b=new File([f],this.val_file.name,{type:v});g[d]=b}return g})}}const oe={Core:u=>{let{val_file:e,options:c,finishedCallback:t,abortCallback:a}=u,{use:i,develops:l=[]}=c,[h]=U(ne());const s={scale:{default:120,min:50,max:300},rotate:0,grayScale:0,tone:0};let m=2048*2048,r=1024,[n,g]=U(s.scale.default),[v,d]=U(s.rotate),[S,C]=U(s.grayScale),[_,y]=U(s.tone),[w,B]=U(-1),[E,j]=U(-1);return ee(()=>{let f="CropperResize";return x(window).addEvent({eventType:"resize",eventID:f,callback:()=>{x.interval.once(()=>{var $;let b=ie("#Canvas-"+h)[0];if(!b)return;let D=($=O.get(h))==null?void 0:$.Instance;if(!D)return;let W=b.position(),A=W.width/W.height,H=r,F=H/A;if(H*F>m){let G=H*F/m;H=Math.floor(H/Math.sqrt(G)),F=Math.floor(F/Math.sqrt(G))}b.width=r,b.height=F;let{width:L,height:Q}=b;D.pst.centerX=L/2,D.pst.centerY=Q/2,D.frameSizing(),D.modifyImage()},250,"CropperResize")}}),()=>{x(window).removeEvent(f)}},[]),ee(()=>{O.set({[h]:{}}),V(void 0,null,function*(){J.fn.corner.active();let f=ie("#Canvas-"+h)[0];if(!f)return;let b=f.position(),D=b.width/b.height,W=r,A=W/D;if(W*A>m){let I=W*A/m;W=Math.floor(W/Math.sqrt(I)),A=Math.floor(A/Math.sqrt(I))}f.width=W,f.height=A;let H=le(e),F=yield x.ImageLoader(yield H.toObjectURL());B(F.width),j(F.height);let L=new ue({set_scale:g,val_file:e,develops:l,use:i,scale:s.scale,componentId:h,canvas:f,picture:{image:F,grayScale:s.grayScale,tone:s.tone,rotate:s.rotate}});O.set({[h]:{Instance:L}});const Q=function(I){if(I.preventDefault(),I.touches&&I.touches.length>1)L.pinchEffect({eventType:"start",event:I}),x(document).addEvent({eventType:"touchmove",eventID:"CropperEffectMove",options:{passive:!1},callback:M=>{M.preventDefault(),L.pinchEffect({eventType:"move",event:M})}}).addEvent({eventType:"touchend",eventID:"CropperEffectEnd",options:{passive:!1},callback:G});else{L.dragEffect(K({eventType:"start"},x.getCursor(I)));let{type:M}=I;x(document).addEvent({eventType:M=="touchstart"?"touchmove":"mousemove",eventID:"CropperEffectMove",options:{passive:!1},callback:T=>{$("move",T)}}).addEvent({eventType:M=="touchstart"?"touchend":"mouseup",eventID:"CropperEffectEnd",options:{passive:!1},callback:T=>{$("end",T),G(T)}})}},$=function(I,M){M.preventDefault(),L.dragEffect(K({eventType:I},x.getCursor(M)))},G=function(I){I.preventDefault(),x(document).removeEvent(["CropperEffectMove","CropperEffectEnd"])};x(f).removeEvent(["CropperMouseWheel","CropperTouchStart","CropperMouseDown"]).addEvent({eventID:"CropperMouseWheel",eventType:"wheel",callback:I=>{I.preventDefault();let M=Number(I.wheelDelta*.04),T=L.scale.current+M;T=Math.max(T,L.scale.min),T=Math.min(T,L.scale.max),g(T)},options:{passive:!1}}).addEvent({eventType:"touchstart",eventID:"CropperTouchStart",callback:Q,options:{passive:!1}}).addEvent({eventType:"mousedown",eventID:"CropperMouseDown",callback:Q,options:{passive:!1}}),setTimeout(()=>{J.fn.corner.stop()},1e3)})},[e.id]),ee(()=>{var b;let f=(b=O.get(h))==null?void 0:b.Instance;f&&f.updateScale(n)},[n]),ee(()=>{var b;let f=(b=O.get(h))==null?void 0:b.Instance;f&&f.updateFilter({grayScale:S,tone:_,rotate:v})},[S,_,v]),o(Y.Body,{borderRadius:0,height:"viewHeight",width:"viewWidth",children:o(Z,{className:[N("Wrap"),N("Use_"+i)].join(" "),gap:0,height:1,position:"relative",overflow:"hidden",borderRadius:"inherit",children:p(z,{flexSizing:0,overflow:"hidden",position:"relative",flexCenter:!0,paddingBottom:6,freeCSS:{zIndex:1,backgroundColor:"#000a0f"},children:[o("canvas",{style:{width:"100%",height:"100%"},width:r,height:r,className:N("Canvas"),id:"Canvas-"+h}),o(R.Supplement,{position:"absolute",bottom:1,left:1,right:1,ssCardBox:"plain",boxShadow:"0.max",padding:1,backgroundColor:"layer.0.opa.few",freeCSS:{backdropFilter:"blur(6px)"},children:p(Z,{gap:"1/2",children:[p(P.Left,{gap:"1/2",flexWrap:!0,fontColor:"white",fontSize:"0.xs",fontHeight:1.2,children:[p(R,{children:["[",e.type,"]"]}),o(R,{children:e.name}),p(R,{children:[w,"px x ",E,"px"]}),p(R,{children:["[",e.size.rank(),"B]"]})]}),p(P.Left,{gap:"1/2",verticalAlign:"unset",flexWrap:!0,children:[o(oe.SettingRegion,{DefaultOptions:s,val_scale:n,set_scale:g,val_tone:_,set_tone:y,val_grayScale:S,set_grayScale:C,val_rotate:v,set_rotate:d}),o(se,{}),o(k.Border.S,{onClick:()=>{a()},children:"\u9589\u3058\u308B"}),o(k.Prime.S,{boxShadow:"3.remark",onClick:()=>V(void 0,null,function*(){var D;let f=(D=O.get(h))==null?void 0:D.Instance;if(!f)return;J.fn.mini.active("CropperExportation");let b=yield f.export();setTimeout(()=>{J.fn.mini.stop("CropperExportation"),t(b)},1e3)}),children:p(P.Center,{gap:"1/2",children:[o(J.White.R,{loaderID:"CropperExportation"}),"\u6C7A\u5B9A"]})})]})]})})]})})})},SettingRegion:u=>{let e=["","\u6696\u8272","\u5BD2\u8272","\u30BB\u30D4\u30A2","\u30B7\u30A2\u30F3","\u30DE\u30BC\u30F3\u30BF","\u30A4\u30A8\u30ED\u30FC","\u30AA\u30EA\u30B8\u30CA\u30EB1","\u30AA\u30EA\u30B8\u30CA\u30EB2","\u30AA\u30EA\u30B8\u30CA\u30EB3","\u30AA\u30EA\u30B8\u30CA\u30EB4"],c=t=>e[t]||"\u306A\u3057";return p(fe,{children:[p(P.Center,{gap:"1/6",children:[p(k.Border.S,{flexCenter:!0,gap:"1/4",border:"unset",borderTopRightRadius:0,borderBottomRightRadius:0,onClick:()=>{let t=u.val_rotate-90;t<0&&(t+=360),u.set_rotate(t)},children:[o(R,{children:"90\xB0"}),o(X,{icon:me,fontColor:"4.thin"})]}),p(k.Border.S,{flexCenter:!0,gap:"1/4",border:"unset",borderTopLeftRadius:0,borderBottomLeftRadius:0,onClick:()=>{u.set_rotate((u.val_rotate+90)%360)},children:[o(X,{icon:pe,fontColor:"4.thin"}),o(R,{children:"90\xB0"})]})]}),p(k.Border.S,{flexCenter:!0,gap:"1/2",border:"unset",onClick:t=>{let a="CropperZoomEdit";q.open({tipsID:a,gravityPoint:3,event:t,closeAtParentBlur:!1,freeCSS:{minWidth:12*26},content:o(Y.Body,{children:p(Z,{padding:1.5,children:[p(P.Separate,{children:[o(R.Paragraph,{children:p(P.Center,{gap:"1/2",children:[o(X.Search,{fontColor:"5.translucent"}),"Zoom"]})}),o(k.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{q.close(a)},children:o(X.X,{})})]}),o(z,{borderBottom:!0,opacity:"low"}),o(te.Slider,{override:"force",value:u.val_scale-u.DefaultOptions.scale.min,min:u.DefaultOptions.scale.min-100,max:u.DefaultOptions.scale.max-100,step:25,onUpdateValidValue:(i,l)=>{x.interval.once(()=>{u.set_scale(i+100)},250,"Cropper.UpdateScale")},legends:{enable:!0,custom:i=>"x"+Math.round(100+i)/100}})]})})})},children:[o(R.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:"Zoom"}),p(R,{unitWidth:4,children:[u.val_scale.rate(1,0),"%"]})]}),p(k.Border.S,{flexCenter:!0,gap:"1/2",border:"unset",onClick:t=>{let a="CropperGrayScaleEdit";q.open({tipsID:a,gravityPoint:3,event:t,closeAtParentBlur:!1,freeCSS:{minWidth:12*26},content:o(Y.Body,{children:p(Z,{padding:1.5,children:[p(P.Separate,{children:[o(R.Paragraph,{children:p(P.Center,{gap:"1/2",children:[o(X,{icon:ce,fontColor:"5.translucent"}),"Gray Scale"]})}),o(k.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{q.close(a)},children:o(X.X,{})})]}),o(z,{borderBottom:!0,opacity:"low"}),o(te.Slider,{value:u.val_grayScale,min:0,max:100,step:10,onUpdateValidValue:i=>{x.interval.once(()=>{u.set_grayScale(i)},250,"Cropper.GrayScale")},legends:{enable:!0,custom:i=>i+"%"}})]})})})},children:[o(R.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:"GrayScale"}),p(R,{children:[u.val_grayScale.rate(1,0),"%"]})]}),p(k.Border.S,{flexCenter:!0,gap:"1/2",border:"unset",onClick:t=>{let a="CropperToneEdit";q.open({tipsID:a,gravityPoint:3,event:t,closeAtParentBlur:!1,freeCSS:{minWidth:12*26,maxWidth:12*24},content:()=>{let i=[];for(let l=1;l<=10;l++)i.push({value:l,label:p(P.Left,{gap:"1/3",children:[o(z,{ssSphere:1,className:[N("ToneBall"),N("ToneBall_"+l)].join(" ")}),o(z,{textAlign:"left",flexSizing:0,children:c(l)})]})});return o(Y.Body,{children:p(Z,{padding:1.5,children:[p(P.Separate,{children:[o(R.Paragraph,{children:p(P.Center,{gap:"1/2",children:[o(X,{icon:he,fontColor:"5.translucent"}),"Tone"]})}),o(k.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{q.close(a)},children:o(X.X,{})})]}),o(z,{borderBottom:!0,opacity:"low"}),o(te.Radio.Normal,{value:u.val_tone,gap:"1/2",cellStyles:{fontColor:"3.blur"},options:[{value:0,label:o(z,{flexSizing:0,textAlign:"center",children:"\u306A\u3057"})},...i],onUpdateValidValue:l=>{u.set_tone(l)}})]})})}})},children:[o(R.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:"Tone"}),o(z,{boxShadow:"2.remark",ssSphere:1,className:[N("ToneBall"),N("ToneBall_"+u.val_tone)].join(" ")}),c(u.val_tone)]})]})}},ae={openDialogNEdit:u=>{te.Filer.fn.openDialog({accept:"image",multiple:!1,onChange:e=>{ae.openEditor(K({imageFile:e[0]},u))}})},openEditor:u=>V(void 0,null,function*(){let e="CropperImage";Y.open("middleCenter",{sheetID:e,size:"MAX",padding:0,margin:0,freeCSS:{maxWidth:"100%"},content:o(oe.Core,{val_file:u.imageFile,options:u,finishedCallback:c=>{Y.close(e),u.onProcessFinished(c)},abortCallback:()=>{Y.close(e)}}),closeAtEscapeKeyDown:!1})})};export{ae as Cropper,ae as default};
|
|
1
|
+
import{b as Z,c as le,e as O}from"../chunk-C5N2D3ZX.js";import{Fragment as Ce,jsx as o,jsxs as m}from"react/jsx-runtime";import C,{Filer as he,UUID as pe,useStore as q}from"jmini";import{$$fromRoot as ne}from"../@utils";import{useState as z,useEffect as ee}from"react";import{Box as X,FAI as H,Column as J,FlexMargin as me}from"../atoms";import{Row as B,Literal as w}from"../mols";import{Button as k}from"./Button";import N from"./Sheet";import te from"./Loader";import ae from"./Input";import{faPalette as ue}from"@fortawesome/free-solid-svg-icons/faPalette";import{faBarsStaggered as fe}from"@fortawesome/free-solid-svg-icons/faBarsStaggered";import{faRotateLeft as ge}from"@fortawesome/free-solid-svg-icons/faRotateLeft";import{faRotateRight as de}from"@fortawesome/free-solid-svg-icons/faRotateRight";import{CropperClasses as V}from"../@styles/componentClasses";import j from"./Tooltips";class ve{constructor(e){this.set_scale=e.set_scale,this.val_file=e.val_file,this.develops=e.develops;{let[h,n]=C.is.array(e.use)&&e.use||e.use.split(":").map(r=>Number(r)),p=h/n;this.usage={w:h,h:n,aspect:p}}this.componentId=e.componentId;let c=e.canvas,t=e.picture.image;this.Canvas={elm:c,ctx:c.getContext("2d")};let{width:a,height:i}=t,l=a/i;this.Picture={elm:t,originDataUrl:t.src,aspect:l,revisedAspect:1,rotate:e.picture.rotate,grayScale:e.picture.grayScale,tone:e.picture.tone},this.scale={current:e.scale.default,default:e.scale.default,min:e.scale.min,max:e.scale.max},this.usage.aspect<this.Picture.aspect?this.scale.min=100/l*this.usage.aspect:this.scale.min=100*l/this.usage.aspect,this.pst={frame:{x:0,y:0,w:0,h:0,aspect:1},outImage:{x:0,y:0,w:0,h:0},imageX:a/2,imageY:i/2,centerX:0,centerY:0},this.dragEffectInfo={origin:{x:0,y:0},frameExpandRate:{x:0,y:0}},this.pinchEffectInfo={origin:{x:0,y:0,scale:this.scale.current}},this.frameSizing(),this.modifyImage()}frameSizing(){let e=this.Canvas.elm,c=this.Picture.elm,t=0,a=0;{if(this.usage.aspect==1){let s=e.width*.6666666666666666,v=e.height*(2/3);a=t=Math.min(s,v)}else this.usage.aspect>1?(t=e.width*.9,a=t/this.usage.aspect):(a=e.height*.9,t=a*this.usage.aspect);let r=.85;a>e.height*r&&(a=e.height*r,t=a*this.usage.aspect),t>e.width*r&&(t=e.width*r,a=t/this.usage.aspect)}let{width:i,height:l}=c,h=(e.width-t)/2,n=(e.height-a)/2,p=t/a;this.pst={frame:{x:h,y:n,w:t,h:a,aspect:p},outImage:{x:0,y:0,w:0,h:0},imageX:i/2,imageY:l/2,centerX:e.width/2,centerY:e.height/2}}dragEffect(e){let{eventType:c,x:t,y:a}=e;if(c=="start"){let i=this.Canvas.elm.position();this.dragEffectInfo={origin:{x:t,y:a},frameExpandRate:{x:this.Canvas.elm.width/i.width,y:this.Canvas.elm.height/i.height}}}else{let{origin:i,frameExpandRate:l}=this.dragEffectInfo,h=i.x-t,n=i.y-a,p=this.scale.current*this.Picture.revisedAspect/100,r=h/p*l.x,s=n/p*l.y;c=="move"?this.drawImage(this.pst.imageX+r,this.pst.imageY+s):c=="end"&&this.drawImage(this.pst.imageX+=r,this.pst.imageY+=s)}}pinchEffect(e){let{eventType:c,event:t}=e,{x:a,y:i}=C.getCursor(t.touches[0]),{x:l,y:h}=C.getCursor(t.touches[1]),n=l-a,p=h-i;if(c=="start")this.pinchEffectInfo.origin={x:n,y:p,scale:this.scale.current};else if(c=="move"){let{origin:r}=this.pinchEffectInfo,s=Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2)),S=Math.sqrt(Math.pow(n,2)+Math.pow(p,2))/s,g=Number(r.scale*S);this.set_scale(g)}}updateScale(e){let c=e;c=Math.max(c,this.scale.min),c=Math.min(c,this.scale.max),this.scale.current=c,this.drawImage()}updateFilter(e){this.Picture.grayScale=e.grayScale,this.Picture.tone=e.tone,this.Picture.rotate=e.rotate,this.modifyImage()}modifyImage(){return O(this,null,function*(){let{grayScale:e,tone:c,rotate:t}=this.Picture;const a=document.createElement("canvas");let i=a.getContext("2d"),l=yield C.ImageLoader(this.Picture.originDataUrl),h=l.width,n=l.height;(t==90||t==270)&&(h=l.height,n=l.width),a.width=h,a.height=n,e&&(i.filter="grayscale("+e+"%)"),t&&(i.translate(h/2,n/2),i.rotate(t*Math.PI/180),[90,270].includes(t)?i.translate(-n/2,-h/2):i.translate(-h/2,-n/2)),i.drawImage(l,0,0,l.width,l.height);let p=i.getImageData(0,0,a.width,a.height),r=p.data;{e/=100;let g=[[255,255,255],[255,200,100],[170,170,255],[240,200,145],[128,255,255],[255,128,255],[255,255,128],[128,158,169],[128,112,162],[50,192,87],[246,100,140]][c],y=g[0]/255,d=g[1]/255,E=g[2]/255;for(let x=0;x<n;x++)for(let b=0;b<h;b++){var s=(x*h+b)*4;if(e){let D=.3*r[s]+.59*r[s+1]+.11*r[s+2];for(var v=0;v<3;v++){let R=r[s+v];r[s+v]=R+(D-R)*e}}r[s]*=y,r[s+1]*=d,r[s+2]*=E}}i.putImageData(p,0,0);let S=a.toDataURL("image/jpeg");{let g=yield C.ImageLoader(S),{width:y,height:d}=g,E=y/d;this.Picture=le(Z({},this.Picture),{elm:g,aspect:E,revisedAspect:this.pst.frame.aspect>E?this.pst.frame.w/y:this.pst.frame.h/d})}this.drawImage()})}drawImage(e,c){let{Canvas:{ctx:t,elm:a},pst:{frame:i}}=this;t.clearRect(0,0,this.Canvas.elm.width,this.Canvas.elm.height);let l=e||this.pst.imageX,h=c||this.pst.imageY;{let n=this.scale.current/100,p=this.Picture.revisedAspect*n,r=this.pst.centerX-l*p,s=this.pst.centerY-h*p,v=this.Picture.elm.width*p,S=this.Picture.elm.height*p,g=0,y=0;this.usage.aspect<this.Picture.aspect?(g=v,y=g/this.usage.aspect):(y=S,g=y*this.usage.aspect);{let d=this.pst.frame.x-(v-g)/2,E=this.pst.frame.x+this.pst.frame.w-(v+g)/2,x=this.pst.frame.y-(S-y)/2,b=this.pst.frame.y+this.pst.frame.h-(S+y)/2,D=0;r<E&&(D=r-E),r>d&&(D=r-d);let R=0;s<b&&(R=s-b),s>x&&(R=s-x),this.dragEffectInfo.origin.x+=D/2/this.dragEffectInfo.frameExpandRate.x,this.dragEffectInfo.origin.y+=R/2/this.dragEffectInfo.frameExpandRate.y,r=Math.min(Math.max(r,E),d),s=Math.min(Math.max(s,b),x)}this.pst.outImage={x:r,y:s,w:v,h:S};{let d=1;t.lineWidth=d,t.strokeStyle="#ffffff66",t.strokeRect(r+(v-g)/2-d,s+(S-y)/2-d,g+d*2,y+d*2)}t.drawImage(this.Picture.elm,0,0,this.Picture.elm.width,this.Picture.elm.height,r,s,v,S)}{if(this.usage.aspect==1){t.fillStyle="rgba( 20,24,20,.5 )",t.beginPath();let n=a.width/3*2,p=a.height/3*2,r=Math.min(n,p),s=Math.max(n,p);t.arc(a.width/2,a.height/2,s*1.41,0,Math.PI*2,!0),t.arc(a.width/2,a.height/2,r/2,0,Math.PI*2,!1),t.closePath(),t.fill()}else t.fillStyle="rgba( 20,24,20,.5 )";{let p=C(document.body).getStyleProperty("--color-theme-hsl"),r=2;t.lineWidth=r,t.strokeStyle=`hsla( ${p},1 )`,t.strokeRect(i.x-r,i.y-r,i.w+r*2,i.h+r*2)}}}export(){return O(this,null,function*(){let{Canvas:e,develops:c,Picture:t,pst:{outImage:a,frame:i}}=this,l=a.w/t.elm.width,h=a.h/t.elm.height,n=(i.x-a.x)/l,p=i.w/l,r=(i.y-a.y)/h,s=i.h/h,v=Array.from({length:c.length}),S="image/jpeg";for(let g=0;g<c.length;g++){let{size:y,maxSize:d}=c[g];d=d||{S:1024*20,R:1024*100,L:1024*350}[y];let E={S:140,R:600,L:1200}[y],x=document.createElement("canvas");x.width=p,x.height=s;let b=document.createElement("canvas");b.width=E,b.height=E/this.usage.aspect;let D=x.getContext("2d");if(!D)return;let R=b.getContext("2d");if(!R)return;D.clearRect(0,0,x.width,x.height),D.drawImage(this.Picture.elm,n,r,p,s,0,0,p,s),R.fillStyle="black",R.drawImage(x,0,0,x.width,x.height,0,0,b.width,b.height);let $=b.toDataURL(S),A=yield $.toBlob(S);if(!A)return;if(A.size>=d){let ie=d/A.size;if($=b.toDataURL(S,ie*.92),A=yield $.toBlob(S),!A)return}let re=new File([A],this.val_file.name,{type:S});v[g]=re}return v})}}const se={Core:u=>{let{val_file:e,options:c,finishedCallback:t,abortCallback:a}=u,{use:i,develops:l=[]}=c,[h]=z(pe());const n={scale:{default:120,min:50,max:300},rotate:0,grayScale:0,tone:0};let p=2048*2048,r=1024,[s,v]=z("init"),[S,g]=z(""),[y,d]=z(n.scale.default),[E,x]=z(n.rotate),[b,D]=z(n.grayScale),[R,$]=z(n.tone),[A,re]=z(-1),[ie,ce]=z(-1);return ee(()=>{let f="CropperResize";return C(window).addEvent({eventType:"resize",eventID:f,callback:()=>{C.interval.once(()=>{var G;let I=ne("#Canvas-"+h)[0];if(!I)return;let P=(G=q.get(h))==null?void 0:G.Instance;if(!P)return;let W=I.position(),U=W.width/W.height,Y=r,F=Y/U;if(Y*F>p){let K=Y*F/p;Y=Math.floor(Y/Math.sqrt(K)),F=Math.floor(F/Math.sqrt(K))}I.width=r,I.height=F;let{width:L,height:Q}=I;P.pst.centerX=L/2,P.pst.centerY=Q/2,P.frameSizing(),P.modifyImage()},250,"CropperResize")}}),()=>{C(window).removeEvent(f)}},[]),ee(()=>{q.set({[h]:{}}),O(void 0,null,function*(){try{let f=ne("#Canvas-"+h)[0];if(!f)return;let I=f.position(),P=I.width/I.height,W=r,U=W/P;if(W*U>p){let _=W*U/p;W=Math.floor(W/Math.sqrt(_)),U=Math.floor(U/Math.sqrt(_))}f.width=W,f.height=U;let Y=he(e),F=yield C.ImageLoader(yield Y.toObjectURL());re(F.width),ce(F.height);let L=new ve({set_scale:d,val_file:e,develops:l,use:i,scale:n.scale,componentId:h,canvas:f,picture:{image:F,grayScale:n.grayScale,tone:n.tone,rotate:n.rotate}});q.set({[h]:{Instance:L}});const Q=function(_){if(_.preventDefault(),_.touches&&_.touches.length>1)L.pinchEffect({eventType:"start",event:_}),C(document).addEvent({eventType:"touchmove",eventID:"CropperEffectMove",options:{passive:!1},callback:M=>{M.preventDefault(),L.pinchEffect({eventType:"move",event:M})}}).addEvent({eventType:"touchend",eventID:"CropperEffectEnd",options:{passive:!1},callback:K});else{L.dragEffect(Z({eventType:"start"},C.getCursor(_)));let{type:M}=_;C(document).addEvent({eventType:M=="touchstart"?"touchmove":"mousemove",eventID:"CropperEffectMove",options:{passive:!1},callback:T=>{G("move",T)}}).addEvent({eventType:M=="touchstart"?"touchend":"mouseup",eventID:"CropperEffectEnd",options:{passive:!1},callback:T=>{G("end",T),K(T)}})}},G=function(_,M){M.preventDefault(),L.dragEffect(Z({eventType:_},C.getCursor(M)))},K=function(_){_.preventDefault(),C(document).removeEvent(["CropperEffectMove","CropperEffectEnd"])};C(f).removeEvent(["CropperMouseWheel","CropperTouchStart","CropperMouseDown"]).addEvent({eventID:"CropperMouseWheel",eventType:"wheel",callback:_=>{_.preventDefault();let M=Number(_.wheelDelta*.04),T=L.scale.current+M;T=Math.max(T,L.scale.min),T=Math.min(T,L.scale.max),d(T)},options:{passive:!1}}).addEvent({eventType:"touchstart",eventID:"CropperTouchStart",callback:Q,options:{passive:!1}}).addEvent({eventType:"mousedown",eventID:"CropperMouseDown",callback:Q,options:{passive:!1}}),yield C.pending(()=>{},1e3),v("ok")}catch(f){v("error"),g((f==null?void 0:f.message)||C.Stringify(f)),console.error(f)}})},[e.id]),ee(()=>{var I;let f=(I=q.get(h))==null?void 0:I.Instance;f&&f.updateScale(y)},[y]),ee(()=>{var I;let f=(I=q.get(h))==null?void 0:I.Instance;f&&f.updateFilter({grayScale:b,tone:R,rotate:E})},[b,R,E]),o(N.Body,{borderRadius:0,height:"viewHeight",width:"viewWidth",children:m(J,{className:[V("Wrap"),V("Use_"+i)].join(" "),gap:0,height:1,position:"relative",overflow:"hidden",borderRadius:"inherit",children:[m(X,{position:"absolute",top:"50%",left:"50%",flexCenter:!0,freeCSS:{zIndex:2,transform:"translate( -50%,-50% )",pointerEvents:"none"},children:[s=="init"&&o(te.Theme.XL,{showInitial:!0}),s=="error"&&m(w.Supplement,{fontColor:"nega",children:["\u753B\u50CF\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F",o(w.Description,{children:S})]})]}),m(X,{flexSizing:0,overflow:"hidden",position:"relative",flexCenter:!0,paddingBottom:6,freeCSS:{zIndex:1,backgroundColor:"#000f0f"},children:[o("canvas",{style:{width:"100%",height:"100%"},width:r,height:r,className:V("Canvas"),id:"Canvas-"+h}),o(w.Supplement,{position:"absolute",bottom:1,left:1,right:1,ssCardBox:"plain",boxShadow:"0.max",padding:1,backgroundColor:"layer.0.opa.few",freeCSS:{backdropFilter:"blur(6px)"},children:m(J,{gap:"1/2",children:[m(B.Left,{gap:"1/2",flexWrap:!0,fontColor:"white",fontSize:"0.xs",fontHeight:1.2,children:[m(w,{children:["[",e.type,"]"]}),o(w,{children:e.name}),m(w,{children:[A,"px x ",ie,"px"]}),m(w,{children:["[",e.size.rank(),"B]"]})]}),m(B.Left,{gap:"1/2",verticalAlign:"unset",flexWrap:!0,children:[o(se.SettingRegion,{DefaultOptions:n,val_scale:y,set_scale:d,val_tone:R,set_tone:$,val_grayScale:b,set_grayScale:D,val_rotate:E,set_rotate:x}),o(me,{}),o(k.Border.S,{onClick:()=>{a()},children:"\u9589\u3058\u308B"}),o(k.Prime.S,{boxShadow:"3.remark",onClick:()=>O(void 0,null,function*(){var P;let f=(P=q.get(h))==null?void 0:P.Instance;if(!f)return;te.fn.mini.active("CropperExportation");let I=yield f.export();setTimeout(()=>{te.fn.mini.stop("CropperExportation"),t(I)},1e3)}),children:m(B.Center,{gap:"1/2",children:[o(te.White.R,{loaderID:"CropperExportation"}),"\u6C7A\u5B9A"]})})]})]})})]})]})})},SettingRegion:u=>{let e=["","\u6696\u8272","\u5BD2\u8272","\u30BB\u30D4\u30A2","\u30B7\u30A2\u30F3","\u30DE\u30BC\u30F3\u30BF","\u30A4\u30A8\u30ED\u30FC","\u30AA\u30EA\u30B8\u30CA\u30EB1","\u30AA\u30EA\u30B8\u30CA\u30EB2","\u30AA\u30EA\u30B8\u30CA\u30EB3","\u30AA\u30EA\u30B8\u30CA\u30EB4"],c=t=>e[t]||"\u306A\u3057";return m(Ce,{children:[m(B.Center,{gap:"1/6",children:[m(k.Border.S,{flexCenter:!0,gap:"1/4",border:"unset",borderTopRightRadius:0,borderBottomRightRadius:0,onClick:()=>{let t=u.val_rotate-90;t<0&&(t+=360),u.set_rotate(t)},children:[o(w,{children:"90\xB0"}),o(H,{icon:ge,fontColor:"4.thin"})]}),m(k.Border.S,{flexCenter:!0,gap:"1/4",border:"unset",borderTopLeftRadius:0,borderBottomLeftRadius:0,onClick:()=>{u.set_rotate((u.val_rotate+90)%360)},children:[o(H,{icon:de,fontColor:"4.thin"}),o(w,{children:"90\xB0"})]})]}),m(k.Border.S,{flexCenter:!0,gap:"1/2",border:"unset",onClick:t=>{let a="CropperZoomEdit";j.open({tipsID:a,gravityPoint:3,event:t,closeAtParentBlur:!1,freeCSS:{minWidth:12*26},content:o(N.Body,{children:m(J,{padding:1.5,children:[m(B.Separate,{children:[o(w.Paragraph,{children:m(B.Center,{gap:"1/2",children:[o(H.Search,{fontColor:"5.translucent"}),"Zoom"]})}),o(k.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{j.close(a)},children:o(H.X,{})})]}),o(X,{borderBottom:!0,opacity:"low"}),o(ae.Slider,{override:"force",value:u.val_scale-u.DefaultOptions.scale.min,min:u.DefaultOptions.scale.min-100,max:u.DefaultOptions.scale.max-100,step:25,onUpdateValidValue:(i,l)=>{C.interval.once(()=>{u.set_scale(i+100)},250,"Cropper.UpdateScale")},legends:{enable:!0,custom:i=>"x"+Math.round(100+i)/100}})]})})})},children:[o(w.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:"Zoom"}),m(w,{unitWidth:4,children:[u.val_scale.rate(1,0),"%"]})]}),m(k.Border.S,{flexCenter:!0,gap:"1/2",border:"unset",onClick:t=>{let a="CropperGrayScaleEdit";j.open({tipsID:a,gravityPoint:3,event:t,closeAtParentBlur:!1,freeCSS:{minWidth:12*26},content:o(N.Body,{children:m(J,{padding:1.5,children:[m(B.Separate,{children:[o(w.Paragraph,{children:m(B.Center,{gap:"1/2",children:[o(H,{icon:ue,fontColor:"5.translucent"}),"Gray Scale"]})}),o(k.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{j.close(a)},children:o(H.X,{})})]}),o(X,{borderBottom:!0,opacity:"low"}),o(ae.Slider,{value:u.val_grayScale,min:0,max:100,step:10,onUpdateValidValue:i=>{C.interval.once(()=>{u.set_grayScale(i)},250,"Cropper.GrayScale")},legends:{enable:!0,custom:i=>i+"%"}})]})})})},children:[o(w.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:"GrayScale"}),m(w,{children:[u.val_grayScale.rate(1,0),"%"]})]}),m(k.Border.S,{flexCenter:!0,gap:"1/2",border:"unset",onClick:t=>{let a="CropperToneEdit";j.open({tipsID:a,gravityPoint:3,event:t,closeAtParentBlur:!1,freeCSS:{minWidth:12*26,maxWidth:12*24},content:()=>{let i=[];for(let l=1;l<=10;l++)i.push({value:l,label:m(B.Left,{gap:"1/3",children:[o(X,{ssSphere:1,className:[V("ToneBall"),V("ToneBall_"+l)].join(" ")}),o(X,{textAlign:"left",flexSizing:0,children:c(l)})]})});return o(N.Body,{children:m(J,{padding:1.5,children:[m(B.Separate,{children:[o(w.Paragraph,{children:m(B.Center,{gap:"1/2",children:[o(H,{icon:fe,fontColor:"5.translucent"}),"Tone"]})}),o(k.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{j.close(a)},children:o(H.X,{})})]}),o(X,{borderBottom:!0,opacity:"low"}),o(ae.Radio.Normal,{value:u.val_tone,gap:"1/2",cellStyles:{fontColor:"3.blur"},options:[{value:0,label:o(X,{flexSizing:0,textAlign:"center",children:"\u306A\u3057"})},...i],onUpdateValidValue:l=>{u.set_tone(l)}})]})})}})},children:[o(w.Supplement,{fontSize:"0.xs",fontColor:"4.thin",children:"Tone"}),o(X,{boxShadow:"2.remark",ssSphere:1,className:[V("ToneBall"),V("ToneBall_"+u.val_tone)].join(" ")}),c(u.val_tone)]})]})}},oe={openDialogNEdit:u=>{ae.Filer.fn.openDialog({accept:"image",multiple:!1,onChange:e=>{oe.openEditor(Z({imageFile:e[0]},u))}})},openEditor:u=>O(void 0,null,function*(){let e="CropperImage";N.open("middleCenter",{sheetID:e,size:"MAX",padding:0,margin:0,freeCSS:{maxWidth:"100%"},content:o(se.Core,{val_file:u.imageFile,options:u,finishedCallback:c=>{N.close(e),u.onProcessFinished(c)},abortCallback:()=>{N.close(e)}}),closeAtEscapeKeyDown:!1})})};export{oe as Cropper,oe as default};
|
package/dist/fn/Sheet.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as m,c as b,d as G}from"../chunk-C5N2D3ZX.js";import{Fragment as ae,jsx as h,jsxs as F}from"react/jsx-runtime";import d,{UUID as Z,Time as le,useStore as w}from"jmini";import{useState as U,useEffect as H,useRef as pe}from"react";import{$$fromRoot as K,Config as X}from"../@utils";import{Box as R,Flex as ue,Img as he,FAI as re,Column as oe,Grid as ce}from"../atoms";import{Row as ne}from"../mols";import{Button as ie}from"./Button";import{SheetClasses as g}from"../@styles/componentClasses";import de from"./Plate";const x={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=w.get("sessionStates-"+X.get().sessionUID);return t||null},getNewSheetStates:t=>{var u;let e=b(m({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom"},t),{sheetID:t.sheetID||Z(),isOpen:!0,created_at:le()});if(e.type=="custom"){let a=e;a.parent=a.parent||((u=a==null?void 0:a.event)==null?void 0:u.currentTarget),e=a}return e}},$={Wrapper:()=>{let[t,e]=U([]),u={val_sheets:t,set_sheets:e},a="sessionStates-"+X.get().sessionUID;return w.set({[a]:u}),H(()=>{let c="Sheet-"+X.get().sessionUID;w.set({[c]:{add:(r,s)=>{let i=w.get(c);if(!i)return;let o=x.getNewSheetStates(r);if(x.openQueue[o.sheetID])return;if(x.openQueue[o.sheetID]=!0,s!="inherit"&&(o.isOpen=s!=null?s:!0),!!i.find(o.sheetID)){e(C=>{let E=[...C],D=E.findIndex(L=>L.sheetID==o.sheetID);return D==-1||(E[D]=o),E}),delete x.openQueue[o.sheetID];return}e(C=>[o,...C])},find:r=>{let s=x.getSessionStates();if(!s)return null;let{val_sheets:i}=s;return i.find(o=>o.sheetID==r)}}}),d(X.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(r){let{key:s,metaKey:i}=r;if(s=="Escape"||s==","&&i){let o=x.getSessionStates();if(!o)return;let{val_sheets:v}=o,C=v.filter(D=>D.isOpen);if(!C.length)return;let E=C.reduce((D,L)=>D.created_at.value>L.created_at.value?D:L);A.close(E.sheetID,s)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(r){let s=x.getSessionStates();if(!s)return;let{val_sheets:i}=s,o=r.target;if(!o||o!=null&&o.closest("."+g("CustomSheet")))return;let v=i.filter(C=>C.type=="custom");v.length&&v.forEach(C=>{let{parent:E}=C;if(!C.closeAtAroundClick)return;let D=K(E)[0];E!==o&&D!==o&&(d(D).find(o).length||A.close(C.sheetID))})}})},[]),h(ae,{children:t.map(c=>h($.Core,b(m({},u),{val_sheet:c,patch_sheet:r=>{e(s=>{let i=[...s],o=i.findIndex(v=>v.sheetID==c.sheetID);return o==-1||(i[o]=m(m({},i[o]),r)),i})},delete_sheet:()=>{e(r=>{let s=[...r],i=s.findIndex(o=>o.sheetID==c.sheetID);return i==-1||s.splice(i,1),s})}}),c.sheetID))})},sheetCategory:t=>t=="custom"?"custom":t.startsWith("drawer")?"drawer":"normal",sheetPosition:t=>t=="drawer.left"?"left":t=="drawer.right"?"right":t=="drawer.bottom"?"bottom":"",Core:t=>{let{val_sheet:e,patch_sheet:u}=t,[a,c]=U(x.currentIndex+2),[r]=U(Z()),s=e.type!="custom"&&!e.overwrap;H(()=>{x.currentIndex++,d.scope(()=>{if(!e.closeAtParentBlur)return;let o=d(e.parent);o[0]&&o.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{o.removeEvent("SheetClosation-"+e.sheetID),u({isOpen:!1})}})}),w.set({[e.sheetID]:{resize:o=>{if(e.type=="drawer.bottom"){let v=w.get(r);v&&v.resize&&v.resize(o)}else(e.type.includes("normal")||e.type.includes("drawer"))&&u({size:o})},close:o=>{u({isOpen:!1})},open:()=>{u({isOpen:!0})}}})},[]),H(()=>{d.scope(()=>{let o=K("#"+r);if(e.isOpen){e.hold_state&&c(x.currentIndex+1),o.await(10).removeClass(g("Hide")).await(10).addClass(g("Open")).callback(()=>{delete x.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}o.await(10).removeClass(g("Open")).await(251).addClass(g("Hide")).callback(()=>{if(e.onClose&&e.onClose(),s&&X.get().browserIs!="safari"&&d(X.get().appRoot).focus(),e.hold_state)return u({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let i=$.Types[{topLeft:"Normal",topCenter:"Normal",topRight:"Normal",middleLeft:"Normal",middleCenter:"Normal",middleRight:"Normal",bottomLeft:"Normal",bottomCenter:"Normal",bottomRight:"Normal","drawer.left":"Edge","drawer.right":"Edge","drawer.bottom":"Bottom",custom:"Custom"}[e.type]];return h(R,{className:["AMOTIFY_be",g("Wrap"),g("Tcate_"+$.sheetCategory(e.type)),g("Tpos_"+$.sheetPosition(e.type)),g("isMainSheet_"+s)].join(" "),width:1,ssAbsoluteCovered:!0,position:"fixed",freeCSS:{zIndex:a},id:r,children:F(oe,{className:g("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!s&&h(R,{className:g("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:h(R,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:g("TapContent"),onClick:o=>{var C;((C=e.closeAtAroundClick)==null||C)&&A.close(e.sheetID)}})}),h(i,m({componentId:r},e))]})},r)},Types:{Normal:t=>{let k=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,content:c,className:r="",type:s,size:i="R",freeCSS:o,onOpen:v,onClose:C,closeAtAroundClick:E,closeAtEscapeKeyDown:D,closeAtPageTransit:L,closeAtParentBlur:J,closeAtSwipeDown:Y,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:N}=k,M=G(k,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),T={},y=[];return s.match(/top/)?(y.push("top"),T.marginBottom="auto"):s.match(/middle/)?(y.push("center"),T.marginTop="auto",T.marginBottom="auto"):s.match(/bottom/)&&(y.push("bottom"),T.marginTop="auto"),s.match(/left/i)?(y.push("left"),T.marginRight="auto"):s.match(/center/i)?(y.push("center"),T.marginLeft="auto",T.marginRight="auto"):s.match(/right/i)&&(y.push("right"),T.marginLeft="auto"),h(R,b(m(m({className:[g("BB"),r].join(" "),padding:1,transition:"short",opacity:"trans"},M),T),{freeCSS:m({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[i],maxWidth:"96vw",transformOrigin:y.join(" ")},o),children:d.is.function(c)?h(c,{}):c}))},Edge:t=>{let M=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,type:c,content:r,className:s="",size:i="R",onOpen:o,onClose:v,closeAtAroundClick:C,closeAtEscapeKeyDown:E,closeAtPageTransit:D,closeAtParentBlur:L,closeAtSwipeDown:J,hold_state:Y,overwrap:q,isOpen:ee,backgroundEffect:te}=M,N=G(M,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]);return h(R,b(m(b(m({className:[g("BB"),s].join(" ")},c=="drawer.right"?{marginLeft:"auto"}:c=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"short",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),N),{freeCSS:m({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[i],maxWidth:"96vw"},N.freeCSS),children:d.is.function(r)?h(r,{}):r}))},Bottom:t=>{let j=t,{componentId:e,sheetID:u,sheetGroups:a,bodyScrolls:c,content:r,size:s="R",sizeChanged:i,baseStyles:o,onOpen:v,onClose:C,closeAtAroundClick:E,closeAtEscapeKeyDown:D,closeAtPageTransit:L,closeAtParentBlur:J,closeAtSwipeDown:Y=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:N}=j,M=G(j,["componentId","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),T=d.getScreenSize(),y=[0,.2,.6,.95],k={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[W,Q]=U(s),[I,_]=U({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:y[k[s]]});w.update({[e]:{val_edit:I,resize:S=>{let f=y[k[S]];_(p=>b(m({},p),{value:f})),Q(S)}}});const B={Start:S=>{d(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:B.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:B.End});let f=d.getCursor(S),p=b(m({},I),{process:!0,processStart:new Date().getTime(),originY:f.y,originValue:I.value,viewHeight:d.getScreenSize().height});w.update({[e]:{val_edit:p}}),_(p)},Move:S=>{var O;let f=(O=w.get(e))==null?void 0:O.val_edit;if(!f.process)return;let z=(d.getCursor(S).y-f.originY)/f.viewHeight,n=f.originValue-z;if(n>.95)n=.95+(n-.95)*.5;else if(n<.2){let P=.2-n;P-=.1,n=.1+(.1-P)*.5}return _(b(m({},f),{value:n})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var n;let f=(n=w.get(e))==null?void 0:n.val_edit;if(!f.process)return;d(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let p=0;if(f.value<.1||(f.value<.5?p=1:f.value>.75?p=3:p=2),new Date().getTime()-f.processStart<300){let O=d.getCursor(S).y-f.originY;if(Math.abs(O)>=20){let P=+(O<0)*2-1;p+=P,p=Math.min(Math.max(p,0),y.length-1)}}p==0&&(Y||(p=1)),Q(["ZERO","S","R","L"][p]),_(b(m({},f),{value:y[p],process:!1}))}},V=pe(!1);return H(()=>{V.current?W=="ZERO"?Y&&A.close(u):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(W)},250):V.current=!0},[W]),h(R,{className:g("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"short",freeCSS:m({maxWidth:12*60,height:T.height*I.value},I.process?{transition:"0s"}:{}),children:F(oe,b(m({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},o),{children:[F(ne.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[h(R,{ssSphere:2.5}),h(ne.Center,{onPointerDown:B.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:h(R,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:g("DragBar")})}),h(ie.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{A.close(u)},children:h(re.X,{})})]}),h(R,b(m({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},M),{children:d.is.function(r)?h(r,{}):r}))]}))})},Custom:t=>{let j=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,event:c,parent:r,nextToCursor:s,gravityPoint:i=22,content:o,closeAtAroundClick:v,closeAtEscapeKeyDown:C,closeAtPageTransit:E,closeAtParentBlur:D,closeAtSwipeDown:L,hold_state:J,onOpen:Y,onClose:q,overwrap:ee,isOpen:te,resize:N,backgroundEffect:M}=j,T=G(j,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect"]),[y]=U(Z()),k=d.is.element(r)||d.is.jmini(r)?d(r):K(r),W='[data-sheet-id="'+y+'"]',Q='[data-sheet-content="'+y+'"]';i=i;let I=i%5||5,_=Math.ceil(i/5);const B={Init:()=>{if(s&&c){let l=d.getScreenSize(),se=d.getCursor(c);return{top:se.y-l.pageYOffset,left:se.x-l.pageXOffset}}let S={};if(!k||!k[0])return S;let{top:f,right:p,bottom:z,left:n,height:O,width:P}=k.position();return[1,2].includes(I)?S.left=n:I==3?S.left=n+P/2:[4,5].includes(I)&&(S.left=p),i<=10?S.top=f:i<=15?S.top=f+O/2:i<=25&&(S.top=z),S},Adjust:()=>{let S=K(W).position(),f=K(Q).position(),p=k.position(),z=d.getScreenSize(),n={};for(let l in f)n[l]=f[l];if(d.scope(()=>{if(t.nextToCursor)return;let l=0;_==1?l=p.top-n.bottom:_==2?l=p.top-n.top:_==3?l=p.top-n.top+(p.height-n.height)/2:_==4?l=p.bottom-n.bottom:_==5&&(l=p.bottom-n.top),n.top+=l,n.bottom+=l}),d.scope(()=>{if(t.nextToCursor)return;let l=0;I==1?l=p.left-n.right:I==2?l=p.left-n.left:I==3?l=p.left-n.left+(p.width-n.width)/2:I==4?l=p.right-n.right:I==5&&(l=p.right-n.left),n.left+=l,n.right+=l}),n.top<0){let l=-n.top;n.top+=l,n.bottom+=l}if(n.bottom>z.height){let l=n.bottom-z.height;n.top-=l,n.bottom-=l}if(n.left<0){let l=-n.left;n.left+=l,n.right+=l}if(n.right>z.width){let l=n.right-z.width;n.left-=l,n.right-=l}let O=n.top-f.top,P=n.left-f.left;d(W).css({top:S.top+O+"px",left:S.left+P+"px"})}};let[V]=U(B.Init());return H(()=>{K(W).await(10).addClass(g("Open")).await(200).callback(()=>{(N==null||N)&&B.Adjust()}),w.update({["customSheet-"+t.sheetID]:{reposition:()=>{B.Adjust()}}})},[]),k[0]?h(R,{className:[g("BB"),g("CustomSheet")].join(" "),"data-sheet-id":y,transition:"short",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:V,children:h(ue,{position:"absolute",className:[g("GPT"),g("GPT_"+i),g("Col_"+I),g("Row_"+_)].join(" "),children:h(R,b(m({"data-sheet-content":y,flexSizing:"none",maxHeight:"viewHeight"},T),{freeCSS:m({maxWidth:"98vw"},T.freeCSS),children:d.is.function(o)?h(o,{}):o}))})}):null}}},A={Wrapper:()=>h($.Wrapper,{}),Element:t=>{let c=t,{isOpen:e,children:u}=c,a=G(c,["isOpen","children"]);return H(()=>{if(e){A.open(t.type,b(m({},a),{content:u}));return}a.sheetID&&A.close(a.sheetID)},[e]),h(ae,{})},image:(t,e)=>{let u=t.sheetID||Z(),r=t,{type:a}=r,c=G(r,["type"]);A.open(a||"topCenter",b(m({size:"MAX"},c),{sheetID:u,freeCSS:{maxWidth:"100vw"},content:()=>{let[s]=U(d.flatArray(e));return h(de,{children:F(oe,{children:[h(ne.Right,{children:F(ie.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{A.close(u)},children:[h(re.X,{})," \u9589\u3058\u308B"]})}),h(ce.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:s.map((i,o)=>h(he,{ssCardBox:!0,position:"relative",flexCenter:!0,src:i},o))})]})})}}))},open:(t,e,u)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let a=w.get("Sheet-"+X.get().sessionUID);a&&a.add(e,u)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=w.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=w.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,u){let a=x.getSessionStates();if(!a)return;let{val_sheets:c}=a;t=t==null?void 0:t.replace(/\./g,"-");let r=c.find(i=>i.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let s=w.get(r.sheetID);s&&s.close&&s.close(u)},closeGroup:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;t=(t||"").replace(/\./g,"-");for(let a of u)a.sheetGroups&&a.sheetGroups==t&&A.close(a.sheetID)},closeAll:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;for(let a of u)t&&!a.closeAtPageTransit||A.close(a.sheetID,"pageTransit",!0)},Body:t=>h(R,m({className:g("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{A as Sheet,A as default};
|
|
1
|
+
import{b as m,c as b,d as G}from"../chunk-C5N2D3ZX.js";import{Fragment as ae,jsx as h,jsxs as F}from"react/jsx-runtime";import d,{UUID as Z,Time as le,useStore as w}from"jmini";import{useState as U,useEffect as H,useRef as pe}from"react";import{$$fromRoot as K,Config as X}from"../@utils";import{Box as R,Flex as ue,Img as he,FAI as re,Column as oe,Grid as ce}from"../atoms";import{Row as ne}from"../mols";import{Button as ie}from"./Button";import{SheetClasses as g}from"../@styles/componentClasses";import de from"./Plate";const x={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=w.get("sessionStates-"+X.get().sessionUID);return t||null},getNewSheetStates:t=>{var u;let e=b(m({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom"},t),{sheetID:t.sheetID||Z(),isOpen:!0,created_at:le()});if(e.type=="custom"){let a=e;a.parent=a.parent||((u=a==null?void 0:a.event)==null?void 0:u.currentTarget),e=a}return e}},$={Wrapper:()=>{let[t,e]=U([]),u={val_sheets:t,set_sheets:e},a="sessionStates-"+X.get().sessionUID;return w.set({[a]:u}),H(()=>{let c="Sheet-"+X.get().sessionUID;w.set({[c]:{add:(r,s)=>{let i=w.get(c);if(!i)return;let o=x.getNewSheetStates(r);if(x.openQueue[o.sheetID])return;if(x.openQueue[o.sheetID]=!0,s!="inherit"&&(o.isOpen=s!=null?s:!0),!!i.find(o.sheetID)){e(C=>{let E=[...C],D=E.findIndex(L=>L.sheetID==o.sheetID);return D==-1||(E[D]=o),E}),delete x.openQueue[o.sheetID];return}e(C=>[o,...C])},find:r=>{let s=x.getSessionStates();if(!s)return null;let{val_sheets:i}=s;return i.find(o=>o.sheetID==r)}}}),d(X.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(r){let{key:s,metaKey:i}=r;if(s=="Escape"||s==","&&i){let o=x.getSessionStates();if(!o)return;let{val_sheets:v}=o,C=v.filter(D=>D.isOpen);if(!C.length)return;let E=C.reduce((D,L)=>D.created_at.value>L.created_at.value?D:L);A.close(E.sheetID,s)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(r){let s=x.getSessionStates();if(!s)return;let{val_sheets:i}=s,o=r.target;if(!o||o!=null&&o.closest("."+g("CustomSheet")))return;let v=i.filter(C=>C.type=="custom");v.length&&v.forEach(C=>{let{parent:E}=C;if(!C.closeAtAroundClick)return;let D=K(E)[0];E!==o&&D!==o&&(d(D).find(o).length||A.close(C.sheetID))})}})},[]),h(ae,{children:t.map(c=>h($.Core,b(m({},u),{val_sheet:c,patch_sheet:r=>{e(s=>{let i=[...s],o=i.findIndex(v=>v.sheetID==c.sheetID);return o==-1||(i[o]=m(m({},i[o]),r)),i})},delete_sheet:()=>{e(r=>{let s=[...r],i=s.findIndex(o=>o.sheetID==c.sheetID);return i==-1||s.splice(i,1),s})}}),c.sheetID))})},sheetCategory:t=>t=="custom"?"custom":t.startsWith("drawer")?"drawer":"normal",sheetPosition:t=>t=="drawer.left"?"left":t=="drawer.right"?"right":t=="drawer.bottom"?"bottom":"",Core:t=>{let{val_sheet:e,patch_sheet:u}=t,[a,c]=U(x.currentIndex+2),[r]=U(Z()),s=e.type!="custom"&&!e.overwrap;H(()=>{x.currentIndex++,d.scope(()=>{if(!e.closeAtParentBlur)return;let o=d(e.parent);o[0]&&o.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{o.removeEvent("SheetClosation-"+e.sheetID),u({isOpen:!1})}})}),w.set({[e.sheetID]:{resize:o=>{if(e.type=="drawer.bottom"){let v=w.get(r);v&&v.resize&&v.resize(o)}else(e.type.includes("normal")||e.type.includes("drawer"))&&u({size:o})},close:o=>{u({isOpen:!1})},open:()=>{u({isOpen:!0})}}})},[]),H(()=>{d.scope(()=>{let o=K("#"+r);if(e.isOpen){e.hold_state&&c(x.currentIndex+1),o.await(10).removeClass(g("Hide")).await(10).addClass(g("Open")).callback(()=>{delete x.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}o.await(10).removeClass(g("Open")).await(251).addClass(g("Hide")).callback(()=>{if(e.onClose&&e.onClose(),s&&X.get().browserIs!="safari"&&d(X.get().appRoot).focus(),e.hold_state)return u({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let i=$.Types[{topLeft:"Normal",topCenter:"Normal",topRight:"Normal",middleLeft:"Normal",middleCenter:"Normal",middleRight:"Normal",bottomLeft:"Normal",bottomCenter:"Normal",bottomRight:"Normal","drawer.left":"Edge","drawer.right":"Edge","drawer.bottom":"Bottom",custom:"Custom"}[e.type]];return h(R,{className:["AMOTIFY_be",g("Wrap"),g("Tcate_"+$.sheetCategory(e.type)),g("Tpos_"+$.sheetPosition(e.type)),g("isMainSheet_"+s)].join(" "),width:1,ssAbsoluteCovered:!0,position:"fixed",freeCSS:{zIndex:a},id:r,children:F(oe,{className:g("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!s&&h(R,{className:g("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:h(R,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:g("TapContent"),onClick:o=>{var C;((C=e.closeAtAroundClick)==null||C)&&A.close(e.sheetID)}})}),h(i,m({componentId:r},e))]})},r)},Types:{Normal:t=>{let k=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,content:c,className:r="",type:s,size:i="R",freeCSS:o,onOpen:v,onClose:C,closeAtAroundClick:E,closeAtEscapeKeyDown:D,closeAtPageTransit:L,closeAtParentBlur:J,closeAtSwipeDown:Y,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:N}=k,M=G(k,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),T={},y=[];return s.match(/top/)?(y.push("top"),T.marginBottom="auto"):s.match(/middle/)?(y.push("center"),T.marginTop="auto",T.marginBottom="auto"):s.match(/bottom/)&&(y.push("bottom"),T.marginTop="auto"),s.match(/left/i)?(y.push("left"),T.marginRight="auto"):s.match(/center/i)?(y.push("center"),T.marginLeft="auto",T.marginRight="auto"):s.match(/right/i)&&(y.push("right"),T.marginLeft="auto"),h(R,b(m(m({className:[g("BB"),r].join(" "),padding:1,transition:"short",opacity:"trans"},M),T),{freeCSS:m({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[i],maxWidth:"96vw",transformOrigin:y.join(" ")},o),children:d.is.function(c)?h(c,{}):c}))},Edge:t=>{let M=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,type:c,content:r,className:s="",size:i="R",onOpen:o,onClose:v,closeAtAroundClick:C,closeAtEscapeKeyDown:E,closeAtPageTransit:D,closeAtParentBlur:L,closeAtSwipeDown:J,hold_state:Y,overwrap:q,isOpen:ee,backgroundEffect:te}=M,N=G(M,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]);return h(R,b(m(b(m({className:[g("BB"),s].join(" ")},c=="drawer.right"?{marginLeft:"auto"}:c=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"short",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),N),{freeCSS:m({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[i],maxWidth:"96vw"},N.freeCSS),children:d.is.function(r)?h(r,{}):r}))},Bottom:t=>{let j=t,{componentId:e,sheetID:u,sheetGroups:a,bodyScrolls:c,content:r,size:s="R",sizeChanged:i,baseStyles:o,onOpen:v,onClose:C,closeAtAroundClick:E,closeAtEscapeKeyDown:D,closeAtPageTransit:L,closeAtParentBlur:J,closeAtSwipeDown:Y=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:N}=j,M=G(j,["componentId","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),T=d.getScreenSize(),y=[0,.2,.6,.95],k={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[W,Q]=U(s),[I,_]=U({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:y[k[s]]});w.update({[e]:{val_edit:I,resize:S=>{let f=y[k[S]];_(p=>b(m({},p),{value:f})),Q(S)}}});const B={Start:S=>{d(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:B.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:B.End});let f=d.getCursor(S),p=b(m({},I),{process:!0,processStart:new Date().getTime(),originY:f.y,originValue:I.value,viewHeight:d.getScreenSize().height});w.update({[e]:{val_edit:p}}),_(p)},Move:S=>{var O;let f=(O=w.get(e))==null?void 0:O.val_edit;if(!f.process)return;let z=(d.getCursor(S).y-f.originY)/f.viewHeight,n=f.originValue-z;if(n>.95)n=.95+(n-.95)*.5;else if(n<.2){let P=.2-n;P-=.1,n=.1+(.1-P)*.5}return _(b(m({},f),{value:n})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var n;let f=(n=w.get(e))==null?void 0:n.val_edit;if(!f.process)return;d(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let p=0;if(f.value<.1||(f.value<.5?p=1:f.value>.75?p=3:p=2),new Date().getTime()-f.processStart<300){let O=d.getCursor(S).y-f.originY;if(Math.abs(O)>=20){let P=+(O<0)*2-1;p+=P,p=Math.min(Math.max(p,0),y.length-1)}}p==0&&(Y||(p=1)),Q(["ZERO","S","R","L"][p]),_(b(m({},f),{value:y[p],process:!1}))}},V=pe(!1);return H(()=>{V.current?W=="ZERO"?Y&&A.close(u):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(W)},250):V.current=!0},[W]),h(R,{className:g("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:m({maxWidth:12*60,height:T.height*I.value},I.process?{transition:"0s"}:{}),children:F(oe,b(m({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},o),{children:[F(ne.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[h(R,{ssSphere:2.5}),h(ne.Center,{onPointerDown:B.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:h(R,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:g("DragBar")})}),h(ie.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{A.close(u)},children:h(re.X,{})})]}),h(R,b(m({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},M),{children:d.is.function(r)?h(r,{}):r}))]}))})},Custom:t=>{let j=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,event:c,parent:r,nextToCursor:s,gravityPoint:i=22,content:o,closeAtAroundClick:v,closeAtEscapeKeyDown:C,closeAtPageTransit:E,closeAtParentBlur:D,closeAtSwipeDown:L,hold_state:J,onOpen:Y,onClose:q,overwrap:ee,isOpen:te,resize:N,backgroundEffect:M}=j,T=G(j,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect"]),[y]=U(Z()),k=d.is.element(r)||d.is.jmini(r)?d(r):K(r),W='[data-sheet-id="'+y+'"]',Q='[data-sheet-content="'+y+'"]';i=i;let I=i%5||5,_=Math.ceil(i/5);const B={Init:()=>{if(s&&c){let l=d.getScreenSize(),se=d.getCursor(c);return{top:se.y-l.pageYOffset,left:se.x-l.pageXOffset}}let S={};if(!k||!k[0])return S;let{top:f,right:p,bottom:z,left:n,height:O,width:P}=k.position();return[1,2].includes(I)?S.left=n:I==3?S.left=n+P/2:[4,5].includes(I)&&(S.left=p),i<=10?S.top=f:i<=15?S.top=f+O/2:i<=25&&(S.top=z),S},Adjust:()=>{let S=K(W).position(),f=K(Q).position(),p=k.position(),z=d.getScreenSize(),n={};for(let l in f)n[l]=f[l];if(d.scope(()=>{if(t.nextToCursor)return;let l=0;_==1?l=p.top-n.bottom:_==2?l=p.top-n.top:_==3?l=p.top-n.top+(p.height-n.height)/2:_==4?l=p.bottom-n.bottom:_==5&&(l=p.bottom-n.top),n.top+=l,n.bottom+=l}),d.scope(()=>{if(t.nextToCursor)return;let l=0;I==1?l=p.left-n.right:I==2?l=p.left-n.left:I==3?l=p.left-n.left+(p.width-n.width)/2:I==4?l=p.right-n.right:I==5&&(l=p.right-n.left),n.left+=l,n.right+=l}),n.top<0){let l=-n.top;n.top+=l,n.bottom+=l}if(n.bottom>z.height){let l=n.bottom-z.height;n.top-=l,n.bottom-=l}if(n.left<0){let l=-n.left;n.left+=l,n.right+=l}if(n.right>z.width){let l=n.right-z.width;n.left-=l,n.right-=l}let O=n.top-f.top,P=n.left-f.left;d(W).css({top:S.top+O+"px",left:S.left+P+"px"})}};let[V]=U(B.Init());return H(()=>{K(W).await(10).addClass(g("Open")).await(200).callback(()=>{(N==null||N)&&B.Adjust()}),w.update({["customSheet-"+t.sheetID]:{reposition:()=>{B.Adjust()}}})},[]),k[0]?h(R,{className:[g("BB"),g("CustomSheet")].join(" "),"data-sheet-id":y,transition:"long",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:V,children:h(ue,{position:"absolute",className:[g("GPT"),g("GPT_"+i),g("Col_"+I),g("Row_"+_)].join(" "),children:h(R,b(m({"data-sheet-content":y,flexSizing:"none",maxHeight:"viewHeight"},T),{freeCSS:m({maxWidth:"98vw"},T.freeCSS),children:d.is.function(o)?h(o,{}):o}))})}):null}}},A={Wrapper:()=>h($.Wrapper,{}),Element:t=>{let c=t,{isOpen:e,children:u}=c,a=G(c,["isOpen","children"]);return H(()=>{if(e){A.open(t.type,b(m({},a),{content:u}));return}a.sheetID&&A.close(a.sheetID)},[e]),h(ae,{})},image:(t,e)=>{let u=t.sheetID||Z(),r=t,{type:a}=r,c=G(r,["type"]);A.open(a||"topCenter",b(m({size:"MAX"},c),{sheetID:u,freeCSS:{maxWidth:"100vw"},content:()=>{let[s]=U(d.flatArray(e));return h(de,{children:F(oe,{children:[h(ne.Right,{children:F(ie.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{A.close(u)},children:[h(re.X,{})," \u9589\u3058\u308B"]})}),h(ce.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:s.map((i,o)=>h(he,{ssCardBox:!0,position:"relative",flexCenter:!0,src:i},o))})]})})}}))},open:(t,e,u)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let a=w.get("Sheet-"+X.get().sessionUID);a&&a.add(e,u)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=w.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=w.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,u){let a=x.getSessionStates();if(!a)return;let{val_sheets:c}=a;t=t==null?void 0:t.replace(/\./g,"-");let r=c.find(i=>i.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let s=w.get(r.sheetID);s&&s.close&&s.close(u)},closeGroup:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;t=(t||"").replace(/\./g,"-");for(let a of u)a.sheetGroups&&a.sheetGroups==t&&A.close(a.sheetID)},closeAll:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;for(let a of u)t&&!a.closeAtPageTransit||A.close(a.sheetID,"pageTransit",!0)},Body:t=>h(R,m({className:g("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{A as Sheet,A as default};
|
package/dist/fn/Tooltips.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ declare namespace Tooltips {
|
|
|
9
9
|
open(p: Input): void;
|
|
10
10
|
close(tipsID: string): void;
|
|
11
11
|
closeALL(): void;
|
|
12
|
+
noticeId: string;
|
|
13
|
+
notice(body: ReactElement, closeToSeconds?: number): void;
|
|
12
14
|
Body: React.FC<Box.DefaultInput>;
|
|
13
15
|
};
|
|
14
16
|
type Input = Sheet.CloseOptions & {
|
package/dist/fn/Tooltips.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as
|
|
1
|
+
import{b as i,d as p}from"../chunk-C5N2D3ZX.js";import{jsx as r,jsxs as h}from"react/jsx-runtime";import{useState as u,useEffect as m}from"react";import f,{UUID as c}from"jmini";import{Box as d,FAI as y}from"../atoms";import{Row as g}from"../mols";import{Button as I}from"./Button";import a from"./Sheet";const o={__memoryID:c(),open:e=>{let l=e,{tipsID:s=c(),tipsGroups:t=[]}=l,n=p(l,["tipsID","tipsGroups"]);a.open("custom",i({sheetID:s,sheetGroups:["tooltips",...t],closeAtAroundClick:!0,closeAtParentBlur:!0,closeAtEscapeKeyDown:!0,closeAtPageTransit:!0},n))},close:e=>{e&&a.close(e)},closeALL:()=>{a.closeGroup("tooltips")},noticeId:"notice_tips",notice:(e,s)=>{o.open({tipsID:o.noticeId,parent:document.body,gravityPoint:18,hold_state:!1,closeAtAroundClick:!1,closeAtParentBlur:!1,content:()=>{let[t,n]=u(s||4);return m(()=>{f.interval.once(()=>{t>0&&n(t-1),t==0&&o.close(o.noticeId)},1e3,"notice_countDown")},[t]),r(o.Body,{borderRadius:"3.tone.tertiary",borderBottomLeftRadius:0,borderBottomRightRadius:0,padding:"1/2",onMouseOver:()=>{n(-1)},onMouseLeave:()=>{n(8)},children:h(g.Separate,{children:[r(d,{padding:[0,"1/2"],freeCSS:{minWidth:"20vw",maxWidth:"60vw"},children:e}),r(I.Clear,{color:"white",ssSphere:2.5,onClick:()=>{o.close(o.noticeId)},children:r(y.X,{})})]})})}})},Body:e=>r(d,i({padding:"1/2",backgroundColor:"dark",borderRadius:"2.tone.secondary",fontColor:"white",boxShadow:"0.normal"},e))};export{o as Tooltips,o as default};
|
package/dist/fn/index.d.ts
CHANGED
package/dist/fn/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export*from"./RootViewController";export*from"./Plate";export*from"./PageViewController";export*from"./SwipeView";export*from"./TabBar";export*from"./Effect";export*from"./Button";export*from"./Input";export*from"./Table";export*from"./Sheet";export*from"./Snackbar";export*from"./Loader";export*from"./Tooltips";export*from"./Tips";export*from"./Cropper";export*from"./PageNotFound";
|
|
1
|
+
export*from"./RootViewController";export*from"./Plate";export*from"./PageViewController";export*from"./SwipeView";export*from"./TabBar";export*from"./Effect";export*from"./Button";export*from"./Input";export*from"./Table";export*from"./Sheet";export*from"./Snackbar";export*from"./Loader";export*from"./Tooltips";export*from"./Tips";export*from"./Cropper";export*from"./PageNotFound";
|
package/dist/index.d.ts
CHANGED
|
@@ -40,7 +40,6 @@ declare const amotify: {
|
|
|
40
40
|
Tips: fn.Tips.Methods;
|
|
41
41
|
Cropper: fn.Cropper.Methods;
|
|
42
42
|
PageNotFound: import("react").FC<fn.PageNotFound.Input>;
|
|
43
|
-
Noticetips: fn.Noticetips.Methods;
|
|
44
43
|
Accordion: mols.Accordion.Methods;
|
|
45
44
|
LinkifyText: import("react").FC<mols.LinkifyText.Input>;
|
|
46
45
|
List: import("react").FC<mols.List.Input>;
|
package/package.json
CHANGED
package/dist/fn/Noticetips.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ReactElement } from '../@declares';
|
|
2
|
-
declare namespace Noticetips {
|
|
3
|
-
type FN = (body: ReactElement, closeToSeconds?: number) => void;
|
|
4
|
-
type Methods = FN & {
|
|
5
|
-
close(): void;
|
|
6
|
-
};
|
|
7
|
-
}
|
|
8
|
-
declare const Noticetips: Noticetips.Methods;
|
|
9
|
-
export { Noticetips };
|
package/dist/fn/Noticetips.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"../chunk-C5N2D3ZX.js";import{jsx as e,jsxs as B}from"react/jsx-runtime";import p from"jmini";import{useState as a,useEffect as l}from"react";import{Box as d,FAI as m}from"../atoms";import{Row as u}from"../mols";import{Button as f}from"./Button";import o from"./Tooltips";const v=(n,c)=>{let i="notice_tips";o.open({tipsID:i,parent:document.body,gravityPoint:18,hold_state:!1,closeAtAroundClick:!1,closeAtParentBlur:!1,content:()=>{let[t,r]=a(c||4);return l(()=>{p.interval.once(()=>{t>0&&r(t-1),t==0&&o.close(i)},1e3,"notice_countDown")},[t]),e(o.Body,{borderRadius:"3.tone.tertiary",borderBottomLeftRadius:0,borderBottomRightRadius:0,padding:"1/2",onMouseOver:()=>{r(-1)},onMouseLeave:()=>{r(8)},children:B(u.Separate,{children:[e(d,{padding:[0,"1/2"],freeCSS:{minWidth:"20vw",maxWidth:"60vw"},children:n}),e(f.Clear,{color:"white",ssSphere:2.5,onClick:()=>{o.close(i)},children:e(m.X,{})})]})})}})},s=v;s.close=()=>o.close("notice_tips");export{s as Noticetips};
|
package/dist/fn/Sheet copy.d.ts
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import $$, { Time } from 'jmini';
|
|
2
|
-
import { StyleTags, ReactElement } from '../@declares';
|
|
3
|
-
import React from 'react';
|
|
4
|
-
import { Box } from '../atoms';
|
|
5
|
-
declare namespace Sheet {
|
|
6
|
-
type Methods = {
|
|
7
|
-
Wrapper(): JSX.Element;
|
|
8
|
-
Element<T extends keyof TypesInput>(p: Omit<TypesInput[T], 'content'> & {
|
|
9
|
-
type: T;
|
|
10
|
-
isOpen: boolean;
|
|
11
|
-
children: ReactElement;
|
|
12
|
-
}): JSX.Element;
|
|
13
|
-
image(params: Omit<UniInput, 'content'>, src: string | string[]): void;
|
|
14
|
-
open<T extends keyof TypesInput>(type: T, params: TypesInput[T], defaultOpen?: boolean | 'inherit'): void;
|
|
15
|
-
resize(p: {
|
|
16
|
-
sheetID: string;
|
|
17
|
-
size: Sizes;
|
|
18
|
-
}): void;
|
|
19
|
-
customSheet: {
|
|
20
|
-
reposition(sheetID: string): void;
|
|
21
|
-
};
|
|
22
|
-
close(key: string, eventType?: 'Escape' | 'pageTransit', force?: boolean): void;
|
|
23
|
-
closeGroup(keyGroup: string): void;
|
|
24
|
-
closeAll(pageTransit?: boolean): void;
|
|
25
|
-
Body: React.FC<Box.DefaultInput>;
|
|
26
|
-
};
|
|
27
|
-
type UniInput = {
|
|
28
|
-
type?: keyof TypesInput;
|
|
29
|
-
sheetID?: string;
|
|
30
|
-
size?: Sizes;
|
|
31
|
-
content: Content;
|
|
32
|
-
sheetGroups?: string | string[];
|
|
33
|
-
backgroundEffect?: boolean;
|
|
34
|
-
overwrap?: boolean;
|
|
35
|
-
hold_state?: boolean;
|
|
36
|
-
bodyScrolls?: number;
|
|
37
|
-
onOpen?(): void;
|
|
38
|
-
onClose?(): void;
|
|
39
|
-
} & StyleTags.BasicElement & CloseOptions;
|
|
40
|
-
type Input = UniInput & (Input.Custom | Input.Bottom);
|
|
41
|
-
type TypesInput = {
|
|
42
|
-
'topLeft': UniInput;
|
|
43
|
-
'topCenter': UniInput;
|
|
44
|
-
'topRight': UniInput;
|
|
45
|
-
'middleLeft': UniInput;
|
|
46
|
-
'middleCenter': UniInput;
|
|
47
|
-
'middleRight': UniInput;
|
|
48
|
-
'bottomLeft': UniInput;
|
|
49
|
-
'bottomCenter': UniInput;
|
|
50
|
-
'bottomRight': UniInput;
|
|
51
|
-
'drawer.left': UniInput;
|
|
52
|
-
'drawer.right': UniInput;
|
|
53
|
-
'drawer.bottom': Input.Bottom;
|
|
54
|
-
'custom': Input.Custom;
|
|
55
|
-
};
|
|
56
|
-
namespace Input {
|
|
57
|
-
type Custom = UniInput & {
|
|
58
|
-
resize?: boolean;
|
|
59
|
-
nextToCursor?: boolean;
|
|
60
|
-
gravityPoint?: number;
|
|
61
|
-
} & ({
|
|
62
|
-
event: any;
|
|
63
|
-
parent?: $$.Args;
|
|
64
|
-
} | {
|
|
65
|
-
event?: any;
|
|
66
|
-
parent: $$.Args;
|
|
67
|
-
});
|
|
68
|
-
type Bottom = UniInput & {
|
|
69
|
-
sizeChanged?(size: Sizes): void;
|
|
70
|
-
baseStyles?: StyleTags.States;
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
type Sizes = 'S' | 'R' | 'L' | '2L' | '3L' | 'MAX';
|
|
74
|
-
type Content = ReactElement | (() => JSX.Element);
|
|
75
|
-
type CloseOptions = {
|
|
76
|
-
closeAtPageTransit?: boolean;
|
|
77
|
-
closeAtEscapeKeyDown?: boolean;
|
|
78
|
-
closeAtAroundClick?: boolean;
|
|
79
|
-
closeAtParentBlur?: boolean;
|
|
80
|
-
closeAtSwipeDown?: boolean;
|
|
81
|
-
};
|
|
82
|
-
type Type = 'topLeft' | 'topCenter' | 'topRight' | 'middleLeft' | 'middleCenter' | 'middleRight' | 'bottomLeft' | 'bottomCenter' | 'bottomRight' | 'drawer.left' | 'drawer.right' | 'drawer.bottom' | 'custom';
|
|
83
|
-
type CoreProps = {
|
|
84
|
-
sheetID: string;
|
|
85
|
-
isOpen: boolean;
|
|
86
|
-
created_at: Time.Chains;
|
|
87
|
-
};
|
|
88
|
-
type SheetContent = CoreProps & Sheet.Input;
|
|
89
|
-
type WrapperStates = {
|
|
90
|
-
val_sheets: SheetContent[];
|
|
91
|
-
set_sheets: React.Dispatch<React.SetStateAction<SheetContent[]>>;
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
declare const Sheet: Sheet.Methods;
|
|
95
|
-
export { Sheet, Sheet as default };
|
package/dist/fn/Sheet copy.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as m,c as b,d as G}from"../chunk-C5N2D3ZX.js";import{Fragment as ae,jsx as h,jsxs as F}from"react/jsx-runtime";import d,{UUID as Z,Time as le,useStore as w}from"jmini";import{useState as U,useEffect as H,useRef as pe}from"react";import{$$fromRoot as K,Config as X}from"../@utils";import{Box as R,Flex as ue,Img as he,FAI as re,Column as oe,Grid as ce}from"../atoms";import{Row as ne}from"../mols";import{Button as ie}from"./Button";import{SheetClasses as g}from"../@styles/componentClasses";import de from"./Plate";const x={currentIndex:0,openQueue:{},getSessionStates:()=>{let t=w.get("sessionStates-"+X.get().sessionUID);return t||null},getNewSheetStates:t=>{var u;let e=b(m({sheetGroups:t.sheetGroups||[],backgroundEffect:!0,overwrap:t.type=="custom",hold_state:!1,closeAtPageTransit:!0,closeAtEscapeKeyDown:!0,closeAtAroundClick:t.type=="custom"},t),{sheetID:t.sheetID||Z(),isOpen:!0,created_at:le()});if(e.type=="custom"){let a=e;a.parent=a.parent||((u=a==null?void 0:a.event)==null?void 0:u.currentTarget),e=a}return e}},$={Wrapper:()=>{let[t,e]=U([]),u={val_sheets:t,set_sheets:e},a="sessionStates-"+X.get().sessionUID;return w.set({[a]:u}),H(()=>{let c="Sheet-"+X.get().sessionUID;w.set({[c]:{add:(r,s)=>{let i=w.get(c);if(!i)return;let o=x.getNewSheetStates(r);if(x.openQueue[o.sheetID])return;if(x.openQueue[o.sheetID]=!0,s!="inherit"&&(o.isOpen=s!=null?s:!0),!!i.find(o.sheetID)){e(C=>{let E=[...C],D=E.findIndex(L=>L.sheetID==o.sheetID);return D==-1||(E[D]=o),E}),delete x.openQueue[o.sheetID];return}e(C=>[o,...C])},find:r=>{let s=x.getSessionStates();if(!s)return null;let{val_sheets:i}=s;return i.find(o=>o.sheetID==r)}}}),d(X.get().appRoot).removeEvent(["SheetEvent.keyUp","SheetEvent.Click"]).addEvent({eventType:"keyup",eventID:"SheetEvent.keyUp",callback:function(r){let{key:s,metaKey:i}=r;if(s=="Escape"||s==","&&i){let o=x.getSessionStates();if(!o)return;let{val_sheets:v}=o,C=v.filter(D=>D.isOpen);if(!C.length)return;let E=C.reduce((D,L)=>D.created_at.value>L.created_at.value?D:L);A.close(E.sheetID,s)}}}).addEvent({eventType:"click",eventID:"SheetEvent.Click",callback:function(r){let s=x.getSessionStates();if(!s)return;let{val_sheets:i}=s,o=r.target;if(!o||o!=null&&o.closest("."+g("CustomSheet")))return;let v=i.filter(C=>C.type=="custom");v.length&&v.forEach(C=>{let{parent:E}=C;if(!C.closeAtAroundClick)return;let D=K(E)[0];E!==o&&D!==o&&(d(D).find(o).length||A.close(C.sheetID))})}})},[]),h(ae,{children:t.map(c=>h($.Core,b(m({},u),{val_sheet:c,patch_sheet:r=>{e(s=>{let i=[...s],o=i.findIndex(v=>v.sheetID==c.sheetID);return o==-1||(i[o]=m(m({},i[o]),r)),i})},delete_sheet:()=>{e(r=>{let s=[...r],i=s.findIndex(o=>o.sheetID==c.sheetID);return i==-1||s.splice(i,1),s})}}),c.sheetID))})},sheetCategory:t=>t=="custom"?"custom":t.startsWith("drawer")?"drawer":"normal",sheetPosition:t=>t=="drawer.left"?"left":t=="drawer.right"?"right":t=="drawer.bottom"?"bottom":"",Core:t=>{let{val_sheet:e,patch_sheet:u}=t,[a,c]=U(x.currentIndex+2),[r]=U(Z()),s=e.type!="custom"&&!e.overwrap;H(()=>{x.currentIndex++,d.scope(()=>{if(!e.closeAtParentBlur)return;let o=d(e.parent);o[0]&&o.addEvent({eventID:"SheetClosation-"+e.sheetID,eventType:"mouseout",callback:()=>{o.removeEvent("SheetClosation-"+e.sheetID),u({isOpen:!1})}})}),w.set({[e.sheetID]:{resize:o=>{if(e.type=="drawer.bottom"){let v=w.get(r);v&&v.resize&&v.resize(o)}else(e.type.includes("normal")||e.type.includes("drawer"))&&u({size:o})},close:o=>{u({isOpen:!1})},open:()=>{u({isOpen:!0})}}})},[]),H(()=>{d.scope(()=>{let o=K("#"+r);if(e.isOpen){e.hold_state&&c(x.currentIndex+1),o.await(10).removeClass(g("Hide")).await(10).addClass(g("Open")).callback(()=>{delete x.openQueue[e.sheetID],e.onOpen&&e.onOpen()});return}o.await(10).removeClass(g("Open")).await(251).addClass(g("Hide")).callback(()=>{if(e.onClose&&e.onClose(),s&&X.get().browserIs!="safari"&&d(X.get().appRoot).focus(),e.hold_state)return u({isOpen:!1});t.delete_sheet()})})},[e.isOpen]);let i=$.Types[{topLeft:"Normal",topCenter:"Normal",topRight:"Normal",middleLeft:"Normal",middleCenter:"Normal",middleRight:"Normal",bottomLeft:"Normal",bottomCenter:"Normal",bottomRight:"Normal","drawer.left":"Edge","drawer.right":"Edge","drawer.bottom":"Bottom",custom:"Custom"}[e.type]];return h(R,{className:["AMOTIFY_be",g("Wrap"),g("Tcate_"+$.sheetCategory(e.type)),g("Tpos_"+$.sheetPosition(e.type)),g("isMainSheet_"+s)].join(" "),width:1,ssAbsoluteCovered:!0,position:"fixed",freeCSS:{zIndex:a},id:r,children:F(oe,{className:g("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[!!s&&h(R,{className:g("TapSensor"),position:"sticky",top:0,height:0,width:1,flexSizing:"none",children:h(R,{backgroundColor:"trans",height:"viewHeight",position:"absolute",top:0,width:1,className:g("TapContent"),onClick:o=>{var C;((C=e.closeAtAroundClick)==null||C)&&A.close(e.sheetID)}})}),h(i,m({componentId:r},e))]})},r)},Types:{Normal:t=>{let k=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,content:c,className:r="",type:s,size:i="R",freeCSS:o,onOpen:v,onClose:C,closeAtAroundClick:E,closeAtEscapeKeyDown:D,closeAtPageTransit:L,closeAtParentBlur:J,closeAtSwipeDown:Y,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:N}=k,M=G(k,["sheetID","sheetGroups","bodyScrolls","content","className","type","size","freeCSS","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),T={},y=[];return s.match(/top/)?(y.push("top"),T.marginBottom="auto"):s.match(/middle/)?(y.push("center"),T.marginTop="auto",T.marginBottom="auto"):s.match(/bottom/)&&(y.push("bottom"),T.marginTop="auto"),s.match(/left/i)?(y.push("left"),T.marginRight="auto"):s.match(/center/i)?(y.push("center"),T.marginLeft="auto",T.marginRight="auto"):s.match(/right/i)&&(y.push("right"),T.marginLeft="auto"),h(R,b(m(m({className:[g("BB"),r].join(" "),padding:1,transition:"short",opacity:"trans"},M),T),{freeCSS:m({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100%"}[i],maxWidth:"96vw",transformOrigin:y.join(" ")},o),children:d.is.function(c)?h(c,{}):c}))},Edge:t=>{let M=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,type:c,content:r,className:s="",size:i="R",onOpen:o,onClose:v,closeAtAroundClick:C,closeAtEscapeKeyDown:E,closeAtPageTransit:D,closeAtParentBlur:L,closeAtSwipeDown:J,hold_state:Y,overwrap:q,isOpen:ee,backgroundEffect:te}=M,N=G(M,["sheetID","sheetGroups","bodyScrolls","type","content","className","size","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]);return h(R,b(m(b(m({className:[g("BB"),s].join(" ")},c=="drawer.right"?{marginLeft:"auto"}:c=="drawer.left"?{marginRight:"auto"}:{}),{opacity:"trans",transition:"short",position:"relative",backgroundColor:"layer.1",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark"}),N),{freeCSS:m({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[i],maxWidth:"96vw"},N.freeCSS),children:d.is.function(r)?h(r,{}):r}))},Bottom:t=>{let j=t,{componentId:e,sheetID:u,sheetGroups:a,bodyScrolls:c,content:r,size:s="R",sizeChanged:i,baseStyles:o,onOpen:v,onClose:C,closeAtAroundClick:E,closeAtEscapeKeyDown:D,closeAtPageTransit:L,closeAtParentBlur:J,closeAtSwipeDown:Y=!0,hold_state:q,overwrap:ee,isOpen:te,backgroundEffect:N}=j,M=G(j,["componentId","sheetID","sheetGroups","bodyScrolls","content","size","sizeChanged","baseStyles","onOpen","onClose","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","overwrap","isOpen","backgroundEffect"]),T=d.getScreenSize(),y=[0,.2,.6,.95],k={ZERO:0,S:1,R:2,L:3,"2L":3,"3L":3,MAX:3},[W,Q]=U(s),[I,_]=U({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:y[k[s]]});w.update({[e]:{val_edit:I,resize:S=>{let f=y[k[S]];_(p=>b(m({},p),{value:f})),Q(S)}}});const B={Start:S=>{d(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:B.Move,options:{passive:!1}}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:B.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:B.End});let f=d.getCursor(S),p=b(m({},I),{process:!0,processStart:new Date().getTime(),originY:f.y,originValue:I.value,viewHeight:d.getScreenSize().height});w.update({[e]:{val_edit:p}}),_(p)},Move:S=>{var O;let f=(O=w.get(e))==null?void 0:O.val_edit;if(!f.process)return;let z=(d.getCursor(S).y-f.originY)/f.viewHeight,n=f.originValue-z;if(n>.95)n=.95+(n-.95)*.5;else if(n<.2){let P=.2-n;P-=.1,n=.1+(.1-P)*.5}return _(b(m({},f),{value:n})),S.preventDefault(),S.stopPropagation(),!1},End:S=>{var n;let f=(n=w.get(e))==null?void 0:n.val_edit;if(!f.process)return;d(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let p=0;if(f.value<.1||(f.value<.5?p=1:f.value>.75?p=3:p=2),new Date().getTime()-f.processStart<300){let O=d.getCursor(S).y-f.originY;if(Math.abs(O)>=20){let P=+(O<0)*2-1;p+=P,p=Math.min(Math.max(p,0),y.length-1)}}p==0&&(Y||(p=1)),Q(["ZERO","S","R","L"][p]),_(b(m({},f),{value:y[p],process:!1}))}},V=pe(!1);return H(()=>{V.current?W=="ZERO"?Y&&A.close(u):setTimeout(()=>{t.sizeChanged&&t.sizeChanged(W)},250):V.current=!0},[W]),h(R,{className:g("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"short",freeCSS:m({maxWidth:12*60,height:T.height*I.value},I.process?{transition:"0s"}:{}),children:F(oe,b(m({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},o),{children:[F(ne.Separate,{padding:1,backgroundColor:"layer.1",position:"relative",freeCSS:{userSelect:"none"},children:[h(R,{ssSphere:2.5}),h(ne.Center,{onPointerDown:B.Start,flexSizing:0,padding:"2/3",ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:h(R,{unitWidth:6,unitHeight:"1/2",backgroundColor:"layer.4",isRounded:!0,className:g("DragBar")})}),h(ie.Sub,{color:"cloud",ssSphere:2.5,onClick:()=>{A.close(u)},children:h(re.X,{})})]}),h(R,b(m({backgroundColor:"layer.1",flexSizing:0,overflow:"auto"},M),{children:d.is.function(r)?h(r,{}):r}))]}))})},Custom:t=>{let j=t,{sheetID:e,sheetGroups:u,bodyScrolls:a,event:c,parent:r,nextToCursor:s,gravityPoint:i=22,content:o,closeAtAroundClick:v,closeAtEscapeKeyDown:C,closeAtPageTransit:E,closeAtParentBlur:D,closeAtSwipeDown:L,hold_state:J,onOpen:Y,onClose:q,overwrap:ee,isOpen:te,resize:N,backgroundEffect:M}=j,T=G(j,["sheetID","sheetGroups","bodyScrolls","event","parent","nextToCursor","gravityPoint","content","closeAtAroundClick","closeAtEscapeKeyDown","closeAtPageTransit","closeAtParentBlur","closeAtSwipeDown","hold_state","onOpen","onClose","overwrap","isOpen","resize","backgroundEffect"]),[y]=U(Z()),k=d.is.element(r)||d.is.jmini(r)?d(r):K(r),W='[data-sheet-id="'+y+'"]',Q='[data-sheet-content="'+y+'"]';i=i;let I=i%5||5,_=Math.ceil(i/5);const B={Init:()=>{if(s&&c){let l=d.getScreenSize(),se=d.getCursor(c);return{top:se.y-l.pageYOffset,left:se.x-l.pageXOffset}}let S={};if(!k||!k[0])return S;let{top:f,right:p,bottom:z,left:n,height:O,width:P}=k.position();return[1,2].includes(I)?S.left=n:I==3?S.left=n+P/2:[4,5].includes(I)&&(S.left=p),i<=10?S.top=f:i<=15?S.top=f+O/2:i<=25&&(S.top=z),S},Adjust:()=>{let S=K(W).position(),f=K(Q).position(),p=k.position(),z=d.getScreenSize(),n={};for(let l in f)n[l]=f[l];if(d.scope(()=>{if(t.nextToCursor)return;let l=0;_==1?l=p.top-n.bottom:_==2?l=p.top-n.top:_==3?l=p.top-n.top+(p.height-n.height)/2:_==4?l=p.bottom-n.bottom:_==5&&(l=p.bottom-n.top),n.top+=l,n.bottom+=l}),d.scope(()=>{if(t.nextToCursor)return;let l=0;I==1?l=p.left-n.right:I==2?l=p.left-n.left:I==3?l=p.left-n.left+(p.width-n.width)/2:I==4?l=p.right-n.right:I==5&&(l=p.right-n.left),n.left+=l,n.right+=l}),n.top<0){let l=-n.top;n.top+=l,n.bottom+=l}if(n.bottom>z.height){let l=n.bottom-z.height;n.top-=l,n.bottom-=l}if(n.left<0){let l=-n.left;n.left+=l,n.right+=l}if(n.right>z.width){let l=n.right-z.width;n.left-=l,n.right-=l}let O=n.top-f.top,P=n.left-f.left;d(W).css({top:S.top+O+"px",left:S.left+P+"px"})}};let[V]=U(B.Init());return H(()=>{K(W).await(10).addClass(g("Open")).await(200).callback(()=>{(N==null||N)&&B.Adjust()}),w.update({["customSheet-"+t.sheetID]:{reposition:()=>{B.Adjust()}}})},[]),k[0]?h(R,{className:[g("BB"),g("CustomSheet")].join(" "),"data-sheet-id":y,transition:"short",position:"absolute",width:0,height:0,opacity:"trans",flexCenter:!0,freeCSS:V,children:h(ue,{position:"absolute",className:[g("GPT"),g("GPT_"+i),g("Col_"+I),g("Row_"+_)].join(" "),children:h(R,b(m({"data-sheet-content":y,flexSizing:"none",maxHeight:"viewHeight"},T),{freeCSS:m({maxWidth:"98vw"},T.freeCSS),children:d.is.function(o)?h(o,{}):o}))})}):null}}},A={Wrapper:()=>h($.Wrapper,{}),Element:t=>{let c=t,{isOpen:e,children:u}=c,a=G(c,["isOpen","children"]);return H(()=>{if(e){A.open(t.type,b(m({},a),{content:u}));return}a.sheetID&&A.close(a.sheetID)},[e]),h(ae,{})},image:(t,e)=>{let u=t.sheetID||Z(),r=t,{type:a}=r,c=G(r,["type"]);A.open(a||"topCenter",b(m({size:"MAX"},c),{sheetID:u,freeCSS:{maxWidth:"100vw"},content:()=>{let[s]=U(d.flatArray(e));return h(de,{children:F(oe,{children:[h(ne.Right,{children:F(ie.Sub.S,{color:"cloud",isRounded:!0,onClick:()=>{A.close(u)},children:[h(re.X,{})," \u9589\u3058\u308B"]})}),h(ce.Layout,{gap:1,gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,auto)",gridChildTemplates:[["span 3",0],["span 2","span 2"],[0,0],[0,0],[0,"span 2"],["span 2",0],[0,0],[0,0]],children:s.map((i,o)=>h(he,{ssCardBox:!0,position:"relative",flexCenter:!0,src:i},o))})]})})}}))},open:(t,e,u)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=t;let a=w.get("Sheet-"+X.get().sessionUID);a&&a.add(e,u)},resize:t=>{t.sheetID=(t.sheetID||"").replace(/\./g,"-");let e=w.get(t.sheetID);e&&e.resize&&e.resize(t.size)},customSheet:{reposition:t=>{let e=w.get("customSheet-"+t);e&&e.reposition&&e.reposition()}},close:function(t,e,u){let a=x.getSessionStates();if(!a)return;let{val_sheets:c}=a;t=t==null?void 0:t.replace(/\./g,"-");let r=c.find(i=>i.sheetID==t);if(!r||e=="Escape"&&!r.closeAtEscapeKeyDown)return;let s=w.get(r.sheetID);s&&s.close&&s.close(u)},closeGroup:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;t=(t||"").replace(/\./g,"-");for(let a of u)a.sheetGroups&&a.sheetGroups==t&&A.close(a.sheetID)},closeAll:t=>{let e=x.getSessionStates();if(!e)return;let{val_sheets:u}=e;for(let a of u)t&&!a.closeAtPageTransit||A.close(a.sheetID,"pageTransit",!0)},Body:t=>h(R,m({className:g("BaseBody"),backgroundColor:"layer.1",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},t))};export{A as Sheet,A as default};
|