amotify 0.1.31 → 0.1.32

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.
Files changed (95) hide show
  1. package/dist/@declaration/_.js +1 -1
  2. package/dist/@styles/componentClasses/_.css +68 -65
  3. package/dist/@styles/componentClasses/_.js +39 -39
  4. package/dist/@styles/index.css +68 -65
  5. package/dist/@styles/index.js +39 -39
  6. package/dist/@styles/init.css +1 -1
  7. package/dist/@styles/style.css +68 -65
  8. package/dist/@styles/style.js +39 -39
  9. package/dist/@styles/var.css +1 -1
  10. package/dist/@utils/GenerateClassName.js +470 -1
  11. package/dist/@utils/LaunchReactApp.js +78 -1
  12. package/dist/@utils/_.js +12 -1
  13. package/dist/@utils/collectForm.js +96 -1
  14. package/dist/@utils/color.js +103 -1
  15. package/dist/@utils/config.js +101 -1
  16. package/dist/@utils/fin.js +39 -1
  17. package/dist/@utils/getElement.js +13 -1
  18. package/dist/@utils/jsminEx.js +172 -1
  19. package/dist/@utils/pageTransit.js +33 -1
  20. package/dist/@utils/useRecycle.js +44 -1
  21. package/dist/@utils/useStore.js +54 -1
  22. package/dist/atoms/Box.js +20 -1
  23. package/dist/atoms/FAI.js +148 -1
  24. package/dist/atoms/Flex.js +34 -1
  25. package/dist/atoms/Grid.js +17 -1
  26. package/dist/atoms/Img.js +65 -1
  27. package/dist/atoms/Logo.js +359 -51
  28. package/dist/atoms/P.js +20 -1
  29. package/dist/atoms/Placeholder.js +44 -1
  30. package/dist/atoms/Span.js +20 -1
  31. package/dist/atoms/_.js +9 -1
  32. package/dist/chunk-JJ3PEWPN.js +60 -0
  33. package/dist/fn/Button.js +316 -1
  34. package/dist/fn/Cropper.js +1009 -1
  35. package/dist/fn/Effect/Fade.js +88 -1
  36. package/dist/fn/Effect/Pudding.js +22 -1
  37. package/dist/fn/Effect/Ripple.js +117 -3
  38. package/dist/fn/Effect/_.js +14 -1
  39. package/dist/fn/Input/AutoHeightText.js +112 -1
  40. package/dist/fn/Input/Checker.js +36 -1
  41. package/dist/fn/Input/Chips/Selector.js +472 -1
  42. package/dist/fn/Input/Chips/_.js +349 -1
  43. package/dist/fn/Input/Contenteditable.js +160 -1
  44. package/dist/fn/Input/DigitCharacters.js +275 -1
  45. package/dist/fn/Input/Filer.js +619 -1
  46. package/dist/fn/Input/Hidden.js +48 -1
  47. package/dist/fn/Input/List.js +450 -1
  48. package/dist/fn/Input/Parts.js +121 -1
  49. package/dist/fn/Input/Plain.js +12 -1
  50. package/dist/fn/Input/RichSelect.js +279 -1
  51. package/dist/fn/Input/Search.js +53 -1
  52. package/dist/fn/Input/Segmented.js +245 -1
  53. package/dist/fn/Input/Select.js +278 -1
  54. package/dist/fn/Input/Slider.js +538 -1
  55. package/dist/fn/Input/Switch.js +221 -1
  56. package/dist/fn/Input/Text.js +626 -1
  57. package/dist/fn/Input/TextArea.js +151 -1
  58. package/dist/fn/Input/Time/Picker.js +1457 -1
  59. package/dist/fn/Input/Time/_.js +867 -1
  60. package/dist/fn/Input/_.js +48 -1
  61. package/dist/fn/Input/core.js +626 -1
  62. package/dist/fn/Layout/PageNotFound.js +90 -1
  63. package/dist/fn/Layout/PageRouter.js +87 -1
  64. package/dist/fn/Layout/PageViewController.js +29 -1
  65. package/dist/fn/Layout/Plate.js +37 -1
  66. package/dist/fn/Layout/RootViewController.js +315 -1
  67. package/dist/fn/Layout/SwipeView.js +348 -1
  68. package/dist/fn/Layout/TabBar.js +72 -1
  69. package/dist/fn/Layout/_.js +22 -1
  70. package/dist/fn/Loader/_.js +104 -1
  71. package/dist/fn/Loader/corner.js +85 -1
  72. package/dist/fn/Loader/mini.js +125 -1
  73. package/dist/fn/Loader/top.js +73 -1
  74. package/dist/fn/Sheet.js +1101 -1
  75. package/dist/fn/Snackbar.js +216 -1
  76. package/dist/fn/Table/Data.js +974 -1
  77. package/dist/fn/Table/Drag.js +435 -1
  78. package/dist/fn/Table/Normal.js +136 -1
  79. package/dist/fn/Table/Parts.js +41 -1
  80. package/dist/fn/Table/Wrapper.js +60 -1
  81. package/dist/fn/Table/_.js +16 -1
  82. package/dist/fn/Table/cellStyling.js +51 -1
  83. package/dist/fn/Tooltips.js +58 -1
  84. package/dist/fn/_.js +10 -1
  85. package/dist/index.js +20 -1
  86. package/dist/mols/Accordion.js +152 -1
  87. package/dist/mols/Column.js +16 -1
  88. package/dist/mols/LinkifyText.js +42 -1
  89. package/dist/mols/List.js +42 -1
  90. package/dist/mols/Row.js +47 -1
  91. package/dist/mols/Text.js +67 -1
  92. package/dist/mols/_.js +6 -1
  93. package/dist/temps/_.js +1 -1
  94. package/dist/temps/designBook.js +3639 -20
  95. package/package.json +1 -1
package/dist/fn/Sheet.js CHANGED
@@ -1 +1,1101 @@
1
- import{b as h,c as I,d as M}from"../chunk-VY3566IV.js";import{jsx as i,jsxs as j}from"react/jsx-runtime";import{useState as z,useEffect as W,useRef as Z}from"react";import{$$ as a,$$fromRoot as P,Config as U,useStore as T}from"../@utils/_";import R from"../atoms/Box";import $ from"../atoms/Img";import X from"../atoms/FAI";import J from"../atoms/Flex";import G from"../mols/Column";import Y from"../mols/Row";import V from"./Button";import Q from"./Layout/_";import q from"./Input/_";import{SheetClasses as c}from"../@styles/componentClasses/_";const d={mainSheetScrolls:0,subSheetLength:0,currentIndex:0,contents:{},addNewSheet:function(e){if(e=I(h({sheetGroups:e.sheetGroups||[],backgroundEffect:!0,overwrap:e.type=="custom",hold_state:!1},e),{sheetID:e.sheetID||a.uuid.gen(),close_option:h({pageTransit:!0,escapeKeyDown:!0,aroundClick:e.type=="custom"},e.close_option)}),this.contents[e.sheetID]){let s=T.get(e.sheetID);s&&s.refresh&&s.refresh(e,!0);return}this.contents[e.sheetID]={isOpen:!0,hold_state:!!e.hold_state,params:e,created_at:a.Time()};let t=T.get("Sheet-"+U.get().sessionUID);t&&t.refresh()},Wrapper:()=>{let[e,t]=z(a.uuid.gen());W(()=>{T.set({key:"Sheet-"+U.get().sessionUID,value:{refresh:()=>{t(a.uuid.gen())}}}),a(U.get().appRoot).addEvent({eventType:"keyup",callback:function(r){let{key:o,metaKey:f}=r;if(o=="Escape"||o==","&&f){let v=Object.values(d.contents).filter(S=>S.isOpen);if(!v.length)return;let n=v.reduce((S,w)=>S.created_at.value>w.created_at.value?S:w);x.close(n.params.sheetID,o)}}}).addEvent({eventType:"click",callback:function(r){var v;let o=Object.values(d.contents).filter(n=>n.params.type=="custom");!o.length||o.find(n=>{let{params:S}=n,w=S.parent,_=r.target,g=P(w)[0];return!!(w==_||g===_||a(g).find(_).length)})||(v=r.target)!=null&&v.closest("."+c("CustomSheet"))||o.forEach(n=>{var S;(S=n.params.close_option)!=null&&S.aroundClick&&x.close(n.params.sheetID)})}})},[]);let s=Object.entries(d.contents).map(([r,o])=>i(R,{id:"Sheet-"+r,children:i(d.Core,h({isOpen:o.isOpen},o.params),r)},r));return i(R,{className:["AMOTIFY_be",c("Wrapper")].join(" "),children:s})},Core:e=>{var y;let[t]=z(a.uuid.gen()),[s,r]=z(e),[o,f]=z(!0),{type:v,sheetID:n,openAfter:S,closeAfter:w}=s,_=!e.overwrap,g=d.Types[{"normal.topLeft":"Normal","normal.topCenter":"Normal","normal.topRight":"Normal","normal.middleLeft":"Normal","normal.middleCenter":"Normal","normal.middleRight":"Normal","normal.bottomLeft":"Normal","normal.bottomCenter":"Normal","normal.bottomRight":"Normal",image:"Normal","drawer.left":"Edge","drawer.right":"Edge","drawer.bottom":"Bottom",custom:"Custom"}[v]];W(()=>{T.set({key:n,value:{refresh:(p,m)=>{r(p),f(m!=null?m:!1)},resize:p=>{if(v=="drawer.bottom"){let m=T.get(t);m&&m.resize&&m.resize(p)}else(s.type.includes("normal")||s.type.includes("drawer"))&&r(I(h({},s),{size:p}))},close:p=>{d.contents[n].isOpen=!1,f(!1)},open:()=>{d.contents[n].isOpen=!0,f(!0)}}})}),W(()=>{a.scope(()=>{if(_&&e.backgroundEffect){if(d.subSheetLength=d.subSheetLength+(o?1:-1),o){let p=a("html");if(d.subSheetLength==1){let m=p[0].scrollTop;d.mainSheetScrolls=m}U.get().isPhone||(p.callback(()=>{P(".AMOTIFY_be_root").addClass(c("FixScroll")).callback(m=>{m[0].scrollTop=d.mainSheetScrolls}).await(40).addClass(c("Float"))})[0].scrollTop=0);return}d.subSheetLength==0&&(U.get().isPhone||P(".AMOTIFY_be_root").removeClass(c("Float")).await(251).removeClass(c("FixScroll")).callback(()=>{a("html")[0].scrollTop=d.mainSheetScrolls|0,P(".AMOTIFY_be_root")[0].scrollTop=0}))}}),a.scope(()=>{let p=P("#"+t);if(o){p.await(10).removeClass(c("Hide")).await(10).addClass(c("Open")).callback(()=>{d.contents[n].isOpen=!0,S&&S()});return}p.await(10).removeClass(c("Open")).await(251).addClass(c("Hide")).callback(()=>{if(!w||w(),d.contents[n].isOpen=!1,e.hold_state)return;delete d.contents[n];let m=T.get("Sheet-"+U.get().sessionUID);m&&m.refresh()})})},[o]),W(()=>{d.currentIndex++;let{close_option:p}=e;a.scope(()=>{if(!(p!=null&&p.parentBlur))return;let m=a(s.parent);m[0]&&m.addEvent({eventID:"SheetClosation-"+n,eventType:"mouseout",callback:()=>{m.removeEvent("SheetClosation-"+n),f(!1)}})})},[]);let[B,C]=v.split(".");return i(R,{className:[c("Wrap"),c("Tcate_"+B),c("Tpos_"+C),c("isNewSheet_"+_)].join(" "),width:1,height:0,ssAbsoluteCovered:!0,freeCSS:{zIndex:d.currentIndex+1},id:t,children:j(G,{className:c("Content"),gap:0,height:"viewHeight",overflow:"auto",transition:"middle",children:[_?i(d.TapSensor,{sheetID:n,delegateAroundClick:(y=e.close_option)==null?void 0:y.aroundClick}):null,i(g,h({componentID:t},s))]})},t)},Types:{Normal:e=>{let m=e,{sheetID:t,sheetGroups:s,content:r,className:o="",type:f,size:v="R",freeCSS:n,openAfter:S,hold_state:w,overwrap:_}=m,g=M(m,["sheetID","sheetGroups","content","className","type","size","freeCSS","openAfter","hold_state","overwrap"]),[B,C]=f.split("."),y={},p=[];return C.match(/top/)?(p.push("top"),y.marginBottom="auto"):C.match(/middle/)?(p.push("center"),y.marginTop="auto",y.marginBottom="auto"):C.match(/bottom/)&&(p.push("bottom"),y.marginTop="auto"),C.match(/left/i)?(p.push("left"),y.marginRight="auto"):C.match(/center/i)?(p.push("center"),y.marginLeft="auto",y.marginRight="auto"):C.match(/right/i)&&(p.push("right"),y.marginLeft="auto"),i(R,I(h(h({className:[c("BB"),o].join(" "),padding:1,transition:"long",opacity:"trans"},y),g),{freeCSS:h({width:{S:"26rem",R:"36rem",L:"44rem","2L":"60rem","3L":"72rem",MAX:"100vw"}[v],maxWidth:"96vw",transformOrigin:p.join(" ")},n),children:a.is.function(r)?i(r,{}):r}))},Edge:e=>{let B=e,{sheetID:t,sheetGroups:s,type:r,content:o,className:f="",size:v="R",freeCSS:n,close_option:S,hold_state:w,overwrap:_}=B,g=M(B,["sheetID","sheetGroups","type","content","className","size","freeCSS","close_option","hold_state","overwrap"]);return i(R,I(h(h({opacity:"trans",transition:"long",position:"relative",backgroundColor:"1.layer.base",flexSizing:"none",minHeight:"viewHeight",boxShadow:"3.remark",className:[c("BB"),f].join(" ")},r=="drawer.right"?{marginLeft:"auto"}:r=="drawer.left"?{marginRight:"auto"}:{}),g),{freeCSS:h({width:{S:"20rem",R:"27rem",L:"32rem","2L":"40rem","3L":"58rem",MAX:"100vw"}[v],maxWidth:"96vw"},n),children:a.is.function(o)?i(o,{}):o}))},Bottom:e=>{let H=e,{componentID:t,sheetID:s,sheetGroups:r,content:o,size:f="R",sizeChanged:v,baseStyles:n,close_option:{swipeDown:S=!0}={},hold_state:w,overwrap:_}=H,g=M(H,["componentID","sheetID","sheetGroups","content","size","sizeChanged","baseStyles","close_option","hold_state","overwrap"]),B=a.getScreenSize(),C=[0,.2,.6,.95],y={ZERO:0,S:1,R:2,L:3},[p,m]=z(f),[N,A]=z({process:!1,processStart:0,originY:0,originValue:0,viewHeight:0,value:C[y[f]]});T.update({key:t,value:{val_edit:N,resize:k=>{let l=C[y[k]];A(I(h({},N),{value:l})),m(k)}}});const D={Start:k=>{a(document).addEvent({eventID:"BottomSheetMouseMove",eventType:"mousemove",callback:D.Move}).addEvent({eventID:"BottomSheetTouchMove",eventType:"touchmove",callback:D.Move}).addEvent({eventID:"BottomSheetMouseUp",eventType:"mouseup",callback:D.End}).addEvent({eventID:"BottomSheetTouchEnd",eventType:"touchend",callback:D.End});let l=a.getCursor(k),u=I(h({},N),{process:!0,processStart:new Date().getTime(),originY:l.y,originValue:N.value,viewHeight:a.getScreenSize().height});T.update({key:t,value:{val_edit:u}}),A(u)},Move:k=>{var O;let l=(O=T.get(t))==null?void 0:O.val_edit;if(!l.process)return;let E=(a.getCursor(k).y-l.originY)/l.viewHeight,b=l.originValue-E;if(b>.95)b=.95+(b-.95)*.5;else if(b<.2){let L=.2-b;L-=.1,b=.1+(.1-L)*.5}A(I(h({},l),{value:b}))},End:k=>{var b;let l=(b=T.get(t))==null?void 0:b.val_edit;if(!l.process)return;a(document).removeEvent(["BottomSheetMouseMove","BottomSheetTouchMove","BottomSheetMouseUp","BottomSheetTouchEnd"]);let u=0;if(l.value<.1||(l.value<.5?u=1:l.value>.75?u=3:u=2),new Date().getTime()-l.processStart<300){let O=a.getCursor(k).y-l.originY;if(Math.abs(O)>=20){let L=+(O<0)*2-1;u+=L,u=Math.min(Math.max(u,0),C.length-1)}}u==0&&(S||(u=1)),m(["ZERO","S","R","L"][u]),A(I(h({},l),{value:C[u],process:!1}))}},F=Z(!1);return W(()=>{F.current?p=="ZERO"?S&&x.close(s):setTimeout(()=>{e.sizeChanged&&e.sizeChanged(p)},250):F.current=!0},[p]),i(R,{className:c("BB"),margin:[0,"auto"],marginTop:"auto",opacity:"trans",width:1,transition:"long",freeCSS:h({maxWidth:12*60,height:B.height*N.value},N.process?{transition:"0s"}:{}),children:j(G,I(h({gap:0,flexSizing:"none",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",border:!0,borderBottom:"unset",boxShadow:"3.remark",position:"relative",overflow:"hidden",height:1},n),{children:[j(Y.Separate,{padding:"1/2",backgroundColor:"1.layer.base",position:"relative",freeCSS:{userSelect:"none"},children:[i(Y.Center,{flexSizing:0,padding:"2/3",onMouseDown:D.Start,onTouchStart:D.Start,ssPushable:!0,isRounded:!0,freeCSS:{cursor:"grab",userSelect:"none"},children:i(R,{unitWidth:6,unitHeight:"1/2",backgroundColor:"5.layer.darker",isRounded:!0,className:c("DragBar")})}),i(V.Button.Sub.R,{color:"cloud",ssSphere:2,onClick:()=>{x.close(s)},children:i(X.Times,{})})]}),i(R,I(h({backgroundColor:"1.layer.base",flexSizing:0,overflow:"auto"},g),{children:a.is.function(o)?i(o,{}):o}))]}))})},Custom:e=>{let k=e,{sheetID:t,sheetGroups:s,parent:r,gravityPoint:o=22,content:f,close_option:v,hold_state:n,overwrap:S,openAfter:w,closeAfter:_}=k,g=M(k,["sheetID","sheetGroups","parent","gravityPoint","content","close_option","hold_state","overwrap","openAfter","closeAfter"]),[B]=z(a.uuid.gen()),C=a.is.element(r)?a(r):a.is.jsmin(r)?r:P(r),y='[data-sheet-id="'+B+'"]',p='[data-sheet-content="'+B+'"]';o=o;let m=o%5||5,N=Math.ceil(o/5);const A=()=>{let l={},{top:u,right:E,bottom:b,left:O,height:L,width:K}=C.position();return[1,2].includes(m)?l.left=O:m==3?l.left=O+K/2:[4,5].includes(m)&&(l.left=E),o<=10?l.top=u:o<=15?l.top=u+L/2:o<=25&&(l.top=b),l};let[D,F]=z(A());const H=()=>{let l=P(y).position(),u=P(p).position(),E=a.getScreenSize(),b=h({},D);return u.top<0&&(b.top=l.top-u.top),u.left<0&&(b.left=l.left-u.left),u.right>E.width&&(b.left=l.left-(u.right-E.width)),u.bottom>E.height&&(b.top=l.top-(u.bottom-E.height)),b};return W(()=>{P(y).await(10).addClass(c("Open")).await(250).callback(()=>{F(H())}),T.update({key:"customSheet-"+e.sheetID,value:{reposition:()=>{setTimeout(()=>{F(H())},200)}}})},[]),C[0]?i(R,{className:[c("BB"),c("CustomSheet")].join(" "),"data-sheet-id":B,transition:"long",opacity:"trans",position:"absolute",width:0,height:0,flexCenter:!0,freeCSS:D,children:i(J,{className:[c("GPT"),c("GPT_"+o),c("Col_"+m),c("Row_"+N)].join(" "),position:"absolute",children:i(R,I(h({flexSizing:"none","data-sheet-content":B,maxHeight:"viewHeight",overflow:"auto",padding:1},g),{freeCSS:h({maxWidth:"98vw"},g.freeCSS),children:a.is.function(f)?i(f,{}):f}))})}):null}},TapSensor:e=>i(V.Button.Plain,{className:c("TapSensor"),onClick:()=>{var t;(t=e.delegateAroundClick)!=null&&t&&x.close(e.sheetID)},freeCSS:{cursor:"default"},children:i(R,{className:c("TapContent")})})},x={Wrapper:()=>i(d.Wrapper,{}),open:e=>{if(e.sheetID=(e.sheetID||"").replace(/\./g,"-"),e.type=="image"){let s=e.sheetID||a.uuid.gen(),t=e,{type:r,src:o}=t,f=M(t,["type","src"]);x.open(I(h({type:"normal.topCenter",backgroundColor:"trans"},f),{sheetID:s,freeCSS:{maxWidth:"96vw",transformOrigin:"top"},content:()=>{let[v]=z(a.flatArray(o)),[n,S]=z(0),w=[],_=[];return v.forEach((g,B)=>{w.push({value:B,label:i($,{src:a.flatArray(g)[0],width:"auto",height:1,freeCSS:{maxWidth:12*6,maxHeight:12*3}})}),_.push(i($,{width:1,height:"auto",src:a.flatArray(g)[0]}))}),j(G,{gap:0,children:[j(Y.Separate,{gap:2,padding:1,backgroundColor:"1.layer.base",borderTopLeftRadius:"1.tone.primary",borderTopRightRadius:"1.tone.primary",children:[i(q.Radio,{tone:"border",icon:!1,value:n,override:"force",horizontalAlign:"center",onUpdateValidValue:({value:g})=>{S(g[0])},cellStyles:{borderWidth:2,padding:"1/3"},options:w}),j(V.Button.Border.R,{color:"cloud",isRounded:!0,onClick:()=>{x.close(s)},children:["\u9589\u3058\u308B ",i(X.Times,{})]})]}),i(Q.SwipeView,{slideIndex:n,options:{loop:v.length>1,onSlideCallback:g=>{S(g)}},slides:_,wrapper:g=>i(R,{borderBottomLeftRadius:"1.tone.primary",borderBottomRightRadius:"1.tone.primary",children:g})})]})}}));return}d.addNewSheet(e)},refresh:(e,t)=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-");let s=T.get(e.sheetID);s&&s.refresh&&s.refresh(e,t)},resize:e=>{e.sheetID=(e.sheetID||"").replace(/\./g,"-");let t=T.get(e.sheetID);t&&t.resize&&t.resize(e.size)},reposition:e=>{let t=T.get("customSheet-"+e);t&&t.reposition&&t.reposition()},close:function(e,t,s){var o;e=e==null?void 0:e.replace(/\./g,"-");let r=d.contents[e];if(r&&!(t=="Escape"&&!((o=r.params.close_option)!=null&&o.escapeKeyDown))){let{params:f}=r,{sheetID:v}=f,n=T.get(v);n&&n.close&&n.close(s)}},closeGroup:e=>{var t;e=(e||"").replace(/\./g,"-");for(let[s,r]of Object.entries(d.contents))(t=r.params.sheetGroups)!=null&&t.includes(e)&&x.close(s)},closeAll:e=>{var t;for(let[s,r]of Object.entries(d.contents))e&&((t=r.params.close_option)==null?void 0:t.pageTransit)==!1||x.close(s,"pageTransit",!0)},Comps:{Body:e=>i(R,h({className:c("BaseBody"),backgroundColor:"1.layer.base",borderRadius:"1.tone.primary",position:"relative",boxShadow:"3.remark",transition:"long"},e))}};export{x as Sheet,x as default};
1
+ import {
2
+ __objRest,
3
+ __spreadProps,
4
+ __spreadValues
5
+ } from "../chunk-JJ3PEWPN.js";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import {
8
+ useState,
9
+ useEffect,
10
+ useRef
11
+ } from "react";
12
+ import {
13
+ $$,
14
+ $$fromRoot,
15
+ Config,
16
+ useStore
17
+ } from "../@utils/_";
18
+ import Box from "../atoms/Box";
19
+ import Img from "../atoms/Img";
20
+ import FAI from "../atoms/FAI";
21
+ import Flex from "../atoms/Flex";
22
+ import Column from "../mols/Column";
23
+ import Row from "../mols/Row";
24
+ import Button from "./Button";
25
+ import Layout from "./Layout/_";
26
+ import Input from "./Input/_";
27
+ import { SheetClasses } from "../@styles/componentClasses/_";
28
+ const Comps = {
29
+ mainSheetScrolls: 0,
30
+ subSheetLength: 0,
31
+ currentIndex: 0,
32
+ contents: {},
33
+ addNewSheet: function(params) {
34
+ params = __spreadProps(__spreadValues({
35
+ sheetGroups: params.sheetGroups || [],
36
+ backgroundEffect: true,
37
+ overwrap: params.type == "custom" ? true : false,
38
+ hold_state: false,
39
+ isOpen: true
40
+ }, params), {
41
+ sheetID: params.sheetID || $$.uuid.gen(),
42
+ close_option: __spreadValues({
43
+ pageTransit: true,
44
+ escapeKeyDown: true,
45
+ aroundClick: params.type == "custom"
46
+ }, params.close_option)
47
+ });
48
+ if (this.contents[params.sheetID]) {
49
+ let comp = useStore.get(params.sheetID);
50
+ comp && comp.refresh && comp.refresh(params, true);
51
+ return;
52
+ }
53
+ this.contents[params.sheetID] = {
54
+ isOpen: true,
55
+ hold_state: !!params.hold_state,
56
+ params,
57
+ created_at: $$.Time()
58
+ };
59
+ let wrapper = useStore.get("Sheet-" + Config.get().sessionUID);
60
+ wrapper && wrapper.refresh();
61
+ },
62
+ Wrapper: () => {
63
+ let [val_refresh, set_refresh] = useState($$.uuid.gen());
64
+ useEffect(() => {
65
+ useStore.set({
66
+ key: "Sheet-" + Config.get().sessionUID,
67
+ value: {
68
+ refresh: () => {
69
+ set_refresh($$.uuid.gen());
70
+ }
71
+ }
72
+ });
73
+ $$(Config.get().appRoot).addEvent({
74
+ eventType: "keyup",
75
+ callback: function(event) {
76
+ let { key, metaKey } = event;
77
+ if (key == "Escape" || key == "," && metaKey) {
78
+ let OpenSheets = Object.values(Comps.contents).filter((elm) => elm.isOpen);
79
+ if (!OpenSheets.length)
80
+ return;
81
+ let latestSheet = OpenSheets.reduce((a, b) => {
82
+ return a.created_at.value > b.created_at.value ? a : b;
83
+ });
84
+ Sheet.close(latestSheet.params.sheetID, key);
85
+ }
86
+ }
87
+ }).addEvent({
88
+ eventType: "click",
89
+ callback: function(event) {
90
+ var _a;
91
+ let customSheets = Object.values(Comps.contents).filter((elm) => elm.params.type == "custom");
92
+ if (!customSheets.length)
93
+ return;
94
+ let isParent = !!customSheets.find((customSheet) => {
95
+ let { params } = customSheet;
96
+ let parent = params.parent;
97
+ let target = event.target;
98
+ let Parent = $$fromRoot(parent)[0];
99
+ if (parent == target)
100
+ return true;
101
+ if (Parent === target)
102
+ return true;
103
+ if ($$(Parent).find(target).length)
104
+ return true;
105
+ return false;
106
+ });
107
+ if (isParent)
108
+ return;
109
+ if ((_a = event.target) == null ? void 0 : _a.closest("." + SheetClasses("CustomSheet")))
110
+ return;
111
+ customSheets.forEach((customSheets2) => {
112
+ var _a2;
113
+ if (!!((_a2 = customSheets2.params.close_option) == null ? void 0 : _a2.aroundClick)) {
114
+ Sheet.close(customSheets2.params.sheetID);
115
+ }
116
+ });
117
+ }
118
+ });
119
+ }, []);
120
+ let Sheets = Object.entries(Comps.contents).map(([sheetID, Sheet2]) => {
121
+ return /* @__PURE__ */ jsx(
122
+ Box,
123
+ {
124
+ id: "Sheet-" + sheetID,
125
+ children: /* @__PURE__ */ jsx(
126
+ Comps.Core,
127
+ __spreadValues({
128
+ isOpen: Sheet2.isOpen
129
+ }, Sheet2.params),
130
+ sheetID
131
+ )
132
+ },
133
+ sheetID
134
+ );
135
+ });
136
+ return /* @__PURE__ */ jsx(
137
+ Box,
138
+ {
139
+ className: [
140
+ "AMOTIFY_be",
141
+ SheetClasses("Wrapper")
142
+ ].join(" "),
143
+ children: Sheets
144
+ }
145
+ );
146
+ },
147
+ Core: (params) => {
148
+ var _a;
149
+ let [val_compUID] = useState($$.uuid.gen());
150
+ let [val_params, set_params] = useState(params);
151
+ let [val_open, set_open] = useState(params.isOpen);
152
+ let {
153
+ type,
154
+ sheetID,
155
+ openAfter,
156
+ closeAfter
157
+ } = val_params;
158
+ let isNewSheet = !val_params.overwrap;
159
+ let ContentFC = Comps.Types[{
160
+ "normal.topLeft": "Normal",
161
+ "normal.topCenter": "Normal",
162
+ "normal.topRight": "Normal",
163
+ "normal.middleLeft": "Normal",
164
+ "normal.middleCenter": "Normal",
165
+ "normal.middleRight": "Normal",
166
+ "normal.bottomLeft": "Normal",
167
+ "normal.bottomCenter": "Normal",
168
+ "normal.bottomRight": "Normal",
169
+ "image": "Normal",
170
+ "drawer.left": "Edge",
171
+ "drawer.right": "Edge",
172
+ "drawer.bottom": "Bottom",
173
+ "custom": "Custom"
174
+ }[type]];
175
+ useEffect(() => {
176
+ useStore.set({
177
+ key: sheetID,
178
+ value: {
179
+ refresh: (params2, open) => {
180
+ set_params(params2);
181
+ set_open(open != null ? open : false);
182
+ },
183
+ resize: (size) => {
184
+ if (type == "drawer.bottom") {
185
+ let comp = useStore.get(val_compUID);
186
+ comp && comp.resize && comp.resize(size);
187
+ } else if (val_params.type.includes("normal") || val_params.type.includes("drawer")) {
188
+ set_params(__spreadProps(__spreadValues({}, val_params), {
189
+ size
190
+ }));
191
+ }
192
+ },
193
+ close: (force) => {
194
+ Comps.contents[sheetID].isOpen = false;
195
+ set_open(false);
196
+ },
197
+ open: () => {
198
+ Comps.contents[sheetID].isOpen = true;
199
+ set_open(true);
200
+ }
201
+ }
202
+ });
203
+ });
204
+ useEffect(() => {
205
+ $$.scope(() => {
206
+ if (!isNewSheet)
207
+ return;
208
+ if (!val_params.backgroundEffect)
209
+ return;
210
+ Comps.subSheetLength = Comps.subSheetLength + (val_open ? 1 : -1);
211
+ if (val_open) {
212
+ let html = $$("html");
213
+ if (Comps.subSheetLength == 1) {
214
+ let scroll = html[0].scrollTop;
215
+ Comps.mainSheetScrolls = scroll;
216
+ }
217
+ if (!Config.get().isPhone) {
218
+ html.callback(() => {
219
+ $$fromRoot(".AMOTIFY_be_root").addClass(SheetClasses("FixScroll")).callback((appRoot) => {
220
+ appRoot[0].scrollTop = Comps.mainSheetScrolls;
221
+ }).await(40).addClass(SheetClasses("Float"));
222
+ })[0].scrollTop = 0;
223
+ }
224
+ return;
225
+ }
226
+ if (Comps.subSheetLength != 0)
227
+ return;
228
+ if (Config.get().isPhone)
229
+ return;
230
+ $$fromRoot(".AMOTIFY_be_root").removeClass(SheetClasses("Float")).await(251).removeClass(SheetClasses("FixScroll")).callback(() => {
231
+ $$("html")[0].scrollTop = Comps.mainSheetScrolls | 0;
232
+ $$fromRoot(".AMOTIFY_be_root")[0].scrollTop = 0;
233
+ });
234
+ });
235
+ $$.scope(() => {
236
+ let Core = $$fromRoot("#" + val_compUID);
237
+ if (val_open) {
238
+ Core.await(10).removeClass(SheetClasses("Hide")).await(10).addClass(SheetClasses("Open")).callback(() => {
239
+ Comps.contents[sheetID].isOpen = true;
240
+ if (openAfter)
241
+ openAfter();
242
+ });
243
+ return;
244
+ }
245
+ Core.await(10).removeClass(SheetClasses("Open")).await(251).addClass(SheetClasses("Hide")).callback(() => {
246
+ !closeAfter || closeAfter();
247
+ Comps.contents[sheetID].isOpen = false;
248
+ if (val_params.hold_state)
249
+ return;
250
+ delete Comps.contents[sheetID];
251
+ let wrapper = useStore.get("Sheet-" + Config.get().sessionUID);
252
+ wrapper && wrapper.refresh();
253
+ });
254
+ });
255
+ }, [val_open]);
256
+ useEffect(() => {
257
+ Comps.currentIndex++;
258
+ let {
259
+ close_option
260
+ } = val_params;
261
+ $$.scope(() => {
262
+ if (!(close_option == null ? void 0 : close_option.parentBlur))
263
+ return;
264
+ let element = $$(val_params.parent);
265
+ if (!element[0])
266
+ return;
267
+ element.addEvent({
268
+ eventID: "SheetClosation-" + sheetID,
269
+ eventType: "mouseout",
270
+ callback: () => {
271
+ element.removeEvent("SheetClosation-" + sheetID);
272
+ set_open(false);
273
+ }
274
+ });
275
+ });
276
+ }, []);
277
+ let [Tcate, Tpos] = type.split(".");
278
+ return /* @__PURE__ */ jsx(
279
+ Box,
280
+ {
281
+ className: [
282
+ SheetClasses("Wrap"),
283
+ SheetClasses("Tcate_" + Tcate),
284
+ SheetClasses("Tpos_" + Tpos),
285
+ SheetClasses("isNewSheet_" + isNewSheet)
286
+ ].join(" "),
287
+ width: 1,
288
+ height: 0,
289
+ ssAbsoluteCovered: true,
290
+ freeCSS: {
291
+ zIndex: Comps.currentIndex + 1
292
+ },
293
+ id: val_compUID,
294
+ children: /* @__PURE__ */ jsxs(
295
+ Column,
296
+ {
297
+ className: SheetClasses("Content"),
298
+ gap: 0,
299
+ height: "viewHeight",
300
+ overflow: "auto",
301
+ transition: "middle",
302
+ children: [
303
+ !!isNewSheet && /* @__PURE__ */ jsx(
304
+ Comps.TapSensor,
305
+ {
306
+ sheetID,
307
+ delegateAroundClick: (_a = val_params.close_option) == null ? void 0 : _a.aroundClick
308
+ }
309
+ ),
310
+ /* @__PURE__ */ jsx(
311
+ ContentFC,
312
+ __spreadValues({
313
+ componentID: val_compUID
314
+ }, val_params)
315
+ )
316
+ ]
317
+ }
318
+ )
319
+ },
320
+ val_compUID
321
+ );
322
+ },
323
+ Types: {
324
+ Normal: (params) => {
325
+ let _a = params, {
326
+ sheetID,
327
+ sheetGroups,
328
+ content: Content,
329
+ className = "",
330
+ type,
331
+ size = "R",
332
+ freeCSS,
333
+ openAfter,
334
+ closeAfter,
335
+ close_option,
336
+ hold_state,
337
+ overwrap,
338
+ isOpen,
339
+ backgroundEffect
340
+ } = _a, styles = __objRest(_a, [
341
+ "sheetID",
342
+ "sheetGroups",
343
+ "content",
344
+ "className",
345
+ "type",
346
+ "size",
347
+ "freeCSS",
348
+ "openAfter",
349
+ "closeAfter",
350
+ "close_option",
351
+ "hold_state",
352
+ "overwrap",
353
+ "isOpen",
354
+ "backgroundEffect"
355
+ ]);
356
+ let [Tcate, Tpos] = type.split(".");
357
+ let SysStyles = {};
358
+ let transformOrigins = [];
359
+ if (Tpos.match(/top/)) {
360
+ transformOrigins.push("top");
361
+ SysStyles.marginBottom = "auto";
362
+ } else if (Tpos.match(/middle/)) {
363
+ transformOrigins.push("center");
364
+ SysStyles.marginTop = "auto";
365
+ SysStyles.marginBottom = "auto";
366
+ } else if (Tpos.match(/bottom/)) {
367
+ transformOrigins.push("bottom");
368
+ SysStyles.marginTop = "auto";
369
+ }
370
+ if (Tpos.match(/left/i)) {
371
+ transformOrigins.push("left");
372
+ SysStyles.marginRight = "auto";
373
+ } else if (Tpos.match(/center/i)) {
374
+ transformOrigins.push("center");
375
+ SysStyles.marginLeft = "auto";
376
+ SysStyles.marginRight = "auto";
377
+ } else if (Tpos.match(/right/i)) {
378
+ transformOrigins.push("right");
379
+ SysStyles.marginLeft = "auto";
380
+ }
381
+ return /* @__PURE__ */ jsx(
382
+ Box,
383
+ __spreadProps(__spreadValues(__spreadValues({
384
+ className: [
385
+ SheetClasses("BB"),
386
+ className
387
+ ].join(" "),
388
+ padding: 1,
389
+ transition: "long",
390
+ opacity: "trans"
391
+ }, SysStyles), styles), {
392
+ freeCSS: __spreadValues({
393
+ width: {
394
+ "S": "26rem",
395
+ "R": "36rem",
396
+ "L": "44rem",
397
+ "2L": "60rem",
398
+ "3L": "72rem",
399
+ "MAX": "100vw"
400
+ }[size],
401
+ maxWidth: "96vw",
402
+ transformOrigin: transformOrigins.join(" ")
403
+ }, freeCSS),
404
+ children: $$.is.function(Content) ? /* @__PURE__ */ jsx(Content, {}) : Content
405
+ })
406
+ );
407
+ },
408
+ Edge: (params) => {
409
+ let _a = params, {
410
+ sheetID,
411
+ sheetGroups,
412
+ type,
413
+ content: Content,
414
+ className = "",
415
+ size = "R",
416
+ freeCSS,
417
+ openAfter,
418
+ closeAfter,
419
+ close_option,
420
+ hold_state,
421
+ overwrap,
422
+ isOpen,
423
+ backgroundEffect
424
+ } = _a, styles = __objRest(_a, [
425
+ "sheetID",
426
+ "sheetGroups",
427
+ "type",
428
+ "content",
429
+ "className",
430
+ "size",
431
+ "freeCSS",
432
+ "openAfter",
433
+ "closeAfter",
434
+ "close_option",
435
+ "hold_state",
436
+ "overwrap",
437
+ "isOpen",
438
+ "backgroundEffect"
439
+ ]);
440
+ return /* @__PURE__ */ jsx(
441
+ Box,
442
+ __spreadProps(__spreadValues(__spreadValues({
443
+ opacity: "trans",
444
+ transition: "long",
445
+ position: "relative",
446
+ backgroundColor: "1.layer.base",
447
+ flexSizing: "none",
448
+ minHeight: "viewHeight",
449
+ boxShadow: "3.remark",
450
+ className: [
451
+ SheetClasses("BB"),
452
+ className
453
+ ].join(" ")
454
+ }, type == "drawer.right" ? {
455
+ marginLeft: "auto"
456
+ } : type == "drawer.left" ? {
457
+ marginRight: "auto"
458
+ } : {}), styles), {
459
+ freeCSS: __spreadValues({
460
+ width: {
461
+ "S": "20rem",
462
+ "R": "27rem",
463
+ "L": "32rem",
464
+ "2L": "40rem",
465
+ "3L": "58rem",
466
+ "MAX": "100vw"
467
+ }[size],
468
+ maxWidth: "96vw"
469
+ }, freeCSS),
470
+ children: $$.is.function(Content) ? /* @__PURE__ */ jsx(Content, {}) : Content
471
+ })
472
+ );
473
+ },
474
+ Bottom: (params) => {
475
+ let _a = params, {
476
+ componentID,
477
+ sheetID,
478
+ sheetGroups,
479
+ content: Content,
480
+ size = "R",
481
+ sizeChanged,
482
+ baseStyles,
483
+ openAfter,
484
+ closeAfter,
485
+ close_option: {
486
+ swipeDown = true
487
+ } = {},
488
+ hold_state,
489
+ overwrap,
490
+ isOpen,
491
+ backgroundEffect
492
+ } = _a, styles = __objRest(_a, [
493
+ "componentID",
494
+ "sheetID",
495
+ "sheetGroups",
496
+ "content",
497
+ "size",
498
+ "sizeChanged",
499
+ "baseStyles",
500
+ "openAfter",
501
+ "closeAfter",
502
+ "close_option",
503
+ "hold_state",
504
+ "overwrap",
505
+ "isOpen",
506
+ "backgroundEffect"
507
+ ]);
508
+ let screen = $$.getScreenSize();
509
+ let sizeArray = [0, 0.2, 0.6, 0.95];
510
+ let SizeSets = {
511
+ "ZERO": 0,
512
+ "S": 1,
513
+ "R": 2,
514
+ "L": 3
515
+ };
516
+ let [val_stableSize, set_stableSize] = useState(size);
517
+ let [val_edit, set_edit] = useState({
518
+ process: false,
519
+ processStart: 0,
520
+ originY: 0,
521
+ originValue: 0,
522
+ viewHeight: 0,
523
+ value: sizeArray[SizeSets[size]]
524
+ });
525
+ useStore.update({
526
+ key: componentID,
527
+ value: {
528
+ val_edit,
529
+ resize: (size2) => {
530
+ let Size = sizeArray[SizeSets[size2]];
531
+ set_edit(__spreadProps(__spreadValues({}, val_edit), {
532
+ value: Size
533
+ }));
534
+ set_stableSize(size2);
535
+ }
536
+ }
537
+ });
538
+ const Effects = {
539
+ Start: (event) => {
540
+ $$(document).addEvent({
541
+ eventID: "BottomSheetMouseMove",
542
+ eventType: "mousemove",
543
+ callback: Effects.Move
544
+ }).addEvent({
545
+ eventID: "BottomSheetTouchMove",
546
+ eventType: "touchmove",
547
+ callback: Effects.Move
548
+ }).addEvent({
549
+ eventID: "BottomSheetMouseUp",
550
+ eventType: "mouseup",
551
+ callback: Effects.End
552
+ }).addEvent({
553
+ eventID: "BottomSheetTouchEnd",
554
+ eventType: "touchend",
555
+ callback: Effects.End
556
+ });
557
+ let cursor = $$.getCursor(event);
558
+ let newEditInfo = __spreadProps(__spreadValues({}, val_edit), {
559
+ process: true,
560
+ processStart: (/* @__PURE__ */ new Date()).getTime(),
561
+ originY: cursor.y,
562
+ originValue: val_edit.value,
563
+ viewHeight: $$.getScreenSize().height
564
+ });
565
+ useStore.update({
566
+ key: componentID,
567
+ value: {
568
+ val_edit: newEditInfo
569
+ }
570
+ });
571
+ set_edit(newEditInfo);
572
+ },
573
+ Move: (event) => {
574
+ var _a2;
575
+ let editInfo = (_a2 = useStore.get(componentID)) == null ? void 0 : _a2.val_edit;
576
+ if (!editInfo.process)
577
+ return;
578
+ let margin = $$.getCursor(event).y - editInfo.originY;
579
+ let marginRate = margin / editInfo.viewHeight;
580
+ let newRate = editInfo.originValue - marginRate;
581
+ if (newRate > 0.95) {
582
+ let margin2 = newRate - 0.95;
583
+ newRate = 0.95 + margin2 * 0.5;
584
+ } else if (newRate < 0.2) {
585
+ let margin2 = 0.2 - newRate;
586
+ margin2 -= 0.1;
587
+ newRate = 0.1 + (0.1 - margin2) * 0.5;
588
+ }
589
+ set_edit(__spreadProps(__spreadValues({}, editInfo), {
590
+ value: newRate
591
+ }));
592
+ },
593
+ End: (event) => {
594
+ var _a2;
595
+ let editInfo = (_a2 = useStore.get(componentID)) == null ? void 0 : _a2.val_edit;
596
+ if (!editInfo.process)
597
+ return;
598
+ $$(document).removeEvent([
599
+ "BottomSheetMouseMove",
600
+ "BottomSheetTouchMove",
601
+ "BottomSheetMouseUp",
602
+ "BottomSheetTouchEnd"
603
+ ]);
604
+ let sizeIndex = 0;
605
+ if (editInfo.value < 0.1) {
606
+ } else if (editInfo.value < 0.5) {
607
+ sizeIndex = 1;
608
+ } else if (editInfo.value > 0.75) {
609
+ sizeIndex = 3;
610
+ } else {
611
+ sizeIndex = 2;
612
+ }
613
+ let ms = (/* @__PURE__ */ new Date()).getTime() - editInfo.processStart;
614
+ if (ms < 300) {
615
+ let margin = $$.getCursor(event).y - editInfo.originY;
616
+ if (Math.abs(margin) >= 20) {
617
+ let dir = Number(margin < 0) * 2 - 1;
618
+ sizeIndex += dir;
619
+ sizeIndex = Math.min(Math.max(sizeIndex, 0), sizeArray.length - 1);
620
+ }
621
+ }
622
+ if (sizeIndex == 0) {
623
+ if (!swipeDown)
624
+ sizeIndex = 1;
625
+ }
626
+ set_stableSize(["ZERO", "S", "R", "L"][sizeIndex]);
627
+ set_edit(__spreadProps(__spreadValues({}, editInfo), {
628
+ value: sizeArray[sizeIndex],
629
+ process: false
630
+ }));
631
+ }
632
+ };
633
+ const mounted = useRef(false);
634
+ useEffect(() => {
635
+ if (mounted.current) {
636
+ if (val_stableSize == "ZERO") {
637
+ if (swipeDown)
638
+ Sheet.close(sheetID);
639
+ } else {
640
+ setTimeout(() => {
641
+ if (params.sizeChanged)
642
+ params.sizeChanged(val_stableSize);
643
+ }, 250);
644
+ }
645
+ } else {
646
+ mounted.current = true;
647
+ }
648
+ }, [val_stableSize]);
649
+ return /* @__PURE__ */ jsx(
650
+ Box,
651
+ {
652
+ className: SheetClasses("BB"),
653
+ margin: [0, "auto"],
654
+ marginTop: "auto",
655
+ opacity: "trans",
656
+ width: 1,
657
+ transition: "long",
658
+ freeCSS: __spreadValues({
659
+ maxWidth: 12 * 60,
660
+ height: screen.height * val_edit.value
661
+ }, val_edit.process ? {
662
+ transition: "0s"
663
+ } : {}),
664
+ children: /* @__PURE__ */ jsxs(
665
+ Column,
666
+ __spreadProps(__spreadValues({
667
+ gap: 0,
668
+ flexSizing: "none",
669
+ borderTopLeftRadius: "1.tone.primary",
670
+ borderTopRightRadius: "1.tone.primary",
671
+ border: true,
672
+ borderBottom: "unset",
673
+ boxShadow: "3.remark",
674
+ position: "relative",
675
+ overflow: "hidden",
676
+ height: 1
677
+ }, baseStyles), {
678
+ children: [
679
+ /* @__PURE__ */ jsxs(
680
+ Row.Separate,
681
+ {
682
+ padding: "1/2",
683
+ backgroundColor: "1.layer.base",
684
+ position: "relative",
685
+ freeCSS: {
686
+ userSelect: "none"
687
+ },
688
+ children: [
689
+ /* @__PURE__ */ jsx(
690
+ Row.Center,
691
+ {
692
+ flexSizing: 0,
693
+ padding: "2/3",
694
+ onMouseDown: Effects.Start,
695
+ onTouchStart: Effects.Start,
696
+ ssPushable: true,
697
+ isRounded: true,
698
+ freeCSS: {
699
+ cursor: "grab",
700
+ userSelect: "none"
701
+ },
702
+ children: /* @__PURE__ */ jsx(
703
+ Box,
704
+ {
705
+ unitWidth: 6,
706
+ unitHeight: "1/2",
707
+ backgroundColor: "5.layer.darker",
708
+ isRounded: true,
709
+ className: SheetClasses("DragBar")
710
+ }
711
+ )
712
+ }
713
+ ),
714
+ /* @__PURE__ */ jsx(
715
+ Button.Button.Sub.R,
716
+ {
717
+ color: "cloud",
718
+ ssSphere: 2,
719
+ onClick: () => {
720
+ Sheet.close(sheetID);
721
+ },
722
+ children: /* @__PURE__ */ jsx(FAI.Times, {})
723
+ }
724
+ )
725
+ ]
726
+ }
727
+ ),
728
+ /* @__PURE__ */ jsx(
729
+ Box,
730
+ __spreadProps(__spreadValues({
731
+ backgroundColor: "1.layer.base",
732
+ flexSizing: 0,
733
+ overflow: "auto"
734
+ }, styles), {
735
+ children: $$.is.function(Content) ? /* @__PURE__ */ jsx(Content, {}) : Content
736
+ })
737
+ )
738
+ ]
739
+ })
740
+ )
741
+ }
742
+ );
743
+ },
744
+ Custom: (params) => {
745
+ let _a = params, {
746
+ sheetID,
747
+ sheetGroups,
748
+ parent,
749
+ gravityPoint: GPT = 22,
750
+ content: Content,
751
+ close_option,
752
+ hold_state,
753
+ openAfter,
754
+ closeAfter,
755
+ overwrap,
756
+ isOpen,
757
+ backgroundEffect
758
+ } = _a, others = __objRest(_a, [
759
+ "sheetID",
760
+ "sheetGroups",
761
+ "parent",
762
+ "gravityPoint",
763
+ "content",
764
+ "close_option",
765
+ "hold_state",
766
+ "openAfter",
767
+ "closeAfter",
768
+ "overwrap",
769
+ "isOpen",
770
+ "backgroundEffect"
771
+ ]);
772
+ let [val_compUID] = useState($$.uuid.gen());
773
+ let Parent = $$.is.element(parent) ? $$(parent) : $$.is.jsmin(parent) ? parent : $$fromRoot(parent);
774
+ let Query = '[data-sheet-id="' + val_compUID + '"]';
775
+ let ContentQuery = '[data-sheet-content="' + val_compUID + '"]';
776
+ GPT = GPT;
777
+ let column = GPT % 5 || 5;
778
+ let row = Math.ceil(GPT / 5);
779
+ const getWrapperCSS = () => {
780
+ let WrapperCSS = {};
781
+ let { top, right, bottom, left, height, width } = Parent.position();
782
+ if ([1, 2].includes(column)) {
783
+ WrapperCSS.left = left;
784
+ } else if (column == 3) {
785
+ WrapperCSS.left = left + width / 2;
786
+ } else if ([4, 5].includes(column)) {
787
+ WrapperCSS.left = right;
788
+ }
789
+ if (GPT <= 10) {
790
+ WrapperCSS.top = top;
791
+ } else if (GPT <= 15) {
792
+ WrapperCSS.top = top + height / 2;
793
+ } else if (GPT <= 25) {
794
+ WrapperCSS.top = bottom;
795
+ }
796
+ return WrapperCSS;
797
+ };
798
+ let [val_Styles, set_Styles] = useState(getWrapperCSS());
799
+ const AdjustExtrusion = () => {
800
+ let BaseRect = $$fromRoot(Query).position();
801
+ let ContentRect = $$fromRoot(ContentQuery).position();
802
+ let screen = $$.getScreenSize();
803
+ let newStyles = __spreadValues({}, val_Styles);
804
+ if (ContentRect.top < 0) {
805
+ newStyles.top = BaseRect.top - ContentRect.top;
806
+ }
807
+ if (ContentRect.left < 0) {
808
+ newStyles.left = BaseRect.left - ContentRect.left;
809
+ }
810
+ if (ContentRect.right > screen.width) {
811
+ newStyles.left = BaseRect.left - (ContentRect.right - screen.width);
812
+ }
813
+ if (ContentRect.bottom > screen.height) {
814
+ newStyles.top = BaseRect.top - (ContentRect.bottom - screen.height);
815
+ }
816
+ return newStyles;
817
+ };
818
+ useEffect(() => {
819
+ $$fromRoot(Query).await(10).addClass(SheetClasses("Open")).await(250).callback(() => {
820
+ set_Styles(AdjustExtrusion());
821
+ });
822
+ useStore.update({
823
+ key: "customSheet-" + params.sheetID,
824
+ value: {
825
+ reposition: () => {
826
+ setTimeout(() => {
827
+ set_Styles(AdjustExtrusion());
828
+ }, 200);
829
+ }
830
+ }
831
+ });
832
+ }, []);
833
+ if (!Parent[0])
834
+ return null;
835
+ return /* @__PURE__ */ jsx(
836
+ Box,
837
+ {
838
+ className: [
839
+ SheetClasses("BB"),
840
+ SheetClasses("CustomSheet")
841
+ ].join(" "),
842
+ "data-sheet-id": val_compUID,
843
+ transition: "long",
844
+ opacity: "trans",
845
+ position: "absolute",
846
+ width: 0,
847
+ height: 0,
848
+ flexCenter: true,
849
+ freeCSS: val_Styles,
850
+ children: /* @__PURE__ */ jsx(
851
+ Flex,
852
+ {
853
+ className: [
854
+ SheetClasses("GPT"),
855
+ SheetClasses("GPT_" + GPT),
856
+ SheetClasses("Col_" + column),
857
+ SheetClasses("Row_" + row)
858
+ ].join(" "),
859
+ position: "absolute",
860
+ children: /* @__PURE__ */ jsx(
861
+ Box,
862
+ __spreadProps(__spreadValues({
863
+ flexSizing: "none",
864
+ "data-sheet-content": val_compUID,
865
+ maxHeight: "viewHeight",
866
+ overflow: "auto",
867
+ padding: 1
868
+ }, others), {
869
+ freeCSS: __spreadValues({
870
+ maxWidth: "98vw"
871
+ }, others.freeCSS),
872
+ children: $$.is.function(Content) ? /* @__PURE__ */ jsx(Content, {}) : Content
873
+ })
874
+ )
875
+ }
876
+ )
877
+ }
878
+ );
879
+ }
880
+ },
881
+ TapSensor: (params) => {
882
+ return /* @__PURE__ */ jsx(
883
+ Box,
884
+ {
885
+ className: SheetClasses("TapSensor"),
886
+ children: /* @__PURE__ */ jsx(
887
+ Button.Button.Plain,
888
+ {
889
+ className: SheetClasses("TapContent"),
890
+ onClick: () => {
891
+ var _a;
892
+ console.log("gyilbh;unojikpol");
893
+ if ((_a = params.delegateAroundClick) != null ? _a : false)
894
+ Sheet.close(params.sheetID);
895
+ },
896
+ freeCSS: {
897
+ cursor: "default",
898
+ pointerEvents: "all"
899
+ }
900
+ }
901
+ )
902
+ }
903
+ );
904
+ }
905
+ };
906
+ const Sheet = {
907
+ Wrapper: () => /* @__PURE__ */ jsx(Comps.Wrapper, {}),
908
+ open: (params) => {
909
+ params.sheetID = (params.sheetID || "").replace(/\./g, "-");
910
+ if (params.type == "image") {
911
+ let sheetID = params.sheetID || $$.uuid.gen();
912
+ let _a = params, {
913
+ type,
914
+ src
915
+ } = _a, others = __objRest(_a, [
916
+ "type",
917
+ "src"
918
+ ]);
919
+ Sheet.open(__spreadProps(__spreadValues({
920
+ type: "normal.topCenter",
921
+ backgroundColor: "trans"
922
+ }, others), {
923
+ sheetID,
924
+ freeCSS: {
925
+ maxWidth: "96vw",
926
+ transformOrigin: "top"
927
+ },
928
+ content: () => {
929
+ let [val_image] = useState($$.flatArray(src));
930
+ let [val_viewIndex, set_viewIndex] = useState(0);
931
+ let Radio = [];
932
+ let Slides = [];
933
+ val_image.forEach((src2, index) => {
934
+ Radio.push({
935
+ value: index,
936
+ label: /* @__PURE__ */ jsx(
937
+ Img,
938
+ {
939
+ src: $$.flatArray(src2)[0],
940
+ width: "auto",
941
+ height: 1,
942
+ freeCSS: {
943
+ maxWidth: 12 * 6,
944
+ maxHeight: 12 * 3
945
+ }
946
+ }
947
+ )
948
+ });
949
+ Slides.push(/* @__PURE__ */ jsx(
950
+ Img,
951
+ {
952
+ width: 1,
953
+ height: "auto",
954
+ src: $$.flatArray(src2)[0]
955
+ }
956
+ ));
957
+ });
958
+ return /* @__PURE__ */ jsxs(
959
+ Column,
960
+ {
961
+ gap: 0,
962
+ children: [
963
+ /* @__PURE__ */ jsxs(
964
+ Row.Separate,
965
+ {
966
+ gap: 2,
967
+ padding: 1,
968
+ backgroundColor: "1.layer.base",
969
+ borderTopLeftRadius: "1.tone.primary",
970
+ borderTopRightRadius: "1.tone.primary",
971
+ children: [
972
+ /* @__PURE__ */ jsx(
973
+ Input.Radio,
974
+ {
975
+ tone: "border",
976
+ icon: false,
977
+ value: val_viewIndex,
978
+ override: "force",
979
+ horizontalAlign: "center",
980
+ onUpdateValidValue: ({ value }) => {
981
+ set_viewIndex(value[0]);
982
+ },
983
+ cellStyles: {
984
+ borderWidth: 2,
985
+ padding: "1/3"
986
+ },
987
+ options: Radio
988
+ }
989
+ ),
990
+ /* @__PURE__ */ jsxs(
991
+ Button.Button.Border.R,
992
+ {
993
+ color: "cloud",
994
+ isRounded: true,
995
+ onClick: () => {
996
+ Sheet.close(sheetID);
997
+ },
998
+ children: [
999
+ "\u9589\u3058\u308B ",
1000
+ /* @__PURE__ */ jsx(FAI.Times, {})
1001
+ ]
1002
+ }
1003
+ )
1004
+ ]
1005
+ }
1006
+ ),
1007
+ /* @__PURE__ */ jsx(
1008
+ Layout.SwipeView,
1009
+ {
1010
+ slideIndex: val_viewIndex,
1011
+ options: {
1012
+ loop: val_image.length > 1,
1013
+ onSlideCallback: (index) => {
1014
+ set_viewIndex(index);
1015
+ }
1016
+ },
1017
+ slides: Slides,
1018
+ wrapper: (View) => /* @__PURE__ */ jsx(
1019
+ Box,
1020
+ {
1021
+ borderBottomLeftRadius: "1.tone.primary",
1022
+ borderBottomRightRadius: "1.tone.primary",
1023
+ children: View
1024
+ }
1025
+ )
1026
+ }
1027
+ )
1028
+ ]
1029
+ }
1030
+ );
1031
+ }
1032
+ }));
1033
+ return;
1034
+ }
1035
+ Comps.addNewSheet(params);
1036
+ },
1037
+ refresh: (params, open) => {
1038
+ params.sheetID = (params.sheetID || "").replace(/\./g, "-");
1039
+ let comps = useStore.get(params.sheetID);
1040
+ comps && comps.refresh && comps.refresh(params, open);
1041
+ },
1042
+ resize: (params) => {
1043
+ params.sheetID = (params.sheetID || "").replace(/\./g, "-");
1044
+ let comps = useStore.get(params.sheetID);
1045
+ comps && comps.resize && comps.resize(params.size);
1046
+ },
1047
+ reposition: (sheetID) => {
1048
+ let Comps2 = useStore.get("customSheet-" + sheetID);
1049
+ Comps2 && Comps2.reposition && Comps2.reposition();
1050
+ },
1051
+ close: function(sheetID, et, force) {
1052
+ var _a;
1053
+ sheetID = sheetID == null ? void 0 : sheetID.replace(/\./g, "-");
1054
+ let Content = Comps.contents[sheetID];
1055
+ if (!Content)
1056
+ return;
1057
+ if (et == "Escape" && !((_a = Content.params.close_option) == null ? void 0 : _a.escapeKeyDown))
1058
+ return;
1059
+ {
1060
+ let { params } = Content;
1061
+ let { sheetID: sheetID2 } = params;
1062
+ let comp = useStore.get(sheetID2);
1063
+ comp && comp.close && comp.close(force);
1064
+ }
1065
+ },
1066
+ closeGroup: (sheetGroup) => {
1067
+ var _a;
1068
+ sheetGroup = (sheetGroup || "").replace(/\./g, "-");
1069
+ for (let [key, value] of Object.entries(Comps.contents)) {
1070
+ if ((_a = value.params.sheetGroups) == null ? void 0 : _a.includes(sheetGroup))
1071
+ Sheet.close(key);
1072
+ }
1073
+ },
1074
+ closeAll: (pageTransit) => {
1075
+ var _a;
1076
+ for (let [key, value] of Object.entries(Comps.contents)) {
1077
+ if (pageTransit) {
1078
+ if (((_a = value.params.close_option) == null ? void 0 : _a.pageTransit) == false)
1079
+ continue;
1080
+ }
1081
+ Sheet.close(key, "pageTransit", true);
1082
+ }
1083
+ },
1084
+ Comps: {
1085
+ Body: (params) => /* @__PURE__ */ jsx(
1086
+ Box,
1087
+ __spreadValues({
1088
+ className: SheetClasses("BaseBody"),
1089
+ backgroundColor: "1.layer.base",
1090
+ borderRadius: "1.tone.primary",
1091
+ position: "relative",
1092
+ boxShadow: "3.remark",
1093
+ transition: "long"
1094
+ }, params)
1095
+ )
1096
+ }
1097
+ };
1098
+ export {
1099
+ Sheet,
1100
+ Sheet as default
1101
+ };